Breaking Down a Sprint — Tips and Advice on Setting Goals

rednblack1991
CATSpedia
Published in
3 min readFeb 6, 2019

Recently I was fortunate enough to meet with M&G Prudential to spend a day pair programming with their senior developers in a structured (albeit quick!) one-day sprint session to produce a simple room booking application. The learnings were invaluable to structuring team CATS sprints during our Engineering Project.

At Makers, we live and die by Extreme Programming — a series of 5 values that are designed to keep the team on track and ensure an agile development process during project work. It consists of:

  • Communication
  • Simplicity
  • Feedback
  • Courage
  • Respect

You can read more on Dana’s Medium blog here.

On Day 1 of the Acebook project, we had received our Agile training and were excited to plan and kick-off our first 2-day sprint… but then what? What could we realistically accomplish in 48 hours?

With a new team, and a new framework to work with (Ruby on Rails) we struggled to set achievable, realistic targets. We overstretched ourselves, and those initial goals ended up taking 5 days to achieve fully.

Coming back from M&G Prudential, I was keen to shake up our process and ensure our next sprint would be more accurate and obtainable. Here are my top tips for goal-setting based on learnings from the trip:

  1. Break Down Your Goals

Our initial goals were heavily focused on the user requirements. In fact, each team only had one to-do! Instead, it’s important to break these down into slices of customer experience. As a simple example, if the requirement is “As a user, I can create an account and sign-in” — that could be broken down into a series of to-dos: “User can create account”, “User has a secure password”, “User has an account page” etc. that are more achievable and realistic for a short sprint.

2. Prioritise

Once you have a series of small requirements, list them in priority order. What are the basic functions that your app hinges on? Is there any point having a secure password if there isn’t a database to store that information? Once you know the key tasks, it’s much easier to differentiate between must-have tasks and your stretch goals.

3. Be Precise

There is a big difference between “User’s profile page displays their information clearly with recent posts” and “User’s profile page lists name, DoB and last 10 posts”. The first is open to interpretation, has no set end point and can’t clearly be measured. If you feel a goal is too vague, a simple technique is to ask everyone to confirm what they see success as looking like for that piece. If anyone disagrees the goal probably needs to be tighter.

4. Honesty and Constructive Feedback

Honesty and constructive feedback sit at the core of any successful team. It’s easy to stay quiet if you have concerns or disagree with the suggested approach, but the primary purpose of using a scrum approach is to ensure complete alignment on your goals. For example, you may have prior knowledge of a troublesome bug that will make a team members life much difficult. Instead of assuming they are aware of it, don’t be afraid to speak up and see if it affects the time they predict that goal will take to achieve.

Making the shift to an agile development process is challenging, particularly if you’re also new to coding. Hopefully the above is a helpful get start guide to setting goals and you can fast-track your team processes.

--

--