¿Qué es el desarrollo basado en funciones?
Todo el desarrollo de software requiere la gestión de proyectos y la gestión del desarrollo del sistema-ciclo de vida (SDLC). Estas son las técnicas y procesos que se utilizan para administrar de manera efectiva el proceso de desarrollo de una aplicación de software. El desarrollo basado en características es una técnica que se basa en ciclos de desarrollo rápidos. Proporciona a la empresa una funcionalidad más rápida que las técnicas SLDC estándar típicas.
En el mercado competitivo de hoy, es importante que las organizaciones reaccionen rápidamente ante las tendencias cambiantes y los climas del mercado. La tecnología de la información ha intentado evolucionar el desarrollo de software hacia un proceso más ágil que pueda anticipar las necesidades competitivas de una organización. El desarrollo basado en características es una técnica de desarrollo de software que intenta implementar características de aplicación de forma iterativa en función de las prioridades de una empresa.
El desarrollo impulsado por características se considera un proceso de desarrollo iterativo. Esto se debe a que el código se desarrolla e implementa en iteraciones de funcionalidad en lugar de como una aplicación completa. Fue creado por Jeff De Luca en 1997 como una técnica rápida para entregar aplicaciones de software. Este proceso ágil intenta entregar características priorizadas a un cliente más rápidamente.
El proceso de desarrollo basado en funciones se basa en modelos y ciclos de desarrollo cortos. Esto es similar a las técnicas de desarrollo utilizadas en Extreme Programming (XP). Cada proyecto se divide en pequeñas características que se pueden codificar, probar e implementar en menos de dos semanas. Este ciclo de dos semanas proporciona a la empresa un sistema rico en funciones más rápido porque evoluciona continuamente.
Hay cuatro áreas principales de desarrollo basado en características. Estos son el modelo de dominio, la lista de características, el plan por característica y, finalmente, la creación e implementación por característica. Estas cuatro áreas tienen requisitos específicos y técnicas que los hacen exitosos.
El modelo de dominio es una descripción general de alto nivel y el diseño de toda la aplicación. Es el modelo esqueleto de lo que se construirá durante el proceso de iteración. Este es el primer paso del proceso basado en funciones y está destinado a proporcionar al equipo de desarrollo una hoja de ruta de toda la aplicación.
Una vez que se completa el modelo de dominio, se debe crear una lista de características. La lista de características incluirá toda la funcionalidad requerida de la aplicación. Cada característica debe diseñarse con detalles específicos para que funcione. Un ejemplo de una función para una aplicación bancaria podría ser "calcular el saldo bancario total disponible".
La priorización es el siguiente paso en el desarrollo destacado. Una vez creada la lista completa de características, los usuarios comerciales deben priorizarla. Esta priorización debe basarse en la importancia de la funcionalidad para la organización.
La fase final del desarrollo basado en características se basa en la construcción y la implementación de características basadas en la lista de características priorizadas. Cada característica se codificará, probará e implementará en incrementos de dos semanas. Este enfoque iterativo rápido le da al negocio la oportunidad de usar la aplicación antes de que esté completamente terminada.