macro-architecture
Installation
SKILL.md
Macro Architecture
Two complementary system-level tools that work at the same altitude — what shape should this system take?
- Style selection — given a system/service/feature and its driving requirements, which macro architecture style (or hybrid) fits, and what does the book warn about if you pick it? (from Software Architecture Patterns, 2nd ed., Mark Richards.)
- Hard-parts decomposition — once you're decomposing, merging, or re-shaping a system, which way do the trade-offs actually push, anchored in the current code and runtime? (from Software Architecture: The Hard Parts, Ford & Richards.)
Use Style selection when choosing an overall shape for something new (or sanity-checking an existing one). Use Hard-parts decomposition when the decision is whether to pull a system apart or put it back together. They compose: pick a style, then stress-test the decomposition.
Distinct from architecture-lens (code-level trade-offs/connascence and layer placement/cohesion in the code under your hands), domain-driven-design (bounded-context boundaries, ubiquitous language, cross-context integration patterns), and design-patterns (GoF code patterns). This skill picks the MACRO shape; those review the code and contexts within it.
Select the decision
| Need | Read |
|---|---|
| Choose or assess an overall architecture style | references/style-selection.md |
| Split, merge, or reshape services and data ownership | references/decomposition.md |
| Both | Select the style, then assess only its unresolved decomposition tradeoffs |