La Metodología de desarrollo de software en ingeniería de software es un marco de trabajo usado para estructurar, planificar y controlar el proceso de desarrollo en sistemas de información.
Metodologías estructuradas
En las metodologías estructuradas se realiza una aproximación a la resolución del problema descendente. Es decir, se pasa de una visión más general del problema con un nivel de abstracción alto (cercano a las personas), a un nivel de abstracción más bajo (cercano a la máquina).
Según se enfoque el desarrollo desde un punto de vista u otro tenemos:
- Las metodologías orientadas a procesos.
- Las orientadas a datos.
- También existen metodologías mixtas que toman en consideración tanto los procesos como los datos, añadiendo el factor tiempo según un modelo de eventos.
Metodologías orientadas a objetos: RUP
Esto se opone a la programación convencional, en la cual las estructuras de datos y el comportamiento solamente están relacionadas de forma débil, ya que estos se enfocan principalmente a las funciones.
Metodologías para sistemas de tiempo real
Un sistema informático que debe captar señales sin perder ninguna y que debe contestar a las mismas antes de un determinado momento es un sistema de tiempo real. En estos sistemas la velocidad de respuesta es fundamental porque el usuario no pueden esperar.
No debemos confundir los sistemas de tiempo real con los sistemas interactivos, en los que hay que responder lo más rápido posible al usuario pero no hay riesgo de perder señales o datos a la entrada, ni un límite de tiempo en la respuesta.
Metodologías de desarrollo ágil
Las metodologías ágiles se basan en el trabajo en equipo y pretenden:
- Centrarse en el desarrollo y en satisfacer al cliente, es decir, producir un sistema con las funcionalidades correctas. Esto significa que el sistema final tiene que incluir sólo el mínimo número de características necesarias para satisfacer por completo al cliente real.
- Mejorar las predicciones y previsiones para cumplir plazos y ajustarse a los recursos.
- Eliminar riesgos tomando en consideración la incertidumbre.
- Disminuir costes. Por ejemplo, deben eliminarse actividades relacionadas con algunos productos intermedios, como documentos formales de especificaciones que no tienen una relación directa clara con el resultado final del producto.
Metodologías de las administraciones europeas
Con la intención de estandarizar los diferentes proyectos informáticos que utilizaban y desarrollaban diferentes administraciones del mismo país, los organismos públicos comenzaron a desarrollar a finales de los años 70 y principios de los 80, metodologías de desarrollo software basadas en el método estructurado. Sin embargo, como las distintas administraciones necesitaban dar respuesta a proyectos de desarrollo muy diferentes, modificaron y ampliaron las metodologías existentes para adaptarlas a sus necesidades.
Ejemplos de este tipo de metodologías son:
- Merise: Nace en 1977 dentro del centro CTI (Centre Technique d'Information) perteneciente al Ministerio de Industria Francés. Su objetivo era desarrollar una metodología de desarrollo del software para cubrir las necesidades tanto de la empresa pública como de las empresas en general.
- SSADM: En 1980 el gobierno británico plantea la necesidad de crear una metodología para unificar y estandarizar los proyectos de software de las distintas administraciones. Así se desarrolló, entre el Central Computing and Telecommunications Agency (CCTA) y Learmonth and Burchett Management Systems (LBMS), la metodología SSADM (Structures Systems Analysis and Design Method). Está centrado en los usuarios, atendiendo a sus requisitos y su participación. Define de forma clara el proceso de producción, dando especificaciones acerca de qué hacer, cuándo y cómo. Para ello utiliza tres puntos de vista para orientarse a datos, eventos y procesos. Posee una gran flexibilidad en herramientas y técnicas de implementación, proporcionando un conjunto de procedimientos para llevar a cabo las distintas tareas del análisis y diseño.
- Métrica: Al igual que ocurrió en otras administraciones públicas europeas, en España surgió la necesidad de crear una metodología de desarrollo de software común para todas las administraciones y organismos públicos. La propuesta del Ministerio de Administraciones Públicas fue el desarrollo de la metodología Métrica para que todas las organizaciones siguiesen el mismo modelo y unificasen los criterios para aportar homogeneidad y eficiencia a las aplicaciones informáticas. El ámbito original de aplicación fue la administración general del estado español, pero puede ser utilizada por otras administraciones o empresas privadas. La primera versión es de 1989, la segunda versión apareció en 1993 y en el año 2001 apareció la tercera versión (Métrica V3).