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

Σχετικά έγγραφα
Αντικειμενοστραφής. Προγραμματισμού

Αποδεικτικές Διαδικασίες και Μαθηματική Επαγωγή.

Αναγνώριση Προτύπων. Σήμερα! Λόγος Πιθανοφάνειας Πιθανότητα Λάθους Κόστος Ρίσκο Bayes Ελάχιστη πιθανότητα λάθους για πολλές κλάσεις

Κληρονομικότητα. Σήμερα! Κλάση Βάσης Παράγωγη κλάση Απλή κληρονομικότητα Protected δεδομένα Constructors & Destructors overloading

{ i f i == 0 and p > 0

ΣΤΟ ΦΑΡΜΑΚΕΙΟ. Με την πιστοποίηση του έχει πρόσβαση στο περιβάλλον του φαρμακείου που παρέχει η εφαρμογή.

Εισαγωγικά. 1.1 Η σ-αλγεβρα ως πληροφορία

Συναρτήσεις. Σημερινό μάθημα

Pointers. Σημερινό Μάθημα! Χρήση pointer Τελεστής * Τελεστής & Γενικοί δείκτες Ανάκληση Δέσμευση μνήμης new / delete Pointer σε αντικείμενο 2

- 1 - Ποιοι κερδίζουν από το εμπόριο αγαθών και υπηρεσιών; Γιατί η άμεση ανταλλαγή αγαθών, ορισμένες φορές, είναι δύσκολο να

Συναρτήσεις & Κλάσεις

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

HY 280. θεμελιακές έννοιες της επιστήμης του υπολογισμού ΑΣΚΗΣΕΙΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ. Γεώργιος Φρ.

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ. Πρώτη Γραπτή Εργασία. Εισαγωγή στους υπολογιστές Μαθηματικά

Εξαναγκασμένες ταλαντώσεις, Ιδιοτιμές με πολλαπλότητα, Εκθετικά πινάκων. 9 Απριλίου 2013, Βόλος

Δ Ι Α Κ Ρ Ι Τ Α Μ Α Θ Η Μ Α Τ Ι Κ Α. 1η σειρά ασκήσεων

ΣΧΟΛΙΚΟ ΕΤΟΣ ΕΥΘΥΓΡΑΜΜΗ ΟΜΑΛΗ ΚΙΝΗΣΗ ΤΡΙΩΡΗ ΓΡΑΠΤΗ ΕΞΕΤΑΣΗ ΣΤΗ ΦΥΣΙΚΗ A ΛΥΚΕΙΟΥ. Ονοματεπώνυμο Τμήμα

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΤΑΞΗ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Εαρινό Εξάμηνο

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Εαρινό Εξάμηνο

ΣΥΝΟΛΑ (προσέξτε τα κοινά χαρακτηριστικά των παρακάτω προτάσεων) Οι άνθρωποι που σπουδάζουν ΤΠ&ΕΣ και βρίσκονται στην αίθουσα

Αναγνώριση Προτύπων. Σημερινό Μάθημα

ΤΑΞΙΝΟΜΗΣΗ ΟΡΓΑΝΙΣΜΩΝ

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Μούλου Ευγενία

Ας υποθέσουμε ότι ο παίκτης Ι διαλέγει πρώτος την τυχαιοποιημένη στρατηγική (x 1, x 2 ), x 1, x2 0,

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

τεσσάρων βάσεων δεδομένων που θα αντιστοιχούν στους συνδρομητές

ΜΑΘΗΜΑ: ΕΜΠΟΡΙΚΟ ΔΙΚΑΙΟ

ΣΤΟ ΙΑΤΡΕΙΟ. Με την πιστοποίηση του αποκτά πρόσβαση στο περιβάλλον του ιατρού που παρέχει η εφαρμογή.

Σχέσεις και ιδιότητές τους

Αναγνώριση Προτύπων 1

ΜΑΘΗΜΑ: ΟΙΚΟΝΟΜΙΚΗ ΘΕΩΡΙΑ

21/11/2005 Διακριτά Μαθηματικά. Γραφήματα ΒΑΣΙΚΗ ΟΡΟΛΟΓΙΑ : ΜΟΝΟΠΑΤΙΑ ΚΑΙ ΚΥΚΛΟΙ Δ Ι. Γεώργιος Βούρος Πανεπιστήμιο Αιγαίου

Έννοια. Η αποδοχή της κληρονομίας αποτελεί δικαίωμα του κληρονόμου, άρα δεν

Εστω X σύνολο και A μια σ-άλγεβρα στο X. Ονομάζουμε το ζεύγος (X, A) μετρήσιμο χώρο.

Ημέρα 4 η (α) Αγορά και πώληση της εργασιακής δύναμης. (β) Η απόλυτη υπεραξία. Αγορά και πώληση της εργασιακής δύναμης

Οι γέφυρες του ποταμού... Pregel (Konigsberg)

1. Η συγκεκριμένη εφαρμογή της λειτουργίας για τη λήψη φορολογικής ενημερότητας βρίσκεται στην αρχική σελίδα της ιστοσελίδας της Γ.Γ.Π.Σ.

Αναγνώριση Προτύπων. Σημερινό Μάθημα

Ποια έντομα είναι εχθροί των φυτών και πώς θα τα αντιμετωπίσετε

Αναγνώριση Προτύπων. Σημερινό Μάθημα

Μητροπολιτικά Οπτικά Δίκτυα Εισαγωγή

Projects για το εργαστήριο. των Βάσεων Δεδομένων

ΑΣΕΠ 2000 ΑΣΕΠ 2000 Εμπορική Τράπεζα 1983 Υπουργείο Κοιν. Υπηρ. 1983

Ευρωπαϊκά παράγωγα Ευρωπαϊκά δικαιώματα

Ταξινόμηση των μοντέλων διασποράς ατμοσφαιρικών ρύπων βασισμένη σε μαθηματικά κριτήρια.

Κεφάλαιο 2.6: Η Διαδικασία Εντοπισμού Επιχειρηματικών Ευκαιριών. Το έκτο κεφάλαιο πραγματεύεται την ευρύτερη έννοια της

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Εαρινό Εξάμηνο

ΑΡΧΑΙΑ ΕΛΛΗΝΙΚΑ 2014 ΕΝΔΕΙΚΤΙΚΕΣ ΑΠΑΝΤΗΣΕΙΣ

Συγκέντρωση Κίνησης Εισαγωγή Στατική Συγκέντρωση Κίνησης

Η ανισότητα α β α±β α + β με α, β C και η χρήση της στην εύρεση ακροτάτων.

Προτεινόμενα θέματα στο μάθημα. Αρχές Οικονομικής Θεωρίας ΟΜΑΔΑ Α. Στις προτάσεις από Α.1. μέχρι και Α10 να γράψετε στο τετράδιό σας τον αριθμό της

Εισαγωγικές Διαλέξεις στην Θεωρία των Αλυσίδων Markov και των Στοχαστικών Ανελίξεων. Οικονομικό Πανεπιστήμιο Αθηνών

Προτεινόμενα θέματα. στο μάθημα. Αρχές οργάνωσης και διοίκησης επιχειρήσεων. ΟΜΑΔΑ Α: Ερωτήσεις Σωστού Λάθους.

Εφαρμογές στην κίνηση Brown

τους στην Κρυπτογραφία και τα

ΠΑΝΕΠΙΣΤΗΜΙΑΚΑ ΦΡΟΝΤΙΣΤΗΡΙΑ ΚΟΛΛΙΝΤΖΑ ΜΑΘΗΜΑ: ΟΙΚΟΝΟΜΙΚΗ ΘΕΩΡΙΑ

Κεφάλαιο 2.4: Τα βασικά στοιχεία ενός Επιχειρηματικού Σχεδίου (Business Plan) Μέσα από αυτό το κεφάλαιο φαίνεται ότι αφενός η σωστή δημιουργία και

5.1 Μετρήσιμες συναρτήσεις

ΔΙΚΑΙΩΜΑΤΑ ΠΡΟΣΟΡΜΙΣΗΣ, ΠΑΡΑΒΟΛΗΣ, ΠΡΥΜΝΟΔΕΤΗΣΗΣ ΚΑΙ ΕΛΛΙΜΕΝΙΣΜΟΥ ΣΚΑΦΩΝ ΣΕ ΘΑΛΑΣΣΙΕΣ ΠΕΡΙΟΧΕΣ. (ΛΙΜΑΝΙΑ κ.λπ.) ΤΟΠΙΚΗΣ ΑΡΜΟΔΙΟΤΗΤΑΣ ΛΙΜΕΝΙΚΩΝ

«ΔΙΑΚΡΙΤΑ ΜΑΘΗΜΑΤΙΚΑ»

ΚΛΑΔΟΣ: ΠΕ11 ΦΥΣΙΚΗΣ ΑΓΩΓΗΣ

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

2. Κατάθεσε κάποιος στην Εθνική Τράπεζα 4800 με επιτόκιο 3%. Μετά από πόσο χρόνο θα πάρει τόκο 60 ; α) 90 ημέρες β) 1,5 έτη γ) 5 μήνες δ) 24 μήνες

ΘΕΜΑ: Aποτελεσματικότητα της νομισματικής και δημοσιονομικής πολιτικής σε μια ανοικτή οικονομία

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ. Τρίτη Γραπτή Εργασία στη Στατιστική

17 Μαρτίου 2013, Βόλος

ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ Β ΤΑΞΗ. ΘΕΜΑ 1ο

ΜΑΘΗΜΑ: ΓΕΝΙΚΟ ΔΙΟΙΚΗΤΙΚΟ ΔΙΚΑΙΟ ΔΙΚΑΣΤΩΝ

Το κράτος είναι φτιαγμένο για τον άνθρωπο και όχι ο άνθρωπος για το κράτος. A. Einstein Πηγή:

23/2/07 Sleep out Πλατεία Κλαυθμώνος

E n. (, ) Η χρονοεξαρτώµενη εξίσωση Schrödinger, έχει την µορφή ˆ

ΟΡΓΑΝΩΣΗ ΚΑΙ ΛΕΙΤΟΥΡΓΙΑ ΤΟΥ ΚΡΑΤΟΥΣ

( ιμερείς) ΙΜΕΛΕΙΣ ΣΧΕΣΕΙΣ Α Β «απεικονίσεις»

Η εξίσωση Black-Scholes

Κληρονομικότητα. Σήμερα!

Εκφωνήσεις και Λύσεις των Θεμάτων

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

ΠΑΝΕΠΙΣΤΗΜΙΑΚΑ ΦΡΟΝΤΙΣΤΗΡΙΑ ΚΟΛΛΙΝΤΖΑ ΜΑΘΗΜΑ: ΕΡΩΤΗΣΕΙΣ ΟΙΚΟΝΟΜΙΚΗΣ ΘΕΩΡΙΑΣ

Δήμος Σωτήριος Υ.Δ. Εργαστήριο Λογικής & Επιστήμης Υπολογιστών. Τομέας Τεχνολογίας Πληροφορικής & Υπολογιστών Σ.Η.Μ.Μ.Υ. Ε.Μ.Π.

ΜΑΘΗΜΑ: ΒΙΟΛΟΓΙΑ ΟΜΑ Α ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ ΘΕΤΙΚ3Ν ΕΠΙΣΤΗΜ3Ν Γ ΛΥΚΕΙΟΥ

2 Η ΠΑΓΚΥΠΡΙΑ ΟΛΥΜΠΙΑ Α ΦΥΣΙΚΗΣ Γ ΓΥΜΝΑΣΙΟΥ

Εισαγωγικές Διαλέξεις στην Θεωρία των Αλυσίδων Markov και των Στοχαστικών Ανελίξεων. Οικονομικό Πανεπιστήμιο Αθηνών

1. Εστω ότι A, B, C είναι γενικοί 2 2 πίνακες, δηλαδή, a 21 a, και ανάλογα για τους B, C. Υπολογίστε τους πίνακες (A B) C και A (B C) και

Προτεινόμενα θέματα. στο μάθημα. Αρχές οργάνωσης και διοίκησης επιχειρήσεων. ΟΜΑΔΑ Α: Ερωτήσεις Σωστού Λάθους.

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

Γενικό Λύκειο Μαραθοκάμπου Σάμου. Άλγεβρα Β λυκείου. 13 Οκτώβρη 2016

ΨΗΦΙΑΚΑ ΗΛΕΚΤΡΟΝΙΚΑ Σχεδίαση Λογικών Κυκλωμάτων

«Εξατομικεύοντας την επιλογή των πόρων των ψηφιακών βιβλιοθηκών για την υποστήριξη της σκόπιμης μάθησης» Άννα Μαρία Ολένογλου

Αναγνώριση Προτύπων. Σημερινό Μάθημα

ΘΕΜΑ 1ο Α. α) Δίνεται η συνάρτηση F(x)=f(x)+g(x). Αν οι συναρτήσεις f, g είναι παραγωγίσιμες, να αποδείξετε ότι: F (x)=f (x)+g (x).

ΜΑΘΗΜΑ: ΒΙΟΛΟΓΙΑ ΓΕΝΙΚΗΣ ΠΑΙΔΕΙΑΣ Γ ΛΥΚΕΙΟΥ. Επιμέλεια: Βουδούρη Καλλιρρόη. Ριζηνίας 69 & Λασαίας 21 τηλ

Επίλυση ειδικών μορφών ΣΔΕ

ΑΠΟΛΥΤΗΡΙΕΣ ΕΞΕΤΑΣΕΙΣ Γ ΤΑΞΗΣ ΕΝΙΑΙΟΥ ΛΥΚΕΙΟΥ ΤΡΙΤΗ 30 ΜΑΪΟΥ 2000 ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ ΘΕΤΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ: ΧΗΜΕΙΑ ΣΥΝΟΛΟ ΣΕΛΙ ΩΝ: ΕΞΙ (6)

Η Πληροφορική στο Δημοτικό Διδακτικές Προσεγγίσεις Αδάμ Κ. Αγγελής Παιδαγωγικό Ινστιτούτο

Μαθηματικά Πληροφορικής

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

Παράδειγμα. «Κεφάλαιο» «Περιουσία» «Περιουσία» Οικονομική επιστήμη «μέσων», «ανάγκες» «αγαθά» Επιχειρήσεων.

ΜΑΘΗΜΑ: ΠΟΛΙΤΙΚΗ ΟΙΚΟΝΟΜΙΑ-ΔΗΜΟΣΙΑ ΟΙΚΟΝΟΜΙΚΗ

Ημέρα 3 η. (α) Aπό την εργασιακή διαδικασία στη διαδικασία παραγωγής (β) Αξία του προϊόντος και αξία της εργασιακής δύναμης

Transcript:

Αντικειμενοστρεφής Ανάλυση & Σχεδίαση Πρόβλημα Σχεδιάστε το λογισμικό υποστήριξης ενός τραπεζικού συστήματος που θα εξυπηρετεί τους ταμίες και τις Αυτόματες Ταμειολογιστικές Μηχανές (ΑΤΜ) ενός τραπεζικού ομίλου. Κάθε τράπεζα διαθέτει το δικό της υπολογιστή για να συντηρεί τους λογαριασμούς και να επεξεργάζεται τις συναλλαγές τους. Οι τερματικοί σταθμοί των ταμείων ανήκουν στην τράπεζα όπου βρίσκονται και επικοινωνούν απευθείας με τον υπολογιστή της τράπεζας. Οι ταμίες εισάγουν δεδομένα λογαριασμών και δεδομένα συναλλαγών. Οι ΑΤΜ επικοινωνούν με τον κεντρικό υπολογιστή που διενεργεί τις συναλλαγές με τις αντίστοιχες τράπεζες. 2

Πρόβλημα (συνέχεια) Η ΑΤΜ όταν δέχεται τραπεζική κάρτα, αλληλεπιδρά με το χρήστη, επικοινωνεί με τον κεντρικό υπολογιστή για την έγκριση της εξ αποστάσεως συναλλαγής, αποδίδει μετρητά και εκτυπώνει αποδείξεις. Το σύστημα απαιτεί κατάλληλη καταγραφή στοιχείων και πρόνοιες ασφάλειας. Το σύστημα διαχειρίζεται με σωστό τρόπο ταυτόχρονες προσπελάσεις στον ίδιο λογαριασμό. Εσείς πρέπει να σχεδιάσετε το λογισμικό των ΑΤΜ και του συστήματος. Το κόστος του διαμοιραζόμενου συστήματος επιμερίζεται στις τράπεζες σύμφωνα με των αριθμό των πελατών που διαθέτουν τραπεζικές κάρτες. 3 Πρόβλημα ΣΤΑΘΜΟΣ ΤΑΜΙΑ ΑΤΜ ΑΤΜ ΑΤΜ ΚΕΝΤΡΙΚΟΣ ΥΠΟΛΟΓΙΣΤΗΣ Η/Υ Η/Υ 4 2

Αντικειμενοστρεφής Ανάλυση & Σχεδίαση Αναγνώριση αντικειμένων και κλάσεων Αναγνώριση συνδέσεων μεταξύ των αντικειμένων Αναγνώριση ιδιοτήτων των αντικειμένων Οργάνωση και απλοποίηση των κλάσεων αντικειμένων με τη χρήση κληρονομικότητας 5 Αναγνώριση αντικειμένων Στα αντικείμενα περιλαμβάνονται φυσικές οντότητες, όπως σπίτια, εργαζόμενοι κ.α. αλλά και λογικές οντότητες όπως κρατήσεις θέσεων, πρόγραμμα πληρωμών κ.α. Όλες οι κλάσεις πρέπει να έχουν νόημα στο πεδίο της εφαρμογής: αποφεύγονται αντικείμενα όπως συνδετικές λίστες, υπορουτίνες κ.α. Δεν αναφέρονται πάντα όλες οι κλάσεις στις προδιαγραφές της εφαρμογής: κάποιες υπονοούνται ή προκύπτουν από τη γενικότερη γνώση του προβλήματος. 6 3

Αναγνώριση αντικειμένων Οι κλάσεις αντιστοιχούν συνήθως σε ουσιαστικά. Γράψτε μία λίστα από υποψήφιες κλάσεις που προκύπτουν από την περιγραφή του προβλήματος. Στη φάση αυτή δεν μας ενδιαφέρει η κληρονομικότητα ή οι υψηλού επιπέδου abstract κλάσεις. ΠΡΟΔΙΑΓΡΑΦΕΣ ΠΡΟΒΛΗΜΑΤΟΣ ΚΑΤΑΓΡΑΦΗ ΟΥΣΙΑΣΤΙΚΩΝ ΥΠΟΨΗΦΙΕΣ ΚΛΑΣΕΙΣ ΑΠΑΛEIΦΗ ΨΕΥΤΟ-ΚΛΑΣΕΩΝ ΚΛΑΣΕΙΣ ΑΝΤΙΚΕΙΜΕΝΩΝ 7 Αναγνώριση αντικειμένων ΛΟΓΙΣΜΙΚΟ ΤΡΑΠΕΖΙΚΟ ΣΥΣΤΗΜΑ ΤΑΜΙΑΣ ΑΤΜ ΤΡΑΠΕΖΙΚΟΣ ΟΜΙΛΟΣ ΤΡΑΠΕΖΑ Η/Υ ΣΥΝΑΛΛΑΓΗ ΤΕΡΜΑΤΙΚΟ ΤΑΜΕΙΟΥ ΔΕΔΟΜΕΝΑ ΛΟΓΑΡΙΑΣΜΑ ΩΝ ΔΕΔΟΜΕΝΑ ΣΥΝΑΛΛΑΓΩΝ ΚΕΝΤΡΙΚΟΣ ΥΠΟΛΟΓΙΣΤΗΣ ΤΡΑΠΕΖΙΚΗ ΚΑΡΤΑ ΧΡΗΣΤΗΣ ΜΕΤΡΗΤΑ ΑΠΟΔΕΙΞΗ ΣΥΣΤΗΜΑ ΚΑΤΑΓΑΦΗ ΣΤΟΙΧΕΙΩΝ ΠΡΟΝΟΙΑ ΑΣΦΑΛΕΙΑΣ ΠΡΟΣΠΕΛΑΣΗ ΚΟΣΤΟΣ ΠΕΛΑΤΗΣ 8 4

Αναγνώριση αντικειμένων Απαλείφονται οι κλάσεις που: είναι πλεονάζουσες είναι μη σχετικές είναι ασαφείς αποτελούν ιδιότητες άλλων κλάσεων αποτελούν λειτουργίες αντικειμένων αποτελούν ρόλο που ηκλάση παίζει σε μία σύνδεση π.χ. κάτοχος. Μία αποδεκτή κλάση θα ήταν π.χ. ο πελάτης έχουν σχέση με την υλοποίηση του συστήματος 9 Αναγνώριση αντικειμένων ΣΥΣΤΗΜΑ ΚΟΣΤΟΣ ΧΡΗΣΤΗΣ μη σχετική ΠΡΟΝΟΙΑ ΑΣΦΑΛΕΙΑΣ ΔΕΔΟΜΕΝΑ ΛΟΓΑΡΙΑΣΜΑ ΩΝ πλεονάζουσα ΚΑΤΑΓΑΦΗ ΣΤΟΙΧΕΙΩΝ ΑΠΟΔΕΙΞΗ ΓΡΑΜΜΗ ΕΠΙΚΟΙΝΩΝΙΑΣ ΚΙΝΗΣΗ ΣΥΝΑΛΛΑΓΩΝ ΤΡΑΠΕΖΙΚΟ ΣΥΣΤΗΜΑ ΜΕΤΡΗΤΑ ΠΡΟΣΠΕΛΑΣΗ ΛΟΓΙΣΜΙΚΟ ασαφείς ΔΕΔΟΜΕΝΑ ΣΥΝΑΛΛΑΓΩΝ υλοποίηση ιδιότητες 0 5

Αποδεκτές κλάσεις ΑΤΜ ΤΡΑΠΕΖΑ Η/Υ ΤΡΑΠΕΖΙΚΗ ΚΑΡΤΑ ΤΑΜΙΑΣ ΤΕΡΜΑΤΙΚΟ ΤΑΜΕΙΟΥ ΚΕΝΤΡΙΚΟΣ ΥΠΟΛΟΓΙΣΤΗΣ ΤΡΑΠΕΖΙΚΟΣ ΟΜΙΛΟΣ ΠΕΛΑΤΗΣ ΣΥΝΑΛΛΑΓΗ Αντικειμενοστρεφής Ανάλυση & Σχεδίαση Αναγνώριση αντικειμένων και κλάσεων Αναγνώριση συνδέσεων μεταξύ των αντικειμένων Αναγνώριση ιδιοτήτων των αντικειμένων Οργάνωση και απλοποίηση των κλάσεων αντικειμένων με τη χρήση κληρονομικότητας 2 6

Αναγνώριση συνδέσεων Οποιασδήποτε μορφής εξάρτηση μεταξύ δύο ή περισσότερων κλάσεων είναι σύνδεση. Επίσης, σύνδεση είναι και η αναφορά μιας κλάσης σε μία άλλη. Οι ιδιότητες κλάσεων δεν θα πρέπει να αναφέρονται ως κλάσεις, αλλά πρέπει να χρησιμοποιούνται συνδέσεις. Όταν σε αυτό το στάδιο της σχεδίασης ανατίθενται σε ιδιότητες αντικειμένων τιμές άλλων αντικειμένων, τότε γίνεται εμφανής η σύνδεση μεταξύ των αντικειμένων σε ένα διάγραμμα συνδέσεων. 3 Αναγνώριση συνδέσεων Οι συνδέσεις υλοποιούνται με διάφορους τρόπους, αλλά σε αυτή τη φάση της σχεδίασης δεν μας απασχολεί η υλοποίηση. Οι συνδέσεις εκφράζονται συνήθως με ρήματα ή με φράσεις με ρήματα. Μπορεί να εκφράζουν θέση (δίπλα στο, μέρος του, περιέχεται στο), ενέργειες, επικοινωνία (μιλά στο), κατοχή (έχει, μέρος του) ήκάποιασυνθήκη(δουλεύει για το, είναι παντρεμένος στο, διευθύνει) κ.α. 4 7

Αναγνώριση συνδέσεων Φράσεις με ρήματα Το τραπεζικό σύστημα εξυπηρετεί τους ταμίες και τις ΑΤΜ. Οι ΑΤΜ ανήκουν στον τραπεζικό όμιλο. Η τράπεζα διαθέτει έναν Η/Υ τράπεζας. Ο Η/Υ της τράπεζας συντηρεί λογαριασμούς. Ο Η/Υ της τράπεζας επεξεργάζεται συναλλαγές λογαριασμών. Η τράπεζα διαθέτει τερματικό σταθμό ταμείου. Ο τερματικός σταθμός του ταμείου επικοινωνεί με τον Η/Υ της τράπεζας. Ο ταμίας εισάγει συναλλαγές λογαριασμών. 5 Αναγνώριση συνδέσεων Οι ΑΤΜ επικοινωνούν με τον κεντρικό υπολογιστή Ο κεντρικός υπολογιστές διενεργεί τη συναλλαγή με την τράπεζα Η ΑΤΜ δέχεται τραπεζική κάρτα. Η ΑΤΜ αλληλεπιδρά με το χρήστη. Η τραπεζική κάρτα εγκρίνει την εξ αποστάσεως συναλλαγή Η ΑΤΜ αποδίδει μετρητά. Η ΑΤΜ εκτυπώνει αποδείξεις. Το σύστημα διαχειρίζεται προσπελάσεις. Η τράπεζα παρέχει το λογισμικό. Το κόστος επιμερίζεται στις τράπεζες. 6 8

Αναγνώριση συνδέσεων Ρήματα που εννοούνται Οόμιλοςαποτελείται από τράπεζες. Η τράπεζα διατηρεί τους λογαριασμούς. Ο όμιλος έχει έναν κεντρικό υπολογιστή. Το σύστημα κάνει καταγραφή στοιχείων. Το σύστημα παρέχει ασφάλεια. Οι πελάτες έχουν τραπεζικές κάρτες. 7 Αναγνώριση συνδέσεων Ρήματα που προκύπτουν από τη γνώση του πεδίου της εφαρμογής Η τραπεζική κάρτα έχει προσπέλαση σε λογαριασμούς. Η τράπεζα απασχολεί ταμίες. 8 9

Αναγνώριση συνδέσεων Απαλείφονται οι συνδέσεις που: είναι συνδέσεις μεταξύ κλάσεων που έχουν απαλειφθεί δεν είναι σχετικές ή αφορούν την υλοποίηση του συστήματος εκφράζουν ενέργειες. Μία σύνδεση πρέπει να εκφράζει δομική ιδιότητα της εφαρμογής και όχι παροδικά γεγονότα. τριπλές συνδέσεις: οι τριπλές συνδέσεις συνήθως αποσυντίθενται σε διπλές συναγόμενες συνδέσεις: δεν περιλαμβάνουμε συνδέσεις που προκύπτουν από άλλες συνδέσεις γιατί 9 θεωρούνται πλεονασματικές συνδέσεις Αναγνώριση συνδέσεων Προσδιορίζουμε τη σημασία των συνδέσεων ως εξής: αποφεύγουμε την περιγραφή του πως ή του γιατί προκύπτει μία κατάσταση. Περιγράφουμε το τι είναι μία κατάσταση. Π.χ. «Η τράπεζα συντηρεί λογαριασμούς.» είναι μία ενέργεια. Το αναδιατυπώνουμε ως «Η τράπεζα διατηρεί λογαριασμούς.» περιορισμένες συνδέσεις (μη μοναδικά ονόματα) π.χ. κωδικοί αναγνωρίζουμε πολλαπλότητα συμπληρώνουμε τις συνδέσεις που λείπουν 20 0

ΤΡΑΠΕΖΙΚΟΣ ΟΜΙΛΟΣ ΚΩΔΙΚΟΣ αποτελείται από * ΤΡΑΠΕΖΑ 0..* διατηρεί..* έχει ΠΕΛΑΤΗΣ έχει ΚΕΝΤΡΙΚΟΣ επικοινωνεί ΥΠΟΛΟΓΙΣΤΗΣ..* επικοινωνεί διαθέτει Η/Υ επικοινωνεί..* ΤΕΡΜΑΤΙΚΟ ΤΑΜΕΙΟΥ διαθέτει απασχολεί..* ΤΑΜΙΑΣ εισάγει 0..* εισάγει..* ά αφορά ΣΥΝΑΛΛΑΓΗ ΛΟΓΑΡΙΑΣΜΟΥ..* αφορά..* έχει προσπέλαση έχει..*..*..* ΑΤΜ εισάγει..* ΣΥΝΑΛΛΑΓΗ ΕΞ ΑΠΟΣΤΑΣΕΩΣ..* εξουσιοδοτεί ΤΡΑΠΕΖΙΚΗ ΚΑΡΤΑ..* 2 Αναγνώριση συνδέσεων Τύποι συσχετίσεων μεταξύ κλάσεων: γενίκευση (κληρονομικότητα) σύνδεση κανονικές συνδέσεις περιλαμβάνει (αποτελείται από) 22

Παράδειγμα #include Person.h class Apartment { private: Person Renter; public: Apartment (); ~Apartment ();... Person get_renter(); void set_renter(person value); }; #include Apartment.h class Person { private: Apartment Residence; public: Person (); ~Person ();... Apartment get_residence(); void set_residence(apartment value); }; Person ΜΕ ΡΟΛΟΥΣ Renter Residence Apartment 23 PERSON reads BOOK #include Person.h class Book { private: Person the_person; public: Book (); ~Book ();... const Person get_the_person(); void set_the_person(person value); }; Person Book::get_the_Person() { return the_person; } void Book::set_the_Person(Person value) { the_person = value; } #include Book.h class Person { private: Book the_book; public: Person(); ~Person();... Book get_the_book(); void set_the_book(book value); }; Book Person::get_the_Book() { return the_book; } void Person::set_the_Book(Book value){ the_book = value; } 24 2

Αντικειμενοστρεφής Ανάλυση & Σχεδίαση Αναγνώριση αντικειμένων και κλάσεων Αναγνώριση συνδέσεων μεταξύ των αντικειμένων Αναγνώριση ιδιοτήτων των αντικειμένων Οργάνωση και απλοποίηση των κλάσεων αντικειμένων με τη χρήση κληρονομικότητας 25 Αναγνώριση ιδιοτήτων Οι ιδιότητες συνήθως αντιστοιχούν σε ουσιαστικά που ακολουθούνται από κτητικές φράσεις του τύπου «το χρώμα του αυτοκινήτου». Επίθετα όπως «κόκκινο» εκφράζουν συνήθως τιμές ιδιοτήτων. Σε αντίθεση με τις συνδέσεις και τις κλάσεις οι ιδιότητες των αντικειμένων είναι λιγότερο πιθανό να περιγράφονται πλήρως στις προδιαγραφές της εφαρμογής. 26 3

Αναγνώριση ιδιοτήτων παραγόμενες ιδιότητες πρέπει να παραλείπονται π.χ. η «ηλικία» προκύπτει από τη «ημερομηνία γέννησης» συχνά επιβάλλεται η αναγνώριση ιδιοτήτων σύνδεσης. π.χ. σε μία πολλά προς πολλά σύνδεση μεταξύ των ΜΕΤΟΧΟΣ και ΕΤΑΙΡΕΙΑ υπάρχει η ιδιότητας σύνδεσης «αριθμός μετοχών» 27 Αναγνώριση ιδιοτήτων Απαλείφουμε μη απαραίτητες και λάθος ιδιότητες με βάση τα εξής κριτήρια: αν έχουν επιλεγεί ως αντικείμενα αν είναι ιδιότητες σύνδεσης σε μία πολλά προς πολλά σύνδεση μη σχετική ιδιότητα: μία ιδιότητα που φαίνεται να είναι εντελώς διαφορετική και ότι δε σχετίζεται με τις άλλες ιδιότητες της κλάσης. Μπορεί να είναι ένδειξη ότι η κλάση πρέπει να χωριστεί σε δύο διακριτές κλάσεις. 28 4

ΤΡΑΠΕΖΙΚΟΣ ΟΜΙΛΟΣ ΚΩΔΙΚΟΣ αποτελείται από * ΤΡΑΠΕΖΑ 0..* διατηρεί..* έχει ΠΕΛΑΤΗΣ έχει ΚΕΝΤΡΙΚΟΣ επικοινωνεί ΥΠΟΛΟΓΙΣΤΗΣ..* επικοινωνεί διαθέτει Η/Υ επικοινωνεί..* ΤΕΡΜΑΤΙΚΟ ΤΑΜΕΙΟΥ διαθέτει απασχολεί..* ΤΑΜΙΑΣ εισάγει 0..* εισάγει..* ά αφορά ΣΥΝΑΛΛΑΓΗ ΛΟΓΑΡΙΑΣΜΟΥ..* αφορά..* έχει προσπέλαση έχει..*..*..* ΑΤΜ εισάγει..* ΣΥΝΑΛΛΑΓΗ ΕΞ ΑΠΟΣΤΑΣΕΩΣ..* εξουσιοδοτεί ΤΡΑΠΕΖΙΚΗ ΚΑΡΤΑ..* 29 ΤΡΑΠΕΖΙΚΟΣ ΟΜΙΛΟΣ έχει (9) ΚΕΝΤΡΙΚΟΣ ΥΠΟΛΟΓΙΣΤΗΣ ΚΩΔΙΚΟΣ ΣΤΑΘΜΟΥ επικοινωνεί (0)..* ΑΤΜ ΜΕΤΡΗΤΑ ΔΙΑΝΕΜΗΘΕΝΤΑ ΚΩΔΙΚΟΣ ΚΩΔΙΚΟΣ αποτελείται από () επικοινωνεί * διαθέτει (7) Η/Υ..* επικοινωνεί (8) ΤΕΡΜΑΤΙΚΟ ΤΑΜΕΙΟΥ εισάγει..* ΤΡΑΠΕΖΑ ΚΩΔΙΚΟΣ ΛΟΓ/ΜΟΥ ΚΩΔΙΚΟΣ ΚΩΔΙΚΟΣ ΣΤΑΘΜΟΥ ΕΡΓΑΖ/ΝΟΥ διαθέτει (6) απασχολεί (5)..* ΤΑΜΙΑΣ ΟΝΟΜΑ εισάγει () διατηρεί (2) ΥΠΟΛΟΙΠΟ ΠΙΣΤΩΤ. ΟΡΙΟ ΤΥΠΟΣ..* 0..* ά αφορά αφορά..* έχει έχει προσπέλαση (4)..*..*..* ΣΥΝΑΛΛΑΓΗ ΛΟΓΑΡΙΑΣΜΟΥ εισάγει 0..* ΤΥΠΟΣ ΗΜ/ΝΙΑ - ΩΡΑ ΠΟΣΟ ΣΥΝΑΛΛΑΓΗ ΕΞ..*..* ΑΠΟΣΤΑΣΕΩΣ ΤΡΑΠΕΖΙΚΗ..* ΚΑΡΤΑ..* ΤΥΠΟΣ ΗΜ/ΝΙΑ - ΩΡΑ εξουσιοδοτεί PASSWORD ΠΟΣΟ ΠΕΛΑΤΗΣ ΟΝΟΜΑ ΔΙΕΥΘΥΝΣΗ έχει (3) 30 5

Αντικειμενοστρεφής Ανάλυση & Σχεδίαση Αναγνώριση αντικειμένων και κλάσεων Αναγνώριση συνδέσεων μεταξύ των αντικειμένων Αναγνώριση ιδιοτήτων των αντικειμένων Οργάνωση και απλοποίηση των κλάσεων αντικειμένων με τη χρήση κληρονομικότητας 3 Απλοποίηση των κλάσεων αντικειμένων Η κληρονομικότητα μπορεί να ενσωματωθεί στα διάγραμμα κλάσεων με δύο τρόπους: από κάτω προς τα πάνω με τη γενίκευση των κοινών στοιχείων δύο ή περισσοτέρων κλάσεων σε μία υπερκλάση. Ψάχνουμε για κλάσεις με παρόμοιες ιδιότητες, συνδέσεις ή λειτουργίες. Για παράδειγμα οι κλάσεις ΣΥΝΑΛΛΑΓΗ ΛΟΓΑΡΙΑΣΜΟΥ και ΣΥΝΑΛΛΑΓΗ ΕΞ ΑΠΟΣΤΑΣΕΩΣ. 32 6

Απλοποίηση των κλάσεων αντικειμένων Επιτρέπεται να προβούμε σε επανακαθορισμό κάποιων ιδιοτήτων ή ακόμη και κλάσεων αλλά δεν πρέπει αυτό να γίνεται άκριτα. από πάνω προς τα κάτω με την εξειδίκευση μιας κλάσης σε περισσότερο ειδικές κλάσεις Όταν υπάρχουν ιεραρχίες κλάσεων, οι συνδέσεις και οι ιδιότητες θα ορίζονται στις ειδικές κλάσεις και όχι στις υπερκλάσεις. 33 Άσκηση Ο Γιώργος αποφασίζει να ανοίξει ένα μαγαζί πρόχειρου φαγητού (fast food). Γνωρίζει πως χρειάζεται ένα φούρνο μικροκυμάτων, μια τοστιέρα, ένα ψυγείο, ένα πλυντήριο πιάτων, και ορισμένα άλλα αντικείμενα, τα οποίαείναι ί απαραίτητα για να παρέχει σωστές υπηρεσίες το μαγαζί του. Ο Γιώργος αρχίζει με την ετοιμασία του χώρου και όταν αυτός είναι έτοιμος, ειδοποιεί να του φέρουν και εγκαταστήσουν τα επί μέρους αντικείμενασυσκευές που απαρτίζουν το fast food. Μια ανακοίνωση στην είσοδο κάτω από την πινακίδα fast food ο Γιώργος γράφει «Ζητούνται υπάλληλοι». Μετά από μερικές μέρες το μαγαζί είναι έτοιμο, και ο Γιώργος με τους δύουπαλλήλους που ήδη προσέλαβε, τη Μαίρη και το Νίκο, είναι έτοιμοι ναυποδεχτούν τον πρώτο τους πελάτη. Ο Χρήστος, μπαίνει στο μαγαζί. «Ένα τοστ με τυρί ζαμπόν παρακαλώ, μια τυρόπιτα και μια παγωμένη ΗΒΗ». Ο Γιώργος λέει στη Μαίρη «Φτιάξε σε παρακαλώ το τοστ», και αυτός αναλαμβάνει την τυρόπιτα. Διαπιστώνει όμως πως είναι κρύα και αποφασίζει να χρησιμοποιήσει το φούρνο μικροκυμάτων. Μετά από λίγο ο Χρήστος πήρε μια σακούλα και αφού πλήρωσε βγήκε από το μαγαζί. 34 7