In-Depth
The Seven Deadly Sins of Managing an ERP Rollout
Visibility of entire system via automated structural analysis the key to being "sin-free."
By Jitendra Subramanyam, Director of Product Strategy and Research, CAST
Poor software quality is not the inevitable outcome of an Enterprise Resource Planning (ERP) rollout. The quality issues that plague ERP rollouts can be predicted and controlled, but only if the causes are fully understood and addressed. Failing to acknowledge, accept, and plan for the issues that adversely affect application software quality are at the root of the "Seven Deadly Sins of ERP."
Sin #1: Pretending that Customization is Not Necessary
Have you ever checked into a luxury hotel and been disappointed? It's so expensive that you figure everything should be included. But then you find that they charge for pool-side towels. How disappointing! That's what customization feels like. For the price you're paying you desperately want to believe everything will be included, but that's not how it works in the real world. ERP systems cut across applications, business processes and business units in your enterprise. Small differences between how the vendor thought your processes go and how they actually work have a way of scuttling the best laid plans.
Sin #2: Not Distinguishing Between Customization and Configuration
There's a thick gray line between configuration and customization, especially in Siebel and PeopleSoft systems. Where one blends into the other is a matter of judgment, much like the distinction between what counts as maintenance versus enhancement. This sin is amplified when attempting to mitigate Sin #1. This leads to tortured attempts to get the system to come tantalizingly close to, but not quite up to what your business customers really need. It is better to address and fix some customization issues now than to tackle a lot issues later, up to and including (potentially) having to scrap the entire project.
Sin #3: Not Looking Beyond the ERP System
Although ERP systems cover a huge swath, they're by no means all there is to enterprise software. Applications outside the ERP boundary rely on (and are in turn relied upon by) the ERP system. For example, enterprise applications are hugely data intensive. The efficiency, performance, and even maintainability of these systems are tightly wound up in how well these database calls are being handled. It quickly goes beyond just developing in the proprietary languages of ERP vendors to include more sophisticated APIs (Java, Siebel, and PeopleSoft Objects, for example), frameworks (J2EE and .NET, for example) and relational databases (such as Oracle and DB2).
The mélange of technologies, languages, and frameworks around the ERP core aggravates performance, stability, and maintainability. No single person, however knowledgeable, can fathom this from end to end. Automated analysis and measurement of the whole, not just the individual parts, is absolutely essential.
Sin #4: Leaving Customization Entirely Up to ERP Programmers
Enterprise programming is a world unto itself. ABAP, PeopleCode, and eScript programmers tend to have specialized skills and less breadth than other programmers. This becomes a liability because there's so much going on in the ERP environment (see Sin #3) that requires knowledge beyond the traditional ERP vendor's customization language.
Sin #5: Not Measuring the Quality of Customization
When a part of the system is customized, enhanced, fixed, or altered, how confident are you that the fix is going to stick? In other words, is the quality of the work good? Can you quantify how effectively you fixed the problem -- for example, has the quality improved by 5 percent or by 30 percent?
Quality in this regard is hard to measure, so most people overlook it, but how else do you know if you're spending your time wisely or getting value for you money if a vendor is doing the work? The ability to measure quality of the work gives you back the control to progress from just reacting to issues to being proactive about where to allocate resources and how to sequence work for optimal business impact.
Sin #6: Not Managing the Ripple Effects of Change
The way a change made in one place ripples outwards is one of the most difficult things to control when customizing and enhancing ERP functionality. Again, it's the enterprise-wide span and the multitude of components of the ERP system that makes it difficult for any one group of developers to know how their actions might affect what's beyond their purview. Making changes locally without understanding the enterprise-wide ripple effects is the reason for nagging performance problems -- and Sin #7.
Sin #7: Missing the Root Causes of Stability and Performance Problems
When no single team sees or has responsibility for the end-to-end performance of an ERP system, performance and stability problems become nagging issues. They never seem to go away no matter how many times they're fixed because the deeper causes of the surface symptoms are not easy to find. Not being able to isolate these root causes leads to escalating IT costs and business frustration.
Finding Solutions
It's easy to identify these seven sins, but how do you avoid them?
- Visibility of the entire system is essential. Make sure you consider the system as a whole, including the non-ERP parts that hook into it and address them as a single unit rather than an amalgamation of standalone parts.
- For end-to-end visibility to be feasible, automated analysis and measurement is essential to reliably expose flaws that cause ERP applications to perform erratically. By all means, make use of the tools that ERP vendors provide (for example, SAP's Solution Manager), but make sure you supplement these tools with a solution that covers everything, even the non-ERP parts.
- Make sure you measure (that is, quantify) the quality of customization in the context of the system as a whole. This enables you to make the right decisions when balancing delivery speed with business risk.
In ERP, you're mostly playing by the ERP vendor's rules which set you back on your heels right from the start. This is why it is important to gain more control from the start rather than just reacting to post-deployment failures. Automated end-to-end visibility and the ability to measure the quality of customized components in the context of the entire system give you this control and save you from committing the seven deadly sins of ERP.
Jitendra Subramanyam is the director of product strategy and research for CAST. You can contact the author at j.subramanyam@castsoftware.com