软件工程期末试卷复习资料
软件工程复习资料精选全文完整版

可编辑修改精选全文完整版一、单选题(共20题,40分)1、使用数据流图,并不断细化的需求获取方法是()。
(2.0)A、简易的应用规格说明B、面向数据流自顶向下逐步求精C、访谈D、快速原型法正确答案: B2、Z语言是以()为基础的形式化规格说明语言。
(2.0)A、微积分B、概率C、图形D、一阶谓词演算正确答案: D3、HIPO是指(2.0)A、层次输入处理输出图或表B、层次功能结构图C、功能结构图D、输入处理输出图或表正确答案: A4、高铁调用系统最适宜采用()方法。
(2.0)A、有穷状态机B、 Petri网C、 Z语言D、一阶线性时态逻辑正确答案: B5、假设学生年龄的成绩输入范围为18-25,则根据等价类划分技术,下列划分正确的是()。
(2.0)A、可划分为2个有效等价类,2个无效等价类B、可划分为1个有效等价类,2个无效等价类C、可划分为2个有效等价类,1个无效等价类D、可划分为1个有效等价类,1个无效等价类正确答案: B6、用于并发系统,解决定时问题的形式化方法是()。
(2.0)A、 VDMB、 Z语言C、 Petri网D、一阶线性时态逻辑正确答案: C7、软件生命周期中所花费费用最多的阶段是(2.0)A、需求分析B、软件总体设计C、软件维护D、软件实现正确答案: C8、软件质量保证措施SQA不包括:(2.0)A、复审或评审B、软件测试C、程序正确性证明D、软件代码编写正确答案: D9、希望确定软件实现的功能是否与需求规格说明书一致,需进行()。
(2.0)A、单元测试B、有效性测试C、确认测试D、集成测试正确答案: C10、总体设计不包括:(2.0)A、体系结构设计B、数据库设计C、模块内算法设计D、逻辑数据结构设计正确答案: C11、关于类和对象的说法,正确的是(2.0)A、一个类只能有一个角色B、类的命名必须用动词C、类的所有对象都具有相同的属性和操作D、类是对象的实例,对象是类的抽象正确答案: C12、数据字典的基本功能是(2.0)A、数据库设计B、数据通信C、数据定义D、数据维护正确答案: C13、软件需求规格说明的内容不应该包括(2.0)A、主要功能B、算法的描述C、用户界面及其运行环境D、软件性能正确答案: B14、增量模型在添加新的模块时,有一个要求是()(2.0)A、需要更多的测试B、有足够的开发人员C、软件体系结构开放D、各个模块都要进行评审正确答案: C15、在软件详细设计过程中不采用的工具是(2.0)A、判定表B、PDLC、程序流程图D、DFD正确答案: D16、软件测试方法中,黑盒测试方法和白盒测试方法是常用的方法,其中黑盒测试方法主要用于测试(2.0)A、结构合理性B、软件外部功能C、程序正确性D、程序内部逻辑正确答案: B17、耦合是模块之间的相对独立性的度量。
软件工程期末考试复习题大全解析

一、填空题1.软件生存周期一般可分为问题定义、可行性研究、需求分析、软件设计、程序编写、软件测试、运阶段。
2.软件生存期分计划、开发、运行三大阶段3.可行性研究的目的不是去开发一个软件项目,而是研究这个软件项目是否有可行的解、_是否值得去解决_。
4.系统流程图是描述_物理系统__的传统工具。
5.数据流图和数据字典共同构成系统的逻辑模型。
6.结构化分析方法是面向数据流进行需求分析的方法。
7.一个模块的作用范围应该在其控制范围之内,且判定所在模块应与受其影响的模块在层次上尽量靠近8.模块之间联系越紧密,其耦合性就越强,模块的独立性就越弱。
9.PAD图清晰地反映了程序的层次结构,图中的竖线为程序的层次线。
10.JSP方法定义了一组以数据结构为指导的映射过程,它根据输入、输出的数据结构,按一定的规则映射成软件的过程描述,即程序结构,而不是软件的体系结构,因此该方法适用于详细设计阶段。
11.任何程序都可由顺序、选择、重复三种基本结构组成,这三种基本结构的共同点是单入口、单出口。
12.源程序中加注释是帮助理解程序的重要手段,注释分为序言性注释和功能性注释。
13.为了提高程序的易读性,同时减少错误,提高软件开发效率,编码时注意养成良好的程序设计风格。
14.效率是一个性能要求,目标应在需求分析阶段给出。
15.可移植性是指程序从一个计算机环境移植到另一个计算机环境的容易程度。
16.用黑盒技术设计测试用例的方法有等价划分类、边值分析、因果图和错误推测。
17.集成测试是在单元测试的基础上,将所有模块按照设计要求组装成一个完整的系统进行测试,故也称组装测试。
18.动态测试方法中根据测试用例的设计方法不同,分为黑盒测试与白盒测试两类。
19.调试的目的是确定错误的位置和原因,并改正错误。
20.软件维护的内容有完善性维护、适应性维护改正性维护和预防性维护。
二、判断题1.耦合是指一个模块内各个元素彼此结合的紧密程度。
( F )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.Ariane 5火箭发射失败的事例告诉我们A.(2)软件后备系统可以通过复制生成B.(3)软件重用必须重新进行系统论证和系统测试C. 选项(1)和(3)D.(1)系统环境的变化可能影响软件采集数据的精度、范围和对系统的控制9.软件危机的主要原因是A.软件本身的特点及开发方法。
B.软件工具落后。
C.软件生产能力不足。
D.对软件的认识不够。
10.下面的描述正确的是A.软件质量是在开发过程中逐渐构建起来的。
B.软件质量是由产品的功能、性能、易用性等外在特性决定的。
C.运行正确的软件就是高质量的软件。
D.软件产品质量越高越好,最理想的情况是达到“零缺陷”。
《软件工程》期末考试复习题及参考答案

软件工程复习题(课程代码252258)一、填空题(本大题共60小题)1.数据项是指__不可再分解的___数据单元。
2.软件概要设计的主要任务就是___软件结构的设计___。
3.软件维护的内容包括校正性维持,适应性维护、____完善性维护_____和预防性维护。
4.在建立对象的功能模型时,使用的数据流图中包含有处理、数据流、动作对象和___数据存储对象___。
5.规定功能的软件,在一定程度上对自身错误的作用(软件错误)具有屏蔽能力,则称此软件具有容错功能的软件。
6.软件可维护性度量的七个质量特性是可理解性、可测试性、可修改性、可靠性、可移植性、可使用性和效率。
7.为了便于对照检查,测试用例应由输入数据和预期的输出结果两部分组成。
8.软件结构是以模块为基础而组成的一种控制层次结构。
9.在结构化分析中,用于描述加工逻辑的主要工具有结构化语言、判定表和判定表三种。
10.软件工程是将系统化的、规范的、可定量的方法应用于软件的开发、运行和维护的过程,它包括方法、工具和过程三个要素。
11.PDL是一种介于___自然语言___和形式化语言之间的半形式化语言。
12.从软件的功能角度划分,协助用户开发软件的工具性软件称为_支撑__软件13.消除软件结构中高扇入扇出的做法是______增加中间层次的控制模块_____。
14.如果一个软件系统的全部实际加工都由原子模块来完成,而其他所有非原子模块仅仅执行控制或协调功能,这样的系统就是____完全因子分解_____的系统。
15.软件的可移植性是指当把软件移植到不同的运行环境时,不需改变其__规格___就能照原样工作的特性。
16.为满足用户对软件提出的新的要求而对软件进行扩充、改进的维护称为____完善性__维护。
17.将整个软件划分成若干单独命名和可编址的部分,称之为___模块___。
18.软件需求的____物理视图_____给出处理功能和数据结构的实际表示形式。
19.在面向对象的开发技术中,__类___是一组具有相同数据结构和相同操作的对象的集合。
《软件工程》期末复习题及答案

《软件工程》期末复习题及答案一、单项选择题(本大题共60小题,在每小题的四个备选答案中,选出一个正确答案,并将正确答案填涂在答题卡上)1. 软件危机产生的主要原因是 A 。
A.软件日益庞大B.不能与用户良好地沟通C.开发人员编写程序能力差D.没有适应的开发模型2.软件工程的发展不包括以下那个阶段 B 。
A.传统软件工程阶段B.自主化开发阶段C.过程软件工程阶段D.构件软件工程阶段3. 现代软件工程研究的内容不包括 D 。
A.软件开发模型B.软件开发方法C.软件支持过程D.软件开发质量4.以下哪个软件生存周期模型是一种风险驱动的模型 C 。
A.瀑布模型B.增量模型C.螺旋模型D.喷泉模型5.软件的开发方法不包括 C 。
A.结构化开发方法B.面向对象开发方法C.面向管理的开发方法D. 面向数据结构的开发方法6.软件生存周期中,准确地确定软件系统必须做什么的阶段是 B 。
A.可行性分析和项目开发计划 B.需求分析 C.概要设计D.详细设计7. 需求分析中开发人员要从用户那里了解 A 。
A.软件做什么B.用户使用界面C.输入的信息D.软件的规模8. 结构化分析建立功能模型的工具是 A 。
A.DFDB.判定树/判定表C.SCD.结构化语言9. 数据词典是对数据定义信息的集合,它所定义的对象都包含于 B 。
A.数据流图B.程序框图C.软件结构D.方框图10.用于描述结构化分析中数据流加工逻辑的是 A 。
A.判定 B.ER图 C.状态 D.用例图11.下列几种耦合类型,耦合性最高的是 A 。
A.公共耦 B.控制耦合 C.标记耦 D.数据耦合12. 通信内聚是指 B 。
A. 把需要同时执行的动作组合在一起形成的模块 B各处理使用相同的输入数据或者产生相同的输出数据C一个模块中各个处理元素都密切相关于同一功能且必须顺序执行 D模块内所有元素共同完成一个功能,缺一不可13.模块 B 定义为受该模块内一个判定影响的所有模块集合。
软件工程期末试题及答案

软件工程期末试题及答案一、选择题(每题2分,共20分)1. 以下哪项不是软件工程的基本目标?A. 提高软件的生产效率B. 提高软件的质量C. 减少软件的开发成本D. 增加软件的复杂性答案:D2. 下面哪个不属于软件工程的三个主要过程?A. 软件规格B. 软件开发C. 软件测试D. 软件维护答案:A3. 下列哪种编程范式主要用于降低软件复杂性?A. 面向对象编程B. 过程式编程C. 函数式编程D. 逻辑编程答案:A4. 以下哪个不属于软件项目的管理活动?A. 项目计划B. 风险管理C. 质量保证D. 软件开发答案:D5. 以下哪个不是软件需求分析的工具?A. 数据流图(DFD)B. 实体关系图(ERD)C. 状态转换图(STD)D. 类图答案:B6. 以下哪个不属于软件设计的原则?A. 模块化B. 抽象C. 封装D. 继承7. 以下哪种测试方法主要用于检测软件的功能是否满足需求?A. 单元测试B. 集成测试C. 系统测试D. 验收测试答案:C8. 以下哪个不属于软件维护的类型?A. 适应性维护B. 完善性维护C. 纠错性维护D. 预防性维护答案:D9. 以下哪个不属于软件项目管理工具?A. Microsoft ProjectB. JiraC. TrelloD. Visual Studio10. 以下哪个不属于敏捷软件开发的特点?A. 短周期迭代B. 客户参与C. 重构D. 线性开发流程答案:D二、填空题(每题2分,共20分)1. 软件工程的基本目标包括提高软件的生产效率、提高软件的质量和______。
答案:减少软件的开发成本2. 软件工程的三个主要过程分别是软件规格、软件开发和______。
答案:软件维护3. 软件需求分析的主要工具包括数据流图(DFD)、实体关系图(ERD)和______。
答案:状态转换图(STD)4. 软件设计的原则包括模块化、抽象、封装和______。
答案:继承5. 软件测试的四个层次分别是单元测试、集成测试、系统测试和______。
软件工程期末复习资料

软件工程复习资料一、选择题,请从四个可选项中选择正确答案。
1. 软件工程学科出现的主要原因是()。
A. 计算机的发展B. 其他工程科学的影响C. 软件危机的出现D. 程序设计方法学的影响2. ()是职业软件工程师的必要条件。
A•自律、善于沟通、具有一定的软件技能 B.编程速度快C.熟悉众多的软件环境D.语言天赋3. 在E-R模型中,包含以下基本成分()。
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.类有3种类型,即()°A.边界类、实体类、控制类B.实体类、控制类、界面类C.控制类、实体类、虚类D.界面类、控制类、公共类10. ()是一般化类与特殊化类之间的一种关联形式,设计时应该适当使用这种耦合。
A. 消息连接B.参数传递C.方法重写D. 继承11、软件工程的研究容具有层次化结构,最底层是质量保证层,中间层是(),最上层是工具层。
A. 过程层B.方法层C.过程层和方法层D.系统层12、可行性研究的四大要素是()。
A. 经济、技术、法律和社会环境B. 经济、技术、开发组织能力和领导者水平C. 经济、技术、计算机硬件环境和网络带宽D. 经济、技术、软件开发工具和人员的稳定性13、针对需求不确定的软件开发,比较好的模型是()。
软件工程基础期末复习资料完整版

2.文档有何作用?程序代码属不属于文档?答:文档指的是在软件开发和维护过程中形成的文字记录。
从软件计划、分析、设计、实现(编码和测试)、维护等开发活动中形成的各种文件。
文档属于软件的一部分,是软件维护和升级的重要依据,并且文档内容要与代码同步更新。
没有文档的软件维护不但不能延长反而会缩短软件寿命。
文档包括需求规格说明书、设计说明书、用户使用说明书、在线帮助等,当然程序代码是必不可少的一种软件文档。
3.什么是软件危机?什么原因产生了软件危机?答:软件危机指的是在计算机软件的开发和维护过程中所遇到的一系列严重问题。
产生的原因是主客观不相适应。
见书图1-2。
●客观上:软件规模增大、功能要求越来越复杂,需求不断变化等;●主观上:传统的个体化开发观念和方法,无开发过程指导,无开发过程管理;由于主客观矛盾,必然产生软件质量差、开发超期、超预算、维护困难等现象。
5.软件工程三要素是什么?答:软件工程三要素是从计算机科学观点看软件工程,即从软件开发的技术层面应该有过程、方法和工具。
见图1-4。
(2)“过程”是软件产品加工所经历的一系列有组织的活动,保证能够合理、高质量和及时地开发出软件。
过程定义的活动集合及其序列见第2章。
(3)“方法”为软件开发提供“如何做”的技术,它涵盖了项目计划、需求分析、系统设计、程序实现、测试与维护等一系列活动的做法。
如经常说的面向结构、面向对象、面向组件等开发方法,项目管理中估算、度量、计划等管理方法。
软件工程以介绍方法为主,本书从第3章开始逐步介绍开发过程所用到的方法。
(4)“工具”为过程和方法提供自动的或半自动的支持。
这些工具既包括软件也有硬件。
软件工具包括编程、建模、管理等开发工具。
通过网络环境把这些软件工具集成起来搭建一个支持团队开发的平台,称之为计算机辅助软件工程 (Computer Aided Software Engineering,CASE)。
CASE集成了软件、硬件和一个存放开发过程信息的软件工程数据库,形成了一个软件工程环境。
软件工程复习资料整理

《软件工程》试题参考答案(1)卷一、单向选择题(四选一、每小题3分,共18分)1、需求分析的任务不包括(B)。
A.问题分析B.系统设计C.需求描述D.需求评审。
2、当模块中包含复杂的条件组合,只有( A)能够清晰地表达出各种动作之间的对应关系。
0802A.判定表和判定树C.流程图3、以下不属于逻辑覆盖的是(D)。
1402A.语句覆盖C.条件覆盖B.盒图D 关系图B.判定覆盖D.基本路径4、为适应软件运行环境的变化而修改软件的活动称为( B)。
1501A.纠错性维护B.适应性维护C.改善性维护 D 预防性维护二、填空题(每空2分,共18分)1. 软件可靠性是指在给定的时间间隔内,程序成功运行的(概率)。
01012. 高级语言:独立于机器,面向过程或面向(对象)01013. 软件项目管理的范围主要集中于 3 个P 上,即:People 人员、Problem 问题和(过程)。
02014. 由于维护或在维护过程中其他一些不期望的行为引入的错误称为维护的(副作用)。
15045. 在公式V(G) = E – N + 2 中: E 为程序图G 中边的总数;N 为程序图中结点的总数。
V(G)又称为图 G 的环形(复杂度)0204。
6. 任何一个基于计算机系统都可以用输入-处理-输出(IPO)图来描述,它将该系统转换成一个信息变换模型。
03037. 为提高可交互性一般对所有可能造成损害的用户操作动作,应坚持要求用户(确认),例如,提问“你确实要删除…?”。
12048. 文档是一种数据媒体和其上所记录的(数据)。
0101三、判断题(每小题2分,共24分,错误打X、正确打√)1. 用户对软件需求的描述不准确,往往是产生软件危机的原因之一。
(√)01022. 一个好的开发人员应具备的素质和能力包括善于与周围人员团结协作,建立良好的人际关系,善于听取别人的意见。
(√)02063. 目前的绝大多数软件都不适合于快速原型技术。
软件工程期末考试参考题及答案

一、填空题(每空1分, 共20分)1.软件生存周期一般可分为__问题定义__、可行性研究、_需求分析_____、设计编码、__测试________、运行与维护阶段。
2.按软件旳功能进行划分, 软件可以划分为系统软件、支撑软件和应用软件。
3.可行性研究重要集中在如下四个方面经济可行性、技术可行性、法律可行性和抉择。
4.顾客界面旳可使用性是顾客界面设计最重要旳也是最基本旳目旳。
5.常见旳软件概要设计措施有3大类: 以数据流图为基础构造模块构造旳___构造化设计措施_________, 以数据构造为基础构造模块旳__jackson措施__________, 以对象、类、继承和通信为基础旳__面向对象设计措施__________。
6.__数据流图________和__数据字典___共同构成系统旳逻辑模型。
7.软件测试旳措施有__分析措施________和___非分析措施_______(即黑盒法)。
8.单元测试一般以___白盒_____________测试为主, ___黑盒______测试为辅。
9.成本估计措施重要有__自底向上估计________、_自顶向下估计_________和算法模型估计三种类型。
二、单项选择题(每题2分, 共10分)1.下列哪个阶段不属于软件生存周期旳三大阶段( C )。
A.计划阶段B.开发阶段2. C.编码阶段 D.维护阶段3.需求分析是(A )。
A. 软件开发工作旳基础B. 软件生存周期旳开始C. 由系统分析员单独完毕旳D. 由顾客自己单独完毕旳原型化措施是软件开发中一类常用旳措施, 它与构造化措施相比较, 更需要( B )。
A. 明确旳需求定义B.完整旳生命周期C、较长旳开发时间D、纯熟旳开发人员软件维护时, 对测试阶段未发现旳错误进行测试、诊断、定位、纠错, 直至修改旳回归测试过程称为( A )。
A、改正性维护B、适应性维护C、完善性维护D、防止性维护一般说来, 投入运行旳软件系统中有错误(A )。
软件工程复习资料-完整版

一、选择题:1、用例图中,用来表示用例的符号为( B ) 。
2、协作图中包含的元素包括(A ) 。
A. 对象 B. 链 C. 激活 D. 消息3、在类图中,哪种关系表达整体与部分的关系( D ) 。
A .泛化 B. 实现 C. 依赖 D. 聚合4、下列各种图形符号中,用来表示组成关系的符号为 (B )。
A. B. C. D.5 、(A )工具在软件的详细设计中不能使用。
A . DFD B. N-S 图 C. 流程图 D. PDL6 、 “软件危机”是指 (C )。
A. 计算机病毒的出现B. 利用计算机进行经济犯罪活动C. 软件开发和维护中出现的一系列问题D. 人们过分迷恋计算机系统7 、 快速原型是利用原型辅助软件开发的一种新思想,它是在研究 (A )的方法和技术中产生 的。
A. 需求阶段B. 设计阶段C. 测试阶段D. 软件开发的各个阶段8、从严格意义上讲,下列 4 个选项中属于顺序图的元素是(ABCD ) 。
A.对象B. 参与者C. 消息D. 激活9、下列 UML 图形中, (ABCD )属于 UML 的动态视图。
A. 协作图B. 状态图C. 活动图D. 顺序图10、数据字典是软件需求分析阶段的最重要的工具之一,其最基本的功能是( D ) 。
A. 数据库设计B. 数据通信C. 数据关系描述D. 数据定义11、详细设计与概要设计衔接的图形工具是 (D )。
A. DFD 图B. 程序图C. PAD 图D. SC 图12 、UML 中,大多数建模者把节点分为(AC )A . 设备 B. 构件 C. 处理器 D. 显示器13 、(C)是一种特殊形式的状态机,用于对计算流程和工作流程建模。
A .时间图 B. 流程图 C. 活动图 D. 状态图14 、(A )描述从状态到状态的控制流程,常用来对系统的动态特征进行建模。
A. 状态图B. 序列图C. 协作图D. 活动图15、下列特点属于描述用例的特点的是( D ) 。
软件工程期末考试复习题及答案

31.
下列关于程序效率的描述错误的是(C) 。 a) b) c) d) 提高程序的执行速度可以提高程序的效率 降低程序占用的存储空间可以提高程序的效率 源程序的效率与详细设计阶段确定的算法的效率无关 好的程序设计可以提高效率
32. 33.
下列伪码片段的程序流图是() ,其环路复杂度是() 下列伪码片段的环路复杂度是() a) b) c) d) 2 3 4 5 度量 估算 评估 管理 B )问题。 B.使软件生产工程化 D.加强软件的质量保证.
为了高质量地开发软件项目,在软件结构设计时必遵循(C)的原则
在建立软件系统的模块结构。应根据(C)评价系统模块划分的质量。
结构化程序设计方法要求每个(A)结构应是单入口和单出口。
开发软件时,对于提高软件开发人员工作效率至关重要的是(A) 。
软件工程中描述软件生存周期的瀑布模型一般包括计划、 (D ) 、设计、编码、测试、维护等几个阶段。其中,设 计阶段在管理上又可以依次分为(概要设计)和(详细设计)两个步骤。 a) b) c) d) 问题定义 需求调查 可行性分析 需求分析 说明方法 描述方式 准则 基本原则 总结 阶段性报告 需求分析评审 以上答案都不正确
16.
软件需求分析的任务不应包括(C)。 a) b) c) d)
17.
进行需求分析可使用多种工具;但(C)是不适用的。 a) b) c) d)
18.
ห้องสมุดไป่ตู้
1960 年底 Dijkstra 提倡的(D)是一种有效的提高程序设计效率的方法。 a) b) c) d)
19.
汇编程序是指(C) 。 a) b) c)
20.
为了实现递归子程序的正确调用,人们必须用(A)来保存(返回地址)及有关信息。 a) b) c) d)
软件工程期末复习资料二

软件工程期末复习资料二模拟试题心之所向,所向披靡一、填空题1.软件开发模型有()、()、第四代技术模型、()、构件组装模型、混合模型。
2.可行性研究一般可以从()可行性、()可行性、运行可行性、法律可行性和开发可行性等方面来研究。
3.现在向银行存款,年利率为i,若希望在n年后从银行得到F元,现在应该存入的钱数为()。
4.数据流图从数据传输和()角度,以()方式描述数据流从输入到输出的传输变换过程。
5.Jackson图除了可以表达程序结构外,还可以表达(),它首先要分析(),并用适当的工具来描述。
6.HIPO图是由一组()图加上一张()图组成。
7.把程序从一个硬件或软件环境中转移到另一种配置环境称为软件的()。
8.如果一个模块完成一组任务,这些任务彼此之间的关系是很松散的,这种內聚称为()。
9.白盒法的具体设计程序测试方法有语句覆盖、()、()、和路径覆盖。
10.组成UML的三种基本建筑块是()、关系和()。
11.面向对象的软件工程方法包括面向对象的分析、()、()、()和面向对象的软件维护等主要内容。
12.保证软件质量的措施主要有()、复查和管理复审、()。
13.提高软件质量和可靠性的技术大致分为两类,即()和()。
二、单项选择题1.下列()属于系统软件。
A.WINDOWS 2000B.WordC.FlashD.3D MAX2.下列哪个图是N-S图的构件()。
A.B.C. D.3.对于螺旋模型,下列()不是利用笛卡尔坐标表达的活动。
A. 制定计划B. 实施工程C. 风险分析D. 程序编码4.某次程序调试没有出现预计的结果,下列()不可能是导致出错的原因。
A.变量没有初始化B.编写的语句书写格式不规范C.循环控制出错D.代码输入有误5.下列关于程序效率的描述错误的是()。
A.提高程序的执行速度可以提高程序的效率B.降低程序占用的存储空间可以提高程序的效率C.源程序的效率与详细设计阶段确定的算法的效率无关D.好的程序设计可以提高效率三、多项选择题1.软件危机可以表现为()。
软件工程(期末试题及答案)

软件工程霄末试题及答案)软件工程佴末试题及答案)一、选择题(共20题,每题2分,共40分)1. 在软件工程中,以下哪一项不是七大工程()。
A.软件需求B.软件设计C.软件开发D.软件维护答案:D2.软件需求分析的目的是()。
A.理解用户需求B.设计软件架构C.编写用户手册D.测试软件功能答案:A3软件开发过程中的迭代模型,不存在的是()。
A.瀑布模型B.敏捷开发模型C.螺旋模型D.喷泉模型答案:D4.以下哪个不是软件测试的目的()。
A.发现错误和缺陷B.验证软件是否满足需求C.评估软件的可靠性和质量D.优化软件的性能答案:D5.软件项目管理中,以下哪种方法适用于大型复杂项目()。
A.瀑布模型B.敏捷开发C.增量模型D螺旋模型答案:D6软件开发生命周期中,以下哪个过程不属于()。
A. 需求分析过程B. 设计过程C. 编码过程D. 运维过程答案:D7. 在软件工程中,什么是软件测试()。
A. 软件开发的最后阶段B. 发现软件缺陷的过程C. 确保软件质量的控制过程D. 软件最终验收的流程答案:C8. 以下哪种测试方法旨在评估软件在不同负载下的性能和稳定性()。
A. 单元测试B. 集成测试C系统测试D. 性能测试答案:D9.软件开发中,以下哪个活动不属于软件配置管理()。
A.版本控制B.配置变更控制C.缺陷管理D.代码评审答案:D10.以下哪个是敏捷开发的基本原则()。
A.面对面交流胜过文档B.完全按照计划进行C.精确的需求分析是关键D.严格的变更控制是必要的答案:A11.下列哪个不属于软件配置管理的内容()。
A.变更控制B.版本控制C.缺陷管理D.运维管理12. 软件的可靠性是指()。
A. 软件是否能正常运行B. 软件是否符合用户需求C. 软件运行期间不出现故障的能力D. 软件功能的完善程度答案:C13. 下列哪个不属于软件开发的7大原则()。
A. 开放封闭原则B. 依赖倒置原则C. 单一职责原则D. 模块化编程原则答案:D14. 软件过程改进的指导框架是()。
软件工程期末复习(超详细!!!)

软件工程期末复习(超详细!!!)一:软件工程概述软件工程学的存在价值:促进软件项目成功。
软件的概念:软件(software):软件是计算机系统中与硬件相互依存的另一部分。
它包括程序、数据及其相关文档的完整集合。
(1)能够完成预定功能和性能的可执行指令(program)(2)使得程序能够适当地操作信息的数据结构(data)(3)描述程序的操作和使用的文档(document)软件危机:软件危机定义:软件在开发和维护过程中遇到的一系列严重问题。
软件危机包含两层含义:如何开发软件。
如何维护数量不断膨胀的已有软件。
软件工程(Software Engineering):是研究和应用功能如何以系统化的、规范的、可度量的方法去开发、运行和维护软件,即把工程化应用到软件上。
软件生存周期:是指软件产品从考虑其概念开始到该软件产品交付使用,直至最终退役为止的整个过程。
一般包括计划、分析、设计、实现、测试、集成、交付、维护等阶段。
计划阶段确定待开发系统的总体目标和范围。
研究系统的可行性和可能的解决方案,对资源、成本及进度进行合理的估算。
分析阶段分析、整理和提炼所收集到的用户需求,建立完整的分析模型,将其编写成软件需求规格说明和初步的用户手册。
设计阶段(总体设计和详细设计)设计阶段的目标是决定软件怎么做。
软件设计主要集中于软件体系结构、数据结构、用户界面和算法等方面。
实现阶段(编码)实现阶段是将所设计的各个模块编写成计算机可接受的程序代码。
测试阶段设计测试用例,对软件进行测试,发现错误,进行改正。
运行和维护阶段应当在软件的设计和实现阶段充分考虑软件的可维护性。
维护阶段需要测试是否正确实现了所要求的修改,并保证在产品的修改过程中,没有做其他无关的改动。
维护常常是软件生命周期中最具挑战性的一个阶段,其费用是相当昂贵的。
软件工程三要素:工具、方法、开发过程瀑布模型:问题定义、可行性研究、需求分析、概要设计、详细设计、编码、测试、运行与维护。
软件工程期末复习题

软件工程期末复习题第一篇:软件工程期末复习题1、软件定义:问题定义、可行性研究,需求分析2、软件开发:总体设计,详细设计,编码和单元测试,综合测试3、软件维护:改正性维护、适应性维护、完善性维护、预防性维护4、软件过程:瀑布模型,快速原型模型,增量模型,螺旋模型,喷泉模型,Rational统一过程,敏捷过程与极限编程,微软过程5、从3个方面研究每种解决的可行性:技术可行性、经济可行性、操作可行性6、软件需求分析阶段的工作:可以分为以下4个方面:对问题的识别、分析与综合、编写需求分析文档以及需求分析评审7、设计原理:模块化、抽象、逐步求精、信息隐藏和局部化、模块独立性(耦合、内聚)8、决定软件可维护性的因素:可理解性、可测试性、可修改性、可移植性、可重用性一、假设要求你开发一个软件,该软件的功能是把读入的浮点数开平方,所得到的结果应该精确到小数点后4位。
一旦实现并测试完之后,该产品将被抛弃。
你打算选用哪些软件生命周期模型?请说明你作出选择的理由。
答:对这个软件的需求很明确,实现开平方功能的算法也很成熟,因此,既无须通过原型来分析需求也无须用原型来验证设计方案。
此外,一旦实现并测试完之后,该产品将被抛弃,因此也无须使用有助于提高软件可维护性的增量模型或螺旋模型来开发该软件。
综上所述,为了开发这个简单的软件,使用大多数人所熟悉的瀑布模型就可以了二、假设你被任命为一家软件公司的项目负责人,你的工作是管理该公司已被广泛应用的字处理软件的新版本开发。
由于市场竞争激烈,公司规定了严格的完成期限并且已对外公布。
你打算采用哪种软件生命周期模型?为什么?。
答:对这个项目的一个重要要求是,严格按照已对外公布了的日期完成产品开发工作,因此,选择生命周期模型时应该着重考虑哪些模型有助于加快产品开发的进度。
使用增量模型开发软件时可以并行完成开发工作,因此能够加快开发进度。
这个项目是开发该公司已被广泛应用的字处理软件的新版本,从上述事实至少可以得出3点结论:第一,旧版本相当于一个原型,通过收集用户对旧版本的反映,较容易确定对新版本的需求,没必要再专门建立一个原型系统来分析用户的需求;第二,改公司的软件工程师对字处理软件很熟悉,有开发字处理软件的丰富经验,具有采用增量模型开发新版字处理软件所需要的技术水平;第三,该软件受到广大用户的喜爱,今后很可能还要开发更新的版本,因此,应该把该软件的体系结构设计成开放式的,以利于今后的改进和扩充。
软件工程期末复习题

软件工程期末复习题一、单选题(本大题共10小题,每小题2分,共20分)1.软件是一种( C ) A.物质产品 B.物理产品 C.逻辑产品 D.文档产品2.下列4个选项中,不属于软件危机表现的是( D ) A.开发的软件可靠性差 B.经费预算不断突破,完成时间一再拖延 C.开发的软件可维护性差 D.开发的软件规模庞大,结构复杂3.下列4个选项中,不属于软件危机原因的是:软件( D ) A.规模越来越大 B.结构越来越复杂 C.开发技术落后 D.用户素质不高4.软件产品的生产主要是( D ) A.生产 B.再生产 C.开发 D.研制5.软件工程是一门( C ) A.理论性学科 B.原理性学科 C.工程性学科D.心理性学科6.软件重用的单位是( A ) A.软件模块 B.性能 C.系统 D.功能7.软件工程着重于( C ) A.理论研究 B.原理探讨 C.建造软件系统 D.原理的理论8.软件工程中的“软件”是指( D ) A.程序 B.数据 C.文档 D.程序、数据及文档9.软件开发费用只占整个软件系统费用的( B ) A.1/2 B.1/3 C.1/4D.2/310.下列4种模型中,属于文档驱动的是(C ) A.喷泉模型 B.增量模型C.瀑布模型D.螺旋模型11.下列4种模型中,较为适合用于面向对象的开发方法的是( A ) A.喷泉模型 B.增量模型品 C.瀑布模型 D.螺旋模型12.下列4中方法中,属于面向数据结构的设计方法的是(C ) A. Booch方法 B. Coad方法 C. Jackson方法 D. SA方法13.下列4中方法中,属于面向数据流的分析方法的是( D ) A. Booch方法 B. Coad方法 C. Jackson方法 D. SA方法14.软件生存周期中时间最长的阶段是( B ) A.需求分析 B.概要设计C.测试D.维护15.一般而言,软件开发各阶段中,时间长、费用高、困难大的阶段是( D ) A.需求分析 B.详细设计 C.编码 D.测试16.解决“软件必须做什么”问题的阶段是( B ) A.可行性研究 B.需求分析 C.详细设计 D.编码17.下列工作中,不在需求分析阶段进行的是( B ) A.编写需求规格说明书 B.编写集成测试计划 C.编写用户手册初稿 D.修改完善软件开发计划18.下列工作中,不在需求分析阶段进行的是( B ) A.确定软件的功能需求 B.建立软件物理模型 C.导出软件逻辑模型 D.编写需求规格说明书19.需求分析的主要结果是( C ) A.项目开发计划 B.可行性分析报告C.需求规格说明书 D.设计说明书20.需求分析要解决的最重要的问题是( A ) A.要让软件做什么 B.要给软件提供哪些信息C.要求软件工作效率怎样D.要让该软件具有何种结构21.需求规格说明书的内容不应包括软件的( B ) A.主要功能与性能B.算法详细过程 C.用户界面 D.运行环境22.系统流程图用于描述待开发软件的(B ) A.结构系统 B.物理系统C.程序系统D.逻辑系统23.数据流图用于描述待开发软件的( B ) A.物理模型 B.逻辑模型 C.控制结构 D.数据结构24.DFD中的每个加工至少有( A ) A.一个输入流和一个输出流B.一个输入流或一个输出流 C.一个输入流 D.一个输出流25.分层DFD的顶层图描述了系统的( B ) A.细节 B.输入与输出 C.作者 D.绘制时间26.在DFD中,下列数据流中可以不命名的是( A ) A.处理与处理之间的数据流 B.处理与局部数据存储之间的数据流C.处理与数据源点之间的数据流D.处理与数据终点之间的数据流27.DFD中一般不画( A ) A.控制流 B.数据流 C.局部数据存储 D.外部实体28.在DFD中,箭头表示( A ) A.数据流 B.数据存储 C.数据处理 D.数据源点29.在DFD中,双杠表示( D ) A.数据处理 B.数据源点 C.数据流 D.数据存储30.父图与子图平衡指子图的输入、输出流同父图相应加工的输入、输出流( A ) A.必须一致 B.数目必须相等 C.名字必须相同 D.数目必须不等31.数据字典中一般不包括( D ) A.数据流条目B.数据存储条目C.加工条目 D.源点与终点条目32.关于DD的4类条目,不可再分解的最小元素是( B ) A.数据流条目 B.数据项条目 C.数据存储条目 D.加工条目33.表示“X由a或b组成”的DD定义式是(B ) A. X=a+b B. X=[a|b] C.X=a…b D. X=|a b|34.软件结构图上,一层中最大模块数称为该图的( C ) A.扇出 B.扇入C.宽度D.深度35.当一幅DFD中既有变换流又有事务流时,这就是一个( C ) A.变换型DFD B.事务型DFD C.综合型DFD D.分层DFD35.软件结构图上,一层中最大模块数称为该图的( C ) A.扇出 B.扇入C.宽度D.深度36.软件开发中结构化设计方法用于( B ) A.测试用例设计 B.概要设计 C.程序设计D.详细设计37.软件结构使用的图形工具,一般采用( C ) A.DFD图B.PAD图C.SC图D.ER图38.软件结构图中,模块框之间若有直线接,表示它们之间存在着(A )A.调用关系B.组成关系 C.连接关系 D.顺序执行关系39.下列工作中,不在概要设计进行的是( D ) A.划分模块B.确定模块功能 C.确定模块的接口 D.确定模块的算法40.为提高模块独立性,模块之间最好是(D ) A.公共耦合 B.控制耦合C.内容耦合D.数据耦合41.为提高模块独立性,模块内部最好是(C ) A.逻辑内聚 B.时间内聚C.功能内聚D.通信内聚42.在软件概要设计中,不使用的图形工具是( D ) A.SC图 B.IPO图C.IDEF图D.PAD图43.概要设计与详细设计衔接的图形工具是( B ) A.数据流图 B.结构图 C.程序流程图 D.PAD图44.软件概要设计结束后得到( B ) A.数据流图 B.结构图 C.程序流程图 D.PAD图45.划分模块时,一个模块的( A ) A.作用范围应在其控制范围内B.控制范围应在其作用范围内C.作用范围与控制范围互不包含D.作用范围与控制范围不受任何限制46.结构化程序设计主要强调程序的( C ) A.效率 B.执行速度 C.易读性 D.规模47.详细设计的任务是确定每个模块的( B ) A.外部特性 B.内部特性C.功能D.输入输出数据48.程序的三种基本控制结构是( B ) A.过程、子程序和分程序 B.顺序、选择和重复C.递归、堆栈和队列D.调用、返回和转移49.程序的三种基本控制结构的共同特点是( D ) A.不能嵌套使用 B.只能用来写简单程序C.已经用硬件实现D.单入口和单出口50.下列工作中不属于详细设计基本任务的是( D ) A.为模块内的数据结构进行设计B.对数据库进行物理设计C.为每个模块进行详细的算法设计D.为模块进行功能设计51.不属于详细描述处理过程常用的工具是( D ) A.图形B.表格C.语言 D.程序52.下列4图中不属于详细设计中描述处理过程的主要工具的是(D )A.PAD图B.IPO图 C.程序流程图 D.程序图53.结构化程序设计主要强调的是( A ) A.程序易读性 B.程序效率 C.程序规模 D.程序代码54.下列4图中支持结构化程序设计原理并可自动生成程序的是( D ) A.程序流程图B.工程网络图C.程序图D. PAD图55.下列结构中不属于Jackson结构图描述的基本结构的是( D ) A.顺序结构 B.选择结构 C.重复结构 D.组装结构56.结构化程序思想提出前程序设计中曾强调程序的效率,现在更重视程序的( D )A.效率B.安全性C.一致性D.可理解性57.源程序文档化要求在每个模块之前加序言性注释。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件工程试题一一.单项选择题1. 以下不是软件危机的典型表现的是:( D ) 。
A. 对软件开发成本和进度的估计常常很不准确B. 用户对“已完成的”软件系统不满意的现象经常发生C. 软件产品的质量往往靠不住D. 采用面向对象方法开发软件3. 下列哪个不是软件工程方法学中的要素( C )。
A. 方法B. 工具C. 程序D. 过程4. 下列模块的独立性的耦合方式中,最好的是( C )A.公共耦合B. 控制耦合C. 数据耦合D. 内容耦合5.概要设计中,开发人员要解决的最重要的问题是( D ) 。
A. 要让软件做什么B. 要给该软件提供哪些信息C. 要求软件工作效率怎样D. 要让该软件模块具有何种结构6. 为了提高模块的独立性,模块内部最好是( C ) 。
A. 逻辑内聚B. 时间内聚C. 功能内聚D. 通信内聚7. 程序的三种基本控制结构的共同特点是( C ) 。
A. 不能嵌套使用B. 只能用来写简单程序C. 只能一个入口和一个出口D. 已经用硬件实现8. 以下说法错误的是( ) 。
AA. 面向对象分析与面向对象设计的定义没有明显区别B. 从面向对象分析到面向对象设计,是一个逐渐扩充模型的过程C. 在实际的软件开发过程中,面向对象分析与面向对象设计的界限是模糊的D. 面向对象分析和面向对象设计活动是一个多次反复迭代的过程9. 软件测试过程中的确认测试主要是为了发现( A ) 阶段的错误。
A. 需求分析B. 概要设计C. 详细设计D. 编码10. 在面向对象的高层设计体系结构中,( C ) 是用来描述用户一般使用软件习惯的部分A. 人机交互界面B. 问题论域C. 系统交互界面D. 数据管理11. 为适应软硬件环境变化而修改软件的过程是( B ) 。
A. 校正性维护B. 适应性维护C. 完善性维护D. 预防性维护12. 在UML的各类图中,( A )图是描述软件功能的。
A 用例图B 类图C 活动图D 顺序图13.( D )不属于OO三要素。
A.对象B. 继承C.封装D.多态14.(C )在ATM机系统中,下列哪个不能在面向对象设计中被定义为类。
CA 中央计算机B 柜台事务C 拨号D 营业厅15.在黑盒测试中,作为相关黑盒测试有效补充的测试方法是( B ) 。
A. 等价类划分法B. 边界值分析法C. 错误推测法D. 因果图法二.判断题(本大题共__15__题,每题___1___分,共___15_____分。
1.软件简单的说就是程序和相关的数据及文档。
T2.测试用例由一系列输入和实际的输出组成。
F3.软件工程的集成测试都是自顶向下的。
F4.编码是尽可能采用局部变量。
T5.在进行需求分析时需同时考虑维护性问题。
T6.顺序图描述了对象之间动态的交互关系,着重体现对象间消息传递的时间顺序。
T7.在进行概要设计时应加强模块间的联系。
F8.模块越小,模块化的优点越明显。
一般来说,模块的大小都在10行以下。
F9.模块间的联系越紧密越好。
F10.用黑盒法测试时,测试用例是根据程序内部逻辑设计的。
F11.维护就是在软件交付使用后进行的修改。
T12.一组测试用例是判定覆盖,则一定是语句覆盖。
T13.面向对象软件工程方法就是至上而下、逐步求精的方法。
F14.向一个已经延期的项目增加人手,往往不会加快其开发进程。
T15.应尽可能多用GOTO语句。
F四.简答题1.简述螺旋模型。
螺旋模型(Spiral Model)采用一种周期性的方法来进行系统开发。
这会导致开发出众多的中间版本。
使用它,项目经理在早期就能够为客户实证某些概念。
该模型是快速原型法,以进化的开发方式为中心,在每个项目阶段使用瀑布模型法。
这种模型的每一个周期都包括需求定义、风险分析、工程实现和评审4个阶段,由这4个阶段进行迭代。
软件开发过程每迭代一次,软件开发又前进一个层次2.简述你对模块独立性的理解。
模块独立性指每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单,模块内部各部分及模块间的关系的一种衡量标准,由内聚和耦合来度量。
模块独立性的重要性:具有独立的模块的软件比较容易开发出来。
这是由于能够分割功能而且接口可以简化;独立的模块比较容易测试和维护。
这是因为相对说来,修改设计和程序需要的工作量比较小,错误传播范围小,需要扩充功能时能够"插入"模块。
总之,模块独立是优秀设计的关键,而设计又是决定软件质量的关键环节。
五.综合题(本大题共__3__题,每题___10___分,共___30_____分。
)1、问题陈述:为更好的管理食堂工作,某公司拟开发食堂管理系统,食堂管理员将所有菜式信息输入到系统中,并提前录入每日菜谱信息到系统中,员工通过系统进行网上订餐,从而得到本人的相关订餐信息,员工可以通过系统了解每日菜谱信息和自己的消费情况,每月,食堂管理员得到所有员工的消费情况和每个菜式的订餐统计信息(10分)(1)以结构化方法建立该问题的数据流图(至少2层,即顶层和0层) (7分)(2)描述数据流图中的主要数据字典(3分)软件工程试题二一、填空题(每空1分,共25分)1.软件生存周期一般可以划分为,问题定义、__可行性研究__、__需求分析___、设计、编码、测试和_ _运行与维护_。
2、基于软件的功能划分,软件可以划分成___系统软件__、__支撑软件__、___应用软件___三种。
3、可行性研究,应从经济可行性、技术可行性、运行可行性、法律可行性和开放方案可行性等方面研究。
4、数据流图的基本四种成分:数据输入的源点和数据输出汇点、加工、数据流和数据存储文件5、结构化分析方法是面向______数据流__进行需求分析的方法。
结构化分析方法使用____数据流图DFD___与_____数据字典DD___来描述。
6、为了在软件开发过程中保证软件的质量,主要采取下述措施:审查_、复查和管理复审、测试7、大型软件测试包括单元测试、集成测试、确认测试和系统测试四个步骤。
二、单项选择题(每小题2分,共20分)1、软件设计中划分模块的一个准则是( C )。
A、低内聚低耦合B、低内聚高耦合C、高内聚低耦合D、内聚高耦合2.Jackson设计方法是由英国的M. Jackson提出的,它是一种面向( C )的软件设计方法。
A、对象 B 数据流 C 数据结构 D 控制结构3.试判断下列叙述中,哪个(些)是正确的( C )。
a、软件系统中所有的信息流都可以认为是事务流b、软件系统中所有的信息流都可以认为是变换流c、事务分析和变换分析的设计步骤是基本相似的A、aB、bC、cD、b和c4.( A )是用户和设计交换最频繁的方法。
A、原型化方法B、瀑布模型方法C、螺旋模型方法D、构件组装模型5.软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实施的主要保证是( C )。
A、硬件环境B、软件开发的环境C软件开发工具和软件开发的环境 D、开发人员的素质6.软件测试的目的是?( D )A、证明软件的正确性B、找出软件系统中存在的所有错误C、证明软件系统中存在错误D、尽可能多的发现软件系统中的错误7.使用白盒测试方法时,确定测试数据应根据( A )和指定的覆盖标准。
A、程序的内部逻辑B、程序的复杂程度C、该软件的编辑人员D、程序的功能8.软件维护工作的最主要部分是( C )。
A、校正性维护B、适应性维护C、完善性维护D、预防性维护9.PDL是( B )语言。
A、高级程序设计语言B、伪码式C、中级程序设计语言D、低级程序设计语言三、判断题(正确的在括号内打上“√”,错误的打上“×”。
每题2分,共20分)1.用黑盒法测试时,测试用例是根据程序内部逻辑设计的。
(×)2.发现错误多的程序模块,残留在模块中的错误也多。
(√)3.为了加快软件维护作业的进度,应尽可能增加维护人员的数目。
(×)4.软件维护就是改正软件中的错误。
(×)5.质量保证是为了保证产品和服务充分满足消费者要求的质量而进行的有计划,有组织的活动。
(√)6.软件开发的主要任务是写程序。
(×)7.测试只能证明程序有错误,不能证明程序没有错误。
(√)8.模块化程序设计中,模块越小,模块化的优点越明显。
一般来说,模块的大小都在10行以下。
(×)9.在编制程序时,首先应该对程序的结构充分考虑,不要急于开始编码,而要像写软件文档那样,很好地琢磨程序具有什么样的功能,这些功能如何安排,等等。
(×)10.程序设计风格指导原则提出,尽量多使用临时变量。
(×)四、简答题(每题5分,共20分)1.什么是软件工程?软件工程是指导计算机软件开发和维护的工程学科。
采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来。
2.耦合性和内聚性有几种类型? 其耦合度、内聚强度的顺序如何?答:低:非直接耦合→数据耦合→标记耦合→控制耦合→外部耦合→公共耦合→内容耦合:高强:功能内聚→信息内聚→通信内聚→过程内聚→时间内聚→逻辑内聚→巧合内聚:弱3.简述需求分析工作可以分成哪四个方面?软件需求分析的有哪三个基本原则?答:需求分析阶段分成四个方面:对问题的识别、分析与综合、制定规格说明和评审。
三个基本原则:必须能够表达和理解问题的数据域和功能域;必须按自顶向下、逐步分解的方式对问题进行分解和不断细化;要给出系统的逻辑视图和物理视图。
4、什么是黑盒测试法?答:黑盒测试法把程序看成一个黑盒子,完全不考虑程序的内部结构和处理过程,它只检查程序功能是否能按照规格说明书的规定正常使用,程序是否能适当地接收输入数据,产生正确地输出信息。
五、程序设计与算法描述题(共15分)1.有下列伪码程序:STARTINPUT (M,N)IF M>=10THEN X=10ELSE X=lENDIFIF N>=20THEN Y=20ELSE Y=2ENDIFPRINT(X,Y)STOP设计该程序的语句覆盖和路径覆盖测试用例.语句覆盖为:①M=9(或<l0),N=l9(或<20);②M=l0(或>=10),N=20(或>=20)路径覆盖的测试用例为①M=9,N=19;②M=9、N=20;③M=l0,N=l9;④M=10,N=20;软件工程试题三一、选择题:(每题1分,共20分)(将答案写在题号前的()中)( C )1. 软件是()。
A. 处理对象和处理规则的描述B. 程序C. 程序及其文档D. 计算机系统( B )2. 软件需求规格说明的内容不应包括()。
A. 主要功能B. 算法的详细描述C. 用户界面及运行环境D. 软件的性能( B )3. 程序的三种基本控制结构是()。