软考-电动车充电智能规划系统设计分析

一、场景

某公司拟开发一个电动车充电智能规划系统,其核心功能是根据用户当前电池电量状态,结合实时电价数据、充电站分布及用户行程需求,智能规划最经济高效的充电时间和地点。具体需求如下:

(a) 系统在收到用户充电查询请求后,必须在3秒内返回最优充电方案,即使在高峰期有10000名用户同时在线的情况下。

(b) 系统架构必须支持新增API,集成新API的开发工作量不超过5人天,且无需修改现有代码结构。

(c) 新用户应能在不查看帮助文档的情况下,在3分钟内完成个人信息设置并获取首次充电推荐方案,首次使用成功率应达到95%。

(d) 当移动应用在网速低于1Mbps的弱网络环境下运行时,系统应切换到安全模式,能够展示用户已保存的路线和上次同步的充电站基本信息。

(e) 系统应具备访问控制能力,确保用户只能访问自己的账户数据,管理员权限变更需要经过多因素认证和审核日志记录。

(f) 系统应对所有用户个人数据和位置信息进行加密存储和传输,其加密方法为AES-256。

(g) 充电费用计算模块应支持灵活配置,使运维人员能够在2小时内更新电价模型,而无需开发人员介入或系统重新部署。

(h) 系统地图路径计算和充电站筛选算法处理50公里范围内包含200个充电站的数据时,CPU使用率不应超过40%。

(i) 系统应提供测试接口,允许测试团队注入不同电池电量、充电站状态和电价数据,以验证充电方案推荐算法在各种场景下的正确性。

(j) 除计划维护时间外,系统应保持99.5%的时间可正常工作,且任何计划维护必须提前72小时通知用户。

(k) 系统应能够实时同步电动车电池状态数据,从车辆API获取数据到系统显示的延迟不超过5秒,确保充电规划基于最新电池电量状态计算。

(l) 系统应实现地理区域冗余,确保即使某一区域数据中心完全故障,全局服务中断时间不超过5分钟。

(m) 系统应提供多种状态的模拟环境,能够重现包含高峰期、恶劣天气、设备故障等真实充电场景。

(n) 系统应为视力、听力或行动不便的用户提供无障碍模式,符合相关无障碍标准。

二、问题

2.1、问题1

识别系统的质量属性需求是架构设计的重要步骤,请选择题干描述的需求(a)~(n)填入表1的(1)~(6)空白处,协助项目组识别电动车充电智能规划系统的质量属性。

2.2、问题2

质量属性场景是一种描述质量属性的方法。

(1)请用100字以内的文字简要回答质量属性场景包括的六个部分的名称。

(2)指出需求(b)中的"集成新API"和需求(l)中的"全局服务中断时间不超过5分钟"分别描述的是质量属性场景中的哪一个部分?

2.3、问题3

根据需求(f)的描述,该系统应使用AES-256加密方法保障高敏感数据。AES-256方法是以16字节的固定块大小处理数据的,但电动车充电智能规划系统中的用户个人信息、位置信息等敏感数据可能超过16字节的固定块大小,请用300字以内的文字简要说明,应如何处理超过该固定块大小的字节的数据?

三、解析

3.1、问题1

① 可用性 (Availability) ------ "不论发生什么,我都在"

口诀:不怕坏、能恢复、在线率

关键词:故障、恢复、冗余、99.9%、中断时间

匹配:(d) 弱网下切换安全模式(坏了能降级,属于容错)。(j) 99.5%的时间正常工作(这就是在线率)。(l) 故障后中断不超过5分钟(这是恢复能力)。

② 性能 (Performance) ------ "天下武功,唯快不破"

口诀:多少秒、多少人、吞吐量、资源占用

关键词:响应时间、并发、延迟、CPU使用率

匹配:(a) 3秒内返回、10000名用户(典型的速度和并发)。(h) CPU使用率不超过40%(资源效率)。(k) 延迟不超过5秒(速度)。

③ 可修改性 (Modifiability) ------ "拥抱变化"

口诀:改的快、不求人、不重启

关键词:新增、变更、配置、无需代码、解耦

匹配:(b) 支持新增API,无需修改现有代码(改动成本低)。(g) 灵活配置电价,无需开发介入(改配置不改代码)。

④ 安全性 (Security) ------ "闲人免进"

口诀:谁能进、防偷窥、留证据

关键词:认证、加密、授权、审计、日志

匹配:(e) 访问控制、多因素认证(门锁)。(f) AES-256加密(防偷窥)。

⑤ 可测试性 (Testability) ------ "方便找虫子"

口诀:能模拟、能注入、能观测

关键词:测试接口、注入数据、复现场景

匹配:(i) 提供测试接口、注入数据(方便QA干活)。(m) 模拟环境重现故障(方便复现Bug)。

⑥ 易用性 (Usability) ------ "傻瓜式操作"

口诀:一学就会、防呆设计、关怀特殊群体

关键词:帮助文档、完成时间、无障碍、界面

匹配:(c) 不看文档3分钟完成(上手快)。(n) 视力听力障碍支持(无障碍设计)。

3.2、问题2

核心思路:一个质量属性不是一个冷冰冰的词,它是一个完整的 刺激-反应过程。

通俗比喻,打游戏:

① 刺激源 (Source): 谁放了大招?(如:用户、黑客、管理员)

② 刺激 (Stimulus): 放了什么大招?(如:点击按钮、发起攻击、修改配置)

③ 制品 (Artifact): 谁被打中了?(如:系统核心、数据库、界面)

④ 环境 (Environment): 当时是什么情况?(如:正常运行中、高负载时、断网时)

⑤ 响应 (Response): 系统怎么应对的?(如:弹窗提示、拦截攻击、切换备用机)

⑥ 响应度量 (Response Measure): 应对得漂不漂亮?(如:3秒内搞定、0数据丢失)

需求(b)中的"集成新API"体现的是系统做了什么,是响应。

需求(l)中的"全局服务中断时间不超过5分钟"体现了系统应付的时效,是响应度量。

3.3、问题3

想象AES是一个只有16厘米长的模具。要用这个定长的模具对长实体来处理。

① 分块:既然数据很长,我们首先就是要把长数据切成一段一段的,每一段都是16厘米。

② 填充:切到最后一段如果不满16厘米,模具又必须是满16厘米的。就要往模具空处填一些填充物(实际有补0或者补特殊数字)。

③ 工作模式:分块和填充之后,我们就可以对每一块数据处理了。但是如果每一块都单独的处理,(ECB模式)。那么相同块处理出来的数据就会是一样的,容易暴露信息。所以需要将前一块的处理结果能影响下一块的处理结果。CBC模式就是把第一块的加密结果混进第二块的处理内容中,保证相同内容的块数据出来不同的加密结果。也可以使用CTR/GCM模式,产生一串随机的"密钥流",和明文异或处理,形成流加密,速度快还能并行处理。

四、答案

【问题1】

(1) (d) (j) (l)

(2) (a) (h) (k)

(3) (b) (g)

(4) (e) (f)

(5) (i) (m)

(6) (c) (n)

【问题2】

(1) 质量属性场景包括的六个部分名称是:刺激源、刺激、环境、制品、响应、响应度量。

(2) 需求 (b) 中的"集成新API":描述的是 响应 (Response) 部分。需求 (l) 中的"全局服务中断时间不超过5分钟":描述的是 响应度量 (Measurement) 部分。

【问题3】 为处理超过AES-256固定块大小(16字节)的数据,系统必须采用安全的工作模式(如CBC、CTR或GCM)而非直接分块加密,具体操作如下:选择如CBC模式时需结合随机初始化向量(IV)并应用PKCS#7等填充标准,使数据长度成为16字节的整数倍后再进行链式加密(前一块密文参与下一块运算);或选用CTR模式将计数器加密生成密钥流与明文异或,无需填充且支持并行处理;最优方案是采用GCM模式(基于CTR),在加密同时通过GMAC提供数据完整性验证,也无需填充。无论何种模式,必须使用强随机且不可预测的IV/Nonce(随密文传输),并配合严格的密钥管理,确保相同密钥下不重复使用IV,从而安全地加密任意长度的敏感数据,同时绝对避免使用不安全的ECB模式。

相关推荐
无心水3 天前
15、云原生架构设计理论与实践 核心考点与学习笔记
笔记·学习·云原生·架构师·软考·系统架构设计师·软考系统架构设计师
无心水5 天前
6、软件工程 核心考点与学习笔记
笔记·学习·软件工程·软考高级·架构师·软考·软考系统架构设计师
无心水5 天前
5、信息安全技术基础知识 核心学习笔
人工智能·学习·软考高级·架构师·软考·高级架构师·软考架构师
无心水5 天前
8、系统架构设计基础知识 核心考点与学习笔记
笔记·学习·系统架构·架构师·软考·软考架构师·软考高级架构师
Misnearch7 天前
第7章 面向对象技术
java·开发语言·软考
希赛网10 天前
2026下半年系统架构设计师考前20问
系统架构·软考高级·系统架构设计师·软考高级架构师·软考高级系统架构设计师
鱼头研学社12 天前
在职备考高项报班避坑:“客服说加微信发报价“到“官网自助下单“,中间差了啥
项目管理·软考·高项·备考
zlp199221 天前
软考(系统架构师)-案例分析之大模型ReAct与Plan-and-Execute
软考高级·软考·系统架构师·软考备考
我是胡杨学长22 天前
软考考务冷知识 Vol.1:北京考区明确,雷同答卷直接成绩无效
项目管理·职场·软考·信息系统项目管理师·系统集成项目管理工程师
_默_22 天前
软考中级—软件评测师 备考笔记:程序设计语言基础
软考·软考中级·评测师