Roko PlatformDocs

Planning

Roadmaps

A roadmap is one sheet of time bands. A goal's band sets its due date, every goal has an owner, and arrows show which work must land first.

The story map says what to build and in what order. The roadmap says when each goal lands and who owns it. The two views show the same goals, so a change in one shows in the other.

This page plans the Northwind Industries vendor portal in the Vendor Onboarding project. Maya is the product manager and Daniel is the tech lead. Priya, Leo, Sam, Nora and Omar build and run the portal. The story map already holds 18 product delivery goals. Open the Roadmap page from the project sidebar to follow along.

The sheet

The roadmap is one sheet of time bands. Everybody on the project sees the same layout. The band where a card sits sets the goal's due date, and the band header shows the dates.

/clients/northwind/projects/vendor-onboarding/roadmap
1
2
3
4
  1. 1The past window. The sheet always shows last week, and reaches further back only when an older goal needs it.
  2. 2Now, the band that contains today, in blue.
  3. 3A window. Each window is one week, or two weeks on a biweekly cadence.
  4. 4Later holds committed work that has no date yet.
The top of the Northwind roadmap with its 18 product delivery goals.

To make one band wider or narrower on the sheet, drag its divider in the header. The width changes the layout only, not the dates.

Horizon settings

Click Horizon at the top of the roadmap to set how far the sheet plans ahead. The platform saves each change at once.

SettingValuesEffect
CadenceWeekly or BiweeklyThe length of each window.
Windows2 to 5The number of cadence bands after Now.
Months0 to 3The number of month bands after the windows.
Quarters0 to 2The number of quarter bands after the months.
Show LaterOn or offShows the Later band at the right end.

The sheet reaches back on its own to the oldest goal, so there is no setting for past bands.

Place the goals

Every product delivery goal from the story map is already on the sheet, in teal. Drag each card into the band where it should land. The platform changes the goal's due date to match the band. Place the walking skeleton first: the top goal of each story map column.

The goal also moves to the matching horizon bucket on the story map.

Add enabling goals

Click New goal at the top of the roadmap to add technical work. The dialog starts on Enabling delivery. Enter a title, pick the horizon, pick the owner and click Create goal. Enabling goals are plain white cards. Only product goals are teal.

/clients/northwind/projects/vendor-onboarding/roadmap
Product
Enabling
1
2
  1. 1Priya and Leo share App scaffold as a pair goal.
  2. 2Sam owns Supplier sign-in & invites. The card lists its four tasks.
Enabling goals are white and product goals are teal. App scaffold is a pair goal.

To create a product goal on the roadmap, choose Product delivery as the kind in the New goal dialog, then pick the story map and the stage the goal belongs to.

Add discovery goals

Open questions become discovery goals. In the New goal dialog, choose Product discovery for a question about the product, or Enabling discovery for a technical spike. Place the discovery goal in a band before the goals it shapes. A discovery card has a dashed edge and lies flat. A delivery card has a solid edge and is raised.

/clients/northwind/projects/vendor-onboarding/roadmap
Delivery
Spike
Discovery
This week at Northwind. Delivery work and discovery work sit in the same band.

Assign owners

Every goal gets an owner, and the owner's avatar is on the card. Pick the owner in the New goal dialog, or in the goal sidebar.

For a pair goal, pick the owner first, then tick Pair goal and choose the Pair owner. In the goal sidebar, Add pair owner next to the owner does the same. The card then shows both avatars and both names. A goal has at most two owners.

The goal sidebar and tasks

Click a card to open the goal sidebar. The sidebar shows the owner, the kind, the horizon, the description, the tasks and the dependencies.

1
2
3
4
  1. 1The owner. Add pair owner, next to it, makes this a pair goal.
  2. 2The goal's kind.
  3. 3The tasks. The owner adds and orders them.
  4. 4What this goal depends on, and what depends on it.
Supplier sign-in & invites in the goal sidebar.

Draw dependencies

The arrow points from the goal that must land first to the goal that waits on it. To add a dependency, drag from the dot on a card's edge onto another card. You can also add one under Depends on or Depended on by in the goal sidebar. Click an arrow to select it. A selected arrow shows two buttons: Reverse swaps its direction, and Remove deletes it. Delete also removes the selected arrow. Drag either end of a selected arrow to move it to another card.

The platform refuses a duplicate arrow, an arrow from a goal to itself, and an arrow that closes a loop.

/clients/northwind/projects/vendor-onboarding/roadmap
Waits on spike
Waits on sync
The SAP chain: spike, then sync, then Supplier created in SAP.

Swimlanes

Turn on Swimlanes at the top of the roadmap to see how each product goal gets done. The sheet then has one lane for each stage of the story map. A lane holds that stage's goals and, as faded ghost cards, the goals they depend on.

/clients/northwind/projects/vendor-onboarding/roadmap
Ghost card
Stage goal
1
  1. 1"Shown here as a dependency" labels each ghost card.
Part of the Set up payment lane. The spike and the sync appear as ghosts because Supplier created in SAP depends on them.

The Set up payment lane shows the spike, then the sync, then the SAP goal. You can read the whole path to a working stage in one row.

Work that no stage depends on sits in the last lane, Standalone work. At Northwind, that is Environments & CI/CD and Monitoring & alerts.

/clients/northwind/projects/vendor-onboarding/roadmap
No stage
The Standalone work lane.

From the map to the roadmap

Every product delivery goal on the story map is already on the roadmap. The team does not copy goals across. The product manager and the tech lead place each goal in a time band, and then add the work the map does not show:

  • Enabling goals for the technical work the product needs, such as an app scaffold or an SAP integration.
  • Discovery goals for what the team does not know yet. A discovery goal sits in front of the goals it shapes, so discovery and delivery run side by side.
  • Dependencies as arrows between goals. Each arrow shows which work has to land first.
Story map
What, in what order
1Request a supplier
2Invite & register
3Approve the supplier
1Online supplier request
1Supplier registration form
1Online approval
2Request status tracking
3Duplicate supplier check
2Tax form upload
2Approval rules by spend
3Approval reminders
The first goal in each column is the walking skeleton.
Product delivery goals land on the roadmap
Roadmap
When, and who owns it
This week
Sep 28 – Oct 2
1Online supplier request
App scaffold
SAP integration spike
Map approval thresholds
Next week
Oct 5 – Oct 9
2Supplier registration form
3Online approval
4Supplier created in SAP
SAP vendor sync
Oct 12
Oct 12 – Oct 16
1Duplicate supplier check
3Approval rules by spend
4Bank detail verification
Later
No date yet
4Payment terms setup
From the mapEnabling work, added on the roadmapDiscovery, dashed
Story map: what to build, in what order. Roadmap: when each goal lands, and who owns it. The numbered squares show which stage each product goal came from.

Time bands

The band where a goal sits sets its due date: the last day of that band.

From left to right, the sheet has these bands:

  • The past window. Last week is always on the sheet, so "nothing was due last week" is visible. Older bands appear only where a goal sits.
  • Now. The band that contains today.
  • Windows. Two to five bands of one cadence each, weekly or biweekly.
  • Months and quarters. Wider bands for work further out.
  • Later. Committed work without a date.

The bands get wider further out, because the plan is less precise further out. A goal in This week has a firm date. A goal in a quarter band has a rough one. The sheet shows that difference without a separate confidence field.

Last week

Sep 21 –Sep 25

This week

Sep 28 –Oct 2

OHLM

Next week

Oct 5 –Oct 9

LMSR

Week of Oct 12

Oct 12 –Oct 16

SR

November

Oct 17 –Nov 30

PN

December

Dec 1 –Dec 31

OH

Q1 2027

Jan 1 –Mar 31

MB

Later

No date yet

SR

Past

Now

Windows

Months

Quarters

Later

TodayBands get wider further out
The Northwind sheet with two month bands and one quarter band.

When a week ends, the Now band moves forward and the goals stay on their dates. An unfinished goal from last week is then in the past window, where everybody can see it.

Goal kinds

Two questions set a goal's kind:

  • Does the user see the outcome? Then it is a Product goal. If the product or the system needs it, it is an Enabling goal.
  • Is the work pinned down? Then it is a delivery goal, which builds. If the team still has to find out what is true, it is a discovery goal.
Product
What the user sees
GOAL-005 · Product delivery
Supplier created in SAP
Priya
Builds an outcome the user sees, already pinned down.
GOAL-028 · Product discovery
Map approval thresholds
Maya
Finds out what is true about an outcome the user sees.
Enabling
What the product or the system needs
GOAL-024 · Enabling delivery
SAP vendor sync
Priya & Daniel
Builds what the product or the system needs, already pinned down.
GOAL-025 · Enabling discovery
SAP integration spike
Daniel
Finds out what is true about what the product or the system needs.
Teal says Product, white says Enabling. A solid, raised edge says delivery; a dashed, flat edge says discovery.
KindWhere it startsExample
Product deliveryUnder a stage on a story map. Every product delivery goal belongs to one.Supplier created in SAP
Product discoveryOn the roadmap, in front of the product goals it shapes.Map approval thresholds
Enabling deliveryOn the roadmap. It is technical, operations, quality or design work that the user does not see.SAP vendor sync
Enabling discoveryOn the roadmap. A technical spike is the common case.SAP integration spike

delivery

Solid edge, raised

GOAL-001 · Product delivery

Online supplier request

LMLeo

GOAL-025 · Enabling delivery

SAP vendor sync

PNDOPriya & Daniel

discovery

Dashed edge, flat

GOAL-027 · Product discovery

Invite or self-register?

MBNLMaya & Nora

GOAL-026 · Enabling discovery

SAP integration spike

DODaniel
Every goal is Product or Enabling, and delivery or discovery.

Product goals

Product delivery goals come from the story map. The team places the walking skeleton first: the goals above the MVP line, one per stage. At Northwind, its six goals land in the first two weeks. Richer goals, such as the supplier risk score, wait in Later.

Technical goals

Technical work that the product needs becomes enabling delivery goals. Enabling goals belong to no story map stage. Northwind needs supplier sign-in, an SAP vendor sync, document storage and an audit trail. Each of these becomes an enabling goal, one band ahead of the product goals it unblocks.

Discovery and delivery

Some goals still have an unclear shape. Put that uncertainty on the roadmap as discovery goals, in front of the goals they shape. A delivery goal builds something the team can describe. A discovery goal finds out what is true, and its result changes the plan.

Northwind has three open questions:

  • Which approvals depend on spend? Maya maps the approval thresholds.
  • Can suppliers sign up without an invite? Maya and Nora find out.
  • Does SAP take vendor records by API or by file drop? Daniel runs a spike to answer it.

A spike is an enabling discovery goal: a short, owned piece of technical research.

Work that is certain starts at once. In the first week, Omar sets up environments and CI/CD, and Priya and Leo build the app scaffold. Discovery and delivery run side by side, in the same bands.

Discovery goals

A discovery goal has an owner and a band like any other goal. It closes when the team has the answer and has changed the goals it shapes. See replanning after a spike.

Owners and pair goals

Every goal has one owner. A pair goal has two owners who work on it closely. At Northwind, Priya and Leo share the app scaffold, and Priya and Daniel share the SAP vendor sync.

A goal is an area, not a ticket

A goal is an area of ownership. It closes when that area works well, not when one piece of code merges. The owner breaks the goal into tasks. When every task is done, the goal does not close by itself: a person decides that the area works and sets the goal to Done.

People set the goals. Roko Platform does not generate them, and it does not automate product planning. It gives the team one place to make and record these decisions.

Dependencies

A dependency is an arrow between two goals. It records which work has to land first. At Northwind, Supplier created in SAP waits on the SAP vendor sync, and the sync waits on Daniel's spike. See Draw dependencies.

The weekly rhythm

The product manager owns the story map. The roadmap belongs to the product manager and the tech lead together.

PM
Tech lead
At least
weekly
They plan the roadmap together and check:
The orderThe walking skeleton first, then depth.
The dependenciesEach arrow shows which work lands first.
Every goal has an ownerOne person, or a pair.
The planning loop. The story map changes when the team learns something; the roadmap is checked every week.

At least once a week, the product manager and the tech lead plan the roadmap together. They check the order of the goals and the dependencies, and they make sure every goal has an owner. When a discovery goal finishes, they replan the goals it shapes in the same session.

Worked examples

Northwind's first plan

Maya and Daniel build the first roadmap in one sitting.

  1. Place the product goals

    The product goals from the story map are already on the sheet. Maya and Daniel put each one in the band where it should land, the walking skeleton first.

  2. Add the technical work

    Daniel adds an enabling goal for each piece of technical work the product needs, one band ahead of the goals it unblocks.

  3. Give every goal an owner

    Each goal gets one owner or a pair.

  4. Put the open questions on the sheet

    Each unknown becomes a discovery goal in front of the goals it shapes.

  5. Draw the dependencies

    Maya and Daniel draw an arrow from each goal to the goals that wait on it.

  6. Read it by stage

    They check the path to each stage of the journey, one stage at a time.

Replanning after a spike

A discovery goal exists to change the plan. This example shows one such change. The spike result is invented for the example.

Suppose Daniel's spike finds that SAP takes vendor records only as a nightly file drop. A file drop needs an export job, a file format and a retry path, so the SAP vendor sync needs one more week.

  1. Close the spike

    Daniel records the answer on the spike and sets it to Done.

  2. Reshape the goal it shaped

    Priya and Daniel update the description and the tasks of SAP vendor sync for the file drop.

  3. Move the goal and everything that waits on it

    Maya and Daniel move SAP vendor sync to the Week of Oct 12. Supplier created in SAP waits on the sync, so they move that goal to November as well.

  4. Check the stage and the owners

    The Set up payment stage now completes in November. Supplier created in SAP is part of the walking skeleton, so Maya decides whether the first release keeps today's workaround for SAP entry. Daniel checks that Priya does not now own too many goals in one band.

Before

Before the spike

This week

Next week

Week of Oct 12

November

Enabling discovery

SAP integration spike

DODaniel

Enabling delivery

SAP vendor sync

PNDOPriya & Daniel

Product delivery

Supplier created in SAP

PNPriya

After

After the spike

This week

Next week

Week of Oct 12

November

Enabling discovery

SAP integration spike

DODaniel
Was here
Was here

Enabling delivery

SAP vendor sync

PNDOPriya & Daniel

Product delivery

Supplier created in SAP

PNPriya

The spike is done. The sync and the goal that waits on it move one band later, still in order.

The SAP chain before and after the spike.

Patterns

These patterns come up in most plans. Each one names when to use it.

Walking skeleton first

Use it for the first plan for a story map. Place the goals above the MVP line in the first bands, so one thin path through every stage works early. At Northwind, the six walking skeleton goals land in This week and Next week. Everything else follows.

Discovery in front of delivery

Use it when a delivery goal depends on an answer that nobody has yet. Add a discovery goal in an earlier band and draw an arrow from it to the delivery goal. The delivery goal's date then depends on a known piece of work, not on a guess.

This week

Next week

Week of Oct 12

Later

Product discovery

Map approval thresholds

MBMaya

Product delivery

Approval rules by spend

SRSam
Maya finds the thresholds first. The delivery goal waits on her answer.

Enabling work one band ahead

Use it when a product goal needs technical work that does not exist yet. Place the enabling goal in the band before the product goal, or in the same band when it is small, and draw the arrow. At Northwind, document storage lands this week, and tax form upload lands next week.

This week

Next week

Enabling delivery

App scaffold

PNLMPriya & Leo

Product delivery

Online supplier request

LMLeo

Enabling delivery

Document storage & scanning

PNPriya

Product delivery

Tax form upload

SRSam
Each enabling goal sits in front of the product goal it unblocks.

Certain work starts now

Use it when discovery goals are open, and the team waits for answers. Start the work that no open question affects. At Northwind, Omar builds environments and CI/CD and Priya and Leo build the app scaffold while the three discovery goals run.

Pair goals for work that crosses skills

Use it when one person does not have every skill the goal needs, or the goal carries a lot of risk. Give the goal a pair owner. At Northwind, Priya (backend) and Leo (frontend) pair on the app scaffold. Priya and Daniel pair on the SAP vendor sync, because Daniel ran the spike. Maya and Nora, the product designer, pair on the question of self-registration.

Later, used honestly

Use it when a goal is committed, but nobody can name a band for it yet. Put the goal in Later. Do not give it a far-off date to make the plan look complete, and do not delete it. At Northwind, the supplier risk score, payment terms setup and the annual supplier review wait in Later.

Antipatterns

Each antipattern below has a symptom you can see on the sheet, the reason it hurts, and a fix.

Everything in Now

Symptom
The Now band holds more goals than its owners can finish, and the later bands are nearly empty.
Why it hurts
The dates stop meaning anything. Nobody can tell what is late, and the order of the work disappears.
Fix

Keep in Now what the owners can finish this week. Move the rest to the band where it can really land, and draw the dependencies that set the order.

Avoid

Everything is due this week

This week

Next week

Week of Oct 12

November

Enabling

App scaffold

PNLM

Enabling

Document storage & scanning

PNPriya

Enabling

SAP vendor sync

PNDO

Product

Tax form upload

SRSam

Product

Supplier created in SAP

PNPriya

Product

Bank detail verification

PNPriya

Priya owns five goals due this week, and the later bands are empty.

Instead

Each band holds what its owners can finish

This week

Next week

Week of Oct 12

November

Enabling

App scaffold

PNLM

Enabling

SAP integration spike

DODaniel

Enabling

Document storage & scanning

PNPriya

Product

Tax form upload

SRSam

Enabling

SAP vendor sync

PNDO

Product

Supplier created in SAP

PNPriya

Product

Bank detail verification

PNPriya

Each owner has one or two goals per band, and the dates show a real order.

A date on a guess

Symptom
A delivery goal has a near date, but its shape depends on a question nobody has answered.
Why it hurts
The date is a guess, and the goal is likely to slip or to ship the wrong thing.
Fix

Add a discovery goal in front of it, as in Discovery in front of delivery.

Avoid

A date on a guess

This week

Next week

Week of Oct 12

Later

Product delivery

Approval rules by spend

SRSam

Nobody knows the spend thresholds yet, but the goal is due next week.

Instead

A discovery goal in front of the guess

This week

Next week

Week of Oct 12

Later

Product discovery

Map approval thresholds

MBMaya

Product delivery

Approval rules by spend

SRSam

Maya finds the thresholds first. The delivery goal waits on her answer.

Hidden technical work

Symptom
The sheet shows only teal product goals.
Why it hurts
The technical work still happens, but nobody owns it on the plan. Product goals slip for reasons the sheet does not show.
Fix

Add an enabling goal for each piece of technical work and draw the arrow to the product goals it unblocks.

Avoid

Only product goals on the sheet

This week

Next week

Product delivery

Online supplier request

LMLeo

Product delivery

Tax form upload

SRSam

The sheet says nothing about the scaffold or the document storage these goals need.

Instead

The enabling work is visible and owned

This week

Next week

Enabling delivery

App scaffold

PNLMPriya & Leo

Product delivery

Online supplier request

LMLeo

Enabling delivery

Document storage & scanning

PNPriya

Product delivery

Tax form upload

SRSam

Each enabling goal sits in front of the product goal it unblocks.

Product goals that do not trace to the story map

Symptom
Product goals on the roadmap belong to no story map stage.
Why it hurts
Nobody can say which step of the user's journey the goal improves, or which persona it serves.
Fix

Add the goal to a stage on the story map, under the stage whose persona it serves, or remove it. Enabling goals are the exception: they belong to no stage by design.

Avoid

Product goals that no stage asked for

This week

Next week

Week of Oct 12

Not on a story map

Supplier portal v2

LMLeo

Not on a story map

Admin dashboard

SRSam

Not on a story map

Vendor analytics

SRSam

Instead

Every product goal belongs to a stage

This week

Next week

Week of Oct 12

Request a supplier

Online supplier request

LMLeo

Invite & register

Tax form upload

SRSam

Approve the supplier

Approval rules by spend

SRSam

Goals without an owner

Symptom
A card has no avatar.
Why it hurts
A goal without an owner has nobody to break it into tasks, and nobody to say when it works well.
Fix

Give every goal an owner in the weekly planning session. If nobody can own it, move it to Later.

Avoid

Goals nobody owns

This week

Next week

Week of Oct 12

Enabling delivery

Audit trail

No owner

Enabling delivery

Monitoring & alerts

No owner

Instead

Every goal has a name on it

This week

Next week

Week of Oct 12

Enabling delivery

Audit trail

SRSam

Enabling delivery

Monitoring & alerts

OHOmar

Tickets dressed as goals

Symptom
The sheet has many small cards, each one a single change.
Why it hurts
The sheet becomes a task list, and nobody owns the area that the changes add up to.
Fix

Make one goal for the area and put the changes inside it as tasks.

Avoid

Tickets dressed as goals

This week

Enabling delivery

Add invite email

SRSam

Enabling delivery

Fix sign-in button

LMLeo

Enabling delivery

Expire old invites

SRSam

Instead

One goal per area, with tasks inside

This week

Enabling delivery

Supplier sign-in & invites

  • Choose the identity provider
  • Send invite emails
  • Company sign-in for staff
  • Expire unused invites
SRSam

Common questions

What sets a goal's due date?

The band. A goal's due date is the last day of its band. A goal in This week (Sep 28 to Oct 2) is due on Oct 2. A goal in Later has no due date.

What happens to a finished goal?

It stays in the band it was due in, and its card shows when it finished.

How many owners can a goal have?

One owner, or two as a pair goal.

Does finishing every task close the goal?

No. A person sets the goal to Done, and only when every task is done.

Should every goal have a date?

No. Put committed work that nobody can date yet in Later. A made-up date is worse than no date, because the team plans around it.

Can I create a product goal on the roadmap?

Yes. Click New goal and choose Product delivery as the kind. Then pick the story map stage the goal belongs to, so it traces to the journey. New goal starts on Enabling delivery.

Does moving a card on the roadmap change the story map?

The goal's due date changes, so the goal moves to another horizon bucket on the story map. Its stage and its rank in the column stay the same.