Ad-hoc is a Latin phrase which means more or less. It is used to refer to a code which is temporary and written for a specific purpose only. For example the code written while learning a programming language is ad-hoc and it’s just for practice purpose. In ad-hoc development a software application’s model is developed which is very basic. There is constant evolution of the model as work progresses. When we are not following any particular methodology while developing an application we are actually into ad-hoc development.
This type of development is suitable for small projects where multiple modules have to integrate with each other to solve a problem. Ad-hoc development has two stages.
Build: The code is developed and passed on to the next phase.
Fix: The developed code is tested and bugs are fixed. Also the code is modified to suit the user’s requirements.
1) Requires less experience to execute. Hence fresh programmers can be hired.
2) Suitable for small projects
3) Requires less project planning
1) No real method is available to track the progress, quality and risks.
2) There is a lot of rework to suit the client’s need which increases the cost.
3) The design is informal as there is no planned procedure.
4) Maintenance of such projects is problematic.
Even in smaller organizations, some software projects produce excellent results. When such projects succeed, it is because of the heroic efforts of a dedicated team, rather than through repeating the best practices with a mature software process. In the absence of a software process, results depend entirely on having the same team available for the next project. Depending only on a specific team is not productive in the long run for the organization.
To conclude we can say that depending on the project size, budget, resources and deadlines a decision can be made by the management on the type of development methodology to be used.Tags: Project