270 likes | 371 Views
Desarrollo E ntrega continua. Rodrigo Corral rcorral@plainconcepts.com @ r_corral. Impedimentos a la entrega de valor. Operaciones. Usuarios/ Stakeholders. Desarrollo & Testeo. PRODUCT BACKLOG. Definición Idear. REQUISITOS. Requisitos mal comprendidos. Feedback útil no recogido.
E N D
Desarrollo Entrega continua Rodrigo Corral rcorral@plainconcepts.com @r_corral
Impedimentos a la entrega de valor Operaciones Usuarios/Stakeholders Desarrollo & Testeo PRODUCT BACKLOG Definición Idear REQUISITOS Requisitos mal comprendidos Feedback útil no recogido Nuevos conocimientos sin recolectar Desarrollo De la idea al software funcionando Incidencias en producción difíciles de depurar y resolver Implementar Monitorizar Operación Software funcionando en producción Entrega de valor • Cambios en requerimientos y prioridades • Calidad a posteriori • No trazabilidad • Pérdidas de foco OPS BACKLOG Expectativas de usuarios insatisfechas Herramientas de gestión dispersas Requisitos de preparación de operaciones insatisfechos SOFTWARE FUNCIONANDO
ALM Microsoft Gold Partner Partner del año 2009, 2010, 2011 y 2012 Contamos con MVP de Visual Studio ALM, CSM, CSP, PSM, PSD, PSDT Hemos liderado la implantación de Scrum y TFS en numerosas compañías Además: Consultoría, Mentoring, Desarrollo, UX, XBOX, Windows Phone www.plainconcepts.com
El software sólo tiene valor si está en producción • El feedback valioso surge de la interacción del usuario • Los grandes despliegues suponen grandes riesgos
Impedimentos a la entrega de valor Operaciones Usuarios/Stakeholders Desarrollo & Testeo PRODUCT BACKLOG Definición Idear REQUISITOS Requisitos mal comprendidos Feedback útil no recogido Nuevos conocimientos sin recolectar Desarrollo De la idea al software funcionando Incidencias en producción difíciles de depurar y resolver Implementar Monitorizar Operación Software funcionando en producción Entrega de valor • Cambios en requerimientos y prioridades • Calidad a posteriori • No trazabilidad • Pérdidas de foco OPS BACKLOG Expectativas de usuarios insatisfechas Herramientas de gestión dispersas Requisitos de preparación de operaciones insatisfechos SOFTWARE FUNCIONANDO
Cambios en requisitos y prioridades Requisitos y prioridades cambiantes Comunicación pobre, ciclos de entrega largos, re-trabajo, cambios de contexto constantes, e insatisfacción de los usuarios Problema Herramientas de gestión del backlog y las tareas Herramientas productivas para crear, priorizar y gestionar los requisitos y las tareas del equipo de desarrollo Solución
Impedimentos a la entrega de valor Operaciones Usuarios/Stakeholders Desarrollo & Testeo PRODUCT BACKLOG Definición Idear REQUISITOS Requisitos mal comprendidos Feedback útil no recogido Nuevos conocimientos sin recolectar Desarrollo De la idea al software funcionando Incidencias en producción difíciles de depurar y resolver Implementar Monitorizar Operación Software funcionando en producción Entrega de valor • Cambios en requerimientos y prioridades • Calidad a posteriori • No trazabilidad • Pérdidas de foco OPS BACKLOG Expectativas de usuarios insatisfechas Herramientas de gestión dispersas Requisitos de preparación de operaciones insatisfechos SOFTWARE FUNCIONANDO
Pérdidas de foco Cambios de contexto constantes Ritmo desarrollo lento, pérdida de productividad, frustración y ciclos de desarrollo largos Problema Team Explorer Experiencia de usuario rediseñada para mantener al equipo “en la zona” y siendo productivo Mywork Nueva característica que registra, archiva y recupera el contexto de trabajo para permitir suspender y reanudar el trabajo Solución Solución
Team Explorer & My Work Demo
Pérdidas de foco Edición de código fuera de Visual Studio o en modo desconectado Incertidumbre, desprotección de archivos “por debajo”, y frustración de los desarrolladores Problema Workspaces locales Añadir, borrar y/o editar archivos directamente en el disco o usando otros IDEs Solución
Pérdidas de foco Cambios en código sin validar efectivamente Código duplicado, re-trabajo, baja calidad y cambios constantes de contexto Problema Revisiones de código (CodeReview) Flujo de trabajo integrado que es la solución más potente para incrementar la calidad del código Comparativa de código (Codecomparison) Experiencia de uso rediseñada para facilitar el merge/diff con múltiples vistas de las diferencias entre archivos Solución Solución
Code Review & Code Comparison Demo
Impedimentos a la entrega de valor Operaciones Usuarios/Stakeholders Desarrollo & Testeo PRODUCT BACKLOG Definición Idear REQUISITOS Requisitos mal comprendidos Feedback útil no recogido Nuevos conocimientos sin recolectar Desarrollo De la idea al software funcionando Incidencias en producción difíciles de depurar y resolver Implementar Monitorizar Operación Software funcionando en producción Entrega de valor • Cambios en requerimientos y prioridades • Calidad a posteriori • No trazabilidad • Pérdidas de foco OPS BACKLOG Expectativas de usuarios insatisfechas Herramientas de gestión dispersas Requisitos de preparación de operaciones insatisfechos SOFTWARE FUNCIONANDO
La detección más temprana posible • Demostración de que no hemos roto nada • Documentación • Marcador claro de que una tarea está completada • Mejora el diseño • Verifica la correcta corrección de errores • El tiempo de depuración se reduce
Calidad a posteriori Calidad no contemplada dentro del proceso Fracaso cumpliendo los requerimientos de los usuarios, re-trabajo, ciclos de desarrollo largos, e insatisfacción de los usuarios Problema Testeo unitario (continuo) Framework extensible para testeo unitario permitiendo enfocar necesidades o tecnologías específicas para garantizar la corrección del código Framework para Fakes y Stubs Potente framework de “mocking” que simplifica el testeo unitario y aísla la lógica de negocio Solución Solución
Impedimentos a la entrega de valor Operaciones Usuarios/Stakeholders Desarrollo & Testeo PRODUCT BACKLOG Definición Idear REQUISITOS Requisitos mal comprendidos Feedback útil no recogido Nuevos conocimientos sin recolectar Desarrollo De la idea al software funcionando Incidencias en producción difíciles de depurar y resolver Implementar Monitorizar Operación Software funcionando en producción Entrega de valor • Cambios en requerimientos y prioridades • Calidad a posteriori • No trazabilidad • Pérdidas de foco OPS BACKLOG Expectativas de usuarios insatisfechas Herramientas de gestión dispersas Requisitos de preparación de operaciones insatisfechos SOFTWARE FUNCIONANDO
Feedback útil no recogido Feedback tardío sobre los cambios Corrección tardía de “bugs” críticos, incremento de los cambios de contexto, y ciclos de entrega largos Problema Integración continua Construcción, despliegue y testeo de aplicaciones complejas en cada check-in para identificar temprano los cambios problemáticos Lab Management Sistema de autoabastecimiento de entornos de laboratorio para pruebas que permite acelerar los ciclos de compilación-despliegue-pruebas y su feedback asociado Solución Solución
Integración continua Demo
Conclusiones (i) Cambios en requisitos y prioridades Comunicación pobre, ciclos de entrega largos, re-trabajo, cambios de contexto constantes, e insatisfacción de los usuarios Pérdidas de foco Cambios de contexto constantes, cambios en el código sin validar efectivamente Problema Problema Herramientas de gestión del backlog y tareas Team Explorer & MyWork Codereview & CodeComparison
Conclusiones (ii) Calidad a posteriori Fracaso cumpliendo los requerimientos de los usuarios, re-trabajo, ciclos de desarrollo largos, e insatisfacción de los usuarios Feedback útil no recogido Corrección tardía de “bugs” críticos, incremento de los cambios de contexto, y ciclos de entrega largos Problema Problema Testeo unitario (continuo) Integración contínua Lab Management
Quiero saber más • Gira de lanzamiento de VS 2012 de Plain Concepts • Madrid, 30 de Octubre https://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032530444&culture=es-es • Barcelona, 8 de Noviembre https://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032530873&Culture=es-ES • Bilbao, 14 de Noviembre https://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032530250&Culture=es-ES http://www.plainconcepts.com/vslaunchtour