Hi, I just happened to read few articles about Agile processes and it really interested me and ofcourse raised few doubts/misconceptions about the process. Following is my query Agile development is sometimes termed as "Cowboy coding" because it lacks proper structure, clear scope and vision and thus may result in a poor quality software. Is it a misunderstanding of the methodology? Does your book address these issues and other criticisms that Agile methodology faces?
Ilja Preuss
author
Sheriff
Joined: Jul 11, 2001
Posts: 14112
posted
0
Hello "Member07", welcome to JavaRanch.
We're a friendly group, but we do require members to have valid display names.
Display names must be two words: your first name, a space, then your last name. Fictitious names are not allowed.
Please edit your profile and correct your display name. Thanks, and have fun!
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
Ilja Preuss
author
Sheriff
Joined: Jul 11, 2001
Posts: 14112
posted
0
As far as I can tell, cowboy coding is not exactly known for a focus on continuous testing, planning and design improvement, let alone having a fully functional, fully tested system at least at the end of every other week.
So, yes, it seems that those comparisons must be based on misconceptions.
Jeff Langr
author
Ranch Hand
Joined: May 14, 2003
Posts: 758
posted
0
I believe some agile processes don't emphasize enough how difficult it is to keep a code base clean enough over time. Without such continual efforts, a system will turn to mush quickly in an iterative/incremental development (IID) world.
Sustaining a system under agile requires considerable discipline. Cowboy coding in the IID environment will only hasten the death of a system.
I think you need clear standards, continual code/design review, continual attentiveness to design via TDD, and continual integration of code in order to survive, things that only some agile processes discuss. Most cowboy coders fear these things.
Originally posted by Member07: ... Agile development is sometimes termed as "Cowboy coding" because it lacks proper structure, clear scope and vision and thus may result in a poor quality software. Is it a misunderstanding of the methodology? Does your book address these issues and other criticisms that Agile methodology faces?[/QB]
For the record, Agile is the most disciplined approach to software engineering. It is not cowboy coding in any sense of the imagination.
Can there be a problem with the architecture because the team didn't spend months defining it first? Possibly. AND, I've met plenty of projects that had architecture troubles because they thought about it for months and didn't do anything.
Manage It! is not an explanation of why Agile works; it shows ways to think about your projects and use processes, techniques, and tools that will work.
Johanna
Author of <a href="http://www.pragprog.com/titles/jrpm" target="_blank" rel="nofollow">Manage It! Your Guide to Modern, Pragmatic Project Management</a><br /> <br />Coauthor (with Esther Derby) of <a href="http://www.pragprog.com/titles/rdbcd" target="_blank" rel="nofollow">Behind Closed Doors: Secrets of Great Management</a><br /> <br />Author of <a href="http://www.amazon.com/exec/obidos/ASIN/0932633595/ref=jranch-20" target="_blank" rel="nofollow">Hiring The Best Knowledge Workers, Techies & Nerds: The Secrets & Science of Hiring Technical People</a><br /> <br /><a href="http://www.jrothman.com/blog/htp" target="_blank" rel="nofollow">Hiring Technical People blog</a><br /><a href="http://www.jrothman.com/blog/mpd" target="_blank" rel="nofollow">Managing Product Development blog</a>