软考中级习题与解答——第十四章_UML建模(1)
例题1
(1)根据说明中的描述,给出图14-1中U1 和 U2 所对应的用例,以及(1)所对应的关系。
参考答案
U1:使用常规卡行驶
U2:使用单次卡行驶
(1)<extend>
答案解析
包含关系 <<include>>
核心思想:"必须执行"的公共行为
关系:基础用例 必须包含 被包含用例的功能
方向:从基础用例指向被包含用例
特点:每次执行基础用例时,被包含用例一定会被执行
类比:就像"煮饭" 必须包含 "淘米"
示例:
"行驶"
<<include>>
"计算费用"每次行驶都必须要计算费用
扩展关系 <<extend>>
核心思想:"可能执行"的可选行为
关系:扩展用例 在特定条件下扩展 基础用例
方向:从扩展用例指向基础用例
特点:执行基础用例时,扩展用例可能执行,也可能不执行
类比: "煮饭" 在特定条件下可以被 "加调料" 扩展
示例:
"检查行驶路线"
<<extend>>
"使用单次卡行驶"只有使用单次卡时才需要检查路线
泛化关系(继承)
核心思想:"是一种"的父子关系
关系:子用例 是一种 父用例的特殊形式
方向:从子用例指向父用例
特点:子用例继承父用例的所有行为,并可以添加自己的特殊行为
类比: "煮米饭" 和 "煮粥" 都是 "煮饭" 的特殊形式
示例:
"使用季卡行驶" → 泛化自 → "使用常规卡行驶"
季卡行驶是常规卡行驶的一种特殊形式
(2)根据说明中的描述,给出图14-2中缺少的:C1~C6 所对应的类名(类名使用说明中给出的英文词汇),(2)~(3) 处所对应的多重度
参考答案
答案解析
空 (2) 和 (3) 描述的是客户与卡之间的多重度,题目告诉我们系统有三种卡,因此一个客户最多可以持有这三种卡,因此空 (3) 应填 1..3。而一个卡只能被一个客户持有,因此客户端应该填1。
(3)根据说明中的描述,给出以下类对应的关键属性(属性名使用说明中给出的英文词汇)
Road Segment(道路段)
Trajectory(轨迹)
Card(卡)
参考答案
答案解析
类的关键属性就是描述这个类核心特征的数据项。就像描述一个人需要姓名、年龄、身份证号一样。