ΔΙΔΑΚΤΟΡΙΚΗ ΔΙΑΤΡΙΒΗ

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

Download "ΔΙΔΑΚΤΟΡΙΚΗ ΔΙΑΤΡΙΒΗ"

Transcript

1 ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ KAI ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΣΥΣΤΗΜΑΤΩΝ ΜΕΤΑΔΟΣΗΣ ΠΛΗΡΟΦΟΡΙΑΣ KΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΥΛΙΚΩΝ ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΚΑΙ ΕΠΑΛΗΘΕΥΣΗ ΚΙΝΗΤΩΝ ΣΥΣΤΗΜΑΤΩΝ ΜΕ ΤΕΧΝΙΚΕΣ ΑΛΓΕΒΡΙΚΩΝ ΠΡΟΔΙΑΓΡΑΦΩΝ ΔΙΔΑΚΤΟΡΙΚΗ ΔΙΑΤΡΙΒΗ Ιάκωβος Χ. Ουρανός Αθήνα, Ιανουάριος 2008

2

3 ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ KAI ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΣΥΣΤΗΜΑΤΩΝ ΜΕΤΑΔΟΣΗΣ ΠΛΗΡΟΦΟΡΙΑΣ KΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΥΛΙΚΩΝ ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΚΑΙ ΕΠΑΛΗΘΕΥΣΗ ΚΙΝΗΤΩΝ ΣΥΣΤΗΜΑΤΩΝ ΜΕ ΤΕΧΝΙΚΕΣ ΑΛΓΕΒΡΙΚΩΝ ΠΡΟΔΙΑΓΡΑΦΩΝ ΔΙΔΑΚΤΟΡΙΚΗ ΔΙΑΤΡΙΒΗ Ιάκωβος Χ. Ουρανός Συμβουλευτική Επιτροπή: Καθ. Παναγιώτης Φράγκος (Επιβλέπων Καθηγητής) Καθ. Φίλιππος Κωνσταντίνου Καθ. Νικόλαος Ουζούνογλου Εγκρίθηκε από την επταμελή εξεταστική επιτροπή την 15 η Φεβρουαρίου Π. Φράγκος Καθηγητής Ε.Μ.Π., ΣΗΜΜΥ... Φ. Κωνσταντίνου Καθηγητής Ε.Μ.Π., ΣΗΜΜΥ... Ν. Ουζούνογλου Καθηγητής Ε.Μ.Π., ΣΗΜΜΥ... Μ. Θεολόγου Καθ. Ε.Μ.Π., ΣΗΜΜΥ... Γ. Κολέτσος Αν. Καθ. Ε.Μ.Π., ΣΗΜΜΥ... Σ. Παπαβασιλείου Επικ. Καθ. Ε.Μ.Π., ΣΗΜΜΥ... Α. Παπαϊωάννου Επικ. Καθ. Ε.Μ.Π., ΣΕΜΦΕ Αθήνα, Ιανουάριος 2008

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

5 Αφιερώνεται στην οικογένειά μου

6

7 ΠΕΡΙΛΗΨΗ ΠΕΡΙΛΗΨΗ Αντικείμενο της διατριβής αποτελεί η μοντελοποίηση και η επαλήθευση κινητών συστημάτων με χρήση τεχνικών αλγεβρικών προδιαγραφών. Με τον όρο κινητά συστήματα αναφέρονται τα συστήματα υπολογισμού ή/και επικοινωνιών στα οποία η έννοια της θέσης των αντικειμένων αποτελεί κρίσιμο χαρακτηριστικό τους και η μεταβολή της επηρεάζει καθοριστικά τη συμπεριφορά τους. Λόγω της ιδιαιτερότητας των συστημάτων αυτών, και εξαιτίας τη ραγδαίας εξάπλωσης της χρήσης των κινητών δικτύων και υπηρεσιών, οι απαιτήσεις για αξιοπιστία, ασφάλεια και λειτουργικότητα έχουν οδηγήσει στην ανάπτυξη τυπικών μεθόδων προσανατολισμένων στα κινητά συστήματα. Οι τυπικές μέθοδοι, οι οποίες είναι τεχνικές, γλώσσες και εργαλεία με ισχυρό μαθηματικό υπόβαθρο, μας δίνουν τη δυνατότητα μιας αυστηρής, μαθηματικά ορισμένης, χωρίς ασάφειες, περιγραφής ή προδιαγραφής των συστημάτων, η οποία χρησιμοποιείται για το σχεδιασμό τους, την ανάλυση, και την επαλήθευση επιθυμητών ιδιοτήτων τους. Ένας πολύ σημαντικός κλάδος των τυπικών μεθόδων είναι οι αλγεβρικές γλώσσες προδιαγραφών, οι οποίες έχουν ως μαθηματικό υπόβαθρο τους μαθηματικά λογικά συστήματα ή συνδυασμούς τους. Μια τέτοια εκτελέσιμη αλγεβρική γλώσσα προδιαγραφών νέας γενιάς, απόγονος των γλωσσών OBJ, είναι η CafeOBJ. Το βασικότερο χαρακτηριστικό της γλώσσας αυτής που τη διακρίνει από αντίστοιχους φορμαλισμούς, είναι η άμεση υποστήριξη που παρέχει στη συμπεριφοριακή προδιαγραφή με την ενσωμάτωση στο συντακτικό της ειδικών τύπων και τελεστών. Η συμπεριφοριακή προδιαγραφή, η οποία έχει τις βάσεις της στην άλγεβρα με κρυμμένους τύπους, υποστηρίζει την αλγεβρική προδιαγραφή με αντικείμενα ή αφηρημένες μηχανές καταστάσεων, δίνοντας τη δυνατότητα περιγραφής κατανεμημένων, δυναμικών συστημάτων με ταυτόχρονες διεργασίες. Παράλληλα, με χρήση τεχνικών επαλήθευσης που βασίζονται σε αυτή, μας δίνει τη δυνατότητα απόδειξης ιδιοτήτων ασφαλείας των συστημάτων που έχουν προδιαγραφεί. Με βάση τα παραπάνω, προτείνεται το πλαίσιο προδιαγραφής και επαλήθευσης κινητών συστημάτων MobileOBJ. Η προδιαγραφή του κινητού συστήματος, πρωτοκόλλου ή διαδικασίας, αποτελείται από τη σύνθεση τεμαχίων προδιαγραφών (specification modules) τα οποία περιγράφουν είτε τους τύπους δεδομένων, είτε το σύστημα σαν ένα Κινητό Παρατηρήσιμο Σύστημα Μετάβασης, ένα είδος συμπεριφοριακού αντικειμένου. Στη συνέχεια με βάση αυτή την προδιαγραφή και κάνοντας χρήση τεχνικών απόδειξης θεωρήματος είναι δυνατή η επαλήθευση ιδιοτήτων της. Το ότι ο δυναμικός χαρακτήρας του συστήματος προδιαγράφεται με εξισώσεις, κάνει τη μέθοδο αυτή καλύτερα κατανοητή και ευκολότερη από αντίστοιχες μεθόδους που προαπαιτούν βαθύτερη γνώση των τεχνικών απόδειξης θεωρήματος. Στη συνέχεια, επεκτείνοντας την αρχική προσέγγιση, δίνεται η δυνατότητα προδιαγραφής και φυσικών, συνεχών πέραν των διακριτών χαρακτηριστικών των κινητών συστημάτων, όπως ο χρόνος και η απόσταση. Τα παραπάνω επιτυγχάνονται με την ενοποίηση των Κινητών Παρατηρήσιμων Συστημάτων Μετάβασης με τα Χρονικά και τα Υβριδικά Παρατηρήσιμα Συστήματα Μετάβασης. Η εφαρμογή της μεθόδου παρουσιάζεται μέσα από τη μελέτη μιας σειράς περιπτώσεων που αντιστοιχούν σε συστήματα και πρωτόκολλα. 7

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

9 ABSTRACT ABSTRACT The scope of the thesis is the modeling and verification of mobile systems using algebraic specification techniques. Α mobile system is a computing and/or a communication system where the notion of location of its components is of major criticality and its change affects system s behavior. Due to the special characteristics of such systems, and the rapid proliferation of mobile devices, networks and services, the requirements for reliability, security and functionality has led to the development of formal methods for mobile systems. Formal methods, which are techniques, languages and tools based on mathematics, provide an unambiguous, strict mathematical description or specification which is used for effective design, analysis and verification of desired properties of the system. An important branch of formal methods are algebraic specification languages with a rigorous basis on mathematical logical systems or combinations of them. Such a language is CafeOBJ, an executable, new generation algebraic specification language, member of the OBJ family languages. Its main characteristic that differentiates it from other formalisms is its direct support to behavioural specification paradigm since it embeds special hidden sorts and behavioural operators in its syntax. Behavioural specification is based on hidden algebra and supports an object oriented style of algebraic specification. It also supports specification of distributed concurrent systems as abstract state machines and verification of safety properties of them through theorem proving techniques such as simultaneous induction and coinduction. Based on the above specification techniques, MobileOBJ is proposed, that is an algebraic framework for specification and verification of mobile systems. The specification of the mobile system, protocol or procedure consists of specification modules which describe either data types as visible sorts, or the system as a Mobile Observational Transition System, a kind of behavioural object. Based on this specification, verification of properties of the mobile system using theorem proving techniques is feasible. Since the transitions of the system are specified as equations makes the method easier to read, understand and learn than other related methods, which prerequisite deeper knowledge of theorem proving. Next, the integration of Mobile Observational Transition Systems with Timed and Hybrid Observational Transition Systems is performed to capture not only the discrete but also the continuous characteristics of mobiles systems, such as timing constraints, resource scarcity or distance. To demonstrate the applicability and practicality of the framework, a number of case studies are conducted. Security aspects of mobile systems are of major importance, and it was inevitable to take them into account. Authentication protocols for sensor networks and multicasting settings have been formally specified, and safety properties of them have been verified. In the last section of the thesis, a protocol algebra is proposed inspired by the module algebra and the hierarchical object composition technique based on hidden algebra. The preservation of some properties of the component protocols to the composed protocol for some operators of the algebra has been proved. Finally, a number of applications of the algebra are presented. 9

10 ABSTRACT Keywords: Mobile Systems, Formal Methods, Algebraic Specification Languages, Formal Verification, CafeOBJ, MobileOBJ, Mobile Observational Transition Systems, Theorem Proving, Induction, Behavioural Specifications, Hidden Algebra, Abstract Data Type, Abstract State Machine, Mobile Communication Protocols, Security Protocols, Protocol Algebra, Protocol Composition 10

11 ΕΥΧΑΡΙΣΤΙΕΣ ΕΥΧΑΡΙΣΤΙΕΣ Η παρούσα διατριβή εκπονήθηκε στον τομέα Συστημάτων Μετάδοσης Πληροφορίας και Τεχνολογίας Υλικών της Σχολής Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ του Εθνικού Μετσόβιου Πολυτεχνείου. Στο σημείο αυτό θα ήθελα να ευχαριστήσω όλους όσους με βοηθήσαν, συμβάλλοντας ο καθένας με το δικό του τρόπο, στην ολοκλήρωση της διατριβής. Κατ αρχήν θα ήθελα να ευχαριστήσω τον Καθηγητή του Ε.Μ.Π. και επιβλέποντα της διατριβής μου κ. Παναγιώτη Φράγκο για την καθοδήγηση και τις πολύτιμες συμβουλές του σε θέματα κινητών επικοινωνιών καθ όλη την πορεία της ερευνητικής μου προσπάθειας, από τα χρόνια της διπλωματικής μέχρι και σήμερα, για την εμπιστοσύνη που έδειξε στο πρόσωπό μου, και την πολύπλευρη στήριξη που μου παρείχε όλα αυτά τα χρόνια. Θα ήθελα ακόμη να ευχαριστήσω τον Δρ. Πέτρο Στεφανέα, ο οποίος με «μύησε» στο χώρο των αλγεβρικών προδιαγραφών και των τυπικών μεθόδων γενικότερα, και κατεύθυνε την έρευνα σε συναρπαστικά μονοπάτια με τις ιδέες του. Η συμβολή του υπήρξε ανεκτίμητη και τον ευχαριστώ από καρδιάς. Επίσης ευχαριστώ τον Καθηγητή Kokichi Futatsugi, υπεύθυνο της ομάδας ανάπτυξης της CafeOBJ στο Japan Advanced Institute of Science and Technology, και τον Dr. Razvan Diaconescu, Senior Researcher του Ινστιτούτου Μαθηματικών Simion Stoilow της Ρουμανίας, που έχει αναπτύξει τη σημασιολογία της γλώσσας, για τα πολύτιμα σχόλια και επισημάνσεις τους σε drafts εργασιών μου, και τον Καθηγητή του Ε.Μ.Π. κ. Γεώργιο Κολέτσο για την υποστήριξή του, και ελπίζω η συνεργασία αυτή να συνεχιστεί και στο μέλλον. Από το χώρο της εργασίας μου στο Κέντρο Γεωπληροφορικής της Σχολής Τοπογράφων Μηχανικών Ε.Μ.Π. θα ήθελα να ευχαριστήσω το Διευθυντή μου και Καθηγητή Ε.Μ.Π. κ. Λύσανδρο Τσούλο για την εμπιστοσύνη που έδειξε στο πρόσωπό μου από την πρώτη στιγμή, την άψογη συνεργασία αλλά και τη βοήθεια που μου παρείχε σε πολλά επίπεδα, και τους συναδέλφους μου, και ιδιαίτερα το Χρήστο Βουλουτάκη, Μηχανικό Πληροφορικής, για την άψογη συνεργασία όλα αυτά τα χρόνια. Ευχαριστώ επίσης το συνάδελφο, συμφοιτητή αλλά προπάντων φίλο μου Στράτο για την ειλικρινή του φιλία από το πρώτο έτος στο Ε.Μ.Π. μέχρι σήμερα. Θα ήθελα επίσης να εκφράσω τη βαθιά μου ευγνωμοσύνη προς τους γονείς μου, τα αδέρφια μου και τη σύζυγό μου Ανδρονίκη γιατί ήταν πάντα δίπλα μου, στηρίζοντας κάθε μου προσπάθεια, δίνοντας μου πάντα δύναμη και κουράγιο για να συνεχίσω. Τέλος, ευχαριστώ τον Ε.Λ.Κ.Ε. του Ε.Μ.Π. για την ετήσια υποτροφία που μου χορήγησε και το Θωμαΐδειο Ίδρυμα για τη βράβευση εργασίας μου. Ιάκωβος Χ. Ουρανός Αθήνα, Ιανουάριος

12 12

13 ΠΕΡΙΕΧΟΜΕΝΑ ΠΕΡΙΛΗΨΗ...7 ABSTRACT...9 ΕΥΧΑΡΙΣΤΙΕΣ...11 ΠΕΡΙΕΧΟΜΕΝΑ...13 ΕΥΡΕΤΗΡΙΟ ΣΧΗΜΑΤΩΝ ΚΕΦΑΛΑΙΟ 1. ΕΙΣΑΓΩΓΗ ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ ΚΙΝΗΤΩΝ ΣΥΣΤΗΜΑΤΩΝ ΚΑΙ ΕΦΑΡΜΟΓΩΝ ΓΕΝΙΚΑ ΠΕΡΙ ΤΥΠΙΚΩΝ ΜΕΘΟΔΩΝ ΤΥΠΙΚΕΣ ΜΕΘΟΔΟΙ ΚΑΙ ΚΙΝΗΤΑ ΣΥΣΤΗΜΑΤΑ Mobile UNITY Mobile TLA Mobile Z π-calculus Λοιπές προσεγγίσεις ΑΛΓΕΒΡΙΚΕΣ ΓΛΩΣΣΕΣ ΠΡΟΔΙΑΓΡΑΦΩΝ ΤΗΣ ΟΙΚΟΓΕΝΕΙΑΣ OBJ Η γλώσσα OBJ Η γλώσσα BOBJ Η γλώσσα CafeOBJ H γλώσσας Maude Συστήματα βασισμένα στην OBJ ΑΛΓΕΒΡΙΚΕΣ ΓΛΩΣΣΕΣ ΠΡΟΔΙΑΓΡΑΦΩΝ OBJ ΚΑΙ ΚΙΝΗΤΑ ΣΥΣΤΗΜΑΤΑ Mobile Maude Διεργασίες και αντικείμενο-ρίζα Κινητά αντικείμενα Προώθηση μηνυμάτων Επικοινωνία αντικειμένων Κινητικότητα αντικειμένων Κωδικοποίηση του λογισμού των mobile ambients με την CafeOBJ ΣΤΟΧΟΙ ΤΗΣ ΕΡΕΥΝΑΣ ΔΟΜΗ ΤΗΣ ΔΙΑΤΡΙΒΗΣ...41 ΑΝΑΦΟΡΕΣ

14 ΠΕΡΙΕΧΟΜΕΝΑ ΚΕΦΑΛΑΙΟ 2. ΘΕΩΡΗΤΙΚΟ ΥΠΟΒΑΘΡΟ ΕΙΣΑΓΩΓΗ ΣΥΜΠΕΡΙΦΟΡΙΑΚΕΣ ΑΛΓΕΒΡΙΚΕΣ ΠΡΟΔΙΑΓΡΑΦΕΣ ΚΑΙ ΑΛΓΕΒΡΑ ΜΕ ΚΡΥΜΜΕΝΟΥΣ ΤΥΠΟΥΣ Στοιχεία γενικής άλγεβρας και άλγεβρας με κρυμμένους τύπους Βασικά Υπολογιστικά Μοντέλα: Συστήματα Μετάβασης Παρατηρήσιμα Συστήματα Μετάβασης ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΛΓΕΒΡΙΚΗ ΓΛΩΣΣΑ ΠΡΟΔΙΑΓΡΑΦΩΝ CafeOBJ Λογικό υπόβαθρο Σημαντικά χαρακτηριστικά Βασικό συντακτικό Η τεχνική ιεραρχική σύνθεσης αντικειμένων Παράλληλη σύνθεση Δυναμική σύνθεση Συγχρονισμένη παράλληλη σύνθεση Η μέθοδος ΠΣΜ/CafeOBJ Προδιαγραφή των ΠΣΜ στην CafeOBJ Τεχνικές επαλήθευσης/επικύρωσης προδιαγραφών ΑΝΑΦΟΡΕΣ...70 ΚΕΦΑΛΑΙΟ 3. ΜOBILEOBJ ΕΙΣΑΓΩΓΗ ΚΙΝΗΤΑ ΠΑΡΑΤΗΡΗΣΙΜΑ ΣΥΣΤΗΜΑΤΑ ΜΕΤΑΒΑΣΗΣ Γενική περιγραφή Τυπικός Ορισμός Προσθέτοντας κινητικότητα σε ένα απλό πρωτόκολλο επικοινωνίας ΜΕΛΕΤΗ ΠΕΡΙΠΤΩΣΗΣ-ΠΕΡΙΒΑΛΛΟΝ ΚΙΝΗΤΟΥ ΥΠΟΛΟΓΙΣΜΟΥ Περιγραφή του περιβάλλοντος κινητού υπολογισμού Τυπική προδιαγραφή Τυπική επαλήθευση ιδιοτήτων ασφαλείας προδιαγραφής ΧΡΟΝΙΚΑ ΠΣΜ, ΥΒΡΙΔΙΚΑ ΠΣΜ ΚΑΙ ΕΝΟΠΟΙΗΣΗ ΜΕ ΤΑ ΚΙΝΗΤΑ ΠΣΜ Τα Χρονικά ΠΣΜ (Timed OTSs) Τα Υβριδικά ΠΣΜ (Hybrid OTSs)

15 ΠΕΡΙΕΧΟΜΕΝΑ Ενοποίηση των Κινητών ΠΣΜ με τα Χρονικά και Υβριδικά ΠΣΜ ΜΕΛΕΤΗ ΠΕΡΙΠΤΩΣΗΣ ΤΟ ΠΡΩΤΟΚΟΛΛΟ ΚΙΝΗΤΟΥ IP Περιγραφή του συστήματος Αλγεβρική προδιαγραφή Τυπική επαλήθευση ιδιοτήτων ΜΕΛΕΤΗ ΠΕΡΙΠΤΩΣΗΣ ΔΙΑΠΟΜΠΗ ΣΕ ΣΥΣΤΗΜΑ GSM Περιγραφή του συστήματος Αλγεβρική προδιαγραφή Τυπική επαλήθευση ιδιοτήτων ΕΠΑΛΗΘΕΥΣΗ ΚΙΝΗΤΟΥ ΣΥΣΤΗΜΑΤΟΣ ΜΕ ΧΡΗΣΗ ΤΗΣ COINDUCTION Αλγεβρική προδιαγραφή Επαλήθευση συμπεριφοριακής ιδιότητας ΣΥΝΟΨΗ - ΣΥΜΠΕΡΑΣΜΑΤΑ ΑΝΑΦΟΡΕΣ ΚΕΦΑΛΑΙΟ 4. ΑΛΓΕΒΡΙΚΕΣ ΠΡΟΔΙΑΓΡΑΦΕΣ ΚΑΙ ΕΠΑΛΗΘΕΥΣΗ ΠΡΩΤΟΚΟΛΛΩΝ ΑΣΦΑΛΕΙΑΣ ΜΕ ΤΗΝ CAFEOBJ ΕΙΣΑΓΩΓΗ ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΚΑΙ ΕΠΑΛΗΘΕΥΣΗ ΕΝΟΣ ΑΠΛΟΥ ΠΡΩΤΟΚΟΛΛΟΥ ΠΙΣΤΟΠΟΙΗΣΗΣ ΤΑΥΤΟΤΗΤΑΣ Γενική Περιγραφή του Πρωτοκόλλου Αλγεβρική Προδιαγραφή Επαλήθευση Ιδιότητας Ασφάλειας ΤΥΠΙΚΗ ΕΠΑΛΗΘΕΥΣΗ ΣΟΥΙΤΑΣ ΠΡΩΤΟΚΟΛΛΩΝ ΑΣΦΑΛΕΙΑΣ SPINS ΓΙΑ ΑΣΥΡΜΑΤΑ ΔΙΚΤΥΑ ΑΙΣΘΗΤΗΡΩΝ Η Σουίτα Πρωτοκόλλων SPINS Το πρωτόκολλο SNEP Περιγραφή Αλγεβρική προδιαγραφή Τυπική επαλήθευση Το πρωτόκολλο συμφωνίας κλειδιών Περιγραφή Αλγεβρική προδιαγραφή Τυπική επαλήθευση

16 ΠΕΡΙΕΧΟΜΕΝΑ 4.4 ΤΥΠΙΚΗ ΑΝΑΛΥΣΗ ΤΟΥ ΠΡΩΤΟΚΟΛΛΟΥ ΠΙΣΤΟΠΟΙΗΣΗΣ ΤΑΥΤΟΤΗΤΑΣ ΠΗΓΗΣ ΣΕ ΣΥΣΤΗΜΑΤΑ ΠΟΛΥΕΚΠΟΜΠΗΣ TESLA Περιγραφή Αλγεβρική Προδιαγραφή Τυπική Επαλήθευση ΣΥΝΟΨΗ - ΣΥΜΠΕΡΑΣΜΑΤΑ ΑΝΑΦΟΡΕΣ ΚΕΦΑΛΑΙΟ 5. ΑΛΓΕΒΡΑ ΠΡΩΤΟΚΟΛΛΩΝ ΚΑΙ ΣΥΜΠΕΡΙΦΟΡΙΑΚΗ ΠΡΟΔΙΑΓΡΑΦΗ ΕΙΣΑΓΩΓΗ ΣΥΛΛΟΓΙΣΤΙΚΗ ΠΡΩΤΟΚΟΛΛΩΝ ΣΤΗ ΣΥΜΠΕΡΙΦΟΡΙΑΚΗ ΠΡΟΔΙΑΓΡΑΦΗ ΣΥΜΠΕΡΙΦΟΡΙΑΚΗ ΣΥΝΘΕΣΗ ΠΡΩΤΟΚΟΛΛΩΝ Πρωτόκολλα ως Συστήματα Πρωτόκολλα Αλληλεπίδρασης Πρωτόκολλα ως Συνδυασμός Βασικών Δομικών Στοιχείων ΑΛΓΕΒΡΑ ΠΡΩΤΟΚΟΛΛΩΝ Άθροισμα Πρωτοκόλλων Εισαγωγή Πρωτοκόλλου Σύνθεση Πρωτοκόλλων Υπό-εκτέλεση Πρωτοκόλλων Υπό-πρωτόκολλο Μετονομασία Πρωτοκόλλου ΕΠΙΚΥΡΩΣΗ ΚΑΙ ΕΠΑΛΗΘΕΥΣΗ ΠΡΩΤΟΚΟΛΛΟΥ ΜΕΤΑΦΟΡΑΣ ΔΕΔΟΜΕΝΩΝ Επικύρωση Πρωτοκόλλου Επαλήθευση Ιδιότητας Πρωτοκόλλου Έκφραση στην Άλγεβρα Πρωτοκόλλων ΣΥΝΟΨΗ - ΣΥΜΠΕΡΑΣΜΑΤΑ ΑΝΑΦΟΡΕΣ ΚΕΦΑΛΑΙΟ 6. ΑΝΑΚΕΦΑΛΑΙΩΣΗ ΣΥΝΕΙΣΦΟΡΑ ΚΑΙ ΠΡΟΤΑΣΕΙΣ ΓΙΑ ΜΕΛΛΟΝΤΙΚΗ ΕΡΕΥΝΑ ΑΝΑΚΕΦΑΛΑΙΩΣΗ ΣΥΝΕΙΣΦΟΡΑ

17 ΠΕΡΙΕΧΟΜΕΝΑ 6.3 ΠΡΟΤΑΣΕΙΣ ΓΙΑ ΜΕΛΛΟΝΤΙΚΗ ΕΡΕΥΝΑ ΠΑΡΑΡΤΗΜΑ Α. ΛΙΣΤΑ ΔΗΜΟΣΙΕΥΣΕΩΝ Α.1 ΔΙΕΘΝΗ ΕΠΙΣΤΗΜΟΝΙΚΑ ΠΕΡΙΟΔΙΚΑ Α.2 ΔΙΕΘΝΗ ΕΠΙΣΤΗΜΟΝΙΚΑ ΣΥΝΕΔΡΙΑ

18 ΕΥΡΕΤΗΡΙΟ ΣΧΗΜΑΤΩΝ Σχήμα 1.1. Σειριακό πρωτόκολλο επικοινωνίας με ένα δέκτη στη Mobile UNITY...30 Σχήμα 1.2. Το παράδειγμα του πωλητή στη Mobile TLA...32 Σχήμα 1.3. Συντακτικό εκφράσεων με διεργασίες στο monadic π-calculus...33 Σχήμα 1.4. Συντακτικό εκφράσεων με διεργασίες στον polyadic π-calculus...33 Σχήμα 1.5. Προδιαγραφή της κλάσης RootObject στη Mobile Maude...38 Σχήμα 1.6. Προδιαγραφή της κλάσης MobileObject στη Mobile Maude...38 Σχήμα 2.1. Ο κύβος της CafeOBJ...55 Σχήμα 2.2. Συντακτικό δηλώσεων και ορισμών στην CafeOBJ...58 Σχήμα 2.3. Αλγεβρική προδιαγραφή των φυσικών αριθμών...59 Σχήμα 2.4. Συμπεριφοριακή προδιαγραφή μετρητή ακεραίων...59 Σχήμα 2.5. Γραφική απεικόνιση χαρακτηριστικής τεμαχίου COUNTER...60 Σχήμα 2.6. Ιεραρχική σύνθεση αντικειμένων...61 Σχήμα 2.7. Μετονομασία τύπου στην CafeOBJ...62 Σχήμα 2.8. Παράλληλη σύνθεση αντικειμένου Counter...62 Σχήμα 2.9. Εξισώσεις παράλληλης σύνθεσης αντικειμένου Counter...63 Σχήμα Δυναμική σύνθεση αντικειμένων Counter...63 Σχήμα Συμπεριφοριακή προδιαγραφή διακόπτη SWITCH...64 Σχήμα Σύνθεση μετρητή με διακόπτη και εξισώσεις συγχρονισμού...65 Σχήμα ΠΣΜ του απλού πρωτοκόλλου επικοινωνίας σε CafeOBJ...66 Σχήμα Προσομοίωση του απλού πρωτοκόλλου επικοινωνίας...67 Σχήμα 3.1. Η δομή του πλαισίου MobileOBJ...73 Σχήμα 3.2. Προδιαγραφή του αποστολέα σαν ΠΣΜ...76 Σχήμα 3.3. Οι εξισώσεις για τη δράση rec...77 Σχήμα 3.4. Χαρακτηριστική του Κινητού ΠΣΜ SENDER...77 Σχήμα 3.5. Εξισώσεις για τη δράση rec στο επίπεδο του σύνθετου συστήματος...78 Σχήμα 3.6. Τυπικό περιβάλλον κινητού υπολογισμού...79 Σχήμα 3.7. Βασικοί τύποι δεδομένων...80 Σχήμα 3.8. Σύνθεση αντικειμένων περιβάλλοντος κινητού υπολογισμού...81 Σχήμα 3.9. Χαρακτηριστική προδιαγραφής συστήματος...82 Σχήμα Εξισώσεις σεναρίου επικοινωνίας μέσω MSS...83 Σχήμα Ιδιότητες ασφαλείας κινητού συστήματος...84 Σχήμα Proof scores για την περίπτωση της δράσης connect...86 Σχήμα Proof scores για την περίπτωση της δράσης send-ss...86 Σχήμα Χαρακτηριστική χρονικών τιμών

19 ΕΥΡΕΤΗΡΙΟ ΣΧΗΜΑΤΩΝ Σχήμα Από τα βασικά ΠΣΜ στα Κινητά ΠΣΜ με υβριδικά και χρονικά χαρακτηριστικά...91 Σχήμα Βασικοί τύποι δεδομένων της αλγεβρικής προδιαγραφής της διαδικασίας καταχώρησης του Mobile IP...93 Σχήμα Ορισμός Network και SubNetwork με μετονομασία του BAG...94 Σχήμα Εξισώσεις για τη δράση RmvFaAdv...97 Σχήμα Εξισώσεις για τη δράση RcvRegReq...98 Σχήμα Proof score για τη δράση RcvRegReq Σχήμα Proof score για τη δράση RcvRep και την περίπτωση όπου η αποτελεσματική της συνθήκη είναι false Σχήμα Proof score για τη δράση ReSndReq για την περίπτωση όπου η αποτελεσματική της συνθήκη είναι true Σχήμα Προδιαγραφή των συντεταγμένων και της απόστασης ως ορατός τύπος Point Σχήμα Σχέσεις ανάμεσα στα όρια αποστάσεων από το σταθμό βάσης Σχήμα Εξισώσεις ορισμού δράσης RcvRel Σχήμα Εξισώσεις ορισμού δράσης tick Σχήμα Διάγραμμα UML για το σύνθετο κινητό σύστημα Σχήμα Χαρακτηριστική προδιαγραφής κινητών τηλεφώνων Σχήμα 4.1. Εξισώσεις ορισμού δράσεων πρωτοκόλλου επαλήθευσης ταυτότητας Σχήμα 4.2. Το πρωτόκολλο SNEP Σχήμα 4.3. Πλάνο απόδειξης για τη μετάβαση fkm Σχήμα 4.4. Δήλωση των δράσεων του πρωτοκόλλου συμφωνίας κλειδιών Σχήμα 4.5. Μηνύματα πρωτοκόλλου TESLA Σχήμα 5.1. Αλγεβρική προδιαγραφή μετρητή με ιστορία Σχήμα 5.2. Το απλό πρωτόκολλο μεταφοράς δεδομένων Σχήμα 5.3. Χαρακτηριστική σύνθετου πρωτοκόλλου με συγχρονισμό Σχήμα 5.4. Proof scores για τη δράση receive

20 20

21 ΚΕΦΑΛΑΙΟ 1 ΕΙΣΑΓΩΓΗ 1 ΕΙΣΑΓΩΓΗ Οι τυπικές προδιαγραφές των συστημάτων υπολογισμού και επικοινωνιών, δηλαδή η περιγραφή τους χωρίς ασάφειες, με χρήση μεθόδων που έχουν ένα πολύ ισχυρό μαθηματικό υπόβαθρο, είχε κινήσει το ερευνητικό ενδιαφέρον των μαθηματικών, των επιστημόνων πληροφορικής αλλά και των μηχανικών πληροφορικής και επικοινωνιών από τα πρώτα στάδια της εξέλιξης της πληροφορικής. Δεν είναι τυχαίο εξάλλου ότι ορισμένοι από τους πρωτεργάτες της πληροφορικής όπως οι Turing, Von Neumann, Ulam, ήταν ήδη διακεκριμένοι ερευνητές της μαθηματικής λογικής. Σήμερα, η ραγδαία εξάπλωση των πληροφοριακών συστημάτων και δικτύων, του διαδικτύου και των αντίστοιχων υπηρεσιών, από τη μια πλευρά έχει αυξήσει την πολυπλοκότητα τους ενώ από την άλλη καθιστά την αξιοπιστία τους απαραίτητη καθώς πολλές φορές υποστηρίζουν κρίσιμες υπηρεσίες. Συνεπώς, η ανάγκη για χρήση των τυπικών προδιαγραφών κατά των σχεδιασμό και την ανάπτυξη των παραπάνω συστημάτων γίνεται ολοένα και μεγαλύτερη, πέρα από το ερευνητικό ενδιαφέρον που παρουσιάζει. Εκτός όμως από τη δυνατότητα περιγραφής του συστήματος είναι αναγκαία και η δυνατότητα επαλήθευσης ιδιοτήτων που αυτό ικανοποιεί, ούτως ώστε να αποφευχθούν λάθη κατά την υλοποίηση του. Τέτοιες δυνατότητες έχουν οι τυπικές μέθοδοι που υποστηρίζονται από εκτελέσιμες γλώσσες προδιαγραφών. Η δυσκολία αποδοχής των παραπάνω τεχνικών από την πλειοψηφία των μηχανικών δικτύων και σχεδίασης πρωτοκόλλων οφείλεται κατά κύριο λόγο στη δυσκολία εκμάθησης και κατανόησης τους. Αυτό έχει ως αποτέλεσμα να υιοθετούνται τεχνικές οι οποίες είτε είναι πλήρως περιγραφικές (π.χ. φυσική γλώσσα), είτε διαγραμματικές, οδηγώντας πολλές φορές σε ασάφειες στην περιγραφή και σφάλματα στην υλοποίηση. Μια ειδική κατηγορία πληροφοριακών συστημάτων και δικτύων επικοινωνιών είναι τα κινητά συστήματα. Τα συστήματα αυτά παρά το ότι έχουν πολλά κοινά χαρακτηριστικά με τα παραδοσιακά κατανεμημένα συστήματα, εμφανίζουν αρκετές ιδιαιτερότητες οι οποίες δημιουργούν νέες προκλήσεις στους σχεδιαστές κινητών συστημάτων, υπηρεσιών και εφαρμογών. Αυτές οι προκλήσεις περιλαμβάνουν: τους περιορισμένους πόρους των κινητών συσκευών, τις συχνές αποσυνδέσεις και επανασυνδέσεις στο δίκτυο, το μεταβλητό εύρος ζώνης, και τα ετερογενή δίκτυα και συσκευές. Επιπλέον χαρακτηριστικά που σχετίζονται με το περιβάλλον κινητού υπολογισμού και επικοινωνιών και επηρεάζουν τη σχεδίαση υπηρεσιών, εφαρμογών και πρωτοκόλλων είναι η κινητικότητα των χρηστών, τα ιδιαίτερα χαρακτηριστικά των κινητών συσκευών και οι ιδιότητες των κινητών δικτύων [1]. Στην παράγραφο 1.1 γίνεται μια πιο λεπτομερής αναφορά στα ιδιαίτερα χαρακτηριστικά των κινητών συστημάτων και τις απαιτήσεις των εφαρμογών. Με την εμφάνιση των κινητών δικτύων, νέες τυπικές μέθοδοι ή φορμαλισμοί αναπτύχθηκαν. Σε αυτή την κατεύθυνση, είτε επεκτάθηκαν και εμπλουτίστηκαν υπάρχουσες μέθοδοι για να καλύψουν τις ανάγκες των κινητών συστημάτων, είτε δημιουργήθηκαν νέες, αποκλειστικά για κινητά συστήματα. Στα επόμενα γίνεται μια προσπάθεια καταγραφής των βασικών χαρακτηριστικών των τυπικών μεθόδων που έχουν αναπτυχθεί για τη μοντελοποίηση των κινητών συστημάτων. 21

22 ΚΕΦΑΛΑΙΟ 1 ΕΙΣΑΓΩΓΗ Τέλος, λόγω της αυξημένης πολυπλοκότητας των πρωτοκόλλων που απαιτούνται για τη λειτουργία των δικτύων και των υπηρεσιών, ο σχεδιασμός και η ανάπτυξη τους γίνεται ολοένα και πιο επίπονη διαδικασία. Μια λύση που έχει προταθεί είναι η σύνθεση πολύπλοκων πρωτοκόλλων από μικρότερα, στοιχειώδη, που επιτελούν επιμέρους λειτουργίες, ενώ επίσης έχουν αναπτυχθεί άλγεβρες πρωτοκόλλων με εφαρμογή στην ασφάλεια των υπολογιστικών συστημάτων. Και σε αυτό το πεδίο οι τυπικές μέθοδοι που υποστηρίζουν αντικειμενοστραφείς τεχνολογίες διαδραματίζουν καθοριστικό ρόλο. 1.1 ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ ΚΙΝΗΤΩΝ ΣΥΣΤΗΜΑΤΩΝ ΚΑΙ ΕΦΑΡΜΟΓΩΝ Όπως αναφέρθηκε στην εισαγωγή, οι ιδιαιτερότητες των συστημάτων κινητού υπολογισμού και επικοινωνιών αποτελούν πρόκληση για τους σχεδιαστές τόσο των συστημάτων, όσο και των σχεδιαστών μιας τυπικής μεθόδου που υποστηρίζει την κινητικότητα. Οι ιδιαιτερότητες αυτές οφείλονται στις ιδιότητες του ασύρματου περιβάλλοντος, στα χαρακτηριστικά των κινητών συσκευών [2,3], και στην κινητικότητα των συσκευών [4]. Παρακάτω αναφέρονται ανά κατηγορία τα ιδιαίτερα χαρακτηριστικά [5]: 1. Περιορισμοί της ασύρματης επικοινωνίας Μικρό εύρος ζώνης: Το εύρος ζώνης των ασύρματων δικτύων μπορεί να είναι μικρό, ιδιαίτερα στα ασύρματα δίκτυα ευρείας περιοχής, και όταν υπάρχουν πολλοί χρήστες. Μεταβλητό εύρος ζώνης: Ο δυναμικός χαρακτήρας των κινητών δικτύων μπορεί να έχει ως αποτέλεσμα τη δραματική μεταβολή του διαθέσιμου εύρους ζώνης μιας συσκευής. Για παράδειγμα μείωση παρατηρείτε όταν αυξάνεται ο αριθμός των χρηστών σε μια κυψέλη, ενώ έχουμε αύξηση όταν ο χρήστης μετακινείται από ένα δίκτυο χαμηλής ταχύτητας σε δίκτυο υψηλής ταχύτητας. Αποσύνδεση: Οι ασύρματες συνδέσεις είναι πιθανό να χαθούν ή να μειωθεί το επίπεδο του σήματος λόγω της κινητικότητας του χρήστη. Για παράδειγμα οι χρήστες μπορεί να εξέλθουν από την ακτίνα κάλυψης της κυψέλης ή να εισέλθουν σε περιοχή με υψηλά επίπεδα παρεμβολών ή θορύβου. Άλλοι περιορισμοί: Υψηλά επίπεδα καθυστέρησης δικτύου, συχνές απώλειες πακέτων δεδομένων, υψηλοί ρυθμοί απωλειών κ.α. 2. Χαρακτηριστικά κινητών συσκευών Περιορισμοί πόρων: Οι περιορισμοί σε πόρους των κινητών συσκευών οφείλονται στο μικρό τους μέγεθος, στις μικρές δυνατότητες αποθήκευσης, στην υπολογιστική ισχύ και στη διάρκεια ζωής της μπαταρίας [2]. Συχνές αποσυνδέσεις από το δίκτυο: Για εξοικονόμηση πόρων (ειδικά λόγω περιορισμένης διάρκειας ζωής της μπαταρίας), οι χρήστες είναι απαραίτητο να αποσυνδέουν τις συσκευές τους από το δίκτυο. Επίσης, κατά τη διάρκεια μετακίνησης μιας συσκευής από μια κυψέλη σε άλλη (διαπομπή), είναι πιθανό να αποσυνδέεται από το δίκτυο για απρόβλεπτο χρονικό διάστημα. 22

23 ΚΕΦΑΛΑΙΟ 1 ΕΙΣΑΓΩΓΗ Ασφάλεια: Λόγω της κινητικότητας, μια συσκευή εκτίθεται σε μια σειρά από κινδύνους. Μια συσκευή είναι πιθανό να κλαπεί ή δεδομένα που περιέχονται σε αυτή να καταστραφούν μερικώς ή ολικώς. Οι κινητές συσκευές είναι πιο εύθραυστες και επιρρεπείς σε φυσικές καταστροφές σε σχέση με τις παραδοσιακές σταθερές συσκευές. 3. Περιορισμοί λόγω της κινητικότητας Ετερογένεια: Ένα περιβάλλον κινητών επικοινωνιών και υπολογισμού είναι δυνατό να αποτελείται από ετερογενή ασύρματα δίκτυα. Ένας κινητός χρήστης είναι πιθανό να χρειασθεί να διασχίσει τα όρια διαφορετικών δικτύων. Δυναμικό περιβάλλον: Οι υπολογιστικές οντότητες (δηλ. οι κινητές συσκευές), λειτουργούν σε ένα άκρως δυναμικό περιβάλλον. Μεταβλητή διαθεσιμότητα πόρων: Οι διαφορετικές περιοχές σε ένα κινητό περιβάλλον μπορεί να έχουν διαφορετικούς τύπους διαθέσιμων πόρων που να μπορούν να χρησιμοποιηθούν από τους κινητούς χρήστες. Τα παραπάνω ιδιαίτερα χαρακτηριστικά των κινητών συστημάτων έχουν μεγάλη επίδραση στη σχεδίαση τους και την κάνουν μια πολύπλοκη εργασία. Επιπλέον, ο σχεδιαστής εφαρμογών για κινητά συστήματα θα πρέπει να λάβει υπόψη του εκτός από την κινητικότητα των χρηστών συσκευών (φυσική κινητικότητα [6]), και τη δυνατότητα μετακίνησης των εφαρμογών από μια συσκευή σε άλλη (λογική κινητικότητα [7]). Σε αυτές τις περιπτώσεις, η σχεδίαση μιας εφαρμογής-υπηρεσίας γίνεται ακόμα δυσκολότερη. Οι ιδιότητες που πρέπει να ικανοποιεί μια εφαρμογή υπηρεσία που λειτουργεί σε κινητό περιβάλλον έχουν άμεση σχέση με τις παραπάνω ιδιαιτερότητες του περιβάλλοντος και αποτελούν ουσιαστικά τις διαφορές ανάμεσα στις εφαρμογές που προορίζονται για κινητά περιβάλλοντα υπολογισμού και τα παραδοσιακά περιβάλλοντα κατανεμημένου υπολογισμού: - Αποσυνδεσιμότητα: Οι εφαρμογές θα πρέπει να μπορούν να εκτελούνται σε κατάσταση αποσύνδεσης ή αδύναμης σύνδεσης [8]. - Επίγνωση θέσης: Μια εφαρμογή θα πρέπει να είναι σε θέση να επωφελείται από την κινητικότητα και να παρέχει υπηρεσίες με βάση τη θέση [9]. - Εξάρτηση από το πλαίσιο: Οι κινητοί χρήστες μπορούν να προσπελάσουν και να χρησιμοποιήσουν πόρους και πληροφορία ανάλογα με τη θέση τους. Η διαθεσιμότητα πόρων εξαρτάται από τη θέση. Επίσης μια εφαρμογή είναι δυνατό να απαιτεί διαφορετικά είδη πόρων ανάλογα με το περιβάλλον που εκτελείται [10]. - Προσαρμοστικότητα: Η ετερογένεια στις συσκευές και τα δίκτυα απαιτεί από μια εφαρμογή να μπορεί να προσαρμόζεται στις μεταβολές του περιβάλλοντος [11]. - Συνεργασία: Οι κατανεμημένες υπολογιστικές οντότητες μιας εφαρμογής θα πρέπει να συντάσσονται και να συνεργάζονται για την επίτευξη των στόχων της εφαρμογής [12]. - Ασφάλεια: Οι κινητές συσκευές, οι εφαρμογές που εκτελούνται σε αυτές και τα δεδομένα που είναι αποθηκευμένα σε αυτές τις συσκευές πρέπει να προστατεύονται από κακόβουλους χρήστες και λογισμικό. Οι παραπάνω ιδιαιτερότητες και ιδιότητες των κινητών συστημάτων και εφαρμογών απαιτούν διαφορετικές τεχνικές τυπικών προδιαγραφών και μοντελοποίησης σε σχέση με τα 23

24 ΚΕΦΑΛΑΙΟ 1 ΕΙΣΑΓΩΓΗ παραδοσιακά κατανεμημένα συστήματα και εφαρμογές. Στις επόμενες παραγράφους γίνεται μια επισκόπηση των τυπικών μεθόδων, ενώ έμφαση δίνεται στις τυπικές μεθόδους για κινητά συστήματα. 1.2 ΓΕΝΙΚΑ ΠΕΡΙ ΤΥΠΙΚΩΝ ΜΕΘΟΔΩΝ Οι τυπικές μέθοδοι είναι τεχνικές, γλώσσες και εργαλεία που βασίζονται στα μαθηματικά, και χρησιμοποιούνται για την προδιαγραφή, ανάπτυξη και επαλήθευση πολύπλοκων συστημάτων υλικού και λογισμικού. Η αναγκαιότητα της χρήσης των τυπικών μεθόδων έγκειται στη δυνατότητα αποφυγής σοβαρών λαθών σε συστήματα τα οποία είναι πολύπλοκα και είναι πιθανό να διαχειρίζονται και να εκτελούν πολύ σοβαρές εργασίες. Μπορούμε να διακρίνουμε δύο διαφορετικά στάδια εργασιών στα οποία συμβάλλουν οι τυπικές μέθοδοι: αυτό της διαδικασίας καταγραφής προδιαγραφών ή τυπικής προδιαγραφής (formal specification) και αυτό της τυπικής επαλήθευσης (formal verification). Με το όρο καταγραφή προδιαγραφών αναφερόμαστε στη διαδικασία περιγραφής ενός συστήματος και των επιθυμητών ιδιοτήτων του. Η περιγραφή αυτή γίνεται σε μια γλώσσα της οποίας τόσο το συντακτικό όσο και η σημασιολογία της είναι πλήρως μαθηματικά ορισμένα. Το είδος των επιθυμητών ιδιοτήτων του συστήματος μπορεί να περιλαμβάνει τη λειτουργική συμπεριφορά του, τη χρονική συμπεριφορά του, την εσωτερική δομή του. Ως τώρα, η προδιαγραφή έχει γνωρίσει μεγαλύτερη επιτυχία στην περιγραφή των ιδιοτήτων της συμπεριφοράς του συστήματος (behavioral properties). Ένας από τους επόμενους στόχους στο πεδίο αυτό είναι ο συνδυασμός διαφορετικών γλωσσών προδιαγραφής για την προδιαγραφή διαφορετικών πλευρών του συστήματος με καθεμία. Η τυπική επαλήθευση μας δίνει τη δυνατότητα της ανάλυσης ενός συστήματος για την ύπαρξη επιθυμητών ιδιοτήτων (ή αντίστοιχα την απουσία ανεπιθύμητων). Δύο ομάδες τεχνικών που έχουν αναπτυχθεί και ακολουθούν διαφορετική προσέγγιση για τη λύση του προβλήματος της επαλήθευσης είναι η τεχνική της απόδειξης θεωρήματος (theorem proving) και ο έλεγχος μοντέλου (model checking). H τεχνική της απόδειξης θεωρήματος περιλαμβάνει την εύρεση μιας απόδειξης της υπό εξέτασης ιδιότητας στα πλαίσια του συγκεκριμένου τυπικού συστήματος. Ουσιαστικά η τεχνική αυτή προσπαθεί με αυτοματοποιημένο τρόπο να μιμηθεί τον τρόπο με τον οποίο κάνουμε μαθηματικές αποδείξεις ξεκινά από τα αξιώματα καθώς και τον τύπο που εκφράζει το σύστημα και το κάθε βήμα της απόδειξης βασίζεται στους συμπερασματικούς κανόνες έως ότου φθάσουμε στον τύπο που εκφράζει την ιδιότητα. Η τεχνική του ελέγχου μοντέλου χρησιμοποιεί διάφορους αλγόριθμους των οποίων κοινό σημείο αποτελεί το γεγονός ότι ψάχνουν εξαντλητικά όλο το μοντέλο το οποίο αποτελείται από καταστάσεις στις οποίες μπορεί να περιέλθει το σύστημα και τις πιθανές μεταβάσεις μεταξύ των καταστάσεων αυτών. Η τεχνική βασίζεται στο γεγονός ότι το μοντέλο είναι πεπερασμένο κι επομένως, η αναζήτηση επιτυχώς ή ανεπιτυχώς θα τερματιστεί. Ο σχεδιασμός και η μοντελοποίηση πολύπλοκων συστημάτων και ιδιαίτερα συστημάτων που επιτελούν σημαντικές εργασίες είναι απαραίτητες πριν την ανάπτυξή τους. Σε αυτό τον τομέα είναι δυνατό να βοηθήσουν οι τυπικές μέθοδοι, αντικαθιστώντας τις ως επί το πλείστον εμπειρικές μεθόδους που εφαρμόζονται και δεν παρέχουν σιγουριά, ιδιαίτερα όσο 24

25 ΚΕΦΑΛΑΙΟ 1 ΕΙΣΑΓΩΓΗ αυξάνεται η πολυπλοκότητα του συστήματος. Στη συνέχεια αναφέρονται επιγραμματικά τα βασικά χαρακτηριστικά των κυριότερων τυπικών μεθόδων για τη μοντελοποίηση κατανεμημένων συστημάτων [13]. Αφηρημένες Μηχανές Καταστάσεων (Abstract State Machines) Η προσέγγιση βασίζεται στην παραδοχή ότι οποιοσδήποτε αλγόριθμος μπορεί να μοντελοποιηθεί στο φυσικό επίπεδο αφαίρεσης του ως μια αφηρημένη μηχανή καταστάσεων (ΑΜΚ) [14]. Μια ΑΜΚ είναι ένα σύστημα μετάβασης του οποίου οι καταστάσεις είναι ερμηνείες πρώτης τάξεως συμβόλων συναρτήσεων που ορίζονται σε μια χαρακτηριστική Y. Η σχέση μετάβασης δίνεται από ένα πεπερασμένο σύνολο κανόνων μετάβασης που περιγράφουν της μεταβολές στην ερμηνεία των συμβόλων συναρτήσεων από τη μια κατάσταση στην άλλη. Στην βιβλιογραφία υπάρχει ένας μεγάλος αριθμός παραδειγμάτων εφαρμογής της μεθόδου σε διαφορετικούς τύπους αλγορίθμων. Τα χαρακτηριστικά της μεθόδου είναι η ακρίβεια, η πιστότητα, η κατανοησιμότητα, η εκτελεσιμότητα, και η γενικότητα. Μέθοδος Β Η μέθοδος Β [15] είναι μια συλλογή από τεχνικές βασισμένες στα μαθηματικά για την προδιαγραφή, σχεδίαση και υλοποίηση λογισμικού. Τα συστήματα μοντελοποιούνται σαν αλληλένδετες αφηρημένες μηχανές, για τις οποίες μια αντικειμενοστραφής προσέγγιση εφαρμόζεται σε όλα τα στάδια της ανάπτυξης. Μια αφηρημένη μηχανή περιγράφεται με χρήση της σημειογραφίας αφηρημένης μηχανής (Abstract Machine Notation - ΑΜΝ). Στην προδιαγραφή και σχεδίαση μιας αφηρημένης μηχανής η κατάσταση μοντελοποιείται με χρήση εννοιών όπως σύνολα, σχέσεις, συναρτήσεις, ακολουθίες, κτλ. Οι λειτουργίες μοντελοποιούνται με χρήση προ- και μετά-συνθηκών με την ΑΜΝ. Η μέθοδος υποστηρίζεται από την Β-εργαλειοθήκη (B-toolkit) [16]. RAISE (Rigorous Approach to Industrial Software) H RAISE [17] είναι μια τυπική μέθοδος σκοπός της οποίας είναι να προωθήσει τη χρήση των τυπικών μεθόδων στη βιομηχανία ανάπτυξης λογισμικού. Στόχος της RAISE είναι να κάνει δυνατή την κατασκευή: - περισσότερο αξιόπιστου λογισμικού, - λογισμικού με λιγότερα λάθη, - καλύτερα τεκμηριωμένο λογισμικό και - ευκολότερα συντηρήσιμο λογισμικό Η RAISE αποτελείται από: την RSL (RAISE Specification Language), η οποία είναι μια ισχυρή γλώσσα προδιαγραφών και σχεδίασης, μια μεθοδολογία ανάπτυξης, και εκτεταμένη υποστήριξη από εργαλεία για την παραγωγή προδιαγραφών, θεωριών και αποδείξεων. Η γλώσσα προδιαγραφών RAISE μπορεί να χρησιμοποιηθεί τόσο για την τυποποίηση αρχικών, πολύ αφηρημένων προδιαγραφών, όσο και να εκφράσει σχεδιασμούς χαμηλού επιπέδου, κατάλληλους για μετάφραση σε μια γλώσσα προγραμματισμού. 25

26 ΚΕΦΑΛΑΙΟ 1 ΕΙΣΑΓΩΓΗ UNITY Η UNITY [18] είναι μια λογική προγραμματισμού και αποδείξεων για την αξιολόγηση κατανεμημένων συστημάτων. Με χρήση ειδικών τελεστών (unless, ensures και leads-to), μπορούμε να προδιαγράφουμε χρονικές ιδιότητες των κατανεμημένων συστημάτων, ενώ υπάρχουν και συμπερασματικοί κανόνες για την απόδειξή τους. Με την UNITY, το σύστημα μοντελοποιείται από ένα σύνολο δράσεων (μεταβάσεων), κάθε μια από τις οποίες θεωρείται ατομική 1 και τερματίζεται. Η εκτέλεση ενός συστήματος μοντελοποιείται από μια άπειρη και τυχαία (αυθαίρετη) αλλά όχι ταυτόχρονη εκτέλεση των δράσεων του. Σε κάθε βήμα εκτέλεσης κάποια δράση επιλέγεται τυχαία από τις πιθανές ενεργές δράσεις. Η επιλογή των δράσεων θεωρείτε ότι είναι αδυνάμως δίκαιη (weakly fair), δηλαδή εάν μια δράση είναι ενεργή συνεχώς περιμένοντας να εκτελεσθεί, δεν μπορεί να αγνοείτε για πάντα. Στη βιβλιογραφία έχουν προταθεί επεκτάσεις της UNITY για συστήματα με ειδικά χαρακτηριστικά όπως η Context UNITY [19], η CommUNITY [20], η generalunity [21], και η Mobile UNITY [22,23] για την οποία θα αναφερθούμε με περισσότερες λεπτομέρειες στην επόμενη παράγραφο. Άλγεβρες Διεργασιών (Process algebras) Πρόκειται για μια αλγεβρική προσέγγιση στη μελέτη των ταυτόχρονων διεργασιών. Τα εργαλεία της είναι αλγεβρικές γλώσσες για την προδιαγραφή των διεργασιών και την τυποποίηση των δηλώσεών τους, μαζί με λογισμούς για την επαλήθευση αυτών των δηλώσεων. Οι περισσότερο γνωστές προσεγγίσεις είναι: - Calculus of Communicating Systems (CCS) [24], - Communicating Sequential Processes (CSP) [25], - Algebra of Communicating Processes (ACP) [26]. Η επέκταση της CCS για τη μοντελοποίηση κινητών διεργασιών ονομάζεται λογισμός π (pi-calculus)[27], λεπτομέρειες για τoν οποίο θα αναφερθούν στην επόμενη παράγραφο. Z Η σημειογραφία Ζ (Z notation) [28] η οποία πήρε το όνομα της από τη θεωρία συνόλων Zermelo-Fraskel είναι μια τυπική γλώσσα προδιαγραφών για την περιγραφή και τη μοντελοποίηση συστημάτων υπολογισμού. Έχει ως στόχο την ξεκάθαρη προδιαγραφή των προγραμμάτων υπολογιστών και την τυποποίηση των αποδείξεων για τη συμπεριφορά των προγραμμάτων. Το θεωρητικό υπόβαθρο της Ζ περιλαμβάνει τη μαθηματική σημειογραφία που χρησιμοποιείτε στην αξιωματική θεωρία συνόλων, το λ-λογισμό και την πρωτοβάθμια κατηγορηματική λογική (first order predicate logic). Οι Ζ++ [29] και Object-Z [30] είναι δυο αντικειμενοστραφείς επεκτάσεις της Ζ, ενώ προσπάθεια έχει γίνει για την επέκταση της Ζ σε κινητά συστήματα (Mobile Z) [31]. 1 Με τον όρο ατομική δράση ή μετάβαση (atomic action or transition) ορίζεται ένας υπολογισμός ο οποίος αν και είναι πιθανό να αποτελείται από πολλά στοιχειώδη βήματα που εκτελούνται σε διαφορετικούς χρόνους και επεξεργαστές, φαίνεται σαν μια ενιαία, ανεξάρτητη μεταβολή κατάστασης. 26

27 ΚΕΦΑΛΑΙΟ 1 ΕΙΣΑΓΩΓΗ TLA (Temporal Logic of Actions) Αναπτύχθηκε από τον L. Lamport [32] και συνδυάζει τη χρονική λογική με μια λογική των δράσεων για να περιγράψει τη συμπεριφορά των συστημάτων με ταυτόχρονες διεργασίες. Η TLA+ είναι η γλώσσα στην οποία γράφονται οι προδιαγραφές TLA ενώ έχει αναπτυχθεί και η Mobile TLA [33] για την περίπτωση των κινητών συστημάτων. LOTOS Η γλώσσα LOTOS [34] είναι τεχνική τυπικής περιγραφής που έχει αναπτυχθεί από την ISO για την προδιαγραφή ανοικτών κατανεμημένων συστημάτων και ιδιαίτερα συστημάτων που ακολουθούν την αρχιτεκτονική OSI [35]. Η βασική ιδέα που διέπει την LOTOS είναι οτι τα συστήματα μπορούν να προδιαγραφούν ορίζοντας τη χρονική σχέση των αλληλεπιδράσεων που συνιστούν την εξωτερικά παρατηρήσιμη συμπεριφορά του συστήματος. Η LOTOS έχει πολλά κοινά στοιχεία με τις άλγεβρες διεργασιών, ενώ παράλληλα για την προδιαγραφή των δομών δεδομένων χρησιμοποιούνται πολλά στοιχεία από την τεχνική αφηρημένων τύπων δεδομένων ACT-ONE[36]. SDL Η γλώσσα SDL [37] είναι η επίσημη γλώσσα προδιαγραφών της Διεθνούς Ένωσης Τηλεπικοινωνιών (ITU) και χρησιμοποιείται ως επί το πλείστον για την περιγραφή τηλεπικοινωνιακών συστημάτων. Η βάση της για την περιγραφή της συμπεριφοράς είναι η επέκταση των μηχανών καταστάσεων με δυνατότητες επικοινωνίας (communicating Extended State Machines) που περιγράφονται από διεργασίες. Η επικοινωνία αναπαρίσταται από σήματα και μπορεί να συμβεί μεταξύ διεργασιών η ανάμεσα σε διεργασίες και το περιβάλλον του συστήματος. Μια εκτεταμένη μηχανή καταστάσεων αποτελείται από ένα αριθμό καταστάσεων και ένα αριθμό μεταβάσεων που συνδέουν τις καταστάσεις. Η μηχανή ξεκινάει από μια μετάβαση που οδηγεί σε μια αρχική κατάσταση. Η SDL συνήθως χρησιμοποιείτε σε συνδυασμό με άλλες γλώσσες όπως τα Message Sequence Charts (MSC), τις Abstract Syntax Notation (ASN.1), και Testing and Test Control Notation (TTCN) και τη Unified Modeling Language (UML). Δίκτυα Πέτρι (Petri Nets) Πρόκειται για τυπική μέθοδο γραφικής αναπαράστασης ταυτόχρονων συστημάτων και συστημάτων που μπορούν να μοιράζονται πόρους. Η ανάπτυξη τους ξεκίνησε από τον Carl Adam Petri στις αρχές της δεκαετίας του 60. Η γλώσσα είναι μια γενίκευση της θεωρίας των αυτομάτων έτσι ώστε να μπορεί να εκφραστεί η έννοια των ταυτόχρονων γεγονότων (concurrent events). Το κατανεμημένο σύστημα αναπαρίσταται σαν ένας προσανατολισμένος διμερής γράφος 2 με υπόμνημα. Ετσι, ένα δίκτυο Πέτρι έχει χωρικούς κόμβους (place nodes), κόμβους μετάβασης (transition nodes) και προσανατολισμένα τόξα 2 Διμερής γράφος (bipartite graph) καλείτε ο γράφος του οποίου οι κορυφές μπορούν να χωριστούν σε δύο σύνολα έτσι ώστε κάθε στοιχείο του ενός συνδέεται με κάποιο στοιχείο του άλλου και δύο στοιχεία του ίδιου συνόλου δεν συνδέονται. 27

28 ΚΕΦΑΛΑΙΟ 1 ΕΙΣΑΓΩΓΗ (directed arcs) που συνδέούν τους χώρους (places) με τις μεταβάσεις (transitions). Στη βιβλιογραφία αναφέρονται επεκτάσεις των δικτύων Πέτρι για τη μοντελοποίηση συστημάτων πραγματικού χρόνου (Timed Petri Nets) [38], υβριδικών συστημάτων (Hybrid Petri Nets) [39], και κινητών συστημάτων (Synchronized Mobile Petri Nets)[40,41]. Αλγεβρικές Γλώσσες Προδιαγραφών (Algebraic Specification Languages) Οι αλγεβρικές γλώσσες προδιαγραφών (ΑΓΠ) είναι και αυτές με τη σειρά τους τυπικές μέθοδοι οι οποίες έχουν σαν μαθηματικό υπόβαθρο θεωρίες μαθηματικής λογικής η συνδυασμό αυτών. Έχουν ως σκοπό τη σχεδίαση αξιόπιστου λογισμικού και επιτρέπουν την αφηρημένη προδιαγραφή των συστημάτων που αντιστοιχεί σε μια περιγραφή των χαρακτηριστικών και ιδιοτήτων τους. Επιπλέον, λόγω των εκτελέσιμων χαρακτηριστικών τους υπάρχει η δυνατότητα επαλήθευσης (verification) των ιδιοτήτων της προδιαγραφής του συστήματος και προσομοίωση (simulation) για την επικύρωση (validation) της. Υπάρχει ένας μεγάλος αριθμός ΑΓΠ που έχουν αναπτυχθεί, όπως είναι οι: CLEAR [42], OBJ[43], ACT ONE[36], LARCH[44], PLUSS [45], ACT TWO [46], Extended ML [47], OPAL [48], SPECTRAL [49], SPECTRUM [50], Maude[51], CASL[52] και CafeOBJ [53]. Στις παραγράφους 1.4 και 1.5 θα παρουσιασθούν αναλυτικότερα τα χαρακτηριστικά των γλωσσών της οικογένειας OBJ και οι προσεγγίσεις μοντελοποίησης κινητών συστημάτων που έχουν αναφερθεί στην βιβλιογραφία με χρήση αυτών αντίστοιχα. 1.3 ΤΥΠΙΚΕΣ ΜΕΘΟΔΟΙ & ΚΙΝΗΤΑ ΣΥΣΤΗΜΑΤΑ Όπως έχει αναφερθεί στην προηγούμενη παράγραφο, στη βιβλιογραφία υπάρχουν προσεγγίσεις μοντελοποίησης των κινητών συστημάτων με την επέκταση τυπικών μεθόδων και φορμαλισμών. Παρακάτω θα αναφερθούμε στα χαρακτηριστικά ορισμένων εξ αυτών, παραβλέποντας τις προσεγγίσεις που ανήκουν στην κατηγορία των αλγεβρικών γλωσσών προδιαγραφής οι οποίες θα εξετασθούν ξεχωριστά λόγω της συγγένειας που έχουν με την προτεινόμενη προσέγγιση Mobile UNITY Έχοντας ως βάση το μοντέλο της UNITY [18] για ταυτόχρονα, κατανεμημένα συστήματα, η Mobile UNITY [22, 23] είναι ένας τρόπος τυπικής γραφής με χρήση τεμαχίων προδιαγραφών (modular notation) για την περιγραφή κινητών συστημάτων, και μια λογική που υποστηρίζει τη συλλογιστική τους. Πιο συγκεκριμένα, η Mobile UNITY επεκτείνει τη UNITY με δυνατότητες περιγραφής τόσο της περιοχής των συνιστωσών του συστήματος όσο και της προσωρινής αλληλεπίδρασης τους. Στην standard UNITY, η βασική μονάδα κατασκευής του συστήματος είναι το πρόγραμμα. Η δομή ενός προγράμματος UNITY αποτελείτε από το τμήμα declare, όπου δηλώνονται οι μεταβλητές του συστήματος, το τμήμα initially, όπου γράφονται οι αρχικές συνθήκες, και το τμήμα assign, όπου δηλώνονται τα αξιώματα. Στη Mobile UNITY επεκτείνεται το τμήμα assign με τέσσερις κατασκευές: - Τις διαδικασίες (transactions), που παρέχουν ένα τύπο ακολουθιακής εκτέλεσης. 28

29 ΚΕΦΑΛΑΙΟ 1 ΕΙΣΑΓΩΓΗ Αποτελούνται από ακολουθίες δηλώσεων ανάθεσης που πρέπει να προγραμματισθούν με τη σειρά που έχουν προδιαγραφεί, χωρίς την παρεμβολή άλλων δηλώσεων. Οι δηλώσεις ανάθεσης της standard UNITY μπορούν να θεωρηθούν ως μοναδιαίες transactions. Η σημειογραφία για αυτές είναι: s1; s2;...; s n όπου η s i πρέπει να είναι μια δήλωση ανάθεσης. Όταν επιλεγεί αυτή η δήλωση για εκτέλεση, θα πρέπει να ακολουθηθεί η σειρά s 1, s 2,,s n. - Τις ετικέτες (labels), που παρέχουν ένα μηχανισμό μέσω των οποίων οι δηλώσεις μπορούν να καλεστούν από άλλες κατασκευές του προγράμματος. Με αυτό τον τρόπο είναι δυνατή η μετατροπή των ορισμών των υπαρχουσών δηλώσεων χωρίς να απαιτούνται αλλαγές στην αρχική έκφραση τους. Μια ετικέτα θα πρέπει να προηγείται μιας δήλωσης και πρέπει να ακολουθείται από το σύμβολο :: ως εξής: n:: s1; s2;...; s n Οι ετικέτες πρέπει να είναι μοναδικές σε όλο το πρόγραμμα, ενώ δεν είναι υποχρεωτικό να τοποθετούμε ετικέτα σε κάθε δήλωση. Ο κυριότερος λόγος ύπαρξης των ετικετών είναι η χρήση τους στην κατασκευή των παρεμποδιστών. - Τους παρεμποδιστές (inhibitors), που δίνουν τη δυνατότητα ενδυνάμωσης της συνθήκης για μια υπάρχουσα δήλωση, χωρίς την αλλαγή της αρχικής. Η σύνταξη τους ακολουθεί τη μορφή: inhibit n when p όπου n είναι μια ετικέτα κάποιας δήλωσης στο πρόγραμμα και p είναι ένα κατηγόρημα, δηλαδή μια παράσταση που επιστρέφει true η false για κάποια κατάσταση. Το αποτέλεσμα είναι η ενδυνάμωση της συνθήκης της δήλωσης που αντιστοιχεί στην ετικέτα n με την αποτροπή εκτέλεσης της όταν η p είναι true. - Τις αντιδραστικές δηλώσεις (reactive statements), που παρέχουν το μηχανισμό επέκτασης του αποτελέσματος μιας δήλωσης ανάθεσης με ένα αυθαίρετο υπολογισμό που τερματίζεται. Αυτή η κατασκευή μας δίνει τη δυνατότητα προσομοίωσης των αποτελεσμάτων των μηχανισμών διακοπής επεξεργασίας. Μια αντιδραστική δήλωση είναι μια δήλωση ανάθεσης και όχι ακολουθία δηλώσεων, που έχει επεκταθεί με μια πρόταση αντίδρασης (reaction clause) που δυναμώνει την συνθήκης της: s reacts-to p Το σύνολο των αντιδραστικών δηλώσεων, έστω R, πρέπει να είναι ένα πρόγραμμα που τερματίζεται. Μπορούμε να θεωρήσουμε ότι αυτό το πρόγραμμα εκτελείτε αμέσως μετά από κάθε δήλωση ανάθεσης. Στη συνέχεια παρουσιάζεται η λογική απόδειξης ιδιοτήτων προγραμμάτων που χρησιμοποιούν τις παραπάνω κατασκευές. Το μοντέλο εκτέλεσης υποθέτει ότι κάθε μηαντιδραστική δήλωση επιλέγεται για εκτέλεση δίκαια (fairly selected), εκτελείται εάν δεν αποτρέπεται, και στη συνέχεια το πρόγραμμα αντίδρασης που αποτελείται από το σύνολο των αντιδραστικών δηλώσεων R εκτελείτε έως ότου φθάσει σε ένα σταθερό σημείο μεταξύ των υπό-δηλώσεων μιας transaction. Οι δύο βασικές ιδιότητες των προγραμμάτων UNITY είναι οι co και ensures. Για δύο κατηγορήματα καταστάσεων p και q η έκφραση p co q σημαίνει ότι για κάθε 29

30 ΚΕΦΑΛΑΙΟ 1 ΕΙΣΑΓΩΓΗ κατάσταση που ικανοποιεί την p, η επόμενη κατάσταση στην ακολουθία εκτέλεσης πρέπει να ικανοποιεί την q. Η σχέση p ensures q σημαίνει ότι για κάθε κατάσταση που ικανοποιεί την p αλλά όχι την q, η επόμενη κατάσταση πρέπει να ικανοποιεί την p ή την q. Επίσης, υπάρχει κάποια δήλωση s που επιβεβαιώνει την q εάν εκτελείτε σε κατάσταση που ικανοποιεί την p αλλά όχι την q. Στις [22, 54], υπάρχουν περισσότερες λεπτομέρειες για την χρήση των παραπάνω στην απόδειξη ιδιοτήτων ασφάλειας (safety) και ζωντάνιας (liveness). Τα βασικά χαρακτηριστικά των κινητών συστημάτων που μοντελοποιούνται με τη Mobile UNITY είναι η απαίτηση για δυνατότητα εκτέλεσης των εφαρμογών ενώ η σύνδεση με το διακομιστή είναι ασθενής ή δεν υπάρχει σύνδεση (program decoupling), η κινητικότητα των προγραμμάτων, και η αποσύνδεση, και όλα τα παραπάνω σε ένα υψηλό επίπεδο αφαίρεσης. Η κινητικότητα μοντελοποιείται με την ανάθεση σε κάθε πρόγραμμα μια μεταβλητής που αντιστοιχεί στη θέση. Με αυτό τον τρόπο είναι δυνατή τόσο η επίγνωση της θέσεως του προγράμματος, όσο και ο έλεγχος της. Η δυνατότητα εκτέλεσης των προγραμμάτων ανεξάρτητα από τη σύνδεση επιτυγχάνεται με τη μοναδικότητα των ονομάτων των διεργασιών και το διαχωρισμό της περιγραφής των συστατικών προγραμμάτων από την αλληλεπίδραση μεταξύ τους. Παρακάτω φαίνεται η μοντελοποίηση ενός σειριακού πρωτοκόλλου επικοινωνίας με ένα δέκτη με τη Mobile UNITY. System Senders-Receivers-Timers program sender(i) at λ declare bit : boolean [] word : array [0..Ν-1] οf boolean [] c,t,sendstamp : integer initially λ = SenderLocation(i) assign transmit :: bit, c:=word[c], c+1 if c < N t sendstamp+ Δ c []new :: word, c, sendstamp := NewWord( ), 0, tt if c N [] timer :: t := t + 1 if t < sendstamp+ Δ c + Δ/4 end program receiver(j) at λ declare bit : boolean [] buffer : array [0..Ν-1] οf boolean [] c,t,recvstamp : integer assign receive :: buffer[c], c:=in, c+1 if c < N t recvstamp+ Δ c + Δ/2 [] zero :: c, recvstamp := 0, t reacts-to bit = 1 c N [] timer :: t := t + 1 if t < recvstamp+ Δ (c+1) - Δ/4 [] move :: λ := buffer reacts-to ValidLocation(buffer) c N end Components sender(1)[]sender(2)[]receiver(0) Interactions receiver(j).bit := sender(i).bit reacts-to sender(i).λ = receiver(j).λ inhibit sender(i).timer when sender(i).t sendstamp > receiver(j).t recvstamp sender(i).λ = receiver(j).λ inhibit receiver(j).timer when receiver(j).t recvstamp > sender(i).t sendstamp sender(i).λ = receiver(j).λ end Σχήμα 1.1. Σειριακό πρωτόκολλο επικοινωνίας με ένα δέκτη στη Mobile UNITY 30

31 ΚΕΦΑΛΑΙΟ 1 ΕΙΣΑΓΩΓΗ Στην [54] γίνεται μια λεπτομερής παρουσίαση των δυνατοτήτων της γλώσσας μέσω του παραδείγματος μοντελοποίησης και επαλήθευσης του μηχανισμού μεταφοράς δεδομένων του πρωτοκόλλου Mobile IP Mobile TLA Η Mobile TLA[33] είναι μια χώρο-χρονική επέκταση της TLA για την προδιαγραφή, επαλήθευση και τυπική ανάπτυξη κινητών συστημάτων. Η σημασιολογία της βασίζεται στην έννοια των εκτελέσεων του συστήματος (system runs), είναι όμοια με τη χρονική λογική, ανεξάρτητη από συγκεκριμένο λογισμό τελεστών (operational calculus) και υποστηρίζει έννοιες μετατροπής αφηρημένων περιγραφών του συστήματος σε εκτελέσιμο κώδικα (refinement). Η χωρική δομή του κινητού συστήματος αναπαριστάται σε κάθε στιγμιότυπο ως ένα πεπερασμένο δέντρο t οι κόμβοι του οποίου λαμβάνουν μοναδικά ονόματα n από ένα άπειρο σύνολο ονομάτων N τα οποία αντιστοιχούν σε θέσεις. Ο κόμβος-ρίζα που αναπαριστά την περιοχή του συστήματος έχει ως ετικέτα την ε, που δεν ανήκει στο σύνολο Ν. Κάθε κόμβος του δέντρου συμπεριλαμβανομένου και του κόμβου-ρίζα έχει μια τοπική κατάσταση. Ένα δέντρο t παρουσιάζεται ως μια αυστηρή μερική διάταξη (N t, < t ) σε ένα πεπερασμένο σύνολο N t Ν. Το σύνολο N t {ε} γράφεται Ν ε t και η διάταξη του δέντρου < t επεκτείνεται στο Ν ε t ορίζοντας n < t ε για κάθε n N t. Επίσης γράφουμε m t n εάν m < t n ή m = n. Για ένα δέντρο t = (N t, < t ) και όνομα n Ν ε t, γράφουμε t n για το υπό-δέντρο του t που έχει ως ρίζα το μοναδικό κόμβο με ταμπέλα n. Για n Ν ε t το t n αντιστοιχεί στο κενό δέντρο. Μια διάρθρωση (configuration) είναι το ζευγάρι (t, λ) έτσι ώστε για κάθε κόμβο n Ν ε t, η τοπική κατάσταση αναθέτει μια τιμή λ(n, υ) σε κάθε μεταβλητή υ ς f, όπου ς f το σύνολο των μεταβλητών κατάστασης. Μια εκτέλεση (run) του συστήματος αναπαρίσταται από μια ω-ακολουθία σ = (t 0, λ 0 ) (t 1, λ 1 ) από διαρθρώσεις. Οι μεταβάσεις είναι δυνατό να αλλάξουν την τοπική κατάσταση ορισμένων κόμβων αλλά και τη δομή του δέντρου. Τέτοιες δομικές μεταβολές αναπαριστούν τη μετακίνηση των περιοχών ή τη δημιουργία ή την καταστροφή τους. Για μια εκτέλεση σ = (t 0, λ 0 ) (t 1, λ 1 ) και i Ν, ως σ i γράφεται η κατάληξη (t i, λ i ) (t i+1, λ i+1 ). Στο σχήμα 1.2 παρουσιάζεται η προδιαγραφή του παραδείγματος του πωλητή στη Mobile TLA. Για περισσότερες λεπτομέρειες ο αναγνώστης μπορεί να συμβουλευθεί την [33] Mobile Z Η Mobile Z [31] αφορά μια προσπάθεια που έχει γίνει για την περιγραφή κινητών συστημάτων με χρήση της γλώσσα Ζ. Και σε αυτή την προσέγγιση, όπως στις δύο προηγούμενες, η κινητικότητα μοντελοποιείται σαν η μεταβολή μιας μεταβλητής θέσεως. Τυπικά, σε μια προδιαγραφή Ζ ορίζονται ένας αριθμός από σχήματα κατάστασης και λειτουργίας. Ένα σχήμα κατάστασης ομαδοποιεί μεταβλητές και ορίζει τη σχέση που έχουν οι τιμές τους. Σε κάθε στιγμιότυπο, αυτές οι μεταβλητές ορίζουν την κατάσταση αυτού του μέρους του συστήματος που μοντελοποιούν. 31

Προδιαγραφή και Επαλήθευση Πρωτοκόλλων Ασφαλείας Συστημάτων Κινητών Επικοινωνιών με Χρήση Τυπικών Μεθόδων

Προδιαγραφή και Επαλήθευση Πρωτοκόλλων Ασφαλείας Συστημάτων Κινητών Επικοινωνιών με Χρήση Τυπικών Μεθόδων Εργαστήριο Συστημάτων Ραντάρ & Τηλεπισκόπησης,, Σχολή Ηλεκτρολόγων Μηχ.. & Μηχ. Υπολογιστών, ΕΜΠ Προδιαγραφή και Επαλήθευση Πρωτοκόλλων Ασφαλείας Συστημάτων Κινητών Επικοινωνιών με Χρήση Τυπικών Μεθόδων

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

Εφαρμογές της Λογικής στην Πληροφορική

Εφαρμογές της Λογικής στην Πληροφορική Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Εθνικό Μετσόβιο Πολυτεχνείο Εφαρμογές της Λογικής στην Πληροφορική Ενότητα 5 Πέτρος Στεφανέας, Γεώργιος Κολέτσος Άδεια Χρήσης Το παρόν εκπαιδευτικό

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

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

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

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

ΗΥ Λογική. Διδάσκων: Δημήτρης Πλεξουσάκης Καθηγητής

ΗΥ Λογική. Διδάσκων: Δημήτρης Πλεξουσάκης Καθηγητής ΗΥ 180 - Λογική Διδάσκων: Καθηγητής E-mail: dp@csd.uoc.gr Ώρες διδασκαλίας: Δευτέρα, Τετάρτη 4-6 μμ, Αμφ. Β Ώρες φροντιστηρίου: Πέμπτη 4-6 μμ, Αμφ. Β Ώρες γραφείου: Δευτέρα, Τετάρτη 2-4 μμ, Κ.307 Web site:

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

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Λογική. Ενότητα 1: Εισαγωγή. Δημήτρης Πλεξουσάκης Τμήμα Επιστήμης Υπολογιστών

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Λογική. Ενότητα 1: Εισαγωγή. Δημήτρης Πλεξουσάκης Τμήμα Επιστήμης Υπολογιστών ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Λογική Ενότητα 1: Εισαγωγή Δημήτρης Πλεξουσάκης Τμήμα Επιστήμης Υπολογιστών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται στην άδεια χρήσης Creative Commons

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

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

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

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

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

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

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

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

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

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

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

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

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

Ηλεκτρονικός οδηγός για τους φοιτητές ενός Α.Ε.Ι.

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

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

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

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

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

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

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

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

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

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

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

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

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΜΗΧΑΝΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ. Πτυχιακή εργασία ΟΛΙΣΘΗΡΟΤΗΤΑ ΚΑΙ ΜΑΚΡΟΥΦΗ ΤΩΝ ΟΔΟΔΤΡΩΜΑΤΩΝ ΚΥΚΛΟΦΟΡΙΑΣ ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΜΗΧΑΝΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ Πτυχιακή εργασία ΟΛΙΣΘΗΡΟΤΗΤΑ ΚΑΙ ΜΑΚΡΟΥΦΗ ΤΩΝ ΟΔΟΔΤΡΩΜΑΤΩΝ ΚΥΚΛΟΦΟΡΙΑΣ Χριστοδούλου Αντρέας Λεμεσός 2014 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

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

Πτυχιακή διατριβή. Η επίδραση της τασιενεργής ουσίας Ακεταλδεΰδης στη δημιουργία πυρήνων συμπύκνωσης νεφών (CCN) στην ατμόσφαιρα

Πτυχιακή διατριβή. Η επίδραση της τασιενεργής ουσίας Ακεταλδεΰδης στη δημιουργία πυρήνων συμπύκνωσης νεφών (CCN) στην ατμόσφαιρα ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΓΕΩΤΕΧΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΔΙΑΧΕΙΡΙΣΗΣ ΠΕΡΙΒΑΛΛΟΝΤΟΣ Πτυχιακή διατριβή Η επίδραση της τασιενεργής ουσίας Ακεταλδεΰδης στη δημιουργία πυρήνων συμπύκνωσης νεφών (CCN)

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

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

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

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

Ασφαλή Συστήματα Μέθοδοι ελέγχου και εξακρίβωσης ορθής λειτουργίας

Ασφαλή Συστήματα Μέθοδοι ελέγχου και εξακρίβωσης ορθής λειτουργίας Λειτουργικά Συστήματα Πραγματικού Χρόνου 2006-07 Ασφαλή Συστήματα Μέθοδοι ελέγχου και εξακρίβωσης ορθής λειτουργίας Μ.Στεφανιδάκης Ενσωματωμένα Συστήματα: Απαιτήσεις Αξιοπιστία (reliability) Χρηστικότητα

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

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

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

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

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

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

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

Εισαγωγή. Όλες οι (άλλες) επιστήµες µηχανικών βασίζονται σε σταθερό θεωρητικό (µαθηµατικό) υπόβαθρο

Εισαγωγή. Όλες οι (άλλες) επιστήµες µηχανικών βασίζονται σε σταθερό θεωρητικό (µαθηµατικό) υπόβαθρο ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ http://courses.softlab.ntua.gr/softeng/ ιδάσκοντες: (nickie@softlab.ntua.gr) Γιάννης Μαΐστρος (maistros@cs.ntua.gr) Βασίλης Βεσκούκης (bxb@softlab.ntua.gr) Τυπικές Μέθοδοι στην Ανάπτυξη

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

Τυπικές Μέθοδοι στην Ανάπτυξη Συστηµάτων Λογισµικού

Τυπικές Μέθοδοι στην Ανάπτυξη Συστηµάτων Λογισµικού ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ http://coursessoftlabntuagr/softeng/ ιδάσκοντες: (nickie@softlabntuagr) Γιάννης Μαΐστρος (maistros@csntuagr) Βασίλης Βεσκούκης (bxb@softlabntuagr) Τυπικές Μέθοδοι στην Ανάπτυξη Συστηµάτων

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

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

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

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

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

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

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

Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή

Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή 1. Ηλεκτρονικός Υπολογιστής Ο Ηλεκτρονικός Υπολογιστής είναι μια συσκευή, μεγάλη ή μικρή, που επεξεργάζεται δεδομένα και εκτελεί την εργασία του σύμφωνα με τα παρακάτω

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

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

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

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

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

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

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

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

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

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

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

ΑΝΑΠΤΥΞΗ ΛΟΓΙΣΜΙΚΟΥ ΓΙΑ ΤΗ ΔΙΕΝΕΡΓΕΙΑ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΜΕΛΕΤΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΑΝΑΠΤΥΞΗ ΛΟΓΙΣΜΙΚΟΥ ΓΙΑ ΤΗ ΔΙΕΝΕΡΓΕΙΑ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΜΕΛΕΤΩΝ ΠΛΟΣΚΑΣ ΝΙΚΟΛΑΟΣ Α.Μ. 123/04 ΕΠΙΒΛΕΠΩΝ: ΣΑΜΑΡΑΣ ΝΙΚΟΛΑΟΣ ΘΕΣΣΑΛΟΝΙΚΗ, ΙΟΥΝΙΟΣ 2007 Περιεχόμενα

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

ΕΠΛ664 ΑΝΑΛΥΣΗ ΚΑΙ ΕΠΑΛΗΘΕΥΣΗ ΣΥΣΤΗΜΑΤΩΝ

ΕΠΛ664 ΑΝΑΛΥΣΗ ΚΑΙ ΕΠΑΛΗΘΕΥΣΗ ΣΥΣΤΗΜΑΤΩΝ ΕΠΛ664 ΑΝΑΛΥΣΗ ΚΑΙ ΕΠΑΛΗΘΕΥΣΗ ΣΥΣΤΗΜΑΤΩΝ Περιγραφή του μαθήματος Στόχοι του μαθήματος Αξιολόγηση Βιβλιογραφία ΕΠΛ 664 Ανάλυση και Επαλήθευση Συστημάτων 1-1 Διδασκαλία Διαλέξεις: Δευτέρα και Πέμπτη, 15:00-16:30

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

UML: Unified modelling language

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

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

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

ΜΗΤΡΙΚΟΣ ΘΗΛΑΣΜΟΣ ΚΑΙ ΓΝΩΣΤΙΚΗ ΑΝΑΠΤΥΞΗ ΜΕΧΡΙ ΚΑΙ 10 ΧΡΟΝΩΝ ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΝΟΣΗΛΕΥΤΙΚΗΣ ΜΗΤΡΙΚΟΣ ΘΗΛΑΣΜΟΣ ΚΑΙ ΓΝΩΣΤΙΚΗ ΑΝΑΠΤΥΞΗ ΜΕΧΡΙ ΚΑΙ 10 ΧΡΟΝΩΝ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Ονοματεπώνυμο Κεντούλλα Πέτρου Αριθμός Φοιτητικής Ταυτότητας 2008761539 Κύπρος

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

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

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

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

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

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΓΕΩΤΕΧΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΔΙΑΧΕΙΡΙΣΗ ΠΕΡΙΒΑΛΛΟΝΤΟΣ. Πτυχιακή διατριβή ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΓΕΩΤΕΧΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΔΙΑΧΕΙΡΙΣΗ ΠΕΡΙΒΑΛΛΟΝΤΟΣ Πτυχιακή διατριβή ΜΕΘΟΔΟΙ ΠΡΟΕΠΕΞΕΡΓΑΣΙΑΣ ΤΩΝ ΛΙΠΩΝ ΚΑΙ ΕΛΕΩΝ ΠΡΟΣ ΠΑΡΑΓΩΓΗ ΒΙΟΑΕΡΙΟΥ Ανδρέας Φράγκου Λεμεσός 2015

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

ΠΡΟΣΟΜΟΙΩΣΗ. Προσομοίωση είναι η μίμηση της λειτουργίας ενός πραγματικού συστήματος και η παρακολούθηση της εξέλιξης του μέσα στο χρόνο.

ΠΡΟΣΟΜΟΙΩΣΗ. Προσομοίωση είναι η μίμηση της λειτουργίας ενός πραγματικού συστήματος και η παρακολούθηση της εξέλιξης του μέσα στο χρόνο. ΠΡΟΣΟΜΟΙΩΣΗ Προσομοίωση είναι η μίμηση της λειτουργίας ενός πραγματικού συστήματος και η παρακολούθηση της εξέλιξης του μέσα στο χρόνο. δημιουργία μοντέλου προσομοίωσης ( - χρήση μαθηματικών, λογικών και

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

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

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

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

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

ΣΧΕΔΙΑΣΜΟΣ ΕΠΙΓΕΙΟΥ ΣΥΣΤΗΜΑΤΟΣ ΑΛΥΣΟΚΙΝΗΣΗΣ ΓΙΑ ΜΕΤΑΦΟΡΑ ΤΡΟΛΕΪ ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΜΗΧΑΝΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ Πτυχιακή εργασία ΣΧΕΔΙΑΣΜΟΣ ΕΠΙΓΕΙΟΥ ΣΥΣΤΗΜΑΤΟΣ ΑΛΥΣΟΚΙΝΗΣΗΣ ΓΙΑ ΜΕΤΑΦΟΡΑ ΤΡΟΛΕΪ Μάριος Σταυρίδης Λεμεσός, Ιούνιος 2017 ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ

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

ΕΠΙΧΕΙΡΗΣΙΑΚΗ ΕΡΕΥΝΑ ΘΕΩΡΙΑ ΚΑΙ ΕΦΑΡΜΟΓΗ ΤΟΥ ΓΡΑΜΜΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΣΤΗ ΛΗΨΗ ΑΠΟΦΑΣΕΩΝ (1)

ΕΠΙΧΕΙΡΗΣΙΑΚΗ ΕΡΕΥΝΑ ΘΕΩΡΙΑ ΚΑΙ ΕΦΑΡΜΟΓΗ ΤΟΥ ΓΡΑΜΜΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΣΤΗ ΛΗΨΗ ΑΠΟΦΑΣΕΩΝ (1) ΕΠΙΧΕΙΡΗΣΙΑΚΗ ΕΡΕΥΝΑ ΘΕΩΡΙΑ ΚΑΙ ΕΦΑΡΜΟΓΗ ΤΟΥ ΓΡΑΜΜΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΣΤΗ ΛΗΨΗ ΑΠΟΦΑΣΕΩΝ (1) 1 Προέλευση και ιστορία της Επιχειρησιακής Έρευνας Αλλαγές στις επιχειρήσεις Τέλος του 19ου αιώνα: βιομηχανική

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

Κεφάλαιο 6: Προσομοίωση ενός συστήματος αναμονής

Κεφάλαιο 6: Προσομοίωση ενός συστήματος αναμονής Κεφάλαιο 6: Προσομοίωση ενός συστήματος αναμονής Τεχνικές Εκτίμησης Υπολογιστικών Συστημάτων Γιάννης Γαροφαλάκης Αν. Καθηγητής ιατύπωση του προβλήματος (1) Τα συστήματα αναμονής (queueing systems), βρίσκονται

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

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

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

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

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

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

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

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

Μοντέλα. χαρακτηριστικά χωρίς να συνοδεύεται από λεπτοµέρειες. Γλώσσες Περιγραφής Μοντέλα Ένα µοντέλο ενός κυκλώµατος είναι µία αναπαράσταση που παρουσιάζει χαρακτηριστικά χωρίς να συνοδεύεται από λεπτοµέρειες. Τα τυπικά µοντέλα έχουν καλά ορισµένη σύνταξη. Τα αυτόµατα

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

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

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

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

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

Σχολή Μηχανικής και Τεχνολογίας. Πτυχιακή διατριβή Σχολή Μηχανικής και Τεχνολογίας Πτυχιακή διατριβή ΠΕΙΡΑΜΑΤΙΚΗ ΑΞΙΟΛΟΓΗΣΗ ΑΝΤΙΚΑΤΑΣΤΑΣΗΣ ΜΕΡΟΥΣ ΤΟΥ ΚΑΥΣΙΜΟΥ ΠΟΥ ΚΑΤΑΝΑΛΩΝΕΙ ΒΕΝΖΙΝΟΚΙΝΗΤΗΡΑΣ ΜΕ ΥΔΡΟΓΟΝΟ ΤΟ ΟΠΟΙΟ ΘΑ ΠΑΡΑΓΕΤΑΙ ΜΕ ΑΝΑΚΤΗΣΗ ΕΝΕΡΓΕΙΑΣ ΚΑΤΑ

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

Ο νοσηλευτικός ρόλος στην πρόληψη του μελανώματος

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

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

Περίληψη Λαμπρόπουλος

Περίληψη Λαμπρόπουλος Περίληψη Λαμπρόπουλος 1. Αντικείμενο και Περιγραφή της Διατριβής H διδακτορική διατριβή με τίτλο «Σχεδιασμός και υλοποίηση συστήματος διαχείρισης και ενοποίησης διαφορετικών ταυτοτήτων χρηστών σε δίκτυα

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

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

Δομές Δεδομένων. Ενότητα 1 - Εισαγωγή. Χρήστος Γκουμόπουλος. Πανεπιστήμιο Αιγαίου Τμήμα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστημάτων Δομές Δεδομένων Ενότητα 1 - Εισαγωγή Χρήστος Γκουμόπουλος Πανεπιστήμιο Αιγαίου Τμήμα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστημάτων Αντικείμενο μαθήματος Δομές Δεδομένων (ΔΔ): Στην επιστήμη υπολογιστών

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

Περιεχόμενα. 2 Αριθμητικά συστήματα

Περιεχόμενα. 2 Αριθμητικά συστήματα Περιεχόμενα Πρόλογος 1 Εισαγωγή 1.1 Το μοντέλο Turing 1.2 Το μοντέλο von Neumann 1.3 Συστατικά στοιχεία υπολογιστών 1.4 Ιστορικό 1.5 Κοινωνικά και ηθικά ζητήματα 1.6 Η επιστήμη των υπολογιστών ως επαγγελματικός

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

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

ΣΧΕΔΙΑΣΜΟΣ ΚΑΙ ΕΝΙΣΧΥΣΗ ΤΩΝ ΚΟΜΒΩΝ ΟΠΛΙΣΜΕΝΟΥ ΣΚΥΡΟΔΕΜΑΤΟΣ ΜΕ ΒΑΣΗ ΤΟΥΣ ΕΥΡΩΚΩΔΙΚΕΣ Σχολή Μηχανικής και Τεχνολογίας Πτυχιακή εργασία ΣΧΕΔΙΑΣΜΟΣ ΚΑΙ ΕΝΙΣΧΥΣΗ ΤΩΝ ΚΟΜΒΩΝ ΟΠΛΙΣΜΕΝΟΥ ΣΚΥΡΟΔΕΜΑΤΟΣ ΜΕ ΒΑΣΗ ΤΟΥΣ ΕΥΡΩΚΩΔΙΚΕΣ Σωτήρης Παύλου Λεμεσός, Μάιος 2018 i ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ

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

Κτίρια nζεβ και προσομοίωση με την χρήση του energy+

Κτίρια nζεβ και προσομοίωση με την χρήση του energy+ ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΜΗΧΑΝΙΚΗΣ Πτυχιακή εργασία Κτίρια nζεβ και προσομοίωση με την χρήση του energy+ Μυροφόρα Ιωάννου Λεμεσός, Μάιος 2017 ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΜΗΧΑΝΙΚΗΣ

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

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

ΒΕΛΤΙΩΣΗ ΔΙΕΡΓΑΣΙΩΝ ΕΡΓΑΣΤΗΡΙΟΥ ΕΛΕΓΧΟΥ ΠΟΙΟΤΗΤΑΣ ΚΑΙ ΕΦΑΡΜΟΓΗ ΕΡΓΑΛΕΙΩΝ ΔΙΑΣΦΑΛΙΣΗΣ ΠΟΙΟΤΗΤΑΣ ΣΕ ΜΕΤΑΛΛΟΒΙΟΜΗΧΑΝΙΑ Σχολή Mηχανικής και Τεχνολογίας Πτυχιακή εργασία ΒΕΛΤΙΩΣΗ ΔΙΕΡΓΑΣΙΩΝ ΕΡΓΑΣΤΗΡΙΟΥ ΕΛΕΓΧΟΥ ΠΟΙΟΤΗΤΑΣ ΚΑΙ ΕΦΑΡΜΟΓΗ ΕΡΓΑΛΕΙΩΝ ΔΙΑΣΦΑΛΙΣΗΣ ΠΟΙΟΤΗΤΑΣ ΣΕ ΜΕΤΑΛΛΟΒΙΟΜΗΧΑΝΙΑ Στέλιος Καράσαββας Λεμεσός, Μάιος 2017

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

Πτυχιακή Εργασία ηµιουργία Εκπαιδευτικού Παιχνιδιού σε Tablets Καλλιγάς ηµήτρης Παναγιώτης Α.Μ.: 1195 Επιβλέπων καθηγητής: ρ. Συρµακέσης Σπύρος ΑΝΤΙΡΡΙΟ 2015 Ευχαριστίες Σ αυτό το σηµείο θα ήθελα να

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

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

ΚΒΑΝΤΙΚΟΙ ΥΠΟΛΟΓΙΣΤΕΣ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε. ΚΒΑΝΤΙΚΟΙ ΥΠΟΛΟΓΙΣΤΕΣ Πτυχιακή Εργασία Φοιτητής: ΜIΧΑΗΛ ΖΑΓΟΡΙΑΝΑΚΟΣ ΑΜ: 38133 Επιβλέπων Καθηγητής Καθηγητής Ε.

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

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

ΠΑΡΑΔΕΙΓΜΑ ΣΤΟ BIZAGI ΕΘΝΙΚΗ ΣΧΟΛΗ ΔΗΜΟΣΙΑΣ ΔΙΟΙΚΗΣΗΣ & ΑΥΤΟΔΙΟΙΚΗΣΗΣ Ανάλυση - Προσομοίωση ΠΑΡΑΔΕΙΓΜΑ ΣΤΟ BIZAGI ΕΘΝΙΚΗ ΣΧΟΛΗ ΔΗΜΟΣΙΑΣ ΔΙΟΙΚΗΣΗΣ & ΑΥΤΟΔΙΟΙΚΗΣΗΣ 1 Προσομοίωση Η προσομοίωση είναι μέθοδος μελέτης ενός συστήματος και εξοικείωσης με τα χαρακτηριστικά του με

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

Πιο συγκεκριμένα, η χρήση του MATLAB προσφέρει τα ακόλουθα πλεονεκτήματα.

Πιο συγκεκριμένα, η χρήση του MATLAB προσφέρει τα ακόλουθα πλεονεκτήματα. i Π Ρ Ο Λ Ο Γ Ο Σ Το βιβλίο αυτό αποτελεί μια εισαγωγή στα βασικά προβλήματα των αριθμητικών μεθόδων της υπολογιστικής γραμμικής άλγεβρας (computational linear algebra) και της αριθμητικής ανάλυσης (numerical

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

Μάθημα Επιλογής 8 ου εξαμήνου

Μάθημα Επιλογής 8 ου εξαμήνου EΘNIKO ΜEΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΧΗΜΙΚΩΝΜΗΧΑΝΙΚΩΝ ΤΟΜΕΑΣ ΙΙ: Ανάλυσης, Σχεδιασμού & Ανάπτυξης Διεργασιών & Συστημάτων Δίαλεξη 1: Βασικές Έννοιες Μάθημα Επιλογής 8 ου εξαμήνου Διδάσκων: Α. Κοκόσης Συνεργάτες:

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

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

Εισαγωγικές Έννοιες. ημήτρης Φωτάκης. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών. Εθνικό Μετσόβιο Πολυτεχνείο Εισαγωγικές Έννοιες ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

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

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

ΠΙΛΟΤΙΚΗ ΕΦΑΡΜΟΓΗ ΑΥΤΟΝΟΜΩΝ ΣΥΣΤΗΜΑΤΩΝ ΠΛΟΗΓΗΣΗΣ ΓΙΑ ΤΗΝ ΠΑΡΑΓΩΓΗ ΥΨΗΛΗΣ ΑΝΑΛΥΣΗΣ ΟΡΘΟΦΩΤΟΓΡΑΦΙΩΝ ΓΕΩΡΓΙΚΩΝ ΕΚΤΑΣΕΩΝ Σχολή Μηχανικής & Τεχνολογίας Τμήμα Πολιτικών & Μηχανικών Γεωπληροφορικής Μεταπτυχιακή διατριβή ΠΙΛΟΤΙΚΗ ΕΦΑΡΜΟΓΗ ΑΥΤΟΝΟΜΩΝ ΣΥΣΤΗΜΑΤΩΝ ΠΛΟΗΓΗΣΗΣ ΓΙΑ ΤΗΝ ΠΑΡΑΓΩΓΗ ΥΨΗΛΗΣ ΑΝΑΛΥΣΗΣ ΟΡΘΟΦΩΤΟΓΡΑΦΙΩΝ ΓΕΩΡΓΙΚΩΝ

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

Διάλεξη 1: Βασικές Έννοιες

Διάλεξη 1: Βασικές Έννοιες EΘNIKO ΜEΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΧΗΜΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΤΟΜΕΑΣ ΙΙ: Ανάλυσης, Σχεδιασμού & Ανάπτυξης Διεργασιών & Συστημάτων Διάλεξη 1: Βασικές Έννοιες Μάθημα Επιλογής 8 ου εξαμήνου Διδάσκων: Α. Κοκόσης Συνεργάτες:

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

Επαλήθευση Πρωτοκόλλων

Επαλήθευση Πρωτοκόλλων Επαλήθευση Πρωτοκόλλων Περίληψη Προδιαγραφή και επαλήθευση Πρωτοκόλλων Μηχανές Πεπερασμένων Καταστάσεων (Finite State Machines) Petri-Nets 1 Μηχανές Πεπερασμένων Καταστάσεων (Finite State Machines) Περιγραφή

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

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

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

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

Συγγραφή κώδικα, δοκιμασία, επαλήθευση. Γιάννης Σμαραγδάκης

Συγγραφή κώδικα, δοκιμασία, επαλήθευση. Γιάννης Σμαραγδάκης Συγγραφή κώδικα, δοκιμασία, επαλήθευση Γιάννης Σμαραγδάκης Προδιαγραφή απαιτήσεων Σχεδιασμός συνεπείς σχέσεις Υψηλό επίπεδο συνεπείς σχέσεις Χαμηλό επίπεδο συνεπείς σχέσεις Πλάνο δοκιμών Κώδικας Συγγραφή

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

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL 8.1. Εισαγωγή ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PACAL Πως προέκυψε η γλώσσα προγραμματισμού Pascal και ποια είναι τα γενικά της χαρακτηριστικά; Σχεδιάστηκε από τον Ελβετό επιστήμονα της Πληροφορικής Nicklaus Wirth to

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

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

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

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

Μηχανική Μάθηση Μερωνυµιών για Αναγνώριση Γεγονότων

Μηχανική Μάθηση Μερωνυµιών για Αναγνώριση Γεγονότων Μηχανική Μάθηση Μερωνυµιών για Αναγνώριση Γεγονότων Αναστάσιος Σκαρλατίδης 1,2 anskarl@iit.demokritos.gr επιβλέπων: Καθ. Βούρος Γ. 1 1 Τµήµα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστηµάτων Πανεπιστήµιο

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

Χρόνος και Άλγεβρες Διεργασιών

Χρόνος και Άλγεβρες Διεργασιών Χρόνος και Άλγεβρες Διεργασιών Στην ενότητα αυτή θα μελετηθούν τα εξής θέματα: Συστήματα μεταβάσεων με χρόνος Η Χρονική CCS: σύνταξη και σημασιολογία ΕΠΛ 664 Ανάλυση και Επαλήθευση Συστημάτων 12-1 Συστήματα

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

3. Προσομοίωση ενός Συστήματος Αναμονής.

3. Προσομοίωση ενός Συστήματος Αναμονής. 3. Προσομοίωση ενός Συστήματος Αναμονής. 3.1. Διατύπωση του Προβλήματος. Τα συστήματα αναμονής (queueing systems), βρίσκονται πίσω από τα περισσότερα μοντέλα μελέτης της απόδοσης υπολογιστικών συστημάτων,

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

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

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

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

Πρόβλημα 29 / σελίδα 28

Πρόβλημα 29 / σελίδα 28 Πρόβλημα 29 / σελίδα 28 Πρόβλημα 30 / σελίδα 28 Αντιμετάθεση / σελίδα 10 Να γράψετε αλγόριθμο, οποίος θα διαβάζει τα περιεχόμενα δύο μεταβλητών Α και Β, στη συνέχεια να αντιμεταθέτει τα περιεχόμενά τους

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

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

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΜΗΧΑΝΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ. Πτυχιακή εργασία ΕΤΟΙΜΑΣΙΑ ΔΕΛΤΙΟΥ ΠΟΣΟΤΗΤΩΝ ΜΕ ΤΗ ΧΡΗΣΗ ΛΟΓΙΣΜΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΜΗΧΑΝΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ Πτυχιακή εργασία ΕΤΟΙΜΑΣΙΑ ΔΕΛΤΙΟΥ ΠΟΣΟΤΗΤΩΝ ΜΕ ΤΗ ΧΡΗΣΗ ΛΟΓΙΣΜΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ Χρύσω Κωνσταντίνου Λεμεσός 2016 ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ

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

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

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

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

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

ΔΗΜΙΟΥΡΓΙΑ ΔΥΝΑΜΙΚΟΥ ΜΟΝΤΕΛΟΥ ΑΝΟΔΙΚΗΣ ΠΡΟΣΕΓΓΙΣΗΣ ΓΙΑ ΤΗΝ ΕΚΤΙΜΗΣΗ ΤΗΣ ΖΗΤΗΣΗΣ ΕΝΕΡΓΕΙΑΣ ΣΤΟΝ ΟΙΚΙΣΤΙΚΟ ΤΟΜΕΑ ΤΗΣ ΚΥΠΡΟΥ Σχολή Γεωτεχνικών Επιστημών & Διαχείρισης Περιβάλλοντος Μεταπτυχιακή διατριβή ΔΗΜΙΟΥΡΓΙΑ ΔΥΝΑΜΙΚΟΥ ΜΟΝΤΕΛΟΥ ΑΝΟΔΙΚΗΣ ΠΡΟΣΕΓΓΙΣΗΣ ΓΙΑ ΤΗΝ ΕΚΤΙΜΗΣΗ ΤΗΣ ΖΗΤΗΣΗΣ ΕΝΕΡΓΕΙΑΣ ΣΤΟΝ ΟΙΚΙΣΤΙΚΟ ΤΟΜΕΑ ΤΗΣ ΚΥΠΡΟΥ Γαλάτεια

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

Κεφάλαιο 2.3: Προγραμματισμός. Επιστήμη ΗΥ Κεφ. 2.3 Καραμαούνας Πολύκαρπος

Κεφάλαιο 2.3: Προγραμματισμός. Επιστήμη ΗΥ Κεφ. 2.3 Καραμαούνας Πολύκαρπος Κεφάλαιο 2.3: Προγραμματισμός 1 2.3.1 Αναφορά σε γλώσσες προγραμματισμού και «Προγραμματιστικά Υποδείγματα» 2.3.1.1 Πρόγραμμα και Γλώσσες Προγραμματισμού Πρόγραμμα: σύνολο εντολών που χρειάζεται να δοθούν

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

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

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

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

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

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

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

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

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

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

Διαγράμματα UML στην Ανάλυση. Μέρος Γ Διαγράμματα Επικοινωνίας Διαγράμματα Ακολουθίας Διαγράμματα Μηχανής Καταστάσεων

Διαγράμματα UML στην Ανάλυση. Μέρος Γ Διαγράμματα Επικοινωνίας Διαγράμματα Ακολουθίας Διαγράμματα Μηχανής Καταστάσεων Διαγράμματα UML στην Ανάλυση Μέρος Γ Διαγράμματα Επικοινωνίας Διαγράμματα Ακολουθίας Διαγράμματα Μηχανής Καταστάσεων περιεχόμενα παρουσίασης Διαγράμματα επικοινωνίας Διαγράμματα ακολουθίας Διαγράμματα

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

Ακριβής 3Δ Προσδιορισμός Θέσης των Σημείων του Κεντρικού Τομέα του Δικτύου LVD με τη μέθοδο του Σχετικού Στατικού Εντοπισμού

Ακριβής 3Δ Προσδιορισμός Θέσης των Σημείων του Κεντρικού Τομέα του Δικτύου LVD με τη μέθοδο του Σχετικού Στατικού Εντοπισμού Σχολή Μηχανικής και Τεχνολογίας Πτυχιακή εργασία Ακριβής 3Δ Προσδιορισμός Θέσης των Σημείων του Κεντρικού Τομέα του Δικτύου LVD με τη μέθοδο του Σχετικού Στατικού Εντοπισμού Χατζηιωάννου Ανδρέας Λεμεσός,

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

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

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

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

Εισαγωγή Η VHDL υποστηρίζει τους εξής τρείς βασικούς και διαφορετικούς τρόπους περιγραφής

Εισαγωγή Η VHDL υποστηρίζει τους εξής τρείς βασικούς και διαφορετικούς τρόπους περιγραφής VHDL Εισαγωγή Η VHDL υποστηρίζει τους εξής τρείς βασικούς και διαφορετικούς τρόπους περιγραφής Structural (Δομική) Dataflow (Ροής δεδομένων) Behavioral (Συμπεριφοράς) Η VDHL χρησιμοποιείται για την περιγραφή

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

Παράλληλος προγραμματισμός περιστροφικών αλγορίθμων εξωτερικών σημείων τύπου simplex ΠΛΟΣΚΑΣ ΝΙΚΟΛΑΟΣ

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

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

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

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

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

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

ΣΤΙΓΜΙΑΙΑ ΚΑΤΑΣΚΕΥΗ ΣΤΕΡΕΟΥ ΜΕΙΓΜΑΤΟΣ ΥΛΙΚΟΥ ΜΕΣΑ ΑΠΟ ΕΛΕΓΧΟΜΕΝΗ ΦΥΣΙΚΗ ΔΙΑΔΙΚΑΣΙΑ Σχολή Μηχανικής και Τεχνολογίας Πτυχιακή εργασία ΣΤΙΓΜΙΑΙΑ ΚΑΤΑΣΚΕΥΗ ΣΤΕΡΕΟΥ ΜΕΙΓΜΑΤΟΣ ΥΛΙΚΟΥ ΜΕΣΑ ΑΠΟ ΕΛΕΓΧΟΜΕΝΗ ΦΥΣΙΚΗ ΔΙΑΔΙΚΑΣΙΑ Χριστόδουλος Χριστοδούλου Λεμεσός, Μάϊος 2017 ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ

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

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

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

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

ΠΑΡΆΡΤΗΜΑ Β Ενδεικτική Λίστα Διδασκόντων Μελών Δ.Ε.Π. του Τμήματος

ΠΑΡΆΡΤΗΜΑ Β Ενδεικτική Λίστα Διδασκόντων Μελών Δ.Ε.Π. του Τμήματος ΠΑΡΆΡΤΗΜΑ Β Ενδεικτική Λίστα Διδασκόντων Μελών Δ.Ε.Π. του Τμήματος 1 Βασίλειος Χρυσικόπουλος Καθηγητής Πληροφορική Δίκτυα Ασφάλεια Πληροφοριών Ερευνητικά Ενδιαφέροντα Ασφάλεια Δίκτυα Η/Υ http://di.ionio.gr/staff-2/faculty-staff/vassilischrissikopoulos/

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

Πρότυπο Αναφοράς Open Systems Interconnection (OSI) Επικοινωνίες Δεδομένων Μάθημα 5 ο

Πρότυπο Αναφοράς Open Systems Interconnection (OSI) Επικοινωνίες Δεδομένων Μάθημα 5 ο Πρότυπο Αναφοράς Open Systems Interconnection (OSI) Επικοινωνίες Δεδομένων Μάθημα 5 ο Πρωτόκολλα και Αρχιτεκτονική Δικτύου Για να ανταλλάξουν δεδομένα δύο σταθμοί, εκτός από την ύπαρξη διαδρομής μεταξύ

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

Use Cases: μια σύντομη εισαγωγή. Heavily based on UML & the UP by Arlow and Neustadt, Addison Wesley, 2002

Use Cases: μια σύντομη εισαγωγή. Heavily based on UML & the UP by Arlow and Neustadt, Addison Wesley, 2002 Use Cases: μια σύντομη εισαγωγή Heavily based on UML & the UP by Arlow and Neustadt, Addison Wesley, 2002 (γενικές εισαγωγικές ιδέες) ΣΥΛΛΟΓΗ ΑΠΑΙΤΗΣΕΩΝ 2 Ανάλυση απαιτήσεων Λειτουργικές απαιτήσεις: τι

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

ΗΥ562 Προχωρημένα Θέματα Βάσεων Δεδομένων Efficient Query Evaluation over Temporally Correlated Probabilistic Streams

ΗΥ562 Προχωρημένα Θέματα Βάσεων Δεδομένων Efficient Query Evaluation over Temporally Correlated Probabilistic Streams ΗΥ562 Προχωρημένα Θέματα Βάσεων Δεδομένων Efficient Query Evaluation over Temporally Correlated Probabilistic Streams Αλέκα Σεληνιωτάκη Ηράκλειο, 26/06/12 aseliniotaki@csd.uoc.gr ΑΜ: 703 1. Περίληψη Συνεισφοράς

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

Θέμα: Παχυσαρκία και κύηση:

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

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

Computing. Νοέμβριος Έκδοση 1.0

Computing. Νοέμβριος Έκδοση 1.0 Computing Νοέμβριος 2017 Έκδοση 1.0 Ενότητα Computing Αυτή η ενότητα παραθέτει τις βασικές έννοιες και δεξιότητες που σχετίζονται με την ικανότητα χρήσης υπολογιστικής σκέψης (computational thinking) και

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

Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών. Εθνικό Μετσόβιο Πολυτεχνείο. Thales Workshop, 1-3 July 2015

Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών. Εθνικό Μετσόβιο Πολυτεχνείο. Thales Workshop, 1-3 July 2015 Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Εθνικό Μετσόβιο Πολυτεχνείο Thales Workshop, 1-3 July 2015 Integrating Behavioural Algebraic Specifications and Design by Contract Nikolaos Triantafyllou

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

Βασικές Δομές μοντέλων Petri Nets. C.A. Petri

Βασικές Δομές μοντέλων Petri Nets. C.A. Petri Βασικές Δομές μοντέλων Petri Nets C.A. Petri - 1962 Γιατί χρήση Petri model? Φυσικό Πρόβλημα! Μοντέλο Petri abstract Software Simulation ανάλυση σε μοντέλο Petri Net Βασικές δομές μοντέλων Petri Διαδοχική

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

Τεχνικές Εκτίμησης Υπολογιστικών Συστημάτων Ενότητα 1: Προσομοίωση ενός συστήματος αναμονής

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

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

Κεφάλαιο 2ο. Κατανοώντας την αντικειμενοστρέφεια

Κεφάλαιο 2ο. Κατανοώντας την αντικειμενοστρέφεια Περιεχόμενα Πρόλογος... 11 Κεφάλαιο 1ο. Εισαγωγή στη γλώσσα UML 1.1 Προσθέτοντας μια νέα μέθοδο...13 1.2 Πως αναπτύχθηκε η UML...14 1.3 Κατανοώντας την UML...15 1.4 Αναγνωρίζοντας τα επί μέρους τμήματα

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

7 η Θεµατική Ενότητα : Εισαγωγή στις Γλώσσες Περιγραφής Υλικού

7 η Θεµατική Ενότητα : Εισαγωγή στις Γλώσσες Περιγραφής Υλικού 7 η Θεµατική Ενότητα : Εισαγωγή στις Γλώσσες Περιγραφής Υλικού Εισαγωγή Η χειρονακτική σχεδίαση ενός ψηφιακού συστήµατος είναι εξαιρετικά δύσκολη και επιρρεπής σε λάθη Συστήµατα που ξεπερνούς τις µερικές

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

Κεφάλαιο 7: Τεχνολογία Λογισμικού

Κεφάλαιο 7: Τεχνολογία Λογισμικού Κεφάλαιο 7: Τεχνολογία Λογισμικού Η Επιστήμη των Υπολογιστών: Μια Ολοκληρωμένη Παρουσίαση (δέκατη αμερικανική έκδοση) J. Glenn Brookshear Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley

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

Ανάλυση Συστηµάτων και Τεχνολογία Λογισµικού

Ανάλυση Συστηµάτων και Τεχνολογία Λογισµικού ΧΑΡΟΚΟΠΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΜΑΤΙΚΗΣ Ανάλυση Συστηµάτων και Τεχνολογία Λογισµικού Μάρα Νικολαϊδου Αντικείµενο & Σκοπός Παρουσίαση και ανάλυση όλων των σταδίων της διαδικασίας ανάπτυξης

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

215 Μηχανικών Η/Υ και Πληροφορικής Πάτρας

215 Μηχανικών Η/Υ και Πληροφορικής Πάτρας 215 Μηχανικών Η/Υ και Πληροφορικής Πάτρας Το Τμήμα ασχολείται με τη διδασκαλία και την έρευνα στην επιστήμη και τεχνολογία των υπολογιστών και τη μελέτη των εφαρμογών τους. Το Τμήμα ιδρύθηκε το 1980 (ως

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

Κύρια σημεία. Η έννοια του μοντέλου. Έρευνα στην εφαρμοσμένη Στατιστική. ΈρευναστηΜαθηματικήΣτατιστική. Αντικείμενο της Μαθηματικής Στατιστικής

Κύρια σημεία. Η έννοια του μοντέλου. Έρευνα στην εφαρμοσμένη Στατιστική. ΈρευναστηΜαθηματικήΣτατιστική. Αντικείμενο της Μαθηματικής Στατιστικής Κύρια σημεία Ερευνητική Μεθοδολογία και Μαθηματική Στατιστική Απόστολος Μπουρνέτας Τμήμα Μαθηματικών ΕΚΠΑ Αναζήτηση ερευνητικού θέματος Εισαγωγή στην έρευνα Ολοκλήρωση ερευνητικής εργασίας Ο ρόλος των

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

Οι Τομείς (κατευθύνσεις ειδικότητας) του Τμήματος Πληροφορικής & Επικοινωνιών είναι:

Οι Τομείς (κατευθύνσεις ειδικότητας) του Τμήματος Πληροφορικής & Επικοινωνιών είναι: Ακαδημαϊκή οργάνωση του Τμήματος Το Τμήμα Πληροφορικής και Επικοινωνιών είναι οργανωμένο ακαδημαϊκά σε τρεις Τομείς (κατευθύνσεις) με στόχο την εξειδίκευση των σπουδαστών σε ειδικότητες ανάλογες με τις

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