Tecnologie Informatiche L-31 Corso di Ingegneria del software e Laboratorio di Ingegneria del software Anno Accademico 2011/12 Rosario Culmone - p. 1/17
Orario Titolo Partizioni Lezioni Chi tiene il corso Dove Posta elettronica Quando Ingegneria del software e laboratorio di ingegneria del software Due moduli per un totale di 12 CFU 90 ore di lezione frontale Rosario Culmone, Roberto Gagliardi Polo Informatico, Camerino rosario.culmone@unicam.it, roberto.gagliardi@unicam.it Ingegneria Laboratorio Giorno Ora Aula Ora Aula Lunedì 15:00-17:00 AB1 Martedì Mercoledì 10:00-13:00 LA1 Giovedì Venerdì 10:00-13:00 AB1 - p. 2/17
Modulo Ingegneria del software Illustrare i principi, gli strumenti e le tecniche per la specifica, analisi, progettazione, codifica e test di programmi. Ciclo di vita del software Linguaggio di analisi e design UML Linguaggio di specifica formale Alloy Componente statica Alloy e traduzione Class diagram UML in Alloy Componente dinamica in UML e Reti di Petri Linguaggio OCL Reti di Petri Linguaggio di specifica JML per Java Pattern Design Diagramma di Gantt Tecniche per il testing - p. 3/17
Mappa concettuale Process Gantt UML OCL Alloy Petri Net JML Pattern Design Test Java - p. 4/17
Ripartizione Il corso è ripartito in due moduli: Ingegneria del software dove si tratta delle tematiche generali sulla specifica, progettazione e codifica. Vale 6 CFU. Un CFU = 7 ore di lezione frontale + 18 di studio individuale. Laboratorio di ingegneria del software dove si impara uno specifico linguaggio per la specifica e la progettazione. Vale 6 CFU. Un CFU = 8 ore di lezione frontale + 17 di studio individuale. - p. 5/17
Appelli Sono previsti 1 o 2 appelli tra la fine e l inizio di ogni periodo didattico Le date sono pubblicate su: su https://didattica.unicam.it o su http://www.cs.unicam.it/culmone bacheca presso il Polo informatico (solo eventuali spostamenti) - p. 6/17
Prova d esame L esame è composto da una prova scritta, una prova di laboratorio e una prova orale. La prova scritta riguarda argomenti svolti nel modulo di "Ingegneria del software". La prova di laboratorio consiste nella realizzazione in gruppi di al più 4 componenti di un manufatto su specifiche fornite dal docente. La prova orale consiste nella discussione del progetto e su argomenti trattati a lezione. - p. 7/17
Come si sostiene l esame Per superare l esame di "Ingegneria del software e laboratorio di ingegneria del software" si deve superare la prova scritta con almeno 18/30 quindi la prova orale. Non è possibile sostenere la prova orale se non si è superata la prova scritta e svolto il progetto. La discussione del progetto deve essere sostenuta da tutto il gruppo che ha partecipato alla stesura. Se un componente del gruppo non supera la prova orale deve risostenere la prova scritta e la discussione del progetto. La validità del progetto è annuale è va dal primo appello della prima sessione (febbraio) sino all ultimo appello straordinario dell anno solare (dicembre). Chi non supera l esame entro l anno deve svolgere il nuovo progetto assegnato per l anno accademico successivo. - p. 8/17
Progetto La prova del modulo "Laboratorio di ingegneria del software" consiste nello svolgimento di un progetto assegnato a lezione entro metà novembre. Il progetto consiste nell applicazione dei metodi e strumenti per la specifica, analisi, progettazione e codifica di un semplice sistema software. Nello svolgimento del progetto si dovranno produrre diagrammi, documenti, codice che comprovino l utilizzo delle tecniche e degli strumenti visti a lezione. Una migliore valutazione verrà data a chi avrà eseguito e prodotto correttamente documentazione, diagrammi e codice. In fase di discussione, verrà chiesto singolarmente a ciascun componente commenti e delucidazioni su soluzioni, diagrammi, codice prodotto nel progetto. - p. 9/17
Dispense - p. 10/17
Libri consigliati Titolo Autore Editore ISBN Software Abstraction Daniel Jackson MIT Press The Object Constraint Language Design Patterns Progettazione del software e design pattern in Java Jos Warmer, Anneke Kleppe Gamma, Helm, Gohnson, Vlissides Addison Wesley Pearson 0-262-10114-9 0-321-17936-6 88-7192-150-X Hostmann Cay Apogeo 88-503-2157-0 - p. 11/17
Software Software Versione Reperibilità SDK 1.4 http://www.sun.com BlueJ 1.0.5 http://www.bluej.org Eclipse 3.4 http://www.eclipse.org Alloy 4.1.10 http://alloy.mit.edu/alloy4 Violet 0.17.3 http://alexdp.free.fr/violetumleditor/page.php GanttProject 2.0.10 http://www.ganttproject.biz BoUml 4.19.2 http://bouml.free.fr UML2Alloy 0.52 Beta http://www.cs.bham.ac.uk/ bxb/uml2alloy Pipe2 2.5 http://pipe2.sourceforge.net JUnit 3, 4 http://www.junit.org/ - p. 12/17
Manuali - p. 13/17
Link Tutti i lucidi sono in formato pdf disponibili su http://www.cs.unicam.it/culmone - p. 14/17
Orario di ricevimento Dove Polo informatico "Carla Lodovici", Camerino Quando Mercoledì dalle ore 15:00 alle ore 17:00 - p. 15/17
Studenti lavoratori La frequenza alle lezioni non è obbligatoria ma consigliata. Il materiale didattico si reputa essere sufficiente ad acquisire conoscenze per sostenere le prove scritte e per realizzare il progetto assegnato. Tuttavia se si è impossibilitati a poter seguire le lezioni, è consigliato di tenere contatti con colleghi che frequentano regolarmente le lezioni. - p. 16/17
Studenti disabili Tutti i testi prodotti da che tiene il corso sono in formato PDF o ASCII pertanto è possibile utilizzare strumenti di lettura automatica o di conversione in braille. In alcune parti del programma si utilizzano disegni e grafici per illustrare meglio alcuni concetti (automi, semantica) parti del programma. Tuttavia tali disegni non sono indispensabili e sono facilmente sostituibili con equivalente espressività in forma testuale. - p. 17/17