软件工程考试大纲
- 格式:docx
- 大小:182.90 KB
- 文档页数:14
中级嵌入式软件工程师考试大纲以下是中级嵌入式软件工程师考试的大纲:
1. 嵌入式系统基础知识:
- 嵌入式系统概述
- 嵌入式软件开发流程
- 嵌入式系统硬件和软件架构
2. 嵌入式编程语言:
- C语言基础
- C语言高级特性
- 汇编语言基础
3. 实时操作系统:
- 实时操作系统基础概念
- 实时任务调度和优先级
- 实时操作系统常用API和功能
4. 嵌入式系统接口:
- 外设接口、总线和协议
- 硬件和软件的接口设计
- 中断和异常处理
5. 嵌入式调试和测试:
- 调试工具和方法
- 测试方法和技术
- 嵌入式系统性能调优
6. 嵌入式软件开发过程:
- 软件需求分析和规格说明
- 软件架构设计和系统设计
- 软件开发、测试和验证
7. 嵌入式系统安全:
- 嵌入式系统安全概念
- 安全漏洞和攻击类型
- 嵌入式系统安全防护
8. 嵌入式系统集成和部署:
- 硬件和软件集成
- 嵌入式系统的部署和发布
- 配置管理和版本控制
以上大纲仅供参考,具体考试内容可能根据不同的考试机构和考试要求有所调整。
西安理工大学计算机科学与工程学院硕士研究生入学考试课程《软件工程》考试大纲第一部分考试说明一、考试目的《软件工程》是计算机各专业的核心课程。
考核目的是测试软件工程及相近各专业的本科毕业生对于该课程的知识掌握程度,以保证被录取者具有本学科基本的专业理论基础及软件需求定义、设计、开发的工程化基本能力,并方便软件工程学科及相近学科的导师择优选拔硕士研究生。
考试对象为参加全国硕士研究生入学考试的本科毕业生和具有同等学力的在职人员。
二、考试范围考试范围涵盖软件工程相关的基本概念、过程模型,以及利用结构化方法、面向对象方法对软件系统进行可行性分析、需求定义、设计、实现、测试、维护、质量保证的基本技能、方法及工具。
三、考试形式与试卷结构1.答卷方式:闭卷,笔试。
2.答题时间:180 分钟。
3.考查内容及其考查比例基本概念、基本知识、基本方法约占60%~70%;综合应用约占40%~30%。
4.试卷结构与考试题型试卷共150分,可能包含的基本题型有:(1)填空题;(2)名词解释;(3)选择题;(4)简答题;(5)论述题;(6)综合设计应用题。
四、教材和参考书教材: 《软件工程导论》(第6版),张海藩编著,清华大学出版社,2013.8第二部分考查要点1.软件工程学基本概念和术语●掌握软件工程、软件特征、软件工程方法学的基本概念;●掌握软件过程瀑布模型、快速原型模型、增量模型、螺旋模型、喷泉模型、RUP模型、敏捷过程,以及各个模型的优缺点与适应场合。
●理解软件危机产生的原因,消除软件危机的途径,认知软件工程的基本原理;●了解2014年2月IEEE计算机协会发布的软件工程知识体系SWEBOK V3中所涉及的15个知识域,以及软件工程所涉及的相关学科。
2.可行性研究与分析●深入理解软件系统可行性分析的目的与任务,熟知应从哪些方面进行可行性研究与分析;●掌握数据流图(DFD)的基本符号、分层细化原则及数据字典的内容,并能运用数据流图与数据字典描述实际软件系统。
软考嵌入式软件工程师考试大纲软考嵌入式软件工程师考试大纲主要包括以下几个方面:一、嵌入式系统基础知识1. 计算机科学基础* 数制及转换:二进制、八进制、十进制和十六进制等常用数制及其相互转换* 数据的表示:数的机内表示(原码、反码、补码、移码,定点和浮点,精度和溢出)* 字符、汉字、声音、图像的编码方式* 校验方法和校验码(奇偶验码、海明校验码、循环校验码)* 算术和逻辑运算:计算机中的二进制数运算方法* 逻辑代数的基本运算和逻辑表达式的化简* 计算机系统结构和重要部件的基本工作原理:CPU和存储器的组成、性能、基本工作原理* 常用I/O设备、通信设备的性能,以及基本工作原理* I/O接口的功能、类型和特点* 虚拟存储存储基本工作原理,多级存储体系* 安全性、可靠性与系统性能评测基础知识:诊断与容错* 系统可靠性分析评价* 计算机系统性能评测方法2. 嵌入式系统硬件知识* 数字电路和逻辑电路基础* 组合电路和时序电路二、嵌入式系统软件知识1. 操作系统基础知识2. 嵌入式软件开发环境与工具3. 嵌入式软件设计模式与架构设计4. 嵌入式软件系统分析与评估5. 嵌入式软件测试与可靠性技术6. 嵌入式软件系统安全与防护7. 嵌入式软件系统维护与升级8. 嵌入式软件系统应用开发与实例分析9. 嵌入式软件系统新技术与发展趋势10. 其他相关领域知识:如物联网、智能家居等新兴领域的知识。
三、嵌入式系统开发实践1. 嵌入式系统开发流程与方法论2. 嵌入式系统硬件平台选型与评估3. 嵌入式系统软件开发环境搭建与配置4. 嵌入式系统软件设计、编码与调试技术5. 嵌入式系统测试与可靠性评估方法6. 嵌入式系统维护与升级策略制定与实践操作7. 嵌入式系统安全防护措施实施方案设计与实践操作8. 其他相关领域实践经验分享与案例分析。
硕士探讨生入学考试《软件工程学》考试大纲一、考试要求《软件工程学》是一门专业基础课,要求考生较系统地驾驭软件工程的基本概念、原理、技术和方法,并能灵敏地运用这些基本学问,为软件开发建立分析模型、设计模型、软件测试解决方案等。
本课程包括软件开发模型,软件项目管理,需求分析,软件设计,软件编码和测试,软件维护等。
主要考查考生对软件工程学基础学问的理解,是否有软件开发过程的科学管理意识,驾驭软件需求分析和软件设计基本方法,了解计算机帮助软件工程工具(CASE工具),驾驭UML及其相关工具。
二、主要参考书目软件工程(其次版),齐治昌谭庆平宁洪著,高等教化出版社,2004年03月出版三、其它参考书目张海藩,软件工程导论(第5版),清华高校出版社,2008 年2月出版。
四、考试题型及权重(共75分)⑴选择题: 约15分;⑵填空题: 约15分;⑶问答题:30分;⑷综合分析题:7分;⑸综合设计题:8分。
五、考查范围(1)软件和软件工程理解软件的定义、软件工程的定义、软件危机出现的缘由,以及解决危机的方法。
理解软件工程的目标和原则,驾驭软件生存周期、软件开发模型。
(2)软件项目管理了解软件管理的必要性,了解软件项目管理的主要任务,理解软件度量的基本概念,了解项目估算、软件质量度量及软件牢靠性度量的意义、了解软件开发过程管理的主要内容,了解软件成熟度模型的意义(3)计算机系统工程理解计算机系统工程的定义、组成部分,了解可行性探讨的必要性,了解系统规格说明及评审。
(4)需求分析基础理解需求分析的主要任务和原则,了解初步需求获得的技术,理解需求建模的有关概念,理解需求分析的快速原型技术,了解需求规格说明的内容和评审方法。
(5)面对数据流的分析方法了解数据流图和数据字典的意义,理解数据流图和数据字典的组成部分,理解实体关系图,驾驭数据流模型的创建方法。
(6)面对对象的需求分析理解面对对象的基本概念,了解基于UML的需求分析的方法和步骤,能初步进行实例分析。
2024北航软件工程考试大纲一、考试性质北航软件工程考试是为了选拔具有优秀软件工程素质和潜力的优秀人才而进行的全国性考试。
该考试由教育部主办,各省级教育考试院组织,北航负责命题和评卷。
二、考试目标本考试旨在全面考察考生的软件工程知识、技能和能力,包括但不限于以下方面:1.软件工程基本概念和原理2.软件开发过程和方法3.软件需求工程4.软件设计和建模5.软件测试和维护6.软件质量保证和项目管理7.现代软件工程实践和发展趋势三、考试内容和要求本考试包括两部分:基础知识和应用技能。
1.基础知识部分:考生应掌握软件工程的基本概念、原理和方法,了解软件开发的全过程,包括需求分析、设计、实现、测试和维护等阶段。
此外,考生还应了解软件的质量保证和项目管理相关知识,包括但不限于敏捷开发、CMMI、PMP等。
2.应用技能部分:考生应能够运用所学的软件工程知识和技能解决实际软件开发中的问题。
这包括但不限于需求获取和分析、设计建模、测试用例设计、缺陷跟踪和修复等。
考生还应具备基本的项目管理能力和团队协作精神。
四、考试形式和试卷结构1.考试形式:笔试,时长180分钟,满分100分。
2.试卷结构:试卷由选择题、填空题、简答题和应用题组成。
其中,选择题和填空题主要考察考生的基础知识,简答题和应用题主要考察考生的应用技能。
试卷难度比例为:基础题60%,中等难度题30%,难题10%。
3.试题难度:试题难度分为容易、中等和难三个等级。
容易题应让全体考生都能作答;中等难度题应让大部分考生能作答;难题应有一定的挑战性,但仍能通过分析和推理得出答案。
885软件工程专业基础综合一、考查目标软件工程专业基础综合涵盖程序设计、数据结构等学科专业基础课程。
要求考生系统地掌握上述专业基础课程的概念、基本原理和方法,能够运用基本原理和基本方法分析和解决有关理论问题和实际问题。
二、考试形式和试卷结构试卷满分及考试时间本试卷满分为150分,考试时间为180分钟答题方式闭卷、笔试试卷内容结构程序设计75分数据结构75分试卷题型结构单项选择题20分程序填空题15分编程题50分简答题50分算法设计题15分三、考查范围程序设计部分1.考试内容⑴数据类型:常量、变量、数组、字符串、指针,变量的初始化、变量存储类型;⑵运算符与表达式:运算符的运算规则和优先级、表达式、类型转换;⑶程序的控制:程序的三种基本结构、语句、数据的输入输出;⑷函数:函数的定义、函数的调用、参数传递、带参数的主函数、函数的递归;⑸结构与联合:构造数据类型的概念、结构的定义与引用、联合的定义与引用、链表;⑹文件:文件的概念、文件指针、文件的打开、关闭及操作;2.考试要求⑴掌握C程序设计语言的基本语法。
⑵掌握常见的程序设计方法。
⑶掌握基本的数值、排序等算法,以及穷举、递推、递归等方法。
3.分值75分4.题型单项选择题10分程序填空题15分编程题50分数据结构部分1.考试内容⑴基本概念:数据结构,数据,数据元素,数据对象,抽象数据类型,算法,算法的时间复杂度和空间复杂度。
⑵线性表:线性表的逻辑结构和基本操作,顺序和链式存储结构,简单应用与实现。
⑶栈和队列:栈和队列的基本概念,存储结构,基本操作,简单应用与实现。
⑷数组和广义表:数组的定义及顺序存储结构,矩阵的压缩存储,数组的简单应用,广义表的定义与基本操作。
⑸树和二叉树:树的定义和基本操作,二叉树的概念和基本性质,二叉树的存储结构,遍历二叉树和线索二叉树,树和森林与二叉树的关系,哈夫曼树和哈夫曼编码,树的简单应用。
⑹图:图的基本概念,图的存储结构,图的遍历,图的应用,图的连通性,有向无环图及其应用,最短路径,关键路径。
《软件工程专业基础综合(840)》考试大纲江西财经大学软件与通信工程学院第一部分《C程序设计》(占总分30%)参考书目:谭浩强,《C程序设计》(第3版),清华大学出版社2005年第2章数据类型、运算符与表达式【内容】1、C的数据类型2、常量和变量3、整型数据、实型数据、字符型数据4、变量赋初值5、各类数值型数据间的混合运算6、算术运算符和算术表达式7、赋值运算符和赋值表达式8、逗号运算符和逗号表达式【要求】1、掌握C语言的数据类型、常量与变量的概念,掌握标识符的命名规则2、掌握整型数据、实型数据和字符型数据的特点和使用3、掌握变量赋初值的方法4、掌握算术表达式、赋值表达式和逗号表达式的使用方法5、了解各类数值型数据间混合运算时类型转换的方法第3章最简单的C程序设计【内容】1、C语句概述2、程序的三种基本结构3、赋值语句4、数据输入输出的概念及在C语言中的实现5、字符数据的输入输出【要求】1、掌握C语言的分类、三种基本程序结构和赋值语句的使用方法2、掌握printf函数和scanf函数的格式和使用3、掌握字符数据的输入输出函数第4章逻辑运算和判断选取控制【内容】1、关系运算符和关系表达式2、逻辑运算符和逻辑表达式3、if语句和switch语句【要求】1、掌握关系运算符、关系表达式、逻辑运算符和逻辑表达式的使用2、掌握if语句和switch语句的格式和使用3、掌握条件运算符的格式和使用第5章循环控制【内容】1、while、do-while和for语句2、循环的嵌套3、break语句和continue语句【要求】1、掌握while、do-while和for语句的格式和使用2、掌握循环结构程序设计方法第6章数组【内容】1、一维数组的定义和引用2、二维数组的定义和引用3、字符数组、常用字符串处理函数【要求】1、掌握一维数组以及二维数组的定义和使用2、掌握字符串的使用和字符串函数的应用第7章函数【内容】1、函数定义的一般形式2、函数参数和函数的值3、函数的调用4、函数的嵌套调用5、变量的存储类别:自动变量、静态变量、外部变量、寄存器变量【要求】1、掌握函数定义的格式2、掌握函数的形式参数和实际参数以及函数调用时的参数传递3、掌握函数嵌套调用的方法4、掌握自动变量、静态变量、外部变量、寄存器变量的概念和作用域第8章预处理命令【内容】1、宏定义2、文件包含处理【要求】1、掌握宏定义和文件包含处理的使用第9章指针【内容】1、地址和指针的概念2、变量的指针和指向变量的指针变量3、数组的指针和指向数组的指针变量4、字符串的指针和指向字符串的指针变量【要求】1、了解地址和指针的概念2、掌握指针变量的定义及指向简单变量指针的使用方法第10章结构体和共同体【内容】1、结构体变量的定义、引用和初始化2、结构体数组的定义和使用3、指向结构体类型数据的指针4、共用体【要求】1、掌握结构体变量的定义、引用和初始化2、掌握结构体数组的定义和使用3、掌握指向结构体类型数据的指针第二部分《数据结构》(占总分40%)参考书目:严蔚敏,《数据结构》(C语言版),清华大学出版社2007年【考查目标】1. 理解数据结构的基本概念;掌握数据的逻辑结构、存储结构及其差异;实现各种基本操作。
《软件工程专业基础综合(840)》考试大纲江西财经大学软件与通信工程学院第一部分《C程序设计》(占总分30%)参考书目:谭浩强,《C程序设计》(第3版),清华大学出版社2005年第2章数据类型、运算符与表达式【内容】1、C的数据类型2、常量和变量3、整型数据、实型数据、字符型数据4、变量赋初值5、各类数值型数据间的混合运算6、算术运算符和算术表达式7、赋值运算符和赋值表达式8、逗号运算符和逗号表达式【要求】1、掌握C语言的数据类型、常量与变量的概念,掌握标识符的命名规则2、掌握整型数据、实型数据和字符型数据的特点和使用3、掌握变量赋初值的方法4、掌握算术表达式、赋值表达式和逗号表达式的使用方法5、了解各类数值型数据间混合运算时类型转换的方法第3章最简单的C程序设计【内容】1、C语句概述2、程序的三种基本结构3、赋值语句4、数据输入输出的概念及在C语言中的实现5、字符数据的输入输出【要求】1、掌握C语言的分类、三种基本程序结构和赋值语句的使用方法2、掌握printf函数和scanf函数的格式和使用3、掌握字符数据的输入输出函数第4章逻辑运算和判断选取控制【内容】1、关系运算符和关系表达式2、逻辑运算符和逻辑表达式3、if语句和switch语句【要求】1、掌握关系运算符、关系表达式、逻辑运算符和逻辑表达式的使用2、掌握if语句和switch语句的格式和使用3、掌握条件运算符的格式和使用第5章循环控制【内容】1、while、do-while和for语句2、循环的嵌套3、break语句和continue语句【要求】1、掌握while、do-while和for语句的格式和使用2、掌握循环结构程序设计方法第6章数组【内容】1、一维数组的定义和引用2、二维数组的定义和引用3、字符数组、常用字符串处理函数【要求】1、掌握一维数组以及二维数组的定义和使用2、掌握字符串的使用和字符串函数的应用第7章函数【内容】1、函数定义的一般形式2、函数参数和函数的值3、函数的调用4、函数的嵌套调用5、变量的存储类别:自动变量、静态变量、外部变量、寄存器变量【要求】1、掌握函数定义的格式2、掌握函数的形式参数和实际参数以及函数调用时的参数传递3、掌握函数嵌套调用的方法4、掌握自动变量、静态变量、外部变量、寄存器变量的概念和作用域第8章预处理命令【内容】1、宏定义2、文件包含处理【要求】1、掌握宏定义和文件包含处理的使用第9章指针【内容】1、地址和指针的概念2、变量的指针和指向变量的指针变量3、数组的指针和指向数组的指针变量4、字符串的指针和指向字符串的指针变量【要求】1、了解地址和指针的概念2、掌握指针变量的定义及指向简单变量指针的使用方法第10章结构体和共同体【内容】1、结构体变量的定义、引用和初始化2、结构体数组的定义和使用3、指向结构体类型数据的指针4、共用体【要求】1、掌握结构体变量的定义、引用和初始化2、掌握结构体数组的定义和使用3、掌握指向结构体类型数据的指针第二部分《数据结构》(占总分40%)参考书目:严蔚敏,《数据结构》(C语言版),清华大学出版社2007年【考查目标】1. 理解数据结构的基本概念;掌握数据的逻辑结构、存储结构及其差异;实现各种基本操作。
软件工程》考试大纲一、课程性质与设置目的(-)主要参考书及题型1. 主要参考书《软件工程导论》(第五版),清华大学出版社,张海藩著2.题型及分数比例选择题 20%填空题 20%名词解释 15%论述题 45%(二)课程性质和特点软件工程是农业信息化专业的一门重要课程,主要讲述建造软件系统的方法、技术、流程、工具、规范等,本课程的任务是使应考者掌握软件工程的基本概念、基本原理、实用的开发方法和技术;了解软件工程各领域的发展动向;如何用工程化的方法开发软件项目,以及在开发过程中应遵循的流程、准则、标准和规范。
本课程是一门实践性很强的课程,它是各种软件开发经验的总结与提炼,应考者不但应注重概念、原理、方法、技术的掌握,也应注重方法、技术的实际应用。
(三)课程的基本要求1.从总体上了解软件工程的产生、软件生产发展史、软件生存周期、各种方法和生存周期模型、软件工程面临的问题。
2.系统掌握软件开发最基本的内容:可行性研究和软件计划、需求分析、概要设计、详细设计、编码、测试、维护,系统掌握这些阶段的目标、任务、特点、步骤和文档。
3.掌握增量模型的基本内容、基本思想、运行机制、开发过程和步骤。
4.掌握结构化方法的基本思想,开发过程和步骤,应遵循的原则和准则,能够应用相应的图形表示工具开发小型软件项目。
5.初步掌握面向对象方法的基本思想、基本概念、基本模型,面向对象分析、面向对象设计、面向对象实现的任务、内容和步骤,能够应用相应的图形工具。
6.了解Jackson方法的基本思想、开发过程和步骤、能够应用相应的图形表示工具。
7.了解软件工程的质量保证中的各种基本概念和方法,了解软件工程管理中的思想和方法,了解软件开发环境与工具。
要求切实掌握课程内容的基本思想、基本概念、基本方法,能够应用相应的图形表示工具进行小型项目的开发,特别是实用方法与技术的应用。
二、课程内容与考核目标第1章绪论第1节软件工程的产生1.软件的特点。
浙江农林大学硕士研究生入学考试《软件工程》复试考试大纲一、考试性质浙江农林大学硕士研究生入学《软件工程》考试是为招收计算机科学与技术一级学科硕士研究生而设置的具有选拔功能的水平考试。
它的主要目的是测试考生对软件工程原理、方法和技术的掌握程度和应用相关知识解决问题的能力。
二、考试的基本要求要求考生全面系统地掌握软件工程的基本概念、原理、方法和技术,熟悉软件开发各项活动的任务,了解软件项目组织和管理的方法,具有运用软件工程原理、方法和技术分析计算机应用需求、设计和实现软件系统的能力。
三、考试内容和考试要求(一)软件工程概论考试内容1.软件和软件工程的含义、软件工程的基本原理2.软件危机的原因、表现和消除途径3.软件生命周期各个阶段的基本任务4.软件生命周期模型考试要求1.理解软件和软件工程的含义、软件工程的基本原理2.理解产生软件危机的原因和消除软件危机的途径3.了解软件生命周期的含义,了解生命周期各个阶段的基本任务4.了解各种软件生命周期模型的优缺点和适用场合:瀑布模型、增量模型、快速原型模型、螺旋模型(二)可行性研究和需求分析考试内容1.可行性研究的任务2.数据流图和数据字典3.成本效益分析4.需求分析的任务5.实体联系图、状态转换图、层次方框图、IPO图考试要求1.了解可行性研究的任务2.了解需求分析的任务3.掌握可行性研究和需求分析的建模方法:数据流图、数据字典、实体联系图、状态转换图、层次方框图、IPO图4.掌握成本效益分析的方法(三)总体设计考试内容1.软件设计过程2.软件设计的基本原理和启发规则3.层次图和HIPO图4.面向数据流的设计方法考试要求1.了解软件设计过程2.理解软件设计的基本原理和启发规则3.掌握描绘软件结构的图形工具:层次图和HIPO图4.掌握面向数据流的设计方法(四)详细设计考试内容1.结构化程序的概念2.过程设计工具3.程序复杂度的度量考试要求1.掌握结构化程序的概念和基本控制结构2.掌握程序流程图、盒图、PAD图、判定表和判定树的使用3.掌握程序环形复杂度的计算方法(五)实现和测试考试内容1.软件测试的基本概念2.软件测试的步骤3.白盒测试和黑盒测试的概念和测试技术4.调试过程和调试途径5.软件可靠性的含义和估算方法考试要求1.理解软件测试的目标和准则2.了解软件测试各个步骤:单元测试、集成测试、系统测试,及其相应的测试重点3.了解确认测试、回归测试、Alpha测试、Beta测试的含义4.掌握集成测试中的集成策略:自顶向下、自底向上、深度优先、宽度优先5.理解白盒测试的含义6.掌握白盒测试技术,包括各种逻辑覆盖标准:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖、路径覆盖7.理解黑盒测试的含义8.掌握黑盒测试技术,包括等价类划分法和边界值分析法9.了解调试过程和调试途径10.理解软件可靠性的定义,掌握平均无故障时间的估算方法和程序错误数的估计方法(六)软件维护考试内容1.软件维护的定义和特点2.软件维护的一般过程3.软件可维护性的含义考试要求1.了解软件维护的定义和特点2.了解软件维护的一般过程3.了解软件可维护性的含义(七)面向对象分析和设计考试内容1.面向对象分析和设计的基本概念和方法2.用例模型、对象模型和动态模型的建立和完善考试要求1.理解和掌握面向对象分析和设计的基本概念:对象、类、属性、操作、接口、继承、多态性、重载(overload)和静态联编、重写(overwrite)和动态联编2.理解对象之间的关联、聚集、继承、泛化等关系3.掌握用例模型的建立方法,能够根据对系统需求的分析,用UML用例图表示系统的功能,对每一个用例用文字描述系统业务的正常流程和异常流程4.掌握对象模型的建立方法,能够用UML类图描述系统的对象及对象间的关系5.掌握用UML状态转换图、顺序图、活动图描述对象动态行为和交互的方法6.理解面向对象设计的准则和启发规则7.理解软件重用的含义8.掌握系统分解的方法9.理解面向对象设计中的委托机制(八)软件项目组织和管理考试内容1.软件规模和工作量估算2.软件项目进度计划3.软件配置管理考试要求1.了解软件规模估算方法:代码行技术、功能点技术2.了解工作量估算方法:静态单变量模型、动态多变量模型和COCOMO2模型(经验公式不要求记忆)3.掌握软件进度计划方法:Gantt图、工程网络4.掌握利用工程网络估算工程进度、关键路径和机动时间的方法5.了解软件配置项和基线的含义6.了解变化控制的一般过程四、主要参考书目1.软件工程导论(第6版),张海藩、牟永敏著,清华大学出版社, 2013年。
复旦大学博士生入学考试大纲软件工程一、软件工程概论1. 计算机软件,特点,分类,语言2. 软件工程定义,软件工程框架,软件生存周期3. 软件过程:ISO/IEC 12207软件生存周期过程,能力成熟度模型CMM ,能力成熟度模型集成CMMI4. 软件过程模型5. 敏捷软件开发6. CASE工具与环境二、系统工程1. 基于计算机的系统2. 系统工程的任务3. 可行性分析:经济可行性、技术可行性、法律可行性、方案的选择和折衷三、需求工程1. 需求工程概述2. 需求获取3. 需求分析、协商与建模4. 需求规约与验证5. 需求管理四、设计工程1. 软件设计工程概述2. 软件设计原则3. 软件体系结构设计4. 部件级设计技术5. 设计规约与设计评审五、结构化分析与设计1. 结构化分析方法概述2. 数据流图3. 数据字典4. 描述基本加工的小说明5. 结构化设计概述6. 数据流图到软件体系结构的映射7. 初始结构图的改进六、面向对象的分析和设计1. 面向对象的基本概念2. 面向对象分析和设计过程3. UML,UML视图,UML图4. 用况建模5. 静态建模6. 动态建模7. 物理体系结构建模七、基于构件的软件开发1. 基于构件的软件开发概述2. 建造可复用构件3. 应用系统工程4. 构件的管理八、软件测试1. 软件测试基础2. 白盒测试3. 黑盒测试4. 测试策略5. 面向对象测试6. 测试完成标准7. 调试九、Web工程1. 基于Web系统和应用的属性2. Web 工程过程3. Web 分析4. Web设计5. Web测试6. 新型界面风格、特点,如:Apple I*的界面风格及Adriod的界面风格十、软件维护与再工程1. 软件维护2. 再工程技术十一、软件项目管理1. 软件项目管理概述2. 软件度量3. 软件项目估算4. 项目进度管理5. 风险管理6. 软件项目的组织7. 软件质量管理8. 软件配置管理参考书:《软件工程(第2版)》钱乐秋,赵文耘,牛军钰编著,清华大学出版社,2013年。
四川工业科技学院《软件工程与项目管理》课程考试大纲一、课程类型:专业基础课二、课程总学时:8三、考试对象:(年级、专业、层次)年级:18级专业:软件工程层次:本科四、本课程的性质及任务:课程性质:本课程是一门专业基础理论课程,重在培养学生按工程化、标准化、规范化方法从事软件设计与研发的课程,对学生毕业后从事软件和网站开发岗位相关工作有重要意义。
课程定位:通过本课程的学习可以使学生掌握软件项目开发、使用和维护的工程化方法,减少因人为因素出现的软件危机,从而提高软件的生命周期。
本课程主要任务是培养学生在软件设计过程中撰写各种规格说明书,这样也利于学生写作能力和撰写毕业论文能力的提高。
五、考试知识点及要求:第一章软件工程概述(1学时)授课内容:①软件危机的产生、典型表现形式、产生的原因及消除的途径;②软件工程的基本原理、包括软件工程的定义、特性、方法学;③软件生授课目标与要求:通过本章的学习,了解和掌握软件工程的基本概念(如软件和软件工程的定义、等),软件危机的表现形式、产生的原因及消除的途径,软件工程的基本原理、方法学,软件的生存期。
掌握软件过程活动和过程模型,了解CASE。
授课的重点与难点:重点:软件工程的基本原理。
软件过程模型。
难点:软件危机的产生、典型表现形式,软件过程模型。
授课的演示与练习:演示:课堂讲授、多媒体演示、举例分析、课堂讨论练习:课后习题适当,由任课教师出些题目。
授课的建议:建议老师举例说明。
第二章项目分析与规划(1学时)授课内容:①可行性研究的任务、具体步骤、成本效益分析、可行性研究报告;②系统流程图;③系统框架图。
教学要求:深刻理解可行性研究的必要性,掌握可行性研究的任务、过程、成本效益分析以及可行性研究报告的主要内容;掌握系统流程图、系统框架图的基本内容。
授课的重点与难点:系统流程图、系统框架图难点:成本效益分析、可行性研究报告授课的演示与练习:演示:课堂讲授、实例分析、演示法练习:课后习题适当,由任课教师出些题目。
四、考试范围及要求(一)软件工程概论1.软件工程的概念。
2.软件工程的基本原理。
3.软件的生命周期。
4. 可行性研究过程。
5. 系统流程图的符号及表示。
6. 数据流图的符号及表示。
7. 需求分析的任务。
8. 总体设计的过程,描绘软件结构的图形工具。
9. 程序流程图的表示。
10. 编码及其风格。
11. 软件测试的目标、准则、方法与步骤。
12. 软件维护的定义、特点及过程。
13. 面向对象分析的基本过程14. 面向对象设计的准则。
(二)C语言基础1.基本知识:C语言的组成、C语言的特点、C语言的编译过程;算法的概念和特性;结构化程序设计相关概念;各种数据类型的常量和变量表示;运算符的使用和表达式的计算;输入与输出函数的使用。
2.C程序三种流程设计:顺序结构、选择型程序设计(包括if语句及其嵌套和switch语句);循环型程序设计(包括while语句、do-while语句和for语句);复合语句的使用;辅助控制语句(包括break语句和continue语句)。
3.数组:一维数组的定义和使用;二维数组的定义和使用;字符数组和字符串;常用字符串处理函数的使用。
4.函数:常用库函数的正确调用;函数的定义;函数参数传递和返回值的含义;函数的调用;函数的嵌套调用和递归调用;数组作为函数参数;局部变量和全局变量;变量的存储类别(自动,静态,寄存器,外部);变量的作用域和生存期。
5.编译预处理命令:不带参宏定义和带参宏定义的使用;“文件包含”的处理。
6.指针:指针与指针变量的概念,指针与地址运算符;指针与数组、字符串和函数的配合使用。
7.结构体:结构体数据的定义和使用;结构体数组的使用;利用指针操作结构体的方法(链表的基本操作)。
(三)多媒体应用基础1.基本知识:多媒体技术的基本概念、特性和典型应用;多媒体计算机系统的层次结构、软硬件要求和基本设备。
2.多媒体输入/输出技术:常用媒体播放器暴风影音的使用;色彩、数字图像的基本概念;数字图像的基本格式与获取方式;声音及数字视频的基本概念;声音的数字化与声音文件的格式;视频的基本格式。
海南大学硕士研究生入学考试《835软件工程原理方法与应用》考试大纲一、考试性质海南大学硕士研究生入学考试初试科目。
二、考试时间180分钟。
三、考试方式与分值闭卷、笔试。
满分150分。
四、考试内容第一部分软件工程的基本概念第1章绪论软件与软件危机,软件工程,软件开发生命周期,模型,方法,技术,工具,过程,软件工程原理,软件工程环境,软件工程管理,软件开发风险,软件需求,软件设计,软件工具,自顶向下,分解,抽象,细化,模块,模块化,软件复审,软件测试等。
第二部分传统(结构化)软件工程第2章软件生存期与软件过程2.1软件生存周期2.2传统的软件过程2.3软件演化模型2.4形式化方法模型2.5软件可行性研究第3章结构化分析与设计3.1概述(结构化分析的工具与模型组成)3.2结构化系统分析(需求分析的任务、步骤,DFD过程模型)3.3结构化系统设计(软件设计的任务,数据存储的设计,人机交互的设计)3.4模块化设计第二部分面向对象软件工程第4章面向对象与UML4.1面向对象概述4.2UML简介4.3静态建模4.4动态建模4.5物理架构建模4.6UML工具(Rational Rose)第5章需求工程与需求分析*5.1软件需求工程5.2需求分析与建模5.3需求获取的常用方法5.4需求模型5.5软件需求描述5.6需求管理5.7需求建模示例第6章面向对象分析6.1软件分析概述6.2面向对象分析建模6.3面向对象分析示例第7章面向对象设计7.1软件设计概述7.2面向对象设计建模7.3系统架构设计7.4系统元素设计7.5面向对象设计示例第8章编码与测试8.1编码概述8.2编码语言与编码工具8.3编码示例8.4测试的基本概念8.5黑盒测试和白盒测试8.6测试用例设计8.7多模块程序的测试策略8.8面向对象系统的测试第9章软件维护9.1软件维护的种类9.2软件可维护性9.3软件维护的实施9.4软件维护的管理9.5软件配置管理第10章软件复用软件复用的基本概念第11章软件工程管理11.1软件管理的目的和内容11.2项目进度安排第12章软件质量管理软件质量保证、质量认证、可靠性的概念,CMM基本概念,软件质量标准体系。
职业技能鉴定iOS软件工程师考核大纲考试目的本考核旨在评估考生在iOS软件工程师领域的职业能力和技术水平,包括但不限于iOS平台开发知识、编程语言、数据结构和算法、操作系统、网络协议等方面。
考试范围1.iOS平台开发知识–iOS系统架构–iOS应用程序结构–iOS应用程序开发工具–iOS模拟器–iOS调试工具–Xcode集成开发环境(IDE)–排除故障的问题2.编程语言–Objective-C编程语言介绍–Swift编程语言介绍–Objective-C和Swift编程语言的比较–Objective-C和Swift应用程序的相互调用–Objective-C和Swift新功能介绍3.数据结构和算法–基本数据结构–高级数据结构–算法的基本概念–常见算法介绍4.操作系统–操作系统介绍–iOS的操作系统核心–iOS系统架构–iOS应用程序和操作系统的交互5.网络协议–TCP/IP协议–HTTP协议–HTTP和HTTPS协议的比较–使用NSURLSession发起网络请求–网络请求常用的传输格式考试形式本考核采用计算机考试方式,考试时间为3个小时,共计100道题,每道题目为单选或多选题,考试通过标准为60分。
考试内容iOS平台开发知识1.以下哪个开发工具是iOS原生开发工具?A. EclipseB. Android StudioC. Visual StudioD. Xcode2.以下关于iOS模拟器的描述,哪一个是错误的?A. 模拟器可以模拟不同型号、不同尺寸的iOS设备B. 模拟器可以模拟iOS设备的不同版本的操作系统C. 模拟器上的应用程序和真实设备上的应用程序是一模一样的D. 模拟器上的应用程序的性能和真实设备上的应用程序的性能相同3.以下哪项不是iOS开发中的调试工具?A. gdbB. Xcode自带的调试器C. InstrumentsD. Clang静态分析器4.下面哪个工具可以让开发者预处理编译后的源代码,使其更加容易理解和调试?A. gdbB. Clang静态分析器C. InstrumentsD. Preprocessor编程语言1.在Objective-C中,以下哪个是类的定义方式?A. @interfaceB. @classC. @implementationD. @property2.在Swift中,以下哪个是结构体的定义方式?A. structB. classC. enumD. protocol3.Objective-C和Swift的应用程序都可以在同一个项目中混编。
软件工程基础综合考试大纲在软件工程领域中,考试是对学生知识和技能的综合评估。
为了确保考生能够全面理解和掌握软件工程的基础知识,制定一份完善的考试大纲是必要的。
本文将基于软件工程基础综合考试的要求,给出一份满足题目要求的大纲。
一、导论1. 软件工程的定义和概念2. 软件工程的发展历程3. 软件工程的重要性和应用领域二、软件生命周期1. 软件生命周期模型的概念和种类2. 软件需求分析和规格说明3. 软件设计与实现4. 软件测试与验证5. 软件部署与维护三、软件需求工程1. 需求获取的方法和技术2. 需求分析和规划3. 需求验证和验证技术4. 需求管理和变更控制四、软件设计与实现1. 结构化设计方法和技术2. 面向对象设计方法和技术3. 设计模式的应用4. 软件构建与实现技术5. 编码规范与软件质量保证五、软件测试与验证1. 软件测试的基本概念和目标2. 软件测试策略和方法3. 黑盒测试与白盒测试4. 静态测试与动态测试5. 测试工具和测试自动化六、软件项目管理1. 软件项目管理的概念和原则2. 软件项目的规划与组织3. 项目进度与资源管理4. 风险管理和质量管理5. 软件项目的评估与改进七、软件配置管理1. 软件配置管理的定义和目标2. 配置项管理和版本控制3. 配置管理工具与技术4. 变更管理和配置审计八、软件工程伦理和职业道德1. 软件工程师的职业道德规范2. 软件工程中的伦理问题3. 软件工程实践中的道德问题4. 遵守知识产权和版权法律制度综上所述,软件工程基础综合考试大纲是一份对软件工程基础知识进行综合评估的重要文件。
通过合理的分章节设置和详细的考察内容,能够确保考生全面掌握软件工程的核心概念、基本流程以及相关的职业道德与伦理要求。
希望这份大纲能对考生们备考软件工程基础综合考试有所帮助。
《软件工程》考试大纲一、考试说明考试对象:计算机科学与技术专业命题原则:(1)在教学大纲和考试大纲所规定的知识点范围内命题。
(2)试题的考察要求覆盖面广、区分度高。
(3)试题兼顾各个能力层次,难易程度和题量适当,按难易程度分为四个层次:容易占40%,较易占40%,较难占10%,难占10%。
试题题型:《软件工程》试题总分为100分,选择题占20分,简答题占20分,论述题占20分、设计题占40分。
选择题:给出有关软件工程概念、原理、方法的不完整叙述,要求考生从题后给出的四个选项中选择合适的一种答案,补充完整。
简答题:可包括重要概念的解释、数据流图的绘制。
论述题:可包括重要概念的解释、数据流图的绘制。
设计题:可包括绘流程图、写算法设计思想、定义相应数据结构、用高级语言书写程序。
二、考试范围重点考察学生对软件工程有关概念的理解以及软件工程有关的原理方法。
按照教学大纲的要求,具体考核要求分为掌握、理解和了解三个层次:掌握:要求学生能够全面、深入理解和熟练应用的内容,是重点考试内容。
理解:要求学生能够较好地理解所学内容,并且能够进行简单分析和判断。
了解:对要求了解的内容,在考试中占较小比例,不超过5%。
1、绪论[考核的知识点和要求]掌握:学习软件工程的意义,面向对象软件工程和传统软件工程的比较;各种软件开发模型的内容,不同开发模型的特点比较;理解:软件的定义、软件的分类,软件危机、软件工程学的范畴;软件过程中瀑布模型、快速原型模型、螺旋模型的特点。
3、软件需求分析[考核的知识点和要求]理解:可行性研究任务(目的)及涉及的内容,需求分析的任务,需求分析的方法及主要方法(面向数据流分析)的具体步骤,需求分析的任务、步骤。
掌握:数据流图(掌握顶层数据流图的绘制),细化DFD的原则,数据词典的定义及表述符号,其他分析工具。
4、软件设计概述[考核的知识点和要求]掌握:软件设计的任务、基本概念,模块化设计,设计文档,模块与构件,抽象与细化,信息隐藏;高内聚低耦合。
理解:软件设计的一般概念。
5、传统的设计方法[考核的知识点和要求]理解:面向数据流设计的结构化设计方法(包括结构设计和过程设计);程序流程图、盒图(N-S图)绘制及三种结构(顺序、选择、循环),判定表(理解);掌握:结构化设计模型,结构化设计方法;程序流程图、盒图(N-S图)、判定表的绘制6、面向对象的设计方法[考核的知识点和要求]掌握:模型对象设计模型,系统设计,对象设计;理解:领域对象设计,面向对象设计的任务和设计模型7、UML[考核的知识点和要求]掌握:UML中的视图与图;理解:统一建模语言UML的组成、特点和应用;如何进行静态建模、动态建模和物理架构建模。
8、编码和语言选择[考核的知识点和要求]掌握:用户界面设计的原则;编码的风格,编码语言的选择;注释及其分类。
了解:常见的编码语言和编码语言的选择。
9、软件测试[考核的知识点和要求]掌握:黑盒测试,白盒测试,测试用例设计;理解:测试的基本概念,常用的纠错技术。
10、软件维护[考核的知识点和要求]理解:软件维护的种类,软件可维护性的属性;掌握:软件维护。
三、考试方式出勤、作业、实验演示:利用软件工程的思想做一个实用小型软件,可个人为一组或若干同学合作,占总成绩的30%。
期末理论考试:闭卷,120分钟,占总成绩的70%。
如果出勤率不及格,将没有考试资格。
大纲编写修改时间:2008年5月22日考试大纲编写教师:任传成考试大纲审核:王文博第二部分试题类型及解答一、选择题1螺旋模式的组成包括下列()。
(A)需求定义 (B)风险分析 (C)工程实现 (D)评审1.“软件危机”产生的主要原因是( )。
A.软件日益庞大B.开发方法不当C.开发人员编写程序能力差D.没有维护好软件所谓基准配置是指( )。
A.计算机系统的软硬件配置B.计算机系统的硬件配置C.软件开发标准D.阶段评审后的软件配置成分在需求分析之前有必要进行( )工作。
A.程序设计B.可行性分析C.ER分析D.3NF分析一个只有顺序结构的程序,其环形复杂度是( )A.0B.1C.3D.不确定的自底向上进行集成测试的优点是不必额外设计( )程序。
A.子B.被调用C.存根D.驱动使用软件时提出增加新功能就必须进行( )维护。
A.改正性B.适应性C.完善性D.预防性维护过程本质上是( )的过程。
A.修改程序B.修改文档C.修改软件配置D.压缩的修改软件定义和开发要设计一个商业单位信息管理系统,首选的程序设计(高级)语言应该是。
下面是一个模块的伪码描述:begins1;if cthen s2else s3;s4;end使用McCabe方法,先画出其程序图,在计算其环形复杂度。
2 需求分析的工作有那些?(A)调查研究 (B)确定需求 (C)建立模型 (D)需求描述 (E)需求分析复审。
3要如何进行调查研究,以便得到需求分析的资料?(A)了解整体系统、(B)市场调查、(C)访问使用者、(D)考察现场。
4结构化分析使用那些道具来描述软件的行为?(A)数据流程图(Data Flow Diagram,简称为DFD) (B)数据字典(Data Dictionary简称为DD) (C)处理描述(Process Description)。
5数据流程图有那些要素?(A)加工(Process) (B)数据流(Data Flow) (C)数据储存(Data Store) (D)数据流(Data Source and Sink) 6软件的除错方法有那些?(A)凭着蛮力、(B)回溯、以及(C)原因排除。
7软件维护有那几个种类?A Corrective Maintenance (B) Adaptive Maintenance (C) Perfective Maintenance在面向对象的开发中,类与类之间的存在着关联、聚集和等关系。
有关计算机程序功能、设计、编制、使用的文字或图形资料称为()A. 软件B. 文档C.程序D. 数据10. ( )是计算机程序及其说明程序的各种文档。
A.软件B.文档C.数据D.程序下列不是软件工程三要素的()A.方法B.工具C.过程D.技术结构化分析方法使用的描述工具( )定义了数据流图中每一个图形元素。
A 数据流图 B数据字典 C 判定表 D 判定树在结构化分析方法中,用以表达系统内部数据的运行情况的工具有( )。
A 数据流图B 数据字典C 结构化英语D 判定树与判定表在结构化分析方法(SA)中,与数据流图配合使用的是(A 网络图 B实体联系图 C数据字典 D 程序流程图分层DFD是一种比较严格又易于理解的描述方式,它的顶层图描述了系统的( )A 细节 B输入与输出 C软件的作者 D绘制的时间数据字典中,一般不包括下列选项中的( )条目。
A数据流 B数据存储 C加工 D源点与终点.在软件需求分析中,开发人员要从用户那里解决的最重要的问题是( )A要让软件做什么 B要给该软件提供哪些信息C要求软件工作效率怎样 D要让软件具有何种结构SA方法的分析步骤是首先调查了解当前系统的工作流程,然后( )。
A获得当前系统的物理模型,抽象出当前系统的逻辑模型,建立目标系统的逻辑模型B获得当前系统的物理模型,抽象出目标系统的逻辑模型,建立目标系统的物理模型C获得当前系统的逻辑模型,建立当前系统的物理模型,抽象出目标系统的逻辑模型D获得当前系统的逻辑模型,建立当前系统的物理模型,建立目标系统的物理模型需求分析阶段不适于描述加工逻辑的工具是( )。
A 结构化语言 B判定表 C判定树 D流程图结构化分析方法(SA)最为常见的图形工具是( )。
A程序流程图 B实体联系图 C 数据流图 D结构图SA方法的基本思想是( )。
A自底向上逐步抽象 B自底向上逐步分解C自顶向下逐步分解 D自顶向下逐步抽象好的软件结构应该是( )A 高耦合、高内聚B 低耦合、高内聚C 高耦合、低内聚D 低耦合、低内聚程序内部的各个部分之间存在的联系,用结构图表达时,最关心的是模块的内聚性和( )。
A 独立性B 有效性C 耦合性D 安全性程序内部的各个部分之间存在的联系,用结构图表达时,最关心的是模块的( )和耦合性。
A一致性 B 作用域C 嵌套限制D 内聚性软件设计中划分通常遵循的原则是要使模块间的耦合性尽可能( )A强 B弱 C较强 D适中Jackson suggested the data structure oriented software design method,Which of the following structure can be introduced by using input/output data structure( ).A algorithm structureB procedure structureC code structureD program structure在面向数据流的软件设计方法中,一般将信息流分为( )。
A 变换流和事务流B 变换流和控制流C 事务流和控制流D 数据流和控制流在多层次的结构图中,其模块的层次数称为结构图的( )。
A深度 B跨度 C控制域 D粒度( )着重反映的是模块间的隶属关系,即模块间的调用关系和层次关系。
A程序流程图 B数据流图 CE-R图 D结构图在软件开发过程中,以下说法正确的是( )A 程序流程图是逐步求精的好工具,B NS图不可能任意转移控制,符合结构化原则C 判定表是一种通用的设计工具D 程序流程图和NS图都不易表达模块的层次结构( )工具在软件详细设计过程中不采用。
A 判定表 B. IPO图C. PDL D. DFD图结构化程序设计的一种基本方法是( )。
A 筛选法 B.递归法C 迭代法D 逐步求精法对象是面向对象开发方法的基本成分,每个对象可用它本身的一组( )和它可以执行的一组操作来定义。
A服务 B.参数C属性 D.调用汽车有一个发动机,汽车与发动机之间的关系是( )关系。
A 一般与具体 B.整体与部分C 分类关系 D. is a火车是一种陆上交通工具,火车和陆上交通工具之间的关系是( )关系。
A 组装 B.整体与部分C hasa D.一般与具体在编制程序时,应采纳的原则之一是( )。
A 不限制goto语句的使用 R 减少或取消注释行C 程序越短越好D 程序结构应有助于读者理解源程序文档化要求在每个模块之前加序言性注释。
该注释内容不应有( )。
A. 模块的功能 B.语句的功能C模块的接 D.开发历史Which of the followings tatements testing software with data is (are)true?( )①The primary purpose of such testing is to find errors②Such testing can demonstrate the existence of errors but cannot demonstrate the Absence of errorsA .Neither B.①Only C②Only D.Both从下列叙述中选出能够与软件开发需求分析、设计、编码相对应的软件测试( )。