Beruflich Dokumente
Kultur Dokumente
Software
Referencias
Brookshear: Introduccin a las
Ciencias de la Computacin,
Cap 6 Ingeniera de Software
Ian Sommerville: Ingeniera de
software, 6 Edicin
Qu es Software?
Programas computacionales y documentacin
asociada.
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:
Genricos: desarrollados para ser vendidos a un tipo
de clientes.
Especficos: desarrollado para un cliente de acuerdo a
sus necesidades especficas.
Qu es Ingeniera de Software?
La Ingeniera de Sofware es una disciplina
de la Ingeniera que se preocupa de todos
los aspectos de la produccin de software.
aplicacin de los mtodos de la ingeniera
al proceso de desarrollo de software:
Diseo
Construccin
Mantenimiento
Algunas herramientas
CASE
Computer Aided Software Engineering
Ingeniera de software asistida por
computador
Colaboran con
Elaboracin de diagramas de flujo
Diagramas entidad relacin
Diccionarios de datos
Generadores de cdigo
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.
Modelo de Cascada
Definicin de
requerimientos
Diseo de sistemas
y software
Implementacin y
prueba de unidades
Integracin y
prueba de sistema
Operacin y
mantenimiento
Empleo de prototipos
Desarrollo de versiones simplificadas
Para ser analizadas antes de continuar el desarrollo
Facilitan el aprendizaje frente a situaciones nuevas o
desconocidas
Elimina la necesidad de un desarrollo en cascada o
secuencial, permite un desarrollo iterativo o en espiral
El prototipo puede ser desechable o evolutivo
Desarrollo evolutivo
Desarrollo exploratorio
El objetivo es trabajar con los clientes y evolucionar
hacia un sistema final desde una especificacin inicial.
Debera partir con requerimientos bien conocidos.
Prototipos desechables
El objetivo es entender los requerimientos del sistema.
Debera comenzar con requerimientos pobremente
conocidos.
Desarrollo evolutivo
Actividades
concurrentes
Bosquejo de la
descripcin
Especificacin
Versin inicial
Desarrollo
Versiones
intermedias
Validacin
Versin final
Desarrollo evolutivo
Problemas
Los sistemas a menudo resultan pobremente estructurados.
Puede ser necesario contar con habilidades especiales (por
ejemplo, lenguajes para prototipos rpidos).
Aplicabilidad
Para sistemas interactivos pequeos o de mediano tamao.
Para partes de sistemas grandes (por ejemplo, la interfaz del
usuario).
Para sistemas de corta vida til.
Calcular
ingresos
Calcular
descuentos
Descuentos
legales
Calcular
impuestos
Otros
descuentos
Procesar
Sueldos
Determinar
objetivos, alternativas y
restricciones
Anlisis de
riesgos
Anlisis de
riesgos
REVISIN
Plan de requerimientos
Plan de ciclo de vida
Plan de
desarrollo
Integracin y
plan de prueba
Prototipo 3
Prototipo
operacional
Prototipo 2
Anlisis
Protode
riesgos tipo 1
Concepto
de
operacin
Validacin de
requerimientos
Diseo de
V&V
Prueba de
aceptacin
Diseo del
producto
Diseo
detallado
Cdigo
Prueba de
unidades
Prueba de
integracin
Desarrollo, verificar
producto del siguiente
nivel
Desarrollo y validacin
Se escoge un modelo de desarrollo para el sistema que puede
ser cualquiera de los modelos genricos.
Planificacin
Se revisa el proyecto y se planifica la siguiente fase de la espiral.
Ingr
eso
s br
utos
do
ba
se
Calcular
ingresos
su
el
Ta
bl
a
de
s
ja
o
H
cia
n
e
i st
s
a
Calcular
descuentos
Diagramas entidad-relacin
Representacin grfica de los elementos de
informacin o entidades manipulados por el
sistema, y de sus relaciones
Profesor
imparte
clase
Asiste a
alumno
Validacin de Software
Verificacin es mostrar que un sistema adhiere a las
especificaciones.
Validacin: alcanza los requerimientos del cliente del
sistema.
Involucra los procesos de chequeo y revisin, y las
pruebas del sistema.
Las pruebas del sistema consideran la ejecucin del
mismo con casos de prueba que se derivan desde la
especificacin de datos reales para ser procesados por
el sistema.
Documentacin
La documentacin se requiere para los
siguientes fines:
Aprender a utilizar el sistema
Documentacin del usuario