软考架构师 · 考点拆解 2026-10-03
案例分析 01:一道完整真题,从读题写到收笔
星期四 · 第 03 期 · 案例分析(1)· 完整题
案例分析的模拟题最容易被写错。综合知识出选择题,案例要出的是有背景、有分问、有采分点的整道大题。这一期按这个规格来写,先把三道完整真题摆开,再给一道自拟的完整案例题。
综合知识 75 题 / 75 分(120—150 分钟) 案例分析 5 选 3 / 75 分(90 分钟) 论文 4 选 1 / 75 分(120 分钟) 三科均 45 分合格
案例第 1 题,历年都在考质量属性
案例分析 5 选 3,第 1 题必做。翻 2020 到 2025 年的记录,第 1 题几乎年年落在质量属性与架构评估上,动作在归类、补图、说理由之间轮换。
这一期把三场的第一大题完整摆出来,案例背景、每一问、分值、参考答案一个字不省。看完再配一道同题型的自拟案例题自己练。
案例踩点给分,分值就是要点数。12 分的问题至少写 6 个点,一行一个术语,堆成一整段拿不到分。
1.完整真题一:2020 上 · 案例第 1 题,在线软件开发系统,两问 25 分
2.完整真题二:2022 上 · 案例第 1 题,会员与促销管理系统,一问 12 分
3.完整真题三:2025 上 · 案例第 1 题,在线大模型训练平台,三问 25 分
4.模拟案例题:自拟,同样三问结构,附完整参考答案
5.用法:先盖住参考答案自己做一遍,再逐条对采分点
2020 上:在线软件开发系统
某公司拟开发一套在线软件开发系统,支持用户通过浏览器在线进行软件开发。系统的重要功能包括代码编辑、语法高亮显示、代码编译、系统调试、代码仓库管理等。在需求分析与架构设计阶段,公司提出的需求和质量属性描述如下表。
第 1 问(13 分)
针对该系统的功能,李工建议采用管道过滤器(pipe and filter)架构风格,王工建议采用仓库(repository)架构风格。请指出该系统更适合采用哪种架构风格,并从数据处理方式、系统的可扩展性和处理性能三个方面对两种风格进行比较与分析。
第 2 问(12 分)
质量属性效用树(utility tree)是对系统质量属性进行识别和优先级排序的重要工具。请将合适的质量属性名称填入效用树中的空白处,并选择题干中描述的 (a) 到 (k) 填入其余空白处,完成该系统的效用树。
选仓库风格,理由写在三个维度上
第 1 问:应该采用仓库架构风格
这套系统的核心是代码仓库,编译、调试、语法高亮都要围绕同一份代码数据反复读写。仓库风格把数据集中管理,正好对上这个特点。
数据处理方式:仓库的数据存储在中心仓库,各处理流程独立,支持交互式处理。管道过滤器的数据按流的形式组织成处理序列,一路单向往下走。
系统扩展方式:仓库的数据按需定期输出,可以高度并行处理。管道过滤器调整流程要更新整条流水线,扩展一个环节就得动前后接口。
处理性能:仓库把数据与处理分离,每次都要先加载数据,性能会降下来,但数据处理组件之间没有依赖,可以并发调用把性能补回来。
第 2 问:效用树填空
效用树默认有四个质量属性:性能、可用性、安全性、可修改性。第 1 类空白填属性名,第 2 类空白填题干里的场景编号。
(1) 安全性 (2) 可修改性 (3) g (4) i (5) f (6) j
选型题只写「仓库更好」不给理由,13 分能拿到的只剩一半。三个维度各写一句,每一句都要点出这个系统自己的特征。
效用树填空不要凭重要性排序去猜。先看空白挂在哪一类质量属性下面,再按场景的度量词往回找编号。
回忆版里原表的表头与答案列有错位,这里按参考答案的内容列出,不去复原那张错位的表。
2022 上:会员与促销管理系统
某电子商务公司拟升级其会员与促销管理系统,向用户提供个性化服务。新系统除了保持现有的四级固定会员制度,还需要根据用户的消费金额、偏好、重复性等特征动态调整商品折扣力度,并在特定活动期间向相关会员推送个性化的打折促销活动。公司提出的需求和质量属性描述如下表。
第 1 问(12 分)
在架构评估过程中,质量属性效用树是对系统质量属性进行识别和优先级排序的重要工具。请将合适的质量属性名称填入效用树的空白处,并从题干描述的 (a) 到 (k) 中选择合适的场景,填入其余空白处,完成该系统的效用树。
两个属性名,四个场景编号
属性名
(1) 可修改性 (2) 性能。
场景编号
(3) a (4) k (5) c (6) e。
a 和 k 都带「人天」和「设置后即可生效」,是可修改性的度量词。c 和 e 都带「多少秒内」,是性能的度量词。这两组词就是判据。
剩下七条也顺手归一下类
可用性是 f 和 h,安全性是 b,功能性是 d,可维护性是 g、i、j。题干里每一条都埋了一个度量词,归类就是把度量词圈出来。
d 容易被写成安全性。用户名规则属于功能性里的约束,不是安全机制,别看到「唯一标识」就往安全上靠。
f 和 h 都提到了故障,都归可用性,不要拆成两个属性。前者说的是请求重定向,后者说的是感知与切换,动作都是故障后的恢复。
2025 上:在线大模型训练平台
某公司开发一个在线大模型训练平台,支持 Python 代码编写、模型训练和部署。用户通过 Python 编写模型代码,把代码交给系统解析,最终由系统分配相应的计算机资源输出结果,用户不需要关心底层硬件平台。平台的质量属性描述如下表。
第 1 问(12 分)
对上述提及的质量属性进行分类,写出分类的描述。
第 2 问(6 分)
X 工认为应该使用解释器风格来架构该系统,请补充解释器风格的系统图。
第 3 问(7 分)
该平台为什么适合解释器风格?
11 条场景、3 个空、5 条理由
第 1 问:归类
11 条一条一分,属性名加一句描述。带斜杠的两个都要写上,写一个只拿一半。
(1) 归类结果见下表。e 和 k 都归可用性:e 说的是切换时间在 20 分钟内,k 说的是立即切换保证业务连续,两条都在讲故障后的业务是否中断。
a 说的是出错不影响运行并通知管理员,属可靠性;g 说的是 15 分钟内修复,也属可靠性,与 e、k 的可用性区分开。
补图与说理由怎么答
第 2 问:解释器风格系统图的三个空
解释器风格由三块组成:解释器引擎,以及它读写的程序当前执行状态和解释器引擎内部状态。图上的三处空白就填这三块。
填完之后把连线方向也标出来。解释器引擎从程序当前执行状态里读取下一步要执行的语句,执行中读写自己的内部状态,内部状态记录解释到哪、环境变量是什么。
第 3 问:为什么适合解释器风格
7 分至少写 4 条,每条一个术语加一句为什么。这个平台要跑用户提交的 Python 代码,这是最直接的理由。
第 1 问只写属性名不写描述。题目原文是「分类,写出分类的描述」,属性和解释都要有,少写一半要扣分。
第 3 问写「因为解释器风格更灵活」这种空话。要落到这个平台的具体特征:用户提交代码、当场执行、边改边跑。
√动态执行代码:平台要接收用户提交的 Python 代码并当场执行,解释器逐行解析,不需要预编译
√交互式调试:训练平台要支持边改边跑,解释器能即时反馈每一行的执行结果
√运行时可扩展:新增算子或算子库不用重新编译整个平台,改完即可生效
√错误定位到行:解释器能报出出错的行号和上下文,用户自己就能改代码
√资源按需分配:解析一步分配一次算力,比一次性编译整个任务更灵活
2020 到 2025,第 1 题都考了什么
第 1 题必做,所以它的考点最稳定。把六年的第 1 题排在一起,题型就两种:一个是把场景归到质量属性,一个是拿两种架构风格做对比。
备考时按这两类各练两道完整大题就够。练的时候掐时间,一道 25 分的大题留 30 分钟。
自拟:城市轨道交通调度指挥系统
下面是一道自拟的完整案例题,不挂出处。背景和问法照着真题的样子写,做完再对照下一段的参考答案。
某市拟建设一套城市轨道交通调度指挥系统,覆盖 8 条线路、日均客流 600 万人次。系统接入各线路的实时信号,为调度员提供统一视图,并在异常时给出告警。在需求分析与架构设计阶段,公司提出的质量属性描述如下表。
第 1 问(10 分)
写出下表中 a 到 i 各条质量属性描述对应的质量属性名称。
第 2 问(8 分)
该系统要求主数据中心断电后 30 秒内把指挥业务切到异地灾备中心。请指出这属于哪一类质量属性的战术,并说明三种常见的可用性战术。
第 3 问(7 分)
如果要让系统支持新线路的动态接入,请从可修改性角度给出两种可选方案,并各说一句代价。
归类表 + 战术 + 两种方案
第 1 问:归类(10 分)
九条按度量词对号入座。b 和 d 都带「人天」或日志,注意分开:b 是日志属于可维护性,d 是 5 人天属于可修改性。
第 2 问:可用性战术(8 分)
这属于可用性里的错误检测与错误恢复。「30 秒内切换」是度量词,检测靠心跳或 ping/echo,恢复靠冗余切换。
第 3 问:可修改性方案(7 分)
两种方案任选两种写,每种写清做了什么、代价是什么。分值按方案数加代价说明分配,只写方案不写代价会丢分。
√主动冗余:主备节点同时运行同一份数据,主节点故障时备节点立即接管,切换快但平时要付双份资源
√被动冗余:备用节点平时不承载业务,故障后才启动,资源省但启动要花时间
√检查点与回滚:定期把系统状态写成检查点,故障后从最近一个检查点恢复,能保证数据一致但要付出回滚期间的停机
√方案一 配置驱动:把线路编号、站点、信号协议做成外部配置项。新增线路只改配置不改代码,代价是配置写错会在运行时报错。
√方案二 插件化接入:每条线路写成独立的适配器插件,平台只认统一的接入接口。代价是接口与版本管理成本上升,插件之间要立规矩
本期复盘
案例第 1 题两种题型:把场景归到质量属性,或者拿两种架构风格做对比。归类看的是场景里的度量词,多少秒、多少分钟、几个人天;对比看的是这个系统自己的特征,数据要不要集中、流程要不要串起来。答的时候按分值数点,一行一个术语。做题顺序上,案例的时间是被选择题挤出来的,选择题拖久了,一类大题就得写快点。
案例分析这条线接着往下走,下一讲讲数据库与缓存那一类大题:分库分表怎么答,缓存一致性怎么踩点,照样是完整真题再配一道自拟题。
感谢觉得有帮助记得给小锅点赞关注收藏~
下方是总结知识卡片图,方便记忆学习