第四章 类图建模(一)
目录
2.1 类
类是对一组具有相同属性、操作、关系和语义的对象的描述。
每个类必须有一个区别于其他类的名称。
已命名的类的特性,描述了该特性的实例可以取值的范围。
是一个服务的实现,是对一个对象所做的事情的抽象,并且由这个类的所有对象共享。
是类的合约或责任。在较高的抽象层次上,这些响应的属性和操作正是要完成类的职责的特征。
2.2 关系
关系是事物之间的联系。
是一种使用关系,说明一个事物使用另一个事物的信息和服务,反之未必。
是一般事物(超类、父类)和该事物的特殊的种类(子类)之间的关系。
也称为“is – a – kind - of”关系。
是一种结构关系,它指明一个事物的对象与另一个事物对象间的联系。
2.3 类图及应用
类图(class diagram)是显示一组类、接口、协作以及它们之间关系的图。
从图形上看,就是点和弧的集合。
普通特性:有名字,有内容
内容:类;接口;依赖、泛化、关联关系
(a)识别用户或实现者用于描述问题或解决方案的那些事物。
(b)对于每个抽象,识别一个职责集。
(c) 提供为实现每个类的职责所需的属性和操作。
B 对系统中的职责分布建模
(1)识别一组为了完成某些行为而紧密地协同工作的类。
(2)对上述每一个类识别出一组职责。
(3)整体上观察,重新分配职责,使抽象合理。
(4)考虑协作方式,重新分配职责,使协作均衡。
C 对非软件事物建模
(a)对抽象为类的事物建模
(b)可以用构造型详述新的事物
(c)如果建模事物是包含软件的硬件,可建模为结点。
D 对简单类型建模
(1)对抽象为类型或枚举的事物建模,可用构造型表示。
(2)若需要详述该类型的值域,可使用约束。
A 识别建模的机制。
B 对每种机制,识别参与协作的类、接口和其它协作,并识别事物之间的关系
C 用场景排演这些事物。
D 把元素和内容聚集在一起。
UML类图是E-R图的超集
2.4 领域模型
领域模型(domain model)是对领域内的概念或现实世界中对象的可视化表示。也称为概念模型、领域对象模型、分析对象模型。
应用UML表示法,领域模型被描述为一组没有定义操作的类图。
可以展示:
因为它对领域词汇或概念进行了可视化和关联,还显示了概念类的抽象。
conceptualclass
,是思想、事物或
对象。有表示词语
或图形的符号,有
表示定义的内涵和
表示适用示例的外延。
以当前所要设计的需求为界
为了找到问题域中的公共词汇,可以考虑从需求文档中以及开发团队成员的知识中来找词汇。注意力要放在下列方面:
概念类识别实例—仓储管理
在一个仓储管理的系统中,我们将关注库存中的物品以及它们的存储位置
在该系统中一个事件就是将货品放到仓库中。对于每一次运货,系统必须记住搬运的时间,谁接收了货品,什么货品,每一种的数量有多少
对非现实世界建模
说明性(或者描述性)概念类
描述性概念类实例
2.5 对象图