大连海事大学软件工程复习题库挂答案1.docx
《大连海事大学软件工程复习题库挂答案1.docx》由会员分享,可在线阅读,更多相关《大连海事大学软件工程复习题库挂答案1.docx(13页珍藏版)》请在冰豆网上搜索。
大连海事大学软件工程复习题库挂答案1
一、选择题
1、白盒测试法是通过分析程序的()来设计测试用例的。
A.应用范围B.功能
C.内部逻辑D.输入数据
2、风险预测从两个方面评估风险,即风险发生的可能性以及()。
A.风险产生的原因B.风险监控技术
C.风险能否消除D.风险发生所产生的后果
3、极限编程(XP)由价值观、原则、实践和行为四部分组成,其中价值观包括沟通、简单性和()。
A.好的计划B.不断的发布
C.反馈和勇气D.持续集成
4、等价分类法的关键是()。
A.确定等价类的边界条件B.按照用例来确定等价类
C.划分等价类D.确定系统中相同和不同的部分
5、下列不属于黑盒测试的技术是()。
A.程序段或语句的功能B.模块的接口
C.数据的名称和用途D.模块的功能
6、为了提高模块的独立性,模块之间最好是()耦合。
A.控制耦合B.公共耦合
C.内容耦合D.数据耦合
7、一个软件开发过程描述了“谁做”,“做什么”,“怎么做”和“什么时候做”,RUP用()来表述“谁做”。
A.角色B.活动
C.制品D.工作流
8、功能性注释嵌入在源程序内部,它是用来说明()。
A.程序段或语句的功能B.模块的接口
C.数据的名称和用途D.模块的功能
9、在结构化分析方法中,数据字典是重要的文档。
对加工的描述是数据字典的组成内容之一,常用的加工描述方法有( )。
A.只有结构化语言B.有结构化语言和判定树
C.有结构化语言、判定树和判定表D.有判定树和判定表
10、某银行为了使其网上银行系统能够支持信用卡多币种付款功能而进行扩充升级,这需要对数据类型稍微进行一些改变,这一状况需要对网上银行系统进行()维护。
A.正确性B.适应性
C.完善性D.预防性
11、软件危机的主要原因是()。
A软件本身特点与开发方法B对软件的认识不够
C软件生产能力不足D软件工具落后
12、DFD是常用的进行软件需求分析的图形工具,其基本符号是()。
A.输入、输出、外部实体和加工
B.变换、加工、数据流和存储
C.加工、数据流、数据存储和外部实体
D.变换、数据存储、加工和数据流
13、软件工程管理是对软件项目的开发管理。
具体地说,就是对整个软件()的一切活动进行管理。
A.生存期B.开发
C.制定计划D.项目
14、在面向数据流的软件设计方法中,一般将信息流分为( )。
A.变换流和事务流B.变换流和控制流
C.事务流和控制流D.数据流和控制流
15、在软件工程项目中,不随参与人数的增加而使软件生产率增加的主要原因是()。
A、工作阶段间的等待时间B、生产原型的复杂性
C、参与人员所需的工作站数D、参与人员之间的通信困难
16、下面()不是软件的特征。
A系统性与复制性B有形性与可控性C抽象性与智能性D依附性与泛域性
17、下列关于面向对象分析与设计说法错误的是()。
A.面向对象的设计以面向对象分析为基础归纳出类
B.建立类结构或进一步构造成类库,实现分析结果对问题空间的抽象
C.面向对象的设计是面向对象分析的另一种思维方式
D.面向对象的设计是面向对象分析进一步的细化和更高的抽象
18、在软件的可行性分析中,可以从不同的角度对软件进行研究,其中()是从软件的功能可行性角度考虑的。
A.经济可行性B.技术可行性C.操作可行性D.法律可行性
19、下述任务中,不属于软件工程需求分析阶段的是( )。
A.分析软件系统的数据要求
B.确定软件系统的功能需求
C.确定软件系统的性能要求
D.确定软件系统的运行平台
20、在面向对象方法中,信息隐蔽是通过对象的( )来实现的。
A分类性B继承性C封装性D共享性
21、采用面向对象方法开发软件的过程中,抽取和整理用户需求并建立问题域精确模型的过程叫()。
A.面向对象测试B.面向对象实现
C.面向对象设计D.面向对象分析
22、在遵循软件工程原则开发软件过程中,计划阶段应该依次完成()等步骤。
A.软件计划、需求分析、系统定义
B.系统定义、软件计划、需求分析
C.需求分析、概要设计、软件计划
D.软件计划、需求分析、概要设计
23、一个项目为了修正一个错误而进行了变更,但这个错误被修正后,却引起以前可以正确运行的代码出错。
()测试最有可能发现这个问题。
A.单元测试B.接受测试C.回归测试D.安装测试
24、从工程管理的角度来看,软件设计分()两步完成。
A)概要设计与详细设计
B)数据设计与接口设计
C)软件结构设计与数据设计
D)过程设计与数据设计
25、某系统重用了第三方组件(但无法获得其源代码),则应采用()对组件进行测试。
A.基本路径覆盖B.分支覆盖C.环路覆盖D.黑盒测试
26、在软件设计与编码过程中,采取()的做法将使软件更容易理解和维护。
A.良好的程序结构,有无文档均可
B.使用标准或规定之外的语句
C.编写详细正确的文档,采用良好的程序结构
D.尽量减少程序中的注释
27、软件维护成本在软件成本中占较大比重,为降低维护的难度,可采取的措施有()。
A.设计并实现没有错误的软件
B.限制可修改的范围
C.增加维护人员数量
D.在开发过程中就采取有利于维护的措施并加强维护管理
28、()是一种面向数据流的开发方法,其基本思想是软件功能的分解和抽象。
A.结构化开发方法B.Jackson系统开发方法
C.Booch方法D.UML(统一建模语言)
29、在人机界面的设计过程中应该考虑下列()情况。
30、测试用例是测试使用的文档化细则,应包括下列()内容的详细信息。
①测试目标和被测功能。
②测试环境和其他条件。
③测试数据和测试步骤。
④测试记录和测试结果。
A.①③B.①②③C.①③④D.①②③④
31、()模型适合于大型软件的开发,它吸收了软件工程“演化”的概念,使得开发人员和用户对每个周期出现的风险有所了解,从而做出相应的反应。
32、软件测试中,白盒法是通过分析程序的()来设计测试用例的。
A.应用范围B.内部逻辑C.功能D.输入数据
33、可行性分析要进行的需求分析和设计应是()。
A.详细的B.全面的C.简化、压缩的D.彻底的
34、下面关于面向对象分析与面向对象设计的说法,不正确的是()。
A.面向对象分析侧重于理解问题
B.面向对象设计侧重于理解解决方案
C.面向对象分析描述软件要做什么
D.面向对象设计一般不关注技术和实现层而的细节
35、软件设计时需要遵循抽象、模块化、信息隐蔽和模块独立原则。
在划分软件系统模块时,应尽量做到()。
A.高内聚高耦合
B.高内聚低耦合
C.低内聚高耦合
D.低内聚低耦合
36、软件工程每一个阶段结束前,应该着重对可维护性进行复审,在系统设计阶段的复审期间,应该从()出发,评价软件的结构和过程。
A.指出可移植性问题以及可能影响软件维护的系统界面
B.容易修改、模块化和功能独立的目的
C.强调编码风格和内部说明文档
D.可测试性
37、软件的集成测试工作最好由()人员承担,以提高集成测试的效果。
A.该软件的设计人员B.该软件开发组的负责人
C.该软件的编程人员D.不属于该软件开发组的软件设计人员
38、程序的三种基本控制结构是()。
A.过程,子程序,分程序B.顺序,条件,循环
C.递归,堆栈,队列D.调用,返回,转移
39、()是决定软件维护成败和质量好坏的关键。
A修改程序B建立目标程序C分析和理解程序D重新验证程序
40、数据库设计时的概念数据模型一般用()图表示。
A.PADB.E-RC.E-PD.HIPO
41、若有一个计算类型的程序,它的输入量只有一个,其范围是[-1.0,1.0],现从输入的角度考虑一组测试用例:
-1.001,-1.0,1.0,1.001。
设计这组测试用例的方法是()。
A.逻辑覆盖B.等价类划分C.边界值分析D.错误推测
42、在结构化分析方法(SA)中,()与数据流图共同构成了系统的逻辑模型,是需求规格说明书的主要组成部分。
A.模块图B.E-R图C.数据字典D.程序流程图
43、面向对象的分析方法主要是建立三类模型,即()。
A.系统模型、ER 模型、应用模型
B.对象模型、动态模型、应用模型
C.E-R模型、对象模型、功能模型
D.对象模型、动态模型、功能模型
44、成功的测试是指运行测试用例后()。
A未发现程序错误B发现了程序错误C证明程序正确D改正了程序错误
45、面向数据流的设计方法把()映身成软件结构。
A.数据流图B.系统结构图C.控制结构图D.变换流图
46、软件危机是指()。
47、检查软件产品是否符合需求定义的过程称为()。
A.确认测试B.集成测试C.验证测试D.验收测试
48、汽车有一个发动机,汽车和发动机之间的关系是()关系。
A.一般与具体B.整体与部分C.分类D.isa
49、详细设计的基本任务是确定每个模块的()设计
A.算法和使用的数据结构B.外部接口C.功能D.编程
50、软件产品的生产主要是脑力劳动,软件产品的成本主要体现在软件的()上。
A.复制B.开发方式C.开发和研制D.磨损和消耗
51、以下()不属于系统设计。
A总体设计B详细设计C过程设计D需求设计
52、需求规格说明书的作用不应该包括()。
A.软件设计的依据
B.用户与开发人员对软件要做什么的共同理解
C.软件验收的依据
D.软件可行性研究的依据
53、软件质量必须从需求分析开始,在()加以保证。
A开发之前B开发之后C可行性研究过程D整个开发过程
54、软件简略定义是()。
55、SA方法的基本思想是( )。
A.自底向上逐步抽象 B.自底向上逐步分解
C.自顶向下逐步分解 D.自顶向下逐步抽象
56、软件工程是一门()学科。
57、等价分类法的关键是()。
A.确定等价类的边界条件
B.按照用例来确定等价类
C.划分等价类
D.确定系统中相同和不同的部分
二、填空题
1._的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发。
2.采用UML进行软件设计时,可用____关系来表示两类事物之间存在的特殊/一般关系,用__关系来表示事物之间存在的整体/部分关系。
3.继承与__机制,是面向对象程序中实现重用的主要手段。
4.成本效益分析的目的是从角度评价开发一个软件项目是否可行。
5.对象之间通过进行通信。
6.在面向对象的软件中,是对具有相同数据和相同操作的一组相似对象的定义;实例是由某个特定的类所描述的一个具体对象。
7.需求分析阶段产生的最重要的文档是。
8.软件开发中的原型是软件的一个早期可运行的版本,它反映了最终系统的。
9.软件开发过程来自用户方面的干扰和阻力主要有:
不积极配合,求快求全和。
10.软件文档按照其产生和使用的范围可分为开发文档、管理文档和用户文档,其中可行性研究报告属于文档。
11.可行性研究实质上是要进行一次了的需求分析、设计过程,是在较高层次上以较抽象的方式进行需求分析和设计过程。
12.一个软件开发过程描述了“谁做”,“做什么”,“怎么做”和“什么时候做”,RUP用来表述“谁做”。
13.在面向对象的软件中,类是对具有相同数据和相同操作的一组相似对象的定义;是由某个特定的类所描述的一个具体对象。
14.软件结构是以为基础而组成的一种控制层次结构。
15.软件能力成熟度模型(CMM)将软件能力成熟度自低到高依次划分为初始级、、定义级、和优化级。
16.关联是建立类之间关系的一种手段,而链则是建立之间关系的一种手段。
17.软件测试方法中的属于静态测试方法。
18.继承与机制是面向对象程序中实现重用的主要手段。
19.系统详细设计阶段最后产生的文档是。
20.DFD利用图形符号表示系统中的各个元素,表达了系统中各种元素之间的。
21.在设计阶段,要充分体现软件工程的“”、“抽象”、“信息隐蔽”等基本原则。
22.在面向对象分析和OOD中,通常将对象的操作称为。
23.单元测试一般以_为主,测试的依据是系统的模块功能规格说明。
24.当A模块调用B模块时,若两个模块之间传递的是数值型参数,则这两个模块的耦合方式是。
25.软件测试用例主要由输入数据和两部分组成。
26.为适应软硬件环境变化而修改软件的过程是。
27.提高程序效率的根本途径在于选择良好的设计方法、良好的和,而不是靠编程时对程序语句做调整。
三、名词解释
1.数据字典:
2.模块独立性:
3.软件复用:
4.内聚:
5.测试用例:
6.软件生存周期模型:
7.信息隐蔽:
8.McCabe度量法:
9.动态模型:
10.软件维护:
11.CMM:
12.软件调试:
13.耦合:
14.配置管理:
15.软件项目计划:
四、简答题
1.软件工程的两大范型分别是什么?
它们有什么不同?
2.如何画分层数据流图?
3.面向对象程序设计有哪些优点?
4.在软件测试中,应注意哪些原则?
5.程序设计风格是指一个人编制程序时所表现出来的特点、习惯、逻辑思路等。
6.面向对象分析与面向对象设计的关系?
7.成本-效益分析的目的是什么?
可用哪些指标进行度量?
8.软件设计分哪几个阶段,它们的主要任务是什么?
9.用户需求和系统需求各有什么特点?
10.面向对象设计的准则?
11.需求分析过程主要有哪几个步骤?
12.软件设计分哪几个阶段,它们的主要任务是什么?
13.什么是软件结构图?
它有哪些主要元素?
14.面向对象方法的特点是什么?
为什么要用面向对象方法开发软件?
15.什么是编码风格?
请根据自己的编程经验编写一个编程注意事项。
五、应用题
1.画XXX系统的状态图。
2.McCabe度量法是通过定义环路复杂度,建立程序复杂性的度量,它基于一个程序模块的程序图中环路的个数。
根据给出的程序流程图,画出它的程序图,并计算它的McCabe复杂性度量。
3.请将下面的DFD转换为软件结构图(注:
图中
表示“或者”)。
(作业上有)
4.下面是某程序的流程图:
(1)先画出流图,再计算它的环路复杂性。
(2)为了完成基本路径测试,求它的一组独立的路径。
(1)环路复杂性=判断数+1=3+1=4(个)
流图:
(2)独立路径:
1:
a->b
2:
a->c->d
3:
a->c->e->f
4:
a->c->e->g->h
5.建立微机的对象模型。
(作业上有)
6.画出银行取款过程的DFD图。
问题描述:
储户用存折取款首先填写取款的,根据“帐卡”中的信息检验取款单与存折,如有问题,将问题反馈给储户,否则,登陆“储户存款数据库”,修改相应数据,并更新“帐卡”,同时发出付款通知,出纳向储户付款。
(以下是另外发现的题,Web版式视图中找到,不知道是不是考试题目)
二、填空题(每空2分,共20分)
21.一个模块把数值作为参数传送给另一个模块的耦合方式称为。
22.成本效益分析的目的是从角度评价开发一个软件项目是否可行。
23.软件结构是以为基础而组成的一种控制层次结构。
24.在单元测试时,需要为被测模块设计驱动模块和桩模块。
的作用是返回被测模块所需的信息。
25.是引起系统状态转换的控制信息。
26.继承与机制,是面向对象程序中实现重用的主要手段。
27.对象具有状态,一个对象用来描述它的状态。
28.为协调软件开发使得混乱减到最小,使用技术,使变更所产生的错误达到最小并最有效地提高生产率。
29.软件开发环境是相关的一组集合,它支持一定的软件开发方法或按照一定的软件开发模型组织而成。
30.关联是建立类之间关系的一种手段,而链则是建立之间关系的一种手段。
三、名词解释(每题3分,共15分)
31.数据字典
32.模块独立性
33.软件生存周期模型
34.CMM
35.动态模型
四、简答题(每题5分,共20分)
36.软件生命期各阶段的任务是什么?
37.非渐增式测试与渐增式测试有什么区别?
38.面向对象程序设计有哪些优点?
39.模块间的耦合性有哪几种?