Sometimes, the client has to make modular structures to satisfy the needs of each department separately, but when the necessity for mixed information between departments appears, joining such modules is a requirement. The response to this problem is Linked Universes.
The Linked Universes technique consists in merging a general universe (Core Universe) into another (Linked Universe) to use them as one and thus avoiding repeating objects, tables, relations, etc. With this methodology we can save development time by better organizing and using the Universes, easily mixing different data areas in one Universe and providing a better reporting design experience too for the front-end developers.
With this working method, we can have several Universes (Core Universes) embedded into another one and satisfy the demand of reports in different departments that contain integrated data. For example, we can put the Universe of “Product” together with a “Sales” Universe. In such case, the two Universes might initially have different owners, one per each department, but, typically, the Sales Department would be the “sponsor” of this new universe and require the products information to the Marketing department, so it can enrich their Sales with the product features.
In that example, the Core Universe would be the “product” one and we would add such items in “read-only” mode to the “Sales” Universe so, eventually, a report with both data sets combined could be created.
Let’s now show a practical example taken from a legal department’s need. We have all the information about legal procedures on company assets and the data model looks like this:
This Universe has legal procedures about finance items, but we are specifically missing all the financial information about them. If we want to report on both pieces of information, we will need a model that includes such financial information and complements such legal procedures information.
The plan is, therefore, to add the financial Universe as a Core Universe, complement the legal information universe and make reports with data from both. Of course, these Universes need to have a relation.
Using the Information Design Tool from the SAP Business Intelligence (BI) Client tools set, in the “Core Business Layers” tab from the data foundation of our Linked Universe, we have the possibility to add, refresh and remove core Universes.
To add a Universe, we only need to select “Add Core” and add it. After this, the last step is to make the relationship between them and then we will have all the elements of each Universe without redundancies.
This is the look & feel of the data foundation in a single Core linked Universe. The core universes part appears as greyed out indicating they are read-only components:
The business layer part is not shown here but behaves the same way: the core universe objects are read-only but can be used to make our enhancements and additions inside the Linked Universe. Finally, we have both Universes joined and ready to use.
When maintaining universes, apart from Adding Cores, other possibilities: include to Synchronize Cores, which enables you to refresh the latest changes from the newest Core Universe version. You can also Include Cores and Remove Cores, but these might never be used, as they would physically merge the two universes into one or delete a part of it, making the resulting universe unusable and, the reports that depend on it, inaccessibles.
Summary of benefits and some limitations:
The greatest advantage of this solution is that we can mix information from different departments. Then, we can produce interesting reports with a global vision from diverse business areas, or amplify the existing information of another model that could be beneficial to incorporate. If we wanted to do this in two separate universes we wouldn’t be able to, for example, easily get the debt information of a person to develop a report, especially for a business user.
Not only can we incorporate just one, but several Core Universes, which amplifies the integration possibilities.
Another advantage is the ability to work on a modular approach with more than one team. For instance, if we have a master universe that is slowly updated, let’s say once per year, perhaps it’s a good idea to make it a core one. We could work with our linked universe so we can make our additions and enhancements on top of it and, when a new edition of the core one comes, we can replace it without losing our changes.
One of the most important handicaps is the difficulty to maintain. When we update and publish a Universe used as a Core Universe in other Universes, we need to go to the Linked Universes to Synchronize the Core Universe. If we don’t have a clear idea of where such Universe is used, we can have problems with reports (data, errors of objects, etc.). This “lack of self-documentation” does not encourage many clients to use this solution.
Another difficulty in use is that we cannot modify the information that comes from the Core Universes since it’s “read-only”. As stated before, we can include it to modify it, but then it won’t be possible to synchronize it since it will be part of the Linked Universe and it won’t have a connection with the Core Universe. The only way to modify the information of a Core Universe is to edit it separately as if it was the only one, and then open the Linked Universe and synchronize it.
Another disappointing topic is the inability to mix data from different sources. Connections can be different, but the source must be the same. In this sense, Linked Universes are not what they seem.
This is actually not a new feature, as it has always been there for the old legacy Universe Design Tools and UNV format universes. Even back then, this feature was never extensively used due to its fragility, difficulty to maintain and a potential challenge in migrations to future versions.
Despite the downsides, we believe that Linked Universes are a vital feature of the Information Design Tool due to all the possibilities and advantages that they enable. Plenty of far more interesting, easier and modular developments can be made using them. What’s your opinion about it? Let us know in the comments below if you find them useful too or not, we would love to know your experiences with Linked Universes!