New Cheese

This is my last day at my current assignment, so I guess you could say that I have run out of cheese (see previous post on cheese).

Luckily enough I have not been like Hem, but more like Sniff, so I sniffed up a new assignment well in advance. On Monday I will start in my new project as an “Agile Coach”. I have always been preaching agile practices on all my assignments, but this is the first time it has been formalized. I am looking very much forward to it, and hopefully it will result in lots of blog posts here in the future.

Agile AM

At a dinner last week I discussed agile development practices with some colleagues. They work in the AM (application management) part of the company so we ended up discussing how these practices are applicable for AM.

We all very soon agreed upon that agile practices are indeed applicable for AM. Some of them are mentioned here:

  • Pair-programming: Reduces risk of introducing new errors.
  • Continuous integration: Enforces the code base to be 100% up-to-date and tested at any time.
  • Test-first: Gives immediate feedback on when an error is fixed and helps extending the test suite.

Scrum is excellent for an AM organization. Just organize all problem reports as a product backlog and plan the ones you want to deliver in the next patch in a sprint backlog. Make sure you make room for urgent matters in the sprint backlog.

Øredev 2007 – Day 2

Well, I did not win the iPod… But I ended up 5th at the coding challege at the Epsilon booth. Not too bad if you consider the amount of programming expertise present at the conference. The second day of the conference started with an excellent keynote by Joel Spolsky. He talked about what it is that makes some products blue-chip products while other that just as good end up being ordinaray products.

I also heard Andy Hunt talking about how to refactor your wetware, Kevlin Henney talked about the Agility Cube and Jeff Sutherland
presented Project Management with Scrum. The conference ended with a panel debate about the complexity we are facing in modern software development. All in all a great day at the conference.

Øredev 2007 – Day 1

I blogged a short comment every day during JavaOne this summer. These days I am attending the Øredev 2007 Conference and I can not be any less ambitious now, so here we go 🙂

Day 1 opened with a keynote by Andy Hunt that was talking about “How hard can it be?“. It turns out that the answer to this question is that “it is as hard as we make it“.

In one session Rickard Öberg gave a crash course in Qi4j and Context Driven Design. Floyd Marinescu talked about trends and future of enterprise Java™. We got a presentation of JavaFX by Torbjörn Frizon where he coded the presentation viewer on the fly…  Rob Harrop gave an introduction to Spring Batch and Jeff Sutherland talked about The Agile Enterprise.

The afternoon keynote was held by Dan North where he talked about Best Practices or Better “Best” Practices or No Best Practices at all.  He kept his promise to let us out to get our well deserved beer on time 🙂

All in all a great day on the conference that ended with dinner, stand-up comedy and a couple of beers. Tomorrow I plan on winning an iPod in the exhibition hall…!!

Who Moved My Cheese?

Yesterday I read this wonderful book written by Dr. Spencer Johnson. It is a short story about how to cope with change and it applies to your personal life as well as to your work situation. An absolute must-read for anyone that does not want to be left behind… It is only one click away 🙂

ScrumWorks works

I have been playing around with ScrumWorks™ Basic Edition which is a free project management tool for Scrum and other agile methods.

ScrumWorks™ Basic features are:

  • Product backlog and release management
  • Categorization of backlog items using themes
  • Sprint task tracking for teams
  • Reports
  • Impediment tracking
  • User and team manager
  • Excel import/export
  • Web Services API
  • Automated and manual database backups

It was easy to install. Just download the file, unzip it and run the installer. Online help is good and it is pretty easy to understand if you know the basic terminology of Scrum.

More information and downloads can be found on the Danube Technolgies website.

Feed the Starving Sprint

When you introduce Scrum in an organization that is used to the more traditional way of developing software, a common scenario is that your product backlog is reduced faster than it is filled with requests for new features. The reason for this is that Scrum enables the team to deliver functionality more effective than the receiving organization is used to, hence it takes too long to get the new functionality into production. What happens then is that you will probably end up with a a sprint that slowly starves to death. The medicine for this is as simply as work as hard you can to getting the new functionality into production as fast as possible. This is the only way to force the end users to actually use the new functionality and come up with suggestions for improvements to feed the sprint…

You ain’t agile till…

…you stop saying you are!
Every time I hear someone claim they are doing agile at their project I get suspicious and ask some more questions. In most cases it turns out that they are using some agile techniques, but at the same time still struggling with the organization’s old more heavyweight methodologies.

My project is no exception. We are running Scrum (there I said it ) in our third sprint, but there is still some way to go before we are truly agile. Such as use user stories rather than the old requirements, get more involvement from our product owner, estimate using story points or ideal days, use velocity as a measurement for sprint size etc.

Anyway, life is much easier now than it was before so I guess half-way-agile is far better than not-agile-at-all. It is all about adapting to the environment and doing whatever fits your organization best.

The Second Sprint

Our second sprint started this week with a sprint planning meeting. We are suffering a bit from lack of involvement from the PO, but apart from that the feeling is that this planning meeting went smoother than the first. The team is getting more familiar with Scrum.

We even introduced story cards to facilitate the process. These were nice to have, but not as appreciated by the team as I had thought they would be. We will have to have a look at what information to present on these cards to make them the tool they are supposed to be…

After all, the nice thing with an agile approach is the flexibility so everything does not have to be perfect the first time 🙂