UML e (R)UP (an overview)



Documenti analoghi
Rational Unified Process Introduzione

RUP (Rational Unified Process)

Ciclo di vita del progetto

Ciclo di vita dimensionale

Il modello di ottimizzazione SAM

Concetti di base di ingegneria del software

UML - Unified Modeling Language

Ingegneria del Software UML - Unified Modeling Language

INGEGNERIA DEL SOFTWARE. Prof. Paolo Salvaneschi

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

03. Il Modello Gestionale per Processi

1- Corso di IT Strategy

ESECUZIONE DEL BUSINESS PLAN

4.1 Che cos è l ideazione

Specifiche dello sviluppo di un progetto software e indicazioni sulla documentazione e sulle modalità di esercizio delle prestazioni

Project Management. Modulo: Introduzione. prof. ing. Guido Guizzi

PROXYMA Contrà San Silvestro, Vicenza Tel Fax

Ciclo di vita del software

Introduzione a UML. Iolanda Salinari

I NUOVI MODELLI ORGANIZZATIVI E TECNOLOGICI A SUPPORTO DELL EFFICIENZA AZIENDALE

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

REFERENZIAZIONI 2001) NUP

Pianificazione e progettazione

Modellazione di sistema

UniRoma2 - Ingegneria del Software 1 1

COMUNICAZIONE PER IL MANAGEMENT D IMPRESA

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

Business Process Management

Piano di gestione della qualità

lem logic enterprise manager

7. Architetture Software

Il catalogo MARKET. Mk6 Il sell out e il trade marketing: tecniche, logiche e strumenti

Introduzione ad UML. Perché modelliamo

2. Ciclo di Vita e Processi di Sviluppo

La Formazione: elemento chiave nello Sviluppo del Talento. Enzo De Palma Business Development Director

UML un linguaggio universale per la modellazione del software. Adriano Comai

13. Ciclo di Vita e Processi di Sviluppo

Configuration Management

TECNICO SUPERIORE PER L AUTOMAZIONE INDUSTRIALE

ALLEGATO 8.1 DESCRIZIONE PROFILI PROFESSIONALI

IL PROCESSO EDILIZIO E L ORGANISMO EDILIZIO

Gestione dei Progetti ( )

Project Cycle Management La programmazione della fase di progettazione esecutiva. La condivisione dell idea progettuale.

PASSAGGIO ALLA ISO 9000:2000 LA GESTIONE DELLE PICCOLE AZIENDE IN OTTICA VISION

In legenda sono riportate le fasi R, P, C/T e I/SA come specificato nella norma ISO/IEC

Progettaz. e sviluppo Data Base

ILSISTEMA INTEGRATO DI PRODUZIONE E MANUTENZIONE

Ministero dell istruzione, dell università e della ricerca. Liceo Tecnologico. Indirizzo Informatico, Grafico e Comunicazione

La Metodologia adottata nel Corso

Ibpm è lo strumento per la gestione dei processi, dalla modellazione, all esecuzione, al monitoraggio.

Organizzazione e pianificazione delle attività di marketing

IL PROCESSO DI FABBRICAZIONE (sviluppo nuovo prodotto)

PROJECT MANAGEMENT SERVIZI DI PROJECT MANAGEMENT DI ELEVATA PROFESSIONALITÀ

Indice. pagina 2 di 10

COMPETENZE IN ESITO (5 ANNO) ABILITA' CONOSCENZE

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

Gestione del workflow

Ciclo di Vita Evolutivo

Progettazione dei Sistemi di Produzione

Università di Bergamo Facoltà di Ingegneria INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi A2_3 V2.0. Processi. Scelta dei processi adeguati

Appendice III. Competenza e definizione della competenza

Copyright Università degli Studi di Torino, Progetto Atlante delle Professioni 2009 IT PROCESS EXPERT


MODELLO PER LO SVILUPPO DEL PRODOTTO

PIANO DI LAVORO ANNUALE DEL DIPARTIMENTO DI MATERIA DIPARTIMENTO DI INFORMATICA INDIRIZZO TECNICO SCIENTIFICO NUCLEI FONDAMENTALI DI CONOSCENZE

Via Don Angelo Scapin, 36 I Roncaglia di Ponte San Nicolò (PD) ITALIA Phone/Fax: info@spinips.com

PROGETTAZIONE DEL SOFTWARE

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

Sviluppo e Gestione dei Progetti. docente: Prof. Filippo Ghiraldo f.ghiraldo@bep.co.it

Sistemi di misurazione e valutazione delle performance

EUROPEAN PROJECT MANAGEMENT QUALIFICATION - epmq. Fundamentals. Syllabus

Ministero dell istruzione, dell università e della ricerca. Liceo Tecnologico. Indirizzo Logistica e Trasporti

LA GESTIONE DELLE INFORMAZIONI IN AZIENDA: LA FUNZIONE SISTEMI INFORMATIVI 173 7/001.0

SACE BT realizza su tecnologia Microsoft la piattaforma di gestione delle polizze

TECNICO SUPERIORE PER L INFORMATICA INDUSTRIALE

ISTITUTO TECNICO ECONOMICO MOSSOTTI

La gestione manageriale dei progetti

Strumenti di modellazione. Gabriella Trucco

Scrum. Caratteristiche, Punti di forza, Limiti. versione del tutorial: Pag. 1

Liceo Tecnologico. Indirizzo Informatico e Comunicazione. Indicazioni nazionali per Piani di Studi Personalizzati

IMPOSTAZIONE E ORGANIZZAZIONE DEL PROGETTO

PIANO DI LAVORO ANNUALE DELLA DISCIPLINA Tecnologie e Progettazione di Sistemi Classi QUINTE A.S

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

Tecnologia.

Il modello veneto di Bilancio Sociale Avis

ANALISI E MAPPATURA DEI PROCESSI AZIENDALI

PRESENTAZIONE. Chi è B-Bright

Descrizione dettagliata delle attività

La Soluzione per i Centri di Traduzione

EXPLOit Content Management Data Base per documenti SGML/XML

GESTIONE AVANZATA DEI MATERIALI

2) Entro Novembre. 6) Entro Marzo 2004

Confronto tra Microsoft Office Project Standard 2007 e le versioni precedenti

Automazione Industriale (scheduling+mms) scheduling+mms.

Sistemi informativi aziendali struttura e processi

Incentive & La soluzione per informatizzare e gestire il processo di. Performance Management

SysAround S.r.l. L'efficacia delle vendite è l elemento centrale per favorire la crescita complessiva dell azienda.

Generazione Automatica di Asserzioni da Modelli di Specifica

Transcript:

Lo sviluppo di sistemi OO UML e (R)UP (an overview) http://www.rational.com http://www.omg.org 1 Riassumento UML E un insieme di notazioni diagrammatiche che, utilizzate congiuntamente, consentono di descrivere/modellare aspetti diversi di un sistema con un approccio O-O Struttura statica Comportamento dinamico Interazioni fra i diversi componenti del sistema Ricopre l intero ciclo di vita dello sviluppo del software E uno standard aperto Standard OMG per la modellizzazione di sistemi Object-Oriented sin dal 1997 Unifica notazioni e metodologie preesistenti G. Booch J. Rumbaugh (OMT) I. Jacobson E supportato da più strumenti Molti partner industriali Digital, HP, IBM, Microsoft, Oracle, Rational 2 1

è un linguaggio di progettazione, non un linguaggio di programmazione (come Java, VisualBasic, C++, ) definisce una notazione standard fornadata su un metamodello serve a progettare un nuovo sistema, o a apportare modifiche alla progettazione di un sistema esistente, senza perdersi nei dettagli dei linguaggi di programmazione durante la fase progettuale è universale, nel senso che può rappresentare sistemi molto diversi senza differenze legate alla tecnologia: dai sistemi web a quelli più tradizionali, dalle vecchie applicazioni Cobol a quelle object oriented 3 UML è un linguaggio, non un metodo/processo UML non suggerisce, né tantomeno prescrive una sequenza di utilizzo dei diversi diagrammi, lascia anzi molte strade aperte, tra le quali i progettisti sono liberi di scegliere 4 2

UP Una metodologia per UML descrive cosa fare, come, quando e perché comprende un certo numero di attività da portare a termine in un certo ordine aiuta nella produzione di documentazione di progetto esauriente 5 RUP E la versione commerciale, prodotta da Rational Software, di Unified Process, il processo definito da Booch, Rumbaugh, Jacobson (gli autori di UML) E un framework di processo, da adattare alle diverse tipologie di progetto E utilizzato in contesti di business estremamente competitivi, e in ambiti applicativi eterogenei Risponde agli obiettivi primari di time to market, controllo del rischio e visibilità degli stati di avanzamento 6 3

Caratteristiche primarie Guidato dai casi d uso. Essi costituiscono la base per: la definizione e negoziazione dei requisiti, e la loro validazione da parte del committente la progettazione dell architettura e dei componenti la definizione dei test di accettazione la pianificazione dei rilasci (in un ottica incrementale) e quindi del progetto Centrato sull architettura La definizione dell architettura applicativa e tecnologica costituisce il fondamento tecnico dell applicazione e del progetto Il consolidamento dell architettura avviene solo quando si è certi (se necessario, tramite sperimentazioni) della sua fattibilità tecnica. Fino a quando l architettura non è consolidata, non esistono elementi sufficienti per determinare (con precisione sufficiente alla definizione di un contratto) tempi, costi e rischi dell intervento progettuale 7 Caratteristiche primarie Iterativo il progetto si articola in una serie di iterazioni (sequenze di attività), che hanno lo scopo di ridurre progressivamente i rischi di fallimento, a partire da quelli principali (es. incomprensioni sui requisiti, incertezze sull architettura) in ogni iterazione si ripetono, in misura e percentuali diverse, le medesime tipologie di attività (es. analisi dei requisiti, design, implementazione, test) Incrementale la realizzazione (ed eventualmente il rilascio) dell applicazione avviene in modo progressivo la pianificazione è guidata dai casi d uso e dalle priorità architetturali (es. precedenza ai componenti infrastrutturali) 8 4

Caratteristiche primarie Basato sui modelli RUP enfatizza lo sviluppo e il mantenimento di modelli piuttosto che la produzione di montagne di documentazione cartacea Orientato agli oggetti I modelli utilizzato sono UML Basato sui componenti I componenti sono moduli non banali, sottosistemi che realizzano una funzione e possono essere assemblati in una architettura ben definita Orientato al controllo qualità e alla gestione dei rischi Sono parte inscindibile di ciascuna fase Configurabile Nessun processo è adatto per tutte le situazioni; la configurabilità si raggiunge attraverso la selezione delle viste e dei diagrammi utili e attraverso la gestione delle iterazioni 9 Gli ingredienti di RUP Un ruolo definisce il comportamento e le responsabilità di un individuo o un gruppo Il comportamento è espresso in termini di attività Le responsabilità sono espresso in termini di elaborati da produrre e gestire Ruolo Attività Deliverable 10 5

Tipi di deliverable Set di gestione elaborati di pianificazione (software development plan, studio economico, ) elaborati operazionali (stato di avanzamento, descrizione versione, ) Set dei requisiti documento di visione modello dei casi d uso modello di business Set di progettazione modello di design modello architetturale modello di test Set di implementazione codice sorgente ed eseguibili file di dati Set di rilascio agli utenti script di installazione documentazione utente materiale formativo 11 Le due dimensioni di RUP Lungo il tempo si sviluppano gli aspetti del ciclo di vita. Vengono rapresentati gli aspetti dinamici del processo: come comincia e come si suddivide in cicli, fasi, iterazioni e milestone Lungo i componenti di processo, le attività sono raggruppate logicamente. Si rappresentano gli aspetti statici del processo: come è descritto in termini di componenti, attività, workflow, elaborati, ruoli 12 6

Il modello 13 Le fasi Inception: definisce gli obiettivi del progetto, ne investiga la fattibilità, ne stima i costi, il potenziale di mercato e i rischi, analizza i prodotti concorrenti Elaboration: pianifica il progetto e ne definisce le caratteristiche funzionali, strutturali e architetturali Construction: sviluppa il prodotto attraverso una serie di iterazioni, effettua il testing, prepara la documentazione Transition: consegna il sistema agli utenti finali (include marketing, installazione, configurazione, formazione, supporto, mantenimento) 14 7

Output primari delle fasi Inception Documenti fattibilità Elaboration SRS (Specifica dei Requisiti Software) Architettura consolidata e verificata Construction Versione sistema in pre-produzione (Beta) Transition Versione sistema in produzione 15 Tipologie di attività (workflow) Business modeling: descrive la struttura e la dinamica dell organizzazione Requisiti: descrive i requisiti e il loro cambiamento Analisi e progetto: descrive le viste architetturali Implementazione: considera lo sviluppo del sw e l integrazione Test: descrive i casi prova e le metriche Deployment: descrive la configurazione del sistema Gestione configurazione: mantiene le versioni del sistema Gestione progetto: descrive le strategie per gestire un processo iterativo Ambiente: descrive le infrastrutture di sviluppo 16 8

Fasi e workflow 17 Interazioni e workflow 18 9

Fasi, iterazioni e workflow Le fasi sono sequenziali, e corrispondono a milestone significativi per Committenti, Utenti, Management Le tipologie di attività non sono rigidamente sequenziali, e vengono svolte dal progetto in ogni iterazione Il numero delle iterazioni dipende dalle scelte del Project Manager e dai rischi del progetto 19 Rischi Rischi legati ai requisiti: il sistema può non implementare le funzionalità richieste Creare al più presto una documentazione scheletro che modelli i requisiti principali con diagrammi dei casi d uso, delle classi, delle attività Rischi legati alle tecnologie: le metodologie e gli strumenti da usare possono non essere sufficienti a produrre le funzionalità richieste Prototipare, sperimentando diversi strumenti Rischi legati alle capacità: può essere difficile formare il team di progetto con le conoscenze necessarie Pianificare un addestramento accurato Rischi politici: le forze politiche e organizzative in gioco nell azienda committente possono ostacolare il progetto?????? 20 10

Personalizzazioni RUP deve essere adattato, senza stravolgimenti, alle esigenze e alle caratteristiche dell organizzazione L adattamento deve tenere conto di vari fattori: Tipologia di sistemi da realizzare (automazione, gestionale, B2C) Cultura dell organizzazione in cui viene calato Struttura organizzativa, ruoli, responsabilità Modalità di rapporto con i committenti Differenze tra progetti di nuovo sviluppo ed evoluzioni L adattamento deve avvenire in modo progressivo, e costituisce a sua volta un progetto, iterativo e incrementale 21 11