news 2026/10/13 3:05:25

第46篇-移动应用系统分析与设计

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
第46篇-移动应用系统分析与设计

【软考高级·系统分析师全链路通关实战】第 46 篇:移动应用系统分析与设计

本系列定位:面向有开发经验、从零备考软考高级「系统分析师」的工程师,以《系统分析师教程(第 2 版)》为主线,按「综合知识 → 案例分析 → 论文」三科组织,需求工程与 UML 建模深拆,60 篇带你从考试小白到三科同过。


本篇你将学到

  • 移动应用三种形态:原生 App、混合 App、Web App 的对比与选型论证
  • 移动端特有需求:弱网、离线、电量、推送、传感器——桌面/Web 时代没有的分析维度
  • 移动端客户端架构:MVP 与 MVVM 的落地辨析
  • 移动安全:本地存储、通信、逆向防护三道防线
  • 云诊通实战:患者端「离线续方」与「消息推送」的需求分析全过程

模块九第三站。移动场景的分析题套路固定:给一个业务场景,问选什么形态、离线怎么设计、安全怎么保障——本篇按这三个问题组织。


考点热力表

知识点综合知识案例分析论文
三形态对比与选型★★★★★★★★
弱网与离线设计★★★★★★★
推送机制★★★★
MVP/MVVM 辨析★★★★
移动安全三防线★★★★★★★

一、三种应用形态与选型

维度原生 App混合 App(跨端框架)Web App(H5)
性能与体验最佳接近原生一般
设备能力(传感器/推送)全量大部分受限
开发成本双端两套代码,最高一套代码多端,中最低
更新发布应用商店审核,慢动态化能力较强服务端即时更新
离线能力强较强弱(依赖缓存策略)

是

否

是

否

移动形态选型

需要推送-传感器-离线等
深度设备能力?

性能要求极致?

Web App
H5 轻量触达

原生 App

混合 App
一套代码多端发布

云诊通选型示范:患者端选原生 App——视频问诊(第 03 篇业务域)对编解码性能与摄像头采集要求高,且需要可靠的消息推送(医生回复必须及时触达);医院运营的推广活动页选Web App——无需安装、扫码即达、服务端随时更新;医生端后续选混合形态——功能以列表表单为主、迭代快。**「一个项目多形态并存、按端按场景选型」**本身就是案例采分点:选型不是全有或全无。


二、移动特有需求分析:五个关键词

关键词需求问题典型措施
弱网电梯/地库/院区信号盲区怎么办请求重试退避、断点续传、超时分级
离线无网时核心功能可用吗本地缓存 + 队列化写操作、恢复后同步
电量后台定位/心跳是否耗电按需唤醒、批量上报、避免轮询
推送医生回复如何及时触达厂商通道保活、到达率补偿、角标与静默时段
传感器拍照上传病历、步数随访权限最小化申请、降级方案

这五个词是案例题「移动应用需求分析还应考虑哪些方面」的现成答案——比泛泛写「性能、安全」得分高一个档次。第 42 篇的移动专项测试清单(弱网中断/安装升级/电量流量/机型/推送)与之互为镜像:需求分析与测试项一体两面。


三、云诊通实战:患者端离线续方与推送需求分析

3.1 场景

慢病患者复诊续方高频:老院区地库取药时信号差、通勤地铁中断网——患者在这些场景下会查看处方、提交续方申请。业主要求「续方体验不因网络中断而丢失」。

3.2 离线续方的需求分析四步

第一步 划分离线可用边界:并非所有功能都值得离线——处方查看(只读)离线可用;续方提交采用「离线受理、在线生效」:本地生成申请单入待发送队列,联网后补交,服务端以「受理时间」为准裁决(避免离线抢开药窗口的合规风险——合规约束反过来收窄了离线设计的自由度,这句话本身就是医疗类案例的加分点)。

第二步 数据同步设计:本地缓存近期处方与用药记录(加密存储),登录态令牌本地保存并设滑动过期;恢复联网后增量同步、冲突以服务端为准。

第三步 状态可感知:排队中的续方单显示「待网络恢复发送」,失败可重试可撤销——离线体验的核心是让用户始终知道系统状态,而不是假装在线。

第四步 边界值补充验证:队列上限(如 5 单)、重复提交去重(幂等键)、离线超时过期策略(48h 未联网自动作废并通知)。

是

否

否

是

患者点击提交续方

网络可用?

直接提交
同步返回受理结果

生成本地申请单
入待发送队列-显示待发送态

网络恢复自动补交
幂等键去重

超过 48 小时?

服务端按受理时间裁决

自动作废并推送通知

3.3 推送需求分析

云诊通推送三类消息:事务性(医生回复、审方结果——必须到达)、提醒性(复诊提醒——按静默时段策略)、营销性(活动——需用户授权开关,第 03 篇医院运营与患者的冲突点)。分析要点:到达率保障走厂商推送通道组合 + App 在线时长连接;关键事务推送失联时降级为短信兜底;推送内容不含处方明细(锁屏可见的隐私风险,等保三级语境)。

推送分析还引出一个「需求—平台—运营」三方张力:医院运营希望推送频次高、转化好,监管与用户侧要求克制触达(骚扰投诉直接影响应用商店评分)。系统分析师的解法是把张力转化为可配置的策略需求:推送频次上限、静默时段(如 22:00-7:00 只放行事务类)、用户侧分类开关(事务类不可关、营销类默认关)写进 SRS 的非功能约束章节——把干系人冲突沉淀为规格条款,正是第 28 篇需求协商的落点。


四、移动端架构与安全

4.1 客户端架构:MVP 与 MVVM

第 35 篇 MVC 在移动端的演化:MVP以 Presenter 显式持有 View 接口、双向回调,便于单元测试;MVVM以数据绑定让 View 随 ViewModel 状态自动刷新,减少模板代码。判定信号:题目说「视图与逻辑通过接口解耦、便于测试」选 MVP;说「数据驱动、双向绑定」选 MVVM。

4.2 移动安全三道防线

移动安全三防线

本地存储
敏感数据加密-不落明文日志

通信
HTTPS 证书校验-防中间人

逆向防护
代码混淆-防调试-密钥不硬编码

案例题给「App 被抓包、本地数据库被导出」等场景,按三防线归位作答即可。云诊通语境:患者隐私数据(病情、处方)本地加密存储、通信证书锁定(防中间人抓包)、发布包混淆加固——三句话就是三个采分点。

补充一个权限维度的收尾:移动端权限申请遵循最小化与场景化原则——仅在用户实际使用相关功能时申请(拍照上传病历时再申请相机权限),并在应用内提供权限用途说明;被拒绝后提供降级路径(从相册选择替代直接拍摄)。这套「申请时机 + 用途说明 + 拒绝降级」三件套既是应用商店审核的硬要求,也是移动端可用性需求的常见采分点。


五、弱网与离线策略速查

「弱网与离线」是移动端需求分析的主战场,案例题常给一个业务场景问「如何设计弱网/离线方案」。先把策略梯度摆清楚,再按业务特性对号入座:

策略梯度做法适用业务代价与风险云诊通落例
重试 + 退避失败后自动重试,间隔指数拉长幂等的读操作高峰重试风暴需上限约束报告列表刷新
请求排队离线生成请求入本地队列,联网后按序补交事务性提交但可延迟生效需幂等键防重复、过期作废离线续方申请单(48 小时过期)
本地缓存只读热点数据落本地,离线可看不可改查询类、数据变化不频繁缓存时效与存储加密(隐私)最近处方与报告查看
边缘计算前置端侧先完成校验/压缩,弱网只传结果采集密集、原始数据大端侧算力与电量消耗体温血压采集端侧打包上报
全功能离线本地数据库支撑增删改,双端同步合并无强一致性要求的工具类冲突解决复杂,医疗场景慎用平台未采用(合规风险)

选型判断三问:① 离线期间的操作生效时效能容忍多久——续方可容忍小时级(排队策略),挂号不能(只做只读缓存);② 离线产生的数据重复提交后果多严重——涉及处方的必须幂等键 + 服务端去重;③ 数据离线落在端上是否合规——患者隐私数据本地存储必须加密且可远程擦除(第 46 篇安全三防线)。

弱网专项指标(案例答题可引用):弱网测试通常在 2G/3G、高丢包(20%)、高时延(800ms 以上)与网络切换(WiFi↔蜂窝)四类环境下验证;验收口径写「关键事务在模拟弱网下成功率不低于 99%、超时友好提示而非崩溃」——把弱网需求写成可验证的验收条款,正是第 29 篇 SRS 质量属性要求在移动端的具体化。

电量与流量这对孪生约束(移动端独有,案例常被追问):省电策略的核心是「减少唤醒次数、合并传输批次」——传感器按需采集(运动状态触发而非定频)、上报走批量窗口(每 15 分钟聚合一次而非逐条上传)、界面渲染避免高频刷新;流量侧对应用户「偷跑流量」的差评,做法是区分 WiFi/蜂窝网络下的同步策略(大文件仅 WiFi 下预取)并在设置中提供流量开关。答题时把电量与流量并列作答并各给一条措施,覆盖面就完整了。


真题风格自测题

1. 对设备性能与传感器能力要求极高、体验优先的移动应用,宜选择( )。
A. 原生 App B. Web App C. 短信服务 D. 桌面网页

2. 一套代码多端发布、开发成本适中、能力接近原生的形态是( )。
A. 原生 App B. 混合 App C. Web App D. 小程序专属硬件

3. 无需安装、扫码即达、服务端即时更新的形态是( )。
A. 原生 App B. 混合 App C. Web App D. 均不可

4. 移动应用需求分析区别于桌面系统的特有维度不包括( )。
A. 弱网与离线 B. 电量消耗 C. 推送触达 D. 数据库范式

5. 离线场景下「本地生成申请单入队、联网后补交」的方案核心是( )。
A. 离线受理、在线生效 B. 全功能离线可用 C. 禁止一切离线操作 D. 离线数据永不同步

6. 防止离线重复提交的技术手段是( )。
A. 加大按钮面积 B. 幂等键去重 C. 提高网速 D. 禁用按钮即可无需后端配合

7. 事务类推送(医生回复)未到达时的兜底措施是( )。
A. 放弃通知 B. 短信降级兜底 C. 等下次打开 App D. 电话回访所有患者

8. 锁屏推送内容不含处方明细,主要出于( )。
A. 流量节省 B. 隐私保护(等保三级要求) C. 字数限制 D. 推送通道限制

9. 「视图与业务逻辑通过接口解耦、便于单元测试」描述的架构模式是( )。
A. MVC B. MVP C. MVVM D. 微内核

10. 「数据绑定、视图随状态自动刷新」描述的架构模式是( )。
A. MVC B. MVP C. MVVM D. 管道过滤器

11. 移动安全「三道防线」指( )。
A. 防火墙-杀毒-备份 B. 本地存储加密-通信防护-逆向防护 C. 蛇皮走位 D. 权限-日志-缓存

12. 云诊通患者端选原生 App 的最重要理由是( )。
A. 开发最便宜 B. 视频问诊性能与可靠推送的设备能力要求 C. 无需审核 D. 不联网可用

13. 离线续方申请单设 48 小时过期策略,属于( )。
A. 边界值与异常路径设计 B. 界面美化 C. 数据库设计 D. 网络规划

14. 按需唤醒、批量上报传感器数据的目的是( )。
A. 提高精度 B. 降低电量与流量消耗 C. 增加数据量 D. 无目的

参考答案:1.A 2.B 3.C 4.D 5.A 6.B 7.B 8.B 9.B 10.C 11.B 12.B 13.A 14.B(三形态口诀:原生求性能、混合求成本、H5 求触达;五关键词:弱网离线电量推送传感器)


本篇小结

知识点核心内容
三形态原生(性能/能力)、混合(成本/多端)、H5(触达/更新);一项目多形态并存
五关键词弱网、离线、电量、推送、传感器——案例答题现成框架
离线续方四步划边界(离线受理在线生效)→ 数据同步 → 状态可感知 → 边界值验证
推送三分类事务性必达(短信兜底)、提醒性静默时段、营销性需授权
客户端架构MVP 接口解耦便于测试;MVVM 数据绑定驱动
安全三防线本地存储加密、通信证书校验、代码混淆不硬编码密钥

下篇预告

第 47 篇:大数据处理系统分析与设计
数据来源→采集→存储→计算→应用的分析路径、批处理与流处理及 Lambda 架构、医疗数据治理与脱敏合规实战。


如果本篇内容对你有帮助,欢迎点赞收藏!有任何疑问,欢迎在评论区交流。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/13 3:05:22

第55篇-案例专项五-计算题专项-可靠性性能存储与网络图

【软考高级系统分析师全链路通关实战】第 55 篇:案例专项五——计算题专项:可靠性、性能、存储与网络图 本系列定位:面向有开发经验、从零备考软考高级「系统分析师」的工程师,以《系统分析师教程(第 2 版)…

作者头像 李华
网站建设 2026/10/13 3:05:08

Wing 编译器插件设计指南:preSynth / postSynth / validate 钩子与实战

编程语言编译器云原生语言运行时 【免费下载链接】wing A programming language for the cloud ☁️ A unified programming model, combining infrastructure and runtime code into one language ⚡ 项目地址: https://gitcode.com/gh_mirrors/wi/wing 点击查看 免…

作者头像 李华
网站建设 2026/10/13 3:03:31

MySQL行转列实战:从CASE WHEN到动态SQL的完整攻略

做过报表开发的人几乎都撞上过同一个场景:业务表里明明是一行接一行的明细数据,领导却偏偏要一张横着铺开的宽表,季度在旁边排开、门店在头顶列队、指标一个个填进单元格。我第一次被这个问题卡住的时候,是在一个模拟订单系统里跑…

作者头像 李华