Tuesday, November 15, 2005

Agile Programming

When we look at the Agile Manifesto, we realize that Agile Programming is a completely new way of developing Software, emphasizing the importance of User participation throughout the development process, and understanding requirements through both interactions and ad hoc less formal documents.

Manifesto for Agile Software Development

We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:

Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan

That is, while there is value in the items on the right, we value the items on the left more.

Kent Beck, Mike Beedle, Arie van Bennekum, Alistair Cockburn, Ward Cunningham, Martin Fowler, James Grenning, Jim Highsmith, Andrew Hunt, Ron Jeffries, Jon Kern, Brian Marick, Robert C. Martin, Steve Mellor, Ken Schwaber, Jeff Sutherland, Dave Thomas

I have spent the past few hours understanding Agile Programming Methodologies better and have found some of its practices quite interesting and quite different from the ones in the conventional software development models.

In our undergraduate course on "Software Engineering", we were introduced to a whole bunch of Traditional Software development Models (and a whole lot of SE jargons). The only thing that bothered us all was the extensive documentation that was required at each stage. For me, seeing valuable "man hours" being devoted to formal documentation rather than the code was something quite disturbing. It is not that I am against documentation or opine that there has to be zero documentation. I am just of the opinion that documentation needs to be concise, and less formal. Agile Programming just requires that.

Another practice Agile Programming methodologies require is "Pair Programming" where two developers work on a single terminal working on the same code. This is something that I had followed during mt internship and found extremely helpful. Not only was the productivity higher in terms of code delivery, the code quality that we turned out was also impressive. Two brains definitely are better than one!


Technorati Tags:

1 comment:

Ravi Atluri said...

hi bhayya,

can u suggest me a place where i can get good blog templates....
like the one u have....i suppose u had built urs on our own.....

though m planning to create one on my own...but i need a few to start off.

I tried seacrching, but i could find anething tht was different frm the conventional ones....lita