Frank Wolff
email: frank.wolff@dhbw-mannheim.de

Better Segmentation of Enterprise Modelling Governance through Usage Perspectives

Keywords: Enterprise modelling, Modelling goals, Modelling governance, Participants involvement, Stakeholders

Enterprise modelling is an endeavor that involves many different stakeholders in a company and requires a long-term approach to reap major benefits. Due to their differing main tasks the stakeholders frequently pursue deviating goals. Therefore, an appropriate management of the stakeholders is considered a success factor for enterprise modelling. The goals of the stakeholders in respect of an enterprise model and their role in the modelling process are crucial for this distinction. The differentiation can be facilitated by generic goals and a scheme that accounts for influences like variants in the size of companies and the impact of enterprise modelling on business. The application of the outlined procedure is exemplified with an illustrative case of a chemical supplier.

Introduction

Enterprise modelling 1 integrates knowledge from many different domains in a company. Central are information on business processes, organizational relationships and IT-systems. Enterprise models support management with overall information but they also supply specialists with details for their concerns (e.g. [START_REF] Braun | A Comprehensive Enterprise Architecture Metamodel[END_REF], [START_REF] Lankhorst | Enterprise Architecture at Work -Modelling, Communication and Analysis[END_REF], [START_REF] Frank | Multi-Perspective Enterprise Modeling (MEMO): Conceptual Framework and Modeling Languages[END_REF]). Thereby, an enterprise model serves a considerable number of purposes. The goals that reflect the purposes to create and use an enterprise model in practice vary widely. Some goals are of more operational nature, e.g. to supply IT-service desk employees with an overview on the network infrastructure. Other purposes have strategic impact, e.g., if a company uses its process models to improve the integration of acquired companies or if it applies the models as a blueprint to establish new subsidiaries and production lines faster. The high potential benefits convinced many companies to start enterprisewide modelling activities.

In the beginning of enterprise modelling, the appropriate modelling methodology and a convenient tool were focused by research (e.g. [START_REF] Frank | Multi-Perspective Enterprise Modeling (MEMO): Conceptual Framework and Modeling Languages[END_REF], [START_REF] Davis | Business Process Modelling with ARIS[END_REF]). Now these concepts and technologies have matured considerably. But the status of enterprise models in many if not most companies is still not regarded as satisfactory [START_REF] Foorthuis | On Course, But Not There Yet: Enterprise Architecture Conformance and Benefits in Systems Development[END_REF]. This has been reported for some time and has changed little as the author of this paper noted at a number of recent practitioner conferences.

Many suppose the challenge is rooted in the interaction of the participants of enterprise modelling. Often the organization of the modelling process is very optimistic and does not account for the different perception of the diverse participants e.g. the providers and users of information [START_REF] Barjis | Collaborative, Participative and Interactive Enterprise Modeling[END_REF]. Also sometimes organizational constraints hinder the effective usage of enterprise models [START_REF] Ylimäki | Potential Critical Success Factors for Enterprise Architecture[END_REF].

Major challenges are 1) that to collect information and reflect them in the enterprise model collaboration of numerous specialists is required, 2) many potential benefits can only be realized over a longer time period and 3) enterprises are not static but transform frequently due to market and technological changes. So a long-term approach is advisable and as different groups of people are involved an active management or governance of enterprise modelling is required [START_REF] Lucke | Critical Issues in Enterprise Architecting -A Literature Review[END_REF].

Different schemes have been proposed for a better governance of enterprise modelling (e.g. [START_REF] Gericke | Der Lebenszyklus des Prozessmanagements[END_REF] or [START_REF] Franz | Value-driven Business Process Management -The Value Switch for Lasting Competitive Advantage[END_REF]). They provide a good outline on the essential elements for general governance activities. But they lack appropriate guidance to support the practitioner or researcher with practical knowledge how to adapt the governance and cope with the individual conditions of a particular company, in particular, its goals for the enterprise model and the different stakeholders involved in the modelling processes.

This paper deals with this shortcoming. It presents a compilation of generic goals for enterprise modelling and takes a closer look on the typical differentiation of enterprise modelling perspectives and other stakeholder models. These elements will be integrated in the dedicated concept of usage perspectives, which assists organizations to segment its management of enterprise modelling activities individually. This is important to create efficient and effective governance structures. Theoretical models tend usually to either simplify this aspect too much or build highly particularized structures [START_REF] Roth | Enterprise Architecture Documentation: Current Practices and Future Directions, 11th International Conference on Wirtschaftsinformatik[END_REF]. To cater for different enterprise sizes and individual goals an appropriate integration is required.

Interests in Enterprise Models

People from distinct departments involved in enterprise modelling processes usually pursue different goals. Those goals are shaped by the individual work context of the participants and to a lesser part the overall goals of the company. The differences in their interests frequently inhibit an ideal creation and usage of an enterprise model, e.g. because it is not completed, updated as necessary or persists in a fragmented state.

To support the involved employees adequately, control the status of models and modelling processes diverse aspects must be accounted for. This topic has been addressed before mainly concentrating on either: a) goals for enterprise modelling, b) perspectives on enterprise models or c) analysis of involved stakeholders.

Goals for Enterprise Modelling

Theory and publications of providers of enterprise modelling tools stress the advantages and deduce a number of valuable usages of the models. They are often formulated as goals for enterprise modelling. The overview in Fig. 1 depicts a systemized compilation of these goals from literature (e.g. [START_REF] Davis | Business Process Modelling with ARIS[END_REF], [START_REF] Jeusfeld | ConceptBase: Managing Conceptual Models about Information Systems[END_REF], [START_REF] Persson | Why Enterprise Modelling?: An Explorative Study into Current Practice[END_REF], [START_REF] Proper | On Utility-based Selection of Architecture-Modelling Concepts[END_REF]). It is based on an analysis of 18 sources from literature on enterprise modelling directly or specific kinds of modelling which are parts of enterprise models [START_REF] Wolff | Ökonomie multiperspektivischer Unternehmensmodellierung. IT-Controlling für modell-basiertes Wissensmanagement[END_REF]. One important insight of the study was that modelling goals are usually listed without regard to the different extent of their potential effects on the company operations and the business. Some objectives are directly focused on certain actions of participants and others aim at broader effects on the business of a company. The analysis revealed that goals for enterprise modelling range from strategic issues (e.g. easing integration of other companies, higher flexibility of a company) to the level of direct support of working activities (e.g. documentation or automation of work steps). Some goals are positioned at intermediate levels (e.g. improving coordination, better system integration or the reuse of concepts). Last but not least a model can support directly tasks like communication e.g. in projects or provide required documentation

Function of model in work process/ direct purpose

Potential goals for enterprise architecture modelling

Supported task in the process that uses a model:

• studying or gathering of information

• communication • (partial) automatic processing • 'Provisioning of documentation'
Goal of the using process:

• analysis and decision support

• transfer of information and training

• development and design

• operations and administration

Comprehensive or indirect goals:

• better coordination • independency from (availability of) experts

• reuse of concepts • process-and system integration

• compliance with regulations, etc.

Global business gaols, e.g.:

• economic improvements

• product enhancements The goals in Fig. 1 are generic. In practice they will be connected in various ways. Crucial is the relation to a domain knowledge or model content that is of interest for people in a company, e.g. business processes or IT applications. Then usually the goals have interrelationships e.g. that for the global business goal of higher flexibility the realization of a better coordination and process integration is required. These latter then help employees directly in development and design of new processes and systems.

The above presented goals are related to substantial advantages of enterprise architecture models. Considering the typical timeframe and potential pitfalls in enterprise transformation processes it is presumably extremely valuable for a company in such situations to achieve some of the above listed goals by utilizing enterprise models. Nevertheless, even companies that start enterprise modelling initiatives rarely succeed in building and updating all parts of a comprehensive enterprise model [START_REF] Ylimäki | Potential Critical Success Factors for Enterprise Architecture[END_REF], [START_REF] Lucke | Critical Issues in Enterprise Architecting -A Literature Review[END_REF].

Many obstacles for a smooth modelling process originate from the diverse participants required for a modelling effort of this kind. Some individuals only have very constrained knowledge. So they may have problems to contribute effectively to the overall model. Others could easily produce single parts of the enterprise model but will not reap any benefit from the model as they do not need the information. Another aspect is that for a company it is usually much easier and more economical if the information is documented in the model while the information is well at hand. It is often very dear and costly to reproduce it later when the knowledgeable person has moved to another position or is not available for other reasons.

The above outlined combinations and relationships of multiple goals of involved persons can be analyzed by using goal modelling techniques like KAOS or iStar to identify supporting and contradicting goals [START_REF] Horkoff | Evaluating Goal Achievement in Enterprise Modeling[END_REF]. These approaches promise many advantages in critical or perplexing situations. Nevertheless, in this paper a more basic maybe pragmatic approach is chosen, which focuses on the important stakeholder groups for an enterprise modelling endeavor.

Consideration of Generic Perspectives and Stakeholder Groups in Enterprise Modelling

In most enterprise modelling methods the participants are differentiated by perspectives or views. Very prominent is the distinction into a management, a business and an information systems perspective (e.g. [START_REF] Lankhorst | Enterprise Architecture at Work -Modelling, Communication and Analysis[END_REF], [START_REF] Frank | Multi-Perspective Enterprise Modeling (MEMO): Conceptual Framework and Modeling Languages[END_REF]). This focusses on very strikingly different involved groups but will not easily scale up or reflect distinct goals stemming e.g. from particular crucial customer groups. This issue has been taken up by the research on stakeholders in enterprise models in recent years [START_REF] Raadt | The relation between EA effectiveness and stakeholder satisfaction[END_REF]. The consideration of the stakeholders in an activity is vital if desired interaction can only be reached by many parties interacting in a common direction [START_REF] Fassin | The Stakeholder Model Refined[END_REF]. The major objective of enterprise modelling is the provisioning of relevant information in a structured form. Therefore, information needs are one determinant shaping stakeholder groups [START_REF] Lagerstroem | Enterprise Meta Modeling Methods -Combining a Stakeholder-Oriented and a Causality-Based Approach[END_REF]. An adequate representation of stakeholders is fundamental to cater for the requirements of the group so that essential modelling is done. While the stakeholder analysis supports a very detailed analysis of participating groups, it has been noted that this does not fit for many, especially medium sized enterprises [START_REF] Niemi | Enterprise Architecture Stakeholders -a Holistic View[END_REF]. A more flexible way will be presented in the following section integrating the concepts of goals and stakeholders in usage perspectives.

Focusing on Usage Perspectives of Enterprise Models

The problem of sufficient motivation and knowledge to model is quite subtle because the collision of interest usually differs for each of the departments involved in modelling and usage of enterprise models. E.g. the controlling department only has some specialized processes to model but needs some detailed information about numerous resources and processes all over the company. The department of IT is accustomed to work with conceptual models. But regularly it is under high time pressure. So IT-departments often hesitate to invest scarce manpower into a concerted enterprise modelling approach. Other departments like e.g. warehouse are unfamiliar with conceptual models. This also may prevent an easy adoption and inclusion of their procedures, tools and systems into an enterprise model.

The concept of usage perspectives2 comprises these distinct aspects and helps to establish a balanced structure of groups concerned with enterprise modelling which is adapted to a company's characteristics and can also handle the combination of different partial views. This balancing and integration is necessary to foster shared cognition [START_REF] Espinosa | Coordination in Enterprise Architecting: An Interview Study[END_REF] which is a prerequisite to achieve the overall goals of an enterprise model [START_REF] Lucke | Critical Issues in Enterprise Architecting -A Literature Review[END_REF].

Elements of Usage Perspectives

As it has been argued the interests but also problems to create the parts of an enterprise model vary for the diverse groups involved. To prepare necessary subsistence it is indispensable to identify groups with similar characteristics and interests. Fig. 2 depicts criteria to distribute the groups involved in modelling appropriately into utilization perspectives.

The distribution is based on two perspectives a) the overall business perspective and b) the modelling perspective. The business perspective determines the goals for using models and thereby modelling. The modelling perspective is rooted in the depicted domain. It is related to the typical knowledge of the people working in the domain. The business and the modelling perspectives are important for the context of work. The elements of the context of work may stem initially from the generic characteristics of modelling context and the business goals. But it should be noted that in many cases also other conditions impact the interest and cognition of participants e.g. the kind of education, nature of work, geographical or cultural traits. By clustering groups of people along their context of work and their typical modelling knowledge important stakeholders in regard of enterprise models can be identified.

As basis the individual characteristics and goals of the stakeholders are discerned. Then the similarities of goals and stakeholder characteristics are the used to discover common perspectives. This analysis is balanced by considering an appropriate number of usage perspectives for an enterprise. This number depends on the size and the strategic importance of enterprise modelling for the company. Besides basic utilization perspectives which cover one subject area of a company, e.g. the production of a major product line, also other perspectives are allowed for. If model information from different perspectives is required for an additional purpose interrelated usage perspectives are created.

Management of the Enterprise Modelling Process

While good enterprise models appear to be simple and intelligible their creation and actualization is quite a perplexing process. The different involved groups are one major challenge. This is due to many cognitive, political and organizational issues [START_REF] Seppanen | Key Issues in EA-Implementation: Case Study of Two Finnish Government Agencies[END_REF]. Another aspect is the distribution of changes in time but also in related entities of an enterprise. Also effort for data collection can be very high and data quality is often rather low [START_REF] Roth | Enterprise Architecture Documentation: Current Practices and Future Directions, 11th International Conference on Wirtschaftsinformatik[END_REF].

All these characteristics call for an active management or governance of enterprise modelling processes ( [START_REF] Franz | Value-driven Business Process Management -The Value Switch for Lasting Competitive Advantage[END_REF], [START_REF] Wolff | Ökonomie multiperspektivischer Unternehmensmodellierung. IT-Controlling für modell-basiertes Wissensmanagement[END_REF]). One main duty of this governance would be to ensure that pending updates for models activate relevant triggers. Besides organizational arrangements also technical coupling is an important force for up-todate and correct enterprise models [START_REF] Roth | Enterprise Architecture Documentation: Current Practices and Future Directions, 11th International Conference on Wirtschaftsinformatik[END_REF]. This applies very much for automatic conversion of systems data into models and vice versa. But also connection between different spheres of modelling is of high interest in practice (e.g. business processes and IT-Infrastructure).

The utilization perspectives help an organization to a) discover conflicts of interest between participants and/or company goals, and subsequently to resolve them,

. *

Goal for using models

Stakeholder

Context of work Knowledge

Arrow in the picture indicates: is based on b) control the current required update of an enterprise architecture model and c) make up a more realistic assessment of options to model its enterprise ( [START_REF] Wolff | Ökonomie multiperspektivischer Unternehmensmodellierung. IT-Controlling für modell-basiertes Wissensmanagement[END_REF], [START_REF] Morello | Creating Incentive-Driven Tasks to Improve Knowledge Management in Sales Chain Relationships[END_REF]). An appropriately adopted organization has been identified to have high influence on the prospects to reap the benefits from an enterprise model [START_REF] Foorthuis | On Course, But Not There Yet: Enterprise Architecture Conformance and Benefits in Systems Development[END_REF].

Example Distribution of Usage Perspectives

In this section an illustrative example of a chemical supplier company is presented.

Outline of the example: The chemical company has two major divisions. One is working for the medical industry and the other is distributing a wide range of basic chemical substances to other non-regulated industries. Some subsidiaries have been founded abroad for doing better business in other countries. The subsidiaries often also profit from lower wages or material prices. Due to their success, more foreign affiliations are planned. The example will be depicted in a diagram which may be connected to other models for control of enterprise modelling endeavors (e.g. in [START_REF] Wolff | An Evaluation Framework for Enterprise Architecture Modelling[END_REF]). The model is composed of two main element types -1) usage perspectives and 2) stakeholder groups (see Fig. 3). The elements are connected through 2 types of relations. 3 The first relation serves to reflect which stakeholder groups are involved in a utilization perspective. The second relation represents the dependency of certain usage perspectives on contents of models created and updated by stakeholders from other usage perspectives. 4While basic usage perspectives can be analyzed and managed on their own the depending usage perspectives require a more comprehensive consideration. However, it should be noted that likewise basic usage perspectives may be composed of different groups of stakeholders. These groups are either differentiated by their role in the modelling process (e.g. knowledge provider, modeler or model user) or by their goals for using the models. In the presented diagram goals are only stored in the background. However, to some extent they are reflected in the label of the stakeholder group. The underlying intention was to create a distinct overview on the groups without too many details.

The separation of usage perspectives for the example chemical company is presented in Fig. 4. It differentiates five main usage perspectives, a) Standard materials business perspective, b) Medical materials business perspective, c) ITperspective, d) Preparing decisions perspective and e) Change management perspective. The foundational perspectives for the enterprise model that directly create business models are depicted on top of the diagram (a&b). The IT-perspective (c) is in the center and the two perspectives which do not create models but are using information or models from the others are positioned at the bottom (d& e).

The two business perspectives are structurally very similar and only differentiated by the additional stakeholder group of regulators. This may seem to be only a small variance. But due to the risks to human life the obligations in medical production lines are very strict and have severe impact on the organization and related procedures in the domain. Therefore, it is reasonable to manage the two business lines in separate perspectives.

In the IT-perspective four main stakeholder groups cooperate. On the top the active modelling groups of IT-product owners and IT-development are positioned. The models of the IT are used by all stakeholders of the IT-perspective. Especially the ITservice desk considerably relies in his work on the models provided by the modelling stakeholder groups. As technical details are known only by some specialists it is often essential that some of the other members of the IT-department (various) must supply additional information.

The goal analysis of the stakeholders is not represented in the diagram directly but is underlying the example case. As explained in chapter 2.1. the goals regularly are compounds of more than one generic goal. E.g. the IT-service desk requires information independent from the availability of certain specialists. They use the information in their operations processes which entail tasks like studying and gathering of information. The reorganization & international group, on the other hand, often pursues goals, like higher flexibility, reuse of concepts, development and design of new entities all relying on efficient communication between the involved partners. This argumentation demonstrated the principles how to distinguish and recombine the different characteristics to segment usage perspective for the governance of enterprise modelling. 5Enterprise modelling in companies is frequently faced with problems due to difficulties in the interaction of involved stakeholders. The problems often surface only late because the social implications of these large-scale complex endeavors are not directly visible [START_REF] Lucke | Critical Issues in Enterprise Architecting -A Literature Review[END_REF]. The segmentation proposed in this paper serves to organize and control the various activities of enterprise modelling by embracing many of these impeding factors. The proposed procedure adapts to small enterprises with only a handful of usage perspectives up to very large enterprises with perhaps 40 or more usage perspectives. It is fundamental for enterprise modelling that the organizational setting secures that the actors and participants for their part can be fully involved in their modelling, and are not hindered by other interests.

Further research in usage perspectives is planned to be twofold: a) direct examination of the segmentation in more companies to analyze the effects of segmentation in governance on the abilities of an organization to control its achievements with enterprise models and b) further development of a modelling methodology to support the analysis of the relationships between goals, rationales, decisions and organizational contexts in enterprise modelling (comp. [START_REF] Bock | Towards a modeling method for supporting the management of organizational decision processes[END_REF]).

Fig. 1 .

 1 Fig. 1. Goals for enterprise architecture modelling with different levels of organizational effect .

Fig. 2 .

 2 Fig. 2. Criteria to distribute enterprise architecture modelling into utilization perspectives

Fig. 3 .

 3 Fig. 3. Elements (left side) and relations (right side) of the usage perspectives structure diagram

In this paper the term enterprise modelling (EM) is used. This includes enterprise architecture modelling (EAM). EAM is somehow more focused on IT-infrastructures but the similarity with EM is quite substantial as both cover whole organizations and integrate the concerns of management, business operations and IT.

Alternatively to the term usage perspective it was considered to name the concept involvement perspective. But this was rejected as the focus on the benefits was perceived to be decisive.

An integration relation for one or more comprehensive perspectives is possible but not in the scope of this paper.

A tool to model Usage Perspectives can be downloaded from the website of the Open Models Initiative -www.openmodels.at. The modelling tool is contained in the package for Evaluation Chains (EC) and includes dedicated reference models for the assessment of enterprise modelling activities.

The model in the diagram had been restricted by the available space. In a bigger company typically more distinctions could be advisable in regard of the difference between production and administration in the business perspectives. Similarly in the IT domain, the operations and the development groups in many cases focus on different areas and contents of the enterprise model.


Soroosh Nalchigar
email: soroosh@cs.toronto.edu

Eric Yu

Steve Easterbrook

Towards Actionable Business Intelligence: Can System Dynamics Help?

Keywords: Business Intelligence, Analytics, Goal-oriented Requirements Engineering, System Dynamics, Enterprise Modeling, Simulation

Business intelligence (BI) and data analytics provide modern enterprises with insights about internal operations, performance, as well as environmental trends, and enable them to make data-driven decisions. Insights resulting from these systems often suggest several alternative changes or corrective actions within the enterprise. In this context, to trade-off and find the most proper action(s) is a non-trivial task due to existing dynamics and complexities of the enterprise. This paper proposes a model-based approach to support the analysis and selection of best alternative actions in adaptive enterprise contexts. The proposed approach links and synthesizes two existing modeling frameworks, the Business Intelligence Model (BIM) and System Dynamics, in a systematic step-by-step way to assist decision makers in finding best response action(s) from a given set of alternatives, and hence to make BI more actionable and understandable. The applicability of this approach in illustrated in a scenario adapted from literature.

Introduction

Goal-oriented modeling frameworks, such as i * [START_REF] Yu | Modelling strategic relationships for process reengineering[END_REF][START_REF] Yu | Social modeling for requirements engineering[END_REF], have been introduced for modeling and analyzing the socio-technical contexts of enterprise. These frameworks can be used to model and analyze existing actors in the enterprise, their goals, dependencies, as well as internal operations. Moreover, such frameworks can capture alternative course of actions for achieving goals, express their impact on the strategic goals, and can support assessing whether the goals are met. Recently, the Business Intelligence Model (BIM) [START_REF] Barone | The business intelligence model: Strategic modelling[END_REF][START_REF] Horkoff | Strategic business modeling: representation and reasoning[END_REF][START_REF] Barone | Enterprise modeling for business intelligence[END_REF] extends goal modeling to incorporate business intelligence (BI) and analytics related concepts such as indicators in order to assist business users to utilize the vast amounts of data about the enterprise and its external environment. Although these frameworks represent various aspects of enterprise, they do not capture the temporal features and notions of time. In other words, these frameworks do not model the behaviour and changes of the enterprise over time.

Consider a global restaurant chain that, by using BI tools, realizes there is a declining trend in total sales in some of their market segments. In such a context, BIM modeling can help enterprises make sense of their data and gain a better understanding of business operations and its environment. It conceptualizes strategic goals (e.g., increase market share) as well as performance indicators (e.g., total sales), and provides analysts with an understanding of how well they are doing with respect to their strategic goals. However, the BIM framework does not deal with the actions that the restaurant chain may take in response to improve its situation. Moreover, the changes in indicators over time and the long term and short term impacts of those actions are not addressed. For example, to improve performance, restaurant decision makers may come up with various proposals such as introducing a new product, improving the marketing campaign, or lowering prices. In such a context, the decision makers need to examine how strongly each of the potential actions will improve the desired indicators over time. How much time does it take for each alternative to improve the performance indicators? What are the side effects of the actions on the other strategic goals and metrics of the company?

Today's business environment is characterized by its dynamic nature, increasing uncertainties, and rapid changes. To survive and remain competitive in such a context, modern enterprises need to sense the environmental trends and respond to them proactively. They need to adjust their internal structures and processes in response to changes in the environment [START_REF] Stephen | Adaptive enterprise design: the sense-and-respond model[END_REF][START_REF] Sherehiy | A Review of Enterprise Agility: Concepts, Frameworks, and Attributes[END_REF]. BI and data analytics solutions play a crucial role in realizing the vision of the Sense-and-Respond enterprise [START_REF] Stephen | Adaptive enterprise design: the sense-and-respond model[END_REF]. These systems serve as sensing mechanism of the enterprise by assisting business users to identify business situation, monitor the strategic goals, and track performance indicators [START_REF] Yu | Enterprise architecture for the adaptive enterprise-a vision paper[END_REF]. A critical challenge in these contexts is to make BI solutions actionable, i.e., to link BI-derived insights to business strategies and organizational processes to take the right action at the right time [START_REF] Lavalle | Analytics: The new path to value. How the smartest organizations are embedding analytics to transform insights into action[END_REF]. Insights resulting from BI and data analytics usually suggest several alternative changes within various parts of the enterprise. Business managers then face the challenge of choosing the best corrective actions.

Analyzing and making trade-offs among enterprise actions is a nontrivial task. This difficulty arises, partially, from the fact that it is very hard to understand how each of the potential actions would influence enterprise strategic goals over time and also how it is influenced by existing contextual factors. Towards overcoming this difficulty, modeling and analysis of dynamic behaviour of alternative actions and their influence on enterprise performance indicators is a major step. This paper proposes a model-based approach that integrates and links the BIM modeling framework with System Dynamics [START_REF] Wright | Industrial dynamics[END_REF][START_REF] Sterman | Business dynamics[END_REF], to support decision making on alternative enterprise actions. System Dynamics is a method for modeling and analyzing the behaviour of complex systems over time. The proposed approach utilizes the complementary advantages of BIM and System Dynamics framework to conceptualize enterprise actions and their impact on business situation over time, to facilitate decision making over BI-derived insights, and hence to make BI and analytics systems more actionable. The approach includes a set of suggestive heuristics to derive System Dynamics models from BIM models. Also, the proposed approach assists BI analysts to elicit new requirements for adapting the BI systems to the new enterprise context resulting from the change.

In previous work [START_REF] Nalchigar | From Business Intelligence Insights to Actions: A Methodology for Closing the Sense-and-Respond Loop in the Adaptive Enterprise[END_REF], we proposed a model-based methodology for closing the gap between what an enterprises senses from BI insights and the consequent actions and corrective changes. The second and third phases of that methodology includes generating alternative actions and selecting the most appropriate one(s). Although the models and criteria proposed in that methodology help users to analyze the alternatives, the dynamics of the indicators, the notion of time, and complexities of the context are left unconsidered. In this paper we examine how System Dynamics modeling and simulations can be used to analyze the dynamics of the enterprise and to examine how well each of the alternative corrective actions would affect the strategic goals and the situation of the enterprise. The practices that are proposed in this paper would be useful in the second and third phase of our previous methodology whose goal is to make BI system more actionable.

The rest of this paper is organized as follows. Section 2 reviews the baseline of the paper, including BIM modeling language and System Dynamics approach. Section 3 presents a case scenario to motivate the research problem. Section 4 presents the proposed approach and shows its applicability in the motivating scenario. Section 5 presents a set of suggestive heuristics for deriving System Dynamics models from BIM models. Section 6 reviews related work to this study. Section 7 concludes the paper and presents directions for future work.

Baseline

The baseline of this work includes the BIM modeling language and System Dynamics modeling. Our goal is to present a systematic approach that links and synthesizes these two to facilitate decision making on the BI and analytics-driven insights, and hence to achieve actionable BI and analytics.

Business Intelligence Model (BIM)

BIM is a modeling language for representing the strategic goals of the enterprise. Aiming to bridge the gap between business-level understanding of the enterprise with its representation in databases and data warehouses for BI purposes, BIM makes use of well established business concepts to support decision making during strategic business analysis [START_REF] Horkoff | Making data meaningful: The business intelligence model and its formal semantics in description logics[END_REF][START_REF] Horkoff | Strategic business modeling: representation and reasoning[END_REF]. The primitive BIM concepts are goals, tasks/processes, indicators, situations, and influences. This modeling language facilitates understanding of the enterprise and provides a business-friendly way to use huge amounts of enterprise data [START_REF] Barone | Enterprise modeling for business intelligence[END_REF]. It assists enterprise users to keep track of enterprise performance and sense how well they are doing with regard to their strategic goals. References [START_REF] Barone | Business intelligence modeling in action: a hospital case study[END_REF][START_REF] Barone | Towards model-based support for managing organizational transformation[END_REF] provide real world case studies of this modeling language.

System Dynamics

System Dynamics, initially proposed by Forrester [START_REF] Wright | Industrial dynamics[END_REF] and later extended by Sterman [START_REF] Sterman | Business dynamics[END_REF] and others, is an approach for understanding and modeling the dy-namics and behaviour of complex systems over time. The main concepts in this modeling approach are causality and feedback loop, stock or level (the accumulation of resources in the system), and flow or rate (dispersal of those resources). Two major modeling and representation types in System Dynamics are Causal Loop Diagrams and Stock and Flow Diagrams. While Causal Loop Diagrams allow qualitative modeling of the system variables and their causal effects, the Stock and Flow Diagrams use differential equations for quantitative modeling and simulation of the system. In this study, we illustrate how System Dynamics could be used to facilitate the connection between what an enterprise senses from BI insights to the consequent actions and corrective changes.

Motivating Example

In order to motivate the research problem and to show applicability of our approach, we adapt a running example from previous research [START_REF] Horkoff | Strategic business modeling: representation and reasoning[END_REF][START_REF] Barone | Enterprise modeling for business intelligence[END_REF]. Using realworld reports, they created a business scenario and applied the BIM modeling and reasoning techniques on that. The example presents BestTech Inc., a generic company that manufactures and sells consumer electronics. Figure 1 is part of the BIM model for this company, representing structure of the strategic goals and their refinements along with corresponding indicators (red on top, yellow on middle, green on bottom) and current business situation. It indicates that the root strategic goal of the BestTech company is To increase shareholder value. This goal is AND-decomposed into two subgoals To maintain revenue growth, To reduce costs and the task Acquire a competitor. Similarly, the To maintain competitive advantage goal is OR-decomposed into two alternative sub-goals, namely To invest in new technologies and To establish strategic partnership. To trace the business situation and monitor the performance, the company has defied some indicators, e.g., Marketing costs for the goal To reduce marketing costs and Sales volume for the goal To increase sales volume. Moreover, the BIM model shows how the strategic goals would influence each other. For example, the goals To offer promotions has negative influences on the goal To maintain gross margin. The model also shows that there is a domain assumption of High demand, which must be true in order for the goal To increase sales to be achieved. In addition, this model indicates how external situations are influencing the company's strategic goals, e.g., World-wide increase in fuel price negatively affects the goal To reduce distribution costs.

Currently, using the BIM model in Figure 1, the company finds that it has an average performance (yellow indicator) with respect to its top goal. Moreover. the marketing department finds that the Sales volume indicator is below the defined threshold, i.e., deficient performance with regarding to the goal To increase sales volume. In addition, the BIM model indicates that the levels of Gross margin and Marketing costs are not satisfactory. On the other hand, the Total costs indicator is green which means that the total level of costs is below the defined threshold. Having these signals about current business situation, BestTech executives decide to initiate some changes within the company in order to improves the sales and revenues while keeping total costs at the satisfactory level (as it is now). They want to make the red and yellow indicators green while keeping the green indicators as they are. Towards these ends, the executives initiate brainstorming sessions and motivate the members to find a best actions that the company should take. As a result, they come up with two alternative solutions as follows:

(1) Lower the price of products to increase sales and revenues, and (2) Improve product quality levels by training the production lines personnel. Each of these options are possible responses that BestTech could adopt based on what it has sensed from the BI system. In this situation, to select the best response action(s) is not an easy task due to existing dynamics and rapid changes inside and outside of the company. There are lots of factors to be taken into account and finding the most proper alternative is a great challenge. The decision makers want to know: How and to what extent each alternative would help company to achieve the goals whose indicators are not at the satisfactory level? How fast each alternative would help the company to improve its condition? What are long term effects of each alternative on the strategic goals? How and to what degree each alternative would influence other strategic goals of the company in which they have a good performance at the current time? What are possible influences of existing contextual factors (e.g., World-wide increase in fuel prices) to each alternative? The main contribution of this paper is to link and to synthesize System Dynamics modeling with the BIM to use their complementary advantages for making connections between the sensing accomplished through BI and consequent enterprise actions. This section explains the steps and activities of the proposed approach and illustrates its application on the motivation example of previous section. The approach assumes that the enterprise analysts have constructed a BIM schema (to measure the performance indicators) and also have a set of alternative actions from which they want to choose the best one(s).

Step 1: Understanding the Decision Context. The main task in this step is to model the dynamic interactions of elements and factors within the enterprise and to formulate the cognitive model of enterprise decision makers. In other words, the main goal in this step is to represent how various enterprise related concepts and variables are interrelated. For these purposes, we use Causal Loop Diagrams. Section 5 presents a conceptual connection between the BIM framework and Causal Loop Diagrams. Proposed guides could be used in this step for constructing a skeleton of Causal Loop Diagram from the initial BIM model that was an input of the approach. After having the initial Causal Loop Diagram, analysts can add extra variables to enrich that for a better modeling of the context. In this step, the simplicity of Causal Loop diagrams will result in improved communication and comprehensiveness among decision makers.

Figure 2 shows the Causal Loop Diagram derived from the BIM schema of Figure 1. This model shows how different contextual variables and elements would interact and influence each other. For example it shows that a rise in Competitive advantage of company will lead to higher Revenue growth and consequently will result in an increase to Net profit. Moreover, it shows the higher the Fuel price, the higher the Distribution costs becomes and hence the Costs increases. Additionally, it shows changes in Sales channels and Promotions will reflect in changes in the same direction to Sales volume.

The main output of this step is a Causal Loop Diagram, derived from the BIM model, to represent the interactions of enterprise elements and factors within decision context. Step 2: Conceptualization of the Alternatives. The next step of our approach is to add the alternative actions as new variables to the Causal Loop Diagram, and to model the causal relationships between each alternative and the existing variables in the model. In this way, the decision makers hypothesize the influences of each alternative to the rest of variables, specially those that are related to strategic goals. In order to achieve a better modeling and understanding of the relationship between each alternative and strategic goals of the enterprise, at this step new intervening variables are added to the model by the analyst. Intervening variables are those that moderate the relationship between each alternative and strategic variables of the enterprise. By adding them, the analyst improves the validity and certainty of these models for later analysis in the approach. It should be noted that as the enterprise adapts to the changing environment, the BI system needs to be adapted accordingly to satisfy new requirements of the users. The new variables that are introduced into the Causal Loop Diagram in this step can be new requirements for the BI and analytics platforms in the enterprise.

Figure 3 shows how the alternative actions of the BestTech company are represented in Causal Loop Diagram in terms of new variables and influence links. Due to lack of space, both alternatives are illustrated in a single diagram. Regarding the first alternative, the variable Price attractiveness is affected by the variables Price and Competitors price. Moreover, as the Price of the company's products increases, the Revenue growth and Gross margin increases, while the Sales volume decreases. Regarding the second alternative, Train of manufacturing personnel will increase the Training costs and causes a reduce in number of Defective returned products. This variable, after a delay, will increase Production process quality and as a result the Perceived customer quality will be increased. An increase in Perceived customer quality, after a delay, will positively affect Word of mouth effects, and consequently the Sales will increase. Finally, the reinforcing loop R shows how existing customers' word of mouth would affect the sales over time. An increase in Customer base would increase the Word of mouth effects, meaning that current customers would influence and encourage other potential customers to buy electronic products from BestTech and join the customer base. The main output of this step is two-fold. First, a Causal Loop Diagram is created that includes the alternative actions and their influences on the enterprise variables. Second, a set of new variables is identified which represents the new requirements for the BI and analytics systems.

Step Step 4: Simulation and Analysis. The main activity in this step is to add parameters, initial values, and formulas to the Stock and Flow Diagram. The BI and analytics platforms can contribute to this step by providing many of these information, and hence by assisting the analyst to have a more valid and realistic Stock and Flow Diagram. For example, the initial level of stock variables such as Net profit, could be retrieved from BI dashboards. Moreover, at this step, existing System Dynamics validation methods could be used by the analyst to verify if the model is in line with actual enterprise behaviour. Forrester and Senge [START_REF] Forrester | Tests for building confidence in system dyamics models[END_REF] present several validation tests of System Dynamics models in three categories, namely model structure, model behaviour, and policy implications. In this step, Matlab or Vensim [START_REF] Vensim | [END_REF] are used to simulate the business actions with differential equations. These simulations assist business users to examine the impact of the alternative actions on the strategic goals and indicators over time, and hence to facilitate business decision supports.

Figure 5 shows results of simulations of the alternatives with regarding to three strategic performance indicators, namely costs, net profit, and revenue over three months. For the sake of illustration, we have added hypothetical equations and parameters to the Stock and Flow Diagram of the previous step. While Figure 5 (a) shows the alternatives are similar in terms of Costs, Figure 5 (b) compares the alternatives with regarding to Net profit, and shows the second alternative will outperform other options. This figure indicates that during the first month, the first alternative is better due to the time delays that second alternative needs for changing the Production process quality and customer's word of mouth. However, the second alternative will outperform starting from the second month. Figure 5 (c) shows that while all the three alternatives have increasing revenue growth, due to high demand in the market (coming from domain assumptions in BIM), the second alternative performs better than others in long term. Based on these simulations, the BestTech Inc. decides to follow the second alternative, i.e. to invest on training of manufacturing personnel to improve the quality of products.

Finally, some of the characteristics of the proposed approach are discussed. The proposed approach aims to make BI and analytics systems more actionable by supporting users to make sense of their enterprise data and to find the best response actions for their situation. This approach utilizes the complementary advantages of the BIM framework and System Dynamics to facilitate decision making on the BI-derived insights, and to find the best corrective action among a given set of alternatives, for improving business situation and achieving strategic goals. This approach comes with a set of guides that assist users to draw a Causal Loop Diagrams from a given BIM model to facilitate faster decision making and hence enterprise adaptiveness. Finally, the approach aids BI analysts in finding new requirements for the BI system to adapt them to the changing enterprise context.

From BIM to Causal Loop Diagram

In this section, we propose a set of general guides for developing Causal Loop Diagrams from BIM models. These guides are useful in the first step of the proposed approach (See Section 4) and can assist users to draw a skeleton of a Causal Loop Diagram from a BIM model. It should be emphasized that BIM models and Causal Loop Diagrams express and convey different aspects and elements of the system under consideration and there could not be a mechanistic and automated transformation between them. While the BIM framework represents the intentional aspects of the enterprise, Causal Loop Diagrams represent the enterprise in terms of variables and their interrelated changes over time. Due to inherent differences in purpose and semantics of modeling constructs, we advocate a series of guides and suggestions rather a formalized procedure to convert BIM models to Causal Loop Diagrams. It should be mentioned that developing Causal Loop Diagrams is a context-dependent task which requires understanding and knowledge about the domain. Using the proposed guides would result in an initial skeleton of a Causal Loop Diagram which needs to be further enriched by adding additional variables and links.

Goals: In the BIM framework, goals represent intentional desires towards important contextual concepts in the enterprise. Hence, a goal in the BIM model suggests that there is a corresponding variable in the Causal Loop Diagram. The variable could be extracted from the name of the goal or the indicator connected to it. For example the goal To increase sales in the BIM model suggests a variable such as Sales in the Causal Loop Diagram. It should be noted that not all goals in the BIM model need to become a variable in the Causal Loop Diagram. Also, there could be variables in the Causal Loop Diagram that are not goals in the BIM.

Decomposition links: Goals can be decomposed into and pursued through sub-goals. When a goal is decomposed into its sub-goals in a BIM model, it is likely that there is a causal link between their corresponding variables in the Causal Loop Diagram. We suggest that the "AND-decomposition" and "ORdecomposition" links between goals in a BIM model can be shown as positive links between corresponding variables in the Causal Loop Diagram. For an example, see the decomposition link between the goals To maintain revenue growth and To increase sales in Figure 1 and its corresponding causal link in Figure 2.

Influence links: An influence link between two elements in a BIM model represents a relationship between them in a probabilistic or causal sense [START_REF] Barone | The business intelligence model: Strategic modelling[END_REF]. This suggests that there is a causal link between corresponding elements in the Causal Loop Diagram. The polarity of the link in the Causal Loop Diagram could be same as the sign of the influence link in BIM model, unless in cases where one side of the influence link in the BIM model is a goal that refers to lowering the value or level of a variable. In such cases the sign should be reversed. For example, in the BIM model of Figure 1, the goal Economies of scale efficiencies increased has a positive influence on the goal To reduce costs. In the Causal Loop Diagram of Figure 2, that influence link is represented as a negative causal link between variables Economies of scale efficiencies and Costs.

Situations: The situations are partial state of the world and represent the internal and external factors that influence achievement of strategic goals [START_REF] Horkoff | Strategic business modeling: representation and reasoning[END_REF][START_REF] Barone | The business intelligence model: Strategic modelling[END_REF]. A situation in BIM model could be represented as a variable in Causal Loop Diagram. For example the situation Word-wide increase of fuel price in the BIM model of Figure 1 is represented as the Fuel price variable in the Causal Loop Diagram of Figure 2.

Domain Assumptions: In the BIM framework, assumptions are propositions assumed to be true for purposes of achievement of a goal [START_REF] Barone | The business intelligence model: Strategic modelling[END_REF]. These assumptions are about concepts related to the domain and can be represented as a variable in the Causal Loop Diagram. This variable will be constant during the simulation analyzes.

These proposed guides were used in Section 4 to arrive at a Causal Loop Diagram from the BIM schema of the motivating example. These guides are, indeed, a series of heuristic connections and correspondences between the BIM schema and Causal Loop Diagram. The enterprise analyst can use them to construct a skeleton of a Causal Loop Diagram from a given BIM model, but it would typically need to be enriched with additional variables, links, and delays. Some of these additional variables and links are indeed new requirements for the BI platform. By making connection between BIM and Causal Loop Diagram, this approach helps BI analysts to elicit new requirements of the BI system and to adapt it to the changing business environment. The suggested guides could be used as a connection between BI systems and System Dynamics models to enable feeding data from a BI platform to the System Dynamics modeling and simulations tools. This will allow BI platforms and System Dynamics modeling to complement each other and assists enterprises to take advantage of this. For the BI side, the System Dynamics models can offer various "what-if" analyses to better serve users' needs. For the System Dynamics side, the BI could offer realistic to test, validate, and improve the model structures.

Related Work

This section reviews related work in three categories. System Dynamics for Managerial Decision Making. System Dynamics practices have been widely used in managerial decision support. An et al. [START_REF] An | A system dynamics framework for sense-and-respond systems[END_REF] illustrated how System Dynamics could be used to model and understand the dynamic behaviours of performance indicators in the adaptive enterprise. They introduced optimization elements into the formalism of System Dynamics and embedded it in a technical Sense-and-Respond supply chain architecture. Schoeneborn [START_REF] Schoeneborn | Linking balanced scorecard to system dynamics[END_REF] linked the Balanced Scorecard (BSC) to System Dynamics modeling and showed how it could be used to perform extensive analysis of strategic measures using simulations on a hypothetical example. He argued that BSC considers only simple cause and effect relationships between measures and it leaves the time delays unconsidered. Similarly, Nielsen and Nielsen [START_REF] Nielsen | System dynamics modelling for a balanced scorecard: Computing the influence of skills, customers, and work in process on the return on capital employed[END_REF] used System Dynamics modeling to develop time and dynamics dimension into BSC and to examine the effects of skills, customers, and work in process variables on the return on capital employed. Yim et al. [START_REF] Yim | Knowledge based decision making on higher level strategic concerns: system dynamics approach[END_REF] used System Dynamics to propose a knowledge-based decision making method for supporting strategic planning and high-level decision making in the enterprise. Our approach is different from these works in that it uses System Dynamics to provide decision support on the BI and analytics driven insights, and hence to facilitate closing the gap between what an enterprise senses from BI insights to its response actions. Reasoning on BIM Models. The BIM modeling language comes with a set of reasoning techniques to support analysis and answering strategic questions. While the forward/bottom-up reasoning techniques evaluate the impact of different alternative goals on the top goal, the backward/top-down reasoning techniques find a set of goals with minimum costs to be satisfied in order to guarantee achievement of a given top goal [START_REF] Barone | The business intelligence model: Strategic modelling[END_REF]. Barone et al. [START_REF] Barone | Composite indicators for business intelligence[END_REF] proposed three techniques for deriving values of composite indicators from values of their component using conversion factor, range normalization, and qualitative reasoning. Later, they implemented an Eclipse-based prototype tool supporting these techniques [START_REF] Barone | Reasoning with key performance indicators[END_REF]. Horkoff et al. [START_REF] Horkoff | Making data meaningful: The business intelligence model and its formal semantics in description logics[END_REF] provided a formal semantics of BIM concepts in description logics and used that semantics for supporting "what-if" analyses over BIM models. Reference [START_REF] Horkoff | Strategic business modeling: representation and reasoning[END_REF] presents a hybrid reasoning technique which supports reasoning with incomplete indicators. While these techniques facilitate strategic decision making, they do not support decision making on enterprise actions and corrective changes. Moreover, they do not consider the time dimension. Our approach connects the BIM framework to System Dynamics modeling to facilitate decision making on alternative actions resulted from BI insights and to support elicitation of new requirements for the BI system. Adaptive Enterprise Architecture. In 1995, Stephan Haeckel defined the notion of adaptive enterprise and described a transformation model from a Makeand-Sell enterprise to a Sense-and-Respond enterprise [START_REF] Stephen | Adaptive enterprise design: the sense-and-respond model[END_REF]. Motivated by his work, Buckley et al. [START_REF] Buckley | Sense and respond business performance management[END_REF] and Kapoor et al. [START_REF] Kapoor | A technical framework for sense-and-respond business management[END_REF] proposed technical frameworks for implementing Sense-and-Respond business performance management. Yu et al. [START_REF] Yu | Enterprise architecture for the adaptive enterprise-a vision paper[END_REF] presented some research challenges and directions for adaptive enterprise architecture and highlighted the need for a systematic framework that supports modeling, analyzing, and designing adaptive enterprise. In another study, Yu et al. [START_REF] Yu | Adapting to uncertain and evolving enterprise requirements: The case of business-driven business intelligence[END_REF] examined capabilities of two existing requirements modeling techniques, namely goal-based social modeling (i * ) and process modeling, in capturing the dynamics and changes of application settings, found their inadequacies and modeling challenges, and finally outlined a set of desired features for a new comprehensive modeling framework. This work continues this line of research by integrating two existing modeling frameworks in a systematic way for facilitating decision making on response actions in adaptive enterprise.

Conclusion and Future Work

BI and analytics systems play a critical role in modern enterprises by providing insights about business progress towards strategic goals, internal operations, as well as external environment. BI-driven insights often suggest alternative corrective actions and changes within various parts of the enterprise. To trade-off and choose the most proper action(s) is a challenging task due to enterprise dynamics and complexities. This paper linked and synthesized the BIM modeling language with System Dynamics modeling and proposed a systematic approach for decision making on BI-driven insights. The results indicate that System Dynamics modeling offers a range of potential benefits and contribution to making BI systems more actionable that are currently not well catered for by existing tools and platforms. Evidently, the proposed approach needs to be evaluated in realworld case studies. Moreover, using System Dynamics requires the analyst to add new assumptions about the context (e.g., parameters, initial values, formulas) into the analysis. Finding appropriate mathematical equations of quantitative behaviour of the enterprise is not an easy task. BI can alleviate this challenge by providing real data of the variables to make it more realistic and valid.

This paper is part of a broader research agenda whose goal is to propose an enterprise architecture framework for adaptive enterprises. In future, we plan to extend the existing System Dynamic models by adding social modeling elements, such as actors from i * modeling framework, and to investigate how these frameworks could complement each other for supporting enterprise adaptiveness. Currently, we are investigating conceptual connections and compliances between the goal-oriented frameworks and Stock and Flow Diagrams. Moreover, we are developing a new modeling language to be used for requirements engineering of data mining and business intelligence projects. This modeling language will support organizational use of data mining and analytics tools, connects the insights to enterprise actions, and hence facilitates closing the Sense-and-Respond loops in adaptive enterprise.

Fig. 1 :

 1 Fig. 1: BIM schema for the BestTech Inc.

Fig. 2 :

 2 Fig. 2: Initial Causal Loop Diagram derived from the BIM schema

Fig. 3 :

 3 Fig. 3: Causal Loop Diagram with alternatives. Variables with underlined name and their associated links represent the first alternative. Variables with grey background represent the second alternative.

Fig. 4 :

 4 Fig. 4: Stock and Flow Diagram for BestTech Inc.

3 :

 3 Construction of Stock and Flow Diagrams. In this step, the Causal Loop Diagram generated in previous step is transformed into a Stock and Flow Diagram. Stock and Flow Diagrams are more detailed and complex than Causal Loop Diagram and enable quantitative analysis and simulation. In this step, the analyst distinguishes the Causal Loop Diagram variables into stock, flow, and auxiliary variables and also decides about the information or flow links. Moreover, the analyst can add new variables and factors to the Stock and Flow Diagram for a more detailed analysis of the system. Similar to previous step, all these new variables represent new requirements for the BI and analytics systems. Within the literature of System Dynamics, there exist some methods and rules for developing Stock and Flow Diagram from Causal Loop Diagrams. For example, Binder et al. [8] presents a systematic four steps process for transforming Causal Loop Diagrams to Stock and Flow Diagrams. Also, Burns [10] provides a formal description of relationships between Causal Loop Diagram and Stock and Flow Diagrams.

Figure 4

 4 indicates the Stock and Flow Diagram created for the BestTech Inc. case study. Because of space limitations, both alternatives are represented in a single model, while all analyzes and simulations of the alternatives (in the next step) are performed separately. This model shows the Revenue growth rate of the company, calculated from Price, Sales, and Competitive advantage, is accumulated in the stock of Net profit. As the company spends for various costs with the rate of Cost realization rate, those money leaves the stock of Net profit and flow into the stock of Costs. The model indicates as the company invests on technologies with New technology rate, the technologies are accumulated in the stock of Technologies. This stock influences the Economies of scale efficiencies and its value is reduced at the rate of Technology depreciation rate. The Asset costs, influenced by New technology rate and costs of maintaining current Technologies, contributes to Cost realization rate. The variables Time to improve the process and Word of mouth delay are added to the model to quantitatively represent the time delays. Moreover, the Fuel price is considered as a function of Time and influences the Distribution costs. The main output of this step is a Stock and Flow Diagram that could be used for simulation and analysis.

Fig. 5 :

 5 Fig. 5: Comparison of alternatives over three months: (a) Total costs; (b) Net profit; and (c) Revenues.


Wen Chen

Alan Wassyng
email: wassyng@mcmaster.catom@maibaum.org

Tom Maibaum

Impact Analysis via Reachability and Alias Analysis

Keywords: Large-scale Enterprise Systems, Impact Analysis, Reachability Analysis, Alias Analysis, Static Analysis, Dynamic Analysis, Instrumentation, Regression Testing

This work is concerned with localizing and analyzing the potential impact of changes to large-scale enterprise systems, and, in particular, how to incorporate reachability analysis and aliasing/pointer analysis to minimise false-positives and eliminate false-negatives. It is a continuation of our previous work, which included static analysis [1] and dynamic analysis [2] of changes to systems containing hundreds of thousands of classes and millions of methods. This current work adds: reachability analysis that examines the program to see "whether a given path in a program representation corresponds to a possible execution path", such that infeasible paths of mis-matched calls and returns can be filtered out from the estimated impact set; and alias analysis to identify paths that are feasible but cannot be affected. Using our approach, organizations can focus on a much smaller, relevant subset of the test suite instead of performing their entire suite of tests without any idea as to whether any test is necessary. Also, in the future, we hope to be able to help testers to augment the test suite with new tests that cover the impacted methods/paths not already subjected to testing. We include a case study that illustrates the savings that can be attained.

Introduction

The target system in this study is large-scale enterprise systems. Large-scale enterprise systems are commercial software packages that enable organizations to integrate various applications, replacing hard-to-maintain interfaces, eliminating redundant data entries, etc., to accommodate business growth. One of the largest enterprise vendors SAP, had 2012 revenues of 16.22 billion Euros [START_REF] Ag | Annual report 2012[END_REF]. Enterprise systems are clearly a common phenomenon in the IT marketplace with fast growing needs. However, implementing enterprise systems may lead to high costs for software maintenance and testing, since corrective changes and enhancements are made on a frequent basis. One type of software change, such as vendor patches, typically have to be applied as they are required to upgrade the system in order to fix defects, and to introduce new features.

Enterprise systems are complex, critical and costly. For instance, Oracle Corporation's E-Business Suite [START_REF]Oracle: Oracle e-business suite integrated soa gateway implementation guide release 12[END_REF] has over 230 thousand classes, and 4.6 million functions. Despite problems due to their inherent complexity, enterprise systems play a critical role in many organizations. They are used to implement actual business processes, information flows, reporting, data analytics, etc. It is estimated that "Large companies can also spend $50 million to $100 million on software upgrades. Full implementation of all modules can take years" [START_REF] Monk | Concepts in enterprise resource planning[END_REF]. As a consequence of these characteristics, these systems can also often be classified as legacy systems and are poorly understood and difficult to maintain.

Impact analysis is the key in analyzing software changes or potential changes and in identifying the software objects the changes might affect [START_REF] Bohner | Software Change Impact Analysis[END_REF]. Organizations need a change impact analysis tool to identify the impacts of a change after or even before a making a change. If the impacts can be obtained even before applying the change, it enables the organization to make test plans or to run tests in advance, saving the lag between system deployment and release.

Conventional impact analysis includes static approaches, dynamic approaches or a hybrid of the two. Static approaches identify the impact set -the subset of elements in the program that may be affected by the changes made to the system -by analyzing relevant source code or compiled code. Dynamic approaches collect information about execution data for a specific set of program executions, such as executions in the field, executions based on an operational profile, or executions of test suites.

Research Motivation

Our original work in this domain [START_REF] Chen | Large-scale enterprise systems: Changes and impacts[END_REF] showed that we could obtain a set of static impacts which are safe and more precise than conventional vanilla static approaches, while another more recent work [START_REF] Chen | Combining static and dynamic impact analysis for large-scale enterprise systems[END_REF] combined the static approach with dynamic instrumentation (aspect-based), and is able to identify real impacts at run-time to further improve the precision. However, in spite of the success of this recent approach, the case studies suggested that there still might be a good number of false-positives present in the estimated impact set. That analysis found out that only a tiny portion of the system (0.26% of all top functions/APIs) were affected at run-time. Even though those top functions were executed over 150 thousand times, one could not conclude that the rest of the static impacts were safe to discard. Consequently, testers may still need to rerun many of the regression tests.

While seeking further analysis to remove more false-positives, we realized that Reachability Analysis can be used to determine whether, within a graph G, a node s can reach another node t, i.e., whether the path s t is feasible, and so seemed a promising tool in our search for reducing false-positives. We also identified Alias Analysis as a potential tool to further remove false-positives by identifying changed and aliased variables and methods that can access them.

Related Work

In graph theory, reachability refers to the ability to get from one vertex to another within a graph by traversing edges of the graph. Algorithms for determining reachability fall into two categories: those that require preprocessing and those that do not [START_REF] Gersting | Mathematical structures for computer science[END_REF]. Algorithms like breadth-first search, in which reachability of one node from another node can be determined directly without the use of complex data structures, are in the first category. While algorithms like Floyd-Warshall, Thorup's algorithm and CFL-reachability fall into the second category, where more sophisticated methods and/or complex data structures are required.

Reps et al. [START_REF] Reps | Program analysis via graph reachability[END_REF] showed how a number of program analysis problems can be solved by transforming them to graph-reachability problems. The purpose of program analysis is to ascertain information about a program without actually running the program. In his work, program-analysis problems can be transformed to context-free-language reachability problems ("CFL-reachability problems").

Many compiler analyses and optimizations require information about the behaviour of pointers in order to be effective. Pointer analysis is a technique for statically determining the possible runtime values of a pointer [START_REF] Hind | Pointer analysis: haven't we solved this problem yet?[END_REF]. Aliasing occurs when two distinct names (data access paths) denote the same run-time location. This analysis has been studied extensively over the last decade. Alias information is central to determining what memory locations are modified or referenced. Ondrej introduces a flexible framework SPARK for experimenting with points-to analyses for Java [START_REF] Lhoták | Spark: A flexible points-to analysis framework for java[END_REF]. SPARK is intended to be a universal framework within which different points-to analyses can be easily implemented and compared in a common context. We believe that aliasing analysis is useful in hybrid impact analysis, and that we can use it to identify aliased objects in the static dependency graph to remove false-positives from the impact set.

Reachability Analysis

Ordinary (flat) graph reachability analysis does not take into account the fact that, in practice, many apparently reachable paths can be infeasible because of mis-matched calls and returns, and this information can only be obtained by considering control flows and/or data flows of the program. Reps [START_REF] Reps | Program analysis via graph reachability[END_REF] introduced the Context-Free-Language Reachability Problem as:

Definition: Let L be a context-free language over alphabet , and let G be a graph whose edges are labelled with members of . Each path in G defines a word over , namely, the word obtained by concatenating, in order, the labels of the edges on the path. A path in G is an L-path if its word is a member of L.

Then an ordinary graph reachability problem can be transformed into a CFLreachability problem by labelling each edge with a symbol e and letting L be the regular language e * . The reason that we introduce CFL-reachability analysis here is that it can help us answer the undecidable question: "Does a given path in a program representation correspond to a possible execution path?". The idea is that we can define a context-free language L to represent feasible Smallest(int p, int q){ \*precondition p>1 && q=2*\ if (p mod q > 0 && q < sqrt p) then q := q+1; smallest(p, q); else if (p mod q = 0) then print(q, is factor) paths and then determine if a given string ω is recognizable in L, i.e., is ω ∈ L?

else print(p, is prime); } (a) Program Smallest if() q:=q+1 else if() print(q) print(p) print(p) print(q) else if() q:=q+1 if() Enter Exit Enter Exit Call smallest() Return from smallest() Call smallest() Return from smallest() ( 1 ( 2 ) 2 )
Our assumption is that paths that can possibly be feasible execution paths are those in which "returns" are matched with corresponding "calls". These paths are called realizable paths.

A Supergraph G * [START_REF] Reps | Program analysis via graph reachability[END_REF] was defined to deal with realizable paths. A supergraph consists of a collection of control-flow graphs -one for each procedure. Each flowgraph has a unique start node and a unique exit node. The other nodes of the flowgraph represent statements and predicates of the program in the usual way, except that each procedure call in the program is represented in G * by two nodes, a call node and a return-site node. In addition to the ordinary intraprocedural edges that connect the nodes of the individual control-flow graphs, for each procedure call G * contains three more edges: an intraprocedural call-to-returnsite edge; an interprocedural call-to-start edge; and an interprocedural exit-toreturn-site edge.

Suppose we have a simple recursive program smallest (Figure 1a) to find the smallest prime factor of a positive integer number. In Figure 1b, the graph on the left is the regular control-flow graph of program smallest, and the one on the right is the extended supergraph.

In detail, we let each call node in G * be given a unique index from 1 to N , where N is the total number of calling sites in the program. For each calling site, label the call-to-start edge and the exit-to-return-site edge with the symbols "( i " and ") i ", respectively. Label all other edges of G * with the symbol e. A path in G * is a matched path iff the path's word is in the language L(matched) of balanced-parenthesis strings (interspersed with strings of zero or more es) where L(matched) is generated by the following context-free grammar. Then we can use this grammar to determine if any given path is feasible.

matched →matched matched | (imatched )ifor 1 ≤i ≤N | e | ε
From the supergraph, we can identify paths, for example:

-"Call Smallest → Enter → if() → else if() → print(q) → Exit → Return from Smallest", which has word "( 1 eeee) 1 ", is a feasible path since the call-to-start edge "( 1 " is matched by a correct exit-to-return-site edge ") 1 ". -however, for the same path that exits to the inside return-site node ("( 1 eeee) 2 "), we consider it infeasible -"( 1 " was mistakenly matched by ") 2 ".

Alias Analysis

Alias analysis, pointer analysis, points-to analysis, pointer alias analysis etc., are often used interchangeably to denote an analysis that attempts to analyze pointers and aliases, such as run-time values of a pointer, or an aliased pair of names that point to the same run-time location due to the use of pointers or references. Typically, results of alias analysis are sets of aliased variables, say, aliased(x). If l / ∈ aliased(x) for abstract location l and variable x in the program P , then x can never alias to variables represented by l in some execution of P .

Suppose we have a program aliasingTest to test if the three types of variables in Java can be aliased: class variable (static field), instance variable and local variable. All the three types of variables (integer arrays in this example) are first initialized (Line [START_REF] Hind | Pointer analysis: haven't we solved this problem yet?[END_REF]-Line[14]) with integer 1 at the first index. Then we create aliased variables to each of the three (Line[16]-Line [18]). Instead of manipulating the original variables, we run functions on the aliased ones (Line[20]-Line [23]).

After the invocations of the first three functions (either static or non-static), the original variables were actually changed (with first element altered to integer 11), even though the functions only manipulated the aliased copies. Our observation is that, if along a path in the access dependency graph of a program one can obtain the aliasing information for each method, dependencies among methods can be identified more precisely. In particular, we follow these steps to achieve more precise dependencies:

1. A flow-insensitive and context-insensitive alias analysis to compute a single and valid solution to the whole program. 2. We examine the pairs of aliased variables (static field, instance field, and local variable) throughout the program and obtain a mapping from each method f to variables var f and aliased variables aliased(var f ) it can access, i.e., f → {var f , aliased(var f )}.

3. We examine paths in the estimated impact set, for any other changed function g with mapped variables and aliased variables {var g , aliased(var g )} that can be reached by f , if and only if there exists any intersection of {var f , aliased(var f )} and {var g , aliased(var g )}, we say f can be affected by g.

Therefore, in aliasingTest, a dependency edge between function main and function alterEmpty should be removed since there is no aliased variables within alterEmpty that was used in main.

Impact Analysis Overall

We extended our previous approachs in [START_REF] Chen | Large-scale enterprise systems: Changes and impacts[END_REF] and [START_REF] Chen | Combining static and dynamic impact analysis for large-scale enterprise systems[END_REF] by reachability analysis and alias analysis, to form the new process depicted in Figure 2. Note that, the set of potential false-positives was obtained by subtracting the dynamic impact set from the static impact set. The reachability analysis works on this set to find infeasible paths. The alias analysis continues cutting out false-positives from the reduced set by identifying functions that are not able to access the aliased variables of a changed function, if they are not themselves directly changed.

Case Study

In the study, our goal was to investigate whether this new, extended approach can meet our goal, which is to safely remove false-positives from the change impact set. We followed the same order, variables, measures, experiment setup etc., as we did in the experiments in [START_REF] Chen | Large-scale enterprise systems: Changes and impacts[END_REF] and [START_REF] Chen | Combining static and dynamic impact analysis for large-scale enterprise systems[END_REF]. There is only one independent variable in this case study: the extended impact analysis tool. Dependent variables in this study include precision and time overhead. For the measurement of precision, we used the one in Equation 1, where I represents the number of estimated impacts (functions and fields), and M represents the total number of entities in the program.

P recision = |I| |M | (1)

Experimental Setup

The experiment was set up on a desktop server with a Quad core 3.2GHz CPU, 32G RAM and operating system Red Hat Enterprise Linux Server release 5.10 (Tikanga) 64 bit. We used one release of Oracle E-Business Suite (Table 1) as the object of the analysis, and for the source of atomic changes we used one vendor patch (patch # 5565583, 212MB) that can be obtained either from Oracle E-Business Suite Patch Wizard or manually download from Oracle Metalink.

Experiment Design

We had already collected results from static analysis and dynamic analysis in the impact analysis process from [START_REF] Chen | Large-scale enterprise systems: Changes and impacts[END_REF] and [START_REF] Chen | Combining static and dynamic impact analysis for large-scale enterprise systems[END_REF]. Thus, for this experiment we focused only on the improvements made through reachability analysis and alias analysis. Then CFL-reachability analysis was implemented via Wala [START_REF] Center | watson libraries for analysis main page[END_REF] to cut down false-positives. We ran the Tabulation algorithm [START_REF] Reps | Precise interprocedural dataflow analysis via graph reachability[END_REF] implemented by Wala on the set of "potential false-positives". The alias analysis takes the processed "potential false-positives" from the above reachability analysis as the input, and calculates aliasing information, such that methods that have no accesses to those aliased and changed variables in the system are not considered as affected. Another input is the set of changes resulting from the patch analysis. What we need is to find the methods on a particular path that access those changed variables and also variables that are aliased with them. For the sake of safety, we assume here that, if a function is changed, then potentially all of its accessible variables can be changed.

Results and Analysis

The system used in our case study contains 195,999 classes. We determined that there are 3,157,947 entities (both functions and fields) in the system. The process of building the access dependency graph added over 18.4 million dependencies and took over 9.5 hours to complete. By patch analysis, we found 16,787 direct database changes, and 25,613 direct library changes (classes) for patch #5565583. The static analysis identified 8,154 direct changed functions for this patch, which led to 699,534 affected functions (22% of the total functions), and 160,800 affected top functions (9.6% of the total top functions) in the system. The computed impacts for the patch after static analysis and dynamic analysis are shown in Table 2.

Thus we had 694,728 "potential false-positives" to work on in the reachability and alias analysis. Both CFL-reachability analysis and alias analysis were implemented via Wala. We ran Wala on the enclosing classes of each function in those "potential false-positives", and then mapped identified feasible statements to functions in the system. Then those functions with the direct changes (42,400) were given to Wala's alias analysis framework to find aliased variables for each changed function. In the end, we found many of the functions within the "potential false-positives" were not present in feasible paths (611,253) or able to access any aliased variables (863,374) of changed functions. We therefore removed 6,865,697 (37.3 %) dependencies from the original dependency graph. We summarized the results in Table 3.

Fig. 3: Execution Time for Patch #5565583

As we can see from Table 3, we achieved a precision of 3.8% at the end of the static analysis and then improved it to 2.98% at the end of the complete approach. The dynamic analysis identified that only 4,806 functions to be executed, which left a large portion (99%) of the static impacts as potential false-positives. The reachability analysis and alias analysis reduced the false positives by 21.8% . At the current stage, our case study does not include a user's application built on Oracle's E-Business Suite, so the impacted entities are confined to E-Business Suite. That explains why, even with a reasonably large number of real executions, the dynamic impacts are associated with just a tiny part of the system.

The entire process requires considerable time to complete (see Figure 3). Considering the sizes of the system and patch, it is still more manageable than rerunning everything in the regression suite. More crucially, it provides testers more confidence as to which parts in the system are affected. The most timeconsuming task is the instrumentation, which occupies around 56.8% of the total execution time. As with the static dependency graph, the instrumentation forms a substantial corporate asset for future analysis, and can be easily and quickly updated as needed.

Conclusion and Future Work

In this work, we have incorporated CFL-reachability analysis and alias analysis in identifying software impacts. As far as we can ascertain, these two techniques have not been used in this way to cut down on the false-positives in preceding analyses. It has been demonstrated that CFL-reachability with a parenthesis context-free grammar can be used to filter out infeasible paths (mis-matched calls and returns), that may become false-positives in the impact set. An alias analysis was conducted to identify functions that are able to access the aliased and changed variables. We consider those that are not able to access any of the aliased and changed variables to be false-positives, if they themselves are not directly changed. Also, we have demonstrated the practical applicability of the improved approach on a very large enterprise system, involving hundreds of thousands of classes. Such systems may be perhaps two orders of magnitude larger than the systems analyzed by other approaches, so our technique seems to be uniquely powerful.

Initally, considering the running time and effort expended, we were a little disappointed in the percentage of false-positives removed by this technique. However, after examining the results more carefully, we realized that: (1) the actual number of false-positives removed was significant; and (2) as we discussed earlier, because there is no user's application in our case study, the impact analysis is restricted to functions within the system, and in particular, many of the identified impacted functions are system APIs. Further study will be needed to determine whether results are better for a user application built on E-Business Suite. Also, the alias analysis we used is flow-insensitive and context-insensitive. It assumes statements in the program can be executed in any order and any number of times. In practice this is not a precise approach. The imprecision can also come from the context-insensitivity: method calls were treated conservatively, without computing the precise target addresses of the return statements. Hence, in the future, it is worth investigating whether a more precise approach can be derived for large-scale enterprise systems.

1 (Fig. 1 :

 11 Fig. 1: Program smallest and its graphs. Dashed nodes and arrows correspond to extra nodes and edges while expanding from G to G * .

Table 1 :

 1 Oracle E-Business Suite Release 11i and Some Facts

	Enterprise
	System

Table 2 :

 2 Instrumentation Result on Patch # 5565583

	Static Dynamic Rmd By Reachability Rmd By Alias Final Impacts
	699,534 4,806	61,125	86,374	547,229

Table 3 :

 3 Final Impacts of Patch # 5565583