Essential Skills for Agile Development

http://www.agileskills.org

Buscando referencias sobre el refactoraje de código me encontré en algún foro una referencia a este libro que actualmente solo se puede obtener en formato electrónico a través del sitio del mismo libro (Amazon dice que el libro no esta disponible).

El libro es muy interesante porque es resultado de la necesidad de una empresa de enseñar a sus programadores las habilidades necesarias para dominar OOP y XP. Después de intentar algunas alternativas tradicionales de instrucción la empresa determino que mejor desarrollaban su propio material y resultado de esto surge lo que se convertiría en este libro... (leer el resto de la evaluación)...


 
El autor en el sitio dice porque este libro es diferente a los demás (traducción literal):
 
  • Regla 80/20. Solo hablamos del 20% de las habilidades que permiten el 80% del valor. El lector tiene mucho menos que aprender y mucho más que ganar.
  • Una habilidad a la vez. Nadie puede aprender muchas habilidades al mismo tiempo. Por lo tanto, solo hablamos sobre una habilidad a la vez y no seguimos hacia delante hasta que el lector la domina.
  • Aprender haciendo. Nadie aprende a nadar simplemente leyendo. Similarmente, nadie aprende a desarrollar software leyendo un libro. Por esto, se han incluido muchos ejercicios para que los lectores practiquen.
  • Retroalimentación. Cuando se aprende a nadar, es mejor tener un entrenador que señale problemas con las posturas. Por esto, damos soluciones ejemplo para que el lector compare su trabajo con el nuestro.
  • Reforzamiento. Después de aprender a nadar, si no se práctica simplemente se olvida. Por esto, los ejercicios de capítulos subsecuentes prueban tópicos de capítulos anteriores para reforzar las recién adquiridas habilidades.
El libro enseña las habilidades más importantes necesarias para desarrollar software en un ambiente de agilidad, específicamente aborda los siguientes temas:
 
  • Remoción de código duplicado
  • Convertir comentarios en código
  • Identificación y remoción de pestes
  • Mantener el código en “línea”
  • Cuidado con la herencia
  • Como manejar referencias inapropiadas
  • Separación de la lógica de negocios, bases de datos y UI
  • Uso de “User Stories” para gestionar el proyecto
  • Diseño orientado a objetos usando tarjetas CRC
  • Pruebas de aceptación
  • Pruebas de aceptación aplicadas a la UI
  • Pruebas de unidad
  • Desarrollo dirigido por pruebas (TDD)
  • Desarrollo en equipo usando control de versiones (CVS)
  • Habilidades esenciales de comunicación
  • Programación en pares
Todo el código (y viene mucho) esta en Java pero eso no debe ser problema para los no-Java porque esta muy bien escrito. Puede incluso servir para complementar el aprendizaje del lenguaje.
 
El sitio del libro es http://www.agileskills.org y ahí es el único lugar donde conseguirlo, desafortunadamente al momento no esta disponible en formato físico.

 

User login

Who's new

  • hoppiemochie
  • Antannysoca
  • Ariana Mendez
  • Orlando Cano
  • isc_jemsedano

Who's online

There are currently 0 users and 2 guests online.

Syndicate

Syndicate content