网络投票系统设计论文

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

浙江警官职业学院
题目网站投票系统
姓名张彩金
学号*********
院系信息技术与管理系
指导老师许志飞
二O一二年五月二十八日
目录
第1章绪论 (1)
⑴课题研究背景 (2)
⑵设计目标 (2)
⑶网络投票系统特点 (3)
第2章系统分析 (3)
2.1需求分析 (3)
2.2系统说明 (4)
①技术介绍 (4)
②B/S体系结构 (5)
2.3开发环境 (5)
①软件环境 (5)
②软件介绍 (5)
第3 章需求分析系统需求 (7)
3.1 功能要求 (7)
3.2性能要求 (7)
3.3约束条件 (7)
第4章数据库结构设计与数据库设计 (8)
4.1系统总体结构图 (8)
4.2数据库的设计 (8)
4.2.1数据库概念设计 (8)
4.2.2 数据表设计 (11)
第5章系统详细设计 (13)
5.1 系统登录模块设计 (13)
5.2投票管理模块设计 (15)
5.3修改投票项 (16)
5.4 添加投票项设计 (17)
5.5用户投票页面设计 (21)
5.6 系统安装过程 (23)
5.7 系统运行过程 (23)
第6章系统测试 (24)
6.1 测试的意义 (24)
6.2 测试过程 (24)
结论 (26)
致谢 (27)
参考文献 (28)
网络投票系统
[摘要]
在积极建立科学管理机制的今天,仅仅靠原始的手工管理或简单的单机管理,管理部门面对大量的信息,无法有效率地将其中的重要部分提取出来,并做出相应的判断和处理。

投票管理者的决策只能依据手工表数据,在浪费大量人力、物力的同时无法做到实时监控,难以保证数据的准确性和及时性。

因此,先进的管理思想就成为了一个可望而不可及的目标。

投票非常急需一套既有先进管理思想的系统,作为实现目标和提高现有投票管理水平的一种重要手段。

随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。

作为计算机应用的一部分,在先进的计算机技术、通信技术、控制技术及IC卡技术基础上,采用系统集成方法,逐步建立一个智能化的投票系统。

采用MS Sqlserver2000作为后台数据库,基于B/S架构开发的投票系统,,实现了用户的登录、投票、投票结果的浏览管理投票等功能,本系统限制了IP,杜绝同一IP大量投票。

同时本系统限制了投票时间,限制了同一ID在不同IP 的重复投票。

避免造成投票结果不真实。

论文首先介绍了网络投票系统的结构设计和功能设计,并具体说明了功能的的具体设计与实现过程。

[关键词]投票系统 sqlserver数据库
第1章绪论
随着INTERNET的发展,世界网民的数量急剧增加,社会的信息化强度增强,企业竞争之激烈,故对市场信息的掌握范围不仅仅是周边的一些信息,而应把范围扩展到全国,甚至全世界,INTERNET恰恰是实现这目标的有利工具。

对于新产品,新观点的调查范围应该更广泛,消息应该及时反馈给企业单位,故一个网上在线投票系统应允而生,它正好充分满足客户的需求,信息反馈的范围扩大,人力资源的节省,从而使得企业在竞争激烈的市场中拥有更强大的资本。

开发此投票系统是为了更好的把市场的信息更准确更快速的反馈给客户,使信息
的来源更广泛,从而提高信息的准确性。

运用此系统可以降低企业为市场调查而消耗的人力和物力,利用节省的资源提高产品的质量,增强竞争力。

本系统的开发基于Web的应用程序势在必行,数据库技术更是需要和Web技术相结合,才有更为广阔的前景。

作为微软推出的新兴Web应用程序开发技术,在数据库应用方面发挥着越来越重要的作用,同时浏览器/服务器模式的数据库体系也正逐渐成为数据库结构的主流。

⑴课题研究背景
互联网的兴起,网络信息的日益丰富,使得人们的生活变得更加多姿多彩。

同时,互联网的全球覆盖、交互功能等特性给人们了解一些国内外新闻带来更多的方便,借助互联网这一现代化的信息沟通渠道,人们可以通过上网了解一些政治类、经济类、娱乐类等等的新闻。

除了去关注了解这些新闻,又如何对这些新闻表达自己的一些看法,一些想法呢,这就需要一个网络投票系统来帮助人们去更好地表达自己的看法,所以网络投票系统已成为人们日常生活在网络上发表看法的一种方式。

但一直以来人们使用传统人工的方式来做调查问卷,这种问卷调查方式存在着许多的缺点,如:效率低、更新慢,另外时间一长,将会产生大量的文件和数据,对文件和数据的查找、更新和维护都带来了不少的困难。

而网络投票系统的开发可以为广大的用户提供一些充足的调查信息和一些快捷的调查手段,可以更好的解决人们使用传统人工的方式来做调查问卷,也可以改善一些用传统人工方式带来的缺点,这样就有利于用户对数据的查找,更新和维护。

因为网络投票的方便性,许多网站也在自己的页面上进行自主调研,使用投票的方式收集本网站用户的观点等。

不仅可以迅速了解社会不同层次、不同行业的人员需求,客观地收集需求信息,调整网站信息策略和营销策略。

同时也吸引了更多的长期用户群。

许多专业调研公司也正在逐渐推广网络投票,使之成为传统调研形式的重要补充。

网络投票系统是当前一个很热门、实用性很强的系统,把它作为毕业设计的题目,可以把已有的知识用于实践,又可以学到一些新的概念,在这个过程中,可以增加开发经验,对以后的工作学习是一次很有意义的经验积累。

⑵设计目标
投票系统主要是以用户为核心作出功能分析,在用户投票过程中,使用户觉
得操作简单,真正适用。

只要是一般的商业网站,投票系统是必不可少的功能。

设计一个功能强大、易用性好的投票系统绝对是提高顾客购买兴趣和达成购买的一个重要因素。

投票系统可提高可用性从可用性观点来看,最好给用户提供一个操作方便的投票系统。

这个的最根本的原因是让用户可以确认系统运作正常,也同时能验证之前与系统的交互也正常。

投票系统主要实现了用户投票查看投票结果;管理员可以管理投票项,可以设置多选或单选投票。

⑶网络投票系统特点
1、完备的投票功能。

系统设计的投票项目功能模块,可分为投票项目添加、投票项目管理、投票结果管理、投票系统管理等,操作功能健全而不冗余,简约而无遗漏。

2、科学的管理模式。

系统采用多种方式,以方便管理员更好的进行系统管理和投票项目设置;通过投票结果反馈系统,用户可以随时获取最新的投票结果;通过完善的项目设置系统,管理员可以及时得到最真实最及时的投票数据;后台结构化管理模式,涵盖了项目设置、项目管理、项目修改、系统管理等等,为投票项目管理提供了一套良好的管理模式。

3、人性化的操作界面。

一个网站,能否吸引顾客的经常光顾,界面的美观也显得非常重要。

本课程系统通过专业美工的精心打造,让课程网站的设计充分体现软件的时尚、大众化。

4、完善的安全机制:独立的密码校验功能,确保用户和网站的数据有较好的安全性。

第2章系统分析
2.1需求分析
在线投票系统功能主要是实现用户在线投票。

可以实现选择投票项目、投票后可以查看结果。

系统管理员主要实现了安全登录验证,登录后可以实现投票项管理,投票具体内容管理,以及设置修改信息,具有信息的添加删除和修改,等功能。

管理员还可以查看投票结果。

系统功能主要包括用户注册、账户管理、限制IP、投票管理、防止用户名重名等基本功能。

此外,还实现了网络投票系统的后台管理,包括用户的添加、删除、更新等功能。

很大程度上减轻了维护人员的劳动强度,提高了工作效率与管理水平,具有很大的实际使用价值。

2.2系统说明
本系统主要是在现有传统的项目调查的基础上,把大量的人工管理信息转变为网络管理,简化了网络服务提供商的调查工作流程,提高了工作效率。

本系统对数字化信息资源的组织采用数据库。

系统的数据库结构是关系数据库SQL Server 2000,前台使用Microsoft Visual 2005平台开发。

信息平台的后台操作采用C/S操作结构以增强系统的安全保密性、系统稳定性和易操作性。

C#是目前最完备的面向对象语言,在未来仍然很有发展前途。

SQL Server 2000采用了关系型数据库结构,是一套精简、快速的数据库管理系统,它提供了多人使用的管理模式,并支持标准的SQL语法。

同时,VS2005平台和SQL Server 2000作为微软公司的产品,具有良好的整和性。

系统采用高度集成的模块结构,将所有的模块整合到一个通用的中央数据库中。

①技术介绍
是一种建立在通用语言上的程序构架,能被用于一台Web服务器来建立强大的Web应用程序。

提供许多比现在的Web开发模式强大的的优势。

1)执行效率的大幅提高。

是把基于通用语言的程序在服务器上运行。

不像以前的ASP即时解释程序,而是将程序在服务器端首次运行时进行编译,这样的执行效果,当然比一条一条的解释强很多。

2)强大性和适应性。

因为是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在Web应用软件开发者的几乎全部的平台上。

通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到 的Web应用中。

同时也是language-independent语言独立化的,所以,可以选择一种最适合的语言来编写程序,或者把程序用很多种语言来写,现在已经支持的有C#(C++和Java的结合体),VB,Jscript。

将来,这样的多种程序语言协同工作的能力保护您现在的基于COM+开发的程序,能够完整的移植向。

3)高效可管理性。

使用一种字符基础的,分级的配置系统,使服务器环境和应用程序的设置更加简单。

因为配置信息都保存在简单文本中,新的设置有可能都不需要启动本地的管理员工具就可以实现。

这种被称为"Zero Local Administration"的哲学观念使的基于应用的开发更加具体,和快捷。

一个的应用程序在一台服务器系统的安装只需要简单的拷贝一些必须得文件,不需要系统的重新启动,一切就是这么简单。

4)自定义性和可扩展性。

设计时考虑了让网站开发人员可以在自己
的代码中自己定义"plug-in"的模块。

这与原来的包含关系不同, 可以加入自己定义的如何组件。

网站程序的开发从来没有这么简单过。

②B/S 体系结构
本系统所面向的对象是广大互连网用户。

因此,将要采用比较流行的B/S 三层结构。

B/S 三层结构图 B/S 体系结构与C/S 体系结构相比不仅具有其全部的优点,而且又有C/S 体系结构所不具备的独特优势:
(1)开放的标准:B/S 所采用的标准都是开放的、非专用的,是经过标准化组织所确定而非单一厂商所制定,保证了其应用的通用性和跨平台性。

(2)较低的开发和维护成本:B/S 的应用只需在客户端安装通用的浏览器即可,维护和升级工作都在服务器端进行,不需对客户端进行任何改变,故而大大降低了开发和维护的成本。

(3)用户使用简单,界面友好:B/S 用户的界面都在统一的浏览器上,浏览器易于使用、界面友好,又因为它不再负责数据的存取和复杂数据计算等任务,只需要进行显示,因而大大降低了对客户端的要求。

从以上的分析与比较可以看出,B/S 模式具有C/S 模式无法替代的优越性:它简化了系统的开发和维护,并且特别适用于网上信息发布。

因此,开发的课程在线浏览系统采用了基于B/S 模式的体系结构。

2.3开发环境
①软件环境
操作系统:Windows XP ;Microsoft SQL Server 2000;
Microsoft Visual 2005;
② 软件介绍
SQL2000介绍
SQL Server 是一个具备完全 Web 支持的数据库产品,提供了对可扩展标记
语言 (XML) 的核心支持以及在 Internet 上和防火墙外进行查询的能力,提供了以 Web 标准为基础的扩展数据库编程功能。

丰富的 XML 和 Internet 标准支持允许使用内置的存储过程以 XML 格式轻松存储和检索数据。

SQL Server 提供强大的开发工具和各类开发特性,在大大提高开发效率的同时,进一步拓展应用空间,带来新的商业应用机遇。

例如,XML数据库与Web Service的支持将使您的应用实现Internet数据互联,.Net集成极大的扩展了开发空间,异构数据集成、Service Broker使您的数据和其它应用无缝集成,各种新数据类型和T-SQL 扩展带来了诸多灵活性。

C#、、XQuery、XMLA、 2.0、SMO、AMO 等都将成为SQL Server数据平台上开发数据相关应用的有力工具。

Visual Studio 2005
Visual Studio 2005是微软公司推出的开发环境。

是目前最尖端的Windows 平台应用程序开发环境。

Microsoft Visual Studio 2005 Team System 提供支持整个软件开发团队的工具:
Visual Studio 2005 Team Developer Edition 为开发人员提供高级的静态分析、代码剖析、代码涵盖以及单元测试工具,使团队能够在整个生命周期中尽早、频繁地规划质量。

有关详细信息,请参阅Visual Studio 2005 Team System:构建健壮而可靠的软件。

Visual Studio 2005 Team Test Edition 构建于开发人员版本之上,更好地为测试人员提供了用于管理和运行各种测试(包括单元测试、手工测试和Web 测试)的工具,以及使团队能够在应用程序部署之前检验其性能的高级负载测试工具。

过更完善的测试实现更好的软件。

第3 章需求分析系统需求
3.1 功能要求
通过对用户的需求分析,可以概括出用户的系统功能需求如下:用户投票、查看投票、投票项目设计。

①用户投票:用户只能从多个选项中选取一项进行投票。

②查看投票:提供用户查看当前投票情况,投票结果以条形图显示。

③投票项目设计:管理员可以设计不同的投票主题,及投票主题的内容可供用户进行投票。

投票设计又包括以下功能需求:增加投票项目、删除投票项目、查看投票项目、修改投票项目。

具体的功能如下所示:
(1)用户界面部分:
①选择投票标题进行投票操作
③后台登录
(2)管理界面部分:
①增加、修改和删除投票标题
②增加、修改和删除投票选项
3.2性能要求
本系统是采用B/S模式, 和SQl2000数据库开发的,在windowsXP需要安装IIS上运行。

在普通的PC机上可以运行。

3.3约束条件
投票系统主要实现网上投票的功能,实现数据的安全交易,采用技术c#语言开发,使界面和代码分离,大大提高了系统的安全性。

第4章数据库结构设计与数据库设计
4.1系统总体结构图
图4-1系统结构图
4.2数据库的设计
数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率及实现的效果产生影响。

而合理的数据库结构设计可以提高数据存储的效率,保证数据的完整性和一致性。

设计数据库系统时应该充分了解用户在各个方面的需求,包括现有的及将来可能增加的需求。

数据库设计一般包括如下几个步骤:
(1)数据库需求分析
(2)数据库概念结构设计
(3)数据库表设计
4.2.1数据库概念设计
数据库概念设计就是将数据项和数据结构的各种实体结合在一起,通过它们相互之间的作用形成数据的流动过程,从而满足用户的需求。

总体来说,数据库的实体主要包括:系统总体E-R图、管理员信息实体、注
册用户信息实体和投票信息实体。

系统E-R图如下图4-1所示:
图4-1 系统E-R图
管理员信息实体E-R图如下图4-2所示:
图4-2 管理员信息实体E-R图
投票标题信息实体E-R图如下图4-3所示:
图4-3 投票标题实体E-R图投票选项信息实体E-R图如下图4-4所示:
图4-4 投票选项信息实体E-R图系统配置信息实体E-R图如下图4-5所示:
图4-5 系统配置信息实体E-R图
4.2.2 数据表设计
数据库的逻辑结构就是在数据库的概念结构设计完毕后,将数据库中存在的实体结构转化为某种数据库系统所能支持的实际数据模型。

网络投票系统数据库中各个表的设计结果如表4-1至表4-6所示。

每个表格表示在数据库中的一个表
(1)管理员表(管理员帐号,管理员密码)
主键:管理员帐号 NOT NULL
说明:管理员表存储系统中的管理员信息。

表结构如下表4-1所示:
表4-1 管理员表(Admin)
(2)投票标题表(编号,项,类别号,票数,日期)
主键:帐号 NOT NULL
说明:用户表记录系统中注册用户的详细信息。

其表结构如下表4-2所示:
(3)投票选项表(选项编号,投票标题编号,投票项目,投票票数)
主键:投票选项编号 NOT NULL
说明:投票选项表记录系统中投票数目的信息。

其表结构如表4-3所示:
表4-3投票选项表(voet)
(4)投票日志表(投票标题编号,投票标题,总投票数,投票结束时间)主键:投票标题表ID NOT NULL
说明:投票标题表记录着总投票数和投票标题的信息。

其表结构如表4-4所示:
表4-4 投票日志表(vlog)
第5章系统详细设计
在经过前面的系统分析后,就形成了一个基本的在线投票系统的详细设计,下面就详细介绍该系统中各功能模块的设计与实现。

5.1 系统登录模块设计
本模块实现的主要功能是会员进行登录的页面,填写真确的帐号和密码,在信息填写完毕后,通过”提交”按键,把用户所填写的个人信息提交给服务器与数据库中的帐号进行比较如果相同那么就登陆成功.否则就返回错误.输入用户名和密码,提交给系统严整,如果正确就可以登录进系统,否则警告用户。

用户登录运行界面如图5-1所示:
图5-1登录
页面中主要包含了两个RadioButton,第一个RadioButton为管理员登录,当用户选择RadioButton为管理员时,系统会执行相应的命令来完成用户所对应的操作。

第二个为用户RadioButton,原理跟第一个RadioButton一样。

此页面还有一个功能,就是当用户选择完登录身份、输入完用户名和密码时,还要求用户输入相应的验证码,才能进入用户想进入的网页。

此验证码是一个随机函数Random产生的混合字符。

这也是本网站的一大特色之一。

管理端用户登录程序流程图如下图5-2所示:
图5-2 管理端用户登录程序流程图
5.2投票管理模块设计
管理员管理投票页面如下,运行界面如图5-3所示:
5-3投票管理图
当用户单击[选择]按钮的时候,系统会显示出下面两个表来:一个是对投票项目表的操作,另一个是对是否限制IP的操作。

要注意的是只有用户单击[选择]按钮时,这两个表就会被显现出来。

系统唯一的不足,就是没有实现对投票项目票数的限制,也就是,当管理员修改数据的时候,为了公正起见,能否将修改总投票项目的票数给限制掉,这一功能有待提高。

投票系统维护模块流程图如下图5-4所示:
图5-4 投票系统维护模块流程图
5.3修改投票项
管理员登录后,可以选择修改投票,运行的界面如下:
图5-5修改投票
更改信息
确认提交
删除投票标题
选 择
编 辑
更 新
更改信息
确认提交
更 新 取 消
管理投票页面
返 回
删除投票项
编 辑
取消
开始 管理员登陆
修改投票流程图:
图5-6修改投票流程图
5.4 添加投票项设计
添加项目用到GreedVote1.aspx和GreedVote2.aspx两个文件。

从图5-3中可以看到,在添加投票标题时有一个下拉列表框,这个下拉列表框可以说是本系统中的核心内容之一。

在这个下拉列表框中有两个值,一个是限制IP,一个是不限制IP。

其中限制IP,就是用户在参加投票时不可以在规定的时间里频繁投票,如果连续在规定的时间里投票,这时系统就会报错“对不起,您的投票太过于频繁,为了公平,请稍后进行投票!”这一个警告。

还有一个是不限制IP,就是用户在开始参加投票的时候,可以任意去投票,系统没有在规定时间里对用户的投票进行设计,用户可以在规定时间里连续投入几票或者是几十票。

图5-3添加投票标题页面的运行结果。

图5-7 添加投票标题界面
在填写好投票标题和有关事项时,单击[确认]按钮后,就会将数据提交到GreedVote2.aspx文件中,这个文件再将GreedVote1.aspx和它本身的数据提交到数据库中。

页面中要注意的一个问题,就是("GreedVote2.aspx?voteTitle=" + this.TextBox1.Text.ToString()) 这一条语句,它的功能不亚于上面显示投票选项这个页面里的“GridView1_SelectedIndexChanged”语句,它主要是完成跳转到添加选项页面并且将这个投票标题传递给GreedVote2.aspx中。

添加投票标题维护模块流程图如下图5-4所示:
开始
管理员登陆
填写标题信息

确认提交

跳至GreedV ote2界面
图5-8 添加投票标题维护模块流程图
下面就是图(5-9 )GreedVote2.aspx这一个添加项目页面,从图中大家可以看到有两个按钮:“继续添加”和“完成添加”。

“继续添加”这个按钮的作用就是将投票的项目传送到数据库中。

它里面有一句红色的语句“不能超过20个字”它是限制了投票项目的字数,防止用户在创建投票项目,传递到数据库时出现错误。

图5-9 添加投票子项界面
在GreedV ote2.aspx这个页面中,大家要注意的就是上述这条红色的语句“不能超过20个字”防止数据库出现错误,另外就是在页面中用到了一条Script语
句“Response.Write("<script> alert('添加成功,请继续添加!')</script>")”,当用户完成投票项目的一个添加后,系统就会每次提醒您“添加成功,请继续添加”,如果用户添加的内容超过了数据库所承受的范围时,就会报错。

添加投票项目模块流程图如下图5-10所示:
图5-10 添加投票项目模块流程图
5.5用户投票页面设计
投票页面主要用到vote.aspx这个文件,图5-1为用户投票页面的运行结果。

图5-11 投票页面界面
此页面的原理是每次管理员增加投票标题和增加投票项目时,它都会跳转到这个voteadmin.aspx页面,完成对增加数据的显示功能。

此页面里用到了一个GridView1_SelectedIndexChanged来绑定数据并且选择相应的数据集。

有了这个GridView1_SelectedIndexChanged的命令,用户就可以完成选择投票标题的目的了,比如上述有几个投票标题,一个是“2010年最期待的电影”,一个是“2010年最期待的网络游戏”,要怎么去选择它,并且要在一个“vote”页面里不同的显示出不同的结果,这就是靠“GridView1_SelectedIndexChanged”来完成选择。

显示投票选项维护模块流程图如下图5-12所示:
图5-12 显示投票选项维护模块流程图
第二次
查看投票结果如下:
图5-13 查看投票图
5.6 系统安装过程
第一步:将程序连同目录结构一起复制到D:\Inetpub\中
第二步:安装IIS服务器,将其默认Web站点的主目录设置为D:\Inetpub\,并设置默认文档为login.aspx。

5.7 系统运行过程
第一步:启动IIS服务器。

第二步:在Internet Explorer浏览器中键入http://127.0.0.1/login.aspx (或本机的IP地址)回车,便可打开登录页面。

相关文档
最新文档