UML软件工程组织

J2EE标准下BPR集成平台的实现
AMT研究院 吴清漪    
键词 企业业务流程重组;集成平台;Java 2 平台企业版

随着贸易壁垒的消除,世界范围内的市场竞争日益激烈,如何使企业在成本、质量、服务和速度等方面取得显著的改善,最大限度地适应以顾客(Customer)、竞争(Competition)、变化(Change)为特征的现代企业经营环境,在全球的竞争中立于不败之地成为企业管理的首要问题[1]。因此,BPR(Business Process Reengineering, 企业业务流程重组)作为一种全新的管理理念应运而生。

虽然BPR涉及观念、流程、组织等诸多因素,但其最本质、最关键的内容还在于业务流程(process)本身的简化和集成。业务流程(process)本身的简化和集成决不是对现有的业务流程简单的进行计算机化,BPR强调的是如何将企业的各环节通过业务流程的重组组成一个有机的整体,使之成为一个具有共同目标的系统,实现资源的充分共享,从而达到部门之间和企业之间的有效协调。因此,在对企业业务流程进行建模、仿真和优化的基础之上,以信息技术为核心,开发一个分布开放式、集成化的BPR集成平台,达到数据和信息的充分共享,显著提高企业的竞争力已成为当前BPR的研究重点。

目前,对BPR的研究方兴未艾,BPR已成为企业管理人员和广大计算机人员共同关心的问题。近年来,Java的兴起,给WEB的发展带来了新的契机,尤其是,1999年SUN公司J2EE标准的提出,因其具有跨平台的可操作性、可扩展性、可移植性、安全性好和业界广泛的支持,为提出一种新的BPR集成平台提供了可能。文章结合当今IT领域最流行的J2EE标准[2],对于以J2EE标准作为企业流程改造的网络技术基础,并在此基础上建立BPR集成平台进行了研究和探讨。

1   BPR集成平台

BPR的集成平台实质是在对企业业务流程的建模、仿真和优化的基础上,以信息技术为核心,建立一个分布开放式、集成化的数据环境,把不同部门的数据和信息集成起来,达到数据和信息的充分共享,显著提高企业的竞争力。

目前,国内外的一些学者对BPR集成平台的构建及其在具体企业中的实施应用也进行了深入的一些研究,但据资料显示,在美国和欧洲有70%的企业的BPR计划都是以失败而告终的。分析原因,大体可分为管理资源不足,巨额投资回收缓慢或无法收回,改造持续时间长,信息技术能力不足,业务流程确认困难,企业规划与计划的制定困难,企业员工心理抵制等几个方面。其中信息技术带来了时代性的改变,是BPR的诱发因子,但同时也是实施BPR的限制因子。旧有的信息技术不能全面支持BPR的实施是问题的瓶颈之一。

分析旧的企业信息系统结构的底层——传统网络应用技术不难看出:基于传统网络技术之上的BPR集成平台多采用主从方式或两层结构,即一台主机外挂多台终端,终端直接运行主机上的业务逻辑,并将数据保存到主机上;或者是前台(PC机)采用其他工具(如Powerbuilder)来编写业务逻辑,进行数据库的I/O操作,并去访问后台的数据库,最终将数据保存到主机上,也就是Client/Server结构。

在传统网络技术之上建立的BPR集成平台虽然在开发的初期能够很快构建起应用,但随着其系统越来越复杂,传统网络技术的缺点就变得很明显:

(1) 传统网络应用技术缺乏柔性。企业处在不断变化的竞争环境中,这种变化反映到企业内部,必然要求企业的经营模式或流程作出相应的变化以适应新的竞争, 就是说BPR的改造是动态的过程,网络拓扑及网络上的应用在保持相对稳定的基础上必须有足够的灵活性。传统网络里的改动常常需要企业多方面的共同运作,更换系统导致的工作停顿将使企业蒙受巨大损失。传统网络应用技术对于这种动态要求已无法适应。

(2) 传统网络应用技术缺乏开放性。在当今全球化经济环境中,从事企业流程的改造不能局限于单个企业,必须具备系统思考与全局视野。 从供应链的角度来重构企业流程,必须增强企业的开放性,将企业流程和整个供应链流程整合为一体。传统企业网络大都要求相同平台,跨企业的交流从硬件及软件方面都相当困难。

(3) 传统网络覆盖范围有限,与Internet网连接困难,遗失商机。在买方市场的今天,顾客导向是商家的信条,而通过网络实时掌握市场动向, 收集第一手的顾客数据无疑是快捷准确的有效手段。局限于企业内部的传统网络覆盖范围有限,显然无法胜任。随着信息技术的普及,Internet网正在成为新的销售领域,网上业务显示了巨大潜力, 是商家必争之地。 企业要利用Internet的资源,而运用传统网络应用技术实现对Internet网的无缝连接有着先天不足,直接导致商机流失。

(4) 传统网络应用技术难以支持跨平台的系统集成。系统集成是企业提高竞争力的必经之路。许多企业已经构建了内部网,基于传统网络应用技术的集成首先面临的难题是跨平台的应用。

通过以上分析,可以认为传统网络应用技术已经制约了BPR的实施与发展,BPR迫切需要新的网络技术的全面支持。那么随着当前IT领域最流行的J2EE标准的诞生及推广,以 J2EE标准作为企业流程改造的网络技术基础,并在此基础上建立的BPR集成平台,克服了传统网络应用技术的制约,为BPR的顺利实施奠定了基础。

2   J2EE标准

2.1  J2EE
Java企业级计算平台,Java 2 平台企业版[2](Java 2 Platform Enterprise Edition,J2EE)实质上是一个分布式的服务器应用程序设计环境,它提供了基于组件的,以服务器为中心的多层应用体系结构,为企业应用系统提供了一个具有高度的可移植性和兼容性、安全的平台。J2EE的多层体系结构的设计特点极大的简化了开发、配置和维护企业应用的过程,它最大的优点就在于将企业的业务逻辑同系统服务和用户接口分开,放在它们之间的中间层。它提供了一系列的底层服务,如事务管理、缓冲池等,使得开发者能够将精力集中于企业的业务逻辑,而无需过多的关心与业务逻辑不太相干的系统环境等。由于采用多层结构,系统中同时会有多台服务器在工作,这样不仅能提高系统的整体运行效率,而且一旦某一台服务器出现故障,应用程序会自动转移到另一台服务器上接着运行,这就有效的保障了系统整体运行的可靠性。

2. 2  J2EE的基本体系结构

J2EE的基本体系结构如图1所示。

从图1中我们可以看出,J2EE的基本体系结构[2、3、4、5]由客户层、WEB层、应用层和数据层组成。Web Brower 和Java client组成客户层,用于显示用户界面。Web Container存在于WEB服务器上,为WEB层;EJB Container(Enterprise JavaBeans Container)存在于应用程序服务器上,为应用层。WEB层和应用层合在一起组成了J2EE体系结构的中间层,用以完成企业计算的事务逻辑。数据层则是传统的大型数据库服务器。具体分析如下:

(1) 客户层是应用程序的显示部分,其主要功能是负责人机交互:显示美观友好的界面,处理用户输入,进行输入数据校验,请求服务器的服务,显示由服务器端返回的结果。有两类客户:基于Web Brower 的客户调用Servlet / JSP (Servlet/Java Server Pages) 处理数据;纯Java客户,可通过JNDI(Java Naming Directory Interface)直接访问EJB或数据库。

(2) WEB层由JSP 、Servlet 和Java Beans组件构成,存在于WEB服务器中,代表服务器端处理的显示逻辑。WEB层的功能是当用户浏览器从WEB 服务器上请求JSP文件时,WEB 服务器响应该HTTP请求进行简单处理,再调用EJB进行商业逻辑处理,将结果组织成HTML形式发送回浏览器,还可以通过JDBC(Java Database Connectivity)直接访问后台数据库系统。(JSP技术是J2EE标准中一项重要的技术,它将JAVA和HTML语言结合起来为客户提供一个可支持跨平台及跨WEB服务器的动态网页页面,JSP可以调用EJB从而访问数据库。JSP最大的优点就在于它将网页页面的动态内容同它的表示层分开,也就是说,开发者在修改网页内容时,丝毫不会对浏览器端产生影响。)

(3) 应用层用EJB封装应用领域的业务逻辑。EJB Container存在于应用程序服务器上,为应用层。J2EE使用EJB Container 作为EJB组件的部署环境,在EJB Container中提供了分布式计算中组件需要的所有服务,例如组件生命周期的管理、数据库连接的管理、分布式事务管理、组件的命名服务、自动容错以及负载的自动均衡能力等。实现事务逻辑的EJB组件可以更加高效的运行在应用程序服务器中,支持多客户端的访问,HTTP 的客户端可先向运行在Web Container 上的Java Servlet 或JSP 发出请求, 在JSP 中嵌入的Java代码调用运行在EJB Container中的EJB组件, 以实现复杂的事务逻辑,而其他的客户端可通过RMI-IIOP(Remote Method Invocation-Internet Inter OPB Protocol) 直接访问运行在EJB Container中的EJB组件。

(4) 数据层则是传统的大型数据库服务器。包括数据库系统、事务处理和其他遗留信息系统。

最终,客户在客户端通过WEB浏览器等方式访问位于中间层的WEB服务器,WEB服务器响应该请求,进行简单处理,再调用位于应用程序服务器中的EJB去访问和操纵后台的数据库服务器,用以完成复杂的商业逻辑。

2. 3  J2EE体系结构的优点
J2EE体系结构的优点在于[2]:
(1) 可移植性强。 J2EE计算平台支持java语言,使得基于J2EE标准开发的应用具有java语言所特有的与平台无关性,一套程序可以适用于多种平台,保证了系统可以跨平台的移植。
(2) 可维护性强。  在J2EE的这种体系结构下, 事务处理逻辑组件集中放置在应用功能服务器上,这将使系统维护变得简单、容易。当系统的事务处理逻辑发生变化时,只需更新应用功能服务器上的事务处理逻辑组件即可,而与客户机端无关,避免了客户端应用程序的版本控制和更新的困难。
(3) 安全性强。   由于在客户机和数据库服务器之间插入了应用功能服务器,使两者不直接相联系,并且系统的事务处理逻辑组件在应用功能服务器上,便于集中控制,这样既防止了非法侵入数据库,同时又防止了用户对系统的破坏。
(4) 灵活性强。J2EE体系结构各层次之间保持相对独立,当其中某一层因需要作出修改时,其他各层不受影响,这种软件独立性使得系统的改进、升级变得极为灵活。
(5) 简化开发。J2EE体系结构各层次之间在逻辑上保持相对独立,在系统开发期间,各层的开发可以并行进行,又由于J2EE采用了组件技术,许多模块可以被重用 ,这样大大节约了开发时间,缩短了系统的开发周期,提高了效率。

3   基于J2EE标准的BPR集成平台的实现

3. 1  BPR集成平台的功能

BPR集成平台的功能如图2所示[6]。

图2     BPR集成平台功能图

BPR集成平台的功能主要包括:建模模块、仿真及评价模块、优化及辅助决策模块、流程管理模块、电子会议及通信模块。具体功能分析如下:

建模模块――采用基于高级 Petri网的建模方法对于企业业务流程进行建模,其主要功能包括:定义库所、变迁、托肯等各种模型元素,进行系统资源模型的搭建和管理,进行托肯库模型的搭建和管理等等。

仿真及评价模块――采用离散事件仿真(DES,Discrete Event Simulation)分析方法对已建好的流程进行仿真运算,并从托肯、变迁、资源、模型4个方面给出可辅助进行流程优化的量化参数,以及它们的变化趋势,从而为下一步优化奠定基础。

优化及辅助决策模块――对于得出的流程的仿真结果和量化参数,从对象优化和结构优化两个层次进行优化,以得出较优的模型,为决策者提供改进意见以辅助其作出决策,从而实现系统运作的合理化、高效化、提高系统的整体效益。

流程管理模块――对于企业中的产品开发流程、生产流程、销售流程、采购流程、服务流程等流程模型、流程属性和流程描述进行修改、存储、调用等管理。

电子会议及通信模块――提供基于WEB的电子邮件服务和电子协调板,提供决策成员之间的在线双向交流,以实现信息和数据的充分共享,充分发挥团队合作的优势。

3. 2  BPR集成平台体系结构的实现

基于J2EE标准的BPR集成平台的体系结构如图3所示。

其各组成部分如下:

 客户层――在本系统中是WEB浏览器。

 中间层――是应用程序服务器,主要由3部分组成:
(1) WEB层即Web Container,位于WEB服务器上。由于考虑到JSP能够嵌入到HTML中,开发容易和产生的用户界面灵活等优点,故本系统采用JSP实现用户界面。主要产生的用户界面包括:企业业务流程的描述表单,库所、变迁、托肯的描述表单,系统资源模型的描述表单,流程显示结果界面,反馈信息界面等等。
(2) EJB层即EJB Container,位于EJB服务器上。系统事务逻辑和规则都在这里实现,其EJB组件包括会话EJB和实体EJB。主要实现的事务逻辑包括:企业业务流程的建模、仿真及评价、优化及辅助决策、流程管理、电子会议及通信等等。
(3) 数据库连接。EJB Container的实体EJB是通过数据库连接和数据库管理系统交互信息的,对于不同的数据库系统,其访问的形式是不同的;但是通过标准的JDBC-ODBC(Open Database Connectivity)接口来访问数据库,可使系统具有内含很强的扩展性。

数据层――是数据库服务器,其上的数据包含:企业业务流程的流程模型、流程属性和流程描述表单,库所、变迁、托肯及系统资源模型的描述表单,仿真及优化的结果和评价,辅助决策建议等等。

3. 3  BPR集成平台的具体实现

比如对BPR集成平台“已有采购流程优化结果的查询”功能。

其流程的实现过程如下:

当用户登陆WEB浏览器后,WEB服务器提供一个HTML表单来获得采购流程的流程模型、流程属性和流程描述,库所、变迁、托肯及系统资源模型的描述等等信息,当该HTML表单提交时调用一个servlet,该servlet代码充当应用程序控制器角色,负责激活应用程序服务器中的EJB进行事务逻辑处理。EJB一方面对于企业的采购流程进行仿真及优化分析,并把仿真优化后的采购流程及分析、评价结果以HTML的格式发送回客户端显示,另一方面把获得的采购流程的流程模型、流程属性和流程描述表单,库所、变迁、托肯及系统资源模型的描述表单,以及仿真及优化的结果和评价,辅助决策建议等等存入数据库服务器中,以便将来的查询。

其流程的软件实现主要在中间层上,包括两部分:

(1) 用户界面生成
用户界面生成主要包括以下几个JSP和JavaBean:
·Login.jsp和LoginBean.java        实现了用户的登陆界面
·Regester.jsp和RegesterBean.java  实现了用户的登记界面
·Detail.jsp和DetailBean.java      实现了采购流程的流程描述表单界面
·Token.jsp和TokenBean.java        实现了采购流程的托肯、库所、变迁的描述表单界面
·Resource.jsp和ResourceBean.java  实现了采购流程的资源模型的描述表单界面
·Results.jsp和ResultsBean.java    实现了采购流程的仿真、优化及评价结果的反馈界面

每个JSP主要实现的是用户界面的生成,同时利用自己的JavaBean完成一定的业务功能。更重要是,作为EJB的客户端,通过调用EJB的远程方法实现复杂的业务处理逻辑。现以“用户登陆界面”的举例来说明。

Login.jsp的部分关键代码如下:
<jsp:UseBean id=“login” class=“pady.LoginBean” scope=“session”/>
<jsp:setProperty name=“login” property=“*”/>
<%
int i=0;
i=Login.LoginPass( );
if (i= =1){
System.out.println( “正确” );
%>
<jsp:forward page=“Detail.jsp”/>
<% }
elseif=(i= =2)
{
Login.setUser(null);
Login.setPass(null);
%>
该部分代码主要调用JavaBean:LoginBean.java来实现。

(2) 业务处理逻辑

 业务处理逻辑主要由EJB组件实现,包括以下EJB组件:
·UserBean               把包含用户信息的实体Bean和用户信息库联系
·ProcessSimulateBean     对采购流程进行仿真及评价,是一个实体Bean
·ProcessReengineerBean  对采购流程进行优化及辅助决策,是一个实体Bean
·InformationBean        对采购流程的流程描述、托肯、库所、变迁、资源模型的描述的存储,
                           实体Bean和流程管理信息库联系
·ResultsBean            对采购流程的仿真及优化结果的存储,实体Bean和流程管理信息库
                                联系
                          
每个EJB完成一定的业务逻辑功能,现以ResultsBean为例简要介绍一下EJB业务逻辑处理能力。
其Home接口代码如下:
public interface ResultsHome extends EJBHome
{
public Process creat (String user)
throws RemoteException,CreatException;
}
    
     事务处理的方法主要在Remote接口中实现:
     public interface Results extends EJBObject
    {
     public String ProcessSimulate( )
     throws RemoteException;
     public String ProcessReengineer( )
     throws RemoteException;
     ....
     }

我们可以看出,在接口中实现的方法解决了某个登陆用户的对采购流程的仿真及优化结果存储的业务处理。

本BPR集成平台在WEB层和应用层中考虑采用JSP+Servlet+EJB的方式进行开发。J2EE开发平台采用Java 2 SDK Enterprise Edition,网络操作系统采用Windows NT 4.0, WEB服务器采用iplanet Web Server, 应用程序服务器采用BEA Weblogic Application Server 6.0, 数据库服务器采用Microsoft SQL Server 7.0。

4  结语

文章总结介绍了基于J2EE标准的BPR集成平台的功能、体系结构和实现。J2EE标准下的BPR集成平台具有良好的用户界面,动态的可跨平台性、可移植性和安全性,保证系统可以在任何平台上运行而不需要重新编辑。另外,该平台支持网络功能,可以通过网络进行远程访问。随着全球竞争的加剧,以及计算机及网络技术的发展,基于J2EE标准的应用开发将能越来越体现它的优势。

 

参考文献:
[1] Gene Gall, Jim Rosenthal, and Judy Wade,  How to make Reengineering Really Work, Harvard Business Review, 1993, 36-39
[2] Tomas Eddw,Mastering Enterprise Javabeans? and the Java? 2 Platform [M].Enterprise Edition , Sun Micro-
   -systems,Inc.,1999,10-20
[3] Designing Enterprise Applications with the Java? 2 Platform [M].Enterprise Edition Copyright Sun Micro-    -systems, Inc.,2000,33-49
[4] Ken Nordby, Software Engineer.IBM: What Are Enterprise JavaBeans Components? [EB/OL]. http://www-
   106.ibm. com/developerworks/library/what –are –ejbs/part1/2000-06
[5] Linda G DeMichiel, L ümit Yalcinalp, Sanjeev Krishnan. Enterprise JavaBeans? Specification,Version 2.0
   [M]. California. Coptright 2000 Sun Microsystems.Inc.2000. 163-185
[6] 曾斌, 基于高级Petri网的BPR支持系统的研究与开发,2000同济大学硕士论文,30-32

中图分类号  TP311.1

Implementation of BPR Integration Platform
Based on J2EE Standard
Wu Qingyi
(AMT  Shanghai)
Abstract: Nowadays, Coming over the trouble of the traditional network technology is most important in carrying out the BPR(Business Process Reengineering ). That is constitute an open and integrated data circumstance, which can get plenty of the information and adjust among the departments and the enterprises efficiently. So,this paper puts forward the assume that constitute the BPR integration platform which is based on the J2EE (Java 2 Platform Enterprise Edition )standard . Firstly, analyze the basic system structure of J2EE and the virtue of it. Secondly, sets forth the function and the system structure of the BPR integration platform which is based on the J2EE standard . Lastly, by a material example we can get the implementation of it.

Key Words: Business Process Reengineering;integration platform;Java 2 Platform Enterprise Edition


版权所有:UML软件工程组织