
522bca778514f5889442e0c8c77efad7.ppt
- Количество слайдов: 75
Corso di Laurea Triennale in Ingegneria Informatica Qualità • Corso di Ingegneria del software • a. a. 2007/08 • Marina Mongiello Corso di Sistemi Informativi A. A. 2004 - 2005
Corso di Laurea Triennale in Ingegneria Informatica Corso di Sistemi Informativi Qualità del processo software A. A. 2004 - 2005
Sistemi Informativi DEE - Politecnico di Bari • • Contenuti Qualità di processo Sistemi di gestione della qualità (ISO 9001) Valutazione del processo software ISO/IEC TR 15504
Sistemi Informativi DEE - Politecnico di Bari Dal prodotto al processo • Qualità del processo necessari – – Organizzazione e diffusione interna Identificazione di prodotti intermedi e di momenti di verifica Riproducibilità dei risultati Accertamento della qualità • Disposizione al miglioramento
Sistemi Informativi DEE - Politecnico di Bari Qualità di processo • Definire il processo • Per controllarlo (e farlo controllare meglio) • Per descriverlo in maniera più convincente • Controllare il processo per migliorarlo • Efficacia: prodotti rispondenti ai requisiti • Efficienza: minori costi a pari qualità di prodotto erogata • Esperienza: apprendere dall’esperienza ( anche degli altri) • Strumenti di valutazione
Sistemi Informativi DEE - Politecnico di Bari Le norme ISO 9000 • Certificazione ISO 9001(metà anni ’ 90) • Per valutare • Per controllare • Non per scegliere • La famiglia della norme • 9000 fondamenti e glossario • 9001 sistema di gestione della qualità (SGQ) requisiti • 9004 guida al miglioramento dei risultati
Sistemi Informativi DEE - Politecnico di Bari Caratteristiche dell’SGQ • SGQ come funzione aziendale Direzione Sistema gestione qualità Settore, reparto, ecc. • Responsabilità • Gestire la qualità in azienda • Riferire alla direzione
Sistemi Informativi DEE - Politecnico di Bari Documentazione del SGQ Politica per la Q Manuale della Q Procedura Istruzioni operative Modello Piano della Q Linee guida
Sistemi Informativi DEE - Politecnico di Bari Il manuale della qualità • Il documento che definisce il sistema di gestione della qualità di un’organizzazione (ISO 9000) (visione strategica)
Sistemi Informativi DEE - Politecnico di Bari Caratteristiche del manuale • Caratteristiche richieste – Deve essere completo rispetto ai requisiti – Deve collegarsi al resto della documentazione del SGQ e delle procedure aziendali – Deve relazionare gli obiettivi di qualità alle strategie per ottenerli • Esprimere la politica aziendale rispetto alla qualità
Sistemi Informativi DEE - Politecnico di Bari I processi secondo ISO 9000 • Quattro categorie di processi • Responsabilità della direzione e gestione delle risorse • Realizzazione del prodotto • Misura, analisi e miglioramento • Processi di produzione • Processi di decisione e controllo
Sistemi Informativi DEE - Politecnico di Bari Il Pd. Q in pratica • Accertare la disponibilità di • • Analisi dei requisiti Architettura e soluzioni tecniche Pianificazione delle verifiche e delle prove Risultati delle verifiche e delle prove • Fornire modelli dei documenti • Accertare la tracciabilità di soluzioni a requisiti • Pianificare le attività
Sistemi Informativi DEE - Politecnico di Bari Valutazione del processo • Software Process Assessment & Improvement • • • Valutazione di un processo (software) Secondo regole e riferimenti precisi Subita da un’organizzazione Per ottenere un giudizio di maturità Per individuare azioni di miglioramento • CMM (Capability Maturity Model), ISO 15504, SPi. CE(Software Process Improvement Capability d. Etermination)
Sistemi Informativi DEE - Politecnico di Bari Modello SPA & I Processo Subisce Individua modifiche Stabilisce la bontà SPA-I Produce Miglioramento Valutazione Stimola
Sistemi Informativi DEE - Politecnico di Bari Capability Maturity Model (1987) • Commessa del Do. D (Deparment of Defence) al Software Engineering Institute of CMU • Iniziativa del committente • Modello per la valutazione uniforme dei fornitori • Capacità • Misura dell’affidabilità di un fornitore • Maturità • Acquisizione di un dato livello di capacità
Sistemi Informativi CMM: Il modello DEE - Politecnico di Bari • Verso il miglioramento continuo 5 4 3 2 1 Ripetibile Iniziale Pieno PDCA Plan, do, check, act Ottimizzante Controllato Definito SGQ completo SGQ orientato al processo SGQ orientato al prodotto SGQ inesistente
Sistemi Informativi DEE - Politecnico di Bari Limiti del CMM • Una stessa realtà aziendale può adottare pratiche poste a livelli diversi • Ma se non applica tutte le pratiche di un dato livello non può avanzare al livello superiore • Modello discreto e non continuo • Incapace di differenziare tra L e L* • Troppo focalizzato sulle pratiche (cosa si fa e come) • Insufficiente agli obiettivi ( perché lo si fa)
Sistemi Informativi DEE - Politecnico di Bari Altri strumenti • Pressman Process Advisor – Metodo basato su CMM • Trillium – Metodo proprietario della Bell • Tick-it – Metodo mirato ad accertare conformità con ISO 9001
Sistemi Informativi DEE - Politecnico di Bari Il progetto SPICE ( 1992) • Partecipanti al consorzio • ISO/EIC • SEI, Bell, Hp, Bt, Bootstrap, . . • Obiettivi • Definire uno standard per SPA & I ISO/EIC 15504 • Armonizzare gli standard esistenti (ISO/EIC 12207 e ISO 9001) • Approccio di progetto • Condurre sperimentazione di applicazioni in casi reali
Sistemi Informativi DEE - Politecnico di Bari ISO/EIC TR 15504 • Rapporto tecnico emesso nel 1998 • Organizzazione • TR di tipo 2 con forza di standard ad adozione volontari • Sottoposto a revisione ogni tre anni • • Introduzione Modello di riferimento conduzione di un assessment ( valutazione) Guida alla conduzione di un assessment Un modello per gli indicatori di valutazione Guida alla qualifica degli assessor Guida per il miglioramento Guida per la valutazione Glossario
Sistemi Informativi Dimensioni del processo DEE - Politecnico di Bari Dimensione del processo Dimensione delle capacità Base practices Generic practices Modello di riferimento
Sistemi Informativi DEE - Politecnico di Bari Strutturazione dei processi • Categorie, processi, componenti • Attività base non definite (da specializzare) Categoria Processi Componenti Customer 4 6 Engineering 2 7 Supplier 8 0 Management 4 0 Organization 6 3 Totali 24 16
Sistemi Informativi DEE - Politecnico di Bari Attributi di maturità Livello maturità Attributi 1. Attuato Esistono prodotti evidenti dell’esecuzione delle attività 2. Gestito 3. Definito 4. Predicibile 5. Ottimizzante Le attività sono pianificate e controllate Lo svolgimento delle attività è documentato I prodotti sono verificati Le procedure sono definite Le procedure sono adattate ai progetti Ruoli, competenze e responsabilità sono definiti Le attività e i risultati sono controllati quantitativamente La gestione delle attività è controllata quantitativamente I cambiamenti del processo sono valutati Lo studio per il miglioramento delle attività è un’attività costante
Sistemi Informativi DEE - Politecnico di Bari Obiettivi di una valutazione • Portatori di interesse • Destinatari dei risultati • Responsabili dei processi valutati • Responsabili delle attività di valutazione • Valutazione o miglioramento • Risultato esterno o interno • Valutazione formale o no (self-assessment) • Definizione della portata • Processi inclusi nella valutazione • Indicatori di valutazione
Sistemi Informativi DEE - Politecnico di Bari • • Riepilogo Qualità di processo Sistemi di gestione della qualità (ISO 9001) Valutazione del processo software ISO/EIC TR 15504
Sistemi Informativi DEE - Politecnico di Bari Riferimenti • ISO 9001: 2000, quality management systems - requirements • Software engineering measurements and analysis (SEMA) SEI, http: //www. sei. cmu. edu/sema • Spice, HTTP: // www. sqi. gu. edu. au/spice • ISO/EIC 15504, Information Technology-software process assessment, 1998.
Corso di Laurea Triennale in Ingegneria Informatica Qualità del software • Concetti generali Corso di Sistemi Informativi A. A. 2004 - 2005
Sistemi Informativi DEE - Politecnico di Bari • • Contenuti Qualità e gestione della qualità Qualità di prodotto Qualità del software Modelli della qualità del software
Sistemi Informativi DEE - Politecnico di Bari Qualità: Definizione • La capacità di un insieme di caratteristiche di un prodotto, sistema o processo, di soddisfare le esigenze dei clienti e degli altri portatori d’interesse (ISO 9000)
Sistemi Informativi DEE - Politecnico di Bari Caratterizzazioni • Punti di vista sulla qualità • Intrinseca: conformità ai requisiti ed idoneità all’uso • Relativa: soddisfazione del cliente • Quantitativa: livelli di qualità e sua misura • Gestione della qualità
Sistemi Informativi DEE - Politecnico di Bari Gestione della qualità: definizione • L’insieme delle attività coordinate per dirigere e controllare un’organizzazione rispetto alla qualità (ISO 9000)
Sistemi Informativi DEE - Politecnico di Bari Caratteristiche • Dimensioni della gestione della qualità • Pianificazione della qualità – Definizione di politica ed obiettivi (di qualità) • Controllo ed accertamento • Miglioramento
Sistemi Informativi DEE - Politecnico di Bari Pianificazione della qualità: definizione • Le attività della gestione della qualità mirate a definire gli obiettivi della qualità ed i processi e le risorse necessarie per conseguirli (ISO 9000)
Sistemi Informativi DEE - Politecnico di Bari Premesse • Premesse al controllo di qualità – Politiche e scelte strategiche (orizzontali) – Obiettivi del singolo progetto ( verticali) – Strumenti di controllo • Per verifica e gestione
Sistemi Informativi DEE - Politecnico di Bari Controllo della qualità: definizione • Le attività della gestione della qualità messe in atto affinché soddisfi i requisiti (ISO 9000)
Sistemi Informativi DEE - Politecnico di Bari Caratteristiche • Modalità e ambiti di controllo – Verifica e validazione finalizzate al controllo – Conoscenza ed analisi del dominio
Sistemi Informativi DEE - Politecnico di Bari Obiettivi e finalità • Verso l’esterno: fornire certezze al committente • Verso l’interno: fornire certezze alla direzione
Sistemi Informativi DEE - Politecnico di Bari Accertamento della qualità: definizione • Le attività della gestione messe in atto per accertare che i requisiti siano soddisfatti (ISO 9000)
Sistemi Informativi DEE - Politecnico di Bari Qualità di: – – Prodotto: bene o servizio Sistema: insieme di elementi correlati od interagenti Processo: attività correlate finalizzate alla realizzazione di obiettivi Organizzazione: struttura con funzioni ed amministrazione proprie
Sistemi Informativi DEE - Politecnico di Bari Classi di prodotti • Classificazione ISO 9000 – Tangibili • Hardware (es. computer, lavatrice, ecc) • Materiali (es. profilati, ecc) – Intangibili • Software (es. programmi o dati) • Servizi(es. formazione)
Sistemi Informativi DEE - Politecnico di Bari Requisiti: definizione • Un’esigenza o un’aspettativa dichiarata, comunemente intesa come implicita oppure obbligatoria (ISO 9000)
Sistemi Informativi DEE - Politecnico di Bari Linee guida per la qualità • Definire: • Cosa deve essere realizzato • Come verrà controllato • Controllare: • Per conoscere ed intervenire • Per dare/avere confidenza • Per migliorare i risultati
Sistemi Informativi DEE - Politecnico di Bari Il software • Applicazioni • Pacchetti (automazione aziendale) • Su commessa (sistema informativo aziendale) • Componenti • Librerie ( pacchetti) • Middleware (su commessa) • Software di base • Sistemi operativi (windows, linux) • Gestori di servizi(DB, browser)
Sistemi Informativi DEE - Politecnico di Bari • Servizi software Avviamento – Installazione configurazione – Popolamento/migrazione dati • Supporto agli utenti – Formazione – Assistenza all’uso • Gestione – Supporto e monitoraggio – Elaborazione dati – Manutenzione (evoluzione, adattamento, correzione)
Sistemi Informativi DEE - Politecnico di Bari Qualità certificata • Norme per i prodotti • • • Per tutelare il cliente rispetto all’uso o al valore di prodotti FCC federal communications commission CE consumer electronics OEM original equipment manufacturer DOC Carte dei servizi, . . • Norme per i processi • Requisiti di una funzione aziendale • Es. ISO 9001 per il sistema di qualità aziendale • La norma esprime requisiti comuni
Sistemi Informativi DEE - Politecnico di Bari Certificazione del software? • Esistono requisiti comuni? : solo entro un dominio prefissato • Troppe variabili • • Sistemi complessi e multiformi Contesti di applicazione diversi Dalla piccola azienda alla multinazionale Dal laboratorio astronomico allo shuttle • In generale fallisce la ricerca • Di insiemi comuni di requisiti • Di livelli qualitativi accettabili per tutti
Sistemi Informativi DEE - Politecnico di Bari Quali strumenti? • Seguire le linee guida precedenti – Definire cosa fare – Controllare • Analisi e definizione dei requisiti – Modelli per la qualità del software – Strumenti per la definizione dei sistemi – Metriche per definire livelli qualitativi • Controllo continuo del progetto – Rispetto dei vincoli contrattuali – Controllo e verifica delle attività e dei risultati
Sistemi Informativi DEE - Politecnico di Bari Modelli per la qualità del software – Strumenti per la gestione della qualità – Valutazione dei prodotti • Visione dell’utente problemi d’uso • Visione dello sviluppatore problemi tecnici • Visione della direzione problemi di costi – Un solo modello per committente e fornitori • Per uniformare la percezione della qualità • Per uniformare la valutazione della qualità
Sistemi Informativi DEE - Politecnico di Bari Caratteristiche del software • Legate all’uso • Visione del committente • La qualità è legata alla conveninza d’uso • Correttezza, affidabilità, efficienza, . . • Legate alla produzione • Visione del fornitore • La qualità è vista in prospettiva dei servizi e del riuso • Manutenibilità, perotabilità, riusabilità, . .
Sistemi Informativi DEE - Politecnico di Bari Modelli della qualità • Strategia tipica • Definizione di caratteristiche • Loro organizzazione in una struttura logica • Modello di Boehm (valore storico) • 22 caratterizzazioni di cui 11 “ primitive” • ISO/EIC 9126: 2001 • Software Engineering - Product Quality: Part 1: quality model • 7 caratteristiche principali- 31 sottocaratteristiche
Sistemi Informativi DEE - Politecnico di Bari ISO/EIC 9126: 2001 • Strumento di definizione e valutazione • Organizzazione gerarchica delle caratteristiche • Definizione di metriche • Visioni della qualità • Qualità interna • Qualità esterna • Qualità in uso • Misura della qualità (ISO/EIC 9126 -2, 3, 4) • Valutazione della qualità (ISO/EIC 14598)
Sistemi Informativi DEE - Politecnico di Bari Qualità nel ciclo di vita • Qualità obiettivo • Soddisfacimento dei requisiti: parzialmente implicita • Qualità richiesta • Sancita contrattualmente: esplicita • Qualità progettata • Qualità stimata • Qualità consegnata Responsabilità del committente Responsabilità del fornitore
Sistemi Informativi DEE - Politecnico di Bari • Caratteristiche di ISO/EIC 9126 7 caratteristiche principali 1. 2. 3. 4. 5. 6. 7. Funzionalità Affidabilità Usabilità Efficienza Qualità in uso Manutenibilità Portabilità Visione del cliente Visione del fornitore • Riusabilità (non ancora consolidata)
Sistemi Informativi Il processo di valutazione DEE - Politecnico di Bari Requisiti di qualità e vincoli di costo Selezione delle misure Interpretazione delle misure Criteri di accettazione Misurazione Valutazione Accettazione Prodotto - giudizio
Sistemi Informativi DEE - Politecnico di Bari • • • Riepilogo Qualità e gestione della qualità Qualità di prodotto Qualità del software Modelli della qualità del software Esempio: ISO/EIC 9126
Sistemi Informativi DEE - Politecnico di Bari Riferimenti • ISO 9000: 2000, Quality Management Systems. Fundamentals and vocabulary • ISO/EIC 9126: 2001, Information Technology - Software Product Quality- Part 1: Quality Model • ISO/EIC 14598: 2001, Information Technology- Software Product Evaluation
Corso di Laurea Triennale in Ingegneria Informatica Corso di Sistemi Informativi Metriche di prodotto per il software A. A. 2004 - 2005
Sistemi Informativi DEE - Politecnico di Bari Limiti del modello ISO 9126 • Soggettività e specializzazione: – La qualità viene giudicata attraverso il confronto degli oggetti e sulla base di criteri predefiniti • Occorre una definizione più precisa della qualità del software e un modo per ricavare misure quantitative della qualità: • Metriche di prodotto
Sistemi Informativi DEE - Politecnico di Bari • • Misurazione Metrica Indicatore Metriche di prodotto
Sistemi Informativi DEE - Politecnico di Bari Misura: definizione • Una misura fornisce un’indicazione quantitativa dell’ampiezza, della quantità, della dimensione, della capacità o della lunghezza di un determinato attributo di un prodotto o di un processo (Pressmann 2004)
Sistemi Informativi DEE - Politecnico di Bari Misurazione: definizione • L’atto di determinare una misura (Pressmann 2004)
Sistemi Informativi DEE - Politecnico di Bari Metrica: definizione • Una metrica è una misura quantitativa del grado con cui un sistema, un componente o un processo possiede un determinato attributo (IEEE Standard Glossary)
Sistemi Informativi DEE - Politecnico di Bari Indicatore: definizione • È una metrica o una combinazione di metriche fornisce indicazioni relative a un processo di sviluppo software, a un progetto software o al prodotto stesso
Sistemi Informativi DEE - Politecnico di Bari Sfida delle metriche tecniche • Non esiste una singola metrica che possa offrire una misura globale della complessità del software • Ideare misure di diversi attributi interni di un programma Ma: • Sono davvero valide? • Riflettono l’affidabilità a lungo termine e la qualità di un sistema informatico?
Sistemi Informativi DEE - Politecnico di Bari Misurazione del software orientato all’obiettivo • Paradigma GQM: goal/question/metric (Basili e Weiss 1984) • Identifica metriche significative per ogni parte del processo di sviluppo software
Sistemi Informativi DEE - Politecnico di Bari 1. 2. 3. Paradigma GQM Stabilire un obiettivo di misurazione esplicito specifico delle attività del processo o delle caratteristiche del prodotto che deve essere valutato Definire un insieme di domande cui occorre rispondere per ottenere l’obiettivo Identificare metriche ben formulate per aiutare a rispondere a queste domande
Sistemi Informativi DEE - Politecnico di Bari Modello di definizione dell’obiettivo • Analizzare … • Dal punto di vista di … • Nel contesto di …
Sistemi Informativi DEE - Politecnico di Bari • • Step del modello Definizione dell’obiettivo Formulazione delle domande Individuazione delle risposte Identificazione di metriche necessarie alla formulazione della risposta quantitativa
Sistemi Informativi DEE - Politecnico di Bari Metriche relative al prodotto • Metriche – Modello analitico – Modello progettuale – Relative al codice
Sistemi Informativi DEE - Politecnico di Bari Metriche per il modello concettuale • Basate su: – Funzionalità fornita – Dimensione del sistema – Qualità delle specifiche
Sistemi Informativi DEE - Politecnico di Bari • • Metriche dell’architettura Metriche a livello dei componenti • • Metriche per il modello progettuale Metriche di coesione Metriche di accoppiamento Metriche della progettazione dell’interfaccia Metriche specializzate relative al progetto orientato agli oggetti • • Orientate agli oggetti (Lorenz Kidd) Orientate alle classi (CK) Orientate alle classi (MOOD) MOOD
Sistemi Informativi DEE - Politecnico di Bari • • Metriche relative al codice sorgente Metriche di Halstead Metriche di complessità Metriche di lunghezza Metriche di collaudo Metriche sulle istruzioni e ramificazioni Metriche relative ai difetti Test dell’efficacia Metriche sul processo
Sistemi Informativi DEE - Politecnico di Bari Metriche per la progettazione orientata agli oggetti – Caratteristiche misurabili: • • • Dimensioni Complessità Accoppiamento Sufficienza Completezza Coesione Primitività Similarità Volatilità
Sistemi Informativi DEE - Politecnico di Bari Metriche CK • Definite da Chidamer e Keemer (1994) – – – Metodi pesati per classi Profondità dell’albero di ereditarietà Numero di figli Accoppiamento fra le classi di oggetti Risposte per classe Mancanza di coesione nei metodi
Sistemi Informativi DEE - Politecnico di Bari Metriche MOOD • fattore di ereditarietà dei metodi • fattore di accoppiamento – Connessioni esistenti fra gli elementi di un progetto orientato agli oggetti – CF=ΣiΣj is_client (Ci, Cj)/tc 2 -tc