Monthly Archives: August 2011

Scrum and the impediment blues.

We have a few projects on the go around the country at the moment. In most cases I get an opportunity to view their burn-down charts on a daily basis and its interesting to understand the reasons why a project might appear to flat line in terms of progress. Of course an automated burn-down chart is just the beginning of a conversation to help understand the actual progress on a project.

There are really two or three common reasons why a development project appears to slow down:

  1. Architectural challenges forcing some re-work.
  2. Someone forgetting to actually update work items which then impacts the reports.
  3. External impediments that the team needs to deal with.

It is the job of the Scrum Master to recognise the cause of team impediments and work with various stakeholders (including the team itself) to resolve them. The first two reasons are usually easily overcome. Architectural re-work is a natural consequence of evolutionary design, you just need to make sure that you aren’t gonna need it (the YAGNI rule).

The second option is really about team education. In fact I find it harder to explain to experienced agile/Scrum team members why it is a good idea to keep the electronic representation of their records up to date. It ultimately comes down to extending the reach of your information radiator. Walls are great, but for very real commercial viability reasons you need to be able to see this information remotely.

The third reason is the hardest to deal with. External impediments on a project often fall out of the realm of direct influence of a Scrum Master, and sometimes even the product owner. When initiating any project, regardless of whether you are practising agile or not, you want to make sure your external dependencies are falling into place ahead of your development effort. Otherwise you can find yourself in the situation where you are all stocked up in terms of team members, but can’t supply enough work for them to complete because of the blockers.

In a world were we treat people as “resources” it is very easy to think that you can just turn off the tap, but that has a real impact on vendors, and if you are using contractors, their income. If you do find your burn-down flat lining here are some of the things that you can do:

  1. Reprioritise work so that the external dependencies are no longer blocking.
  2. Assist the external dependencies in delivering if possible for the “common good”.
  3. Get a commitment for when the external dependencies will be unblocked and then perhaps try and get a smaller project completed with the same team.
  4. Suspend development (but this should be the last option).

Good application architecture can really help avoid blocking on external dependencies. You can mock out your external dependencies and simulate them for as long as necessary. The trap here is that you do need good examples of what those external dependencies will be returning to you if they are some kind of API.

Just some random thoughts about the impediment blues.

Identity Fatigue

I was just catching up on a few e-mails and was taken off to a relatively well known site where I needed to log in to participate. Fair enough – I can understand the need to authenticate. However, this site is one of those new fandangled sites that allows me to authenticate with any number of my pre-existing social media/email provider identities.

I’ve been to the site before, and I can remember what provider I used, but with so many options doesn’t Open ID lead to exactly the same level of identity fatigue over a period of time?

image

The site in question is Stack Overflow, but this isn’t their problem. Its a problem that we all have to deal with. I also don’t have any solutions. One that does seem pretty interesting is BrowserID.org which Alex Mackey, one of my colleagues talked about briefly at one of our events on Wednesday morning. It is yet one more federated identity solution where web developers surrender their authentication responsibilities to a third party provider so I’m not sure if it is going to solve the worlds problems.

One thing that concerns me is the concept that e-mail address == identity. Right now I have five e-mail addresses in regular use. Web-sites like LinkedIn do a lot to allow me to use each one of those e-mail addresses to connect to my single identity within their system. Most sites however only really allow you have one e-mail address associated with your account with them, and so when I move on from one e-mail address it might be difficult to reacquire access to those resources.

Anyway – just some random thoughts about the state of identity. If it is too hard for us geek folks, it must be an absolute nightmare for our end-users.

A New Comments Policy

Recently I have been receiving some unwelcome comments on my blog. The approach used by who I believe to be an individual is to post comments on my blog which either attack me personally, or Readify (my employer). I’ve decided to stop approving these comments from the moderation queue on this blog because they contain false and damaging information. In the past I have tried to look past any personal attacks and approve comments but it has gotten to the point now that it is causing me some distress.

I still want people to participate on this blog when I post content, so with that in mind I have created a Comments Policy. Everyone is welcome to comment, but I reserve the right to not post those comments to the blog if they are false or misleading. In general, if you properly identify yourself so you to can be scrutinised for what you say in a public forum, then I will let your comment through.