Tuesday, June 8, 2010

Is there any software to automate the software development process?

I ran through this thought few days back. In most of the software development scenario, the processes to be followed, the compliance to be adhered is either absent or left to individual imagination. Such cases lead to inconsistent rather faulty development process.
The solution is simple - develop a process and ask everyone to follow it. Now the later part is the difficult one. While I am writing this, I admit that I have also made mistakes in my past software development experience. When I look back to those mistakes, I realize these things went wrong due to lack of supporting processes and the clarity to follow it.
Since putting processes in place is easy but following them is difficult, why cant we develop software to do that? Meaning??
Meaning - develop a software which would act as your development environment and will basically take care of all intermediate subtasks like -
  • requirement gathering
  • mutual consents
  • producing documentation, seeking feedback, incorporating comments
  • designing project plans, identifying resources, identifying tasks
  • Implementation
  • Quality Assurance and bug fixing cycles
  • Code reviews
  • Issue tracking systems
  • Source Code Repositories
  • Rolling out releases
  • Customer Interaction
  • Product Road map
This software is not intelligent enough to write the design doc but it will definitely help to speed up writing the doc. When development teams are geographically distributed, it gets difficult to grab the next person's views/thoughts. This software can help you to identify the right person and seek a proper sign off so that there are no surprises in the requirements.
This software will help streamline the process so that there is no way one can violate the process. The process could be decided by the authority and can be put in to the software.
Right now, I am trying to find out such products and a proper name for products that fit into such categories.

Update: I found one. FogBugz from FogCreek Software seems to be built on the same lines but I dont think it is the complete solution I am thinking of.




No comments: