Sviluppo del Software in Regime
di Qualita’
Una Introduzione
Mario Capurso
http://info.bazarinfo.info
Distribuzione dei costi del
Software - 1
50%
Produzione
Manutenzione
50%
Distribuzione dei costi del
Software - 2
40%
25%
Analisi e
Progettazione
Programmazione
Documentazione
Testing
20%
15%
Gli Errori del Software
•Il Millennium Bug: milioni di dollari di costo
•L’abbattimento dell’Airbus Iraniano nel 1989
•Il crollo della rete telefonica americana nel 1989
•Il Therac 25 e le overdosi di radiazioni-1985/87
•I problemi con gli Space Shuttle -1980/95
•Il sistema SAGE ed il lancio di missili nucleari: 1956/60
I Costi degli Errori
• Bank of America MasterNET: da 23 a 83 M$
• AllState Insurance: da 8 a 100 M$
• Airborne Self-Protection Jammer: 1B$ oltre il budget,
– 4 anni di ritardo e operativo marginalmente
• Los Angeles County: 18M$ di sistema, successivamente
– riscritto, produce danni per 10M$
• Blue Cross Blue Shield: sistema da 200M$ fa danni per
60M$ e fa fuggire 35 000 assicurati
L’aumento della complessita’ del
software
1982 - MS DOS 1.1 - 180 Kbytes
1987 - MS DOS 3.31 - 798 Kbytes
1991 - MS DOS 5.0 - 2 Mbytes
1994 - MS DOS 6.2 - 5.8 Mbytes
1993 - MS Windows 3.11 - 16.4 Mbytes non compressi
1995 - MS Windows 95 - 32.8 Mbytes compressi
1999 - MS Windows 98 SE - 109 Mbytes compressi
2000 - MS Windows 2000 - 412 Mbytes compressi
Il peso della complessità – Troppi
fattori da considerare
Il peso della complessità – Troppi
livelli informatici da padroneggiare
L’evoluzione del numero di
transistor nei processori - La
Legge di Moore - 1
La legge di Moore - 2
• La potenza di
un processore
raddoppia ogni
18 mesi a
parita’ di costo
Crisi del Software ed Ingegneria
del Software
• Difficolta’ di reggere il confronto con
l’hardware:
– Nella diminuzione dei prezzi
– Nella maturita’ come prodotto industriale
– Nella qualita’
• Necessita’ di metodi ingegneristici
paragonabili a quelli usati nello sviluppo
dell’hardware
Rapporto fra i costi di hardware e
software
Ingegneria
• “Studio e realizzazione delle tecniche con
cui si applicano le enunciazioni teoriche e
le norme di funzionamento di una
disciplina, allo scopo di evitare uno
sviluppo casuale e frammentario”
(Vocabolario Zingarelli)
Ingegneria e Qualita’ del
Software
• Qualita’ del Prodotto
• Qualita’ del Processo
• Qualita’ del Progetto
Ingegneria e Qualita’ sono i segni di una
Disciplina che matura
Esempio: Il Ciclo di Vita del Software usato
da Microsoft
Qualita’ del Processo - Capability
Maturity Model
• Modello di Riferimento
• Per migliorare il processo di sviluppo del
software
• Definisce cinque livelli di maturita’
• Usato negli Stati Uniti
• Obbligatorio per chi sviluppa per il
Dipartimento della Difesa
• In Europa, SPICE usa un approccio simile
I Livelli e le caratteristiche del
CMM
Livelli CMM e Aree chiave
Qualita’ del Processo - ISO 9001
• Standard ISO (Internazionale)
• In grado di certificare la qualita’ di un
processo
• Definisce due stati (Certificato/Non
Certificato)
• Usato a livello internazionale
• Obbligatorio per chi lavora per l’E.S.A. e
per enti che richiedono qualita’ certificata
il Sistema della Qualita’ in Italia
e l’ISO 9001
La famiglia di norme ISO 9001
La famiglia di norme - 2
Le norme da usare
Le ISO 9000 sono basate sul concetto
che ogni attività è realizzata mediante un
processo
CATEGORIE GENERALI DI
PRODOTTO (ISO 9000-1 par. 4.4)
Si identificano 4 categorie generali di prodotto:
• Hardware;
• Software;
• Materiali da processo continuo;
• Servizi.
SITUAZIONI DEL SISTEMA QUALITÀ (ISO 9000-1 par. 6)
Un fornitore può scegliere di utilizzare le ISO 9000 secondo
due approcci:
• “stimolato dalla direzione”,
• “stimolato dalle parti interessate”,
ISO 9001 e Qualita’del Processo
• Riferimento primario per la qualità: la soddisfazione
del cliente
• Il processo è il modo con cui un’organizzazione
soddisfa i suoi clienti
• La qualità dei processi è componente essenziale
• Obiettivo fondamentale per la qualità: non solo
conformità, ma anche miglioramento continuo
• La valutazione della qualità del processo non si limita
a chiedere se i processi sono definiti, documentati ed
attuati in conformità a quanto prescritto, ma chiede
se “i processi sono efficaci nel fornire i risultati attesi”
ASPETTI DELLA QUALITÀ (ISO
9000-1 par. 4.5)
La qualità del processo contribuisce alla qualità di un
prodotto attraverso la:
• Qualità nella definizione delle esigenze relative al
prodotto.
• Qualità nella progettazione del prodotto.
• Qualità nella conformità del prodotto al progetto.
• Qualità nel supporto al prodotto (lungo l’intero
ciclo di vita).
SITUAZIONI DEL SISTEMA QUALITÀ
(ISO 9000-1 par. 6)
Nel valutare l’offerta di un prodotto il cliente
considera dei fattori aggiuntivi:
• Qualità nello stato e strategia di mercato del
fornitore
• Qualità nello stato e strategia finanziaria del
fornitore
• Qualità nello stato e strategia di gestione delle
risorse umane
Progettazione di un processo ISO 9001 - 1
1.
2.
3.
4.
5.
6.
7.
Elenco delle principali attività dell’organizzazione, dei dati,
informazioni e documenti esistenti sugli stessi.
Analisi di tali attività e scelta tra i sistemi qualità ISO 9000 quello
più appropriato
Identificazione dei collegamenti tra il sistema qualità di riferimento
scelto e attività principali svolte.
Enunciazione della politica e degli obiettivi per la qualità.
Definizione attività, tappe e tempi per raggiungere tali obiettivi.
Identificazione e comunicazione al personale coinvolto dei loro ruoli
e compiti per lo sviluppo, attuazione, gestione e controllo del sistema
qualità.
Definizione di struttura e configurazione dei documenti per la
qualità.
Progettazione di un processo ISO 9001 - 2
8.
Definizione del processo per la preparazione delle procedure e del
manuale per soddisfare i requisiti del sistema qualità ISO 9000
9. prescelto.
10. Addestramento del personale e sperimentazione di tali procedure.
11. Utilizzazione delle informazioni di ritorno, anche attraverso delle
verifiche ispettive, per migliorare le attività e le procedure e
consolidare la documentazione.
12. Attuazione del sistema qualità, misurazione periodica dei risultati per
verificarne l’efficacia e l’efficienza del sistema stesso rispetto alla
politica ed obiettivi.
Clausola Iso 9001 e attivita’
Clausola Iso 9001 e attivita’ - 2
Clausola Iso 9001 e attivita’ - 3
Clausola Iso 9001 e attivita’ - 4
Scarica

Sviluppo del Software in Regime di Qualita