Hi Chris, Tim,
I only meant to write a couple of lines, but my fingers got carried
away. Hopefully I haven't waffled too much and with some luck, some
of it will be useful.
I would agree that this is the most common major hurdle I normally
face. I don't agree that agile is primarily useful when you don't
have a plan. Agile, and particularly scrum has more time spent
planning than almost any other methodology I can think of, it's just
that we don't tend to have a gantt chart as a deliverable. The team
may need to spend quite some time (a few days for a big backlog) doing
the planning (which is breaking stories down, identifying the value of
the stories, estimating the story points for a story)
I think that the key thing to winning an organisation over are to
focus on value delivered versus cost of delivery. If you can get the
client to put a monetary value for completing a user story (and oh boy
can that sometimes be hard) and the team estimate a cost for
completing it (story point) you are doing a cost benefit analysis on a
per feature basis. The key benefit of the value being put on the
story is that the user is making a decision about what is important
before you start and telling you about it(which they often forget to
do until things are going wrong!) and it is something that they will
have to justify to the organisation if things are done in the wrong
order.
If you then get the team to work out how much work they think they can
pull into a sprint you can do an initial velocity plan which will give
you a ball park figure for how many sprints you will need, obviously
not very accurate unless the team is already familiar with the product
and has worked together for a while. But that gives you an initial
schedule, an estimate of the total cost and a window when the project
will probably finish. Which is pretty much what the business case
and overall plan is, we just put the stuff of least value at the
backend of the project so if the plan is wrong the project can still
succeed.
Issues I have had with this:
The team does not exist yet - means you have to guess the velocity and
story points which will be wildly inaccurate
The business won't/can't put values on stories
The backlog contains stories that are too large to have accurate
estimates of value/story points
Churn in team members between the initial estimates and the actual
implementation
So for me:
The product backlog is what you will get in business priority order.
Story points give you an idea of what each will cost to implement.
Sprint planning tells you how much you are going to do in a sprint
Velocity planning tells you how many sprints you need to get the
product backlog done.
Cost per sprint is easy to calculate, so cost for the backlog can be
calculated for budgeting.
I'd add some contingency (hardware/software costs, team pizza etc) and
then you have your budget figure.
On the subject of folks with alarm bells, I would point out that at
the end of every sprint you will be demoing production ready code so
that they can visibly see the progress through the backlog and make
informed decisions about the project as it goes along. The demo's are
critical to build trust.
Sprint planning and re-estimating the story points each sprint is a
commitment to review the plan on a regular basis to ensure progress is
on track, and an opportunity for the product owner to add or remove
work. It is therefore essential that the product owner is the person
responsible in the business not just for what the project does, but
that it comes in on budget. (Pretty much what tim was getting at with
having an honest citizen as the product owner)
James
> Tim Pizey -
http://pizey.net/~timp
> Centre for Genomics and Global Health -
http://cggh.org- Hide quoted text -
>
> - Show quoted text -