软件设计师考试大纲

文章目录

    • 一 、考 试 说 明
      • 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 程序设计评审

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/471952.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《Probing the 3D Awareness of Visual Foundation Models》论文解析——多视图一致性

一、论文简介 论文讨论了大规模预训练产生的视觉基础模型在处理任意图像时的强大能力,这些模型不仅能够完成训练任务,其中间表示还对其他视觉任务(如检测和分割)有用。研究者们提出了一个问题:这些模型是否能够表示物体…

【C++】深入理解自定义 list 容器中的 list_iterator:迭代器实现详解

个人主页: 起名字真南的CSDN博客 个人专栏: 【数据结构初阶】 📘 基础数据结构【C语言】 💻 C语言编程技巧【C】 🚀 进阶C【OJ题解】 📝 题解精讲 目录 📌 引言📌 1. 为什么 list 容器需要 list_iterator…

昆明华厦眼科医院举办中外专家眼科技术研讨会

9月13日,“睿智迭代,增效赋能”Menicon Z Night中外专家研讨会在昆明华厦眼科医院成功举办。此次会议由目立康公司与昆明华厦眼科医院携手共筑,标志着双方合作迈向新的高度。 昆明华厦眼科医院总经理王若镜首先发表了热情洋溢的致辞&#xff…

FreeRTOS的列表与列表项

目录 1.为什么要学列表? 2.什么是列表和列表项? 2.1 列表 2.2列表项 2.3,迷你列表项 3.列表与列表项的初始化 3.1 列表初始化 3.2列表项初始化 4.列表项的“增删查”(插入、删除、遍历) 4.1列表项的插入 4.1.1…

前端(3)——快速入门JaveScript

参考: 罗大富 JavaScript 教程 | 菜鸟教程 JavaScript 教程 1. JaveScript JavaScript 简称 JS JavaScript 是一种轻量级、解释型、面向对象的脚本语言。它主要被设计用于在网页上实现动态效果,增加用户与网页的交互性。作为一种客户端脚本语言&#…

使用阿里云快速搭建 DataLight 平台

使用阿里云快速搭建 DataLight 平台 本篇文章由用户 “闫哥大数据” 分享,B 站账号:https://space.bilibili.com/357944741?spm_id_from333.999.0.0 注意:因每个人操作顺序可能略有区别,整个部署流程如果出现出入,以…

H.265流媒体播放器EasyPlayer.js H.264/H.265播放器chrome无法访问更私有的地址是什么原因

EasyPlayer.js H5播放器,是一款能够同时支持HTTP、HTTP-FLV、HLS(m3u8)、WS、WEBRTC、FMP4视频直播与视频点播等多种协议,支持H.264、H.265、AAC、G711A、MP3等多种音视频编码格式,支持MSE、WASM、WebCodec等多种解码方…

QT_CONFIG宏使用

时常在Qt代码中看到QT_CONFIG宏,之前以为和#define、DEFINES 差不多,看了定义才发现不是那么回事,定义如下: 看注释就知道了QT_CONFIG宏,其实是:实现了一个在编译时期安全检查,检查指定的Qt特性…

centos7安装Chrome使用selenium-wire

背景:在centos7中运行selenium-wire爬虫,系统自带的Firefox浏览器不兼容,运行报错no attribute ‘set_preference’,应该是selenium-wire和Firefox的驱动不兼容 查了半天不知道怎么解决,就想在centos7上安装Chrome来跑…

医院信息化与智能化系统(21)

医院信息化与智能化系统(21) 这里只描述对应过程,和可能遇到的问题及解决办法以及对应的参考链接,并不会直接每一步详细配置 如果你想通过文字描述或代码画流程图,可以试试PlantUML,告诉GPT你的文件结构,让他给你对应…

《FreeRTOS任务控制块篇》

Task control block, 即任务控制块。任务控制块(TCB)是一个结构体,它会分配给每个任务,其中存储着任务的状态信息,包括指向任务上下文(任务的运行时环境,包括寄存器值)的指针。任务控…

Queuing 表(buffer表)的优化实践 | OceanBase 性能优化实践

案例问题描述 该案例来自一个金融行业客户的问题:他们发现某个应用对一个数据量相对较小的表(仅包含数千条记录)访问时,频繁遇到性能下降的情况。为解决此问题,客户向我们求助进行分析。我们发现这张表有频繁的批量插…

ssh登陆服务器后支持Tab键命令补全

在服务器上新建了用户后,通过ssh登录到服务器后发现不能使用Tab键来进行命令补全 截图如下: 以为没有配置.bashrc 此时输入 source 发现无此命令 细心的可以发现 -sh 于是输入命令echo $SHELL 确认此时的shell为sh, 只要输入命令bash即可切…

[白月黑羽]关于仿写类postman功能软件题目的解答

原题: 答: python文件如下 from PySide6.QtWidgets import QApplication, QMessageBox,QTableWidgetItem,QHeaderView,QWidget,QTableWidget from PySide6.QtCore import QEvent,QObject from PySide6.QtUiTools import QUiLoader import time import …

Postman接口测试(断言、关联、参数化、输出测试报告)

基本界面展示 Get、Post请求 Postman断言 使用postman来判断预期结果与实际结果是否一致 响应状态码断言 响应包含字符串 断言判断字符串的格式 关联 用于解决http请求之间存在依赖关系 依赖:一个http请求的响应结果中的数据,被另一个请求使用 登…

【卡尔曼滤波】数据融合Fusion的应用 C语言、Python实现(Kalman Filter)

【卡尔曼滤波】数据融合Fusion的应用 C语言、Python实现(Kalman Filter) 更新以gitee为准: gitee地址 文章目录 卡尔曼滤波数据融合Python实现C语言实现多个数据如何融合附录:压缩字符串、大小端格式转换压缩字符串浮点数压缩Pac…

网络原理-网络层和数据链路层

一、网络层 1、IP协议完成的工作 地址管理:使用一套地址体系来描述所没备的位置 路由选择:一个数据包如何从网络的某个地址传到另一个地址 2、IP报头 4 位版本号:取值为4或6 (IPv4/IPv6) 4 位首部长度:IP报头,单位…

【Three.js基础学习】22.New project structure

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 前言 这里将使用全新的项目结构,将不同工具分层,区分开使用。 一、结构目录 二、对应文件 1.script.js 获取画布,引入样式和功能。 /* 课…

AI风向标|算力与通信的完美融合,SRM6690解锁端侧AI的智能密码

当前,5G技术已经成为推动数字经济和实体经济深度融合的关键驱动力,进入5G发展的下半场,5G与AI的融合正推动诸多行业的数字化转型和创新发展,终端侧AI和端云混合式AI将广泛应用于各类消费终端和各行各业。 在推动5G和AI与各行业场…

【WPF】Prism学习(二)

Prism Commands 1.命令(Commanding) 1.1. ViewModel的作用: ViewModel不仅提供在视图中显示或编辑的数据,还可能定义一个或多个用户可以执行的动作或操作。这些用户可以通过用户界面(UI)执行的动作或操作…