Ir al contenido principal

Metamorph: Como crear el Diagrama de Estados para la aplicación Hello World en Enterprise Architect

Para poder usar un Diagrama de Estados modelado en Enterprise Architect debes realizar los siguientes pasos:

  • Crea un nuevo proyecto en Enterprise Architect o abre uno existente.
  • Crea dos nuevos paquetes, uno llamado HelloWorld y el otro Turnstile.

1.StateMachinePackage

  • El resultado debe ser el siguiente (ignorando otros paquetes del proyecto):

2.ResultingTree

  • Haz click derecho sobre el paquete Turnstile y click en adicionar elemento.

3.CreateElement

  • Escoge el tipo StateMachine de la lista desplegable.

4.CreateStateMachineElement

  • Escribe Turnstile en el campo nombre y luego click en Ok.

5.ChooseName

  • Doble click en el Diagrama de maquinas de estado Turnstile:

6.ResultingTree

  • Agrega un estado Inicial (Initial) desde la caja de herramientas (toolbox).

7.CreateInitialState

  • Agrega un estado desde la caja de herramientas y escribe Locked en el campo nombre.

8.FirstState

  • Agrega el estado Unlocked siguiendo el paso anterior, el resultado debería ser el siguiente:

9.AllStates

  • Agrega el resto de las transiciones como se muestra en el siguiente diagrama:

10.AllTransitions

  • Doble click en la transición que va desde el estado Locked al estado Unlocked y escribe “coin” en el campo de nombre del enlace (Link name).

11.TransitionName

  • Haz lo mismo para las demás transiciones como se muestra en el siguiente diagrama:

12.AllTransitionNames

  • Doble click en la transición llamada "coin" y escribe Metamorph.Examples.HelloWorld.UnlockCondition en el campo condición de guarda (Guard) y Metamorph.Examples.HelloWorld.UnlockAction en el campo efecto (Effect).

13.TransitionActionCondition

  • Haz lo mismo para las siguientes transiciones:
Fuente Destino Acción de la transición
Locked Locked pass Metamorph.Examples.HelloWorld.SoundAlarmAction
Unlocked Locked pass Metamorph.Examples.HelloWorld.LockAction
Unlocked Unlocked coin SendMessageAction

El resultado debe ser el siguiente:

14.AllTransitionActionsConditions

  • Selecciona el paquete Turnstile creado con anterioridad y haz click en el item exportar paquete a archivo XMI (Export package to XMI file) del menú.

15.SelectExport

  • Escribe el nombre del archivo y la carpeta en el campo Filename. El cuadro de dialogo debe quedar como la siguiente imagen:

16.Export

Click en el boton de exportar (Export).

  • Finalmente necesitamos convertir el archivo StateMachine.xmi a un formato que Metamorph entienda. Para lograr esto un paso final es requerido.
    • Encuentra la aplicación de consola del conversor llamado Uml2XmlConverter localizado en la distribución de Metamorph en la carpeta Herramientas de soporte (Support Tools).
    • Ejecuta la siguiente linea de comando: Uml2XmlConverter C:\ StateMachine.xmi StateMachine.xml

OK. Ya todo está listo :D

Entradas populares de este blog

Creating a Docker container for a NodeJs application: Express + Mongo + Docker Compose

This is a Docker tutorial for creating a NodeJs container using expressjs and mongoose, above is the vid and below you will find the steps followed.
StepsPre-reqsHave node.js installedAnd docker installed (make sure you have docker-compose as well)Create an simple node app using expressjs and mongooseModify your container and create a docker-compose fileBuild and Run your new container Create your simple node appInitialize the node appnpm initInstall the dependencies for our appnpm install --save express mongoose Create the database.jsCreate the index.js Create a dockerfileInclude container with node preinstalled: FROM nodeCreate default/working directory: WORKDIR /usr/src/appCopy package.json to workdir and install dependencies (which we will need in this case😊): COPY package.json .RUN npm install Copy the rest of the app (just the index.js file in this case)COPY . .Expose the port required for reaching our expressjs appEXPOSE 3000Add a command to run when this container is star…

Creating a Mongo replicaset using docker: Mongo replicaset + Nodejs + Docker Compose

This is a Docker tutorial for creating a Mongo replica set using docker compose and also a couple more containers to experiment with the replica set, above is the vid and below you will find some of the steps followed.
StepsPre-reqsHave node.js installedAnd docker installed (make sure you have docker-compose as well)Create a container for defining configurations for a mongo instanceCreate a container for setting up the replica setCreate a simple node app using expressjs and mongoose (A modified version from the previous video)Create a docker-compose file with the mongo and setup containers and two additional containers for experimenting with the replica setBuild, Run and experiment with your new containers Create a dockerfile for the first mongo container (not really needed but you could configure more stuff if needed)Include container with mongo preinstalled: FROM mongoCreate default/working directory: WORKDIR /usr/src/configsCopy mongo's configurations file into the container
C…

Creating a tensorflow.js + vue.js simple application in javascript

This is a Tensorflow.js tutorial for creating a simple application using Vue.js, above is the vid and below you will find some of the steps followed. Steps Pre-reqs Have node.js installed Create the Vue.js application using nuxt.js Add support for tensorflow.js in vue.js and add a simple model Add the simple tensorflow.js model using vue.js into github pages Create the Vue.js application using nuxt.js Install vue.js cli npm install -g vue-cli Create a base Vue.js app using the starter kit from Nuxt vue init nuxt-community/starter-template simple-vue-tensorflow Start the dev server npm run dev Create empty component components/TensorflowExample.vue Add the component into the page pages/index.vue …