A simple way to view and simulate UML state diagrams
About the Project
·
Getting Started
·
Usage
With this tool, you can display, execute and analyze UML state diagrams to get a better understanding of how transitions and regions interact with each other.
Supported analyses:
- generate the corresponding reachability graph
- reachability analysis
- maxnode analysis to find a transition sequence covering as many states as possible
- maxtransition analysis to find the longest transition sequence possible
In order to use this tool, you will need to install Python as well as Graphviz on your device.
If you are having trouble installing the required Python3 Libraries see here.
- Clone the repository
or Download and save locally
git clone https://github.com/fmidue/sd-simulate
- Install Cairosvg
pip install cairosvg
- Install Graphviz-pylib
pip install graphviz
- Install Pycairo
pip install pycairo
- Navigate to and run main.py
[Load UML Diagram] and navigate to the .svg or .txt file containing your graph
[Show containment] to highlight the currently active region in red
[Hint] to highlight the currently reachable states
[Show State Diagram Graph] to generate the corresponding reachability graph
[Reachability analysis] find all reachable states from the initial state
[Max Node Analysis] find a transition sequence that contains as many states as possible
[Max transition Analysis] to find a transition sequence that contains as many transitions as possible