Πειραιάς S 2 Ε Lab Ιούνιος 2012. Εισηγητής: Δ. Ν. Καλλέργης, MSc. Εργ. Συνεργάτης



Σχετικά έγγραφα
Π Τ Υ Χ Ι Α Κ Η Ε Ρ Γ Α Σ Ι Α

Π Τ Υ Χ Ι Α Κ Η Ε Ρ Γ Α Σ Ι Α

Π Τ Υ Χ Ι Α Κ Η Ε Ρ Γ Α Σ Ι Α

Θέμα: «Διαδικτιακές Εφαρμογές Μελέτης Ευχρηστίας»

Π Τ Υ Χ Ι Α Κ Η Ε Ρ Γ Α Σ Ι Α

Ημερομηνία Παράδοσης: 4/4/2013

Λιόλιου Γεωργία. ιατµηµατικό Πρόγραµµα Μεταπτυχιακών Σπουδών στα Πληροφοριακά Συστήµατα

Speed-0 WMP: Web and Mobile Platform Software Requirements Specification

Παρουσίαση Θερινού Σχολείου. Αριστεία ΕΛ/ΛΑΚ ΤΕΙ Αθήνας

Νεογεωγραφία και Χαρτογραφική Διαδικτυακή Απεικόνιση. Η χρήση Ελεύθερων Γεωγραφικών Δεδομένων και Λογισμικού Ανοιχτού Κώδικα σε Φορητές Συσκευές.

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΙΑ ΙΚΑΣΙΑ ΜΕΤΑΒΑΣΗΣ ΣΤΟ CLOUD COMPUTING ΜΑΘΗΣΙΑΚΟΙ ΣΤΟΧΟΙ

Στοιχεία παρουσίασης. Εισαγωγή Θεωρητικό υπόβαθρο Υλοποίηση λογισμικού μέρους συστήματος Συμπεράσματα Μελλοντικές Επεκτάσεις

Διαχείριση Ειδοποιήσεων με Κινητές Συσκευές

web mobile multimedia ανάπτυξη εφαρμογών

ΣΥΓΚΡΙΤΙΚΗ ΜΕΛΕΤΗ ΤΕΧΝΟΛΟΓΙΩΝ ΔΙΑΔΙΚΤΥΑΚΩΝ ΥΠΗΡΕΣΙΩΝ ΚΑΙ ΑΞΙΟΛΟΓΗΣΗ ΤΗΣ ΤΕΧΝΟΛΟΓΙΑΣ REST ΠΛΑΣΤΑΡΑΣ ΕΥΡΙΠΙΔΗΣ

Κεφάλαιο 13: : Εφαρμογές νέφους. Καραμαούνας Π. 1

Συστήματα πανταχού παρόντος υπολογιστή σε περιβάλλοντα υβριδικών βιβλιοθηκών

Απαντήστε στις παρακάτω ερωτήσεις πολλαπλής επιλογής (μόνο μία ερώτηση είναι σωστή):

Περιεχόμενα. Πρόλογος... xiii

Δομή παρουσίασης. Σχεδιασμός και υλοποίηση συστήματος παρακολούθησης και ελέγχου πωλητών και δημιουργία εφαρμογής σε έξυπνο κινητό

Ανάπτυξη ηλεκτρονικών μαθημάτων στην πλατφόρμα Open eclass. Γνωριμία με την Open eclass

ΤΜΗΜΑ ΜΗΧ/ΚΩΝ ΗΛ/ΚΩΝ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ

Εικόνα 1. Δείκτης Προόδου

ΠΡΟΣΚΛΗΣΗ ΕΚΔΗΛΩΣΗΣ ΕΝΔΙΑΦΕΡΟΝΤΟΣ για τα Σεµινάρια του Εργαστηρίου Προηγµένων Εκπαιδευτικών Τεχνολογιών και Εφαρµογών Κινητών Συσκευών

Εξ Αποστάσεως Εκπαίδευση στο Ανοικτό Πανεπιστήμιο Κύπρου Η Πλατφόρμα Τηλεκπαίδευσης eclass

Γαβαλάς Δαμιανός

Υπηρεσία φωνητικής υποστήριξης των ιστοτόπων της ΕΡΤ Α.Ε.

Η ανάγκη βελτίωσης του συγκοινωνιακού έργου των αστικών και υπεραστικών συγκοινωνιών με την ταυτόχρονη αναβάθμιση των προσφερόμενων υπηρεσιών προς

, α/α: 1. Εξόδου» Παιδείας

Αναβάθμιση και εμπλουτισμός ΙδρυματικούΑποθετηρίουΕΜΠ

Σχεδίαση συστήματος ανάγνωσης πολλαπλών αισθητήρων FBG, με χρήση οπτικών ινών νόθευσης ιόντων Ερβίου. Ν. Σταθόπουλος Σ. Σαββαίδης

Tales & Trails. apps4thessaloniki 2016

Μηχανική Λογισμικού για Διαδικτυακές & Φορητές Εφαρμογές

Ιδρυματικό Αποθετήριο ΕΜΠ

Συνοπτικός Οδηγός Χρήσης του Moodle για τον Καθηγητή

ΟΙΚΟΝΟΜΙΚΗ ΠΡΟΣΦΟΡΑ ΣΧΕ ΙΑΣΗΣ ΚΑΙ ΚΑΤΑΣΚΕΥΗΣ web εφαρµογής - ηλεκτρονικού κατατήµατος για έξυπνα κινητά

Atlantis CRM on android

ΑΞΙΟΠΟΙΗΣΗ ΑΝΟΙΧΤΩΝ ΔΕΔΟΜΕΝΩΝ ΣΤΗΝ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΓΙΑ ΕΥΦΥΕΙΣ ΔΗΜΟΥΣ

TEC610 Δυναμικές Εφαρμογές Διαδικτύου (ΣΤ εξάμηνο)

ιπλωµατική εργασία: Νικόλαος Ματάνας Επιβλέπων Καθηγήτρια: Μπούσιου έσποινα

ΚΕΦΑΛΑΙΟ 10. Υπηρεσίες και εφαρμογές Διαδικτύου. ΚΕΦΑΛΑΙΟ 10 Υπηρεσίες και εφαρμογές Διαδικτύου. Α Γενικού Λυκείου

Field Service Management ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΜΗΧΑΝΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ. Πτυχιακή εργασία. AtYourService CY : Create a REST API. Δημήτρης Χριστοδούλου

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ

ΟΔΗΓΟΣ ΓΙΑ ΤΗΝ ΕΚΠΟΝΗΣΗ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΔΙΠΛΩΜΑΤΙΚΩΝ ΕΡΓΑΣΙΩΝ ΜΕΤΑΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ "ΟΡΓΑΝΩΣΗ & ΔΙΟΙΚΗΣΗ ΒΙΟΜΗΧΑΝΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ" Περίληψη

Βασίλειος Κοντογιάννης ΠΕ19

Παραδοτέο Π5.3: Έντυπο και ψηφιακό υλικό (Web site) προβολής των δράσεων έργου

Τμήμα Ψηφιακών Συστημάτων Δικτυοκεντρικών Ψηφιακών Συστημάτων και Υπηρεσιών Τηλεπικοινωνιακών Συστημάτων και Δικτύων Πτυχίο Ψηφιακά Συστήμα- τα

Ε Λ Λ Η Ν Ι Κ Η Δ Η Μ Ο Κ Ρ Α Τ Ι Α ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ

Δ Ε Λ Τ Ι Ο Τ Υ Π Ο Υ

Ατομική Διπλωματική Εργασία ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ

Όλες οι υπηρεσίες είναι διαθέσιμες μέσω διαδικτύου.

Σύστημα Διαχείρισης Φωτισμού. Εφαρμογές, Δυνατότητες & Πλεονεκτήματα

"Ανάπτυξη προηγμένης εφαρμογής απεικόνισης και ενσωμάτωσης Υπηρεσιών Καταλόγου (LDAP) με τη χρήση των τεχνολογιών Web 2.0"

Manual Χρήσης της εφαρμογής PK Data Software 1.2

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΙΑ ΙΚΑΣΙΑ ΜΕΤΑΒΑΣΗΣ ΣΤΟ CLOUD COMPUTING ΜΑΘΗΣΙΑΚΟΙ ΣΤΟΧΟΙ

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Δυναμική προσωποποιημένη ενημέρωση προσφορών Super Markets στη Θεσσαλονίκη

Αντί προλόγου. 1. Τι είναι το Twitter;

Περίληψη ιπλωµατικής Εργασίας

. Μεθοδολογία Προγραμματισμού. Εισαγωγή. Νικόλαος Πεταλίδης. Εισαγωγή Εαρινό Εξάμηνο 2014

ΟΔΗΓΟΣ ΠΤΥΧΙΑΚΩΝ ΕΡΓΑΣΙΩΝ

Σχεδίαση και Ανάπτυξη Εφαρμογής Ηλεκτρονικού Φακέλου Ασθενούς του Τμήματος Κοινωνικής Υπηρεσίας του Γενικού Νοσοκομείου Ρεθύμνου

TEC410 Ανάπτυξη Δικτυακών Τόπων (Δ εξάμηνο) Διδάσκων: Ανδρέας Γιαννακουλόπουλος Επιστημονικός συνεργάτης Εργαστηρίου: Στέλλα Λάμπουρα

Τεχνολογία Λογισμικού

Ψηφιακή Μετάβαση στον Δημόσιο Τομέα: Καλές πρακτικές ανάπτυξης ηλεκτρονικών υπηρεσιών με επίκεντρο τον πολίτη

Εικόνα 1. Δείκτης Προόδου

Η HTML 5 θα αλλάξει το Web?

Φορολογική Βιβλιοθήκη. Θανάσης Φώτης Προγραμματιστής Εφαρμογών

Α.2 Μαθησιακά Αποτελέσματα Έχοντας ολοκληρώσει επιτυχώς το μάθημα οι εκπαιδευόμενοι θα είναι σε θέση να:

Εγχειρίδιο Διαχειριστή. (Υπηρεσία Αναζήτησης Συνεπιβατών)

Αθήνα, 09 Μαΐου Χρήση Δρ. Ιωάννα smartphone Δημ. για Παπαδοπούλου, τη συλλογή σημάτων ΑΠΘεγκλωβισμένων ατόμων με την χρήση του ArcGIS Collector

Θέματα Ατομικής Διπλωματικής Εργασίας - DRAFT Ακαδημαϊκό Έτος 2015/2016. Γεωργία Καπιτσάκη (Λέκτορας)

Αναφορά εργασιών για το τρίμηνο Δεκέμβριος 2012 Φεβρουάριος 2013 Όνομα : Μπελούλη Αγάθη

Θέματα Ατομικής Διπλωματικής Εργασίας Ακαδημαϊκό Έτος 2017/2018. Γεωργία Καπιτσάκη (Επίκουρη Καθηγήτρια)

Πρακτικά Εναρκτήριας Συνάντησης Έργου

Κατασκευή δικτυακής εφαρμογής στην αρχιτεκτονική ios iphone που υλοποιεί ένα παιχνίδι ερωτοαπαντήσεων

ΕΓΧΕΙΡΙΔΙΟ ΟΡΘΩΝ ΠΡΑΚΤΙΚΩΝ ΗΛΕΚΤΡΟΝΙΚΕΣ ΚΑΜΠΑΝΙΕΣ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΜΕΣΟΛΟΓΓΙΟΥ

Συγγραφή Τεχνικών Κειμένων

Τμήμα Πληροφορικής. Σχολή Τεχνολογικών Εφαρμογών. Αλεξάνδρειο Τεχνολογικό Εκπαιδευτικό Ίδρυμα Θεσσαλονίκης

64.1% 18.8% 5.9% 5.2% 2.7%

ΜΕΛΕΤΗ ΣΧΕΔΙΑΣΗ ΕΦΑΡΜΟΓΗΣ ΣΕ ΥΠΟΛΟΓΙΣΤΙΚΟ ΝΕΦΟΣ (CLOUD COMPUTING) ΜΕ ΕΜΦΑΣΗ ΣΤΗΝ ΚΑΤΑΣΚΕΥΗ ΔΕΝΤΡΩΝ.

Bread Online. Παναγιώτης Ιωαννίδης Επιβλέπων καθηγητής: Μηνάς Δασυγένης

Ηλεκτρονική Υγεία ΓΕΝΙΚΟ ΝΟΣΟΚΟΜΕΙΟ ΡΕΘΥΜΝΟΥ 7 Η ΥΠΕ ΚΡΗΤΗΣ

Παρουσίαση της λύσης Dnet Mobile Terminal

A8-0188/308. Morten Løkkegaard Απαιτήσεις προσβασιμότητας για τα προϊόντα και τις υπηρεσίες COM(2015)0615 C8-0387/ /0278(COD)

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ «ΣΧΕΔΙΑΣΜΟΣ ΚΑΙ ΑΝΑΠΤΥΞΗ ΔΙΑΔΡΑΣΤΙΚΗΣ ΔΙΑΔΙΚΤΥΑΚΗΣ ΕΦΑΡΜΟΓΗΣ ΓΙΑ ΤΗΝ ΕΞΥΠΗΡΕΤΗΣΗ ΑΣΘΕΝΩΝ ΣΥΜΒΕΒΛΗΜΕΝΟΥΣ ΜΕ ΤΟΝ Ε.Ο.Π.Υ.

Ο Δρόμος προς την Αυτόματη Κυκλοφορία

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ

ΠΟΛΙΤΙΚΗ ΠΡΟΣΤΑΣΙΑΣ ΔΕΔΟΜΕΝΩΝ ΠΡΟΣΩΠΙΚΟΥ ΧΑΡΑΚΤΗΡΑ ΠΟΛΙΤΙΚΗ ΑΣΦΑΛΕΙΑΣ ΚΑΙ ΑΠΟΡΡΗΤΟΥ

Ιδρυματικό Αποθετήριο ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ.

Οδηγίες χρήσης για εφαρμογή WiFi ΑC

ΠΕΡΙΓΡΑΜΜΑ ΜΑΘΗΜΑΤΟΣ

Τεχνολογία Λογισμικού Τύπος Α

Εφαρμογή διαχείρισης παιδικού άσθματος

ΠΕΡΙΕΧΟΜΕΝΑ. Πρόλογος Κεφάλαιο 1 ο Αρχές Διαχείρισης πληροφορίας στον Παγκόσμιο Ιστό... 15

ΠΡΟΤΕΙΝΟΜΕΝΑ ΘΕΜΑΤΑ ΠΤΥΧΙΑΚΩΝ ΕΡΓΑΣΙΩΝ ΧΕΙΜΕΡΙΝΟΥ ΕΞΑΜΗΝΟΥ

Linux Terminal Server Project

Δομή και Στόχοι του Μαθήματος - Εισαγωγή

ΠΕΡΙΓΡΑΜΜΑ ΜΑΘΗΜΑΤΟΣ

ΔΙΔΑΣΚΑΛΙΑ ΑΝΑ ΜΑΘΗΜΑ

Transcript:

Πειραιάς S 2 Ε Lab Ιούνιος 2012 Εισηγητής: Δ. Ν. Καλλέργης, MSc. Εργ. Συνεργάτης

Πνευµατικά δικαιώµατα Τα πνευµατικά δικαιώµατα χρησιµοποίησης του µη πρωτότυπου υλικού της εργασίας ανήκουν στο/στη φοιτητή/-τρια και τον επιβλέποντα εις ολόκληρον, δηλαδή εκάτερος µπορεί να κάνει χρήση αυτών χωρίς τη συναίνεση του άλλου. Τα πνευµατικά δικαιώµατα χρησιµοποίησης του πρωτότυπου µέρους διπλωµατικής εργασίας ανήκουν στο/στη φοιτητή/-τρια και τον επιβλέποντα από κοινού, δηλαδή δεν µπορεί ο ένας από τους δύο να κάνει χρήση αυτού χωρίς τη συναίνεση του άλλου. Κατ εξαίρεση, επιτρέπεται η δηµοσίευση του πρωτότυπου µέρους της εργασίας σε επιστηµονικό περιοδικό ή πρακτικά συνεδρίου από τον ένα εκ των δύο, µε την προϋπόθεση να αναφέρονται τα ονόµατα και των δύο ως συν-συγγραφέων. Στην περίπτωση αυτή, προηγείται γραπτή ενηµέρωση του µη συµµετέχοντα στη συγγραφή του επιστηµονικού άρθρου. Δεν επιτρέπεται η κατά οποιοδήποτε τρόπο δηµοσιοποίηση υλικού το οποίο έχει δηλωθεί εγγράφως ως απόρρητο. Οι υπογράφοντες 1

ΕΥΧΑΡΙΣΤΙΕΣ Ευχαριστώ τους καθηγητές που με ενέπνευσαν και με δίδαξαν κατά τη διάρκεια των σπουδών μου. Ιδιαίτερες ευχαριστίες στον επιβλέποντα καθηγητή, κύριο Δημήτρη Καλλέργη, για το χρόνο που αφιέρωσε και στο φοιτητή του Τμήματος Η.Υ.Σ. Ευάγγελο Αυγερινό, ο οποίος βοήθησε σημαντικά στην ενσωμάτωση του υλικού της Πτυχιακής μου σε εξυπηρετητή του Εργαστηρίου Τεχνολογίας Λογισμικού και Υπηρεσιών. Ευχαριστώ την μητέρα μου, Ευφροσύνη Καρακάση, στην οποία θα είμαι πάντα ευγνώμων και τον φίλο και συνεργάτη μου, Γιάννη Δεληγιάννη για τις συμβουλές και τη βοήθεια που μου έχει προσφέρει τα τελευταία χρόνια. 2

ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ 1.1 Πρόλογος...7 1.2 Σκοπός Πτυχιακής Εργασίας...7 1.3 Δομή Πτυχιακής Εργασίας...8 ΚΕΦΑΛΑΙΟ 2: Διαχείριση Έργου...9 2.1 Ευέλικτες Μέθοδοι...9 2.2 Σχεδίαση Υλοποίησης Πτυχιακής Εργασίας...9 ΚΕΦΑΛΑΙΟ 3: Έρευνα Τεχνολογιών...11 3.1 Μελέτη περίπτωσης εγγενούς εφαρμογής (na\ve applica\on)...12 3.1.1 Android...12 3.1.2 Sinatra...13 3.1.3 JSON [9]...14 3.1.4 HTML5 WebSockets...14 3.1.5 Node.js...19 3.1.6 EventMachine, Twisted...20 3.1.7 Faye...21 3.2 Μελέτη περίπτωσης web mobile εφαρμογής...21 3.2.1 Ruby...22 3.2.2 Ruby on Rails...23 3.2.3 MySQL...33 3.2.4 jquery mobile...34 3.2.5 Git...39 3.3 Συμπέρασμα Θεωρητικής Μελέτης...42 ΚΕΦΑΛΑΙΟ 4: Εργαλεία και Μέθοδοι...43 4.1 Περιβάλλον ανάπτυξης Εργαλεία...43 4.1.1 Aptana...43 4.1.2 Phusion Passenger...43 4.1.3 RVM...43 4.1.4 Bundler...44 4.1.5 Gems Σημαντικές Βιβλιοθήκες της εφαρμογής...44 4.2 Μέθοδοι Κλάσεις...45 4.2.1 Μοντέλο: Σελίδα (Page)...47 4.2.2 Μοντέλο: Χρήστης (User)...48 4.2.3 Μοντέλο: Διαδρομή (Route)...48 4.2.4 Ελεγκτής εφαρμογής (applica\on_controller.rb)...49 4.2.5 Ελεγκτής σελίδας (pages_controller.rb)...50 4.2.6 Ελεγκτής διαδρομής (routes_controller.rb)...50 4.2.7 Assets...51 4.2.8 JavaScript: Κώδικας geocode και route...52 4.2.9 Κλάση αποστολής email (user_mailer.rb)...52 4.2.10 Διαδρομές απόκρισης της εφαρμογής (routes.rb)...52 4.2.11 Οργάνωση προβολών της εφαρμογής (Layout)...53 4.2.12 Κώδικας φάκελου locales...54 4.3 Tes\ng...54 3

ΚΕΦΑΛΑΙΟ 5: Αποτελέσματα Συζήτηση...60 ΚΕΦΑΛΑΙΟ 6: Μελλοντική Εργασία...66 6.1 Επιλογή οχήματος Μέγιστος αριθμός επιβατών...66 6.2 Αξιολόγηση συνεπιβάτη...66 6.3 Δυνατότητα επικοινωνίας μέσω της εφαρμογής...66 6.4 Προσθήκη ενδιάμεσων σημείων διαδρομής...66 6.5 Υπολογιστικό νέφος...67 6.5.1 Χρήση Εμπορικής Υλοποίησης Υπολογιστικού Νέφους...68 6.5.2 Υλοποιήση Υπολογιστικού Νέφους Ανοικτής Αρχιτεκτονικής...70 Αναφορές...74 Βιβλιογραφία...78 Παράρτημα...79 4

ΛΙΣΤΑ ΕΙΚΟΝΩΝ Εικόνα 3-1: Χρήση συσκευών για είσοδο στο διαδίκτυο...11 Εικόνα 3.1-1: Αλληλεπίδραση τεχνολογιών εγγενούς εφαρμογής...12 Εικόνα 3.1.1-1: Αναλογίες χρήσης λειτουργικών συστημάτων κινητών συσκευών για το 4ο εξάμηνο 2011...13 Εικόνα 3.1.2-1: Λογότυπο πλαισίου Sinatra...13 Εικόνα 3.1.4-1: Λογότυπο HTML5...14 Εικόνα 3.1.4-2: Μέθοδοι Σύνδεσης Εξυπηρετητή- Πελάτη...16 Εικόνα 3.1.4-3: Επικοινωνία εξυπηρετητή και πελάτη...17 Εικόνα 3.1.4-4: Πολιτική ίδιας προέλευσης...17 Εικόνα 3.1.4-5: Μεσολάβηση πληρεξούσιου εξυπηρετητή...18 Εικόνα 3.1.5-1: Λογότυπο node.js...19 Εικόνα 3.2-1: Αλληλεπίδραση τεχνολογιών εφαρμογής διαδικτύου...21 Εικόνα 3.2.1-1: Λογότυπο της γλώσσας Ruby...22 Εικόνα 3.2.2-1: Δομή φακέλων των εφαρμογών Ruby on Rails...28 Εικόνα 3.2.2-2: Μοντέλο "Μοντέλο- Προβολή- Ελεγκτής"...29 Εικόνα 3.2.4-1: Οθόνη εφαρμοφής jquery mobile...36 Εικόνα 3.2.4-2: Προεπιλεγμένα θέματα της jquery mobile...37 Εικόνα 3.2.4-3: Τρόποι μετάβασης από μία σελίδα σε άλλη...38 Εικόνα 3.2.5-1: Λογότυπο Git...39 Εικόνα 3.2.5-2: Εντολές και διάγραμμα ροής στο Git...40 Εικόνα 3.2.5-3: Ενημέρωση τοπικού και απομακρυσμένου αποθετηρίου...41 Εικόνα 3.2.5-4: Διακλαδώσεις στο Git...41 Εικόνα 4.2-1: Διάγραμμα κλάσσεων...47 Εικόνα 4.2.3-1: Μέθοδοι ελεγκτών...49 Εικόνα 4.2.10-1: Αντιστοίχιση διαδρομών εφαρμογής, HTTP ρημάτων, μορφής παραμέτρων, ελεγκτών και ενεργειών...53 Εικόνα 4.3-1: Εκτέλεση ελέγχων...57 Εικόνα 4.3-2: Έλεγχος προσθήκης νέας διαδρομής με το Capybara...59 Εικόνα 5-1: Σύγκριση Mongrel- Passenger- Unicorn ως προς το μέσο χρόνο απόκρισης...61 Εικόνα 5-2: Mongrel- Passenger- Unicorn ως προς το μέγιστο χρόνο απόκριση...61 Εικόνα 6.5.1-1: Λογότυπο heroku...68 Εικόνα 6.5.1-2: Λογότυπο Engine Yard...68 Εικόνα 6.5.1-3: Λογότυπο Google App Engine...69 5

ΛΙΣΤΑ ΠΙΝΑΚΩΝ Πίνακας 3.2.2-1: Αντιστοίχιση HTTP μεθόδων, Διαδρομών (paths), Λειτουργιών βάσης. 26 Πίνακας 6.5.1-2: Σύγκριση συμβατότητας PaaS με γλώσσες προγραμματισμού...70 Πίνακας 3.2.4-1: Συστήματα που υποστηρίζουν το πλαίσιο jquery mobile...35 Πίνακας 3.2.4-2: Τρόποι μετάβασης από μία σελίδα σε άλλη... 38 Πίνακας 4.2.6-1: Ενέργειες Ελεγκτή Διαδρομών... 51 Πίνακας 6.5.1-1: Σύγκριση συμβατότητας PaaS με γλώσσες προγραμματισμού... 71 Πίνακας 6.5.2-1: Γλώσσες προγραμματισμού που υποστηρίζονται από ανοικτού κώδικα PaaS... 74 6

Εισαγωγή 1.1 Πρόλογος Οι οικονομικές συνθήκες, τα περιβαλλοντικά προβλήματα και η κυκλοφοριακή συμφόρηση δυσχεραίνουν την καθημερινότητα χιλιάδων ανθρώπων. Ταυτόχρονα, η τεχνολογική πρόοδος στον τομέα των συσκευών κινητών επικοινωνιών έχει καταστήσει εφικτή την ανάπτυξη φορητών εφαρμογών. Οι χρήστες σήμερα είναι εξοικειωμένοι με τη χρήση διαδικτυακών εφαρμογών για τη διασκέδαση, ενημέρωση και εξυπηρέτηση αναγκών τους. Κανείς δεν μπορεί να αλλάξει τις συνήθειες άλλων ανθρώπων, αλλά έχει τη δυνατότητα να δημιουργήσει ένα εργαλείο που πιθανόν αν χρησιμοποιηθεί, θα φέρει αλλαγή σε κάποια συνήθεια. Η εφαρμογή που υλοποιήθηκε εντάσσεται στο επιστημονικό πεδίο της ανάπτυξης λογισμικού. Έγινε χρήση νέων τεχνολογιών που εφαρμόζουν τις πλέον σύγχρονες πρακτικές. Δόθηκε έμφαση στην ευκολία χρήσης και είναι προσανατολισμένη στις ανάγκες των έξυπνων συσκευών κινητών επικοινωνιών αλλά ταυτόχρονα είναι εξίσου προσβάσιμη από επιτραπέζιους υπολογιστές. 1.2 Σκοπός Πτυχιακής Εργασίας Σκοπός της πτυχιακής εργασίας είναι η μελέτη και ανάπτυξη λογισμικού προηγμένης εφαρμογής εξυπηρέτησης διαδρομών. Οι χρήστες που επιθυμούν να μοιραστούν μια διαδρομή είτε σαν οδηγοί είτε σαν επιβάτες, εγγράφονται στην υπηρεσία και καταχωρούν τα στοιχεία της διαδρομής τους. Έπειτα μπορούν να ψάξουν για συνταξιδιώτη και να διαλέξουν ανάμεσα στις διαθέσιμες διαδρομές που εμφανίζει η εφαρμογή σύμφωνα με τις παραμέτρους που έχουν δοθεί. Αν δεν υπάρχει κάποια διαδρομή που ταιριάζει με τα κριτήρια του χρήστη, παραμένει αποθηκευμένη στην υπηρεσία και μπορεί ο ίδιος να αναζητήσει αργότερα εκ νέου συνταξιδιώτη ή να λάβει ενημερωτικό μήνυμα όταν κάποιος θέλει να μοιραστεί την εν λόγω διαδρομή μαζί του. 7

1.3 Δομή Πτυχιακής Εργασίας Στο πρώτο κεφάλαιο παρατίθενται ο πρόλογος, ο σκοπός και η δομή της πτυχιακής εργασίας. Στο δεύτερο κεφάλαιο αναφέρεται ο τρόπος διαχείρισης και υλοποιήσης της εργασίας με χρήση των ευέλικτων μεθοδολογιών ανάπτυξης λογισμικού. Στο τρίτο κεφάλαιο εξετάζονται δύο περιπτώσεις υλοποιήσης του έργου. Αναλύονται και συγκρίνονται οι τεχνολογίες που μποροεί να χρησιμοποιηθούν. Στο τέταρτο κεφάλαιο δίνονται πληροφορίες για τα εργαλεία που χρησιμοποιήθηκαν στην ανάπτυξη του πρακτικού μέρους και σχολιάζεται ο κώδικας της εφαρμογής και των ελέγχων που διεξήχθησαν. Στο πέμπτο κεφάλαιο παρουσιάζονται τα αποτελέσματα, εστιάζοντας στο χρόνο απόκρισης του συστήματος στις αιτήσεις διαφορετικών χρηστών. Στο έκτο κεφάλαιο περιγράφονται πιθανές προσθήκες στην εφαρμογή. 8