惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Y
Y Combinator Blog
MyScale Blog
MyScale Blog
Recent Announcements
Recent Announcements
酷 壳 – CoolShell
酷 壳 – CoolShell
GbyAI
GbyAI
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
N
Netflix TechBlog - Medium
V
V2EX
MongoDB | Blog
MongoDB | Blog
Microsoft Security Blog
Microsoft Security Blog
博客园 - 三生石上(FineUI控件)
Stack Overflow Blog
Stack Overflow Blog
U
Unit 42
B
Blog
Microsoft Azure Blog
Microsoft Azure Blog
博客园_首页
H
Help Net Security
D
DataBreaches.Net
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
阮一峰的网络日志
阮一峰的网络日志
T
The Blog of Author Tim Ferriss
C
Check Point Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报

博客园 - bobmazelin

Microsoft Robotics Developer Studio基础(一):前言 Microsoft Robotics Developer Studio beta4的大bug Microsoft Robotics Developer Studio4 Beta随想 最近动态记录 走入Microsoft Robotics Developer Studio世界 【工作流】工作流结构模式整理 【工作流】PE中的资源模式的实现方式 【讨论】【工作流】由资源模式中的“权限分配”想到资源结构 【PE】流程图对象以及事件驱动机制的介绍 【讨论】WF中的异常(错误)处理 【讨论】基于WF的流程结构 建立基于WF工作流模式库的设想 2008:再战Business Process Management System(BPMs) bobmazelin的流程管理系统介绍和概念性设计(三) bobmazelin的流程管理系统介绍和概念性设计(二) bobmazelin的流程管理系统介绍和概念性设计(一) AspectNet功能介绍(二) AspectNet功能介绍(一) 在(开发)流程系统之前
在Sequence模式中思考流程资源(数据)问题
bobmazelin · 2007-05-15 · via 博客园 - bobmazelin

Sequence模式是工作流模式中的基本模式,我在实现该模式时,意外遇到一个问题:
Sequence模式中两个活动之间是无条件流转的;如果你在活动中定义了该活动所需的资源就会遇到资源是否被满足的问题。
如果资源不被满足,该活动便无法进行,这样流程实例就会处于dead token了。
这个问题可以通过定义gateway来判断,但是在每个活动前加上gateway也太麻烦了吧?
另一个方法是当资源不被满足时定前一段活动执行失败,这样是不是太独断了?而且很可能上一活动的输出是满足的,这是流程设计的缺陷。
由此,我考虑这个问题可能没有完美的解,只能看实际情况变化,我总结一下我自己的实践:
1. 在流程engine中加入output和input资源(数据)的零界限判断,即它们必须>0;
2. 在流程设计器中加入流程资源View,以便用户观察流程的连续性并能判断出流程中哪些点可能出现资源不满足的情况;
3. 建议用户使用重要的业务资源(数据)时使用gateway;