Communication and simulation

Modeling really only serves two basic purposes: communication and simulation. Don’t confuse one for the other.

A big criticism of UML is that it’s overly-complicated. There are constructs for edge cases of edge cases, you can not glean the immediate message. The same has been, in my experience, true of most SysML models as well.

If the purpose of the model is for simulation, then completeness is necessary. This would be as a proxy for better testing methods. When it comes to software development, there are actual testing methods that can be (and should be) used. This means UML diagrams should probably be built for communication. This means jettisoning the details. Focus on what’s important from a Pareto Analysis perspective.

It seems to me that BPMN serves no purpose, aside from potentially being used as a visual configuration in a workflow management software.

IDEF0 is fantastic because it knows what it was for.


Source