Build Vs Buy For Data Warehouses - How to Avoid Paying Too Much

The big software vendors claim they can sell you an(EAI) tool. In many cases, the reason the additional
"out of the box" data warehouse including reportssystem is used is because it has more functionality
that installs onto your Enterprise Resource Planning(and therefore stores more detailed and varied
(ERP) software. Are these things really that easy? Isinformation) than the ERP module. As a result, the
it actually cheaper to build it yourself? How do youEAI tool cannot move all of the information into the
determine if a given product is a good fit for yourERP, only summaries and selected data. This means
situation?that for the functional area that is treated by that
Here's the secret- If you answer yes to all of themodule at least some of the detail users are
following its probably a good idea to buy:interested in does not exist in the ERP. And if it's not
- You've configured your ERP software exactly asin the ERP, it won't be picked up by the pre-built
the vendor who wrote the data warehouse or datasolution.
mart expected you to.Diverse and specific report requirements
- You use ALL the modules of the ERP- and do notIts amazing how the layout (column order,
have any "best of breed" applications for any areas.summarization, which key performance indicators
- You are interested in the key performancewhere) of a report can be very very important to
indicators that they have included and they calculatereport consumers. Its also amazing how much work
them the same way your company doescan be required to modify the hundreds of reports
- Your end users like the layout, formating and colorand cubes that came with the pre-built system.
choices in the reports included and have promised notReport writers everywhere are nodding their heads.
to ask for changes.Enough said.
In fact if all this is true, then you will probably saveData Quality Issues
HUGE amounts of money by using a pre-builtEven if you've used all the tables and fields in the
package.ERP exactly as needed, and the reports look just
But. Lots of things tend to get in the way of thatfine to your users, if they have not already been
dream.given access to all this information you will probably
ERP Customizationfind that there is lots of data quality work to be
Anyone who has been involved in a large ERPdone. This cost is there for both the build and the
project knows that there is always at least a bit ofbuy options- just be aware of it, because it means
customization. If the ERP is a good fit to yourthe buy option is going to be more than just the
industry, and the project is focused on avoidingsticker price.
customization and using all those "flex fields" andOne ray of hope- very specific industry solutions
"category codes" as they were intended, then theHold on, the vendors say, but we have industry
pre-built data warehouse that is available for that ERPspecific data warehouses and data marts- these are
might be a very cost effective route.built just for your industry so they know your
But here's the rub; in many ERP projects rather thanbusiness. We have one for banking data marts,
change the existing processes (which by the way isanother one for pharmaceutical data marts, you can
often the justification for installing an ERP- processget a sales data warehouse specifically for retail, and
improvement), the business users find reasons toso on.
"keep things as they are"- and as a result, the ERPWithout a doubt the more focused the pre-built data
bends to the existing process rather than the otherwarehouse or data mart is the more likely it is that
way round.its going to save you time and money.
This means that new tables are created to holdConclusion? Often when something sounds too good
information that normally would be in a differentto be true...
format in one of the standard ERP tables. This meansThe bottom line is, although you can tell I'm not head
that that code in field "X" that normally would meanover heals for prebuilt datawarehousing, I think the
something is overloaded to mean three or fourfield has evolved. But then again, so have the prices.
things. This means that field "Y" that isn't needed byThe key is to be realistic regarding how much
your company ends up being used for somethingmodification will be required now, and going forward,
completely different.and how many of those hundreds of cubes and
Well, when the pre-built data mart plugs into yourreports that are included are actually going to be
ERP, it doesn't know anything about those tablesapplicable to your business.
you've added, and its assuming that the data is in theIt is possible that a package exists that will provide
standard tables. Its already configured its ETLs, andthe best value. Just be very very careful when you
star schemas to use those two fields that you'veare comparing the costs- because its never quite as
high-jacked, and so all those reports and cubes don'tsweet a deal as it first seems.
make any sense without modifications.Smaller, very focused pre-built data marts, particularly
To be fair, many of the pre-built data warehousetargeted to applications or modules that are used
frameworks have evolved to have lots of flexibilityfully by an enterprise are probably much lower risk
and configurability in them- you can modify and mapand more likely to provide real value than a massive
the ETL jobs provided to fit your data. You can turn"out of the box, install it in weeks not years" data
off KPIs so that they don't load in false data.warehouse.
But the trick is the more you have to modify, mapMy personal experience with pre-built products was
and configure, the more effort you spend. The morethat in the end, when the dust settled, we had
you shut off, the less you have. In the end you cantouched almost every ETL job, and the reports that
find that you are always trying to fit your specificwere the most used and useful were ones we had
requirements into the general, vanilla requirementsbuilt from scratch, largely using data loaded out of
that came out of the box. Often, this configuration iscustom ERP tables.
more effort and demands more compromises thanIf you have customization in your ERP, you have to
just building what you need.think hard about this. The reason the custom tables
Non ERP transactional systemswere put in there was because they hold information
In some ERP implementations, certain modules of thethat was important enough to justify the
ERP are not used and instead a third party softwaredevelopment. This probably means that the
provides the functionality. Often, key information isinformation in them is going to be important to the
then moved in and out of the ERP as required forbusiness intelligence you are building.
transactions via an enterprise application integration