Are you an EPFL student looking for a semester project?
Work with us on data science and visualisation projects, and deploy your project as an app on top of GraphSearch.
This thesis presents the Situation-Based Modeling Framework for Enterprise Architecture. This framework improves system modeling by making models more systemic and, therefore, making reasoning about these models easier. The context of this thesis is Enterprise Architecture (EA). EA enables enterprises to anticipate or react to necessary business or technical changes. EA models have to represent enterprises facets from marketing to IT. As a result, EA models tend to become large and complex. To cope with the complexities of large enterprise models, they are usually considered as compositions of smaller, manageable parts: concerns. We call Concern-Based Design Methods (CBDMs) the methods that support modeling with concerns. In order to understand how CBDMs can be used in EA, we have made the systemic analysis of twenty of the most influential CBDMs that can be used in the context of EA. In our analysis we have studied the ontological, epistemological, theoretical and methodological principles of the considered CBDMs. The result of the analysis shows that ontological and theoretical principles are often supported by CBDMs. These principles make CBDMs convenient for the management of systems' concerns: CBDMs explain how to define, store, compose and reuse systems' concerns. However, the support of methodological and epistemological principles in the existing CBDMs is often missing. In our work we concentrate on the support of the epistemological principles. Epistemology reflects the way human cognize. Without epistemological principles, CBDMs result in models that are difficult to understand and reasoning about. In this thesis we present a Situation-Based Modeling Framework. The novelty of our framework is its foundation in a set of epistemological principles. These principles originate from our state of the art analysis of the existing CBDMs. They allow for building models that are more systemic and, therefore, more comprehensible. Between them the following principles we consider as the most important in the context of EA: Situation Relativity: a modeling method should support explicit modeling of situations. State and Behavior Holism: the state (or data) and behavior models should be integrated in the context of EA. This allows for identifying breakdowns in behavior/data interactions and for specifying explicitly the life cycle of information elements: i.e. when and where information elements are created, used and deleted. Diagrammatic representation: this principle is especially important in the context of EA. EA design models should be used by specialists with different backgrounds. These specialists have to communicate in languages that can be rapidly understood by all of them. Visual languages help to solve this problem. The first principle plays the central role in the definition of our framework. In our Situation-Based Modeling Framework we propose to identify system concerns by means of considering a system of interest in a number of specific situations. Concerns are explicitly related to these situations. The whole behavior of a system is defined as the composition of these situation-related concerns. In order to make situations the first-class citizens of our modeling framework, we took the key principles for our framework from the situation theory. The situation theory is a mathematical theory of meaning which clarifies and resolves some problems in the study of language, information, logic, philosophy, and the mind. The direct application of this theory is not feasible in the context of EA because this theory is quite formal and too much adapted to linguistic needs. However, we took the basic principles from this theory as foundations of our situation-based modeling framework: Situation-based modeling: Any entity (a system) should be considered in a number of situations. Any assertion about system properties depends on a situation. Explicit modeling of constraints between situations: the mutual relations between concerns of the same system should be modeled explicitly. In our work we model these mutual relations with composition constraints. Using composition constraints allows a designer to make her decisions about the composition of concerns explicit. Hierarchical modeling of situations: The behavior of an enterprise system should be represented in the form of the role hierarchy that corresponds to the hierarchy of situations. The main impact of this work consists in making systems' functional models more systemic. These models are more understandable, human friendly and comfortable for reasoning. We have confirmed this impact of our modeling framework with three applications: in the domain of software engineering we used our framework as the basis for the Rapid Prototyping Tool based on Aspect-Oriented and Subject-Oriented programming. In the domain of business process modeling we applied our framework as the theoretical background for the conceptual tool for business process innovations and for the specification of a manufacturing process. This application for the specification of a manufacturing process was used as a practical validation of our framework. We used our framework for a project in a big pharmaceutical company. This company needed to introduce a MES (Manufacturing Execution System) to ensure the order of the manufacturing process. The project members acknowledged the ability of our framework to improve the comprehensibility of a manufacturing process. Another important result of this thesis is a step forward in categorizing numerous CBDMs that can be used in the context of EA. We have defined the requirements for CBDMs. These requirements can be used: to evaluate, compare and choose appropriate CBDMs for using them in EA projects; to develop new CBDMs in the context of EA or to extend existing methods with concern-based modeling.