Skip to Main Content (Press Enter)

Logo UNIBS
  • ×
  • Home
  • Persone
  • Strutture
  • Competenze
  • Pubblicazioni
  • Professioni
  • Corsi
  • Insegnamenti
  • Terza Missione

Competenze & Professionalità
Logo UNIBS

|

Competenze & Professionalità

unibs.it
  • ×
  • Home
  • Persone
  • Strutture
  • Competenze
  • Pubblicazioni
  • Professioni
  • Corsi
  • Insegnamenti
  • Terza Missione
  1. Insegnamenti

703019 - INGEGNERIA DEL SOFTWARE

insegnamento
Tipo Insegnamento:
Ins. uff. con erogazioni e cop.
Obbligatoria
Durata (ore):
90
CFU:
9
SSD:
SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI
Sede:
BRESCIA
Url:
Dettaglio Insegnamento:
INGEGNERIA DELLE TECNOLOGIE PER L'IMPRESA DIGITALE/comune Anno: 3
Dettaglio Insegnamento:
INGEGNERIA INFORMATICA/comune Anno: 3
Anno:
2025
Course Catalogue:
https://permalink.unibs.it/suacds/afcc/2025?corso=...
  • Dati Generali
  • Syllabus
  • Corsi

Dati Generali

Periodo di attività

Ciclo Annuale Unico (15/09/2025 - 05/06/2026)

Syllabus

Obiettivi Formativi

Il corso si propone di fornire innanzi tutto un quadro della teoria, dei metodi e delle tecniche inerenti alla realizzazione di un progetto software, quindi di approfondire le scelte architetturali della progettazione orientata agli oggetti, nonché le attività di verifica e refactoring.

Prerequisiti

Conoscenza del linguaggio di programmazione Java.

Metodi didattici

Lezioni frontali; presentazione di esempi; svolgimento di esercizi. Presentazione delle specifiche e di qualche caso di test del progetto assegnato per la prova orale.

Verifica Apprendimento

L’erogazione dell’insegnamento è distribuita in due semestri. La verifica dell’apprendimento dei contenuti erogati in ciascun semestre avviene mediante una prova scritta distinta. L’esame prevede obbligatoriamente il superamento di due prove scritte (una per ciascuna parte dell’insegnamento) e di una prova orale. Le tre prove possono essere sostenute in qualsiasi ordine relativo.
Le caratteristiche delle prove d’esame sono meglio dettagliate di seguito.

Due prove scritte (con data e ora assegnate nella pagina di appelli e prove intermedie del portale di Ateneo).
La prova scritta relativa a ciascuna delle due parti dura tra i 60' e i 90' e consiste in domande sia a risposta chiusa sia a risposta aperta. Lo studente può scegliere di sostenere più volte questa prova: il voto valido è quello dell'ultima prova consegnata. La mancata consegna non comporta alcuna conseguenza purché sia stata segnalata al docente.

Una prova orale (con data e ora assegnate nella pagina di appelli e prove intermedie del portale di Ateneo).
La prova orale (unica) consiste nella presentazione di un progetto (suddiviso in due parti) proposto dal docente e sviluppato in gruppo, quest'ultimo costituito al più da tre studenti. Tutti gli appartenenti al gruppo devono sostenere insieme la prova orale, previa iscrizione di ciascuno di loro a suddetta prova nella pagina di appelli e prove intermedie del portale di Ateneo.
Il materiale relativo alla prima parte del progetto deve essere consegnato (attraverso la piattaforma Moodle) in anticipo rispetto alla prova orale, ovvero almeno entro l’appello precedente rispetto a quello in cui si intende sostenere la prova orale. Questa consegna deve avvenire senza alcuna iscrizione da parte dei componenti del gruppo.
Il materiale relativo alla seconda parte del progetto deve essere consegnato (attraverso la piattaforma Moodle) qualche giorno prima rispetto alla data della prova orale, cioè entro la data indicata nelle note della pagina di appelli e prove intermedie del portale di Ateneo. Questa consegna deve essere accompagnata dall’iscrizione alla prova orale da parte di tutti i componenti del gruppo. La prova orale si sostiene una sola volta, a meno di mancato superamento della stessa.

Testi

Testi adottati:
M. FOWLER; UML DISTILLED, 4/E; ADDISON-WESLEY ITALIA; 2010; 9788871925981

E. GAMMA, R. HELM, R. JOHNSON, J. VLISSIDES; DESIGN PATTERNS: ELEMENTI PER IL RIUSO DI SOFTWARE A OGGETTI, PRIMA EDIZIONE ITALIANA; ADDISON - WESLEY; 2002; 887192150X

Testi per la consultazione:
R. S. PRESSMAN; PRINCIPI DI INGEGNERIA DEL SOFTWARE, 5/E; MCGRAW-HILL; 2008; 9788838664182

I. SOMMERVILLE; INGEGNERIA DEL SOFTWARE, 10/E; PEARSON ITALIA; 2017; 9788891902245

I. SOMMERVILLE; INTRODUZIONE ALL’INGEGNERIA DEL SOFTWARE MODERNA; PEARSON ITALIA; 2021; 9788891915276

R. SETHI; SOFTWARE ENGINEERING; CAMBRIDGE UNIVERSITY PRESS; 2022; 9781009051811

Contenuti

In breve:

Software: prodotto e processo.
Ingegneria dei requisiti.
Linguaggi e metodi di specifica.
Progettazione per contratto.
Progettazione orientata agli oggetti, design pattern.
Verifica e convalida.
Manutenzione, refactoring.

Per esteso:

*Software: prodotto e processo*
Caratteristiche di qualità. Fasi e attività del processo produttivo. Diversi processi di sviluppo (a cascata, a V, incrementali/iterativi/evolutivi). Metamodello a spirale.

*Ingegneria dei requisiti*
Elicitazione e analisi dei requisiti. Modello concettuale del dominio applicativo.

*Linguaggi e metodi di specifica*
Linguaggi formali per la descrizione di modelli di sistemi software: automi e reti di Petri. Linguaggi semi-formali per la descrizione di modelli di sistemi software: notazione UML (tutti i tipi di diagrammi).

*Progettazione*
Moduli, interfacce dei moduli e relazioni tra moduli. Principi di modularizzazione. Progettazione per contratto. Progettazione difensiva.

*Metodologie di sviluppo moderne*
Sviluppo iterativo con UP, sviluppo agile con XP e SCRUM.

*Progettazione orientata agli oggetti*
Progettazione modulare, coesione e accoppiamento. Elementi ricorrenti di progetto (design pattern). Pattern GoF e GRASP. Principi SOLID.

*Verifica e convalida*
Attività di testing. Metodi di testing strutturale e funzionale. Testing di unità. Testing di integrazione. Testing degli utenti. Ispezioni del codice e walkthrough.

*Refactoring*
Fonti di “cattivi odori” nel codice. Linee guida per il refactoring. Pattern di refactoring.

*Manutenzione*
Sistemi legacy. Processo di re-ingegnerizzazione. Stime dei costi di manutenzione.

Lingua Insegnamento

Italiano

Altre informazioni

Attraverso la piattaforma Moodle i docenti mettono a disposizione degli studenti tutto il materiale didattico mostrato durante lezioni ed esercitazioni, unitamente ad alcuni esercizi svolti.

Corsi

Corsi (2)

INGEGNERIA DELLE TECNOLOGIE PER L'IMPRESA DIGITALE 
Laurea
3 anni
INGEGNERIA INFORMATICA 
Laurea
3 anni
No Results Found
  • Assistenza
  • Privacy
  • Utilizzo dei cookie
  • Note legali

Realizzato con VIVO | Designed by Cineca | 25.12.1.0