This week's book giveaway is in the OCAJP forum. We're giving away four copies of OCA Java SE 8 Programmer I Study Guide 1Z0-808 and have Jeanne Boyarsky & Scott Selikoff on-line! See this thread for details.
http://agilealliance.com Faddish? To some extent. Agile processes are a reaction to overloaded and poorly applied "heavyweight" process (often waterfall-based). The emphasis is on producing quality software product that meets the needs of the customer, as opposed to rigorously following a process that emphasizes a lot of management overhead, such as excessive documentation and/or meetings. Above all, agile processes purport to take into account the fact that humans build software. Agile != hacking. None of the agile processes promote eliminating any essential software development activities, such as design, review, or documentation. You might benefit from the exposure to some of the disciplines promoted by agile processes. Test-driven development is the agile programming practice that appears to provide the most benefit to developers. Then again, many shops just hack away at code anyway, so the introduction of a disciplined process, no matter how "agile," is often viewed as burdensome. -J-
The soul is dyed the color of its thoughts. Think only on those things that are in line with your principles and can bear the light of day. The content of your character is your choice. Day by day, what you do is who you become. Your integrity is your destiny - it is the light that guides your way. - Heraclitus
Joined: Jul 11, 2001
Originally posted by Kishore Dandu: I am wondering what is Agile programming. What is its premise and what is its usefulness.
The premise is that with modern equipment and techniques it is possible to use a much more feedback-driven than plan-driven approach. Unlike decades ago, where conventional processes have their roots, today it is several orders of magnitude less costly to correct errors, so instead of investing in getting it 100% right the first time, it might now be more effective to get something working early and improve it incrementally. When that works, it provides the benefits to be able to put a working system into production earlier (when a more plan-driven approach would only have produced documents) and to react to learnings and changing business environments.