Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Tdd/bdd prácticoaplicaciones con dominio rico

Tdd/bdd prácticoaplicaciones con dominio rico

Resumen del flujo de desarrollo usando TDD que hacemos Alea Soluciones y la evolución que ha tenido el proceso.

Software Craftsmanship Barcelona 2014

Eduardo Ferro Aldama

October 27, 2014
Tweet

More Decks by Eduardo Ferro Aldama

Other Decks in Programming

Transcript

  1. Contexto Tipo de aplicaciones Delivery mechanisms Sistemas de gestión de

    información Sistemas de monitorización/control/scada Sistemas de orquestación y configuración
  2. Conclusiones Buena cobertura Granularidad en caso de error muy buena.

    A veces rompen en cascada. Poco coste mental una vez aprendido el proceso Coste alto de mantenimiento / refactor
  3. Conclusiones Terminologia de negocio Buena cobertura Granularidad en caso de

    error muy buena Coste bajo de mantenimiento Se disfruta refactorizando Menor tendencia a megaconstrucciones Valor de negocio más rápido Feedback mucho antes
  4. Dificultades Necesitas arquitectura hexagonal o similar Cuesta identificar los puertos

    Requiere algo más de poder mental. Se pueden usar mocks como andamiaje
  5. Análisis Identificar puertos Dobles para puertos Adaptadores (Repositorios, Servicios, SNMP

    …) – Tests de contrato – TDD con dobles para los wrappers de librerías
  6. Análisis / ¿Dónde impacta? “For each desired change, make the

    change easy (warning: this may be hard), then make the easy change” Kent Beck Dobles como puertos Adaptadores (Repositorios, Servicios, SNMP …) – Tests de contrato – TDD con dobles para los wrappers de librerías
  7. 660 test unitarios de clase / 1 segundo 180 test

    unitarios de funcionalidad / 0.6 segundos 180 tests de integración / 14 segundos – Unos 50 de contrato