En cualquier software de computadora, no es raro tener un conjunto de preferencias para permitir la personalización de la configuración. JMP no es una excepción. Por ejemplo, en JMP 12 , la plataforma categórica permite que una gran parte de la salida se adapte a las preferencias del usuario. Esto es lo que vemos en Preferencias para la plataforma categórica:

Hay una serie de casillas de verificación, opciones desplegables y casillas de números editables. Imagine que intenta probar si hay ciertas combinaciones que podrían causar una falla en el software. Al mantener las opciones donde los números pueden variar al mínimo, aún tenemos dos opciones con cuatro opciones (niveles), cuatro opciones con tres opciones y 39 opciones binarias. Si tuviéramos que probar todas las combinaciones posibles, tendríamos la friolera de 4 ^ 2 * 3 ^ 4 * 2 ^ 39 = 712,483,534,798,848 combinaciones. Obviamente, probar todas las combinaciones posibles no es factible.
Sin embargo, resulta que las fallas en el software generalmente se deben a la interacción de unas pocas opciones. Por ejemplo, si quisiera probar solo dos casillas de verificación, tendría que considerar cuatro casos: ambas casillas marcadas, dos casillas con una casilla marcada y una no, y ambas casillas sin marcar. Siguiendo esta idea, ¿por qué no considerar primero todas las opciones de pares? Incluso si solo quisiera comprobar todas las posibilidades de dos opciones, un poco de matemáticas muestra que tengo que considerar 4.690 combinaciones.
¿Una forma diferente de probar?
Afortunadamente, en JMP 12 tenemos arreglos de arreglos! Pueden ayudarnos a derivar escenarios de prueba para software de prueba. Con una matriz de cobertura, si especifico fuerza 2, sé que todas las combinaciones de dos opciones serán cubiertas. Utilizo DOE-> Covering Array (solo JMP Pro), y agrego los factores correspondientes a cada opción. Parte de la configuración de mis factores se muestra a continuación, pero he incluido la tabla de Factores en la Intercambio de archivos . Puede cargar esto bajo la plataforma Covering Array manteniendo abierta la tabla de factores y seleccionando Factores de carga en el menú del triángulo rojo.

Mantener la Fuerza = 2 significa que quiero asegurarme de que todas las combinaciones de todos los pares de opciones se incluirán en algún lugar del diseño. Cuando elegí Continuar y luego Hacer diseño, terminé con un diseño de 20 ejecuciones (los resultados pueden variar, pero generalmente el tamaño de la ejecución estará en el rango de 19 a 21 ejecuciones). Es asombroso pensar que con las 45 opciones, todas las combinaciones de todos los pares posibles aparecen en solo 20 carreras.
¿Puedo hacerlo en menos carreras?
Dado que los dos factores con el mayor número de valores tienen cuatro niveles cada uno, el límite inferior del tamaño de esta matriz de cobertura de fuerza 2 es de 16 carreras. Para este ejemplo, tener cuatro carreras adicionales no parece ser un gran problema, pero hay casos en que un 20% de ahorro en la cantidad de carreras es sustancial en términos de tiempo y dinero. Es fácil tratar de encontrar un diseño más pequeño. utilizando el botón Optimizar . Seleccionando 10,000 iteraciones, pude encontrar el diseño de 16 ejecuciones en el Intercambio de archivos .
¡Pero espera hay mas!
Echemos un vistazo más de cerca a las métricas de la plataforma Covering Array:

Los números de cobertura representan el porcentaje de combinaciones que involucran t factores que están cubiertos por el diseño (es decir, cuántas de las combinaciones posibles aparecen en algún lugar juntas en el diseño). Si la plataforma categórica pasa el conjunto de pruebas definido por la matriz de cobertura, hemos cubierto todas las combinaciones de cualquier par de opciones, por lo tanto, la cobertura del 100 por ciento para t = 2. Pero, si todo pasa, también hemos probado (y aprobado) más del 85 por ciento de las combinaciones de tres opciones, y el 57 por ciento de esas cuatro opciones.
Esto parece demasiado bueno para ser verdad
Con todas esas opciones, ¿16 carreras realmente me dan toda esa información? Tenga en cuenta que solo sé que todas esas combinaciones aparecen en el diseño; si todo pasa, sabemos que no hay fallas debido a dos opciones juntas, así como a muchas de las combinaciones de tres y cuatro opciones.
¿Qué pasa si veo un fallo? Luego, la matriz de cobertura nos ha ayudado a identificar que hay un problema, pero no la causa directa de ese problema. ¿Nos puede ayudar a encontrar la causa del fallo? Resulta que tenemos una gran cantidad de información contenida en la matriz de cobertura basada no solo en la falla, sino también en las pruebas exitosas. La próxima vez, veremos cómo puede ayudarnos a encontrar una causa.
Hola,
Me pregunto cómo el diseño de la matriz de cobertura calcula el total de corridas y la combinación necesaria para un problema con 4 factores, t = 3, ¿cada factor tiene 4 niveles? Cuando apliqué una combinación no permitida, ¿cómo se deciden las ejecuciones adicionales?
Gracias