Tecniche di stima dei test nel collaudo del software

โšก Riepilogo intelligente

Le tecniche di stima dei test software forniscono una stima approssimativa della durata e del costo dei test. Un processo in quattro fasi โ€“ scomposizione delle attivitร , assegnazione dei responsabili, stima dello sforzo e convalida con le parti interessate โ€“ trasforma le tempistiche vaghe in un piano difendibile che il management puรฒ approvare.

  • ๐Ÿ“‹ Inizia con la scomposizione del lavoro: Suddividi il progetto in moduli, sottomoduli e attivitร , in modo che ogni stima copra una piccola unitร  di lavoro di cui sei responsabile.
  • ๐Ÿ”ข Utilizza tecniche collaudate: I metodi di stima Function Point e Three-Point forniscono dati numerici strutturati; i metodi Wideband Delphi e Use-Case Point favoriscono il consenso del team.
  • ๐Ÿ’ฐ Trasformare lo sforzo in costo: Moltiplicate le ore-uomo stimate per la tariffa oraria del team misto per fornire al reparto finanziario una cifra di budget precisa.
  • ๐Ÿ›ก๏ธ Aggiungi buffer e convalida: Prevedete del tempo per le ferie, le rilavorazioni e gli imprevisti, poi fate esaminare e approvare il piano dal consiglio di amministrazione.
  • ๐Ÿค– Utilizza l'intelligenza artificiale per affinare le stime: Gli assistenti basati sull'intelligenza artificiale analizzano i progetti storici, segnalano le attivitร  mancanti e suggeriscono intervalli di confidenza per ogni voce del piano.

Tecniche di stima dei test del software

Che cos'รจ la stima del test del software?

Stima dei test software รจ un'attivitร  di gestione che approssima quanto tempo richiederร  un'attivitร  di test e quanto costerร . Produrre una stima credibile dei test รจ una delle responsabilitร  piรน importanti in gestione dei test perchรฉ influenza le decisioni relative a tempistiche, budget e allocazione delle risorse.

Perchรฉ la stima dei test รจ importante

I clienti pongono sempre due domande prima di approvare un incarico di prova:

Perchรฉ la stima del test

Per i piccoli progetti, rispondere a queste domande รจ facile. Per un progetto piรน grande, diciamo testare il GuruSito web di 99 Bank: per difendere la risposta รจ necessaria una tecnica strutturata.

Cosa stimare?

Cosa stimare nella gestione dei test

  • Risorse: persone, attrezzature, strutture, finanziamenti e qualsiasi altra cosa necessaria per portare a termine il lavoro.
  • Orari: La risorsa piรน preziosa in qualsiasi progetto: ogni rilascio ha una scadenza.
  • Competenze umane: La conoscenza e l'esperienza del team. I tester piรน esperti completano il lavoro piรน velocemente rispetto a un team meno esperto.
  • Costo: il budget del progetto: quanto denaro serve per realizzare i test pianificati.

Come stimare

Le tecniche piรน comuni per la stima dei test software sono:

  • Struttura di scomposizione del lavoro (WBS).
  • Stima a tre punti.
  • Delphi a banda larga.
  • Analisi dei punti funzione o punti di test.
  • Metodo Use-Case Point.
  • Distribuzione percentuale.
  • Metodo ad hoc.

Elenco delle tecniche di stima

Il processo in quattro fasi riportato di seguito combina diverse tecniche per arrivare a una stima difendibile. L'esempio utilizza il GuruCaso di studio della 99 Bank.

Processo di stima in quattro fasi

Passaggio 1) Dividere l'intero progetto in sotto-compiti

Usa il Work Breakdown Structure Tecnica per suddividere un progetto complesso in moduli, sottomoduli e, in definitiva, nelle attivitร  piรน piccole e significative. Le stime sono molto piรน affidabili a livello di singoli elementi che rispetto a progetti generici e vaghi.

Dividi il progetto in sotto-compiti

Applicare la tecnica per rompere il GuruIl progetto della 99 Bank รจ suddiviso in cinque compiti piรน piccoli:

Guru99 Compiti bancari

Ogni compito viene poi suddiviso in sotto-compiti fino a quando ogni riga non รจ sufficientemente dettagliata da consentire una stima.

Task Sottocompito
Analizzare le specifiche dei requisiti software Esamina le specifiche dei requisiti.
Intervista gli sviluppatori e altri soggetti interessati per saperne di piรน sul sito web.
Creare la specifica del test Progettare scenari di test.
Creare casi di test.
RevEsaminare e rivedere i casi di test.
Eseguire i casi di test Configura l'ambiente di test.
Eseguire i casi di test.
RevVisualizza i risultati dell'esecuzione del test.
Segnalare i difetti creare il difetto rapporti.
Segnala i difetti.

Fase 2) Assegnare ciascun compito a un membro del team

Assegna ogni sotto-attivitร  al responsabile piรน adatto.

Task Proprietario
Analizzare le specifiche dei requisiti software Tutti i membri del team
Creare la specifica del test Tester / Analista di test
Creare l'ambiente di test Amministratore di prova
Eseguire i casi di test Tester, amministratore dei test
Segnalare difetti Tester

Fase 3) Stima dello sforzo per ciascuna attivitร 

In questa fase, due tecniche complementari si rivelano particolarmente efficaci:

  1. Metodo dei punti funzione.
  2. Stima a tre punti.

Metodo 1) Metodo dei punti funzione

Il responsabile dei test stima le dimensioni, la durata e il costo di ciascuna attivitร .

Metodo dei punti funzione

Fase A) Stimare la dimensione del compito

Prendi il compito "Crea la specifica di test". La sua dimensione dipende dalla dimensione funzionale del sistema da testare: piรน funzioni ci sono, piรน complesso รจ il sistema. I punti funzione sono in genere classificati in tre gruppi: Complesso, Medio e Semplice.

Gruppi di complessitร  dei punti funzione

In base alla complessitร , il Test Manager assegna un peso a ciascun punto funzione:

Gruppo ponderazione
Complesso 5
Medio 3
Semplice 1

Migliori GuruIl sito web di 99 Bank รจ suddiviso in 12 punti funzionali. La loro complessitร  รจ riassunta di seguito.

# Moduli Ruoli applicabili Descrizione ponderazione
1 Richiesta di equilibrio Responsabile, Cliente Cliente: Visualizza solo il saldo dei tuoi conti.
Allenatore: Visualizza il saldo di ogni cliente sotto supervisione.
3
2 Trasferimento di fondi Responsabile, Cliente Cliente: Trasferire fondi dal proprio conto a qualsiasi destinazione.
Allenatore: Trasferire fondi da qualsiasi fonte a qualsiasi destinazione.
5
3 Mini dichiarazione Responsabile, Cliente Ultime cinque transazioni di un conto.
Cliente: Visualizza solo i tuoi account.
Allenatore: visualizza qualsiasi account.
3
4 Dichiarazione personalizzata Responsabile, Cliente Transazioni filtrate per data o valore.
Cliente: solo account personali.
Allenatore: qualsiasi account.
5
5 Cambiare la password Responsabile, Cliente Cliente: cambiare la propria password.
Allenatore: Cambia la tua password (non quella del cliente).
1
6 NUOVO CLIENTE direttore Aggiungi e modifica i dati del cliente (indirizzo, email, telefono). 3
7 Nuovo account direttore Conti di risparmio e conti correnti; un cliente puรฒ detenere piรน di un conto per ciascun tipo di conto. Il responsabile apre nuovi conti per i clienti esistenti. 5
8 Modifica account direttore Modifica i dettagli di un account esistente. 1
9 Eliminare l'account direttore Eliminare un account esistente per un cliente. 1
10 Elimina cliente direttore Elimina un cliente solo quando non ci sono account attivi. 1
11 Cauzione direttore รˆ possibile depositare contanti su qualsiasi conto presso la filiale. 3
12 Ritiro direttore รˆ possibile prelevare contanti da qualsiasi conto presso la filiale. 3

Fase B) Stimare la durata dell'attivitร 

Una volta definita la complessitร , stimate la durata necessaria per testare ciascun gruppo.

Calcolo della durata

  • Sforzo totale: impegno totale per testare ogni funzione del sito web.
  • Punteggio totale delle funzioni: tutti i moduli del sito web.
  • Stima per Function Point: Sforzo medio per punto; dipende dalla produttivitร  del team.

Si supponga che la stima del team per punto funzione sia 5 ore/punto. Lo sforzo totale per il GuruEsempio di 99 Bank:

Gruppo ponderazione Punti funzione Totale
Complesso 5 3 15
Medio 3 5 15
Semplice 1 4 4
Funzione Punti Totali 34
Stima per punto 5
Impegno totale stimato (ore-persona) 170

Lo sforzo totale per completare โ€œCrea la specifica del testโ€ รจ di circa 170 ore-personaUna volta noto lo sforzo necessario, รจ possibile assegnare le risorse per determinarne la durata e il costo.

Fase C) Stimare il costo delle attivitร 

Questo passaggio risponde alla seconda domanda del cliente: "Quanto costa?". Si supponga una tariffa media del team di $ 5 / ora. Il compito sopra richiede 170 ore, quindi il costo รจ 170 ร— $5 = $850Applica lo stesso calcolo a tutte le attivitร  della WBS per arrivare al budget del progetto.

Quanto piรน accurata รจ la stima, tanto meglio potrai gestire il budget del progetto e assicurarti che ogni dollaro investito generi un ritorno.

Metodo 2) Stima a tre punti

La stima a tre punti รจ una tecnica strutturata in cui il responsabile del test fornisce tre valori per attivitร : il ottimista, piรน probabilmentee pessimistico impegno โ€” basato sull'esperienza precedente o sulle migliori ipotesi.

Stima a tre punti

Per โ€œCrea la specifica del testโ€ i tre valori possibili sono:

  • caso migliore: 120 ore-persona (circa 15 giorni) con un team solido ed esperto.
  • Piรน probabilmente: 170 ore-uomo (circa 21 giorni) con un team e risorse tipici.
  • Caso peggiore: 200 ore-uomo (circa 25 giorni) con un team meno esperto e rilavorazioni aggiuntive.

Valori dei parametri

Calcola la media ponderata utilizzando la formula in stile PERT:

Formula a tre punti

Il valore E Europe รจ media ponderata โ€” la stima principale per โ€œCreare la specifica del testโ€.

Domanda del manager

Per esprimere la fiducia intorno E, calcolare la deviazione standard:

Formula della deviazione standard

Per la GuruEsempio della banca 99, la stima risulta essere 166.6 ยฑ 13.33 ore-persona โ€” un intervallo compreso tra 153.33 e 179.99 ore-persona.

Passaggio 4) Convalidare la stima

Raccogli tutte le stime delle attivitร  dalla WBS e presenta il piano al consiglio di amministrazione (CEO, responsabile di progetto, principali stakeholder) per la revisione e l'approvazione.

Convalidare la stima

Illustrate al consiglio di amministrazione il preventivo in modo logico, affinchรฉ comprendano le ipotesi, le tecniche scelte e il margine di contingenza che avete previsto.

Test di stima migliori pratiche

Aggiungi tempo buffer

I piani raramente resistono al confronto con la realtร : i membri del team se ne vanno, i test richiedono piรน tempo del previsto, le dipendenze cambiano. Inserite un margine di sicurezza ragionevole in ogni stima, in modo che la pianificazione possa assorbire piccoli imprevisti.

Pianificare la disponibilitร  delle risorse

Bisogna tenere conto di ferie programmate, formazione e turni di reperibilitร . Le stime che non tengono conto della disponibilitร  possono sembrare perfette sulla carta, ma si rivelano inefficaci nella pratica.

Utilizzare l'esperienza passata come riferimento

I dati storici relativi a progetti simili sono preziosi. Se l'anno scorso hai testato un sito web comparabile, impara dai risultati effettivi, dai problemi riscontrati e dagli accorgimenti che hanno permesso di risolvere la situazione.

Attieniti alla stima, ma rivedila

Le stime non sono contracts; sono le migliori ipotesi. RevFissate gli appuntamenti in corrispondenza di traguardi prestabiliti e apportate modifiche solo quando i requisiti cambiano sostanzialmente o nuove informazioni modificano il quadro generale. Negoziare qualsiasi modifica con il cliente in modo trasparente.

Modello di stima del test del software

Scarica il file Excel per la stima dei test software (.xlsx)

Altre tecniche di stima

Oltre alla WBS, al metodo Function Point e alla stima a tre punti, vengono ampiamente utilizzate diverse altre tecniche:

  • Delphi a banda larga: Stima iterativa di consenso da parte di un gruppo di esperti.
  • Metodo dei punti caso d'uso: L'impegno deriva dal numero e dalla complessitร  dei casi d'uso.
  • Distribuzione percentuale: assegna una percentuale fissa dello sforzo totale del progetto ai test.
  • Metodo ad hoc: Giudizio di esperti in assenza di dati storici.

Stima dal basso verso l'alto vs. stima dall'alto verso il basso

Da un punto di vista pratico, la stima si articola in due strategie complementari:

  • Stima dal basso verso l'alto: Basato su attivitร  al livello piรน basso della WBS. Diversi stakeholder, personale esperto e collaboratori uniscono i loro dati per raggiungere un totale accurato. Ideale quando il lavoro รจ ben compreso.
  • Stima dall'alto verso il basso: classifica il progetto in base alle dimensioni e alla complessitร  e lo confronta con progetti completati di forma simile. Utilizza anche lo sforzo medio per caso di prova e si adatta al numero di casi previsti. Utile nelle prime fasi di un progetto, quando i dettagli sono scarsi.

La maggior parte dei team combina i due approcci: un metodo dall'alto verso il basso per ottenere il dato principale e un metodo dal basso verso l'alto per valutare l'affidabilitร  del risultato, sovrapponendo poi il risultato a modelli sofisticati quando i budget lo consentono.

Domande Frequenti

Lo sforzo misura il numero totale di ore-persona necessarie per completare il lavoro. La durata misura il tempo di calendario necessario una volta assegnate le persone al compito. Un'attivitร  da 170 ore richiede 170 ore per una persona, ma circa 21 ore per dieci persone che lavorano in parallelo.

Iniziate con la Struttura di Scomposizione del Lavoro (WBS) per suddividere il progetto, quindi applicate la Stima a Punti Funzione o a Tre Punti. La WBS fornisce la struttura; la Stima a Punti Funzione o a Tre Punti fornisce valori numerici difendibili.

Un margine di sicurezza del 10-20% รจ generalmente considerato sufficiente per progetti stabili. Aumentatelo per nuovi ambiti, strumenti sconosciuti o team numerosi. Riservate questo margine agli imprevisti, piuttosto che agli aspetti giร  definiti.

I team Agile utilizzano gli story point e il planning poker per dimensionare i test parallelamente allo sviluppo. La velocitร  degli sprint precedenti converte gli story point in tempi previsti, sostituendo le stime dettagliate iniziali.

PERT (Valutazione del programma e RevLa tecnica di previsione (Iew Technique) combina le stime ottimistiche (O), piรน probabili (M) e pessimistiche (P) con la formula E = (O + 4M + P) / 6 per produrre lo sforzo previsto.

RevRivedi la stima quando l'ambito del progetto cambia, le dipendenze slittano o la composizione del team si modifica in modo significativo. Comunica tempestivamente il cambiamento e rinegozia con il cliente prima di estendere silenziosamente la scadenza.

Gli strumenti di intelligenza artificiale analizzano i progetti storici, suggeriscono attivitร  mancanti, raccomandano intervalli di confidenza e aggiornano il piano man mano che si acquisiscono i dati effettivi. Questo riduce il divario tra piano e realtร  e minimizza i punti ciechi.

Sรฌ. Gli assistenti basati sull'IA trasformano il brief di progetto in una struttura di scomposizione del lavoro (WBS), una classificazione in punti funzione (Function Point) e stime a tre punti con formule, pronte per essere esaminate e perfezionate dal responsabile del test.

Riassumi questo post con: