Programmazione ad Oggetti

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Programmazione ad Oggetti"

Transcript

1 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 diagram Collaboration diagram Activity diagram Deployment diagram Gli oggetti che partecipano alla descrizione del comportamento dinamico interagisco tra loro attraverso messaggi Statechart Diagram Specifica il ciclo di vita degli oggetti di una classe, di sottosistemi e sistemi, definendo le regole che lo governano Tutti gli oggetti hanno uno stato Lo stato e determinato dal valore degli attributi e delle relazioni dell oggetto Rappresenta automi a stati finiti 1

2 Elementi di uno State Diagram Stato E una particolare condizione in cui un oggetto (o sistema) si può trovare nel suo ciclo di vita Evento E il fatto che può determinare una transizione di stato Azione E la reazione del sistema alla transizione di stato E l uscita di un automa a stati finiti Guardia E un meccanismo che provoca un azione al verificarsi di una determinata condizione Elementi di uno State Diagram (2) Stato Wait do/ None Evento Azione Guardia /azione [condizione di guardia] Statechart diagram stato iniziale guardia evento transizione di stato stato Play Start / Setup Wait do/ None [ End of Movie ] / Resume Movie Play do/ Play azione Resume / Resume Movie Stop Play Pause stato finale Stop Stop Pause entry/ None 2

3 Eventi Un evento è qualcosa che accade e che può causare qualche azione In UML vi sono 4 tipi di eventi Una condizione diventa vera (condizione di guardia) La ricezione di un segnale esplicito da un altro oggetto La ricezione di una call per un operazione (invocazione di un metodo dell oggetto) Il trascorre di un determinato ammontare di tempo (timeout) Eventi (continua) Note Gli eventi sono dei trigger che attivano transizioni di stato. Questi eventi sono processati UNO ALLA VOLTA Se un evento può potenzialmente attivare più transizioni, ne verrà attivata UNA SOLTANTO (non è definita quale) Se occore un evento e la guardia ad esso associata è falsa l evento VIENE IGNORATO Eventi (continua) Una classe può spedire o ricevere messaggi Operation call Signal Quando un operazione è chiamata, essa viene eseguita e produce dei risultati Si tratta di un evento sincrono, l oggetto che produce lo produce si mette in attesa della risposta Quando un oggetto signal (segnale) è spedito, il ricevente cattura l oggetto e lo usa Si tratta di un evento asincrono, l oggetto che lo produce continua la propria elabarazione 3

4 Eventi (continua) I signal possono essere modellati come classi ordinarie, ma usate solo per spedire messaggi Sono rappresentate con lo stereotype <<signal>> E possibile costruire gerarchie di messaggi che supportano il polimorfismo Statechart Diagram Uno stato può avere dei sottostati (substates) innestati. Essi possono essere di tipo OR, uno solo dei sottostati può essere attivo AND, i sottostati possono essere attivi contemporaneamente Statechart Diagram: Substates OR Running Forward Backward Running AND Forward Backward OR Low speed High Speed OR 4

5 Sequence Diagram Utilizzati per illustrare l esecuzione di: una operazione uno use-case uno scenario di interazioni Specifica la sequenza dei messaggi che gli oggetti si scambiano con particolare enfasi rispetto al tempo Può specificare nodi decisionali e iterazioni Messaggi UML supporta i seguenti tipi di messaggi: simple synchronous asynchronous Sequence Diagram : Device : DHCPService : Locator : SiteLocationService : EventService : : LocationService TrackingService require_address add_new_device locate_new_device new_device add_device : Eco create new_device new_device add_device new_device add_device 5

6 Collaboration Diagram Utilizzati per illustrare l esecuzione di: una operazione uno use-case uno scenario di interazioni Specifica le collaborazioni tra gli oggetti in termini di messaggi scambiati La sequenza dei messaggi è meno evidente che nel diagramma di sequenza, mentre sono più evidenti i legami tra gli oggetti Collaboration Diagram 1: MakeRes ervation 4: notifycustomer 2: getcustomerdetails IMakeReservation : IMakeReservation ICustomerMgt : ICustomerMgt 3: makereservation IHotelMgt : IHotelMgt Activity Diagram Si focalizzano sulle attività legate alla implementazione di un operazione, di una istanza di un oggetto o di un use-case Permette di rappresentare processi paralleli e la loro sincronizzazione E un caso particolare di diagrammi di stato, in cui ogni stato è uno stato di attività 6

7 Attività Elementi di un Activity Diagram Completa Ordine Elemento di sincronizzazione Elemento di fork swimlanes Activity Diagram: Swimlanes Cliente Venditore Magazzino Richiedi Servizio Ricevi Ordine Paga Completa Ordine Spedisci Merce Ricevi Merce Deployment Diagram Evidenzia la configurazione dei nodi elaborativi in ambiente di esecuzione (run-time), e dei componenti, processi ed oggetti ubicati in questi nodi Permette di rappresentare, a diversi livelli di dettaglio, l architettura fisica del sistema 7

8 Elementi di un Deployment Diagram Nodi Oggetti fisici (devices) che hanno un qualche tipo di risorsa computazionale (processori, stamanti, etc). Sono definiti come classi Connessioni I nodo sono connessi tra loro con associazioni di comunicazione Component Elemento software eseguibile autonomatemente Oggetti Un oggetto è posto dentro un istanza di un nodo per indicare dove risiede Deployment Diagram client tcp / ip server locale interfaccia utente application server connession e tra nodi tcp / ip nodo server remoto data server Deployment Diagram (2) In un sistema distribuito un oggetto può muoversi tra differenti nodi (es. CORBA) Per mostrare come un oggetto può essere distribuito nel sistema, si traccia tra le differenti occorrenze dell oggetto una dipendenza con lo sterotype <<becomes>> 8

9 Deployment Diagram Main Server: Comaq Pentium PC Jim s machine: IBM pentium II Transaction Server Program Client program transobj <<becomes>> T1:updatethread transobj dbobj callobj 9

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

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

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

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

Introduzione a UML. obiettivo di questa introduzione

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

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

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

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

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

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

Note sugli Statechart Diagrams

Note sugli Statechart Diagrams Note sugli Statechart Diagrams Giacomo Gabrielli Sorgente: [Bolognesi05] 1 Diagrammi di Stato I diagrammi di stato (statechart diagram) permettono di descrivere il comportamento dinamico di un oggetto

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

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

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

Implementation diagram Component diagram - mostrano la struttura del codice Deployment diagram - mostrano la struttura del sistema run-time

Implementation diagram Component diagram - mostrano la struttura del codice Deployment diagram - mostrano la struttura del sistema run-time Implementation diagram Component diagram - mostrano la struttura del codice Deployment diagram - mostrano la struttura del sistema run-time 1 Component diagrams evidenzia l'organizzazione e le dipendenze

Dettagli

UML e i diagrammi di stato

UML e i diagrammi di stato UML e i diagrammi di stato 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 Definizioni Un diagramma di stato rappresenta il ciclo di vita degli oggetti di una

Dettagli

Università di Padova Facoltà di Scienze MM.FF.NN Informatica - anno Corso di Ingegneria del Software - B UML

Università di Padova Facoltà di Scienze MM.FF.NN Informatica - anno Corso di Ingegneria del Software - B UML v. 2.3 Università di Padova Facoltà di Scienze MM.FF.NN Informatica - anno 2008-09 Corso di Ingegneria del Software - B UML Diagramma di macchina a stati (state machine diagram) Renato Cte - UML Diagrammi

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

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

Ingegneria del Software (Ing.Informatica Nuovo Ord.) Canale M-Z / A.A Marco Cadoli

Ingegneria del Software (Ing.Informatica Nuovo Ord.) Canale M-Z / A.A Marco Cadoli Ingegneria del Software (Ing.Informatica Nuovo Ord.) Canale M-Z / A.A. 2005-06 Marco Cadoli Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica TERZA PARTE Analisi dei requisiti e

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

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

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

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

La lezione di oggi. Sparxsystems: Enterprise Architect 6.1". Gentleware: Poseidon for UML". [

La lezione di oggi. Sparxsystems: Enterprise Architect 6.1. Gentleware: Poseidon for UML. [ La lezione di oggi Sparxsystems: Enterprise Architect 6.1". [http://www.sparxsystems.com.au/] Gentleware: Poseidon for UML". [http://www.gentleware.com/] Modello concettuale: l architettura l utilizza

Dettagli

SOMMARIO DIAGRAMMI DI SEQUENZA

SOMMARIO DIAGRAMMI DI SEQUENZA SOMMARIO DIAGRAMMI DI SEQUENZA INGEGNERIA DEL SOFTWARE Università degli Studi di Padova Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica, A.A. 2011 2012 2 rcardin@math.unipd.it SOMMARIO DIAGRAMMI

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 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

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

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

Chiamata di procedura remota

Chiamata di procedura remota Con gli strumenti gia` visti, si puo` realizzare come segue: lato chiamante: send asincrona immediatamente seguita da una receive lato chiamato: una receive seguita, al termine dell azione richiesta, da

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

Chiamata di procedura remota

Chiamata di procedura remota Chiamata di procedura remota Meccanismo di comunicazione e sincronizzazione tra processi in cui un processo che richiede un servizio ad un altro processo rimane sospeso fino al completamento del servizio

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

Descrivono la collaborazione di un gruppo di oggetti per implementare collettivamente un comportamento

Descrivono la collaborazione di un gruppo di oggetti per implementare collettivamente un comportamento Diagrammi di interazione Diagrammi di sequenza Diagrammi di comunicazione (ex collaborazione) Diagrammi di interazione generale Diagrammi di temporizzazione Descrivono la collaborazione di un gruppo di

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

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

Diagrammi di stato Statechart Diagrams

Diagrammi di stato Statechart Diagrams ,6 PRG % &RUVR GL,QJHJQHULD GHO 6RIWZDUH Bibliografia: Diagrammi di stato Statechart Diagrams - Slide UML Tutorial Series tratte dal sito: www.omg.org documento: 01-03-03.ppt - Bozze del corso di Ambriola,

Dettagli

A. Ferrari Object Oriented Design

A. Ferrari Object Oriented Design Object Oriented Design UML class diagram cos è UML o è un linguaggio di progettazione, da non confondere con i linguaggi di programmazione (Python, C, C++, Java, ) o fornisce una serie di diagrammi per

Dettagli

A. Ferrari Object Oriented Design

A. Ferrari Object Oriented Design Object Oriented Design UML class diagram cos è UML o è un linguaggio di progettazione, da non confondere con i linguaggi di programmazione (Python, C, C++, Java, ) o fornisce una serie di diagrammi per

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

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

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

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

UML. UML Book. Diagrammi di attività. Cosa sono? Notazione. Cosa sono?

UML. UML Book. Diagrammi di attività.   Cosa sono? Notazione. Cosa sono? UML Book UML http://www2.mokabyte.it Ing. Ester Zumpano Diagrammi di attività Cosa sono? I diagrammi di attività servono per modellare il flusso di lavoro dei casi d uso fornire a chi li legge uno stato

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

UML. Unified Modeling Language (linguaggio di modellazione unificato) prof. Antonio Gervasi IIS «A.Meucci» Casarano

UML. Unified Modeling Language (linguaggio di modellazione unificato) prof. Antonio Gervasi IIS «A.Meucci» Casarano UML Unified Modeling Language (linguaggio di modellazione unificato) 1 Cos è UML L UML nasce negli anni 90 come unificazione di diverse metodologie di analisi. Si propone come strumento per facilitare

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

API Socket di Berkeley

API Socket di Berkeley Laboratorio Reti di Calcolatori (A.A. 2008-2009) Programmazione di rete ed interfaccia API socket di Berkeley Delfina Malandrino delmal@dia.unisa.it http://www.dia.unisa.it/professori/delmal/ API Socket

Dettagli

Piattaforme Software Distribuite. Roberto Beraldi

Piattaforme Software Distribuite. Roberto Beraldi Piattaforme Software Distribuite Roberto Beraldi Middleware classification Middleware Synchronous Approaches (Tightly coupled) Asynchronous approaches (Loosely coupled) Interprocess communication and Serialization

Dettagli

Paolo Bison. Fondamenti di Informatica A.A. 2006/07 Università di Padova

Paolo Bison. Fondamenti di Informatica A.A. 2006/07 Università di Padova Introduzione ai sottoprogrammi Paolo Bison Fondamenti di Informatica A.A. 2006/07 Università di Padova Introduzione al corso, Paolo Bison, FI06, 2007-02-06 p.1 Struttura programma formato da vari elementi

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

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 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

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

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

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

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

Studio di caso: Bancomat Automated Teller Machine

Studio di caso: Bancomat Automated Teller Machine ,6 PRG % &RUVR GL,QJHJQHULD GHO 6RIWZDUH 80/ Studio di caso: Bancomat Automated Teller Machine (prima parte) Bibliografia: - Hassan Gomaa: Designing concurrent distribuited and real time applications with

Dettagli

Activity Diagrams (lezione 3)

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

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

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

Università di Bergamo Facoltà di Ingegneria INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi B1_2 V2.3 UML

Università di Bergamo Facoltà di Ingegneria INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi B1_2 V2.3 UML Università di Bergamo Facoltà di Ingegneria INGEGNERIA DEL SOFTWARE Paolo Salvaneschi B1_2 V2.3 UML Il contenuto del documento è liberamente utilizzabile dagli studenti, per studio personale e per supporto

Dettagli

Ingegneria del Software 18. Realizzazione casi d uso. Dipartimento di Informatica Università di Pisa A.A. 2014/15

Ingegneria del Software 18. Realizzazione casi d uso. Dipartimento di Informatica Università di Pisa A.A. 2014/15 Ingegneria del Software 18. Realizzazione casi d uso Dipartimento di Informatica Università di Pisa A.A. 2014/15 diagrammi di interazione Descrizione dinamica, che elenca i messaggi scambiati tra istanze

Dettagli

Università di Bergamo Dip. di Ingegneria gestionale, dell'informazione e della produzione INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi D1_3 V3.

Università di Bergamo Dip. di Ingegneria gestionale, dell'informazione e della produzione INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi D1_3 V3. Università di Bergamo Dip. di Ingegneria gestionale, dell'informazione e della produzione INGEGNERIA DEL SOFTWARE Paolo Salvaneschi D1_3 V3.4 UML Il contenuto del documento è liberamente utilizzabile dagli

Dettagli

Unified Modeling Language

Unified Modeling Language Unified Modeling Language marrara@elet.polimi.it Adattamento di materiale di Luciano Baresi 1 Concetto di oggetto Definizione: un oggetto è un concetto, un astrazione o una cosa ed ha un senso in un particolare

Dettagli

Ingegneria del Software 4. Introduzione a UML. Dipartimento di Informatica Università di Pisa A.A. 2014/15

Ingegneria del Software 4. Introduzione a UML. Dipartimento di Informatica Università di Pisa A.A. 2014/15 Ingegneria del Software 4. Introduzione a UML Dipartimento di Informatica Università di Pisa A.A. 2014/15 e per i modelli iterativi analisi peliminare analisi e progettazione realizzazione Necessità di

Dettagli

Laboratorio di Programmazione di Rete Laurea Triennale in Informatica Applicata Progetto di fine Corso - A.A. 08/09

Laboratorio di Programmazione di Rete Laurea Triennale in Informatica Applicata Progetto di fine Corso - A.A. 08/09 Laboratorio di Programmazione di Rete Laurea Triennale in Informatica Applicata Progetto di fine Corso - A.A. 08/09 SRM: Un Sistema Tollerante ai Guasti per la Gestione di Risorse Condivise in Una Rete

Dettagli

UML Unified Modeling Language

UML Unified Modeling Language UML E CASI D USO UML Unified Modeling Language Linguaggio stardardizzato per identificare e modellizzare le specifiche di un S.I. Coerente con il paradigma della programmazione ad oggetti Definito a partire

Dettagli

Modelli Architetturali. Astrazione del sistema - componenti e struttura - distribuzione delle funzionalità

Modelli Architetturali. Astrazione del sistema - componenti e struttura - distribuzione delle funzionalità Modelli di Sistemi Modelli concettuali di supporto allo studio dei sistemi distribuiti Modelli architetturali Descrizione ad alto livello della distribuzione delle funzionalità delle componenti e loro

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

Introduzione a UML. Iolanda Salinari

Introduzione a UML. Iolanda Salinari Introduzione a UML Iolanda Salinari Perché modelliamo Un modello è una semplificazione della realtà I modelli ci aiutano a visualizzare un sistema come è o come vorremmo che fosse ci permettono di specificare

Dettagli

UML: Unified Modeling Language

UML: Unified Modeling Language IS Capitolo 2 17-02-2006 11:24 Pagina 11 Capitolo 2 UML: Unified Modeling Language UML (Unified Modeling Language) è un insieme di diagrammi formali e semiformali usato per coadiuvare il progettista informatico

Dettagli

Modellazione discreta con UML

Modellazione discreta con UML Modellazione discreta con UML Simulazione & Logistica, I modulo Lezione n. 3 Corso di Laurea in Informatica Applicata Università di Pisa, sede di La Spezia A.a. 2008/09, I semestre Giovanni A. Cignoni

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

OOA Esercizi. UniRoma2 - Arch. e Servizi SW per Internet 1

OOA Esercizi. UniRoma2 - Arch. e Servizi SW per Internet 1 OOA Esercizi UniRoma2 - Arch. e Servizi SW per Internet 1 Sistema SW per Online Shopping Requisiti Utente Il sistema software deve supportare l azienda X che vende computer online I clienti che accedono

Dettagli

la trasmissione è regolata solamente dall algoritmo per il controllo del flusso prima di inviare l ACK.

la trasmissione è regolata solamente dall algoritmo per il controllo del flusso prima di inviare l ACK. 1. Considerare il problema della stima del Round Trip Time. Supporre che inizialmente RTT valga 200 ms. Il mittente invia un segmento e riceve l ACK relativo dopo 100 ms, quindi invia un altro segmento,

Dettagli

Architetture dei sistemi distribuiti. Mariagrazia Fugini Impianti Como 08-09

Architetture dei sistemi distribuiti. Mariagrazia Fugini Impianti Como 08-09 Architetture dei sistemi distribuiti Mariagrazia Fugini Impianti Como 08-09 Sommario Sistemi centralizzati e distribuiti Meccanismi per sistemi distribuiti RPC Client-server Middleware Distributed object

Dettagli

Introduzione ad UML. Perché modelliamo

Introduzione ad UML. Perché modelliamo Introduzione ad UML Pag. 1 Perché modelliamo Un modello è una semplificazione della realtà I modelli ci aiutano a visualizzare un sistema come è o come vorremmo che fosse ci permettono di specificare la

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

Specifica parte IIA. Leggere Sez , 5.5.2, Ghezzi et al.

Specifica parte IIA. Leggere Sez , 5.5.2, Ghezzi et al. Specifica parte IIA Leggere Sez. 5.5.1, 5.5.2, 5.5.3 Ghezzi et al. Specifiche operazionali l Diagrammi di flusso di dati l Diagrammi UML l Macchine a stati finiti Specifica 2A 2 Diagrammi di flusso di

Dettagli

Unified Modeling Language (3) Statechart diagram. State Diagram. Elementi grafici

Unified Modeling Language (3) Statechart diagram. State Diagram. Elementi grafici Unified Modeling Language (3) Statechart diagram A cura di Luciano Baresi UML: Unified Modeling Language 1 UML: Unified Modeling Language 2 State Diagram Elementi grafici Rappresentano il comportamento

Dettagli

Modello a scambio di messaggi

Modello a scambio di messaggi Modello a scambio di messaggi Aspetti caratterizzanti il modello Canali di comunicazione Primitive di comunicazione 1 Aspetti caratterizzanti il modello modello architetturale di macchina (virtuale) concorrente

Dettagli

UD 3 PROTOCOLLO ISO-OSI

UD 3 PROTOCOLLO ISO-OSI UD 3 PROTOCOLLO ISO-OSI IL PROTOCOLLO All inizio ogni azienda creava dispositivo hw e sw in grado solo di essere utilizzati e di comunicare con dispositivi dell azienda stessa Sistemi Chiusi Nel tempo

Dettagli

Lezione n.3 LIVELLO TRASPORTO

Lezione n.3 LIVELLO TRASPORTO Università degli Studi di Pisa Lezione n.3 SSIS INFORMATICA LIVELLO TRASPORTO 30/11/2007 Laura Ricci Laura Ricci 1 LIVELLO TRASPORTO realizza un supporto per la comunicazione logica tra processi distribuiti

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

Corso di Automazione industriale

Corso di Automazione industriale Corso di Automazione industriale Lezione Reti di Petri Introduzione Università degli Studi di Bergamo, Automazione Industriale, A.A. 07/08, A. L. Cologni Introduzione Cosa sono le reti di Petri Sono un

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

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 precedenti: Descrizione del dominio: modello statico Descrizione del dominio: modello dinamico

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

PROCESSI NON SEQUENZIALI E TIPI DI INTERAZIONE

PROCESSI NON SEQUENZIALI E TIPI DI INTERAZIONE PROCESSI NON SEQUENZIALI E TIPI DI INTERAZIONE 1 ALGORITMO, PROGRAMMA, PROCESSO Algoritmo Procedimento logico che deve essere eseguito per risolvere un determinato problema. Programma Descrizione di un

Dettagli

Paolo Bison. Fondamenti di Informatica Ingegneria Meccanica Università di Padova A.A. 2008/09

Paolo Bison. Fondamenti di Informatica Ingegneria Meccanica Università di Padova A.A. 2008/09 Introduzione ai sottoprogrammi Paolo Bison Fondamenti di Informatica Ingegneria Meccanica Università di Padova A.A. 2008/09 Introduzione al corso, Paolo Bison, FI08, 2008-12-09 p.1 Struttura programma

Dettagli

1. UML 2 ed il Processo Unificato

1. UML 2 ed il Processo Unificato 1. UML 2 ed il Processo Unificato Andrea Polini Laboratorio di Ingegneria del Software Corso di Laurea in Informatica (Laboratorio di Ingegneria del Software) 1. UML 2 ed il Processo Unificato 1 / 25 Sommario

Dettagli

Università degli Studi di Roma Tor Vergata Facoltà di Ingegneria

Università degli Studi di Roma Tor Vergata Facoltà di Ingegneria Università degli Studi di Roma Tor Vergata Facoltà di Ingegneria Un sistema software distribuito è composto da un insieme di processi in esecuzione su più nodi del sistema Un algoritmo distribuito può

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