Pepperpot Design

how I work

If I'm building a website for you, I generally work using a process based on 'agile' development.  The reason I use it is simple: it produces better quality results in less time and at less cost.

Since this process will involve you as an active member of the team, it's important I explain how it works.

The Process

  1. Following an initial discussion of your project, I will set up a Google Document spreadsheet with a list of 'user stories'.  A user story is 'a description of a piece of functionality written from the perspective of a user'.
    Some examples:
    User Story
    anyone can search the website
    registered users can maintain a publicly available profile
    the site admin can add/edit/delete pages
  2. We will probably be thinking of new user stories all the time, and this will be the place to record them. Anyone on the team can add them.
  3. I will give each user story a difficulty score.  This score is there to give you a sense, relative to the other stories, of how much time the story is likely to take to complete.  It also takes into account how 'risky' it is.  For example a story where there are a lot of unknowns will have a higher difficulty score.
    User StoryDifficulty Score
    anyone can search the website3
    registered users can maintain a publicly available profile5
    the site admin can add/edit/delete pages1
    site admin can receive notifications of new users via text message13
  4. We will then decide on a series of builds, or iterations.  Each iteration will consist of a short period of development time (usually 1 – 4 days).  It will also have a user story budget.  Based on the order in what you would like to see first, you can allocate user stories to the iterations, making sure that the combined difficulty score of those user stories doesn't exceed the iteration's user story budget.  At the end of an iteration you should have a fully functioning website including all the user stories you have chosen.
    User StoryDifficulty ScoreIteration
    anyone can search the website31
    registered users can maintain a publicly available profile5
    the site admin can add/edit/delete pages11
    site admin can receive notifications of new users via text message13
    Budget for Iteration 14
    Total Allocated User Story Points for Iteration 14
    (NB you would normally have plenty more user stories than this in a single iteration.)
  5. At the end of the iteration you will go through the site and verify that all the chosen user stories are working.  At this point, you are already using your site!  You are likely to add new user stories now, as you have new ideas and have gained clarity over what you want.
  6. We begin the process again – I'll score any extra user stories, we'll decide on a new iteration length and you'll allocate the user stories you want to see next.
  7. We can carry on with iterations as long as you want.  At some stage you will decide that the site is ready – and we launch.

Why This Process?

This may seem like an awfully convoluted way of going about building a site, but it has the following key advantages:

  • You are involved the whole way through and can change the direction of the project more easily (that's why it's called 'agile').
  • The site gets up and running much more quickly.
  • It is cost-benefit focused.
  • It minimises the risk of large amounts of time being spent on unimportant parts of a project.
  • It is easier to stick to budget, or even run under.