Monday, September 15, 2008

We really need a clear picture...

In any business, the requirement for a software is identified from a business need/problem and the need is expanded to a list of associated requirements. These requirements are visualized only at a high level initially.

In many software projects, these high level requirements are detailed during the Requirements phase and generally an agreement is reached (Requirements Signoff) between the seller (customer) and buyer (software developer). From this point onwards, the seller starts the subsequent phases & activities towards developing the product. Though the customer and software developer agreed on the requirements, finally the customer comes with a list of additional requirements/changes during product acceptance stage (UAT).

Why typically many projects face this issue? Why the needs of the customer has not been identified clearly at early stages either by the customer himself or by the software developer?

In many cases, both customer and the software developer assumes that they both understand the communication exchanged between them through words. But behind those communications, there are some visions/pictures which are untold and not understood. These are called as 'implicit expectations' by the customer and 'scope changes/scope expansion' by the developer.

How can this communication gap be filled? To do that, we need a Projector to enlarge the high level requirements and display them on a screen for both the parties to 'see' and agree.

The following diagram depicts the point.




Like a film is projected on a screen through a projector, the business need is projected on a screen called 'line of Expectation'. For projects which are troubled due to scope related issues, the line of expectation may always be moving or this line is kept at a long distance from the requirements definition stage. When the line of expectation is moved beyond certain point, the focus is lost and the picture (of the software) gets blurred. This is the point where the customer's business focus is lost. At these stages, the customer may treat a critical business feature and a 'Nice-to-have' feature with same priority. The elaboration at this point (shown as red area in the picture) , becomes the area of dispute between the customer and the software developer.

The solution to this problem is to fix the line of expectation at some stage and bring it as close to Requirements Definition. At this point, the picture is clearly projected (as a detailed requirements doc/prototype) so that both customer and software developer see the same picture rather than having assumed something about other end's needs & understanding.

I hope you are getting my point.

Are we on the same page? Sorry.. Are we on the same picture?

No comments: