[Larman] Applicare UML e i pattern, Capitolo 28, Diagrammi di attività di UML e modellazione



Documenti analoghi
Modellazione di processi

Gestione del workflow

DFD DISPENSA DEL CORSO DI SISTEMI INFORMATIVI UNIVERSITÀ DEGLI STUDI DI VERONA FACOLTÀ DI MM.FF.NN LAUREA SPECIALISTICA IN INFORMATICA

Business Process Modeling and Notation e WebML

Una metodologia per la specifica di software basato su componenti

Strumenti di modellazione. Gabriella Trucco

Sistemi Informativi. Introduzione. Processi fisici. Tipologie di processi. Processi informativi. Processi aziendali

Modellazione di sistema

Organizzazione aziendale Lezione 16 BPMN. Ing. Marco Greco Tel Stanza 1S-28

Concetti di base di ingegneria del software

Dalla progettazione concettuale alla modellazione di dominio

I lucidi messi a disposizione sul sito del corso di Analisi e progettazione del software NON sostituiscono il libro di testo

Organizzazione aziendale Lezione 22 BPMN. Ing. Marco Greco Tel Stanza 1S-28

Modellazione dei dati in UML

MODELLAZIONE DEI PROCESSI AZIENDALI. workflow 1

Ciclo di vita dimensionale

Università di Pisa Polo Sistemi Logistici Economia e Legislazione dei Sistemi Logistici. Informatica per la Logistica. Lezioni

MODELLAZIONE DEI PROCESSI AZIENDALI. workflow 1

UML e (R)UP (an overview)

Automazione della gestione degli ordini d acquisto di una società di autonoleggio

Introduzione. Il software e l ingegneria del software. Marina Mongiello Ingegneria del software 1

Alla ricerca dell algoritmo. Scoprire e formalizzare algoritmi.

Activity Diagrams. Ing. Orazio Tomarchio

Dematerializzare per Semplificare

MANUALE MOODLE STUDENTI. Accesso al Materiale Didattico

SISTEMI E RETI 4(2) 4(2) 4(2) caratteristiche funzionali

Il problema. ! Si chiede di sviluppare un applicazione per la

Corso di Laurea Specialistica in Ingegneria Informatica. Corso di Ingegneria del Software A. A Class Discovery E.

UniRoma2 - Ingegneria del Software 1 1

FONDAMENTI di INFORMATICA L. Mezzalira

Indice generale. OOA Analisi Orientata agli Oggetti. Introduzione. Analisi

Modello Workflow - WIDE

Soluzione dell esercizio del 12 Febbraio 2004

RIFERIMENTI ATTORI GLOSSARIO. ERRORI COMUNI REV. REQUISITI INGEGNERIA DEL SOFTWARE Università degli Studi di Padova

Dematerializzare per Semplificare

Progettaz. e sviluppo Data Base

Il documento rappresenta una guida sintetica per descrivere sia la filosofia che il modulo software per l implementazione dei workflow in recuper@2.

Business Process Management

Raccolta dei Requisiti con i Casi D'uso. Corso di Ingegneria del Software Anno Accademico 2012/13

object oriented analysis

Generazione Automatica di Asserzioni da Modelli di Specifica

Gestione Turni. Introduzione

Archivi e database. Prof. Michele Batocchi A.S. 2013/2014

TECNICO SUPERIORE PER L AUTOMAZIONE INDUSTRIALE

Corso di Informatica

Sistema Operativo. Fondamenti di Informatica 1. Il Sistema Operativo

Programmi e Oggetti Software

7. Esigenze informative e FAQ. 8. Allegati. Repository documentale.

7. Architetture Software

Ingegneria del Software UML - Unified Modeling Language

Corso formazione su Sistema di gestione della qualità. Standard ISO 9001:2000/2008 Vision 2000

Business Process Management

Università degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica. Ingegneria del Software. La fase di Analisi

Corso di Laurea Triennale in Ingegneria Informatica. Corso di Ingegneria del software A. A Marina Mongiello

9. Architetture di Dominio

PROXYMA Contrà San Silvestro, Vicenza Tel Fax

Università di Parma Facoltà di Ingegneria. Polo Tecnologico Nettuno

Indice. Prefazione alla seconda edizione italiana XVII. Introduzione. Parte 1 Introduzione all UML e all UP 1

Il Sistema Operativo

SISTEMA SUEDIL per la gestione delle pratiche di Sportello Unico per l EDILIZIA, in formato elettronico

Light CRM. Documento Tecnico. Descrizione delle funzionalità del servizio

SISTEMA SPUNI per la gestione delle pratiche di Sportello Unico per le Attività Produttive, in formato elettronico

LogiTrack OTG. LogiTrack Gestione logistica controllo ordine spedizioni. OTG Informatica srl

1. BASI DI DATI: GENERALITÀ

TECNOLOGIA - SCUOLA PRIMARIA

I casi d uso corrispondono ai compiti che l attore (che può essere una persona fisica e non) può svolgere.

Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione.

Statechart Diagrams. Ing. Orazio Tomarchio

Strumenti per la gestione della configurazione del software

INFORMATICA 1 L. Mezzalira

UML - Unified Modeling Language

Modellazione del flusso di attività a partire da testo in linguaggio naturale: il caso di una compagnia di assicurazioni

La Metodologia adottata nel Corso

LA COMUNICAZIONE INTERPERSONALE IN AMBITO SANITARIO

Ingegneria del Software T

WorkFlow Management Systems

Esempio 1: CarMatch. Direzione centrale Sedi centrali per ogni paese Concessionarie locali di franchising UML 2

Il Dipartimento individua conoscenze, abilità e competenze in uscita nel biennio e nel triennio ripartite come segue:

4.1 Che cos è l ideazione

Corso Analista Programmatore Web PHP Corso Online Analista Programmatore Web PHP

LABORATORIO DI INFORMATICA

Sviluppo di processi per l automatizzazione del testing per applicazioni Android

Diagrammi di Flusso dei Dati

Librerie digitali. Video. Gestione di video. Caratteristiche dei video. Video. Metadati associati ai video. Metadati associati ai video

TECNICO SUPERIORE PER L INFORMATICA INDUSTRIALE

Considera tutti i requisiti funzionali (use cases) NON deve necessariamente modellare i requisiti non funzionali

LEZIONE 7 - STATE MACHINE DIAGRAM

Soluzione dell esercizio del 2 Febbraio 2004

UML. Analisi Modellazione e altro. Macchine a stati, Diagrammi di attività.. UML aa 2006/7 G.Bucci 1

Analisi e progettazione del software

ISTITUTO TECNICO ECONOMICO MOSSOTTI

Applicazione: SAI - Sistema di Audit Interno

IL PORTAFOGLIO EUROPASS PER LA TRASPARENZA E LA MOBILITÀ. Luogo Presentazione: Verona Autore: Silvia Lotito Data: 27 novembre 2015

SCHEDA PRODOTTO PAG. 1 J O B T I M E W F. Variazioni mensili al cartellino presenze. Versione 6.1. JOBTIME Work Flow

REGOLAMENTO PER L ISTITUZIONE E L APPLICAZIONE DEL SISTEMA DI MISURAZIONE E VALUTAZIONE DELLA PERFORMANCE

Università degli studi Roma Tre Dipartimento di informatica ed automazione. Tesi di laurea

C3 indirizzo Elettronica ed Elettrotecnica Profilo

Stefania Marrara - Esercitazioni di Tecnologie dei Sistemi Informativi. Integrazione di dati di sorgenti diverse

Lezione 1. Introduzione e Modellazione Concettuale

Informatica Industriale Modello funzionale: Informazione Progettazione concettuale

Transcript:

Luca Cabibbo Architetture Software Dispensa T 1 ottobre 2008 1 -Fonti [Larman] Applicare UML e i pattern, Capitolo 28, Diagrammi di attività di UML e modellazione [Larman] Applicare UML e i pattern, Capitolo 29, Diagrammi di macchina a stati di UML e modellazione [BPMN] Introduction to BPMN (Business Process Modeling Notation) 2

Obiettivi - Obiettivi e argomenti mostrare alcuni aspetti fondamentali circa la modellazione dei processi esemplificare alcune notazioni Argomenti introduzione diagrammi data-flow diagrammi di attività di UML diagrammi di macchina a stati di UML Business Process Modeling Notation 3 * Introduzione La modellazione è un attività fondamentale nello sviluppo del software si modella per comprendere, comunicare, ed analizzare il dominio applicativo o il sistema informatico possibili diversi obiettivi analisi comprendere il dominio del problema progettazione sviluppare una soluzione per il problema (la modellazione fatta durante) l analisi può essere usata come fonte di ispirazione per (la modellazione durante) la progettazione vedi il pattern Domain Object diversi modi di fare modellazione modellazione delle informazioni modellazione dei casi d uso modellazione dei processi e delle attività ità... 4

Modellazione dei processi di business La modellazione dei processi di business (BPM, Business Process Modeling) ha lo scopo di rappresentare processi di business processi svolti da un organizzazione o interazione tra più organizzazioni possono essere molto complessi i modelli devono essere facilmente comprensibili da utenti non tecnici (ad es., management) devono poter essere messi in corrispondenza con linguaggi gg per la specifica di processi eseguibili (ad es., BPEL4WS) 5 Modellazione dei processi di business Nella modellazione dei processi di business sono possibili diversi punti di vista (sinergici e/o complementari) attività/processi svolte da qualcuno, solitamente per trasformare informazioni flussi di dati descrivono il movimento dei dati nel sistema stati/eventi stati in cui possono trovarsi alcune risorse informazioni, e gli eventi che provocano cambiamenti di stato 6

Linguaggi per la modellazione di processi Molti linguaggi per la modellazione di processi introdotta nel corso del tempo alcuni esempi diagrammi data-flow (DFD, Data-Flow Diagram) diagrammi idelle attività iàdiuml diagrammi di macchina a stati di UML diagrammi per la descrizione di workflow linguaggi per la modellazione di processi ad es., BPMN (BPM Notation)... diversi costrutti in comune tra i vari linguaggi gg 7 * Diagrammi data-flow I diagrammi data-flow (DFD) diagrammi dei flussi di dati per l analisi funzionale ovvero, per la descrizione di processi in particolare, per descrivere i flussi di dati/informazioni nell ambito di processi/sistemi La notazione dei DFD prevede quattro tipi di costrutti processo flusso di dati deposito di dati interfaccia 8

Processo Diagrammi data-flow rappresenta un attività nel sistema informativo un processo può generare, usare, manipolare, distruggere o trasformare informazioni Flusso di dati (dataflow) scambio di informazioni tra processi caratterizzato dall insieme dei dati scambiati non rappresenta un flusso di controllo Deposito di dati un repository, temporaneo o persistente, di informazioni Interfaccia un utente esterno del sistema informativo può essere sorgente o destinazione di flussi di dati 9 DFD: un esempio 10

con i DFD Un possibile approccio metodologico per la modellazione di processi con i DFD identifica le interfacce identifica i flussi di dati tra le interfacce e l intero sistema rappresentato come un singolo processo diagramma di contesto o diagramma di livello 0 ripetutamente, raffina lo schema ad esempio decomponi un processo in più processi eventualmente collegati da flussi di dati e da depositi di dati intermedi garantisci la continuità dei flussi di dati decomponi un flusso di dati decomponi un deposito di dati sostituisci un flusso con un processo partiziona, accorpa, generalizza, replica,... 11 * Diagrammi di attività di UML Un diagramma di attività di UML mostra le attività, svolte in sequenza o in parallelo, in un processo utile per modellare processi di business, flussi di lavoro, flussi di dati e algoritmi complessi 12

Diagrammi di attività La notazione dei diagrammi di attività prevede numerosi costrutti tra cui azione (attività) possibilmente con pre-condizioni e postcondizioni decisione fork, join e merge per la concorrenza e la sincronizzazione nodo oggetto rappresenta informazioni generate e scambiate tra azioni arco rappresenta un flusso di dati o di controllo corsia rappresenta un attore responsabile dello svolgimento di alcune azioni 13 Diagramma di attività: un esempio 14

Diagrammi di attività Un diagramma di attività mostra un insieme di azioni alcune delle quali vanno svolte in sequenza altre possono essere svolte in parallelo Due aspetti quando un azione termina, c è una transizione in uscita automatica quando c è una transizione in ingresso, la successiva azione può iniziare il diagramma può mostrare sia il flusso di controllo che il flusso dei dati 15 Diagramma di attività: un altro esempio Student Registration System Complete Application Application Check Course Availability «datastore» Courses Accept/Deny Reply Check Applicant Qualification «datastore» t Applications «datastore» Students 16

Diagramma di attività: un altro esempio A time signal Receive Video Order 30 days since sent last invoice, and no payment received Fill Order Send Invoice Resend Invoice Deliver Order Receive Payment Cancel request Accept a signal Close Order Cancel Order 17 Diagramma di attività: POS NextGen Customer Cashier NextGen POS Authorization Service Shop and Fill Cart Cart Enter Cart Items Calculate Taxes and Discounts [ cash payment ] [ else ] Submit Authorization Request Authorize Payment Receipt Create Receipt Hand Over Items 18

Linee guida Alcune linee guida nella modellazione di attività la modellazione delle attività è efficace per modellare processi molto complessi i processi semplici possono essere descritti con i casi d uso modella per raffinamenti i successivi i livello 0 diagramma di contesto altri livelli ciascun sotto-diagramma espande un attività del livello precedente nell ambito di ciascun livello, le attività mostrate devono essere tutte allo stesso livello di astrazione 19 * Diagrammi di macchina a stati di UML Un diagramma di macchina a stati di UML mostra i possibili stati in cui può trovarsi un oggetto o una risorsa gli eventi che possono verificarsi di interesse per la gestione di quell oggetto o risorsa i cambiamenti i di stato provocati dagli eventi ovvero, il modo in cui l oggetto o la risorsa reagisce agli eventi utile per descrivere il ciclo di vita di un oggetto o di una risorsa 20

Un esempio 21 Eventi, stati e transizioni Un evento è un avvenimento significativo o degno di nota ad esempio, la cornetta del telefono viene sollevata Uno stato è la condizione di un oggetto in un certo intervallo di tempo il tempo tra due eventi il telefono è inattivo Una transizione è una relazione tra due stati indica che quando si verifica un evento, l oggetto passa da uno stato precedente a uno stato successivo quando si verifica l evento alza cornetta, il telefono passa dallo stato inattivo allo stato attivo 22

Ulteriore notazione Azioni legate a transizioni e guardie (condizioni) transition action off hook / play dial tone Idle [valid subscriber] Active on hook guard condition 23 Ulteriore notazione Stati annidati off hook / play dial tone Idle [valid subscriber] Active PlayingDialTone Talking on hook digit digit connected Dialing complete Connecting 24

Macchine a stati e processi di business La modellazione di macchina a stati è utile nella modellazione di un processo di business in relazioni a risorse che vengono gestite dal processo e che, nel corso del processo, si possono trovare in stati diversi ad esempio, un ordine può essere iniziato, completato, annullato,... le transizioni si verificano in corrispondenza ad eventi che sono solitamente legati allo svolgimento di attività gli stati indicano degli stati (intermedi) in cui può trovarsi una risorsa tra lo svolgimento di due attività atomiche consecutive l identificazione di stati, eventi e transizioni è complementare all identificazione delle attività e del modo in cui sono correlate 25 * Business Process Modeling Notation BPMN è un linguaggio standard per la descrizione di processi un solo tipo di diagramma business process diagram (BPD) obiettivo è sostenere la modellazione di processi in modo comprensibile ad analisti di business (non tecnici) in grado di rappresentare processi anche molto complessi compatibile con la generazione di processi di business eseguibili ad es., BPEL4WS Quattro categorie di elementi grafici due categorie fondamentali oggetti flusso oggetti connessione due categorie avanzate corsie ed elaborati 26

BPMN oggetti flusso 27 BPMN oggetti connessione 28

BPMN corsie 29 BPMN elaborati 30

BPMN un semplice esempio 31 BPMN un altro esempio 32

* Discussione La modellazione dei processi di business si concentra su le attività svolte in modo concorrente da un organizzazione nell erogazione di un processo (B2C) o da più organizzazioni nell ambito di una loro collaborazione (B2B) i flussi di dati scambiati tra le attività e/o i partecipanti al processo lo stato in cui possono trovarsi le risorse gestite da un processo e le transizioni tra stati La modellazione dei processi di business una tipologia di modellazione di dominio utile nella progettazione di architetture basate su attività o su flussi di dati 33