如何使用并行流程记录模拟?

时间:2011-01-06 10:43:48

标签: python documentation simulation simpy

我一直在使用Python的SimPy模块 - 它执行离散事件模拟。现在,代码已经变得相当大,并且有很多并行发生的进程彼此交互。

如何在记录方面展示这一点的最佳方式?类层次结构不能充分捕获进程之间的交互,几乎所有自动生成软件都会遇到所有代码都是从SimPy模块继承的事实,因此为每个类生成完整的SimPy文档:/

我想像UML这样的东西可能会有用,但我对此并不太了解。它需要捕获:

  • 流程
  • 活动
  • 队列(包括等待资源的进程......:)
  • 资源(如可以填充/减少的数组等,并具有一定的容量)

基本上,任何整齐的模拟代码记录工具?

干杯

2 个答案:

答案 0 :(得分:2)

UML具有状态图和活动图以及序列图。任何这些都是合适的。通常,需要组合图表。

每类对象的一个​​状态图。 http://en.wikipedia.org/wiki/State_diagram

活动图或序列图,用于显示对象之间的特定交互或协作。 http://www.agilemodeling.com/artifacts/activityDiagram.htm http://www.ibm.com/developerworks/rational/library/3101.html

类图也适用于显示类的静态功能及其关系。 http://en.wikipedia.org/wiki/Class_diagram

“整件事”通常难以记录。

答案 1 :(得分:0)

使用Diagrams和自编散文的组合。

Imho,您不需要使用UML。如果非UML以更清晰/更简单的方式传输您的消息,请使用您喜欢的任何内容。

还要写一个包含所有基本概念的简短摘要,以便读者能够真实地了解系统的用途是什么以及它的主要组成部分是什么。

然后写下关于每个组件的更详细的文章,并交叉引用其他文章。

Jacob Kaplan-Moss的文章系列Writing Great Documentation给了我很多帮助。