Upload
jesus-perez-franco
View
191
Download
1
Embed Size (px)
DESCRIPTION
Un modelo de trabajo ágil que nos permita desarrollar con metodología SCRUM sin olvidarnos del aseguramiento de la calidad y usando un ecosistema de herramientas para automatizar todo el proceso y ganar en eficiencia. ¿Si estoy desarrollando con SCRUM, en que momento aplicamos el testing? 1. Después de varios incrementos, creamos un sprint de testing 2. Al finalizar cada sprint, realizamos pruebas. 3. Voy desarrollando y voy testeando cada entrega de forma pararela separando el equipo en desarrolladores auto* y testeadores auto*. A mi me gusta la opción 3 ;-) Sin olvidarnos de la tendencia actual de definir estrategias DevOps que permita una mejor planificación conjunta de proyectos y operaciones, sinergias entre los equipos IT y desarrollo con la automatización de herramientas para el desarrollo, build y provisión de entornos. Siempre a la mano los marcos de referencia para mejorar la productividad como Lean IT, Kanban y SCRUM.
Citation preview
“Preocúpate por la calidad de tus productos, mucha gente no está preparada para la excelencia y
sorprenderás”
Jesús Pérez Franco
Steve Jobs
es.linkedin.com/in/jpefranco/
@jpefranco
El arte de crear software de calidad con agilidad
1
v. 1.4Actualizado 26-02-15
¿Quieres conocerlo mi visión de un modelo de testing ágil?
Necesitamos un modelo ágil de trabajo que nos permita crear software de calidad
2
Revisamos y unimos todas las «piezas» que intervienen en el modelo
Creando hábitos ágiles de trabajo
Entornos disponibles
Ecosistema Software
Vocación de Automatización
El Incremento y el nivel de certificación
Catálogo de verificaciones
Gestión de Pruebas
Gestión de defectos
Base de Conocimiento
Implementación Ágil, técnicas y roles
3
Entorno desarrollo
Definiendo un Ecosistemas de software que gestione todoel ciclo de vida.
Definir una Estrategia conjunta en el modelo de desarrollo, calidad y operación
Vocación de Automatización e Integración continua
Operaciones IT
Desarrollo
Calidad (QA)
Negocio¿Cómo eliminar las barreras?
Operaciones IT
Desarrollo
Calidad (QA)
Negocio
Estrategia DevOps para el despliegue o entrega continua
Un modelo ágil como SCRUM requiere una dosis extra de disciplina porque
cada miembro del equipo es indispensable
El equipo tiene que tener toda la información y las expectativas
La Definición de hecho y acuerdos del equipo, se requiere si
optamos por un modelo ágil de trabajo
como SCRUM
SCM: Debe reunir las habilidades necesarias.
Interesados: Velar que se cumpla el
INCREMENTO
5
El modelo necesita una gestión automatizada de entornos estables y disponibles
Necesitamos certificar 4 entornos, con Integración y Testing desde el principio
Integración
Testing
PRE
PRO
6
Automatizar el ciclo completo integrando modelo y herramientas
Compilar, Verificar, Desplegar y Probar
AutomatizaciónDiaria
SVN
MVN Jenkins
7
Planificación SprintIncremento (Demo)
periódico
Estandarizar los entornos de desarrollo para ganar en agilidad
IDE y Plugin
Entono DES
Perfiles maven
Dependencias
Reglas PMD
Certificar la configuración de los entornos
8
Entrega del INCREMENTO en tiempo y forma
Equipo Desarrollo
Desplegado en Testing completamente terminado y funcional
Equipo Testing
Aceptación de los Interesados
Ejecutar verificaciones planificadas con el nivel de
certificación acordado
Construido y testeado
9
Entrega mavenizada con las pautas marcadas ;-)
Un Catálogo de Verificaciones con el nivel de exhaustividad y exigencia que acordemos
En cada Planificación de Sprint se genera el Plan de Testing del Incremento
Verificación funcional
Seguridad
Rendimiento
Certificación entornos, etc.
Usabilidad
10
(específico para cada entrega)
Una mínima gestión de las pruebas tenemos que hacer :(
Es necesario que se especifique cuales son los criterios de aceptación en la
Planificación del Sprint
Herramienta de Gestión de Pruebas
Criterios de aceptación por historia de usuario
Identificación de riesgos y alcance Identificación de riesgos y alcance
11
Descubrimiento y correcta gestión/control de los defectos
Validamos y verificamos que se esta construyendo correctamente
Equipo Desarrollo
Equipo Testing
INCREMENTO
Equipo apoyo resolución de defectosTesting
12
Automatización de las pruebas de aceptación básicas y críticas del negocio, pero no todas
Verificamos siempre que no se generan fallos funcionales sobre incrementos anteriores.
13
EsclavosSelenium RC+
Navegador Web
MaestroSelenium Grid
Equipo Testing
Servidor de Integración(servidor de aplicaciones)
SCM (svn,…)
PASO 1
PASO 2
PASO 3
PASO 4
PASO 5
PASO 6
Se debe documentar todo lo que sea necesario, pero no más
El equipo debe adquirir el hábito de documentar en la wiki
Los entornos
Ecosistema
Arquitectura
Acuerdos (DoD)
Enlaces doc. externa
Configuraciones
Etc.Etc.
Modelos y Procedimientos
Artefactos
14
Perfecto, ya podemos completar el modelo operativo ágil a seguir !!!
El equipo ya tiene toda la información y las expectativas de los interesados
15
Equipo Testing
INCREMENTO
Equipo apoyo resolución de defectos
Testing
Reunión Planificación
H1 H2
Integración
Nivel de Certificación Plan de Testing SprintCriterios de Aceptación
Reunión de Revisión y Retrospectiva
Equipo Desarrollo
Aceptación o Rechazo para iniciar el
Plan de Testing
Gestióndefectos
Ecosistema Ágil
PRE/PRO
MVN
Redmine
TestLink
Jenkins
SVN
ArtifactorySonar
Selenium
Jobs
JMeter
Wiki
Jobs / Perfiles(des,test,pre,pro)
branch test trunk
tag
Perfiles
Historias
Verificación funcional
Identificación de
riesgos y alcanceDefinición en
lenguaje natural
Sprint
Plugin
Rendimientos, etc.
Seguridad
Código
trunk
H1 H2 Hn
1 2 3
Modelo de Testing con agilidad
Product Backlog
16
diario