Learning outcomes of the course unit
The course has the goal of providing all basic principles behind the analysis and design of software systems.
Fundamental concepts of Informatics, Fundamental concepts of Programming.
Course contents summary
Foundations of Software Engineering - Software quality. Software development processes. Methodologies for software development. Analysis of software systems. Design of software systems. Tools for the design and implementation of software systems.
Development of Object-Oriented Software Systems – UML. Object-oriented analysis of software systems. Design and implementation of object-oriented software systems. Design patterns.
Java language - Objects and classes. Inheritance and polymorphism. Exceptions. Input/output. Collections. Graphical interfaces. Concurrent programming.
Ian Sommerville. Software Engineering, 8/ed, Pearson Education, 2007.
The course is based on theoretical lectures and Lab activities.
Assessment methods and criteria
Evaluation is based on a theoretical and a practical test.