architecture

Analyze architecture decisions and trade-offs for distributed software systems.

Updated May 5, 2026
One-click install
npx skills add https://github.com/Movchanets/Microservices_Learning --skill architecture-movchanets
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: architecture
Source: https://github.com/Movchanets/Microservices_Learning/tree/main/.agents/skills/architecture
Command: npx skills add https://github.com/Movchanets/Microservices_Learning --skill architecture-movchanets

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill helps you make clear, defensible architecture decisions when a system needs structure, trade-off analysis, and documented rationale instead of guesswork.

Core Features & Use Cases

  • Requirements Discovery: Guides you through scale, team, timeline, domain, and constraint questions before choosing a design.
  • Pattern Selection: Helps compare options like microservices, modular monoliths, event-driven systems, CQRS, and repository patterns.
  • ADR Support: Provides a decision framework for writing architecture decision records with context, alternatives, consequences, and revisit triggers.
  • Use Case: Use it when designing an enterprise platform, evaluating whether microservices are justified, or documenting why one architecture was chosen over another.

Quick Start

Ask the architecture skill to assess your system requirements, compare the main design options, and draft an architecture decision record for the best fit.

Frequently Asked Questions about architecture

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

FAQPage Schema
How do I decide between microservices and a modular monolith for my system architecture?

To choose between microservices and a modular monolith architecture, you must analyze your system's scale, team size, and complexity constraints. Comparing these trade-offs helps validate whether distributed patterns are justified or if a simpler modular design fits better.

What is the best way to document architecture decisions and trade-offs?

The best way to document architecture decisions is by writing Architecture Decision Records (ADRs) that capture context, alternatives, consequences, and revisit triggers. This provides clear, defensible rationale for why a specific design was chosen over simpler alternatives.

When do I need bounded-context design in microservices?

You need bounded-context design in microservices when managing complex enterprise domains that require strict separation of concerns. It helps define clear service boundaries by analyzing domain requirements and validating structure against your team's actual workflow and scale.

How do I evaluate if an event-driven architecture or CQRS pattern fits my requirements?

To evaluate if event-driven architecture or CQRS fits your requirements, compare these patterns against your system's specific scale, timeline, and domain constraints. Pattern selection requires explicit rationale to validate whether the added complexity is justified for your use case.

What constraints should I gather before selecting a distributed system architecture?

Before selecting a distributed system architecture, you should gather constraints around scale, team size, timeline, domain complexity, and simpler alternatives. Requirements discovery ensures your architecture choices are validated against real limitations rather than guesswork.

Why does choosing microservices often introduce unnecessary complexity?

Choosing microservices often introduces unnecessary complexity when distributed patterns are applied without validating clear constraints, team size, or explicit rationale. Without trade-off analysis, simpler alternatives like modular monoliths might better serve the actual system requirements.