软件工程试题1

合集下载

软件工程试题含答案

软件工程试题含答案

软件工程期末试题(1)一, 判断题(正确的在括号内打上"√",错误的打上"×".每题分,共15分)Warnier方式也是一种面向数据结构的设计方式,其逻辑更严格.(×) PAD图在设置了五种大体控制结构后,还允许递归挪用. (×) 你为了加速软件保护作业的进度,应尽可能增加保护人员的数量.(×) 当验收测试通过,软件开发就完成了.(×)完成测试作业后,为了缩短源程序的长度应删除程序中的注解.(×) 系统结构图是精准表达程序结构的图形表示法.因此,有时也可以将系统结构图看成系统流程图利用.(×)在程序调试时,找犯错误的位置和性质比更正该错误更难.(√) 以对象,类,继承和通信为基础的面向对象设计方式(OOD)也是常见的软件概要设计方式之一.(√)二,单项选择题(每小题2分,共10分)试判断下列叙述中,哪个(些)是正确的(D)a,软件系统中所有的信息流都可以以为是事务流b,软件系统中所有的信息流都可以以为是变换流c,事务分析和变换分析的设计步骤是大体相似的A,a B,b C,c D,b和c进行需求分析可利用多种工具,但(B)是不适用的.A,数据流图B,PAD图C,判定表D,数据词典在详细设计阶段,常常采用的工具有(A).A,PAD B,SA C,SC D,DFD详细设计的结果大体决定了最终程序的(C)A,代码的规模B,运行速度C,质量D,可保护性利用白盒测试方式时,肯定测试数据应按照(A)和指定的覆盖标准. A,程序的内部逻辑B,程序的复杂程度C,该软件的编辑人员D,程序的功能三,多项选择题(每题2分,共10分.注:正确得2分,漏选得1分,多选,错选不得分.)(ABCD)可以作为模块.A,子程序B,函数C,进程D,编译文件下面哪些测试属于黑盒测试(BCD).A,路径测试B,等价类划分C,边界值分析D,错误推测E,循环测试下列属于气宇效益方式的是(ABCD).A,货币的时间价值B,投资回收期C,收入D,投资回报率软件保护的策略包括(BCD).A,按期检测保护B,更正性保护C,适应性保护D,完善性保护下列属于软件测试进程的是(ABE).A,单元测试B,组装测试C,内核测试D,法律验证E,确认测试四,简答题(每题6分,共24分)1、耦合性和内聚性有几种类型其耦合度,内聚强度的顺序如何答案:低:非直接耦合,数据耦合,标记耦合,控制耦合,外部耦合,公共耦合,内容耦合:高强:功能内聚,信息内聚,通信内聚,进程内聚,时间内聚,逻辑内聚,偶然内聚:弱2、请举例说明什么是多态,什么是重载答案:多态性是指子类对象可以像父类对象那样利用,一样的消息既可以发送给父类对象也可以发送给子类对象.也就是说,在类品级的不同层次中可以共享(公用)一个行为(方式)的名字,但是不同层次中的每一个类却各自按自己的需要来实现这个行为.当对象接收到发送给它的消息时,按照该对象所属于的类动态选用在该类中概念的实现算法.3、重载是指一个类中有多个同名的方式,但在操作数个数或类型上有区别.例: public class A{int age;String name;public void setValue(int i) {age=i; }public void setValue(String s) {name=s; }4、什么是数据字典简述数据字典与数据流图的关系.答案:数据字典是关于数据的信息的集合,对数据流程图中的各个元素做完整的概念与说明,是数据流程图的补充工具.(2分)数据流图和数据字典一路组成系统的逻辑模型,没有数据字典数据流图就不严格, 但是没有数据流图数据字典也难于发挥作用. 数据流图和对数据流图中每一个元素的精准概念放在一路,才能一路组成系统的规格说明.(3分)5、简述编码风格的重要性.答案:阅读程序是软件开发和保护进程中的一个重要组成部份,程序实际上也是一种供人阅读的文章.应当在编写程序时讲求程序的风格,这将大量地减少人们读程序的时间.良好的编码风格有助于编写出靠得住而又容易保护的程序,编码的风格在很大程度上决定着程序的质量.面向对象的测试和传统开发方式的测试有什么不同答案:(1)二者都可以分成四个阶段进行.但传统测试最小单元是模块,而在面向对象环境下,最小的可测试的单元是封装了的类或对象,而不是程序模块.(2)因为面向对象软件没有一个层次的控制结构,所以传统的自顶向下和自底向上的组装策略意义不大. 每次将一个操作组装到类中(像传统的增殖式组装那样)常常行不通,因为在组成类的各个部件之间存在各类直接的和非直接的交互.对于面向对象系统的组装测试,存在两种不同的测试策略.软件工程期末试卷(2)(开放教育本科)计算机科学与技术专业《软件工程》试题B一、填空题(每空1分,共20分)1.软件生存周期一般可分为__问题概念__、可行性研究、__需求分析_、设计编码、_测试_、运行与保护阶段。

软件工程考试试题(含答案)

软件工程考试试题(含答案)

软件工程考试试题(含答案)软件工程考试试题(含答案)1. 简答题1.1 请简述软件生命周期模型,包括传统瀑布模型和敏捷开发模型。

传统瀑布模型:软件生命周期模型的一种经典模型,包含需求分析、系统设计、编码、测试和运维等阶段,每个阶段完成后才能进入下一个阶段。

优点:- 易于理解和使用;- 需求固定,有利于计划和控制;缺点:- 需求变更困难;- 风险高,需求出错难以弥补;- 开发周期长,无法满足紧迫的需求。

敏捷开发模型:一种适应快速变化需求的软件开发模型,主要包括用户故事编写、迭代开发、持续集成和自动化测试等实践。

优点:- 高度适应变化;- 可以提供早期可用软件;- 强调团队合作和沟通;缺点:- 需要高度的客户参与度;- 需要经验丰富的开发团队;- 不适用于大型项目。

1.2 什么是需求工程?请简述需求工程的过程和方法。

需求工程:需求工程是软件开发过程中用来获取、分析、定义和验证系统需求的过程。

它的目标是建立对用户需求的准确和完整的理解。

需求工程的过程:1. 需求获取:通过与用户、利益相关者沟通和交流获取用户需求。

2. 需求分析:对需求进行分析、整理,形成需求的详细描述。

3. 需求定义:将需求进行文档化,包括功能需求、非功能需求等。

4. 需求验证:通过原型、模型或评审等方式验证需求的正确性和完整性。

需求工程的方法:- 面谈法:与用户、利益相关者进行面对面的交谈,获取需求信息。

- 观察法:观察用户的工作环境和行为,了解其需要的功能和约束条件。

- 文献研究法:通过研究现有的相关文档来获取需求信息。

- 原型法:通过创建原型,让用户提供反馈并进一步明确需求。

2. 算法设计题有一组整数,编写一个算法将这组整数按照从小到大的顺序进行排序。

算法设计:1. 将整数数组按照从小到大的顺序进行排序。

2. 使用冒泡排序算法:- 比较相邻的两个数,如果前一个数大于后一个数,则交换它们的位置。

- 重复上述操作,直到没有任何交换发生,即数组已经按照从小到大的顺序排列好。

软件工程期末试卷(十套含答案)

软件工程期末试卷(十套含答案)

软件工程期末试题(一)单项选择题1.瀑布模型的存在问题是(B )A.用户容易参与开发B.缺乏灵活性C.用户与开发者易沟通D.适用可变需求2.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做( C )A.软件工程B.软件周期C.软件危机D.软件产生3.数据耦合、公共耦合、标记耦合、控制耦合的耦合性从低到高的顺序是( B )A.数据、公共、标记、控制B.数据、标记、控制、公共C.控制、数据、标记、公共D.控制、数据、公共、标记4.在SD方法中全面指导模块划分的最重要的原则是( D )A.程序模块化B.模块高内聚C.模块低耦合D.模块独立性5.软件测试的目的是( B )。

A.评价软件的质量 B. 发现软件的错误C.找出软件的所有错误 D. 证明软件是正确的6.在设计测试用例时,( A )是用得最多的一种黑盒测试方法。

A.等价类划分 B. 边界值分析 C. 因果图 D. 判定表7. 需求分析最终结果是产生( B )。

A. 项目开发计划B. 需求规格说明书C. 设计说明书D. 可行性分析报告8. Jackson图中,模块框之间若有直线连接,表示它们之间存在(B )。

A. 调用关系B. 组成关系C. 链接关系D. 顺序执行关系9. 软件详细设计的主要任务是确定每个模块的( C )。

A. 功能B. 外部接口C. 算法和使用的数据结构D. 编程10.为了提高软件的可维护性,在编码阶段应注意( D )A.保存测试用例和数据B.提高模块的独立性C.文档的副作用D.养成好的程序设计风格11.设年利率为i,现存入p元,若计复利,n年后可得钱数为(B)A.p﹡(1+i﹡n) B.p﹡(i+1)nC.p﹡(1+i)﹡n D.p﹡(i+n)12.在考察系统的一些涉及时序和改变的状态时,要用动态模型来表示。

动态模型着重于系统的控制逻辑,它包括两个图:一个是事件追踪图,另一个是(A )。

A .状态图 B. 数据流图 C. 系统结构图 D. 时序图13. 对象实现了数据和操作的结合,使数据和操作( C )于对象的统一体中。

软件工程综合习题(1)及答案

软件工程综合习题(1)及答案

软件工程综合习题(1)及答案一、选择题1.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做(C)。

A.软件工程B.软件周期C.软件危机D.软件产生2.瀑布模型本质上是一种(A )模型。

A.线性顺序B.顺序迭代C.线性迭代D.早期产品3.瀑布模型存在的问题是(B )。

A.用户容易参与开发 B.缺乏灵活性C.用户与开发者易沟通 D.适用可变需求4.螺旋模型是一种将瀑布模型和(A)结合起来的软件开发模型。

A.增量模型B.专家系统C.喷泉模型D.变换模型5.原型化方法是用户和设计者之间执行的一种交互构成,适用于(A)系统。

A.需求不确定性高的 B.需求确定的C.管理信息 D.实时6.下列有关软件工程的标准,属于国际标准的是(D )A.GBB.DINC.ISOD.IEEE7.结构化方法是一种基于(D)的方法。

A.数据结构B.程序结构C.算法D.数据流8.软件可行性研究实质上是要进行一次( A)需求分析、设计过程。

A、简化、压缩的B、详细的C、彻底的D、深入的9.可行性研究的目的是(D)A、分析开发系统的必要性B、确定系统建设的方案C、分析系统风险D、确定是否值得开发系统10.设年利率为i,现存入p元,不计复利,n年后可得钱数为(C)。

A、P×(1+i*n)B、P× (i+1)*nC、p×(1+i)nD、p×(i+n)11.可行性研究是在(A)之前A、系统开发B、测试C、试运行D、集成测试12.可行性研究需要的时间长短取决于系统的规模,一般来说,可行性研究的成本只是预期总成本的(C)。

A、1%B、20%C、8%D、50%13.我国正式颁布实施的(B)对计算机病毒的定义具有法律性、权威性。

A.《计算机软件保护条例》B.《中华人民共和国计算机信息系统安全保护条例》C.《中华人民共和国著作权法》D.《计算机病毒防治管理办法》14.效率是一个性能要求,因此应当在以下哪个阶段规定?BA、可行性分析B、需求分析C、概要设计D、详细设计15.需求规格说明书的作用不包括(D)A、软件验收的依据B、用户与开发人员对软件要做什么的共同理解C、软件可行性研究的依据D、软件设计的依据16.数据字典是用来定义(D)中的各个成份的具体含义的。

软件工程试卷(附答案)

软件工程试卷(附答案)

一、单项选择题(每题2分,共40分)1。

软件生存周期模型有多钟,下列选项中,(C)不是软件生存周期模型。

A.螺旋模型B.增量模型C。

功能模型D。

瀑布模型2.以下说法错误的是(C)。

A.增量模型是在瀑布模型的基础上加以修改而形成的B。

增量模型推迟某些阶段或所有阶段中的细节,从而较早地产生工作软件C。

瀑布模型和增量模型都属于整体开发模型D。

瀑布模型规定在开始下一个阶段的工作之前,必须完成前一阶段的所有细节3.可行性分析中,系统流程图用于描述(A)。

A。

当前运行系统B。

当前逻辑模型C。

目标系统D。

新系统4.研究软硬件资源的有效性是进行(A)研究的一方面.A。

技术可行性B.经济可行性C。

社会可行性D.操作可行性5、数据字典中,一般不包括下列选项中的(D)条目.A。

数据流B.数据存储C。

加工D。

源点与终点6、SA方法的分析步骤是首先调查了解当前系统的工作流程,然后(A)。

A。

获得当前系统的物理模型,抽象出当前系统的逻辑模型,建立目标系统的逻辑模型B.获得当前系统的物理模型,抽象出目标系统的逻辑模型,建立目标系统的物理模型C。

获得当前系统的逻辑模型,抽象出目标系统的物理模型,建立目标系统的逻辑模型D.获得当前系统的逻辑模型,抽象出目标系统的物理模型,建立目标系统的物理模型7、通过(B)可以完成数据流图的细化.A。

结构分析B。

功能分解C.数据分析D。

系统分解8、对软件进行分解,是为了(C)。

A。

降低模块的复杂程度B.降低模块间接口的复杂程度C.降低模块的复杂程度,并降低模块间接口的复杂程度D。

降低模块的复杂程度,并提高模块间接口的复杂程度9、为了提高模块的独立性,模块内部最好是(C)。

A。

逻辑内聚B.时间内聚C.功能内聚D。

通信内聚10、在软件结构设计完成后,对于下列说法,正确的是(C).A。

非单一功能模块的扇入数大比较好,说明本模块重用率高B.单一功能的模块扇入高时应重新分解,以消除控制耦合的情况C.一个模块的扇出太多,说明该模块过分复杂,缺少中间层D。

全国自考(软件工程)模拟试卷1(题后含答案及解析)

全国自考(软件工程)模拟试卷1(题后含答案及解析)

全国自考(软件工程)模拟试卷1(题后含答案及解析) 题型有:1. 单项选择题 2. 填空题 3. 简答题 4. 综合应用题单项选择题1.在结构化方法中,软件功能分解应属于软件开发中的哪一阶段( )A.详细设计B.需求分析C.总体设计D.编程调试正确答案:C解析:总体设计阶段的基本任务是把系统的功能需求分配到一个特定的软件体系结构中,这里的分配是指功能的分解。

2.不属于软件项目计划中所包含的内容的是( )A.培训计划B.人员安排C.进度安排D.软件开发标准的选择和制定正确答案:D解析:软件项目计划包含培训计划、进度安排和人员安排等。

3.一个模块的哪项能直接控制该模块的模块数( )A.扇出数B.扇人数C.宽度D.深度正确答案:B解析:一个模块的扇人数是指能直接控制该模块的模块数。

4.软件组装成系统的一种测试技术是( )A.系统测试B.单元测试C.集成测试D.集合测试正确答案:C解析:题目中的选项最具混淆的是集成测试与系统测试。

系统测试是指将已经确认的软件、计算机硬件、外设、网络等其他元素结合在一起,进行信息系统的各种组装测试和确认测试;而集成测试集中于模块组合的功能和软件结构检验。

5.下列关于关联的说法错误的是( )A.一个关联连接n个类目叫做n元关联B.关联是类目中的一种结构关系C.关联用一条连接两个类目的线段表示D.关联不具有方向性正确答案:D解析:关联是有方向的,可以用一个实心三角形来指示关联的方向。

6.当模块中包含复杂的条件组合,下列能够清晰地表达出各种动作之间的对应关系的只有( )A.判定表和判定树B.盒图C.流程图D.关系图正确答案:A解析:如果一个加工的输人数据和输出数据之间的逻辑关系比较复杂,应该用判定表或判定树来描述。

7.在软件总体设计阶段的主要任务不包括( )A.设计软件的模块结构B.定义接口并建立数据结构C.生成概要设计规格说明和组装测试计划D.模块设计正确答案:D解析:选项D属于详细设计的任务。

软件工程试卷及答案软件工程试题和答案

软件工程试卷及答案软件工程试题和答案

软件工程试卷及答案软件工程试题和答案软件工程试卷及答案第一部分:选择题(共40小题,每题2分,共80分)1. 软件工程的定义是:A. 软件设计和开发B. 软件项目管理C. 软件测试和维护D. 软件工程师的工作答案:A2. 下面哪个不是软件生命周期的阶段?A. 需求分析B. 设计C. 开发D. 运营答案:D3. 软件开发过程中的需求分析阶段的主要作用是:A. 编写代码B. 确定软件的功能和性能需求C. 进行软件测试D. 用户培训答案:B4. 下面哪项不是软件开发中常用的软件开发模型?A. 瀑布模型B. 敏捷开发模型C. 增量模型D. 平衡模型答案:D5. 软件项目管理中的关键路径是指:A. 工期最短的路径B. 工期最长的路径C. 工期变动最多的路径D. 工期变动最少的路径答案:B6. 软件测试的目标是:A. 发现尽可能多的缺陷B. 验证软件满足需求C. 确保软件质量D. 所有选项都是目标答案:D7. 下面哪项不是软件测试的类型?A. 单元测试B. 集成测试C. 系统测试D. 接口测试答案:D8. 软件维护的类型包括:A. 预防性维护B. 改正性维护C. 完善性维护D. 所有选项都是维护类型答案:D9. 下面哪个不是软件开发中常用的编程语言?A. JavaB. C++C. PythonD. HTML答案:D10. 软件配置管理包括以下哪些方面?A. 版本控制B. 缺陷管理C. 变更管理D. 所有选项都是配置管理的方面答案:D...第二部分:简答题(共4题,每题10分,共40分)1. 请简要介绍一下软件工程的基本原则。

答案:软件工程的基本原则包括:尽早发现和修复缺陷、适应需求变化、迭代开发、团队合作、持续改进。

这些原则旨在提高软件开发的效率和质量。

2. 什么是软件需求工程?请列举一些软件需求工程的主要活动。

答案:软件需求工程是确定和记录软件系统应当具备的功能、性能和接口要求等方面的活动。

软件需求工程的主要活动包括需求获取、需求分析、需求规格和需求验证等。

《软件工程》试题及参考答案(第1套)

《软件工程》试题及参考答案(第1套)

《软件工程》试题及参考答案(第1套)《软件工程》试题及参考答案(第1套)一、单项选择题1. 软件工程的最终目标是:A. 提高软件开发效率B. 提高软件质量C. 提高软件维护效率D. 以上都是答案:D2. 下列哪项不属于软件需求分析的主要活动?A. 软件设计B. 需求获取和建模C. 需求验证和确认D. 需求管理答案:A3. 以下哪项不是构建阶段的主要活动?A. 编码B. 软件测试C. 软件集成D. 软件配置管理答案:D4. 下列哪个过程不属于软件项目管理过程?A. 需求管理B. 配置管理C. 软件测试D. 质量管理答案:C5. 下列哪个模型强调在系统开发的初期确定并冻结需求?A. 瀑布模型B. 快速原型模型C. V模型D. 增量模型答案:A二、多项选择题1. 软件过程模型的主要作用是:A. 规范软件开发的过程B. 定义软件开发的阶段C. 明确软件开发的任务分工D. 以上都是答案:D2. 软件生命周期是指:A. 软件的设计阶段B. 软件的测试阶段C. 软件的开发到维护的整个过程D. 软件的发布与用户反馈过程答案:C3. 软件测试的主要目标是:A. 寻找并修复软件中的错误B. 确保软件满足用户需求C. 提高软件的可靠性和质量D. 以上都是答案:D4. 下列哪个工具不属于软件配置管理工具?A. 版本控制工具B. 缺陷跟踪工具C. 自动化构建工具D. 可行性分析工具答案:D5. 下列哪个项目风险类型是与技术因素相关的?A. 市场竞争风险B. 技术风险C. 经济风险D. 法律风险答案:B三、简答题1. 请简要描述瀑布模型的开发流程。

瀑布模型的开发流程包括以下几个阶段:1) 需求分析阶段:收集用户需求,并进行详细的需求分析和建模。

2) 系统设计阶段:根据需求分析得到的系统需求,进行整体设计和详细设计。

3) 编码和单元测试阶段:将设计好的系统转化为可执行代码,并进行单元测试,验证代码的正确性。

4) 集成测试阶段:将各个模块进行集成,测试整个系统的功能和性能。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《软件工程》期末考试样题一、填空题1.软件开发模型有、、第四代技术模型、、构件组装模型、混合模型。

2.可行性研究一般可以从可行性、可行性、运行可行性、法律可行性和开发可行性等方面来研究。

3.现在向银行存款,年利率为i,若希望在n年后从银行得到F元,现在应该存入的钱数为。

4.数据流图的基本符号包括、、、。

5.Jackson图除了可以表达程序结构外,还可以表达,它首先要分析,并用适当的工具来描述。

6.详细设计的工具有、表格工具和。

7.IPO图由、处理和三个框组成。

这个图的特点是能够直观的显示三者之间的关系。

8.面向对象技术是一整套关于如何看待和的关系,以什么观点来研究问题并进行分析求解,以及如何进行系统构造的软件方法学。

面向对象方法是一种运用、、、、聚集、消息传送、多态性等概念来构造系统的软件开发方法。

二、单项选择题1.下列()属于系统软件。

A.WINDOWS 2000B.WordC.FlashD.3D MAX2.下列哪个图是N -S 图的构件( )。

A . B.C. D.3.对于螺旋模型,下列( )不是利用笛卡尔坐标表达的活动。

A. 制定计划B. 实施工程C. 风险分析D. 程序编码三、多项选择题1.软件危机可以表现为( )。

A . 产品不符合用户的需要B . 软件产品的质量差C . 软件的可维护性差D . 软件的价格昂贵2.Jackson 图中一般可能包括( )。

A .表头B .表体C .表名D .字段名3.关于内容耦合的描述正确的是( )。

A 、内容耦合是最高程度的耦合B 、应该尽量使用内容耦合C 、高级语言一般设计成允许内容耦合的形式D 、如果一个模块有多个入口,可能发生内容耦合4.下列属于不标准的书写格式( )。

A 、书写时适当使用空格分隔B 、一行写入多条语句C 、嵌套结构不使用分层缩进的写法D 、程序中不加注释四、判断题(正确的在括号内打上“√”,错误的打上“×”)A B WHILE M A A B AB1.软件生存周期是从软件开始开发到开发结束的整个时期。

()2.系统流程图是一个典型的描述逻辑系统的传统工具。

()3.数据流图和数据字典共同构成系统的逻辑模型。

()4.扇出是一个模块直接调用的模块数目,一般推荐的扇出为3或4。

()5.耦合用于衡量一个模块内部的各个元素彼此结合的紧密程度。

()6.程序运行过程中出现错误叫做容错。

()7.软件测试的目的是证明程序没有错误。

()8.白盒测试法是将程序看成一个透明的盒子,不需要了解程序的内部结构和处理过程。

()五、问答题1.什么是软件生存周期。

2.在需求分析阶段,建立目标系统的逻辑模型的具体做法是什么。

3.为什么数据流图要分层?4.软件的质量反应为哪些方面的问题?样题答案一、填空题1.瀑布模型、螺旋模型、原型模型2.经济、技术3.F/(1+i)n4.数据输入的源点和数据输出的汇点加工数据流数据存储文件5.数据结构、数据结构6.图形工具语言工具7.输入输出8.软件系统现实世界对象类继承封装二、单项选择题1、A2、C3、D三、多项选择题(每小题2分,共10分)1、ABCD2、ABCD3、AD4、BCD四、判断题1、×2、×3、√4、√5、×6、×7、×8、×9、√10、√五、问答题1.答:一个软件从定义到开发、使用和维护,直到最终被废弃,要经历一个漫长的时期,通常把软件经历的这个漫长的时期称为生存周期。

软件生存周期就是从提出软件产品开始,直到该软件产品被淘汰的全过程。

2.答:系统流程图是描述物理系统的传统工具。

它的基本思想是用图形符号以黑盒子形式描绘系统里的每个部件(程序、文件、数据库、表格、人工过程等)。

系统流程图表达的是部件的信息流程,而不表示对信息进行加工处理的控制过程。

3.答:这了表达数据处理过程的数据加工情况,用一个数据流图是不够的。

为表达稍为复杂的实际问题,需要按照问题的层次结构进行逐步分解,并以分层的数据流图反映这种结构关系。

4.答:软件需求是度量软件质量的基础,不符合需求的软件就不具备质量。

在各种标准中定义了一些开发准则,用来指导软件人员用工程化的方法来开发软件。

如果不遵守这些开发准则,软件质量就得不到保证。

往往会有一些隐含的需求没有明确地提出来。

如果软件只满足那些精确定义了的需求而没有满足这些隐含的需求,软件质量也不能保证。

软件质量是各种特性的复杂组合。

它随着应用的不同而不同,随着用户提出的质量要求不同而不同。

软件工程期末复习试题一,填空题软件工程学的内容可包括( ),结构,( ),( ),环境,管理,规范等.2. 软件生存周期一般可分为问题定义,( ),( ),设计,( ),测试,运行与维护阶段.3. 系统流程图是( )的传统工具.4. 需求分析的基本任务是准确的回答( ).5. 数据字典的内容包括六项:( ),( ),( ),数据存储,处理逻辑,外部实体.6. 在需求分析阶段常用的图形工具有( ),( ),( ).7. 模块独立的概念是( ),( ),( )和局部化概念的直接结果.8. HIPO图是由一组( )图和一张( )图组成.9. UML的定义包括( )和( )两个部分.10. 软件测试的方法有( )和( ).11. 软件=( )+( ).二,单项选择题下列关于瀑布模型的描述正确的是( ).瀑布模型的核心是按照软件开发的时间顺序将问题简化.瀑布模型具有良好的灵活性.瀑布模型采用结构化的分析与设计方法,将逻辑实现与物理实现分开.利用瀑布模型,如果发现问题修改的代价很低.下列哪个图不是N-S图的构件( ).A. B.C. D.对于下图,有关描述中错误的是( ).A.A表示数据输入的源点B.B表示数据存储文件C.C表示加工D.D表示数据存储文件下列各方法中( )不是软件测试方法.A. 白盒法B. 黑盒法C. 动态测试D. 盒法UML的基本建筑块不包括( ).框架事物关系图三,多项选择题关于数据字典正确的描述是( ).数据字典最重要的用途是作为分析阶段的工具.实现数据字典三种常见的方法有全人工过程,全自动过程,混合过程.数据字典应该容易更新和修改.可以采用卡片形式书写数据字典.( )可以作为模块.过程子程序函数宏耦合的强弱取决于( ).模块间接口的复杂程度.调用模块的方式.通过接口的信息.模块内部各个元素彼此之间的紧密结合程度.编码风格包括( ).源程序文档化数据说明方法语句结构输入/输出方法软件测试主要包括( )方面的差错和纠错.软件计划软件设计软件编码软件价格四,判断题在可行性研究中最难决断和最关键的问题是经济可行性.( )耦合是指一个模块内各个元素彼此结合的紧密程度.( )一笔交易,一个动作,甚至操作人员按一个按钮都可以看做是一次事物.( )概要设计阶段完成的主要文档是概要设计说明书.( )过大的模块可能是由于分解不充分造成的,即使降低模块独立性也必须继续分解.( )程序设计语言中应绝对禁止使用GOTO语句.( )类是关于对象性质的描述,由方法和数据组成.( )随着软件技术的发展,人们逐渐认识到阅读程序的重要性,编码不仅要强调效率还要强调清晰.( )为保证程序的安全,必须做到程序中没有任何错误存在,即容错.( )如果把软件开发所需的资源画成一个金字塔,人是最基本的资源.( )五,问答题什么是软件危机,软件危机有哪几种表现什么是模块,模块化,模块独立性什么是编码风格为什么要强调编码风格4. 什么是黑盒测试法什么是白盒测试法六, 分析题已知被测试模块流程图如下,按照"判定覆盖"法,在表格中填入满足测试要求的数据. 填写下表数据覆盖路径覆盖分支Y值TTFF比较下列两段语句,从编码风格的角度分析哪一段好些,并说明好在哪些方面.程序段一:if a>bthenif x>ythenb=yelsea=xend ifelsea=bend if程序段二:/ position_x is the position x of object; position_y is the position y of object; /if a>b thena=belseif position_x>position_y thenb=position_yelsea=position_xend ifend if参考答案一,填空题理论,方法,工具可行性研究,需求分析,编码描述物理系统系统必须做什么数据流,数据项,数据结构层次方框图,Warnier图,IPO图模块化,抽象,信息隐蔽IPO,HCUML语义,UML表示法分析方法,非分析方法程序,文档二,单项选择题CBBDA三,多项选择题A,B,C,DA,B,C,DA,B,CA,B,C,DA,B,C四,判断题√√√√√五,问答题答:软件危机指的是软件开发和维护过程中遇到的一系列严重问题.概括地说,软件危机包含下述两方面的问题:如何开发软件,怎样满足对软件的日益增长的需求;如何维护数量不断膨胀的已有软件.具体地说,软件危机主要有下列表现:产品不符合用户的实际需要.软件开发生产率提高的速度远远不能满足客观需要,软件的生产率远远低于硬件生产率和计算机应用的增长,使人们不能充分利用现代计算机硬件提供的巨大潜力.软件产品的质量差.对软件开发成本和进度的估计常常不准确.软件的可维护性差.软件文档资料通常既不完整也不合格.软件的价格昂贵,软件成本在计算机系统总成本中所占的比例逐年上升.答:模块是数据说明,可执行语句等程序对象的集合,模块可以单独被命名的而且可通过名字来访问,例如,过程,函数,子程序,宏等等都可作为模块.模块化就是把程序划分成若干个模块,每个模块具有一个子功能,把这些模块集总起来组成一个整体,可以完成指定的功能,实现问题的要求.模块独立性是软件系统中每个模块只涉及软件要求的具体子功能,而和软件系统中其他的模块接口是简单的.模块独立的概念是模块化,抽象,信息隐蔽和局部化概念的直接结果.答:编码风格又称程序设计风格或编程风格.编码风格实际上指编程的基本原则.程序实际上也是一种供人阅读的文章.编写程序时讲求程序的风格,将大量地减少人们读程序的时间.良好的编码风格有助于编写出可靠而又容易维护的程序,编码的风格在很大程度上决定着程序的质量.答:黑盒测试法把程序看成一个黑盒子,完全不考虑程序的内部结构和处理过程.黑盒测试是在程序接口进行的测试,它只检查程序功能是否能按照规格说明书的规定正常使用,程序是否能适当地接收输入数据产生正确的输出信息,并且保持外部信息的完整性.黑盒测试又称为功能测试.白盒测试法的前提是可以把程序看成装在一个透明的白盒子里,也就是完全了解程序的结构和处理过程.这种方法按照程序内部的逻辑测试程序,检验程序中的每条通路是否都能按预定要求正确工作,白盒测试又称为结构测试.六, 分析题答数据覆盖路径覆盖分支Y值A=3 B=1 Y=6ceTT12A=1 B=2 Y=0bdFF-10注意:本题答案不唯一,学生给出的数字正确就应该算对.答:第二段程序优于第一段.注释起到提示的作用,利于程序阅读者对程序段全貌的理解缩进格式清晰的显示程序中逻辑判断的结构.变量命名方式表明变量的含义.BABAedbTTFFReturnY=Y-10Y=Y+10(A=3)AND(Y>1)Y=Y/3c(A>2)AND(B=1)beginWHILE XBUNTIL YCABCD软件工程期末考试试题、试卷一、单项选择题(本大题共20小题,每小题1分,共20分)1.软件测试的目的是()。

相关文档
最新文档