CIISE 2014 CONFERENZA INCOSE ITALIA SU SYSTEMS ENGINEERING. Modeling Approaches for the Design and Analysis of Complex Systems Prima Parte



Documenti analoghi
Modellazione di sistema

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

Gestione del workflow

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

Strumenti di modellazione. Gabriella Trucco

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

Object Oriented Programming

Modellazione dei dati in UML

PROGETTAZIONE DEL SOFTWARE

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

UML - Unified Modeling Language

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

Database. Si ringrazia Marco Bertini per le slides

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

La Metodologia adottata nel Corso

Concetti di base di ingegneria del software

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

Ciclo di vita dimensionale

Sequence Diagram e Collaboration Diagram

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

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

Database. Appunti di Amaranto Oronzo e Giancane Diego Lezione dell Ing. Lucia Vaira 24/04/2014

Automazione Industriale 4- Ingegneria del Software

I Sistemi Informativi

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

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

Quality gate. Sono eventi programmati regolarmente e condotti seguendo una procedura standard

Corso: Sistemi di elaborazione delle informazioni 2. Anno Accademico: 2007/2008. Docente: Mauro Giacomini

Una metodologia per la specifica di software basato su componenti

UniRoma2 - Ingegneria del Software 1 1

Gli strumenti di simulazione per lo sviluppo di sistemi elettronici automotive

Università degli Studi di Milano 16 gennaio Dipartimento Informatica e Comunicazione aula Beta

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

La specifica del problema

ANALISI E MAPPATURA DEI PROCESSI AZIENDALI

Diagrammi di Flusso dei Dati

Sistemi elettronici per la sicurezza dei veicoli: presente e futuro. Il ruolo della norma ISO per la Sicurezza Funzionale

Comunicazione tra Computer. Protocolli. Astrazione di Sottosistema di Comunicazione. Modello di un Sottosistema di Comunicazione

TECNICO SUPERIORE PER L INFORMATICA INDUSTRIALE

IL SOFTWARE SECONDO LA NORMA UNI EN ISO :2008 (IIA PARTE) 1

Progettaz. e sviluppo Data Base

!"#$%&&'()#*%+%+!"#$"',,'()#*%+ -")%*&'&'+'$.)+-$$%&&) !"#$%&&'(%)'*+%",#-%"#.'%&'#/0)-+#12"+3,)4+56#7+#.')8'9

2- Identificazione del processo. (o dei processi) da analizzare. Approcci: Esaustivo. In relazione al problema. Sulla base della rilevanza

Progetto. Struttura del documento di specifica dei requisiti, Casi d uso. manuel.comparetti@iet.unipi.it

Alessandra Raffaetà. Basi di Dati

Activity Diagrams. Ing. Orazio Tomarchio

Ciclo di Vita Evolutivo

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

Diagrammi di Interazione

object oriented analysis

Business Process Management

La gestione manageriale dei progetti

Mappatura dei processi aziendali. Una metodologia per l analisi dei processi

Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci

Introduzione alla Programmazione Orientata agli Oggetti. Classi, Oggetti e Messaggi

La Progettazione Concettuale

MODELLO RELAZIONALE. Introduzione

Lezione 1. Introduzione e Modellazione Concettuale

Fasi di creazione di un programma

NORMA CEI EN PLC: programmazione. PLC: programmazione. PLC: programmazione. Automazione Industriale 3. Automazione Industriale

Il software impiegato su un computer si distingue in: Sistema Operativo Compilatori per produrre programmi

La reingegnerizzazione dei processi nella Pubblica Amministrazione

Programmi e Oggetti Software

Il paradigma OO e le relative metodologie di progettazione. Programmazione orientata agli oggetti

Sistemi Informativi I Caso di studio con applicazione di UML

Testo Esercizio. Un modello è ragionevole quando contiene queste tre caratteristiche.

Dispensa di Informatica I.1

Progettazione dei Sistemi di Produzione

Artifact Centric Business Processes (I)

Sistemi di Gestione: cosa ci riserva il futuro? Novità Normative e Prospettive

Gestione Automatizzata di una Lista Nozze

Progettazione di Basi di Dati

Descrizione di un algoritmo

Ingegneria del Software UML - Unified Modeling Language

PIANIFICAZIONE E REALIZZAZIONE DI UN SISTEMA INFORMATIVO 147 6/001.0

Dalla progettazione concettuale alla modellazione di dominio

Il Project Management nell Implementazione dell'it Service Operations

Il modello di ottimizzazione SAM

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

Trasformazione dei Processi in Progetti DIB 1

DOCUMENTO DI SPECIFICA DEI REQUISITI SOFTWARE

SOFTWARE A SUPPORTO DELLA GESTIONE AMMINISTRATIVA DELLO SPORTELLO UNICO SPECIFICA DEI REQUISITI UTENTE

Business Modeling UML

Business Process Management

Volumi di riferimento

B.P.S. Business Process Server ALLEGATO C10

Generazione Automatica di Asserzioni da Modelli di Specifica

LINEA PROJECT MANAGEMENT

Database: collezione di fatti, registrabili e con un ben preciso significato, relazionati fra di loro

Esercitazioni di PROGETTAZIONE DEL SOFTWARE A.A

Cap.1 - L impresa come sistema

Requisiti normativi, standard, template

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

Progettazione del Software. Emiliano Casalicchio. Dipartimento di Informatica e Sistemistica SAPIENZA Università di Roma Sede di Rieti

Paradigma object-oriented

UML Unified Modeling Language

Gestione Requisiti. Ingegneria dei Requisiti. Requisito. Tipi di Requisiti e Relativi Documenti. La gestione requisiti consiste in

Corso di Informatica

Progetto BPR: Business Process Reengineering

La portata del software

Transcript:

CIISE 2014 CONFERENZA INCOSE ITALIA SU SYSTEMS ENGINEERING Modeling Approaches for the Design and Analysis of Complex Systems Prima Parte Università di Tor Vergata ROMA, 24-25 Novembre 2014

Model Based Systems Engineering: Concept and Benefits Model Based Systems Engineering (MBSE) is the formalised application of modeling to support the various engineering activities beginning in the conceptual design phase and continuing throughout development and later life-cycle phases: analysis of stakeholders and system context, management of requirements and system/subsystem design, direction of verification and validation strategies and execution A model is an approximation, representation, or idealization of selected aspects of the structure, behaviour, operations, or other characteristics of a real-world system or process A model typically offers different views in order to serve different purposes. A View is a representation of a system from a given perspective related to specific stakeholders, concerns or issues

Model Based Systems Engineering: Concept and Benefits

Model Based Systems Engineering: Concept and Benefits MBSE BPMN SysML UML INCOSE IW09 MBSE Workshop

Model Based Systems Engineering: Systems Engineering Standards Framework BPMN Business Process Modeling

Rappresentazione dei Sistemi: UML e SysML UML, Unified Modeling Language, è un linguaggio semi-formale e grafico (basato su diagrammi), orientato agli oggetti, per: specificare visualizzare realizzare modificare documentare gli artefatti di un Software SysML, Systems Modeling Language, è un profilo dell UML, adottato per estenderlo ai Sistemi

Rappresentazione dei Sistemi: diagrammi di behavior in SysML

Rappresentazione dei Sistemi: diagrammi strutturali in SysML

Rappresentazione dei Sistemi: UML, SysML e BPMN BPMN, Business Process Model and Notation, è un linguaggio di rappresentazione dei processi. The primary goal of BPMN is to provide a notation that is readily understandable by all business users, from the business analysts that create the initial drafts of the processes, to the technical developers responsible for implementing the technology that will perform those processes, and finally, to the business people who will manage and monitor those processes. Thus, BPMN creates a standardized bridge for the gap between the business process design and process implementation.

Rappresentazione dei Sistemi: UML, SysML e BPMN Si tratta di veri e propri linguaggi, non di semplici notazioni grafiche Sono semi-formali perché descritti in linguaggio naturale e con l uso di diagrammi, cercando di ridurre al minimo le ambiguità Hanno: regole sintattiche (come produrre modelli legali) e regole semantiche (come produrre modelli con un significato) Sono tutti linguaggi Obiect Oriented (OO): un paradigma che sposta l enfasi della programmazione dal codice verso le entità su cui esso opera, gli oggetti. Una rivoluzione copernicana cominciata dagli anni 60 e proseguita, lentamente, fino ad affermarsi negli anni 90. I principi OO comunemente accettati sono: Astrazione: usare classi per astrarre la natura e le caratteristiche di un oggetto, che è un istanza della propria classe di appartenenza Incapsulamento: nascondere al mondo esterno i dettagli del funzionamento di un oggetto; gli oggetti hanno accesso solo ai dati di cui hanno bisogno Ereditarietà: le classi possono specializzare altre classi, ereditando da esse e implementando solo la porzione di comportamento che differisce Polimorfismo: invocare un comportamento diverso in reazione allo stesso messaggio, a seconda di quale oggetto lo riceve.

Charles S. Wasson, System Analysis, Design, and Development Concepts, Principles, and Practices, John Wiley & Sons, 2006 Sviluppo delle Architetture dei Sistemi I passi principali per lo sviluppo delle Architetture dei Sistemi sono: 1. La Comprensione degli Spazi del Problema e delle Soluzioni (analisi della Missione) 2. Lo sviluppo del Dominio dei Requisiti 3. Lo sviluppo del Dominio Operativo 4. Lo sviluppo del Dominio Funzionale 5. Lo sviluppo del Dominio Fisico 6. La valutazione ed ottimizzazione della Soluzione progettuale complessiva

Sviluppo del Dominio Operativo L obiettivo primario del Dominio Operativo è quello di comunicare con l utente finale del sistema nel corso della fase preliminare di sviluppo, per assicurarsi che i bisogni operativi siano chiaramente compresi e tenuti in conto, e che i razionali per i requisiti prestazionali siano incorporati nei meccanismi decisionali, ed inclusi correttamente nella definizione delle specifiche di Sistema e Sottosistema La seguente metodologia delinea un possibile approccio per sviluppare il Dominio Operativo: 1. Condurre un analisi degli Scenari di Missione 2. Identificare gli elementi del Sistema e gli attori esterni 3. Identificare fasi, modi e stati operativi 4. Stabilire tempistiche e misure di prestazioni 5. Trasformare gli Scenari in Use Case

Analisi della Missione o, equivalentemente Analisi del Business Case: ALL VIEW Esempi di Analisi della Missione: Costruzione degli Scenari Operativi, come diagrammi pittorici supportati da descrizioni testuali (All View)

Analisi della Missione o, equivalentemente Analisi del Business Case: Coreografie BPMN

Analisi della Missione o, equivalentemente Analisi del Business Case: Coreografie BPMN

Analisi della Missione o, equivalentemente Analisi del Business Case: Orchestrazioni BPMN

Analisi della Missione o, equivalentemente Analisi del Business Case: Orchestrazioni BPMN

Sviluppo del Dominio Operativo: Analisi di Stakeholders e Attori in SysML IDENTIFICAZIONE DEI CONFINI DEL SISTEMA E DEGLI ATTORI ESTERNI Stereotipi: «SUD» (System Under Development) «Actor»

Sviluppo del Dominio Operativo: Analisi di Stakeholders e Attori in SysML ANALISI DI DETTAGLIO DEGLI ATTORI ESTERNI

Sviluppo del Dominio Operativo: Use Case Diagrams in SysML Uno Use Case è caratterizzato da un insieme di attributi che descrivono come un Utente può mettere in opera, utilizzare, supportare o smantellare il Sistema: Identificatore univoco Assunzioni Condizioni ambientali Pre-condizioni Post-condizioni Vincoli operativi Input esterni Risorse Frequenza di occorrenza Obiettivo Scenari e conseguenze Attori Trigger Stimoli Sequenze temporali di eventi 2008 Elsevier, Inc.: A Practical Guide to SysML

Sviluppo del Dominio Operativo: Use Case Diagrams in SysML Costrutti tipici di uno Use Case Diagram 2008 Elsevier, Inc.: A Practical Guide to SysML

Sviluppo del Dominio Operativo: State Machine Diagrams in SysML STATI DI PRIMO LIVELLO

Sviluppo del Dominio Operativo: State Machine Diagrams in SysML DETTAGLIO DELLO STATO OPERATIVO

Sviluppo del Dominio Operativo: Allineamento tra Use Cases e Fasi/Modi Operativi Si razionalizzano le pre-condizioni, gli stimoli (trigger) e le sequenze di eventi, in modo da avere una quadro il più possibile armonico di tutte le fasi operative Wasson, System Analysis, Design, and Development, John Wiley & Sons, 2006

Sviluppo del Dominio Funzionale: Definizioni L Analisi Funzionale è costituita dall esame di una data funzione al fine di individuare tutte le sotto-funzioni necessarie per la sua realizzazione. Le sottofunzioni sono organizzate in una Architettura Funzionale che ne evidenzia le relazioni reciproche e le interfacce (sia interne che esterne). I requisiti prestazionali della funzione di livello superiore sono trasferiti (flowed down) a livello inferiore ed allocati alle sotto-funzioni Lo scopo dell Analisi Funzionale è la creazione dell Architettura Funzionale che rappresenti la base fondante per la definizione della Architettura di Sistema, attraverso la allocazione di funzioni e di sotto-funzioni ad elementi hardware / software, a database, a infrastrutture ed alle attività operative (ossia al personale). Essa non descrive né l architettura hardware né la struttura del software del sistema. Queste architetture sono sviluppate nel corso del processo di Sintesi di Sistema del processo di SE

Sviluppo del Dominio Funzionale: Definizioni Qualsiasi funzione richiede degli ingressi per poter operare, mentre il suo prodotto è rappresentato da una uscita. L obiettivo di questa fase è la individuazione e la documentazione, per ciascuna funzione (o sotto-funzione), dell origine degli ingressi richiesti, della destinazione delle sue uscite, e la tipologia di flusso che transita attraverso ciascuna interfaccia. Per rappresentare questi elementi si usano una serie di tecniche: FBD, Functional Block Diagram FFBD, Functional Flow Block Diagram IDEF0, (Icam DEFinition for Function Modeling, dove 'ICAM' sta per Integrated Computer Aided Manufacturing) Activity Diagram di SysML Sequence Diagram di SysML

Sviluppo del Dominio Funzionale: Activity Diagrams in SysML DIAGRAMMI DI ACTIVITY In SysML, una activity è un formalismo per descrivere un comportamento che specifica la trasformazione di input in output attraverso una sequenza controllata di azioni (actions). IL CONCETTO DI «TOKEN» Una action può iniziare se: Tutti gli input di controllo ricevono un token Tutti gli input di dati non-opzionali ricevono un token

Sviluppo del Dominio Funzionale: Activity Diagrams in SysML AZIONI COMUNI

Sviluppo del Dominio Funzionale: Activity Diagrams in SysML LE SWIMLANES: allocazione del behavior 2008 Elsevier, Inc.: A Practical Guide to SysML

Sviluppo del Dominio Funzionale: Sequence Diagrams in SysML Rappresentano le interazioni tra il Sistema ed il suo Ambiente Operativo, o tra i componenti del Sistema a qualunque livello della gerarchia Un messaggio può rappresentare l invocazione di un servizio fornito da parte di un componente del Sistema, oppure l invio di un segnale Questa rappresentazione è utile quando si modellizzano concetti orientati ai servizi 2008 Elsevier, Inc.: A Practical Guide to SysML

Sviluppo del Dominio Funzionale: Activity Diagrams in SysML I proncipali costrutti di un Sequence Diagram: classi, lifelines, chiamate sincrone ed asincrone, guardie, operazioni, ritorni 2008 Elsevier, Inc.: A Practical Guide to SysML

Sviluppo del Dominio Funzionale: Activity Diagrams in SysML I principali costrutti di un Sequence Diagram: operatore ref 2008 Elsevier, Inc.: A Practical Guide to SysML

Sviluppo del Dominio Funzionale: Activity Diagrams in SysML I proncipali costrutti di un Sequence Diagram: altri operatori alt loop par opt break critical neg 2008 Elsevier, Inc.: A Practical Guide to SysML

Sviluppo del Dominio Funzionale QUALE TIPOLOGIA DI ANALISI SCEGLIERE? Analisi basata su scomposizioni funzionali (Activity Diagrams): è utile come strumento di analisi di comportamenti non ancora ben definiti, per ricostruire catene logiche di componenti singoli (ad esempio moduli software), o di Architetture con poche parti interagenti. Si presta poco alla definizione di tempistiche rigorose, o all utilizzo di interfacce complesse Analisi basata su sequenze (Sequence Diagrams): è utile quando l Architettura è basata su numerosi elementi che si scambiano servizi o messaggi. Consente un semplice ed intuitivo meccanismo di passaggio dall analisi Black-Box (fondamentale per concepire correttamente requisiti di Sistema), all analisi White-Box. Può diventare poco comprensibile quando il comportamento è complesso e fa uso di numerosi operatori annidati

Sviluppo del Dominio Fisico: Scelta dell Architettura Selezionare la soluzione di Architettura di Sistema preferita La baseline dell Architettura di Sistema di riferimento dovrebbe essere robusta (cioè dovrebbe consentire una successiva definizione di sistema più dettagliata per andare avanti con un backtracking minimo quando sono disponibili ulteriori informazioni) e deve essere realizzabile: accettabilmente vicino all ottimo teorico rispetto ai requisiti richiesti con un rischio accettabile nell'ambito delle risorse disponibili

Selezione dell Achitettura di Sistema: Parametric Diagrams in SysML e Trade off studies La scelta dell Architettura si esegue in base ad una serie di trade offs, determinati anche con il supporto di: Parametric Diagrams Analisi e studi comparativi Lo sviluppo di modelli prestazionali (Modeling & Simulation) per l analisi e la definizione dei parametri del Sistema o dei suoi componenti

Sviluppo del Dominio Fisico: i Blocchi Il blocco è l unità modulare fondamentale per rappresentare la struttura dei Sistemi in SysML Esso può definire un tipo di entità logica o concettuale, una entità fisica, un hardware, un software, un dato, una persona, una infrastruttura, una entità che fluisce nel Sistema (ad esempio acqua, corrente elettrica, o carburante), o una entità nell ambiebte naturale (l atmosfera, il mare) Gli elementi fondamentali che caratterizzano la rappresentazione per blocchi sono: Stereotipo Incapsulamento Nome Compartimenti Vincoli Operazioni Parti Referenze Valori Attributi [OMG SysML v1.3, 2012]

Sviluppo del Dominio Fisico: Block Definition Diagram in SysML Il Block Definition Diagram (BDD) è utilizzato per definire i blocchi in termini delle loro caratteristiche, e delle loro relazioni gerarchiche con gli altri blocchi [A Practical Guide to SysML, MK/OMG PRESS, 2008]

Sviluppo del Dominio Fisico: Block Definition Diagram in SysML Caratteristiche dei Block Definition Diagrams: relazioni tra i blocchi, compartimenti [A Practical Guide to SysML, MK/OMG PRESS, 2008]

Sviluppo del Dominio Fisico: Internal Block Diagram in SysML Le proprietà dei blocchi possono essere visualizzate su un altro tipo di diagramma, chiamato Internal Block Diagram (IBD), che presenta una visualizzazione differente della composizione del blocco L Internal Block Diagram consente ai componenti di essere collegati tra di loro, utilizzando connettori e porte [A Practical Guide to SysML, MK/OMG PRESS, 2008]

Sviluppo del Dominio Fisico: Internal Block Diagram in SysML Caratteristiche degli Internal Block Diagrams: connettori, porte [A Practical Guide to SysML, MK/OMG PRESS, 2008]

Sviluppo del Dominio Fisico: Internal Block Diagram in SysML [A Practical Guide to SysML, MK/OMG PRESS, 2008]

Sintesi dell Architettura di Sistema: le Allocazioni in SysML

Sintesi dell Architettura di Sistema: le Allocazioni in SysML

Sintesi dell Architettura di Sistema: le Allocazioni in SysML [A Practical Guide to SysML, MK/OMG PRESS, 2008]

Sviluppo del Dominio dei Requisiti: Requirement diagrams in SysML

Sviluppo del Dominio dei Requisiti: Requirement diagrams in SysML

Sviluppo del Dominio dei Requisiti: Requirement diagrams in SysML [A Practical Guide to SysML, MK/OMG PRESS, 2008]

SPAZIO DISCUSSIONE DOMANDE, CHIARIMENTI, APPROFONDIMENTI?

GRAZIE PER L ATTENZIONE! ASTER S.p.A. Dott. Ing. Lucio Tirone Via Tiburtina 1166, 00156 Roma Tel: +39 06 94533953 Fax: + 39 06 94533959 Email: lucio.tirone@aster-te.it www.aster-te.it Partner of Assystem Group