第5章 软件详细设计 本章内容结构 本章引言 学习目标 教学内容 本章小结 思考和练习 课堂讨论 2019年4月26日.

Slides:



Advertisements
Similar presentations
办公室保健指南. 减少辐射篇 ❤显示器散发出的辐射多数不是来自它的正面,而是侧面和后面。因此,不要 把自己显示器的后面对着同事的后脑或者身体的侧面。 ❤常喝绿茶。茶叶中含有的茶多酚等活性物质,有助吸收放射性物质。 ❤尽量使用液晶显示器。
Advertisements

足太阴脾经在足大趾与足阳明胃经衔接, 在胸部与手少阴心经相接。 联系的脏腑器官有 咽、舌,属脾,络胃,注心中。 络脉从本经分出,走向足阳明经,进入腹腔,联络肠胃。 经别结于咽,贯舌本。 经筋结于髀,聚于阴器,上腹,结于脐,散于胸中。 第四章 足太阴经络与腧穴 第一节 足太阴经络.
1 债券融资业务拓展交流 债券业务部 二 O 一二年二月. 2 目 录  第一部分 债券融资业务概述  第二部分 东兴证券债券融资业务情况介绍及前景展望  第三部分 什么样的企业适合发债  第四部分 债券融资业务合作开发方式及激励探讨.
實踐國中綜合活動. 我們的團隊 輔導 — 邱敏芳主任、洪穎馨組長、朱孝安組 長、徐維莉師、蔡嘉容師、蔡燕娟師 童軍 --- 蘇月琴團長、蔡盟玉師 家政 --- 阮雅倩師、李怡慧師、蔡佩瑩師.
用藥常識知多少? 五乙李麗娜 心寶的故事 心寶哪裡錯了? 說一說藥袋上有什麼資訊? 姓名 怎麼用(一天使用幾次? ) 藥的用途對症嗎? 藥品和外觀 副作用 注意事項 保存期限與方法 成藥有沒有衛生署許可證字號.
轴对称(一) 课堂引入 仔细观察下列图片,思考这些图片有什么样 的特点.
魏 饴. 处级干部培训班讲座 一、卓越干部的德行素质  常修为政之德、常思贪欲之害、常怀律己之心!  孔老夫子有个观点 “ 为政以德,譬如北辰居其所而众星拱之。 ”  司马光《资治通鉴》 “ 才者,德之资也;德者,才之帅也。 ” “ 德 ” 胜 “ 才 ” 谓之 “ 君子 ” , “ 才 ”
一、真愛密碼 二、尋求真愛 三、有自尊的愛. 。如果雙方對愛情產生 質疑、困惑時,則表示 彼此之間的愛情關係仍 有 待加強或釐清,千萬別 急著為自己的人生大事 下決定。 我是一個 16 歲的未婚媽媽,發現自 己懷孕時,已經五個月大了,我知 道自己沒能力照顧孩子,在驚訝之 於,大人們只好坦然接受,幫我找.
大地遊戲王 課程實錄.
创意鄱阳湖— 一种基于无形资源理念开发鄱阳湖的思考 以传奇背景音乐作为开场,体现创意创造传奇 南昌大学 黄细嘉
防盜裝置  學生科技探究.
广州宜家选址分析 0连锁 李若谷 陈玉风 黄小飞 蓝柔盈.
103年度學生健康檢查.
从永磁体谈起.
加強水銀體溫計稽查管制及回收 回收作業須知及緊急應變措施
川信-丰盛系列集合资金信托计划 2016年3月.
♥走馬瀨露營心得分享 二年七班 19號 鄭宜欣.
客家围龙屋 想知道梅州有哪些好吃好玩的吗?那接下来就让我带你去看吧!!GO。。。 梅州游乐篇.
我征服了黃山 林達的黃山之旅 2006春.
第4章 分錄及日記簿 4-1 借貸法則 4-2 日記簿的格式及記錄方法 4-3 分錄的意義及記錄方法 4-4 常見分錄題型分析
新竹二日遊 準備出發囉!!GO.
山东建筑大学 国家级虚拟仿真实验教学中心 (建筑工程及装备) 申报及建设情况汇报
是重要的感觉器官,有许多感觉器,具触觉、嗅觉功能,还能感受异性的性信息素。 触角由柄节、梗节和鞭节三部分组成。
电磁铁.
专题三 生物圈中的绿色植物.
不会宽容人的人, 是不配受到别人的宽容的。 贝尔奈.
复习回顾 a a×a a×a×a a a×a×a= a×a= 1.如图,边长为a厘米的正方形的面积 为 平方厘米。
第十三屆 Step.1 我們的目標 Step.2 我們的角色 Step.4 權利與義務 義務 權利 年繳會費五百元整
复习 什么是结构? 结构是指事物的各个组成部分之间的有序搭配和排列。
财务管理.
第一章信託法 第一節 信託契約 第二節 信託財產 第三節 受益人 第四節 受託人 第五節 信託關係之消滅.
D、結構化技術 主要的結構化技術 結構化程式設計 (Structured Programming)
植物保护 课程整体设计 汇报 申报省级精品资源共享课建设 植物保护课程组.
我的社區_觀塘 第三課.
政府扶持资金通览 技术改造篇.
软件工程 咸阳师范学院 信息工程学院.
第四章 时间序列的分析 本章教学目的:①了解从数量方面研究社会经济现象发展变化过程和发展趋势是统计分析的一种重要方法;②掌握时间数列编制的基本要求;③理解和掌握水平速度两方面指标的计算及运用④理解和掌握长期趋势分析和预测的方法。 本章教学重点:现象发展的水平指标和速度指标。 本章教学难点:现象变动的趋势分析。
飛天小女警遊縣警局.
主題樂園的開發評估與規劃.
復興國中95學年度生涯檔案製作簡介.
九地篇大綱 勝敵之地、主客之道 九地篇 原文 白話 概說 勝敵之地 主客之道 應用.
马克思主义基本原理概论 第三章 人类社会及其发展规律.
本科生医保资料的提交.
統計圖表的製作.
第4章 程序控制结构与算法基础.
自然科教學觀摩 教 學 者:黃藍萩 教學班級:3年9班 教學日期:
電腦解題─流程圖簡介 臺北市立大同高中 蔡志敏老師.
第五章 详细设计.
第12章 shell编程基础 本章主要介绍shell编程的基础知识。shell脚本的执行类似于Linux下的任何其他命令,脚本可以包含复杂的逻辑,也可以包含一系列Linux命令行指令。在一个shell程序内可以运行其他shell脚本。通过本章的学习,读者可以学到如何使用bash(最流行的Linux.
江西财经大学信息管理学院 《数据库应用》课程组2007
複詞三胞胎(偏義複詞、同義複詞、反義複詞)
《结构力学认知实验》(授课形式)的上课时间改为: 5月5日(周二)晚上18:00~19:30和19:30~21:00,
《结构力学认知实验》(授课形式)的上课时间改为: 5月7日(周四)晚上18:30~20:00和20:00~21:30,
证书发放工作要点及流程 学院办公室.
软件工程 第四章 软件设计 软件过程设计技术与工具.
软件设计任务 从工程管理的角度来看,软件设计分两步完成。 概要设计,将软件需求转化为数据结构和软件的系统结构。
圖畫成語 Go !Go ! Go ! 遊戲說明.
畢業資格審查系統 操作步驟說明.
新制退休實務計算說明- 現職人員退休範例說明
響應立法院親民黨團擴大舉辦向全民徵文 《若我有8800億,要怎麼改造台灣!?》
學生端 操作說明.
106 學年度新生入學說明會 國立臺灣海洋大學 教務處簡介
學士學位畢業論文說明 逢 學 大 甲 土 理 管 地 2009/10/05.
高雄市97年度國民小學閱讀計畫創新教學-教案達人創新教學方案
第6章 详细设计 Detailed Design
天澤堂兒童三色GO 高小級主日學 導師:李志誠 黃少華 2011年10月8日
Visual FoxPro 应用基础与面向对象 程序设计教程
知识点4---向量的线性相关性 1. 线性相关与线性无关 线性相关性的性质 2..
2019/8/26 二元一次方程式的圖形 陳玉珮 2019/8/26.
作文教學--遊記篇 適用年級:五年級 教學者:鄭文娟老師.
Presentation transcript:

第5章 软件详细设计 本章内容结构 本章引言 学习目标 教学内容 本章小结 思考和练习 课堂讨论 2019年4月26日

本章引言 详细设计是软件设计的第二阶段,在此之前的总体设计阶段,已将系统划分为多个模块,并将它们按照一定的原则组装起来,同时确定了每个模块的功能及模块与模块之间的外部接口。这一阶段的工作,就是要对系统中的每个模块给出足够详细的过程性描述,故也称“过程设计”。 本章将讲述详细设计的目的和任务、结构化程序设计、详细设计工具以及人机界面设计方法。 2019年4月26日

本章引言 总体设计是软件结构的建立过程,它将软件系统分解成许多个模块,并决定每个模块的外部特征,即功能和界面(输入和输出)。 详细设计是对总体设计的细节进行完善,给出软件结构中每个模块的内部特征(数据结构、算法和接口)的描述。从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序。

学习目标 理解详细设计的目的和任务 熟练掌握结构化程序设计相关概念和技术 理解和掌握多种详细设计工具的用法 理解和掌握人机界面设计的问题、原则和过程 掌握详细设计说明书主要内容及撰写方法 2019年4月26日

教学内容 5.1 详细设计的目的和任务 5.2 结构化程序设计 5.3 详细设计工具 5.4 人机界面设计 5.5 详细设计说明书 5.1 详细设计的目的和任务 5.2 结构化程序设计 5.3 详细设计工具 5.4 人机界面设计 5.5 详细设计说明书 5.6 本章小结和习题 2019年4月26日

5.1 详细设计的目的和任务 详细设计的根本目的:确定应该怎样具体实现所要求的系统。经过这个阶段的设计工作,应该得出对目标系统的精确描述,具体的就是为软件结构图中每一个模块确定采用的算法和块内数据结构,用某种选定的详细设计工具更清晰地描述,从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序. 结构化程序设计是实现上述目标的关键技术,因此是详细设计的逻辑基础。 2019年4月26日

5.1 详细设计的目的和任务 详细设计的任务: 确定每个模块所采用的算法; 确定每个模块所使用的数据结构; 确定每个模块的接口细节; 5.1 详细设计的目的和任务 详细设计的任务: 确定每个模块所采用的算法; 确定每个模块所使用的数据结构; 确定每个模块的接口细节; 为每个模块设计出一组测试用例。

5.2 结构化程序设计(SP) 结构化程序设计的概念是1965年为了从高级语言中取消GO TO语句而提出的。 结构化程序设计经典定义: “如果一个程序的代码块仅仅通过顺序、选择和循环这3种基本控制结构进行连接,并且每个代码块只有一个入口和一个出口,则称这个程序是结构化的。” 更全面的定义:“结构程序设计是尽可能少用GO TO语句的程序设计方法。最好仅在检测出错误时才使用GO TO语句,而且应该总是使用前向GO TO语句。”

5.2 结构化程序设计(续) 结构化程序一般具有如下四个特征: 1.一个入口; 2.一个出口; 3.程序中无死语句; 4.程序中无死循环. 5.2 结构化程序设计(续) 结构化程序一般具有如下四个特征: 1.一个入口; 2.一个出口; 3.程序中无死语句; 4.程序中无死循环. 任何程序逻辑都可用顺序、选择和循环等三种基本结构,以及选择和循环二种扩充结构来表示。

5.3 详细设计工具 描述每个模块执行过程的工具叫详细设计工具,可以分为图形、表格和语言三类。 5.3 详细设计工具 描述每个模块执行过程的工具叫详细设计工具,可以分为图形、表格和语言三类。 图形工具:包括传统的程序流程图、盒图和问题分析图(PAD)等; 表格工具:包括判定表、判定树等。 语言工具:过程设计语言(PDL)等; 不论是哪类工具,对它们的基本要求都是能提供对设计准确,无歧义的描述,也就是应该能指明控制流程、处理功能、数据组织以及其它方面的实现细节,从而在编码阶段能把对设计的描述直接翻译成程序代码。 2019年4月26日

5.3 详细设计工具 5.3.1 程序流程图 5.3.2 盒图(N-S图) 5.3.3 问题分析图(PAD图) 5.3 详细设计工具 5.3.1 程序流程图 5.3.2 盒图(N-S图) 5.3.3 问题分析图(PAD图) 5.3.4 过程设计语言(PDL) 2019年4月26日

5.3.1 程序流程图 程序流程图又称为程序框图,它是一种最古老、应用最广泛、且最有争议的描述详细设计的工具。 5.3.1 程序流程图 程序流程图又称为程序框图,它是一种最古老、应用最广泛、且最有争议的描述详细设计的工具。 它易学、表达算法直观。缺点是不够规范,特别是使用箭头使质量受到很大影响,因此必须加以限制,使其成为规范的详细设计工具。 为了能够用程序流程图描述结构化的程序,一般地,限制只允许使用三种基本结构。 结构化程序设计的基本控制结构是: 2019年4月26日

(2)选择型 (1)顺序型 (3)先判断型循环 DO-WHILE 3种基本的控制结构

(4)后判断型循环 DO-UNTIL (5)多种情况选择型 (CASE型) 其他常用的控制结构

5.3.1 程序流程图 程序流程图的优点: 表达直观、结构清晰、易于理解、易于修改。 程序流程图的缺点: 5.3.1 程序流程图 程序流程图的优点: 表达直观、结构清晰、易于理解、易于修改。 程序流程图的缺点: (1)本质上不是逐步求精的好工具,它诱使程序员过早考虑控制流程,而不去考虑程序的整体结构; (2)用箭头代表控制流,因此程序员不受任何约束,可以完全不顾结构程序设计的精神,随意转移控制,容易造成非结构化的程序结构; (3)不易表示数据结构和层次结构。 2019年4月26日

示例

5.3.2 盒图(N-S图) N-S图是为克服流程图在描述程序逻辑时的随意性等缺点,1973年, 由Nassi和Shneiderman提出来的,体现了结构化设计的精神。是目前过程设计中广泛使用的一种图形。 N-S图仅含有5种基本成分,它们分别表示SP方法的几种标准控制结构。 下图给出了结构化控制结构的盒图表示,也给出了调用子程序的盒图表示方法。

(a)顺序; (b)IF-THEN-ELSE分支; ©CASE型多分支; (d)循环; (e)调用子程序 图 盒图的基本符号 (a)顺序; (b)IF-THEN-ELSE分支; ©CASE型多分支; (d)循环; (e)调用子程序

5.3.2 盒图(N-S图 续) 在N-S图中,每个“处理步骤”是用一个盒子表示的,所谓“处理步骤”可以是语句或语句序列。需要时,盒子中还可以嵌套另一个盒子,嵌套深度一般没有限制,只要整张图在一页纸上能容纳得下,由于只能从上边进入盒子然后从下边走出,除此之外没有其他的入口和出口,所以,NS图限制了随意的控制转移,保证了程序的良好结构。

N-S图的嵌套定义形式

5.3.2 盒图(N-S图 续) 用N-S图作为详细设计的描述手段时,常需用两个盒子:数据盒和模块盒,前者描述有关的数据,包括全程数据、局部数据和模块界面上的参数等,后者描述执行过程。

5.3.2 盒图(N-S图 续)

5.3.2 盒图(N-S图 续)

5.3.2 盒图(N-S图 续) N-S图有下述特点: (1) 功能域(即,一个特定控制结构的作用域)明确,可以从盒图上一眼就看出来。 (2) 不可能任意转移控制。 (3) 很容易确定局部和全程数据的作用域。 (4) 很容易表现嵌套关系,也可以表示模块的层次结构。

5.3.2 盒图(N-S图 续) N-S图的优点:  首先,它强制设计人员按SP方法进行思考并描述他的设计方案,这就有效地保证了设计的质量,从而也保证了程序的质量; 第二,N-S图形象直观,功能域明确,结构层次清晰。为编程、复查、选择测试用例、维护都带来了方便; 第三,N-S图简单、易学易用,可用于软件教育和其他方面。

5.3.2 盒图(N-S图 续) N-S图的缺点: 随着程序内嵌套的层数的增多时,内层方框越来越小,这样不仅会增加画图的难度,还会影响图形的清晰度。 手工修改也比较麻烦,这是有些人不用它的主要原因

5.3.3 问题分析图(PAD图) PAD是问题分析图(problem analysis diagram)的英文缩写,由日立公司中央研究所在1973年研究开发的。 它使用二维树形结构图来描述程序的逻辑,将这种图翻译成程序代码比较容易。是一种十分有前途的表达方法。 PAD支持SP方法,它仅具有顺序、选择、循环三类基本成分,其中选择和循环又有几种形式. 下图是PAD图的基本符号。 2019年4月26日

P1 P1 P2 P1 条件C P2 P2 Pn 顺序 选择 Case 型多分支选择 WHILE C P UNTIL C P 当型循环 直到型循环 def 定义 语句标号 PAD图的基本符号

(2)使用def符号细化处理框P2 (1)初始的PAD图 使用PAD图提供的定义功能来逐步求精的例子 P6 UNTIL C2 P7 P1 C

for i := n1 to n2 step n3 do 在PAD中有相应的循环控制结构 对应于增量型循环结构 for i := n1 to n2 step n3 do 在PAD中有相应的循环控制结构

PAD描述的示例

5.3.3 问题分析图(PAD图) PAD图的主要优点: 使用PAD符号设计的程序必然是结构化的程序. 既可以表示程序逻辑,也可以描绘数据结构. 支持自顶向下,逐步求精方法的使用.

5.3.3 问题分析图(PAD图) 例如:将数组A(1)到A(10)从大到小进行选择法排序的算法描述如下PAD图所示。

5.3.3 问题分析图(PAD图) 例如:将数组A(1)到A(10)从大到小进行选择法排序的算法描述如下PAD图所示。

5.3.4 过程设计语言(PDL) 过程设计语言(PDL)也称为伪码, PDL是一种用于描述功能模块的算法设计和加工细节的语言。 伪码的语法规则分为“外语法”和“内语法”。 2019年4月26日

5.3.4 过程设计语言(PDL)   PDL语法是开放式的,其外层语法是确定的,而内层语法则故意不确定。外层语法描述控制结构和数据结构,它用类似于一般编程语言控制结构的关键字(如 IF—THEN —ELSE、WHILE—DO、REPEAT—UNTIL等)表示,所以是确定的,而内层语法可使用自然语言的词汇描述具体操作。

5.3.4 过程设计语言(PDL) 例如,在PDL 描述 if X is not negative then return(square root of X as a real number); else return(square root of -X as an imaginary number); 中,外层语法 IF—THEN —ELSE是确定的, 内层操作“square root of X”是不确定的。

5.3.4 过程设计语言(PDL) PDL特点: (1) 关键字的固定语法,它提供了结构化控制结构、数据说明和模块化的特点。 (2) 自然语言的自由语法,它描述处理特点。 (3) 数据说明的手段。 (4) 模块定义和调用的技术,应该提供各种接口描述模式。

5.3.4 过程设计语言(PDL) PDL优点: (1) 可以作为注释直接插在源程序中间。这样做能促使维护人员在修改程序代码的同时也相应地修改PDL注释,因此有助于保持文档和程序的一致性,提高了文档的质量。 (2) 可以使用普通的正文编辑程序或文字处理系统,很方便地完成PDL的书写和编辑工作。 (3)同自然语言(英语)很接近,易于理解。 (4)由于是语言形式,所以易于被计算机处理。 (5)由于同程序是同结构的,从中自动产生程序亦较容易。

5.3.4 过程设计语言(PDL) PDL的缺点: 不如图形工具形象直观; 描述复杂的条件组合与动作间的对应关系时,不如判定表清晰简单。 总之,支持SP方法的各种描述手段(结构化流程图、N-S图、PAD图、PDL等)各有优缺点,总的说来,PDL是比较令人满意的,所以在英语国家中最为流行。

5.4 人机界面设计 5.4.1 人机界面设计问题 5.4.2 人机界面设计原则 5.4.3 人机界面设计过程 5.4 人机界面设计 没有“正确”或“错误”的人机界面,只有“好的”或“不好的”人机界面。 人机界面设计是否成功将直接影响着软件系统的质量。 5.4.1 人机界面设计问题 5.4.2 人机界面设计原则 5.4.3 人机界面设计过程 2019年4月26日

5.4.1 人机界面设计问题 在设计人机界面的过程中,需考虑下面4个问题: 系统响应时间 用户帮助设施 出错信息处理 命令交互 2019年4月26日

5.4.1 人机界面设计问题 1. 系统响应时间 系统响应时间指从用户完成某个控制动作(例如,按回车键或点击鼠标),到软件给出预期的响应(输出信息或做动作)之间的这段时间。 系统响应时间有两个重要属性:长度和易变性。如果系统响应时间过长,用户就会感到紧张和沮丧。但是,当用户工作速度是由人机界面决定的时候,系统响应时间过短也不好,这会迫使用户加快操作节奏,从而可能会犯错误。

5.4.1 人机界面设计问题 易变性指系统响应时间相对于平均响应时间的偏差,这是系统响应时间的比较重要的属性。响应时间易变性低有助于用户建立起稳定的工作节奏。例如,稳定在1秒的响应时间比从0.1秒到2.5秒变化的响应时间要好。 2. 用户帮助设施 几乎交互式系统的每个用户都需要帮助,大多数现代软件都提供联机帮助设施,这使得用户无须离开用户界面就能解决自己的问题。

5.4.1 人机界面设计问题 常见的帮助设施:集成的和附加的两类。 集成的帮助设施从一开始就设计在软件里面,通常,它对用户工作内容是敏感的,因此用户可以从与刚刚完成的操作有关的主题中选择一个请求帮助。显然,这可以缩短用户获得帮助的时间,增加界面的友好性。 附加的帮助设施是在系统建成后再添加到软件中的,在多数情况下它实际上是一种查询能力有限的联机用户手册。 人们普遍认为,集成的帮助设施优于附加的帮助设施。具体设计帮助设施时,必须解决下述的一系列问题。

5.4.1 人机界面设计问题 (1) 在用户与系统交互期间,是否在任何时候都能获得关于系统任何功能的帮助信息?有两种选择:提供部分功能的帮助信息和提供全部功能的帮助信息。 (2) 用户怎样请求帮助?有3种选择:帮助菜单,特殊功能键和HELP命令。 (3) 怎样显示帮助信息?有3种选择:在独立的窗口中,指出参考某个文档(不理想)和在屏幕固定位置显示简短提示。 (4) 用户怎样返回到正常的交互方式中?有两种选择:屏幕上的返回按钮和功能键。 (5) 怎样组织帮助信息?有3种选择:平面结构,信息的层次结构和超文本结构。

5.4.1 人机界面设计问题 3. 出错信息处理 出错信息和警告信息,是出现问题时交互式系统给出的“坏消息”。出错信息设计得不好,将向用户提供无用的甚至误导的信息,反而会加重用户的挫折感。 一般说来,交互式系统给出的出错信息或警告信息,应该具有下述属性。 (1) 信息应该用用户可以理解的术语描述问题。 (2) 信息应该提供有助于从错误中恢复的建设性意见。

5.4.1 人机界面设计问题 (3) 信息应该指出错误可能导致哪些负面后果(例如,破坏数据文件),以便用户检查是否出现了这些问题,并在确实出现问题时及时解决。 (4) 信息应该伴随着听觉上或视觉上的提示,例如,在显示信息时同时发出警告铃声,或者信息用闪烁方式显示,或者信息用明显表示出错的颜色显示。 (5) 信息不能带有指责色彩,也即,不能责怪用户。 当确实出现了问题的时候,有效的出错信息能提高交互式系统的质量,减轻用户的挫折感。

5.4.1 人机界面设计问题 4. 命令交互 命令行曾经是用户和系统软件交互的最常用的方式,并且也曾经广泛地用于各种应用软件中。现在,面向窗口的、点击和拾取方式的界面已经减少了用户对命令行的依赖. 但是,许多高级用户仍然偏爱面向命令行的交互方式。在多数情况下,用户既可以从菜单中选择软件功能,也可以通过键盘命令序列调用软件功能。

5.4.1 人机界面设计问题 在提供命令交互方式时,必须考虑下列设计问题。 (1) 是否每个菜单选项都有对应的命令? (2) 采用何种命令形式?有3种选择:控制序列(例如,Ctrl+P),功能键和键入命令。 (3) 学习和记忆命令的难度有多大?忘记了命令怎么办? (4) 用户是否可以定制或缩写命令? 在越来越多的应用软件中,人机界面设计者都提供了“命令宏机制”,利用这种机制用户可以用自己定义的名字代表一个常用的命令序列。需要使用这个命令序列时,用户无须依次键入每个命令,只需输入命令宏的名字就可以顺序执行它所代表的全部命令。在理想的情况下,所有应用软件都有一致的命令使用方法。

5.4.2 人机界面设计原则 屏幕界面设计的原则可归为四点: 界面简洁、控件摆放规范、颜色统一、符合用户习惯。 T.Mandel提出三条用户界面设计的重要准则,称之为“黄金”指导准则: 让用户驾驭软件,而不是软件驾驭用户。 尽可能减少用户的记忆负担。 保持界面的一致性。 2019年4月26日

5.4.3 人机界面设计过程 用户界面设计是一个迭代的过程,通常先创建设计模型,再用原型实现这个设计模型,并由用户试用和评估,然后根据用户意见进行修改。 目前,有各种用于界面设计和原型开发的软件工具。这些工具被称为用户界面工具箱或用户界面开发系统,它们为简化窗口、菜单、设备交互、出错信息、命令及交互环境的许多其他元素的创建,提供了各种例程或对象。这些工具所提供的功能,既可以用基于语言的方式也可以用基于图形的方式来实现。 2019年4月26日

5.4.3 人机界面设计过程 人机界面设计基本过程可以分为以下步骤: 建立任务的目标和意图; 目标和意图明确后,建立界面需求规格模型; 以界面需求模型为依据创建用户界面原型; 用户试用并评估该界面原型; 设计者根据用户的意见修改设计并实现下一原型; 不断进行下去,直到用户感到满意为止。 在上述步骤中,以界面原型创建进行界面设计迭代。 2019年4月26日

5.5 详细设计说明书的主要内容 详细设计说明书主要包括以下内容: 1.引言:编写目的、项目背景、定义、参考资料; 5.5 详细设计说明书的主要内容 详细设计说明书主要包括以下内容: 1.引言:编写目的、项目背景、定义、参考资料; 2.程序描述(所有模块给出以下说明):功能、性能、输出和输入项目、算法、程序逻辑、接口、存储分配、限制条件、测试要点等。 2019年4月26日

本章小结 详细设计阶段的任务是确定如何实现所要求的目标系统,将总体设计阶段得到的模块算法用详细设计工具:程序流程图、N-S图、PAD图和PDL语言描述出来,即设计出程序的“蓝图”。从而在下一编码阶段直接翻译成用某种程序设计语言书写的程序。结构化程序设计技术是软件详细设计的基础,任何一个程序都可以用程序、选择、循环三种结构来设计和实现,结构化程序设计具有可理解性和可维护性。 人机界面设计质量直接影响用户对软件产品的接受程度,因此, 必须对人机界面设计给予足够重视。在人机界面的设计过程中必须充分重视并认真处理好系统响应时间、用户帮助实施、出错信息处理和命令交互四个设计问题。 2019年4月26日

思考和练习 5.1 软件详细设计的基本任务是什么?有哪几种描述方法? 5.2 结构化程序设计的基本要点是什么? 5.3 使用流程图、PAD图、N-S图和PDL语言描述下列程序的算法: (1)在数据A(1)—A(10)式中求最小数和次小数。 (2)输入三个正整数作为边长,判断由这三条边构成的三角形是直角、等腰或一般三角形。 5.4 任选一种排序(从大到小)算法,分别用流程图、N-S图和PPL语言描述其详细过程。 2019年4月26日

思考和练习(续) 5.5画出下列程序的PAD图 (接前面) S2; ELSE y2; ENDIF; UNTIL L; REPEAT IF x>O THEN x1 ELSE x2 ENDIF; S1; IF y>O THEN y1 IF z> O THEN z1 ELSE z2 (接前面) S2; ELSE y2; ENDIF; UNTIL L; 5.6 程序流程图、N-S图、PAD图和PDL语言的特点各是什么?你认为这四种详细设计工具哪一种最好?为什么? 2019年4月26日

课堂讨论 根据前面选择的软件开发项目,根据本章内容尝试采用多种详细设计工具完成相关的详细设计; Question? 2019年4月26日