tdd on the rocks

11

Click here to load reader

Upload: hernan-wilkinson

Post on 02-Jul-2015

1.285 views

Category:

Technology


0 download

DESCRIPTION

Presentacion usada durante el coding dojo de TDD on the Rock en Agiles@BsAs

TRANSCRIPT

Page 1: Tdd on the rocks

agile software development & services

¡TDD on the Rocks!

Page 2: Tdd on the rocks
Page 3: Tdd on the rocks

TDD

¡Vamos a hacer cumplir el proceso!

Page 4: Tdd on the rocks

TDD - Test

• Pasos a seguir:– Caso más simple

“positivo”– Caso negativo– Caso concreto distinto– Más de un caso

concreto– Casos bordes– Pensar -:)

Page 5: Tdd on the rocks

TDD - Implementación

• Pasos a seguir:– Mínima implementación

que funcione• ¡No generalizar de entrada!• Manejar la ANSIEDAD

– Parametrizar cuando el test lo pida

– Generalizar cuando el test lo pida

Page 6: Tdd on the rocks

TDD - Refactor

• Pasos a seguir:– Sacar objetos hard codeados– Sacar código repetido– Buscar patrones repetidos y reificar– Usar buenos nombres– Buen modelo

• Cambiable ¡Entendible!• Aparece algo nuevo en el dominio

aparece algo nuevo en el modelo

Page 7: Tdd on the rocks

Metodología

• Coding Dojo• Problemas– No todos manejan el mismo lenguaje– No todos manejan el mismo IDE– No todos usan el mismo tipo de laptop

• Propuesta: “Coding Dojo Custom”

Page 8: Tdd on the rocks

Metodología

• Características:– Pair Programming– Cada pair con su

máquina, su lenguaje e IDE

– Todos deben seguir el ejercicio, “todos deben hacer”

Page 9: Tdd on the rocks

Metodología

• Pasos:– 2 pair en el frente– Un pair conectado al

cañon– Escribe, hace pasar un

test, refactoriza– Cambiamos por próx.

pair y viene otro al frente

Page 10: Tdd on the rocks

Metodología

• Comportamiento:– En conjunto decidimos qué testear,

cómo implementar, etc– Cuestionamiento constante sin entrar en

“parálisis”– En la duda decido yo

Page 11: Tdd on the rocks

Ejercicio

• Calendario de días laborables y no laborables

• Se debe saber si una fecha particular es laboral o no

• Se debe configurar con:– día de semana no laboral (ej. Domingo)– día de mes no laboral (ej. primero de enero)– fecha particular no laboral (ej. 4 de abril de

2012)