Activity Diagrams (lezione 3)

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Activity Diagrams (lezione 3)"

Transcript

1 Istituto di Scienza e Tecnologie dell'informazione A. Faedo Software Engineering Laboratory Activity Diagrams (lezione 3) Antonino Sabetta antonino.sabetta@isti.cnr.it

2 Una vista d'insieme introduzione alla modellazione con UML le viste di UML use case view logical view implementation view process view deployment view RUP : un possibile processo di sviluppo I due usi di UML Documentare, capire, comunicare Automatizzare lo sviluppo (UML non è solo figure )

3 structure diagrams class diagram object diagram component diagram deployment diagram composite structure diagram package diagram

4 behavior diagram state machine diagram activity diagram use case diagram interaction diagrams sequence diagram communication diagram interaction overview diagram timing diagram

5 Dalle puntate precedenti... Casi d'uso: Identificano gli scenari di interazione tra attori e il sistema Goal-oriented: il punto di vista è esterno (cosa il sistema fa per l'attore, senza descrivere i meccanismi interni) Realizzazione dei casi d'uso: Relazione tra un caso d'uso e la sua implementazione (descrizione dei meccanismi che consentono al sistema di offrire la funzionalità che interessa all'attore)

6 Casi d'uso, interazioni, scenari

7 In questa lezione e nella successiva... Una notazione per descrivere: interazioni (tra attore e sistema) che realizzano un caso d'uso funzionamento interno del sistema (per descrivere funzionalità offerte dal sistema per quel caso d'uso) Tra l'analisi e il design: Percorso dalla descrizione dall'esterno (dal punto di vista di chi deve usare il sistema) all'interno (vista di chi deve realizzare il sistema)

8 In questa lezione e nella successiva... Activity Diagram Enfasi sui passi necessari a realizzare un caso d'uso o una operazione del sistema Sequence Diagram Enfasi sulla sequenza delle interazioni tra attore e sistema, e tra le diverse parti del sistema

9 Activity Diagram: introduzione Modellazione del comportamento Enfasi sulla sequenza di azioni che vengono svolte come realizzazione di un behaviour non su chi le svolge Sequenza determinata in termini di control flow object flow

10 Activity Diagram: introduzione Activity modeling emphasizes the sequence and conditions for coordinating lower-level behaviors, rather than which classifiers own those behaviors. These are commonly called control flow and object flow models. The actions coordinated by activity models can be initiated because other actions finish executing, because objects and data become available, or because events occur external to the flow. (UML 2 Superstructure)

11 Caratteristiche principali Adatti a: Modulari Rappresentare comportamenti complessi Rappresentare parallelismo È possibile strutturare comportamenti complessi Intuitivi

12 Esempi di applicazioni realizzazione di uno use-case modellare un workflow (in senso lato) modellare le azioni compiute quando una operazione viene eseguita (sequenza di step) modellare il comportamento di un oggetto descrivere come un insieme di azioni influisce su un insieme di oggetti (come ne cambia lo stato) Descrivere un algoritmo

13 Outline Concetti di base Attività, azioni, token, oggetti, segnali Controllo di flusso, parallelismo Notazione essenziale Costrutti avanzati Behaviour strutturati Eccezioni Swimlane Expansion region

14 Concetti di base - 1 Activity: contiene azioni e/o altre attività Action: azione elementare Control flow: stabilisce la sequenza secondo cui le azioni di un'attività vengono svolte Object flow: modella il fatto che un'azione può avvenire quando il suo input (prodotto in output da un'altra azione) diventa disponibile

15 Concetti di base - 2 Control node: Initial Activity final Flow final Decision/Merge costrutti condizionali Fork/Join behaviour paralleli altri elementi avanzati (vedi seguito) Connettori Eccezioni Segnali Swimlane

16 Notazione essenziale

17 Control flow e data flow Control flow Data flow (object flow)

18 Notazione di base - 2

19 activity diagram - example -

20 activity diagram - example -

21 activity diagram - example -

22 activity diagram - example -

23 activity diagram - example (rejected)-

24 activity diagram example (accepted) -

25 activity diagram example (accepted) -

26 activity diagram example (accepted) -

27 activity diagram example (accepted) -

28 activity diagram example (accepted) -

29 activity diagram example (accepted) -

30 activity diagram example (accepted) -

31 activity diagram example (accepted) -

32 activity diagram example -

33 activity diagram example -

34 Decision node (branch-merge) 1

35 Decision node (branch-merge) - esempio

36 Parallelismo costrutto Fork/join Il token viene replicato dal nodo Fork (tante repliche quanti sono le frecce che partono dal Fork) I token in arrivo vengono fusi dal nodo join (ma solo quando tutte le frecce entranti hanno un token pronto!) Fork Join

37 Fork-join

38 Fork-join

39 Fork-join

40 Fork-join

41 Fork-join

42 Fork-join

43 Fork-join

44 Fork-join

45 Fork-join

46 Fork-join

47 Nodi finali L'attività si conclude non appena un token raggiunge un nodo activity-final Il nodo flow-final distrugge il token, ma non necessariamente termina l'attività

48 Esempio Nota: che succede se questa azione ci mette troppo tempo a terminare?

49 Segnali Invio/ricezione di segnali Avvengono istantaneamente (a differenza delle azioni, che possono impiegare del tempo) L'azione ricezione di segnali è attiva non appena si attiva l'attività in cui essa è contenuta Segnale temporizzato

50 Partizioni (swimlane) (1)

51 Partizioni (swimlane) (2)

52 Pin parametri di ingresso/uscita

53 interruptible region - esempio

54 Connettori

55 Eccezioni Dopo un'eccezione, l'esecuzione riprende da qui

56 Esempio - swimlane

57 Esempio swimlane ortogonali

58 Esempio - Sistema di bug-report L'utente segnala un problema Si cerca di riprodurre il problema A) ci si riesce: (*) Si identifica la causa del problema e si formula una soluzione (**) Si prova la soluzione Se la soluzione non funziona si torna a (*) Se la soluzione funziona: (***) In parallelo: Si registra la soluzione (il report viene chiuso) Comunicazione a chi aveva segnalato il problema B) non ci si riesce:

59 Esempio - Sistema di bug-report L'utente segnala un problema Si cerca di riprodurre il problema A) ci si riesce B) non ci si riesce:... Si corregge la formulazione del problema Si riparte da (*) Se in (*) si riesce a riprodurre il problema, ma questo è stato già segnalato: si va a (**)

60 Esempio - Sistema di bug-report Se in (*) si riesce a riprodurre il problema, ma questo è stato già segnalato ed esiste già una soluzione: si va a (***) Nota: la specifica testuale (anche di procedimenti semplici come questo) può essere difficile da seguire...

61 activity diagram - example -

62 activity diagram - example -

63 activity diagram - example -

64 activity diagram - example -

65 activity diagram - example -

66 activity diagram - example -

67 activity diagram - example -

68 activity diagram - example -

69 activity diagram - example -

70 activity diagram - example -

71 activity diagram - example -

72 activity diagram - example -

73 activity diagram - example -

74 activity diagram - example -

75 activity diagram - example -

76 activity diagram - example -

77 activity diagram - example -

78 activity diagram - example -

79 activity diagram - example -

80 activity diagram - example -

81 activity diagram - example -

82 activity diagram - example -

83 activity diagram - example -

84 activity diagram - example -

85 Tirando le somme... Descrizione testuale difficile da seguire Presta il fianco ad errori concettuali difficili da scovare Rappresentazione grafica rende evidenti relazioni causali tra azioni Permette di strutturare il procedimento, suddividendo il problema di modellazione in problemi più piccoli

86 Sommario e conclusione Passaggio da un modello dall'esterno (cosa il sistema fa) ad un modello descrive i passi che realizzano uno scenario (interazione attore/sistema) o una funzionalità del sistema Activity diagram: una notazione intuitiva ma potente permette di esprimere alternative, parallelismo, comportamenti strutturati enfatizza concatenazione di azioni

LEZIONE 3 USE CASE DIAGRAM && ACTIVITY DIAGRAM

LEZIONE 3 USE CASE DIAGRAM && ACTIVITY DIAGRAM Istituto di Scienza e Tecnologie dell'informazione A. Faedo Software Engineering and Dependable Computing Laboratory LEZIONE 3 USE CASE DIAGRAM && ACTIVITY DIAGRAM Laboratorio di Ingegneria del Software

Dettagli

LEZIONE 5 SEQUENCE DIAGRAM

LEZIONE 5 SEQUENCE DIAGRAM Istituto di Scienza e Tecnologie dell'informazione A. Faedo Software Engineering and Dependable Computing Laboratory LEZIONE 5 SEQUENCE DIAGRAM Laboratorio di Ingegneria del Software Guglielmo De Angelis

Dettagli

Corso di Laurea Specialistica in Ingegneria Informatica. Corso di Ingegneria del Software A. A Introduzione ad UML E.

Corso di Laurea Specialistica in Ingegneria Informatica. Corso di Ingegneria del Software A. A Introduzione ad UML E. Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A. 2008 - Introduzione ad UML E. TINELLI UML È un linguaggio (e notazione) universale per rappresentare qualunque

Dettagli

UML. Il linguaggio UML e ArgoUML. Ingegneria dei sistemi software 2009/ /09/2009

UML. Il linguaggio UML e ArgoUML. Ingegneria dei sistemi software 2009/ /09/2009 UML Il linguaggio UML e ArgoUML 30/09/2009 Ingegneria dei sistemi software 2009/2010 manuel.comparetti@iet.unipi.it UML Unified Modeling Language una famiglia di notazioni grafiche standardizzate* orientata

Dettagli

UML Introduzione a UML Linguaggio di Modellazione Unificato. Corso di Ingegneria del Software Anno Accademico 2012/13

UML Introduzione a UML Linguaggio di Modellazione Unificato. Corso di Ingegneria del Software Anno Accademico 2012/13 UML Introduzione a UML Linguaggio di Modellazione Unificato Corso di Ingegneria del Software Anno Accademico 2012/13 1 Che cosa è UML? UML (Unified Modeling Language) è un linguaggio grafico per: specificare

Dettagli

Diagrammi di stato e di attività: esercizi

Diagrammi di stato e di attività: esercizi Diagrammi di stato e di attività: esercizi Angelo Di Iorio (in parte di: Gianpiero Favini) A.A. 2012-2013 Laboratorio Ingegneria del Software () Diagrammi di stato e di attività: esercizi A.A. 2012-2013

Dettagli

CLASS DIAGRAM PARTE 1

CLASS DIAGRAM PARTE 1 Istituto di Scienza e Tecnologie dell'informazione A. Faedo Software Engineering Laboratory CLASS DIAGRAM PARTE 1 UML The Unified Modeling Language Guglielmo De Angelis guglielmo.deangelis@isti.cnr.it

Dettagli

SOMMARIO DIAGRAMMI DI ATTIVITÀ INGEGNERIA DEL SOFTWARE. Introduzione. Concetti base. Introduzione. Concetti base

SOMMARIO DIAGRAMMI DI ATTIVITÀ INGEGNERIA DEL SOFTWARE. Introduzione. Concetti base. Introduzione. Concetti base SOMMARIO Introduzione Concetti base INGEGNERIA DEL SOFTWARE Università degli Studi di Padova Dipartimento di Matematica Corso di Laurea in Informatica, A.A. 2013 2014 2 rcardin@math.unipd.it SOMMARIO Introduzione

Dettagli

SOMMARIO. DIAGRAMMI DI ATTIVITÀ INGEGNERIA DEL SOFTWARE Università degli Studi di Padova. Introduzione. Concetti base.

SOMMARIO. DIAGRAMMI DI ATTIVITÀ INGEGNERIA DEL SOFTWARE Università degli Studi di Padova. Introduzione. Concetti base. SOMMARIO Introduzione Concetti base INGEGNERIA DEL SOFTWARE Università degli Studi di Padova Dipartimento di Matematica Corso di Laurea in Informatica, A.A. 2014 2015 rcardin@math.unipd.it 2 SOMMARIO Introduzione

Dettagli

LEZIONE 7 STATE MACHINE DIAGRAM

LEZIONE 7 STATE MACHINE DIAGRAM Istituto di Scienza e Tecnologie dell'informazione A. Faedo Software Engineering and Dependable Computing Laboratory LEZIONE 7 STATE MACHINE DIAGRAM Laboratorio di Ingegneria del Software Guglielmo De

Dettagli

Analisi dei Requisiti, Progettazione Preliminare ed Esecutiva di Grandi Sistemi Ingegneristici: Casi di Studio

Analisi dei Requisiti, Progettazione Preliminare ed Esecutiva di Grandi Sistemi Ingegneristici: Casi di Studio Seminario di Analisi dei Requisiti, Progettazione Preliminare ed Esecutiva di Grandi Sistemi Ingegneristici: Casi di Studio Corso di Ingegneria dei Sistemi Software e dei Servizi in Rete Parte 5. Evoluzione

Dettagli

Activity Diagrams. Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it

Activity Diagrams. Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it Activity Diagrams Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it Dipartimento di Ingegneria Informatica e delle Telecomunicazioni Università di Catania Agenda Cosa è un Activity Diagram Quando si

Dettagli

Progettazione Concettuale e Modello di Progetto

Progettazione Concettuale e Modello di Progetto Progettazione Concettuale e Modello di Progetto Metodologia di Progetto di SI PREFERIBILMENTE ITERATIVA (1) Analisi dei Requisiti (Modello di Business): analisi di scenario, individuando i processi, gli

Dettagli

Web Application Engineering

Web Application Engineering Web Application Engineering analisi del dominio cristian lucchesi IIT-CNR Pescara, 15-16 Maggio 2007 Alei Ud A 1 Analisi del dominio l'obiettivo è di arrivare alla definizione sufficientemente rigorosa

Dettagli

Progettazione Logica e Modello Realizzativo

Progettazione Logica e Modello Realizzativo Progettazione Logica e Modello Realizzativo Metodologia di SI PREFERIBILMENTE ITERATIVA (1) Analisi dei Requisiti (Modello di Business): analisi di scenario, individuando i processi, gli attori coinvolti

Dettagli

Corso di Ingegneria del Software. Activity Diagram

Corso di Ingegneria del Software. Activity Diagram Corso di Ingegneria del Software a.a. 2009/2010 Mario Vacca mario.vacca1@istruzione.it Diagrammi di attività Diagrammi di attività 1. La notazione 2. Uso dei diagrammi di attività 3. TOOL di supporto 4.

Dettagli

SOMMARIO DIAGRAMMI DI ATTIVITÀ INGEGNERIA DEL SOFTWARE. Introduzione. Concetti base. Introduzione. Concetti base

SOMMARIO DIAGRAMMI DI ATTIVITÀ INGEGNERIA DEL SOFTWARE. Introduzione. Concetti base. Introduzione. Concetti base SOMMARIO INGEGNERIA DEL SOFTWARE Università degli Studi di Padova Dipartimento di Matematica Corso di Laurea in Informatica, A.A. 2012 2013 2 rcardin@math.unipd.it SOMMARIO 3 4 Analisi dei Requisiti, Specifica

Dettagli

Avete capito fino in fondo il concetto di nodo fine flusso? Che differenza c e tra fine flusso e fine attività? MODEL DIFFERENCES AND EVOLUTION

Avete capito fino in fondo il concetto di nodo fine flusso? Che differenza c e tra fine flusso e fine attività? MODEL DIFFERENCES AND EVOLUTION 1 Avete capito fino in fondo il concetto di nodo fine flusso? Che differenza c e tra fine flusso e fine attività? MODEL DIFFERENCES AND EVOLUTION 2 Rivediamo questo esempio di activity diagram Università

Dettagli

Ingegneria del Software

Ingegneria del Software Università degli Studi di Napoli Federico II Ingegneria del Software a.a. 2013/14 UML e gli Use Case Diagrams Outline Cos è UML Scopi, storia, obiettivi Fornire alcuni elementi di base su UML Introdurre

Dettagli

SOMMARIO DIAGRAMMI DI ATTIVITÀ

SOMMARIO DIAGRAMMI DI ATTIVITÀ SOMMARIO INGEGNERIA DEL SOFTWARE Università degli Studi di Padova Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica, A.A. 2010 2011 2 ingegneria.software.math.unipd@gmail.com SOMMARIO 3 4 Analisi

Dettagli

Class diagram COMPORTAMENTO associazioni

Class diagram COMPORTAMENTO associazioni Class diagram Rappresenta le classi che compongono il sistema, cioè le collezioni di oggetti, ciascuno con il proprio stato e COMPORTAMENTO (attributi ed operazioni) Specifica, mediante associazioni, le

Dettagli

Elementi di UML (6): Diagrammi dinamici di flusso

Elementi di UML (6): Diagrammi dinamici di flusso Elementi di UML (6): Diagrammi dinamici di flusso Università degli Studi di Bologna Facoltà di Scienze MM. FF. NN. Corso di Laurea in Scienze di Internet Anno Accademico 2004-2005 Laboratorio di Sistemi

Dettagli

Attività vs. Stato. Elementi di UML (4) Activity diagram. Activity diagram: notazione (1/3) Activity diagram: notazione (2/3)

Attività vs. Stato. Elementi di UML (4) Activity diagram. Activity diagram: notazione (1/3) Activity diagram: notazione (2/3) Elementi di UML (4) Attività vs. Stato UML 1! Attività: Un insieme di azioni che deve essere necessariamente ed interamente completato prima di potersi considerare terminato.! Stato: Un punto ben preciso

Dettagli

I Diagrammi di Flusso OO

I Diagrammi di Flusso OO Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A. 2008 - I Diagrammi di Flusso OO Generalità I diagrammi di attività vengono usati per modellare processi a

Dettagli

Ingegneria del Software

Ingegneria del Software Ingegneria del Software Unified Modeling Language Unified Modeling Language Un linguaggio (e notazione) universale, per rappresentare qualunque tipo di sistema software Uno standard OMG (Object Management

Dettagli

Progettazione del Sofware

Progettazione del Sofware Corso Serale Progettazione del Sofware Perché Modellare un Sistema Necessità di realizzare un artefatto, indipendentemente dalla sua dimensione e settore di interesse (una casa, un particolare macchinario,

Dettagli

Verifica Formale in Spin di WF-nets e Diagrammi delle Attività UML

Verifica Formale in Spin di WF-nets e Diagrammi delle Attività UML Verifica Formale in Spin di WF-nets e Diagrammi delle Attività UML Seminario per il corso di Metodi Formali nell Ingegneria del Software Professore: Toni Mancini Autore: Stefano Menotti Obiettivi Principali

Dettagli

Introduzione ai casi d uso

Introduzione ai casi d uso Introduzione ai casi d uso versione 16 marzo 2009 http://www.analisi-disegno.com Introduzione ai casi d uso Pag. 1 Obiettivo di questa introduzione fornire elementi di base sui casi d uso fornire indicazioni

Dettagli

Università di Bergamo Facoltà di Ingegneria INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi A4_3 V2.1. Progettazione. Metodi e Linguaggi

Università di Bergamo Facoltà di Ingegneria INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi A4_3 V2.1. Progettazione. Metodi e Linguaggi Università di Bergamo Facoltà di Ingegneria INGEGNERIA DEL SOFTWARE Paolo Salvaneschi A4_3 V2.1 Progettazione Metodi e Linguaggi Il contenuto del documento è liberamente utilizzabile dagli studenti, per

Dettagli

Istituto di Scienza e Tecnologie dell'informazione A. Faedo Software Engineering Laboratory. Sequence Diagrams

Istituto di Scienza e Tecnologie dell'informazione A. Faedo Software Engineering Laboratory. Sequence Diagrams Istituto di Scienza e Tecnologie dell'informazione A. Faedo Software Engineering Laboratory Sequence Diagrams Antonino Sabetta antonino.sabetta@isti.cnr.it Nota sul copyright Il materiale presentato in

Dettagli

DIAGRAMMI DEI PACKAGE

DIAGRAMMI DEI PACKAGE ESERCITAZIONE ERRORI COMUNI REV. DI PROGETTAZIONE INGEGNERIA DEL SOFTWARE Università degli Studi di Padova Dipartimento di Matematica Corso di Laurea in Informatica, A.A. 2013 2014 UML Versione di UML?

Dettagli

Programma operativo Regione Lombardia/Ministero del Lavoro/Fondo Sociale Europeo, Obiettivo 3 Misura C3

Programma operativo Regione Lombardia/Ministero del Lavoro/Fondo Sociale Europeo, Obiettivo 3 Misura C3 Programma operativo Regione Lombardia/Ministero del Lavoro/Fondo Sociale Europeo, Obiettivo 3 Misura C3 Progetto ID 24063 Moduli e contenuti professionalizzanti inseriti nei corsi di laurea e diplomi universitari

Dettagli

Diagrammi di attività. Diagrammi di attività. Activity diagrams. Sintassi dei diagrammi di Attività (1) Sintassi dei diagrammi di Attività (2)

Diagrammi di attività. Diagrammi di attività. Activity diagrams. Sintassi dei diagrammi di Attività (1) Sintassi dei diagrammi di Attività (2) Diagrammi di attività,6 PRG % &RUVR GL,QJHJQHULD GHO 6RIWZDUH Diagrammi di attività Activity diagrams I diagrammi di attività, in UML, sono usati per descrivere il comportamento dinamico di un sistema

Dettagli

Programma operativo Regione Lombardia/Ministero del Lavoro/Fondo Sociale Europeo, Obiettivo 3 Misura C3

Programma operativo Regione Lombardia/Ministero del Lavoro/Fondo Sociale Europeo, Obiettivo 3 Misura C3 Programma operativo Regione Lombardia/Ministero del Lavoro/Fondo Sociale Europeo, Obiettivo 3 Misura C3 Progetto ID 24063 Moduli e contenuti professionalizzanti inseriti nei corsi di laurea e diplomi universitari

Dettagli

Dispensa di Informatica II.1

Dispensa di Informatica II.1 ALGORITMI La dispensa di seguito proposta si pone come tutorial per poter porre le basi per la realizzazione di algoritmi che poi potranno eventualmente essere sviluppati in moduli software con metodologia

Dettagli

Fondamenti di Informatica II 21. Standard UML

Fondamenti di Informatica II 21. Standard UML Premessa In questa lezione sono descritte importanti dello standard UML alcune caratteristiche piu Fondamenti di Informatica II 21. Standard UML Lo standard UML verrà trattato in maniera piu approfondita

Dettagli

Fondamenti di Informatica

Fondamenti di Informatica Premessa In questa lezione sono descritte alcune caratteristiche piu importanti dello standard UML Fondamenti di Informatica 24. Standard UML Lo standard UML verrà trattato in maniera piu approfondita

Dettagli

Esempio Modello DFD per ordini. Modelli di comportamento. Diagramma delle attività. Diagramma attività UML per ordini. Attività: Apri file da browser

Esempio Modello DFD per ordini. Modelli di comportamento. Diagramma delle attività. Diagramma attività UML per ordini. Attività: Apri file da browser Modelli di comportamento Esempio Modello DFD per ordini Sono usati per descrivere il comportamento globale del sistema Data processing model (ovvero Data Flow Diagram, DFD) Mostrano i passi per l elaborazione

Dettagli

Introduzione a UML Adriano Comai Introduzione a UML. Adriano Comai Pag. 1

Introduzione a UML Adriano Comai Introduzione a UML. Adriano Comai Pag. 1 Introduzione a UML Adriano Comai 1998-2001 Pag. 1 obiettivo di questa introduzione fornire elementi di base su UML introdurre i principali diagrammi fornire indicazioni sulle modalità di utilizzo di UML

Dettagli

Programmazione ad Oggetti

Programmazione ad Oggetti Programmazione ad Oggetti Unified Modeling Language Unified Modeling Language Un linguaggio (e notazione) universale, per rappresentare qualunque tipo di sistema software Uno standard OMG (Object Management

Dettagli

Vincenzo Gervasi, Laura Semini Ingegneria del Software Dipartimento di Informatica Università di Pisa

Vincenzo Gervasi, Laura Semini Ingegneria del Software Dipartimento di Informatica Università di Pisa Vincenzo Gervasi, Laura Semini Ingegneria del Software Dipartimento di Informatica Università di Pisa Lezioni precedente: Descrizione del dominio: modello statico Questa lezione Descrizione del dominio:

Dettagli

Antinisca Di Marco. Laboratorio di Ingegneria del Software a.a

Antinisca Di Marco. Laboratorio di Ingegneria del Software a.a Università degli Studi dell Aquila Laboratorio di Ingegneria del Software a.a. 2014-2015 Antinisca Di Marco Dipartimento di Ingegneria e Scienze dell'informazione e Matematica (DISIM) - Università degli

Dettagli

Catia Trubiani. Laboratorio di Ingegneria del Software a.a

Catia Trubiani. Laboratorio di Ingegneria del Software a.a Università degli Studi dell Aquila Laboratorio di Ingegneria del Software a.a. 2013-2014 Catia Trubiani Dipartimento di Ingegneria e Scienze dell'informazione e Matematica (DISIM) - Università degli Studi

Dettagli

PROGETTAZIONE DEL SOFTWARE

PROGETTAZIONE DEL SOFTWARE PROGETTAZIONE DEL SOFTWARE EMILIANO CASALICCHIO DIPARTIMENTO DI INFORMATICA E SISTEMISTICA SAPIENZA UNIVERSITÀ DI ROMA SEDE DI RIETI HTTP://WWW.CE.UNIROMA2.IT/COURSES/PSW! Cos è UML UNIFIED MODELING LANGUAGE!

Dettagli

Sintassi dei diagrammi di Attività

Sintassi dei diagrammi di Attività Università di Padova Facoltà di Scienze MM.FF.NN Informatica - anno 2008-09 Corso di Ingegneria del Software UML Diagrammi di attività Activity diagrams Diagrammi di attività I diagrammi di attività, in

Dettagli

La Modellazione del Sistema: viste dinamiche e comportamentali. P Tramontana Modelli di sistema- Introduzione a UML Slide 1

La Modellazione del Sistema: viste dinamiche e comportamentali. P Tramontana Modelli di sistema- Introduzione a UML Slide 1 La Modellazione del Sistema: viste dinamiche e comportamentali P Tramontana Modelli di sistema- Introduzione a UML Slide 1 Riferimenti Martin Fowler, UML Distilled, capitoli 4 (sequence diagram), 10 (statechart

Dettagli

LEZIONE 7 - STATE MACHINE DIAGRAM

LEZIONE 7 - STATE MACHINE DIAGRAM Laboratorio di Ingegneria del Software a.a. 2013-2014 LEZIONE 7 - STATE MACHINE DIAGRAM Catia Trubiani Gran Sasso Science Institute (GSSI), L Aquila catia.trubiani@gssi.infn.it Un po di storia su state

Dettagli

UML e i diagrammi di attività

UML e i diagrammi di attività UML e i diagrammi di attività S i n t a s s i e L i n e e G u i d a Dr. Andrea Baruzzo andrea.baruzzo@dimi.uniud.it Page 2 Attività: che cosa sono e a cosa servono Un diagramma di attività mostra il flusso

Dettagli

Ingegneria del Software 8. Diagrammi di attività. Dipartimento di Informatica Università di Pisa A.A. 2014/15

Ingegneria del Software 8. Diagrammi di attività. Dipartimento di Informatica Università di Pisa A.A. 2014/15 Ingegneria del Software 8. Diagrammi di attività Dipartimento di Informatica Università di Pisa A.A. 2014/15 so far Modello del dominio Modello statico: diagrammi delle classi Modello dinamico : diagrammi

Dettagli

Modulo 11. Interazioni Diagrammi di sequenza Diagrammi di collaborazione. Descrivere il comportamento di un sistema software

Modulo 11. Interazioni Diagrammi di sequenza Diagrammi di collaborazione. Descrivere il comportamento di un sistema software Modulo 11 Interazioni Diagrammi di sequenza Diagrammi di collaborazione Descrivere il comportamento di un sistema software In un sistema object-oriented, gli oggetti interagiscono scambiandosi messaggi

Dettagli

UML. Unified Modeling Language (UML) Breve storia dell UML. Perchè usare la progettazione visuale? Ken Jacobs, Oracle Vice-president:

UML. Unified Modeling Language (UML) Breve storia dell UML. Perchè usare la progettazione visuale? Ken Jacobs, Oracle Vice-president: UML Unified Modeling Language (UML) Lo standard emergente nella progettazione del software (e non solo) Perchè usare la progettazione visuale? Perchè usare la progettazione visuale? Ken Jacobs, Oracle

Dettagli

Corso di Ingegneria del Software. Esempi di casi d uso

Corso di Ingegneria del Software. Esempi di casi d uso Corso di Ingegneria del Software a.a. 2009/2010 Mario Vacca mario.vacca1@istruzione.it Casi d uso Sommario 1. 2. 3. Casi d uso e specifica dei requisiti 4. Esempio: sistema iscrizione ed esami 5. Bibliografia

Dettagli

UML come abbozzo. Introduzione all UML. UML come linguaggio x programmi. UML come progetto dettagliato

UML come abbozzo. Introduzione all UML. UML come linguaggio x programmi. UML come progetto dettagliato Introduzione all UML UML come abbozzo UML - Unified Modeling Language E una famiglia di notazioni grafiche per la modellazione visuale del software Modellazione: rappresentazione di elementi che corrispondono

Dettagli

Programmazione ad Oggetti

Programmazione ad Oggetti Programmazione ad Oggetti Unified Modeling Language (II) Modellazione Dinamica Il comportamento dinamico del sistema viene descritto in UML attraverso i seguenti diagrammi: Statechart diagram Sequence

Dettagli

Redazione e Presentazione di Progetti Informatici

Redazione e Presentazione di Progetti Informatici Redazione e Presentazione di Progetti Informatici Corso di Laurea in Informatica Massimo Ruffolo E-mail: ruffolo@icar.cnr.it Web: http://www.icar.cnr.it/ruffolo Istituto di CAlcolo e Reti ad alte prestazioni

Dettagli

2. Modellazione dei casi d uso

2. Modellazione dei casi d uso 2. Modellazione dei casi d uso Andrea Polini Laboratorio di Ingegneria del Software Corso di Laurea in Informatica (Laboratorio di Ingegneria del Software) 2. Modellazione dei casi d uso 1 / 20 Sommario

Dettagli

Casi d uso. Marina Zanella - Ingegneria del Software UML: Casi d uso 1

Casi d uso. Marina Zanella - Ingegneria del Software UML: Casi d uso 1 Casi d uso Introdotti in UML da Jacobson nel 1994 come elementi principali dello sviluppo del sw (ma il concetto era già stato pubblicato nel 1987) Sono un veicolo per la pianificazione di progetto (controllano

Dettagli

Ingegneria del Software. Simulazione Prova parziale del 24/4/2015

Ingegneria del Software. Simulazione Prova parziale del 24/4/2015 Cognome Nome Matricola Ingegneria del Software Simulazione Prova parziale del 24/4/2015 Durata: 1h 30' Esercizio 1. Descrivere il seguente diagramma UML di attività, rappresentante la procedura di analisi

Dettagli

Sistemi Informativi I Strumenti - UML

Sistemi Informativi I Strumenti - UML 8 UNIFIED MODELING LANGUAGE (UML)...2 8.1 UN APPROCCIO VISUALE ALLA PROGETTAZIONE....2 8.1.1 I vantaggi dell utilizzo di diagrammi nella fase di progettazione....2 8.2 COS È UML...3 8.2.1 Origini e breve

Dettagli

Laboratorio di Progettazione di Sistemi Software UML per Design Patterns e Refactoring

Laboratorio di Progettazione di Sistemi Software UML per Design Patterns e Refactoring TITLE Laboratorio di Progettazione di Sistemi Software UML per Design Patterns e Refactoring Valentina Presutti (A-L) Riccardo Solmi (M-Z) 1 Indice degli argomenti Introduzione alla notazione UML I diagrammi

Dettagli

LEZIONE 2 I LINGUAGGI DI MODELLAZIONE && UML

LEZIONE 2 I LINGUAGGI DI MODELLAZIONE && UML Istituto di Scienza e Tecnologie dell'informazione A. Faedo Software Engineering and Dependable Computing Laboratory LEZIONE 2 I LINGUAGGI DI MODELLAZIONE && UML Laboratorio di Ingegneria del Software

Dettagli

Progettazione del Software

Progettazione del Software Progettazione del Software Analisi: Introduzione ad UML & UML Class Diagrams Dipartimento di Ingegneria Informatica, Automatica e Gestionale Antonio Ruberti SAPIENZA Università di Roma Anno Accademico

Dettagli

Use Case Diagram. Catia Trubiani. Laboratorio di Ingegneria del Software a.a

Use Case Diagram. Catia Trubiani. Laboratorio di Ingegneria del Software a.a Università degli Studi dell Aquila Laboratorio di Ingegneria del Software a.a. 2013-2014 Catia Trubiani Dipartimento di Ingegneria e Scienze dell'informazione e Matematica (DISIM)- Università degli Studi

Dettagli

Diagrammi di attività

Diagrammi di attività Diagrammi di attività Combinano idee tratte da molte tecniche diverse (diagrammi degli eventi, modellazione di stato SDL, modellazione di workflow, reti di Petri) Costituiscono un argomento complesso (e

Dettagli

INGEGNERIA DEL SOFTWARE

INGEGNERIA DEL SOFTWARE DIPARTIMENTO DI INGEGNERIA ELETTRICA ELETTRONICA E INFORMATICA Corso di laurea magistrale in Ingegneria informatica Anno accademico 2016/2017-1 anno INGEGNERIA DEL SOFTWARE 9 CFU - 1 semestre Docente titolare

Dettagli

Sistemi Informativi Aziendali

Sistemi Informativi Aziendali Sistemi Informativi Aziendali Appunti per il corso Fulvio Corno Marco Torchiano Politecnico di Torino Dipartimento di Automatica e Informatica Versione 1.01 16 novembre 2015 INDICE Indice i 5 Modellazione

Dettagli

UML Riccardo Prandini

UML Riccardo Prandini UML 1. COS'E' UML Lo Unified Modeling Language, "linguaggio di modellazione unificato" è nato come una notazione per la modellazione e specifica orientata agli oggetti Oggi, essendo divenuto uno standard

Dettagli

Diagrammi di flusso - Flowcharts. E un formalismo che consente di rappresentare graficamente gli algoritmi

Diagrammi di flusso - Flowcharts. E un formalismo che consente di rappresentare graficamente gli algoritmi Diagrammi di flusso - Flowcharts E un formalismo che consente di rappresentare graficamente gli algoritmi Un diagramma di flusso descrive le azioni da eseguire ed il loro ordine di esecuzione Ogni azione

Dettagli

UML2. Progettazione della realizzazione dei casi d uso. Andrea Polini

UML2. Progettazione della realizzazione dei casi d uso. Andrea Polini UML2 Progettazione della realizzazione dei casi d uso Andrea Polini Laboratorio di Ingegneria del Software Corso di Laurea in Informatica L-31 Università di Camerino (Laboratorio di Ingegneria del Software)

Dettagli

Laboratorio di Sistemi Software UML per Design Patterns e Refactoring

Laboratorio di Sistemi Software UML per Design Patterns e Refactoring TITLE Laboratorio di Sistemi Software UML per Design Patterns e Refactoring Luca Padovani (A-L) Riccardo Solmi (M-Z) 1 Indice degli argomenti Introduzione alla notazione UML I diagrammi Class Diagram Object

Dettagli

PROGRAMMAZIONE DIDATTICA MODULARE Anno Scolastico 2018/2019. MATERIA Informatica CLASSE III DOCENTE Claudia Mantero INDIRIZZO A.F.

PROGRAMMAZIONE DIDATTICA MODULARE Anno Scolastico 2018/2019. MATERIA Informatica CLASSE III DOCENTE Claudia Mantero INDIRIZZO A.F. Istituti Paritari PIO XII RMTD545007 Amministrazione Finanza e Marketing Sistemi Informativi Aziendali 00159 ROMA - via Galla Placidia, 63 RMTL395001 Costruzioni, Ambiente e territorio Tel 06431465 Fax

Dettagli

I diagrammi di attività e stato

I diagrammi di attività e stato I diagrammi di attività e stato Francesco Poggi (dal materiale del prof. Ciancarini e dei dott. Di Iorio e Favini) A.A. 2017-2018 Ingegneria del Software I diagrammi di attività e stato A.A. 2017-2018

Dettagli

80/ÃGLQDPLFD 'HILQL]LRQL 8VHÃFDVH 'HVFUL]LRQHÃGLÃXQRÃXVHÃFDVH

80/ÃGLQDPLFD 'HILQL]LRQL 8VHÃFDVH 'HVFUL]LRQHÃGLÃXQRÃXVHÃFDVH 80/ÃGLQDPLFD WHU]DÃSDUWH Paolo Atzeni (con riuso di materiale di A. Parente) maggio-giugno 2000 classi e relationship modellano la struttura di un sistema gli oggetti (istanze delle classi) interagiscono

Dettagli

Introduzione a UML. Obiettivi. Unified Modeling Language. Gli autori di UML. Cos è UML. Cos è UML (cont.) Unified Modeling Language

Introduzione a UML. Obiettivi. Unified Modeling Language. Gli autori di UML. Cos è UML. Cos è UML (cont.) Unified Modeling Language Obiettivi Introduzione a UML Unified Modeling Language Fornire elementi di base su UML Introdurre i principali diagrammi Fornire indicazioni sulle modalità di utilizzo di UML nello sviluppo delle applicazioni

Dettagli

UML UNIFIED MODELING LANGUAGE

UML UNIFIED MODELING LANGUAGE UML UNIFIED MODELING LANGUAGE Cos è UML E un linguaggio di progettazione, da non confondere con i linguaggi di programmazione (C, C++, Java, ) Fornisce una serie di diagrammi per rappresentare ogni tipo

Dettagli

Unified Modeling Language - UML

Unified Modeling Language - UML Unified Modeling Language - UML Linguaggio Unificato per Modellare un sistema (software) Linguaggio non una semplice notazione per disegnare diagrammi ma un Linguaggio completo per catturare la conoscenza

Dettagli

Ingegneria del Software 9. Macchine a stati. Dipartimento di Informatica Università di Pisa A.A. 2014/15

Ingegneria del Software 9. Macchine a stati. Dipartimento di Informatica Università di Pisa A.A. 2014/15 Ingegneria del Software 9. Macchine a stati Dipartimento di Informatica Università di Pisa A.A. 2014/15 so far Modello del dominio Modello statico: diagrammi delle classi Modello dinamico : diagrammi di

Dettagli

Introduzione a UML Linguaggio di Modellazione Unificato. Corso di Ingegneria del Software Anno Accademico 2006/2007

Introduzione a UML Linguaggio di Modellazione Unificato. Corso di Ingegneria del Software Anno Accademico 2006/2007 Introduzione a UML Linguaggio di Modellazione Unificato Corso di Ingegneria del Software Anno Accademico 2006/2007 1 Che cos è UML? UML (Unified Modeling Language) è un linguaggio grafico per: specificare

Dettagli

Unified Modeling Language (UML)

Unified Modeling Language (UML) Unified Modeling Language (UML) È una famiglia di notazioni grafiche che si basano su un singolo meta-modello Serve per definire, progettare, realizzare e documentare sistemi sw (in particolare quelli

Dettagli

UML. Una introduzione incompleta. UML: Unified Modeling Language

UML. Una introduzione incompleta. UML: Unified Modeling Language UML Una introduzione incompleta 1/23 UML: Unified Modeling Language Lo Unified Modeling Language (UML) è una collezione di notazioni grafiche che aiuta a progettare sistemi software, specialmente quelli

Dettagli

Architetture data-flow

Architetture data-flow Architetture data-flow Le architetture che abbiamo visto finora sono dette architetture control flow. Ciò sta ad indicare che il flusso dell elaborazione è dettato dall ordine con cui le varie istruzioni

Dettagli

Introduzione alla programmazione Algoritmi e diagrammi di flusso. Sviluppo del software

Introduzione alla programmazione Algoritmi e diagrammi di flusso. Sviluppo del software Introduzione alla programmazione Algoritmi e diagrammi di flusso F. Corno, A. Lioy, M. Rebaudengo Sviluppo del software problema idea (soluzione) algoritmo (soluzione formale) programma (traduzione dell

Dettagli

UML Unified Modeling Language

UML Unified Modeling Language UML Unified Modeling Language Lezione n. 5.2 Cos è UML Serie di diagrammi per rappresentare ogni fase dello sviluppo del software: livello concettuale, logico, fisico Nato nel 998 ad opera di Booch, Rumbaugh

Dettagli

Activity Diagram. UniRoma2 - Ingegneria del Software 1 75

Activity Diagram. UniRoma2 - Ingegneria del Software 1 75 Activity Diagram Rappresenta a vari livelli di astrazione il flusso di esecuzione, sia sequenziale che concorrente, in una applicazione object-oriented E una variante degli state diagram, in cui gli stati

Dettagli

Corso di Informatica. Problemi ed algoritmi. Ing Pasquale Rota

Corso di Informatica. Problemi ed algoritmi. Ing Pasquale Rota Corso di Problemi ed algoritmi Ing Pasquale Rota Argomenti Problemi ed algoritmi Proprietà degli algoritmi Pseucodice Diagrammi di flusso Problemi ed algoritmi - Ing. Pasquale Rota 2 Proprietà degli algoritmi

Dettagli

LEZIONE 4 CLASS DIAGRAM E PACKAGE DIAGRAM

LEZIONE 4 CLASS DIAGRAM E PACKAGE DIAGRAM Istituto di Scienza e Tecnologie dell'informazione A. Faedo Software Engineering and Dependable Computing Laboratory LEZIONE 4 CLASS DIAGRAM E PACKAGE DIAGRAM Laboratorio di Ingegneria del Software Guglielmo

Dettagli

Unified Modeling Language (UML)

Unified Modeling Language (UML) Unified Modeling Language (UML) Richiami dei diagrammi di base per l utilizzo nel corso di RPPI Rielaborazione delle slide proposte da M. Cossentino 1 Perchè usare la progettazione visuale? Mary Loomis,

Dettagli

Introduzione alla programmazione

Introduzione alla programmazione Introduzione alla programmazione Risolvere un problema Per risolvere un problema si procede innanzitutto all individuazione Delle informazioni, dei dati noti Dei risultati desiderati Il secondo passo consiste

Dettagli

MODULO 07. La soluzione dei problemi mediante gli algoritmi

MODULO 07. La soluzione dei problemi mediante gli algoritmi MODULO 07 La soluzione dei problemi mediante gli algoritmi MODULO 07 Unità didattica 02 Impariamo a fare i diagrammi a blocchi In questa lezione impareremo: come descrivere l algoritmo risolutivo utilizzando

Dettagli

LEZIONE 8 - ESERCITAZIONE DI MODELLAZIONE

LEZIONE 8 - ESERCITAZIONE DI MODELLAZIONE Laboratorio di Ingegneria del Software a.a. 2013-2014 LEZIONE 8 - ESERCITAZIONE DI MODELLAZIONE Catia Trubiani Gran Sasso Science Institute (GSSI), L Aquila catia.trubiani@gssi.infn.it Un esempio di modellazione

Dettagli

SOMMARIO. DIAGRAMMI DI SEQUENZA INGEGNERIA DEL SOFTWARE Università degli Studi di Padova. Introduzione. Partecipanti e messaggi.

SOMMARIO. DIAGRAMMI DI SEQUENZA INGEGNERIA DEL SOFTWARE Università degli Studi di Padova. Introduzione. Partecipanti e messaggi. SOMMARIO DIAGRAMMI DI SEQUENZA INGEGNERIA DEL SOFTWARE Università degli Studi di Padova Dipartimento di Matematica Corso di Laurea in Informatica, A.A. 2015 2016 rcardin@math.unipd.it 2 SOMMARIO DIAGRAMMI

Dettagli

Esercizi design patterns. Angelo Di Iorio,

Esercizi design patterns. Angelo Di Iorio, Esercizi design patterns Angelo Di Iorio, diiorio@cs.unibo.it Esercizio 1 Una parete, che contiene porte e finestre, deve essere dipinta con una vernice. Ogni barattolo contiene una data quantità di vernice,

Dettagli

UML2. Concetti base. Andrea Polini. Laboratorio di Ingegneria del Software Corso di Laurea in Informatica L31 Università di Camerino

UML2. Concetti base. Andrea Polini. Laboratorio di Ingegneria del Software Corso di Laurea in Informatica L31 Università di Camerino UML2 Concetti base Andrea Polini Laboratorio di Ingegneria del Software Corso di Laurea in Informatica L31 Università di Camerino (Labortorio di Ingegneria del Software) UML2 - Concetti Base 1 / 12 Cos

Dettagli

Corso di Ingegneria del Software. Casi d uso

Corso di Ingegneria del Software. Casi d uso Corso di Ingegneria del Software a.a. 2009/2010 Mario Vacca mario.vacca1@istruzione.it 1. 2. 2.1 Il linguaggio dei casi d uso 2.2 Esempi 3. Bibliografia Sommario 1. 2. 2.1 Il linguaggio dei casi d uso

Dettagli

UML I diagrammi implementativi

UML I diagrammi implementativi Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A. 2008 - UML I diagrammi implementativi E. TINELLI I diagrammi implementativi In UML 2.x esistono 3 tipi di

Dettagli

Ing. Andrea Bulgarelli UML 1.3

Ing. Andrea Bulgarelli UML 1.3 1. UNA BREVE INTRODUZIONE A UML... 2 1.1.1 UML... 2 1.1.2 Rappresentazione (perspective)... 2 1.2 USE CASES... 3 1.2.1 Costruzione di Use Cases Diagram... 4 1.2.2 Quando si utilizzano gli Use Case Diagram...

Dettagli

CopsAndRobbers: dall'architettura al codice. Dipartimento di Informatica - Università di Pisa C. Montangero

CopsAndRobbers: dall'architettura al codice. Dipartimento di Informatica - Università di Pisa C. Montangero CopsAndRobbers: dall'architettura al codice Dipartimento di Informatica - Università di Pisa C. Montangero Table of Figures Introduzione... 3 ArchitetturaVistaComportamentale... 4 PlayerActivity... 5 ArchitetturaVistaComportamentale2...

Dettagli

Ingegneria del Software

Ingegneria del Software Ingegneria del Software Analisi e Specifica dei Requisisti Analisi e Specifica dei Requisisti Scopi dell Attività: Definizione di funzioni, vincoli, prestazioni, interfacce e qualsiasi altra caratteristica

Dettagli

Introduzione alla OOP Object Oriented Programming. Programmazione Orientata agli Oggetti

Introduzione alla OOP Object Oriented Programming. Programmazione Orientata agli Oggetti Introduzione alla OOP Object Oriented Programming Programmazione Orientata agli Oggetti I livelli dei linguaggi livelli di tensione porte logiche codice binario linguaggio assembler linguaggi procedurali

Dettagli