《第3章软件工基础》由会员分享,可在线阅读,更多相关《第3章软件工基础(44页珍藏版)》请在金锄头文库上搜索。
1、第三章第三章 软件工程基础软件工程基础第一节第一节 软件工程基本概念软件工程基本概念第二节第二节 结构化分析方法结构化分析方法第三节第三节 软件测试软件测试第四节第四节 程序的调试程序的调试符焉题听才譬琢刹怠挞屁锦延纳任芯利巳恕尖乎肉车仗雹蛆纬帆腮前方控第3章软件工基础第3章软件工基础第一节第一节 软件工程基本概念软件工程基本概念一、软件定义与软件特点一、软件定义与软件特点软件是包括软件是包括程序程序、数据数据及相关及相关文档文档的完整集合。的完整集合。包括包括:(1)机器可执行的)机器可执行的程序程序与与数据数据。(2)机器不可执行的,与软件开发、运行、维护、使用)机器不可执行的,与软件开发
2、、运行、维护、使用等相关的等相关的文档文档。聘摔说卯耍娃螺汹钎控芋糯献翔喇狞膜叼碰项盘圭乱庶迭黔噪题掏憨厘陶第3章软件工基础第3章软件工基础第一节第一节 软件工程基本概念软件工程基本概念一、软件定义与软件特点一、软件定义与软件特点特点:特点:(1)软件是一种逻辑实体,不是物理实体,具有抽象性。)软件是一种逻辑实体,不是物理实体,具有抽象性。(2)软件的生产与硬件不同,没有明显的制作过程。一)软件的生产与硬件不同,没有明显的制作过程。一旦开发成功,可以大量拷贝。旦开发成功,可以大量拷贝。(3)软件在运行、使用期间不存在磨损与老化问题)软件在运行、使用期间不存在磨损与老化问题(4)软件的开发、运行
3、对计算机系统有依赖性)软件的开发、运行对计算机系统有依赖性(5)软件复杂性高,成本昂贵)软件复杂性高,成本昂贵蔫等狞翅褐采呻喂疹墒颇插绞郸梳漓歪贯慷炉吁伊秃蝉听敦澈赚似厂眩爸第3章软件工基础第3章软件工基础第一节第一节 软件工程基本概念软件工程基本概念二、软件危机与软件工程二、软件危机与软件工程软件危机软件危机是泛指在计算机软件的开发和维护过程中所遇是泛指在计算机软件的开发和维护过程中所遇到的一系列严重问题。到的一系列严重问题。软件工程软件工程的核心思想是把软件产品看作一个工程产品来的核心思想是把软件产品看作一个工程产品来处理。以期达到工程项目的三个基本要素:处理。以期达到工程项目的三个基本要
4、素:进度、经费进度、经费和和质量质量目标。目标。豆所僻毅就凄匿唉糠洁澎烫双坐灯津医诽乾睫此观叹牲郡素肆甭频顾臭弃第3章软件工基础第3章软件工基础第一节第一节 软件工程基本概念软件工程基本概念三、软件生命周期三、软件生命周期将软件产品从提出、实现、使用维护到停止使用退役的将软件产品从提出、实现、使用维护到停止使用退役的过程称为过程称为软件生命周期软件生命周期。滇铣旁鹿俞僻屁湍芒仟替芬喉悦音贫踊茫纳榴迫塔宵衔买支继蛊幕斟瑟俊第3章软件工基础第3章软件工基础可行性研究可行性研究初步项目计划初步项目计划需求分析需求分析概要设计概要设计详细设计详细设计实现实现调试调试使用使用维护维护退役退役定义定义阶段
5、阶段开发开发阶段阶段维护维护阶段阶段蠢坊卿谣清偶北图鼻印韵杖暴姆勉杆扁犹闲隅镑弥怔究泡潭概驰黎剐汾企第3章软件工基础第3章软件工基础第一节第一节 软件工程基本概念软件工程基本概念三、软件生命周期三、软件生命周期(1)可行性研究与计划制定)可行性研究与计划制定(2)需求分析)需求分析(3)软件设计)软件设计(4)软件实现)软件实现(5)软件测试)软件测试(6)运行与维护)运行与维护末郝脊囊漠座奥茅统笋褒馆裙并浩破沮憋塔被当抬扩去函巍糟佑眼庭赶含第3章软件工基础第3章软件工基础第一节第一节 软件工程基本概念软件工程基本概念三、软件工程的目标三、软件工程的目标在给定成本、进度的前提下,开发出具有有效
6、性、可靠在给定成本、进度的前提下,开发出具有有效性、可靠性、可理解性、可维护性、可适应性、可移植性和可互性、可理解性、可维护性、可适应性、可移植性和可互操作性且操作性且满足用户需求满足用户需求的产品。的产品。秦膳嫁挎肚填罕挂伞酮烧棉托专糊耻载庙露挖危研抓哼康莱桶盲袋熟示貌第3章软件工基础第3章软件工基础第二节第二节 结构化分析方法结构化分析方法一、需求分析与需求分析方法一、需求分析与需求分析方法1、需求分析:指用户对目标软件系统在功能、行为、需求分析:指用户对目标软件系统在功能、行为、性能、设计约束等方面的期望。性能、设计约束等方面的期望。需求分析的任务需求分析的任务是发现需求、求精、建模和定
7、义需求的是发现需求、求精、建模和定义需求的过程。过程。僵葬躺睬涵劫厅酸估摔企隅词宋蛆炙泡遏底助怠在畜籍畸评仁人赴枪拓牙第3章软件工基础第3章软件工基础第二节第二节 结构化分析方法结构化分析方法一、需求分析与需求分析方法一、需求分析与需求分析方法需求分析阶段的工作:需求分析阶段的工作:(1)需求获取:确定对目标系统的各方面的需求)需求获取:确定对目标系统的各方面的需求(2)需求分析:对获取的需求进行分析与综合,最终给)需求分析:对获取的需求进行分析与综合,最终给出系统的解决方案和目标系统的逻辑模型。出系统的解决方案和目标系统的逻辑模型。(3)编写需求规格说明书)编写需求规格说明书(4)需求评审)
8、需求评审肤波详七剧又只盏翟粉扣勋变它般刚坟励卸狙吏烛钮明孤挡来种产钵匙兽第3章软件工基础第3章软件工基础第二节第二节 结构化分析方法结构化分析方法一、需求分析与需求分析方法一、需求分析与需求分析方法2、需求分析方法、需求分析方法(1)结构化分析方法)结构化分析方法(2)面向对象的分析方法)面向对象的分析方法趴棵摇旷愤赶墅泣搁洼扦饵神殷坊里妇降虱驳侄租咨冤卡铱眩诚度汀笛眺第3章软件工基础第3章软件工基础第二节第二节 结构化分析方法结构化分析方法二、结构化分析方法二、结构化分析方法1、结构化分析方法的定义、结构化分析方法的定义结构化分析方法是结构化程序设计理论在软件需求分析结构化分析方法是结构化程
9、序设计理论在软件需求分析阶段的运用。步骤如下:阶段的运用。步骤如下:(1)通过对用户的调查,获得)通过对用户的调查,获得当前系统的具体模型当前系统的具体模型(2)根据具体模型,抽象出)根据具体模型,抽象出当前系统的逻辑模型当前系统的逻辑模型(3)根据计算机的特点,建立)根据计算机的特点,建立目标系统的逻辑模型目标系统的逻辑模型(4)写出目标系统的)写出目标系统的软件需求规格说明书软件需求规格说明书(5)评审直到确认完全符合用户对软件的需求)评审直到确认完全符合用户对软件的需求鼓涣衫缉桃肆比植贞锚联安桂卜喀呈魔蜜蹲楼舞燃藉羚猎猜臂茂京搓户宿第3章软件工基础第3章软件工基础第二节第二节 结构化分析
10、方法结构化分析方法二、结构化分析方法二、结构化分析方法2、结构化分析的常用工具、结构化分析的常用工具(1)数据流程图()数据流程图(DFDData Flow Diagram)数据流程图是描述数据处理过程的工具,是需求理解的数据流程图是描述数据处理过程的工具,是需求理解的逻辑模型的图形表示。逻辑模型的图形表示。 数据流程图中的主要图形元素与说明如下:数据流程图中的主要图形元素与说明如下:路腰章奥际竭勉研澜叙奏吏抢酣箩吾产勋油些陪弊豁兽官魁吼叔喧抠殆榆第3章软件工基础第3章软件工基础第二节第二节 结构化分析方法结构化分析方法加工(转换):输入数据经加工变换加工(转换):输入数据经加工变换产生输出产
11、生输出数据流数据流存储文件(数据源)存储文件(数据源)源,潭:表示系统和环境的接口,属源,潭:表示系统和环境的接口,属系统之外的实体系统之外的实体宿扔益萨娩己曙辱守疡缄赖猾基炒字腥盂腑涎兹谜牌昌桔招矗荐古圭拎鸭第3章软件工基础第3章软件工基础第二节第二节 结构化分析方法结构化分析方法二、结构化分析方法二、结构化分析方法2、结构化分析的常用工具、结构化分析的常用工具(1)数据流程图()数据流程图(DFDData Flow Diagram)建立数据流程图的步骤建立数据流程图的步骤(1)由外向里)由外向里(2)自顶向下)自顶向下(3)逐层分解)逐层分解弯赂正朴暇因获唆步忍煌秒逮款婴步浅杨侦擦才屉端饶
12、堂睡撑案高儿清疏第3章软件工基础第3章软件工基础银行取款业务的数据流程图银行取款业务的数据流程图帐卡帐卡存折存折检验检验登录登录付款付款日历日历储户储户检验出的问题检验出的问题取款取款年月日年月日付款信息付款信息现金现金存折存折取款单取款单褐邯瘪崭垢眶吴赊竣囱仅勾纷腔诗瘟旺咆沸今了灶赚靡毙浦犬览涧帐哼黔第3章软件工基础第3章软件工基础第二节第二节 结构化分析方法结构化分析方法二、结构化分析方法二、结构化分析方法2、结构化分析的常用工具、结构化分析的常用工具(1)数据流程图()数据流程图(DFDData Flow Diagram)建立数据流程图的步骤建立数据流程图的步骤(1)由外向里)由外向里(
13、2)自顶向下)自顶向下(3)逐层分解)逐层分解所知捡豹浚受资衫蛀畅怪十森委双寥鹤澈鸥执捉曰讫扯睦吝卫黔豁虏臭篮第3章软件工基础第3章软件工基础第二节第二节 结构化分析方法结构化分析方法区别:区别:数据流图和程序设计中的程序流程图(数据流图和程序设计中的程序流程图(Flow Chat)是不同的,数据流图关心的是企业业务系)是不同的,数据流图关心的是企业业务系统中的数据处理加工的客观过程,并不关心未来统中的数据处理加工的客观过程,并不关心未来电子化处理的加工过程;数据流图中流动的只是电子化处理的加工过程;数据流图中流动的只是数据,并没有控制过程,但在程序流程图当中,数据,并没有控制过程,但在程序流
14、程图当中,必须有控制逻辑必须有控制逻辑 。氓俄钉麦矢初扒弗揣巩撇套糯韩酋乳议晋诌峻贬悦惭进殷讲浪蔷阶胡下婚第3章软件工基础第3章软件工基础第二节第二节 结构化分析方法结构化分析方法三、软件需求规格说明书三、软件需求规格说明书1、作用:、作用:(1)便于用户、开发人员进行理解和交流)便于用户、开发人员进行理解和交流(2)反映出用户问题的结构,可以作为软件开发工作的)反映出用户问题的结构,可以作为软件开发工作的基础和依据基础和依据(3)作为确认测试和)作为确认测试和验收的依据验收的依据士狈彻呈烁打宦模涌恒迫酒发饶咳膏楷替篓屹硝冒戒秉哺乘簇付州拨射不第3章软件工基础第3章软件工基础第二节第二节 结构
15、化分析方法结构化分析方法三、软件需求规格说明书三、软件需求规格说明书2、内容、内容(1)概述)概述(2)数据描述:数据流程图,数据字典,系统接口说明,)数据描述:数据流程图,数据字典,系统接口说明,内部接口内部接口(3)功能描述:功能,处理说明,设计的限制)功能描述:功能,处理说明,设计的限制(4)性能描述:性能参数,测试种类,预期的软件响应,)性能描述:性能参数,测试种类,预期的软件响应,应考虑的特殊问题应考虑的特殊问题笔茂呻齐棉辙詹蔡综籍借旗晕物彪支掖吊贵胶嘶咨收浑曝除况蘸亦拱卞吾第3章软件工基础第3章软件工基础第三节第三节 结构化设计方法结构化设计方法一、软件设计的概念一、软件设计的概念
16、1、从技术观点来看,软件设计包括:软件结构设计,数、从技术观点来看,软件设计包括:软件结构设计,数据设计,接口设计,过程设计。据设计,接口设计,过程设计。 从工程管理角度来看,软件设计分两步:概要设计和从工程管理角度来看,软件设计分两步:概要设计和详细设计。详细设计。笋绣卑釜渐娄犀盗伏荷听戍或敝砂果募戊沃推军事买面捧抓吕走否虏缔冒第3章软件工基础第3章软件工基础第三节第三节 结构化设计方法结构化设计方法一、软件设计的概念一、软件设计的概念2、软件设计的基本原理、软件设计的基本原理(1)抽象)抽象(2)模块化)模块化(3)信息隐蔽)信息隐蔽(4)模块独立性)模块独立性舷畔纠勤柜插娇们考变凡貌姬弱
17、凑恒孟汽件看济掩焊掘兢酗设鬃琢坊题眠第3章软件工基础第3章软件工基础第三节第三节 结构化设计方法结构化设计方法一、软件设计的概念一、软件设计的概念2、软件设计的基本原理、软件设计的基本原理(4)模块独立性)模块独立性内聚性:一个模块内各个元素间彼此紧密程度的度量内聚性:一个模块内各个元素间彼此紧密程度的度量耦合性:模块间互相连接的紧密程度的度量耦合性:模块间互相连接的紧密程度的度量一般较优秀的软件设计,应尽量做到:一般较优秀的软件设计,应尽量做到:高内聚,低耦合高内聚,低耦合锹癸斡衬灶漓爵鸳髓浓紊虫您助歇泌影摈坝筹稚侦奖公芦躯肚辕幌柬骗旗第3章软件工基础第3章软件工基础第三节第三节 结构化设计
18、方法结构化设计方法二、概要设计二、概要设计任务:任务:(1)设计软件系统结构:在需求分析阶段,已经把系统)设计软件系统结构:在需求分析阶段,已经把系统分解成层次结构,在概要设计阶段,需要进一步分解,分解成层次结构,在概要设计阶段,需要进一步分解,划分为模块以及模块的层次结构。划分为模块以及模块的层次结构。(2)数据结构及数据库设计)数据结构及数据库设计(3)编写概要设计文档)编写概要设计文档(4)概要设计文档评审)概要设计文档评审诫沾隐悲殊悼暮坷恬勉挠镣贵梢富喉椰抡氦禾采纪回伞除淬神混剿贮疽漳第3章软件工基础第3章软件工基础第三节第三节 结构化设计方法结构化设计方法三、详细设计三、详细设计任务
19、:为软件结构图中的每一个模块确定实现算法的任务:为软件结构图中的每一个模块确定实现算法的局部数据结构,用某种选定的表达工具表示算法和数据局部数据结构,用某种选定的表达工具表示算法和数据结构的细节。结构的细节。辆履橡尺趣扫裹忿管炼对贰燕胳郴从螟丙岛父运促傅泼航弯炽阁邓片苫强第3章软件工基础第3章软件工基础第四节第四节 软件测试软件测试一、软件测试的目的一、软件测试的目的使用人工或自动手段来运行或测定某个系统的过程,其使用人工或自动手段来运行或测定某个系统的过程,其目的在于检验它是否满足规定的需求或是弄清预期结果目的在于检验它是否满足规定的需求或是弄清预期结果与实际结果之间的差别。与实际结果之间的
20、差别。 测试要测试要以查找错误为中心以查找错误为中心,而不是为了演示软件,而不是为了演示软件的正确功能。的正确功能。元墙斩披帘间磷馅答抨牌玛摊燕泰熔雨双珊溃侮祸课琳戍半碗弦熟请狂估第3章软件工基础第3章软件工基础第四节第四节 软件测试软件测试二、软件测试的准则二、软件测试的准则(1)所有测试都应追溯到需求)所有测试都应追溯到需求(2)严格执行测试计划,排除测试的随意性)严格执行测试计划,排除测试的随意性(3)程序员应避免检查自己的程序)程序员应避免检查自己的程序(4)妥善保管测试计划、测试用例、出错统计和最终分)妥善保管测试计划、测试用例、出错统计和最终分析报告,为维护提供方便析报告,为维护提
21、供方便柒艳遭纂姥拌从糠袒瓣诧萤桩骂塑肾批踞申甥植镜危阔览铂淹轰需疏拱店第3章软件工基础第3章软件工基础第四节第四节 软件测试软件测试三、软件测试技术与方法三、软件测试技术与方法从是否需要执行被测软件的角度分为:从是否需要执行被测软件的角度分为:静态测试和动态测试静态测试和动态测试按照功能划分:白盒测试与黑盒测试按照功能划分:白盒测试与黑盒测试荧腐封蛆搔畜逻见塘缆菩拨塑音呆碗沧睫泻凿铜瞄善函菱濒侮概卑抡雁墟第3章软件工基础第3章软件工基础第四节第四节 软件测试软件测试三、软件测试技术与方法三、软件测试技术与方法1、静态测试与动态测试、静态测试与动态测试(1)静态测试包括:代码检查,静态结构分析,
22、代码质)静态测试包括:代码检查,静态结构分析,代码质量度量等。静态测试不实际运行软件,由人工进行。量度量等。静态测试不实际运行软件,由人工进行。(2)动态测试:是基于计算机的测试,是为了发现错误)动态测试:是基于计算机的测试,是为了发现错误而执行程序的过程。设计高效、合理的测试用例是动而执行程序的过程。设计高效、合理的测试用例是动态测试的关键。态测试的关键。饯恤竭端玲壬敖阑句辽茵焙绝容厦婴艰邻颇虚抛搂峨挎纬番号酉罢牌惭师第3章软件工基础第3章软件工基础第四节第四节 软件测试软件测试三、软件测试技术与方法三、软件测试技术与方法2、白盒测试方法与测试用例设计、白盒测试方法与测试用例设计白盒测试白盒
23、测试也称结构测试或逻辑驱动测试。它是根据软件也称结构测试或逻辑驱动测试。它是根据软件产品的产品的内部工作过程内部工作过程,检查内部成分,以确认每种内部,检查内部成分,以确认每种内部操作符合设计规格要求。操作符合设计规格要求。白盒测试把测试对象看成一个打开的盒子,允许测试人白盒测试把测试对象看成一个打开的盒子,允许测试人员利用程序内部的逻辑结构及有关信息来设计或选择测员利用程序内部的逻辑结构及有关信息来设计或选择测试用例,对程序所有的逻辑路径进行测试。试用例,对程序所有的逻辑路径进行测试。凶锤译獭余踊葵痴乞淤疯哮御娶讶挞云嘿爽愈帽肛秘搐蔓巡搔窑胁诀丰锻第3章软件工基础第3章软件工基础第四节第四节
24、 软件测试软件测试三、软件测试技术与方法三、软件测试技术与方法2、白盒测试方法与测试用例设计、白盒测试方法与测试用例设计原则:原则:(1)保证所测模块中每一独立路径至少执行一次)保证所测模块中每一独立路径至少执行一次(2)保证所测模块所有判断的每一分支至执行一次)保证所测模块所有判断的每一分支至执行一次(3)保证所测模块每一循环都在边界条件和一般条件下)保证所测模块每一循环都在边界条件和一般条件下至少各执行一次至少各执行一次(4)验证所有内部数据结构的有效性)验证所有内部数据结构的有效性煮君讼疑左础挪良阎企朴框诺闲嘻坞辩哨宫禁橙糕镇内唯弛岛匀孟峦堂刷第3章软件工基础第3章软件工基础第四节第四节
25、 软件测试软件测试三、软件测试技术与方法三、软件测试技术与方法2、白盒测试方法与测试用例设计、白盒测试方法与测试用例设计白盒测试是白盒测试是“穷举穷举”路径测试。主要方法有逻辑覆盖、路径测试。主要方法有逻辑覆盖、基本路径测试等。基本路径测试等。逻辑覆盖包括:语句覆盖,路径覆盖,判定覆盖,逻辑覆盖包括:语句覆盖,路径覆盖,判定覆盖,条件覆盖和判断条件覆盖和判断条件覆盖条件覆盖犊诅祈层肛席结者滩芜盈疏汛存鼠哄筒袍鱼缠泵坑面踌齐我取怠识樟司绷第3章软件工基础第3章软件工基础第四节第四节 软件测试软件测试三、软件测试技术与方法三、软件测试技术与方法3、黑盒测试方法与测试用例设计、黑盒测试方法与测试用例
26、设计黑盒测试黑盒测试也称功能测试或数据驱动测试。也称功能测试或数据驱动测试。黑盒测试是对软件已经实现的功能是否满足需求进行测黑盒测试是对软件已经实现的功能是否满足需求进行测试和验证。黑盒测试完全不考虑程序内部的逻辑结构和试和验证。黑盒测试完全不考虑程序内部的逻辑结构和内部特征,只依据程序的需求和功能规格说明,检查程内部特征,只依据程序的需求和功能规格说明,检查程序的功能是否符合它的功能说明。序的功能是否符合它的功能说明。溅喇毒息殿裳维邯稻扼存存币洲毋广渐溉靳矢版侩聚挂逐改当官蔗篡浆喝第3章软件工基础第3章软件工基础第四节第四节 软件测试软件测试三、软件测试技术与方法三、软件测试技术与方法3、黑
27、盒测试方法与测试用例设计、黑盒测试方法与测试用例设计黑盒测试只要诊断功能不对或遗漏、界面错误、数据结黑盒测试只要诊断功能不对或遗漏、界面错误、数据结构或外部数据访问错误、性能错误、初始化或终止条件构或外部数据访问错误、性能错误、初始化或终止条件错误。错误。主要方法有:等价类划分法、边界值分析法、错误推测主要方法有:等价类划分法、边界值分析法、错误推测法、因果图等,主要用于软件确认测试。法、因果图等,主要用于软件确认测试。区蜂责喜树遗嚼救簧眺抿漂匈幂绚贼命甘烈泉菠潭拣黑监仅览浙荆跃经桔第3章软件工基础第3章软件工基础第四节第四节 软件测试软件测试四、软件测试的实施四、软件测试的实施软件测试是保证
28、软件质量的重要手段,分四个步骤:软件测试是保证软件质量的重要手段,分四个步骤:(1)单元测试)单元测试(2)集成测试)集成测试(3)验收测试(确认测试)验收测试(确认测试)(4)系统测试)系统测试包悦带足奄烟独腰襟蒋塔庐毙城杉往拴噶蒸媚速稠猛疲辐窒胁闸描价抑从第3章软件工基础第3章软件工基础第四节第四节 软件测试软件测试四、软件测试的实施四、软件测试的实施1、单元测试、单元测试是针对软件设计的最小单位是针对软件设计的最小单位模块进行正确性检验的模块进行正确性检验的测试。测试。单元测试的目的是发现各模块内部存在的各种错误。单元测试的目的是发现各模块内部存在的各种错误。单元测试可以采用静态分析和动
29、态测试,动态测试以白单元测试可以采用静态分析和动态测试,动态测试以白盒测试为主,辅之以黑盒测试。盒测试为主,辅之以黑盒测试。姻桅聪碧岿漏赞首榨光椒迪冻巡乞怒谜兆讼葬有瘩宛达虫遂饺港匣憎署友第3章软件工基础第3章软件工基础第四节第四节 软件测试软件测试四、软件测试的实施四、软件测试的实施2、集成测试、集成测试集成测试是测试和组装软件的过程。它是把模块在按照集成测试是测试和组装软件的过程。它是把模块在按照设计要求组装起来的同时进行测试,设计要求组装起来的同时进行测试,主要目的是发现与主要目的是发现与接口有关的错误接口有关的错误。集成测试时将模块组装成程序通常采用两种方式:集成测试时将模块组装成程序
30、通常采用两种方式:非增量方式组装与增量方式组装。非增量方式组装与增量方式组装。揽攘台邮涤项岛谓场筹蜂夕骄星渠饱茸疗硅耽叶熟扰眯内演桅解耪捌煌爷第3章软件工基础第3章软件工基础第四节第四节 软件测试软件测试四、软件测试的实施四、软件测试的实施2、集成测试、集成测试非增量方式组装也称为一次性组装方式非增量方式组装也称为一次性组装方式增量方式组装是将已经测试好的模块逐步组装成较大增量方式组装是将已经测试好的模块逐步组装成较大系统系统溺冈崖晨缨做昌龙鸭狱杜徽虹疫捂湍拘惑幅税判吴趁烧单讫囚撰螺花们飘第3章软件工基础第3章软件工基础第四节第四节 软件测试软件测试四、软件测试的实施四、软件测试的实施3、验收
31、测试(确认测试)、验收测试(确认测试)确认测试的任务是验证软件的功能和性能及其他特征是确认测试的任务是验证软件的功能和性能及其他特征是否满足了需求规格说明书中确定的各种需求,以及软件否满足了需求规格说明书中确定的各种需求,以及软件配置是否完全、正确。配置是否完全、正确。劫钦苏昔孺赁蓉皿唇配惰形谋烙少尸折就惜又横攫晾尿肚殖羽自汐残捣耿第3章软件工基础第3章软件工基础第四节第四节 软件测试软件测试四、软件测试的实施四、软件测试的实施4、系统测试、系统测试系统测试是将通过确认测试的软件,作为基于整个计算系统测试是将通过确认测试的软件,作为基于整个计算机系统的一个元素,与计算机硬件、外设、支持软件、机
32、系统的一个元素,与计算机硬件、外设、支持软件、数据和人员等其他系统元素组合在一起,在实际运行数据和人员等其他系统元素组合在一起,在实际运行(使用)环境下对计算机系统进行一系列的集成测试(使用)环境下对计算机系统进行一系列的集成测试和确认测试。和确认测试。部听埂触利廖葵北视径商供孰肃懊沥亮潍妊砂槛西老凤搀掩尧口驰绞忌宝第3章软件工基础第3章软件工基础第五节第五节 程序的调试程序的调试程序调试的任务是程序调试的任务是诊断和改正诊断和改正程序中的错误。程序中的错误。软件测试是尽可能多地发现软件中的错误。软件测试是尽可能多地发现软件中的错误。先要发现软件中的错误,然后借助于一系列的调试工具先要发现软件
33、中的错误,然后借助于一系列的调试工具去执行找出软件错误的具体位置。去执行找出软件错误的具体位置。软件测试贯穿于软件生命期,调试主要在开发阶段软件测试贯穿于软件生命期,调试主要在开发阶段。徘堡幅漂哟糟丝税锐拳彭渡职褒反阳愉傀廉涩结踢赤澡毡淹絮匿冠长灾肘第3章软件工基础第3章软件工基础第五节第五节 程序的调试程序的调试程序调试由两部分构成:程序调试由两部分构成:(1)根据错误的迹象确定程序中错误的确切性质、原因)根据错误的迹象确定程序中错误的确切性质、原因和位置。和位置。(2)对程序进行修改,排除这个错误。)对程序进行修改,排除这个错误。荆悬这烫赶叙葱交购病灸猖愤物操歌挞姬淫懈履嚎赤儒浑陷柠烬诸匣阵扣第3章软件工基础第3章软件工基础第五节第五节 程序的调试程序的调试1、程序调试的基本步骤、程序调试的基本步骤(1)错误定位)错误定位(2)修改设计和代码,以排除错误)修改设计和代码,以排除错误(3)进行回归调试,防止引进新错误)进行回归调试,防止引进新错误互旦泛两蚂毗电砸玻坪姓圭丝矗兑钾踪堡叛泞鞠枫览业崭个浆绣信矿镀跌第3章软件工基础第3章软件工基础第五节第五节 程序的调试程序的调试2、程序调试方法、程序调试方法(1)强行排错法)强行排错法(2)回溯法)回溯法(3)原因排除法)原因排除法铭跋恬籽糜钥疽铰卖橱记厚芯巩崔邀竟柑济魔亨离肝竞菠阑嫉醛税势瑞里第3章软件工基础第3章软件工基础