A good and optimal Universe design is very crucial to any Business Objects Business Intelligence Solution. Be it the WebIntelligence reports or Xcelsius dashboards a good universe can do wonders to the performance, usability and ad hoc capability of the BI solution.

Following are some basic and quick checkpoints to review a Universe Design before finalizing the development:

  • A generic user id should be created and used in the Universe connection parameters instead of the developer's personal ID.
  • Database owner name should not be prefixed to the table names
  • If the customer does not have their own standards define some naming conventions and use them. For example:
    • Capitalize the first letter only and use Under Score in Table Names
    • Prefix the Aliases with Als
    • Prefix the Derived tables with Drv
  • Group the measures together if the design supports it for each subject area
  • Design should be logically separated and description added in the Universe designer interface for each schema. For example if there are multiple star schemas for each subject area then label the subject area name in the Universe designer area
  • All the classes and objects should have descriptions entered with no exceptions.
  • Do not skip the Universe Integrity check.
  • Joins should be derived from the database only if the database design is stable and robust
  • If the development data is not reliable then it is worth double checking the cardinalities suggested by Cardinality check or a better option is to assign cardinality yourself based on the data model.
  • Derived tables should not be used as a trick to simply avoid creating schemas in the Universe. Derived tables are a good option in situations like partitioning of data needs to be done (like pulling only 3 years of data from a big table) or the logic is too complex to be handled or when custom data needs to be generated.
  • Careful consideration about the future scalability should be made before limiting data at the Universe level using advanced joins
  • Linking Universes is a good option to embed reusability and also controlling the user access to data elements. However, for managing access to data elements it is important to evaluate the detailed security requirements and various options in which it could be achieved for example, creating logical grouping of classes and objects and managing access restrictions in the single Universe.
  • Creation of global filters increases ad hoc capability and reduces development time.
  • Short cut joins should be implemented in the Universe carefully to achieve better query performance
  • Functions like aggregate awareness can be used in conjunction with database design to improve the query performances
  • Last but not the least; make sure to alter the controls for the query limits according to the reporting requirements.