Vai al contenuto principale
Se prosegui nella navigazione del sito, ne accetti le politiche:
  • Condizioni di utilizzo e trattamento dei dati
Prosegui
x
e-Learning - UNIMIB
  • Home
  • My Media
  • Altro
Ascolta questa pagina con ReadSpeaker
Italiano ‎(it)‎
English ‎(en)‎ Italiano ‎(it)‎
Ospite
 Login
e-Learning - UNIMIB
Home My Media
Percorso della pagina
  1. Area di Scienze
  2. Corso di Laurea Triennale
  3. Informatica [E3102Q - E3101Q]
  4. Insegnamenti
  5. A.A. 2022-2023
  6. 2° anno
  1. Analisi e Progettazione del Software
  2. Introduzione
Insegnamento Titolo del corso
Analisi e Progettazione del Software
Codice identificativo del corso
2223-2-E3101Q109
Descrizione del corso SYLLABUS

Syllabus del corso

  • Italiano ‎(it)‎
  • English ‎(en)‎
Esporta

Obiettivi

Lo studente acquisirà le competenze necessarie a sviluppare progetti software in gruppi di piccole/medie dimensioni. In particolare, lo studente sarà in grado di analizzare un problema, produrre una specifica dei requisiti, svolgere le attività di analisi e progettazione della soluzione, produrre una parziale implementazione di un sistema che sia consistente con un progetto, utilizzare ambienti di sviluppo e controllo versione avanzati.

Contenuti sintetici

Introdurre il processo di sviluppo del software, concentrandosi in particolare sulle fasi di analisi e di progettazione. Introduzione e utilizzo di alcuni Design Pattern.

Programma esteso

1 Introduzione all’Ingegneria del Software e al Processo di sviluppo del Software. Processi di sviluppo iterativi ed agili
2 Analisi dei requisti funzionali e non funzionali e specifica dei casi d’uso.
3 Analisi e Progettazione orientata agli oggetti ed utilizzo dei pattern GRASP.
4 UML : diagrammi UML per l'analisi e la progettazione del software:
5 Design Patterns.
6 Attività di laboratorio sull’utilizzo di ambienti per lo sviluppo ed il controllo delle versioni-GIT
7 Introduzione al test driven development.
8 Intrduzione al Refactoring del Codice e ai Code Smell nel codice.

Prerequisiti

Conoscenza di un linguaggio di programmazione orientato agli oggetti come Java.

Modalità didattica

Il corso è tenuto in lingua italiana con alcune slide ed articoli di approfondimento in inglese.

Lezioni, sessioni di laboratorio, esercitazioni in aula, esercitazioni in laboratorio ed esercitazioni assegnate in laboratorio o in aula da terminare a casa.

Le lezioni saranno erogate in presenza.

Materiale didattico

Larman, Applicare UML e i pattern – analisi e progettazione orientata agli oggetti, Pearson, 5° ed, 2020.

I. Sommerville, Ingegneria del Software, Pearson, 10° ed, 2017. (solo due capitoli).

M. Fowler, UML Distilled, Peason, 4° ed, 2018.

Slide, articoli e tutorial di approfondimento su alcuni argomenti del corso.

Periodo di erogazione dell'insegnamento

II semestre

Modalità di verifica del profitto e valutazione

Appello tradizionale:
La valutazione dell'apprendimento consiste in una prova scritta con esercizi e alcune domande su tutto il programma del corso e poi una prova orale obbligatoria. Le due prove saranno valutate in trentesimi facendo una media pesata fra le due prove (tendenzialmente: orale 40% e scrittto 60%).

Pre-Appello
La valutazione per gli studenti che seguono il corso consiste in un'estensione di un progetto assegnato durante l'attività di laboratorio e una prova orale obbligatoria. Le due prove saranno valutate in trentesimi facendo una media pesata fra le due prove (tendenzialmente: orale 40% e scrittto 60%).

Affinché il voto sia attribuito, è inoltre STRETTAMENTE NECESSARIO che ENTRAMBE le prove (Progettuale/scritto e Orale) siano valutate SUFFICIENTI dal docente. La sufficienza è stabilita da soglie di voto per le due parti (almeno 18 nella prova orale e almeno 16 nella prova progettuale).

Esercizi asseganti durante i Laboratori, valuati in un range 0-4.
L'attività complessiva dei Laboratori sarà valutata e consentirà di ottenere fra 0-4 punti che saranno sommati alla valutazione finale se nell’esame tradizionale o in pre-appello è stata ottenuta la sufficienza (almeno 18 nella prova orale e almeno 16 nella prova scritta)..

Orario di ricevimento

Francesca Arcelli Fontana: per appuntamento

Oliviero Riganelli: per appuntamento

Esporta

Aims

The student will achieve the skills necessary to develop software projects of medium/large dimensions. In particular the student will be able to analyze a problem, write a requirement specification, analyze and design a solution, implement a component of the analyzed system exploiting the development environment and versioning system introduced in the course.

Contents

The main aim of this course is to introduce the software development process, concentrating in particular on the object-oriented analysis and design phases. Another aim is to introduce some Design Patterns.

Detailed program

  1. Introduction to Software Engineering and the Software Development Process. Agile development processes.
  2. Analysis of requirements and specification of use cases
  3. OO-Analysis and Design and use of GRASP patterns
  4. UML Diagrams
  5. Design Patterns
  6. Laboratory activities on the use of environments for the development and control of versions
  7. Introduction to test driven development.
  8. Introdction to Code Refactoring and Code Smell in the Code.

Prerequisites

Knowledge on an object-oriented language like Java.

Teaching form

The lessons of the course are in italian, with some slides and papers to study in English.

Lessons, laboratory sessions, classroom exercises, laboratory exercises and homework

The lessons will be taken in presence.

Textbook and teaching resource

Larman, Applicare UML e i pattern – analisi e progettazione orientata agli oggetti, Pearson, 5° ed, 2020.

I. Sommerville, Ingegneria del Software, Pearson, 10° ed, 2017. (solo due capitoli).

M. Fowler, UML Distilled, Peason, 4° ed, 2018.

Slide, articles and tutorials on some topics of the course.

Semester

Second semester

Assessment method

Learning assessment consists of a written online exam with exercises, questions on all the program of the course and then a mandatory oral exam.

The assessment for the students following the course consists in an extension of a project assigned during the Laboratory activity and a mandatory oral exam.

Exercises assigned during Lab.

Office hours

Francesca Arcelli Fontana: by appointment.

Oliviero Riganelli by appointment.

Entra

Scheda del corso

Settore disciplinare
ING-INF/05
CFU
8
Periodo
Secondo Semestre
Tipo di attività
Obbligatorio
Ore
76
Tipologia CdS
Laurea Triennale
Lingua
Italiano

Staff

    Docente

  • FA
    Francesca Arcelli Fontana
  • MM
    Marco Mobilio
  • GN
    Gabriella Nifosì
  • CR
    Claudia Raibulet
  • Oliviero Riganelli
    Oliviero Riganelli

Opinione studenti

Vedi valutazione del precedente anno accademico

Bibliografia

Trova i libri per questo corso nella Biblioteca di Ateneo

Metodi di iscrizione

Iscrizione manuale
Iscrizione spontanea

Ospite (Login)
Politiche
Ottieni l'app mobile
Powered by Moodle
© 2025 Università degli Studi di Milano-Bicocca
  • Privacy
  • Accessibilità
  • Statistiche