ch06-详细设计_第1页
ch06-详细设计_第2页
ch06-详细设计_第3页
ch06-详细设计_第4页
ch06-详细设计_第5页
已阅读5页,还剩87页未读 继续免费阅读

下载本文档

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

文档简介

1、软件工程 详细设计可行性研究可行性研究需求分析需求分析总体设计总体设计详细设计详细设计实实 现现集成测试集成测试确认测试确认测试使用与维护使用与维护退役退役软件定义软件定义软件开发软件开发软件使用软件使用与维护与维护软件生命周期软件设计的任务 从工程管理的角度来看,软件设计分两步完成 总体设计(概要设计),将软件需求转化为数据结构和软件的系统结构。 详细设计,即过程设计。通过对结构表示进行细化,得到软件详细的数据结构和算法。软件设计的任务 一般交互式软件系统的设计内容 体系结构设计 数据设计 接口设计 人机界面设计 过程设计课程内容提纲 第6章:“详细设计” 详细设计任务 结构程序设计 人机界

2、面设计 过程设计工具 面向数据结构的设计方法 程序复杂程度的定量度量详细设计的任务Program Design Coding 为SC图的每个模块确定算法和数据结构 进行详细设计的原则 在保证正确可靠前提下,尽量提高算法可读性 采用结构化设计方法,改善控制结构,降低程序复杂度,提高可测试性和可维护性 自顶向下逐步求精; 具有单入、单出的控制结构(取消GOTO语句) 用工具无二义的描述模块算法详细设计的任务 详细设计过程1.确定每个模块的算法 选择适当工具表达算法执行过程2.确定每一个模块的数据组织3.为每一个模块设计一组测试用例 输入数据、预期输出结果4.编写详细设计说明书5.设计评审详细设计的

3、任务 详细设计内容 用图表列出系统的每个程序,包括每个模块和子程序名称、标识符、层出结构关系 对程序的功能、性能、输入、输出、算法、流程、接口等进行描述 内容包括 程序描述:程序简要描述,意义和特点 功能:程序应具备的功能 性能:精度、灵活性和时间特性等 输入项 输出项详细设计的任务 详细设计内容 内容包括 算法:具体的计算步骤和过程 接口:模块的隶属关系、调用方式和参数、与模块直接关联的数据结构(如数据库表、文件等) 存储分配(根据需要) 注释设计:程序注释说明 限制条件:程序运行中所受的限制条件详细设计的任务 详细设计优化 在不考虑时间因素的前提下开发并精化软件结构 选出最耗时的模块,仔细

4、设计处理算法 孤立出大量占有处理机资源的模块 必要时重新设计或用依赖于机器的语言重写大量占有资源的模块课程内容提纲 第6章:“详细设计” 详细设计任务 结构程序设计 人机界面设计 过程设计工具 面向数据结构的设计方法 程序复杂程度的定量度量结构程序设计 1 结构程序设计的提出 结构程序设计概念最早1965年由E.W.Dijkstra提出 “可以从高级语言中取消GOTO语句” “程序的质量与程序中所包含的GOTO语句的数量成反比” 1966年bohm和Jacopini证明了: 只用三种基本的控制结构能实现任何单入口单出口的程序 1968年人们认识要创立一种新的程序设计思想 以显著地提高软件生产率

5、和降低软件维护代价 结构程序设计 1 结构程序设计的提出 1971年IBM公司成功地使用了结构程序设计技术 纽约时报信息库管理系统 美国宇航局空间实验室飞行模拟系统 1972年IBM公司的Mills进一步补充了结构程序设计的规则 结构程序设计是尽可能少用GOTO语句的程序设计方法。最好仅在检测出错误时才使用GOTO语句,而且应该总是使用前向GOTO语句结构程序设计 2 结构程序设计分类 只允许使用顺序、IF-THEN-ELSE分支和DO-WHILE型循环这三种基本控制结构,称为经典的结构程序设计 还允许使用DO-CASE多分支结构和DO-UNTIL循环结构,称为扩展的结构程序设计 如果再加上允

6、许使用LEAVE(或BREAK)结构,称为修正的结构程序设计课程内容提纲 第6章:“详细设计” 详细设计任务 结构程序设计 人机界面设计 过程设计工具 面向数据结构的设计方法 程序复杂程度的定量度量人机界面设计 人机界面的设计四个方面 系统响应时间 用户帮助设施 出错信息处理 命令交互 1. 系统响应时间 系统响应时间指 从用户完成某个控制动作(例如,按回车键或点击鼠标),到软件给出预期响应(输出信息或做动作)之间的时间人机界面设计1. 系统响应时间系统响应时间有两个重要属性 响应长度 系统响应时间过长,用户就会感到紧张和沮丧 系统响应时间过短,会迫使用户加快操作节奏,从而可能会犯错误 易变性

7、(系统响应时间的更重要的属性) 指系统响应时间相对于平均响应时间的偏差 响应时间易变性低也有助于用户建立起稳定的工作节奏 例如,稳定在1秒的响应时间比从0.1秒到2.5秒变化的响应时间要好人机界面设计2. 用户帮助设施 常见的帮助设施可分为集成的和附加的两类 集成的帮助设施从一开始就设计在软件里面 它对用户工作内容是敏感的 可缩短用户获得帮助的时间,增加界面的友好性 附加的帮助设施是在系统建成后再添加到软件中的 实际是一种查询能力有限的联机用户手册 人们普遍认为,集成的帮助设施优于附加的帮助设施人机界面设计 设计帮助设施时必须解决下述问题(1)交互期间是否在任何时候都能获得关于任何功能的帮助?

8、 有两种选择:提供功能的帮助信息和提供全部功能的帮助信息(2)用户怎样请求帮助? 有3种选择:帮助菜单,特殊功能键和HELP命令(3)怎样显示帮助信息? 有3种选择:在独立的窗口中,指出参考某个文档和在屏幕固定位置显示简短提示(4)用户怎样返回到正常的交互方式中? 有两种选择:屏幕上的返回按钮和功能键(5)怎样组织帮助信息? 有3种选择:平面结构(所有信息都通过关键字访问),信息的层次结构(用户可在该结构中查到更详细的信息)和超文本结构人机界面设计3. 出错信息处理 出错信息和警告信息 是出现问题时交互式系统给出的“坏消息” 一般说来,交互式系统给出的出错信息或警告信息,应该具有下述属性:(1

9、)应该用用户可以理解的术语描述问题(2)应该提供有助于从错误中恢复的建设性意见人机界面设计(3)信息应该指出错误可能导致哪些负面后果 (4)信息应该伴随着听觉上或视觉上的提示 例如,在显示信息时同时发出警告铃声 或者信息用闪烁方式显示 或者用明显表示出错的颜色显示(5)信息不能带有指责色彩 也就是说,不能责怪用户人机界面设计4. 命令交互 在提供命令交互方式时,必须考虑下列设计问题(1)是否每个菜单选项都有对应的命令?(2)采用何种命令形式? 有3种选择:控制序列(例如,Ctrl+P),功能键和键入命令。(3)学习和记忆命令的难度有多大?忘记了怎么办?(4)用户是否可以定制或缩写命令?人机界面

10、设计 人机界面设计过程 用户界面设计是一个迭代的过程 创建设计模型-再用原型实现这个设计模型-由用户试用和评估-根据用户意见进行修改 用于界面设计和原型开发的软件工具 用户界面工具箱或用户界面开发系统 用户界面的评估周期如下所述 完成初步设计之后就创建第一级原型; 用户试用并评估该原型,向设计者表述对界面的评价 设计者根据用户意见修改设计并实现下一级原型人机界面设计 人机界面设计过程 运用下述评估标准对设计进行早期复审:(1)系统及其界面的规格说明书的长度和复杂程度 预示了用户学习使用该系统所需要的工作量(2)命令或动作的数量、命令的平均参数个数或动作中单个操作的个数 预示了系统的交互时间和总

11、体效率(3)动作、命令和系统状态的数量 预示了用户学习使用该系统时需要记忆的内容的多少(4)界面风格、帮助设施和出错处理协议 预示了界面的复杂程度及用户接受该界面的程度人机界面设计 人机界面设计指南 一般交互指南 涉及信息显示、数据输入和系统整体控制(1)保持一致性 应该为人机界面中的菜单选择、命令输入、数据显示以及众多的其他功能,使用一致的格式(2)提供有意义的反馈 应向用户提供视觉的和听觉的反馈,以保证在用户和系统之间建立双向通信。(3)在执行有破坏性的动作之前要求用户确认人机界面设计 人机界面设计指南 1 一般交互指南(4)允许取消绝大多数操作 UNDO或REVERSE功能曾经使众多终端

12、用户避免了大量时间浪费。(5)减少在两次操作之间必须记忆的信息量 不应该期望用户能记住在下一步操作中需使用的一大串数字或标识符 (6)提高对话、移动和思考的效率 应该尽量减少用户击键的次数 设计屏幕布局时应该考虑尽量减少鼠标移动的距离 应该尽量避免出现用户问“这是什么意思?”的情况人机界面设计 人机界面设计指南 1 一般交互指南 (续上页)(7)允许犯错误 系统应该能保护自己不受严重错误的破坏。(8)按功能对动作分类,并据此设计屏幕布局 设计者应该尽力提高命令和动作组织的“内聚性”(9)提供对用户工作内容敏感的帮助设施 (10)用简单动词或动词短语作为命令名人机界面设计 人机界面设计指南 2

13、信息显示指南(1)只显示与当前工作内容有关的信息 用户在获得有关功能的信息时,不必看到与之无关的数据、菜单和图形。(2)不要用数据淹没用户 应该用便于用户迅速吸取信息的方式来表示数据 例如,可以用图形或图表来取代庞大的表格。(3)使用一致标记、标准的缩写和可预知的颜色 显示的含义应该非常明确,用户无须参照其他信息源就能理解。人机界面设计 人机界面设计指南 2 信息显示指南 (续上页)(4)允许用户保持可视化的语境(5)产生有意义的出错信息(6)使用大小写、缩进和文本分组以帮助理解(7)使用窗口分隔不同类型的信息 (8)使用“模拟”显示表示信息,以使信息更容易被用户提取(9)高效率地使用显示屏人

14、机界面设计 人机界面设计指南 3 数据输入指南(1)尽量减少用户的输入动作 最重要的是减少击键次数(2)保持信息显示和数据输入之间的一致性 显示的视觉特征(例如文字大小、颜色和位置)应与输入域一致(3)允许用户自定义输入(4)交互应该是灵活的,并且可调整成用户最喜欢的输入方式人机界面设计 人机界面设计指南 3 数据输入指南 (续上页)(5)使在当前动作语境中不适用的命令不起作用(6)让用户控制交互流 用户应该能够跳过不必要的动作 改变所需做的动作的顺序(在应用环境允许的前提下) 以及在不退出程序的情况下从错误状态中恢复正常(7)对所有输入动作都提供帮助(8)消除冗余的输入 不要要求用户指定输入

15、数据的单位 尽可能提供默认值 绝对不要要求用户提供程序可以自动获得或计算出来的信息。课程内容提纲 第6章:“详细设计” 详细设计任务 结构程序设计 人机界面设计 过程设计工具 面向数据结构的设计方法 程序复杂程度的定量度量过程设计工具过程设计工具1. 程序流程图 在40年代末到70年代中期,程序流程图一直是软件设计的工具 它以对控制流程的描绘直观、易于掌握而被设计人员青睐 依据国家标准(GB1526-89),列出有关程序流程图的基本符号过程设计工具数据 处理 待处理 准备 判断 循环上、下界 连接端点符 注解符 流线 虚线 省略符 并行方式 多出口判断 换页连接控制流过程设计工具 过程设计工具

16、 程序流程图 缺点:本质上不具备逐步求精的特点,对于提高缺点:本质上不具备逐步求精的特点,对于提高 大型系统的可理解性作用甚微;大型系统的可理解性作用甚微; 不易表示数据结构;不易表示数据结构; 转移控制太方便。转移控制太方便。 趋势:仃止使用趋势:仃止使用 优点:容易掌握,且历史优点:容易掌握,且历史“悠久悠久”,使用广泛。,使用广泛。过程设计工具2. 盒图 (N-S图) N-S图是Nassi和Shneiderman提出来的,它体现了结构程序设计精神,是目前过程设计中广泛使用的一种图形工具。 基本符号过程设计工具2. 盒图 (N-S图)第第1个任务个任务第第2个任务个任务 第第n个任务个任务

17、TF条件条件ELSE部分部分THEN部分部分CASE条件条件值值 1CASE1部分部分值值 2CASE2部分部分值值 nCASEn部分部分循环条件循环条件DO- WHILE 部分部分循环条件循环条件DO- UNTIL 部分部分Aabx1FTCase x iFTx2x3x4x5cdeghix7x8jfx6abx1x2x5fcx3x4deghix6x7x8j过程设计工具 N-S图的特点 优点 功能域(一个特定控制结构的作用域)明确,可以从盒图上一眼就看出来。 没有箭头不允许随意转移控制,不可能任意转移控制。 很容易确定局部和全程数据的作用域。 很容易表现嵌套关系,也可以表示模块的层次结构。 缺点

18、随着程序内嵌套的层数增多时,内层方框越来越小,这样不仅会增加画图的难度,还会影响图形的清晰度。过程设计工具3. PAD图 PAD(Problem Analysis Diagram)问题分析图 日立公司中央研究所在1973年研究开发 使用二维树形结构图描述程序的逻辑 PAD图的优点: 程序一定是结构化的,PAD图中竖线的总条数就是程序中的层次数,既表示程序逻辑,也描绘数据结构过程设计工具ABSequential While PS Until PSLoopsPABTHENELSESelectiveP =A1A2CaseAn12nStatement IndexdefDefinitionajUNTIL

19、 X8bx1fx6UNTIL X7ghideWHILE X5cxi=x2x3x4abx1x2x5fcx3x4deghix6x7x8jx4TFDo-Until x5ighfkx1TFbDo-Until x6ajx21cDo-While x323dek :例:例:N-S图与图与PAD的转换的转换开始开始 结束结束 aj Until x5i Until x6bx1kfx4ghdefkx2de123 While x3c过程设计工具4 判定表 判定表能够清晰地表示复杂的条件组合与所产生的动作之前的关系。 一张判定表由四部分组成: 左上部列出所有的条件 左下部是所有可能的操作 右上部是各种条件的组合矩阵

20、右下部是每种条件组合对应的动作过程设计工具4 判定表 一张判定表由四部分组成: 左上部列出所有的条件 左下部是所有可能的操作 右上部是各种条件的组合矩阵 右下部是每种条件组合对应的动作 条件条件 操作操作 条件组合矩阵条件组合矩阵 动作动作过程设计工具4 判定表 例: 某航空公司规定,乘客可以免费托运重量不超过30公斤的行李。当行李重量超过30公斤时,头等舱国内乘客超重部分每公斤收费4元,其他舱的国内乘客超重部分每公斤收费6元,对于外国乘客超重部分每公斤收费比国内乘客多一倍,对于残疾乘客超重部分每公斤收费比正常乘客减少一半。国内乘客国内乘客TTTTFFFF头等仓头等仓TFTFTFTF残疾乘客残

21、疾乘客FFTTFFTT行李重量行李重量 30T F F F FF F F F免费免费 (W-30)*2(W-30)*3(W-30)*4(W-30)*6(W-30)*8(W-30)*12过程设计工具5 判定树 表示复杂的条件组合与应做的动作之间的对应关系 判定树形式简单,长期以来一直受到重视 判定树的简洁性不如判定表 经常出现同一个值重复写多遍 且叶端重复次数急剧增加 由于判定树的分枝次序对于最终画出的判定树的简洁程度有较大影响 所以选择哪一个条件作为第一个分枝是至关重要的残疾乘客残疾乘客 (w-30)*2正常乘客正常乘客 (w-30)*4残疾乘客残疾乘客 (w-30)*3正常乘客正常乘客 (w

22、-30)*6残疾乘客残疾乘客 (w-30)*4正常乘客正常乘客 (w-30)*8残疾乘客残疾乘客 (w-30)*6正常乘客正常乘客 (w-30)*12头等舱头等舱其它舱其它舱头等舱头等舱其它舱其它舱国内乘客国内乘客国外乘客国外乘客行李重量行李重量30公斤公斤行李重量行李重量 30公斤公斤行李费行李费算法算法免费免费过程设计工具6 伪码和过程设计语言(PDL) 是一种“混杂式语言” 采用了某种语言(如英语或自然语言)的词汇 另一种语言(某种结构化程序设计语言)的全部语法 具有数据说明、子程序、分程序、顺序控制、输入和输出结构过程设计工具6 伪码和过程设计语言(PDL) 示例PROCEDURE s

23、pell_check IS BEGIN Split document into single words Look up words in dictionary Display words which are not in dictionary Create a new dictionary END spell_checkExternal statementsInternalstatements过程设计工具6 伪码和过程设计语言(PDL) PDL应该具有下述特点:(1)关键字的固定语法 它提供了结构化控制结构、数据说明和模块化的特点 为了使结构清晰和可读性好,通常在所有可能嵌套使用的控制结构的

24、头和尾都有关键字,例如,if.fi(或endif)等(2)自然语言的自由语法,它描述处理特点(3)数据说明的手段(4)模块定义和调用的技术,提供各种接口描述模式过程设计工具6 伪码和过程设计语言(PDL) PDL作为一种设计工具有如下一些优点: 可以作为注释直接插在源程序中间 可以使用普通的正文编辑程序或文字处理系统,很方便地完成PDL的书写和编辑工作。 已经有自动处理程序存在,而且可以自动由PDL生成程序代码。 PDL的缺点是不如图形工具形象直观,描述复杂的条件组合与动作间的对应关系时,不如判定表清晰简单过程设计工具6 伪码和过程设计语言(PDL) 数据说明它的形式为: declard数据名

25、 as 限定词 子程序结构它的形式为: procedure 子程序名 interface 参数表 分程序或PDL语句 return end 子程序名过程设计工具6 伪码和过程设计语言(PDL) 分程序结构begin 分程序名 PDL语句end 分程序名 顺序控制结构(1) 选择型if 条件 then PDL语句else PDL语句end if过程设计工具6 伪码和过程设计语言(PDL) 顺序控制结构(2) WHILE型循环 loop while 条件 PDL语句 end loop(3) UNTIL型循环 loop until 条件 PDL语句组 end loop过程设计工具6 伪码和过程设计语

26、言(PDL) 顺序控制结构 (4) CASE型case 选择因子 of标号,标号:PDL语句 :end case (5) 输入/输出结构 一般采用 print read display input output等常见语句例例1 1 是是PDLPDL的设计片断程序的设计片断程序 beginbegin execute process aexecute process a loop until condition x8loop until condition x8 beginbegin execute process b execute process b if condition x1 then

27、if condition x1 then begin begin execute process f execute process f if condition x6 then if condition x6 then loop until condition x7 loop until condition x7 execute process i execute process i end loop end loop else else begin begin execute process g execute process g execute process h execute pro

28、cess h end end abx1x2x5fcx3x4deghix6x7x8j end ifend if end end elseelse case xi of case xi of x2:loop while condition x5 x2:loop while condition x5 execute process c execute process c end loop end loop x3: execute process d x3: execute process d x4: execute process e x4: execute process e end case e

29、nd case end if end if endend end loopend loop exceute process jexceute process j endendabx1x2x5fcx3x4deghix6x7x8j课程内容提纲 第6章:“详细设计” 详细设计任务 结构程序设计 人机界面设计 过程设计工具 面向数据结构的设计方法 程序复杂程度的定量度量面向数据结构的设计方法 面向数据结构的设计方法的目标 目标是得出对程序处理过程的描述 这种方法最适合于在详细设计阶段使用 两个面向数据结构的设计方法 Jackson方法和Warnier方法面向数据结构的设计方法 分析确定数据结构 数据元

30、素彼此间的逻辑关系有 顺序、选择和重复 因此,逻辑数据结构也只有这3类 描述数据结构的工具Jackson图 面向数据结构的设计方法 描述数据结构的工具Jackson图 顺序结构 顺序结构的数据由一个或多个数据元素组成,每个元素按确定次序出现一次。ACBDA seq B C DA end面向数据结构的设计方法 描述数据结构的工具Jackson图 选择结构 选择结构的数据包含两个或多个数据元素,每次按一定的条件从这些数据元素中选择一个使用,具体分为:(1)选择结构,(2)可选结构ACBDS(i)AB-S(i)A select cond1 BA or cond2 CA or cond3 DA end

31、A select cond BA end面向数据结构的设计方法 描述数据结构的工具Jackson图 重复结构 重复结构的数据,根据使用时的条件由一个数据元素出现零次或多次构成。AB*I(i)A iter until(while) cond BAend面向数据结构的设计方法 描述数据结构的工具Jackson图 面向数据结构的设计方法 描述数据结构的工具Jackson图 面向数据结构的设计方法 Jackson方法 Jackson结构化设计方法基本上由下述五个步骤组成:1 分析并确定输入数据和输出数据的逻辑结构,并用Jackson图描绘这些数据结构2 找出输入数据结构和输出数据结构中有对应关系的数据

32、单元3 从描绘数据结构的Jackson图导出描绘程序结构的Jackson图 按照在数据结构图中的层次,在程序结构图的相应层次,为每对有对应关系的数据单元画一个处理框面向数据结构的设计方法 Jackson方法 根据输入数据结构中剩余的每个数据单元所处的层次,在程序结构图相应层次分别为它们画上对应的处理框 根据输出数据结构中剩余的每个数据单元所处的层次,在程序结构图相应层次分别为它们画上对应的处理框 若在构成顺序结构的元素中出现了重复或选择元素,需在Jackson图中增加一个中间层次的处理框。4 列出所有操作和条件(包括分支条件和循环结束条件),并且把它们分配到程序结构图的适当位置。5 用伪码表示

33、程序 面向数据结构的设计方法 Jackson方法 应用举例 一个正文文件由若干个记录组成,每个记录是一个字符串。要求统计每个记录中空格字符的个数,以及文件中空格字符的总数。输出数据的格式为,每复制一行输入字符串后,另起一行印出这个字符串的空格数,最后印出文件中空格的总个数。第第1 1步:用步:用JacksonJackson图描述图描述输入输入/ /输出输出的数据结构的数据结构正文文件正文文件I字符串字符串*字符字符*空格空格O非空格非空格OIS输入输入输出表格输出表格表格体表格体串信息串信息*字符串字符串空格数空格数I输出输出空格总数空格总数第第2 2步:在两个图中指出有直接因果关系步:在两个

34、图中指出有直接因果关系、可以同可以同时处理的单元(重复的次序,次数均相同)时处理的单元(重复的次序,次数均相同)正文文件正文文件I字符串字符串*字符字符*空格空格O非空格非空格OIS输入输入输出表格输出表格表格体表格体串信息串信息*字符串字符串空格数空格数I输出输出空格总数空格总数? 经过程序处理由经过程序处理由正文文件正文文件得到得到输出表格输出表格。 每处理输入中一个每处理输入中一个字符串字符串后就后就得到输出中一个得到输出中一个串信息串信息,二者重,二者重复次序和次数均相同。复次序和次数均相同。 字符字符不与多字符组成的不与多字符组成的字符串字符串对应。对应。 单个单个空格空格不能决定不

35、能决定空格数空格数。正文文件正文文件I字符串字符串*字符字符*空格空格O非空格非空格OIS输入输入输出表格输出表格表格体表格体串信息串信息*字符串字符串空格数空格数I输出输出空格总数空格总数统计空格统计空格处理字符串处理字符串*I程序体程序体印总数印总数印字符串印字符串印空格数印空格数分析字符分析字符*分析字符分析字符*I分析字符串分析字符串处理空格处理空格o处理非空格处理非空格oS注:顺序执行的处理中不允许混有注:顺序执行的处理中不允许混有重复执行或选择执行的处理重复执行或选择执行的处理。第第3步:步:Data structure Program structure把有对应关系的单元合为一个

36、处理框,画把有对应关系的单元合为一个处理框,画在相应的层次中(不同层以低层为准)在相应的层次中(不同层以低层为准)第第4 4步:列出所有操作条件,步:列出所有操作条件,并分配到上幅程序结构图中并分配到上幅程序结构图中统计空格统计空格处理字符串处理字符串*I(1)程序体程序体印总数印总数印字符串印字符串印空格数印空格数分析字符分析字符*I分析字符串分析字符串处理空格处理空格o处理非空格处理非空格oS23145例例:(部分部分列举,详列举,详见见P.125)打开文件打开文件读入字符串读入字符串空格总数空格总数totalsum=0关闭文件关闭文件仃止仃止I 文件结束文件结束第第5步:用步:用Pseu

37、docode 表示程序。表示程序。(详见(详见P.125 -126)课程内容提纲 第6章:“详细设计” 详细设计任务 结构程序设计 人机界面设计 过程设计工具 面向数据结构的设计方法 程序复杂程度的定量度量程序复杂程度的定量度量 McCabe方法 McCabe方法的核心是 通过定量分析程序中分支个数或循环个数,对软件测试难度进行定量度量,对软件最终的可靠性进行预测。 以下我们介绍定量度量的过程。程序复杂程度的定量度量 McCabe方法 流图 McCabe方法根据程序控制流的复杂程度定量度量程序的复杂程度,这样度量出的结果称为程序的环形复杂度。 流图实质上是“退化了的程序流程图 它仅仅描绘程序的控制流程,完全不表现对数据的具体操作以及分支或循环的具体条件。 程序复杂程

温馨提示

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

最新文档

评论

0/150

提交评论