cmmi-dev v1 - colonese · 2012-08-07 · ercole colonese cmmi-dev v.1.3 – roma, 2012 18...
TRANSCRIPT
CMMI-Dev V1.3 Capability Maturity Model Integration for Software Development, Version 1.3
Roma, 2012 Ercole Colonese
Agenda
Che cos’è il CMMI
Costellazione di modelli
Approccio “staged” e “continuous”
Aree di processo
Goals and Practices, generic and specific
Appraisal
Possibile piano di implementazione
Strumenti a supporto
Formazione (Awareness)
2 CMMI-Dev V.1.3 – Roma, 2012 Ercole Colonese
Che cos’è?
CMMI (Capability Maturity Model Integration) è un modello per il miglioramento dei processi aziendali
Nasce negli anni ’70 negli USA (DoD) per valutare la qualità dei prodotti e servizi dei fornitori
Si è esteso in tutto il mondo come standard qualitativo per il miglioramento dei processi
Il modello è gestito dal Software Engineering Institute (SEI) che lo fa evolvere in base alle esigenze del mercato e delle tecnologie emergenti
3 CMMI-Dev V.1.3 – Roma, 2012 Ercole Colonese
Costellazioni
La versione attuale del modello (v.1.3) consta di tre modelli distinti: CMMI for Development, CMMI-DEV, Version 1.3 November 2010
Improving processes for developing better products and services
CMMI for Services, CMMI-SVC, Version 1.3 November 2010
Improving processes for providing better services
CMMI for Acquisition, CMMI-ACQ, Version 1.3 November 2010
Improving processes for acquiring better products and services
4 CMMI-Dev V.1.3 – Roma, 2012 Ercole Colonese
Il problema dei progetti che falliscono
Nel campo IT (ma non solo), il problema è affrontato con un approccio di miglioramento continuo delle prestazioni aziendali (Continuous Process Improvement, CPI).
Il miglioramento di un processo è inteso a tutto tondo e coinvolge, in maniera sincrona e sinergica, l’aspetto umano (l’organizzazione intesa come cultura, atteggiamento, impegno, coinvolgimento, responsabilizzazione, motivazione ecc.), le tecnologie (tecnologie informatiche, metodi, tecniche, metriche, strumenti ecc.) e ovviamente i processi .
5 CMMI-Dev V.1.3 – Roma, 2012 Ercole Colonese
Figura 1. Collegamento tra processo, competenza e tecnologia (fonte: SEI).
Il modello CMMI
6 CMMI-Dev V.1.3 – Roma, 2012 Ercole Colonese
Il modello CMMI prevede un approccio «continuo» ed uno «a stadi» per la sua
implementazione
« staged » model « continuous » model
CL 5
CL 4
CL 3
CL 2
CL 1
CL 0
PP PMC
Livelli di maturità
7 CMMI-Dev V.1.3 – Roma, 2012 Ercole Colonese
Livello Descrizione
1. Iniziale Il processo di sviluppo software è caratterizzato da una scarsa
strutturazione, spesso è assente, a volte è caotico. Solo pochi processi
sono definiti ed il successo dipende dall’impegno dei singoli, a volte
“eroico”.
2.Ripetibile (Gestito) Sono stabili processi base di gestione dei progetti di sviluppo software per
tracciare i costi, la schedulazione delle attività e le funzionalità sviluppate. Il
processo è stabilito per essere ripetibile su progetti che sviluppano
applicazioni simili.
3. Definito Il processo di sviluppo software, sia per la parte di gestione che per quella
di sviluppo tecnico, è definito, documentato, standardizzato ed integrato in
azienda per l’intera organizzazione. Tutti i progetti utilizzano una versione
del processo approvata, standardizzata ed adattabile ai singoli progetti.
4.Gestito
quantitativamente
Si effettuano misure sul processo di sviluppo software e sulla qualità dei
prodotti sviluppati. Sia il processo di sviluppo che i prodotti sviluppati sono
quantitativamente interpretati e controllati.
5. Ottimizzato Esiste un processo di miglioramento continuo basato su feed-back
quantitativi provenienti dall’utilizzo del processo e dalla sperimentazione di
progetti pilota su innovazioni e nuove tecnologie.
Aree di processo (KPAs)
8 CMMI-Dev V.1.3 – Roma, 2012 Ercole Colonese
Level Focus Area di processo
5 Optimizing Continuous Process Improvement
Organizational Performance Management (OPM)
Causal Analysis and Resolution (CAR)
4 Quantitatively Managed
Quantitative Management
Organizational Process Performance (OPP)
Quantitative Project Management (QPM) 3 Defined Process Standardization Requirements Development (RD)
Technical Solution (TS)
Product Integration (PI)
Verification (VER)
Validation (VAL)
Organizational Process Focus (OPF)
Organizational Process Definition (OPD)
Organizational Training (OT)
Integrated Project Management (IPM)
Risk Management (RSKM)
Decision Analysis and Resolution (DAR) 2 Managed Basic Project
Management Requirements Management (REQM)
Project Planning (PP)
Project Monitoring and Control (PMC)
Supplier Agreement Management (SAM)
Measurement and Analysis (MA)
Process and Product Quality Assurance (PPQA)
Configuration Management (CM) 1 Initial None None
Miglioramento continuo
9 CMMI-Dev V.1.3 – Roma, 2012 Ercole Colonese
La metodologia per il miglioramento continuo
IDEAL: Initiating-Diagnosing-Establishing-Acting-Learning
(fonte: SEI)
Pianificare (Plan)
Verificare (Check)
Realizzare (Do)
Mantenere e migliorare
(Act)
PDCA: Plan-Do-Check-Act (fonte: Deming)
Approccio semplificato (PDCA)
10 CMMI-Dev V.1.3 – Roma, 2012 Ercole Colonese
Pianificare (Plan)
1. Rendere consapevole il Management (Awareness)
2. Definire la strategia di miglioramento (politiche,
obiettivi, azioni)
3. Pianificare il miglioramento (SPI Plan)
4. Costituire i gruppi di lavoro (MSG, SEPG, TWGs,
Process Owners)
5. Formare i gruppi di lavoro (CMMI Training)
Realizzare (Do)
1. Strutturare il “Ciclo di vita del software “ (CVS)
2. Istituzionalizzare le 7 aree di processo (KPAs)
3. Addestrare il personale coinvolto
4. Adottare i processi stabiliti nei progetti reali
Pianificare (Plan)
Verificare (Check)
Realizzare (Do)
Mantenere e migliorare
(Act)
Verificare (Check)
1. Monitorare i processi (misurazioni)
2. Verificare i risultati e confrontarli con gli obiettivi
3. Valutare i risultati (Appraisal di classe A, B o C)
4. Obiettivo raggiunto:
a. Passare al punto 1 della fase Act;
5. Obiettivo non raggiunto:
a. Passare al punto 2 della fase Act.
Mantenere e migliorare (Act)
1. Obiettivo raggiunto: Standardizzare, consolidare e
addestrare il personale;
2. Procedere ad un eventuale PDCA per un ulteriore
miglioramento;
3. Ripetere un nuovo ciclo PDCA sullo stesso tema,
analizzando criticamente le varie fasi del ciclo
precedente per individuare le cause del non
raggiungimento dell’obiettivo.
La valutazione del livello di maturità
11 CMMI-Dev V.1.3 – Roma, 2012 Ercole Colonese
SCAMPI: Standard CMMI Appraisal
Method for Process Improvement
Class A, B or C
Lead Appraiser
Two stages:
1. Documentation review
2. Visit (on-site)
Final Report:
Level appraised
Strenghts and Weakeness
SCAMPI Classes (fonte: SEI)
Goals and Practices (Generic)
12 CMMI-Dev V.1.3 – Roma, 2012 Ercole Colonese
Generic Goal Generic Practice
GG 1 Achieve Specific Goals GP 1.1 Perform Specific Practices
GG 2 Institutionalize a Managed Process
GP 2.1 Establish a Managed Process
GP 2.2 Plan the Process
GP 2.3 Provide Resources
GP 2.4 Assign Responsibility
GP 2.5 Train People
GP 2.6 Control Work Products
GP 2.7 Identify and Involve Relevant
Stakeholders
GP 2.8 Monitor and Control Process
GP 2.9 Objectively Evaluate Adherence
GP 2.10 Review Status with Higher Level
Management
GG 3 Institutionalize a Defined Process
GP 3.1 Establish a Defined Process
GP 3.2 Collect Process Related Experiences
Goals and Practices (Specific)
13 CMMI-Dev V.1.3 – Roma, 2012 Ercole Colonese
Specific Goal Generic Practice
SG 1 Determine Causes of Selected
outcomes
SP 1.1 Select Outcomes for Analsys
SP 1.2 Analyze Causes
SG 2 Address Causes of Selected
Outcomes
GP 2.1 Implement Action Proposals
SP 2.2 Evaluate the Effect of Implemented
Actions
SP 2.3 Record Causal Analysis Data
Modello dei processi (Livello 2)
14 CMMI-Dev V.1.3 – Roma, 2012 Ercole Colonese
REQM
Flusso delle fasi del CVS
Linee guida
Feedback
Ciclo di vita del software (CVS)
Strategia: Politiche, Obiettivi, Azioni, Riesame
PP PMC SAM PPQA CM MA
Altri processi aziendali
(SGQ)
Strumenti a supporto (Tool)
Miglioramento continuo dei processi (SPI Program)
Un possibile piano di implementazione
15 CMMI-Dev V.1.3 – Roma, 2012 Ercole Colonese
Appraisal (classe C)
Documentazione Visita
Mese: 1 3 4 5 6 7 8
Pianificazione
Ciclo di vita del software (CVS)
Adozione di strumenti (tool)
Organizzazione Appraisal
Misurazioni e analisi
Appraisal (classe A
o B)
Istituzionalizzazione delle 7 aree di processo (KPAs)
Azioni
2 9 10 11 12
Modello “staged” Livello di maturità 2 (7 aree di processo) Organizzazione di medie dimensioni fortemente motivata
Mgmt Training
SEPG & Training
Elementi del sistema
16 CMMI-Dev V.1.3 – Roma, 2012 Ercole Colonese
Ciclo di vita del
software (CVS)
Riferimento a …
Processi e
SGQ
aziendali
Documenti di
prodotto
Misurazione dei processi
Valutazione degli obiettivi raggiunti
Piano di
miglioramento
Aree di processo
(KPAs)
Documenti di
progetto
Politica
Obiettivi
Azioni
Risultati
Strumenti a supporto
17 CMMI-Dev V.1.3 – Roma, 2012 Ercole Colonese
Politica
Ciclo di vita del
software (CVS)
Reporting
Tempi di
consegna
Costo dei progetti
Qualità del software
DB Misure
Measurement
and Analysis
Obiettivi
Processi
(KPAs)
Riesame
della
Direzione
Azioni Erogazione
dei servizi
Requisiti
CVS
Gestione
configurazione
Anomalie
software
Richieste di
modifica
Test
Formazione
18 CMMI-Dev V.1.3 – Roma, 2012 Ercole Colonese
Formazione del Management (Awareness) Si tratta di una mezza giornata (se necessario, 2 mezze giornate) in cui viene
presentato il modello CMMI-Dev nella corrente versione
La formazione tende ad aiutare il Management a comprendere i reali vantaggi del modello ma anche, e soprattutto, le difficoltà a implementarlo
In particolare, serve a rendere noto al Management il proprio ruolo di “promotore” dell’iniziativa (Sponsorship) e la responsabilità di verificarne lo stato di implementazione, l’efficacia (misurazioni) e a mettere in atto le azioni opportune
Formazione dei gruppi di lavoro (SEPG) L’implementazione del modello richiede la costituzione di uno o più gruppi di lavoro
(SEPG, Software Engineering Process Group) cui viene affidato il compito di realizzare i processi necessari, divulgarli all’interno dell’organizzazione e fornire il supporto tecnico alla loro adozione
In particolare, si evidenzia la necessità di produrre e mantenere aggiornata la documentazione dei processi, adottare strumenti a supporto, implementare e utilizzare le metriche necessarie
La formazione in questo caso è più tecnica e approfondita per i singoli processi (KPA)
Ercole Colonese
(+39) 338 7248417
[email protected] - www.colonese.it
20
Grazie per l’attenzione
CMMI-Dev V.1.3 – Roma, 2012 Ercole Colonese