Modelling Business Processes with UML 2
There are various approaches and methods to modelling business processes (BPM). The two most important are certainly UML 2 and the "Event-Driven Process Chains" (EPC) method. Both methods have their strengths and weaknesses which will be explored more in detail below.
Business processes throughout time
In the past, the description of business processes has been one of the central tasks within a company. Lately, however, the documentation alone is no longer enough. Business processes today are expected to react quickly to market shifts and, when possible, to adapt to new environments. The changing of business processes as well as adapting the IT infrastructure behind them has become one of the major challanges of our day and age. Therefore, the goal of modelling is, on the one hand, to model the business (operational) processes and to refine step by step according to the specifications of the IT systems. Preferrably, both should be able to be shown within a system.
What is Business Process Modelling
All of a company?s relevant business processes are described and filed along with performance data. The key filed process descriptions must all be made accessible to those for whom these processes have relevance. For those involved in a process, a simplified view of their task is then created on the process.
Event-Driven Process Chains (EPC)
Developed in 1991, this method is, like UML, a graphical modelling language for describing processes. Business processes are thereby shown as an outcome of events and functions. In addition, characteristics (time aspects, costs) can be specified for all activities. Here the ability to implement a hierarchy is a major function allowing one to maintain an overview of complex processes. By utilising logical links and the factoring of probabilities of decisions, it is also possible to describe complicated process structures.
Business Process Modelling with UML
UML is not a method, but rather a mere language originally conceived for the development of software systems. An extension or application in the direction of business processes wasn?t achieved until the advent of UML 2. It is especially important to emphasise two types of diagram types in UML for business processes: The class diagram for the presentation of organisational structures and the activity diagram for the description of processes. Nevertheless, the activities of several attributes that would be important for a process are missing:
What defines a process?
- one or more goals,
- input and output objects of various different types
- resources of the most diverse kind (people, materials, systems)
- various activities with events and conditions
- often more than an executive organisational unit
- an operational value for the organisation
Extensions for UML
There are currently two major concepts for the handling of these challenges:
Both approaches supply extensions that make UML a language for modelling business processes by utilising the profile "extension mechanism" integriated into UML. This means that you don?t insert new elements, but rather extend the existing ones with the help of Stereotypes and Tagged Values such that they fulfill the requirements of a process. It is true that, at this time, there is no official OMG standard. For representing business standards, OCL ? also a part of UML ? can be used.
The OOGPM methodology offers a detailed procedure model. Although UML can ensure that a syntactically correct model occurs, the fact is that there is currently no mechanism that also guarantees the semantic accuracy of the model with regards to its contents. The greatest advantage of UML is certainly that both a company?s business and IT divisions can access the same model. This means that there is a central platform serving communication and documentation. Important criteria for the acceptance of UML are certainly process simulation, extensive reporting opportunities, and a drill-down mechanism. Another equally important aspect is the model consistency between structure and behaviour. Since it is precisely this consistency that is required for software models, UML already covers this option.
Process-oriented modelling has become a central concept when analysing software systems. The process-oriented EPK display formats are certainly better suited for business processes, but they are already beginning to show clear weaknesses in modellierung of software systems. UML, on the other hand, has been developed precisely for this purpose, and the utilisation of the appropriate extensions (EPE, OOGPM) closes the gap of the object-oriented approach toward GPM.