2019年11月系统架构设计师真题及解析摘要
综合知识试卷
本试卷涵盖了系统架构设计相关的多个技术领域,包括操作系统、数据库、网络、软件工程、系统架构风格、设计模式、安全攸关系统、知识产权等。试题共75题,分为单选题和多选题,每道题均附有详细解析,旨在考查考生对系统架构设计核心知识点的掌握。
1. 操作系统与并发控制
- 前趋图(Precedence Graph)用于描述进程之间的执行顺序关系,考察了进程调度的依赖关系。
- 页面置换机制与地址转换:通过页表进行逻辑地址到物理地址的转换,并基于访问位和修改位进行页面淘汰策略判断。
- 进程调度算法:考察了抢占式优先级调度、最早截止期调度、最晚截止期调度等实时系统调度策略。
2. 数据库系统
- 函数依赖与规范化理论:包括A→BC、B→D、D→E等函数依赖的推导,判断是否存在传递依赖。
- 关系模式的分解:判断是否满足无损连接和保持函数依赖。
- 数据库安全机制:通过存储过程实现数据更新,防止第三方获取数据库结构。
- 分布式数据库:考察了全局概念模式、分片模式、分布模式等概念。
3. 网络与通信
- TCP端口号的作用:用于应用层进程的寻址。
- DNS、HTTP、ARP等网络协议的执行顺序:浏览器访问网页前的网络行为分析。
- DHCP服务机制:园区网中可存在多台DHCP服务器,客户端自动选择最先响应的服务器。
- 网络冗余设计:通过备用路径、负载分担提升网络可用性。
4. 软件工程与系统设计
- 软件生命周期模型:划分为定义、开发、运行与维护三个阶段,可行性研究属于定义阶段。
- 需求变更管理流程:包括问题分析、变更描述、变更分析与成本计算、变更实现。
- 软件开发方法:自顶向下、自底向上、形式化开发方法的适用场景。
- 构件组装技术:基于功能、数据、面向对象的组装方式。
5. 系统架构与质量属性
- 架构风格:批处理、规则系统、层次型等风格的适用场景。
- 质量属性分析:性能、可用性、安全性等质量属性与架构策略的对应关系。
- 设计模式分类:创建型、结构型、行为型模式,如Singleton、Prototype、Builder等。
6. 安全与知识产权
- 电子邮箱安全相关协议:SSL、HTTPS、PGP等保障邮件安全,MIME不涉及安全。
- 软件著作权:保护期、权利归属、侵权认定等法律问题。
- 软件安全需求:防止不可接受的违反系统安全的行为。
7. 项目管理与应用数学
- 项目进度管理:关键路径法(CPM)计算总工期及作业延迟容忍度。
- 数据库性能评估:真实程序、核心程序、基准测试程序的评估精度差异。
- 灵敏性分析:评估数学模型对参数变化的敏感程度。
8. 英文填空题
- 数据结构与数据库模型:数据冗余、实体-联系图(ERD)、数据库规范化等基础概念。
- 第三范式(3NF)是业务数据库设计的标准形式。
案例分析部分
1. 用户管理系统架构设计
- 功能需求:用户等级划分、动态调整、折扣策略。
- 质量属性:性能、安全性、可用性、可修改性等。
- 架构风格对比:基于规则的架构风格更适用于动态规则管理,灵活性高,但性能较低。
2. 订餐管理系统数据流图
- 外部实体与加工过程识别:客户、厨房、经理、供应商;订餐、备餐、采购、报表。
- 补充数据流:订单数据、统计报表、库存更新等。
- 数据流图与系统流程图区别:数据流图强调数据流动与处理,支持并行处理;系统流程图强调控制流,按顺序执行。
3. 宇航装备CPS系统设计
- CPS三层结构:感知层(传感器、控制器)、网络层(数据传输)、控制层(决策与反馈)。
- 功能归属分析:飞行传感器管理、步进电机控制等属于感知层;飞行员不属于CPS结构。
- 安全威胁分类:感知层(数据破坏、节点捕获)、网络层(拒绝服务、方向误导)、控制层(非授权访问、恶意代码)。
4. 缓存系统优化与数据一致性
- 数据同步问题:双写不一致、并发冲突。
- 缓存读写策略:读缓存失败则读数据库并更新缓存;写数据库成功后更新或删除缓存。
- 缓存穿透问题:设置空值可能造成内存浪费,解决思路为key过滤机制(如Bitmap)。
- 缓存雪崩问题:设置随机失效时间、缓存串行化更新、多级缓存等策略。
5. 物流车辆管理系统架构设计
- 非功能性需求分类:性能(并发、响应时间)、安全性(SQL注入)、可用性(故障恢复)、易用性(界面友好)。
- 架构层次划分:表现层、逻辑处理层、分布式通信处理层、Kafka消息队列、Redis缓存、数据存储层。
- SQL注入攻击防御:参数化查询、输入验证、使用ORM框架、定期扫描漏洞。
论文写作建议
1. 软件设计方法及其应用
- 可选择结构化设计(如模块划分、内聚与耦合)或面向对象设计(类、继承、多态)展开论述。
- 结合实际项目说明设计方法的实施过程与效果。
2. 软件系统架构评估及其应用
- 推荐使用ATAM方法进行架构评估,结合质量属性效用树分析性能、可用性、安全性等。
- 举例说明在项目中如何识别风险点并提出改进建议。
3. 数据湖技术及其应用
- 数据湖与数据仓库的对比:数据来源、模式转换时机、存储成本、数据质量、用户群体、应用场景。
- 适用于大数据分析、机器学习等项目,需结合具体案例说明实施过程。
4. 负载均衡技术在Web系统中的应用
- 负载均衡算法:轮询、随机、最小连接数等。
- 实施方式:Nginx、LVS、HAProxy等工具,适用于高并发Web系统。
本真题试卷内容全面,覆盖系统架构设计的核心知识点,适合备考系统架构设计师考试的考生进行系统性复习与练习。