Ship It es un libro práctico, para programadores y entornos pequeños de desarrollo de software, sin un marco de procesos definidos (más o menos pesado). Desde el enfoque ágil de la programación pragmática expone métodos y técnicas contrastadas por los autores: "Este libro no es un análisis académico de por qué unos métodos funcionan y otros no, ni tampoco un catálogo de las prácticas y metodologías disponibles para elegir una. Este libro presenta lo que nos ha funcionado en proyectos reales."
Las ideas desarrolladas en el libro, agrupadas en los polos de infraestructura, técnicas y procesos se refleja en el esquema siguiente
Tras el primer capítulo de introducción, en los capítulos 2 a 4 se explican herramientas, prácticas y procesos de trabajo para crear un entorno de desarrollo ágil de software. En el segundo se habla de las herramientas y la infraestructura: para compartir el código entre el equipo, para controlar las versiones, hacer pruebas, integrar el sistema, etc. En el tercero se explican las técnicas que mejores resultados han dado a los autores: listas, la figura del director técnico, las reuniones diarias, la revisión de código y las notificaciones de cambios. El cuarto describe el "proceso" empleado para ensamblar la infraestructura y las prácticas. Es el denominado TBD "Tracer Bullet Development", que en el libro se promociona como: "Es la forma más eficiente que hemos encontrado para desarrollar software. Es muy fácil y extremadamente potente". En la más pura línea de desarrollo ágil, no se trata de un proceso o marco de procesos al estilo CMMI, sino más bien de prácticas de trabajo que configuran un método para gestionar los proyectos mostrando de forma temprana la dirección hacia la que se dirige el trabajo, dando así margen para realizar los cambios necesarios. Se basa en los principios del desarrollo ágil, de prueba y error, feedback, prototipado y desarrollo incremental, priorizando los requisitos y desarrollando primero las funcionalidades básicas para dar el nivel de detalle según el feedback generado durante el desarrollo.
El capítulo quinto es un catálogo de problemas y soluciones comunes. Se trata de problemas especialmente frecuentes y reales en entornos de desarrollo sin marcos de procesos formales: errores de regresión, bugs irreproducibles, problemas de integración, clientes furiosos...
En los apéndices se relacionan herramientas para dar soporte a las tareas de desarrollo, agrupándolas por finalidad:
- Apéndice A: Gestión del código fuente (CVS, Subversion, SourceSafe, BitKeeper)
- Apéndice B: Scripting (Make, Automake, Ant, NAnt, Groovy, Rake...)
- Apéndice C: Integración (Cruise Control, Cruise Control .NET, Damage Control, AntHill, Continuum)
- Apéndice D: Seguimiento de errores (Bugzilla, JIRA, FogBugz, PR-Tracker)
- Apéndice F: Entornos y herramientas de pruebas (SUnit, JUnit, JUnit Perf, JWebUnit, Cobertura, Clover, Fit, Fitnesse, WinRunner, LoadRunner, Empirix...)
Autores: Jared Richardson y William Gwaltney, Jr. Editado: The Pragmatic Bookshelf, 2005 ISBN: 0974514047 198 páginas Tags: desarrollo agil, pragmatic programming, gestion de proyectos, project management.
|