The present invention relates to the field of business models and, more particularly, to a method and system for business process adaptation using goal modeling and analysis.
At present, process orientation is a dominant paradigm for businesses. There are many definitions of what a business process (BP) is, but in general a BP is seen as a collection of activities that achieves some business purpose or objective aiming to create value for customers. So, business processes specify ways to achieve business goals. Thus, it seems to be natural for business process modeling methods to include facilities for modeling these goals. Unfortunately, most popular BP modeling approaches such as Business Process Modeling Notation (BPMN) or Event-Driven Process Chains (EPCs) are workflow-level notations. They capture processes at a workflow level, in terms of activities, flows, and so forth. However, these notations do not allow the analysis of process alternatives in terms of high-level quality attributes or business goals and thus do not provide traceability of BP alternatives to requirements.
Business processes defined at the workflow level specify the sequence of tasks that are to be carried out by various roles within an organization and/or by various automated systems to deliver a service/product to a customer. In general, workflow-level process specifications do not capture the intentions behind business activities. Thus, it is difficult to understand why a BP is defined as it is and what a certain modification can do to the process itself and to its quality characteristics.
There are, nevertheless, BP modeling approaches that explicitly capture and refine business goals. These approaches do not model quality characteristics of processes explicitly. Similarly, they do not model process variations (process variability) and how they affect the important quality attributes of the processes.
Due to the need to accommodate changing business priorities as well as business cases with varying characteristics (for example, customers with different preferences), business process specifications need to be flexible as well as capable of being configured and reconfigured appropriately. Currently, techniques as diverse as business rules and late modeling are used for changing workflow-based BPs.
Most techniques for manual BP adaptation require the extensive knowledge of the process and, possibly, the modeling notation to be effectively applied thus making it difficult for non-technical users to configure or adapt BPs. In terms of automatic BP reconfiguration, certain automations are currently included in workflow management systems. These include, for example, the automated escalation and/or reassignment of unclaimed or unfinished tasks.
However, these approaches and techniques are quite low-level and the possible configurations are not explicitly evaluated with respect to business goals and priorities. Thus, it is hard to select process alternatives with desired non-functional characteristics or request a modification of a business process to automatically improve certain process characteristics. The rationale behind reconfiguration possibilities (e.g., in a business rule) is not usually documented.
Most current BP modeling notations do not emphasize the modeling of business process variability. Rather, they eliminate the alternatives/configurations that are deemed infeasible, and instead concentrate on a single chosen alternative. This leads to business processes that may be optimal at the deployment time, but which are very difficult to reconfigure/adapt in case of changing business environment or process execution failures. Some of the discarded alternatives may now become the optimal configurations or otherwise viable alternatives. Nevertheless, none of the approaches in BP management currently allow a systematic modeling of process alternatives and their characteristics.
While some research has focused on certain limited aspects of variability in business process models, the proposed solutions are not easily accessible to non-technical people. Similarly, research on configurable BPEL processes so far mostly concentrated on low-level configurability that may not be visible to process users.
An approach for a requirements-driven design of autonomic software systems as contemplated herein emphasizes the elicitation of goals behind software systems and the modeling of (usually user-visible) alternative ways for achieving those goals. The modeling approach presented in the embodiments herein address several problems including the problem of automatic or semi-automatic adaptation of business processes based on the changes in business requirements and/or the data collected from deployed business processes.
In one embodiment, a business process (BP) adaptation system can include a High-Variability enriched Goal Model (HVGM) that captures and refines goals of a business process while modeling alternative options in which goals can be attained, where the model captures non-functional or quality attributes used in an evaluation of a performance of the business process and an estimation of how various BP alternatives affect the quality attributes, and a High-Variability workflow-level/directly Executable Model (HVEM) of the business process, which is semi-automatically generated from the HVGM.
In another embodiment, a business process (BP) adaptation system can include a High-Variability enriched Goal Model (HVGM) that captures and refines goals of a business process while modeling alternative options in which goals can be attained where the model captures non-functional or quality attributes used in an evaluation of a performance of the business process and an estimation of how various BP alternatives affect the quality attributes. The system can further include a High-Variability workflow-level/directly Executable Model (HVEM) of the business process, which is semi-automatically generated from the HVGM where the system is based on goal modeling and analysis for eliciting intentions behind a business process to achieve a desired goal, and the HVGM explicitly models non-functional or quality concerns. The system can further include a semi-automatic generator of business process metrics based on the quality attributes specified in the HVGM and a runtime infrastructure, where each deployed BP instance reflects a configuration selected for that instance in a corresponding portion of the HVGM. The runtime infrastructure can further include an external monitoring tool for monitoring and analyzing information collected at runtime to enable automated reconfiguration of a deployed HVEM to improve performance in terms of a desired satisfaction level of quality attributes and their relative priorities or to recover from failures by selecting alternative configuration in the set of BP configurations modeled in the HVGM and implemented in HVEM.
It should be noted that various aspects of the invention can be implemented as a program for controlling computing equipment to implement the functions described herein, or a program for enabling computing equipment to perform processes corresponding to the steps disclosed herein. This program may be provided by storing the program in a magnetic disk, an optical disk, a semiconductor memory, any other recording medium, or can also be provided as a digitally encoded signal conveyed via a carrier wave. The described program can be a single program or can be implemented as multiple subprograms, each of which interact within a single computing device or interact in a distributed fashion across a network space.
There are shown in the drawings, embodiments which are presently preferred, it being understood, however, that the invention is not limited to the precise arrangements and instrumentalities shown.
The embodiments as shown in
Additionally, a system or method as contemplated herein can further include a runtime infrastructure where each deployed BP instance reflects the configuration selected for that instance in the corresponding HVGM. The infrastructure allows for functions such as configuring the deployed HVEM based on the selected configuration in the corresponding HVGM. The configuration can be specified in terms of desired satisfaction levels of quality attributes and their relative priorities. Analysis of the deployed BP instances can be based on the monitoring information collected at runtime by an external monitoring tool (for example, by IBM's WebSphere Business Monitor) which can further enable automated reconfiguration of the deployed HVEM to improve the model's performance (in terms of improving the positive contribution to the quality attributes of the process) or to recover from failures by selecting alternative configurations in the set of process configurations modeled in the HVGM and implemented in HVEM. The selection of the new BP configuration out of a finite set of predefined BP configurations is done at the intentional level, in terms of business goals and high-level quality attributes. “Intentional level” in this context can mean attempting to understand what a human is trying to do in an attempt to emulate a task to achieve an intended goal without necessarily matching the steps a human would actually tale.
Among the advantages of such a modeling approach include the ability to develop BP models from the intentional perspective in terms of the business goals they achieve. Such arrangement also allows for a systematic specification and analysis of alternative ways of achieving the identified business goals. Non-functional (quality) requirements can also be explicitly represented and analyzed. Such models also allow for a semi-automatic generation of workflow-level executable high-variability BPs. Further note that the HVEMs can be configured or based on the HVGMs since the traceability between the higher-level intentional model of a BP (HVGM) and the deployed HVEM is preserved. This characteristic also allows non-technical users to configure deployed BPs. HVGMs can also be used to present the space of BP alternatives and the currently selected alternative to business stakeholders in high-level terms. The automated tuning, healing and configuration of deployed BPs can be done (albeit within the scope of the deployed alternatives) by non-technical user (and technical users alike).
Referring to
The conflicts can be resolved based on setting the priorities of softgoals. Given the desired satisfaction levels for softgoals and the prioritization among them, an automated reasoning algorithm can determine the BP alternative(s) that are the best for achieving those satisfaction levels. Different stakeholders at different times may have different desired satisfaction levels for the quality concerns. For example, some customers may prefer faster deliveries (for example, the softgoal Performance can be given the highest priority), while others may choose to save money (where minimizing Customer Cost can be of the highest priority instead). The alternative configurations 202 or 204 of the alternatives 200 are shown in
The Goal models as contemplated herein can also include additional enrichments. While goal models as described above can be used for the analysis of business process requirements, these models can also be used to semi-automatically generate workflow-level BP specifications. The model should capture more information than a basic goal model allows. Goal model annotations as shown in
Referring to
Further note, special consideration is given to the mapping of variation points. These are the main configuration points for the business process. In the embodiments, a HVEM can be automatically configured based on the configuration of a corresponding HVGM. Thus, HVEMs can be specified in a way that allows them to get the appropriate configuration from a runtime infrastructure.
Referring to
With respect to specifications for business measures, goal models can be used to help in the specification of business measures models that are used to analyze the performance of business processes. Softgoals that represent important quality requirements for business processes capture at a high level the metrics that are used to analyze or compare various BP alternatives specified in HVGMs. They play a role not unlike business measures or Key Performance Indicators (KPIs) in traditional business process management. However, softgoals in basic goal models do not correspond to any monitored and measurable quantities. Rather, they are imprecise and subjective. The embodiments herein can use softgoals as a starting point for the development of a precise or quantitative business measures model. In order to do that, softgoals need to be metricized (refined into measurable metrics). In some domains, such metrics are well-defined and well-accepted. For example, a popular metric for reliability (a high-level quality attribute) is the mean time between failures.
In general, domain-independent quality attributes such as cost, time, and others can be easily mapped into low-level metrics that existing monitoring tools such as the WebSphere Business Monitor can capture. However, certain other softgoals are much more difficult to metricize. Overall, however, KPIs can be derived from important softgoals by metricizing these softgoals and by providing the desired value or range for the obtained metric. At this stage, some of the qualitative contribution links in goal models can be replaced with expressions.
Referring to
With reference to
The process illustrated in
The first component involves the refinement of non-functional requirements specified qualitatively into measurable KPIs/metrics. For business process performance measurement, a high-level user's expectations of processes have to be linked with the data about the deployed BP instances that can be collected with the help of BP monitoring infrastructures (such as the WebSphere Business Monitor). High-level qualitative metrics (softgoals) such as “(Maximize) Performance” are refined into lower-level metrics (KPIs) and down to the metrics directly measurable by the chosen BP monitoring solution. Correlations among various quality dimensions (for example, cost versus performance) can be explicitly specified at various levels of abstraction (for example, it is possible to specify that higher Performance increases the Cost at the level of softgoals or to say that improving the process running time by 10% increases the cost of the process by 15%). The derivation of BP configurations from high-level qualitative preferences over softgoals can make it fairly easy for non-technical users to influence the configuration and adaptation of BPs. It also supports traceability from KPIs/low-level metrics to high-level quality requirements for the BP.
A second component involves analysis and adaptation of BPs at a high level based on the data collected by the BP monitoring infrastructure. During the execution of a deployed BP, the metrics produced by the BP monitoring system (Step 6 in
However, if expectations are not met, the space of alternatives specified in the HVGM and thus implemented by the HVEM can be analyzed in order to find a better alternative (Step 8 in
The present invention may be realized in hardware, software, or a combination of hardware and software. The present invention may be realized in a centralized fashion in one computer system or in a distributed fashion where different elements are spread across several interconnected computer systems. Any kind of computer system or other apparatus adapted for carrying out the methods described herein is suited. A typical combination of hardware and software may be a general purpose computer system with a computer program that, when being loaded and executed, controls the computer system such that it carries out the methods described herein.
The present invention also may be embedded in a computer program product, which comprises all the features enabling the implementation of the methods described herein, and which when loaded in a computer system is able to carry out these methods. Computer program in the present context means any expression, in any language, code or notation, of a set of instructions intended to cause a system having an information processing capability to perform a particular function either directly or after either or both of the following: a) conversion to another language, code or notation; b) reproduction in a different material form.
This invention may be embodied in other forms without departing from the spirit or essential attributes thereof. Accordingly, reference should be made to the following claims, rather than to the foregoing specification, as indicating the scope of the invention.