This action might not be possible to undo. Are you sure you want to continue?
Best Practices for BO XI R2 Universe Designer
An a technical paper
Written by Sivakanth Panchagnula Business Objects Enterprise Architect -Center of Excellence for BI & IM Wipro Technologies
Page 1 of 40
Best Practices for BO XI R2 Universe Designer
This section of the document outlines the Objective, Audience & brief overview of the content of the document. Purpose of the Best Practices for Universe Designer XI document: The universe is the starting point for any Business Objects reporting development. A good universe can save a lot of development time later. This document will guide the universe developers and IT users to follow the best practices while creating and using Universe Designer in Business Objects XI R2. Content of Best Practices for Universe Designer XI R2 document: • • • • Overview of the Universe Designer XI R2 New features Introduced in XI R2 Best Practices in Universe Design and Development Best Practices to be followed while Migrating Universes
Intended Audience & Expected behaviour for the Best Practices for Universe Designer XI R2 document • • Architect – Use this document as a reference to review the solution & designs
Universe Developer – Use this document as guideline to develop the Business Objects Universes Symbols used in this document to dedifferentiate between Standards, Guidelines & Methods S G M Standards – These are the enforced policies which need to be followed with out any deviation. Guidelines – These are the recommendations Methods – This is the only way/standard procedure to do this
Page 2 of 40
Best Practices for BO XI R2 Universe Designer
Table of Contents Introduction ................................................................................................................. 4 New features in Universe Designer XI R2................................................................. 5 Cascading list of values........................................................................................... 5 SQL generation new features.................................................................................. 5 Ability to create universes against OLAP databases ............................................ 6 Retrieving Unicode data with Desktop Intelligence or Web Intelligence........... 6 Universe Development................................................................................................ 7 Universe development cycle................................................................................... 7 Universe Connection ............................................................................................... 8 Universe Parameters.............................................................................................. 10 Table Structure ....................................................................................................... 13 Joins......................................................................................................................... 14 Database Loops ...................................................................................................... 17 Aggregate Awareness............................................................................................ 22 List of Values.......................................................................................................... 22 Class / Object Organization.................................................................................. 23 Hierarchies.............................................................................................................. 28 Integrity Check....................................................................................................... 28 Cardinalities ........................................................................................................... 29 Optimizing universes ............................................................................................ 30 Managing Universes.................................................................................................. 31 Working in Multiple Designers environment ..................................................... 31 Linked Universes ................................................................................................... 33 Universe promotion................................................................................................... 35 Appendix.................................................................................................................... 38 Universe Design Checklist .................................................................................... 38 References............................................................................................................... 40
Page 3 of 40
Best Practices for BO XI R2 Universe Designer
Introduction Business Objects Product suite has two semantic layers (an abstraction layer on top of the data source which gives an user friendly interface to do reporting & analysis) known as Universe & Business Views. Universe is the semantic layer which was available in Business Objects from the initial versions of the tool & Business Views got added later on after Business Objects acquired Crystal Decisions. Till this version (BOE XI) of the business objects, Universes were primarily intended to act as the semantic layer for the Business Objects Reports & Metrics (Web intelligence Reports, Full Client Reports, Dashboard Metrics etc) and Business Views were intended to act as the semantic layer for the crystal reports. In the current version of the Business Objects, it is possible to write crystal reports on top of Universe Semantic layer, but keeping in mind the features available in Business Views & the reporting functionality features of Crystal, it’s not recommended to use Universe as the semantic layer for Crystal Reporting. It will be wise to wait for sometime till Business Objects bridges the functionality gap between Business Views & Universes and comes up with an unified Semantic layer for all the kind of reporting available in Business Objects tool. Business Objects has the future plan to merge the features of Business Views with Universe & come up with a single, powerful semantic layer which will be called as Universe. The universe is created by the designer in order to mask the complexity of the database from the Business users, and to create a consistent and convenient storage mechanism for commonly used objects. This document outlines the guidelines and best procedures for designing universe.
Page 4 of 40
• • • • Cascading list of values SQL generation new features Ability to create universes against OLAP databases Building universe against databases with Unicode Data Cascading list of values R A cascading list of values is a sequence of ‘lists of values’ associated with a hierarchy of objects in a universe. R An End_SQL parameter in the universe properties allows inserting a string at the end of the SQL generated by a query. Wipro Confidential Page 5 of 40 . This feature enables to select sequential prompt values depending on the values selected in the prompts. This feature is useful for testing & debugging. R The JOIN_BY_SQL feature is used in universe to take advantage of the RDBMS ability to generate derived tables and the full outer join SQL. This will contribute towards the better performance of the Reports. This helps in increasing the report Performance. The variables are stated in the common field and evaluated when running a query. SQL generation new features R Index awareness is the ability to take advantage of the indexes on key columns to speed data retrieval.Best Practices for BO XI R2 Universe Designer New features in Universe Designer XI R2 The following are the new features introduced in Universe Designer XI R2. This will generate one global SQL flow instead of generating multiple SQL flows.
This can be used to create documents and run queries against data sources with Unicode data. Retrieving Unicode data with Desktop Intelligence or Web Intelligence R The ability to retrieve the display Unicode data by building queries with universes is available in Designer module of XI R2. Wipro Confidential Page 6 of 40 . Essbase Cubes etc. The universe is created automatically from a selected connection to an OLAP data source using an OLAP query flattering driver that is installed as an add-in to Designer XI R2. Chinese etc. such as data in Japanese. This feature will be helpful only when the organisation have OLAP cube data sources like Oracle Express.Best Practices for BO XI R2 Universe Designer Ability to create universes against OLAP databases R An OLAP universe is a Business Objects universe that is generated from an OLAP cube or query.
Universe development is a cyclic process which includes planning. The usability of any universe is directly related to how successfully the different phases in the development cycle interact with each other. designing. and maintenance phases.Best Practices for BO XI R2 Universe Designer Universe Development The Universe Designer Interface enables the IT Universe Designer to develop the Universe & all its content like Objects. Classes etc. distribution. building. Universe development cycle G The table below outlines the major phases in a typical universe development cycle & it is recommended that the IT Universe Designers follow the below phases: Development phase Prepare • Description Identify the target data source and become familiar with its structure • Know what data is contained within each table of each of the target databases • • • • Analyze • Understand the joins Identify the cardinality Know what is possible Understand the Business Users & their Business functions & how they are organised Identify the key business questions that they need to answer • • Identify what standard reports they require Familiarize IT Universe Designers with the Wipro Confidential Page 7 of 40 . Universes are usually developed for standard & adhoc Reporting Requirements.
where it can be accessed by the Business users. For example. how many universes should be created and which ones should have the capacity to be linked and to what level. Implement • • Build the universe using Designer. Evolve • Update and maintain the universe as the data sources and user requirements change and grow. who have some knowledge of what information they expect to get from the universe? Ask the key Business users to perform thorough tests simulating live usage of the universe(s) Deploy • Distribute the universe by exporting universe to the Central Management Server (CMS). Test • Form a small group of key Business users. Universe Connection Connection defines the data sources for Universe. Page 8 of 40 Wipro Confidential . R S You should never duplicate the connections for the same data source. The connections are generally created by the IT Administrators & made available to the IT Universe Designers. It will specify which physical data source is made available to the system and how these data source is made available. Test frequently during the build process for validity and reliability of inferred SQL.Best Practices for BO XI R2 Universe Designer business functions & terminology Plan • Identify a project strategy.
it is a must for you to always test the connection for any errors in the connection. o For example • • <DATASOURCE NAME>_<ENV IDENTIFIER> ABC_D (ABC is the source database & D stands for Development Environment). This can avoid any connection related issues that IT Business View Designer may face for any incorrect parameters in the connection.Best Practices for BO XI R2 Universe Designer o This will make sure that you have all the connections unique. o This will ensure the access criteria for the IT users like IT Universe Designers who will use this connection for Universe Development Wipro Confidential Page 9 of 40 . o This helps in leveraging the database level security defined for the different Business Objects Users & better for tracking of usage & solving support issues. the IT Universe Designer will be able to select/identify the appropriate data source. R S You must provide a meaningful name to the connection & the standard for that are outlined in the example below. o Only secured connections can be exported to the Central Repository & used by different Universe Designers. R G It is recommended to select the check box ‘Use database credentials associated with Business Objects Users Accounts’ if you have all the business objects users are defined as the database users also. R S You must always select the connection Type as Secured. R S You must Test the Connectivity o After creating the connection. R S The IT Administrator must assign user access rights for different IT & Business user groups in the CMC. o By using the connection name. This also always a standard for enterprise implementations.
Always give the description in the Business terms & also mention a purpose of the Universe.Best Practices for BO XI R2 Universe Designer & also will give the criteria for the Business users when they will use these connections through Universes & reports. o The Name of the Universe will be visible to the IT Report Designers & the Ad – hoc Business users. Wipro Confidential Page 10 of 40 . R S You must provide a meaningful ‘Description’ for the Universe. o The description should be well defined & understandable to the IT / Business users of the Universe. R S You must always give a meaningful name to the Universe. Please refer to the Naming Standards document for standards & guidelines on Names. o The following Screenshot depicts the different types of Access levels that an IT Administrator can set on Universe connections (Screenshot of the CMC interface to configure different access rights for Connections) Universe Parameters Universe parameters are certain parameters & options that the IT Universe Designer can set for the Universe.
if you are using contexts to resolve chasm traps. o Higher the number. R G It is advised to keep connection mode as asynchronous. o To resolve the chasm traps & fan traps you need a common query to retrieve data which can be achieved by un-checking these options. The occurrence of chasm traps & fan traps are very rare if you have a proper database design.Best Practices for BO XI R2 Universe Designer R G It is recommended to keep the connection alive to be no more than 10 minutes. o This avoids repeatedly opening and closing connections and also avoids keeping connections open for excessively long period. If you have a good network R G It is recommended to clear these check boxes in the universe parameters. the less fetches. Business Objects allow max of 1000. R G It is recommended to set array fetch size maximum. fan traps. Wipro Confidential Page 11 of 40 . o Asynchronous mode will allow queries to be cancelled when user presses ESC. which kills the query on the database and releases the resources of database which are hold by the query. the faster the query results are passed back through database.
This option is useful if you have any contexts in the universe. o This will enable the Business / IT users to create queries that contain multiple SQL statements when using a context. It is a good practice to check this option from the beginning. even if this option is checked. if you are expecting to use contexts in the universe. then the SQL is not split. If the measure objects are based on columns in the same table. R G It is recommended to check the Use Multiple SQL statements for each measure o This Splits SQL into several statements whenever a query includes measure objects derived from columns in different tables. R G It is recommended to use Allow selection of multiple contexts o This will enable the IT / Business users to create queries on objects in more than one context and to generate one set of results from Wipro Confidential Page 12 of 40 .Best Practices for BO XI R2 Universe Designer R G It is recommended to check the option Use Multiple SQL statements for each context.
If you are using any field from isolated table with other fields. R G It is recommended to check the option of Warn for the Cartesian product. It also helps in avoiding Cartesian product.Best Practices for BO XI R2 Universe Designer multiple contexts. o This avoids confusion in maintenance & also keeps the universe clean. R G It is always recommended to include only the tables that the Universe required which are going to be used in the queries. o This will warn the IT Universe designer for any probable Cartesian products & the IT Universe Designer can resolve it. Don’t use quick design wizard. Don’t bring in tables which are not required. o This will avoid the confusion and will help the IT Universe designers to put appropriate joins & check the cardinalities etc in ease. R G It is recommended to insert tables one at a time. Wipro Confidential Page 13 of 40 . R G It is a best practice not to have isolated tables (which are not joined) in the universe & create minimum objects from these tables. it gives a Cartesian product. If you will choose prevent option then some times it will be difficult to debug for any Cartesian issues. o The isolated tables are static in nature as they are not joined to other tables. Table Structure This is the interface where the IT Universe Designers will bring the tables in to the Universe & carry out all the other activities in creating the Universe.
R S You must always create joins in the structure pane. You can either detect the joins manually or can use the automatic join detection. o This helps in maintaining a statistical table which involves complex calculations. are created Wipro Confidential Page 14 of 40 . they need to create joins between related tables. Table weight is a measure of how many rows there are in a table. It reduces the load on maintenance of the database summary tables. for example a join manually defined in the Where clause for an object. However. But only thing you need to keep it in mind that it costs you on your performance front. R G It is recommended to trace the Joins manually. Detecting joins automatically is useful in quickly create joins in our schema. Lighter tables have fewer rows than heavier tables. o Joins that are not created from the structure pane. o This will ensure that all the joins are valid & can avoid any wrong joins. o This helps in performance by ordering the tables. Joins Once IT Universe designers have inserted more than one table in the schema. as they allow combining data from multiple tables in a meaningful way. This determines the table order in the FROM clause of the SQL statement.Best Practices for BO XI R2 Universe Designer R G It is always recommended to use derived tables where ever possible. R G It is always recommended to provide tables weights for the tables. Joins are as important as the tables in a schema. you need to be aware of the limitations of automatic join detection when designing schema. By default Business Objects sorts the tables from the lighter to the heavier tables (those with the least amount of rows to those with the most).
we can choose to use ANSI 92 syntax for joins in the universe. o Outer joins may have a negative effect on performance since more rows are returned. Once activated. R G It is recommended to verify that the target database supports ANSI 92 before using this option. R G It is a best practice to avoid outer joins where ever possible. o This gives a better performance by adding the joins in the FROM clause. Shortcut joins can improve query performance by using shorter paths and bypassing intermediate tables. Additionally. ANSI 92 is not supported by default and ensures that we verify that the target RDBMS supports ANSI 92 before using the syntax in joins. o Designer supports ANSI 92 syntax for joins. This parameter is listed on the Parameter page of the universe parameters dialog box (File > Parameters > Parameter). R G It is recommended to optimize database performance by using shortcut joins where ever possible. o IT Universe designer must activate support by setting the SQL universe parameter ANSI 92 to YES. Automatic join detection Wipro Confidential Page 15 of 40 . some databases will not use indexes when outer joins are involved.Best Practices for BO XI R2 Universe Designer at run time. o Shortcut joins provide an alternative path between two tables. are not considered by Universe Designer for integrity checks and context detection.
Best Practices for BO XI R2 Universe Designer As mentioned in the beginning of this section. While dragging. created. but still if you are using it then please follow the below guideline. Step -2: Click and hold down the left mouse button. Step -3: Drag the mouse to the column in another table that IT user wants to be the other end of the join. R G It is recommended to always verify manually each join that you accept to be created that has been automatically detected. the pointer is transformed into a pencil symbol. Step -4: Position the pencil symbol over the target column. o As there may be other joins necessary that have not been detected. Step -1: Position the pointer over a column that is wanted to be one end of a join. IT Universe Designer can graphically create individual joins between tables by using the mouse to trace a line from a column in one table to a matching column in another table. M Manual join tracing Please use the below steps to trace the joins manually. automatic join detection is not recommended. The pointer appears as a hand symbol. The column is highlighted. Release the mouse button. The target column is highlighted. The join between the two tables is Wipro Confidential Page 16 of 40 .
Step -6: Enter and select properties for the join and Click OK.Best Practices for BO XI R2 Universe Designer Step -5: Double click the new join. as shown in the below screen shot: (Screenshot of a loop in tables in the structure pan) The problem with a loop is that the SQL cannot figure out which path to take between two or more tables. Database Loops Join path problems can arise from the limited way that lookup and fact tables are related in a relational database. The Edit Join dialog box appears. The loops can be resolved in 2 ways in Universe & they are Aliases & Contexts. because there are multiple options. it throws an error at the time of query execution. It lists join properties. A loop is created when two or more paths exist between tables. Loops are cause in a universe when tables are joined together in such a way as to create a circular join path. Therefore. Wipro Confidential Page 17 of 40 .
if you look at the previous screenshot of the loop. for two different purposes. COUNTRY. However. and also to determine the country of the showroom. or lookup. we can create two aliases of the COUNTRY table. the aliases will be deleted as well. and one to connect to the SHOWROOM table as shown in the below screenshot. you can create an alias table for each purpose. table (COUNTRY). it is caused because it is using a dimension. An Alias is a table that is an exact duplicate of the original table (base table). It is using the COUNTRY table to determine the country of the client. with a different name. In this case. And by only using aliases. Wipro Confidential Page 18 of 40 . one to connect to the REGION table.Best Practices for BO XI R2 Universe Designer Aliases Aliases are references to existing tables in a schema. has been placed off to the side. Just to make it very clear. An alias is simply an alternate name for a table. To avoid loops like this. and will not be used directly. we can give them names that make it clear what they are being used for. (Screenshot for alias of table) Notice that the original table. if we delete it from the universe.
and prevents the need to rebuild major sections of a universe structure should a base table need to be aliased at a later stage. To solve loops and fan traps. Contexts If a loop is caused by having multiple fact tables access common dimension tables. in the above screenshot the alias table names are COUNTRY_SHOWROOM & COUNTRY_REGION which gives a good meaning that they are used as SHOWROOM & REGION respectively in the Universe. ‘. NOTE: It is recommended to create aliases in the following Scenarios. o This avoids confusion & helps in understating the purpose of the alias table. not the original base tables. we resolve these loops with contexts. R G It is a best practice to give a meaningful name that can better describe a table’s purpose than some original cryptic name. • • To use the table more than once in a query. Place the base tables together away from the main universe structure & put a text around it as ‘ALISED TABLE. Contexts are a collection of joins Wipro Confidential Page 19 of 40 . Logically separates the trap into pieces • To abbreviate the table name to save typing when writing freehand SQL. For Example.Best Practices for BO XI R2 Universe Designer R S You must always alias the base tables which you want to alias as it is inserted into Schema – then build the schema using the alias tables. o This allows to give meaningful names to tables. Recursive relationships can be resolved. Base tables are the original tables from the database schema. DO NOT DELETE’ as shown in the above screenshot. • • Generic lookup tables can be resolved by alias.
o This is the help text that an end user (IT / Business) sees when they run a query that takes the context path. M Standard method for creating a context manually Step-1: Select Insert > Context. R S You must always give a meaningful name to the context. Wipro Confidential Page 20 of 40 . Contexts are nothing but the multiple query paths that the Universe users (IT & Business) can use. o This help in the use of the context for the end Users (IT / Business). Step-3: Select all the joins defining the context in the Current Context Joins list. This text will be useful to them. Or Click the Insert Context button. Context The New Context box appears Insert Step-2: Type a name for the context in the Context Name text box.Best Practices for BO XI R2 Universe Designer which provide a valid query path for Business Objects to base its SQL generation. Step-4: Click the Detect button to show the joins making up a suggested context with context name. R G It is a best practice to give a meaningful description to the context.
This text should be useful to the end user. Multiple rows can be returned for a single dimension causing inflated results. Wipro Confidential Page 21 of 40 . Contexts can split out the query so that the correct numbers of rows are returned for the dimension. so that one query returns data for one fact table. Step-6: Type a description of the data the context returns. • To assist in detecting incompatibility for aggregate awareness objects Contexts are used to exclude objects that are not compatible with an object using the @AggregateAware function in its definition. from being used in a query with the aggregate aware object. Click the Check button. Aliases are not appropriate in such schema. NOTE: Contexts are used for the following purposes: • To solve chasm traps and in some solutions to fan traps Chasm traps can occur when two many-to-one join paths converge on a single table.Best Practices for BO XI R2 Universe Designer Step-5: Select the Show Selected Only check box to see only selected joins. We use contexts to direct join paths in a schema which contains multiple fact tables. This is the help text that a Web Intelligence user sees when they run a query that takes the context path. The following section talks about the aggregate awareness. and the other query returns data for another fact table. Step-7: Click OK. • To solve loops The most common use of contexts is to separate two query paths. Contexts can also be used with aliases to solve fan traps.
Aggregate Awareness in the universes gives the following advantages: • It allows the IT Universe Designers to add intelligence to existing objects that will allow them to access the appropriate table based on the level of detail needed for the query. Page 22 of 40 Wipro Confidential . o This will ensure the accuracy of the aggregate awareness. o This will determine the right aggregation orders for different aggregate tables. without having to create a set of objects for each aggregate table. R G It is a good practice to restrict the LOV to a smaller number of values. For Example: YEAR should be followed by QUARTER & then MONTH. but by default. within a universe to take advantage of aggregate or summary tables within a database. This list does not physically populated when we create an object.Best Practices for BO XI R2 Universe Designer Aggregate Awareness Aggregate Awareness is the ability. R G It is recommended to test the aggregate awareness using the Web Intelligence. simply because the tables are significantly smaller that the transaction table. the object has the ability to query the database to return a list of its values when used in the Query pane. R S You must always provide a right order of aggregation in the aggregate aware function. You should start from the highest aggregation to lower aggregation. There won’t be any default list of values is assigned to measure objects. List of Values When IT Universe designer creates a dimension or detail object in Designer. • Queries run against aggregate tables will run much faster than queries run against transaction tables. depending on the level of aggregation in the table. it is automatically assigned an associated list of values.
Try to avoid very long names also. You can a condition to edit the LOV to restrict it to contain only the required values. R G It is recommended to combine code and description in the LOV. For example: An object returns a 'sales type code' which may not have a meaningful value to some users. Long names will occupy more space in the pane which can reduce the user friendliness of the Universe. o o This gives a good meaning to the LOV. but there are certain standards & guidelines need to be followed through out the organisation for better usability & maintainability. o This helps the end users (IT & Business) while using this in creating reports & queries. The name should be concise & context oriented. Editing the LOV to display the 'sales type description' will help them when viewing the LOV. Wipro Confidential Page 23 of 40 . R S You must always give meaningful Name & Description to the Classes. Class / Object Organization Classes & object organisation is the very important part of the Universe development as this is the layer with which the IT Report Designers & the Ad Hoc Business Users interact most. As the organisation of the classes & objects will be driven by the respective requirements that the Universe is expected to address.Best Practices for BO XI R2 Universe Designer o If the field for LOV points to a large table (number of rows) then refreshing the LOV may be slow. measure or even a condition. The opposite can be done for the 'sales type description' object to display the code along with the description. Classes Classes are the folders & sub folders that are used to organise the objects which can be a dimension. detail.
Generally the classes/Objects which need to be hidden are: • • • Components from linked universes and are not needed in the active universe. Wipro Confidential Page 24 of 40 . You should only hide the class which contains the objects which are not required by the Business users. Components need to be disabled temporarily without deleting them. The class should contain the related objects in it. o This will help the end user (IT & Business) in finding the required objects with ease. R G It is recommended not to cluster class with too many objects and subclasses o It’s difficult for end users (IT & Business) to navigate through classes. Always have the dimension classes at the beginning followed by the measures. R G It is a best practice is to arrange classes in alphabetic order or with some business context.Best Practices for BO XI R2 Universe Designer R G Always use classes to logically group the objects. R G It is recommended to hide the classes & Objects which are not required by the Business end users. o This will avoid the confusion for the Business users. For Example: if you have a customer class. Objects used only to optimize SQL syntax and should be hidden from end users. o Navigation through classes would be easy for end users (IT & Business). the have all the customer related objects in that class.
Most of the cases. o The description of the objects appears as a tool tip for the end user (IT & Business). S You must always give a meaning full description to each object. R G It is a best practice to define the index awareness for the objects (dimensions & details). The below table gives different scenarios. R G It is recommended to avoid the use ‘Where’ clauses in the objects where ever possible. o This increases the query performance by taking the advantage of indexes on the key columns. where you can avoid using ‘Where clause’ and use ‘Create Condition objects for each restriction instead’. The organisation data dictionary also can be leveraged for giving a meaningful description. This helps in understanding the use of the objects. An object can also be a map to the function defined on one or more columns. Wipro Confidential Page 25 of 40 . R R S You must always give a meaning full name to each object. o It helps in identifying the object. o This has performance implications & can contribute towards creation of multiple objects. this description should be the business definition of that object. You can define the index awareness using the key tab.Best Practices for BO XI R2 Universe Designer Objects Objects are generally the components that are mapped to one or more database table column (s) with some appropriate syntax.
Create condition objects for each restriction. it will be difficult for users to construct a logical default hierarchy to use for drill down. Name each object appropriately. This can be confusing for users to see multiple objects that appear similar. Description If you restrict data for an object by creating several objects. Solution Create condition objects for each Restriction. and Japanese clients. If you have multiple objects inferring Where clauses on the same data. Unless your objects are very precisely named. Conflict between Where clauses. If two or more similarly restricted objects are included in the same query. Create condition Objects for each restriction. French clients. the conflict between the Where clauses will result in no data being returned. each inferring a Where clause for one part of the data. and ensure that users (IT & Business) do a union or synchronization of the Page 26 of 40 Wipro Confidential . A Business user can see the Where clause by viewing the SQL for a query. you can end up with multiple objects with similar names.Best Practices for BO XI R2 Universe Designer Problem Proliferation of similar objects. Difficulty creating hierarchies. US clients. then a restriction may not be obvious to the user simply from the name of the object. For example. Confusion between object name and applied restriction. but not all users will view the SQL before running a query. Create condition objects for each restriction.
R G It is recommended no to define measures that are averages at the Universe level. but do this at the report level. Query level when Data is aggregated using the inferred Select statement and Micro cube to block level when data is projected from the microcube to the block in a report. R G It is recommended to format objects and measures within the universe. R G It is a best practice to create separate class/sub class for conditional Objects. o This prevents end users (IT & Business) having to spend valuable time formatting data from within the reporting tool every time they create a report. Wipro Confidential Page 27 of 40 .Best Practices for BO XI R2 Universe Designer Queries at the report level. R G It is recommended that to specify the way the aggregate function will be projected onto a report for the measure objects. o It will avoid incorrect results. This projection function of measures allows local aggregation in the microcube. o Returned values for a measure object are aggregated at two levels of the query process. Also this will ensure a generic formatting across the organisation. o This helps in the appropriate aggregations which can increase the report performance. o This will help easy identification of the conditional objects.
R G It is recommended to have at least one custom hierarchy in the Universe. Integrity Check Integrity checking is a built in feature of Business Objects Designer tool available via TOOLS / CHECK INTEGRITY. Wipro Confidential Page 28 of 40 . to ensure that default hierarchies have a sense to the end users (IT & Business). Designer provides a set of default hierarchies for multidimensional analysis. There are two kinds of hierarchies are there & they are default hierarchies & Custom hierarchies. By default. This allows end users to observe the data from various view points. o This will usually take a very long time and can return inaccurate results due to incomplete or misleading data on the database. When you create objects. Geography etc always in the universe. These are the classes and the objects arranged in the order that they appear in the Universe pane. R S You should always avoid using the CHECK CARDINALITIES option.Best Practices for BO XI R2 Universe Designer Hierarchies Hierarchies are used by the end users (IT & Business) to do the multidimensional analysis. o These are the standard hierarchies which is required in most of the multidimensional analysis. Custom hierarchies are the hierarchies that you build in the Designer. R G It is best practice to have the certain standard hierarchies like Time. you should organize them hierarchically. o It will facilitate the use of ‘Drilling facility’ and ‘Cascading list of values’. This is required for performing the drill function in the Web Intelligence Reporting.
o This ensures that the objects are error free. then the cardinality detection will always be incorrect. only one row per row in the other table. if the many side of a one-tomany has limited rows i. If several simple joins are used instead of a single complex join across the tables. This will make sure that you check the Universe before exporting. Wipro Confidential Page 29 of 40 . R S You must always check the ‘Send check integrity’ option. Business Objects might detect the cardinality as a one-to-one. Confirm/check SQL generated as each new dimension or additional Measure is added during unit testing to ensure accuracy.Best Practices for BO XI R2 Universe Designer R G It is recommended to use ‘Quick parsing’ in the development cycle.g. o This will ensure that all the objects are parsed & checked for any possible error. Business Objects will report the cardinality incorrectly e. Cardinalities The cardinalities feature is dependent on the Quality and quantity of data – if the 2 tables contain data that is inconsistent with the true cardinality. R G It is recommended to test measures by starting with 1 dimension + 1 Measure. o This will compel the designer to display a warning if you are exporting an unchecked Universe. then 2 dimensions + 1 Measure. In general the cardinality detection takes a longer time since both tables are accessed and those tables could contain a lot of data. etc.e. A complete join is needed for accurate cardinality detection The built in cardinality detection can be used as a way of confirming users separate determination of cardinality but it is strongly suggested that it is not used as IT Universe Designers sole knowledge of cardinality. M The below bullets are the standard ways to detect the cardinalities for different joins.
Index awareness All the guidelines & standards around this have already been covered in the respective section of the documents. Short cut joins cardinalities are never used by context detection but the absence of a cardinality will trigger the ‘not all cardinalities are set’ warning • All other types of joins – their cardinality must be determined on a case-by-case basis.Best Practices for BO XI R2 Universe Designer • Self joins – set their cardinalities to a constant value. Knowledge of cardinalities is mainly dependent on knowledge of the primary and foreign keys within a table: Optimizing universes Query time can often be shortened by optimizing a universe. Using shortcut joins. There are several ways we can optimize a universe: • • • • • Optimizing the Array Fetch parameter in the Universe Parameters. Wipro Confidential Page 30 of 40 . It doesn’t matter what but it is suggested to be one-to-one. Creating and using aggregate tables in our database. Self joins cardinalities are never used by context detection but the absence of a cardinality will trigger the ‘not all cardinalities are set’ warning • Short cut joins – ideally set their cardinalities to represent the same cardinality of the path they are replacing. Allocating a weight to each table.
This scenario can happen in a case where one universe is used across multiple project groups. although they will not be able to export those changes back to the repository until the lock has been removed. and a universe can also be assigned a version number to keep track of changes. a universe can be shared by several designers provided that they have the necessary user rights. this option will prevent people from exporting over the universe in the repository. can do so only if the universe has not been locked by another designer. To unlock a Wipro Confidential Page 31 of 40 . An IT universe designer who wants to work on a universe. A locked universe appears with a padlock symbol. NOTE: Only one IT universe designer can work on a given universe at a time. o This feature will not prevent someone from importing the universe and making changes in their local environment. o You can lock the universe by double-click on the universe name. o When several developers are working on one universe. coordinate their efforts to avoid development on a universe that is out of date. Therefore if several developers have the ability to import and export the same universe. R S You must always lock universe on import feature to control export of the Universe to the Repository. The IT Universe Designers can lock the universe so that only one IT universe designer at a time can make modifications on the universe.Best Practices for BO XI R2 Universe Designer Managing Universes Working in Multiple Designers environment Universe Designer can be used in a multiple user environment in which several IT universe designers can work on the same universes without causing conflicts between versions. When stored in a universe folder.
This text is only visible in DESIGNER. whereas the description text (shown on the Definition tab) is visible to end users when they select an available universe. R S You must always use appropriate text in the comments of the Universe to mention the version of the Universe. Use the comments text box (File > Parameters > Summary > Comments) to record the status and changes of a universe for other developers. The interface is shown in the below Screen shot. Designer increments the revision number of the universe. Wipro Confidential Page 32 of 40 . The below screenshot shows the interface. o This will ensure that the appropriate version of the universe is available & will avoid any universe corruption. This allows us to determine. which the latest version of the universe (it’s a default feature available). NOTE: Each time Universe designer export a universe to a universe folder.Best Practices for BO XI R2 Universe Designer universe. double-click it again.
the other a derived universe. When we link two universes. objects. When changes are made in the core/master universe. Wipro Confidential Page 33 of 40 . Linked Universes would be very helpful in case you have the subject areas shared across the business functions & have an enterprise wide data warehouse. classes. R S You must always make sure that your both Master & derived universes are pointing to the same database. o The linked universes will work only when they are from the same database. they are automatically propagated to the derived universes. In this scenario this can be leveraged to create master universe containing the common subject areas & then use derived universes for each business functions.Best Practices for BO XI R2 Universe Designer Linked Universes Linked universes are universes that share common components such as Parameters. This gives a single point control for maintainace & enhancement to the Universes. or joins. one universe has the role of a core/master universe.
then Cartesian products can result when a query is run with objects from both structures. • Designers are authorized to link the given universe. Restrictions when linking universes • Universe Designers can use only one level of linking. If not. • Only the table schema. The derived universe does not need to have been exported before creating a link. • The core universe and derived universe use the same data account. • • The core and derived universes must be in the same repository. classes and objects of the core universe are available in the derived universe. If not conflicts will occur. Wipro Confidential Page 34 of 40 . • All classes and objects are unique in both the core universe and the derived universes. Contexts must be re-detected in the derived universe. The core universe was exported and re-imported at least once. Users cannot create derived universes from a universe which is itself derived. • Exported derived universes are located in the same universe domain as the core universe. or database. The two universe structures must allow joins to be created between a tables in one universe to a table in the other universe. but this can be changed at any time. • Lists of values associated with a core universe are not saved when you export a derived universe with the core universe structures. and the same RDBMS. Using the same connection for both the core and the derived universe makes managing the universes easier.Best Practices for BO XI R2 Universe Designer NOTE: Pre-requisite for the Linked Universe.
Best Practices for BO XI R2 Universe Designer Universe promotion A typical organization will have four 4 different environments (Development (DEV). Production (PROD). PROD and ideally a QA where the entire tests Universes are stored. Wipro Confidential Page 35 of 40 . Integration (ITG). Quality Assurance (QA). If the Universe in one Server gets corrupted or if the state becomes unknown the only resource is for the administrator to make a new copy of the universe in a different Server and use it. ITG. M The following is the sequence of steps to be followed in migration of Universes. Step–1: Log in to the Business Objects Enterprise in the client Box and start the import wizard. It’s a good practice to have at least four copies of Universes across different environments like. Dev and ITG may potentially reside on the same server.DEV.
Best Practices for BO XI R2 Universe Designer Step–2: Select the Source environment Step–3: Select the Destination environment Wipro Confidential Page 36 of 40 .
The same procedure needs to be followed for promoting the Universe from one environment to another. Wipro Confidential Page 37 of 40 .Best Practices for BO XI R2 Universe Designer Step–4: Finally Import all the Universes to the required Environment.
Apart from Standards & guidelines. guidelines (G) that need to be followed during the universe development cycle. you will also find some general points in the checklist which can be of great value.Best Practices for BO XI R2 Universe Designer Appendix Universe Design Checklist This checklist can be used by the IT Universe Designer to make sure that he/she has covered all the necessary aspects of the Universe Designing. does they return the same number of rows as they return at the table level? Wipro Confidential Page 38 of 40 . BI CoC architect or the Universe approving authority can use this checklist in the approval process. Universe Name: Reviewer: Review Date: Comments/Reco mmendations Item OK? Universe Parameters S Is name of the universe as per organization standard? S Is meaningful description provided for universe? S Is secured connection used? G Is SQL (Cartesian product) set to prevent? G Is SQL (Multiple Path) – “Allow selection of multiple contexts” set? Class S Is class name meaningful and understandable? S Is a meaningful description provided for each class and sub class? Does the universe have any incompatibilities within a class such as objects from multiple contexts? When a query is run on all the objects of the class. The below checklist contains the standards (S).
detail or measure Are columns of numbers right justified? G Format set for measure objects to display correct decimal places Did you test the measure object extensively with all dimension objects related to hierarchies? Is aggregate function set for each measure object? Is parsing of objects successful? Joins G Parsing of the joins are successful? G Is cardinality set for each joins? Is cardinality matches with physical database design? Is the column used in joins matched with physical database design? Context and Alias G Is a name & description provided for each context? G Is Alias used to resolve loops? Item Universe Evaluation criteria Does the universe have proper connectivity to the database? Are there any cardinalities in the universe? Are there any loops in the universe? Does the universe contain alias tables? Does the universe have contexts? Does the universe contain LOV’s from a static file (Word or Excel file)? OK? Comments/Reco mmendations Wipro Confidential Page 39 of 40 .Best Practices for BO XI R2 Universe Designer Item OK? Comments/Reco mmendations Objects S Does the object have proper name & description? Object type matches with tables column definition Objects are qualified correctly as dimension.
Best Practices for BO XI R2 Universe Designer Item Does the universe use Nested Prompts? Are there any aggregate aware functions in the Universes? Does the universe get tested for hierarchies? Does the universe contain the conditions? Is thorough parsing done for the universe? Are there any aggregate processing system? builds from OLTP OK? Comments/Reco mmendations References Businessobjects Documentation Wipro Confidential Page 40 of 40 .
This action might not be possible to undo. Are you sure you want to continue?
We've moved you to where you read on your other device.
Get the full title to continue reading from where you left off, or restart the preview.