Está en la página 1de 50

Tutorial (Español)

Tutorial sobre UWE

Esta es una introducción práctica a UWE v1.9.

Todos los diagramas fueron realizados con MagicDraw y se recomienda la instalación del


plugin MagicUWE, porque ello simplifica el modelado con UWE en las diferentes etapas.
Véase MagicUWE Reference para información de como usar el plugin.

Que es UWE?

UWE es un método de ingeniería del software para el desarrollo de aplicaciones web basado
en UML. Cualquier tipo de diagrama UML puede ser usado, porque UWE es una extensión de
UML! 
(más información sobre UWE)
Queremos presentar UWE y sus modelos típicos con un ejemplo de una agenda de
direcciones para la web. No lo leas aún; queremos desarrollar la aplicación paso a paso en
este tutorial!

Preparación para el ejemplo de la agenda de direcciones

Crea un nuevo projecto en MagicDraw usando los patrones de UWE.


En nuestra aplicación web simplicada de una libreta de direcciones el usuario debe poder
buscar direcciones, agregar nuevos contactos, borrar contactos existentes y actualizarlos.
Cambios y agregados deben ser archivados.
Tutorial - RequirementsModel (Spanish)
In UWE el modelado de requisitos consiste de dos partes:

 Casos de uso de la aplicación y sus relaciones


 Actividades describiendo los casos de uso en detalle

Casos de Uso

Nuestro ejemplo es simple, por ello no es absolutamente necesario comenzar modelando los
casos de uso, pero sirve para ilustrar las funcionalidades de nuestra aplicación: el usuario
debe poder realizar búsquedas en la libreta de direcciones y borrar contactos.
Adicionalmente, contactos pueden ser creados y actualizados, cambios deben ser archivados
o pueden ser cancelados. En este ejemplo con fines de claridad, nos limitamos a las
funcionalidades descriptas, pero aconsejamos modelar tantas como se deseen.

En UWE se distinguen casos de uso estereotipados con «browsing» y con «processing» para
ilustrar si los datos persistentes de la aplicación son modificados o no. "SearchContact" por
ejemplo, modela la búsqueda de contactos y por ello lleva el esterotipo «browsing» pues los
datos son solamente leidos y presentados al usuario. Los otros casos de uso por el contrario
modelan cambios, lo que se especifica con el estereotipo «processing».

stereotype-names and their icons


browsing processing
webUseCase

Actividades

Como con casos de uso solamente es posible capturar poca información, cada caso de uso
puede ser descripto más detalladamente mediante un proceso. Es decir, las acciones que son
parte de un caso de uso asi como los datos presentados al usuario y aquellos requeridos
como entrada de datos pueden ser modelados con precisión como actividades.
nombres de estereotipos y los iconos
correspondientes
userAction systemAction
displayAction navigationAction
displayPin interactionPin

Los dos esterotipos «userAction» y «systemAction» pueden ser usados análogamente al flujo
de procesos. El estereotipo «userAction» es usado para indicar interacciones de usuario en la
página web initiando un proceso o respondiendo to un explícito requisito de información. Por
lo contrario, «systemAction» describe acciones que son ejecutados por el sistema. Ambos
tipos de acciones pueden ser insertados usando la toolbar.
Detalles de las estructuras de datos usadas pueden ser representadas por objetos de nodos
y pins de acciones. El objeto de nodo es usado para modelar clases de contenido y los pines
sus atributos.

Durante ingeniería de requisitos es usual determinar que datos son representados donde y
cuando. Para modelar grupos de presentación en UWE son usados el estereotipo
«displayAction», mientras que los dos  pines de acción estereotipados «interaction Pin» y
«display Pin» son usados para modelar la entrada y la salida de datos.

Finalmente el estereotipo «navigationAction», puede ser usado para modelar opciones de


navegación y los elementos asociados de presentación.

Como estos estereotipos se utilizan para indicar elementos de presentación durante la etapa
de ingeniería de requisitos, aspectos que caracterizan a RIAs pueden ser especificadas
mediante valores etiquetados para estos mismos elementos./p>

Para ejemplificar modelamos dos actividades. Primero, una actividad para el caso de uso
"CreateContact". El mismo muestra un formulario que permite al usuario entrar su nombre,
una dirección de correo, dos direcciones y números de teléfono y el descargar un archivo del
tipo imagen. La dirección de correo debe ser validada durante la entrada de datos y el
nombre de la ciudad completado automáticamente en función del código postal. El formulario
completado por el usuario es finalmente salvado en la base de datos de la aplicación.
Un segundo caso de uso que refinamos es "SearchContacts". Para este caso de uso
solamente elementos de presentación son de interés, nos limitamos en el diagrama a ellos.
Inicialmente, la presentación consiste de un simple formulario usado para entrar palabras
claves y un butón para el display de la lista de contactos.

La parte principal de la presentación sin embargo, consite en la lista de contactos, que es


modelada con una acción "Contacts". Los elementos de presentación pueden ser agrupados
adicionalmente creando acciones con una acción de jerarquía mayor, como puede observarse
para las direcciones y los númerod de teléfono.

Las dos acciones del estereotipo «navigationAction» modelan transiciones a otros casos de
uso. Esto es modelado la actividad del caso de uso destino como comportamiento de la
acción.
Transformaciones

Una vez que los requisitos han sido modelados, hay dos maneras de simplificar los pasos
siguientes en el modelado de contenido, navegación, presentación y procesos:

 En vez de crear un modelo y el diagrama correspondiente manualmente, el mismo


puede ser generado con una transformación de los datos del modelo de requisitos.
 Adicionalmente, un modelo previamente generado puiede ser extendido por nuevas
clases transformando desde el modelo de requisitos o agregando a las clases existentes
nuevos datos que son dependientes del modelo.
Tutorial - Content Model (Español)
Crea un nuevo diagrama de contenido. Este es un diagrama UML normal de clases, por ello
debemos pensar en las clases que son necesarias para nuestro ejemplo. Primero queremos
disponer de una clase agenda ("AddressBook") conteniendo un conjunto de contactos. Cada
contacto debe contener un nombre, y puede contener una dirección de correo, dos números
de teléfono y dos direcciones postales. El nombre y la dirección de correo son Strings, el
teléfono y la dirección postal son clases que representan más información, como se ilustra en
la siguiente figura: 

Por qué necesitamos el atributo "introducción" en la clase AddressBook? - Ello es porque


queremos almacenar allí el texto introductorio de la página principal de la aplicación web.
Tutorial - NavigationModel (Español)
En un sistema para la web es útil saber como están enlazadas las páginas. Ello significa que
necesitamos un diagrama conteniendo nodos (nodes) y enlaces (links).

Pero que es un nodo? Nodos son unidades de navegación y están conectados por medio de
enlaces. Nodos pueden ser presentados en diferentes páginas o en una misma página.

UWE provee diferentes estereotipos, los que presentaremos mediante nuestro ejemplo. La
forma más simple de obtener un Diagrama de Navegación básico es utilzando
la Transformación Content toNavigation. En este caso obtenemos para nuestro ejemplo un
diagrama que contiene más nodos de los necesarios. Para los nodos y enlaces son usados los
estereotipos «navigationClass» and «navigationLink»:

Queremos realmente modelar el enlace desde el contacto a la dirección o el teléfono? - No,


porque no son relevantes para la navegación. Pues borremos ambos del árbol de contenido
del modelo.
AddressBook será nuestra página principal del sitio web. Lo cuál se indica con el taggedvalue
{isHome}.
Es pensable un sitio web para una agenda de direcciones con la información de todos los
contactos en la misma página web? - No es eso lo que queremos.

El objetivo es una aplicación en la cuál se puede acceder a las operaciones de


nuestro diagrama de casos de uso. Por este motivo necesitamos un sitio que provee
conexiones a diferentes nodos:

1. ContactList - cada contacto debe ser alcanzable usando un enlace desde la página
principal del sitio web
2. (contact)Search - buscar un contacto
3. ContactCreation - crear un nuevo contacto y visualizarlo
En UWE, puede usarse un «menu», para navegar a diferentes clases. Insertar uno y
asignarle el nombre "MainMenu":

1. Podemos insertar la lista de contactos (ContactList) casi del mismo modo. El estereotipo
«index» es usado para listar una cantidad de objetos del mismo tipo.
Agrega las otras dos clases usando el panel de MagicUWE:
2. La clase para la búsqueda debe tener un estereotipo «query». Una búsqueda implica
ejecución de código, por ello conectamos esta clase con una asociación «processLink» .
3. ContactCreation es también un proceso, pero no uno predefinido, por ello usamos el
estereotipo «processClass» (modelaremos la acción asociada más adelante).

Si un nuevo contacto es creado, es útil visualizarlo luego, y en el caso de una búsqueda, se


espera la visualización de un lista (ContactList) con los resultados. Usamos un estereotipo
«processLink» para estas asociaciones salientes y dirigidas para prohibir la navegación hacia
atrás como en el caso de ContactCreation. Esto evita la creación por error de duplicados.
nombres de estereotipos y sus iconos
 clase de navegación  menú
 índice  pregunta
 visita guiada  clase de proceso
 nodo externo
(En este tutorial solamente algunos aspectos de los estereotipos de UWE son presentados.
Por favor véase User Guide and Reference para el uso general de todos los estereotipos de
UWE)
Para completar nuestro Mdelo de Navegación (NavigationModel), tenemos que agregar la
funcionalidad faltante de borrar y actualizar contactos (ContactDeletion y ContactUpdate)
(nuevamente véase diagrama de casos de uso). Estas dos clases son ambas accedidas desde
el contacto concreto, por ello necesitamos nuevamente un menú ( y lo nombramos
ContactMenu indicando que está ubicado en la página de cada contacto):
Tutorial - PresentationModel (Español)
El Modelo de Navegación no indica cuáles son las clases de navegación y de proceso que
pertenecen a una página web. Podemos usar un Diagrama de Presentación con el fin de
proveer esta información!
Agrega una «presentationPage» class y agrega las propiedades con los estereotipos de
UWE en ellos para expresar, que el elemento está ubicado en una página web. Las
propiedades pueden anidarse, por ejemplo cada contacto («presentationGroup»-property)
cubre diferentes textos y botones. Ello significa, que para cada contacto la correspondiente
dirección de correo y los correspondientes campos de teléfonos y direcciones serán
visualizados en la página.
Recordemos el atributo "introduction" en nuestro Diagrama de contenido y agreguemos la
página principal del sitio web AddressBook conteniendo el texto introductorio (estereotipo
«text»). Entonces son necesarios un formulario con un campo para entrada de datos
(textInput) para el criterio de búsqueda criterion y un botón para lanzar la búsqueda. Una
cantidad arbitraria de contactos pueden ser presentados, lo que es modelado con la
multiplicidad "*".
nombres de estereotipos y sus iconos
 grupo de presentación  página de presentación
 texto  entrada de texto
 ancla  fileUpload
 botón  imagen
 formulario  componente de cliente
 alternativas de presentación  selección
En los siguientes diagramas, los estereotipos son solamente representados por sus iconos.
En MagicDraw se puede configurar la visualización de ambos: nombres e iconos de los
estereotipos.
Mensaje, confirmación y error de validación (Message, Confirmation y ValidationError) son
modelados aquí, tan sólo para mayor claridad aunque en la visión general de
nuestro Diagrama de Navegación(NavigationDiagram) no son visibles. Ellos son páginas
simples visualizando un mensaje o una pregunta.
Creación de contacto (ContactCreation) y actualización de contacto (ContactUpdate) son
similares la una con la otra, solamente el nombre de las páginas y el botón de "ok" son
rotulados de acuerdo con la funcionalidad correspondiente. Por ello, el estereotipo
«presentationAlternatives» es usado nuevamente para evitar el múltiple modelado de todo el
contenido de ambos formularios de ingreso de datos. Parece que una imagen en el caso de
ContactCreation, antes de que la imagen es subida, no tenga sentido. Sin embargo, puede
ser que en la implementación se desee incluir una imagen por defecto...

Los atributos etiquetados {autoCompletion} y {liveValidation} son usados para especificar


que los campos de direcciones proveen funcionalidad de auto complementación y que el
formato de la dirección de correo es chequeada automáticamente.
Tutorial - ProcessModel (Español)
Hasta ahora podemos modelar muchos aspectos de nuestro sitio web. Pero no hemos
hablado en ningún momento de que aspecto tienen las acciones de nuestras clases de
proceso. El Modelo de Proceso comprende:
 el Modelo de Estructura del Proceso que describe las relaciones entre las diferentes
clases de proceso y
 el Modelo de Flujo del Proceso que especifica las actividades conectadas con cada
«processClass».

Modelo de Estructura del Proceso

Con el fin de describir las relaciones entre las diferentes clases de proceso, creamos un
diagrama de clases, usando la transformación de navegación a estructura de
proceso (NavigationtoProcessStructureTransformation). Despues de ejecutar la
transformación tenemos un diagrama de clases con tres clases enmarcadas con un borde
rojo:
Como puede observarse, hemos agregado otras clases para expresar, que las tres
operaciones requieren una confirmación (recuerda nuestro diagrama de presentación) con
una pregunta. Esto significa que si un usuario quiere borrar un contacto, un mensaje será
mostrado, el cuál deberá ser confirmado con un ok para que el contacto sea borrado.
ContactCreation and ContactUpdate funcionan en forma similar, ambos heredan de la clase
abstracta ContactProcessing, asegurando que los campos de texto, que son atributos de
ContactDataInput contienen valores válidos (por ejemplo podemos pensar en prohibir un
nombre en blanco para prevenir entradas inservibles en la base de datos). No bien los datos
han sido validados y no hay errores de validación (ValidationError) la página de confirmación
es presentada al usuario. Para más detalles sobre las actividades, véase el próximo párrafo!
Modelo de flujo del proceso

Un flujo del proceso (flujo de trabajo) es representado como un diagrama de actividades,


describiendo el comportamiento de una clase de proceso, por ejemplo que sucede en detalle,
cuando el usuario navega a una clase de proceso (por ejemplo ContactCreation en nuestro
ejemplo).

nombres de estereotipos y sus iconos

 acción de  acción de
usuario sistema

Podemos seleccionar nuestro diagrama de navegación y ejecutar la transformación de


navegación a flujo del proceso (NavigationtoProcessFlowsTransformation). Se han generado
tres diagramas de actividades vacios:
 ContactCreation
 ContactDeletion
 ContactUpdate
El estereotipo «userAction» es usado para indicar interaciones de usuario con la página web
iniciando un proceso o respondiendo a un requerimiento explícito de información. Por el
contrario, «systemAction» describe acciones, que son ejecutadas por el sistema. Ambos tipos
de acciones pueden ser agregadas usando la barra de herramientas (toolbar).

Felicitaciones! :-) 
Este es el fin del tutorial, porque solamente se necesita UML standard para expresar lo
toexpress lo que ocurre en estos tres procesos del diagrama de flujo del proceso.
http://uwe.pst.ifi.lmu.de/teachingTutoria
lProcessSpanish.html
UWE UML
UWE UML (UML-Based Web Engineering) es una herramienta para modelar aplicaciones
web, utilizada en la ingeniería web, prestando especial atención en sistematización y
personalización (sistemas adaptativos).
UWE es una propuesta basada en el proceso unificado y UML pero adaptados a la web.
En requisitos separa las fases de captura, definición y validación. Hace además una
clasificación y un tratamiento especial dependiendo del carácter de cada requisito.

 Consiste en una notación y en un método.


 La notación se basa en UML (OMG, 2003): para aplicaciones Web en
general y para aplicaciones adaptativas en particular.
 El método consta de seis modelos:

1. Modelo de casos de uso para capturar los requisitos del sistema.


2. Modelo conceptual para el contenido (modelo del dominio).
3. Modelo de usuario: modelo de navegación que incluye modelos estáticos y
dinámicos.
4. Modelo de estructura de presentación, modelo de flujo de presentación.
5. Modelo abstracto de interfaz de usuario y modelo de ciclo de vida del objeto.
6. Modelo de adaptación.
MagicUWE - Referencia
Esta es una referencia de las principales funcionalidades de MagicUWE (v1.3). ( referencia anterior v1.2 ) 
("Diagrama de navegación" se refiere a los diagramas de clases de navegación. "Diagrama de estados de navegación" denota la representación con diagramas de estados.)
Funciones básicas

 Crea un nuevo proyecto UWE

 Crear modelos UWE por defecto

 Crear diagramas UWE


Inserción de clase

 Insertar clases (o asociaciones) con estereotipos UWE

 Dibujar propiedades con estereotipos UWE

 Diagramas de navegación: insertar primitivas de acceso (índice, consulta, ...)


Modificación de clase

 Establecer valores etiquetados

 Copiar estereotipos
Características de RIA

 Diagrama de presentación: agregue patrones de RIA a propiedades o clases

 Modelado de características de RIA por solo etiqueta

 Modelado de características de RIA mediante la adición de dependencias

 Modelado de características de RIA agregando comportamiento


 Eliminar el valor etiquetado y posiblemente las dependencias existentes y el comportamiento

 Menú Patrones de RIA: configuración de las opciones de modelado de los patrones de RIA
Diagramas de estados de navegación

 Diagramas de Estados de navegación: copiar estereotipos y valores etiquetados

 Diagramas de Estados de navegación: Establecer «navigationalNode» en subestados

 Diagramas de estados de navegación: compruebe los cambios de «sesión» {transmissionType} en los subestados
Transformaciones

 Transformación de Content toNavigation

 Transformación de navegación a presentación

 Navegación a la transformación de la estructura de proceso

 Navegación a la transformación de flujo de proceso

 Requisitos para la transformación de contenido

 Requisitos para la transformación de navegación

 Requisitos para la transformación de la presentación

 Requisitos para la transformación del proceso


Diverso

 Configurar MagicUWE
 Errores conocidos
Funciones básicas
Funciones de MagicUWE Acciones de usuario similares en MagicDraw
 Crea un nuevo proyecto UWE Si MagicUWE no está instalado: Guarde el perfil de
Cree un nuevo proyecto ( File / New Project.. / Blanc Project) y UWEcomo MagicDraw / profiles / UWE
responda "Sí" a esta pregunta: Profile.mdzip. Crea un nuevo proyecto y agrega el perfil
UWE(Options / Modules / Use Module /
..profiles / UWE Profile.mdzip / Finish)

  

Recomendación: no mostrar las operaciones: (classon a diagram) / Symbol


properties / SuppressOperations = true / Make Default / OK 
y crear los modelos UWE (ver siguiente punto )

 Crear modelos UWE por defecto Cree usted mismo los modelos que se representan en la
siguiente figura y llámelos "Contenido", "Navegación",
"Presentación" y "Proceso", etc. Agregue los estereotipos
«contentModel», «NavigationModel», «PresentationModel» y
«ProcessModel» y así.
 Crear diagramas UWE Crea diagramas apropiados (por ejemplo, un diagrama de
clases). 

Recomendación: 
muévalos a los modelos UWE correctos en el árbol de
contención y asígneles nombres únicos.

o:

s. configuración , si prefiere un submenú UWE.


Inserción de clase
Funciones de MagicUWE Acciones de usuario similares en MagicDraw
 Insertar clases, asociaciones, estados, transiciones, casos de uso o (Draw a new normal class or association and
actividades con estereotipos de UWE right-click on it) / Stereotype / (select the
Haga clic en la clase deseada en la barra de herramientas de un diagrama de clases: wanted stereotypes from the UWE profile) /
Apply

..un diagrama de actividad:

..o un diagrama de caso de uso:


... y luego dibujar el elemento en él:

Insertar otros elementos está funcionando de manera similar.


 Dibujar propiedades con estereotipos UWE La clase de destino debe estar preparado: 
Primero haga clic en el objeto en el diagrama, que debe contener la nueva propiedad Symbol(s) Properties / SuppressStructure =
y luego seleccione el estereotipo de propiedad deseado de la barra de herramientas false.
(presentación) y dibuje en la clase que ha seleccionado previamente.
Crea una nueva clase, dale un nombre y agrega el
estereotipo deseado. Arrástrelo y suéltelo del árbol de
contención en una clase o propiedad dentro del diagrama
abierto. Ahora puede nombrar la propiedad en sí. El
estereotipo tiene que establecerse en la propiedad, también.

Se crea una nueva clase y se agrega (como propiedad) a la clase previamente


seleccionada.

 Diagramas de navegación: insertar primitivas de acceso (índice, Cree y dibuje una nueva clase, asígnele un nombre, arrastre
consulta, ...) todas las asociaciones a esta nueva clase y cree una nueva
Este (y el siguiente) menú contextual aparece de acuerdo con la configuración de asociación o eventualmente una composición para la clase
MagicUWE. Si no se muestra este menú, primero seleccione la asociación y luego principal. Finalmente agregue las multiplicidades y nombres
haga clic con el botón secundario junto a ella, para que MagicDraw no la anule, correctos.
debido a ese segundo clic. 

Seleccione una o más asociaciones para insertar una nueva clase del estereotipo
seleccionado entre una y todas las otras clases. Es necesario que todas las
asociaciones tengan el mismo fin en un lado. 
 

Se incluye una lógica útil -según el estereotipo seleccionado- para las multiplicidades,
el nuevo nombre de clase, los nombres de las propiedades y el tipo de asociación.

Modificación de clase
Funciones de MagicUWE Acciones de usuario similares en MagicDraw
 Diagramas o requisitos de navegación, estados de navegación: establecer (right click on the element) / Specification /
valores etiquetados
Tags / <<navigationNode>>isHome or
Menú de contexto del elemento seleccionado: isLandmark / create or edit value. 
Tenga cuidado, un booleano con más de un valor no parece
tener sentido.
 Diagramas de casos de uso: copiar estereotipos Para cadacaso de uso en el paqueteseleccionado:
Al hacer clic en un paquete, se muestra una opción para aplicar sus estereotipos en (Draw a new normal class or association and
los casos de uso dentro de este paquete. right-click on it) / Stereotype / (select the
wanted stereotypes from the UWE profile) /
Apply

Características de RIA
Funciones de MagicUWE Acciones de usuario similares en MagicDraw
 Diagrama de presentación: agregue patrones de RIA a propiedades o clases
El menú contextual del elemento muestra los patrones de RIA aplicables.

Haga clic en el patrón RIA para abrir el siguiente cuadro de diálogo de selección:

 Modelado de características de RIA por solo etiqueta Los valores etiquetados se pueden establecer manualmente
Si elige "solo por etiqueta", solo se establece el valor etiquetado para el elemento. en el diálogo de especificación del elemento.
 Modelado de características de RIA mediante la adición de dependencias Para agregar manualmente las dependencias, agregue un
Si elige la opción "agregar dependencias entre partes", se establece el valor Diagrama de estructura compuesta para crear el Uso de
etiquetado y, además, se agregan dependencias. Es decir, agregar un Uso de colaboración y todas las partes. Puede encontrar la
colaboración para la Colaboración correspondiente del Perfil UWE con las partes Colaboración relacionada en el Perfil UWE en el directorio
dependientes. UWEPatterns / RIAPatterns.
Defina los tipos de las partes con "Seleccionar tipo ...": las 
clases seleccionadas deben tener los mismos tipos, como las partes de la
colaboración del Perfil UWE (que se muestran con los símbolos).

Si el elemento es una propiedad, el Uso de colaboración está adjunto (en el árbol de


contención) a la clase de la propiedad; de lo contrario, al elemento en sí.
 Modelado de características de RIA agregando comportamiento Para agregar el comportamiento manualmente, primero
Si elige la opción "agregando comportamiento", primero las dependencias se agregan agregue el Uso de colaboración con las dependencias
como se explica en "agregar dependencias" . Y luego se copia una Máquina de mencionadas anteriormente. Luego copie la Máquina de
estados para el modelado del comportamiento del Perfil UWE, que puede modificarse estados del Perfil UWE (directorio UWEPatterns /
según sea necesario. RIAPatterns) al elemento de presentación.

Si el elemento es una propiedad, State Machine se adjunta (en el árbol de


contención) a la clase de la propiedad, de lo contrario al elemento en sí.

 Eliminar el valor etiquetado y posiblemente las dependencias existentes y el Los valores etiquetados se pueden eliminar en el diálogo de
comportamiento
especificación del elemento. Si el elemento es una
Si el valor etiquetado de un patrón de RIA ya está configurado, también tiene la
propiedad, elimine también el valor etiquetado de la
opción "eliminar etiqueta". Al elegir esto, el valor etiquetado se elimina. Si las
clase. Las dependencias existentes y / o el comportamiento
dependencias y / o el comportamiento ya existen para esta etiqueta, se le
se pueden eliminar en el árbol de contención.
preguntará cómo tratarlos.
 Menú Patrones de RIA: configuración de las opciones de modelado de los
patrones de RIA
En el cuadro de diálogo "Opciones de Patrones de RIA" puede configurar para cada
patrón de RIA la opción que se usa para modelar de forma predeterminada. Cambie
estas opciones también en el archivo de configuración .
Las opciones configuradas se muestran mediante un símbolo en el menú contextual
de un elemento de presentación.

Diagramas de estados de navegación


Funciones de MagicUWE Acciones de usuario similares en MagicDraw
 Diagrama de estados de navegación: copiar estereotipos y valores Para copiar las etiquetas de forma manual, cada estereotipo
etiquetados de estados
y valor debe establecerse de manera equitativa en ambos
Las etiquetas de estados se pueden establecer usando el menú contextual.
elementos.
El menú "Copiar estereotipos UWE ..." copia los estereotipos y las etiquetas del
estado de la submaquina en la máquina de estados asociada (o viceversa).

 Diagrama de estados de navegación: configure «navigationalNode» en Cada subelemento debe ser estereotipado manualmente.
subestados
Usando el menú contextual, el estereotipo «navigationalNode» se puede establecer
en todos los estados anidados que no estén estereotipados por otro estereotipo de
estado de navegación UWE.

 Diagrama de estados de navegación: compruebe los cambios de «sesión» Todos los subestados deben verificarse para detectar
{transmissionType} en los subestados
cambios en la etiqueta {transmissionType}.
El menú contextual abre una pestaña que muestra los resultados. Además, los
elementos resultantes se describen en los diagramas, si "Drawrectangles.." está
activado.
Transformaciones
Funciones de MagicUWE Transformationtypes
 Transformaciones disponibles  Contenido para navegación
Puede ejecutar todas las transformaciones desde el menú Cree una nueva clase (en el Modelo de navegación)
para cada clase en un Diagrama de contenido y
asigne a la nueva clase el mismo nombre y agregue
el estereotipo «navigationClass». Luego dibuja
todos ellos en un nuevo Diagrama de navegación
(un diagrama de clases). Ahora puedes volver a
dibujar todas las asociaciones que necesites.

 Navegación a la presentación
Cree una nueva clase (en el Modelo de
Presentación) para cada clase de un diagrama de
navegación. Etiquete la nueva clase por igual y
agregue el estereotipo «presentationGroup».

 Navegación a la estructura de proceso


Dibuje cada clase con un estereotipo
.. y desde el menú de contexto del árbol de contención:
«processClass» de un Diagrama de navegación en
un nuevo Diagrama de estructura de proceso. ¡No
crees nuevas clases!

 Navegación al flujo del proceso


Cree un nuevo flujo de proceso (= diagrama de
actividad) para cada clase de proceso con un
nombre propio de diagrama de navegación.Etiquete
los nuevos diagramas "nombre de clase" + "Flujo
de trabajo", para que pueda ver fácilmente qué
actividad pertenece a una clase con un estereotipo
"processClass".

Si selecciona más de un diagrama, se procesará cada uno que tenga el tipo de diagrama UWE  Requisitos para el contenido
correcto para la transformación seleccionada. Crea un primer modelo de contenido convirtiendo
los nodos de objetos de las actividades utilizadas
Dentro de un diagrama de clases hay dos formas de transformar una parte de los modos de
durante el análisis de requisitos en clases. Si un
requisitos en este diagrama y el modelo correspondiente.
nodo de objeto no tiene un tipo asociado, el
Para crear algunos datos adicionales dependientes del modelo para una clase existente, hay nombre del objeto se utiliza como el nombre de la
una o más entradas en el menú contextual para la clase. clase creada; de lo contrario, la clase de objetos se
toma en el modelo de contenido. Los pines de
acción relacionados con un nodo de objeto se
transforman en atributos y asociaciones de la clase
correspondiente.

 Requisitos para la navegación


El modelo de navegación inicial se genera
convirtiendo los casos de uso según su estereotipo
en clases de navegación o proceso. También se
agregan asociaciones y menús a las clases y los
valores etiquetados se importan de los casos de
uso.
Si tal clase no existe, puede generarla desde el menú contextual de un diagrama.
 Requisitos para la presentación
Para cada caso de uso, se crea un grupo de
presentación o un formulario de entrada que se
llena con elementos de presentación, pero solo si
dicho grupo tiene algunos elementos internos. Los
elementos de presentación dentro del grupo se
calculan a partir de las actividades del caso de
uso. De acuerdo con su tipo de etiqueta, las
acciones de tipo «displayAction» se convierten en
algún tipo de grupo de presentación, mientras que
las acciones «pins» y «navigationAction» se
Por lo tanto, se muestra un cuadro de diálogo al comienzo de la transformación que le permite transforman en elementos de presentación dentro
seleccionar una clase relevante. Además, puede seleccionar aquí un paquete para almacenar la de ellas. Además, las etiquetas que denotan las
características RIA de estos elementos se importan
clase recién creada y algunas opciones adicionales dependientes del modelo.
donde sea apropiado.

 Requisitos para procesar


Cree una clase de proceso para cada caso de uso
de «procesamiento» y un flujo de proceso para una
actividad de caso de uso. La estructura de la
actividad original se copia con excepción de los
elementos que tienen un estereotipo creado
especialmente para el análisis de requisitos.

Algunas características adicionales como, por ejemplo, el enlace a la página web en el menú de ayuda o el cuadro emergente no necesitan explicación. Si
tiene preguntas, ¡escríbanos un correo electrónico!
Misceláneo
Configuración de MagicUWE
Por favor, eche un vistazo en el MagicDrawHome/plugins/de.lmu.ifi.pst.uwe.MagicUWE/MagicUWE.propertiesarchivo donde puede adaptar
  comportamiento del complemento.
el
Ahí puedes configurar:

 los nombres del perfil UWE. Primero, MagicUWE busca el perfil UWE en el directorio del proyecto real. Si este archivo no existe, se elegirá el que
está en el directorio "profiles" de MagicDraw.

 atajos para todas las entradas de UWE-Toolbar

 qué elementos de presentación se pueden insertar como clase o como propiedad desde la barra de herramientas

 si el menú "nuevo diagrama" de UWE se muestra como un submenú en el árbol de contención (comportamiento predeterminado)
 opciones RIA predeterminadas

 el puerto predeterminado para conectarse al servidor SDE (Entorno de desarrollo del servicio) del contenedor MagicUWE, que está esperando el
archivo del proyecto
Errores conocidos

 Si crea un nuevo diagrama mientras dibuja una asociación desde la barra de herramientas MagicUWE, se mostrará un error y deberá hacer clic
en "deshacer la última acción". Este es un error de MagicDraw-OpenAPI, no del plugin en sí.

 Las propiedades a veces se pueden dibujar en otra clase / propiedad distinta a la que se seleccionó. Si lo hace de todos modos, la nueva clase se
creará y se agregará a las propiedades de la clase seleccionada previamente, pero no se dibujará en ninguna parte.

 Después de la inserción de una primitiva de acceso, la función de deshacer de MagicDraw no funciona correctamente. La asociación original se
elimina del diagrama, pero aún se puede encontrar en el árbol de contención.

También podría gustarte