decomposition-planning-roadmap
This skill generates phased decomposition roadmaps and step-by-step migration plans for extracting services from monolithic applications. Use it when planning the sequence and prioritization of service extraction, creating architecture stories for decomposition work, or establishing a timeline and dependencies for transitioning to distributed architectures based on component analysis and risk assessment.
git clone --depth 1 https://github.com/tech-leads-club/agent-skills /tmp/decomposition-planning-roadmap && cp -r /tmp/decomposition-planning-roadmap/packages/skills-catalog/skills/(architecture)/decomposition-planning-roadmap ~/.claude/skills/decomposition-planning-roadmapSKILL.md
# Decomposition Planning and Roadmap This skill creates structured decomposition plans and roadmaps to guide the migration from monolithic to distributed architectures, prioritizing work and tracking progress through decomposition patterns. ## How to Use ### Quick Start Request creation of a decomposition plan: - **"Create a decomposition roadmap for this codebase"** - **"Plan the decomposition migration strategy"** - **"Prioritize decomposition work based on component analysis"** - **"Create a step-by-step decomposition plan"** ### Usage Examples **Example 1: Complete Roadmap** ``` User: "Create a decomposition roadmap for this codebase" The skill will: 1. Analyze current codebase state 2. Identify decomposition patterns to apply 3. Prioritize work based on risk and value 4. Create phased roadmap 5. Generate architecture stories 6. Estimate effort and dependencies ``` **Example 2: Prioritized Plan** ``` User: "Prioritize decomposition work based on component analysis" The skill will: 1. Review component inventory and dependencies 2. Assess risk and value for each pattern 3. Prioritize patterns by impact 4. Create prioritized work plan ``` **Example 3: Phase Planning** ``` User: "Create a phased decomposition plan" The skill will: 1. Group decomposition patterns into phases 2. Identify dependencies between phases 3. Create phase timeline 4. Define phase success criteria ``` ### Step-by-Step Process 1. **Assess Current State**: Analyze codebase and identify what's been done 2. **Identify Patterns**: Determine which decomposition patterns to apply 3. **Prioritize Work**: Rank patterns by risk, value, and dependencies 4. **Create Roadmap**: Build phased plan with milestones 5. **Generate Stories**: Create architecture stories for tracking 6. **Track Progress**: Monitor progress through decomposition phases ## When to Use Apply this skill when: - Starting a decomposition effort - Planning migration from monolith to distributed architecture - Prioritizing decomposition work - Creating architecture stories for decomposition - Tracking progress through decomposition patterns - Need structured approach to decomposition - Want to estimate effort and dependencies ## Core Concepts ### Decomposition Pattern Sequence The six component-based decomposition patterns should be applied in sequence: 1. **Identify and Size Components** - Understand what you have 2. **Gather Common Domain Components** - Find duplicates 3. **Flatten Components** - Remove orphaned classes 4. **Determine Component Dependencies** - Assess coupling 5. **Create Component Domains** - Group into domains 6. **Create Domain Services** - Extract to services ### Phased Approach Decomposition typically follows phases: **Phase 1: Analysis & Preparation** (Patterns 1-4) - Component identification and sizing - Common component detection - Component flattening - Dependency analysis **Phase 2: Domain Organization** (Pattern 5) - Domain identification - Component grouping - Namespace refactoring **Phase 3: Service Extraction** (Pattern 6) - Domain service creation - Service extraction - API boundary definition ### Prioritization Factors When prioritizing decomposition work, consider: - **Risk**: Low risk = easier to extract, fewer dependencies - **Value**: High value = business-critical, high impact - **Dependencies**: Can this be done independently? - **Complexity**: Simple = fewer components, clear boundaries - **Coupling**: Low coupling = easier to extract ## Analysis Process ### Phase 1: Assess Current State Analyze what's already been done: 1. **Check Component Inventory** - Have components been identified and sized? - Is there a component inventory document? - Are oversized components identified? 2. **Check Common Component Analysis** - Have common domain components been identified? - Are consolidation opportunities documented? - Has coupling impact been analyzed? 3. **Check Component Structure** - Have components been flattened? - Are there orphaned classes? - Is component structure clean? 4. **Check Dependency Analysis** - Have component dependencies been mapped? - Is coupling analysis complete? - Is feasibility assessed? 5. **Check Domain Identification** - Have domains been identified? - Are components grouped into domains? - Are namespaces aligned with domains? 6. **Check Service Extraction** - Have any services been extracted? - Are domain services created? - Is service-based architecture in place? **Output**: Current state assessment showing what's done and what's remaining ### Phase 2: Identify Patterns to Apply Determine which decomposition patterns need to be applied: 1. **Review Pattern Prerequisites** - Pattern 1: Always needed (foundation) - Pattern 2: Needed if common components exist - Pattern 3: Needed if components have hierarchy - Pattern 4: Always needed (feasibility check) - Pattern 5: Needed before service extraction - Pattern 6: Final step (service extraction) 2. **Check Pattern Completion** - Which patterns are complete? - Which patterns are in progress? - Which patterns haven't started? 3. **Identify Missing Patterns** - What patterns still need to be applied? - What's blocking pattern application? - What dependencies exist? **Output**: List of patterns to apply with status ### Phase 3: Prioritize Work Prioritize decomposition patterns and work items: 1. **Assess Risk** - Low Risk: Infrastructure components, standalone functionality - Medium Risk: Domain components with some dependencies - High Risk: Core business logic, high coupling 2. **Assess Value** - High Value: Business-critical, high impact, frequent changes - Medium Value: Important but not critical - Low Value: Nice to have, low impact 3. **Assess Dependencies** - Independent: Can be done without other work - Dependent: Requires other patterns/work first - Blocking: Blocks other work
Audit and improve web accessibility following WCAG 2.1 guidelines. Use when asked to "improve accessibility", "a11y audit", "WCAG compliance", "screen reader support", "keyboard navigation", or "make accessible". Do NOT use for SEO (use seo), performance (use core-web-vitals), or comprehensive site audits covering multiple areas (use web-quality-audit).
When the user wants to build an AI-powered outreach system, write cold emails, improve deliverability, or scale personalized outreach. Also use when the user mentions 'cold email,' 'cold outreach,' 'outreach automation,' 'Instantly,' 'Smartlead,' 'Clay,' 'email sequences,' 'deliverability,' 'personalization at scale,' 'reply rate,' or 'outreach stack.' This skill covers the complete AI cold outreach system from signal detection through conversion. Do NOT use for technical implementation, code review, or software architecture.
When the user wants to price an AI product, choose a charge metric, design pricing tiers, or optimize margins. Also use when the user mentions 'AI pricing,' 'usage-based pricing,' 'consumption pricing,' 'outcome pricing,' 'BYOK,' 'bring your own key,' 'per-seat pricing,' 'pricing tiers,' 'AI margins,' 'cost per token,' or 'pricing model.' This skill covers pricing strategy, packaging, and margin management for AI-native products. Do NOT use for technical implementation, code review, or software architecture.
When the user wants to deploy AI sales development reps, automate sales qualification, build signal-to-action routing, or design AI agent architecture for sales. Also use when the user mentions 'AI SDR,' 'AI sales agent,' 'automated qualification,' 'signal routing,' 'sales automation,' '11x,' 'Artisan,' 'AiSDR,' 'AI BDR,' or 'autonomous sales.' This skill covers AI SDR deployment, qualification automation, and agent architecture for sales development. Do NOT use for technical implementation, code review, or software architecture.
When the user wants to build programmatic SEO with AI, create competitor alternative pages, optimize for AI Overviews, or scale content production. Also use when the user mentions 'SEO,' 'programmatic SEO,' 'AI content,' 'competitor alternative pages,' 'AI Overviews,' 'search optimization,' 'DataForSEO,' 'content at scale,' 'keyword strategy,' or 'organic traffic.' This skill covers AI-powered SEO strategy from keyword research through programmatic page generation. Do NOT use for technical implementation, code review, or software architecture.
When the user wants to create UGC ad campaigns, recruit UGC creators, generate AI UGC content, or scale with user-generated content. Also use when the user mentions 'UGC,' 'user-generated content,' 'creator ads,' 'Spark Ads,' 'whitelisting,' 'AI UGC,' 'Arcads,' 'Creatify,' 'creator brief,' or 'UGC testing.' This skill covers the UGC growth framework from creator recruitment through AI-powered scaling. Do NOT use for technical implementation, code review, or software architecture.
Expert AWS Cloud Advisor for architecture design, security review, and implementation guidance. Leverages AWS MCP tools for accurate, documentation-backed answers. Use when user asks about AWS architecture, security, service selection, migrations, troubleshooting, or learning AWS. Triggers on AWS, Lambda, S3, EC2, ECS, EKS, DynamoDB, RDS, CloudFormation, CDK, Terraform, Serverless, SAM, IAM, VPC, API Gateway, or any AWS service. Do NOT use for non-AWS cloud providers or general infrastructure without AWS context.
Apply modern web development best practices for security, compatibility, and code quality. Use when asked to "apply best practices", "security audit", "modernize code", "code quality review", or "check for vulnerabilities". Do NOT use for accessibility (use web-accessibility), SEO (use seo), performance (use core-web-vitals), or comprehensive multi-area audits (use web-quality-audit).