第1页:详细设计(一)封面
详细设计(一)封面
本页正文以课件图示为主,源文件仅提取到上述文字说明,具体图形内容请对照原课件图片。
第2页:导入详细设计的根本目标
导入详细设计的根本目标
是:确定应该怎样具体地实现所要求的系统。经过这个阶段的设计工作,应该得出对目标系统的精确描述,从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序。
第3页:导入详细设计的基本任务
导入详细设计的基本任务
⇨为每个模块进行详细的算法设计⇨为模块内的数据结构进行设计⇨对数据库进行物理设计⇨其他设计,如:代码设计、输入/输出格式设计、人机对话设计⇨编写详细设计说明书⇨评审
第4页:5.1结构程序设计内容提纲
本节内容提纲
- 结构程序设计
- 人机界面
- 设计过程
- 设计的工具程序复杂度衡量面向数据结构的设计方法
第5页:结构程序设计:《愚公移山》
结构程序设计
- 《愚公移山》成就了一位工程名家:愚公,其浓缩了项目组织者、团队经理、编程人员、技术分析师等众多角色的优秀素质
- 太行、王屋二山,方七百里,高万仞
- 本在冀州之南,河阳之北
- 北山愚公者,年且九十,面山而居
- 惩山北之塞,出入之迂也,聚室而谋曰:“吾与汝毕力平险,指通豫南,达于汉阴,可乎
- ”杂然相许
- 其妻献疑曰:“以君之力,曾不能损魁父之丘,如太行王屋何
- 且焉置土石
- ”杂曰:“投诸渤海之尾,隐土之北
- ”遂率子孙荷担者三夫,扣石垦壤,箕畚运于渤海之尾
- 邻人京城氏之孀妻,有遗男,始龀,跳往助之
- 寒暑易节,始一反焉
- 河曲智叟笑而止之,曰:“甚矣,汝之不惠
- 以残年馀力,曾不能毁山之一毛,其如土石何
- ”北山愚公长息曰:“汝心之固,固不可彻,曾不若孀妻弱子
- 虽我之死,有子存焉
- 子又生孙,孙又生子
- 子又有子,子又有孙
- 子子孙孙,无穷匮也
- 而山不加增,何苦而不平
- ”河曲智叟亡以应
- 操蛇之神闻之,惧其不已也,告之于帝
- 帝感其诚,命夸娥氏二子负二山,一厝朔东,一厝朔南
- 自此,冀之南,汉之阴,无陇断焉
- 原始需求项目沟通方式项目目标技术方案团队组织外协工程概况分支if循环循环可行性编程素质
第6页:结构程序设计:编程
结构程序设计
- 编程实际上就是把一件事情交给计算机去做,你认为如何去做就用“程序语言”的形式描述给计算机
- 如果你原本就不明白如何去做,也不要期望计算机能够理解你想要做什么
- 编程要务:把事情分析清楚,把事件的逻辑关系和依赖关系搞清楚,然后再去写代码实现
第7页:结构程序设计:结构化程序
结构程序设计
结构化程序,最早由E.W.Dijkstra在60年代中期提出。经典定义:如果一个程序的代码块仅仅通过顺序、选择和循环这3种基本控制结构进行连接,而且每个代码块只有一个入口和一个出口,则称这个程序是结构化的。比较全面的定义:结构程序设计是尽可能少用GOTO语句的程序设计方法,最好仅仅在检测出错误时才使用GOTO语句,而且应该总是使用前向的GOTO语句。
第8页:结构程序设计:主要原则
结构程序设计
- 主要原则:使用语言中的顺序、选择、重复等有限的基本控制结构表示程序逻辑
- 选用的控制结构只准许有一个入口和一个出口
- 复杂结构应该用基本控制结构进行组合嵌套来实现
- 严格控制GOTO语句,仅在下列情形才可使用:用一个非结构化的程序设计语言去实现一个结构化的构造
- 在某种可以改善而不是损害程序可读性的情况下
第9页:结构程序设计
结构程序设计
本页正文以课件图示为主,源文件仅提取到上述文字说明,具体图形内容请对照原课件图片。
第10页:结构程序设计:三种结构
结构程序设计
- 三种结构程序设计
- 经典的结构程序设计仅用顺序、IF-THEN-ELSE分支、DO-WHILE循环
- 扩展的结构程序设计增加DO-CASE分支、DO-UNTIL循环
- 修正的结构程序设计再增加BREAK/LEAVE
第11页:本章内容提纲
本节内容提纲
- 结构程序设计
- 人机界面
- 设计过程
- 设计的工具程序复杂度衡量面向数据结构的设计方法
第12页:人机界面设计人的因素
人机界面设计人的因素
本页正文以课件图示为主,源文件仅提取到上述文字说明,具体图形内容请对照原课件图片。
第13页:人的因素主要
人的因素主要包括
人对感知过程的认识用户的技能和行为方式用户所要求完成的整个任务以及用户对人机界面部分的特殊要求5.2.1人的因素
第14页:人对感知过程的认识
人对感知过程的认识
- 人通过感觉器官认识客观世界,因此设计用户界面时要充分考虑人的视觉、触觉、听觉的作用
- 人机界面是在可视介质上实现的,如正文、图形、图表等
- 人们根据显示内容的体积、形状、颜色等种种表征来解释所获取的可视信息
- 因此,字体、大小、位置、颜色、形状等都会直接影响信息提取的难易程度
- 很好地表示可视信息是设计友好界面的关键
第15页:人机界面设计人的因素:人机界面
(2)用户的技能和行为方式用户本身的技能、个性上的差异、行为方式的不同,都可能对人机界面造成影响。不同类型的人对同一界面的评价也不同。终端用户的技能直接影响他们从人机界面上获取信息的能力,影响交互过程中对系统作出反应的能力,以及使用启发式策略与系统和谐地交互的能力应根据用户的特点设计人机界面。
第16页:用户分类:外行型
用户分类
- 外行型
- 不熟悉计算机操作,对系统很少或毫无认识
- 初学型
- 对计算机有一些经验,对新系统不熟悉,需要相当多的支持
- 熟练型
- 对系统有丰富的使用经验,能熟练操作,但不了解系统的内部结构,不能纠正意外错误,不能扩充系统的能力
- 专家型
- 了解系统内部的结构,有系统工作机制的专门知识,具有维护和修改系统的能力,希望为他们提供具备修改和扩充系统能力的复杂界面(2)用户的技能和行为方式
第17页:人机界面设计人的因素:Windows
例:Windows控制面板的向导功能适合不太熟练的用户
第18页:人体测量学:对设计的影响
人体测量学
对设计的影响人具有多样性,人机界面设计必须符合使用该系统的用户的特点。人的多样性包括:身体能力的多样性,工作环境的多样性,认知能力的多样性,个性的多样性和文化的多样性。
第19页:人体测量学:对设计的影响(续)
人体测量学
- 对设计的影响不同的用户在使用软件系统时所处的环境也不同,而工作环境对于用户的使用也有很大的影响
- 不适合的环境会增加系统的出错概率,降低用户的工作效率
- 不同用户的认知能力差异很大
- 对人机界面设计者来说,对用户的认知能力的理解非常重要
- 设计人机界面必须考虑到不同用户的认知能力,控制系统的复杂度和学习开销
第20页:人体测量学:对设计的影响
人体测量学
- 对设计的影响个性差异体现在很多方面
- 例如男性和女性个性差异就是一种基本的个性差异
- 在开发游戏软件方面,需要考虑到用户的个性特点
- 这方面并没有统一的标准和测量方法,但越来越多的实践表明,对于不同个性的用户调查其使用习惯进行设计是必要的
- 文化差异体现在民族、语言等用户文化背景的差异,不同地区的设计者对于其他地区的文化缺少了解
- 为了解决文化差异,需要将软件系统国际化和本地化,人机界面也必须支持国际化和本地化设计
第21页:主要的可测:人性因素
主要的可测
的人性因素1.用户时间:在系统面向的使用者集合中,选择一些具有代表性的典型用户,统计其使用系统完成一系列特定任务所需要使用的时间。2.基准时间:统计系统正确完成基准任务需要的时间。3.基准出错率:在系统面向的使用者集合中,选择一些具有代表性的典型用户,统计其在完成基准任务时所犯的错误情况。
4.任务出错率:在系统面向的使用者集合中,选择一些具有代表性的典型用户,统计其使用系统完成一系列特定任务时所犯的错误情况。
第22页:主要的可测:人性因素(续)
主要的可测
- 的人性因素5.学习能力
- 在系统面向的使用者集合中,选择一些具有代表性的典型用户,统计其学习使用系统的时间
- 6.记忆能力
- 在系统面向的使用者集合中,选择一些具有代表性的典型用户,统计其在使用系统后的记忆保持时间
- 7.主观看法
- 在系统面向的使用者集合中,选择一些具有代表性的典型用户,统计其使用系统后的主观满意情况
第23页:人机界面设计人的因素
人机界面设计人的因素
本页正文以课件图示为主,源文件仅提取到上述文字说明,具体图形内容请对照原课件图片。
第24页:人机界面风格第
人机界面风格第
一代:命令和询问方式的界面正文形式的通信,通过用户命令和用户对系统询问的响应来完成。用户容易出错,界面不友善,难以学习。
第25页:人机界面风格第(续)
人机界面风格第
二代:简单的菜单式界面与第一代界面相比不易出错,但使用起来乏味,逐层进行不能一步到位。
第26页:第三代:窗口、图标
第三代:窗口、图标
- 菜单、指示器四位一体的界面
- 能同时显示不同种类的信息,可在多个工作环境(窗口)中切换,窗口使用户能自如地执行许多通信型和认知型任务
- 通过下拉式菜单可方便地执行控制型和对话型任务
- 引入图标、下拉式菜单、按钮和滚动杆技术,可大大减少键盘输入,提高交互效率5.2.2人机界面风格
第27页:人机界面设计人的因素
人机界面设计人的因素
本页正文以课件图示为主,源文件仅提取到上述文字说明,具体图形内容请对照原课件图片。
第28页:设计过程:人机界面的
设计过程
人机界面的设计过程是迭代的,包括四个不同的框架活动用户、任务和环境分析及建模界面设计界面构造界面确认用户、任务和环境分析界面设计实现界面确认
第29页:人机界面设计人的因素:人员、记录
- 设计人员首先分析将与系统交互的用户的特点
- 记录下技能级别、业务理解以及对新系统的一般感悟,并定义不同的用户类别
- 对每一个用户类别,进行需求诱导
- 软件工程师试图去理解每类用户的系统感觉
- 一旦定义好一般需求,将进行更详细的任务分析
- 标识、描述和精化那些用户为了达到系统目标而执行的任务
- 5.2.3设计过程
第30页:设计过程:用户环境分析
设计过程
- 用户环境分析关注系统物理工作环境
- 通常问这样一些问题:界面将物理地位于何处
- 用户是否坐着、站着或完成其他和该界面无关的任务
- 界面硬件是否适应空间、光线或噪音的约束
- 是否需要考虑特殊的由环境因素驱动的人的因素
第31页:设计过程:界面设计的
设计过程
- 界面设计的目标是定义一组界面对象和动作(以及它们的屏幕表示)
- 设计完成后,软件工程师根据设计方案,使用实现工具完成界面的构造
- 界面确认关注:界面正确地实现每个用户任务的程度、适应所有任务变更的能力以及达到所有一般用户需求的能力
- 界面容易使用和学习的程度
- 用户接受界面作为它们工作中有用工具的程度