Agile Development: You're doing it wrong.

Code Naked

  • Homepage
  • About
  • Contact

Dec 15: Agile Development: You're doing it wrong.

I was really annoyed today by a seemingly harmless line in an email: Given the compressed timeline, we adopted an agile approach to the build.

I love it when a firm starts on a project with a crazy immovable deadline that they can't make if they have to waste time planning it and so they decide to use an "agile" development "process". The trouble of course is that they really mean they don't want to do any planning at all - not even a crappy waterfall process. Instead they spray tasks at developers and pray that they there are no scary things that are going to come and bite them in the eleventh hour. A project descending into chaos is usually a sign of a project that is about to fail as panic sets in. Setting out chaotic from the very start sounds like a project I do not want to be on.

Agile development does not mean throwing out all planning, it means forcing the client to choose what is really important to them. I have been on an agile project that basically built an entire website from the graphic artists design document. Then people wonder why no one knows what a particular button is for, and why it's not in everyone's copy of the jpg. Agile development also means making sure that each component is complete before moving on to the next task. I find that developers will sometimes not implement a feature such as sorting a list with the hope that it will be caught in QA and then they will essentially be able to extend your development time into the QA period. You sneaky little developer, you'd be cute if it wasn't for the fact that you are freaking out because you haven't slept in weeks and your family is starting to take the guy that mows your lawn out to do family things because you are never around.

Another key to the agile process is that the team remain flexible to client changes. Pushing code early and often is definitely the cornerstone of this process but if the client comes back after a code push with a whole mess of changes, where exactly is this time going to come from? Sadly it's another reason why you are not going to get to spend the weekend relaxing or bringing in the patio furniture before it snows ... ummm, be right back, I just remembered something I forgot to do. If you aren't the master of time and space then there is simply no way to do more work in the same amount of time which means you need to take weekends and evenings away from developers. This leads to burnout which hurts your team's productivity for the remainder of this project and most likely the next project they are on.

Then people wonder why the agile development process hurts so much. It's simple really, you've never used it before.
Posted by Matthew Purdon in Software Development Comments: (0) Trackbacks: (0)

Trackbacks
Trackback specific URI for this entry

No Trackbacks

Comments
Display comments as (Linear | Threaded)

No comments


Add Comment

Standard emoticons like :-) and ;-) are converted to images.
 
 

Subscribe

Archives

  • March 2010 (0)
  • February 2010 (1)
  • January 2010 (4)
  • December 2009 (6)
  • Recent...
  • Older...

Categories

  • XML Technology
  • XML Databases
  • XML MySQL
  • XML Software Development
  • XML Being a Contractor
  • XML Client Side
  • XML PHP
  • XML State of the Art


All categories

Blog Administration

Open login screen

Recommended Reading

Amazon.com: Domain-Driven Design: Tackling Complexity in the Heart of Software (0076092019565): Eric Evans: Books
Amazon.com: The Nomadic Developer: Surviving and Thriving in the World of Technology Consulting (9780321606396): Aaron Erickson: Books
Amazon.com: Patterns of Enterprise Application Architecture (0076092019909): Martin Fowler: Books
Amazon.com: Refactoring: Improving the Design of Existing Code (9780201485677): Martin Fowler, Kent Beck, John Brant, William Opdyke, Don Roberts: Books

Feedburner

Numeric Feedburner ID Required!




 

Layout by Andreas Viklund | Serendipity template by Carl