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.