文章目录
软件详细设计(过程设计)
描述程序处理过程的工具称为详细设计工具,可以分为图形,表格,和语言3类
详细设计的目的和任务
- 根本目的:确定应该怎样具体实现所要求的目标系统,将总体设计阶段得到的模型用详细设计工具描述出来
- 目的:不仅仅逻辑上正确地实现每个模块的功能,因此是详细设计的基础
结构程序设计技术 是实现上述目的的关键技术,因此是详细设计的逻辑基础
- 确定模块算法和模块内数据结构
- 确定模块接口(系统外部接口,用户界面,内部模块间接口细节,输入数据和输出数据)
结构化程序设计(关键技术)
- 结构化程序概念:目的是为了从高级语言中限制goto语句提出的
- 在E.W.Dijkstra在1965年召开的IFIP(国际信息处理联合会)上提出
- 结构化程序设计所使用的结构有顺序,条件,重复3种,可以实现单入口单出口,且无死循环,死语句的程序
- 结构化程序设计采用自顶向下,逐步求精的设计方法和单入口单出口的控制结构
图形
详细设计工具-程序流程图(程序框图)
- 历史最悠久,使用最广泛的过程设计工具,它易学,表达算法直观,缺点是不够规范
- 顺序型:几个连续的加工依次序排列
- 选择型:由某个判定的取值决定选择两个加工中一个
- 当型循环型:当循环控制条件成立时,重复执行特定的加工
- 直到型循环型:重负执行特定的加工,直到循环控制条件的成立
- 多情况选择型:列出多种加工情况,根据控制变量的取值,选择执行其一
程序流程图的主要缺点
- 程序流程图本质上不是逐步求精的好工具,它诱使程序员过早考虑控制流程
- 程序流程图中用箭头代表控制流,因此程序员不受任何约束,随意转移控制,容易造成非结构化的程序结构
- 程序流程图不易表示数据结构和层次结构
盒图(N-S图)
- 主要特点:只能描述结构化程序所允许的标准结构(3种)
N-S图的优点
- 功能域表达明确,功能域从盒式图上可以明显看出来
- 数据盒:描述有关数据
- 模块盒,:描述执行过程
- 很容易确定局部和全局数据的作用域
- 不可能随意转移控制
- 很容易表达模块的层次结构和容易表现嵌套关系
- 使得软件设计人员遵守结构化程序设计的规定,养成良好的程序设计风格
问题分析图(PAD图)
它采用 由左向右展开的二维树型结构图来描述程序的逻辑
PAD图的优点
- 用PAD图设计出来的程序必然时结构化程序
- 描绘的程序结构十分清晰,最左面的竖线时程序的主线,PAD图中竖线的总条线就是程序的层次数
- 支持自顶向下,逐步求精的方法
- 表示的程序逻辑易读易懂,易记,使用方便
- 可自动生成程序,利用软件工具自动生成,省去人工编码,有利于提高软件可靠性和软件生产率
表格
过程设计-判定表
能清晰表示复杂的条件组合域应做动作间对应关系
过程设计-判定树
判定表变种,表示复杂的条件组合域应做动作间对应关系
缺点:简洁性不如判定表
过程设计语言-伪码(PDL)
一种描述模块算法设计和处理细节的语言,用正文形式表示数据和处理过程设计工具
- 具有严格的关键字外层语言,用于定义控制结构和数据结构
- 表示实际操作和条件的内层语法(描述具体操作)又是零花自由的,以便可以适应各种工程项目的需要,因此PDL是一种混杂语言
- 提供机制比图形全面,有利于保证软件详细设计与编码的质量
- 可以作为注释直接插在原程序中间作为程序的文档,有利于软件的维护并保证文档和程序的一致性,提高文档的质量
- 可自动生成代码。提高软件生产率
PDL 与实际高级设计语言的区别:
- PDL的语句嵌有字然语言的叙述,故PDL时不能被编译的
人机界面设计
通过界面,用户可以和软件进行交互,良好的人机界面设计要充分考虑用户的感受,理解用户的意图,以用户为中心
人机界面设计问题
系统响应时间
- 系统响应时间时许多交互式系统用户经常抱怨的问题
- 系统响应时间:指从用户完成某个控制动作(例如,按回车键或点击鼠标),到软件给出预期响应(输出信息或做动作)之间的这段时间
- 系统响应时间有两个重要属性,分别是长度和易变性
- 长度:超过一秒会让用户注意到延迟,过短使用户加快操作节奏,导致出错
- 易变形:指系统响应时间相对于平均响应时间的偏差,越低越好,稳定在一秒的响应时间比0.1s-2.5s变化的响应时间要好
用户帮助设施
- 手册和联机帮助(不离开用户界面)
- 联机帮助分为集成帮助和附加帮助
- 集成帮助:设计在软件里面,可用性更强
- 附加帮助:帮助设施实在系统建成后,加到软件中
具体设计帮助设施时,要解决的问题?
- 请求帮助:帮助菜单,特殊功能键。HELP命令
- 显示帮助信息:独立窗口和屏幕固定位置显示作简短提示
- 组织帮助信息:平面结构:通过关键字,层次结构:查更详细信息和超文本结构
出错信息处理
出错信息和警告信息,有效的出错消息能提高交互式系统的质量,减轻用户的挫折感
命令交互
- 曾经时用户和系统软件交互的最常用方式,建议保留
- 三种命令形式:控制序列,功能键(F1),键入命令
- 人机界面设计者提供了“命令宏机制”,使用这个命令序列时,用户无需依此键入每个命令,只需输入命令宏的名字就能顺利执行它所代表的全部命令
人机界面设计原则
- 原则:界面简洁,控件摆放规范,颜色统一符合用户习惯
”黄金“指导准则 - 让用户驾驭软件,而不是软件驾驭用户
- 尽可能减少用户的记忆负担
- 保持界面的一致性
人机界面设计过程
- 建立任务的目标和意图
- 目标和意图明确后,建立界面需求规格模型
- 以界面需求模型维依据创建用户界面模型
- 用户试用并评估界面原型
- 设计者根据用户意见修改
- 不断进行,直到用户满意
- 上述步骤,以界面原型创建界面设计迭代
至此,得到详细设计说明书
花神博客生涯之软件工程(5)结束了哦~
接下来会持续更新(⊙o⊙)!