Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Tema 1
Tema 1
1.
2.
INGENIERIA DE SOFTWARE
Tema 1: Introduccin a la Ingeniera de Software
3.
4.
5
5.
6.
7.
8.
dtorres@mixteco.utm.mx
Cubo 37
1
1. Importancia de Software
Genricos
Hechos a medida
Sistemas distribuidos
Incorporacin de
inteligencia a
productos
d t
(Firmware)
Redes y HW de bajo
costo
Microprocesadores
Consumo masivo
Mantenibles
PCs potentes
Tecnologa O-O
Sistemas expertos
Redes neuronales
Computacin
paralela
Redes de
informacin
Confiabilidad
Eficiencia
Utilizacin adecuada
2. Evolucin y caractersticas
2. Evolucin y caractersticas
se estropea: desgaste de
materiales
Tasa de
e fallas
Mortalidad Infantil
Tiempo
2. Evolucin y caractersticas
2. Evolucin y caractersticas
Tassa de fallas
Tasa de
e fallas
Fallas
Fallas por obsolescencia
obsolescencia
Puesta en marcha
Cambio
Curva Real
Se mantiene nivel hasta la obsolescencia
Curva idealizada
Tiempo
Tiempo
9
3. Tipos de Sw
10
3. Tipos de Sw
11
12
4. Crisis del Sw
4. Crisis del Sw
Propuesta de solucin:
Encapsulamiento de datos y procesos. Ejemplo:
construccin de interfaces.
Programacin estructurada
Desarrollo masivo de componentes software
Reutilizacin de componentes. Bibliotecas de
subrutinas (slo algoritmos).
13
5. Definicin de Ingeniera de Sw
14
5. Definicin de Ingeniera de Sw
[[Pressman]] Disciplina
l
o rea
de
d la
l informtica
f
o
ciencias de la computacin que ofrece mtodos y
tcnicas para desarrollar y mantener software de
calidad que resuelven problemas de todo tipo.
15
16
17
Personas
Inception Elaboration
Prelim.
iterations
Proceso
Personas
Iter.
#1
.. Iter.
#n
Construction
Iter.
#n+1
..
Transition
Iter.
#m
Iter.
#m+1
..
Iter.
#k
Requirements
Analysis
Design
Implementation
Test
(la manera
(quin lo hace)
en que se hace)
Proyecto
Producto
(la realizacin)
Reeditado de Ingeniera de Software: Una perspectiva Orientada a Objetos por Eric J. Braude (Wiley 2003)
Proceso
Desarrollo de secuencias:
Inception Elaboration
Prelim.
iterations
Cascada
Iterativo
Construction
..
Iter.
#m
Transition
Iter. ..
#m+1
Iter.
#k
Analysis
Design
Implementation
Test
Personall Software
P
S f
P
Process
Team Software Process
Capability Maturity Model
(para organizaciones)
Producto
Arquitectura de software
Diseo detallado
Implementacin
Diseo del
modelo
Artefactos de prueba
6. Paradigmas o Modelos
del proceso de desarrollo de software
Ingeniera de Sistemas
Anlisis
Artefactos
Especificacin
de requerimientos
de software
Requerimientos
La aplicacin y los
artefactos asociados
e incluidos
LLenguaje
j de
d modelado
d l d
unificado: notacin de diseo
Estndares:
Estructurados
Orientacin a Objetos:
paradigma til
personas
Mtodos:
Requirements
Proyecto
Diseo
Cdigo
Pruebas
Modelo
Secuencial
(ciclo de
vida bsico
o modelo en
cascada)
Mantencin
Anlisis
Diseo
Cdigo
Cdigos fuente
Y objeto
r
Pruebas
Mantencin
24
Modelo Secuencial
1.
Actividades:
Ingeniera y modelado de Sistemas/Informacin
2.
Actividades: (Continuacin)
Generacin de cdigo o Implementacin
4.
de los algoritmos
algoritmos.
De Caja Negra: Anlisis de los procesos externos funcionales.
Mantenimiento
6.
Diseo
Pruebas
5.
3.
Modelo Secuencial
25
26
Modelo Prototipo
27
Modelo DRA
28
Modelo Incremental
Inconvenientes
30
Modelo Incremental
Modelo en Espiral
31
32
33
Mtodos formales
2.
Especificacin del
producto
Divisin Hw y Sw
3.
Diseo hw
34
4.
5.
Iteracin
e
implementacin
Diseo detallado Hw y Sw
Integracin
de
componentes Hw y Sw
Diseo sw
6.
7.
35
Busca la especificacin
matemtica del Sw.
Buen manejo de la ambigedad,
inconsistencia y lo incompleto.
Se utiliza en forma p
parcial en
diseo de sistemas de alta
seguridad (aviacin, medicina,
control de procesos).
Se obtienen algoritmos bien
estructurados.
Lenguaje Z, C2
36
Iteracin de concepcin:
iteracin preliminar con los
interesados
Cliente preliminar
Usuarios
Inversionistas financieros,
,
etc.
Iteracin de elaboracin:
finalizacin de qu se desea y
necesita; establecer la base de
la arquitectura
Iteracin de construccin: dan
como resultado la capacidad
iterativa (producto bsico)
Iteracin de transicin: terminar
la liberacin del producto
Jacobson-Metodologa Objectory
Booch-Metodologa Booch
Rumbaugh-OMT (Tcnica de Modelado de Objetos)
37
Concepcin Elaboracin
Iteraciones Iter.
Prelim
Construccin
.. Iter. Iter.
n
n+1
..
Iter.
m
Transicin
Iter.
m+1
..
A li i
Anlisis
Diseo
Implementacin
Prueba
39
40
Caractersticas fundamentales
38
Iter.
k
Requerimientos
41
42
Cascada.
Alto riesgo en sistemas nuevos debido a problemas en
las especificaciones y en el diseo.
Bajo riesgo para desarrollos bien comprendidos utilizando
tecnologa conocida.
Prototipado.
Bajo riesgo para nuevas aplicaciones debido a que las
especificaciones y el diseo se llevan a cabo paso a paso.
Alto riesgo debido a falta de visibilidad
Evolutivo
Alto riesgo debido a la necesidad de tecnologa avanzada
y habilidades del grupo desarrollador.
43
44
Visibilidad de Procesos
45
46
7. Herramientas CASE
C
A
S
E
47
Computer
Aided
Assisted
Automated
Software
Systems
Engineering
48
1.
2.
3.
4.
5.
49
2. Clasificacin CASE
50
Funcional
De proceso
De Integracin
El diseo y la comunicacin.
52
8. Conclusiones
EJEMPLOS
Herramientas PERT, herramientas de
estimacin, hojas de clculo
Editores de texto, editores de diagramas,
procesadores de palabra
Entornos de desarrollo,
desarrollo generadores de
interface de usuario
Compiladores, intrpretes
53
54
8. Conclusiones
9. Referencias
Preguntas?
Gracias!
57
1.
2.
3.
4.
McGraw-Hill.
Somerville, Ian (2002) Ingeniera de software.
6a edicin. Addison Wesley.
Braude Eric J. (2003) Ingeniera de Software
Una perspectiva orientada a objetos, Alfaomega
Berger, A. (2002) Embedded Systems Design.
An Introduction to Process, Tools and
Techniques CMP Books.
56