东北大学软件工程复试资料大全资料讲解.docx
《东北大学软件工程复试资料大全资料讲解.docx》由会员分享,可在线阅读,更多相关《东北大学软件工程复试资料大全资料讲解.docx(32页珍藏版)》请在冰豆网上搜索。
东北大学软件工程复试资料大全资料讲解
第一部分选择题
一、单项选择题每小题1分,共20分。
(在每小题的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内)
1.在下列工具与环境中()属于较早期的CASE。
A.基于信息工程CASEB.人工智能CASE
C.结构的基于图形CASED.集成的CASE环境
2.Putnam成本估算模型是一个()模型。
A.静态单变量B.动态单变量C.静态多变量D.动态多变量
3.在McCall软件质量度量模型中,()属于面向软件产品修改。
A.可靠性B.可重用性C.适应性D.可移植性
4.ISO的软件质量评价模型由3层组成,其中用于评价设计质量的准则是()
A.SQICB.SQMCC.SQRCD.SQDC
5.软件复杂性度量的参数包括()
A.效率B.规模C.完整性D.容错性
6.对象实现了数据和操作的结合,使数据和操作()于对象的统一体中。
A.结合B.隐藏C.封装D.抽象
7.软件调试技术包括()
A.边界值分析B.演绎法C.循环覆盖D.集成测试
8.瀑布模型的存在问题是()
A.用户容易参与开发B.缺乏灵活性C.用户与开发者易沟通D.适用可变需求
9.软件测试方法中的静态测试方法之一为()
A.计算机辅助静态分析B.黑盒法C.路径覆盖D.边界值分析
10.软件生命周期中所花费用最多的阶段是()
A.详细设计B.软件编码C.软件测试D.软件维护
11.第一个体现结构化编程思想的程序设计语言是()
A.FORTRAN语言B.Pascal语言C.C语言 D.PL/1语言
12.程序的三种基本控制结构是()
A.过程、子程序和分程序B.顺序、选择和重复C.递归、堆栈和队列D.调用、返回和转移
13.在详细设计阶段,经常采用的工具有()
A.PADB.SAC.SCD.DFD
14.详细设计的结果基本决定了最终程序的()
A.代码的规模B.运行速度C.质量D.可维护性
15.需求分析中开发人员要从用户那里了解()
A.软件做什么B.用户使用界面C.输入的信息D.软件的规模
16.结构化程序设计主要强调的是()
A. 程序的规模B. 程序的效率C. 程序设计语言的先进性D. 程序易读性
17.IDEF。
图反映系统()
A.怎么做B.对谁做C.何时做D.做什么
18.经济可行性研究的范围包括()
A.资源有效性B.管理制度C.效益分析D.开发风险
19.可行性分析是在系统开发的早期所做的一项重要的论证工作,它是决定该系统是否开发的决策依据,因必须给出()的回答。
A.确定B.行或不行C.正确D.无二义
20.需求分析阶段的任务是确定()
A. 软件开发方法B. 软件开发工具C. 软件开发费D. 软件系统的功能
二、填空题(每空2分,共20分)。
21.在软件开发过程中要产生大量的信息,要进行大量的修改,软件配置管理能协调软件开发,并使混乱减到最低程度。
22.规定功能的软件,在一定程度上对自身错误的作用(软件错误)具有屏蔽能力,则称此软件具有容错功能的软件。
23.McCall提出的软件质量模型包括11个软件质量特性。
24.软件可维护性度量的七个质量特性是可理解性、可测试性、可修改性、可靠性、可移植性、可使用性和效率。
25.为了便于对照检查,测试用例应由输入数据和预期的输出结果两部分组成。
26.程序设计语言的心理特性主要表现在歧义性、简洁性、传统性、局部性和顺序性。
27.软件结构是以模块为基础而组成的一种控制层次结构。
28.在结构化分析中,用于描述加工逻辑的主要工具有三种,即:
结构化语言、判定表、
判定树。
29.结构化语言是介于自然语言和形式语言之间的一种半形式语言。
30.若年利率为i,不计复利,n年后可得钱数为F,则现在的价值P=F/(1+(n*i)。
三、名词解释题每小题3分,共15分。
31.软件生存周期模型
描述软件开发过程中各种活动如何执行的模型
32.数据字典(DD)
数据字典是用来定义数据流图中的各个成分的具体含义的。
它以一种准确的、无二义性的说明方式为系统的分析、设计及维护提供了有关元素的一致的定义和详细的描述。
33.内聚性
内聚性是模块独立性的衡量标准之一,它是指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量
34.JSP方法
JSP方法是面向数据结构的设计方法,其定义了一组以数据结构为指导的映射过程,它根据输入,输出的数据结构,按一定的规则映射成软件的过程描述,即程序结构。
35.多态性
指相同的操作或函数、过程可作用于多种类型的对象上并获得不同结果。
或(不同的对象,收到同一消息可以产生不同的结果。
)
四、简答题每小题5分,共20分。
36.简述容错技术的四种主要手段,并解释。
结构冗余:
包括静态冗余、动态冗余和混合冗余。
信息冗余:
为检测或纠正信息在运算或传输中的错误,须外加一部分信息。
时间冗余:
指重复执行指令或程序来消除瞬时错误带来的影响。
冗余附加技术:
指为实现上述冗余技术所需的资源和技术。
37.以G.J.Myers的观点,简述对软件测试的目的。
软件测试是
(1)为了发现错误而执行程序的过程;
(2)一个好的用例能够发现至今尚未发现的错误的测试。
(3)一个成功的测试是发现至今尚未发现的错误的测试。
38.就程序设计语言的工程特性而言,对程序编码有哪些要求?
就程序设计语言的工程特性而言,对程序编码有如下要求:
(1)可移植性
(2)开发工具的可利用性(3)软件的可重用性(4)可维护性
39.模块的内聚性包括哪些类型?
模块的内聚性包括:
(1)偶然内聚
(2)逻辑内聚(3)时间内聚(4)通信内聚(5)顺序内聚(6)功能内聚
五、应用题第40小题7分,第41小题8分,第42小题10分,共25分。
41.根据下列条件使用等价划分法设计测试用例。
某一8位微机,其十六进制常数定义为:
以0x或0X开头的数是十六进制整数,其值的范围是-7f~7f(表示十六进制的大小写字母不加区别),如0X13,0X6A,-0X3c。
解答:
等价划分法①划分等价类并编号,如下表所示。
十六进制整型常量输入条件的等价类表
输入数据
合理等价类
不合理等价类
十六进制整数
1. 0x或0X开头1~2位数字串
2. 以-0x打头的1~2位数字串
3. 非0x或非-打头的串
4. 含有非数字且(a,b,c,d,e,f)以外字符
5. 多于5个字符
6. -后跟非0的多位串
7. -0后跟数字串
8. -后多于3个数字
十六进制数范围
9.在-7f~7f之间
10.小于-7f
11.大于7f
②为合理等价类设计测试用例,表中有三个合理等价类,设计两个例子
测试数据
期望结果
覆盖范围
0×23
显示有效输入
1,9
-0×15
显示有效输入
2,9
③为每个不合理等价类至少设计一个测试用例
测试数据
期望结果
覆盖范围
2
显示无效输入
3
G12
显示无效输入
4
123311
显示无效输入
5
-1012
显示无效输入
6
-011
显示无效输入
7
-0134
显示无效输入
8
-0x777
显示无效输入
10
0x87
显示无效输入
11
一、单项选择题(本大题共20小题,每小题1分,共20分)
在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.软件工程管理的具体内容不包括对_________管理。
( )
A.开发人员B.组织机构C.控制D.设备
2.在McCall软件质量度量模型中,_________属于面向软件产品操作。
( )
A.正确性B.可维护性 C.适应性D.互操作性
3.在快速原型模型的开发过程中,用原型过程来代替全部开发阶段所用模型是_________模型。
( )
A.探索型原型B.演化型原型C.实验型原型D.增量型原型
4.维护中因删除一个标识符而引起的错识是_________副作用。
( )
A.文档B.数据 C.编码D.设计
5.软件维护的困难主要原因是( )
A.费用低B.人员少C.开发方法的缺陷D.维护难
6.用白盒法技术设计测试用例的方法包括( )
A.错误推测B.因果图C.基本路径测试D.边界值分析
7.软件测试中根据测试用例设计的方法的不同可分为黑盒测试和白盒测试两种,它们( )
A.前者属于静态测试,后者属于动态测试
B.前者属于动态测试,后者属于静态测试
C.都属于静态测试D.都属于动态测试
8.程序设计语言的心理特性在语言中表现不应包括( )
A.歧义性B.简洁性C.保密性D.传统性
9.程序的三种基本控制结构的共同特点是( )
A.只能用来描述简单程序B.不能嵌套使用
C.单入口,单出口D.仅用于自动控制系统
10.JSP方法是一种面向_________的设计方法。
( )
A.控制结构B.对象 C.数据流D.数据结构
11.当一个模块直接使用另一个模块的内部数据,这种模块之间的耦合为( )
A.数据耦合B.公共耦合C.标记耦合D.内容耦合
12.软件设计的方法有多种,_________方法不属于面向数据流的设计方法。
( )
A.基于Jackson图的设计B.基于IDEF0图的设计
C.交换分析设计D.事务分析设计
13.为高质量地开发软件项目,在软件结构设计时,必须遵循_________原则。
( )
A.信息隐蔽B.质量控制C.程序优化D.数据共享
14.设在一个模块内有2个判定,若受其中一个判定影响到的模块集合为A,而受另一个判定影响
到的模块集合为B,则该模块的作用范围是( )
A.B. C.()—()D.()()
15.数据流图(DFD)是_________方法中用于表示系统的逻辑模型的一种图形工具。
( )
A.SAB.SDC.SPD.SC
16.螺旋模型是一种将瀑布模型和_________结合起来的软件开发模型。
( )
A.增量模型B.专家系统 C.喷泉模型D.变换模型
17.需求规格说明书的作用不包括( )
A.软件验收的依据
B.用户与开发人员对软件要做什么的共同理解
C.软件可行性研究的依据D.软件设计的依据
18.数据字典是用来定义_________中的各个成份的具体含义的。
( )
A.流程图B.功能结构图 C.系统结构图D.数据流图
19.设年利率为i,现存入p元,不计复利,n年后可得钱数为( )
A.p﹡(1+i﹡n)B.p﹡(i+1)nC.p﹡(1+i)﹡nD.p﹡(i+n)
20.在软件生产的程序系统时代由于软件规模扩大和软件复杂性提高等原因导致了( )
A.软件危机B.软件工程C.程序设计革命D.结构化程序设计
二、填空题(本大题共10小题,每空2分,共20分)
请在每小题的空格中填上正确答案。
错填、不填均无分。
21.第二代CASE工具的特点是支持图形表示的____________。
如数据流图与结构图。
22.在面向对象方法中,对象实现了数据和操作的结合,使数据和操作________于对象的统一体中。
23.面向对象分析的目的是对客观世界的系统进行__________________。
24.软件维护工作的生产性活动包括分析评价、修改设计和__________________等。
25.为了使应用软件适应计算机环境的变化而__________________的过程称为适应性维护。
26.一个进行学生成绩统计的模块其功能是先对学生的成绩进行累加,然后求平均值,则该模块的内聚性是__________________。
27.基于IDEF0图的设计是以系统的功能模型和__________________为基础设计系统的软件结构。
28.软件结构图的宽度是指一层中__________________的模块个数。
29.投资回收期就是使累计的经济效益等于__________________所需的时间。
30.软件生存周期是指一个软件从提出开发要求开始直到__________________为止的整个时期。
三、词语解释题(本大题共5小题,每小题3分,共15分)
31.增量开发
32.渐增式测试
33.详细设计
34.模块的控制范围
35.父图与子图的平衡
四、简答题(本大题共4小题,每小题5分,共20分)
36.何谓软件开发方法?
请列举四种主要方法。
37.从开发者角度进行程序质量的评审时,软件的结构包括哪些主要内容?
38.说明软件文档的作用。
39.简述详细设计的基本任务。
五、综合应用题(第一小题7分,第二小题8分,第三小题10分,共25分)
40.试利用McCabe的程序复杂性计算方法计算如下程序图的复杂性。
41.根据下列条件使用边界值分析法设计测试用例。
某一8位微机,其八进制常数定义为:
以零开头的数是八进制整数,其值的范围是-177~177。
如 05,0127,-065
42.工资计算系统中的一个子系统有如下功能:
(1)计算扣除部分—由基本工资计算出应扣除(比如水电费、缺勤)的部分;
(2)计算奖金部分—根据职工的出勤情况计算出奖励金;
(3)计算工资总额部分—根据输入的扣除额及奖金计算出总额;
(4)计算税金部分—由工资总额中计算出应扣除各种税金;
(5)生成工资表—根据计算总额部分和计算税金部分传递来的有关职工工资的详细信息生成工资表。
试根据要求画出该问题的数据流程图,并把其转换为软件结构图。
全国2008年10月高等教育自学考试
软件工程试题
一、单项选择题(本大题共20小题,每小题1分,共20分)
在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.“软件工程的概念是为解决软件危机而提出的”这句话的意思是()
A.强调软件工程成功解决了软件危机的问题
B.说明软件危机的存在总是使软件开发不像传统工程项目那样容易管理
C.说明软件工程这门学科的形成是软件发展的需要
D.说明软件工程的概念,即:
工程的原则、思想、方法可解决当时软件开发和维护存在的问题
2.瀑布模型的主要特点是()
A.将开发过程严格地划分为一系列有序的活动B.将开发过程分解为阶段
C.提供了有效的管理模式D.缺乏灵活性
3.在软件工程的需求分析阶段,不属于问题识别内容的是()
A.功能需求B.性能需求 C.环境需求D.输入/输出需求
4.画某系统的数据流图时,顶层图有()
A.0张B.1张 C.2张D.3张及其以上
5.软件模块内聚性最强的是()
A.功能内聚B.通信内聚C.偶然内聚D.逻辑内聚
6.最早提出软件系统维护问题的阶段是()
A.可行性分析B.需求分析C.概要设计D.详细设计
7.SD(结构化设计)方法设计的结果是()
A.模块B.模块结构图 C.模块的算法D.数据流图
8.在进行软件测试时,首先应当进行以下哪项测试,然后再进行组装测试,最后再进行有效性测试()
A.单元测试B.系统测试 C.集成测试D.确认测试
9.软件详细设计阶段的任务是()
A.算法与数据结构设计B.功能设计C.调用关系设计D.输入/输出设计
10.下列属于静态测试方法的是()
A.黑盒法B.路径覆盖C.白盒法D.人工检测
11.Fortran语言主要作为以下哪个方面的语言()
A.科学工程计算B.系统软件C.事务处理D.人工智能
12.用结构化语言来描述加工逻辑的外层结构时,以下不属于基本结构的是()
A.顺序结构B.选择结构C.嵌套结构D.重复结构
l3.可维护软件的主要特性包括()
A.可理解性、可修改性、可移植性 B.可使用性
C.可维护性、可使用性、可靠性D.可测试性
14.程序设计语言不具有的特性是()
A.心理特性B.工程特性C.应用特性D.技术特性
15.下列不属于项目进度安排主要方法的是()
A.工程网络图B.Gantt图C.进度结构图D.任务资源表
16.下列不属于通常冗余技术的是()
A.结构冗余B.信息冗余 C.时间冗余D.代码冗余
17.下列工具中,属于需求追踪工具的是()
A.在DBMS上的应用运行工具B.追踪和状态报告 C.访问和版本控制机构D.文件和修改管理
18.关于软件测试的目的,下面观点错误的是()
A.为了发现错误而执行程序的过程 B.一个好的测试用例能够发现至今尚未发现的错误
C.证明程序是正确、没有错误的D.一个成功的测试用例是发现了至今尚未发现的错误的测试
19.在制定项目开发计划文档时,不包含的内容是()
A.项目概述B.实施计划C.测试计划D.交付期限
20.面向对象的开发方法中,以下哪种方法原是面向Ada语言的,并处于面向对象开发方法的奠基性地位()
A.Booch方法B.Coad方法 C.UML语言D.OMT方法
二、填空题(本大题共10小题,每小题2分,共20分)
请在每小题的空格中填上正确答案。
错填、不填均无分。
21.可行性研究从技术可行性、经济可行性、________三方面进行分析。
22.IDEF0方法用来描述系统的功能活动及其联系,建立系统的_______模型。
23.结构化方法总的指导思想是_______逐层分解。
24.在一段程序中,将多次出现的一组语句设计为一个子程序,供多个部分调用,这种情况出现的内聚称为________。
25.软件部件的内部实现与外部可访问性分离,这是指软件的______。
26.用来模拟被测模块的上级调用模块的模块称为_______。
27.软件复杂性度量的参数很多,主要有规模、_______、结构、智能度。
28.软件开发环境中最主要的组成部分是______。
29.软件工程管理的具体内容包括对开发人员、组织机构、用户和______等方面的管理。
30.增量模型根据增量方式和形式的不同,分为_____和原型模型。
三、名词解释题(本大题共5小题,每小题3分,共15分)
31.过程设计语言(PDL)
32.可移植性
33.渐增式测试
34.详细设计
35.条件覆盖
四、简答题(本大题共4小题,每小题5分,共20分)
36.软件生存周期可以分为几个阶段,每个阶段的提交物是什么?
37.结构化分析的描述工具有哪些?
简述结构化分析的步骤。
38.什么是黑盒测试法?
常用的黑盒测试方法有哪些?
39.简述面向对象的特征。
五、应用题(本大题共2小题,第40小题10分,第41小题15分,共25分)
40.下面是一段伪码程序(代码前的数字只作标号用,不参与程序执行):
START
1:
INPUT(A,B,C,D)
2:
IF(A>0)AND(B>0)
THEN
3:
X=A+B
ELSE
4:
X=A-B
5:
END
6:
IF(C>A)OR(D THEN
7:
Y=C-D
ELSE
8:
Y=C+D
9:
END
10:
PRINT(X,Y)
STOP
根据以上的描述
(1)画出对应的流程图和程序图。
(2)计算程序图的环形复杂度。
41.某个学生成绩管理系统的部分功能如下:
(1)基本信息管理:
教务管理人员输入或修改学期教学执行计划、学生名单和教师名单;
(2)学生选课:
学生根据教学执行计划进行选课;
(3)分配任课教师:
教务管理人员为符合开课条件的课程分配教师,并打印任课通知单给教师;
(4)成绩管理:
每门课程的教师在考试评分结束后将考试成绩交给教务管理人员,教务管理人员输入、维护成绩,系统可生成成绩单(发给学生)、成绩统计分析表(发给教务管理人员)。
请根据要求画出该问题的分层数据流图(要求画出顶层和0层数据流图)。
软件工程导论预测题
一,单项选择题(本大题共20小题,每小题1分,共20分)
在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的横线上。
1.可行性研究要进行一次_____需求分析。
A.详细的 B.全面的 C.简化的、压缩的 D.彻底的
[解析]软件的可行性研究的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发。
其实质是要进行一次简化、压缩了的需求分析、设计过程,要在较高层次上以较抽象的方式进行需求分析和设计过程。
因此答案为C。
2.系统流程图用于可行性分析中的_____的描述。
A.当前运行系统 B.当前逻辑模型 C.目标系统 D.新系统
[解析]可行性研究首先要确定项目的规模和目标,然后就需要对当前运行的系统进行研究了,在考察系统的基础上,通过描绘现有系统的高层系统流程图,与有关人员一起审查该系统流程图是否正确。
描述的对象是当前正在运行的系统,因此选择A。
3.系统流程图是描述_____的工具。
A.逻辑系统 B.程序系统 C.体系结构 D.物理系统
[解析]系统流程图是用图形符号来表示系统中的各个元素,例如人工处理、数据库、设备等,流程图表达了系统中各个元素之间的信息流动情况。
是描绘物理系统的传统工具。
4._______工具在软件详细设计过程中不采用。
A.判定表 B.IPO图C.PDL D.DFD图
[解析]详细描述处理过程常用三种工具:
图形、表格和语言。
其中图形工具有结构化流程图、盒图和问题分析图三种,答案中的判