manage-backlog
À propos
Cette compétence Claude aide les développeurs à créer et maintenir un backlog produit priorisé, en gérant la rédaction des user stories, la priorisation MoSCoW et le grooming du backlog. Elle est utilisée pour convertir le périmètre du projet en éléments actionnables, re-prioriser après les retours et diviser les éléments de travail trop volumineux. Les fonctionnalités clés incluent la gestion des critères d'acceptation, des estimations et le suivi de l'état des éléments.
Installation rapide
Claude Code
Recommandénpx skills add pjt222/agent-almanac -a claude-code/plugin add https://github.com/pjt222/agent-almanacgit clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/manage-backlogCopiez et collez cette commande dans Claude Code pour installer cette compétence
Documentation
Manage Product Backlog
Create, prioritize, maintain backlog of work items serving as single source of truth for what needs to be done. Applies to both agile and classic project methodologies.
When Use
- Starting new project, converting scope into actionable items
- Ongoing backlog grooming before sprint planning
- Re-prioritizing work after stakeholder feedback or scope changes
- Splitting oversized items into implementable pieces
- Reviewing and archiving completed or cancelled items
Inputs
- Required: Project scope (from charter, WBS, or stakeholder input)
- Optional: Existing backlog file (BACKLOG.md) to update
- Optional: Prioritization framework preference (MoSCoW, value/effort, WSJF)
- Optional: Estimation scale (story points, T-shirt sizes, person-days)
- Optional: Sprint or iteration feedback requiring backlog updates
Steps
Step 1: Create or Load Backlog Structure
No backlog exists? Create BACKLOG.md with standard columns. Exists? Read and validate structure.
# Product Backlog: [Project Name]
## Last Updated: [YYYY-MM-DD]
### Summary
- **Total Items**: [N]
- **Ready for Sprint**: [N]
- **In Progress**: [N]
- **Done**: [N]
- **Cancelled**: [N]
### Backlog Items
| ID | Title | Type | Priority | Estimate | Status | Sprint |
|----|-------|------|----------|----------|--------|--------|
| B-001 | [Title] | Feature | Must | 5 | Ready | — |
| B-002 | [Title] | Bug | Should | 2 | Ready | — |
| B-003 | [Title] | Task | Could | 3 | New | — |
### Item Details
#### B-001: [Title]
- **Type**: Feature | Bug | Task | Spike | Tech Debt
- **Priority**: Must | Should | Could | Won't
- **Estimate**: [Points or size]
- **Status**: New | Ready | In Progress | Done | Cancelled
- **Acceptance Criteria**:
- [ ] [Criterion 1]
- [ ] [Criterion 2]
- **Notes**: [Context, links, dependencies]
#### B-002: [Title]
...
Got: BACKLOG.md exists with valid structure and summary statistics.
If fail: File malformed? Restructure preserving existing item data.
Step 2: Write or Refine Items
For each new item, write as user story or requirement:
- User story format: "As a [role], I want [capability] so that [benefit]"
- Requirement format: "[System/Component] shall [behavior] when [condition]"
Each item must have:
- Unique ID (B-NNN, incrementing)
- Clear title (imperative verb form)
- Type classification
- At least 2 acceptance criteria (testable, binary pass/fail)
Example:
#### B-005: Enable User Login with OAuth
- **Type**: Feature
- **Priority**: Must
- **Estimate**: 5
- **Status**: Ready
- **Acceptance Criteria**:
- [ ] User can log in using GitHub OAuth
- [ ] User session persists for 24 hours
- [ ] Failed login shows clear error message
- **Notes**: Requires OAuth app registration in GitHub
Got: All items have titles, types, acceptance criteria.
If fail: Items without acceptance criteria marked Status: New (not Ready). Cannot enter sprint.
Step 3: Prioritize Using MoSCoW or Value/Effort
Apply chosen prioritization framework:
MoSCoW (default):
- Must: Project fails without this. Non-negotiable.
- Should: Important but project can succeed without it. Include if capacity allows.
- Could: Nice to have. Include only if no impact on Must/Should items.
- Won't: Explicitly excluded from current scope. Documented for future consideration.
Value/Effort Matrix (alternative):
| Low Effort | High Effort | |
|---|---|---|
| High Value | Do First (Quick Wins) | Do Second (Big Bets) |
| Low Value | Do Third (Fill-ins) | Don't Do (Money Pits) |
Sort backlog table: Must items first (by value within Must), then Should, then Could.
Got: Every item has priority. Backlog sorted by priority.
If fail: Stakeholders disagree on priorities? Escalate Must vs Should decisions to project sponsor.
Step 4: Groom — Split, Estimate, Refine
Review items for sprint-readiness. For each item:
- Split if estimate > 8 points (or > 1 week effort): decompose into 2-4 smaller items
- Estimate using project's chosen scale
- Refine vague acceptance criteria into testable conditions
- Mark Ready when item has title, acceptance criteria, estimate, no blockers
Document splitting:
**Split**: B-003 split into B-003a, B-003b, B-003c (original archived)
#### B-003a: Set Up Database Schema
- **Type**: Task
- **Priority**: Must
- **Estimate**: 3
- **Status**: Ready
- **Acceptance Criteria**:
- [ ] Users table created with email, name fields
- [ ] Migrations run successfully on dev environment
#### B-003b: Implement User CRUD Operations
- **Type**: Task
- **Priority**: Must
- **Estimate**: 5
- **Status**: Ready
- **Acceptance Criteria**:
- [ ] Create user endpoint returns 201 with user object
- [ ] Update user endpoint validates required fields
Got: All Must and Should items in Ready status.
If fail: Items that can't be estimated need Spike (time-boxed research task) added to backlog.
Step 5: Update Summary and Archive
Update summary statistics. Move Done and Cancelled items to archive section:
### Archive
| ID | Title | Status | Sprint | Completed |
|----|-------|--------|--------|-----------|
| B-001 | Enable User Login with OAuth | Done | S-003 | 2025-03-15 |
| B-004 | Add Dark Mode Theme | Cancelled | — | 2025-03-10 |
Update summary by counting items in each status:
# Count Ready items
grep "| Ready |" BACKLOG.md | wc -l
# Count In Progress items
grep "| In Progress |" BACKLOG.md | wc -l
# Count Done items
grep "| Done |" BACKLOG.md | wc -l
Got: Summary statistics match actual item counts. Archive section contains all closed items.
If fail: Counts don't match? Recount by grepping Status values, update summary manually.
Checks
- BACKLOG.md exists with standard structure
- Every item has unique ID, title, type, priority, status
- All Must and Should items have acceptance criteria
- Items sorted by priority (Must first, then Should, then Could)
- No item estimated at > 8 points without being split
- Summary statistics accurate
- Done/Cancelled items archived
Pitfalls
- No acceptance criteria: Items without criteria can't be verified as done. Every item needs at least 2 testable criteria.
- Everything is Must priority: >50% of items Must? Priorities not real. Force-rank within Must.
- Zombie items: Items sitting in backlog for months without progress should be re-evaluated or cancelled.
- Estimates without context: Story points relative — team must have reference item (e.g., "B-001 is our 3-point reference").
- Splitting creates fragments: When splitting, ensure each child item independently deliverable and valuable.
- Backlog as dumping ground: Backlog not wish list. Regularly prune items no longer aligning with project goals.
- Missing dependencies: Note blocking items in Notes field. Blocked item should not be marked Ready.
See Also
draft-project-charter— charter scope feeds initial backlog creationcreate-work-breakdown-structure— WBS work packages can become backlog itemsplan-sprint— sprint planning selects from top of backloggenerate-status-report— backlog burn-down feeds status reportsconduct-retrospective— retrospective improvement items feed back into backlog
Dépôt GitHub
Compétences associées
content-collections
MétaCette compétence propose une configuration éprouvée en production pour Content Collections, un outil axé sur TypeScript qui transforme des fichiers Markdown/MDX en collections de données typées de manière sûre avec une validation Zod. Utilisez-la lors de la création de blogs, de sites de documentation ou d'applications Vite + React riches en contenu pour garantir la sécurité de typage et la validation automatique du contenu. Elle couvre tout, de la configuration du plugin Vite et de la compilation MDX à l'optimisation des déploiements et la validation des schémas.
polymarket
MétaCette compétence permet aux développeurs de créer des applications avec la plateforme de marchés prédictifs Polymarket, incluant l'intégration d'API pour le trading et les données de marché. Elle fournit également une diffusion de données en temps réel via WebSocket pour surveiller les transactions en direct et l'activité du marché. Utilisez-la pour mettre en œuvre des stratégies de trading ou pour créer des outils traitant les mises à jour de marché en direct.
creating-opencode-plugins
MétaCette compétence aide les développeurs à créer des plugins OpenCode qui s'interconnectent avec plus de 25 types d'événements tels que les commandes, les fichiers et les opérations LSP. Elle fournit la structure du plugin, les spécifications de l'API événementielle et les modèles d'implémentation pour les modules JavaScript/TypeScript. Utilisez-la lorsque vous avez besoin d'intercepter, de surveiller ou d'étendre le cycle de vie de l'assistant IA OpenCode avec une logique personnalisée pilotée par les événements.
sglang
MétaSGLang est un framework de service LLM haute performance spécialisé dans la génération rapide et structurée pour les workflows JSON, regex et agentiques grâce à son cache de préfixe RadixAttention. Il offre une inférence nettement plus rapide, particulièrement pour les tâches avec des préfixes répétés, ce qui le rend idéal pour les sorties complexes et structurées ainsi que les conversations multi-tours. Choisissez SGLang plutôt que des alternatives comme vLLM lorsque vous avez besoin d'un décodage contraint ou que vous construisez des applications avec un partage étendu de préfixes.
