Effort Estimates – 3 Vital Perspectives
As part of various SAP support/development engagements, consultants frequently find themselves taking up the task of effort estimation. These estimates usually constitute activities viz. Requirement gathering, Solution Design, Configuration, ABAP development, Functional Validation, Regression Testing and all other actions leading to a successful User-Acceptance-Testing (UAT). The objective of this blog is to help the readers in understanding this business-critical function by throwing some detail on the perspectives of 3 key stake-holders viz. Client, Developer and Consultant.
Similar to any business proposition, client stands as the principal stakeholder and end-beneficiary of the Requirement-Under-Development. Also, through continuous ERP add-ons/developments, it is the client who brings revenue to the associated consulting organization. So, consultants, while doing effort-estimates, should always keep the below things in mind:
1. 1. The proposal has become a reality only since the client is seeking a better-way of handling his business processes and is eyeing to achieve the same through an efficient SAP-driven solution.
2. 2. Businesses don’t look at solutions with a skewed-sense of short-term savings. Effectively, clients are always willing to pay an extra dollar for a well-designed holistic ERP offering.
3. 3. Most of the requirements may have to deal with revamping existing business processes or implementing a new legal regulation or may even involve extending the existing business template to expanding global operations with unique country-specific challenges. Since time is a crucial component in such situations with every additional day of delay costing the business dearly, consultants have to be meticulous in their effort-planning. The objective here should be ‘Get-it-Right-FirstTime’.
4. 4. As we often experience, Rework is an exorbitant cost we end up paying when we try to deliver an incomplete solution resulting through not-so-thoroughly-assessed estimates. This Rework is not only a pricy affair but also delays the entire delivery cycle with enormous adverse business impact.
5. 5. Further, repeated failures in delivering Complete and Defect-free solutions with-in agreed timelines will lead to an erosion of client’s trust on consulting organization’s capabilities. This is a grave situation for any firm to get into since this negatively impacts its revenues as well as tarnishes the brand image in the long run.
Developer: (Usually an ABAP expert in SAP parlance)
As it is the developer who transforms the on-paper solution to an ERP reality by doing the necessary ABAP development, before arriving at an accurate estimate, he/she should ensure the below:
1. 1. A clear and complete understanding of the expected solution with a fairly-good picture of best and alternative scenarios to build the same
2. 2. A candid approach in making the consultant (functional) aware of the hidden-limitations that may be tied to the solution in future. Here, it is of utmost importance for the consultant and developer to be on the same page in their understanding and approach. This can be achieved only through continuous interaction and information-sharing at every stage of development. Here, the consultant has to ensure the developer aware of the changes happening on a daily-basis. (Through sharing minutes of discussions held with business). Based on the same, if required, the efforts should be revisited.
3. 3. Before starting any part of development, the technical consultant has to ask for a functional specification document which could be as basic as the solution-in-brief to be developed or may even incorporate acute details like database tables to be used, smart forms to be modified, programs to be amended etc. depending on the scale of requirement. This achieved clarity will surely reflect in making accurate and realistic estimates.
Finally, any development approach should be simple and performance-effective in its design. Ultimately, if the convenience and ease-of-usage factors are missing, the solution itself will lose its relevance.
A Functional Consultant acts a bridge between the client and developer. Basically, it is the job of a consultant to understand the business requirements and map them to a good-workable detail so that the development team can accomplish the required ABAP changes for successful implementation of the desired SAP solution.
The following are vital factors to be looked-in by a consultant while doing the critical activity of estimating efforts:
1. 1. Ask relevant questions first: By not jumping into any assumptions and evaluating his understanding of the requirement at every stage of discussion, a consultant can ensure an accurate-mapping of client’s business need. In this stage, consultant should ask as many questions as possible by appropriately sharing his valuable insights/experience in handling similar requirements.
This way, the business also can develop a fair overview of what to expect and any valid, reasonable drawbacks can be appreciated before implementation itself.
2. 2. One-Team Approach: The consultant has to work in-tandem with the developer by constantly interacting with the latter and sharing all vital inputs on a regular basis. Before arriving at any rough estimate, they both should agree on the solution-approach to be adopted.
Here, the consultant and technical expert should work as one team with crucial individual roles being mutually acknowledged and respected.
In essence, businesses look for solutions which are efficient (satisfies the business need and easy-to-use), high on quality (defect-free) and which can be easily scaled up to meet future requirements. Effectively, effort estimation, as an activity, should not be looked in a myopic lens to hastily deliver the thing-at-hand at any cost but has to be viewed in a broader perspective to implement solutions constituting little regressive impact, minimal or no rework and ultimately, offering lot-more than the business desires through optimum usage of efficient SAP functionalities. This can only be achieved, when we, as consultants, try to comprehend the engagement from a developer and more-importantly, through a client’s business perspective.