Proyecto Tutorial para el uso de perfil en el Papiro
ntroduccin 2 La creacin del perfil 2 Perfil de aplicacin de 7 Aadiendo propiedades a los estereotipos de 10 Utilizacin de los iconos de perfil 14 Elija la apariencia de los estereotipos y las propiedades 16 Perfiles de uso en relacin con otras 20 personas ncrustar perfil de plug-in 26 Crear un perfil esttico 34
. Introduccin Este documento es un tutoriaI dando consejos para utiIizar eI perfiI ms comn en papiro. creacin de perfiIes Crear un nuevo perfiI (botn derecho deI ratn + nuevo
Figure 1 Create a new profile Select the creation to Ior Stereotype in the palette: $eleccione la creacin de estereotipos que en la paleta
$eleccione la creacin de estereotipos que en la paleta
$eleccione la creacin de estereotipos que en la paleta
Seleccione la creacion de estereotipos en la paleta:
Figure 2 Select "Stereotype" creation tool
Aadir un Nuevo estereotipo en el diagram y darle un nombre:
Figure 3 Create a stereotype
Seleciona la herramienta 'Metaclass import creation en la paleta:
Figure 4 Select "MetaClass" import creation tool
rea un metaclass import en el diagram. Una ventana de seleccion aparece permitiendo elegir UML metaclasses para reIerenciar en el perIil:
Figure 5 Select the UML metaclass to reference Seleciona la herramienta creacion para aadir el enlace Extension entre Stereotype yt Metaclass:
Figure 6 Select "Extension" creation tool in the palette:
rea una Extension entre Stereotype y Metaclass en el diagrama:
Figure 7 Add Extension link between Stereotype and Metaclass
uarda el modelo. Una ventana de dialogo aparece para decidir si deIines o no el perIil. La deIinicion en obligatoria para usar el perIil (except para perIiles estaticos), ver wiki Eclipse UML2 y/o newsgroups para mas detalles:
Figure 8 Define the profile
Una ventana aparece para aadir numero de version e diversa inIormacion en la deIinicion del perIil ( esta inIormacion puede ser vista usando el editor de arbol UML2):
Figure 9 Add profile version number and meta information
Validar para Iinalizar la deIinicion del perIil. El perIil puede ahora ser usado en tus modelos. ApIicacin PerfiI !ara probar tu perIil, inicia creando un Nuevo modelo:
Figure 10 Create a new model
Seleciona el Modelo (or !aquete (!ackage)), luego, en vista de la propiedad Papiro seleccione la pestaa de perfil. Haga clic en "Aplicar perfil
Figure 11 Click the "Apply profile" button
Una ventana de seleccion se abre para seleccionar el Iichero *.uml del perIil a aplicar:
Figure 12 Select the profile to apply
Ahora, con el perfil aplicado, es posible aplicar estereotipo a elementos UML. Para poner a prueba "Mi Perfil",( 'My!roIile), crear una clase(lass), seleccionala y haga clic en "Aplicar estereotipo" botn en la ficha perfil(profile):
Figure 13 Apply stereotype
Seleciona el/los Estereotipo(s) a aplicar en la ventana de seleccion y validarlas:
Figure 14 Selection window for stereotype to apply Aadir propiedades a Ios estereotipos En esta parte el perfil de la muestra se ha modificado para aadir una propiedad en el estereotipo My$tereotype. Para ello, vuelva a abrir el perfil con Papyrus. Aadir una propiedad a el estereotipo, ya sea mediante la seleccin de la herramienta dedicada a la paleta o haga clic en el botn emergente "Aadir propiedad" directamente en el diagrama
Figure 15 Add property
Para establecer el nombre de la propiedad y el tipo hay dos posibilidades: $eleccione la Propiedad y modificar sus parmetros en la vista de la propiedad Usar tecla "F2" para abrir el Asistente edicin inteligente y establecer el nombre y tipo. De esta manera,la combinacin de teclas "ctrl + espacio" permite la terminacin.
Figure 16 Set property name and type Para probar el perfil modificado, es necesario definir el perfil de nuevo (guarda el modelo y responde "s" en la ventana de dilogo preguntando por la definicin del perfil). Una vez hecho esto, abra el modelo utilizado para probar el perfil y volver a aplicar el perfil. $eleccione la clase de estereotipada "My$tereotype" y vaya a la pestaa perfil para ver neuvamente la propiedad recin agregada. Para dar un valor a la propiedad, haga clic en el botn "+":.
Figure 17 See stereotype property
En la caja de dialogo, introducer el valor deseado para la propiedad:
Figure 18 Valuate property
!odemos ver el valor aadido en la pestaa perIil:
Figure 19 Property with value
Utilizacin de iconos en el perfil Los iconos pueden ser asociados al estereotipo con el fin de mejorar la presentacin de los elementos estereotipados en los diagramas. Para asociar un icono a cualquier estereotipo, abra el modelo de perfil y seleccionar un estereotipo. En la pestaa "General" de la ventana de propiedades, haga clic en el botn "+" en la parte de definicin icono
Figure 20 Click the add icon button
Luego selecciona un icono (varios Iormatos de imagen son soportados):
Figure 21 Select icon
. A continuacin en la parte "icono" de la pestaa "General", una forma puede ser asociado al estereotipo. Proceda como antes para seleccionar una imagen para la forma. Un icono anota el elemento de UML en el diagrama, la forma se utiliza de manera diferente, ya que reemplaza totalmente la forma esquemtica de un elemento estereotipado. $e dan ejemplos en la siguiente parte de este tutorial
Figure 22 Click select shape icon button
. Una vez que los iconos y / o formas que se hayan especificado son seleccionados y definido el perfil podemos probarlos en la siguiente parte del tutorial
Figure 23 Stereotype with icon and shape specified
EIija Ia apariencia de Ios estereotipos y Ias propiedades
En esta parte se describe cmo el icono / formas definidas en un estereotipo puede ser mostrado en los diagramas. Tambin ilustran cmo se puede mostrar las propiedades de un estereotipo en un diagrama. Abra el modelo de ejemplo y volver a aplicar el perfil. $eleccione la clase estereotipada y vaya a la ficha de perfil en la ventana de propiedades. En esta pestaa seleccione el estereotipo (s) y haga clic en el botn "Mostrar"(Display) para ocultar / mostrar el estereotipo en el diagrama
Figure 24 Display/mask Stereotype in diagram
Lo mismo se puede hacer con las propiedades de los estereotipos
Figure 25 Show/Mask stereotype properties
Una propiedad estereotipo se muestra en el diagrama aparece en una nota de texto que se adjunta al elemento estereotipado:
Figure 26 Property representations in the diagram
$i el icono y / o forma se han asociado con el estereotipo en el modelo de perfil, la presentacin de los elementos estereotipados pueden pasar a hacer uso de estos. Para este asunto, seleccione el elemento estereotipado, y vaya a la pestaa "Apariencia"(Apperance) en la ventana de propiedades :
Figure 27 Change sterotype presentation
Un combo box da 4 posibilidades de presentacion: 1. %exto : la representacion por deIecto 2. Icono (mostrado debajo)
3. %exto e Icono (mostrado debajo)
4. Forma(Shape) (mostrado debajo)
Use profiIes reIated to others In this part we show an example where a proIile in used by another one. A stereotype is created that inheritates Irom a Stereotype deIined in the reIerenced proIile. %o begin with, create a new proIile that will be reIerenced (simply create a Stereotype and save/deIine the proIile): Uso de perfiles relacionados con otros En esta parte se muestra un ejemplo donde un perfil en uso por otro. Un estereotipo es creado que herede de un estereotipo definido en el perfil de referencia(do). En primer lugar, crear un nuevo perfil que ser referenciado (basta con crear un estereotipo y guardar / definir el perfil):
Figure 28 Create a profile that will be referenced
Abra el perfil de "Mi Perfil"('My!roIile ) e importar el perfil recin creado. Para ello haz click derecho sobre el elemento de perfil y elegir la opcin "mportar paquete / paquete de importacin de los modelos de espacio de trabajo"( workspace models):
Figure 29 Import profile
En la ventana de dilogo introduzca las primeras letras del archivo *. uml y seleccione el perfil para importar
Figure 30 Select the profile to import
En el editor de rbol (esquema Papiro)( !apyrus outline), abre "importaciones" (mports) y recuperar el estereotipo que desea utilizar en el perfil. A continuacin, arrastre el estereotipo en el diagrama
Figure 31 Import the stereotype
Para crear un enlace generalizacin entre un estereotipo y un estereotipo de otro perfil, seleccione la herramienta de creacin de la generalizacin de la paleta
Figure 32 Select "Generalization" creation tool
rea una generalizacion entre estereotipos:
Figure 33 Create a Generalization
Guardar y definir el perfil, y abrir un modelo para la prueba. Volver a aplicar el perfil y probar el estereotipo. En la pestaa de perfil, la propiedad heredada del perfil referenciado aparecer:
Figure 34 Inherited properties of a stereotype Incrustar perfiI en pIug-in Para faciIitar Ia impIementacin de perfiI y su uso en Papiro, eI perfiI puede ser embebido en EcIipse pIug-in. En esta parte se describen Ios pasos a seguir para crear taI pIug-ins. Comience por crear un nuevo pIug-in con eI asistente de creacin de (nuevos / otros) pIug-ins:
Figure 35 Create a new plug-in
En la ventana de creacion plug-in, introduce un nombre para el plug-in:
Figure 36 Give a name to the plug-in
Elige siguiente y rellena la inIormacion opcional, si es necesario:
Figure 37 Optional information
Elegir Iinish para completer el proceso de creacion del plug-in. En el plug-in creado, aadir una carpeta 'model y copiar el perIil en esta carpeta:
Figure 38 Copy the profile in the plug-in
Ahora tenemos que configurar el plug-in. La configuracin de Plug-in se realiza principalmente en el archivo "plugin.xml" , abrirlo, un editor dedicado debera aparecer. Vaya a la pestaa de dependencias. Aadir las siguientes dependencias (que son necesarias para poder utilizar el punto de extensin ms adelante):
O org.eclipse.emI.ecore O com.cea.papyrus.extensionpoints.uml2
Figure 39 Add dependencies
Ir a la pestaa 'Extension. Aadir un Nuevo 'org.eclipse.emI.ecore.urimapping:
Figure 40 Select "uri_mapping" extension point
Rellena la inIormacion de Extensions como en la Iigura de debajo:
Figure 41 uri_mapping information
Esta extensin define un alias UR que ser resuelto automticamente por la plataforma Eclipse, cuando sea necesario (que es una especie de carpeta virtual que tiene el mismo nombre en cualquier instalacin de Eclipse, pero la ubicacin del sistema es diferente).
A continuacin, agregar una nueva extensin: "com.cea.papyrus.extensionpoints.uml2.UMLProfile":
Figure 42 Add Papyrus related extension
Rellena inIormacion para la extension UML!roIile (ver Iigura de debajo). Solo nombre y path son obligatorios.
Figure 43 UMLProfile extension
Esta extensin es utilizada por Papiro para saber qu perfiles son instalados y embebidos en plug-in de el Eclipse de la instalacin local. Para probar el plug-in, una mesa de trabajo de pruebas (testing workbench ) debe ser iniciado. Para ello,elegir la opcin "de dilogo Open Run" del menu Ejecutar (Run):
Figure 44 Open run dialog rea un banco de pruebas Eclipse ( test workbench) (doble-click en 'Eclipse Application y 'Run):
Figure 45 Create Eclipse application test workbench
Para probar el perfil, crear un nuevo proyecto y agregar el modelo UML. $elecciona un paquete, vaya a la pestaa Perfil en la vista propiedad(property view) y haga clic en el botn "Aplicar perfil registrado" ('Apply registered proIile ) :
Figure 46 Apply registered profile
El perIil embebido apareceria en la ventana de seleccion:
Figure 47 Profile selection window
Validar la seleccion.!uedes usar ahora el perIil exactamente igual que antes.:
Figure 48 Use the profile as usual Crear un perfil esttico EI proyecto EcIipse UML2 ha definido nueva caracterstica denominada "PerfiIes estticos" ("Static ProfiIes ) que hacen posibIe eI uso de estereotipos a travs de cIases Java generadas en Iugar de Ias definiciones de perfiI (ver wiki EcIipse UML2 i para ms informacin). Esta caracterstica puede ser tiI aadir eI comportamiento en eI perfiI. En este tutoriaI se utiIiza para Ia funcin de prestar apoyo a Ias propiedades derivadas.. Una propiedad derivada es un tipo particuIar de propiedad que se supone que no es vaIorado por eI usuario, sino automticamente se deduce deI contexto donde se apIica eI estereotipo. En primer Iugar crear un nuevo perfiI, un estereotipo y aadir una propiedad derivada. En este ejempIo, eI vaIor esperado de "cIassName" es eI nombre de Ia cIase en Ia que se apIica MyStereotype. En generaI, estas propiedades se espera que sean de sIo Iectura.
Figure 49 Stereotype with derived property Perfiles estticos deben estar integrados en un plug-in. Crear un proyecto estndar de Java, agregue una carpeta "modelo" (model) y colocar el perfil en l
Figure 50 Create a 1ava project
Abrir el perIil y aplicar el perIil Ecore (puede ser encontrado via dialogo seleccion 'Apply registered proIil ):
Figure 51 Apply Ecore profile
Aplicar el estereotipo E!ackage al modelo:
Figure 52 Apply EPackage stereotype
ntroduzca el valor para la propiedad estereotipo EPackage. En el ejemplo, los valores son los siguientes: PackageName = "Mi Perfil" nsPrefix = "Mi Perfil" nsUR = "http://Papyrus/MyProfile/1" ("1" representa la versin del perfil) prefix = Mi Perfil
Esta informacin se utiliza para generar cdigo para el perfil.
Adems, en la mayora de los casos, las propiedades derivadas se aplican en EMF como transitorio y voltil. Esta informacin se aade en el modelo de UML con el estereotipo de EReference o EAttribute (de perfil Ecore).
Figure 53 EPackage stereotype property values
uarda el perIil. Definicin del perfil no sirve para nada con los perfiles estticos
Figure 54 Save the profile
Abrir el archivo *.uml del perIil con Eclipse UML2 editor:
Figure 55 Open with UML2 tree editor
convertir el modelo a un Iichero ecore:
Figure 56 Convert profile to Ecore
Luego, crear un Nuevo EMF en tu proyecto:
Figure 57 Create an EMF model
$eguir el modelo de asistente de creacin EMF. Nombra el modelo
Figure 58 Give a name (`.genmodel)
Elegir importar modelo Ecore:
Figure 59 Choose Ecore importer
seleccionar la version ecore del perIil:And select the ecore version oI the proIile:
Figure 60 Select `.ecore version of the profile
El archivo creado *. genmodel se debe abrir en su editor dedicado. Haga clic derecho y generar cdigo para el modo
Figure 61 Generate model code
Cdigo debe ser generado en la carpeta "src", y "plugin.xml" debe ser inicializado con algunas extensiones definidas. Una parte de el archivo "plugin.xml" an no se ha completado con la mano. Para este tema tenemos que recuperar el "id" del perfil. Este id se puede encontrar abriendo el perfil archivo *. uml con el editor de texto
Figure 62 Profile id
En el archivo plugin.xml, vaya a la pestaa de extensin y agregar una nueva extensin org.eclipse.uml2.uml.generated_package . Los detalles de esta extensin son las siguientes: UR: http://papyrus/MyProfile/1 (esta es la UR especificada en la propiedad nsUR del estereotipo EPackage) Ubicacin: Plataforma: / plugin / MyProfilePlugin / modelo / MyProfile.profile.uml # package_id, donde "MyProfilePlugin" es el nombre del proyecto, "MyProfile.profile.uml" el nombre del archivo de perfil, y "package_id" es supone que se sustituye por el D de perfil encontrado justo antes. O
Luego aadir extension relacionada !apyrus igual como vimo antes ( ):
Figure 64 Papyrus related extensions Con el fin de calcular automticamente el valor de la propiedad "className", el cdigo generado en "src" tiene que ser completado. Abra la clase java class MyProfile.impl.My$tereotypempl.java y aadir un poco de cdigo en los mtodos GetClassName / setClassName
Para evitar el cdigo de usuario que se sobrescribe si el cdigo del modelo se genera, la etiqueta @generada debe ser eliminado o cambiado a @generada NOT
Ahora puede iniciar una prueba de mesa de trabajo de Eclipse para probar el plug- in. Crear un modelo, aplicar el perfil, y My$tereotype a una clase. En la pestaa de perfil de papiro, la propiedad derivada "className" debe ser valorado de forma automtica: