软件工程ppt教学课件第六章详细设计

上传人:aa****6 文档编号:57593678 上传时间:2018-10-23 格式:PPT 页数:56 大小:543KB
返回 下载 相关 举报
软件工程ppt教学课件第六章详细设计_第1页
第1页 / 共56页
软件工程ppt教学课件第六章详细设计_第2页
第2页 / 共56页
软件工程ppt教学课件第六章详细设计_第3页
第3页 / 共56页
软件工程ppt教学课件第六章详细设计_第4页
第4页 / 共56页
软件工程ppt教学课件第六章详细设计_第5页
第5页 / 共56页
点击查看更多>>
资源描述

《软件工程ppt教学课件第六章详细设计》由会员分享,可在线阅读,更多相关《软件工程ppt教学课件第六章详细设计(56页珍藏版)》请在金锄头文库上搜索。

1、第六章 详细设计 (Program Design Coding),详细设计的任务: 功能设计、算法设计 数据结构设计、物理设计 其他设计:代码设计、输入/输出设计、界面设计 编写详细设计说明书 评审,第六章 详细设计 (Program Design Coding),1. 结构化程序设计 特点:自顶向下,逐步求精具有单入口、单出口的控制结构尽可能少用GOTO语句,最好在检测出错误才用,而且总是使用前向GOTO经典结构化程序设计:3种基本控制结构扩展结构化程序设计:5种基本控制结构,(1) 顺序结构(sequential structure),(2) 选择结构(selective structur

2、e),(3) 先判定型循环结构(while-loop structure),(4) 后判定型循环结构(until-loop structure),(5) 多情况选择(case structure),5种基本控制结构,1. 结构化程序设计,2. 人机界面设计对于许多计算机化的信息系统的用户来说,挫折和焦虑是他们日常生活的一部分。他们努力地学习命令语言和菜单选择系统以帮助他们更好地完成工作。有些人甚至对计算机、终端和网络产生了恐惧,因而刻意地回避计算机化的系统。用户界面的设计要求在研究技术问题的同时对人加以研究。用户是什么样的人?用户怎样学习与新的计算机系统交互?用户怎样解释系统产生的信息?用户对

3、系统有那些期望?,1、设计问题: 四个 系统响应时间:属性(长度、易变性) 用户帮助设施:两类(集成、附加) 出错信息处理 命令交互,2.人机界面设计,系统响应时间: 系统响应时间是指从用户开始执行动作(比如按“回车”键或点鼠标)到软件给出预期的响应的等待时间。 两个属性: 长度、易变性 长度:如果系统响应时间过长,用户就会感到不安和沮丧,过快的系统响应时间有时也会成为问题,因为这会迫使用户加快操作节奏,从而导致错误。 易变性:响应时间相对于平均响应时间的偏差。即使响应时间比较长,低的响应时间易变性也有助于用户建立稳定的节奏。例如,稳定在1秒的响应时间比从0.1到2.5秒不定的响应时间要好。,

4、2.人机界面设计,(2) 用户帮助设施:在多数情况下,现代的软件均提供联机帮助,用户可以不离开界面就解决自己的问题。 两类:集成、附加集成的帮助设施是一开始就设计在软件里面的,它通常与语境相关,用户可以直接选择与所要执行操作相关的主题。可以缩短用户获得帮助的时间,增加界面的友好性。附加的帮助设施是在系统建好以后再加进去的,多数情况下,这种帮助是一种查询能力较弱的联机帮助, 交互期间,用户能获得多少帮助?全部/部分,2.人机界面设计,用户怎样请求帮助?三种选择:帮助菜单、特殊功能键、HELP命令 怎样显示帮助信息?三种选择:独立窗口、固定位置、指出参考文档 怎样返回交互方式?两种选择:屏幕上的返

5、回键和功能键或控制序列 怎样组织帮助信息?三种选择:平面式(所有信息均通过一个关键词来访问)、分层式(用户可以进一步查询得到更详细的信息)和超文本式,2.人机界面设计,(3)出错信息处理: 出错信息和警告是指出现问题时系统给出的坏消息。如果做不好的话,出错信息和警告会给出无用或误导的信息,反而增加了用户的沮丧感。 例:很少有用户没有遇到类似以下的出错信息:SEVERE SYSTEM FAILURE14A应该在某处有对错误14A的解释,否则设计者为什么会指出14A呢?但出错信息并没有指出是什么错误或从何处可以找到进一步的信息。 类似上面的出错信息既不能减轻用户的焦虑感也不能解决问题。,2.人机界

6、面设计,通常,出错信息和警告应具备以下特征: 信息以用户可以理解的术语描述问题。 信息应提供如何从错误中恢复的建设性意见。 信息应指出错误可能导致哪些不良后果(比如破坏数据),以便用户检查是否出现了这些情况,或帮助用户进行改正。 信息应伴随着视觉或听觉上的提示。即显示信息时应该伴随警告声,或信息用闪烁方式显示,或信息用明显的表示错误的颜色显示。 信息不能带有判决色彩,即不能指责用户。由于没有人喜欢坏消息,无论出错信息代表了什么,也很少有用户喜欢出错信息,但从道理上讲,在出现问题时有效的出错信息能够提高交互式系统的质量、减少用户的沮丧感。,2.人机界面设计,(4)命令交互:命令行曾经是用户和系统

7、交互的主要方式,并广泛用于各种应用程序中。现在,面向窗口的采用点击(point)和拾取(pick)方式的界面减少了用户对命令行的依赖,但许多高级用户仍然喜欢面向命令的交互方式。在许多软件中,用户既可以从菜单中选择一个命令,也可以用键盘输入命令序列。,2.人机界面设计,在提供命令交互方式时,必须考虑以下问题:每一个菜单选项是否都有对应命令?以何种方式提供命令?有三种选择:控制序列(比如P)、功能键和键入命令。学习和记忆命令的难度有多大?命令忘了怎么办?用户是否可以定制和缩写命令?,2.人机界面设计,在越来越多的应用中,界面设计者提供“命令宏机制”,以用户定义的名字代表一个常用的命令序列,用户不必

8、分别输入这些命令,只需输入命令宏就可以执行其代表的命令序列。在理想情况下,所有的应用程序应有通用的命令使用方法。如果在一个应用中D表示复制一个图形对象,而在另一个应用中D表示删除一个图形对象,这就会使用户感到困惑,并往往会导致错误,潜在的错误是明显的。,2.人机界面设计,2、界面设计指南 (1)一般交互的指南: 一致性。菜单选择、命令输入、数据显示以及无数其他功能都应使用一致的格式。 提供有意义的反馈。向用户提供视觉和听觉的反馈,以保证在用户和界面间建立双向联系。 在执行有较大破坏性的动作前要求确认。如果用户要删除一个文件,或覆盖一些重要信息,或请求停止一个程序,应该给出类似“您确实要?”的信

9、息。,2.人机界面设计,减少在动作间必须记忆的信息数量。不应期望用户能记住一大串数字或名字,以便在下一步的功能中使用,记忆量应尽量减少。 允许取消大多数操作。UNDO或REVERSE功能使成千上万的用户免受成百万小时的挫折。每个交互式应用都应允许取消已完成的操作。 在对话、移动和思考中提高效率。击键次数应尽量减少,设计屏幕布局时应考虑鼠标移动的距离,用户问“下面怎么办?”的时候应尽量减少。 允许错误。系统应保护自己不受致命错误的破坏。,2.人机界面设计,按功能对动作分类,并据此安排屏幕布局。下拉菜单的一个优点就是按类型组织命令。实际上,设计者应努力提高命令和动作组织的内聚性。 提供语境相关的帮

10、助机制。 命令用简单的动词或动词短语命名。过长的命令名难以识别和记忆,也会占据过多的菜单位置。,2.人机界面设计,(2)信息显示的指南: 只显示与当前语境环境相关的信息。用户在获取有关某特定系统功能的信息时,不必看到其他的数据、菜单和图形。 不要用数据将用户包围,使用便于用户迅速吸取信息的方式表现数据。可以用各种图形取代巨大的表格。 使用一致的标记、标准的缩写和可预测的颜色。显示信息的含义应该非常明确,用户不必再参照其他信息源。,2.人机界面设计,允许用户维持可视化的语境。如果图形表示可以伸缩,原来的图像应一直显示着(比如以缩小的形式放在屏幕的一角),以使得用户可以知道自己观察的部分在原图中的

11、相对位置。 产生有意义的出错信息。 使用大小写、缩进和文本来辅助理解。HCI显示的大部分信息是文字,文字的布局和形式对用户从中吸取信息影响很大。 使用窗口分隔不同类型的信息。窗口使得用户可以方便地保存多种不同类型的信息。,2.人机界面设计,如果采用“模拟”的明显方式表示信息,更容易被用户理解,则应采用模拟方式。例如,显示炼油厂储油罐的压力时,简单的数字表示难以被用户理解。如果用类似温度计的方式来表示,用垂直的运动和颜色变化来表示危险的压力状况,就比较容易理解,因为这样为用户提供了绝对和相对两方面的信息。 高效地使用显示器的显示空间。如果采用多窗口,应该为每个窗口都留一些显示空间。此外,屏幕的大

12、小应该适合于应用程序(这实际上是一个系统工程的问题)。,2.人机界面设计,(3)数据输入的指南: 减少用户输入动作的数量。最主要的是减少击键的数量,可用以下方式实现:用鼠标选择菜单代替击键;用滑动标尺输入一定范围内的值;使用宏,用一次击键代表复杂的输入数据。 维护信息显示和数据输入的一致性。显示的视觉特征(比如文字的大小、颜色和位置)应与输入域一致。 允许用户自定义输入。专家用户可能需要定义用户命令或省去警告信息及动作确认。HCI应该允许这样做。,2.人机界面设计,交互应该是灵活的,并可调整到用户最喜欢的输入方式。用户类型有助于确定用户喜欢的输入模式。秘书可能很喜欢键盘输入,经理可能会喜欢鼠标

13、一类的点击设备。 在当前动作的语境中使不合适的命令不起作用。这使得用户不会使用哪些肯定会导致错误的动作。 让用户控制交互流。用户应该能够跳过不必要的动作、改变所需动作的顺序(如果应用的语境环境允许的话)以及在不退出系统的情况下从错误状态恢复。,2.人机界面设计,为所有的输入动作提供帮助。 消除冗余输入。 不要要求用户指定工程输入的单位(除非不这样会产生含混); 不要要求用户在整钱数后加.00 可能的话要提供缺省值 绝不要让用户提供程序中可以自动获得或计算出来的信息。,2.人机界面设计,3. 过程设计的 工具1、程序流程图(Program Flow Chart),程序流程图,又称程序框图,是描述

14、程序逻辑结构的工具。它使用的符号与系统流程图的符号很多相同,但是,箭头符号代表控制流而不是数据流。 5种基本控制结构:,(1) 顺序结构(sequential structure),(2) 选择结构(selective structure),(3) 先判定型循环结构(while-loop structure),(4) 后判定型循环结构(until-loop structure),(5) 多情况选择(case structure),3. 过程设计的 工具, 任何复杂的程序流程图都应由以上五种基本结构组合而成。, 优点:直观清晰,易于使用,容易掌握,且历史“悠久”,使用广泛。, ISO 认可的规定

15、符号:P.83 图 5.3,3. 过程设计的 工具, 缺点: 转移控制太方便。易造成非结构化的程序结构,编码时不加限制的使用GOTO语句,导致基本控制块多入多出口,与软件设计的原则相违背。 本质上不具备逐步求精的特点。诱使过早考虑程序的控制流程,而不去考虑程序的全局结构。对于提高大型系统的可理解性作用甚微; 不易表示数据结构。, 趋势:停止使用,3. 过程设计的 工具,2、盒图(Box Diagram): Nassi &Shneiderman 1973年提出,又称为N-S Charts。Chapin 1974年作扩充,故也称为Chapin charts.,3. 过程设计的 工具,例:,3. 过

16、程设计的 工具,特点:所有的程序结构均用方框来表示,程序结构清晰。只能表达结构化的程序逻辑,遵守结构化程序设计的规定。 没有箭头,不允许随意转移控制; 每个矩形框(Case中条件取值例外)都是一个功能域(即一个特定结构的作用域),结构表示明确; 局部及全程数据的作用域易见; 易表现嵌套关系(embedded structure)以及模块的层次结构。 缺点:当程序内嵌套的层数增多时,内层的方框将越来越小,从而增加绘图的难度,并使图形的清晰性受影响。,3. 过程设计的 工具,3、PAD(Problem Analysis Diagram):日立公司,1973,3. 过程设计的 工具,例:N-S图与PAD的转换,3. 过程设计的 工具,3. 过程设计的 工具,特点: 结构清晰,层次分明,易读易写,使用方便; 支持逐步求精的设计思想,支持结构化的程序设计原理; 容易将PAD自动转换为高级语言源程序。,3. 过程设计的 工具,4、判定表 & 判定树(Decision Table & Tree)表示复杂的条件(input)组合与应做动作(output)之间的对应关系。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号