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 como 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 el 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 la funcionalidades y/o dar respuesta a nuevos requisitos).
No hay comentarios:
Publicar un comentario