欢迎来到天天文库
浏览记录
ID:39055019
大小:377.82 KB
页数:44页
时间:2019-06-24
《《结构化详细设计》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、软件工程第七讲结构化详细设计朱建凯上节课的问题信息隐藏的意义?模块化的粒度为什么不是越大或者越小越好?信息隐藏的意义在于将来维护和测试时,将来修改程序时由于疏忽而带来的错误不会传播到软件的其他部分;另外将来升级替换模块、重用模块都有好处。粒度大不方便错误定位和修改,不方便重用;粒度小导致模块之间需要更多的信息交流。本次课程需要掌握的内容人机交互设计(了解)如何提高程序的可重用性、可扩充性和健壮性(重要)什么是结构程序设计?(重要)伪码、PAD、盒图、程序流程图(非常重要)前面三个方法的优势,程序流程图的缺陷(非常重要)详
2、细设计阶段的根本目标是确定应该怎样具体地实现所要求的系统。详细设计的目标不仅仅是逻辑上正确地实现每个模块的功能,更重要的是设计出的处理过程应该尽可能简明易懂。人机界面设计是接口设计的一个重要的组成部分。人机界面的设计质量,直接影响用户对软件产品的评价,从而影响软件产品的竞争力和寿命,因此,必须对人机界面设计给予足够重视。5.3.1人机界面设计在设计人机界面的过程中,几乎总会遇到下述4个问题:系统响应时间用户帮助设施出错信息处理命令交互一、设计问题1.系统响应时间一般说来,系统响应时间指从用户完成某个控制动作(例如,按回车
3、键或点击鼠标),到软件给出预期的响应(输出信息或做动作)之间的这段时间。系统响应时间有两个重要属性,分别是长度和易变性。详细设计中,应针对有较长处理时间的操作设定系统响应时间,根据设定的响应时间来决定具体实现方案。2.用户帮助设施常见的帮助设施可分为集成的和附加的两类。集成的帮助设施从一开始就设计在软件里面,通常,它对用户工作内容是敏感的。附加的帮助设施是在系统建成后再添加到软件中的,在多数情况下它实际上是一种查询能力有限的联机用户手册。在用户与系统交互期间,是否在任何时候都要求能获得关于系统任何功能的帮助信息?让用户怎
4、样请求帮助?(3)怎样显示帮助信息?(4)用户怎样从帮助返回到正常的交互方式中?(5)怎样组织帮助信息?在详细设计中,应该先确定具体的用户帮助设施的选择3.出错信息处理出错信息和警告信息,是出现问题时交互式系统给出的“坏消息”。详细设计中,应该确定统一的出错信息提示格式和所有可能的出错提示语句。一般说来,交互式系统给出的出错信息或警告信息,应该具有下述5个方面注意事项。信息应该用用户可以理解的术语描述问题。信息应该提供有助于从错误中恢复的建设性意见。信息应该指出错误可能导致哪些负面后果。信息应该伴随着听觉上或视觉上的提示
5、。信息不能带有指责色彩,也就是说,不能责怪用户。4.命令交互详细设计中应该确定命令交互方式,在提供命令交互方式时,必须考虑下列设计问题。是否每个菜单功能项都要有对应的快捷键?采用何种命令形式?学习和记忆命令的难度有多大?忘记了命令怎么办?用户是否可以定制或缩写命令?用户界面设计是一个迭代的过程,也就是说,通常先创建设计模型,再用原型实现这个设计模型,并由用户试用和评估,然后根据用户意见进行修改。二、用户界面设计过程用户界面设计主要依靠设计者的经验。1.一般交互指南一般交互指南涉及信息显示、数据输入和系统整体控制,因此,这
6、类指南是全局性的,忽略它们将承担较大风险。三、人机界面设计指南(1)保持一致性。(2)提供有意义的反馈。(3)在执行有较大破坏性的动作之前要求用户确认。(4)允许取消绝大多数操作。(5)减少在两次操作之间必须记忆的信息量。(6)提高对话、移动和思考的效率。(7)允许犯错误。(8)按功能对动作分类,并据此设计屏幕布局。(9)提供对用户工作内容敏感的帮助设施。(10)用简单动词或动词短语作为命令名。2.信息显示指南如果人机界面显示的信息是不完整的、含糊的或难于理解的,则该应用系统显然不能满足用户的需求。(1)只显示与当前工作
7、内容有关的信息。(2)不要用数据淹没用户,应该用便于用户迅速吸取信息的方式来表示数据。(3)使用一致的标记、标准的缩写和可预知的颜色。(4)允许用户保持可视化的语境。(续)(5)产生有意义的出错信息。(6)使用大小写、缩进和文本分组以帮助理解。(7)使用窗口分隔不同类型的信息。(8)使用“模拟”显示方式表示信息,以使信息更容易被用户提取。(9)高效率地使用显示屏。3.数据输入指南用户的大部分时间用在选择命令、键入数据和向系统提供输入。(1)尽量减少用户的输入动作。(2)保持信息显示和数据输入之间的一致性。(3)允许用户自
8、定义输入。(4)交互应该是灵活的,并且可调整成用户最喜欢的输入方式。(续)(5)使在当前动作语境中不适用的命令不起作用。(6)让用户控制交互流。(7)对所有输入动作都提供帮助(参见6.2.1节)。(8)消除冗余的输入。良好的程序设计风格对面向对象实现来说尤其重要,不仅能明显减少维护或扩充的开销,而且有助于在新项目中重
此文档下载收益归作者所有