<< Pebble 2.0.1 released | Home | Sending stderr to log4j >>
Twitter RSS feed for Simon Brown [Twitter] simonbrown: @kpseal that might explain why my full 99GB backup took just a few hours!

Coding the Architecture RSS feed for Simon Brown [Coding the Architecture] I did some technical consulting/due diligence on a large software development project recently where I'd been called in to look at how the project team was dealing with some of the non-functional requirements. I'm not sure exactly how large ...

Agile or ad hoc?

One trend that I'm seeing a lot of recently is people using the following sorts of phrases, both in conversation and on their CVs.

  • We're using an agile development process.
  • Our project is agile.
  • I have two years extreme programming experience.
  • We're doing test-driven development.

In the vast majority of cases where these phrases are used, agile has mistakingly been used to mean that the development process in use is ad hoc or even non-existant. It's not hard to get to the bottom of what people mean by agile, particularly in interviews, with a few simple questions. Usually, the flow of conversation goes something like this.

  • Me : So you're using agile ... how are you finding it?
  • Them : Good thanks, we've been doing XP for a while now.
  • Me : Oh right, which practices of XP are you following?
  • Them : We've got the users sitting near us and we're doing test-driven development. We don't do pair programming.
  • Me : How are you managing your iterations/timeboxes?
  • Them : We do a release whenever a new feature is ready. The users test it and then tell us how they'd like it changed. Agile is really good for capturing this early feedback. We just respond to whatever the users want and they love it!
  • Me : So how long are your iterations?
  • Them : Oh, that depends on .....
  • Me : So then, how are you finding test-driven development?
  • Them : We're really liking that. It's such a great technique for understanding exactly what an API should do before you code it.
  • Me : Excellent. What sort of unit test coverage do you have?
  • Them : Oh, I don't know, but it's probably over 50%.
  • Me : 50%? Do you use a code coverage tool? Do you write unit tests before writing all of your code?
  • Them : No, we've not got around to using a coverage tool yet. We sometimes right tests before the code, but we usually don't have the time to do that so we do it afterwards.
  • Me : How do you ensure quality?
  • Them : We're supposed to do code reviews, but we don't usually have time.
  • Me : So then, how do you feel agile methods differ from others, such as ...?

For me, agile is about reducing the ceremony associated with software development while maintaining very tight control over the structure of the process and quality of the deliverables. Unfortunately, many people are now using "agile" as a buzzword to describe their projects, although in reality these projects are low in ceremony, structure and quality.

Hmmm ... are you really agile or just ad hoc?

Tags :


Re: Agile or ad hoc?

Take that "agile" stuff out of these projects, what you have now? Same projects with much less quality, much less control and probably with a little more formality.

They did got something out of that Agile hype. Good for them. They are not using (yet?) all XP techniques, so what? XP is not a bible, you might use one here and another there.

And most importantly - there are projects and projects, some of them benefit from XP other might suffer. Most likely the projects you are talking about somewhere in the middle. My point is that they are still in better shape now than they could have been.

As to CV exaggeration habit - well, that is natural. CV is an ad leaflet after all.

Re: Agile or ad hoc?

Agreed, although in many cases there isn't any agile stuff to take out in the first place. Many people think they are doing agile when they aren't. This is the big agile vs ad hoc misnomer.

Re: Agile or ad hoc?

Many people say they have 10 years of J2SE/J2EE experience too.

I guess if methodology become an essential criteria when you hire someone, spend at least 1/2 an hr pairing with them and see. ;)

 

Re: Agile or ad hoc?

Good one.


Add a comment Send a TrackBack