Misure oggettive e soggettive
41 Questions
0 Views

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

In che modo l'esperienza influisce sulle scale di misurazione?

  • L'esperienza riduce la necessità di misurazioni oggettive, rendendo sufficienti le valutazioni soggettive.
  • L'esperienza semplifica le scale di misurazione, riducendo il numero di parametri da considerare.
  • L'esperienza può portare a cambiamenti nelle scale di misurazione, evolvendo da scale inferiori a scale superiori che forniscono maggiori informazioni. (correct)
  • L'esperienza non ha alcun impatto sulle scale di misurazione, che rimangono statiche nel tempo.

Quale delle seguenti affermazioni descrive meglio una misura oggettiva?

  • Una misura che richiede un modello descrittivo per limitare la soggettività.
  • Una misura influenzata dall'opinione del misuratore e strettamente legata al contesto.
  • Una misura indipendente dal misuratore, rilevata in modo oggettivo sull'entità misurata. (correct)
  • Una misura che varia significativamente tra diversi misuratori.

Come si può ridurre la soggettività nelle misure soggettive?

  • Utilizzando scale di misurazione più ampie e complesse.
  • Definendo e associando un modello descrittivo alla metrica, con descrizioni testuali per ogni valore della scala. (correct)
  • Aumentando il numero di misuratori coinvolti nel processo.
  • Eliminando completamente le misure soggettive e utilizzando solo misure oggettive.

Quale tra i seguenti rappresenta un esempio di misura oggettiva?

<p>Il tempo di sviluppo di un progetto software. (D)</p> Signup and view all the answers

Considerando la scala di criticità dei requisiti (1-5), quale delle seguenti descrizioni rappresenta il livello '4' (importante)?

<p>Importante (impatto su diversi utenti e determina conseguenze se non rispettato). (A)</p> Signup and view all the answers

Quale dei seguenti non rappresenta uno scopo fondamentale della misurazione del software e dell'interpretazione dei dati raccolti?

<p>Comprendere le dinamiche interne dei team di sviluppo. (D)</p> Signup and view all the answers

In che modo le misurazioni contribuiscono alla fase di 'Comprendere' nello sviluppo software?

<p>Aiutando a valutare lo stato attuale e stabilire baseline per obiettivi futuri. (C)</p> Signup and view all the answers

Qual è il ruolo delle baseline (valori soglia) nel contesto della misurazione per 'Controllare' i processi software?

<p>Servono come riferimento per valutare scostamenti e prevedere risultati, permettendo interventi correttivi. (A)</p> Signup and view all the answers

Quale delle seguenti azioni rappresenta un esempio di 'Misurazione per Controllare' in un progetto software?

<p>Monitorare il numero di bug risolti per settimana e confrontarlo con le previsioni per adeguare le risorse. (A)</p> Signup and view all the answers

Come l'analisi dei dati storici memorizzati nei database aziendali contribuisce al controllo della qualità dei processi software?

<p>Facilita l'identificazione di colli di bottiglia nei processi e assicura il mantenimento degli standard di qualità. (A)</p> Signup and view all the answers

In che modo la misurazione del software rende più visibili gli aspetti del processo e del prodotto?

<p>Offrendo una migliore comprensione delle relazioni tra le attività e le entità che hanno un impatto sul progetto. (D)</p> Signup and view all the answers

Cosa implica la determinazione delle relazioni tra le variabili di processo nella misurazione per il controllo?

<p>La comprensione di come le diverse attività influenzano i risultati del progetto, permettendo di prevedere e apportare modifiche informate. (A)</p> Signup and view all the answers

Oltre alla comprensione, quale altro scopo cruciale persegue la misurazione del software?

<p>Il controllo dei processi in corso. (C)</p> Signup and view all the answers

Perché è importante stabilire delle baselines (valori soglia) nella misurazione del software?

<p>Per avere un punto di riferimento per valutare i progressi e fissare obiettivi futuri. (A)</p> Signup and view all the answers

Qual è la principale conseguenza della mancanza di misurazioni rigorose e frequenti nello sviluppo del software?

<p>rende difficile valutare oggettivamente l'affidabilità del software e l'efficacia delle nuove tecnologie di sviluppo. (A)</p> Signup and view all the answers

Perché è fondamentale misurare e registrare le caratteristiche sia dei progetti software di successo che di quelli fallimentari?

<p>Per fornire una base per l'analisi, l'identificazione dei problemi e l'applicazione di azioni correttive mirate, migliorando i risultati futuri. (D)</p> Signup and view all the answers

Quale delle seguenti affermazioni rappresenta meglio il contributo della misurazione nel contesto dello sviluppo del software secondo Tom DeMarco?

<p>Le misurazioni accurate forniscono la base per la previsione e il controllo dei progetti software, consentendo interventi tempestivi. (D)</p> Signup and view all the answers

In che modo l'assenza di un approccio rigoroso alla misurazione del software influenza la capacità di studiare e replicare i risultati in ambienti diversi?

<p>Rende impossibile confrontare i risultati ottenuti, impedendo la valutazione oggettiva e la generalizzazione delle conclusioni. (A)</p> Signup and view all the answers

Quale tra le seguenti opzioni descrive meglio l'impatto dell'utilizzo di evidenze aneddotiche invece di dati empirici nello sviluppo del software?

<p>Aumenta il rischio di investire in tecnologie inefficaci, basandosi su impressioni soggettive e non su prove concrete. (B)</p> Signup and view all the answers

Come influisce la mancanza di chiarezza sui dettagli delle misurazioni (quali entità sono misurate, quali sono i valori di base) sulla loro utilità?

<p>Rende le misurazioni difficili da interpretare e da applicare, limitandone il valore per il miglioramento del progetto. (A)</p> Signup and view all the answers

In quale modo la pratica infrequente, incoerente e incompleta della misurazione influisce sulla capacità di migliorare i processi di sviluppo del software?

<p>Rende difficile trarre conclusioni significative e implementare miglioramenti basati su dati affidabili. (D)</p> Signup and view all the answers

Quale dei seguenti è l'obiettivo principale del monitoraggio della complessità dei moduli nel contesto dello sviluppo del software?

<p>Identificare i moduli che richiedono attenzione a causa della loro elevata complessità, rispetto a valori di soglia predefiniti. (A)</p> Signup and view all the answers

In che modo la misurazione supporta il miglioramento dei processi e dei prodotti?

<p>Fornisce dati oggettivi per valutare le prestazioni e identificare trend nel tempo, incoraggiando il miglioramento basato sui risultati. (D)</p> Signup and view all the answers

Qual è l'utilità principale delle misure raccolte durante lo sviluppo del software, oltre alla valutazione del processo?

<p>Individuare le aree problematiche che richiedono azioni di miglioramento. (C)</p> Signup and view all the answers

Quale delle seguenti affermazioni descrive meglio il ruolo dei modelli di stima dei costi e dell'effort (come COCOMO e SLIM) nello sviluppo del software?

<p>Sono strumenti utilizzati dai manager per prevedere i costi di progetto durante le fasi iniziali del ciclo di vita del software. (A)</p> Signup and view all the answers

Nei modelli di stima dei costi e dell'effort, come viene tipicamente espresso l'effort?

<p>Come una funzione di una o più variabili, come la dimensione del software o la complessità. (C)</p> Signup and view all the answers

Considerando l'importanza della misurazione nel miglioramento dei processi, quale sarebbe la conseguenza più probabile di un'azienda che non adotta pratiche di misurazione efficaci?

<p>Difficoltà nell'identificare aree di miglioramento e ottimizzazione dei processi, portando a inefficienze e potenziali problemi di qualità. (C)</p> Signup and view all the answers

Un'azienda sta sviluppando un nuovo software e decide di implementare un sistema di misurazione dettagliato. Quale tra le seguenti metriche sarebbe la più utile per valutare l'efficacia delle attività di testing?

<p>Numero di difetti trovati durante i test rispetto al numero totale di difetti stimati, insieme alla loro gravità e priorità. (A)</p> Signup and view all the answers

Nell'ambito della stima dei costi di un progetto software, un project manager decide di utilizzare il modello COCOMO II. Quale tra i seguenti fattori influenzerebbe maggiormente la stima dell'effort secondo questo modello?

<p>La complessità del software, la dimensione del codice sorgente e l'esperienza del team di sviluppo. (D)</p> Signup and view all the answers

Un team di sviluppo software sta riscontrando problemi di qualità del codice e decide di adottare misure per migliorare la situazione. Quale delle seguenti azioni sarebbe la più efficace per monitorare e migliorare la qualità del codice nel tempo?

<p>Implementare revisioni del codice regolari, analisi statica del codice e monitoraggio delle metriche di complessità del codice. (C)</p> Signup and view all the answers

Immagina di essere un manager responsabile di un progetto software con un budget limitato. Stai considerando l'implementazione di pratiche di misurazione avanzate. Quale tra i seguenti argomenti sosterrebbe meglio l'investimento in tali pratiche?

<p>Le pratiche di misurazione avanzate possono aiutare a identificare inefficienze, ottimizzare i processi e prevenire costosi difetti, portando a un ritorno sull'investimento a lungo termine. (A)</p> Signup and view all the answers

Quale delle seguenti affermazioni relative all'applicazione di funzioni statistiche a diversi tipi di scale di misurazione è più precisa?

<p>La moda è una funzione statistica significativa per tutti i tipi di scale: nominali, ordinali, a intervalli e di rapporto. (B)</p> Signup and view all the answers

Considerando una lista di valori numerici, quale delle seguenti affermazioni descrive correttamente la relazione tra media, mediana e moda?

<p>La mediana è il valore centrale della lista ordinata, la moda è il valore più frequente, e la media è la somma dei valori divisa per il numero di valori. (D)</p> Signup and view all the answers

In quale contesto la mediana sarebbe considerata una misura valida di tendenza centrale?

<p>Nella valutazione della comprensibilità del codice, dove i livelli di comprensibilità sono ordinati da 'Banale' a 'Incomprensibile'. (D)</p> Signup and view all the answers

Quale scala di misurazione è più appropriata per raccogliere dati sulla soddisfazione del cliente in cui le opzioni di risposta sono 'Molto soddisfatto', 'Soddisfatto', 'Neutro', 'Insoddisfatto' e 'Molto insoddisfatto'?

<p>Ordinale (C)</p> Signup and view all the answers

Se si desidera analizzare la relazione tra il numero di ore dedicate allo sviluppo di una funzionalità software e il numero di bug riscontrati, quale scala di misurazione sarebbe più appropriata per il numero di ore?

<p>Di rapporto (D)</p> Signup and view all the answers

Supponiamo di avere una serie di misurazioni sulla complessità del codice in diversi moduli software, e che queste misurazioni siano su una scala ordinale. Quale delle seguenti statistiche descrittive sarebbe più appropriata utilizzare per riassumere la tendenza centrale di questi dati?

<p>La mediana (B)</p> Signup and view all the answers

Un team di sviluppo software sta valutando l'usabilità di una nuova interfaccia utente. Viene chiesto a diversi utenti di valutare l'interfaccia su una scala da 1 a 7, dove 1 rappresenta 'Estremamente difficile da usare' e 7 rappresenta 'Estremamente facile da usare'. Quale tipo di scala di misurazione è più appropriato per questa valutazione?

<p>Ordinale (B)</p> Signup and view all the answers

In un progetto di sviluppo software, si raccolgono dati sul tipo di difetto riscontrato (ad esempio, 'Errore di sintassi', 'Errore di logica', 'Errore di interfaccia'). Quale scala di misurazione è più appropriata per classificare questi tipi di difetto?

<p>Nominale (C)</p> Signup and view all the answers

Quale delle seguenti funzioni statistiche è universalmente applicabile indipendentemente dal tipo di scala di misura utilizzata?

<p>Moda (C)</p> Signup and view all the answers

Supponendo che tu stia analizzando i dati relativi al numero di linee di codice (LOC) in diversi moduli di un software, quale scala di misurazione è più appropriata per rappresentare queste informazioni e quali operazioni matematiche sono valide su tali dati?

<p>Scala di rapporto; si possono calcolare sia differenze sia rapporti significativi, e lo zero ha un significato reale. (B)</p> Signup and view all the answers

Flashcards

Misurazione nei database aziendali

Usare dati storici aziendali per monitorare i processi e mantenere la qualità.

Scopi della misurazione software

Comprendere, controllare e migliorare i processi software.

Misurare per comprendere

Valutare la situazione attuale e stabilire valori di riferimento per obiettivi futuri.

Visibilità tramite misurazioni

Rendere più chiari gli aspetti del processo e del prodotto software.

Signup and view all the flashcards

Misurazione per controllare

Le misure aiutano a controllare cosa accade nei progetti

Signup and view all the flashcards

Misurazione per il Controllo: Azioni

Usare i valori di riferimento, gli obiettivi, e la relazione tra valori rilevati e valori obiettivo, per prevedere e modificare processi e prodotti

Signup and view all the flashcards

Misurazione del software: Problema Principale

Ingegneria del software: Spesso non quantifichiamo o prediciamo la qualità dei prodotti.

Signup and view all the flashcards

Adozione di Tecnologie: Difetto Comune

Ci affidiamo a prove aneddotiche per adottare nuove tecnologie senza valutazioni preliminari.

Signup and view all the flashcards

Misurazioni in Software: Sfide

Le misurazioni sono spesso infrequenti, incoerenti e incomplete.

Signup and view all the flashcards

Mancanza di Rigore: Conseguenza

Senza un approccio rigoroso, la mancanza di misurazione è aggravata.

Signup and view all the flashcards

Misurazione: Buone e Cattive Pratiche

Misurare e registrare le caratteristiche di progetti buoni e cattivi.

Signup and view all the flashcards

Benefici della Misurazione Software

Per interpretare i risultati, individuare i problemi, applicare correzioni e ottenere prove sui cambiamenti.

Signup and view all the flashcards

Misurare la Complessità dei Moduli

Processo per valutare la complessità dei singoli moduli software e identificare quelli che superano le soglie predefinite.

Signup and view all the flashcards

Misurazione per Migliorare

La misurazione incoraggia il miglioramento continuo di processi e prodotti basandosi su risultati e trend nel tempo.

Signup and view all the flashcards

Incremento di Produttività

Aumentare la resa produttiva dopo l'introduzione di uno strumento/tool in ambienti di produzione.

Signup and view all the flashcards

Incremento delle Aspettative di Qualità

Aumentare gli standard per la qualità in base ai bisogni e alle richieste del mercato.

Signup and view all the flashcards

Uso dei Dati Raccolti

I dati raccolti dalle misurazioni servono per valutare i processi e individuare le aree problematiche da migliorare.

Signup and view all the flashcards

Stima di Costo ed Effort

Valutazione preliminare dei costi e delle risorse necessarie per un progetto software.

Signup and view all the flashcards

Modelli di Stima

Strumenti e modelli usati dai progettisti per calcolare i costi del progetto nelle fasi iniziali del ciclo di vita.

Signup and view all the flashcards

Effort come Funzione

L'effort è espresso in funzione di una o più variabili del progetto.

Signup and view all the flashcards

Evoluzione delle scale di misura

Le scale di misurazione possono evolvere con l'esperienza, permettendo di ottenere maggiori informazioni.

Signup and view all the flashcards

Obiettivo della misurazione

Si cerca di rendere le misurazioni il più oggettive possibile per garantire che persone diverse ottengano gli stessi risultati.

Signup and view all the flashcards

Misure soggettive

Dipendono dal valutatore e dal contesto, variando in base all'opinione (es. esperienza di un programmatore).

Signup and view all the flashcards

Misure oggettive

Sono indipendenti dal valutatore e oggettivamente rilevate (es. tempo di sviluppo, numero di righe di codice).

Signup and view all the flashcards

Limitare la soggettività

Per ridurre la soggettività, si associa un modello descrittivo alla metrica, definendo ogni valore della scala con una descrizione testuale.

Signup and view all the flashcards

Esempi di misure

Numero di fallimenti osservati durante i test di integrazione, numero di persone che lavorano a un progetto software, numero di difetti di progettazione.

Signup and view all the flashcards

Significatività delle funzioni statistiche

Una funzione statistica è significativa se le affermazioni dedotte dalla sua applicazione sono invarianti rispetto alla scala utilizzata.

Signup and view all the flashcards

Moda

Valida per scale nominali. È il valore che appare più frequentemente in un insieme di dati.

Signup and view all the flashcards

Mediana

Valida per scale ordinali o superiori. È il valore centrale in un insieme di dati ordinato.

Signup and view all the flashcards

Media

Valida per scale a intervalli o superiori. È la somma dei valori divisa per il numero di valori.

Signup and view all the flashcards

Esempio di media

Dati: 2,2,4,5,5,8,8,10,11,11,11,15,16. La media è 9.1.

Signup and view all the flashcards

Esempio di mediana

Dati: 2,2,4,5,5,8,8,10,11,11,11,15,16. La mediana è 8.

Signup and view all the flashcards

Esempio di moda

Dati: 2,2,4,5,5,8,8,10,11,11,11,15,16. La moda è 11.

Signup and view all the flashcards

Validità della moda

Nella classificazione dei problemi, essa è sempre valida sia per scale nominali che ordinali perché identifica la categoria più frequente.

Signup and view all the flashcards

Validità della mediana

Nella comprensibilità dei programmi, essa è valida solo se le scale sono ordinali, poiché richiede un ordinamento dei dati.

Signup and view all the flashcards

Study Notes

Introduzione alla Misurazione e il suo legame con la Qualità

  • Approfondimenti con "Software Metrics a rigorous and practical approach" di Fenton, Capitoli 1, 2, 3.

Cosa si intende per Misurazione?

  • La misurazione aiuta a comprendere il mondo, a interagire con l'ambiente e a migliorare la vita.
  • La misurazione dovrebbe essere una parte naturale dello sviluppo e della manutenzione del software.
  • Gli sviluppatori software misurano le caratteristiche del software per capire se i requisiti sono coerenti e completi, il design è di alta qualità e il codice può essere testato.
  • I project manager misurano il processo e gli attributi del prodotto per valutare la prontezza del software, il rispetto del budget e del piano di progetto.
  • I clienti misurano gli aspetti del prodotto finale per valutarne la conformità alle aspettative di qualità e la soddisfazione dei requisiti.
  • I manutentori valutano il prodotto finale per decidere cosa aggiornare o migliorare.
  • La misurazione assegna numeri a entità del mondo reale per determinarne il valore secondo regole definite.

Attributi di entità nella Misurazione

  • La misurazione cattura informazioni sugli attributi di entità.
  • Un'entità è un oggetto o evento del mondo reale, come una persona in una stanza o una fase di test di un progetto software.
  • Un attributo è un aspetto o caratteristica dell'entità, come l'area di una stanza o il costo di un viaggio.
  • La misurazione descrive l'entità identificando le caratteristiche importanti per distinguerla da altre.

Astrarre attraverso la Misurazione

  • Quando si definiscono entità attraverso attributi, questi sono definiti usando numeri e simboli.
  • Esempi includono prezzo in dollari, altezza in centimetri, taglie di vestiti e tipi di carburante.
  • Numeri e simboli sono astrazioni usate per rappresentare percezioni del mondo reale.
  • Si possono trarre conclusioni su un'entità basandosi sui valori dei suoi attributi (caratteristiche di qualità).

Rendere le cose Misurabili

  • "Ciò che non è misurabile, rendilo misurabile" - Galileo Galilei
  • La misurazione rende i concetti più visibili, comprensibili e controllabili.
  • Nelle scienze fisiche, mediche, economiche e ingegneristiche, la misurazione è una procedura radicata.
  • La misurazione di attributi come l'intelligenza umana, la qualità dell'aria e l'inflazione influenza le decisioni quotidiane.
  • Gli attributi del software come affidabilità, usabilità e manutenibilità vengono quantificati attraverso indicatori/metriche specifici.

Due tipi di quantificazioni

  • Misurazione: Quantificazione diretta, come l'altezza di un albero o la dimensione di un programma software in LOC.
  • Calcolo: Quantificazione indiretta. Si considerano le misure e le loro combinazioni che riflettono l'attributo che si sta cercando di capire; la valutazione è una quantificazione, non una misurazione.
  • Esempi includono la media dei voti di uno studente o la valutazione di una casa per calcolare le tasse.

Misurazione nel Software Engineering

  • Il calcolo e la misurazione in software engineering portano a un punteggio complessivo basato su una serie di misure, ciascuna delle quali cattura un aspetto di ciò che vogliamo misurare.
  • Si può misurare cosa sta succedendo nel progetto, se il prodotto è buono o valutare la capacità di una società di software di produrre un buon software.
  • L'Ingegneria del software è una disciplina uomocentrica, a differenza di altre che usano metodi basati su modelli e teorie.
  • L'ingegneria del software descrive l'insieme delle tecniche che adottano un approccio ingegneristico per la costruzione e il supporto del software.
  • Un approccio ingegneristico fa sì che ogni attività sia compresa e controllata per ridurre sorprese man mano che il software è specificato, progettato, sviluppato e mantenuto.
  • Le attività di Software Engineering includono gestione, costi, pianificazione, modellazione, analisi, specifica, progettazione, implementazione, verifica e manutenzione.

Problemi nella Misurazione del Software

  • La misurazione è spesso considerata un "lusso" e non è applicata sistematicamente.
  • Spesso, è impossibile prefissare obiettivi misurabili per i prodotti software.
  • Promesse di caratteristiche come facilità d'uso, affidabilità e manutenibilità non sono specificate oggettivamente.
  • Spesso, è impossibile comprendere e quantificare i costi di un progetto software e di distinguere tra costi di progettazione e costi di codifica o di test.
  • È difficile controllare i costi senza conoscere i costi relativi ai componenti.
  • Non si quantifica o predice la qualità dei prodotti che si producono.
  • È impossibile affermare quanto un prodotto sarà affidabile in termini di probabilità di guasto in un certo periodo.
  • Spesso, le evidenze sono aneddotiche per provare nuove tecnologie senza studi preliminari controllati.
  • Nella maggior parte dei casi, le misurazioni sono infrequenti, incoerenti e incomplete.
  • È difficile utilizzare i risultati se non si sa come sono stati ottenuti e applicare le misure senza conoscere i dettagli o ripetere le misurazioni in un altro ambiente.
  • La mancanza di misurazione è aggravata dalla mancanza di un approccio rigoroso.

Obiettivi della misurazione del software

  • La misurazione serve per valutare lo stato dei progetti, dei prodotti, dei processi e delle risorse ("non puoi prevedere né controllare ciò che non puoi misurare" - Tom DeMarco 1982).
  • È importante misurare e registrare le caratteristiche di progetti buoni e cattivi per interpretare i risultati, individuare i problemi, applicare azioni correttive e ottenere evidenze sui cambiamenti.
  • L'obiettivo è controllare i progetti e non solo eseguirli.
  • Le iniziative di misurazione devono essere motivate da uno scopo o esigenza specifica.
  • Un obiettivo (measurement goal) deve essere specifico, legato a ciò che manager, sviluppatori e utenti devono sapere.
  • Gli obiettivi possono differire in base agli stakeholder coinvolti, al livello di sviluppo e di utilizzo del software.

Prospettive di Misurazione: Manager

  • I manager si interessano di costo e produttività.
  • È importante misurare il tempo e l'effort coinvolti nei processi di sviluppo software.
  • Comprendere l'intero progetto e come contribuisce ogni attività.
  • È necessario misurare il tempo impiegato dal personale per specificare, progettare, codificare e testare il sistema.
  • Raccogliere misure di dimensioni delle specifiche, del progetto, del codice e dei piani di test.
  • Si possono utilizzare grafici sulla produttività per stimare costi e durata delle attività o modifiche da pianificare.
  • Si registra dati di misura quali i faults, failures e modifiche.
  • È importante utilizzare i dati per confrontare i diversi prodotti e prevedere gli effetti della modifica.
  • Occorre misurare l'usabilità, l'affidabilità e il tempo di risposta e impiegare i dati per valutare la soddisfazione dei clienti.

Prospettive di Misurazione: Ingegnere

  • Gli ingegneri si interessano sugli aspetti legati ai prodotti software sviluppati.
  • Analizzare i requisiti per determinare se la loro soddisfazione è espressa in modo misurabile.
  • Misurare il numero di difetti nei manufatti (specifica, test) e tracciarli rispetto alle loro cause.
  • Verificare se le aspettative riguardanti le caratteristiche dei processi e del prodotto sono state raggiunte, monitorando e controllando la qualità.
  • Misurare gli attributi dei prodotti esistenti o dei processi in atto per fare previsioni.

Scopi della Misurazione Software

  • Comprendere: Le misure aiutano a capire cosa accade durante le attività di sviluppo e manutenzione.
  • La situazione attuale viene valutata e le baselines sono stabilite per strategie future.
  • Controllare: Le misure aiutano a controllare cosa accade nei progetti, determinando le relazioni tra variabili di processo.
  • Sulla base delle baselines, degli obiettivi e della relazione tra valori rilevati e valori obiettivo, si possono fare previsioni e cambiamenti per soddisfare gli obiettivi di qualità.
  • Migliorare: Le misure incoraggiano a migliorare processi e prodotti basati sui risultati ottenuti e tendenze nel tempo.
  • Le misure sono usate per valutare il processo e identificare le aree problematiche.

Sfaccettature della misurazione

  • Stima di Costo ed Effort: Modelli per la stima dei costi e dell'effort per prevedere i costi di progetto nelle fasi iniziali. Esistono modelli come COCOMO, SLIM, Albrecht FP.
  • L'effort è espresso come funzione di variabili come dimensione del prodotto e capacità degli sviluppatori, mentre la dimensione può essere linee di codice o function points.
  • Modelli e misure di Produttività: proposte per valutare la produttività del personale durante diversi processi software e in diversi ambienti.
  • Raccolta dei Dati: Le misure devono essere definite in modo inequivocabile, la raccolta deve essere consistente e completa per garantire l'integrità dei dati; la raccolta deve essere attentamente pianificata ed eseguita.
  • I dati raccolti possono essere rappresentati in grafici ed evidenziare i problemi. È essenziale per l'indagine scientifica sui rapporti causali e sulle tendenze.
  • Modelli e misure di qualità: La produttività è strettamente legata alla qualità del prodotto. I modelli di qualità sono strutturati gerarchicamente.
  • Management attraverso metriche: La misurazione sta diventando una parte fondamentale del project management; i manager si affidano a tabelle e grafici per tracciare il progresso.
  • Le aziende definiscono standard di misura e metodi di reporting per controllare e confrontare i progetti.
  • Discipline come le scienze fisiche e l'ingegneria sottolineano che la misurazione deve avere un ruolo più significativo nell'ingegneria del software.
  • È necessario avere obiettivi chiaramente definiti per la misurazione, tenendo conto delle diverse prospettive degli stakeholder.
  • Aspetti di qualità: si considerano i fondamenti di qualità del software, la qualità del prodotto (ISO/IEC 9126), la qualità del processo, la qualità dei servizi e la qualità delle persone.

Concetti generali

  • Quattro motivi principali per misurare processi, prodotti o risorse software:
  • Caratterizzare, comprendere, valutare e migliorare.
  • È necessario fare previsioni, raccogliere informazioni quantitative per individuare le inefficienze e migliorare a qualità, grazie a stime di costo, tempo e qualità.
  • Gli elementi della misurazione includono l'entità, gli attributi e le regole/metriche.
  • Perché si possa misurare è necessario identificare le entità e gli attributi da considerare, insieme alle regole per assegnare i valori.
  • Un entità possono essere gruppi o insiemi di altre entità (subprocesses, flowpaths, by-products)
  • Gli attributi sono caratteristiche o proprietà delle entità. L'arte della misurazione consiste nel decidere quali attributi usare per dare un'idea delle entità.
  • Ciascuna entità è legata agli attributi che la caratterizzano e alle misure che quantificano gli attributi stessi.

Scale di Misurazione

  • La scala di misurazione fornisce i valori e le unità per descrivere gli attributi.
  • Vi deve essere una Scala ben definita per rilevare e registrare i valori misurati.
  • Nominale: ogni valore della scala rappresenta una classe o una categoria di appartenenza senza ordinamento o significato di grandezza associato.
  • Ordinale: scala nominale che esprime un ordine tra i valori.
  • Vi è una classificazione di appartenenza ordinate rispetto all'attributo, pertanto non ha senso applicare su essi gli operatori aritmetici
  • Intervallo: esprime sia l'ordinamento, sia la misura dell'intervallo che separa le classi ed una misurazione degli incrementi esatti tra i valori.
  • Valori hanno senso somma e sottrazione, ma non hanno senso la moltiplicazioni e la divisione.
  • Non c'è un origine nella scala (valore di zero assoluto)
  • Aggiunge un origine alla scala:
  • Ratio: Preserva l'ordinamento, dimensione degli intervalli e il rapporto tra entità.
  • Esiste un elemento zero significativo, che indica l'assenza di quell'attributo
  • Valore della misura, a partire da zero, deve aumentare di intervalli uguali, detti unità della misura.
  • Tutte le operazioni aritmetiche sono significative
  • Assoluta: caso della scala ratio dove l'unico moltiplicatore ammissibile è 1.
  • Il suo valore si ottiene semplicemente "conteggiando" gli elementi di una entità
  • Tutte le operazioni aritmetiche sono significative

Significatività delle Funzioni Statistiche

  • Le funzioni statistiche ad un tipo di scala deve essere invariante rispetto alla scala utilizzata
  • Tipo scala ed esempio:
  • Nominale: Moda
  • Ordinale: Moda, Mediana
  • Ratio: Tutte
  • Le scale di misurazione possono cambiare man mano che si matura esperienza.
  • Misure Soggettive dipendono dal misuratore e sono strettamente legate al contesto (programmer experiece, quiality of requirements)
  • Le Misure Oggettive sono indipendenti dal misuratore (Development time, number of defects etc)

Modelli per le misure

  • Al fine di "limitare e contenere" la soggettività delle misure soggettive si definisce e associa un Modello Descrittivo, alla metrica, ad esempio sulla Criticità di un requisito.
    1. low importance (impacts on few users): le conseguenze hanno un impatto su pochi utenti
  • In caso delle misure Oggettive è necessario fornire un Modello Quantitativo (equazioni, modello di calcolo, formula) associato alla metrica
  • Non conformance = (nr of violations / nr of times the technqiues have been applied) * 100

Distinzioni delle Misure

  • Misure Dirette non implicano altri attributi: Length of source code
  • Altre che non ricado sotto questa definizione sono Misure Indirette: Programmer productivity

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

Description

Questo articolo esplora l'influenza dell'esperienza sulle scale di misurazione. Confronta e contrasta le misure oggettive e soggettive, fornendo esempi. Spiega come ridurre la soggettività nelle misure, offrendo una comprensione più chiara della misurazione.

More Like This

Use Quizgecko on...
Browser
Browser