| name | architecture |
| description | Master architectural design with SOLID principles, design patterns, microservices, and event-driven systems. Learn to design scalable backend systems. |
| sasmp_version | 2.0.0 |
| bonded_agent | 04-architecture-patterns |
| bond_type | PRIMARY_BOND |
| atomic_operations | ["PATTERN_SELECTION","ARCHITECTURE_DESIGN","SERVICE_DECOMPOSITION","TRADE_OFF_ANALYSIS"] |
| parameter_validation | {"query":{"type":"string","required":true,"minLength":5,"maxLength":3000},"architecture_type":{"type":"string","enum":["monolith","microservices","serverless","event-driven"],"required":false},"scale":{"type":"string","enum":["startup","growth","enterprise"],"required":false}} |
| retry_logic | {"max_attempts":2,"backoff":"exponential","initial_delay_ms":2000} |
| logging_hooks | {"on_invoke":"skill.architecture.invoked","on_success":"skill.architecture.completed","on_error":"skill.architecture.failed"} |
| exit_codes | {"SUCCESS":0,"INVALID_INPUT":1,"OVER_ENGINEERING":2,"ANTI_PATTERN_DETECTED":3} |
System Architecture Skill
Bonded to: architecture-patterns-agent
Quick Start
"Help me decompose this monolith into microservices"
"Which design pattern should I use for notifications?"
"Design an event-driven architecture for order processing"
Instructions
- Analyze Requirements: Understand system needs and constraints
- Apply SOLID: Use SOLID principles for clean design
- Select Patterns: Choose appropriate design patterns
- Design Architecture: Select monolithic or distributed approach
- Validate Design: Review for scalability and maintainability
Architecture Selection Matrix
| Style | Best For | Team Size | Complexity | Scale |
|---|
| Monolith | MVPs, small teams | 1-10 | Low | Vertical |
| Modular Monolith | Growing apps | 5-20 | Medium | Vertical |
| Microservices | Large teams | 20+ | High | Horizontal |
| Serverless | Variable load | 1-15 | Medium | Auto |
| Event-Driven | Real-time, async | 10+ | High | Horizontal |
Decision Tree
Team size & complexity?
│
├─→ Small team (1-5) → Monolith
│
├─→ Growing team (5-20)
│ ├─→ Clear domain boundaries → Modular Monolith
│ └─→ Variable load → Serverless
│
└─→ Large team (20+)
├─→ Real-time/async heavy → Event-Driven
└─→ Independent scaling needed → Microservices
SOLID Principles
| Principle | Description | Violation Sign |
|---|
| Single Responsibility | One reason to change |