domain-identification-grouping

Groups architectural components into business domains and plans namespace refactoring for service extraction.

Updated Sep 15, 2026
One-click install
npx skills add https://github.com/Peterson-Benhame/agent-skills --skill domain-identification-grouping-peterson-benhame
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: domain-identification-grouping
Source: https://github.com/Peterson-Benhame/agent-skills/tree/main/packages/skills-catalog/skills/%28architecture%29/domain-identification-grouping
Command: npx skills add https://github.com/Peterson-Benhame/agent-skills --skill domain-identification-grouping-peterson-benhame

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? When migrating a monolithic codebase toward a service-based architecture, teams struggle to decide which components belong together and how to draw domain boundaries. This Skill analyzes component responsibilities, vocabulary, and relationships to group them into coherent business domains and produce an actionable namespace refactoring plan. ## Core Features & Use Cases - Domain Identification: Uses business capability analysis, vocabulary analysis, relationship analysis, and stakeholder collaboration to identify 3-7 distinct business domains. - Component Grouping & Validation: Assigns every component to a domain, checks cohesion and boundaries, and flags edge cases like shared or ambiguous components. - Namespace Refactoring Plan: Compares current namespaces against target domain-aligned namespaces and produces a prioritized refactoring plan with steps. - Use Case: Given a ticketing system with scattered billing, support, and reporting components, the Skill groups them into Customer, Ticketing, and Reporting domains and outputs a mapping table such as ss.billing.payment to ss.customer.billing.payment. ## Quick Start Ask the agent to group the components in your codebase into logical business domains and produce a domain map with a namespace refactoring plan.

Frequently Asked Questions about domain-identification-grouping

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I group components into domains for a service-based architecture?

Analyze each component's business capability, vocabulary, and relationships, then assign it to the domain that best fits. Validate cohesion with stakeholders and refactor namespaces so each domain node appears in the component path, such as services/customer/billing/payment.

What is the difference between domain identification and domain analysis?

Domain identification and grouping works with an existing codebase, assigning already-identified components to domains. Domain analysis identifies new domains from scratch during early design. Use this Skill only after components have been identified, sized, and dependency-analyzed.

How many domains should a system have?

Aim for 3 to 7 domains. Fewer than 3 suggests domains are too coarse and may need splitting, while more than 10 indicates over-fragmentation and candidates for merging. Individual domains ideally contain 5 to 8 components.

What should I do with components that do not fit any domain?

Analyze the component's functionality more deeply and check its relationships with other components. Truly cross-cutting functionality like login or notification belongs in a Shared domain, while unclear cases may require creating a new domain or splitting the component.

When should namespace refactoring happen during domain grouping?

Refactor namespaces after domains are identified and validated with stakeholders. Update namespace declarations, imports, and directory structure one domain at a time, running tests incrementally to verify each change.