09032 - INGEGNERIA DEL SOFTWARE

Anno Accademico 2013/2014

  • Docente: Antonio Natali
  • Crediti formativi: 9
  • SSD: ING-INF/05
  • Lingua di insegnamento: Italiano
  • Modalità didattica: Convenzionale - Lezioni in presenza
  • Campus: Cesena
  • Corso: Laurea in Ingegneria elettronica, informatica e telecomunicazioni (cod. 8196)

Conoscenze e abilità da conseguire

Al termine del corso lo studente posside concetti, metodologie e tecniche per la costruzione dei sistemi software e per la gestione del ciclo di vita del software. In particolare lo studente è in grado di: - impostare le fasi di analisi dei requisiti, analisi del problema progetto, implementazione, collaudo; - gestire la documentazione e la manutenzione del software; - leggere e creare digrammi UML; - utilizzare pattern di progettazione (Design Pattern); - adottare tecniche di extreme programming, con particolare riferimento al lavoro cooperativo e alla integrazione continua. Lo studente è in grado di svolgere le attività sia in modo individuale sia in gruppo ed è capace di redigere ed esporre in modo sistematico relazioni tecniche connesse al processo di produzione del software e alla descrizione del prodotto. Lo studente è in grado di auto-organizzarsi nell'apprendimento delle tecnologie informatiche, in un preciso quadro metodologico impostato in modo da risultare utile anche per l'autovalutazione del proprio interesse al proseguimento degli studi.

Contenuti

Processi di sviluppo del software a spirale model-driven e/o code-based . Richiami sulla costruzione di sistemi software ad oggetti, Introduzione agli  strumenti di lavoro: il framework Eclipse. Concetti fondamentali del linguaggio UML. Design pattern ed esempi di applicazione. Tecniche e metodologie di integrazione continua e collaudo nel lavoro singolo e di gruppo. Utilizzo  di componenti software (OSGi e Eclipse plugin).


Testi/Bibliografia

Antonio Natali, Ambra Molesini: Costruire sistemi software: dai modelli al codice. II edizione. Esculapio-Progetto Leonardo ISBN 978-88-7488-334-9  Dispense a cura del docente, corredate di riferimenti bibliografici commentati. Il sito di riferimento è http://edu222.deis.unibo.it

Metodi didattici

Il corso prevede una stretta interazione tra la parte teorica e la parte pratica in laboratorio La parte applicativa  viene impostata  simulando, per quanto possibile,  un ambiente di produzione industriale, focalizzando l'attenzione su forme  di lavoro cooperatico, avvalendosi anche di  supporti di eLearning.

Modalità di verifica e valutazione dell'apprendimento

Viene proposto un tema di progetto da affrontare in due fasi. La prima fase inizia con la pubblicazione di un testo di requisiti  per un sistema software da costruire; tale fase deve terminare con la produzione di un  prototipo del sistema software e del sito del progetto. Questa fase può essere svolta in modo individuale o in gruppo.  La seconda fase consiste in una discussione individuale  orale dell'elaborato. 

Strumenti a supporto della didattica

Il materiale didattico viene presentato attraverso slides e dispense,  sarà reso  disponibile agli studenti in formato pdf e in forma ipertestuale  in rete sia via web sia attraverso   sistemi di eLearning (si veda http://137.204.107.78/moodle/ ). 

Link ad altre eventuali informazioni

http://edu222.deis.unibo.it

Orario di ricevimento

Consulta il sito web di Antonio Natali