图系列:流程图的数据模型

来源:互联网 发布:坤迪软件 编辑:程序博客网 时间:2024/05/18 08:53

 流程图的一种理解    

      以特定的图形符号加上说明,表达算法的图,被称为流程图或框图。

      例如,一张流程图能够成为解释某个零件的制造工序,甚至组织决策制定程序的方式之一。这些过程的各个阶段均用图形块表示,不同图形块之间以箭头相连,代表它们在系统内的流动方向。下一步何去何从,要取决于上一步的结果,典型做法是用“是”或“否”的逻辑分支加以判断。

   

       可以这样理解, 流程图是由一些图框和流程线组成的,其中图框表示各种操作的类型(事件),图框中的文字与符号表示操作的内容(发起者的属性及事件参数),流程线表示事件的先后次序(流转的条件).

       综上所述我们可以用数据结构中的带权有向图来描述流程图的数据模型    

流程图的一种数据库设计

      有上面的结论可以知道 流程图就是带权有向图,这样就给了我们一条思路,可以用图的存储结构(可以参考我的上一篇博文)去表示流程图,我采用的是邻接矩阵表示法。

      可以这么理解流程图由节点(Activity)、事件(Event)、线(Line)组成,还有流程(Process)

     流程(Process)表:

序号

列名

数据类型

长度

小数位

标识

主键

允许空

默认值

说明

1

ID

int

4

0

2

Code

nvarchar

50

0

3

CNName

nvarchar

50

0

4

ENName

nvarchar

50

0

5

Description

nvarchar

0

0

    

节点(Activity)表:

序号

列名

数据类型

长度

小数位

标识

主键

允许空

默认值

说明

1

ID

int

4

0

2

ProcID

int

4

0

3

Name

nvarchar

200

0

4

Descr

nvarchar

0

0

事件(Event)表

序号

列名

数据类型

长度

小数位

标识

主键

允许空

默认值

说明

1

ID

int

4

0

2

ProcID

int

4

0

3

ActID

int

4

0

4

Name

nvarchar

50

0

线(Line)表:

序号

列名

数据类型

长度

小数位

标识

主键

允许空

默认值

说明

1

ID

int

4

0

2

ProcID

int

4

0

3

Name

nvarchar

200

0

4

Descr

nvarchar

0

0

5

StartID

int

4

0

6

FinishID

int

4

0

7

StartRlue

nvarchar

200

0

流程图的一种架构设计

     由上的流程图数据库设计,可以有一种思路进行流程管理系统的架构设计,结合有向图进行算法设计(广度优先搜索),进行基于WF(jbpm)流程系统设计。

     流程管理系统涉及到其他许多方面,各节点操作人、各节点的执行规则、每个流程实例的数据。。。。

     这里仅提供一种思路、一种见解,也是对个人思维 的梳理,以达抛砖引玉之效。

 

 

  

 

 

原创粉丝点击