Ir al contenido principal

Metamorph: How to create the Hello World’s state Diagram in Enterprise Architect

In order to use a State Diagram modeled in Enterprise Architect you have to do following steps:

  • Create a new Enterprise Architect project or open an existing one.
  • Create two new packages called HelloWorld and Turnstile.

1.StateMachinePackage

  • The results should look like this (ignoring any other project packages):

2.ResultingTree

  • Right click Turnstile Package and click on add a new element.

3.CreateElement

  • Choose the StateMachine type from the drop down list.

4.CreateStateMachineElement

  • Write Turnstile in the name field and click Ok.

5.ChooseName

  • Double click on the Turnstile StateMachine Diagram:

6.ResultingTree

  • Add an Initial State from the toolbox.

7.CreateInitialState

  • Add a state from the toolbox and type Locked in the name field.

8.FirstState

  • Add the Unlocked state by following the same step as above, the results should look like this:

9.AllStates

  • Add the transitions as shown in the following diagram:

10.AllTransitions

  • Double click on the transition that goes from Locked to Unlocked and type “coin” in the Link name field.

11.TransitionName

  • Do the same for the other transitions as shown in the following diagram:

12.AllTransitionNames

  • Double click on the transition called coin and type Metamorph.Examples.HelloWorld.UnlockCondition in the guard field and Metamorph.Examples.HelloWorld.UnlockAction in the effect field.

13.TransitionActionCondition

  • Do the same for the following transitions:
Source Target Transition Action
Locked Locked pass Metamorph.Examples.HelloWorld.SoundAlarmAction
Unlocked Locked pass Metamorph.Examples.HelloWorld.LockAction
Unlocked Unlocked coin SendMessageAction

The results should look like this:

14.AllTransitionActionsConditions

  • Select the Turnstile Package created earlier and click on the Export package to XMI file menu item

15.SelectExport

  • Type the file name and folder in the Filename field. The dialog box should look like this:

16.Export

Click on the Export button.

  • Finally we need to convert the StateMachine.xmi to a format that Metamorph undestands. In order to do this one final step is required.
    • Find the Uml2Xml Converter console application located in the Metamorph distribution under Support Tools.
    • Execute the following command line: Uml2XmlConverter C:\ StateMachine.xmi StateMachine.xml

OK. We are good to go :D

Comentarios

Entradas populares de este blog

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 Docker containers for Adobe Experience Manager

This is a Docker tutorial for creating a docker image for the Galen framework, above is the vid and below you will find some of the steps followed. Adobe experience manager is a content management system which in a nutshell is an application that allows us to create web sites to be consumed by end users. You might be familiar with other such applications like wordpress or drupal which serves the same purpose A typical deployment would be comprised of two AEM instances, the author instance used for creating and modifying content, the publish instance which serves the content and finally we have a dispatcher which is a static web server used for caching, load balancing and some security purposes. We can configure an AEM instance to work as an author or publish instance by either changing the file name for the jar file java -jar cq-author-450…

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…