- 浏览: 117801 次
- 来自: ...
文章分类
最新评论
一、简介
BusinessWare是一款企业应用集成(EAI)软件,更加注重“系统”间的交互,传统工作流只是它的一项普通功能而已;BusinessWare还是一款可扩展的软件,对于已知的未知的系统/协议,它提供可单独配置的部件(Connector/Proxy)来对接,因此,BusinessWare可以看作企业现有系统间的总线/程控交换机
二、组成
2.1 BusinessWare目前版本(4.3.x)由以下几个重要部分组成:
-
建模工具BME(BusinessWare Modeling Environment):
全程可视化,代码产生器,自动同步,调试、部署、运行...真是很强大 ,还可以动画显示模型运行过程 ;不过目前听说只有Windows和Solaris的版本,而且试用中发现新建一个project的菜单居然不在File--New中,而是放在"Project--Project Manager"中,真是令初次见面者一头雾水 ;当然,业务逻辑代码还是要自己写,需要有Programmer Reference
-
集成服务器(Integration Server)
是BW的运行时,负责执行BME建好的各种模型,并提供事务、安全、持久化等基础服务;Integration Server不是标准的JavaEE服务器,但能够与标准的JavaEE应用服务器进行双向交互(发送/接收等)
-
模型存储管理
使用了LDAP服务器来管理EAI模型;BME会将模型发布到LDAP中,而Integration Server将从LDAP取出模型信息并执行
-
管理监控界面
BusinessWare提供了基于Web的管理监控界面,并包括统计分析等功能
2.2 BusinessWare下一版本的重要变化:
-
建模工具BME(BusinessWare Modeling Environment)
下一版将基于Eclipse,会极大增加跨平台能力
-
集成服务器(Integration Server)
下一版BusinessWare的模型将可以直接部署、运行在标准JavaEE服务器中 ,现在的Integration Server中只有一小部分功能会作为一个运行时引擎的方式部署到JavaEE服务器中,而事务、安全、持久化等基础服务都将使用JavaEE服务器已经提供的功能,不再需要单独的JVM来运行Integration Server
-
模型存储管理
下一版本BME会将模型打包成标准的EAR包,直接部署在JavaEE服务器上,不再需要单独的LDAP服务器
三、模型与概念
3.1 BusinessWare中的几种基本模型:
-
集成模型(Integration Model):顶级模型(root model),是整个应用的集成模型,由代表各种外部系统和内部业务流程的Component组成,直接建模各种外部系统和内部业务流程之间的连接;Integration Model可以嵌套,称为Nested Integration Model,可在运行时动态连接到不同的实际子系统,这样可以使你分层的设计集成模型,隔离了复杂性,利于重用;Integeration Model体现的更多的是数据流,而不是控制流
-
流程模型(Process Model): 即企业的业务流程,包括全自动化的流程和需要人参与的流程,基本对应其它系统中的Workflow, 主要由state,action,transition等组成;不过在BusinessWare中,只有human interaction的Process Model才称为Workflow,而且它是符合WfMC规范的 ;Process Model出了建模数据流外,更多的体现了控制流
-
转换模型(Transformer Model): 对于数据类型转换这种常见任务的显式建模,通常用于将一个系统的输出,转换为令一个系统的输入;BME提供了可视化的方式来做这件事,可以在用连线表示将输入字段转换为哪个输出字段,并可以可视化的建立转换表达式,表达式可以使用ECMAScript和任意Java语法、类库;转换模型通常在流程模型中作为一个action来使用
3.2 另外BusinessWare中有一个很重要的“组件(Component)”的概念:
组件(Component):包含在Integration Model中,代表 各种外部系统和内部业务流程,它只是真正的SubSystem的 占位符 ,是一个 Logical Concept ,这样你的整个集成模型(Integration Model)就成了一个逻辑视图,独立与实际的物理子系统,使系统更加灵活的应对变化 ;并且你不需要在一张图上画出全部模型细节,可以使用单个Component来代表整个子模型,从而分层的表达模型
四、常见任务在BusinessWare中的解决方案
-
对现有系统或资源的集成,答案是Connector:
Connector是外部系统适配器,分两个方向:Source Connector和Target Connector;Connector对适配器显式建模,是EAI的关键;以前自己的系统把这种Connector建模为了自动型活动 ;BusinessWare带有几个基本的Connector,提供了对诸如file systems, email systems, Web servers, channels, 和queues的连接. 很多其它专用的Connector可以单独购买,如database connectors, SAP connectors, 和 Oracle Applications connectors. ;Project启动之后不会自动运行,需要最初的Connector或手工触发、注入事件
-
与现有对象调用、协议调用的对接,答案是Proxy:
Proxy是外部对象适配器,通常是远程过程调用的代理 ,如RMI,EJB,CORBA,WebService等;Proxy和Connector的区别是:Whereas connectors enable interaction between BusinessWare project components and external systems such as Oracle Applications and SAP, proxies enable interaction with external projects or software objects using specific protocols. BusinessWare提供了与RMI,CORBA,WebService等调用协议的对接
-
流程模型内不同action,state之间数据的共享,答案是BPO(Business Process Object):
BPO类似工作流中的相关数据,但比"相关数据"模型更清晰,更模块化
-
数据的持久化,答案是Persistent Store:
Persistent Store完全掩藏了建表语句,根据对象(通常是BPO)自动创建表,只需要指定连接信息即可;可以在各种存储机制中自由切换
-
异步通信,答案是Channel和Queue:
Channel和Queue是BusinessWare的消息队列,用于异步通信;Channel保证每个订阅者都会得到消息的一份拷贝,Queue则是先到先得;Channel与Queue的持久化由BusinessWare自己维护;对现有消息系统的集成,如IBM和MS的MQ,BusinessWare提供Connector来连接
-
子流程的复用、共享,答案是Project Module:
Project Module是共享的Project Library,类似编程语言中类库的概念,可以在不同项目中复用;应该超过 sub flow 的复用级别
-
如何定义模型中的数据类型,答案是Type:
BusinessWare提供了向导来建立自定义类型,或者从IDL文件和java文件中导入;BusinessWare中可以使用所有Java类型,其实BW的Type可以看作IDL和Java类型的合集,在BW内部定义了Type的存储形式,可以使用右键菜单等方式直接将*.idl,*.java转换为BW Type,BW Type也可以导出为IDL;而在编译时,BW的所有运行时代码都会先生成Java源代码,随后被编译为class,并打包成jar;BusinessWare中的Type可以看作元数据:“Operations, parameters, exceptions, business process objects (BPOs), and events are all examples of BusinessWare types. To enable BusinessWare to store, transport, and manipulate your data, you describe it to BusinessWare using types. In addition to a generic BPO, you can define specific BPOs that describe your data and operations.”
-
如何定义组件间的接口,答案是Port:
类似UML 2.0的Port,定义Component面向不同Client和Service的接口;Ports并不控制流程走向,只是提供可供调用的接口
五、结论
基本上,在开发EAI应用时,可以将BusinessWare看作Server Side的RAD(快速应用开发工具)
发表评论
-
The Object Primer
2004-12-11 11:21 5861,书名 被翻译成“ ... -
错误处理规范
2004-12-11 16:47 756错误处理规范 〇、概念澄清 概念 解释 错误 ... -
Java,误解为何如此之深
2005-08-24 13:50 592前几天被电话面试,问J ... -
Java:画蛇添足的编码规范
2005-09-02 13:13 606前几天公司培训编码规范: 第n条: ... -
synchronized : 规则, 推论与实践
2007-07-23 22:32 46314.3.Synchronization. Rule ... -
交互设计: 股市帮凶
2008-05-04 21:30 642同事 Y 在线操作股票时, 把"买入"点成 ... -
交互设计: 火车上的厕所
2008-05-26 17:17 606有人在动车组的厕所前等了很久, 直到乘务员路过说厕所是被锁住了 ... -
设计原则与模式: 案例介绍--CppUnit
2008-06-01 20:15 610设计原则与模式: 案例介绍--CppUnit CppUnit ... -
工作流:形参,实参,相关数据
2004-12-11 11:40 671关于形参,实参,相关数据 一、形参(FormalParame ... -
工作流:第一次发版,过程总结
2004-12-11 11:42 709交流 即时讨论:小组成员咫尺之遥,有问题立即提出并解决 ... -
工作流:第一次发版,设计总结
2004-12-11 11:43 610整体 面向接口:消息系统,持久系统等,其实现都是可替换 ... -
Vitria BusinessWare: 存储与访问安全
2006-03-26 15:45 746事实上,BusinessWare使用LDAP做为存储机制和 ... -
Vitria BusinessWare: 平台与软件总线
2006-04-01 12:59 838经过一段时间的使用 ... -
Vitria BusinessWare: Web Services
2006-04-01 14:30 739BusinessWare的Web Services ... -
Web Services:自洽,编码,交换模型
2006-04-01 16:02 6731, 自洽 以前曾经写过: 目前WebServi ... -
Web Services:WSDL 1.1 规范中的几个错误
2006-04-01 16:40 718读完了WSDL 1.1的规范,令人惊讶的是发现似乎例子中有几个 ... -
C++/CLI:被忽视的集成技术
2006-05-17 20:02 754十几行代码,就使一个重要的旧系统组件,完全融入了基于.Ne ... -
AJP/JK:异构Web平台的集成技术
2006-05-25 21:44 707Tomcat Connector 可以将Tomcat ... -
Vitria BusinessWare: 事件与端口
2006-05-27 17:24 656Event BusinessWare是一个事件驱动的系统 ... -
WS-Security Interoperability Issues: WebSphere, JBoss, Axis and .Net
2006-08-31 22:46 837检验了一下WS-Security的互操作情况,涉及到 ...
相关推荐
Workflow-An Introduction,英文版
本文将深入探讨“RLHF Workflow: From Reward Modeling to Online RLHF”的技术报告,该报告详细介绍了在线迭代强化学习从人类反馈(RLHF)的工作流程。RLHF作为一种新兴的学习范式,通过收集人类反馈来指导大型语言...
WorkFlow简化顺序调用方法之间的嵌套和耦合:轻松替换相互嵌套的方法之间的调用顺序增删改方便,提高代码简洁性和可读性、降低维护成本Installation:dependencies { implementation 'com.qw:workflow:0.0.4'}Usage:...
mt-workflow:基于 Gulp(v4.0)、高效、跨平台(Mac & Win)、可定制的前端工作流程.zip,A web developer workflow used by WeChat team based on Gulp, with cross-platform supported and solutions prepared.
PNJU工作流程Alfred工作流程以登录PNJU。 确保已安装Node.js /io.js。如何使用打开post.js文件并完成username和password 。截屏也可以看看相依性要求执照该应用程序是根据。
### 工作流管理概述:从过程建模到工作流自动化基础设施 #### 一、引言与背景 在当今全球化的商业环境中,企业面临着日益激烈的竞争压力,为了保持竞争力,企业必须降低成本、快速开发新产品和服务。...
$ npm install --global alfred-chrome-workflow 在/Users/<username>/Library/Application Support/Google/Chrome/<chrome>/上检查您的chrome_profile 。 默认值由Default设置。 如果chrome_profile不正确,您将...
Chapter 1 Introduction to Google Software Testing 1 Quality≠Test 5 Roles 6 Organizational Structure 8 Crawl, Walk, Run 10 Types of Tests 12 Chapter 2 The Software Engineer in Test 15 The Life of an ...
blender-threejs-工作流程使用gltf格式的示例Blender to Three.js工作流程使用: ThreeJS 0.110.x Webpack 4.41.x Babel 7.7.x Tween.js 18.4.x安装使用以下命令安装依赖项: npm install用法使用以下命令运行开发...
《Windows Workflow Foundation基础:WF入门》一书由Brian R. Myers撰写,是深入理解Windows Workflow Foundation(WF)的宝贵资源。WF是微软提供的一种技术框架,用于构建和执行业务流程和工作流应用,旨在简化应用...
Joget Workflow是一个开放源代码平台,可以轻松地为云和移动构建企业Web应用程序。 -构建成熟的应用程序,例如CRM,HR,医疗保健等-拖放表格,列表,UI-添加工作流以自动化流程-通过插件扩展-应用程序已针对移动设备...
sf_workflow 一个非常基本的博客应用程序,用于练习组件。安装使用composer install安装依赖项。 使用您的数据库信息编辑.env文件。 创建数据库: php bin/console doctrine:database:create 运行迁移: ...
SFLive-Paris2016-工作流程 组件的演示应用程序。 安装 composer install # edit the .env file bin/console doctrine:database:create bin/console doctrine:schema:update --force ...bin/console workflow:build:s
标题中的“alfred-chrome-incognito-workflow”指的是一个针对Alfred软件的特定工作流程,目的是在Mac操作系统中以Google Chrome浏览器的隐身模式(Incognito Mode)打开网页。Alfred是一款高效的应用启动器和生产力...
《SAP Business Workflow Introduction》是SAP内部提供的一份关于工作流系统的详细介绍,主要针对BC600课程。本文将深入探讨SAP Business Workflow的基本概念、功能、实施和最佳实践,帮助读者理解如何在企业环境中...
An html5 pages workflow. :) Generatored by Yeoman and Gulp. 使用说明 - 生成新项目 首先将项目clone到本地 命令行进入generator-html5目录link npm模块 $ cd h5workflow/generator-html5 命令行复制模块快捷方式...
【标题】:“h3workflow:工作流引擎” 在IT领域,工作流引擎是一种软件系统,用于自动化业务过程,实现组织内部或跨组织的工作流程管理。本文将深入探讨名为“h3workflow”的工作流程引擎,它基于JavaScript编程...