考点频率★★★★★下午题必考选择题也常考难度⭐⭐⭐建议重点区分include包含和extend扩展的关系这是下午题补全用例关系的核心得分点1️⃣ 用例图在画什么用例图Use Case Diagram从用户视角出发描述“系统做什么”而不是“怎么做”。它回答的核心问题是谁参与者能对系统做什么用例打个比方你去餐厅吃饭你不需要知道厨房里怎么切菜、怎么颠勺那是实现细节。你只需要知道服务员系统边界能帮你点单用例、上菜用例、结账用例。用例图就是这张“菜单”清晰地告诉所有食客参与者这家店系统提供哪些服务。在软考下午题中通常给你一段需求描述要求你补全用例图中的参与者、用例名称以及用例之间的包含/扩展关系。2️⃣ 用例图的三大核心组件组件图形符号含义识别技巧参与者Actor火柴人或带actor的矩形与系统交互的外部实体可以是人、外部系统或硬件设备谁在用系统如客户、管理员、银行系统用例Use Case椭圆系统为参与者提供的一个完整功能系统能做什么如登录、下单、支付系统边界System Boundary矩形框系统的范围框内是用例框外是参与者矩形框顶部通常写系统名称如“在线商城系统”特别注意参与者不一定都是人。外部系统如支付宝支付接口也可以是参与者。如果外部系统作为参与者通常用矩形加actor标注而不是火柴人。3️⃣ 用例之间的关系下午题核心考点这是软考考查的重中之重尤其是包含和扩展的辨析。3.1 包含关系Include——include语义一个用例基础用例必然会执行另一个用例包含用例的功能。缺少包含用例基础用例就不完整。方向基础用例指向被包含用例虚线箭头指向被包含者。典型场景公共的子功能、必须执行的步骤。示例下单用例include支付用例。下单时必须支付不支付下单就不成立。3.2 扩展关系Extend——extend语义一个用例扩展用例在特定条件下可选地扩展另一个用例基础用例的行为。缺少扩展用例基础用例仍然完整。方向扩展用例指向基础用例虚线箭头指向被扩展者和包含方向的指向相反。典型场景可选功能、异常处理、特定条件下的额外操作。示例下单用例extend使用优惠券用例。用户有优惠券时可以选没有优惠券或者不想用照样能下单。下单本身是完整的优惠券是锦上添花。3.3 泛化关系Generalization—— 实线空心三角箭头语义子用例或子参与者继承父用例或父参与者的行为和含义并可扩展或覆盖。方向子用例指向父用例与类的继承符号相同。应用场景即可用于参与者之间如VIP客户继承普通客户也可用于用例之间如扫码支付继承支付。考试中泛化关系在用例图中使用较少多用于类图了解即可。4️⃣includevsextend死磕对比表这是整个用例图部分的“杀手题”务必刻进脑子里对比项include包含extend扩展执行条件必然执行必选项有条件触发可选项基础用例完整性缺少包含用例基础用例不完整缺少扩展用例基础用例仍完整箭头方向基础用例→被包含用例扩展用例→基础用例典型对应“要做A必须先做B”“A做完后如果条件满足再做C”软考关键词“必须”、“总是”、“每次”“当…时”、“如果…则”、“可选的”5️⃣ 经典例题例题1含/扩辨析某系统的“借书”用例中读者每次借书前系统必须验证该读者的会员资格是否有效。如果读者当天有逾期未还书籍则系统提示“不可借书”。A.验证会员资格与借书之间是包含关系B.验证会员资格与借书之间是扩展关系C.提示不可借书与借书之间是包含关系D.借书与验证会员资格之间是扩展关系解析“必须验证” →包含关系。基础用例借书指向被包含用例验证会员资格。“逾期时提示”是扩展关系。但看选项A正确。选A。例题2符号识别在用例图中表示扩展关系的符号是 。A. 虚线箭头 includeB. 虚线箭头 extendC. 实线空心三角箭头D. 实线箭头解析A是包含B是扩展C是泛化D是关联/通信。选B。6️⃣ 记忆口诀用例三要素参与者火柴人椭圆功能在里面边界框框围一圈。包含是“必须”基础指包含箭头指向被含者。扩展是“可选”扩展指基础触发条件才出现。区分大招看到题干的“必须/总是”→ 选包含看到“如果/当…时/可选”→ 选扩展。7️⃣ 小测验评论区对答案某在线考试系统的用例图中“开始考试”用例执行前系统必须验证考生的身份信息。身份验证通过后考生才能开始作答。请问“身份验证”与“开始考试”之间应该使用 关系A.extendB.includeC. 泛化D. 关联本专栏日更点击头像 → 专栏《软考中级高频考点》订阅第一时间接收新内容#软考中级 #软件设计师 #用例图 #UML #包含 #扩展 #软考备考
【面向对象】UML行为图:用例图(参与者/用例/关系)
考点频率★★★★★下午题必考选择题也常考难度⭐⭐⭐建议重点区分include包含和extend扩展的关系这是下午题补全用例关系的核心得分点1️⃣ 用例图在画什么用例图Use Case Diagram从用户视角出发描述“系统做什么”而不是“怎么做”。它回答的核心问题是谁参与者能对系统做什么用例打个比方你去餐厅吃饭你不需要知道厨房里怎么切菜、怎么颠勺那是实现细节。你只需要知道服务员系统边界能帮你点单用例、上菜用例、结账用例。用例图就是这张“菜单”清晰地告诉所有食客参与者这家店系统提供哪些服务。在软考下午题中通常给你一段需求描述要求你补全用例图中的参与者、用例名称以及用例之间的包含/扩展关系。2️⃣ 用例图的三大核心组件组件图形符号含义识别技巧参与者Actor火柴人或带actor的矩形与系统交互的外部实体可以是人、外部系统或硬件设备谁在用系统如客户、管理员、银行系统用例Use Case椭圆系统为参与者提供的一个完整功能系统能做什么如登录、下单、支付系统边界System Boundary矩形框系统的范围框内是用例框外是参与者矩形框顶部通常写系统名称如“在线商城系统”特别注意参与者不一定都是人。外部系统如支付宝支付接口也可以是参与者。如果外部系统作为参与者通常用矩形加actor标注而不是火柴人。3️⃣ 用例之间的关系下午题核心考点这是软考考查的重中之重尤其是包含和扩展的辨析。3.1 包含关系Include——include语义一个用例基础用例必然会执行另一个用例包含用例的功能。缺少包含用例基础用例就不完整。方向基础用例指向被包含用例虚线箭头指向被包含者。典型场景公共的子功能、必须执行的步骤。示例下单用例include支付用例。下单时必须支付不支付下单就不成立。3.2 扩展关系Extend——extend语义一个用例扩展用例在特定条件下可选地扩展另一个用例基础用例的行为。缺少扩展用例基础用例仍然完整。方向扩展用例指向基础用例虚线箭头指向被扩展者和包含方向的指向相反。典型场景可选功能、异常处理、特定条件下的额外操作。示例下单用例extend使用优惠券用例。用户有优惠券时可以选没有优惠券或者不想用照样能下单。下单本身是完整的优惠券是锦上添花。3.3 泛化关系Generalization—— 实线空心三角箭头语义子用例或子参与者继承父用例或父参与者的行为和含义并可扩展或覆盖。方向子用例指向父用例与类的继承符号相同。应用场景即可用于参与者之间如VIP客户继承普通客户也可用于用例之间如扫码支付继承支付。考试中泛化关系在用例图中使用较少多用于类图了解即可。4️⃣includevsextend死磕对比表这是整个用例图部分的“杀手题”务必刻进脑子里对比项include包含extend扩展执行条件必然执行必选项有条件触发可选项基础用例完整性缺少包含用例基础用例不完整缺少扩展用例基础用例仍完整箭头方向基础用例→被包含用例扩展用例→基础用例典型对应“要做A必须先做B”“A做完后如果条件满足再做C”软考关键词“必须”、“总是”、“每次”“当…时”、“如果…则”、“可选的”5️⃣ 经典例题例题1含/扩辨析某系统的“借书”用例中读者每次借书前系统必须验证该读者的会员资格是否有效。如果读者当天有逾期未还书籍则系统提示“不可借书”。A.验证会员资格与借书之间是包含关系B.验证会员资格与借书之间是扩展关系C.提示不可借书与借书之间是包含关系D.借书与验证会员资格之间是扩展关系解析“必须验证” →包含关系。基础用例借书指向被包含用例验证会员资格。“逾期时提示”是扩展关系。但看选项A正确。选A。例题2符号识别在用例图中表示扩展关系的符号是 。A. 虚线箭头 includeB. 虚线箭头 extendC. 实线空心三角箭头D. 实线箭头解析A是包含B是扩展C是泛化D是关联/通信。选B。6️⃣ 记忆口诀用例三要素参与者火柴人椭圆功能在里面边界框框围一圈。包含是“必须”基础指包含箭头指向被含者。扩展是“可选”扩展指基础触发条件才出现。区分大招看到题干的“必须/总是”→ 选包含看到“如果/当…时/可选”→ 选扩展。7️⃣ 小测验评论区对答案某在线考试系统的用例图中“开始考试”用例执行前系统必须验证考生的身份信息。身份验证通过后考生才能开始作答。请问“身份验证”与“开始考试”之间应该使用 关系A.extendB.includeC. 泛化D. 关联本专栏日更点击头像 → 专栏《软考中级高频考点》订阅第一时间接收新内容#软考中级 #软件设计师 #用例图 #UML #包含 #扩展 #软考备考