首页 > 代码库 > 软考初级程序员考试大纲

软考初级程序员考试大纲

一、考试说明

1.考试目标

通过本考试的合格人员能根据软件开发项目管理和软件工程的要求按照程序设计规格说明书编制并高度程序,写出相应的程序文档,产生符合标准规范的、实现设计要求的、能正确可靠运行的程序。具有助理工程师(或技术员)的实际工作能力和业务水平。

2.考试要求

(1)掌握数制及其转换、数据的机内表示、算术和逻辑运算、应用数学的基础知识;

(2)了解计算机的组成以及各主要部件性能指标;

(3)掌握操作系统、程序设计语言的基础知识;

(4)熟练掌握基本数据结构和常用算法;

(5)熟练掌握C程序设计语言以及C++、Java中的一种程序设计语言;

(6)熟悉数据库、网络和多媒体的基础知识;

(7)了解软件工程的基础知识、软件过程基本知识、软件开发项目管理的常识;

(8)了解常用信息技术标准、安全性以及有关法律、法规的基础知识;

(9)了解信息化及计算机应用的基础知识;

(10)正确阅读和理解计算机领域的简单英文资料。

3.考试科目设置

(1)计算机与软件工程基础知识,考试时间为150分钟,笔试,选择题;

(2)程序设计,考试时间为150分钟,笔试,问答题。

二、考试范围

考试科目1:计算机与软件工程基本知识

1.计算机科学基础

1.1数制及其转换

  二进制、十进制和十六进制等常用数制及其相互转换

1.2 数据的表示

  数的表示

  非数值数据的表示

1.3 算术运算和逻辑运算

  计算机中二进制数的运算方法

  逻辑代数的基本运算

1.4 数学应用

  常用数值计算(矩阵、近似求解、插值)

  排列组合、应用统计

  编码基础

1.5 常用数据结构

  数组

  线性表及链表

  队列、栈

  树

  图

1.6 常用算法

  算法与数据结构的关系

  算法设计和算法描述

  常用的排序算法

  查找算法

  常用的数值计算方法

  字符串处理算法

  递归算法

  最小生成树、拓扑排序和单源点最短路径求解算法

2.计算机系统基础知识

2.1 硬件基础知识

2.1.1 计算机的类型和特点

  微机(PC机)、工作站、服务器、主机、大型计算机、巨型计算机、并行机

2.1.2 中央处理器CPU

  CPU的组成

  常用的寄存器

  指令系统,寻址方式

  指令执行控制、中断控制、处理机性能

2.1.3 主存和辅存

  存储介质

  高速缓存(Cache)、主存

  辅存设备

2.1.4 I/O接口、I/O设备和通信设备

  I/O接口

  I/O设备(类型、特性)

  通信设备(类型、特性)

  I/O设备、通信设备的连接方法和连接介质类型

2.2 软件基础知识

2.2.1 操作系统基础知识

  操作系统的类型和功能

  处理机管理

  存储管理

  设备管理

  文件管理

  作业管理(作业调度算法)

  图形用户界面和操作方法

2.2.2 程序设计语言和语言处理程序的基础知识

  语言翻译基础知识(汇编、编译、解释)

  程序设计语言的基本成分:数据、运算、控制和传输

  程序语言类型和特点

2.3 网络基础知识

  网络的功能、分类、组成和拓扑结构

  基本的网络协议与标准

  常用网络设备与网络通信设备,网络操作系统基础知识

  Client/Server结构、Browser/Server结构

  局域网(LAN)基础知识

  Internet基础知识

2.4 数据库基础知识

  数据库管理系统的主要功能和特征

  数据库模式(概念模式、外模式、内模式)

  数据模型、ER图

  数据操作(关系运算)

  数据库语言(SQL)

  数据库的主要控制功能(并发控制、安全控制)

2.5 多媒体基础知识

  多媒体基本知识

  常用多媒体设备性能特征,常用多媒体文件格式类型

2.6 系统性能指标

  响应时间、吞吐量、周转时间

  可靠性、可维护性、可扩充性、可移植性、可用性、可重用性、安全性

2.7 计算机应用基础知识

  计算机常用办公软件操作方法

  计算机信息管理、数据处理、辅助设计、自动控制、科学计算、人工智能等领域的应用

  远程通信服务

3.系统开发和运行知识

3.1 软件工程和项目管理基础知识

  软件工程基础知识

  软件开发生命周期各阶段的目标和任务

  软件过程基本知识

  软件开发项目管理基本知识

  软件开发方法(原型法、面向对象方法)基础知识

  软件开发工具与环境基础知识(CASE)

  软件质量管理基础知识

3.2 系统分析设计基础知识

  数据流图(DFD)、实体联系图(ER图)基本知识

  面向对象设计、以过程为中心设计、以数据为中心设计基础知识

  结构化分析和设计方法

  模块设计、代码设计、人机界面设计基础知识

3.3 程序设计基础知识

  结构化程序设计、流程图、NS图、PAD图

  程序设计风格

3.4 程序测试基础知识

  程序测试的目的、原则、对象、过程与工具

  黑盒测试、白盒测试方法

  测试设计和管理

3.5 程序设计文档基础知识

  算法的描述、程度逻辑的描述、程度规格说明书

  模块测试计划、模块测试用例、模块测试报告

3.6 系统运行和维护基础知识

  系统运行管理基础知识

  系统维护基础知识

4. 信息安全基础知识

  信息系统安全基础知识

  信息系统安全管理

  加密与解密基础知识

5.标准化基础知识

  标准化基本概念

  标准的层次(国际标准、国家标准、行业标准、企业标准)

  相关标准(代码标准、文件格式标准、安全标准、软件开发规范和文档标准、互联网相关标准)

6.信息化基础知识

  信息、信息资源、信息化、信息工程、信息产业、信息技术的含义

  全球信息化趋势、国家信息化战略、企业信息化战略和策略常识

  有关的法律、法规要点

7.计算机专业英语  

  具有助理工程师(或技术员)英语阅读水平

  掌握本领域的英语基本术语

 

考试科目2:程序设计

1.内部设计

1.1 理解外部设计

1.2 软件功能划分和确定结构

  数据流图(DFD)、结构图

1.3 物理数据设计

  确定数据组织方式、存储介质、设计记录格式,处理方式

1.4 详细输入输出设计

  界面设计、报表设计等

1.5 内部设计文档

  程序接口、程序功能、人机界面、输入输出、测试计划

1.6 内部设计评审

2.程序设计

2.1 模块划分(原则、方法、标准)

2.2 编写程序设计文档

  模块规格说明书(程序处理逻辑、输入输出数据格式)

  测试要求说明书(测试类型和目标、测试用例、测试方法)

2.3 程序设计评审

3.程序实现

3.1 编程

  编程方法和规范

  程序设计语言的选择和使用

  人工走查

  程序文档化

3.2 程序测试

  测试环境和测试工具的选择和使用

  测试数据的设计

  测试报告的编写

4.程序设计语言(C语言为必选,再在C、C++、Java语言中任选一种)

4.1 C程序设计语言(C99标准)

4.2 C++程序设计语言(ANSI C++标准)

4.3 Java程序设计语言(Java2)

软考初级程序员考试大纲