Università degli studi dell Aquila Sistemi informativi aziendali



Documenti analoghi
Università degli studi dell Aquila. Sistemi informativi aziendali

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

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

Corso di Ingegneria del Software

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

Progettazione Concettuale e Modello di Progetto

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

INGEGNERIA DEL SOFTWARE

Progettazione Logica e Modello Realizzativo

Università degli studi dell Aquila. Sistemi di elaborazione dell informazione

Unified Modeling Language (UML)

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

Presentazione corso. Contenuti e diagramma di Pert. Definizione lista di spedizione. UML

Analisi e Progettazione del Software

Il PROCESSO UNIFICATO

Redazione e Presentazione di Progetti Informatici

software Progettazione software IS Corso di Ingegneria del Software 1 Contenuti Progettare prima di produrre Dall analisi alla progettazione

1. UML 2 ed il Processo Unificato

Una metodologia per la specifica di software a componenti

Patterns, Analisi di dominio e Robustness Diagram. Gregorio Piccoli Padova, 5 Dicembre 2017

La fase di Progettazione

Gestione dello sviluppo software Modelli Base

ISPW (9CFU) & LAS (3 CFU)

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

Processi iterativi. Marina Zanella - Ingegneria del Software RUP 1

Introduzione. A Tecnologie 1

Activity Diagrams (lezione 3)

A. Ferrari sistemi informativi e sistemi informatici

CLASS DIAGRAM PARTE 1

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

DEFINIZIONE DELLA TRASFORMAZIONE UML TO LQN IN LINGUAGGIO ATL

IS Corso di Ingegneria del Software 1

3. Ciclo di Vita e Processi di Sviluppo

Corso di Ingegneria del Software. Modelli di produzione del software

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

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

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

Corso di Ingegneria del Software. Il modello UP

INTRODUZIONE AD OMNET++

Introduzione...xv. Giorno 1 - Una panoramica sui concetti principali...1

UML UNIFIED MODELING LANGUAGE

Introduzione al corso

ARCHITECTING AND DESIGNING J2EE APPLICATIONS

SOMMARIO CATEGORIE LOGICHE UNIVERSALI

Giacomo Fauser. Istituto Tecnico Settore Tecnologico Via Ricci, Novara PIANO DI LAVORO. Per l anno scolastico

Sistemi Informativi. Marino Segnan

Introduzione ai casi d uso

Standardizzazione dei processi Istat

Il processo di sviluppo del software

Progettazione di basi di dati

CONCETTI E ARCHITETTURA DI UN SISTEMA DI BASI DI DATI

Meccatronica? Flavio Corradini CF3000 Engineering & Electronics Group

UML Unified Modeling Language

Ingegneria del Software

Studio del linguaggio TROPOS per la modellazione dei requisiti orientata agli agenti

Mercoledì 4 Aprile 2012, Aula AD01. Mario G.C.A. Cimino, Gigliola Vaglini Dipartimento di Ingegneria dell Informazione

Model-View- Controller

Sistemi Informativi I Strumenti - UML

Analisi e comparazione dei Framework OpenSwing e Google Web Toolkit per lo sviluppo di interfacce utente con paradigma MVC.

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

Programma didattico. Sviluppare Applicazioni Distribuite in ambiente. Spring MVC

PIANO DI STUDIO DELLA DISCIPLINA DISCIPLINA: Informatica

Web Application Engineering

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

DIAGRAMMI DEI PACKAGE

Esempio rischi della specifica dei requisiti

LEZIONE 2 I LINGUAGGI DI MODELLAZIONE && UML

Materiale didattico. Sommario

Automatic generation of test cases

Progettazione software

2. Finalità generali previste dalle indicazioni nazionali

Docenti Marco Cirrito, Pier Luigi Girelli. Disciplina. OBIETTIVI MINIMI (necessari al passaggio alla classe successiva)

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

DESCRIZIONE PROFILI PROFESSIONALI

Introduzione alle basi di dati: Il modello concettuale

Sintesi della presentazione

Allegato 1 Descrizione profili professionali

Unified Modeling Language (UML)

Corso di Ingegneria del Software. Esempi di casi d uso

Concetti fondamentali. Laboratorio di Ingegneria del Software Andrea Bei

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

Programmazione Orientata agli Oggetti in Linguaggio Java

Informatizzare i processi nell'ottica del riutilizzo

Modello Entità - Relazione. Basi di dati. Elena Baralis 2007 Politecnico di Torino D B M G D B M G2 D B M G4 D B M G6. Progettazione di basi di dati

Sistemi informativi D B M G

Laboratorio di Sistemi Software UML per Design Patterns e Refactoring

Politecnico di Milano. Progetto di Ingegneria del Software 2 MPH - Manage Project Homework

INTERAZIONE UOMO-MACCHINA

ALLEGATO A (D.R. n. 832 del ) AREA SCIENTIFICO DISCIPLINARE INGEGNERIA INDUSTRIALE E DELL INFORMAZIONE

Programmazione ad Oggetti

7. Architetture Software

MATERIALI PER LA DISCUSSIONE

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

ITI M. FARADAY. Programmazione a. s

Capitolo 7. Ingegneria del Software. Mauro Giacomini Pearson Addison-Wesley. All rights reserved

Sistemi ICT per il Business Networking

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

Corso di Ingegneria del Software. Modelli di produzione del software

PROGRAMMAZIONE DIDATTICA DI DIPARTIMENTO A.S. 2017/2018

Transcript:

Università degli studi dell Aquila Sistemi informativi aziendali Ing. Gaetanino Paolone (gaetanino.paolone@univaq.it)

Contenuti Il Business Modelling. Analisi e Definizione dei Requisiti. Analisi Concettuale. Progettazione. Realizzazione e verifca.

Business Modeling: quando 1. Progettazione di un nuovo Sistema Informativo per una nuova azienda. 2. Reingegnerizzazione di un Sistema Informativo esistente: Ottimizzazione dei flussi informativi. Estensione del sistema azienda. 3. Automazione del Sistema Informativo di una azienda.

Obiettivo del Business Modeling L obiettivo del Business Modelling è la realizzazione di modelli del dominio del problema che descrivano logicamente la proposta di soluzione del sistema (il cosa deve fare) che sarà dettagliata e realizzata durante la progettazione e la realizzazione. Vengono prodotti degli elaborati (diagrammi statici e dinamici, per esempio rappresentati con la notazione UML) che costituiscono una rappresentazione del problema che deve essere risolto.

Approcci al Business Modeling Other approaches Business Process Modeling Language Unified Modeling Language Business Analysis System Analysis Our approach Unified Modeling Language

Business Modeling Quando gli elaborati sono completati, relativamente all iterazione alla quale di sta lavorando, il modello globale viene verificato: eseguendo il sistema sulla carta avvalendosi del consiglio di esperti del dominio.

Piano metodologico Permette la definizione di: 1. Attività da svolgere. 2. Modelli da utilizzare. 3. Elaborati da produrre. Rappresenta il riferimento per lo sviluppo di un progetto.

Piano metodologico di riferimento Disciplina Modello Elaborato Business Modeling Linguaggio naturale UML Organization Unit Diagram Business System diagram Business Use Case diagrams Business Use Case Realization diagrams Business Objects diagram Activity diagrams Documento di Visione Analisi e definizione dei requisiti Analisi concettuale Progettazione Realizzazione Verifica Business Modelling: stessi elaborati per un progetto di creazione, reingegnerizzazione ad automazione di un Sistema Informativo Aziendale

Piano per la progettazione del Sistema Informativo Aziendale 1. Business Modeling: Business Modeling. Analisi e definizione dei requisiti. 2. Realizzazione del progetto.

Business Modeling: quando 1. Progettazione di un nuovo Sistema Informativo per una nuova azienda. (Business Modeling è una attività progettuale) 1. Reingegnerizzazione di un Sistema Informativo esistente: Ottimizzazione dei flussi informativi. Estensione del sistema azienda. (Business Modeling è una attività di mera rilevazione prima e di progettazione dopo) 2. Automazione del Sistema Informativo di una azienda. (Business Modeling è solo una attività di mera rilevazione)

Business Modelling: come 1. Definizione delle Organization Unit. 2. Per ogni Organization Unit Business Systems di livello 1. 3. Per ogni Business System di livello i Business Systems di livello i+1 fino al grado k. 4. Per ogni Business System di livello K Classi di Attori. 5. Per ogni Classe di Attori Business Use Cases (BUCs), attraverso l individuazione dei Business Goals. 6. Per ogni Business Use Case Business Use Cases Realization (BUCRs). Business Objects

Business Modeling La rappresentazione dei processi di business. Diagrammi delle attività a due livelli di astrazione Relazione tra elementi comportamentali e strutturali del business. Matrice di corrispondenza Diagrammi di sequenza

Business Modeling Diagramma delle attività per i processi di business. Diagramma delle attività per ogni Business Use Case.

Business Modeling (punto di partenza) Enterprise Department 1 Department n Organization Unit Business System

Business Systems Decomposition Degree: 1 2 k

The Methodology The methodological process pre-determined planning steps rigid structure implies a given starting point precise design path A methodological process adapts well to the particular environment for which it has been defined for The methodology flexible structure various starting points more products of different type Methodology must allow the completing of different methodological processes; in this case, the methodology gains generality and real applicability

An incremental and iterative Methodology IN Activity Phase 1 Activity Activity <<refine>> Activity Phase 2 Activity OUT Activity Activity Activity

Business Use-Case Modeling Phase1: Business Use-Case Modeling Define Organizations Units IN Activity Phase 1 Business Actors Activity Activity GOALS Business Use Case Activity BUC Actors Goals These activities aren t sequential but they are iterative and incremental Next Phase BUC Diagrams

Business Modeling Business Use Case Model Phase2: Business Modeling IN Phase 2 Business Use Case Realization Activity For each Business Use Case 1 0..* Activity 0..1 Activity 1: 5: Activity 2: 3: 4: These activities aren t sequential but they are iterative and incremental Documentation Next Phase BUCR Diagrams

Business Modeling BUC 0 BUC 1 BUC 2 BActivity0 {BO 1, BO 2 } C1= BActivity1 {BO 1, BO 3, BO 4 } {BO 2, BO 5 } BActivity2 {BO 2, BO 3 } BActivity3 {BO 3 } {BO 1, BO 4 } {BO 5 }

Business Modeling Una matrice di corrispondenza (C2) per ogni BUC BUCR 0 BUCR 1 BUCR 2 DActivity 0 {BO 2 } {BO 2, BO 5 } C2 = DActivity 1 {BO 1, BO 4 } DActivity 2 {BO 1, BO 3, BO 6 } {BO 5 }

Piano metodologico 1. Permette la definizione di: Attività da svolgere. Modelli da utilizzare. Elaborati da produrre. 2. Rappresenta il riferimento per lo sviluppo di un progetto.

Piano metodologico di riferimento: automazione Disciplina Modello Elaborato Business Modeling Linguaggio naturale UML Analisi e definizione dei requisiti Linguaggio naturale UML Trace Diagram: Class Trace Diagram: Use Case Trace Diagram: Use Case Realization Trace Diagram: Actors Use Cases Realization Diagram - Actors Documento dei Requisiti Analisi concettuale Progettazione Realizzazione Verifica

Tracciabilità fra Requisiti e Use Case Durante l analisi e definizione dei requisiti, è importante capire se qualche requisito non è stato considerato nel modello degli use case e, viceversa, se c è qualche use case che non corrisponde a nessun requisito. La verifica si può fare velocemente tramite una tabella di mapping fra requisiti e use case. Requisito Use case UC1 UC2 UC3 UC4 R1 X X R2 X R3 X X R4 X

Analisi e Definizione dei requisiti: come 1. Ritagliare la porzione di Business model di interesse per l automazione. 2. Effettuare l operazione di trace: 1. Classi 2. BUC 3. BUCR 4. Actors 3. Costruire i BUCRs diagram (n viste o diagrammi)

Piano metodologico di riferimento: automazione Disciplina Modello Elaborato Business Modeling Linguaggio naturale UML Analisi e definizione dei requisiti Linguaggio naturale UML Analisi concettuale Linguaggio naturale UML Modello E-R Prototyping Diagrammi di Sequenza di I livello Diagramma delle Classi View Diagramma delle Classi (Attributi) Diagramma Entità-Relazioni Prototipo Documento di Analisi Progettazione Realizzazione Verifica

Business Modeling System Modeling RUP <trace> <realize> <realize> CIM <trace> CIM <realize> <realize> PIM PIM <trace>

Business Modeling System Modeling RUP <trace> CIM <trace> CIM <trace> PIM PIM <trace>

Approccio metodologico RUP Approccio metodologico proposto <<communicate>> Gestione Documento <<communicate>> <<communicate>> <<communicate>> Banca Gestione Prodotto/Servizio ICCREA Responsabile (from Actors) <<communicate>> (from Actors) <<trace>> Gestione Modello di Documento Gestione Documento Gestione Struttura <<realize>> <<realize>> <<realize>> <<realize>> <<realize>> Business Modeling Smistamento Documento (from Documento) Gestione Struttura Fisica (from Area Aziendale) Gestione Area Aziendale (from Area Aziendale) <<realize>> <<realize>> System Modeling <<trace>> Caricamento Documento ICCREA Acquisitore (from Actors) <<trace>> ICCREA Responsabile Smistamento Documento (from Actors) Validazione Documento Acquisizione Documento (from Documento) <<realize>> <<realize>> <<realize>> <<realize>> GestioneFascicoli <<include>> <<include>> Allega File <<extend>> AcquisizioneDocumento

System Modeling Code Modeling RUP PIM PIM PSM code UseCaseRealization? Class PSM code

Summary of methodology

Bank Document Management System Bank Administration Unit Document Management

Business Modeling: activity diagram I

Document Management: Business Goals <support> Fast retrieval of docs Document Management <support> Filing of documents

Document Management: BUCRs Document Management

Business Modeling: activity diagram II

Document Management: Double Tracing <realize> Document Acquisition <realize> <trace> Internal Document Acquisition Document from supplier <trace> <realize> Document Acquisition <realize> <realize> <trace> <extend> <extend> Internal Document Acquisition Link File Document from supplier

Business Modeling

Business Modeling

Prototyping IKIWISI I ll know it when I see it

Prototyping È l implementazione parziale di un sistema con lo scopo di aiutare a capire meglio i requisiti sia agli utenti che agli sviluppatori Scopi Tipologie Chiarire e completare i requisiti Esplorare alternative progettuali Sviluppare il prodotto finale Prototipi orizzontali Prototipi verticali Usa e getta Evolutivi

Prototyping Usa e getta Evolutivo Orizzontale Verticale serve per dimostrare i casi d uso che l utente potrebbe avere a disposizione, chiarire e raffinare i requisiti utente per esplorare e valutare il look and feel (interfaccia utente e struttura della navigazione) per dimostrare la fattibilità tecnica di una soluzione implementa i processi chiave implementa processi aggiuntivi solo sulla base di priorità assegnate adegua il sistema velocemente alle necessità del business implementa i processi su più livelli architetturali progressivamente implementa e ottimizza algoritmi complessi test e tuning delle performance

Fattori Critici per il Successo della Prototipazione Stabilire, condividere e comunicare al cliente il tipo e l obiettivo del prototipo prima della sua realizzazione Considerare le attività prototipali parte del piano di progetto Valutare la realizzazione di più prototipi Non prototipare i requisiti che sono già chiari nei prototipi usa e getta Un prototipo non sostituisce completamente la specifica dei requisiti Creare i prototipi usa e getta nel modo più economico e veloce possibile

Progettazione del Software Definizione dell architettura del sistema individuazione dei sottosistemi descrizione delle interfacce dei sottosistemi individuazione dei componenti software descrizione delle interfacce dei componenti individuazione dei nodi di elaborazione Individuazione delle classi di progettazione e delle relazioni Descrizione della dinamica fra i componenti e fra le classi Allocazione delle classi di progettazione nei componenti Allocazione dei componenti nei sottosistemi Definizione del modello di deployment

La Babele delle Architetture Il concetto di architettura è usato talmente in tante diverse accezioni che risulta privo di senso se non lo si contestualizza. Tipologie di architetture: architettura funzionale architettura dei dati architettura stratificata architettura multi-tier architettura orientata a oggetti architettura basata su componenti architettura web architettura orientata ai servizi

Cos'è un'architettura del Software L'architettura software di un programma o di un'applicazione è l'insieme: degli elementi software strutturali delle proprietà degli elementi visibili esternamente delle relazioni fra gli elementi. Gli elementi che stanno diventando sempre più importanti per le architetture sono: i pattern e gli stili architetturali Un pattern è una "idea" che è stata provata positivamente in un contesto pratico e che probabilmente sarà utile in altri

Lo Stile Architetturale Uno "Stile architetturale" è l'insieme: delle proprietà dei vincoli delle linee guida delle decisioni progettuali da seguire per la realizzazione delle strutture e delle interconnessioni all'interno dei componenti e fra i componenti. I principali stili architetturali di riferimento per le applicazioni software distribuite sono: architettura basata sulle risorse Resource-Oriented Architecture (web) architettura basata su componenti Component-Based Architecture architettura basata sui servizi Service-Oriented Architecture. Architettura Gotica

Stile Architetturale Orvieto, Duomo Milano, Duomo Ecco cosa vuol dire seguire uno stile architetturale!

Architettura MVC Model Incapsula le logiche di business e la rappresentazione delle informazioni View Gestisce l interfaccia utente dell applicazione Controller Coordina l interazione tra Model e View e gestisce le azioni dell utente

The software architecture

Piano metodologico di riferimento: automazione Disciplina Modello Elaborato Business Modeling Analisi e definizione dei requisiti Analisi concettuale Progettazione Realizzazione Verifica Linguaggio naturale UML Linguaggio naturale UML Linguaggio naturale UML Modello E-R Prototyping Linguaggio naturale UML Modello Relazionale Prototyping Ambiente di sviluppo Linguaggio di programmazione Diagrammi di Sequenza di II livello Diagramma delle Classi View Diagramma delle Classi (Attributi e metodi) Diagramma delle classi controller Diagramma delle classi Entity Diagramma Logico dei Dati Prototipo Documento di Progettazione

Creazione di un nuovo Sistema Informativo Aziendale Rimangono le stesse discipline? Disciplina Modello Elaborato Business Modeling Analisi e definizione dei requisiti Analisi concettuale Progettazione Realizzazione Verifica

Business Modeling Pre-condizione: modello organizzativo aziendale Il Business Modelling è parte integrante della progettazione del sistema organizzativo aziendale Stessi elaborati: Organization Unit Diagram Business System diagram Business Use Case diagrams Business Use Case Realization diagrams Business Objects diagram Activity diagrams Documento di Visione No rilevazione Ma progettazione

Analisi e Definizione dei requisiti Requisiti: specifica del sistema informativo aziendale da realizzare. Obiettivi: specifica dei requisiti; analisi delle parti di sistema informativo da automatizzare (make or buy); a. adeguamento del business model a soluzioni informatiche esistenti; b. attuazione di un processo metodologico per lo sviluppo di un progetto informatico.

Analisi e Definizione dei requisiti: come? Definizione delle Organization Unit. Per ogni Organization Unit Business Systems di livello 1. Per ogni Business System di livello i Business Systems di livello i+1 fino al grado k. Per ogni Business System di livello K Classi di Attori. Per ogni Classe di Attori Business Use Cases (BUCs), attraverso l individuazione dei Business Goals. Per ogni Business Use Case Business Use Cases Realization (BUCRs). per ogni sottosistema da automatizzare: make or buy? Automazione: a qualsiasi livello

Analisi e Definizione dei requisiti: come? Per ogni soluzione informatica acquistata: verifica di adeguamento dei requisiti; e quindi del business model. Per ogni soluzione informatica da realizzare: verifica della porzione di business model; e quindi attuazione di un processo di automazione.

Piano metodologico di riferimento: creazione Disciplina Modello Elaborato Business Modeling Linguaggio naturale UML Analisi e definizione dei requisiti Linguaggio naturale UML Trace Diagram (make and buy): Class Trace Diagram (make and buy): Use Case Trace Diagram (make and buy): Use Case Realization Trace Diagram (make and buy): Actors Use Cace Realization Diagram Actor Diagrammi di business mdel rivisitati Documento dei Requisiti Analisi concettuale Progettazione Realizzazione Verifica

Analisi concettuale Fasi: 1. Analisi concettuale relativa alle parti da automatizzare con sviluppo di software. 2. Analisi concettuale relativa alle parti da automatizzare con acquisto di software. 3. Analisi concettuale relativa alle parti da non automatizzare.

Analisi concettuale: come? Fasi: 1. Analisi concettuale relativa alle parti da automatizzare con sviluppo di software. (identica al processo di automazione) 2. Analisi concettuale relativa alle parti da automatizzare con acquisto di software. (analoga al processo di automazione: verifica della corrispondenza tra modelli attesi e soluzione informatica) 3. Analisi concettuale relativa alle parti da non automatizzare.

Piano metodologico di riferimento: creazione Disciplina Modello Elaborato Business Modeling Linguaggio naturale UML Analisi e definizione dei requisiti Analisi concettuale Progettazione Realizzazione Verifica Linguaggio naturale UML Linguaggio naturale UML Linguaggio naturale UML Linguaggio naturale Elaborati per l'automazione Sequence diagram dei casi d'uso non automatizati Class Diagram Activity Diagram Modulistica Documento di Analisi Architettura informativa Activity Diagram Modulistica Elaborati per l'automazione Architettura informativa Modulistica

Reingegnerizzazione del Sistema Informativo Aziendale Quando? I flussi non sono ben definiti. Costi elevati di produzione dell'informazione. Costi elevati di fruizione dell'informazione. Introduzione di un nuovo sottosistema. o semplicemente quando si è in presenza di un nuova strategia...

Reingegnerizzazione di un Sistema Informativo Aziendale Rimangono le stesse discipline? Disciplina Modello Elaborato Business Modeling Linguaggio naturale UML Organization Unit Diagram Business System diagram Business Use Case diagrams Business Use Case Realization diagrams Business Objects diagram Activity diagrams Documento di Visione Analisi e definizione dei requisiti Linguaggio naturale UML Use Case Realization Diagram - Actor Documento dei Requisiti Business Model Design Linguaggio naturale UML Realizzazione e verifica Automazione????

Reingegnerizzazione di un Sistema Informativo Aziendale Business Modeling come rilevazione della situazione esistente Analisi e definizione dei requisiti di intervento

Reingegnerizzazione di un Sistema Informativo Aziendale Elaborati della progettazione di Business? Disciplina Modello Elaborato Business Modeling Linguaggio naturale UML Analisi e definizione dei requisiti Linguaggio naturale UML Business Model Design Linguaggio naturale UML Organization Unit Diagram Business System diagram Business Use Case diagrams Business Use Case Realization diagrams Business Objects diagram Activity diagrams Use Case Realization Diagram - Actor Documento di Progettazione Realizzazione e verifica Automazione????