home

Boost Blog

Posts Tagged ‘scrum’

May 16th, 2011

alpha.gov.uk – the UK Government releases an agile prototype for a single government website

Posted by courtney on May 16th, 2011

Last week the UK Coalition Government launched alpha.gov.uk, a prototype of a possible single government website aimed at making government services easier to use. The prototype is a response to Martha Lane Fox’s (appointed UK Digital Champion by the UK Government in June 2010) call for ‘revolution not evolution’ demanded in her review ‘Directgov 2010 and beyond’.

Alpha.gov.uk is an attempt to achieve two goals:

  1. To test, in public, a prototype of a new, single UK Government website.
  2. To design & build a UK Government website using open, agile, multi-disciplinary product development techniques and technologies, shaped by an obsession with meeting user needs.

About the site

According to the Cabinet Office news release, this is the first time the UK government has followed the normal practice of large organisations of launching a prototype test a web service and gather feedback.

At the moment, the website contains answers to the 100 most frequently asked questions in government. The site is focused on search (including search results tailored to people’s locations) and directing visitors towards high-demand topics.

 

alpha.gov.uk homepage

The site has been created to test ideas and approaches, not immediately replace existing websites:

it is not intended to be an instant replacement for existing gov.uk sites. Nor does it improve the quality of government’s online transactions – others are working hard to make these easier to use.

What Alpha.gov.uk does do is trial a selection of new, simple, reusable tools aimed at meeting some of the most prevalent needs people have from government online. The aim is to gather feedback on these new approaches from real people early in the process of building a new single website for central government.

It is made very clear throughout the site that this is an alpha release, and, as the strapline on every page states ‘There may be errors, inconsistencies and inaccuracies’.

 

Prototype warning on 'report a lost or stolen passport' page

About the team

The site was developed in three months by a small group within the Government Digital Service, led by Tom Loosemore. Introducing the prototype on the site’s blog, he writes:

If people who are not yet online can be tempted into doing just one of their (typical) 4 or 5 monthly Government transactions online, then that would save the Government – and hence taxpayers – about £1bn each year. That’s a big number.

But, equally important, a gov.uk which is so good, so simple, so hassle-free that it actually encourages people who are not online to get online will save them hundreds of pounds per year – think price comparison sites, cheap online offers etc. And many of those who are not yet online are people for whom savings hundreds of pounds can make a huge difference.

The team is a mixture of government employees and vendor/agency types: half a dozen developers, two search analysts, a product lead, a design lead, a tech lead, an editorial lead, a content strategist, an editor and a project manager.

The team’s blog about the project is an absolute delight, with posts about the visual language, other parts of the UK public service that have been trialling similar approaches,  the technology behind the site, early sketches and more. Team members have also been writing and posting about their work off-site, like Paul Annett posting design iterations to Dribbble and content strategist Relly Annett-Baker writing on her own blog.

An agile, user-centric approach

As David Mann writes on the alpha.gov.uk blog:

we see our project as part of a wider cultural movement with many advocates across government, seeking far more agile, iterative, user-need-driven digital product development.

Recently here at Boost we’ve been reviewing the UK Government ICT Strategy, released in March. One of the strategy’s objectives is ‘Reducing waste and project failure’:

Where possible, government will move away from large ICT projects that are slow to implement or pose a greater risk of failure. Additionally, the application of agile ICT delivery methods, combined with the newly established Major Projects Authority, will improve government’s capability to deliver projects successfully and realise benefits faster.

Among the actions listed in the strategy are:

  • establish[ing] an approach and capabilities for agile delivery in government which can be replicated across departments (culture, multidisciplinary teams, risk-based testing, service-oriented architecture, product management and road-mapping)
  • creat[ing] a ‘virtual’ centre of excellence across government and the private sector which can enable fast start-up and mobilisation for agile projects
  • identify[ing] a pilot project within each department to prove and embed the agile approach

Given our focus on Agile projects and user-centred design here at Boost, we’re understandably excited to see this happening. If you’d like to learn more about Agile, we’d love to hear from you.

 
Tags: agile development, prototype, scrum, user-centred design
Posted in: Agile
1 Comment
 
September 29th, 2010

User stories in action – the Agile development process

Posted by courtney on September 29th, 2010

Welcome back! So far in this mini-series I’ve covered the basics of user stories, and added some detail in the shape of acceptance criteria. Today’s post is about the INVEST model for writing user stories, but for that to make sense you need to know how an Agile project is run.

If you’re already familiar with Agile development, you might like to skip down the page to the section about the INVEST model. Otherwise, go make yourself a cup of tea and then settle in for a description of the Agile development process from the Product Owner’s point of view.

Agile / Scrum

Scrum is the form of Agile development that I’m most experienced with, and the one we follow here at Boost.

In Scrum, the development of your product (a website, a piece of software, an application) is split into a series of iterations, called sprints, each of which is usually between 2 and 4 weeks long. The number of sprints in your project might be determined by budget (how many staff, for how long, can we afford to put on this project?), time (how long until we need to have something live?) or experience (how long has this kind of project taken us in the past?).

At the centre of an Agile project is the team. As Mike Cohn writes:

Scrum relies on a self-organizing, cross-functional team. The scrum team is self-organizing in that there is no overall team leader who decides which person will do which task or how a problem will be solved. Those are issues that are decided by the team as a whole. The team is cross-functional so that everyone necessary to take a feature from idea to implementation is involved. These teams are supported by two specific individuals: a ScrumMasterand a product owner. The ScrumMaster can be thought of as a coach for the team, helping team members use the Scrum framework to perform at their highest level. The product owner represents the business, customers or users and guides the team toward building the right product.

Product Owners and Agile

I’ve been a Product Owner for a number of projects, and it’s a role I find immensely satisfying. You’re the voice of the customer on the project,  and it’s your job to make sure that the work the team is doing matches the business’s needs. As Product Owner you don’t necessarily need to be a technical expert, but you do need a deep understanding of your business and your customers, and the confidence to make fast  decisions.

The Product Owner manages the product backlog, the list of all the things the product needs to be and do. The product backlog is made up of user stories, and your first task in a new project is to sit down and write all the user stories you can think of right now (one of the beauties of Agile is that you can keep adding, removing and modifying user stories throughout the project) and then prioritise them.

Handing over the user stories: sprint planning

The sprint planning meeting is where you see the user stories being put into action. It’s attended by the Product Owner, the Scrum Master, and all the development team.

In the first part of the meeting the backlog will be put in front of the team (perhaps as a spreadsheet, or using a tool like Rally or Pivotal Tracker, or as a bunch of index cards). The team will then ask you questions about any of the user stories that aren’t immediately obvious, and you’ll talk about acceptance criteria. Through this conversation the team will decide which user stories will be tackled in the coming sprint, and what the sprint objective is. You might write this up as a sprint goal: “At the end of this sprint we’ll release the sign-up/log-in functionality to the live site”.

The user stories taken on for a sprint become the sprint backlog. This is all the team will focus on during the sprint – only the Product Owner will be looking at the rest of the product backlog.

The Product Owner isn’t usually present in the second part of the meeting, but I’ve sat in on these sessions (and kept my mouth shut – no doubt a surprise to anyone who knows me well). In this part of the meeting the team puts estimates on each of the user stories. Estimates can be expressed in different ways (story points, complexity points, team hours) but the general idea is that estimates show how much work a user story involves, and are used throughout the project to manage workloads, and predict and track how much work can be done in a given amount of time.

When the estimates are locked in, the team starts work.

User stories throughout a sprint

During a sprint each story will go through a number of stages:

  • not started
  • started
  • in testing
  • finished
  • delivered
  • accepted.

These stages are tracked through online tools like Rally or Pivotal Tracker or with a visible workspace.

Scrum Board by Drew Stephens on Flickr, released under a Creative Commons BY-SA license

During the sprint, the team will hold regular stand-up meetings (maybe every day, maybe on Mondays and Thursdays – whatever works for the pace of the project). As the name suggests, the meetings are held standing up – a physical signal to keep things snappy. At the stand-up the team members will update which stage each user story is at, and talk briefly on three points:

  • What I did yesterday (or over the time since last stand-up)
  • What I’m doing today
  • What’s blocking me (anything that’s stopping them from progressing a user story – e.g. “I haven’t got the wireframes, so I’m blocked on starting the design”).

It’s good to have the Product Owner at the stand-ups, so they can answer any questions on the spot. You’re also likely to be called on throughout the sprint, to review wireframes, to give design briefs, to test out functionality, to answer questions about business needs. As work is completed, each user story will be assigned back to you to ‘accept’ or close: work on a story is complete when the user can achieve the stated goal, and all the acceptance criteria are met.

The aim is to get all the stories in the sprint backlog done before the sprint ends. Stories that run over several sprints are probably badly written (see the INVEST model at the end of this post).

At the sprint retrospective

At the end of the sprint, the team meets again to demonstrate the completed user stories to the Product Owner. Nothing should come as a surprise (you’ve been involved in the work throughout the sprint) but that doesn’t mean you won’t get a sense of delight at seeing finished functionality that’s ready to be released.

The Scrum Master will then lead the team (including the Product Owner) through a retrospective, an analysis of what went well in the sprint, what didn’t go well, what could be changed to make things go better, and any ideas that might improve performance or productivity.

Before the sprint retrospective you’ll have reviewed the product backlog (probably in a meeting with the Scrum Master) and done any rewriting or reprioritising of user stories. After the retrospective the sprint planning starts over again.

And at last, we come to INVEST

INVEST is a mnemonic that describes the qualities of a good user story:

Independent
Negotiable
Valuable to user or business
Estimable
Small
Testable

‘Good’ here means  ‘good for making this whole process work smoothly’, which is why we’ve walked through how a sprint plays out before coming to this definition.

Independent The story stands alone. Stories that are highly dependent on each other are hard to prioritise (“all the stories are equally important”) and hard to estimate (“I can’t put a time on that until we’ve finished that other story”). Problems with dependencies  can be solved by dividing stories differently, or combining several small stories into a single larger one.

Negotiable Remember card – conversation – confirmation? A story should be the starting point for a conversation and an opening for the team to suggest a solution, not a detailed description of how the Product Owner expects that feature or piece of functionality to be implemented.

Valuable It’s all about the end-user. If you can’t describe the value a customer is going to get out of your story, it’s not a good story.

Estimable No estimate, no entry into the sprint backlog. If there’s not enough information or definition to allow the team to put an estimate on a story, it doesn’t get started.

Small A story shouldn’t take longer than a sprint to finish. Any larger than this and it’s hard to estimate or plan for. It’s also likely to be hard to write acceptance criteria and to test.

Testable If you can’t test it, how do you know when a story’s done and working as it should?

Finis

I have one more post planned in this series (which, you’ll be glad to know, will be mercifully shorter than this one). It will look at how you can use user stories to involve people who aren’t working on a project but are interested in its progress and outcome (ie. stakeholders).

In the meantime, if you have any questions about working with Agile, just get in touch – we’re always happy to have a chat.

 
Tags: agile, agile project management, product owner, scrum, user stories
Posted in: Agile
2 Comments
 
Newer Entries »
  • Categories

    • Agile (26)
    • Agile Coaching (1)
    • Business (4)
    • Cool tools (6)
    • Design (7)
    • Development (18)
    • Drupal (1)
    • e-Learning (70)
    • Magic & Delight (6)
    • Publishing (3)
    • Random thoughts (9)
    • Ruby on Rails (9)
    • Scrum (11)
    • Social media (9)
    • Usabilty (4)
    • Writing (1)
  • Archives

    • April 2012 (1)
    • March 2012 (1)
    • February 2012 (3)
    • January 2012 (3)
    • November 2011 (4)
    • August 2011 (5)
    • July 2011 (1)
    • June 2011 (2)
    • May 2011 (4)
    • April 2011 (1)
    • March 2011 (1)
    • February 2011 (1)
    • November 2010 (1)
    • October 2010 (1)
    • September 2010 (3)
    • August 2010 (4)
    • July 2010 (6)
    • June 2010 (2)
    • April 2010 (1)
    • March 2010 (1)
    • February 2010 (1)
    • January 2010 (3)
    • December 2009 (1)
    • November 2009 (1)
    • October 2009 (4)
    • September 2009 (2)
    • August 2009 (3)
    • July 2009 (6)
    • June 2009 (3)
    • May 2009 (1)
    • April 2009 (6)
    • March 2009 (6)
    • February 2009 (11)
    • December 2008 (4)
    • November 2008 (6)
    • October 2008 (12)
    • September 2008 (7)
    • August 2008 (7)
    • July 2008 (4)
  • Boost Loves Design

    • I love Typography
    • IntuitionHQ | easy website usability
    • OMG It even has a watermark
  • Follow me on Twitter
© Boost Limited.
All rights reserved.
CONTACT US
info@boost.co.nz
tel. (04) 939 0062
fax. (04) 939 0063

Level 6, 175 Victoria Street
PO Box 11504, Wellington
New Zealand