In qualsiasi software per computer, non è insolito avere una serie di preferenze per consentire la personalizzazione delle impostazioni. JMP non fa eccezione. Ad esempio, in JMP 12 , la piattaforma Categorical consente di personalizzare gran parte dell'output in base alle preferenze dell'utente. Ecco cosa vediamo in Preferenze per la piattaforma Categoriale:

Ci sono un certo numero di caselle di controllo, opzioni a discesa e caselle di numeri modificabili. Immagina di provare a verificare se esistessero alcune combinazioni che avrebbero causato un errore nel software. Mantenendo le scelte dove i numeri possono variare al minimo, abbiamo ancora due opzioni con quattro scelte (livelli), quattro opzioni con tre scelte e 39 opzioni binarie. Se dovessimo testare ogni possibile combinazione, abbiamo un enorme 4 ^ 2 * 3 ^ 4 * 2 ^ 39 = 712,483,534,798,848 combinazioni. Ovviamente, testare ogni possibile combinazione non è fattibile.
Tuttavia, risulta che i guasti nel software sono solitamente dovuti all'interazione di poche opzioni. Ad esempio, se volessi testare solo due caselle di controllo, dovrei considerare quattro casi: entrambe le caselle controllate, due casi con una casella selezionata e una non, e entrambe le caselle deselezionate. Seguendo questa idea, perché non considerare prima tutte le opzioni a coppie? Anche se volessi controllare tutte le possibilità delle due opzioni, un po 'di matematica mostra che ho 4.690 combinazioni da considerare.
Un modo diverso di testare?
Fortunatamente, in JMP 12 abbiamo cover array! Possono aiutarci a ricavare scenari di test per testare il software. Con un array di copertura, se si specifica forza 2, so che tutte le combinazioni di due opzioni saranno coperte. Uso DOE-> Covering Array (solo JMP Pro) e aggiungo i fattori corrispondenti a ciascuna opzione. Una parte della configurazione dei miei fattori è mostrata sotto, ma ho incluso la tabella Fattori sul Scambio di file . Puoi caricarlo sotto la piattaforma Covering Array facendo aprire la tabella dei fattori e selezionando Load Factors nel menu a triangolo rosso.

Keeping the Strength = 2 significa che voglio essere sicuro che tutte le combinazioni di tutte le coppie di opzioni saranno incluse da qualche parte nel design. Quando ho scelto Continua e poi Crea design, ho ottenuto un design a 20 fasi (i risultati potrebbero variare, ma in genere le dimensioni della corsa saranno comprese nell'intervallo 19-21). È stupefacente pensare che con le 45 opzioni, tutte le combinazioni di tutte le coppie possibili compaiano in sole 20 sequenze.
Posso farlo in meno corse?
Poiché i due fattori con il maggior numero di valori hanno quattro livelli ciascuno, il limite inferiore della dimensione di questo array di copertura di forza 2 è di 16 esecuzioni. Per questo esempio, avere quattro run extra non sembra un grosso problema, ma ci sono casi in cui un risparmio del 20 percento nel numero di corse è notevole in termini di tempo e denaro. È facile provare e trovare un design più piccolo usando il pulsante Ottimizza . Selezionando 10.000 iterazioni, sono stato in grado di trovare il design a 16 esecuzioni sul Scambio di file .
Ma aspetta, c'è di più!
Diamo un'occhiata più da vicino alle metriche dalla piattaforma Covering Array:

I numeri di copertura rappresentano la percentuale di combinazioni che coinvolgono fattori t coperti dal progetto (ovvero, quante delle possibili combinazioni compaiono da qualche parte nel progetto). Se la piattaforma Categorical supera l'insieme di test definiti dall'array di copertura, abbiamo coperto tutte le combinazioni da qualsiasi coppia di opzioni, quindi la copertura del 100 percento per t = 2. Ma se tutto passa, abbiamo anche testato (e superato) oltre l'85% delle combinazioni da tre opzioni e il 57% di quelle da quattro opzioni.
Questo sembra troppo bello per essere vero
Con tutte queste opzioni, 16 run mi danno davvero tutte queste informazioni? Tieni presente che so solo che tutte queste combinazioni appaiono nel design - se tutto passa, sappiamo che non ci sono errori dovuti a due opzioni insieme a molte delle combinazioni di tre e quattro opzioni.
Cosa succede se vedo un errore? Quindi l'array di copertura ci ha aiutato a identificare che c'è un problema, ma non la causa diretta di quel problema. Può aiutarci a trovare la causa del fallimento? Si scopre che abbiamo un sacco di informazioni contenute nell'array di copertura in base non solo al fallimento, ma anche ai test di successo. La prossima volta vedremo come può aiutarci a trovare una causa.
Ciao,
Mi chiedo come il design dell'array Covering calcola il totale delle corse e la combinazione necessarie per un problema con 4 fattori, t = 3, ogni fattore ha 4 livelli? Quando ho applicato una combinazione non consentita, come decide le corse aggiuntive?
Grazie