Servizi per la didattica
PORTALE DELLA DIDATTICA

Ingegneria del software

05BIDOV

A.A. 2022/23

Lingua dell'insegnamento

Italiano

Corsi di studio

Corso di Laurea Magistrale in Ingegneria Informatica (Computer Engineering) - Torino

Organizzazione dell'insegnamento
Didattica Ore
Lezioni 80
Docenti
Docente Qualifica Settore h.Lez h.Es h.Lab h.Tut Anni incarico
Bruno Giorgio Professore Associato ING-INF/05 80 0 0 0 17
Collaboratori
Espandi

Didattica
SSD CFU Attivita' formative Ambiti disciplinari
ING-INF/05 8 B - Caratterizzanti Ingegneria informatica
2022/23
L’insegnamento presenta i concetti fondamentali dell’ingegneria del software e le discipline principali che essa comprende. Particolare attenzione è dedicata alla formalizzazione dei requisiti software mediante l’uso di modelli UML per la parte strutturale e di reti di Petri estese per la parte comportamentale.
This course presents the basic notions of software engineering and the major disciplines it is made up of. Particular attention is devoted to the formalization of software requirements through the use of UML models for the structural aspects and of extended Petri nets for the behavioral ones.
Al termine dell'insegnamento gli studenti/le studentesse saranno in grado di: - formalizzare i requisiti di un processo B2B (Business to Business) mediante la definizione di tre modelli, che riguardano le collaborazioni con processi esterni, i dati trattati e la struttura del processo; - analizzare le caratteristiche di modelli comportamentali basati su reti di Petri, usando criteri quali la liveness, la boundedness e l'assenza di deadlock; - impostare il testing white box di semplici programmi scegliendo tra vari criteri, tra i quali la copertura dei nodi, dei link e dei percorsi; - descrivere gli obiettivi e gli strumenti principali di: gestione dei progetti, gestione della configurazione del software, qualità del software e sviluppo agile.
Students will learn the major notions, products and activities associated with software engineering. The skills to be acquired include the ability to formalize the requirements of a software system by means of structural and behavioral models and the ability to solve simple problems related to the various disciplines of the software process.
I prerequisiti comprendono le conoscenze di base sulla programmazione a oggetti e sui database relazionali.
Basic knowledge of object-oriented programming and relational databases is a prerequisite.
1. Introduzione (1 credito) • Ingegneria del software • Ciclo di vita e processo del software • Analisi dei requisiti 2. Modelli UML (1 credito) • Modelli di classi, relazioni e attributi • Casi d’uso • Diagrammi di attività • Metamodelli 3. Modelli comportamentali (2 crediti) • Modelli di stato • Reti di Petri: proprietà e analisi • Sottoclassi delle reti di Petri • Reti di Petri temporizzate e colorate 4. Processi di business (2 crediti) • Reti di Petri estese (process-oriented) • Modelli di collaborazione • Modelli di sistemi B2B (business to business) • BPMN e pattern di processo 5. Attività di supporto allo sviluppo del software (2 crediti) • Testing white-box e black-box • Gestione configurazione • Gestione progetti • Qualità del software • Metodi agili
1. Introduction (1 credit) • Software engineering • Product life cycle and software process • Requirements analysis 2. UML models (1 credit) • Models of classes, relationships and attributes • Use cases • Activity diagrams • Metamodels 3. Behavioral models (2 credits) • State models • Petri nets: properties and analysis • Subclasses of Petri nets • Timed Petri nets and colored ones 4. Business processes (2 credits) • Extended Petri nets (process-oriented) • Models of collaboration • Models of B2B (business to business) systems • BPMN and process patterns 5. Software process (2 credits) • The CMM model • Verification and validation • White-box and black-box testing • Project management • Configuration management • Software quality • Agile methods
L'insegnamento è costituito da lezioni in aula e gli argomenti sono indicati nella sezione precedente relativa al programma.
This course consists of lectures.
Sul portale della didattica sono disponibili le slide del corso. Alcuni testi di approfondimento: M. Fowler. UML distilled, Quarta edizione, Pearson, 2018. I. Sommerville. Ingegneria del software, Decima edizione, Pearson, 2017.
Lecture slides are available through the portal. Suggested readings: M. Fowler. UML distilled, 4th edition, Pearson, 2018. I. Sommerville. Ingegneria del software, 10th edition, Pearson, 2017.
Modalità di esame: Prova scritta (in aula);
Exam: Written test;
L'esame finale mira a verificare l'acquisizione delle abilità descritte in "Risultati di apprendimento attesi" tramite una prova scritta costituita da un esercizio, 2 gruppi di domande a risposta aperta e 1 gruppo di domande a risposta chiusa. L'esercizio riguarda la formalizzazione dei requisiti testuali di un processo B2B mediante la definizione di tre modelli, che riguardano le collaborazioni con processi esterni, i dati trattati e la struttura del processo. Il primo gruppo di domande a risposta aperta riguarda le caratteristiche di un modello comportamentale basato su reti di Petri, il secondo gruppo riguarda i criteri del white box testing di un metodo java. Il gruppo di domande a risposta chiusa riguarda affermazioni generali sugli aspetti teorici presentati nel corso. La valutazione del compito tiene conto sia della correttezza sia della chiarezza dei modelli forniti e delle risposte date. Per ciascuna delle 4 parti della prova scritta è indicato il punteggio massimo; facendo la somma si ottiene 32 che corrisponde alla lode. La durata massima della prova è di due ore.
Gli studenti e le studentesse con disabilità o con Disturbi Specifici di Apprendimento (DSA), oltre alla segnalazione tramite procedura informatizzata, sono invitati a comunicare anche direttamente al/la docente titolare dell'insegnamento, con un preavviso non inferiore ad una settimana dall'avvio della sessione d'esame, gli strumenti compensativi concordati con l'Unità Special Needs, al fine di permettere al/la docente la declinazione più idonea in riferimento alla specifica tipologia di esame.
Exam: Written test;
The exam consists of a written test made up of four exercises. The main one is based on sections 2 and 4 of the course syllabus and concerns the formalisation of the textual requirements of a software system through the definition of a structural model and a behavioural one. The other exercises concern the other sections of the course syllabus. Normally the main exercise weighs 40% on the final grade, while for the others the weight varies between 10% and 25%. The evaluation of the exercises is based on the correctness of the result. The duration of the test is two hours; students can consult the slides of the course.
In addition to the message sent by the online system, students with disabilities or Specific Learning Disorders (SLD) are invited to directly inform the professor in charge of the course about the special arrangements for the exam that have been agreed with the Special Needs Unit. The professor has to be informed at least one week before the beginning of the examination session in order to provide students with the most suitable arrangements for each specific type of exam.
Esporta Word


© Politecnico di Torino
Corso Duca degli Abruzzi, 24 - 10129 Torino, ITALY
Contatti