<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Using SLE for creation of Data Warehouses</article-title>
      </title-group>
      <contrib-group>
        <aff id="aff0">
          <label>0</label>
          <institution>OFFIS, Institute for Information Technology</institution>
          ,
          <country country="DE">Germany</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>This paper describes how software language engineering is applied to the process of data warehouse creation. The creation of a data warehouse is a complex process and therefore costly. My approach decomposes the data warehouse creation process into di erent aspects. These aspects are described with di erent languages which are integrated by a metamodel. Based on this metamodel, large parts of the data warehouse creation process can be generated. With my approach data warehouses are created more comfortable in less time.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>Health Reporting describes the preparation and presentation of health relevant
issues relating to population. It is used to give information to stakeholders in the
health care system, politicians and interested non-professionals. Furthermore,
risks are identi ed and appropriate warnings issued. In the Federal State of North
Rhine-Westphalia this task is carried out by the government agency for public
health called LIGA (Landesinstitut fur Gesundheit und Arbeit). LIGA provides
a variety of di erent reports and is able to answer ad hoc questions. The reports
are based on data from di erent sources and di erent systems with di erent
formats. These sources are e.g. data from di erent public health departments
or insurances. To ful ll these requirements, software support is needed. This
means data has to be integrated into one dataset so that di erent sources can be
related. Support is also needed for transforming data on regular basis into the
integrated dataset. Also frontend and report generation has to be developed.</p>
      <p>
        One software system providing this support is the MUSTANG platform
developed at OFFIS. MUSTANG is used at LIGA. The base of each MUSTANG
instance is an integrated dataset, this is also called data warehouse (DWH). In
an integrated dataset all relevant organizational knowledge is stored for
complex analysis. For fast data navigation and analysis, Online Analytical
Processing (OLAP) [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] is often used. OLAP is an approach that allows navigation and
querying data more comfortable than using exact queries like SQL. For OLAP
a multidimensional data model is needed. The initial build-up of a DWH with
a multidimensional integrated dataset is a complex task [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. During the initial
build-up of DWH the following analyzing and design steps have to be performed:
      </p>
      <p>Analysis of organizational data: To nd data that can be used in the
resulting DWH, existing data sources have to be analyzed. This analysis
includes the content, format and the accessibility of the data. This kind of data is
called fact data. In a DWH this fact data is extracted and integrated into the
so called integrated dataset. De ne information demand: De ne what
information should be provided by the DWH. This can be simple gures or complex
computations. Data source transformation: Fact data has to be transformed
in the data format of the integrated dataset. Therefore, for every data source a
transformation has to be designed that translates data into the format of the
integrated data set and stores it there. De ne multidimensional data model:
De nes how fact data can be described multidimensionally and grouped together
in hierarchies. Data quality: Based on DWH, analysis decisions are made so it
is important to de ne data quality standards and how to identify invalid data.</p>
      <p>To perform these steps no standardized process exists. Documentation of
these steps is usually done with a large number of documents. A problem with
this kind of documentation is missing, distributed or inconsistent information.
Another aspect is that during realization a lot schematic work has to be done.
For example, a multidimensional schema has to be designed and realized in the
OLAP system, the integrated dataset, and at the frontend software.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Related Work</title>
      <p>
        Data Warehouse analysis and design as described in [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] consists of di erent
phases. For these di erent phases of the DWH creation, languages and tools have
been developed. In case of multidimensional modeling, languages like Application
Design for Analytical Processing Technologies (ADAPT) by [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] exist. There are
also languages that describe mapping for relational databases like R2D [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] or
languages that describe data quality issues like InDaQu [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ].
      </p>
      <p>
        Another eld of related work is automated creation of DWHs. The feasibility
to connect MDA with the DWH process has been shown in [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]. They also
developed a MDA framework for DWH. It covers data integration, data sources, and
multidimensional models. The authors show the application of their approach
through a case study. However, their main focus are models and not languages.
      </p>
      <p>
        More related to SLE is the work of Rizzi. His group deals with modeling di
erent aspects of DWHs. For example in [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] modeling technique for data cubes and
data ows are suggested and in [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] a UML based approach for what if -analysis
is provided. Another work that deals with SLE and aspects of DWH creation is
[
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. They use modeling languages to generate multidimensional schemas.
      </p>
      <p>All these approaches only deal with a certain aspect of DWH creation, not
with the whole process with language support. In my thesis, I will develop an
approach with languages that cover the whole process of DWH creation. These
languages are integrated through a common metamodel and can deal with
multidimensional structures. Based on the metamodel I will create transformations
that allow generating large parts of the resulting DWH. With these
transformations, schematic work in the step of realization is reduced. Furthermore, I will
create a process model that orders the steps described in combination with the
developed languages to improve documentation. With the process model, the
di erent aspects are connected and re ned.</p>
    </sec>
    <sec id="sec-3">
      <title>Proposed Solution</title>
      <p>Data warehouses, as describes here, are very complex systems with di erent
views, aspects, and levels of detail. To create a single language, these systems
are di cult and not easy to use and maintain. Therefore, it is necessary to
decompose a DWH creation into di erent aspects and create languages for each.
The di erent languages will be used by di erent roles and provide a di erent
level of detail. A rst result is that the process can be decomposed in six aspects:</p>
      <p>Data Sources Schemas: Describes all relevant or available data stored in
its operational system of an organization. This aspect contains the subject, the
representation, and technical accessibility. The advantage is that all relevant
sources are described together with their formats and accessibility at one place.
For this aspect the development of an own language may not be necessary but
a meta model will be su cient.</p>
      <p>Data Source Transformation: Describes how data from the sources have
to be transformed to match the analysis schema. Such a description makes it
possible to abstract from the concrete target system and some automatic matching
process can be applied.</p>
      <p>
        Analysis Schema: This aspect describes the multidimensional schema of
the resulting DWH. The multidimensional schema consists of cubes and
dimensions. In a cube, fact data is stored. Each cell represents fact data that is
numerical and can be aggregated. They are described by dimensional metadata. In a
cube with a time dimension, fact data is stored for dates so monthly and yearly
values are computed by aggregation. The language is based on ADAPT. With
such a language it is possible to reduce schematic work in the realization phase,
as shown in [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ], and it can be used to communicate with domain experts.
      </p>
      <p>Measures: Describes what kind of information is intended to be stored in the
DWH. This can be simple fact data like infections. It also includes the designated
granularity of information. For example, to predict an epidemic infect, data
should be available for every date. Measures link fact data with mathematical
operations. In Health Reporting, these are mostly crude rates, interest, and
average. Measures are usually de ned by domain experts, in case of LIGA by
epidemiologists. Measures are re ned in the analysis schema. With a language
for measures the de nition can be used in the realization process and does not
need to be reimplemented.</p>
      <p>Hierarchy: The hierarchy aspect is a central one in my thesis because all
other aspects use this directly or indirectly. This aspect describes how data is
aggregated. In most cases hierarchies have many members and a complex structure
and they are used in the multidimensional model. For example, imagine a
geographical dimension that contains countries and cities. Using an own language,
these structures can be modeled appropriate. It can help to build a repository
that can be reused in a di erent DWH. The concrete syntax of the hierarchy
language is based on ADAPT. However, it only allows to model hierarchies
conceptually. To model hierarchies logically a tabular extension was created. To
create parent-child relationships a query language was also integrated.</p>
      <p>
        Data Quality: In a DWH it is important to ensure that certain quality
issues are met. Naturally, data quality is an aspect of the data sources but when
integrating di erent systems it would be very costly to deal with quality at the
sources because many di erent systems have to be considered and changing these
systems is rarely possible. Data quality is a large research eld. In my approach,
I want to integrate existing approaches to show how data quality issues can be
integrated. InDaQu [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] is integrated to deal with data consistency.
      </p>
      <p>
        The languages for the described aspects are developed independently. Each
language is developed with SLE techniques [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] and based on tools like EMF [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]
and MS DSL Tools [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. To generate a DWH, the di erent languages and their
metamodels have to be integrated into one metamodel because the di erent
aspects are very strongly related. Furthermore, to be able to cover the whole
process refering elements from other aspects is necessary.
      </p>
      <p>
        The integrated metamodel covers all aspects of a DWH at one place. A
common metamodel is a standardized documentation of the whole DWH system.
Other possiblities of an integrated metamodel have been shown in [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ]. To
integrate a metamodel, [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] suggests two ways, via transformation and via common
elements. I decided to use integration via unidirectional transformation for
integration into metamodel. I created my DSLs with MS DSL Tools but for better
analysis and transformation I move the models to EMF. The common
metamodel consists of di erent separated metamodels. These are kept in di erent
les, as suggested in [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]. The di erent metamodels are integrated via common
elements and the instances via soft references.
      </p>
      <p>The advantage of using SLE for the creation of DWHs is that experts can
design and analyze all aspects of the DWH independently in adequate domain
speci c languages. Using the integrated metamodel the generation of a DWH is
easier because all information and transformations are in that single model.
4</p>
    </sec>
    <sec id="sec-4">
      <title>Research Method</title>
      <p>My hypothesis will be validated via implementation. I will implement the
described languages, metamodels, and transformations on basis of the MUSTANG
platform. My prototype will be able to generate a con guration for a DWH. I
will regenerate parts of the LIGA DWH that was developed by OFFIS. I will
compare the steps taken. When using my approach these steps will be reduced.
5</p>
    </sec>
    <sec id="sec-5">
      <title>Conclusion</title>
      <p>Currently I have developed three languages for hierarchies, analysis schema, and
data quality. I integrated them in a common metamodel. Based on this,
transformations for generating multidimensional schemas in databases and integration
interface with consistency were built. The next action is to develop languages
for data sources and data integration as well as the extension of the common
metamodel. The current state of my thesis shows that modeling and generation
of data warehouses can be possible and reasonable with SLE.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Bauer</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          , Gunzel, H.:
          <article-title>Data-Warehouse-Systeme</article-title>
          . Architektur, Entwicklung, Anwendung. Dpunkt Verlag (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Bizer</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <article-title>D2R MAP - a database to rdf mapping language</article-title>
          .
          <source>In: WWW (Posters)</source>
          (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Bulos</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>OLAP database design: A new dimension</article-title>
          .
          <source>Database Programming&amp;Design</source>
          Vol.
          <volume>9</volume>
          (
          <issue>6</issue>
          ) (
          <year>1996</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Codd</surname>
            ,
            <given-names>E.F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Codd</surname>
            ,
            <given-names>S.B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Salley</surname>
          </string-name>
          , C.T.:
          <article-title>Providing OLAP to User-Analysts: An IT mandate</article-title>
          . White paper,
          <string-name>
            <given-names>E.F.</given-names>
            <surname>Codd Associates</surname>
          </string-name>
          (
          <year>1993</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Cook</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Jones</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kent</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Domain Speci c Development with Visual Studio DSL Tools (Microsoft .net Development)</article-title>
          .
          <string-name>
            <surname>Addison-Wesley</surname>
            <given-names>Longman</given-names>
          </string-name>
          , Amsterdam (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Favre</surname>
            ,
            <given-names>J.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gasevic</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          , Lammel, R.,
          <string-name>
            <surname>Winter</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Editorial - software language engineering</article-title>
          .
          <source>IET Software</source>
          <volume>2</volume>
          (
          <issue>3</issue>
          ),
          <volume>161</volume>
          {
          <fpage>164</fpage>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Gluchowski</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kurze</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schieder</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <article-title>A modeling tool for multidimensional data using the adapt notation</article-title>
          .
          <source>In: HICSS</source>
          . pp.
          <volume>1</volume>
          {
          <fpage>10</fpage>
          . IEEE Computer Society (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Golfarelli</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Data Warehousing Design and Advanced Engineering Applications: Methods for Complex Construction, chap. From User Requirements to Conceptual Design in Data Warehouse Design -</article-title>
          a
          <string-name>
            <surname>Survey</surname>
          </string-name>
          .
          <source>Information Science Reference</source>
          (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Golfarelli</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rizzi</surname>
            ,
            <given-names>S.:</given-names>
          </string-name>
          <article-title>UML-Based modeling for What-If Analysis</article-title>
          .
          <source>In: DaWaK '08: Proceedings of the 10th international conference on Data Warehousing and Knowledge DiscoveryMazon</source>
          . pp.
          <volume>1</volume>
          {
          <fpage>12</fpage>
          . Springer-Verlag, Berlin, Heidelberg (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Kelly</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tolvanen</surname>
            ,
            <given-names>J.P.</given-names>
          </string-name>
          :
          <article-title>Domain-Speci c Modeling: Enabling Full Code Generation</article-title>
          . John Wiley &amp; Sons (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Kleppe</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Software Language Engineering: Creating Domain-Speci c Languages Using Metamodels</article-title>
          .
          <string-name>
            <surname>Addison-Wesley Longman</surname>
          </string-name>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Mazon</surname>
            ,
            <given-names>J.N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Trujillo</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Serrano</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Piattini</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Applying MDA to the development of data warehouses</article-title>
          .
          <source>In: DOLAP '05: Proceedings of the 8th ACM international workshop on Data warehousing and OLAP</source>
          . pp.
          <volume>57</volume>
          {
          <fpage>66</fpage>
          .
          <string-name>
            <surname>ACM</surname>
          </string-name>
          , New York, NY, USA (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Pardillo</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Golfarelli</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rizzi</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Trujillo</surname>
          </string-name>
          , J.:
          <article-title>Visual modelling of Data Warehousing Flows with UML pro les</article-title>
          . In: Pedersen,
          <string-name>
            <given-names>T.B.</given-names>
            ,
            <surname>Mohania</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.K.</given-names>
            ,
            <surname>Tjoa</surname>
          </string-name>
          , A.M. (eds.)
          <source>DaWaK. Lecture Notes in Computer Science</source>
          , vol.
          <volume>5691</volume>
          , pp.
          <volume>36</volume>
          {
          <fpage>47</fpage>
          . Springer (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Steinberg</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Budinsky</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Paternostro</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Merks</surname>
          </string-name>
          , E.: EMF:
          <article-title>Eclipse Modeling Framework</article-title>
          .
          <string-name>
            <surname>Addison-Wesley Longman</surname>
          </string-name>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Teiken</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          , Bruggemann,
          <string-name>
            <given-names>S.</given-names>
            ,
            <surname>Appelrath</surname>
          </string-name>
          ,
          <string-name>
            <surname>H.J.:</surname>
          </string-name>
          <article-title>Interchangeable consistency constraints for public health care systems</article-title>
          . In: Shin,
          <string-name>
            <given-names>S.Y.</given-names>
            ,
            <surname>Ossowski</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            ,
            <surname>Schumacher</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Palakal</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.J.</given-names>
            ,
            <surname>Hung</surname>
          </string-name>
          , C.C. (eds.) SAC. pp.
          <volume>1411</volume>
          {
          <fpage>1416</fpage>
          .
          <string-name>
            <surname>ACM</surname>
          </string-name>
          (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Teiken</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <article-title>Floring, S.: A common meta-model for data analysis based on dsm</article-title>
          .
          <source>In: The 8th OOPSLA workshop on domain-speci c modeling</source>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Teiken</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rohde</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Appelrath</surname>
            ,
            <given-names>H.J.</given-names>
          </string-name>
          :
          <article-title>Model-driven ad hoc data integration in the context of a Population-based Cancer Registry</article-title>
          .
          <source>In: ICSOFT</source>
          <year>2010</year>
          (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>