系统架构设计师考试大纲
一、考试说明:
1.考试目标
考试合格人员应能够根据系统需求规格说明书,结合应用领域和技术发展的实际情况,考虑有关约束条件,设计正确、合理的软件架构,确保系统架构具有良好的特性;能够对项目睥系统架构进行描述、分析、设计与评估;能够按照相关标准编写相应的设计文档;能够与系统分析师、项目管理师相互协作、配合工作;具有高级工程师的实际工作能力和业务水平。
2.考试要求
(1)掌握计算机硬软件与网络的基础知识;
(2)熟悉信息系统开发过程;
(3)理解信息系统开发标准、常用信息技术标准;
(4)熟悉主流的中间件和应用服务器平台;
(5)掌握软件系统建模、系统架构设计基本技术;
(6)熟练掌握信息安全技术、安全策略、安全管理知识;
(7)了解信息化、信息技术有关法律、法规的基础知识;
(8)了解用户的行业特点,并根据行业特点架构合适的系统设计;
(9)掌握应用的数学基础知识
(10)熟练阅读和正确理解相关领域的英文文献;
3.考试科目设计设置
(1)信息系统综合知识,考试时间为150分钟,笔试,选择题;
(2)系统架构设计案例分析,考试时间为90分钟,笔试,问答题;
(3)系统架构设计论文,考试时间为120分钟,笔试,论文题。
二、考试范围
考试科目1:信息系统综合知识
1.计算机软件与网络基础知识
1.1操作系统
l 操作系统的类型和结构
l 操作系统基本原理
l 网络操作系统及网络管理
l 嵌入式操作系统与实时操作系统
1.2数据库系统
l 数据库管理系统的类型、结构和性能评价
l 常用的关系型数据库管理系统
l 数据库模式
l 数据库规范化
l 分布式数据库系统,并行数据库系统
l 数据仓库与数据挖掘技术
l 数据库工程
l 备份恢复
1.3嵌入式系统
l 嵌入式系统的特点
l 嵌入式系统的硬件组成与设计
l 嵌入式系统应用软件及开发平台
l 嵌入式系统网络
l 嵌入式系统数据库
1.4数据通信与计算机网络
l 数据通信的基本知识
l 开放系统互连参考模型
l 常用的协议标准
l 网络互连与常用网络设备
l 计算机网络的分类与应用
1.5多媒体
l 多媒体的类型、特点及数据格式
l 多媒体数据的压缩编码
1.6系统配置与性能评价
l 多层结构、分布式系统
l 系统配置方法(双份、双重、热备份、容错、集群)
l 性能计算(响应时间、吞吐量、TAT)
l 性能设计(系统调整、Amdahl解决方案、响应特性、负载均衡)
l 性能指标(SPEC-Int、SPEC-Fp、TPC、Gibsonmix、响应时间)
l 性能评估
2.信息化基础知识
2.1信息系统工程总体规划
l 总体规划目标、范围
l 总体规划的方法论
l 信息系统的组成
l 信息系统的实现
2.2政府信息化与电子政务
l 电子政务的概念、内容和技术形式
l 中国政府信息化的策略和历程
l 电子政务建设的过程模式和技术模式
2.3企业信息化与电子商务
l 企业信息化的概念、目的、规划、方法
l ERP的主要模块和主要算法
l 企业业务流程重组(BPR)
l CRM、PDM在企业的应用
l 知识管理
l 企业应用集成
l 全程供应链管理的思想
l 商业智能
l 电子商务的类型、标准
2.4信息资源管理
2.5国际和国内有关信息化的标准、法律和规定
3.系统开发基础知识
3.1开发管理
l 项目的范围、时间、成本
l 文档管理工作、配置管理
l 软件开发的质量与风险
l 软件的运行与评价
3.2需求管理
l 需求变更
l 需求跟踪
l 需求变更风险管理
3.3软件开发方法
l 软件开发生命周期
l 软件开发模型(瀑布模型、演化模型、增量模型、螺旋模型、原型,构件组装模型、RUP,敏捷方法)
l 构件与软件重用
l 逆向工程
l 形式化方法
3.4软件开发环境与工具
l 集成开发环境
l 开发工具(建模工具、分析设计工具、编程工具、测试工具、项目管理工具等)
3.5设计方法
l 分析设计图示(DFD、ERD、UML、流程图、NS图、PAD)
l 结构化分析与设计
l 模块设计
l 面向对象的分析与设计
l I/O设计、人机界面设计
l 设计模式
3.6基于构件的开发
l 构件的概念与分类
l 中间件技术
l 典型应用架构(J2EE、.NET)
3.7应用系统构建
l 应用系统设计与开发(分析与设计方法的使用、外部设计、内部设计、程序设计、测试)
l 软件包的使用(开发工具、运行管理工具、业务处理工具、ERP、群件、OA工具)
3.8测试与评审
l 测试评审方法
l 验证与确认(V&V)
l 测试自动化
l 测试设计和管理方法
4.软件架构基础知识
l 软件架构的概念
l 软件架构的风格
l 特定领域软件架构
l 基于架构的软件开发方法
l 软件架构评估
l 软件产品线
l 设计模式
5.安全性与可靠性技术
4.1信息安全与保密
l 加密和解密
l 身份认证(数字签名、密钥、口令)
l 访问控制
l 安全保密管理(防泄漏、数字水印)
l 安全协议(SSL、PGP、IPSec)
l 系统备份与恢复
l 防治病毒
4.2系统可靠性
l 可靠性设计(容错技术、避错技术)
l 可靠性指标与评估
4.3安全性规章与保护私有信息规则
l 信息系统安全法规与制度
l 计算机防病毒制度
l 保护私有信息规则
6.标准化与知识产权
l 标准化意识,标准化的发展,标准的的生命周期
l 国际标准、美国标准、国家标准、行业标准、地方标准、企业标准
l 代码标准、文件格式标准、安全标准、软件开发规范和文档标准
l 标准化机构
l 知识产权
7.应用数据
l 概率统计应用
l 图论应用
l 组合分析
l 算法(数值算法与非数值算法)的选择与应用
l 运筹方法(网络计划技术、线性规划、预测、决策、库存管理、模拟)
l 数学建模
8.专业英语
l 具有高级工程师所要求的英文阅读水平
l 掌握本领域的英语术语
考试科目2:系统架构设计案例分析
1.系统规划
l 系统项目的提出与可行性分析
l 系统方案的制定、评价和改进
l 新旧系统的分析和比较
l 现有软件、硬件和数据资源的有效利用
2.软件架构设计
l 软件架构设计
l XML技术
l 基于架构的软件开发过程
l 软件质量属性
l 架构模型(风格)
l 特定领域软件架构
l 基于架构的软件开发方法
l 架构评估
l 软件产品线
l 系统演化
3.设计模式
l 设计模式的概念
l 设计模式的组成
l 模式和软件架构
l 设计模式分类
l 设计模式的实现
4.系统设计
l 处理流程设计
l 人机界面设计
l 文件设计、存储设计
l 数据库设计
l 网络应用系统的设计
l 系统运行环境的集成与设计
l 中间件、应用服务器
l 性能设计与性能评估
l 系统转换计划
5.软件系统建模
l 系统需求
l 建模的作用和意义
l 定义问题(目标、功能、性能等)与归结模型(静态结构模型、动态行为模型、物理模型)
l 结构化系统建模、数据流图
l 面向对象系统建模
l 统一建模语言(UML)
l 数据库建模、E-R图
l 逆向工程
6.分布式系统设计
l 分布式通信协议的设计
l 基于对象的分布式系统设计
l 基于Web的分布式系统设计
l 基于消息和协同的分布式系统设计
l 异构分布式系统的互操作性设计
7.嵌入式系统设计
l 实时系统和嵌入式系统特征
l 实时任务调度和多任务设计
l 中断处理和异常处理
l 嵌入式系统开发设计
8.系统的可靠性分析与设计
l 系统的故障模型和可靠性模型
l 系统的可靠性分析和可靠度计算
l 提高系统可靠性的措施
l 系统的故障对策和系统的备份与恢复
9.系统的安全性和保密性设计
l 系统的访问控制技术
l 数据的完整性
l 数据与文件的加密
l 通信的安全性
l 系统的安全性设计
考试科目3:系统架构设计论文
根据给出的系统架构设计有关的若干个专题,选择其中一个专题,按照规定的要求撰写论文。
1. 系统建模
l 定义问题与归结模型
l 结构化系统建模
l 面向对象系统建模
l 数据库建模
2.软件架构设计
l 软件架构设计
l 特定领域软件架构
l 基于架构的软件开发方法
l 软件演化
3.系统设计
l 处理流程设计
l 系统人机界面设计
l 文件设计、存储设计
l 数据库设计
l 网络应用系统的设计
l 系统运行环境的集成与设计
l 系统性能设计
l 中间件、应用服务器
4.分布式系统设计
l 分布式通信协议的设计
l 基于对象的分布式系统设计
l 基于Web的分布式系统设计
l 基于消息和协同的分布式系统设计
l 异构分布式系统的互操作性设计
5.系统的可靠性分析与设计
l 系统的故障模型和可靠性模型
l 提高系统可靠性的措施
l 系统的故障对策和系统的备份与恢复
6.系统的安全性和保密性设计
l 系统的访问控制技术
l 数据的完整性
l 数据与文件的加密
l 通信的安全性
l 系统的安全性设计
题型举例
考试科目1:信息系统综合知识
(一)选择题
1.在TCP/IP协议分层结构中,SNMP是在(1)协议之上的(2)请求/响应协议。在ISO/OSI/RM基础上的公共管理信息服务/公共管理信息协议CMIS/CMIP是一个完整的网络管理协议族,网络管理应用进程使用OSI参考模型的(3)。
(1)A.TCP B.UDP C.HTTP D.IP
(2)A.异步 B.同步 C.主从 D.面向连接
(3)A.网络层 B.传输层 C.表示层 D.应用层
2.软件产品线主要由(4)和产品集合两部分组成。
(4)A.构件库 B.核心资源 C.体系结构 D.开发组织
(二)问答题
阅读以下关于软件体系结构方面的叙述,回答问题1和问题2。
某集团公司要开发一个网络财务程序,使各地员工能在互联网络上进行财务处理和报销。在设计该财务程序的体系结构时,项目组产生了分歧:
(1)张工程师认为应该采用客户机/服务器(C/S)结构。各分公司财务部要安装一个软件客户端,通过这个客户端连接到总公司财务部主机。如果员工在外地出差,需要报销帐务的,也需要安装这个客户端才能进行。
(2)李工程师认为应该采用浏览器/服务器(BS)结构,各分公司及出差员工直接通过Windows操作系统自带的IE浏览器就可以连接到总公司的财务部主机。
经过项目组的激烈讨论,最终选用了C/S和B/S混合结构。
[问题1]
请用200字以内的文字简要讨论C/S结构与B/S结构的区别及各自的优点和缺点。
[问题2]
请用200字以内的文字说明如何设计C/S和B/S混合结构,这样设计有什么好处?
(三)论文题
论系统设计中对用户需求的把握
对于系统工程师来说,在把某项工作系统化的时候,正确地理解该项工作的内容并设计出有效的系统,是一件最困难的事情。
为了把用户的需求正确无误地反映到系统的规格说明中去,常规的作法是把系统的规格说明书和输出的报表交给用户征求意见。在某些情况下,还要做出系统的原型,请用户试用。
请围绕“系统设计中对用户需求的把握”论题,依次对以下三个问题进行论述。
1.叙述你参与的开发工程的概要,以及你所担任的工作。
2.就你所下过功夫的地方叙述,为了把用户需求反映到系统规格说明书中,采用过什么手段与用户进行通信?
3.对于你所采用的手段,各举出一点你认为有效果的方面和无效果的方面,简要叙述你对这方面的评价。