软件程序流程图使用规范

2023-11-15

软件程序流程图使用规范 - Amorphous - 博客园 (cnblogs.com)

目录:

流程图可以简单地描述一个过程,是对过程、算法、流程的一种图像表示,在技术设计、交流及商业简报等领域有广泛的应用。流程图可分为:数据流程图和作业流程图。

一、程序流程图的作用

  程序流程图的作用程序流程图的作用程序流程图的作用 程序流程图是人们对解决问题的方法、思路或算法的一种描述。

  流程图优点:

  • 采用简单规范的符号,画法简单;

  • 结构清晰,逻辑性强;

  • 便于描述,容易理解。

二、画流程图常用软件

  • Visual Graph是一套非常完善的专业图形系统,专门处理交互图形,在可靠性、兼容性、易用性、扩展性、完备性、容错性等多方面均达到了较高的水平。

  • SmatDraw是世界上最流行的商业绘图软件,可以用来画流程图、甘特图、时间图等不同形式的商业图表。SmartDraw使每个人都能很轻松的绘制具有专业水准的商业图。

  • 亿图图示专家(EDraw Max)是一款基于矢量的绘图工具,包含大量的事例库和模板库。可以很方便的绘制各种专业的业务流程图、组织结构图、商业图表、程序流程图、数据流程图、工程管理图、软件设计图、网络拓扑图等等。

  • Axure主要是用来进行软件原型线框设计的,同时具有流程图功能,特点是非常简洁易用。

  • Office Visio是当今最优秀的绘图软件之一,是微软公司推出的非常传统的免费流程图软件。它有助于IT和商务专业人员轻松地可视化、分析和交流复杂信息。在Microsoft Office Excel 2007、PowerPoint 2007、Word 2007或Outlook 2007中都可以绘制流程图。如PowerPoint在插入选项卡里面的“SmartArt”,选择“流程”、“层次结构”、“循环”或“关系”来绘制流程图。

  • ProcessOn 常用的商业办公制图工具,专业绘制程序流程图,思维导图等。

三、流程图中使用的符号

  流程图是用图的形式将一个过程的步骤表示出来。使用图形表示算法的思路是一种极好的方法,因为一张图胜过千言万语。流程图由包含具有确定含义的符号、简单的说明性文字和各种连线。

  常用的绘制流程图形态和程序的规则:

  • 开始用六角菱型或圆角矩形或椭圆;

  • 矩形方框表示具体活动过程;

  • 菱形框表示决策、审核、判断;

  • 结束终止用椭圆;

  • 平行四边形表示输入输出;

  • 箭头代表工作流方向;

  • 小圆代表按顺序数据的流程;
  • 竖文件框式的一般是表示原定的程序;
  • 两边文件框式的一般是表示留下来的资料数据的存储;

  另外还规定,流程线是从下往上或从右向左时,必须带箭头;除此以外,都可以不画箭头;

  流程线的走向默认都是从上向下或从左向右。符号内的说明文字尽可能简明,通常按从左向右和从上向下方式书写,并与流向无关。

  如果说明文字较多,符号内写不完,可使用注解符。若注解符干扰或影响到图形的流程,应在另外一页正文上注明引用符号。

四、流程图采用的常用符号

五、循环流程图的画法

  1.for循环

  在python中的for循环形式:

1

for 表达式1 :表达式2

  流程图

  2.while循环

  python中的while循环

1

while 条件:循环语句

  流程图

六、程序流程图的高级用法:

  6.1 数据:

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

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

  6.3 特定处理:

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

  6.4 准备:

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

   6.5 判断:

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

  6.6 循环界定:
  循环界限:循环界限为去上角矩形或去下角矩形,分别表示循环的开始和循环的结束。一对符号内应注明同一循环标识符。可根据检验终止循环条件在循环的开始还是在循环的末尾,将其条件分别在上界限符内注明(如:当A>B)或在下界限符内注明(如:直到C<D)。
  图例:给出了当终止条件成立时进入循环和直到终止条件成立退出循环的两种不同的表示。

 

  6.7 连接符:

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

符使用的约定)

  6.8 端点符:

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

  6.9 注释符:
  注解符:注解符由纵边线和虚线构成,用以标识注解的内容。虚线须连接到被注解的符号或符号组合上。注解的正文应靠近纵边线。
  注释符图例如下:

  6.10 流线:

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

  6.11 虚线:
  虚线:虚线用于表明被注解的范围或连接被注解部分与注解正文,(参照:6.9 注释符图例)

   6.12 省略符:

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

  省略符图例如下:

 

  6.13 并行方式:

  并行方式:一对平行线表示同步进行两个或两个以上并行方式的操作。并行方式的示例如下图例,图中在处理A完成后才能进行处理C、D和E。

  同样,处理F要等处理B、C、D完成以后进行。但处理C可以在处理D开始和(或)结束前开始和(或)结束。

 

 七、基本结构

  顺序结构:简单的线性结构,各处理单元按顺序执行

  选择(分支)结构:对某个给定条件进行判断,条件为真或假时分别执行不同框的内容

  循环结构:循环结构有两种基本形态:while型循环和do-while型循环

    a.while型循环:其执行序列为,当条件为真时,反复执行A,一旦条件为假,跳出循环,执行循环紧后的语句

    b.do-while型循环:其执行序列为,首先执行A,再判断条件,条件为真时,一直循环执行A,一旦条件为假,结束循环,执行循环紧后的下一条语句

  注意:
    1.在循环体内,必须要对条件要判断的值进行修改,使得经过有限次循环后,循环一定能结束

    2.当型循环中循环体可能一次都不执行,而直到型循环则至少执行一次循环体

    3.直到型循环可以很方便的转化为当型循环,而当型循环不一定能转化为直到型循环

   

八、使用约定

   8.1 符号标识符:

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

  符号标识符图例:

 

  8.2 符号描述符:

  为便于进一步理解符号的功能,可标注符号描述符。通常描述符写在符号的右上角。

  符号描述符图例:

 

  8.3 详细描述:

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

  

 九、流线

  9.1 标准流向与箭头的使用:
  流线的标准流向是从左到右和从上到下。沿标准流向的流线可不用箭头指示流向,但沿非标准流向的流线应用箭头指示方向。

   9.2 流线的交叉:

  应当尽量避免流线的交叉。即使出现流线的交叉,交叉的流线之间也没有任何逻辑关系,并不对流向产生任何影响

  流线交叉图例:

  

   9.3 流线的汇集:

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

  流线汇集图例:

  

  9.4 符号流线进出:

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

   9.5 连接符:

  为避免出现流线交叉和使用长线,或某个流程图能在另一页上延续,可用连接符将流线截断。截断始端的连接符称为出口连接符,载断末端的连接符称为入口连接符。两连接符中用同一标识符。
换页截断可用与连接符相连的注解符表示,如下图例。

   

  9.6 多出口判断的两种表示方法:

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

  从判断符号引入流线,再从它引出多条流线,如图(b)所示:

   

  9.7 多出口判断出口处标出条件值:

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

  

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

软件程序流程图使用规范 的相关文章

随机推荐

  • m计划-python

    题目描述 小明是个鹅卵石收藏者 从小到大他一共收藏了 n块鹅卵石 编号分别为 1 n 价值分别为 a1 a2 an 这天他乘船准备去往蓝桥王国 然而天有不测风云 小明所在的海域下起了暴雨 很快小明船上的积水越来越多 为了防止沉船 小明不得不
  • 有关 Rust 交叉编译的一些思路 (仅供参考)

    近来 使用 Rust 语言开发的应用程序渐渐融入了开发者以及普通用户的日常生活 它们不仅出现在我们常用的工作平台上 不少嵌入式设备或者云服务器上也多见它们的身影 Rust 是一种需要编译的语言 且一些 crate 仍需要 C C 的构建环境
  • 多个Makefile文件编译,Makefile多目标编译和多层次编译

    多个Makefile文件编译 Makefile多目标编译和多层次编译 README Makefile多目标编译 Makefile多层次编译 a文件夹 b文件夹 include文件夹 obj文件夹 多个Makefile文件编译 相关截图 ma
  • 论文集计算机,计算机学年论文集 计算机学年论文参考文献哪里找

    汇总了 100个 与计算机学年相关论文参考文献 为广大毕业生和职称者推荐计算机学年论文集 解决在校大学生不知个计算机学年论文参考文献哪里找等相关问题 一 计算机学年论文参考文献范文 1 试析西点军校计算机基础课程的改革 薛源 2006200
  • kudu clickhouse 添加字段删除字段

    impala 或hive 给指定kudu库中的表添加列 修改列并调整列位置 添加列 alter TABLE fact cpu supply category add columns supplier name string COMMENT
  • C语言—数据类型

    文章目录 1 基本数据类型 2 数组 字符数组和字符串 2 1 数组 2 2 字符数组与字符串 3 枚举类型 4 结构体和共用体 4 1 结构体 4 2 共用体 5 拓展 5 1 结构体内存分配 5 1 1 以结构体中占字节数最大的数据类型
  • IDEA和GIT关于文件中LF和CRLF问题

    问题描述 项目软件安装shell脚本上git仓库管理 但拉取后 上linux运行报错 问题思考 根据描述信息可以查看到 r字样 初步判别为换行符导致 1 将脚本文件移动至notepad 中 通过视图 gt 显示符号 gt 显示所有符号 一顿
  • 【Leetcode】111. 二叉树的最小深度

    题目描述 题解 递归遍历 记录深度 然后贪心地去更新结果 取min 考虑到这里还不够 需要加一层叶节点的判断 必须当前节点是叶子结点才能够做res的更新 否则可能会碰到这种情况 根结点左边没有子树 根结点右边有子树 结果递归下去发现深度是1
  • 轻量级网络:ResNeXt

    目录 insight Method Template Revisiting Simple Neurons Aggregated Transformations Model Capacity Experiments Experiments o
  • NVIDIA TensorRT简介

    一 NVIDIA TensorRT简介 二 NVIDIA TensorRT下载 根据自己硬件配置下载对应版本即可 本文以8 4 1为例 网址 https developer nvidia com nvidia tensorrt downlo
  • 分享一组开关按钮

    先看效果 再看代码
  • 网址备份

    1 搜索网站 http www google com 全球最强大的搜索网站 在语言学习中 它的功能至少包括 搜索新词可用之语境 确认某种搭配或用法是否准确 通过同时输入中文及 English 寻找可能存在的双语介绍 查询文学作品译本 了解某
  • Qt下QString与int 之间相互转换

    QString与int 之前相互转换 1 QString 转int QString str 100 int tmp str toInt 2 int 转QString int tmp 100 QString str QString numbe
  • python爬虫14:总结

    python爬虫14 总结 前言 python实现网络爬虫非常简单 只需要掌握一定的基础知识和一定的库使用技巧即可 本系列目标旨在梳理相关知识点 方便以后复习 申明 本系列所涉及的代码仅用于个人研究与讨论 并不会对网站产生不好影响 目录结构
  • 记linux内核处理bootargs到内核并加载模块时传入参数(module_param_named()等)

    昨晚 一网友问我如何把LCD反转一下输出 顿时不会 只会去看之前的dm3730的linux2 6 32的内核 偶然发现直接设置bootargs的参数到内核也许就可以啦 Linux以内核模块为核心 自动编译如系统后 所以的类似init cal
  • Webpack运行报错 Module parse failed

    自己本地项目运行报错 因为项目中使用package lock json固定了版本 项目中axios使用的0 21 1版本 可以正常运行 当删除package lock json执行npm install 然后axios版本为0 21 4 运
  • matlab filter函数_MATLAB 低通滤波器 low pass filter

    1 lowpass 函数 注意 只有2018年之后的matlab才有lowpass bandpass 函数 lowpass x fpass fs x 一维信号 fpass 截止频率 fs 采样频率 例子 两个频率的信号 一个是50HZ 振幅
  • air硬盘扩容 macbook_「技巧」苹果电脑硬盘拓展的5种方法,你知道吗

    前言 这是官网最新的MacBook Pro 13 提供的前两种配置 9999元起售 差价1500元 一样的外观 一样的处理器和内存 除了硬盘容量之外 其他配置全部相同 为了128G的容量多花1500元钱 值得吗 从成本上来说 是不值得的 同
  • 欧拉角与四元数

    以下文章摘自wiki百科 对于在三维空间里的一个参考系 任何坐标系的取向 都可以用三个欧拉角来表现 参考系又称为全局坐标系 是静止不动的 而局部坐标系则固定于刚体 随着刚体的旋转而旋转 参閲右图 设定 x y z轴为全局坐标系的参考轴 称
  • 软件程序流程图使用规范

    软件程序流程图使用规范 Amorphous 博客园 cnblogs com 目录 一 程序流程图的作用 二 画流程图常用软件 三 流程图中使用的符号 四 流程图采用的常用符号 五 循环流程图的画法 六 程序流程图的高级用法 七 基本结构 八