软件工程

本类阅读TOP10

·PHP4 + MYSQL + APACHE 在 WIN 系统下的安装、配置
·Linux 入门常用命令(1)
·Linux 入门常用命令(2)
·使用 DCPROMO/FORCEREMOVAL 命令强制将 Active Directory 域控制器降级
·DirectShow学习(八): CBaseRender类及相应Pin类的源代码分析
·基于ICE方式SIP信令穿透Symmetric NAT技术研究
·Windows 2003网络负载均衡的实现
·一网打尽Win十四种系统故障解决方法
·数百种 Windows 软件的免费替代品列表
·收藏---行百里半九十

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
关于工作流异常的研究

作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站

这一阵子在研究工作流理论中的异常,将心得拿出来和大家一起分享,并且希望大家多提宝贵意见。

1、工作流中的异常是不能和错误划等号的,异常只不过是正常的流程之外的流程,不一定都会成为错误,而且,在某些情况下,特别是流程正在向无法挽回的错误的方向进行的时候,我们要让系统抛出异常,从而使系统通过异常处理器和恢复机制回到正常的流程之中。
2、异常可以分为可以预见的异常和不可预见的异常。对于前一种,我们可以通过在设计过程分析、建立异常的模型来解决,并且,在实现的时候通过ECA(Event-Condition-Action)规则来实现对特定异常的自动处理。而对于后面的一种,处理起来就比较麻烦,在一些工作流管理系统中设置直接将其发给与用户交互的模块,让用户自己来选择如何进行处理。
3、对异常的处理有两个级别,一个是任务级别上的处理,另一个是工作流级别。
4、在任务级别上我们可以使用重试、设置副本,设置还原点三种方式来处理,但是我们应该看到,这三种方式的实现都是有一定的难度的。拿副本为例, 首先有不同的副本,就会造成资源上的浪费,我们不得不为每一个副本都分配一定的能够保证其正常运行的资源。其次,因为是副本,那么这个流程的完成是以其中任何一个完成为标准的,那么如果其中一个完成了之后,其它的流程都应该中止,否则就会出现问题,而在中止的时候,必定会产生另外的一个异常,而且,这个时候就涉及到对资源的回收问题。这也将是一个很难解决的问题。再次,创建了副本,那么客观上流程的数目就增多了,那么产生错误的几率不就也增大了吗?
由此看来,对于异常的处理,工作流还有许多值得研究的问题。
n



相关文章

相关软件