软件开发与应用-第6章 详细设计.ppt

  1. 1、本文档共42页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件开发与应用-第6章 详细设计

软件开发与应用 第五章 回顾 设计过程 设计原理 启发规则 描绘软件结构的图形工具 面向数据流的设计方法 小结 本章导读 第六章 详细设计 结构程序设计 人机界面设计 过程设计的工具 面向数据结构的设计方法(略) 程序复杂程度的定量度量 小结 (Program Design ? Coding) 结构程序设计的特点: ① 自顶向下逐步求精; ② 具有单入、单出的控制结构(取消GOTO语句) ? 任何复杂的程序流程图都应由以上五种基本结构组合而成。 6.2 人机界面设计 人机界面设计是接口设计的一个重要的组成部分。 近年来,人机界面在系统中所占的比例越来越大,在个别系统中人机界面的设计工作量甚至占总设计量的一半以上。 人机界面的设计质量,直接影响用户对软件产品的评价,从而影响软件产品的竞争力和寿命。 人机界面 6.2.1 设计问题 在设计人机界面的过程中,几乎总会遇到下述4个问题: 系统响应时间 ? 系统响应时间指从用户完成某控制动作(例如,按回车键或点击鼠标),到软件给出预期的响应(输出信息或做动作)之间的这段时间。 ?系统响应时间有两个重要属性:分别是长度和易变性。 2. 用户帮助设施 几乎交互式系统的每个用户都需要帮助,当遇到复杂问题时甚至需要查看用户手册以寻找答案。大多数现代软件都提供联机帮助设施,这使得用户无须离开用户界面就能解决自己的问题。 常见的帮助设施可分为集成的和附加的两类 帮助的时间和内容范围界定 用户请求帮助方式: 帮助菜单 特殊功能键 HELP命令。 (3) 帮助信息的显示. 在独立的窗口中 指出参考某个文档(不理想) 在屏幕固定位置显示简短提示。 (4) 用户返回到正常的交互方式中的方法. 有两种选择:屏幕上的返回按钮和功能键。 (5) 帮助信息的组织:平面结构,信息的层次结构和超文本结构。 3. 出错信息处理 出错信息和警告信息,是出现问题时交互式系统给出的“坏消息”。出错信息设计得不好,将向用户提供无用的甚至误导的信息,反而会加重用户的挫折感。 一般说来,交互式系统给出的出错信息或警告信息,应该具有下述属性。 (1) 信息应该用用户可以理解的术语描述问题。 (2) 信息应该提供有助于从错误中恢复的建设性意见。 (3) 信息应该指出错误可能导致哪些负面后果。 (4) 信息应该伴随着听觉上或视觉上的提示,例如,在显示信息时同时发出警告铃声,或者信息用闪烁方式显示,或者信息用明显表示出错的颜色显示。 (5) 信息不能带有指责色彩,也就是说,不能责怪用户。 4. 命令交互 交互形式: 命令行---曾经的流行 面向窗口的、点击和拾取方式的界面 用户既可以从菜单中选择软件功能,也可以通过键盘命令序列调用软件功能。 人机界面设计过程 过程设计工具 1.程序流程图 2.盒图 3.PAD图 4.判定表 5.判定树 6.过程设计语言 §4.程序复杂程度的定量度量 (Measuring Program Complexity) 定量度量程序复杂程度的方法很有价值: 把程序的复杂程度乘以适当常数即可估算出软件中故障的数量以及软件开发需要用的工作量; 定量度量的结果可以用来比较两个不同的设计或两个不同算法的优劣; 程序的定量的复杂程度可以作为模块规模的精确限度。 McCabe方法 使用McCabe方法首先需要画出程序图,所谓程序图可以看成是“退化了的”程序流程图,也就是把程序流程图中每个处理符号都退化成一个点,原来连接不同处理符号的箭头变成连接不同点的有向弧,这样得到的有向图就称为程序图 (流图)。 McCabe方法 例子1 McCabe方法 例子2 环形复杂度的计算方法 流图中的区域数等于环形复杂度 流图G的环形复杂度: V(G)=E-N+2 其中,E是流图中边的条数,N是结点数。 流图G的环形复杂度: V(G)=P+1 其中,P是流图中判定结点的数目。 环行复杂度的用途: 程序的环形复杂度取决于程序结构的复杂程度。当程序内分支数或循环个数增加时,环形复杂度也随之增加,因此它是对测试难度的一种定量度量,也能对软件最终的可靠性给出某种预测。 实践表明,模块规模以V(G)≤10为宜,也就是说,V(G)≤10是模块规模的一个更科学更精确的上限。 Halstead方法 Halstead方法根据程序中运算符和操作数的总数来度量程序的复杂程度。 令N1为程序中运算符出现的总次数,N2为操作数出现的总次数,程序长度N定义为:      N =N1十N2 详细设计完成之后,可以知道程序中使用的不同运算符(包括关键字)的个数n1,以及不同操作数(变量和常数)的个数n2。Halstead给出预测程序长度的公式如下:      H = n1

文档评论(0)

asd522513656 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档