Professional Documents
Culture Documents
Τεχνολογία Λογισµικού Ι
Κεφάλαιο 3
Βασίλειος Βεσκούκης
∆ιδάκτωρ Ηλεκτρολόγος Μηχανικός
και Μηχανικός Υπολογιστών
v.vescoukis@cs.ntua.gr
Προδιαγραφή απαιτήσεων
z Το πρώτο βήµα στην ανάπτυξη λογισµικού
z ∆ιάκριση απαιτήσεων
Ανθρωποι
Σχεδίασης
Συµβολισµοί:
Εγγραφο προδιαγραφών
των απαιτήσεων
Προϊόν Εργασία
από το λογισµικό
πρόκληση.
Αρχή Κατανόηση ΑΝΑΛΥΣΗ ΑΠΑΙΤΗΣΕΩΝ
Ιεράρχηση
z Προδιαγραφή προβλήµατος
Προδιαγραφή
απαιτήσεων
5. Κάθε σπουδαστής αξιολογείται σε µαθήµατα στα οποία έχει εγγραφεί. Η αξιολόγηση αυτή
µπορεί να γίνεται περισσότερες από µία φορές τόσο κατά τη διάρκεια του ακαδηµαϊκού
έτους (ενδιάµεση εξέταση), όσο και µε τελικό γραπτό.
6. ∆εν πρέπει να επιτρέπεται η καταχώρηση βαθµολογίας σε µάθηµα στο οποίο δεν έχει γίνει
εγγραφή.
9. Επιτρέπεται η διαγραφή µαθήµατος µόνο αν δεν έχουν υπάρξει εγγραφές ή εξετάσεις που να
το αφορούν.
14. Ζητείται η εκτύπωση της βαθµολογίας όλων των µαθηµάτων για κάποιο συγκεκριµένο
σπουδαστή.
z ∆οµηµένη ανάλυση
∆ιάγραµµα ροής δεδοµένων
∆ιάγραµµα οντοτήτων συσχετίσεων
-
Ν
Ω Ν ΤΩ
∆Ι ∆Ε∆
ΙΣ Ε Ο ΤΗ
ΑΓ
ΡΑ Μ Ε
Τ
∆ιάγραµµα µετάβασης καταστάσεων
ΣΧ ΟΝ
Μ Μ ΝΩ
Ο
ΕΤ
ΣΥ Μ Α
Α
ΡΟ
Μ
ΡΑ
ΗΣ
Ν
ΛΕΞΙΚΟ
Λεξικό δεδοµένων
ΑΓ
∆Ε∆ΟΜΕΝΩΝ
∆Ι
∆ΙΑΓΡΑΜΜΑ ΜΕΤΑΒΑΣΗΣ
ΚΑΤΑΣΤΑΣΕΩΝ
Α Γ ∆
Μονάδα εκτέλεσης Μονάδα εκτέλεσης
Χρήστης Εκτυπωτής
πρόσθεσης τετραγώνου
Αρχείο
Α
Συµβολισµοί διαγραµµάτων ροής δεδοµένων Α Β Γ ∆
Μ Μ
Β
∆ιαδικασία /
µετασχηµατισµός
δεδοµένων Β
Γ
Α Α Β
Μ Μ
∆
Γ
Εξωτερική πηγή ή
αποδέκτης δεδοµένων
Α Α Γ
Ροή δεδοµένων
Γ
Μ Μ
Β Β ∆
Αποθήκη δεδοµένων
Ε Α∆2
Γ
Π∆3
Α 1.1
Π∆1 ∆
1.1
Α∆1
Η
Π∆2 Β Λ
Ι 1.1.1
Ζ Ε Α
1.2 Θ 1.3 Α∆2 Π∆1 1.1.3
Γ Κ ∆
Π∆3 Μ
1.1.2
Α∆1
Η
1.3
1.2
Θ
Β 1.3.1 1.3.2
Π∆2 1.2.1
Π Ρ
Ο
Ν Ε
Γ F 1.3.3 1.3.4 Α∆2
Π∆3 1.2.2 Τ
1.1. ∆ιαχείριση
αρχείων
Στοιχεία µαθητών κλπ
Αρχεία
ΧΡΗΣΤΗΣ Αρχείο
Εγγραφή 1.2.Εγγραφές σε εγγραφών ΧΡΗΣΤΗΣ
µαθήµατα
Αρχείο
Βαθµοί βαθµολογίας
1.3.Βαθµολόγηση
Επιλογές
Βαθµολογία
1.4.Εκτύπωση
βαθµολογίας
1.1.1. ∆ιαχείριση
αρχείου µαθητών
1.1. ∆ιαχείριση
αρχείων Στοιχεία
Στοιχεία µαθητών κλπ
Αρχεία
µαθητή Εγγραφή Ενηµερωµένο
ΧΡΗΣΤΗΣ
Εγγραφή 1.2.Εγγραφές σε
Αρχείο
εγγραφών ΧΡΗΣΤΗΣ µαθητή αρχείο
µαθήµατα
Αρχείο
Βαθµοί βαθµολογίας
1.3.Βαθµολόγηση
Επιλογές
Βαθµολογία Αρχείο µαθητών
1.4.Εκτύπωση
Στοιχεία καθηγητή 1.1.2.∆ιαχείριση
βαθµολογίας
ΧΡΗΣΤΗΣ αρχείου
καθηγητών
Ενηµερωµένο
ΧΡΗΣΤΗΣ
αρχείο
Στοιχεία Εγγραφή
µαθήµατος καθηγητή
Αρχείο
καθηγητών
1.1.3.∆ιαχείριση
Ενηµερωµένο
αρχείου
αρχείο
µαθηµάτων
Εγγραφή
µαθήµατος
Αρχείο
µαθηµάτων
1.1. ∆ιαχείριση
αρχείων
Στοιχεία µαθητών κλπ
Αρχεία
ΧΡΗΣΤΗΣ Αρχείο
Εγγραφή 1.2.Εγγραφές σε εγγραφών ΧΡΗΣΤΗΣ
µαθήµατα
Αρχείο
Βαθµοί βαθµολογίας
1.3.Βαθµολόγηση
Επιλογές
Βαθµολογία
1.4.Εκτύπωση
βαθµολογίας
Αποτέλεσµα
1.2.2. ∆ιαχείριση εργασίας ΧΡΗΣΤΗΣ
Στοιχεία εγγραφών
εγγραφής
Αρ.µητρώου
Εγγραφή
ΧΡΗΣΤΗΣ µαθητή 1.2.1. Ελεγχος
δεδοµένων
Κωδικός
µαθήµατος Αρχείο εγγραφών
Α.µ.µαθητή
Κωδ.Μαθ/τος
Αρχείο
Αρχείο µαθητών
µαθηµάτων
1.1. ∆ιαχείριση
αρχείων
Στοιχεία µαθητών κλπ
Αρχεία
ΧΡΗΣΤΗΣ Αρχείο
Εγγραφή 1.2.Εγγραφές σε εγγραφών ΧΡΗΣΤΗΣ
µαθήµατα
Αρχείο
Βαθµοί
1.3.Βαθµολόγηση
βαθµολογίας
Αποτέλεσµα
ΧΡΗΣΤΗΣ
Επιλογές
Βαθµολογία
1.3.2. ∆ιαχείριση εργασίας
1.4.Εκτύπωση Βαθµός
βαθµολογίας βαθµολογίας
Στοιχεία
εξέτασης
Βαθµολογία
Αρ.µητρώου Βαθµός
ΧΡΗΣΤΗΣ
µαθητή
1.3.1. Ελεγχος
δεδοµένων
Αρχείο
Κωδικός βαθµολογίας
µαθήµατος
Υπαρξη
εγγραφής
Κωδ.Μαθ/τος
Κωδ.Μαθητή
Αρχείο
Αρχείο εγγραφών
µαθηµάτων
Αρχείο µαθητών
1.1. ∆ιαχείριση
αρχείων
Στοιχεία µαθητών κλπ
Αρχεία
ΧΡΗΣΤΗΣ Αρχείο
Εγγραφή 1.2.Εγγραφές σε εγγραφών ΧΡΗΣΤΗΣ
µαθήµατα
Αρχείο
Βαθµοί βαθµολογίας
Κωδ.
1.3.Βαθµολόγηση
Επιλογές µαθήµατος
Βαθµολογία
∆εδοµένα
1.4.Εκτύπωση
βαθµολογίας
εκτύπωσης
ΧΡΗΣΤΗΣ 1.4.1. Ρυθµίσεις
ΕΚΤΥΠΩΤΗΣ
εκτύπωσης
Σχολικό
έτος
∆εδοµένα
εκτύπωσης
Κωδ.
µαθήµατος
Σχολικό
έτος
1.4.2. Επιλογή και
µορφοποίηση
εγγραφών
Εγγραφές
Εγγραφές
Εγγραφές
Αρχείο Αρχείο
Αρχείο µαθητών
µαθηµάτων βαθµολογίας
z Βασικές έννοιες
Οντότητα
ΚΑΘΗΓΗΤΗΣ
Ονόµατα
ΑΡ.ΤΑΥΤ. ΟΝΟΜΑ ΕΠΩΝΥΜΟ ∆ΙΕΥΘΥΝΣΗ ΤΗΛ
πεδίων
Α123456 Βασίλειος Βασιλείου Λέσβου 1 5554432
Πεδίο
z Συµβολισµοί
Συµβολισµοί διαγραµµάτων
οντοτήτων-συσχετίσεων
Οντότητα δεδοµένων
Συσχέτιση µεταξύ
οντοτήτων (α)
1
1
Ορισµός πολλαπλότητας
Ν συσχέτισης (α)
Ν
(1:1)
(1:Ν)
Συσχέτιση και ορισµός
πολλαπλότητας (β)
(Μ:Ν)
βαθµολογείται σε κάθε
µάθηµα πολλές φορές (α)
z Αντίστροφα:
∆Ι∆ΑΣΚΕΙ
ΚΑΘΗΓΗΤΗΣ ΜΑΘΗΜΑ
Κάθε µάθηµα διδάσκεται
από έναν καθηγητή και
ΒΑΘΜΟΛΟΓΕΙΤΑΙ ΣΕ
ΦΟΙΤΗΤΗΣ ΜΑΘΗΜΑ
τουλάχιστον µία
βαθµολογία
ΚΑΘΗΓΗΤΗΣ
∆Ι∆ΑΣΚΕΙ
ΕΓΓΡΑΦΕΤΑΙ ΣΕ
ΦΟΙΤΗΤΗΣ ΜΑΘΗΜΑ
ΒΑΘΜΟΛΟΓΕΙΤΑΙ ΣΕ
z Απόκριση
Μια λειτουργία που εκτελεί το λογισµικό όταν προκαλείται ένα γεγονός,
ονοµάζεται απόκριση (response).
z Κατάσταση
Οταν το λογισµικό αναµένει γεγονότα, τότε λέµε ότι βρίσκεται σε µία
κατάσταση. Όταν συµβεί ένα γεγονός, το λογισµικό µπορεί να εκτελεί µια
λειτουργία και να µεταβαίνει σε µια άλλη κατάσταση.
Κατάσταση
Κατάσταση έναρξης
Κατάσταση τέλους
Μετάβαση σε άλλη
ΓΕΓΟΝΟΣ/ΑΠΟΚΡΙΣΗ κατάσταση / λειτουργία
που εκτελείται
ΓΕΓΟΝΟΣ/ΑΠΟΚΡΙΣΗ
Μετάβαση στην ίδια
κατάσταση / λειτουργία
που εκτελείται
ΕΠΙΛΟΓΗ
ΜΑΘΗΜΑΤΟΣ
ΤΕΛΟΣ
ΕΠΙΛΟΓΗ ΕΠΙΛΟΓΩΝ
ΜΑΘΗΜΑΤΟΣ
ΕΠΙΛΕΓΜΕΝΟ
ΕΠΙΛΟΓΗ
ΜΑΘΗΜΑΤΟΣ
ΑΙΤΗΣΗ
ΕΓΓΡΑΦΗΣ
ΑΠΟΡΡΙΨΗ
ΑΙΤΟΥΜΕΝΟ ΑΠΟΡΡΙΦΘΕΝ
ΕΓΚΡΙΣΗ
ΤΕΛΟΣ
ΕΠΙΛΟΓΩΝ
ΕΠΙΛΟΓΗ ΤΕΛΟΣ
ΜΑΘΗΜΑΤΟΣ ΕΠΙΛΟΓΩΝ
ΕΓΚΕΚΡΙΜΕΝΟ
z Το λεξικό δεδοµένων
Είναι βασικό στοιχείο της δοµηµένης ανάλυσης
Κατασκευάζεται µε πολλή δουλειά
Και χρειάζεται περισσότερη για να διατηρηθεί ενηµερωµένο
1.2. Σκοπός
Αναφορά στο σκοπό του εγγράφου: σε ποιον απευθύνεται, τι θέλει να
του µεταδώσει, πώς εντάσσεται στο έργο.
1.3. Εµβέλεια
Τι θα καλύψει και τι όχι.
1.6. Περίληψη
Executive summary
∆ρ. Βασίλειος Βεσκούκης
Εγγραφο προδιαγραφών των απαιτήσεων από το λογισµικό
z Μέρος 2
2.1. Στίγµα
Ποιος είναι ο ανταγωνισµός / συναφή προϊόντα και πώς διαφέρει από
αυτά (γενική περιγραφή)
2.2. Προοπτική
Ποια είναι η επιδιωκόµενη πορεία του λογισµικού στην αγορά στην
οποία προορίζεται
…
3.2.Ν. Τρόπος λειτουργίας Ν
Είσοδοι
Ποια είναι τα δεδοµένα και οι συνθήκες εισόδου, από πού προέρχονται
Επεξεργασία
Πώς πρέπει να γίνει η επεξεργασία των δεδοµένων εισόδου ώστε να
επιτευχθεί το επιθυµητό
Εξοδοι
Ποια είναι τα δεδοµένα που παράγονται και ποιες οι συνθήκες που
ισχύουν όταν εκτελεστεί η λειτουργία που περιγράφεται
3.5.2. ∆ιαθεσιµότητα
Απαιτήσεις σε διαθεσιµότητα, δηλαδή σε ποσοστό χρόνου όπου το
λογισµικό µπορεί να χρησιµοποιηθεί παραγωγικά
3.5.3. Ασφάλεια
Προδιαγραφή πρόσβασης
3.5.2. Μεταφερσιµότητα
Περιβάλλοντα λειτουργίας
z 3.2.4.Λειτουργική απαίτηση Α4
∆ιαγραφή σπουδαστή. Η εφαρµογή εµφανίζει φόρµα στην οποία ο
χρήστης δίνει τα στοιχεία του σπουδαστή που επιθυµεί να διαγράψει.
Εισοδος: στοιχεία σπουδαστή προς διαγραφή. Επεξεργασία: έλεγχος
ύπαρξης σπουδαστή, έλεγχος εγγραφής του σε µάθηµα, έλεγχος
συµµετοχής του σε εξέταση. Εξοδοι: αρχείο µε διαγραµµένη εγγραφή
σπουδαστή, ή µήνυµα λάθους.
Αποτέλεσµα
∆ιαγραφή εργασίας ΧΡΗΣΤΗΣ
Αρ.µητρώου σπουδαστή
σπουδαστή
Στοιχεία προς
διαγραφή
Αρ.µητρώου Επίτρεψη
ΧΡΗΣΤΗΣ σπουδαστή Ελεγχος διαγραφής
δεδοµένων
Αρχείο
σπουδαστών
Υπαρξη Υπαρξη
εγγραφής εγγραφής
Υπαρξη
εγγραφής
Αρχείο
σπουδαστών Αρχείο
βαθµολογίας
Αρχείο εγγραφών
z Προβλήµατα προτύπων
Ο κατασκευαστής χρησιµοποιεί ad-hoc µοντέλα παράστασης λογισµικού
και συµβολισµούς, τους οποίους αργότερα ούτε ο ίδιος δεν θυµάται.
z Προβλήµατα γλώσσας
Ο τρόπος χειρισµού της φυσικής γλώσσας δηµιουργεί διφορούµενα και
ασάφειες, φαινόµενα ανεπιθύµητα και µε αρνητικές επιπτώσεις στο
λογισµικό.
z Προβλήµατα οικονοµικά
Το λογισµικό είναι προϊόν και πρέπει να παράγει κέρδος…
∆ρ. Βασίλειος Βεσκούκης
Συζήτηση - προβληµατισµός