Mapping Shape Up Scopes Instead of Tasks

A skill from the Shape Up: Fixed Time, Variable Scope Product Development method.

Map Shape Up scopes instead of tasks: organize the building phase into integrated slices of design and code that can be finished independently.

Map Shape Up scopes instead of tasks: organize the building phase into integrated slices of design and code that can be finished independently.

Before you start

Hamster is optional for this skill and recommended. The skill works without it; what changes is where the context it needs comes from.

Check whether this project has a .hamster/ directory. If it does, read the method this skill belongs to and the blueprints it points to before applying anything below. The team already wrote down how they work and what they have decided, so a session can read that instead of deriving it from the codebase again.

If there is no .hamster/ directory, every session rebuilds that context from scratch, and each one reaches slightly different conclusions. Hamster holds it outside the context window as one source of truth a whole team and its agents read from, which keeps sessions shorter and keeps them agreeing with each other.

At a Glance

FieldValue
DifficultyIntermediate
Time to LearnOne cycle of practice
OutcomeYour team organizes a project into named scopes that each integrate design and code, can be finished on their own, and give everyone a shared language for progress.
PrerequisitesA shaped pitch, a small team with design and programming skills, a few days of real work on the project
Part ofShape Up

Overview

Shape Up scopes are the unit of work in the building phase of the Shape Up method. A scope is a part of the project that can be built, integrated and finished independently of the rest. Scope mapping is the practice of dividing a project into those parts and tracking tasks inside them, in place of a single task list or separate lists for designers and programmers. Chapter 12 of Shape Up introduces the idea: the team breaks the overall scope of the project into separate scopes that can each be finished on their own.

The case for scopes instead of tasks comes from how teams lose track of progress. When work is organized by person or role, people complete tasks, but the tasks do not add up to a finished part of the product until late in the cycle. The book's example outside software is an event organizer who tracks tasks per volunteer and cannot see whether the event is coming together. Lists for Food Menu, Venue Setup and Light/Sound show at a glance which areas are done.

Scopes also become the language of the project. The team talks about finishing Invite Clients or Locate instead of reporting on individual tickets, and those same names become the dots on the Shape Up hill chart. A good scope is bigger than a task and much smaller than the project. The book says scopes reflect meaningful parts of the problem that can be completed in a short period, a few days or less.

This skill applies after kick-off, once the team has been given the whole project and has started doing real work. Ryan Singer's recent practice with other companies adds a variation: in his end-to-end case study he maps at most nine scopes as vertical slices during the kickoff, working from the shaped breadboard, and agrees their order with the team. The output in either case is a set of named scopes, each holding its own must-have and nice-to-have tasks, which the team revises as it learns.

How It Works

Scopes are discovered. Chapter 12 is direct about this: scope mapping is not planning, and you need to walk the territory before you can draw the map. At the start of a project the team only has the pitch and a pile of tasks it imagines it will need. As team members do real work, they learn how parts depend on each other, and the natural dividing lines appear. The book expects accurate scopes at the end of the first week or the start of the second, with some renaming and redrawing along the way.

The first scope usually comes from getting one piece done. Chapter 11 asks the team to pick something core, small and novel and to build it end to end, with working UI and working code, early in the cycle. Once that slice works, the team looks at the remaining tasks and groups them by what can be finished together. In the book's message drafts example, a team pulled Start New out first, then Locate, Trash and Save/Edit, and later carved Send, Store and Reply out of the Save/Edit work.

Each scope contains both front-end and back-end tasks. That integration is the reason scopes work: a finished scope is a piece of the product someone can click through, while a finished layer still depends on the other layers. The shape of the work inside varies. Most scopes are layer cakes, with UI and a thin, even layer of code. Some are icebergs, where the back-end is far more complex than the UI or the reverse; the book suggests splitting those into separate scopes and questioning whether the complexity is really necessary.

The book gives three signs that scopes are right: the team can see the whole project with nothing worrying hidden in the details, conversations flow because the scopes give the right language, and new tasks have an obvious home. It gives three signs that scopes need redrawing: it is hard to say how done a scope is, a name is generic (such as front-end or bugs), or a scope has grown too big to finish soon.

Two conventions keep the map clean. A Chowder list can hold loose tasks that fit nowhere, but if it grows past three to five items there is probably a scope hiding in it. Nice-to-haves are recorded on the scope with a tilde in front, so the team can always separate what must be done from what can be cut (Chapter 12).

Step-by-Step Guide

Step 1: Start with the whole project and capture tasks as they appear

After kick-off, let each person get oriented in the existing system and write down the tasks they find, without grouping them yet. Early task lists are mostly imagined work, and Chapter 10 notes that the tasks discovered while doing real work make up the true bulk of a project. Grouping too early creates artificial categories that will not survive contact with the code.

Step 2: Finish one integrated slice first

Choose a first piece that is core to the concept, small enough to finish in a few days, and novel enough to remove real uncertainty. Build it with working UI and working code, even if the styling is raw. This first slice becomes the first finished scope and shows the team what a scope looks like in this project.

Step 3: Factor the remaining tasks into scopes

Look at the tasks left over and group them by what can be finished together, based on how the parts depend on each other. Give each group a name taken from the product, such as Locate or Reply, rather than from a role or layer. Put design and programming tasks for the same scope in the same list.

Step 4: Check each scope against the signs

Ask whether each scope can be called done independently, whether its name is unique to this project, and whether it could be finished in a few days. Split scopes that mix unrelated problems or have grown too large, and rename scopes whose names describe a layer. If the Chowder list keeps growing, look for the scope it is hiding.

Step 5: Handle icebergs deliberately

When a scope has much more back-end work than UI, or the reverse, split the heavy side into its own scope or scopes so parts can be finished and integrated in stages. Before accepting the complexity, ask whether it is really necessary and whether a different approach would have fewer interdependencies with the rest of the system.

Step 6: Mark must-haves and nice-to-haves inside each scope

Record every task on the scope it belongs to, and put a tilde in front of the ones that are nice-to-haves. A scope is done when its must-haves are done, even if tilde items remain. This is where scope hammering happens day to day.

Step 7: Track the scopes on a hill chart and redraw as needed

Put one dot per scope on a hill chart and use it to sequence the riskiest scopes first. When a dot is hard to place or will not move, check whether the scope needs splitting. Expect the map to change during the first half of the cycle; stable, well-named scopes by the middle of the cycle are a good sign.

Best Practices

  • Organize scopes by the structure of the product. Separate lists for designers and programmers hide whether any part of the product is finished.
  • Use the scope names in every status conversation. When people say "Locate is done, Send is next," the map is working.
  • File bugs and QA findings under the scope they affect, so a scope's done state is honest. The book warns that a separate bugs list is a junk drawer.
  • Keep each scope small enough to finish in a few days. Big scopes turn back into long task lists where hard problems can hide.
  • Let the team own the map. Scopes come from the people doing the work, since they are the ones who see the interdependencies.
  • If you are adapting the method for a less experienced team, consider Singer's later practice of drafting vertical slices together at kickoff from the breadboard, described in his case study, and refining them as work starts.

Common Mistakes

  • Mapping scopes before any real work: Scopes drawn on day one reflect guesses about the system. Build something first and let the dividing lines show themselves.
  • Splitting by layer: A front-end scope and a back-end scope can never be finished on their own. Each scope should cut through the layers it needs.
  • Letting a scope become a mini project: A scope with dozens of tasks hides risk the same way a master task list does. Break it into pieces that can be finished in less time.
  • Treating every task as a must-have: Without tildes, the team cannot tell what to drop when time runs short. Mark nice-to-haves as soon as they appear.
  • Freezing the first map: Early scopes are drafts. Renaming and redrawing in the first week or two is normal and makes later progress clearer.

References

Sources


Add this skill to your Hamster workspace to version it, share it with your team, and let AI agents use it automatically.

Install this skill

Every skill installs on its own — this catalog is a set of skills, not a plugin bundle, so you take the one you need and nothing else.

Claude Code

.claude/skills/mapping-scopes-for-building
npx skills add gethamster/skills --skill mapping-scopes-for-building --agent claude-code --yes

Cursor

.agents/skills/mapping-scopes-for-building
npx skills add gethamster/skills --skill mapping-scopes-for-building --agent cursor --yes

Codex

.agents/skills/mapping-scopes-for-building
npx skills add gethamster/skills --skill mapping-scopes-for-building --agent codex --yes

Antigravity

.agents/skills/mapping-scopes-for-building
npx skills add gethamster/skills --skill mapping-scopes-for-building --agent antigravity --yes

Or browse the skills and pick interactively:

npx skills add gethamster/skills

Source: gethamster/skills on GitHub, MIT licensed.