Professional Documents
Culture Documents
DEFINICIN
La aplicacin mecanismos sistemticos, disciplinados, y cuantificables para el desarrollo, operacin y mantencin de software; esto es la aplicacin de la ingeniera al software. Establecimiento y uso de principios con caracteres de ingeniera apropiados para obtener, eficientemente, software confiable, que opere eficaz y eficientemente en mquinas reales La aplicacin del arte del desarrollo software junto con las ciencias matemticas y computadores para disear, construir, y mantener programas computacionales eficientes y econmicos que logran sus objetivos.
CLAVES EN DESARROLLO DE SI
Notacin
(UML)
Herramientas
(Ej: Rational Rose)
Proceso
envo
Proceso de Negocios
Sistema Computacional
Mltiples Sistemas
Componentes Reutilizados
Promover la Reutilizacin
PROBLEMAS EN OO
...Los conceptos bsicos de la OO se conocen desde hace dos dcadas, pero su aceptacin todava no est tan extendida como los beneficios que esta tecnologa puede sugerir
PROBLEMAS EN OO
Un objeto contiene datos y operaciones que operan sobre los datos, pero ... Podemos distinguir dos tipos de objetos degenerados:
Un objeto sin datos (que sera lo mismo que una biblioteca de funciones) Un objeto sin operaciones, con slo operaciones del tipo crear, recuperar, actualizar y borrar (que se correspondera con las estructuras de datos tradicionales)
PROCESO DE DESARROLLO DE SW
Sueo
Investigacin
Desarrollo
Lanzamiento
Soporte
Tiempo
Etapas de un Proyecto de software Paradigmas / enfoques para enfrentar el desarrollo del proyecto de software (Cascada, Interativo incremental) Tiempo y Costos
Aspectos tecnolgicos
Gestin de Proyectos
Entendimiento inicial de la problemtica a resolver Reuniones con Cliente Especificacin inicial de requerimientos
Confeccin de Propuesta
(COCOMO) y estadisticas de proyectos similares al que se dessarrollar, entrevistas a personas con experiencia en proyectos similares al que se desarrollar Definicin del alcance del proyecto Costos
Casos de Uso
anlisis dinmico Modelos Conceptuales anlisis esttico Diseo preliminar de interfaces (web, GUI, comandos, voz)
Diseo de Interfaces (web, gui, comandos, voz) Realizacin de diagramas de secuencia Realizacin de diagramas de clases
Construccin / Codificacin
Entendimiento real del diseo ( solucin) a programar Programacin eficiente y optima del cdigo fuente Comentar en forma entendible y razonable el cdigo fuente Construccin de programa de TEST Prueba unitaria del desarrollador mediante un programa de TEST
Pruebas Unitarias
Pruebas Integradas
Capacitacin a Usuarios
Puesta en Produccin
Resolucin de Incidencias
Las Metodologas pueden ser la ayuda que necesitamos, si podemos usarlas correctamente !!
PROCESOS, METODOLOGAS
Yo no conozco todas, pero vale la pena conocer al menos una. Aquellas en rojo son la ms populares.
METODOLOGAS EN REA TI
Ms detalles aqu.
Construccin/Pruebas
Implementacin y Test Unitarios Integracin y test del sistema Operacin y mantencin
Tiempo
Iteracin 1
R A&D C P R
Iteracin 2
A&D C P
Iteracin 3
R A&D C P
Tiempo
Concepcin
Elaboracin
Construccin
Transicin
A& D
A& D
A& D
A& D
Construccin
Pruebas
Distribucin
D
Iteracin Preliminar Iteracin 1
D
Iteracin 2 ....
D
.... Iteracin n
D
Iteracin n+1
Tiempo
Concepcin
Elaboracin
Construccin
Transicin
Tiempo
Hito Objetivos, visin Hito Arquitectura Hito Capacidad Operacional Liberacin Producto
Modele Visualmente
Verifique Calidad
Objectory Process
1987-1995
UML
Enfoque Ericsson
Primarios
De Apoyo
Entorno
Requisitos
Anlisis & Diseo
Implementacin
Pruebas
Realizacin de Anlisis
trace
Pruebas Funcionales
X
Caso de Prueba
[The Unified Software Development Process. I. Jacobson, G. Booch and J. Rumbaugh. Addison-Wesley, 1999]
P RO C E S O C E N T R A D O E N L A A RQU I T E C T U R A
La arquitectura de un sistema es la organizacin o estructura de sus partes ms relevantes Un arquitectura ejecutable es una implementacin parcial del sistema, construida para demostrar algunas funciones y propiedades RUP establece refinamientos sucesivos de una arquitectura ejecutable, construida como un prototipo evolutivo
Elaboration Construction
Inception
Transition
Architecture
Define el mbito y objetivos del proyecto Se define la funcionalidad y capacidades del producto
Elaboracin
Tanto la funcionalidad como el dominio del problema se estudian en profundidad Se define una arquitectura bsica Se planifica el proyecto considerando recursos disponibles
15%
Requisitos
10%
15% 30% 15%
Diseo
Implementacin
Pruebas
P r e lim in a ry I te r a tio n ( s ) ite r. #1 ite r. #2 ite r. #n ite r. # n+ 1 ite r. #n+2 it e r. #m ite r. #m +1
Diseo
Implementacin
Pruebas
P r e lim in a ry I te r a tio n ( s ) ite r. #1 ite r. #2 ite r. #n ite r. # n+ 1 ite r. #n+2 it e r. #m ite r. #m +1
Esfuerzo: Duracin:
5% 10%
20% 30%
65% 50%
10% 10%
Vista
Controlador
Modelo