基于J2EE的项目评奖系统的设计与实现

时间:2022-04-05 05:54:38

基于J2EE的项目评奖系统的设计与实现

摘要:采用网上投票的方式进行项目评奖,可以缩短评委投票与统计投票的时间,并可以及时的统计出投票结果,提高评奖的效率。网上投票有民主性、匿名性、准确性、可检验性要求。结合网上投票的特性与J2EE的计算模式,利用rational Rose 作为建模工具,利用struts实现MVC设计模式,采用Spring Framework的安全框架-Acegi框架进行权限控制,设计并实现了一个具有一定通用性的项目评奖软件。

关键词:J2EE;项目评奖;网上投票

中图分类号:TP393文献标识码:A文章编号:1009-3044(2010)18-4975-03

Design and Implementation of A J2EE Based Project Judgement System

WANG Ji-kui1, WANG Hui-yong2, LI Zhen-dong1

(1.LAN Zhou Commercial College, Lanzhou 730000, China; 2.Guilin University of Electronic Technology, Guilin 541004, China)

Abstract: When constructing a judgment system, net voting is an effective manner, which can shorten the time consuming of voting and statistical summary. A net voting should be beared with democracy, anonymity, accuracy and verifiability. In this paper, considering the characteristics of net voting and computing patterns of J2EE, we design and implement a project-evulating software with certain generailty, which uses ‘Rational Rose’ as a modelling tool, utilizes ‘struts’ to implement MVC pattern design, and take one ‘-Acegi framework’ of Spring Framework as a security Framework to implement access control.

Key words: J2EE; project appraise; net voting

目前各种项目评奖主要还是采用人工的方式,存在评审工作人员的重复劳动多,工作效率低的问题。设计并实现一个项目评奖系统十分必要。项目评奖系统本质上是一个投票系统。文献[1-4,10-11]对投票系统的安全性与系统模型进行了研究,文献[5]对电子投票系统的需求、设计与实现进行了通用描述,文献[6-7]对投票系统的可信度进行了研究,文献[8]提出了一种实用的网上投票系统模型。基于J2EE平台和大量的可复用的框架,提出了具有实用价值的评奖系统的设计与实现。

1 系统分析与设计

1.1 评奖系统的要求

1) 民主性。只有合格的和被授权的投票人能够进行投票。电子投票系统必须验证投票人的身份,通过验证的投票人才能进行投票,每位投票人只能投票一次。

2) 匿名性。投票的过程是匿名和安全的。没有一种途径可以追踪选票并获得该选票的投票人的身份信息(在选举或者点票阶段),反之亦然。

3) 准确性。电子投票系统能够正确地记录和统计选票。选票不能够被更改,无效选票也不被接受。此外,它还能够防止恶意选票。

4) 可检验性。投票人能够证实选票已被统计。可检验性有两个范畴:个人和普遍的可检验性。个人检验意味着每个人都能检验自己的选票被正确统计与否,普遍检验则允许公众审计。

1.2 评奖系统的设计

评奖系统的用户主要是系统管理员与项目评审专家,项目管理员具有系统所有的除项目评审外所有的权限,具有分配权限的能力;项目评审专家具有项目评审的权利。

1)功能设计

图1为系统模块图。

项目管理:包括项目的添加、修改、删除、批量上传等功能。

测评管理:包括一次测评的生成与配置。

系统配置管理:基础数据的配置。

系统安全:采用Spring Framework的安全框架-Acegi框架进行权限控制,具有灵活方便多级多层次授权体系特点。Acegi能够和目前流行的Web容器无缝集成。

2)数据库概要设计

数据库设计是所有系统的核心,在分析项目评奖系统业务需求的基础上,给出图2所示的评奖系统数据系统概要设计界面。

3)系统关键流程设计

① 系统主要流程

(step1)专家评审界面开展一次评审,进行此次项目评审配置,包括配置中奖条件,陪审专家等。

(step2)专家通过各自的用户名,密码登陆系统,进行项目评审。

(step3)系统进行计算,如果不需要进行第二轮投票,产生评奖结果。如果需要进行下一轮评审,系统行动生成下一轮评审,转到(step2)

(step4)查看打印评审结果。

② (step3)的细化

图3 系统关键流程

4)系统部署

图4为系统部署。

评审专家可以在任何能够登陆web服务器的地方登陆系统进行项目评审。

2 系统实现

2.1 技术路线

系统实现整合了众多主流的系统架构,采用Spring+Struts2+Jpa组合进行开发,实现了MVC设计模式和多层软件结构。以Tomcat开源免费平台为web服务器;以免费的MYSQL为数据库管理系统;以JFree Chart 与JFreeReport优秀的开源插件为图表与报表开发插件,以JBuilder2007为IDE开发环境。

选用以上技术路线,兼顾了WEB2.0时代的优秀计算模式与优势,同时又充分利用了开源时代的各种经过验证的优秀成果,没有任何的版权问题。同时软件也可以分享JAVA技术不断发展的新成果。

2.2 系统界面展示

图5为系统界面。

在专家评审界面的设计上特别的考虑了专家的方便,在设计上增加了很多人性的因素。

在页面的上方有投票说明,将此次评奖的关键信息给出,时刻提示专家已经评选的项目个数,当专家项目选够时进行提交提示。

2.3 获奖结果界面

系统以pdf的格式展示项目评奖结果,如图6所示,有三个项目获了奖。投票结果显示国内MPA教育教学发展研究与我校专业结构与布局调整方案德尔探索与实践研究在第一轮获得全部三个评审专家的选票,金融投资类专业布局及人才培养模式在第一轮获得了三个专家中两个专家的投票。

2.4 系统实现兼顾了评奖系统的要求与操作方便的要求

具有如下特点:

1)系统安全。采用Spring Framework的安全框架-Acegi框架进行权限控制,具有灵活方便多级多层次授权体系特点。Acegi能够和目前流行的Web容器无缝集成。

2)多轮投票。在满足条件的项目多余要评审的项目时,系统自动转入下一轮投票。

3)专家回避制度。可以进行专家配置,灵活的根据项目情况进行评审专家配置。

4)系统提供多种评审算法。除了加权平均算法,系统还提供了诸如模糊数学算法等评审算法。

5)系统支持oracle,mysql,sqlserver2000的等主流关系型数据库,可以根据需要进行数据库配置。

3 结束语

基于J2EE技术实现了一个可以实际应用的项目评奖系统,给出了实现的技术路线,对设计此类系统具有一定的借鉴意义。

参考文献:

[1] Monroy L,Francisco R,Fernández.A general model for voting systems with multiple alternatives[J].Applied Mathematics and Computation,2009(215):1537-1547.

[2] Zwierko A,Kotulski Z.A Light-Weight e-Voting System with Distributed Trust[J].Electronic Notes in Theoretical Computer Science,2007(168):109-126.

[3] Foroughi A A,Tamiz M.An effective total ranking model for a ranked voting system[J].Omega,2005(33):491-496.

[4] Hemaspaandra E,Lane A.Hemaspaandra.Dichotomy for voting systems[J].Journal of Computer and System Sciences,2007(73):73-83.

[5] Qadah G Z,Taha R.Electronic voting systems: Requirements,design,and implementation[J].Computer Standards & Interfaces,2007(29):376-386.

[6] Xie M,Pham H.Modeling the reliability of threshold weighted voting systems[J].Reliability Engineering and System Safety,2005(87):53-63.

[7] Levitin G,Lisnianski A.Reliability optimization for weighted voting system[J].Reliability Engineering and System Safety,2001(71):131-138.

[8] 左黎明,刘二根.一种可信任网上投票系统模型与设计[J].计算机工程,2005,31(3):152:155

[9] 张莉.张彦海.基于多因素决策方法的评奖系统设计[J].青岛理工大学报,2008,29(3):97-102.

上一篇:基于PHP的在线投稿系统的设计与实现 下一篇:浅析石化企业电子商务安全