We have been making steady progress on the openEHR Task Planning specification and visual modelling language (TP-VML) for clinical workflow. One of the differentiators of Task Planning, is that, like YAWL, it is designed as a formalism for developing fully executable process plans. This means that all the semantics of a TP Plan are formally defined and executable in a TP engine. It also means that the accompanying visual language, TP-VML, consists of visual elements formally related to the TP model. This is in contrast with BPMN, which is defined as a diagramming language with some formal elements mixed in, and other formal requirements expressed separately in the specification. Nonetheless, we are carefully studying the semantics of OMG’s BPMN2 / CMMN / DMN specifications to make sure we cover the necessary requirements, and use the same conceptual terminology as far as possible.
It is early days for TP-VML of course, and we are still learning, but I believe that following the basic paradigm of a visual language being an outcome or a view of a formal model will produce a diagramming notation comprehensible to humans while being directly convertible to executable TP model instances. In other words, a visual workflow programming language.
Here is a taster of where we are right now.
Task Group Structures
Decision Structures
One kind of decision structure:
Task Types
Event Types
Draw.io Mode
The above visual language is initially being developed as a draw.io set of stencils, which are available here. They can be imported into the draw.io tool and provide a modicum of efficient TP-VML drawing capability. Note: the Chrome plug-in version is somewhat nicer to use than the pure online version. The future is of course a tool more like Camunda.
Examples of Use
Have a look at the Task Planning specification for some examples of use of TP-VML. We also have a growing set of examples produced by DIPS (major Norwegian EMR system vendor), available on Github.
