2. ¿Qué es?
Roger Pressman, 2001: Para tener éxito al diseñar y construir un
software necesitaremos disciplina, un enfoque de ingeniería. Es
decir, necesitaremos Ingeniería del Software.
Bauer, 1972: Ingeniería de Software trata del establecimiento
de los principios y métodos de ingeniería a fin de obtener
software de modo rentable, que sea fiable y trabaje en
máquinas reales.
Alfredo Weitzenfeld, 2002: No se atreve a definirla.
3. ¿Qué es?
IEEE, 1993: Es la aplicación de un enfoque sistemático,
disciplinado y cuantificable al desarrollo, operación y
mantenimiento del software;
Bohem,1976: es la aplicación práctica del conocimiento
científico al diseño y construcción de programas de
computadora y a la documentación asociada requerida para
desarrollar, operar y mantenerlos. Se conoce también como
Desarrollo de Software o Producción de Software.
SEI, (Software Engineering Institute), 2007: Una mejora
constante a las prácticas del software que lo convierte cada vez
en un producto de mejor calidad.
4. Adoptamos como definición
IEEE, 1993: Es la aplicación de un enfoque sistemático,
disciplinado y cuantificable al desarrollo, operación y
mantenimiento del software;
Es un conjunto de actividades estandarizadas y aceptadas
mundialmente que nos llevan a la aplicación de un enfoque
sistemático, disciplinado en la construcción de software de
calidad.
Este conjunto de actividades están determinadas por la
necesidad, el entorno, los requerimientos técnicos,
requerimientos humanos, recursos financieros, tiempo y
funcionalidad.
5. Adoptamos como definición
Actualmente existen propuestas de ingeniería del software
aceptadas para el mundo y para algunos países:
Propuesta Clásica: (MCV, Etapas)
Propuesta IEEE: SWEBOK (Cuerpo del conocimiento)
España, México y Colombia
8. Propuesta Clásica de
Roger Pressman
El fundamento de la ingeniería del software es la capa de
proceso.
El proceso define un marco de trabajo para un conjunto de áreas
claves de proceso (ACPs) que se deben establecer para entrega
efectiva de la tecnología de la ingeniería del software.
Los métodos de la ingeniería del software indican “como”
construir técnicamente el software. Los métodos abarcan una
gran gama de tareas que incluyen análisis de los requisitos,
diseño, construcción de programas, pruebas y mantenimiento.
Las herramientas de la ingeniería del software proporcionan un
enfoque automático o semiautomático para el proceso y para los
métodos; se establece un sistema de soporte par el desarrollo
del software llamado ingeniería del software asistida por
computadora (CASE)
11. Difícil de Entender
Tangible Intangible
Se construye/Fabrica Se diseña/se desarrolla
Resulta un producto que se usa
Su uso genera confianza Su uso genera
Desconfianza
Hay deterioro No hay deterioro
Se agota/caduca Vence
12. Difícil de Entender
Ingeniería
Civil
Ingeniería
Del Software
Roles cruzados entre el ingeniero y el
arquitecto.
Roles cruzados entre el analista,
diseñador, programador, ingeniero.
El cliente manifiesta una necesidad o
se obedece un plan.
El cliente manifiesta una necesidad o
se obedece un plan.
Primero se modela y modela todo con
base en los requisitos. No se empieza
a pedir ladrillo para luego probar.
Se planea, se crea, prueba, se re –
crea, se prueba, se re-crea, se
prueba. Finalmente, faltó
algo…planear a nivel de ingeniería.
Hay un producto final que satisface al
100% la expectativa del cliente.
Casi nunca se termina.