Μηχανική Λογισμικού (Θεωρία)

Πληροφορίες Μαθήματος

Εξάμηνο Μαθήματος:
7
Μέρος Μαθήματος:
Θεωρία
Κωδικός Μέρους Μαθήματος:
244701
Εβδομαδιαίες Ώρες Διδασκαλίας:
2
Εβδομαδιαίες Ώρες Άσκησης Πράξης:
1
Μονάδες ECTS Μαθήματος:
4.5
Διαθέσιμο σε σπουδαστές ERASMUS:
Όχι
Προσωπικό Μαθήματος:


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

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


Μαθησιακοί Στόχοι

Με την επιτυχή ολοκλήρωση του μαθήματος ο σπουδαστής θα είναι σε θέση να:

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


Γενικές Ικανότητες

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


Περιγραφή Μαθήματος

  • Η δημιουργία ενός Λογισμικού συστήματος
  •  Μηχανική Λογισμικού, Επάγγελμα και Ηθική, Αρχές Τεχνολογίας Λογισμικού
  • Μοντέλα Διεργασιών Λογισμικού
  • Νέες και αναδυόμενες Μεθοδολογίες
  • Απαιτήσεις Λογισμικού
  • Σχεδιασμός: Αρχιτεκτονική και Μεθοδολογία
  • Χαρακτηριστικά σχεδιασμού και Μετρήσεις
  • Υλοποίηση
  • Έλεγχος και διασφάλιση ποιότητας
  • Διαχείριση Διαμόρφωσης, Ολοκλήρωση  και Εκδόσεις
  • Υποστήριξη και Συντήρηση
  • Διαχείριση Λογισμικού έργου
  • Σύγχρονα προβλήματα με το λογισμικό, Ασφάλεια, Συσκότιση, Επικύρωση, Επαλήθευση

Αξιολόγηση Σπουδαστών

Θεωρία: 60%

Προαιρετική εργασία  η οποία προσμετρά στο 20% της βαθμολογίας της θεωρίας.


Βιβλιογραφία

  • Τ Ι. Sommerville, Βασικές Αρχές Τεχνολογίας Λογισμικού, 2009, 8η Έκδοση, Εκδόσεις Κλειδάριθμος
  • S. L. Pfleeger, Τεχνολογία Λογισμικού: Θεωρία και Πράξη, 2011, 2η Έκδοση, Εκδόσεις Κλειδάριθμος EΠΕ
  • Α. Ν. Χατζηγεωργίου, Αντικειμενοστρεφής Σχεδίαση UML: Aρχές Πρότυπα και Ευρετικοί Κανόνες, 2005, 1η Έκδοση, Εκδόσεις Κλειδάριθμος EΠΕ
  • Β. Γερογίαννης, Γ. Κακαρόντζας, Α. Καμέας, Γ. Σταμέλλος, Π. Φιτζιλής, 2006, Αντικειμενοστρεφής Ανάπτυξη Λογισμικού με τη UML, 1η εκδοση, Εκδόσεις Κλειδάριθμος EΠΕ
  • F. Tsui, O. Karam, B. Bernal, 2013, Essentials οf Software Engineering, 3rd Edition, Jones & Bartlett Learning.
  • R. Pressman, B. Maxim, 2014, Software Engineering: A Practitioner's Approach 8th Edition, McGraw-Hill
  • R. Stephens, Beginning Software Engineering, 2015, 1st Edition,Wrox