Перейти к основному содержимому

Обзор экосистемы

Зачем нужно

Документ задаёт продуктовую рамку Systematika: что такое экосистема, какие у неё 7 доменов, какие правила пересекают границы доменов и где искать ответы на вопросы разработчика и продакта.

Что такое Systematika

Systematika — это связанная экосистема публичных, учебных, клиентских, операционных, олимпиадных и управленческих продуктов вокруг детского образования.

Экосистема состоит из 7 доменов:

ДоменЗона ответственности
identityАккаунты, аутентификация, OAuth/OIDC, RBAC, семьи, организации, безопасность
storefrontПубличная витрина, каталог, лендинги, публичные профили, факты, формы
crmКлиентская карточка, лиды, сделки, биллинг, entitlements, выплаты преподавателям
lmsКурсы, уроки, дорожная карта, занятия, посещаемость, прогресс, тетради, проекты, чат с преподавателем, геймификация
task-bankЗадачи, версии, таксономия, варианты, решения, проверка, попытки, evidence
competitionsОлимпиады, сезоны, туры, регистрации, результаты, награды, внешние преподаватели
managementАналитика, dashboards, цели, диагностика, рекомендации, задачи команд, планирование

Главные правила экосистемы

  • Каждый домен владеет своими данными, правилами и API.
  • Один и тот же факт не может иметь двух владельцев.
  • Storefront — read-model и не владеет коммерческими, учебными и пользовательскими сущностями.
  • Identity не владеет бизнес-карточкой клиента, прогрессом, биллингом и публичной упаковкой.
  • LMS владеет учебной частью занятия (attendance, progress, evidence), CRM владеет финансовой частью (entitlement consumption, биллинг).
  • Reference-данные (subject, level, format, grade_range) принадлежат platform-слою, а не отдельному домену.
  • Cross-domain интеграции описываются в ../integrations/, а не дублируются внутри доменов.

Что описывает экосистема

Эта папка владеет только продуктовой рамкой.

ДокументЧто описывает
overview.mdэтот документ
principles.mdинварианты и запреты, обязательные для всех доменов
glossary.mdканонические термины, сгруппированные по 7 доменам
domain-map.mdкарта 7 доменов и границы между ними
ownership.mdкакая сущность кому принадлежит
integrations.mdпринципы межсервисных связей и ссылка на ../integrations/
user-journeys.mdсквозные пользовательские пути через несколько доменов
acceptance.mdкритерии готовности экосистемы

Что не описывает экосистема

  • технический стек, API-конвенции, событийную шину — это platform-слой;
  • архитектурные решения с обоснованиями — это decisions;
  • внутренние правила и сущности конкретных доменов — это domains;
  • cross-domain контракты — это integrations;
  • переход от текущего состояния — это migration.

Связи с остальными слоями

  • Любая ссылка на доменную сущность в ecosystem/ должна совпадать с определением в domains/<name>/data-model.md.
  • Любое правило в ecosystem/principles.md должно соблюдаться всеми доменами.
  • Если доменная спецификация конфликтует с экосистемным правилом, исправляется доменная спецификация или явно меняется правило в ecosystem/.