软件设计流程图标准规范

标准程序流程图的符号及使用约定

一, 引言

程序流程图(Progran flowchart) 作为一种算法表达工具, 早已为工国计算机工作者和广大计算机用户十分熟悉和普通使用. 然而它的一个明显缺点在于缺乏统一的规范化符号表示和严格的使用规则. 最近, 国家标准局批准的国家标准(GB1525-89)>为我们推荐了一套标准化符号和使用约定. 由于该标准是与国际标准化组织公布的标准ISO5807--85 Information processing--Documentation symbols and comventions for data,program and system flowcharts,program network charts and system resources charts是一致的, 这里将其中程序流程图部分摘录出来, 并做了一些解释, 供读者参考.

根据这一标准画出的程序流程图我们称为标准流程图.

二, 符号

程序流程图表示了程序的操作顺序. 它应包括:

(1)指明实际处理操作的处理符号, 包括根据逻辑条件确定要执行的路径的符号.

(2)指明控制流的流线符号.

(3)便于读写程序流程图的特殊符号.

以下给出标准流程图所用的符号及其简要说明, 请参看图1.

图1 标准程序流程图符号

1. 数据---- 平行四边形表示数据, 其中可注明数据名, 来源, 用途或其它的文字说明. 此符号并不限定数据的媒体.

2. 处理---- 矩形表示各种处理功能. 例如, 执行一个或一组特定的操作, 从而使信息的值, 信息形世或所在位置发生变化, 或是确定对某一流向的选择. 矩形内可注明处理名或其简工功能.

3. 特定处理---- 带有双纵边线的矩形表示已命名的特定处理. 该处理为在另外地方已得到详细说明的一个操作或一组操作, 便如子例行程序, 模块. 矩形内可注明特定处理名或其简要功能.

4. 准备---- 六边形符号表示准备. 它表示修改一条指令或一组指令以影响随后的活动. 例如, 设置开关, 修改变址寄存器, 初始化例行程序.

5. 判断----- 菱形表示判断或开关. 菱形内可注明判断的条件. 它只有一个入口, 但可以有若干个可供选择的出口, 在对符号内定义折条件求值后, 有一个且仅有一个出口被激活. 求值结果可在表示出口路径的流线附近写出.

6. 循环界限---- 循环界限为去上角矩形表示年界限和去下角矩形的下界限构成, 分别表示循环的开始和循环的结束.

图2 两种循环表示

一对符号内应注明同一循环标识符. 可根据检验终止循环条件在循环的开始还是在循环的末尾, 将其条件分别在上界限符内注明(如:当A>B)或在下界限符内注明(如:直到C

7. 连接符---- 圆表示连接符, 用以表明转向流程图的它处, 或从流程图它处转入. 它是流线的断点. 在图内注明某一标识符, 表明该流线将在具有相同标识符的另一连接符处继续下去(参看以下关于连接符使用的约定).

8. 端点符---- 扁圆形表示转向外部环境或从外部环境转入的端点符. 例如, 程序流程的起始或结束, 数据的外部使用起点或终点.

9. 注解符---- 注解符由纵边线和虚线构成, 用以标识注解的内容. 虚线须连接到被注解的符号或符号组合上. 注解的正文应靠近纵边线. 请参看图3给出的注解符使用示例.

图3 注解符的使用

10. 流线 ----- 直线表示控制流的流线. 关于流线上表示流向的箭头, 其使用方法见后面的约定.

11. 虚线 ---- 虚线用于表明被注解的范围或连接被注解部分与注解正文, 也参看图3.

12. 省略符 ---- 若流程图中有些部分无需给出符号的具体形式和数量, 可用三点构成的省略符. 省略符应夹在流线符号之中或流线符号之间 , 参看图4.

图4 省略符的使用

13. 并行方式 ---- 一对平行线表示同步进行两个或两个以上并行方式的操作. 并行方式的示例如图5, 图中在处理A 完成后才能进行处理C,D 和E; 同样, 处理F 要等处理B,C,D 完成以后进行. 但处理C 可以处理D 开始和(或) 结束前开始和(或) 结束.

图5 并行方式示例

三, 使用约定

关于流程图符号的使用约定, 简要地说明以下几点:

1. 图的布局

流程图中所用的符号应该均心地分布, 连线保持合理的长度, 并尽量少使用长线.

2. 符号的形状

流程图中多数符号内的空白供标注说明性文字. 使用各种符号应注意符号的外形和各符号大小的统一,

避免使符号

变形或各符号大小比例不一.

3. 符号内的说明文字

应使符号内的说明文字尽可能简明. 通常按从左向右和从上向下方式书写, 并与流向无关. 如果说明文字较多, 符号内写不完, 可使用注解符. 若注解符干扰或影响到图形的流程, 应将正文写在另外一页上, 并注明引用符号.

4. 符号标识符

为符号规定标识符是为了便于其它文件引用该符号. 便如, 程序清单中引用到流程图中的特定符号. 符号标识符一般写在符号的左上角, 参看图6(a).

图6 符号标识符和符号描述符

5. 符号描述符

为便于进一步理解符号的功能, 可标注符号描述符. 通常描述符写在符号的右上角, 如图6(b)所示.

6. 详细表示

在处理符号或数据符号中画一横线, 表明该符号在同一文件集中的其它地言有更为详细的表示. 横线在符号内靠近项端, 详细表示的标识符写在符号内横线之上, 见图7(a).端点符用作详细表示的开始符号和结束符号, 在此符号中应给出加横线符号中的标识符, 见图7(b).

图7 加横线符号及其详细表示

7. 流线

(1)标准流向与箭头的使用

流线的标准流向是从左到右和从上到下. 沿标准流向的流线可不用箭头指示流向, 但沿非标准流向的流线应用箭头指示充向.

(2)流线的交叉

应当尽量避免流线的交叉. 即使出现流线的交叉, 交叉的流线之间也没有任何逻辑关系, 并不对流向产生任何影响, 如图8(a)所示.

(3)流线的汇集

两条或多条进入线可以汇集成一条输出线, 此时各连接点应要互错工以提高清晰度, 并用箭头表示流向, 如图8(b)所示.

图8 汉线的交叉与流线的汇集

(4)符号流线进出

一般情况下, 流线应从符号的左边或项端进入, 并从右边或底端离开. 其进出点均应对准符号的中心.

(5)连接符

为避免出现流线交叉和使用长线, 或某个流程图能在另一页上延续, 可用连接符将流线截断. 截断始端的连接符称为出口连接符, 载断末端的连接符称为入口连接符. 两连接符中用同一标识符.

换页截断可用与连接符相连的注解符表示, 如图9所示.

图9 出口连接符与入口连接符

8. 多出口判断的两种表示方法

(1)直接从判断符号引出多条流线, 如图10(a)所示.

(2)从判断符号引聘条流线, 再从它引出多条流线, 如图10(b)所示.

图10 多出口判断

多出口判断的每个出口都应标有相应的条件值, 用以反映它所引出的逻辑路径, 如图11所示.

图11 多出口判断出口处标出条件值

四, 示例

标准程序流程图的符号及使用约定

一, 引言

程序流程图(Progran flowchart) 作为一种算法表达工具, 早已为工国计算机工作者和广大计算机用户十分熟悉和普通使用. 然而它的一个明显缺点在于缺乏统一的规范化符号表示和严格的使用规则. 最近, 国家标准局批准的国家标准(GB1525-89)>为我们推荐了一套标准化符号和使用约定. 由于该标准是与国际标准化组织公布的标准ISO5807--85 Information processing--Documentation symbols and comventions for data,program and system flowcharts,program network charts and system resources charts是一致的, 这里将其中程序流程图部分摘录出来, 并做了一些解释, 供读者参考.

根据这一标准画出的程序流程图我们称为标准流程图.

二, 符号

程序流程图表示了程序的操作顺序. 它应包括:

(1)指明实际处理操作的处理符号, 包括根据逻辑条件确定要执行的路径的符号.

(2)指明控制流的流线符号.

(3)便于读写程序流程图的特殊符号.

以下给出标准流程图所用的符号及其简要说明, 请参看图1.

图1 标准程序流程图符号

1. 数据---- 平行四边形表示数据, 其中可注明数据名, 来源, 用途或其它的文字说明. 此符号并不限定数据的媒体.

2. 处理---- 矩形表示各种处理功能. 例如, 执行一个或一组特定的操作, 从而使信息的值, 信息形世或所在位置发生变化, 或是确定对某一流向的选择. 矩形内可注明处理名或其简工功能.

3. 特定处理---- 带有双纵边线的矩形表示已命名的特定处理. 该处理为在另外地方已得到详细说明的一个操作或一组操作, 便如子例行程序, 模块. 矩形内可注明特定处理名或其简要功能.

4. 准备---- 六边形符号表示准备. 它表示修改一条指令或一组指令以影响随后的活动. 例如, 设置开关, 修改变址寄存器, 初始化例行程序.

5. 判断----- 菱形表示判断或开关. 菱形内可注明判断的条件. 它只有一个入口, 但可以有若干个可供选择的出口, 在对符号内定义折条件求值后, 有一个且仅有一个出口被激活. 求值结果可在表示出口路径的流线附近写出.

6. 循环界限---- 循环界限为去上角矩形表示年界限和去下角矩形的下界限构成, 分别表示循环的开始和循环的结束.

图2 两种循环表示

一对符号内应注明同一循环标识符. 可根据检验终止循环条件在循环的开始还是在循环的末尾, 将其条件分别在上界限符内注明(如:当A>B)或在下界限符内注明(如:直到C

7. 连接符---- 圆表示连接符, 用以表明转向流程图的它处, 或从流程图它处转入. 它是流线的断点. 在图内注明某一标识符, 表明该流线将在具有相同标识符的另一连接符处继续下去(参看以下关于连接符使用的约定).

8. 端点符---- 扁圆形表示转向外部环境或从外部环境转入的端点符. 例如, 程序流程的起始或结束, 数据的外部使用起点或终点.

9. 注解符---- 注解符由纵边线和虚线构成, 用以标识注解的内容. 虚线须连接到被注解的符号或符号组合上. 注解的正文应靠近纵边线. 请参看图3给出的注解符使用示例.

图3 注解符的使用

10. 流线 ----- 直线表示控制流的流线. 关于流线上表示流向的箭头, 其使用方法见后面的约定.

11. 虚线 ---- 虚线用于表明被注解的范围或连接被注解部分与注解正文, 也参看图3.

12. 省略符 ---- 若流程图中有些部分无需给出符号的具体形式和数量, 可用三点构成的省略符. 省略符应夹在流线符号之中或流线符号之间 , 参看图4.

图4 省略符的使用

13. 并行方式 ---- 一对平行线表示同步进行两个或两个以上并行方式的操作. 并行方式的示例如图5, 图中在处理A 完成后才能进行处理C,D 和E; 同样, 处理F 要等处理B,C,D 完成以后进行. 但处理C 可以处理D 开始和(或) 结束前开始和(或) 结束.

图5 并行方式示例

三, 使用约定

关于流程图符号的使用约定, 简要地说明以下几点:

1. 图的布局

流程图中所用的符号应该均心地分布, 连线保持合理的长度, 并尽量少使用长线.

2. 符号的形状

流程图中多数符号内的空白供标注说明性文字. 使用各种符号应注意符号的外形和各符号大小的统一,

避免使符号

变形或各符号大小比例不一.

3. 符号内的说明文字

应使符号内的说明文字尽可能简明. 通常按从左向右和从上向下方式书写, 并与流向无关. 如果说明文字较多, 符号内写不完, 可使用注解符. 若注解符干扰或影响到图形的流程, 应将正文写在另外一页上, 并注明引用符号.

4. 符号标识符

为符号规定标识符是为了便于其它文件引用该符号. 便如, 程序清单中引用到流程图中的特定符号. 符号标识符一般写在符号的左上角, 参看图6(a).

图6 符号标识符和符号描述符

5. 符号描述符

为便于进一步理解符号的功能, 可标注符号描述符. 通常描述符写在符号的右上角, 如图6(b)所示.

6. 详细表示

在处理符号或数据符号中画一横线, 表明该符号在同一文件集中的其它地言有更为详细的表示. 横线在符号内靠近项端, 详细表示的标识符写在符号内横线之上, 见图7(a).端点符用作详细表示的开始符号和结束符号, 在此符号中应给出加横线符号中的标识符, 见图7(b).

图7 加横线符号及其详细表示

7. 流线

(1)标准流向与箭头的使用

流线的标准流向是从左到右和从上到下. 沿标准流向的流线可不用箭头指示流向, 但沿非标准流向的流线应用箭头指示充向.

(2)流线的交叉

应当尽量避免流线的交叉. 即使出现流线的交叉, 交叉的流线之间也没有任何逻辑关系, 并不对流向产生任何影响, 如图8(a)所示.

(3)流线的汇集

两条或多条进入线可以汇集成一条输出线, 此时各连接点应要互错工以提高清晰度, 并用箭头表示流向, 如图8(b)所示.

图8 汉线的交叉与流线的汇集

(4)符号流线进出

一般情况下, 流线应从符号的左边或项端进入, 并从右边或底端离开. 其进出点均应对准符号的中心.

(5)连接符

为避免出现流线交叉和使用长线, 或某个流程图能在另一页上延续, 可用连接符将流线截断. 截断始端的连接符称为出口连接符, 载断末端的连接符称为入口连接符. 两连接符中用同一标识符.

换页截断可用与连接符相连的注解符表示, 如图9所示.

图9 出口连接符与入口连接符

8. 多出口判断的两种表示方法

(1)直接从判断符号引出多条流线, 如图10(a)所示.

(2)从判断符号引聘条流线, 再从它引出多条流线, 如图10(b)所示.

图10 多出口判断

多出口判断的每个出口都应标有相应的条件值, 用以反映它所引出的逻辑路径, 如图11所示.

图11 多出口判断出口处标出条件值

四, 示例


相关文章

  • 软件工程基础考试题
  • 软件工程基础 一.选择题 1.软件需求分析阶段的工作,可以分为4个方面:需求获取,需求分析,编写需求规格说明书以及(B) A).用户 B).需求审评 C).总结 D).都不正确 2.在原型法中称(A)为用户/设计者,开发人员根据用户需求不断 ...查看


  • 软件需求规格说明(范例)
  • 项目名称 软件需求规格说明 文档签署记录 文档修改记录 目 录 1 引言 ................................................................................... ...查看


  • (软考软件设计师)软件设计师考试大纲
  • 软件设计师(原高级程序员)考试大纲 一.考试说明 1.考试要求: (1) 掌握数据表示.算术和逻辑运算: (2) 掌握相关的应用数学.离散数学的基础知识: (3) 掌握计算机体系结构以及各主要部件的性能和基本工作原理: (4) 掌握操作系统 ...查看


  • 软件工程师考试大纲
  • 软件工程师考试大纲 软件设计师考试大纲 一.考试说明 1.考试要求: (1) 掌握数据表示.算术和逻辑运算: (2) 掌握相关的应用数学.离散数学的基础知识: (3) 掌握计算机体系结构以及各主要部件的性能和基本工作原理: (4) 掌握操作 ...查看


  • 技术中心软件开发流程管理制度
  • 软件开发流程管理制度 (初稿) 为加强对公司定制软件开发工作管理,缩短开发周期,提高软件开发质量,降低开发成本,提高定开发效率和效益,特制定软件开发流程管理制度. 第一章.总则 为保证日常工作正常有序的进行,让开发中各个环境更紧凑,更可控, ...查看


  • 软件工程期末考试试题
  • 一,单项选择题(本大题共20小题,每小题1分,共20分) 在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项 前的字母填在题后的横线上. 1.可行性研究要进行一次_____需求分析. A.详细的 B.全面的 C.简化的.压缩 ...查看


  • 产品测试流程
  • 1目的 本流程旨在有效地规范产品测试过程,提高测试的有效性和文档管理质量,明确测试工作各阶段的任务.步骤.关键评审点和与开发流程的关系及接口,充分体现开发与测试的并行,缩短产品开发周期,降低产品开发成本,保证测试过程的规范性和继承性,快速. ...查看


  • 软件需求分析模板
  • 项目名称 (The English Name) 软件需求分析报告 XXX项目组 修订表 审批记录 目 录 1. 引言.............................................................. ...查看


  • 新产品研发流程
  • 新产品研发流程 研发中心新产品开发一共有18过程,有16关键点. 每个过程都有开始条件.工作程序.标准规范.结束事件.工作程序,标准规范请参照公司文件及指标,过程的结束事件即为关键点. ※关键点1:新产品开发输入资料评审 评审时检验资料:& ...查看


  • 新产品研发流程 - Eric Zhong的日志 - 网易博客
  • 新产品研发流程 2007-01-26 08:52 分类:默认分类 字号: 大大  中中  小 研发中心新产品开发一共有18过程,有16关键点. 每个过程都有开始条件.工作程序.标准规范.结束事件.工作程序,标准规范请参照公司文件及指标,过程 ...查看


热门内容