Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

step-11-component-strategy.md 8.5KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249
  1. # Step 11: Component Strategy
  2. ## MANDATORY EXECUTION RULES (READ FIRST):
  3. - 🛑 NEVER generate content without user input
  4. - 📖 CRITICAL: ALWAYS read the complete step file before taking any action - partial understanding leads to incomplete decisions
  5. - 🔄 CRITICAL: When loading next step with 'C', ensure the entire file is read and understood before proceeding
  6. - ✅ ALWAYS treat this as collaborative discovery between UX facilitator and stakeholder
  7. - 📋 YOU ARE A UX FACILITATOR, not a content generator
  8. - 💬 FOCUS on defining component library strategy and custom components
  9. - 🎯 COLLABORATIVE component planning, not assumption-based design
  10. - ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
  11. - ✅ YOU MUST ALWAYS WRITE all artifact and document content in `{document_output_language}`
  12. ## EXECUTION PROTOCOLS:
  13. - 🎯 Show your analysis before taking any action
  14. - ⚠️ Present A/P/C menu after generating component strategy content
  15. - 💾 ONLY save when user chooses C (Continue)
  16. - 📖 Update output file frontmatter, adding this step to the end of the list of stepsCompleted.
  17. - 🚫 FORBIDDEN to load next step until C is selected
  18. ## COLLABORATION MENUS (A/P/C):
  19. This step will generate content and present choices:
  20. - **A (Advanced Elicitation)**: Use discovery protocols to develop deeper component insights
  21. - **P (Party Mode)**: Bring multiple perspectives to define component strategy
  22. - **C (Continue)**: Save the content to the document and proceed to next step
  23. ## PROTOCOL INTEGRATION:
  24. - When 'A' selected: Invoke the `bmad-advanced-elicitation` skill
  25. - When 'P' selected: Invoke the `bmad-party-mode` skill
  26. - PROTOCOLS always return to this step's A/P/C menu
  27. - User accepts/rejects protocol changes before proceeding
  28. ## CONTEXT BOUNDARIES:
  29. - Current document and frontmatter from previous steps are available
  30. - Design system choice from step 6 determines available components
  31. - User journeys from step 10 identify component needs
  32. - Focus on defining custom components and implementation strategy
  33. ## YOUR TASK:
  34. Define component library strategy and design custom components not covered by the design system.
  35. ## COMPONENT STRATEGY SEQUENCE:
  36. ### 1. Analyze Design System Coverage
  37. Review what components are available vs. needed:
  38. "Based on our chosen design system [design system from step 6], let's identify what components are already available and what we need to create custom.
  39. **Available from Design System:**
  40. [List of components available in chosen design system]
  41. **Components Needed for {{project_name}}:**
  42. Looking at our user journeys and design direction, we need:
  43. - [Component need 1 from journey analysis]
  44. - [Component need 2 from design requirements]
  45. - [Component need 3 from core experience]
  46. **Gap Analysis:**
  47. - [Gap 1 - needed but not available]
  48. - [Gap 2 - needed but not available]"
  49. ### 2. Design Custom Components
  50. For each custom component needed, design thoroughly:
  51. **For each custom component:**
  52. "**[Component Name] Design:**
  53. **Purpose:** What does this component do for users?
  54. **Content:** What information or data does it display?
  55. **Actions:** What can users do with this component?
  56. **States:** What different states does it have? (default, hover, active, disabled, error, etc.)
  57. **Variants:** Are there different sizes or styles needed?
  58. **Accessibility:** What ARIA labels and keyboard support needed?
  59. Let's walk through each custom component systematically."
  60. ### 3. Document Component Specifications
  61. Create detailed specifications for each component:
  62. **Component Specification Template:**
  63. ```markdown
  64. ### [Component Name]
  65. **Purpose:** [Clear purpose statement]
  66. **Usage:** [When and how to use]
  67. **Anatomy:** [Visual breakdown of parts]
  68. **States:** [All possible states with descriptions]
  69. **Variants:** [Different sizes/styles if applicable]
  70. **Accessibility:** [ARIA labels, keyboard navigation]
  71. **Content Guidelines:** [What content works best]
  72. **Interaction Behavior:** [How users interact]
  73. ```
  74. ### 4. Define Component Strategy
  75. Establish overall component library approach:
  76. "**Component Strategy:**
  77. **Foundation Components:** (from design system)
  78. - [Foundation component 1]
  79. - [Foundation component 2]
  80. **Custom Components:** (designed in this step)
  81. - [Custom component 1 with rationale]
  82. - [Custom component 2 with rationale]
  83. **Implementation Approach:**
  84. - Build custom components using design system tokens
  85. - Ensure consistency with established patterns
  86. - Follow accessibility best practices
  87. - Create reusable patterns for common use cases"
  88. ### 5. Plan Implementation Roadmap
  89. Define how and when to build components:
  90. "**Implementation Roadmap:**
  91. **Phase 1 - Core Components:**
  92. - [Component 1] - needed for [critical flow]
  93. - [Component 2] - needed for [critical flow]
  94. **Phase 2 - Supporting Components:**
  95. - [Component 3] - enhances [user experience]
  96. - [Component 4] - supports [design pattern]
  97. **Phase 3 - Enhancement Components:**
  98. - [Component 5] - optimizes [user journey]
  99. - [Component 6] - adds [special feature]
  100. This roadmap helps prioritize development based on user journey criticality."
  101. ### 6. Generate Component Strategy Content
  102. Prepare the content to append to the document:
  103. #### Content Structure:
  104. When saving to document, append these Level 2 and Level 3 sections:
  105. ```markdown
  106. ## Component Strategy
  107. ### Design System Components
  108. [Analysis of available design system components based on conversation]
  109. ### Custom Components
  110. [Custom component specifications based on conversation]
  111. ### Component Implementation Strategy
  112. [Component implementation strategy based on conversation]
  113. ### Implementation Roadmap
  114. [Implementation roadmap based on conversation]
  115. ```
  116. ### 7. Present Content and Menu
  117. Show the generated component strategy content and present choices:
  118. "I've defined the component strategy for {{project_name}}. This balances using proven design system components with custom components for your unique needs.
  119. **Here's what I'll add to the document:**
  120. [Show the complete markdown content from step 6]
  121. **What would you like to do?**
  122. [A] Advanced Elicitation - Let's refine our component strategy
  123. [P] Party Mode - Bring technical perspectives on component design
  124. [C] Continue - Save this to the document and move to UX patterns
  125. ### 8. Handle Menu Selection
  126. #### If 'A' (Advanced Elicitation):
  127. - Invoke the `bmad-advanced-elicitation` skill with the current component strategy content
  128. - Process the enhanced component insights that come back
  129. - Ask user: "Accept these improvements to the component strategy? (y/n)"
  130. - If yes: Update content with improvements, then return to A/P/C menu
  131. - If no: Keep original content, then return to A/P/C menu
  132. #### If 'P' (Party Mode):
  133. - Invoke the `bmad-party-mode` skill with the current component strategy
  134. - Process the collaborative component insights that come back
  135. - Ask user: "Accept these changes to the component strategy? (y/n)"
  136. - If yes: Update content with improvements, then return to A/P/C menu
  137. - If no: Keep original content, then return to A/P/C menu
  138. #### If 'C' (Continue):
  139. - Append the final content to `{planning_artifacts}/ux-design-specification.md`
  140. - Update frontmatter: append step to end of stepsCompleted array
  141. - Load `./step-12-ux-patterns.md`
  142. ## APPEND TO DOCUMENT:
  143. When user selects 'C', append the content directly to the document using the structure from step 6.
  144. ## SUCCESS METRICS:
  145. ✅ Design system coverage properly analyzed
  146. ✅ All custom components thoroughly specified
  147. ✅ Component strategy clearly defined
  148. ✅ Implementation roadmap prioritized by user need
  149. ✅ Accessibility considered for all components
  150. ✅ A/P/C menu presented and handled correctly
  151. ✅ Content properly appended to document when C selected
  152. ## FAILURE MODES:
  153. ❌ Not analyzing design system coverage properly
  154. ❌ Custom components not thoroughly specified
  155. ❌ Missing accessibility considerations
  156. ❌ Component strategy not aligned with user journeys
  157. ❌ Implementation roadmap not prioritized effectively
  158. ❌ Not presenting A/P/C menu after content generation
  159. ❌ Appending content without user selecting 'C'
  160. ❌ **CRITICAL**: Reading only partial step file - leads to incomplete understanding and poor decisions
  161. ❌ **CRITICAL**: Proceeding with 'C' without fully reading and understanding the next step file
  162. ❌ **CRITICAL**: Making decisions without complete understanding of step requirements and protocols
  163. ## NEXT STEP:
  164. After user selects 'C' and content is saved to document, load `./step-12-ux-patterns.md` to define UX consistency patterns.
  165. Remember: Do NOT proceed to step-12 until user explicitly selects 'C' from the A/P/C menu and content is saved!