Top Banner
Desarrollo Guiado por Comportamiento Gustavo Bazán 2012
17

Desarrollo Guiado por Comportamiento

Jul 19, 2015

Download

Self Improvement

Gustavo Bazán
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Desarrollo Guiado por Comportamiento

Desarrollo Guiado por Comportamiento

Gustavo Bazán

2012

Page 2: Desarrollo Guiado por Comportamiento

Agenda

• Desarrollo Guiado por Pruebas (TDD)

o Problemas con TDD

• Desarrollo Guiado por Comportamientos

o Hacer sistemas que Importen

o Historias

• Uso de un lenguaje común

o Proceso de desarrollo con BDD

o Herramientas

www.agiletour.com 08/11/12

Page 3: Desarrollo Guiado por Comportamiento

Agenda

• Integración con métodos agiles

o Planificación guiada por aceptación de pruebas

o Desarrollo guiado por aceptación de pruebas

www.agiletour.com 08/11/12

Page 4: Desarrollo Guiado por Comportamiento

Desarrollo Guiado por Pruebas

www.agiletour.com 08/11/12

Page 5: Desarrollo Guiado por Comportamiento

El Problema con TDD

• ¿Por dónde empezar?

• ¿Qué se debe probar?

• ¿Cuál es el alcance de las pruebas?

• ¿Cómo entender el por que falla una prueba?

• Las pruebas unitarias no son suficiente

www.agiletour.com 08/11/12

Page 6: Desarrollo Guiado por Comportamiento

Desarrollo Guiado por Comportamiento

• Restructuración de TDD

• Implementar una aplicación describiendo el comportamiento que esta debe tener

o Entender el contexto

o Entender los usuarios

www.agiletour.com 08/11/12

Page 7: Desarrollo Guiado por Comportamiento

Hacer Sistemas que Importen

• Suficiente es Suficiente

• Entregar Valor al Stakeholder

• Todo es comportamiento

www.agiletour.com 08/11/12

Page 8: Desarrollo Guiado por Comportamiento

Historias

• Un Titulo

• Narrativa

• Criterios de Aceptación

www.agiletour.com 08/11/12

Page 9: Desarrollo Guiado por Comportamiento

Uso de un Lenguaje Común

Como un <Usuario, Rol>

Quiero <Funcionalidad>

Para que <Valor>

Dado <un contexto inicial> Cuando <ocurre un evento> Entonces <asegura un resultado>

www.agiletour.com 08/11/12

Page 10: Desarrollo Guiado por Comportamiento

Ejemplos

Funcionalidad: Recepción de Mercancía

Como un gerente de inventario

Quiero dar ingreso de mercancía al almacén

Para poder hacer disponible la mercancía a la venta

www.agiletour.com 08/11/12

Page 11: Desarrollo Guiado por Comportamiento

Ejemplos

Escenario: Mercancía es correcta y completa

Dado que recibo nueva mercancía

Y existe una orden de compra para esa mercancía

Cuando verifico la mercancía

Y la mercancía es correcta

Y las cantidades son correctas

Entonces le doy ingreso a la mercancía al almacén

www.agiletour.com 08/11/12

Page 12: Desarrollo Guiado por Comportamiento

Ejemplos

Escenario: Mercancía es correcta pero incompleta

Dado que recibo nueva mercancía

Y existe una orden de compra para esa mercancía

Cuando verifico la mercancía

Y la mercancía es correcta

Y las cantidades incorrectas

Entonces le doy ingreso a la mercancía al almacén

Y genero una nota de crédito por el faltante www.agiletour.com 08/11/12

Page 13: Desarrollo Guiado por Comportamiento

Proceso de Desarrollo BDD

Funcionalidad

Escenario

Pasos

Codificación

Refactorización

www.agiletour.com 08/11/12

Page 14: Desarrollo Guiado por Comportamiento

Herramientas

• Java – JBehave

• PHP – Behat

• .NET – Specflow

• Ruby – Cucumber y Rspec

• Python – Lettuce

www.agiletour.com 08/11/12

Page 15: Desarrollo Guiado por Comportamiento

Integración con Métodos Agiles

• Planificación Guiada por Aceptación de Pruebas

• Desarrollo Guiado por Aceptación de Pruebas

• Historias como herramientas de planificación

• Validación de las historias con los stakeholders

www.agiletour.com 08/11/12

Page 16: Desarrollo Guiado por Comportamiento

Conclusiones

• Entregar productos:

o De calidad

o Con valor para el usuario

• Facilitar la depuración del código

• Pruebas de regresión

• Documentación

www.agiletour.com 08/11/12

Page 17: Desarrollo Guiado por Comportamiento

Referencias

• Chelimsky, D., Astels, D., Dennis, Z., Hellesøy, A., Helmkamp, B., & North, D. (2010). The RSpec Book. The Pragmatic Programmers LLC.

• North, D. (2006). DanNorth.net. Recuperado el 14 de Junio de 2012, de Introducing BDD: http://dannorth.net/introducing-bdd/

• Sommerville, I. (2010). Ingeniería del software. Adison Wesley.

www.agiletour.com 08/11/12