Programma di Costruzione Del Software:

DOCENTI

Proff. Ingg. Giovanni Cantone e Manuel Mastrofini

Tutor: Da nominare, altro (da formlizzare) 

 

ARGOMENTI  

- La misura del software: ontologie e produzione di modelli (20%)

- Approcci Agile allo sviluppo del software (7,5%)

- Framework per la persistenza: da Hibernate a Spring (7,5%)

- Sviluppo software orientato ai Servizi: da SOAP a RESTfull (5%)  

- Framework per la progettazione e implementazione di Front-end: da JSP e Javascript ad AngularJS | Angular | ReactJS  (5%)  

- Stack tecnologici a supporto del "Big-data! e relativo impiego (5%)  

- Introduzione all'organizzazione e all'impiego di ulteriori tecnologie software: Adobe XD, Git, IntelliJIdea, Slack, Miro, Atlassian Jira, Weka, etc. (5%)

- Sviluppo di un progetto software di tipo industriale basandosi su Scrum e impiegando molte delle metodologie, tecniche e tecnologie erogate in questo e in precedenti corsi. Un docente svolgerà il ruolo di Special Domain Expert; l’altro docente, di formazione industriale, svolgerà il ruolo di Product owner. Istruttori di provenienza industriale svolgeranno i ruoli di Scrum Master ed Esperto di Programmazione di Front-end. (45%). 

Seminari aggiuntivi saranno forniti da sedi nazionali e straniere da esperti italiani di processo, architetture e progettazione software, i quali hanno usualmente studiato Ingegneria del software o collaborato con i docenti di questo corso presso l’Università degli Studi di Roma Tor Vergata e ora occupano posizioni apicali in rilevanti progetti industriali in Italia o all’estero.

 

PREREQUISITI

Per l’ammissione a questo corso, agli studenti si richiede di aver già superato gli esami di:

- corsi di base, quali: Fondamenti di Informatica, Ingegneria degli algoritmi, Basi di dati e:

- Ingegneria del software I, corso comprensivo di: Gestione dei requisiti con Casi d’uso. Analisi, Progettazione e Programmazione orientate agli oggetti. Design pattern. Programmazione di applicazioni web.

- Ingegneria del software II, corso comprensivo di: Tecniche di software testing. ”Machine learning per  l'Ingegneria del software. Impiego di alcune metriche software. Si richiede altresì la conoscenza dei fondamenti di Big data. 

 

  MODALITA’ DI INSEGNAMENTO  

Ogni settimana, una lezione in aula più una lezione in Laboratorio di Informatica seguita da altre due ore di tutorato, sempre in Laboratorio di Informatica, con docenti e studenti organizzati come team Scrum distribuito, con docenti e tutori parte in presenza, parte connessi via piattafrorma MS Teams. Durante gli incontri del team Scrum, i due docenti e i tutor industriali interagiranno con ogni studente, inteso tanto individualmente e tanto come membro dello stesso team Scrum, sia verificandone l'apprendimento di metodi, tecniche e strumenti, sia approfondendo l'impiego delle tecnologie nello sviluppo dell'applicazione assegnata al team.  

 

 

 

MODALITA’ DI VERIFICA  

Tutti gli studenti dovranno partecipare a una seduta d'esami di profitto, su aspetti sia teorici, sia di laboratorio, con docenti e tutori. Per la parte su Ontologie software, potrà essere svolta una valutazione in itinere.  

 

MODALITA’ DI FREQUENZA  

La frequenza è obbligatoria. Ogni studente è tenuto a partecipare a ogni lezione e a ciascun incontro di progetto, salvo eccezioni più uniche che rare. Nei casi ammessi, ci si organizzerà per consentire la partecipazione a distanza. Agli incontri di progetto partecipano di solito tutti i docenti e i tutor.