Corso Vittorio Emanuele II, 39 - Roma 0669207671

Computer Engineering (Academic Year 2022/2023) - Programming and security

Software design


Credits: 9
Content language:Italian
Course description
Insegnamento obbligatorio della Laurea Magistrale in Ingegneria Informatica, collocato al I anno.
Prerequisites
Programmazione Orientata agli Oggetti.
Objectives
Il corso ha l’obiettivo di presentare gli aspetti fondamentali della modellazione, analisi e progettazione del software, con riferimento alle tecniche di analisi e progettazione orientata agli oggetti e allo sviluppo, iterativo, incrementale e agile. Lo studente potrà così affrontare le problematiche di produzione di software di dimensioni medio-grandi con la partecipazione di molte e differenziate figure professionali (programmatori, analisti, beta tester, ecc. ecc.).
Program

Il presente corso, che fornisce 9 crediti formativi, è composto da 28 videolezioni, da vedere ciascuna almeno due volte, per un totale minimo di 56 ore di attività dello studente.

Le videolezioni trattano i seguenti argomenti:

• Introduzione all’analisi e progettazione del software
• Sviluppo iterativo, incrementale e agile
• Casi d’uso
• Modellazione di dominio
• Ancora sulla modellazione di dominio
• Operazioni di sistema
• Progettazione logica e architettura a strati
• Progettazione di oggetti con responsabilità
• Progettazione a oggetti: uno studio di caso
• Dalla progettazione al codice
• Progettazione a oggetti: un altro studio di caso
• Ancora sulla modellazione di dominio
• Ulteriori progettazione di oggetti con responsabilità
•Altri stili architetturali fondamentali (MVC, Shared Repository, Microkernel, Reflection)
• Introduzione ai sistemi distribuiti e al middleware
• Stile client ‐ server
• Stile peer ‐ to ‐ peer
• Architetture a oggetti distribuiti e broker
• Messaging
• Architetture basate su componenti
• Architetture orientate ai servizi
• Cloud computing

Book
Sono inoltre presenti materiali didattici collegati agli argomenti delle video lezioni, che si compongono di testi di approfondimento teorico e dispense; tali materiali didattici compongono lo studio individuale dello studente di circa 150 ore. In dettaglio, i materiali didattici collegati sono: - Slide del corso, le slide utilizzate dai docenti autori delle videolezioni, che gli studenti potranno scaricare e stampare per crearsi il proprio "quaderno del corso" - Libri&Articoli: testi, saggi, schede descrittive, approfondimenti, - Bibliografia: riferimenti ragionati a fonti bibliografiche associati ai singoli argomenti di ogni videolezione - Sitografia: selezioni ragionate di Siti web collegate agli argomenti della videolezione - Testi d'esame: I riferimenti principali per il corso di Progettazione di software sono: Craig Larman, “Applicare UML e i pattern – Analisi e progettazione orientata agli oggetti”, Pearson Education Italia (nuova edizione prevista in uscita nel 2016, la precedente è del 2005), per la prima parte del corso (Analisi e Progettazione Orientata agli Oggetti); Dispense predisposte dal docente video, per la seconda parte del corso (Architetture Software).
Exercises
Le modalità di valutazione del corso sono strutturate da prove di verifica intermedie, che verranno consegnate attraverso la piattaforma UNINETTUNO e valutate dal Docente/Tutor. La prova di valutazione finale consiste nello sviluppo di uno o più dei macroargomenti in cui è suddiviso il corso o parte di essi, dove lo studente, senza l’ausilio di libri o appunti, dovrà dimostrare la piena conoscenza di tutte le tematiche che caratterizzano il tema proposto e mostrare con esempi attinenti la padronanza dell’argomento.
Professor/Tutor responsible for teaching
Filippo Biscarini
List of lessons
Luca Cabibbo
Luca Cabibbo
Luca Cabibbo
Luca Cabibbo
Luca Cabibbo
Luca Cabibbo
Luca Cabibbo
Luca Cabibbo
Luca Cabibbo
Luca Cabibbo
Luca Cabibbo
Luca Cabibbo
Luca Cabibbo
Luca Cabibbo
Luca Cabibbo
Luca Cabibbo
Luca Cabibbo
Luca Cabibbo
Luca Cabibbo
Luca Cabibbo
Luca Cabibbo
Luca Cabibbo
    •  Lesson n. 23: Broker  Go to this lesson
Luca Cabibbo
    •  Lesson n. 24: Messaging  Go to this lesson
Luca Cabibbo
Luca Cabibbo
Luca Cabibbo
Luca Cabibbo
Luca Cabibbo