Desarrollo E ntrega continua

27
Desarrollo Entrega continua Rodrigo Corral [email protected] @r_corral

description

Desarrollo E ntrega continua. Rodrigo Corral [email protected] @ 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. - PowerPoint PPT Presentation

Transcript of Desarrollo E ntrega continua

Page 1: Desarrollo E ntrega  continua

DesarrolloEntrega continuaRodrigo [email protected]@r_corral

Page 2: Desarrollo E ntrega  continua

REQUISITOSPRODUCTBACKLOG

OPSBACKLOG

MonitorizarImplementar

SOFTWARE FUNCIONANDO

DefiniciónIdear

DesarrolloDe la idea al software funcionando

Requisitos mal comprendidos

Expectativas de usuarios insatisfechas

Feedback útil no recogido

Herramientas de gestión dispersas

• Cambios en requerimientos y prioridades

• Calidad a posteriori• No trazabilidad• Pérdidas de foco

Requisitos de preparación de operaciones insatisfechos

Incidencias en producción difíciles de depurar y resolver

Nuevos conocimientos sin recolectar

OperaciónSoftware funcionando en producciónEntrega de valor

Impedimentos a la entrega de valorUsuarios/Stakeholders

Desarrollo & Testeo

Operaciones

Page 3: Desarrollo E ntrega  continua

ALM Microsoft Gold PartnerPartner del año 2009, 2010, 2011 y 2012Contamos con MVP de Visual Studio ALM, CSM, CSP, PSM, PSD, PSDTHemos liderado la implantación de Scrum y TFS en numerosas compañíasAdemás: Consultoría, Mentoring, Desarrollo, UX, XBOX, Windows Phonewww.plainconcepts.com

Page 4: Desarrollo E ntrega  continua

•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

Page 5: Desarrollo E ntrega  continua

Entrega continua (de valor)

Page 6: Desarrollo E ntrega  continua

REQUISITOSPRODUCTBACKLOG

OPSBACKLOG

MonitorizarImplementar

SOFTWARE FUNCIONANDO

DefiniciónIdear

DesarrolloDe la idea al software funcionando

Requisitos mal comprendidos

Expectativas de usuarios insatisfechas

Feedback útil no recogido

Herramientas de gestión dispersas

• Cambios en requerimientos y prioridades

• Calidad a posteriori• No trazabilidad• Pérdidas de foco

Requisitos de preparación de operaciones insatisfechos

Incidencias en producción difíciles de depurar y resolver

Nuevos conocimientos sin recolectar

OperaciónSoftware funcionando en producciónEntrega de valor

Impedimentos a la entrega de valorUsuarios/Stakeholders

Desarrollo & Testeo

Operaciones

Page 7: Desarrollo E ntrega  continua

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

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

Problema

Solución

Page 8: Desarrollo E ntrega  continua

Backlogs & Task BoardDemo

Page 9: Desarrollo E ntrega  continua

REQUISITOSPRODUCTBACKLOG

OPSBACKLOG

MonitorizarImplementar

SOFTWARE FUNCIONANDO

DefiniciónIdear

DesarrolloDe la idea al software funcionando

Requisitos mal comprendidos

Expectativas de usuarios insatisfechas

Feedback útil no recogido

Herramientas de gestión dispersas

• Cambios en requerimientos y prioridades

• Calidad a posteriori• No trazabilidad• Pérdidas de foco

Requisitos de preparación de operaciones insatisfechos

Incidencias en producción difíciles de depurar y resolver

Nuevos conocimientos sin recolectar

OperaciónSoftware funcionando en producciónEntrega de valor

Impedimentos a la entrega de valorUsuarios/Stakeholders

Desarrollo & Testeo

Operaciones

Page 10: Desarrollo E ntrega  continua

Pérdidas de focoCambios de contexto constantes

Ritmo desarrollo lento, pérdida de productividad, frustración y ciclos de desarrollo largos

Team ExplorerExperiencia de usuario rediseñada para mantener al equipo “en la zona” y siendo productivo

My workNueva característica que registra, archiva y recupera el contexto de trabajo para permitir suspender y reanudar el trabajo

Problema

Solución

Solución

Page 11: Desarrollo E ntrega  continua

Team Explorer & My Work

Demo

Page 12: Desarrollo E ntrega  continua

Pérdidas de focoEdició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

Workspaces localesAñadir, borrar y/o editar archivos directamente en el disco o usando otros IDEs

Problema

Solución

Page 13: Desarrollo E ntrega  continua

Pérdidas de focoCambios en código sin validar efectivamente

Código duplicado, re-trabajo, baja calidad y cambios constantes de contexto

Revisiones de código (Code Review)Flujo de trabajo integrado que es la solución más potente para incrementar la calidad del código

Comparativa de código (Code comparison)

Experiencia de uso rediseñada para facilitar el merge/diff con múltiples vistas de las diferencias entre archivos

Problema

Solución

Solución

Page 14: Desarrollo E ntrega  continua

Code Review &Code Comparison

Demo

Page 15: Desarrollo E ntrega  continua

REQUISITOSPRODUCTBACKLOG

OPSBACKLOG

MonitorizarImplementar

SOFTWARE FUNCIONANDO

DefiniciónIdear

DesarrolloDe la idea al software funcionando

Requisitos mal comprendidos

Expectativas de usuarios insatisfechas

Feedback útil no recogido

Herramientas de gestión dispersas

• Cambios en requerimientos y prioridades

• Calidad a posteriori• No trazabilidad• Pérdidas de foco

Requisitos de preparación de operaciones insatisfechos

Incidencias en producción difíciles de depurar y resolver

Nuevos conocimientos sin recolectar

OperaciónSoftware funcionando en producciónEntrega de valor

Impedimentos a la entrega de valorUsuarios/Stakeholders

Desarrollo & Testeo

Operaciones

Page 16: Desarrollo E ntrega  continua

Pruebas unitarias

Page 17: Desarrollo E ntrega  continua

• 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

Page 18: Desarrollo E ntrega  continua

Pruebas unitarias

Page 19: Desarrollo E ntrega  continua

Calidad a posterioriCalidad no contemplada dentro del proceso

Fracaso cumpliendo los requerimientos de los usuarios, re-trabajo, ciclos de desarrollo largos, e insatisfacción de los usuarios

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 StubsPotente framework de “mocking” que simplifica el testeo unitario y aísla la lógica de negocio

Problema

Solución

Solución

Page 20: Desarrollo E ntrega  continua

Testeo unitario (continuo)

Demo

Page 21: Desarrollo E ntrega  continua

REQUISITOSPRODUCTBACKLOG

OPSBACKLOG

MonitorizarImplementar

SOFTWARE FUNCIONANDO

DefiniciónIdear

DesarrolloDe la idea al software funcionando

Requisitos mal comprendidos

Expectativas de usuarios insatisfechas

Feedback útil no recogido

Herramientas de gestión dispersas

• Cambios en requerimientos y prioridades

• Calidad a posteriori• No trazabilidad• Pérdidas de foco

Requisitos de preparación de operaciones insatisfechos

Incidencias en producción difíciles de depurar y resolver

Nuevos conocimientos sin recolectar

OperaciónSoftware funcionando en producciónEntrega de valor

Impedimentos a la entrega de valorUsuarios/Stakeholders

Desarrollo & Testeo

Operaciones

Page 22: Desarrollo E ntrega  continua

Feedback útil no recogidoFeedback tardío sobre los cambios

Corrección tardía de “bugs” críticos, incremento de los cambios de contexto, y ciclos de entrega largos

Integración continuaConstrucción, despliegue y testeo de aplicaciones complejas en cada check-in para identificar temprano los cambios problemáticos

Lab ManagementSistema de autoabastecimiento de entornos de laboratorio para pruebas que permite acelerar los ciclos de compilación-despliegue-pruebas y su feedback asociado

Problema

Solución

Solución

Page 23: Desarrollo E ntrega  continua

Integración continua

Demo

Page 24: Desarrollo E ntrega  continua

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 usuariosProblem

a

Pérdidas de focoCambios de contexto constantes, cambios en el código sin validar efectivamenteProblem

a

Herramientas de gestión del backlog y tareas

Team Explorer & My Work

Code review & Code Comparison

Page 25: Desarrollo E ntrega  continua

Conclusiones (ii)Calidad a posteriori

Fracaso cumpliendo los requerimientos de los usuarios, re-trabajo, ciclos de desarrollo largos, e insatisfacción de los usuariosProblem

a

Feedback útil no recogidoCorrección tardía de “bugs” críticos, incremento de los cambios de contexto, y ciclos de entrega largos Problem

a

Testeo unitario (continuo)

Integración contínua

Lab Management

Page 26: Desarrollo E ntrega  continua

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

Page 27: Desarrollo E ntrega  continua

© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.