In my PhD I developed an approach for improving the creation of analytical information systems. In this approach I applied software engineering principles to the creation of data warehouses. In particular I used a Model Driven Software Development (MDSD) and Software Language Engineering approach for describing and generating Analytical Information system. I combined different languages on DWH modelling like ADAPT or ETL languages.
Some of the concepts have been used in real world Enterprise Data Warehousing projects afterwards and were also integrated in tools.
The thesis was supervised by Prof. Dr. Andreas Winter from the University of Oldenburg.
Here is the official abstract:
Analytical Information Systems (AIS) support decision making within organizations. They allow complex analysis based on integrated datasets. These integrated datasets are based on systems with different technologies and content. AIS are complex software systems. During their build-up, many technical aspects, such as connection and data transformation for the involved data sources, or the definition of analysis schemas, have to be considered. During AIS creation projects, different roles with different levels of abstraction are involved. In state-of-the-art approaches, these different aspects are treated individually. Therefore, an integrated creation of these systems is difficult. So, a lot of schematic work is needed to build-up an AIS. Verification of AIS, built-up this way, is also difficult. For instance, it cannot be assured that for a particular computation an analysis exists. For these reasons and others, AIS creation projects are costly.
The key contribution of this thesis is the autoMAIS (Automatic Model-Driven Analytical Information Systems) approach which improves the AIS creation process. Within this approach, techniques of model-driven software development are used to create an integrated view on the AIS creation process. To do so, the AIS creation process is split up into different aspects, such as measures, analysis schema, and data transformation. Each identified aspect is described with a domain-specific language. For language development, already existing textual or graphical languages are used or adapted. In some cases, completely new languages have been developed. The developed languages are integrated into one single meta model which describes the complete resulting AIS. Based on this integrated meta model, transformations can be defined and executed. The transformations enable the generation of the bigger part of an AIS. The creation of the language instances and the generation of the AIS is guided by a process model.
One advantage of the autoMAIS approach is that each aspect is described by an appropriate language which can be understood by the language user. With the integrated meta model, these language instances are connected to each other and, therefore, the complete resulting AIS can be used for making decisions. With this approach, verification is improved and schematic work can be reduced. Additional creation of up-to-date documentation is also possible. These improvements led to a more efficient and faster AIS creation.
The autoMAIS approach has been implemented as a prototype within the MUSTANG analysis platform. In the evaluation, this prototype is used in two different projects. In one project, autoMAIS is used to rebuild parts of an existing AIS to compare the development effort to the traditional approach. After that, autoMAIS is used in a real customer project. It was shown that autoMAIS improves the build of Analytical Information Systems compared to the traditional approaches.