# How to Use Job Stories vs User Stories vs WWA Formats in pm-skills

> Learn to effectively use Job Stories User Stories and WWA formats in pm-skills Backlog formats are optimized for different philosophies accessible via the write-stories command

- Repository: [Pawel Huryn/pm-skills](https://github.com/phuryn/pm-skills)
- Tags: how-to-guide
- Published: 2026-06-09

---

**The pm-skills repository supplies three distinct backlog formats—Job Stories, User Stories, and Why-What-Acceptance (WWA)—each optimized for specific product management philosophies and accessible through the unified `/write-stories` command interface.**

The **pm-skills** open-source toolkit provides structured approaches to backlog creation that align with different team workflows and strategic needs. Whether your team follows Jobs-to-Be-Done methodology, traditional Scrum practices, or strategic roadmapping frameworks, understanding **job-stories vs user-stories vs wwas formats** ensures clear communication of acceptance criteria and business intent. This guide explains the architectural differences between these formats and demonstrates how to generate each using the repository's command skill system.

## Core Differences Between the Three Backlog Formats

Each format in the pm-skills repository serves a distinct product management philosophy, with templates defined in separate skill files under `pm-execution/skills/`.

### Job Stories: Context-Driven Requirements

Job Stories emphasize the *situation* that triggers a need rather than the user role itself. Following the Jobs-to-Be-Done (JTBD) framework, each story follows the structure: `When [situation], I want [motivation], so I can [outcome]`. According to the source code in [`pm-execution/skills/job-stories/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/pm-execution/skills/job-stories/SKILL.md), this format is ideal for research-driven teams where the "job" matters more than the persona. The template automatically appends detailed acceptance criteria and design links to ensure the context remains actionable.

### User Stories: Role-Based Agile Requirements

User Stories follow the classic Agile pattern: `As a [user role], I want [capability], so that [benefit]`. As implemented in [`pm-execution/skills/user-stories/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/pm-execution/skills/user-stories/SKILL.md), this format enforces INVEST qualities (Independent, Negotiable, Valuable, Estimable, Small, Testable) and the 3 C's framework (Card, Conversation, Confirmation). This approach works best for Scrum or Kanban teams that map features to specific personas and require role-based requirement traceability.

### Why-What-Acceptance (WWA): Strategic Alignment

The WWA format structures backlog items around business intent rather than user actions. Defined in [`pm-execution/skills/wwas/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/pm-execution/skills/wwas/SKILL.md), it separates items into three sections: **Why** (strategic context), **What** (deliverable description), and **Acceptance** (high-level criteria). This lightweight format suits cross-functional teams that need to surface business rationale alongside technical deliverables without over-specifying implementation details.

## Generating Stories with the `/write-stories` Command

The `/write-stories` command in [`pm-execution/commands/write-stories.md`](https://github.com/phuryn/pm-skills/blob/main/pm-execution/commands/write-stories.md) serves as the unified entry point for all three formats. The command accepts a format token (`job`, `user`, or `wwa`) and delegates to the corresponding skill file for template rendering.

To invoke the Job Stories skill:

```bash
/write-stories job When users view a pricing page, I want a clear cost-breakdown, so I can decide which plan fits my budget

```

This generates a markdown template including:
- **Title**: Clear Cost-Breakdown on Pricing Page
- **Description**: The full job story context
- **Design**: Placeholder for Figma or design links
- **Acceptance Criteria**: Numbered list of verifiable conditions

To generate a User Story:

```bash
/write-stories user As a marketing analyst, I want to export campaign data as CSV, so that I can perform offline analysis in Excel

```

The output follows INVEST principles with role-specific acceptance criteria mapped to the marketing analyst persona.

For strategic WWA items:

```bash
/write-stories wwa Dark mode for the mobile app

```

This produces a structured response separating strategic rationale ("Why: Users frequently report eye-strain...") from the deliverable description and WCAG-aligned acceptance criteria.

## Source File Architecture

Understanding the file structure helps teams customize templates while preserving the command interface:

- **[`pm-execution/skills/job-stories/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/pm-execution/skills/job-stories/SKILL.md)**: Defines the JTBD template with situation-motivation-outcome structure
- **[`pm-execution/skills/user-stories/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/pm-execution/skills/user-stories/SKILL.md)**: Implements the 3 C's framework with INVEST-aligned criteria
- **[`pm-execution/skills/wwas/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/pm-execution/skills/wwas/SKILL.md)**: Contains the Why-What-Acceptance markdown template
- **[`pm-execution/commands/write-stories.md`](https://github.com/phuryn/pm-skills/blob/main/pm-execution/commands/write-stories.md)**: Orchestrates format detection, skill loading, and template rendering

All skills generate output compatible with standard product management tools, allowing direct import into Markdown-based backlogs or documentation systems.

## Summary

- **Job Stories** focus on situational context and motivation using the "When-I want-so I can" pattern, stored in [`pm-execution/skills/job-stories/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/pm-execution/skills/job-stories/SKILL.md)
- **User Stories** emphasize roles and capabilities via "As a-I want-so that" syntax, defined in [`pm-execution/skills/user-stories/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/pm-execution/skills/user-stories/SKILL.md)
- **WWA Format** separates strategic intent from delivery using Why-What-Acceptance sections, configured in [`pm-execution/skills/wwas/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/pm-execution/skills/wwas/SKILL.md)
- The `/write-stories` command provides unified access to all three formats through specific tokens: `job`, `user`, and `wwa`
- Each format automatically includes acceptance criteria and design link placeholders to maintain Definition of Ready standards

## Frequently Asked Questions

### When should I use job stories instead of user stories?

Use **Job Stories** when the triggering situation matters more than the user's role or persona. According to the [`pm-execution/skills/job-stories/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/pm-execution/skills/job-stories/SKILL.md) implementation, this format excels in research-driven environments where teams design around real-world contexts rather than demographic segments. Choose **User Stories** when you need to trace requirements to specific roles or enforce INVEST criteria in traditional Scrum workflows.

### What is the WWA format best suited for?

The **Why-What-Acceptance** format works best when you need to surface business strategy alongside technical requirements. As defined in [`pm-execution/skills/wwas/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/pm-execution/skills/wwas/SKILL.md), it prevents over-specification while ensuring stakeholders understand the strategic rationale ("Why") before reviewing deliverables ("What"). This format particularly suits roadmap reviews and executive stakeholder communications where context independence is less critical than strategic alignment.

### How do I invoke the story generation command in pm-skills?

Run `/write-stories` followed by the format token and your feature description. The command implementation in [`pm-execution/commands/write-stories.md`](https://github.com/phuryn/pm-skills/blob/main/pm-execution/commands/write-stories.md) supports three tokens: `job` for Job Stories, `user` for User Stories, and `wwa` for Why-What-Acceptance items. If you omit the format, the interface prompts you to select the appropriate skill.

### Can I customize the templates for my team?

Yes. Since each format resides in separate skill files ([`pm-execution/skills/job-stories/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/pm-execution/skills/job-stories/SKILL.md), [`pm-execution/skills/user-stories/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/pm-execution/skills/user-stories/SKILL.md), [`pm-execution/skills/wwas/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/pm-execution/skills/wwas/SKILL.md)), you can modify the markdown templates and acceptance criteria defaults without affecting the core `/write-stories` command logic. Maintain the file structure to ensure the command router continues to locate your customized skills.