UML期末复习题——2.4:Domain Model

第四题:领域模型函数

 

重要概念:spa

1. 领域模型:是对领域内的概念类或现实世界中对象的可视化表示。领域模型也称为概念模型领域对象模型分析对象模型.net

2. 应用UML表示法,领域模型被描述为一组没有定义操做的类图。它提供了概念透视图。它能够展现:3d

   1)领域类之间的关联
   2)概念类之间的关联
   3)概念类的属性
 领域模型是可视化字典,表示 领域的重要抽象领域词汇领域的内容信息

3. 如何找到概念类对象

   1)重用和修改现有的模型:这是首要、最佳且最简单的方法。
   2)使用分类列表
   3)经过识别名词短语寻找概念类

4. 准则:属性和类的常见错误
blog

 在建立领域模型时最多见的错误是,把应该是概念类的事物表示为属性。
 若是咱们认为某概念类X不是现实世界中的数字或文本,那么X多是概念类而不是属性

5. 准则:什么时候须要描述类?
ip

 在如下状况下须要增长描述类(例如,ProductDescription):
   1)须要有关商品或服务的描述,独立于任何商品或服务的现有实例
   2)删除其全部描述事物的实例后,致使信息丢失,而这些信息是须要维护的,可是被错误地与所删除的事物关联起来
   3)减小冗余或重复信息 

6.  关联:ci

 关联是类之间的关系,表示 有意义和值得关注的链接
 在UML中,关联被定义为“两个式多个类元之间的主义联系,涉及这些元实例之间的链接”

7. 准则:为何应该避免加入大量关联?
字符串

 咱们要避免在领域模型中加入太多的关联。回顾离散数学的相关知识,能够知道,在具备N个节点的图中,节点间有(n*(n-1))/2个关联,这多是个很是大的数值。连线太多会产生“ 视觉干扰”,使图变得混乱。所在要谨慎地增长关联线。

8. 准则:在UML中如何对关联命名get

 以 “类名—动词短语—类名”的格式为关联命名,其中的动词短语构成了 可读的和有意义的顺序
 例如,Sale Paid—by CashPayment 反面示例,应改成Sale Uses CashPayment
           Player Is—on Square 反面示例,应觉得 Player Has Square
  关联名称应该使用首字母大写的形式。在UML中,类元应该首字母大写。如下是复合性关联名称的两种常见而且等价的合法格式:
                                 Records—current
                                 RecordsCurrent

9. 应用UML:角色

  关联的每一端称为角色。角色具备以下可选项:
  1)多重性表达式
  2)名称
  3)导航

10. 应用UML:多重性

  多重性定义了类A有多少个实例能够和类B的一个实例关联

11. 应用UML:两个类之间的多重关联

  在UML类图中,两个类之间可能会有多重关联,这并不罕见。
 

12. 属性:是对象的逻辑数据值

  准则:什么时候展现属性
   需求建议或暗示须要记住信息时,引入属性
例如,在处理销售用例中的票据一般含有工期和时间、店名和地址以及收银员ID等
所以,
      1)Sale须要dataTime属性
      2)Store须要name和address属性
      3)Cashier须要ID属性
在UML中,属性的完整语法是:
      visibility name:type multiplicity=default{property—string}
   准则:什么样的属性类型是适当的
  十分常见的数据类型包括:Boolean、Date(or DataTime)、Number、Character、String(Text)和Time等
  准则:什么时候定义新的数据类型类
  下述状况下,在领域模型里,把最初被认为是数字或字符串的数据类型表示为新的数据类型类:
    1)由不一样的小节组成
    2)具备与之相关的操做,例如解析或校验
    3)具备其余属性
    4)单位的数量
    5)具备以上性质的一个或多个类型的抽象
 
绘制要点:
 
注意事项:

  1.名词法:找一堆名词,而后把这堆名词之间的关系给创建起来

  2.名词里面有属性。要判断名词是否是概念类,是否是属性。

  3.考试的时候是针对一个用例来画领域模型,必定要看清楚是要对哪一个用例建模,没有那么多时间对整个系统建模。

  (1)先找到全部名词,判断它是类仍是属性

    找名词的原则(下面不要的名词标红):

    1) 跟UI相关的名词不要

    2) 跟database相关的名词不要

    3) 跟业务流程没有关系的名词不要,如技术相关的术语,以下面的workflow,list

    4) 任何计算出来的结果,不参与业务运算,不要,若是留下了这个会扣分

    5) 模糊的术语必定要过滤掉

  (2)若是出现动词,扣分

  (3)没有名词,扣分

  (4)多重性(关联的一对多,一对一等)没有,扣分

  (5)漏掉一两个类,不扣分

  六、 属性,假如每个类有七八个属性,只写一两个典型的表明便可,考试没有那么多时间

  七、 领域模型的类不能有操做(也就是类的函数),若是写出来要扣分。

  八、 若是有描述类,必定要画出来。

  描述类是包含其余事物的信息的类。命名方式:被描述类名Description

  被描述的事物存在,而且描述独立于事物的实例

  好比酒店的每个同类型的房间价格都是同样的,它并不随着房间号的变化而变化,因此把房间描述独立出来会比较好

     九、 没有描述类必定会扣分!

     整个画图的最重要步骤就是找出名词!

 
试题答案:
相关文章
相关标签/搜索