UNPKG

sf-agent-framework

Version:

AI Agent Orchestration Framework for Salesforce Development - Two-phase architecture with 70% context reduction

310 lines (254 loc) 5.88 kB
# Requirements Tracker Utility This utility provides comprehensive requirements tracking and traceability throughout the Salesforce development lifecycle. ## Purpose Track and manage requirements from inception to delivery: - Requirements capture and documentation - Change tracking and versioning - Traceability to implementation - Validation and sign-off - Impact analysis ## Core Features ### 1. Requirements Management ```javascript trackRequirement({ id: 'REQ-001', type: 'functional', priority: 'high', description: 'User authentication via SSO', acceptance: { criteria: ['SAML 2.0 support', 'Auto-provisioning'], testCases: ['TC-001', 'TC-002'], }, traceability: { userStories: ['US-101', 'US-102'], components: ['AuthController.cls', 'SSOHandler.cls'], tests: ['AuthControllerTest.cls'], }, }); ``` ### 2. Change Tracking ```javascript trackChange({ requirement: 'REQ-001', change: { type: 'modification', description: 'Add OAuth 2.0 support', requestedBy: 'Product Owner', impact: { effort: '3 days', components: ['AuthController.cls'], risk: 'medium', }, }, approval: { status: 'pending', approvers: ['architect', 'security-lead'], }, }); ``` ### 3. Traceability Matrix ```javascript generateTraceability({ from: 'requirements', to: ['design', 'code', 'tests', 'documentation'], coverage: { showGaps: true, includeMetrics: true, exportFormat: 'excel', }, }); ``` ## Tracking Categories ### Requirement Types - Business Requirements - Functional Requirements - Non-Functional Requirements - Technical Requirements - Compliance Requirements ### Requirement States - Draft - Under Review - Approved - In Development - Testing - Completed - Deferred ### Traceability Links - User Stories - Design Documents - Code Components - Test Cases - Deployment Items ## Usage Examples ### Basic Requirements Tracking ```bash # Add new requirement reqTracker add --type functional --priority high # Update requirement status reqTracker update REQ-001 --status "In Development" # Generate traceability report reqTracker report --format html ``` ### Bulk Operations ```yaml import: source: requirements.xlsx mapping: id: Column A description: Column B priority: Column C acceptance: Column D-G validation: required: [id, description, priority] unique: [id] ``` ## Reports and Analytics ### Coverage Report ``` Requirements Coverage Report =========================== Total Requirements: 156 Implemented: 142 (91%) In Progress: 10 (6%) Not Started: 4 (3%) By Priority: High: 100% implemented Medium: 89% implemented Low: 75% implemented ``` ### Traceability Matrix | Requirement | User Story | Design | Code | Tests | Status | | ----------- | ---------- | ------ | ---- | ----- | -------- | | REQ-001 | US-101 | | | | Complete | | REQ-002 | US-102 | | | | Testing | | REQ-003 | US-103 | | | - | In Dev | ### Change Impact Analysis ```json { "changeRequest": "CR-045", "affectedRequirements": ["REQ-001", "REQ-015", "REQ-023"], "impact": { "components": 12, "testCases": 34, "effort": "5 days", "risk": "medium", "dependencies": ["Integration API", "Auth Service"] } } ``` ## Configuration ### Requirement Schema ```yaml requirementSchema: fields: id: type: string pattern: "REQ-\\d{3}" required: true unique: true priority: type: enum values: [critical, high, medium, low] required: true category: type: enum values: [functional, non-functional, technical, compliance] customFields: businessValue: type: number min: 1 max: 10 complianceMapping: type: array items: string ``` ### Workflow Rules ```javascript // Define requirement workflow configureWorkflow({ transitions: { draft: ['under_review'], under_review: ['approved', 'draft'], approved: ['in_development'], in_development: ['testing', 'approved'], testing: ['completed', 'in_development'], completed: ['closed'], }, guards: { approve: (req) => req.approvals.length >= 2, complete: (req) => req.testsPassed === true, }, }); ``` ## Integration Features ### Version Control Integration ```javascript // Link requirements to commits linkToCommit({ requirement: 'REQ-001', commit: 'abc123', message: 'Implement SSO authentication', files: ['AuthController.cls', 'SSOHandler.cls'], }); ``` ### Test Management ```javascript // Track test coverage trackTestCoverage({ requirement: 'REQ-001', tests: { unit: ['AuthTest.cls', 'SSOTest.cls'], integration: ['E2E_Login_Test'], manual: ['UAT_SSO_Scenarios'], }, coverage: 95, }); ``` ## Validation and Compliance ### Requirements Quality ```javascript validateRequirements({ checks: { completeness: true, clarity: true, testability: true, consistency: true, feasibility: true, }, report: { issues: true, suggestions: true, score: true, }, }); ``` ### Compliance Tracking Map requirements to: - Regulatory standards - Industry requirements - Security policies - Audit controls ## Best Practices 1. **Clear Requirements** - Use templates - Include acceptance criteria - Make them testable - Avoid ambiguity 2. **Maintain Traceability** - Link all artifacts - Update regularly - Review coverage - Document gaps 3. **Change Management** - Track all changes - Assess impact - Get approvals - Update traces 4. **Regular Reviews** - Validate completeness - Check implementation - Verify testing - Confirm delivery This utility ensures complete requirements lifecycle management for Salesforce projects.