软工程系统维护概要课件

上传人:无*** 文档编号:241022226 上传时间:2024-05-25 格式:PPTX 页数:51 大小:860.91KB
返回 下载 相关 举报
软工程系统维护概要课件_第1页
第1页 / 共51页
软工程系统维护概要课件_第2页
第2页 / 共51页
软工程系统维护概要课件_第3页
第3页 / 共51页
点击查看更多>>
资源描述
软件工程导论软件工程导论18.1 8.1 软件维护的概念软件维护的概念维护目的:维护目的:满足用户对已开发产品的性能与运行环境不断满足用户对已开发产品的性能与运行环境不断提高的要求,进而达到延长软件寿命的目的。提高的要求,进而达到延长软件寿命的目的。维护的概念:维护的概念:所谓所谓软件维护软件维护就是在软件已经交付使用之后,就是在软件已经交付使用之后,为了改正错误或满足新的需要而修改软件的过程。为了改正错误或满足新的需要而修改软件的过程。21、改正性维护、改正性维护:对程序使用期间发现的程序错:对程序使用期间发现的程序错误进行误进行诊断和改正诊断和改正的过程;占维护工作量的过程;占维护工作量17-21%17-21%。2、适应性维护、适应性维护:配合变化了的环境进行:配合变化了的环境进行修改修改软软件的活动;占维护工作量件的活动;占维护工作量18-25%18-25%。3、完善性维护、完善性维护:满足用户在使用过程中提出:满足用户在使用过程中提出增增加新的功能加新的功能或修改已有功能的建议而进行的改或修改已有功能的建议而进行的改进工作;占维护工作量进工作;占维护工作量50-66%50-66%。4、预防性维护、预防性维护:为了:为了改善未来的可维护性改善未来的可维护性或可或可靠性而修改软件的工作;占维护工作量靠性而修改软件的工作;占维护工作量4%4%左右。左右。n维护种类:维护种类:38.2 8.2 维护的特点维护的特点一一.维护方式维护方式方式方式结构化维护结构化维护非结构化维护非结构化维护配置配置 每个阶段文档与程序代码每个阶段文档与程序代码仅有程序代码仅有程序代码开始开始 评价设计文档开始评价设计文档开始评价代码开始评价代码开始工作工作(1)(1)确定软件的结构特征、性能特性和接确定软件的结构特征、性能特性和接口特性,口特性,(2)(2)确定软件修改带来的影响,确定软件修改带来的影响,找出一种处理方法;找出一种处理方法;(3)(3)修改设计、复审;修改设计、复审;(4)(4)再编写源程序代码,进行回归测试;再编写源程序代码,进行回归测试;(5)(5)将修改后的软件交付使用。将修改后的软件交付使用。软件结构、全程软件结构、全程数据结构、系统数据结构、系统接口、性能要求、接口、性能要求、设计约束等具体设计约束等具体特点特点不清楚不清楚而很而很难确定。难确定。成本成本 维护成本较低。维护成本较低。很高很高难度难度 易于维护。易于维护。维护困难维护困难48.2 8.2 维护的特点维护的特点二二.与软件维护有关的问题与软件维护有关的问题影响影响维护维护因素因素开发方法开发方法开发条件开发条件(1)(1)模块化详细设计文档有助于理解软模块化详细设计文档有助于理解软件的件的结构、界面功能和内部流程结构、界面功能和内部流程;软件开发及维护软件开发及维护人员的水平人员的水平;使用标准的使用标准的程序设计语言程序设计语言;(2)(2)开发过程中严格而科学的管理规划开发过程中严格而科学的管理规划及清晰可靠的文档资料对发生错误后的及清晰可靠的文档资料对发生错误后的理解与纠错理解与纠错无疑是很重要的。无疑是很重要的。使用标准的使用标准的操作系统接口操作系统接口;使用规范化的使用规范化的文档资料文档资料;(3)(3)模块的模块的独立程度独立程度对软件修改的难易对软件修改的难易程度、改进和移植影响是很大的程度、改进和移植影响是很大的测试用例的有效性。测试用例的有效性。维护维护困难困难理解理解别人写的程序在没有别人写的程序在没有说明文档说明文档时,理解很困难,不为人喜欢;时,理解很困难,不为人喜欢;时间时间维护维护持续时间都很长持续时间都很长,开发人员一般不在现场,对软件没有人说,开发人员一般不在现场,对软件没有人说明。明。设计设计问题问题绝大多数软件在设计时都没有考虑绝大多数软件在设计时都没有考虑将来的修改将来的修改。除非设计中强调。除非设计中强调了模块的独立性,否则软件的修改既困难又易发生差错。了模块的独立性,否则软件的修改既困难又易发生差错。58.3 维护的过程维护的过程一一.建立软件维护的建立软件维护的组织组织,在组织中有总负责人、系统在组织中有总负责人、系统管理员和维护管理员等。管理员和维护管理员等。二二.编写维护的编写维护的报告报告 用标准化的格式表达所有软件维护的要求。要用标准化的格式表达所有软件维护的要求。要求包括下列内容:求包括下列内容:1.1.满足维护要求表中提出的要求所需要的满足维护要求表中提出的要求所需要的工作量工作量;2.2.维护要求的维护要求的性质性质;3.3.该项要求的该项要求的优先顺序优先顺序;4.4.与修改有关的与修改有关的事后数据事后数据。6n维护组织维护组织78.3 维护的过程维护的过程三三.为每一个维护要求规定一个为每一个维护要求规定一个标准化的事件序列标准化的事件序列:1.1.明确维护的类型明确维护的类型:纠错性维护纠错性维护,进一步分清是适应性维护进一步分清是适应性维护还是完善性维护;还是完善性维护;2.2.对纠错性维护从评价错误的对纠错性维护从评价错误的严重性严重性开始开始,分别分别不同程度不同程度采采取不同的方法;取不同的方法;3.3.适应性维护和完善性维护沿着同一路径推进,确定适应性维护和完善性维护沿着同一路径推进,确定优先优先顺序顺序后开始工作;后开始工作;4.4.对对恶性软件故障恶性软件故障,应把所有的资源用来解决问题;,应把所有的资源用来解决问题;5.5.对任何类型的维护都要进行同样的技术工作,包括:对任何类型的维护都要进行同样的技术工作,包括:修修改软件设计改软件设计、设计复审设计复审、必要的代码修改必要的代码修改、单元测试单元测试、集成集成测试测试、验收测试和复审验收测试和复审等。等。8维护阶段的事件流维护阶段的事件流8.3 维护的过程维护的过程9n4.4.保存维护记录保存维护记录 程序标识;程序标识;源语句数;源语句数;机器指令条数;机器指令条数;使用的程序设计语言;使用的程序设计语言;程序安装的日期;程序安装的日期;自从安装以来程序运行的次数;自从安装以来程序运行的次数;自从安装以来程序失效的次数;自从安装以来程序失效的次数;程序变动的层次和标识;程序变动的层次和标识;10 因程序变动而增加的源语句数;因程序变动而增加的源语句数;因程序变动因程序变动而删除的源语句数;而删除的源语句数;每个改动耗费的人时数;每个改动耗费的人时数;程序改动的日期;程序改动的日期;软件工程师的名字;软件工程师的名字;维护维护要求表的标识;要求表的标识;维护类型;维护类型;维护开始和完成维护开始和完成的日期;的日期;累计用于维护的人时数;累计用于维护的人时数;与完成的与完成的维护相联系的纯效益。维护相联系的纯效益。n 115.5.评价维护活动评价维护活动从从7 7个方面度量维护工作:个方面度量维护工作:(1)(1)每次程序运行平均失效的次数;每次程序运行平均失效的次数;(2)(2)用于每一类维护活动的总人时数;用于每一类维护活动的总人时数;(3)(3)平均每个程序、每种语言、每种维护类型平均每个程序、每种语言、每种维护类型所做的程序变动数;所做的程序变动数;12(4)维护过程中增加或删除一个源语句平均花费的人时数;(5)维护每种语言平均花费的人时数;(6)一张维护要求表的平均周转时间;(7)不同维护类型所占的百分比。138.4 可维护性可维护性因素因素内容内容可理可理解性解性软件的结构、接口、功能和内部过程的难易程度;软件的结构、接口、功能和内部过程的难易程度;模块化、详细设计文档、结构化设计、源代码内部的文档;模块化、详细设计文档、结构化设计、源代码内部的文档;程序设计语言。程序设计语言。可测可测试性试性诊断和测试的难易程度取决于软件容易理解的程度;诊断和测试的难易程度取决于软件容易理解的程度;良好的文档对诊断和测试是至关重要的;良好的文档对诊断和测试是至关重要的;软件结构、可用的测试工具和调试工具,以往的测试过程是很重软件结构、可用的测试工具和调试工具,以往的测试过程是很重要的;要的;可修可修改性改性在设计阶段应尽力把软件设计成容易诊断和测试的。在设计阶段应尽力把软件设计成容易诊断和测试的。与设计原理、规则直接相关;与设计原理、规则直接相关;与藕合、内聚、局部化、控制域、作用域等等都有关系。与藕合、内聚、局部化、控制域、作用域等等都有关系。n决定软件可维护性的因素决定软件可维护性的因素148.4 8.4 可维护性可维护性n与可维护性相关的文档与可维护性相关的文档文档文档内容内容文档文档描述描述要求要求如何使用这个系统;如何使用这个系统;怎样安装和管理这个系统;怎样安装和管理这个系统;系统需求和设计;系统需求和设计;系统的实现和测试。系统的实现和测试。用户用户文档文档功能描述功能描述:说明系统能做什么;说明系统能做什么;安装文档安装文档:说明怎样安装该系统及使系统适应特定的硬件配置;说明怎样安装该系统及使系统适应特定的硬件配置;使用手册使用手册:简要说明如何使用这个系统;简要说明如何使用这个系统;参考手册:详尽描述用户可以使用的系统设施及方法,以及可能产参考手册:详尽描述用户可以使用的系统设施及方法,以及可能产生的出错信息含义;生的出错信息含义;操作员指南:说明操作员如何处理使用中出现的各种情况。操作员指南:说明操作员如何处理使用中出现的各种情况。系统系统文档文档从问题定义、需求说明到验收测试这样一系列和系统实现有关的文从问题定义、需求说明到验收测试这样一系列和系统实现有关的文档。档。15第八章小结第八章小结一一.软件维护是软件生存周期的最后一个阶段,也是软件维护是软件生存周期的最后一个阶段,也是持续时间持续时间最长、代价最大最长、代价最大的一个阶段。的一个阶段。二二.软件维护包括四类活动:软件维护包括四类活动:改正性维护改正性维护、适应性维护适应性维护、完善完善性维护性维护和和预防性维护预防性维护。三三.软件的软件的可理解性、可测试性和可维修性可理解性、可测试性和可维修性是决定软件可维护是决定软件可维护性的基本因素。性的基本因素。四四.软件生存周期的每个阶段和软件可维护性密切相关。软件生存周期的每个阶段和软件可维护性密切相关。五五.文档文档是影响软件可维护性的是影响软件可维护性的决定因素决定因素。六六.文档分为文档分为用户文档和系统文档用户文档和系统文档,它们都必须和程序代码同,它们都必须和程序代码同时维护才有真正的价值。时维护才有真正的价值。16习题习题1答案答案n1 1、假设要求你开发一个软件,该软件的功假设要求你开发一个软件,该软件的功能是把读入的浮点数开平方,所得的的结果能是把读入的浮点数开平方,所得的的结果应该精确到小数点后应该精确到小数点后4 4位。一旦实现并测试完位。一旦实现并测试完之后,改产品将被抛弃。你打算选用哪种软之后,改产品将被抛弃。你打算选用哪种软件生命周期模型?请说明你作出选择的理由。件生命周期模型?请说明你作出选择的理由。17题目解答题目解答n1 1、对这个软件的需求很明确,实现开方功、对这个软件的需求很明确,实现开方功能的算法也很成熟,因此,既无须通过原型能的算法也很成熟,因此,既无须通过原型来分析需求也无须用原型来验证设计方案。来分析需求也无须用原型来验证设计方案。此外,一旦实现并测试完之后,该产品将被此外,一旦实现并测试完之后,该产品将被抛弃,因此也无须使用有助于提高软件可维抛弃,因此也无须使用有助于提高软件可维护性的增量模型或螺旋模型来开发该软件。护性的增量模型或螺旋模型来开发该软件。n 综上所述,为了开发这个简单的软件,综上所述,为了开发这个简单的软件,使用大多数人所熟悉的瀑布模型就可以了。使用大多数人所熟悉的瀑布模型就可以了。18习题习题1答案答案n2 2、假设你被任命为一家软件公司的项目负责、假设你被任命为一家软件公司的项目负责人,你的工作是管理该公司已被广泛应用的人,你的工作是管理该公司已被广泛应用的字处理软件的新版本开发。由于市场竞争激字处理软件的新版本开发。由于市场竞争激烈,公司规定了严格的完成期限并且已对外烈,公司规定了严格的完成期限并且已对外公布。你打算采用哪种软件生命周期模型?公布。你打算采用哪种软件生命周期模型?为什么?为什么?19n 答:对这个项目的一个重要要求是,严格按照已对答:对这个项目的一个重要要求是,严格按照已对外公布了的日期完成产品开发工作,因此,选择生命外公布了的日期完成产品开发工作,因此,选择生命周期模型时应该着重考虑哪种模型有助于加快产品开周期模型时应该着重考虑哪种模型有助于加快产品开发的进度。使用增量模型开发软件时可以并行完成开发的进度。使用增量模型开发软件时可以并行完成开发工作,因此能够加快开发进度。发工作,因此能够加快开发进度。n 这个项目是开发该公司已被广泛使用的字处理软这个项目是开发该公司已被广泛使用的字处理软件的新版本,从上述事实至少可以得出件的新版本,从上述事实至少可以得出3 3点结论:第一,点结论:第一,旧版本相当于一个原型,通过收集用户对旧版本的反旧版本相当于一个原型,通过收集用户对旧版本的反映,较容易确定对新版本的需求,没必要再专门建立映,较容易确定对新版本的需求,没必要再专门建立一个原型系统来分析用户的需求;第二,该公司的软一个原型系统来分析用户的需求;第二,该公司的软件工程师对字处理软件很熟悉,有开发字处理软件的件工程师对字处理软件很熟悉,有开发字处理软件的丰富经验,具有采用增量模型开发新版字处理软件所丰富经验,具有采用增量模型开发新版字处理软件所需要的技术水平;第三,该软件受到广大用户的喜爱,需要的技术水平;第三,该软件受到广大用户的喜爱,今后很可能还要开发更新的版本,因此,应该把该软今后很可能还要开发更新的版本,因此,应该把该软件的体系结构设计成开放式的,以利于今后的改进和件的体系结构设计成开放式的,以利于今后的改进和扩充。扩充。n 综上所述,采用增量模型来完成这个项目比较恰当。综上所述,采用增量模型来完成这个项目比较恰当。20P54页第5题:北京某高校可用的电话号码有以下几类:北京某高校可用的电话号码有以下几类:校内电话号码由校内电话号码由4位数字组成,第位数字组成,第1位数字位数字不是不是0;校外电话又分为本市电话和外地电;校外电话又分为本市电话和外地电话两类,拨校外电话需先拨话两类,拨校外电话需先拨0,若是本市电,若是本市电话则再接着拨话则再接着拨8位数字位数字(第第1位不是位不是0),若是,若是外地电话则拨外地电话则拨3位区码再拨位区码再拨8位电话号码位电话号码(第第1位不是位不是0)。21P54页第5题:n电话号码电话号码=【校内电话号码校内电话号码|校外电话号码校外电话号码】n校内电话号码校内电话号码=非零数字非零数字+3位数字位数字n校外电话号码校外电话号码=【本市号码本市号码|外地号码外地号码】n本市号码本市号码=数字零数字零+8位数字位数字n外地号码外地号码=数字零数字零+3位数字位数字+8位数字位数字n非零数字非零数字=【1|2|3|4|5|6|7|8|9】n数字零数字零=0n3位数字位数字=3数字数字3n8位数字位数字=非零数字非零数字+7位数字位数字n7位数字位数字=7数字数字7n数字数字=0|1|2|3|4|5|6|7|8|922P73页第3题:银行计算机储蓄系统的工作过程大致如下:储银行计算机储蓄系统的工作过程大致如下:储户填写的存款单或取款单由业务员键入系统,如果户填写的存款单或取款单由业务员键入系统,如果是存款则系统记录存款人姓名、住址是存款则系统记录存款人姓名、住址(或电话号码或电话号码)、身份证号码、存款类型、存款日期、到期日期、利身份证号码、存款类型、存款日期、到期日期、利率及密码率及密码(可选可选)等信息,并印出存单给储户;如果等信息,并印出存单给储户;如果是取款而且存款时留有密码,则系统首先核对储户是取款而且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算密码,若密码正确或存款时未留密码,则系统计算利息并印出利息清单给储户。利息并印出利息清单给储户。23P73页第3题E-R图:储户储户储蓄所储蓄所存取款存取款MN姓名姓名住址住址电话号码电话号码身份证号码身份证号码名称名称住址住址电话号码电话号码到期日期到期日期数额数额类型类型利率利率密码密码计算机储蓄系统的实体计算机储蓄系统的实体联系图联系图24P73页第3题数据流图:储户储户存款单存款单记录存款记录存款信息信息 1存款信息存款信息打印存款单打印存款单 2存款存单存款存单储户储户D1存款信息存款信息核对密码核对密码 3存款信息存款信息计算利息计算利息 4取款单取款单利息值利息值打印利息打印利息清单清单 5利息清单利息清单25P73页第5题:医院对患者监护系统的基本要求是随时医院对患者监护系统的基本要求是随时接收每个病人的生理信号接收每个病人的生理信号(脉搏、体温、血压、脉搏、体温、血压、心电图等心电图等),定时记录病人情况以形成患者日,定时记录病人情况以形成患者日志,当某个病人的生理信号超出医生规定的志,当某个病人的生理信号超出医生规定的安全范围时向值班护士发出警告信息,此外,安全范围时向值班护士发出警告信息,此外,护士在需要时还可以要求系统印出某个指定护士在需要时还可以要求系统印出某个指定病人的病情报告。病人的病情报告。26P73页第5题数据流图:病人病人生理生理信号信号接收信号接收信号 1分析信号分析信号 2警告信息警告信息护士护士D2患者日记患者日记更新日记更新日记 5产生病情报产生病情报告告 6定时的定时的生理信号生理信号要求报告要求报告产生警告产生警告信息信息 3病情报告病情报告生理生理信号信号危急病危急病人信息人信息D1患者安全范围患者安全范围定时取样生定时取样生理信号理信号 4日期日期时间时间时钟时钟生生理理信信号号27n录入统计计算某班学生成绩录入统计计算某班学生成绩,画出数据流图(画出数据流图(DFDDFD)。)。学生成绩表数据结构如下:学生成绩表数据结构如下:学号学号|高数高数|物理物理|英语英语|计算机计算机|法律常识法律常识|总分总分|平均分平均分|不及格门数不及格门数|升留补升留补|需求功能如下:需求功能如下:1.1.录入全班学生各课的考分,生成成绩表;录入全班学生各课的考分,生成成绩表;2.2.检查各课成绩,修改错误,补充未录入成绩,检查各课成绩,修改错误,补充未录入成绩,删除非法成绩删除非法成绩 ;3.3.计算总分,平均分;计算总分,平均分;4.4.统计不及格门数,然后再写入升级、补考、留统计不及格门数,然后再写入升级、补考、留级;级;5.5.打印成绩通知单,交家长。打印成绩通知单,交家长。课堂练习:课堂练习:28课堂作业:29开始Y取下一部门打开职工工资表取下一职工性别年龄职务?处科员+50+45+35写入工资表=55女N=年龄-55工资*1.05N=0?N-1年龄职务?处科员+50+40+30写入工资表=65N=年龄-65工资*1.04N=0?N-1下一职工?下一部门?结束NNY附注:女退休后每年工资加附注:女退休后每年工资加 5%5%男退休后每年工资加男退休后每年工资加 4%4%例例 普调工资普调工资男30 例题解答例题解答打开部门工资表打开部门工资表性别性别女女男男年龄年龄年龄年龄=55=65职务N=年龄-65处 科 员+50 +45 +35处 科 员+50 +40 +30工资=工资+增资写入工资表写入工资表工资=工资+增资职务N=年龄-55工资*1.05工资*1.04N=N-1N=N-1写入工资表写入工资表下一部门?下一职工?普调工资的普调工资的 N-SN-S图图31 例题解答例题解答UNTIL 没有下一部门没有下一部门?P1P1def打开部门工资表打开部门工资表UNTIL 没有下一职工没有下一职工?P2defP2性别性别女女年龄年龄男男=5555职务职务处处科科员员+50工资工资=工资工资+增资增资+45写入工资表写入工资表+35N=年龄年龄-55UNTIL N=0?P3写入工资表写入工资表P3defN=N-1工资工资*1.05普调工资的普调工资的 PADPAD图图32P174页4题(3)(1 1)语句覆盖的测试用例)语句覆盖的测试用例 因为每个判定表达式为真为假时均有赋值语句,为了因为每个判定表达式为真为假时均有赋值语句,为了使每个语句都至少执行一次,总共需要两组测试数据,使每个语句都至少执行一次,总共需要两组测试数据,以便使得每个判定表达式取值为真或为假各一次。以便使得每个判定表达式取值为真或为假各一次。下面是实现语句覆盖的典型测试用例:下面是实现语句覆盖的典型测试用例:1 1、使、使3 3个判定表达式之值全为假个判定表达式之值全为假 输入:输入:A=1,B=1A=1,B=1,C=1C=1 预期的输出:预期的输出:X=1,Y=2,Z=3X=1,Y=2,Z=32 2、使、使3 3个判定表达式之值全为真个判定表达式之值全为真 输入:输入:A=20,B=40A=20,B=40,C=60C=60 预期的输出:预期的输出:X=1,Y=2,Z=3X=1,Y=2,Z=333P174页4题(3)(2 2)路径测试的测试用例)路径测试的测试用例 本程序共有本程序共有8 8条可能的执行通路,为做到路径覆盖条可能的执行通路,为做到路径覆盖总共需要总共需要8 8组测试数据。组测试数据。下面是实现路径覆盖的典型测试用例下面是实现路径覆盖的典型测试用例:1 1、3 3个判定表达式之值全为假个判定表达式之值全为假 输入:输入:A=1,B=1,C=1A=1,B=1,C=1 预期的输出:预期的输出:X=1,Y=2,Z=3X=1,Y=2,Z=32 2、3 3个判定表达式之值依次为假、假、真个判定表达式之值依次为假、假、真 输入:输入:A=1,B=1,C=60A=1,B=1,C=60 预期的输出:预期的输出:X=1,Y=2,Z=30X=1,Y=2,Z=3034P174页4题(3)3 3、3 3个判定表达式之值依次为假、真、假个判定表达式之值依次为假、真、假 输入:输入:A=1,B=40,C=1A=1,B=40,C=1 预期的输出:预期的输出:X=1,Y=20,Z=3X=1,Y=20,Z=34 4、3 3个判定表达式之值依次为假、真、真个判定表达式之值依次为假、真、真 输入:输入:A=1,B=40,C=60A=1,B=40,C=60 预期的输出:预期的输出:X=1,Y=20,Z=30X=1,Y=20,Z=305 5、3 3个判定表达式之值依次为真、假、假个判定表达式之值依次为真、假、假 输入:输入:A=20,B=1,C=1A=20,B=1,C=1 预期的输出:预期的输出:X=10,Y=2,Z=3X=10,Y=2,Z=335习题:根据下图按六种覆盖方法,设计测试用例习题:根据下图按六种覆盖方法,设计测试用例36 1.语句覆盖:语句覆盖:X=85,Y=85(路径路径A-E);X=95,Y=50(路径路径B-C-E);X=75,Y=75(路径路径B-D-E);2.判断覆盖:判断覆盖:X=85,Y=85(判断判断1成立成立);X=95,Y=50(判断判断1不成立,判断不成立,判断2成立成立);X=75,Y=75(判断判断1、判断、判断2都不成立都不成立);习题五习题五3题参考答案题参考答案判断判断1判断判断2条件条件1条件条件2条件条件3条件条件4条件条件5373.3.条件覆盖:条件覆盖:条件覆盖:条件覆盖:X=85,Y=85(X=85,Y=85(判断判断判断判断1 1两条件成立);两条件成立);两条件成立);两条件成立);X=95,Y=50(X=95,Y=50(判断判断判断判断2 2中条件中条件中条件中条件3 3、条件、条件、条件、条件4 4成立)成立)成立)成立);X=50,Y=90(X=50,Y=90(判断判断判断判断2 2中条件中条件中条件中条件3 3、条件、条件、条件、条件5 5成立);成立);成立);成立);X=60,Y=60X=60,Y=60(判断(判断(判断(判断1 1、判断、判断、判断、判断2 2各个条件都不成立);各个条件都不成立);各个条件都不成立);各个条件都不成立);384.4.判断判断判断判断/条件覆盖:条件覆盖:条件覆盖:条件覆盖:X=85,Y=85(X=85,Y=85(判断判断判断判断1 1为为为为Y Y 且两条件成立)且两条件成立)且两条件成立)且两条件成立);X=95,Y=50(X=95,Y=50(判断判断判断判断2 2为为为为Y Y 且条件且条件且条件且条件3 3、条件、条件、条件、条件4 4成立)成立)成立)成立);X=50,Y=95(X=50,Y=95(判断判断判断判断2 2为为为为Y Y 且条件且条件且条件且条件3 3、条件、条件、条件、条件5 5成立)成立)成立)成立);X=60,Y=60 X=60,Y=60(判断(判断(判断(判断1 1、判断、判断、判断、判断2 2为为为为N N 且各个条件都不成立)且各个条件都不成立)且各个条件都不成立)且各个条件都不成立);39 5.条件组合覆盖:各种组合如下:条件组合覆盖:各种组合如下:(1)X80,Y 80;(2)X 80,Y80;(3)X80,Y 80;(4)X80,Y80;(5)XY 140,X90,Y 90;(6)XY 140,X90,Y 90;(7)XY 140,X90,Y 90;(8)XY 140,X90,Y 90;(9)XY 140,X90,Y 90;(不可执行不可执行)(10)XY 140,X90,Y 90;(11)XY 140,X90,Y 90;(12)XY 140,X90,Y 90;40 6.路径覆盖:判断路径覆盖:判断/条件覆盖已经覆盖了全部路径。条件覆盖已经覆盖了全部路径。n n X=85,Y=85(X=85,Y=85(判断判断判断判断1 1为为为为Y Y 且两条件成立)且两条件成立)且两条件成立)且两条件成立);n n X=95,Y=50(X=95,Y=50(判断判断判断判断2 2为为为为Y Y 且条件且条件且条件且条件3 3、条件、条件、条件、条件4 4成立)成立)成立)成立);n n X=50,Y=95(X=50,Y=95(判断判断判断判断2 2为为为为Y Y 且条件且条件且条件且条件3 3、条件、条件、条件、条件5 5成立)成立)成立)成立);n n X=60,Y=60 X=60,Y=60(判断(判断(判断(判断1 1、判断、判断、判断、判断2 2为为为为N N 且各个条件都不成立)且各个条件都不成立)且各个条件都不成立)且各个条件都不成立);41n按黑盒法设计测试用例的解答:按黑盒法设计测试用例的解答:42n测试用例设计结果:测试用例设计结果:1.1.合理测试用例合理测试用例1:1:男,男,2121岁,岁,1.751.75米,本科,过四级,米,本科,过四级,健康。覆盖了合理等价类健康。覆盖了合理等价类 1 1、7 7、1313、1515、1717;2.2.合理测试用例合理测试用例2:2:女,女,2020岁,岁,1.71.7米,本科,过四级,米,本科,过四级,健康。覆盖了合理等价类健康。覆盖了合理等价类4 4、1010、1313、1515、1717;3.3.不合理测试用例:男,不合理测试用例:男,1515岁,岁,1.751.75米,本科,过四级,米,本科,过四级,健康。覆盖了健康。覆盖了2 2;4.4.不合理测试用例:男,不合理测试用例:男,3030岁,岁,1.751.75米,本科,过四级,米,本科,过四级,健康。覆盖了健康。覆盖了4 4;5.5.不合理测试用例:男,不合理测试用例:男,2121岁,身高岁,身高 1.51.5米,本科,过米,本科,过四级,健康,覆盖了四级,健康,覆盖了9 9;6.6.不合理测试用例:男不合理测试用例:男,21,21岁,身高岁,身高 2.22.2米,本科,过四米,本科,过四级,健康,覆盖了级,健康,覆盖了1010;43n7.7.不合理测试用例:女,不合理测试用例:女,1515岁,岁,1.71.7米,本科,过四米,本科,过四级,健康级,健康,覆盖了覆盖了5 5;8.8.不合理测试用例:女,不合理测试用例:女,2929岁,岁,1.71.7米,本科,过四米,本科,过四级,健康级,健康,覆盖了覆盖了6 6;9.9.不合理测试用例:不合理测试用例:女、身高女、身高1.5 1.5 覆盖了覆盖了1111,其它,其它数据略;数据略;n10.10.不合理测试用例:不合理测试用例:女、身高女、身高2.0 2.0 覆覆 盖了盖了121121,其,其它数据略;它数据略;n11.11.不合理测试用例:男、不合理测试用例:男、文化:小学,覆盖了文化:小学,覆盖了1414,其它数据略;其它数据略;n12.12.不合理测试用例:男、英语四级以下覆盖了不合理测试用例:男、英语四级以下覆盖了1616,其,其它数据略;它数据略;44n13.13.不合理测试用例:男、健康有肺病,覆盖了不合理测试用例:男、健康有肺病,覆盖了1818,其它数据略;其它数据略;n14.14.不合理测试用例:女、文化:小学,覆盖了不合理测试用例:女、文化:小学,覆盖了1414,其它数据略;其它数据略;n15.15.不合理测试用例:女、英语四级以下覆盖了不合理测试用例:女、英语四级以下覆盖了1616,其它数据略;其它数据略;n16.16.不合理测试用例:女、健康有肺病,覆盖了不合理测试用例:女、健康有肺病,覆盖了1818,其它数据略;其它数据略;45黑盒测试习题:黑盒测试习题:某报表处理系统要求用户输入处理报某报表处理系统要求用户输入处理报表的日期,日期限制在表的日期,日期限制在20032003年年1 1月至月至20082008年年1212月,即系统只能对该段期间内的报月,即系统只能对该段期间内的报表进行处理,如日期不在此范围内,则表进行处理,如日期不在此范围内,则显示输入错误信息。系统日期规定由年、显示输入错误信息。系统日期规定由年、月的月的6 6位数字字符组成,前四位代表年,位数字字符组成,前四位代表年,后两位代表月。现要求用黑盒测试法中后两位代表月。现要求用黑盒测试法中的边界值法写出测试用例。的边界值法写出测试用例。46答:答:输入条件输入条件 测试用例说明测试用例说明 测试数据测试数据报表日期的报表日期的 1 1个数字字符个数字字符 5 5 类型及长度类型及长度 5 5个数字字符个数字字符 20035 20035 7 7个数字字符个数字字符 2003005 2003005 有有1 1个非数字字符个非数字字符 2003.5 2003.5 全部是非数字字符全部是非数字字符 MAY-MAY-6 6个数字字符个数字字符 200305 200305 日期范围日期范围 在有效范围在有效范围 200301 200301 边界上选取边界上选取 200812 200812 数据数据 200300 200300 200813 200813 47答:答:输入条件输入条件 测试用例说明测试用例说明 测试数据测试数据 月份范围月份范围 月份为月份为1 1月月 200301 200301 月份为月份为1212月月 200312 200312 月份月份1 200300 12 200313 12 200313 48P174页4题(3)6 6、3 3个判定表达式之值依次为真、假、真个判定表达式之值依次为真、假、真 输入:输入:A=20,B=1,C=60A=20,B=1,C=60 预期的输出:预期的输出:X=1,Y=20,Z=30X=1,Y=20,Z=307 7、3 3个判定表达式之值依次为真、真、假个判定表达式之值依次为真、真、假 输入:输入:A=20,B=40,C=1A=20,B=40,C=1 预期的输出:预期的输出:X=10,Y=20,Z=3X=10,Y=20,Z=38 8、3 3个判定表达式之值全为真个判定表达式之值全为真 输入:输入:A=20,B=40,C=60A=20,B=40,C=60 预期的输出:预期的输出:X=10,Y=20,Z=30X=10,Y=20,Z=3049 结束语当你尽了自己的最大努力时,失败也是伟大的,所以不要放弃,坚持就是正确的。When You Do Your Best,Failure Is Great,So DonT Give Up,Stick To The End谢谢大家荣幸这一路,与你同行ItS An Honor To Walk With You All The Way演讲人:XXXXXX 时 间:XX年XX月XX日
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!