Rational Unified Process Introduzione



Похожие документы
UML e (R)UP (an overview)

RUP (Rational Unified Process)

Ciclo di vita del progetto

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

IL PROCESSO DI FABBRICAZIONE (sviluppo nuovo prodotto)

Appendice III. Competenza e definizione della competenza

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

Piano di gestione della qualità

MODELLO PER LO SVILUPPO DEL PRODOTTO

UML - Unified Modeling Language

Pianificazione e progettazione

INGEGNERIA DEL SOFTWARE. Prof. Paolo Salvaneschi

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

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

Ciclo di vita dimensionale

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

Fashion Control System

4.1 Che cos è l ideazione

La gestione della qualità nelle aziende aerospaziali

1- Corso di IT Strategy

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

1. BASI DI DATI: GENERALITÀ

03. Il Modello Gestionale per Processi

Concetti di base di ingegneria del software

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

Fondamenti di strategia competitiva ed analisi dei settori industriali

Allegato 2 Modello offerta tecnica

Generazione Automatica di Asserzioni da Modelli di Specifica

IN COLLABORAZIONE CON OPTA SRL

Configuration Management

Progettazione dei Sistemi di Produzione

Ciclo di Vita Evolutivo

Sistemi informativi aziendali struttura e processi

Informazioni preliminari per la stesura di un BUSINESS PLAN

PROJECT MANAGEMENT SERVIZI DI PROJECT MANAGEMENT DI ELEVATA PROFESSIONALITÀ

Business Process Management

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

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

Ciclo di vita del software

Organizzazione e pianificazione delle attività di marketing

EUROPEAN PROJECT MANAGEMENT QUALIFICATION - epmq. Fundamentals. Syllabus

Release Management. Obiettivi. Definizioni. Responsabilità. Attività. Input

11. Evoluzione del Software

Export Development Export Development

Il modello di ottimizzazione SAM

GESTIONE AVANZATA DEI MATERIALI

Gestione dei Progetti ( )

Coordinamento e comunicazione

SOA GOVERNANCE: WHAT DOES IT MEAN? Giorgio Marras

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

figure professionali software

REFERENZIAZIONI 2001) NUP

una società cooperative Europea (SCE) ropea Moduli e metodologie Mediterranea

12. Evoluzione del Software

La gestione manageriale dei progetti

QUESTIONARIO 3: MATURITA ORGANIZZATIVA

Il piano di miglioramento: agire sui processi per migliorare i risultati. Contesto Risorse Processi Risultati

Processi principali per il completamento del progetto

La Qualità il Controllo ed il Collaudo della macchina utensile. Dr. Giacomo Gelmi

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

Automazione Industriale (scheduling+mms) scheduling+mms.

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

L o. Walter Ambu japs: una soluzione agile (

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

COME VIENE REALIZZATO UN SERVIZIO DI RIORGANIZZAZIONE DEI SISTEMI INFORMATIVI AZIENDALI?

Presidenza della Giunta Ufficio Società dell'informazione. ALLEGATO IV Capitolato tecnico

Politica per la Sicurezza

IL MARKETING E QUELLA FUNZIONE D IMPRESA CHE:

CAPITOLO 11 Innovazione cam i amen o

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

IS Governance. Francesco Clabot Consulenza di processo.

INDICOD-ECR Istituto per le imprese di beni di consumo

MANUALE DELLA QUALITÀ SIF CAPITOLO 08 (ED. 01) MISURAZIONI, ANALISI E MIGLIORAMENTO

Valorizzazione della professionalità di SW Quality Assurance

05/03/07 Anna Maria Baratta. Lavorare per progetti

Corso di Amministrazione di Sistema Parte I ITIL 1

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

ALLINEARSI: IL DRIVER PER UNA INNOVAZIONE DI SUCCESSO!

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

ISA 610 e ISA 620 L'utilizzo durante la revisione dei revisori interni e degli esperti. Corso di revisione legale dei conti progredito

IL PROCESSO EDILIZIO E L ORGANISMO EDILIZIO

Il modello veneto di Bilancio Sociale Avis

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

La portata del software

Sistemi Informativi e Sistemi ERP

Gestione Turni. Introduzione

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

LINEE GUIDA PER L EROGAZIONE DELLA FORMAZIONE INTERNA

Quintiq stabilisce un nuovo standard per la pianificazione delle risorse nel settore ferroviario

CORSO BUSINESS CONTINUITY AND DISASTER RECOVERY MANAGEMENT LE 10 PROFESSIONAL PRACTICES

PrometeoQualità. Manuale Documenti

I NUOVI MODELLI ORGANIZZATIVI E TECNOLOGICI A SUPPORTO DELL EFFICIENZA AZIENDALE

Valutazione del potenziale

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche

Un approccio complessivo alla Gestione della Performance Aziendale. Sestri Levante maggio 2003

Транскрипт:

Rational Unified Process Introduzione G.Raiss - A.Apolloni - 4 maggio 2001 1 Cosa è E un processo di sviluppo definito da Booch, Rumbaugh, Jacobson (autori dell Unified Modeling Language). Il RUP è un framework (schema generale) di processo, da adattare alle diverse tipologie di progetto. G.Raiss - A.Apolloni - 4 maggio 2001 2 Origini Deriva dall unificazione dei tre più usati processi di analisi, progettazione e produzione del software: Il metodo di Booch Il metodo di Rumbaugh (OMT) Il metodo di di Jacobson (OOSE-Objectory) G.Raiss - A.Apolloni - 4 maggio 2001 3

Caratteristiche... Basato sulle 6 best practices dello sviluppo del software: Sviluppare software in modo iterativo ed incrementale. Gestire i requisiti. Utilizzare architetture basate su componenti. Modellare il software in modo visuale. Verificare la qualità del software. Controllare le modifiche apportate al software. G.Raiss - A.Apolloni - 4 maggio 2001 4 Iterativo ed incrementale... L approccio iterativo offre una serie di soluzioni ai problemi dello sviluppo sw: I problemi sono evidenziati all inizio del ciclo di vita quando è ancora possibile prendere provvedimenti. Viene incoraggiato lo scambio di informazioni con gli utenti permettendo l identificazione dei requisiti reali del sistema. G.Raiss - A.Apolloni - 4 maggio 2001 5...iterativo ed incrementale... Gli sviluppatori sono costretti a concentrarsi sugli aspetti critici del progetto. Il test eseguito continuamente ad ogni iterazione permette una valutazione oggettiva dello stato di avanzamento del progetto. Le incoerenze tra requisiti, progetto ed implementazione vengono identificate molto presto. Il carico del gruppo di lavoro è suddiviso nel tempo in modo più uniforme. G.Raiss - A.Apolloni - 4 maggio 2001 6

...iterativo ed incrementale... Il processo può essere migliorato nel tempo grazie alle competenze acquisite. In ogni iterazione si ripetono, in misura e percentuali diverse, le medesime tipologie di attività (es. analisi dei requisiti, design, implementazione, test). La realizzazione (ed eventualmente il rilascio) dell applicazione avviene in modo progressivo G.Raiss - A.Apolloni - 4 maggio 2001 7 Verificare la qualità La verifica della qualità del sw consente di: Rendere oggettiva l analisi dello stato del progetto. Evidenziare incoerenze tra requisiti, progetto ed implementazione. Concentrarsi sulle aree ad alto rischio. G.Raiss - A.Apolloni - 4 maggio 2001 8 Use case driven... La definizione delle modalità d uso del sistema (casi d uso), guida tutte le attività del processo. I casi d uso costituiscono la base per: la definizione e la negoziazione dei requisiti; la validazione degli stessi da parte del committente; la progettazione dell architettura e dei componenti; la definizione dei test di accettazione; G.Raiss - A.Apolloni - 4 maggio 2001 9

Il processo sequenziale... I tradizionali processi sequenziali sono basati sulle seguenti fasi: Capire completamente il problema che deve essere risolto, i suoi requisiti ed i suoi vincoli. Progettare una soluzione che soddisfi tutti i requisiti ed i vincoli. Implementare la soluzione. Verificare che l implementazione soddisfi i requisiti specificati. Consegnare il prodotto finale. G.Raiss - A.Apolloni - 4 maggio 2001 10...il processo sequenziale... Il processo sequenziale fallisce perchè basato su ipotesi errate: I requisiti non muteranno. I requisiti si possono descrivere con un dettaglio ed una precisione sufficiente. E possibile sviluppare un progetto completo prima di procedere. G.Raiss - A.Apolloni - 4 maggio 2001 11...il processo sequenziale Il processo sequenziale non funziona su progetti con un elevato grado di innovazione, incertezza e rischio. Una soluzione: il processo iterativo! G.Raiss - A.Apolloni - 4 maggio 2001 12

Il modello del RUP... Il RUP è rappresentato utilizzando 4 elementi principali di modellazione: I ruoli, il chi. Le attività, il come. Gli elaborati, il che cosa. I Workflow, il quando. G.Raiss - A.Apolloni - 4 maggio 2001 13...il modello del RUP... Il termine ruolo definisce il comportamento e le responsabilità di un individuo o di un gruppo di individui che lavorano in team. Il comportamento è espresso in termini di attività che la persona con quel ruolo esegue. G.Raiss - A.Apolloni - 4 maggio 2001 14...il modello del RUP Le responsabilità di ogni ruolo sono espresse in termini di elaborati che l individuo con tale ruolo crea, modifica o controlla. Un workflow è una sequenza di attività che produce un risultato con un valore osservabile. G.Raiss - A.Apolloni - 4 maggio 2001 15

Fasi ed iterazioni... Il RUP è composto di fasi ed iterazioni. Una fase è l arco di tempo tra due milestone del processo nel quale sono ben definiti obiettivi da raggiungere e semilavorati da completare e sono prese le decisioni per passare alla fase successiva. G.Raiss - A.Apolloni - 4 maggio 2001 16...fasi ed iterazioni... Ogni fase si compone di un numero di iterazioni. Un iterazione rappresenta un completo ciclo di sviluppo, dalla cattura dei requisiti in analisi all implementazione e test, e porta alla produzione di un oggetto eseguibile. Per ogni iterazione esistono un piano e dei criteri di valutazione. G.Raiss - A.Apolloni - 4 maggio 2001 17...fasi ed iterazioni G.Raiss - A.Apolloni - 4 maggio 2001 18

Le fasi del RUP Inception Elaboration Construction Transition G.Raiss - A.Apolloni - 4 maggio 2001 19 Inception... Verifica la fattibilità tecnica e la giustificazione economica dell intervento. In questa fase vengono definiti: i business case che devono includere i criteri di successo; la gestione dei rischi; la stima delle risorse necessarie; la pianificazione di massima e la schedulazione dei principali milestone. G.Raiss - A.Apolloni - 4 maggio 2001 20...inception In questa fase è comune produrre un prototipo sw con lo scopo di approfondire i concetti. G.Raiss - A.Apolloni - 4 maggio 2001 21

Elaboration... Definisce in dettaglio le caratteristiche funzionali, strutturali e tecniche del sistema. Le decisioni architetturali devono essere prese avendo una conoscenza dell intero sistema e ciò implica la descrizione della maggior parte dei requisiti del sistema stesso. G.Raiss - A.Apolloni - 4 maggio 2001 22...elaboration Per verificare l architettura è necessario implementare un prototipo che dimostri le principali scelte ed implementi use case significativi. G.Raiss - A.Apolloni - 4 maggio 2001 23 Construction Produce in modo incrementale una versione del sistema pronta per i test di accettazione. Ciò implica la descrizione dei requisiti rimanenti e la definizione dei criteri di accettazione e di verifica del sw. G.Raiss - A.Apolloni - 4 maggio 2001 24

Transition Produce una versione del sistema rilasciabile in produzione. Parte con il rilascio di una versione beta sulla quale è necessario effettuare cicli di revisione per correggere bugs, inserire requisiti addizionali (non di rilievo) o completare alcuni requisiti che erano stati posticipati. G.Raiss - A.Apolloni - 4 maggio 2001 25 Le fasi del RUP... Inception ed elaboration rappresentano l attività ingegneristica del ciclo di vita dello sviluppo, mentre construction e transition costituiscono la produzione. G.Raiss - A.Apolloni - 4 maggio 2001 26...le fasi del RUP G.Raiss - A.Apolloni - 4 maggio 2001 27

Output delle fasi... Inception Documenti fattibilità. Elaboration SRS (Specifica dei Requisiti Software). Architettura consolidata e verificata. G.Raiss - A.Apolloni - 4 maggio 2001 28...output delle fasi Construction Versione sistema in pre- produzione (Beta). Transition Versione sistema in produzione. G.Raiss - A.Apolloni - 4 maggio 2001 29 Workflow... Le fasi sono sequenziali, e corrispondono a milestones significativi per Committenti, Utenti, Management. Le tipologie di attività possibili nel processo 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. G.Raiss - A.Apolloni - 4 maggio 2001 30

Attività Business modeling... Analisi e modellazione dei processi utente. Rappresenta un momento di riflessione e conoscenza dei processi e dei loro possibili miglioramenti molti dei quali non legati necessariamente ad automazioni software. G.Raiss - A.Apolloni - 4 maggio 2001 31 Requirements Definizione dei requisiti utente. Questa attività è rivolta alla definizione di cosa il sistema informatico deve fare. Ciò avviene mediante la definizione e modellazione dei requisiti utente, espressi in forma di casi d uso e scenari di funzionamento del caso d uso. G.Raiss - A.Apolloni - 4 maggio 2001 32 Analysis and design Analisi e disegno. Questa attività è rivolta alla definizione di come il sistema informatico deve fare quanto stabilito nei requisiti. Ciò avviene mediante la definizione e la modellazione di dettaglio dei requisiti software e del comportamento statico e dinamico del sistema. G.Raiss - A.Apolloni - 4 maggio 2001 33

Implementation Implementazione della soluzione. Questa attività è rivolta alla realizzazione dei componenti progettati, in accordo con il modello dei componenti definito. E una attività che dipende strettamente dalla progettazione, dove sono fatte le scelte di disegno dei componenti e la generazione dello scheletro. G.Raiss - A.Apolloni - 4 maggio 2001 34...implementation La fase di implementazione, definiti in modo corretto il Modello System Use Case, il prototipo ed il Design Model, non comporta particolari difficoltà, in quanto si basa su precise linee guida per lo sviluppo dei componenti. G.Raiss - A.Apolloni - 4 maggio 2001 35 Test... Le attività relative al Testing sono integrate nel processo di sviluppo completamente guidato dalla definizione dei casi d uso e dei loro scenari. G.Raiss - A.Apolloni - 4 maggio 2001 36

...test E possibile mediante strumenti automatici, stabilire la dipendenza tra casi d uso, scenari e requisiti di test funzionale e non funzionali, importandoli dal modello di analisi e progettazione. G.Raiss - A.Apolloni - 4 maggio 2001 37 Deployment Fase relativa al rilascio del sistema. G.Raiss - A.Apolloni - 4 maggio 2001 38 Configuration & Change Management Un aspetto fondamentale del processo di sviluppo è la gestione della configurazione e dei cambiamenti. A tale riguardo, per ciascuna delle fasi descritte è necessario fare gestire i componenti e le attività dal Configuration Management, integrandolo con i tools utilizzati. G.Raiss - A.Apolloni - 4 maggio 2001 39

Project Management Attività relativa alla gestione del progetto. G.Raiss - A.Apolloni - 4 maggio 2001 40 Environment Attività di messa a punto dell ambiente di supporto al progetto. G.Raiss - A.Apolloni - 4 maggio 2001 41 Modelli Sono i più importanti prodotti del RUP e sono una semplificazione della realtà, creati per comprendere meglio il sistema che si sta informatizzando. Nel RUP sono previsti 9 modelli che nel complesso coprono tutte le decisioni importanti di uno sviluppo sw. G.Raiss - A.Apolloni - 4 maggio 2001 42

modelli Business model rappresenta un astrazione dell organizzazione. Domain model rappresenta il contesto del sistema. Use case model rappresenta il sistema dei requisiti funzionali. G.Raiss - A.Apolloni - 4 maggio 2001 43 modelli Analysis model rappresenta una prima bozza di disegno. Design model Rappresenta il vocabolario del sistema e la sua soluzione. G.Raiss - A.Apolloni - 4 maggio 2001 44 modelli Process model Rappresenta i meccanisimi di concorrenza e sincronizzazione del sistema. Deployment model Rappresenta la topologia hw sul quale il sistema sarà eseguito. G.Raiss - A.Apolloni - 4 maggio 2001 45

modelli Implementation model Rappresenta le parti usate per assemblare e rilasciare il sistema. Test model Rappresenta i passi attraverso i quali il sistema viene validato e verificato. G.Raiss - A.Apolloni - 4 maggio 2001 46 Punti di forza del RUP E un processo ampiamente utilizzato, da anni, in contesti eterogenei: è sperimentato e consolidato. Comprende una massa notevole di linee guida e template. Fornisce indicazioni concrete su come operare in un approccio di progettazione Object Oriented. G.Raiss - A.Apolloni - 4 maggio 2001 47 punti di forza del RUP Definisce in modo approfondito (anche se in termini necessariamente generali): i ruoli coinvolti nel processo di sviluppo. le attività da effettuare. i documenti in input e in output alle diverse attività. G.Raiss - A.Apolloni - 4 maggio 2001 48

Costi Impatto organizzativo Impatto culturale Spese tecnologiche Costi di impianto Costi a regime G.Raiss - A.Apolloni - 4 maggio 2001 49 Impatto organizzativo... Il processo può risultare molto diverso dagli stili di lavoro in essere nell organizzazione che lo adotta. Può portare ad una ridefinizione dei ruoli, rispetto a quelli in essere. G.Raiss - A.Apolloni - 4 maggio 2001 50...impatto organizzativo Può portare ad una ridefinizione delle modalità di comunicazione e di rapporto con Committenti e Utilizzatori. Può portare ad una ridefinizione delle modalità di comunicazione e di rapporto con eventuali Fornitori. G.Raiss - A.Apolloni - 4 maggio 2001 51

Impatto culturale... RUP può comportare, per il personale dell organizzazione: Un cambiamento significativo del modo di lavorare (procedure, responsabilità, tecniche). Una diversa percezione del proprio ruolo in rapporto alla committenza ed agli utilizzatori. G.Raiss - A.Apolloni - 4 maggio 2001 52...impatto culturale Una ridefinizione di alcuni concetti cardine dello sviluppo (analisi, requisiti, test, manutenzione). La necessità di apprendere nuove tecniche (es. approccio Object Oriented alla progettazione dei sistemi, gestione dei requisiti). G.Raiss - A.Apolloni - 4 maggio 2001 53 Costi tecnologici... L utilizzo del nuovo processo può essere agevolato dall acquisizione di strumenti specifici per le attività primarie di sviluppo, tra cui: gestione dei requisiti e delle richieste di cambiamento; analisi e design; generazione di codice; Testing. G.Raiss - A.Apolloni - 4 maggio 2001 54

...costi tecnologici Tali strumenti sono oggi ampiamente disponibili sul mercato. La disponibilità degli strumenti non è comunque un prerequisito indispensabile per l efficacia del processo. G.Raiss - A.Apolloni - 4 maggio 2001 55 Costi d impianto Lavoro necessario per: adattamento del processo; interazione con Funzioni aziendali coinvolte, e con eventuali soggetti esterni (Clienti, Fornitori); divulgazione; supporto ai progetti nella fase iniziale di diffusione. G.Raiss - A.Apolloni - 4 maggio 2001 56 Costi a regime Il processo deve essere gestito in un ottica di continuo miglioramento e adattamento all evolversi delle esigenze aziendali. Va, inoltre, adattato ad ogni specifico progetto, per tenere conto delle specifiche caratteristiche e limitazioni. G.Raiss - A.Apolloni - 4 maggio 2001 57