软件工程复习试题及答案_第1页
软件工程复习试题及答案_第2页
软件工程复习试题及答案_第3页
软件工程复习试题及答案_第4页
软件工程复习试题及答案_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、一、填空题(在下划线上填写正确的答案,每题2分,共20分)等价划分是一种黑盒测试技术,这种技术把程序的输入域划分为若干个数。数据流图和数据字典共同构成了系统的逻辑模型。 盒图也称为N-S图 。这种表达方式取消了流程线,它强迫程序员以结构化方 式思考和解决问题。 软件有效性,指软件系统的时间和空间 效率。 IPO图的中文意思是 结构化设计中变换型结构的输入(Input)、加工(Processing) 输出(Output) 数据流图有四种基本成分: 源、终点,处理,存储,数据流 数据字典有以下四种条目: 数据流、数据项、数据存储、基本加工 ,其 中数据项是组成数据流和数据存储的最小元素。 软件工程

2、中的结构化分析SA是一种面向数据流的分析方法。9 .软件开发是一个自顶向下逐步细化和求精的过程,而软件测试是一个由下而上的过程。10.耦合性与内聚性是模块独立性的两个定性标准,将软件系统划分模块时,尽量做到 高内聚、低耦合,提高模块的独立性,为设计高质量的软件结构奠定基础。常用的软件开发模型有瀑布模型、原型模型、增量模型、螺旋模型、喷泉模型 软件生存周期一般可分为皿题定义、可行性研究、需求分析、设计、编码、逅 测心、运行与维护阶段。软件测试的步骤:单元、集成、系统、 验收 。 数据流图的基本符号包括加工、数据流、数据存储文件、汇点 IPO图由 输入处理和 输出三个框组成。这个图的特点是能够直观

3、的显示三者之间的关系。面向对象方法是一种运用类、 实例、 属性 、重载、消息传送、多态性等概念来构造系统的软件开发方法。 分析已有的程序,寻求比源代码更高级的抽象表现形式,这就是软件的逆向工程。 程序测试是对编码阶段的语法错、语义错和运行错进行查找的编码执行活 动。为了获得较高的模块独立性,尽量设计出具有 高内聚和 低藕合 性能的模块。 常用的测试方法有黑盒测试 和 白盒测试。可行性研究,应从技术可行性、经济可行性、运行可行性和法律和社会效益可行性等方面研究。构化程序设计中程序主要的3种基本控制结构是顺序结构、选择结构、循环结构软件生存周期中时间最长、花费精力和费用最多的一个阶段维护阶段。需求

4、分析阶段,分析人员要确定对问题的综合需求,其中最主要的 功能需求 。分析已有的程序,寻求比源代码更高级的抽象表现形式,这就是软件的 逆向工程 程序测试是对编码阶段的语法错、语义错 和运行错进行查找的编 码执行活动进行查找的编码执行活动。为了获得较高的模块独立性,尽量设计出具有低耦合 和 高内聚 性能的模块。1 .若年利率为i,n年后可得钱数为F则现在的价值F/(1+N*i) 。在结构化分析中用来描述加工逻辑的主要工具是结构化语言、判定表、 判定树 。软件测试的步骤:制定测试计划、设计测试用例、实施测试、测试后调试、做测试报告 自顶向下结合的渐增测试法,在组合模块时有两种组合策略:深度优先策落和

5、 宽度优先策略。7.结构化方法总的指导思想是_自顶向下逐层分解。1 .软件工程的三要素包括方法、工具和过程。 面向对象方法用,对象行为和属性的 分解取代了传统方法的功能分解。 HIPO图是由一组IPO图和一张_H 图组成。 在前期需求明确、资料完整的情况下尽量采用瀑布模型。用例图中,如果在完成某个功能时,偶而会执行另一个功能,则用_ 扩展关系来表示。 UML中用一端为空心三角形的连接表示泛华关系。 类是类图的主要的主要部件,由类名、属,性 _、操作3部分组成。 UML中的泛化关系就是通常所说的继承关系。 部署图用连接实线 关系表示各节点之间的通信路径。选择关系命令,可以看到Rose中对应图形的

6、分类。软件危机具有下列表现(D )。1、对软件开发成本估计不准确 2、软件产品的质量往往靠不住3、软件常常不可维护4、软件成本逐年上升A、 1、2和3B、 1、3和4C、 2、3和4 D、以上都正确软件生命周期一般都被划分为若干个独立的阶段,其中占用精力和费用最多的阶段往往 是(A )。A运行和维护阶段B、设计阶段C、代码实现阶段D、测试阶段下列属于软件的特点的是(D )。A、软件是一种逻辑实体,具有抽象性B、软件在使用过程中没有磨损、老化C、软件不同于一般程序,它的一个显著特点是规模庞大,复杂程度高D、以上都正确软件开发技术不包含(D )。A、软件开发方法学B、 软件工程环境C、软件工具D、

7、软件质量度度量需求分析阶段最重要的技术文档是(B )。A、设计说明书B、需求规格说明书C、可行性分析报告 D、用户手册数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是(C )A、数据库设计B、数据通信C、数据定义D、数据维护需求分析阶段的研究对象是(C )。A、系统分析员要求 B、用户要求C、软硬件要求 D、系统要求结构化方法的基本原则是(B )。A、模块化B、抽象与分解C、信息隐藏 D、逐步求精耦合度最高的是(B )耦合。A、环境耦合B、内容耦合 C、控制耦合D、数据耦合画软件结构图时应注意调用关系只能是(B )A、从下到上 B、从上到下C、从左到右 D、从右到左软件设计中划分模

8、块的一个准则是(C )A、低内聚低耦合B、低内聚高耦合C、高内聚低耦合D高内聚高耦合Jackson设计方法是由英国的M.Jackson提出的,它是一种面向(C)的软件设计方法。A、对象B、数据流C、数据结构D、控制结构使用白盒测试方法时,确定测试数据应根据(A )和指定的覆盖标准。A、程序内部逻辑B、程序的复杂程度C、该软件的编辑人员D、程序的功能软件维护工作的最主要的部分是(A )。A、校正性维护B、适应性维护C、完善性维护D、预防性维护PDL 是(B )语言。A、高级程序设计语言B、伪码式C、中级程序设计语言D、低级程序设计语言下列哪个阶段不属于软件生存期的三大阶段(C )。A、定义阶段B

9、、开发阶段C、编码阶段D、维护阶段可维护性的特性中相互促进的是(A )A、可理解性和可测试性B、效率和可移植性C、效率和可修改性 D、效率和结构好软件测试的目标是(B )A、证明软件是正确的B、发现错误、降低错误带来的风险C、排除软件中所有的错误D、与软件调试相同软件生命周期中所花费用最多的阶段是(D )A、详细设计B、软件编码C、软件测试D、软件维护详细设计的基本任务是确定每个模块的(D)设计。A、功能B、调用关系。、输入输出数据D、算法22.下列哪个图不是N-S图的构件(C )。23 .对于下列各图,有关描述中正确的是(A )。A、数据A和B同时输入变成C1cB、数据A变换成B和CA-CC

10、C、数据A或数据B (不能同时)输入,变换成CBD、数据A变换成B和C下列哪种方法不是度量效益的方法(B )。A、货币的时间价值B、算法模型估计C、投资回收期D、纯收入下列描述错误的是(D )。A、数据流图将各种信息流抽象成数据流的形式B、数据流图不反映控制关系、调用关系C、数据流图不反映处理逻辑的先后顺序D、数据流图不反映数据的流向软件是(C)A、处理对象和处理规则的描述B、程序C、程序及文档D、计算机系统软件需求规格说明的不应包括(B)。A、主要功能B算法的详细描述C、用户界面及运行环境D、软件性能程序的三种基本控制结构是(B)。A、过程、子程序和分程序B、顺序、选择和循环C、递归、迭代和

11、回溯D、调用、返回和转移面向对象的分析方法主要是建立三类模型,即(D)。A、系统模型、ER模型、应用模型B、对象模型、动态模型、应用模型B、ER模型、对象模型、功能模型D、动态模型、功能模型、对象模型ER模型中,包含以下基本成分(C)。A、数据、对象、实体B、控制、联系、对象C、实体、联系、属性D、实体、属性、操作1 .快速原型模型的主要特点之一是(B )A.开发完毕才见到产品B .及早提供工作软件C.及早提供全部完整软件D.开发完毕才见到工作软件2.软件工程学的一个重要目标是(D)A.提高程序的执行效率B.降低程序对存储空间的要求C.定义各种软件开发过程模型D.提高软件的可维护性3.需求分析

12、最终结果是产生(B)A-项目开发计划B.需求规格说明书C .设计说明书D 可行性分析报告4.数据存储和数据流都是处于不同状态的(D)A.分析结果B.事件C.动作D. 数据5.数据字典是对数据定义信息的集合,它所定义的对象都包含于(A )A数据流图B.程序框图C.软件结构D.方框图6、结构化设计是一种面向(A )的设计方法。A数据流B数据库C数据结构D.程序7.下列可哪个组件不是用例图的基本组件(D)A.参与者B.用例C.系统D.文档8.用例图中用例之间存在各种关系,但不包括(B)A.包含B.关联C.泛化D.扩展9.常用动词或动词词组来表示(C)A.对象B.类C.关联D.属性10.组件图中通常不

13、包括下列哪个兀素(A)A.对象B.组件C.接口D.依赖11 .好的软件结构应该是(B)A.高耦合、高内聚B.低耦合、高内聚C.高耦合、低内聚D.低耦合、低内聚12.静态模型不包括(C)A.类图B.组件图C.状态图D.部署图13.动态模型不包括(D)A.交组图B.活动图C.状态图D.部署图14. Rose模型文件的扩展名为(A)A. mdlB. A. mdlB. vsd15.逆向工程是什么过程A.模型到代码C.代码到模型C. pdfD. swfB.设计到实现D.类图到包图三、判断题(正确的在括号内打上“”,错误的打上“X”。每小题2分,共20分) TOC o 1-5 h z 1软件开发的主要任务

14、是写程序。(F )2测试只能证明程序有错误,不能证明程序没有错误。(T )3模块化程序设计中,模块越小,模块化的优点越明显。一般来说,模块的大小都在10行以下。(F )4在编制程序时,首先应该对程序的结构充分考虑,不要急于开始编码,而要写软件文档那样,很好地琢磨程序具有什么样的功能,这些功能如何安排等等。(F )5程序设计风格指导原则提出,尽量多使用临时变量。(F )6用黑盒法测试时,测试用例是根据程序内部逻辑设计的。(F )7发现错误多的程序模块,残留在模块中的错误也多。( T )8为了加快软件维护作业的进度,应尽可能增加维护人员的数目。(F )9软件维护就是改正软件中的错误。(F )10质

15、量保证是为了保证产品和服务充分满足消费者要求的质量而进行的有计划有组织 的活动。(T )11螺旋模型是利用笛卡尔坐标的四个象限分别代表四个方面的活动来表示。(F )12模块越多,开发成本越小。(F )13内聚是指一个软件结构内各个模块之间互连程序的度量。(F )14结构化设计属于面向数据流的设计方法。(T )15详细设计是在概要设计之后进行的。它利用概要设计的结果,对系统中的每个模块给出足够的过程性描述。(T )16程序运行过程中出现错误叫做容错。(F )17软件测试的目的是证明程序没有错误。(F )18白盒测试法是将程序看成一个透明的盒子,不需要了解程序的内部结构和处理过程。(F19 PAD

16、图在设置了五种基本的控制结构后,还允许递归调用。(T )20独立编译是指一个大程序的不同程序单元分别编译,然后重新连接整个程序段。(T31开发软件就是编写程序(F )32系统测试的主要方法是白盒测试法,主要进行功能、性能测试、安全性测试及可靠性测 试等(F )33编程时应尽可能利用硬件特点以提高程序效率(F )。34软件需求分析的任务是建立软件模块结构图(F )。35尽可能使用高级语言编写程序(T )。36以结构化方法建立的系统模型就是数据流图(F )。37进行总体设计时加强模块间的联系(F )。38编码时尽量多用全局变量(F )。39用CASE环境或程序自动化生成工具来自动生成一部分程序(T

17、 )40软件测试是要发现软件中所有错误(F )(T ) 41、软件开发、设计几乎都是从头开始,成本和进度很难估计。(F)42、V(G)值越高的程序往往是越不复杂、越不容易出问题的程序。(F )43、适应性维护是改进软件未来的可维护性和可靠性。(F)44、软件是逻辑产品,软件质量较容易直接度量。(T )45、随着软件复杂性的不断提高,软件的维护难度越来越大。(F )46、软件也会磨损和老化。(F)47、用穷举法测试是较现实的测试方法。(T )48、面向数据设计方法一般都包括下列任务:确定数据结构特征;用顺序、 选择和循环三种基本形式表示数据等步骤。(F)49、测试计划、测试用例,出错统计和有关的

18、分析报告一般不用长期保存。(F ) 50、McCabe建议模块规模应满足:V (G ) W20。(T ) 61.总体设计阶段要设计软件体系结构。(F ) 62、软件即程序。(T ) 63.采用对象设计系统时,首先建立系统的物理模型。(T ) 64.用例图中,扩展关系表示为虚线箭头加“extend”。(T ) 65.实现关系指定两个实体之间的一个合同。(T ) 66.状态图通常作为对类图的补充。(F ) 67.聚集关系是关联的一种形式,表示两个类之间的一般与特殊关系。(T ) 68.一个完整的模型必然描述系统的静态和动态两个方面。(F ) 69.状态图是对多个对象建模。(T ) 70.在UML中

19、,组件是指系统中可替换的物理部分。四简述题(每小题5分,共10分)测试用例测试用例(Test Case )是为某个特殊目标而编制的一组测试输入、执行条件以及预期 结果,以便测试某个程序路径或核实是否满足某个特定需求。模块化模块化是指解决一个复杂问题时自顶向下逐层把系统划分成若干模块的过程,有多种属 性,分别反映其内部特性。对象指行动或思考时作为目标的事物软件生命周期各阶段的任务是什么?答:软件生命期分为7个阶段:1、问题定义:要解决的问题是什么2、可行性研究:确定问题是否值得解,技术可行性、经济可行性、操作可行性3、需求分析:系统必须做什么4、总体设计:系统如何实现,包括系统设计和结构设计5、

20、详细设计:具体实现设计的系统6、实现:编码和测试7、运行维护:保证软件正常运行。1、什么熟浒生命周期?软律生命醐钢蹬阶段g答三软件的生命周期,.獭软件的生存周存。它是j研发软发的规模和复杂程度.,从时间上 种软件开岩的整个河程从计划开常开始到软件相需为I卜的整个而中阶良)殊行弁解,形成 相对独立的几个阶段,每个阶段又分鬼成几个具体的任务,然后按规定顺序依次完成各阶段 的任务并规定一套标准的文档作为各个阶段的开发成果,最后生产出高质量的软件。分为:一般分痛义,异发,维护二大阶段,定义阶段看可行性论证机旺发计划蠢分抓 开发阶段直摭要设计占割设j和编醐土捶护一阶段直测试垣遍5 .软件重用的效益是什么

21、?答:1、软件重用可以显著地改善软件的质量和可靠性。2、软件重用可以极大地提高软件开发的效率。3、节省软件开发的成本,避免不必要的重复劳动和人力、财力的浪费。6.结构化程序设计方法的基本要点。采用自顶向下、逐步求精的程序设计方法:在需求分析、概要设计中,都采用了自定 向下、逐层细化的方法。使用三种基本控制结构构造程序,分别是顺序、选择和循环,这三种基本结构的共同 点是、单入口、单出口,为自顶向下、逐步求精的设计方法提供了具体的实施手段。采用主程序员的组织形式:指开发程序的人员组织方式应用由一个主程序员、一个后 备程序员和一个程序管理员三人为核心,再加上一些专家、其他技术人员组成小组。7 .什么

22、是软件生命周期?简述什么是回归测试?回归测试-在集成测试过程中每当一个新模块结合进来时,程序就发生了变化:建立了 新的数据流路径,可能出现新的I/O操作,激活新的控制逻辑。这样变化有可能使原来正 常的功能出现了问题;所谓回归测试是指重新执行已经做过的测试的某个子集,以保证上 述变化没有带来非预期的错误。简述软件危机有哪几种表现?软件开发和维护的过程中常遇到的问题对于软件开发的成本和进度的估计很不准确。开发的软件产品不能完全满足用户要求。开发的软件可靠性差,软件产品质量差。软件通常没有适当的文档资料。软件的可维护性差。(6)软件开发生产率提高的速度,远远跟不上计算机应用普及深入的趋势,效率低。(

23、7)软件价格昂贵。什么是软件工程?(Software Engineering,简称为SE)是一门研究用工程化方法构建和维护有效的、实 用的和高质量的软件的学科。它涉及到程序设计语言,数据库,软件开发工具,系统平台, 标准,设计模式等方面。简述需求分析的任务?需求分析的任务就是:确定待开发的软件系统“做什么”。具体任务包括确定软件系统 的功能需求、性能需求和运行环境约束,编制软件需求规格说明书、软件系统的验收测试准 则和初步的用户手册详细设计的主要任务是什么?答:详细设计的基本任务包括:1、为每个模块进行详细的算法设计2、为模块内的数据结构进行设计3、对数据库进行物理设计4、其他设计5、编写详细

24、设计说明书6、评审自顶而下渐增测试与自底向上渐增测试各有何优缺点答:自顶而下渐增测试优点:不需要测试驱动程序,能够在测试阶段的早期实现并验证系统的主要功能,而且 能够尽早发现上层模块的接口错误。缺点:需要存根程序,底层错误发现较晚。自底而上渐增测试优点与缺点和自顶而下渐增测试相反。软件生存期各阶段的主要任务。简述需求分析工作可以分成哪四个方面?软件需求分析有三个基本原则?需求分析阶段的基本过程包括四个方面:对问题的识别,分析与综合,制定规格说明以及评审。(1)问题识别,系统分析人员要研究计划阶段产生的可行性分析报告和软件 项目实施计划。然后进行功能需求、性能需求、环境需求、可靠性需求安全保密需

25、求、用户 界面需求、资源使用需求等方面的工作。(2)分析与综合,分析员需从数据流和数据结构出发,逐步细化所有的软件功能,找出系统各元素之间的联系、接口特性和设计上的限制,分 析他们是否满足功能需求,是否合理。(3)制定规格说明,编写需求分析的文档。(4)需求 分析评审。为保证软件需求定义的质量,评审应以专门指定的人员负责,并按规程严格执行。需求分析的原则必须能够传达和理解问题的数据域和功能域必须按自顶向下、逐层分解的方式对问顺进行分解和不断细化给出系统的逻辑模型和物理模型16.以G.J.Myers的观点,简述对软件测试的目的。1、为了发现错误而执行程序的过程2、一个好的用例能够发现至今尚未发现的错误的测试3、一个成功的测试是发现至今尚未发现的错误的测试17.在面向对象的系统开发过程中,每个阶段需要建造的模型各有什么作用?1、在面向对象的系统开发过程中,每个阶段要建造不同的模型2、需求分析阶段建造的模型用来捕获系统需求分析3、设计阶段的模型是分析模型的扩充,为实现阶段作指导性和技术性的解决方案4、实现阶段的模型是真正的源代码及编译后的组件5、发布阶段是描述系统物理上的架构18 .软件工程的原则是什么?软件工程的原则是指围绕工程设计、工程支持以及工程管理在软件开发过程中必须遵 循的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论