En la actualidad se ha visto muchos
proyectos de software fracasar porque no siguieron ninguna metodología. Con muy
buenas intenciones se empieza a construir rápidamente con sólo una idea
aproximada de lo que se quiere desarrollar y con un plan aún más vago de cómo
hacerlo. Aplicar las etapas de la ingeniería de software suele ser una buena
idea que te permite estructurar el producto y enfocar su construcción con éxito.
La ingeniería del software es el proceso formal de desarrollo de software en el
que las necesidades del usuario se traducen en requerimientos, estos se
transforman en diseño que se implementa en código que se prueba, documenta y se
certifica para su uso operativo. La ingeniería del software se define como “la
aplicación de un método sistemático, disciplinado y cuantificable al
desarrollo, operación, mantenimiento de software y el estudio de los métodos”
La metodología para el desarrollo de
software es un modo sistemático de realizar, gestionar y administrar un
proyecto para llevarlo a cabo con grandes posibilidades de éxito. Esta
sistematización indica cómo se divide un proyecto en módulos más pequeños para
normalizar cómo se administra el mismo. La metodología para el desarrollo de
software son los procesos a seguir sistemáticamente para idear, implementar y
mantener un producto de software desde que surge la necesidad del producto
hasta que se cumple el objetivo por el cual fue creado.
De esta forma, las etapas del desarrollo
de software son las siguientes:
1. Análisis
de requerimientos:
Se extraen los requisitos del producto de
software. En esta etapa la habilidad y experiencia en la ingeniería del
software es crítica para reconocer requisitos incompletos, ambiguos o
contradictorios. Usualmente el cliente tiene una visión incompleta o inexacta
de lo que necesita y es necesario ayudarle para obtener la visión completa de
los requerimientos. El contenido de
comunicación en esta etapa es muy intenso ya que el objetivo es eliminar la
ambigüedad en la medida de lo posible.
2. Especificación:
La especificación describe detalladamente
el software una vez desarrollado de una forma rigurosa. Se describe el
comportamiento esperado del software y su interacción con los usuarios y otros
sistemas.
3. Diseño
y arquitectura:
Se refiere a determinar cómo funcionará en
general sin entrar en detalles. Consiste en incorporar consideraciones de
implementación tecnológica. Se definen los casos de uso para cubrir las funciones
que el sistema realizará, el diseño de los componentes del sistema que dan
respuesta a las funcionalidades descritas en la segunda etapa también conocidas
como las entidades de negocio y las entidades definidas en el análisis de requerimientos
se transforman en clases de diseño, obteniendo un modelo cercano a la
programación orientada a objetos. Generalmente se realiza en base a diagramas
que permitan describir las interacciones entre las entidades y su secuenciado.
4. Programación:
Se traduce el diseño a código. Es la
primera parte en que se obtienen resultados “tangibles”. No necesariamente es
la etapa más larga ni la más compleja, aunque una especificación o diseño
incompletos pueden exigir que, tareas propias de las etapas anteriores se
tengan que realizarse en esta.
5. Prueba:
Consiste en comprobar que el software
responda correctamente las tareas indicadas en la especificación. Es una buena práctica
realizar pruebas a distintos niveles, por ejemplo, primero a nivel unitario y
después de forma integrada de cada componente y por equipos diferenciados del
de desarrollo.
6. Documentación:
Realización del manual de usuario, y
posiblemente un manual técnico con el propósito de mantenimiento futuro y
ampliaciones al sistema. Esta etapa se inicia en la primera fase, pero sólo
finalizan una vez terminadas las pruebas.
7. Mantenimiento:
En esta etapa se suele resolver errores y
mejorar las funcionalidades o dar respuesta a nuevos requisitos.
Referencia:
Xavi. (2013, February 10). Proyectos
de Guerrilla. Proyectos de Guerrilla.
http://proyectosguerrilla.com/blog/2013/02/las-cinco-etapas-en-la-ingenieria-del-software/
1.2 Fases de la
Ingeniería de software. (2017).
Blogspot.com.
http://andoniandresperezdominguezfis.blogspot.com/2017/09/12-fases-de-la-ingenieria-de-software.html
ETAPAS DE LA INGENIERÍA
DE SOFTWARE (ANALISIS (DISEÑO (Se refiere a…. (2013).
Coggle.it; Coggle.
https://coggle.it/diagram/V_KjJzukTDoQ_Au4/t/etapas-de-la-ingenier%C3%ADa-de-software