presented the project

Download Report

Transcript presented the project

Strategies for Successful Reporting
in a Data Warehouse Environment
with Actuate
Christian Donner
Systems Consultant
[email protected]
The Guiding Principle
Any intelligent fool can make things
bigger, more complex and more violent.
It takes a touch of genius - and a lot of
courage to move in the opposite direction.
-- Albert Einstein
Sun Life of Canada

Global financial services firm

Assets under management $181 billion

Corporate headquarters in Toronto, Canada

US headquarters in Wellesley, MA

Going public in 2000
The US Group Division

Offers life and disability insurance to
companies with 10 to 5000 employees

Generates yearly revenues of approx. $400
million

In 1997 launched a project to reengineer its
core business processes and replace
systems

The data warehouse is part of this system.

We call it “Sun Link”
How We Sell Group Insurance
Broker
Sales Rep
Sponsor
Underwriter
Process Improvement Goals

Minimize proposal turnaround time

Minimize time spent with declines

Automate as much as possible

Measure turnaround time

Count declined and sold cases

Make information available to everyone
 Data Warehouse
Definitions
According to Ralph Kimball,

A Data Warehouse is
the queryable source of data in the
enterprise

A Data Mart is
a logical subset of the complete data
warehouse
Data Warehouse Project Goals

Provide a single source of management
information for the whole division

Provide current up-to-date data

Provide a data model that is easy to use
and understandable for end-users

Allow users to view canned reports, run
reports with parameters or create their own
report

Replace existing reports from different
systems
Strategy: Many Small Parts

The first release in February 99 included
prospect measures and reports.

The second release went into production in
June this year and added workflow and
performance measures.

The third part in March 2000 will include
sales data and reports.
The Platform

NT 4.0 Server

Windows 95 field clients

NT 4.0 Workstation developer clients

SQL Server 6.5

Actuate 3.2.1

approx. 150 users (20 concurrent)

Currently 40 reports in production

32 reports in development

74 database tables
Our Strategies

Use a dimensional data model for reports

Drive the data model from the report
information requirements

Design the reports with the business users
and show them early what it will look like

Rebuild database on a nightly basis

Use Actuate to generate and distribute
reports
The Operational Data Model
Territory
ZipCodeAssignment
MailingAddress
PartyAddress
TerritoryAssignment
Employment
EmploymentRole
CaseSalesRepresentative
Party
OrganizationAssignment
Case
OrganizationAssociation
CaseSponsor
The Dimensional Model



Better performance,
since only 3 tables in
join (as opposed to 13)
Easier to read - faster
learning for end users
Easier and faster to use
- higher productivity
SalesOrg anizationDimen sion
CaseFact
SponsorDimension
The Database Load Process
Full load via
bulk copy. Views are
used to extract
a subset of the data.
Stored procedures
build dimension, fact and
aggregate tables.
2 copies of the
database, one is always
online!
Data
Warehouse
Staging Area
Operational
Database
Users view pregenerated reports
using the viewer
Data
Warehouse
Report
Viewer
Report
Encyclopedia
Reports are run daily
after completion of the
database build
Why Actuate?
+
Server-based architecture
+
Conventional and Web-based reports
+
Moderate cost
-
Ad-hoc query capability
-
MS Office integration
-
Metadata-driven
Our Strategies With Actuate

Get the right people

Design for change and build a class library

Encapsulate data access in stored
procedures

Establish an informal process and allow
developers to bring in design ideas

Find creative solutions for limitations of the
product
The People Search
Crystal Reports
Actuate
Entry Level
Master Level
hours
days
days
months

Several days of senior level consulting helped us
with a jump-start.

We found a talented consultant with some Actuate
experience to lead the design of the class library
and the development process.

We assigned one of our own developers to the
project who now is the only person to maintain
existing and develop new reports.
The Class Library Structure
AFC
base
classes
Foundation Classes
ABS
abstract
classes
Abstract Sun Life Classes,
not accessible for developers
COM
Group
reusable
collections
library
classes
Low level class library
in some cases instantiated directly
Compound classes library
to allow reuse of complex structures
ROD
report
classes
ROD
Objects
Object layer
Local layer of abstraction
Report elements can be customized in one place
Why Stored Procedures?

Encapsulating database dependencies
 No
need to recompile reports
 Changes
can be made fast and easy

Performance advantage (in some cases)

Business logic is all in one place
 Centralized
 Can
code maintenance
be cross referenced
 Plain
text files can be used with source code
management tools
The Development Process
Work assignment interactively in meetings
 Report development with

 Database
coding
 Class library maintenance
 Test data generation
 Function test
 Reviews
 Version tracking
 Change management
Final tests by test team
 Deployment

Creative Solutions

Reports wait for database

Environments - database access controlled
by user id

Dynamic help file location

Registry access

Static and dynamic hyperlinks
(C DLL source code can be downloaded from
www.denormalize.com)
Multiple Environments
Admin
Desktop
Viewer
Report
Generation
Dev
User ID
Tst
Help
HTML
Registry
Prod
Client
Actuate Server
Database Server
Report Demonstration
Did we reach our goals?

Provide a single source of management
information for the whole division

Provide current data

Provide a data model that is easy to use and
understandable for end-users

Users can view canned reports, run reports
with parameters or create their own report

Replace existing reports from various
systems with reports from one source!
The Key Advantages of Actuate

OO concepts facilitate the design for reuse

Reuse helps to achieve consistent look and
feel with minimal development effort

Actuate provides a framework for simple
and efficient report distribution throughout
the company (and beyond)
Still In Need Of A Test Strategy

The report layout has changed; fields were
added or removed

The report structure has changed; a
grouping level was added or a similar
change has been made

The business rules have changed that
define the data in the database, but the data
is the same

The data has changed, but all components
remained unchanged
Lessons Learned

We underestimated complexity and project duration

Users don’t know what they need beforehand.

We started with the development of the class library
without verifying the design.

It is impossible to freeze the data model at any time.

Feedback is only available if people use the reports.
People use the reports if they need them to run their
business.

Data integrity problems are guaranteed.

Report and warehouse administration required more
time than we expected.
The Next Steps

Open database for end users

Actuate 4 and web delivery

Home page and “personalized contents”

Develop a test strategy for reports

Extend and enhance the data warehouse
Thank you!