第一单元:领域驱动设计概览 案例:隔离业务复杂度和技术复杂度
第二单元:战略式设计 通用语言(Ubiquitous Language) 演练:对订单系统编写用例
限界上下文(Bounded Context)
演练:识别EAS系统的限界上下文上下文映射图 (Context Map)
案例:确认EAS系统限界上下文的关系架构模式
分层架构 (Layered Architecture)
六边形架构 (Hexagonal Architecture)
第三单元:战术设计 领域建模
演练:四色建模实体与值对象
领域服务
案例:项目管理系统的实体与服务聚合
演练:在线拍卖系统的聚合分析工厂和资源库
领域事件应用层设计时序图
演练:EAS培训系统的时序图设计
第四单元:DDD实战演练 项目需求:
企业应用套件(EAS)系统是一个根据某集团应用信息化的要求而开发的企业级应用软件。本系统为用户提供大量简单,快捷的操作接口,集团相关部门能更快捷、更方便、更 高效地处理日常事务工作,并为管理者提供决策参考、流程简化,建立集团与各部门、员 工之间交流的通道,有效地提高工作效率,实现整个集团的信息化管理。
项目目标:
实现集团企业应用信息化,包括人力资源信息管理、项目管理、客户关系管理等。具体目标如下:
实现集团日常事务的信息化管理,包括工作日志、考勤、月度工作评价等;
解决客户业务需求与集团人员供应之间的矛盾,实现供需平衡,建立沟通的有效通 道;
实现项目的信息化管理,包括项目开发流程管理、项目人员信息跟踪、统计项目信息 等;
提供市场信息、人员信息、项目信息的统计,辅助管理者作出正确的决策。 项目要解决的问题:
公司市场信息、人员信息不畅通,无法实现人员供需平衡:“供”主要表现在各公司富 余人员信息、项目中快结束人员信息、人员招聘信息、培训人员信息等不能有效 反馈。“需”主要表现在已签约项目人员需求、意向项目人员需求、公司计划人员需求 等信息无法及时传递。“供”“需”脱节,信息不畅,不能快速有效的进行供需求匹配。
公司各项配套管理问题。各职能部门不能及时获得“供需”信息,也就无法及时对设 备、住房、工位、资金进行配套协调管理。
辅助决策管理问题。公司领导决策层不能很好的把握全局,无法有侧重的进行资源协 调及工作支持,包括市场力度、人才管理、财务政策及公司日常管理。
客户信息共享及项目管理质量控制问题。无法跟踪项目人员的工作状态,可能导致项 目组成员以及项目质量的失控。
这是领域驱动设计过程的完整案例分析,从需求开始着手,开展对整个系统的架构分析、 领域概念识别与分析,并对建立的领域模型进行迭代与演化,核心领域概念的演进,扫清 领域设计过程中的认知障碍,并总结了领域驱动设计过程的一些经验教训。
本实战演练包含了真实的案例需求,以及符合领域驱动设计各种知识点的案例病症分析, 从对比入手来探讨好的领域驱动设计方法。同时,还将引入大量的可视化图形、设计图与代码帮助学员理解如何在真实项目中运用领域驱动设计的思想,指导设计人员进行良好的设计。 |