El proceso requiere de una metodología con 5 etapas:
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/usuario tiene una visión incompleta/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:
Es la tarea de describir detalladamente el software a ser escrito, de una forma
rigurosa. Se describe el comportamiento esperado del software y su interacción
con los usuarios y/o otros sistemas.
3. Diseño
y arquitectura: Determinar cómo funcionará de forma general sin entrar
en detalles incorporando consideraciones de la implementación tecnológica, como
el hardware, la red, etc. Consiste en 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. 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 parte más obvia del trabajo de ingeniería
de software y la primera 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/ambiguos pueden exigir que, tareas propias
de las etapas anteriores se tengan que realizarse en esta.
5. Prueba:
Consiste en comprobar que el software responda/realice correctamente las tareas
indicadas en la especificación. Es una buena praxis 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
(pruebas cruzadas entre los programadores o realizadas por un área de test
independiente).
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. Las tareas de esta
etapa se inician ya en la primera fase, pero sólo finalizan una vez terminadas
las pruebas.
7. Mantenimiento:
En esta etapa se realizan un mantenimiento correctivo (resolver errores) y un
mantenimiento evolutivo (mejorar las funcionalidades y/o dar respuesta a nuevos
requisitos).
Bibliografía
https://www.facebook.com/ZimbronApps. (2017, August 22). Fases de la Ingeniería de Software - ZimbronApps. ZimbronApps. https://zimbronapps.com/educacion/sistemas-computacionales/ingenieria-de-software/fases-la-ingenieria-software/