软件设计师考试大纲
文章目录
- 一 、考 试 说 明
- 1. 考试目标
- 2. 考试要求
- 3. 考试科目设置
- 二、考 试 范 围
- 考试科目1:计算机与软件工程知识
- 1. 计算机系统基础知识
- 1.1计算机内数据的表示及运算
- 1.2 其他数学基础知识
- 1.3 计算机硬件基础知识
- 1.3.1 计算机系统的组成、体系结构分类及特性
- 1.3.2 存储系统
- 1.3.3 可靠性与系统性能评测基础知识
- 1.4 计算机软件知识
- 1.4.2 操作系统知识
- 1.4.3 程序设计语言和语言处理程序知识
- 1.4.4 数据库知识
- 1.5 计算机网络知识
- 1.6 多媒体基础知识
- 2. 系统开发和运行知识
- 2.1 软件工程基础知识
- 2.2 系统分析基础知识
- 2.3 系统设计基础知识
- 2.4 软件测试基础知识
- 2.5 系统运行和维护基础知识
- 2.6 软件质量管理基础知识
- 3. 面向对象基础知识
- 4. 网络与信息安全知识
- 5. 标准化、信息化和知识产权基础知识
- 5.1 标准化基础知识
- 5.2 信息化基础知识
- 5.3 知识产权基础知识
- 6. 软件开发新进展
- 7. 计算机专业英语
- 考试科目2:软件设计
- 1. 结构化分析与设计
- 1.1 需求分析
- 1.2 数据流图变换
- 2. 面向对象分析与设计
- 2.1 统一建模语言 (UML)
- 2.2 基于用例的需求描述
- 2.3 软件建模
- 2.4 设计模式应用
- 3. 数据库应用分析与设计
- 3.1 E-R 模型
- 3.2 设计关系模式
- 3.3 数据库语言 (SQL)
- 3.4 数据库访问
- 4. 软件实现
- 4.1 算法设计与分析
- 4.2 程序设计
- 5. 软件测试
- 6. 软件评审
- 6.1 软件设计评审
- 6.2 程序设计评审
一 、考 试 说 明
1. 考试目标
通过本考试的合格人员能根据软件开发项目管理和软 件工程的要求,按照系统总体设计规格说明书进行软件设计, 编写程序设计规格说明书等相应的文档,组织和指导程序员 编写、调试程序,并对软件进行优化和测试,开发出符合系 统总体设计要求的高质量软件;具有工程师的实际工作能力 和业务水平。
2. 考试要求
(1)掌握计算机内的数据表示、算术和逻辑运算方法;
(2)掌握相关的应用数学及离散数学基础知识;
(3)掌握计算机体系结构以及各主要部件的性能和基本 工作原理;
(4)掌握操作系统、程序设计语言的基础知识,了解编 译程序的基本知识;
(5)熟练掌握常用数据结构和常用算法;
(6)熟悉数据库与网络基础知识;
(7)熟练掌握一种结构化程序设计语言 (C 语言)和 一 种面向对象程序设计语言(C++ 或Java);
(8)熟悉软件工程、软件过程改进和软件开发项目管理 的基础知识;
(9)掌握软件设计的方法和技术;
(10)了解信息化、常用信息技术标准、安全性,以及 有关法律、法规的基础知识;
(11)正确阅读和理解计算机领域的英文资料。
3. 考试科目设置
(1)计算机与软件工程知识,考试时间为150分钟;
(2)软件设计,考试时间为150分钟。
二、考 试 范 围
考试科目1:计算机与软件工程知识
1. 计算机系统基础知识
1.1计算机内数据的表示及运算
- 数的表示
- 非数值表示(字符和汉字表示、声音表示、 图像表示)
- 计算机中的二进制数运算方法
- 逻辑代数的基本运算
1.2 其他数学基础知识
- 常用数值计算
- 排列组合、概率论应用、应用统计(数据的 统计分析)
- 编码基础
- 命题逻辑、谓词逻辑、形式逻辑的基础知识
- 运筹基本方法
1.3 计算机硬件基础知识
1.3.1 计算机系统的组成、体系结构分类及特性
- CPU、存储器的组成、性能和基本工作原理
- 常用I/O 设备、通信设备的性能以及基本工 作原理
- I/O接口的功能、类型和特性
- CISC/RISC、流水线操作、多处理机、并行 处理
1.3.2 存储系统
- 虚拟存储器基本工作原理,多级存储体系
- RAID类型和特性
- 网络存储技术
1.3.3 可靠性与系统性能评测基础知识
- 诊断与容错
- 系统可靠性分析评价
- 计算机系统性能评测方法
1.4 计算机软件知识
1.4.1 数据结构与算法知识
- 数组
- 链表
- 队列、栈
- 树
- 图的定义、存储和基本运算
- 杂凑 (Hash 表 )
- 常用的排序算法、查找算法、数值计算、字 符串处理、数据压缩算法、递归算法、图的 相关算法
- 算法设计与分析
1.4.2 操作系统知识
- 操作系统基本概念
- 处理机管理
- 存储管理
- 设备管理
- 文件管理
- 作业管理
- 操作系统的配置
1.4.3 程序设计语言和语言处理程序知识
- 汇编、编译、解释系统的基础知识和基本工 作原理
- 程序设计语言的基本成分(数据、运算、控 制和传输),函数调用机制
- 各类程序设计语言的主要特点
1.4.4 数据库知识
- 数据库系统基本概念
- 关系数据库理论
- 数据库设计
- 数据库语言
- 数据库新技术(非关系型数据库等)
1.5 计算机网络知识
- 协议体系结构
- 传输介质与交换技术
- 常用网络设备与服务器
- 局域网络连接
- Internet 基础知识
- TCP/IP协议
- 简单网络管理
1.6 多媒体基础知识
2. 系统开发和运行知识
2.1 软件工程基础知识
- 软件生存周期与软件生存周期模型
- 软件开发方法
- 软件开发项目管理
- 软件工具与软件开发环境
- 软件过程改进 (CMM 等 )
- 软件开发文档
2.2 系统分析基础知识
- 系统分析方法与模型
2.3 系统设计基础知识
- 系统设计的基本原理
- 软件体系结构基本概念
- 系统设计方法与模型
2.4 软件测试基础知识
- 软件测试的基本概念
- 软件测试阶段
- 测试方法
- 测试用例设计
2.5 系统运行和维护基础知识
- 系统维护的概念
- 系统转换
- 系统评价
2.6 软件质量管理基础知识
- 软件质量特性(ISO/IEC 9126软件质量模型)
- 软件质量保证
- 软件复杂性的概念及度量方法 (McCabe 度 量法)
- 软件评审(设计质量评审、程序质量评审)
- 软件容错技术
3. 面向对象基础知识
- 面向对象的基本概念
- 面向对象分析与设计
- 分析模式与设计模式
- 面向对象程序设计
- 面向对象测试
4. 网络与信息安全知识
- 信息安全基础
- 信息安全技术(加密与解密、认证、数字签 名、摘要等)
- 网络安全技术
- 计算机安全等级及相关法律法规
5. 标准化、信息化和知识产权基础知识
5.1 标准化基础知识
5.2 信息化基础知识
- 全球信息化趋势、国家信息化战略、企业信 息化战略和策略
- 互联网相关的法律、法规知识
- 个人信息保护规则
- 远程教育、电子商务、电子政务等基础知识
- 企业信息资源管理基础知识
5.3 知识产权基础知识
- 保护知识产权有关的法律、法规
6. 软件开发新进展
- 软件开发新技术
- 云计算
- 大数据
- 应用领域进展
7. 计算机专业英语
- 具有工程师所要求的英语阅读水平
- 理解本领域的英语术语
考试科目2:软件设计
1. 结构化分析与设计
1.1 需求分析
- 数据流图 (DFD)
- 数据字典与加工逻辑
1.2 数据流图变换
2. 面向对象分析与设计
2.1 统一建模语言 (UML)
2.2 基于用例的需求描述
2.3 软件建模
2.4 设计模式应用
3. 数据库应用分析与设计
3.1 E-R 模型
3.2 设计关系模式
3.3 数据库语言 (SQL)
3.4 数据库访问
4. 软件实现
4.1 算法设计与分析
- 算法设计策略
- 算法分析
4.2 程序设计
- 选择合适的程序设计语言
- C 语言程序设计
- 面向对象程序设计 (C++ 或Java)
5. 软件测试
- 单元测试
- 集成测试
- 系统测试
- 测试方法和测试用例
6. 软件评审
6.1 软件设计评审
6.2 程序设计评审
相关文章:
软件设计师考试大纲
文章目录 一 、考 试 说 明1. 考试目标2. 考试要求3. 考试科目设置 二、考 试 范 围考试科目1:计算机与软件工程知识1. 计算机系统基础知识1.1计算机内数据的表示及运算1.2 其他数学基础知识1.3 计算机硬件基础知识1.3.1 计算机系统的组成、体系结构分类及特性1.3.2 存储系统1.…...
一文说清C++类型转换操作符(cast operator)
一 前言 大家在编程时,一定会遇到要做类型转换的应用场景。 但是,C风格的类型转换太强大,太危险,它允许将一个给定类型转换成我们想要的任何其他类型。 所以在C中,提供了一些更安全和更明确的类型转换操作符ÿ…...

MOSFET电路栅源极GS之间并联电容后,MOS炸管原因分析
1、前言 在介绍,在进行MOSFET相关的电路设计时,可能会遇到MOSFET误导通的问题,为了解决此问题,我们提出了两种方法,一种是增大MOSFET栅极串联电阻的阻值,另外一种是在MOSFET栅-源极之间并联一个电容&#…...
gitHub常用操作
gitHub常用操作 1、把项目拉下来2、添加上游仓库3、进入分支4、从上游仓库拉取更新 1、把项目拉下来 在对应项目的右上角点击fork,fork下来:将远程仓库复制到个人仓库 在创建好的分支文件夹下使用 git clone自己远程仓库下的http地址(fork…...

[项目代码] YOLOv5 铁路工人安全帽安全背心识别 [目标检测]
YOLOv5是一种单阶段(one-stage)检测算法,它将目标检测问题转化为一个回归问题,能够在一次前向传播过程中同时完成目标的分类和定位任务。相较于两阶段检测算法(如Faster R-CNN),YOLOv5具有更高的…...

Java 垃圾回收机制(GC)概览
简介 Java垃圾收集、堆和运行时编译器默认选择 jdk1.9开始,默认使用G1收集器,GC Threads的最大数量受堆大小和可用CPU资源限制初始堆大小为物理内存的1/64最大堆大小为物理内存的1/4分层编译器,同时使用C1和C2 JVM 垃圾收集器可以为配置优…...

Kafka节点服役和退役
1 服役新节点 1)新节点准备 (1)关闭 bigdata03,进行一个快照,并右键执行克隆操作。 (2)开启 bigdata04,并修改 IP 地址。 vi /etc/sysconfig/network-scripts/ifcfg-ens33修改完…...
Git如何简单使用
文章目录 GitGitlabGitLab和GitHub有什么区别?Gitlab简单使用Gitlab常用指令Git Git是一个分布式版本控制系统。 它用于记录文件的修改历史,方便多人协作开发软件等项目。例如一个软件开发团队,成员们会频繁修改代码,Git可以追踪每个人的修改内容、时间等信息。 主要功能…...

酒水分销积分商城小程序开发方案php+uniapp
酒水分销积分商城小程序开发,开发语言后端php,前端uniapp。核心功能模块:酒水商城、积分商城、二级分销、抽奖、优惠券。可以二开或定制。协助部署搭建。...
MTU-内核态(数据链路层或网络接口上能够传输的最大数据包大小)
MTU(最大传输单元,Maximum Transmission Unit)是网络中用于表示数据链路层或网络接口上能够传输的最大数据包大小。 1. 工作原理 MTU 决定了一个数据包(包括头部和数据部分)的最大长度。它影响到数据的传输ÿ…...
React的基础API介绍(一)
目录 useEffect1. 替代生命周期方法2. 副作用管理3. 依赖项数组4. 多次使用5. 与闭包配合6. 支持异步操作7. 减少样板代码 注意事项useEffetct是如何拿到变量count最新的值?1. 每次渲染都会创建新的函数作用域2. 闭包捕获最新的状态值3. useEffect 的执行时机 useLa…...
【Electron】总结:如何创建Electron+Element Plus的项目
我将结合官网手册与AI问到的信息,直接给出步骤,与命令。 一、准备环境 首先在C盘Users,你的登录的账号名文件夹下,编辑.npmrc文件。添加镜像地址。 如果使用了yarn,则是.yarnrc。可以全部都配置。 npm install -g …...

从依托指标字典到 NoETL 自动化指标平台,指标口径一致性管理的进阶
今天,我们一起来梳理和盘点下不同代际指标平台如何实现指标口径一致性管理: 第一代:指标口径登记与管理 第一代指标平台聚焦于指标口径的登记与管理,依托指标字典实现企业指标口径的有效检索与管理功能。 此阶段,业…...
嵌入式面试题练习 - 2024/11/15
欢迎找我进行职业规划,超值的自我投资 -> 嵌入式软件工程师一对一指导 1.设有定义char *p[]{"Shanghai","Beijing","Honkong"};则结果为j字符的表达式是() A *p[1] 3 B *(p[1] 3) C *(p[3] 1) D p[3] […...

分析http话术异常挂断原因
用户反馈在与机器人通话时,自己明明有说话,但是通话还是被挂断了,想知道原因。 分析日志 我们根据用户提供的freeswitch日志分析:发现是因为超时导致话术执行hangup动作,结束了通话。 从这一行向上分析日志ÿ…...

云岚到家 秒杀抢购
目录 秒杀抢购业务特点 常用技术方案 抢券 抢券界面 进行抢券 我的优惠券列表 活动查询 系统设计 活动查询分析 活动查询界面显示了哪些数据? 面向高并发如何提高活动查询性能? 如何保证缓存一致性? 数据流 Redis数据结构设计 如…...

【WPF】Prism库学习(一)
Prism介绍 1. Prism框架概述: Prism是一个用于构建松耦合、可维护和可测试的XAML应用程序的框架。它支持WPF、.NET MAUI、Uno Platform和Xamarin Forms等多个平台。对于每个平台,Prism都有单独的发布版本,并且它们在不同的时间线上独立开发。…...
0 -vscode搭建python环境教程参考(windows)
引用一篇非常详细的vscode搭建python环境教程 链接:vscode安装以及配置Python基本环境 以下是VSCode和PyCharm的对比 个人更建议使用VSCode Visual Studio Code (VSCode) Visual Studio Code 是由微软开发的一款免费、开源的轻量级代码编辑器。它支持多种编程语…...

Uniapp 引入 Android aar 包 和 Android 离线打包
需求: 原生安卓 apk 要求嵌入到 uniapp 中,并通过 uniapp 前端调起 app 的相关组件。 下面手把手教你,从 apk 到 aar,以及打包冲突到如何运行,期间我所遇到的问题都会 一 一 进行说明,相关版本以我文章内为…...

10款高效音频剪辑工具,让声音编辑更上一层楼。
音频剪辑在音频,视频,广告制作,游戏开发,广播等领域中都有广泛的应用。通过音频剪辑,创作者可以通将不同的音频片段进行剪切、拼接、混音等操作,创作出风格各异的音乐作品。如果你也正在为音频创作而努力的…...
浅谈 React Hooks
React Hooks 是 React 16.8 引入的一组 API,用于在函数组件中使用 state 和其他 React 特性(例如生命周期方法、context 等)。Hooks 通过简洁的函数接口,解决了状态与 UI 的高度解耦,通过函数式编程范式实现更灵活 Rea…...

观成科技:隐蔽隧道工具Ligolo-ng加密流量分析
1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具,该工具基于TUN接口实现其功能,利用反向TCP/TLS连接建立一条隐蔽的通信信道,支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式,适应复杂网…...

业务系统对接大模型的基础方案:架构设计与关键步骤
业务系统对接大模型:架构设计与关键步骤 在当今数字化转型的浪潮中,大语言模型(LLM)已成为企业提升业务效率和创新能力的关键技术之一。将大模型集成到业务系统中,不仅可以优化用户体验,还能为业务决策提供…...
Leetcode 3576. Transform Array to All Equal Elements
Leetcode 3576. Transform Array to All Equal Elements 1. 解题思路2. 代码实现 题目链接:3576. Transform Array to All Equal Elements 1. 解题思路 这一题思路上就是分别考察一下是否能将其转化为全1或者全-1数组即可。 至于每一种情况是否可以达到…...

盘古信息PCB行业解决方案:以全域场景重构,激活智造新未来
一、破局:PCB行业的时代之问 在数字经济蓬勃发展的浪潮中,PCB(印制电路板)作为 “电子产品之母”,其重要性愈发凸显。随着 5G、人工智能等新兴技术的加速渗透,PCB行业面临着前所未有的挑战与机遇。产品迭代…...
python如何将word的doc另存为docx
将 DOCX 文件另存为 DOCX 格式(Python 实现) 在 Python 中,你可以使用 python-docx 库来操作 Word 文档。不过需要注意的是,.doc 是旧的 Word 格式,而 .docx 是新的基于 XML 的格式。python-docx 只能处理 .docx 格式…...
【AI学习】三、AI算法中的向量
在人工智能(AI)算法中,向量(Vector)是一种将现实世界中的数据(如图像、文本、音频等)转化为计算机可处理的数值型特征表示的工具。它是连接人类认知(如语义、视觉特征)与…...
linux 下常用变更-8
1、删除普通用户 查询用户初始UID和GIDls -l /home/ ###家目录中查看UID cat /etc/group ###此文件查看GID删除用户1.编辑文件 /etc/passwd 找到对应的行,YW343:x:0:0::/home/YW343:/bin/bash 2.将标红的位置修改为用户对应初始UID和GID: YW3…...

学校时钟系统,标准考场时钟系统,AI亮相2025高考,赛思时钟系统为教育公平筑起“精准防线”
2025年#高考 将在近日拉开帷幕,#AI 监考一度冲上热搜。当AI深度融入高考,#时间同步 不再是辅助功能,而是决定AI监考系统成败的“生命线”。 AI亮相2025高考,40种异常行为0.5秒精准识别 2025年高考即将拉开帷幕,江西、…...
Java毕业设计:WML信息查询与后端信息发布系统开发
JAVAWML信息查询与后端信息发布系统实现 一、系统概述 本系统基于Java和WML(无线标记语言)技术开发,实现了移动设备上的信息查询与后端信息发布功能。系统采用B/S架构,服务器端使用Java Servlet处理请求,数据库采用MySQL存储信息࿰…...