(A revised version of this paper appears in IEEE Expert, August 1996, pp. 16-23, under the title "AI Models for Business Process Reengineering".)
In response to competitive pressures, customer demands and ever-changing regulatory conditions, many companies are fundamentally rethinking the way they do business (e.g., [Davenport93] [Hammer93]). During this business re-engineering process it is important to be able to clearly link production processes and organizational services to business goals and objectives. Artificial Intelligence in general and Knowledge Representation in particular can greatly contribute towards technologies which enable the modeling of organizations and the analysis of alternatives in support of the business re-engineering process.
For example, in attempting to re-design claims processing,an insurance company might ask questions such as:
Traditional modeling techniques such as structured analysis, data flow diagrams and entity-relationship modelling focus on the modelling of activities and entities. While these are important concepts for systems development, they offer little help in the search for innovative alternative solutions to business problems. More generally, existing models have been designed for describing what a business process is like, but they cannot express why the process is the way it is. The motivations, intents and rationales behind the activities and entities are missing from these models. Most business processes involve many participants or players, with complex relationships among them. These relationships are strategic in the sense that each party is concerned about opportunities and vulnerabilities, and seek to protect or further their interests in an attempt to redesign the organization. Indeed, a central argument in business process reengineering is that if one does not understand why things are done the way they are, one is likely to simply automate outdated processes (leading to the proverbial ``paving of the cow path''), and miss the opportunity to innovative in redesigning work processes.
In the insurance example, the insurance company wants to minimize the payout to claimants, that is why appraisers are hired to keep repairs to the necessary minimum. At the same time, the insurance company wants to keep customers happy so that they continue to renew their policies. Car owners want repair damages to be assessed fairly, and are likely to get body shops to give repair estimates that maximize the insurance payout. What information is collected and used by the claims representative (accident particulars, witness statements) and the appraiser (e.g., photographs of damage, multiple repair estimates) reflects the strategic interests of the various parties.
In choosing among alternative business processes, analysts need to be able to describe these relationships, and to propose and argue about solutions from strategic perspectives. Currently there is little formal support for this kind of reasoning. Business process design is usually done informally, and particular design decisions are hard to relate to business objectives.
This paper sketches a new framework for modeling and analyzing organizations to help support business process re-engineering [Yu95]. The framework is based partly on a model called i* (for ''distributed intensionality'') where processes are taken to involve social actors who depend on each other for goals to be achieved, tasks to be performed, and resources to be furnished. The i* framework includes a Strategic Dependency model -- for describing the network of relationships among actors, and a Strategic Rationale model -- for describing and supporting the reasoning that each actor has about its relationships with other actors. These models have been formally represented in the conceptual modelling language Telos [Mylopoulos90] and their semantics are based on intentional concepts such as goal, belief, ability, and commitment (e.g., [Cohen90]).
The framework has been presented in detail in [Yu95] and has been related to different application areas, including information systems requirements engineering, business process reengineering, and software processes [Yu94]. In this paper, we emphasize the need for analysts to link organizational design decisions to strategic business reasoning, using a hypothetical example from the insurance industry (also described in [Hammer93]). We also outline the importance of analysis tools for the proposed new modeling framework and sketch an analysis toolset under development at the University of Toronto.
The other major research component on which we base this proposal originates in the Cognitive Robotics project, also based at the University of Toronto, which has developed an elaborate framework for representing and reasoning about action. This framework has led to the development of a prototype tool for modelling possibly complex, concurrent actions, using a declarative, logic-based language -- called CONGOLOG -- whose execution can then be simulated for analysis purposes using an interpreter.
2. The Strategic Dependency Model
A Strategic Dependency model is a graph, where each node represents an actor, and each link between two actors indicates that one actor depends on the other for something in order that the former may attain some goal. We call the depending actor the depender, and the actor who is depended upon the dependee. The object around which the dependency centres is called the dependum. By depending on another actor for a dependum, an actor is
able to achieve goals that it is otherwise unable to achieve, or not as easily or as well. At the same time, the depender becomes vulnerable. If the dependee fails to deliver the dependum, the depender would be adversely affected in its ability to achieve its goals.
For example, a car owner can have his car repaired by a body shop, even if he does not have the ability to do the repairs himself. However, he is vulnerable to the car not being repaired. The model distinguishes among four types of dependencies -- goal-, task resource-, and softgoal-dependency -- based on the type of freedom that is allowed in the relationship between depender and dependee. Three levels of dependency strengths are distinguished based on the degree of vulnerability.
Figure 1 shows a Strategic Dependency model for a traditional automobile insurance business configuration. The car owner depends on the insurance company to reimburse for the repairs from an accident (ClaimsPayout). For this, car owner pays insurance premium in order to have coverage (RepairsBeCovered). The insurance company wants to offer good service to the customer in order to keep the business (CustomerBeHappy). To maintain profitability, the company depends on appraisers to appraise damages so that only the minimal necessary repairs are approved. The car owner depends on the claims appraiser for a fair appraisal. However, the appraiser can be expected to act in the interests of the insurance company because of his dependence on the latter for continued employment. The car owner, in turn, can depend on the body shop to give an estimate that maximizes the car owner's interests, since the body shop depends on the car owner for repeat business.
Figure 1: Strategic Dependency model of traditional auto insurance (the "as is" arrangement)
An analysis of such strategic dependencies at a more detailed level would reveal the role of these dependencies in current business processes. Such processes -- and the information systems that support them -- have this kind of understanding entrenched as implicit assumptions. These assumptions are often ignored during organizational analysis because existing modelling techniques do not encourage or support the modelling of relationships that involve intentional concepts. Without this deeper understanding, it is difficult to evolve the organization to meet changing needs, as evidenced by the problem of ``legacy business processes'', as well as ''legacy information systems''. With rapid changes in business environments, and recent management concepts such as business reengineering, well-entrenched relationships are being re-examined and radically reconfigured. Traditional business patterns and assumptions can no longer be taken for granted.
Hammer and Champy ([Hammer93] pp. 136-143) describes a hypothetical but plausible scene in which a process redesign team explores new innovative solutions to revitalize an automobile insurance business. Since it costs as much to process a small claim as a large claim, one way to reduce administrative costs is to reduce insurance company involvement in dealing with small claims. ``Why not let the insurance agent handle small claims?'', it was suggested. The insurance agent will do all the inquiry and payout, while the insurance
company will concentrate on large claims that have more significant impact on profitability. The agent get to cement his relationship with the customer, while the customer is more likely to get a fair hearing from the agent about a fair payout amount. This keeps the customer happy, which is what the insurance company wants.
Figure 2: Strategic Dependency model for alternative 1 ("let the insurance agent handle it")
Figure 2 shows the Strategic Dependency graph for this new business process configuration. Needless to say, shifting the claims handling responsibilities to the insurance
agent means that the information needs of the insurance agent are also radically altered. Based on the new configuration of strategic dependencies, one could derive what information needs to be shared or sent among insurance agents and the insurance company, and how accurate and up-to-date they need to be.
Once the traditional wisdom of how an insurance business should be run is no longer regarded as sacred, even more radical solutions could emerge. ``Why not let the body shop handle the claims?!'', someone else suggested. Traditionally, body shops are not likely to be on the side of the insurance company. For example, one would not expect an insurance company to be willing to pay according to a body shop's repair estimates, since the body shop is on the customer's side, as illustrated by the strategic dependencies in Figure 1. However, for small claims, it may not be a bad idea to bypass all the paperwork and help the customer get his car fixed as quickly as possible. This meets the customer's goal to have his car fixed promptly, while reducing costs dramatically for the insurance company. However, this approach raises concerns about possible fraud, which need to be addressed. Figure 3 shows the Strategic Dependency model for this proposal.
Figure 3: Strategic Dependency model for alternative 2 ("let the body shop handle it")
The Strategic Dependency model encourages a deeper understanding of a business process by focusing on intentional dependencies among actors, beyond the usual understanding based on activities and entity flows. It helps identify what is at stake, for whom, and what impacts are likely if a dependency fails.
Although a Strategic Dependency model provide hints about why a process is structured in a certain way, it does not sufficiently support the process of suggesting, exploring, and evaluating alternative solutions. That is the role of the Strategic Rationale model.
3. The Strategic Rationale Model
A Strategic Rationale model is a graph with four main types of nodes -- goal, task, resource, and softgoal -- and two main types of links -- means-ends links and task decomposition links. A Strategic Rationale graph describes the reasoning behind each actor's relationships with other actors, thus revealing the internal linkages that connect external strategic dependencies.
A process is often depicted as a collection of activities with entity flows among them (as in a ``workflow'' analysis). For example, a claims handling process would include such activities as verifying the insurance policy coverage, collecting accident information, determining who is at fault, appraising damages, and making an offer to settle. In the Strategic Rationale model, we arrange these into a hierarchy of means-ends relationships and task decompositions (Figure 4). When a process element is expressed as a goal, this means that there might be different possible ways of accomplishing it. A task specifies one particular way of doing things (of accomplishing a goal), in terms of a decomposition into
Figure 4: Strategic Rationale model to support reasoning about reengineering the claims handling process
subtasks, subgoals, resources, and softgoals. In seeking ways to redesign a business process, goals offer potential places to look for improvement. An ambitious redesign effort needs to discover and rethink high-level goals -- by asking ``why'' questions, rather than be content with solutions for low-level goals. Higher goals are discovered by asking ``why'' questions. Once sufficiently high-level goals have been identified, alternatives may be sought by asking ``how else'' the goals can be accomplished.
In the auto insurance example described in [Hammer93], the reengineering team wanted to
consider radical solutions, by identifying a high-level goal: that claims be settled. Unencumbered by current business thinking about how this goal should be accomplished, the team arrived at innovative proposals that involve new strategic business relationships with insurance agents and body shops.
Each alternative may have different implications for a number of quality goals, or ``softgoals'', such as CustomerBeHappy, FastProcessing, and Profitable. A softgoal is one which does not have a priori, clear-cut criteria of satisfaction. Although some of these can be measured and quantified, a qualitative approach can be used at the stage of exploring the space of alternatives. Contributions to softgoals can be positive or negative, and are judged to be adequate or inadequate. The treatment of softgoals is based on a framework developed by Chung for dealing with non-functional requirements in software engineering [Chung93].
By explicitly representing means-ends relationships, the Strategic Rationale model provides a systematic way for exploring the space of possible new process designs. Generic knowledge in the form of methods and rules can be used to suggest new solutions and to identify related goals [Yu95] .
4. The Business Process Model
Most existing process models are deficient in that they cannot deal with partial descriptions of world states. They only describe processes operationally, i.e., in terms of operations that produce new output states given completely specified input states. Analysis of such models involves stepping through a process by instantiating it with a full description of a world state. However, business processes have uncertainties and are frequently open-ended or only partially specified. For our purposes, it is important to be able to specify and analyze partial models of business processes in the context of partial models of the world.
To address this problem, we are adapting a logical framework for representing and reasoning about processes [Lesperance94, Lesperance95] which has previously been used for designing intelligent software agents and can deal with incompleteness in business process specifications. Primitive actions are modeled by specifying their preconditions and postconditions in a logical language. Given a specification for a set of primitive actions, the analyst can then specify complex processes using a variety of control structures, including nondeterminisic choice and concurrent execution. An example is shown in Figure 5.
The set of process expressions defined can be viewed as a declarative modelling language for business processes. The modelling constructs supported by the framework include sequencing (';'), conditional (if-then) and iterative constructs (while <condition> do...) but also concurrent activity ('||'), non-deterministic choice (choose) and others. An interpreter for the language has been implemented in PROLOG which supports the simulation of a modeled process. Particularly noteworthy features of the
% concurrently obtain vehicle and medical appraisals
choose v [VehicleAppraiser(v)?; % pick an appraiser for vehicle
if ClaimInvolvesMedicalExpenses(claim) then
choose m [ MedicalAppraiser(m)?; % pick a medical appraiser
Process specifications can be analyzed in the framework using a variety of sophisticated reasoning methods. Moreover, the framework can be used for proving properties of processes in addition to simulation and validation. Finally, the framework includes a model of what agents know and how they can acquire additional information by doing knowledge-producing actions, such as communicating with users or other agents or searching the environment for information.
In addition to business process analysis applications [Plexousakis95], the framework has been used for robotics applications [Lesperance94] and intelligent software agent applications (e.g. meeting scheduling) [Lesperance95].
5. Tools for Analyzing Organizational Models
Apart from offering an inadequate ontology for organizational modelling, traditional organizational modelling techniques can be criticized for offering little for the analysis of organizational models. In designing the proposed new framework described in this paper, we have kept in mind the need to provide supporting analysis tools which will facilitate a re-engineering exercise by helping with the validation and verification of an organizational model under development, also by facilitating the exploration of design alternatives. Working towards this goal, we have been designing an analysis toolset using results from a variety of research projects.
The individual tools in the tool set are described in more detail below:
A Strategic Relationships Analysis Tool. This tool is based on the Strategic Dependency model of the framework. Business processes are modelled as a network of dependency relationships among agents in an organization. Agents depend on each other for goals to be achieved, tasks to be performed, and resources to be furnished. Dependencies may be threaded through roles that agents play, and positions that they occupy. These dependencies have strategic implications for agents because on the one hand, they open up opportunities (by enabling agents to achieve goals not otherwise achievable, or not as well), but on the other hand, they bring vulnerabilities (since the depended agents may fail to deliver).
This tool allows the network of strategic dependencies among agents (and positions and roles) to be constructed, refined and analyzed, including the analysis of opportunities and vulnerabilities, and analysis of patterns of dependencies based on the concepts of enforcement, assurance, and insurance. The tool also includes a graphic user interface for presenting and manipulating the model.
For example, this tool might be used to construct and analyze the claim-processing model of Figure 1 (or its alternatives, for that matter), noting goals that are not being achieved, tasks that are not being accomplished or resources that are not being furnished. The tool can also note long chains of dependencies that suggest vunerabilities, or dependency patterns which define conflict-of-interest situations.
A Strategic Relationships Redesign Tool. This tool is based on the Strategic Rationale model of the framework. and provides explicit support for the means-ends reasoning behind the design of business processes. The basic idea of this tool is that one can obtain an understanding of the ``why'' behind process elements (or steps) by following (querying) their links to process design goals (``up'' the means-ends hierarchy), extending the rationale model when appropriate . Alternatively, given some design goals, one can explore alternative ways for achieving them (proceeding ``down'' the means-ends hierarchy). This could be assisted by generic means-ends knowledge (e.g., methods for reducing errors, for preventing fraud, etc.) that are stored in a knowledge base, using knowledge structuring mechanisms such as classification and generalization. Moreover, correlation rules [Chung93] can be used to assist in the detection of cross-impacts among goals and in identifying design tradeoffs.We expect the usage of this tool to be highly interactive and iterative.
One of the challenges in constructing such a tool is to collect a representative body of means-ends knowledge in business process redesign to illustrate the practical utility of this tool. A first step towards this goal has been the collection of methods for achieving security, accuracy and performance softgoals in the context of non-functional requirements for information system design [Chung93].
A Qualitative Reasoning Support Tool. This tool is an adaptation of work also described in [Chung93] and is intended to facilitate the analysis of a collection of inter-dependent softgoals. In particular, given a softgoal dependency graph and a list of satisficed and unsatisficeable softgoal nodes, the tool can ''label'' other softgoals as satisficed, unsatisficeable or otherwise, depending on the types and destinations of the inter-dependencies for each softgoal. The algorithms for propagating labels across the softgoal dependency graph are based on qualitative reasoning techniques and are described in detail in [Chung93].
A prototype version of this tool already exists, called the NFR Assistant, and has been tried out in toy applications. It should be noted that the qualitative component of design reasoning is essential in supporting business process redesign. While quantitative measures are important in evaluating finished designs, they are of limited use during the iterative design phase when many competing (or complementary) goals need to be traded off and new alternatives explored. There is virtually no support for this type of analysis in existing tools.
A Process Model Validation Tool. This tool provides support for validating a process model, that is, confirming that it is consistent with the modeller's understanding of the process. Validation is accomplished by allowing the user to simulate the execution of a process. Given a description of the conditions in effect at the beginning of a business process, the tool answers queries about the state of world as the process proceeds. The tool offers a declarative language for process specification and can simulate processes even when a process or its initial state are only partially specified.
This tool under development is based on the CONGOLOG interpreter mentioned earlier. Given a process specification and a partial description of an organizational state, the simulation tool is intended to answer questions about the state of the organization during and after the process has been carried out. Such symbolic simulations require a sophisticated theoretical foundation for reasoning about action, including dealing with the frame problem, i.e., discovering through a computationally tractable procedure all things that do not change by the specified process.
A Process Verification Tool. Along similar grounds, the process verification tool is intended to assist with verifying that a specified process satisfies given properties, in particular, state constraints (analogous to integrity constraints in databases). Given a set of process specifications and a set of constraints that have to be maintained by the process, the tool will suggest strengthened specifications to ensure that the constraints will be maintained. [Plexousakis95] describes results concerning static or transition constraints. On-going work by the same author is looking at extension of the analysis to more general temporal constraints.
Like the validation tool, this tool needs to address long-standing AI problems such as the frame and ramification problems. It is important to note that although these two tools are based on the same theoretical foundation, they are expected to use different inference engines, based on different algorithms and capable of dealing with different classes of problems.
Toolset Integration. Although these tools are being designed relatively independently of each other, they are anticipated to work synergistically through the knowledge management layer in the subsequent integration. The integration is to be accomplished through an open architecture, shown in Figure 5.
The architecture employs a message bus , whose function is to serve as information interchange among tools which were developed independently but can benefit from information sharing. The particular bus we propose to use is called the Telos Message Bus and was developed in the context of a software engineering research project. In its current form, the bus uses an extensible object model called Telos [Mylopoulos90], along with a message-based communication protocol system called mbus. In addition, the integration architecture includes a repository which stores sharable information among the integrated tools, using the Telos model (Figure 6). The integration architecture is further described in [Mylopoulos94]. The repository has already been implemented in C++ using a commercial object-oriented database system as its persistent storage manager.
As organizations strive to keep up with ever-changing customer demands and market needs, there will be growing demands for modelling and analysis tools that help capture and analyze the strategic relationships among business work units and external players, such as customers, suppliers, and business partners. We have sketched one approach which accommodates such organizational modelling and analysis, and is founded on the premise that organizations are made up of strategic, intentional actors. The Strategic Dependency model allows the modelling of how strategic actors relate to each other intentionally, while the Strategic Rationale model allows modelling of the means-ends reasoning employed by organizational actors as they explore alternative ways of relating to each other in fullfiling goals and accomplishing work. The Business Process model offers a declarative, logic-based notation for modelling, verifying and validating business processes. These models and their associated tools incorporate a number of AI techniques, including means-ends analysis, qualitative reasoning, agent modelling and theories of action. We are currently working towards the integration of the three models into a single framework we propose to call Tropos.
In summary, we have argued that the adoption of a knowledge representation and reasoning approach to organizational modelling and re-engineering facilitates the connection between business processes and underlying business objectives. It also provides the formal foundation for a number of different analysis tools that can help the re-engineer explore alternatives and lend credibility to the product of her work.
It is interesting to note that the models constructed in terms of our proposed framework can also facilitate the development of information systems to support the re-engineered business processes.
[Chung93] Chung, K., L., Representing and Using Non-Functional Requirements, Ph.D. thesis, Department of Computer Science, University of Toronto, 1993.
[Cohen90] P. R. Cohen and H. J. Levesque, Intention is Choice with Commitment, Artificial Intelligence 42 (3), 1990.
[Davenport93] T. H. Davenport, Process Innovation: Reengineering Work Through Information Technology, Harvard Business School Press, 1993.
[Hammer93] M. Hammer and J. Champy, Reengineering the Corporation: A Manifesto for Business Revolution, HarperBusiness, 1993.
[Lesperance94] Y. Lesperance, H. Levesque, F. Lin, D. Marcu, R. Reiter, and R. Scherl, A Logical Approach to High-Level Robot Programming -- A Progress Report. In Benjamin Kuipers, editor, Control of the Physical World by Intelligent Systems, Papers from the 1994 AAAI Fall Symposium, pp. 79-85, New Orleans, LA, November, 1994.
[Lesperance95] Y. Lesperance, H. Levesque, F. Lin, D. Marcu, R. Reiter, and R. Scherl. Foundations of a Logical Approach to Agent Programming. A French version appeared in Actes des Troisiemes Journees Francophones sur l'Intelligence Artificielle Distribuee et les Systemes Multi-Agents, Chambery-St-Badolph, France, March, 1995.
[Mylopoulos90] J. Mylopoulos, A. Borgida, M. Jarke, M. Koubarakis, Telos: Representing Knowledge about Information Systems, ACM Transactions on. Information Systems 8 (4), 1990.
[Mylopoulos94] Mylopoulos, J., Bernstein, M., Ewart, G., Kontogiannis, K., Merlo, E., De Mori, R., Mueller, H., Stanley, M., Tilley, S., Tomic, M. and Wong, K., Towards an Integrated Toolset for Program Understanding, Proceedings CASCON'94, Toronto, November 1994.
[Plexousakis95] D. Plexousakis, On the Efficient Enforcement of Integrity Constraints in Temporal Deductive Knowledge Bases, Ph.D. thesis, Department of Computer Science, University of Toronto, Forthcoming, 1995.
[Yu94] E. Yu, J. Mylopoulos, Understanding ``Why'' in Software Process Modelling, Analysis, and Design, Proceedings Sixteenth International Conference on Software Engineering, May 16-21 1994, Sorrento, Italy, 159-168.
[Yu95] E. Yu, Modelling Strategic Relationships for Process Reengineering, Ph.D. thesis, Department of Computer Science, University of Toronto,1995.