软件工程考试带版Word格式文档下载.docx
《软件工程考试带版Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《软件工程考试带版Word格式文档下载.docx(17页珍藏版)》请在冰豆网上搜索。
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.软件项目计划一般不包括以下哪项内容()
A、培训计划B、人员安排
C、进度安排D、软件开发标准的选择和制定
11.下列关于效率的说法不正确的是()
丸效率是一个性能要求,其目标应该在需求分析时给出
B.提高程序效率的根本途径在于选择良好的设计方法,数据结构与算
法
C.效率主要指处理机时间和存储器容量两个方面
D.程序的效率与程序的简单性无关
12.数据字典是用来定义()中的各个成份的具体含义的。
A.流程图B.功能结构图
C.系统结构图D.数据流图
13.软件生命周期中所花费用最多的阶段是()
A.详细设计B.软件编码C.软件测试D.软件维护
14.程序的三种基本控制结构是()
A.过程、子程序和分程序
B.顺序、选择和重复’
C.递归、堆栈和队列
D.调用、返回和转移
15.单元测试阶段主要涉及()的文档。
A.需求设计B.编码和详细设计
C.详细设计n概要设计
三、判断题(共20分,每小题2分。
对“√”,错“X”)
1.螺旋模型是在瀑布模型和增量模型的基础上增加了风险分析活动。
(T)
2.数据字典是对数据流图中的数据流,加工、数据存储、数据的源和
终点进行详细定义。
(F)
3.软件是指用程序设计语言(女[1PASCAL,C,VISUALBASIC等)编写
的程序,软件开发实际上就是编写程序代码。
(F)
4.软件模块之间的耦合性越弱越好。
5.在面向对象的软件开发方法中,每个类都存在其相应的对象,类是
对象的实例,对象是生成类的模板。
6.过程描述语言可以用于描述软件的系统结构。
7.如果通过软件测试没有发现错误,则说明软件是正确的。
(F)
8.快速原型模型可以有效地适应用户需求的动态变化。
9.模块化,信息隐藏,抽象和逐步求精的软件设计原则有助于得到高
内聚,低耦合度的软件产品。
10.集成测试主要由用户来完成。
四、名词解释与简答题(共20分)
1、解释“内聚”(4分)
从功能的角度对模块内部聚合能力的量度。
2、解释“聚集关系”(4分)
表示类或对象之间的整体与部分的关系。
3、解释“数据词典”(5分)
是描述数据信息的集合,它对数据流图中的各个元素按规定格式进行详细的描述和确切的解释,是数据流图的补充工具。
4、说明结构化程序设计的主要思想是什么?
(6分)
(1)自顶向下、逐步求精的程序设计方法(2分)
(2)使用3种基本控制结构、单入口、单出口来构造程序。
(3分)
5、变换分析设计的步骤?
(1)区分传入、传出和变换中心三部分,划分DFD图的分界线;
(2)完成第一级分解:
建立初始SC图的框架;
(3)完成第二级分解:
分解SC图的各个分支;
五、应用题(共10分)
工资计算系统中的一个子系统有如下功能:
(1)计算扣除部分一山基本工资计算出应扣除(比如水电费、缺勤)
的部分;
(2)计算奖金部分一根据职工的出勤情况计算出奖励金:
(3)计算工资总额部分一根据输入的扣除额及奖金计算出总额;
(4)计算税金部分一山工资总额中计算出应扣除各种税金;
(5)生成工资表一根据计算总额部分和计算税金部分传递来的有关
职工工资的详细信息生成工资表。
试根据要求画出该问题的数据流程图。
1.从结构化程序设计到面向对象程序设计,是程序设计方法的又
一次飞跃。
2.数据流图和数据字典共同构成了系统的逻辑模型,是需求规格
说明书的主要组成部分。
3.划分模块时尽量做到高内聚、低耦合,保持模块的独立性,尽量使
用公公模块。
4.软件生存周期是指一个软件从提出开发开始直到软件废弃
为止的整个时期。
5.在单元测试时,需要为被测模块设计测试用例。
6.软件著作权登记的3种主要类型:
(1)著作权登记:
(2)著作权延
续登记;
(3)权利转移备案登记。
7.结构化设计以数据流图为基础,按一定的步骤映射成。
8.软件维护工作的生产性活动包括分析评价、修改设计和编写
程序代码等。
9.如果一个模块被n个模块调用,其中直接的上级模块的个数是m
’n)那么该模块的扇入数是n个。
10.为了使应用软件适应计算机环境的变化而修改软件的过程称
为适应性维护。
二、选择题(共30分,每小题2分)‘
1.与确认测试阶段有关的文档是()。
A.需求规格说明书B.概要设计说明书
C.详细设计说明书D.源程序
2.以下说法错误的是()。
A.文档仅仅描述和规定了软件的使用范围及相关的操作命令
B.文档也是软件产品的—部分,没有文档的软件就不成软件
C.软件文档的编制在软件开发工作中占有突出的地位和相当大的工作
量
D.高质量文档对于发挥软件产品的效益有着重要的意义
3.一个项目是否开发,从经济上来说是否可行,归根结底是取决于()。
A.成本估算B.项目计划
C.工程管理D.工程网络图
4.火车是一种陆上交通工具。
火车和陆上交通工具之间的关系是()
关系。
A.组装B.整体部分
C.hasaD.一般特殊
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.控制耦合B.公共耦合
C.内容耦合D.数据耦合
12.表示对象相互行为的模型是()模型。
A.动态模型B.功能模型
C.对象模型D.静态模型
13.在软件开发中,()是指对将要开发的系统的开发成本进行
估算,然后与可能取得的效益进行比较和权衡。
A.成本一效益分析B.可行性分析
C.结构化分析D.软件需求分析
14.软件测试的目的是()
丸为了表明程序没有错误
B.为了说明程序能正确地执行
C.为了发现程序中的错误
D.为了评价程序的质量
15.结构化程序设计采用的三种基本控制结构是()
A.顺序、分支、选择B.选择、循环、重复
C.顺序、选择、循环D.输入、变换、输出
三、判断题(共20分,每小题2分。
1.概要设计阶段完成的主要文档是概要设计说明书。
2.过大的模块可能是由于分解不充分造成的,即使降低模块独立性也
必须继续分解。
3.程序设计语言中应绝对禁止使用GOTO语句。
4.随着软件技术的发展,人们逐渐认识到编码不仅要强调效率还要强
调清晰。
5.为保证程序的安全,必须做到程序中没有任何错误存在,即容错。
6.如果把软件开发所需的资源画成一个金字塔,人是最基本的资源。
7.螺旋模型是在瀑布模型和增量模型的基础上增加了风险分析活动。
8.如果通过软件测试没有发现错误,则说明软件是正确的。
9.集成测试主要由用户来完成。
10.在可行性研究中最难决断和最关键的问题是经济可行性。
四、名词解释与简答题(共20分)
1、解释“白盒测试”(4分)
按照程序内部的结构测试程序,检验程序中的每条路径是否都能按预定要求正确工作。
有两种测试法既逻辑覆盖测试法和路径测试法
2、解释“软件配置”(4分)
是一个软件在生存周期内,他的各种形式、各种版本的文档与程序的总称
3、变换型数据流由哪几部分组成?
(5分)’
变换型结构由三部分组成:
传入路径、变换(加工)中心和传出路径。
4、什么是模块化?
模块设计的准则?
(6分)
模块化是按规定的原则将一个大型软件划分为一个个较小的、相对独立但又相关的模块。
模块设计的准则:
(1)改进软件结构,提高模块独立性:
在对初步模块进行合并、分解和移动的分析、精化过程中力求提高模块的内聚,降低藕合。
(2)模块大小要适中:
大约50行语句的代码,过大的模块应分解以提高理解性和可维护性;
过小的模块,合并到上级模块中。
(3)软件结构图的深度、宽度、扇入和扇出要适当。
一般模块的调用个数不要超过5个。
(4)尽量降低模块接口的复杂程度;
(5)设计单入口、单出口的模块。
(6)模块的作用域应在控制域之内。
5、软件测试包括哪些步骤?
说明这些步骤的测试目的是什么?
(1)单元测试,目的是代码达到模块说明书的要求
(2)集成测试,目的是将经过单元测试的模块逐步组装成具有良好一致性的完整的程序(3)确认测试,目的是确认程序系统是否满足软件需求规格说明书的要求
(4)系统测试,目的是检查能否与系统的其余部分协调运行,并且完成SRS对他的要求。
五、应用题:
把下面变换型数据流图映射成软件结构图:
一、填空题(共20分,每空格或小题2分)
1.在信息处理和计算机领域内,一般认为软件是程序、数据和文档
2.数据流图的基本组成部分有数据的源点与终点、数据流、加工和数据文件。
3.划分模块时尽量做到高内聚、低耦合,保持模块的独立性,尽量使用公共模块。
4.人们常用硬件可靠性的定量度量方法来度量软件的可靠性和可用性,常用的度量软件可靠性的两个指标是成功地运行的概率和平均故障时间
5.软件的风险分析可包括风险识别、风险预测和风险驾驭(或风险管理)等3项活动。
6.软件著作权登记的3种主要类型:
(1)著作权登记;
(2)著作权延续登记;
(3)权利转移备案登记。
7.软件工程管理的主要内容有:
项目经费管理,软件质量管理,项目进度管理和人员管理。
8.面向对象分析的目的是对客观世界的系统进行建模。
9.软件维护工作的生产性活动包括分析评价、修改设计和编写程序代码等。
10.从结构化程序设计到面向对象程序设计,是程序设计方法的又一次飞跃。
1.瀑布模型的关键不足在于()。
C.过于灵活D.不能适应需求的动态变更
2.结构化设计是一种面向()的设计方法。
A数据流B.模块
C.数据结构D.程序
3.在考察系统的一些涉及时序和改变的状况时,要用动态模型来表示。
动态模型着重于系统的控制逻辑,它包括两个图:
一个是事件追踪图,另一个是()。
A.数据流图D.状态图
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.结构化方法是一种()的软件开发方法。
A.面向用户B.面向数据结构
C.面向对象D面向数据流
11.需求分析是回答系统必须()的问题。
A.做什么B.怎么做
C.何时做D为谁做
12.软件维护的困难主要原因是()
A.费用低B.人员少
C.开发方法的缺陷D.维护难
13.数据流图(DFD)是方法中用于表示系统的逻辑模型的一种图形工具。
()
A.SAB.SD
C.SPD.SC
14.螺旋模型是一种将瀑布模型和结合起来的软件开发模型。
A.增量模型B.专家系统
C.喷泉模型D.变换模型
15.在软件测试中,白盒测试方法是通过分析程序的()来设计测试用例的方法。
A应用范围B.内部逻辑
C.功能D.输入数据
1.确认测试计划应该在可行性研究阶段制定。
2.软件概要设计包括软件系统结构设计以及数据结构和数据库设计。
3.在可行性研究中最难决断和最关键的问题是经济可行性。
4.耦合是指一个模块内各个元素彼此结合的紧密程度。
5.软件模块之间的耦合性越强越好。
6.如果通过软件测试没有发现错误,则说明软件是正确的。
7.模块化,信息隐藏,抽象和逐步求精的软件设计原则有助于得到高内聚,低耦合度的软件产品。
8.程序设计语言中应绝对禁止使用GOTO语句。
9.概要设计阶段完成的主要文档是概要设计说明书。
10.随着软件技术的发展,人们逐渐认识到编码不仅要强调效率还要强调清晰。
1、解释“耦合”(4分)
一个软件结构内不同模块之间互连程度的度量。
2、解释“泛化关系”(4分)
表示类或对象之间的一般与特殊的关系
3、解释“白盒测试”(5分)
4、详细设计的任务是什么?
(1)为每个模块确定采用的算法;
(2)确定每一模块使用的数据结构;
(3)确定模块接口的细节;
(4)编写过程设计说明书;
(5)设计每一模块的测试用例。
5、为什么说软件的维护是不可避免的?
因为软件的开发过程中,一般很难检测到所有的错误,其次软件在应用过程中需要随用户新的要求或运行环境的变化而进行软件的修改或完成功能的增删等,为了提高软件的应用水平和使用寿命,软件的维护是不可避免的。
试由下面的程序流程图导出程序图:
1.从结构化程序设计到面向对象程序设计,是程序设计方法的又一次飞跃。
2.在单元测试时,需要为被测模块设计测试用例
3.软件生存周期是指一个软件从提出开发要求开始直到软件废弃为止的整个时期。
4.为了使应用软件适应计算机环境的变化而修改软件的过程称为适应性维护。
5.软件维护工作的生产性活动包括分析评价、修改设计和编写程序代码等。
6.曾被誉为“程序设计方法的革命”的结构化程序设计,使程序设计从主要依赖于程序员个人的自由活动变成为有章可循的一门科学。
7.如果一个模块被m个模块调用,其中直接的上级模块的个数是n个(n<
=m)那么该模块的扇入数是n个。
8.在信息处理和计算机领域内,一般认为软件是程序、数据和文档
9.数据流图的基本组成部分有数据的源点与终点、数据流、加工、数据文件和。
10.类的实例化是对象。
二、选择题(共30分,每小题2分)
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.为使得开发人员对软件产品的各个阶段工作都进行周密的思考,从而减少返工,所以()的编制是很重要的。
A、需求说明B、概要说明
C、软件文档D、测试计划
9.汽车有一个发动机,因而汽车与发动机之间的关系是()关系。
A、一般与特殊B、整体与部分
C、分类关系D、isa关系
10.DFD中的每个加工至少需要()
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.都属于动态测试
对“√”,错“×
”)
1.白盒测试无需考虑模块内部的执行过程和程序结构,只要了解模块的功能即可。
2.一笔交易、一个动作、甚至操作人员按一个按钮都可以看做是一次事物。
3.确认测试计划应该在可行性研究阶段制定。
(F)
4.集成测试主要由用户来完成。
5.为保证程序的安全,必须做到程序中没有任何错误存在,即容错。
6.模块化,信息隐藏,抽象和逐步求精的软件设计原则有助于得到高内聚,低耦合度的软件产品。
7.软件模块之间的耦合性越弱越好。
(T)
8.随着软件技术的发展,人们逐渐认识到编码不仅要强调效率还要强调清晰。
9.程序设计语言中应绝对禁止使用GOTO语句。
10.软件是指用程序设计语言(如PASCAL,C,VISUALBASIC等)编写的程序,软件开发实际上就是编写程序代码。
1、