The Cadillac of 32-bit managed query environments

Anyone familiar with the client/server query and reporting tool marketplace has heard of BusinessObjects 4.0, a high-end decision support package for managed query environments. When I talked about managed query environments, I mean that your MIS department will have to establish and map permissions between data sources and users to get BusinessObjects working. The payoff, though, is control with a capital C. BusinessObjects lets MIS/IT maintain mainframe-like security, control who can fire off queries and reports (it even lets you set when your users can log on), and establish boundary conditions such as the maximum number of rows a query can return.

BusinessObjects 4.0 sets the standard in managed query environments. BusinessObjects lets users do integrated query, reporting, and online analytical processing (OLAP) on data, while developers can design universes (mapped data structures) of data.

The Evolution of BusinessObjects
BusinessObjects isn't a new kid on the block. Business Objects (the company) began shipping BusinessObjects 1.0 in 1990 and now has more than 4000 installations (for a look at one of these installations, see the sidebar, "Medtronic's Parallel Universes ," page 102) with 475,000 licenses world-wide. In addition to having proven staying power and an increasing revenue stream (estimated 1996 revenues of $85 million are up from $60 million in fiscal year 95), Business Objects has more than 450 partners and will offer new links to SAP, Oracle Express, and Arbor Essbase data later this quarter. Microsoft has asked Business Objects to join its Alliance for Data Warehousing, a select handful of vendors that includes ExecuSoft Systems, Informatica, NCR/Teradata, Pilot Software, PLATINUM Technology, Praxis, and SAP. Business Objects' new BusinessMiner product, which began shipping in February, will help launch data mining as a mainstream activity. An international company with dual headquarters in San Jose, California, and Paris, France, Business Objects offers English, French, Spanish, German, and Kanji versions of its products.

I first used BusinessObjects in early 1993 during the heyday of client/server developer tools. Back then, I divided these tools into two categories: high-end query and reporting tools (including BusinessObjects, PowerBuilder, and SQLWindows) and end-user query and reporting tools (including Lotus Approach, Access 1.0, and ReportSmith) that theoretically let users query SQL database servers without MIS intervention. At that time, BusinessObjects wasn't as developer friendly or as easy to use as the competition. It involved too much intrusive prelimi-nary setup for my taste, and the terminology (such as "universes") struck me as, well, strange.

The BusinessObjects of Today
So what is BusinessObjects today? BusinessObjects 4.0, the first major release since July 1994, is a modular set of enterprise tools that support reporting, querying, OLAP analysis, and data mining. The software doesn't let users update or otherwise change corporate data; it provides read-only data access.

BusinessObjects 4.0 runs under UNIX (Solaris and SGI IRIS due by the end of the first quarter of 1997, and HP-UX and AIX in the first half of 1997) and all versions of Windows. Business Objects will upgrade the Mac OS version of BusinessObjects 3.1 to 3.2, but the company has no plans to provide native Mac OS support for version 4.0. The company will support the Mac version for another 18 months, and plans to offer Mac users more up-to-date support once the Web version of BusinessObjects, code-named Darwin, ships later this year. BusinessObjects competes against products such as Cognos' Impromptu and PowerPlay (BusinessObjects provides a wizard to help you convert Cognos metadata), IQ Software's IQ/Vision and IQ/Objects, Crystal Reports' InfoSelect, and Brio Technology's BrioQuery Enterprise, brio.web.warehouse, and Brio Decision Support Suite.

BusinessObjects 101
The fundamental construct in BusinessObjects is the universe--a business-oriented mapping of the data structures in databases that can represent a business unit, an application, a system, or a group of users. For example, a universe can relate to a department in a company such as marketing or accounting. Universes play dual roles: They let users define queries, create reports, and analyze data using business terms rather than database table or column names, and they give MIS control over access to enterprise data. Universes are like semantic layers between users and the corporate database, isolating users from the gory details of database structure and SQL.

You define universes with the BusinessObjects Designer module, and you administer universes with the Supervisor module. The universe consists of granular bits of data known as objects (generally fields in databases) and classes that are groups of related objects.

Objects are the most granular components in a universe and are roughly analogous to field-level data in a relational database. Object names can be the same business terms that users assign to their everyday activities. For example, objects for a human resources manager can be Employee Name, Address, Salary, or Bonus, and objects for a financial analyst can be Profit Margin and Return on Investment. According to Business Objects, a typical universe contains 50 to 100 objects, but it can easily contain thousands.

Classes are the logical grouping of objects within a universe. In general, the name of a class reflects a business concept that conveys the category or type of objects. For example, in a universe pertaining to human resources, one class might be Employees. You can further divide classes into subclasses. So in the human resources universe, a subclass of the Employees class might be Personal Information.

In addition to designing universes, you can define hierarchies and dimensions that predefine what data your users can slice, dice, or drill down into. Users can access these hierarchies and dimensions and analyze the data using the optional BusinessObjects Explorer, with its multidimensional dynamic microcube or OLAP technology. BusinessObjects has also licensed the Visual Basic (VB)-like ReportScript from Mystic River that developers and users can use to create SQL scripts.

Most users, however, access their universes from the standard BusinessObjects Reporter and either run the canned reports that MIS prepares or use these reports to help create their own ad hoc reports. The optional Document Agent module implements a report server that lets users schedule, process, and route reports--over the Web. (Document Agent's Web support is limited to transmitting HTML reports. The Darwin project will offer a version of BusinessObjects that lets users perform interactive query, reporting, and OLAP over the Web.)

Business Objects also provides an add-in mining product, BusinessMiner (which began shipping in February) that offers end users the ability to mine data on the desktop using decision trees and rule-induction logic. Offering users data mining functionality at this price could represent a real breakthrough. Another component, BusinessQuery (available since February) is a Microsoft Excel add-on that lets users generate their reports and manipulate their data directly from Excel. Rather than looking at BusinessObjects from a developer's point of view, let's see how it looks to the users.

BusinessObjects from the User's Perspective
Most BusinessObjects users access universes in network mode by logging on with a password and opening a report or report folder (which can contain multiple reports that you select using tabs). However, you can also run BusinessObjects in standalone mode and access local data (such as an .xls or .dbf file).

Users can run existing reports, print them out, and route them via email. Users can also access the drop-down Data menu to look at the raw data or to edit the underlying report query parameters. If users have the BusinessExplorer module that permits multi-dimensional OLAP analysis, they can access either drill-down or slice-and-dice modes to analyze their data from the drop-down Analysis menu. Drill-down and slice-and-dice operations rely on predefined hierarchies and aggregates, such as totals and counts that BusinessObjects designers or savvy users define.

For multidimensional analysis, BusinessObjects categorizes three types of objects--dimension, detail, and measure. Dimension objects are the parameters for the analysis; they typically relate to a hierarchy such as geography, product, or time. Detail objects describe a dimension but aren't the focus of the analysis. Measure objects convey numeric information for measuring a dimension object. Dimensions, details, and measures are all predefined parts of the BusinessObjects universes, and the program shields their implementation from the user.

Users can create new reports and report templates. To create a new report, users must specify which types of data provider (data source) they will use and whether the report will be based on an existing template (templates typically contain a user- or company-defined look and feel, including logos and formatting). The four types of data providers are

  • a predefined query associated with a universe
  • a stored procedure associated with a SQL database (and stored as part of the database management system)
  • a freehand SQL query typed into the SQL editor or run from a text file containing the SQL file
  • a personal, local data file (ASCII, XLS, or DBF only)

BusinessObjects reports aren't set up like standard banded reports. They're more object oriented than a standard report and contain title, data, and summary blocks. The data blocks can contain two-dimensional tabular data, crosstabs, or graphical data (pie, bar, line, area, or scatter charts). BusinessObjects' master/ detail reports are data blocks with subsections. The BusinessObjects Reporter module lets users sort, set up subtotals, and use dozens of built-in functions such as AVG or MAX. Now that you know a little about how users can create, access, and run BusinessObject reports, let's look at how designers create BusinessObjects universes.

Designing Universes
BusinessObjects divides its user universe into four categories: designers, who set up the database connectivity and mappings (universes) and distribute the mappings to users; supervisors, who set up users, groups, and the BusinessObjects Repository, which contains universe metadata; administrators, who set up and schedule document processing with the optional Document Agent; and users. These four groups can exist in combinations. For example, large organizations often have several designers and supervisors who oversee different universes, whereas the database administrator at a small organization is often both the designer and supervisor. Let's look at a simple example that illustrates what's involved in setting up BusinessObjects universes and users so an end-user can create reports from Microsoft's familiar Access Northwind database.

1. Install a standalone version of BusinessObjects 4.0 under NT. I installed standalone versions on my beta box, which runs NT 3.51, and on a Windows 95 box. The standalone version is convenient for evaluators and developers. Large installations will generally choose to install a master (shared) network version.

2. Launch the Designer module and run the four-step Quick Design Wizard by clicking the Quick Design icon (in the middle of the toolbar), as you see in Screen 1.

3. Click the New Connection button in the Quick Design Wizard to define a database link. With standalone versions of BusinessObjects 4.0, you can directly access ASCII, DBF, or XLS files or set up an Open Database Connectivity (ODBC) connection. I set up the ODBC connection and selected an existing ODBC data source for the Microsoft Access Northwind database. Users can license BusinessObjects native drivers for Oracle, Sybase, Informix, DB2, Microsoft SQL Server, or Teradata databases.

4. Set up the BusinessObjects classes by clicking the list of tables or views, as you see in Screen 2. You can rename them now or later. For this example, I selected Northwind's tables--categories, customers, employees, invoices, orders, products, shippers, and suppliers.

5. Set up BusinessObjects measures (aggregates) by clicking on data items and the calculation you want to perform. These aggregates (predefined values) can be counts, sums, minima, or maxima. I set up aggregates with counts of employees, customers, and orders on a given date, and a sum on invoice totals. Once you've set up your aggregates, BusinessObjects reports how many classes, objects (fields from the tables), and joins now populate your universe.

6. Examine your universe in Designer, as you see in Screen 3. As you can see from the icon bar, BusinessObjects provides several tools--for everything from adding tables, columns, aliases, classes, and subclasses, to manipulating joins and adding conditions to your classes. You can add user-created objects and update universes to reflect changes in their structure on the server. After you add the final touches to your universe, save it.

7. Run the BusinessObjects Supervisor, as you see in Screen 4. Sign in with the username General and password Supervisor the first time you log on. This combination of username and password starts the five-step Administration Setup Wizard, where you define the general supervisor, create the repository (with its user, document, and security domains), and make the repository accessible to users. I chose to create a default monolithic repository (you can view and save the script that creates the repository) as an Access database using the same ODBC connection, but you can store the repository in any relational database to which you have write privileges. The final step is to have BusinessObjects create the important BOmain.key file and specify how BusinessObjects will distribute it to users. When you use the Administration Setup Wizard, you can select one of three radio buttons to specify the physical destination of the BOmain.key file: on the installation kit (you provide a diskette), in a default shared folder, or locally so the supervisor can distribute the file manually from the LocData folder of the Supervisor folder.

8. Use the BusinessObjects Supervisor to define users, groups, and permissions.

9. Distribute the universe to users by giving them access to the BOmain.key file. You can share personal (local) universes and repository-based universes.

10. Run BusinessObjects Reporter to create reports. Add them to the repository by selecting File, SendTo Repository.

These steps give you a general idea about the process of setting up BusinessObjects universes. Beyond this simple example, you can use all kinds of options including the Document Agent and BusinessMiner (as you see in Screen 5) modules. Make no bones about it, BusinessObjects is a sophisticated, powerful decision-support tool from a firm with vision.

BusinessObjects 4.0
Business Objects
800-527-0580 or 408-953-6000
Required Modules­BusinessObjects Designer $1,995;
BusinessObjects Supervisor $1,995;
BusinessObjects Reporter $595 (one per user).

Optional Modules­BusinessQuery $350 ($150 with BusinessObjects purchase);
BusinessObjects Explorer $695;
BusinessMiner $995 ($495 with BusinessObjects purchase);
Document Agent $4,995 per server