Ограниченный контекст
Добавлено: 2019.06.23, 07:32
Здравствуйте. Помогите новичку
Имеем незамысловатый и многим известный бизнес, который хочет регистрировать организации у себя на сайте, заполнять их данными и предоставлять организациям личный кабинет, в котором они могут оплачивать сей личный кабинет, добавлять услуги, которые они предоставляют и редактировать имеющиеся.
Есть так же личный кабинет пользователя сервиса, где он будет выбирать организации, оказывающие ему услуги, писать отзывы и т.д.
Скажите, это ведь три разных "поддомена", так?
1) Делаем Company с набором своих агрегатов (ну точней, наверное, там один агрегат будет Company, включающий в себя всякие сущности Company, Product, Employee, репозиторий на создание, редактирование, добавление услуг, ну и сервисы на это)
2) Делаем CompanyAccount (Для компаний, который хотят работать с бизнесом, там тоже будет сущность (агрегат) Company (без возможности создания, но с редактированием), Product, Employee, но добавятся агрегат Account и другие какие то либо действия, которые может будут в последствии)
3) Делаем User (ну там свой личный кабинет и прочее).
Вот в чем вопрос: Делать 1 - Company и 2 - CompanyAccount и, собственно, проще делать доступ для всех пользователей, но код дублируется в разных доменах или всё "запихать" в один Company и делать потом разделение на инфраструктурном уровне? Использовать они будут одни и те же таблицы в базе (или в API), что с точки зрения возможности потом поддерживать код будет лучше?
Пользователь сайта - User
Пользователь организации - CompanyAccount
Администратор сайта - Company
Извините, если вопрос не туда, а то названий нахватался, но нужно их структуизировать
Имеем незамысловатый и многим известный бизнес, который хочет регистрировать организации у себя на сайте, заполнять их данными и предоставлять организациям личный кабинет, в котором они могут оплачивать сей личный кабинет, добавлять услуги, которые они предоставляют и редактировать имеющиеся.
Есть так же личный кабинет пользователя сервиса, где он будет выбирать организации, оказывающие ему услуги, писать отзывы и т.д.
Скажите, это ведь три разных "поддомена", так?
1) Делаем Company с набором своих агрегатов (ну точней, наверное, там один агрегат будет Company, включающий в себя всякие сущности Company, Product, Employee, репозиторий на создание, редактирование, добавление услуг, ну и сервисы на это)
2) Делаем CompanyAccount (Для компаний, который хотят работать с бизнесом, там тоже будет сущность (агрегат) Company (без возможности создания, но с редактированием), Product, Employee, но добавятся агрегат Account и другие какие то либо действия, которые может будут в последствии)
3) Делаем User (ну там свой личный кабинет и прочее).
Вот в чем вопрос: Делать 1 - Company и 2 - CompanyAccount и, собственно, проще делать доступ для всех пользователей, но код дублируется в разных доменах или всё "запихать" в один Company и делать потом разделение на инфраструктурном уровне? Использовать они будут одни и те же таблицы в базе (или в API), что с точки зрения возможности потом поддерживать код будет лучше?
Пользователь сайта - User
Пользователь организации - CompanyAccount
Администратор сайта - Company
Извините, если вопрос не туда, а то названий нахватался, но нужно их структуизировать