LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Documenting Event-Driven Queued State Machine in UML

I'm frequently using the design pattern of an Event-Driven State Machine and I would like to document the behaviour in proper uml. I would by happy if someone shows me to do that.

Having an event-driven QSM, the event structure will put one (or more) states into the queue (shown as orange arrows in the pic, imagine a 'Save&Exit' behaviour for multiple states). The state machine itself will also put some states into the queue for transition. In the implementation, there is no 'idle' state defined (dequeue element).

So the questions:
* How to uml-code the event-to-queue
* How to handle the multiple states fired case (*)
* What about the 'Idle' state

(*) that's the reason here for not using a simple state machine. I want to have 'Save', 'Exit' and 'Save and Exit'.

Felix




Message Edited by F. Schubert on 08-08-2008 05:52 AM
0 Kudos
Message 1 of 3
(3,744 Views)

Hi,

as far as I know we don´t sell any tool to generate Documentation in UML or generate LabVIEW-COde from UML-Models.
But there is a company offering an UML-Modeling-Tool for LabVIEW(>= 7.1).
That´s all i can say about the topic.

http://www.endevo.se/index.php/en/Produkter_Beskrivningar/Endevo-UML-Modeller-1.2.html


Marco Brauner (NIG)
0 Kudos
Message 2 of 3
(3,690 Views)

I use UML since several years to describe my LV programs. In my opinion, the sequence diagram notation is the best way to describe processes over several VIs. In my applications the UML "synchronous message" is an event by queue, the UML "message return" is a notifier. The UML "object" can be an object (a VI called from a template -> class) or a code part inside an own while loop. Each UML "activation" can have its own flow chart. Idle states (if needed?) can be drawn by an arrow of its activation.

 

 

0 Kudos
Message 3 of 3
(2,847 Views)