2020年软考大纲:软件设计师考试大纲
一、考试说明
1.考试目标
通过本次考核的合格人员,可以按照软件开发项目管理和软件工程的要求进行软件设计,编写程序设计说明书等相应文档,组织和指导程序员编写和调试程序,对软件进行优化和集成,开发出符合系统总体设计要求的高质量软件;具备工程师的实际工作能力和专业水平。
2.考试要求
(1)掌握计算机中的数据表示、算术和逻辑运算方法;
(2)掌握应用数学和离散数学的基础知识;
(3)掌握计算机体系结构、各主要部件的性能和基本工作原理;
(4)掌握操作系统和编程语言的基础知识,了解编译器的基础知识;
(5)熟悉常用数据结构和常用算法;
(6)熟悉数据库、网络和多媒体的基础知识;
(7)掌握C程序设计语言及C++和Java程序设计语言中的一种;
(8)熟悉软件工程、软件过程改进和软件开发项目管理的基础知识;
(9)掌握软件设计的方法和技巧;
(10)了解信息化、常用信息技术标准、安全、相关法律法规基础知识;
(11)正确阅读和理解计算机领域的英文资料。
二、考试范围
考试科目1:计算机与软件工程知识
1.计算机科学的基础知识
1.1数系及其变换
二进制、八进制、十进制和十六进制等常用数字系统及其相互转换。
1.2计算机中数据的表示
数字的表示(补码表示,整数和实数的表示,精度和溢出)
非数字表示法(字符和汉字表示法、声音表示法、图像表示法)
1.3算术和逻辑运算
计算机中的二进制数运算方法
逻辑代数的基本运算
1.4其他数学基础知识
普通数值计算
排列组合,概率论的应用,应用统计学(数据的统计分析)
编码基础
命题逻辑、谓词逻辑和形式逻辑的基础知识
基本操作方法
2.计算机系统知识
2.1计算机硬件基础知识
2.1.1计算机系统的组成、体系结构分类和特点
CPU和内存的组成、性能和基本工作原理
常用I/O设备和通信设备的性能和基本工作原理。
I/O接口的功能、类型和特性
CISC/RISC,流水线,多处理器,并行处理。
2.1.2存储系统
虚拟存储器、多级存储系统的基本工作原理
RAID类型和特征
2.1.3可靠性和系统性能评估基础知识
诊断和容错
系统可靠性分析和评估
计算机系统性能评估方法
2.2计算机软件知识
2.2.1数据结构和算法知识
排列
链表
队列,堆栈
树
图形的定义、存储和基本操作
哈希(哈希表)
常用的排序算法、搜索算法、数值计算、字符串处理、数据压缩算法、递归
归约算法和图关联算法
算法描述和分析
操作系统知识
操作系统的内核
处理机管理
存储管理
设备管理
文件管理
劳动管理
网络操作系统和嵌入式操作系统的基础知识
操作系统的配置
2.2.3编程语言和语言处理程序的知识
汇编编译解释系统的基本知识和工作原理
程序设计语言的基本组成部分(数据、操作、控制和传输),以及程序调用的实现。
机制
各种编程语言的主要特点及应用
2.2.4数据库知识
数据库模型(概念模型、外部模型、内部模型)
数据模型;ER图;规范化
数据操作
数据库语言
数据库管理系统的功能和特点
数据库的控制功能
数据仓库和分布式数据库的基本知识
2.3计算机网络知识
网络体系结构
传输介质、传输技术、传输方法、传输控制
常见网络设备和各种通信设备的特点
客户机-服务器结构,浏览器-服务器结构
局域网(拓扑、访问控制、网络、互联网络)
互联网和内联网的基本知识和应用
网络软件
网络管理,网络性能分析
2.4多媒体基础知识
多媒体系统的基本知识
简单图形的绘制和图像文件的处理方法
音视频信息的应用
多媒体应用开发过程
3.系统开发和操作知识
3.1软件工程知识
软件生命周期和软件生命周期模型
软件开发方法
软件开发项目管理
软件开发工具和软件开发环境
3.2系统分析的基础知识
系统分析的主要步骤
制度分析方法
3.3系统设计的基础知识
总体设计和详细设计的基本任务
系统设计的基本原则
系统模块结构设计
结构化设计方法
面向数据结构的设计方法
系统详细设计
3.4系统实施的基础知识
系统实施的基本内容
程序设计方法
程序设计的基本模块
系统测试
线路转换
3.5系统操作和维护的基本知识
系统可维护性的概念
系统维护的类型
系统评价的概念和类型
3.6软件质量管理的基础知识
软件质量特征(ISO/IEC 9126软件质量模型)
软件质量保证
软件复杂性的概念和度量方法(McCabe度量方法)
软件评审(设计质量评审、程序质量评审)
软件容错技术
3.7软件过程改进的基础知识
软件能力成熟度模型
统一过程(UP)和极限编程(XP)的基本概念
4.面向对象的基础知识
面向对象的基本概念
面向对象的分析和设计知识
分析模式和设计模式的知识
面向对象的编程知识
面向对象的数据库,分布式对象的基础知识
5.信息安全知识
信息系统安全基础知识
信息系统安全管理
确保完整性和可用性的措施
加密和解密机制的基本知识
风险管理(风险分析、风险类型、抗风险措施和内部控制)
计算机安全相关法律法规的基本知识
6.标准化、信息化和知识产权基础知识
6.1标准化基础知识
标准化意识,标准化组织,标准内容,分类,代码和编号规定,标准
准配方过程
国际标准、国家标准、行业标准和企业标准
代码标准、文件格式标准、安全标准、互联网相关标准、软件开发规范和
文档标准、基于组件的软件标准
6.2信息化基础知识
全球信息化趋势,国家信息化战略,企业信息化战略和策略。
互联网相关法律法规
个人信息保护规则
远程教育、电子商务、电子政务等基础知识。
企业信息资源管理基础知识
6.3知识产权基础知识
与知识产权保护相关的法律法规
7.计算机英语
具备工程师要求的英语阅读水平。
了解这个领域的英语术语。
考试科目二:软件设计
1.外部设计
1.1了解系统需求描述
1.2准备系统开发。
选择开发方法,准备开发环境,制定开发计划。
1.3设计系统功能
选择系统结构
设计各子系统的功能和接口。
设计安全策略、要求和实施方法
开发详细的工作流程和数据流
1.4设计数据模型
设计ER模型和其他数据模型
1.5撰写外部设计文档
各子系统的系统配置图和关系图
系统流程图和系统功能说明
I/O规范、数据规范和用户手册框架
设计系统测试要求
1.6外部设计评审
2.内部设计
2.1设计软件结构
根据组件分解,确定组件功能、规格和组件之间的接口。
数据结构和算法设计
采用中间件和工具
2.2设计输入和输出
2.3设计物理数据
2.4组件的创建和重用
创建和重用组件
使用子程序库或类库
2.5编写内部设计文件
部件划分图、部件之间的接口和部件处理说明。
屏幕界面设计文档、报表设计文档、文件设计文档和数据库设计文档。
2.6内部设计的审查
3.数据库应用分析与设计
设计关系模式
数据库语言(SQL)
数据库访问
4.编程;编排
4.1模块划分
4.2编写程序设计文件
4.3程序设计审查
5.系统实现
5.1配置计算机系统和环境
5.2选择合适的编程语言
5.3使用C编程语言以及C++和Java编程语言中的任意一种进行编程。
5.4系统测试
指导程序员进行模块测试和验收。
准备系统集成测试环境和测试工具。
准备测试数据
写一份测试报告
6.软件工程应用
6.1软件开发周期模型
6.2需求分析
6.3软件设计
软件设计的基本原则
软件设计方法
编程(结构化编程、面向对象编程)
6.4软件测试的原则和方法
6.5软件质量(软件质量特性和软件质量控制)
6.6软件过程评估和软件能力成熟度评估的基本方法
6.7软件开发环境和工具
6.8面向对象技术
面向组件的技术
统一建模语言(UML)
软件过程改进模型和方法
6.9网络环境软件技术
关于2020年软考大纲:软件设计师考试大纲,这里就给大家介绍一下。当然这也是高级软考高级职称的基础,赶紧学习吧!