1.4.5 Desarrollo Orientado a las Características (FDD)
El Desarrollo Orientado a las Características (Feature-Driven Development) es un método de creación de productos o soluciones, fácil de entender y muy eficaz. Un equipo de proyecto que siga el método FDD desarrollará primero un modelo general del producto, elaborará una lista de características y planificará el trabajo. A continuación, el equipo se mueve a través de iteraciones de diseño y construcción para desarrollar las características.
El FDD recomienda una serie de buenas prácticas, derivadas de la ingeniería del software. Estas prácticas incluyen:
Modelado de objetos de dominio: En esta práctica, los equipos exploran y explican el dominio (o entorno empresarial) del problema a resolver.
Desarrollo por funciones: Consiste en dividir las funciones en bloques de trabajo de dos semanas o menos y denominarlos características.
Propiedad individual de clases (código): Con esta práctica, las áreas de código tienen un único propietario para garantizar la coherencia, el rendimiento y la integración conceptual. (Nótese que esto es muy diferente de la idea de propiedad colectiva del código de XP, que pretende extender el conocimiento a otros miembros del equipo).
Equipos de características: Se trata de equipos pequeños, formados dinámicamente, que examinan los diseños y permiten evaluar múltiples opciones de diseño antes de elegir uno. Estos equipos ayudan a mitigar los riesgos asociados a la propiedad individual.
Inspecciones: Son revisiones que ayudan a garantizar la buena calidad del diseño y el código.
Gestión de la configuración: Se trata de etiquetar el código, hacer un seguimiento de los cambios, y gestionar el código fuente.
Construcciones periódicas: Mediante construcciones regulares, el equipo se asegura de que el nuevo código se integra con el código existente. Esta práctica también les permite crear fácilmente una demo..
Visibilidad del progreso y los resultados: Esta práctica realiza un seguimiento del progreso basado en el trabajo realizado.
Feature-Driven Development (FDD) es la metodología ágil que popularizó los diagramas de flujo acumulativo y los diagramas de estacionamiento, que son resúmenes de una página sobre el avance del proyecto. Ambos son herramientas útiles de seguimiento y diagnóstico que ahora son utilizados por otros enfoques agiles.