CMMI ed efficacia organizzativa

0

Introduzione

Sviluppare un buon software è difficile. Sviluppare software di qualità è un’arte!
Realizzare prodotti software di qualità a prezzi competitivi e nei tempi sempre più brevi richiesti dal mercato è un’impresa gigante, a volte impossibile, per organizzazioni di piccole o medie dimensioni, ma non solo. è un’attività complessa, tecnica e creativa allo stesso tempo, ad alto contenuto umano.
L’evoluzione rapida e continua delle tecnologie offre nuove possibilità di realizzazione, ma richiede l’aggiornamento continuo delle competenze tecniche e manageriali, l’adeguamento dei processi produttivi e gestionali. La capacità, in sintesi, di gestire la maggiore complessità.
Efficacia ed efficienza, affrontate nell’ordine espresso, sono dunque due fattori determinanti ai fini del conseguimento degli obiettivi di business e del successo aziendale. Qui si vuole descrivere in quale modo il CMMI [che è l’acronimo di «Capability Maturity Model Integration»]rappresenti un modello per il miglioramento dell’efficacia.
L’efficacia, in sintesi, rappresenta la capacità dell’organizzazione di realizzare prodotti e servizi capaci di mostrare la qualità attesa in termini di soddisfazione dei requisiti funzionali e prestazionali e di rispetto delle norme e standard applicabili.

Costellazione dei modelli CMMI

Il CMMI® [«Capability Maturity Model Integration»], messo a punto dal SEI® (Software Engineering Institute), è forse il modello più conosciuto per il miglioramento della maturità di un’organizzazione di prodotti software e servizi IT. Nella sua versione attuale (1.3) il CMMI è costituito da un insieme di modelli (”costellazione”):
CMMI for Development (CMMI-DEV): modello di riferimento per le organizzazioni che si occupano di sviluppo e di manutenzione di prodotti e di servizi. Si applica a diversi settori d’industria. Nasce per lo sviluppo software (SW-CMM) e poi si evolve fino al modello attuale.
CMMI for Service (CMMI-SVC): modello per le organizzazioni che si occupano di servizi veri e propri (ad esempio: servizi IT). Pur mantenendo lo schema base del modello CMMI include le componenti principali del modello ITIL per la gestione dei servizi IT.
CMMI for Acquisition (CMMI-ACQ): modello per l’acquisizione di beni e servizi.

Livelli di maturità

I gradi di maturità che un’organizzazione può raggiungere lungo il percorso di miglioramento prevedono diversi livelli secondo l’approccio seguito. Quello scalare (staged), ad esempio, prevede cinque livelli di maturità (maturity level), mentre l’approccio continuo (continuous) prevede quattro livelli di capacità (capacity level).
Non si può raggiungere un livello di maturità senza prima aver maturato quelli sottostanti. Ciascun livello di maturità richiede che siano consolidati alcune pratiche e fatte diventare parte integrante della cultura dell’organizzazione (”istituzionalizzazione dei processi”). Ciò richiede che ogni processo sia definito e documentato, divulgato e corredato della formazione necessaria, adottato in maniera completa e precisa, valutato nei risultati prodotti e migliorato correggendone gli errori o aumentandone le prestazioni. A tal fine sono definiti opportuni indicatori e relative metriche (KPI, Key Performance Indicator) che ne permettano la misurazione oggettiva.
I vari livelli definiscono le capacità crescenti che l’organizzazione deve acquisire per rafforzare la propria ”efficacia” produttiva. A tal fine, ciascun livello prevede ”aree di processo” (KPA, Key Process Area), in una sorta di gerarchia, che conduce l’organizzazione verso i propri obiettivi di miglioramento (vedere Tabella n. 1).

> Tabella 1. Aree di processo (KPA) nei vari livelli di maturità

> Tabella 1. Aree di processo (KPA) nei vari livelli di maturità

Efficacia dei processi

I processi sono il cuore del modello CMMI. La loro efficacia e la loro efficienza sono dunque determinanti ai fini del raggiungimento degli obiettivi dell’organizzazione.
La visione che il modello CMMI definisce per il ”processo” è illustrata nella figura 1 che mostra le tre dimensioni critiche per un’organizzazione tipica:
persone, con le competenze, l’addestramento e la motivazione;
procedure e metodi, che definiscono le relazioni tra i task da svolgere;
strumenti e apparecchiature, a supporto delle attività produttive e gestionali.
Per valutare la qualità del processo nel suo complesso sono definiti tre attributi:
Performance: si tratta della misura dei risultati ottenuti dall’applicazione del processo e della relativa valutazione a consuntivo del grado di raggiungimento dei risultati attesi (o scostamento da essi). Gli indici si riferiscono dunque alla qualità del prodotto realizzato o del grado di raggiungimento degli obiettivi del progetto (ad esempio: difettosità del software, copertura dei requisiti, rispetto dei tempi di consegna, e così via).

> Figura 1. Dimensione del processo CMMI

> Figura 1. Dimensione del processo CMMI

Maturity: è la valutazione del livello di padronanza e controllo che l’organizzazione ha del processo. Misura quindi l’efficacia del processo in termini di sua definizione, estensione e precisione con cui le fasi e le attività previste sono esplicitamente definite, seguite e controllate. La metrica include la capacità dell’organizzazione di migliorare il processo. La valutazione è svolta a fronte dell’esito delle attività di auditing interno effettuate dalla funzione Assicurazione Qualità (ad esempio: numero di processi auditati, numero di non conformità rilevate, e così via).
Capability: misura l’insieme dei risultati che un processo consente di conseguire. La metrica esprime dunque la potenzialità del processo consentendo di effettuare stime più accurate e produrre piani più realistici di un progetto. Si tratta quindi di una metrica più evoluta da sviluppare dopo aver consolidato le due precedenti (ad esempio: grado di precisione di una tecnica di stima rispetto ad altre, produttività media del gruppo di lavoro utilizzando i processi definiti in specifici ambienti di sviluppo, e così via).
Migliorare la qualità del prodotto realizzato o del servizio erogato significa agire sui processi e migliorarne la loro efficacia. Migliorare l’efficacia di un processo comporta dunque misurare la qualità dei risultati conseguiti e agire sugli elementi che li hanno prodotti: competenze delle persone coinvolte, task svolti, controlli eseguiti, verifiche e validazioni effettuate, metodi e tecniche adoperati, strumenti utilizzati.
In un’organizzazione sono definiti processi di tipologia diversa: gestionali, produttivi e di supporto. CMMI definisce una sorta di gerarchia dei processi, considerando prioritario lo sviluppo dei processi gestionali per poi aggredire quelli produttivi e infine quelli di maggiore valore organizzativo (vedere Tabella n. 1).

Livelli di maturità organizzativa e relativa efficacia

Primo livello di maturità (Initial).
Descrive semplicemente lo stato di partenza di molte organizzazioni dove, generalmente, i processi sono ad hoc e caotici. I successi raggiunti dipendono esclusivamente dalla competenza e dall’eroismo delle persone e non dall’utilizzo di processi consolidati. Pur tuttavia, tali organizzazioni possono anche realizzare buoni prodotti e servizi. Non possono prevedere, al contrario, i risultati finali e spesso non riescono a rispettare i tempi di consegna ed il budget. Esse tendono inoltre a sottovalutare gli impegni e ad assumersene più di quanti ne possano rispettare, sono indotte ad abbandonare i processi nei momenti di crisi e non sono in grado di ripetere i successi ottenuti in precedenza.

Livello di maturità 2 (Managed).
L’organizzazione deve saper ”gestire” le attività. L’efficacia è determinata, a questo livello, dalla capacità di gestire. In particolare, i progetti sviluppati devono assicurare che i requisiti siano gestiti lungo l’intero ciclo di vita. I processi gestionali sono pianificati, eseguiti, misurati e controllati. I processi sono seguiti anche in condizioni di stress o di particolare criticità. è il processo che guida e non l’emotività dettata dalla situazione contingente. Lo stato degli output prodotti deve essere visibile al management.
Gli impegni sono stabiliti tenendo conto di tutte le parti coinvolte (stakeholder) e da esse rivisti, rivedendo e controllando gli artefatti ed i servizi per verificare che soddisfino i propri requisiti, gli standard e gli obiettivi. Occorre perciò implementare prevalentemente i processi per la gestione dei requisiti (REQ), la pianificazione degli interventi (PP), il monitoraggio e il controllo dei progetti (PMC), la gestione dei fornitori (SAM).
Particolare attenzione occorre porre al processo per la misurazione e l’analisi delle perfomance (MEA), all’assicurazione della qualità del prodotto e del processo (PPQA) e alla gestione della configurazione (CM). Nel livello 2 di maturità i processi possono essere definiti anche per singole aree di business o di progetto.
Nell’organizzazione possono perciò coesistere diverse versioni di uno stesso processo.

Livello di maturità 3 (Defined).
A questo livello l’efficacia aumenta in quanto i processi sono definiti per l’intera organizzazione e costituiscono uno standard. I processi sono utilizzati da tutti e migliorati con regolarità nella loro efficacia ed efficienza. Il management stabilisce gli obiettivi dei processi in base a quelli dell’organizzazione e ne assicura il controllo. La caratteristica più saliente del «livello di maturità 3» è quella di stabilire processi comuni per l’intera organizzazione e linee guida per la loro personalizzazione, se necessario, nei diversi progetti. I processi indicati dal modello per garantire la maggiore efficacia sono relativi alla parte produttiva – sviluppo dei requisiti (RD), sviluppo della soluzione tecnica (TS), integrazione del prodotto (PI), verifica e validazione (VER, VAL), gestione dei rischi (RSKM) -, alla definizione e focalizzazione del processo (OPD, OPF), alla formazione (OT) e alla fase decisionale e all’analisi e risoluzione dei problemi (DAR).

Livello di maturità 4 (Quantitatively Managed).
Un ulteriore passo verso il miglioramento dell’efficacia è fornito da questo livello dove l’organizzazione definisce i processi o sottoprocessi che maggiormente contribuiscono alle performance generali e li controlla accuratamente utilizzando tecniche statistiche o altre tecniche quantitative. Gli obiettivi quantitativi stabiliti per valutare la qualità e le performance dei processi costituiscono i criteri utilizzati per la gestione dei processi stessi. Tali obiettivi indirizzano le necessità del cliente, degli utenti finali, dell’organizzazione e dei responsabili della gestione dei processi. I processi sono misurati e valutati nelle loro performance tramite la raccolta e l’analisi statistica dei dati delle misurazioni effettuate sui risultati ottenuti. Eventuali variazioni dai valori attesi sono analizzate e le cause rimosse con opportune azioni correttive che ne prevengano il ripetersi. Le misure sulle performance dei processi sono memorizzate in un apposito archivio in modo da supportare con i fatti il processo decisionale dell’organizzazione. La caratteristica più saliente del livello di maturità 4 è quello di permettere una previsione dei risultati dei processi con sufficiente accuratezza a seguito del controllo statistico effettuato. A questo livello sono richiesti solo due processi: gestione delle prestazione dell’organizzazione (OPP) e gestione quantitativa dei progetti (QPM).

Livello di maturità 5 (Optimizing).
Un ultimo miglioramento dell’efficacia organizzativa è raggiunto dall’implementazione dei processi previsti da questo livello in base alla comprensione quantitativa delle ”cause comuni” delle varianze statistiche sui risultati dei processi. Il miglioramento continuo delle performance dei processi è raggiunto tramite azioni incrementali ed innovative delle tecnologie utilizzate. Gli obiettivi di miglioramento dei processi sono stabiliti in base agli obiettivi di business dell’organizzazione. Essi sono quindi definiti, misurati e revisionati di continuo per riflettere eventuali cambiamenti negli obiettivi di business dell’organizzazione. La caratteristica più saliente del livello di maturità 5 consiste nel tipo di varianza statistica indirizzata dalle azioni di miglioramento dei processi. Nel livello di maturità 4 sono indirizzate le ”cause speciali” che producono varianze sui processi e ne impediscono la predicibilità statistica dei risultati. Nel livello di maturità 5 sono indirizzate le ”cause comuni” e sono modificati i processi stessi per migliorarne le performance e mantenere la predicibilità dei risultati. Anche a questo livello sono richiesti solo due processi: gestione delle prestazioni dell’organizzazione (OPM) e analisi delle cause e loro risoluzione (CAR).

The SEI’s CMMI is a maturity model including best practices to implement and evaluate the effectiveness of the processes of an organization for the purpose of delivering products and services that are of higher quality. The three dimensions of the process are: people, procedures and methods, tools and equipments. The effectiveness of the organization then increases with the increase of the maturity of the process areas (KPA) on progressive levels.

ERCOLE COLONESE

Consulente, Socio AICQ-ci; Membro del Comitato Qualità del software e dei servizi IT
ercole@colonese.it
Share.

Comments are closed.