I am not sure that such tool on the shell exists. My advise would be to choose one modelling tool which
- supports your modelisation (BPMN, Activity, etc.),
- can be extended with a language you are confortable with (Python, Java, C#, etc.).
In this case, you will find several tools for sure.
For fun, I picked Modelio (https://www.modelio.org/),
made a small activity example,
and a Jython script for it.
## return first initial node in the selected activity
def getInitialPoint(act):
for node in act.getOwnedNode():
if isinstance(node, InitialNode):
return node
## parcours activity nodes
def getPaths(currentPath, currentNode):
for outgoing in currentNode.getOutgoing():
node = outgoing.getTarget()
if isinstance(node, ActivityFinalNode):
paths.append(currentPath)
return;
elif isinstance(node, DecisionMergeNode):
getPaths(currentPath, node)
else:
getPaths(currentPath + " - " + node.getName(), node)
##Init
init = getInitialPoint(elt)
currentPath = init.getName()
global paths
paths = []
getPaths(currentPath, init)
##Print founded paths
for p in paths:
print p
Hoping it helps,
EBR