Εφαρμογή Μεθοδολογίας ICONIX

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Support.ebsco.com Εκπαιδευτικό μάθημα για τη δημιουργία τοπικής συλλογής.
Advertisements

ΠΑΡΟΥΣΙΑΣΗ ΤΜΗΜΑΤΟΣ ΔΙΕΘΝΩΝ ΚΑΙ ΕΥΡΩΠΑΪΚΩΝ ΣΠΟΥΔΩΝ
ΕΝΟΠΟΙΗΜΕΝΟ ΣΥΣΤΗΜΑ ΠΛΗΡΟΦΟΡΗΣΗΣ ΚΑΙ ONLINE
POINTERS, AGGREGATION, COMPOSITION. POINTERS TO OBJECTS.
ICONIX Μεθοδολογία Αντικειμενοστρεφούς
Copyright ©: SAMSUNG & Samsung Hope for Youth. Με επιφύλαξη κάθε νόμιμου δικαιώματος Εκπαιδευτικό υλικό Λογισμικό: Δημιουργία εφαρμογών Επίπεδο.
Διαδικασία ανάπτυξης Προσδιορισμός απαιτήσεων Αρχιτεκτονικός Σχεδιασμός Λεπτομερής Σχεδιασμός Κωδικοποίηση Έλεγχος Παράδοση Συστήματος Λειτουργία - Συντήρηση.
Πολλαπλασιαστική συσχέτιση •Δύο ή περισσότερες ιδιότητες μπορούν να επιδρούν «πολλαπλασιαστικά» σε μια τρίτη. •Στην περίπτωση αυτή έχουμε δυο ανεξάρτητες.
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
Δημιουργός Μοντέλων & ModellingSpace
ΚΕΝΤΡΟ ΠΟΛΙΤΙΣΜΙΚΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΙΝΣΤΙΤΟΥΤΟ ΠΛΗΡΟΦΟΡΙΚΗΣ ΙΤΕ 21,23/2/2005Πληροφοριακή σχεδίαση για πολιτισμική τεκμηρίωση και διαλειτουργικότητα1 Τεκμηρίωση.
ΝΕΟ ΑΝΑΛΥΤΙΚΟ ΠΡΟΓΡΑΜΜΑ Γ’ ΓΥΜΝΑΣΙΟΥ
ΟΠΑ - Τεχνολογία Λογισμικού - Εμμ. Γιακουμάκης
Κεφάλαιο 6 Υλοποίηση Γλωσσών Προγραμματισμού
ΕΠΙΚΟΙΝΩΝΙΑ ΑΝΘΡΩΠΟΥ – ΜΗΧΑΝΗΣ Εαρινό Εξάμηνο 2007 Παρουσίαση Εργαλείου Ανάπτυξης JBuilder Τσουρού Σταυρούλα, ΑΜ 708 Μαδεμλής Ιωάννης, ΑΜ 669.
Πτυχιακή εργασία των Κωνσταντίνου Κουρμούση (1604)
Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 1 Week 6: Java Collections Εβδομάδα 6: Συλλογές δεδομένων στην Java.
Τομέας Πληροφορικής ΙΕΚ ΔΕΛΤΑ Θεσσαλονίκη - Ιωάννινα
Οι σπουδές στην Ελλάδα. Σπουδές ανά πεδίο. Χρονική διάρκεια σπουδών.
Διδακτικά σενάρια.
Πρότυπα Σχεδίασης Design Patterns Μεταπτυχιακό Πρόγραμμα Σπουδών, Τμ. Εφ. Πληροφορικής.
Μοντέλα Συστημάτων Παρουσιάσεις των συστημάτων των οποίων οι απαιτήσεις αναλύονται.
EDUPORTAL ΕΝΟΠΟΙΗΜΕΝΟ ΣΥΣΤΗΜΑ ΠΛΗΡΟΦΟΡΗΣΗΣ ΚΑΙ ONLINE ΔΙΑΝΟΜΗΣ ΕΚΠΑΙΔΕΥΤΙΚΟΥ ΥΛΙΚΟΥ EDUPORTAL Υπεύθυνη για το τμήμα: Αναπλ.
1 HMMY Τεχνολογία Λογισμικού Διδάσκων Κώστας Κοντογιάννης Αναπλ. Καθηγητής, Ε.Μ.Π.
Πανεπιστήμιο Θεσσαλίας Σχολή Ανθρωπιστικών και Κοινωνικών Επιστημών Παιδαγωγικό Τμήμα Προσχολικής Εκπαίδευσης Νέο Πρόγραμμα σπουδών Ενημέρωση Δευτεροετών.
Εννοιολογική αναπαράσταση δεδομένων. Οντότητα Είναι κάθε αντικείμενο, πρόσωπο, γεγονός κατάσταση ή και αφηρημένη έννοια που προσδιορίζεται από την ανεξάρτητη.
Τίτλος: "Μια έρευνα σχετικά με την αποτελεσματικότητα των ηλεκτρονικών υπηρεσιών πληροφορίας στην ελληνική τριτοβάθμια εκπαίδευση: Μελέτη περίπτωσης" Ιουλία.
HMMY Τεχνολογία Λογισμικού Διδάσκων Κώστας Κοντογιάννης Αναπλ. Καθηγητής, Ε.Μ.Π.
Ζαγκαρέτος Λεωνίδας ΑΕΜ: 607 Ραφαηλίδης Δημήτρης ΑΕΜ: 656
ΟΠΑ - Τεχνολογία Λογισμικού - Εμμ. Γιακουμάκης
Ηλεκτρονική Γραμματεία
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεσιακό Μοντέλο.
Εκπαιδευτικό μάθημα Διεξαγωγή Προηγμένης αναζήτησης στο EBSCOhost Πεδία εύρεσης βάσει οδηγιών
Εισαγωγή στο Blackboard
Μεταγλωττιστές (Compilers) (Θ) Ενότητα 13: Επαναληπτικό μάθημα Κατερίνα Γεωργούλη Τμήμα Μηχανικών Πληροφορικής ΤΕ Το περιεχόμενο του μαθήματος διατίθεται.
Μεταγλωττιστές (Compilers) (Θ) Ενότητα 8: Πίνακας Συμβόλων Κατερίνα Γεωργούλη Τμήμα Μηχανικών Πληροφορικής ΤΕ Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας.
ΟΡΙΣΜΟΣ ΣΥΜΠΕΡΙΦΟΡΑΣ ΔΙΑΓΡΑΜΜΑTA ΑΛΛΗΛΕΠΙΔΡΑΣΗΣ
Γυμνάσιο Νέας Κυδωνίας
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεσιακό Μοντέλο.
Τεχνολογία ΛογισμικούSlide 1 Τεχνολογία Απαιτήσεων u Καθορίζει τι θέλει ο πελάτης από ένα σύστημα λογισμικού.
Διάλεξη 1 Εισαγωγή Επισκόπηση άσκησης Διάλεξη 1 1 Τμήμα Πληροφορικής και Τηλεπικοινωνιών Ανάπτυξη Λογισμικού Χειμερινό Εξάμηνο
TEΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΕΝΤΡΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ T.E. ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΗΣ ΓΙΑ ΗΛΕΚΤΡΟΝΙΚΕΣ.
Πρακτικές Σχεδιασμού Μαθήματος. Πρακτικές καλού σχεδιασμού μαθήματος Η συγκέντρωση του εκπαιδευτικού υλικού και η οργάνωση στο eclass γίνεται πλέον σε.
ΚΑΤΑΝΟΩ ΤΙΣ ΜΕΤΑΒΛΗΤΕΣ ΜΕ ΤΗ ΒΟΗΘΕΙΑ ΤΟΥ SCRATCH Χρήστος Μανώλης, Πληροφορικός ΠΕ 19 ΘΕΣΣΑΛΟΝΙΚΗ / ΑΥΓΟΥΣΤΟΣ 2015 Ομάδα ανάπτυξης 6 ο εσπερινό ΕΠΑΛ Θεσσαλονίκης.
 Στόχος της παρουσίασης αυτής είναι η εξοικείωση με τον Ηλεκτρονικό Κατάλογο της Βιβλιοθήκης προκειμένου να αναζητήσουμε ένα τεκμήριο από τη συλλογή.
ΥΠΟΛΟΓΙΣΤΙΚΕΣ ΤΕΧΝΙΚΕΣ ΓΙΑ ΣΥΣΤΗΜΑΤΑ ΜΕΤΑΔΟΣΗΣ ΠΛΗΡΟΦΟΡΙΑΣ Αντικειμενοστραφής προγραμματισμός Web Site: ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ.
1 State Diagrams. 2 Τα διαγράμματα καταστάσεων (State diagrams) χρησιμοποιούνται: Για να βοηθήσουν στην ανάπτυξη ενός συστήματος Για να βοηθήσουν στην.
Το Σχεσιακό Μοντέλο Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
Εργαστήριο 2 : Scratch (Μέρος 2ο) Δημήτριος Νικολός ΤΕΕΑΠΗ
Οντοκεντρικός Προγραμματισμός
Κατανεμημένα Συστήματα
Προγραμματισμός κινητών συσκευών
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΠΡΟΧΩΡΗΜΕΝΕΣ ΤΕΧΝΙΚΕΣ
Java DataBase Connectivity
ΕΡΓΑΣΤΗΡΙΟ: ΧΡΟΝΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΕΡΓΩΝ
Κλάσεις και αντικείμενα
Σύνδεση στην πλατφόρμα
Βάσεις Δεδομένων & Έμπειρα Συστήματα
Επεξεργασία Κειμένου Διδακτική προσέγγιση των λογισμικών γενικής χρήσης Ζωγραφική Λογιστικά φύλλα Βάσεις δεδομένων.
Εισαγωγή Επισκόπηση άσκησης
Δημιουργία Ανοιχτού Ακαδημαϊκού Μαθήματος στην πλατφόρμα openeclass
Το Σχεσιακό Μοντέλο Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
Πύλη Τηλεκπαίδευσης Τμήματος edu. dmst. aueb. gr Βασιλική Ταγκαλάκη (Ε
Διδασκαλία με την μέθοδο project
ΕΡΓΑΣΤΗΡΙΟ: ΧΡΟΝΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΕΡΓΩΝ
Το Σχεσιακό Μοντέλο Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
Εισαγωγή στον Προγραμματισμό (στη γλώσσα Java)
Εισαγωγή στον Αντικειμενοστρεφή Προγραμματισμό (στη γλώσσα Java)
Βιβλιογραφική Ανασκόπηση
Οι Κατευθύνσεις στο τμήμα Μηχανικών Πληροφορικής
Μεταγράφημα παρουσίασης:

Εφαρμογή Μεθοδολογίας ICONIX Παράδειγμα: Εγγραφή Φοιτητή σε Μάθημα Πρόγραμμα Μεταπτυχιακών Σπουδών στην Εφαρμοσμένη Πληροφορική Προηγμένη Τεχνολογία Λογισμικού, 2016 Α. Χατζηγεωργίου

Θέμα Θεωρείστε ότι συμμετέχετε στην ομάδα ανάπτυξης του συστήματος λογισμικού για ένα Πανεπιστήμιο. Σας δίνεται η κάτωθι περιγραφή ενός τμήματος της συνολικής λειτουργικότητας του συστήματος που σχετίζεται με τη δυνατότητα εγγραφής ενός φοιτητή σε μάθημα το οποίο επιλέγει. “Ο φοιτητής πρέπει να έχει τη δυνατότητα επιλογής ενός μαθήματος. Για να μπορέσει ο φοιτητής να εγγραφεί σε ένα μάθημα θα πρέπει να συντρέχουν κάποιες προϋποθέσεις: α) ο φοιτητής θα πρέπει να έχει περάσει επιτυχώς τα προαπαιτούμενα μαθήματα για το μάθημα που επιλέγει, β) Κάθε μάθημα πραγματοποιείται σε μια αίθουσα ή σε ένα εργαστήριο με καθορισμένη χωρητικότητα. Επομένως θα πρέπει να υπάρχει διαθέσιμος χώρος στην αντίστοιχη αίθουσα ή το εργαστήριο και γ) Αν το επιλεγμένο μάθημα είναι η πτυχιακή εργασία σε έναν καθηγητή θα πρέπει ο αντίστοιχος καθηγητής να έχει περιθώριο επίβλεψης (κάθε καθηγητής μπορεί να επιβλέψει έως και 5 πτυχιακές εργασίες). Αν οποιαδήποτε συνθήκη δεν πληρείται θα εμφανίζεται κατάλληλο μήνυμα και ο φοιτητής δεν θα εγγράφεται στο μάθημα.” Σημείωση 1: To υπό ανάπτυξη σύστημα, στο αρχικό πρωτότυπο, δεν θα συνεργάζεται με βάση δεδομένων. Όλα τα αντικείμενα θα ανακτώνται από δυαδικά αρχεία και θα βρίσκονται στη μνήμη του υπολογιστή. Για την εξεταζόμενη λειτουργικότητα δεν θα πρέπει να σας απασχολεί ο τρόπος ανάκτησης/αποθήκευσης αντικειμένων από/στα αρχεία. Σημείωση 2: Ο φοιτητής έχει πραγματοποιήσει εισαγωγή στο σύστημα (login) σε άλλο στάδιο και δεν μας απασχολεί στο πλαίσιο της εξεταζόμενης λειτουργικότητας

Θέμα (α) Δημιουργήστε το μοντέλο του πεδίου του προβλήματος με βάση την περιγραφή που δόθηκε. (β) Καταγράψτε υπό μορφή λεκτικής περιγραφής μιας (1) περίπτωσης χρήσης την ανωτέρω λειτουργικότητα. (γ) Δημιουργήστε το διάγραμμα ευρωστίας για την περίπτωση χρήσης που περιγράψατε. (δ) Δημιουργήστε το διάγραμμα ακολουθίας για την περίπτωση χρήσης που περιγράψατε. (ε) Αποτυπώστε το τελικό διάγραμμα κλάσεων με όλα τα στοιχεία που προέκυψαν από την ανάλυση και σχεδίαση αναφορικά με το συγκεκριμένο τμήμα λειτουργικότητας. (στ) να αναπτύξετε κώδικα σε Java για: - την υλοποίηση των κλάσεων του διαγράμματος κλάσεων (συμπεριλαμβανομένων των ιδιοτήτων των κλάσεων καθώς και των σχέσεων μεταξύ τους) - την υλοποίηση των μεθόδων του διαγράμματος κλάσεων - τη δοκιμή των μεθόδων με τη χρήση κατάλληλου προγράμματος οδήγησης (π.χ. μέσω εντολών δημιουργίας αντικειμένων και κλήσης μεθόδων επί αυτών, στη μέθοδο main)

Θέμα (α) Δημιουργήστε το μοντέλο του πεδίου του προβλήματος με βάση την περιγραφή που δόθηκε. (β) Καταγράψτε υπό μορφή λεκτικής περιγραφής μιας (1) περίπτωσης χρήσης την ανωτέρω λειτουργικότητα. (γ) Δημιουργήστε το διάγραμμα ευρωστίας για την περίπτωση χρήσης που περιγράψατε. (δ) Δημιουργήστε το διάγραμμα ακολουθίας για την περίπτωση χρήσης που περιγράψατε. (ε) Αποτυπώστε το τελικό διάγραμμα κλάσεων με όλα τα στοιχεία που προέκυψαν από την ανάλυση και σχεδίαση αναφορικά με το συγκεκριμένο τμήμα λειτουργικότητας. (στ) να αναπτύξετε κώδικα σε Java για: - την υλοποίηση των κλάσεων του διαγράμματος κλάσεων (συμπεριλαμβανομένων των ιδιοτήτων των κλάσεων καθώς και των σχέσεων μεταξύ τους) - την υλοποίηση των μεθόδων του διαγράμματος κλάσεων - τη δοκιμή των μεθόδων με τη χρήση κατάλληλου προγράμματος οδήγησης (π.χ. μέσω εντολών δημιουργίας αντικειμένων και κλήσης μεθόδων επί αυτών, στη μέθοδο main)

Μοντέλο Πεδίου προβλήματος

Λεκτική Περιγραφή Περίπτωσης Χρήσης Βασική ροή 1. Ο φοιτητής επιλέγει το μάθημα στο οποίο επιθυμεί να εγγραφεί στην οθόνη «Εγγραφή σε Μάθημα» 2. Το σύστημα εμφανίζει τα προαπαιτούμενα μαθήματα για το επιλεγμένο μάθημα 3. Το σύστημα διαπιστώνει ότι ο φοιτητής έχει περάσει επιτυχώς τα προαπαιτούμενα μαθήματα 4. Το σύστημα διαπιστώνει ότι το επιλεγμένο μάθημα είναι διδασκόμενο μάθημα (όχι πτυχιακή) 5. Το σύστημα διαπιστώνει ότι υπάρχει χώρος στην αίθουσα ή το εργαστήριο στο οποίο διδάσκεται το επιλεγμένο μάθημα 6. Το σύστημα εγγράφει τον φοιτητή στο επιλεγμένο μάθημα και εμφανίζει μήνυμα επιτυχούς εγγραφής 7. Το σύστημα επιστρέφει στην οθόνη «Εγγραφή σε Μάθημα»

Λεκτική Περιγραφή Περίπτωσης Χρήσης Εναλλακτική ροή 1 3.α.1 Το σύστημα διαπιστώνει ότι ο φοιτητής δεν έχει περάσει ένα τουλάχιστον από τα προαπαιτούμενα μαθήματα 3.α.2 Το σύστημα εμφανίζει οθόνη αδυναμίας εγγραφής λόγω μη επιτυχούς ολοκλήρωσης των προαπαιτούμενων για το συγκεκριμένο μάθημα 3.α.3 Ο φοιτητής κλείνει το μήνυμα 3.α.4 Το σύστημα εμφανίζει την οθόνη «Εγγραφή σε Μάθημα»   Εναλλακτική ροή 2 4.α.1 Το σύστημα διαπιστώνει ότι το επιλεγμένο μάθημα είναι πτυχιακή εργασία και εμφανίζει πεδίο επιλογής καθηγητή 4.α.2 Ο φοιτητής επιλέγει καθηγητή 4.α.3 Το σύστημα διαπιστώνει ότι ο επιλεγμένος καθηγητής δεν έχει υπερβεί το όριο πτυχιακών εργασιών 4.α.4 Το σύστημα εγγράφει τον φοιτητή στη λίστα επιβλεπομένων φοιτητών του επιλεγμένου καθηγητή 4.α.5 Ο φοιτητής κλείνει το μήνυμα 4.α.6 Το σύστημα εμφανίζει την οθόνη «Εγγραφή σε Μάθημα»

Λεκτική Περιγραφή Περίπτωσης Χρήσης Εναλλακτική ροή 3 4.β.1 Το σύστημα διαπιστώνει ότι το επιλεγμένο μάθημα είναι πτυχιακή εργασία και εμφανίζει πεδίο επιλογής καθηγητή 4.β.2 Ο φοιτητής επιλέγει καθηγητή 4.β.3 Το σύστημα διαπιστώνει ότι ο επιλεγμένος καθηγητής έχει υπερβεί το όριο πτυχιακών εργασιών 4.β.4 Το σύστημα εμφανίζει οθόνη αδυναμίας εγγραφής λόγω αδυναμίας του επιλεγμένου καθηγητή να επιβλέψει άλλες εργασίες 4.β.5 Ο φοιτητής κλείνει το μήνυμα 4.β.6 Το σύστημα εμφανίζει την οθόνη «Εγγραφή σε Μάθημα»   Εναλλακτική ροή 4 5.α.1 Το σύστημα διαπιστώνει ότι δεν υπάρχει χώρος στην αίθουσα ή το εργαστήριο στο οποίο διδάσκεται το επιλεγμένο μάθημα 5.α.2 Το σύστημα εμφανίζει οθόνη αδυναμίας εγγραφής λόγω ανεπάρκειας χώρου 5.α.3 Ο φοιτητής κλείνει το μήνυμα 5.α.4 Το σύστημα εμφανίζει την οθόνη «Εγγραφή σε Μάθημα»

Διάγραμμα Ευρωστίας & Αναθ. Λεκτ. Περιγρ. See next slide  

Αναθ. Μοντέλο του πεδίου του προβλήματος Παρατηρήσεις επί αλλαγών σε σχέση με το αρχικό μοντέλο του πεδίου του προβλήματος:   1. Από την περιγραφή και την ανάλυση ευρωστίας δεν προκύπτει ότι απαιτούνται διαφορετικές ιδιότητες ή διαφορετικές λειτουργίες από εργαστήρια και αίθουσες και κατά συνέπεια αφαιρείται η σχετική ιεραρχία κληρονομικότητας 2. Το μάθημα που επιλέγει (κατ’ όνομα) ο φοιτητής θα πρέπει να εντοπιστεί ως αντικείμενο και για το λόγο αυτό απαιτείται η προσθήκη κλάσης Λίστα Μαθημάτων στην οποία θα αναζητηθεί το μάθημα 3. Ο βαθμός ενός φοιτητή σε ένα μάθημα, βάσει του οποίου ελέγχεται εάν έχει περάσει τα προαπαιτούμενα δεν αποτελεί ιδιότητα του φοιτητή ούτε το μαθήματος. Μοντελοποιείται ως μια κλάση συσχέτισης μεταξύ Φοιτητή και Μαθήματος. 4. Η εγγραφή ενός φοιτητή σε πτυχιακή υπό την επίβλεψη ενός Καθηγητή συνεπάγεται την ύπαρξη συσχέτιση μεταξύ τους. 5. Πολλαπλότητες: Ένα μάθημα μπορεί να έχει πολλά προαπαιτούμενα, η λίστα μαθημάτων περιλαμβάνει πολλά μαθήματα, ένας Καθηγητής μπορεί να επιβλέπει από κανέναν έως πέντε φοιτητές 6. Ο Χώρος διδασκαλίας περιλαμβάνει ιδιότητα χωρητικότητα 

Αναθ. Μοντέλο του πεδίου του προβλήματος

Διάγραμμα Ακολουθίας See next slide  

Παρατηρήσεις - Γενική παρατήρηση: κατά τη σχεδίαση του συστήματος υπάρχουν πολλές εναλλακτικές. Οι εναλλακτικές μπορεί να εξασφαλίζουν την ίδια λειτουργικότητα, αλλά διαφέρουν ως προς τα ποιοτικά χαρακτηριστικά της σχεδίασης. Στο ανωτέρω διάγραμμα ακολουθίας έχει ληφθεί μέριμνα ώστε η λειτουργικότητα του συστήματος (οι διάφοροι έλεγχοι) να κατανεμηθούν στις κλάσεις οντοτήτων του πεδίου του προβλήματος (Μάθημα, Αίθουσα, Καθηγητής) και να μην συσσωρευτούν σε μια «Θεϊκή» κλάση - Στο ανωτέρω διάγραμμα ακολουθίας αξιοποιείται ο πολυμορφισμός για την αποφυγή πραγματοποίησης ρητού ελέγχου για τον τύπο του μαθήματος (Διδασκόμενο μάθημα ή Πτυχιακή). Η μέθοδος εγγραφής φοιτητή σε μάθημα καλεί την αφηρημένη μέθοδο (checkOtherPreconditions) η οποία υλοποιείται με διαφορετικό τρόπο στις δύο υποκλάσεις της κλάσης Μάθημα. - στο σύστημα έχει εισαχθεί πέραν του Καταλόγου μαθημάτων και κατάλογος διδασκόντων θεωρώντας ότι ο φοιτητής πληκτρολογεί το όνομα του καθηγητή και κατά συνέπεια πρέπει να εντοπιστεί το αντίστοιχο αντικείμενο Καθηγητής - η ακολουθία των ενεργειών στα πρώτα βήματα της λεκτικής περιγραφής έχει τροποποιηθεί ώστε να είναι σαφές ότι ο έλεγχος των προαπαιτουμένων θα πραγματοποιείται από το αντικείμενο τύπου Μάθημα - οι οθόνες που αφορούν σε μηνύματα εξόδου έχουν αφαιρεθεί μια και τα μηνύματα εμφανίζονται στο σχετικό πρόγραμμα στην κονσόλα (για λόγους απλότητας)  

Διάγραμμα Κλάσεων

Υλοποίηση Παρατηρήσεις: - Στον κώδικα των κλάσεων έχουν προστεθεί και άλλες μέθοδοι πέραν αυτών που υπάρχουν στο διάγραμμα κλάσεων για να ελεγχθεί η λειτουργικότητα του συστήματος. Για παράδειγμα, στην κλάση CourseList έχει προστεθεί και μέθοδος προσθήκης μαθήματος - Οι κλάσεις CourseList και ProfessorList έχουν δηλωθεί με στατικές μεθόδους για ευκολία κλήσης τους (χωρίς την ύπαρξη αναφοράς)   (Ο πηγαίος κώδικας βρίσκεται στο επισυναπτόμενο Eclipse Project μαζί με τη μέθοδο main προς επίδειξη της λειτουργικότητας του συστήματος)