|
|
 |
Practical BPM: Integrated Process Development Architecture
 |
|
|
|
|
|
|
|
|
"...You should attempt to work with other organizations to tie your future processes and technology together in order to build synergy. Does your company have an enterprise architecture team to help you build this vision?"
Contribute to this Discussion
|
|
|
|
By Rashid N. Khan The development and maintenance of business processes poses many of the same challenges as do the development and maintenance of other organizational assets. The design tools must provide a means for users to incorporate and configure functions and features in a manner that make sense and is intuitive to users. Business process management (BPM) systems are best measured by the ease of use and completeness of their process development tools, since these tools encapsulate the capabilities of the system to automate business processes. The architecture for an advanced, integrated BPM process development solution is shown in Figure 1. | Figure 1: BPM Development Architecture |
|  |
|
|
Like typical enterprise applications, it has a three-tier architecture that lends itself for scalability. It consists of the following components: - Design repository: The process design repository is a database used for saving process definitions and all objects that make up the process. Advanced BPM systems decompose a process into a number of components such as forms, business rules, steps and properties. Each of these is an "object" and is saved independently. The granularity of these objects allows users to collaborate in the development, and also share and reuse the objects in other processes. If a process is decomposed into steps, forms and business rules it is possible for different individuals to work with different objects at the same time. It is also possible that an object can be reused and shared with other processes. The use of a design repository facilitates collaboration, maintenance and reuse.
- Design server: The design server provides server-side capabilities and implements the logic and rules that are associated with the process development effort. Since the objects saved in the repository can be accessed by multiple users at the same time, the design server provides common collaboration functions that may include the following:
- Check in/check out: A user can check out an item for the purpose of working on it. When an object is checked out, other users can view it but are not able to modify it. This ensures that only one person is working on an object at any given time. When the work is finished, the users can check in the object so that others can use it.
- Version control: Every time an object is modified and checked in, a new version is created. This allows the development team to keep track of various versions of their work.
- Audit history: This provides a brief history of who created new versions of an object and what modifications were made.
- Rollback: If a new version of an object is created and the process designer realizes there was mistake, rollback allows the changes to be undone and revert to the previous version.
- Fine-grained security: For smooth collaboration it is essential for the design server to provide security and access control at the smallest practical object level. This enables only authorized users to check out items they need to work on. Furthermore, if security is applied at the smallest object then a user can check out a component at that level, thereby enabling other users to work on other components. Advanced BPM collaboration servers provide security at the level of electronic forms, business rules and properties of each step.
- Publish: The design server enables users with access rights to publish an object to a server so that it is available for use. This provides the ability to dynamically change processes on the fly.
- Design station: A design station is the "client" for the BPM process development solution. This software is used by various individuals who collaborate in the development of processes. It provides a collection of "editors" for the various types of objects that constitute a process. It enables a user to view and check out an object to which he has access rights. When the user checks out an object, the design station invokes the associated editor that enables the user to then develop, update or modify the object. The design station also enables the user to use the collaboration functions that are provided by the design server. Finally, advanced systems allow the user to check out one or more objects and disconnect from the repository. This provides the capability to support offline users who may not have access to the design server for some period of time, such as when they are working at home. When they return and connect back to the design server, they can simply check in the item.
One or more BPM servers may be connected to the development solution as illustrated graphically in Figure 2. These are the servers on to which the processes developed and tested in the development solution are "published" so that they are available for use by end users who participate in the business process. Typically, the environment will consist of a BPM server dedicated to process development, a second dedicated to test or preproduction and a third dedicated to production that manages live running processes. Segregation of BPM servers ensures that the development and test activities do not interfere with live running processes. Such a configuration is highly recommended. | Figure 2: Multiple BPM Servers Connected to Development Environment |
|  |
|
|
In most cases, the BPM process development solution will also have an administration tool that is used for configuring and administering the various components of the solution, and for assigning access rights to individual users. ConclusionBusiness processes are often very large and complex, making it difficult for one person to develop them alone. For these reasons, a collaborative design environment is essential for the development of automated business processes. Useful Links This article is an excerpt from Rashid Khan's Business Process Management: A Practical Guide. Order your copy here: http://www.bpmenterprise.com/yDQ
Rashid N. Khan is the founder and Chief Technical and Strategy Officer of Ultimus Inc., a pioneer in business process management and workflow automation. Prior to establishing Ultimus, founded Sintech Inc., a leader in advanced software for mechanical testing. Rashid sold Sintech to MTS Systems in 1989, where he worked for a five years as a vice president and general manager. During this period he took the company through ISO 9000 certification. This experience made him aware of the need for business process management and workflow automation. Rashid obtained two undergraduate degrees from MIT in computer science and political science. Khan is the author of Business Process Management: A Practical Guide, has published numerous articles and spoken at a number of events. Contact Rashid N. Khan at info (at) ultimus.com or visit http://www.ultimus.com.
Copyright © 2003-2008 BPMEnterprise.com, CTQ Media. All Rights Reserved Reproduction Without Permission Is Strictly Prohibited Request Permission
Publish an Article: Do you have a process management tip, learning or case study? Share it with the largest community of Business Process Management professionals, and be recognized by your peers. It's a great way to promote your expertise and/or build your resume. Read more about submitting an article.
|
 |
|