April 12, 2009

Geoff Dagley from Relevance

About a week ago, we had the pleasure of hearing Geoff Dagley from Relevance Development. He was a friend of Jeremy Suing's (the professor) from his years of working at the (now defunct) J.D. Edwards Company. Geoff's talk covered both agile project management and agile development.

The project management half of the talk was pretty interesting. Relevance is on the bleeding edge of not only agile development, but agile management as well. They do most of their work remotely for smaller clients. Relevance uses Mingle for project management, which looks like the best tool for the job. Some other highlights about their project management techniques:
  • They work with clients and educate them on agile processes - so the client knows what their consultants are doing during an iteration.
  • They involve the client during daily standups - Relevance teams conduct daily conference calls with their clients.
  • Clients can purchase a single iteration of development from Relevance.
I was very intrigued by the fact that would could buy a single iteration (2ish weeks) of development from Relevance. They must work very closey with their clients to make that possible. He also showed us the end of iteration documentation and it was pretty impressive. They used Mingle to export reporting materials, which is a great way to save time.

The second half of Geoff's talk was about agile development. It was nice to hear it from Geoff because he still developed software. Relevance uses rails, github and a continous integration server (Calm down Erik). Some more highlights about thier development practices:
  • They practice Behavior Driven Development (BDD) - A practice that is driven by value delivered to the client, which is perfect for a consulting organization.
  • RunCodeRun, which is their continuous integration solution, is tied closely to github, so it makes sense for Relevance.
  • Developers do remote XP with skype and screen sharing software, which I found to be incredible.
The remote screen sharing was very interesting - He is on the phone and sharing his screen with another developer for most of the day. That's an interesting way to get things done right, but might be a little intrusive.

His final thoughts touched on the culture of Relevance, which is a big reason for their success. If the culture of an organization fits with agile development, then that organization should build their software with agile development. This is a counter argument to the traditional "Right tool for the job" argument about using agile to build social, interface driven software. The culture of the company should dictate the methods they use for getting the job done. A sports anaology can be applied in this situation: If I have a guard oriented basketball team (culture), then I would run a guard oriented offense (software development methodology), to win the game (deliver working software).

Geoff gave a great talk - I Could really tell that he loves what he does and was very passionate about software.


  1. Thanks for the props. I need to talk to you about RAID - I think this might be the summer when I finally build that server.