【答案解析】[要点解析] 用例(use case)描述了一个与系统参与者进行交互、并由系统执行的动作序列。UML规范提供了用例之间包含(include)、扩展(extend)和泛化(generalization)3种相关性的关系,各种关系功能及区别如表1-6所示。
表1-6用例各种关系说明表 关系 | 关键字 | 描述 | 对应用例 | 包含关系 | include或uses | 从两个或两个以上的原始用例中提取公共行为,或发现能够使用一个构件来实现某一用例的部分功能。意味着所包含的用例将始终出现 | 抽象用例 | 扩展关系 | extend | 将较复杂的步骤提取成专门的用例,以便简化原始用例并扩展其功能的行为。扩展的出现是有条件的,并且每次并不一定出现 | 扩展用例 | 泛化关系 | generalization | 描述了一般事物与该事物中特殊种类之间的关系,子用例是父用例的一种特殊形式,子用例继承了父用例所有的结构、行为和关系 | | |
由以上分析可知,抽象用例是从几个执行相同功能步骤的用例中,将公共步骤提取而成的独立用例。可见抽象用例代表某种形式的“复用”,它是降低用例之间冗余的一种工具。例如,在一个“订单输入子系统”中,创建新订单和更新订单都需要核查用户账号是否正确。那么,用例“创建新订单”、“更新订单”与用例“核查客户账号”之间是一种包含(include)关系。
对于选项A的“关联(Association)”是两个或多个特定类之间的关系,它描述了这些类元实例的联系。选项D的“继承(inheritances)”描述了子用例与父用例之间的一般关系。