Software

Software teams should not carry the roadmap on slides

When issue tracker, wiki, and slides are three sources, the sprint lies. Let feature, task, and doc be one tree. The backlog is not a graveyard; it is the line in front of a locked sprint.

Trigger, action, notify, and done flow

May 29, 2026 · 7 min read

Do not let the backlog become a graveyard

Scattered issues and wiki

An infinite issue list is not a priority. Ontra’s sprint lock and milestones say which card lives this week. The rest waits in line; it is not deleted. Do not open a task without a feature. An unbound task blinds the roadmap. At quarter-end you ask “which package did this belong to?” An empty feature is a warning: the percent is a manager’s hope, not card count.

If the decision stays in a GitHub comment, next quarter forgets it. Write the short decision on the Ontra task comment. The doc carries acceptance criteria, not the issue title. The pull request number sits on the task field. Review chat may stay on GitHub; the acceptance sentence lands in Ontra. Next quarter does not hunt a PR to learn why you did it this way. Milestone dates come from the plan, not the code.

  • Do not open a task without a feature
  • Do not leave the decision in a GitHub comment
  • Tech debt is tagged, not a secret list
  • Milestones come from the plan, not the code
  • The PR number sits on the task field

Internal review and client approval are separate columns

Technical decision on the task comment

In a software vocabulary do not let “review” mean two things. Internal review is code. Client approval is product. If you keep both in the same green, the sprint lies. QA can be its own status. Only live counts as done. Close speed reads that mark. A custom status does not break the report. The CI key is narrow; the pipeline does not delete tasks or invite members.

Tech debt should not be a secret list

Debt is tagged, not stored in a separate graveyard. If it cannot find a seat in the sprint, it stays visible. A secret “we’ll look later” list explodes at quarter-end. If the goal sentence is “halve reopened work,” the repeat report feeds it. A separate quality tool splits the record again. Acceptance criteria live on the doc; that is where the “done” lie dies.

The slide is generated from the plan

If the exec deck updates Friday night and the board moves Monday, two truths are born. The milestone report opens five minutes before the meeting. There is no separate “management truth.” Use cases keep the customer’s language. Features do not drift into engineering slang. Four layers are enough: module, use case, feature, milestone. A fifth layer starts the novel.

Closing the issue-wiki-slide trio

An infinite issue list is not a priority. Sprint lock and milestones say which card lives this week. The rest waits in line. A task without a feature blinds the tree. An empty feature turns percent into hope. If the decision stays in a GitHub comment, next quarter forgets it. The acceptance sentence lands on the card. The PR number sits on the task field. Review chat may stay on GitHub. The doc carries acceptance criteria, not the issue title.

Internal review and client approval are separate columns. QA can be its own. Only live counts as done. The CI key is narrow; the pipeline does not delete tasks or invite members. Tech debt is tagged, not a secret graveyard. If it cannot find a sprint seat it stays visible. If the goal is “halve reopened work,” the repeat report feeds it. A separate quality tool splits the record again.

The milestone report kills the Friday-slide / Monday-board twin truth. Use cases keep the customer’s language. Features do not drift into engineering jargon. Four layers are enough. A fifth starts the novel. The backlog is not a graveyard; it is the line in front of a locked sprint. The roadmap leaves the slide and lives on the tree.

Code, card, and slide on one tree

An infinite issue list is not a priority. Lock and milestones say which card lives this week. A task without a feature blinds. An empty feature turns percent into hope. If the decision stays on GitHub it is forgotten. Acceptance lands on the card. The PR number sits on the field. Review chat may stay on GitHub. The doc carries acceptance not the issue title. Internal review and client approval are separate columns. QA can be its own. Only live counts as done. The CI key is narrow. Tech debt is tagged not a secret graveyard. If the goal is repeats halved the repeat report feeds it. A separate quality tool splits.

The milestone report kills the Friday-slide Monday-board twin. Use case is customer language. Features do not drift into jargon. Four layers are enough. The backlog is not a graveyard it is the line in front of a locked sprint. The roadmap leaves the slide and lives on the tree.

A team that does not bind the PR to the card hunts next quarter for why we did it this way. A team that binds reads the sentence in the comment. This ten-second write kills a three-month search.

Three rules in the first sprint: no task without a feature, no done without acceptance bullets, PR number not left empty. All three are boring. What is boring is carrying the roadmap on a slide.

Bind the PR to the card

CI and delivery link

The pull request number sits on the task field. Review chat may stay on GitHub; the acceptance sentence lands in Ontra. Next quarter does not hunt a PR to learn why you did it this way.