Μηχανική Λογισμικού

Γενικά

  • Κωδικός Μαθήματος: 1742
  • Εξάμηνο: 7ο
  • Τύπος Μαθήματος: Επιστημονικής Περιοχής (ΕΠ)
  • Είδος Μαθήματος: Υποχρεωτικό Επιλογής (ΥΠ-ΕΠ)
  • Γνωστική Περιοχή: Προγραμματισμός και Αλγόριθμοι (ΠΑ)
  • Διδασκαλία Θεωρίας: 4 ώρες/εβδομάδα
  • Πιστωτικές μονάδες ECTS: 6
  • Γλώσσα διδασκαλίας και Εξετάσεων: Ελληνικά
  • Το μάθημα προσφέρεται σε φοιτητές Erasmus
  • Προτεινόμενα προαπαιτούμενα μαθήματα: (1205) Αντικειμενοστρεφής Προγραμματισμός
  • Διδάσκοντες: Δεληγιάννης Ιγνάτιος

Μαθησιακά Αποτελέσματα

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

  • Να αναλύει τις προδιαγραφές ενός συστήματος λογισμικού.
  • Να περιγράφει τις μεθόδους και τεχνικές βάσει των οποίων θα προβαίνει στην επιτυχή ανάπτυξη ποιοτικών συστημάτων εντός χρονικών, τεχνολογικών και οικονομικών περιορισμών.
  • Να κατανοεί, να υπολογίζει και να αξιολογεί τους ποσοτικούς και ποιοτικούς δείκτες προϊόντων λογισμικού.
  • Να συγκρίνει μεθοδολογίες, τεχνικές και καλές πρακτικές σε κάθε φάση ανάπτυξης ενός συστήματος λογισμικού.
  • Να αναπτύσσει με λεπτομέρεια και ακρίβεια τις λειτουργίες ενός συστήματος λογισμικού.
  • Να αναγνωρίζει τη διεθνή ορολογία και να εξετάζει σχετικές προδιαγραφές.
Γενικές Ικανότητες
  • Αναζήτηση, ανάλυση και σύνθεση δεδομένων και πληροφοριών, με τη χρήση και των απαραίτητων τεχνολογιών
  • Λήψη αποφάσεων
  • Αυτόνομη εργασία
  • Ομαδική εργασία
  • Άσκηση κριτικής και αυτοκριτικής
  • Προαγωγή της ελεύθερης, δημιουργικής και επαγωγικής σκέψης
  • Εργασία σε διεθνές περιβάλλον
  • Εργασία σε διεπιστημονικό περιβάλλον
  • Παράγωγή νέων ερευνητικών ιδεών
  • Σχεδιασμός και διαχείριση έργων

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

• Αντικειμενοστρεφής Τεχνολογία – Εισαγωγικές έννοιες
• Ενοποιημένη γλώσσα μοντελοποίησης – UML (Unified Modeling Language)
• Ενοποιημένη Διεργασία – RUP (Rational Unified Process)
• Ευέλικτες μέθοδοι (Agile methods)
• Αναδόμηση λογισμικού (Software Refactoring)
• Διαχείριση έργων λογισμικού με την μέθοδο SCRUM
• Αξιολόγηση του λογισμικού με μετρικές (Metrics)
• Αρχές σχεδίασης (Design principles)
• Σχεδιαστικά πρότυπα (Design patterns)

Διδακτικές και Μαθησιακές Μέθοδοι - Αξιολόγηση

Τρόπος Παράδοσης
  • Πρόσωπο με πρόσωπο θεωρητική διδασκαλία (παράδοση, συζήτηση, επίλυση προβλημάτων).
Χρήση Τεχνολογιών Πληροφορίας και Επικοινωνιών
  • Χρήση λογισμικού παρουσιάσεων διαφανειών
  • Χρήση λογισμικού σχεδίασης συστημάτων
  • Χρήση λογισμικού διαχείρισης έργων
  • Χρήση λογισμικού μετρικών
  • Χρήση ηλεκτρονικής πλατφόρμας μάθησης (moodle)
  • Ηλεκτρονική επικοινωνία με τους φοιτητές/τριες
Οργάνωση Διδασκαλίας
Δραστηριότητα Φόρτος εργασίας εξαμήνου
Διαλέξεις52
Συγγραφή και παρουσίαση υποχρεωτικής εργασίας20
Ατομική Μελέτη και ανάλυση βιβλιογραφίας56
Εργαστηριακές ασκήσεις52
Σύνολο 180
Αξιολόγηση φοιτητών

Ι. Τελική Γραπτή Εξέταση (ΓΕ) (35%) που περιλαμβάνει:
- Ερωτήσεις Σύντομης Απάντησης
- Επίλυση προβλημάτων
ΙΙ. Αξιολόγηση παραδοτέων ομαδικής εργασίας έργου λογισμικού (ΕΡ) (65%)
- Ανατίθεται σε ομάδες τριών φοιτητών ή κατ’ εξαίρεση ατομικά.
- Απαιτεί την ανάπτυξη συστήματος λογισμικού.
Για την απονομή των πιστωτικών μονάδων, ο συνολικός βαθμός του μαθήματος (ΓΕ*0,35 + ΕΡ*0,65) πρέπει να είναι τουλάχιστον πέντε (5).
Τα κριτήρια αξιολόγησης είναι προσβάσιμα από τους φοιτητές στην ηλεκτρονική σελίδα του μαθήματος.

Συνιστώμενη Βιβλιογραφία

Συγγράμματα μέσω του συστήματος "Εύδοξος"
  1. Μηχανική αντικειμενοστρεφούς λογισμικού - Πρακτική ανάπτυξη λογισμικού με τις γλώσσες UML και Java, εκδ. Τζιόλα, 2016, Κωδικός Εύδοξου: 59384106, https://service.eudoxus.gr/search/#a/id:59384106/0
  2. Object-Oriented Systems Analysis and Design Using UML, Simon Bennett , Ray Farmer , Steve McRobb, 2010, https://www.bookdepository.com/Object-Oriented-Systems-Analysis-and-Design-Using-UML-Dr-Simon-J-Bennett-Ray-Farmer-Steve-cRobb/9780077125363, Κωδικός Εύδοξου: 12563971
Συμπληρωματική ελληνόγλωσση βιβλιογραφία
  1. Ανάλυση και σχεδιασμός συστημάτων με τη UML 2.0, 2010, A. Dennis, B. Wixom, D. Tegarden, Εκδ. Κλειδάριθμος
Συμπληρωματική ξενόγλωσση βιβλιογραφία
  1. Object Oriented Analysis and Design with Applications, G. Booch, 3rd edition, 2008
  2. Applying UML and Patterns, 3rd Ed, C. Larman, 2007
Συναφή επιστημονικά περιοδικά
  1. IEEE Software
  2. IEEE Transactions on Software Engineering
  3. Empirical Software Engineering
  4. Journal of Systems and Software