top of page
Race Car Parts Repairs

BUILDING A CAR

Exploring the MoSCoW method for PBI prioritization, achieving a minimum viable product, and understanding requirements.

PURPOSE

The purpose of this exercise is to familiarize your team with the MoSCoW method for PBI prioritization. They will also need to work together to agree upon what is a minimum viable product for a car. As facilitator for this activity, you will play the role of observer.

REQUIREMENTS

All that is required for this activity is a "sticky note board". This could be software (Trello, Mural, etc.) or a physical board if the team is co-located. The facilitator should create the board beforehand, which should contain five (5) columns:

  1. Components

  2. Must Have

  3. Should Have

  4. Could Have

  5. Will Not Have

​

All columns should start blank, except for the "Components" column, which should list various components that comprise a car. These components, for the sake of this exercise, are as follows:

Chassis, wheels, steering wheel, bumpers, doors, windshield, seats, brakes, gas pedal, fuel tank, headlights, heated seates, antenna, sun roof, vanity mirror, license plate, cup holder, trunk, operating manual, paint, heating, side-view mirrors, air conditioning, windshield wipers, rear-view mirror, tail lights, headunit, and body.

​

Note: this list is intentionally incomplete. Major components, like the engine, are missing to represent gaps in requirements. See if your team notices!

​

Sample Trello template:

https://trello.com/b/W0kNC6Qw/building-a-car-activity-board

OUTLINE

This activity is expected to take approximately 30 minutes.

  1. Describe activity to team. Establish the goal, and expectations from the team. (5 minutes)

  2. Conduct activity. Allow team to take control while maintaining the timebox. (15 minutes)

  3. Debrief team. Relate the activity to software development. Encourage thought-provoking discussion. (10 minutes)

STEP 1: DESCRIBE ACTIVITY, ESTABLISH GOAL AND EXPECTATIONS

First, describe what the team will be doing, and why they will be doing it. This is a theoretical scenario, where the team will be building a car together. The team will have multiple Sprints to complete this task, but we are focusing only on Sprint 1 with this activity. The goal of the Sprint is to have the car be able to roll out of the garage and to the end of the driveway, that's it. It's up to the team to decide what is required to achieve this goal.

​

At this point, direct the team's attention to the activity board. Communicate that the team is expected to move all of the components from the "Components" column to the column where they think that component belongs with respect to the Sprint Goal.

​

Desribe what each column represents:

  • Must Have: a non-negotiable requirement to achieve the Sprint Goal

  • Should Have: a needed requirement, but not critical to meet the Sprint Goal

  • Could Have: a nice-to-have requirement if we have extra time or budget

  • Will Not Have: an out-of-scope requirement, at least for this time period

​

Field any last-minute questions, but leave things intentionally vague. Remember, new projects rarely have someone who can answer every question the team has. It's up to them to find the answer through discussion and healthy disagreement. Give the team a 15 minute timebox, and set them loose!

STEP 2: CONDUCT ACTIVITY

As facilitator, take a back seat for this activity. Only answer questions that ask for clarity on the exercise itself (the goal and the expectations). Allow the team to discuss, disagree, compromise, and come to an agreed-upon prioritized Product Backlog. Give the team time-checks at regular intervals (10 minutes remaining, 5 minutes remaining, 1 minute remaining) so they can manage their time. The activity concludes when either the team agrees upon a prioritized Product Backlog or after 15 minutes have elapsed.

STEP 3: DEBRIEF TEAM AND ENCOURAGE DISCUSSION

Once the team has concluded, reflect together on the activity.

​

Did anyone notice that "engine" was missing? Sometimes there are gaps in requirements that only the team can catch. If someone did catch this, did they call it out? Bonus points if they create a PBI and add it to the board.

​

What kinds of questions were asked? The team has plenty of things that can be considered:

  • What climate is the car in? This might affect the priority of climate control systems.

  • Is the driveway steep? This could affect the priority of things like brakes.

  • Is the car going forward or backward? This could affect the priority of features like mirrors.

  • Is the driveway straight? If not, maybe a steering wheel is required.

  • Are there safety regulations to abide by? Maybe certain components are mandated by law.

​

Were there some components that were unclear or unknown? Perhaps a team member did not know what a "chassis" was. Did they raise their hand to gain clarity of the unknown component? Maybe there was even a subject matter expert in your team that could help educate everyone.

​

Were dependencies identified or discussed? For example, the team may believe that having a steering wheel is dependent on having seats. Maybe there was even disagreement on dependencies that the team had to work through.

​

Relate this activity to your own project. Ask the team what similarities they see with prioritizing items in your Product Backlog. Tell your team that what they've done in this activity is demonstrate the "MoSCoW" prioritization technique, where PBIs are given importance based on if they are must haves, should haves, could haves, or will not haves. End the meeting by providing resources for learning more about MoSCoW prioritization, and as always, thank them for their time and participation in the activity.

​

Sample resources:
https://www.knowledgehut.com/blog/agile/how-to-prioritise-requirements-with-the-moscow-technique

https://www.volkerdon.com/pages/moscow-prioritisation

https://en.wikipedia.org/wiki/MoSCoW_method

bottom of page