Está en la página 1de 11

Instituto Tecnolgico

de la Laguna

Anlisis y Diseo Orientado


a Objetos

3.1 INGENIERIA DE SOFTWARE ORIENTADO A OBJETOS OOSE (IVAR JACOBSON)


3.1.1 Introduccin
Este mtodo proporciona un soporte para el diseo creativo de productos de software,
inclusive a escala industrial. El autor plantea el problema del diseo y construccin de software
haciendo una comparacin con la industria de la construccin, contemplando las siguientes fases:

Herramientas
Procesos
Mtodos
Arquitectura

Figura # 1

Herramientas. Soportan todos los aspectos de la


empresa, explcitamente las actividades de arquitectura,
mtodos y procesos.
Procesos. Permite el escalamiento de los mtodos, de
tal forma que puedan ser aplicados a proyectos de
forma interactiva y en partes.
Mtodos. Establece de manera explcita los
procedimientos etapa por etapa que deben seguirse
para aplicar la arquitectura al proyecto.
Arquitectura. Una buena estructura del sistema es fcil
de entender, de cambiar y realizar pruebas y
mantenimiento. Las propiedades del sistema determina
como la arquitectura debe ser tratada durante el tiempo
de vida. Las propiedades de la arquitectura son
extremadamente importantes y forman la base del
mtodo.

Diseo creativo
Las actividades creativas de un desarrollo, consisten en la transformacin de un conjunto
de requerimientos y nociones vagas, en un plan estructurado de construccin y un plan de accin
para su implementacin.
El diseo creativo tomando como referencia una base arquitectnica es seguir paso a
paso los mtodos y procesos con la asistencia de herramientas, para convertir los requerimientos
dentro de una arquitectura viable para la construccin de un proyecto incluyendo la creacin de
prototipos.

El ciclo de vida del sistema


Un aspecto importantes durante el desarrollo del sistema, es considerar explcitamente el
proceso de cambio.

3.1.2 Desarrollo del sistema


Todos los sistemas cambian durante su ciclo de vida. Hoy en da el desarrollo de los
nuevos mtodos es conocer que cambios son los principales en la parte global del ciclo de vida,
as como el costo del sistema. Una industrial del proceso debe por lo tanto saber sobre los cambios
del sistema. Un sistema normalmente desarrolla cambios incorporndose en nuevas versiones.
Paola Romero Guilln

37

Instituto Tecnolgico
de la Laguna

Anlisis y Diseo Orientado


a Objetos

Versin 1

Versin 1

Versin 2

Versin n

Primer desarrollo del ciclo


Figura # 2

La primera versin de un sistema representa una pequea parte de una composicin


durante el ciclo de vida del sistema.
REQUERIMIENTO

ANALISIS

CONSTRUCCION

PRUEBA

SISTEMA

Figura # 3
Las actividades de un ciclo de vida son las mismas tanto para desarrollar una nueva
versin de un sistema, as como para un sistema totalmente nuevo. La diferencia radica en que las
entradas para cada etapa cambian en cada ciclo de vida.
Modelo de anlisis
Especifica el comportamiento funcional del sistema bajo prcticamente circunstancias
ideales y sin hacer alusin a un ambiente particular de implementacin.
Construccin
L a primera actividad en la construccin consiste en la implementacin de los detalles que
conciernen a la arquitectura y construccin del plan, que es ir de una mayor abstraccin a
concretizar mas el plan.
Diseo
Formaliza el modelo de anlisis en trminos del ambiente de implementacin y
especifica la identidad de los bloques de construccin
Prueba del sistema
Consiste en la verificacin del trabajo de cada uno de los paquetes de servicio definidos en
el modelo de anlisis Esta fase tiene lugar en varios niveles, desde funciones especficas, hasta el
sistema completo.
Desarrollo incremental
El desarrollo del sistema es usualmente un proceso el cual toma varios aos para su
terminacin. La especificacin es seguida por el anlisis, la construccin y prueba del sistema
completo. Este mtodo puede trabajar si todos los requerimientos del sistema son conocidos del
conjunto de salida.

Paola Romero Guilln

38

Instituto Tecnolgico
de la Laguna

Anlisis y Diseo Orientado


a Objetos

En la mayora de los casos, conviene mejor desarrollar el sistema etapa por etapa,
empezando con unas cuantas funciones principales, como se va aclarando la comprensin del
sistema en cuanto a su funcionalidad se van agregando nuevas funciones, de esta forma el
sistema va creciendo.
Sistema de desarrollo y metodologa
Cuando se desarrolla un sistema grande es importante conocer como cada uno de los
pasos del mtodo interactan y como ellos compiten dentro del desarrollo del proceso. Se hace
hincapi en la discusin entre el proceso de desarrollo y las ideas bsicas que hay detrs del
mtodo lo que determina la seleccin de una arquitectura de un universo de arquitecturas.
Finalmente se agregan pocos comentarios acerca de cmo las herramientas CASE deberan ser
diseadas para soportar el desarrollo, iniciando desde las propiedades fundamentales de la
arquitectura, mtodos y procesos.
3.1.3 Modelos
El sistema de desarrollo es una tarea compleja. Algunos aspectos diferentes han sido
tomados en consideracin. Se trabaja con 5 modelos:
o
o
o
o
o

El modelo de requerimientos: El objetivo es la captura de requerimientos funcionales.


El modelo de anlisis: El objetivo es dar al sistema una estructura de objetos robusta y
flexible a los cambios.
Modelo de diseo: Tiene como objetivo adoptar y refinar la estructura de objetos en el
ambiente actual de implementacin.
El modelo de implementacin: Tiene como objetivo implementar el sistema
El modelo de prueba: Su objetivo es verificar el sistema.

Anlisis

Modelo de Requerimientos
Modelo de Anlisis

Construccin

Prueba

Modelo de Diseo
Modelo de Implementacin

Modelo de Prueba

Figura # 4

La idea bsica de estos modelos es capturar el concepto inicial de todos los requerimientos
funcionales y usar sus perspectivas. Es por eso que la relacin entre ellos es importante. Para
hacer posible el mantenimiento del sistema es tambin necesario que los modelos sean tangibles.

Procesos y modelos
Durante el desarrollo de un sistema se crea un modelo del sistema. El diseo de este
modelo trabaja sobre un proceso de descripcin con el cual ser desarrollado el sistema. Esos
modelos son expresados en un cierto espacio de informacin. Cada proceso toma uno o varios
modelos y transforma esto dentro de otros modelos.

Paola Romero Guilln

39

Instituto Tecnolgico
de la Laguna

Anlisis y Diseo Orientado


a Objetos

Entrada

Salida
Proceso
Modelo B

Modelo A

Figura # 5 Los procesos transforman un modelo en otro


modelo

El modelo final ser una descripcin del sistema, completo y probado. Esta descripcin
normalmente consiste del cdigo fuente y su documentacin.

Proceso de anlisis
El proceso de anlisis produce dos modelos, a partir de la especificacin de
requerimientos, un modelo de requerimientos es creado para especificar toda la funcionalidad del
sistema. Esto es principalmente hecho por: casos de uso en el modelo de casos de uso, el cual
forma parte del modelo de requerimientos.
El modelo de requerimientos es la base de otro modelo creado por el proceso de anlisis,
llamado modelo de anlisis. El modelo de anlisis es la base de la estructura del sistema. En este
modelo se especifican todos los objetos lgicos que sern incluidos en el sistema y como estn
relacionados y agrupados.
Modelo de
Requerimientos

diseo

implementacin

Modelo de Anlisis

Modelo de Diseo

Modelo de
Implementacin

Figura # 6
Modelo de requerimientos
Actores y Casos de Uso
La primera transformacion hecha de la especificacion de requerimientos para el modelo de
requerimientos consiste en:
o
o
o

Un modelo de caso de uso


Descripcin de la interfase
Un modelo en el dominio del problema

Paola Romero Guilln

40

Instituto Tecnolgico
de la Laguna

Anlisis y Diseo Orientado


a Objetos

Caso de uso

Actor

Figura # 7

El modelo de caso de uso usa actores y caso de uso


Estos conceptos son usados para definir qu existe contacto externo con el sistema
(actores), y qu debera ser hecho por el sistema (caso de uso).
Los actores representan quienes interactan con el sistema. Representan todas las
necesidades de cambio de informacin con el sistema. Dado que el actor representa la parte
exterior del sistema no se describirn detalles de ellos.
La diferencia entre un actor y un usuario radica en que el usuario es la persona que usa el sistema,
mientras que el actor es un rol que el usuario puede jugar.

EJEMPLO DE UN MODELO DE CASO DE USO.

Jugar_Pacman

Jugador

Figura # 8

Manejo del diseo de un caso de uso

El modelo del sistema usar un manejo de casos de uso. Cuando se desea un cambio en
el comportamiento del sistema, se remodela el actor y el caso de uso apropiado. Otra
caracterstica importante del modelo de requerimientos es que podemos discutir esto con el usuario
y encontrar sus requerimientos y preferencias. Este modelo es fcil de entender y formularlo desde
la perspectiva del usuario y generar un buen sistema de acuerdo a sus requerimientos.
El soporte del modelo de caso de usos es apropiado para desarrollar las interfaces de los
casos de uso. Aqu un prototipo de interfase de usuario es una buena herramienta.
El modelo de caso de uso controla la formulacin de otros modelos. Esto es desarrollado
en cooperacin con el modelo de dominio de objeto.

Paola Romero Guilln

41

Instituto Tecnolgico
de la Laguna

Anlisis y Diseo Orientado


a Objetos

Modelo de casos de uso

Expresado en trminos de

realizado por

Estructurado por

probado en

mplementado por

Clases...
Modelo en el
Modelo de anlisis
Dominio de objetos

Modelo de diseo

SI
SI
SI

Modelo de
Modelo de prueba
implementacin

Figura # 9
Modelo de anlisis
Se ha visto que el modelo de requerimientos tiene como objetivo definir las limitaciones del
sistema y especificar su comportamiento. Cuando el modelo de requerimientos ha sido
desarrollado y aprobado por los usuarios se puede iniciar el desarrollo del sistema.
La informacin para este sistema se enfoca en la captura de:

Informacin: Especifica la informacin de ayuda en el sistema. As como describe el estado


interno del sistema.

Comportamiento: Especifica el comportamiento que adopta el sistema. Especifica cuando y


como el sistema cambia de estado.

Presentacin: Detalla la presentacin del sistema al mundo exterior.


Comportamiento
Informacin
Presentacin

Dimensiones del modelo de anlisis


Figura # 10

Paola Romero Guilln

42

Instituto Tecnolgico
de la Laguna

Anlisis y Diseo Orientado


a Objetos

Existen varios tipos de objetos usados para la estructura del sistema en el modelo de anlisis

Objeto entidad

Objeto de interfase

Objeto de
control

Figura # 11
Cada objeto al menos captura dos de las tres dimensiones del modelo de anlisis, sin
embargo cada uno de ellos tiene cierta inclinacin hacia una de las dimensiones.

comportamiento

informacin
presentacin
Figura # 12

El modelo de requerimientos es estructurado en el modelo de anlisis

El modelo de anlisis esta formado a partir del modelo de casos de uso. Cada caso de uso
ser divido en objetos de 3 tipos. En el modelo de requerimientos se especifica toda la
funcionalidad del sistema. Esta funcionalidad debe ser ahora conformada para obtener una
estructura completa y robusta.
Funcionalidad de
un caso de uso

Asignando
responsabilidades
a objetos.

Objeto de interfase

Objeto entidad

Objeto de control

Figura # 13. Funcionalidad de un caso de uso convertida a responsabilidades de Objetos.

Paola Romero Guilln

43

Instituto Tecnolgico
de la Laguna

Anlisis y Diseo Orientado


a Objetos

La funcionalidad de un caso de uso convertida a responsabilidades de objetos.


La particin se realiza bsicamente de acuerdo a los siguientes principios:

Aquella funcionalidad de casos de uso la cual es directamente dependiente del ambiente del
sistema, es representada por objetos de interfase.
Aquella funcionalidad derivada del almacenamiento y manejo de informacin, la cual de
manera natural no encaja en ningn objeto de interfase, es representada por objetos entidad.
Aquella funcionalidad especificada para unos pocos casos de uso y que de manera natural no
encaja en ninguno de los objetos anteriores, es representada por objetos de control.

El modelo de diseo de objetos


El proceso de construccin edifica el sistema usando tanto el modelo de anlisis y el
modelo de requerimientos. Primero se crea el modelo de diseo que es un refinamiento y
formalizacin del modelo de anlisis. Al inicio del trabajo cuando se desarrolla el modelo de diseo
es para adaptarlo a la implementacin del ambiente actual.
Comportamiento
Ambiente de
Implementacin

Informacin

Presentacin
Figura # 14

Una diferencia entre el modelo de anlisis y el modelo de diseo es que el modelo de


anlisis debe ser visto como un modelo conceptual o lgico del sistema, y el modelo de diseo
contiene el cdigo, por lo cual el modelo de diseo deber ser una representacin de la manera
como el cdigo fuente es estructurado, manejado y escrito.
Modelo de anlisis

Modelo de diseo

Empiezan
a
aparecer
consecuencias del ambiente
de implementacin

Refinamiento.

Figura # 15 Transicin del modelo de anlisis al modelo de diseo

Paola Romero Guilln

44

Instituto Tecnolgico
de la Laguna

Anlisis y Diseo Orientado


a Objetos

3.1.4 Bloques
El concepto de bloque describe la intencin de cmo el cdigo debe ser producido. Los
bloques son el diseo de objetos y ellos se dibujan como rectngulos. Un bloque normalmente
apunta para implementar un objeto de la etapa de anlisis, aqu puede ser posible usar los
diferentes tipos de bloques:
!
!
!

Bloque de interfase.
Bloque de Entidad.
Bloque de Control.

Figura # 16 Bloque
Diagrama de interaccin
Para describir una secuencia de estmulos se usan los diagramas de interaccin. Se puede
describir como varios bloques se comunican mediante envi de estmulos de uno a otro. Como
una base para esa interaccin se usa otra vez el modelo de caso de uso. Describe en detalle para
cada caso de uso, una secuencia de estimulo la cual es enviada entre los bloques.
bloque 1

bloque 1

bloque 3

bloque 4

s1
s2
s3

s4

Figura # 17 Diagrama de Secuencia Genrico

La Figura # 17 muestra la representacin de un diagrama de secuencia, donde el tiempo


avanza de arriba hacia abajo y la flechas indican comunicacin entre objetos. En la Figura # 18 se
muestra un ejemplo prctico usando el problema del Pacman.

Paola Romero Guilln

45

Instituto Tecnolgico
de la Laguna

Anlisis y Diseo Orientado


a Objetos

: Jugador

: Pacman

: Fantasma

Camina_
Camina_

Come_Fantasma(Valor)

Come_Fantasma(Pacman)

Figura # 18 Diagrama de Secuencia del ejemplo


Trabajando con el modelo de diseo
Durante la construccin del proyecto, se procede a la edificacin del modelo de diseo.
Para cada objeto en el modelo de anlisis, se asigna un bloque en el modelo de diseo. Cuando se
tiene que crear la estructura del bloque, se dibuja un diagrama de interaccin para mostrar como
los bloques se comunican. Normalmente se dibuja un diagrama de interaccin para cada caso de
uso.

El comportamiento del objeto.


Como un nivel intermedio, considerando la parte interna del objeto, antes de iniciar la
implementacin se puede usar una grfica de transicin de estado, su propsito es proporcionar
una descripcin simplificada, que mejore la comprensin del bloque, sin tener que bajar a nivel de
cdigo fuente, proporcionando una descripcin que es menos dependiente del lenguaje de
programacin seleccionado. En este tipo de grficas se describe cual estmulo puede ser recibido y
que va a suceder cuando el estmulo es recibido. Esta grfica usa los smbolos mostrados en la
Figura # 19.

Paola Romero Guilln

46

Instituto Tecnolgico
de la Laguna

Anlisis y Diseo Orientado


a Objetos

Inicio

Regreso de mensaje

Estado

Enva seal

Enva mensaje

Recibe seal

Recibe mensaje

Realiza un trabajo

Figura # 19, Notacin para las grficas de transicin de estados.

El modelo de Implementacin
La implementacin del modelo consiste de la notacin del cdigo. La informacin de
espacio es la opcin del lenguaje de programacin que se usa. no necesariamente se requiere de
un lenguaje de programacin orientada a objeto, sin embargo, si se recomienda el uso de un
lenguaje de programacin orientada a objeto, desde la concepcin inicial hasta la construccin.
La base para la implementacin es el modelo de diseo. Aqu se especifica la interfase de
cada bloque.

El modelo de prueba
El modelo de prueba es el ultimo modelo a construir. Describe simplemente el estado de
resultados de la prueba. El modelo de requerimientos de nuevo representa una herramienta
potente de prueba, al probar cada caso de uso, se verifica que los objetos se comuniquen
correctamente en dicho caso de uso. De manera simular se verifica la interfase de usuario, descrita
en el modelo de requerimientos, con todo lo anterior, el modelo de requerimientos es la base de
verificado para el modelo de prueba.

Paola Romero Guilln

47

También podría gustarte