在线投票系统总结报告

  • 格式:docx
  • 大小:237.70 KB
  • 文档页数:5

1
目的:
提供给学生参与科学研究和技术开发的机会,使得学生得到科研工作的基本训练。促进
教学与科研相结合,培养学生的科研意识,团队精神和协作能力。通过科研训练使学生逐步
形成严谨的科学研究作风和学术道德品质,锻炼和提高实践能力。

要求:
指导教师下达训练题目并分配任务,由学生组成研究小组(1-2人),在下面题目中自
由选题,独立或合作完成训练题目,每组学生要进行调查研究、文献查阅、方案设计、撰写
开题报告、方案实施、结果分析、完善设计方案、撰写总结报告等过程。要求学生熟练掌握
程序设计、数学、数据结构与算法、数据库以及软件工程等相关知识。
一、进度安排及主要内容

第 1、2 学时 老师下达科研训练题目分配任务,
第 3、4 学时 根据题目要求撰写开题报告
第 5、6 学时 根据题目要求和开题报告开始系统详细设计
第 7、8 学时 按照系统设计文档开始系统的开发
第 9、10 学时 继续系统的开发和测试工作、完善系统
第 11、12 学时 修补bug、撰写科研训练总结
二、 科研训练题目及要求

题目名称:在线投票管理系统的设计与实现
题目要求:建立一个在线的投票管理系统.目标系统的主要功能是让用户根据一个主题
以及相关的投票选项, 选出正确的一个或者多个选项内容。 通过互联网进行投票, 不仅
可以提高投票效率, 而且能实时地查看投票结果。 另外需要实现后台管理功能, 管理员
输入正确的密码之后, 进入后台管理, 可以对投票主题进行管理, 如:添加、 删除、 修
改投票主题, 设置当前投票主题以及设置选项为多选或单选等。同时为了防止恶意刷票等,
需要实现验证码,限制IP等必要措施。

具体要求:
(1)设计出数据库,完整实现整个目标系统。
(2)界面友好、操方便;
(3)进行全面的需求分析;
(4)软件开发文档齐全、重要算法描述清楚。
三、研宄的目的及意义
与以往的投票方式相比,电子投票的优势是其他投票方式难以望其项背的。由于投票方
式的信息化,操作更加便捷、快速、也更高效,具备更强的适应能力。这样的新型的投票方
式,没有任何的形式上的限制,不需要对投票进行记录,减少了结果的误差。这些优势也使
2

得电子投票获得了许多人的青睐。不过,作为一项新兴的投票方式,电子投票还是存在一定
缺陷。其中,其中包括信息的安全性,以及数字传输的问题,都是需要科学家进一步解决的。
当前电子投票系统如何避免受到网络的攻击,如何运行更顺畅、投资成本更少,已经成为重
要的研宄课题。本文的研宄切实的设计出一套符合实际操作需求的在线投票管理系统,该系
统的采用了可以完成注册用户自主发布投票信息,避免了传统投票系统投票发布依靠系统管
理员的弊端。通过该投票发布模式的创新,有效的解决了用户发布投票的需求,使得用户不
需要 建立对应的投票网站,只需要注册为正式用户就可以进行随意发布投票。有效的提高
了投票管理的效率。
四、需求分析
从技术角度也来看,实现在线投票管理系统的技术方法很多。按照系统的架构角度来看,
主要包括 C/S 架构与 B/S 架构两种。在两种模式中,C/S模式为客户端/服务器建设模式,
该建设模式要求在使用者的电脑中按照客户端软件。通过客户端软件来实现在线投票管理的
功能。但是在实际操作的过程中,由于操作者部门想多较多,并且使用的地点相对不固定。
很难实现每次使用都安装客户端。因此使得这种开发模式在实际的开发过程中存在较多的弊
端。面对这样的问题 B/S 模式则完全不受到客户端安装工程量大的影响。该模式主要采用
了浏览器/服务器技术。因此通过浏览器作为客户端的访问模式不需要安装认可的客户端软
件就可以实现对在线投票管理系统的访问。只要用户的电脑处于联网状态,则就可以通过网
络实现对系统的访问和操作。并且对客户端计算机的配置要求低,其客户端的维护成本相对
角度。因此在本文构建的在线投票管理系统开发设计的过程中 B/S 模式在技术上是充分可
行的。与此同时,系统的开发单位还具有的正版的 Windows 2003服务器的操作系统。为
系统的安全稳定运行提供了良好的系统平台。此外,管理部门还具有良好的信息化管理团队,
具有良好的技术开发人员。因此无论是系统的实现技术方面,还是从单位的软硬件设备准备
方面开发在线投票管理系统都是切实可行的。
五、总体设计
通过前期的调查和分析,本系统应主要包括注册用户,匿名用户,管理
员三个角色。匿名用户登录系统后,可进行投票,查看投票结果,留言等基
本功能。注册用户可在匿名用户的功能基础上,添加创建投票功能并可以对
自己的投票进行管理,查看自己的投票结果,删除或关闭自己的投票。管理
员对用户投票内容和用户信息进行管理,并及时发布公告,管理数据,保证
系统安全。
所以根据调查分析结果本系统应该设计两大功能模块一是用户子系统二是管理员子系
统。
3

用户子系统用例图来如下:
管理员子系统用例图如下:
六、系统架构的设计
考虑到具体使用本系统的用户可能是分布在不同地域不同职业的人群若采用C/S架构
安装客户端以及客户端的更新维护和困难,并且此系统的功能需求更适合B/S架构的模式
所以在系统实现的过程中,本系统采用了 B/S 架构对系统的功能进行了实现。
由于Java在web开发方面有一定优势所以本系统采用Java相关技术开发。
主要技术包括SSH(struts2+Hibeniate+Spring)框架、Ajax技术等。开发此系统
所需的软件环境及工具有: MyEclipse、JSP(动态网页)、JDK1.7(JAVA开发环境)、
MySQL (数据库)、Tomcat7(Web容器)、Log4j(日志记录工具)、JUnit(测试工具)
等。
Eclipse是开源的开发平台,是一个可扩展的软件框架、工具,管理项目的
整个生命周期,包括项目创建、项目 发、项目部署、项目测试等。而MyEclipse
4

对Eclipse IDE进行了扩展能方便的开发和发布Java EE项目、设计数据库、利
用UML对系统进行可视化建模等。
JSP (Java Server Pages)是有Sun公司推出的动态网页技术标准。JSP页面
由Web服务器执行,JSP引擎接收客户端对JSP页面的请求并且生成JSP页面作
为对客户端的相应具有支持跨平台、一次编写到处运行、强大的可伸缩性等优点。
MySQL是一种小型关系型数据库管理系统,因为其一贯快速的性能、高可靠
性和易用性,成为当前最受欢迎的开源数据库。由于MySQL开放源码许多中小型
网站选择了MySQL作为网站数据库。
Tomcat是Apache软件基金会Jakarta项目中的一个核心项目,是Sun公司
Servlet和JSP规范的实现,因为其技术先进、性能稳定,而且免费,成为目前
使用最为广泛的Web容器之一。
Log4j是Apache的一个 放源代码项目,它有良好的架构设计,通过简单的
修改配置文件,可以随意的控制円志信息的输送。
JUnit是一个回归测试框架,目前绝大多数开源框架都使用JUnit进行单元
测试,一个单元就是指一个不依赖于上下文影响的、并且能独立完成一件事情的
方法。
八、测试报告
后台管理子系统在线投票管理系统配置和权限分配的关键子系统。 通过
后台管理子系统可以实现对投票管理、留言板管理以及公告管理等功能。其
中在投票管理方面,主要是对注册用户的发起的投票进行删除和修改等操
作。后台管理并没有投票创建的功能。通过投票的删除和更新等操作实现对
违规投票内容的及时清理。有效的保护了投票内容的合法性。因此,针对投
票后台管理模块的测试情况如下所示。

用户管理子系统主要是实现用户的注册、密码修改等功能。通过用户管
理子系统可以实现匿名用户注册为本系统的注册用户。并且系统赋予注册用
于一定的发布投票的权限。因此针对用户管理子系统的测试过程如下所示。
5

九、总结
在本次科研训练中对在线投票管理系统的功能进行了全面的设计,设计出后台管理子系
统、投票管理子系统、用户管理子系统以及系统设置管理等功能模块。为使创建者更加方便
的管理自己的投票,进而创建了我的投票模块,在此模块中用户可以对自己的投票进行管理,
快速查看自己创建的投票结果提高的系统的使用效率。
并且在完成系统的各功能模块开发后利用系统测试的方式对系统功能模块的正确性进
行了验证。切实的开发出符合实际需求的在线投票管理系统。系统对投票进行了详细的管理,
例如投票的选项个数,是否限制 IP 等。
本次科研训练基本实现了前期分析和设计中的所有功能,可能在性能和安全方面仍然存
在一定缺陷,这些问题将会在后期进一步从系统的安全性角度出发,对系统的功能进行进一
步的完善。