版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第一章练习题一、判断题 1. 螺旋模型是在瀑布模型和增量模型的基础上增加了风险分析活动。()2. .软件是指用程序设计语言(如PASCAL ,C,VISUAL BASIC 等)编写的程序,软件开发实际上就是编写程序代码。(X) 3. 在面向对象的软件开发方法中,每个类都存在其相应的对象,类是对象的实例,对象是生成类的模板。(X) 4. 快速原型模型可以有效地适应用户需求的动态变化。( ) 5. 类是关于对象性质的描述,由方法和数据组成。( )6. 如果把软件开发所需的资源画成一个金字塔,人是最基本的资源。( )二、名字解释:1. 软件:完成特定功能的程序+数据结构+文档。2. 软件危机:软件危
2、机指在计算机软件的开发和维护过程中,所遇到的一系列严重问题。3. 软件工程:将系统化的、规范的、可度量的方法应用与软件的开发、运行和维护的过程。(将工程化运用于软件中)。4. 软件生命周期:一个软件从定义、开发、使用和维护直至最终被废弃,要经历的漫长时期。5. 软件过程:为了获得高质量软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤。6. 瀑布模型:是将软件生存各个活动规定为依线性顺序联接的若干阶段的模型。它包括可行性分析、项目开发计划、需求分析、概要设计、详细设计、编码、测试盒维护。它规定了由前至后,相互衔接的固定次序,如同瀑布流水,逐级下落。7. 快速原型模型:是快速建立起
3、来的可以再计算机上运行的程序,它所能完成的功能往往是最终产品能完成的功能 的一个子集。8. 增量模型:是在项目的开发工程中以一系列的增量方式开发系统。增量方式包括增量开发和增量提交。增量开发是指在项目开发过程中以一定的时间间隔开发部分工作软件;增量提交是指在开发周期内,以一定的时间间隔增量方式向用户提交工作软件及相应文档。增量开发和增量提交可以同时使用,也可以单独使用。9. 螺旋模型:是一种演化软件开发过程模型,它兼顾了快速原型的迭代的特征以及瀑布模型的系统化与严格监控。螺旋模型最大的特点在于引入了其他模型不具备的风险分析,使软件在无法排除重大风险时有机会停止,以减小损失。同时,在每个迭代阶段
4、构建原型是螺旋模型用以减小风险的途径。螺旋模型更适合大型的昂贵的系统级的软件应用。对象。三、选择题1. 软件工程的概念是哪年提出的( B)。 A. 1988 B. 1968 C. 1948 D. 19282. 瀑布模型的关键不足在于(D )。 A. 过于简单 B. 各个阶段需要进行评审 C. 过于灵活 D. 不能适应需求的动态变更3. 以下哪一项不是软件危机的表现形式(C )。 A. 开发的软件不满足用户需要 B. 开发的软件可维护性差 C. 开发的软件价格便宜 D. 开发的软件可靠性差7. 软件开发的需求活动,其主要任务是(AD )。A. 给出软件解决方案 B. 给出系统模块结构C. 定义模
5、块算法 D. 定义需求并建立系统模型8. 以下说法错误的是( A)。 A. 文档仅仅描述和规定了软件的使用范围及相关的操作命令 B. 文档也是软件产品的一部分,没有文档的软件就不成软件 C. 软件文档的编制在软件开发工作中占有突出的地位和相当大的工作量 D. 高质量文档对于发挥软件产品的效益有着重要的意义 9. 一个项目是否开发,从经济上来说是否可行,归根结底是取决于(A )。 A. 成本估算 B. 项目计划 C. 工程管理 D. 工程网络图 21、软件是一种(C )A、程序 B、数据C、逻辑产品 D、物理产品 22、需求分析最终结果是产生( B )A、项目开发计划 B、需求规格说明书 C、设
6、计说明书 D、可行性分析报告 30、软件按照设计的要求,在规定时间和条件下达到不出故障,持续运行的要求的质量特性称为( B ) A.可用性B.可靠性C.正确性D.完整性36、对象实现了数据和操作的结合, 使数据和操作(C )于对象的统一体中。 A、结合 B、隐藏 C、封装 D、抽象37、(D )是比较理想的可重用软构件。A.子程序库 B.源代码包含文件 C.对象 D.类39、软件生存周期中时间最长的是( D )阶段。A、总体设计 B、需求分析 C、软件测试 D、软件维护 42、为使得开发人员对软件产品的各个阶段工作都进行周密的思考,从而减少返工,所以( C )的编制是很重要的。A、需求说明 B
7、、概要说明 C、软件文档 D、测试计划 52.以下哪一项不是软件危机的表现形式(3) (1)成本高(2)生产率低(3)技术发展快(4)质量得不到保证 53.以下哪一项不是面向对象的特征(4) (1)多态性(2)继承性(3)封装性(4)过程调用 59. “软件危机”是指( C) A. 计算机病毒的出现 B. 利用计算机进行经济犯罪活动 C. 软件开发和维护中出现的一系列问题 D. 人们过分迷恋计算机系统 71. 快速原型是利用原型辅助软件开发的一种新思想,它是在研究(A )的方法和技术中产生的。 A. 需求阶段 B. 设计阶段 C. 测试阶段 D. 软件开发的各个阶段 78. 软件开发过程来自用
8、户方面的主要干扰是(A) A. 功能变化 B. 经费减少 C. 设备损坏 D. 人员变化 92. 需求分析是回答系统必须(A)的问题。 A. 做什么 B. 怎么做 C. 何时做 D. 为谁做 107螺旋模型是一种将瀑布模型和 _ 结合起来的软件开发模型。(A) A 增量模型 B 专家系统 C 喷泉模型 D 变换模型 108需求规格说明书的作用不包括(C) A 软件验收的依据 B 用户与开发人员对软件要做什么的共同理解 C 软件可行性研究的依据 D 软件设计的依据 111 在软件生产的程序系统时代由于软件规模扩大和软件复杂性提高等原因导致了(A) A 软件危机 B 软件工程 C 程序设计革命 D
9、 结构化程序设计 125 需求分析中开发人员要从用户那里了解( A) A 软件做什么 B 用户使用界面 C 输入的信息 D 软件的规模 129 可行性分析是在系统开发的早期所做的一项重要的论证工作,它是决定该系统是否开 发的决策依据,因必须给出(B )的回答。 A 确定 B行或不行 C正确 D无二义 130 需求分析阶段的任务是确定(D ) A 软件开发方法 B 软件开发工具 C 软件开发费 D软件系统的功能 140. 需求分析是分析员经了解用户的要求,认真细致地调研、分析,最终建立目标系统的逻辑模型并写出( B)的过程。 A. 模块说明书 B. 软件规格说明 C. 项目开发计划 D. 合同文
10、档 第二章练习题一、判断题 7. 软件的模块数越少,其软件成本越低。X8. 软件模块之间的耦合性越弱越好。9. 模块化,信息隐藏,抽象和逐步求精的软件设计原则有助于得到高内聚,低耦合度的软件产品。 10. 耦合是指一个模块内各个元素彼此结合的紧密程度。X11. 过大的模块可能是由于分解不充分造成的,即使降低模块独立性也必须继续分解。X12. 在设计模块时,其宽度和深度要适当。13. 模块耦合的强弱取决于模块间接口的复杂程度。二、名字解释:10. 抽象:现实世界中一定事物,状态或过程之间总存在着某些相似的方面。把这些相似的方面集中和概括起来,暂时忽略它们之间的差异,这就是抽象(抽出事物本质的共同
11、的特征而暂不考虑它的细节,不考虑其它因素。)。11. 模块化:就是把程序划分独立命名且可独立访问的模块,每个模块完成一个子功能,把这些模块集成起来构成一个整体,可以完成指定的功能满足用户的需求。12. 逐步求精: 为了能集中精力解决主要问题而尽量推迟对问题细节的考虑。逐步求精是人类解决复杂问题时采用的基本方法,也是许多软件工程技术的基础。13. 耦合:是对一个软件结构内不同模块之间互联程度的度量。14. 内聚:标志一个模块内各个元素彼此结合的紧密程度,它是信息隐藏和局部化概念的自然扩展。15. 模块独立:是模块化、抽象、信息隐藏和局部化概念的直接结果。16. 信息隐蔽:指在设计和确定模块时,使
12、得一个模块内包含的信息,对于不需要这些信息的其它模块来说,是不能访问的。三、选择题10. 在面向对象的设计中,我们应遵循的设计准则除了模块化、抽象、低耦合、高内聚以外,还有( B )。A. 隐藏复杂性 B. 信息隐蔽 C. 经常类的复用 D. 类的开发 20、为了提高模块的独立性,模块内部最好是( C )A、逻辑内聚 B、时间内聚 C、功能内聚 D、通信内聚 33、从心理学角度看,一次大模块分解为多少个子模块为宜。( B )A、31 B、72C、151 D、18238、软件设计启发规则不包括( C )A、在耦合方式上降低模块间接口的复杂性 B、模块功能应该可以预测C、将模块的控制域保持在其作用
13、域内 D、设计单入口单出口的模块 40、为了提高模块的独立性,模块之间的联系最好的是( D )。A、公共耦合 B、控制耦合 C、内容耦合 D、数据耦合48、下列几种类型中,耦合性最弱的是( D )。A、内容型 B、控制型 C、公共型 D、数据型 51. 内聚程度最高的是( A ) A、功能内聚 B巧合内聚 C、 过程内聚 D、信息内聚89. 通信内聚、逻辑内聚、顺序内聚和时间内聚的内聚性从高到低顺序是(C)A、 通信、逻辑、顺序、时间 B、 通信、时间、顺序、逻辑 C、 顺序、通信、时间、逻辑 D、 顺序、通信、逻辑、时间 90. 在下列四种模块的耦合性中,信息隐蔽性能最好的是(D)A、控制耦
14、合 B、内容耦合 C、标记耦合 D、数据耦合 103 当一个模块直接使用另一个模块的内部数据,这种模块之间的耦合为(D)A、数据耦合 B、公共耦合 C、标记耦合 D、内容耦合 134. 信息隐蔽概念与(A )这一概念直接的相关。A、模块的独立性 B、模块类型的划分 C、软件结构定义 D、软件生命周期 141. 数据耦合和控制耦合相比,则(B )成立。A、数据耦合的耦合性强 B、控制耦合的耦合性强 C、两者的耦合性相当 D、两者的耦合性需要根据具体情况分析 第三章练习题一、判断题 14. PDL的语法是开放式的,其内层语法是确定的,而外层语法则不确定。(X)15. 过程描述语言可以用于描述软件的
15、系统结构。 (X)二、名字解释:17. 结构程序设计:如果一个程序的代码块仅仅通过顺序、选择和循环这3种基本控制结构进行连接,并且每个代码块只有一个入口和一个出口,则称这个程序是结构化的。18. 详细设计:详细设计是软件工程中软件开发的一个步骤,就是对概要设计的一个细化,就是详细设计每个模块实现算法,所需的局部结构。19. 对象:由描述该对象属性的数据以及可以对这些数据施加的所有操作封装在一起构成的统一体。20. 继承:广义的说是指能够直接获得已有的性质和特征,而不必重复定义它们,狭义的说是子类自动地共享基类中定义的数据和方法的机制。21. 人机界面设计的三条“黄金规则”:1.置用户与控制之下
16、。2.减少用户记忆负担。3.保持界面一致。22. Jackson图:描述数据结构,数据元素彼此间的逻辑关系。三、选择题18、软件详细设计的主要任务是确定每个模块的(A)A、算法和使用的数据结构 B、外部接口 C、功能 D、编程 26. 如果一个程序常常需要根据多种条件的复杂组合,选择执行相应的动作,则以下哪种设计工具比较适合描述它?(A) A、判定表 B、流程图 C、PDL D、N-S图62. 下面关于PDL语言不正确的说法是(B) A、PDL是描述处理过程怎么做 B、PDL是只描述加工做什么 C、PDL也称为伪码 D、PDL的外层语法应符合一般程序设计语言常用的语法规则 87. 结构化程序设
17、计采用的三种基本控制结构是(C) A、顺序、分支、选择 B、选择、循环、重复 C、顺序、选择、循环 D、输入、变换、输出 88. 在软件设计中详细描述处理过程常用的三种工具是(D) A、SA , SD , SP B、程序流程图,IPO,PAD C、SA , SC , SD D、图形,表格,语言 101程序的三种基本控制结构的共同特点是(C) A、只能用来描述简单程序 B、不能嵌套使用 C、单入口,单出口 D、仅用于自动控制系统 123 在详细设计阶段,经常采用的工具有(A) A、PAD B、SA C、SC D、DFD 124 详细设计的结果基本决定了最终程序的(C)A、代码的规模 B、运行速度
18、 C、质量 D、可维护性 136. 不属于详细设计的主要工具有(D)。 A、IPO图 B、PAD图 C、PDL D、SC 4下列描述中错误的是(C)A、判定树中,越接近树的叶端重复次数越多。B、PAD图中的控制流程为自上而下、从左到右的执行。C、盒图又称N-S图,可以有箭头,允许随意转移。D、过程设计语言是在伪码基础上,扩充了模块定义和调用、数据定义和输入/输出而形成的。四、填空题1 描述程序处理过程的工具称为过程设计工具,它们分为图形工具、表格工具和语言三类。2 在HIPO图中,H图描述软件的层次结构,IPO图描述模块的输入、处理和输出信息。3 在HIPO图中,H图描述软件层次结构,IPO图
19、描述程序输入输出处理过程4 伪码的语法规则分为“外语法”和“内语法”。其中外语法可以用英语中一些简单的句子、短语和通用的数学符号,来描述程序应执行的功能。五、综合应用题40 .试利用 McCabe 的程序复杂性计算方法计算如下程序图的复杂性。结点:15.边:20.区域:7 V(G) = 740.下面是一段伪码程序(代码前的数字只作标号用,不参与程序执行):START1:INPUT(A,B,C,D)2:IF(A0)AND(B0)THEN3:X=A+BELSE4:X=A-B5:END6:IF(CA)OR(DB) THEN7:Y=C-DELSE8:Y=C+D9:END10:PRINT(X,Y)STO
20、P根据以上的描述(1) 画出对应的流程图和程序图。流程图: 程序图:(2) 计算程序图的环形复杂度。V(G) = 340请使用PAD图和PDL语言描述在数组A(1)A(10)中找最大数的算法。解:PDL语言:N=1WHILE N=10 DOIF A(N)=A(N+1) MAX =A(N+1);ELSE MAX =A(N) ENDIF;N=N+1;ENDWHILE;PAD图:解析人工查找时,是从第一个元素开始查找,用当前元素与下一个元素比较,将较大者作为当前元素又与下一元素比较,如此循环,直到数组末尾。2某厂对部分职工重新分配工作的政策是:年龄在20岁以下者,初中文化程度脱产学习,高中文化程度当
21、电工;年龄在20岁到40岁之间者,中学文化程度(包括高中和初中)男性当钳工,女性当车工,大学文化程度都当技术员。年龄在40岁以上者,中学文化程度(包括初中和高中)当材料员,大学文化程序当技术员。请分别用判定表(条件成立用“”表示,无关条件或条件不成立用空白表示;用 “”表示左边相应项动作的发生,空白表示不做左边相应项动作)和判定树表示上述问题的加工逻辑。12345678910年龄20并且40文化初中高中大学性别男女脱产学习电工钳工车工技术员材料员1已知一算法的N-S图如下,请画出相应的流程图和PAD图流程图:PAD图:第四章 练习题一、判断题 16. 根据编程规范,在对方法命名时, 方法名称的
22、第一个单词常常采用一个名词。X17. 随着软件技术的发展,人们逐渐认识到编码不仅要强调效率还要强调清晰。18. 程序要能直截了当地说明程序员的用意。19. 编程作业中,代码的检查是对程序进行动态分析。X20. 代码版本控制的优点之一是能获得版本控制工具中保存的任何版本。21. 程序设计语言中应绝对禁止使用GOTO语句。X22. 功能性注释嵌在源程序体中,用以解释其后的语句或程序段是在怎么做。X23. 在Java源文件中,package行要在import行之前。24. 文件头部注释需要列出文件名、函数名、作者日期等信息25. 编程作业中,代码的检查是对程序进行的静态分析。二、名字解释:三、选择题
23、13以下哪一条不属于注释的基本原则?(C) A、注释应该增加代码的清晰度。B、避免使用装饰性内容。 C、注释在源代码中的比例至少为25%.D、注释信息不仅要包括代码的功能,还应给出原因。65. 下列关于功能性注释不正确的说法是(B) A、功能性注释嵌在源程序中,用于说明程序段或语句的功能以及数据的状态 B、注释用来说明程序段,需要在每一行都要加注释 C、可使用空行或缩进,以便很容易区分注释和程序 D、修改程序也应修改注释 66. 下列关于效率的说法不正确的是(D) A、效率是一个性能要求,其目标应该在需求分析时给出 B、提高程序效率的根本途径在于选择良好的设计方法,数据结构与算法 C、效率主要
24、指处理机时间和存储器容量两个方面 D、程序的效率与程序的简单性无关 第五章 练习题一、判断题 26. 软件测试就是程序测试(和文档测试)。X27. 如果通过软件测试没有发现错误,则说明软件是正确的。X28. 集成测试主要由用户来完成。X 29. 确认测试计划应该在可行性研究阶段制定X 30. 白盒测试无需考虑模块内部的执行过程和程序结构,只要了解模块的功能即可。X 31. 一个好的测试用例在于能发现至今未发现的错误。32. 集成测试时,一般希望较早地发现系统功能的错误,所以经常采用自底向上的渐增式测试。X33. 发现错误多的程序模块,一般残留在模块中的错误也多。34. 在做程序的单元测试时,一
25、般桩模块比驱动模块容易编写。X35. 为保证程序的安全,必须做到程序中没有任何错误存在,即容错。X36. 软件测试也就是在程序编码结束后对程序进行检错和修正错误。X37. 程序测试必须由程序员自己去完成。X38.二、名字解释:23. 测试用例:通常指测试数据和预期的输出结果24. 单元测试:需要从程序的内部结构出发设计测试用例(对软件中的最小可测试单元进行检查和验证)25. 白盒测试:按照程序内部的逻辑测试程序,检测程序中重要执行通路是否都按预定要求正确工作26. 黑盒测试:是在程序结构进行的测试,它只检查程序功能是否按规格说明书的规定正常使用,程序是否适当的接收输入信息并产生正确的输入信息,
26、程序运行过程中能否保持外部信息的完整性27. 等价划分:把所有可能的输入数据(包括有效或无效的),划分成若干数据类(等价类),然后从每个数据类中选取少数有代表性的数据作为测试用例三、选择题6. 与确认测试阶段有关的文档是(A)。 A、需求规格说明书 B、概要设计说明书 C、详细设计说明书 D、源程序28、经过严密的软件测试后所提交给用户的软件产品中(B)A、软件不再包含任何错误 B、还可能包含少量软件错误 C、所提交给用户的可执行文件不会含有错误 D、文档中不会含有错误。 29、等价划分测试方法属于(A) A、黑盒测试 B、白盒测试 C、边界测试 D、系统测试 31、确认软件的功能是否与需求规
27、格说明书中所要求的功能相符的测试属于(C)A、集成测试 B、恢复测试 C、确认测试 D、单元测试 67. 测试的关键问题是(D) A、如何组织对软件的评审 B、如何验证程序的正确性 C、如何采用综合策略 D、如何选择测试用例 83. 用白盒技术设计测试用例的方法包括(B)A、边界值分析 B、条件组合覆盖 C、因果图 D、错误推测 84. 软件测试的目的是(C)A、为了表明程序没有错误 B、为了说明程序能正确地执行 C、为了发现程序中的错误 D、为了评价程序的质量 85. 针对软件需求分析所进行的软件测试是指(B) A、集成测试 B、确认测试 C、黑盒子测试 D、白盒子测试 100软件测试中根据
28、测试用例设计的方法的不同可分为黑盒测试和白盒测试两种。(D)A、前者属于静态测试,后者属于动态测试 B、前者属于动态测试,后者属于静态测试 C、都属于静态测试 D、都属于动态测试 119 软件测试方法中的静态测试方法之一为(A) A、计算机辅助静态分析 B、黑盒法 C、路径覆盖 D、边界值分析 138. 单元测试阶段主要涉及的文档。(B) A、需求设计 B、编码和详细设计 C、详细设计 D、概要设计 139. 在软件测试中,白盒测试方法是通过分析程序的(B)来设计测试用例的方法。 A、应用范围 B、内部逻辑 C、功能 D、输入数据 7下列关于测试的描述中正确的是(D(B))A、单元测试是对程序模块接口进行测试。B、组合测试是将各个程序模块组装起来进行程序之间的连接测试。C、系统测试又称验收测试。D运行测试主要由编程人员完成。8下列关于黑盒测试的描述中正确的是(B)A、黑盒测试是通过分析程序内部的逻辑与执行路线,设计测试用例进行测试的方法。B、黑盒测试又称为功能测试。C、黑盒测试主要适用于单元测试等初期阶段的测试。D、在黑盒测试中,只需要考虑正常的输入输出。8下列关于白盒测试的描述中正确的是
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 肉类冻品批发招标文件
- 招标采购合同
- 牛犊选购合同范例
- 旧房拆迁补偿安置合同
- 防火防盗仓储合同协议
- 实习补充协议
- 专业采购合同范本样本
- 管网安装劳务分包合作协议
- 信用借款合同示例
- 采购招标文件范例
- 2024-2030年中国建设工程质量检测行业发展模式规划分析报告
- 2024甘肃省建筑安全员-A证考试题库及答案
- 人教版(2024新版)七年级上册生物期末复习课件
- 2021年四川省眉山市公开招聘警务辅助人员(辅警)笔试专项训练题试卷(2)含答案
- 浙江大学医学院附属儿童医院招聘人员笔试真题2023
- 华中农业大学《操作系统实验》2021-2022学年第一学期期末试卷
- 国家开放大学电大11251丨操作系统(统设课)期末终考题库及答案
- 学生乘公交车安全
- 《药物过敏反应》课件
- 东南大学版三基内科
- 2024年辅警招录考试模拟200题及答案
评论
0/150
提交评论