2019北交926 软件工程理论与技术专业课考试大纲

926 软件工程理论与技术
1、软件工程学概述。

(1)了解软件开发技术的发展历史及特点;(2)了解软件危机及产生的原因、解决办法;(3)了解软件的特点、传统的生命周期模型熟悉软件工程的基本原理和方法;(4)重点掌握软件工程的概念和基本原理;(5)掌握生命周期方法学内容以及各阶段的划分和基本任务。

2、可行性研究深刻理解可行性研究的必要性。

(1)掌握可行性研究的任务及可行性研究的具体步骤;(2)了解系统流程图的作用及符号表示;(3)重点掌握数据流图的画法及数据字典的编写。

3、需求分析。

(1)深刻理解需求分析阶段的概念及任务;(2)熟练掌握数据流图的细化及 ER 图、IPO 图的画法;(3)掌握需求分析过程及各种图形工具的应用。

4、总体设计。

(1)深刻理解软件总体设计的基本任务;(2)理解软件设计的基本原理理解模块化、抽象、信息隐蔽、模块独立性等概念;(3)明确度量模块独立性的校准---偶和性及内聚性;(4)熟练掌握结构化设计方法(要求能划分数据流的类型,将其能换成软件结构图,并能根据优化准则将其优化)。

5、详细设计。

( 1)能熟练的使用详细设计描述工具来设计模块中的算法及程序的逻辑结构;(2)理解 Jackson 方法的概念及程序复杂度的度量方法;(3)学会使用 Jackson 方法设计输入输出数据结构和程序结构。

6、实现。

(1)了解几种常见的程序设计语言的特点;(2)领会程序设计中应注意的问题,注意培养良好的编程风格;(3)掌握测试阶段的内容、测试方法及测试步骤;(4)深刻理解白盒、黑盒测试技术;(5)深刻理解测试过程中单元测试、集成测试、验收测试的任务及使用的方法;(6)掌握调试程序的方法;(7)
熟练掌握针对某一问题采用白盒法或黑盒法进行测试用例的设计。

7、维护。

(1)掌握软件维护的内容、特点、方法、技术、文档;(2)了解软件维护的各种困难、软件维护的特点及软件维护的文档;(3)理解软件维护的内容及维护任务的实施;(4)深刻理解如何提高软件的维护性。

8、面向对象方法学引论。

(1)深刻理解对象、类、类的层次结构、方法和消息的实质;(2)深刻理解对象模型、动态模型、功能模型的元素、结构和构造方法;(3)掌握画对象图、画状态图、画数据流程图;(4)确定对象类、确定关联、确定属性、识别继承。

9、面向对象分析。

(1)了解需求陈述,掌握面相对象分析过程;(2)掌握面向对象分析的概念和基本任务;(3)掌握对象模型、动态模型、功能模型的建模方法。

10、面向对象设计。

(1)掌握面向对象设计的概念和准则;(2)掌握软件重用概念及提高重用的方法。

11、面向对象实现。

(1)掌握面向对象对象的测试,保证良好的程序设计风格须遵守的原则。

12、软件项目管理。

(1)了解软件管理的特点和软件管理的基本过程;(2)掌握文档管理的重要性与方法。

合集下载

北京师范大学928计算机综合考试大纲

北京师范大学928计算机综合考试大纲

928计算机综合《计算机综合》研究生入学考试大纲Ⅰ考查目标计算机学科专业基础综合考试涵盖数据结构、计算机组成原理、操作系统和计算机网络等学科专业基础课程。

要求考生比较系统地掌握上述专业基础课程的基本概念、基本原理和基本方法,能够综合运用所学的基本原理和基本方法分析、判断和解决有关理论问题和实际问题。

Ⅱ考试形式和试卷结构一、试卷满分及考试时间本试卷满分为150分,考试时间为180分钟二、答题方式答题方式为闭卷、笔试三、试卷内容结构数据结构45分计算机组成原理45分操作系统35分计算机网络25分四、试卷题型结构单项选择题80分(40小题,每小题2分)综合应用题70分Ⅲ考查范围数据结构(45分-30%)【考查目标】1.掌握数据结构的基本概念、基本原理和基本方法。

2.掌握数据的逻辑结构、存储结构及基本操作的实现,能够对算法进行基本的时间复杂度与空间复杂度的分析。

3.能够数据结构基本原理和方法进行问题的分析与求解,具备采用C 或C++或JAVA语言设计与实现算法的能力。

一、线性表(一)线性表的定义和基本操作(二)线性表的实现1.顺序存储2.链式存储3.线性表的应用二、栈、队列和数组(一)栈和队列的基本概念(二)栈和队列的顺序存储结构(三)栈和队列的链式存储结构(四)栈和队列的应用(五)特殊矩阵的压缩存储三、树与二叉树(一)树的概念(二)二叉树1.二叉树的定义及其主要特征2.二叉树的顺序存储结构和链式存储结构3.二叉树的遍历4.线索二叉树的基本概念和构造(三)树、森林1.树的存储结构2.森林与二叉树的转换3.树和森林的遍历(四)树与二叉树的应用1.二叉排序树2.平衡二叉树3.哈夫曼(Huffman)树和哈夫曼编码四、图(一) 图的基本概念(二) 图的存储及基本操作1. 邻接矩阵法2. 邻接表法(三) 图的遍历1. 深度优先搜索2. 广度优先搜索(四) 图的基本应用1. 最小(代价)生成树2. 最短路径3. 拓扑排序4. 关键路径五、查找(一) 查找的基本概念(二) 顺序查找法(三) 折半查找法(四) B树及其基本操作、B+树的基本概念(五) 散列(Hash)表(六) 查找算法的分析及应用六、排序(一) 排序的基本概念(二) 插入排序1. 直接插入排序2. 折半插入排序(三) 气泡排序(bubble sort)(四) 简单选择排序(五) 希尔排序(shell sort)(六) 快速排序(七) 堆排序(八) 二路归并排序(merge sort)(九) 基数排序(十) 外部排序(十一) 各种内部排序算法的比较(十二)内部排序算法的应用计算机组成原理(45分-30%)【考查目标】1. 理解单处理器计算机系统中各部件的内部工作原理、组成结构以及相互连接方式,具有完整的计算机系统的整机概念。

同等学力加试软件工程科目考试大纲一、考查目标软件工程是高等学校

同等学力加试软件工程科目考试大纲一、考查目标软件工程是高等学校

同等学力加试软件工程科目考试大纲一、考查目标软件工程是高等学校计算机专业教学计划中的专业课程。

软件开发是建立计算机应用系统的重要环节,因此,软件工程是计算机专业的一门工程性课程,也是计算机专业十分重要的一门专业课程。

本课程主要讲述建造软件系统的方法、技术、流程、工具及规范等。

该科目主要考查学生能基本上掌握软件工程的基本概念、基本原理、实用的开发方法和技术;了解软件工程各领域的发展方向;用工程化的方法开发软件项目,掌握在开发过程中应遵循的流程、准则、标准和规范。

本课程是一门实践性很强的课程,它是各种开发经验的总结与提炼。

在考查中不仅注重概念、原理、方法和技术的掌握,也应注重方法、技术的实际应用。

二、考试形式与试卷结构(一)试卷满分及考试时间满分为100分,考试时间为2小时。

(二)答题方式答题方式为闭卷、笔试。

(三)试卷内容结构1 软件工程概述(5分)2 可行性分析(5分)3 需求分析(10分)4 概要设计(10分)5 详细设计(10分)6 面向对象的分析与设计方法(30分)7 编码(5分)8 软件质量与质量保证(20分)9 项目计划与管理(5分)(四)试卷题型结构1 选择题(40分)2 名词解释(15分)3 简答题(20分)4 分析设计题(25分)三、考查内容及要求1 软件工程概述(1) 软件软件的发展、软件的定义、软件的特点、软件的种类。

(2) 软件工程的概念软件危机与软件工程的定义、软件工程的目标、软件工程的原则。

(3) 软件生存周期与软件开发模型瀑布模型、原型模型、螺旋模型、基于四代技术模型、面向对象与组件模型、混合模型。

2 可行性分析(1) 可行性研究的任务(2) 可行性研究的步骤(3) 系统流程图(4) 成本/效益分析3 需求分析(1) 需求分析的任务与步骤需求分析的任务、需求分析的步骤、需求分析的原则。

①面向数据流的分析方法基本符号、基于数据流的分析方法、数据字典。

②面向数据结构的分析方法(3) 需求规格说明与评审4 概要设计(1) 概要设计的任务与步骤概要设计的任务、概要设计的步骤(2) 软件设计的概念与原则模块化、抽象、信息隐藏和局部化、模块独立性、结构设计的评价原则(3) 概要设计的方法①面向数据流的设计方法基本概念、变换分析、事务分析、设计优化原则②面向数据结构的设计方法(4) 概要设计文档与评审5 详细设计(1) 详细设计的任务与原则详细设计的任务、详细设计的原则(2) 详细设计的方法程序流程图PFC、N-S图、PAD图、HIPO图、过程设计语言PDL、详细设计方法的选择(3) 详细设计规格说明与评审6 面向对象的分析与设计方法(1) 面向对象方法的基本概念和特征确定对象、确定属性、定义操作、对象间通信(3) 面向对象设计面向对象设计概念、面向对象设计方法、程序构件及接口、细节设计(4) UML方法UML的发展与特点、UML的表示法、UML的开发步骤(5) 面向对象实例分析与设计建立用例、确定表、设计对象的交互作用、指定联系、寻找继承、分析对象行为、设计系统的体系结构7 编码(1) 程序设计语言程序设计语言分类、程序设计语言特点、程序设计语言选择(2) 编程风格与编程效率(3) 编程安全(4) 面向对象编程技术8 软件质量与质量保证(1) 软件质量的定义(2) 影响软件质量的因素(3) 软件质量保证策略(4) 软件质量保证活动(5) 软件质量保证标准(6) 软件评审(7) 结构化的软件测试①软件测试的概念和原则测试的概念、测试的原则、测试的方法②软件测试技术白盒测试、黑盒测试③软件测试的步骤软件测试过程、软件测试步骤、单元测试、综合测试、确认测试、系统测试④纠错技术(8) 面向对象的软件测试①面向对象分析和面向对象设计的模型测试面向对象分析和面向对象设计模型的正确性、面向对象分析和面向对象设计模型的一致性②面向对象的测试策略面向对象的单元测试、面向对象的组装测试、面向对象的确认测试③面向对象软件测试用例设计测试用例设计蕴涵面向对象的概念、传统测试用例设计方法的适用性、基于故障的测试、面向对象编程对测试的影响、测试用例与类的分层、基于脚本的测试设计、测试外部结构和内部结构④可用于类层次上的测试方法面向对象类的随即测试、类层次的分割测试⑤类间测试用例设计多重类测试、按行为模型导出的测试(9) 软件测试计划与测试分析报告(10) 软件维护软件维护的定义、分类、特点、软件维护步骤及组织、软件的可维护性、软件维护的副作用、逆向工程和再生工程9 项目计划与管理(1) 软件项目特点、管理的特殊性及软件管理功能(2) 确定项目的工作要求,确定软硬件资源(3) 人员的计划及组织(4) 成本估算及控制(5) 进度计划(6) 软件配置管理(7) 软件质量管理(8) 软件管理方案四、考试用具说明考试需携带黑色钢笔或签字笔答题。

2019考研北京邮电大学软件工程专业复习考试大纲

2019考研北京邮电大学软件工程专业复习考试大纲

2019考研北京邮电大学软件工程专业复习考试大纲2019考研北京邮电大学软件工程专业复习考试大纲807软件工程专业综合第一部分数据结构(90/150)一、考试要求要求考生比较系统地理解数据结构的基本概念和基本理论,掌握各种数据结构的特点和基本方法,着重考察考生综合运用所学知识分析问题和解决问题的能力。

要求考生能够用C/C++语言描述数据结构中的算法。

二、考试内容(一)绪论数据结构的基本概念,数据的逻辑结构、存储结构;算法的定义和应具有的特性,算法设计的要求,算法的时间复杂度分析和算法的空间复杂度分析。

(二)线性表线性结构的特点、线性表的定义,线性表的基本操作;线性表的顺序存储结构,对其进行检索、插入和删除等操作;线性表的链式存储结构,单链表、双向链表和循环链表这三种链表形式的存储结构和特点以及基本操作。

(三)栈和队列,递归算法栈的定义、结构特点及其存储方式(顺序存储与链接存储)和基本操作的实现算法;队列的结构、特点及其存储方式(顺序存储与链接存储)和基本操作的实现算法。

递归的基本概念和实现原理以及用递归的思想描述问题和书写算法的方法;用栈实现递归问题的非递归解法。

(四)数组和串串的基本概念、串的存储结构和相关的操作算法;数组的存储结构,在顺序存储的情况下,数组元素与存储单元的对应关系;稀疏矩阵的存储结构和特点以及基本操作。

字符串匹配算法(例如KMP算法)。

(五)树和森林树的结构和主要概念,各种二叉树的结构及其特点;二叉树的三种遍历方法的实现原理和性质,能将二叉树的遍历方法应用于求解二叉树的叶子结点个数、二叉树计数等问题,遍历的非递归实现方法;线索化二叉树的结构和基本操作;森林的定义和存储结构,森林的遍历等方法的实现;基于霍夫曼树生成霍夫曼编码的方法;AVL树的定义和特点以及AVL树调整操作的实现原理;最优二叉树的构造原理和相关算法。

(六)图图的各种基本概念和各种存储方式;图的两种搜索方法和图连的连通性;两种最小生成树的生成方法;各种求最短路径的方法;用顶点表示活动和用边表示活动的两种网络结构特点和相关操作的实现算法。

北京理工大学2019年硕士研究生自命题考试科目考试大纲

北京理工大学2019年硕士研究生自命题考试科目考试大纲
085204材料工程(专业学位)
875材料科学基础.pdf
0805J2资源环境与循环经济(交叉学科)
817资源循环基础.pdf
0202J1资源环境与循环经济(交叉学科)
815资源与环境经济学.pdf
011经济与管理学院
0202应用经济学
804经济学原理.pdf
1201管理科学与工程
801管理学.pdf
816高级英语.pdf
818综合日语.pdf
035101法律(非法学)(专业学位)
无自命题科目
0352社会工作(专业学位)
331社会工作原理.pdf
437社会工作实务.pdf
0451教育(专业学位)
333教育综合.pdf
807教育管理与教学.pdf
808教育技术综合.pdf
1252公共管理(专业学位)
804经济学原理.pdf
805数据库技术与应用.pdf
1202工商管理
801管理学.pdf
804经济学原理.pdf
0251金融(专业学位)
431金融学综合.pdf
1251工商管理(专业学位)
无自命题科目
1252公共管理(专业学位)
无自命题科目
0202J1资源环境与循环经济(交叉学科)
815资源与环境经济学.pdf
0807动力工程及工程热物理
851传热学Ⅱ.pdf
852工程热力学.pdf
0817化学工程与技术
814物理化学III.pdf
820有机化学I.pdf
878化工原理.pdf
0830环境科学与工程
856环境影响评价.pdf
857微生物基础I.pdf
858环境工程学.pdf
085206动力工程(专业学位)

软件工程考试大纲

软件工程考试大纲

软件工程考试大纲一、引言软件工程考试大纲是为了规范和统一软件工程专业学生的考试要求,准确评估学生的知识掌握程度,促进学生全面发展和提高软件工程专业人才的培养质量。

本考试大纲旨在明确软件工程考试的目标、内容和要求,为教师进行教学计划的制定和学生备考提供指导,以期达到科学、公正、有效的考试评价目的。

二、考试目标软件工程考试的目标是评估学生在软件工程领域的知识掌握、分析解决问题的能力以及实践应用的能力。

具体考试目标如下:1. 熟练掌握软件工程的基本概念、原理和方法。

2. 具备软件需求分析、设计、实现、测试和维护的能力。

3. 能够分析和解决软件工程领域的实际问题。

4. 具备良好的团队协作和沟通能力。

5. 具备自我学习和持续学习的能力。

三、考试内容软件工程考试的内容包括以下几个方面:1. 软件工程基础知识1.1 软件工程概述1.2 软件生命周期1.3 软件过程模型1.4 软件质量保证与测试1.5 软件项目管理1.6 质量管理体系与认证2. 软件需求与规格2.1 需求获取与分析2.2 需求规格化2.3 需求验证与确认3. 软件设计3.1 软件设计原理3.2 结构化设计与面向对象设计 3.3 软件架构设计3.4 接口设计4. 软件编码与测试4.1 编程语言与开发环境4.2 编程规范与编码风格4.3 软件测试方法与技术4.4 软件测试策略与计划4.5 软件测试工具与自动化测试5. 软件维护与演化5.1 软件维护概述5.2 软件维护过程与策略5.3 软件版本管理与配置管理5.4 软件重构四、考试要求软件工程考试的要求是考察学生对软件工程理论和实践的掌握程度以及对问题分析和解决能力的应用。

具体考试要求如下:1. 考试形式1.1 笔试:包括选择题、填空题和简答题等。

1.2 实践操作:包括编程题、软件设计题和软件测试题等。

2. 考试内容与比重2.1 软件工程基础知识:占总分的25%。

2.2 软件需求与规格:占总分的20%。

2019北航软件学院软件工程考研初试科目及参考书目

2019北航软件学院软件工程考研初试科目及参考书目

2019北航软件学院软件工程考研初试科目及参考书目
一、院校介绍
北京航空航天大学软件学院是2002年经国家教育部和国家发改委联合批准成立的全国37所国家示范性软件学院之一。

以创办一所能够在一种新的办学机制下,规模培养全面发展的、创新型的、国际化的、市场急需的工程实用性人才的国内一流学院为发展目标,为创建适应行业需求和市场导向的新型办学机制探路,为软件工程高端人才培养做示范,为推进工程教育的改革提供实践经验。

经过十多年的发展,软件学院在人才培养上逐渐形成了自己的培养模式和培养特色,受到业界认可,引起了广泛的关注。

在课程体系建设中体现工程教育特色,注重学生的工程意识和实践能力培养,研究生毕业时深受企业欢迎,人才供不应求。

我院重视国际合作与交流,与国际国内知名软件企业开展深度的校企合作,并设立专业实验室。

在学院专职教师当中,具有工业化背景的教师占61%,具有海外经历的教师占49%以上,还有一定数量的外籍教师。

在课程设置中开设英文口语教学、试行全英文授课和双语教学模式,努力提高学生的外语能力,培养国际化的复合型人才。

学院鼓励学生创新创业创意,响应国家“大众创业,万众创新”的号召。

学生高薪高质量就业,毕业生供不应求。

二、考生科目
第一门考试科目101思想政治理论
第二门考试科目201英语一
第三门考试科目301数学一
第四门考试科目991数据结构与C语言程序设计
三、参考用书:
《数据结构教程第3版》唐发根编著北京航空航天大学出版社2017《C程序设计》谭浩强编著清华大学出版社(版次不限)。

软件工程》考试大纲.pdf

《软件工程》考试大纲一.目的与任务1.目的《软件工程》是高职高专计算机及相关专业必修的一门专业主干课,软件工程实用性强。

学生毕业后会有不少人从事软件的开发、维护、升级工作。

学生通过这门课的学习,应掌握软件工程的开发规范,看懂并正确书写各种技术文档,能实际开发或与别人合作开发一个简单的软件。

2.任务其主要任务是为计算机科学和工程技术人员奠定必要的理论基础、培养实际动手能力和提高分析问题和解决问题的能力。

根据“理论够用,重视应用”的原则,介绍软件工程的基本知识,总结国内软件工程建设中成功与失败的经验教训,介绍原型法、面向对象等的开发方法。

使学生受到规范化开发软件工程的训练以及书写规范化文档的训练,并能熟练使用PlayCASE建模工具进行软件开发的前期设计。

二.本课程的基本要求通过“软件工程”这门课程的学习,要求学生掌握以下几个方面的知识和技能:(1)软件工程的基本概念、主要功能;(2)软件工程的开发规范及开发方法;(3)软件工程的组织管理;(4)能看懂软件工程的开发文档,并能编写开发文档;(5)能使用PlayCASE建模工具按规范要求开发一个简单的软件。

三.与其它课程的关系“软件工程”是一门综合性较强的应用课程,需要有一定的计算机专业知识,主要是计算机硬件和计算机网络、数据库、高级1程序设计语言与程序设计方法等知识。

另外,需要一定的管理业务知识以及综合应用这些知识的能力。

学好本课程也将对加深过去已学课程的理解起到重要的作用。

因为只有掌握了软件工程的基本理论和方法,才能懂得怎样对数据进行组织和处理,并成功地投入到计算机软件开发中去。

四.考核形式及时间考核形式:考试设计报告占60%,第十四周交设计报告平时占40%,以软件工程理论部分掌握的情况为主,要求如下。

五. 考核知识点与考核要求(一)理论部分第1章 软件工程1、软件的发展(了解)2、软件的概念(理解)3、软件的定义(掌握)4、软件的特点(掌握)5、软件的分类(了解)6、软件工程的基本内容(掌握)7、软件生命周期(掌握)8、软件过程模型的种类(掌握)9、什么是软件工程标准(理解)10、软件工程标准的层次(掌握)11、什么是软件开发文档(了解)12、软件开发文档的作用(了解)13、软件开发文档的分类(了解)第2章 传统的软件工程1、可行性研究的步骤(了解)2、可行性研究报告的一般格式(掌握)3、数据流程图(掌握)4、数据流程图中的元素(掌握)5、数据字典(了解)26、软件设计的内容(掌握)7、由数据流程图绘制功能模块图的方法(掌握)8、内聚与藕合的概念(掌握)9、E/R图(掌握)10、部分依赖、传递依赖的概念(理解)11、范式、关系规范化(掌握)12、软件测试方法黑盒法、白盒法(掌握)13、软件测试常用的手段、软件测试过程(掌握)第3章 面向对象的软件工程1、对象、类、继承、封装的概念(掌握)2、三种形式的模型概念模型、动态模型、功能模型(掌握)3、面向对象分析的基本过程(掌握)4、面向对象设计的方法(掌握)5、面向对象的测试过程(掌握)第4章计算机辅助软件工程(CASE)1、CASE的概念(掌握)2、CASE的分类(了解)3、CASE系统应该具备的功能(掌握)4、软件工程的未来趋势(了解)(二)设计报告要求综合运用所学习的软件工程的知识、方法及PlayCASE建模工具进行系统建模,写出设计报告。

2019北交960机械原理专业课考试大纲

960 机械原理参考书目:《机械原理》(1—12 章);出版社:高等教育出版社(第 7 版);作者:孙桓,陈作模,葛文杰。

考试范围:1、机构的结构分析:要求掌握的内容:(1)掌握机构的组成原理和机构具有确定运动的条件;(2)能绘制常用机构的机构运动简图,用机构运动简图表达自己的设计构思;(3)能计算平面机构自由度;(4)掌握机构组成原理和结构分析方法,能对典型机构的组成进行分析。

2、平面机构的运动分析:要求掌握的内容:(1)能用瞬心法对简单平面高、低副机构进行速度分析,理解其局限性;(2)能用矢量方程图解法和解析法进行平面二级机构进行运动分析;(3)能综合应用瞬心法和矢量方程图解法对复杂机构进行速度分析。

3、平面机构的力分析与机械的效率:要求掌握的内容:(1)了解平面机构力分析的目的和过程,掌握二级机构力分析方法;(2)能对几种常见运动副中的摩擦力进行分析和计算;(3)能够进行典型机构的受力分析;(4)能够对简单机械的机械效率和自锁条件进行求解。

4、机械的平衡:要求掌握的内容:(1)掌握刚性转子静、动平衡的原理和方法;(2)掌握平面机构惯性力的平衡方法。

5、机械的运转及其速度波动的调节:要求掌握的内容:(1)了解机器运动和外力的定量关系;(2)掌握机械系统等效动力学模型的建立方法;(3)了解机器运动速度波动的调节方法,掌握飞轮转动惯量的计算方法。

6、平面连杆机构及其设计:要求掌握的内容:(1)了解平面连杆机构的组成及其主要优缺点;(2)了解平面连杆机构的基本形式及其演化和应用;(3)掌握平面四杆机构设计中的共性问题;(4)能够根据给定运动条件应用图解法和解析法进行平面四杆机构的综合与设计。

7、凸轮机构及其设计:要求掌握的内容:(1)了解凸轮机构的类型与从动件常用运动规律的特性及选择原则;(2)能够根据凸轮机构基本尺寸的原则和方法确定凸轮机构的相关尺寸;(3)能够根据选定的凸轮类型和传动件运动规律进行凸轮轮廓曲线的设计。

软件工程考试大纲

《软件工程》考试大纲一、考试说明考试对象:计算机科学与技术专业命题原则:(1)在教学大纲和考试大纲所规定的知识点范围内命题。

(2)试题的考察要求覆盖面广、区分度高。

(3)试题兼顾各个能力层次,难易程度和题量适当,按难易程度分为四个层次:容易占40%,较易占40%,较难占10%,难占10%。

试题题型:《软件工程》试题总分为100分,选择题占20分,简答题占20分,论述题占 20分、设计题占40分。

选择题:给出有关软件工程概念、原理、方法的不完整叙述,要求考生从题后给出的四个选项中选择合适的一种答案,补充完整。

简答题:可包括重要概念的解释、数据流图的绘制。

论述题:可包括重要概念的解释、数据流图的绘制。

设计题:可包括绘流程图、写算法设计思想、定义相应数据结构、用高级语言书写程序。

二、考试范围重点考察学生对软件工程有关概念的理解以及软件工程有关的原理方法。

按照教学大纲的要求,具体考核要求分为掌握、理解和了解三个层次:掌握:要求学生能够全面、深入理解和熟练应用的内容,是重点考试内容。

理解:要求学生能够较好地理解所学内容,并且能够进行简单分析和判断。

了解:对要求了解的内容,在考试中占较小比例,不超过5%。

1、绪论[考核的知识点和要求]掌握:学习软件工程的意义,面向对象软件工程和传统软件工程的比较;各种软件开发模型的内容,不同开发模型的特点比较;理解:软件的定义、软件的分类,软件危机、软件工程学的范畴;软件过程中瀑布模型、快速原型模型、螺旋模型的特点。

3、软件需求分析[考核的知识点和要求]理解:可行性研究任务(目的)及涉及的内容,需求分析的任务,需求分析的方法及主要方法(面向数据流分析)的具体步骤,需求分析的任务、步骤。

掌握:数据流图(掌握顶层数据流图的绘制),细化DFD的原则,数据词典的定义及表述符号,其他分析工具。

4、软件设计概述[考核的知识点和要求]掌握:软件设计的任务、基本概念,模块化设计,设计文档,模块与构件,抽象与细化,信息隐藏;高内聚低耦合。

软件工程师考试大纲

一、考试说明1.考试要求:(1) 掌握数据表示、算术和逻辑运算;(2) 掌握相关的应用数学、离散数学的基础知识;(3) 掌握计算机体系结构以及各主要部件的性能和基本工作原理;(4) 掌握操作系统、程序设计语言的基础知识,了解编译程序的基本知识;(5) 熟练掌握常用数据结构和常用算法;(6) 熟悉数据库、网络和多媒体的基础知识;(7) 掌握C程序设计语言,以及C++、Java、Visual、Basic、Visual C++中的一种程序设计语言;(8) 熟悉软件工程、软件过程改进和软件开发项目管理的基础知识;(9) 熟悉掌握软件设计的方法和技术;(10) 掌握常用信息技术标准、安全性,以及有关法律、法规的基本知识;(11) 了解信息化、计算机应用的基础知识;(12) 正确阅读和理解计算机领域的英文资料。

2.通过本考试的合格人员能根据软件开发项目管理和软件工程的要求,按照系统总体设计规格说明书进行软件设计,编写程序设计规格说明书等相应的文档,组织和指导程序员编写、调试程序,并对软件进行优化和集成测试,开发出符合系统总体设计要求的高质量软件;具有工程的实际工作能力和业务水平。

3.本考试设置的科目包括:(1) 计算机与软件工程知识,考试时间为150分钟,笔试;(2) 软件设计,考试时间为150分钟,笔试。

二、考试范围考试科目1:计算机与软件工程知识1.计算机科学基础1.1 数制及其转换•二进制、十进制和十六进制等常用制数制及其相互转换1.2 数据的表示•数的表示(原码、反码、补码、移码表示,整数和实数的机内表示,精度和溢出)•非数值表示(字符和汉字表示、声音表示、图像表示)•校验方法和校验码(奇偶校验码、海明校验码、循环冗余校验码)1.3 算术运算和逻辑运算•计算机中的二进制数运算方法•逻辑代数的基本运算和逻辑表达式的化简1.4 数学基础知识•命题逻辑、谓词逻辑、形式逻辑的基础知识•常用数值计算(误差、矩阵和行列式、近似求解方程、插值、数值积分)•排列组合、概率论应用、应用统计(数据的统计分析)•运算基本方法(预测与决策、线性规划、网络图、模拟)1.5 常用数据结构•数组(静态数组、动态数组)、线性表、链表(单向链表、双向链表、循环链表)、队列、栈、树(二叉树、查找树、平衡树、线索树、线索树、堆)、图等的定义、存储和操作•Hash(存储地址计算,冲突处理)1.6 常用算法•排序算法、查找算法、数值计算方法、字符串处理方法、数据压缩算法、递归算法、图的相关算法•算法与数据结构的关系、算法效率、算法设计、算法描述(流程图、伪代码、决策表)、算法的复杂性2.计算机系统知识2.1 硬件知识2.1.1 计算机系统的组成、体系结构分类及特性•CPU和存储器的组成、性能和基本工作原理•常用I/O设备、通信设备的性能,以及基本工作原理•I/O接口的功能、类型和特性•I/O控制方式(中断系统、DMA、I/O处理机方式)•CISC/RISC,流水线操作,多处理机,并行处理2.1.2 存储系统•主存-Cache存储系统的工作原理•虚拟存储器基本工作原理,多级存储体系的性能价格•RAID类型和特性2.1.3 安全性、可靠性与系统性能评测基础知识•诊断与容错•系统可靠性分析评价•计算机系统性能评测方式2.2 软件知识2.2.1 操作系统知识•操作系统的内核(中断控制)、进程、线程概念•处理机管理(状态转换、共享与互斥、分时轮转、抢占、死锁)•存储管理(主存保护、动态连接分配、分段、分页、虚存)•设备管理(I/O控制、假脱机)•文件管理(文件目录、文件组织、存取方法、存取控制、恢复处理)•作业管理(作业调度、作业控制语言(JCL)、多道程序设计)•汉字处理,多媒体处理,人机界面•网络操作系统和嵌入式操作系统基础知识•操作系统的配置2.2.2 程序设计语言和语言处理程序的知识•汇编、编译、解释系统的基础知识和基本工作原理•程序设计语言的基本成分:数据、运算、控制和传输,过程(函数)调用•各类程序设计语言主要特点和适用情况2.3 计算机网络知识•网络体系结构(网络拓扑、OSI/RM、基本的网络协议)•传输介质、传输技术、传输方法、传输控制•常用网络设备和各类通信设备•Client/Server结构、Browser/Server结构•LAN拓扑,存取控制,LAN的组网,LAN间连接,LAN-WAN连接•因特网基础知识以及应用•网络软件•网络管理•网络性能分析2.4 数据库知识•数据库管理系统的功能和特征•数据库模型(概念模式、外模式、内模式)•数据模型,ER图,第一范式、第二范式、第三范式•数据操作(集合运算和关系运算)•数据库语言(SQL)•数据库的控制功能(并发控制、恢复、安全性、完整性)•数据仓库和分布式数据库基础知识2.5 多媒体知识•多媒体系统基础知识,多媒体设备的性能特性,常用多媒体文件格式•简单图形的绘制,图像文件的处理方法•音频和视频信息的应用•多媒体应用开发过程2.6 系统性能知识•性能指标(响应时间、吞吐量、周转时间)和性能设计•性能测试和性能评估•可靠性指标及计算、可靠性设计•可靠性测试和可靠性评估2.7 计算机应用基础知识•信息管理、数据处理、辅助设计、自动控制、科学计算、人工智能等基础知识•远程通信服务基础知识•常用应用系统3.系统开发和运行知识3.1 软件工程、软件过程改进和软件开发项目管理知识•软件工程知识•软件开发生命周期各阶段的目标和任务•软件开发项目管理基础知识(时间管理、成本管理、质量管理、人力资源管理、风险管理等)及其常用管理工具•主要的软件开发方法(生命周期法、原型法、面向对象法、CASE)•软件开发工具与环境知识•软件过程改进知识•软件质量管理知识•软件开发过程评估、软件能力成熟评估基础知识3.2 系统分析基础知识•系统分析的目的和任务•结构化分析方法(数据流图(DFD)、数据字典(DD)、实体关系图(ERD)、描述加工处理的结构化语言)•统一建模语言(UML)•系统规格说明书3.3 系统设计知识•系统设计的目的和任务•结构化设计方法和工具(系统流程图、HIPO图、控制流程图)•系统总体结构设计(总体布局、设计原则、模块结构设计、数据存储设计、系统配置方案)•系统详细设计(代码设计、数据库设计、用户界面设计、处理过程设计)•系统设计说明书3.4 系统实施知识•系统实施的主要任务•结构化程序设计、面向对象程序设计、可视化程序设计•程序设计风格•程序设计语言的选择•系统测试的目的、类型,系统测试方法(黑盒测试、白盒测试、灰盒测试)•测试设计和管理(错误曲线、错误排除、收敛、注入故障、测试用例设计、系统测试报告)•系统转换基础知识3.5 系统运行和维护知识•系统运行管理基础知识•系统维护基础知识•系统评价基础知识3.6 面向对象开发方法•面向对象开发概念(类、对象、属性、封装性、继承性、多态性、对象之间的引用)•面向对象开发方法的优越性以及有效领域•面向对象设计方法(体系结构、类的设计、用户接口设计)•面向对象实现方法(选择程序设计语言、类的实现、方法的实现、用户接口的实现、准备测试数据)•面向对象程序设计语言(如C++、Java、Visual、Bsasic、Visual C++)的基本机制•面向对象数据库、分布式对象的概念4.安全性知识•安全性基本概念•防治计算机病毒、防范计算机犯罪•存取控制、防闯入、安全管理措施•加密与解密机制•风险分析、风险类型、抗风险措施和内部控制5.标准化知识•标准化意识、标准化的发展、标准制订过程•国际标准、国家标准、行业标准、企业标准基本知识•代码标准、文件格式标准、安全标准、软件开发规范和文档标准知识•标准化机构6.信息化基础知识•信息化意识•全球信息化趋势、国家信息化战略、企业信息化战略和策略•有关的法律、法规•远程教育、电子商务、电子政务等基础知识•企业信息资源管理基础知识7.计算机专业英语•掌握计算机技术的基本词汇•能正确阅读和理解计算机领域的英文资料考试科目2:软件设计1.外部设计1.1 理解系统需求说明1.2 系统开发的准备•选择开发方法、准备开发环境、制订开发计划1.3 设计系统功能•选择系统结构,设计各子系统的功能和接口,设计安全性策略、需求和实现方法,制订详细的工作流和数据流1.4 设计数据模型•设计ER模型、数据模型1.5 编写外部设计文档•系统配置图、各子系统关系图、系统流程图、系统功能说明书、输入输出规格说明、数据规格说明、用户手册框架•设计系统测试要求1.6 设计评审2.内部设计2.1 设计软件结构•按构件分解,确定构件功能规格以及构件之间的接口•采用中间件和工具2.2 设计输入输出•屏幕界面设计、设计输入输出检查方法和检查信息2.3 设计物理数据•分析数据特性,确定逻辑数据组织方式、存储介质,设计记录格式和处理方式•将逻辑数据结构换成物理数据结构,计算容量,进行优化2.4 构件的创建和重用•创建、重用构件的概念•使用子程序库或类库2.5 编写内部设计文档•构件划分图、构件间的接口、构件处理说明、屏幕设计文档、报表设计文档、文件设计文档、数据库设计文档2.6 设计评审3.程序设计3.1 模块划分(原则、方法、标准)3.2 编写程序设计文档•模块规格说明书(功能和接口说明、程序处理逻辑的描述、输入输出数据格式的描述)•测试要求说明书(测试类型和目标、测试用例、测试方法)3.3 程序设计评审4.系统实施4.1 配置计算机系统及其环境4.2 选择合适的程序设计语言4.3 掌握C程序设计语言,以及C++、Java、Visual、Basic、Visual C++中任一种程序设计语言,以便能指导程序员进行编程和测试,并进行必要的优化4.4 系统测试•指导程序员进行模块测试,并进行验收•准备系统集成测试环境和测试工具•准备测试数据•写出测试报告5.软件工程•软件生存期模型(瀑布模型、螺旋模型、喷泉模型)和软件成本模型•定义软件需求(系统化的目标、配置、功能、性能和约束)•描述软件需求的方法(功能层次模型、数据流模型、控制流模型、面向数据的模型、面向对象的模型等)•定义软件需求的方法(结构化分析方法、面向对象分析方法)•软件设计(分析与集成、逐步求精、抽象、信息隐蔽)•软件设计方法(结构化设计方法、Jackson方法、Warnier方法、面向对象设计方法)•程序设计(结构化程序设计、面向对象程序设计)•软件测试的原则与方法•软件质量(软件质量特性、软件质量控制)•软件过程评估基本方法、软件能力成熟度评估基本方法•软件开发环境和开发工具(分析工具、设计工具、编程工具、测试工具、维护工具、CASE)•软件工程发展趋势(面向构件,统一建模语言(UML))•软件过程改进模型和方法。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档