Τυπικό εξάμηνο διδασκαλίας: ΣΤ
Διδασκαλία: Η διδασκαλία του μαθήματος έχει τη μορφή 15 διαλέξεων και ισάριθμων εργαστηριακών ασκήσεων, στο πλαίσιο των οποίων θα δοθούν τρεις εργασίες.
Ενδεικτικά προαπαιτούμενα: Προγραμματισμός Ι – ΙΙ, Αντικειμενοστραφής Προγραμματισμός, Βάσεις Δεδομένων Ι – ΙΙ
Διδακτικές μονάδες: 7
Σκοπός και στόχοι του μαθήματος:
Το μάθημα αποσκοπεί στο να εισαγάγει τον σπουδαστή στη λογική της οργανωμένης ανάπτυξης λογισμικού. Ως κύριοι άξονες λαμβάνονται τα μοντέλα ανάπτυξης λογισμικού, τα στάδια ανάπτυξης και συντήρησης λογισμικού, η ανάλυση περιπτώσεων και η γλώσσα UML. Στόχος είναι η κατανόηση τόσο της διαδικασίας ανάπτυξης λογισμικού όσο και της παραγωγής λογισμικού για εμπορικές εφαρμογές.
Περίγραμμα μαθήματος:
|
Εισαγωγή, προσέγγιση της διαδικασίας σχεδίασης λογισμικού από την πλευρά του συστήματος και από την πλευρά τηςσχεδίασης, παράδειγμα πληροφοριακού συστήματος. |
|
Διεργασίες, μοντέλα διεργασιών ανάπτυξης λογισμικού. |
|
Ανάλυση περιπτώσεων, εισαγωγή στη UML. |
|
Απαιτήσεις λογισμικού: η διεργασία των απαιτήσεων, τύποι και χαρακτηριστικά απαιτήσεων, σημειογραφία, προτυποποίηση των απαιτήσεων. Παράδειγμα με χρήση της UML. |
|
Σχεδίαση συστήματος: ορισμός του σχεδίου, αποσύνθεση και τμηματικότητα, στρατηγικές αρχιτεκτονικής του σχεδίου, PDL και διαγράμματα καταστάσεων. |
|
Αντικειμενοστραφής σχεδίαση συστήματος και προγραμμάτων. Μεθοδολογίες αντικειμενοστραφού, παράδειγμα με χρήση UML. |
|
Σχεδίαση διαπροσωπειών: αρχές σχεδίασης, αλληλεπίδραση με το χρήστη, αξιολόγηση διαπροσωπειών. |
|
Υλοποίηση λογισμικού: μοντέλα υλοποίησης, προγραμματιστικά πρότυπα και διαδικασίες, αποσφαλμάτωση. |
|
Επαλήθευση και επικύρωση σχεδίασης, εφαρμογή σε πραγματικό πρόβλημα. |
|
Ανάλυση συστημάτων πραγματικού χρόνου και ενσωματωμένων συστημάτων. |
Βασική Βιβλιογραφία:
- S. Pfleeger, Τεχνολογία Λογισμικού, θεωρία και πράξη, Κλειδάριθμος, 2003.
- Ι. Sommerville, Software Engineering, Addison-Wesley, 2002.
- J. Keyes, Software Engineering Handbook, Auerbach Pub, 2002.
Συμπληρωματική Βιβλιογραφία:
- K. Wiegers, Software Requirements, Microsoft Press, 2003.
- R. Hunter, R. Thayer, Software Process Improvement, Wiley-IEEE Press, 2002.
- R. Thayer, M. Dorfman, Software Engineering vol.1, The Development Process, Wiley-IEEE Press, 2002.
- R. Thayer, M. Dorfman, Software Engineering vol.2, The Supporting Process, Wiley-IEEE Press, 2002.
- Per Kroll, Philippe Krutchten, Philippe Kruchten, The Rational Unified Process Made Easy: A Practitioner's Guide to Rational Unified Process, Addison-Wesley, 2003.
- D. Reifer, Software Management, Wiley-IEEE Press, 2002.