
- Slides: Reuseware_UMLActivity.pdf
- Download: Eclipse Project
- Screencast: UML Activity Diagram Extension Screencast
This composition system allows the definition of cross-cutting extensions to UML Activity Diagrams and a flexible reuse of pre-defined partial activities.
Business processes that should be implemented can be described by behaviour modelling—for instance using UML Activity Diagrams. Often, general processes (e.g., a process for ordering goods in a shopping system) can be defined once and specialised for a concrete system with special requirements. The composition system described in this section allows defining general processes with activity diagrams and keeping them extensible for concrete application use-cases.
As an example, we look at the sales order processing activity modelled in Figure 2 below. The process contains a checking activity (the CustomerDataCheck action together with the decision node below) that determines whether or not certain data (here customer data) are consistent. We want to keep the order processing activity extensible such that additional checks can be inserted in parallel to the customer data check.
A developer who does not know the details about the ordering process should be able to perform the extension only by knowing that check activities can be inserted. What this developer needs to know is that a check activity has to have one incoming control flow (from the checkFork node) and two outgoing flows (to the checkMerge and chekJoin nodes). With this knowledge, the developer can design additional check activities. For instance one that determines the customers credit card liquidity as shown in Figure 3 below.