Бесплатный инструмент для создания всех путей из диаграммы
Добрый день всем,
Несмотря на множество исследований в Интернете, я не нашел решения, которое бы отвечало моим потребностям.
Мне нужно найти бесплатный инструмент для моделирования процесса (например, BPMN, диаграмму активности UML) и сгенерировать все возможные пути / комбинации из диаграммы.
Ты хоть представляешь, какой инструмент может мне в этом помочь? Большое спасибо.
Обновление 1
1 ответ
Решение
Я не уверен, что такой инструмент на оболочке существует. Я бы посоветовал выбрать один инструмент для моделирования, который
- поддерживает ваше моделирование (BPMN, Activity и т. д.),
- может быть расширен с помощью удобного для вас языка (Python, Java, C# и т. д.).
В этом случае вы обязательно найдете несколько инструментов. Ради интереса я выбрал Modelio (https://www.modelio.org/), сделал небольшой пример активности и сценарий Jython для нее.
## 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
Надеясь, что это поможет, EBR