Template Note: This is a template for writing product requirements documents for AI-powered applications. Replace all bracketed placeholders with your project-specific content and remove this note.
[Describe the current situation and the problem your product aims to solve]
[Include details about:
- Current state of the market/industry
- Specific pain points users experience
- Why existing solutions are inadequate
- Who is affected by this problem
- The impact of not solving this problem]
Example structure:
- Problem overview and context
- Specific user challenges (bulleted list)
- Market gap analysis
- Impact statement
[Write a clear, compelling vision statement that describes what your product will achieve and how it will transform the user experience]
[Your vision should include:
- What the product will accomplish
- Who will benefit from it
- How it will solve the identified problems
- The unique value proposition
- Long-term goals and aspirations]
[Describe your product's technical architecture and how components work together]
This template supports applications built with Python Microsoft Semantic Kernel framework and TypeScript frontends. The architecture enables multi-agent AI systems where specialized agents collaborate to deliver comprehensive functionality.
Template Architecture Includes:
- Backend Framework: Python with Semantic Kernel for AI agent orchestration
- Frontend Framework: TypeScript for user interface development
- AI Integration: Support for Azure OpenAI and other LLM providers
- Plugin System: Extensible plugin architecture for specialized functionality
- Agent Communication: Dynamic routing and coordination between AI agents
[Define your AI agents and their specific roles and responsibilities]
Template Agent Examples:
-
[Primary Agent Name] (Orchestrator Agent)
- [Primary responsibility and role]
- [Key functions it performs]
- [How it coordinates with other agents]
- [User interaction responsibilities]
-
[Secondary Agent Name]
- [Specific domain expertise]
- [Key responsibilities]
- [Data it manages or processes]
- [Integration points with other agents]
-
[Additional Agent Name]
- [Specialized function]
- [Input/output responsibilities]
- [Performance criteria]
- [Dependencies on other components]
[Add more agents as needed for your specific use case]
[Describe how agents communicate and coordinate with each other]
Example Communication Pattern:
User Input → [Primary Agent] → Routes to appropriate agent(s)
↓
[Agent A] ↔ [Agent B] ↔ [Agent C] ↔ [Agent D]
↓
[Primary Agent] → User Output
- [Describe inter-agent communication protocols]
- [Explain coordination mechanisms]
- [Detail shared state management]
- [Specify integration framework (e.g., Semantic Kernel)]
- Framework: [Your backend framework] with [Your frontend framework]
- AI Integration: [Your LLM provider and integration method]
- State Management: [How you track application state]
- Data Storage: [Your data storage solution]
- Real-time Updates: [Real-time communication requirements]
[Add domain-specific technical requirements]
- [Component Name]: [Specific requirements]
- [Integration Name]: [Integration specifications]
- [Performance Metric]: [Performance requirements]
- [Interface Type]: [Primary interaction method]
- [Display Component]: [Visual representation requirements]
- [Visualization Tool]: [Data visualization needs]
- [Media Gallery]: [Media storage and display requirements]
- [Feedback System]: [User feedback mechanisms]
- [History Management]: [Session and data persistence]
[Describe your main user workflow]
- [Step 1 description]
- [Step 2 description]
- [Step 3 description]
- [Step 4 description]
- [Step 5 description]
[Describe supporting workflows]
- [Process step]
- [Agent coordination step]
- [Data processing step]
- [User interaction step]
- [Output generation step]
[Add more workflows as needed]
- [Workflow step]
- [Integration point]
- [Decision point]
- [Processing step]
- [Result delivery]
- As a [user type], I want to [action] so that [benefit]
- As a [user type], I want to [action] so that [benefit]
- As a [user type], I want to [action] so that [benefit]
- As a [user type], I want to [action] so that [benefit]
- As a [user type], I want to [action] so that [benefit]
- As a [user type], I want to [action] so that [benefit]
- [Core requirement 1]
- [Core requirement 2]
- [Core requirement 3]
- [Core requirement 4]
- [Enhanced feature 1]
- [Enhanced feature 2]
- [Enhanced feature 3]
- [Enhanced feature 4]
- [Advanced feature 1]
- [Advanced feature 2]
- [Advanced feature 3]
- [Advanced feature 4]
- [Integration feature 1]
- [Integration feature 2]
- [Integration feature 3]
- [Integration feature 4]
- [Optimization feature 1]
- [Optimization feature 2]
- [Optimization feature 3]
- [Optimization feature 4]
[Add any compliance requirements specific to your domain]
- [Legal requirement 1]
- [Compliance standard 1]
- [Attribution requirement]
- [Terms of use considerations]
[Define how you will measure success]
- [Metric 1] (e.g., user engagement duration)
- [Metric 2] (e.g., task completion rates)
- [Metric 3] (e.g., system performance metrics)
- [Metric 4] (e.g., user satisfaction scores)
- [Metric 5] (e.g., quality assessment criteria)
- [Metric 6] (e.g., response times and stability)
[Summarize your product vision and approach]
[Write a brief conclusion that:
- Summarizes the product approach
- Reinforces the value proposition
- Highlights key differentiators
- Connects to user benefits
- Emphasizes the technical strategy]