La Metodología, (del griego metà “más allá”, odòs “camino” y logos “estudio”), hace referencia al conjunto de procedimientos basados en principios lógicos, utilizados para alcanzar una gama de objetivos que rigen en una investigación científica o en una exposición doctrinal.
Las metodologías se pueden clasificar en dos grupos:
- Las metodologías tradicionales, denominadas, como metodologías pesadas. Centran su atención en llevar una documentación exhaustiva de todo el proyecto y en cumplir con un plan de proyecto, definido en la fase inicial del desarrollo del proyecto.
- Las metodologías ágiles se basan en dos aspectos fundamentales, retrasar las decisiones y la planificación adaptativa. Estas metodologías destacan que la capacidad de respuesta a un cambio es más importante que el seguimiento estricto de un plan.
En el planteamiento para crear cualquier producto sería necesario definir los elementos que van a participar:
El enfoque de ciclo de vida más usado en las ciencias de la información es el que usa las siguientes seis fases definidas en función de los recursos necesarios:
Los elementos que componen a una metodología son:
Podríamos realizar una clasificación de las metodologías existentes con base a los siguientes enfoques:
La metodología tradicional
PMBOOK define los siguientes procesos para una gestión de proyectos con base de una metodología tradicional:
El ciclo de vida en cascada o waterfall se caracteriza porque todas las fases se realizan de forma secuencial, es decir, que las etapas se llevan a cabo una después de la otra, pero eso sí, cada etapa tiene que estar finalizada antes de comenzar la siguiente. Cada una de estas etapas o fases son realizadas por personas o equipos de trabajo especializados.
La metodología tradicional RUP (Rational Unified Proces). Se basa en un marco de procesos de trabajo que pueden ser adaptados por las organizaciones que hagan el desarrollo y por los desarrolladores, seleccionando los elementos más apropiados del proceso.
Las Metodologías Ágiles
Las metodologías ágiles surgen como una alternativa a las metodología tradicionales las cuales son demasiado burocráticas y por tanto rígidas para las actuales características del mercado.
SCRUM. Scrum es adecuado para aquellas empresas en las que el desarrollo de los productos se realiza en entornos que se caracterizan por tener: Incertidumbre, Auto-organización, Control moderado y Transmisión del conocimiento. Para entender el ciclo de desarrollo de Scrum es necesario conocer las 5 fases que definen el ciclo de desarrollo ágil:
Scrum gestiona estas iteraciones a través de reuniones diarias, uno de los elementos fundamentales de esta metodología
El Adaptive software development (ASD) o Desarrollo Adaptativo del Software, es una metodología ágil presentada por Jim Highsmith y Sam Bayer. ADS se centra en cómo construir software complejo mediante el trabajo colaborativo eficiente de los integrantes del proyecto que lo lleva a cabo de la organización que lo patrocina.
El Feature-driven development (FDD) o desarrollo basado en funcionalidades es un proceso de desarrollo incremental que aglutina a un conjunto de buenas prácticas en un todo. Estas prácticas están orientadas desde una perspectiva de funcionalidad de cara al cliente. El objetivo principal es entregar software funcional de forma periódica al cliente de forma iterativa hasta llegar al resultado deseado.
- Desarrollar un modelo global
- Construir una lista de funcionalidades
- Planificar por funcionalidad
- Diseñar por funcionalidad
- Construir por funcionalidad