INTRODUCCIÓN A LA INGENIERÍA DEL SOFTWARE
Ing. Sonia Godoy H
Informática empresarial
Ing-S
onia
Godoy H
INTRODUCCIÓN INGENIERÍA DEL SOFTWARE
Desarrollo del hardwareDesarrollo del hardware
10.000
100.000
1.000.000
10.000.000
100.000.000
1970 1975 1980 1985 1990 1995 2000
4004
8008
8080
8086
286386
486 DXPentium
Pentium II
Pentium III
Pentium IV
Tra
nsi
sto
res
Desde 1965 la Ley de Moore rige la evolución de los microprocesadores
Factores que imprimen aceleración al ritmo de crecimiento del hardware:
Consecuencias de la ley de MooreConsecuencias de la ley de Moore
Comunicaciones entre sistemasComunicaciones entre sistemas
•Incremento de la capacidad de operación.
•Incremento de la miniaturización.
•Reducción de costes en la producción.
Ing-Sonia Godoy H
INTRODUCCIÓN INGENIERÍA DEL SOFTWARE
Crisis de softwareCrisis de software
2000
1998
1995
1994
28%23% 49%
26%28% 46%
27%40% 33%
16%31% 53%
ÉxitoProblemáticoFracaso
El proyecto se aborta o el sistema no se llega a utilizar
Desbordamiento de agendas o costes. Las funcionalidades no cubren las expectativas. Problemas funcionalesProyecto realizado en el tiempo previsto, con los costes previstos, con la funcionalidad esperada y ofreciendo un funcionamiento correcto.
Fuente: Standish Group Survey,
Proyectos para el desarrollo de sistemas de software
2004 29%19% 53%
Ing-Sonia Godoy H
¿QUÉ ES SOFTWARE?
Los productos de software se pueden desarrollar para un cliente en particular o pueden ser desarrollados para un mercado general.
Productos de software pueden ser:Genéricos: desarrollados para ser vendidos
a un tipo de clientes.Específicos: desarrollado para un cliente de
acuerdo a sus necesidades específicas.
Ing-Sonia Godoy H
¿QUÉ ES INGENIERÍA DE SOFTWARE? La Ingeniería de Sofware es una disciplina de
la Ingeniería que se preocupa de todos los aspectos de la producción de software.
Aplicación de los métodos de la ingeniería al proceso de desarrollo de software: Diseño Construcción Mantenimiento
Ing-Sonia Godoy H
TIPOS DE PRODUCTOS SOFTWARE Áreas de aplicación [Pressman, 2002] (ii)
Software de ingeniería y científico Algoritmos de tratamiento numérico: simulación,
estadística, CAD... Diseño de algoritmos y estructuras de datos Cálculo intensivo Paralelización
Software empotrado Reside en memoria de sólo lectura y se utiliza para
controlar productos y sistemas de los mercados industriales y de consumo Características similares al de tiempo real
Software de Inteligencia Artificial Algoritmos no numéricos para resolver problemas
complejos: sistemas expertos, reconocimiento de patrones, demostradores de teoremas
Ing-Sonia Godoy H
Software de computadoras personales Herramientas de escritorio, software para ocio…
Aplicaciones Web Software accedido a través de un navegador
Web Los sistemas Web tienen una naturaleza y unos
requisitos que difieren del software tradicional Los sistemas Web
TIPOS DE PRODUCTOS SOFTWARE
Ing-Sonia Godoy H
¿QUÉ ATRIBUTOS TIENE UN BUEN SOFTWARE?
El software debería entregar la funcionalidad y desempeño requeridos por el usuario y debería ser mantenible, confiable y usable.
Mantenibilidad El software debe evolucionar para cubrir necesidades
cambiantes. Confiabilidad
El software debe ser confiable. Eficiencia
El software no debe malgastar los recursos del sistema. Usabilidad
El software debe ser usable por los usuarios para quienes se diseñó.
Ing-Sonia Godoy H
EL CICLO DE VIDA DEL SOFTWARE
Modificación: para adaptarse a los cambios del entorno. (en otros productos se conoce como reparación o mantención)
Ing-Sonia Godoy H
LA FASE DE DESARROLLO DEL CICLO DE VIDA DEL SOFTWARE
Ing-Sonia Godoy H
INTRODUCCIÓN INGENIERÍA DEL SOFTWARE
Principales organizaciones de estandarizaciónPrincipales organizaciones de estandarización
ISO ISO
SEI SEI
IEEE Computer Society IEEE Computer Society
IEEE Es el Instituto de Ingenieros en electricidad y electrónica (Institute of Electrical and Electronics Engineers).
Ing-Sonia Godoy H
INTRODUCCIÓN INGENIERÍA DEL SOFTWARE
ISO 12207ISO 12207
ISO 1227 define los procesos que componen el ciclo de vida del software
Ciclo de vida
Concepto
Retirada
Proceso
1
…Proceso
N
Actividad 1
Tarea 1
Tarea 2
…
Tarea n
…
Actividad n
Tarea 1
Tarea 2
…
Tarea n
Ing-Sonia Godoy H
INTRODUCCIÓN INGENIERÍA DEL SOFTWARE
ISO 12207ISO 12207
ACTIVIDAD 1
TAREA 1TAREA 1 TAREA X• • •
PROCESO
ACTIVIDAD n• • •Un proceso está compuesto
por actividades.
Una actividad está compuesta de tareas.
La descomposición del proceso en actividades y tareas se realiza sobre el concepto de ciclo de mejora PDCA “Plan – Do – Chek – Act” (Planificación, ejecución, medición y mejora)
Ing-Sonia Godoy H
PLANPLANTareas, agenda, asignaciones…
CHECKCHECKEvaluación y
medición
DODOEjecición de planes
y tareas
ACTACTProblemas y acciones
correctivasPROCESO
INICIO
FIN
ISO 12207ISO 12207
Ing-S
onia
Godoy H
INTRODUCCIÓN INGENIERÍA DEL SOFTWARE
INGENIERÍA DE SISTEMASINGENIERÍA DE SISTEMAS
conjunto de elementos de hardware, software, personas, procedimientos, herramientas y otros factores organizativos, organizados para llevar a cabo un objetivo común.
SistemaSistema
Elemento delsistema
Elemento delsistema
Elemento delsistema
Elemento delsistema
Elemento delsistema
Elemento delsistema
Elemento delsistema
Elemento delsistema
Sistema deEntrada
Sistema deSalida
Sistema
Ing-Sonia Godoy H
INTRODUCCIÓN INGENIERÍA DEL SOFTWARE
INGENIERÍA DE SISTEMASINGENIERÍA DE SISTEMAS
Funciones de la Ingeniería de sistemasFunciones de la Ingeniería de sistemas
Definición del problema: Determinación de las expectativas hacia el producto, necesidades y restricciones obtenidas y analizadas en los requisitos del sistema. Trabaja cerca del cliente para establecer las necesidades operacionales.
Análisis de la solución: Determinar las opciones posibles para satisfacer los requisitos y las restricciones. Estudiar y analizar las posibles soluciones. Seleccionar la mejor, sopesando las necesidades inmediatas, opciones de implementación, utilidad, evolución del sistema…
Ing-Sonia Godoy H
Planificación de los procesos: Determinar los grupos de tareas técnicas que se deben realizar, el esfuerzo requerido para cada una, su prioridad y los riesgos que implican para el proyecto.
Control de los procesos: Determinar los métodos para controlar las actividades técnicas del proyecto y los procesos; la medición del progreso, revisión de los productos intermedios y ejecución de las acciones correctivas, cuando corresponda.
Evaluación del producto: Determinar la calidad y cantidad de los productos elaborados, a través de evaluaciones, pruebas, análisis, inspecciones…
Funciones de la Ingeniería de sistemasFunciones de la Ingeniería de sistemas
Ing-S
onia
Godoy H
INTRODUCCIÓN INGENIERÍA DEL SOFTWARE
INGENIERÍA DE SISTEMASINGENIERÍA DE SISTEMAS
Ingeniería de sistemas – Gestión de proyectos – Ingeniería del Soft. Ingeniería de sistemas – Gestión de proyectos – Ingeniería del Soft.
Gestión de proyectos
Planificación Organización Personal Dirección Control
Ingeniería del software
Diseño del software Codificación Pruebas unitarias Integración del
subsistema de software
Ingeniería de sistemas
Definición del problema Análisis de la solución Planificación de procesos Control de procesos Evaluación del producto
Ing-Sonia Godoy H
INTRODUCCIÓN INGENIERÍA DEL SOFTWARE
INGENIERÍA DE SISTEMASINGENIERÍA DE SISTEMAS
Ingeniería de sistemas – Ingeniería de sistemas de software – Ingeniería del software Ingeniería de sistemas – Ingeniería de sistemas de software – Ingeniería del software
CodificaciónPruebas unitarias
CodificaciónPruebas unitarias
Diseño detallado del software
Diseño detallado del software
Pruebas del sub-sistema de softw.Pruebas del sub-sistema de softw.
Diseño de la ar-quitectura del swDiseño de la ar-
quitectura del sw
Pruebas del sistema de swPruebas del
sistema de swAnálisis de
requisitos del swAnálisis de
requisitos del sw
Pruebas de integración del sw
Pruebas de integración del sw
Diseño del sistema
Diseño del sistema
Análisis del sistema
Análisis del sistema
Pruebas de integración del sis
Pruebas de integración del sis
Pruebas del sistema
Pruebas del sistema
Ingeniería de sistemas
Ingeniería de sistemas de software
Ingeniería del software
Ingeniería del software
Ing-Sonia Godoy H
Ing-S
onia
Godoy H
CAPASDefine el marco de trabajo y permite un desarrollo racional y oportuno de la Ingeniería del Software
Define el marco de trabajo y permite un desarrollo racional y oportuno de la Ingeniería del Software
Ing-Sonia Godoy H
CAPAS
Indica cómo construir técnicamente el software. Se incluyen técnicas de modelado y otras técnicas descriptivas
Indica cómo construir técnicamente el software. Se incluyen técnicas de modelado y otras técnicas descriptivas
Ing-Sonia Godoy H
CAPAS
Proporcionan el soporte automático o semiautomático para el proceso y para los métodos
Proporcionan el soporte automático o semiautomático para el proceso y para los métodos
Ing-Sonia Godoy H
CAPAS
• Conjunto de reglas gráficas o textuales para la representación de un modelo
• Conjunto de reglas gráficas o textuales para la representación de un modelo
Ing-Sonia Godoy H
CAPAS
Colección de métodos para resolver un tipo de problemasDescompone el proceso de desarrollo en actividades y proporciona los métodos adecuados para llevar a cabo dichas actividades
Colección de métodos para resolver un tipo de problemasDescompone el proceso de desarrollo en actividades y proporciona los métodos adecuados para llevar a cabo dichas actividades
Ing-Sonia Godoy H
CONCLUSIONES
Ing-Sonia Godoy H
Top Related