问题
I am having difficulty in attempting to ascertain which domain within a given model can be considered the "core domain". It can be tricky especially if there are several domains which are core to the function of a business.
I would like someone to outline a systematic process to single out the core domain when dealing with a system that has multiple candidates.
回答1:
Core domain - the most important subdomain, which is essential for the business. Without it the business would fail. If you ever need to pick the first solution to implement - start with the core domain.
Supporting subdomain - subdomain, which is less valuable for business than Core domain. Without it business may be can even survive for some time. But it still is quite important (supports core domain), it also is specific for the domain and has to be developed. In this case, for some reason, we can't buy an existing software or component to solve the problem.
Generic subdomain - subdomain which is less valuable for business than Core domain. It also is generic enough to allow buying it off the shelf (unlike supporting domain).
回答2:
Do you exactly mean multiple core domain candidates or may be it is multiple bounded contexts in core domain?
"Can Core Domain span multiple Bounded Contexts?" - another SO question
Eric asks several questions to help us identity which parts are core to the domain:
- What makes the system worth writing?
- Why not buy it off the shelf?
- Why not outsource it?
The core domain is so critical and fundamental to the business that it gives you a competitive advantage and is a foundational concept behind the business.
Source
来源:https://stackoverflow.com/questions/25274226/ddd-identifying-the-core-domain