Adopting “green” practices is often at the forefront of economic news today. It is a kind of social movement centered on a concern for the conservation and improvement of the environment. I think, “going green” means to make choices that minimize, reduce the negative impact of the outcome on the resources.
I would say, “Lets make our earth a better place to live in all aspects”. All we have to do is make a few small changes to go green. Question is are we ready?
You much be wondering, how does “Writing clean code”, relates to “going green”. Well, if we look at the current software development strategies adopted in the industries, the maintenance cost to support the application products are going increasingly high. In this economic situation, it makes it even more difficult for the companies to manage the crisis and thereby forced to forego some of the needs and has to say “No” to change, which is inevitable.
To make this situation manageable and better, we all as a team of project managers, analysts and developers need to work on a strategy that will reduce the cost of software upgrades or support and maintenance. I strongly feel there is a need for an agile strategy to improve product design, testing,with fewer errors, less maintenance effort with overall cost reduction and continuous high quality.
One solution with both environmental and economic benefits is to adopt the extreme programming methodology. There are different agile methodologies available out there, which are open for choice and debate. At the basic level, developer need to be motivated and trained to write clean code, which are testable, which would improve developer-centric aspects like productivity and confidence. There are some agile software development strategies that even capture defects much earlier in the development cycle, which would improve largely the external quality of the application.
One such strategy is Test Driven Development (TDD) that addresses both design and testing, which improves product quality. This also has a dramatic impact on the maintainability and further development of the system.
Eventually you will see that it is easy to make significant changes but you do not have to be fanatical about it…..