architecture-patterns

Guide software architecture pattern selection and Event Modeling for complex business domains.

8|2|Updated Apr 16, 2026
One-click install
npx skills add https://github.com/SebastienDegodez/skraft-plugin --skill architecture-patterns-sebastiendegodez
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: architecture-patterns
Source: https://github.com/SebastienDegodez/skraft-plugin/tree/main/plugins/skills/architecture-patterns
Command: npx skills add https://github.com/SebastienDegodez/skraft-plugin --skill architecture-patterns-sebastiendegodez

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve?

This Skill helps in selecting architecture patterns for a new feature, performing Event Modeling, defining bounded contexts, choosing DDD tactical patterns, evaluating pattern fitness, or understanding how patterns compose.

Core Features & Use Cases

  • Architecture Pattern Catalog: A comprehensive catalog of architectural patterns, including Event Modeling, DDD Strategic and Tactical Design, Clean Architecture, CQRS, and Event Sourcing.
  • Event Modeling Methodology: A step-by-step guide to model system behavior as a timeline of events, including core concepts, timeline structure, and common mistakes.
  • Domain-Driven Design (DDD) Strategic Design: Guidance on identifying bounded contexts, context mapping patterns, subdomain classification, and ubiquitous language.
  • DDD Tactical Patterns: Detailed explanations of Aggregate, Entity, Value Object, Domain Event, Repository, Domain Service, and Specification.
  • Clean Architecture: Information on the layer structure, dependency rules, use case boundary, and application interface rules.
  • CQRS: Introduction to Command Query Responsibility Segregation, when to apply it, command side, query side, simple vs. full CQRS, and query projection patterns.
  • Event Sourcing: A guide on decision heuristics, use cases, aggregate event lifecycle, event store, projections and read models, snapshots, sagas, upcasting, conflict resolution, eventual consistency mitigation, outbox pattern, and reservation pattern.

Quick Start

Use the architecture-patterns skill to model an Event Modeling timeline for a feature 'Order Processing'.

Frequently Asked Questions about architecture-patterns

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

FAQPage Schema
When should I use Event Sourcing and CQRS in my software architecture?

Event Sourcing and CQRS suit complex business domains needing audit trails, temporal queries, and read/write divergences. They provide an event store for decision making and separate command execution from query projections to optimize system behavior.

How do I model system behavior using Event Modeling?

Event Modeling maps system behavior as a timeline of events. You structure the timeline to visualize workflows, identify core concepts, and avoid common mistakes during domain modeling to ensure accurate event-driven architecture.

What is the difference between DDD Strategic and Tactical design?

DDD Strategic design focuses on identifying bounded contexts, context mapping, and subdomain classification. DDD Tactical patterns detail implementation using Aggregates, Entities, Value Objects, Domain Events, Repositories, Domain Services, and Specifications.

How does Clean Architecture enforce dependency rules?

Clean Architecture enforces dependency rules by structuring layers so dependencies point inward toward the domain. It defines use case boundaries and application interface rules to isolate business logic from external frameworks and delivery mechanisms.

Do I need to understand domain modeling to use these architecture patterns?

Yes, applying these architecture patterns requires understanding software architecture principles and domain modeling techniques. They target complex business domains where structuring bounded contexts and ubiquitous language is essential.

What are the limitations of using CQRS and Event Sourcing?

CQRS and Event Sourcing introduce eventual consistency, requiring mitigation strategies like outbox and reservation patterns. They also demand upcasting for event schema changes, conflict resolution, and managing snapshots for aggregate event lifecycle optimization.