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



Σχετικά έγγραφα
Test Data Management in Practice

2016 IEEE/ACM International Conference on Mobile Software Engineering and Systems

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

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

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

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

Πρότυπα και Τεχνολογίες Semantic Web και Web 2.0 και η εφαρμογή τους στην Ηλεκτρονική Διακυβέρνηση

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

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

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

Μάθημα «Υπηρεσίες Ηλεκτρονικής Υγείας»

Διαχείριση Έργων Πληροφορικής

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

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

Αρχιτεκτονικές Συστημάτων

2 nd AEGIS Technical Meeting and On-Site Visit in Mytilene, Greece

Εισαγωγή. Τμήμα Μηχανικών Σχεδίασης Προϊόντων και Συστημάτων, ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ. Παναγιώτης Κουτσαμπάσης

ΜΑΘΗΜΑ: Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ. 1 η ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ: ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ

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

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

þÿ ½ Á Å, ˆ»µ½± Neapolis University þÿ Á̳Á±¼¼± ¼Ìù±Â ¹ º à Â, Ç» Ÿ¹º ½ ¼¹ºÎ½ À¹ÃÄ ¼Î½ º±¹ ¹ º à  þÿ ±½µÀ¹ÃÄ ¼¹ µ À»¹Â Æ Å

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

Μιχαήλ Νικητάκης 1, Ανέστης Σίτας 2, Γιώργος Παπαδουράκης Ph.D 1, Θοδωρής Πιτηκάρης 3

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

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

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

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

ΣΧΕΔΙΑΣΜΟΣ ΔΙΚΤΥΩΝ ΔΙΑΝΟΜΗΣ. Η εργασία υποβάλλεται για τη μερική κάλυψη των απαιτήσεων με στόχο. την απόκτηση του διπλώματος

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

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

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

Γιπλυμαηική Δπγαζία. «Ανθπυποκενηπικόρ ζσεδιαζμόρ γέθςπαρ πλοίος» Φοςζιάνηρ Αθανάζιορ. Δπιβλέπυν Καθηγηηήρ: Νηθφιανο Π. Βεληίθνο

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

Ανίχνευση απαιτήσεων χρηστών για υπηρεσίες ψηφιακών βιβλιοθηκών μέσα από ποιοτικές μεθοδολογικές προσεγγίσεις


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

Εκτεταμένη περίληψη Περίληψη

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

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

Σημασιολογική Ολοκλήρωση Δεδομένων με τη χρήση Οντολογιών

ΔΙΠΛΩΜΑΤΙΚΕΣ ΕΡΓΑΣΙΕΣ

ΚΒΑΝΤΙΚΟΙ ΥΠΟΛΟΓΙΣΤΕΣ

þÿ¼ ½ ±Â : ÁÌ» Â Ä Å ÃÄ ²µ þÿä Å ÃÇ»¹º Í Á³ Å

Ολοκληρωμένη Πλατφόρμα Δικτύωσης της Δημόσιας Διοίκησης για την παροχή ενιαίων και εξατομικευμένων ηλεκτρονικών υπηρεσιών σε πολίτες και επιχειρήσεις»

Σύστημα υποβολής αιτήσεων υποψήφιων συνεργατών ΕΚΤ

Ερευνητική+Ομάδα+Τεχνολογιών+ Διαδικτύου+

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

Διαδίκτυο: δίκτυο διασυνδεμένων δικτύων Ξεκίνησε ως ένα μικρό κλειστό στρατιωτικό δίκτυο, απόρροια του Ψυχρού Πολέμου μεταξύ ΗΠΑ και ΕΣΣΔ.

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

ΓΕΩΠΛΗΡΟΦΟΡΙΚΗ. και ΣΥΣΤΗΜΑΤΑ ΓΕΩΓΡΑΦΙΚΩΝ ΠΛΗΡΟΦΟΡΙΩΝ

DECO DECoration Ontology

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

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

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 19/5/2007

Η Διαλειτουργικότητα στην Υπηρεσία του Πολίτη

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

Δημιουργία Λογαριασμού Διαχείρισης Business Telephony Create a Management Account for Business Telephony

Keywords: Tutorials, pedagogic principles, print and digital distance learning materials, e-comet Laboratory of Hellenic Open University

Το Open Eclass ως Σύστημα Διαχείρισης Μάθησης

Terabyte Technology Ltd

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

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

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

HCI - Human Computer Interaction Σχεδιασμός Διεπαφής. ΓΤΠ 61 Βαµβακάρης Μιχάλης 09/12/07

«Αξιολόγηση ατόμων με αφασία για Επαυξητική και Εναλλακτική Επικοινωνία, σύμφωνα με το μοντέλο συμμετοχής»

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

Risk Management & Business Continuity Τα εργαλεία στις νέες εκδόσεις

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

Οντολογία για την περιγραφή των προσωπικοτήτων της Σάμου, την κατηγοριοποίηση και τις σχέσεις τους

Στρατηγικό Σχεδιασµό Πληροφοριακών Συστηµάτων

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

ΤΟ ΜΟΝΤΕΛΟ Οι Υποθέσεις Η Απλή Περίπτωση για λi = μi 25 = Η Γενική Περίπτωση για λi μi..35

ΕΙΔΙΚΟ ΕΝΤΥΠΟ ΠΕΡΙΓΡΑΦΗΣ ΜΑΘΗΜΑΤΩΝ. Υποχρεωτικής επιλογής (Κατεύθυνσης)

Εισαγωγή στα Πληροφοριακά Συστήματα. Ενότητα 11: Αρχιτεκτονική Cloud

Σχολή Μηχανικής και Τεχνολογίας. Πτυχιακή εργασία

Συστήματα Πολυμέσων. Ανάπτυξη Πολυμεσικών Εφαρμογών Ι

Συλλογιστική εξαγωγής συμπερασμάτων από συγκεκριμένες υποθέσεις δοθείσα μεθοδολογία διαδικασία της σκέψης, πρέπει να «συλλογιστεί» υπόθεση/παραγωγή

Τμήμα Μηχανικών Ηλεκτρονικών Υπολογιστών & Πληροφορικής Ρίο, Πάτρα

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

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

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

Ανάκτηση Πληροφορίας

Finite Field Problems: Solutions

Παραδοτέο Π.2.1. Υπερχώρος και διαχείριση μοντέλων

Έξυπνα ενεργειακά δίκτυα

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

DECO-DECoration Ontology.

Downloaded from HEPHAESTUS Repository, Neapolis University institutional repository

Υπηρεσίες Ιστού (Web Services) ΜΙΧΑΛΗΣ ΜΑΛΙΑΠΠΗΣ

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

Μοντελοποίηση Πεδίου

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

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 6/5/2006

Θέµατα αξιολόγησης εκπαιδευτικού λογισµικού

Εκπαιδευτική Ρομποτική

κεφάλαιο Βασικές Έννοιες Επιστήμη των Υπολογιστών

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

Θεωρίες Μάθησης και Εκπαιδευτικό Λογισμικό

Τo πρόγραμμα «Διάγραμμα Ροής» και η διδακτική του αξιοποίηση στην Διδασκαλία του προγραμματισμού

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

Transcript:

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

We who cut mere stones must always be envisioning cathedrals. Quarry worker's creed 2

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

4

Στους αγαπημένους μου, Βαγγέλη, Ζαφείρω και Μαίρη. 5

A word of warning and encouragement: Don't worry if you don't understand this book completely on the first reading. We didn't understand it all on the first writing! Erich Gamma, Richard Helm, Ralph Johnson & John Vlissedes Design Patterns: Elements of Reusable Object-Oriented Software, 1995 6

Πίνακας Περιεχομένων Πίνακας Περιεχομένων...7 Λίστα Σχημάτων...11 Λίστα Πινάκων...13 Ευχαριστίες...14 Επιτελική Σύνοψη...16 Executive Summary...18 Δημοσιεύσεις σε Περιοδικά & Συνέδρια...20 Διεθνή Επιστημονικά Περιοδικά...20 Διεθνή Επιστημονικά Συνέδρια...20 ΜΕΡΟΣ Α: ΕΞΟΡΥΞΗ & ΑΞΙΟΛΟΓΗΣΗ ΣΧΕΔΙΑΣΤΙΚΩΝ ΛΥΣΕΩΝ ΣΕ ΕΠΙΠΕΔΟ ΜΟΝΤΕΛΟΥ ΕΦΑΡΜΟΓΉΣ...23 ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΕΦΑΡΜΟΓΩΝ ΠΑΓΚΟΣΜΙΟΥ ΙΣΤΟΥ...25 1.1 Εισαγωγή...25 1.2 Πλαίσιο Ανάπτυξης Εφαρμογών Παγκόσμιου Ιστού...27 1.2.1 Ο Κύκλος Ζωής μιας Εφαρμογής...27 1.2.2 Μοντέλα, Γλώσσες και Σημειογραφία...30 1.2.3 Επαναχρησιμοποίηση...31 1.2.4 Αρχιτεκτονική...32 1.2.5 Ευχρηστία...33 1.3 Μέθοδοι & Γλώσσες Μοντελοποίησης Εφαρμογών Παγκόσμιου Ιστού.33 1.3.1 Hypertext Design Model HDM...35 1.3.2 Relationship Management Methodology RMM...36 1.3.3 Object-Oriented Hypermedia Design Model OOHDM...40 1.3.4 HDM-lite...41 1.3.5 Araneus...43 1.3.6 Web Site Design Method WSDM...44 1.3.7 Επεκτάσεις της UML για την Υποστήριξη Μοντελοποίησης Εφαρμογών Παγκόσμιου Ιστού...45 1.3.8 Web Modeling Language WebML...46 1.3.8.1 Η Διαδικασία Σχεδιασμού μιας Εφαρμογής...50 7

1.3.8.2 Σχεδιαστικά Πρότυπα στη WebML...55 1.4 Μεθοδολογίες Μοντελοποίησης Εφαρμογών Παγκόσμιου Ιστού Προσδοκίες & Πραγματικότητα...58 1.4.1 Απαιτήσεις Λειτουργικής Αρχιτεκτονικής...59 1.4.2 Απαιτήσεις Αρχιτεκτονικής Πληροφοριών...61 1.4.3 Γενικές Απαιτήσεις σε Σχέση με τις Γλώσσες Μοντελοποίησης Εφαρμογών Παγκόσμιου Ιστού...63 1.4.4 Συγκριτική Αξιολόγηση Γλωσσών Μοντελοποίησης Εφαρμογών Παγκόσμιου Ιστού Περιορισμοί...66 1.5 Μοντελοποίηση Εφαρμογών Παγκόσμιου Ιστού στην Πράξη Συμπεράσματα...70 Βιβλιογραφία Κεφαλαίου...73 ΚΛΩΝΟΠΟΙΗΣΗ ΜΟΝΤΕΛΟΥ: ΑΠΟΔΟΤΙΚΗ ΕΠΑΝΑΧΡΗΣΙΜΟΠΟΙΗΣΗ Η ΚΑΤΑΣΤΡΟΦΗ;...79 2.1 Εισαγωγή...79 2.2 Το Πρόβλημα...80 2.3 Η Έννοια της Κλωνοποίησης Μοντέλου Σχεδιασμού Εφαρμογής και των Οσμών Μοντέλου (Model Cloning Model Smells)...82 2.4 Αναδόμηση-Αναδιάταξη Εφαρμογών: Ανασκόπηση Ερευνητικού Πεδίου...84 2.4.1 Τεχνικές Αναδιάταξης Εφαρμογών...84 2.4.2 Τύποι Τεχνικών Προϊόντων (Artifacts) Λογισμικού και Αναδιάταξη.85 2.4.3 Γλώσσες Προγραμματισμού και Εργαλεία Αναδιάταξης...86 2.4.4 Αναδιάταξη σε Υψηλότερο Επίπεδο Αφαίρεσης...87 2.4.5 Κλωνοποίηση και Αναδιάταξη σε Εφαρμογές Παγκόσμιου Ιστού...87 2.5 Μία Αποδοτική Μέθοδος Εξόρυξης Κλώνων Μοντέλου...88 2.5.1 Μετασχηματισμός του Εννοιολογικού Σχήματος της Εφαρμογής...88 2.5.2 Εξόρυξη Πιθανών Κλώνων Μοντέλου...90 2.5.3 Κατηγοριοποίηση Κλώνων Μοντέλου...91 2.6 Μετρικές και Αξιολόγηση Ποιότητας...93 2.6.1 Συνέπεια Χρήσης των Κλώνων Μοντέλου...93 2.6.2 Ομοιότητα και Ανεξαρτησία των Κλώνων Μοντέλου...94 2.6.3 Αξιολόγηση σε Επίπεδο Τοπολογίας Συνδέσμων...96 2.7 Προτάσεις Αναδιάταξης του Μοντέλου της Εφαρμογής...97 2.8 Αυτοματοποίηση Αναδιάταξης Μοντέλου Εφαρμογής...100 2.8.1 Ορθότητα σε Σημασιολογικό και Συντακτικό Επίπεδο...100 2.8.2 Αυτοματοποίηση Αναδιάταξης Μοντέλου & Εξατομίκευση...103 2.9 Συνεισφορά της Εργασίας & Συμπεράσματα...104 2.10 Ανοιχτά Προβλήματα & Επεκτάσεις...105 Βιβλιογραφία Κεφαλαίου...106 8

ΕΞΟΡΥΞΗ ΑΠΟΔΟΤΙΚΩΝ ΣΧΕΔΙΑΣΤΙΚΩΝ ΛΥΣΕΩΝ ΣΕ ΕΠΙΠΕΔΟ ΜΟΝΤΕΛΟΥ ΕΦΑΡΜΟΓΩΝ...115 3.1 Εισαγωγή...115 3.1.1 Το πρόβλημα...116 3.2 Σχεδιαστικά Πρότυπα (Web Design Patterns) & Πλαίσια Ανάπτυξης Εφαρμογών Παγκοσμίου Ιστού (Web Application Frameworks)...118 3.2.1 Σχεδιαστικά Πρότυπα Παγκόσμιου Ιστού στη WebML...119 3.3 Μία Αποτελεσματική Μέθοδος Εξόρυξης Αποδοτικών Σχεδιαστικών Λύσεων σε Επίπεδο Μοντέλου Εφαρμογών...120 3.3.1 Αρχικοποίηση του Εννοιολογικού Σχήματος της Εφαρμογής...121 3.3.2 Εξόρυξη Σχεδιαστικών Λύσεων...123 3.3.3 Επέκταση του Συνόλου των Σχεδιαστικών Λύσεων & των Παραλλαγών τους...123 3.3.4 Αξιολόγηση και Κατάταξη των Υποψήφιων Σχεδιαστικών Λύσεων 125 3.4 Αυτόματη Εξόρυξη Σχεδιαστικών Λύσεων...125 3.5 Μηχανισμός Ανάκτησης Μεγαλύτερων Σχεδιαστικών Λύσεων...127 3.6 Μετρικές Αξιολόγησης Υποψήφιων Σχεδιαστικών Λύσεων...128 3.6.1 Αξιολόγηση Συμμετοχής των Μετρικών...130 3.7 Ένα Παράδειγμα Εφαρμογής της Μεθόδου...131 3.8 Αυτοματοποίηση Εφαρμογής Σχεδιαστικών Λύσεων σε Εννοιολογικά Σχήματα Εφαρμογών...133 3.8.1 Η Ανάγκη Αυτοματοποίησης Εφαρμογής Σχεδιαστικών Λύσεων...134 3.8.2 Η γλώσσα TBE (transformers-by-example)...136 3.9 Ένα Παράδειγμα Εργασίας...137 3.9.1 Το Σχήμα WebML...137 3.9.2 Χρησιμοποίηση ενός Μετασχηματιστή...139 3.10 Λογική Αναπαράσταση...140 3.11 Πρότυπα Ερωτημάτων & Παραγωγικά Πρότυπα...141 3.11.1 Πρότυπα Ερωτημάτων...141 3.11.2 Παραγωγικά Πρότυπα...143 3.12 Εφαρμογή των Μετασχηματιστών...145 3.12.1 Ορισμός Μετασχηματιστή...145 3.12.2 Εφαρμογή Μετασχηματιστή...146 3.13 Πρότυπα Υποερωτημάτων και Διαδοχικοί Μετασχηματιστές...148 3.13.1 Πρότυπα Υποερωτήματα...148 3.13.2 Εφαρμογές Διαδοχικού Μετασχηματιστή...149 3.14 Άλλες Προσεγγίσεις...151 3.15 Συνεισφορά της Εργασίας & Συμπεράσματα...152 3.16 Ανοιχτά Προβλήματα & Επεκτάσεις...153 Βιβλιογραφία Κεφαλαίου...154 9

ΜΕΡΟΣ Β: ΒΕΛΤΙΩΣΗ ΑΠΟΔΟΣΗΣ ΜΕΤΑΦΟΡΑΣ ΔΕΔΟΜΕΝΩΝ ΣΤΟΝ ΠΑΓΚΟΣΜΙΟ ΙΣΤΟ...159 ΣΥΜΠΙΕΣΗ ΜΕΤΑΦΕΡΟΜΕΝΩΝ ΔΕΔΟΜΕΝΩΝ ΣΤΟΝ ΠΑΓΚΟΣΜΙΟ ΙΣΤΟ...161 4.1 Εισαγωγή...161 4.2 Ο Παγκόσμιος Ιστός και το Πρωτόκολλο HTTP...162 4.2.1 HTTP/1.0 και HTTP/1.1...163 4.2.2 Ελλείψεις του HTTP...164 4.3 Καθορισμός του Τυπικού Μεγέθους Ιστοσελίδας...166 4.4 Αρχιτεκτονική και Υλοποίηση της Μεθόδου...166 4.4.1 Θέματα Υλοποίησης...168 4.4.2 Αλγόριθμοι για Συμπίεση και Αποσυμπίεση Δεδομένων...169 4.4.2.1 Συμπίεση Δεδομένων (Deflation)...169 4.4.2.2 Αποσυμπίεση Δεδομένων (Inflate)...170 4.5 Μείωση του Μεγέθους των Δεδομένων Υπερκειμένου...171 4.5.1 Μετρήσεις Μεγέθους Ιστοσελίδων...172 4.5.2 Γραφική Αναπαράσταση...172 4.6 Συμπεράσματα & Ανοιχτά Προβλήματα...174 Βιβλιογραφία Κεφαλαίου...175 Παράρτημα Α: Σχεδιασμός & Υλοποίηση...179 Ευρετήριο Όρων...188 10

Λίστα Σχημάτων Σχήμα 1: Ο κύκλος ζωής μίας εφαρμογής Παγκόσμιου Ιστού...28 Σχήμα 2: Αρχιτεκτονική δύο επιπέδων....32 Σχήμα 3: Αρχιτεκτονική τριών επιπέδων...32 Σχήμα 4: Τα δομοστοιχεία του RMDM....37 Σχήμα 5: Σχήμα 6: Σχήμα 7: Σχήμα 8: Σχήμα 9: Σχήμα 10: Σχήμα 11: Σχήμα 12: Σχήμα 13: Σχήμα 14: Σχήμα 15: Σχήμα 16: Σχήμα 17: Σχήμα 18: Ένας Διάγραμμα RMDM...38 Ένα παράδειγμα μοντέλου υπερκειμένου (πάνω) και μία πιθανή αναπαράστασή του σε ιστοσελίδες (κάτω)....50 Η XML αναπαράσταση της σελίδας WebML Person που παρουσιάζεται στο παραπάνω σχήμα...50 Φάσεις της διαδικασίας ανάπτυξης μίας εφαρμογής Παγκόσμιου Ιστού, ιδιαίτερα απαιτητικής σε διαχείριση μεγάλου όγκου δεδομένων....51 Η σύνθεση ενός σχήματος δεδομένων από τα αντίστοιχα υποσχήματα βασικών εννοιών, πρόσβασης, διασύνδεσης και εξατομίκευσης...53 Μερικά σχεδιαστικά πρότυπα δημοσίευσης περιεχομένου για την περίπτωση ενός μουσικού καταστήματος...56 Το σχεδιαστικό πρότυπο τροποποίησης αντικειμένου (modify pattern)...57 Το σχεδιαστικό πρότυπο διαδοχικής διαγραφής αντικειμένου (cascaded delete pattern) για την περίπτωση του μουσικού καταστήματος....58 Γλώσσες μοντελοποίησης σε σχέση με την ικανοποίηση των απαιτήσεων σε επίπεδο αρχιτεκτονικής...69 Μετασχηματισμός μιας σύνθεσης υπερκειμένου WebML στους ισοδύναμους γράφους....89 Κατηγοριοποίηση πιθανών κλώνων μοντέλου στο επίπεδο υπερκειμένου......91 Κατηγοριοποίηση πιθανών κλώνων μοντέλου στο επίπεδο δεδομένων...92 Κλώνοι μοντέλου στο επίπεδο συνδέσμων...92 Παράδειγμα συντακτικής και σημασιολογικής ορθότητας...101 Σχήμα 19: Παράδειγμα συνθήκης αποκλεισμού....102 Σχήμα 20: Ανάκτηση ενός προκαθορισμένου σχεδιαστικού προτύπου της WebML και μίας πιθανής σχεδιαστικής λύσης από ένα site view....122 11

Σχήμα 21: Σχήμα 22: Ανάκτηση μίας υποψήφιας σχεδιαστικής λύσης από δύο διαφορετικά site views...124 Μετασχηματισμός ενός σχεδιαστικού προτύπου στον ισοδύναμο γράφο....127 Σχήμα 23: Ανάκτηση ευρύτερων σχεδιαστικών λύσεων....128 Σχήμα 24: Σχήμα 25: Σχήμα 26: Σχήμα 27: Σχήμα 28: Σχήμα 29: Σχήμα 30: Σχήμα 31: Ένα τμήμα του site view που απευθύνεται στο κοινό με μία περιοχή Νέων. Παρουσιάζεται το WebML σχήμα και η αντίστοιχη απεικόνιση σε γράφο.....132 Ένα τμήμα του site view που απευθύνεται στο προσωπικό με μία περιοχή Συζητήσεων. Παρουσιάζεται το WebML σχήμα και η αντίστοιχη απεικόνιση σε γράφο....133 Σχήμα δεδομένων (αριστερά) και εφαρμογή μετασχηματιστή (δεξιά)...138 Το σχήμα υπερκειμένου...139 Το πρότυπο ερωτήματος Q:EntWithAttr. Γραφική αναπαράσταση (αριστερά) και λογική (δεξιά)...142 Το παραγωγικό πρότυπο G:PCforEnt. Γραφική αναπαράσταση (αριστερά) και λογική (δεξιά)...143 Ο μετασχηματιστής T:PCforEnt...145 Παραμετροποιημένη εφαρμογή του μετασχηματιστή T:PCforEnt (πάνω μέρος) και το σχήμα που κατασκευάζεται (κάτω μέρος)...147 Σχήμα 32: Το πρότυπο ερωτήματος Q:NotReachable....149 Σχήμα 33: Σχήμα 34: Σχήμα 35: Ο μετασχηματιστής T:FLDs4EU (αριστερά) και ο μετασχηματιστής T:PC+EUforENT (δεξιά)....150 Γραφικές παραστάσεις καθορισμού του τυπικού μεγέθους ιστοσελίδας....167 Εύρος συμπίεσης...173 12

Λίστα Πινάκων Πίνακας 1: Παράδειγμα μιας σύνθεσης οντότητας....36 Πίνακας 2: Μερικές Βασικές Δομικές Μονάδες Περιεχομένου και Λειτουργιών της WebML...48 Πίνακας 3: Συγκριτική αξιολόγηση γλωσσών μοντελοποίησης εφαρμογών Παγκόσμιου Ιστού....66 Πίνακας 4: Η κλίμακα μέτρησης για τη μετρική SPM...94 Πίνακας 5: Ταξινόμηση των πιθανών κλώνων μοντέλου με βάση το επίπεδο υπερκειμένου....96 Πίνακας 6: Ταξινόμηση των πιθανών κλώνων μοντέλου με βάση το επίπεδο δεδομένων....96 Πίνακας 7: Ταξινόμηση των πιθανών κλώνων μοντέλου με βάση την τοπολογία συνδέσμων....97 Πίνακας 8: Προτάσεις αναδιάταξης του μοντέλου της εφαρμογής με βάση τα επίπεδα ομοιότητας κλώνων μοντέλου....99 Πίνακας 9: Λογική αναπαράσταση τμημάτων του παραδείγματος....140 Πίνακας 10: Οι Ιστοχώροι που χρησιμοποιήθηκαν για τη μελέτη....166 Πίνακας 11: Σύνοψη αποτελεσμάτων τυπικού μεγέθους ιστοσελίδας....166 Πίνακας 12: Κέρδος σε επίπεδο συμπίεσης...172 Πίνακας 13: Κέρδος σε επίπεδο χρόνου καταφόρτωσης ιστοσελίδων....172 13

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

15

Επιτελική Σύνοψη Η εκθετική ανάπτυξη του Παγκόσμιου Ιστού και η συνεχής διασπορά του σε διάφορους τομείς της καθημερινότητας, έχει τροφοδοτήσει την ανάπτυξη μίας νέας γενιάς εφαρμογών, οι οποίες χαρακτηρίζονται πλέον από μεγάλο βαθμό πολυπλοκότητας. Η ανάπτυξη τέτοιων εφαρμογών είναι στην ουσία ένα υβρίδιο που συνδυάζει παραδοσιακά Πληροφοριακά Συστήματα με εφαρμογές Υπερμέσων (Hypermedia). Αυτός ο συνδυασμός θέτει νέες προκλήσεις στις υπάρχουσες προσεγγίσεις σχεδιασμού και παραγωγής λογισμικού. Στα πλαίσια της συγκεκριμένης διδακτορικής διατριβής, διερευνώνται θέματα βελτίωσης της απόδοσης εφαρμογών Παγκόσμιου Ιστού (ιδιαίτερα απαιτητικών σε δεδομένα - data intensive), σε ολόκληρο τον κύκλο ζωής τους. Βασικός στόχος είναι η βελτίωση της απόδοσης εφαρμογών, σε πρώτο επίπεδο στα πλαίσια του σχεδιασμού, ανάπτυξης και συντήρησης τους και σε δεύτερο επίπεδο στα πλαίσια της διάθεσής τους προς τον τελικό χρήστη. Στο πρώτο κεφάλαιο της διδακτορικής διατριβής παρουσιάζεται η τρέχουσα κατάσταση σε σχέση με τις μεθοδολογίες σχεδιασμού και ανάπτυξης εφαρμογών Παγκόσμιου Ιστού που έχουν προταθεί από την ερευνητική κοινότητα μέχρι σήμερα. Γίνεται μία προσπάθεια να αναγνωριστούν και να χαρακτηριστούν οι διάφορες κατηγορίες λύσεων και παρουσιάζεται μία πρώτου επιπέδου αξιολόγηση σε σχέση με την επάρκεια που παρουσιάζουν στις απαιτήσεις της διαδικασίας ανάπτυξης εφαρμογών Παγκόσμιου Ιστού. Επιπλέον, επισημαίνονται διάφορα ανοιχτά προβλήματα και αναλύονται οι πιθανές μελλοντικές τάσεις. Ακόμη, αναλύεται σε μεγαλύτερο βάθος η μεθοδολογία και η αντίστοιχη γλώσσα μοντελοποίησης εφαρμογών Παγκόσμιου Ιστού WebML, καθώς αποτελεί τη βάση (γλώσσα επίδειξης) πάνω στην οποία θα στηριχτεί η παρουσίαση των τεχνικών και μεθόδων που προτείνονται στα επόμενα δύο κεφάλαια της διδακτορικής διατριβής. Στη συνέχεια, συζητούνται θέματα σε σχέση με τη μεθοδολογική προσέγγιση που χρησιμοποιήθηκε για το σχεδιασμό συγκεκριμένων παραδειγμάτων πραγματικών εφαρμογών και αναλύονται τα πλεονεκτήματα και τα αντίστοιχα μειονεκτήματα που παρουσιάστηκαν. Το δεύτερο κεφάλαιο επικεντρώνεται σε θέματα αξιολόγησης και αναδιάταξης του εννοιολογικού σχήματος-μοντέλου εφαρμογών Παγκόσμιου Ιστού. Εισάγεται η έννοια των Κλώνων Μοντέλου (Model Clones), ως μικρότερα μοντέλα υπερκειμένου που επαναλαμβάνονται σε ένα ευρύτερο μοντέλο εφαρμογής και η έννοια των Οσμών Μοντέλου (Model Smells), ως ενδείξεις ύπαρξης κλώνων. Παρουσιάζεται μία μέθοδος ανίχνευσης πιθανών προβλημάτων αποδοτικότητας, συνέπειας, ευχρηστίας και ποιότητας στο επίπεδο του σχήματος υπερκειμένου της εφαρμογής μέσω της εξόρυξης κλώνων μοντέλου. Έτσι μπορεί να επιτευχθεί ο αποδοτικός επανασχεδιασμός και η βελτίωση της συνολικής ποιότητάς της, σε επίπεδο διαχείρισης δεδομένων, διάταξης του υπερκειμένου 16

και παρουσίασης του περιεχομένου. Επιπλέον, παρέχονται μετρικές αξιολόγησης, οι οποίες δίνουν τη δυνατότητα ποσοτικοποίησης της ακατάλληλης επαναχρησιμοποίησης των κλώνων και προτείνονται κανόνες αναδιάταξης του μοντέλου της εφαρμογής. Τέλος, αναλύονται θέματα αυτοματοποίησης της διαδικασίας αναδιάταξης του μοντέλου της εφαρμογής με βάση τους κλώνους μοντέλου που έχουν ανιχνευθεί. Οι τεχνικές που παρουσιάζονται μπορούν να εφαρμοστούν κατά τη διάρκεια σχεδιασμού της εφαρμογής, καθώς και κατά τη διάρκεια συντήρησης και επανασχεδιασμού της. Βασικός στόχος είναι να υποστηριχτεί η ανάγκη να προσεγγιστούν όλες οι πτυχές αποδοτικού και ποιοτικού σχεδιασμού από την αρχή του κύκλου ανάπτυξης εφαρμογών Παγκόσμιου Ιστού. Στο τρίτο κεφάλαιο μελετάται το πρόβλημα εντοπισμού αποδοτικών σχεδιαστικών λύσεων και σχεδιαστικών προτύπων μέσα στο εννοιολογικό σχήμα-μοντέλο μίας ή περισσότερων εφαρμογών Παγκόσμιου Ιστού. Τα σχεδιαστικά πρότυπα παράγονται από πεπειραμένους σχεδιαστές λογισμικού, οι οποίοι εμπειρικά μελετούν μια σειρά από επιτυχημένες εφαρμογές και στη συνέχεια ορίζουν ένα ή περισσότερα από αυτά. Επιπλέον, το μεγαλύτερο ποσοστό σχεδιαστικών προτύπων μέχρι σήμερα, έχει προταθεί από ένα πολύ μικρό αριθμό σχεδιαστών. Με στόχο την αντιμετώπιση του παραπάνω προβλήματος, προτείνεται μία μέθοδος αυτόματης εξόρυξης αποτελεσματικών σχεδιαστικών λύσεων κατά τη διάρκεια σχεδίασης (ή συντήρησης και επανασχεδιασμού) μίας εφαρμογής, στο επίπεδο του μοντέλου της. Η συγκεκριμένη μεθοδολογική προσέγγιση, στην περίπτωση που εφαρμοστεί σε εννοιολογικά σχήματα πολλών εφαρμογών μίας συγκεκριμένης κατηγορίας, μπορεί να οδηγήσει στον προσδιορισμό Πλαισίων Ανάπτυξης Εφαρμογών για τον αποδοτικό σχεδιασμό εφαρμογών της συγκεκριμένης αυτής κατηγορίας, ή ακόμα και στον αυτόματο εντοπισμό σχεδιαστικών προτύπων. Τέλος, παρουσιάζεται ο συνδυασμός της μεθόδου με υψηλότερου επιπέδου γλώσσες χειρισμού μοντέλου εφαρμογών, ώστε να επιτευχθεί η αυτοματοποίηση της εφαρμογής των αποδοτικών σχεδιαστικών λύσεων που ανακτήθηκαν με τη χρήση της, για τη δημιουργία ή επέκταση του εννοιολογικού σχήματος μίας εφαρμογής. Στο τελευταίο κεφάλαιο της διδακτορικής διατριβής γίνεται διερεύνηση του προβλήματος της συνεχώς αυξανόμενης κίνησης στον Παγκόσμιο Ιστό και της επίδρασης που έχει αυτό στην ποιότητα των εφαρμογών που βασίζονται στο συγκεκριμένο περιβάλλον. Σύμφωνα με πρόσφατες έρευνες, η κίνηση στον Παγκόσμιο Ιστό διπλασιάζεται κάθε χρόνο. Οι χρήστες απαιτούν όλο και μεγαλύτερο όγκο πληροφορίας από τους Ιστοχώρους του Παγκόσμιου Ιστού, ενώ παράλληλα θέλουν να ξοδέψουν όσο το δυνατόν μικρότερο χρόνο για την καταφόρτωση δεδομένων (downloading). Για το λόγο αυτό, όλο και περισσότερο εύρος ζώνης Διαδικτύου απαιτείται και οι παροχείς πρόσβασης στο Διαδίκτυο (ISPs) προσπαθούν να λύσουν το πρόβλημα κατασκευάζοντας δίκτυα υψηλών ταχυτήτων. Στο συγκεκριμένο κεφάλαιο παρουσιάζεται μία μέθοδος μείωσης του χρόνου καταφόρτωσης ιστοσελίδων με τη χρήση αλγορίθμων συμπίεσης δεδομένων. Επίσης, παρουσιάζεται μια περιπτωσιολογική μελέτη (case study) που υπολογίζει τη μείωση του χρόνου που απαιτείται για να καταφορτωθεί πλήρως μία ιστοσελίδα και να παραδοθεί στον τελικό χρήστη. Επιπλέον, αναλύεται ο τρόπος υπολογισμού του ποσοστού μείωσης του όγκου των μεταφερόμενων δεδομένων, των πόρων σε εύρος ζώνης και του χρόνου απόκρισης, όταν το χαρακτηριστικό συμπίεσης του πρωτοκόλλου HTTP/1.1 ενεργοποιηθεί. 17

Executive Summary The exponential growth of the Web and its capillar diffusion in a variety of productive contexts are nurturing a novel generation of applications, characterized by a large degree of complexity. The development of such applications is a hybrid between traditional Information Systems development and Hypermedia authoring. This combination challenges the existing tools and approaches for software production. In this dissertation we take an in-depth look at a wide range of aspects concerning the performance improvement of data-intensive Web applications. The main goal is to improve the performance at all levels of the application life-cycle. At a first level we focus on the processes of design, development and maintenance of Web applications and at a second level on their effective delivery to their end users. In the first chapter we present the current practices and methodological approaches proposed by the research community, in order to provide a firm and effective framework for the design/modeling and development of Web applications. We evidentiate the software engineering, architectural, and applicative issues of Web development, and compare the current approaches on Web modeling, in order to identify open problems and potential extensions. We provide an in-depth analysis of Web Modeling Language (WebML), as it will be utilized for the demonstration of the methods and techniques proposed in the next two chapters. Finally, we summarize the results and report on the advantages and disadvantages identified during the design and development of four real life web applications using a modeling language. The second chapter focuses on evaluating and refactoring the conceptual schemas of Web applications. We introduce the notion of Model Clones, as partial conceptual schemas that are repeated within a broader application model and the notion of Model Smells, as certain blocks in the Web applications model, that imply the possibility of refactoring. We illustrate a methodology for detecting and evaluating the existence of potential model clones, in order to identify problems in an application s conceptual schema by means of efficiency, consistency, usability and overall quality. The methodology can be deployed either in the process of designing an application or in the process of re-engineering it. Evaluation is performed according to a number of inspection steps. At first level the compositions used in the hypertext design are evaluated, followed by a second level evaluation concerning the manipulation and presentation of data to the user. Next, we define metrics to automate the detection and categorization of candidate model clones in order to facilitate potential model refactoring. Finally, we propose a number of straightforward refactoring rules based on the categorization and discuss the aspects affecting the automation of the refactoring procedure. In the third chapter we investigate the problem of capturing effective design solutions, or even more design patterns, within the conceptual schema of one or more 18

Web applications. Design patterns are still devised by experienced software designers, who study or reverse-engineer a set of successful applications and then define one or more design templates. Moreover, the task of detecting re-usable designs is mainly carried out by a closed group of experts. In order to address this problem, we provide a methodology and metrics for mining the conceptual schema of Web applications, to discover recurrent design solutions in an automatic manner. This approach, when applied in an application s conceptual schema results in effective design solutions, as it facilitates reuse and consistency in the development and maintenance process. Furthermore, when applied to a large number of applications, it enables hypertext architects to identify templates for specific domain Web application frameworks and to discover new design patterns. Finally, we discuss the combination of the proposed methodology with higher level meta-modeling languages, in order to provide means for effective and consistent modeling activities in an automatic manner. In the dissertation s last chapter, we investigate the problems provoked by the increasing Web traffic and their affects on the overall quality of Web applications. According to recent studies, Web traffic is doubling every year. Users need more information from Web sites, while on the other hand they demand to spend as little time for downloading, as possible. Simultaneously, more Internet bandwidth is needed and all ISPs are trying to build high bandwidth networks. In this chapter we present an approach for reducing the time needed for a web page to be fully downloaded, utilizing compression algorithms. We also present a case study based on five popular sites, illustrating a way to calculate the reduction of data transfer, bandwidth resources and response time when the HTTP/1.1 s compressing feature is enabled (either in plain hypertext files or the text output of CGI programs or dynamically generated pages). 19

Δημοσιεύσεις σε Περιοδικά & Συνέδρια Διεθνή Επιστημονικά Περιοδικά BOURAS, C., DESTOUNIS, P., GAROFALAKIS, J., TRIANTAFILLOU, V., TZIMAS, G. AND ZARAFIDIS, P. (1999), A Cooperative Environment for Local Government: An Internet Intranet Approach, Telematics and Informatics Journal, Elsevier Science, ISSN 0736-5853, vol. 16, no. 1-2, pp. 75 89. DESTOUNIS, P., GAROFALAKIS, J., KAPPOS, P. AND TZIMAS, J. (2001), Measuring the Mean Web Page Size and its Compression to Limit Latency and Improve Download Time, Internet Research Journal, Emerald, ISSN 1066-2243, vol. 11, no. 1, pp. 10-17. LIOPA-TSAKALIDIS, A., SAKKOPOULOS, E., SAVVAS, D., SIDERIDIS, A.B. AND TZIMAS, J. (2005), HydroNet: An Intelligent Hydroponics Web Service Environment, International Journal of Neural, Parallel and Scientific Computations, ISSN 1061 5369, vol. 13, pp. 15-36, (to appear). PANAGIS, Y., SAKKOPOULOS, E., SIRMAKESSIS, S., TSAKALIDIS, A. AND TZIMAS, G. (2006), Techniques for mining the design of e-government services to enhance end-user experience, submitted to Electronic Government, an International Journal, Special Issue on Exploiting Knowledge Management for Ubiquitous E-Government in the Semantic Web, Inderscience, ISSN 1740-7494, Vol 3, no 1. Διεθνή Επιστημονικά Συνέδρια DESTOUNIS, P., GAROFALAKIS, J., KAPPOS, P. AND TZIMAS, J. (2000), Defining the Mean Web Page Size and Improving the Latency in Web Page Transfer, In the Proceedings of the 2 nd International Network Conference (INC 2000), July 3-6, 2000, Plymouth, United Kingdom, ISBN 1-84102-066-4, pp. 11-18. MOUMTZIDIS, Y., SIRMAKESSIS, S. AND TZIMAS, G. (2001), Secure Interface for Risk Management Services, In the Proceedings of the 2 nd ΙΕΕΕ International Workshop on User Interfaces to Data Intensive Systems (UIDIS 2001), May 31 June 1, 2001, Zurich, Switzerland, IEEE Computer Society Press, ISBN 0-7695-0834-0, pp. 96-100. RIGOU, M., SIRMAKESSIS, S. AND TZIMAS, G. (2004), An Architecture for an Adaptive Web-Based Learning Environment, In the Proceedings of the 3 rd IASTED International Conference on Web-based Education (WBE 2004), February 16-18, 2004, Innsbruck, Austria, ACTA Press, ISBN 0-88986-406-3, pp. 637-641. DIMITRAKOPOULOU, D., RIGOU, M., SIRMAKESSIS, S., TSAKALIDIS, A. AND TZIMAS, G. (2005), Capturing Application-Domain Specific Patterns in a Web Application: The E-Learning Paradigm, In the Proceedings of the 4 th IASTED International Conference on Web-based Education (WBE 2005), February 21-23, 2005, Grindelwald, Switzerland, ACTA Press, ISBN 0-88986-480-2, pp. 556-561. 20

KATSIMPA, T., SIRMAKESSIS, S., TSAKALIDIS, A. AND TZIMAS, G. (2005), Mining Effective Design Solutions Based on a Model-Driven Approach, In the Proceedings of 6 th Conference on Data Mining, Text Mining and their Business Applications (Data Mining 2005), May 25-27, 2005, Skiathos, Greece, WIT Press, 1-84564-017-9, pp. 463-474. DIMITRAKOPOULOU, D., KATSIMPA, T., RIGOU, M., SIRMAKESSIS, S., TSAKALIDIS, A. AND TZIMAS, G. (2005), Mining Design Patterns in the Conceptual Schema of Web Applications, In the Proceedings of the World Conference on Educational Multimedia, Hypermedia & Telecommunications (ED-MEDIA 2005), June 27-July 2, 2005, Montreal, Canada. SAKKOPOULOS, E., SIRMAKESSIS, S., TSAKALIDIS, A., AND TZIMAS, G. (2005), A Methodology for Evaluating the Personalization Conceptual Schema of a Web Application, to appear in the Proceedings of the 11th International Conference on Human-Computer Interaction (HCI International 2005), July 22-27, 2005, Las Vegas, Nevada, USA. PANAGIS, Y., SAKKOPOULOS, E., SIRMAKESSIS, S., TSAKALIDIS, A. AND TZIMAS, G. (2005), Discovering Re-Usable Design Solutions in Web Conceptual Schemas: Metrics and Methodology, to appear in the Proceedings of the 5 th International Conference on Web Engineering (ICWE2005), July 25-29, 2005, Sydney, Australia. RIGOU, M., SIRMAKESSIS, S., AND TZIMAS, G. (2005), Model Cloning: A push to reuse or a Disaster?, to appear in the Proccedings of the 16 th ACM Conference on Hypertext and Hypermedia - HyperText 2005, September 6-9, 2005, Salzburg, Austria. 21

Of all the monsters that fill the nightmares of our folklore, none terrify more than werewolves, because they transform unexpectedly from the familiar into horrors. For these, one seeks bullets of silver that can magically lay them to rest. The familiar software project, at least as seen by the non-technical manager, has something of this character; it is usually innocent and straightforward, but is capable of becoming a monster of missed schedules, blown budgets, and flawed products. So we hear desperate cries for a silver bullet--something to make software costs drop as rapidly as computer hardware costs do. But, as we look to the horizon of a decade hence, we see no silver bullet. There is no single development, in either technology or in management technique, that by itself promises even one order-of-magnitude improvement in productivity, in reliability, in simplicity. Frederick P. Brooks, Jr. No Silver Bullet: Essence and Accidents of Software Engineering Computer Magazine, April 1987 22

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

Κεφάλαιο 1 No matter how well thought out it is, and regardless of which "best practices" it includes, no method can replace thinking. Andrew Hunt & David Thomas The Pragmatic Programmer: From Journeyman to Master, 1999 24

Μοντελοποίηση Εφαρμογών Παγκόσμιου Ιστού Σύνοψη Η εκθετική ανάπτυξη του Παγκόσμιου Ιστού και η συνεχής διασπορά του σε διάφορους τομείς της καθημερινότητας, έχει τροφοδοτήσει την ανάπτυξη μίας νέας γενιάς εφαρμογών, οι οποίες χαρακτηρίζονται πλέον από μεγάλο βαθμό πολυπλοκότητας. Η ανάπτυξη τέτοιων εφαρμογών είναι στην ουσία ένα υβρίδιο που συνδυάζει παραδοσιακά Πληροφοριακά Συστήματα με εφαρμογές Υπερμέσων (Hypermedia). Αυτός ο συνδυασμός θέτει νέες προκλήσεις στις υπάρχουσες προσεγγίσεις σχεδιασμού και παραγωγής λογισμικού. Στο συγκεκριμένο κεφάλαιο θα παρουσιαστεί η τρέχουσα κατάσταση σε σχέση με τις μεθοδολογίες σχεδιασμού και ανάπτυξης εφαρμογών Παγκόσμιου Ιστού που έχουν προταθεί από την ερευνητική κοινότητα μέχρι σήμερα. Θα γίνει μία προσπάθεια να αναγνωριστούν και να χαρακτηριστούν οι διάφορες κατηγορίες λύσεων και θα γίνει μία πρώτου επιπέδου αξιολόγηση σε σχέση με την επάρκεια που παρουσιάζουν στις απαιτήσεις της διαδικασίας ανάπτυξης εφαρμογών Παγκόσμιου Ιστού. Επιπλέον, θα επισημανθούν διάφορα ανοιχτά προβλήματα και θα αναλυθούν οι πιθανές μελλοντικές τάσεις. Τέλος, θα παρουσιαστεί σε μεγαλύτερο βάθος η μεθοδολογία και η αντίστοιχη γλώσσα μοντελοποίησης εφαρμογών Παγκόσμιου Ιστού WebML, καθώς αποτελεί τη βάση (γλώσσα επίδειξης) πάνω στην οποία θα στηριχτεί η παρουσίαση των τεχνικών και μεθόδων που προτείνονται στα επόμενα δύο κεφάλαια της διδακτορικής διατριβής. Επιπλέον, θα συζητηθούν θέματα για τη μεθοδολογική προσέγγιση που χρησιμοποιήθηκε για το σχεδιασμό συγκεκριμένων παραδειγμάτων πραγματικών εφαρμογών και θα αναλυθούν τα πλεονεκτήματα και τα αντίστοιχα μειονεκτήματα που παρουσιάστηκαν. 1.1 Εισαγωγή Οι εφαρμογές που βασίζονται σε τεχνολογίες Διαδικτύου και ανήκουν σε πεδία όπως το Ηλεκτρονικό Εμπόριο, οι Ψηφιακές Βιβλιοθήκες, οι Συνεργατικές Εφαρμογές και η Εκπαίδευση από Απόσταση χαρακτηρίζονται από μία άνευ προηγουμένου μίξη χαρακτηριστικών, η οποία τις κάνει να διαφέρουν δραματικά σε σχέση με άλλου τύπου εφαρμογές πληροφορικής (Myers et al., 1996). Πιο συγκεκριμένα: Η καθολική πρόσβαση από χρήστες με περιορισμένες, ή ακόμα και χωρίς δεξιότητες στη χρήση εφαρμογών Η/Υ, εισάγει την ανάγκη δημιουργίας νέου τύπου διεπαφών ανθρώπου-υπολογιστή, ικανών να τραβήξουν την προσοχή των χρηστών και να διευκολύνουν την πρόσβαση στην πληροφορία. ΚΕΦΑΛΑΙΟ 1 25