Edit on GitHub

Our delivery framework.

Our project process is defined by the specific needs of each client and each project. However, with the help of the Agile Business Consortium, we have adapted the DSDM framework to help us to keep consistency across projects.

Our projects consist of a number of key phases: Pre-project → Feasibility → Foundations → Design Direction → Evolutionary Development

All projects consist of a Feasibility and Foundations phase before we commence development.

Pre-project.

As the name suggests, this is before the project begins and before any contracts are signed. It’s about getting to know the client, their needs and what the project will entail.

Feasibility.

This phase allows us to dive deeper into technical, design, budget and team agility questions and issues, to be able to assess and adjust scope and requirements for the project. It’ll include a Blueprint Workshop run by the Creative Director, Technical Director, the Project Lead and Delivery Manager.

Foundations.

There are a variety of tasks in Foundations, to make sure we are building the right thing in Evolutionary Development. During this phase we commonly undertake research, technical spikes, prototypes, user testing and agree the Design Direction.

Key outcomes include:

  • Agreeing a high level Delivery Plan which outlines delivery dates and objectives.
  • At least the first Timebox of user stories are refined and estimated.
  • Definitions of Ready and Done are agreed.
  • Roles and responsibilities are agreed.

The activities are flexible but the outcomes are fixed, and are assessed against this checklist of deliverables.

The length of this phase varies depending on the project but on average is between six and eight weeks.

Design Direction.

This is part of the Foundations phase, with the end goal being the overall Design Direction signed off by the client before Evolutionary Development starts. It’s an iterative process where key pages are presented to the client for feedback. We don’t commence development until the client has signed off on the Design Direction.

Evolutionary Development.

Evolutionary Development is an iterative process. We use Jira as the project management tool with a defined workflow. We’re planning development in Timeboxes (generally two weeks long) and make use of agile ceremonies to keep us on track.

Agile ceremonies.

  • Daily stand-ups – stand-ups are held with the client and each member of the team gives an update on what he/she did yesterday, what he/she are going to do today and if there are any blockers.
  • Retrospective – held at the end of each Timebox to recognise the good, identify issues and take actions to improve future Timeboxes.
  • Sizing – the development team estimate refined stories either in story points or hours.
  • Demo meeting – part of the acceptance meeting with the client at the end of every Timebox and includes a demo of what has been completed.
  • Timebox planning – the Development team, Business Ambassador and Delivery Manager decide on the next Timebox goal and what stories will be worked on, taking into account team capacity.

To prioritise stories we use MoSCoW prioritisation – a technique for helping to understand and manage priorities following Must have, Should have, Could have, Won’t have this time categorisation – which helps us agree on a Timebox commitment and overall delivery plan.

Additional ceremonies.

  • For internal project oversight, the Project Lead and Delivery Manager run weekly project review meetings.
  • Fortnightly client and Delivery Manager check-ins to celebrate achievements and/or discuss issues and concerns.
  • We send out a monthly satisfaction survey to our clients. The Project Lead will review any feedback and inform the team of any actions to be taken.

There is a more extensive description of the process regarding our adapted agile delivery methodology here.

Roles and responsibilities.

As we grow and processes change, we keep iterating on roles and responsibilities. Roles at Deeson provides a general overview; project roles and responsibilities provides a more detailed list of accountabilities during a project's lifecycle.

Specifically, there are two key client side project roles:

Business Visionary.

  • Budget holder.
  • Resolves business issues.
  • Makes financial decisions.
  • Enables and ensures fast progress throughout the project.

Business Ambassador.

  • Responsible for managing the prioritised requirement list in JIRA.
  • Responsible for signing off on a Timebox before it starts, including acceptance criteria on a feature level.
  • Responsible for attending Timebox planning sessions, demos and retrospectives.
  • Responsible for undertaking UAT and signing off features completed during the Timebox.

Useful resources.

  • Fun Retro – a tool that allows distributed teams to have effective retrospectives.
  • Retromat – a great source of inspiration for running successful retrospectives.