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

一、场景

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

(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模式。

相关推荐
@insist1233 小时前
软考-软件设计师-计算机体系结构核心考点与应用
软件工程·软考·软件设计师
zlp19922 天前
软考(系统架构师)-软件架构设计之软件系统质量属性
软考高级·软考·系统架构师
BOB-wangbaohai4 天前
软考-字处理软件设计分析
软考·架构设计·系统架构设计师·架构风格
BOB-wangbaohai6 天前
软考-库存管理系统需求分析
软考·系统架构师·需求工程
我只会写Bug啊10 天前
【软考】2026年软考高级考前集训100题(题目+选项+答案+解析)
系统架构·软考·系统架构师·系统分析师·十大管理
我只会写Bug啊13 天前
【软考】系统架构设计师-论文范文(三)
系统架构·软考·系统架构师·系统分析师·十大管理·信息项目管理工程师
我只会写Bug啊13 天前
【软考】系统架构设计师-论文范文(二)
系统架构·软考·系统分析师·十大管理·信息项目管理
软考通13 天前
软考改革再提速!工信教考再招 2 人,2026 年软考会有哪些动作?
大数据·人工智能·职场和发展·职场发展·软考
snow@li13 天前
软考中级:软考中级各方向的详细分类及科目介绍
软考·软考中级