Últimos artículos publicados

22/03/09
Xavier Albaladejo

Para planificar un proyecto desde la óptica ágil y crear la primera versión del backlog (lista de objetivos priorizados) se pueden utilizar los siguientes criterios de priorización:

  • El valor para el cliente de cada objetivo o requisito de alto nivel.
  • El esfuerzo estimado de desarrollo de los objetivos, proporcionado por el equipo.
  • El riesgo asociado a cada objetivo (madurez de requisitos, riesgos tecnológicos, personas que participan, en línea con los factores de complejidad de los proyectos).
En el caso de planificar varios proyectos dependientes, puede ser necesario añadir nuevos criterios como, por ejemplo:
  • Las dependencias e integraciones entre los proyectos, para asegurar que se traten de manera simultánea y en el momento adecuado.
  • El riesgo asociado a estas dependencias e integraciones.
Estos últimos criterios pueden obligar a repriorizar algunos objetivos de los proyectos.
 
En esta planificación inicial, para facilitar la colaboración de los participantes en los diferentes proyectos (clientes / product owners, equipos y scrum masters / facilitadores), se puede utilizar tarjetas de historia de usuario pegadas sobre una pizarra blanca o pared.
 
tarjeta-historia-usuario-scrum-backlog

 
 
A continuación se detalla el proceso de creación conjunta del backlog de varios proyectos.
17/03/09
Xavier Albaladejo

 

En este encuentro se compartieron experiencias sobre los siguientes temas:
  • Principios de Lean Software Development, a modo de ayuda cuando Scrum no proporciona una solución directa a un problema.
  • Cómo gestionar historias de usuario que comparten implementación, haciendo énfasis en no perder el foco de que toda historia de usuario debería proporcionar algún valor al cliente.
  • Empezar por las historias de usuario más claras y que aportan más valor, y así en el futuro evitar modificar código de requisitos actuales dudosos.
  • La “generalización” del producto puede ser peligrosa para el negocio, no hay que olvidarse de obtener resultados a corto-medio plazo para el negocio
  • Cómo poner las pruebas de concepto en el product backlog, siempre sin perder de vista que el tiempo para estas pruebas debe estar acotado (timebox) y que debe poder medirse el progreso de la prueba.
  • El backlog como iceberg, en el cual los primeros objetivos son más pequeños, están más detallados, y los últimos son meros recordatorios de grandes objetivos a conseguir.
A continuación se detallan las ideas que se trataron respecto a estos temas.
 
22/02/09
Xavier Albaladejo

 

En este encuentro participaron 11 personas que explicaron sus experiencias, los beneficios y dificultades que habían encontrado en los siguientes temas:
  • Integración continua con pruebas automatizadas y TDD.
  • Deuda técnica vs perfeccionismo.
  • Integración continua en entornos multiequipo.
  • Aprovechamiento de los nightly builds para métricas de calidad y pruebas de stress.
  • El valor aportado al cliente mediante prácticas de ingeniería ágiles.
Otros resultados del encuentro:
  • Se identificaron nuevos temas del “track” de ingeniería para próximos encuentros: herramientas, frameworks, resistencia a la introducción de metodologías ágiles, pair programming, automatización de los tests de aceptación y documentación automática.
  • Se propusieron los siguientes workshops:
    • Aplicación práctica de TDD
    • Integración continua con Maven 2
    • Integración continua con Hudson

Para obtener más valor de próximos encuentros, se propusieron las siguientes técnicas:

  • Exposiciones de experiencias reales, en que los asistentes realicen preguntas y proporcionen consejos.
  • Talleres alrededor de un objetivo ficticio, preparado con anterioridad para obtener el máximo de la sesión.
A continuación se detallan las ideas que se trataron respecto a estos temas.
 
25/01/09
Xavier Albaladejo

Resumen

El punto principal que se trató en el encuentro fue por qué no son más conocidas las metodologías ágiles:

  • Cambio cultural y de valores. Respeto y reconocimiento a quien es válido. Las metodologías ágiles “aplanan” la jerarquía de la empresa.
  • Factorías de software jerárquicas.
  • La universidad enseña waterfall.
  • La mayor parte de los recursos están en inglés.
  • Poco conocimiento de metodologías en general en las empresas, y menos si son “nuevas”.
 Iniciativas propuestas para dar a conocer las metodologías ágiles:
 
  • Hacer un evento a nivel nacional con casos de éxito de empresas españolas.
  • Divulgar las metodologías ágiles en clientes y quien toma las decisiones en las empresas, explicando los beneficios y casos de éxito.
  • Crear un directorio de empresas ágiles españolas.
  • Crear contenidos en español donde explicar cómo trabajar con metodologías ágiles, problemas y soluciones.
  • Hacer talleres donde aprender y practicar técnicas ágiles.
  • Fomentar la formación en metodologías ágiles en la universidad.
  • Directorio de herramientas de gestión y de desarrollo.
 
29/12/08
José Ramón Díaz

Introducción

Recientemente en Biko obtuvimos la certificación CMMI nivel 2. Tras un periodo de estudio de los procesos convenientes para el funcionamiento de la organización, estos fueron validados y aprobados mediante el SCAMPI.

Este nivel de la metodología formal se centra en determinadas áreas, como planificación, gestión de requisitos, métricas, y verificación y validación.

En Biko, CMMI ha servido para uniformizar criterios importantes sobre la gestión de los  proyectos, que dada la heterogeneidad de los múltiples proyectos desarrollados en la organización, ha sido un hito muy importante.

Pero CMMI en su nivel 2 no especifica nada sobre las metodologías de desarrollo o gestión del equipo, ni del proceso concreto de creación de software. Es por eso por lo que hemos ido un paso más allá, y hemos buscado técnicas para el mejor control del desarrollo.

Las metodologías ágiles de desarrollo van hacia otro objetivo que las metodologías formales. Se centran en los individuos y sus interacciones más que en procesos y herramientas. Algunas de las más importantes son las basadas en el concepto de “Lean development”, u otras más concretas como pueden ser “Scrum” y “XP”. 

Nuestra idea era empezar a experimentar con los desarrollos con metodologías ágiles, en concreto con Scrum, para poder mejorar la eficiencia del equipo. En este artículo presentamos la primera aproximación que realizamos, nuestra implementación y conclusiones.