本篇将要探讨,目前有哪些标准与主导的厂商阵营?这些厂商阵营如何既结盟又竞争?又谁能一统江湖而成市场最大赢家?
BPM 与 SOA
BPM 藉由明确表式的流程定义将耦合松散的一群独立服务串联成新的商业流程,并让不同的 BPMS 能相互沟通与执行企业流程。因此标准流程定义扮演着 BPMS 技术中的核心角色。
流程定义语言是一种正规 (Formal) 语言,可以将企业各种流程表示成一种可执行流程 (Executable Process) 形式的正规模型。
由于 BPM 扩展了 Web Services 的应用,所以能乘驾在巨大的 Web Services 发展浪潮御风而上。 BPM 的相关标准大都用来定义 BPM 和 Web Service 如何整合与部署以达成企业任务。多家软件大厂和标准组织都架构在 Web Services 相关标准的基础上,也就是说,这些标准都延伸了 XML 、 SOAP 、 WSDL 、和 UDDI 几项技术规格。
目前冒出的 BPM 相关标准为数不少,大家较为熟悉的有 WfMC's XPDL (XML-based Process Definition Language) 、 BPMI's BPML (Business Process Modeling Language) 、还有 ebXML's BPSS (Business Process Specification Schema) 。除此之外,还有由厂商结盟的阵营,如 BEA 、 Microsoft 、与 IBM 联合制定的 BPEL4WS (Business Process Execution Language for Web Services ,简称 BPEL) ,以及由 Sun Microsystems, SAP, Oracle, Italio 与其它公司共同制定的 WSCI (Web Service Choreography Interface ,网络服务编排接口 ) 。
这些标准都是利用活动 (Activity) 作为流程定义之基本组件,每一个活动伴随一个实体相关数据 (Instant-Relevant Data) ,作为流程传递的逻辑 (Routing Logic) 评估条件,在 BPML 称 property , XPDL 称 Workflow-relevant data , BPEL 称 Container 。
XPDL 标准着重在工作分配 (Distribution) 的相关议题,例如如何指定活动执行所须的资源与应用程序。 BPML 标准着重在定义 Web Service 的重要议题,如支持交易 (Transactions) 与例外处理,定义特定讯息交换与事件处置的活动型态。 BPEL 标准的重点与 BPML 相类似。 WSCI 标准着重在 Web Service 的 Choreography ,像是服务接口的行为。 BPSS 以 ebXML 建议的 UMM (UN/CEFACT Modeling Methodology, 模型化方法论 ) 为基础,以便支持在企业间以各种交易行为 (Business Transaction) 组合成所谓的企业协同 (Business Collaboration) 。
标准:群雄称霸 西瓜偎大边
IT 产业中,大者恒大是赢得业界标准地位的不变定律。百家争鸣的战国时代中,大家都希望成为产业的主流标准,因此为了获得最后胜利,小型的标准组织会渐渐去依附大的国际标准组织并争取这些组织的认可。透过大组织的力量将小组织建置的标准推行全世界,将可吸引更多的使用者、独霸市场形成国际认可标准,而不再仅是规格。
例如,微软与 IBM 各自推出流程标准 XLANG 与 WSFL (Web Service Flow Language) 。但在 2002 年两家大厂合作共同推出新规格 BPEL4WS ,并且向 OASIS 标准组织提出提案报告,最后也获得 OASIS 认可的标准。 Sun Micro 及 Oracle 合作的厂商阵营为了推动 WSCI ,将这个规格标准送往 W 3C ,并都参加了 W 3C 的 Choreography 工作小组。同时 BPMI 组织也向正在研究企业流程标准的 OMG 提案,希望 OMG 直接采纳它们制定的标准或是与 OMG 即将订出的标准可以相对照。
从许多迹象显示,目前显然是 BPEL 较占上风。例如,今年 WfMC 在意大利举行的技术大会中,与会厂商谈论的聚焦从去年的 BPMN (Business Process Modeling Notation by BPMI) 转移到 BPEL 。今年 SAP 和 Intalio 在支持 WSCI 之外,也决定支持 OASIS 的 BPEL 。包括 Siebel 在内的 20 几家厂商也计划采纳 BPEL 。此外, Oracle 今年在 Java One 发表了以 BPEL 为基础的流程模型化工具 (Modeling Tool) 以及工作流程自动化软件。
多方压宝?大和解?
同时我们也可以观察到一些有趣的现象:厂商同时在不同的联盟支持两个不兼容的的标准。所以,越来越多的的 BPM 产品都可以支持多个企业流程语言标准,以避免让其产品在一群复杂且自成一派的标准中成为孤岛。
不过这也不是无解问题,因为各阵营也出现大和解之势,寻求标准间之互补性与互通性,让差异减至最小,同时避免出现不兼容的两套标准。像是今年升阳和甲骨文借着参加 OASIS BPEL 的会议,试图推动 W 3C 工作小组和 OASIS 之间的合作,解决两个重复的标准。甲骨文已经正式加入 OASIS BPEL 技术委员会,升阳也有意加入技术委员会。 IBM 、 Oracle 、 BEA 、 Sun Microsystems 同为 WfMC 及 BPMI 会员,但 IBM 、 BEA 与微软却也积极推动 BPEL 。
到最后,哪一个 BPM 标准会胜出还很难说,虽然 BPEL 目前较具有冠军相,不过我相信还需要一番较劲。
BPM 标准涵盖的范围相当广泛,所涵盖的 BPM 生命周期也不尽相同。彼此之间有些重迭、又有些相关分类架构,如何清楚了解这些标准用途、定位、与跟 Web Service 标准之关系?请见下回分解。