Skip to main content
SSiertsema

functional-specifications

by SSiertsema

Generate functional specifications from business case and personas through interactive dialogue

Installation guide →
1 commandproductivity GitHub

Commands

generate-functional-specifications

Generate functional specifications from business case and personas

Documentation

# Functional Specifications Generator

Generate functional specifications from your business case and user personas through an interactive dialogue.

## Overview

This plugin helps you create comprehensive functional specifications by:

1. **Analyzing** your existing business case documentation
2. **Mapping** persona needs and pain points
3. **Proposing** features that address real user needs
4. **Refining** proposals through interactive dialogue
5. **Generating** a structured specification document

## Usage

```
/generate-functional-specifications
```

## Prerequisites

For best results, have these documents ready:

- **Business Case**: Document describing the problem, goals, and scope
- **Personas**: User persona documents (can be generated with `/generate-personas`)

The plugin will search for these in common documentation locations, or you can specify custom paths.

## Workflow

### Phase 1: Discovery
- Locates existing business case and persona documents
- Confirms sources with user

### Phase 2: Business Case Analysis
- Summarizes the business problem and goals
- Validates understanding with user

### Phase 3: Persona Needs Mapping
- Extracts goals, pain points, and tasks from each persona
- Validates persona understanding

### Phase 4: Feature Proposal
- Proposes features based on business case and persona needs
- **User can always**:
  - Accept, modify, or reject proposals
  - Add their own feature ideas
  - Prioritize features (MoSCoW method)

### Phase 5: Specification Detailing
- Documents each feature with full details
- Identifies dependencies between features

### Phase 6: Output Generation
- Creates a single comprehensive specification document
- Includes traceability matrix linking features to personas and business goals

## Output

The plugin generates a single markdown document:

```
documentation/functional-specifications.md
```

The document includes:
- Executive summary
- Business case summary
- Persona overview
- Feature specifications with:
  - Description
  - User and business benefit
  - Personas served
  - Dependencies
  - Out of scope items
- Traceability matrix
- Open questions
- Glossary and references

## User Interaction

This plugin prioritizes user input at every step:

- **Validate** - Confirms understanding before proceeding
- **Propose** - Presents options, never dictates
- **Invite** - Actively asks for your ideas and additions
- **Refine** - Allows modifications at any point
- **Backtrack** - Lets you revisit previous decisions

## Integration with Other Plugins

This plugin fits into a documentation workflow:

1. `/generate-personas` - Create user personas
2. **`/generate-functional-specifications`** - Define features (this plugin)
3. `/generate-user-stories` - Create user stories from features
4. `/refine-technical-specifications` - Define technical requirements

## Example Session

```
User: /generate-functional-specifications

Claude: I'll help you create functional specifications. Let me first search
        for existing documentation...

        I found:
        - documentation/business/business-case.md
        - documentation/business/personas/developer.md
        - documentation/business/personas/manager.md

        Are these the correct source documents?

User: Yes, those are correct

Claude: Great! Based on the business case, here's my understanding:

        **Problem Statement**: Teams struggle to track project progress...
        **Business Goals**: Improve visibility, reduce manual reporting...

        Does this accurately capture your business case?

User: Yes, but also add that we want to integrate with existing tools

Claude: Noted! Now analyzing personas... Based on Developer and Manager
        personas, I propose these features:

        ## Core Features
        - Feature: Progress Dashboard
          Addresses: Manager need for visibility, Developer pain point...

        Would you like to accept these, modify them, or add your own ideas?
```

## License

MIT