Pattern 12 (Extension)

FLASH animation of Extension pattern

Description

This pattern captures features to extend the syntax and the semantics of a process modeling language, by adding new modeling concepts to the language's meta-model, or refining the existing ones. This pattern impacts all process models described by the extended meta-model. It has the reverse effect of Restriction.

Purpose

To obtain either a closer match to the concepts of a particular domain, or a straightforward transformation to executable software.

Example

Fig. 10b shows the "Home Loan" model in Fig. 6a after extending the BPMN meta-model with two Task sub- types, namely Approval and Rejection, and with one Message Event subtype, namely Fax (each captured by a stereotype). In Fig. 10b the Approval and Rejection Task stereotypes have been applied to task Reject loan, resp., Approve Loan, while the Fax stereotype has been applied to the two message events.

Rationale

Extending a language's meta-model to the specific concepts of a domain makes the process models described by this language easier to understand for the audience of that domain [85], [40].

Realization

Both UML ADs and BPMN benefit from the extension capabilities of the Meta-Object Facility (MOF) [53], which provides a standardized way for refining existing ele- ment types based on stereotyping. For instance, this mech- anism has been used in [103] to extend BPMN with the concepts of variation point and variant, and in [27] to extend UML ADs with similar concepts. Moreover, various approaches exist which extend the meta-models of process modeling languages by adding new elements, rather than using stereotypes. For instance, [120] provides an extension to the BPMN meta-model to explicitly capture access control requirements. [22] extends BPMN to model non-functional aspects while [24] provides a similar extension to BPEL. BPEL4People [10] and BPELJ [18] are two further extensions of the BPEL meta-model to represent human tasks, resp., to incorporate java snippets in BPEL. Further, [110] extends UML ADs with concepts to define role-based access control aspects. EPCs have also been extended in different works with real-time concepts, object orientation, risk, and control- flow constructs of other languages [76]. UML modeling tools such as Enterprise Architect, typically support the standard UML extension mechanism of stereotypes. ARIS provides features to perform limited customizations of an eEPC meta- model (called ARIS Method). One can rename meta-model elements and attributes, and regroup attributes. However it is not possible to add new elements or attributes.