《毕业设计论文定稿(软件工程).doc》由会员分享,可在线阅读,更多相关《毕业设计论文定稿(软件工程).doc(54页珍藏版)》请在三一办公上搜索。
1、 NANCHANG UNIVERSITY 学 士 学 位 论 文THESIS OF BACHELOR(2005 2009 年)题 目: 在线投票系统的设计与实现 学 院: 软件工程 系 软件工程 专 业: 网络通讯与信息安全 班 级: 05级网通2班 学 号: 8000105216 学生姓名: 罗 丹 指导教师: 林 振 荣 起讫日期: 2008.122009.5 在线投票系统的设计与实现专 业:软件工程 学 号:8000105216学生姓名:罗 丹 指导教师:林 振 荣摘 要在积极建立科学管理机制的今天,仅仅靠原始的手工管理或简单的单机管理,管理部门面对大量的信息,无法有效率地将其中的重要部
2、分提取出来,并做出相应的判断和处理。投票管理者的决策只能依据手工表数据,在浪费大量人力、物力的同时无法做到实时监控,难以保证数据的准确性和及时性。因此,先进的管理思想就成为了一个可望而不可及的目标。投票非常急需一套既有先进管理思想的系统,作为实现目标和提高现有投票管理水平的一种重要手段。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,在先进的计算机技术、通信技术、控制技术及IC卡技术基础上,采用系统集成方法,逐步建立一个智能化的投票系统。编写在线投票系统,最重要的一点就是如何从烦琐的投票结果中
3、,导出全部投票项目的票数,然后根据投票项目的各个票数,进行票数百分比计算,最后编辑出在线投票系统. 关键词: ASP 投票 ACCESS 设计AbstractBe building up vote to manage today of mechanism actively, only depend originality of the handicraft manage or the simple single machine manage, management Dept. public appearance to a great deal of information, cant effi
4、ciently will among them of importance part withdraw, and do a judgment and the processing for corresponding.Decision which votes governor can according to the statement data, at waste a great deal of manpower, material resources cant in the meantime attain actually supervise and control, the accurac
5、y of hard assurance data with in time sex.Therefore, the forerunners management thought carried out and then becamed an inaccessible target in the vote.The vote needs the management information that a set of current forerunner manages thought system urgently very much, is a kind of important means w
6、hich carries out a target and raises an existing vote a management level.摘 要 在积极建立科学管理机制的今天,The technical along with science of raise continuously, the calculator science is gradually mature, the its strong function has already been peoples deep understanding, it has already entered each realm of th
7、e society of mankind to erupt to flick a more and more important function. Be a calculator applied one part, the teaching missions arrange in order is a hard nut to crack, numerous high schools, research organizations and personals carried on a great deal of research and the development work from th
8、e theories and fulfillment.Keyword: ASP VOTE Access Database目 录摘 要IABSTRACTII目 录III第一章 前言11.1 开发背景11.1.1 开发的目的和意义11.1.2 该课题领域的开发及应用现状分析11.1.3 项目所使用的相关技术的说明21.2 功能概述31.2.1 投票首页模块31.2.2 投票实现模块31.2.3 投票结果模块31.2.4 登录模块41.2.5 投票管理模块41.3 开发工具简介41.3.1 Dreamweaver 简介41.3.2 Access数据库简介61.3.3 asp编程语言61.4 运行要求
9、与简介71.4.1 接口要求71.4.2 支持信息及运行环境7第二章 系统需求分析82.1 概述与运行环境82.1.1 系统研究目标82.1.2 系统主要特色82.2 功能需求82.2.1 模块划分92.2.2 模块功能需求92.3 性能需求112.4 设计约束11第三章 系统概要设计和数据库设计123.1 总体设计123.1.1 基本设计概念和系统总流程图123.2 系统功能逻辑结构143.3 系统交互界面设计143.4 出错处理143.4.1 出错处理语法143.4.2 错误类型153.5 系统UML图分析163.5.1 系统用例图163.5.2 系统类图173.5.3 系统时序图183.
10、5.4 系统协作图213.6 系统ER图设计与分析233.7 数据库设计243.7.1 表设计24第四章 系统各模块详细设计264.1 管理员登录、登出设计264.1.1 管理员登录264.1.2 管理员登出管理系统264.2 投票首页模块274.3 投票实现模块274.4 投票结果模块284.5 投票项目管理模块28第五章 系统实现315.1 管理员登录模块的设计与实现315.1.1 功能描述315.1.2 登录界面设计315.1.3 数据流325.1.4 部分主要代码325.2 投票首页模块335.3 投票实现模块375.3.1 功能描述375.3.2 界面设计375.3.3 具体实现代码
11、385.4 投票结果模块405.5 投票项目管理模块425.5.1 添加新投票项目425.5.2 修改投票项目435.5.3 删除过期投票项目45第六章 开发难点与解决技巧46第七章 结论47致谢(REFERENCES)48参考文献49第一章 前言1.1 开发背景1.1.1 开发的目的和意义随着INTERNET的发展,世界网民的数量急剧增加,社会的信息化强度增强,企业竞争之激烈,故对市场信息的掌握范围不仅仅是周边的一些信息,而应把范围扩展到全国,甚至全世界,INTERNET恰恰是实现这目标的有利工具。对于新产品,新观点的调查范围应该更广泛,消息应该及时反馈给企业单位,故一个网上在线投票系统应允
12、而生,它正好充分满足客户的需求,信息反馈的范围扩大,人力资源的节省,从而使得企业在竞争激烈的市场中拥有更强大的资本。开发此投票系统是为了更好的把市场的信息更准确更快速的反馈给客户,使信息的来源更广泛,从而提高信息的准确性。运用此系统可以降低企业为市场调查而消耗的人力和物力,利用节省的资源提高产品的质量,增强竞争力。计算机在代替和延伸脑力劳动方面发挥越来越重要的作用,不仅在工业方面而且在日常生活中也越来越离不开计算机。网站中经常会有在线投票模块,网站管理员可以通过在线投票模块了解网站用户对投票主题选项的支持率。从而知道网络用户的喜好。因此,选择该课题具有一定的研究意义。1.1.2 该课题领域的开
13、发及应用现状分析在积极建立科学管理机制的今天,仅仅靠原始的手工管理或简单的单机管理,管理部门面对大量的信息,无法有效率地将其中的重要部分提取出来,并做出相应的判断和处理。投票管理者的决策只能依据手工表数据,在浪费大量人力、物力的同时无法做到实时监控,难以保证数据的准确性和及时性。因此,先进的管理思想就成为了一个可望而不可及的目标。投票非常急需一套既有先进管理思想的系统,作为实现目标和提高现有投票管理水平的一种重要手段。 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,在先进的计算机技术、通信技
14、术、控制技术基础上,采用系统集成方法,逐步建立一个智能化的投票系统。1.1.3 项目所使用的相关技术的说明开发该系统我主要采用ASP技术和Access数据库相结合的方式。主要用Macromedia Dreamweaver MX 2004来编写asp页面。ASP是Active Server Page的缩写,意为“动态服务器页面”。它可以与数据库和其它程序进行交互,是一种简单、方便的编程工具。ASP是一种服务器端脚本编写环境,可以用来创建和运行动态网页或Web应用程序。ASP网页可以包含HTML标记、普通文本、脚本命令以及COM组件等。利用ASP可以向网页中添加交互式内容(如在线表单),也可以创建
15、使用HTML网页作为用户界面的web应用程序。之所以在本系统中采用ASP语言,是因为其有以下一些特点:u 利用ASP可以实现突破静态网页的一些功能限制,实现动态网页技术;u ASP文件是包含在HTML代码所组成的文件中的,易于修改和测试;u 服务器上的ASP解释程序会在服务器端执行ASP程序,并将结果以HTML格式传送到客户端浏览器上,因此使用各种浏览器都可以正常浏览ASP所产生的网页;u ASP提供了一些内置对象,使用这些对象可以使服务器端脚本功能更强。例如可以从web浏览器中获取用户通过HTML表单提交的信息,并在脚本中对这些信息进行处理,然后向web浏览器发送信息;u ASP可以使用服务
16、器端ActiveX组件来执行各种各样的任务,例如存取数据库、发现和那个Email或访问文件系统等;u 由于服务器是将ASP程序执行的结果以HTML格式传回客户端浏览器,因此使用者不会看到ASP所编写的原始程序代码,可防止ASP程序代码被窃取。ASP技术通过在静态HTML内容中嵌入服务器端脚本,实现网页内容的动态改变。Web服务器从磁盘上读取含有服务器端脚本的网页,在网页发送给客户端浏览器之前,先对其中的服务器端脚本进行解释,输出用户定制内容,从而产生动态网页。数据库之所以采用Access数据库,是因为其能够胜任投票系统中的数据处理。本文在相关理论指导下,在分析其他一些系统的基础上,开发出了一个
17、简单的在线投票系统(包括功能模块设计、数据库结构设计等),基本解决了管理人员的烦琐事务。1.2 功能概述在线投票系统可以分为投票首页模块、投票实现模块、投票结果模块、登录模块和投票管理模块。1.2.1 投票首页模块该模块用于实现当前投票主题、选项以及其他投票主题,可将其他投票主题转变为当前投票主题。1.2.2 投票实现模块选中当前投票主题选项,提交信息后,进入投票实现模块,该模块会判断用户是否进行了重复投票,如果没有将会修改投票记录。此模块供用户对投票项目进行投票所用。在投票首页上,将会显示最近一个投票项目和其他投票列表,用户可自由选择那些尚未过期的项目进行投票。投票操作具体为:用户选择一个或
18、多个投票选项,提交,即可投票成功,此时页面会跳转至显示投票结果的页面。在这个模块中,还包括一下系统配置问题:主要是针对那些重复ip的用户多次重复对一个项目进行投票,以此来限定投票次数,即一个用户名,一个ip,对一个投票项目只能进行一次投票。1.2.3 投票结果模块投票结束后可进入投票结果模块。该模块应用图形和文字的形式显示各选项的投票率,并且显示投票开始时间、结束时间和投票总数等信息。1.2.4 登录模块该模块用于管理员登录。登录验证后,管理员才可以对投票信息进行维护。登录模块是管理员进入相应权限的桥梁,此模块主要就是供管理员进入系统进行相应操作的一个门槛,界面上主要有几个文本框和提交、重置按
19、钮,管理员在其中输入用户名和密码,点击按钮,系统便会根据提取到的文本信息与后台数据库进行搜索匹配和身份确认,若匹配成功,则管理员即可进入系统进行下一步操作,否则会被拒绝访问。1.2.5 投票管理模块该模块实现了系统的重要功能,即投票主题的添加,修改,删除。在添加投票主题时可设置投票选项的个数;在修改投票主题时,也可以重新设置投票选项的个数和内容,可以添加新选项,也可以删除旧选项。u 添加投票项目子模块:通过链接进入添加投票项目页面,填写需要添加的投票项目的内容,如:投票主题,投票选项个数,投票方式为单选还是多选,投票开始时间和结束时间,几个投票选项的内容等,填写完毕后提交即可,新的投票项目就会
20、显示在主页面上。u 修改投票项目子模块:修改投票项目的操作界面与添加投票项目的操作界面大体上相同,主要是对投票项目的某些具体内容进行修改,修改完成后,同样单击提交按钮即可。u 删除投票项目子模块:当某些投票项目过期,管理员已经不再需要时,便可对该项目进行删除操作,从数据库中彻底删除该项目前会有提示警告框,只有在确定的情况下,投票项目才会被删除。1.3 开发工具简介1.3.1 Dreamweaver 简介Dreamweaver是美国MACROMEDIA公司开发的集网页制作和管理网站于一身的所见即所得网页编辑器,它是第一套针对专业网页设计师特别发展的视觉化网页开发工具,利用它可以轻而易举地制作出跨
21、越平台限制和跨越浏览器限制的充满动感的网页。DREAMWEAVER特点: u 最佳的制作效率 Dreamweaver可以用最快速的方式将Fireworks,FreeHand,或Photoshop等档案移至网页上。使用检色吸管工具选择荧幕上的颜色可设定最接近的网页安全色。对于选单,快捷键与格式控制,都只要一个简单步骤便可完成。Dremweaver能与您喜爱的设计工具,如Playback Flash,Shockwave和外挂模组等搭配,不需离开Dremweaver便可完成,整体运用流程自然顺畅。除此之外,只要单击便可使Dreamweaver自动开启Firework或Photoshop来进行编辑与设
22、定图档的最佳化。 u 网站管理 使用网站地图可以快速制作网站雏形、设计、更新和重组网页。改变网页位置或档案名称,Dreamweaver 会自动更新所有连结。使用支援文字、HTML码、HTML属性标签和一般语法的搜寻及置换功能使得复杂的网站更新变得迅速又简单。 u 无可比拟的控制能力 Dreamweaver是唯一提供Roundtrip HTML、视觉化编辑与原始码编辑同步的设计工具。它包含HomeSite和BBEdit等主流文字编辑器。帧(frames)和表格的制作速度快的令您无法想像。进阶表格编辑功能使您简单的选择单格、行、栏或作未连续之选取。甚至可以排序或格式化表格群组,Dreamweave
23、r 支援精准定位,利用可轻易转换成表格的图层以拖拉置放的方式进行版面配置。所见即所得 Dreamweaver成功整合动态式出版视觉编辑及电子商务功能,提供超强的支援能力给Third-party厂商,包含ASP, Apache,BroadVision, Cold Fusion,iCAT, Tango与自行发展的应用软体。当您正使用Dreamweaver在设计动态网页时,所见即所得的功能,让您不需要透过浏览器就能预览网页。梦幻样版和XML Dreamweaver将内容与设计分开,应用于快速网页更新和团队合作网页编辑。建立网页外观的样版,指定可编辑或不可编辑的部份,内容提供者可直接编辑以样式为主的内
24、容却不会不小心改变既定之样式。您也可以使用样版正确地输入或输出XML内容。 全方位的呈现利用Dreamweaver设计的网页,可以全方位的呈现在任何平台的热门浏览器上。对于cascading style sheets的动态HTML支援和鼠标换图效果,声音和动画的DHTML效果资料库可在Netscape和Microsoft浏览器上执行。使用不同浏览器检示功能,Dreamweaver可以告知您在不同浏览器上执行的成效如何。当有新的浏览器上市时,只要从Dreamweaver的网站在下载它的描述档,便可得知详尽的成效报告。1.3.2 Access数据库简介ACCESS是桌面型数据库,优点是:操作灵活、
25、转移方便、运行环境简单,对于小型网站的数据库处理能力效果还不错。缺点是:不支持并发处理、数据库易被下载存在安全隐患、数据存储量相对较小、数据量过大时严重影响网站访问速度和程序处理速度。1.3.3 asp编程语言ASP 指 Active Server Pages (动态服务器页面) ,它是运行于 IIS 之中的程序,IIS 指 Internet Information Services (Internet 信息服务) ,它是 Windows 2000 及 Windows 2003 的免费组件,IIS 同时也是 Windows NT 4.0 的可选组件。ASP 文件和 HTML 文件类似,可包含文
26、本、HTML、XML 和脚本,ASP 文件中的脚本可在服务器上执行。文件的扩展名是 .asp。当浏览器请求某个 HTML 文件时,服务器会返回这个文件,而当浏览器请求某个 ASP 文件时,IIS 将这个请求传递至 ASP 引擎。ASP 引擎会逐行地读取这个文件,并执行文件中的脚本。最后,ASP 文件将以纯 HTML 的形式返回到浏览器。Asp的优点如下:u 动态地编辑、改变或者添加页面的任何内容 u 对由用户从 HTML 表单提交的查询或者数据作出响应 u 访问数据或者数据库,并向浏览器返回结果u 为不同的用户定制网页,提高这些页面的可用性 u 用 ASP 替代 CGI 和 Perl 的优势在
27、于它的简易性和速度 u 由于 ASP 代码无法从来浏览器端察看,ASP 确保了站点的安全性u 优秀的 ASP 编程可将网络负载降至最低 1.4 运行要求与简介1.4.1 接口要求u 硬件接口:无特别要求;u 网络硬件接口要求:现实中要求具有高速以太网组网一实现联网销售,但是在理论实验验证软件本身的目的来看,无需网络通讯接口。u 软件接口要求:无1.4.2 支持信息及运行环境u 软件支持:本软件开发是使用 asp应用服务器; u 设备支持:推荐配置:WindowsXP,256M内存;u 数 据 库:Microsoft office Acess第二章 系统需求分析2.1 概述与运行环境在线投票功能
28、是网站应用程序最常用的功能之一,也是网站应用程序开发常用的功能模块。2.1.1 系统研究目标该系统的研究目标:当网站的管理员或用户提出一些新的想法与建议或者出现一种新产品时,他们可能需要通过用户或者客户的投票方式来确定这些新的想法、建议或者新的产品是否满足用户或者客户的需求,另外,网站还可以通过网站在线投票功能做一些实际性的调查工作。随时了解市场是一个企业拥有强大竞争力的必须品,所以在线投票系统可以解决企业的难题,不受地区限制,不受人手压力的限制,随时了解产品的市场效应,增强自己的竞争力;此系统将以图形化的界面来显示投票结果,一目了然的回馈客户的的需求信息。2.1.2 系统主要特色本在线投票系
29、统具有的主要特色:其一,方便的操作。原有的手工投票管理基本上是人工操作,效率低下,缺乏方便性,在线投票管理系统运用计算机和其他附加设备,不再需要手工操作,基本上是全自动化,能够节省人力、最大限度地利用各种宝贵的资源,大大的提高了效率。 其二,友好的界面。友好的用户界面会给人一种亲切的感觉,在使用起来不会觉得沉闷,效率自然也会提高了。其三,强大的功能,能够满足各种统计需要,实现快速简单统计。2.2 功能需求本系统具体要实现的功能内容包括:u 数据库选择u 数据库接口的实现u 数据库建模方法u 程序开发软件u 需求分析u 需求的提取u 需求定义与规约u 系统总体设计u 系统结构图u 数据功能模块设
30、计u 系统的主要功能设计u 数据库设计u 投票界面模块的设计u 投票项目模块的设计u 投票结果模块的设计u 用户管理模块的设计u 管理员登录的设计与实现2.2.1 模块划分根据功能需求,共划分为五个模块:u 投票首页模块u 投票实现模块u 投票结果模块u 管理员登录模块u 投票管理模块2.2.2 模块功能需求各个模块所对应的需求如下:u 投票首页模块该模块面向对象为所有访问页面用户,其中包括:对所有投票议题标题的浏览,该模块用于实现当前投票主题、选项以及其他投票主题,可将其他投票主题转变为当前投票主题。首页上还有供管理员登录系统进行投票项目管理的登录区域。u 投票实现模块此模块供用户对投票项目
31、进行投票所用。在投票首页上,将会显示最近一个投票项目和其他投票列表,用户可自由选择那些尚未过期的项目进行投票。投票操作具体为:用户选择一个或多个投票选项,提交,即可投票成功,此时页面会跳转至显示投票结果的页面。在这个模块中,还包括一下系统配置问题:主要是针对那些重复ip的用户多次重复对一个项目进行投票,以此来限定投票次数,即一个用户名,一个ip,对一个投票项目只能进行一次投票。u 投票结果模块此模块供用户查看该项目已有的投票情况。投票结果显示页面会显示相应投票选项的得票率和该项目总的得票数。u 管理员登录模块该模块用于管理员登录。登录验证后,管理员才可以对投票信息进行维护。如增删投票项目等。u
32、 投票管理模块此模块为管理员操作的模块。管理员登入系统后,可对本系统的所以投票项目进行相应的管理,如:添加投票项目,修改投票项目,删除投票项目等。添加投票项目子模块:通过链接进入添加投票项目页面,填写需要添加的投票项目的内容,如:投票主题,投票选项个数,投票方式为单选还是多选,投票开始时间和结束时间,几个投票选项的内容等,填写完毕后提交即可,新的投票项目就会显示在主页面上。修改投票项目子模块:修改投票项目的操作界面与添加投票项目的操作界面大体上相同,主要是对投票项目的某些具体内容进行修改,修改完成后,同样单击提交按钮即可。删除投票项目子模块:当某些投票项目过期,管理员已经不再需要时,便可对该项
33、目进行删除操作,从数据库中彻底删除该项目前会有提示警告框,只有在确定的情况下,投票项目才会被删除。2.3 性能需求本系统可用普通PC,windows XP系统,对硬件无很大要求。2.4 设计约束本系统设计严格按照开题报告中预定的项目进度执行,于4月25号完成论文写作,与5月5号之前完成所有编码工作,准备答辩。第三章 系统概要设计和数据库设计3.1 总体设计该部分将对系统进行总体设计,包括系统逻辑图,功能模块的概要设计,交互界面设计等内容,采用软件工程设计思想,为详细设计打好基础。3.1.1 基本设计概念和系统总流程图本系统的总流程图如下图所示:投票前台用户界面后台数据库管理登陆界面选择身份输入
34、信息提交信息在线投票系统添加投票有删除登陆失败客户管理员更新添加管理选项删除编辑更新管理投票项目管理系统配置提交项目信息判别确认身份时间不允许时间允许已投过票第一次投票限制IP不限制多选模式单选模式投票是否限制IP检测时间检测IP选择选项判断模式选择项目是否还有选项没有删除投票项目图3-1 系统流程图3.2 系统功能逻辑结构本系统按照功能逻辑分为五个板块:投票首页模块,投票实现模块,投票结果模块,管理员登录模块,投票项目管理模块。具体功能逻辑图如下:在线投票 普通用户管理员登录模块投票模块首页投票管理模块改变当前投票主题删除投票信息投票实现模块投票结果模块 添加投票信息修改投票信息图3-2 功
35、能逻辑图3.3 系统交互界面设计本系统采用典型的图形用户界面,优点是使得操作界面友好,便于让用户使用。具体是通过Dreamweaver的设计视图,可以直接设计系统的界面,所见即所得。操作简便。3.4 出错处理3.4.1 出错处理语法由于本系统采用的是asp语言,所以可以用以下两种语法进行出错处理:u On Error Goto eee eee指的是发生错误时你将程序转到的地方。eee可以用其他非保留字代替。 比如: Sub Test() On Error Goto eee exit sub eee: End Sub 如果要是执行出错的话就执行,否则只执行语句1 u On Error Resum
36、e Next 这是如果出现错误就忽略,执行下一步3.4.2 错误类型表 31 出错处理类型表编号出错信息处理输出信息01未输入必要字符选项提示用户请输入字符02登陆的用户名密码错误提示用户该用户名不存在密码错误03输入投票项目起始、截止时间的日期格式错误提示用户显示正确格式无效日期04输入查询的关键字错误或与数据库中的记录无匹配项提示用户该投票项目不存在05必要数据字段为空提示用户数据字段不能为空06数据字段格式不对提示用户显示正确格式07数据字段类型不对强制转换,若成功继续;若失败提示用户显示正确类型08操作的数据不存在直接返回无效数据操作09投票项目修改失败返回到原来界面显示失败原因10投
37、票项目添加失败直接返回显示失败原因11投票项目删除失败返回到原来界面显示删除失败3.5 系统UML图分析3.5.1 系统用例图整个投票系统包括:投票者,投票项目,管理员这三个案例。总的用例图如下:图 3-3 系统用例图用例描述:u 投票者用例名:用户行为者:对项目进行投票的人目的:对投票项目进行投票类型:端点、主要的、基本的级别:一级u 管理员用例名:整个投票系统的管理员行为者:对投票系统进行管理维护的人目的:添加、删除、修改投票项目类型:端点、主要的、基本的级别:一级3.5.2 系统类图系统类对象描述:u 类名:user功能:添加投票项目、对投票项目进行投票、查看投票结果属性:用户名、IP(
38、系统记下投票用户的ip,以防其恶意重复投票)u 类名:admin功能:添加、修改、删除投票项目属性:管理员名、登录密码u 添加投票项目功能:添加一个新的投票项目属性:添加投票选项个数、添加投票主题名、选择投票所属类别、选择投票项目类型、添加投票开始时间、添加投票结束时间、添加投票项目的选项的内容。u 修改投票项目功能:修改投票项目各个属性的内容属性:修改投票选项个数、修改投票主题名、修改投票所属类别、修改投票项目类型、修改投票开始时间、修改投票结束时间、修改投票项目的选项的内容等u 删除投票项目功能:删除投票项目选项或整个投票项目操作:删除投票项目的一个或几个投票选项deloption();删
39、除整个投票项目delvote()系统类图如下:图 3-4 系统类图3.5.3 系统时序图u 用户投票模块图3-5 用户投票时序图u 用户添加投票项目模块图 3-6 用户添加投票项目时序图u 管理员登录模块图 3-7 管理员登录时序图u 管理员添加投票项目模块图 3-8 管理员添加投票项目时序图u 管理员修改投票项目模块图 3-9 管理员修改投票项目时序图u 管理员删除投票项目模块图 3-10 管理员删除投票项目时序图3.5.4 系统协作图u 用户投票模块图3-11 用户投票协作图u 用户添加投票项目模块图 3-12 用户添加投票项目协作图u 管理员登录模块图 3-13 管理员登录协作图u 管理
40、员添加投票项目模块图 3-14 管理员添加投票项目时序图u 管理员修改投票项目模块图 3-15 管理员修改投票项目协作图u 管理员删除投票项目模块图 3-16 管理员删除投票项目协作图3.6 系统ER图设计与分析整个系统开发过程中,主要涉及的实体有:投票项目,管理员,用户。系统ER图如下:用户投票项目注册号用户名主题名密码选项个数主题号选项内容开始时间按结束时间选择选项投票数选票总数投票选择 317 系统ER图3.7 数据库设计3.7.1 表设计本系统一共用到3张数据库表,分别如下:表 32 登录表(login)字段数据类型是否为空索引是否主键注释login_id自动编号Not null有(无
41、重复)是管理员IDusername文本Not null否管理员名字password文本Not null否管理员登录密码注:管理员的username为:admin password为:admin表 33 投票项目表(topic表)字段数据类型是否为空索引是否主键注释topic_id自动编号否有(无重复)主键投票项目号topic_name文本否否投票项目主题option_type文本否否选项类型,单选还是多选counts数字否否选票总数begin_time日期/时间否否投票起始时间end_time日期/时间否否投票截止时间表 34 投票项目选项表(options表)字段数据类型是否为空索引是否主键
42、注释option_idChar否有(无重复)主键选项号tp_id数字否否与该选项对应的主题号options文本否否选项内容Votes数字否否该选项的得票数第四章 系统各模块详细设计4.1 管理员登录、登出设计4.1.1 管理员登录程序页面名称:login.asp程序功能:实现管理员的登录,以便进行投票项目的管理。权限范围:整个投票系统的管理员输入数据:管理员账号和密码输出数据:无程序简单逻辑:u 输入管理员用户名和密码,回车确认u 检查输入是否合法,合法跳入3,不合法跳入1,并提示错误u 查询数据库,如果存在并匹配,跳入4,不存在跳入1,提示错误u 根据所获得的用户名、密码合法信息,跳入投票项
43、目管理页面,进行已存在的投票管理。4.1.2 管理员登出管理系统程序页面名称:YZ_login.asp程序功能:实现管理员登出管理系统权限范围:整个投票系统的管理员输入数据:检验request(action)是否等于logout,若是,则登出输出数据:无程序简单逻辑:u 管理员管理投票项目操作完成后,若想退出管理系统,则点击“退出管理”超链接。u 登出程序处理页面根据获得的action值,来判断是否进行登出操作。u 若是,则退出管理系统,回到投票系统首页,并清空session的值,整个退出操作完成。4.2 投票首页模块程序页面名称:index.asp程序功能:用于显示当前投票主题、选项以及其他投票主题,可将其他投票主题转变为当前投票主题权限范围:所有浏览本投票系统的