Что такое система
Система — это совокупность взаимодействующих между собой компонентов.
В систему входят не только компоненты, которые разрабатываются вашей командой. Так, какой-то компонент может использовать сторонний платёжный сервис (Stripe, PayPal и т. п.), и тогда последний считается частью системы. При проектировании типичного клиент-серверного приложения база данных также является частью этой системы.
В событийно-ориентированной архитектуре события служат механизмом взаимодействия между компонентами. Каждый компонент публикует и/или принимает определённый набор событий, и совокупность таких событий образует единое пространство событий.
Как только между компонентом системы и внешним компонентом устанавливается обмен событиями, граница системы автоматически расширяется, делая внешний компонент частью системы. Например, как только компонент системы подписывается на события сервиса биржевых котировок, последний становится частью этой системы. Поэтому граница пространства событий никогда не выходит за границу системы.
Подчеркнём, что взаимодействие через события не является необходимым условием принадлежности к системе. База данных может быть компонентом системы, и, при этом, обычно не обменивается событиями с другими компонентами.