2011-05-30 80 views
-1


我搜索一个架构来实现与java的一个egovernment解决方案。我想可能的解决方案呈现以下特点:什么架构提供模块化BPM解决方案?

  • 基于Java(JSF,春,JPA)
  • 模块化结构
  • 强烈围绕BPM设计 过程
  • 隔离工作流引擎从用户 任务形式(为了提供容错 )

我发现了几种bpm替代品,如jB PM,Activiti,Intalio或Enhydra。到目前为止,我喜欢Activiti方法,但是我没有找到适合模块化体系结构和用户任务形式隔离的解决方案。也许,一个多模块maven项目(即每个jar包模块)或OSGi选项都可以,但我不知道如何连接所有这些组件。

你会在我的追求中推荐我什么?

非常预先感谢

回答

-1

Intalio在单独的Web应用程序中运行用户任务。它可以部署到与运行时引擎不同的服务器上。

-1

我想你可能会对Bonita BPM即将发布的版本7感兴趣。

引擎构思是面向服务的,所有实现都是使用Spring注入的。持久化是由Hibernate直接处理的(不是JPA),而是使用JTA。

架构分为三个主要部分组成:

  • 工作室:为BPMN流程建模开发环境
  • UI设计师:定义表单和页面将用于流程执行以及应用程序创建。这是一个在此使用的自定义AngularJS解决方案,但您可以使用Engine API所需的任何其他解决方案。
  • Portal:用于管理和最终用户操作的Web界面。
  • 引擎:使用Studio实际执行流程定义构建的组件。 Engine使用REST或Java客户端库提供一组可用的API。

Engine是解决方案的核心,Portal使用Engine API构建它的顶部。

流程定义实际上在流程和步骤级别声明一组合约,以定义表单必须提供哪些数据以启动新流程实例或执行任务。所以我们在这里有一个松散耦合的设计。