Skip to main content
If you continue browsing this website, you agree to our policies:
  • Condizioni di utilizzo e trattamento dei dati
Continue
x
If you continue browsing this website, you agree to our policies:
  • Condizioni di utilizzo e trattamento dei dati
Continue
x
e-Learning - UNIMIB
  • Home
  • My Media
  • More
Listen to this page using ReadSpeaker
English ‎(en)‎
English ‎(en)‎ Italiano ‎(it)‎
You are currently using guest access
 Log in
e-Learning - UNIMIB
Home My Media
Percorso della pagina
  1. Science
  2. Master Degree
  3. Informatica [F1802Q - F1801Q]
  4. Courses
  5. A.A. 2021-2022
  6. 1st year
  1. Software Development Process (blended)
  2. Summary
Insegnamento Course full name
Software Development Process (blended)
Course ID number
2122-1-F1801Q154
Course summary SYLLABUS

Course Syllabus

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

Obiettivi

Imparare a gestire progetti complessi utilizzando metodi agili e DevOps,

Imparare ad analizzare rischi e costi di un progetto software,

Imparare ad utilizzare tecniche informali, semi-formali e formali di analisi e specifica dei requisiti,

Imparare a progettare e sviluppare applicazioni complesse utilizzando framework Java di ultima generazione.


Contenuti sintetici

Il corso presenta metodi, tecniche e tecnologie per la gestione di progetti complessi. Il corso si compone di tre parti. La prima parte è dedicata ai processi di sviluppo agili e DevOps, alla stima dei costi e all’analisi dei rischi. La seconda parte è dedicata all’analisi e alla specifica dei requisiti. La terza parte è dedicata al progetto e sviluppo di applicazioni usando framework Java di ultima generazione e tecnologia J2EE.


Programma esteso

Processi di sviluppo agili (principi generali, Extreme Programming, Scrum) e DevOps.  

Gestione di Progetto: stima dei costi, analisi dei rischi, maturità dei modelli (CMMI)  

Ingegnerizzazione dei Requisiti: introduzione, comprensione ed elicitazione dei requisiti, valutazione dei requisiti, specifica e documentazione dei requisiti (linguaggio naturale, diagrammi, metodi formali), controllo qualità dei requisiti, evoluzione dei requisiti.  

Progetto e Sviluppo: design patterns per applicazioni enterprise; framework MVC (Spring); JPA - Java Persistence API  

EJB 3.0, sviluppo di applicazioni J2EE


Prerequisiti

Conoscenza elementare di Java, SQL, e delle tecnologie Web (HTML, http, etc.)


Modalità didattica

Lezione, esercitazione, test autovalutazione e materiale e-Learning. La lingua di erogazione del corso è l'Italiano.

Nel periodo di emergenza Covid-19 le lezioni si svolgeranno online con modalità mista (registrate e sincrone).

Materiale didattico

Libri di testo (selezione di capitoli)

Requirements Engineering, Axel van Lamsweerde, Wiley, 2009.

Patterns of Enterprise Application Architecture, Martin Fowler, Addison-Wesley, 2002.

Enterprise JavaBeans 3.0, O’Reilly Media, Richard Monson-Haefel, Bill Burke, 2006.


Risorse online e articoli caricati in piattaforma.

Esercizi di autovalutazione.

Periodo di erogazione dell'insegnamento

1° semestre

Modalità di verifica del profitto e valutazione

Due opzioni disponibili:

- esercizi + esame scritto: gli studenti che lavorano durante l'erogazione del corso possono superare l’esame facendo delle consegne in itinere e superando infine una prova scritta.

- esame scritto + colloquio orale: altrimenti gli studenti possono superare l’esame svolgendo una prova scritta e una prova orale.


Nel periodo di emergenza Covid-19 i colloqui orali si svolgeranno online.

Orario di ricevimento

Su appuntamento.

Export

Aims

Learn how to manage complex software projects using agile methods and DevOps,

Learn how to analyze project risks and costs,

Learn how to use formal, semi-formal and informal techniques for the analysis and specification of software requirements,

Learn how to design and develop complex software applications using modern Java frameworks.


Contents

The course describes methods, techniques and technologies for managing complex software projects. The course is organized in three parts. The first part is dedicated to agile software processes, DevOps, cost estimation and risk analysis. The second part is dedicated to the analysis and specification of software requirements. The third part is dedicated to the design and development of software applications using modern Java frameworks and the J2EE technology


Detailed program

Agile software processes (basic principles, Extreme Programming, Scrum) and DevOps.  

Process management: project cost estimation, risk analysis, capability maturity model (CMMI)  

Requirements engineering: introduction, domain understanding and requirements elicitation, requirements evaluation, requirements specification and documentation (natural language, diagrammatic notations, formal specifications), requirements quality assurance, requirements evolution.  

Design and development: design patterns for enterprise applications; framework MVC (Spring); JPA - Java Persistence API  

EJB 3.0, development of J2EE applications.


Prerequisites

Basic knowledge of Java, SQL, and Web technologies (e.g., HTML, http, etc.)


Teaching form

Lectures, exercises, self-assessment tests and e-learning material. The course is taught in Italian.

During covid-19 emergency, the lectures will be given online, both wth recorded lectures and synchronous meetings.

Textbook and teaching resource

Textboooks (selected chapters)

Requirements Engineering, Axel van Lamsweerde, Wiley, 2009.

Patterns of Enterprise Application Architecture, Martin Fowler, Addison-Wesley, 2002.

Enterprise JavaBeans 3.0, O’Reilly Media, Richard Monson-Haefel, Bill Burke, 2006.


Online resources and articles available in the platform.

Self-assessment tests.

Semester

First semester

Assessment method

Two options available:

- assignments + written exams: the students who are active during the course can pass the exam by producing assignments in addition to taking a written exam

- written exam + oral assessment: otherwise, the students can pass the course by taking a written exam followed by an oral assessment.

During COVID-19 emergency, the oral exams will be taken online.

Office hours

On appointment.

Enter

Key information

Field of research
ING-INF/05
ECTS
6
Term
First semester
Activity type
Mandatory
Course Length (Hours)
56
Language
Italian

Staff

    Teacher

  • LM
    Leonardo Mariani
  • Alessandro Tundo
    Alessandro Tundo
  • Assistant

  • DC
    Diego Clerissi

Students' opinion

View previous A.Y. opinion

Bibliography

Find the books for this course in the Library

Enrolment methods

Self enrolment (Student)
Manual enrolments

You are currently using guest access (Log in)
Policies
Get the mobile app
Powered by Moodle
© 2025 Università degli Studi di Milano-Bicocca
  • Privacy policy
  • Accessibility
  • Statistics