Metodologías de desarrollo de software
1 Definición
Una metodología de desarrollo de software es un conjunto de pasos y
procedimientos que deben seguirse para desarrollar software. Una metodología
está compuesta por:
- Cómo dividir un proyecto en etapas.
- Qué tareas se llevan a cabo en cada etapa.
- Qué restricciones deben aplicarse.
- Qué técnicas y herramientas se emplean.
- Cómo se controla y gestiona un proyecto.
2 Clasificación de las metodologías
Las metodologías se clasifican de la siguiente forma:
- Estructuradas.
- Orientadas a procesos
- Orientadas a datos
- Mixtas
- No estructuradas.
- Orientadas a objetos
- Sistemas de tiempo real
3 Metodologías estructuradas
Se basan en la forma top-down
3.1 Metodologías orientadas a procesos
La ingeniería del software se basa en el modelo básico de
entrada/proceso/salida de un sistema.
Está compuesta por:
- Diagrama de flujo de datos (DFD).
- Diccionario de datos.
- Especificaciones de proceso.
- Ejemplos: metodologías de DeMarco, Gene y Sarson, Yourdon.
3.2 Metodologías orientadas a datos
Son metodologías basadas en la información. Primero se definen las estructuras
de datos y, a partir de éstos, se derivan los componentes procedimentales.
- Ejemplos: metodologías de Jackson, Warnier, Warnier-Orr.
4 Metodologías no estructuradas
4.1 Metodologías orientadas a objeto
La orientación a objetos unifica procesos y datos encapsulándolos en el
concepto de objetos.
Tiene dos enfoques distintos:
- Revolucionario, puro u ortodoxo. Rompen con las
metodologías tradicionales.
- Ejemplos: metodologías OOD de Booch, CRC/RDD de
Wirfs-Brock.
- Sintetista o evolutivo. Toman como base los
sistemas estructurados y conforman elementos de uno y otro tipo.
- Ejemplos: metodología OMT de Rumbourgh.
4.2 Sistemas de tiempo real
Procesan información orientada al control más que a los datos.
Se caracterizan por concurrencia, priorización de procesos,
comunicación entre tareas y acceso simultáneo a datos comunes.