已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一、 选择填空1.软件工程三要素是( B )。A) 技术、方法和工具 B) 方法、工具和过程C) 方法、对象和类 D) 过程、模型、方法2.下列关于瀑布模型的描述正确的是( D )。A)利用瀑布模型,如果发现问题修改的代价很低B)瀑布模型的核心是按照软件开发的时间顺序将问题简化C)瀑布模型具有良好的灵活性D)瀑布模型采用结构化的分析与设计方法,将逻辑实现与物理实现分开3.以下说法正确的是( B )。 A.对于软件项目,投资回收期越长,越快获得利润。B.用例模型的基本组成部件是用例、角色和用例之间的联系。C.模块接口简单是软件发生错误的一个主要原因。D.软件的质量保证工作一般在编码工作结束后才开始。4.对象实现了数据和操作的结合,使数据和操作( C )于对象的统一体中。 A.结合 B.隐藏 C.封装 D.抽象5.可行性研究的步骤中不包括(D )的内容。A.复查初步分析结果 B.研究现有的系统 C.导出新系统高层逻辑模型D.建立新系统的物理模型解法。6.技术可行性是可行性研究的关键,其主要内容一般不包括( C )。 A.风险分析 B.资源分析 C.人员分析 D.技术分析7.需求分析最终结果是产生( B )A.项目开发计划 B.需求规格说明书 C.设计说明书 D.可行性分析报告 8.需求分析的任务不包括( B )。A.问题分析 B.系统设计 C.需求描述 D.需求评审。9.需求分析中开发人员要从用户那里了解( A )A.软件做什么 B.用户使用界面 C.输入的信息 D.软件的规模10.数据字典是数据流图中所有元素的定义的集合,一般由( C )组成。A) 数据说明条目、控制流条目、加工条目、数据存储条目B) 数据流条目、数据项条目、文件条目、加工条目、C) 数据源条目、数据流条目、数据处理条目、数据文件条目D) 数据流条目、数据文件条目、数据池条目、加工条目11.在E-R模型中,包含以下基本成分( C )。A) 数据、对象、实体 B) 控制、联系、对象C) 实体、联系、属性 D) 实体、属性、对象12.一个模块的(B )是指能直接控制该模块的模块数。A.扇出数 B.扇入数 C.宽度 D.深度13.一个软件的宽度是指其控制的( C )。A.模块数 B.层数 C.跨度 D.厚度14.为了提高模块的独立性,模块内部最好是( C )A.逻辑内聚 B.时间内聚 C.功能内聚 D.通信内聚 15.如果某种内聚要求一个模块中包含的任务必须在同一段时间内执行,则这种内聚为( A )。A)时间内聚 B)逻辑内聚 C)通信内聚 D)信息内聚16.软件总体设计是指软件总体结构设计和数据设计,该阶段的主要任务不包括( D )。A.设计软件的模块结构 B.定义接口并建立数据结构 C.生成概要设计规格说明和组装测试计划 D.模块设计17.总体设计的目的是确定整个系统的( B )。A)规模 B)功能及模块结构 C)费用 D)测试方案18.当模块中包含复杂的条件组合,只有( A )能够清晰地表达出各种动作之间的对应关系。 A.判定表和判定树 B.盒图 C.流程图 D.关系图19.软件结构图中,模块框之间若有直线连接,表示它们之间存在( A )。A.调用关系 B.组成关系 C.链接关系 D.顺序执行关系 20.在详细设计阶段,经常采用的工具有( A ) A.PAD B.SA C.SC D.DFD21.结构化程序设计主要强调的是( D )A.程序的规模B.程序的效率C.程序设计语言的先进性D.程序易读性22.源程序的效率与( D )阶段确定的算法的效率直接有关。A) 概要设计 B) 总体设计 C) 单元设计 D) 详细设计23.软件复杂性度量的参数包括( B ) A.效率 B.规模 C.完整性 D.容错性24.以下哪项不属于软件测试的基本原则( B )。A) 关键是注重选择高效的测试用例 B) 选择尽可能多的测试用例C) 尽量不由程序设计者进行测试 D) 充分注意测试中的群集现象25.单元测试的测试对象是( B )。A.系统 B.程序模块 C.模块接口 D.系统功能26.下列各方法中( D )不是软件测试方法。A)白盒法 B)黑盒法 C)动态测试 D)调试法27.以下不属于白盒测试技术的是( D )A.逻辑覆盖 B.基本路径测试 C.循环覆盖测试 D.等价类划分28.软件调试技术包括( B )。 A.边界值分析 B.演绎法 C.循环覆盖 D.集成测试29.为了进一步改善软件系统的可维护性和可靠性,并为以后的改进奠定基础的软件维护称为( D )。A.纠错性维护 B.适应性维护 C.改善性维护 D.预防性维护30.软件维护产生的副作用,是指( C )。A.开发时的错误 B.隐含的错误 C.因修改软件而造成的错误 D.运行时误操作 31.维护的副作用可分三类,不包括( D )。A.代码副作用 B.数据副作用 C.文档副作用 D.人员副作用32.下列各种图不能用于动态建模的有( B )。A) 状态图 B) 类图 C) 序列图 D) 活动图33.下列不是模型元素的是( D )。A) 关联 B) 聚合 C) 依赖 D) 笔记34.软件工程管理的对象是软件( B )。A) 开发人员 B)工程项目 C)开发过程 D)开发速度35.以下不属于用例之间关系的是( A )。A) 友元 B) 扩展 C) 使用 D) 组合36.UML语言不支持的建模方式有(C )。A.静态建模 B.动态建模 C.模块化建模 D.功能建模37.软件工程管理的对象是软件(B )。A.开发人员 B.工程项目 C.开发过程 D.开发速度二、 简答题1.简述什么是软件工程? 软件工程是指导计算机软件开发和维护的一门工程学科。采用工程的概念、原理、技术和方法开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它。2.软件产品具有哪些特性? 是一种逻辑产品,与物质产品有很大的区别.软件产品的生产主要是研制,成本主要在开发和研制,开发完成后,通过复制就产生了大量软件产品.软件产品不会用坏,不存在磨损,消耗. 生产主要是脑力劳动,还末完全摆脱手工开发方式,大部分产品是定做的开发软件的费用不断增加,致使生产成本相当昂贵.(6)其质量往往靠不住,缺乏可见性3.软件生命周期可分为哪三个时期?GB 8567中规定可分为哪几个阶段?定义时期:问题的定义(客户需求)、可行性研究(为什么做);开发时期:需求分析(做什么)、总体设计(怎么做抽象)、详细设计(怎么实现具体)、编码(程序设计语实现)测试.。运行时期:软件维护。4.可行性分析的任务是什么?1.技术上可行性:研究现有技术、资源及限制能否支持和实现系统的功能、性能,主要是技术风险问题。2.经济上的可行性:进行成本估算及效益评估,确定项目是否值得开发。3.操作上的可行性:系统的操作方式在这个用户组织内是否行得通。4.社会上的可行性:主要指系统开发后能否运行,是否存在合同、责任、侵权、用户组合管理等方面的问题。从法律,社会效益研究可行性。5.简述如何检查数据流图的正确性和提高它的易理解性?可从以下几个角度来检查数据流图的正确性:数据守恒、文件的使用:父图和子图的平衡等;提高数据流图的易理解性可从以下几个方面进行:简化加工间的联系、注意分解的均匀、适当的命名等。6.什么是耦合?什么是内聚?耦合度(Coupling)是对模块间关联程度的度量。耦合的强弱取决与模块间接口的复杂性、调用模块的方式以及通过界面传送数据的多少。内聚性是对一个模块内部各个组成元素之间相互结合的紧密程度的度量指标。模块中组成元素结合的越紧密,模块的内聚性就越高,模块的独立性也就越高。理想的内聚性要求模块的功能应明确、单一,即一个模块只做一件事情。模块的内聚性和耦合性是两个相互对立且又密切相关的概念。7.衡量模块独立性的两个标准是什么?它们各表示什么含义?两个定性的度量标准:耦合与内聚性。耦合性:也称块间联系。指软件系统中各模块间相互联系紧密程度的一种度量。模块间联系越紧密,其耦合性就是越强,模块的独立性则越差。内聚性:也称块内联系。指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量,模块内元素联系越紧密,内聚性越高。8.详细设计的基本任务是什么?有哪几种描述方法?设计模块的数据结构、设计数据库的物理结构、设计模块的详细算法、其他(代码设计、输入|输出格式设计、人机对话设计)、编写详细设计说明书、评审。程序流程图、PAD图、PDL。9.什么是编码风格?为什么要强调编码风格?编码风格又称程序设计风格或变成风格。编码的目标从强调效率转变为强调清晰。良好的编码风格能在一定程度上弥补语言存在的缺陷,而如果不在注意风格就很难写出高质量的程序,尤其当多个程序员合作编写一个很大的程序时,需要强调良好而一直的编码风格,一边相互通讯,减少因不协调而引起的问题。总之,两哈的编码风格有助于编写出科考而又容易维护的程序编码的风格在很大程度上决定着程序的质量10.简述软件测试的两种基本的测试方法。第一种方法是黑盒测试,第二种是白盒测试。黑盒测试时完全不考虑程序内部结构和处理过程、只按规格说明书的规定来检查程序是否符合它的功能要求。黑盒测试时在程序接口进行的测试,又称为功能测试。白盒测试是将程序看作是一个透明的盒子,也就是说测试人员完全了解程序的内部结构和处理过程。所以测试时按照程序内部的逻辑测试程序、检验程序中的每条通路是否都能按预定的要求正确工作。白盒测试又称为结构测试。11.为什么软件测试不应该由程序的编写人员来做?答: 软件测试的目的是为了发现程序中的错误而执行程序的过程。正确认识测试的目标十分重要。测试目标决定了测试力案的设计。如果为了表明程序是正确的而进行测试,就会设计一些不易暴露错误的测试方案;相反,如果测试是为了发现程序中的错误,就会力求设计出最能暴露错误的测试方案。由于测试的目标是暴露程序中的错误,从心理学角度看,由程序的编写者自己进行测试是不恰当的。12.什么是UML?它的价值体现在什么地方?答: UML即统一建模语言,是面向对象技术领域占主导地位的标准建模语言。UML的价值在它综合体现了世界上面向对象方法实践的最好经验,支持用例驱动,一构架为中心以及递增和迭代地进行软件开发。三、 分析与设计1.依下列叙述确定软件生命周期模型。假设你被任命为一家软件公司的项目负责人,你的工作是管理该公司已被广泛应用的字处理软件的新版本开发。由于市场竞争激烈,公司规定了严格的完成期限并且已对外公布。你打算使用哪种软件生命周期模型?请说明你作出选择的理由。答:1)旧版本相当于一个原型,由此较容易确定对新版本的需求,故不必要建立原型系统来分析用户需求;2)该公司软件工程师具有开发字处理软件的丰富经验,有采用增量模型开发新版字处理软件的技术水平;3)该软件深受用户喜爱,故将其体系结构设计成开放式的,以利于今后的改进和扩充。4)用增量模型开发软件时可以并行完成开发工作,因此能够加快开发进度。2.依下列叙述确定软件生命周期模型。M公司的软件产品以开发实验型的新软件为主。用瀑布模型进行软件开发已经有近十年了,并取得了一些成功。若你作为一名管理员刚加入M公司,你认为快速原型法对公司的软件开发更加优越,请向公司副总裁写一份报告简要阐明你的理由。答:瀑布模型的缺点在于只有前一阶段的输出文档正确,后一阶段的工作才能获得正确的结果。另外瀑布模型几乎完全依赖于书面的规格说明,很可能导致最终开发出的软件产品不能真正满足用户的需要,它已不适宜开发实验型的软件。根据快速原型法的特点,原型系统已经通过与用户交互而得到验证,据此产生的规格说明文档正确地描述了用户需求,因此,在开发过程的后续阶段不会因为发现了规格说明文档的错误而进行较大的返工。开发人员通过建立原型系统已经学到了许多东西,因此,在设计和编码阶段发生错误的可能性也比较小,这自然减少了在后续阶段需要改正前面阶段所犯错误的可能性。说明它特别适合于开发探索型、实验型的软件。3.依下列叙述确定软件生命周期模型。假设要求你开发一个软件,该软件的功能是把读入的浮点数开平方,所得到的结果应该精确到小数点后4位。一旦实现并测试完之后,该产品将被抛弃。你打算使用哪种软件生命周期模型?请说明你作出选择的理由。答:对这个软件的需求很明确,实现开平方功能的算法也很熟悉,因此,既无需通过原型来分析需求也无需用原型来验证设计方案。此外,一旦实现并测试完之后,该产品将被抛弃,因此也无须使用有助于提高软件可维护性的增量模型或螺旋模型来年开发该软件。综上所述,为了开发这个简单的软件,使用大多数人熟悉的瀑布模型就可以了。4.请依描述绘制DFD图.学生入学后到教材科订书,教材科根据教材库存情况分析是否需要买书,如需购买,则向书店购买。各种资金往来(包括学校财务通知学生收款信息,并接收来自书店的应付款信息等)通过学校的会计科办理。画出教材征订系统的功能级数据流图。答:DFD图绘制如下图 参考,可有其它理解。教材征订学生书店会计结算征订教材库存订书单有效订单应付款通知单收款通知单收款信息5. 请依描述绘制DFD图并写出数据词典中的数据流条目。自学考试报名过程中有个“记录报名单”的处理。该处理主要是根据报名表(姓名、性别、身份证号、课程名)和开考课程(课程名、开考时间)、经校核,编号、填写、输出准考证给报名者,同时记录到考生名册中(准考证号、姓名、课程)。答:DFD图绘制如下图 参考,可有其它理解。报名者1.1检查报名单1.2编准考证号报名单1.4输出准考证报名单1.3填写准考证报名单开考课程考生名册正式报名单合格报名单考生正式准考证报名单数据流词典中的数据流条目:报名单=姓名+性别+身份证号+课程名开考课程=课程名+开考时间考生名册=准考证号+姓名+课程6. 如图所示的程序流程代表一个非结构化的程序,请解答以下问题。为什么说它是非结构化的?设计一个与它等价的结构化程序(画出盒图)。T开始pg停止FqFT 答:1)如图所示程序的循环控制结构有两个出口,不符合狭义的结构程序定义(单入口单出口),因此是非结构化的程序; 2)盒图如下:p(NOT p)OR(NOT q)gFT7.画出下列伪码程序的程序流程图和盒图。START IF p THENWHILE q DOfEND DOELSE BLOCKgnEND BLOCKEND IFSTOP答:流程图、盒图分别如下:。n开始pgf停止Q循环WHILE qFTpqgnfFT8.请设计下列伪码程序的语句覆盖测试用例。START INPUT(A,B,C)IF A5 THEN X=10ELSE X=1END IFIF B10 THEN Y=20ELSE Y=2IF C15 THEN Z=30ELSE Z=3END IFPRINT(X,Y,Z)STOP答:本题共需两组测试用例:(1)使3个判定表达式之值全为假输入:A=1,B=1,C=1预期的输出:X=1,Y=2,Z=3(2)使3个判定表达式之值全为真输入:A=20,B=40,C=60预期的输出:X=10,Y=20,Z=309.请设计下列伪码程序的判定覆盖测试用例。START INPUT(A,B,C,D)IF(A0)AND(B0)THEN X=A+BELSE X=A-BENDIF(CA)OR(DB)THEN Y=C-DELSE Y= C+D ENDPRINT(X,Y)STOP答:为做到判定覆盖至少需要两组测试用例。1)使两个判定表达式之值全为假输入A=-1,B=-2,C=-3,D=1预期的输出:X=1,Y=-22)使两个判定表达式之值全为真输入A=1,B=2,C=3,D=1预期的输出:X=3,Y=2分析与设计某软件公司拟采取下列措施来提高他们开发出的软件产品的可维护性,请一一判断这些措施的正确性,并说明理由。1.在分析用户需求时同时考虑维护问题。( )答:正确。在分析用户需求时同时考虑维护问题,列出将来可能增加或变更的需求,就可以在设计时为将来可能做的修改预先做一些准备,使得在用户提出这些维护需求时,实现起来比较容易些。2.测试完程序后,删去程序中的注解以缩短源程序长度。( )答:不正确。程序中的注解是提高程序可理解性的关键内部文档,删去程序中的注解必会降低程序的可读性和可理解性,从而降低软件可维护性。3.在开发过程中尽量保证各阶段文档的正确性。( )答:正确。完整准确的文档对提高软件的可理解性有重要贡献,保证文档的正确性是提高软件可维护性的关键。4.在开发过程中尽量保证各阶段文档的正确性。( )答: 正确。完整准确的文档对提高软件的可理解性有重要贡献,保证文档的正确性是提高软件可维护性的关键。5.进行总体设计时加强模块间的联系。( )答: 不正确。模块间耦合越紧密,程序就越难理解和修改,修改后测试也就比较困难。因此加强模块间的联系将降低软件的可维护性。6.在分析用户需求时同时考虑维护问题。( )答: 正确。在分析用户需求时同时考虑维护问题,列出将来可能增加或变更的需求,就可以在设计时为将来可能做的修改预先做一些准备,使得在用户提出这些维护需求时,实现起来比较容易些。7.尽可能使用高级语言编写程序。( )答: 正确。用高级语言编写程序可以给程序变量和程序模块赋予含义鲜明的名字,据此较易把程序对象和其所代表的实体联系起来
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 环保无害油菜籽订购合同
- 2024的区域代理合同范文
- 工厂房屋租赁合同谈判技巧
- 基金交易服务协议书模板
- 城市婚姻登记处离婚协议样本
- 机动车维修技术培训协议
- 个人承包水利工程协议
- 货车租赁协议书
- 2024广告公司工程合同范本
- 2024深圳市工程施工合同
- 议论文写作技巧
- 教科版五年级科学上册(风的作用) 教学课件
- 二年级下册语文试题 -“诗词大会”题库二 (word版有答案) 人教部编版
- GB/T 7702.20-2008煤质颗粒活性炭试验方法孔容积和比表面积的测定
- 新历史主义文艺思潮
- GB/T 40120-2021农业灌溉设备灌溉用热塑性可折叠软管技术规范和试验方法
- GB/T 3903.2-1994鞋类通用检验方法耐磨试验方法
- GB/T 10801.2-2018绝热用挤塑聚苯乙烯泡沫塑料(XPS)
- 12J5-1 平屋面建筑标准设计图
- 中印边境争端
- 《墨梅》课件(省一等奖)
评论
0/150
提交评论