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

下载本文档

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

文档简介

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

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

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

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

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

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

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

8、是(B )A、从下到上B、从上到下C 、从左到右D、 从右到左11软件设计中划分模块的一个准则是(C)A、低内聚低耦合B 、低内聚高耦合C、高内聚低耦合D 高内聚高耦合12 Jackson 设计方法是由英国的M.Jackson 提出的,它是一种面向(C)的软件设计方法。A、对象B 、数据流C、数据结构D 、控制结构13使用白盒测试方法时,确定测试数据应根据(A)和指定的覆盖标准。A、程序内部逻辑B 、程序的复杂程度C、该软件的编辑人员D、程序的功能14软件维护工作的最主要的部分是(A)。A、校正性维护B 、适应性维护C、完善性维护D 、预防性维护15 PDL是( B)语言。A、高级程序设计语言

9、B、伪码式C 、中级程序设计语言D、低级程序设计语言16下列哪个阶段不属于软件生存期的三大阶段(C)。A、定义阶段B、开发阶段C、编码阶段D、维护阶段17可维护性的特性中相互促进的是(A)A、可理解性和可测试性B 、效率和可移植性C、效率和可修改性D、效率和结构好18软件测试的目标是(B)A、证明软件是正确的B、发现错误、降低错误带来的风险.C、排除软件中所有的错误D 、与软件调试相同19软件生命周期中所花费用最多的阶段是( D )A、详细设计B 、软件编码C 、软件测试D、软件维护20详细设计的基本任务是确定每个模块的(D)设计。A、功能 B 、调用关系C 、输入输出数据D、算法22下列哪个

10、图不是N-S 图的构件(C )。A、XB、WHILE MYBXCC、D、UNTIL NY23 对于下列各图,有关描述中正确的是(A)。A 、数据 A 和 B 同时输入变成CA*CBB、数据 A变换成 B和 CBACC 、数据 A 或数据 B(不能同时)输入,变换成CA+CBD、数据 A变换成 B和 CBAC24下列哪种方法不是度量效益的方法(B)。A、货币的时间价值B、算法模型估计C、投资回收期D、纯收入25下列描述错误的是(D)。A 、数据流图将各种信息流抽象成数据流的形式B 、数据流图不反映控制关系、调用关系C 、数据流图不反映处理逻辑的先后顺序D、数据流图不反映数据的流向26软件是( C

11、)A、 处理对象和处理规则的描述B 、程序.C、程序及文档D、计算机系统27软件需求规格说明的不应包括(B)。A、主要功能B 算法的详细描述C、用户界面及运行环境D、软件性能28程序的三种基本控制结构是(B)。A、过程、子程序和分程序B、顺序、选择和循环C、递归、迭代和回溯D、调用、返回和转移29面向对象的分析方法主要是建立三类模型,即( D)。A、 系统模型、 ER模型、应用模型B 、对象模型、动态模型、应用模型B、 ER模型、对象模型、功能模型D、动态模型、功能模型、对象模型30 ER模型中,包含以下基本成分(C)。A、数据、对象、实体B 、控制、联系、对象C、实体、联系、属性D、实体、属

12、性、操作1快速原型模型的主要特点之一是(B)A开发完毕才见到产品B及早提供工作软件C及早提供全部完整软件D 开发完毕才见到工作软件2软件工程学的一个重要目标是(D)A提高程序的执行效率B 降低程序对存储空间的要求C定义各种软件开发过程模型D提高软件的可维护性3需求分析最终结果是产生( B)A项目开发计划B需求规格说明书C设计说明书D 可行性分析报告4数据存储和数据流都是处于不同状态的(D)A 分析结果B事件C 动作D 数据5数据字典是对数据定义信息的集合,它所定义的对象都包含于( A)A数据流图B程序框图C 软件结构D方框图6、结构化设计是一种面向(A)的设计方法。A数据流B数据库C数据结构D

13、程序7下列可哪个组件不是用例图的基本组件(D)A参与者B 用例C系统D文档8用例图中用例之间存在各种关系,但不包括(B)A包含B关联C泛化D扩展9常用动词或动词词组来表示(C)A对象B类C关联D属性10组件图中通常不包括下列哪个元素(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 vsdC pdfD swf15逆向工程是什么过程( C)A模型到代码B设计到实现

14、C代码到模型D类图到包图三、判断题(正确的在括号内打上“”,错误的打上“×”。每小题2 分,共 20 分)1软件开发的主要任务是写程序。( F)2测试只能证明程序有错误 , 不能证明程序没有错误。(T )3模块化程序设计中,模块越小,模块化的优点越明显。一般来说,模块的大小都在10行以下。( F)4 在编制程序时,首先应该对程序的结构充分考虑,不要急于开始编码,而要写软件文档那样,很好地琢磨程序具有什么样的功能,这些功能如何安排等等。(F)5程序设计风格指导原则提出,尽量多使用临时变量。( F)6用黑盒法测试时,测试用例是根据程序内部逻辑设计的。( F)7发现错误多的程序模块,残留在

15、模块中的错误也多。( T)8为了加快软件维护作业的进度,应尽可能增加维护人员的数目。(F)9软件维护就是改正软件中的错误。( F)10质量保证是为了保证产品和服务充分满足消费者要求的质量而进行的有计划, 有组织的活动。(T)11螺旋模型是利用笛卡尔坐标的四个象限分别代表四个方面的活动来表示。( F)12模块越多,开发成本越小。( F)13内聚是指一个软件结构内各个模块之间互连程序的度量。( F)14结构化设计属于面向数据流的设计方法。( T)15 详细设计是在概要设计之后进行的。它利用概要设计的结果,对系统中的每个模块给出足够的过程性描述。( T)16程序运行过程中出现错误叫做容错。( F)1

16、7软件测试的目的是证明程序没有错误。( F)18 白盒测试法是将程序看成一个透明的盒子,不需要了解程序的内部结构和处理过程。( F )19 PAD 图在设置了五种基本的控制结构后,还允许递归调用。(T)20 独立编译是指一个大程序的不同程序单元分别编译,然后重新连接整个程序段。(T)31 开发软件就是编写程序(F)32 系统测试的主要方法是白盒测试法,主要进行功能、性能测试、安全性测试及可靠性测试等( F)33 编程时应尽可能利用硬件特点以提高程序效率(F)。34 软件需求分析的任务是建立软件模块结构图(F)。35 尽可能使用高级语言编写程序(T)。36 以结构化方法建立的系统模型就是数据流图

17、(F)。37 进行总体设计时加强模块间的联系(F)。38 编码时尽量多用全局变量( F)。39用 CASE环境或程序自动化生成工具来自动生成一部分程序(T)40软件测试是要发现软件中所有错误(F).( T ) 41、软件开发、设计几乎都是从头开始,成本和进度很难估计。( F ) 42、 V( G)值越高的程序往往是越不复杂、越不容易出问题的程序。( F ) 43、适应性维护是改进软件未来的可维护性和可靠性。( F ) 44、软件是逻辑产品,软件质量较容易直接度量。( T ) 45、随着软件复杂性的不断提高,软件的维护难度越来越大。( F ) 46、软件也会磨损和老化。( F ) 47、用穷举法

18、测试是较现实的测试方法。( T )48、面向数据设计方法一般都包括下列任务:确定数据结构特征;用顺序、选择和循环三种基本形式表示数据等步骤。( F ) 49、测试计划、测试用例,出错统计和有关的分析报告一般不用长期保存。( F ) 50、 McCabe建议模块规模应满足: V( G) 20。( T) 61总体设计阶段要设计软件体系结构。( F ) 62、软件即程序。( T ) 63采用对象设计系统时,首先建立系统的物理模型。( T) 64用例图中,扩展关系表示为虚线箭头加“extend ”。( T ) 65实现关系指定两个实体之间的一个合同。( T ) 66状态图通常作为对类图的补充。( F

19、) 67聚集关系是关联的一种形式,表示两个类之间的一般与特殊关系。( T ) 68一个完整的模型必然描述系统的静态和动态两个方面。( F) 69状态图是对多个对象建模。( T) 70在 UML中,组件是指系统中可替换的物理部分。四简述题(每小题5 分,共 10 分)1. 测试用例测试用例( Test Case )是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,以便测试某个 程序路径或核实是否满足某个特定需求。2. 模块化模块化是指解决一个复杂问题时自顶向下逐层把系统划分成若干模块的过程,有多种属性,分别反映其内部特性。3.对象指行动或思考时作为目标的事物4.软件生命周期各阶段的任务

20、是什么?答:软件生命期分为7 个阶段:1、问题定义:要解决的问题是什么2、可行性研究:确定问题是否值得解,技术可行性、经济可行性、操作可行性3、需求分析:系统必须做什么4、总体设计:系统如何实现,包括系统设计和结构设计5、详细设计:具体实现设计的系统6、实现:编码和测试7、 运行维护:保证软件正常运行。.5软件重用的效益是什么?答: 1、软件重用可以显著地改善软件的质量和可靠性。2、软件重用可以极大地提高软件开发的效率。3、节省软件开发的成本,避免不必要的重复劳动和人力、财力的浪费。6结构化程序设计方法的基本要点。1. 采用自顶向下、逐步求精的程序设计方法:在需求分析、概要设计中,都采用了自定

21、向下、逐层细化的方法。2. 使用三种基本控制结构构造程序, 分别是顺序、 选择和循环, 这三种基本结构的共同点是、单入口、单出口,为自顶向下、逐步求精的设计方法提供了具体的实施手段。3. 采用主程序员的组织形式: 指开发程序的人员组织方式应用由一个主程序员、 一个后备程序员和一个程序管理员三人为核心,再加上一些专家、其他技术人员组成小组。7什么是软件生命周期?8简述什么是回归测试?回归测试 -在集成测试过程中每当一个新模块结合进来时,程序就发生了变化:建立了新的数据流路径,可能出现新的 I/O 操作,激活新的控制逻辑。这样变化有可能使原来正常的功能出现了问题;所谓回归测试是指重新执行已经做过的

22、测试的某个子集,以保证上述变化没有带来非预期的错误。9简述软件危机有哪几种表现?软件开发和维护的过程中常遇到的问题( 1)对于软件开发的成本和进度的估计很不准确。( 2)开发的软件产品不能完全满足用户要求。( 3)开发的软件可靠性差,软件产品质量差。( 4)软件通常没有适当的文档资料。( 5)软件的可维护性差。.( 6)软件开发生产率提高的速度,远远跟不上计算机应用普及深入的趋势,效率低。( 7)软件价格昂贵。10什么是软件工程?(SoftwareEngineering,简称为 SE)是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。它涉及到程序设计语言,数据库,软件开发工具

23、,系统平台,标准,设计模式等方面。11简述需求分析的任务?需求分析的任务就是:确定待开发的软件系统“做什么” 。具体任务包括确定软件系统的功能需求、 性能需求和运行环境约束, 编制软件需求规格说明书、 软件系统的验收测试准则和初步的用户手册12详细设计的主要任务是什么?答:详细设计的基本任务包括:1、为每个模块进行详细的算法设计2、为模块内的数据结构进行设计3、对数据库进行物理设计4、其他设计5、编写详细设计说明书6、评审13自顶而下渐增测试与自底向上渐增测试各有何优缺点答:自顶而下渐增测试优点:不需要测试驱动程序,能够在测试阶段的早期实现并验证系统的主要功能,而且能够尽早发现上层模块的接口错

24、误。缺点:需要存根程序,底层错误发现较晚。自底而上渐增测试优点与缺点和自顶而下渐增测试相反。14软件生存期各阶段的主要任务。15简述需求分析工作可以分成哪四个方面?软件需求分析有三个基本原则?需求分析阶段的基本过程包括四个方面:对问题的识别,分析与综合,制定规格说明以及评审。(1)问题识别, 系统分析人员要研究计划阶段产生的可行性分析报告和软件项目实施计划。然后进行功能需求、性能需求、环境需求、可靠性需求安全保密需求、用户界面需求、 资源使用需求等方面的工作。( 2)分析与综合,分析员需从数据流和数据结构出.发,逐步细化所有的软件功能, 找出系统各元素之间的联系、 接口特性和设计上的限制,分析

25、他们是否满足功能需求,是否合理。 ( 3)制定规格说明,编写需求分析的文档。 ( 4)需求分析评审。 为保证软件需求定义的质量, 评审应以专门指定的人员负责, 并按规程严格执行。需求分析的原则1. 必须能够传达和理解问题的数据域和功能域2. 必须按自顶向下、逐层分解的方式对问顺进行分解和不断细化3. 给出系统的逻辑模型和物理模型16以的观点,简述对软件测试的目的。1、为了发现错误而执行程序的过程2、一个好的用例能够发现至今尚未发现的错误的测试3、一个成功的测试是发现至今尚未发现的错误的测试17在面向对象的系统开发过程中,每个阶段需要建造的模型各有什么作用?1、在面向对象的系统开发过程中,每个阶段要建造不同的模型2、需求分析阶段建造的模型用来捕获系统

温馨提示

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

评论

0/150

提交评论