私のアプリケーション(Pythonで書かれています)の関数呼び出しをUMLでモデル化したいのですが、私は2つの問題があります。UMLで再帰呼び出しをモデル化する方法
最初に私はシーケンス図を描こうとしましたが、それはオブジェクトのモデリングメソッド呼び出しであり、私のアプリケーションは手続き的に書かれています。つまり、実際には私が実際に使用するオブジェクトは、 )。
2番目の問題は再帰呼び出しがあることです。これはUMLダイアグラムでモデル化する必要があり、シーケンス図はこれには悪い解決策です。
私はどのUML図を使用しますか?下の関数のように再帰呼び出しをモデル化する方法は?
def node_preprocessing(node):
global tags_remove, tags_special
if node.nodeType==3: # Text node
return preprocessing(node.wholeText)
if node.nodeType==1 and node.tagName not in tags_remove: # Tag node
if node.tagName in tags_special:
return tags_special[node.tagName](node)
return convert_tag(node) % u"".join(map(node_preprocessing, node.childNodes))
return u""
一方、私はこの機能で何が起こっているのかを正確に示したくありません。それが呼び出すもの(それ自身、前処理(テキスト)、convert_tag(ノード))とその順序。
ps。 tags_specialは、λ関数のdictです。私はそれらのモデルの呼び出しを必要としません。