In most developing countries the software development discipline is emerging. Several private and government entities are in the process of automating different business activities. Just like the software discipline itself, the information technology professional are still gaining expertise in specification and verification of software solutions.Where the clients know what they want, they are not in position to explain it to the developers. And equally less experienced developers find it a challenge to understand the needs of the client.
To overcome this problem, some entities hire a consultant to help manage and supervise the implementation process. That is, there are two different consulting firms involved in the project – one to do the actual implementation and the other to supervise the implementation. They all work for the client, but the supervising firm ensures quality is delivered.
This approach of a supervisor and the contractor is well tested in civil engineering works. Where you will find, the main contractor, the supervisor as independent contractors.
For this work, the discipline has to be mature such that the approaches and documentation are well understood by the different parties in the project. In some projects, this has improved the quality of the project because each contractor has a specific responsibility.
I have seen this approach work in software development with amazing results. Usually the supervising contractor requires domain knowledge to ensure that the engineering product serves the desired purpose. The presence of supervising contractor implies the need for proper specification, documentation and reports because these are part of the main inputs for the supervising contractor. The mandatory need for these documents guarantees a level of a streamlined the software development process.
3,286 total views, 2 views today