InfoQ

新闻

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

作者 Floyd Marinescu 译者 戴垚 发布于 2008年4月1日 上午2时35分

社区
Architecture,
SOA,
Java
主题
业务流程管理,
工作流/业务流程管理,
业务流程建模
标签
BPEL,
WS-BPEL,
建模工具

在这篇最新的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
好文章 发表人 weihong hu 发表于 2008年4月1日 下午8时48分
没看懂Tom的意思 发表人 hying liu 发表于 2008年4月1日 下午10时4分
Re: 没看懂Tom的意思 发表人 gem fox 发表于 2008年4月2日 上午1时27分
阅读全文链接的有错误 发表人 shuai che 发表于 2008年4月2日 上午12时3分
Re: 阅读全文链接的有错误 发表人 James Zhang 发表于 2008年4月2日 上午12时26分
Re: 阅读全文链接的有错误 发表人 凉粉 小刀 发表于 2008年4月2日 上午12时45分
为什么持久化等待应该由java等编程语言完成? 发表人 Joseph Tseng 发表于 2008年4月3日 下午1时14分
Re: 为什么持久化等待应该由java等编程语言完成? 发表人 gem fox 发表于 2008年4月5日 上午6时0分
没太明白意思 发表人 grid qian 发表于 2008年4月8日 下午10时16分
Re: 没太明白意思 发表人 gem fox 发表于 2008年4月11日 上午1时16分
  1. 返回顶部

    好文章

    2008年4月1日 下午8时48分 发表人 weihong hu

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

  2. 返回顶部

    没看懂Tom的意思

    2008年4月1日 下午10时4分 发表人 hying liu

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

  3. 返回顶部

    阅读全文链接的有错误

    2008年4月2日 上午12时3分 发表人 shuai che

    链接的地址都是英文的

  4. 返回顶部

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

    2008年4月2日 上午12时26分 发表人 James Zhang

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

  5. 返回顶部

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

    2008年4月2日 上午12时45分 发表人 凉粉 小刀

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

  6. 返回顶部

    Re: 没看懂Tom的意思

    2008年4月2日 上午1时27分 发表人 gem fox

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

  7. 返回顶部

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

    2008年4月3日 下午1时14分 发表人 Joseph Tseng

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

  8. 返回顶部

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

    2008年4月5日 上午6时0分 发表人 gem fox

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

  9. 返回顶部

    没太明白意思

    2008年4月8日 下午10时16分 发表人 grid qian

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

  10. 返回顶部

    Re: 没太明白意思

    2008年4月11日 上午1时16分 发表人 gem fox

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

深度内容

和Google互补的搜索引擎Wolfram|Alpha

Wolfram|Alpha与Google究竟是什么关系,Wolfram|Alpha自己是如何定位的?Wolfram|Alaph在多大程度上是语义网搜索呢?InfoQ中文站就等等这些问题采访了Wolfram研究公司中国区商务经理王翔。

SOA契约成熟度模型

本文说明了所推荐的契约版本管理设计策略是如何与SOA成熟度模型发生联系的。文章目的是为实现版本管理和可组合性提供一个路线图。

数据服务简介

Vijay Narayanan在这篇文章中对数据服务的几个方面进行了介绍,它们都是SOA实践者和数据架构师感兴趣的内容。本文对数据服务的几个方面进行了介绍,包括需求定义,基本原理和好处、范围、开发以及消费模式。

分块云计算

在本文中,Jimmy Nilsson描述了一种他在过去数年间观察到的一种正在缓慢成长的架构风格,他把这种风格称为“分块云计算”。

豆瓣网技术架构变迁

罗马不是一天建成的,豆瓣的技术架构也是随着用户规模的增长一直在持续变化中。在本次演讲中,豆瓣的首席架构师洪强宁将与大家一起分享从上线时的单台服务器架构开始一直到现在的豆瓣架构变迁历程。

融合思想:深入探索S#arp架构

Billy McCafferty展示了S#arp架构,它在ASP.NET MVC框架的基础上,荟萃了当今的最佳实践,应用在ASP.NET Web应用程序的架构设计中。

王雷谈开源以及新兴市场计划

中国作为新兴市场中的新兴市场,是Sun在美国之外实施SSE(SUN Startup Essentials)项目重点关注的地区。在QCon Beijing 2009期间,InfoQ中文站有幸对此项目的负责人王雷先生进行了采访,探讨了关于开源、新兴市场、SSE等话题。

使用HTML5构建下一代的Web Form

HTML5 是由 WHATWG发起的,最开始的名称叫做Web Application 1.0,而后这个标准吸纳了Web Forms 2.0的标准,并一同被W3C组织所采用,合并成为下一代的HTML5标准。