Methods for Modeling Flexibility in Business Processes Jyoti M. Bhat, Nivedita Deshmukh Software Engineering and Technology Labs Infosys Technologies Limited, Bangalore, 560 100, Karnataka, India E-mail:
[email protected];
[email protected]
Abstract. Current approaches to business process definition using various modeling techniques allow business rules and alternate scenarios to be captured as part of the main business process logic. But this approach leaves the business experts/process owners with little flexibility to manage and control business processes which are subjected to dynamic changes in the business environment. Allowing the business process to evolve in an agile manner requires flexibility in the business process definition. In this paper we propose modeling methods which can be used to capture the flexibility dimensions of a business process. The aim is to define elements of flexibility and model these elements separately from the process logic at different levels of abstraction. This will help in designing a flexible business support system and also assist in analysis of the business process during process redesign. Further this approach provides the organization with an environment in which rapid changes in processes can be implemented effectively. We provide guidelines to apply the proposed methods for different requirements of flexibility in processes
1
Introduction
Business process modeling helps business analysts and engineers develop an abstraction which appropriately represents the final system being built and facilitates coordinated business process and system development by keeping the alignment between processes and systems [1]. This implies the model should capture all aspects of the business process like resources used, process logic, rules, business objects, participants, interactions, etc The basic business process (core process) which is the essence of the business is stable, but the procedures and mechanisms to handle breach of business rules, abnormal actions of the participants, policies, compliance and regulatory laws add to the complexity. Defining a business process comprehensively is not practical as the number of paths for a process may be too many to be modeled separately. Hence designing and modeling for flexibility is the way to handle this complexity problem. It is an established fact from Object Oriented methods that modularity is the key for managing complexity and providing flexibility. Modularity, by reducing interdependencies, facilitates easy maintenance and updates without impacting the entire system. The changes can be introduced into one part of the process without impacting the entire process system. The concept of modularity can be applied to business process definition to address the need of flexibility.
In this paper we primarily explore how the flexibility aspect of a business process can be modeled by using the concepts of modularity and granularity. We capture the aspects of a business process which contribute to its flexibility and examine the approaches in modeling and specifying these aspects. The approaches proposed would need to be supported suitably by modeling technology and the systems developed.
2 Flexibility of a business processes In the current dynamic and competitive business environment, the process models are subject to frequent and unavoidable change [2]. Flexible business process models implies the ability to change quickly (time) and at moderate cost (resource). The flexibility requirements of process are to be balanced with the cost implications. The life cycle of a process change has 3 stages (Fig. 1) i) Impact analysis (understand the business elements impacted) ii) Process redesign iii) Implementation (communicate the changes to all impacted). Process models developed with the right granularity and modularity considerably reduce the time and resource requirements. The granularity ensures that impact analysis and implementation verification is faster and complete; modularity eases process redesign and implementation without disturbing the entire system.
Fig. 1. Life cycle of business process change
Flexibility can be classified on the following dimensions • Flexibility in the process sequence: Ease of change in the sequence of activities and inputs to adapt to new lines of business, mergers & acquisitions, opportunities etc • Flexibility of the applicable business rules: Changes in the business rules and regulations, adaptation of new policies • Flexible practices: Ability to incorporate new practices evolved based on the improved knowledge of the members in the organization • Flexibility in handling process exceptions We approach the problem of flexibility from a modeling perspective and propose methods which will handle the dimensions of flexibility mentioned above.
3 Methods for modeling flexibility The methods proposed have been extensively researched by various groups to address different requirements in business process modeling [3][4][5][6] We propose these methods, from their ability to satisfy the needs of modeling flexibility aspect of process models.
3.1 Process hierarchy Process hierarchy for process workflows will ensure that a process/activity is defined at the right level of granularity and complexity [7]. The process model is organized as Business processes, process workflows, sub-processes and business procedures/tasks (Fig. 3). Business process: The processes to achieve the mandate given to a function/department are modeled at this level. These are further modeled as processes and sub process at the next level.
Fig. 2. Business Process Hierarchy
Process workflow: This model contains the detailed sequence of activities in the business process. The business activities are associated with business participants and work elements. Sub processes, modeled as separate workflows, are used within the process flows to ensure modularity and reuse of processes. Business Procedures or Tasks: This model captures detailed information on procedures required to execute the activities in the process workflow. It captures the “how” of the activities in the workflow, with clear assignment of user and system responsibilities to the individual tasks. Typically, all information elements that are transacted or used in the action are specified in this model. It also captures the logic on which the system action is carried out in a given task 3.2 Conditional elements: The most common way of introducing flexibility is by moving away from rigid predefined paths to providing the user with multiple and alternate paths of execution. The basic modeling constructs[8] consisting of Sequence, Exclusive Or Split (Choice), Exclusive Or Join (Merge), And Split (Fork), And Join (Synchronizer) are
used to achieve this (Fig. 3)1. In addition to the structural constraints, there are scheduling requirements, data and resource requirements which trigger the execution of the activities. These need to be captured as properties of the activity while modeling.
Fig. 3. Basic Modeling Constructs 3.3 Business Rules: Business rules are precise statements that control the execution of business process and activities. A business rule is an IF/THEN construct which compares a variable against a determined value and then issues a command when they match. The flexibility required is the variability which comes into the business rule. Consider the example of IF a person is senior citizen THEN issue a 5% discount Here, the variable information is - the age at which a person is considered a senior citizen and the amount of discount In the process hierarchy rules are associated with workflows and tasks. Rules need to be assigned various categories based on their types and subtype. Formal categorization of business rules facilitates analysis by providing associated and collective views of business rules and the associated activities. Some of the categories used [9]: • Process Execution: Business rules related to routing decisions, participant assignment policies, exception identification, triggers and closure points. • Business Events: Rules that dictate the reaction of the process to business events. • Regulations and Policies: Rules driven by compliance or policy requirements. • Constraints: Rules which emerge from operational/business constraints in the particular business domain. • Pricing/Billing: Rules emerging from changes in the pricing/billing strategies.
1
InFlux™ Workbench has been used to draw all the workflows and business procedures depicted in this paper. InFlux™ is registered trademark for the framework developed by Infosys Technologies Ltd
3.4 Norms: Norms reflect regularities in the behavior of members in an organization, allowing them to coordinate their actions. People may behave against a norm. Of the different types of norms, behavioral norms reflect the practices and rules in an organization. The social attitudes of obliged, permitted and prohibited are articulated as business behavior of must, may and must not. Von Wright [10] gives the various elements of a norm as • Authority for issuing the norm • Subject governed by the norm • Circumstance in which the norm is relevant • Occasion during which the norm is valid • The deontic attitude or modality • Action prescribed The following construct can be used for specifying a norm within an organization Whenever If Then Is To Specifying the norms during business modeling helps get a complete understanding of the business process. The process can be analyzed to identify the activities to be performed in case of a breach in modality of “obliged or prohibited” and to identify alternatives if the attitude is “permitted”. This helps ensure completeness in capturing the business process and determining the behavior of the system in performing certain tasks.
4 Modeling Flexible Business Process Methods proposed in the previous section when applied in modeling business process, address the dimensions of flexibility by ensuring modularity and granularity of the process (Table 1). These methods if supported by a suitable modeling tool will provide huge benefits during the entire life cycle of a process change. Flexibility Dimensions Flexibility of the process sequence Flexible Business rules Flexible practices Flexibile exception handling (Anticipated) Flexibile exception handling (unanticipated)
Modeling methods Process Hierarchy, Conditional elements Externalization of rules Business tasks, Norms Conditional elemenets, exception workflows, Norms & rules Exception workflows
Table 1. Application of modeling methods We explore the application of the proposed methods using the example of a Service fulfillment process of ABC Com, a telecom company. The order entry workflow of the process will be used for further discussion The process hierarchy with the first two levels of business process and process workflows is shown in Fig.4..
Fig. 4. Service fulfillment process with Order entry workflow
ABC Com announces a discount scheme to attract customers and remain competitive in the existing price war in the telecom sector. The scheme offers 500 minutes free talk time on local calls for landline connections, valid for the next 3 months for customers who have been with ABC for at least a year. Customers need to call in to confirm their credentials to avail the scheme. ABC needs to effect this process change quickly and without affecting normal operations. The process change has a defined life span (3months) and has impact on various process workflows like call center process and billing. A new sequence of activities with a finite lifetime and other elements like business rules to govern the process, get added on to the call center processes as shown in Fig 4. The modularity of the process by maintaining the process hierarchy and granularity ensures quick implementation of the required changes Business rules are captured at the relevant modeling element and category like the ones shown. Impact analysis and changes will be easier and quicker whenever any change is required like addition of new products, change in standard delivery dates due to service level changes etc. Every business evolves practices based on its experience like the practice adopted for the “negotiate date” activity. These practices are modeled as norms as they are not absolute expressions of cause-effect. They capture the knowledge of the organization and indicate requirements for data gathering and retention activities in the business process support system. In this case the information related to job orders and personnel availability for service provisioning and testing would need to be made available to the call center representative. Alternatively we could also model the practice as a series of tasks depicted as business tasks at the third level of the process hierarchy. Practices may not always be implemented using systems. This ensures the control requirements of the process from regulations & business rules are adhered to by the system while providing the leniency to the user to execute the tasks as appropriate. Handling anticipated exceptions would involve identifying alternate paths to the standard flow of the process and modeling those using conditional elements, rules or norms depending on the process level at which the exception occurs. The credit rating check handles anticipated exception and has been embedded into the process. How would a ‘no credit record’ be handled? As a norm? An exception workflow is another method of modeling exceptions, which maintains true modularity of the process. In the above example any exception (anticipated or unanticipated) would mean a deviation from the standard flow of the service fulfillment process. These exceptions can be modeled as separate workflows like an Order cancellation workflow, Modify order workflow, etc. Another point to note is that such exceptions are usually handled by a separate function in a truly modular process like the function responsible for the order management process in the above case. An event like a natural disaster would mean ABC Com will not be able to fulfill the connection request in a particular area. This unanticipated exception can be modeled as a separate workflow which involves the service provisioning and customer service functions interacting with the customer. We have provided guidelines on applying the modeling methods for different requirements of flexibility in processes with a very simplified example. More detailed guidelines can be developed based on further categorization of the dimensions of flexibility and specifying the modeling method to be adopted.
5 Conclusion Modeling flexible business processes using the proposed methods requires powerful integration of tool and methodology components to elicit, validate and maintain the traceability between process definition and enactment. The methods discussed provide a structured approach to capture business process model at various levels of abstraction while incorporating elements of flexibility. The approach recommends modeling the business process logic separate from the flexibility elements to enable changes to the process definition by modifying the flexible elements seamlessly across the entire process model. A modeling tool which supports the modularity of the process definitions will provide powerful analysis support during the impact analysis phase of the process change life cycle. Further it enables reuse of the process definition and flexibility elements to the other processes thereby significantly reducing the implementation time. Other approaches adopted to address the variability in business processes during modeling are knowledge based methods like the MIT Process Handbook project, business reference models and ontology-based systems. There has been considerable amount of work done on designing and implementing business process support systems by workflow systems, rule engines and BPMS technologies which are working towards supporting flexible business processes.
References 1. Rumbaugh, J.: Models through the development process. Journal of Object-oriented Programming, Vol. 10, No. 2. (1997) 2. Davenport, T.H.: Process Innovation – Reengineering work through information technology. Harvard Business School Press, Boston. (1993) 3. Sadiq, S.W. and Orlowska, M.E.,: On capturing Exceptions in Workflow Models. Proceedings of the 4th International Conference on Business Information Systems, Poland, Apr. 2000. 4. Liu, K. and Ong,T.: A Modelling Approach for Handling Business rules and Exceptions. The Computer Journal, Vol. 42, No.3 (1999) 5. Dellarocas, C. and Klein, M.: A Knowledge-based Approach to handling Exceptions in business processes. Information Technology and Management, Vol. 1. (Jan 2000) 6. Hailstone, R.: Business Agility Through Adaptable Rules — The Case for the Business Rule Management System. IDC White Paper. (2004) 7. Supply Chain Council: SCOR model Ver 6.1. www.supply-chian.org. 2004 8. Workflow Management Coalition (1995): The Workflow Reference Model. Document Number TC00-1003, Issue 1.1. (Jan95) 9. Faget, J., Marin, M., Mégard, P.,Owens, V. J. and Tarin, L.: Business Processes and Business Rules: Business Agility Becomes Real. Workflow Handbook 2003, Future Strategies Inc., in collaboration with Workflow Management Coalition (2003) 10. Wright, V.G.H.: Norms and Action – a logical enquiry. Routledge & Kegan Paul, New York (1963)