Scrap the App, Keep the Data

Barnabas Davoti

Ovitas AS

Storgata 30155OsloNorway


Whether by reacting swiftly to shifting market conditions and disruptive technologies or by growing through mergers and acquisitions, the ability to adapt is critical to success in the digital age.

As business processes and workflows evolve, new technologies and systems are constantly introduced to support them. Over time, IT estates become fragmented, and the number of legacy systems increases year by year. Valuable data ends up in isolated silos, only accessible via otherwise unnecessary applications that are expensive to maintain and license or are approaching the end of life.

This paper suggests a generic approach to transform arbitrary relational data into aggregated, hierarchical form and build a thin application to provide read access to end users.

In my presentation, I would like to point out why the relational model falls short when it comes to data aggregation.

XML can easily model both relational and hierarchical data. It's an excellent choice for data re-modeling and also for building a thin, data access application.

The approach is based on experience from multiple projects.

XML "bricks" used in the solution:

  • processing pipeline configuration as XML (Apache Ant)

  • XSLT

  • XQuery

  • XML database

Table of Contents

Business issue
Data archiving and application decommissioning
Freeing up licenses
Merging data silos
Technical angle
Relational data
Hierarchical data
Different paths to consider
Use a proprietary connector
Use the app's export/import functionality
Export the data from the app's relational database and aggregate it into hierarchical XML records
Export the data from the app's relational database, serialize and store it as relational XML records
Data virtualization
Execution framework
Execution steps