logo-polimi
Loading...
Risorse bibliografiche
Risorsa bibliografica obbligatoria
Risorsa bibliografica facoltativa
Scheda Riassuntiva
Anno Accademico 2017/2018
Scuola Scuola di Ingegneria Industriale e dell'Informazione
Insegnamento 094124 - SOFTWARE ENGINEERING (FOR AUTOMATION)
Docente Rossi Matteo Giovanni
Cfu 5.00 Tipo insegnamento Monodisciplinare

Corso di Studi Codice Piano di Studio preventivamente approvato Da (compreso) A (escluso) Insegnamento
Ing Ind - Inf (Mag.)(ord. 270) - MI (473) AUTOMATION AND CONTROL ENGINEERING - INGEGNERIA DELL'AUTOMAZIONE*AZZZZ094124 - SOFTWARE ENGINEERING (FOR AUTOMATION)

Programma dettagliato e risultati di apprendimento attesi

Goals

Software development is more and more important in the realization of modern control systems. This course provides students in automation the basic concepts for a rigorous development of software systems. The course will introduce several specification notations and the most used methods for software verification and validation. Finally, it will present some examples of software development tool chains through a pair of case studies.

 

Syllabus

1. General principles of software engineering.

1.1 The qualities of software.
1.2 Basic principles of software engineering.
1.3 A brief summary of the software lifecycle.

2. The modular design of software.

2.1 UML-based design.
2.2 General principles of object-oriented design and implementation.

3. Notations for the specification of software.

3.1 Operational notations: finite-state automata, Statecharts, timed Petri nets.
3.2 Descriptive notations: logic specifications.

4. Software verification through testing.

4.1 Basic principles and definitions.
4.2 White-box testing: coverage criteria.
4.3 The specifications of programs through pre- and post-conditions. Black-box testing.

5. Examples of software development toolchains 

  

Exercise work
Part of the classes will focus on presenting and solving exercises concerning topics covered during lessons.


Note Sulla Modalità di valutazione

The course can be passed either through a standard written exam covering the arguments of the course, or through a software development project in which students are expected to apply in practice the principles and techniques described in classes.


Bibliografia
Risorsa bibliografica obbligatoriaC. Ghezzi, M. Jazayeri, D. Mandrioli, Fundamentals of Software Engineering, Second Edition, Editore: Pearson Prentice Hall, Anno edizione: 2002
Note:

Also available in Italian


Mix Forme Didattiche
Tipo Forma Didattica Ore didattiche
lezione
30.0
esercitazione
20.0
laboratorio informatico
0.0
laboratorio sperimentale
0.0
progetto
0.0
laboratorio di progetto
0.0

Informazioni in lingua inglese a supporto dell'internazionalizzazione
Insegnamento erogato in lingua Inglese
Disponibilità di materiale didattico/slides in lingua inglese
Disponibilità di libri di testo/bibliografia in lingua inglese
Possibilità di sostenere l'esame in lingua inglese
Disponibilità di supporto didattico in lingua inglese
schedaincarico v. 1.6.5 / 1.6.5
Area Servizi ICT
05/12/2020