Università di Bergamo Dip. di Ingegneria gestionale, dell'informazione e della produzione INGEGNERIA DEL SOFTWARE Paolo Salvaneschi A_4 V3. Processi Valutazione e miglioramento dei processi Il contenuto del documento è liberamente utilizzabile dagli studenti, per studio personale e per supporto a lezioni universitarie. Ogni altro uso è riservato, e deve essere preventivamente autorizzato dall autore. Sono graditi commenti o suggerimenti per il miglioramento del materiale
INDICE Evoluzione dei processi Valutazione dei processi Miglioramento A - Processi Paolo Salvaneschi
Evoluzione dei processi Organizzazione Valutazione dello stato attuale Processi Obiettivi di business Azioni per il miglioramento A - Processi Paolo Salvaneschi 3
Valutazione dei processi Valutazione (assessment) dei processi nel settore dell Information Technology Definire lo stato attuale dei processi in una scala di valori Perche? Per migliorare ed essere più competitivi Per valutare i fornitori A - Processi Paolo Salvaneschi 4
Valutazione dei processi CMM Capability Maturity Model Commessa DoD a SEI (Software Engineering Institute) Modello per la valutazione dei fornitori Maturità Process Improvement Key Process Areas Optimizing (5) Focus on process improvement Process Management Key Process Areas Managed (4) Process measured and controlled Technical Key Process Areas Defined (3) Process characterized, fairly well understood Management Key Process Areas Repeatable () Can repeat previously mastered tasks Initial () A - Processi Paolo Salvaneschi 5
Valutazione dei processi ISO/IEC 5504 ISO/IEC 5504 (SPICE - Software Process Improvement & Capability determination) Basata sui processi definiti dalla norma ISO 07 & Capability A - Processi Paolo Salvaneschi 6
I Livelli di Capacità Valutazione dei processi 0 Incompleto (Incomplete) Eseguito (Performed) Gestito (Managed) 3 Stabilito (Established) 4 Prevedibile (Predictable) 5 Ottimizzante (Optimizing) Il processo non è implementato o comunque non raggiunge i risultati attesi Il processo implementato raggiunge lo scopo ed i risultati attesi Il processo Eseguito produce risultati che soddisfano i requisiti espressi, nei tempi definiti e con le risorse allocate. Il processo Gestito è eseguito sulla base di un processo standardizzato e raggiunge risultati predefiniti. Il processo Stabilito è eseguito costantemente, entro limiti stabiliti quantitativamente e raggiungendo costantemente i risultati predefiniti. Il processo Prevedibile cambia dinamicamente per rispondere efficacemente ai bisogni di business attuali e futuri. A - Processi Paolo Salvaneschi 7
Valutazione dei processi Valutazione delle Capacità Il Livello di Capacità è un indicatore della qualità raggiunta nella gestione del processo stesso Il Livello di Capacità si determina attraverso l osservazione di un insieme di Attributi di Processo, associati a ciascun Livello Ogni Attributo di Processo rappresenta una caratteristica misurabile del processo A - Processi Paolo Salvaneschi 8
Valutazione dei processi Ogni Attributo di Processo rappresenta una caratteristica misurabile del processo Il valutatore, con l aiuto di indicatori, esaminando evidenze oggettive, esprime un giudizio sul grado di presenza dell attributo Livello di capacità: 3 - Stabilito Attributi: Definizione del processo L esecuzione del processo si basa su una definizione standard di processo o su una sua personalizzazione Risorse del Processo Al processo sono allocate risorse competenti ed adeguate A - Processi Paolo Salvaneschi 9
Valutazione dei processi Profilo di Capacità Livelli di Capacità Optimizing (Ottimizzante) 5 Predictable (Prevedibile) 4 Established (Stabilito) Managed (Gestito) Performed (Eseguito) Incomplete (Incompleto) 3 0 P P P3 P4 ecc.. Processi Pn A - Processi Paolo Salvaneschi 0
Esempio Processi Nome processo codice valore Analisi del contesto e definizione degli obiettivi ID 0 Definizione dei requisiti di sistema ID 0 Definizione specifiche software SV3 Progettazione architetturale del software SV4 Progettazione dettagliata del software SV5 Codifica SV6 Produzione documentazione utente e di supporto SV9 Distribuzione del prodotto SV0 Raccolta dei problemi in esercizio MA Analisi dei problemi e modifiche MA Supporto tecnico al cliente ES Testing (Verifica e Validazione) CO Riesami con il cliente e audit interni CO 0 Misura di qualita' di processo CO3 0 Misura di qualita' di prodotto CO4 0 Controllo delle versioni e configurazioni GT Gestione dei documenti di progetto GT Pianificazione e controllo attuazione GO Gestione delle risorse umane GO4 Gestione infrastrutture GO5 Miglioramento dei processi GO6 0 Gestione comunic. con il cliente CM Gestione comunic. con le altre funzioni aziendali CM Gestione archivio di settore KN Gest. documenti (specifiche,progetti,..) riusabili KN 0 A - Processi Paolo Salvaneschi
Esempio Valori 0 - Non eseguito o eseguito in modo frammentario - eseguito anche se informalmente - Pianificato e con evidenze documentali 3 - Basato su modalita' standard, se il caso personalizzate ed adeguato al caso specifico 4 - Con misure di risultati dal processo 5 - Con una sistematica attivita' di miglioramento continuo A - Processi Paolo Salvaneschi
Esempio Valutazione dei processi COMUNICAZIONE KN KN ID 3 ID SV3 GESTIONE GO6 GO5 GO4 CM GO GT CM 00 0 0 0 000 SV4 MA SV5 SV6 SV9 SV0 MA SVILUPPO GT CO4 CO3 CO CO ES CONTROLLO A - Processi Paolo Salvaneschi 3
Esempio Due aziende SME Sviluppo prodotti per il mercato COMUNICAZIONE GO5 GO6 CM CM KN KN ID 3,5,5 ID SV3 SV4 SV5 SV6 SV9 Valutazione dei processi SVILUPPO 0,5 Valutazione dei processi GO4 GO 0 SV0 MA GESTIONE COMUNICAZIONE GO6 GO5 GO4 CM GO CM 000 0 0 000 GT KN KN ID 3 ID SV3 SV4 MA SV5 SV6 GESTIONE SV9 SV0 MA SVILUPPO GO GT5 GT4 GT3 GT GT CO4 CO3 MA ES CO CO CONTROLLO GT CO4 CO3 CO CO ES CONTROLLO A - Processi Paolo Salvaneschi 4
Miglioramento dei processi Miglioramento (Process improvement) Pianificare ed attuare le azioni di miglioramento A - Processi Paolo Salvaneschi 5
Esempio Gruppo di processi Azione Specifica, progettazione e realizzazione Formalizzare i processi e gli standard di documentazione relativi alle tipologie diverse di sviluppo. Controllo Manutenzione ed esercizio Definire e mettere in servizio un metodo di test dei prodotti software standardizzato, documentato, adeguato alle tipologie diverse dei processi di sviluppo. Definire e mettere in servizio un metodo di test dei componenti hardware definendo: le prove da eseguire il piano di campionamento del prodotto Definire delle modalità che permettano il tracciamento dei lotti di prodotto consegnati. Definire modalità standard del processo di assistenza clienti, raccolta e gestione degli errori. Valutare l inserimento di strumenti che facilitino l acquisizione di modalità operative standard. Definire degli indicatori di qualità del servizio ed avviare un processo di misura Gestione Definire le modalità standard di gestione della configurazione e delle versioni e di gestione della documentazione di prodotto. A - Processi Paolo Salvaneschi 6
Miglioramento dei processi Miglioramento continuativo Mettere in atto un processo di controllo che misura, analizza e retroagisce sui processi per migliorarli. A - Processi Paolo Salvaneschi 7
Miglioramento dei processi Misura Obiettivi di business Organizzazione Processi Analisi Azioni A - Processi Paolo Salvaneschi 8
Miglioramento dei processi Misure Fatturato Margine lordo N. e distribuzione dei clienti Lamentele dei clienti Tempi di consegna progetti / tempi previsti Costi progetti / costi previsti Difettosità del prodotto A - Processi Paolo Salvaneschi 9
Miglioramento dei processi ISO 900: 008 Basata sulla visione per processi e sul miglioramento Quattro categorie di processi Responsabilità della direzione Gestione delle risorse Realizzazione del prodotto Misurazione, analisi e miglioramento Sistemi di gestione della qualità Certificazione A - Processi Paolo Salvaneschi 0