企业简介

作为中国自动化领域的权威旗舰网络媒体,控制网创立于1999年7月,是中国举行的第十四届IFAC (International Federation of Automatic Control)大会的中国官方组织机构的唯一指定网站。控制网是中国自动化学会专家咨询工作 委员会(ECC)的秘书处常设之地。是北京自控在线文化传播有限公司开设的网站。

  • 公司类型:其他

联系方式
  • 控制网
  • 地址:北京市海淀区上地十街辉煌国际2号楼1504室
  • 邮编:100085
  • 电话:010-57116291 / 59813326
  • 传真:010-59813329
  • 网址:http://www.kongzhi.net
  • Email:mahongliang@kongzhi.net
  • 联系人:市场部
案例详细
标题基于J2EE的分布式项目管理系统设计
技术领域
行业
简介针对目前项目管理系统中出现的可重构性与系统集成性差的特点,结合J2EE(Java 2 Enterprise Edition)在计算机应用系统开发中的优势,构建了基于J2EE 的分布式项目管理系统,并对其体系结构、构成模块及系统关键技术进行了分析与设计。该系统具有安全、高效、实用、支持分布式业务流程等特点。
内容
The design of distributed project management system
based on J2EE
Jiang Wenke and Jin Weidong
(College of electrical engineering, Southwest Jiaotong University, Chengdu, 610031 )
Abstract: In order to make it rebuilt and integrated well, combining with the advantage of J2EE used in design of system, the author design a distributed project management system based on J2EE in manufacture and describe the module structure, main function and key technology. This system is safe, efficiency, practical and suitable for distributed project.
Key words: J2EE; project management; distributed
 
1 引言
        经济全球化与信息技术的不断进步和发展,在项目管理领域出现了新的机遇和挑战,当今很多项目都面对项目参与人员地理上的分散性、组织上的多样性、文化上的差异性、资源异构性的现象,企业从Internet获取信息与基于Web 技术管理企业资源和生产活动越来越成为企业的迫切要求。但传统的项目管理模式及项目管理系统难以对这种分布在异地的业务流程进行有效的管理。因此,构建一个具有伸缩性、开放性、便携性和安全性的基于web的分布式项目管理系统成为现代企业的一种普遍需求[1-3]。互联网技术的发展,尤其是以J2EE 为平台的Web开发技术的应用,为建立分布式的项目管理系统提供了有力的技术支持。基于此,本文提出了基于J2EE 的分布式项目管理系统,从宏观角度对分布式项目管理的系统结构进行分析, 并对系统中各模块的功能设计进行了描述。
2 基于J2EE 的分布式项目管理系统设计
2.1 J2EE概述
        J2EE 是SUN 公司推出的一种全新概念的多层分布式应用平台,它比传统的互联网程序有着更大的优势。J2EE提供了一个企业级的计算模型和运行环境,用于开发和部署多层体系结构的计算机应用。它通过提供企业计算环境所必须的各种服务,使得部署在J2EE平台上的多层应用可以实现高可用性、安全性、可扩展性和可靠性。
        J2EE体系结构(包括Servlet、JSP、和EJB 3个单元)的优点是:Servlet和JSP中可以完全使用Java进行编程,可以完成许多简单的商业逻辑。JSP(Java Server Pages) 是J2EE 平台的页面编程技术,它通过一定的格式将Java 语句嵌入到HTML 语句中。Servlet 是一个运行在请求/ 响应模式的服务器上的Java 类模块,它动态扩展了Web 服务器的功能。复杂的商业逻辑以EJB组件的形式部署在EJB Server中。EJB ( Enterprise JavaBeans) 是J2EE 平台的组件技术,是J2EE 的核心。EJB 是用Java 编写的服务器端组件,用于实现企业计算机应用的商业逻辑。EJB 分为两类:会话EJB 和实体EJB。前者用于系统应用逻辑实现;后者用于数据存储和状态跟踪。由于EJB Server提供了多种组件事务,使系统更能够应付大量的并发用户和管理复杂的事务逻辑。EJB Server中集成的组件命名服务可以使组件位置透明化,简化了组件的部署和客户端应用的维护。开发过程易于分工进行,可以由专人负责编写组件,其他人组装页面[1]。企业原有数据可放人后台的数据库中,EJB 通过JDBC 进行存取,从而利用了企业原有信息资源。
        因此,综合目前项目管理发展的特点和技术发展的趋势,作者开发了基于J2EE架构的分布式项目管理系统。
2.2 系统的体系结构
         基于J2EE 的项目管理系统是多层、分布式结构,如图1。系统的前端是浏览器,用户通过请求Web 页调用Web 服务器中的Servlet 和JSP ,调用应用服务器中的应用逻辑,如EJB 组件,也可运用JMS 与其企业其它信息系统交换信息。中间层主要提供系统级服务,并负责管理J2EE 的应用部件。业务逻辑由企业Bean来执行,企业Bean从客户程序处接收数据,对数据进行处理,在将数据发送到企业信息系统层存储,或者从数据库中检索数据后送回客户端。系统的后端除包括数据库外,还包括相关的其它企业信息系统等。连接器作为J2EE 的扩展,负责连接J2EE 平台与异构的企业信息系统。


图1 基于J2EE的分布式项目管理系统的体系结构
Fig.1 The structure of the distributed project management system based on J2EE

3 项目管理系统的功能模块设计
     系统主要包括用户权限管理模块、进度资源管理模块、通讯模块、日常事务信息管理、人力资源管理、质量管理、合同管理、知识管理及综合查询等模块,用户还可以根据需要进行模块组合或方便的加入新模块。
         用户权限管理包括用户的注册、登录、用户信息的维护等。不同角色的用户拥有不同的权限。系统识别用户身份,根据相应授权,开放或关闭某些功能模块的使用权,即实现个性化界面。用户通过浏览器使用该管理系统时,需要进行用户身份的登录与验证,用户的身份包括项目经理、各子项目负责人、一般项目成员、远程用户等。Web 服务器收集用户的注册和登录信息,并通过Servlet 调用EJB( Enterprise JavaBeans) 服务器中的EJB组件进行处理验证,并将处理结果返回给Web 页面。不同的用户根据自己的用户权限分别登陆到各自的业务平台进行业务处理。用户进入系统后首先选择角色(如果有多个角色)和能处理的项目,进入系统后所有信息都是关于这个项目和用户当前角色的。用户可以在系统中切换项目和角色。
        进度资源管理模块可以使项目管理者依据项目的进程及项目的整体情况和各个应用状态,对任务流进行重组,各个任务进度进行调整,资源重新配置,组织/角色的重新定义,该过程会产生新的关键路径和关键任务,成为项目运行的新依据。进度报警程序是运行于应用服务器端的后台进程,定时扫描状态为运行的任务,对其执行的时间进行累加,若该时间大于任务的预定时间,则向管理员和客户应用端同时报警;能够对项目的里程碑目标进行监控;能够感知项目环境的变化,如提示系统有消息到来;对共享信息的越权操作及一些异常情况也能够进行报警及处理。
        通讯和交互接口主要实现服务器与客户应用端、管理者与工作组成员间的通讯与交流。项目管理者在进行任务发放时,用E - mail 或短消息通知各开发小组,项目成员可以以聊天室形式参与交流。服务端和客户端的连接以中间件为桥梁,对服务器的访问通过JDBC 来实现。
        项目综合查询模块可以查询各个模块的信息,具有进度报警功能,还可以生成各类报表,并且采用先进的多级子工程管理技术,智能化自动生成甘特图,轻松实现工程项目的多级管理规范化管理,实现对作业的全方位跟踪监控,对外部服务器的访问通过外部进程间的消息传递机制来实现。
         此外,系统还包括日常事务信息管理、人力资源管理、质量管理、合同管理、知识管理等功能,用户可以根据企业项目实际情况自由选择或定制需要的功能,大大提高项目管理系统的柔性和适应性。


图2 基于J2EE 的分布式项目管理系统模块构成
Fig.2 The system modules of the distributed project management system based on J2EE

Fig.2 The system modules of the distributed project management system based on J2EE
4 系统的特点
4.1 通过EJB组件实现数据库的连接和操作
        EJB 是一个可重复使用的软件组件,由于本系统是一个大型的Web 数据库系统,所以会有大量的数据库操作,因此构建一个专门的数据库操作组件是非常必要的,这样可以省去大量的重复性代码,使程序结构化更强,易于移植和维护,同时还具有良好的扩展性和安全性。
4.2 基于角色的多层访问控制
        基于角色的访问控制(RBAC:Role-Based Access Control)方法的基本思想是根据需要定义各种角色并设置角色的访问权限,而用户根据其、职责和岗位被指派为不同的角色[4]。这样整个访问控制过程就分成了两部分:即访问权限和角色相关联, 角色再和用户相关联, 从而实现了用户与访问权限的逻辑分离。
        传统的访问控制直接将访问主体和客体相关联,而RBAC在中间加入了角色,通过角色沟通访问控制的主体和客体。为了能够灵活地对系统的访问权限进行控制,我们扩展了RBAC模型,形成了一个基于角色的多层访问控制模型,如图3所示。
4.3 数据库设计
        鉴于项目参与方在地理位置上分散各地的特征,为有效地管理与项目有关的数据和与数据有关的过程,系统的数据库采用集中与分布式相结合的方法,建立中央项目数据库和各项目组分布数据库,中央项目数据库主要存放用户信息、项目模型、产品信息、中间结果、过程信息等,各项目组数据库主要保存与本组有关的信息。系统使用组进行授权管理,将不同的用户群划分成不同的组,并对组授权。这样既保证了公共信息的有效共享,又保证了各项目组私有信息的独立性。


图3  基于角色的多层访问控制模型
Fig.3 Multilayer access control model based on role

5 结束语
J2EE是一个为企业分布式应用的开发提供的标准平台。采用J2EE体系结构可以构造出完全不依赖平台的计算机应用系统,并且支持分布式事务处理。从开发角度来讲,由于系统的表现形式(Web页面)和内部逻辑(EJB)相分离,因此,系统的不同部分可以由不同开发人员同步进行,提高了系统开发的效率和质量,同时也有利于系统的维护和升级。笔者采用J2EE方案开发的分布式项目管理系统,从企业实际运用的效果来看,该系统具有安全、高效、实用、支持分布式业务流程,适应网络化虚拟企业的管理模式等特点。
 
 
参考文献:
[1]    魏从刚,何卫平,赵峰,王建利,孙思. 基于J2EE的分布式项目管理系统应用研究. 制造业自动化. 2004, 26(11): 62-65.
[2]    郭建设,尹朝万,罗焕佐,郑红星. 基于J2EE的分布式项目管理系统模型与实现. 计算机工程与应用. 2004, 31: 193-196.
[3]    郑红星,尹朝万,郭建设,张福顺. 分布式制造项目管理研究与实现. 计算机应用. 2004, 24(5): 120-122.
[4]    邓筱鹏,胡坚,黄桁. 工程项目信息管理系统的开发及应用. 水运工程. 2005, 5: 78-83.
 
作者简介:
姜文科(1982),女,江西九江人,汉,硕士研究生,研究方向:项目管理、分布式计算、中间件