One of the most critical factors in any Enterprise Resource Planning (ERP) implementation is testing. Research points out that in line with the volume and criticality of ERP implementations, testing occupies nearly 50% of the total ERP budget.
Given the strong growth experienced in the ERP market (standing currently at $22.4 billion and expected to reach $29.6 billion by 2012), and the crucial nature of testing to successful ERP implementation, one would expect more hype on testing. However, testing still remains a relatively underdeveloped sphere. In academia, for instance, one commentator points out that there is still relatively little literature on ERP testing. One of the biggest errors any organization can commit, however, is to ignore testing processes, especially in an age when the dynamism of the market and rapidity of change mean that only the most robust, highly integrated and change-friendly ERP implementations can deliver any benefits of value.
Need for testing
There are many presumptions that go into the selection of a so-called off-the-shelf solution, as against one specifically tailored for an organization. These include assumptions about the integrity of a standardized commercial solution, about compatibility with client platforms and infrastructure and about the clarity of the implementation that has been arrived at between super users and the implementation partner. The basis for all of these assumptions is the idea that off-the-shelf means “standard, best-practice, configurable”. However, the truth is that there are a number of ways that reality deviates from this belief:
- ERP systems are almost always customized. In only the rarest cases are ERP systems ever implemented off-the-shelf
- They are often linked to legacy systems and integrated with other applications
- Systems applied across multiple locations need customization to local requirements
- ERP systems often involve migration of data between systems
- ERP systems must regularly be modified to meet changing regulatory frameworks
- They inevitably require frequent upgrades or improvements with changes in the technology landscape
What all of this means is that a business technology optimization strategy including system testing, tuning and performance management can save an organization between 10% - 20% on an ERP implementation or an upgrade.
The testing process
There are a variety of testing processes implemented in a standard testing schedule. At the first level is performance testing which, as the name suggests, tests an ERP solution for whether it can handle the kind of load being placed on the system by simultaneous users or high amounts of data or transactions. The ease and efficacy of performance testing is dependant on the quality of the testing plan, testing tool, people on the testing team and the quality of performance data capture. One important tip to remember in performance testing is that it isn’t always necessary to try to test the worst case since testing tools can always generate far more transactions than is possible by human operators. For instance, one testing service usually defines a concurrent user in the financial sector as someone who enters a transaction every five minutes. However, it is next to impossible for any individual to maintain such an operating pace.
Another key testing process is functional testing, where all system features or functions, both software and hardware are tested to ensure that the ERP solution conforms to specifications and meets requirements. Successful functional testing is entirely a matter of proper definition: the specific definition of test goals will determine the appropriate functional tests required, from data mapping to business process tests to access control systems to regression testing.
Again, objectives are also defined based on the test goals set by the organization. The test cases that an organization employs in functional testing must exhaustively test areas that are being customized in the solution in order to facilitate functionality in production. Further important steps in the process include documenting key business processes, developing modular test components, setting up a test lab, executing regression testing and analyzing defects and creating test reports.
While performance testing and functional testing form necessary, basic building blocks to ERP testing, the meat of the process lies in integration testing. As much as an ERP solution is tuned and adapted to an organization, it is never a perfect fit, and requires some adjustments in people and processes as well. Thus, the most crucial aspect of testing is not the functionality of a package (as such quality is assured to some extent with a premium solution), but rather the implementation of the package into the organization. The question thus, is not whether the solution provides all the necessary features, but rather how well the combination of customization and changes in the organization’s processes meet the requirement for which ERP is deployed. Integration testing should be approached from a process-oriented perspective, and should involve the performance of actual business transactions featuring employees that will finally perform those transactions rather than simply pushing dummy data from system to system.
One way to ease the pain of testing is test automation. Test automation is the natural conclusion of testing, implementing faster test cycles by automating key test processes. Automation capabilities today cover many of the rudimentary testing processes such as configuration testing and regression testing. Of course, test automation is not an automatic, one-size-fits-all testing solution. Organizations must carefully examine the suitability of test automation - this includes the choice of right automation tool, availability of base-lined version of application and test cases providing complete application coverage; as well as good vendor support along with newer releases of the testing tool to cope with technology changes.
Testing is by no means the simplest aspect of an ERP implementation. On the contrary, there are a number of examples of testing difficulties that have caused ERP implementations to fail. Thus, given the business-critical nature of ERP solutions, and the level of customization that goes into every ERP implementation, rigorous testing processes that ensure the effectiveness of an ERP implementation can only be ignored at a company’s peril.