UML带有数据流程图的客户服务系统案例研究

Visual Paradigm是包含设计共享、线框图和数据库设计新特性的企业项目设计工具。现在你只需要这样单独的一款模型软件 Visual Paradigm就可以完成用UML设计软件,用BPMN去执行业务流程分析,用ERD企业设计数据库的任务。Visual Paradigm年终钜惠来袭,Visual Paradigm Modeler 订阅1年只需666元,现在抢购立享优惠!

慧都网免费点击下载Visual Paradigm最新试用版

数据流图(DFD)提供了系统内信息(即数据)流的直观表示。通过创建数据流程图,您可以告诉参与系统流程的人员所提供并传递给其的信息,完成流程所需的信息以及需要存储和访问的信息。数据流程图在软件工程中被广泛使用。您可以在建模信息系统中使用DFD。本文以客户服务系统为例介绍和解释数据流程图(DFD)。

CS系统示例

数据流程图是图的层次结构,包括:

  1. 上下文图(概念上为零级)
  2. 1级DFD
  3. 以及可能的2级DFD和进一步的功能分解,具体取决于系统的复杂性

    上下文DFD

    下图显示了为铁路公司的客户服务系统绘制的上下文数据流程图。它包含一个表示要建模的系统的过程(形状),在本例中为“ CS System ”。它还显示了将与系统交互的参与者,称为外部实体。在此示例中,CS Assistant和Passenger是将与系统交互的两个实体。在流程与外部实体之间,存在数据流(连接器),这些数据流指示实体与系统之间存在信息交换。
    UML带有数据流程图的客户服务系统案例研究
    上下文DFD是数据流模型的入口。它仅包含一个进程,并且不显示任何数据存储。

    1级DFD

下图显示了1级DFD,它是上下文DFD中显示的CS系统过程的分解(即分解)。通读该图,然后我们将基于此图介绍一些关键概念。

UML带有数据流程图的客户服务系统案例研究
CS系统数据流程图示例包含四个流程,两个外部实体和四个数据存储。尽管没有设计准则可以控制形状在数据流程图中的位置,但是我们倾向于将过程放在中间,而将数据存储区和外部实体放在侧面,以便于理解。

根据该图,我们知道乘客可以从“查询运输详细信息”流程中接收运输详细信息,并且详细信息由数据存储“运输详细信息”和“铁路实时统计”提供。虽然存储在“运输详细信息”中的数据是永久性数据(用标签“ D”表示),但是“铁路实时统计”中存储的数据是短暂的瞬态数据(用标签“ T”表示)。标注形状用于列出乘客可以查询的详细信息的种类。
CS Assistant可以启动“购买纪念品”流程,这将导致将订单详细信息存储在“订单”数据存储区中。尽管客户是购买纪念品的真实人,但CS助手可以访问存储订单明细的系统。因此,我们使数据从CS助手流向购买纪念品流程。

CS Assistant还可以通过提供订单明细来启动“购买凭单”流程,该详细信息将再次存储在“订单”数据存储区中。数据流图是一个高度抽象的高级图。此处绘制的数据存储Order不一定表示真实的订单数据库或数据库中的订单表。订单详细信息的物理存储方式将在以后实现系统时确定。

最后,CS Assistant可以通过提供事件和项目详细信息来启动“报告丢失”过程,并且该信息将存储在“丢失的项目”数据库中。

数据流程图提示和注意事项

用D,M和T声明数据类型

数据流程图中绘制的每个数据存储都以字母为前缀,默认情况下为“ D”。该字母表示数据存储区保存的数据类型。字母“ D”用于表示持久的计算机化数据,这可能是典型信息系统中最常见的数据类型。除了计算机化数据外,数据还可以暂时保留一小段时间。我们称这种数据为暂态数据,用字母“ T”表示。有时,无需使用计算机即可存储数据。我们称这种数据为手动数据,用字母“ M”表示。最后,如果数据是在不使用计算机的情况下存储的,并且也保留了很短的时间,则称为手动瞬态数据,并由T(M)表示。

注意细节级别

在此数据流程图示例中,标记数据时,多次使用“详细信息”一词。我们有“运输详细信息”和“订单详细信息”。如果我们将其明确写为“路线信息,火车时间和延误”,“纪念品名称,数量和数量”以及“机票类型和数量”怎么办?它是否正确?好吧,这个问题没有确定的答案,但是在做出决定时尝试问自己一个问题。为什么要绘制DFD?

在大多数情况下,数据流程图是在系统开发的早期阶段绘制的,其中许多细节尚待确认。诸如“详细信息”,“信息”,“凭证”之类的通用术语的使用无疑为讨论留下了空间。但是,使用通用术语可能会缺乏细节,从而使设计失去其用处。因此,这实际上取决于您的设计目的。

不要透支

在数据流程图中,我们专注于系统与外部各方之间的交互,而不是接口之间的内部通信。因此,接口与所使用的数据存储之间的数据流被认为是超出范围的,因此不应在图中显示。

不要混淆数据流和流程流

一些设计人员在遇到从数据存储连接到流程的连接器时可能会感到不舒服,而没有在图表上显示指定数据请求的步骤。一些设计人员将尝试将请求附加到流程和数据存储之间的连接器,将其标记为“请求”或“对某物的请求”,这肯定是不必要的。

请记住,数据流程图是为表示信息交换而设计的。数据流程图中的连接器用于表示数据,而不用于表示过程流,步骤或其他任何内容。当我们将以数据存储结尾的数据流标记为“请求”时,从字面上看,这意味着我们正在将请求作为数据传递到数据存储中。尽管在实现级别可能是这种情况,因为某些DBMS确实支持使用函数,这些函数会吸收一些值作为参数并返回结果,但是,在数据流程图中,我们倾向于将数据存储视为唯一的数据持有人没有任何处理能力。如果要对系统流或流程进行建模,则可以使用“活动图”或“ BPMN业务流程图”代替。如果要对数据存储的内部结构建模,可以使用Entity Relationship Diagram。

想要购买Visual Paradigm正版授权请点击【商城购买】,想了解更多产品信息请点击【咨询在线客服】

本文章转载自【慧都科技】evget欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,尊重他人劳动成果

猜你喜欢

转载自blog.51cto.com/14874181/2551561