🏗️ Архитектура и проектирование
18 статей
Saga: распределённые транзакции в микросервисах — choreography vs orchestration
Разбор паттерна Saga для распределённых транзакций в микросервисной архитектуре: хореография против оркестрации, компенсирующие транзакции и Outbox Pattern на примере заказа и оплаты.
Event Sourcing: хранение состояния как цепочка событий
Разбираем паттерн Event Sourcing для системных аналитиков и архитекторов: хранение состояния через цепочку событий вместо UPDATE, связка с CQRS, Event Store, пересчёт баланса через replay и когда применять в микросервисной архитектуре.
Apache Kafka для системного аналитика: брокеры сообщений, топики, партиции
Как работает Apache Kafka — брокеры, топики, партиции, producer/consumer, ключи партицирования и Dead Letter Queue. Разбор для системных аналитиков с диаграммами и примерами требований в ТЗ.
DDD: bounded context, aggregate и ubiquitous language — разбор на примере банковской системы
Разбор bounded context, aggregate и ubiquitous language в DDD на сквозном примере кредитного конвейера: от заявки до выдачи с цветными диаграммами и таблицами
Как писать ТЗ для разработчика: структура, шаблоны и частые ошибки
Как составить техническое задание для программиста: структура ТЗ, готовый шаблон, примеры формулировок и чеклист типичных ошибок аналитика
Функциональные и нефункциональные требования: шаблоны, примеры и типичные ошибки
Шаблоны функциональных требований с примерами, разбор НФТ, готовые формулировки и типичные ошибки системных аналитиков
API Gateway: зачем он нужен и как проектировать
API Gateway простыми словами: что это, зачем нужен в микросервисной архитектуре, как проектировать маршрутизацию, авторизацию, rate limiting, и какие ошибки убивают производительность шлюза.
User Story и Use Case: как системному аналитику писать требования по шаблону
User Story и Use Case на практике: шаблоны, примеры, критерии приёмки, диаграмма Use Case и типичные ошибки системного аналитика
CQRS: что это и как разделять чтение и запись
CQRS простыми словами: что такое Command Query Responsibility Segregation, чем он отличается от классической CRUD-архитектуры, как связан с DDD и Event Sourcing, когда нужен и когда категорически противопоказан.
Event-Driven Architecture: событийная архитектура для системного аналитика
Что такое Event-Driven Architecture (EDA), как работают события, брокеры и подписчики, чем событийный подход отличается от классического request/response. Подробно, с диаграммами и примерами.
ФТ и НФТ: примеры функциональных и нефункциональных требований, шаблоны и типичные ошибки
Примеры функциональных и нефункциональных требований с шаблонами, классификацией НФТ и разбором типичных ошибок аналитиков
Bounded context, aggregate и ubiquitous language: разбор DDD
Что такое bounded context, aggregate и ubiquitous language в DDD — простыми словами, с примерами и диаграммой контекстов.
ADR: Architecture Decision Records — зачем и как документировать архитектурные решения
Architecture Decision Records (ADR) — что это за артефакт, из чего состоит, как писать и внедрять в команде. Шаблоны, примеры и типичные ошибки
Модульный монолит: что это, архитектура и примеры
Что такое модульный монолит, как проектировать модули и bounded contexts, чем отличается от микросервисов — руководство с диаграммами.
Что такое DDD (Domain-Driven Design): принципы и примеры
Что такое Domain-Driven Design (DDD) простыми словами: зачем нужен, ключевые принципы, bounded context и пример проектирования домена.
Монолит vs Микросервисы: что выбрать в 2026 году
Подробное сравнение монолитной и микросервисной архитектуры: плюсы, минусы, когда выбирать монолит, а когда переходить на микросервисы
Нефункциональные требования (НФТ): что это, типы и примеры
Нефункциональные требования простыми словами: классификация НФТ, типы, примеры производительности, безопасности, надёжности и шаблон для аналитика
Ресурсы для системных аналитиков и архитекторов
Коллекция ресурсов с базовыми понятиями и стандартами для проектирования систем