LEZIONE 1 INTRODUZIONE AL CORSO -...

19
Istituto di Scienza e Tecnologie dell'Informazione “A. Faedo” Software Engineering and Dependable Computing Laboratory LEZIONE 1 LEZIONE 1 INTRODUZIONE AL CORSO INTRODUZIONE AL CORSO Laboratorio di Ingegneria del Software Guglielmo De Angelis [email protected]

Transcript of LEZIONE 1 INTRODUZIONE AL CORSO -...

Istituto di Scienza e Tecnologie dell'Informazione “A. Faedo”Software Engineering and Dependable Computing Laboratory

LEZIONE 1 LEZIONE 1 INTRODUZIONE AL CORSOINTRODUZIONE AL CORSO

Laboratorio di Ingegneria del Software

Guglielmo De Angelis

[email protected]

SOFTWARE ENGINEERING AND DEPENDABLE COMPUTING LABORATORYISTITUTO DI SCIENZA E TECNOLOGIE DELL'INFORMAZIONE “A. FAEDO”

chi sono io ?!?!?!

» NOME : Guglielmo » COGNOME : De Angelis» SESSO : M» COSA FACCIO :

»modellazione di sistemi software»modellazione di proprietà extra-funzionali»generazione automatica a partire da modelli»service oriented architecture»software testing

» GRUPPO : LabSEDC @ ISTI – CNR» DOVE : Pisa

SOFTWARE ENGINEERING AND DEPENDABLE COMPUTING LABORATORYISTITUTO DI SCIENZA E TECNOLOGIE DELL'INFORMAZIONE “A. FAEDO”

chi sono io ?!?!?!

» NOME : Guglielmo » COGNOME : De Angelis» SESSO : M» COSA FACCIO :

»modellazione di sistemi software»modellazione di proprietà extra-funzionali»generazione automatica a partire da modelli»service oriented architecture»software testing

» GRUPPO : LabSEDC @ ISTI – CNR» DOVE : Pisa

IN GENERE DURANTE LA SETTIM

ANA

NON SONO A L'AQUILA!!!

SOFTWARE ENGINEERING AND DEPENDABLE COMPUTING LABORATORYISTITUTO DI SCIENZA E TECNOLOGIE DELL'INFORMAZIONE “A. FAEDO”

risorse

» HOME PAGE CORSO:» http://labsedc-wiki.isti.cnr.it/labse20122013

» e-MAIL :» [email protected]

SOFTWARE ENGINEERING AND DEPENDABLE COMPUTING LABORATORYISTITUTO DI SCIENZA E TECNOLOGIE DELL'INFORMAZIONE “A. FAEDO”

informazioni sul corso

» il corso è strutturato in 11 lezioni tematiche» i libri di testo consigliati sono:

» J. Arlow, I. Neustadt:”UML2 e Unified Process - analisi e progettazione Object-Oriented”, 2a Ed., McgrawHill. 2007

» P. Grässle, H. Baumann, P. Baumann: “UML 2.0 in Action, A Project-Based Tutorial”, Packt Publishing, 2005

» H.E. Eriksson, M. Penker, B. Lyons, D. Fado: “UML 2 Toolkit”, Wiley. 2004.

» importanti sono anche : » UML Superstructure Specification» documentazione ufficiale di Acceleo 3.0» presentazioni delle lezioni anni precedenti

SOFTWARE ENGINEERING AND DEPENDABLE COMPUTING LABORATORYISTITUTO DI SCIENZA E TECNOLOGIE DELL'INFORMAZIONE “A. FAEDO”

modalità di esame

» progetto e discussione del progetto» in combinazione con il corso di teoria» cercherò di riservare l'ultima parte di ogni

lezione a discussioni in classe sullo stato e sulla interpretazione del progetto, cercando di facilitare chiarimenti o avanzamenti collettivi

» se man mano avete domande relativamente al progetto, siete invitati ad esporle a lezione

» discussione sulla base di domande attinenti» la sintassi/semantica del linguaggio UML» aspetti progettuali» aspetti generativi a partire da modelli UML

SOFTWARE ENGINEERING AND DEPENDABLE COMPUTING LABORATORYISTITUTO DI SCIENZA E TECNOLOGIE DELL'INFORMAZIONE “A. FAEDO”

struttura del corso – lezione 1 -

BHE !!?!?! LA “LEZIONE UNO”

E'QUESTA !!!!

SOFTWARE ENGINEERING AND DEPENDABLE COMPUTING LABORATORYISTITUTO DI SCIENZA E TECNOLOGIE DELL'INFORMAZIONE “A. FAEDO”

struttura del corso - lezione 2-

» introduzione ai linguaggi di modellazione ed UML» il problema della conoscenza, trasmissione e

progettazione del software» importanza dei modelli software» i modelli come forma di documentazione» che cosa è UML / obiettivi di UML» i modelli come mezzo di programmazione ed

evoluzione» le viste di UML

SOFTWARE ENGINEERING AND DEPENDABLE COMPUTING LABORATORYISTITUTO DI SCIENZA E TECNOLOGIE DELL'INFORMAZIONE “A. FAEDO”

la famiglia di diagrammi UML

» structure diagrams» class diagram» object diagram» component diagram» deployment diagram» composite structure diagram» package diagram» ….

» behavior diagrams» state machine diagram» activity diagram» use case diagram» interaction diagrams

» sequence diagram» communication

diagram» interaction overview

diagram» timing diagram

» ...

SOFTWARE ENGINEERING AND DEPENDABLE COMPUTING LABORATORYISTITUTO DI SCIENZA E TECNOLOGIE DELL'INFORMAZIONE “A. FAEDO”

struttura del corso – lezione 3 -

» use case diagram && activity diagram» quando e come si usano» sintassi :

» notazione per casi d'uso» notazione per le relazioni tra casi d'uso» notazione per descrizione di attività» notazione per costrutti di flusso per attività

» semantica :» semantica semi-formale (da specifica)» semantic gap

» esempi in classe

SOFTWARE ENGINEERING AND DEPENDABLE COMPUTING LABORATORYISTITUTO DI SCIENZA E TECNOLOGIE DELL'INFORMAZIONE “A. FAEDO”

struttura del corso – lezione 4 -

» class diagram && package diagram» quando e come si usano» sintassi :

» notazione per le classi» tipi di dato primitivi di UML» notazione per le relazioni tra classi

» semantica :» semantica semi-formale (da specifica)» semantic gap» sematica operazionale (su Java)

SOFTWARE ENGINEERING AND DEPENDABLE COMPUTING LABORATORYISTITUTO DI SCIENZA E TECNOLOGIE DELL'INFORMAZIONE “A. FAEDO”

struttura del corso – lezione 5 -

» sequence diagram» quando e come si usano» sintassi :

» notazione per le gli elementi» tipi di dato primitivi di UML» notazione per le relazioni tra gli elementi

» semantica :» semantica semi-formale (da specifica)» semantic gap» sematica operazionale (su Java)

SOFTWARE ENGINEERING AND DEPENDABLE COMPUTING LABORATORYISTITUTO DI SCIENZA E TECNOLOGIE DELL'INFORMAZIONE “A. FAEDO”

struttura del corso – lezione 6 -

» presentazione del progetto» introduzione allo scenario» presentazione del problema» presentazione delle tecnologie da utilizzare» descrizione agli ambienti operativi

SOFTWARE ENGINEERING AND DEPENDABLE COMPUTING LABORATORYISTITUTO DI SCIENZA E TECNOLOGIE DELL'INFORMAZIONE “A. FAEDO”

struttura del corso – lezione 7 -

» state machines diagram» quando e come si usano» sintassi :

» notazione per le stati» notazione per gli le transizioni (eventi, guardie, effetti)

» macchine a stati gerarchiche

» semantica :» semantica semi-formale (da specifica)» semantic gap» sematica operazionale (su Java)

SOFTWARE ENGINEERING AND DEPENDABLE COMPUTING LABORATORYISTITUTO DI SCIENZA E TECNOLOGIE DELL'INFORMAZIONE “A. FAEDO”

struttura del corso – lezione 8 -

» UML : sotto la punta dell'iceberg:

» la nozione di meta-modello» la specifica di UML » discussioni sulla semantica di UML» la codifica XMI

ATTENZIONE!!!! : QUESTA LEZIONE E' (POTREBBE ESSERE) UN PO' PALLOSA, MA POTREBBE ESSERE (E') IMPORTANTE PER UNA PARTE DEL PROGETTO !!!

SOFTWARE ENGINEERING AND DEPENDABLE COMPUTING LABORATORYISTITUTO DI SCIENZA E TECNOLOGIE DELL'INFORMAZIONE “A. FAEDO”

organizzazione del corso – lezione 9 -

» Prima Esercitazione » utilizzo di un tool per la modellazione

in UML» differenza tra modelli UML e disegni

UML

SOFTWARE ENGINEERING AND DEPENDABLE COMPUTING LABORATORYISTITUTO DI SCIENZA E TECNOLOGIE DELL'INFORMAZIONE “A. FAEDO”

organizzazione del corso – lezione 10 -

» ACCELEO (http://www.eclipse.org/acceleo/)» introduzione» installazione» esempi di trasformazione

SOFTWARE ENGINEERING AND DEPENDABLE COMPUTING LABORATORYISTITUTO DI SCIENZA E TECNOLOGIE DELL'INFORMAZIONE “A. FAEDO”

organizzazione del corso – lezione 11 -

» Seconda Esercitazione » utilizzo di un tool per la modellazione

in UML» implementazione di un semplice

trasformatore di modelli

SOFTWARE ENGINEERING AND DEPENDABLE COMPUTING LABORATORYISTITUTO DI SCIENZA E TECNOLOGIE DELL'INFORMAZIONE “A. FAEDO”

eeehmmmm !?!?!?

OK, la prima è fatta!!!