|SCIENTIFIC DISCIPLINARY SECTOR||INF/01|
In the recent years, several techniques have emerged for the design of software, and the assessment of its quality. The course aims to give an overview of the main design and modeling techniques available nowadays, and learn how to select the most appropriate for a specific project.
Students will be encouraged to complement the presented material with deepening of their own, in the spirit of lifelong learning.
Learning through practical experience the basic conceptual tools for the design and modelling of software systems, and acquiring communication skills and lifelong learning capabilities.
After the completion of the course, the participants will be able to:
use the visual modelling based on UML to support the software development;
use design and architectural patterns in the development of software systems;
design the architecture of a software system;
autonomously learn new concepts and technologies related to the software development;
present a technical topic to a group of peers.
Fundamentals concepts of
The main concepts will be presented by lessons. Hands-on activities will help the students to gain an insight on the applicative concerns.
• Recap of modelling
• Recap of requirements & their specification
• Functional & non-functional requirements
• Use case requirements specification
• (UML) Goal-oriented requirements specification
• Software architecture
• Software architecture design
• Architectural drivers
• Design concepts
• Attribute-Driven Design (AAD) method illustrated on a case study
• Other design methods
Designing Software Architectures: A Practical Approach. Humberto Cervantes and Rick Kazman. Addison-Wesley. 2016.
Office hours: Appointment by email
Office hours: On request by email
MAURA CERIOLI (President)
GIANNA REGGIO (President Substitute)
MAURIZIO LEOTTA (Substitute)
All class schedules are posted on the EasyAcademy portal.
The exam will consist of three parts:
the development of the design of a software system
an oral presentation of a recent technical innovation related to the software development
an oral examination and project discussion
The quality of the software system design delivered at the end of the project will allow the teachers to evaluate the student understanding of the design method and their knowledge of the conceptual tools involved.
The oral presentation of innovative technologies will allow the teachers to assess the students' communication skills and their capabilities of self-learning, together with the depth of their technological understanding.
The final oral will start with the project discussion to understand the individual contributions to the project and generate related technical questions to better evaluate students' knowledge.