软件工程导论试题修订Word格式.docx
《软件工程导论试题修订Word格式.docx》由会员分享,可在线阅读,更多相关《软件工程导论试题修订Word格式.docx(26页珍藏版)》请在冰豆网上搜索。
![软件工程导论试题修订Word格式.docx](https://file1.bdocx.com/fileroot1/2023-2/1/a5e9d02f-3734-4420-870a-cf4096b7711f/a5e9d02f-3734-4420-870a-cf4096b7711f1.gif)
24.独立路径是指包括一组以前没有处理的语句或条件的一条路径。
从程序图来看,一条独立路径是至少包含有一条( )的边的路径。
25.汇编语言是面向()的,可以完成高级语言无法完成的特殊功能,如与外部设备之间的一些接口工作。
26.在JSP方法中解决结构冲突的具体办法是( )。
27.详细设计的任务是确定每个模块的内部特性,即模块的算法、( )。
28.所有软件维护申请报告要按规定方式提出,该报告也称( )报告。
29.有两类维护技术:
在开发阶段使用来减少错误、提高软件可维护性的面向维护的技术;
在维护阶段用来提高维护的效率和质量的( )技术。
30.科学工程计算需要大量的标准库函数,以便处理复杂的数值计算,可供选择的语言有:
( )、PASCAL语言、C语言和PL/1语言。
三.判断
1.软件的开发与运行经常受到硬件的限制和制约。
()
2.模块内的高内聚往往意味着模块间的松耦合。
3.Jackson图只能表达程序结构,不能表达数据结构。
上述数据流图表示数据A和B同时输入变换成C。
5.软件的质量好坏主要由验收人员负责,其他开发人员不必关心。
6.判定覆盖不一定包含条件覆盖,条件覆盖也不一定包含判定覆盖。
7.应该尽量使用机器语言编写代码,提高程序运行效率,而减少高级语言的使用。
8.UML只能应用于软件系统模型的建立。
9.容错就是每个程序采用两种不同的算法编写。
10.软件测试的目的是为了无一遗漏的找出所有的错误。
四、名词解释题(本大题共5小题,每小题3分,共15分)
31.软件开发环境32.错误推测法33.黑盒测试法34.软件质量保证35.瀑布模型
五、图a中,模块G为判定,判断涉及到模块B、F、G,请指出设计中的错误,再根据改进模块图的基本原则,画出1~2个改进方案(不改变模块G的判断关系),并说明是按照哪条基本原则进行改进的。
40.请使用PAD图和PDL语言描述在数组A
(1)~A(10)中找最大数的算法。
41.根据下列条件使用等价类划分法设计测试用例。
某一8位微机,其八进制常数定义为:
以零开头的数是八进制整数,其值的范围是-177~177,如05,0127,-065
42.某电器集团公司下属的厂包括技术科、生产科等基层单位。
现在想建立一个计算机辅助企业管理系统,其中:
生产科的任务是:
(1)根据销售公司转来的内部合同(产品型号、规格、数量、交获日期)制定车间月生产计划。
(2)根据车间实际生产日报表、周报表调整月生产计划
(3)以月生产计划为以及,制定产品设计(结构、工艺)及产品组装月计划。
(4)将产品的组装计划传达到各科,将组装月计划分解为周计划,下达给车间
技术科的任务是:
(1)根据生产科转来的组装计划进行产品结构设计,产生产品装配图给生产科,产生外购需求计划给供应科,并产生产品自制物料清单。
(2)根据组装计划进行产品工艺设计,根据产品自制物料清单产生工艺流程图给零件厂。
试写出以上系统中生产科和技术科处理的软件结构图。
2009—2010学年第二学期期末考试试题
1.软件危机具有下列表现()。
I.对软件开发成本估计不准确II.软件产品的质量往往靠不住
III.软件常常不可维护IV.软件成本逐年上升
、II和III、III和IV、III和IVD.以上都正确
2.软件生命周期一般都被划分为若干个独立的阶段,其中占用精力和费用最多的阶段往往是()。
A.运行和维护阶段B.设计阶段C.代码实现阶段D.测试阶段
3.下列属于软件的特点的是()。
A.软件是一种逻辑实体,具有抽象性B.软件在使用过程中没有磨损、老化的问题
C.软件不同于一般程序,它的一个显着特点是规模庞大,复杂程度高D.以上都正确
4.软件工程的出现是由于()。
A.软件危机的出现B.计算机硬件技术的发展C.软件社会化的需要D.计算机软件技术的发展
5.软件开发技术不包含()。
A.软件开发方法学B.软件工程环境C.软件工具D.软件质量度度量
6.软件工程的课程特点()。
I.学科理论及其知识应用的多维性II.工程化III.浓厚的方法学色彩IV.实践性、指导性强
、II和III、III和IV、III和IVD.以上都正确
7.下列属于应用软件的是()。
I.计算机辅助教学软件II.软件测试工具III.办公自动化软件IV.工程与科学计算软件
8.需求分析阶段最重要的技术文档是()。
A.设计说明书B.需求规格说明书C.可行性分析报告D.用户手册
9.以下关于数据流图的说法错误的是()。
A.数据流图舍去了具体的物质,只剩下数据的流动、加工处理和存储
B.数据流图是用作结构化分析的一种工具
C.传统的数据流图中主要由加工、数据源点/终点、数据流、控制流、数据存储组成
D.数据流图的绘制采用自上向下、逐层分解的方法
10.数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是()。
A.数据库设计B.数据通信C.数据定义D.数据维护
11.需求分析阶段的研究对象是()。
A.系统分析员要求B.用户要求C.软硬件要求D.系统要求
12.结构化方法的基本原则是()。
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.调用
中的“→”代表()。
A.数据流B.文件C.处理D.控制流
中的“○”代表()。
中的“_”代表()。
1.计算机软件不仅仅是程序,还应该有一整套。
2.传统的软件生存期模型是。
3.软件按照功能的不同可以划分为3大类型、和。
4.DFD在软件工程中表示。
5.与是模块独立性的两个定性标准,将软件系统划分模块时,尽量做到内聚、耦合,提高模块的,为设计高质量的软件结构奠定基础。
6.数据流图有四种基本成分:
、、、。
7.12.数据字典有以下四类条目:
是组成数据流和数据存储的最小元素。
8.某厂对部分职工重新分配工作的政策是:
年龄有20岁以下者,初中文化程度脱产学习,高中文化程度当电工;
年龄有20岁至40岁之间者,中学文化程度男性当钳工,女性当车工,大学文化程度者当技术员;
年龄有40岁以上者,中学文化程度当材料员,大学文化程度当技术员。
请用结构化语言、判定表或判定树描述上述问题的加工逻辑。
一、单项选择题
二、填空题
1.文档2.瀑布模型3.系统软件支持软件应用软件4.数据流图
5.耦合性内聚性高低独立性
6.数据流加工(又称为数据处理)文件数据的源点或终点
7.数据流数据项文件基本加工数据项
三、简答题
答:
(1)结构化语言。
IF年龄<
20
THENIF文化程度=初中
THEN脱产学习
ELSE工作为电工
ENDIF
ELSEIF年龄≤40
THENIF(文化程度=大学)
THEN工作为技术员
ELSEIF性别=男性
THEN工作为钳工
ELSE工作为车工
ENDIF
ENDIF
ELSEIF(文化程度=大学)
ELSE工作为材料员
ENDIF
ENDIF
ENDIF
(2)判定树如下:
单项选择题(每小题1分,共10分)
在结构性的瀑布模型中,哪一个阶段定义的标准将成为软件测试中的系统测试阶段的目标(A)
(A)需求分析阶段(B)详细设计阶段(C)概要设计阶段(D)可行性研究阶段软件工程方法中普遍定义的方法之一是结构化生命周期方法(SLC方法),下述哪一个论述不具有SLC方法的主要特征(C)A严格定义需求B划分开发阶段C规范文档格式D分析控制流程
软件结构中两个模块之间有调用关系,传递简单数据值,相当于高级语言中的值传递,这两个模块之间的耦合是(D)(A)公共耦合(B)控制耦合(C)标记耦合(D)数据耦合
软件维护的四类维护活动是(A)
(A)改正性维护,适应性维护,完善性维护和预防性维护。
(B)适应性维护,完善性维护,抢救性维护和辅助性维护。
(C)改正性维护,适应性维护,完善性维护和辅助性维护。
(D)适应性维护,完善性维护,抢救性维护和预防性维护。
主要从(A)几个方面进行系统可行性研究。
(A)技术可行性,经济可行性,操作可行性。
(B)技术可行性,经济可行性,系统可行性。
(C)经济可行性,系统可行性,操作可行性。
(D)经济可行性,系统可行性,时间可行性。
进行需求分析可使用多种工具,但(C)是不适用的。
(A)数据流图(B)判定表(C)PAD图(D)数据字典
软件需求分析阶段的工作,可以分为四个方面:
对问题的识别、分析与综合、编写需求分析文档以及(B)(A)软件的总结(B)需求分析评审(C)阶段性报告(D)以上答案都不对
OMT(ObjectModellingTechnique)方法的第一步是从问题的陈述入手,构造系统模型。
系统模型由对象模型、(C)组成。
A静态模型和功能模型B动态模型和过程模型C动态模型和功能模型D静态模型和操作模型
为了表示项目管理功能工作中各项任务之间的进度衔接关系,常用的计划管理工具是(D)
(A)程序结构图(B)数据流图(C)E-R图(D)甘特(Gantt)图
判断题(每小题1分,共5分)
软件开发的主要任务是写程序。
错
测试功能是否符合要求是白盒测试。
流图中的区域数等于环形复杂度。
对
扇出是一个模块直接控制(调用)的模块数目,扇出过大意味着模块过分复杂,需要控制和协调过多的下级模块。
在面向对象程序中,使用继承机制是实现共享和提高重用程度的主要途径。
简答题
简述需求分析的三个层次。
业务需求:
反映了组织机构或客户对系统、产品高层次的目标要求。
用户需求:
文档描述了用户使用产品必须要完成的任务。
功能需求:
定义了开发人员必须实现的软件功能,使得用户能完成他们的任务,从而满足了业务需求。
软件测试中一般包含几个步骤?
请分别加以说明。
制定测试计划设计测试用例执行测试撰写测试报告消除软件缺陷完成
说出你所知道的两种估算软件规模的方法的名称,并说明他们的优缺点。
(4分)
软件生命周期都包含哪些阶段,并简述每个阶段的基本任务(5分)
①软件生命周期中所花费用最多的阶段是()
A.详细设计B.软件编码C.软件测试D.软件维护
②可行性分析是在系统开发的早期所做的一项重要的论证工作,它是决定该系统是否开发
的决策依据,因必须给出()的回答。
A.确定B.行或不行C.正确D.无二义
③下列关于瀑布模型的描述正确的是()。
A.瀑布模型的核心是按照软件开发的时间顺序将问题简化。
B.瀑布模型具由于良好的灵活性。
C.瀑布模型采用结构化的分析与设计方法,将逻辑实现与物理实现分开。
D.利用瀑布模型,如果发现问题则修改的代价很低。
④详细设计的结果基本决定了最终程序的()
A.代码的规模B.运行速度C.质量D.可维护性
⑤结构化程序设计主要强调的是()
A.程序的规模B.程序的效率C.程序设计语言的先进性D.程序易读性
⑥程序的三种基本控制结构是()
A.过程、子程序和分程序B.顺序、选择和重复C.递归、堆栈和队列D.调用、返回和转移
⑦确认软件的功能是否与需求规格说明书中所要求的功能相符的测试属于()
A、集成测试B、恢复测试C、验收测试D、单元测试
⑧面向对象技术中,对象是类的实例。
对象有三种成份:
()、属性和方法(或操作)。
A.标识B.规则C.封装D.消息
⑨下面关于面向对象方法中消息的叙述,不正确的是()。
A.键盘、鼠标、通信端口、网络等设备一有变化,就会产生消息
B.操作系统不断向应用程序发送消息,但应用程序不能向操作系统发送消息
C.应用程序之间可以相互发送消息
D.发送与接收消息的通信机制与传统的子程序调用机制不同
⑩面向对象程序设计中的数据隐藏指的是()。
A.输入数据必须输入保密口令B.数据经过加密处理
C.对象内部数据结构上建有防火墙D.对象内部数据结构的不可访问性
答案:
①D②B③C④C⑤D⑥B⑦C⑧A⑨B⑩D
1.程序设计属于软件开发过程()阶段。
A、设计B、编程C、实现D、编码
2.结构设计是一种应用最广泛的系统设计方法,是以()为基础、自顶向下、逐步求精
和模块化的过程。
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.结构化分析SA方法以数据流图、()和加工说明等描述工具,即用直观的图和简洁的语言来描述软系统模型。
A、DFD图B、数据字典C、IPO图D、PAD图
9.面向数据流的软件设计方法,一般是把数据流图中数据流划分为(),再将数据流图映射为软件结构。
A、数据流和事务流B、交换流和事务流C、信息流和控制流D、交换流和数据流
10.总体设计的结果是提供一份()。
A、模块说明书B、框图C、程序D、数据结构
软件是()。
A.处理对象和处理规则的描述B.程序C.程序及其文档D.计算机系统
2.软件需求规格说明的内容不应包括()。
A.主要功能B.算法的详细描述C.用户界面及运行环境D.软件的性能
3.程序的三种基本控制结构是()。
A.过程、子程序和分程序B.顺序、选择和重复
C.递归、迭代和回溯D.调用、返回和转移
4.面向对象的分析方法主要是建立三类模型,即()。
A)系统模型、ER模型、应用模型B)对象模型、动态模型、应用模型
C)E-R模型、对象模型、功能模型D)对象模型、动态模型、功能模型
5.在E-R模型中,包含以下基本成分()。
A)数据、对象、实体B)控制、联系、对象
C)实体、联系、属性D)实体、属性、操作
6.各种软件维护的类型中最重要的是()。
A)完善性维护B)纠错性维护C)适应性维护D)预防性维护
7.软件测试的目标是()。
A.证明软件是正确的B.发现错误、降低错误带来的风险
C.排除软件中所有的错误D.与软件调试相同
8.软件生命周期中所花费用最多的阶段是()
9.若有一个计算类型的程序,它的输入量只有一个X,其范围是[,],现从
输入的角度考虑一组测试用例:
,,.设计这组测试用例的方法是()
A.条件覆盖法B.等价分类法C.边界值分析法D.错误推测法
10、详细设计的基本任务是确定每个模块的()设计
A.功能B.调用关系C.输入输出数据D.算法
11.设函数C(X)定义问题X的复杂程序,函数E(X)确定解决问题X需要的工
作量(时间)。
对于两个问题P1和P2,如果C(P1)>
C(P2)显然E(P1)>
E(P2),则得
出结论E(P1+P2)>
E(P1)+E(P2)就是:
A.模块化的根据B.逐步求精的根据C.抽象的根据D.信息隐藏和局部化的根据
12.下面几种白箱测试技术,哪种是最强的覆盖准则()
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.发现了至今为止尚未发现的错误__
简述软件测试的任务、目的与类型。
软件测试是一个为了寻找软件错误而运行程序的过程。
目的就是为了发现软件中的错误。
一个好的测试用例是指很可能找到迄今为止尚未发现
的错误的用例。
一个成功的测试是指揭示了迄今为止尚未发现的错误的测试。
软件测试
主要分为白盒测试和黑盒测试两大类。
简述软件工程目标和面临的主要问题。
软件工程的目标是应用计算机科学、数学及管理科学等原理开发软件的工程。
它采用经
过实践验证的工程的原则、方法,以提高质量,降低成本。
但是目前的软件开发面临着许多问题:
(1)对软件开发成本和进度的估计常常很不准
确。
(2)用户常对“已完成的”软件系统不满意。
(3)软件产品的质量往往靠不住。
(4)
软件常常很难维护。
(5)软件常常缺乏适当的文档资料。
(6)软件开发生产率提高的
速度,远远跟不上计算机应用迅速普及深入的趋势。
(7)软件成本在计算机系统总成本
中所占的比例逐年上升。
简述软件开发过程、每个里程碑的提交物。
软件开发的基本过程:
(1)可行性研究,做初步的需求分析工作,决定项目可行与否
(2)软件需求分析,软件工程师必须了解软件的信息领域,以及需求的功能、行为、
性能和接口。
系统需求和软件需求均需文档化,并与用户一起复审。
并提交需求分析报
告。
(3)设计,包括总体设计和详细设计,软件设计是一个多步骤的过程,主要是对
软件的数据结构、软件体系结构、界面表示及过程细节进行设计。
设计过程将需求转换
为软件表示,在编码之前可以评估其质量,所有设计均要文档化,它是软件配置的重要
组成部分,经复审后提交相应的概要设计和详细设计报告。
(4)编码,把设计转化为
机器可执行的程序。
提交源程序清单。
(5)测试,提交测试报告。
(6)维护,提交维
护报告。
软件生命周期模型?
瀑布模型?
快速原型模型?
答;
概括的说,软件生命周期模型由软件定义、软件开发和运行维护3个时期组成,每个时
期又进一步划分成若干个阶段。
软件生命周期模型有问题定义,可行性研究,需求分析,总体详细设计,总体编码和单元测试,综合测试,软件维护组
瀑布模型是一个项目开发架构,开发过程是通过设计一系列阶段顺序展开的,从系统需
求分析开始直到产品发布和维护,每个阶段都会产生循环反馈,如果有信息未被覆盖或
者发现了问题,那么最好“返回”上一个阶段并进行适当的修改,项目开发进程从一个阶
段“流动”到下一个阶段。
快速原型模型是在用户不能给出完整、准确的需求说明,或者开发者不能确定算法的有
效性、操作系统的适应性或人机交互的形式等许多情况下,可以根据用户的一组基本需
求,快速建造一个原型(可运行的软件),然后进行评估,进一步精化、调整原型,使其
满足用户的要求,也使开发者对将要做的事情有更好的理解。
软件?
软件产品具有哪些特性?
软件是计算机系统中与硬件相互依存的另一部分,它是包括程序,数据及其相关文档的
完整集合。
软件产品具有以下特性:
1、非常复杂;
2、成本高;
3、风险大;
4、维护困难;
可行性分析的目的和主要任务是什么?
可行性分析的目的不是解决问题,而是确定问题是否值得去解决。
主要任务是从下面几方面研究每种解法的可行性:
技术可行性,经济可