Διπλωματική Εργασία για το Μεταπτυχιακό Δίπλωμα Ειδίκευσης στην «Επιστήμη και Τεχνολογία Υπολογιστών»

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

Download "Διπλωματική Εργασία για το Μεταπτυχιακό Δίπλωμα Ειδίκευσης στην «Επιστήμη και Τεχνολογία Υπολογιστών»"

Transcript

1 Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πολυτεχνική Σχολή Πανεπιστημίου Πατρών Διπλωματική Εργασία για το Μεταπτυχιακό Δίπλωμα Ειδίκευσης στην «Επιστήμη και Τεχνολογία Υπολογιστών» Reverse Engineering Εφαρμογών Παγκόσμιου Ιστού με Αξιοποίηση Μεθοδολογιών Μοντελοποίησης Σουρλά Γεωργία Επιβλέπων Καθηγητής κ. Αθανάσιος Τσακαλίδης Τριμελής Εξεταστική Επιτροπή Καθηγητής κ. Αθανάσιος Τσακαλίδης Αν. Καθηγητής κ. Ιωάννης Χατζηλυγερούδης Επ. Καθηγητής κ. Ιωάννης Τζήμας Πάτρα, Οκτώβριος 2012

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

3 Επιτελική Σύνοψη Οι εφαρμογές παγκόσμιου ιστού προσφέρουν ολοένα και περισσότερες, με υψηλό βαθμό πολυπλοκότητας, υπηρεσίες σε σχέση με τους πρώτους ιστότοπους που χρησιμοποιούνταν απλά και μόνο για την προβολή πληροφοριών. Λόγω της ολοένα αυξανόμενης πολυπλοκότητας των εφαρμογών αυτών, ο σχεδιασμός, η ανάπτυξη κι η συντηρησιμότητα μιας εφαρμογής παγκόσμιου ιστού προβάλλει ως μία από τις μεγαλύτερες προκλήσεις που καλείται να αντιμετωπίσει ο σχεδιαστής της. Η ερευνητική κοινότητα προκειμένου να αντιμετωπίσει την αυξανόμενη πολυπλοκότητα του σχεδιασμού εφαρμογών παγκόσμιου ιστού έχει προτείνει ένα πλήθος προσεγγίσεων και μεθόδων βασισμένων σε μοντέλα. Η δουλειά του σχεδιαστή εφαρμογών παγκόσμιου ιστού μπορεί να απλοποιηθεί ακόμα περισσότερο με την επαναχρησιμοποίηση της εμπειρίας άλλων σχεδιαστών εφαρμογών παγκόσμιου ιστού. Η επαναχρησιμοποίηση της εμπειρίας αυτής γίνεται με τη χρήση σχεδιαστικών προτύπων που ορίζονται από πεπειραμένους σχεδιαστές. Αν κατά το σχεδιασμό μιας εφαρμογής χρησιμοποιηθεί κάποια μέθοδος μοντελοποίησης σε συνδυασμό με ένα σύνολο σχεδιαστικών προτύπων, η τελική εφαρμογή θα είναι πιο αποδοτική και ποιοτική. Πολλές φορές όμως, κατά το σχεδιασμό και την ανάπτυξη μιας εφαρμογής παγκόσμιου ιστού δε λαμβάνεται υπόψη κάποια συγκεκριμένη μεθοδολογία μοντελοποίησης και ανάπτυξης. Ένα πλήθος μεθόδων αντίστροφης μηχανίκευσης έχει αναπτυχθεί για την ανάλυση, κατανόηση και μοντελοποίηση των αρχιτεκτονικών τέτοιου είδους εφαρμογών. Κατά τη μοντελοποίηση της αρχιτεκτονικής παραδοσιακών συστημάτων λογισμικού δεν εμφανίζεται η εσωτερική δομή του λειτουργικού συστήματος και του συστήματος παραθύρων (windowing system). Αντίστοιχα και στο πεδίο εφαρμογών παγκόσμιου ιστού δεν εμφανίζεται η εσωτερική δομή του εξυπηρετητή παγκόσμιου ιστού και του φυλλομετρητή. Τα αρχιτεκτονικά διαγράμματα των εφαρμογών παγκόσμιου ιστού πρέπει να δείχνουν τα κύρια συστατικά μιας εφαρμογής τα οποία συνδέονται μεταξύ τους για να υλοποιήσουν μεγάλες και σύνθετες εφαρμογές. Κύρια συστατικά μιας εφαρμογής θεωρούνται τα αντικείμενα του παγκόσμιου ιστού, οι πίνακες της βάσης δεδομένων και τα πολυμεσικά αντικείμενα. Στα πλαίσια αυτής της διπλωματικής εργασίας, αναλύσαμε το πιο δημοφιλές σύστημα διαχείρισης περιεχομένου (Content Management Systems CMS) ανοιχτού κώδικα, το Joomla!. Συγκεκριμένα, εφαρμόσαμε αντίστροφη μηχανίκευση σε αυτό, ώστε να μπορέσουμε να μοντελοποιήσουμε την αρχιτεκτονική του. Για αυτό το σκοπό, αναπτύξαμε μια εφαρμογή που ερευνά τον HTML κώδικα όλων των σελίδων ενός ιστότοπου φτιαγμένου σε Joomla!, προκειμένου να γίνει αυτόματη εξαγωγή του μοντέλου του και όχι με το χέρι. Βασικός στόχος είναι να μπορέσουμε να αξιολογήσουμε το σχεδιασμό του μοντέλου του, αλλά και να παρέχουμε έναν αυτοματοποιημένο τρόπο για αξιολόγηση. Έτσι, θα μπορούν να προταθούν τρόποι αναδιάταξης, με στόχο τόσο την ευχρηστία όσο και την αποδοτικότητα χρήσης του συγκεκριμένου συστήματος διαχείρισης περιεχομένου. iii

4 Η δομή της παρούσας διπλωματικής εργασίας έχει ως εξής: Στο πρώτο κεφάλαιο παραθέτονται τα οφέλη χρήσης μοντέλων κατά το σχεδιασμό εφαρμογών παγκόσμιου ιστού, καθώς και οι βασικές απαιτήσεις που θα πρέπει να ικανοποιούν οι μέθοδοι μοντελοποίησης για την πληρέστερη μοντελοποίηση των χαρακτηριστικών των εφαρμογών παγκόσμιου ιστού. Επιπλέον, γίνεται επισκόπηση και παρουσίαση των κυριότερων μεθόδων μοντελοποίησης που έχουν προταθεί από την ερευνητική κοινότητα. Ιδιαίτερη βαρύτητα δίνεται στην παρουσίαση της γλώσσας μοντελοποίησης WebML, γιατί αποτελεί την γλώσσα μοντελοποίησης με βάση την οποία έγινε η μοντελοποίηση της δομής ενός Joomla! ιστότοπου. Τέλος, στο κεφάλαιο αυτό γίνεται σύγκριση των προτεινόμενων μεθόδων μοντελοποίησης. Στο δεύτερο κεφάλαιο παρουσιάζονται τα οφέλη χρήσης σχεδιαστικών προτύπων τόσο από άπειρους όσο και από έμπειρους σχεδιαστές και δίνεται ένας επίσημος ορισμός των σχεδιαστικών προτύπων για τον παγκόσμιο ιστό. Επιπλέον, στα πλαίσια του κεφαλαίου αυτού γίνεται παρουσίαση των προτύπων δημοσίευσης και διαχείρισης περιεχομένου που έχουν οριστεί στη WebML. Για το σχεδιασμό πολύπλοκων εφαρμογών παγκόσμιου ιστού, ναι μεν το είδος επαναχρησιμοποίησης που προσφέρουν τα σχεδιαστικά πρότυπα παγκόσμιου ιστού είναι πολύτιμο, εν τούτοις απαιτείται η επαναχρησιμοποίηση όσο το δυνατόν μεγαλύτερων σχεδιαστικών δομών. Για το λόγο αυτό γίνεται αναφορά και παρουσίαση της επαναχρησιμοποίησης που υποστηρίζεται από τη χρήση σχεδιαστικών πλαισίων ανάπτυξης εφαρμογών παγκόσμιου ιστού. Στο τρίτο κεφάλαιο αναλύεται η έννοια της αντίστροφης μηχανίκευσης. Συγκεκριμένα, παρουσιάζονται οι στόχοι της αντίστροφης μηχανίκευσης και τα διάφορα είδη αντίστροφης μηχανίκευσης λογισμικού και δεδομένων. Στη συνέχεια εμβαθύνουμε στην αντίστροφη μηχανίκευση που βασίζεται σε μοντέλα και τη χρησιμότητά της, καθώς και στην αντίστροφη μηχανίκευση εφαρμογών παγκόσμιου ιστού, που είναι τα δύο είδη αντίστροφης μηχανίκευσης που έδωσαν το έναυσμα για την παρούσα διπλωματική εργασία. Στο τέλος του κεφαλαίου γίνεται μια επισκόπηση των μεθοδολογιών και των εργαλείων αντίστροφης μηχανίκευσης που έχουν αναπτυχθεί μέχρι στιγμής. Στο τέταρτο κεφάλαιο παρουσιάζεται η εφαρμογή για την αντίστροφη μηχανίκευση και μοντελοποίηση ενός Joomla! ιστότοπου που αναπτύχθηκε στα πλαίσια της παρούσας διπλωματικής εργασίας. Συγκεκριμένα, αναλύονται τα συστατικά ενός Joomla! ιστότοπου, ο σχεδιασμός του συστήματος που υλοποιήθηκε, καθώς και η μεθοδολογία που ακολουθήθηκε, προκειμένου η εφαρμογή να μπορεί να εντοπίσει αυτά τα συστατικά μέσα από τον HTML κώδικα των σελίδων του ιστότοπου. Τέλος γίνεται μια σύνοψη των πλεονεκτημάτων και της χρησιμότητας του συστήματος και παρουσιάζονται προτάσεις μελλοντικής βελτίωσης και επέκτασης. Στο πέμπτο κεφάλαιο παρουσιάζονται οι τεχνολογίες που χρησιμοποιήθηκαν για την ανάπτυξη της εφαρμογής για την αντίστροφη μηχανίκευση και μοντελοποίηση ενός ιστότοπου, κατασκευασμένου με τη βοήθεια του Joomla!. iv

5 Στο έκτο κεφάλαιο παρουσιάζεται η βιβλιογραφία στην οποία βασίστηκε η συγγραφή της διπλωματικής εργασίας. Executive Summary Web Applications provide many services and they are not used just to display content, as it was the case for the first web sites. Due to the growing complexity, the design, development and maintenance of these applications has become one of the major challenges that the developer has to face. In an attempt to face this growing complexity, the research community has proposed a number of model based approaches and methods. The task of the hypertext architect may be further facilitated by reusing the experience of other hypertext architects. This reuse is achieved by means of design patterns that have been defined by experts. If, we make use of a modeling method in combination with design patterns when designing a web application, the final result will be more efficient and qualitative. Usually, due to the pressing market demands, the modeling methods or techniques are not applied during the degin and development of the web applications. A number of reverse engineering methods and tools have been proposed in order to analyze, comprehend and model the architectures of such applications. When the architecture of traditional software systems is modeled, the internal structure of the operating and windowing system does not appear. Similarly, in the field of web applications, the internal structure of the web server and browser does not appear. The architectural diagrams of web applications need to show the main components of an application, which are linked together in order to create large and complex applications. The main components of an application are the objects of the Web, the database tables and the multimedia objects. In this thesis, we analyzed the most popular open source Content Management System (CMS), Joomla!. More specifically, we applied reverse engineering to it, so that we could model its architecture. For this purpose, we developed an application which explores the HTML code of all web pages of a web site created by Joomla!, so that the extraction of its model will be done automatically and not manually. The main goal is to manage to evaluate the design of its model and to provide an automatic way for evaluation, as well. Thus, we can recommend ways to redeploy the system, so that usability and efficiency will be achieved, in the use of this content management system. v

6 Πίνακας Περιεχομένων 1 Μοντελοποίηση Εφαρμογών Παγκόσμιου Ιστού Εισαγωγή Πλεονεκτήματα Χρήσης Σχεδιαστικών Μοντέλων Εφαρμογών Παγκόσμιου Ιστού Απαιτήσεις Μεθόδων Μοντελοποίησης Επίπεδα: Περιεχόμενο, Υπερκείμενο, Παρουσίαση Όψεις: Δομή και Συμπεριφορά Φάσεις: Ανάλυση, Σχεδιασμός και Υλοποίηση Εξατομίκευση Μέθοδοι και Τεχνικές Μοντελοποίησης HDM (Hypertext Design Model) RMM (Relationship Management Methodology) OOHDM (Object-Oriented Hypermedia Design Method) Araneus HDM-Lite Strudel UML Επεκτάσεις για την Υποστήριξη Μοντελοποίησης Εφαρμογών Παγκόσμιου Ιστού WebML (Web Modelling Language) Σύγκριση Μεθοδολογιών Μοντελοποίηση Περιεχομένου Μοντελοποίηση Πλοήγησης Μοντελοποίηση Διεπαφής Χρήστη Μοντελοποίηση Παρουσίασης Μοντελοποίηση Εξατομίκευσης Συμπεράσματα Σχεδιαστικά Πρότυπα και Πλαίσια Ανάπτυξης Εφαρμογών Παγκόσμιου Ιστού Εισαγωγή Η προέλευση των σχεδιαστικών προτύπων vi

7 2.3 Παράδειγμα χρήσης σχεδιαστικών προτύπων παγκόσμιου ιστού Οφέλη και Πιθανά Προβλήματα της χρήσης σχεδιαστικών προτύπων παγκόσμιου ιστού Ορισμός σχεδιαστικών προτύπων παγκόσμιου ιστού Ταξινόμηση Σχεδιαστικών Προτύπων Παγκόσμιου Ιστού Πρότυπα στη WebML Πρότυπα Δημοσίευσης Περιεχομένου Πρότυπα Διαχείρισης Περιεχομένου Σχεδιαστικά Πλαίσια Ανάπτυξης Εφαρμογών Παγκόσμιου Ιστού Αναγνώριση Βασικών Εννοιών Πληροφορίας Αναγνώριση Σκελετών Δόμησης Δεδομένων και Σχημάτων Υπερκειμένου Συμπεράσματα Μοντελοποίηση Εφαρμογών με χρήση Αντίστροφης Μηχανίκευσης (Reverse Engineering) Εισαγωγή Αντίστροφη μηχανίκευση Αντίστροφη μηχανίκευση λογισμικού Εργαλεία αντίστροφης μηχανίκευσης λογισμικού Είδη αντίστροφης μηχανίκευσης λογισμικού Αντίστροφη μηχανίκευση κώδικα Αντίστροφη μηχανίκευση δεδομένων Εργαλεία αντίστροφης μηχανίκευσης Αξιολόγηση εργαλείων αντίστροφης μηχανίκευσης Αντίστροφη μηχανίκευση βασισμένη σε μοντέλα Εισαγωγή Επαρκής αντίστροφη μηχανίκευση «Αντίστροφη» αντίστροφη μηχανίκευση Αντίστροφη μηχανίκευση που βασίζεται σε μοντέλα Αντίστροφη μηχανίκευση εφαρμογών παγκόσμιου ιστού Εισαγωγή Κατηγοριοποίηση των εφαρμογών παγκόσμιου ιστού vii

8 3.5.3 Στόχοι της αντίστροφης μηχανίκευσης εφαρμογών παγκόσμιου ιστού Αναπαράσταση εφαρμογών παγκόσμιου ιστού Εργαλεία και μεθοδολογίες αντίστροφης μηχανίκευσης εφαρμογών παγκόσμιου ιστού Συμπεράσματα Ανάπτυξη Εφαρμογής για Reverse Engineering Εφαρμογών Παγκόσμιου Ιστού Εισαγωγή Λειτουργικά Συστατικά Εφαρμογής Παγκόσμιου Ιστού Αρχιτεκτονική του συστήματος Σχεδιασμός εφαρμογής Στοιχεία του Joomla! HTML κώδικας και λέξεις κλειδιά Υλοποίηση του συστήματος Crawling και Parsing Δημιουργία XML αρχείου Δυναμικά Templates Συμπεράσματα Τεχνολογίες NET Framework Common Language Runtime NET Framework Class Library Ανάπτυξη Εφαρμογών Πελάτη Ανάπτυξη εφαρμογών κεντρικού υπολογιστή Microsoft Visual Studio Η γλώσσα προγραμματισμού C# Html Agility Pack Βιβλιογραφία viii

9 Κατάλογος Εικόνων Εικόνα 1: Διαστάσεις Μοντελοποίησης... 4 Εικόνα 2: Σχεδιαστικός Χώρος Εξατομίκευσης... 8 Εικόνα 3: Παράδειγμα Σύνθεσης Site view με περιοχές και σελίδες Εικόνα 4: Παράδειγμα Σύνθεσης Σελίδων και Πλοήγησης με και χωρίς περιεχόμενο Εικόνα 5: Γενικό Παράδειγμα Επαναχρησιμοποίησης με χρήση Σχεδιαστικών Προτύπων Εικόνα 6: Cascaded Index Πρότυπο Εικόνα 7: Filtered Index Πρότυπο Εικόνα 8: Filtered Scrolled Index Πρότυπο Εικόνα 9: Guided Tour πρότυπο Εικόνα 10: Indexed Guided Tour Πρότυπο Εικόνα 11: Object Viewpoint Εικόνα 12: Nested Data Object Εικόνα 13: Hierarchical Index with Alternative Sub-Pages Εικόνα 14: Επαναχρησιμοποιήσιμες Δομικές Μονάδες Εικόνα 15: Πρότυπο Δημιουργίας Αντικειμένου Εικόνα 16: Πρότυπο Διαγραφής Αντικειμένου Εικόνα 17: Πρότυπο Τροποποίησης Αντικειμένου Εικόνα 18: Πρότυπο Δημιουργίας Σχέσης Εικόνα 19: Πρότυπο Διαγραφής Σχέσης Εικόνα 20: Create-Connect Πρότυπο Εικόνα 21: Cascaded Delete Πρότυπο Εικόνα 22: Σχήμα Δεδομένων που αποτελείται από βασικά υποσχήματα, υποσχήματα προσπέλασης, υποσχήματα σύνδεσης και προσωποποιημένα υποσχήματα Εικόνα 23: Σχήμα Δεδομένων (Α) και Σχήμα Υπερκειμένου (Β) για το Βασικό Σκελετό Εικόνα 24: Σχήμα Δεδομένων (Α) και Σχήμα Υπερκειμένου (Β) για το Σκελετό Προσπέλασης Εικόνα 25: Σχήμα Δεδομένων (Α) και Σχήμα Υπερκειμένου (Β) για το Σκελετό Σύνδεσης 58 Εικόνα 26: Διάγραμμα Υπερκειμένου για Διαχείριση Περιεχομένου ενός Βασικού Αντικειμένου ix

10 Εικόνα 27: Αναπαράσταση Χρήστη και Ομάδας στο Σχήμα Δεδομένων Εικόνα 28: Υπερκείμενο Δημιουργίας Προφίλ Χρήστη Εικόνα 29: Αντίστροφη Μηχανίκευση Εικόνα 30: Ροή Δεδομένων Ανάμεσα στα Συστατικά μιας Εφαρμογής Παγκόσμιου Ιστού Εικόνα 31: Αρχιτεκτονική της Εφαρμογής: Διασύνδεση των συστατικών μερών Εικόνα 32: Ακολουθία ενεργειών για κατασκευή μοντέλου Εικόνα 33: Μορφή μιας Joomla! σελίδας Εικόνα 34: WebML μοντέλο μιας Joomla! σελίδας Εικόνα 35: WebML μοντέλο του module Search Εικόνα 36: WebML μοντέλο του module Breadcrumbs Εικόνα 37: WebML μοντέλο του module Menu όταν υπάρχουν submenus Εικόνα 38: WebML μοντέλο του module Newsflash με σύνδεση προς το πλήρες άρθρο Εικόνα 39: WebML μοντέλο του module Latest News Εικόνα 40: WebML μοντέλο του module Archived Articles Εικόνα 41: WebML μοντέλο του module Related Articles Εικόνα 42: WebML μοντέλο του module Most Read Articles Εικόνα 43: WebML μοντέλο του Categories Module Εικόνα 44: WebML μοντέλο του Category Module Εικόνα 45: WebML μοντέλο του module Latest Users Εικόνα 46: WebML μοντέλο του module Login Εικόνα 47: WebML μοντέλο του module Random Image Εικόνα 48: WebML μοντέλο του module Banner Εικόνα 49: WebML μοντέλο του module Feed Display Εικόνα 50: WebML μοντέλο του module Footer Εικόνα 51: WebML μοντέλο του Weblinks Module Εικόνα 52: WebML μοντέλο του module Custom HTML Εικόνα 53: WebML μοντέλο του module Syndicate Feed Εικόνα 54: WebML μοντέλο του module Statistics Εικόνα 55: WebML μοντέλο του module Language Switcher Εικόνα 56: WebML μοντέλο του module Wrapper x

11 Εικόνα 57: WebML μοντέλο των κεντρικών εναλλακτικών υποσελίδων Εικόνα 58: WebML μοντέλο των σελίδων Single Article και Article Εικόνα 59: WebML μοντέλο της σελίδας Featured Blog Εικόνα 60: WebML μοντέλο της σελίδας Category Blog Εικόνα 61: WebML μοντέλο της σελίδας Category List Εικόνα 62: WebML μοντέλο της σελίδας Archived Articles Εικόνα 63: WebML μοντέλο της σελίδας Single Contact Εικόνα 64: WebML μοντέλο της σελίδας Featured Contacts Εικόνα 65: WebML μοντέλο της σελίδας Contact Category Εικόνα 66: WebML μοντέλο της σελίδας Weblinks Category Εικόνα 67: WebML μοντέλο της σελίδας Newsfeed Category Εικόνα 68: WebML μοντέλο της σελίδας List All Categories Εικόνα 69: WebML μοντέλο της σελίδας Search Εικόνα 70: WebML μοντέλο της σελίδας Search Results Εικόνα 71: WebML μοντέλο των σελίδων Login, Registration, Remind Username και Reset Password Εικόνα 72: Το γενικό πλαίσιο του.net Framework Εικόνα 73: Server Side Managed Code xi

12 Κατάλογος Πινάκων Πίνακας 1: RMDM Δομοστοιχεία Πίνακας 2: Βασικές Μονάδες Περιεχομένου της WebML Πίνακας 3: Παραλλαγές της Δομικής Μονάδας Ευρετηρίου Πίνακας 4: Δομοστοιχεία Παραμέτρων Περιεχομένου Πίνακας 5: Δομικές Μονάδες Λειτουργιών Πίνακας 6: Λειτουργίες Σύνδεσης και Αποσύνδεσης από το σύστημα Πίνακας 7: Σύγκριση Μεθοδολογιών xii

13 1 Μοντελοποίηση Εφαρμογών Παγκόσμιου Ιστού 1.1 Εισαγωγή Η ραγδαία εξάπλωση του διαδικτύου τα τελευταία χρόνια και η είσοδός του στην καθημερινότητα του ανθρώπου, δημιούργησε νέες ανάγκες και απαιτήσεις από τους χρήστες. Προκειμένου να ικανοποιηθούν αυτές οι ανάγκες, χρειάστηκε να ενοποιηθούν τα συστήματα υπερμέσων (hypermedia systems) με τα πληροφοριακά συστήματα (information systems), τα οποία αρχικά προορίζονταν για εντελώς διαφορετικούς σκοπούς. Από αυτή τη διαδικασία προέκυψαν οι εφαρμογές παγκόσμιου ιστού (web applications) που ήταν πλέον ολοκληρωμένα συστήματα λογισμικού. Οι απλοί ιστότοποι χρησιμεύουν κυρίως στο να προβάλουν και να παρουσιάζουν πληροφορίες στο χρήστη, ενώ οι εφαρμογές παγκόσμιου ιστού αποτελούν πολύπλοκα λειτουργικά περιβάλλοντα. Οι βασικότερες διαφορές τους από τις παραδοσιακές εφαρμογές υπερμέσων είναι: η δυνατότητα ενεργοποίησης λειτουργιών και συναλλαγών από τους χρήστες, οι διαφορετικές όψεις της ίδιας πληροφορίας καθώς και οι διαφορετικές λειτουργίες και συναλλαγές που προσφέρονται σε διαφορετικές ομάδες χρηστών, η δυνατότητα ανάπτυξης και μεταβολής της δομής των υπερμέσων κατά τη διάρκεια ανάπτυξης της εφαρμογής. Με λίγα λόγια, οι χρήστες μπορούν πλέον όχι μόνο να προσπελαύνουν, αλλά και να μεταβάλλουν την πληροφορία που υπάρχει αποθηκευμένη στο σύστημα, εφόσον έχουν την κατάλληλη άδεια πρόσβασης. Επίσης, ένα πλήθος διαφορετικών ομάδων χρηστών με διαφορετικές απαιτήσεις πλοήγησης και λειτουργικότητας μπορούν να προσπελαύνουν την ίδια εφαρμογή. Για το λόγο αυτό στις διάφορες κατηγορίες χρηστών παρέχονται διαφορετικές διεπαφές χρήστη όσον αφορά στο περιεχόμενο, την πλοήγηση και τη λειτουργικότητα [1]. Συμπεραίνουμε λοιπόν από τα παραπάνω ότι ο σχεδιασμός εφαρμογών παγκόσμιου ιστού είναι μία πολύπλοκη διαδικασία που απαιτεί πολύ κόπο και χρόνο, ακόμα και από έμπειρους προγραμματιστές. Απαιτεί τη δυνατότητα οργάνωσης μεγάλης ποσότητας δεδομένων, δομημένων ή ημι-δομημένων (semi-structured), με ένα μη γραμμικό τρόπο και τον καθορισμό πολλαπλών μονοπατιών πλοήγησης πάνω στα δεδομένα αυτά, καθώς και τη δυνατότητα ορισμού λειτουργικών και εξελικτικών όψεων της εφαρμογής. Υπάρχουν διάφορες τεχνολογίες ανάπτυξης για τη δημιουργία τέτοιου τύπου εφαρμογών, όπως οι Active Server Pages (ASP) της Microsoft και οι Java Server Pages (JSP) της 1

14 1 Μοντελοποίηση Εφαρμογών Παγκόσμιου Ιστού JavaSoft. Οι τεχνολογίες αυτές παρέχουν πλήρεις και περιεκτικές λύσεις για την εξαγωγή και το χειρισμό δυναμικού περιεχομένου από υποκείμενες βάσεις δεδομένων. Όμως, οι γρήγορες ad-hoc προσεγγίσεις προτυποποίησης που προέρχονται από τις τεχνολογίες αυτές και υιοθετούνται στην πράξη, αρκετά συχνά οδηγούν σε μη ικανοποιητικά και ανεπαρκή αποτελέσματα. Παράγονται για παράδειγμα εφαρμογές που έχουν χαμηλή συντηρησιμότητα και επεκτασιμότητα [2], [3]. Για να αντιμετωπίσει αυτό το πρόβλημα και να γίνει αποτελεσματικότερος ο σχεδιασμός και η ανάπτυξη εφαρμογών παγκόσμιου ιστού, έχουν προταθεί αρκετές προσεγγίσεις που βασίζονται σε μοντέλα. Ένα σχεδιαστικό μοντέλο είναι ουσιαστικά ένα σύνολο δομοστοιχείων το οποίο επιτρέπει στους σχεδιαστές να περιγράψουν τα χαρακτηριστικά μιας εφαρμογής σε ένα εννοιολογικό επίπεδο χωρίς να λαμβάνονται υπόψη λεπτομέρειες που αφορούν στην υλοποίηση. Στόχος των προσεγγίσεων αυτών είναι να απλοποιήσουν τη διαδικασία σχεδιασμού και ανάπτυξης εφαρμογών παγκόσμιου ιστού, επιτρέποντας το σχεδιασμό τους σε ένα υψηλό επίπεδο αφαίρεσης και κάνοντας εφικτή την αυτόματη ή ημιαυτόματη παραγωγή υλοποιήσεων από υψηλού επιπέδου προδιαγραφές [4], [2], [5], [6]. Στη συνέχεια του κεφαλαίου συζητούνται τα πλεονεκτήματα χρήσης σχεδιαστικών μοντέλων, καθώς και οι βασικές απαιτήσεις που θα πρέπει να ικανοποιούν οι μέθοδοι μοντελοποίησης για την πληρέστερη μοντελοποίηση των χαρακτηριστικών των εφαρμογών παγκόσμιου ιστού. Επιπλέον, γίνεται μία γρήγορη επισκόπηση και παρουσίαση των κυριότερων μεθόδων μοντελοποίησης που έχουν προταθεί από την ερευνητική κοινότητα. Τέλος, γίνεται σύγκριση των προτεινόμενων μεθόδων μοντελοποίησης. 1.2 Πλεονεκτήματα Χρήσης Σχεδιαστικών Μοντέλων Εφαρμογών Παγκόσμιου Ιστού Ένα σχεδιαστικό μοντέλο, όπως αναφέρθηκε και στην εισαγωγή, είναι ένα σύνολο δομοστοιχείων τα οποία επιτρέπουν στους σχεδιαστές την περιγραφή των χαρακτηριστικών μιας εφαρμογής παγκόσμιου ιστού σε εννοιολογικό επίπεδο χωρίς να λαμβάνονται υπόψη λεπτομέρειες που αφορούν την υλοποίηση. Η χρήση σχεδιαστικών μοντέλων για το σχεδιασμό εφαρμογών παγκόσμιου ιστού παρέχει ένα πλήθος πλεονεκτημάτων. Ορισμένα από τα πλεονεκτήματα αυτά είναι τα ακόλουθα [7]: Βελτίωση Επικοινωνίας: Ένα σχεδιαστικό μοντέλο παρέχει μία γλώσσα. Ο αναλυτής της εφαρμογής χρησιμοποιώντας αυτή τη γλώσσα μπορεί να καθορίσει την προς ανάπτυξη εφαρμογή. Μ αυτό τον τρόπο, διευκολύνεται η επικοινωνία μεταξύ του αναλυτή και του τελικού χρήστη, του αναλυτή και του διαχειριστή συστήματος και μεταξύ του διαχειριστή συστήματος και του προγραμματιστή. 2

15 1 Μοντελοποίηση Εφαρμογών Παγκόσμιου Ιστού Διαχείριση Πολυπλοκότητας: Οι εφαρμογές παγκόσμιου ιστού μπορεί να γίνουν πολύ πολύπλοκες, ανάλογα με τη λειτουργικότητα και τις υπηρεσίες που παρέχουν. Με τη χρήση μοντέλων, τα συστατικά μιας δεδομένης εφαρμογής μπορούν να αναπαρασταθούν από διαφορετικά μεν, αλλά συνεπή μοντέλα. Ανάπτυξη σχεδιαστικών μεθοδολογιών: Οι δημιουργοί των εφαρμογών υπερκειμένου μπορούν να χρησιμοποιήσουν το πλαίσιο ανάπτυξης που παρέχουν τα σχεδιαστικά μοντέλα, προκειμένου να αναπτύξουν, να αναλύσουν και να συγκρίνουν μεθοδολογίες σε ένα υψηλό επίπεδο αφαίρεσης, χωρίς να δίνουν σημασία στα λεπτομερή χαρακτηριστικά των δομοστοιχείων πληροφορίας ή στους διάφορους τρόπους παρουσίασης τους. Καλύτερη κατανόηση της αρχιτεκτονικής: Μοντελοποιώντας την εφαρμογή, οι προγραμματιστές έχουν τη δυνατότητα να χωρίσουν το σχεδιασμό της σε διακριτά και ανεξάρτητα επίπεδα. Με τον τρόπο αυτό, οι προγραμματιστές έχουν μια ξεκάθαρη εικόνα για τα δομοστοιχεία που απαρτίζουν την εφαρμογή. Επαναχρησιμοποίηση: Σε περίπτωση που οι σχεδιαστές μιας εφαρμογής παγκόσμιου ιστού έχουν στη διάθεσή τους αναπτυγμένες εφαρμογές με χρήση μοντέλων, μπορούν να επαναχρησιμοποιήσουν το βασικό σκελετό της εφαρμογής, εφόσον η σημασιολογία των δύο εφαρμογών είναι παρόμοια. Παροχή συνεπών και προβλέψιμων περιβαλλόντων: Τα εργαλεία καθορισμού δομών υπερκειμένου βοηθούν τους προγραμματιστές να αποφύγουν ασυνέπειες και λάθη. Οι εφαρμογές παγκόσμιου ιστού που έχουν αναπτυχθεί με βάση κάποιο μοντέλο αναπαρίστανται από πολύ συνεπείς και αναμενόμενες δομές αναπαράστασης. Με τον τρόπο αυτό, και τα περιβάλλοντα πλοήγησης που έχουν αναπτυχθεί με χρήση μοντέλων θα είναι αναμενόμενα, επιτρέποντας στους τελικούς χρήστες να πλοηγούνται ευκολότερα στην εφαρμογή και να μην αποπροσανατολίζονται [8]. Χρήση Από Σχεδιαστικά Εργαλεία: Τα σχεδιαστικά μοντέλα είναι η βάση για την ανάπτυξη Σχεδιαστικών Εργαλείων (Design Tools) [9]. Τα σχεδιαστικά εργαλεία υποστηρίζουν μία συστηματική και δομημένη διαδικασία ανάπτυξης. Επιπλέον, επιτρέπουν στο χρήστη να εργάζεται στο επίπεδο αφαίρεσης που είναι πιο κοντά στο πεδίο της εφαρμογής και παρέχουν συστηματική διαδικασία μετάφρασης στο επίπεδο υλοποίησης. Βελτίωση Συντηρησιμότητας και Ορθότητας του συστήματος: Η συντηρησιμότητα μιας εφαρμογής παγκόσμιου ιστού είναι ευκολότερη, όταν ο προγραμματιστής γνωρίζει τα δομοστοιχεία από τα οποία αποτελείται η δεδομένη εφαρμογή. Επίσης, η συνέπεια μεταξύ του μοντέλου και της τελικής εφαρμογής είναι δεδομένη. Οπότε το τελικό σύστημα δε θα έχει ασυνέπειες και λάθη. 1.3 Απαιτήσεις Μεθόδων Μοντελοποίησης Τα σχεδιαστικά μοντέλα θα πρέπει να ικανοποιούν μία σειρά από απαιτήσεις [10], [5] που προέρχονται κατά κύριο λόγο από το συνδυασμό των απαιτήσεων που ορίζονται στα [2], 3

16 1 Μοντελοποίηση Εφαρμογών Παγκόσμιου Ιστού [11], [12] και [4]. Ο Schwinger στη διδακτορική του διατριβή [13] κατηγοριοποιεί το πλαίσιο αυτό των απαιτήσεων με βάση τρεις ορθογώνιες διαστάσεις, τα επίπεδα, τις όψεις και τις φάσεις μοντελοποίησης μιας εφαρμογής παγκόσμιου ιστού (Εικόνα 1). Στη συνέχεια παρουσιάζεται πιο αναλυτικά η συγκεκριμένη προσέγγιση. Εικόνα 1: Διαστάσεις Μοντελοποίησης Επίπεδα: Περιεχόμενο, Υπερκείμενο, Παρουσίαση Η πρώτη διάσταση μοντελοποίησης εφαρμογών παγκόσμιου ιστού αποτελείται από τρία διαφορετικά επίπεδα: το επίπεδο περιεχομένου, το επίπεδο υπερκειμένου και το επίπεδο παρουσίασης [14]. Το επίπεδο περιεχομένου αναφέρεται στα δεδομένα που χρησιμοποιούνται από την εφαρμογή παγκόσμιου ιστού. Συνήθως η διαχείριση των δεδομένων γίνεται με χρήση συστημάτων βάσεων δεδομένων. Το επίπεδο υπερκειμένου, το οποίο αποτελείται από το επίπεδο σύνθεσης και το επίπεδο πλοήγησης, ασχολείται με τη λογική σύνθεση των ιστοσελίδων και τη δομή της πλοήγησης. Τέλος, το επίπεδο παρουσίασης ασχολείται με την απεικόνιση του επιπέδου υπερκειμένου, όπως την εμφάνιση (layout) των σελίδων και την αλληλεπίδραση με το χρήστη [15]. Οι απαιτήσεις μιας εφαρμογής παγκόσμιου ιστού σε σχέση με τη συγκεκριμένη διάσταση είναι οι εξής: Διαχωρισμός μεταξύ επιπέδων και Σαφής Αντιστοίχιση. Μια κύρια απαίτηση για τη μοντελοποίηση εφαρμογών παγκόσμιου ιστού είναι ο ξεκάθαρος διαχωρισμός μεταξύ των τριών επιπέδων, κάθε ένα από τα οποία εξετάζει διαφορετική όψη των εφαρμογών παγκόσμιου ιστού. Αυτό επιτυγχάνεται δηλώνοντας ρητά τις αλληλεξαρτήσεις, όπως για παράδειγμα την ξεκάθαρη αντιστοίχηση μεταξύ των επιπέδων. Με αυτό τον τρόπο, διευκολύνεται η ανάπτυξη του μοντέλου και η επαναχρησιμοποίησή του, μειώνεται η πολυπλοκότητα και βελτιώνεται η ευελιξία [14]. Για παράδειγμα, για το ίδιο επίπεδο υπερκειμένου, ανάλογα με τα χαρακτηριστικά του φυλλομετρητή ή με τον τύπο του χρήστη, καθίσταται δυνατή η παροχή διαφορετικών αναπαραστάσεων. Ευέλικτες Δυνατότητες Μοντελοποίησης. Οι δυνατότητες αντιστοίχησης πρέπει να είναι όσο το δυνατόν πιο ευέλικτες, προκειμένου να ικανοποιηθούν οι 4

17 1 Μοντελοποίηση Εφαρμογών Παγκόσμιου Ιστού διάφοροι στόχοι που έχουν τεθεί κατά το σχεδιασμό καθενός από τα επίπεδα. Για παράδειγμα, προκειμένου το browsing να γίνει πιο αποδοτικό, η ίδια πληροφορία μπορεί να εμφανίζεται σε περισσότερα του ενός έγγραφα, έτσι ώστε ο χρήστης να μπορεί να πλοηγείται σε αυτή, με χρήση διαφορετικών μονοπατιών προσπέλασης. Η ύπαρξη της ίδιας πληροφορίας σε πολλά έγγραφα οδηγεί σε καταστάσεις πλεονασμού (redundancy) και επανάληψης. Στο επίπεδο περιεχομένου ο πλεονασμός εξαλείφεται με τη χρήση τεχνικών κανονικοποίησης (normalization techniques), για την αποφυγή ασυνεπειών και προβλημάτων στην ενημέρωση της πληροφορίας. Η ύπαρξη ευέλικτων δυνατοτήτων μοντελοποίησης εξασφαλίζει την παραγωγή του ενός επιπέδου από το άλλο, παρά τις διαφορές αυτές. Καλό θα είναι επίσης, η μέθοδος μοντελοποίησης να υποστηρίζει κάποιο είδος προκαθορισμένης αντιστοίχισης, η οποία θα μπορεί να διαμορφωθεί και να ρυθμιστεί από το σχεδιαστή. Bottom-Up και Top-Down Σχεδιασμός. Συνήθως οι σχεδιαστές κατά τη μοντελοποίηση μιας εφαρμογής παγκόσμιου ιστού ξεκινούν να μοντελοποιούν πρώτα το επίπεδο περιεχομένου και στη συνέχεια παράγουν τα υπόλοιπα επίπεδα ανάλογα. Αυτού του είδους η μοντελοποίηση ονομάζεται από-κάτω-προς-τα-πάνω. Καλό θα είναι η μοντελοποίηση να μην πρέπει αναγκαστικά και μόνο να ακολουθεί από κάτω προς τα πάνω σχεδιασμό. Η μέθοδος μοντελοποίησης θα πρέπει να επιτρέπει στους σχεδιαστές να μοντελοποιήσουν το σχεδιασμό της εφαρμογής και από-πάνω-προς-τα-κάτω, δηλαδή το επίπεδο περιεχομένου να μπορεί να παραχθεί από τα άλλα επίπεδα [16]. Ο από-κάτω-προς-τα-πάνω σχεδιασμός απαιτείται όταν για παράδειγμα η ήδη υπάρχουσα πληροφορία μιας βάσης δεδομένων πρέπει να μεταφερθεί στον παγκόσμιο ιστό, ενώ ο από-πάνω-προς-τακάτω σχεδιασμός είναι χρήσιμος στην περίπτωση που το περιεχόμενο υπαρχουσών ιστοσελίδων πρέπει να αποθηκευτεί σε μια βάση δεδομένων Όψεις: Δομή και Συμπεριφορά Η δεύτερη διάσταση αποτελείται από τις όψεις της δομής και της συμπεριφοράς. Οι όψεις αυτές είναι ορθογώνιες στα τρία επίπεδα της πρώτης διάστασης. Όσον αφορά στο επίπεδο περιεχομένου, το πεδίο της εφαρμογής πρέπει να δομηθεί με χρήση πρότυπων μηχανισμών αφαίρεσης, όπως η ταξινόμηση, η ομαδοποίηση και η γενίκευση. Εκτός από τη δόμηση του πεδίου, πρέπει επίσης να μοντελοποιηθεί και η όψη της συμπεριφοράς, λαμβάνοντας υπόψη τη λογική του πεδίου της εφαρμογής. Όμοια, στο επίπεδο υπερκειμένου πρέπει να μοντελοποιηθεί η δομή που αφορά τη σύνθεση των σελίδων, καθώς και τις σχέσεις πλοήγησης ανάμεσά τους, όπως επίσης πρέπει να μοντελοποιηθεί και η συμπεριφορά της εφαρμογής, για παράδειγμα να υπολογιστεί και να βρεθεί το άκρο ενός συγκεκριμένου συνδέσμου κατά το χρόνο εκτέλεσης. Όσον αφορά στην όψη της δομής, στο επίπεδο παρουσίασης πρέπει να μοντελοποιηθούν τα αντικείμενα της διεπαφής χρήστη και η ιεραρχική σύνθεσή τους. Η όψη της συμπεριφοράς εμπεριέχει τη μοντελοποίηση των ενεργειών που θα εκτελεστούν κατά την εισαγωγή δεδομένων 5

18 1 Μοντελοποίηση Εφαρμογών Παγκόσμιου Ιστού από το χρήστη. Για παράδειγμα πρέπει να μοντελοποιηθεί το τι θα συμβεί κατά το πάτημα ενός κουμπιού ή πως θα αλληλεπιδρούν και θα συγχρονίζονται τα αντικείμενα της διεπαφής χρήστη. Οι απαιτήσεις μιας εφαρμογής παγκόσμιου ιστού σε σχέση με τη συγκεκριμένη διάσταση είναι οι εξής: Φορμαλισμός Μοντελοποίησης (modeling formalism) για τη Δομή και τη Συμπεριφορά. Απαιτείται η δημιουργία ενός φορμαλισμού μοντελοποίησης που θα λαμβάνει υπόψη του τις ιδιαιτερότητες τόσο της δομής, όσο και της συμπεριφοράς και των τριών επιπέδων. Προκειμένου να υπάρχει μία ομοιόμορφη αντιστοίχηση μεταξύ των επιπέδων, καλό είναι η δομή και η συμπεριφορά τους να αναπαρασταθούν με βάση ένα μόνο ομοιόμορφο βασικό φορμαλισμό μοντελοποίησης και να μην επιλεγούν διαφορετικοί φορμαλισμοί μοντελοποίησης για καθένα από αυτά. Ο βασικός αυτός φορμαλισμός μοντελοποίησης θα προσαρμόζεται ανάλογα με τις ιδιαιτερότητες κάθε επιπέδου. Για τη μοντελοποίηση τόσο της δομής όσο και της συμπεριφοράς καθενός από τα τρία επίπεδα καλό είναι να χρησιμοποιηθεί μια αντικειμενοστρεφής τεχνική μοντελοποίησης [17]. Σχεδιαστικά Πρότυπα (Design Patterns): Μία επίσης σημαντική απαίτηση είναι η μέθοδος μοντελοποίησης να υποστηρίζει σχεδιαστικά πρότυπα σε όλα τα επίπεδα. Με τον τρόπο αυτό διευκολύνεται η επαναχρησιμοποίηση τμημάτων της δομής και της συμπεριφοράς των εφαρμογών παγκόσμιου ιστού. Στο [18] περιγράφονται πάνω από 50 σχεδιαστικά πρότυπα, τα περισσότερα από τα οποία αφορούν την πλοήγηση στο επίπεδο υπερκειμένου. Παραδείγματα σχεδιαστικών προτύπων πλοήγησης για τη μεταφορά δεδομένων είναι οι κατευθυνόμενες περιηγήσεις, μέσω των οποίων υποστηρίζεται η γραμμική πλοήγηση μεταξύ των σελίδων και τα ευρετήρια, τα οποία επιτρέπουν την πλοήγηση από το γενικό ευρετήριο στα επιμέρους μέλη του και αντίστροφα [19] Φάσεις: Ανάλυση, Σχεδιασμός και Υλοποίηση Η τρίτη διάσταση μοντελοποίησης εφαρμογών παγκόσμιου ιστού ορίζει τις διάφορες φάσεις του κύκλου ζωής ενός συστήματος από την ανάλυση απαιτήσεων έως την υλοποίηση της εφαρμογής. Η διάσταση αυτή είναι ορθογώνια ως προς τις δύο προηγούμενες. H δομή και η συμπεριφορά του περιεχομένου, η πλοήγηση και η παρουσίαση πρέπει να εξετάζονται σε κάθε φάση της διαδικασίας ανάπτυξης. Γενικά, η ερευνητική κοινότητα δεν έχει προτείνει ένα συγκεκριμένο και ομόφωνα αποδεκτό γενικό μοντέλο για τον κύκλο ζωής ανάπτυξης μιας εφαρμογής παγκόσμιου ιστού. Οι γρήγορες τεχνολογικές αλλαγές απαιτούν ο κύκλος ζωής μιας εφαρμογής παγκόσμιου ιστού να αποτελείται από περισσότερες και μικρότερης διάρκειας επαναλήψεις (iterations) από ότι τα συστήματα λογισμικού άλλων πεδίων. Η ανάγκη, λοιπόν, για πρωτοτυποποίηση και ο εντατικός έλεγχος μιας εφαρμογής παγκόσμιου ιστού είναι απαραίτητα. 6

19 1 Μοντελοποίηση Εφαρμογών Παγκόσμιου Ιστού Εξατομίκευση Μία άλλη διάσταση που πρέπει να ληφθεί υπόψη για τη μοντελοποίηση εφαρμογών παγκόσμιου ιστού είναι η διάσταση της εξατομίκευσης. Προκειμένου να οριστεί ο σχεδιαστικός χώρος της εξατομίκευσης είναι χρήσιμο να γίνει μία ιστορική αναδρομή [10]. Ο σχεδιασμός της εξατομίκευσης μιας εφαρμογής παγκόσμιου ιστού άρχισε να προβληματίζει τους σχεδιαστές από τότε που ο τελικός χρήστης έγινε το επίκεντρο στο σχεδιασμό εφαρμογών παγκόσμιου ιστού. Η κοινότητα των διεπαφών χρήστη (user interface community) εξετάζει αρκετό καιρό θέματα που αφορούν την εξατομίκευση. Καρπός των ερευνών της κοινότητας αυτής είναι οι προσαρμοστικές διεπαφές χρήστη (adaptive user interfaces) [20]. Οι προσαρμοστικές διεπαφές χρήστη σχεδιάζονται προκειμένου να διαμορφώνουν την αλληλεπιδραστική συμπεριφορά ενός συστήματος λαμβάνοντας υπόψη τους τόσο τις ατομικές ανάγκες των χρηστών όσο και τις μεταβαλλόμενες συνθήκες ενός περιβάλλοντος εφαρμογής. Η πιο γνωστή προσέγγιση διεπαφών χρήστη που περιέχει, κατά το μεγαλύτερο ποσοστό, προσαρμοστικά χαρακτηριστικά είναι οι έξυπνες ή συμβουλευτικές διεπαφές χρήστη (intelligent or advisory user interfaces) [21]. Μια άλλη περιοχή που ασχολείται με την εξατομίκευση, δίνοντας όμως μεγαλύτερη έμφαση στην προσαρμογή του περιεχομένου της εφαρμογής, είναι τα συστήματα φιλτραρίσματος πληροφορίας και παροχής συστάσεων (information filtering and recommender system) [22]. Στόχος των συστημάτων αυτών είναι η εξέταση και ανάλυση ενός μεγάλου πλήθους δυναμικά παραγόμενης πληροφορίας κειμένου και η παρουσίαση στο χρήστη της πληροφορίας εκείνης που πιθανόν να ικανοποιεί τις απαιτήσεις του. Η εμφάνιση του υπερκειμένου δημιούργησε την ανάγκη ύπαρξης εναλλακτικών μονοπατιών πρόσβασης στην πληροφορία, όπως για παράδειγμα διαφορετικών δομών πλοήγησης. Η ανάγκη αυτή οδήγησε σε μια άλλη κατεύθυνση έρευνας, το προσαρμοστικό υπερκείμενο και τα υπερμέσα (adaptive hypertext and hypermedia) [23]. Τέλος, με τη διάδοση των φορητών υπολογιστών και εφαρμογών παγκόσμιου ιστού για κινητές συσκευές (mobile computing and mobile web applicatons), κατά τη σχεδίαση εφαρμογών παγκόσμιου ιστού, πρέπει να λαμβάνονται υπ όψη όχι μόνο οι προτιμήσεις του χρήστη, αλλά και το περιβάλλον της κινητής συσκευής, για παράδειγμα το μέρος και η τοποθεσία που βρίσκεται η κινητή συσκευή, προκειμένου να προσαρμοστεί η εφαρμογή ανάλογα [24]. Στις παραπάνω προσεγγίσεις η έννοια της εξατομίκευσης χρησιμοποιείται αποκλειστικά και μόνο με ένα προσανατολισμένο στην υλοποίηση (implementation oriented) τρόπο. Αναπαριστούν όμως μια ορθή βάση για την παραγωγή του σχεδιαστικού χώρου της εξατομίκευσης στο επίπεδο μοντελοποίησης. Ο σχεδιαστικός χώρος της εξατομίκευσης μπορεί να χαρακτηριστεί από τρεις ορθογώνιες διαστάσεις: το είδος του πλαισίου εφαρμογής, το μέγεθος της προσαρμοστικότητας και το βαθμό εξατομίκευσης (Εικόνα 2). 7

20 1 Μοντελοποίηση Εφαρμογών Παγκόσμιου Ιστού Εικόνα 2: Σχεδιαστικός Χώρος Εξατομίκευσης Είδος Πλαισίου Εφαρμογής (Kind Of Context) Η πρώτη διάσταση της εξατομίκευσης καλύπτει το είδος του πλαισίου της εφαρμογής παγκόσμιου ιστού που πρόκειται να μοντελοποιηθεί. Συγκεκριμένα το είδος του πλαισίου εκφράζει το περιβάλλον της εφαρμογής. Η πλειοψηφία των προσεγγίσεων, όπως οι [3], [25], [26], [27] και [10] εξετάζουν το θέμα της εξατομίκευσης (personalization) από την άποψη του πλαισίου χρήστη (user context). Σε αυτή την περίπτωση εξετάζονται τα χαρακτηριστικά και οι προτιμήσεις σχετικών μεταξύ τους χρηστών και γίνονται υποθέσεις και προτάσεις για την επιλογή εξατομικευμένων υπηρεσιών [28]. Ένας επίσης σημαντικός αριθμός προσεγγίσεων λαμβάνει υπόψη τις ιδιότητες των συσκευών και του δικτύου χρησιμοποιώντας το πλαίσιο συσκευής (device context) και το πλαίσιο δικτύου (network context) [26], [29]. Συνήθως, το πλαίσιο δικτύου και το πλαίσιο συσκευής λαμβάνονται υπόψη σε συνδυασμό και όχι ξεχωριστά. Αυτό είναι λογικό, αν αναλογιστεί κανείς ότι και οι κινητές συσκευές χρησιμοποιούν ασύρματες συνδέσεις, οι οποίες εμπεριέχουν ορισμένους από τους περιορισμούς του δικτύου. Στο [30] για παράδειγμα γίνεται διαχωρισμός μεταξύ τριών όψεων των παραλλαγών χρήστη (client variations). Οι παραλλαγές αυτές είναι οι εξής: παραλλαγές δικτύου, όπως είναι το εύρος ζώνης και η λανθάνουσα καθυστέρηση (latency), παραλλαγές υλικού, όπως το μέγεθος της οθόνης, και τέλος παραλλαγές μνήμης και λογισμικού, οι οποίες περιλαμβάνουν και τους τύπους δεδομένων που μπορεί να μεταχειριστεί ο πελάτης. Στο [31] εισάγεται επιπλέον η έννοια του πλαισίου τοποθεσίας (location context), το οποίο περιλαμβάνει τις φυσικές και λογικές τοποθεσίες (π.χ., στο σπίτι σε αντίθεση με το γραφείο). Εντούτοις, μόνο ένα μικρό μέρος των προσεγγίσεων που εξετάστηκαν ασχολούνται ρητά με το πλαίσιο τοποθεσίας [24]. Αυτό συμβαίνει τόσο εξαιτίας τεχνικών ελλείψεων, όσο και εξαιτίας έλλειψης νόμιμων ρυθμίσεων και κανονισμών. Όμοια, στη βιβλιογραφία σπάνια λαμβάνεται υπόψη το πλαίσιο χρόνου (time context), μέσω του οποίου γίνεται εξατομίκευση με βάση το χρόνο προσπέλασης μιας συγκεκριμένης υπηρεσίας. Ανεξάρτητα από το είδος του, το πλαίσιο της εφαρμογής μπορεί να διαχωριστεί σε ένα 8

21 1 Μοντελοποίηση Εφαρμογών Παγκόσμιου Ιστού αμετάβλητο μέρος, το οποίο διαμορφώνεται ελέγχοντας το περιβάλλον της εφαρμογής (π.χ., τον τύπο της συσκευής που χρησιμοποιείται ή ένα αναγνωριστικό του κελιού το οποίο φανερώνει την τρέχουσα τοποθεσία της συσκευής κατά την προσπέλαση της εφαρμογής) και ένα μεταβλητό μέρος το οποίο μπορεί να εισαχθεί από ένα χρήστη (π.χ., οι προτιμήσεις του), ένα πωλητή συσκευών (π.χ., τα χαρακτηριστικά μιας συσκευής) ή ένα σχεδιαστή (π.χ., χάρτες δρόμων). Το μεταβλητό μέρος ονομάζεται επίσης και τρέχον πλαίσιο της εφαρμογής, και το αμετάβλητο μέρος, σύμφωνα με τη βιβλιογραφία, καλείται προφίλ [32] Μέγεθος Προσαρμοστικότητας (Granularity of Adaptation) Η δεύτερη διάσταση υποδηλώνει το μέγεθος της προσαρμοστικότητας (granularity of adaptation), η οποία κυμαίνεται από μικροπροσαρμοστικότητα έως μακροπροσαρμοστικότητα. Η μικροπροσαρμοστικότητα εξετάζει τις πολύ μικρές προσαρμογές, όπως είναι για παράδειγμα η απενεργοποίηση ενός συνδέσμου μιας σελίδας, ή ο καθορισμός της ιδιότητας μέλους ενός αντικείμενου σε μία κλάση. Η μακροπροσαρμοστικότητα δηλώνει ότι ανάλογα με το πλαίσιο της εφαρμογής μπορούν να προσαρμοστούν σχετικά μεγάλα τμήματα της εφαρμογής (π.χ., να χρησιμοποιηθεί μία απλή bullet list, αντί για ένα indexed guided tour). Αντικείμενο προσαρμοστικότητας μπορεί να αποτελέσει κάθε ένα από τα επίπεδα μιας εφαρμογής παγκόσμιου ιστού, που ορίστηκαν προηγουμένως. Πρέπει να σημειωθεί ότι δεν υπάρχει σαφής διαχωρισμός των ορίων της μικροπροσαρμοστικότητας και της μακροπροσαρμοστικότητας. Στην πιο ακραία περίπτωση, η μακροπροσαρμοστικότητα, ανάλογα με το πλαίσιο της εφαρμογής, περιλαμβάνει την αντικατάσταση μιας ολόκληρης εφαρμογής που υλοποιεί μια συγκεκριμένη υπηρεσία με μία άλλη. Η ακραία αυτή περίπτωση μακροεξατομίκευσης συναντάται συνήθως σε συνδυασμό με το στατικό πλαίσιο εφαρμογής και τη στατική προσαρμογή (ο ορισμός τους δίνεται παρακάτω) Βαθμός Εξατομίκευσης (Degree of Customization) Η τρίτη διάσταση, ο βαθμός εξατομίκευσης, εκφράζει το γεγονός ότι τόσο το πλαίσιο της εφαρμογής παγκόσμιου ιστού όσο και η προσαρμοστικότητα μπορούν να είναι είτε στατικά, δηλαδή προκαθορισμένα, είτε δυναμικά, να καθορίζονται δηλαδή κατά τη διάρκεια του χρόνου εκτέλεσης. Παράδειγμα στατικού πλαισίου εφαρμογής και στατικής προσαρμοστικότητας είναι η επιλογή μιας προκαθορισμένης έκδοσης μιας εφαρμογής ανάλογα με τη συσκευή που χρησιμοποιείται για την προσπέλασή της. Να υπάρχει δηλαδή, διαφορετική έκδοση της εφαρμογής σε περίπτωση που προσπελαύνεται από μία κινητή συσκευή και διαφορετική έκδοση σε περίπτωση που η εφαρμογή προσπελαύνεται από ένα προσωπικό υπολογιστή. Παράδειγμα πλήρους δυναμικής περίπτωσης είναι η προσαρμογή της ανάλυσης μιας εικόνας κατά το χρόνο εκτέλεσης, εξ αιτίας κάποιας αλλαγής στο εύρος ζώνης. Οι εφαρμογές που υποστηρίζουν μόνο στατικά πλαίσια εφαρμογής ή και στατική προσαρμοστικότητα συνήθως ονομάζονται προσαρμόσιμες, ενώ οι εφαρμογές που υποστηρίζουν και δυναμικά πλαίσια εφαρμογής και δυναμική προσαρμοστικότητα θεωρούνται προσαρμοστικές [27]. 9

22 1 Μοντελοποίηση Εφαρμογών Παγκόσμιου Ιστού 1.4 Μέθοδοι και Τεχνικές Μοντελοποίησης Με βάση τις απαιτήσεις μοντελοποίησης που προαναφέρθηκαν έχει αναπτυχθεί και προταθεί από την ερευνητική κοινότητα ένα πλήθος μεθόδων, μεθοδολογιών και τεχνικών μοντελοποίησης των εφαρμογών παγκόσμιου ιστού. Οι εννοιολογικές προσεγγίσεις μοντελοποίησης του παγκόσμιου ιστού παρέχουν ένα υψηλό βαθμό αφαίρεσης στη διαδικασία του σχεδιασμού και της ανάπτυξης των εφαρμογών παγκόσμιου ιστού. Οι μεθοδολογικές προσεγγίσεις συνήθως: χωρίζουν το σχεδιασμό των εφαρμογών παγκόσμιου ιστού σε διαφορετικές διαστάσεις, οργανώνουν τις δραστηριότητες ανάπτυξης σε μία δομημένη διαδικασία και παρέχουν εργαλεία μεταβλητού επιπέδου αυτοματοποίησης [4]. Στη συνέχεια παρουσιάζονται τα πιο αντιπροσωπευτικά δείγματα μεθόδων μοντελοποίησης εφαρμογών παγκόσμιου ιστού. Ιδιαίτερη αναφορά και εκτενέστερη παρουσίαση γίνεται στη WebML, λόγω του ότι πρόκειται να αποτελέσει τη μέθοδο μοντελοποίησης που χρησιμοποιείται στις τεχνικές που παρουσιάζονται στα επόμενα κεφάλαια HDM (Hypertext Design Model) Η HDM [7] είναι μία από τις πρώτες σχεδιαστικές μεθόδους που προτάθηκαν για το σχεδιασμό εφαρμογών υπερκειμένου. Βασίζεται στο μοντέλο Οντοτήτων-Συσχετίσεων (Entity-Relationship model) και επεκτείνει την έννοια της οντότητας. Οι HDM οντότητες έχουν μία εσωτερική δομή. Κάθε οντότητα είναι συσχετισμένη με πληροφορία που αφορά τον τρόπο πλοήγησής της και τον τρόπο με τον οποίο μπορεί να οπτικοποιηθεί η πληροφορία που περιέχει. Μία οντότητα είναι μία ιεραρχία συστατικών, τα οποία αποτελούνται από δομοστοιχεία. Κάθε δομοστοιχείο παρουσιάζει την πληροφορία του συστατικού με βάση μια συγκεκριμένη προοπτική (perspective). H προοπτική περιγράφει την έννοια της ύπαρξης διαφορετικών αναπαραστάσεων για το ίδιο περιεχόμενο. Τα δομοστοιχεία είναι τα μικρότερα κομμάτια πληροφορίας που μπορούν να οπτικοποιηθούν σε μία HDM εφαρμογή. Οι διάφορες HDM δομές πληροφορίας αλληλοσυνδέονται με χρήση συνδέσμων, οι οποίοι κατηγοριοποιούνται σε: δομικούς συνδέσμους, οι οποίοι συνδέουν συστατικά που ανήκουν στην ίδια οντότητα, συνδέσμους προοπτικής, οι οποίοι συνδέουν διαφορετικά δομοστοιχεία που αντιστοιχούν στο ίδιο συστατικό, συνδέσμους εφαρμογής, οι οποίοι ορίζονται από το σχεδιαστή και συνδέουν συστατικά και οντότητες. Στην HDM υπάρχουν δύο διαφορετικές ομάδες οντοτήτων. Οι οντότητες της εφαρμογής, που περιγράφηκαν προηγουμένως, και τα περιγράμματα (outlines), που επιτρέπουν την πρόσβαση και τη δυνατότητα εντοπισμού και επιλογής των οντοτήτων εφαρμογής. Τα 10

23 1 Μοντελοποίηση Εφαρμογών Παγκόσμιου Ιστού περιγράμματα αυτά ή οι δομές προσπέλασης είναι ταξινομημένα δέντρα συστατικών. Οι οντότητες της εφαρμογής συνθέτουν το hyperbase. Η HDM επιτρέπει την περιγραφή συνολικών κλάσεων στοιχείων δεδομένων και δομών πλοήγησης των εφαρμογών υπερκειμένου. Για τη μοντελοποίηση μιας εφαρμογής υπερκειμένου διακρίνονται δύο επίπεδα. Το πρώτο επίπεδο είναι το επίπεδο υπερβάσης (hyperbase layer), το οποίο αναπαριστά το περιεχόμενο της εφαρμογής και το δεύτερο είναι το επίπεδο προσπέλασης (access layer), το οποίο παρέχει ευκολίες πλοήγησης. Με χρήση της έννοιας της προοπτικής, η οποία όπως προαναφέρθηκε περιγράφει διαφορετικές αναπαραστάσεις για το ίδιο περιεχόμενο, η HDM έχει τη δυνατότητα προσαρμογής στις απαιτήσεις του πελάτη. Για παράδειγμα, το ίδιο περιεχόμενο μπορεί να έχει διαφορετικές γλωσσικές προοπτικές, π.χ. Αγγλικά και Γαλλικά. Τίποτα όμως δεν είναι προκαθορισμένο και ο σχεδιαστής είναι εκείνος που αποφασίζει πώς θα χρησιμοποιήσει την προοπτική για την προβολή πληροφορίας με διαφορετικούς τρόπους. Για το σχεδιασμό και την ανάπτυξη ιστοσελίδων με βάση την HDM έχει υλοποιηθεί το Jweb εργαλείο [33] RMM (Relationship Management Methodology) Η RMM [34] είναι μία μεθοδολογία για το σχεδιασμό και την κατασκευή εφαρμογών υπερμέσων, η οποία ενσωματώνει τις σχεδιαστικές έννοιες της HDM σε μία δομημένη μεθοδολογία. Βασικό στοιχείο της RMM μεθοδολογίας είναι το μοντέλο δεδομένων της, το Relationship Management Data Model (RMDM), τα δομοστοιχεία του οποίου φαίνονται στον Πίνακας 1. Πίνακας 1: RMDM Δομοστοιχεία Το RMDM παρέχει μία γλώσσα για την περιγραφή των αντικειμένων πληροφορίας και των μηχανισμών πλοήγησης σε εφαρμογές υπερμέσων. Το μοντέλο αυτό βασίζεται στο μοντέλο οντοτήτων συσχετίσεων και στην HDM. Οι οντότητες (entities) και τα 11

24 1 Μοντελοποίηση Εφαρμογών Παγκόσμιου Ιστού κατηγορήματά (attributes) τους αναπαριστούν αφηρημένα ή συγκεκριμένα αντικείμενα και οι συσχετίσεις, οι οποίες μπορεί να είναι ένα-προς-ένα (one-to-one), ένα-προςπολλα (one-to-many) και πολλά-προς-πολλά (many-to-many), αναπαριστούν σχέσεις μεταξύ των οντοτήτων. Τα κατηγορήματα των οντοτήτων ομαδοποιούνται σε slices ανάλογα με τη φύση της πληροφορίας που περιέχουν. Για την πλοήγηση στο RMDM έχουν οριστεί έξι δομοστοιχεία προσπέλασης. Για τον καθορισμό της προσπέλασης των sclices μιας οντότητας χρησιμοποιούνται σύνδεσμοι μονής και διπλής κατεύθυνσης. Οι πιο σημαντικές δομές πλοήγησης που υποστηρίζονται από το RMDM είναι: τα ευρετήρια, τα οποία παρουσιάζουν μία λίστα των στιγμιότυπων των οντοτήτων και παρέχουν απευθείας πρόσβαση σε κάθε αντικείμενο της λίστας, οι κατευθυνόμενες περιηγήσεις, οι οποίες υλοποιούν ένα γραμμικό μονοπάτι σε μία συλλογή αντικειμένων, επιτρέποντας στο χρήστη να κινείται εμπρός ή πίσω στο μονοπάτι και οι ομαδοποιήσεις, οι οποίες παρέχουν ένα μηχανισμό τύπου μενού, ο οποίος επιτρέπει την πρόσβαση σε άλλα τμήματα της εφαρμογής. Ο σχεδιασμός και η δημιουργία εφαρμογών υπερμέσων με χρήση της RMM αποτελείται από τα παρακάτω επτά βήματα: E-R Σχεδιασμός: Στο βήμα αυτό το πεδίο πληροφοριών της εφαρμογής αναπαρίσταται μέσω ενός διαγράμματος οντοτήτων συσχετίσεων. Σχεδιασμός slices: Στο βήμα αυτό καθορίζεται ο τρόπος με τον οποίο η πληροφορία των επιλεγμένων οντοτήτων θα παρουσιαστεί στο χρήστη. Τα διάφορα κατηγορήματα της οντότητας ομαδοποιούνται σε slices, τα οποία οργανώνονται σε ένα δίκτυο υπερκειμένου. Σχεδιασμός πλοήγησης: Ο σχεδιαστής, στο βήμα αυτό, σχεδιάζει τα μονοπάτια που θα επιτρέψουν στο χρήστη την πλοήγηση στο υπερκείμενο. Αρχικά, σχεδιάζεται η πλοήγηση μεταξύ οντοτήτων που συσχετίζονται μέσω μιας συσχέτισης. Στη συνέχεια, ο σχεδιαστής σχεδιάζει υψηλού επιπέδου δομές πρόσβασης, ομαδοποιώντας αντικείμενα ενδιαφέροντος. Ο σχεδιασμός μπορεί να γίνει είτε από κάτω προς τα πάνω (bottom-up προσέγγιση), ξεκινώντας πρώτα από κάθε οντότητα και στη συνέχεια πηγαίνοντας σε πιο γενικές δομές προσπέλασης, είτε από πάνω προς τα κάτω (top-down προσέγγιση). Σχεδιασμός μετατροπής πρωτοκόλλου: Χρησιμοποιείται ένα σύνολο από κανόνες μετατροπής, προκειμένου να μετατραπεί κάθε αντικείμενο του RMDM διαγράμματος σε αντικείμενα της πραγματικής πλατφόρμας. Σχεδιασμός του περιβάλλοντος διεπαφής: Ο σχεδιαστής ορίζει τον τρόπο οπτικής παρουσίασης κάθε αντικειμένου του RMDM διαγράμματος που δημιουργήθηκε μετά το σχεδιασμό της πλοήγησης. Σχεδιασμός της συμπεριφοράς κατά το χρόνο εκτέλεσης (run-time behavior design): Στο βήμα αυτό, ο σχεδιαστής αποφασίζει και ορίζει τον τρόπο με τον οποίο θα υλοποιηθεί η λειτουργικότητα της εφαρμογής. 12

25 1 Μοντελοποίηση Εφαρμογών Παγκόσμιου Ιστού Έλεγχος και Εκτίμηση: Στο στάδιο αυτό, όπως και στα παραδοσιακά συστήματα λογισμικού, ελέγχεται αν το τελικό προϊόν εκτελεί σωστά τις λειτουργίες για τις οποίες προοριζόταν. Στις εφαρμογές υπερμέσων, όλα τα μονοπάτια πλοήγησης πρέπει να εξεταστούν διεξοδικά. Ο σχεδιασμός και η ανάπτυξη εφαρμογών παγκόσμιου ιστού με χρήση της RMM υποστηρίζεται από ένα εργαλείο, το Relationship Management Case Tool (RMCase) [35]. Το εργαλείο αυτό υποστηρίζει τα στάδια της RMM μεθοδολογίας, αναπτύσσοντας, για κάθε στάδιο, ένα περιβάλλον. Τα σχεδιαστικά αντικείμενα της RMM διαμοιράζονται στα περιβάλλοντα που δημιουργούνται. Δίνεται η δυνατότητα πλοήγησης με στόχο τη μετάβαση από περιβάλλον σε περιβάλλον OOHDM (Object-Oriented Hypermedia Design Method) H OOHDM, που αναπτύχθηκε από τους Rossi και Schwabe [36], χρησιμοποιεί μια αντικειμενοστρεφή προσέγγιση για το σχεδιασμό εφαρμογών παγκόσμιου ιστού. Η ανάπτυξη εφαρμογών στην OOHDM ακολουθεί μία διαδικασία τεσσάρων βημάτων: Εννοιολογικός Σχεδιασμός: Στο στάδιο αυτό, το εννοιολογικό μοντέλο της εφαρμογής αναπαρίσταται με ένα class diagram. Συγκεκριμένα, χρησιμοποιούνται αντικειμενοστρεφείς αρχές μοντελοποίησης για την αναπαράσταση των μοντέλων του πεδίου. Τα αντικείμενα, οι σχέσεις και η επιδιωκόμενη λειτουργικότητα της εφαρμογής αναπαρίστανται με χρήση κλάσεων και σχέσεων. Οι κλάσεις χρησιμοποιούνται για την παραγωγή κόμβων σελίδων και οι σχέσεις χρησιμοποιούνται για την παραγωγή συνδέσμων στη φάση του σχεδιασμού πλοήγησης. Σχεδιασμός Πλοήγησης: Στη φάση αυτή, θεωρούμε ότι οι εφαρμογές παγκόσμιου ιστού είναι εφαρμογές υπερμέσων που έχουν χτιστεί πάνω στο εννοιολογικό μοντέλο. Τα αντικείμενα στα οποία ο χρήστης πλοηγείται δεν είναι τα εννοιολογικά αντικείμενα, αλλά άλλου είδους αντικείμενα τα οποία έχουν δημιουργηθεί από ένα ή περισσότερα εννοιολογικά αντικείμενα. Ο χρήστης πλοηγείται στα διάφορα αντικείμενα μέσω συνδέσμων, πολλοί από τους οποίους δεν παράγονται απευθείας από τις εννοιολογικές σχέσεις. Η OOHDM υποστηρίζει το σχεδιασμό της πλοήγησης σε μεγάλο εύρος. Για κάθε προφίλ χρήστη δίνεται η δυνατότητα ορισμού διαφορετικής δομής πλοήγησης, η οποία απεικονίζει τα αντικείμενα και τις σχέσεις του εννοιολογικού σχήματος, ανάλογα με τις λειτουργίες που μπορεί κάθε φορά να εκτελεί ο συγκεκριμένος τύπος χρήστη. Η δομή της κλάσης πλοήγησης της εφαρμογής παγκόσμιου ιστού καθορίζεται από ένα σχήμα που περιέχει κλάσεις πλοήγησης. Στην OOHDM, έχει οριστεί ένα σύνολο από κλάσεις πλοήγησης, όπως κόμβοι, σύνδεσμοι, ευρετήρια και δομές προσπέλασης. Οι κόμβοι αναπαριστούν λογικές όψεις των κλάσεων που έχουν οριστεί στο πεδίο του μοντέλου δεδομένων. Οι κόμβοι συνδέονται μέσω συνδέσμων, για τη διευκόλυνση της πλοήγησης. Οι δομές προσπέλασης, όπως για 13

«Μοντελοποίηση Εφαρμογών Παγκόσμιου Ιστού: Αποδοτική Αναζήτηση & Εφαρμογή Σχεδιαστικών Λύσεων και Προτύπων»

«Μοντελοποίηση Εφαρμογών Παγκόσμιου Ιστού: Αποδοτική Αναζήτηση & Εφαρμογή Σχεδιαστικών Λύσεων και Προτύπων» Πανεπιστήμιο Πατρών Τμήμα Μηχανικών Η/Υ και Πληροφορικής Διπλωματική Εργασία για το Μεταπτυχιακό Δίπλωμα Ειδίκευσης στην «Επιστήμη και Τεχνολογία Υπολογιστών» «Μοντελοποίηση Εφαρμογών Παγκόσμιου Ιστού:

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

«Μοντελοποίηση Εφαρμογών Παγκόσμιου Ιστού:Κλωνοποίηση σε επίπεδο Μοντέλου, Ανάλυση Ποιότητας & Σχεδιαστικά Πρότυπα»

«Μοντελοποίηση Εφαρμογών Παγκόσμιου Ιστού:Κλωνοποίηση σε επίπεδο Μοντέλου, Ανάλυση Ποιότητας & Σχεδιαστικά Πρότυπα» Πανεπιστήμιο Πατρών Τμήμα Μηχανικών Η/Υ και Πληροφορικής Διπλωματική Εργασία για το Μεταπτυχιακό Δίπλωμα Ειδίκευσης στην «Επιστήμη και Τεχνολογία Υπολογιστών» «Μοντελοποίηση Εφαρμογών Παγκόσμιου Ιστού:Κλωνοποίηση

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

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

ΜΕΘΟΔΟΛΟΓΙΕΣ ΑΝΑΠΤΥΞΗΣ ΣΥΣΤΗΜΑΤΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΕΘΟΔΟΛΟΓΙΕΣ ΑΝΑΠΤΥΞΗΣ ΣΥΣΤΗΜΑΤΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Μεθοδολογίες Ανάπτυξης Συστημάτων Πληροφορικής Απαντούν στα εξής ερωτήματα Ποιά βήματα θα ακολουθηθούν? Με ποιά σειρά? Ποιά τα παραδοτέα και πότε? Επομένως,

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

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

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

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

Αρχιτεκτονική Λογισμικού

Αρχιτεκτονική Λογισμικού Αρχιτεκτονική Λογισμικού περιεχόμενα παρουσίασης Τι είναι η αρχιτεκτονική λογισμικού Αρχιτεκτονική και απαιτήσεις Σενάρια ποιότητας Βήματα αρχιτεκτονικής σχεδίασης Αρχιτεκτονικά πρότυπα Διαστρωματωμένη

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

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Εισαγωγή. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Εισαγωγή. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Εισαγωγή Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική Θεσσαλονίκη, Σεπτέμβριος 2013 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για

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

UML. Γενικά χαρακτηριστικά Στοιχεία µοντέλων Συσχετίσεις. Παραδείγματα

UML. Γενικά χαρακτηριστικά Στοιχεία µοντέλων Συσχετίσεις. Παραδείγματα ΕΙΣΑΓΩΓΗ ΣΤΗ UML UML Γενικά χαρακτηριστικά Στοιχεία µοντέλων Συσχετίσεις ιαγράµµατα Παραδείγματα Ορισμός του μοντέλου Αποτελεί µια αφηρηµένη περιγραφή ενός Φυσικού συστήµατος. Αποτελεί ένα σχέδιο για την

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

Εισαγωγή στη Σχεδίαση Λογισμικού

Εισαγωγή στη Σχεδίαση Λογισμικού Εισαγωγή στη Σχεδίαση Λογισμικού περιεχόμενα παρουσίασης Τι είναι η σχεδίαση λογισμικού Έννοιες σχεδίασης Δραστηριότητες σχεδίασης Σχεδίαση και υποδείγματα ανάπτυξης λογισμικού σχεδίαση Η σχεδίαση του

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

Μοντελοποίηση Εφαρμογών Παγκόσμιου Ιστού μέσω Τεχνικών Αντίστροφης Μηχανίκευσης

Μοντελοποίηση Εφαρμογών Παγκόσμιου Ιστού μέσω Τεχνικών Αντίστροφης Μηχανίκευσης Πανεπιστήμιο Πατρών Τμήμα Μηχανικών Η/Υ και Πληροφορικής Διπλωματική εργασία για το Μεταπτυχιακό Δίπλωμα Ειδίκευσης στην «Επιστήμη & Τεχνολογία Υπολογιστών» Μοντελοποίηση Εφαρμογών Παγκόσμιου Ιστού μέσω

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

Μοντελοποίηση δεδομένων με UML Χρήση σε πολυμεσικές εφαρμογές

Μοντελοποίηση δεδομένων με UML Χρήση σε πολυμεσικές εφαρμογές Μοντελοποίηση δεδομένων με UML Χρήση σε πολυμεσικές εφαρμογές Ελληνικό Ανοικτό Πανεπιστήμιο ΓΤΠ61 Πληροφορική Πολυμέσα Αγγελική Μαζαράκη Τι είναι η UML Είναι μια γραφική γλώσσα μοντελοποίησης συστημάτων.

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

Περιεχόμενο του μαθήματος

Περιεχόμενο του μαθήματος ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Απαιτήσεις Λογισμικού Περιπτώσεις χρήσης Δρ Βαγγελιώ Καβακλή Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου Εαρινό Εξάμηνο 2012-2013 1 Περιεχόμενο του μαθήματος

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

Διαχείριση Πληροφοριακών Συστημάτων

Διαχείριση Πληροφοριακών Συστημάτων ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Διαχείριση Πληροφοριακών Συστημάτων Ενότητα #7: UML Χρήστος Δρόσος Τμήμα Μηχανικών Αυτοματισμού Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό

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

Ασφάλεια σε χώρους αναψυχής: Ένα σύστημα από έξυπνα αντικείμενα

Ασφάλεια σε χώρους αναψυχής: Ένα σύστημα από έξυπνα αντικείμενα Σχολή Επικοινωνίας και Μέσων Ενημέρωσης Πτυχιακή εργασία Ασφάλεια σε χώρους αναψυχής: Ένα σύστημα από έξυπνα αντικείμενα Εύρος Χριστοδούλου Λεμεσός, Μάιος 2018 ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΕΠΙΚΟΙΝΩΝΙΑΣ

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

Διαφορές single-processor αρχιτεκτονικών και SoCs

Διαφορές single-processor αρχιτεκτονικών και SoCs 13.1 Τα συστήματα και η επικοινωνία μεταξύ τους γίνονται όλο και περισσότερο πολύπλοκα. Δεν μπορούν να περιγραφούνε επαρκώς στο επίπεδο RTL καθώς αυτή η διαδικασία γίνεται πλέον αρκετά χρονοβόρα. Για αυτό

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

H Γενετική Αρχιτεκτονική του Σακχαρώδους Διαβήτη Τύπου 2. Ερευνητικό Πρόγραμμα «Θαλής» Σχεδιασμός και Υλοποίηση της Διαδικτυακής Πύλης του Έργου

H Γενετική Αρχιτεκτονική του Σακχαρώδους Διαβήτη Τύπου 2. Ερευνητικό Πρόγραμμα «Θαλής» Σχεδιασμός και Υλοποίηση της Διαδικτυακής Πύλης του Έργου ΟΜΑΔΑ ΒΙΟΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟΥ ΠΑΤΡΩΝ H Γενετική Αρχιτεκτονική του Σακχαρώδους Διαβήτη Τύπου 2. Ερευνητικό Πρόγραμμα «Θαλής» Σχεδιασμός και Υλοποίηση της Διαδικτυακής Πύλης του Έργου Α. Τσακαλίδης,

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

Διαδικασίες παραγωγής λογισμικού. Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση

Διαδικασίες παραγωγής λογισμικού. Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Διαδικασίες παραγωγής λογισμικού Περιεχόμενα Παρουσίαση μοντέλων διεργασίας ανάπτυξης λογισμικού Περιγραφή τριών γενικών μοντέλων διεργασίας ανάπτυξης λογισμικού Γενική περιγραφή των διαδικασιών που περιλαμβάνονται

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

Τεχνολογία Πολυμέσων. Ενότητα 6: Υπερκείμενο - Υπερμέσα. Νικολάου Σπύρος Τμήμα Μηχανικών Πληροφορικής ΤΕ

Τεχνολογία Πολυμέσων. Ενότητα 6: Υπερκείμενο - Υπερμέσα. Νικολάου Σπύρος Τμήμα Μηχανικών Πληροφορικής ΤΕ Τεχνολογία Πολυμέσων Ενότητα 6: Υπερκείμενο - Υπερμέσα Νικολάου Σπύρος Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

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

Πίνακας Περιεχομένων. μέρος A 1 Εισαγωγή στην Τεχνολογία Λογισμικού

Πίνακας Περιεχομένων. μέρος A 1 Εισαγωγή στην Τεχνολογία Λογισμικού Πρόλογος...21 μέρος A Εισαγωγή στην Τεχνολογία Λογισμικού 1 Εισαγωγή στην Τεχνολογία Λογισμικού 1.1 Το λογισμικό...25 1.1.1 Ο ρόλος και η σημασία του λογισμικού...26 1.1.2 Οικονομική σημασία του λογισμικού...28

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

Εργαλεία CASE. Computer Assisted Systems Engineering. Δρ Βαγγελιώ Καβακλή. Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου

Εργαλεία CASE. Computer Assisted Systems Engineering. Δρ Βαγγελιώ Καβακλή. Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Εργαλεία CASE Computer Assisted Systems Engineering Δρ Βαγγελιώ Καβακλή Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου Εαρινό Εξάμηνο 2011-2012 1 Εργαλεία CASE

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

ΑΝΑΛΥΣΗ ΑΠΑΙΤΗΣΕΩΝ ανάλυση απαιτήσεων Σε αυτό το μάθημα θα ασχοληθούμε με : Δημιουργία μοντέλων

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

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

Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420)

Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420) Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420) Διάλεξη 8: Σχεδίαση Συστήματος Σχεδίαση Συστήματος 2 Διεργασία μετατροπής του προβλήματος σε λύση. Από το Τί στο Πώς. Σχέδιο: Λεπτομερής περιγραφή της λύσης. Λύση:

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

08 Η γλώσσα UML I. Τεχνολογία Λογισμικού. Σχολή Hλεκτρολόγων Mηχανικών & Mηχανικών Yπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο. Χειμερινό εξάμηνο

08 Η γλώσσα UML I. Τεχνολογία Λογισμικού. Σχολή Hλεκτρολόγων Mηχανικών & Mηχανικών Yπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο. Χειμερινό εξάμηνο 08 Η γλώσσα UML I Τεχνολογία Λογισμικού Σχολή Hλεκτρολόγων Mηχανικών & Mηχανικών Yπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Χειμερινό εξάμηνο 2017 18 Δρ. Κώστας Σαΐδης saiko@di.uoa.gr Unified Modeling Language

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

Αρχές Προγραμματισμού Υπολογιστών

Αρχές Προγραμματισμού Υπολογιστών Αρχές Προγραμματισμού Υπολογιστών Ανάπτυξη Προγράμματος Β ΕΠΑΛ Τομέας Πληροφορικής Βελώνης Γεώργιος Καθηγητής Πληροφορικής ΠΕ20 Κύκλος ανάπτυξης προγράμματος/λογισμικού Η διαδικασία ανάπτυξης λογισμικού,

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

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

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

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

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

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

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

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

Θέματα Ατομικής Διπλωματικής Εργασίας - DRAFT Ακαδημαϊκό Έτος 2015/2016. Γεωργία Καπιτσάκη (Λέκτορας) Θέματα Ατομικής Διπλωματικής Εργασίας - DRAFT Ακαδημαϊκό Έτος 2015/2016 Γεωργία Καπιτσάκη (Λέκτορας) ΠΕΡΙΟΧΗ Α: ΕΦΑΡΜΟΓΕΣ ΜΕ ΑΙΣΘΗΤΗΡΕΣ ΓΙΑ ΕΠΙΓΝΩΣΗ ΣΥΓΚΕΙΜΕΝΟΥ Οι αισθητήρες μας δίνουν τη δυνατότητα συλλογής

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

Κεφάλαιο 4 Σχεδίαση Βάσεων Δεδομένων

Κεφάλαιο 4 Σχεδίαση Βάσεων Δεδομένων Βάσεις Δεδομένων Επαγγελματικού Λυκείου Κεφάλαιο 4 Σχεδίαση Βάσεων Δεδομένων Εισηγητής Δελησταύρου Κωνσταντίνος Καθηγητής Πληροφορικής ΠΕ20 Μηχανικός Πληροφορικής Τ.Ε. M.Sc. στα Συστήματα Υπολογιστών Περιεχόμενα

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

Εισαγωγικό Μάθημα Βασικές Έννοιες - Ανάλυση Απαιτήσεων

Εισαγωγικό Μάθημα Βασικές Έννοιες - Ανάλυση Απαιτήσεων ..?????? Εργαστήριο ΒΑΣΕΙΣ????????? ΔΕΔΟΜΕΝΩΝ Βάσεων Δεδομένων?? ΙΙ Εισαγωγικό Μάθημα Βασικές Έννοιες - . Γενικά Τρόπος Διεξαγωγής Ορισμός: Βάση Δεδομένων (ΒΔ) είναι μια συλλογή από σχετιζόμενα αντικείμενα

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΠΡΟΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΜΑΘΗΜΑ: ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ ΔΙΑΔΙΚΑΣΙΕΣ ΠΑΡΑΓΩΓΗΣ ΛΟΓΙΣΜΙΚΟΥ Διδάσκων: Γ. Χαραλαμπίδης,

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

Διαδικασίες παραγωγής λογισμικού. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 4

Διαδικασίες παραγωγής λογισμικού. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 4 Διαδικασίες παραγωγής λογισμικού Στόχοι Παρουσίαση μοντέλων παραγωγής λογισμικού Περιγραφή τριών γενικών μοντέλων παραγωγής λογισμικού και πότε μπορούν να χρησιμοποιούνται Γενική περιγραφή των μοντέλων

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

Βάσεις Δεδομένων. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα

Βάσεις Δεδομένων. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Βάσεις Δεδομένων Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Στέργιος Παλαμάς, Υλικό Μαθήματος «Βάσεις Δεδομένων», 2015-2016 Κεφάλαιο 2: Περιβάλλον Βάσεων Δεδομένων Μοντέλα Δεδομένων 2.1

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

. Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Μάθημα Βασικές Έννοιες - Ανάλυση Απαιτήσεων

. Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Μάθημα Βασικές Έννοιες - Ανάλυση Απαιτήσεων .. Εργαστήριο Βάσεων Δεδομένων Εισαγωγικό Μάθημα Βασικές Έννοιες - . Ύλη Εργαστηρίου ΒΔ Ύλη - 4 Ενότητες.1 - Σχεδιασμός Βάσης Δεδομένων.2 Δημιουργία Βάσης Δεδομένων Δημιουργία Πινάκων Εισαγωγή/Ανανέωση/Διαγραφή

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

Τεχνολογία Λογισμικού. Ενότητα 1: Εισαγωγή στην UML Καθηγητής Εφαρμογών Ηλίας Γουνόπουλος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Τεχνολογία Λογισμικού. Ενότητα 1: Εισαγωγή στην UML Καθηγητής Εφαρμογών Ηλίας Γουνόπουλος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Τεχνολογία Λογισμικού Ενότητα 1: Εισαγωγή στην UML Καθηγητής Εφαρμογών Ηλίας Γουνόπουλος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΠΡΟΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΜΑΘΗΜΑ: ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ ΜΟΝΤΕΛΑ ΣΥΣΤΗΜΑΤΟΣ Διδάσκων: Γ. Χαραλαμπίδης, Επ. Καθηγητής

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

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

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

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

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων Εργαστήριο Βάσεων Δεδομένων Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων Τρόπος Διεξαγωγής #1 Ύλη (4 Ενότητες) 1. Ανάλυση Απαιτήσεων - Σχεδιασμός Βάσης Δεδομένων 2. Δημιουργία βάσης a)

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

Πληροφορική 2. Βάσεις Δεδομένων (Databases)

Πληροφορική 2. Βάσεις Δεδομένων (Databases) Πληροφορική 2 Βάσεις Δεδομένων (Databases) 1 2 Επίπεδα αρχεία (flat files) Επίπεδο αρχείο είναι ένα αρχείο που αποτελείται από ένα σταθερό, μικρό αριθμό πεδίων. Οι εγγραφές του αρχείου μπορεί να μην ακολουθούν

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

Πληροφορική ΙΙ Εισαγωγή στις Βάσεις Δεδομένων. Τμήμα Λογιστικής

Πληροφορική ΙΙ Εισαγωγή στις Βάσεις Δεδομένων. Τμήμα Λογιστικής Εισαγωγή στις Βάσεις Δεδομένων Εισαγωγή στις Βάσεις Δεδομένων Ορισμός Βάσης Δεδομένων Σύστημα Διαχείρισης Βάσης Δεδομένων ΣΔΒΔ (DBMS) Χαρακτηριστικά προσέγγισης συστημάτων αρχειοθέτησης Χαρακτηριστικά

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

Ακαδημαϊκό Έτος , Χειμερινό Εξάμηνο Μάθημα: Εργαστήριο «Πληροφορική Υγείας» ΕΙΣΑΓΩΓΗ ΣΤΗΝ ACCESS

Ακαδημαϊκό Έτος , Χειμερινό Εξάμηνο Μάθημα: Εργαστήριο «Πληροφορική Υγείας» ΕΙΣΑΓΩΓΗ ΣΤΗΝ ACCESS Ακαδημαϊκό Έτος 2016-2017, Χειμερινό Εξάμηνο Μάθημα: Εργαστήριο «Πληροφορική Υγείας» ΕΙΣΑΓΩΓΗ ΣΤΗΝ ACCESS A. Εισαγωγή στις βάσεις δεδομένων - Γνωριμία με την ACCESS B. Δημιουργία Πινάκων 1. Εξήγηση των

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

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

Θέματα Ατομικής Διπλωματικής Εργασίας Ακαδημαϊκό Έτος 2017/2018. Γεωργία Καπιτσάκη (Επίκουρη Καθηγήτρια) Θέματα Ατομικής Διπλωματικής Εργασίας Ακαδημαϊκό Έτος 2017/2018 Γεωργία Καπιτσάκη (Επίκουρη Καθηγήτρια) ΠΕΡΙΟΧΗ Α: ΕΦΑΡΜΟΓΕΣ ΜΕ ΑΙΣΘΗΤΗΡΕΣ ΓΙΑ ΕΠΙΓΝΩΣΗ ΣΥΓΚΕΙΜΕΝΟΥ Οι αισθητήρες μας δίνουν τη δυνατότητα

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

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Επιχειρηματική Μοντελοποίηση. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Επιχειρηματική Μοντελοποίηση. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Επιχειρηματική Μοντελοποίηση Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική Θεσσαλονίκη, Σεπτέμβριος 2013 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

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

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων Εργαστήριο Βάσεων Δεδομένων Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων Βάσεις Δεδομένων - Γενικά Ορισμός: Βάση Δεδομένων (ΒΔ) είναι μια συλλογή από σχετιζόμενα αντικείμενα. Τα περιεχόμενα

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

Σεμινάριο Wordpress CMS (Δημιουργία Δυναμικών Ιστοσελίδων)

Σεμινάριο Wordpress CMS (Δημιουργία Δυναμικών Ιστοσελίδων) Σεμινάριο Wordpress CMS (Δημιουργία Δυναμικών Ιστοσελίδων) Τι είναι το Wordpress: To Wordpress είναι ένα δωρεάν ανοικτού κώδικα (open source) λογισμικό (εφαρμογή), με το οποίο μπορεί κάποιος να δημιουργεί

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

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

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

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

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων Εργαστήριο Βάσεων Δεδομένων Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων Τρόπος Διεξαγωγής #1 Ύλη (4 Ενότητες) 1. Ανάλυση Απαιτήσεων -Σχεδιασμός Βάσης Δεδομένων 2. Δημιουργία βάσης a) Create

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

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

Τεχνολογία Λογισμικού Τμήμα Πληροφορικής & Τηλεπικοινωνιών, ΕΚΠΑ Τεχνολογία Λογισμικού 8ο Εξάμηνο 2018 19 Unified Modeling Language II Δρ. Κώστας Σαΐδης saiko@di.uoa.gr Μοντελοποίηση δομής Διαγράμματα κλάσεων Class diagrams

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

Ανάπτυξη διαδικτυακής διαδραστικής εκπαιδευτικής εφαρμογής σε λειτουργικό σύστημα Android

Ανάπτυξη διαδικτυακής διαδραστικής εκπαιδευτικής εφαρμογής σε λειτουργικό σύστημα Android Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε. Ανάπτυξη διαδικτυακής διαδραστικής εκπαιδευτικής εφαρμογής σε λειτουργικό σύστημα Android Πτυχιακή Εργασία Φοιτητής:

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

UML: Unified modelling language

UML: Unified modelling language UML: Διαγράμματα UML: Unified modelling language Γλώσσα μοντελοποίησης για ανάλυση και σχεδιασμό Παρέχει το συμβολισμό για ανάλυση και σχεδιασμό. Είναι γλώσσα συμβολισμού. Δεν είναι ολόκληρη μεθοδολογία.

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

06 Αντικειμενοστρεφής ανάλυση και σχεδιασμός

06 Αντικειμενοστρεφής ανάλυση και σχεδιασμός 06 Αντικειμενοστρεφής ανάλυση και σχεδιασμός Τεχνολογία Λογισμικού Τμήμα Πληροφορικής & Τηλεπικοινωνιών, ΕΚΠΑ Εαρινό εξάμηνο 2016 17 Δρ. Κώστας Σαΐδης saiko@di.uoa.gr Αφαίρεση Abstraction "Η εννοιολογική

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

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

ΠΕΡΙΕΧΟΜΕΝΑ. Πρόλογος... 13. Κεφάλαιο 1 ο Αρχές Διαχείρισης πληροφορίας στον Παγκόσμιο Ιστό... 15 ΠΕΡΙΕΧΟΜΕΝΑ Πρόλογος... 13 Κεφάλαιο 1 ο Αρχές Διαχείρισης πληροφορίας στον Παγκόσμιο Ιστό... 15 1.1 Εισαγωγή... 16 1.2 Διαδίκτυο και Παγκόσμιος Ιστός Ιστορική αναδρομή... 17 1.3 Αρχές πληροφοριακών συστημάτων

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

Διαγράμματα UML για την τεκμηρίωση της Αρχιτεκτονικής

Διαγράμματα UML για την τεκμηρίωση της Αρχιτεκτονικής Διαγράμματα UML για την τεκμηρίωση της Αρχιτεκτονικής περιεχόμενα παρουσίασης Διαγράμματα πακέτων Διαγράμματα συστατικών Διαγράμματα παράταξης Το μοντέλο των 4+1 όψεων τεκμηρίωση αρχιτεκτονικής και UML

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

Ερωτήσεις- Απαντήσεις Πολυμέσα Απο το Βιβλίο Εφαρμογές Η/Υ Α,Β,Γ Λυκείου

Ερωτήσεις- Απαντήσεις Πολυμέσα Απο το Βιβλίο Εφαρμογές Η/Υ Α,Β,Γ Λυκείου Ερωτήσεις- Απαντήσεις Πολυμέσα Απο το Βιβλίο Εφαρμογές Η/Υ Α,Β,Γ Λυκείου 1. Τι ονομάζουμε κόμβο και τι σύνδεσμο σε μια μη γραμμικά διαρθρωμένη ύλη; Με την έννοια σύνδεσμος (link) σε μια μη γραμμικά διαρθρωμένη

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

EBSCOhost Research Databases

EBSCOhost Research Databases Η EBSCOhost είναι ένα online σύστημα αναζήτησης σε έναν αριθμό βάσεων δεδομένων, στις οποίες είναι συμβεβλημένο κάθε φορά το ίδρυμα. Διαθέτει πολύγλωσσο περιβάλλον αλληλεπίδρασης (interface) με προεπιλεγμένη

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

METROPOLIS. Ένα περιβάλλον σχεδιασμού για ετερογενή συστήματα

METROPOLIS. Ένα περιβάλλον σχεδιασμού για ετερογενή συστήματα METROPOLIS Ένα περιβάλλον σχεδιασμού για ετερογενή συστήματα Ενσωματωμένα συστήματα Ορίζονται ως ηλεκτρονικά συστήματα τα οποία χρησιμοποιούν υπολογιστές και ηλεκτρονικά υποσυστήματα για να εκτελέσουν

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

Σχεδιάζοντας Εφαρμογές για το Διαδίκτυο

Σχεδιάζοντας Εφαρμογές για το Διαδίκτυο FrontPage 2003 Πρακτικός Οδηγός Χρήσης Το FrontPage είναι ένα πρόγραμμα δημιουργίας ιστοσελίδων και δικτυακών τόπων που επιτρέπει το σχεδιασμό ιστοσελίδων μέσα από γραφικό περιβάλλον αλλά και την ταυτόχρονη

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

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

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

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

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

Εισαγωγή στη Δασική Πληροφορική ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Εισαγωγή στη Δασική Πληροφορική Ενότητα 3: Θεωρία, Ανάλυση και Σχεδιασμός Πληροφοριακών Συστημάτων Ζαχαρούλα Ανδρεοπούλου Δασολογίας &

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

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΜΗΧΑΝΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ. Πτυχιακή εργασία

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΜΗΧΑΝΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ. Πτυχιακή εργασία ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΜΗΧΑΝΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ Πτυχιακή εργασία ΑΝΑΠΤΥΞΗ ΕΙΚΟΝΙΚΗΣ ΠΛΑΤΦΟΡΜΑΣ ΠΡΟΣΟΜΟΙΩΣΗΣ ΤΗΣ ΠΑΡΑΜΟΡΦΩΣΗΣ ΑΝΘΡΩΠΙΝΟΥ ΗΠΑΤΟΣ ΜΕ ΤΗ ΧΡΗΣΗ ΑΠΤΙΚΟΥ ΜΕΣΟΥ Δηµήτρης Δούνας

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

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

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΝΟΣΗΛΕΥΤΙΚΗΣ ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΝΟΣΗΛΕΥΤΙΚΗΣ Επιβλέπων Καθηγητής: Δρ. Νίκος Μίτλεττον Η ΣΧΕΣΗ ΤΟΥ ΜΗΤΡΙΚΟΥ ΘΗΛΑΣΜΟΥ ΜΕ ΤΗΝ ΕΜΦΑΝΙΣΗ ΣΑΚΧΑΡΩΔΗ ΔΙΑΒΗΤΗ ΤΥΠΟΥ 2 ΣΤΗΝ ΠΑΙΔΙΚΗ ΗΛΙΚΙΑ Ονοματεπώνυμο: Ιωσηφίνα

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

Ελληνικό Ανοικτό Πανεπιστήµιο. Βασικές έννοιες αντικειµενοστρεφούς τεχνολογίας. ρ. Πάνος Φιτσιλής

Ελληνικό Ανοικτό Πανεπιστήµιο. Βασικές έννοιες αντικειµενοστρεφούς τεχνολογίας. ρ. Πάνος Φιτσιλής 1 Ελληνικό Ανοικτό Πανεπιστήµιο Βασικές έννοιες αντικειµενοστρεφούς τεχνολογίας ρ. Πάνος Φιτσιλής Περιεχόµενα Βασικές έννοιες αντικειµενοστεφούς τρόπου ανάπτυξης Τι είναι κλάση Τι είναι αντικείµενο 2 Βασικές

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

09 Η γλώσσα UML I. Τεχνολογία Λογισμικού. Τμήμα Πληροφορικής & Τηλεπικοινωνιών Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών. Εαρινό εξάμηνο

09 Η γλώσσα UML I. Τεχνολογία Λογισμικού. Τμήμα Πληροφορικής & Τηλεπικοινωνιών Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών. Εαρινό εξάμηνο 09 Η γλώσσα UML I Τεχνολογία Λογισμικού Τμήμα Πληροφορικής & Τηλεπικοινωνιών Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών Εαρινό εξάμηνο 2017 18 Δρ. Κώστας Σαΐδης saiko@di.uoa.gr Unified Modeling Language

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

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

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

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

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

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

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

Βάσεις Δεδομένων. Εισαγωγή Ανάλυση Απαιτήσεων. Φροντιστήριο 1 ο

Βάσεις Δεδομένων. Εισαγωγή Ανάλυση Απαιτήσεων. Φροντιστήριο 1 ο Βάσεις Δεδομένων Εισαγωγή Ανάλυση Απαιτήσεων Φροντιστήριο 1 ο 16-10-2008 Εισαγωγή - Ορισμοί Βάση Δεδομένων είναι μία συλλογή από σχετιζόμενα αντικείμενα Ένα σύστημα διαχείρισης βάσεων δεδομένων (ΣΔΒΔ)

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

Επεκτεταμένο Μοντέλο Οντοτήτων-Συσχετίσεων Αντζουλάτος Γεράσιμος antzoulatos@upatras.gr Τμήμα Εφαρμογών Πληροφορικής στην Διοίκηση και Οικονομία ΤΕΙ Πατρών - Παράρτημα Αμαλιάδας 08 Νοεμβρίου 2012 Περιεχομενα

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

Σύστημα διαχείρισης περιεχομένου (Content Management System)

Σύστημα διαχείρισης περιεχομένου (Content Management System) Τι είναι ένα CMS Σύστημα διαχείρισης περιεχομένου (Content Management System) Λογισμικό το οποίο χρησιμοποιείται για την οργάνωση, ταξινόμηση και αρχειοθέτηση πληροφορίας Χρησιμοποιούνται για τη δημιουργία

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

Πληροφορική 2. Τεχνολογία Λογισμικού

Πληροφορική 2. Τεχνολογία Λογισμικού Πληροφορική 2 Τεχνολογία Λογισμικού 1 2 Κρίση Λογισμικού (1968) Στην δεκαετία του 1970 παρατηρήθηκαν μαζικά: Μεγάλες καθυστερήσεις στην ολοκλήρωση κατασκευής λογισμικών Μεγαλύτερα κόστη ανάπτυξης λογισμικού

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

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

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

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

ΚΥΚΛΟΣ ΖΩΗΣ ΛΟΓΙΣΜΙΚΟΥ και ΔΙΑΓΡΑΜΜΑΤΑ ΡΟΗΣ ΔΕΔΟΜΕΝΩΝ

ΚΥΚΛΟΣ ΖΩΗΣ ΛΟΓΙΣΜΙΚΟΥ και ΔΙΑΓΡΑΜΜΑΤΑ ΡΟΗΣ ΔΕΔΟΜΕΝΩΝ ΚΥΚΛΟΣ ΖΩΗΣ ΛΟΓΙΣΜΙΚΟΥ και ΔΙΑΓΡΑΜΜΑΤΑ ΡΟΗΣ ΔΕΔΟΜΕΝΩΝ Ο κύκλος ζωής λογισµικού (συνοπτικά) Η παραδοσιακή φάση ανάπτυξης του κύκλου ζωής λογισµικού Φάση καθορισµού απαιτήσεων (1/2) ΤΙ πρέπει να κάνει το

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

Εισαγωγή, Βασικές Έννοιες, Οφέλη και Κίνδυνοι

Εισαγωγή, Βασικές Έννοιες, Οφέλη και Κίνδυνοι Εισαγωγή, Βασικές Έννοιες, Οφέλη και Κίνδυνοι Ευθύμιος Ταμπούρης tambouris@uom.gr Επιστημονική Επιχειρηματική Χρήση των Η/Υ Η επιστημονική κοινότητα ασχολείται με τη λύση πολύπλοκων μαθηματικών προβλημάτων

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

Διαχείριση Πολιτισμικών Δεδομένων

Διαχείριση Πολιτισμικών Δεδομένων Διαχείριση Πολιτισμικών Δεδομένων Μάθημα 1 Εισαγωγή στις Βάσεις Δεδομένων Τζανέτος Πομόνης ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Συντήρησης Πολιτισμικής Κληρονομιάς Τι είναι οι Βάσεις

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

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

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

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

Test Data Management in Practice

Test Data Management in Practice Problems, Concepts, and the Swisscom Test Data Organizer Do you have issues with your legal and compliance department because test environments contain sensitive data outsourcing partners must not see?

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

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ Ανάπτυξη μιας προσαρμοστικής πολιτικής αντικατάστασης αρχείων, με χρήση

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

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

Παραδοτέο Π5.3: Έντυπο και ψηφιακό υλικό (Web site) προβολής των δράσεων έργου ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΓΕΝΙΚΗ ΓΡΑΜΜΑΤΕΙΑ ΕΡΕΥΝΑΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΕΠΙΧΕΙΡΗΣΙΑΚΑ ΠΡΟΓΡΑΜΜΑΤΑ «ΑΝΤΑΓΩΝΙΣΤΙΚΟΤΗΤΑ & ΕΠΙΧΕΙΡΗΜΑΤΙΚΟΤΗΤΑ» ΚΑΙ ΠΕΡΙΦΕΡΕΙΩΝ ΣΕ ΜΕΤΑΒΑΣΗ ΕΘΝΙΚΟ ΣΤΡΑΤΗΓΙΚΟ ΠΛΑΙΣΙΟ

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

Τι είναι ένα σύστημα διαχείρισης περιεχομένου; δυναμικό περιεχόμενο

Τι είναι ένα σύστημα διαχείρισης περιεχομένου; δυναμικό περιεχόμενο Τι είναι ένα σύστημα διαχείρισης περιεχομένου; Παρά την μεγάλη εξάπλωση του διαδικτύου και τον ολοένα αυξανόμενο αριθμό ιστοσελίδων, πολλές εταιρείες ή χρήστες δεν είναι εξοικειωμένοι με την τεχνολογία

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

Δείχτες Επιτυχίας και Δείχτες Επάρκειας

Δείχτες Επιτυχίας και Δείχτες Επάρκειας Δείχτες Επιτυχίας και Δείχτες Επάρκειας Γ Τάξη Θεματικές Περιοχές: 1. Βασικές έννοιες της Πληροφορικής και της Επιστήμης Ηλεκτρονικών Υπολογιστών 2. Υλικό / Αρχιτεκτονική Ηλεκτρονικού Υπολογιστή 3. Λειτουργικά

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

Οι βασικές λειτουργίες (ή πράξεις) που γίνονται σε μια δομή δεδομένων είναι:

Οι βασικές λειτουργίες (ή πράξεις) που γίνονται σε μια δομή δεδομένων είναι: ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Μια δομή δεδομένων στην πληροφορική, συχνά αναπαριστά οντότητες του φυσικού κόσμου στον υπολογιστή. Για την αναπαράσταση αυτή, δημιουργούμε πρώτα ένα αφηρημένο μοντέλο στο οποίο προσδιορίζονται

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

Βάσεις εδοµένων. Βασίλειος Βεσκούκης, Εµµ. Στεφανάκης ΣΥΣΤΗΜΑΤΑ ΙΑΧΕΙΡΙΣΗΣ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ

Βάσεις εδοµένων. Βασίλειος Βεσκούκης, Εµµ. Στεφανάκης ΣΥΣΤΗΜΑΤΑ ΙΑΧΕΙΡΙΣΗΣ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Αγρονόµων Τοπογράφων Μηχανικών Βάσεις εδοµένων Βασίλειος Βεσκούκης, Εµµ. Στεφανάκης v.vescoukis@cs.ntua.gr ΣΥΣΤΗΜΑΤΑ ΙΑΧΕΙΡΙΣΗΣ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ Συστήµατα ιαχείρισης Βάσεων

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

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

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

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

Εργαστήριο Τεχνολογίας Λογισμικού και Ανάλυσης Συστημάτων - 4 ο Εργαστήριο -

Εργαστήριο Τεχνολογίας Λογισμικού και Ανάλυσης Συστημάτων - 4 ο Εργαστήριο - ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ 3 ο ΕΞΑΜΗΝΟ Εργαστήριο Τεχνολογίας Λογισμικού και Ανάλυσης Συστημάτων - 4 ο Εργαστήριο - ΕΠΙΜΕΛΕΙΑ ΜΑΘΗΜΑΤΟΣ: Πρέντζα Ανδριάννα ΕΠΙΜΕΛΕΙΑ ΕΡΓΑΣΤΗΡΙΟΥ: Στουγιάννου

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

TRAVIS TRAFFIC VIOLATION INFORMATION SYSTEM ΣΥΣΤΗΜΑ ΔΙΑΧΕΙΡΗΣΗΣ ΠΑΡΑΒΑΣΕΩΝ ΦΩΤΟΕΠΙΣΗΜΑΝΣΗΣ

TRAVIS TRAFFIC VIOLATION INFORMATION SYSTEM ΣΥΣΤΗΜΑ ΔΙΑΧΕΙΡΗΣΗΣ ΠΑΡΑΒΑΣΕΩΝ ΦΩΤΟΕΠΙΣΗΜΑΝΣΗΣ TRAFFIC VIOLATION INFORMATION SYSTEM ΣΥΣΤΗΜΑ ΔΙΑΧΕΙΡΗΣΗΣ ΠΑΡΑΒΑΣΕΩΝ ΦΩΤΟΕΠΙΣΗΜΑΝΣΗΣ TRAVIS-V1-2012 TRAVIS Λογισμικό Διαχείρισης Παραβάσεων Φωτοεπισήμανσης Το σύστημα διαχείρισης παραβάσεων φωτοεπισήμανσης

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

Κεφάλαιο 7. Τρισδιάστατα Μοντέλα

Κεφάλαιο 7. Τρισδιάστατα Μοντέλα Κεφάλαιο 7. 7.1 ομές εδομένων για Γραφικά Υπολογιστών. Οι δομές δεδομένων αποτελούν αντικείμενο της επιστήμης υπολογιστών. Κατά συνέπεια πρέπει να γνωρίζουμε πώς οργανώνονται τα γεωμετρικά δεδομένα, προκειμένου

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

FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2016

FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2016 FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2016 Μ6. Φάσεις ανάπτυξης λογισμικού: προδιαγραφές, σχεδίαση, υλοποίηση, επαλήθευση, τεκμηρίωση, συντήρηση προγραμμάτων Δρ. Γεώργιος Παπαλάμπρου Επικ.

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

Σχεδίαση και Ανάπτυξη Ιστότοπων

Σχεδίαση και Ανάπτυξη Ιστότοπων Σχεδίαση και Ανάπτυξη Ιστότοπων Ιστορική Εξέλιξη του Παγκόσμιου Ιστού Παρουσίαση 1 η 1 Βελώνης Γεώργιος Καθηγητής Περιεχόμενα Τι είναι το Διαδίκτυο Βασικές Υπηρεσίες Διαδικτύου Προηγμένες Υπηρεσίες Διαδικτύου

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

Οι διαδικασίες ενος CMS είναι σχεδιασμένες για να:

Οι διαδικασίες ενος CMS είναι σχεδιασμένες για να: CMS Content Management System Σύστημα Διαχείρισης Περιεχομένου Ένα σύστημα διαχείρισης περιεχομένου (CMS) είναι μια συλλογή απο διαδικασίες που χρησιμοποιούνται για τη διαχείριση της ροής εργασίας σε ένα

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

ΕΝΟΤΗΤΑ 2 η ΙΑΧΕΙΡΙΣΗ ΡΟΗΣ ΕΡΓΑΣΙΑΣ (WORKFLOW MANAGEMENT) 2.1 Εισαγωγή

ΕΝΟΤΗΤΑ 2 η ΙΑΧΕΙΡΙΣΗ ΡΟΗΣ ΕΡΓΑΣΙΑΣ (WORKFLOW MANAGEMENT) 2.1 Εισαγωγή ΕΝΟΤΗΤΑ 2 η ΙΑΧΕΙΡΙΣΗ ΡΟΗΣ ΕΡΓΑΣΙΑΣ (WORKFLOW MANAGEMENT) 2.1 Εισαγωγή Οι σηµερινές δραστηριότητες των επιχειρήσεων δηµιουργούν την ανάγκη για όσο το δυνατό µεγαλύτερη υποστήριξη από τα πληροφοριακά τους

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

Βάσεις Δεδομένων Εισαγωγή

Βάσεις Δεδομένων Εισαγωγή Βάσεις Δεδομένων Εισαγωγή Σκοποί ενότητας Εκμάθηση Συστημάτων Διαχείρισης Βάσεων Δεδομένων Δημιουργία E-R διαγραμμάτων 2 Περιεχόμενα ενότητας Συστήματα Διαχείρισης Βάσεων Δεδομένων Διάγραμμα οντοτήτων

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

Τεχνολογία Ψυχαγωγικού Λογισμικού και Εικονικοί Κόσμοι Ενότητα 8η - Εικονικοί Κόσμοι και Πολιτιστικό Περιεχόμενο

Τεχνολογία Ψυχαγωγικού Λογισμικού και Εικονικοί Κόσμοι Ενότητα 8η - Εικονικοί Κόσμοι και Πολιτιστικό Περιεχόμενο Τεχνολογία Ψυχαγωγικού Λογισμικού και Εικονικοί Κόσμοι Ενότητα 8η - Εικονικοί Κόσμοι και Πολιτιστικό Περιεχόμενο Ιόνιο Πανεπιστήμιο, Τμήμα Πληροφορικής, 2015 Κωνσταντίνος Οικονόμου, Επίκουρος Καθηγητής

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

Μοντέλο Οντοτήτων-Συσχετίσεων. Η ανάγκη Διαγράμματα ΟΣ Σύνολα Οντοτήτων-Συσχετίσεων Απεικονίσεις Επεκτάσεις

Μοντέλο Οντοτήτων-Συσχετίσεων. Η ανάγκη Διαγράμματα ΟΣ Σύνολα Οντοτήτων-Συσχετίσεων Απεικονίσεις Επεκτάσεις Η ανάγκη Διαγράμματα ΟΣ Σύνολα Οντοτήτων-Συσχετίσεων Απεικονίσεις Επεκτάσεις Μοντέλα Δεδομένων Μοντέλο: αφαιρετική αναπαράσταση του πραγματικού κόσμου. Μοντέλα βασισμένα σε εγγραφές (record based models)

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

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

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

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

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

Εισαγωγή στην Πληροφορική Εισαγωγή στην Πληροφορική Βάσεις Δεδομένων ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Συντήρησης Πολιτισμικής Κληρονομιάς Τι είναι οι Βάσεις Δεδομένων; Σύστημα για αποθήκευση, μετάδοση

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

Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας. 2 ο Μάθημα: Βασικά Θέματα Βάσεων Δεδομένων. Δρ. Κωνσταντίνος Χ.

Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας. 2 ο Μάθημα: Βασικά Θέματα Βάσεων Δεδομένων. Δρ. Κωνσταντίνος Χ. Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας 2 ο Μάθημα: Βασικά Θέματα Βάσεων Δεδομένων Δρ. Κωνσταντίνος Χ. Γιωτόπουλος Βασικά θέματα Βάσεων Δεδομένων Ένα Σύστημα Βάσης Δεδομένων

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

ΑΡΧΕς ΛΕΙΤΟΥΡΓΙΑς CMS (Content Management System) ΚΑΙ ΕΦΑΡΜΟΓΗ ΤΟΥς ςε ΜΙΚΡΟΜΕςΑΙΕς ΕΠΙΧΕΙΡΗςΕΙς

ΑΡΧΕς ΛΕΙΤΟΥΡΓΙΑς CMS (Content Management System) ΚΑΙ ΕΦΑΡΜΟΓΗ ΤΟΥς ςε ΜΙΚΡΟΜΕςΑΙΕς ΕΠΙΧΕΙΡΗςΕΙς ΑΡΧΕς ΛΕΙΤΟΥΡΓΙΑς CMS (Content Management System) ΚΑΙ ΕΦΑΡΜΟΓΗ ΤΟΥς ςε ΜΙΚΡΟΜΕςΑΙΕς ΕΠΙΧΕΙΡΗςΕΙς Χρήστος Γεωργιάδης Τμήμα Εφαρμοσμένης Πληροφορικής Πανεπιστήμιο Μακεδονίας Περιεχόμενα 1. Η εικόνα του διαδικτύου

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

Περιεχόμενο του μαθήματος

Περιεχόμενο του μαθήματος ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Η Αντικειμενοστρεφής Τεχνολογία Δρ Βαγγελιώ Καβακλή Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου Εαρινό Εξάμηνο 202-203 Περιεχόμενο του μαθήματος Η έννοια

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

Λογισμικό Open Source στις Υπηρεσίες των Βιβλιοθηκών του Πανεπιστημίου Αθηνών

Λογισμικό Open Source στις Υπηρεσίες των Βιβλιοθηκών του Πανεπιστημίου Αθηνών Λογισμικό Open Source στις Υπηρεσίες των Βιβλιοθηκών του Πανεπιστημίου Αθηνών Υπολογιστικό Κέντρο Βιβλιοθηκών ΕΚΠΑ http://www.lib.uoa.gr Εισαγωγή Και στις ΒΥΠ του ΕΚΠΑ, οι ανάγκες για υλοποίηση υπηρεσιών

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

FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2016

FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2016 FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2016 Μ6. Φάσεις ανάπτυξης λογισμικού: προδιαγραφές, σχεδίαση, υλοποίηση, επαλήθευση, τεκμηρίωση, συντήρηση προγραμμάτων Δρ. Γεώργιος Παπαλάμπρου Επικ.

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

Τεχνολογίες Ανάπτυξης Ηλεκτρονικού Καταστήματος Μικρομεσαίας Επιχείρησης. Μικρομεσαίες Επιχειρήσεις και Καινοτομία

Τεχνολογίες Ανάπτυξης Ηλεκτρονικού Καταστήματος Μικρομεσαίας Επιχείρησης. Μικρομεσαίες Επιχειρήσεις και Καινοτομία Τεχνολογίες Ανάπτυξης Ηλεκτρονικού Καταστήματος Μικρομεσαίας Επιχείρησης Μικρομεσαίες Επιχειρήσεις και Καινοτομία Ηλεκτρονικό Εμπόριο H δυνατότητα των καταναλωτών και των εμπορικών καταστημάτων να κάνουν

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

Σχεδιάζοντας Εφαρμογές για το Διαδίκτυο

Σχεδιάζοντας Εφαρμογές για το Διαδίκτυο Το περιβάλλον εργασίας Ανοίγοντας την Ελληνική Έκδοση του FrontPage, για πρώτη φορά, η εικόνα που θα συναντήσουμε είναι αυτή της Εικόνας 1 με τα Μενού Εντολών και τη Γραμμή Εργαλείων, στο πάνω μέρος της

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