20801962 - SOFTWARE ANALYSIS AND DESIGN

The goal of this unit is the introduction of models and methods for software analysis and design, and specifically for object oriented analysis and design in the context of an iterative and incremental development process and use cases.
teacher profile | teaching materials

Programme

Software processes; Iterative and agile development.
Requirements; Use cases.
Object-oriented software analysis; Domain modeling; System operations; Operation contracts.
Object-oriented software design; Principles of software design; GRASP patterns; Use case realizations; Dynamic and static design; Design patterns; Layered architecture.
Software modeling; UML.


Core Documentation

CRAIG LARMAN, APPLICARE UML E I PATTERN – ANALISI E PROGETTAZIONE ORIENTATA AGLI OGGETTI, PEARSON EDUCATION ITALIA, QUARTA EDIZIONE, 2015
or
CRAIG LARMAN, APPLYING UML AND PATTERNS, PRENTICE HALL PTR, THIRD EDITION. 2004

Type of delivery of the course

Frontal teaching. Case studies. Exercises.

Attendance

Attendance is optional. However, participation in the lessons and, above all, in the exercises is strongly recommended.

Type of evaluation

The exam is normally organized in 2 + 1 parts: project, written test, and oral exam. The project is proposed some days (2 or 3) before the written test, and includes both analysis exercises and design exercises. The student must deliver his/her project related to the project at the beginning of the written test. The written test focuses on a variant (usually an extension) of the above project. The duration of the written test is approximately 150 minutes, and includes both analysis exercises and design exercises. The oral exam is optional, at the discretion of the teacher. Nel periodo di emergenza COVID-19 l’esame di profitto sarà svolto secondo quanto previsto all’art.1 del Decreto Rettorale n°. 703 del 5 maggio 2020