在用户登录用例的分析模型中,LoginPage 负责接收用户输入,LoginController 负责协调认证流程,User 负责保存用户业务信息。三者依次更接近()。
边界类连接参与者与系统,控制类协调一个用例或业务流程,实体类表示需要长期保存或具有业务意义的信息。LoginPage、LoginController、User 正好对应这三个职责。
选项分析
错误。LoginPage 不负责持久业务状态,User 也不是流程协调器。
错误。页面不是用例控制中心,Controller 也不应只承担实体数据角色。
正确。三者依次对应外部交互、用例协调和业务信息。
错误。LoginController 的主要职责是协调流程,不是保存用户实体状态。
本题为什么容易错
常见误区是“有数据字段就是实体类”。边界类也会暂存输入,控制类也会保存临时状态,分类要看它在分析模型中的核心责任。
简短答案
登录页面、认证流程协调器和用户对象分别属于哪类分析类,正确答案是 C(边界类、控制类、实体类)。边界类连接参与者与系统,控制类协调一个用例或业务流程,实体类表示需要长期保存或具有业务意义的信息。LoginPage、LoginController、User 正好对应这三个职责。
易混淆概念对比表
| 概念 | 本题判断 | 区别要点 | 记忆提示 |
|---|---|---|---|
| 实体类、边界类、控制类 | 本题干扰项 | 错误。LoginPage 不负责持久业务状态,User 也不是流程协调器。 | 看到该词不要急着选,先判断是否真正解决题干问题 |
| 控制类、实体类、边界类 | 本题干扰项 | 错误。页面不是用例控制中心,Controller 也不应只承担实体数据角色。 | 看到该词不要急着选,先判断是否真正解决题干问题 |
| 边界类、控制类、实体类 | 本题正确答案 | 正确。三者依次对应外部交互、用例协调和业务信息。 | 看到题干核心场景时优先联想到它 |
| 边界类、实体类、控制类 | 本题干扰项 | 错误。LoginController 的主要职责是协调流程,不是保存用户实体状态。 | 看到该词不要急着选,先判断是否真正解决题干问题 |
本题易混淆选项怎么区分
- 实体类、边界类、控制类:错误。LoginPage 不负责持久业务状态,User 也不是流程协调器。
- 控制类、实体类、边界类:错误。页面不是用例控制中心,Controller 也不应只承担实体数据角色。
- 边界类、实体类、控制类:错误。LoginController 的主要职责是协调流程,不是保存用户实体状态。
知识点详解
BCE 分析类常用于从用例走向面向对象分析模型。边界类封装系统与参与者、外部系统或设备之间的交互;控制类承载特定用例的协调、顺序和事务边界;实体类表示领域中需要维护的核心信息及状态。它们帮助分析阶段分清责任,但落到设计和代码时可以进一步拆分、合并或映射到具体架构层。
备考速记
边界接外部,控制串流程,实体留业务。
Boundary Control Entity 在面向对象分析场景中的作用
Boundary Control Entity在本题中的核心价值,是解决“在用户登录用例的分析模型中,LoginPage 负责接收用户输入,LoginController 负责协调认证流程,User 负责保存用户业务信息。三者依次更接近()”这个场景问题。复习时不要只背选项名称,还要理解它为什么适用于该场景,以及它能解决哪类安全、流程或管理问题。
同类题怎么考
- 根据类的职责判断边界、控制、实体。
- 给出时序图中的对象,识别哪些对象负责外部接口或流程协调。
Boundary Control Entity 在系统分析师软考中的考法
软考选择题通常不会只考概念定义,还会把Boundary Control Entity放到面向对象分析场景中,要求判断它的作用、适用范围或与相近概念的区别。遇到这类题时,先抓住题干中的业务场景,再看哪个选项最能解决该场景下的核心问题。
解题思路
老师会先问三个问题:谁和外部打交道,谁把步骤串起来,谁代表业务对象。登录页直接面对用户,是边界;认证协调器负责调用校验、记录结果和控制流程,是控制;用户对象保存账号状态与业务属性,是实体。类名只是提示,真正决定分类的是责任。
考点定位
判断三类分析类时看职责,不看类名后缀。页面、接口适配器通常偏边界;流程编排偏控制;领域数据和业务状态偏实体。
易错提醒
- 把所有界面逻辑和业务规则都塞进边界类。
- 让控制类长期保存大量领域数据,形成职责混乱。
- 只根据 Controller、Page 等命名机械判断,不看场景。
备考提示
- 拿下单、支付、登录三个用例,各画一组 BCE 类。
- 复习时把 BCE 与 MVC 对照,但不要认为两套概念可以逐项完全等同。
你可能还想了解
- 边界类和控制类有什么区别?
- 实体类是否等同于数据库表?
- BCE 和 MVC 可以直接一一对应吗?
本文小结
LoginPage负责外部交互,属于边界类;LoginController协调认证用例,属于控制类;User保存业务信息,属于实体类。判断依据是职责而不是命名。