教育软件工程练习题附答案Word文档格式.docx
- 文档编号:21740749
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:17
- 大小:178.49KB
教育软件工程练习题附答案Word文档格式.docx
《教育软件工程练习题附答案Word文档格式.docx》由会员分享,可在线阅读,更多相关《教育软件工程练习题附答案Word文档格式.docx(17页珍藏版)》请在冰豆网上搜索。
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.采用Gantt图表示软件项目进度安排,下列说法中正确的是()
A.能够反映多个任务之间的复杂关系
B.能够直观表示任务之间相互依赖制约关系
C.能够表示哪些任务是关键任务
D.能够表示子任务之间的并行和串行关系
20.下列模型属于成本估算方法的有()
A.COCOMO模型B.McCall模型
C.McCabe度量法D.时间估算法
21.在下列工具与环境中()属于较早期的CASE。
A.基于信息工程CASE
B.人工智能CASE
C.结构的基于图形CASE
D.集成的CASE环境
22.Putnam成本估算模型是一个()模型。
A.静态单变量B.动态单变量C.静态多变量D.动态多变量
23.在McCall软件质量度量模型中,()属于面向软件产品修改。
A.可靠性B.可重用性C.适应性D.可移植性
24.ISO的软件质量评价模型由3层组成,其中用于评价设计质量的准则是()
A.SQICB.SQMCC.SQRCD.SQDC
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.软件工程的纵向分解是把软件开发分为几个( )
A.模块B.阶段
C.子系统D.过程
42.McCall软件质量度量模型中属于面向软件产品操作的是( )
A.适应性B.可重用性
C.可测试性D.可用性
43.快速原型模型中,用于及早向用户提交一个原型系统的是( )
A.实验型原型B.探索型原型
C.提交型原型D.演化型原型
44.软件维护中,因重新初始化控制标志或指针而引起的错误是以下哪一项的副作用?
( )
A.文档B.数据
C.编码D.设计
45.软件维护费用高的主要原因是( )
A.生产率高B.生产率低
C.人员多D.人员少
46.根据对软件开发机构调查的结果可知,各类维护活动所占的比重是( )
A.完善性占50%,适应性占25%,校正性占21%,其他维护占4%
B.完善性占25%,适应性占50%,校正性占21%,其他维护占4%
C.完善性占21%,适应性占25%,校正性占50%,其他维护占4%
D.完善性占21%,适应性占50%,校正性占25%,其他维护占4%
47.下列属于用白盒技术设计测试用例的是( )
A.错误推测B.逻辑覆盖
C.等价类划分D.因果图
48.有助于培养良好的编程风格并且第一个体现了结构化编程思想的程序设计语言是( )
A.PASCALB.FORTRAN
C.DL/1D.C
49.在软件详细设计过程中不采用的工具为( )
A.判定表B.PDL
C.数据流图D.IPO图
50.根据输入输出的数据结构产生程序结构的设计方法是( )
A.PARNAS方法B.JACKSON方法
C.WIRTH方法D.DIJKSTRA方法
51.在软件设计中,为解决一个大而复杂的问题把软件系统划分成一个个完成某一特定的子功能的方法称为( )
A.细化B.结构化
C.模块化D.抽象化
52.结构化方法在建立软件系统的结构模块时按照以下哪种方法进行?
A.由底向上B.自顶向下
C.随机D.回归
53.两个模块之间传递的是同一个数据结构的地址,这种耦合方式称为( )
A.控制耦合B.公共耦合
C.标记耦合D.数据耦合
54.结构化设计是以哪个阶段产生的DFD图为基础,按一定的步骤映射成软件结构?
A.可行性分析B.需求分析
C.概要设计D.详细设计
55.结构化方法的基本原则是功能的分解和( )
A.模块化B.信息隐蔽
C.抽象D.细化
56.数据字典和数据流程图共同构成了系统的( )
A.物理模型B.逻辑模型
C.原型D.目标模型
57.软件需求不应包括( )
A.功能要求B.环境需求
C.标准实现的空间需求D.用户界面要求
58.项目开发计划是什么类型的文档?
A.设计性B.进度表示
C.需求分析D.管理性
59.瀑布模型是一种什么模型?
A.风险驱动模型B.线性开发模型
C.增量模型D.迭代模型
60.软件工具一般是为软件人员开发和维护活动而使用的( )
A.硬件环境B.说明书
C.软件D.程序
二、填空题
1.瀑布模型是以文档为驱动、适合于________的软件项目的模型。
2.纯收入是指在整个生存周期之的________与投资之差。
3.数据项是指________数据单元。
4.软件概要设计的主要任务就是________。
5.结构化程序设计方法是使用________构造程序。
6.软件开发是一个自顶向下逐步细化和求精过程,而软件测试是一个_______集成的过程。
7.软件维护的容包括校正性维持,适应性维护、_________和预防性维护。
8.CASE工具的平台集成指工具运行在相同的________平台上。
9.在建立对象的功能模型时,使用的数据流图中包含有处理、数据流、动作对象和_______。
10.将开发项目与一个或多个已完成的类似项目进行比较,找出与某个相类似项目的若干不同之处,并估算每个不同之处对成本的影响,得出开发项目的总成本。
这种成本估算方法称为________。
11.在软件开发过程中要产生大量的信息,要进行大量的修改,能协调软件开发,并使混乱减到最低程度。
12.规定功能的软件,在一定程度上对自身错误的作用(软件错误)具有屏蔽能力,则称此软件具有的软件。
13.McCall提出的软件质量模型包括个软件质量特性。
14.软件可维护性度量的七个质量特性是可理解性、可测试性、可修改性、可靠性、、可使用性和效率。
15.为了便于对照检查,测试用例应由输入数据和预期的两部分组成。
16.程序设计语言的心理特性主要表现在、简洁性、传统性、局部性和顺序性。
17.软件结构是以为基础而组成的一种控制层次结构。
18.在结构化分析中,用于描述加工逻辑的主要工具有三种,即:
结构化语言、判定表、
。
19.结构化语言是介于自然语言和之间的一种半形式语言。
20.若年利率为i,不计复利,n年后可得钱数为F,则现在的价值P=。
21.软件项目计划是______________阶段的结果产品。
22.McCall质量度量模型高层特性包含面向软件产品操作、产品修改和______________三个方面的11个特性。
23.在面向对象方法中,______________是子类共享父类数据结构和方法的机制,体现了类之间的一种关系。
24.演化提交模型是在______________的基础上,项目开发的各阶段都进行增量开发。
25.软件编码是将______________阶段产生的算法,用某种程序设计语言编写成程序的过程。
26.IDEF0用来描述系统的功能活动及其联系,建立系统的______________模型。
27.两个模块之间把简单的数值作为参数传递,这种耦合方式为______________。
28.把在几个模块中都出现的一些毫无联系的处理序列抽出来组成一个新的模块,那么这个模块的聚性是______________。
29.成本效益分析的目的是从______________角度评价开发一个新的软件项目是否可行。
30.软件工程的主要思想是在软件生产中用______________代替传统手工方法。
三、名词解释(每小题3分,共15分)
1.信息隐蔽
2.集成测试
3.多态性
4.CASE
5.SA
6.软件生存周期模型
7.数据字典(DD)
8.聚性
9.JSP方法
10.多态性
11.软件工程过程
12.基线
13.静态测试
14.PAD
15.需求分析
四、简答题
1.简述软件工程目标和面临的主要问题。
2.简述结构化程序设计方法的基本要点。
3.简述文档在软件工程中的作用。
4.简述提高可维护性的方法。
5.简述容错技术的四种主要手段,并解释。
6.以G.J.Myers的观点,简述对软件测试的目的。
7.就程序设计语言的工程特性而言,对程序编码有哪些要求?
8.模块的聚性包括哪些类型?
五、应用题
1.某旅馆的服务如下:
可以拨分机号和外线。
分机号是从7201至7299。
外线先拨9,然后是市话或长话。
长话是以区号和市话组成。
区号是从100到300中任意的数字串。
市话是以局号和分局号组成。
局号可以是455,466,888,552中任意一个。
分局号是任意长度为4的数字串。
要求:
写出在数据字典中,的数据条目的定义(即组成)。
2.某培训中心要研制一个计算机管理系统。
它的业务是:
将学员发来的信件收集分类后,按几种不同的情况处理。
1)如果是报名的,则将报名数据送给负责报名事务的职员,他们将查阅课程文件,检查该课程是否额满,然后在学生文件、课程文件上登记,并开出报告单交财务部门,财务人员开出发票给学生。
2)如果是想注销原来已选修的课程,则由注销人员在课程文件、学生文件和帐目文件上做相应的修改,并给学生注销单。
3)如果是付款的,则由财务人员在帐目文件上登记,也给学生一收费收据。
(1)对以上问题画出数据流程图。
(2)画出该培训管理的软件结构图的主图。
3.下面是某程序的流程图:
(1)计算它的环路复杂性。
(2)为了完成基本路径测试,求它的一组独立的路径。
4.某图书馆的预定图书子系统有如下功能:
(1)由供书部门提供书目给订购组;
(2)订书组从各单位取得要订的书目;
(3)根据供书目录和订书书目产生订书文档留底;
(4)将订书信息(包括数目,数量等)反馈给供书单位;
(5)将未订书目通知订书者;
(6)对于重复订购的书目由系统自动检查,并把结果反馈给订书者。
试根据要求画出该问题的数据流程图,并把其转换为软件结构图。
参考答案
一、单项选择题
1.C2.B3.B4.D5.D
6.D7.D8.D9.A10.C
11.C12.D13.B14.D15.C
16.D17.B18.C19.D20.A
21.C22.D23.C24.D25.B
26.C27.B28.B29.A30.D
31.B32.B33.A34.C35.A
36.D37.D38.C39.B40.D
41.B42.D43.D44.B45.B
46.A47.B48.A49.C50.B
51.C52.B53.C54.B55.C
56.B57.C58.D59.D60.C
1.软件需求明确
2.累计经济效益(折合成现在值)
3.不可再分解的
4.软件结构的设计
5.三种基本控制结构
6.自底向上或相反顺序
7.完善性维护
8.硬件/操作系统
9.数据存储对象
10.差别估算法
11.软件配置管理
12.容错功能
13.11
14.可移植性
15.输出结果
16.歧义性
17.模块
18.判定树
19.形式语言
20.F/(1+(n*i))
21.可行性研究
22.产品适应
23.继承性
24.瀑布模型
25.详细设计
26.功能
27.数据耦合
28.偶然聚
29.经济角度
30.工程化方法
三、名词解释
1.信息隐蔽是指在设计和确定模块时,使得一个模块包含的信息(过程或数据),对于不需要这些信息的其他模块来说是不能访问的。
2.集成测试也称组装测试或联合测试。
是指在单元测试的基础上,将所有模块按照设计要求组装成一个完整的系统进行的测试。
组装模块的方式有两种:
渐增式测试和非渐增式测试。
3.多态性是指相同的操作或函数、过程可作用于多种类型的对象上并获得不同结果。
不同的对象,收到同一消息可以产生不同的结果,这种现象称为多态性。
4.CASE是一组工具和方法的集合,可以辅助软件开发生命周期各阶段进行软件开发。
CASE把软件开发技术、软件工具和软件开发方法集成到一个统一而一致的框架中,并且吸收了CAD(计算机辅助设计)、软件工程、操作系统、数据库、网络和许多其他计算机领域的原理和技术。
因而,CASE领域是一个应用、继承和综合的领域。
5.结构化分析方法是需求分析中使用最多的方法之一,适用于数据处理类型软件的需求分析。
基本思想是采用自顶向下,逐步分解的方法分析整个系统,有效地控制系统开发的复杂性。
6.是描述软件开发过程中各种活动如何执行的模型。
7.数据字典是用来定义数据流图中的各个成分的具体含义的。
它以一种准确的、无二义性的说明方式为系统的分析、设计及维护提供了有关元素的一致的定义和详细的描述。
8.聚性是模块独立性的衡量标准之一,它是指模块的功能强度的度量,即一个模块部各个元素彼此结合的紧密程度的度量。
9.JSP方法是面向数据结构的设计方法,其定义了一组以数据结构为指导的映射过程,它根据输入,输出的数据结构,按一定的规则映射成软件的过程描述,即程序结构。
10.指相同的操作或函数、过程可作用于多种类型的对象上并获得不同结果。
或(不同的对象,收到同一消息可以产生不同的结果。
)
11.软件工程过程规定了获取、供应、开发、操作和维护时,要实施的过程、活动和任务。
12.是软件生存期中各开发阶段的一个特定点,这的作用是把各开发阶段的工作的划分更加明确化,使本来连续的工作在这些点上分开,以便于检查和肯定阶段性成果。
13.指被除数测程序不在机器上运行,而是采用人工检测和计算机辅助静态分析的手段对程序进行检测。
14.PAD是指程序分析图,是一种算法描述工具,它是一种从左向右展开的二维树型结构
15.是反映开发人员要准确理解用户的要求,进行细致的调查分析,将用户非形式的需求述转化为完整的需求定义,再由需求定义转化为相应的形式功能规约的过程。
1.软件工程是一门工程性的学科,其目标主要是成功地建造一个大型软件系统。
包括:
付出较低的开发成本;
达到要求的软件功能;
取得较好的软件性能;
开发的软件易于移植;
需要较低的维护费用;
能按时完成开发任务,及时交付使用;
开发的软件可靠性高。
面临的主要问题是:
软件费用软件可靠性软件维护软件生产率软件重用。
2.
(1)采用自顶向下,逐步求精的程序设计方法。
(2)使用三种基本控制结构构造程序,分别是顺序,选择和循环
(3)采用主程序员组的组织形式。
3.
(1)提高软件开发过程的能见度
(2)提高开发效率
(3)作为开发人员阶段工作成果和结束标志
(4)记录开发过程的有关信息便于使用与维护;
(5)提供软件运行、维护和培训有关资料;
(6)便于用户了解软件功能、性能。
4.
(1)建立明确的软件质量目标
(2)利用先进的软件开发技术和工具
(3)建立明确的质量保证工作
(4)选择可维护的程序设计语言
(5)改进程序文档
5.结构冗余:
包括静态冗余、动态冗余和混合冗余。
信息冗余:
为检测或纠正信息在运算或传输中的错误,须外加一部分信息。
时间冗余:
指重复执行指令或程序来消除瞬时错误带来的影响。
冗余附加技术:
指为实现上述冗余技术所需的资源和技术。
6.软件测试是
(1)为了发现错误而执行程序的过程;
(2)一个好的用例能够发现至今尚未发现的错误的测试。
(3)一个成功的测试是发现至今尚未发现的错误的测试。
7.就程序设计语言的工程特性而言,对程序编码有如下要求:
(1)可移植性
(2)开发工具的可利用性
(3)软件的可重用性
(4)可维护性
8.模块的聚性包括:
(1)偶然聚
(2)逻辑聚
(3)时间聚
(4)通信聚
(5)顺序聚
(6)功能聚
1.解
=分机号|外线
分机号=7201...7299
外线=9+[市话|长话]
长话=区号+市话
区号=100...300
市话=局号+分局号
局号=[455|466|888|552]
分局号=4{数字}4
2.解:
(1)数据流图
(2)软件结构图
3.解:
(1)环路复杂性=判断数+1=6+1=7(个)
(2)路径1:
(0)—①—(13)—(19)
路径2:
(0)—②—③—(14)—(19)
路径3:
(0)—②—④—⑤—(15)—(19)
路径4:
(0)—②—④—⑥—⑦—(16)—(19)
路径5:
(0)—②—④—⑥—⑧—⑨—(17)—(19)
路径6:
(0)—②—④—⑥—⑧—⑩—(18)—(19)
路径7:
(0)—②—④—⑥—⑧—⑩—(12)—(19)
4.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 教育 软件工程 练习题 答案
![提示](https://static.bdocx.com/images/bang_tan.gif)