Search
 
     
   
   
   
 
By
Dr. R. Srinivasan,
CTO, iCMG, Bangalore
   
  Unnecessary changes disrupt project planning
 
 


A project manager must avoid making unnecessary changes once a design has been finalised, to prevent the project from disastrous consequences, warns Dr R Srinivasan

It is a well known fact that before designing, we should be aware of the requirements and specifications of the end product which would direct the plan and methodologies to finalise the design aspect. As a rule, once the requirements are thoroughly discussed, analysed and finalised with the customer, any additional requirement should not be entertained unless they are very essential and were left out in the earlier discussions by oversight. However, new requirements should not be piled on; this will not only make the design process tedious but will also affect every stage in the planning process, resulting in both schedule overrun and efforts. The ultimate result is that the project will become catastrophic.

The antipattern under this type of activity is called "Gold Plating or Gliding the Lily". The obvious question is, how such a thing can happen, particularly when all aspects of software development processes are well- defined. The situation may arise because of the customer or software development organisation, when new ideas come in or suggestions for improvement are administered. In this situation, it is the responsibility of the project manager to recognise good ideas and genuine suggestions if they are appropriate, but at the same time keeping in mind the objectives of the project. Sometimes, it may happen that a major functionality has been missed out and discovered later. In such cases, it is advisable to take the concurrence of the customer so that they can be incorporated in the next version rather than going back to square one. As William Brown says, the missed functionality is not the case of "Gliding the Lily", whereas the concern is the functionality or design attributes which are unnecessarily compelled to be incorporated in the design.

This type of antipattern happens not because of any ill intention of those who suggest it, but for adding better features in the final product and is hence a positive suggestion. This will put the project manager into a state of confusion because he will recognise that these people are not malicious, and particularly so if they are the stakeholders in the project. Experts in software development and processes identify that the parties who contribute to this antipattern are the management of the software organisation developing this project, the software architect, members of the project development team and even the customer.

The management of the organisation may be involved because though outside the project, they are part of the overall review team who have too little to do, or have prior experience in software development in any capacity, or are not directly in the main stream of management, or might have been part of the customer community, and above all may be over enthusiastic about the project.

In any case, they are not directly involved with the project and hence would not bother about other problems, which would affect the schedule and hence the cost. The project manager will be put in an embarrassing position and he cannot avoid this because others try to overshadow him. Hays McCormick draws a parallel and says that this definitely is a landmine for the project manager and it is very difficult for him to work his way through the situation.

The second category that gets the project into the "Gliding-the-Lily" antipattern is the customer. This is yet another difficult situation for the project manager because of beliefs like, "The customer is the king", "The customer is always right", or "The customer must be kept happy always". From the customer or the user side, he will aim at only what he wants, unmindful of the changes to be made and the repercussions therein. However, it is the responsibility of the project manager to be persistent and advise the customer of the possible impacts of the changes to the system and point out that the original requirements have been discussed and base-lined at the initial stage itself. In a similar manner, once the architecture is finalised and base-lined, the project manager should see to it that the software architect does not introduce changes at this stage.

The fourth category responsible for creating this antipatten are the developers in the project team. This is the most challenging one for the project manager because it may be transparent to him and hence difficult to detect. This should be avoided by making the developer stick to the stipulated requirements only and not add anything during development. This will be controlled through very rigorous and periodical reviews supported by a good configuration management.

( To be continued)

(The author is Chief Technology Officer, Internet Component Management Group, Bangalore and can be contacted at: r.srinivasan@iCMGworld.com)

 
 
     
Copyright © 2006 iCMG. All rights reserved.
Site Index | Contact Us | Legal & Privacy Policy