Advantages and disadvantages of BPMN?

断了今生、忘了曾经 提交于 2020-01-31 08:23:06

问题


I was hoping you could tell me what the advantages and disadvantages of BPMN are in a developers perspective.

I'm comparing UML with BPMN and a found a bunch of advantages and disadvanteges for UML but none for BPMN.


回答1:


It's largely down to audience and purpose. In terms of modelling language, BPMN and UML activity diagrams cover pretty much the same conceptual space with different notations. The notation thing gets religious very quickly. I personally prefer AD notation over BPMN - but it's a very personal thing.

Broadly speaking, BPMN tends to find favour with those coming from a business process modelling / business analysis background. UML ADs tend to be favoured by those coming from a software perspective. Tool support tends to mirror this: the high end process modelling tools (casewise, aris, etc.) are more likely to support BPMN; software modelling tools (MagicDraw, Sparx, etc.) favour UML. However there's increasing crossover there. I've used both with business stakeholders with no issues in either case.

Finally is purpose. Are your diagrams going to be for human consumption only or used as a specification for some form of analysis/code generation? If it's not just pictures then your tool chain may well be the deciding factor.

If you want a more detailed description of the differences, have a look at the answer in this forum post.




回答2:


A new BPMN Profile has been discussed at the OMG. UML can easily generate code even with an activity or state diagrams. You just need to add stereotypes in your model then a parser will take the xmi and create code. The OMG specification will define which stereotypes should be used and why. Really a very good idea !!

In my company we have stopped using BPMN and are only focus on the activity diagram which is more accurate because built on the top of a standard language. Having also class diagram, usecase and activity diagrams allows to model faster. We get a running code from our activity or state diagram. We debug with our class diagram. We use the same metamodel for all diagrams and therefore can trace activity to code implementation and through class diagram. I mean that the code is reversed once generated and then we check all requirements and the architecture in order to have a nicer object architecture. Everything works well :-)

We are now waiting for the new profile specification and will implement the needed stereotypes in order to cover BPMN. My answer to your question is that we don't need anymore BPMN and should move on to UML 2.3 BPMN profile implementation.




回答3:


BPMN is for modeling business process flow, isn't it? That's not exactly what UML is for. The goal of UML is to model a software from different view and ultimately not to have to code it (yes that's kind of ideal).




回答4:


The main arguments for BPMN from a business perspective are usually:

  1. When building BPMN diagrams from scratch with many stakeholders, it is ok to mix tasks of different levels of hierarchy, which can be detailed out or summarized later.
  2. The basic language elements can be thought quickly even to a non-technical audience.
  3. The developers can immediately start working and attaching source-code and scripts to the BPMN-diagram by workflow and business process management software like Camunda.

The main drawbacks are that

  1. The initial BPMN sketch (usually by the business) usually needs many iterations to arrive at a diagram which allows for implementation.
  2. It is not straight forward to represent different roles since the usual concept of lanes in pools might not be enough or lead to huge diagrams, see e.g. BPMN: multiple roles in a row



回答5:


See the MDA on OMG (Model Driven Architecture): - we use BPMN only for Computation Independent Models (CIM) - we use UML only for Platform Independent Model (PIM, high level design) and Platform Specific Model (PSM, low level design). - using BPMN for any "software systems" or UML for "business" have no sense (see UML v.2.5) - for developers: we can make transition from BPMN business process to Use Case, it is good tool for defining scope of requirements for software https://www.visual-paradigm.com/tutorials/from-business-process-to-use-cases.jsp



来源:https://stackoverflow.com/questions/3776778/advantages-and-disadvantages-of-bpmn

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!