Presentación Inicial Grupo 3 Fondato, Rodrigo Cieri, Juan Cristian Gonzalez, Ailin Verbner, Alan
Agenda Metodología de trabajo Roles y equipo de trabajo Definición de alcance Estimación Planificación de sprints Configuración y versionado Arquitectura y diseño técnico Seguimiento y control Comunicación Pruebas Trazabilidad Herramientas
Metodología de Trabajo I Scrum Iteraciones cortas (de 15 días) Desarrollo Iterativo Incremental Priorización de Requerimientos Reuniones semanales con Product Owner
Metodología de Trabajo II ATDD (Acceptance Test-Driven Development) Basado en Pruebas de Aceptación como requerimientos Las pruebas se definen conjuntamente con el cliente Producto terminado <-> Pruebas de Aceptación OK Enfocar en el “QUE” en lugar del “COMO” Se definen Criterios de Aceptación
Roles y Equipo de Trabajo Product Owner: Ayudante. Responsable y representante de los usuarios. Decide qué funcionalidad necesita el sistema y prioriza los requerimientos. Scrum Master: Rotativo en cada sprint. Lleva adelante al equipo quitando obstáculos del camino. Teams Members: Cieri, Juan Christian Fondato, Rodrigo González, Ailin Verbner, Alan
Alcance Product Backlog User stories Diseño del Product Backlog: Conjunto de requerimientos, mejoras tecnológicas y corrección de errores que deben ser incluidos en el desarrollo del producto User stories Cada ítem del product backlog Diseño del Product Backlog: ID Descripción Prioridad Estimación Criterios Aceptación 1 … 2
Estimación Planning Poker Todos los miembros participan Cada uno debe justificar su estimación mostrando riesgos identificados Se busca el consenso Todos los miembros del equipo conocerán todas las tareas
Planificación de Sprints El proceso: Duración de cada sprint: 2 semanas. Selección y priorización de las tareas que conforman al Sprint Backlog. Corrección de estimaciones para cada user story. Asignación de tareas a cada miembro.
Configuración y versionado Ambientes Desarrollo Aceptación Utilización de Software de Control de Versiones: Un tag por cada Sprint Versionado utilizando la siguiente convención #Milestone.#Sprint.#Publicacion Release Notes para cada publicación (Wiki)
Arquitectura y Diseño Técnico Diagramas UML Mockups de pantallas Pencil project Arquitectura en capas Capa DB Capa de Negocios Capa de Presentación
Seguimiento y Control Planilla de gestión de riesgos Indicadores y métricas Sprint Burndown Chart Release Burndown Chart Indicador de cobertura de la prueba.
Comunicación StandUps diarios (Assembla Standup Tool) ¿Qué hizo cada uno? ¿Qué va a hacer? ¿Qué lo bloquea? Sprint planning meetings para definir que va a contener el sprint Sprint review meetings Ver el entregable resultante (demo) y lo que no se alcanzó a hacer Sprint retrospecive ¿En qué fue bien? ¿Qué se puede mejorar? Reuniones semanales con el Product Owner Minutas de reuniones con el Product Owner Wiki de Assembla como base de conocimiento Conferencias Skype en caso de ser necesario
Pruebas Pruebas Unitarias (NUnit) Pruebas de Integración Seguimiento de Bugs (Assembla issue tracker) Criterios de Aceptación acordados con el cliente (ATDD) Cobertura de la Prueba
Trazabilidad User stories vs Releases User stories vs Casos de prueba User Story 1 User Story 2 User Story 3 User Story 4 Release 1 X Release 2 Release 3 … User Story 1 User Story 2 User Story 3 User Story 4 Test Case 1 X Test Case 2 Test Case 3 …
Herramientas Control de versiones: SVN de Assembla.com Lenguaje de programación: ASP .NET 4 Pruebas unitarias: NUnit Base de datos: SQL Server Express Persistencia: MS Entity Framework Servidor Web: IIS 7 IDE: Visual Studio 2010 Seguimiento de tareas: Assembla Issue tracker Mockups: Pencil (http://pencil.evolus.vn/en-US/Home.aspx)
Dudas?