软件工程复习题.docx
《软件工程复习题.docx》由会员分享,可在线阅读,更多相关《软件工程复习题.docx(14页珍藏版)》请在冰豆网上搜索。
软件工程复习题
6.在软件危机中表现出来的软件质量差的问题,其原因是()。
A.软件研发人员素质太差B.用户经常干预软件系统的研发工作
C.没有软件质量标准D.软件开发人员不遵守软件质量标准
7.在软件质量因素中,软件在异常条件下仍能运行的能力成为软件的()。
A.安全性B.健壮性C.可用性D.可靠性
8.在下列测试技术中,()不属于黑盒测试技术。
A.等价划分B.边界值分析C.错误推测D.逻辑覆盖
9.软件工程方法是在实践中不断发展着的方法,而早期的软件工程方法主要是指()。
A原型化方法B结构化方法C功能化方法D面向对象化
25.()是把对象的属性和操作结合在一起,构成一个独立的对象,其内部信息对外界是隐蔽的,外界只能通过有限的接口与对象发生联系。
A.多态B.继承C.封装D.消息
26.对象实现了数据和操作的结合,使数据和操作()于对象的统一体中。
A.结合B.隐藏C.封装D.抽象
27.软件调试技术包括()
A.边界值分析B.演绎法C.循环覆盖D.集成测试
28.瀑布模型的存在问题是()
A.用户容易参与开发B.缺乏灵活性C.用户与开发者易沟通D.适用可变需求
29.软件测试方法中的静态测试方法之一为()
A.计算机辅助静态分析B.黑盒法C.路径覆盖D.边界值分析
30.软件生命周期中所花费用最多的阶段是()
A.详细设计B.软件编码C.软件测试D.软件维护
31.第一个体现结构化编程思想的程序设计语言是()
A.FORTRAN语言B.Pascal语言C.C语言 D.PL/1语言
32.程序的三种基本控制结构是()
A.过程、子程序和分程序B.顺序、选择和重复C.递归、堆栈和队列D.调用、返回和转移
33.在详细设计阶段,经常采用的工具有()A.PADB.SAC.SCD.DFD
34.详细设计的结果基本决定了最终程序的()A.代码的规模B.运行速度C.质量D.可维护性
35.需求分析中开发人员要从用户那里了解()A.软件做什么B.用户使用界面C.输入的信息D.软件的规模
36.结构化程序设计主要强调的是()
A.程序的规模B.程序的效率C.程序设计语言的先进性D.程序易读性
37.IDEF图反映系统()A.怎么做B.对谁做C.何时做D.做什么
38.经济可行性研究的范围包括()
A.资源有效性B.管理制度C.效益分析D.开发风险
39.可行性分析是在系统开发的早期所做的一项重要的论证工作,它是决定该系统是否开发的决策依据,因必须给出()的回答。
A.确定B.行或不行C.正确D.无二义
40.需求分析阶段的任务是确定()A.软件开发方法B.软件开发工具C.软件开发费D.软件系统的功能
41.Jackson方法是在软件开发过程中常用的方法,使用Jackson方法时可以实现()。
A.从数据结构导出程序结构B.从数据流图导出初始结构图
C.从模块结构导出数据结构D.从模块结构导出程序结构
42.软件测试时为了()而执行程序的过程。
A.纠正错误B.发现错误C.避免错误D.证明错误
43.在软件系统中,一个模块应具有什么样的功能,这是由()决定的。
A总体设计B需求设计C详细设计D程序设计
44.软件工程管理的具体内容不包括对()管理。
A.开发人员B.组织机构C.控制D.设备
2.在McCall软件质量度量模型中,()属于面向软件产品操作。
A.正确性B.可维护性 C.适应性D.互操作性
45.在快速原型模型的开发过程中,用原型过程来代替全部开发阶段所用模型是()模型。
A.探索型原型B.演化型原型C.实验型原型D.增量型原型
46.维护中因删除一个标识符而引起的错识是_________副作用。
( )A.文档B.数据 C.编码D.设计
47.软件维护的困难主要原因是( )A.费用低B.人员少C.开发方法的缺陷D.维护难
48.用白盒法技术设计测试用例的方法包括( )A.错误推测B.因果图C.基本路径测试D.边界值分析
49.软件测试中根据测试用例设计的方法的不同可分为黑盒测试和白盒测试两种,它们( )
A.前者属于静态测试,后者属于动态测试
B.前者属于动态测试,后者属于静态测试C.都属于静态测试D.都属于动态测试
50.程序设计语言的心理特性在语言中表现不应包括( )A.歧义性B.简洁性C.保密性D.传统性
51.程序的三种基本控制结构的共同特点是( )
A.只能用来描述简单程序B.不能嵌套使用
C.单入口,单出口D.仅用于自动控制系统
52.JSP方法是一种面向_________的设计方法。
( )
A.控制结构B.对象 C.数据流D.数据结构
53.当一个模块直接使用另一个模块的内部数据,这种模块之间的耦合为( )
A.数据耦合B.公共耦合C.标记耦合D.内容耦合
54.软件设计的方法有多种,_________方法不属于面向数据流的设计方法。
( )
A.基于Jackson图的设计B.基于IDEF0图的设计
C.交换分析设计D.事务分析设计
55.为高质量地开发软件项目,在软件结构设计时,必须遵循_________原则。
( )
A.信息隐蔽B.质量控制C.程序优化D.数据共享
56.设在一个模块内有2个判定,若受其中一个判定影响到的模块集合为A,而受另一个判定影响
到的模块集合为B,则该模块的作用范围是( A并B )
A.B. C.()—()D.()()
57.数据流图(DFD)是_________方法中用于表示系统的逻辑模型的一种图形工具。
( )
A.SAB.SDC.SPD.SC
58.螺旋模型是一种将瀑布模型和_________结合起来的软件开发模型。
( )
A.增量模型B.专家系统 C.喷泉模型D.变换模型
59.需求规格说明书的作用不包括( )
A.软件验收的依据
B.用户与开发人员对软件要做什么的共同理解
C.软件可行性研究的依据D.软件设计的依据
60.数据字典是用来定义_________中的各个成份的具体含义的。
( )
A.流程图B.功能结构图 C.系统结构图D.数据流图
61.设年利率为i,现存入p元,不计复利,n年后可得钱数为( )
A.p﹡(1+i﹡n)B.p﹡(i+1)nC.p﹡(1+i)﹡nD.p﹡(i+n)
62.在软件生产的程序系统时代由于软件规模扩大和软件复杂性提高等原因导致了( )
A.软件危机B.软件工程C.程序设计革命D.结构化程序设计
A.总体设计B.需求分析C.详细设计D.程序设计
63.软件开发的瀑布模型,一般都将开发过程划分为:
分析、设计、编码、测试和维护等阶段,一般认为可能占用人员最多的阶段是()。
A.分析阶段B.设计阶段C.维护阶段D.测试阶段
64.常用的面向对象的软件过程模型是()。
A.瀑布模型B.喷泉模型C.原型模型D.增量模型
65.面向对象的分析阶段建立的系统模型不包括()。
A.对象模型B.动态模型C.功能模型D.数据模型
66.提高软件的可维护性可采用很多措施,下列哪个不在措施之列?
A.提供没有错误的程序B.建立质量保证制度
C.改进程序文档质量D.明确软件质量标准
68.目前,软件项目的进度安排的两种比较常用的方法是程序评估与审查技术(PERT)和关键路径法(CPM)。
(T)
69.一个好的开发人员应具备的素质和能力不包括具有良好的书面和口头表达能力。
(F)
70缺乏处理大型软件项目的经验。
是产生软件危机的唯一原因。
(F)
71通常紧致性好的语言一致性就好。
(F)
72测试计划、测试用例、出错统计和有关的分析报告一般不用长期保存。
(F)
73数据输入的一般准则中包括保证信息显示方式与数据输入方式的协调一致;允许用户定做输入格式等内容。
(T)
74.在用户需求分析时观察用户手工操作过程不是为了模拟手工操作过程,而是为了获取第一手资料,并从中提取出有价值的需求。
(T)
75为了充分发挥开发人员的潜力、缩短工期,软件工程项目的任务分解与安排应尽力挖掘可并行开发的部分。
(T)
76.一个好的开发人员应具备的素质和能力包括善于与周围人员团结协作,建立良好的人际关系,善于听取别人的意见。
(T)
77面对日益增长的软件需求,人们显得力不从心。
往往是产生软件危机的原因之一。
(T)
78.目前的绝大多数软件都不适合于快速原型技术。
(F)
79如果在分析阶段和设计阶段采用的是面向对象的方法,而在编码阶段采用的是面向过程的语言,那么这种翻译就比较困难。
(T)
80计算机系统工程是一种从系统层面上的问题求解活动。
(T)
81PDL经常表现为一种“混杂”的形式,他不允许自然语言如英语的词汇与某种结构化程序设计语言(如Pascal、C、Ada等)的语法结构交织在一起(F)。
82.面向数据的设计方法的适用场合是具有明显的层次信息结构的应用如:
企事业的信息管理系统;系统软件(如操作系统)等。
(T)
通过软件测试,可以发现软件中所有潜伏的错误。
(F)
83.缺乏处理大型软件项目的经验。
是产生软件危机的唯一原因。
(F)
84系统规格说明是系统分析和定义阶段生成的一种文档。
(T)
85数据流图的分解速度应保持较高。
通常一个加工每次可分解为10~20个子加工。
(F)
86内聚度标志一个模块内部各成分彼此结合的紧密程度,按其高低程度可分为七级,内聚度越低越好。
(F)
87通常紧致性好的语言一致性就好。
(F)
88.测试计划、测试用例、出错统计和有关的分析报告一般不用长期保存。
(F)
89软件工程学只有理论意义,没有实际用途。
(F)
90软件工程的方法只适用于大型软件的开发,对小型软件的开发没有帮助。
(F)
91可行性研究进一步研究问题分析阶段所确定的问题是否有可行的解。
(T)
92代码审查方法没有计算机测试方法好。
(F)
93验证软件需求的方法主要靠人工审查的方法。
(T)
94并发系统中遇到的一个主要问题是定时问题。
(T)
95编码风格由个人喜好决定,没有固定格式。
(F)
96面向对象建模得到的模型包含系统的3个要素,即静态结构、交互次序和数据变换。
(T)
97软件重用是提高软件开发生产率和目标系统质量的重要途径。
(T)
98判定覆盖不一定包含条件覆盖,条件覆盖也不一定包含判定覆盖。
(T)
owerDesigner是一个CASE工具。
(T)
100软件是指用程序设计语言(如Pascal,C,VisualBasic等)编写的程序,软件开发实际上就是编写程序代码。
(F)
101在进行需求分析时需同时考虑维护问题。
(F)
102UML是一种面向对象的分析设计方法,即OOA/OOD方法。
(F)
103在面向对象的软件开发方法中,每个类都存在其相应的对象,对象是类的实例,类是生成对象的模板。
(T)
104.文档—一种数据媒体和其上所记录的__数据______。
105.机器语言、汇编语言:
依赖于机器,面向__机器______
106.软件有效性,指软件系统的时间和___空间_____效率。
107.软件定义过程可通过软件系统的_可行性研究_______和需求分析两个阶段来完成。
108.软件定义的基本任务是确定软件系统的工程___需求_____,也就是要搞清“做什么”。
109软件工程中的结构化分析SA是一种面向_数据流_______的分析方法。
110软件模块独立性的两个定性度量标准是______低耦合,高内聚___________。
112软件开发是一个自顶向下逐步细化和求精的过程,而软件测试是一个____由下而上____的过程。
113_____数据流图___和数据字典共同构成了系统的逻辑模型
114_等价划分__________是一种黑盒测试技术,这种技术把程序的输入域划分为若干个数据类,据此导出测试用例。
115.为了使用户需求逐步精细化、完全化、一致化,通常采用___需求建模技术_____。
116.一个软件的深度是指其控制的_层数_______。
117.为了使应用软件适应计算机环境的变化而___修改____的过程称为适应性维护。
118.一个进行学生成绩统计的模块其功能是先对学生的成绩进行累加,然后求平均值,则该模块的内聚性是___顺序内聚_____。
119.基于IDEF0图的设计是以系统的功能模型和___信息结构______为基础设计系统的软件结构。
120.软件结构图的宽度是指一层中__模块数最大___的模块个数。
121.投资回收期就是使累计的经济效益等于__最初的投资费用____所需的时间。
122.软件生存周期是指一个软件从提出开发要求开始直到__该软件报废____为止的整个时期。
123.以详细设计说明书为输入,将该输入用某种程序设计语言翻译成计算机可以理解并最终可运行的代码的过程叫__编码______过程。
124白盒测试——又叫做结构测试,把程序看成装在一个透明的白盒子里,按照程序内部的逻辑测试程序,检测程序中的主要执行通路是否都能按预定要求正确工作。
125模块化——把程序划分成独立运行且可以独立访问的模块,每个模块完成一个子功能,把这些模块集成起来构成一个整体,可以完成指定的功能满足用户的需求。
126对象——描述该对象属性的数据以及可以对这些数据施加的所有操作封装在一起构成的统一体。
127项目A是为银行开发ATM(自动取款机)软件,项目B是为网络公司开发网络数据流分析软件,请问按照面向数据流设计方法(SD法),两个项目应分别采用何种方法将需求分析的功能模型转换成软件结构,为什么?
1某保险公司对投保人的汽车保费计算方法如下:
单身男,年龄30岁以下(含30岁),计保费标准A,30岁以上计保费标准B;已婚男30岁以下(含30岁),计保费标准C,30岁以上计保费标准D,单身女,年龄25岁以下(含25岁),计保费标准E,25岁以上计保费标准F;已婚女25岁以下(含25岁),计保费标准G,25岁以上计保费标准H,请画出对应的判定树。
129.根据下列条件使用边界值分析法设计测试用例。
某一8位微机,其八进制常数定义为:
以零开头的数是八进制整数,其值的范围是-177~177。
如 05,0127,-065
130.工资计算系统中的一个子系统有如下功能:
(1)计算扣除部分—由基本工资计算出应扣除(比如水电费、缺勤)的部分;
(2)计算奖金部分—根据职工的出勤情况计算出奖励金;
(3)计算工资总额部分—根据输入的扣除额及奖金计算出总额;
(4)计算税金部分—由工资总额中计算出应扣除各种税金;
(5)生成工资表—根据计算总额部分和计算税金部分传递来的有关职工工资的详细信息生成工资表。
试根据要求画出该问题的数据流程图,并把其转换为软件结构图。
131、为以下程序流程图分别设计语句覆盖和判定覆盖测试用例并标明程序执行路径。
答:
1)语句覆盖测试用例
令x=2,y=0,z=4作为测试数据,程序执行路径为abcde。
2)判定覆盖——分支覆盖
可以设计如下两组数据以满足判定覆盖:
x=3,y=0,z=1(通过路径abce);
x=2,y=1,z=2(通过路径acde)。
132软件测试的任务、目的与类型。
答:
软件测试是一个为了寻找软件错误而运行程序的过程。
目的就是为了发现软件中的错误。
一个好的测试用例是指很可能找到迄今为止尚未发现的错误的用例。
一个成功的测试是指揭示了迄今为止尚未发现的错误的测试。
软件测试主要分为白盒测试和黑盒测试两大类。
133简述结构化程序设计方法的基本要点
答:
(1)采用自顶向下,逐步求精的程序设计方法。
(2)使用三种基本控制结构构造程序,分别是顺序,选择和循环
(3)采用主程序员组的组织形式。
(4)采用单入口单出口的模块形式
134会用面向对象方法设计出对象模型(对象类图,标出多重性.角色.限定词和关系:
泛化、聚集、关联)、动态模型(学生成功注册后选课的顺序图).功能模型(用例图)三大模型。
(根据具体项目来确定)
135.试利用McCabe的程序复杂性计算方法计算如下程序图的复杂性。