领域和子域
领域(domain):需要讨论的问题范围,称为域、领域或问题域。
子域(subdomain):对于域进行不同纬度切分相对内聚的单元。比如:电商业务涉及订单、库存、营销子域等。
比如:我们要研究桃树,桃树就是领域,将桃树根据器官分成根、茎、叶、花、果实、种子这些子域。
领域是一个组织所做的事情以及其中所包含的一切。每个组织都有他自己的业务方位和做事方式,这个业务范围以及在其中所进行的活动便是领域。
领域既可以表示整个业务系统,也可以表示其中的某个核心域或者支撑子域。
核心域、支撑域和通用域
通过领域划分,区分不同子域在公司内的不同功能属性和重要性,从而可对不同子域采取不同的资源投入和建设策略,其关注度也会不一样。
核心域
所有领域中最关键的部分,什么意思呢,就是最核心的部分,对于业务来说,核心域是企业根本竞争力,也是创造利润里最关键的部分。
例如:电商里面那么多领域,最重要的是什么?就是销售系统,无论你是2B还是2C,还是PDD,这些核心模块就是核心域。
通用域
被多个子域使用的通用功能子域。例如:鉴权、日志等。
支撑域
系统中业务分析阶段最不重点关注的领域,也就是非核心域非通用域的领域,例如电商里面的支付、物流,仅仅是为了支撑业务的运转而存在,甚至可以去购买别人的服务,这类的领域就是支撑域。
如何区分?
对于桃树而言,根、茎、叶、花、果实、种子六个领域哪一个是核心域?
是不是有不同的理解?有人说是种子,有人说是根,有人说是叶子,也有人说是茎等等,为什么会有这种情况呢?
因为每个人站的角度不一样,
- 你如果是果农,那么果实就是核心域,你的大部分操作应该都是围绕提高果实产量进行;
- 如果你是景区管理员,那么芳菲四月桃花盛开才是你重点关注;
- 如果你是林场工作人员,那么树干才应该是你重点关注的领域;
看到没,对于同一个领域划分的子域,每个人都有不同的理解。
对于实际业务研发来说,参与的人员众多,有业务方面的,有架构师,有后端开发人员,营销市场等等,势必要最开始就确定我们的核心域,这么做的好处:
- 统一大家的认识,避免认知偏差,对人来说,做正确的事情比正确的做事更重要,选对方向比努力更重要;
- 对于一个企业来说,预算以及时间是有限的,聚焦才能办成大事,集中力量办大事。
总结
领域,核心域是决定做事的范围和方向,是必须首先确保的,否则就会走弯路,做无用功。
标签:核心,业务,领域,桃树,电商,子域,DDD From: https://www.cnblogs.com/ghj1976/p/ddd-de-ling-yu-yu-he-xin-yu.html