https://www.linkedin.com/pulse/20141005 120146-13798802-agile-tester-foundation- chapter-2-fundamental-agile-testing- principles-practices-and-processes-1-of-3-

Slides:



Advertisements
Presentaciones similares
EL PROCESO DE DESARROLLO DEL SOFTWARE
Advertisements

Ciclo de vida de desarrollo de software
Metodologías ágiles.
Gestión de Recursos Informáticos Unidad Nº 3: Gestión de calidad y eficiencia.
Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles.
METODOLOGÍAS ÁGILES “PROCESO UNIFICADO ÁGIL (AUP)
Metodología de Trabajo Aperio: SCRUM Aperio Inducción
METODOLOGIAS AGILES DE CONSTRUCCION DE SOFWARE
Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles.
Desarrollo de Software
Codificación.
Administración de Procesos de Pruebas
Modelo de Desarrollo XP
Calidad en entornos ágiles Juan Gabardini Administración y Control de Proyectos Informáticos II Facultad de Ingeniería - UBA.
ITERASOFT. OBJETIVOS DEL GRUPO Producir un sistema Manejador de Itinerarios de alta calidad y confiabilidad Realizar un proyecto bien administrado y productivo.
Test Driven Development TDD
Test Driven Development
Ciclos de vida ágiles.  Es una metodología ágil que plantea: ◦ Iteraciones cortas ◦ Entregables periódicos ◦ Colaboración con el cliente full time ◦
 Tema del proyecto  Integrantes y roles del equipo  Objetivos del proyecto  Alcance.
Fase Inicial Grupo 6 – PIS – 2013.
9.4 ACTIVIDADES DE LAS PRUEBAS Describe las actividades de las pruebas dentro de las que están: Inspección de componentes Pruebas unitarias Pruebas de.
Ingeniería de Software: Metodologías Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de:
Ingeniería de Software
Ingeniería del Software
Programación Extrema Leonardo Ramírez Z.. Contenido Motivación ¿Qué es Programación Extrema? La filosofía detrás de la Programación Extrema El proceso.
Ximena Romano – Doris Correa
Ingeniería de Software
INTRODUCCIÓN A LA INGENIERÍA DEL SOFTWARE
VISIÓN GENERAL DE LA IS Con independencia del modelo de proceso hay tres fases genéricas: Fase de definición Fase de desarrollo Fase de mantenimiento Cada.
Pruebas y La Vida del Ciclo de Desarrollo del Software
Especialización en Desarrollo de Software
Ing. Noretsys Rodríguez. Definición de Conceptos  Falla: Ocurre cuando un programa no se comporta de manera adecuada. Es una propiedad estadística de.
Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de metodologías ágiles Tatiana Alejandra.
Las Pruebas del Software y sus Fundamentos
INGENIERIA DE SOFTWARE
Alexander Aristizabal Ángelo flores herrera
Ingeniería de Software
Grupo 10 – 2008 Proyecto de Ingeniería de Software
METODOLOGÍAS DE DESARROLLO DE SOFTWARE MODERNAS
INGENIERÍA DEL SOFTWARE GESTIÓN DE PROYECTOS
 Sara Isabel Osorio Alcaraz Ana Isabel Vallejo Grisales 10 Informática 1.
Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de metodologías ágiles Tatiana Alejandra.
Roles de Open UP.
Elaborado por: Mayoral Cruz Matilde Morales Espinoza Anllhins
METODOLOGÍAS ÁGILES “PROCESO UNIFICADO ÁGIL (AUP)
Introducción al proceso de verificación y validación.
Actividades en el Proceso de desarrollo de Software
GRUPO ANALISIS Y DESARROLLO DE SISTEMAS DE INFORMACION SENA DESARROLLO ITERATIVO E INCREMENTAL INTEGRANTES STEVEN PALOMA ALEJANDRO BERNAL TATIANA.
Simón Esneider Herrera Álvarez Media Técnica Casd 10-2
problemas de la calidad del software
Estructurar tus ideas para hacerlas realidad
Test Driven Development
Es una tecnología centralizada que ayuda a impulsar las iniciativas de calidad en toda la empresa. Ayuda a estandarizar en un número limitado de productos.
Mejores Prácticas para el Desarrollo de Software Omar de Jesús Rosales Hernández.
Sistema de control de calidad de software
Ingeniería en Informática F UNDAMENTOS DE C OMPUTACIÓN B ACHILLERATO EN I NGENIERÍA I NFORMÁTICA L IC. C ARLOS H. G UTIÉRREZ L EÓN.
INTRODUCCIÓN A INGENIERIA KARLA TATIANA OLAYA TORRES ID ( )
Proceso de desarrollo de Software
Título de la Presentación Estado del arte sobre el testeo de software en las Pymes de Aragón 12 de Noviembre de 2015.
Autor: Reinozo Cuesta Christian Marcelo
CICLO DE VIDA DE UN SOFTWARE. Es el conjunto de los programas de cómputo, procedimientos, reglas, documentación y datos asociados, que forman parte de.
Autores: Myriam Montes, Iván Viera, Carlos Caizaguano, José Sancho
Plan de Pruebas de Aceptación
Es una metodología ágil diseñada para el desarrollo de software, basada en la calidad y el monitoreo constante del proyecto. Consiste esencialmente en.
Reorganización de la Dirección de Servicios de Información Administrativa (propuesta)
Integrantes: Mejía Zúñiga Yoselin Taco Apaza Pamela Ychuta Torres John.
Sistemas de calidad en el desarrollo de software.
ALUMNO ALUMNO: DIEGO URES LEGAJO LEGAJO: La prueba unitaria es la herramienta para la Calidad Presentación Trabajo Final de Grado.
Metodologías de Desarrollo Ágil
Desarrollo iterativo e incremental
Transcripción de la presentación:

agile-tester-foundation- chapter-2-fundamental-agile-testing- principles-practices-and-processes-1-of-3- articles

Las metodologías ágiles no ven al software testing como una fase separada, sino como parte integral del Desarrollo de software al igual que la programación. El Testing no es una fase: El testing continuo es la única forma de garantizar avance continuo, por esto, el testing se realiza continuamente junto con el desarrollo de software y demás actividades. El Testing hace avanzar el proyecto: Bajo métodos convencionales, el testing es una alcabala, en cambio en Agile Testing se proporciona retroalimentación continua, permitiendo corregir el rumbo continuamente durante el desarrollo de software. Todo el equipo realiza pruebas: en Agile Testing, los Analistas de negocio y Desarrolladores de software también ejecutan pruebas, no sólo los testers como en métodos convencionales. Reducir el tiempo para recibir retroalimentación: En Agile Testing, los equipos del área de negocio (el cliente) están involucrados en cada iteración, no solo al final durante la fase de aceptación, como resultado, el tiempo de retroalimentación se reduce y el costo de correcciones también es menor. Código limpio: Los defectos en el código se corrigen en la misma iteración, por lo que se mantiene el código limpio. Reducir la documentación de pruebas: Los Agile Testers usan listas de chequeo reusables en lugar de documentación extensa, se enfocan en la esencia de la prueba en lugar de detalles. Siguiendo principios ágiles estas listas de chequeo son el inicio de las definiciones de las pruebas y no el final, y el tester cuenta con libertad para aportar valor. Guiado por pruebas: El Agile Testing, las pruebas se hacen “durante” el desarrollo y no después del desarrollo como en métodos convencionales.

Test Driven Development (TDD): El desarrollo guiado por pruebas, es una técnica que combina unenfoque de refactorización del lado de desarrollo con un enfoque de probar primero en cuanto al testing. Aquí te dejamos el primero de una serie de artículos sobre el Test Driven Development (TDD). enfoque de refactorizaciónartículos sobre el Test Driven Development (TDD) Acceptance Test Driven Development (ATDD): Es una dimensión del TDD aplicada al nivel de gestión de requerimientos de software, en el cual las pruebas escritas son a nivel de cliente, es decir, lo equivalente a una prueba de aceptación o test funcional. Aquí te dejamos un artículo sobre Acceptance Test Driven Development (ATDD) y como implementarlo con la herramienta Selenium.Acceptance Test Driven Development (ATDD) y como implementarlo con la herramienta Selenium Behaviour Driven Development (BDD): También puede llamarse Story Driven Development. Bajo este enfoque primero se desarrolla una prueba funcional o de historia de usuario automatizada, luego se ejecuta el desarrollo aplicando TDD hasta que la prueba es exitosa. Aquí te compartimos un artículo sobre la herramienta Cucumber y su uso para aplicar Behaviour Driven Development (BDD).Cucumber y su uso para aplicar Behaviour Driven Development (BDD) Testing exploratorio: Enfoque en el cual el aprendizaje de la funcionalidad, diseño de pruebas y ejecución de pruebas ocurren simultáneamente, en contraposición con el enfoque convencional en el cual primero se documenta la funcionalidad o requisito, luego se diseña el caso de prueba y luego se ejecuta de acuerdo a guiones prestablecidos. Las pruebas exploratorias no están predefinidas ni se ejecutan según un plan. Automatización de pruebas de regresión: Tanto la integración continua como la refactorización son prácticas necesarias para poder implementar una metodología ágil de desarrollo de software. Ambas técnicas implican modificar las fuentes de código constantemente, por lo que la automatización de pruebas de regresión por medio de herramientas es una necesidad imperiosa. Aquí te dejamos más información sobre herramientas para automatización de pruebas.herramientas para automatización de pruebas Automatización de pruebas unitarias: Consiste en usar un marco de trabajo o framework (como NUnit) para ejecutar tus tests unitarios, en lugar de ejecutar estos manualmente una y otra vez cada vez que modificas el código. Para ello existen múltiples frameworks, muchos de los cuales pueden integrarse en los ambientes IDE. Algunas de las prácticas relacionadas con Agile Testing

El Rol del Tester en un marco Agile El rol del tester en un equipo ágil es el de un experto, garante que se entregue el valor de negocio deseado por el cliente a un ritmo sostenible y continuo. Para ello, utiliza la “especificación mediante ejemplos” para capturar los comportamientos deseados y no deseados para guiar la codificación. El foco del Tester en un entorno Agile está en la aplicación de enfoques tipo Behaviour Driven Development (BDD), usualmente trabajando en paralelo con el equipo de desarrollo y no en la fase final. Esto se contrapone con el rol convencional del tester, en el cual es un profesional encargado de elaborar diseños de prueba (a partir de diseños funcionales), y luego ser un simple ejecutor de guiones prestablecidos. En un entorno Agile el rol del tester es de mayor especialización técnica, considerando que debe manejar herramientas de automatización, gestión ágil y metodologías. diseños de prueba Además, el rol también posee mayor interacción con otras personas como por ejemplo el cliente o los desarrolladores, por lo que también necesitará habilidades blandas de comunicación, orientación al cliente, negociación, entre otras.

Integración continua (1)

Integración continua (2) agile-tester-foundation-chapter-2-fundamental-agile-testing- principles-practices-and-processes-1-of-3-articles

Estar probando constantemente Si alguna prueba automatizada falla, el equipo debería solucionar el defecto subyacente en el tiempo para el siguiente código de registro de entrada. Ventajas – Confirma que el build esta funcionando y es estable – Ahorra tiempo y dinero – Mejora la precision – Incremente la cobertura de preubas

Los tester son los mejores amigos del product owner

De tester a lider de calidad dentro del equipo Comparte conocimiento Anima a todos a que realicen pruebas desde momentos tempranos

Enfoque en la automatización No hay poder humano para estar haciendo pruebas de regresion cada dos semanas Consiste en – Crear – ejecutar – Monitorear – sostener

El enfoque en la automatizacion Implica entonces un enfoque de más valor – Experiencia de usuario – Ataques de software – Encontrar deuda técnic

Aceptar el cambio es permitido por documentación liviana Se logra debido a la adopcion de automatización

El proyecto ágiles el esfuerzo radica en minimizar la documentación, tener software funcionando y pruebas automatizadas

Historias de usuario vs casos de uso

Productos de trabajo de un tester en Agile Plan de pruebas por sprint Casos de prueba Escenarios automatizados Escenarios que cumplen el Done Reporte de defectos y registro de los mismos Metricas de pruebas

Equipo de pruebas independiente Prueba al final de cada sprint solo las historias en DONE!!! Debe trabajar al mismo ritmo del equipo agil Embebidos pierden el independencia