LA QUALITA' DEL SOFTWARE FILONZI ANDREA 5A

La qualità del software è la misura di un prodotto software in cui deve soddisfare un certo numero di aspettative rispetto sia al suo funzionamento sia alla sua struttura interna.

ISO/IEC 9001 Sistema di gestione per la qualità

La famiglia di norme ISO 9000 identificano una serie di Linee Guida che specificano i requisiti per realizzare in un organizzazione un sistema di gestione della qualità. Il fine è quello di impostare i processi aziendali per migliorare la realizzazione del prodotto ed incrementare la soddisfazione del cliente. L'unica norma certificabile della famiglia ISO 9000 è la ISO 9001:2008 (Sistemi di gestione della qualità-Requisiti). Gli obiettivi principali di queste norme, nel complesso riguardano l'aspetto tecnico-organizzativo e di marketing. Nel primo caso esse forniscono un gruppo di regole concettuali per migliorare i processi produttivi; nel secondo caso invece indicano come ottenere la fiducia del cliente nei confronti delle organizzazioni che dimostrano di applicare bene le regole. La ISO 9001 definisce per ogni processo "cosa" bisogna fare da un punto di vista manageriale e organizzativo per ottenere la qualità aziendale.

ISO/IEC 12207 Ciclo di vita dei processi software

Un software ha un suo ciclo di vita ovvero una serie di fasi che ne descrivono l'evoluzione della sua nascita fino al suo abbandono. Per i prodotti software il ciclo di vita viene formalizzato nel documento fondamentale ISO/IEC 12207:2008 (Ingegneria del software- Ciclo di vita dei processi). La parte più significativa di un prodotto software è il processo di generazione del software. I processi principali del ciclo di vita sono:

  • Processo di Acquisizione: ha il compito di soddisfare la richiesta del cliente attraverso un buon prodotto software.
  • Processo di Fornitura: ha il compito di scrivere un piano di progetto che descriva le varie tappe concordate con il cliente.
  • Processo di Sviluppo: consiste nella realizzazione del prodotto software e termina con il rilascio.
  • Processo d'Uso : consiste nel installare e configurare il prodotto software.
  • Processo di Manutenzione: consiste nelle modifiche al prodotto, per correggere errori, migliorare prestazioni o aggiornare.
  • Processo di Dismissione: consiste nel processo necessario per disinstallare il software o cambiarlo terminato il suo ciclo di vita.

ISO/IEC 9126 Modello della qualità del software

Questo modello definisce le varie caratteristiche della qualità del software. Il documento di certificazione si compone di quattro parti fondamentali, la prima delle quali indica il modello di riferimento basato su tre punti di vista in merito ai quali deve essere presa in considerazione la qualità del software: qualità esterne, qualità interne e qualità d'uso.

ISO/IEC 9126-1 "Il modello delle qualità del software"

  1. Quando si parla di qualità esterne di un prodotto software si intende l'insieme delle funzionalità che offre (cioè cosa fa), le sue prestazioni in relazione all'ambiente in cui opera.
  2. Per qualità interne di un prodotto software si intende la proprietà del software, misurabili direttamente sul codice sorgente.
  3. Per qualità d'uso di un prodotto software si intende il livello con cui il programma si dimostra utile all'utente, sicuro, affidabile.

Per ognuno di questi aspetti il documento ne specifica i componenti misurabili.

Le caratteristiche interne ed esterne :

  1. Funzionalità: capacità del software di fornire le funzioni per cui è stato realizzato;
  2. Affidabilità: capacità di mantenere un determinato livello di prestazioni anche in condizioni impreviste;
  3. Usabilità: capacità del software di essere compreso facilmente utilizzato e configurato;
  4. Efficienza: capacità di compiere le funzioni nel minor tempo possibile;
  5. Manutenibilità: capacità del software di essere modificato , corretto;
  6. Portabilità: capacità del software di adattarsi a diversi ambienti tecnologici.

Le caratteristiche in uso sono:

  1. Efficacia: capacità di consentire all'utente di ottenere i risultati previsti con precisione;
  2. Produttività: capacità di ottenere un livello di risorse nel minor tempo possibile e a bassi costi;
  3. Sicurezza: capacità di fornire un livello accettabile di rischio per i dati e persone.
  4. Soddisfazione: grado di risposta positiva dell'utente dopo aver utilizzato il prodotto software.

ISO/IEC 9126-2 "Le metriche per la misurazione delle qualità esterne".

ISO/IEC 9126-3 "Le metriche per la misurazione delle qualità interne".

ISO/IEC 9126-4 "Le metriche per la misurazione delle qualità d'uso"

LA MISURAZIONE DEL SOFTWARE

Per determinare la qualità del software è necessario avere dei parametri di valutazione. Un parametro a sua volta vuole che il prodotto sia misurabile e quindi possegga una unità di misura. In poche parole per misurare un prodotto bisogna isolare le caratteristiche di base, per ciascuno fornire una metriche e quindi effettuare le misurazioni. Solo a questo punto la qualità può essere valutata confrontando i valori misurati con relativi valori soglia che rappresentano gli obiettivi di qualità richiesta.

Metriche per il software : LOC

Le metriche sono tecniche specifiche per stabilire dei sistemi di misurazione efficienti per i prodotti software. Le tecniche di misurazione del software sono di tre tipi: dimensionali, strutturali e funzionali. Una tecnica di misurazione dimensionale si limita a calcolare la quantità , cioè la lunghezza di un programma software. In questo caso la metrica più diffusa è detta LOC (Lines Of Code). Questa tecnica conta le linee di codice presenti nei sorgenti di un progetto software. Questa misurazione è utilizzata per derivare altri attributi , per esempio la probabilità di presenze di errori nel programma, il tempo di realizzazione.

Metriche per il software : numero ciclomatico

Una metrica di tipo strutturale si occupa di misurare un programma software dal punto di vista della sua logica interna. Questa metodo più utilizzato viene chiamato numero ciclomatico introdotto nel 1976. La metrica di questo metodo è svincolata dal linguaggio utilizzato e considera il grado di complessità di un codice sorgente in modo inversamente proporzionale alla sua qualità: più il suo numero ciclomatico è alto, più la qualità del relativo software è bassa, dato che un codice sorgente più complesso è più vulnerabile agli errori. Dato un programma nella sua forma sorgente è possibile calcolare quanti percorsi logici può seguire il flusso delle istruzioni tenendo in considerazione i punti in cui contiene le strutture di controllo condizionali. Se un programma è strutturato, può essere ridotto ad un grafo diretto o di controllo di flusso. Il grafo conterrà i blocchi base de diagramma considerati nodi del grafo e gli archi indicheranno i cammini logici del grafo. Il conteggio dei cammini è il numero cilomatico.

Metriche per il software: Function Point

Una metrica di tipo funzionale si occupa di misurare un programma software in base alle funzionalità che offre all'utente che deve utilizzarlo. In questo caso la metrica si occupa di cosa deve fare il programma. Questo metodo offre un gran vantaggio: le metriche funzionali possono essere calcolate anche senza aver sviluppato il progetto software, cioè anche in fase i analisi. La metrica funzionale più adottata in assoluto è la Function Point Analysis. Un'altra caratteristica importante di questa metrica è che consente di calcolare la dimensione del software dedicato alla manutenzione di un progetto esistente.

Gli obiettivi dell'analisi dei function point sono:

  • misurare le funzionalità che l'utente riceve e richiede;
  • misurare i risultati dello sviluppo e/o la manutenzione del software indipendentemente dalla tecnologia utilizzata;
  • fornire una misura che sia coerente tra progetti e produttori differenti.

BILIOGRAFIA

  • Manuale Cremonese Informatica e Telecomunicazione - Zanichelli;
  • Ollari Meini Formichi - Gestione progetto e organizzazione d_impresa

SITORAFIA

  • http://www.colonese.it/00-Manuali_Pubblicatii/07-ISO-IEC9126_v2.pdf
  • http://www.federica.unina.it/ingegneria/ingegneria-software-ii/qualita-prodotto-software/
  • https://www.youtube.com/watch?v=Gc5Bcdsaejs
Created By
Andrea Filonzi
Appreciate

Report Abuse

If you feel that this video content violates the Adobe Terms of Use, you may report this content by filling out this quick form.

To report a Copyright Violation, please follow Section 17 in the Terms of Use.