Uno de los valores del Manifiesto Ágil es "software de trabajo sobre documentación completa" . Y, sin embargo, existe la necesidad de documentar los requisitos. Si se modifica una función desarrollada hace 6 meses, yo (como desarrollador) necesito un lugar al que acudir para hacer referencia a los requisitos existentes. Obviamente, los requisitos documentados también son importantes para los recursos de control de calidad. Además, si surge una pregunta sobre un requisito en particular, debe haber una sola ubicación a la que se pueda hacer referencia para aclarar en lugar de pedirme que analice mi código o una cadena de correos electrónicos para ver cómo se construyeron las cosas.
Todos los equipos Agile en los que he estado han utilizado una gestión en línea (por ejemplo, Rally, Jira) donde los requisitos se pueden definir en cada historia de usuario como criterios de aceptación. Si bien considero que esta es una solución/ubicación extremadamente funcional para la documentación de requisitos, ya que constantemente usa la herramienta para avanzar en la historia, parece un poco informal. En el proyecto más reciente en el que trabajé, el equipo de gestión del proyecto mantuvo un BRD (Documento de requisitos comerciales) que contenía todos los requisitos del sistema en un solo documento. En este proyecto en particular, el BRD se utilizó para la aprobación del cliente sobre lo que se iba a desarrollar y también fue revisado por el equipo de administración de mi empresa (de consultoría) para garantizar que todo se completara. El problema con los BRD en mi experiencia es que son detallados hasta el punto de que no se pueden leer.
El marco Agile no se preocupa por definir un medio específico de documentación, pero ¿existe una mejor práctica única para documentar los requisitos en un proyecto de desarrollo Agile?
Hay tres principios ágiles que están en juego:
Mantener los requisitos en una herramienta como Rally o JIRA en forma de historias de usuario + criterios de aceptación y simultáneamente en un documento de requisitos no es inherentemente ágil. Está creando un exceso de documentación, no logra maximizar el trabajo no realizado y tiene múltiples fuentes de información que deben mantenerse (y pueden perder la sincronización entre sí).
La única solución es mantener sus requisitos en un solo lugar. Si su equipo está usando una herramienta ahora y algunas partes interesadas no se sienten cómodas con esa herramienta, tiene dos opciones. La primera opción es que su equipo pueda ajustar su proceso para que todas las partes interesadas se sientan cómodas. La segunda opción es que su ScrumMaster o Agile Coach pueda educar a las partes interesadas sobre el valor
No hay nada que diga que un proyecto ágil no puede crear y mantener un documento de requisitos en forma de hoja de cálculo o documento de Word y trabajar a partir de eso. Después de todo, los buenos requisitos (entre otras cosas) especifican la importancia para permitir la priorización, son verificables y se pueden vincular a la información necesaria para probarlos (incluso si no está todo disponible en una herramienta o documento) y se pueden rastrear a otro trabajo ( probablemente sea una identificación). Si tiene una especificación de requisitos, su equipo aún puede rastrear tareas de trabajo, casos de prueba o criterios de aceptación a elementos en el BRD a través de los identificadores de requisitos únicos, por ejemplo.
El pensamiento ágil sugiere que la mejor práctica es documentar lo suficiente. Si necesitas documentar algo por una buena razón, ¡documentalo!
En el desarrollo de software cada proyecto tiene sus propias necesidades, no hay una única fuente de verdad definida. Para algunos equipos o proyectos, los casos de prueba automatizados son suficiente documentación. Algunos necesitan una forma más formal, como historias de usuarios en un sistema de flujo de trabajo, en lugar de solo fichas.
Los BRD suenan como una sobredocumentación y una forma de tener el comando y el control sobre el equipo de desarrollo por parte del cliente, pero si funciona para el proyecto y el equipo, no es anti-ágil en sí.
El marco Agile no se preocupa por definir un medio específico de documentación.
La mayoría de los marcos Agile no especifican nada, excepto ser impulsados por el valor y trabajar en iteraciones y, por supuesto, los otros principios . En general es una mentalidad. Los marcos que especifican todo se centran en procesos y herramientas sobre individuos e interacciones . Pregunta qué tan ágil es realmente ese marco.
Encuentra una forma de trabajar que se ajuste a tu industria, empresa, proyecto o producto. Inspeccione y adáptese continuamente, de esta manera eventualmente encontrará la forma óptima de trabajar.
Tomas Owens
Tomas Owens
mellis481
Tomas Owens
mellis481
Tomas Owens
Marjan Venema