Please enable JavaScript.
Coggle requires JavaScript to display documents.
TÉCNICAS DE VERIFICACIÓN Y VALIDACIÓN DE SOFTWARE - Coggle Diagram
TÉCNICAS DE VERIFICACIÓN Y VALIDACIÓN DE SOFTWARE
Métodos Estáticos o de VERIFICACIÓN
Code Inspections
Aplicación
:
Construcción y pruebas
Ventajas
Efectivo para encontrar problemas o fallas en documentación
Previene la propagación de una falla en el CVDS
Desventajas
Toma tiempo y requiere disciplina
Costoso y necesita de testers hábiles
Propósito
Se revisan los puntos de vista de 3 a 6 participantes para identificar fallas y áreas críticas en el código
Reviews
Aplicación:
Pruebas
Ventajas
Resultados buenos sin gastar recursos
Eficiente y significante por su naturaleza
Desventajas
Conducir a malos resultados si el revisor no tiene los conocimientos suficientes.
Propósito
Se revisa, acepta, deniega y califican los datos para que sean consistentes
Walk-through
Aplicación
:
Construcción y pruebas
Ventajas
Ayuda a encontrar errores potenciales
Puede ser usado para compartir documentos con otros
Desventajas
El autor puede ocultar algunas áreas críticas y enfatizar innecesariamente algunas áreas específicas de su interés.
Propósito
Ayuda a disminuir el tiempo general de ejecución de la prueba y también a reducir el conjunto de datos de prueba.
Formal Proofs
Aplicación
:
Todas
Ventajas
Ayuda a tener un proceso sólido.
Buen proceso, buen producto
Desventajas
Toma tiempo, hay que ser cuidadosos de usarlo de manera adecuada.
Propósito
Pruebas automatizadas para verificar que el programa se comporte como debería.
Métodos Dinámicos o de VALIDACIÓN
Black-box
Equivalence Class Partitioning
Aplicación
Pruebas
Ventajas
Ayuda a disminuir el tiempo general de ejecución de la prueba y también a reducir el conjunto de datos de prueba.
Desventajas
Es posible que no se cubran todos los insumos necesarios.
Suposiciones por parte del tester sobre su correcto funcionamiento
Propósito
Divide el dominio de entrada del modelo en clases equivalentes.
Boundary Level Analysis
Aplicación
:
Pruebas
Ventajas
Reduce el número de casos de prueba necesarios para cubrir el dominio de entrada
Ahorra tiempo y recursos, así como hacer los casos de prueba manejables y mantenibles
Desventajas
Está limitado a dominios de entrada complejos
Puede pasar por alto errores de lógica, datos o entorno.
Propósito
Prueba la precisión del modelo usando casos de prueba.
Decision Table Based Testing
Aplicación
:
Pruebas
Ventajas
Resume las salidas de una situación y posible acciones
Desventajas
Presenta una pequeña parte de las soluciones
Propósito
Se combinan varios datos de entrada para probarlas en el sistema.
Heuristic Testing
Error Guessing
Aplicación
:
Pruebas
Ventajas
Es un proceso detallado y técnicamente sólido que evalúa el producto según criterios muy claros.
Hay menos cuestiones prácticas y éticas asociadas a la evaluación heurística, ya que los evaluadores realizan pruebas en un espacio virtual.
Desventajas
Se requiere una cantidad de expertos y esto puede llevar mucho tiempo y ser costoso de investigar y configurar.
A menudo los problemas identificados no son críticos (o incluso reales en algunos casos).
Propósito
Usar reglas/estándares para medir la usabilidad y encontrar problemas
White-box
DD Path Testing
Aplicación:
Pruebas
Ventajas
Reduce repetición de pruebas
Desventajas
Gran conocimiento de programación y ejecución de test
Propósito
Seleccionar pasos específicos para predecir una salida concreta
Data Flow Testing
Aplicación:
Pruebas
Ventajas
Ayuda encontrar errores de variables
Desventaja
Requiere conocimiento de programación
Consume tiempo
Propósito
Explora secuencias respecto a eventos para analizar el estado de los datos y detectar anomalías
Cause Effect Graphing
Aplicación
:
Pruebas
Ventajas
Permite una cobertura completa de todas las combinaciones posibles de condiciones y efectos, asegurando que no se omitan posibles escenarios de prueba
Ayuda a identificar errores lógicos y omisiones en el diseño del software.
Desventajas
Puede volverse muy complejo y difícil de manejar para sistemas grandes con muchas condiciones y efectos.
Requiere tiempo y esfuerzo significativos para construir y analizar el gráfico, especialmente para sistemas complejos.
Propósito
Crea situaciones especiales e imposibles, para observar como respondería el modelo
Interface Testing
Aplicación:
Pruebas
Propósito
Examina la entrada/salida de datos. Asegura que entren y salgan los datos correctos y que los componentes se comuniquen de una manera adecuada.
Ventajas
Identifica problemas en la comunicación entre componentes antes de que se conviertan en fallos críticos en el sistema
Ayuda a verificar las integraciones continuas y despliegues, reduciendo los riesgos de errores en la fase de integración
Desventajas
Puede ser complejo configurar y ejecutar pruebas de interfaz, especialmente en sistemas con muchas interfaces y dependencias.
Necesita un conocimiento profundo de las interfaces y los protocolos de comunicación para diseñar y ejecutar las pruebas adecuadamente.