Está en la página 1de 11

Instituto Tecnológico Análisis y Diseño Orientado

de la Laguna a Objetos

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

3.1.1 Introducción

Este método proporciona un soporte para el diseño creativo de productos de software,


inclusive a escala industrial. El autor plantea el problema del diseño y construcción de software
haciendo una comparación con la industria de la construcción, contemplando las siguientes fases:

• Herramientas. Soportan todos los aspectos de la


empresa, explícitamente las actividades de arquitectura,
métodos y procesos.
• Procesos. Permite el escalamiento de los métodos, de
Herramientas tal forma que puedan ser aplicados a proyectos de
Procesos forma interactiva y en partes.
Métodos • Métodos. Establece de manera explícita los
Arquitectura procedimientos etapa por etapa que deben seguirse
para aplicar la arquitectura al proyecto.
• Arquitectura. Una buena estructura del sistema es fácil
de entender, de cambiar y realizar pruebas y
mantenimiento. Las propiedades del sistema determina
Figura # 1 como la arquitectura debe ser tratada durante el tiempo
de vida. Las propiedades de la arquitectura son
extremadamente importantes y forman la base del
método.

Diseño creativo

Las actividades creativas de un desarrollo, consisten en la transformación de un conjunto


de requerimientos y nociones vagas, en un plan estructurado de construcción y un plan de acción
para su implementación.

El diseño creativo tomando como referencia una base arquitectónica es seguir paso a
paso los métodos y procesos con la asistencia de herramientas, para convertir los requerimientos
dentro de una arquitectura viable para la construcción de un proyecto incluyendo la creación de
prototipos.

El ciclo de vida del sistema

Un aspecto importantes durante el desarrollo del sistema, es considerar explícitamente el


proceso de cambio.

3.1.2 Desarrollo del sistema

Todos los sistemas cambian durante su ciclo de vida. Hoy en día el desarrollo de los
nuevos métodos 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 incorporándose en nuevas versiones.

Paola Romero Guillén 37


Instituto Tecnológico Análisis y Diseño Orientado
de la Laguna a Objetos

Versión 1
Versión 1

Versión 2

Primer desarrollo del ciclo Versión n


Figura # 2

La primera versión de un sistema representa una pequeña parte de una composición


durante el ciclo de vida del sistema.

REQUERIMIENTO SISTEMA
ANALISIS CONSTRUCCION PRUEBA

Figura # 3

Las actividades de un ciclo de vida son las mismas tanto para desarrollar una nueva
versión 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 análisis

Especifica el comportamiento funcional del sistema bajo prácticamente circunstancias


ideales y sin hacer alusión a un ambiente particular de implementación.

Construcción

L a primera actividad en la construcción consiste en la implementación de los detalles que


conciernen a la arquitectura y construcción del plan, que es ir de una mayor abstracción a
concretizar mas el plan.

Diseño

Formaliza el modelo de análisis en términos del ambiente de implementación y


especifica la identidad de los bloques de construcción

Prueba del sistema

Consiste en la verificación del trabajo de cada uno de los paquetes de servicio definidos en
el modelo de análisis Esta fase tiene lugar en varios niveles, desde funciones específicas, hasta el
sistema completo.

Desarrollo incremental

El desarrollo del sistema es usualmente un proceso el cual toma varios años para su
terminación. La especificación es seguida por el análisis, la construcción y prueba del sistema
completo. Este método puede trabajar si todos los requerimientos del sistema son conocidos del
conjunto de salida.

Paola Romero Guillén 38


Instituto Tecnológico Análisis y Diseño Orientado
de la Laguna a Objetos

En la mayoría de los casos, conviene mejor desarrollar el sistema etapa por etapa,
empezando con unas cuantas funciones principales, como se va aclarando la comprensión del
sistema en cuanto a su funcionalidad se van agregando nuevas funciones, de esta forma el
sistema va creciendo.

Sistema de desarrollo y metodología

Cuando se desarrolla un sistema grande es importante conocer como cada uno de los
pasos del método interactúan y como ellos compiten dentro del desarrollo del proceso. Se hace
hincapié en la discusión entre el proceso de desarrollo y las ideas básicas que hay detrás del
método lo que determina la selección de una arquitectura de un universo de arquitecturas.
Finalmente se agregan pocos comentarios acerca de cómo las herramientas CASE deberían ser
diseñadas para soportar el desarrollo, iniciando desde las propiedades fundamentales de la
arquitectura, métodos y procesos.

3.1.3 Modelos

El sistema de desarrollo es una tarea compleja. Algunos aspectos diferentes han sido
tomados en consideración. Se trabaja con 5 modelos:

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


o El modelo de análisis: El objetivo es dar al sistema una estructura de objetos robusta y
flexible a los cambios.
o Modelo de diseño: Tiene como objetivo adoptar y refinar la estructura de objetos en el
ambiente actual de implementación.
o El modelo de implementación: Tiene como objetivo implementar el sistema
o El modelo de prueba: Su objetivo es verificar el sistema.

Análisis Construcción Prueba

Modelo de Requerimientos Modelo de Diseño


Modelo de Análisis Modelo de Implementación Modelo de Prueba

Figura # 4

La idea básica de estos modelos es capturar el concepto inicial de todos los requerimientos
funcionales y usar sus perspectivas. Es por eso que la relación entre ellos es importante. Para
hacer posible el mantenimiento del sistema es también necesario que los modelos sean tangibles.

Procesos y modelos

Durante el desarrollo de un sistema se crea un modelo del sistema. El diseño de este


modelo trabaja sobre un proceso de descripción con el cual será desarrollado el sistema. Esos
modelos son expresados en un cierto espacio de información. Cada proceso toma uno o varios
modelos y transforma esto dentro de otros modelos.

Paola Romero Guillén 39


Instituto Tecnológico Análisis y Diseño Orientado
de la Laguna a Objetos

Entrada Salida
Proceso

Modelo B
Modelo A

Figura # 5 Los procesos transforman un modelo en otro


modelo

El modelo final será una descripción del sistema, completo y probado. Esta descripción
normalmente consiste del código fuente y su documentación.

Proceso de análisis

El proceso de análisis produce dos modelos, a partir de la especificación 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 análisis,


llamado modelo de análisis. El modelo de análisis es la base de la estructura del sistema. En este
modelo se especifican todos los objetos lógicos que serán incluidos en el sistema y como están
relacionados y agrupados.

Modelo de
Requerimientos
diseño implementación

Modelo de Análisis

Modelo de
Modelo de Diseño Implementación

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 Un modelo de caso de uso


o Descripción de la interfase
o Un modelo en el dominio del problema

Paola Romero Guillén 40


Instituto Tecnológico Análisis y Diseño Orientado
de la Laguna 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é debería ser hecho por el sistema (caso de uso).

Los actores representan quienes interactúan con el sistema. Representan todas las
necesidades de cambio de información con el sistema. Dado que el actor representa la parte
exterior del sistema no se describirán 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 diseño 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
característica importante del modelo de requerimientos es que podemos discutir esto con el usuario
y encontrar sus requerimientos y preferencias. Este modelo es fácil 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 formulación de otros modelos. Esto es desarrollado


en cooperación con el modelo de dominio de objeto.

Paola Romero Guillén 41


Instituto Tecnológico Análisis y Diseño Orientado
de la Laguna a Objetos

Modelo de casos de uso

Expresado en términos de realizado por probado en

Estructurado por mplementado por

SI
Clases... SI
SI

Modelo en el Modelo de análisis Modelo de diseño Modelo de Modelo de prueba


Dominio de objetos implementación

Figura # 9

Modelo de análisis

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 información para este sistema se enfoca en la captura de:

• Información: Especifica la información 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.

• Presentación: Detalla la presentación del sistema al mundo exterior.

Comportamiento

Información
Presentación

Dimensiones del modelo de análisis

Figura # 10

Paola Romero Guillén 42


Instituto Tecnológico Análisis y Diseño Orientado
de la Laguna a Objetos

Existen varios tipos de objetos usados para la estructura del sistema en el modelo de análisis

Objeto entidad Objeto de interfase Objeto de


control
Figura # 11

Cada objeto al menos captura dos de las tres dimensiones del modelo de análisis, sin
embargo cada uno de ellos tiene cierta inclinación hacia una de las dimensiones.

comportamiento

información
presentación

Figura # 12

El modelo de requerimientos es estructurado en el modelo de análisis

El modelo de análisis 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 Guillén 43


Instituto Tecnológico Análisis y Diseño Orientado
de la Laguna a Objetos

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

La partición se realiza básicamente 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 información, la cual de
manera natural no encaja en ningún 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 diseño de objetos

El proceso de construcción edifica el sistema usando tanto el modelo de análisis y el


modelo de requerimientos. Primero se crea el modelo de diseño que es un refinamiento y
formalización del modelo de análisis. Al inicio del trabajo cuando se desarrolla el modelo de diseño
es para adaptarlo a la implementación del ambiente actual.

Comportamiento

Ambiente de
Implementación Información

Presentación

Figura # 14

Una diferencia entre el modelo de análisis y el modelo de diseño es que el modelo de


análisis debe ser visto como un modelo conceptual o lógico del sistema, y el modelo de diseño
contiene el código, por lo cual el modelo de diseño deberá ser una representación de la manera
como el código fuente es estructurado, manejado y escrito.

Modelo de análisis Modelo de diseño

Refinamiento.
Empiezan a aparecer
consecuencias del ambiente
de implementación

Figura # 15 Transición del modelo de análisis al modelo de diseño

Paola Romero Guillén 44


Instituto Tecnológico Análisis y Diseño Orientado
de la Laguna a Objetos

3.1.4 Bloques

El concepto de bloque describe la intención de cómo el código debe ser producido. Los
bloques son el diseño de objetos y ellos se dibujan como rectángulos. Un bloque normalmente
apunta para implementar un objeto de la etapa de análisis, aquí puede ser posible usar los
diferentes tipos de bloques:

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

Figura # 16 Bloque

Diagrama de interacción

Para describir una secuencia de estímulos se usan los diagramas de interacción. Se puede
describir como varios bloques se comunican mediante envió de estímulos de uno a otro. Como
una base para esa interacción 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 Genérico

La Figura # 17 muestra la representación de un diagrama de secuencia, donde el tiempo


avanza de arriba hacia abajo y la flechas indican comunicación entre objetos. En la Figura # 18 se
muestra un ejemplo práctico usando el problema del Pacman.

Paola Romero Guillén 45


Instituto Tecnológico Análisis y Diseño Orientado
de la Laguna a Objetos

: Pacman : Fantasma
: Jugador

Camina_

Camina_

Come_Fantasma(Valor)

Come_Fantasma(Pacman)

Figura # 18 Diagrama de Secuencia del ejemplo

Trabajando con el modelo de diseño

Durante la construcción del proyecto, se procede a la edificación del modelo de diseño.


Para cada objeto en el modelo de análisis, se asigna un bloque en el modelo de diseño. Cuando se
tiene que crear la estructura del bloque, se dibuja un diagrama de interacción para mostrar como
los bloques se comunican. Normalmente se dibuja un diagrama de interacción para cada caso de
uso.

El comportamiento del objeto.

Como un nivel intermedio, considerando la parte interna del objeto, antes de iniciar la
implementación se puede usar una gráfica de transición de estado, su propósito es proporcionar
una descripción simplificada, que mejore la comprensión del bloque, sin tener que bajar a nivel de
código fuente, proporcionando una descripción que es menos dependiente del lenguaje de
programación seleccionado. En este tipo de gráficas se describe cual estímulo puede ser recibido y
que va a suceder cuando el estímulo es recibido. Esta gráfica usa los símbolos mostrados en la
Figura # 19.

Paola Romero Guillén 46


Instituto Tecnológico Análisis y Diseño Orientado
de la Laguna a Objetos

Inicio Regreso de mensaje

Estado Envía señal

Envía mensaje Recibe señal

Recibe mensaje Realiza un trabajo

Figura # 19, Notación para las gráficas de transición de estados.

El modelo de Implementación

La implementación del modelo consiste de la notación del código. La información de


espacio es la opción del lenguaje de programación que se usa. no necesariamente se requiere de
un lenguaje de programación orientada a objeto, sin embargo, si se recomienda el uso de un
lenguaje de programación orientada a objeto, desde la concepción inicial hasta la construcción.

La base para la implementación es el modelo de diseño. 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 Guillén 47

También podría gustarte