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

Σχετικά έγγραφα
Τεχνολογία Λογισμικού

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

Ανάλυση & Προδιαγραφή Απαιτήσεων Λογισμικού & Μοντέλα Δομημένης Ανάλυσης:

Διάγραμμα Ροής Δεδομένων

Διάγραμμα Ροής Δεδομένων Δ.Ρ.Δ.

Δόμηση Απαιτήσεων: Μοντελοποίηση Διεργασιών

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

περιεχόμενα παρουσίασης

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

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

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

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

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

ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΔΙΑΓΡΑΜΜΑΤΑ ΡΟΗΣ ΔΕΔΟΜΕΝΩΝ (5)

Διαγράμματα Αλληλεπίδρασης. Διαγράμματα Ακολουθίας Διαγράμματα Συνεργασίας

5. (Λειτουργικά) Δομικά Διαγράμματα

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων 21/11/2016. Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια.

Δυαδικό Σύστημα Αρίθμησης

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών

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

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

Τεχνολογία Λογισµικού Ι Κεφάλαιο 3

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

Υποδείγματα Ανάπτυξης

Επιχειρηµατικές ιαδικασίες: Εισαγωγικές Έννοιες & Αρχικά στάδια µοντελοποίησης

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον. Διάρκεια 3 ώρες. Όνομα... Επώνυμο... Βαθμός...

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

Δομές Ακολουθίας- Επιλογής - Επανάληψης. Δομημένος Προγραμματισμός

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

Δεδομένων. Μοναστηρίου 7, Άγιος Στέφανος. Tηλ.: Φαξ: Website:

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

Λεξικό Δεδομένων (Ι)

<<ΔΗΜΗΤΡΗΣ ΜΑΝΩΛΗΣ ΦΥΣΙΚΟΣ ΜCs>> 1

Βασίλειος Κοντογιάννης ΠΕ19

Εισαγωγή στην ανάλυση

Προγραμματισμός Η/Υ. Αλγόριθμοι. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος

Διοίκηση Παραγωγής και Υπηρεσιών

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

2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ

4η ιάλεξη. UML ιαγράμματα αλληλεπίδρασης

Ενότητα 12 (κεφάλαιο 28) Αρχιτεκτονικές Εφαρμογών

. Μεθοδολογία Προγραμματισμού. UML Διαγράμματα. Νικόλαος Πεταλίδης. Εισαγωγή Εαρινό Εξάμηνο 2014

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

5 ΕΙΣΑΓΩΓΗ ΣΤΗ ΘΕΩΡΙΑ ΑΛΓΟΡΙΘΜΩΝ

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

Ανάλυση Περιπτώσεων Χρήσης

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΗΜΕΡΗΣΙΩΝ

Εισαγωγή στην εφαρμογή Βασική Σελίδα (Activity) Αναζήτηση Πελάτη... 6 Προβολή Πελάτη... 7 Επεξεργασία Πελάτη... 10

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον. ΚΕΦΑΛΑΙΟ 2 Βασικές Έννοιες Αλγορίθμων

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

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

Ιστορικό. *Ομάδα ανάπτυξης: Γρεασίδης Θοδωρής: 265 Κουτσαυτίκης Δημήτρης: 258 Μπούρα Βάγια: 257 Πετράκη Ελένη: 266 Φουντά Σταυρούλα: 256

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΗΜΕΡΗΣΙΩΝ

Έγγραφο Περιγραφής Απαιτήσεων Λογισμικού

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

Η Διαδικασία Σχεδιασμού Συστημάτων

8 Τεχνικός Εφαρμογών Πληροφορικής με Πολυμέσα

ΚΕΦΑΛΑΙΟ 10 ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ

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

ΜΕΛΕΤΗ ΤΟΥ ΦΑΙΝΟΜΕΝΟΥ ΤΗΣ ΔΙΑΘΛΑΣΗΣ ΣΕ «ΕΙΚΟΝΙΚΟ ΕΡΓΑΣΤΗΡΙΟ»

ισδιάστατοι μετασχηματισμοί ΚΕΦΑΛΑΙΟ 4: ισδιάστατοι γεωμετρικοί μετασχηματισμοί

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΕ ΓΛΩΣΣΟΜΑΘΕΙΑ

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

A. Να γράψετε τον αριθμό της κάθε μιας από τις παρακάτω προτάσεις και δίπλα. το γράμμα Σ, εάν είναι σωστή, ή το γράμμα Λ, εάν είναι λανθασμένη.

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

Το Μοντέλο Οντοτήτων Συσχετίσεων

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ. Α2. Να αναφέρετε ονομαστικά: i) τα αλγοριθμικά κριτήρια ii) τους τρόπους αναπαράστασης αλγορίθμου. (μονάδες 10)

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

Ποιότητα και Πρότυπα στη Διοίκηση Επιχειρήσεων Συστήµατα Διασφάλισης Ποιότητας ISO Διεργασιακή Προσέγγιση Διάλεξη 3

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ. Διαδικτυακό σύστημα διαχείρισης αιτήσεων για μεταπτυχιακό

ΔΡΔ: Διαγράμματα Ροής Δεδομένων

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 2 ο

Κατανόηση των παραγόντων που συνδέονται με την εξέλιξη των συστημάτων ERP

Κεφ. 2 Θέματα Θεωρητικής Επιστήμης Υπολογιστών. Κοντογιάννης Βασίλειος ΠΕ19

Επιμορφωτικό Σεμινάριο Διδακτικής των Μαθηματικών με ΤΠΕ

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

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

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

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές

ΑΣΚΗΣΗ 3 η (8/4/2008)

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

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

Εισαγωγή στα Πληροφοριακά Συστήματα

Α2. Δίνεται το επόμενο τμήμα προγράμματος σε ΓΛΩΣΣΑ:

Τεχνικές Αναπαράστασης αλγορίθµων Ψευδοκώδικας Διάγραµµα Ροής Αλγοριθµικές δοµές (Ακολουθία Επιλογή Επανάληψη)

Προγραμματισμός Υπολογιστών

Σκοπός του μαθήματος

Αρχές Προγραμματισμού Η/Υ Μέθοδοι παρουσίασης του αλγόριθμου και Βασικές έννοιες

Θεωρία Προγραμματισμού

Αποτελείται από τρεις (3) τόμους. Τόμος Α : Τεχνολογία Λογισμικού Ι Τόμος Β : Βάσεις Δεδομένων και Τόμος Γ : Λειτουργικά Συστήματα Ι.

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΗΜΕΡΗΣΙΩΝ

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

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΗΜΕΡΗΣΙΩΝ

ΚΕΦΑΛΑΙΟ 3. Ανάλυση Απαιτήσεων και Καθορισμός Προδιαγραφών

Μέρος B: Εισαγωγή στις έννοιες παιδαγωγικής αξιοποίησης των ΤΠΕ με εφαρμογή στη διδακτική της Πληροφορικής Οργάνωση και Σχεδίαση Μαθήματος

Εγχειρίδιο Χρήστη. Ιούνιος Σελίδα - 1 -

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

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΗΜΕΡΗΣΙΩΝ

Transcript:

Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Τεχνολογία Λογισμικού 14/11/2016 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr

Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Μοντέλα Παράστασης Λογισμικού

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

Μοντέλο παράστασης λογισμικού Ένα μοντέλο παράστασης λογισμικού είναι ένα διάγραμμα ή ένα σύνολο από ομοειδή διαγράμματα, το οποίο περιγράφει το λογισμικό από μία συγκεκριμένη οπτική γωνία Κανένα μοντέλο παράστασης λογισμικού δεν είναι πλήρες! Δεν περιέχει όλες τις δυνατές πληροφορίες για το λογισμικό Είναι μία αφαιρετική περιγραφή κάποιων επιλεγμένων χαρακτηριστικών του και μόνο επιλέγονται και περιγράφονται μόνο εκείνα τα στοιχεία στα οποία εστιάζεται η προσοχή...

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

Μοντέλα δομημένης ανάλυσης Διάγραμμα Ροής Δεδομένων (ΔΡΔ) Διάγραμμα Οντοτήτων-Συσχετίσεων (ΔΟΣ) Διάγραμμα Μετάβασης Καταστάσεων (ΔΜΚ) Λεξικό Δεδομένων

Μοντέλα Παράστασης Λογισμικού Διαγράμματα που περιγράφουν το λογισμικό από μία συγκεκριμένη οπτική γωνία Διάγραμμα ροής δεδομένων: δεδομένα «ρέουν» και μετασχηματίζονται σε νέα δεδομένα από μονάδες λογισμικού / μετασχηματισμούς Διάγραμμα οντοτήτων-συσχετίσεων: περιγράφει οντότητες δεδομένων και συσχετίσεις μεταξύ αυτών Διάγραμμα μετάβασης καταστάσεων: μετάβαση από τη μία κατάσταση στην άλλη ανάλογα με εξωτερικά γεγονότα Λεξικό δεδομένων : περιλαμβάνει όλα τα σχετιζόμενα με δεδομένα στοιχεία των μοντέλων παράστασης λογισμικού

Μοντέλα δομημένης ανάλυσης ΛΕΞΙΚΟ ΔΕΔΟΜΕΝΩΝ ΔΙΑΓΡΑΜΜΑ ΜΕΤΑΒΑΣΗΣ ΚΑΤΑΣΤΑΣΕΩΝ

Μοντέλα δομημένης ανάλυσης Συμπληρωματικά και συνεπή μεταξύ τους! Κανένα μοντέλο δεν περιγράφει πλήρως την εφαρμογή από μόνο του! ΟΛΑ μαζί όμως ναι! Οι οντότητες που αναφέρονται σε κάθε μοντέλο δεν είναι ξένες με αυτές που αναφέρονται στα υπόλοιπα Λεξικό Δεδομένων! Εξασφαλίζει τη συνέπεια περιέχει αναφορές σε όλες τις οντότητες που περιλαμβάνονται στα μοντέλα

Δομημένη Ανάλυση και Διαγράμματα Ροής Δεδομένων Η δομημένη ανάλυση είναι προσαρμοσμένη στη ροή των δεδομένων Περιγραφή της ροής των δεδομένων προς, μέσα στο και από το σύστημα Πλεονέκτημα: Μείωση της πολυπλοκότητας του προβλήματος (topdown approach) Η δομημένη ανάλυση βασίζεται σε ΔΡΔ και λεξικά δεδομένων

Ιεραρχική Αναπαράσταση Η συνολική λειτουργία του συστήματος αναπαρίσταται με μοναδικό μετασχηματισμό πληροφορίας (φυσαλίδα) Είσοδοι από μία ή περισσότερες εξωτερικές οντότητες (κουτιά) Ο μετασχηματισμός (σύστημα) παράγει εξόδους προς εξωτερικές οντότητες (κουτιά)

Διάγραμμα Ροής Δεδομένων Δεδομένα «ρέουν» και μετασχηματίζονται σε νέα δεδομένα από μονάδες λογισμικού Κάθε μονάδα λογισμικού είναι ένας μετασχηματισμός που εφαρμόζεται στα δεδομένα εισόδου προκειμένου να δημιουργήσει δεδομένα εξόδου Τα ΔΡΔ παρουσιάζουν τη ροή και τους μετασχηματισμούς των δεδομένων μέσα από το λογισμικό Επικεντρώνονται στις διεργασίες που μετασχηματίζουν τις ροές των εισερχόμενων δεδομένων (είσοδος, input) σε ροές εξερχόμενων δεδομένων (έξοδος, output) Οι διεργασίες που εκτελούν τους μετασχηματισμούς αυτούς συνήθως δημιουργούν και χρησιμοποιούν δεδομένα αποθήκευση Κάποιες εξωτερικές οντότητες στέλνουν και λαμβάνουν τα δεδομένα από το λογισμικό.

Διάγραμμα Ροής Δεδομένων Απαιτήσεις με βάση τη ροή δεδομένων Η πληροφορία σε ροή παριστάνεται από βέλη με ονομασία Οι μετασχηματισμοί (επεξεργασία) παριστάνονται με κύκλους και ονομασία Οι αποθήκες πληροφορίας παριστάνονται με δύο παράλληλες γραμμές και ονομασία

Διάγραμμα Ροής Δεδομένων Χαρακτηριστικά ενός ΔΡΔ: Εύκολα κατανοητό Ακριβές στο επίπεδο του ποιες λειτουργίες γίνονται και όχι στο πώς Αποτελείται από πολλά διαφορετικά τμήματα, που αφορούν επιμέρους τμήματα λογισμικού Σχεδιάζεται σε διαφορετικά επίπεδα λεπτομέρειας Δεν περιέχει πληροφορία για τη χρονική αλληλουχία με την οποία συμβαίνουν οι μετασχηματισμοί δεδομένων Είναι εύκολο να υποστεί μεταβολές, όταν κριθεί αναγκαίο

Βασικές Έννοιες Οι πληροφορίες μετασχηματίζονται καθώς ρέουν στο σύστημα Έμφαση στη ροή δεδομένων Είσοδοι / Έξοδοι παραμένουν ίδιες σε κάθε διαφορετικό επίπεδο ανάλυσης

Συμβολισμοί

Συμβολισμοί Εξωτερική Οντότητα (Πηγή Αποδέκτης Δεδομένων) Λειτουργία Διαδικασία Διεργασία Μετασχηματισμός Δεδομένων Ροή Δεδομένων Αποθήκη Δεδομένων

Εξωτερική Οντότητα Πηγή ή Αποδέκτης Δεδομένων Παραδείγματα: χρήστης του συστήματιος ή άλλη εξωτερική, προς την εφαρμογή που περιγράφουμε, εφαρμογή Μπορεί να επαναλαμβάνονται στο ίδιο ΔΡΔ (για λόγους καλής διευθέτησης του ΔΡΔ) Τα δεδομένα πρέπει πάντοτε να προέρχονται από κάπου και πρέπει να αποστέλλονται σε κάποιον

Λειτουργία - Διαδικασία Μετασχηματισμός Δεδομένων (αλλάζει την είσοδο σε έξοδο) Παραδείγματα: υπολογισμός φόρων, καθορισμός εμβαδού, μορφοποίηση αναφοράς, εμφάνιση γραφήματος Τα Δεδομένα πρέπει πάντοτε να υπόκεινται σε επεξεργασία με κάποιο τρόπο για να επιτευχθεί η λειτουργία του συστήματος

Ροή Δεδομένων Τα δεδομένα ρέουν στο σύστημα, εισέρχονται ως είσοδος και κατόπιν «μετασχηματίζονται» σε έξοδο. βάση ύψος Υπολογισμός εμβαδού τριγώνου εμβαδόν

Ροές Δεδομένων Τα δεδομένα πολλές φορές αποθηκεύνται για να χρησιμοποιηθούν μετέπειτα Δεδομένα Αισθητήρα Υπολογισμός Θέσης Θέση Υπάρχουσες Τιμές Νέες Τιμές Αρχείο Δεδομένων

Απλό παράδειγμα Έστω ότι θέλουμε να αναπαραστήσουμε την υλοποίηση της αριθμητικής πράξης (Α+Β) 2 όπου Α, Β πραγματικοί αριθμοί, εκ των οποίων ο Α δίνεται από το χρήστη της εφαρμογής και ο Β διαβάζεται από κάποια αποθήκη δεδομένων (αρχείο)

ΔΡΔ παραδείγματος Μαθητής Α Eκτέλεση πρόσθεσης Γ Εκτέλεση τετραγώνου Δ Μαθητής Β Αρχείο

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

Διαφορετικά επίπεδα λεπτομέρειας Ιεραρχική δομή 1 ο επίπεδο Επίπεδο 0 Ολόκληρη η εφαρμογή λογισμικού παριστάνεται ως ένας μετασχηματισμός που δέχεται δεδομένα από τις πηγές και δίνει δεδομένα στους αποδέκτες Διαδοχική εκλέπτυνση μετασχηματισμού και ανάλυση σε περισσότερα επίπεδα λεπτομέρειας, αρίθμηση μετασχηματισμών (π.χ. Ο μετασχηματισμός 4 αναλύεται στους 4.1 έως 4.5) Βασική αρχή: Διατήρηση συνέπειας στη ροή της πληροφορίας κατά τη μετάβαση από ένα επίπεδο λεπτομέρειας σε ένα επόμενο (μεγαλύτερης λεπτομέρειας), η είσοδος και η έξοδος σε κάθε εκλέπτυνση παραμένει η ίδια

Διαδοχική Εκλέπτυνση Διαδοχική εκλέπτυνση των φυσαλίδων Οι φυσαλίδες αριθμούνται (π.χ. Ο μετασχηματισμός 4 αναλύεται στους 4.1 έως 4.5) Βασική αρχή: Διατήρηση της συνέχειας στη ροή της πληροφορίας (η είσοδος και η έξοδος σε κάθε εκλέπτυνση παραμένει η ίδια)

ΔΡΔ Λεξικό δεδομένων Τα ΔΡΔ δεν παρέχουν καμία σαφή υπόδειξη της ακολουθίας της επεξεργασίας παρόλο που μπορεί να την υπονοούν Με διαδοχική εκλέπτυνση των ΔΡΔ δημιουργούνται πιο λεπτομερή μοντέλα του συστήματος. Με χρήση κατάλληλης σημειογραφίας γίνεται εύκολη η οργάνωση των ΔΡΔ (π.χ. Πρώτο επίπεδο F, δεύτερο επίπεδο F1, F2,, τρίτο επίπεδο F11, F12, κλπ) Πρέπει να δημιουργείται ένα λεξικό δεδομένων το οποίο είναι μια οργανωμένη απαρίθμηση όλων των στοιχείων δεδομένων τα οποία σχετίζονται με το σύστημα (κάθε βέλος στο ΔΡΔ ένα ή περισσότερα είδη πληροφορίας, κάθε αποθήκη δεδομένων είανι μια συλλογή από μεμονωμένα είδη δεδομένων). Η εγγραφή του λεξικού δεδομένων περιέχει: Όνομα του είδους δεδ/νων που χρησιμοποιείται και πως περιγραφή περιεχομένου Συμπληρωματική πληροφορία

ΔΡΔ Λεξικό δεδομένων Ένα ΔΡΔ δεν επαρκεί για την περιγραφή των απαιτήσεων π.χ. Μία ροή δεδομένων μπορεί να αναπαριστά ένα σύνθετο τύπο δεδομένων. Ποιο το περιεχόμενο του τύπου; Στο λεξικό δεδομένων καταγράφονται όλες οι ροές δεδομένων του ΔΡΔ με επεξήγηση της δομής τους (των δεδομένων). Ένα λεξικό δεδομένων μπορεί να οργανώνεται με συντακτικό κανονικής γλώσσας (BNF)

Διαδοχικά επίπεδα λεπτομέρειας ΠΔ1 ΠΔ2 Α Β 1 Δ ΑΔ1 ΠΔ3 Γ Ε ΑΔ2 ΠΔ1 ΠΔ2 ΠΔ3 Α Β Γ Ζ 1.1 1.2 O F Θ Η 1.3 Δ Ε ΑΔ1 ΑΔ2

Οδηγίες Στο επίπεδο 0 το σύστημα αναπαρίσταται με ένα και μόνο κύκλο Οι ροές ειδόδου/εξόδου πρέπει προσεκτικά να καταγράφονται Στο επίπεδο 0 πάντοτε φαίνονται οι εξωτερικές οντότητες (πηγές/αποδέκτες) Δώστε ετικέττα σε καθετί Οι εξωτερικές οντότητες μπορεί να επαναλαμβάνονται στο ίδιο διάγραμμα Κάθε φορά αναλύουμε ένα κύκλο (λειτουργία) Η ανάλυση συνεχίζεται μέχρι να μέχρι κάθε κύκλος να αναπαριστά μια απλή και μοναδική λειτουργία που συνδέτεται με μια μόνο μονάδα προγράμματος Ο βαθμός αποσύνθεσης-ανάλυσης μειώνεται καθώς ο αριθμός των επιπέδων αυξάνει Κάθε ροή δεδομένων (βέλος) μπορεί να αναλύεται στο επόμενο επίπεδο (κάθε ροή δεδομένων καταγράφεται στο λεξικό δεδομένων) Δεν περιγράφουμε διαδικαστική λογική (αλγόριθμο)

Οδηγίες - Αρίθμηση Προσοχή στην αρίθμηση των μετασχηματισμών: πρέπει να είναι δομημένη, π.χ. Ρ1 για το Επίπεδο 0, Ρ1.1 για το Επίπεδο 1, Ρ1.1.1 για το Επίπεδο 2, κοκ. P1 Επίπεδο 0 αναλύεται σε P1.1 P1.2 P1.3 Επίπεδο 1 αναλύεται σε P1.3.1 P1.3.2 Επίπεδο 2

Οδηγίες - Ονοματοδοσία Χρησιμοποιείτε ονόματα που να έχουν νόημα και να είναι διαφορετικά για διαφορετικά συστατικά (εξωτερική οντότητα, μετασχηματισμό, αποθήκη δεδομένων) ενός ΔΡΔ. Η ονομασία μιας εξωτερικής οντότητας πρέπει να περιέχει κάποιο ουσιαστικό ή μια περιγραφή χωρίς ρήμα. Αποφύγετε να περιορίσετε τις εξωτερικές οντότητες σε μια (ΧΡΗΣΤΗΣ) και προσπαθήστε να αποτυπώσετε όσο το δυνατόν πιστότερα τις διεπαφές του υπό μελέτη ΠΣ με άλλα ΠΣ και χρήστες.

Οδηγίες - Μετασχηματισμοί Οι είσοδοι ενός μετασχηματισμού πρέπει να αρκούν για την παραγωγή των εξόδων του (συμπεριλαμβανομένων των δεδομένων από πηγές δεδομένων). Οι είσοδοι ενός μετασχηματισμού είναι διαφορετικές από τις εξόδους του. Δεν επιτρέπεται να υπάρχει μετασχηματισμός που να έχει μόνο εξόδους. Δεν επιτρέπεται να υπάρχει μετασχηματισμός που να έχει μόνο εισόδους. Η ονομασία ενός μετασχηματισμού πρέπει να περιέχει κάποιο ουσιαστικό που να δηλώνει την ενέργεια/πράξη που επιτελείται.

Οδηγίες Αποθήκες Δεδομένων Δεν επιτρέπεται να μετακινούνται δεδομένα από αποθήκη σε αποθήκη, παρά μόνο με παρεμβολή μιας ή περισσότερων διεργασιών. Δεν επιτρέπεται να μετακινούνται δεδομένα μεταξύ μιας εξωτερικής πηγής απευθείας με μια αποθήκη δεδομένων, παρά μόνο με παρεμβολή μιας ή περισσότερων μετασχηματισμών. Η ονομασία μιας αποθήκης δεδομένων πρέπει να περιέχει κάποιο ουσιαστικό ή μια περιγραφή χωρίς ρήμα του περιεχομένου της αποθήκης.

Οδηγίες Αποθήκες Δεδομένων Οι αποθήκες δεν επεξεργάζονται δεδομένα. Λαμβάνονται ακριβώς τα ίδια δεδομένα με αυτά που εισήχθησαν Δεν θα πρέπει να υπάρχουν στο σύστημα αποθήκες με μόνο εισερχόμενες ή μόνο εξερχόμενες ροές δεδομένων. (Πιθανή εξαίρεση εκτός των ορίων του συστήματος, στο ΔΡΔ επιπέδου 0) Η ίδια αποθήκη μπορεί να υπάρχει σε διάφορα σημεία του ΔΡΔ Η απόφαση για τον τρόπο υλοποίησης της αποθήκης λαμβάνεται από τον προγραμματιστή όχι από τον αναλυτή Μία αποθήκη δεδομένων μπορεί να είναι από απλός πίνακας έως σύνθετες συλλογές δεδομένων

Οδηγίες Εξωτερικές Οντότητες Δεν επιτρέπεται να μετακινούνται δεδομένα από εξωτερική οντότητα σε εξωτερική οντότητα, παρά μόνο με παρεμβολή ενός ή περισσότερων μετασχηματισμών.

Οδηγίες Ροές δεδομένων Έχει μια και μόνο κατεύθυνση Μια ροή προς μια πηγή δεδομένων σημαίνει αποθήκευση / ενημέρωση / διαγραφή. Μια ροή από μια πηγή δεδομένων σημαίνει ανάγνωση/αναζήτηση. Η ονομασία μιας ροής δεδομένων πρέπει να περιέχει κάποιο ουσιαστικό ή μια περιγραφή χωρίς ρήμα. Στο λεξικό δεδομένων καταγράφονται όλες οι ροές δεδομένων του ΔΡΔ με επεξήγηση της δομής τους π.χ. Εργαζόμενος = επίθετο + όνομα +ID

Επιτρεπτές συνδέσεις μεταξύ των συστατικών του ΔΡΔ Πηγή ή Αποδέκτης Πηγή ή Αποδέκτης Μετασχηματισμός Αποθήκη Δεδομένων Όχι Ναι Όχι Μετασχηματισμός Ναι Ναι Ναι Αποθήκη Δεδομένων Όχι Ναι Όχι

Δ.Ρ.Δ. ΛΑΘΗ Β1 Β2 Β1 P1 Β2 Β1 DS1 Β1 P1 DS1 DS1 Β1 DS1 P1 Β1 DS1 DS2 DS1 P1 DS2

Δημιουργία ΔΡΔ Το σύστημα LOAN θα αυτοματοποιεί την παραλαβή και αξιολόγηση των αιτήσεων για στεγαστικά δάνεια στην Τράπεζα X. Οι πελάτες της Τράπεζας μέσω του διαδικτύου θα μπορούν να εισάγουν μια αίτηση για στεγαστικό δάνειο αναφέροντας τον ΑΦΜ τους, το ονοματεπώνυμό τους, το ποσό του δανείου, τους επιθυμητούς μήνες αποπληρωμής και το email τους. Το σύστημα ελέγχει αν υπάρχει ήδη αίτηση με τον ίδιο ΑΦΜ. Αν δεν υπάρχει, τότε εισάγει την αίτηση στην αποθήκη και δίνει ένα μήνυμα επιτυχούς καταχώρησης της αίτησης στον πελάτη. Σε περίπτωση που υπάρχει ήδη αίτηση στο σύστημα, το σύστημα απαντά με ένα μήνυμα ανεπιτυχούς καταχώρησης. Η αίτηση αποθηκεύεται σε μια αποθήκη έχοντας την τιμή «εκκρεμής» στο πεδίο επεξεργασία.

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

Πηγές, Acknowledgement Β. Βεσκούκης «Τεχνολογία Λογισμικού Ι», ΕΑΠ, ΠΑΤΡΑ, 2000 ΙΕΕΕ Guide to Software Requirements Specification, ANSI/IEEE, Std 830-1993, 1984 S. L. Pfleeger, «Τεχνολογία Λογισμικού Θεωρία και πράξη», 2η έκδοση (μετάφραση, εκδ. Κλειδάριθμος)