本文转载自微信公众号“一言”,作者张译。转载本文请联系一言公众号。DDD的范围主要是系统级的分析、架构和设计。在更高的层次上,问题空间被扩展到系统范围之外,成为企业或组织的范围后,DDD模型就变得捉襟见肘了。这时候可以考虑引入企业架构的思想,尤其是业务架构的内容,是对DDD很好的补充。也就是说,将企业架构与DDD相结合,才能真正将战略设计与战术设计联系起来。为什么在传统企业中,DDD开始受到众多企业的追捧?不仅仅是因为微服务,以我个人不成熟的判断,应该是数字化转型开始倒逼传统企业的IT部门接受DDD。方法体系。数字化转型对企业的要求体现在以下几个方面:企业架构与行业的融合程度数字化企业IT架构所谓的“行业”,也可以理解为“领域”。在互联网经济的冲击下,传统企业开始动作变快,需求变强,但真正的变速绝非没有规划,而是需要在战略上有明确的转型目标,在tactic(企业的战术层面,对应DDD的战略层面),需要沉淀企业领域资产。无论这些领域的资产是以核心模型、服务还是其他组件的形式存在,都需要在转型方向上与企业战略保持一致,并在战略的指引下识别和积累可复用的业务能力.这个过程可以是有计划的或渐进的;可分解为服务粒度或能力中心粒度;领域驱动设计可以用来建立核心领域模型,也可以建立自治的微服务。可以说是中泰的产能规划和战略。数字化转型不仅要改造业务,还包括IT架构的改造。当前的趋势是在基础架构方面转向云原生架构;在能力建设方面,需要转变组织模式,同时从项目思维转变为产品思维;同时,要加强对数据的重视,全面拥抱互联网数据、物联网数据,实现业务和数据的双向支撑;在技??术复用方面,也提出了前所未有的高要求,无论是PaaS、SaaS,还是中台的能力中心,还是细粒度的服务和组件。还是最近炒作的低代码平台,核心关键是遵循82原则,尽可能降低可复用技术实现和业务模型(包括流程和规则)的开发成本,以满足产品快速开发服务不断响应产品创新需求,能够合理分配人力成本,花更多的人力物力去做高价值的事情。做好企业数字化转型,需要“从企业整合运营和提升竞争力的角度出发,站在企业大局的高度,从了解行业、发展企业所处阶段、目标、战略、竞争环境等,认识其核心竞争力和管理中存在的主要问题,并在此基础上分析管控模式,针对关键业务流程提出优化建议”[引自?],简单来说,数字化转型是企业层面的全面转型,也是企业高管的思维转型。为了规避风险,让企业的转型步伐更加扎实,需要根据企业的转型阶段,分阶段实施。优先顺序。实施过程必须是自上而下的,但是随着从顶层到底层的逐步细化,the粒度也在缩小。当降到目标系统的层面,就是DDD登场的最佳时机。我曾经和很多业务架构师聊过企业架构和DDD的关系。我以为企业架构在宏观层面有自己的一套成熟的系统方法,比如TOGOF和Zachman等企业架构体系。其庞大的规范、标准和流程值得IT部门学习,值得引入到数字化转型中作为参考;但是,这些方法存在的问题是:过于复杂:虽然企业本身的复杂性决定了系统的复杂性,但是如果一个系统过于复杂,很多人可能无法在一个系统中把握全局和细节生命周期,难以控制,更谈不上实施;过于宏观:用企业架构的思路和方法对企业进行战略规划后,如何保证计划的执行,如何保证落地过程完全符合企业的要求,不偏不倚地进行解决办法,缺乏有效手段。企业架构就像画了一张企业战略规划的模板,模板中空白的部分就是实施所需要的知识和能力。使用业务架构,这些模板和空白得到了有效的切分,明确了各自的边界。企业架构对从业务架构到IT架构的映射给出了架构指导。接下来就可以使用DDD来实现高质量的填空题了。因此,企业架构和领域驱动设计可以完全融合。这种整合的催化剂是数字化转型。这种集成的需求来自于相对优越的企业架构,需要有实施的能力。至于为什么现在提出或关注这种融合,是因为当今时代天时、地利、人和,发展这种趋势:时机:数字化转型已被大多数传统企业提上日程,必须被完成并且必须被完成。,并且很快;地理优势:各种IT基础设施都满足了这个需求,无论是云原生、微服务、大数据,还是所谓的中台,都为这个融合打下了良好的基础,敏捷思维已经深入人心深入人心,信息化管理能力和建设能力大幅提升;仁和:数字化转型让企业高层看到了转型迫在眉睫。意识到这一趋势,开始打破业务与IT之间的壁垒,寻求全方位的合作。如果说以上内容指出了这种融合趋势,回答了融合的必要性,那么如何融合的问题就提上了日程。毕竟两者不是一个级别的,所涉及的角色在地位上说不定也是存在的。天壤之别。我的一个肤浅的想法是希望借鉴DDD的方法和思路,寻求企业架构必要的精简。系统级架构让企业架构方法和DDD方法各司其职。组织层面的棘手问题交给企业架构,系统层面的实现问题交给DDD。以上观点很不成熟,我个人对企业架构的理解也很肤浅。从学习路线上看,我是自下而上快速推进的。我不再满足于领域驱动设计的系统层面。下定决心完成两者真正的融合——不仅要有方案,还要写方案,而且对于核心实现,还要会画代码。这样就打通了业务(领域)驱动的任督二脉!
