Erlang 系统建模工具
对于面向对象系统建模,常用工具是类图。在 Erlang 中,重点是进程而不是类。您使用什么工具来对 Erlang 系统和进程之间的交互进行建模?
For modeling OO systems a common tool is the class diagram. In Erlang the focus is on processes rather than classes. What tools do you use for modeling Erlang systems and the interactions between processes?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
我一直在“尝试”将双图作为模型工具进行销售。双图被定义为:
称为链接图的超图。它有一个顶点进程,并作为这些进程之间的超边进行通信。在超图中,边可以在任意数量的进程之间,而不仅仅是两个。实际上,该图映射了程序中的通信通道或通信路线。 “谁在和谁说话”。示例:
具有相同顶点的树,称为位置图。这形成了进程所在的主管层次结构。换句话说,它映射了每个进程的职责。树中的位置越靠下,其波动性就越大。靠近根的进程通常是具有状态并且必须受到保护的进程。示例:
我确实希望这能为您提供一种可视化和处理 Erlang 程序的方法。如果有任何不清楚的地方,请随时戳我。
I have been "trying" a bit to sell bigraphs as a model tool. A bigraph is defined to be:
A hypergraph called the link graph. It has a vertices processes and as hyperedges communication between these. In a hypergraph an edge can go between any amount of processes, not only two. In effect the graph maps the communication channels or the communication routes in the program. "Who is talking with whom". Example:
A tree with the same vertices called the location graph. This forms the supervisor-hierarchy which the processes sit in. In other words it maps the responsibility of each process. The further down in the tree it is, the more volatile it is. A process near the root is usually the ones that sit with state and have to be protected. Example:
I do hope this will give you a way to visualize and process Erlang programs. If anything is unclear, feel free to prod me.
序列图可以成为可视化流程、消息流以及它们之间的控制的好工具。我好像记得它们实际上在UML之前就已经存在了。
Sequence diagrams can be a good tool for visualising processes and the flow of messages and control between them. I seem to remember that they actually existed before UML.
最近才发现这一点,尽管它在 2011 年的 上提到过Erlang 邮件列表。
基本建模概念 (FMC):
http://fmc-modeling.org/
它旨在对软件系统进行建模,并且似乎位于正是正确的抽象级别。整个符号仅包含在三种不同的图表类型中。看看这个漂亮的符号(petri-net 图类型):
他们还提供了一个很好的演示,比较 FMC 与 UML 此处。
Just recently discovered this, even though it was mentioned in 2011 on Erlang mailing list.
Fundamental Modeling Concepts (FMC):
http://fmc-modeling.org/
It is meant to model software systems, and seems to be at exactly the right level of abstraction. The whole notation is encompassed in just three different diagram types. Look at this beautiful notation (petri-net diagram type):
They also provide a nice presentation comparing FMC to UML here.