8.25.2008

Process modeling - Wikipedia, the free encyclopedia - Sent Using Google Toolbar

Process modeling - Wikipedia, the free encyclopedia

Process modeling

From Wikipedia, the free encyclopedia

  (Redirected from Business modeling)
Jump to: navigation, search

The term process model is used in different contexts. For example, in business process modeling the enterprise process model is often referred to as the business process model. Process models are core concepts in the discipline of Process Engineering.

Abstraction level for processes
Abstraction level for processes [1]

Process models are processes of the same nature that are classified together into a 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 roughly an anticipation of what the process will look like. What the process shall be will be determined during actual system development.[2]

The goals of a process model are to be:

  • Descriptive
    • Track 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 the 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 can range from strict enforcement to flexible guidance.
  • Explanatory
    • Provides explanations about the rationale of processes.
    • Explore and evaluate the several possible courses of action based on rational arguments.
    • Establish an explicit link between processes and the requirements that the model needs to fulfill.
    • Pre-defines points at which data can be extracted for reporting purposes.



Contents

[hide]

[edit] Purpose

From a theoretical point of view, the Meta-Process Modeling explains 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 Meta-Process Modeling is aimed at providing guidance for method engineers and application developers." [3]

The activity of modeling a business process usually predicates a need to change processes or identify issues to be corrected. This transformation may or may not require IT involvement, although that is a common driver for the need to model a business process. Change management programmes are desired to put the processes into practice. With advances in technology from larger platform vendors, the vision of business process models (BPM) becoming fully executable (and capable of round-trip engineering) is coming closer to reality every day. Supporting technologies include Business Process Modeling Notation[4] Unified Modeling Language (UML), model-driven architecture, and service-oriented architecture.

Process Modeling addresses the process aspects an Enterprise Business Architecture, leading to an all encompassing Enterprise Architecture. The relationships of a business processes in the context of the rest of the enterprise systems, data, organizational structure, strategies, etc. create greater capabilities in analyzing and planning a change. One real world example is in corporate mergers and acquisitions; understanding the processes in both companies in detail, allowing management to identify redundancies resulting in a smoother merger.

Process Modeling has always been a key aspect of business process reengineering, and continuous improvement approaches seen in Six sigma.

[edit] Classification of process models

[edit] Classification by coverage

There are three types of coverage where the term process model has been defined differently[5]:

  • 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. [6]
  • 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.

[edit] Classification by alignment

Processes can be of different kinds.[7] These definitions "correspond to the various ways in which a process can be 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

[edit] Classification by granularity

Granularity refers to the detail level of the process model and 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.[8]

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. (e.g. Process Weaver)[9][10]

[edit] Classification by flexibility

Flexibility of Method construction approaches
Flexibility of Method construction approaches [11]

It was found that while process models were prescriptive, in actual practice departures from the prescription can occur.[12] 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'.[13]

Lying at the 'low' end of this spectrum are rigid methods, whereas at the 'high' end there are 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. Selecting a rigid methods allows each project to choose its method from a panel of rigid, pre-defined methods, whereas selecting a path within a method consists of choosing the appropriate path for the situation at hand. Finally, selecting and tuning a method allows each project to select methods from different approaches and tune them to the project's needs." [14]

[edit] Business process modeling

Zachman Framework Perspectives of Process Focus
Zachman Framework Perspectives of Process Focus

Business Process Modeling (also known as Business Process Discovery, BPD) is the activity of representing both the current ("as is") and future ("to be") processes of an enterprise, so that the current process may be analyzed and improved. BPM is typically performed by business analysts and managers who are seeking to improve process efficiency and quality. The process improvements identified by BPM may or may not require IT involvement, although that is a common driver for the need to model a business process, by creating a process master.

Change management programs are typically involved to put the improved business processes into practice. With advances in technology from large platform vendors, the vision of BPM models becoming fully executable (and capable of simulations and round-trip engineering) is coming closer to reality every day.

Business Process Modeling plays an important role in the business process management (BPM) discipline. Since both Business Process Modeling and Business Process Management share the same acronym (BPM), these activities are sometimes confused with each other.

Modeling language standards that are used for BPM include Business Process Modeling Notation (BPMN)[4], Business Process Execution Language (BPEL), Unified Modeling Language (UML), Object Process Methodology (OPM), and Web Services Choreography Description Language (WS-CDL).[15] Other technologies related to business process modeling include model-driven architecture and service-oriented architecture.

BPM addresses the process aspects of an Enterprise Business Architecture, leading to an all encompassing Enterprise Architecture. The relationships of a business processes in the context of the rest of the enterprise systems (e.g., data architecture, organizational structure, strategies, etc.) create greater capabilities when analyzing and planning enterprise changes. For example, during a corporate merger it is important to understand the processes of both companies in detail so that management can correctly and efficiently identify and eliminate redundancies in operations. Business Process Modeling has always been a key aspect of business process reengineering (BPR) and continuous improvement approaches, such as Six Sigma. BPM tools such as K2 [blackpearl], Axway, Lombardi, Holosofx, Holocentric Modeler and TIBCO are used in order to represent a business process, to run a simulation of the process and for communication purposes.

[edit] Techniques

There are different styles 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.[16]

Process Representation style
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
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. In software engineering, more formal process models have been used.[17] [18][19][20]

[edit] See also

[edit] References

  1. ^ Rolland, C. (June 1993). Modeling the Requirements Engineering Process, 3rd European-Japanese Seminar on Information Modelling and Knowledge Bases. 
  2. ^ Rolland, C.; Pernici, C. Thanos (June 1998). A Comprehensive View of Process Engineering. Proceedings of the 10th International Conference CAiSE'98, B. Lecture Notes in Computer Science 1413. Pisa, Italy: Springer. 
  3. ^ Rolland, C. (June 1993). Modeling the Requirements Engineering Process, 3rd European-Japanese Seminar on Information Modelling and Knowledge Bases. 
  4. ^ a b Debevoise, Neilson T, et. al (2008 July 4). The MicroGuide to Process Modeling in BPMN. BookSurge Publishing. ISBN 978-1-4196-9310-6. 
  5. ^ Dowson, M. (1988). Iteration in the Software Process, Proc 9th Int. Conf. on Software Engineering. 
  6. ^ Feiler, P. H.; W. S. Humphrey (1993). Software Process Development and Enactment: Concepts and Definitions, Proc. 2nd Int. Conf. on "Software Process". 
  7. ^ Rolland, C.; Pernici, C. Thanos (June 1998). A Comprehensive View of Process Engineering. Proceedings of the 10th International Conference CAiSE'98, B. Lecture Notes in Computer Science 1413. Pisa, Italy: Springer. 
  8. ^ Rolland, C.; Pernici, C. Thanos (June 1998). A Comprehensive View of Process Engineering. Proceedings of the 10th International Conference CAiSE'98, B. Lecture Notes in Computer Science 1413. Paisa, Italy: Springer. 
  9. ^ Fernström, C.; L. Ohlsson (October 1991). Integration Needs in Process Enacted Environments, Proc. 1st Int. Conf. on the Software Process. IEEE computer Society Press. 
  10. ^ Rolland, C.; Pernici, C. Thanos (June 1998). A Comprehensive View of Process Engineering. Proceedings of the 10th International Conference CAiSE'98, B. Lecture Notes in Computer Science 1413. Pisa, Italy: Springer. 
  11. ^ Harmsen, A. F.; J. N. Brinkkemper, J. L. H. Oei (1994). Situational Method Engineering for information Systems Project Approaches. 
  12. ^ Rolland, C.; N. Prakash, A. Benjamen (1999). A Multi-Model View of Process Modelling. Requirements Engineering. Volume 4, Number 4. London: Springer-Verlag. 
  13. ^ Harmsen, A. F.; J. N. Brinkkemper, J. L. H. Oei (1994). Situational Method Engineering for information Systems Project Approaches. 
  14. ^ Rolland, C. (June 10-13, 1997). A Primer for Method Engineering. Proceedings of the INFORSID Conference. 
  15. ^ "Business Modeling FAQ". Retrieved on 2007-10-17.
  16. ^ Rolland, C.; Pernici, C. Thanos (June 1998). A Comprehensive View of Process Engineering. Proceedings of the 10th International Conference CAiSE'98, B. Lecture Notes in Computer Science 1413. Pisa, Italy: Springer. 
  17. ^ Armenise, P.; S. Bandinelli, C. Ghezzi, A. Morzenti (1993). A survey and assessment of software process representation formalisms Int. Journal of Software Engineering and Knowledge Engineering, Vol. 3, No. 3. 
  18. ^ Curtis, B.; M. Kellner, J. Over (September 1992). Process Modeling, Communications of ACM, vol 35, pp 75-90. 
  19. ^ Finkelstein, A.; J. Kramer, B. Nuseibeh (1994). Software process modelling and technology. New York: Wiley. 
  20. ^ Rolland, C.; Pernici, C. Thanos (June 1998). A Comprehensive View of Process Engineering. Proceedings of the 10th International Conference CAiSE'98, B. Lecture Notes in Computer Science 1413. Pisa, Italy: Springer. 

[edit] External Links