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


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


Στόχοι Μαθήματος

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


Προαπαιτούμενες Γνώσεις

Γνώση Αρχών Προγραμματισμού, γνώση Γλώσσας Προγραμματισμού (C++, Java, Pascal), χρήση Η/Υ (Σχεδίαση, Επεξεργασία Κειμένου), κριτική και συνθετική Ικανότητα. 


Περιεχόμενα

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

ΤΑΥΤΟΤΗΤΑ ΜΑΘΗΜΑΤΟΣ

Βαθμίδα:

Τύπος:

Προπτυχιακό

(A+)


Εκπαιδευτές: Ιωάννης Χαραλαμπίδης
Τμήμα: Τμήμα Μηχανικών Πληροφοριακών & Επικοινωνιακών Συστημάτων
Ίδρυμα: Πανεπιστήμιο Αιγαίου
Θεματική Περιοχή: Επιστήμες Μηχανικού Η/Υ και Ηλεκτρονικού Μηχανικού
Άδεια Χρήσης: CC - Αναφορά - Μη Εμπορική Χρήση - Παρόμοια Διανομή

Επισκεφτείτε το μάθημα

ΜΟΙΡΑΣΤΕΙΤΕ ΤΟ ΜΑΘΗΜΑ
ΣΧΕΤΙΚΑ ΜΑΘΗΜΑΤΑ