Download - Capitulo III OBJECT DOMAIN

Transcript
Page 1: Capitulo III OBJECT DOMAIN

Ingeniería De Software I VI Ciclo

3.1 INTRODUCCIÓN OBJECT DOMAIN

Es una herramienta de modelamiento visual para el análisis y diseño de sistemas basado en objetos. Esta herramienta fue creada por la empresa “Object Domain Systems”, fundada en 1996, con más de 1000 compañías a quienes ha proveído herramientas y servicios para el desarrollo de software y modelado en UML.

Object domain es usado para modelar sistemas antes de llevar a cabo los trabajos de construcción. Esta secuencia de desarrollo es importante para asegurar la consistencia arquitectónica del sistema. Usando los modelos de Object domain se pueden identificar fallas durante una etapa temprana de desarrollo del proyecto y así evitar aumento en los tiempos y costos del proyecto de software.

Un plano es una buena analogía para un modelo de Object Domain. Así como una casa tiene un juego de planos que permitieron su adecuada construcción desde varias perspectivas (cañerías, electricidad, teléfono, etc.), un modelo en Object domain contiene varios diagramas que permiten ver un sistema desde varias perspectivas diferentes (cliente, diseñador, gerente de proyecto, verificador, usuario, etc.), teniendo un plano por adelantado se alivian problemas de consistencia, eficiencia, costos y tiempo.

Object Domain ayudara a los diseñadores a generar el código estructural del sistema, y puede hacerlo para varios lenguajes de programación, como: C++, CORBA, Java, Python, XML. También puede ejecutar ingeniería inversa al código y crear un modelo basado en un sistema existente, así, cuando ocurre un cambio en el modelo, puede modificar el modelo e incorporar los cambios. De manera semejante, cuando un cambio ocurre en el modelo, usted puede incorporar ese cambio automáticamente en el código (ingeniería directa). Estas características ayudan a conservar el modelo y a sincronizar el código, a la vez que se reducen los riesgos de tener un modelo desactualizado.

3.2 VERSIONES DE OBJECT DOMAIN

La primera versión de Object Domain fue la 1.02, luego esta ultima que es “Object Domain R3 3.00.292”, pero para llegar a esta versión final se han hecho una serie de modificaciones. Ha habido un rápido progreso y cambios en las versiones:

Capítulo III Object Domain

28

Page 2: Capitulo III OBJECT DOMAIN

Ingeniería De Software I VI Ciclo

Capítulo III Object Domain

29

Page 3: Capitulo III OBJECT DOMAIN

Ingeniería De Software I VI Ciclo

3.2.1 MODIFICACIONES DE OBJECT DOMAIN R3

(ESTRUCTURA 207)

Mejoras de instalación interplataforma.

Capítulo III Object Domain

30

Page 4: Capitulo III OBJECT DOMAIN

Ingeniería De Software I VI Ciclo

Soporte para Macintosh OS X. Se arregló el problema de exportación para XML. Se puede añadir documentación en la exportación

para XML. Jython integrado 2.0 (Python) que arregla el problema

de ingeniería reversa del Python.

3.2.2 OBJECT DOMAIN R3 (CONSTITUCIÓN 274)

MODIFICACIONES.

El soporte añadido para JDK 1.4. (Equipo de desarrollo en idioma Java)

El soporte añadido de exportación de diagramas como formato SVG (para XML).

Jython integrado 2.1 (la Pitón). Soporte mejorado para XML. Mejoras para la parte de ingeniería inversa. Al momento de importar y exportar modelos de

Rose:

Problema al importar valores cuyas etiquetas (taggedValue) sea de tipo texto (text).

No se puede manipular las especificaciones de clases hechas en Rose.

3.2.3 OBJECT DOMAIN R3 (CONSTITUCIÓN 292)

MODIFICACIONES. VERSIÓN ACTUAL

De lo que se ocupó fue en asuntos de instalación en Linux y sistemas de Macintosh

3.2.4 CARACTERÍSTICAS GENERALES DE OBJECT DOMAIN V

3.00.292

Las características generales que presenta este producto son:

Soporta todos los diagramas de UML: casos de uso, objetos, clases, componentes, despliegue, estados, actividad, secuencia, colaboración.

Completa funcionalidad para todos estos diagramas.

Soporta definición de elementos, atributos, relaciones para metamodelos (diagrama de clases).

Esta en vías de ejecución el soporte para UML 2, no cuenta con notaciones para los diagramas de negocio.

Capítulo III Object Domain

31

Page 5: Capitulo III OBJECT DOMAIN

Ingeniería De Software I VI Ciclo

Se puede desarrollar de modo multiusuario via: Object Domain's Shared PackageTM mechanis.

Puede anexar otros modelos dentro del modelo actual por ejemplo un modelo hecho en Rational Rose.

Extensivo control de presentación de aspectos usando ObjectDomain "styles", para el manejo del color, tipo de letra, y otras sentencias visuales.

Un modelo se puede observar desde varias perspectivas, para mejor descripción de la funcionalidad del sistema, para que así los diseñadores puedan usar los modelos como si fueran los planos de un sistema a ser construido.

Posee una vista en miniatura del diagrama total que se esta utilizando, para dar mayor facilidad de ubicación de elementos de los diagramas demasiados amplios.

Dentro de la aplicación se puede generar varias vistas que se encuentran dentro de pestañas como el “log” y demás pestañas q se van creando de acuerdo a los diagramas que se quieran utilizar.

Tiene plataforma independendiente de ejecución. Funciona en Windows, Linux, Unix, Macintosh, o cualquier otro sistema que tenga Java.

Ingeniería directa e inversa para Java, C++, Python, IDL

Puede generar código de modelos ya existentes. Soporta ingeniería inversa para todos los archivos

Java (.java, .class, .jar, .zip) Importa y exporta XML. Puede exportar un diagrama como tipo SVG, WMF,

GIF, JPEG, PNG, PPM. Importa y exporta modelos de Rational Rose. Exporta modelos como documentación HTML. Soporta la ultima versión de Java 2 eviroment

3.3 EDICIONES DE OBJECT DOMAIN

Actualmente, hay tres ediciones diferentes de Object Domain disponibles en el mercado y son: Object Domain Profesional, Object Domain Standard, Object Domain Evaluation. A continuación se muestra un cuadro comparativo de estas tres ediciones

Características del producto Versiones

Capítulo III Object Domain

32

Page 6: Capitulo III OBJECT DOMAIN

Ingeniería De Software I VI Ciclo

Standar

d

Profesio

nal

Evaluati

on

Full soporte para los diagramas

de UML:

Use Case, Class, Object,

Component, Deployment

Soporte para vistas situacionales

de diagramas:

State, Activity, Sequence,

Collaboration

Full soporte para la edición de los

diagramas:

State, Activity, Sequence,

Collaboration

Se tiene un control de integración

de la versión

Desarrollo multiusuario via

shared packagestm

Genera documentación en HTML

Solo se puede crear hasta 30

clases

3.4 PARTES PRINCIPALES DE LA INTERFAZ DE OBJECT DOMAIN

Capítulo III Object Domain

33

Page 7: Capitulo III OBJECT DOMAIN

Ingeniería De Software I VI Ciclo

3.4.1EL NAVEGADOR

3.4.2LA VENTANA DE DOCUMENTACIÓN

Capítulo III Object Domain

34

Barra de Herramientas Estandar

El NavegadorVentana de Diagrama

Ventana de log.Ventana de Zoom

Barra de Herramientas Toolbox

Page 8: Capitulo III OBJECT DOMAIN

Ingeniería De Software I VI Ciclo

3.4.3LAS BARRAS DE HERRAMIENTAS

Proporcionan un acceso rápido a las órdenes. Hay dos barras de herramientas: La barra de herramientas estándar y la barra de herramientas de diagrama llamada toolbox. La barra de herramientas estándar contiene opciones que se pueden usar en cualquier vista, mientras que el toolbox cambia para cada tipo de diagrama de UML. A continuación se muestran las opciones que tiene la barra de herramientas estándar

ICONO BOTON FUNCION

Create new

model

Crear un modelo Nuevo

(.odm)

Open existing

model

Abrir un modelo existente

(.odm)

Save Model Grabar Modelo (.odm)

Undo Deshacer

Capítulo III Object Domain

35

Documentación

Page 9: Capitulo III OBJECT DOMAIN

Ingeniería De Software I VI Ciclo

Redo Rehacer

Cut Cortar

Copy Copiar

Paste Pegar

Delete Borrar

Print DiagramsImprimir uno o mas

diagramas

Zoom in Incrementa la vista

Zoom out Decrementa la vista

Zoom to fit Ver de todo el diagrama

Use Case

DiagramDiagrama de Caso de Uso

Class Diagram Diagrama de Clases

Object Diagram Diagrama de Objetos

State Diagram Diagrama de Estados

Activity Diagram Diagrama de Actividades

Sequence

DiagramDiagrama de Secuencia

Collaboration

DiagramDiagrama de Colaboración

Component

DiagramDiagrama de Componentes

Deployment

Diagram Diagrama de Despliegue

Capítulo III Object Domain

36

Page 10: Capitulo III OBJECT DOMAIN

Ingeniería De Software I VI Ciclo

3.4.4LA VENTANA LOG

Cuando se trabaje con un modelo de Object Domain, se mandara cierta información a la ventana de diagrama, opción Log. Por ejemplo cuando generamos código, los errores serán enviados a esta ventana.

3.5 LAS CUATRO VISTAS DE UN MODELO

Existen cuatro vistas de modelos hecho por Object Domain, la vista de Caso de Uso (Use Case), la vista Lógica (Logical), la vista de Componentes (Component) y la vista de Despliegue (Deployment). Cada una de ellas tiene Propósitos diferentes.

3.5.1LA VISTA DE CASO DE USO

Esta vista incluye a todos los actores, casos de uso y los diagramas de caso de uso que intervienen en el sistema. Tan bien se puede incluir algunos diagramas de secuencia y colaboración. Es importante mencionar, que la vista caso de uso es una aplicación independiente para observar el sistema.

La vista caso de uso incluue:

Diagrama de Actividades (Activity Diagrams).- Se usan para describir los flujos de trabajo dentro de un caso de uso del negocio o un flujo de eventos a través de un caso de uso.

Actores (Actor).- Son entidades externas que actúan recíprocamente con el sistema a ser construido.

Casos de Uso (Uses case).- Son fragmentos de alto nivel que describen y proporcionan la funcionalidad del sistema.

Documentación del Caso de Uso.- Detalla el flujo a través del caso de uso, incluyendo además el manejo de errores. Representa un archivo externo el cual será enlazado al modelo.

Diagramas de caso de Uso.- Muestran a los actores , los casos de uso y las interacciones que existen entre ellos.

Diagrama de Interacción.- Despliega los objetos o clases involucradas en un flujo a través de un caso de

Capítulo III Object Domain

37

Page 11: Capitulo III OBJECT DOMAIN

Ingeniería De Software I VI Ciclo

uso, de allí que podemos tener mas de un diagrama de interacción para cada caso de uso. Los diagramas de interacción pueden ser creadas desde la vista de caso de uso ó de la vista lógica.

Paquetes.- Son grupos de caso de usos, actores u otros elementos modelados. Un paquete es un mecanismo de UML que ayuda a agrupar artículos relacionados. En la mayoría de los casos, el empaquetamiento de actores o casos de uso no es muy esencial para el modelo.

3.5.2LA VISTA LÓGICA

La vista lógica mostrada en la figura siguientes enfoca en como se implementa la conducta del sistema en los casos de uso. Por lo tanto la vista lógica nos brinda una figura detallada de las partes del sistema, y escribe además como estas partes interactúan entre ellas. La vista lógica incluye entre otras cosas, las clases que se necesitaran los diagramas de clase y los diagramas de estado.

La Vista logia incluye:

Capítulo III Object Domain

Vista Lógica

38

Page 12: Capitulo III OBJECT DOMAIN

Ingeniería De Software I VI Ciclo

1. Clases

2. Diagrama de Clases

3. Diagrama Colaboración

4. Diagrama de Secuencia

5. Paquetes

3.5.3LA VISTA DE COMPONENTES

La vista de componentes contiene Información sobre las bibliotecas de código, archivos ejecutables, bibliotecas run-time y otros componentes del modelo. Es importante recordar que un componente es un modelo físico de código.

3.5.4LA VISTA DE DESPLIEGUE

Capítulo III Object Domain

Vista de Componentes

39

Page 13: Capitulo III OBJECT DOMAIN

Ingeniería De Software I VI Ciclo

Esta vista se preocupa por el despliegue físico del sistema que puede diferir de la arquitectura física de la arquitectura lógica del sistema.

Por ejemplo el sistema puede tener una arquitectura lógica de tres-capas en otros términos, la interfaz puede estar separada de la lógica del negocio que a su vez esta separado de la lógica de datos. Sin embargo el despliegue podría ser implementado a dos-capas, la interfaz podría ser colocada en una maquina de la lógica del negocio y la de datos en otra.

Haciendo uso de la vista de despliegue se puede manejar otros problemas, como la falta de tolerancia, el ancho de banda de la red, recuperación de desastres (Perdida de datos), y tiempos de respuesta.

3.6 BENEFICIOS DE LA VERSIÓN OBJECT DOMAIN R3

3.6.1DA AMPLITUD AL SOPORTE UML

El Lenguaje Modelador Unificado (UML) es la industria y OMG el estándar para el modelado orientado a objetos. Object Domain fue diseñado desde el principio como un herramienta de modelamiento UML. Ha sido vital desde

Capítulo III Object Domain

Vista deDespliegue

40

Page 14: Capitulo III OBJECT DOMAIN

Ingeniería De Software I VI Ciclo

el comienzo que Object Domain esté sólidamente basado en el último estándar UML, extendiéndose sólo cuando sea apropiado, para maximizar el valor de la herramienta.

Object Domain provee soporte para todos los diagramas UML, así como también UML definió elementos, atributos, y relaciones. El desarrollo para soporte de versión UML 2.0 está actualmente en camino.

3.6.2ALTAMENTE USABLE E INTUITIVO

Object Domain ofrece una de las interfaces más intuitivas de cualquier aplicación en el mercado, los diagramas hacen la aplicación intuitiva e invitadora. ObjectDomain ofrece una herramienta poderosa y rica en rasgo de modelado sin abrumar o intimidando al usuario.

3.6.3DIMENSIONABLE

Escalas de ObjectDomain con la experiencia del usuario. Un cometido en Object Domain de diseño fue no sólo hacer la aplicación poderosa y el rasgo enriquecedor para el desarrollador experimentado, pero también ponerlo al alcance del usuario incipiente u ocasional.

Escalas de ObjectDomain con el número de desarrolladores y la distribución geográfica de equipos de desarrollo. La colaboración poderosa a través de paquetes compartidos y la versión libre de irregularidades controlan la integración y da a ObjectDomain permiso de escala de equipos de departamentos pequeños y de desarrollo corporativo, esfuerzos anchos, y globales de desarrollo.

3.6.4EL COSTO EFECTIVO

ObjectDomain es una solución completa, eficiente en base a costos para modelamiento de UML. Le desafiamos a usted a que encuentre un producto que encuentra sus necesidades en un mejor punto de precio.

3.6.5ARQUITECTURA ABIERTA Y EXTENDIBLE

Para que un producto permanezca útil para una corporación debe estar abierto y con holgura extendido. ObjectDomain es una arquitectura abierta y deja la vía de entrada llena y la manipulación del modelo UML, así como también el ambiente de aplicación. Adicionalmente, un lenguaje poderoso y orientado a objetos

3.6.6LA PLATAFORMA INDEPENDIENTECapítulo III Object Domain

41

Page 15: Capitulo III OBJECT DOMAIN

Ingeniería De Software I VI Ciclo

Implementado como aplicación 100 % de Java, ObjectDomain se ejecuta virtualmente sobre cualquier plataforma. Estos son cambios pertinentes particularmente recientes dados en la selección de la plataforma y el uso aumentado de Linux en computadores de escritorio corporativos y en el desarrollo informático.

3.7 COMPARACIÓN ENTRE OBJECT DOMAIN Y RATIONAL ROSE

Hemos hecho una descripción de lo que hace Object Domain, pero existen muchas más en el mercado, por tal motivo a continuación hemos hecho un cuadro comparativo de dos de estas herramientas: Object Domain y Rational Rose.

OBJECT DOMAIN RATIONAL ROSE

Esta en vías de ejecución el soporte para UML 2, no cuenta con notaciones para los diagramas de negocio.

Interfaz poco amigable.

Permite exportar e importar modelos hechos en Rational Rose.

Posee una vista en miniatura del diagrama total que se esta utilizando, para dar mayor facilidad de ubicación de elementos de los diagramas demasiados amplios.

Permite exportar diagramas para SVG, WMF, GIF, JPEG, PNG, PPM.

Se puede crear cualquier diagrama en cualquier vista del modelo.

No existe restricciones para crear diagramas en las distintas vistas del modelo.

Soporta notaciones para UML2, cuenta con notaciones para los diagramas de negocio.

Interfaz más amigable.

No permite exportar e importar modelos hechos en Object Domain

No posee una vista en miniatura del diagrama total que se esta utilizando, no nos da mucha facilidad en los diagramas demasiados amplios.

No nos permite exportar diagramas para SVG, WMF, GIF, JPEG, PNG, PPM.

Se Puede integrar con otras herramientas de desarrollo de software hechas por IBM como RequisitePro.

Existe restricciones para crear diagramas en las distintas vistas del modelo.

Existe determinados tipos de diagramas para cada vista del modelo.

Capítulo III Object Domain

42