Μηχανή Αναζήτησης Ναύλων µε Προσέγγιση ως προς το Συναίσθηµα ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Μηχανή Αναζήτησης Ναύλων µε Προσέγγιση ως προς το Συναίσθηµα ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ"

Transcript

1 ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΕΠΙΚΟΙΝΩΝΙΩN, ΗΛΕΚΤΡΟΝΙΚΗΣ ΚΑΙ ΣΥΣΤΗΜΑΤΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Μηχανή Αναζήτησης Ναύλων µε Προσέγγιση ως προς το Συναίσθηµα ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ Νικηφόρος Κ. Μακρυνάκης Επιβλέπων : Θεοδώρα Βαρβαρίγου Καθηγήτρια Ε.Μ.Π Αθήνα, Οκτώβριος 2015

2

3 ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΕΠΙΚΟΙΝΩΝΙΩN, ΗΛΕΚΤΡΟΝΙΚΗΣ ΚΑΙ ΣΥΣΤΗΜΑΤΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Μηχανή Αναζήτησης Ναύλων µε Προσέγγιση ως προς το Συναίσθηµα ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ Νικηφόρος Κ. Μακρυνάκης Επιβλέπων : Θεοδώρα Βαρβαρίγου Καθηγήτρια Ε.Μ.Π Εγκρίθηκε από την τριµελή εξεταστική επιτροπή την 23 η Οκτωβρίου Θεοδώρα Βαρβαρίγου Καθηγήτρια Ε.Μ.Π... Εµµανουήλ Βαρβαρίγος Καθηγητής Ε.Μ.Π... Βασίλειος Λούµος Καθηγητής Ε.Μ.Π Αθήνα, Οκτώβριος 2015

4 ... Νικηφόρος Κ. Μακρυνάκης Διπλωµατούχος Ηλεκτρολόγος Μηχανικός και Μηχανικός Υπολογιστών Ε.Μ.Π. Copyright Νικηφόρος Κ. Μακρυνάκης Με επιφύλαξη παντός δικαιώµατος. All rights reserved. Απαγορεύεται η αντιγραφή, αποθήκευση και διανοµή της παρούσας εργασίας, εξ ολοκλήρου ή τµήµατος αυτής, για εµπορικό σκοπό. Επιτρέπεται η ανατύπωση, αποθήκευση και διανοµή για σκοπό µη κερδοσκοπικό, εκπαιδευτικής ή ερευνητικής φύσης, υπό την προϋπόθεση να αναφέρεται η πηγή προέλευσης και να διατηρείται το παρόν µήνυµα. Ερωτήµατα που αφορούν τη χρήση της εργασίας για κερδοσκοπικό σκοπό πρέπει να απευθύνονται προς τον συγγραφέα. Οι απόψεις και τα συµπεράσµατα που περιέχονται σε αυτό το έγγραφο εκφράζουν τον συγγραφέα και δεν πρέπει να ερµηνευθεί ότι αντιπροσωπεύουν τις επίσηµες θέσεις του Εθνικού Μετσόβιου Πολυτεχνείου. 4

5 Ευχαριστίες Η διπλωµατική αυτή εκπονήθηκε στο Εργαστήριο Distributed Knowledge and Media Systems Group του Τοµέα Επικοινωνιών, Ηλεκτρονικής και Συστηµάτων Πληροφορικής της σχολής Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών του Εθνικού Μετσόβιου Πολυτεχνείου, υπό την επίβλεψη της Καθηγήτριας Θεοδώρας Βαρβαρίγου. Θα ήθελα να ευχαριστήσω θερµά την κ. Θεοδώρα Βαρβαρίγου για την υποστήριξη και καθοδήγηση που µου προσέφερε, καθώς και για την ευκαιρία που µου έδωσε να αναπτύξω µια µηχανή αναζήτησης αεροπορικών ναύλων που βασίζεται σε τεχνικές του Social Media Mining. Ιδιαίτερες ευχαριστίες απευθύνονται στον υποψήφιο διδάκτορα Βρεττό Μουλό, ο οποίος µε βοήθησε καθ όλη τη διάρκεια της διπλωµατικής µε τις καινοτόµες ιδέες του και τις εύστοχες παρατηρήσεις συµβάλλοντας καθοριστικά στο τελικό αποτέλεσµα. Τέλος το µεγαλύτερο ευχαριστώ πάει στην οικογένεια µου, που όλα τα χρόνια ήταν δίπλα µου και αποτελεί τον ακρογωνιαίο λίθο της ύπαρξης µου. 5

6 6

7 Περίληψη Ζούµε στην εποχή των κοινωνικών δικτύων. Καθηµερινά, εκατοντάδες εκατοµµύρια ανθρώπων ξοδεύουν σηµαντικό αριθµό ωρών στα κοινωνικά δίκτυα για να επικοινωνήσουν, συνδεθούν, αλληλεπιδράσουν, δηµιουργήσουν και να µοιραστούν περιεχόµενο δηµιουργηµένο από αυτούς, σε πρωτόγνωρο ρυθµό, καθιστώντας τα κοινωνικά δίκτυα µια πολύτιµη πηγή πληροφοριών. Ένας καινούριος ανερχόµενος κλάδος που συνδυάζει τις αρχές της επιστήµης υπολογιστών και των κοινωνικών επιστηµών, ο λεγόµενος social media mining, αποσκοπεί να χρησιµοποιήσει αυτές τις πληροφορίες σε αρκετές εφαρµογές. Βασιζόµενη στο αυξανόµενο ενδιαφέρον για την ανάλυση των social media, η διπλωµατική έχει ως στόχο την παρουσίαση µιας µηχανής αναζήτησης αεροπορικών ναύλων που προτείνει τις ιδανικές πτήσεις και αντίστοιχα τα καλύτερα εισιτήρια σύµφωνα µε το κόστος τους και την δηµοτικότητα της αεροπορικής εταιρείας στο twitter. Για να επιτευχθεί αυτό, στα πλαίσια της διπλωµατικής υλοποιήθηκε ένας social analyzer που είναι υπεύθυνος για την συλλογή και την επεξεργασία δεδοµένων από το twitter. Καθώς η δηµοτικότητα έχει οριστεί ως το στατιστικό ισοζύγιο των θετικών και αρνητικών tweets για µια συγκεκριµένη περίοδο, χρησιµοποιήθηκε ένας αλγόριθµος ανάλυσης συναισθήµατος που χρησιµοποιεί N-grams. Το πλεονέκτηµα των κοινωνικών δικτύων ως πηγή πληροφοριών είναι η ανανέωση του περιεχοµένου τους από τους χρήστες τους σε πραγµατικό χρόνο και συνεπώς η διαδικασία συµπερασµού της δηµοτικότητας είναι δυναµική και συνεχής. Θεωρώντας ότι η δηµοτικότητα κάθε αεροπορικής εταιρείας αντικατοπτρίζει την ποιότητα των υπηρεσιών που προσφέρει, είναι ένα κριτήριο που δεν πρέπει να αγνοείται. Λαµβάνοντας τα παραπάνω υπόψη, αυτή η διπλωµατική στοχεύει να αλλάξει την µονολιθική διαδικασία επιλογής πτήσεων βασιζόµενη στο κόστος και να παρουσιάζει ένα πολυδιάστατο σύστηµα που συµβουλεύεται την κοινή γνώµη και την βαθµολογία χρηστών. Σε συνδυασµό µε την τωρινή άνθηση των κοινωνικών δικτύων, εισάγει αλλαγές που έχουν στόχο τον άνθρωπο και στην συγκεκριµένη περίπτωση τον ταξιδιώτη. Λέξεις Κλειδιά Ανάλυση συναισθήµατος, κοινωνικά δίκτυα, βάσεις δεδοµένων, NoSQL, MongoDB, MySQL, Web Service, REST, RESTful, Node.js, daemon, N-gram αλγόριθµος, εκπαιδευόµενο δεδοµένο, Twitter API, Replica Set, Javascript, PHP, Java, Google QPX Express API, modular. 7

8 8

9 Abstract We live in an age of social networks. Everyday, hundreds of millions of people are spending considerable amount of hours on social media to communicate, connect, interact, create and share user-generated content at an unpredecedent rate, making social media a significant source of information. A whole new growing field that combines the disciplines of computer science and social sciences, called social media mining, intends to harness this data and use it to many applications. Based on this increasing interest in social media analysis, this diploma thesis intends to introduce a flight search engine that proposes the ideal flights and respectively the best tickets in accordance to their cost and the popularity of their airline company on twitter. In order to achieve to that, within the framework of the thesis, of a social analyzer is implemented that is responsible for collecting the data from Twitter and processing it. As popularity is defined as the statistical equilibrium of positive and negative tweets in a specific period of time, a N-gram algorithm is used for the sentiment analysis of the tweets. The advantage of consulting social medias as a source of information, is that their content is updated in real time by their users and therefore the process of calculating the popularity of each airline company is dynamic and constant. Considering that the popularity of each company reflects the quality of the services provided, it s a criterion that shouldn t be ignored. Taking everything into consideration, this diploma thesis attempts to change the monolithic process of choosing flights based on their cost and introduce a new multidimensional system that utilizes the public opinion and user rating. Combined with the current rise of social media, it s another step towards shifting the power back to the consumer and in this occasion, to the traveler. Keywords Sentiment analysis, social networks, databases, NoSQL, MongoDB, MySQL, Web Service, REST, RESTful, Node.js, daemon, N-Gram algorithm, train data, Twitter API, Replica set, Javascript, PHP, Java, Google QPX Express API, modular. 9

10 10

11 Περιεχόµενα Table of Contents Ευχαριστίες... 5 Περίληψη... 7 Abstract... 9 Κεφάλαιο 1: Ανάλυση Προβλήματος Εισαγωγή Social Networks Αντικείμενο διπλωματικής Σύγκριση κοινωνικών δικτύων και λόγοι επιλογής του Twitter Δομή εργασίας Κεφάλαιο 2: Αρχιτεκτονική Εφαρμογής Γενική Εικόνα Βάσεις δεδομένων MongoDB MySQL Twitter API και Sentiment Analysis Twitter API Daemons Sentiment Analysis Flights Information Restful API Site frontend and backend Login & Register Page Airlines Page Tickets Κεφάλαιο 3: Τεχνολογίες Εισαγωγή Node.JS MongoDB Περιπτώσεις που η MongoDB ενδείκνυται RESTful REST REST vs SOAP Κεφάλαιο 4: Screenshots Εφαρμογής Κεντρική σελίδα Autocomplete Ημερολόγιο Login page Ανίχνευση σωστής μορφής Λανθασμένο Επιτυχής σύνδεση και αποσύνδεση από το σύστημα

12 4.3 Εγγραφή χρήστη Κωδικοί που δεν ταιριάζουν Περίπτωση που υπάρχει ήδη χρήστης με το δοθέν στο register Βαθμολόγηση αεροπορικών εταιρειών Αποτελέσματα βαθμολόγησης Σελίδα εισιτηρίων Πληροφορίες πτήσης Πτήση με connections Ταξινόμηση με βάση το κόστος Ταξινόμηση με την βαθμολογία χρηστών Ταξινόμηση με βάση τον βέλτιστο συνδυασμό κόστους, δημοτικότητας και βαθμολόγησης χρηστών Προγράμματα αποθήκευσης tweets και ανάλυσης συναισθήματος Κεφάλαιο 5: Μελέτη Περιπτώσεων Ανάλυση προβλήματος Σύγκριση εφαρμογής διπλωματικής με υπάρχουσες εμπορικές Μελέτη επίδρασης της επικαιρότητας στο σύστημα Κεφάλαιο 6: Μελλοντικές Προσθήκες Αποθήκευση Προτιμήσεων Χρήστη Βαθμολόγηση και εμφάνιση περισσότερων πτυχών των αεροπορικών εταιρειών Υποστήριξη περισσότερων γλωσσών Βαθμολόγηση κάθε πτήσης Δυνατότητα δημοσίευσης σχολίων για κάθε αεροπορική εταιρεία Παράρτημα A: Κώδικας Προγραμμάτων Background Twitter Streaming Program Sentiment Analysis Program RESTful Παράρτημα Β: Κώδικας Frontend Index.php Logister.php logiform.php regiform.php login.php register.php database.php rate.php airlines.php tickets.php

13 Κατάλογος Σχηµάτων Σχήμα 1: Components της εφαρμογής μαζί με τις τεχνολογίες στις οποίες βασίζονται Σχήμα 2: Μοντέλο MongoDB Collections μαζί με τα objects τους Σχήμα 3: MySQL Schema Σχήμα 4: Λειτουργία Twitter API προγράμματος Σχήμα 5: Διαδικασία ανάλυσης συναισθήματος προγραμματιστικά Σχήμα 6: Παράδειγμα του sentiment analysis To text I am happy είναι θετική πρόταση Σχήμα 7: RESTful web service Σχήμα 8: Δομή ιστοσελίδας Σχήμα 9: Δομή ιστοσελίδας με τα αντίστοιχα PHP αρχεία Σχήμα 10: Συναρτήσεις των PHP αρχείων υπεύθυνα για το login και register Σχήμα 11: Συναρτήσεις των PHP αρχείων υπεύθυνα για τη λειτουργία βαθμολόγησης των αεροπορικών εταιρειών Σχήμα 12: Background διαδικασία για την εμφάνιση εισιτηρίων Σχήμα 13: Σύγκριση Node.JS με παραδοσιακές γλώσσες προγραμματισμού Σχήμα 14: Εκθετική αύξηση στο μέγεθος των δεδομένων που απαιτούνται Σχήμα 15: Κεντρική σελίδα μηχανής αναζήτησης αεροπορικών εισιτηρίων Σχήμα 16: Κεντρική Σελίδα με επεξήγηση Σχήμα 17: Autocomplete αεροδρομίων Σχήμα 18: Επιλογή ημερομηνίας μέσω calendar Σχήμα 19: Login Σχήμα 20: Login λανθασμένη μορφή Σχήμα 21: Ανεπιτυχές Login Σχήμα 22: Logout Σχήμα 23: Register Σχήμα 24: Register Διαφορετικοί κωδικοί Σχήμα 25: Register already in use Σχήμα 26: Σελίδα Βαθμολόγησης των αεροπορικών εταιρειών Σχήμα 27: Αποτελέσματα βαθμολόγησης

14 Σχήμα 28: Σελίδα Εισιτηρίων Σχήμα 29: Nonstop πτήση Σχήμα 30: Πτήση με connection Σχήμα 31: Επεξήγηση Σελίδας εισιτηρίων Σχήμα 32: Παράδειγμα ταξινόμησης με το user rating Σχήμα 33: Βέλτιστα εισιτήρια Σχήμα 34: Daemon συλλογής tweets Σχήμα 35: Sentiment analysis daemon Σχήμα 36: Τιμές kayak ΑTHENS LONDON Σχήμα 37: Τιμές skyscanner ΑTHENS LONDON Σχήμα 38: Kayak ΑTHENS - LONDON Σχήμα 39: Συγκριτικές Τιμές ΑTHENS - LONDON Σχήμα 40: Διάγραμμα τιμής με δημοτικότητα αεροπορικών εταιρειών Σχήμα 41a: Εφαρμογή διπλωματικής Αθήνα Λονδίνο Σχήμα 41b: Μηχανή αναζήτησης διπλωματικής Αθήνα Λονδίνο Σχήμα 42: Συγκριτικό διάγραμμα δημοτικότητας αεροπορικών εταιρειών πριν και μετά το ατύχημα Σχήμα 43: Διάγραμμα κόστους και δημοτικότητας μετά το συμβάν

15 15

16 Κεφάλαιο 1 Εισαγωγή 1.1 Εισαγωγή Ζούµε σε µία εποχή που όλο και περισσότεροι καταναλωτές χρησιµοποιούν το internet για την αγορά προϊόντων και υπηρεσιών. Πέρα από τα πλεονεκτήµατα που προσφέρει το online shopping όπως η εύρεση καλύτερων τιµών µέσω άµεσης σύγκρισης, ο έλεγχος διαθεσιµότητας κοκ, ένας από τους κυριότερους λόγους αύξησης της δηµοφιλίας του, είναι ότι έχει γίνει µετατόπιση δύναµης στα χέρια των καταναλωτών. Τα περισσότερα αν όχι όλα µαγαζιά που έχουν διαδικτυακή παρουσία έχουν ενσωµατώσει στο σύστηµα τους την δυνατότητα άσκησης κριτικής στα προϊόντα και στις υπηρεσίες και κατά συνέπεια και στις εταιρείες παραγωγούς. Μάλιστα τα διασηµότερα sites βασίζουν την λειτουργία τους στο user rating και στην κριτική των χρηστών τους όπως για παράδειγµα το amazon, ebay, steam, rottentomatoes, imdb, YouTube και πολλά άλλα. Όπως είναι λογικό, από την µία η δυνατότητα βαθµολόγησης και άσκηση κριτικής και από την άλλη η εύκολη προσβασιµότητα τους από όλους τους υπόλοιπους χρήστες, µπορεί να επηρεάσουν την ισορροπία της αγοράς. Αυτό συµβαίνει γιατί τα reviews περιέχουν πληροφορίες που συµβάλλουν στην πορεία διαµόρφωσης γνώµης για το προϊόν ή την υπηρεσία. Οι χρήστες πλέον εµπιστεύονται περισσότερο τα reviews και τα σχόλια των άλλων αγοραστών παρά τις γνώµες των ειδικών, για αυτό κιόλας οι είτε είναι θετικά είτε αρνητικά παίζουν καθοριστικό ρόλο στην απόφαση τους. Τα θετικά αξιολογηµένα προϊόντα πάντα ξεχωρίζουν και ως λογικό επακόλουθο προτιµώνται από τους καταναλωτές. Έτσι οι εταιρείες κρίνονται και επιβραβεύονται για την συστηµατική ποιοτική τους παρουσία στην αγορά. Αντίστροφα η κριτική οδηγεί στην βελτίωση των προϊόντων και των υπηρεσιών. Πέρα από τους άµεσους τρόπους που αναφέρθηκαν προηγουµένως υπάρχουν και έµµεσοι τρόποι συλλογής πληροφοριών για την ποιότητα υπηρεσιών και προϊόντων από τα Social Networks. Τα κοινωνικά δίκτυα είναι στο επίκεντρο της προσοχής την τελευταία δεκαετία καθώς η πρόσβαση σε αυτά (όπως Twitter, Facebook, LinkedIn και Google+) µέσω του internet και των τεχνολογιών του web 2.0 έχει γίνει οικονοµικά προσιτή. Οι άνθρωποι βασίζονται όλο και περισσότερο στα social networks για την πληροφόρηση, τα νέα και τις γνώµες άλλων χρηστών για ποικίλα θέµατα. Αυτή η εξάρτηση στα κοινωνικά δίκτυα είναι ο λόγος που παράγεται τόσο µεγάλη ποσότητα δυναµικών δεδοµένων στα οποία βασίζεται ολόκληρος κλάδος του computer science που έχει στόχο την εξόρυξη πληροφοριών, το λεγόµενο data mining ή στην προκειµένη περίπτωση social media mining. 16

17 1.2 Social Networks Κοινωνικό δίκτυο είναι ένας όρος που χρησιµοποιείται για να περιγράψουµε web-based υπηρεσίες που επιτρέπουν σε άτοµα να δηµιουργήσουν δηµόσια ή µερικώς δηµόσια profile σε ένα domain έτσι ώστε να µπορούν να συνδεθούν επικοινωνιακά µε άλλους χρήστες στα πλαίσια του δικτύου. Βασικό τµήµα του concept των social networks είναι η δυνατότητα δηµιουργίας και ανταλλαγής user-generated περιεχοµένου. Αν θέλαµε να τα περιγράψουµε πιο επιστηµονικά ουσιαστικά θα τα απεικονίζαµε µε γράφους αποτελούµενους από κόµβους και συνδέσµους. Οι κόµβοι αντιπροσωπεύουν τις οντότητες και οι σύνδεσµοι τις κοινωνικές σχέσεις µεταξύ τους. Έτσι εκ κατασκευής αποτελούν σηµαντικές πηγές διαδικτυακών αλληλεπιδράσεων και content sharing, υποκειµενικότητας, εκτιµήσεων, προσεγγίσεων, αξιολογήσεων, παρατηρήσεων, συναισθηµάτων και γνωµών, τα οποία εµφανίζονται σε µορφή κειµένου, σε κριτικές, blogs, συζητήσεις, νέα και σχόλια. Το επαναστατικό στοιχείο βέβαια στα κοινωνικά δίκτυα είναι ότι έχουν παραχωρήσει το δικαίωµα στους χρήστες τους να εκφράζονται ελεύθερα χωρίς λογοκρισία. Οι χρήστες τους λοιπόν ως και καταναλωτές, έχουν την δυνατότητα να εκφράσουν και τη θετική ή αρνητική γνώµη τους για κάποιο προϊόν ή κάποια υπηρεσία. Αν λάβουµε υπόψη ότι πτήσεις αποτελούν υπηρεσίες, µέσω των social networks µπορούµε να αφουγκραστούµε τις γνώµες των καταναλωτών για αυτές, για τις αεροπορικές εταιρείες ή για το σύνολο κάποιου ταξιδιού. Σηµαντικό πλεονέκτηµα αποτελεί το γεγονός ότι σε αντίθεση µε τα blogs και τα άρθρα που µπορεί να εξυπηρετούν σκοπιµότητες, η εξόρυξη πληροφοριών από τα κοινωνικά δίκτυα αποφεύγει τέτοιους κινδύνους καθώς τα συµπεράσµατα εξάγονται από πολυάριθµες αναρτήσεις χρηστών. Τέλος αξίζει να αναφερθεί ότι σύµφωνα µε το European Traveler Technology Survey το 30% των Αµερικάνων και την Ευρωπαίων ταξιδιωτών χρησιµοποιούν τα κοινωνικά δίκτυα κατά τη διάρκεια του ταξιδιού τους. Γεγονός που αναδεικνύει τα social networks το τρίτο πιο δηµοφιλές µέσο επικοινωνίας µετά το τηλέφωνο και το σε ταξίδια ενδεικτικό επίσης της τεράστιας ποσότητας πληροφοριών που αναρτάται σχετικά µε αυτά. 1.3 Αντικείµενο διπλωµατικής Στα πλαίσια της διπλωµατικής αναπτύχθηκε µία διαδικτυακή µηχανή αναζήτησης αεροπορικών ναύλων που λαµβάνει υπόψη την δηµοφιλία της εκάστοτε εταιρείας, πτήσης ή ταξιδιού στα social networks και στην προκειµένη περίπτωση στο twitter. Στόχος της είναι, ξεπερνώντας την µονολιθική ταξινόµηση µε βάση το κόστος των ναύλων, να προτείνει στους χρήστες τις πτήσεις που ξεχωρίζουν για την ποιότητα τους σύµφωνα µε την κοινή γνώµη. Για να επιτευχθεί αυτό, υλοποιήθηκε ένας social analyzer που αναλαµβάνει την συλλογή δεδοµένων από το twitter ( χρησιµοποιώντας ως φίλτρα για παράδειγµα hashtags της µορφής #AegeanAirlines, #RometoAthens, #Heathrow) και αφού τα κατηγοριοποιήσει ανάλογα, σε δεύτερο χρόνο τα µοντελοποιεί χρησιµοποιώντας έναν αλγόριθµο ανάλυσης συναισθηµάτων. Σε αυτό το βήµα ο αλγόριθµος, όντας N-Gram εκπαιδευµένος, αντιλαµβάνεται το συναίσθηµα πίσω από το tweet και µε αυτό τον τρόπο ανανεώνει τη δηµοφιλία της αεροπορικής εταιρίας, του ταξιδιού είτε ακόµα του ταξιδιού σαν ολότητα. Ουσιαστικά η δηµοφιλία είναι ένα δείκτης που εκφράζει την ικανοποίηση των ταξιδιωτών και για αυτό το λόγο αποτελεί βασικό κριτήριο στην επιλογή των ναύλων. Επίσης, επειδή η διαδικασία αυτή είναι δυναµική και συνεχής, το σύστηµα να προσαρµόζεται ταχύτατα στις διακυµάνσεις της κοινής γνώµης, καθιστώντας το έτσι ασφαλές κριτήριο επιλογής. Σε αυτό παίζει σηµαντικό ρόλο το γεγονός ότι τα κοινωνικά 17

18 δίκτυα αποτελούν σηµαντικές πηγές εκτιµήσεων, προσεγγίσεων, αξιολογήσεων, παρατηρήσεων, συναισθηµάτων και γνωµών σε πραγµατικό χρόνο. 1.4 Σύγκριση κοινωνικών δικτύων και λόγοι επιλογής του Twitter Κάθε κοινωνικό δίκτυο είναι διαφορετικό ως προς το περιεχόµενο του και τους χρήστες που προσελκύει. Τα πιο διάσηµα κοινωνικά δίκτυα από άποψη επισκεψιµότητας είναι το Facebook, Twitter, LinkedIn, Instagram, Pinterest και Google+. Συνοπτικά θα µπορούσαµε να τα περιγράψουµε ως εξής: Facebook: ιστοχώρος κοινωνικής δικτύωσης στο οποίο οι χρήστες µπορούν να επικοινωνούν µέσω µηνυµάτων µε τις επαφές τους και να τους ειδοποιούν όταν ανανεώνουν τις προσωπικές τους πληροφορίες. Μεγάλος µέρος των κερδών του οφείλεται στην δυνατότητα στοχευµένης διαφήµισης. Pinterest: κοινωνικό δίκτυο µε την µορφή καταλόγου που έχει στόχο να δώσει στους χρήστες τη δυνατότητα να έρθουν σε επαφή µε νέες ιδέες που αφορούν τη διακόσµηση, τη µαγειρική και τη µόδα. Twitter: micro blogging κοινωνικό δίκτυο µε περιορισµό 140 χαρακτήρων στα posts. Οι χρήστες µπορούν να κάνουν follow άλλους χρήστες και αντίστοιχα να γίνουν followed. Κεντρικοί µηχανισµοί του είναι το hashtag, retweet και favorite. Τα hashtags χρησιµοποιούνται για να κατηγοριοποιηθούν τα tweets σε θεµατικούς κύκλους και να µπορούν να αναζητηθούν. LinkedIn: ιστοχώρος επαγγελµατικής κοινωνικής δικτύωσης. Τα εγγεγραµµένα µέλη του έχουν τη δυνατότητα να δηµιουργήσουν το προσωπικό επαγγελµατικό τους προφίλ, να συνδεθούν µε άλλους χρήστες, να αναζητήσουν εργασία, αλλά και να δηµιουργήσουν πελατολόγιο. Instagram: εφαρµογή κοινωνικής δικτύωσης που δίνει την δυνατότητα λήψης, επεξεργασίας και κοινοποίησης φωτογραφιών και βίντεο στο διαδίκτυο. Οι χρήστες µπορούν να µοιράζονται φωτογραφίες και βίντεο µε τους ακολούθους τους (followers) ή µε επιλεγµένη οµάδα φίλων, να σχολιάζουν και να δηλώνουν ότι µια δηµοσίευση τους αρέσει. Χρησιµοποιείται από πολλές εταιρείες για την διαφήµιση των προϊόντων τους. Google+: κοινωνικό δίκτυο κατασκευασµένο από την Google που επιτρέπει στους χρήστες και σε εταιρείες για να δηµιουργούν κύκλους. Όπως αναφέρθηκε προηγουµένως, θεµελιώδες κοµµάτι της εφαρµογής που υλοποιήθηκε είναι η συλλογή πληροφορίων από τα κοινωνικά δίκτυα για τις αεροπορικές εταιρείες και τις πτήσεις που υποστηρίζονται. Επικρατέστερο κοινωνικό δίκτυο λοιπόν κρίθηκε το twitter καθώς σε αντίθεση µε τα υπόλοιπα έχει τα εξής πλεονεκτήµατα: 1. Δίνει πρόσβαση σε γνώµες που αφορούν εταιρείες. Είναι πολύ συνηθισµένο οι χρήστες να σχολιάζουν µε posts, εταιρείες και τα προϊόντα και τις υπηρεσίες τους. 2. Οι δηµοσιεύσεις γίνονται σε πραγµατικό χρόνο (real time), συνεπώς οι γνώµες και οι σχολιασµοί αλλάζουν συνεχώς επηρεαζόµενα από την επικαιρότητα. 18

19 3. Το φιλτράρισµα και η αναζήτηση των tweets που µας ενδιαφέρουν διευκολύνεται µε την χρήση των hashtags. 4. Το µέγεθος των posts (140 χαρακτήρες) είναι ιδανικό για τους αλγόριθµους ανάλυσης συναισθήµατος. Δηµοσιεύσεις µε µεγαλύτερο µέγεθος αυξάνουν την πολυπλοκότητα και καθιστούν χρονοβόρα την διαδικασία. 5. Προσφέρει κατανοητό και εύχρηστο API που καλύπτει search queries και streaming monitoring. To streaming API δίνει την δυνατότητα συλλογής των tweets σε πραγµατικό χρόνο. 6. Το API του είναι RESTful, πράγµα που σηµαίνει ότι δέχεται HTTP requests και επιστρέφει JSON responses, µορφές µηνυµάτων που υποστηρίζονται σε πολλές γλώσσες προγραµµατισµού αφού είναι ευρέως διαδοµένες. 1.5 Δοµή εργασίας Το κείµενο της διπλωµατικής αποτελείται από 7 κεφάλαια. Στο κεφάλαιο 2 γίνεται αναλυτική περιγραφή της αρχιτεκτονικής της υλοποίησης παρουσιάζοντας κάθε συνιστώσα που συµβάλλει στην λειτουργία του search engine. Σε πρώτη φάση αναλύονται οι πίνακες, τα µοντέλα και η δοµή των βάσεων δεδοµένων MongoDB και MySQL που χρησιµοποιήθηκαν για την αποθήκευση των απαραίτητων δεδοµένων. Η MongoDB χρησιµοποιείται για την αποθήκευση των tweets που αναφέρονται στις αεροπορικές εταιρείες και η MySQL για την αποθήκευση των usernames και passwords των εγγεγραµµένων χρηστών καθώς επίσης της βαθµολόγησης των αεροπορικών εταιρειών. Στην συνέχεια περιγράφονται τα daemons που πλαισιώνουν το background της υλοποίησης και είναι υπεύθυνα για την εκτέλεση βασικών λειτουργιών όπως η συλλογή των tweets και η ανάλυση συναισθήµατος τους. Το τελευταίο κοµµάτι του κεφαλαίου 2, αναφέρεται στο frontend και στο backend δηλαδή τη δοµή των αρχείων που αποτελούν το interface και τις επικοινωνίες µεταξύ τους. Στο κεφάλαιο 3 παρουσιάζονται οι τεχνολογίες στις οποίες βασίστηκε η εφαρµογή και οι λόγοι που επιλέχτηκαν αντί άλλων ανταγωνιστικών. Πιο συγκεκριµένα, αναλύονται τα πλεονεκτήµατα της γλώσσας προγραµµατισµού Node.js, της NoSQL βάσης δεδοµένων MongoDB και της αρχιτεκτονικής λογισµικού REST σύµφωνα την οποία δηµιουργήθηκε web service που επιστρέφει τις πτήσεις. Το κεφάλαιο 4 περιέχει τα screenshots της κάθε σελίδας του interface µε σύντοµη επεξήγηση για τα σηµεία που χρήζουν προσοχή. Στην συνέχεια, στο κεφάλαιο 5 µελετάται, µέσω µετρήσεων, πως το σύστηµα ανταποκρίνεται σε κάποιες περιπτώσεις- γεγονότα µε σύγκριση µε παραδοσιακές µηχανές αναζήτησης ναύλου. Τέλος στο κεφάλαιο 6 προτείνονται µελλοντικές βελτιώσεις και προσθήκες που θα µπορούσαν να καταστήσουν την εφαρµογή πιο ανταγωνιστική. Οι κώδικες όλων των components της εφαρµογής παρατίθενται στο τέλος της διπλωµατικής στο κεφάλαιο 7. 19

20 Κεφάλαιο 2 Αρχιτεκτονική Εφαρµογής 2.1 Γενική Εικόνα Στο κεφάλαιο αυτό θα περιγράφουν αναλυτικά τα µέρη που συνιστούν την µηχανή αναζήτησης της διπλωµατικής. Επειδή ακολουθήθηκε modular λογική στην σχεδίαση της δοµής της εφαρµογής, κάθε component είναι αυτοτελές και επιτελεί ξεχωριστή λειτουργία. Προγράµµατα που τρέχουν στο background, είναι υπεύθυνα για την ανάκτηση tweets που αναφέρονται σε αεροπορικές εταιρείες, για την ανάλυση συναισθήµατος αυτών (µε την βοήθεια ενός sentiment analysis server) και τέλος για την αποθήκευση των πληροφοριών σε κατάλληλες βάσεις δεδοµένων. Οι πληροφορίες αυτές χρησιµοποιούνται από το frontend για τον υπολογισµό των καλύτερων αεροπορικών ναύλων, οι οποίοι εν τέλει προτείνονται στους χρήστες του συστήµατος. Σχήµα 1: Components της εφαρµογής µαζί µε τις τεχνολογίες στις οποίες βασίζονται 20

21 2.2 Βάσεις δεδοµένων Οι βάσεις δεδοµένων αποτελούν σηµαντικό τµήµα της υλοποίησης καθώς σε αυτές αποθηκεύονται τα tweets και η δηµοτικότητα της κάθε αεροπορικής εταιρείας. Το πλεονέκτηµα των βάσεων είναι η άµεση ανάκτηση οποιασδήποτε πληροφορίας χωρίς να χρειάζεται κάποια διεργασία άρα και υπολογιστική ισχύς του συστήµατος. Ακολουθεί λεπτοµερής περιγραφή των 2 βάσεων του συστήµατος: MongoDB Η mongodb χρησιµοποιήθηκε για την συλλογή των tweets που αναφέρονται στις αεροπορικές εταιρείες. Για λόγους ευχρηστίας κάθε εταιρεία αντιπροσωπεύεται στο database µε ένα collection/table στο οποίο αποθηκεύονται το text του κάθε tweet καθώς επίσης και το όνοµα του χρήστη, η ώρα και η γεωγραφική περιοχή δηµοσίευσης και τέλος η γλώσσα/διάλεκτος γραφής. Το παρακάτω σχήµα είναι ενδεικτικό του µοντέλου της mongodb. Σχήµα 2: Μοντέλο MongoDB Collections µαζί µε τα objects τους Πρέπει να σηµειωθεί ότι τα child nodes κάθε collection αεροπορικής εταιρείας στο παραπάνω σχήµα αποτελούν τα αποθηκευµένα tweets και µάλιστα, λόγω χρήσης της 21

22 document-oriented mongodb, ουσιαστικά αντιπροσωπεύουν τα tweet objects. Κάθε tweet object είναι της µορφής : { "_id" : ObjectId("557b11f9ff3f1de002b1572b"), "user" : "Charles Cliff", "language" : "en", "location" : "London", "time" : "Fri Jun 12 17:08: ", "text" : "#BritishAirways #delayed 3 hours just because we can't get a slot at Heathrow #nothappy missing my Friday night" MySQL Ο στόχος της πλατφόρµας που υλοποιήθηκε είναι η εύρεση εισιτηρίων που να προσφέρουν τον καλύτερο συνδυασµό κόστους, user rating και popularity. Το user rating προκύπτει από την βαθµολόγηση (στην κλίµακα των 5) των αεροπορικών εταιρειών από τους χρήστες στο site που υλοποιήθηκε και αποθηκεύονται στον πίνακα starating. Για να υπάρχει έλεγχος στον αριθµό των βαθµολογήσεων, κρίθηκε σκόπιµο να µπορούν να βαθµολογήσουν µόνο µια φόρα οι εγγεγραµµένοι χρήστες. Κατά συνέπεια, κάθε χρήστης που θέλει να βαθµολογήσει πρέπει να κάνει αρχικά register ή login στο σύστηµα και αφού κάνει rate, η σελίδα βαθµολόγησης καθίσταται µη προσβάσιµη. Αυτό λοιπόν γίνεται δυνατό µε την βοήθεια του πίνακα users στον οποίο αποθηκεύονται τα records των χρηστών. Το popularity προκύπτει από το sentiment analysis των tweets που συλλέγονται για τις διάφορες αεροπορικές εταιρείες. Εκ κατασκευής ο αλγόριθµος χαρακτηρίζει το κείµενο ενός tweet ως positive, negative ή neutral και όπως είναι λογικό, αυτή η πληροφορία είναι πολύ σηµαντική για τον υπολογισµό του popularity κάθε carrier καθώς αυτή προκύπτει από το ισοζύγιο του συνόλου θετικών και αρνητικών tweets. Αφού γίνει λοιπόν η ανάλυση συναισθήµατος του text του tweet, το αποτέλεσµα αποθηκεύεται σε 2 πίνακες : twitterating και sentistatistics, απ όπου ο αλγόριθµος εύρεσης καλύτερου εισιτηρίου αντλεί τα απαραίτητα δεδοµένα. Τέλος χωρίς να έχει πρακτική εφαρµογή στην πλατφόρµα ο πίνακας langstatistics µετράει τις αναφορές που γίνονται ανά διάφορες γλώσσες των αεροπορικών εταιρειών, προσφέροντας έτσι πληροφορίες για την προέλευση των πελατών τους. Σχήµα 3: MySQL Schema 22

23 Επεξηγηµατική παρουσίαση Πινάκων Για κάθε εταιρεία (airline) στον πίνακα : starating (star + rating)à αποθηκεύουµε τον αριθµό (num) των βαθµολογήσεων που έχουν γίνει από τους εγγεγραµµένους χρήστες του site και το rating προστίθεται στο συνολικό άθροισµα score. twitterating (twitter + rating)à κρατάµε τον αριθµό των tweets (num) τα οποία έχουµε περάσει από τη διαδικασία sentiment analysis και προσθέτουµε στο score 1 για positive tweet, 0.5 για neutral και 0 για negative. sentistatistics (sentiment + statistics)à αν και φαινοµενικά περιέχονται τις ίδιες πληροφορίες µε τον πίνακα twitterating, επειδή προσµετράται ο αριθµός positive, negative και neutral tweets, προσφέρει παραπάνω πληροφορίες. Βέβαια ο πίνακας twitterating εν τέλει, είναι αυτός που προσφέρει στο σύστηµα τα έτοιµα δεδοµένα για το popularity. langstatistics (language + statistics)à κρατάει τον αριθµό των αναφορών ανά γλώσσα (en, de, it, etc.). Τέλος : users à περιέχει το και τον κωδικό κάθε χρήστη καθώς και αν έχει κάνει rate. 2.3 Twitter API και Sentiment Analysis Σε αυτό το υποκεφάλαιο θα αναφερθούν τα σηµαντικότερα τµήµατα κώδικα της διπλωµατικής εργασίας καθώς το κεντρικό θέµα της ουσιαστικά είναι πως η κοινή γνώµη των χρηστών του twitter για τις διάφορες αεροπορικές εταιρείες, µπορεί να αποτελέσει παράµετρο στο αλγόριθµο εύρεσης του καλύτερου δυνατού αεροπορικού εισιτηρίου για συγκεκριµένη διαδροµή. Ακολουθώντας λοιπόν modular λογική κρίθηκε σωστό το σύστηµα να συνίσταται από 2 τµήµατα. Το πρώτο είναι υπεύθυνο για συλλογή και αποθήκευση των tweets και το δεύτερο για ανάλυση συναισθήµατος του κειµένου των tweets µε στόχο την καταγραφή της πληροφορίας για το popularity κάθε αεροπορικής εταιρείας στις κατάλληλες βάσεις δεδοµένων. Ακολουθεί εκτενής περιγραφή εκάστου µέρους Twitter API Daemons Ως daemons χαρακτηρίζονται τα προγράµµατα τα οποία τρέχουν στο background και στα οποία ο χρήστης δεν έχει άµεσο έλεγχο. Αυτό ακριβώς αποτελούν τα scripts που συλλέγουν τα tweets για τις αεροπορικές εταιρείες καθώς αποτελούν το background και τη βάση της πλατφόρµας που υλοποιήθηκε. Πιο συγκεκριµένα αν θέλαµε να περιγράψουµε την λειτουργία τους, ουσιαστικά παρακολουθούν το twitter για οποιαδήποτε posts που περιέχουν hashtags ή keywords και συνδέονται µε τις airlines που µας ενδιαφέρουν. Για παράδειγµα τα tweets που αναφέρονται στις British Airways θα αποτελούνται σίγουρα από κάποια από τα εξής keywords : #ba, #britishairways, Αν και είθισται για την συλλογή tweets να χρησιµοποιείται το Twitter Search API επειδή µας ενδιαφέρει να κάνουµε track των νέων tweets και όχι retrieve των παλιών που είναι αποθηκευµένα στα database του Twitter, χρησιµοποιήθηκε το Twitter streaming API. Ένα request που προορίζεται για το streaming API, εµπεριέχει το keyword που γίνεται track και µε βάση αυτό δηµιουργείται ένα filter channel. Στην πραγµατικότητα η εγκαθίδρυση connection µε το streaming API είναι ταυτόσηµη µε µια µακρόχρονη HTTP request για την 23

24 οποία σταδιακά κάνουµε parse το εισερχόµενο response - σαν να κατεβάζουµε ασταµάτητα ένα µεγάλο αρχείο µέσω HTTP. Παράδειγµα request and response στο Twitter Streaming API Το request για την αναζήτηση tweets που περιέχουν το keyword twitterapi έχει την µορφή: https://stream.twitter.com/1.1/statuses/filter.json?delimited=length&track=twitterapi Και το response επιστρέφει τα αναµενόµενα tweets σε JSON: HTTP/ OK Content-Type: application/json Transfer-Encoding: chunked 1953 {"text":"man I like me "entities":{"urls":[],"hashtags":[],"user_mentions":[{"indices":[19,30],"name": "Twitter API","id": ,"screen_name":"twitterapi","id_str":" "], "source":"web","contributors":null,"geo":new York, Επειδή είναι απαραίτητο λοιπόν να κάνουµε track πολλές airlines που κάθε µια αντιπροσωπεύεται από ένα πλήθος keywords, δηµιουργούµε πολλά channels (που καθένα παρακολουθεί µια αεροπορική εταιρεία). Πρέπει να σηµειωθεί ότι οποιαδήποτε ανταλλαγή δεδοµένων µε το twitter API, προϋποθέτει ότι αρχικά έχει γίνει authentication του API key του developer, πράγµα που γίνεται στην αρχή του προγράµµατος µας. Στην συνέχεια δηµιουργούνται τα ζητούµενα channels τα οποία όταν βρουν κάποιο tweet που περιέχει τα αναζητούµενα keywords, το αποθηκεύουνε στο κατάλληλο collection στην mongodb. Σχήµα 4: Λειτουργία Twitter API προγράµµατος 24

25 Στο σηµείο αυτό, αξίζει να αναφερθεί ότι δόθηκε ιδιαίτερη προσοχή στην αποθήκευση tweets µε παρόµοιο text. Όπως είναι γνωστό, ένας πολύ συνηθισµένος µηχανισµός του twitter είναι το retweet, µε άλλα λόγια η αναδηµοσίευση του tweet κάποιου χρήστη από άλλους χρήστες διαδικασία πολλές φορές αυτοµατοποιηµένη για τους followers κάποιου σηµαντικού προσώπου ή οργανισµού. Για αυτό λοιπόν υλοποιήθηκε κοµµάτι κώδικα που εξασφαλίζει ότι tweets µε το ίδιο text δεν θα αποθηκεύονται πολλαπλές φορές στην βάση δεδοµένων (θα µπορούσαµε να πούµε ότι το text των tweets λειτουργεί σαν primary key). Τέλος, αυτό το µέρος του κώδικα υλοποιήθηκε µε την γλώσσα προγραµµατισµού Node.JS για την οποία είναι γραµµένες χρήσιµες και εύχρηστες libraries για τις προαναφερθείσες functionalities Sentiment Analysis Η ανάλυση συναισθήµατος του κειµένου των tweets αποτελεί τον κεντρικό άξονα της διπλωµατικής εργασίας. Αν και θα µπορούσε να συµπεριληφθεί στο τµήµα κώδικα που κάνει fetch τα tweets από το twitter API, µε γνώµονα την modular λογική, πραγµατοποιήθηκε σε ξεχωριστό daemon. Από άποψη λειτουργίας, το πρόγραµµα αυτό παρακολουθεί την mongodb για οποιαδήποτε insert tweet πραγµατοποιείται. Στην συνέχεια αποµονώνει το text field του tweet και εκτελεί κάποια επεξεργασία για να διευκολύνει την ανάλυση συναισθήµατος. Δηµιουργείται request που περιέχει το text και στέλνεται στον sentiment analysis server. Ανάλογα µε την απάντηση του server δηµιουργείται αντίστοιχο update query για την MySQL database. Κάθε προαναφερθέν τµήµα αναλύεται στην συνέχεια σχηµατικά: Σχήµα 5: Διαδικασία ανάλυσης συναισθήµατος προγραµµατιστικά 25

26 Mongo Listener Διερωτάται κανείς πως γίνεται η παρακολούθηση των insert στην mongodb. Οι παραδοσιακές βάσεις δεδοµένων έχουν συνήθως triggers όµως στην προκειµένη περίπτωση δεν υποστηρίζονται. Εν τέλει, αυτό καθίσταται δυνατό στην mongodb µε την βοήθεια των replica sets και της oplog. Ένα replica set είναι ένα σύνολο από instances daemon διεργασιών για το MongoDB σύστηµα που φιλοξενούν το ίδιο data set. Σε αυτές τις instances υπάρχει πάντα µία primary διεργασία στην οποία πραγµατοποιούνται όλα τα write operations. Όλες οι υπόλοιπες instances, οι secondaries, εφαρµόζουν τις ίδιες αλλαγές στα data sets τους µε την primary διεργασία, συµβουλευόµενες τα operation records της primary. Τα operation records αυτά βρίσκονται σε µια ειδική collection που λέγεται oplog και µάλιστα αυτή εµπεριέχεται σε όλα τα replica set members. Κατά συνέπεια είναι δυνατόν προγραµµατιστικά, αν έχουν ενεργοποιηθεί τα replica sets στην MongoDB, να εφαρµοστεί listener-watcher-tail στην oplog collection και να ανιχνεύεται οποιαδήποτε αλλαγή γίνεται στην MongoDB. Επειδή η MongoDB είναι document based database, τα records της oplog είναι objects από τα οποία µπορούµε εύκολα να συλλέξουµε το text των tweets. Ακολουθεί ενδεικτικό object από την oplog: Αποθηκευµένο tweet στην MongoDB { "ts" : Timestamp ( , 1), "h" : NumberLong( ), "v" : 2, "op" : "i", "ns" : "mongoapp.easyjet", "o" : { "_id" : ObjectId("55d adbdcc040bbec4"), "user" : "Paredes, Ana", "language" : "en", "location" : "Montreal, Canada", "time" : "Tue Aug 18 15:02: ", "text" : "If you're in Montreal and they lose your suitcase in Europe, #easyjet won't deliver it to you and won't refund your cab to the airport." Όπου το op υποδηλώνει το operation και το o είναι το tweet object Tweet Parsing Η πλειονότητα των tweets περιέχει σύµβολα και links που δυσχεραίνουν την ανάλυση συναισθήµατος καθώς δεν προσφέρουν κάποια ουσιαστική πληροφορία αλλά αντιθέτως αυξάνουν το µέγεθος του κειµένου και κατά συνέπεια την πολυπλοκότητα του αλγορίθµου sentiment analysis. Ως επακόλουθο, κρίθηκε σκόπιµη η αποµάκρυνση των περιττών στοιχείων. Τα περιττά σύµβολα αφαιρέθηκαν µε την standard βιβλιοθήκη της JavaScript για text processing ενώ για τα links έπρεπε να επιστρατευτούν τα regular expressions (RegEx). 26

27 Το παρακάτω regex αποµακρύνει κάθε link που αρχίζει µε http ή https στην JavaScript (δεν επιτρέπονται άλλου είδους links στο twitter) : /(https?:\/\/([-\w\.]+[-\w])+(:\d+)?(\/([\w\/_\.#-]*(\?\s+)?[^\.\s])?)?)/g Υπολογισµός δηµοτικότητας Σχήµα 6: Παράδειγµα του sentiment analysis To text I am happy είναι θετική πρόταση Έχοντας το κείµενο του tweet, το επόµενο στάδιο είναι η αποστολή request στον sentiment analysis server και η παραλαβή του response. Ο αλγόριθµος ανάλυσης συναισθήµατος βασίζεται στην χρήση N-grams µε αγγλικά traindata sets, έτσι συνεπάγεται ότι µόνο τα tweets στην αγγλική γλώσσα αποστέλλονται στον server ενώ η γλώσσα των υπόλοιπων καταγράφεται σαν στατιστικό στοιχείο στον πίνακα langstatistics της MySQL. Ανάλογα αν το response είναι positive, negative ή neutral δηµιουργείται αντίστοιχο update query στον πίνακα της αεροπορικής εταιρείας που αναφέρεται το tweet. Για κάθε tweet συνεπώς που γίνεται ανάλυση συναισθήµατος αυξάνουµε τον µετρητή της αντίστοιχης airline και προσθέτουµε στο συνολικό αθροιστικό score, τιµή σύµφωνα µε την εξής λογική : if (response == 'positive') score = score + 1; else if (response == 'neutral') score = score + 0.5; else score = score + 0; Με αυτό τον τρόπο αν διαιρέσουµε το συνολικό score µε το πλήθος των tweets προκύπτει ένας αριθµός µεταξύ του 0 και το 1, τον οποίο ορίζουµε σαν popularity κάθε αεροπορικής εταιρείας και όσο µεγαλύτερος είναι, τόσο πιο θετική είναι η κοινή γνώµη για αυτή. 2.4 Flights Information Restful API Το πρόγραµµα υπεύθυνο για την επιστροφή των πληροφοριών για τις διαθέσιµες πτήσεις υλοποιήθηκε ως restful web service. Με την βοήθεια του flask python framework δηµιουργήθηκε service το οποίο δέχεται σαν input GET request της µορφής : που περιέχει τα αεροδρόµια αναχώρησης και προορισµού (στην κωδικοποιηµένη µορφή που έχει ορίσει ο International Air Transport Association ) καθώς επίσης και την ηµεροµηνία πτήσης. Στην συνέχεια δηµιουργείται ένα json request µε τα κατάλληλα δεδοµένα που αποστέλνεται στο QPX Express Google API το οποίο µε την σειρά του 27

28 επιστρέφει σε Json τις διαθέσιµες πτήσεις. Στην πραγµατικότητα δηλαδή το υλοποιηµένο restful web service λειτουργεί ως µεσολαβητής και όχι σαν γνήσιο restful service. Σχήµα 7: RESTful web service 2.5 Site frontend and backend Όλο το σύστηµα προγραµµάτων και βάσεων προσφέρει υπηρεσίες που είναι προσβάσιµες από τους χρήστες µέσω του frontend δηλαδή µιας ιστοσελίδας. Πέρα από το frontend όµως είναι απαραίτητο και το backend που υποστηρίζει το site µεσολαβώντας στην επικοινωνία των επιµέρους τµηµάτων του συστήµατος. Το frontend ή αλλιώς το interface αποτελείται από ένα σύνολο σελίδων που κάθε µία προσφέρει διαφορετικές λειτουργίες και οι οποίες συνδέονται µεταξύ τους. Στην συγκεκριµένη περίπτωση υλοποιήθηκε µε PHP, HTML, CSS, JavaScript και jquery. Πρέπει να σηµειωθεί ότι χρησιµοποιήθηκε επίσης το foundation 5 framework. Στην συνέχεια φαίνεται η δοµή του interface µε την κεντρική σελίδα σελίδα να δίνει πρόσβαση στις υπόλοιπες. Αντίστοιχα tickets page είναι η σελίδα που εµφανίζει τα διαθέσιµα εισιτήρια, login & register page, η σελίδα που οι χρήστες εγγράφονται και µπαίνουν στο σύστηµα και τέλος η rate airlines είναι η σελίδα βαθµολόγησης των αεροπορικών εταιρειών. Σχήµα 8: Δοµή ιστοσελίδας 28

29 Κάθε µία από τις παραπάνω σελίδες αντιπροσωπεύεται από ένα σύνολο αρχείων PHP που το κάθε ένα επιτελεί ένα συγκεκριµένο έργο. Αυτό φαίνεται σε σχέση µε το προηγούµενο σχήµα στην συνέχεια: Σχήµα 9: Δοµή ιστοσελίδας µε τα αντίστοιχα PHP αρχεία Κάθε τµήµα αναλύεται στις επόµενες σελίδες Login & Register Page Ένας από τους παράγοντες που επηρεάζει τον αλγόριθµο εύρεσης εισιτηρίων είναι η βαθµολόγηση των αεροπορικών εταιρειών από τους χρήστες του συστήµατος. Κατά την πορεία της υλοποίησης της εργασίας κρίθηκε σκόπιµο να µπορούν να βαθµολογούν µόνο οι εγγεγραµµένοι χρήστες µια φορά για να αποτραπούν τα φαινόµενα αλλοίωσης του rating των airlines. Συνεπώς κάθε χρήστης που επιθυµεί να βαθµολογήσει πρέπει να περάσει από το login ή register page. Προφανώς αν δεν έχει γραφτεί στο σύστηµα, πρέπει δίνοντας ένα και τον κωδικό της επιθυµίας του, να δηµιουργήσει λογαριασµό ενώ στην αντίθετη περίπτωση αρκεί η απλή διαπίστευση των στοιχείων του. Στην συνέχεια δηµιουργείται session περιορισµένης διάρκειας που του παρέχει τα privileges που δικαιούται. Στο σχήµα που επακολουθεί φαίνονται παραστατικά τα αρχεία και οι συναρτήσεις που είναι υπεύθυνες για το login και το register. Το πάνω µέρος αφορά το login και το κάτω το register. 29

30 Σχήµα 10: Συναρτήσεις των PHP αρχείων υπεύθυνα για το login και register Σηµείωση: Εµµέσως από το σχήµα και τα queries φαίνεται πόσο σηµαντική είναι η επικοινωνία µε την βάση δεδοµένων για την εκτέλεση οποιασδήποτε λειτουργίας. Από άποψη δοµής, το logister.php ( login + register ) περιέχει το logiform.php (login + form) και το regifom.php (register + form) δηλαδή τις φόρµες που συµπληρώνουν οι χρήστες, και το καθένα καλεί το login.php και το register.php αντίστοιχα για την εκτέλεση των ονοµαστικών τους λειτουργιών Airlines Page Σε αυτή τη σελίδα οι εγγεγραµµένοι χρήστες βαθµολογούν στην κλίµακα από 1 µέχρι 5 τις αεροπορικές εταιρείες. Το form βρίσκεται στο airlines.php και µε το submit καλείται το rate.php το οποίο αναλαµβάνει την καταχώρηση της βαθµολογίας στην βάση δεδοµένων MySQL. Τέλος βεβαιώνεται ότι ο χρήστης που υπέβαλλε τα ratings, δεν µπορεί να ξαναψηφίσει. Σχήµα 11: Συναρτήσεις των PHP αρχείων υπεύθυνα για τη λειτουργία βαθµολόγησης των αεροπορικών εταιρειών 30

31 2.5.3 Tickets Page Η σελίδα στην οποία εµφανίζονται τα διαθέσιµα εισιτήρια. Αποτελεί ουσιαστικά το πιο σηµαντικό µέρος της διεπαφής καθώς τα αποτελέσµατα προκύπτουν από τον συνδυασµό των υπηρεσιών των υποστηρικτικών προγραµµάτων και των απαραίτητων πληροφοριών των βάσεων δεδοµένων. Σχήµα 12: Background διαδικασία για την εµφάνιση εισιτηρίων Ο χρήστης συµπληρώνει στο index.php το αεροδρόµιο προέλευσης και προορισµού καθώς επίσης και την ηµεροµηνία που επιθυµεί να ταξιδέψει και πατάει submit. Στην συνέχεια το script tickets.php αναλαµβάνει να παρουσιάσει τα εισιτήρια µε αυτές τις επιλογές. Η πρώτη ενέργεια που εκτελεί είναι να στείλει request στο RESTful Web service το οποίο επιστρέφει σε µορφή JSON τις διαθέσιµες πτήσεις. Πριν την τελική τους εµφάνιση όµως, είναι απαραίτητη κάποια προεπεξεργασία του αρχείου JSON σε συνδυασµό µε το αρχείο supportedcarriers.json το οποίο θα αναφερθεί αργότερα. Το response από το flights restful service περιέχει σαν objects στον πίνακα tripoptions τις διαθέσιµες πτήσεις µε επιµέρους λεπτοµέρειες-πληροφορίες τους. Μάλιστα για κάθε πτήση, όπως είναι λογικό, αναφέρεται εκτός από το πλήρες όνοµα της αεροπορικής εταιρείας που την αναλαµβάνει και το IATA της. Το IATA είναι ένας διψήφιος κωδικός τον οποίο αναθέτει ο International Air Transport Association σε κάθε airline και χρησιµοποιείται σαν συντοµογραφία για ευκολία. Για παράδειγµα οι Aegean Airlines συµβολίζονται µε το A3 και οι British Airways µε το BA. Το supportedcarriers.json αντιστοιχίζει κάθε εταιρεία µέσω του IATA της στο database name που έχει δοθεί στην υλοποίηση και ουσιαστικά είναι το κλειδί για να αντλήσουµε τις πληροφορίες που θέλουµε από τους πίνακες της βάσης δεδοµένων. Με αυτή τη λογική και λόγω ταχύτητας εκτέλεσης, στο php script δηµιουργείται έναν associative array-map µε τα παραπάνω δεδοµένα. Έτσι λοιπόν, για κάθε πτήση γίνεται parse το όνοµα της αεροπορικής εταιρείας και το database name µε τα οποία αντλούµε το user rating και το popularity στο twitter από την MySQL. Με αυτά τα 2 στοιχεία αλλά και µε το κόστος της πτήσης, δηµιουργούµε σε html ένα div class= box για κάθε πτήση που έχει την εξής µορφή: <div class="box" data-cost="232.15" data-user="2.33" data-twi="0.67 >... 31

32 Πολλές πτήσεις πραγµατοποιούνται σε 2 ή παραπάνω σκέλη και µάλιστα από πολλαπλές αεροπορικές εταιρείες. Σε αυτές τις περιπτώσεις θεωρούµε ότι το user rating και το popularity προέρχεται από την εταιρεία του πρώτου σκέλους. Θα µπορούσαµε εναλλακτικά να υπολογίζουµε τον µέσο όρο όλων των πτήσεων ή να χρησιµοποιήσουµε τα στοιχεία της αεροπορικής εταιρείας που πραγµατοποιεί το σκέλος µε την µεγαλύτερη διάρκεια καθώς είθισται σ αυτή να καταλογίζεται όλη η πτήση. Με τα HTML5 custom data attributes (data-*), όπως φαίνεται παραπάνω, αποθηκεύουµε το κόστος, την βαθµολογία χρηστών και τη βαθµολογία από το twitter στο html. Κατά αυτό τον τρόπο µετατοπίζουµε την διαδικασία της ταξινόµησης των εισιτηρίων από το backend στο frontend. Με άλλα λόγια, όταν ο χρήστης θέλει να αλλάξει το κριτήριο ταξινόµησης των εισιτηρίων, αντί να γίνεται ανανέωση στον browser και κατά συνέπεια αναµετάδοση των ίδιων πληροφοριών µε διαφορετική σειρά, η αλλαγή γίνεται στον browser µέσω jquery. Σε αυτό το σηµείο πρέπει να εξηγηθεί ο αλγόριθµος ταξινόµησης και πως τα 3 κριτήρια µεταφράζονται σε ισοδύναµη κλίµακα όταν το κόστος είναι κάποιος αριθµός µε τιµές που ξεκινάν από το 90 και φτάνουν µέχρι το ενώ το popularity είναι ένας δεκαδικός αριθµός µεταξύ του 0 και του 1. Επιλέγουµε λοιπόν να τα µετατρέψουµε όλα στην κλίµακα του 1. User rating Το user rating είναι στην κλίµακα του 5 οπότε µε απλή διαίρεση µετασχηµατίζεται στου 1. Κόστος Το πρώτο βήµα στην λογική είναι ότι η πτήση µε πιο φθηνό εισιτήριο θα ήταν λογικό στην κλίµακα του 1 να έχει τιµή 1 ενώ η πιο ακριβή πτήση να είχε τιµή 0. Αντίστοιχα στα ενδιάµεσα εισιτήρια πρέπει να δοθούν τιµές στην κλίµακα του 1 που να αντιπροσωπεύουν το πόσο κοντά είναι στην µικρότερη τιµή. Ακολουθεί παράδειγµα στο οποίο διαφαίνεται η λογική : Έστω έχουµε εισιτήρια µε τιµές 200, 250, 500 και Πρώτο βήµα υπολογίζουν την διαφορά της ελάχιστης από την µέγιστη τιµή à Εδώ έχουµε = 400, η µέγιστη διαφορά. 2. Για κάθε τιµή υπολογίζουµε την διαφορά από την ελάχιστη τιµή και διαιρούµε µε την µέγιστη διαφορά για να βρούµε την αναλογική διαφορά από την ελάχιστη τιµή. 200 à = 0 à = à = 50 à = 0, à = 300 à = 0, à = 400à = 1 3. Έχοντας βρει τις αναλογικές διαφορές από την ελάχιστη τιµή που αντιπροσωπεύεται, αφαιρούµε κάθε µια από το 1 για να βρούµε τις αναλογικές τιµές στην κλίµακα του à 1 0 = à 1-0,125 = 0, à 1-0,75 = 0, à 1 1 = 0 32

33 Με αυτόν το τρόπο έχουµε όλες τις µεταβλητές στην ίδια κλίµακα και συνεπώς µπορούν να αποτελέσουν συντελεστές για την ταξινόµηση των εισιτηρίων, προσδίδοντας τους διάφορα βάρη. Δηλαδή για κάθε εισιτήριο υπολογίζουµε την παράσταση : x * cost + y * user rating + z * twitter rating ( όπου x, y, z τα αντίστοιχα βάρη) και τη χρησιµοποιούµε για την ταξινόµηση. Ακολουθούν κάποια κριτήρια µε διάφορους συνδυασµούς βαρών που εφαρµόζονται εύκολα σε jquery: Κριτήριο Κόστους Ταξινοµούµε απλά µε βάση το κόστος. Είναι η default επιλογή σε όλα τα flight search engines. Κριτήριο Ισοδύναµης Κατανοµής Κάθε µεταβλητή συνεισφέρει ισοδύναµα στην ταξινόµηση. Οπότε έχουµε x = y = z = 0,33. Κριτήριο µε βάρος στο κόστος Μας ενδιαφέρει το κυρίως το κόστος χωρίς να αγνοούµε τα υπόλοιπα 2. Η παράσταση είναι 0,6 * cost + 0,3 * popularity + 0,1 * user rating. Εκτός από τους παραπάνω συνδυασµούς, µπορούν να προκύψουν πολλοί άλλοι που να εκφράζουν συγκεκριµένες προτιµήσεις και όπως είναι λογικό, κάθε συνδυασµός έχει ως αποτέλεσµα διαφορετική σειρά ταξινόµησης εισιτηρίων. Στην υλοποίηση σηµαντικό µέρος αποτέλεσε η γλώσσα προγραµµατισµού jquery που επιτρέπει το reorder των προαναφερθέντων html divs µε ειδική συνάρτηση. 33

34 Κεφάλαιο 3 Τεχνολογίες 3.1 Εισαγωγή Σε αυτό το σηµείο θα ήταν καλό να αναφερθεί το software design technique µε βάση το οποίο δοµήθηκε όλο το project. Όπως είναι αναµενόµενο, µια µηχανή αναζήτησης εισιτηρίων που λαµβάνει υπόψη το popularity των αεροπορικών εταιρειών στο twitter, βασίζεται σε ένα σύστηµα υπηρεσιών και βάσεων δεδοµένων. Ουσιαστικά αποτελεί ένα multilayered application που κάθε υπηρεσία του επιτελεί διαφορετικό σκοπό, για αυτό κιόλας αναπτύχθηκε µε modular λογική. Στην modular design technique κάθε component υλοποιείται ξεχωριστά, πολλές φορές σε διαφορετική γλώσσα προγραµµατισµού-τεχνολογία, καθιστώντας το έτσι replaceable. Αντίστοιχα, από προγραµµατιστικής άποψης, το debugging είναι πολύ πιο εύκολο καθώς κάθε component έχει συγκεκριµένο functionality. Το σύστηµα εν τέλει, αποτελείται από επιµέρους components µε συγκεκριµένη λειτουργία που επικοινωνούν µέσω ορισµένων inputs και outputs σε network protocols. Στην συνέχεια θα αναλυθούν οι τεχνολογίες που χρησιµοποιήθηκαν για κάθε ξεχωριστό τµήµα του application. 3.2 Node.JS Κατά την υλοποίηση προέκυψε η ανάγκη για κάποια γλώσσα προγραµµατισµού που να διαθέτει βιβλιοθήκες για το twitter Search και Streaming API καθώς επίσης και drivers για την βάση δεδοµένων mongodb. Αυτό το τµήµα κώδικα είναι υπεύθυνο για την ανίχνευση των tweets που αναφέρονται σε αεροπορικές εταιρείες και στην συνέχεια για την αποθήκευση τους στην mongodb. Ενώ λοιπόν, πολλές γλώσσες προγραµµατισµού τηρούν τις παραπάνω προϋποθέσεις όπως η Java, python, ruby, υπήρχε ένα δεδοµένο που έπαιξε καθοριστικό ρόλο στην επιλογή της γλώσσας προγραµµατισµού, η δυνατότητα να εξυπηρετηθεί µεγάλος όγκος operations όπως database queries και 3 rd party API calls. Για αυτόν τον λόγο αλλά και για πολλούς άλλους που αναλυθούν στην συνέχεια, επιλέχτηκε η Node.JS. Η Node.js είναι φτιαγµένη να µπορεί να διαχειρίζεται asynchronous I/O. Ενώ σε άλλα περιβάλλοντα υπάρχουν περιορισµένα κοµµάτια διαθέσιµα σε ασύγχρονες δυνατότητες, στην Node.JS τα πάντα γίνονται ασύγχρονα. Σε σχέση µε τις παραδοσιακές τεχνικές όπου κάθε operation απαιτεί ένα νέο thread, καταλαµβάνοντας RAM του συστήµατος µέχρι να µην υπάρχει πλέον διαθέσιµη, η Node.JS λειτουργεί σε single-thread, χρησιµοποιώντας non-blocking I/O κλήσεις και τα callbacks των συναρτήσεων JavaScript επιτρέπει να γίνονται συγχρόνως χιλιάδες ταυτόχρονα operations. Non-blocking ή ασύγχρονες Inputs/Outputs είναι ένα είδος λειτουργιών που δεν µπλοκάρουν την διαδικασία ενός προγράµµατος κατά την διάρκεια τους. Εναλλακτικά, είναι δυνατόν να ξεκινήσει κάποιο task και η διαδικασία επεξεργασίας χωρίς να χρειάζεται να έχουν ολοκληρωθεί αυτές οι 34

35 λειτουργίες. Με αυτόν τον τρόπο µπορούµε να υποστηρίξουµε µεγάλο αριθµό από ταυτόχρονων queries στην mongodb καθώς επίσης δηµιουργήσουµε πολλά streaming channels για το twitter API εύκολα και αποδοτικά. Σχήµα 13: Σύγκριση Node.JS µε παραδοσιακές γλώσσες προγραµµατισµού Ένα άλλο πλεονέκτηµα της node.js είναι η ευκολία επικοινωνίας µε object DBs όπως η mongodb. Data αποθηκευµένη σε µορφή JSON επιτρέπει στην Node.JS να λειτουργεί χωρίς να χρειάζεται data conversion. Για παράδειγµα, στην Ruby on Rails, είναι απαραίτητη η µετατροπή του JSON σε binary models για οποιαδήποτε επεξεργασία και στην συνέχεια η επαναφορά σε JSON. Αλλά µε Node.JS µπορούµε να εκθέσουµε JSON objects σε ένα REST API κατευθείαν. Επιπλέον, δεν χρειάζεται να µετατρέπουµε σε JSON όταν κάνουµε reading ή writing στην mongodb. Συνεπώς αποφεύγουµε τις µετατροπές, χρησιµοποιώντας ένα uniform data serialization format και στον client και στον server αλλά και στο database. Άλλα 2 σηµαντικά πλεονεκτήµατα της Node.JS είναι ότι ο Node Package Manager και ότι ουσιαστικά είναι JavaScript. Το NPM είναι ο package manager της Node.JS και προσφέρει εύκολο installation των modules σε κάθε operating system. Μάλιστα είναι community driven και για αυτό υπάρχουν libraries για τα πάντα. Τέλος το γεγονός ότι είναι JavaScript (V8), την καθιστά κατανοητή, µη απαιτητική στο γράψιµο και µε καλό documentation. 3.3 MongoDB Αναµφισβήτητα ένα από τα µεγαλύτερα προβλήµατα για τους developers που χρησιµοποιούν σχεσιακές βάσεις δεδοµένων είναι το object-relational impedance mismatch. Δηλαδή τα SQL ερωτήµατα δεν είναι κατάλληλα για τις object oriented δοµές που χρησιµοποιούνται στις περισσότερες applications. Η αποθήκευση και η ανάκτηση ενός object µε όλα τα σχετικά δεδοµένα απαιτεί πολλαπλά και πολύπλοκα queries, καθιστώντας την πολυπλοκότητα του data mapping και του query generation αρκετά υψηλή. Ένα άλλο πρόβληµα που αντιµετωπίζουν οι relational databases είναι η εκθετική αύξηση της ποσότητας δεδοµένων. Μια άµεση επίπτωση είναι το λεγόµενο big data πρόβληµα, όπου τα SQL queries δεν έχουν αποδεκτή επίδοση, ειδικά όταν γίνονται πολλές 35

Social Network : Programming on FACEBOOK

Social Network : Programming on FACEBOOK Social Network : Programming on FACEBOOK Συντελεστές: Παύλος Τούλουπος Ευθυμία Παπαδοπούλου Ξάνθη Μάρκου Κοινωνικά Δίκτυα Κοινωνικό δίκτυο προέρχεται από την ψυχολογία αφορά μια κοινωνική δομή ατόμων τα

Διαβάστε περισσότερα

Βασικές Έννοιες Web Εφαρμογών

Βασικές Έννοιες Web Εφαρμογών ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΔΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ Τεχνολογίες και Εφαρμογές Διαδικτύου Βασικές Έννοιες Web Εφαρμογών Κατερίνα Πραματάρη Τεχνολογίες και Εφαρμογές Διαδικτύου Περιεχόμενα

Διαβάστε περισσότερα

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

Ημερομηνία Παράδοσης: 4/4/2013 Δράση 9.14 / Υπηρεσία εντοπισμού λογοκλοπής Κυρίως Παραδοτέο / Σχεδιασμός και ανάπτυξη λογισμικού (λογοκλοπής) και βάσης δεδομένων (αποθετηρίου) Επιμέρους Παραδοτέο 9.14.1.4 / Πληροφοριακό σύστημα υπηρεσίας

Διαβάστε περισσότερα

Liveschool Marketing Services

Liveschool Marketing Services Liveschool Marketing Services Περιεχόμενα Βελτιστοποίηση website SEO... 3 Social media design & creation... 4 Social media management... 4 Διαγωνισμοί Facebook... 5 Google Adwords... 5 Facebook Ads...

Διαβάστε περισσότερα

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

Π Τ Υ Χ Ι Α Κ Η Ε Ρ Γ Α Σ Ι Α ΑΝΩΤΑΤΟ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙ ΕΥΤΙΚΟ Ι ΡΥΜΑ ΠΕΙΡΑΙΑ ΤΜΗΜΑ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΤΟΜΕΑΣ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Η/Υ, ΠΛΗΡΟΦΟΡΙΚΗΣ & ΙΚΤΥΩΝ Εργ. Τεχνολογίας Λογισμικού & Υπηρεσιών S 2 ELab Π Τ Υ Χ Ι Α

Διαβάστε περισσότερα

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

Φορολογική Βιβλιοθήκη. Θανάσης Φώτης Προγραμματιστής Εφαρμογών Φορολογική Βιβλιοθήκη Θανάσης Φώτης Προγραμματιστής Εφαρμογών Το έργο Η φορολογική βιβλιοθήκη πρόκειται για ένα έργο που φιλοδοξεί να αποτελέσει σημαντικό βοήθημα για τον επαγγελματία λογιστή και όχι μόνο.

Διαβάστε περισσότερα

Εισαγωγη στα SOCIal MEDIA

Εισαγωγη στα SOCIal MEDIA Εισαγωγη στα SOCIal MEDIA ΕΙΔΙΚΑ ΘΕΜΑΤΙΚΑ ΠΡΟΓΡΑΜΜΑΤΑ ΔιοΙκηση, ΟργΑνωση και ΠληροφορικΗ για Μικρο-MεσαΙες ΕπιχειρΗσεις 14/5/2014 ΑΓΓΕΛΙΚΗ ΑΝΔΡΟΥΤΣΟΠΟΥΛΟΥ Εισαγωγή Κοινωνικά δίκτυα, αναπόσπαστο κομμάτι

Διαβάστε περισσότερα

ΤΕΙ ΚΑΒΑΛΑΣ. Πτυχιακή εργασία ΕΙΣΑΓΩΓΗ. Μιλτιάδης Κακλαμάνης

ΤΕΙ ΚΑΒΑΛΑΣ. Πτυχιακή εργασία ΕΙΣΑΓΩΓΗ. Μιλτιάδης Κακλαμάνης Σελίδα 1από ΤΕΙ ΚΑΒΑΛΑΣ Πτυχιακή εργασία Δικτυακή Εφαρμογή διαχείρισης ηλεκτρονικών εγγράφων υπηρεσίας. ΕΙΣΑΓΩΓΗ Μιλτιάδης Κακλαμάνης Σελίδα 2από Κατάλογος περιεχομένων ΕΙΣΑΓΩΓΗ...1 Σχετιζόμενα πρόσωπα...3

Διαβάστε περισσότερα

Αξιολόγηση Υπηρεσιών ιαδικτύου µέσω Περιπτώσεων Μελέτης

Αξιολόγηση Υπηρεσιών ιαδικτύου µέσω Περιπτώσεων Μελέτης Αξιολόγηση Υπηρεσιών ιαδικτύου µέσω Περιπτώσεων Μελέτης Κωστής Αϊβαλής Μηχανικός Πληροφορικής TU-Berlin 2/5/2008 ΕΑΠ-ΓΤΠ61-Κωστής Αϊβαλής 1 Εισαγωγή Η ταχύτητα επεξεργασίας των εφαρµογών διαδικτυακών υπηρεσιών

Διαβάστε περισσότερα

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

Διαχείριση Ειδοποιήσεων με Κινητές Συσκευές Διαχείριση Ειδοποιήσεων με Κινητές Συσκευές Λαμπαδαρίδης Αντώνιος el04148@mail.ntua.gr Διπλωματική εργασία στο Εργαστήριο Συστημάτων Βάσεων Γνώσεων και Δεδομένων Επιβλέπων: Καθηγητής Τ. Σελλής Περίληψη

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ì ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ "ʺΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΒΑΣΙΚΟΣ ΠΑΡΑΓΟΝΤΑΣ ΓΙΑ ΤΗΝ ΟΙΚΟΝΟΜΙΚΗ ΚΑΙ ΚΟΙΝΩΝΙΚΗ ΑΝΑΠΤΥΞΗ ΤΟΥ ΑΙΓΑΙΟΠΕΛΑΓΙΤΙΚΟΥ ΧΩΡΟΥ"ʺ «Στήήριξη και Ανάάδειξη Πολυνησιωτικώών ΑΕΙ» ΔΡΑΣΗ 4: Εκπαίίδευση

Διαβάστε περισσότερα

ΟΙΚΟΝΟΜΙΚΗ ΠΡΟΣΦΟΡΑ ΣΧΕ ΙΑΣΗΣ ΚΑΙ ΚΑΤΑΣΚΕΥΗΣ ΙΑ ΙΚΤΥΑΚΟΥ ΠΛΗΡΟΦΟΡΙΑΚΟΎ ΣΥΣΤΗΜΑΤΟΣ. Τρίτη, 7 Φεβρουαρίου 2012

ΟΙΚΟΝΟΜΙΚΗ ΠΡΟΣΦΟΡΑ ΣΧΕ ΙΑΣΗΣ ΚΑΙ ΚΑΤΑΣΚΕΥΗΣ ΙΑ ΙΚΤΥΑΚΟΥ ΠΛΗΡΟΦΟΡΙΑΚΟΎ ΣΥΣΤΗΜΑΤΟΣ. Τρίτη, 7 Φεβρουαρίου 2012 ΟΙΚΟΝΟΜΙΚΗ ΠΡΟΣΦΟΡΑ ΣΧΕ ΙΑΣΗΣ ΚΑΙ ΚΑΤΑΣΚΕΥΗΣ ΙΑ ΙΚΤΥΑΚΟΥ ΠΛΗΡΟΦΟΡΙΑΚΟΎ ΣΥΣΤΗΜΑΤΟΣ Τρίτη, 7 Φεβρουαρίου 2012 Για την εταιρεία ACTS : Παπαγεωργίου Κων/νος Ποτιέ 21/ Χανιά, ΤΚ 73100 AΦΜ: 065439343 Τηλ./Fax:

Διαβάστε περισσότερα

Πανεπιστήµιο Πειραιώς Τµήµα Πληροφορικής

Πανεπιστήµιο Πειραιώς Τµήµα Πληροφορικής oard Πανεπιστήµιο Πειραιώς Τµήµα Πληροφορικής Πρόγραµµα Μεταπτυχιακών Σπουδών «Πληροφορική» Μεταπτυχιακή ιατριβή Τίτλος ιατριβής Masters Thesis Title Ονοµατεπώνυµο Φοιτητή Πατρώνυµο Ανάπτυξη διαδικτυακής

Διαβάστε περισσότερα

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

ΣΥΓΚΡΙΤΙΚΗ ΜΕΛΕΤΗ ΤΕΧΝΟΛΟΓΙΩΝ ΔΙΑΔΙΚΤΥΑΚΩΝ ΥΠΗΡΕΣΙΩΝ ΚΑΙ ΑΞΙΟΛΟΓΗΣΗ ΤΗΣ ΤΕΧΝΟΛΟΓΙΑΣ REST ΠΛΑΣΤΑΡΑΣ ΕΥΡΙΠΙΔΗΣ ΣΥΓΚΡΙΤΙΚΗ ΜΕΛΕΤΗ ΤΕΧΝΟΛΟΓΙΩΝ ΔΙΑΔΙΚΤΥΑΚΩΝ ΥΠΗΡΕΣΙΩΝ ΚΑΙ ΑΞΙΟΛΟΓΗΣΗ ΤΗΣ ΤΕΧΝΟΛΟΓΙΑΣ REST ΠΛΑΣΤΑΡΑΣ ΕΥΡΙΠΙΔΗΣ ΘΕΣΣΑΛΟΝΙΚΗ, 2016 ΕΙΣΑΓΩΓΗ Μια διαδικτυακή υπηρεσία μπορεί να περιγραφεί απλά σαν μια οποιαδήποτε

Διαβάστε περισσότερα

Πληροφοριακά Συστήµατα

Πληροφοριακά Συστήµατα Nell Dale John Lewis Chapter 12 Πληροφοριακά Συστήµατα Στόχοι Ενότητας Η κατανόηση της έννοιας «Πληροφοριακό Σύστηµα» Επεξήγηση της οργάνωσης λογιστικών φύλλων (spreadsheets) Επεξήγηση της ανάλυσης δεδοµένων

Διαβάστε περισσότερα

Οικονομική Προσφορά Κατασκευή Ιστοσελίδας

Οικονομική Προσφορά Κατασκευή Ιστοσελίδας Οικονομική Προσφορά Κατασκευή Ιστοσελίδας 2015 Η εταιρία μας Η Moving up είναι μια εταιρία που δραστηριοποιείται στον τομέα των ολοκληρωμένων μορφών επικοινωνίας και διαφήμισης.όποιο και αν είναι το διαφημιστικό

Διαβάστε περισσότερα

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

ΟΙΚΟΝΟΜΙΚΗ ΠΡΟΣΦΟΡΑ ΣΧΕ ΙΑΣΗΣ ΚΑΙ ΚΑΤΑΣΚΕΥΗΣ web εφαρµογής - ηλεκτρονικού κατατήµατος για έξυπνα κινητά ΟΙΚΟΝΟΜΙΚΗ ΠΡΟΣΦΟΡΑ ΣΧΕ ΙΑΣΗΣ ΚΑΙ ΚΑΤΑΣΚΕΥΗΣ web εφαρµογής - ηλεκτρονικού κατατήµατος για έξυπνα κινητά Για την STUDIO KOSTA BODA ILLUM Χανίων Πέµπτη, 9 Φεβρουαρίου 2012 Για την εταιρεία ACTS : Παπαγεωργίου

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Πτυχιακή Εργασία Θέμα Διαδικτυακή Μουσική Εγκυκλοπαίδεια με PHP & MySQL Πιστόλας Κωνσταντίνος, Α.Μ : 119/03 Κάκαρης Παντελής, Α.Μ : 88/03 Εξεταστική

Διαβάστε περισσότερα

Εφαρµογή: Σύστηµα ιαχείρισης ιαδικτυακού Περίπτερου / Ιστοσελίδας στον διαδικτυακό τόπο kalliergea.gr

Εφαρµογή: Σύστηµα ιαχείρισης ιαδικτυακού Περίπτερου / Ιστοσελίδας στον διαδικτυακό τόπο kalliergea.gr ..χτίζουµε την ιστοσελίδα σας στο Internet www.kalliergea.gr Λάουρα Π. Καζακράντε «Καλλιεργαία» Πληροφορική - Internet - ιαφήµιση - Μεταφράσεις Τηλ.: 211 0104925, 695 6118589 Email: info@kalliergea.gr

Διαβάστε περισσότερα

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

ΜΕΛΕΤΗ ΣΧΕΔΙΑΣΗ ΕΦΑΡΜΟΓΗΣ ΣΕ ΥΠΟΛΟΓΙΣΤΙΚΟ ΝΕΦΟΣ (CLOUD COMPUTING) ΜΕ ΕΜΦΑΣΗ ΣΤΗΝ ΚΑΤΑΣΚΕΥΗ ΔΕΝΤΡΩΝ. ΤΕΙ ΠΕΙΡΑΙΑ ΤΜΗΜΑ ΗΥΣ Θέμα: ΜΕΛΕΤΗ ΣΧΕΔΙΑΣΗ ΕΦΑΡΜΟΓΗΣ ΣΕ ΥΠΟΛΟΓΙΣΤΙΚΟ ΝΕΦΟΣ (CLOUD COMPUTING) ΜΕ ΕΜΦΑΣΗ ΣΤΗΝ ΚΑΤΑΣΚΕΥΗ ΔΕΝΤΡΩΝ. Εισηγητής: Δ. Ν. Καλλέργης, MSc. Φοιτήτρια: Κοντζοπούλου Παναγιώτα Εισαγωγή

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΜΣ «ΠΡΟΗΓΜΕΝΑ ΣΥΣΤΗΜΑΤΑ ΠΛΗΡΟΦΟΡΙΚΗΣ» ΚΑΤΕΥΘΥΝΣΗ «ΕΥΦΥΕΙΣ ΤΕΧΝΟΛΟΓΙΕΣ ΕΠΙΚΟΙΝΩΝΙΑΣ ΑΝΘΡΩΠΟΥ - ΥΠΟΛΟΓΙΣΤΗ»

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΜΣ «ΠΡΟΗΓΜΕΝΑ ΣΥΣΤΗΜΑΤΑ ΠΛΗΡΟΦΟΡΙΚΗΣ» ΚΑΤΕΥΘΥΝΣΗ «ΕΥΦΥΕΙΣ ΤΕΧΝΟΛΟΓΙΕΣ ΕΠΙΚΟΙΝΩΝΙΑΣ ΑΝΘΡΩΠΟΥ - ΥΠΟΛΟΓΙΣΤΗ» ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΜΣ «ΠΡΟΗΓΜΕΝΑ ΣΥΣΤΗΜΑΤΑ ΠΛΗΡΟΦΟΡΙΚΗΣ» ΚΑΤΕΥΘΥΝΣΗ «ΕΥΦΥΕΙΣ ΤΕΧΝΟΛΟΓΙΕΣ ΕΠΙΚΟΙΝΩΝΙΑΣ ΑΝΘΡΩΠΟΥ - ΥΠΟΛΟΓΙΣΤΗ» ΜΕΤΑΠΤΥΧΙΑΚΗ ΙΑΤΡΙΒΗ ΤΟΥ ΕΥΘΥΜΙΟΥ ΘΕΜΕΛΗ ΤΙΤΛΟΣ Ανάλυση

Διαβάστε περισσότερα

ΔΑΒΒΕΤΑΣ ΑΘΑΝΑΣΙΟΣ ΤΕΙ ΑΘΗΝΑΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Χρήση του Twitter ως μέσο ενημέρωσης cs121018@teiath.gr

ΔΑΒΒΕΤΑΣ ΑΘΑΝΑΣΙΟΣ ΤΕΙ ΑΘΗΝΑΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Χρήση του Twitter ως μέσο ενημέρωσης cs121018@teiath.gr Απεικόνιση και χαρτογράφηση ενός hashtag σε real time ΔΑΒΒΕΤΑΣ ΑΘΑΝΑΣΙΟΣ ΤΕΙ ΑΘΗΝΑΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Χρήση του Twitter ως μέσο ενημέρωσης cs121018@teiath.gr Εργαλεία Χρησιμοποιήθηκαν εργαλεία και βιβλιοθήκες

Διαβάστε περισσότερα

Οικονομική Προσφορά Διαχείριση Social Media

Οικονομική Προσφορά Διαχείριση Social Media Οικονομική Προσφορά Διαχείριση Social Media 2015 Η εταιρία μας Η Moving up είναι μια εταιρία που δραστηριοποιείται στον τομέα των ολοκληρωμένων μορφών επικοινωνίας και διαφήμισης.όποιο και αν είναι το

Διαβάστε περισσότερα

ΠΕΡΙΛΗΨΗ Vcommunity V Community

ΠΕΡΙΛΗΨΗ Vcommunity V Community ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ Υλοποίηση ιαδικτυακού Συστήµατος Ανταλλαγής Προϊόντων και Υπηρεσιών The

Διαβάστε περισσότερα

Σύστημα Ηλεκτρονικού Πρωτοκόλλου. Σχεδιασμός Υποσυστημάτων

Σύστημα Ηλεκτρονικού Πρωτοκόλλου. Σχεδιασμός Υποσυστημάτων Unified IT services Αγ. Παρασκευής 67 15234 Χαλάνδρι http://www.uit.gr Σύστημα Ηλεκτρονικού Πρωτοκόλλου Σχεδιασμός Υποσυστημάτων ΕΛΛΑΚ Ημερομηνία: 10/1/2011 UIT Χαλάνδρι Αγ. Παρασκευής 67 15234 210 6835289

Διαβάστε περισσότερα

Συγκριτικά Πλεονεκτήµατα Γραµµατείας 2003 έναντι Γραµµατείας 2.5

Συγκριτικά Πλεονεκτήµατα Γραµµατείας 2003 έναντι Γραµµατείας 2.5 Συγκριτικά Πλεονεκτήµατα Γραµµατείας 2003 έναντι Γραµµατείας 2.5 ιαφορετική αρχιτεκτονική: Κοινή βάση δεδοµένων, υνατότητες διασύνδεσης διαφορετικών συστηµάτων Η ανάγκη για την βελτίωση της ποιότητας των

Διαβάστε περισσότερα

11/ Social Media. Η διείσδυση των Μέσων Κοινωνικής Δικτύωσης στην Ελλάδα.

11/ Social Media. Η διείσδυση των Μέσων Κοινωνικής Δικτύωσης στην Ελλάδα. 11/2012 12-2016 Social Media 2016 Η διείσδυση των Μέσων Κοινωνικής Δικτύωσης στην Ελλάδα Ημερομηνία δημοσίευσης 17/3/2016 www.publicissue.gr Η Public Issue ιδρύθηκε το 2001. Εξειδικεύεται στην πολιτική

Διαβάστε περισσότερα

(SEO) - Ανοίγοντας τους ορίζοντες τις ΜΜΕ Ελληνικής τουριστικής επιχείρησης στο ιαδίκτυο

(SEO) - Ανοίγοντας τους ορίζοντες τις ΜΜΕ Ελληνικής τουριστικής επιχείρησης στο ιαδίκτυο (SEO) - Ανοίγοντας τους ορίζοντες τις ΜΜΕ Ελληνικής τουριστικής επιχείρησης στο ιαδίκτυο SEO Η βελτιστοποίηση µηχανών αναζήτησης είναι ένα σύνολο µεθοδολογιών που στοχεύουν στην ευνοϊκής κατάταξή ενός

Διαβάστε περισσότερα

Ανοικτά Δεδομένα. Η εμπειρία του OpenDataCloud

Ανοικτά Δεδομένα. Η εμπειρία του OpenDataCloud Ανοικτά Δεδομένα Προκλήσεις και Ευκαιρίες: Η εμπειρία του OpenDataCloud Κώστας Σαΐδης, PhD Πάροχοι Ανοικτών Δεδομένων datagov.gr diavgeia.gr geodata.gov.gr Πυροσβεστικό σώμα Ελληνική Αστυνομία Υπουργείο

Διαβάστε περισσότερα

ΔΙΑΔΙΚΤΥΑΚΗ ΠΡΟΒΟΛΗ ΚΑΙ ΔΙΑΧΕΙΡΙΣΗ

ΔΙΑΔΙΚΤΥΑΚΗ ΠΡΟΒΟΛΗ ΚΑΙ ΔΙΑΧΕΙΡΙΣΗ ΙΔΡΥΜΑ ΝΕΟΛΑΙΑΣ ΚΑΙ ΔΙΑ ΒΙΟΥ ΜΑΘΗΣΗΣ ΓΕΝΙΚΗ ΔΙΕΥΘΥΝΣΗ ΔΡΑΣΤΗΡΙΟΤΗΤΩΝ ΚΑΙ ΤΕΧΝΙΚΩΝ ΕΡΓΩΝ ΤΜΗΜΑ ΤΕΧΝΙΚΗΣ ΣΤΗΡΙΞΗΣ ΕΥΡΩΠΑΙΚΩΝ ΠΡΟΓΡΑΜΜΑΤΩΝ ΚΕΝΤΡΑ ΔΙΑ ΒΙΟΥ ΜΑΘΗΣΗΣ ΑΠ 7/ΑΠ 8 ΔΙΑΔΙΚΤΥΑΚΗ ΠΡΟΒΟΛΗ ΚΑΙ ΔΙΑΧΕΙΡΙΣΗ

Διαβάστε περισσότερα

Κοινωνικά Δίκτυα & Καλές Περιβαλλοντικές Πρακτικές

Κοινωνικά Δίκτυα & Καλές Περιβαλλοντικές Πρακτικές Κοινωνικά Δίκτυα & Καλές Περιβαλλοντικές Πρακτικές Αγγελική Καραματσούκη karamaag@gmail.com Πράσινες Ιδέες 22/10/2014 Γνωριμία 2 Αγγελική Καραματσούκη Πτυχίο Νοσηλευτικής, Πτυχίο Πληροφορικής Διδακτορικό

Διαβάστε περισσότερα

How to register an account with the Hellenic Community of Sheffield.

How to register an account with the Hellenic Community of Sheffield. How to register an account with the Hellenic Community of Sheffield. (1) EN: Go to address GR: Πηγαίνετε στη διεύθυνση: http://www.helleniccommunityofsheffield.com (2) EN: At the bottom of the page, click

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΔΥΤΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΔΥΤΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ TΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Χειμερινό Εξάμηνο (6ο) Διδάσκων: Κων/νος Στεργίου 6/4/2014 Σύστημα Κράτησης Αεροπορικών Θέσεων Εργασία

Διαβάστε περισσότερα

Το γεγονός ότι αποτελεί λογισµικό ανοικτού κώδικα το καθιστά αρκετά ευέλικτο σε συνεχείς αλλαγές και βελτιώσεις. Υπάρχει µια πληθώρα χρηστών που το χρ

Το γεγονός ότι αποτελεί λογισµικό ανοικτού κώδικα το καθιστά αρκετά ευέλικτο σε συνεχείς αλλαγές και βελτιώσεις. Υπάρχει µια πληθώρα χρηστών που το χρ ΤΕΙ Ιονίων Νήσων Άλλες Πλατφόρµες Ασύγχρονης Τηλεκπαίδευσης εκτός του e-class Είναι ένα πακέτο λογισµικού για διεξαγωγή ηλεκτρονικών µαθηµάτων µέσω διαδικτύου, το οποίο προσφέρει ολοκληρωµένες Υπηρεσίες

Διαβάστε περισσότερα

Η χρήση του MOODLE από την οπτική γωνία του ιαχειριστή

Η χρήση του MOODLE από την οπτική γωνία του ιαχειριστή Ανοικτή και Εξ Αποστάσεως Εκπαίδευση Χρησιµοποιώντας το Εκπαιδευτικό Περιβάλλον του MOODLE. Open and Distance Learning Using MOODLE Learning Environment Αθανάσιος Ι. Μάργαρης, Ευθύµιος. Κότσιαλος Πανεπιστήµιο

Διαβάστε περισσότερα

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

Περίληψη ιπλωµατικής Εργασίας Περίληψη ιπλωµατικής Εργασίας Θέµα: Πρότυπη Εφαρµογή ιαλειτουργικότητας για Φορητές Συσκευές Όνοµα: Κωνσταντίνος Χρηστίδης Επιβλέπων: Ιωάννης Βασιλείου Συν-επιβλέπων: Σπύρος Αθανασίου 1. Αντικείµενο Αντικείµενο

Διαβάστε περισσότερα

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

Δομή παρουσίασης. Σχεδιασμός και υλοποίηση συστήματος παρακολούθησης και ελέγχου πωλητών και δημιουργία εφαρμογής σε έξυπνο κινητό ΣχεδιασμοΣ και υλοποιηση συστηματοσ παρακολουθησησ και ελεγχου πωλητων και δημιουργια εφαρμογησ σε εξυπνο κινητο Επιβλέπων: Δρ. Μηνάς Δασυγένης Καψάλης Αθανάσιος 16 Οκτωβρίου 2013 Δομή παρουσίασης 1. Εισαγωγή

Διαβάστε περισσότερα

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client ΕΣΔ 516 Τεχνολογίες Διαδικτύου Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client Περιεχόμενα Περιεχόμενα Javascript και HTML Βασική σύνταξη Μεταβλητές Τελεστές Συναρτήσεις

Διαβάστε περισσότερα

PHP/MySQL και Project

PHP/MySQL και Project PHP/MySQL και Project Μια απλή διαδικτυακή εφαρμογή Γεώργιος Ευαγγελίδης Τμήμα Εφαρμοσμένης Πληροφορικής Σχολή Επιστημών Πληροφορίας Πανεπιστήμιο Μακεδονίας Περιεχόμενα PHP (Middle tier) Διαδικτυακές εφαρμογές

Διαβάστε περισσότερα

hel-col@otenet.gr Κωνσταντίνος Παρασκευόπουλος Καθηγητής Πληροφορικής (ΠΕ19 MSc) Ελληνικό Κολλέγιο Θεσσαλονίκης kparask@hellenic-college.

hel-col@otenet.gr Κωνσταντίνος Παρασκευόπουλος Καθηγητής Πληροφορικής (ΠΕ19 MSc) Ελληνικό Κολλέγιο Θεσσαλονίκης kparask@hellenic-college. Χρήση της Διεπαφής Προγραμματισμού Εφαρμογής Google Maps για τη δημιουργία διαδραστικού χάρτη με τα Μνημεία Παγκόσμιας Πολιτιστικής Κληρονομιάς της ΟΥΝΕΣΚΟ στη Θεσσαλονίκη Εμμανουήλ Τσάμης 1, Κωνσταντίνος

Διαβάστε περισσότερα

Τίτλος Πλατφόρµα Ασύγχρονης Τηλεκπαίδευσης. Συντάκτης. Ακαδηµαϊκό ιαδίκτυο GUnet Οµάδα Ασύγχρονης Τηλεκπαίδευσης

Τίτλος Πλατφόρµα Ασύγχρονης Τηλεκπαίδευσης. Συντάκτης. Ακαδηµαϊκό ιαδίκτυο GUnet Οµάδα Ασύγχρονης Τηλεκπαίδευσης Τίτλος Πλατφόρµα Ασύγχρονης Τηλεκπαίδευσης Συντάκτης Ακαδηµαϊκό ιαδίκτυο GUnet Οµάδα Ασύγχρονης Τηλεκπαίδευσης Ηµεροµηνία Μάιος 2004 Πίνακας Περιεχοµένων ΕΙΣΑΓΩΓΗ 3 ΦΙΛΟΣΟΦΙΑ ΠΛΑΤΦΟΡΜΑΣ 4 ΒΑΣΙΚΑ ΣΤΟΙΧΕΙΑ

Διαβάστε περισσότερα

Τεχνικές ταξινόµησης αποτελεσµάτων µηχανών αναζήτησης µε βάση την ιστορία του χρήστη

Τεχνικές ταξινόµησης αποτελεσµάτων µηχανών αναζήτησης µε βάση την ιστορία του χρήστη Τεχνικές ταξινόµησης αποτελεσµάτων µηχανών αναζήτησης µε βάση την ιστορία του χρήστη Όνοµα: Νικολαΐδης Αντώνιος Επιβλέπων: Τ. Σελλής Περίληψη ιπλωµατικής Εργασίας Συνεπιβλέποντες: Θ. αλαµάγκας, Γ. Γιαννόπουλος

Διαβάστε περισσότερα

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

Λιόλιου Γεωργία. ιατµηµατικό Πρόγραµµα Μεταπτυχιακών Σπουδών στα Πληροφοριακά Συστήµατα ιατµηµατικό Πρόγραµµα Μεταπτυχιακών Σπουδών στα Πληροφοριακά Συστήµατα Λιόλιου Γεωργία ΕπιβλέπουσαΚαθηγήτρια: ΣατρατζέµηΜάγια, καθηγήτρια, τµ. ΕφαρµοσµένηςΠληροφορικής, ΠΑΜΑΚ Εισαγωγή Γενικά στοιχεία εφαρµογή

Διαβάστε περισσότερα

Εισαγωγή στα Μέσα Κοινωνικής Δικτύωσης

Εισαγωγή στα Μέσα Κοινωνικής Δικτύωσης Εισαγωγή στα Μέσα Κοινωνικής Δικτύωσης Pinterest Τμήμα Ψηφιακών Μέσων και Επικοινωνίας Δομή Εργαστηρίου Εισαγωγή Facebook (Χ2) Twitter Pinterest Instagram YouTube Wordpress Google + LinkedIn Hootsuite

Διαβάστε περισσότερα

Web and HTTP. Βασικά Συστατικά: Web Server Web Browser HTTP Protocol

Web and HTTP. Βασικά Συστατικά: Web Server Web Browser HTTP Protocol HTTP Protocol Web and HTTP Βασικά Συστατικά: Web Server Web Browser HTTP Protocol Web Servers (1/2) Ένα πρόγραμμα (λογισμικό) που έχει εγκατασταθεί σε ένα υπολογιστικό σύστημα (έναν ή περισσότερους υπολογιστές)

Διαβάστε περισσότερα

Εισαγωγή στην Πληροφορική

Εισαγωγή στην Πληροφορική Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Εισαγωγή στην Πληροφορική Ενότητα 8: Λειτουργικά Συστήματα Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά

Διαβάστε περισσότερα

Οικονομική Προσφορά Πρόταση Πακέτου Κατασκευής & Προώθησης Ιστοσελίδας

Οικονομική Προσφορά Πρόταση Πακέτου Κατασκευής & Προώθησης Ιστοσελίδας Οικονομική Προσφορά Πρόταση Πακέτου Κατασκευής & Προώθησης Ιστοσελίδας 2016 Πρόταση εκδόθηκε : 01.01.2016 Πρόταση ισχύει μέχρι : 01.01.2017 Εκπρόσωπος εταιρείας : Ρελλος Πέτρος Managing Partner & Creative

Διαβάστε περισσότερα

ΕΠΙΧΕΙΡΗΣΙΑΚΑ ΠΡΟΓΡΑΜΜΑΤΑ «ΑΝΤΑΓΩΝΙΣΤΙΚΟΤΗΤΑ & ΕΠΙΧΕΙΡΗΜΑΤΙΚΟΤΗΤΑ» ΚΑΙ ΠΕΡΙΦΕΡΕΙΩΝ ΣΕ ΜΕΤΑΒΑΣΗ ΕΘΝΙΚΟ ΣΤΡΑΤΗΓΙΚΟ ΠΛΑΙΣΙΟ ΑΝΑΦΟΡΑΣ ΕΣΠΑ

ΕΠΙΧΕΙΡΗΣΙΑΚΑ ΠΡΟΓΡΑΜΜΑΤΑ «ΑΝΤΑΓΩΝΙΣΤΙΚΟΤΗΤΑ & ΕΠΙΧΕΙΡΗΜΑΤΙΚΟΤΗΤΑ» ΚΑΙ ΠΕΡΙΦΕΡΕΙΩΝ ΣΕ ΜΕΤΑΒΑΣΗ ΕΘΝΙΚΟ ΣΤΡΑΤΗΓΙΚΟ ΠΛΑΙΣΙΟ ΑΝΑΦΟΡΑΣ ΕΣΠΑ ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ, ΔΙΑ ΒΙΟΥ ΜΑΘΗΣΗΣ ΚΑΙ ΘΡΗΣΚΕΥΜΑΤΩΝ ΕΙΔΙΚΗ ΥΠΗΡΕΣΙΑ ΔΙΑΧΕΙΡΙΣΗΣ ΚΑΙ ΕΦΑΡΜΟΓΗΣ ΔΡΑΣΕΩΝ ΣΤΟΥΣ ΤΟΜΕΙΣ ΤΗΣ ΕΡΕΥΝΑΣ ΤΗΣ ΤΕΧΝΟΛΟΓΙΚΗΣ ΑΝΑΠΤΥΞΗΣ ΚΑΙ ΤΗΣ ΚΑΙΝΟΤΟΜΙΑΣ (ΕΥΔΕ-ΕΤΑΚ)

Διαβάστε περισσότερα

Ηλεκτρονική Διαφήμιση. Αντωνιάδου Όλγα

Ηλεκτρονική Διαφήμιση. Αντωνιάδου Όλγα Ηλεκτρονική Διαφήμιση Αντωνιάδου Όλγα Διαφήμιση στο διαδίκτυο Το διαδίκτυο είναι αναμφισβήτητα ένα τεράστιο πεδίο προώθησης και διαφήμισης υπηρεσιών και προϊόντων. Η ποσότητα της πληροφορίας που διακινείται

Διαβάστε περισσότερα

Προγραμματισμός και Συστήματα στον Παγκόσμιο Ιστό Ενότητα 3: Server Side Scripting II PHP & MySQL

Προγραμματισμός και Συστήματα στον Παγκόσμιο Ιστό Ενότητα 3: Server Side Scripting II PHP & MySQL Προγραμματισμός και Συστήματα στον Παγκόσμιο Ιστό Ενότητα 3: Server Side Scripting II PHP & MySQL Καθ. Ιωάννης Γαροφαλάκης Πολυτεχνική Σχολή Μηχανικών Η/Υ & Πληροφορικής Σκοποί ενότητας Σκοπός της παρούσας

Διαβάστε περισσότερα

Μελέτη περίπτωσης συστήµατος διαχείρισης οπτικοακουστικού περιεχοµένου δηµιουργηµένου από χρήστες Flickr

Μελέτη περίπτωσης συστήµατος διαχείρισης οπτικοακουστικού περιεχοµένου δηµιουργηµένου από χρήστες Flickr 1 Μελέτη περίπτωσης συστήµατος διαχείρισης οπτικοακουστικού περιεχοµένου δηµιουργηµένου από χρήστες Flickr 2 3 Εισαγωγή Η λειτουργικότητα που προσφέρει µια εφαρµογή υπολογιστών, χρησιµοποιώντας µια διεπαφή,

Διαβάστε περισσότερα

Βάσεις Δεδομένων Ενότητα 1

Βάσεις Δεδομένων Ενότητα 1 ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Ενότητα 1: Εισαγωγή στις Ιωάννης Μανωλόπουλος, Καθηγητής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

Διαβάστε περισσότερα

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

ΟΙ ΨΗΦΙΑΚΕΣ ΕΙΚΟΝΙΚΕΣ ΚΟΙΝΟΤΗΤΕΣ ΩΣ ΔΟΜΕΣ ΣΤΗΡΙΞΗΣ ΤΟΥ ΕΚΠΑΙΔΕΥΤΙΚΟΥ ΈΡΓΟΥ 2 Ο ΣΥΝΕΔΡΙΟ ΣΤΗ ΣΥΡΟ ΤΠΕ ΣΤΗΝ ΕΚΠΑΙΔΕΥΣΗ 351 ΟΙ ΨΗΦΙΑΚΕΣ ΕΙΚΟΝΙΚΕΣ ΚΟΙΝΟΤΗΤΕΣ ΩΣ ΔΟΜΕΣ ΣΤΗΡΙΞΗΣ ΤΟΥ ΕΚΠΑΙΔΕΥΤΙΚΟΥ ΈΡΓΟΥ Τζουμάκας Βασίλης Καθηγητής Πληροφορικής στο Παπαστράτειο Γυμνάσιο Αγρινίου vtzoum@sch.gr

Διαβάστε περισσότερα

8ο Πανελλήνιο Συμποσιο Ωκεανογραφίας & Αλιείας 637

8ο Πανελλήνιο Συμποσιο Ωκεανογραφίας & Αλιείας 637 8ο Πανελλήνιο Συμποσιο Ωκεανογραφίας & Αλιείας 637 Υλοποιηση νεων τεχνολογιων (Web GIS, Application Servers) για τη δυναμικη προσβαση μεσω διαδικτυου στη βαση δεδομενων του Ελληνικου Εθνικου Κεντρου Ωκεανογραφικων

Διαβάστε περισσότερα

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

Παρουσίαση Θερινού Σχολείου. Αριστεία ΕΛ/ΛΑΚ ΤΕΙ Αθήνας Παρουσίαση Θερινού Σχολείου Αριστεία ΕΛ/ΛΑΚ ΤΕΙ Αθήνας 2 Στόχος Στόχος Θερινού Σχολείου 3 η εντατική, πρακτική εκπαίδευση των συμμετεχόντων με απώτερο σκοπό τη συμμετοχή τους στη συνεργατική ανάπτυξη Έργου

Διαβάστε περισσότερα

COMPANY PROFILE. Έως το 2006 έχοντας σαν κύριο πεδίο δράσης το Word of Mouth Marketing, η

COMPANY PROFILE. Έως το 2006 έχοντας σαν κύριο πεδίο δράσης το Word of Mouth Marketing, η COMPANY PROFILE Η Citrine είναι ένα διαφημιστικό agency. Ιδρύθηκε το 2004 και είναι μία από τις πρώτες εταιρίες στην Ευρώπη που αφουγκράστηκαν τον παλμό της εποχής αφού στράφηκε σε καινοτόμες και εναλλακτικές

Διαβάστε περισσότερα

ΕΛΑΧΙΣΤΕΣ ΑΠΑΙΤΗΣΕΙΣ ΕΞΟΠΛΙΣΜΟΥ... 22 ΕΠΙΚΟΙΝΩΝΙΑ... 23

ΕΛΑΧΙΣΤΕΣ ΑΠΑΙΤΗΣΕΙΣ ΕΞΟΠΛΙΣΜΟΥ... 22 ΕΠΙΚΟΙΝΩΝΙΑ... 23 Πλατφόρµα Ασύγχρονης Τηλεκπαίδευσης GUnet e-class Ακαδηµαϊκό ιαδίκτυο GUnet Οµάδα Ασύγχρονης Τηλεκπαίδευσης Τίτλος Πλατφόρµα Ασύγχρονης Τηλεκπαίδευσης Συντάκτης Ακαδηµαϊκό ιαδίκτυο GUnet Οµάδα Ασύγχρονης

Διαβάστε περισσότερα

Μέρος 3 ο : Βασικές Έννοιες για δυναμικές ιστοσελίδες

Μέρος 3 ο : Βασικές Έννοιες για δυναμικές ιστοσελίδες Μέρος 3 ο : Βασικές Έννοιες για δυναμικές ιστοσελίδες Εισαγωγή-Σκοπός. Τρόποι δημιουργίας δυναμικών ιστοσελίδων. Dynamic Web Pages. Dynamic Web Page Development Using Dreamweaver. Τρόποι δημιουργίας δυναμικών

Διαβάστε περισσότερα

Εισαγωγή στα Μέσα Κοινωνικής Δικτύωσης

Εισαγωγή στα Μέσα Κοινωνικής Δικτύωσης Εισαγωγή στα Μέσα Κοινωνικής Δικτύωσης Facebook (1 ο Μέρος) Ερατώ Κουστουμπάρδη Τμήμα Ψηφιακών Μέσων και Επικοινωνίας Σκοπός του Εργαστηρίου Να εισάγει τους φοιτητές στον κόσμο των μέσων κοινωνικής δικτύωσης

Διαβάστε περισσότερα

GoDigital.CMS Content Management System. Πλήρης διαχείριση περιεχομένου ιστοσελίδας

GoDigital.CMS Content Management System. Πλήρης διαχείριση περιεχομένου ιστοσελίδας GoDigital.CMS Content Management System Πλήρης διαχείριση περιεχομένου ιστοσελίδας Γενική περιγραφή Πλήρης λύση ηλεκτρονικής παρουσίας Το GoDigital.CMS είναι μία πλήρη εφαρμογή διαχείρισης ηλεκτρονικής

Διαβάστε περισσότερα

Cloud Computing & Data Management (Υπολογιστικά Νέφη & Διαχείριση Δεδομένων)

Cloud Computing & Data Management (Υπολογιστικά Νέφη & Διαχείριση Δεδομένων) Cloud Computing & Data Management (Υπολογιστικά Νέφη & Διαχείριση Δεδομένων) Δημήτρης Ζεϊναλιπούρ Λέκτορας Τμήμα Πληροφορικής Πανεπιστήμιο Κύπρου Αξιοποίηση Νέων Τεχνολογιών και η Εφαρμογή τους στα Κυπριακά

Διαβάστε περισσότερα

Internet Marketing. www.webkey.gr info@webkey.gr 694 8888 640

Internet Marketing. www.webkey.gr info@webkey.gr 694 8888 640 Internet Marketing www.webkey.gr info@webkey.gr 694 8888 640 Τι είναι το Internet Marketing? To Marketing είναι η διαδικασία η οποία συνδέει ένα προϊόν ή μια υπηρεσία με τον καταναλωτή. Το Internet Marketing

Διαβάστε περισσότερα

Δυναμικές Ιστοσελίδες Προγραμματισμός στην πλευρά του client

Δυναμικές Ιστοσελίδες Προγραμματισμός στην πλευρά του client ΕΣΔ516 Τεχνολογίες Διαδικτύου Δυναμικές Ιστοσελίδες Προγραμματισμός στην πλευρά του client Περιεχόμενα Περιεχόμενα Η Διεπίπέδη αρχιτεκτονική (2-tier architecture) Η τριεπίπεδη αρχιτεκτονική (3-tier architecture)

Διαβάστε περισσότερα

Κοινωνικά δίκτυα (Web 2.0) και εκπαίδευση

Κοινωνικά δίκτυα (Web 2.0) και εκπαίδευση Κοινωνικά δίκτυα (Web 2.0) και εκπαίδευση Ο εικοστός πρώτος αιώνας θα µπορούσε εύκολα να χαρακτηριστεί ως τεχνολογικός αιώνας µιας και τα νέα δεδοµένα µαρτυρούν αύξηση της χρήσης του ηλεκτρονικού υπολογιστή,

Διαβάστε περισσότερα

Tales & Trails. apps4thessaloniki 2016

Tales & Trails. apps4thessaloniki 2016 Tales & Trails apps4thessaloniki 2016 the digiwalkers team Πανισκάκη Κική, πτυχιούχος τμήματος Πληροφορικής ΑΠΘ, σχεδίαση & ανάπτυξη εφαρμογής Βακάλη Αθηνά, Kαθηγήτρια Πληροφορικής στο Αριστοτέλειο Πανεπιστήμιο

Διαβάστε περισσότερα

Σχεδιασµός βασισµένος σε συνιστώσες

Σχεδιασµός βασισµένος σε συνιστώσες Σχεδιασµός βασισµένος σε συνιστώσες 1 Ενδεικτικά περιεχόµενα του κεφαλαίου Ποια είναι τα "άτοµα", από τα οποία κατασκευάζονται οι υπηρεσίες; Πώς οργανώνουµε τις συνιστώσες σε ένα αρµονικό σύνολο; Τι είναι

Διαβάστε περισσότερα

Εργαλεία ανάπτυξης εφαρμογών internet Ι

Εργαλεία ανάπτυξης εφαρμογών internet Ι IEK ΟΑΕΔ ΚΑΛΑΜΑΤΑΣ ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΟΦΟΡΙΚΗΣ Εργαλεία ανάπτυξης εφαρμογών internet Ι Διδάσκουσα: Κανελλοπούλου Χριστίνα ΠΕ19 Πληροφορικής 4 φάσεις διαδικτυακών εφαρμογών 1.Εφαρμογές στατικής πληροφόρησης

Διαβάστε περισσότερα

GoDigital.Store E-Commerce Platform

GoDigital.Store E-Commerce Platform GoDigital.Store E-Commerce Platform Πλήρης διαχείριση καταλόγου και καταστήματος banet Α.Ε. Βαλαωρίτου 20 54625 Θεσσαλονίκη Τ.2310253999 F.2310253998 www.banet.gr info@banet.gr GoDigital.Store Γενική περιγραφή

Διαβάστε περισσότερα

Νέες τεχνολογίες εισάγονται ή χρησιµοποιούνται

Νέες τεχνολογίες εισάγονται ή χρησιµοποιούνται special report τoυ Γιώργου Φετοκάκη / gfetokakis@boussias.com Jobs scheduling Η χρυσή τοµή της αυτοµατοποίησης Μια λύση job scheduling πρέπει να είναι αρκετά περιεκτική. Πρέπει να υποστηρίζει την ενσωµάτωση

Διαβάστε περισσότερα

Οδηγός LinkedIn. «10 συμβουλές επέκτασης της επιχείρησης σας, χρησιμοποιώντας το LinkedIn» Provided to you by

Οδηγός LinkedIn. «10 συμβουλές επέκτασης της επιχείρησης σας, χρησιμοποιώντας το LinkedIn» Provided to you by Οδηγός LinkedIn «10 συμβουλές επέκτασης της επιχείρησης σας, χρησιμοποιώντας το LinkedIn» Provided to you by 2 Οδηγός Linkedin, πώς να βοηθήσετε την επιχείρηση σας χρησιμοποιώντας το Ο ποιο κάτω οδηγός

Διαβάστε περισσότερα

Cloud Computing with Google and Microsoft. Despoina Trikomitou Andreas Diavastos Class: EPL425

Cloud Computing with Google and Microsoft. Despoina Trikomitou Andreas Diavastos Class: EPL425 Cloud Computing with Google and Microsoft Despoina Trikomitou Andreas Diavastos Class: EPL425 Σχεδιάγραμμα Εισαγωγή Τεχνολογίες Cloud Computing Περιγραφή Εργασίας Επιτεύγματα Εργασίας Συμπεράσματα Cloud

Διαβάστε περισσότερα

ΕΤΑΙΡΙΚΗ TAYTOTHTA. Λογότυπο. Επαγγελματική κάρτα

ΕΤΑΙΡΙΚΗ TAYTOTHTA. Λογότυπο. Επαγγελματική κάρτα COMPANY PROFILE Η Citrine είναι ένα Word of Mouth & Digital Marketing Agency. Ιδρύθηκε το 2004 και είναι μία από τις πρώτες εταιρίες στην Ευρώπη που σχεδίασαν και υλοποίησαν καμπάνιες στα Social Media

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΖΩΓΡΑΦΟΥ 157 73, ΑΘΗΝΑ ΕΒΓ - ΙΠΛ-2003-1 20 Ιανουαρίου 2003 Σύγκριση Αλγορίθµων

Διαβάστε περισσότερα

Εισαγωγή στα Μέσα Κοινωνικής Δικτύωσης

Εισαγωγή στα Μέσα Κοινωνικής Δικτύωσης Εισαγωγή στα Μέσα Κοινωνικής Δικτύωσης Twitter Τμήμα Ψηφιακών Μέσων και Επικοινωνίας Δομή Εργαστηρίου Εισαγωγή Facebook (Χ2) Twitter Pinterest YouTube Instagram Wordpress Google + LinkedIn Hootsuite Επανάληψη

Διαβάστε περισσότερα

Τεχνολογίες Πληροφορίας και Επικοινωνίας στον Τουρισμό (Γ εξάμηνο)

Τεχνολογίες Πληροφορίας και Επικοινωνίας στον Τουρισμό (Γ εξάμηνο) Τεχνολογίες Πληροφορίας και Επικοινωνίας στον Τουρισμό (Γ εξάμηνο) Ακαδ. Έτος 2014-15 Β. Φερεντίνος e-tourism και internet ΤΕΙ ΙΟΝΙΩΝ ΝΗΣΩΝ - ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ ΚΑΙ ΟΙΚΟΝΟΜΙΑΣ - ΛΕΥΚΑΔΑ ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ

Διαβάστε περισσότερα

Κατανεμημένα Συστήματα. Javascript LCR example

Κατανεμημένα Συστήματα. Javascript LCR example Κατανεμημένα Συστήματα Javascript LCR example Javascript JavaScript All JavaScript is the scripting language of the Web. modern HTML pages are using JavaScript to add functionality, validate input, communicate

Διαβάστε περισσότερα

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

Συνοπτικός Οδηγός Χρήσης του Moodle για τον Καθηγητή Συνοπτικός Οδηγός Χρήσης του Moodle για τον Καθηγητή 1 Πίνακας Περιεχομένων 1. Εισαγωγή... 4 1.1 Περιβάλλον Moodle...4 1.2 Χρήση ονόματος χρήστη και κωδικού...4 1.3 Δημιουργία νέου μαθήματος...4 1.3.1

Διαβάστε περισσότερα

Περιγραφή του EcoTruck

Περιγραφή του EcoTruck ...... Πανεπιστήμιο Μακεδονίας 16 Μαΐου 2010 . Με λίγα λόγια Online εφαρμογή για τη διαχείριση ανακύκλωσης και επαναχρησιμοποίησης της χάρτινης ύλης Η ιδέα δημιουργήθηκε για τη συμμετοχή στον Πανελλήνιο

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών 44 Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών Διδακτικοί στόχοι Σκοπός του κεφαλαίου είναι οι μαθητές να κατανοήσουν τα βήματα που ακολουθούνται κατά την ανάπτυξη μιας εφαρμογής.

Διαβάστε περισσότερα

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

Π Τ Υ Χ Ι Α Κ Η Ε Ρ Γ Α Σ Ι Α ΑΝΩΤΑΤΟ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙ ΕΥΤΙΚΟ Ι ΡΥΜΑ ΠΕΙΡΑΙΑ ΤΜΗΜΑ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΤΟΜΕΑΣ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Η/Υ, ΠΛΗΡΟΦΟΡΙΚΗΣ & ΙΚΤΥΩΝ Εργ. Τεχνολογίας Λογισμικού & Υπηρεσιών S 2 E Lab Π Τ Υ Χ Ι

Διαβάστε περισσότερα

ΕΓΧΕΙΡΙΔΙΟ ΜΑΘΗΤΗ. της Πλατφόρμας Τηλεκατάρτισης

ΕΓΧΕΙΡΙΔΙΟ ΜΑΘΗΤΗ. της Πλατφόρμας Τηλεκατάρτισης ΕΓΧΕΙΡΙΔΙΟ ΜΑΘΗΤΗ της Πλατφόρμας Τηλεκατάρτισης ΠΕΡΙΕΧΟΜΕΝΑ 1. Εισαγωγή...2 2. Αρχική σελίδα, Εισαγωγή & Περιβάλλον Συστήματος...3 2.1. Αρχική σελίδα εισαγωγής...3 2.2. Εισαγωγή στην Πλατφόρμα Τηλε-κατάρτισης...4

Διαβάστε περισσότερα

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ. Ηλεκτρονικό Εμπόριο

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ. Ηλεκτρονικό Εμπόριο ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ Ηλεκτρονικό Εμπόριο Αναπτύσσοντας ένα Ηλεκτρονικό Κατάστημα Ηλεκτρονικό Εμπόριο Λειτουργικότητα Εφαρμογής Κατάλογος προϊόντων Καλάθι

Διαβάστε περισσότερα

Περιήγηση Σύνταξη στο Clilstore

Περιήγηση Σύνταξη στο Clilstore Περιήγηση Σύνταξη στο Clilstore Αρχικά βήματα Αυτός είναι ένας οδηγός που δείχνει βήμα βήμα πώς να δημιουργείτε ένα online μάθημα το οποίο περιέχει ένα βίντεο και κείμενο του οποίου όλες οι λέξεις είναι

Διαβάστε περισσότερα

ΟΔΗΓΟΣ ΧΡΗΣΗΣ ΥΠΗΡΕΣΙΑΣ [ΥΠΗΡΕΣΊΑ 7 - ΥΠΗΡΕΣΊΑ

ΟΔΗΓΟΣ ΧΡΗΣΗΣ ΥΠΗΡΕΣΙΑΣ [ΥΠΗΡΕΣΊΑ 7 - ΥΠΗΡΕΣΊΑ ΟΔΗΓΟΣ ΧΡΗΣΗΣ ΥΠΗΡΕΣΙΑΣ [ΥΠΗΡΕΣΊΑ 7 - ΥΠΗΡΕΣΊΑ ΑΝΑΠΑΡΑΓΩΓΉΣ ΚΑΤ ΑΠΑΊΤΗΣΗ (VIDEO ON DEMAND) ΜΕ ΠΑΡΆΛΛΗΛΗ ΑΡΧΕΙΟΘΈΤΗΣΗ ΤΟΥ ΟΠΤΙΚΟΑΚΟΥΣΤΙΚΟΎ ΥΛΙΚΟΎ] ΓΙΑ ΤΟN ΧΡΗΣΤΗ [13/01/2014] έκδοση: 1.0 1 Περιεχόμενα 1.

Διαβάστε περισσότερα

interactivecommunication Search Marketing White Paper Φεβρουάριος 2007 2007, Cybertechnics Ltd. All rights reserved.

interactivecommunication Search Marketing White Paper Φεβρουάριος 2007 2007, Cybertechnics Ltd. All rights reserved. interactivecommunication White Paper Φεβρουάριος 2007 2007, Cybertechnics Ltd. All rights reserved. ToSearchenginemarketing, ή SEM, αποτελείται απόμια σειρά marketing μεθόδων για την αύξηση τηςεμφάνισηςτου

Διαβάστε περισσότερα

Εισαγωγή στα Μέσα Κοινωνικής Δικτύωσης

Εισαγωγή στα Μέσα Κοινωνικής Δικτύωσης Εισαγωγή στα Μέσα Κοινωνικής Δικτύωσης Facebook (2 Μέρος) Ερατώ Κουστουμπάρδη Τμήμα Ψηφιακών Μέσων και Επικοινωνίας Δομή Εργαστηρίου Εισαγωγή Facebook (Χ2) Twitter Pinterest YouTube Instagram Wikipedia

Διαβάστε περισσότερα

Ανάπτυξη Λογισµικού Κοινωνικής ικτύωσης για Ερευνητικούς Σκοπούς

Ανάπτυξη Λογισµικού Κοινωνικής ικτύωσης για Ερευνητικούς Σκοπούς ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ Πρόγραµµα Μεταπτυχιακών Σπουδών Τµήµατος Εφαρµοσµένης Πληροφορικής Ανάπτυξη Λογισµικού Κοινωνικής ικτύωσης για Ερευνητικούς Σκοπούς Κωνσταντινίδης Ανδρέας Επιβλέπων: Χατζηγεωργίου

Διαβάστε περισσότερα

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

Η HTML 5 θα αλλάξει το Web? Η HTML 5 θα αλλάξει το Web? (ή αλλιώς, έρχεται το τέλος των plugins?) Αλέξανδρος Καράκος Εργαστήριο Προγραµµατισµού και Επεξεργασίας Πληροφοριών Internet 2... Είναι ένα ξεχωριστό µέσο δηµοσίευσης πληροφοριών

Διαβάστε περισσότερα

Πανεπιστήμιο Πειραιώς Τμήμα Πληροφορικής Πρόγραμμα Μεταπτυχιακών Σπουδών «Πληροφορική»

Πανεπιστήμιο Πειραιώς Τμήμα Πληροφορικής Πρόγραμμα Μεταπτυχιακών Σπουδών «Πληροφορική» Πανεπιστήμιο Πειραιώς Τμήμα Πληροφορικής Πρόγραμμα Μεταπτυχιακών Σπουδών «Πληροφορική» Μεταπτυχιακή Διατριβή Τίτλος Διατριβής Ανάπτυξη Πλατφόρμας Διαδικτυακής Δημοσίευσης Χαρτογραφικών Δεδομένων Developing

Διαβάστε περισσότερα

/ citybeez.gr @ citybeez.gr. citybeez.gr - Επιστημονικό & Τεχνολογικό Πάρκο Κρήτης 1

/ citybeez.gr @ citybeez.gr. citybeez.gr - Επιστημονικό & Τεχνολογικό Πάρκο Κρήτης 1 / citybeez.gr @ citybeez.gr 1 Τι είναι το citybeez.gr Το citybeez.gr είναι μια διαδραστική διαδικτυακή πλατφόρμα προηγμένης επαγγελματικής προβολής, αποστολής στοχευμένων προσφορών σε πραγματικό χρόνο,

Διαβάστε περισσότερα

Περιεχόμενα. Εισαγωγή Αρχιτεκτονική - Σχεδιασμός - Υλοποίηση Προδιαγραφές Χαρακτηριστικά Templates Επικοινωνία

Περιεχόμενα. Εισαγωγή Αρχιτεκτονική - Σχεδιασμός - Υλοποίηση Προδιαγραφές Χαρακτηριστικά Templates Επικοινωνία Περιεχόμενα Εισαγωγή Αρχιτεκτονική - Σχεδιασμός - Υλοποίηση Προδιαγραφές Χαρακτηριστικά Templates Επικοινωνία Εισαγωγή «Το ηλεκτρονικό εμπόριο καλύπτει οποιαδήποτε μορφή επιχειρηματικής ή διοικητικής συναλλαγής

Διαβάστε περισσότερα

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

Μηχανική Λογισμικού για Διαδικτυακές & Φορητές Εφαρμογές Μεταπτυχιακό Δίπλωμα Ειδίκευσης Μηχανική Λογισμικού για Διαδικτυακές & Φορητές Εφαρμογές Δρ. Κακαρόντζας Γεώργιος Επίκουρος Καθηγητής Τμ. Μηχανικών Πληροφορικής Τ.Ε. Μηχανική Λογισμικού για Διαδικτυακές

Διαβάστε περισσότερα

Επικοινωνία Ανθρώπου- Υπολογιστή Σχεδίαση Αλληλεπίδρασης

Επικοινωνία Ανθρώπου- Υπολογιστή Σχεδίαση Αλληλεπίδρασης ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Επικοινωνία Ανθρώπου- Υπολογιστή Σχεδίαση Αλληλεπίδρασης Ενότητα: 7 η Δ.Πολίτης Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε

Διαβάστε περισσότερα

Open Discovery Space. ODS Portal Manual

Open Discovery Space. ODS Portal Manual ODS Portal Manual Project Acronym: ODS Project Title: Open Discovery Space: A socially powered and multilingual open learning infrastructure to boost the adoption of elearning resources ODS Portal Manual

Διαβάστε περισσότερα

Social Media Marketing Presentation

Social Media Marketing Presentation ΚΑΠΑ ΣΙΓΜΑ ΔΕΛΤΑ Α.Ε Σητείας 8 & Μεσολογγίου, 14451 Μεταμόρφωση Αττικής Τηλέφωνο: 210 211 7676 E-mail: socialmedia@ksd.gr Social Media Marketing Presentation Σκοπός Το e-word-of-mouth είναι ο πιο αποδοτικός

Διαβάστε περισσότερα

Προτεινόμενες Διπλωματικές Εργασίες 2009

Προτεινόμενες Διπλωματικές Εργασίες 2009 Προτεινόμενες Διπλωματικές Εργασίες 2009 Αλγοριθμικές Διαδικασίες για Smart Energy Profiling μέσω Διαδικτύου με βάση τηλεμετρικά δίκτυα AMR και προχωρημένων αλγορίθμων Διαχείρισης Ενεργειακής Γνώσης Η

Διαβάστε περισσότερα

Υπηρεσίες ιστού και ιδιωτικότητα: Μια προσέγγιση βασισμένη στη δημιουργία προφίλ χρήστη για προσαρμοστικούς ιστότοπους

Υπηρεσίες ιστού και ιδιωτικότητα: Μια προσέγγιση βασισμένη στη δημιουργία προφίλ χρήστη για προσαρμοστικούς ιστότοπους Υπηρεσίες ιστού και ιδιωτικότητα: Μια προσέγγιση βασισμένη στη δημιουργία προφίλ χρήστη για προσαρμοστικούς ιστότοπους Η Μεταπτυχιακή Διατριβή παρουσιάστηκε ενώπιον του Διδακτικού Προσωπικού του Πανεπιστημίου

Διαβάστε περισσότερα

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

Πειραιάς S 2 Ε Lab Ιούνιος 2012. Εισηγητής: Δ. Ν. Καλλέργης, MSc. Εργ. Συνεργάτης Πειραιάς S 2 Ε Lab Ιούνιος 2012 Εισηγητής: Δ. Ν. Καλλέργης, MSc. Εργ. Συνεργάτης Πνευµατικά δικαιώµατα Τα πνευµατικά δικαιώµατα χρησιµοποίησης του µη πρωτότυπου υλικού της εργασίας ανήκουν στο/στη φοιτητή/-τρια

Διαβάστε περισσότερα

Το διαδίκτυο στην υπηρεσία µιας επιχείρησης. Χρήση διαδικτύου & socialmedia ως εργαλεία διαφήµισης χαµηλού κόστους

Το διαδίκτυο στην υπηρεσία µιας επιχείρησης. Χρήση διαδικτύου & socialmedia ως εργαλεία διαφήµισης χαµηλού κόστους Σεµινάριο - εργαστήριο κατάρτισης γυναικών στo πλαίσιο του Έργου ΕΜΜΑ Το διαδίκτυο στην υπηρεσία µιας επιχείρησης Χρήση διαδικτύου & socialmedia ως εργαλεία διαφήµισης χαµηλού κόστους Εισηγητής: Αλέξανδρος

Διαβάστε περισσότερα