欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    信息系统分析与设计-第6部分.ppt

    • 资源ID:5230333       资源大小:356.50KB        全文页数:66页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    信息系统分析与设计-第6部分.ppt

    信息系统实施,模块设计,模块详细设计程序设计。主要依据系统设计阶段的HIPO图、系统结构图等,把系统设计的结果翻译成计算机能执行的形式,让计算机按照人的意志工作。模块设计过程:选择程序设计语言 描述程序用选定的语言按程序描述编程,详细设计,编码实施,程序复杂度的度量,McCabe方法-环形复杂度度量Halstead方法-文本复杂度Henry与Kafura方法-耦合度度量Bowles方法Troy与Zweben方法,McCabe方法,环形复杂度方法(圈复杂度方法)基本复杂度方法模块设计复杂度方法集成复杂度方法,环形复杂度度量方法,依据程序控制流图计算。程序流图中的每个处理和判断节点都收缩成一个点程序控制流图复杂度:V(G)=m-n+2或(G)=p+1 V代表圈,G代表程序控制流图 其中:m为有向边的条数(弧数),n为结点数,p为图中判定结点数。,程序复杂度计算实例,预测程序中包含的错误个数,公式:B=N*log(n1+n2)/3000 其中,n1为运算符个数,n2为操作数个数。N为Halstead实际长度,N=N1+N2 N1为运算符出现的总次数,N2为操作数出现的总次数。表明:程序计算量与错误出现成正比。,预测实例,村领导需要估计该村某池塘中鱼的大致数量。技术人员想出了一个办法:先从池塘中捕出100条鱼,在每条鱼身上做一记号,又放回池塘。几天后,再从该池塘中捕出50条鱼,发现其中有5条是有记号的。因此,他估计该池塘有多条鱼?(假设这几天内鱼的数量没有变化),设有X条鱼抓到带记号鱼与抓鱼总数成正比50-5X-100有X=1000条,系统测试,检验软件有三种手段:动态检查、静态检查和正确性证明。程序正确性证明技术目前还处于初级阶段,静态检查指人工评审软件文档或程序,发现其中的错误(代码审查、代码走查、同行评审)。动态检查就是测试。测试是为了发现错误而执行程序的过程。测试只能证明程序有错误,而不可能证明程序没有错误。,系统测试,在软件投入运行前,对软件需求分析、设计规格说明和编码实现的最终审查。定义1:为发现错误而执行程序的过程。定义2:根据软件开发各阶段规格说明和程序的内部结构而设计的一批测试用例,并利用这些用例运行程序及发现错误的过程。,软件测试定义,测试用例,为特定目的而设计的一组输入、执行条件和预期结果。执行测试的最小实体。,保证质量(1)发现错误(2)检查系统是否满足需求 测试的关键设计测试用例设计一批测试数据,通过有限的测试用例,在有限时间内,尽可能多地发现程序中的错误。,测试的目的,测试内容,不仅是对程序的测试,而是软件定义和开发的全过程测试。单元测试每个模块完成后综合测试集成测试、系统测试、验收测试等,测试类型,单元测试也称模块测试,根据模块的功能说明检验每个单独的模块是否存在错误。集成测试也称联合测试,检验模块及系统结构。确认测试对照软件需求规格说明,对软件进行评价,以确定是否满足软件需求过程。系统测试将硬件、软件、操作人员看作一个整体进行的一系列测试,确保系统各部分协调工作。验收测试最后一次需求比较过程。,单元测试,对软件设计的最小单位程序模块,进行正确性检验。目的在于发现各模块内部可能存在的各种差错。需要从程序的内部结构出发设计测试用例,多个模块可以平行地独立进行单元测试。,集成测试,将所有模块集成在一起所进行的系统功能测试测试的策略:一次性组装自顶向下的组装自底向上的组装,一次性组装测试(Big-bang Integration),先对每个模块分别进行模块测试,再把所有模块组装在一起进行测试,最终得到要求的软件系统。,自顶向下的集成测试(Top-down Integration),按系统程序结构,沿控制层次自顶向下进行组装。方法:通过设置下层模块为桩,检查控制流,较早地验证了主要的控制和判断点。问题:需要制作较多的桩模块,并且桩模块不能返回真实的数据。,自底向上的集成测试(Bottom-up Integration),从程序模块结构的最底层的模块开始组装和测试。对于一个给定层次的模块,它的子模块及其下属模块已经组装并测试完成,所以不再需要桩模块。要到最后才窥得全貌,重大结构问题不能及早发现。,确认测试,进行功能的有效性测试。运用黑盒测试的技术,验证被测软件是否满足需求规格说明书列出的需求。为验收作准备。,测试和测试,测试是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的测试。测试是由软件的多个用户在实际使用环境下进行的测试。这些用户返回有关错误信息给开发者。,回归测试,软件发生变化时例:增加模块、修改模块,原来通过测试的功能可能不能正常运行,回归测试就是通过重新执行已经执行过的测试来保证改动过的程序的正确性。回归测试可以用人工来执行所有测试用例的一个子集,或者采用捕捉回放工具来进行(自动测试工具)。,系统测试,将通过确认测试的软件,作为整个基于计算机系统的一个元素,与计算机硬件、外设、某些支持软件、数据和人员等其他系统元素结合在一起,在实际运行环境下,对系统进行一系列的集成测试和确认测试。系统测试为系统的正式运行做准备,也可称为试运行。,系统测试,功能测试在规定的一段时间内运行软件系统的所有功能,以验证这个软件系统有无严重错误。可靠性测试平均失效间隔时间 MTBF(Mean Time Between Failures)因故障而停机的时间MTTR(Mean Time To Repairs)强度测试(压力测试)检查在系统运行环境非正常乃至发生故障的情况下,系统可以运行到何种程度性能测试检查系统是否满足在需求说明书中规定的性能。特别是对于实时系统或嵌入式系统。,系统测试,恢复测试证实在克服硬件故障(包括掉电、硬件或网络出错等)后,系统能否正常地继续进行工作,并不对系统造成任何损害。采用人工模拟硬件故障,故意造成软件出错。启动停止测试验证在机器启动及关机阶段,软件系统正确处理的能力。反复启动软件系统,例如操作系统自举、网络的启动、应用程序的调用等。在尽可能多的情况下关机。,系统测试,配置测试检查计算机系统内各个设备或各种资源之间的相互联结和功能分配中的错误。包括配置命令测试、循环配置测试、修复测试。安全性测试检验在系统中已经存在的系统安全性、保密性措施是否发挥作用,有无漏洞。可使用性测试从使用的合理性和方便性等角度对软件系统进行检查,发现人为因素或使用上的问题。,系统测试,可支持性测试验证系统的支持策略对于公司与用户方面是否切实可行。安装测试对系统安装进行测试,找出在安装过程中出现的错误。系统的每一部分是否都齐全;所有文件是否都已产生并确有所需要的内容;硬件的配置是否合理,等等,系统测试,兼容性测试验证软件产品在不同版本之间的兼容性。有两类基本的兼容性测试:向下兼容、交错兼容容量测试检验系统的能力最高能达到什么程度。对于信息检索系统,让它使用频率达到最大。在使系统的全部资源达到“满负荷”的情形下,测试系统的承受能力,也称压力测试。文档测试检查用户文档(如用户手册)的清晰性和精确性。,软件开发与软件测试关系,概要设计说明书,详细设计说明书,源程序代码,单元测试,集成测试,测试技术,黑箱测试/黑盒测试白箱测试/白盒测试,黑盒测试,把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序模块的详细说明,检查程序的功能是否符合它的功能说明。黑盒测试又叫做功能测试或数据驱动测试或基于规格说明的测试。,黑箱的穷举测试,用黑盒测试发现程序中的错误,必须在所有可能的输入条件和输出条件中确定测试数据,来检查程序是否都能产生正确的输出。,黑箱的穷举测试,举例:假设一个程序P有输入量X和Y及输出量Z。在字长为32位的计算机上运行。若X、Y取整数,按黑盒方法进行穷举测试:可能采用的测试数据组:232232 264 如果测试一组数据需要1毫秒,一年工作365 24小时,完成所有测试需5亿年。,穷举是不可能的!,白盒测试,把测试对象看做一个透明的盒子,允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑结构进行测试。通过在不同点检查程序的状态,确定实际的状态是否与预期的状态一致。白盒测试又称为结构测试或逻辑驱动测试或基于程序的测试。,白箱的穷举测试,对一个具有多重选择和循环嵌套的程序,不同的路径数目可能也是天文数字。给出一个小程序的流程图,它包括了一个执行20次的循环。包含的不同执行路径数达520条,对每一条路径进行测试需要1毫秒一年工作36524小时测试完需3170年。,测试用例,以尽可能少的数据发现尽可能多的错误一个测试用例就是为了测试某个目标(模块、功能、性能)而准备的一份输入数据及其预期结果,测试用例的设计,逻辑覆盖法(白盒)等价类划分法(黑盒)边界值分析法(黑盒),逻辑覆盖,以程序内部的逻辑结构为基础设计测试用例的技术,属于白盒测试。根据覆盖测试的目的不同,分为:语句覆盖判定覆盖条件覆盖条件组合覆盖路径覆盖,逻辑覆盖举例,(A1)and(B=0),(A=2)or(X1),X=X/A,X=X+1,T,T,F,F,a,b,d,c,e,L1:ace,L3:abe,L2:abd,L4:acd,语句覆盖,语句覆盖就是设计若干个测试用例,运行被测程序,使得每一可执行语句至少执行一次。在图例中,正好所有的可执行语句都在路径L1上,所以选择路径 L1设计测试用例,就可以覆盖所有的可执行语句。测试用例的设计格式如下【输入的(A,B,X),输出的(A,B,X)】为图例设计满足语句覆盖的测试用例是:【(2,0,4),(2,0,3)】覆盖 ace【L1】L1=12345语句覆盖是最弱的逻辑覆盖准则,1,3,2,4,5,判断覆盖,判定覆盖就是设计若干个测试用例,运行被测程序,使得程序中每个IF判断语句的取真分支和取假分支至少一次。判定覆盖又称为分支覆盖。对于图例,如果选择路径L1和L2,就可得满足要求的测试用例:【(2,0,4),(2,0,3)】覆盖 ace【L1】【(1,1,1),(1,1,1)】覆盖 abd【L2】L2=135,1,3,2,4,5,条件覆盖,条件覆盖就是设计若干个测试用例,运行被测程序,使得程序中所有判断的每个子条件的可能取值至少执行一次。在图例中,我们事先可对所有条件取值加以标记。例如:对于第一个判断:条件 A1 取真为,取假为条件 B0 取真为,取假为对于第二个判断:条件A2 取真为,取假为条件X1 取真为,取假为,T4,条件覆盖,测试用例 覆盖分支 条件取值【(2,0,4),(2,0,3)】L1(c,e)【(1,0,1),(1,0,1)】L2(b,d)【(2,1,1),(2,1,2)】L3(b,e)或【(1,0,3),(1,0,4)】L3(b,e)【(2,1,1),(2,1,2)】L3(b,e),条件组合覆盖,条件组合覆盖就是设计足够的测试用例,运行被测程序,使得每个判断的所有可能的条件取值组合至少执行一次。记 A1,B0 作 A1,B0 作 A1,B0 作 A1,B0 作 A2,X1 作 A2,X1 作 A2,X1 作 A2,X1 作,条件组合覆盖,测 试 用 例 覆盖条件 覆盖组合【(2,0,4),(2,0,3)】(L1),【(2,1,1),(2,1,2)】(L3),【(1,0,3),(1,0,4)】(L3),【(1,1,1),(1,1,1)】(L2),路径覆盖,路径覆盖就是设计足够的测试用例,覆盖程序中所有可能的路径。程序复杂度是程序独立路径的上界。测试用例 通过路径 覆盖条件【(2,0,4),(2,0,3)】ace(L1)【(1,1,1),(1,1,1)】abd(L2)【(1,1,2),(1,1,3)】abe(L3)【(3,0,3),(3,0,1)】acd(L4),测试用例路径的导出,V(G)=10-8+2=4或V(G)=3+1=4因此,基本路径应有4条。路径1:414路径2:46714路径3:4691013414路径4:4691213414,4,6,12,9,10,13,7,14,测试用例设计等价类划分,典型的黑盒测试。把所有可能的输入数据,即程序的输入域划分成若干部分,然后从每一部分中选取少数有代表性的数据做为测试用例。设计测试用例要经历划分等价类(列出等价类表)和选取测试用例两步。,等价类划分,等价类是指某个输入域的子集合。在该子集合中,各个输入数据对于揭露程序中的错误都是等效的。测试某等价类的代表值就等价于对这一类其他值的测试。等价类的划分有两种不同的情况:有效等价类:是指对于程序的规格说明来说,是合理的,有意义的输入数据构成的集合。无效等价类:是指对于程序的规格说明来说,是不合理的,无意义的输入数据构成的集合。设计测试用例时,要同时考虑有效等价类和无效等价类的设计。不同类型的数据,划分等价类不同,如何划分等价类,(1)如果输入条件规定了取值范围,或值的个数,则可以确立一个有效等价类和两个无效等价类。例如,在程序的规格说明中,对输入条件有一句话:“数量可以从1到999”则有效等价类是“1数量999”两个无效等价类是“数量1”或“数量999”。在数轴上表示成:,如何划分等价类,(2)如果输入条件规定了输入值的集合,或者是规定了“必须如何”的条件,这时可确立一个有效等价类和一个无效等价类。例如,在C语言中对变量标识符规定为“以字母打头的串”。那么所有以字母打头的构成有效等价类,而不在此集合内(不以字母打头)的归于无效等价类。(3)如果输入条件是一个布尔量,则可以确定一个有效等价类和一个无效等价类。,如何划分等价类,(4)如果规定了输入数据的一组值,而且程序要对每个输入值分别进行处理。这时可为每一个输入值确立一个有效等价类,此外针对这组值确立一个无效等价类,它是所有不允许的输入值的集合。例如:在教师上岗方案中规定对教授、副教授、讲师和助教分别计算分数,做相应的处理。因此可以确定4个有效等价类为教授、副教授、讲师和助教,一个无效等价类,它是所有不符合以上身分的人员的输入值的集合。,如何划分等价类,(5)如果规定了输入数据必须遵守的规则,则可以确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)。例如,变量名“所有以字母或数字打头的,不包含等字符的非保留字”等。在明确规则的几个条件后,确立每个条件的有效等价类和无效等价类,建立等价类表。最后,确定测试用例。,如何划分等价类,在某一种语言版本中规定:“标识符是由字母开头,后跟字母或数字的任意组合构成。有效字符数为8个,最大字符数为80个。”并且规定:“标识符必须先说明,再使用。”“在同一说明语句中,标识符至少必须有一个。”,测试用例设计边界值分析,黑盒测试方法,是对等价类划分方法的补充。从长期的测试工作经验得知,大量的错误是发生在输入或输出范围的边界上,而不是在输入范围的内部。因此针对各种边界情况设计测试用例,可以查出更多的错误。如我们在操作链表指针时,出现错误的往往是在边界值的情况下(如在表头或表尾进行插入或删除),判定条件、循环条件等也常常是在正常值左右出现问题。,边界值分析,边界:相当于输入等价类和输出等价类而言,等于其边界值及稍高/低于其边界值的一些特定情况。使用边界值分析方法设计测试用例,首先应确定边界情况。应当选取正好等于,刚刚大于,或刚刚小于边界的值做为测试数据,而不是选取等价类中的典型值或任意值做为测试数据。比如,在计算个人所得税时,全月应纳税所得额超过1000元至2000元的部分税率为5%。那么在测试时,可以选择的测试用例是:x=999 x=1000 x=1001 x=2000 x=2001,边界值分析,对于数据库应用系统,很多的功能是与记录处理有关,我们可以扩大边界值的概念,根据以下提示选择测试用例:新记录(第一条记录前,最后,记录的项目不全)处理业务(第一条、最后一条、相邻、超常规、错误范围、记录不存在)记录删除(第一条、最后一条、指定范围、当前记录等)查看(第一页/条、指定页/条、最后一页/条),测试原则,应当把“尽早地和不断地进行软件测试”作为软件开发者的座右铭。测试用例应由测试输入数据和对应的预期输出结果这两部分组成。程序员应避免检查自己的程序。(结对编程)在设计测试用例时,应包括合理的输入条件和不合理的输入条件。充分注意测试中的群集现象。经验表明:测试后程序中残存的错误数目与该程序中已发现的错误数目成正比严格执行测试计划,排除测试的随意性。应当对每一个测试结果做全面检查和分析。妥善保存测试计划、测试用例、出错统计和最终分析报告,为维护提供方便。,何时引入测试,在系统生命周期,越早引入测试越好:计划阶段:评估测试可行性分析。分析阶段:需求走查,制定确认测试计划、设计功能测试用例。设计阶段:确认设计符合需求,制定单元测试和集成测试计划、设计单元测试和集成测试用例。实施阶段:进行单元测试和集成测试。最后进行确认测试和系统测试。,系统试运行与维护,系统试运行:概念:是指将通过测试的新系统交给用户试用,经过一段时间的运行和审查后,认为性能可靠,各项指标符合要求,且方便、实用,再正式以新系统来取代原系统。任务:(1)对系统进行初始化、输入各原始数据记录。(2)记录系统运行的数据和状况。(3)核对新系统输出和老系统输出的结果。(4)对实际系统的输入方式进行考察。(5)对系统实际运行、响应速度。(6)试运行阶段还应当对用户做进一步的培训。,系统维护,概念:是为了适应系统内部因素和外部环境的变化,排除运行故障,不断满足新的要求,保证系统正常工作所采取的一切活动。目的:(1)保障新系统能正常工作(2)优化新系统的功能(3)适应系统支持环境的变化 内容:(1)程序的维护(2)数据文件的维护(3)代码的维护(4)硬件的维护,新、旧系统的转换,指新系统与旧系统的交替,旧系统停止使用,新系统正式投入运行。这是一个过程,而不是一个突发的事件,要尽可能平稳地过渡,使新系统逐步地、安全地取代旧系统的功能。转换方式:(1)直接转换(2)平行运行(3)逐步转换(分阶段转换),系统验收与评价,系统验收 内容:(1)系统的可靠性(2)系统的效率(3)系统的工作质量(4)系统的可维护性(5)系统的适应性和安全性(6)系统文档资料准确、完整性,系统评价,指标:(1)预定的系统开发目标的完成情况(2)系统运行实用性评价(3)设备运行效率的评价,

    注意事项

    本文(信息系统分析与设计-第6部分.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开