Manipolazione di dati

La metrica del software è uno standard di misura che contiene molte attività, il che implica un certo grado di misurazione. Il successo nella misurazione del software risiede nella qualità dei dati raccolti e analizzati.

Cosa sono i dati validi?

I dati raccolti possono essere considerati un buon dato, se possono fornire le risposte alle seguenti domande:

  • Are they correct? - Un dato può essere considerato corretto, se è stato raccolto secondo le regole esatte della definizione della metrica.

  • Are they accurate? - La precisione si riferisce alla differenza tra i dati e il valore effettivo.

  • Are they appropriately precise? - La precisione si occupa del numero di cifre decimali necessarie per esprimere i dati.

  • Are they consistent? - I dati possono essere considerati coerenti, se non mostrano una grande differenza da un dispositivo di misurazione all'altro.

  • Are they associated with a particular activity or time period? - Se i dati sono associati a una particolare attività o periodo di tempo, dovrebbe essere chiaramente specificato nei dati.

  • Can they be replicated?- Normalmente, le indagini come i sondaggi, i casi di studio e gli esperimenti vengono spesso ripetuti in circostanze diverse. Pertanto, i dati dovrebbero anche essere replicabili facilmente.

Come definire i dati?

I dati raccolti a scopo di misurazione sono di due tipi:

  • Raw data- Risultati di dati grezzi dalla misurazione iniziale di processi, prodotti o risorse. Ad esempio: scheda attività settimanale dei dipendenti di un'organizzazione.

  • Refined data - Risultati di dati raffinati dall'estrazione di elementi di dati essenziali dai dati grezzi per derivare i valori per gli attributi.

I dati possono essere definiti in base ai seguenti punti:

  • Location
  • Timing
  • Symptoms
  • Risultato finale
  • Mechanism
  • Cause
  • Severity
  • Cost

Come raccogliere i dati?

La raccolta dei dati richiede l'osservazione e la comunicazione umana. I responsabili, gli analisti di sistema, i programmatori, i tester e gli utenti devono registrare i dati delle righe sui moduli. Per raccogliere dati accurati e completi, è importante:

  • Mantieni le procedure semplici

  • Evita registrazioni non necessarie

  • Formare i dipendenti sulla necessità di registrare i dati e sulle procedure da utilizzare

  • Fornire i risultati dell'acquisizione e dell'analisi dei dati ai fornitori originali prontamente e in una forma utile che li assisterà nel loro lavoro

  • Convalida tutti i dati raccolti presso un punto di raccolta centrale

La pianificazione della raccolta dei dati prevede diversi passaggi:

  • Decidi quali prodotti misurare in base all'analisi GQM

  • Assicurati che il prodotto sia sotto il controllo della configurazione

  • Decidere esattamente quali attributi misurare e come derivare le misure indirette

  • Una volta che il set di metriche è chiaro e il set di componenti da misurare è stato identificato, elaborare uno schema per identificare ciascuna attività coinvolta nel processo di misurazione

  • Stabilire una procedura per la gestione dei moduli, l'analisi dei dati e la comunicazione dei risultati

La pianificazione della raccolta dei dati deve iniziare quando inizia la pianificazione del progetto. L'effettiva raccolta dei dati avviene durante molte fasi di sviluppo.

For example - Alcuni dati relativi al personale del progetto possono essere raccolti all'inizio del progetto, mentre altri dati raccolti come lo sforzo inizia all'avvio del progetto e continua attraverso il funzionamento e la manutenzione.

Come archiviare ed estrarre dati

Nell'ingegneria del software, i dati devono essere archiviati in un database e impostati utilizzando un Database Management System (DBMS). Un esempio di struttura del database è mostrato nella figura seguente. Questo database memorizzerà i dettagli di diversi dipendenti che lavorano in diversi reparti di un'organizzazione.

Nel diagramma sopra, ogni casella è una tabella nel database e la freccia indica la mappatura molti-a-uno da una tabella all'altra. Le mappature definiscono i vincoli che preservano la coerenza logica dei dati.

Una volta che il database è stato progettato e popolato con i dati, possiamo utilizzare i linguaggi di manipolazione dei dati per estrarre i dati per l'analisi.