工作流架构分析与优化

原址:http://www.tonymarston.net/php-mysql/workflow.html#2010-05-01

基于工作流引擎的编程

导言
基于Petri网络的工作流建模
- 基于Petri网络的对象
- 基于Petri网络的触发器
- 基于Petri网络的路由
- 基于Petri网络的分隔与聚合
一个简单的工作流进程
数据库设计
- 工作流关系图
- WORKFLOW 表
- PLACE 表
- TRANSITION 表
- ARC 表
- CASE 表
- TOKEN 表
- WORKITEM 表
维护程序列表
- Processes
- Places
- Transitions
- Arcs
- Cases
- Tokens
- Workitems
工作引擎
- 创建一个新的工作实例
- 更新一个已存在的实例
- 创建一个令牌的效果
结论
常见问题 (FAQ)
修改信息记录

导言
一个应用软件包括多个不同的'tasks', 'transactions', 'programs' 或者 'modules', 每一个组件都有一定的功能. 有时特殊任务的处理依赖于一个或多个其它任务来完成更高层次的流程.例如, 任务'接收用户订单'后会执行'收费', '打包订单' 和 '发货'. 这个进程可能有一个名称象'订单处理', 但是显而意见它不能够被单任务处理并且不得不在其内部组件中停止下来.
没有工作流组件系统各部分功能不得不手动的处理,这样错误随时随地可能发生:忘记了收费或者发货,这并不是处理业务的好办法.
在工作流系统中,可以把'订单处理'定义成一个工作流进程,由'收费','打包订单'和'发货'组成.当一个工作流进程实例(instance or case) 被创建,工作流引擎会负责按顺序处理每一个功能组件.这些功能组件可以自动执行,或者直接放入某人的工作列表中.

什么是工作流系统?官方的定义如下:

你可能感兴趣的:(编程,工作,mysql,workflow,网络应用)