You are on page 1of 16

Za.e-..

aaa aet qaaea


Iacullad de Ingenieia Lleclinica y Teleconunicaciones
Depailanenlo de Ingenieia Telenlica
Apuntes sobre el Proceso Unificado para el
Desarrollo de Programas
Alvaro Rendon Gallon
Iopayn, nayo de 2OOO
Apuntes sobre el Proceso Unificado para el Desarrollo de Programas
FIET - Departamento de Ingenieria Telematica i
Tabla de Contenido
Pg.
1. Actividades y productos de los componentes de ingeniera.................1
1.1 Captura de Requerimientos ...............................................................................1
1.2 Anlisis.................................................................................................................3
1.3 Diseo...................................................................................................................5
2. Documentacin de los Programas..........................................................7
2.1 Introduccin ........................................................................................................7
2.2 Anlisis de Requerimientos del Software .........................................................8
2.3 Anlisis del Software ..........................................................................................9
2.4 Diseo del Software ............................................................................................9
2.5 Implementacin del Software ..........................................................................10
2.6 Pruebas del Software ........................................................................................10
3. Referencias ............................................................................................ 12
ApuntesUP.doc V1.0
Apuntes sobre el Proceso Unificado para el Desarrollo de Programas
FIET - Departamento de Ingenieria Telematica 1
1. Actividades y productos de los componentes de
ingeniera
1.1 Captura de Requerimientos
Las actividades realizadas, junto con los productos obtenidos en cada una son:
Anlisis del dominio
- Modelo del Dominio.
El Modelo del Dominio identiIica los elementos Iundamentales del problema y las
relaciones que se encuentran entre ellos. Se representa como un diagrama de clases con
nombres y atributos para estas, mas sus relaciones de asociacion (incluyendo
cardinalidad) y herencia. La Eigura 1 muestra a manera de ejemplo un Modelo del
Dominio para una llamada teleIonica basica.
- Glosario (Diccionario de datos)
Figura 1. Modelo del dominio de una llamada telefnica bsica
Construccin del rbol de funciones
Se identiIican la Iunciones del sistema, estableciendo una jerarquia donde las Iunciones
mas generales agrupan a las mas especiIicas. La Eigura 2 muestra un Iragmento del
arbol de Iunciones para el sistema de gestion de la biblioteca.
Encontrar Actores y Casos de Uso
- Bosquejo del Modelo de Casos de Uso
A-B: Llamada
Marcado#6211234
Estado : contestada
A. Abonado
Nombre : Pedro
Perez
Estado :
B: Abonado
Nombre : Juan
Pardo
Estado :
AF: Facilidad
Telefono#2345678
Estado :
A-B: Conexion
Estado :
conectad
BF: Facilidad
Telefono#6211234
Estado :
Llamante
Llamado
Controlador
Terminal1
Terminal2
Apuntes sobre el Proceso Unificado para el Desarrollo de Programas
FIET - Departamento de Ingenieria Telematica 2
Figura 2. rbol de funciones (fragmento)
Priorizar Casos de Uso
Se determina cuales casos de uso deben ser desarrollados (e.g. analizados, diseados,
implementados, etc.) en las primeras iteraciones, y cuales en las iteraciones posteriores.
Este resultado es usado como un insumo en la actividad de elaboracion del plan de
desarrollo del soItware.
Detallar Casos de Uso
- Descripcion de los casos de uso
Casos de uso de alto nivel
Para los mas criticos se utiliza la descripcion extendida.
Construir Prototipos de las Interfaces de Usuario
- Maquetas de las interIaces de usuario
Estructurar el Modelo de Casos de Uso
- Modelo de Casos de Uso
Analizar Riesgos y Definir Plan del Software
- IdentiIicar los riesgos que pueden aIectar el desarrollo del proyecto y establecer las
estrategias y acciones que conducen a eliminarlos o reducirlos.
- Teniendo en cuenta los resultados del analisis de riesgos, establecer la estrategia de
desarrollo del proyecto, a saber, las iteraciones a traves de las cuales va a
evolucionar el producto, indicando para cada prototipo cuales Casos de Uso se van a
incluir en su realizacion.
1. Atencion al Lector
1.1 Consultar titulos
1.2 Reservar libros
2. Eunciones del Monitor
2.1 Reservar libros
2.1.1 Hacer reserva
2.1.2 Borrar reserva
2.2 Prestar libros
3. Eunciones del Director
3.1 Gestion de titulos
3.1.1 Adquirir titulo
3.1.2 Catalogar titulo
3.1.3 Retirar titulo
3.2 Gestion de monitores
3.3 Estadisticas
Apuntes sobre el Proceso Unificado para el Desarrollo de Programas
FIET - Departamento de Ingenieria Telematica 3
- Establecer los recursos requeridos en las diIerentes etapas del desarrollo del proyecto
y elaborar el presupuesto.
- Estimar los tiempos de desarrollo requeridos y elaborar el cronograma de
actividades.
Productos Finales
Los productos Iinales obtenidos son:
- EspeciIicacion de requerimientos.
Descripcion narrativa del sistema.
Propositos del sistema.
Eunciones del sistema.
Atributos y restricciones.
- Modelo del Dominio.
- Glosario.
- Arbol de Iunciones.
- Modelo de Casos de Uso.
Descripcion de los casos de uso.
Maquetas de las interIaces de usuario.
- Analisis de riesgos y plan de desarrollo del soItware.
Riesgos y estrategias de manejo.
Estrategia de desarrollo: Relacion de prototipos y casos de uso.
Cronograma.
Presupuesto.
1.2 Anlisis
Las actividades realizadas, junto con los productos obtenidos en cada una son:
Anlisis de la Arquitectura
- Bosquejo de los paquetes
- Bosquejo de las clases de analisis
- Descripcion de la arquitectura (vista del Modelo de Analisis).
Esta es la primera actividad en la obtencion de la Vista Logica del sistema, que como se
vera en las actividades subsiguientes, es un proceso iterativo guiado por escenarios, los
cuales estan representados por los Casos de Uso.
En la identiIicacion de las clases de analisis se utilizan las siguientes categorias de
clases:
Apuntes sobre el Proceso Unificado para el Desarrollo de Programas
FIET - Departamento de Ingenieria Telematica 4
- Entidad (Entitv): Modelado de inIormacion
- InterIaz (Boundarv): Modela las comunicaciones con el exterior
- Control (Control): Modela el comportamiento
- Excepcion (Exception): Gestiona excepciones
Clases de Entidad
- ReIlejan el mundo real o se crean para tareas internas
- No dependen del entorno del sistema
- Pueden ser independientes de la aplicacion
- Se obtienen examinando las responsabilidades del sistema en los casos de uso
Clases de InterIaz
- Proveen la interIaz con el usuario o con otros sistemas
- Dependen del entorno del sistema
- Se obtienen examinando las relaciones actor-escenario en los casos de uso
- Se reIinan durante el diseo para considerar los protocolos de comunicacion
Clases de Control
- Coordinan los eventos necesarios para implementar el comportamiento especiIicado
en el caso de uso
- Son dependientes de la aplicacion
- Al comienzo, existe una clase de control para cada par actor-caso de uso
La vista arquitectural del Modelo de Analisis describe los elementos del modelo que son
signiIicativos para la arquitectura del sistema: paquetes, clases claves y casos de uso que
realizan Iuncionalidades criticas e importantes.
Anlisis de los Casos de Uso
- Realizacion de los Casos de Uso para Analisis
Descripcion de casos de uso abstractos
Realizacion de casos de uso con Diagramas de Interaccion (Colaboracion o
Secuencia).
- Bosquejo de las clases de analisis
Anlisis de Clases
- Clases de analisis
Responsabilidad de las clases
Atributos
Relaciones
Apuntes sobre el Proceso Unificado para el Desarrollo de Programas
FIET - Departamento de Ingenieria Telematica 5
Diagramas de estados. Comportamiento de aquellos objetos del Modelo de
Analisis que deben ser modelados con estados.
Las relaciones entre clases resultan de examinar los escenarios (Diagrama de Secuencia).
Los mensajes entre objetos indican relaciones entre sus respectivas clases.
Anlisis de Paquetes
- Diagrama de paquetes
Clases que contienen
Dependencias
Productos Finales
Los productos Iinales obtenidos son:
- Descripcion de casos de uso abstractos
- Diagrama de Paquetes
- Clases de analisis
- Realizacion de los Casos de Uso para Analisis (Diagramas de interaccion)
- Manual de usuario (primera version)
1.3 Diseo
Las actividades realizadas, junto con los productos obtenidos en cada una son:
Diseo de la Arquitectura
- Modelo de Implantacion.
- Bosquejo de los subsistemas. Se parte de los paquetes identiIicados en la Iase de
Analisis.
- Bosquejo de las interIaces.
- Bosquejo de las clases de diseo.
- Descripcion de la arquitectura (vista del Modelo de Diseo). Describe los elementos
del Modelo de Diseo que son signiIicativos para la arquitectura:
Subsistemas, sus interIaces y sus dependencias.
Clases de diseo signiIicativas para la arquitectura.
Realizaciones de casos de uso para Iuncionalidades importantes o criticas del
sistema.
Diseo de Casos de Uso
- Realizacion de los casos de uso para Diseo.
Descripcion de casos de uso reales
Apuntes sobre el Proceso Unificado para el Desarrollo de Programas
FIET - Departamento de Ingenieria Telematica 6
Realizacion de casos de uso con Diagramas de Secuencia.
- Bosquejo de las clases de diseo.
- Bosquejo de los subsistemas.
- Bosquejo de las interIaces.
Diseo de Clases
- Clases de Diseo.
Operaciones y metodos (algoritmos).
Atributos.
Relaciones.
Diagramas de estados.
Las operaciones se identiIican examinando los mensajes en el Diagrama de Secuencias.
Cada mensaje implica una operacion en la clase receptora.
Los atributos se encuentran en el planteamiento del problema, los requerimientos y los
casos de uso.
Diseo de Subsistemas
- Subsistemas.
- InterIaces oIrecidas por los Subsistemas.
Productos Finales
Los productos Iinales obtenidos son:
- Descripcion de casos de uso reales.
- Subsistemas e interIaces.
- Clases de Diseo.
- Realizacion de los Casos de Uso para Diseo (Diagramas de interaccion).
- Modelo de Implantacion.
- Descripcion de la arquitectura (vista del Modelo de Diseo).
- Manual de usuario (segunda version)
Apuntes sobre el Proceso Unificado para el Desarrollo de Programas
FIET - Departamento de Ingenieria Telematica 7
2. Documentacin de los Programas
2.1 Introduccin
El desarrollo de programas se encuentra normalmente enmarcado dentro de proyectos
que tienen como objetivo la obtencion de un producto industrial que involucra una
amplia gama de tecnologias, y se inter-relaciona con diversos tipos de usuarios que
deben seguir generalmente procedimientos bien establecidos. La complejidad de los
productos exige un minucioso registro de todos los aspectos que han sido considerados
en su desarrollo, lo mismo que una deIinicion clara y precisa de la manera como debe
ser Iabricado, instalado, operado y mantenido. Es evidente que del cumplimiento de
estas exigencias, a traves de una documentacion de calidad, depende en gran medida el
exito de los proyectos.
DesaIortunadamente no son muchos los productos que se documentan adecuadamente,
diIicultando enormemente su mantenimiento, privando a sus realizadores de las
posibilidades de las distintas Iormas de reutilizacion, e incluso poniendo en grave riesgo
la misma propiedad de las empresas sobre los desarrollos al no contar con la
inIormacion para reproducirlos. Se podria decir que, mas que en el equipo o el codigo
que se entrega al cliente, es en la documentacion donde reside el Iruto del trabajo
realizado. Haciendo una analogia con el mundo de la orientacion a objetos, la
documentacion constituye la Clase mientras que los sistemas entregados a los clientes
son las instancias de esa Clase.
El conjunto de documentos que deben resultar del proceso de desarrollo de un producto
es bastante amplio, e incluye la descripcion general del sistema, los manuales de
produccion, instalacion, operacion y mantenimiento, los documentos de desarrollo de los
programas, y seguramente otros de caracter administrativo.
En el presente capitulo se oIrece una guia general para la elaboracion de los documentos
de desarrollo de los programas, los cuales describen los diIerentes niveles de abstraccion
del soItware integrado en el producto, obtenidos a lo largo de su ciclo de vida. Ellos son:
Analisis de Requerimientos del SoItware.
Analisis del SoItware.
Diseo del SoItware.
Implementacion del SoItware.
Pruebas del SoItware.
A continuacion se describe cada uno de estos documentos, haciendo reIerencia a los
diagramas UML |1|, que es la notacion seleccionada para representar los modelos del
soItware, y tomando como base los procesos de desarrollo de soItware descritos en |2| y
|3|.
Apuntes sobre el Proceso Unificado para el Desarrollo de Programas
FIET - Departamento de Ingenieria Telematica 8
2.2 Anlisis de Requerimientos del Software
En este documento se consignan las demandas del cliente con relacion al soItware del
sistema: sus objetivos, las Iunciones que espera de el, los actores que intervienen, las
secuencias de operacion, los Iormatos de entrada de inIormacion y entrega de resultados,
y los atributos y restricciones Iuncionales y no Iuncionales (tiempo, espacio, peso, etc.).
Consta de los siguientes elementos:
EspeciIicacion de requerimientos. Declaracion de los requerimientos realizada por el
cliente, que incluye tanto las demandas que ha planteado directamente, como las
obtenidas a traves de entrevistas y de analisis conjunto. Contiene:
- Descripcion narrativa acompaada por material graIico ilustrativo.
- DeIinicion de los propositos del sistema.
- IdentiIicacion de las Iunciones mediante la construccion del arbol de Iunciones.
Estas son etiquetadas para reIerencias posteriores.
- IdentiIicacion de atributos y restricciones.
- Maquetas de los Iormatos de entrada y salida.
Modelo del Dominio. Diagrama de clases (nombres y atributos) que identiIica los
elementos Iundamentales del problema y las relaciones entre ellos. Al igual que el
diccionario de datos, contribuye a establecer un vocabulario comun entre los
participantes en el proyecto.
Diccionario de datos. Glosario inicial de los terminos utilizados. Para toda
inIormacion que maneja el sistema debe indicarse su signiIicado, origen y Iormato.
Casos de Uso de alto nivel. Contiene el Diagrama de Casos de Uso donde se
identiIican los actores y los casos de uso del sistema, mas una descripcion breve,
usando dos o tres Irases, de las interacciones de los actores con el sistema. Los casos
de uso se ordenan por prioridad, para deIinir el orden de su implementacion, y los
mas criticos pueden describirse de manera extendida.
Analisis de riesgos. IdentiIicacion, evaluacion inicial (probabilidad de ocurrencia y
manera de controlarlos) y priorizacion de los riesgos que aIronta el desarrollo del
producto.
Plan del soItware. Describe los recursos, las actividades, el cronograma y el
presupuesto necesario para desarrollar el soItware. En la programacion de
actividades se asignan los casos de uso a los sucesivos ciclos de desarrollo.
ReIerencias bibliograIicas. Listado de los documentos, que pueden ser del cliente, de
la empresa o de terceros, que han servido de base para realizar el analisis de
requerimientos.
Apuntes sobre el Proceso Unificado para el Desarrollo de Programas
FIET - Departamento de Ingenieria Telematica 9
2.3 Anlisis del Software
Este documento describe el Modelo de Analisis (tambien llamado Modelo Euncional)
del SoItware, es decir, el que representa el comportamiento del sistema con base en los
conceptos del dominio del problema, sin entrar aun en los detalles de la solucion.
Contiene:
Casos de Uso abstractos. Son casos de uso extendidos pero que no entran en detalles
de diseo o decisiones de implementacion. Se complementan con las maquetas de las
interIaces de usuario.
Diagrama de Paquetes de Analisis. Descripcion de los paquetes creados para
organizar los elementos del Modelo de Analisis.
Diagrama de Clases de Analisis. Describe la clases de analisis, identiIicando sus
responsabilidades, atributos, relaciones y requerimientos especiales.
Diagramas de Interaccion del Sistema. Describe el comportamiento del sistema, a
traves de la realizacion de los casos de uso, en terminos de las interacciones entre las
clases de analisis.
Diagramas de Estados. Describen el comportamiento de aquellos objetos del Modelo
de Analisis que deben ser modelados con estados.
Primera version del Manual de Usuario.
2.4 Diseo del Software
Describe el Modelo de Diseo del SoItware, que representa los componentes con los
cuales se construye el soItware, mas las interacciones entre ellos y su comportamiento.
Contiene:
Casos de Uso reales. Descripcion de las interacciones reales que ocurren entre el
sistema y sus usuarios, incluyendo detalles de diseo y decisiones de
implementacion, como por ejemplo, las interIaces graIicas de usuario utilizadas.
Diagrama de Paquetes de Diseo. Descripcion de los subsistemas creados para
estructurar los elementos del Modelo de Diseo, y sus interIaces.
Diagramas de Clases de Diseo. Describen las clases de diseo del sistema.
Apuntes sobre el Proceso Unificado para el Desarrollo de Programas
FIET - Departamento de Ingenieria Telematica 10
Diagramas de interaccion. Describe el comportamiento del sistema, a traves de la
realizacion de los casos de uso, en terminos de las interacciones entre las clases de
diseo. Utiliza Diagramas de Secuencias y Diagramas de Colaboracion.
Diagramas de Estados. Describen el comportamiento de aquellos objetos del sistema
que deben ser modelados con estados.
Diagramas de Implantacion
1
. Describe la arquitectura del sistema en tiempo de
ejecucion: que hardware se requiere para correr el sistema (procesadores y
dispositivos de soporte), que tipo de conexiones se utilizan, y donde se ejecutan los
diIerentes componentes.
Descripcion de la arquitectura (vista del Modelo de Diseo).
Segunda version del Manual de Usuario.
2.5 Implementacin del Software
Describe el codigo producido, los archivos generados (Iuentes, intermedios, ejecutables)
y adquiridos (e.g. bibliotecas de Iunciones), y las herramientas y procedimientos
requeridos para obtener, instalar y poner en Iuncionamiento los ejecutables del sistema.
Contiene:
Descripcion de las clases.
- Proposito de la clase.
- Atributos: Descripcion.
- Metodos: Descripcion; entradas; salidas; y metodos, atributos, Iunciones y
variables utilizadas.
- Clases agregadas.
Diagrama de Componentes. Describe los archivos que integran el sistema y las
relaciones de dependencia que existen entre ellos.
Entorno de produccion. Describe las herramientas y procedimientos utilizados para
generar los diIerentes archivos del sistema y poner el sistema en Iuncionamiento.
2.6 Pruebas del Software
Contiene la inIormacion sobre las pruebas realizadas durante el desarrollo del sistema, a
saber:
1
Deployment.
Apuntes sobre el Proceso Unificado para el Desarrollo de Programas
FIET - Departamento de Ingenieria Telematica 11
Pruebas de unidad.
Pruebas de integracion.
Pruebas de sistema.
Pruebas de aceptacion.
Otras (e.g. Pruebas de conIormidad con estandares requeridos).
La inIormacion suministrada cubre todo el ciclo de vida de las pruebas: Planeacion,
Diseo, Implementacion, Ejecucion y Evaluacion.
Apuntes sobre el Proceso Unificado para el Desarrollo de Programas
FIET - Departamento de Ingenieria Telematica 12
3. Referencias
|1| H.-E. Eriksson and M. Penker. "UML Toolkit". John Wiley and Sons. 1998.
|2| T. Quantrani. "Visual Modeling with Rational Rose and UML". Addison-Wesley.
1998.
|3| I. Jacobson, G. Booch, and J. Rumbaugh. "The UniIied SoItware Development
Process". Addison-Wesley. 1999.
|4| C. Larman. "Applying UML and Patterns. An Introduction to Object-Oriented
Analysis and Design". Prentice-Hall. 1998.

You might also like