mirror of
https://github.com/bmadcode/BMAD-METHOD.git
synced 2025-12-29 16:14:59 +00:00
massive update and guidance.
This commit is contained in:
135
ai/templates/prd-template.md
Normal file
135
ai/templates/prd-template.md
Normal file
@@ -0,0 +1,135 @@
|
||||
# 1. Title: {PRD for {project}}
|
||||
|
||||
## Status: { Draft | Approved }
|
||||
|
||||
## Intro
|
||||
|
||||
{ Short 1-2 paragraph describing the what and why of what the prd will achieve}
|
||||
|
||||
## Goals
|
||||
|
||||
{
|
||||
|
||||
- Clear project objectives
|
||||
- Measurable outcomes
|
||||
- Success criteria
|
||||
- Key performance indicators (KPIs)
|
||||
}
|
||||
|
||||
## Features and Requirements
|
||||
|
||||
- Functional requirements
|
||||
- Non-functional requirements
|
||||
- User experience requirements
|
||||
- Integration requirements
|
||||
- Compliance requirements
|
||||
|
||||
## Epic List
|
||||
|
||||
### Epic-1: Current PRD Epic (for example backend epic)
|
||||
|
||||
### Epic-2: Second Current PRD Epic (for example front end epic)
|
||||
|
||||
### Epic-N: Future Epic Enhancements (Beyond Scope of current PRD)
|
||||
|
||||
## Epic 1: Story List
|
||||
|
||||
<example>
|
||||
|
||||
- Story 1: Project and NestJS Configuration
|
||||
Status: {''|'InProgress'|'Complete'}
|
||||
Requirements:
|
||||
|
||||
- Install NestJS CLI Globally
|
||||
- Create a new NestJS project with the nestJS cli generator
|
||||
- Test Start App Boilerplate Functionality
|
||||
- Init Git Repo and commit initial project set up
|
||||
|
||||
- Story 2: News Retrieval API Route
|
||||
Status: {''|'InProgress'|'Complete'}
|
||||
Requirements:
|
||||
- Create API Route that returns a list of News and comments from the news source foo
|
||||
- Route post body specifies the number of posts, articles, and comments to return
|
||||
- Create a command in package.json that I can use to call the API Route (route configured in env.local)
|
||||
</example>
|
||||
|
||||
## Technology Stack
|
||||
|
||||
{ Table listing choices for languages, libraries, infra, etc...}
|
||||
|
||||
<example>
|
||||
| Technology | Version | Description |
|
||||
| ---------- | ------- | ----------- |
|
||||
| Kubernetes | x.y.z | Container orchestration platform for microservices deployment |
|
||||
| Apache Kafka | x.y.z | Event streaming platform for real-time data ingestion |
|
||||
| TimescaleDB | x.y.z | Time-series database for sensor data storage |
|
||||
| Go | x.y.z | Primary language for data processing services |
|
||||
| GoRilla Mux | x.y.z | REST API Framework |
|
||||
| Python | x.y.z | Used for data analysis and ML services |
|
||||
</example>
|
||||
|
||||
## Reference
|
||||
|
||||
{ Mermaid Diagrams for models tables, visual aids as needed, citations and external urls }
|
||||
|
||||
## Data Models, API Specs, Schemas, etc...
|
||||
|
||||
{ As needed - may not be exhaustive - but key ideas that need to be retained and followed into the architecture and stories }
|
||||
|
||||
<example>
|
||||
### Sensor Reading Schema
|
||||
|
||||
```json
|
||||
{
|
||||
"sensor_id": "string",
|
||||
"timestamp": "datetime",
|
||||
"readings": {
|
||||
"temperature": "float",
|
||||
"pressure": "float",
|
||||
"humidity": "float"
|
||||
},
|
||||
"metadata": {
|
||||
"location": "string",
|
||||
"calibration_date": "datetime"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
</example>
|
||||
|
||||
## Project Structure
|
||||
|
||||
{ Diagram the folder and file organization structure along with descriptions }
|
||||
|
||||
<example>
|
||||
|
||||
````
|
||||
// Start of Selection
|
||||
```text
|
||||
src/
|
||||
├── services/
|
||||
│ ├── gateway/ # Sensor data ingestion
|
||||
│ ├── processor/ # Data processing and validation
|
||||
│ ├── analytics/ # Data analysis and ML
|
||||
│ └── notifier/ # Alert and notification system
|
||||
├── deploy/
|
||||
│ ├── kubernetes/ # K8s manifests
|
||||
│ └── terraform/ # Infrastructure as Code
|
||||
└── docs/
|
||||
├── api/ # API documentation
|
||||
└── schemas/ # Data schemas
|
||||
````
|
||||
|
||||
</example>
|
||||
|
||||
## Change Log
|
||||
|
||||
{ Markdown table of key changes after document is no longer in draft and is updated, table includes the change title, the story id that the change happened during, and a description if the title is not clear enough }
|
||||
|
||||
<example>
|
||||
| Change | Story ID | Description |
|
||||
| -------------------- | -------- | ------------------------------------------------------------- |
|
||||
| Initial draft | N/A | Initial draft prd |
|
||||
| Add ML Pipeline | story-4 | Integration of machine learning prediction service story |
|
||||
| Kafka Upgrade | story-6 | Upgraded from Kafka 2.0 to Kafka 3.0 for improved performance |
|
||||
</example>
|
||||
Reference in New Issue
Block a user