《计算机二级软件工程优秀PPT.ppt》由会员分享,可在线阅读,更多相关《计算机二级软件工程优秀PPT.ppt(73页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、计算机二级软件工程计算机二级软件工程现在学习的是第1页,共73页第第3章章 软件工程基础软件工程基础l3.1软件工程的基本概念l3.2结构化分析方法l3.3结构化设计方法l3.4软件测试l3.5程序的调试现在学习的是第2页,共73页3.1 软件工程基本概念软件工程基本概念l软件定义与软件特点l软件危机与软件工程l软件工程过程与软件生命周期l软件工程的目标与原则l软件开发工具与开发环境现在学习的是第3页,共73页软件定义软件定义软件定义:软件是计算机系统中与硬件相互依存的另一部分,是包括程序、数据及其相关文档组成的完整集合。软件软件=程序程序+数据数据+文档文档软件按功能分为应用软件应用软件、系
2、统软件系统软件、支撑软件(或工具软件)支撑软件(或工具软件)(1)软件是指A)程序B)程序和文档C)算法加数据结构D)程序、数据和相关文档的集合答案:D现在学习的是第4页,共73页软件危机软件危机软件危机:泛指在软件的开发和维护过程中所遇到的一系列严重问题。总之,可以将软件危机归结为成本、质量、生产率等问题。现在学习的是第5页,共73页软件工程软件工程软件工程三要素:方法、工具、过程。方法:完成软件工程项目的技术手段;工具:支持软件的开发、管理、文档生成;过程:支持软件开发的各个环节的控制、管理。3)软件工程三要素方法包括工具、方法和过程,其中支持软件开发的各个环节的控制和管理过程(5)下列描
3、述中正确的是A)软件工程只是解决软件项目的管理问题B)软件工程主要解决软件产品的生产率问题C)软件工程的主要思想是强调在软件开发过程中需要应用工程化原则D)软件工程只是解决软件开发中的技术问题答案:C软件工程就是试图用工程、科学和数学的大批量与方法研制、维护计算机软件的有关技术及管理方法。软件工程的核心思想:把软件产品看作是一个工程产品来处理。软件工程包括两方面的内容:软件开发技术 软件工程管理现在学习的是第6页,共73页软件工程过程与软件生命周期软件工程过程与软件生命周期l软件工程过程:把输入转化为输出的一组彼此相关的资源和活动。(通常把用户的要求转变为软件产品的过程也叫做软件开发过程).l
4、软件生命周期:将软件产品从提出、实现、使用维护到停止使用退役的过程称为软件生命周期。l软件生命周期的三个阶段:定义阶段(可行性研究、需求分析)定义阶段(可行性研究、需求分析)开发阶段(概要设计、详细设计、编码、测试)开发阶段(概要设计、详细设计、编码、测试)运行维护阶段(使用、维护、退役)运行维护阶段(使用、维护、退役)3.下列选项中不属于软件生命周期开发阶段任务的是A)软件测试B)概要设计C)软件维护D)详细设计答案:C现在学习的是第7页,共73页软件工程的目标与原则软件工程的目标与原则l软件工程的目标:在给定成本、进度的前提下,开发出具有有效性、可靠性、可理解性、可维护性、可重用性、可适应
5、性、可移植性、可追踪性和可互操作性且满足用户需求的产品。l软件工程的原则:抽象、信息隐蔽、模块化、局部化、确定性、一致性、完备性、可验证性返回返回现在学习的是第8页,共73页软件开发工具与软件开发环境软件开发工具与软件开发环境l软件开发工具:为软件工程方法提供了自动的或半自动的软件支撑环境。l软件开发环境:是全面支持软件开发全过程的软件工具集合。这些软件工具按照一定的方法或模式组合起来,支持软件生命周期内的各个阶段和各项任务的完成。l l计算机辅助软件工程(计算机辅助软件工程(CASECASEComputerAidedSoftwareComputerAidedSoftwareEngineeri
6、ngEngineering)是当前软件开发环境中富有特色的研究工作和是当前软件开发环境中富有特色的研究工作和发展方向。发展方向。现在学习的是第9页,共73页3.2 结构化分析方法结构化分析方法l需求分析与需求分析方法l结构化分析方法l软件需求规格说明书现在学习的是第10页,共73页需求分析方法需求分析方法l结构化分析方法l面向数据流的结构化分析方法(SA)l面向数据结构的Jackson方法(JSD)l面向数据结构的结构化数据系统开发方法(DSSD)l面向对象的分析方法(OOA)按模型特性分类:l静态分析方法l动态分析方法现在学习的是第11页,共73页需求分析需求分析l软件需求:指用户对目标软件
7、系统在功能、行为、性能、设计约束等方面的期望。l需求分析任务:发现需求、求精、建模和定义需求的过程。l需求分析阶段的工作:|需求获取|需求分析|编写需求规格说明书|需求评审返回返回现在学习的是第12页,共73页结构化分析方法结构化分析方法l含义:是结构化程序设计理论在软件需求分析阶段的运用。l目的:帮助弄清用户对软件的需求。l实质:着眼于数据流,自顶向下,逐层分解,建立系统的处理流程,以数据流图和数据字典为主要工具,建立系统的逻辑模型。现在学习的是第13页,共73页结构化结构化分析分析的常用工具的常用工具l数据流图(DataFlowDiagram)DFD数据流图是描述数据处理过程的工具,从数据
8、传递和加工的角度,来刻画数据流从输入到输出的移动变换过程。加工数据流存储文件源(潭)l数据字典(Data Dictionary,DD)是结构化分析方 法的另一种有力工具,在数据字典中建立的一组严密一 致的定义有助于消除分析员和用户之间的沟通障碍,因 此将消除许多可能的误解。l判定树l判定表现在学习的是第14页,共73页表表3-1数据流图的基本符号数据流图的基本符号 符符 号号含含 义义数据的源点或终点数据的源点或终点数据流数据流或或数据存储数据存储加工加工现在学习的是第15页,共73页图图3-2 工资计算系统的顶层数据流图工资计算系统的顶层数据流图现在学习的是第16页,共73页l5)数据流图中
9、带有箭头的线段表示的是lA)控制流B)事件驱动C)模块调用D)数据流l6)在软件开发中,需求分析阶段可以使用的工具是lA)N-S图B)DFD图C)PAD图D)程序流程图D(5)在结构化分析使用的数据流图(DFD)中,利用_对其中的图形元素进行确切解释。答案:B数据字典现在学习的是第17页,共73页软件需求规格说明书软件需求规格说明书l含义(SRS):是需求分析阶段的最后成果,是软件开发中的重要文档之一。l作用:l便于用户、开发人员进行理解和交流;l反映出用户问题的结构,可以作为软件开发工作的基础和依据;l作为确认测试和验收的依据;l特点:正确性、完整性、确定性、一致性、可理解性、可验证性、课修
10、改、可追踪性。现在学习的是第18页,共73页3.3 结构化结构化设计设计方法方法l软件设计的基本概念l概要设计l详细设计现在学习的是第19页,共73页软件设计的基本概念软件设计的基本概念l软件设计基础l软件设计的基本原理l结构化设计方法现在学习的是第20页,共73页软件设计基础软件设计基础l软件设计的目标:用比较抽象概括的方式确定目标系统如何完成预定的任务,即确定系统的物理模型。l分类:概要设计和详细设计返回返回现在学习的是第21页,共73页软件设计的基本原理软件设计的基本原理l抽象:就是提取出事物的本质特征而暂时不考虑它们的细节。l模块化l信息隐蔽:在一个模块内包含的信息,对于不需要这些信息
11、的其他模块来说是不能访问的。l模块独立性:每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单。(模块独立程度是评价设计好坏的重要度量标准)现在学习的是第22页,共73页模块独立性模块独立性l内聚性:一个模块内部各个元素间彼此结合的紧密程度的度量。分类如下:(由弱到强)l偶然内聚、逻辑内聚、时间内聚、过程内聚、通信内聚、顺序内聚、功能内聚l耦合性:模块间相互连接的紧密程度的度量。分类如下(由高到低)l内容耦合、公共耦合、外部耦合、控制耦合、标记耦合、数据耦合、非直接耦合l优秀的设计:尽量做到高内聚、低耦合。(3)软件设计中模块划分应遵循的准则是A)低内聚低耦合B)高内聚低耦
12、合C)低内聚高耦合D)高内聚高耦合答案:B现在学习的是第23页,共73页结构化设计方法结构化设计方法l含义:结构化设计方法与结构化分析方法相对应,它是采用最佳的可能方法设计系统的各个组成部分以及各成分之间的内部联系的技术。l基本思想:将软件设计成由相对独立、单一功能的模块组成的结构。现在学习的是第24页,共73页概要设计概要设计l概要设计的任务:l设计软件系统结构l数据结构及数据库设计l编写概要设计文档l概要设计文档评审l常用软件结构设计工具:结构图(SC)一般模块数据信息控制信息现在学习的是第25页,共73页概要设计概要设计l l面向数据流的设计方法1.数据流的类型:l变换型:取得数据、变换
13、数据、输出数据l事务型:接受事务、分析确定其类型、选取活动通路2.设计过程:第一,分析、确认数据流图的类型;第二,说明数据流的边界;第三,把数据流映射为程序结构;第四,根据设计准则对产生的结构进行细化和求精。现在学习的是第26页,共73页概要设计概要设计l设计的准则:提高模块的独立性;模块规模适中;深度、宽度、扇出和扇入适当;顶层高扇出、中间扇出较少、底层高扇入顶层高扇出、中间扇出较少、底层高扇入使模块的作用域在该模块的控制域内;应减少模块的接口和界面的复杂性;设计成单入口、单出口的模块;设计功能可预测的模块返回返回返回返回现在学习的是第27页,共73页详细设计详细设计 详细设计:在概要设计阶
14、段完成了软件系统的总体设计,规定了各个模块的功能及模块之间的联系之后,进一步就要考虑实现各个模块规定的功能,也就是进行软件的详细设计,也称为过程设计。在详细设计阶段,要根据概要设计对每个模块的定义进行设计,以实现指定的功能、算法和外部接口所要求的模块内部的数据结构和程序的逻辑结构。现在学习的是第28页,共73页 详细设计详细设计 模块设计要完成的工作包括:l详细的算法过程设计l内部数据结构设计l程序逻辑结构设计当前流行的表示程序逻辑结构的主要方式有:l图形描述(程序流程图、N-S图及PAD图)l语言描述(PDL)现在学习的是第29页,共73页详细设计详细设计 程序流程图:程序流程图(Progr
15、am Flow Chart)又称为程序框图,是软件设计中经常使用的一种算法表达工具。它独立于程序设计语言,较为直观、清晰,易于学习掌握。控制流 加工步骤 逻辑条件现在学习的是第30页,共73页详细设计详细设计 N-S图(盒图)N-S图也称盒图(Box-Diagram),是一种符合结构化程序设计原则的图形描述工具。如下图所示为选择结构的NS图。条件条件THENELSE现在学习的是第31页,共73页图图3-10 盒图的基本符号盒图的基本符号现在学习的是第32页,共73页详细设计详细设计 PAD图:(Problem Analysis Diagram,问题分析图),是用结构化程序设计思想表现程序逻辑结
16、构的图形工具。用PAD所表达的程序,结构清晰并且结构化程度高。作为一种详细设计的工具,它比流程图更易读,且由于PAD是一种树形结构,比流程图更容易在计算机上处理,容易将PAD图转换成程序。另外,PAD除了可以描述程序的逻辑结构,还可以描述数据结构。程序开始于最左主干程序开始于最左主干线线,结结束于最左主干束于最左主干线线。现在学习的是第33页,共73页PAD图示例图示例A1A2A3An条件多多分分支支选选择择结结构构现在学习的是第34页,共73页图图3-11 PAD图的基本符号图的基本符号现在学习的是第35页,共73页详细设计详细设计PDL(Procedure Design Language)
17、PDL是一种用于描述功能模块的算法设计和加工细节的语言,称为过程设计语言。它是一种混合语言,采用英语的词汇和结构化程序设计语言的语法,类似编程语言。现在学习的是第36页,共73页3.4 软件测试软件测试l软件测试的目的l软件测试的准则l软件测试技术与方法l软件测试的实施现在学习的是第37页,共73页软件测试的目的软件测试的目的l软件测试的定义:软件测试是为了发现错误而执行程序的过程。l软件测试的目的l 测试是程序的执行过程,目的在于发现错误;l 一个好的测试用例在于能发现至今未发现的错误;l 一个成功的测试是发现了至今未发现的错误的测试。返回返回现在学习的是第38页,共73页软件测试的准则软件
18、测试的准则所有测试都应追溯到需求;严格执行测试计划,排除测试的随意性;充分注意测试中的群集现象;程序员应避免检查自己的程序;穷举测试不可能;妥善保存测试计划、测试用例、出错统计和最终分析报告,为维护提供方便。返回返回现在学习的是第39页,共73页软件测试技术与方法软件测试技术与方法测试技术分类:l按是否需要执行被测软件分:静态测试:代码检查、结构分析等。(人工测试或借助软件工具)动态测试:设计高效、合理的测试用例是关键。l按功能划分:白盒测试和黑盒测试。(注意:白盒测试和黑盒测试均属于动态测试)现在学习的是第40页,共73页白盒测试白盒测试 软件的白盒测试是把测试对象看作一个透明的盒子,它允许
19、测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。白盒测试又称为结构测试或逻辑驱动测试。白盒测试主要对程序模块进行如下的检查:l对程序模块的所有独立的执行路径至少测试一次;l对所有的逻辑判定,取“真”与取“假”的两种情况都至少测试一次;l在循环的边界和运行界限内执行循环体;l测试内部数据结构的有效性等。现在学习的是第41页,共73页白盒测试白盒测试 白盒测试设计测试用例的方法:逻辑覆盖基本路径测试 现在学习的是第42页,共73页白盒测试白盒测试逻辑覆盖:逻辑覆盖是以程序内部的逻辑结构为基础设计测试用例的技术,属于白盒测试。这一方法要求测试人员对程序的逻辑
20、结构有清楚的了解,甚至要求能掌握源程序的所有细节。逻辑覆盖又可分为:语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖和路径覆盖。现在学习的是第43页,共73页图图3-12 语句覆盖语句覆盖 现在学习的是第44页,共73页白盒测试白盒测试基本路径测试:l思想:根据软件过程性描述中的控制流程确定程序的环路复杂性度量,用此度量定义基本路径集合,并由此导出一组测试用例对每一条独立执行路径进行测试。返回返回现在学习的是第45页,共73页黑盒测试黑盒测试 l黑盒测试:就是依据软件的需求规格说明书,检查程序的功能是否符合用户要求。这种测试不需要考虑程序内部的逻辑结构和内部特性,完全把测试对象看作一个
21、黑盒子。又称为功能测试或数据驱动测试。l黑盒测试主要针对以下内容:l 程序是否按照需求完整正确地实现了功能。l 程序的接口是否正确有效。l 程序输出的数据或外部数据库访问是否正确。l 程序性能是否符合需求。l 程序初始化和终止是否正确。现在学习的是第46页,共73页黑盒测试黑盒测试l黑盒测试方法有:l等价类划分法:将所有可能的输入数据划分成若干等价类,然后从每一类中选取数据作为测试用例。l边界值分析法:对各种输入输出范围的边界情况设计测试用例。l错误推测法:列举出程序中所有可能的错误和容易发生错误的特殊情况,根据它们选择测试用例。l因果图法l功能图l应用阶段:确认测试。返回返回现在学习的是第4
22、7页,共73页软件测试的实施软件测试的实施l单元测试l集成测试l确认测试l系统测试现在学习的是第48页,共73页单元测试单元测试l定义:对软件设计的最小单位模块(程序单元)进行正确性检验的测试。l目的:发现各模块内部可能存在的各种错误。l依据:详细设计说明书和源程序。l技术手段:静态分析和动态测试(以白盒测试为主,黑盒测试为辅)。现在学习的是第49页,共73页集成测试集成测试l含义:测试和组装软件的过程。它是把模块在按照设计要求组装起来的同时进行测试。l目的:发现与接口有关的错误。l依据:概要设计说明书。l组装模块方式:非增量方式和增量方式(分为自顶向下、自底向上、混合增量)。现在学习的是第5
23、0页,共73页确认测试确认测试l任务:验证软件的功能和性能及其他特性是否满足了需求规格说明书中的需求,以及软件配置是否完全、正确。l技术手段:黑盒测试。l依据:需求规格说明书。现在学习的是第51页,共73页系统测试系统测试l含义:将通过测试确认的软件,作为整个基于计算机系统的一个元素,与计算机硬件、外设、支持软件、数据和人员等其他系统元素组合在一起,在实际运行环境下对计算机系统进行一系列的集成测试和确认测试。l功能:评估系统环境下软件的性能,发现和捕捉软件中潜在的错误。l目的:在真实的系统工作环境下检验软件是否能与系统正确连接,发现软件与系统需求不一致的地方。l具体实施:功能测试、性能测试、操
24、作测试、配置测试、外部接口测试、安全性测试等。现在学习的是第52页,共73页3.5 程序的调试程序的调试l程序调试的基本概念l软件调试方法现在学习的是第53页,共73页程序调试的基本概念程序调试的基本概念l任务:诊断和改正程序中的错误诊断和改正程序中的错误。l基本步骤l错误定位l修改设计和代码,以排除错误l进行回归测试,防止引进新的错误程序调试的原则确定错误的性质和位置时的原则:分析思考与错误征兆有关的信息;分析思考与错误征兆有关的信息;避开死胡同;避开死胡同;只把调试工具当辅助手段使用;只把调试工具当辅助手段使用;避免用试探法,最多只当最后手段。避免用试探法,最多只当最后手段。现在学习的是第
25、54页,共73页程序调试的基本概念程序调试的基本概念程序调试的原则修改错误的原则:在出现错误的地方,很可能还有别的错误;在出现错误的地方,很可能还有别的错误;避免只修改错误的一部分;避免只修改错误的一部分;修正一个错误的同时还可能引入新错误;修正一个错误的同时还可能引入新错误;修改错误的过程将迫使人们暂时回到程序设计阶段;修改错误的过程将迫使人们暂时回到程序设计阶段;修改源程序代码,不要改变目标代码。修改源程序代码,不要改变目标代码。返回返回现在学习的是第55页,共73页软件调试方法软件调试方法l调试的关键在于推断程序内部的错误位置及原因。l以静态调试(通过人的思维来分析源程序代码和排错)为主
26、,动态调试为辅。l调试方法:强行排错法回溯法原因排除法现在学习的是第56页,共73页2005-4(6)下列对于软件测试的描述中正确的是_。A)软件测试的目的是证明程序是否正确B)软件测试的目的是使程序运行结果正确C)软件测试的目的是尽可能多地发现程序中的错误D)软件测试的目的是使程序符合结构化原则答案:C(7)为了使模块尽可能独立,要求_。A)模块的内聚程度要尽量高,且各模块间的耦合程度要尽量强B)模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱C)模块的内聚程度要尽量低,且各模块间的耦合程度要尽量弱D)模块的内聚程度要尽量低,且各模块间的耦合程度要尽量强答案:B(8)下列描述中正确的是_
27、。A)程序就是软件B)软件开发不受计算机系统的限制C)软件既是逻辑实体,又是物理实体D)软件是程序、数据与相关文档的集合答案:D现在学习的是第57页,共73页2005-4二、填空题(2)在面向对象方法中,类的实例称为【2】。答案:对象(3)诊断和改正程序中错误的工作通常称为【3】。答案:程序调试现在学习的是第58页,共73页2005-9(1)下列叙述中正确的是A)程序设计就是编制程序B)程序的测试必须由程序员自己去完成C)程序经调试改错后还应进行再测试D)程序经调试改错后不必进行再测试答案:C(5)下列描述中正确的是A)软件工程只是解决软件项目的管理问题B)软件工程主要解决软件产品的生产率问题
28、C)软件工程的主要思想是强调在软件开发过程中需要应用工程化原则D)软件工程只是解决软件开发中的技术问题答案:C现在学习的是第59页,共73页2005-9(6)在软件设计中,不属于过程设计工具的是A)PDL(过程设计语言)B)PAD图C)N-S图D)DFD图答案:DDFD图:数据流图(需求分析)(7)下列叙述中正确的是A)软件交付使用后还需要进行维护B)软件一旦交付使用就不需要再进行维护C)软件交付使用后其生命周期就结束D)软件维护是指修复程序中被破坏的指令答案:A现在学习的是第60页,共73页2005-9(3)在进行模块测试时,要为每个被测试的模块另外设计两类模块:驱动模块和承接模块(桩模块)
29、。其中【3】的作用是将测试数据传送给被测试的模块,并显示被测试模块所产生的结果。答案:驱动模块现在学习的是第61页,共73页2006-41)两个或两个以上模块之间关联的紧密程度称为A)耦合度B)内聚度C)复杂度D)数据传输特性答案:A2)下列叙述中正确的是A)软件测试应该由程序开发者来完成B)程序经调试后一般不需要再测试C)软件维护只包括对程序代码的维护D)以上三种说法都不对答案:D现在学习的是第62页,共73页2006-4(2)两个或两个以上模块之间关联的紧密程度称为()。A)耦合度 B)内聚度 C)复杂度 D)数据传输特性(3)下列描述中正确的是()。A)软件测试应该由程序开发者来完成 B
30、)程序经调试后一般不需要再测试 C)软件维护只包括对程序代码的维护 D)以上三种说法都不对(2)程序测试分为静态分析和动态测试。其中【2】是指不执行程序,而只是对程序文本进行检查,通过阅读和讨论,分析和发现程序中的错误。答案:静态分析AD现在学习的是第63页,共73页2006-92.从工程管理角度,软件设计一般分为两步完成,它们是:A)概要设计与详细设计 B)数据设计与接口设计C)软件结构设计与数据设计D)过程设计与数据设计答案:A 3.下列选项中不属于软件生命周期开发阶段任务的是A)软件测试B)概要设计 C)软件维护D)详细设计答案:C(2)_的任务是诊断和改正程序中的错误。程序调试程序调试
31、现在学习的是第64页,共73页2007-4(2)在结构化程序设计中,模块划分的原则是A)各模块应包括尽量多的功能B)各模块的规模应尽量大C)各模块之间的联系应尽量紧密D)模块内具有高内聚度、模块间具有低耦合度答案:D(3)下列叙述中正确的是A)软件测试的主要目的是发现程序中的错误B)软件测试的主要目的是确定程序中错误的位置C)为了提高软件测试的效率,最好由程序编制者自己来完成软件测试的工作D)软件测试是证明软件没有错误答案:A(2)软件测试分为白箱(盒)测试和黑箱(盒)测试。等价类划分法属于_测试。(4)软件生命周期可分为多个阶段,一般分为定义阶段、开发阶段和维护阶段。编码和测试属于_阶段。(
32、5)在结构化分析使用的数据流图(DFD)中,利用_对其中的图形元素进行确切解释。黑箱黑箱(盒盒)开发开发数据字典数据字典现在学习的是第65页,共73页2007-4(4)下面选项中不属于面向对象程序设计特征的是A)继承性B)多态性C)类比性D)封装性答案:C二填空题:(2)软件测试分为白箱(盒)测试和黑箱(盒)测试,等价类划分法属于测试。答案:黑箱或黑盒(4)软件生命周期可分为多个阶段,一般分为定义阶段、开发阶段和维护阶段。编码和测试属于_阶段。答案:开发现在学习的是第66页,共73页2007-9(1)软件是指A)程序B)程序和文档C)算法加数据结构D)程序、数据和相关文档的集合答案:D(2)软
33、件调试的目的是A)发现错误B)改正错误C)改善软件的性能D)验证软件的正确性答案:B现在学习的是第67页,共73页2007-9(3)在面向对象方法中,实现信息隐蔽是依靠A)对象的继承B)对象的多态C)对象的封装D)对象的分类答案:C(4)下列叙述中,不符合良好程序设计风格的是A)程序的效率第一,清晰第二B)程序的可读性好C)程序中有必要的注释D)输入数据前要有提示信息答案:A现在学习的是第68页,共73页2007-9(1)软件需求规格说明书应具有完整性、无歧义性、正确性、可验证性、可修改性等特性,其中最重要的_.(无歧义性)(2)在两种基本测试方法中,_测试的原则之一是保证所测模块中每一个独立
34、路径至少要执行一次.(白盒)现在学习的是第69页,共73页2008-4(3)软件设计中模块划分应遵循的准则是A)低内聚低耦合B)高内聚低耦合C)低内聚高耦合D)高内聚高耦合答案:B(4)在软件开发中,需求分析阶段产生的主要文档是A)可行性分析报告B)软件需求规格说明书C)概要设计说明书D)集成测试计划答案:B二、填空题:(1)测试用例包括输入值集和_值集。答案:预期输出。现在学习的是第70页,共73页2008-9一、选择题:5)数据流图中带有箭头的线段表示的是A)控制流B)事件驱动C)模块调用D)数据流答案:D6)在软件开发中,需求分析阶段可以使用的工具是A)N-S图B)DFD图C)PAD图D
35、)程序流程图答案:B二、填空题:2)按照软件测试的一般步骤,集成测试应在之后进行。答案:单元详细解答:该知识点考察的是软件测试的4个步骤:单元测试、集成测试、确认测试和系统测试。所以答案为单元测试。3)软件工程三要素方法包括工具、方法和过程,其中支持软件开发的各个环节的控制和管理答案:过程详细解答:该知识点考察的是软件工程三要素的具体内容。方法为软件开发提供了“如何做”的技术;工具为软件工程方法提供了自动的或半自动的软件支撑环境;过程:支持软件开发的各个环节的控制和管理。现在学习的是第71页,共73页2009-35)软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。下面属于应用软
36、件的是:A)编译程序B)操作系统C)教务管理系统D)汇编程序答案:C6)下面叙述中错误的是:A)软件测试的目的是发现错误并改正错误B)对被调试的程序进行“错误定位”是程序调试的必要步骤C)程序调试通常也称为DebugD)软件测试应严格执行测试计划,排除测试的随意性答案:A7)耦合性和内聚性是对模块独立性度量的两个标准。下列叙述中正确的是:A)提高耦合性降低内聚性有利于提高模块的独立性B)降低耦合性提高内聚性有利于提高模块的独立性C)耦合性是指一个模块内部各个元素间彼此结合的紧密程度D)内聚性是指模块间互相连接的紧密程度答案:B二、填空题2.软件测试可分为白盒测试和黑盒测试,基本路径测试属于(白盒)测试。现在学习的是第72页,共73页2009-9(5)软件设计中划分模块的一个准则是()。A)低内聚低耦合B)高内聚低耦合C)低内聚高耦合D)高内聚高耦合(6)下列选项中不属于结构化程序设计原则的是()。A)可封装B)自顶向下C)模块化D)逐步求精(7)软件详细设计产生的图如下:该图是()。A)N-S图B)PAD图C)程序流程图D)E-R图(2)程序流程图中的菱形框表示的是【2】。(3)软件开发过程主要分为需求分析、设计、编码与测试四个阶段,其中【3】阶段产生“软件需求规格说明书”。BAC逻辑判断逻辑判断需求分析需求分析 现在学习的是第73页,共73页