Simplifying BPMN 2.0

March 23, 2010

Though BPMN has emerged as a dominant business process modeling standard, the jury is still out on whether it is suitable for business people. Even for IT people, some argue that the number of constructs you need to understand in order to build a process model is too large. Future standards for adaptive case management will require even greater end user participation in process modeling.  

Consequently, the requirements for a simple, robust, extensible, and flexible modeling framework are growing. Over the years, we have developed a few principles for making modeling languages simpler to use. These principles represent a move away from the prejudice that everything should be defined as classes, which so dominates OO and MDA.  

The results of applying these principles to BPMN 2.0 could be a reduction of its size by up to 50%. The resulting framework would also handle typical evolution scenarios better, by removing the need for a lot of type change of individual elements. Finally, it would better support complementary visualizations of the process, like the 12 different process views we described earlier.

Read the rest of this entry »

The Graphical Modeling Framework (GMF) of Eclipse is a promising open source platform for building your own model editors. We’ve performed a preliminary analysis of GMF as a platform for our methodologies for model-driven applications, and this post highlights its strengths and weaknesses. We also propose directions for future development of GMF that would simplify the use of the framework and extend its capabilities for view management and model execution.

The upside of GMF is that basic functionality can be put together without programming, based on your own domain specific metamodel. Through additional mappings, different diagrams can be integrated into a coherent architecture, and graphical symbols can be customized. Open source makes it easier for software developers to extend the framework.

On the downside, the programming paradigm of Eclipse is at odds with our end user driven approach. Our direct model execution ambition seems difficult to implement inside a framework based on extensive code generation. While we emphasize queries and views for generating role and purpose specific interfaces, GMF relies more on transformation. Read the rest of this entry »

The visual modeling editor of the Oslo platform is now available for community technology preview (CTP). Since the first Oslo CTP half a year ago, the focus of the public discourse has been the textual language M, taking a programmers’ perspective, focusing on the design of textual domain specific languages and repository database structures. For those of us more interested in visual modeling and a new paradigm for model-driven applications, it has been a long wait.

This post summarizes early experiences from playing with Quadrant. Its user interface is novel, uniform, and functional, but a bit cumbersome, and as an early preview it exposes a lot of the underlying wiring, nuts and bolts. Interesting features are the combination of textual and graphical views, and the use of multiple layers for zoom and navigation. Some functionality is well supported, such as customizing views and interacting with large models in multiple workpads. On the other hand, services for e.g. relationship modeling are poor. The current scope of Quadrant is limited to visualizing and editing instance data. Metamodeling and definition of new extents (storage areas) must be done in the Intellipad text editor. Read the rest of this entry »

Earlier this year, Henk De Man of Cordys published two papers on case management at bptrends, one about different modeling approaches, and another about the approach taken by Cordys. This contribution has also been submitted to the OMG as an answer to their dynamic business activity modeling RFI. I recommend these papers to anyone interested in flexible BPMS, and applaud the company for making this information public. These descriptions represent the best I have seen from any vendor in this field.

Our active knowledge architecture approach is well aligned with this proposal from Cordys, though our emphasis is the complex creative and artistic human-interaction processes that are typically organized in projects. Projects are larger and more complex than cases, requiring multi-dimensional modeling and continuous elaboration of project plans as instance level process models. This post explores similarities between case management and process-oriented knowledge architectures, and proposes some additional use cases and solutions that we believe would make case management simpler and more useful for a wider range of dynamic business activities. Rather than defining new languages for different kinds of processes, we believe that a common process modeling core standard should support dialects (or profiles) for different modeling scenarios, such as “BPMN for standard BPMS”, “case management”, and “project planning and execution”. Read the rest of this entry »

My first impression of Microsoft Oslo and the M modeling language was quite positive. In particular, their approach seemed to take better care of instances than e.g. UML does, and I applauded the use of extents (instance collections) rather than types to represent repository database tables.

Upon closer examination, however, some doubts appeared. The syntax seems unneccesarily complex, and the repository and M representations goes out of synch with regard to such basic functions as subtyping and the identity of the instances. This post proposes some adjustments to simplify M and better align the visual, textual and repository representations of Oslo.   Read the rest of this entry »

Several languages have been proposed for business process modelling. Though most of them follow the conventional representation of processes as a series of steps, they emphasize different aspects of processes and related structures, such as organizations, products, and data. Consequently, they are suited for different kinds of processes. Even if you are determined to use a particular technique, knowledge of alternative approaches can still guide the modelling, by surfacing complementary points of view. In addition to the common transformational process models, this post discusses block structured languages, storytelling, and process modeling languages that are hierarchical, flow-oriented, role-oriented, communication-oriented, declarative, goal-oriented, timelines, product and document state machines etc. Read the rest of this entry »

I’ve made a small effort to investigate the detailed properties of Microsoft Oslo, and how it could fit into a larger modeling environment that also includes Visio for business diagramming. As an example, I used the Enterprise Knowledge Architecture core, a simple language that we have defined for reflective and extensible architectures. First, the language was defined as types, extents and templates in Intellipad. Then these structures were deployed to the Oslo repository, and finally we used the data link feature in Visio to show the elements in a business diagram.
Read the rest of this entry »