Pratica di testing, adottata nell’ambito di un progetto che utilizzi metodologie Agile, incorporanti tecniche e metodi come la extreme programming (XP), che tratta lo sviluppo come il “cliente” del testing, enfatizzando quindi il paradigma di progettazione test-first.
Un ambiente comprendente hardware, strumentazione, simulatori, strumento software ed altri elementi di supporto necessari per condurre un test.
Una tecnica statistica nel processo decisionale che viene utilizzata per la selezione di un numero limitato di fattori che producono un significativo effetto globale. Nel caso di miglioramento della qualità, la grande maggioranza dei problemi (80%) sono prodotti da un ristretto numero di cause (20%).
L'analisi delle transazioni tra le persone e all'interno delle loro menti - una transazione è definita come uno stimolo più una risposta. Le transazioni avvengono tra le persone e tra gli stati dell'io (segmenti di personalità) all'interno della mente di una sola persona.
Uno strumento che effettua l’analisi statica.
Ogni condizione che devia dalle aspettative basate sulle specifiche dei requisiti, documenti di progetto, documenti utente, standards, etc. o dalla percezione o esperienza di qualcuno. Le anomalie possono essere trovate durante, ma non solo, revisioni, testing, analisi, compilazione, uso di prodotti software
La fase all'interno del modello IDEAL in cui si impara dalle esperienze e si migliora la propria capacità di adottare nuovi processi e tecnologie per il futuro. La fase di “apprendimento” comprende le attività di: analizzare / validare e proporre le azioni future.
Una valutazione disciplinata dei processi software di un'organizzazione con riferimento ad un modello.
Una persona che effettua un assessment o qualsiasi membro di un team di assessment.
La fase all'interno del modello IDEAL in cui i miglioramenti sono identificati, messi in pratica e distribuiti in tutta l'organizzazione. La fase di “azione” comprende le seguenti attività: creare la soluzione, effettuare un pilota e test della soluzione, perfezionare e implementare la soluzione.
Uno strumento strategico per misurare se le attività operative di un'azienda sono allineate con gli obiettivi in termini di visione e strategia
Un metodo o una pratica innovativa che contribuisce a migliorare le performance di una organizzazione in un dato contesto. Eessi sono normalmente considerati il metodo o la pratica ‘migliore’ da altre organizzazione che operano nel medesimo contesto.
Un modello che descrive gli elementi chiave di un efficace sviluppo di prodotto e di un efficace processo di manutenzione. Il Capability Maturity Model Integration copre le best practice per la pianificazione, l’ingegnerizzazione e la gestione dello sviluppo del prodotto e per la sua manutenzione.
Acronimom di Computer Aided Software Testsing
Una sorgente di un difetto tale per cui la sua rimozione riduce od annulla il verificarsi di quel tipo di difetto.
Il processo di conferma che un componente, sistema o persona soddisfi suoi requisiti specifici ad es. passando un esame.
Durante la fase di chiusura di un processo di test vengono documentati i dati raccolti dalle attività completate per consolidare l’esperienza, il testware, i fatti ed i numeri. La fase di chiusura del test consiste nella finalizzazione e nell’archiviazione del testware e nella valutazione del processo di test, comprendente la preparazione di un report di valutazione del testing.
Un processo iterativo in quattro fasi di problem-solving, (Plan-Do-Check-Act), in genere utilizzato nel miglioramento dei processi.
Il periodo di tempo che inizia quando un prodotto software viene concepito e termina quando non è più disponibile per essere utilizzato. Il ciclo di vita del software tipicamente include le fasi: concettuale, requisiti, progettazione, implementazione, test, installazione, operativa, manutenzione e, a volte, il ritiro del software. Si noti che queste fasi posso sovrapporsi o essere svolte in modo iterativo.
Il periodo di tempo che inizia quando un prodotto software viene concepito e termina quando non è più disponibile per essere utilizzato. Il ciclo di vita del software tipicamente include le fasi: concettuale, requisiti, progettazione, implementazione, test, installazione, operativa, manutenzione e, a volte, il ritiro del software. Si noti che queste fasi posso sovrapporsi o essere svolte in modo iterativo.
Il grado con cui un componente o sistema ha una progettazione e/o una struttura interna che è difficile da comprendere, mantenere e verificare.
L'eccessiva dipendenza emotiva o psicologica da un'altra persona, in particolare nel cercare di modificare il comportamento corrente (indesiderato), di quella persona, mentre si continua a sostenerla nel mantenere quel comportamento. Ad esempio nel software testing , lamentarsi del ritardo nella consegna del test e contemporaneamente gloriarsi dell’"eroico" lavoro straordinario per recuperare il ritardo, che in realtà aggrava il ritardo stesso.
Le tecniche ed attività operative, parte della gestione della qualità, focalizzate sulla soddisfazione dei requisiti di qualità.
Il costo totale delle attività relative alla Qualità. Esso è di norma suddiviso in: costi di prevenzione, costi di verifica, costi di difettosità interna e di difettosità esterna.
Un modello, basato sui contenuti, di miglioramento del processo di test, focalizzato su dodici processi aziendali critici. Essi includono processi di alta visibilità, in base ai quali il management ed altri interlocutori giudicano le competenze, e processi fondamentali, le cui prestazioni impattano il profitto e la visibilità aziendale.
Una rappresentazione in stile cruscotto dello stato delle prestazioni dell'azienda.
La fase all'interno del modello IDEAL in cui sono programmate le specifiche di come un organizzazione raggiungerà il suo obiettivo di miglioramento. Tale fase comprende le attività: definire le priorità, sviluppare l'approccio e dettagliare le azioni del piano.
La fase all'interno del modello IDEAL in cui sono programmate le specifiche di come un organizzazione raggiungerà il suo obiettivo di miglioramento. Tale fase comprende le attività: definire le priorità, sviluppare l'approccio e dettagliare le azioni del piano.
La fase all'interno del modello IDEAL in cui si accerta dove si è, rispetto a dove si vorrebbe essere. La fase di diagnosi consiste nelle attività di caratterizzazione dello stato attuale e di quello desiderato e sviluppo delle raccomandazioni.
Una rappresentazione grafica utilizzata per organizzare e visualizzare le interrelazioni delle varie possibili cause originali di un problema. Le possibili cause di un difetto reale o potenziale o di una failure sono organizzate in categorie e sottocategorie in una struttura ad albero orizzontale, con il (potenziale) difetto o failure come nodo principale.
Una azione umana che produce un risultato scorretto.
Una metodologia di ingegneria del software utilizzata all'interno dello sviluppo software “agile” , le cui pratiche fondamentali sono: la programmazione a coppie, le revisioni estese del codice, lo unit test di tutte le parti di codice e la semplicità e la chiarezza nella codifica.
Un approccio sistematico di identificazione del rischio e di analisi all’identificazione delle diverse modalità di failure e delle relative attività di prevenzione.
Un insieme di attività di test incluse in una fase di un progetto, come ad esempio le attività di esecuzione di un livello di test.
Un elemento che è necessario ad un'organizzazione o ad un progetto per realizzare la sua missione. Essi sono gli elementi o le attività critiche richieste per garantire il loro successo.
Una tecnica usata per analizzare le cause dei guasti (difetti). La tecnica modellizza visivamente in che modo le relazioni logiche tra le failure, gli errori umani e gli eventi esterni si possono combinare per causare specifici guasti con l’obiettivo di renderle visibili.
Insieme di attività coordinate per gestire e controllare gli aspetti della qualità in una organizzazione. La gestione ed il controllo della qualità generalmente include la creazione della politica e degli obiettivi di qualità, della pianificazione e del controllo della qualità, dell’assicurazione e del miglioramento della qualità.
(1) un approccio strutturato per gestire le transizioni di individui, team ed organizzazioni da uno stato corrente ad uno desiderato stato futuro. (2) una modalità controllata per effettuare una modifica, od una proposta di modifica, ad un prodotto o servizio.
Un approccio alla misurazione del software che utilizza un modello a tre livelli: livello concettuale (obiettivo), livello operativo (domanda) e il livello quantitativo (metrica).
Una rappresentazione grafica di input e/o stimoli (cause) con i loro associati output (effetti), che può essere usata per la progettazione di casi di test.
Un modello di miglioramento organizzativo, che serve come una guida per l'avvio, la pianificazione e l'implementazione di azioni di miglioramento. Il modello IDEAL è così chiamato per le iniziali (inglesi) delle sue 5 fasi: inizio, diagnosi, definizione, azione, apprendimento.
Una metrica di efficacia e/o efficienza (di alto livello) utilizzata per guidare e controllare lo sviluppo in un progetto, ad es. la riduzione del lead time per lo sviluppo del software.
La fase all'interno del modello IDEAL in cui si gettano le basi per uno sforzo di miglioramento successo. La fase di “inizio” delle attività è costituito: definire il contesto, ottenere la sponsorizzazione e impostare le infrastrutture.
Il processo di combinazione di componenti o sistemi in aggregati più grandi
La competenza, la capacità e l'abilità di individuare, valutare e gestire le emozioni del proprio io, di altri e di gruppi di collaboratori.
Una entità in un linguaggio di programmazione, la quale è tipicamente la più piccola indivisibile unità di esecuzione.
La persona che conduce un assessment.In alcuni casi, per esempio CMMi e TMMi, quando sono condotte valutazioni formali, il lead-assessor deve essere accreditato e formalmente addestrato.
Il grado di miglioramento dei processi misurato su un insieme predefinito di aree di processo, per le quali vengono raggiunti tutti i rispettivi obiettivi.
La media aritmetica (media) del tempo intercorso fra i guasti di un sistema. Il MTBF è in genere un indicatore di un modello di crescita dell’affidabilità, che prevede che un guasto del sistema sia immediatamente riparato, come risultato di un processo di riparazione dei difetti.
La media aritmetica (media) del tempo intercorso fra i guasti di un sistema. Il MTBF è in genere un indicatore di un modello di crescita dell’affidabilità, che prevede che un guasto del sistema sia immediatamente riparato, come risultato di un processo di riparazione dei difetti.
Una scala di misurazione e il metodo usato per la misurazione.
Un programma di attività progettato per migliorare le performance e la maturità dei processi delle organizzazioni e il risultato di tale programma.
Un momento temporale in un progetto in corrispondenza del quale dovrebbero essere effettuati dei rilasci (anche intermedi) e/o dovrebbero essere ottenuti particolari risultati.
Il numero o la categoria assegnata ad un attributo di una entità ottenuto da una misurazione.
Il processo di assegnazione di un numero o categoria ad una entità per quantificare un suo attributo.
Un modello di processo che fornisce una descrizione dettagliata di buone pratiche di ingegneria del SW, ad es. pratiche di test
Una raccolta strutturata di elementi che descrivono alcuni aspetti della maturità di una organizzazione ed un supporto nella definizione e nella comprensione dei processi di una organizzazione. Un modello di maturità fornisce spesso un linguaggio comune, una visione condivisa ed un quadro di priorità per le azioni di miglioramento.
Uno schema in cui processi della stessa natura sono classificati, ad esempio un modello di miglioramento dei test.
Il numero di difetti trovati da una sessione di test, diviso per il numero “totale”, trovato cioè da quella sessione e da tutte le altre successioni successive.
La attività di redazione o modifica di un piano di test.
Un piano per raggiungere gli obiettivi di miglioramento organizzativo del processo di testing, basato su una approfondita comprensione degli attuali punti di forza e di debolezza del processo e delle risorse del testing.
Un documento di alto livello che descrive i principi, l’approccio ed i maggiori obiettivi dell’organizzazione relativa al testing.
Il livello di importanza (di business) assegnato ad un elemento, ad esempio un difetto.
Un insieme di attività correlate tra loro, le quali trasformano un input in output.
Un insieme di attività coordinate e controllate con date di inizio e di fine, intraprese per realizzare un obiettivo che sia conforme ai requisiti specificati, compresi i vincoli temporali, di costo e di risorse.
Una vista della qualità, in cui essa non può essere definita con precisione, ma è percepita quando la si vede o se ne conosce l’assenza quando manca. Tale qualità dipende dalla percezione e da sentimenti affettivi di un individuo o di un gruppo di individui verso un prodotto.
Una vista della qualità, per cui la qualità si misura dal grado di conformità di un prodotto o servizio ai suo requisiti ed alla sua prevista progettazione. Tale qualità deriva dal processo (i) utilizzato(i)
Una vista della qualità, in cui la qualità è la capacità di soddisfare bisogni, necessità e desideri degli utenti . Un prodotto o un servizio che non soddisfa le esigenze degli utenti è improbabile che possa trovare nuovi utenti. Si tratta di un approccio alla qualità contingente e dipendente dal contesto, poichè differenti caratteristiche di business richiedono differenti qualità di prodotto.
Una vista della qualità, in cui essa è definita dal prezzo. La qualità di un prodotto o servizio è quella che fornisce le performance desiderate ad un costo accettabile. Tale qualità viene determinata per mezzo di un processo decisionale con le parti interessate sul bilanciamento tra tempo, sforzo e costi.
Un documento che riporta i risultati di un’attività di assessment, evidenze, conclusioni e raccomandazioni.
Una struttura del modello di maturità. in cui i livelli di capacità forniscono una sequenza raccomandata per le attività di miglioramento dei processi all'interno delle aree di processo specificate.
Raccolta e analisi di dati provenienti dalle attività di test e successivo loro consolidamento in un report per informare le parti interessate.
Un approccio strutturato per capitalizzare le esperienze (lesson learned) e per definire specifici piani d'azione volti a migliorare il prossimo progetto od una sua prossima fase
Un fattore che potrebbe avere negative conseguenze future, generalmente espresso come impatto e probabilità.
Una riunione alla fine di un progetto, durante la quale i membri del team valutano lo svolgimento ed i risultati del progetto e ne deducono degli insegnamenti che possono essere applicati ai progetti successivi.
La capacità del prodotto software di essere esteso per adattarsi a carichi crescenti.
Un modello strutturato in cui il raggiungimento degli obiettivi di un insieme di aree di processo stabilisce un livello di maturità. Ogni livello costruisce una base per i livelli successivi.
Una metodologia incrementale ed iterativa per la gestione di progetti comunemente utilizzata nello sviluppo software “agile”.
Un periodo di tempo ininterrotto trascorso nell’esecuzione di test. Nel testing esplorativo, ogni sessione di test è focalizzata su una dichiarazione di test, ma i tester possono anche esplorare nuove opportunità durante una sessione. Il tester crea ed esegue i casi di test al volo e registra il loro avanzamento.
Il grado dell’impatto che un difetto ha sullo sviluppo o l’operatività di un componente o di un sistema.
Un sistema nel quale una failure od un malfunzionamento può avere come conseguenza la morte o seri danni a persone, perdita o danni severi ad equipaggiamenti, danni ambientali.
Programmi, procedure, possibilmente con associata documentazione e dati pertinenti all’operatività del sistema informatico.
Software sviluppato appositamente per un insieme di utenti o di clienti. L'opposto è il software commercial off-the-shelf.
Un documento che specifica (auspicabilmente in maniera completa, precisa e verificabile) i requisiti, la progettazione, il comportamento od altre caratteristiche di un componente o sistema e, spesso, le relative procedure per determinare se queste clausole sono state soddisfatte.
Un insieme di requisiti, formali ed a volte obbligatori, sviluppati e utilizzati per prescrivere approcci coerenti al modo di lavorare o per fornire linee guida (ad esempio, norme ISO / IEC, standard IEEE e standard organizzativi).
Un tipo di strumento di esecuzione di test nel quale gli input sono registrati durante il testing manuale con lo scopo di generare script di test automatizzati, che possono essere eseguiti successivamente (cioè rieseguiti). Questi strumenti sono spesso usati per supportare testing di regressione automatizzato.
Uno strumento che supporta la verifica di modelli di software o di sistemi.
Un gruppo di metodologie di sviluppo software basate sullo sviluppo incrementale iterativo, in cui i requisiti e le soluzioni evolvono tramite una stretta collaborazione tra team inter-funzionali che si auto-organizzano.
Un metodo di analisi strutturato, usato anche come un modello basato sui contenuti per migliorare il processo di test. Non richiede che i miglioramenti avvengano in un ordine specifico.
Un insieme di uno o più casi di test.
Un framework a cinque livelli per il miglioramento del processo di test, correlato al Capability Maturity Model Integration (CMMI), che descrive gli elementi chiave di un efficace processo di test.
Un insieme di specialisti (di test) che favoriscono la definizione, la manutenzione ed il miglioramento dei processi di test utilizzati dall’organizzazione
Una dichiarazione derivata dal manifesto “agile”, che definisce i valori per migliorare il processo di test. I valori sono: - Flessibilità dei processi - Best Practices vs modelli - Orientamento di distribuzione vs. processo di orientamento - Peer Reviews vs Quality Assurance - Business Driven vs Model Driven.
La persona che realizza i miglioramenti nel processo di test basato su un piano di miglioramento del testing.
Una tecnica black-box di progettazione del testing nella quale i casi di test vengono selezionati, possibilmente usando un algoritmo di generazione pseudo-casuale, per corrispondere ad un profilo operativo. Questa tecnica può essere usata per il testing di attributi non-funzionali, come ad esempio affidabilità e performance,
Un approccio incrementale al testing di integrazione, nel quale viene testato per primo il componente in cima alla gerarchia dei componenti, con i componenti al livello inferiore simulati da opportuni stub. I componenti testati sono quindi usati per testare i componenti del livello inferiore. Il processo viene ripetuto finchè tutti i componenti di livello più basso sono stati testati.
Un modello orientato al business per il miglioramento del processo di test, che descrive gli elementi chiave di un processo efficace ed efficiente.
Conferma per esame (e attraverso la fornitura di evidenze obiettive) che i requisiti, per un uso specifico e predefinito o per una applicazione, sono stati soddisfatti.
Conferma per esame (e attraverso la fornitura di evidenze obiettive) che specifici requisiti sono stati soddisfatti.