BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

文章:过程组件模型——下一代工作流?

| 作者 Floyd Marinescu 关注 35 他的粉丝 ,译者 戴垚 关注 0 他的粉丝 发布于 2008年4月2日. 估计阅读时间: 2 分钟 | 都知道硅谷人工智能做的好,你知道 硅谷的运维技术 也值得参考吗?QCon上海带你探索其中的奥义

在这篇最新的InfoQ文章中,JBoss jBPM 的缔造人和领导者Tom Baeyens总结了工作流&BPM标准和工具的现态。在详细探讨了BPEL,BPMN和其他技术(如,编排、XPDL、BPDM、jPDL)之后,Tom指出:期望不懂技术的业务分析员通过画图来产生马上可用的软件的念头到了该抛弃的时候,将过程分析模型和过程执行模型分离的时机已经成熟。这种分离正是jBPM的基础(见过程虚拟机),Tom提出的主张和微软的工作流所采用的方法有颇多相似之处。

阅读全文:过程组件模型:下一代的工作流?

在进一步探讨将执行框架从过程框架中分离出来的时候,Tom解释说:

首先,可以观察到的是在同一活动组件框架上可以实现多个过程语言。每一个过程语言由多个活动类型组成。对于每一个活动类型,运行时行为可以用诸如Java或c#这样的通用编程语言实现。因此可执行过程语言就成为了一组活动类型的实现。这种活动组件最重要的部分是实现过程结构运行时行为的代码。但同时XML序列化,配置过程组件的设计窗体,持久化和许多其他部分都可能被包括在过程结构组件中。

很多其他BPM框架提供者,包括Sun中间件&标准大师Mark Hapner,都已经对此文发表了评论。

查看英文原文:Article: Process Component Models: The Next Generation In Workflow?
译者简介:戴垚,2000年计算机硕士毕业后一直从事软件开发管理工作,目前在一家大型外企担任开发部门经理。关心软件技术和相关工具的动态,深信技术的使用应以创造价值为根本。目前致力于SOA的研究,希望能对业已复杂的企业环境有所帮助。参与InfoQ中文站内容建设,请邮件至china-editorial@infoq.com

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

好文章 by 胡 伟红

不错,收藏下来慢慢读,有些长!:)

没看懂Tom的意思 by liu hying

将英文原文大体过了一遍,只看到他在提
process component model。但是这个东西不正是弥补analysis process models and executable process models gap 的好东西吗,为何说要放弃“让不懂技术的业务分析员通过画图来产生马上可用的软件的念头”呢?

阅读全文链接的有错误 by che shuai

链接的地址都是英文的

Re: 阅读全文链接的有错误 by Zhang James

INFOQ是不是还没有翻译完成?

Re: 阅读全文链接的有错误 by Jacky Li

sorry,我们编辑发布时候的问题,已经修复

Re: 没看懂Tom的意思 by 胡 键

运行时的东西过于技术化,当然应该由技术人员来负责。因为关注点的不同,直接叫BA来把所有事情搞定显然不切合实际。即使有了PCM,也只是改善了翻译和沟通的情况。就这篇文章看来,最终一种可能的形式是BA充当了类似开发中的设计者的角色;而技术人员则负责将其实现,类似开发中的开发者。

为什么持久化等待应该由java等编程语言完成? by Tseng Joseph

文中提到:“一个重要原因就是象Java这样的传统编程语言不支持可持久化的等待状态。”
我也曾从JBoss的架构师口中听到这段描述,我感觉很奇怪,为什么java语言需要支持持久化等待? 目前最流行的持久化,不就是DB或者文件么?这个职责应该是应用程序本身提供,或者一个通用的框架提供,没听说过哪个语言需要负责持久化的。大家有过这样的需求或期望吗?有人能解释一下这句话吗?

Re: 为什么持久化等待应该由java等编程语言完成? by 胡 键

这里的重点是“等待状态的持久化”,而非单纯的“持久化”。对于过程,至少有两个概念需要区分:过程定义和过程实例。过程定义即相当于类定义,是静态概念;过程实例即相当于类实例,是动态概念。一般的过程实例都会跨长时间段,比如几天或几周,这样等待状态的持久化问题就显得重要了。但是Java不会自动的将这些处于等待的过程实例的当前状态保存起来,需要流程引擎来完成。打个比方,你每次断电后开机,都得重新打开工具进行工作。但如果,OS支持持久化的话,应该会将断电关机瞬间的内存状况全部记下。下次开机时就重那一点开始。就像你休眠机器一样。(不知是否讲清楚,呵呵)

没太明白意思 by qian grid

前面的铺垫都看明白了,就是到了最关键的地方没太明白。TOM是说JBPM在业务建模和业务流程之间建立了个基础层,这个层完成了流程组件的定义工作。然后具体的过程语言再去实现它?我的理解对吗?如果对的话,JBPM是如何实现这点的呢?我简单用了一下JBOSS的TOOLS,好像他们也就是在每个流程单元中加了一些ACTION来完成时间的动作。没觉得多了什么?

Re: 没太明白意思 by 胡 键

关于这一点,你可以去看看JBPM的参考手册了解详情。

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

10 讨论

深度内容

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT