What is Business Process Modeling? (BPM)

Processes of the same nature are classified together into a process model. Thus, a process model is a description of a process at the type level. Since the process model is at the type level, a process is an instantiation of it. The same process model is used repeatedly for the development of many applications and thus, has many instantiations.

One possible use of a process model is to prescribe ‘how things must/should/could be done’ in contrast to the process itself which is really what happens. A process model is more or less a rough anticipation of what the process will look like. What the process shall be will be determined during actual system development” Rolland 1998.

Main aims of process models:

  • Descriptive
    • Traces what actually happens during a process
    • Takes the point of view of an external observer who looks at the way a process has been performed and determines the improvements that have to be made to make it perform more effectively or efficiently
  • Prescriptive
    • Defines desired processes and how they should/could/might be performed
    • Lays down rules, guidelines, and behavior patterns which, if followed, would lead to the desired process performance. They range from strict enforcement to flexible guidance.
  • Explanatory
    • provides explanations about the rationale of processes
    • explores and evaluates several possible courses of action based on rational arguments
    • establishes an explicit link between processes and the requirements that they are to fulfill

Purpose

“From a theoretical point of view, the Process Meta-Model explains which are the key concepts needed to describe what happens in the development process, on what, when it happens and why. From an operational point of view, the Process Meta-Model is aimed at providing guidance for method engineers and application developers.” Rolland 1993.

Classification of process models

  • Coverage
    • There are at least four recognised types of coverage where the term process model has been defined differently:
    • Activity-oriented: related set of activities conducted for the specific purpose of product definition; a set of partially ordered steps intended to reach a goal (Feiler 1993).
    • Product-oriented: series of activities that cause successive product transformations to reach the desired product
    • Decision-oriented: set of related decisions conducted for the specific purpose of product definition
    • Context-oriented: sequence of contexts causing successive product transformations under the influence of a decision taken in a context
  • Alignment
    • Processes can be of different kinds, which corresponds to how they are modelled.
    • Strategic processes
    • investigate alternative ways of doing a thing and eventually produce a plan for doing it
    • are often creative and require human co-operation; thus, alternative generation and selection from an alternative are very critical activities
    • Tactical processes
    • help in the achievement of a plan
    • are more concerned with the tactics to be adopted for actual plan achievement than with the development of a plan of achievement
    • Implementation processes
    • are the lowest level processes
    • are directly concerned with the details of the what and how of plan implementation
  • Granularity
    • Granularity refers to the detail level of the process model. “Granularity affects the kind of guidance, explanation and trace that can be provided. High granularity limits these to a rather coarse level of detail whereas fine granularity provides more detailed capability. The nature of granularity needed is dependent on the situation at hand.” (Rolland 1998)
    • Project manager, customer representatives, the general, top-level, or middle management require rather large-grained process description as they want to gain an overview over time, budget, and resource planning for their decisions. In contrast, software engineers, users, testers, analysts, or software system architects will prefer a fine-grained process model for the details of the model deliver them with instructions and important execution dependencies such as the dependencies between people.
    • While notations for fine-grained models exist, most traditional process models are large-grained descriptions. Process models should, ideally, provide a wide range of granularity.
  • Flexibility
    • It was found that “even though process models were prescriptive, in actual practice departures from the prescription occurred”. [Rolland1999] Thus, frameworks for adopting methods evolved so that systems development methods match specific organizational situations and thereby improve their usefulness. The development of such frameworks is also called Situational Method Engineering.
    • Method construction approaches can be organized in a spectrum ranging from 'low' flexibility, to 'high'. (Harmsen 1994)
    • “At the 'low' end of this spectrum are rigid methods whereas at the 'high' end is modular method construction. Rigid methods are completely pre-defined and leave little scope for adapting them to the situation at hand. On the other hand, modular methods can be modified and augmented to fit a given situation. Selection from rigid methods allows each project to choose its method from a panel of rigid, pre-defined methods whereas selection of paths within a method consists of selecting the appropriate path for the situation at hand. Finally selection and tuning a method permits each project to select methods from different approaches and tune them to the project's needs.” (Rolland 1997)

Techniques

There are various ways for representing processes: scripts, programs, and hypertext. “Process scripts are interactively used by humans as against process programs which are enacted by a machine. They support non determinism whereas process programs can, at best, support process deviation under pre-defined constraints. The hypertext style of process representation is a network of links between the different aspects of a process, such as product parts, decisions, arguments, issues, etc. Scripts and programs are two styles which may be applicable to prescriptive purposes whereas hypertext is well suited to descriptive and explanatory purposes. Strict enforcement of the prescriptive purpose can clearly be represented in process programs whereas flexible guidance requires the process model to be represented in process scripts. Descriptive and explanatory purposes require the establishment of relationships between different elements of a process trace. These relationships are well articulated as hypertext links.” (Rolland 1998)

Perspective Scripts Programs Hypertext

Usage interactively used by humans enacted by a machine network of links between the different aspects of a process, such as product parts, decisions, arguments, issues, etc.







Character support non determinism support, at best, process deviation under pre-defined constraints as above.







Applicability applicable to prescriptive purposes (flexible guidance) applicable to prescriptive purposes (strict enforcement) applicable to descriptive and explanatory purposes

Traditionally, informal notations such as natural languages or diagrams with informal semantics have been used as process models underlying information systems. (Rolland 1998)