软件工程张海藩解读PPT学习教案_第1页
软件工程张海藩解读PPT学习教案_第2页
软件工程张海藩解读PPT学习教案_第3页
软件工程张海藩解读PPT学习教案_第4页
软件工程张海藩解读PPT学习教案_第5页
已阅读5页,还剩73页未读 继续免费阅读

下载本文档

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

文档简介

1、会计学1 软件工程张海藩解读软件工程张海藩解读 编码编码 编码的任务是为每个模块编写程序,也编码的任务是为每个模块编写程序,也 就是说将详细设计的结果转换成用某种程序就是说将详细设计的结果转换成用某种程序 设计语言写的程序。编码阶段结束时交付的设计语言写的程序。编码阶段结束时交付的 是不含有语法错误的程序和有关程序说明的是不含有语法错误的程序和有关程序说明的 “内部文档内部文档”。 2 第1页/共78页 数据操作与存储能力的第一级逻辑 抽象。目前几乎没有人用它编程。 3 第2页/共78页 4 第3页/共78页 5 第4页/共78页 6 第5页/共78页 的独立编译机制。 7 第6页/共78页

2、计一种新的语言,以满足用户 的需求。 8 第7页/共78页 在系统程序及实时应用领域采 用C语言和Ada语言,在组合论 应用方面较多地采用LISP语言, 在表述知识和逻辑推理方面采 用PROLOG语言。 9 第8页/共78页 面。 编码风格强调“清晰第 一”。清晰和效率往往是矛盾的。 强调“清晰第一”,并非不要效率, 而是在清晰的前提下求取效率。 10 第9页/共78页 所有参数的解释和该模块需调用的 模块名等。 l一些重要变量的使用、限制和 一些其它信息。 l开发历史。如作者、复查者、 复查日期、修改日期和叙述等。 11 第10页/共78页 n是对语句段做注释,而不是对每 个语句作注释 提高

3、可读性的另一个主要手段 是采用缩排法,它使程序的书写反 映其逻辑结构的深度。 12 第11页/共78页 13 第12页/共78页 达式的运算次序清晰直观 14 第13页/共78页 u设计良好的输出报表 u给所有输出数据加标志 15 第14页/共78页 l在使程序运行得更快些先使其 清晰 l别贪图效率上的小利而破坏程 序的清晰性 l让编译程序去做简单的优化 16 第15页/共78页 (一)程序运行时间(一)程序运行时间 (1 1)应先简化算术和逻辑的表达式。)应先简化算术和逻辑的表达式。 (2 2)仔细研究嵌套的循环,以确定是否有语句)仔细研究嵌套的循环,以确定是否有语句 可以从内层往外移。可以

4、从内层往外移。 (3 3)尽量避免使用多维数组。)尽量避免使用多维数组。 (4 4)尽量避免使用指针和复杂的列表。)尽量避免使用指针和复杂的列表。 (5 5)使用执行时间短的算术运算。)使用执行时间短的算术运算。 (6 6)即使语言允许,一般也不要采用混合数据)即使语言允许,一般也不要采用混合数据 类型。类型。 (7 7)尽量使用整数表达式和布尔表达式。)尽量使用整数表达式和布尔表达式。 17 第16页/共78页 短目标代码且存储压缩性能优良的 编译程序,有时需要采用汇编语言 编程。 18 第17页/共78页 解的超高效的输入/输出。 19 第18页/共78页 如何测试高产的测试用例 20 第

5、19页/共78页 21 第20页/共78页 22 第21页/共78页 所有可能值来检查程序是否都能产 生正确的结果。 23 第22页/共78页 写成X:=Y-Z,但测试中执行该语句 时,变量Z的值恰好是零,这个错 误就不能被发现。另外,程序中还 可能遗漏了某些路径。 24 第23页/共78页 一个完整的系统来测试 25 第24页/共78页 (2) 用户能有一段熟悉新系统的时 间 (3) 可以验证用户指南和使用手册 之类的文档 (4) 能够以准生产模式对新系统进 行全负荷测试,可以用测试结果验 证性能指标 26 第25页/共78页 27 第26页/共78页 u边界测试 28 第27页/共78页

6、6)是否修改了只作输入用的变元? 7)全程变量的定义和使用在各个 模块中是否一致? 29 第28页/共78页 8)格式说明书与输入/输出语句是 否一致? 30 第29页/共78页 31 第30页/共78页 之不等 9)差1错(多一次或少一次循环) 10)不正常或不存在的循环结束条 件 11)当遇到发散的循环时,无法终 止循环 12)错误地修改循环变量 32 第31页/共78页 33 第32页/共78页 34 第33页/共78页 同时每一个模块在整个系统结构中 的执行往往又调用一些下属模块。 驱动程序和存根程序。 35 第34页/共78页 驱动程序 X 存根程序1存根程序i 36 第35页/共7

7、8页 l 结合技术 深度优先的结合策略 宽度优先的结合策略 37 第36页/共78页 这两种测试方法渐增式测试方 法要更好些。由于它测试的彻底性, 对于提高软件质量有较大帮助,目 前应用软件均采用此方法进行集成 测试。 38 第37页/共78页 非渐增式测试方法非渐增式测试方法 原因原因渐增式测试方法渐增式测试方法 原因原因 测试工作量测试工作量大大要编写测试用的软要编写测试用的软 件多件多 较小较小已测试的模块可作已测试的模块可作 为部分测试软件为部分测试软件 发现接口错误时间发现接口错误时间晚晚最后组装最后组装早早边测试边组装边测试边组装 错误定位错误定位难难最后组装最后组装易易边测试边组

8、装边测试边组装 软件测试的彻底性软件测试的彻底性差差只进行单元测试和只进行单元测试和 组装测试组装测试 好好除单元测试外边组除单元测试外边组 装边测试使系统经装边测试使系统经 历多次回归测试历多次回归测试 测试所占用的机器测试所占用的机器 时间时间 短短可以多人并行测试可以多人并行测试长长只能由一个人进行只能由一个人进行 测试,测试中有回测试,测试中有回 归测试归测试 测试的人力使用情测试的人力使用情 况况 充分充分可并行测试可并行测试不充分不充分不能进行并行测试不能进行并行测试 测试进度测试进度快快可并行测试可并行测试慢慢只能一个人进行测只能一个人进行测 试试 用户的满意率用户的满意率较低较

9、低测试不彻底测试不彻底高高有回归测试,测试有回归测试,测试 彻底彻底 类类 原因原因 比较内容比较内容 39 第38页/共78页 40 第39页/共78页 M M1 1-M-M2 2-M-M5 5-M-M8 8-M-M6 6-M-M3 3-S-S7 7-S-S4 4 41 第40页/共78页 M M1 1-M-M2 2-M-M3 3-S-S4 4-M-M5 5-M-M6 6-S-S7 7-M-M8 8 42 第41页/共78页 从2)开始不断重复进行上述 过程,直到构造成完整的软件结构 为止。 43 第42页/共78页 44 第43页/共78页 更大的子功能族。 45 第44页/共78页 自顶

10、向下集成测试方法自顶向下集成测试方法 l 优点:不需要设计驱动程序,能在测试早期实现优点:不需要设计驱动程序,能在测试早期实现 并验证系统的主要功能,发现上层模块的接口错误并验证系统的主要功能,发现上层模块的接口错误 ; l 缺点:需要存根程序,并且与存根程序有关的测缺点:需要存根程序,并且与存根程序有关的测 试较困难,低层关键模块中的错误发现较晚。试较困难,低层关键模块中的错误发现较晚。 自底向上集成测试方法自底向上集成测试方法 l 优点:不需要设计存根程序,测试用例的设计比优点:不需要设计存根程序,测试用例的设计比 自顶向下集成测试容易;自顶向下集成测试容易; l 缺点:直到把最后一个模块

11、结合进来以前,程序缺点:直到把最后一个模块结合进来以前,程序 作为一个整体始终不存在。作为一个整体始终不存在。 46 第45页/共78页 满足。 47 第46页/共78页 u 件是可以接受的。 u功能或性能与用户的要求有差距。 48 第47页/共78页 49 第48页/共78页 50 第49页/共78页 (1)a,b判定取真判定取真 A1,B=0,A=2,X1 (2)选择测试数据)选择测试数据 A=2,B=0,X=2 (3)实现执行路径覆盖)实现执行路径覆盖 sacbed 51 第50页/共78页 时,测试数据为 A=2,B=0,X=3和 A=1,B=0,X=1 (2)若选择覆盖 路径为sac

12、bd和sabed 时,测试数据为 A=3,B=0,X=1和 A=2,B=1,X=1 52 第51页/共78页 1 只要选择测试数据 A2,B0,X4和 A1,B1,X1 就可以满足条件覆盖。 其覆盖路径为sacbed和 sabd 53 第52页/共78页 但这两组测试数据与前述的条 件覆盖中选取的两组数据相同,则 不能不说,有时判定/条件覆盖也 并不比条件覆盖更强。 5 4 第53页/共78页 A=2,X1 (2)A1,B0 (6) A=2,X1 (3)A1,B=0 (7) A2,X1 (4)A1,B0 (8) A2,X1 55 第54页/共78页 和(8sabd 56 第55页/共78页 路

13、径覆盖的含义是:选取足够 多测试数据,使程序的每条可能路 径都至少执行一次(如果程序图中 有环,则要求每个环至少经过一 次)。 57 第56页/共78页 58 第57页/共78页 59 第58页/共78页 类; 60 第59页/共78页 61 第60页/共78页 直到所有无效等价类都被覆盖为止。 62 第61页/共78页 63 第62页/共78页 64 第63页/共78页 6.输入32768,输出“无效输入” 65 第64页/共78页 66 第65页/共78页 (2)必要的话,再用等价分类法补 充一些测试用例 (3)再用错误推测法附加测试用例 (4)检查上述例子的逻辑覆盖程度, 如果未能满足某

14、些覆盖标准,则再 增加足够的测试用例。 67 第66页/共78页 68 第67页/共78页 11.输入数据中包含非整数型的数 据; 有效等价类有效等价类 69 无效等价类无效等价类 第68页/共78页 测试测试 功能功能 测试数据测试数据 a b c 1. .等边等边 2.2.等腰等腰 3.3.任意任意 4.4.非三角形非三角形 5.5.退化情况退化情况 6.6.零数据零数据 7.7.负数据负数据 8.8.遗漏数据遗漏数据 9.9.无效数据无效数据 10,10,10 10,10,17 8,10,12 10,10,21 10,5,5 0,0,0 0,0,17 0,10,12 -10,-10,-1

15、0 -10,-10,17 -8,10,17 , 10, 8,10, A,B,C , 10,17,10 12,8,10 10,21,10 5,10,5 , 0,17,0 12,0,10 , -10,17,-10 17,-8,10 , ,10, 8,10 , , 17,10,10 10,12,8 21,10,10 5,5,10 , 17,0,0 12,10,0 , 17,-10,-10 10,17,-8 , ,10 ,8,10 , 70 第二步,为第二步,为 上述上述1111种情种情 况设计测试况设计测试 用例用例 第69页/共78页 编编 号号 测试数测试数 据据 覆盖边覆盖边 110,10,1

16、01,2,3,4,5,6,7,8 2a10,10,171,2,3,4,5,15,19,20,8 2b10,17,101,2,3,4,14,18, 19,20,8 2c17,10,101,2,3,4,14,16,17,19,20,8 3a8,10,121,2,3,4,14,16,21,22,8 3b8,12,101,2,3,4,14,16,21,22,8 3c10,12,81,2,3,4,14,16,21,22,8 4a10,10,211,2,3,11,12,13,8 4b10,21,101,2,10,12,13,8 4c21,10,101,9,12,13,8 开始开始 1 1 AB+CAB+C 2 2Y Y BA+CBA+C 3 3Y Y CA+BCA+B 4 4Y Y A AB B Y Y5 5 B BC C Y Y6 6 A AC C 1414 B BC C 印出印出“不不 构成三角形构成三角形” 印出印出“等边等边 三角形三角形” 印出印出“等腰等腰 三角形三角形” 印出印出“任意任意 三角形三角形” 停止停止 9 9 1010 1111 1212 1616 1515 1818 Y Y Y Y 1 1 7 7 7 720201313 2222 8 8 19192121 71 第70页/共78页 部分工作大约占调试总工作量的5 左右。 72 第71页/共78页

温馨提示

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

评论

0/150

提交评论