Agile Methodology · Schema

UserStory

A user story representing a feature or requirement from the perspective of an end user in agile methodology.

Agile MethodologyKanbanProject ManagementScrumSoftware DevelopmentSAFeXP

Properties

Name Type Description
id string Unique identifier for the user story.
title string Short summary of the user story.
description string Full user story in the format: As a [role], I want [feature], so that [benefit].
acceptance_criteria array List of acceptance criteria that must be met for the story to be considered done.
story_points integer Relative effort estimate for completing the user story.
priority string
status string
View JSON Schema on GitHub

JSON Schema

agile-methodology-user-story-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/agile-methodology/refs/heads/main/json-schema/agile-methodology-user-story-schema.json",
  "title": "UserStory",
  "description": "A user story representing a feature or requirement from the perspective of an end user in agile methodology.",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "Unique identifier for the user story.",
      "example": "US-500123"
    },
    "title": {
      "type": "string",
      "description": "Short summary of the user story.",
      "example": "User can reset password via email"
    },
    "description": {
      "type": "string",
      "description": "Full user story in the format: As a [role], I want [feature], so that [benefit].",
      "example": "As a registered user, I want to reset my password via email, so that I can regain access if I forget it."
    },
    "acceptance_criteria": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "List of acceptance criteria that must be met for the story to be considered done."
    },
    "story_points": {
      "type": "integer",
      "description": "Relative effort estimate for completing the user story.",
      "example": 5
    },
    "priority": {
      "type": "string",
      "enum": [
        "critical",
        "high",
        "medium",
        "low"
      ],
      "example": "high"
    },
    "status": {
      "type": "string",
      "enum": [
        "backlog",
        "ready",
        "in-progress",
        "done"
      ],
      "example": "in-progress"
    }
  },
  "required": [
    "id",
    "title",
    "description"
  ]
}