1. 描述对象不同
业务流程图的描述对象是某一具体的业务; 数据流程图的描述对象是数据流。
业务是指企业管理中必要且逻辑上相关的、为了完成某种管理功能的一系列相关的活动。在系统调研时, 通过了解组织结构和业务功能, 我们对系统的主要业务有了一个大概的认识。但由此我们得到的对业务的认识是静态的, 是由组织部门映射到业务的。而实际的业务是流动的, 我们称之为业务流程。一项完整的业务流程要涉及到多个部门和多项数据。例如, 生产业务要涉及从采购到财务, 到生产车间, 到库存等多个部门; 会产生从原料采购单, 应收 付 账款, 入库单等多项数据表单。因此, 在考察一项业务时我们应将该业务一系列的活动即整个过程为考察对象, 而不仅仅是某项单一的活动, 这样才能实现对业务的全面认识。将一项业务处理过程中的每一个步骤用图形来表示, 并把所有处理过程按一定的顺序都串起来就形成了业务流程图。
数据流程图是对业务流程的进一步抽象与概括。抽象性表现在它完全舍去了具体的物质, 只剩下数据的流动、加工处理和存储; 概括性表现在它可以把各种不同业务处理过程联系起来,形成一个整体。从安东尼金字塔模型的角度来看, 业务流程图描述对象包括企业中的信息流、资金流和物流, 数据流程图则主要是对信息流的描述。此外, 数据流程图还要配合数据字典的说明, 对系统的逻辑模型进行完整和详细的描述。
2. 功能作用不同
业务流程图是一本用图形方式来反映实际业务处理过程的“流水帐”。绘制出这本流水帐对于开发者理顺和优化业务过程是很有帮助的。业务流程图的符号简单明了, 易于阅读和理解业务流程。绘制流程图的目的是为了分析业务流程, 在对现有业务流程进行分析的基础上进行业务流程重组, 产生新的更为合理的业务流程。通过除去不必要的、多余的业务环节; 合并重复的环节; 增补缺少的必须的环节; 确定计算机系统要处理的环节等重要步骤, 在绘制流程图的过程中可以发现问题, 分析不足, 改进业务处理过程。
数据流程分析主要包括对信息的流动、传递、处理、存储等的分析。数据流程分析的目的就是要发现和解决数据流通中的问题, 这些问题有: 数据流程不畅, 前后数据不匹配, 数据处理过程不合理等。通过对这些问题的解决形成一个通畅的数据流程作为今后新系统的数据流程。数据流程图比起业务流程图更为抽象, 它舍弃了业务流程图中的一些物理实体, 更接近于信息系统的逻辑模型。对于较简单的业务, 我们可以省略其业务流程图直接绘制数据流程图。
3. 基本符号不同
关于业务流程图和数据流程图的基本符号很多教材上都不完全一致, 还没有形成一个统一的标准。例如, 有的教材上用圆形表示外部实体, 有的用矩形表示外部实体。二者所使用的符号不同, 但代表的含义都相同。业务流程图中的业务处理和存储这两个符号和数据流程图中的相应的符号基本一致; 业务流程图和数据流程图中都有箭头线的符号, 但含义不同: 业务流程图中的箭头线表示信息流向, 它没有名称; 数据流程图中的箭头线表示某一数据流, 它有名称, 通常写在数据流的上方。
4. 绘制过程不同
业务流程图就是用一些规定的符号及连线来表示某个具体务处理过程。业务流程图的绘制是根据系统详细调查过程中所得的资料, 按业务实际处理过程, 用规定的符号将它们绘制在同一张图上。它的绘制无严格的规则, 只需简明扼要地如实反映实际业务过程。在绘制过程中一般也遵循“自顶向下”的原则。
数据流程图的绘制方法较为复杂, 它是按照“自顶向下, 逐层求精”的方法进行的, 也就是将整个系统当成一个处理功能,画出它和周围实体的数据联系过程, 即一个粗略的数据流程图( 顶层数据流程图),然后逐层向下分析, 直到把系统分解为详细的低层次的数据流程图。