Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Argentesting 2017 - Pruebas de software basadas en riesgos

700 views

Published on

Taller teórico-práctico que abordará el concepto y los fundamentos del enfoque de Pruebas de Software Basadas en Riegos incluyendo casos prácticos y recomendaciones de buenas prácticas. Para este taller no se requieren computadoras.

Por Luis Mercadal.

Published in: Software
  • Be the first to comment

  • Be the first to like this

Argentesting 2017 - Pruebas de software basadas en riesgos

  1. 1. Pruebas de Software Basadas en Riegos Ing. Luis Mercadal luismercadal@formacionticweb.com.ar Ciudad Autónoma de Buenos Aires - Argentina 24 de octubre de 2017 www.FormacionTICweb.com.ar | www.twitter.com/FormacionTICweb | www.facebook.com/FormacionTICweb
  2. 2. Contenido
  3. 3. Contenido • Presentación • Definiciones • Pruebas Basadas en Riesgos • Ejercicios Prácticos • Referencias
  4. 4. Presentación
  5. 5. Presentación Ing. Luis Mercadal UCC / Ingeniero de Sistemas PMI / Project Management Professional (PMP) Scrum Alliance / Certified ScrumMaster (CSM) ISTQB Certified Tester Foundation Level (CTFL) ISTQB Certified Tester Advanced Level - Test Manager (CTAL-TM) ISTQB Certified Tester Advanced Level - Test Analyst (CTAL-TA) ITIL Foundation Certificate in IT Service Management (ITILF) +21 años de experiencia en las tecnologías de la información y las comunicaciones (TIC) en empresas nacionales y multinacionales. +11 años de experiencia en el Aseguramiento de la Calidad y en las Pruebas de Software en equipos multiculturales, localizados y distribuidos geográficamente. +5 años de experiencia en el desarrollo y dictado de cursos sobre gestión de proyectos y de la calidad, y pruebas de software. Fundador e Instructor de Formación TIC Miembro del HASTQB y de la Fundación TMMi
  6. 6. Presentación Formación TIC es una empresa que nace en el año 2011, en la ciudad de Buenos Aires, Argentina, como respuesta a la creciente necesidad de profesionales capacitados en las tecnologías de la información y las comunicaciones (TIC) Unidad Capacitadora (UCAP) del Programa “Capacitación PyME” del Ministerio de Producción - Presidencia de la Nación. ISTQB Accredited Training Provider (Proveedor Acreditado de Formación del ISTQB) Desarrollo y dictado de cursos sobre gestión de proyectos y de la calidad, y pruebas de software Organización de exámenes de certificación del ISTQB supervisados por el iSQI
  7. 7. Definiciones
  8. 8. Definiciones Calidad • Grado en el cual un componente, sistema o proceso satisface requisitos especificados y/o necesidades y expectativas del usuario/ cliente. Calidad del Software • La totalidad de funcionalidad y prestaciones de un producto software que están relacionadas con su capacidad de satisfacer las necesidades explícitas o implícitas. [International Software Testing Qualifications Board (ISTQB)]
  9. 9. Definiciones Riesgo • Un evento o condición incierta que, si se produce, tiene un efecto positivo o negativo en uno o más de los objetivos de un proyecto. [Project Management Institute (PMI)/ Guía del PMBOK] • Factor que puede resultar en futuras consecuencias negativas, expresado normalmente como impacto y probabilidad. [International Software Testing Qualifications Board (ISTQB)] • El efecto de la incertidumbre. [ISO 9000:2015 / Sistemas de Gestión de la Calidad - Fundamentos y Vocabulario]
  10. 10. Definiciones Nivel de Riesgo • La importancia de un riesgo según lo definido por sus características, impacto y probabilidad. • El nivel de riesgo puede utilizarse para determinar la intensidad de las pruebas que tienen que ejecutarse. • Un nivel de riesgo puede ser expresado ya sea cualitativamente (por ejemplo, alta, media, baja) o cuantitativamente. [International Software Testing Qualifications Board (ISTQB)]
  11. 11. Definiciones Tipos de Riesgos • Riesgos del Proyecto • Riesgos del Producto
  12. 12. Definiciones Riesgos del Proyecto • Riesgos relativos a la gestión y control de un proyecto (de pruebas), por ejemplo, falta de personal, plazos estrictos, requisitos cambiantes, etc. • Riesgos de la Planificación [International Software Testing Qualifications Board (ISTQB)]
  13. 13. Definiciones Riesgos del Proyecto • Ejemplos: Subestimación del tamaño del proyecto Renuncia de miembros claves del proyecto No disponibilidad del hardware y/o software requerido Personal sin la formación necesaria Falta de personal Incumplimiento del contrato por parte de un proveedor
  14. 14. Definiciones Riesgos del Producto • Riesgos directamente relacionados con el objeto de prueba. • Riesgos de la Calidad • Riesgos de la Calidad del Producto [International Software Testing Qualifications Board (ISTQB)]
  15. 15. Definiciones Riesgos del Producto • Ejemplos: Cambios en la tecnología utilizada Desviación respecto de estándares y normas El ambiente de pruebas no está listo a tiempo Posibilidad de que el software pueda dañar a una persona o a una empresa Funcionalidad faltante o errónea
  16. 16. Definiciones Gestión de los Riesgos del Proyecto • Incluye los procesos para llevar a cabo la planificación de la gestión de riesgos, así como la identificación, análisis, planificación de respuesta y control de los riesgos de un proyecto. [Project Management Institute (PMI)/ Guía del PMBOK] Pruebas Basadas en Riesgos • Enfoque de pruebas para reducir el nivel de riesgos del producto e informar a los afectados de su estado, comenzando desde las fases iniciales de un proyecto. • Implica la identificación de riesgos del producto y su uso para dirigir el proceso de pruebas. [International Software Testing Qualifications Board (ISTQB)]
  17. 17. Pruebas Basadas en Riesgos
  18. 18. Pruebas Basadas en Riesgos Principales actividades • Identificación de riesgos • Evaluación de riesgos • Mitigación de riesgos • Gestión de riesgos
  19. 19. Pruebas Basadas en Riesgos Identificación de riesgos • Las partes interesadas pueden identificar riesgos a través de una o más de las siguientes técnicas: Entrevistas de expertos Evaluaciones independientes Uso de plantillas de riesgos Retrospectivas del proyecto Talleres de riesgos Tormenta de ideas Listas de comprobación Experiencias anteriores • Mediante la participación de la muestra más amplia posible de partes interesadas, el proceso de identificación de riesgos tiene mayores posibilidades de identificar los riesgos más significativos de la calidad del producto.
  20. 20. Pruebas Basadas en Riesgos Evaluación de riesgos • Una vez que ha ocurrido la identificación de riesgos, la evaluación de riesgos puede comenzar • La evaluación de riesgos implica la categorización de los riesgos y la determinación de la probabilidad y el impacto asociado a cada riesgo. • La evaluación de riesgos puede también implicar la evaluación o la asignación de otras propiedades de cada riesgo, como propietario de riesgos • El impacto sobre la ocurrencia es la severidad del efecto en los usuarios, clientes y otras partes interesadas • El nivel de riesgo puede evaluarse cuantitativamente o cualitativamente
  21. 21. Pruebas Basadas en Riesgos Evaluación de riesgos • Matriz de Riesgo Riesgo = Probabilidad x Impacto
  22. 22. Pruebas Basadas en Riesgos Mitigación de riesgos • Cuatro principios básicos para la mitigación de riesgos Evitar Transferir Mitigar Aceptar
  23. 23. Pruebas Basadas en Riesgos Gestión de riesgos • La gestión del riesgo es un proceso continuo • Antes de cada ciclo de prueba es necesario realizar un nuevo ciclo de gestión de riesgos • Factores importantes: Riesgos de productos nuevos o modificados Zonas inestables o propensas a errores detectadas durante las pruebas Riesgos provenientes de defectos corregidos Zonas con una baja cobertura de pruebas
  24. 24. Pruebas Basadas en Riesgos Enfoque de Pruebas Basadas en Riesgos • Ofrece oportunidades proactivas de reducir los niveles de riesgo del producto. • Implica la identificación de riesgos del producto y su uso en la planificación y control, especificación, preparación y ejecución de las pruebas. • Los riesgos identificados pueden utilizarse para: Establecer las técnicas de pruebas a emplear Establecer el alcance de las pruebas a ejecutar Priorizar las pruebas en un intento por identificar los defectos críticos lo antes posible Establecer si podría utilizarse alguna actividad ajena a las pruebas para reducir el riesgo (por ejemplo, impartir formación a diseñadores sin experiencia)
  25. 25. Pruebas Basadas en Riesgos Técnicas de Pruebas Basadas en Riesgos • Técnicas informales • Técnicas formales Enfoques ligeros de gestión de riesgos Enfoques pesados de gestión de riesgos
  26. 26. Pruebas Basadas en Riesgos Técnicas de Pruebas Basadas en Riesgos • Técnicas informales El probador analiza los riesgos de la calidad durante pruebas exploratorias Puede conducir a un foco excesivo sobre la probabilidad de defectos, no en sus impactos No incluye entradas de partes interesadas multifuncionales.
  27. 27. Pruebas Basadas en Riesgos Técnicas de Pruebas Basadas en Riesgos • Técnicas formales Enfoques ligeros de gestión de riesgos ▫ Fáciles de entender y utilizar. Requieren un mínimo esfuerzo para documentación y análisis de riesgos ▫ Se puede aplicar en un amplio rango de dominios y ciclos de vida inclusive en desarrollos ágiles ▫ Se podrían perder algunos puntos importantes debido a funciones limitadas ▫ En algunos casos no son aplicables para sistemas críticos para la seguridad
  28. 28. Pruebas Basadas en Riesgos Técnicas de Pruebas Basadas en Riesgos • Técnicas formales Enfoques ligeros de gestión de riesgos ▫ Análisis y Gestión Pragmático de Riesgos (Pragmatic Risk Analysis and Management, PRAM) ▫ Pruebas de Software Sistemáticas (Systematic Software Testing, SST) ▫ Gestión de Riesgos del Producto (Product Risk Management, PRisMa)
  29. 29. Pruebas Basadas en Riesgos Técnicas de Pruebas Basadas en Riesgos • Técnicas formales Enfoques pesados de gestión de riesgos ▫ Son más adecuados para sistemas críticos para la seguridad ▫ Requieren de un entrenamiento más avanzado para su utilización ▫ Requieren de mucho esfuerzo el dar soporte al proceso incluyendo documentación
  30. 30. Pruebas Basadas en Riesgos Técnicas de Pruebas Basadas en Riesgos • Técnicas formales Enfoques pesados de gestión de riesgos ▫ Análisis de Riesgos (Hazard Analysis) ▫ Costo de Exposición (Cost of Exposure) ▫ AMEF - Análisis del Modo y Efecto de Falla (Failure Mode and Effect Analysis, FMEA) ▫ DFC - Despliegue de la Función de Calidad (Quality Function Deployment, QFD) ▫ AAF - Análisis de Árbol de Falla (Fault Tree Analysis, FTA)
  31. 31. Ejercicios Prácticos
  32. 32. Ejercicios Prácticos Análisis de Riesgos • Análisis de Riesgos de la Planificación y Contingencias (Riesgos del Proyecto) Ejercicio 1. • Análisis de Riesgos del Software (Riesgos del Producto) Ejercicio 2.
  33. 33. Ejercicios Prácticos Ejercicio 1. Análisis de Riesgos de la Planificación y Contingencias 1.1. Un usuario clave introduce un importante cambio de requerimientos en una etapa avanzada del ciclo de vida del software. ¿Qué haría? Listar posibles Contingencias
  34. 34. Ejercicios Prácticos Ejercicio 1.1. Posible Solución Contingencia #1 Pedir al grupo de usuarios para que contribuyan con más usuarios en el esfuerzo de las pruebas. -Agregar más recursos- Contingencia #2 Decidir no implementar una funcionalidad de baja prioridad hasta una próxima versión. -Reducir el alcance- Contingencia #3 Decidir no probar (o, al menos, probar menos) algunas de las funcionalidad de bajo riesgo identificadas en el análisis de riesgos del software. -Reducir los procesos de calidad-
  35. 35. Ejercicios Prácticos Ejercicio 1. Análisis de Riesgos de la Planificación y Contingencias 1.2. El tamaño del proyecto sigue creciente, esto es un doble revés. No sólo hace que los recursos de pruebas necesiten crecer debido al aumento en el tamaño del proyecto, sino que los índices de productividad para el desarrollo del software y para las pruebas normalmente disminuyen a medida que el tamaño del proyecto aumenta. ¿Qué haría? Listar posibles Contingencias
  36. 36. Ejercicios Prácticos Ejercicio 1.2. Posible Solución Contingencia #1 Agregar recursos. -Subcontratar, añadir usuarios, agregar desarrolladores, autorizar horas extras- Contingencia #2 Reducir el alcance del proyecto. Elegir una estrategia de entrega incremental al cliente. Contingencia #3 Reducir la prueba de algunos de los módulos de menor riesgo. - Reducir los procesos de calidad- Contingencia #4 Retrasar la implementación.
  37. 37. Ejercicios Prácticos Ejercicio 2. Análisis de Riesgos del Software Un producto software de un cajero automático (ATM) tiene las siguientes características y atributos: Características: Retirar Dinero en Efectivo, Depósito en Efectivo, Consulta de Saldo, Transferencia de Fondos, y Hacer Pago de un Préstamo Atributos: Usabilidad, Rendimiento, y Seguridad Determinar probabilidad e impacto, priorizar, y considerar mitigación de riesgos
  38. 38. Ejercicios Prácticos Ejercicio 2. Posible Solución a. Determinar probabilidad: Alta, Media, o Baja
  39. 39. Ejercicios Prácticos Ejercicio 2. Posible Solución... a. Determinar probabilidad...
  40. 40. Ejercicios Prácticos Ejercicio 2. Posible Solución... b. Determinar impacto: Alto, Medio, o Bajo
  41. 41. Ejercicios Prácticos Ejercicio 2. Posible Solución... b. Determinar impacto...
  42. 42. Ejercicios Prácticos Ejercicio 2. Posible Solución... c. Priorizar -Asignar valores y calcular prioridad-
  43. 43. Ejercicios Prácticos Ejercicio 2. Posible Solución... c. Priorizar... Alta/o = 3 Media/o = 2 Baja/o = 1 Riesgo = Probabilidad x Impacto o Riesgo = Probabilidad + Impacto
  44. 44. Ejercicios Prácticos Ejercicio 2. Posible Solución... c. Priorizar...
  45. 45. Ejercicios Prácticos Ejercicio 2. Posible Solución... d. Mitigación
  46. 46. Referencias
  47. 47. Referencias • Black, Rex (2007) “Pragmatic Software Testing: Becoming an Effective and Efficient Test Professional”, Wiley • Craig, Rick D. y Jaskiel, Stefan P. (2002) “Systematic Software Testing”, Artech House • International Organization for Standardization, ISO (2015) “ISO 9000:2015 / Quality management systems - Fundamentals and vocabulary” • International Software Testing Qualifications Board, ISTQB (2011) “Certified Tester Foundation Level Syllabus” • International Software Testing Qualifications Board, ISTQB (2012) “Certified Tester Advanced Level Syllabus - Test Manager” • International Software Testing Qualifications Board, ISTQB (2012) “Certified Tester Advanced Level Syllabus - Test Analyst” • International Software Testing Qualifications Board, ISTQB (2012) “Certified Tester Advanced Level Syllabus - Technical Test Analyst” • Project Management Institute, PMI (2017) “A Guide to the Project Management Body of Knowledge (PMBOK Guide) - Sixth Edition” • van Veenendaal, Erik (2012) “Practical Risk-Based Testing. The PRISMA Approach”, Uitgeverij Tutein Nolthenius (UTN) Todos los logos, nombres, fotos, y marcas registradas pertenecen a sus respectivos propietarios.
  48. 48. ¡Muchas Gracias! Ing. Luis Mercadal luismercadal@formacionticweb.com.ar Ciudad Autónoma de Buenos Aires - Argentina 24 de octubre de 2017 www.FormacionTICweb.com.ar | www.twitter.com/FormacionTICweb | www.facebook.com/FormacionTICweb

×