软件工程教案--第六章详细设计XXXX.pptx
《软件工程教案--第六章详细设计XXXX.pptx》由会员分享,可在线阅读,更多相关《软件工程教案--第六章详细设计XXXX.pptx(169页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1软件工程第六章 详细设计2第六章 详细设计6.1 详细设计概述6.2 结构程序设计6.3 人机界面设计(重点)设计问题设计过程与设计任务人机界面设计基本类型用户界面、输入和输出设计(见补充资料)用户界面的设计的原则输入界面设计显示界面设计6.4 过程设计工具6.5 面向数据结构的设计方法(自学)6.6 程序复杂程度的定量度量36.1 详细设计概述l 详细设计应在数据库设计、总体设计完成之后进行,详细设计还不是具体地编写程序,是要设计出程序的“蓝图”,以后程序员将根据这个蓝图写出实际的程序代码,详细设计主要是界面设计和过程设计两个阶段。l 界面设计的结果是软件的脸面(外在质量),过程设计的结果
2、基本上决定了最终的程序代码的质量(软件的内在质量)l 过程设计中:考虑程序代码的质量时必须注意,程序的“读者”有两个,那就是计算机和人:在软件的生命周期中,设计测试方案,诊断程序错误,修改和改进程序等都必须首先读懂程序。实际上对于长期使用的软件系统而言,人读程序的时间可能比写程序的时间还要长得多。因此,衡量程序的质量不仅要看它的逻辑是否正确,性能是否满足要求,更主要的是要看它是否容易阅读和理解。l 过程设计的目标不仅仅是逻辑上正确地实现每个模块的功能,更重要的是设计出的处理过程应该尽可能简明易懂。46.2 结构程序设计l结构程序设计技术是实现详细设计目标的关健技术,因此是过程设计的逻辑基础。l
3、狭义的结构程序设计定义为如果一个程序的代码块仅仅通过顺序、选择和循环这三种控制结构进行连接,并且每个代码块只有一个入口和一个出口,则称这个程序是结构化的。56.2 结构程序设计l广义的结构程序设计定义如下:在编写程序时,强调使用几种基本控制结构,通过组合嵌套,形成程序的控制结构。尽可能避免使用GOTO语句。在程序设计过程中,尽量采用自顶向下和逐步细化的原则,由粗到细,一步步展开。最好仅在检测出错误时才使用GO TO语句,而且应该总是使用前向GO TO语句。l结构化程序设计的主要原则使用语言中的顺序、选择、重复等有限的基本控制结构表示程序逻辑。选用的控制结构只准许有一个入口和一个出口。程序语句组
4、成容易识别的块,每块只有一个入口和一个出口。6复杂结构应该用基本控制结构进行组合嵌套来实现。语言中没有的控制结构,可用一段等价的程序段模拟,但要求该程序段在整个系统中应前后一致。严格控制GOTO语句,仅在下列情形才可使用:用一个非结构化的程序设计语言去实现一个结构化的构造。若不使用GOTO语句就会使程序功能模糊。在某种可以改善而不是损害程序可读性的情况下。6.2 结构程序设计7也可以把结构程序设计技术具体地划分为下述3种类型:l 如果只允许使用顺序、IF_THEN_ELSE型分支和DO_WHILE型循环这3种基本控制结构,则称为经典的结构程序设计l 如果除了上述3种基本控制结构之外,还允许使用
5、DO_CASE型多分支结构和DO_UNTIL型循环结构,则称为扩展的结构程序设计l 如果再加上允许使用LEAVE(或BREAK)结构,则称为修正的结构程序设计6.2 结构程序设计86.2 结构程序设计96.3人机界面设计设计问题l l人机界面也称为用户界面,人机界面也称为用户界面,对于交互式系统来说,人机界面设计和数据设计、体系结构设计、过程设计一样重要。l人机界面的设计质量,直接影响用户对软件产品的评价,从而影响软件产品的竞争力和使用权用寿命,因此,必须对人机界面设计给予足够重视。由于对人机界面的评价,在很大程度上由人的主观因素决定,因此,使用基于原型的系统化的设计策略,是成功地设计人机界面
6、的关键。l l人机界面设计中应考虑:人机界面设计中应考虑:l l可使用性可使用性 简单性简单性 术语标准化术语标准化和和一致性一致性 HELPHELP功能:功能:集成帮助(设计中设计的)和附加帮助(事后设计的,用户手册)系统响应快系统响应快和低的和低的系统成本:系统成本:长度(尽量稳定)和易变性 用户界面应具有用户界面应具有容错能力,出错信息的处理容错能力,出错信息的处理106.3人机界面设计设计问题交互式系统给出的出错信息或警告信息,应该具有下述属性:信息应该以用户可以理解的术语描述问题信息应该提供有助于从错误中恢复的建设性意见信息应该指出错误可能导致哪些负面后果(例如,破坏数据文件),以便
7、用户检查是否出现了这些问题,并在确实出现问题时予以改正信息应该伴随着听觉上或视觉上的提示,也就是说,在显示信息时应该同时发出警告声,或者信息用闪烁方式显示,或者信息用明显表示出错的颜色显示。信息不能带有指责色彩,也就是说,不能责怪用户。当确实出现了问题的时候,有效的出错信息能够提高交互式系统的质量,减少用户的挫折感。11l l灵活性灵活性 算法的可隐可显性算法的可隐可显性 用户可以根据需要制定和修改界面方式用户可以根据需要制定和修改界面方式 能够按照用户的希望和需要,提供不同详细程度的系能够按照用户的希望和需要,提供不同详细程度的系统响应信息统响应信息 与其它软件系统应有标准的界面与其它软件系
8、统应有标准的界面 复杂性和可靠性复杂性和可靠性 界面的规模和组织的复杂程度就是界面的复杂性界面的规模和组织的复杂程度就是界面的复杂性 界面越简单越好。成线性序列界面不一定简单界面越简单越好。成线性序列界面不一定简单 用户界面的可靠性是指无故障使用的间隔时间。用户界面的可靠性是指无故障使用的间隔时间。保证用户正确、可靠地使用系统,数据的安全性保证用户正确、可靠地使用系统,数据的安全性 代价:降低软件系统的运行效率代价:降低软件系统的运行效率6.3人机界面设计设计问题12l l命令交互命令交互命令行曾经是用户和系统软件交互的最常用方式,而且也曾经广泛地用于各种应用软件中:现在,面向窗口的,点击和拾
9、取方式的界面已经减少了用户对命令行的依赖但是,许多高级用户仍然偏爱面向命令的交互方式在多数情况下,用户既可以从菜单中选择软件功能也可以通过键盘命令序列调用软件功能l最好在设计人机界面的初期就把这些问题作为得要的设计问题来考虑,这时修改比较容易,代价也低。6.3人机界面设计设计问题13l用户界面设计是一个迭代的过程,也就是说:通常先创建设计模型再用原型实现这个设计模型并由用户试用和评估然后根据用户的意见进行修改直至满意为止l l用户界面设计应与软件系统的需求分析用户界面设计应与软件系统的需求分析同步进行同步进行。有如下。有如下任务:任务:用户特性分析用户特性分析 用户工作分析用户工作分析 记录有
10、关系统的概念和术语记录有关系统的概念和术语 确定界面类型确定界面类型6.3人机界面设计设计过程与设计任务141511、用户特性分析、用户特性分析 用户类型:用户类型:外行型、外行型、初学型、初学型、熟练型、熟练型、专家型专家型用户类型并不是一成不变。选择适合用户类型并不是一成不变。选择适合大多数用户使用大多数用户使用 用户特性度量:用户特性度量:用户特性的度量与用户使用模式及观测到用户特性的度量与用户使用模式及观测到的用户群体能力有关。的用户群体能力有关。用户使用的频度用户使用的频度 用户是否能够自由选用界面用户是否能够自由选用界面 用户对计算机的熟悉程度用户对计算机的熟悉程度 用户知识用户知
11、识 用户思维能力用户思维能力 用户的生理能力和技能:用户的生理能力和技能:人的视觉、听觉、记忆人的视觉、听觉、记忆 用户群体的度量可以用用户群体的度量可以用打分打分的办法来简单地度量。的办法来简单地度量。平均值平均值反映了用户群体的平均特性。反映了用户群体的平均特性。标准偏差标准偏差反映了用户群体的差异大小反映了用户群体的差异大小6.3人机界面设计设计过程16用户特性表 用户特性表6.3人机界面设计设计过程1722、用户工作分析(、用户工作分析(任务分析任务分析)与需求分析中结构化分析的方法类似,采用与需求分析中结构化分析的方法类似,采用自顶向下自顶向下,逐步进行逐步进行功能分解功能分解。所有
12、的系统任务,包括与人相关的活动,都要考虑所有的系统任务,包括与人相关的活动,都要考虑 根据以上分析得到的度量表明,应当根据以上分析得到的度量表明,应当选择一种不太复选择一种不太复杂的对话界面杂的对话界面。33、记录有关系统的概念和术语、记录有关系统的概念和术语44、选择界面类型、选择界面类型6.3人机界面设计设计过程18192011、界面设计类型考虑、界面设计类型考虑 使用的难易程度使用的难易程度:初次使用:初次使用 学习的难易程度学习的难易程度 操作速度操作速度:操作步骤、击键和反应时间等效率:操作步骤、击键和反应时间等效率 复杂程度复杂程度 控制控制:人机交互时,是由计算机还是由人发起和:
13、人机交互时,是由计算机还是由人发起和控制对话。控制对话。开发的难易程度及开发的难易程度及开发工作量。开发工作量。6.3人机界面设计界面设计类型212222、菜单、菜单(menu)(menu)界面的设计界面的设计 按照显示的形象或样式来分类按照显示的形象或样式来分类 正文菜单:正文菜单:首字符匹配方式、首字符匹配方式、序号匹配方式、序号匹配方式、亮亮条匹配方式条匹配方式 图标菜单图标菜单(图标菜单)(图标菜单)正文和图标混合的菜单正文和图标混合的菜单 按屏幕位置和操作风格来分类按屏幕位置和操作风格来分类 固定位置菜单:固定位置菜单:浮动位置菜单(浮动位置菜单(弹出式菜单弹出式菜单)下拉式菜单:下
14、拉式菜单:嵌入式菜单:嵌入式菜单:混在应用之中(右键)混在应用之中(右键)6.3人机界面设计界面设计类型23序号匹配方式242522、图像:、图像:图像的隐蔽和再图像的隐蔽和再现现 图案的显示图案的显示(动(动画)画)屏幕的滚动屏幕的滚动33、对话、对话 对话对话(对话框对话框)必须回答式必须回答式 无需回答式无需回答式 警告式警告式44、窗口、窗口6.3人机界面设计界面设计类型2627286.3.1 6.3.1 数据输入界面设计数据输入界面设计一般交互指南:涉及信息显示、数据输入和系统的整体控制,是全局性的,忽略它们将冒较大风险。主要有:保持一致性提供有意义的反馈在执行有较大破坏性的动作之前
15、要求用户确认允许取消绝大多数操作减少在两次操作之间必须记忆的信息量提高对话、鼠标移动和思考的效率允许用户犯错误按功能对动作分类,并据此设计屏幕布局提供对工作内容敏感的帮助设施用简单动作或动词短语作为命令6.3人机界面设计界面设计指南296.3.1 6.3.1 数据输入界面设计数据输入界面设计11、数据输入的规则、数据输入的规则 尽量简化用户工作、尽可能地减少输入的出错率。尽量简化用户工作、尽可能地减少输入的出错率。对共同的输入内容设置默认值(缺省值)。对共同的输入内容设置默认值(缺省值)。使用代码和缩写。使用代码和缩写。动填入已输入过的内容或需要重复输入的内容。动填入已输入过的内容或需要重复输
16、入的内容。如果输入内容是来自一个有限的备选集,可以采用列如果输入内容是来自一个有限的备选集,可以采用列表选择或指点方式。表选择或指点方式。数据输入屏幕应设计成输入格式相匹配数据输入屏幕应设计成输入格式相匹配(手工界面)(手工界面)根据使用频率、重要性、输入次序进行组织根据使用频率、重要性、输入次序进行组织 明确的输入:明确的输入:设计确认键避免误操作设计确认键避免误操作 明确的动作:明确的动作:表格项用表格项用TABTAB或回车键控制表格项间移或回车键控制表格项间移动。动。6.3人机界面设计界面设计指南30 明确的取消:明确的取消:确认删除:确认删除:提供反馈:提供反馈:允许编辑:允许编辑:提
17、供复原提供复原(Undo)(Undo):自动格式化:自动格式化:提示输入的范围提示输入的范围22、输入表格设计、输入表格设计 数据验证:数据验证:致命错误:致命错误:警告:警告:建议:建议:屏幕设计屏幕设计:屏幕划分为数据输入、命令与出错处理三个区域。屏幕划分为数据输入、命令与出错处理三个区域。应用不同的底色来区别各个区域。应用不同的底色来区别各个区域。数据输入区内各个输入项应左侧对齐。在空间允许时,数据输入区内各个输入项应左侧对齐。在空间允许时,最好一行仅对应一个输入最好一行仅对应一个输入。错误报信:错误报信:错误出在何处,是什么错误,为什么错了,以及错误出在何处,是什么错误,为什么错了,以
18、及要修改错误应当采取措施要修改错误应当采取措施、不应使用专业术语、不应使用专业术语 数据输入对话控制数据输入对话控制6.3人机界面设计界面设计指南31326.3人机界面设计界面设计指南3333、其它数据输入的方法、其它数据输入的方法 菜单选择输入菜单选择输入 关键词数据输入(关键词数据输入(助记符、摘要词组)助记符、摘要词组)光学标记识别光学标记识别(OMR)(OMR)光学字符识别光学字符识别(OCR)(OCR):模式比较(扫描仪)模式比较(扫描仪)磁性墨水字符识别磁性墨水字符识别(MICR)(MICR):银行支票银行支票 条形码条形码(Bar Code)(Bar Code)声音数据输入声音数
19、据输入6.3人机界面设计界面设计指南346.3人机界面设计界面设计指南356.3.2 6.3.2 输出设计(信息显示界面设计)输出设计(信息显示界面设计)11、信息显示的规则、信息显示的规则系统输出的形式是多种多样的,例如:作为其它系统的输入打印的报表屏幕显示数据文件(Word文件、Excel文件等)6.3人机界面设计界面设计指南36输出方式:报表打印6.3人机界面设计界面设计指南37输出方式:屏幕输出6.3人机界面设计界面设计指南38输出方式:数据文件输出6.3人机界面设计界面设计指南3922、输出信息的规则、输出信息的规则 只输出(显示)必需的只输出(显示)必需的当前工作内容有关(用户执行
20、当前工作内容有关(用户执行任务)的任务)的信息信息 在一起使用的信息应输出(显示)在一起。在一起使用的信息应输出(显示)在一起。高效率地使用显示屏,每一屏信息的数量,包括标题,高效率地使用显示屏,每一屏信息的数量,包括标题,栏题等等,不应超过整个屏幕面积的栏题等等,不应超过整个屏幕面积的3030。用便于用户迅速地吸取信息的方式来显示数据。用便于用户迅速地吸取信息的方式来显示数据。使用一致的标记、标准的缩写和可预知的颜色。使用一致的标记、标准的缩写和可预知的颜色。允许用户保持可视化的语境。允许用户保持可视化的语境。产生有意义的出错信息。产生有意义的出错信息。使用大小写、缩进和文本分组来帮助理解。
21、使用大小写、缩进和文本分组来帮助理解。使用窗口分隔不同类型的信息。使用窗口分隔不同类型的信息。使用使用“模拟模拟”方式显示信息。方式显示信息。6.3人机界面设计界面设计指南4033、屏幕布局:使每屏划分若干个子区域、屏幕布局:使每屏划分若干个子区域l l少用代码和缩写少用代码和缩写 使用统一的格式。使用统一的格式。l l 提供明了的标题、栏题以及其它提示信息。提供明了的标题、栏题以及其它提示信息。l l 遵循用户的习惯。使用用户的术语。遵循用户的习惯。使用用户的术语。l l 采用颜色、大小、下划线、字体等强化重要数据采用颜色、大小、下划线、字体等强化重要数据44、字符数据的显示、字符数据的显示
22、 纯正文的显示:纯正文的显示:英文避免连续用大写字母、文字左对齐、数英文避免连续用大写字母、文字左对齐、数字右对齐字右对齐 列表和表格:列表和表格:横排,有助计算总和横排,有助计算总和 显示不一定和输出格式一致显示不一定和输出格式一致 控制显示(滚动速度)控制显示(滚动速度)55、图形显示、图形显示6.3人机界面设计界面设计指南41输出格式:表格信息426.3人机界面设计界面设计指南4344454666、报告(报表)、报告(报表)报告分类:报告分类:文宗报告文宗报告:订货单、发货单、发票、帐单等。订货单、发货单、发票、帐单等。信息报告:信息报告:异常报告、监控和分析报告、管理总结报异常报告、监
23、控和分析报告、管理总结报告等。告等。6.3人机界面设计界面设计指南47表头信息表尾信息表体信息48 历史和档案报告:历史和档案报告:浏览报告浏览报告 按种类分:列表报告、按种类分:列表报告、块结构报告、组结构报告块结构报告、组结构报告 具体布局具体布局 确定所需的打印字符数目确定所需的打印字符数目 字符左侧对齐,数字右侧对齐,有小数点则对齐小数点。字符左侧对齐,数字右侧对齐,有小数点则对齐小数点。负号放在前面会使数列变得不规整,可把负号放在后面。负号放在前面会使数列变得不规整,可把负号放在后面。各列之间的间隔至少用三个空格。各列之间的间隔至少用三个空格。标题应安排在列的正中。标题应安排在列的正
24、中。可用粗体字、不同的字体、下划线或不同的色彩等来强可用粗体字、不同的字体、下划线或不同的色彩等来强调重要的部分。调重要的部分。给每页加页码和名称。给每页加页码和名称。每次要给报告加上日期和时间。每次要给报告加上日期和时间。6.3人机界面设计界面设计指南496.3.3 6.3.3 控制界面的设计控制界面的设计(一般交互指南一般交互指南)一般交互指南:涉及信息显示、数据输入和系统的整体控制,是全局性的,忽略它们将冒较大风险。主要有:保持一致性提供有意义的反馈在执行有较大破坏性的动作之前要求用户确认允许取消绝大多数操作减少在两次操作之间必须记忆的信息量提高对话、鼠标移动和思考的效率允许用户犯错误按
25、功能对动作分类,并据此设计屏幕布局提供对工作内容敏感的帮助设施用简单动作或动词短语作为命令6.3人机界面设计界面设计指南50l l主要交互方式设计方法:主要交互方式设计方法:控制对话、菜单、功能键、图标、控制对话、菜单、功能键、图标、直接指点、窗口、命令语言和自然语言等。直接指点、窗口、命令语言和自然语言等。11、控制对话选择操作命令、控制对话选择操作命令 简单问答形式:简单问答形式:YYNN 复杂对话形式:菜单系统复杂对话形式:菜单系统 每次只能有一个提问,避免多个询问每次只能有一个提问,避免多个询问;需要几个关联的回答时,应重新显示上一个回答。需要几个关联的回答时,应重新显示上一个回答。保
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 教案 第六 详细 设计 XXXX
限制150内