Professional Documents
Culture Documents
Curso 2018-2019
Ingeniería del Software DSIC-UPV Curso 2018-2019
Objetivos
• Presentar la Ingeniería del Software y explicar su
importancia en el desarrollo de software de calidad
2
Ingeniería del Software DSIC-UPV Curso 2018-2019
Contenidos
1. Introducción
2. El software
• Características
• La Crisis del Software
• Software de calidad
• Problemática de la Industria
3
Ingeniería del Software DSIC-UPV Curso 2018-2019
Bibliografía básica
4
INTRODUCCIÓN
Ingeniería del Software DSIC-UPV Curso 2018-2019
El principal desafío es el
desarrollo Los avances en la electrónica El principal desafío es mejorar
del Hardware, para reducir han dado como resultado una la calidad del Software y
costes de procesamiento y mayor reducir costes
almacenamiento de datos potencia de cálculo y una
reducción
de costes
6
Ingeniería del Software DSIC-UPV Curso 2018-2019
7
Ingeniería del Software DSIC-UPV Curso 2018-2019
80
Software
50
Hardware
20
Tiempo
1960 1970 1980
8
Ingeniería del Software DSIC-UPV Curso 2018-2019
• http://catless.ncl.ac.uk/Risks
9
EL SOFTWARE
Características
La Crisis del Software
Software de calidad
Problemática de la Industria
Ingeniería del Software DSIC-UPV Curso 2018-2019
¿Qué es el software?
• Instrucciones que cuando se ejecutan proporcionan la
función y el comportamiento deseados
11
Ingeniería del Software DSIC-UPV Curso 2018-2019
12
Ingeniería del Software DSIC-UPV Curso 2018-2019
• Desarrollo artesanal • Software como producto • HW de bajo costo •Explosión OO •Explosión Web
• Software “a medida” • Lenguajes de alto nivel • Metodologías •Metodologías OO
• Lenguajes de bajo • Mantenimiento costoso •OO
estructuradas •Sistemas •Componentes
nivel •Lenguajes OO distribuidos •Aspectos
•Componentes •Servicios Web
13
Ingeniería del Software DSIC-UPV Curso 2018-2019
Entregado pero
nunca usado Usado tal como
47% se entrego
~2%
15
Ingeniería del Software DSIC-UPV Curso 2018-2019
Análisis y
DESARROLLO diseño
INICIAL 1/3 Codificación
1/4 1/6
16
Ingeniería del Software DSIC-UPV Curso 2018-2019
Validación
1/8 • Análisis y Diseño 8%
• Codificación 4%
• Validación y
Mantenimiento 88 %
MANTENIMIENTO
3/4
17
Ingeniería del Software DSIC-UPV Curso 2018-2019
50 %
30 %
10 %
18
Ingeniería del Software DSIC-UPV Curso 2018-2019
Análisis
Diseño
Codificación
Pruebas
Mantenimiento
19
Ingeniería del Software DSIC-UPV Curso 2018-2019
20
Ingeniería del Software DSIC-UPV Curso 2018-2019
http://www.versionone.com/assets/img/files/CHAOSManifesto2013.pdf
21
Ingeniería del Software DSIC-UPV Curso 2018-2019
http://www.laboratorioti.com/2016/05/16/informe-del-caos-2015-chaos-report-2015-bien-mal-fueron-los-proyectos-ano-2015/
22
Ingeniería del Software DSIC-UPV Curso 2018-2019
http://www.laboratorioti.com/2016/05/16/informe-del-caos-2015-chaos-report-2015-bien-mal-fueron-los-proyectos-ano-2015/
23
Ingeniería del Software DSIC-UPV Curso 2018-2019
...
24
Ingeniería del Software DSIC-UPV Curso 2018-2019
Software de calidad
• La finalidad es producir software de gran calidad
Concordancia con:
• Los requisitos funcionales y de rendimiento establecidos
explícitamente
• Los estándares de desarrollo explícitamente documentados
• Las características implícitas que se espera de todo
software desarrollado profesionalmente
25
Ingeniería del Software DSIC-UPV Curso 2018-2019
Factores de calidad
• La clasificación de los factores de calidad se
centra en tres aspectos importantes de un
producto software
1. Sus características operativas
2. Su capacidad de soportar los cambios
3. Su adaptabilidad a nuevos entornos
Factores de calidad
Corrección ¿Hace lo que quiero?
27
Ingeniería del Software DSIC-UPV Curso 2018-2019
Mucha artesanía
Trabajo en grupo
• Grandes retrasos Comunicación con usuario
28
Ingeniería del Software DSIC-UPV Curso 2018-2019
Soluciones
• Formalización:
• métodos de razonamiento formal (lenguajes formales de
especificación ejecutables: lógica + álgebra)
• nuevos modelos de desarrollo y modificación del ciclo de vida
• Inversión en herramientas
• entornos de desarrollo modernos
• generadores de documentación
29
LA INGENIERÍA DEL
SOFTWARE
Definiciones
El Proceso del Software
Ingeniería del Software DSIC-UPV Curso 2018-2019
Definiciones
• B. Boehm:
31
Ingeniería del Software DSIC-UPV Curso 2018-2019
Un poco de historia
http://www.cs.st-
andrews.ac.uk/~ifs/Books/SE9/Web/History/
32
Ingeniería del Software DSIC-UPV Curso 2018-2019
En definitiva…
• La INS es algo más que programar
33
Ingeniería del Software DSIC-UPV Curso 2018-2019
34
Ingeniería del Software DSIC-UPV Curso 2018-2019
Explota Explota
Tecnología Tecnología
Proporciona
de Gestión Proporciona de Producción
35
Ingeniería del Software DSIC-UPV Curso 2018-2019
tareas
36
Ingeniería del Software DSIC-UPV Curso 2018-2019
37
Ingeniería del Software DSIC-UPV Curso 2018-2019
• Redacción de la propuesta
• Planificación del proyecto
• Estimación del coste del proyecto
38
Ingeniería del Software DSIC-UPV Curso 2018-2019
39
Ingeniería del Software DSIC-UPV Curso 2018-2019
T10 10da ys
18/7 /03
T12
M5
25 day s
T8 Finish
19/9/03
40
Ingeniería del Software DSIC-UPV Curso 2018-2019
Diagrama de Gantt
4/7 11/7 18/7 25/7 1/8 8/8 15/8 22/8 29/8 5/9 12/9 19/9
Star t
T4
T1
T2
M1
T7
T3
M5
T8
M3
M2
T6
T5
M4
T9
M7
T10
M6
T11
M8
T12
Finish
41