【发布时间】:2010-09-23 08:59:19
【问题描述】:
我希望您能告诉我,从开发人员的角度来看,BPMN 的优点和缺点是什么。
我将 UML 与 BPMN 进行比较,发现 UML 有很多优点和缺点,而 BPMN 则没有。
【问题讨论】:
-
一个类似的问题:stackoverflow.com/questions/25471548/…(反正已经链接了)
我希望您能告诉我,从开发人员的角度来看,BPMN 的优点和缺点是什么。
我将 UML 与 BPMN 进行比较,发现 UML 有很多优点和缺点,而 BPMN 则没有。
【问题讨论】:
很大程度上取决于受众和目的。在建模语言方面,BPMN 和 UML 活动图涵盖了几乎相同的概念空间,但符号不同。符号的东西很快就变得宗教化了。我个人更喜欢 AD 表示法而不是 BPMN - 但这是一件非常私人的事情。
从广义上讲,BPMN 往往会受到来自业务流程建模/业务分析背景的人的青睐。 UML AD 往往受到那些从软件角度来看的人的青睐。工具支持往往反映了这一点:高端流程建模工具(casewise、aris 等)更有可能支持 BPMN;软件建模工具(MagicDraw、Sparx 等)偏爱 UML。然而,那里的交叉点越来越多。我已经与业务利益相关者一起使用了这两种方法,在任何一种情况下都没有问题。
最后是目的。您的图表是仅供人类使用还是用作某种形式的分析/代码生成的规范?如果不只是图片,那么您的工具链很可能是决定因素。
如果您想更详细地描述差异,请查看this forum post 中的答案。
【讨论】:
OMG 讨论了新的 BPMN 配置文件。即使使用活动或状态图,UML 也可以轻松生成代码。您只需要在模型中添加构造型,然后解析器将获取 xmi 并创建代码。 OMG 规范将定义应该使用哪些构造型以及为什么。真是个好主意!!
在我的公司,我们已经停止使用 BPMN,只关注更准确的活动图,因为它建立在标准语言之上。还拥有类图、用例图和活动图可以更快地建模。 我们从活动或状态图中获得运行代码。我们使用类图进行调试。 我们对所有图表使用相同的元模型,因此可以通过类图跟踪活动到代码实现。我的意思是代码一旦生成就会被反转,然后我们检查所有需求和架构,以获得更好的对象架构。 一切正常:-)
我们现在正在等待新的配置文件规范,并将实现所需的构造型以涵盖 BPMN。 我对您的问题的回答是,我们不再需要 BPMN,应该继续使用 UML 2.3 BPMN 配置文件实现。
【讨论】:
BPMN 用于建模业务流程,不是吗?这不完全是 UML 的用途。 UML 的目标是从不同的角度对软件进行建模,最终不必编写代码(是的,这很理想)。
【讨论】:
从业务角度来看,BPMN 的主要论据通常是:
主要缺点是
【讨论】:
请参阅 OMG(模型驱动架构)上的 MDA: - 我们仅将 BPMN 用于计算独立模型 (CIM) - 我们仅将 UML 用于平台无关模型(PIM,高级设计)和平台特定模型(PSM,低级设计)。 - 将 BPMN 用于任何“软件系统”或将 UML 用于“业务”是没有意义的(参见 UML v.2.5) - 对于开发人员:我们可以从 BPMN 业务流程过渡到用例,它是定义软件需求范围的好工具https://www.visual-paradigm.com/tutorials/from-business-process-to-use-cases.jsp
【讨论】:
如果您正在寻找相似之处,可以使用文本来描述 UML 和 BPMN 图。
【讨论】: