quantum-ai-v2/docs/PRE_IMPLEMENTATION_ANALYSIS_PROTOCOL.md
2025-07-19 08:06:31 +05:30

520 lines
16 KiB
Markdown

# Pre-Implementation Analysis Protocol
A comprehensive 3-phase approach to ensure thorough analysis before making any template changes.
## Overview
This protocol prevents the failures that occurred with the Social Ads Generator by ensuring complete understanding of requirements and existing implementations before any code changes are made.
## Phase 1: Complete Requirements Analysis
### 1.1 User Requirements Deep Dive
**Requirements Extraction Process:**
1. **Read the entire user request** multiple times
2. **Identify explicit requirements** (what they directly stated)
3. **Identify implicit requirements** (what they likely mean)
4. **Ask clarifying questions** if anything is unclear
5. **Document all requirements** in a structured format
**Requirements Documentation Template:**
```markdown
# Requirements Analysis: [Task Name]
## Explicit Requirements
- [ ] Requirement 1: [Description]
- [ ] Requirement 2: [Description]
- [ ] Requirement 3: [Description]
## Implicit Requirements
- [ ] Implied Requirement 1: [Description and reasoning]
- [ ] Implied Requirement 2: [Description and reasoning]
## Success Criteria
- [ ] Visual: [What should it look like?]
- [ ] Functional: [How should it behave?]
- [ ] Technical: [What technical standards must be met?]
## Constraints
- [ ] Technical constraints: [List]
- [ ] Design constraints: [List]
- [ ] Performance constraints: [List]
## Questions for Clarification
- [ ] Question 1: [What needs clarification?]
- [ ] Question 2: [What assumptions need verification?]
```
### 1.2 Context Understanding
**Environmental Analysis:**
- [ ] What is the current state of the target system?
- [ ] What other templates exist that might be relevant?
- [ ] What is the overall design system and architecture?
- [ ] What are the user's expectations based on past interactions?
- [ ] What are the business requirements and constraints?
**Stakeholder Analysis:**
- [ ] Who is the primary user?
- [ ] What is their technical expertise level?
- [ ] What are their preferences and priorities?
- [ ] What is their tolerance for iterative changes?
- [ ] What is their timeline and urgency level?
### 1.3 Scope Definition
**Scope Boundary Documentation:**
```markdown
# Scope Definition: [Task Name]
## In Scope
- [ ] Specific changes to be made
- [ ] Components to be modified
- [ ] Features to be implemented
- [ ] Standards to be followed
## Out of Scope
- [ ] Changes not requested
- [ ] Components not to be modified
- [ ] Features not to be implemented
- [ ] Standards not applicable
## Assumptions
- [ ] Assumption 1: [Description]
- [ ] Assumption 2: [Description]
- [ ] Assumption 3: [Description]
## Dependencies
- [ ] External dependencies
- [ ] Internal dependencies
- [ ] Technical dependencies
- [ ] Resource dependencies
```
## Phase 2: Complete Reference Analysis
### 2.1 Source Template Deep Analysis
**Comprehensive Template Reading Protocol:**
1. **Read the entire template** from start to finish
2. **Create a mental model** of the overall structure
3. **Re-read focusing on specific sections** (HTML, CSS, JS)
4. **Document every component** and its purpose
5. **Map relationships** between components
6. **Identify patterns** and conventions used
**Template Analysis Worksheet:**
```markdown
# Template Analysis: [Template Name]
## Overall Structure
- **Template extends**: [Base template]
- **Block structure**: [List of Django blocks]
- **Main sections**: [List of major sections]
- **Total lines**: [Count]
- **Complexity level**: [Low/Medium/High]
## HTML Structure Analysis
### Header Section
- **Elements**: [List all elements]
- **Classes**: [List all CSS classes]
- **IDs**: [List all HTML IDs]
- **ARIA attributes**: [List accessibility attributes]
- **Structure pattern**: [Describe the layout pattern]
### Main Content Section
- **Elements**: [List all elements]
- **Classes**: [List all CSS classes]
- **IDs**: [List all HTML IDs]
- **Form elements**: [List all form elements]
- **Structure pattern**: [Describe the layout pattern]
### Sidebar Section
- **Elements**: [List all elements]
- **Classes**: [List all CSS classes]
- **IDs**: [List all HTML IDs]
- **Widget structure**: [Describe widget organization]
- **Structure pattern**: [Describe the layout pattern]
### Footer/Additional Sections
- **Elements**: [List all elements]
- **Classes**: [List all CSS classes]
- **IDs**: [List all HTML IDs]
- **Purpose**: [Describe purpose of each section]
## CSS Architecture Analysis
### Design Tokens
- **Color variables**: [List all color variables]
- **Spacing variables**: [List all spacing variables]
- **Typography variables**: [List all typography variables]
- **Border radius variables**: [List all radius variables]
- **Shadow variables**: [List all shadow variables]
### Component Classes
- **Layout classes**: [List classes for layout]
- **Component classes**: [List classes for components]
- **State classes**: [List classes for states]
- **Utility classes**: [List utility classes]
### Responsive Design
- **Breakpoints**: [List all media queries]
- **Mobile changes**: [List mobile-specific changes]
- **Tablet changes**: [List tablet-specific changes]
- **Desktop changes**: [List desktop-specific changes]
## JavaScript Analysis
### Functions
- **Function 1**: [Name, purpose, parameters, return value]
- **Function 2**: [Name, purpose, parameters, return value]
- **Function 3**: [Name, purpose, parameters, return value]
### Event Listeners
- **Event 1**: [Element, event type, handler function]
- **Event 2**: [Element, event type, handler function]
- **Event 3**: [Element, event type, handler function]
### DOM Manipulation
- **Elements modified**: [List elements that are modified]
- **Classes added/removed**: [List dynamic class changes]
- **Content updates**: [List content that gets updated]
### State Management
- **Global variables**: [List global variables]
- **State tracking**: [List state variables]
- **Data flow**: [Describe how data flows]
## Interaction Patterns
### User Interactions
- **Click interactions**: [List all clickable elements]
- **Form interactions**: [List all form interactions]
- **Hover effects**: [List all hover effects]
- **Focus management**: [List focus management]
### System Interactions
- **API calls**: [List all API interactions]
- **Data persistence**: [List data storage/retrieval]
- **External integrations**: [List external integrations]
## Performance Considerations
- **Loading performance**: [Notes on loading speed]
- **Runtime performance**: [Notes on runtime efficiency]
- **Memory usage**: [Notes on memory consumption]
- **Network requests**: [List all network requests]
## Security Considerations
- **Input validation**: [List input validation measures]
- **Output sanitization**: [List output sanitization measures]
- **XSS prevention**: [List XSS prevention measures]
- **CSRF protection**: [List CSRF protection measures]
## Accessibility Features
- **ARIA attributes**: [List all ARIA attributes]
- **Keyboard navigation**: [List keyboard navigation support]
- **Screen reader support**: [List screen reader features]
- **Color contrast**: [Notes on color contrast]
## Browser Compatibility
- **Supported browsers**: [List supported browsers]
- **Fallbacks**: [List fallback implementations]
- **Polyfills**: [List polyfills used]
- **Progressive enhancement**: [List progressive enhancement features]
```
### 2.2 Target Template Current State Analysis
**Current State Documentation:**
```markdown
# Current State Analysis: [Target Template]
## Existing Implementation
- **Current approach**: [Describe current implementation]
- **Strengths**: [List what works well]
- **Weaknesses**: [List what doesn't work well]
- **Technical debt**: [List technical debt items]
## Component Inventory
- **Existing components**: [List all current components]
- **Reusable components**: [List components that can be reused]
- **Components to replace**: [List components that need replacement]
- **Components to remove**: [List components that should be removed]
## Code Quality Assessment
- **Code organization**: [Assessment of code structure]
- **Naming conventions**: [Assessment of naming patterns]
- **Documentation**: [Assessment of code documentation]
- **Maintainability**: [Assessment of maintainability]
## Performance Analysis
- **Current performance**: [Metrics and observations]
- **Bottlenecks**: [Performance bottlenecks identified]
- **Optimization opportunities**: [List optimization opportunities]
- **Resource usage**: [Current resource usage]
```
### 2.3 Gap Analysis and Mapping
**Detailed Gap Analysis:**
```markdown
# Gap Analysis: [Source] → [Target]
## Structural Differences
| Component | Source | Target | Gap | Priority |
|-----------|---------|---------|-----|----------|
| Header | [Source structure] | [Target structure] | [Gap description] | [High/Medium/Low] |
| Main Content | [Source structure] | [Target structure] | [Gap description] | [High/Medium/Low] |
| Sidebar | [Source structure] | [Target structure] | [Gap description] | [High/Medium/Low] |
| Footer | [Source structure] | [Target structure] | [Gap description] | [High/Medium/Low] |
## Styling Differences
| Style Category | Source | Target | Gap | Priority |
|----------------|---------|---------|-----|----------|
| Color Scheme | [Source colors] | [Target colors] | [Gap description] | [High/Medium/Low] |
| Typography | [Source typography] | [Target typography] | [Gap description] | [High/Medium/Low] |
| Spacing | [Source spacing] | [Target spacing] | [Gap description] | [High/Medium/Low] |
| Layout | [Source layout] | [Target layout] | [Gap description] | [High/Medium/Low] |
## Functional Differences
| Functionality | Source | Target | Gap | Priority |
|---------------|---------|---------|-----|----------|
| User Interactions | [Source interactions] | [Target interactions] | [Gap description] | [High/Medium/Low] |
| Data Handling | [Source data handling] | [Target data handling] | [Gap description] | [High/Medium/Low] |
| State Management | [Source state] | [Target state] | [Gap description] | [High/Medium/Low] |
| Error Handling | [Source errors] | [Target errors] | [Gap description] | [High/Medium/Low] |
## Missing Elements
- [ ] **Missing HTML elements**: [List]
- [ ] **Missing CSS classes**: [List]
- [ ] **Missing JavaScript functions**: [List]
- [ ] **Missing interactions**: [List]
- [ ] **Missing accessibility features**: [List]
## Excessive Elements
- [ ] **Unnecessary HTML elements**: [List]
- [ ] **Unused CSS classes**: [List]
- [ ] **Redundant JavaScript functions**: [List]
- [ ] **Unwanted interactions**: [List]
- [ ] **Obsolete features**: [List]
```
## Phase 3: Implementation Planning
### 3.1 Change Strategy Definition
**Change Strategy Matrix:**
```markdown
# Change Strategy: [Task Name]
## Strategic Approach
- **Overall strategy**: [Comprehensive rewrite / Incremental updates / Hybrid approach]
- **Risk tolerance**: [Low / Medium / High]
- **Timeline**: [Immediate / Short-term / Long-term]
- **Quality vs. Speed**: [Quality first / Balanced / Speed first]
## Implementation Approach
- **Method**: [Single comprehensive update / Staged implementation / Iterative development]
- **Backup strategy**: [Full backup / Incremental backup / Version control]
- **Testing approach**: [Comprehensive testing / Targeted testing / Minimal testing]
- **Rollback plan**: [Immediate rollback / Staged rollback / No rollback]
## Resource Requirements
- **Time estimate**: [Hours/days required]
- **Complexity level**: [Low / Medium / High]
- **Risk level**: [Low / Medium / High]
- **Dependencies**: [List external dependencies]
```
### 3.2 Detailed Implementation Plan
**Step-by-Step Implementation Plan:**
```markdown
# Implementation Plan: [Task Name]
## Phase 1: Foundation
### Step 1.1: Environment Setup
- [ ] Create backup of current implementation
- [ ] Set up development environment
- [ ] Prepare testing environment
- [ ] Document current state
### Step 1.2: Structure Preparation
- [ ] Analyze HTML structure requirements
- [ ] Plan CSS architecture changes
- [ ] Design JavaScript function updates
- [ ] Prepare component templates
## Phase 2: Core Implementation
### Step 2.1: HTML Structure Updates
- [ ] Update header structure
- [ ] Modify main content layout
- [ ] Adjust sidebar components
- [ ] Update footer elements
### Step 2.2: CSS Architecture Implementation
- [ ] Implement design token system
- [ ] Update component classes
- [ ] Add responsive design rules
- [ ] Implement interaction styles
### Step 2.3: JavaScript Functionality
- [ ] Update existing functions
- [ ] Add new functions
- [ ] Implement event listeners
- [ ] Add state management
## Phase 3: Integration and Testing
### Step 3.1: Component Integration
- [ ] Test individual components
- [ ] Test component interactions
- [ ] Verify responsive design
- [ ] Check accessibility compliance
### Step 3.2: System Integration
- [ ] Test full system functionality
- [ ] Verify performance requirements
- [ ] Test cross-browser compatibility
- [ ] Validate security measures
## Phase 4: Validation and Deployment
### Step 4.1: Final Validation
- [ ] Compare with source template
- [ ] Verify all requirements met
- [ ] Test user experience
- [ ] Document changes made
### Step 4.2: Deployment
- [ ] Deploy to production
- [ ] Monitor for issues
- [ ] Gather user feedback
- [ ] Document lessons learned
```
### 3.3 Risk Assessment and Mitigation
**Risk Analysis:**
```markdown
# Risk Assessment: [Task Name]
## High Risk Items
### Risk 1: [Risk Description]
- **Probability**: [High / Medium / Low]
- **Impact**: [High / Medium / Low]
- **Mitigation**: [Mitigation strategy]
- **Contingency**: [Contingency plan]
### Risk 2: [Risk Description]
- **Probability**: [High / Medium / Low]
- **Impact**: [High / Medium / Low]
- **Mitigation**: [Mitigation strategy]
- **Contingency**: [Contingency plan]
## Medium Risk Items
### Risk 3: [Risk Description]
- **Probability**: [High / Medium / Low]
- **Impact**: [High / Medium / Low]
- **Mitigation**: [Mitigation strategy]
- **Contingency**: [Contingency plan]
## Low Risk Items
### Risk 4: [Risk Description]
- **Probability**: [High / Medium / Low]
- **Impact**: [High / Medium / Low]
- **Mitigation**: [Mitigation strategy]
- **Contingency**: [Contingency plan]
## Risk Mitigation Strategies
- [ ] **Backup and Recovery**: [Strategy]
- [ ] **Incremental Testing**: [Strategy]
- [ ] **Rollback Plan**: [Strategy]
- [ ] **Monitoring**: [Strategy]
- [ ] **Communication**: [Strategy]
```
## Protocol Implementation Checklist
### Pre-Analysis Phase
- [ ] User requirements fully understood
- [ ] Context and environment analyzed
- [ ] Scope clearly defined
- [ ] Stakeholder expectations set
### Analysis Phase
- [ ] Source template completely analyzed
- [ ] Target template current state documented
- [ ] Gap analysis completed
- [ ] Change requirements identified
### Planning Phase
- [ ] Change strategy defined
- [ ] Implementation plan created
- [ ] Risk assessment completed
- [ ] Resource requirements identified
### Validation Phase
- [ ] Analysis validated with stakeholders
- [ ] Plan reviewed and approved
- [ ] Risks acknowledged and accepted
- [ ] Implementation authorized
## Templates and Tools
### Requirements Analysis Template
```markdown
# Requirements Analysis: [Date] - [Task Name]
## User Request
**Original Request**: [Exact quote from user]
**Clarifications**: [Any clarifications received]
## Explicit Requirements
1. [Requirement 1]
2. [Requirement 2]
3. [Requirement 3]
## Implicit Requirements
1. [Implied requirement 1] - [Reasoning]
2. [Implied requirement 2] - [Reasoning]
## Success Criteria
- **Visual**: [What should it look like?]
- **Functional**: [How should it behave?]
- **Technical**: [What technical standards?]
## Assumptions
1. [Assumption 1]
2. [Assumption 2]
## Questions for User
1. [Question 1]
2. [Question 2]
```
### Analysis Validation Checklist
```markdown
# Analysis Validation: [Task Name]
## Completeness Check
- [ ] All requirements identified
- [ ] All components analyzed
- [ ] All gaps identified
- [ ] All risks assessed
## Accuracy Check
- [ ] Requirements correctly understood
- [ ] Analysis is accurate
- [ ] Gaps are real
- [ ] Risks are valid
## Feasibility Check
- [ ] Requirements are achievable
- [ ] Timeline is realistic
- [ ] Resources are available
- [ ] Constraints are manageable
## Stakeholder Check
- [ ] User expectations aligned
- [ ] Business requirements met
- [ ] Technical constraints considered
- [ ] Quality standards maintained
```
This protocol ensures that every implementation starts with a complete understanding of what needs to be done, preventing the issues that occurred with the Social Ads Generator initial implementation.