ΟΗΚΟΝΟΜΗΚΟ ΠΑΝΔΠΗΣΖΜΗΟ ΑΘΖΝΩΝ ΠΡΟΓΡΑΜΜΑ ΜΔΣΑΠΣΤΥΗΑΚΩΝ ΠΟΤΓΩΝ ΣΖΝ ΔΠΗΣΖΜΖ ΣΩΝ ΤΠΟΛΟΓΗΣΩΝ. Γηπισκαηηθή Δξγαζία Μεηαπηπρηαθνύ Γηπιώκαηνο Δηδίθεπζεο

Σχετικά έγγραφα
ΑΛΛΑΓΗ ΟΝΟΜΑΣΟ ΚΑΙ ΟΜΑΔΑ ΕΡΓΑΙΑ, ΚΟΙΝΟΥΡΗΣΟΙ ΦΑΚΕΛΟΙ ΚΑΙ ΕΚΣΤΠΩΣΕ ΣΑ WINDOWS XP

Κεθάλαιο 1. Ενόηηηα 2 Πλάνο Μάρκεηινγκ. Εξγαιεία Μάξθεηηλγθ. Dr. Andrea Grimm Dr. Astin Malschinger

Hellas online Προεπιλεγμένες ρσθμίσεις για FritzBox Fon WLAN 7140 (Annex B) FritzBox Fon WLAN Annex B ( )

ΑΠΑΝΤΗΣΔΙΣ ΓΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ II ΔΠΑΛ

Ενδεικτικά Θέματα Στατιστικής ΙΙ

H ΜΑΓΕΙΑ ΤΩΝ ΑΡΙΘΜΩΝ

Αζκήζεις ζτ.βιβλίοσ ζελίδας 13 14

Απνηειέζκαηα Εξσηεκαηνινγίνπ 2o ηεηξάκελν

Βάσεις Δεδομέμωμ. Εξγαζηήξην V. Τκήκα Πιεξνθνξηθήο ΑΠΘ

ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ. Οξηδόληηα θαη θαηαθόξπθε κεηαηόπηζε παξαβνιήο

ΡΤΘΜΙΕΙ ΔΙΚΣΤΟΤ ΣΑ WINDOWS

x-1 x (x-1) x 5x 2. Να απινπνηεζνύλ ηα θιάζκαηα, έηζη ώζηε λα κελ ππάξρνπλ ξηδηθά ζηνπο 22, 55, 15, 42, 93, 10 5, 12

Αιγόξηζκνη Γνκή επηινγήο. Πνιιαπιή Δπηινγή Δκθωιεπκέλεο Δπηινγέο. Δηζαγωγή ζηηο Αξρέο ηεο Δπηζηήκεο ηωλ Η/Υ. introcsprinciples.wordpress.

Α. Εηζαγσγή ηεο έλλνηαο ηεο ηξηγσλνκεηξηθήο εμίζσζεο κε αξρηθό παξάδεηγκα ηελ εκx = 2

Να ζρεδηάζεηο ηξόπνπο ζύλδεζεο κηαο κπαηαξίαο θαη ελόο ιακπηήξα ώζηε ν ιακπηήξαο λα θσηνβνιεί.

Γοκή επαλάιευες Δληοιές Όζο & Μέτρης_όηοσ

Α Ο Κ Η Α Μ Α Ζ Η Η Ρ Η ( S E A R C H )

ΔΙΑΓΩΝΙΣΜΑ ΣΤΗ ΦΥΣΙΚΗ. Ύλη: Εσθύγραμμη Κίνηζη

ΛΙΜΝΗ ΤΣΑΝΤ. Σρήκα 1. Σρήκα 2

Σημεία Ασύπματηρ Ππόσβασηρ (Hot-Spots)

Case Study. Παξαθάηω παξνπζηάδνπκε βήκα - βήκα κε screenshots έλα παξάδεηγκα ππνβνιήο κηαο εξγαζίαο θαη ηελ παξαγωγή ηνπ Originality Report.

iii. iv. γηα ηελ νπνία ηζρύνπλ: f (1) 2 θαη

TOOLBOOK (μάθημα 2) Δεκηνπξγία βηβιίνπ θαη ζειίδσλ ΠΡΟΑΡΜΟΓΗ: ΒΑΛΚΑΝΙΩΣΗ ΔΗΜ. ΕΚΠΑΙΔΕΤΣΙΚΟ ΠΕ19 1 TOOLBOOK ΜΑΘΗΜΑ 2

Οργάνωση και Δομή Παρουσιάσεων

ΒΗΜΑ 2. Εηζάγεηε ηνλ Κωδηθό Πξόζβαζεο πνπ ιακβάλεηε κε SMS & δειώλεηε επηζπκεηό Όλνκα Πξόζβαζεο (Username) θαη ην ζαο

Δπηιέγνληαο ην «Πξνεπηινγή» θάζε θνξά πνπ ζα ζπλδέεζηε ζηελ εθαξκνγή ζα βξίζθεζηε ζηε λέα ρξήζε.

Constructors and Destructors in C++

ΕΓΧΕΙΡΙΔΙΟ ΕΚΔΟΗ 8.0.0

Image J Plugin particle tracker για παρακολούθηση της κίνησης σωματιδίων

Απαντήσεις θέματος 2. Παξαθάησ αθνινπζεί αλαιπηηθή επίιπζε ησλ εξσηεκάησλ.

Η αξρή ζύλδεζεο Client-Server

B-Δέλδξα. Τα B-δέλδξα ρξεζηκνπνηνύληαη γηα ηε αλαπαξάζηαζε πνιύ κεγάισλ ιεμηθώλ πνπ είλαη απνζεθεπκέλα ζην δίζθν.

ΚΕΦ. 2.3 ΑΠΟΛΤΣΗ ΣΘΜΗ ΠΡΑΓΜΑΣΘΚΟΤ ΑΡΘΘΜΟΤ

ΓΗΑΓΩΝΗΣΜΑ ΣΤΑ ΜΑΘΖΜΑΤΗΚΑ. Ύλη: Μιγαδικοί-Σσναρηήζεις-Παράγωγοι Θεη.-Τετν. Καη Εήηημα 1 ο :

ΜΕΛΕΣΗ E.O.K. ΜΕ ΑΙΘΗΣΗΡΑ ΘΕΗ

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΔΣΑΙΡΔΙΑ ΠΑΓΚΤΠΡΙΟ ΓΙΑΓΩΝΙ ΜΟ

ΕΝΤΟΛΕΣ WINDOWS ΚΑΙ UNIX

Κευάλαιο 8 Μονοπωλιακή Συμπεριφορά- Πολλαπλή Τιμολόγηση

Εςθςή ζςζηήμαηα επισειπήζεων και αξιολόγηζη

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΕΣΑΙΡΕΙΑ ΜΑΘΗΜΑΣΙΚΗ ΚΤΣΑΛΟΓΡΟΜΙΑ 2007 ΓΙΑ ΣΟ ΓΤΜΝΑΙΟ Παπασκευή 26 Ιανουαπίου 2007 Σάξη: Α Γυμνασίου ΥΟΛΕΙΟ..

ΠΑΡΑΡΣΗΜΑ Δ. ΔΤΡΔΗ ΣΟΤ ΜΔΣΑΥΗΜΑΣΙΜΟΤ FOURIER ΓΙΑΦΟΡΩΝ ΗΜΑΣΩΝ

Δξγαζηεξηαθή άζθεζε 03. Σηεξενγξαθηθή πξνβνιή ζην δίθηπν Wulf

ΘΔΚΑ ΡΖΠ ΑΛΑΓΛΩΟΗΠΖΠ

1. Οδηγίερ εγκαηάζηαζηρ και σπήζηρ έξςπνυν καπηών και τηθιακών πιζηοποιηηικών με σπήζη ηος λογιζμικού Μοzilla Thunderbird

Κόληξα πιαθέ ζαιάζζεο κε δηαζηάζεηο 40Υ40 εθ. Καξθηά 3 θηιά πεξίπνπ κε κήθνο ηξηπιάζην από ην πάρνο ηνπ μύινπ θπξί κεγάιν θαη ππνκνλή

Μορθές Κακόβοσλοσ Κώδικα (Malicious Code)

Μονοψϊνιο. Αγνξά κε ιίγνπο αγνξαζηέο. Δύναμη μονοψωνίος Η ηθαλόηεηα πνπ έρεη ν αγνξαζηήο λα επεξεάζεη ηελ ηηκή ηνπ αγαζνύ.

Δξγαιεία Καηαζθεπέο 1 Σάμε Σ Δ.Κ.Φ.Δ. ΥΑΝΙΧΝ ΠΡΧΣΟΒΑΘΜΙΑ ΔΚΠΑΙΓΔΤΗ. ΔΝΟΣΗΣΑ 11 ε : ΦΧ ΔΡΓΑΛΔΙΑ ΚΑΣΑΚΔΤΔ. Καηαζθεπή 1: Φαθόο κε ζσιήλα.

Φςζική Πποζαναηολιζμού Γ Λςκείος. Αζκήζειρ Ταλανηώζειρ 1 ο Φςλλάδιο

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΕΣΑΙΡΕΙΑ ΜΑΘΗΜΑΣΙΚΗ ΚΤΣΑΛΟΓΡΟΜΙΑ 2007 ΓΙΑ ΣΟ ΓΤΜΝΑΙΟ Παπασκευή 26 Ιανουαπίου 2007 Σάξη: Α Γυμνασίου ΥΟΛΕΙΟ..

ΑΞΙΟΘΕΑΣΑ ΣΟΤ ΥΩΡΙΟΤ ΜΑ

x x x x tan(2 x) x 2 2x x 1

ΠΑΝΔΛΛΑΓΗΚΔ ΔΞΔΣΑΔΗ Γ ΣΑΞΖ ΖΜΔΡΖΗΟΤ ΓΔΝΗΚΟΤ ΛΤΚΔΗΟΤ Γευηέρα 11 Ηουνίου 2018 ΔΞΔΣΑΕΟΜΔΝΟ ΜΑΘΖΜΑ: ΜΑΘΖΜΑΣΗΚΑ ΠΡΟΑΝΑΣΟΛΗΜΟΤ. (Ενδεικηικές Απανηήζεις)

Έλαο πίνακας σσμβόλων ππνζηεξίδεη δύν βαζηθέο ιεηηνπξγίεο:

ΣΕΙ ΙΟΝΙΩΝ ΝΗΩΝ ΣΜΗΜΑ: ΣΕΥΝΟΛΟΓΙΑ ΠΛΗΡΟΦΟΡΙΚΗ ΚΑΙ ΣΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΥΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ Ρέππα Μαξγαξίηα

Κεθάιαην 20. Ελαχιστοποίηση του κόστους

CytaInfo+ έλα application γηα ηε Cyta.

ΘΔΜΑ 1 ο Μονάδες 5,10,10

ΠΑΝΔΛΛΑΓΗΚΔ ΔΞΔΣΑΔΗ Γ ΣΑΞΖ ΖΜΔΡΖΗΟΤ ΓΔΝΗΚΟΤ ΛΤΚΔΗΟΤ ΚΑΗ ΔΠΑΛ ΣΔΣΑΡΣΖ 25 ΜΑΨΟΤ 2016 ΔΞΔΣΑΕΟΜΔΝΟ ΜΑΘΖΜΑ: ΑΡΥΔ ΟΗΚΟΝΟΜΗΚΖ ΘΔΧΡΗΑ ΠΡΟΑΝΑΣΟΛΗΜΟΤ - ΔΠΗΛΟΓΖ

ΟΠΤΙΚΗ Α. ΑΝΑΚΛΑΣΖ - ΓΗΑΘΛΑΣΖ


(Ενδεικηικές Απανηήζεις) ΘΔΜΑ Α. Α1. Βιέπε απόδεημε Σει. 262, ζρνιηθνύ βηβιίνπ. Α2. Βιέπε νξηζκό Σει. 141, ζρνιηθνύ βηβιίνπ

Δπαστηπιότητα 1 - ανάπτςξη, μεταγλώττιση, αποσυαλμάτωση και. εκτέλεση ππογπάμματορ

EL Eνωμένη στην πολυμορυία EL A8-0046/319. Τροπολογία

Ηλεκηπονικά Απσεία και Διεπαθέρ

ΣΡΑΠΕΖΑ ΘΕΜΑΣΩΝ Α ΛΤΚΕΙΟΤ

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΕΣΑΙΡΕΙΑ ΜΑΘΗΜΑΤΙΚΗ ΣΚΥΤΑΛΟΓΡΟΜΙΑ 2015 ΓΙΑ ΤΟ ΓΥΜΝΑΣΙΟ Τεηάπηη 28 Ιανουαπίου 2015 ΛΔΥΚΩΣΙΑ Τάξη: Α Γυμναζίου

Διαδικαζία μεηαθοράς δεδομένων Εκκαθαριζηικής για ηο Eιδικό ζημείωμα περαίωζης Φ.Π.Α

ΔΦΑΡΜΟΜΔΝΑ ΜΑΘΗΜΑΣΙΚΑ ΣΗ ΧΗΜΔΙΑ Ι ΘΔΜΑΣΑ Α επηέκβξηνο Να ππνινγηζηνύλ νη κεξηθέο παξάγσγνη πξώηεο ηάμεο ηεο ζπλάξηεζεο f(x,y) =

ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 4 ΣΥΝΔΥΑΣΤΙΚΑ ΚΥΚΛΩΜΑΤΑ

Q Η ζσνάρηηζη μέζοσ κόζηοσς μας δίνει ηο κόζηος ανά μονάδα παραγωγής. Q Η ζσνάρηηζη μέζοσ κόζηοσς μας δίνει ηο ζηαθερό κόζηος ανά μονάδα παραγωγής

Άσκηση 1 - Μοπυοποίηση Κειμένου

ΜΑΘΗΜΑΣΑ ΦΩΣΟΓΡΑΦΙΑ. Ειζαγωγή ζηη Φωηογραθία. Χριζηάκης Σαζεΐδης EFIAP

(γ) Να βξεζεί ε ρξνλνεμαξηώκελε πηζαλόηεηα κέηξεζεο ηεο ζεηηθήο ηδηνηηκήο ηνπ ηειεζηή W.

A. Αιιάδνληαο ηε θνξά ηνπ ξεύκαηνο πνπ δηαξξέεη ηνλ αγωγό.

Αζθήζεηο 5 νπ θεθαιαίνπ Crash course Step by step training. Dipl.Biol.cand.med. Stylianos Kalaitzis

Οδηγίες τρήζης για λειηοσργία μεηαθοράς καναλιών ζε υηθιακό δέκηη OST-7060 HD

ΣΥΣΤΗΜΑΤΑ ΑΛΓΕΒΡΑ Α ΛΥΚΕΙΟΥ. 1. Να ιπζνύλ ηα ζπζηήκαηα. 1 0,3x 0,1y x 3 3x 4y 2 4x 2y ( x 1) 6( y 1) (i) (ii)

Τν Πξόγξακκα ζα αλαθνηλσζεί, ακέζσο κεηά ηηο γηνξηέο ηνπ Πάζρα.

Διαηιμήζεις για Αιολικά Πάρκα. Κώδικες 28, 78 και 84

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΔΣΑΙΡΔΙΑ ΠΑΓΚΤΠΡΙΟ ΓΙΑΓΩΝΙΜΟ Α ΛΤΚΔΙΟΤ. Ημεπομηνία: 10/12/11 Ώπα εξέτασηρ: 09:30-12:30 ΠΡΟΣΔΙΝΟΜΔΝΔ ΛΤΔΙ

Σύνθεζη ηαλανηώζεων. Έζησ έλα ζώκα πνπ εθηειεί ηαπηόρξνλα δύν αξκνληθέο ηαιαληώζεηο ηεο ίδηαο ζπρλόηεηαο πνπ πεξηγξάθνληαη από ηηο παξαθάησ εμηζώζεηο:

f '(x)g(x)h(x) g'(x)f (x)h(x) h'(x) f (x)g(x)

Άζκηζη ζτέζης κόζηοσς-τρόνοσ (Cost Time trade off) Καηαζκεσαζηική ΑΔ

Κβαντικοί Υπολογισμοί. Πέκπηε Γηάιεμε

Έκδοζη /10/2014. Νέα λειηοσργικόηηηα - Βεληιώζεις

Σρήκα Α. Γξάθνπκε ηα ζηνηρεία ηνπ Πξνκεζεπηή θαη παηάκε Δηζαγσγή. Σρήκα Β1

6 η Εργαζηηριακή Άζκηζη Επαλήθεσζη Λειηοσργίας Βαζικών Φλιπ-Φλοπ

7. ΚΑΤΑΧΩΡΗΤΕΣ ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ. 3. Έλαο θαηαρσξεηήο SISO ησλ 4 bits έρεη: α) Μία είζνδν, β) Δύν εηζόδνπο, γ) Σέζζεξεηο εηζόδνπο.

ΦΤΛΛΟ ΔΡΓΑΙΑ 1 Βαζηθέο Έλλνηεο & Καηεγνξίεο Γηθηύσλ Τπνινγηζηώλ

α) ηε κεηαηόπηζε x όηαλ ην ζώκα έρεη κέγηζην ξπζκό κεηαβνιήο ζέζεο δ) ην κέγηζην ξπζκό κεηαβνιήο ηεο ηαρύηεηαο

ΟΣΑ Επηρεηξεζηαθή Ννεκνζύλε. Ελόηεηα: Ad1.2.2 «Ση θξύβεηαη» πίζω από κηα Επηρεηξεζηαθή Αλαθνξά (report): XML & XSD γηα αξράξηνπο

5 η Δργαζηηριακή Άζκηζη Κσκλώμαηα Γσαδικού Αθροιζηή/Αθαιρέηη

ΔΕΟ 13. Ποσοτικές Μέθοδοι. θαη λα ππνινγίζεηε ην θόζηνο γηα παξαγόκελα πξντόληα. Να ζρεδηαζηεί γηα εύξνο πξντόλησλ έσο

Σήκαηα Β Α Γ Γ Δ Λ Η Σ Ο Ι Κ Ο Ν Ο Μ Ο Υ Γ Ι Α Λ Δ Ξ Η - ( 2 ) ΕΙΣΑΓΨΓΗ ΣΤΙΣ ΤΗΛΕΠΙΚΟΙΝΨΝΙΕΣ

ΑΝΤΗΛΙΑΚΑ. Η Μηκή ζθέθηεθε έλαλ ηξόπν, γηα λα ζπγθξίλεη κεξηθά δηαθνξεηηθά αληειηαθά πξντόληα. Απηή θαη ν Νηίλνο ζπλέιεμαλ ηα αθόινπζα πιηθά:

ύζηεκα Ωξνκέηξεζεο Πξνζσπηθνύ (Έθδνζε 2) ΤΠΗΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΩΝ ΤΣΗΜΑΣΩΝ

ΥΡΙΣΟΤΓΔΝΝΙΑΣΙΚΔ ΚΑΣΑΚΔΤΔ

4) Να γξάςεηε δηαδηθαζία (πξόγξακκα) ζηε Logo κε όλνκα θύθινο πνπ ζα ζρεδηάδεη έλα θύθιν. Λύζε Γηα θύθινο ζηθ επαλάιαβε 360 [κπ 1 δε 1] ηέινο

Επωηήζειρ Σωζηού Λάθοςρ ηων πανελλαδικών εξεηάζεων Σςναπηήζειρ

Transcript:

ΟΗΚΟΝΟΜΗΚΟ ΠΑΝΔΠΗΣΖΜΗΟ ΑΘΖΝΩΝ ΠΡΟΓΡΑΜΜΑ ΜΔΣΑΠΣΤΥΗΑΚΩΝ ΠΟΤΓΩΝ ΣΖΝ ΔΠΗΣΖΜΖ ΣΩΝ ΤΠΟΛΟΓΗΣΩΝ Γηπισκαηηθή Δξγαζία Μεηαπηπρηαθνύ Γηπιώκαηνο Δηδίθεπζεο «Μειέηε θαη Τινπνίεζε Οινθιεξσκέλνπ πζηήκαηνο Καηαγξαθήο Δλεξγεηώλ Αηόκσλ ζε Δμσηεξηθνύο Υώξνπο» ΓΑΟΤΛΑ Γ. ΚΩΝΣΑΝΣΗΝΟ Δπηβιέπσλ: ΠΟΛΤΕΟ ΓΔΩΡΓΗΟ ΑΘΖΝΑ, ΗΟΤΛΗΟ 2009

2

Πίλαθαο πεξηερνκέλσλ ΚΔΦΑΛΑΙΟ 1ν... 7 Δηζαγσγή... 7 ΚΔΦΑΛΑΙΟ 2 ν... 11 ηφρνη & Πεξηγξαθή ηεο Γηπισκαηηθήο Δξγαζίαο... 11 2.1 ηφρνη ηεο Γηπισκαηηθήο Δξγαζίαο... 13 2.2 Πεξηγξαθή ηεο Γηπισκαηηθήο Δξγαζίαο... 14 ΚΔΦΑΛΑΙΟ 3 ν... 17 ρεηηδφκελε Δξγαζία & Δθαξκνγέο... 17 ΚΔΦΑΛΑΙΟ 4 ν... 21 Η ινγηθή ηνπ ζπζηήκαηφο καο... 21 4.1 Δηζαγσγή... 23 4.2 Γηαδηθαζία Παξαθνινχζεζεο ηνπ Υξήζηε... 23 4.3 Καηαζηάζεηο OnLimits & OffLimits... 24 4.4 πγρψλεπζε Γηαδξνκψλ... 25 ΚΔΦΑΛΑΙΟ 5 ν... 27 Τινπνίεζε & παξνπζίαζε ησλ εθαξκνγψλ... 27 5.1 Δξγαιεία θαη ηερλνινγίεο... 29 5.2 Παξνπζίαζε ηνπ ζπζηήκαηφο καο... 31 5.2.1 Η Βάζε Γεδνκέλσλ ηνπ ζπζηήκαηνο... 31 5.2.2 Η Δθαξκνγή ηνπ Γηαρεηξηζηή... 35 5.2.2.1 ControlArchangel... 36 5.2.2.2 ControlArchangelSL... 44 5.2.3 Η Δθαξκνγή ηνπ Υξήζηε... 45 ΚΔΦΑΛΑΙΟ 6 ν... 47 Μειινληηθέο επεθηάζεηο... 47 ΒΙΒΛΙΟΓΡΑΦΙΑ... 51 3

4

Πίλαθαο Δηθφλσλ Δηθφλα 1. Η δηαδηθαζία παξαθνινχζεζεο ηνπ ρξήζηε... 24 Δηθφλα 2. Η Βάζε Γεδνκέλσλ ηνπ ζπζηήκαηνο... 35 Δηθφλα 3. Γεληθή εηθφλα ηεο εθαξκνγήο... 36 Δηθφλα 4. Σν αξηζηεξφ ηκήκα ηεο εθαξκνγήο... 37 Δηθφλα 5. Πξνβνιή δηαδξνκήο ρξήζηε & ζπληνκφηεξνπ κνλνπαηηνχ... 38 Δηθφλα 6. Σν δεμηφ ηκήκα ηεο εθαξκνγήο... 38 Δηθφλα 7. Παξαθνινχζεζε ρξήζηε θαη ηεξκαηηζκφο... 39 Δηθφλα 8. Παξαθνινχζεζε ρξήζηε πνπ βξίζθεηαη εληφο πνιιαπιψλ δηαδξνκψλ... 40 Δηθφλα 9. Σν αξηζηεξφ θαη ην δεμί ηκήκα ηεο εθαξκνγήο θαηά ηελ παξαθνινχζεζε... 40 Δηθφλα 10. Παξαθνινχζεζε ρξήζηε πνπ βξίζθεηαη εληφο κίαο θαη κφλν δηαδξνκήο... 41 Δηθφλα 11. Σν αξηζηεξφ ηκήκα ηεο εθαξκνγήο φηαλ ην ζχζηεκα εληνπίδεη ηελ δηαδξνκή ηνπ ρξήζηε... 42 Δηθφλα 12. Ο ρξήζηεο "OffLimits" γηα πξψηε θνξά... 42 Δηθφλα 13. Ο ρξήζηεο "OffLimits" γηα δεχηεξε θαη ηξίηε θνξά... 43 Δηθφλα 14. Ο ρξήζηεο κεηέβε ζε θαηάζηαζε Inactive... 43 Δηθφλα 15. Ο δηαρεηξηζηήο δηέθνςε ηελ παξαθνινχζεζε... 43 Δηθφλα 16. Γεληθή εηθφλα ηεο εθαξκνγήο... 44 Δηθφλα 17. Η εθαξκνγή ηεο θηλεηήο ζπζθεπήο... 46 5

6

ΚΔΦΑΛΑΗΟ 1ν Δηζαγσγή 7

8

Η ηερλνινγία ζηελ επνρή καο αλαπηχζζεηαη κε νινέλα θαη απμαλφκελνπο ξπζκνχο εηζρσξψληαο ζε φινπο ηνπο ηνκείο ηεο θαζεκεξηλφηεηάο καο, απφ ηελ εξγαζία, ηελ κφξθσζε θαη ηελ επηθνηλσλία καο έσο ηελ ςπραγσγία θαη ηελ πγεία καο. Η παξνπζία ηεο ηερλνινγίαο ζε φιν ην θάζκα ησλ δξαζηεξηνηήησλ καο πξέπεη λα έρεη σο πξσηεχνληα ζηφρν ηελ βειηίσζε ησλ ζπλζεθψλ δηαβίσζήο καο. Οθείιεη λα καο δηεπθνιχλεη ζηελ πιήξσζε ησλ αλαγθψλ θαη ζηελ νινθιήξσζε ησλ ππνρξεψζεψλ καο θαη κάιηζηα κε ηξφπν ηαρχηεξν θαη νξζφηεξν απφ φηη ζην παξειζφλ. Δπηπξφζζεηα, είλαη πνιχ ζεκαληηθφ ε ηερλνινγία λα δχλαηαη λα απμάλεη ην αίζζεκα αζθάιεηαο θαη πξνζηαζίαο ηνπ αηφκνπ. Η παξνχζα δηπισκαηηθή εξγαζία εληάζζεηαη ζηα πιαίζηα ηνπ πξνγξάκκαηνο Αξράγγεινο ( Archangel project). ηφρνο ηνπ ζπγθεθξηκέλνπ πξνγξάκκαηνο είλαη ε πξνζηαζία, ε παξνρή βνήζεηαο θαη δηεπθνιχλζεσλ ζε ειηθησκέλα άηνκα αιιά θαη ζε κηθξά παηδηά. Ο Αξράγγεινο ρσξίδεηαη ζε δχν κεγάιεο ελφηεηεο. ηηο δξαζηεξηφηεηεο ησλ αηφκσλ εληφο ζπηηηνχ θαη ζε απηέο εθηφο ζπηηηνχ. ηφρνο ηεο εξγαζίαο καο είλαη ε κειέηε θαη πινπνίεζε ελφο νινθιεξσκέλνπ ζπζηήκαηνο ζα εληάζζεηαη ζηελ δεχηεξε ελφηεηα ηνπ πξνγξάκκαηνο Αξράγγεινο, απηήλ πνπ αθνξά ηνπο εμσηεξηθνχο ρψξνπο. Η ηερλνινγία ηνπ Γηαδηθηχνπ (Internet) απφ ηελ δεθαεηία ηνπ 1990 θαζψο θαη ε επξεία ηα ηειεπηαία ρξφληα δηάδνζε ηεο ηερλνινγίαο ηνπ GPS (Global Positioning System), καο αλνίγνπλ λένπο νξίδνληεο θαη καο δίλνπλ δπλαηφηεηεο θαη εξγαιεία πνπ ζην πξφζθαην παξειζφλ απνπζίαδαλ. Δπηπιένλ, ε θαζνιηθή δηάδνζε απηψλ ησλ δχν ηερλνινγηψλ, νδεγεί ζηελ ζπλερή βειηίσζή ηεο πνηφηεηαο θαη ησλ δπλαηνηήησλ ηνπο, αιιά θαη ζηελ κείσζε ηνπ θφζηνπο γηα ηελ ρξήζε ηνπο. ηα φζα αθνινπζνχλ ζα παξνπζηάζνπκε αλαιπηηθά ηελ πξνζέγγηζε καο αλαθνξηθά κε ηελ ελφηεηα ηνπ πξνγξάκκαηνο Αξράγγεινο πνπ αθνξά ηνπο εμσηεξηθνχο ρψξνπο θαη ζα ππνζηεξίμνπκε ηηο εθάζηνηε επηινγέο καο. 9

10

ΚΔΦΑΛΑΗΟ 2 ν ηόρνη & Πεξηγξαθή ηεο Γηπισκαηηθήο Δξγαζίαο 11

12

2.1 ηόρνη ηεο Γηπισκαηηθήο Δξγαζίαο Όπσο γίλεηαη πξνθαλέο θαη απφ ηνλ ηίηιν ηεο εξγαζίαο καο, ζηφρνο καο είλαη ε κειέηε θαη ε πινπνίεζε ελφο νινθιεξσκέλνπ ζπζηήκαηνο θαηαγξαθήο ελεξγεηψλ αηφκσλ ζε εμσηεξηθνχο ρψξνπο, ζηα πιαίζηα ηνπ πξνγξάκκαηνο Αξράγγεινο. Δπηπξφζζεηα, ηδηαίηεξα ζεκαληηθφ είλαη ην ζχζηεκα απηφ λα είλαη εχθνιν ζηε ρξήζε θαη ζηελ πξφζβαζε απφ πνιινχο αλζξψπνπο, φληαο παξάιιεια νηθνλνκηθφ ζηελ ρξήζε θαη ηελ ιεηηνπξγία ηνπ. Η ηερλνινγία ηνπ Γηαδηθηχνπ πιένλ έρεη σξηκάζεη, ελψ ζπλερίδεη λα αλαπηχζζεηαη κε γνξγνχο ξπζκνχο θαη λα γίλεηαη νηθνλνκηθφηεξε. Έρνπλ δεκηνπξγεζεί πνιιέο θαηλνχξγηεο θαη ηζρπξέο δπλαηφηεηεο, νη νπνίεο παξάιιεια κε ην απμεκέλν επίπεδν αζθάιεηαο θαη αμηνπηζηίαο ησλ επηθνηλσληψλ, θαζηζηνχλ πινπνηήζηκεο πιήζνο εθαξκνγψλ. Οη δηάθνξνη browsers έρνπλ πιένλ δπλαηφηεηεο παξνπζίαζεο πεξηερνκέλνπ επηπέδνπ ιεηηνπξγηθψλ ζπζηεκάησλ, κε απνηέιεζκα λα θαληάδεη δπλαηφ ζην κέιινλ ηα ιεηηνπξγηθά ζπζηήκαηα λα βξίζθνληαη ζην Γηαδίθηπν (cloud computing), θαζηζηψληαο ηνπο νηθηαθνχο ππνινγηζηέο απιά ηεξκαηηθά ζπζηήκαηα. Μηα πξψηε πξνζπάζεηα ηεο Microsoft πξνο απηήλ ηελ θαηεχζπλζε είλαη ην Azure 1. Απφ ηελ άιιε πιεπξά, ην GPS ηα ηειεπηαία ρξφληα έρεη γλσξίζεη ξαγδαία δηάδνζε. Με ην πέξαζκα ησλ ρξφλσλ ε ζπγθεθξηκέλε ηερλνινγία βειηηψζεθε, έγηλε αθξηβέζηεξε θαη ηειηθά θζελφηεξε κε ζπλέπεηα λα είλαη πεξηζζφηεξν πξνζβάζηκε ζην επξχ θνηλφ. πζηήκαηα GPS πιένλ ελζσκαηψλνληαη ζε πνιιέο θαη δηαθνξεηηθνχ ηχπνπ κεηαμχ ηνπο ζπζθεπέο θαη πξντφληα, απφ θηλεηά ηειέθσλα, PDAs θαη PNAs (Personal Navigation Assistant), κέρξη απηνθίλεηα θαη πξνζσπηθά είδε. Γηα ηνπο ιφγνπο απηνχο επηιέμακε λα ρξεζηκνπνηήζνπκε ηηο ηερλνινγίεο ηνπ Γηαδηθηχνπ θαη ηνπ GPS, σο ηα εξγαιεία πνπ ζα θάλνπλ δπλαηέο θαη πξνζβάζηκεο ηηο ππεξεζίεο ηνπ ζπζηήκαηφο καο. 1 http://www.microsoft.com/azure/default.mspx 13

2.2 Πεξηγξαθή ηεο Γηπισκαηηθήο Δξγαζίαο Η αλάπηπμε ηνπ ζπζηήκαηφο καο πξνυπέζεηε ηελ πινπνίεζε εθαξκνγήο ε νπνία ζα εθηειείηαη ζε θηλεηή windows mobile ζπζθεπή, ηελ θαηαζθεπή κνλάδαο δηαρείξηζεο θαη παξαθνινχζεζεο ησλ ελεξγεηψλ ησλ ρξεζηψλ θαζψο θαη ηελ δεκηνπξγία βάζεο δεδνκέλσλ γηα ηελ νξζή θαη απνδνηηθή ππνζηήξημε ησλ δηάθνξσλ ιεηηνπξγηψλ. Αλαθνξηθά κε ην θνκκάηη πνπ αθνξά ηελ θηλεηή windows mobile ζπζθεπή, επηζπκνχκε κία εθαξκνγή απιή θαη εχθνιε ζηε ρξήζε, κε δεδνκέλν φηη απεπζχλεηαη θαηά θαλφλα ζε ειηθησκέλνπο θαη κηθξά παηδηά. Δπηπξφζζεηα νθείιεη λα κελ θαηαλαιψλεη κεγάιν κέξνο ησλ ππνινγηζηηθψλ πφξσλ ηεο θηλεηήο ζπζθεπήο, αθελφο ιφγσ ηεο πεξηνξηζκέλεο δηάξθεηαο δσήο ησλ κπαηαξηψλ ησλ θηλεηψλ ζπζθεπψλ θαη αθεηέξνπ δηφηη νη ππνινγηζηηθνί πφξνη (επεμεξγαζηηθή ηζρχο, κλήκε) ησλ θηλεηψλ ζπζθεπψλ είλαη εμ νξηζκνχ πεξηνξηζκέλνη. Βαζηδφκελνη ζε απηέο ηηο παξακέηξνπο θαηαζθεπάζακε κηα εθαξκνγή κε απιή δηεπαθή (interface) πνπ παξνπζηάδεη ζηνλ ρξήζηε ην ηξέρνλ γεσγξαθηθφ κήθνο θαη πιάηνο ηεο ηνπνζεζίαο ηνπ θαζψο θαη ην αλαγλσξηζηηθφ ηνπ (username). ε ηαθηά ρξνληθά δηαζηήκαηα (30 δεπηεξνιέπησλ) ε ηξέρνπζα γεσγξαθηθή ηνπνζεζία απνζηέιιεηαη ζηνλ server ηεο εθαξκνγήο καο αμηνπνηψληαο ηελ φπνηα δηαζέζηκε ηερλνινγία πξφζβαζεο ζην δηαδίθηπν (Wi-Fi, GPRS, 3G θ.α.). Η κνλάδα δηαρείξηζεο ηεο εθαξκνγήο επηιέμακε λα είλαη κία web based πινπνίεζε. Κχξηνο παξάγνληαο πνπ καο νδήγεζε ζε απηήλ ηελ θαηεχζπλζε είλαη ε παξνρή ηεο δπλαηφηεηαο ζηνλ εθάζηνηε δηαρεηξηζηή λα έρεη πξφζβαζε ζην ζχζηεκα απφ φπνπ θαη λα βξίζθεηαη θαη κάιηζηα θαη ζε ππνινγηζηέο ζηνπο νπνίνπο δελ έρεη δηθαηψκαηα δηαρεηξηζηή ή είλαη θνηλφρξεζηνη, κε δεδνκέλν φηη ε πξφζβαζε ζηελ εθαξκνγή δελ απαηηεί νπνηνπδήπνηε είδνπο εγθαηάζηαζε θάπνηνπ εθηειέζηκνπ αξρείνπ. Η εθαξκνγή δηαρείξηζεο ηνπ ζπζηήκαηνο δίλεη ηελ δπλαηφηεηα ζηνλ δηαρεηξηζηή λα έρεη πξφζβαζε ζε φιεο ηηο πιεξνθνξίεο πνπ είλαη δηαζέζηκεο γηα ηνπο ππάξρνληεο ρξήζηεο. Δπηιέγνληαο ν δηαρεηξηζηήο έλαλ ρξήζηε έρεη ηελ δπλαηφηεηα λα δεη ηα πξνζσπηθά ηνπ ζηνηρεία, ηελ παξνχζα θαηάζηαζή ηνπ ( Δλεξγφο / Αλελεξγφο ) πoπ ζεκαηνδνηεί εάλ ηελ ζπγθεθξηκέλε ρξνληθή ζηηγκή ν επηιεγκέλνο ρξήζηεο ρξεζηκνπνηεί ην ζχζηεκα θαζψο θαη ηελ ηειεπηαία ρξνληθή ζηηγκή πνπ ν ρξήζηεο ήηαλ ελεξγφο. 14

Τπάξρεη αθφκε ε δπλαηφηεηα πξνβνιήο ζηνλ ράξηε ηεο ζέζεο φπνπ ήηαλ ελεξγφο ηειεπηαία θνξά. Δπηπιένλ, πιεξνθνξνχκαζηε γηα ην πιήζνο ησλ δηαδξνκψλ/ηξνρηψλ πνπ ν επηιεγκέλνο ρξήζηεο έρεη απνζεθεχζεη ζην ζχζηεκα, ελψ κπνξνχκε λα ηηο πξνβάινπκε ζηνλ ράξηε. Η πξνβνιή ησλ δηαζέζηκσλ δηαδξνκψλ ζηνλ ράξηε κπνξεί λα γίλεη είηε απιά παξνπζηάδνληαο ηελ ηξνρηά είηε ηα ζεκεία εθείλα πνπ απέζηεηιε ν αξρηθά ν ρξήζηεο θαη δεκηνχξγεζαλ ηελ ζπγθεθξηκέλε ηξνρηά. Γηα θάζε ηξνρηά παξνπζηάδνληαη πιήξε ζηνηρεία, φπσο ην ζπλνιηθφ κήθνο ηεο, ην γεσγξαθηθφ πιάηνο θαη κήθνο ησλ ζεκείσλ πνπ ηελ απαξηίδνπλ θαζψο θαη ε απφζηαζε θάζε δεχγνπο δηαδνρηθψλ γεσγξαθηθψλ ζεκείσλ. Αθφκε δίλεηαη ε δπλαηφηεηα, ζε πεξίπησζε πνπ ν ρξήζηεο είλαη ελεξγφο, ηεο παξαθνινχζεζήο ηνπ πξνθεηκέλνπ λα γλσξίδνπκε εάλ βξίζθεηαη εληφο θάπνηαο πξνθαζνξηζκέλεο ηξνρηάο, ψζηε ζε πεξίπησζε πνπ δελ βξίζθεηαη λα πξνβνχκε ζηηο απαξαίηεηεο ελέξγεηεο. Οη ράξηεο πνπ ρξεζηκνπνηήζακε γηα ηελ εθαξκνγή καο είλαη νη Bing Maps ηεο Microsoft. Οη ηειεπηαίνη δηαζέηνπλ φιεο ηηο απαξαίηεηεο δπλαηφηεηεο γηα ηελ θάιπςε ησλ αλαγθψλ καο γηα ηελ παξνχζα εξγαζία θαη θπζηθά θάλνπλ εθηεηακέλε ρξήζε ηεο ηερλνινγίαο AJAX πνπ δίλεη ηελ αίζζεζε ηεο ζπλέρεηαο ηεο εθαξκνγήο εμαιείθνληαο ηελ αλάγθε γηα ζπλερείο αλαλεψζεηο ηεο ζειίδαο πνπ ζα κείσλε ηελ εκπεηξία ρξήζεο ηεο εθαξκνγήο. Δπηπιένλ, ζηα ηέιε ηνπ Μαξηίνπ ηνπ ηξέρνληνο έηνπο ε Microsoft παξνπζίαζε έλα CTP (Community Technology Preview) κε ην νπνίν δίλεη ηελ δπλαηφηεηα ρξεζηκνπνίεζεο ησλ ραξηψλ ηεο ζηα πιαίζηα ηεο ηερλνινγίαο ηνπ Silverlight. Σν φιν project πνπ νλνκάδεηαη Virtual Earth Silverlight, παξφιν πνπ είλαη ζε έθδνζε CTP απνδείρζεθε ηδηαίηεξα θαιφ θαη αμηφπηζην κε απνηέιεζκα λα νδεγεζνχκε ζηελ θαηαζθεπή ηεο κνλάδαο ηνπ δηαρεηξηζηή θαη κε απηήλ ηελ ηερλνινγία ραξηψλ. Δμάιινπ, νη δπλαηφηεηεο πνπ εηζάγνληαη κε ηελ ρξήζε ηεο ηερλνινγίαο Silverlight βειηηψλνπλ ζε κεγάιν βαζκφ ηηο δπλαηφηεηεο πξνβνιήο πεξηερνκέλνπ πάλσ ζηνλ ράξηε, φπσο θαη ην ζπλνιηθφ αηζζεηηθφ απνηέιεζκα πνπ ιακβάλεη ν ρξήζηεο. Σέινο αλαθνξηθά κε ηελ βάζε δεδνκέλσλ ηεο εθαξκνγήο καο επηιέμακε ηελ πιένλ πξφζθαηε έθδνζε ηνπ SQL Server ηεο Microsoft. Σα δεδνκέλα πνπ ζπιιέγνληαη ζηε βάζε αθνξνχλ ηα πξνζσπηθά ζηνηρεία ησλ ρξεζηψλ, ηηο δηαδξνκέο πνπ απηνί έρνπλ θαηαρσξήζεη, ηηο πιένλ πξφζθαηεο γεσγξαθηθέο ζέζεηο ζηηο νπνίεο απηνί βξέζεθαλ θαζψο θαη ην μέσο βήμα ηνπο. Με ηνλ φξν κέζν βήκα ελλννχκε ηελ κέζε απφζηαζε κεηαμχ δχν δηαδνρηθψλ ζεκείσλ ζηα νπνία βξέζεθε ν ρξήζηεο θαηά ηελ δηάξθεηα ηεο θαηαγξαθήο κηαο ηξνρηάο ηνπ. Η πιεξνθνξία απηή είλαη πνιχ ζεκαληηθή γηα ηελ 15

παξαθνινχζεζε ησλ ελεξγεηψλ ησλ ρξεζηψλ θαη ηνπο ιφγνπο ζα ηνπο εμεγήζνπκε παξαθάησ ζε ζπγθεθξηκέλν εδάθην. Να ζεκεηψζνπκε αθφκε φηη ε έθδνζε SQL Server 2008 πνπ ρξεζηκνπνηήζακε εηζάγεη δχν (2) λένπο ηχπνπο δεδνκέλσλ ηνπο geography θαη geometry. Ο ηχπνο geography είλαη ηδηαίηεξα ζεκαληηθφο γηα ηελ εξγαζία καο δηφηη εηζάγεη πνιιέο λέεο δπλαηφηεηεο νη νπνίεο ζα αλαιπζνχλ ζηελ ζπλέρεηα. 16

ΚΔΦΑΛΑΗΟ 3 ν ρεηηδόκελε Δξγαζία & Δθαξκνγέο 17

18

ην θεθάιαην απηφ ζα αζρνιεζνχκε κε ηηο εθαξκνγέο πνπ έρεη θαηά θαλφλα ε ηερλνινγία GPS θαη ηελ ζέζε ηεο εξγαζίαο καο ζην πεδίν απηφ. Η ηερλνινγία GPS ρξεζηκνπνηείηαη θπξίσο γηα ηνλ εληνπηζκφ ηεο ζέζεο ηνπ ρξήζηε ρσξίο φκσο ε ζέζε πνπ βξίζθεηαη λα έρεη θάπνηα επηπιένλ ζεκαζηνινγία. Γηα παξάδεηγκα ζπζθεπέο πνπ ελζσκαηψλνπλ GPS ρξεζηκνπνηνχληαη γηα λα γλσξίδνπλ νη ελδηαθεξφκελνη ηελ ζέζε ελφο πινίνπ, ελφο αηφκνπ ή νπνηνπδήπνηε άιινπ αληηθεηκέλνπ. Κνηλφο παξάγνληαο ησλ εθαξκνγψλ απηψλ είλαη ε επηζπκία ηεο γλψζεο ηεο ηξέρνπζαο ζέζεο δίρσο λα ππάξρεη ην πιαίζην εθείλν ή ε ηερλνινγία πνπ ζα πξνβιέςεη γηα παξάδεηγκα ηελ επφκελε ζέζε. Δμάιινπ ηδηαίηεξα δηαδεδνκέλα είλαη ηα ζπζηήκαηα πινήγεζεο πνπ βαζίδνληαη ζηελ ηερλνινγία GPS. Σα ζπζηήκαηα απηά δέρνληαη απφ ηνλ ρξήζηε έλαλ επηζπκεηφ πξννξηζκφ θαη κε βάζε ηελ ηξέρνπζα ζέζε ηνπ παξέρνπλ νδεγίεο πξφζβαζεο ζηνλ πξννξηζκφ. Γελ πεξηιακβάλνπλ ηελ έλλνηα ηεο πξφβιεςεο ηεο επφκελεο ζέζεο νχηε ηελ έλλνηα ηεο νξζήο ή φρη δηαδξνκήο, ηεο χπαξμεο εληφο ή εθηφο νξίσλ. Δδψ αθξηβψο έγθεηηαη θαη ε δηαθνξνπνίεζε ηεο εξγαζίαο καο ζε ζρέζε κε ηηο πξναλαθεξζείζεο εθαξκνγέο. Η ζέζε ηνπ ρξήζηε ζηελ δηθή καο εθαξκνγή έρεη ηδηαίηεξε ζεκαζηνινγία. Γελ είλαη ε θπξίαξρε έλλνηα ε ηξέρνπζα ζέζε φζν ην αλ ε ζέζε απηή βξίζθεηαη εληφο ησλ γλσζηψλ δηαδξνκψλ ηνπ ρξήζηε. Δπηπξφζζεηα πξνζπαζνχκε κε βάζε ηελ δηαδξνκή ζηελ νπνία βξίζθεηαη ν ρξήζηεο λα πξνβιέςνπκε ηελ επφκελε ζέζε ηνπ θαη ζε πεξίπησζε θαηά ηελ νπνία δελ είλαη εθεί φπνπ ηνλ πεξηκέλνπκε ν δηαρεηξηζηήο θαιείηαη λα ιάβεη ηα αξκφδνληα κέηξα. Αληίζεηα νη εθαξκνγέο πινήγεζεο απιά πξνβαίλνπλ ζε επαλππνινγηζκφ ηεο πνξείαο πνπ πξέπεη λα αθνινπζεζεί γηα ηνλ δνζέληα πξννξηζκφ. Απηφ πνπ επηζπκνχκε λα γίλεη αληηιεπηφ απφ ηα παξαπάλσ είλαη ε δηαθνξεηηθφηεηα ηεο πξνζέγγηζεο ηεο εξγαζίαο καο ζην πιαίζην ηεο ηερλνινγίαο GPS. Δίλαη βέβαην πσο κειινληηθά ζα πξνθχςνπλ πνιιέο αθφκε εθαξκνγέο πνπ βαζίδνληαη ζην GPS. Η αμία ηεο παξνχζαο εξγαζίαο έγθεηηαη ζην φηη θηλείηαη πξνο ηελ θαηεχζπλζε απηή ζηνρεχνληαο ζε έλα λέν πεδίν εθαξκνγψλ πνπ βαζίδνληαη ζηελ ηερλνινγία ηνπ GPS θαη επηδηψθνπλ λα πξνζθέξνπλ ιεηηνπξγίεο θαη ππεξεζίεο πνπ δελ ππάξρνπλ ζε κεγάιε θιίκαθα θαη ζα θάλνπλ ηελ θαζεκεξηλφηεηα ησλ αλζξψπσλ επθνιφηεξε θαη αζθαιέζηεξε. ην επφκελν θεθάιαην ζα αλαιχζνπκε δηεμνδηθά ηελ ινγηθή θαη ηηο ιεηηνπξγίεο ηεο δηθήο καο πξνζέγγηζεο πνπ αθνξά ηελ απνδνηηθή παξαθνινχζεζε ησλ ελεξγεηψλ αηφκσλ ζε 19

εμσηεξηθνχο ρψξνπο. 20

ΚΔΦΑΛΑΗΟ 4 ν Ζ ινγηθή ηνπ ζπζηήκαηόο καο 21

22

4.1 Δηζαγσγή ηα φζα αθνινπζνχλ ζα αλαιχζνπκε ηελ πξνζέγγηζή καο αλαθνξηθά κε ην ζέκα ηεο νξζήο παξαθνινχζεζεο θαη θαηαγξαθήο ησλ ελεξγεηψλ ησλ ρξεζηψλ ηνπ ζπζηήκαηφο καο. Δπηζπκνχκε λα θάλνπκε ζαθψο αληηιεπηή ηελ κέζνδφ καο, λα ηνλίζνπκε ηα πιενλεθηήκαηά ηεο θαη λα ππνγξακκίζνπκε ηνπο ιφγνπο πνπ ηελ θαζηζηνχλ απνδνηηθή ζηελ ιεηηνπξγία ηεο. Πξηλ πξνρσξήζνπκε ζηελ αλαιπηηθή παξνπζίαζε αμίδεη λα ζεκεηψζνπκε εδψ φηη θξνληίζακε ψζηε ην ζχζηεκά καο λα είλαη πξνζσπνπνηεκέλν γηα ηνλ θάζε ρξήζηε θαη λα κπνξεί λα αληαπεμέξρεηαη επηηπρψο ζε κηθξέο απνθιίζεηο απφ ηελ πξνθαζνξηζκέλε δηαδξνκή ρσξίο λα δεκηνπξγεί ςεπδείο ζπλαγεξκνχο. 4.2 Γηαδηθαζία Παξαθνινύζεζεο ηνπ Υξήζηε Πξνθεηκέλνπ λα κπνξέζνπκε λα κνληεινπνηήζνπκε ηελ φιε δηαδηθαζία ηεο παξαθνινχζεζεο ηνπ ρξήζηε νξίζακε έλαλ αξηζκφ θαηαζηάζεσλ ζηηο νπνίεο απηφο κπνξεί λα βξίζθεηαη αλά πάζα ζηηγκή. Γεκηνπξγήζακε έηζη κία απζηεξψο νξηζκέλε μηχανή καταστάσεων (Finite State Machine - FSM) κε ηελ βνήζεηα ηεο νπνίαο ε δηαδηθαζία πνπ αθνινπζείηαη γίλεηαη εχιεπηε θαη πιήξσο θαηαλνεηή. Η κεραλή θαηαζηάζεσλ πνπ θαηαζθεπάζακε θαίλεηαη ζηελ εηθφλα 1 πνπ αθνινπζεί. Ο ρξήζηεο κπνξεί λα βξίζθεηαη αξρηθά ζε δχν (2) πηζαλέο θαηαζηάζεηο, Active ή Inactive. ηελ πξψηε πεξίπησζε ρξεζηκνπνηεί ηελ ηξέρνπζα ρξνληθή ζηηγκή ην ζχζηεκα, ελψ ζηελ δεχηεξε φρη. Αλ ν ρξήζηεο είλαη Inactive δελ κπνξεί πξνθαλψο λα παξαθνινπζεζεί θαη ζπλεπψο ε δηαδηθαζία παξαθνινχζεζεο είηε δελ μεθηλάεη είηε δηαθφπηεηαη αλ ελψ είλαη Active θαη παξαθνινπζείηαη κεηαβεί ζε θαηάζηαζε Inactive. ηελ ηειεπηαία πεξίπησζε πεξηκέλνπκε γηα ρξνληθφ δηάζηεκα ηξηψλ (3) δεηγκάησλ κήπσο θαη ν ρξήζηεο επαλέιζεη ζηελ θαηάζηαζε Active. Αλ επαλέιζεη ε δηαδηθαζία ζπλερίδεηαη νκαιά ελψ αλ δελ επαλέιζεη επηζεκαίλνπκε φηη ν ρξήζηεο έρεη βγεη εθηφο ζπζηήκαηνο. Σν ρξνληθφ δηάζηεκα ησλ ηξηψλ (3) δεηγκάησλ ηζνχηαη κε 90 δεπηεξφιεπηα (ε θηλεηή ζπζθεπή απνζηέιιεη γεσγξαθηθά δεδνκέλα ζηνλ server θάζε 30 δεπηεξφιεπηα). 23

Θα πεξηγξάςνπκε ηψξα ηελ δηαδηθαζία παξαθνινχζεζεο ηνπ ρξήζηε ζηελ πεξίπησζε θαηά ηελ νπνία βξίζθεηαη ζηελ θαηάζηαζε Active. ηελ πεξίπησζε απηή, έρνπκε δχν (2) πηζαλά ελδερφκελα. Δίηε ν ρξήζηεο λα βξίζθεηαη ζηα πιαίζηα κηαο γλσζηήο θαη πξνθαζνξηζκέλεο δηθήο ηνπ δηαδξνκήο (θαηάζηαζε OnLimits ) είηε λα βξίζθεηαη εθηφο (θαηάζηαζε OffLimits ). Ο νξηζκφο ησλ δχν (2) απηψλ θαηαζηάζεσλ αθνινπζεί ζηελ επφκελε ελφηεηα. Δηθόλα 1. Ζ δηαδηθαζία παξαθνινύζεζεο ηνπ ρξήζηε 4.3 Καηαζηάζεηο OnLimits & OffLimits ην ζεκείν απηφ ζα πεξηγξάςνπκε ηνλ ηξφπν κε ηνλ νπνίν θαζνξίδνπκε ηηο θαηαζηάζεηο OnLimits & OffLimits. Γηα θάζε ρξήζηε νξίδνπκε έλα κέζν βήκα κε βάζε ηηο θαηαγεγξακκέλεο ζην ζχζηεκα δηαδξνκέο ηνπ. Οξίδνπκε δειαδή ηελ κέζε απφζηαζε ηελ νπνία δηαλχεη ν εθάζηνηε ρξήζηεο κεηαμχ δχν (2) δηαδνρηθψλ γεσγξαθηθψλ ζεκείσλ ζε ρξνληθφ δηάζηεκα 30 δεπηεξνιέπησλ (ρξνληθφ δηάζηεκα απνζηνιήο γεσγξαθηθψλ ζπληεηαγκέλσλ απφ ηελ θηλεηή ζπζθεπή). ηεξηδφκελνη ζε απηήλ ηελ ηηκή ηεο απφζηαζεο ζα ιέγακε πεξηγξαθηθά φηη γχξσ απφ θάζε θαηαγεγξακκέλε δηαδξνκή ηνπ εθάζηνηε ρξήζηε 24

δεκηνπξγείηαη έλα «ζχλλεθν». Όια ηα γεσγξαθηθά ζεκεία ηα νπνία βξίζθνληαη εληφο απηνχ ηνπ «ζχλλεθνπ» ζεσξνχληαη έγθπξα ζεκεία θαη έλδεημε φηη ν ρξήζηεο βξίζθεηαη εληφο ησλ πξνθαζνξηζκέλσλ πιαηζίσλ. Βιέπνπκε έηζη φηη ην ζχζηεκα γηα θάζε ρξήζηε είλαη προσωποποιημένο, κηα ηδηφηεηα ηδηαηηέξσο ζεκαληηθή. Αλ ινηπφλ ν ρξήζηεο βξίζθεηαη εληφο ησλ έγθπξσλ γεσγξαθηθψλ ζεκείσλ ζεσξνχκε φηη βξίζθεηαη ζηελ θαηάζηαζε OnLimits, δηαθνξεηηθά βξίζθεηαη ζηελ θαηάζηαζε OffLimits. Αλ βξεζεί ζηελ θαηάζηαζε OffLimits πεξηκέλνπκε αθφκε δχν (2) γεσγξαθηθά δείγκαηα (δειαδή νκνίσο κε πξνεγνπκέλσο ζπλνιηθά 90 δεπηεξφιεπηα) λα επαλέιζεη ζε θαηάζηαζε OnLimits. Αλ θάηη ηέηνην δελ ζπκβεί ηφηε επηζεκαίλνπκε ην γεγνλφο. Σέινο, φηαλ ν ρξήζηεο βξίζθεηαη ζηελ θαηάζηαζε OnLimits αλαηξέρνπκε ζηελ βάζε δεδνκέλσλ θαη αλαζχξνπκε ηα ηξία (3) εθείλα γεσγξαθηθά ζεκεία ησλ θαηαγεγξακκέλσλ δηαδξνκψλ ηνπ ρξήζηε ηα νπνία είλαη ηα πην θνληηλά θαη κε απφζηαζε κηθξφηεξε ηνπ κέζνπ βήκαηνο απφ ηελ ηξέρνπζα ζέζε ηνπ. Γηα θάζε έλα απφ απηά ηα ηξία (3) γεσγξαθηθά ζεκεία παξνπζηάδεηαη ζηνλ δηαρεηξηζηή ζε πνηα δηαδξνκή αλήθνπλ. Αλ αλήθνπλ φια ζηελ ίδηα δηαδξνκή ηφηε είλαη μεθάζαξν πσο ν ρξήζηεο βαδίδεη εληφο ηεο ζπγθεθξηκέλεο δηαδξνκήο. ε πεξίπησζε θαηά ηελ νπνία δελ αλήθνπλ φια ηα ζεκεία ζηελ ίδηα δηαδξνκή θαηαγξάθνπκε ηηο δηαδξνκέο ζηηο νπνίεο αλήθνπλ. Αλ ζην επφκελν δείγκα έρνπκε πάιη ζεκεία ηα νπνία αλήθνπλ ζε πεξηζζφηεξεο απφ κία δηαδξνκέο αιιά κφλν κία δηαδξνκή ππάξρεη θαη ζην παξφλ δείγκα θαη ζην πξνεγνχκελν, ηφηε δειψλνπκε φηη ν ρξήζηεο βξίζθεηαη ζε απηήλ ηελ θνηλή κεηαμχ ησλ δεηγκάησλ δηαδξνκή. ε θάζε άιιε δηαθνξεηηθή πεξίπησζε θαη αλαθέξνληαο πάληα ηηο δηαδξνκέο ζηηο νπνίεο αλήθεη ην θάζε ζεκείν αλακέλνπκε ηα επφκελα δείγκαηα ηεο ηξέρνπζαο ζέζεο ηνπ ρξήζηε πξνθεηκέλνπ λα μεθαζαξίζνπλ ηελ θαηάζηαζε. 4.4 πγρώλεπζε Γηαδξνκώλ Έλα αθφκε ζηνηρείν πνπ ρξεζηκνπνηήζακε κε ζηφρν ηελ απνδνηηθφηεξε ιεηηνπξγία ηνπ ζπζηήκαηνο είλαη ε νκαδνπνίεζε πεξηζζφηεξσλ ηεο κίαο δηαθνξεηηθψλ ηξνρηψλ ζε κία θνηλή δηαδξνκή. Αλαιπηηθφηεξα, φινη ζηελ θαζεκεξηλφηεηά καο έρνπκε ζπγθεθξηκέλεο αθεηεξίεο θαη 25

πξννξηζκνχο ηελ απφζηαζε κεηαμχ ησλ νπνίσλ θαιχπηνπκε ζπρλά κε ειαθξψο δηαθνξνπνηεκέλε πνξεία. ην ζχζηεκά καο δίλνπκε ηελ δπλαηφηεηα πξνζζήθεο εηηθέηαο (tag), δειαδή ηίηινπ/νλνκαζίαο, ζε θάζε δηαδξνκή. Με ηνλ ηξφπν απηφ δηαδξνκέο νη νπνίεο έρνπλ ηελ ίδην δεχγνο αθεηεξίαο/πξννξηζκνχ αιιά ειαθξψο δηαθνξεηηθά εζσηεξηθά ζεκεία, κπνξνχλ λα θέξνπλ ην ίδην tag θαη θαηά ζπλέπεηα ην ζχζηεκά καο ηηο αλαγλσξίδεη σο κία θαη κνλαδηθή δηαδξνκή. Σα πιενλεθηήκαηα πνπ εηζάγεη απηή ε πξνζέγγηζε είλαη νπζηαζηηθά. Αξρηθά καο δίλεηαη ε δπλαηφηεηα λα ελεκεξψλνπκε ηνλ δηαρεηξηζηή ηεο εθαξκνγήο γηα ηελ παξνπζία ηνπ ρξήζηε ζε κία δηαδξνκή αθφκε θαη αλ απηφο αθνινπζεί δηαθνξεηηθέο ελδηάκεζεο ηξνρηέο. Δπηπιένλ απινπνηείηαη ην φιν ζχζηεκα παξαθνινχζεζεο, αθνχ αληί λα πξνζπαζεί ε εθαξκνγή ηεο δηαρείξηζεο λα δηαθξίλεη ζε πνηα απφ ηηο παξαπιήζηεο δηαδξνκέο βξίζθεηαη ν ρξήζηεο ηηο νκαδνπνηεί ζε κία δηαδξνκή θαη ελεκεξψλεη γηα ηελ παξνπζία ηνπ ρξήζηε ζε απηήλ ηε δηαδξνκή. 26

ΚΔΦΑΛΑΗΟ 5 ν Τινπνίεζε & παξνπζίαζε ησλ εθαξκνγώλ 27

28

5.1 Δξγαιεία θαη ηερλνινγίεο Γηα ηελ πινπνίεζε ηεο εξγαζίαο καο ρξεζηκνπνηήζακε πξνγξακκαηηζηηθά εξγαιεία ηεο Microsoft. Δξγαζηήθακε κε ην νινθιεξσκέλν πεξηβάιινλ αλάπηπμεο εθαξκνγψλ Microsoft Visual Studio 2008 αλαπηχζζνληαο ηνλ θψδηθα ηεο εθαξκνγήο καο ζηηο αθφινπζεο γιψζζεο πξνγξακκαηηζκνχ: Visual C# 2008 Υξεζηκνπνηήζεθε ε ηειεπηαία έθδνζε ηεο C# ε νπνία κε ηα λέα ραξαθηεξηζηηθά πνπ εηζάγεη (LINQ, lambda expressions, extension methods θ.α.), καο έδσζε ηελ δπλαηφηεηα δεκηνπξγίαο ζπκπαγνχο, θαηαλνεηνχ θαη ηδηαίηεξα επαλαρξεζηκνπνηήζηκνπ θψδηθα. ASP.NET 3.5 & ASP.NET AJAX Υξεζηκνπνηήζεθε ε ηειεπηαία έθδνζε ηεο ASP.NET ε νπνία κε ηηο αλαβαζκηζκέλεο δπλαηφηεηέο ηεο θαη ηελ εθηεηακέλε εγγελή ππνζηήξημε ηεο ηερλνινγίαο AJAX, καο νδήγεζε ζηελ δεκηνπξγία κηαο web based εθαξκνγήο ε νπνία γηα ηελ ιεηηνπξγία ηεο δελ απαηηεί θακία αλαλέσζε ζηελ ζειίδα απμάλνληαο έηζη ηελ ηαρχηεηα εθηέιεζεο ησλ δηάθνξσλ ιεηηνπξγηψλ αιιά θαη ηελ ζπλνιηθή εκπεηξία ρξήζηε. XAML (Extensible Application Markup Language) Υξεζηκνπνηήζακε ηέινο ηελ XAML πνπ είλαη ε γιψζζα δεκηνπξγίαο πεξηερνκέλνπ Silverlight, πξνθεηκέλνπ λα κπνξέζνπκε λα πινπνηήζνπκε ηελ εθαξκνγή ηεο παξαθνινχζεζεο ησλ ρξεζηψλ απφ ηελ κεξηά ηνπ δηαρεηξηζηή εθκεηαιιεπφκελνη ην πνιχ πξφζθαην CTP ηεο Microsoft γηα ηνπο ράξηεο ηεο Virtual Earth Silverlight. Μπνξέζακε έηζη λα δνχκε ην απμεκέλν αηζζεηηθφ απνηέιεζκα θαη ηελ θνξπθαία απεηθφληζε ησλ ραξηψλ πνπ ε λέα ηερλνινγία απηή πξνζθέξεη. Δθκεηαιιεπζήθακε ηηο αθφινπζεο ηερλνινγίεο θαη πιαηθφξκεο αλάπηπμεο θψδηθα: Microsoft.NET Framework 3.5 Τινπνίεζε φισλ ησλ λέσλ δπλαηνηήησλ γηα αλάπηπμε Windows & web based εθαξκνγψλ. 29

Microsoft.NET Compact Framework 3.5 Τινπνίεζε φισλ ησλ λέσλ δπλαηνηήησλ γηα αλάπηπμε εθαξκνγψλ ζε θηλεηέο ζπζθεπέο. Windows Mobile 6 Professional SDK Όιν ην απαξαίηεην πεξηβάιινλ αλάπηπμεο εθαξκνγψλ πνπ απεπζχλνληαη ζε θηλεηέο ζπζθεπέο κε ιεηηνπξγηθφ ζχζηεκα Windows Mobile 6. Microsoft Silverlight 2.0 Η πιαηθφξκα γηα ηελ αλάπηπμε web based εθαξκνγψλ επφκελεο γεληάο κε αλψηεξεο δπλαηφηεηεο εκθάληζεο πνιπκεζηθνχ πεξηερνκέλνπ θαη βειηησκέλνπ αηζζεηηθφ απνηέιεζκα. Virtual Earth Map Control SDK (with AJAX) Όιεο νη θιάζεηο θαη ην πεξηβάιινλ αλάπηπμεο web based εθαξκνγψλ νη νπνίεο πεξηιακβάλνπλ ηνπο ράξηεο Bing Maps ηεο Microsoft. Virtual Earth Silverlight Map Control SDK (CTP) Όιεο νη θιάζεηο θαη ην πεξηβάιινλ αλάπηπμεο web based εθαξκνγψλ ηεο λέαο ηερλνινγίαο ηεο Microsoft πνπ δίλεη ηελ δπλαηφηεηα χπαξμεο ησλ ραξηψλ κέζα απφ ηελ ηερλνινγία ηνπ Silverlight, αληηθαζηζηψληαο ηελ AJAX. Σέινο, ε βάζε δεδνκέλσλ ηεο εθαξκνγήο καο δεκηνπξγήζεθε κε ηελ Microsoft SQL Server 2008 έρνληαο σο επαθφινπζν πιενλέθηεκα ηελ άξηηα ζπλεξγαζία ηεο κε ηα ππφινηπα θνκκάηηα ηεο εθαξκνγήο καο. Πέξα απφ ηα απμεκέλα ραξαθηεξηζηηθά αλαθνξηθά κε ηελ ηαρχηεηα εθηέιεζεο ελεξγεηψλ θαη ηελ αζθάιεηα έλαληη πξνγελέζηεξσλ εθδφζεσλ, ε παξνπζία ηνπ λένπ ηχπνπ δεδνκέλσλ, geography, καο έδσζε ηελ δπλαηφηεηα, κεηαμχ άιισλ, λα κπνξνχκε λα ππνινγίδνπκε κε αθξίβεηα ηελ απφζηαζε κεηαμχ δχν (2) γεσγξαθηθψλ ζεκείσλ. Ο ιφγνο πνπ ζπκβαίλεη απηφ είλαη ε χπαξμε εηδηθήο ζπλάξηεζεο (STDistance) ζηελ Microsoft SQL Server 2008 ε νπνία ππνινγίδεη ηελ απφζηαζε κεηαμχ δχν γεσγξαθηθψλ ζεκείσλ κε βάζε ην ειιεηςνεηδέο ζρήκα ηνπ πιαλήηε καο. 30

5.2 Παξνπζίαζε ηνπ ζπζηήκαηόο καο Σν νινθιεξσκέλν ζχζηεκα πνπ δεκηνπξγήζακε απνηειείηαη ζε πςειφ επίπεδν απφ ηξία (3) δηαθξηηά κεηαμχ ηνπο κέξε: Η βάζε δεδνκέλσλ ηνπ ζπζηήκαηφο καο ε νπνία δηαηεξεί φια ηα απαξαίηεηα δεδνκέλα γηα ηελ εμαθνινχζεζε ηεο νξζήο ιεηηνπξγίαο ηεο φιεο εθαξκνγήο Η εθαξκνγή πνπ εθηειεί ν δηαρεηξηζηήο πξνθεηκέλνπ λα παξαθνινπζεί ηνπο ρξήζηεο ηνπ ζπζηήκαηνο Η εθαξκνγή πνπ εθηειείηαη ζηελ θηλεηή windows mobile ζπζθεπή ηνπ ρξήζηε Σα ηξία (3) απηά μερσξηζηά ηκήκαηα παξνπζηάδνπκε αλαιπηηθά ακέζσο παξαθάησ. 5.2.1 Ζ Βάζε Γεδνκέλσλ ηνπ ζπζηήκαηνο Γηα ηηο αλάγθεο ηεο εθαξκνγήο καο θαηαζθεπάζακε ηελ βάζε δεδνκέλσλ Archangel. Η βάζε καο απνηειείηαη απφ ηνπο αθφινπζνπο πίλαθεο: Users Ο πίλαθαο απηφο πεξηιακβάλεη ηα πξνζσπηθά ζηνηρεία ησλ ρξεζηψλ ηεο εθαξκνγήο. Γηαζέηεη ηέζζεξα (4) πεδία: id: Ο αχμσλ αξηζκφο ηνπ ρξήζηε (θχξην θιεηδί). uname: Σν αλαγλσξηζηηθφ ηνπ ρξήζηε. fname: Σν κηθξφ φλνκα ηνπ ρξήζηε. lname: Σν επψλπκν ηνπ ρξήζηε. Routes Ο πίλαθαο απηφο πεξηιακβάλεη ηα ζεκεία θάζε δηαδξνκήο ησλ ρξεζηψλ. Γηαζέηεη έμη (6) πεδία: 31

id: Ο αχμσλ αξηζκφο ηεο δηαδξνκήο (θχξην θιεηδί). uid: Ο αξηζκφο ηνπ ρξήζηε (μέλν θιεηδί). rid: Ο αχμσλ αξηζκφο ηεο δηαδξνκήο αλά ρξήζηε. step: Ο αχμσλ αξηζκφο ελφο ζεκείνπ κηαο δηαδξνκήο. latitude: Σν γεσγξαθηθφ πιάηνο ελφο ζεκείνπ. longitude: Σν γεσγξαθηθφ κήθνο ελφο ζεκείνπ. LatestPositions Ο πίλαθαο απηφο πεξηιακβάλεη ηηο ηξεηο (3) ηειεπηαίεο ζέζεηο (γεσγξαθηθά ζεκεία) ζηα νπνία βξέζεθε ν θάζε ρξήζηεο. Θεσξνχκε φηη απηφο ν αξηζκφο ησλ ζεκείσλ είλαη επαξθήο θαη θαηάιιεινο γηα ηελ νξζή παξαθνινχζεζε ησλ δηαδξνκψλ ησλ ρξεζηψλ. ην θνκκάηη ηεο παξνπζίαζεο ηεο δνκήο ηνπ ζπζηήκαηνο ηνπ δηαρεηξηζηή ζα επηρεηξεκαηνινγήζνπκε πάλσ ζε απηήλ ηελ άπνςε. Ο πίλαθαο δηαζέηεη ηέζζεξα (4) πεδία: uid: Ο αξηζκφο ηνπ ρξήζηε (μέλν θιεηδί). latitude: Σν γεσγξαθηθφ πιάηνο ελφο ζεκείνπ. longitude: Σν γεσγξαθηθφ κήθνο ελφο ζεκείνπ. datetime: Η ρξνληθή ζηηγκή ηεο θαηαγξαθήο. UserAvgStep Ο πίλαθαο απηφο πεξηιακβάλεη ην κέζν κήθνο ηνπ βήκαηνο γηα θάζε ρξήζηε. Με ηνλ φξν κέζν βήκα ελλννχκε ηελ κέζε απφζηαζε κεηαμχ δχν δηαδνρηθψλ ζεκείσλ ζηα νπνία βξέζεθε ν ρξήζηεο θαηά ηελ δηάξθεηα ηεο θαηαγξαθήο κηαο ηξνρηάο ηνπ. Η πιεξνθνξία απηή καο είλαη απνιχησο απαξαίηεηε γηα ηελ νξζή παξαθνινχζεζε ηνπ ρξήζηε ζηηο δηάθνξεο δηαδξνκέο ηνπ. Όπσο θαη παξαπάλσ, ζα επηρεηξεκαηνινγήζνπκε πάλσ ζε απηήλ ηελ άπνςε ζην θνκκάηη ηεο παξνπζίαζεο ηεο δνκήο ηνπ ζπζηήκαηνο ηνπ δηαρεηξηζηή. Ο πίλαθαο δηαζέηεη δχν (2) πεδία: uid: Ο αξηζκφο ηνπ ρξήζηε (μέλν θιεηδί). avgstep: Σν κέζν βήκα ηνπ ρξήζηε. Όια φζα κφιηο πεξηγξάςακε θαίλνληαη θαη γξαθηθά ζηελ εηθφλα 2. 32

Δπηπξφζζεηα γηα ηηο αλάγθεο ηνπ ζπζηήκαηφο καο δεκηνπξγήζακε ηηο αθφινπζεο stored procedures: deleteoccfromlatpos Φξνληίδεη λα δηαγξάθεη ηελ παιαηφηεξε ζέζε ηνπ ρξήζηε πνπ είλαη απνζεθεπκέλε ζηνλ πίλαθα LatestPositions ψζηε ν ζπλνιηθφο αξηζκφο ησλ ζέζεσλ γηα θάζε ρξήζηε ζε απηφλ ηνλ πίλαθα λα είλαη ην πνιχ ηξία (3) drawusertrajectory Με δεδνκέλν έλα ρξήζηε θαη κία δηαδξνκή ηνπ ε δηαδηθαζία απηή επηζηξέθεη φια ηα ζεκεία ηεο δηαδξνκήο ηνπ πξνθεηκέλνπ λα ηελ ζρεδηάζνπκε ζην ράξηε fetchallusers Δπηζηξέθεη ηα πξνζσπηθά ζηνηρεία φισλ ησλ ρξεζηψλ fetchuser Δπηζηξέθεη ηα πξνζσπηθά ζηνηρεία ελφο ζπγθεθξηκέλνπ ρξήζηε δεδνκέλνπ ηνπ αξηζκνχ ηνπ fetchuserbyname Οκνίσο επηζηξέθεη ηα πξνζσπηθά ζηνηρεία ελφο ζπγθεθξηκέλνπ ρξήζηε δεδνκέλνπ ηνπ νλφκαηφο ηνπ fetchusernumberofroutes Δπηζηξέθεη ηνλ αξηζκφ ησλ θαηαγεγξακκέλσλ δηαδξνκψλ γηα έλαλ ζπγθεθξηκέλν ρξήζηε getdirectionsforusertrajectory Δπηζηξέθεη ηελ αθεηεξία θαη ηνλ πξννξηζκφ γηα κηα δεδνκέλε δηαδξνκή ελφο ζπγθεθξηκέλνπ ρξήζηε. Σα δχν (2) απηά γεσγξαθηθά ζεκεία ρξεζηκνπνηνχληαη ζηελ ζπλέρεηα σο είζνδνο γηα ηελ ππεξεζία GetDirections 33

ησλ ραξηψλ ηεο Microsoft πξνθεηκέλνπ λα καο δψζεη ηηο ζπληνκφηεξεο ρξνληθά θαη ρσξηθά δηαδξνκέο getuseroccsinlatpos Δπηζηξέθεη ηνλ αξηζκφ ησλ εκθαλίζεσλ ησλ ζέζεσλ ελφο ρξήζηε ζηνλ πίλαθα LatestPositions givedistance Υξεζηκνπνηεί ηελ ζπλάξηεζε STDistance ηνπ SQL Server 2008 πξνθεηκέλνπ λα καο επηζηξέςεη ηελ απφζηαζε κεηαμχ δχν (2) γεσγξαθηθψλ ζεκείσλ insertintoavguserstep Δηζάγεη/Αλαλεψλεη ην κέζν βήκα θάζε ρξήζηε insertuserlatestpositiontime Μία λέα εγγξαθή ηεο ζέζεο ηνπ ρξήζηε εηζάγεηαη ζηνλ πίλαθα LatestPositions showlastposition Δπηζηξέθεηαη ε ηειεπηαία ζέζε πνπ ππήξμε ν ρξήζηεο (γεσγξαθηθφ κήθνο θαη γεσγξαθηθφ πιάηνο) userstatus Δπηζηξέθεηαη ε ηειαπηαία ρξνληθή ζηηγκή πνπ ππήξμε ελεξγφο ν ρξήζηεο θαη θαηά ζπλέπεηα βιέπνπκε αλ ε θαηάζηαζή ηνπ είλαη Active ή Inactive 34

Δηθόλα 2. Ζ Βάζε Γεδνκέλσλ ηνπ ζπζηήκαηνο 5.2.2 Ζ Δθαξκνγή ηνπ Γηαρεηξηζηή Γηα ηελ εθαξκνγή ηνπ δηαρεηξηζηή θαηαζθεπάζακε δχν (2) δηαθνξεηηθά πξνγξάκκαηα. Σν ControlArchangel ην νπνίν βαζίδεηαη ζηνπο γλσζηνχο Bing Maps ηεο Microsoft θαη εθηειεί ηελ αζχγρξνλε επηθνηλσλία κε ηνλ server γηα ηα γεσγξαθηθά δεδνκέλα κε ηελ ρξήζε ηεο ηερλνινγίαο AJAX, θαζψο θαη ην ControlArchangelSL ην νπνίν βαζίδεηαη ζε έλα πνιχ λέν CTP ηεο Microsoft ην νπνίν εθηειείηαη ζε πεξηβάιινλ Silverlight κε φια ηα πιενλεθηήκαηα πνπ απηφ ζπλεπάγεηαη. Θα παξνπζηάζνπκε ηα δχν 35

(2) απηά πξνγξάκκαηα παξαθάησ κε ζθνπφ καο ν αλαγλψζηεο ηνπ θεηκέλνπ λα ιάβεη κηα ζαθή εηθφλα γηα ηηο δηάθνξεο ιεηηνπξγίεο ησλ εθαξκνγψλ. 5.2.2.1 ControlArchangel Μέζσ απηήο ηεο εθαξκνγήο ν δηαρεηξηζηήο ηνπ ζπζηήκαηνο κπνξεί λα γλσξίδεη φια φζα ζρεηίδνληαη κε ηηο ελέξγεηεο ησλ ρξεζηψλ ζε εμσηεξηθνχο ρψξνπο. Μηα πξψηε εηθφλα ηεο εθαξκνγήο θαίλεηαη παξαθάησ: Δηθόλα 3. Γεληθή εηθόλα ηεο εθαξκνγήο Βιέπνπκε φηη απνηειείηαη απφ ηξία (3) ηκήκαηα. ην αξηζηεξφ ηκήκα αλαθέξνληαη ε πιεξνθνξίεο πνπ αθνξνχλ ηνλ εθάζηνηε επηιεγκέλν ρξήζηε ελψ εθεί δίλεηαη αξρηθά θαη ε δπλαηφηεηα ηεο επηινγήο ηνπ ρξήζηε πξνο παξαθνινχζεζε. Σν κεζαίν ηκήκα θηινμελεί ηνλ ράξηε πνπ νπηηθνπνηεί ηηο δηαζέζηκεο πιεξνθνξίεο θαη ηελ φιε δηαδηθαζία ηεο παξαθνινχζεζεο, ελψ ηέινο ζην δεμηφ ηκήκα παξνπζηάδνληαη πιεξνθνξίεο πνπ έρνπλ λα θάλνπλ κε ηηο δηαδξνκέο ηνπ ρξήζηε θαη ην κέζν βήκα ηνπ. Οη πιεξνθνξίεο πνπ θαίλνληαη ζην αξηζηεξφ ηκήκα ηεο εθαξκνγήο θαη 36

πεξηιακβάλνπλ δεδνκέλα γηα ηνλ εθάζηνηε ρξήζηε αθνξνχλ: ηα πξνζσπηθά ηνπ ζηνηρεία (φλνκα, επψλπκν, αλαγλσξηζηηθφ) ηελ θαηάζηαζή ηνπ ( Active / Inactive ) ηελ αλαθνξά ηεο ηειεπηαίαο θνξάο πνπ βξέζεθε ζε θαηάζηαζε Active ηνλ αξηζκφ ησλ θαηαγεγξακκέλσλ δηαδξνκψλ ηνπ Τπάξρνπλ αθφκε νη δπλαηφηεηεο ηεο πξνβνιήο ηεο ηειεπηαίαο ζέζεο ηνπ ρξήζηε ζηνλ ράξηε θαη ηεο πξνβνιήο ησλ δηαδξνκψλ ηνπ είηε κέζσ ησλ ζεκείσλ πνπ ηηο δεκηνπξγνχλ (εηθνλίδην ) είηε σο γξακκή (εηθνλίδην ). Δπηπιένλ κέζσ ηεο ππεξεζίαο GetDirections ηεο Microsoft κπνξνχκε λα πιεξνθνξεζνχκε γηα θάζε δηαδξνκή ηνπ ρξήζηε πνην είλαη ην ζπληνκφηεξν ζε απφζηαζε κνλνπάηη αιιά θαη πνην εθείλν πνπ απαηηεί ηνλ ιηγφηεξν ρξφλν. Όια ηα παξαπάλσ θαίλνληαη θαη ζηελ εηθφλα 4. Δηθόλα 4. Σν αξηζηεξό ηκήκα ηεο εθαξκνγήο Αθνινχζσο ζα παξνπζηάζνπκε ηελ εηθφλα πνπ ιακβάλεη ν δηαρεηξηζηήο φηαλ επηιέμεη λα πξνβάιεη κία δηαδξνκή ελφο ρξήζηε θαη κε ηνπο δχν (2) ηξφπνπο (ζεκεία θαη γξακκή) θαη επηπξφζζεηα επηιέμεη λα δεη θαη ην ζπληνκφηεξν κνλνπάηη γηα απηήλ ηελ δηαδξνκή. Η εηθφλα 5 καο δείρλεη ην απνηέιεζκα. 37

Δηθόλα 5. Πξνβνιή δηαδξνκήο ρξήζηε & ζπληνκόηεξνπ κνλνπαηηνύ Η πξάζηλε γξακκή είλαη ην ζπληνκφηεξν κνλνπάηη θαη ε θφθθηλε ε θαηαγεγξακκέλε δηαδξνκή ηνπ ρξήζηε. Σα ζεκεία πνπ απνηεινχλ ηελ δηαδξνκή ηνπ ρξήζηε είλαη αξηζκεκέλα θαη γηα ην θαζέλα κπνξνχκε λα δνχκε ην γεσγξαθηθφ κήθνο θαη ην γεσγξαθηθφ πιάηνο ηνπ. Σν δεμηφ ηκήκα ηεο εθαξκνγήο ζε απηήλ ηελ πεξίπησζε θαίλεηαη ζηελ εηθφλα 6. 38 Δηθόλα 6. Σν δεμηό ηκήκα ηεο εθαξκνγήο Βιέπνπκε ινηπφλ φηη ζην δεμηφ ηκήκα ππάξρνπλ αλαιπηηθέο πιεξνθνξίεο γηα ηελ

επηιεγκέλε δηαδξνκή, ην ζπλνιηθφ κήθνο ηεο, νη γεσγξαθηθέο ζπληεηαγκέλεο ησλ ζεκείσλ ηεο θαη αθφκε ε απφζηαζε κεηαμχ θάζε δεχγνπο ζεκείσλ. Μέρξη ηψξα νπζηαζηηθά παξνπζηάζακε ην ζηαηηθφ θαηά κία έλλνηα κέξνο ηεο εθαξκνγήο. Με ηνλ φξν ζηαηηθφ ελλννχκε φηη δείμακε ηηο δπλαηφηεηεο πξνβνιήο πεξηερνκέλνπ ηεο εθαξκνγήο κε εμαίξεζε ην πεξηερφκελν πνπ αθνξά ηελ παξαθνινχζεζε ηνπ ρξήζηε. Η παξαθνινχζεζε ηνπ ρξήζηε ινηπφλ θαζψο θαη ε ελεκέξσζε πνπ ιακβάλεη ν δηαρεηξηζηήο φζν απηή επηηειείηαη απνηεινχλ ηε ζπλέρεηα ηεο εξγαζίαο καο. Όηαλ ν επηιεγκέλνο ρξήζηεο είλαη ζε θαηάζηαζε Active, ζην αξηζηεξφ ηκήκα ηεο εθαξκνγήο εκθαλίδνληαη δχν επηπιένλ δπλαηφηεηεο, ε δπλαηφηεηα ηεο παξαθνινχζεζεο ηνπ ρξήζηε θαη απηή ηεο δηαθνπήο ηεο παξαθνινχζεζεο. Φπζηθά ε δηαθνπή ηεο παξαθνινχζεζεο είλαη αξρηθά αλελεξγή κέρξη λα μεθηλήζεη ε παξαθνινχζεζε ηνπ ρξήζηε. Σν αληίζεην ζπκβαίλεη φηαλ ε παξαθνινχζεζε είλαη ζε εμέιημε. Απηφ ην βιέπνπκε ζηελ επφκελε εηθφλα φπνπ θαίλεηαη ε πξνζζήθε πνπ γίλεηαη ζην αξηζηεξφ ηκήκα ηεο εθαξκνγήο. Δηθόλα 7. Παξαθνινύζεζε ρξήζηε θαη ηεξκαηηζκόο Κάησ απφ απηά ηα δχν (2) θνπκπηά ζην αξηζηεξφ ηκήκα ηεο εθαξκνγήο παξνπζηάδνληαη φιεο νη ιεπηνκέξεηεο πνπ αθνξνχλ ηηο ζπλζήθεο ζηηο νπνίεο βξίζθεηαη ν ρξήζηεο αλαθνξηθά κε ηελ παξαθνινχζεζή ηνπ. Πιεξνθνξνχκαζηε δειαδή γηα ην αλ βξίζθεηαη εληφο ή εθηφο ησλ νξίσλ κηαο δηαδξνκήο ηνπ ( OnLimits / OffLimits ), γηα ην ζε πνηα δηαδξνκή βξίζθεηαη αλ είλαη εληφο νξίσλ θαη ηέινο γηα ην αλ ν ρξήζηεο απφ ηελ θαηάζηαζε Active κεηέβε ζηελ θαηάζηαζε Inactive θαη ζπλεπψο ε παξαθνινχζεζε δελ κπνξεί λα ζπλερηζηεί. ηελ ζπλέρεηα ζα δψζνπκε έλα παξάδεηγκα γηα ηελ εηθφλα πνπ ιακβάλεη ν δηαρεηξηζηήο φηαλ μεθηλήζεη ηελ παξαθνινχζεζε ελφο ρξήζηε. Όπσο είπακε θαη ζην 3 ν θεθάιαην ε εθαξκνγή αλαζχξεη ηα έσο θαη ηξία (3) εθείλα θνληηλφηεξα ζεκεία ησλ δηαδξνκψλ ηνπ ρξήζηε ζε ζρέζε κε ηελ ηξέρνπζα ζέζε ηνπ. Φπζηθά ηα ζεκεία απηά πξέπεη λα βξίζθνληαη ζε απφζηαζε κηθξφηεξε ηνπ κέζνπ βήκαηνο ηνπ ρξήζηε. 39

Όηαλ ινηπφλ ν δηαρεηξηζηήο μεθηλήζεη ηελ παξαθνινχζεζε ζην αξηζηεξφ ηκήκα ηεο εθαξκνγήο αλαθέξνπκε ηνλ ζπλνιηθφ αξηζκφ ησλ ζεκείσλ ησλ δηαδξνκψλ ηνπ ρξήζηε πνπ βξίζθνληαη εληφο ηεο εκβέιεηαο πνπ νξίδεη ην κέζν βήκα ηνπ, ελψ γηα ηα ηξία (3) θνληηλφηεξα απφ απηά ηα ζεκεία παξνπζηάδνπκε ηελ δηαδξνκή ζηελ νπνία αλήθνπλ θαζψο θαη ηνλ αξηζκφ/ζέζε ηνπο εληφο απηήο ηεο δηαδξνκήο. Η εηθφλα 8 πνπ αθνινπζεί απνηειεί παξάδεηγκα ηεο παξαθνινχζεζεο ηνπ ρξήζηε. Δηθόλα 8. Παξαθνινύζεζε ρξήζηε πνπ βξίζθεηαη εληόο πνιιαπιώλ δηαδξνκώλ Γηα ιφγνπο επθξίλεηαο παξνπζηάδνπκε ην αξηζηεξφ θαη ην δεμί ηκήκα ηεο εθαξκνγήο ηεο παξαπάλσ εηθφλαο ζηελ εηθφλα 9. Δηθόλα 9. Σν αξηζηεξό θαη ην δεμί ηκήκα ηεο εθαξκνγήο θαηά ηελ παξαθνινύζεζε 40 Βιέπνπκε πσο ζην δεμί ηκήκα αλαθέξεηαη πιεξνθνξηαθά ην κέζν βήκα ηνπ

επηιεγκέλνπ ρξήζηε. ην αξηζηεξφ ηκήκα ηψξα γίλεηαη ζαθέο φηη ν ρξήζηεο βξίζθεηαη ζε κία ζέζε (εηθνλίδην ) πνπ αλήθεη ζε πεξηζζφηεξεο ηεο κίαο δηαδξνκέο, ζην παξάδεηγκά καο ζηελ δηαδξνκή 1 θαη ζηελ δηαδξνκή 2. Δλεκεξσλφκαζηε έηζη φηη ην ζχζηεκά καο δελ κπνξεί αθφκε λα καο πεη ζε πνηα δηαδξνκή βξίζθεηαη ν ρξήζηεο. Φπζηθά φια φζα είπακε θαίλνληαη θαη ζην κεζαίν ηκήκα ηεο εθαξκνγήο καο πνπ θηινμελεί ηνλ ράξηε. Όπσο αλαθέξακε ζην 3 ν θεθάιαην ην ζχζηεκά καο ρξεζηκνπνηεί δηάθνξεο κεζφδνπο πξνθεηκέλνπ λα θαηαιήμεη ζε πνηα δηαδξνκή βξίζθεηαη ν ρξήζηεο. Μία πεξίπησζε φπνπ ε δηαδξνκή ζηελ νπνία βξίζθεηαη είλαη μεθάζαξε έρνπκε φηαλ θαη ηα ηξία (3) θνληηλφηεξα ζεκεία αλήθνπλ ζηελ ίδηα δηαδξνκή. Έλα παξάδεηγκα ηνπ ηη ζπκβαίλεη ζε απηήλ ηελ πεξίπησζε θαίλεηαη ζηελ εηθφλα 10. Δηθόλα 10. Παξαθνινύζεζε ρξήζηε πνπ βξίζθεηαη εληόο κίαο θαη κόλν δηαδξνκήο Βιέπνπκε φηη θαη ηα ηξία (3) θνληηλφηεξα ζεκεία αλήθνπλ ζηελ ίδηα δηαδξνκή. πλεπψο είλαη βέβαην φηη ν ρξήζηεο βξίζθεηαη εληφο ησλ νξίσλ απηήο ηεο δηαδξνκήο θαη ην ζχζηεκα καο θξνληίδεη πξνθεηκέλνπ λα ην θαηαζηήζεη ζαθήο λα πξνβάιεη επηπιένλ απηήλ ηελ δηαδξνκή ζην ράξηε. Δπηπξφζζεηα φπσο θαη ζηελ εηθφλα 8 έηζη θαη εδψ γηα θάζε ζεκείν πνπ πξνβάιιεηαη ζην ράξηε ν δηαρεηξηζηήο κπνξεί λα δεη ηελ απφζηαζή ηνπ απφ ηελ ηξέρνπζα ζέζε ηνπ ρξήζηε. Σέινο παξνπζηάδνπκε ζηελ εηθφλα 11 ζπγθεθξηκέλα 41

ην αξηζηεξφ ηκήκα ηεο εθαξκνγήο πνπ θαίλεηαη ζηελ εηθφλα 8 γηα λα γίλνπλ πην μεθάζαξα ηα φζα αλαθέξνληαη. Δηθόλα 11. Σν αξηζηεξό ηκήκα ηεο εθαξκνγήο όηαλ ην ζύζηεκα εληνπίδεη ηελ δηαδξνκή ηνπ ρξήζηε Σν ηειεπηαίν θνκκάηη ηεο παξνπζίαζήο καο ζρεηηθά κε ηελ εθαξκνγή ControlArchangel αθνξά ηα κελχκαηα πνπ ε εθαξκνγή παξνπζηάδεη ζηνλ δηαρεηξηζηή φηαλ ν ρξήζηεο βξεζεί ζε θαηάζηαζε OffLimits ή φηαλ απφ ηελ θαηάζηαζε Active κεηαβεί ζηελ θαηάζηαζε Inactive. Οη εηθφλεο 12 θαη 13 καο δείρλνπλ ηα κελχκαηα πνπ αθνξνχλ ηελ θαηάζηαζε OffLimits. Δηθόλα 12. Ο ρξήζηεο "OffLimits" γηα πξώηε θνξά Δδψ ν ρξήζηεο βξίζθεηαη ζε θαηάζηαζε OffLimits γηα πξψηε θνξά θαη ην ζχζηεκα καο ελεκεξψλεη φηη ζα πεξηκέλεη αθφκε 2 δείγκαηα ηεο ηξέρνπζαο ζέζεο ηνπ πξνθεηκέλνπ απηφο λα επαλέιζεη εληφο νξίσλ. Η επφκελε εηθφλα καο δείρλεη ηα κελχκαηα πξνο ηνλ δηαρεηξηζηή κεηά ην επφκελν δείγκα θαη κεηά ηα επφκελα δχν δείγκαηα φπνπ πιένλ αλαθέξνπκε νξηζηηθά φηη ν ρξήζηεο βξίζθεηαη ζε θαηάζηαζε 42

OffLimits πξνθεηκέλνπ ν δηαρεηξηζηήο λα ιάβεη ηα αλάινγα κέηξα. Δηθόλα 13. Ο ρξήζηεο "OffLimits" γηα δεύηεξε θαη ηξίηε θνξά Η εηθφλα 14 πνπ αθνινπζεί παξνπζηάδεη ην κήλπκα πξνο ηνλ δηαρεηξηζηή φηαλ ν ρξήζηεο κεηαβεί θαηά ηελ παξαθνινχζεζε απφ ηελ θαηάζηαζε Active ζε Inactive. Δηθόλα 14. Ο ρξήζηεο κεηέβε ζε θαηάζηαζε Inactive Σέινο ζηελ εηθφλα 15 δείρλνπκε ην κήλπκα πνπ εκθαλίδεηαη φηαλ ν ίδηνο ν δηαρεηξηζηήο δηαθφςεη ηελ παξαθνινχζεζε. Δηθόλα 15. Ο δηαρεηξηζηήο δηέθνςε ηελ παξαθνινύζεζε 43

5.2.2.2 ControlArchangelSL Η εθαξκνγή απηή βαζίδεηαη ζηνπο ράξηεο ηεο Microsoft αιιά ππφ ην πξίζκα ηεο ηερλνινγίαο Silverlight γηα ηελ επηθνηλσλία κε ηνλ server θαη ηελ παξνπζίαζε ησλ δεδνκέλσλ θαη φρη ζηελ ηερλνινγία AJAX. Πξνθεηκέλνπ λα απνθχγνπκε λα επαλαιάβνπκε ηα φζα παξνπζηάζακε γηα ηελ εθαξκνγή ControlArchangel ζα δείμνπκε εδψ κφλν κία γεληθή εηθφλα απηήο ηεο εθαξκνγήο θαη ζα αλαθέξνπκε ζηελ ζπλέρεηα ηνπο ιφγνπο πνπ καο νδήγεζαλ ζε απηήλ ηελ δηαθνξεηηθή πινπνίεζε. Η εθαξκνγή ControlArchangelSL θαίλεηαη ζηελ εηθφλα 16 πνπ αθνινπζεί. Δηθόλα 16. Γεληθή εηθόλα ηεο εθαξκνγήο Η εθαξκνγή καο βαζίζηεθε ζε έλα πνιχ πξφζθαην Community Technology Preview (CTP) ηεο Microsoft ην Virtual Earth Silverlight. Η ηερλνινγία Silverlight πξνζθέξεη πνιχ κεγαιχηεξεο δπλαηφηεηεο ζηνλ φγθν ησλ αζχγρξνλα κεηαθεξφκελσλ δεδνκέλσλ ζε ζρέζε κε ηελ ηερλνινγία AJAX ελψ βειηηψλεη ζε κεγάιν βαζκφ θαη ην ηειηθφ αηζζεηηθφ απνηέιεζκα πνπ ιακβάλεη ν ρξήζηεο. Γηα ην ηειεπηαίν κεγάιν ξφιν παίδεη ην γεγνλφο φηη ην Silverlight βαζίδεηαη ζηελ ηερλνινγία WPF (Windows Presentation Foundation) 44

ηεο Microsoft ε νπνία νπζηαζηηθά έρεη λα θάλεη κε ηελ πην πξφζθαηε πξφηαζε ηεο εηαηξίαο ζρεηηθά κε ηελ εκθάληζε πεξηερνκέλνπ. Η ηερλνινγία Silverlight παξφια απηά γηα ηελ πεξίπησζή καο είρε έλαλ πεξηνξηζκφ θαη απηφο ήηαλ φηη δελ επηηξέπεη ηελ απεπζείαο επηθνηλσλία ηεο εθαξκνγήο καο κε ηελ βάζε δεδνκέλσλ. Κχξηνο παξάγνληαο γηα απηήλ ηελ επηινγή, θαηά ηελ γλψκε καο, είλαη ιφγνη αζθαιείαο πνπ αθνξνχλ γλσζηά πξνβιήκαηα web based εθαξκνγψλ φπσο γηα παξάδεηγκα ην SQL injection φπνπ θαθφβνπινη ρξήζηεο εθηεινχλ εληνιέο SQL κε βάζε ηηο επηζπκίεο ηνπο εθκεηαιιεπφκελνη θελά ηεο εθαξκνγήο. πλεπψο γηα λα κπνξνχκε λα πινπνηήζνπκε ηηο δηάθνξεο ιεηηνπξγίεο ηεο εθαξκνγήο καο δεκηνπξγήζακε κία εμεηδηθεπκέλε ππεξεζία δηαδηθηχνπ (web service) ε νπνία αλαιακβάλεη ηελ επηθνηλσλία κε ηελ βάζε δεδνκέλσλ, κε ηελ εθαξκνγήο καο λα επηθνηλσλεί κε απηήλ ηελ ππεξεζία δηαδηθηχνπ. Η ηερλνινγία Virtual Earth Silverlight απέρεη αθφκε απφ ην λα ραξαθηεξηζηεί νινθιεξσκέλε θαζψο βξίζθεηαη αθφκε ππφ αλάπηπμε. ίγνπξα φκσο αμίδεη ε ελαζρφιεζή καο καδί ηεο δηφηη ζην άκεζν κέιινλ ζα απνηειεί ηελ θαιχηεξε δπλαηή επηινγή θαη κε βάζε ηηο δπλαηφηεηέο ηεο θαη κε βάζε ην ηειηθφ αηζζεηηθφ απνηέιεζκα. 5.2.3 Ζ Δθαξκνγή ηνπ Υξήζηε Αλαθνξηθά κε ηελ εθαξκνγή πνπ ζα εθηειείηαη ζηελ θηλεηή windows mobile ζπζθεπή θαηαζθεπάζακε ην πξφγξακκα SmartDeviceArchangel. ηελ ζπλέρεηα ζα πεξηγξάςνπκε αλαιπηηθά ηελ ιεηηνπξγία ηνπ πξνγξάκκαηνο απηνχ. Η εθαξκνγή ρξεζηκνπνηεί ηελ GPS ηερλνινγία πνπ έρεη ε θηλεηή ζπζθεπή πξνθεηκέλνπ λα παξέμεη ην γεσγξαθηθφ πιάηνο θαη ην γεσγξαθηθφ κήθνο ηεο ηξέρνπζαο ζέζεο ηνπ ρξήζηε. Κάζε 30 δεπηεξφιεπηα ινηπφλ ιακβάλνπκε ηηο γεσγξαθηθέο ζπληεηαγκέλεο ηεο ηξέρνπζαο ζέζεο θαη ηηο απνζεθεχνπκε πξνζσξηλά. Αθνινχζσο ειέγρνπκε γηα ηελ χπαξμε νπνηαζδήπνηε ζχλδεζεο ζην δηαδίθηπν ηεο θηλεηήο ζπζθεπήο. Σέηνηεο ζπλδέζεηο κπνξεί λα είλαη γηα παξάδεηγκα νη GPRS, 3G, Wi-Fi θ.α. Αμηνπνηνχκε έηζη ηελ φπνηα ππάξρνπζα ζχλδεζε κε ην δηαδίθηπν θαη απνζηέιινπκε ζηνλ server ηεο εθαξκνγήο καο θάζε 30 δεπηεξφιεπηα ηξία (3) ζηνηρεία. Σν αλαγλσξηζηηθφ ηνπ ρξήζηε, ην γεσγξαθηθφ κήθνο θαη ην γεσγξαθηθφ πιάηνο. 45

Απηά θαίλνληαη θαη ζηελ εηθφλα πνπ αθνινπζεί, ε νπνία είλαη έλα screenshot ηεο εθαξκνγήο ηεο θηλεηήο ζπζθεπήο. Όπσο γίλεηαη αληηιεπηφ έρνπκε λα θάλνπκε κε έλα πνιχ απιφ γξαθηθφ πεξηβάιινλ ην νπνίν είλαη αξκφδνλ αλ αλαινγηζηνχκε ηηο απαηηήζεηο κεησκέλεο θαηαλάισζεο θαη εμνηθνλφκεζεο ελέξγεηαο ησλ θηλεηψλ ζπζθεπψλ. Θα κπνξνχζακε πηζαλψο λα κελ έρνπκε θαζφινπ γξαθηθφ πεξηβάιινλ γηα ηελ εθαξκνγή καο γηα αθφκε κηθξφηεξε θαηαλάισζε αιιά απνθχγακε απηήλ ηελ επηινγή γηα δχν (2) ιφγνπο. Αθελφο δηφηη ε αχμεζε ζηελ θαηαλάισζε ηεο ελέξγεηαο είλαη πνιχ πεξηνξηζκέλε αλ ιάβνπκε ππφςε ηηο ελζσκαησκέλεο ζηηο θηλεηέο ζπζθεπέο ηερλνινγίεο αδξαλνπνίεζεο ηεο νζφλεο ηνπο κεηά απφ έλα κηθξφ δηάζηεκα φπνπ δελ ρξεζηκνπνηνχληαη θαη αθεηέξνπ γηαηί ε χπαξμε ηνπ γξαθηθνχ πεξηβάιινληνο δίλεη ζηνλ ρξήζηε ηελ βεβαηφηεηα φηη ην ζχζηεκα ιεηηνπξγεί θαη ηνπ απμάλεη ην αίζζεκα αζθάιεηαο. Να ζεκεηψζνπκε ηέινο φηη γηα ιφγνπο νξζήο ιεηηνπξγίαο ηεο εθαξκνγήο έρνπκε θξνληίζεη ψζηε ζε πεξίπησζε πνπ ππάξμεη απνηπρία ζηελ απνζηνιή ησλ δεδνκέλσλ ζηνλ server λα πξνζπαζνχκε εθ λένπ λα ηα απνζηείινπκε κεηά απφ έλα κηθξφ δηάζηεκα αλακνλήο. ηελ πεξίπησζε θαηά ηελ νπνία ε απνηπρία ζπλερίδεηαη ή δελ ππάξρεη θαλ ζχλδεζε ηεο θηλεηήο ζπζθεπήο κε ην δηαδίθηπν θξνληίδνπκε λα απνζεθεχνπκε ηνπιάρηζηνλ ηα δεδνκέλα ηνπηθά ψζηε λα κπνξνχλ λα ρξεζηκνπνηεζνχλ ζε θάπνηα κειινληηθή ζηηγκή. Δηθόλα 17. Ζ εθαξκνγή ηεο θηλεηήο ζπζθεπήο 46

ΚΔΦΑΛΑΗΟ 6 ν Μειινληηθέο επεθηάζεηο 47

48

ην παξφλ θεθάιαην ζα αζρνιεζνχκε κε ηελ κειινληηθή δνπιεηά πνπ κπνξεί λα γίλεη ζηα πιαίζηα ηνπ project «Αξράγγεινο» ζρεηηθά κε ηηο δξαζηεξηφηεηεο αηφκσλ ζε εμσηεξηθνχο ρψξνπο. Έλα ζηνηρείν πνπ κπνξνχκε λα ρξεζηκνπνηήζνπκε είλαη ε εηζαγσγή ηνπ ζηνηρείνπ ηνπ χρόνου ζηελ παξαθνινχζεζε ηνπ ρξήζηε. ηελ εξγαζία καο ζεσξνχκε φηη ν ρξήζηεο πξέπεη λα είλαη εληφο ησλ πιαηζίσλ κηαο γλσζηήο θαη πξνθαζνξηζκέλεο δηθήο ηνπ δηαδξνκήο. Αλ ζπκβαίλεη θάηη ηέηνην ην ζχζηεκα απιά ελεκεξψλεη ηνλ δηαρεηξηζηή γηα ηελ δηαδξνκή εληφο ηεο νπνίαο βξίζθεηαη ν ρξήζηεο. Δηζάγνληαο ηελ παξάκεηξν ηνπ ρξφλνπ ζα κπνξνχζακε λα ζεσξνχκε φηη ν ρξήζηεο είλαη ζε επηηξεπηή θαηάζηαζε φρη κφλν αλ βξίζθεηαη εληφο κηαο δηαδξνκήο ηνπ αιιά επηπιένλ αλ βξίζθεηαη εληφο κηαο δηαδξνκήο ηνπ εληφο ελφο θαζνξηζκέλνπ ρξνληθνχ πιαηζίνπ. Δπηπιένλ ε εηζαγσγή ηνπ ρξφλνπ ζα κπνξνχζε λα καο δίλεη θαη κία έλδεημε γηα ηελ θαηεχζπλζε πνπ έρεη ν ρξήζηεο, δειαδή αλ πεγαίλεη απφ ηελ αθεηεξία Α ζηνλ πξννξηζκφ Β ή αληίζεηα απφ ην ζεκείν Β ζην ζεκείν Α ηεο φπνηαο δηαδξνκήο. ίγνπξα ζε πξψην επίπεδν ε εηζαγσγή ηνπ ρξφλνπ κπνξεί λα θαληάδεη φηη θάλεη πεξηζζφηεξν πνιχπινθν ην ζχζηεκα παξαθνινχζεζεο ηνπ ρξήζηε. Απηφ είλαη αιεζέο ζε έλα βαζκφ παξφια απηά γηα κεξηθνχο ρξήζηεο ηνπ ζπζηήκαηνο ν παξάγνληαο ρξφλνο κπνξεί λα είλαη ηδηαηηέξσο ζεκαληηθφο. Μία αθφκε επέθηαζε ζα κπνξνχζε λα γίλεη ρξεζηκνπνηψληαο ηα accelerometers πνπ ζηαδηαθά απνθηνχλ νη θηλεηέο ζπζθεπέο. Ο δηαρεηξηζηήο γλσξίδνληαο απηέο ηηο ζρεηηθέο ηηκέο ζα κπνξνχζε λα γλσξίδεη ζηνηρεία ηεο ηαρχηεηαο ηνπ ρξήζηε θαη θαη επέθηαζε ηεο θαηάζηαζεο ζηελ νπνία βξίζθεηαη. Σν αλ γηα παξάδεηγκα έλα ειηθησκέλν άηνκν ηξέρεη ή θηλείηαη πνιχ αξγά ζα κπνξνχζε λα απνηειέζεη ζεκαληηθή πιεξνθνξία γηα έλα άηνκν κε επηβαξπκέλν ηαηξηθφ ηζηνξηθφ. Σέινο κία αθφκε πξφηαζε γηα κειινληηθή εξγαζία/επέθηαζε είλαη ε πιήξεο εθκεηάιιεπζε ηνπ ζπζηήκαηνο πνπ δεκηνπξγήζακε κε ην Silverlight, φηαλ ε Microsoft δεκηνπξγήζεη ηελ ηειηθή έθδνζε ηνπ πξντφληνο. Αλαθεξζήθακε ήδε ζηα πιενλεθηήκαηα πνπ απηή ε πξνζέγγηζε εηζάγεη αλαθνξηθά κε ηελ αζθάιεηα ηνπ φινπ ζπζηήκαηνο. Σα πιενλεθηήκαηα φκσο δελ ζηακαηνχλ εδψ. Οη δπλαηφηεηεο πξνβνιήο πεξηερνκέλνπ ζηνπο ράξηεο κε Silverlight είλαη πνιχ κεγαιχηεξε απφ ηελ πξνβνιή απιψλ ζεκείσλ θαη άιισλ γεσκεηξηθψλ ζρεκάησλ. Μπνξνχκε λα πξνβάινπκε εηθφλεο θαη video θαη κάιηζηα πξαθηηθά ρσξίο πεξηνξηζκφ 49

ζηνλ φγθν ησλ δεδνκέλσλ. Ο φγθνο ησλ δεδνκέλσλ πνπ κπνξνχλ λα πξνβιεζνχλ ζηνλ ράξηε κε Silverlight είλαη πνιιέο θνξέο πνιιαπιάζηνο απηνχ ηεο παξαδνζηαθήο πξνζέγγηζεο κε ηελ ρξήζε ηεο ηερλνινγίαο AJAX. Θα κπνξνχζε γηα παξάδεηγκα ε θηλεηή ζπζθεπή πέξαλ ησλ γεσγξαθηθψλ δεδνκέλσλ λα απνζηέιιεη θαη θάπνην πνιπκεζηθφ (multimedia) πεξηερφκελν ζηνλ server ηεο εθαξκνγήο καο θαη ην πεξηερφκελν απηφ λα πξνβάιιεηαη ζηνλ ράξηε ζηελ γεσγξαθηθή ζέζε απφ ηελ νπνία εζηάιε. Γηα παξάδεηγκα κηα θσηνγξαθία ηεο ζέζεο ηνπ ρξήζηε ζα κπνξνχζε λα θαλεί ρξήζηκε ζηνλ δηαρεηξηζηή γηα λα έρεη κηα εηθφλα ηνπ πεξηβάιινληνο ζην νπνίν βξίζθεηαη ν ρξήζηεο ζε πεξίπησζε θαηά ηελ νπνία είλαη εθηφο θάπνηαο δηθήο ηνπ δηαδξνκήο. Αθφκε θαη εληφο ησλ γλσζηψλ ηνπ δηαδξνκψλ λα βξίζθεηαη ν ρξήζηεο κηα θσηνγξαθία ζα κπνξνχζε λα απνηειέζεη πεγή αλαγλψξηζεο θάπνηνπ πηζαλνχ θηλδχλνπ. Κιείλνληαο είλαη αζθαιέο λα πνχκε πσο νη δπλαηφηεηεο επέθηαζεο ηεο παξνχζαο εθαξκνγήο είλαη πνιιέο θαη δηαθνξεηηθέο. Δίλαη βέβαην πσο κε ηελ ζπλερηδφκελε πξφνδν ηεο ηερλνινγίαο θαη θαζψο απηή γίλεηαη νινέλα θαη πην πξνζηηή ζην επξχ θνηλφ ηα φζα πεξηγξάςακε πην πάλσ ζα κπνξέζνπλ ζηαδηαθά λα ελζσκαησζνχλ ζηελ εθαξκνγή καο. 50

ΒΗΒΛΗΟΓΡΑΦΗΑ [1] E. D. Kaplan and C. J. Hegarty (2006). Understanding GPS Principles and Applications. Artech House Telecommunications Library [2] Bernhard Hofmann-Wellenhof, Herbert Lichtenegger and James Collins (1992). Global Positioning System (GPS). Theory and practice. Springer [3] N. Bulusu, J. Heidemann and D. Estrin (2000). GPS-less low-cost outdoor localization for very small devices. Personal Communications, IEEE [4] G. F. Bonham-Carter (1996). Geographical information systems for geoscientists. Modeling with GIS. Elsevier Science, Pergamon [5] A. Stewart Fotheringham, Peter Rogerson. Spatial analysis and GIS. Technical Issues in Geographic Information Systems. [6] Maged N. Kamel Boulos (2005). Web GIS in practice III: creating a simple interactive map of England's Strategic Health Authorities using Google Maps API, Google Earth KML, and MSN Virtual Earth Map Control. International Journal of Health Geographics [7] Michael Worboys and Matt Duckham. GIS: A Computing Perspective. CRC Press [8] Chor Pang Lo and Albert K.W. Yeung. Concepts and Techniques of Geographic Information Systems (2nd Edition). Ph Series in Geographic Information Science [9] David Arctur and Michael Zeiler. Designing Geodatabases: Case Studies in GIS Data Modeling. ESRI Press [10] Bing Maps Control SDK 6.2. Microsoft Developer Network (MSDN). http://msdn.microsoft.com/en-us/library/bb429619.aspx [11] Bing Maps Control Articles. Microsoft Developer Network (MSDN). http://msdn.microsoft.com/en-us/library/cc879134.aspx [12] Virtual Earth Silverlight Map Control. Microsoft Connect. https://sharepoint.connect.microsoft.com/silverlightmapcontrolctp/isdk/defaul t.htm?wa=wsignin1.0 [13] Chris Pendleton (May 29, 2009). The knowledge Chamber - Virtual Earth Silverlight Map Control. Channel 9, MSDN [14] Virtual Earth Silverlight Map Control. ViaWindowsLive.com Virtual Earth Articles. http://www.viawindowslive.com/articles/virtualearth/virtualearthsilverlight MapControl.aspx/ [15] Printing in Virtual Earth. ViaWindowsLive.com Virtual Earth Articles. http://www.viawindowslive.com/articles/virtualearth/printinginvirtualearth.a spx [16] Creating Routes in SQL Server 2008 using Virtual Earth. ViaWindowsLive.com Virtual Earth Articles. 51

52 http://www.viawindowslive.com/articles/virtualearth/creatingroutesinsqls erver2008usingve.aspx [17] John O'Brien. Virtual Earth and SQL 2008 Spatial. ViaWindowsLive.com Virtual Earth Articles. http://www.viawindowslive.com/articles/virtualearth/sql2008spatialafirstim pression.aspx