Due to the increasing complexity in Enterprise Architectures (EA), organization-specific Key Performance Indicators (KPI) are an important tool for the measurement of certain EA characteristics, and hence support the understanding of the EA's structure and its dynamics. Therefore, our group developed a method for defining EAM KPIs based on an uniform and configurable structure as well as a catalog consisting of concrete KPIs gathered from literature and industry. Furthermore, in previous research, we implemented the prototype of a model-based expression language (MxL), which empowers business users to formally define KPIs allowing tool-supported evaluation of EAM KPIs.
However, the design method for defining EAM KPIs is still lacking a proper implementation, which supports the enterprise architect in selecting, instantiating, and configuring KPIs based on the structure and catalog developed by our group. Moreover, the implementation has to support the adaption of the KPIs to a given organization-specific context.
Therefore, this thesis examines the shortcomings of the initial language design of MxL and its implementation regarding their suitability for the implementation of the EAM KPI definition design method. Based on these shortcomings, the thesis focuses on the reengineering of MxL and its implementation on the one hand, and the extension of the prototype to allow the implementation of both the EAM KPI structure and the EAM KPI Catalog on the other hand.
The result of the thesis is a prototype supporting all steps of the design method for defining EAM KPIs, i.e. enterprise architects can choose from existing KPIs from the catalog and adapt them to organization-specific needs without violating the enviroments consistency. Hence, the prototype is a first step towards an integrated EAM environment supporting enterprise architects to define, document, evaluate, and interpret EAM KPIs.
KPIs are an important tool to monitor, measure, and evaluate certain performance-related EA characteristics and to measure the degree of achievement of given EAM goals. Due to the lack of practice-proven KPIs, Matthes et al gathered 52 KPIs from literature and industry partners for the development of the EAM KPI Catalog. Based on this catalog, Monahov et al} designed the language MxL 1.0 for the formal computation prescription of the KPIs, enabling a tool-supported evaluation of the defined KPIs.
The goal of the thesis is the prototypical implementation of an integrated and adaptable EAM platform based on the EAM KPI Catalog. However, reveals some shortcomings of existing foundations, namely MxL 1.0's missing support for compile-time analysis, and the lack of both a type-based template engine and a proper deployment mechanism in Tricia. Moreover, MxL 1.0 is very tightly coupled to Tricia, ruling out the integration of MxL 1.0 in other tools.
To address MxL's issues, this thesis covers the development of MxL 2.0 and its implementation in Tricia. In contrast to MxL 1.0, MxL 2.0 is type safe, i.e., a type checker analysis an expression at compile-time and checks, if all the expression's identifiers are referring to existing assets. By interpreting an EA as a dynamic system, MxL 2.0 expressions allow the formalization and analysis of dependencies of system components. Moreover, MxL 2.0 was decoupled from Tricia. It provides a connector component as interface between MxL 2.0 and the implementing system, so that MxL 2.0 is easily integratable in any tool.
Subsequently, this thesis covers the extension of Tricia by a type-based template engine. While Tricia in its original state already provided a template-engine, it was not possible to define type-specific layouts, but just one common page layout. Hence, the implemented type-based template engine allows the definition of a page template for each type, whereas this layout is applied onto each of the type's instances. Furthermore, the thesis describes the implementation of a mechanism to deploy the EAM KPI Catalog's data and structure in an intuitive and descriptive way. This allows the definition of the data, which has to be created on Tricia's initialization, in a human-readable notation, so that the Living KPI prototype's data is flexible and easily adaptable to eventual changes of the EAM KPI Catalog.
Therefore, this thesis enables the implementation of the Living KPIs, i.e., by using MxL 2.0 to formally define the EAM KPI Catalog's KPIs, defining a page template for the EAM KPI descriptions, and defining all the catalog's data and structure as initial data, which has to be loaded on the initialization of the Living KPIs.