Wishlist for SAP BOBJ tool consolidation

Obviously the multitude of BOBJ client tools is still a hot topic – both for SAP as well as its customers. From SAP’s side we’re hearing now about their decision to consolidate BOBJ / BI client tools. There are a lot of rumours during the currently held SAPPHIRENOW conference like the following:

JayneTool roadmap

There was a Google hangout session last week with Steven Lucas, President of Platform Solutions at SAP. In this article I will summarize some key points from this talk and add my own thoughts.

Have a look at the video at about 23:00. Steven mentions that there are currently 21 BI client tools in the BOBJ/SAP portfolio. That’s why SAP already took  the decision: “We are going to consolidate our BI tools”. In addition Steven mentions that they won’t deprecate core technologies like Webi or Crystal, but maybe integrate niche solutions like Explorer into Lumira. I personally like the statement about “feature preservation, not tool preservation”.

Although there are good reasons why SAP should consolidate their BI client tool portfolio I’d like to point out where I see the root cause of the problem: Definitely the number of different tools is not the real issue. I often use the comparison with the automotive industry. Just have a look how many models certain car manufacturer have in their portfolio:

 

Different cars for different purposes. Different tools for different purposes. But what’s different between the shown car portfolio and SAP’s BI client portfolio? All the cars share some basic functionality like four wheels, a steering wheel, head lights etc. For the BI client portfolio we still lack some basic functionality to be included in every tool more or less in the same way: One main issue is the missing homogenity in terms of data access. For relational data the Universe might be seen as a common base. But not even 10 years after Crystal Reports was bought by BusinessObjects, and not even in the new Crystal Reports for Enterprise version which was built from scratch we see equality of how you can connect to datasource compared to e.g. Web Intelligence. The same with BW connectivity. When I was at the sapInsider conference BI2014 two weeks ago at Nice / France, I had to learn once again from Ingo Hilgefort that Web Intelligence lacks some basic functionality like Zero Suppression even now having BICS based direct connectivity to BW. The same with HANA connectivity where Crystal supports HANA connectivity using an OLAP connection but Webi doesn’t. The same with Web Services connectivity and I cut continue the list for a while. From an architectural perspective I just ask: Why?

Another commonly cited issue is the charting library. Still there is nothing like common charting capabilities, the different tools still differ quite heavily in terms of what they provide as chart types and options, not to talk about the missing option to plugin a custom charting extension to all BI tools but only specific ones.

To sum up this first part: SAP’s job isn’t done by simply reducing the number of tools. They need to make sure that the remaining tools share some commonly expected features. Don’t let data connectivity or charting options be the differentiator between the different client tools.

I already wrote certain blog posts about BOBJ tool selection. Whereas the later posts were tool agnostic, the first one was very concrete. In this article I outlined some major differences (especially short comings) between the tools. On this background let me formulate my personal wish list for the future BOBJ tool consolidation:

  • Merge Crystal Reports into Web Intelligence: I know, according to Steven’s statement above this won’t gonna happen as Crystal is considered a core technology. Still, give this thought a chance. There isn’t that much missing between Crystal Reports and Web Intelligence from a feature perspective. Conditional formatting, interactive alerts, some more export formats, hierarchical grouping for relational data and a more powerful formula language. Being a Crystal Reports consultant for more than 12 years I’m not really happy with this thought in a first instance as I really like the tool. But if imagine how I could leverage certain Crystal Reports features with the powerful capabilities of Webi, it sounds very promising to me.
  • Merge BO Dashboards / Xcelsius “visuals” and input controls into Web Intelligence, Design Studio and Lumira: Stop the thinking that “a dashboard” is a matter of the tool. From a business perspective a dashboard has more important elements than just to be fancy and highly interactive. Depending on the business requirements you can build a dashboard in many tools including Design Studio (more app style dashboards), Lumira (more the ad-hoc kind of dashboard) and Webi (if you want to have more sophisticated data  capabilities and the fully fletched platform support like scheduling / publishing, control user actions with rights etc.) So please share the visual components we find in BO Dashboards today to various tools like Webi, Design Studio and Lumira.
  • Merge Explorer and Lumira – and think about the “feature preservation”. Don’t forget to add the “Export to Webi” somehow to Lumira.
  • Merge LiveOffice into BO Analysis, Edition for Office. LiveOffice is still very powerful, but I think we don’t need two separate add-ons.
  • Merge Analysis OLAP into – I’m not sure, as I’m not very used to this tool. Regarding the BW connectivity issues I’d like to see the Analysis OLAP capabilities in Webi. And / or you can add an OLAP grid / control to Design Studio.
  • Merge the predictive tools like Infinite Insight and Predictive Analysis into one joint tool.

How do you rate my wishlist? How does your wish list looks like? I’m looking forward to reading your comments soon!

[Update June 12th 2014] The guys from EVTechnology wrote an excellent blog regarding their findings from SAPPHIRENOW. There you can find the following screenshot:

SAP-BI-Platform-Simplification-500

Not too far away from my wishlist though ;-)

In addition Tammy Powlas documented an interesting webcast regarding Crystal Reports for HANA. I just hope that at least the HANA direct connectivity will be added the same way to Web Intelligence…

 

The bug paradox: When fixing the bug leads to wrong reports

My workmate Christoph Gnodtke wrote an excellent blog about how to identify SAP BusinessObjects Web Intelligence reports which are impacted by various calculation changes in newer BO versions. What I would like to point out here is that not only BO 4.x migrations are concerend but also “simple” service / support package upgrades e.g. from XI 3.1 SP2 to SP6. In my current customer case we’ve found many many reports which obviously were created in a wrong way, namely that the table structure contains the merged dimension (e.g. [Merged Country]) where as the cells within the row use a variable containing e.g. a Where operator using the original dimension ([Query1].[Country]). In our case the business requirement would have been to use the merged dimension here as well. As outlined here, in former BO support package levels a bug resulted in the effect, that the just mentioned example still showed what the business expected. Now (e.g. in XI 3.1 SP6) that the bug is fixed, the reports start to show wrong values. Although the software 360Eyes doesn’t solve the problem, it at least helps to identify concerned reports. Unfortunately we still need to look into every single report and compare between the version running on the XI 3.1 SP2 environment and the SP6 environment. In order to speed up this process we use 360Cast. This software provides similar features like BO Publications e.g. for report scheduling and bursting. The main advantage namely in the case of report testing are two fold (compared to BO out of the box features):

  1. Report selection for a schedule job can be done using good old BO categories. That means you can assign e.g. a test category to all reports you want to test in one single run. In our customer case we use categories for each data mart. In 360Cast, instead of choosing every single report individually, we just choose to select all reports of this test category.
    CategorySelection
    In order to run all these reports with one single click there is just one thing missing: Providing all the necessary prompt values, often the same values for the same prompts (like Year) over many reports. This is where the second advantage comes into play:
  2. To provide prompt values 360Cast accepts both manual input values (where a value can be applied to a all prompts with the same name) but also values from an Excel sheet (or even from an SQL query). We usually use the Excel alternative. Based on this we can easily vary input parameters for different test purporses by simply using another Excel sheet. In addition we can specify the export format and the recipients, e.g. by providing an email address.
    PromptSettingMapping
    (The values in the drop down menues correspond to the columns in the underlying Excel spreadsheet)

After all, also 360Cast doesn’t solve the initial problem. But at least we don’t need to run every report (identified by 360Eyes earlier) on its own but can automate the refresh process and we can easily rerun reports (e.g. with different prompts by simply modifying the values in the Excel list).

BI Picture Books (BI specific requirements engineering – part 2)

Part 1 of this article you’ll find here.

Illustrate available options using a BI Picture Book

A BI Picture Book is a structured collection of “pictures” aka screenshots of features illustrating one or multiple products. It describes and illustrates the available options in a compact and easy to handle manual. It should help the user to identify what options they have in a given BI front end application.
Referring to scenario A and B above, in an ideal world one would create a BI Picture Book during the initial tool selection process (scenario B). In this context, the BI Picture Book helps to illustrate the available features of the different tools under consideration. Some (or all) of these tools will become “strategic” and therefore the preferred tools to be used during subsequent BI projects. In the same way, the corresponding parts of the original BI Picture Book will also be included in the “daily business” BI Picture Book, which only contains the available options regarding the strategic tool set.
One main characteristic of a BI Picture Book is that we compare feature (or requirement) categories one after another and not a tool (with all its different features) after another tool. This helps to clarify specific differences between the tools for each category.

Figure2

Based on the previously described structure, the BI Picture Book should contain notes which highlight unique features of one tool compared to the rest of available (or evaluated) tools, e.g. a specific chart type which is only available in one tool. On the other hand, one should highlight limitations regarding specific features that are initially “not obvious”, e.g. in cases where the color palette of charts cannot be customized. Another example is to specifically highlight a tool which does not contain an Excel export (because end users might assume that there is an Excel export for every imaginable BI tool, so that they think they do not have to specify this).

How to build a BI Picture Book

Building a BI Picture Book is primarily about taking screenshots and arranging them in a structured manner, e.g. following the seven feature categories introduced above. As with every other project, certain points need to be planned and clarified before you start:

  • What is the primary purpose of the BI Picture Book? This refers to either scenario A) requirements engineering or scenario B), creating a front end tool strategy.
  • Which BI tool vendors are to be taken into consideration? Which concrete tools of these vendors are to be integrated into the BI Picture Book? For scenario A) this is defined by the available strategically defined BI toolset. For scenario B) it depends on the procedure for evaluating and selecting tools for your front end tool strategy.
  • Once you know which tools you want to take screenshots of you need to define which software version to use. Depending on the release cycle of the BI vendor, the software version can make quite a difference regarding available features. Therefore a BI Picture Book is mostly specific to a certain version.
  • For cars, there are tuning shops which provide extra features not offered by the car manufacturer. Similarly, in the BI world, there are many add-on providers who extend the available features of BI products. If such add-ons are already in place, it is important to include their features in the BI Picture Book. Nevertheless, one shouldn’t forget to label features from add-on products specifically as they might be charged additionally.
  • Do not show options which are not applicable in practice, e.g. system wide customizations on a multi-tenant BI platform. An example is customizing the look and feel of the BI portal by modifying the portal’s CSS style sheet. Although, in theory, this option might exist, depending on your organizational and technical setup, to changing the style sheet might not be allowed because many other stakeholders would be affected.

After having answered these questions, you can start: Take whatever screen capture program you like and start taking the screenshots. Use either a tool like Microsoft Powerpoint or Word to collect and layout the screenshot in a meaningful way. Keep an eye on the point that the BI Picture Books’ main characteristic is about comparing a specific feature over multiple tools. Therefore, put the screenshots of a given feature for multiple tools side by side on the same page or slide.
The subsequent paragraphs will illustrate how a concrete BI Picture Book might look. Screenshots are taken from various SAP Business Intelligence front end tools.

1. Content Options

Content options are difficult to illustrate using screenshots regarding scenario A). For scenario B) we can, for example, compare the different available data connectivity options:

Figure4

Connectivity Options in Crystal Reports

Figure3

Connectivity Options in SAP Lumira

2. Navigation & Selection Options

For navigation options outside of information, products typically screenshots of a BI portal are to be taken. This can be either based on a vendor specific portal or your company’s intranet site (or both if end users have a choice and need to decide which one to use).

Figure5

SAP BusinessObjects BI Launchpad

On the other hand, a tool provides navigation and selection features inside information products. We usually take screenshots for at least the following elements:

  • Parameter & Prompts
  • Input Controls
  • Groups / Hierarchy View and Navigation
  • Drill Down features
  • Tabs

Some of these elements are illustrated as follows:

Figure6

Prompts in SAP BusinessObjects WebIntelligence

Figure7

Selectors in SAP BusinessObjects Dashboards (aka Xcelsius)

Figure9

Drill-Down in Web Intelligence

Figure8

Drill-Down in Crystal Reports

The drill-down example, in particular, shows that it is not enough for an end user to simply specify “we need drill-down functionality” as a requirement. End users need to specify requirements in alignment with the different options of drill-down available.

3. Layout Options

Figure10

Excerpt of Chart Picture Book for some SAP BusinessObjects front end tools

We suggest taking screenshots for the following elements:

  • Charts
  • Tables
  • Cross tables
  • Speedometers
  • Maps
  • Conditional formatting

Make sure you list all important features and highlight the unique ones as well as limitations that are not obvious. This helps end users to compare the different options. In some cases, it is important to shed more light on the settings of features such as charts. By way of example, specify if it is possible to change the colors of a pie chart?

4. Functional Options

Next up are functional options, for example export. It is quite simple to find the available options and therefore it is easy for end users to choose from the existing options. It is useless, for example, if you let someone define that he wants a PowerPoint export from a front end tool, if it does not exist. Of course this would be nice, but it is simply not part of the catalog.

Figure11

Different export formats for different tools

Another category of functions is printing. Usually it is not precise enough if an end user specifies he needs to print a document. Giving them a picture book, they can easily find out the available printing options. The BI Picture Book should clarify points such as if you can mix landscape and portrait page mode or choose «Fit to page». Below is our list of typical functions which could be integrated into the BI Picture Book:

  • Export formats
  • Printing options
  • Alerts
  • MS Office Integration
  • Commentary features
  • Multi-language support
  • Search options

 

5. Delivery Options

An up-to-date topic which falls into the category of delivery options is mobile-device compatibility. This is becoming increasingly important at a time when all information should be available independent of the end users geographical location. Depending on the BI vendor and the BI tool itself, mobile devices support can differ considerably. Some serve the information products 1:1 to mobile devices. Others transform existing information products into specific mobile versions, which might have quite a different look and feel compared to the original information product.

Figure13

Crystal Reports document being viewed on a desktop and on an iPad

Figure12

Web Intelligence document being viewed on a desktop and on an iPad

6. Security Options

Figure14

Different security options for Crystal Reports and Web Intelligence documents

As with content options, it is somehow difficult to visualize security options using screenshots in a meaningful way. Try to focus on the comparison aspect between different tools and highlight unique features and limitations that are not obvious. The following example illustrates the available access rights for two different tools. One tool can simply restrict the export functionality in general, whereas the other tool can control the different export formats.

7. Qualitative Options

It is hard to illustrate this category using screenshots. Yet, as indicated in a previous paragraph, you can try to find other illustrations to guide your end users in specifying qualitative requirements.

Final Words

As with my other blog posts this article doesn’t aim to be a complete list of something. A BI Picture Book is neither the only way to define BI specific requirements nor is it enought to define a complete BI front end tool strategy. It shows you a particular idea and it is up to you to apply it in your organization in combination with other appropriate methods.

Please share your experience – I’m looking forward to reading your comment just below!

BI specific requirements engineering – part 1

(Thanks to my co-author Alexander van’t Wout for supporting me writing this blog post!)

Collecting requirements for BI front end tools is often frustrating.

Imagine a sales conversation at your local car dealer. After some small talk you are going to tell the salesperson about your interest in buying a brand new car. Nothing easier than this you might think. But suddenly you are confused. The friendly salesperson asks you if you would please write down exactly what you want and draw a sketch of what you have in mind. As if this was not funny enough he hands a sketch board over to you with a blank sheet of paper on it.

This is how many Business Intelligence (BI) experts deal with their customers today. End users are often left alone to «design» their requirements. A car is a «commercial off-the-shelf product» and therefore very similar to a BI toolset, which is «off-the-shelf software». A common characteristic of both product types is the standardization of features, and therefore a limited set of features. On one hand, this might limit your flexibility; on the other hand, it simplifies the process of requirements’ definition drastically because you do not need to consider each and every detail to build a system.

We can distinguish two major scenarios where a business user community needs to specify requirements for BI front end tools: scenario A) is an organizational environment where the business intelligence software suite is already predefined. This means that for a regular project the project team is not free to choose from all available tools on the market, but only within the limited frame of what is usually called strategic vendors. In most organizations this means no choice at all. Typically, most organizations limit themselves to one or two strategic BI vendors, whereas every vendor provides a suite of tools and therefore provides a choice to project teams.

Scenario B) takes place when a company is about to choose their strategic BI vendors, or when it is about to define a front-end tool strategy based on a given toolset available. The difference to scenario A) is that there are no concrete requirements or previous use cases to do this. Decisions involving, for example, choosing strategic BI vendors, or building a front end tool strategy usually have to be derived from corporate requirements, which may mean some high-level requirements that are influenced by end users only in an indirect way.

In Scenario A, the main task is to map requirements to concrete features and specify detailed requirements (which take into consideration the chosen features). In scenario B, the main task is to get to know multiple tools and multiple tool suites of different BI vendors and make them comparable in an easy and quick way. For both cases, the authors suggest the visual approach of BI Picture Books as an analogy to a car catalog. In subsequent paragraphs, “end user” is used as a synonym for the party who is in charge of defining requirements for the BI front end tools.

Figure 1 Negotiation based on off-the-shelf softwareAs outlined in the introduction, working with business intelligence software is working with off-the-shelf software nowadays. This means that not all imaginable requirements are allowed anymore. In particular in scenario A) end users cannot have all they want, but their requirements need to be aligned with the available features of a given tool set. Still, the first step is collecting business requirements to compare with the technical features of the standard software. This process can be very frustrating for the business user after s/he has noted his requirements on a blank sheet of paper and tried to picture himself using a solution that fits his needs. The necessary negotiations regarding the technical feasibility are more likely a surrender of the business user’s initial requirements.

Therefore, the question that arises is, how could we show the end user in advance which options are available and therefore feasible as a solution to his requirements? To answer this question, we take a look at the automotive sector again.

Today, modern car manufacturers provide web-based car configurators, where customers can “build” their own car. The customers have to walk through several steps, e.g. choosing the color, the wheels, the engine and accessories. We can learn two things from such car configurators: First, guide the end user defining the necessary (and feasible) requirements. Second, provide visual support to the end user showing what different available options look like.

Structure BI front end requirements

To «build» a BI front end solution we identified seven crucial categories which need to be addressed during the requirements’ engineering process. This corresponds to scenario A above. For scenario B one can still use the same categories, but instead of defining requirements along the lines of these categories you can structure the available features and thus make the comparison of the different tools much easier. The following sections will outline the seven categories in more detail:

  1. Content options: In this first step, end users have to roughly define what information products they want to receive in the end, and the approximate content of these products. (The term information product is an umbrella term for all the various BI front end types such as report, statistics, cockpit, dashboard, analysis etc.). For scenario A end users are relatively free to note down everything they want, except for data content, which is a priori not available in the project time frame. For scenario B, the BI expert might list and compare all the available data connectivity options for a certain toolset.
  2. Navigation and selection options: In this second step, the end users need to think about how to navigate to or between the defined information products (e.g. using a folder structure in a given BI portal). Whereas navigation takes place outside information products, the selecting interactively data usually takes place inside an information product. In either case, the available options are limited by the software.
  3. Layout options: This third step is about collecting requirements regarding page layout, chart and table options. A common pitfall for end users is to assume that BI front ends are either like Microsoft Excel or Word. Trivial looking items such as a table of contents or some specific chart options which are available in Office products might not be available in the BI front end tools. In addition, if the end users’ organization adheres to notation standard rules such as the International Business Communication Standards (IBCS; http://www.ibcs-a.org/) this might further restrict the allowed layout options, in particular for charts and tables.
  4. Functional options: Whereas the third step addressed more of the static elements in a report, this fourth step is about defining requirements for the functions of a BI front end solution (in addition to the functions already defined in the navigation and selection category). Typical examples of functions are the usage of (interactive) alerts, export to various formats, printing, search, multi-language options, commentary features and so on. This category depends even more on the available features of a given BI front end tool than the previous ones.
  5. Delivery options: Step number five addresses how an information product is delivered to end users. Besides defining the delivery channel (e.g. by web browser, mobile, email) one must define how and when the report is refreshed. One possible option is viewing an information product on demand (the refresh is triggered directly by an end user). Scheduling the information product to be run at night is another option. Scheduling can be further divided into single information product scheduling and information product bursting where, based on one main product, a personalized instance of the information product is created and usually distributed to the specific recipient. Requirements for this category’s “delivery options” usually depend not only  on the front end tool itself, but also on the underlying BI platform system or available third party extensions, e.g. for bursting.
  6. Security options: Finally, end users have to think about security. In the context of BI front end solutions, there are two main security aspects to consider: Access restrictions on information product level, on one hand, and data level security, on the other hand. For the first aspect, an end user has to define who and in which role is allowed to see the report, and which features should be available, e.g. one user might access and refresh the report, but must not export the report. Similar to the previous category of delivery options, the access restrictions are highly dependent on the underlying BI platform and the available security options.
    The the second aspect of data level security is either addressed on database level or some kind of semantic layer of the BI front end tool. Again, the available technology decides upon available options.
  7. Qualitative options: Last but not least, this final category of options summarizes requirements of a qualitative nature. This includes elements such performance or usability requirements. For this category, it is more difficult to define requirements allowed. Nevertheless, one can guide the end user in defining realistic requirements, e.g. instead of asking an end user to define the maximum report refresh duration, provide predefined performance classes such as “< 30 sec”, “30 – 60 sec” and so on. This way an end user won’t define an unrealistic value like “every report must be refreshable below 3 seconds”.

Using these seven categories to either structure your end user requirements (scenario A) or structure and therefore compare the available features of multiple tools in an evaluation process (scenario B), you will be able to catch at least 80% of typical BI front end requirements. Depending on the concrete project, you will most probably have to extend the list with your own items. Still, the basic principle of guiding end users whilst defining requirements remains the same.

Another way of structuring the requirements using the seven categories is to outline dependencies. Similar to web based car configurators, there are certain requirements in a given category which have a direct impact on the allowed (or needed) requirements in another category, e.g. defining a delivery channel using mobile devices will most probably have an impact on the desired (or available) layout options, as well as certain security options. In such a case, one needs to cycle back or forwards in the categories and adjust previously defined requirements. In sum, the typical procedure will be to run through the seven categories in an iterative way starting with a rough idea of requirements in the first round and refining requirements (also considering newly discovered dependencies) in subsequent rounds.

However, there is one question left: What does a non-technical user understand by these categories? A simple feature list is usually not enough, in particular for people whose daily business is not building a BI front end solution. The authors suggest building and using a visual catalog of available options, just like the car-configurator. We call this a BI Picture Book. (More about this in part 2)

Issue with Null Filters prior to Webi XI 3.1 SP6.3

After some more “theoretical” blog posts back in 2013 I’d like to start the new year with a short technical contribution. As some of you may know I’m trying to upgrade the BO XI 3.1 SP2.7 environment of one of our major customers to XI 3.1 SP6. This is sort of a painful experience as we are working on it since more than 12 months now. Still, there is some light at the horizon as back in December Fixpack 6.3 was released which contains an important bug fix. Not to mention that the bug wasn’t yet there in SP2.7 but was introduced somewhen between SP3 and SP6. The issue is referenced in the SAP KB1897777 and it seems to be fixed now.

What is our situation? We have Webi reports containing containing multiple queries and merged dimensions. If we use dimensions from two different queries in the same table, variables as well as filters containing “IsNull” functions do not work properly.

Here we are with the report in XI 3.1 SP2.7:

SP27

Now the result in SP6 (prior to Fixpack 6.3):

SP61

… and finally how it looks like with Fixpack 6.3 applied:

SP63

The tricky part was to detect this error (the above screenshots are very simplified tables for debugging purposes). Obviously even our business users didn’t caught this at first sight. Therefore I’m glad if I can contribute that you double check this if you are on a lower version than Fixpack 6.3. On the other hand: Please let me know if you find other (newly introduced) bugs in FP6.3…

And by the way: Happy New Year and lot’s of fun in the Business Intelligence world ;-)

The Generic BI front-end Tool Selection Process

Finally – I’m blogging again. Time flew by and “my life as a BI consultant” kept me busy with migrations from Oracle to Teradata or from BO XI 3.1 SP2 to SP6. Or maybe you’ve also heard about our BusinessObjects Arbeitskreis (can be translated as “workshop”), I’d call this the “only BOBJ dedicated conference in Europe”: www.boak.ch It was a pleasure to build and execute an interesting agenda for our participants as well as welcoming great people like Jason Rose, Mani Srini, Saurabh Abhyankar, Mico Yuk or Carsten Bange. I also had the pleasure to do the closing key note during BOAK. It was around BOBJ front-end Tool Selection. I used this opportunity to further develop a generic yet simple method how to approach the frontend tool selection. The basic idea I formulated already in my last blog post back in April 2013. But I agree with some of the comment writers that this first rule of thumb was maybe to specific to be applied in all situations. Therefore let me share what I think is a more generic approach – by the way you can use this of course for other BI vendors and not only SAP BusinessObjects (the following illustrations are just examples – the listed and selected tools don’t have any concrete meaning!):

PART A: Preparation
Step 1: List all available BI front-ends

The first thing to do is to get an overview what BI front-end tools are available in general from a specific BI vendor. As I’m a big fan of working interactively with people, e.g. gathering in front of a whiteboard or flipchart, I suggest you write down product names to sticky notes and post them on the flipchart:

Step01

Step 2: Divide tools into “in scope” and “out of scope”

Depending on your environments you can do a first, yet very rough tool selection and divide the intially listed tools (see step 1) into two groups:

“Out of Scope”: This is maybe easier to start with: If you don’t have SAP BW as a source, you can eliminate all tools working with BW only. Or if your security policy prohibits the use of Flash, maybe Explorer or Xcelsius are out of scope a priori.

“In scope”: All the tools which are not out of scope.

Step02

PART B: Build a working hypothesis
Step 3: Select the tool which covers most of your requirements

This step assumes that you have quite a clear understanding of your business needs to be solved with a BI solution. I’m fully aware that this is often not the case. But to keep the basic process for tool selection as simple as possible I won’t go into details about how to find the “right” requirements. Not yet, but maybe in a further blog post.

Anyway, let’s represent the total amount of requirements symbolically as a circle. Now think about which tool has the broadest coverage of your requirements. Take the sticky note and put it onto the circle. Please be aware that this is only a “working hypothesis” – trust your gut feeling – you can always revise your tool choice later on in the process.

Step03

Step 4: Select the tool which covers most of your left over requirements

Repeat step 3 and think about the tool which might cover most of your left over requirements and put the corresponding sticky note into the circle.

Step04

PART C: Validate your working hypothesis

Nothing is more annoying than “strategies” which exist only on paper but cannot be transformed into reality. Keep in mind that you’ve just built what I call a working hypothesis. Now you should validate it and test against the reality. It will either prove your gut feeling regarding tool selection was right or wrong.

So far you have selected two tools. They represent a selection hierarchy. For any given or new requirement (or group of requirements) you should now do a hands-on test. Always start with the first chosen tool: How well can you implement the requirement? Does the implementation fullfil your expectations? What do your end users think about it? Do they like it? For now I leave it up to you to define the “success criteria” to decide in which case a prototypic implementation passes the hands-on test and when not. Anyway, if the implementation passes the hands-on test, you should go with tool #1 for this kind of requirement now and in future situations.

If the implementation fails the hands-on test for tool #1, go forward to tool #2 and do a hands-on test again with this one. Hopefully your prototypic implementation now passes the test and you can define to go with tool #2 for this kind of requirement now and in future situations.

Step05

What happens if a prototypic implementation fails the second hands-on test too? There are three alternatives:

  • If you fail the second hands-on test for let’s say <10% of requirements, you should think about a specific solution for these obviously very special requirements: Mabye you simply continue to solve these requirements “manually” in Excel? Maybe you need to buy a niche tool for it? Just find a pragmatic solution case wise.
  • If you fail the second hands-on test for let’s say <30% of requirements, you should think about adding a third tool to your tool selection hierarchy.
  • If you fail the second hands-on test for let’s say <60% of requirements, you should definitely revise your working hypothesis and play through another tool selection hierarchy.

Closing Notes

I’m fully aware that the outlined process is simplistic. That’s why you might not be able to use it “as is” in your current frontend tool selection project. But it shows the basic idea (namely to build a tool selection hierarchy and validate it with hands-on tests) on how to narrow down the number of useful tools in a given context – and it is your job to apply respectively adapt it to your environment. Let me know what you think about it – and how it works in your environment!

The Rule of Thumb for BOBJ Tool Selection

What is the right SAP BusinessObjects frontend for a given situation? A question I’m asked nearly every day. When I was confronted first with this topic  a few years ago the taken approach was a highly sophisticated Excel spreadsheet in order to assess all available BOBJ tools based on a feature list. The only problem was: At the bottom line there was never a clear winner. Next approach were the famous decision trees like the following:

BO-Tool-DecisionTree

Not bad as a first guess. And in an ideal world where the basic functionality would be the same for all BOBJ tools such a tree could work indeed. But given the situation that even today – nearly ten year after the aquisition of Crystal by BO – support for universes is still not exactly the same in Webi, Crystal Reports and Xcelsius (aka Dashboards) and especilly the maturity of a tool or a sub component of it is vastly different, there is no clever way to tell you which tool to use for which purpose.

Although you can’t give a distinct answer to the question “which tool to use for what”, I’m convinced that the following rule of thumb will be valid in most situations and for a majority of organisations – the only assumption is that there is no limitation out of licensing. That means I assume you have a license for all or at least the most important frontend tools. The idea behind this rule is that a priority rating is more helpful than a feature or use case driven decision tree.

Here is my rule of thumb:

  1. Try it with Web Intelligence
  2. If Webi didn’t work, try it with Crystal Reports
  3. If Crystal Reports didn’t work, try it with one of the “niche” tools

Let me share some thoughts about this priority list:

Why should we start with Web Intelligence? There are various reasons for this:

  • From a features perspective Web Intelligence provides the most widest range in the BOBJ tool suite. You can use Webi for creating classical standard reports, you can use it for dashboard like applications (think about Input Controls and the ease of use regarding drilling – e.g. compared to Xcelsius…), you can use it for self-service reporting, you can use it as a data pump using XLSX export or interface to other applications using BI Web Services etc.
  • From a maturity perspective it is one of the most stable and mature applications in the BOBJ world. I tell you this as an native “Crystal guy”. But whereas Crystal Reports 2011 runs stable the same way as it did for the last decade, the new Crystal Reports for Enterprise is just crap compared to both, the legacy CR and Webi.
  • From a data source perspective: Webi is the only tool which fully supports all kind of Universe stuff. I’ve never heard of any limitation that Webi would not support something what you can do in a Universe (by design). But let me compare this to Crystal Reports: On one hand you can use only UNX universes in CR4Ent, on the other not all type of queries are supported. Crystal still has the limitation that if a universe query results in multiple SQL statements it fails to handle it as there is no local “micro cube” as with Webi. Of course this whole argument implies that we value a “common semantic layer” to be of high “added value” to an organization and therefore should be supported in its full scope. But there is even more to add: Webi handles not only multiple SQL result sets per query, it can also leverage multiple queries and easily join them. Although I’m not a friend of “merged dimensions”, there are many situations where this capability is the only work around to get the job done at the end of the day (and not three monthes later when the data finally arrived in the DWH…). No clever way to do this in Crystal Reports or Xcelsius directly.
  • From an SAP BW perspective: Two or three years ago we had to decide for Crystal Reports often because of its better connectivity to SAP BW and all around it with hierarchy handling etc. These days are “passé”. My most recent experience with Webi using the BICS interface are very promising. Totally in contrast with CR4Ent which crashes regularly, even with the latest patch level.
  • From a usability perspective: Although SAP currently tries to position Webi to be the tool where business users develop the reports, I think its usability is equivalently valubale for IT folks too. Report development is quick and straight forward – once you’ve got used to the ribbon style menues ;-)
  • From an installation footprint perspective: Given the situation that SAP releases new patches nearly every third or four week, patching client installations is an nightmare. The more valuable are fully web based deployment scenarios. Therefore once again, Webi is the favorite.

Still, Web Intelligence has some short comings. That’s why you should evaluate Crystal Reports in a second instance:

  • One of the major differentiators between Crystal Reports and all the other frontend tools is Conditional Formatting. As you may know Crystal Reports has a powerful formula language integrated. This formula language can be used to control neary every property you can set in Crystal Reports. This way you can implement what I call “guided interactivity” at its best: Let the end user choose some parameter values and use these values to control both, the data in the report but especially the layout too. The typical use here is: A customer wants to build 10 similar reports. They are not exactly same regarding the layout, but similar. For example, in Webi there is no straight forward way to show conditionally show or hide some parts of the report. In Crystal Reports such a thing is a no-brainer.
  • Interactive / proactive Alerts: As of today, only Crystal Reports based alerts can be used to send an email notification if they are triggered.
  • Export formats: Crystal Reports has a multitude of available export formats, including Word or XML, which aren’t available in any of the other tools.
  • Hierarchical Grouping for relational data sources: Crystal Reports can dynamically resolve a Child-Id-to-Parent-Id relationship and apply calculations over such a hierarchy.

But before you choose Crystal Reports remember there are two versions of Crystal Reports: The legacy Crystal Reports 2011 and Crystal Reports for Enterprise. The first one is mature and stable, but does not contain new features introduced only to CR4Ent. On the other hand, CR4Ent is a de facto “1.x” product regarding its code maturity. For now I simply cannot recommend to use it as your major reporting tool without intensive testing of your own use cases in your environment. On the other hand – depending on your situation – the legacy Crystal Reports does not support UNX universes at all nor does it support UNV universes as you’d expect it coming from Webi.

What about all the other tools? I call them “niche tools”. This is due to the fact that all of them have quite a narrow scope of application compared to the “generalists” Webi and Crystal, let me name a few:

  • SAP Visual Intelligence: This is a great tool for ad-hoc-analysis. But that’s it. No way (yet) to publish documents online (except over Explorer), schedule them or create more sophisticated standard reports.
  • Explorer: Not the most mature product, especilly in the context of SAP BW and BWA as a datasouce… In general, Explorer is nice for “standard” visualizations. But have you ever tried to customize even basic elements of these charts? Or have you tried to add a simple table into an Exploration View? Or export an Exploration View as a whole? As of today these basic things seem to be impossible…
  • Analysis, Edition for OLAP: Limited to OLAP data sources, no clever integration into scheduling, publishing etc.
  • Analysis, Edition for Microsoft Office: Only BW support…
  • Dashboards / Xcelsius: Limited capabilities in terms of data volume that can be processed, no straight forward way to realize drill downs, no common export formats, no full Universe support, no scheduling capabilities…
  • Design Studio: Not usable for productive environements in the current version 1.0, and even for subsequent versions I’m very sceptical… In addition the scope of the tool is focused on BI App development which as such is clearly a niche.

This doesn’t mean that these tools are not valuable in the context of specific requirements. But assuming that there is a value in reducing the number of used and supported tools to a minimum, these tools should be chosen only after having evaluated Webi and Crystal beforehand. According to my experience chances are quite high that your requirements can be covered by one of these two tools.

What is your experience with tool selection? Would you agree with my rule of thumb? Anything I missed? Looking forward to reading your comments!

Using HANA on Cloudshare Part 1: Setup connectivity

Hi everybody

As you may know I’m a great fan of Cloudshare, you’ll find my previous post about testing in the cloud here. So far we had to use “traditional” databases like SQL Server or Oracle to work in Cloudshare. Finally SAP managed to get its new baby – HANA – to various cloud platforms, including Cloudshare –> see here for an overview. They provide you with a regular Cloudshare environment with 24GB RAM with two machines, the HANA server on Linux and a Win7 client with HANA Studio – you can register for the 30 day trial sponsored by SAP here:

01_Environment

So far so good. But what is the value of an isolated HANA database? It’s pretty small. Usually in Cloudshare, an “environment” is quite isolated network wise, therefore my first idea was to extend the 24GB RAM and add another machine, e.g. with BO4 installed. Unfortunately the maximum RAM per environment is 32GB. Even more sad that BO4 doesn’t really work with 8GB of RAM… What to do? A first inquiry with Cloudshare showed that obviously the HANA environment is somewhat special. After some try and error I found how you can easily connect to your HANA environment both from your local client or another Cloudshare environment. Let me share my findings with you in this blog. As you can read in the title I plan some other posts, especially about how to fill data into HANA using SAP BO Data Services.

First thing we need to do is creating a static vanity URL for the Cloudshare machine. For this switch from “My environments” to “My Account”. There go to “Vanity URLs” and specify whatever you want – the only thing you can’t take anymore is hana ;-)

02_VanityURL

As you can see, there are two public URLs available now: the regular with .cld.sr and a second one vm.cld.sr. In the background these two URLs are mapped to different public IPs. Whereas the first one gives you the default access to ports like 80, 8080 etc. the second one seems to redirect also HANA specific ports like 30015. Therefore you don’t need any kind of port forwarding as suggested in forum threads like here. Don’t forget to click “Save changes” at the end of the page.

You can now do a first test within the HANA Studio on Cloudshare itself – add a new system and use <your-name>.vm.cld.sr:

03_AddSystem104_AddSystem2

05_AddSystem306_AddSystem4

As you can see in the last screenshot, the only “issue” with the connectivity is, that somehow the status information of the HANA server cannot be retrieved, therefore you don’t get the green light but a yellow one. But don’t worry, everything works fine.

The next and so far final part is to connect from another Cloudshare environment, e.g. using the Information Design Tool:

Create a new relational connection using the HANA JDBC driver:

07_AddConnection1  08_AddConnection2

And finally you can start to build your data foundation based on this connection:

09_CreateDF

Hope this helps. Wish you a lot of fun playing around with HANA on cloudshare!

How to configure BO Explorer 4.0 to run with BWA

Hi everybody

This is just a quick note about my findings how to get BO Explorer 4.0 to connect to SAP’s Business Warehouse Accelerator (BWA). Besides the possibility of a relational UNX universe based connectivity, this is the only way in BO 4.0 to connect Explorer to an SAP BW.

As it seems many others have the same question – while reading this blog please keep in mind it is not a well researched articel, it is just a write-down of some current findings. They might be incomplete and I’m happy to see comments from your side about what your experience is.

If you look into the official admin guide of BO Explorer you’ll find only the BO side configurations. No word about what’s necessary to configure on the BW side. That’s why so many of you (including myself until a few days ago) never saw this “BWA node” in BO Explorer. For me the key was to find the following documentation:

http://help.sap.com/saphelp_nw73ehp1/helpdata/en/4b/e2ff960ff91323e10000000a15822b/content.htm

Basically I had to configure two main things on the BW side to get the BWA connecting to BO Explorer:

  1. “start program RSDDTREX_ADMIN_MAINTAIN In ABAP Editor (transaction SE38) with OBJECT = ‘POLESTAR_SYSTEM’ and VALUE = ’2′.”
  2. “Enter transaction code RSDDTPS in the input field. The Explorer Object Selection screen appears. On the left of the screen, there is a list of all BW objects that can be activated for display in SAP BusinessObjects Explorer. The objects are displayed under the InfoAreas that they belong to. The icon in the Explorer Status column indicates that the corresponding object has already been activated.” (more infos here)

After having applied these and some other properties described in the documentation above, some restarts of Tomcat and the BO Explorer services we finally could access the BWA indexes from within Explorer.

A helpful page is the following wiki (although I couldn’t find the info above on it): http://wiki.sdn.sap.com/wiki/display/BOBJ/BWA+and+Explorer+homepage

And a last remark: I got several times a Tomcat stack error including the following statement:

com.businessobjects.datadiscovery.web.beans.DataDiscoveryWebSession.initializeFromRequest

I first thought this might be due to some misconfiguration I did by chance when trying to setup the BWA thing. It was not. It’s some kind of login / SSO problem. Simply close all browser instances (e.g. Internet Explorer) and login to BI Launchpad again and then open Explorer. It should work again.

How to promote a Crystal Reports with Dynamic Cascading Prompts in BI4

This (and most probably some future) blog post will detail on my experience using Promotion Management (LCM) in BusinessObjects release 4.0. The following explanations are mostly based on the description I’ve just handed in to SAP support. I will do my best to keep this post current regarding answers from SAP support…
Infrastructure: I did all my testes on Cloudshare (see my blog here). Currently using BI 4.0 SP4 Patch 4.

Source-Sytem: Cloudsrv012
Target-System: Cloudsrv016

Promotion Management is primarily used on the Source System.

Update from SAP support

SAP support was quite quick and told me that the issue described in this post will be fixed in patch 4.7 (including the problem of promoting BusinessViews residing in subfolders)

Terms

Dynamic Cascading Prompt (DCP): A parameter object in Crystal Reports 2011 which contains a dynamic list of value (LOV).

List of Value (LOV): List of Value object based on a Business View (BV). Can be created manually in the BV-Manager.

Business View (BV): Business View’s are created in the BV-Manager (which is part of the Client Tools setup of the BI Platform). BusinessViews are based on Business Elements. Business Elements are based on Data Foundation objects. And Data Foundation Objects are based on Data Connection objects. These items are generally considerd as “Repository Objects” (at least in XI 3.1 Import Wizard this was the case).

Initial Setup

Create a LOV with its underlying BVs based on the Xtreme database (using ODBC-Connection to local Access file). Save them in a subfolder (in my example “rbra_Test”):

Create a simple Crystal Report (in CR 2011) containing a parameter with a DCP:

Save this report in the source system. In the BI Launchpad the parameter looks like this:

Problem Description

Goal: Simply promote the above created report from source to target system using promotion management.

Steps taken:

Create new promotion job in Source System including all dependencies:

Then promote:

Result: Partial Success:

My guess: The problem is that the BV-objects are in a subfolder. Therefore, I move the BV-objects in source system to root folder:

Report still works in source system:

Take the same Promotion Job as before and refresh dependencies – no Sub Folder in Business View Branch is shown anymore:

Promote again:

^

Now it shows Success:

It looks like a success in BV Manager too:

and also in Crystal Reports:

BUT: If you open report in BI Launchpad, you don’t see any List of Values:

Tested Workarounds

Promote BusinessViews separately (not working)

I tried to promote BusinessViews and LOV objects separately from the report. I have the same issue regarding storing repository objects in subfolders. Besides this I found the following:

  • Just promoting the BusinessView and underlying objects works fine according to Promotion Management. But if you look into BV-Manager you’ll get errors like this
  • Promotion Management doesn’t allow to select LOV objects separately.
  • If you then promote the same Crystal Reports containing the DCP but do NOT select the dependencies, all the BusinessView objects (and LOV objects) are promoted anyway and break the functioning of the BusinessView and LOV in the target system. Currently we couldn’t find a way to promote a Crystal Reports with DCP without automatically promoting all dependencies and therefore break the target system.

Remove DCP, export / import LOV using BV-Manager (not working)

In order to escape the circumstance that Promotion Management automatically promotes DCP objects etc. (see point above) I tried the following:

  • In the source system, set the Crystal Reports parameter to a Static list of value and save the report.
  • Promote it – no repository objects are promoted.
  • In order to “promote” LOV objects independent from report we used the option to export BV and LOV definitions in the BusinessView Manager.
  • We imported the LOV object into the target system using the import option of the BusinessView Manager.
  • Reset the static prompt to the imported LOV.
  • Result:

    The LOV of the second level doesn’t work.

Remove DCP, export / import BV, recreate LOV (working)

  • In the source system, set the Crystal Reports parameter to a Static list of value and save the report.
  • Promote it – no repository objects are promoted.
  • Promote BusinessView only using export / import in BusinessView Manager
    Using Promotion Management doesn’t work properly! (see errors in BV-Manager above)
  • Recreate LOV objects manually in target system
  • Reset the static prompt to the newly created LOV.

Although this is NOT what I expect from SAP in terms of a properly working software – at least these final steps lead to a working solution without too much of manual recreation of repository and report objects!

For all SAP internal guys if you want to track (and support me ;-): The message number with the same case description as above is 971741 / 2012. I will open up some more cases as the things shown above is just the top of the iceberg of what doesn’t work properly in Promotion Management.

Follow

Get every new post delivered to your Inbox.

Join 490 other followers