人机界面设计
设计问题
人机界面设计要考虑四个问题:
- 系统响应时间
- 用户帮助设施
- 帮助之类的
- 出错信息处理
- 命令交互
- 图形化界面、命令行操作
设计过程
这是一个迭代过程,通常先创建设计模型,再利用原型实现这个设计模型,然后用户评估
过程设计的工具
程序流程图
程序流程图中常用的符号
程序流程图虽然比较直观,灵活,并且比较容易掌握,但是它的随意性和灵活性却使它不可避免地存在着一些缺点:
- 由于程序流程图的特点,它本身并不是逐步求精的好工具。因为它使程序员容易过早地考虑程序的具体控制流程,而忽略了程序的全局结构
- 程序流程图中用箭头代表控制流,这样使得程序员不受任何约束,可以完全不顾结构程序设计的精神,随意转移控制
- 程序流程图在表示数据结构方面存在不足
盒图
N-S图的基本符号
PAD图
PAD图的基本符号
PAD图的基本符号
判定表
一张判定表由四部分组成:
(1)左上部列出所有条件;
(2)左下部是所有可能做的动作;
(3)右上部为各种可能组合条件,其中每一列表示一种可能组合;
(4)右下部的每一列是和每一种条件组合所对应的应做的工作。
判定表
判定树
判定树
过程设计语言(伪代码)
PDL语言具有下述特点:
(1)PDL虽然不是程序设计语言,但是它与高级程序设计语言非常类似,只要对PDL描述稍加变换就可变成源程序代码。因此,它是详细设计阶段很受欢迎的表达工具。
(2)用PDL写出的程序,既可以很抽象,又可以很具体。因此,容易实现自顶向下逐步求精的设计原则。
(3)PDL描述同自然语言很接近,易于理解。
(4)PDL描述可以直接作为注释插在源程序中,成为程序的内部文档。这对提高程序的可读性是非常有益的。
(5)PDL描述与程序结构相似,因此自动产生程序比较容易。
PDL的缺点是不如图形描述形象直观,因此人们常常将PDL描述与一种图形描述结合起来使用。
例子——求最大值
// PDL伪代码
Input array A
MAX=A(1)
DO for I=2 to N
IF MAX<A(I) THEN
MAX=A(I)
ENDIF
ENDDO
Print MAX