业务领域建模Domain Modeling

六眼飞鱼酱① 提交于 2019-12-05 15:29:02

 

1、什么是Domain Modeling

    业务对象模型(也叫领域模型 domain model)是描述业务用例实现的对象模型。它是对业务角色和业务实体之间应该如何联系和协作以执行业务的一种抽象。业务对象模型从业务角色内部的观点定义了业务用例。该模型为产生预期效果确定了业务人员以及他们处理和使用的对象(“业务类和对象”)之间应该具有的静态和动态关系。它注重业务中承担的角色及其当前职责。这些模型类的对象组合在一起可以执行所有的业务用例。

        业务角色显示了一个人承担的一系列职责。业务实体表示使用或产生的可交付工件、资源和事件。业务用例实现显示了协作的业务角色和业务实体如何执行某个工作流程。使用以下几种图来记录业务用例实现: 图显示参与的业务角色和业务实体。活动图,其中泳道显示业务角色的职责,而对象流显示如何在工作流程中使用业务实体。 序列图描述业务角色和业务主角之间交互的详细情况,并显示如何在业务用例执行过程中访问业务实体。
业务对象模型将结构的概念和行为的概念结合了起来。
它是一个纽带工件,用于对业务关系进行清晰的表述,表述方式与软件开发人员的思考方式类似,同时仍保留一些纯粹的业务内容。将我们所知道的有关业务的信息按照对象、属性和职责进行了合并。
它探索业务领域知识的本质,所采用的方式使我们能够从对业务问题的思考转变到对软件应用程序的思考上来。
它是一种确定需求的方法,使需求能够为待建信息系统使用,并得到该系统的支持。
确定业务对象定义、对象间关系、对象名称和对象间关系名称的流程使我们能够以一种能被业务领域专家理解和验证的精确方式来表达业务领域知识。

2、为什么要进行Domain Modeling

       降低与OO建模之间的表示差异。
  领域层软件类的名称要源于领域模型中的名称,以使对象具有源于领域的信息和职责。
  打个比方,你可以用一长串0和1来表示“薪水册”,可是这种软件表示与我们脑中的薪水册领域模型之间存在巨大的差异,这将影响我们对软件的理解和修改。而OO建模则可以减小这一差异

3、如何创建领域模型
  可以通过以下三个步骤:
      1、寻找概念类,将其绘制为UML类图中的类
      2 、添加关联
      3、 添加属性
  如何找到概念类
  1、重用和修改现有的模型。
   这是首要、最佳且最简单的办法。可以从已发布的领域模型和书籍中获得。
  2、使用分类列表
  3、确定名词列表
  在对领域的文本性描述中识别名词和名词短语,将其作为候选的概念类或属性。
  缺点:自然语言的不精确性,不同名词短语可能表示同一概念类或属性,此外可能还有歧义。建议与概念类分类列表一同使用。

 

4、工程实践的业务领域建模

1) 收集应用程序域信息,关注功能需求,同时考虑其他需求和文档

 (1)软件打包

 (2)软件分发到各个渠道

 (3)软件发布到网站,用户下载安装包 

2)列出重要的应用程序域概念

 开发人员是一个实体对象

 用户是一个实体对象

 软件包是一个领域对象,开发人员打包发布软件包,用户进行下载

3)将领域概念分为:类–属性/属性值–关系

属性 方法
Developer Company,name 打包软件,分发软件
SoftwarePackage size,function,label 软件运行,软件更新
User Id 下载软件包
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!