La ingeniería del software surgió en 1968 para hacer frente a una crisis del software. Tiene como objetivo construir productos de alta calidad de forma oportuna. Existen diferentes metodologías como el desarrollo iterativo e incremental y el desarrollo ágil. El ciclo de vida del software incluye fases como la definición, construcción y mantenimiento.
2. ¿Qué es?
• En 1968 se produjo una crisis del software, debido a
ello surgió el campo de la Ingeniería del software.
• Éste término se introdujo por primera vez en 1968 en
una conferencia de la ingeniería del software de la
OTAN.
• Era necesario realizar una gran cantidad de cambios a
la hora de desarrollar software.
• El objetivo primario de la ingeniería del software es
construir un producto de alta calidad de una manera
oportuna.
• El término ingeniería según la RAE se definiría como:
"Estudio y aplicación, por especialistas, de las diversas ramas de
la tecnología”,
“Actividad profesional del ingeniero“.
3. Capas en Ingeniería del
software.
• La ingeniería del software es una tecnología
multicapa, cualquier enfoque de ingeniería debe
apoyarse sobre un compromiso de organización de la
calidad.
4. Ciclo de vida del software.
• Todo software exige llevar a cabo numerosas tareas
antes de ser lanzado por los desarrolladores.
• Principalmente hay tres pasos generales:
– En la fase de definición se intenta determinar qué información
ha de usar el sistema, qué funciones ha de realizar, qué
condicionantes existen, cuáles han de ser las interfaces del
sistema, y qué criterios de evaluación se usarán.
– En la fase de construcción se diseñan las estructuras de los
datos y de los programas. Posteriormente, se
escribe, documenta y prueba el software.
– La fase de mantenimiento comienza cuando el sistema ya está
desarrollado y finaliza cuando el producto ya no se utiliza.
5. Ciclo de vida del software.
• El ciclo de vida clásico consta de varias fases secuenciales
siguiendo un esquema en cascada con el mismo orden que el
esquema general.
6. Ciclo de vida del software.
• Los ciclos de vida normalmente varían en el alcance
del ciclo, dependiendo de hasta dónde llegue el
proyecto correspondiente, las características de las
fases en que dividen el ciclo y de la organización,
estructura y sucesión de las etapas, si hay
realimentación entre ellas o si tenemos libertad de
repetirlas.
• Otros modelos son:
Modelo en V.
Iterativo.
De desarrollo incremental.
En espiral.
De prototipos.
7. Metodologías del desarrollo
del software.
• Una metodología es un conjunto integrado de
técnicas y métodos que permite abordar de
forma homogénea y abierta cada una de las
actividades del ciclo de vida de un proyecto de
desarrollo.
• Las metodologías se basan en una combinación
de los modelos de proceso genéricos.
• Definen artefactos, roles y actividades, junto con
prácticas y técnicas recomendadas.
• Hay dos tipos de metodologías: las tradicionales
y las ágiles.
8. Desarrollo iterativo e
incremental.
• Es un proceso de desarrollo de software cíclico desarrollado en
respuesta a la debilidad del modelo en cascada.
• Empieza con una planificación inicial y termina con el
despliegue, con la iteración cíclica en el medio.
9. Desarrollo ágil.
• La ingeniería del software ágil combina una
filosofía y un conjunto de directrices de
desarrollo.
• La filosofía busca la satisfacción del cliente y la
entrega temprana de software incremental.
• Las directrices de desarrollo resaltan la entrega
sobre el análisis y el diseño y la comunicación
activa y continua entre los desarrolladores y
los clientes.
• Están especialmente ambientadas para
desarrollar proyectos software pequeños.
10. Reingeniería.
• El principal objetivo de la reingeniería es reducir el tiempo y los
recursos empleados en el mantenimiento del software
mejorando la productividad del proceso.
• Un modelo de reingeniería incluye una estrategia operativa y
define seis actividades.