

Is magicdraw tied to a specific phase of my project?
Magicdraw uml 17.0.2 software#
Designed for business analysts, software analysts, programmers, and QA engineers, this dynamic and versatile development tool facilitates analysis and design of object oriented (OO) systems and databases. MagicDraw is a visual UML, SysML, BPMN, and UPDM modeling tool with team collaboration support. In the other hand, with state-machine, the execution will be held on the state forever if there is no trigger to the final state.Frequently Asked Questions What is magicdraw used for? So, you have to create a loop of activity to make sure that the object won't be disposed. If you model the clock with activity and set it as a classifier behaviour of the clock, the clock object will be disposed immediately when the execution reach the last action in the flow of activity. Then, the object will be disposed after termination of its classifier behaviour. After the object is initialised, it will perform the behaviour specified as its classifier behaviour from the beginning to the end. So, that's why I chose to model with the state-machine.įor other technical view point about difficulty and easily in modelling, the life time of the object is depends on its classifier behaviour.

You can also see the current state of the clock during the execution in Cameo Simulation Toolkit. With state-machine, you can do such easily by add more states and trigger signals.

For someone who want to control the clock such as to start, stop, pause and resume. For example, you can create a loop in Activity which contains AcceptTimeEvent action and a CallBehavior action calling "count" activity (asynchronous call).īut, let think about the advantage of using state-machine.

Īctually, you can model the clock with only Activity diagrams if state of the clock is not required. Here, I uses Cameo Simulation Toolkit, which can simulate the UML Activity and State-Machine model according to the fUML and SCXML specifications, as shown in the following video. The simulation tool can be used to ensure that the clock model can work correctly. So, the value of value property t will increase by 1 every second. The count activity will be performed every second when run state is triggered. (You can get more information about these actions in UML v2.4.1 Superstructure Specification ) So, the attribute Is Replace All will be true. In this model, the new value of value property t should replace the previous one. AddStructuralFeatureValue action which is the action for setting the value to the specified structural feature of the object (object pin).This opaque behavior has two parameters, tin (input) and tout (return), where: tout = tin + 1 CallBehavior action, is the action that calls to the opaque behavior IncreaseTimeOneSecond, shown in Figure 1.So, the token that flows through the result pin of the action is the value of value property t. Here, the specified structural feature is the value property t. ReadStructuralFeature action, this action reads the value of the specified structural feature from the object (input) pin.In this model, the token that flows through the result pin is the object of clock. ReadSelf action, is the action that returns the object of the current context.The count activity composes of the following actions: Figure 3 - SysML Activity Diagram of count activity
