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. Según la definición del IEEE la
ingeniería del software se define como “la aplicación de un método
sistemático, disciplinado y cuantificable al desarrollo, operación y
mantenimiento de software, esto es, la aplicación de la ingeniería al software”.
El
proceso de la ingeniería del software
requiere una metodología con 5 etapas:
Etapa
de análisis:
Es el
proceso de investigar un problema que se quiere resolver. Definir claramente el
Problema que se desea resolver o el sistema que se desea crear. Identificar los
componentes principales que integrarán el producto. 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.
Etapa de Diseño:
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.
Etapa de Desarrollo:
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.
Etapa de Pruebas o
Verificación 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).
Etapa de Implementación
o Entrega Implantación:
Consiste en poner a disposición del
cliente el producto.
Etapa de 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).
Etapa final EOL
(End-of-Life):
El fin del
ciclo del producto consiste en realizar todas las tareas necesarias para
asegurar que los clientes y los empleados están conscientes de que el producto
ya no será vendido ni soportado.
muchas gracias muy buena explicación ,me sirvió mucho para un trabajo de ingeniería de software que estoy realizando ,que estén muy bien y gracias por crear este contenido
ResponderEliminar