Best approach for gathering ERP requirements

How You Gather Requirements Sends a Message!

Let’s us go through an analogy together.  You are the customer and I am the consultant working with you to develop some software changes for your packaged software.  As the consultant I can take two approaches for gathering requirements:

Option #1:  “What would you like?” An open-ended question that will generate a lot of feedback from you the customer.  Yet it communicates several underlying messages:

  • You as the customer will get a turn-key, custom solution.  Software changes require a minimal effort.
  • I as the consultant may not have sufficient knowledge of your business – or not enough to lead with a recommendation.
  • You as the customer know exactly what you want.
  • I as the consultant appear to be more customer-focused.

Option #2:  “Here is the delivered functionality. Please explain why this is not sufficient?” A question that will generate less feedback from you the customer.  Yet it communicates several underlying messages:

  • You as the customer may not get what you want.  Software changes should not be required.
  • I as the consultant may not have sufficient knowledge of your business – especially if I did not know of the gaps beforehand.
  • You as the customer may feel to be put on the defensive and not treated appropriately as the key stakeholder.
  • I as the consultant appear to be less customer-focused.

Both options are valid approaches for gathering ERP requirements.  However, the challenges I see today are due to how project teams apply requirements gathering strategies to their ERP implementations.  Project teams typically confine themselves to only one approach and do not account for the challenges associated with the selected requirements gathering method.

Multiple Methods for Requirements Gathering

Based upon my experience there are three main strategies for gathering ERP business requirements:

Requirements-Driven Strategy

A pure requirements-driven strategy focuses on defining all business requirements independent of organizational and technology constraints.  This approach is the most widely used method today.  This is also the slowest approach to gathering requirements and will require the most time from business users to articulate requirements.  We can anticipate gathering non-value-added business requirements that must be filtered through the requirements section process.  With additional gaps business stakeholders will have to spend more during Fit/Gap to make decisions.

Solution-Driven Strategy

On the other end of the spectrum, a pure solution-driven strategy focuses on the gap business requirements (requirements that cannot be met with delivered functionality).  This approach is highly popular in for rapid ERP implementations.  This approach requires the least amount of time from business users; however, business activities must conform to the packaged business software.  This could have a significant impact on organizational acceptance and impact because ERP software designs are based upon a market-driven set of requirements and not the specific requirements of an individual customer.

Configuration-Driven Strategy

The configuration-driven strategy is based upon the premise “The new system needs to do what the existing system does today”.  It may be a situation where a customer simply needs a replacement system because the existing system is nearing the end of its license and may become decommissioned software.  Starting with what the customer knows helps to expedite requirements gathering.  Business user time is minimized because IT can provide insight into the existing business system capabilities and configuration.    However, this approach will surface requirements based upon existing system limitations as well as legacy non-value-add business requirements.

Each requirements gathering approach has its strengths and challenges.   This fact does not invalidate the approaches described.  What is required is the right application of these methods to encourage – not force – customers to maximize their ERP investment.

Best Practice: Use Multiple Methods for Requirements Gathering

What if there was a way to take the best from all the approaches mentioned above and produce a strategy that took full advantage of ERP software?  What if we could bring in different approaches in such way as to complement and progressively elaborate (iterate) business requirements?   This is the aim of the blended approach – to leverage different techniques in the process where they can generate the most value.  The project team gathers business requirements from different perspectives which enable the team to create a holistic requirements definition set. Finally, the approach will naturally filter out non-value add business requirements.  Let’s review how we would execute on a blended approach for requirements gathering.

Gathering ERP requirements

Gathering Requirements for ERP

Iteration #1 – Listen to your customer

In the first iteration we will utilize the requirements-driven approach to gather high-level requirements.  The difference in applying this approach is the level or degree that we execute in this iteration.  The objective is to gather enough business requirements that will enable the project team to develop a competent system for business solution modeling.  A key concept here is that your customer needs to feel that they are being listened to and engaged, yet not being promised a custom solution.  The project team wants to be able to develop a system that will convincethe customer that the packaged software will support their business.  Focus on gathering the main business scenarios and relevant data that will enable the project team to produce a realistic solution to utilize during business solution modeling.

Iteration #2 – Lead your customer

Here in this iteration the project team transitions from listening to leading with a business solution.  During business solution modeling the project team will demonstrate the ability of the packaged software to support the main business scenarios to your customers.  During business solution modeling the project team also focuses on gathering exceptions to the standard business process scenarios defined.  You will also note that this activity will provide the project team with the opportunity to validate business requirements and software configuration during the requirements gathering process.

Iteration #3 – Negotiate with your customer

This final iteration is a confirmation that all value-add business requirements are defined and all business exceptions and scenarios have been addressed.  Looking at the configuration of your customer’s legacy system(s) not only is another source of validation but also can be the first iteration of defining legacy data migration requirements.

Summary

One of the key techniques the project team can use to detect and resolve business requirements conflict is to gather requirements from different perspectives.

Gathering ERP Requirements from different prespectives

Different Views of Requirements

Driving to define your business requirements from different perspectives will naturally identify potential conflicts.  Starting off with a requirements-driven approach lays the foundation for effective requirements gathering as well as promotes collaboration.  Next, taking a solution-driven approach enables the project team to quickly identify the boundaries of the packaged business software.  Third, utilizing the configuration-driven approach provides a validation of results from both the requirements-driven and solution-driven activities.  And finally taking a results-driven approach ensures that the business results support the desired business results.

Source:  This hybrid approach is further defined in my book Maximize Your Investment: 10 Key Strategies for Effective Packaged Software Implementations.

ERP Makes for an Expensive Custom Solution

The Allure of Technology

Think of the possibilities!  Rapid delivery of new functionality!  Reduce development cost by quickly deploying prebuilt solutions!  If the software does not meet your needs then use the delivered, user-friendly development tools to customize the ERP software.  We have the technology to make your business more flexible and adaptable.  Most customers do think about the possibilities quickly but have a hard time taking that vision and incorporating it into the realities that are involved with using ERP.

The Challenge: Customer Expectations Not Aligning with ERP Strengths

A key area that causes conflicts during an ERP implementation is the misalignment between the customer’s expectation of business software and key ERP value drivers.  Consider the following illustration.

ERP Advantages and Challenges

ERP Advantages and Challenges

 

It is important to understand the customer’s business owner/user expectations of enterprise business software. If customers expect ERP to adapt to current business activities then there is an increase risk of developing a custom solution that cannot support the fundamental value drivers for ERP. When an organization makes the decision to implement ERP they are making the decision (consciously or unconsciously) to realign business processes with delivered ERP functionality. This is a significant mind shift for key business owners and end users! It’s not a “light switch” that you can turn on and customers think differently. There must be an evolutionary process to better align customer expectations with ERP strategy and direction. Let me provide a real life example to further elaborate.

The No Win Situation

I was a functional consultant for an ERP implementation to replace a customer’s legacy time reporting system. The customer’s process consisted of Microsoft Excel spreadsheets coupled together with a data load process to a custom staging table for time approval and payroll processing. When I started working with the customer to define their business requirements it was apparent that there was a difference between executive and business stakeholder expectations. The payroll manager insisted on having the exact functionality that they current have in their systems today. I knew that no matter how good our developers were we would not be able to cost-effectively build Microsoft Excel flexibility into the ERP software. It would totally invalidate the justification for going with an ERP software solution in the first place. The payroll manager was used to getting exactly what they wanted from software to the point where software replaced the need for training (ex. dummy-proofing). I did an initial gap analysis and identified over twenty (20) gaps that required changes to the ERP software.  Addressing the gaps via software would require additional resources (costs) to design, develop, test, and implement software changes.  In addition the customer would have to allocate resources to re-analyze their software changes against new ERP software updates.  These activities will reduce the ability of rapid delivery and increase Total Cost of Ownership (TCO).

I came to the realization that if I proceeded with a traditional approach to gathering requirements that (a) I would spend a lot of wasted effort gathering non-value-add business requirements and (b) the fit/gap session would be much longer than planned, (c) and I was in a non-win situation unless I changed the game. If I provided a custom software solution then I would have a happy payroll manager but I would have disappointed executives because the ERP solution increases costs. On the other hand, if I ruled out customizations and only used delivered functionality then I would get happy executives and an upset payroll manager! The only way I could be successful was to move from a traditional requirements and implementation approach to a new approach that addresses the realities of using ERP.

SEI Evolutionary Process Integrating COTS-based Systems

Source: SEI Evolutionary Process for Integrating COTS-based Systems

 

The approach I took was to reset software expectations. I met with the payroll manager to discuss the reasons for selecting ERP software and the inherent advantages and disadvantages with ERP software. This was not a one-time discussion and required several additional discussions with the entire project team. In the end the payroll manager’s expectations were adapted which enabled us to accelerate our fit/gap session. We still identified a few gaps. Of the three gaps we negotiated to have only one addressed via a software change and the other gap was handled via training. Our negotiations resulted in a significant reduction of effort and were only made possible by establishing the right environment for effective negotiating. If either party has unrealistic expectations then effective negotiations will be extremely difficult.

Summary

The fundamental design of ERP is to provide a common software solution across a broad customer base. ERP is maturing to enable more custom capabilities via configuration, but the fact remains that ERP can make for an expensive custom solution. The marketplace has realized that ERP requires a different implementation approach (ex. Software Engineering Institute’s EPIC methodology). Consider the drivers for purchasing an ERP software package. What was the business justification for purchasing packaged software? Remember that ERP targets customers across multiple geographic locations and industries. Two key implied statements that executives make when they select an ERP software solution are (1) having a custom software solution is not strategic to the organization, and (2) we expect our organization to adapt to the ERP software – specifically non-competitive, non-strategic areas. Strong words I know, however, I have seen a lot of grief and anxiety created during packaged implementations because this message was not clearly articulated to the project team and the organization.

The software vendor, implementation partner (consultants) and the customer’s IT department have the opportunity to play an important advisory role to the business user community by defining the best approach to leverage technology in creating a business solution. This advisory role can be a challenge given the high technology expectations of ERP software; however it is in the best interest to our customers!

Get it wrong the first time! The case for ERP iterations.

We have all heard the phrase “Get right the first time” used as part of an effort to reduce costs and accelerate implementations.  Unfortunately, many have interpreted this to mean doing an activity once.  We attempt to run ERP implementations as a production process.   Good production processes deliver the anticipated result (a known result), for a standard cost, within a given time.  In contract, ERP implementations are more of an exploration process given the customer variability.  Consider the following illustration:

Every ERP Implementation is Unique

Unique Factors for ERP Implementations

A recurring problem we have with ERP implementations is that we try to “big bang” activities and do not provide an opportunity to learn, adjust, and correct for success.   Iterating certain implementation activities will give us that opportunity.  Let me provide you with a just a few examples.
 

Project Estimating

 As stated in the Project Management Institute’s (PMI) Project Manager’s Body of Knowledge (PMBOK) there are three types of estimates or what I like to call “levels of understanding”.  Estimating is based upon our level of understanding regarding effort, scope, assumptions, constraints, and objectives.

Estimating for ERP Implementations

ERP Estimates

As you move further into an ERP implementation the better we are able to estimate. Why?  The key reason is that you have more proven information to base your estimation.  I worked on generating ERP implementation estimates for the last 10 years and I can safely say that I could never generate a definitive estimate without first going through a detailed fit/gap.  Yet, we expect to hit an implementation estimate that was created before any implementation work is done.  There should be no surprise to the fact that most ERP implementations do not hit their budget given the level of accuracy associated with the estimate. 

Gathering Requirements

Another area for an iterative approach is in requirements gathering.  Recently, I was asked what the best approach for gathering requirements was and my response was that there is no one good approach.

Gathering ERP requirements

Methods for gathering ERP requirements

 

Do not limit yourself to one method for defining requirements.  The more methods (perspectives) you employ to gather requirements the greater the probability for success because the project will have the opportunity to create a holistic requirements definition.

Summary

I firmly believe that every customer’s ERP implementation is unique.  Because every ERP implementation is unique there are a large number of unknowns that we try to address given the limited information we have.  We should take a risk-adverse, iterative approach to remove implementation uncertainty.  Do you think this cause and effect could apply to other areas of an implementation (example: testing, development)?   I am interested to hear your thoughts.

Reverse Engineer to Business Requirements

A critical activity for any ERP implementation is gathering business requirements.  The purpose of business requirements is to define the needs that will enable business activities to generate business results.   The traditional school of thought is that if we capture all the requirements then we assume that we will develop a solution that will produce the desirable results.  I believe that experience has taught us that the above assumption is not correct. 

Business modeling associating business activities with business results

Results-Oriented View of Business Activities

 

Let’s use the above illustration to elaborate on a few observations based upon my experience: 

  • Customer’s existing business models will have both value-add and non-value-add business activities.
  • Customer’s existing business models may produce undesirable business results.

 A concern with traditional requirements gathering techniques is that non-value-add requirements are carried throughout the requirements management process.   This results in wasted effort, loss of focus on the critical requirements, and informally creates the expectation that the new ERP system will replicate existing functionality.   A majority of non-value-add requirements are a result of current technology or organization limitation.  This is not a criticism but rather a reality we all (Customers, IT, Implementation Partner) must address as part of an ERP implementation.

START WITH THE END IN MIND

Let’s consider something unconventional and trace desirable business results back to business activities and the individual needs (requirements) for each business activity.

Business requirements support business activities which support business results

Results-Oriented View of Business Requirements

 

Starting with the desired business results ensures that we drive to only those requirements that directly support true business value.  First, it is an exercise that really puts into perspective the purpose of a business model (results).  This exercise is not only useful to the project team but also the business stakeholders.  Second, it is an approach that can help you justify why certain existing business activities are not being carried forward in the new business solution.  Third, taking a business results oriented approach enables your project team to be more successful at focusing on the right business requirements and not wasting time on capturing requirements for non-value-add activities. 

SUMMARY

Often we spend too much time and effort focusing on gathering requirements that do not support key business results and then gloss over the key business activities because of implementation time constraints.  Prioritizing business results is an activity that we need to initiate before gather requirements, not during fit/gap when expectations are harder to manage and negotiate.

Follow

Get every new post delivered to your Inbox.

Join 3,555 other followers

%d bloggers like this: