1、 本科毕业论文(设计) ( 2010 届) A 大学数学建模竞赛系统的设计与开发 所在学院 专业班级 信息与计算科学 学生姓名 学号 指导教师 职称 完成日期 年 月 A 大学本科生毕业论文(设计) 摘要: 本文首先介绍了 A大学数学建模竞赛系统的研究背景和意义及开发该系统的工具和技术,然后根据需求分析对系统 模块进行设计并实现相应的功能模块,最后完成整体测试。 本系统在分析了 WEB应用系统共性的基础上,利用软件体系结构、 MVC设计模式、 Java面向对象等有关思想设计并实现了一个基于 Tomcat服务器的 WEB应用软件 A大学数学建模竞赛系统。系统设计包括电子公告、参赛报名、资料下载、
2、 BBS和历 届 成绩等五大模块。系统实现的功能有电子公告,参赛报名,资料下载和历届成绩。系统投入使用基本可实现校内数学建模竞赛无纸化。参赛学生的报名,论文提交、查看竞赛结果以及管理人员对报名情况的汇总分析、发布信息等工作均可在线完成,这将 大大提高竞赛相关工作的效率。 关键词: 数学建模竞赛;系统开发; JSP; JavaBean; Servlet A 大学本科生毕业论文(设计) Design and Development of Mathematical Modeling Contest in Jiaxing University Abstract: This paper first in
3、troduced the research background and significance of the Jiaxing University mathematical modeling competition system and the tools and techniques used, and then based on the requirement analysis on the system module design and implement corresponding function module, and finally to complete the over
4、all test. This system is based on the analysis of the WEB application system, on the basis of common use software architecture, MVC design patterns, object-oriented, and other relevant thought Java designed and implemented a Tomcat server based on the WEB application software - Jiaxing University ma
5、thematical modeling competition system. This system includes electronic bulletin, entry registration, the data download, BBS and previous results. The main functions of the system realized are electronic bulletin, entry registration, the data download and previous results. Each students enrolment, s
6、ubmitted, view of the result of the competition and management personnel of the meta-analysis enrollment situation, release information etc all can finished online , this will greatly improve the efficiency of competition related work. Key words: Mathematical Models Competition; System Development;
7、JSP;JavaBean; Servlet A 大学本科生毕业论文(设计) 目录 1 绪论 . 2 1.1 选题背景及意义 . 2 1 2 本文研究内容 . 3 1 3 本文组织结构 . 3 2 开发工具与技术介绍 . 4 2.1 系统结构的选择 B/S 结构的特点 . 4 2.2 数据库的选择 SQL server 2005 . 4 2.3 开发工具的选择 Java . 5 2.4 JSP + JavaBeans + Servlet 技术 . 5 2.5 JSP网站开发模式 模式二( MVC) . 6 2.6 Tomcat . 7 3 数学建模竞赛系统需求分析 . 8 3.1 用户需求分析
8、. 8 3.2 系统性能要求 . 8 3.3 可行性分析 . 8 3.4 功能需求分析 . 9 3.4.1 前台用户管理模块 . 10 3.4.2 竞赛报名模块 . 10 3.4.3 下载资料 . 10 3.4.4 电子公告、历届成绩 . 10 3.4.5 基础信息管理模块 . 10 3.4.6 系统维护模块 . 11 3.4.7 系统帮助模块 . 11 3.5 业务流程图 . 11 4 数学建模竞赛系统的设计 . 12 4.1 系统功能设计 . 12 4.1.1 前台页面设计 . 12 4.1.2 后台页面设计 . 12 4.2 数据库设计 . 13 4.2.1 概念结构设计 . 13 4.
9、2.2 逻辑结构设计 . 13 4.2.3 物理结构设计 . 14 5 数学建模竞赛系统的实现 . 17 5.1 前台首页设计 . 17 5.2 用户登陆和注册模块 . 17 5.2.1 用户登陆 . 17 5.2.2 用户注册 . 18 5.3 竞赛报名模块 . 19 5.4 后台界面设计 . 20 5.5 竞赛报名信息管理 . 21 5.5.1 报名信息管理 . 21 5.5.2 报名信息审核 . 21 5.5.3 报名信息统计 . 22 A 大学本科生毕业论文(设计) 5.6 电子公告管理模块 . 23 5.6.1 公告信息管理 . 23 5.6.2 公告信息审核 . 24 6 系统测试
10、 . 25 6.1 软件测试的目的 . 25 6.2 软件测试方法 . 25 6.2.1 白盒测试 . 25 6.2.2 黑盒测试 . 25 6.2.3 本系统采用的测试方法 . 25 7 结论 . 26 致谢 .错误 !未定义书签。 参考文献 . 27 附件 . 28 A 大学本科生毕业论文(设计) 2 1 绪论 1.1 选题背景及意义 随着我国经济的发展,市场对人才的教育层次和综合素质有了 更高的要求。为了应对市场的考验,提高自身素质,各级学校的学生积极参加各类认证考试。当前,各级学校考生的数量不断增多,传统的考试报名管理模式日益暴露出许多缺陷与不足,很难适应当今教育发展的新形势和新要求
11、1。而在传统的报名方式下,参赛学生报名所需时间较长、报名效率低、信息错误率高;负责老师对参赛人员信息统计,工作任务重。因此,报名方式的改革是各级学校教学改革的重要内容之一。 今天 , 数学以空前的广度和深度向其它科学技术领域渗透 , 过去很少应用数学的领域现在正在迅速走向定量化、数量化 , 需建立大量的数学模型 2。 而 新技术、新工艺蓬勃兴起 , 计算机的普及和广泛应用 , 数学在许多高新技术上起着十分关键的作用 。 大学生数学建模活动以及全国大学生建模竞赛的存在有助于激励学生学习数学的积极性,提高学生建立数学模型和运用计算机技术解决实际问题的综合能力。 在网络上,很多的关于数学建模的网站早
12、已开发并在使用中。一些常用的数学建模网址如: 中国大学生竞赛网汇聚各类大赛资料 、 中国数学建模网 、 大学生数学建模竞赛( CUMCM)全国组委会 、 美国大学生数学建模竞赛( MCM/ICM)官方网站 、 美国华盛顿大学数学建模竞赛网站 、 中国科大数学建 模站 、 浙江大学数学建模基地 、 山东大学生数学建模网 、 北京交通大学数学建模网 、 中华数学竞赛网建模 、 美国大学生数学建模竞赛 (MCM & ICM in USA) 随着网络平台上数学建模网站的增多,数学建模的资料也变得更加的丰富,而在众多的网站中寻找自己所需要的资料,也带来了一定的麻烦。当然,大多的数学建模网站都以 BBS论
13、坛的形式存在的。这样方便了广大的建模爱好者之间信息交流,使得信息的共享尽可能的最大化。丰富的参考资料,活跃的建模交流平台,是爱好者不可或缺的。在 A大学,每年都会有学校的数学建模竞赛,同时会在参赛 选手中挑选出一部分参加全国的数学建模比赛。其间对参赛者竞赛辅导也是必不可少的,但老师的时间和精力毕竟有限,所以很多时候都需要学生自己的努力。那么,对于目前还没有拥有自己的数学建模网络平台的的 A大学,数学建模竞赛系统是一个不错的选择。数学建模竞赛系统的建立,也解决了传统的报名方式带来的弊端,简化了老师的工作,使 A大学的管理更加的信息化、网络化 。 A 大学本科生毕业论文(设计) 3 1 2 本文研
14、究内容 本选题在理论上研究现有的基于 B S结构的软件开发技术,并用于实际的应用项目,目的是代替目前传统的竞赛管理方式。数学建模竞赛系统的研究、设计与 实现是现代化教学管理的一部分,也是适合现在大学生认识和学习数学建模方面知识的一个平台。一方面,系统提供了网上参赛报名方式、资料下载,历届成绩查看,电子公告等功能,方便并简化了学生报名参赛的工作,同时也提供了相关的学习资料和以往数学建模的一些试题和优秀论文。另一方面,系统也为管理人员提供了报名信息管理,用户信息管理,电子公告管理,资料管理,历届成绩管理、系统维护等功能,并对各种数据的进行统计和打印。 本系统前台主要有用户信息管理、竞赛报名、下载资
15、料、 BBS应用、电子公告和历届成绩浏览等功能模块。其中,用户信息 管理主要实现用户注册、登录、修改个人信息操作;竞赛报名主要实现用户填写团队报名资料、修改团队成员信息操作;下载资料则主要实现资料的下载功能。后台则包括用户信息管理、报名信息管理、电子公告管理、历届成绩管理、下载资料管理、论坛管理、系统维护和系统帮助等八大模块。后台中,用户信息管理模块实现用户信息的查询、删除和审核操作;报名信息管理模块实现报名信息查询、删除、修改和审核操作;电子公告管理模块实现查询、添加、修改和删除操作;历届成绩管理模块实现查询、添加、修改和删除操作;下载资料管理模块实现查询、添加、修改和删 除操作;论坛管理模
16、块实现类别管理和版面管理操作;系统维护模块实现数据库管理和数据库回复操作;系统帮助模块提供版本说明和用户操作手册。 1 3 本文组织结构 本文的第一章绪论对本系统的开发背景和意义进行介绍,介绍了本系统所要完成的主要功能和本文的组织安排。 第二章开发工具与开发技术,介绍了 JSP 技术、 Servlet 技术、JavaBean 技术、 SQL Server 2005 数据库、 B/S 架构和 JSP 网站开发模式等相关技术。 第三章需求分析,描述了本系统用户需求分析、系统性能要求,并从技术、经济和操作三方面对系 统进行可行性分析,详细分析了功能需求,并画出了系统的流程图。第四章系统设计,首先介绍
17、了系统的功能设计,然后对系统数据库进行了详细的设计,包括概要、逻辑和物理设计,画出了系统的实体 -联系( E-R)图,完成了各种数据库表的设计。第五章系统的实现,主要完成系统的操作界面、功能模块代码的实现,包括用前后台相应的各个模块。第六章系统测试,首先介绍了软件测试的目的和方法,然后详细介绍了本系统采用的测试方法及测试过程。 A 大学本科生毕业论文(设计) 4 2 开发工具与技术介绍 2.1 系统结构的选择 B/S 结构的特点 B/S结构( Browser/Server, 浏览器 /服务器 模式),是 WEB兴起后的一种网络结构模式, WEB浏览器是客户端最主要的应用软件。这种模式统一了客户
18、端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用 3。客户机上只要安装一个浏览器( Browser),如 Netscape Navigator 或 Internet Explorer,服务器安装 Oracle、 Sybase、 Informix或 SQL Server等数据库。浏览器通过 Web Server同数据库进行数据交互 4。 B/S 结构 最大的优点就是可以在任何地方进行 操作而不用安装任何专门的软件,只要有一台能上网的电脑就能使用,客户端零维护。系统的扩展非常容易 , 维护和升级方式简单 ,且 成本降低, 可以 选择更多 。 结构如图 2.1-1所示: 图
19、2.1-1 B/S 结构示意图 由上图可知, B/S结构采用了三层客户机服务器模式 (以下简称三层模式 ),三层模式在两层模式的 基础上,增加了新的一级。这种模式在逻辑上将应用功能分为三层:客户显示层、业务逻辑层和数据层。客户显示层是为客户提供应用服务的图形界面;业务逻辑层位于显示层和数据层之间,能够把用户表示层和数据库代码分开,其主要功能是执行应用策略和封装应用模式,并将封装的模式呈现给客户应用程序;数据层是三层模式中的最底层,用以定义、维护、访问和更新数据并管理和满足应用服务对数据的请求。 三层模式具有良好的灵活性、安全性和可扩展性,成为真正意义上的“瘦客户端”,具备了很高的稳定性和执行效
20、率。它可以将服务集中在一起管理,统一服务于 客户端,从而具备了良好的容错能力和负载平衡能力,是建立企业级管理信息系统的最佳选择 5。 2.2 数据库的选择 SQL server 2005 SQL是英文 Structured Query Language 的缩写,意思为结构化查询语言。 是一种非过程化、面向集合的数据库语言 6。 SQL 语言的主要功能就是同各种数据库建立联系,进行沟通。按A 大学本科生毕业论文(设计) 5 照 ANSI(美国国家标准协会 )的规定, SQL被作为关系型数据库管理系统的标准语言。 SQL语句可以用来执行各种各样的操作,例如更新数据库中的数据,从数据库中提取数据等。
21、绝大多数流行的关系型数据库管理系统都采用了 SQL语言标准。虽然很多数据库都对 SQL语句进行了再开发和扩展,但是包括 Select, Insert, Update, Delete, Create,以及 Drop 在内的标准的 SQL命令仍然可以被用来完成几乎所有的数据库操作。 结构化查询语言 (Structured Query Language)最早是 IBM的圣约瑟研究实验室为其关系数据库管理系 统 SYSTEM R 开发的一种查询语言,它的前身是 SQUARE语言。 SQL语言结构简洁,功能强大,简单易学,所以自从 IBM 公司 1981 年推出以来, SQL 语言得到了广泛的应用。如今
22、无论是像 Oracle、 Sybase、 DB2、 Informix、 SQL Server这些大型的数据库管理系统,还是像 Visual Foxpro、 PowerBuilder这些 PC上常用的数据库开发系统,都支持 SQL语言作为查询语言。 2.3 开发工具的选择 Java Java是一种跨平台的程序设计语言,用来开发运行于网络上的各种应用程序,能够在各种操作系统上运行 7。其 是由 Sun Microsystems公司于 1995年 5月推出的 Java程序设计语言(以下简称 Java 语言)和 Java 平台的总称。 JAVA 是一种面向对象的语言;一种平台无关的语言,提供程序运行的
23、解释环境;一种健 壮的语言,吸收了 C+语言的优点,但去掉了其影响程序健壮性的部分 (如 :指针、内存的申请与释放等 ) 8。 2.4 JSP + JavaBeans + Servlet 技术 JSP(Java Server Pages)是由 Sun Microsystems 公司倡导、许多公司参与一起建立的一种动态网页 技术标准。 其是一种基于 Java 的技术,用于生成动态网页,支持跨平台、跨 Web服务器 9。 JSP技术有点类似 ASP技术,它是在传统的网页 HTML文件 (*.htm,*.html)中插入Java 程序段 (Scriptlet)和 JSP 标记 (tag),从而形成
24、JSP 文件 (*.jsp)。 但它比基于 ASP( Microsoft Active Server Page)的实现更易于维护和管理 10。 简明扼要地说, JSP是一种用来开发含有动态内容网页的技术。 JSP 技术使用 Java 编程语言编写类 XML 的 tags和 scriptlets,来封装产生动态网页的处理逻辑。网页还能通过 tags 和 scriptlets访问存在于服务端的资源的应用逻辑。 JSP 将网页逻辑与 网页设计 和显示分离,支持可重用的基于组件的设计,使基于 Web 的应用程序的开发变得迅速和容易。 JavaBean 在 JSP 程序中常用来封装事务逻辑、数据库操作以
25、及功能扩展 11。JavaBean 在服务器端应用方面已经表现出了越来越强的生命力。 JavaBean 有许多好的特性。最大的优点是能够一次编写、多次使用而且能够运行在任何 Java 虚拟机A 大学本科生毕业论文(设计) 6 能运行的地方。 Servlet是一种服务器端的 Java应用程序,具有独立于平台和协议的特性 ,可以生成动态的 Web页面。 它担 当客户请求( Web浏览器或其他 HTTP客户程序)与服务器响应( HTTP服务器上的数据库或应用程序)的中间层。 Servlet 是位于 Web 服务器内部的服务器端的Java应用程序,与传统的从命令行启动的 Java应用程序不同, Ser
26、vlet 由 Web 服务器进行加载,该 Web服务器必须包含支持 Servlet的 Java虚拟机。 利用 Beans 和 Servlet 两种技术的优点 ,采用 J SP 来负责页面的表示形式 ,而采用 Servlet 来完成大量的逻辑处理。 12 图 2.4-1 JSP技术原理示意图 2.5 JSP 网站开发模式 模式二( MVC) JSP技术给出了两种开发 Web应用的方式,这两种方式可以归纳为模式一和模式二。本系统采用模式二开发 MVC, MVC 即“模型 -视图 -控制器”( Model-View-Control, MVC)。 13在模式二中,结合了 JSP和 Servlet技术,
27、遵循视图控制器( MVC)模式,请求由前沿的 Servlet接受并处理后,重新定向到 JSP。 JavaBean作为模型的角色,充当 JSP和 Servlet通信的中间工具, Servlet处理完后设置 Bean的属性, JSP 读取此 Bean的属性 进行显示。它实现功能模块和显示模块的分离,使得应用程序更加可维护、可扩展、可移植和可复用 14。 模式一为 JSP+JavaBean,如图 2.7-1所示。 Browser J SP J a v a B e a n R e qu e s t R e s po nse A pp lic a tion S e rv e r D a ta S ou rc e s 图 2.7-1开发模式一