Σύστημα, υποσύστημα και περιβάλλον. Κύκλος ζωής και παραδοσιακές τεχνικές ανάπτυξης συστημάτων. Σύγχρονες τεχνικές και μεθοδολογίες. Ανάλυση προβλήματος, ανάλυση απαιτήσεων και μοντελοποίηση. Τεχνικές μετάβασης από την ανάλυση απαιτήσεων στη σχεδίαση. Προσεγγίσεις σχεδίασης και δομημένη σχεδίαση. Ανάλυση και σχεδίαση με προσανατολισμό στις διαδικασίες (Function-oriented analysis): διαγράμματα ροής δεδομένων, προδιαγραφές διαδικασιών (δομημένα αγγλικά, πίνακες και δέντρα αποφάσεων, λεξικό δεδομένων). Ανάλυση δεδομένων και μοντέλο οντοτήτων-συσχετίσεων. Δημιουργία δομημένου διαγράμματος. Αρχιτεκτονική σχεδίαση και ανάπτυξη ψευδοκώδικα. Κωδικοποίηση και τεκμηρίωση, έλεγχος ορθότητας και παράδοση συστήματος. Συντήρηση και ενημέρωση συστήματος. Αντικειμενοστρεφής ανάλυση και σχεδίαση με τη γλώσσα Unified Modeling Language (UML). Διαγράμματα UML για μοντελοποίηση δεδομένων και ανάλυση, σχεδίαση και υλοποίηση συστημάτων: διαγράμματα κλάσεων, διαγράμματα περιπτώσεων χρήσης, διαγράμματα ακολουθίας, διαγράμματα συνεργασίας, διαγράμματα καταστάσεων, κτλ. Εργαλεία computer aided software engineering (CASE).
Με την επιτυχή ολοκλήρωση του μαθήματος οι φοιτητές θα είναι σε θέση: