designing-architecture

Design software architecture and select patterns with documented trade-offs.

Updated Aug 23, 2026
One-click install
npx skills add https://github.com/Elric412/Leica-cam --skill designing-architecture-elric412
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: designing-architecture
Source: https://github.com/Elric412/Leica-cam/tree/main/.agents/skills/designing-architecture
Command: npx skills add https://github.com/Elric412/Leica-cam --skill designing-architecture-elric412

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill reduces uncertainty and wasted effort when making high-impact architecture decisions by providing a structured workflow, pattern guidance, trade-off templates, and validation checklists to produce repeatable, documented architecture outcomes.

Core Features & Use Cases

  • Architecture Decision Workflow: A step-by-step checklist to capture requirements, assess constraints, choose patterns, define directory structure, and validate decisions.
  • Pattern Selection Guide: Practical recommendations for layered, clean, hexagonal, event-driven, CQRS, modular monolith, and microservices by project and team size.
  • Documentation & Trade-offs: Templates to record context, options considered, trade-offs, chosen decision, and consequences for maintainability and auditability.
  • Use Case: Plan the system architecture and module boundaries for a medium-sized Kotlin Android imaging app, including directory layout and documented trade-offs for future maintainers.

Quick Start

Use the designing-architecture skill to produce a recommended architecture pattern, a proposed directory structure, and a completed trade-off decision document for a medium-sized software project.

Frequently Asked Questions about designing-architecture

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

FAQPage Schema
How do I choose the right software architecture patterns for a new project?

Choosing software architecture patterns requires assessing project constraints, team skills, and scalability needs. This skill provides a structured workflow to evaluate layered, clean, hexagonal, or microservices patterns and validate the selection against specific project requirements.

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

Documenting architecture trade-offs involves recording context, options considered, and consequences. This skill provides templates to produce written decision records that ensure maintainability and auditability for future maintainers of the software system.

How do I plan system design and module decomposition for a medium-sized application?

Planning system design and module decomposition involves capturing requirements and defining directory structure. This skill applies a step-by-step checklist to decompose modules and validate architectural choices for medium-sized greenfield projects or major refactors.

When should I use a modular monolith versus microservices for my system architecture?

Selecting a modular monolith versus microservices depends on project and team size. This skill offers a pattern selection guide with practical recommendations to help decide between event-driven, CQRS, or modular monolith architectures based on your specific scalability constraints.

Can I use this architecture design workflow for major refactoring of existing systems?

Yes, this architecture design workflow applies to both greenfield projects and major refactors. It guides you through capturing requirements, selecting appropriate architectural patterns, and validating decisions against your existing team skills and scalability targets.