基于web的毕业设计管理系统.docx
《基于web的毕业设计管理系统.docx》由会员分享,可在线阅读,更多相关《基于web的毕业设计管理系统.docx(38页珍藏版)》请在冰豆网上搜索。
![基于web的毕业设计管理系统.docx](https://file1.bdocx.com/fileroot1/2023-6/1/bf0f9203-cc89-47d9-8dd5-25a8d73232a0/bf0f9203-cc89-47d9-8dd5-25a8d73232a01.gif)
基于web的毕业设计管理系统
基于WEB的毕业合计管理系统
基于WEB的毕业设计管理系统
摘要:
本系统是针对现代高校计算机技术的发展,为了应对以往毕业生毕业设计中遇到的工作效率低,交互性差等问题而采用软件工程的设计思想设计的。
本文的基础就是利用PHP技术与MySQL数据库和Apache服务器的结合,开发出的一个基于WEB技术的B/S结构的毕业设计管理系统。
首先,本文探讨了数据库运行的体系结构,介绍了浏览器/服务器模式的工作方式及特点;比较了主机/终端、客户机/服务器和浏览器/服务器等三种模式各自的优缺点。
比较结果表明,浏览器/服务器模式继承了客户机/服务器模式的优点并克服了它的缺点,不受操作系统和硬件的制约,而且能防止“胖客户机”现象的发生,比较容易实现不同网络间的连接。
浏览器/服务器模式是目前广泛使用的主体结构。
因此,我们开发的本系统也将采用了浏览器/服务器模式。
在此基础上,本文还探讨了实现WEB数据库的不同方法。
本次设计是应用LAMP技术实现网络环境下的本科毕业生毕业设计管理。
利用VIM工具结合使用MySQL数据库,PHP等技术的工作原理及特点,并以此为理论技术依据阐述了基于WEB的毕业设计管理系统的结构设计和具体的实现过程。
关键词:
B/S;C/S;毕业设计管理系统;LAMP;Linux;PHP;MySQL;Apache
GraduationThesisManagementSystemBasedonWeb
Abstract:
Thissystemisdesignedinallusiontothedevelopmentofmoderncomputertechnologyinuniversitiesandcolleges.Itadoptsthedesignideologyofsoftwareengineering,inordertoanswertheproblemsthathadbeenfacedbythegraduatesintheirgraduationprojects,suchaslowworkefficiency,andpoorinteraction.ThefoundationofthistextwascombiningtheskillofPHPwithWebDatabase,andexploitingamanagementsystembasedontheskillofWebandthestructureofB/S.
Firstly,thistextdiscussesthesystemandstructurerunbydatabase,introducestheworkingandcharacteristicoftheB/Spattern,andalsocompareswiththreekindofpatternsrespectiveadvantageanddisadvantageamongMainframe/Terminal,Client/ServerandBrowser/Server.TheresultindicatesthatthemodeofB/SinheritsthemeritofC/S,andconquersitsshortcoming.ThismodeisnotconditionedbyOSandhardware,andalsocanprevent"thefatclient"happening,evenitcaneasilyconnectdifferentnetworks.ThemodeofB/Sisthemainstructureusedwidelyatpresent.Thereforethissystemadoptsthemodeofbrowser/server.Onthisfoundation,thistextdiscussesthedifferentwaystoactualizeWebDatabase.
ThisdesignappliesLAMPtechnologytosolvepracticeofgraduationprojectmanagementinthenetworkenvironment.UsingthetoolofVIMandcombiningwithMySQLDatabase,theworkingelementsofPHP,etc.Ittakesthisforthefoundationofacademictechnique,andexpatiatesthestructuraldesignandthedetailedprocessofcarryingoutthegraduationprojectmanagementbasedonWeb.
Keyword:
B/S;C/S;GraduationThesisManagementSystem;LAMP;Linux;PHP;MySQL;Apache
1绪论
1.1系统开发背景及现状
随着计算机网络技术的发展,给信息时代的人们带来了很大的方便。
如今在Internet上,你随处都可以看到很多的各类信息管理系统,如企业信息管理系统,电子商务系统,学校教务管理系统等各类信息管理系统的普及。
而针对本科毕业设计的选题等相关事项,涉及到导师给出课题或学生自选课题,以及在各个阶段需要上交或是提交相关的文档资料等问题,目前主要还是由人为来处理操作,需要花费一定人力,这给整个工作带来了很多不便,而且容易出错。
因此就需要一个对此流程进行管理的电子系统,使得此过程更加方便,更加透明,更加高效,以节省更多的人力和不必要的工作。
而目前的此类系统或多或少的存在以下的问题:
1、不清楚建立网站的目的或没有根据自己的目的详细策划网站的功能,只适应一时之需;结果页面的设计,包括系统内的链接和功能未能真正提供方便;
2、缺少一个针对有效管理本科毕业设计(论文)工作的基于Web技术的B/S的管理系统,所以很多的管理系统远远达不到标准,没能很好地发挥管理系统应有的效果;
3、现实还没有一个适合我校关于毕业设计管理工作的管理系统,或是直接针对我校的毕业设计管理工作而编写的管理系统。
通过对毕业设计管理工作的初步了解,从系统结构的组织,功能的实现,技术的要求以及可行性等多方面进行考虑,认为本课题是一个适应现今毕业设计管理工作需求的计算机信息管理系统,具有一定的实际开发价值和使用价值。
1.2系统开发关键技术与开发环境
1.2.1Linux操作系统简介[1]
Linux是一个免费的类Unix操作系统,Linux操作系统是可以运行在许多不同类型的计算机上的一种操作系统的“内核”,它是提供命令行或者程序与计算机硬件之间接口的软件的核心部分。
1.2.2Apache服务器简介[1]
Apache是世界使用排名第一的Web服务器软件,可以运行在几乎所有广泛使用的计算机平台上。
因为它是自由软件,所以不断有人来为它开发新的功能、新的特性、修改原来的缺陷。
Apache的特点是简单、速度快、性能稳定,并可做代理服务器来使用。
1.2.3MySQL数据库简介[1]
MySQL是一个小型关系型数据库管理系统,目前MySQL被广泛地应用在Internet上的中小型网站中。
由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
1.2.4PHP语言简介[1]
PHP独特的语法混合了C、Java、Perl以及PHP自创新的语法,用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。
PHP具有非常强大的功能,所有的CGI的功能PHP都能实现,而且支持几乎所有流行的数据库以及操作系统。
1.3全文体系
第一章简述了系统的开发背景、发展现状及目的,介绍LAMP的相关技术。
第二章介绍了基于Web的数据库技术的发展情况,并详细介绍了浏览器用及务器模式的工作方式及特点,同时详细还介绍了实现Web数据库的不同方法及PHP技术在性能方面的优越性。
第三章讨论了运用软件工程的思想,做毕业设计管理的系统功能需求、以及整个系统的设计与分析。
第四章主要介绍毕业设计管理系统的功能结构和具体实现,以及所采取的安全控制技术。
第五章是结束语。
总结了全文的主要思想,分析了今后继续努力的方向。
国际互联网技术日新月异,极大地推动了基于Internet的应用技术的发展。
支持Web数据库访问的新技术也层出不穷。
随着校园网的发展,基于Internet的各种教学管理系统、学生管理系统也在不断地深入和发展。
本文所介绍的“基于Web的毕业设计管理系统的设计与实现”仅仅是高校管理信息系统的一个小模块,今后我们将进一步努力,不断地学习新知识,争取将这个系统做到更加完善。
2基于Web的数据库技术分析
当计算机的应用开始从数值计算向数据库方面发展的时候,许多公司和机构都致力于建立一种完美的数据库运行的体系结构。
网络的出现给计算机带来一次重大的改革,为了适应网络环境下的数据库应用,人们依据计算机的应用特点和应用功能的划分方式,提出了一系列应用框架—主机/终端模式、客户机/服务器模式以及随后的浏览器/服务器模式。
在构造一个应用系统时,我们首先要考虑的是系统的体系结构,采用哪种结构取决于系统的网络环境、应用需求等因素。
2.1数据库应用系统层次体系
2.1.1终端/主机体系结构
这是一种早期处理数据所采用的模式,如图2.1所示,这种模式中,服务器存储所有数据,进行所有处理运算,资源也得到了充分的共享。
但是用户界面不友好,主机负载过大。
图2.1终端/主机体系结构
2.1.2客户机/服务器体系结构[7]
传统的C/S结构是两层的,为了应用客户机/服务器这种体系结构,原来完全放在主机上的应用程序被分成了两部分:
客户机端的应用程序和服务器端的应用程序,如图2.2所示。
图2.2客户机/服务器体系结构
由于两层结构的C/S系统本身固有的缺陷,使得它不能应用于一些大型的、结构复杂的系统中,由此出现了三层结构的C/S系统,典型的数据库应用可分成三部分:
即表示部分、应用逻辑部分和数据访问部分。
与两层C/S结构相比,其应用逻辑部分被明确地划分出来。
在硬件实现上,有两种方式:
1、客户位于客户机上,应用服务器和数据库服务器位于同一主机上。
这种方式在主机具有良好性能的前提下,能保证应用服务器和数据库服务器之间的通信效率,减少客户和应用服务器之间网络上的数据传输,使系统具有好的性能。
如图2.3所示。
2、客户位于客户机上,应用服务器和数据库服务器位于不同主机上。
这种方式更加灵活,能够适应客户机数目的增加和应用处理负荷的变动。
在增加新的应用逻辑时,可以追加新的应用服务器。
系统规模越大,这种方式的优点体现得越明显。
如图2.4所示。
两种方式在复杂应用下,使系统达到高性能的关键是应用服务器和数据库服务器间的数据通信效率,它对于应用服务器和数据库服务器位于不同主机上的第二种方式来说尤为重要。
三层C/S模式的功能:
1、客户:
是应用的用户接口部分,负责用户与应用程序的交互。
它接受用户的输入请求,将结果以适当的形式返回用户,常以图形用户界面(GUI)表现出来。
客户的GUI界面应当易于生成和修改,并尽量与其他两层保持独立,以适应应用的变化。
2、应用服务器:
是应用逻辑处理的核心,是具体业务的实现。
它与客户间的数据交往应尽量简洁,客户将请求信息发送给应用服务器,应用服务器返回数据和结果。
3、数据库服务器:
以传统的基于SQL的DBMS实现,它接收应用服务器提出的SQL请求,完成数据的存储、访问和完整性约束等。
2.1.3浏览器/服务器体系结构[7、8]
在典型的客户机服务器体系中,那种为客户安装前端应用程序的方法已不再现实。
于是基于浏览器/服务器模式的系统应运而生,它继承了客户机/服务器模式的所有优点而克服了它的缺点。
防止了“胖客户机”现象的产生,非常容易实现不同网络间的连接。
浏览器/服务器的工作原理和过程:
在浏览器/服务器模式中,客户端的标准配置是浏览器,WEB服务器成为应用处理的标准配置,数据处理仍然由数据库服务器完成。
图2.5为浏览器/服务器模式构成及数据处理方式。
浏览器/服务器模式是三层分布结构,即浏览器—Web服务器—数据库服务器。
一般情况下的工作流程为:
1、用户输入所要启动的主页URL(统一资源定位),浏览器将生成一个HTTP请求并把它发送到指定的web服务器。
2、服务器把主页发回给浏览器,浏览器将其显示在屏幕上。
3、用户阅读相关信息,可继续查找有关信息,向浏览器发出请求。
4、浏览器发送一个请求给相应的服务器,并把由URL标识的文档/文件返回屏幕。
5、服务器收到请求后,查看本站点是否有该文档:
若有,则把该文档放入响应信息中返回浏览器。
6、浏览器收到响应,查看头文件格式,判断是否能直接显示。
若能就显示出来,否则,调用对应的帮助应用程序或外挂程序处理。
7、浏览器等待用户的下一条指令,而服务器准备接受来自浏览器的下一条请求。
2.1.4C/S结构与B/S结构比较[13]
与C/S相比,B/S在许多方面体现了很大的优势,主要体现在以下几个方面:
1、开发和维护成本
C/S开发和维护成本较高,对不同的客户端要开发不同程序,编程工作量大,对于B/S,只需在客户端安装通用的浏览器,所有的维护和升级工作都是在服务器上执行的,不需对客户端进行任何改变,故而大大降低了开发和维护成本。
2、客户端任务
C/S的客户端具有显示和处理数据的功能,任务过重,B/S的客户端把事务逻辑部分分给了服务器,不再负责处理复杂计算和数据访问等关键事务,只负责显示部分,任务大大减轻。
3、采用的标准
C/S所采用的标准只在内部统一,其应用通常是专用的。
B/S所采用的标准是开放的、非专用的,保证了其应用的通用性和跨平台性。
4、灵活性
C/S系统模块中每一部分的变动均要影响到其它模块的变动,系统升级困难,灵活性差。
B/S各层之间相互独立,任何一层的改变不影响其它层的功能,系统改进非常容易,灵活性好。
5、安全性
C/S系统中的客户机直接与服务器相连,非法用户可以很容易地通过应用程序侵入系统,并对服务器数据库进行操作,这给系统的安全性带来极大的隐患。
B/S系统在客户机和服务器之间增加了一层Web服务器,是两者不在相连,客户机无法直接对数据库操作,可有效地防止用户的非法入侵。
6、移植性
C/S系统对不同工具开发的应用程序,一般来说互不兼容,难以移植到其它平台上运行,移植性差。
B/S系统在客户端安装的是通用浏览器,不存在移植性问题。
7、用户界面风格
C/S用户的界面由客户端应用程序决定,用户界面各不相同。
B/S只需在客户端安装通用的浏览器就可以访问应用程序,浏览器的界面统一友好,易于使用。
通过以上对C/S和B/S的介绍和比较,B/S的优点非常明显,因此,本系统将采用B/S模式来开发毕业设计管理系统。
2.2Web数据库管理系统介绍
Web数据库管理系统是指基于Web模式的DBMS的信息服务,充分发挥DBMS高效的数据存储和管理能力,以Web这种浏览器用民务器(B/S)模式为平台,将客户端融入统一的Web浏览器,为Internet用户提供使用简便、内容丰富的服务。
更好的实现不同地域的其他人使用这些信息。
2.2.1Web数据库管理系统工作原理[13、14、15]
在WWW中,浏览器是用户可见的存在界面,在该界面中,用户输入信息,浏览器将该输入信息发送到服务器端。
由服务器通过外部程序访问数据库,并将结果返回给浏览器。
其工作原理如图2.6所示。
基于Web的数据库采用3层的客户端/服务器结构:
第一层是浏览器,第二层是Web服务器,第三层包括一些应用程序及相关的数据库。
浏览器作为用户输入查询条件和显示查询结果的交互界面,用户可以通过填写表单或输入关键字的方式来与Web交互。
当用户单击表单上的按钮时,表单中的数据便被发送到Web服务器。
Web服务器负责用户输入信息的接收,它将数据传送至要被处理的脚本或应用程序,并在数据库中查询数据。
最后,Web服务器将返回结果插入到HTML页面,传送至浏览器以响应用户。
2.2.2利用WWW访问数据库的优点
与传统方式相比,通过WWW访问数据库的优点在于:
1、借用浏览器软件,无需开发数据库前端;如果能够通过WWW来访问数据库,我们就不需要开发客户端的程序,使用的数据库应用都可以通过浏览器来实现,界面统一,降低了成本,能使广大用户很方便地访问数据库信息.
2、标准统一,开发过程简单:
HTML是WWW信息的组织方式,是一种国际标准,使用的www服务器与浏览器均遵循这个标准。
使用HTML标准,开发者甚至只需学习HTML一种语言,使用者只需学习一种界面—浏览器界面。
3、交叉平台支持,几乎在各种操作系统上都有现成的浏览器可供使用,为一个www服务器书写的HTML文件,可以被所有平台的浏览器所浏览,实现了跨平台操作。
实现www数据库的方法有很多,如中间件技术、JAVA技术、下载到客户端访问技术、ASP技术、ASP.NET技术、PHP技术等。
2.3本章小结
本章首先介绍了数据库运行的三种不同的体系结构,即主机/终端结构、客户机/服务器结构、浏览器/服务器结构,并详细介绍了浏览器/服务器的工作原理、工作流程及其在性能方面的优势。
随后,介绍了Web数据库管理系统的概念,描述了其工作原理。
3系统分析与设计
系统分析和设计是信息系统开发的一个重要环节。
本章将主要介绍一个基于WEB的B/S结构的毕业设计管理系统的功能需求、总体框架、以及系统开发原理等做系统的分析研究,并介绍系统所拥有的特点。
3.1系统功能需求
该系统一般包括对选题的发布、更新、删除,学生毕业设计文档信息、导师文档信息的上传(在指导时间前才可提交)和相关信息的发布、查询、更新、输出等功能。
如果人工直接操作的话,工作量将十分庞大,特别是,如果学生人数有几千或上万时,人工操作将变得相当繁杂。
用计算机可使人们从繁重而又单调的工作中解脱出来,仅用一些简单的操作便可及时准确地获得需要的信息。
毕业设计管理系统是一个为适应当前毕业设计管理工作的需求而设计开发的软件系统。
该系统的前台采用的是VIM开发系统,后台数据库采用的是MySQL数据库。
对系统功能的规定:
该系统的角色是学生、教师(导师)和系统管理员。
学生和教师是系统的用户,而系统管理员是系统管理者,虽然系统管理者也是一个用户,但并不影响本系统的功能。
该系统的分析可以用UML来描述,如下图3.1所示。
3.2系统功能特点
1、操作简单、界面友好:
完全控件式的页面布局,使得所有的录入工作更简便;另外,跟踪出现的提示信息也让用户随时清楚自己的操作情况。
2、即时可见:
对操作的处理(包括上传、修改、删除等)将立即在页面的对应栏目显示出来,达到"即时发布、即时见效"的功能。
3、功能完善:
包括常见网站的管理的各个方面:
录入、浏览、删除、修改、检索等各个方面,完整地实现了系统对各项工作的管理要求。
4、方便移植:
针对不同的学院,只需要稍作修改就可以开发出适合本学院特点的毕业设计管理系统。
3.3系统设计
3.3.1系统开发原理
PHP结构是一个三层系统:
UI层、业务逻辑层和数据层,如图3.3所示。
UI层负责与用户交互,接收用户的输入并将服务器端传来的数据呈现给客户。
业务逻辑层负责接收浏览器传来的请求并将请求传给数据层,同时将请求处理结果发给浏览器。
它由Web表单、XMLWeb服务和组件服务组成。
其中Web表单是PHP应用程序的核心所在,它是向客户呈现数据和信息的基础,也是响应和处理客户与显示的Web表单交互生成的信息和数据的基础。
数据层是通过PHP操纵数据为事务逻辑层提供数据服务,如存储数据操作结果、返回数据检索结果等。
3.3.2系统功能设计
本系统的主要功能结构如下:
该毕业管理系统可以在WindowsXP或Linux操作系统平台上运行,Web服务器为Apache,数据库服务器为MySQL,开发工具采用的BlueFish和Vim。
图3.4给出系统的功能结构图。
其工作流程为:
用户登录通过权限判断,游客只能浏览首页内容,注册用户除了可以完成游客的操作外,还可以阅读和查询新闻、下载相关资料、进入学生(或教师)管理模块进行上传、修改和删除等操作。
注册用户除系统管理员外只能对自己录入的内容进行删改操作。
系统管理员具有最高权限,包括审核注册用户信息、发布信息等。
3.3.3系统总体设计
本系统的用户通过首页,进入登陆页面,通过用户身份验证(系统根据用户权限)进入不同的管理页面,用户通过管理页面进行具体的操作。
如图3.5所示:
3.4系统功能概述
系统的主要功能是通过几个功能模块来实现的。
具体的设计过程如下:
1、系统登录:
该模块负责将用户分为学生、教师和管理员来实现用户权限的管理。
2、信息发布模块主要包括以下:
(1)信息浏览(这里的信息包括新闻公告、规章制度、设计安排、推荐范文、表格下载、优秀论文、课题的发布等):
该模块负责分页列出网站所有的信息,包括标题、类型、来源部门字段及发布日期,每条新闻的标题被做成一个超链接,点击它们就能跳转页面进行信息阅读。
(2)信息阅读:
在其他页面中点击标题链接即进入信息阅读页面,此时,每条信息的详细信息将被取出,包括内容、标题、关键字等,并按照相对固定的格式放置在页面的不同区域,所有信息使用大致相同的页面布局,只是各字段对应的内容不同而已。
(3)信息查询:
该模块提供了信息查询功能,输入待查找的内容及选定分类信息可以快速地找到符合条件的信息,并输出查询结果。
(4)信息管理:
该模块负责分页罗列管理员曾发布过且未删除的信息,并可以对该条信息进行删除、修改。
此信息除系统管理员外其他用户不具有对该信息的处理权限(除教师有发布选题的权限外)。
(5)信息录入和修改:
管理员录入一条信息所需要的内容,包含标题、关键字、类型、来源部门、发布日期等,同时从登录模块得到用户名,这些信息将被写入数据库中保存。
3、文档上传:
该模块负责所有用户的文档上交工作。
每个用户注册后有自己单独的文件夹,登陆后上传的文档(在指定时间前上传)将会被保留在此文件夹中。
4、消息处理:
主要负责各个用户之间相互发送消息使用。
用户可输入对方的用户名发送消息给对方。
5、用户注册:
包括学生和教师的注册(需在指定时间段内注册或是直接由管理员添加)。
3.5本章小结
本章主要运用软件工程的基本方法,介绍了毕业设计管理系统的功能需求,并对系统进行了详细的介绍和分析,给出了系统各个功能模块的主要功能和设计指标,使整个系统的设计思路更加清晰,使用户和软件测试等人员对系统有了更加深刻的理解。
为系统的具体实现和代码的编写工作做了很好的铺垫。
4系统功能实现
《基于WEB的毕业设计管理系统》的任务是