网络数据库
题 目 网站投票系统
姓 名 吴 侠
学 号 ***********
院 系 滨江学院电子工程系
成 绩
二O一一 年 十二 月 二十八 日
I
摘 要
随着社会的发展,那些用传统人工方式来做调查问卷不仅效率低、更新慢,而且也给管理工作带来了许多不便,这越来越不能满足社会的需要。在网络经济进一步深化的今天,网络投票系统的出现刚好解决了这些难题。凭借着它能够为用户提供充足的调查信息和快捷的调查手段,已经越来越受到人们的青睐。
本系统按实际需求设计,主要是用来统计网站用户对某个主题或热门话题的意见,而管理者通过这些统计数据做出相应的决策。此次毕业设计的重点是开发动态网站,其中前台技术采用基于B/S模式的ASP.NET,开发工具是VISUAL STUDIO.NET 2005,后台数据库采用SQL SERVER 2000,所使用的开发平台为VS.NET。
本系统主要分前台和后台两个部分。前台部分包括后台登陆模块、查看系统简介模块、查看站长的信息模块和新闻中心模块等。而后台部分包括增加投票项目模块、删除投票项目模块、查看投票项目模块和修改投票项目模块等。
关键词 网络投票系统;ASP.NET技术;SQL技术
II
目 录
摘 要 .......................................................................................................................................... I 1.绪 论 ........................................................................................................................................... 1 1.1课题研究背景 ............................................................................................................................ 1 1.2当今网络投票网站的现状 ........................................................................................................ 1 2. 系统需求分析 ........................................................................................................................... 3 2.1网络投票系统的网站背景 ........................................................................................................ 3 2.2 网站的开发工具 ..................................................................................................................... 3 2.3 网站业务流程 ......................................................................................................................... 3 3. 系统总体设计 ........................................................................................................................... 5 3.1 系统功能概述 ......................................................................................................................... 5 3.2系统功能分析 ............................................................................................................................ 5 3.3 系统功能模块划分 ................................................................................................................. 6 4. 数据库的设计与实现 ............................................................................................................... 7 4.1 数据库需求分析 ..................................................................................................................... 7 4.2数据库概念设计 ........................................................................................................................ 7 4.3 数据库逻辑结构设计 ........................................................................................................... 10 5. 系统详细设计 ......................................................................................................................... 12 5.1 管理端界面设计 ................................................................................................................... 12 5.1.1 网络投票系统维护模块 .................................................................................................... 12 5.1.2 用户模块 ............................................................................................................................ 18 5.1.3 管理员维护模块 ................................................................................................................ 21 5.1.4 用户登录模块 .................................................................................................................... 23 5.1.5 客户注册页面 ..................................................................................................................... 24 5.2客户端界面设计 ...................................................................................................................... 25 5.2.1网站首页 ............................................................................................................................... 26 5.2.2系统简介 ............................................................................................................................... 28 5.2.3 联系我们 ............................................................................................................................. 29 5.2.4新闻中心 ............................................................................................................................... 30 6. 应用与测试 ............................................................................................................................... 31 6.1 测试方案概述 ....................................................................................................................... 31 6.2 测试策略 ............................................................................................................................... 31 6.3 测试方法 ............................................................................................................................... 31 6.4 功能测试 ............................................................................................................................... 32
III
6.4 测试结论 ............................................................................................................................... 33 结 语........................................................................................................................................ 34 参考文献........................................................................................................................................ 35
IV
网络投票系统
1.绪 论
1.1课题研究背景
互联网的兴起,网络信息的日益丰富,使得人们的生活变得更加多姿多彩。同时,互联网的全球覆盖、交互功能等特性给人们了解一些国内外新闻带来更多的方便,借助互联网这一现代化的信息沟通渠道,人们可以通过上网了解一些政治类、经济类、娱乐类等等的新闻。除了去关注了解这些新闻,又如何对这些新闻表达自己的一些看法,一些想法呢,这就需要一个网络投票系统来帮助人们去更好地表达自己的看法,所以网络投票系统已成为人们日常生活在网络上发表看法的一种方式。但一直以来人们使用传统人工的方式来做调查问卷,这种问卷调查方式存在着许多的缺点,如:效率低、更新慢,另外时间一长,将会产生大量的文件和数据,对文件和数据的查找、更新和维护都带来了不少的困难。而网络投票系统的开发可以为广大的用户提供一些充足的调查信息和一些快捷的调查手段,可以更好的解决人们使用传统人工的方式来做调查问卷,也可以改善一些用传统人工方式带来的缺点,这样就有利于用户对数据的查找,更新和维护。
因为网络投票的方便性,许多网站也在自己的页面上进行自主调研,使用投票的方式收集本网站用户的观点等。不仅可以迅速了解社会不同层次、不同行业的人员需求,客观地收集需求信息,调整网站信息策略和营销策略。同时也吸引了更多的长期用户群。许多专业调研公司也正在逐渐推广网络投票,使之成为传统调研形式的重要补充。
网络投票系统是当前一个很热门、实用性很强的系统,把它作为毕业设计的题目,可以把已有的知识用于实践,又可以学到一些新的概念,在这个过程中,可以增加开发经验,对以后的工作学习是一次很有意义的经验积累。
1.2当今网络投票网站的现状
1
网络投票系统
近年来,随着中国互联网的普及,网络投票在中国有迅速普及的趋势。根据CNNIC 报告,中国内地网民总体数量在去年上半年已经超过1亿用户。各地区的网民数量的急剧增加,社会信息化强度的日益增强,企业与企业之间的激烈竞争,使得中国互联网的普及、在线问卷调查和网络投票迅速成为可能。媒体特别是网络媒体越来越多地借鉴调查投票的形式收集与反馈浏览者的意见、观点,网上舆论及热点问题调查是其最常见的形式。
对于一些新的产品,新的观点的调查范围也应该更加广泛,得到的消息就应该及时的反馈给企事业单位,所以一个网络投票系统就诞生,它的诞生正好充分满足了客户的需求,从而进一步扩大了信息反馈的范围,节省了人力资源的浪费,使得企业在竞争激烈的市场中拥有更强大的资本。开发这个网络投票系统一来是为了更好的把市场的信息更加准确更加快速的反馈给客户,使得信息的来源更广泛,从而提高信息的准确性。二来是开发这个网络投票系统可以大大地降低企业为市场调查而消耗的人力和物力,利用节省的资源,从而提高产品的质量,增强企业的竞争力。
网络投票已经成为了民主评议的重要方式,而且网上投票的结果会为企业的仕途增加重要的评分,同样也会给企业的产品带来更多的商机。
2
2. 系统需求分析
2.1网络投票系统的网站背景
网络投票系统网站是一个实用型较强的反馈信息网站,也是一个网站中常用的一种功能模块。当网站的管理员或者是用户提出了一些新的想法与新的建议或者出现一种新的产品、新的观点的时候,可能需要通过用户或者客户的投票方式来确定这些新的观点、新的建议或者是新的产品是否满足用户或者客户的需求,另外,网站还可以通过网络的投票功能做一些实际性的调查工作。让用户随时地了解一些市场的动向,掌握一些市场的流动脉络,同时网络投票系统也是一个企业拥有强大竞争力的必须品,它不仅可以解决一个企业中所存在的一些难题,而且它还不受地区和人手压力的限制,可以随时随地地了解一些有关产品的市场效应。
2.2 网站的开发工具
(1)网页编程语言:HTML,ASP.NET,C#; (2)后台数据库管理系统:Microsoft SQL Server 2000; (3)开发平台为VS.NET;
(4)网页前台编辑工具:Microsoft Visual Studio2005、Micromedia Dreamweaver 8.0;
2.3 网站业务流程
网络投票系统的网站一般由两部分构成,即前台和后台。前台主要是让用户进行投票,查看投票结果,联系站长等功能,后台主要是为管理员进行设计的,管理员可以在此对网站进行更新和维护。
3
网络投票系统
网络投票系统网站业务流程如图2-1所示:
网络投票系统 前台用户界面 后台数据库管理 登陆界面 选择身份 系统简介 投票 联系我们 选择项目 判断模式 提交信息 判别身份 是否限制IP 限制IP 检测IP 管理投票 检测时间 时间允许 投票 编辑 删除 修改 编辑 删除 修改 管理人员 管理投票项不限制 图2-1网络投票系统网站—业务流程
4
3. 系统总体设计
3.1 系统功能概述
系统功能主要包括客户注册、账户管理、限制IP、投票管理、防止用户名重名等基本功能。此外,还实现了网络投票系统的后台管理,包括用户的添加、删除、更新等功能。很大程度上减轻了维护人员的劳动强度,提高了工作效率与管理水平,具有很大的实际使用价值。
3.2系统功能分析
通过对用户的需求分析,可以概括出用户的系统功能需求如下:用户投票、查看投票、投票项目设计。
①用户投票:用户只能从多个选项中选取一项进行投票。
②查看投票:提供用户查看当前投票情况,投票结果以条形图显示。 ③投票项目设计:管理员可以设计不同的投票主题,及投票主题的内容可供用户进行投票。
投票设计又包括以下功能需求:增加投票项目、删除投票项目、查看投票项目、修改投票项目。
具体的功能如下所示: (1)用户界面部分: ①选择投票标题进行投票操作 ②可以友情链接到其他网址 ③后台登录 ④查看系统简介 ⑤查看站长的信息
⑥新闻中心(链接到其他网站进行浏览访问) ⑦增加投票项目 ⑧用户注册 ⑨用户登录
(2)管理界面部分:
5
网络投票系统
①增加、修改和删除投票标题 ②增加、修改和删除投票选项 ③增加、修改和删除管理员 ④增加、修改和删除用户
3.3 系统功能模块划分
根据系统功能分析,可以画出系统的功能模块图,这里主要从客户界面和管理界面分别对功能模块加以描述。用户界面的系统功能模块图3-1如图所示。
网络投票系统网站首页系统简介后台管理联系我们新闻中心系统公告友情链接投票项目了解系统基本概况管理员登录用户登录提供系统站长的信息链接其他网址进行访问
图3-1用户界面的系统功能模块图
6
4. 数据库的设计与实现
数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率及实现的效果产生影响。而合理的数据库结构设计可以提高数据存储的效率,保证数据的完整性和一致性。
设计数据库系统时应该充分了解用户在各个方面的需求,包括现有的及将来可能增加的需求。数据库设计一般包括如下几个步骤:
(1)数据库需求分析 (2)数据库概念结构设计 (3)数据库逻辑结构设计
4.1 数据库需求分析
数据库的需求分析是指,开发人员在设计系统的过程中,需要考虑到这个数据库能否满足开发人员的需求,比如在设计数据库的过程中要用到的操作,如添加、删除、更新等。另外开发人员在设计系统的过程中为了保证数据的一致性,要用到数据库中的触发器。
同样,在设计网络投票系统的过程中,为了保持数据的完整性,就要通过限制字段中的数据、记录中的数据和表之间的数据来保证数据的完整性。本系统主要是用到了一个UpdateVoteSum的触发器,作用是:每次当用户进行投票时,此触发器就会将表的投票数目汇总起来,将总票数一起汇总到主表voteMaster中。
4.2数据库概念设计
数据库概念设计就是将数据项和数据结构的各种实体结合在一起,通过它们相互之间的作用形成数据的流动过程,从而满足用户的需求。
总体来说,数据库的实体主要包括:系统总体E-R图、管理员信息实体、注册用户信息实体和投票信息实体。
7
网络投票系统
系统E-R图如下图4-1所示:
1 投票主表 1 1 取系统配置表 1 N 投票选表项 1 1 投票者表 1 1
图4-1 系统E-R图
管理员信息实体E-R图如下图4-2所示:
管理员 管理员ID 用户名 密码
图4-2 管理员信息实体E-R图
注册用户信息实体E-R图如下图4-3所示:
注册用户 用户ID 用户名 密码 邮箱
图4-3 注册用户信息实体E-R图
8
投票选项信息实体E-R图如下图4-4所示:
投票选项 投票ID用户ID 选项票数投票选项
图4-4 投票选项信息实体E-R图
系统配置信息实体E-R图如下图4-5所示:
系统配置 标题ID 限制IP 限制时间间隔
图4-5 系统配置信息实体E-R图
投票者信息实体E-R图如下图4-6所示:
投票者 投票ID投票者IP 投票时间投票总数
图4-6 投票者信息实体E-R图
9
网络投票系统
4.3 数据库逻辑结构设计
数据库的逻辑结构就是在数据库的概念结构设计完毕后,将数据库中存在的实体结构转化为某种数据库系统所能支持的实际数据模型。
网络投票系统数据库中各个表的设计结果如表4-1至表4-6所示。每个表格表示在数据库中的一个表
(1)管理员表(管理员帐号,管理员密码) 主键:管理员帐号 NOT NULL
说明:管理员表存储系统中的管理员信息。表结构如下表4-1所示:
表4-1 管理员表(Admin) 字段名 id userName password 数据类型 int varchar varchar 长度 4 20 20 允许空 非 非 非 备注 管理员ID(主键) 管理员用户名 登录密码 (2)用户表(用户编号,姓名,密码, E-mail) 主键:用户帐号 NOT NULL
说明:用户表记录系统中注册用户的详细信息。其表结构如下表4-2所示:
表4-2用户表(guest) 字段名 id name psw email
数据类型 int varchar varchar varchar 长度 4 8 7 20 允许空 非 非 非 允许 备注 用户ID(主键) 用户姓名 用户登录密码 用户联系邮箱 (3)投票选项表(选项编号,投票标题编号,投票项目,投票票数) 主键:投票选项编号 NOT NULL
说明:投票选项表记录系统中投票数目的信息。其表结构如表4-3所示:
表4-3投票选项表(voetDetails) 字段 id voteDetailsID voteItem voteNum
数据类型 int int varchar int 长度 4 4 20 4 允许空 非 非 非 非 备注 投票ID(外键) 自动生成ID 投票选项 选项票数 10
(4)系统配置表(系统配置编号,限制IP,限制投票时间)
主键:系统配置表ID NOT NULL
说明:系统配置表记录系统中的用户投票的IP地址与对应的时间信息。其表结构如下表4-4所示:
表4-4系统配置表(voteConfig) 字段 id checkIp checkTime
数据类型 int bit int 长度 4 1 4 允许空 非 非 非 备注 标题ID 1为不限制IP 0为限制IP 限制投票时间间隔 默认值为0 5)投票标题表(投票标题编号,投票标题,总投票数,投票结束时间) 主键:投票标题表ID NOT NULL
说明:投票标题表记录着总投票数和投票标题的信息。 其表结构如表4-5所示:
表4-5 投票标题表(voteMaster) 字段 id voteTitle voteSum endTime
数据类型 int varchar int datetime 长度 4 30 4 8 允许空 非 非 非 非 备注 自动生成为主键 投票标题 总投票数 投票结束时间 (6)投票者表(投票者编号,投票者IP,投票的时间,投票总数目) 主键:投票者表编号 NOT NULL
说明:投票者记录投票者所投票总数的信息。其表结构如下表4-6所示:
表4-6 投票者表(voter) 字段 id ip voteTime voteNum
数据类型 int varchar datetime int 长度 4 30 8 4 允许空 非 非 非 非 备注 主键 投票者IP,主键 投票时间 投票总数 11
网络投票系统
5. 系统详细设计
5.1 管理端界面设计
系统中的管理端是一个系统的核心部分。因为在管理端中要对所有的信息进行操作与维护,包括对数据的添加、修改、删除等操作。而用户端的大部分功能都是以管理端为前提而展开的。
管理端界面设计主要由网络投票系统维护模块、用户模块、管理员维护模块和用户登陆模块组成。下面就各模块的详细设计介绍如下:
5.1.1 网络投票系统维护模块
网络投票系统维护模块的主要功能:显示投票选项页面(Default.aspx),添加投票标题页面(GreedVote1.aspx),添加投票项目(GreedVote2.aspx),删除/修改投票标题(ManagerVote.aspx)
显示投票模块可以说是在所有管理模块中最复杂的一个,也是整个系统的核心。
1.显示投票选项
显示投票选项页面主要用到Default.aspx这个文件,图5-1为管理端显示投票选项页面的运行结果。
图5-1 显示投票选项界面
此页面的原理是每次管理员增加投票标题和增加投票项目时,它都会跳转到这个Default.aspx页面,完成对增加数据的显示功能。此页面里用到了一个GridView1_SelectedIndexChanged来绑定数据并且选择相应的数据集。有了这个GridView1_SelectedIndexChanged的命令,用户就可以完成选择投票标题的目的了,比如上述有四个投票标题,一个是“谁会成为本届美国总统”,一个是“你最喜欢西湖十景中的哪一景”,以及“09年最火的电影”和“水果你最喜欢哪一种”,要怎么去选择它,并且要在一个“vote”页面里不同的显示出不同的结果,
12
这就是靠“GridView1_SelectedIndexChanged”来完成选择。
显示投票选项维护模块流程图如下图5-2所示:
开 始 选择投票 返 回 投 票 查看结果 提取IP N 是否限制IP Y 检查投票时间 第二次 您不能频繁投第一次 感谢您的投票 感谢您再次的投票 第一次 感谢您的投票 第N次 投 票 结 束 返 回 结 束
图5-2 显示投票选项维护模块流程图
2.添加投票项目
添加项目用到GreedVote1.aspx和GreedVote2.aspx两个文件。从图5-3中可以看到,在添加投票标题时有一个下拉列表框,这个下拉列表框可以说是本系统中的核心内容之一。在这个下拉列表框中有两个值,一个是限制IP,一个是不限制IP。其中限制IP,就是用户在参加投票时不可以在规定的时间里频繁投票,如果连续在规定的时间里投票,这时系统就会报错“对不起,你的投票太过于频繁,为了公平,请稍后进行投票!”这一个警告。还有一个是不限制IP,就是用
13
网络投票系统
户在开始参加投票的时候,可以任意去投票,系统没有在规定时间里对用户的投票进行设计,用户可以在规定时间里连续投入几票或者是几十票。图5-3添加投票标题页面的运行结果。
图5-3 添加投票标题界面
在填写好投票标题和有关事项时,单击[确认]按钮后,就会将数据提交到GreedVote2.aspx文件中,这个文件再将GreedVote1.aspx和它本身的数据提交到数据库中。
页面中要注意的一个问题,就是(\"GreedVote2.aspx?voteTitle=\" + this.TextBox1.Text.ToString()) 这一条语句,它的功能不亚于上面显示投票选项这个页面里的“GridView1_SelectedIndexChanged”语句,它主要是完成跳转到添加选项页面并且将这个投票标题传递给GreedVote2.aspx中。
添加投票标题维护模块流程图如下图5-4所示:
14
开 始 填写标题信息 返回 确认提交 取 消 跳至GreedVote2界面
图5-4 添加投票标题维护模块流程图
下面就是图(5-5 )GreedVote2.aspx这一个添加项目页面,从图中大家可以看到有两个按钮:“继续添加”和“完成添加”。“继续添加”这个按钮的作用就是将投票的项目传送到数据库中。它里面有一句红色的语句“不能超过20个字”它是限制了投票项目的字数,防止用户在创建投票项目,传递到数据库时出现错误。
图5-5 添加投票项目界面
在GreedVote2.aspx这个页面中,大家要注意的就是上述这条红色的语句“不能超过20个字”防止数据库出现错误,另外就是在页面中用到了一条Script语句“Response.Write(\"\")”,当用户完成投票项目的一个添加后,系统就会每次提醒您“添加成功,请继续添加”,如果用户添加的内容超过了数据库所承受的范围时,就会报错。 添加投票项目模块流程图如下图5-6所示:
15
网络投票系统
开 始 返回 填写项目信息 完成添加 继续添加 提 交 返回首页
图5-6 添加投票项目模块流程图
16
3. 删除/修改投票标题(ManagerVote.aspx)
删除/修改投票标题用到的文件是ManagerVote.aspx,首先从VoteMaster中取出投票标题的ID,如语句“
修改投票标题用到文件也是ManagerVote.aspx,两种命令的操作全是在同一个页面完成,并且ManagerVote.aspx这个页面延续了Default.aspx这个主页的功能,同样是用到了“GridView1_SelectedIndexChanged”这个语句,来实现对数据库的绑定和对数据的选择功能。图5-7为删除/修改标题页面的运行结果。
图5-7 删除/修改标题界面
当用户单击[选择]按钮的时候,系统会显示出下面两个表来:一个是对投票项目表的操作,另一个是对是否限制IP的操作。要注意的是只有用户单击[选择]按钮时,这两个表就会被显现出来 。系统唯一的不足,就是没有实现对投票项目票数的限制,也就是,当管理员修改数据的时候,为了公正起见,能否将修改总投票项目的票数给限制掉,这一功能有待提高。
17
网络投票系统
投票系统维护模块流程图如下图5-8所示:
开 始 管理投票页面 删除投票标题 编 辑 选 择 更 新 更改信息 删除投票项更 新 编 辑 取 消 确认提交 更改信息 确认提交 返 回
图5-8 投票系统维护模块流程图
5.1.2 用户模块
用户模块的主要功能:显示用户列表(ManagerPeople.html),删除用户列表(ManagerPeople.html),修改用户列表(ManagerPeople.html),添加用户列表(ManagerPeople.html)
从文件的功能上来看,用户模块相对还是比较简单,因为没有运用到一些复杂的功能,比如限制IP和选择不同的按钮来显示相同页面。这里要提到的就是这个用户模块不同于一些别的电子商务系统。本人在编写的时候,将添加用户列表也一起添加到了管理员所管辖的范围里。一般的系统,则会将用户的添加放在用户端,用户只有通过注册页面来完成的。而网络投票系统客户模块,本人在编写的时候,特意将其编入,这样有利于更好的管理。
18
图5-9是添加客户模块列表的显示界面,从图中可以看出这个界面它具有对管理员人员和对客户人员修改、删除、添加的功能。
图5-9 添加客户列表的显示界面
在ManagerPeople.html这个页面中,要说的就是在本页面中,运用了一个上方固定,左侧嵌套的一个框架集来完成对管理人员和客户人员的操作。本页面中主要运用到一个Java Script的一个功能和一个. Ashx 一般处理程序文件来实现对用户名在数据库中的检测功能。具有说来:当管理员添加一个客户时,页面通过这一检测功能来检测是否数据库中已经存在了一个相同的用户名,如果存在,系统会给出一条信息“该用户已经存在”,并且会隐藏“添加”按钮,只有当用户输入的用户名是唯一时,也就是,数据库中没有重名的时候,“添加”按钮才会显现出来,并且提示“你可以注册”,这也是本网站中所用到的另类功能之一。
另外,用户也可以通过本页面来完成以下功能:对客户的修改、删除。同样,删除这一命令用到的功能跟ManagerVote.aspx这个文件一样,首先也从表中取出投票标题ID,语句如“
19
网络投票系统
面进行相应的设置。
客户管理程序流程图如下图5-10所示:
开始 返回 添加客户页面 添加、修改、删除 清空 添加 删除投票项目 修改 填写账号、密码 更 新 取 消 检测账号重名 Y 对不起你不能注册 更改信息 N 确认提交 返 回 确认提交
图5-10 客户管理程序流程图
20
5.1.3 管理员维护模块
管理员维护模块的主要功能:显示管理员列表(ManagerPeople.html),添加管理员页面(ManagerPeople.html),删除管理员(ManagerPeople.html),修改管理员(ManagerPeople.html)组成。
图5-11是管理员模块列表的显示界面,从图中可以看出这个界面它具有对管理员人员和对客户人员修改、删除、添加的功能。
图5-11 管理员列表的显示界面
从该页面中可以看出,管理员维护模块的功能和客户维护模块的页面是同一个页面,包括添加、修改和删除。功能也和客户维护模块一样,也具有判断管理员添加的用户名与数据库中的用户名是否重名。这里对管理员维护已经非常简化,一个安全性要求很高的系统,需要对管理员以组或角色来分类,然后还要有详细的权限定义字典,在权限定义字典中规定了各项功能与用户角色之间的对应关系。于是,管理员维护模块和客户维护模块,也就不一一介绍,就到这里。管理员管理程序流程图如下图5-12所示:
21
网络投票系统
开始 添加管理员页面 返回 添加、修改、删除 清 空 添加 填写账号、密码 删除投票项目 修改 更 新 检测账号重名 对不起你不能注册 N 确认提交 取 消 更改信息 返 回 确认提交
图5-12 管理员管理程序流程图
22
5.1.4 用户登录模块
用户登录模块需要登录页面(login.asp)、验证码页面(CodeCheck.aspx)、注册页面(register.aspx)的支持。
用户登录模块是管理员进入后台管理系统所看到的第一个页面,但放在这里讲的目的是因为登录功能是针对最后使用而设计的,更重要的是会干扰开发者的思路,导致一些更隐性的效率下降。 1.登录页面
图5-13为管理端登录页面的运行结果,此页面并不像其他模块中的页面那样通过框架嵌入到default.asp页中。原因很简单,因为菜单是包含在default.asp上方的head区的,如果login.asp嵌入到default.asp的框架中的话,无法正确控制上方操作菜单的显示。
图5-13 管理端登陆页面
页面中主要包含了两个RadioButton,第一个RadioButton为管理员登录,当用户选择RadioButton为管理员时,系统会执行相应的命令来完成用户所对应的操作。第二个为客户RadioButton,原理跟第一个RadioButton一样。
此页面还一个功能,就是当用户选择完登录身份、输入完用户名和密码时,还要求用户输入相应的验证码,才能进入用户想进入的网页。此验证码是一个随机函数Random产生的混合字符。这也是本网站的一大特色之一。
当用户不是管理员或者还未注册为客户时,要想进入下一操作时,只有单击[注册]按钮,成为会员时,才有权限进行——创建一个简单的投票系统,进行
23
网络投票系统
下一步的操作。
管理端用户登录程序流程图如下图5-14所示:
开始 返回 客户端登录页面 选择不同身份 输入用户名和密码 输入验证码 进行验证 Y 进入后台管理 N 结束
图5-14 管理端用户登录程序流程图
5.1.5 客户注册页面
注册页面模块的主要功能:注册客户列表(register.aspx),注册成功列表(registersuccess.aspx)组成。图5-15为客户注册页面的运行结果,从该页面可以看出,客户注册页面可以看出客户填写的每一项内容都是最重要的。
24
图5-15 客户注册页面
本页面中运用的功能跟ManagerPeople.html这个页面中的功能一样。也主要运用的到一个Java Script的一个功能和一个. Ashx 一般处理程序文件来实现对用户名在数据库中的检测功能。客户注册程序流程图如下图5-16所示:
开 始 客户注册 填写基本信息 注 册 清 空 结 束
图5-16 客户注册程序流程图
5.2客户端界面设计
客户端的界面设计与管理端界面设计基本类似,唯一不同的是客户端的设
25
网络投票系统
计没有像管理端设计的那么复杂,它的设计基本上是基于页面与页面之间的相互跳转,所以在接下来的设计中,本文将初步给大家介绍一下。
网站客户端模块的主要功能是:网站首页(index.aspx),系统简介(systemresume.aspx),联系我们(contact.aspx),新闻中心(NewsCenter.aspx)组成。
5.2.1网站首页
该页面主要是由首页公告、友情链接、投票项目组成。图5-17是网站首页的显示界面,从图中可以看出这个界面它具有对选择投票项目和链接到其他网址的功能。
图5-17 是网站首页的显示界面
页面中可以清晰的看到网站首页的信息,一个友情提示、一个友情链接和一个投票系统组成。用户可以通过查看友情提示,来略知一些近期发生的特大事情,而友情链接则是为方便用户来设计的,本站链接了一些用户常用的一些搜索引擎。投票系统则是和管理端界面中的主面一样,这里就不介绍了。网站首页维护模块流程图如下图5-18所示:
26
开始 系统主页 返回 友情链接 链接外网 返回 投 票 提取IP 选择投票 友情提示 查看结果 N 是否限制IP Y 第二次 您不能频繁投票! 结 束 检查投票时间 第一次 感谢您的投票 第一次 感谢您的投票 第N次 投 票 感谢您再次的投票 结 束
图5-18 网站首页维护模块流程图
27
网络投票系统
5.2.2系统简介
图5-19是系统简介的显示界面,从图中可以看出这个界面主要是为了让用户清晰的了解本站网络投票系统的功能。通过查看系统简介让用户进一步了解这个系统的一些相关知识。
图5-19 系统简介的显示界面
该页面中主要介绍了一些有关系统摘要等,用户可以通过查看系统简介来更好的了解网络投票系统的一些事项,这样有利于用户对该系统的整体操作。系统简介维护模块流程图如下图5-20所示:
开 始 系统简介 查 看 结 束
图5-20系统简介维护模块流程图
28
5.2.3 联系我们
图5-21是联系我们的显示界面,该设计主要是介绍了本站站长的一些基本信息。为方便用户即时联系提供了帮助。
图5-21 联系我们的显示界面
该页面的功能就是建立用户与站长联系的纽带。用户可以通过查看站长的个人档案,来及时联系到站长,方便与站长联系。联系我们模块流程图如下图5-22所示:
开 始 个人档案 查 看 结 束
图5-22联系我们模块流程图
29
网络投票系统
5.2.4新闻中心
图5-23是新闻中心的显示界面,从图中可以看出这个界面它的主要作用就是链接到其他新闻网址,起了一定的桥梁作用。
图5-23 新闻中心的显示界面
当用户想了解一些国内外新闻的时候,可以通过本网站来查看其他新闻网址,本页的设计主要是为了方便用户而设计的,最初设计该页面的时候,也是出于这一点也设计的。本页设计简单主要是完成链接到外部网址的功能。新闻中心模块流程图如下图5-24所示:
开 始 新闻中心 查 看 结 束
图5-24 新闻中心模块流程图
30
6. 应用与测试
6.1 测试方案概述
网络投票系统网站制作完成后,需要对每一个网页进行测试以确保网站能够正常的运行。本人在对系统进行测试时,主要是采用以黑盒法设计基本的测试方案,再用白盒法补充一些必要的测试方案的方法。
6.2 测试策略
对本系统的测试主要采用以下策略:
1、在任何情况下,都首先使用边界值分析的方法。经验表明,处理边界情况时程序最容易发生错误。例如,许多程序错误出现在下标、纯量、数据结构和循环等的边界附近。因此,设计使程序运行在边界情况附近的测试方案暴露出程序错误的可能性更大一些。
2、必要时用等价划分法补充测试方案。 3、必要时再用错误推测法补充测试方案。
4、对照程序逻辑,根据对程序可靠性的要求采用不同的逻辑标准,检查已经设计出的测试方案。在没有达到逻辑覆盖标准的地方,适当补充一些测试方案。
6.3 测试方法
对系统进行测试时,使用得最多的是黑盒测试的边界值分析方法。首先确定边界情况,选取的测试数据应该刚好等于、刚刚小于和刚刚大于边界值的数据。同时,应该即包括输入数据的边界情况又包括输出数据的边界情况。
等价划分法和错误推测法也是测试中使用到的黑盒测试技术。等价划分法是将输入输出数据划分为若干个等价类,再选取等价类中的一组数据进行测试。错误推测法是列举出程序中可能有的错误和容易发生的错误来进行测试。
本次测试,还使用到白盒测试中的逻辑覆盖方法,而其中覆盖标准主要采用条件覆盖和路径覆盖。
31
网络投票系统
6.4 功能测试
登录功能的测试报告见下表:
测试项目 测试地点 网络投票系统 杭州 测试用例序号 测试时间 测试人员 参考信息 Votesystem_Login_1 2009-5-23 许凤丹 模块划分中关于“登录”的说明 功能模块名 Login 测试目的 测试数据 序号 验证是否输入合法的信息,允许合法登录,阻止非法登录 用户名=xu,密码=xu,权限=用户;用户名=cc,密码=cc,权限=管理员。 操作描述 数据 预 期 结 果 显示警告信息:“用户名或密码有误,请重新输入!”。 显示警告信息:“用户名或密码有误,请重新输入!”。 显示警告信息:“用户名或密码有误,请重新输入!”。 显示警告信息:“用户名或密码有误,请重新输入!”。 显示警告信息:“用户名或密码有误,请重新输入!”。 进入用户系统首页。 实 际 结 果 测试状态 1 直接点击“登录”用户名为空 按钮。 密码为空 权限=用户 输入用户名。点用户名=xu 击“登录”按钮。 密码为空 权限=用户 输入用户密码。点击“登录”按钮。 用户名为空 密码=xu 权限=用户 用户xu登失败 录失败,未能连接数据库。 用户xu登失败 录失败,未能连接数据库。 用户xu登失败 录失败,未能连接数据库。 用户xu登失败 录失败,未能连接数据库。 用户xu登失败 录失败,未能连接数据库。 用户xu登失败 录失败,未能连接数据库。 用户xu登失败 录失败,未能连接数据库。 2 3 测试步骤 4 输入用户名和密用户名=xxx 码,点击“登录”密码=xu 按钮。 权限=用户 输入用户名和密用户名=xu 码,点击“登录”密码=xxx 按钮。 权限=用户 输入用户名和密用户名=xu 码,点击“登录”密码=xu 按钮。 权限=用户 输入用户名和密用户名=xu 码,点击“登录”密码=111 按钮。 权限=用户 5 6 7 显示警告信息:“用户名或密码有误,请重新输入!”。 32
8 输入用户名和密用户名=cc 码,点击“登录”密码=cc 按钮。 权限=管理员 点击“注册”按钮 进入管理员系统首页。 用户xu登失败 录失败,未能连接数据库。 与预期结果相同。 是否清除 正常 9 进入注册页面。 是否发现其无其它异常情况 它异常情况 出现频率 无 错误等级 无
6.4 测试结论
本人对此系统的功能进行了测试,通过对测试结果的分析总结得出:此系统的各页面设计成功,但和数据库连接方面还有问题,需要进一步完善。
同时测试用例有一定的局限性,测试环境和实际运行环境也存在着一定的差异,所以不能完全地、准确地测试出系统存在的问题,还需要在后期的维护过程中,对系统暴露出来的问题进行纠正和更新。
33
网络投票系统
结 语
经过开发和设计,整个期末设计到现在已经基本结束。它的各项功能也基本符合用户需求,能够为用户提供充足的调查信息和快捷的调查手段。ASP.NET作为当今基于数据库的网站应用项目最炙手可热的开发技术,代表了今后软件开发的发展方向,在设计中得到了充分的体现。
这次期末设计,通过对网络投票系统的设计,我学到了许多以前在课堂上面学不到的知识,这不仅拓宽了本人计算机开发方面的知识面,同时又让我重新回顾了二年大学生涯中所学到的和实际应用到的知识和技能,进一步加强了自己的实践能力。另一方面,对.net技术也有了一定的认识,对数据库的理解也更加深刻了。相信这次的经验对于我以后的工作会大有益处。
但是,这次设计也让我发现了很多自身的不足,比如对于C#语言不是很精通,对于数据库连接也是知之甚少。这就需要在日后工作中不断地学习,不断地提高。由于毕业设计时间较短和本人水平有限,在系统的整体结构设计上也还存在缺点和不足,敬请各位老师给予批评和改正。
34
参考文献
1.杨浩编著:《ASP.NET电子商务入门经典》,清华大学出版社,2003年3月出版;
2.Scott Worley编著:《ASP.NET技术内幕》,人民邮电出版社,2002年4月出版; 3. 郑豪,柳巧玲,鲍慧等,数据库中ADO.NET 技术的使用,南京晓庄学院学报,2005年9月出稿;
4.李晓黎编著:ASP+SQL Server网络应用系统开发与实例[M],人民邮电出版社 2004年3月出版;
5.王兴东编著:《ASP & ASP.NET 应用编程 150 例》,电子工业出版社,2004年5月出版;
6. Khristine Annwn Page编著:《Dreamweaver MX 2004 网页设计标准教材(中文版)》,电子工业出版社,2004年9月出版;
7.尚俊杰编著:《网络程序设计——ASP案例教程》,清华大学出版社,2004年11月出版;
8.天极网新技术研究室编著:《ASP.NET完全入门》,重庆出版社,2001年1月出版;
9.尚冬娟 郝克刚 葛玮等,软件测试中的测试用例及复用研究,计算机技术与发展,2006年1月出稿;
35
因篇幅问题不能全部显示,请点此查看更多更全内容