• 497.50 KB
  • 2022-04-22 13:43:49 发布

基于web的毕业设计管理系统开发毕业论文.doc

  • 40页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
'基于web的毕业设计管理系统开发毕业论文目录第1章综述11.1系统开发背景11.2毕业设计管理的现状11.3毕业论文管理的发展趋势21.4选题意义和可行性21.4.1选题来源21.4.2题目的特色和现实意义21.4.3系统的可行性21.5论文结构3第2章需求分析42.1系统需求分析42.2功能需求42.2.1管理员功能42.2.2教师功能52.2.3学生功能62.3本章小结7第3章概要设计83.1系统工作流程83.2系统总模块划分83.3系统主要模块的关系图93.4本章小结11第4章详细设计124.1系统分层设计124.2系统结构化设计124.2.1系统模块结构图124.2.2模块类图134.3部分子模块的详细设计164.3.1教师出题164.3.2系审核毕业设计题目164.3.3学生选择毕业设计题目164.3.4学生上传开题报告174.4本章小结18第5章系统的实现195.1系统实现使用的技术195.2数据库195.2.1数据库的设计195.2.2数据库的创建1937 5.2.3连接数据库205.3关键业务的实现215.3.1教师题目申请实现215.3.2部门审核教师申请题目的实现225.3.3学生选题的实现225.3.4学生上传开题报告等225.3.5院、系部门抽查设计进度235.4本章小结23第6章结束语24致谢26参考文献27附录A数据表详细设计28附录B主要业务实现代码3137 四川理工学院毕业设计(论文)第1章综述1.1系统开发背景毕业设计工作是高校毕业生走上工作岗位前的最后一次综合性实践教学活动。这项工作时间要求紧,涉及面广,再加上毕业设计期间学生外出实习,影响了毕业生与学院、指导教师之间的及时指导和沟通,给此项工作带来一些难度。基于以上原因,本文提出设计的基于Web平台的毕业设计管理系统,能够将从毕业生设计选题、开题报告、论文指导、答辩到设计成绩汇总统计等环节在WEB上实施,毕业生可以在互联网上很方便地使用本系统进行毕业设计,指导教师也可以在网上向毕业生下达毕业设计的各项任务和进行指导,实现了对毕业设计诸多环节的在线信息化处理,为毕业设计管理工作提供了一种崭新、高效的方法。1.2毕业设计管理的现状高校本科毕业设计和毕业论文是人才培养和教学中一个非常重要的环节,而通过调查,目前很多高校对于本科学生毕业设计和毕业论文的管理均是采用传统的手工模式,首先,由符合指导资格的教师出题,然后再由教师指导学生选题,学生做完开题报告后,设计和论文的撰写由指导教师指导完成,中途对设计和论文进行中期检查,最后进行论文的批改、答辩以及论文的归档,在这一过程中,每一项工作一般都得教师与学生面对面交流,或者学生所做的设计和论文采用邮寄、E-mail、电话等方式与教师进行交流。这种方式积极的一面在于教师和学生直接面对面的探讨和解决问题,但也存在着很多局限性,特别是随着Internet的出现和现代远程教育的发展以及现代本科教育模式的发展,继续采用传统手工管理模式对毕业设计和毕业论文进行管理就显得费时,整理资料的工作量大,效率低,对于教学管理者来说难以及时准确地掌握毕业设计和论文的整体进展情况,给管理带来一定的难度,而这种情况的最终结果是导致毕业设计和毕业论文的质量难以保证,也没有充分利用无处不在的Internet优势和丰富的网络资源。37 四川理工学院毕业设计(论文)在用计算机管理毕业设计和毕业论文的工作上,国外由于教育机制的不同,其相应的管理软件不能满足我们的需要,国内由于各种不同层次的学校管理制度的不同,也缺乏能够满足不同学校需要的管理软件,因此,在这种状况下,结合学校自身对毕业设计和毕业论文管理规定,开发一个适合自己学校的管理软件,实现对毕业设计和毕业论文这一重要教学环节进行现代化的管理就显得尤为重要,它不但是实现教学管理现代化和网络化的一个重要手段,同时也是促进传统教学模式改革的一个方法。对于改进教学管理,提高教学质量具有十分重要的意义和较大的实用价值。1.1毕业论文管理的发展趋势随着网络的普及,各行各业对业务的管理实现网络化是一个必然的趋势,在学校教学管理这一方面,目前已经普遍实现的是学生的学籍管理,一些大型的教务管理系统,在对毕业设计和毕业论文的管理这一方面很少涉及或者不够全面,由于这一方面工作的重要性和特殊性,也缺乏一个通用的模式,而随着远程教育的发展和丰富网络资源的共享对它的管理实现网络化是必要的,现实的和有较大实用价值。毕业设计管理系统开发完成后,可以作为一个独立的系统使用,也可以作为其它教务管理系统的子集,使得毕业设计和论文的管理和监控这一重要的教学环节得以通过网络实现。1.2选题意义和可行性1.2.1选题来源四川理工学院目前的毕业论文(设计)还没有进行计算机管理,每年都是由教师出好题目以后,打印出来由学生自由选题,这种方式出现了许多问题,如:消耗时间较长、工作效率低,出现不公平现象(每道论文题目的人数有限制,以班级为单位的手工选题方式出现选题速度快的班级或学生把某些题目选满,有些老师的论文没有人选或选的人数少,从而导致不平衡现象)。同时,毕业论文和毕业答辩情况只有纸质文件。这样,管理的工作量太大,查询效率低。因此,需要开发一套管理系统,从教师出题、学生选题直到毕业论文管理都使用计算机管理。基于以上原因,本文提出了开发网上选择毕业论文的系统,它能很好的解决以上问题,改变了以往以班级为单位的原始手工选题的方式,极大地便捷了学生和指导老师,显著地提高了工作效率。1.2.2题目的特色和现实意义毕业设计管理系统的研究、开发和使用,可以实现毕业设计和论文撰写的管理信息化和网络化。通过网络出题、选题,大大节约了时间,极大地便捷了学生和指导老师,显著地提高了工作效率。实现了通过在线发布题、选题、出题、学生成绩入库等操作;教师只需要通过网络提交自己的论文题目,浏览已选论文的学生;学生通过网络直接选题、选教,提交开题报告。论文管理系统弥补了以前的选题时间长、工作效率低等不足,对于改进教学管理,提高教学质量具有十分重要的意义。37 四川理工学院毕业设计(论文)1.1.1系统的可行性从技术方面来看,该系统是基于B/S结构的毕业设计管理系统,在技术上是可以实现的。该论文管理系统是在WindowsXP系统环境和基于WEB的网络编程开发技术ASP实现,同时使用MicorsoftSQLserver2000来持久化数据。从条件和环境上完全满足系统的要求。因此从技术方面讲,开发此论文管理系统是可行的。浏览器/服务器的模式体系结构利用WEB服务器和ASP作为数据库操作的中间层、浏览器作为表现层,将客户机/服务器模式的数据库结构与WEB技术密切结合,从而形成具有三层WEB结构的浏览器/服务器模式的数据库体系。系统的工作原理:在前端采集用户通过IE、Netseape等浏览器向WEB服务器发出的请求,WEB服务器响应请求,通过WEB服务的中间组件访问后台数据库,并将操作结果以HTML页面的形式返回给前端浏览器。本系统选用B/S模式通过浏览器,如IE就能实现在Intemet上应用和管理,并且在客户端无需进行任何配置。数据库放在服务器端集中管理,系统的升级和改进比较方便。从开发成本和效益方面看,本系统由于是一个中小型软件系统,无需投入太大的开发经费,并且本系统实施后可以显著提高论文管理效率,有助于实现毕业设计的网络化管理,因此经济上是可行的。从应用和操作方面来说,毕业设计管理系统可适用于四川理工学院各个教学系部,系统开发完成后,对使用该系统的管理人员,教师和毕业班的学生进行简单的培训就可以保证系统为相关人员所使用。1.2论文结构全文共分五章,具体内容如下:第1章综述,介绍了系统的选题来源和实用价值,国内外研究的现状及发展趋势,系统可行性说明,作者对论文整体章节的安排。第2章需求分析,并对系统进行了功能需求分析,给出了系统的用户分类,然后对每类角色需求的功能进行挖掘,并给出用户对应的用例图。第3章概要设计,在需求分析的基础上,对系统进行了概要设计。分析了系统总体的工作流程,给出了系统的结构框架和各部分模块应实现的功能。第4章详细设计,在概要设计的基础上,对系统进行详细设计。其中包括系统分层设计和系统机构化设计,给出了系统分层模型图和系统模块结构图以及各模块类图,并对系统中使用的一些技术做了简介。然后对系统中关键业务逻辑进行细说设计,并给出了系统中关键业务的顺序图。第5章系统的实现,首先对操作数据库接口进行了设计。然后是对系统中关键业务的编码实现。37 四川理工学院毕业设计(论文)第6章结束语,对实现本系统的过程和意义进行了总结。总结了本系统最终实现的功能以及不足之处并提出了解决方案。第1章需求分析1.1系统需求分析毕业设计管理系统的服务对象为四川理工学院各个教学系的管理人员(审核组)、教师和毕业班学生。系统应当赋予这三类用户不同的权限。总的来说,系统提供的服务:用户能从前台进行不同用户登录。教师通过网络把毕业论文(设计)题目提交到系统,经过审核员(组)审核后入库。学生通过自己的登录帐号进入系统进行资格认证后,就可以看见通过了审核员(组)审核发布入库的题目和指导教师。学生根据自己的实际情况选择合适的题目(如无适合题目可自主申请课题)和教师。当某一个题目或教师选择人数超过设定的人数后,不能再选。学生选择题目和教师后,系统将锁定该模块,学生联系指导教师,完成开题报告并提交至系统。指导教师确认学生可以开题后学生再进行毕业设计,最后提交毕业论文,准备毕业答辩。每位学生的答辩记录资料和论文都放到数据库中。1.2功能需求1、毕业设计管理系统共分三个部分:学生,教师,管理员。2、学生部分:选题、自主申请、提交前期文档(如开题报告,任务书等)、提交毕业设计代码(论文)、查看通知,浏览信息等操作。3、教师部分:包括题目申请,审核学生自命课题,查看学生设计情况,查看、发布通知和留言等,学生成绩评定,个人信息维护。4、管理员部分:包括题目审核,师生资格审核,跟踪学生毕业设计,下载学生上传的毕业设计资料和文档。5、对用户初使化信息的入库、浏览毕业论文情况、对毕业论文题目的审核入库、毕业答辩记录和毕业答辩成绩的入库等。6、从系统的服务对象为出发点,下面具体描述系统应具备的功能。1.2.1管理员功能为管理员提供的功能,如图2-1所示:37 四川理工学院毕业设计(论文)图2.1管理员功能1、审核题目:将教师提交的所有题目显示,点击查看题目具体要求和说明,审核论文是否符合要求。如果通过审核则进行发布。处于发布状态的题目将不能再发布,学生只能选择审核通过了的题目或自主申请题目。2、跟踪学生毕业设计情况:浏览已经选择了题目的学生。通过输入学生的任一基本信息(如学号、姓名等),在数据库中查找,得到学生的基本信息和学生题目的信息。再根据题目ID查找题库表中对应的论文题目和指导教师等相关信息。3、学生/教师管理:对学生/教师具体信息查看和管理4、通知管理:管理员发布通知和相关资源。以方便指导学生和教师工作安排。5、资格审核:对学生毕业设计资格,教师指导资格进行审核。根据教师职称指定可申请题目数和可指导学生数。1.1.1教师功能为教师提供的功能,如图2-2所示:图2-2教师功能1、指导资格申请:教师需要登陆系统提交申请进行指导资格认证,通过之后方可进行题目申请;2、题目申请:37 四川理工学院毕业设计(论文)教师创建毕业设计题目,并提交到系统,等待管理员审核,只能审核通过了的题目才能进入题库成为正式题目,只有正式题目学生才能选择。3、查看发布通知、留言等:教师在登陆后可以发布查看通知,在学生与课题确认后可对自己所指导学生进行留言,与学生进行即时交流。4、维护个人资料:修改自己的个人信息,比如修改密码,电话,邮箱等。5、审核学生申请的题目查看学生设计:教师查看学生所申请指导教师为自己的题目并根据审核标准审核,教师可查看自己所指导学生的设计完成情况,并评阅。6、学生成绩评定:在评阅学生设计并确认通过后进行评分,上传到系统。1.1.1学生功能系统为学生提供的功能,如图2-3所示:图2-3学生功能1、选题:学生通过自己的账号进入系统确认个人信息提交资格申请,通过后可浏览经过教研审核入库的题目。根据自己的情况选择合适的题目(亦可自主申请课题),当某一个题目选择人数超过限定的人数后,不能再选。2、前期文档提交:学生选择题目后,通过留言模块与指导教师联系,完成并提交开题报告、任务书等。指导教师确认可以开题后,进入设计环节。3、代码(论文)提交:37 四川理工学院毕业设计(论文)学生完成论文后,让学生从网上提交毕业论文到系统供教师评阅,打分。1、查看公告/通知,留言收发:学生登陆后可以查看教师通知,系统公告,并下载相关资源,与教师通过留言进行即时交流。2、维护个人资料:学生可以维护自己的信息,比如联系方式,密码等。1.1本章小结本章对毕业设计管理系统选进行了需求分析。主要包括对系统功能性需求和各类用户角色的功能分析。下一章将要在此基础上,对毕业设计管理系统进行设计。第2章37 四川理工学院毕业设计(论文)概要设计本章的主要内容是系统的设计,将在上一章需求分析的基础上,对毕业设计管理系统进行概要设计。1.1系统工作流程本系统主要由以下几个过程组成:出题,审题,选题,开题报告,毕业设计。如图3-1所示:图3-1系统工作流程流程说明:系统管理员统一导入教师/学生基本信息;教师/学生登陆确认信息并提交资格申请;院系管理员审核通过后教师可申请题目入库,学生对审核通过的题目进行选择或自主申请题目(自主申请题目需要指定指导教师,并交由该教师审核)。前期准备工作完成后进入开题环节,学生提交开题报告到系统由教师审阅通过后进入设计环节,学生根据任务书完成设计(论文),设计(论文)经指导教师根据标准审核通过进入答辩环节。1.2系统总模块划分论文管理系统分为三个模块,包括管理员模块、学生模块、教师模块。1、学生管理模块:37 四川理工学院毕业设计(论文)其主要使用者为毕业班学生。提供的功能有:查询论文题目及要求、网上选取论文题目、选择指导教师、网上提交开题报告、网上提交毕业论文。2、教师模块:由教师使用,提供的功能有:网上提交毕业论文题目及要求、查看学生的选题情况、对自主申请题目学生题目审核、查看学生的开题报告、中期报告以及毕业论文、成绩评定。3、管理员模块:由系,学院,教务处使用。提供的功能有——审核资格,审核题目,学生教师信息管理,毕业设计环节管理、学生进度跟踪抽查等。1.1系统主要模块的关系图一、系统功能模块图如图3-2所示:图3-2系统功能模块二、学生模块该模块为学生提供操作:学生可通过该模块所提供的功能进行毕业设计资格申请,题目选择(如题库中题目不适合自己还可以自己申请题目,如已选题,可退选再选其他题目)。自主选择指导教师,查看各级部门发布的通知,和下载相关资源。对个人基本信息进行维护(如,密码,电话邮箱等非系统锁定信息),提交所有毕业设计环节中需要上交的稳当,代码(如开题报告、任务书、各阶段论文文档、设计代码等);查看设计最终成绩。如图3-3所示:37 四川理工学院毕业设计(论文)图3-3学生模块三、教师模块该模块为教师提供操作:教师可通过该模块提供的功能进行毕业设计指导资格申请;申请设计课题(最多可申请10个);查看自己所指导学生的所有基本信息;发布通知以及相关资源上传;对学生的开题报告、任务书、设计各阶段文档、代码等进行审核;最后对学生设计进行评分,并录入。如图3-4所示:图3-4教师模块四、管理员模块该模块为管理员提供操作:部门管理员:对学生/教师基本信息进行管理;对教师指导资格、学生毕业设计资格审核;发布院系部门公告,;对学生设计进度跟踪管理。37 四川理工学院毕业设计(论文)系统管理员:录入教师学生基本信息并实施管理;发布系统公告(如功能模块的开放关闭等)如图3-5所示:图3-5管理员模块1.1本章小结本章在上一章需求分析的基础上,对系统进行了概要设计。首先对系统总体的工作流程进行设计,然后划分系统的模块。下一章将会在本章的基础上对系统进行详细设计。第2章37 四川理工学院毕业设计(论文)详细设计本章在上一章概要设计的基础上,对本系统进行详细设计。1.1系统分层设计本系统分为浏览器,Web服务器,数据库三层。如图4-1所示:图4-1B/S结构为使程序方便扩展,修改。Web服务器上又被划分为:Web层、服务层和持久层三层。如图4-2所示:图4-2WEB层划分Web层、服务层和持久层的职责如下表4-1所示:表4-1层名职责依赖层Web层接收浏览器请求,调用服务层接口,并响应浏览器。服务层服务层供浏览器或Web层调用,实现业务逻辑和事务管理。持久层持久层提供访问和操作数据库的接口。供服务层使用。数据库1.2系统结构化设计1.2.1系统模块结构图结构设计[1]37 四川理工学院毕业设计(论文)的目标是,综合采用各中手段,将系统需求转换为数据结构模块结构(或对象/类结构)的表达形式,并实现系统的性能,安全性,可靠性要求。结构设计的结果是用模块结构图表达,如图4-3所示。在图中,矩形表示相对独立的功能单元,称为“模块”。连接上下层模块的线段表示它们之间的的调用关系。处于上层的是控制(管理)模块,它们执行协调和控制的功能。处于下层的是从属模块,它们执行具体的数据处理功能。按照控制模块的内部逻辑,一个控制模块可以调用一个或多个下属模块;一个下属模块可以被多个控制模块调用。图4-3系统模块结构图1.1.1模块类图类图(Classdiagram)是显示了模型的静态结构,特别是模型中存在的类、类的内部结构以及它们与其他类的关系等。类图不显示暂时性信息。类图(Classdiagram)由许多(静态)说明性的模型元素(例如类、包和它们之间的关系,这些元素和它们的内容互相连接)组成。类图可以组织在(并且属于)包中,仅显示特定包中的相关内容。它作为最常用的UML图,显示出类、接口以及它们之间的静态结构和关系;用于描述系统的结构化设计。37 四川理工学院毕业设计(论文)一、学生模块类图如图4-3所示:图4-4学生类图二、教师模块类图如图4-4所示:图4-5教师类图三、管理员模块类图如图4-5所示:37 四川理工学院毕业设计(论文)图4-6管理员类图四、选题模块类图如图4-7所示:图4-7选题类图37 四川理工学院毕业设计(论文)1.1部分子模块的详细设计1.1.1教师出题教师登录系统后,可以将论文的题目输入到系统中,其顺序如图4-9所示:图4-9教师出题顺序图1.1.2系审核毕业设计题目系管理员登陆后,可以对教师申请的题目进行审核。题目审核通过后会成为正式题目。学生的毕业设计选题只能选择正式题目。其顺序图如图4-10所示:图4-10设计题目审核顺序图1.1.3学生选择毕业设计题目学生登录后,浏览己经审核发布的论文题目,在可选的论文题目中,根据自己的情况选择题目进行提交。其顺序图如图4-11所示:37 四川理工学院毕业设计(论文)图4-11学生选题顺序图1.1.1学生上传开题报告学生登陆后,可以为毕业设计题目上传开题报告。其顺序图4-12所示:图4-12学生上传开题报告顺序图37 四川理工学院毕业设计(论文)1.1本章小结本章根据上一章的概要设计对系统进行了详细设计。首先对本系统的分层结构设计,然后进行了系统结构设计,给出了系统模块结构图。并对系统的各个模块进行了详细设计,给出了关键性业务模块的顺序图。下一章将在本章设计的基础上对系统进行编码实现和提出解决系统关键问题的一些方法和策略。37 四川理工学院毕业设计(论文)第1章系统的实现本章将在第4章系统详细设计的基础上,给出毕业设计管理系统中连接数据库、浏览.审核.发布论文、学生答辩记录、成绩入库、学生浏览、选择论文题目、学生提交开题报告或论文等部分模块的实现,并探讨系统中的一些关键问题的解决方法。1.1系统实现使用的技术用户通过浏览器使用HTTP协议与服务器通信。服务端全部使用ASP(ActiveServicePage)技术实现。当用户使用浏览器请求ASP主页时,WEB服务器响应,调用ASP引擎来执行ASP文件,并解释其中的脚本语言(JAVAScript或VBScript),通过ODBC连接数据库,由数据库访问组件ADO(ActiveXDataObjects)完成数据库操作,最后ASP生成包含有数据查询结果的HTML主页返回用户端显示。1.2数据库1.2.1数据库的设计1、通用检索主页的设计通用检索主页的设计,实际就是对一个HTMLFORM表单进行编码和提交的过程。FORM表单是HTML中能够实现WEB页面交互性的重要组成部分,它为WEB页面提供了丰富的交互对象,可以方便地完成信息查询条件的录入及数据库、检索途径的选择等。2、数据库接口程序设计数据库接口程序设计的关键是通过ActiveX服务器组件ADO及包含的对象,实现对数据源的读写,用户可在浏览器画面中检索、输入、更新和删除数据库信息,从而建立提供数据库信息的主页内容。ADO主要提供了七个对象和四个集合来完成对于数据库的管理,包括:Connection、Command、Parameter、Recordset、Field、Property、Error以及Fields、Properties、Parameters、Errors。1.2.2数据库的创建使用MicrosoftSQLServer2000数据库的企业管理器创建用户数据库,本系统数据库名为:sheji.打开新创建的数据库,根据WEB服务器系统中需要创建数据表并保存。37 四川理工学院毕业设计(论文)具体需要创建以下数据表:1、t_bumen:存放部门管理员信息;2、t_info:存放上传文件详细信息;3、t_jiaoshi:存放教师信息;4、t_new:存放公告,通知信息;5、t_right:存放模块开放情况;6、t_sjsq:存放教师/学生资格申请名单;7、t_sjsq1:存放教师/学生审核通过名单;8、t_system:存放系统管理员信息;9、t_timu:存放教师/学生题目申请信息;10、t_timu1:存放通过审核题目(即题库)11、t_xuanti:存放学生选题/选教情况;12、t_xuesheng:存放学生信息;13、t_email:存放教师与学生在线即时交流信息。各数据表详细设计情况请参见附录A。1.1.1连接数据库一、选择连接数据库方式:1、使用ODBC数据源连接,这种连接方式需要配置系统数据源。移植性太弱。2、使用ODBC驱动来连接,这种连接方式不需要配置系统数据源,系统移植性大大提高。这里我们需要使系统具有较强的移植性所以选用ODBC驱动连接来实现。二、创建数据库链接(Connection)通过服务器对象的CreateObject方法,可以创建Connection对象和使用变量接受对象引用。一旦连接对象创建之后,它就可用来打开到任何ODBC数据源的连接。三、创建数据对象(Recordset)DimRs‘申明变量’SetRs=Server.CreatObject("ADODB.Recordset")‘创建数据对象。四、关闭数据连接通过对象Connection和Recordset的close方法来关闭连接和记录集,在关闭前须清空集合。五、具体实现如下代码所示:37 四川理工学院毕业设计(论文)<%setconn=server.CreateObject("adodb.connection")"创建连接conn.open"driver={SQLServer};server=.;database=sheji;uid=sa;pwd=;""关闭数据库subcloseDB()ifisobject(conn)thenifnot(connisnothing)thensetrs=nothingconn.closesetconn=nothingendifendifendsub%>1.1关键业务的实现1.1.1教师题目申请实现一、申请注意事项如图5-1所示:图5-1课题申请须知教师在申请题目之前,须仔细阅读申请须知,并按照相关规定进行课题申请操作。二、申请界面如图5-2所示:图5-2教师题目申请教师可通过此界面进行申请课题相关信息的填写并提交到服务器,供管理员审核。37 四川理工学院毕业设计(论文)详细实现代码参见附录B源码一1.1.1部门审核教师申请题目的实现审核界面如图5-3所示:图5-3教师题目审核管理员可通过此界面对指导教师所申请的课题进行审核入库。详细实现代码参见附录B源码二1.1.2学生选题的实现操作界面如图5-4、图5-5所示:图5-4已选题图5-5未选题学生可通过以上两个界面进行题目的选取和退选操作。详细实现代码参见附录B源码三1.1.3学生上传开题报告等上传界面如图5-6所示:图5-6学生上传文档37 四川理工学院毕业设计(论文)学生可通过该界面进行设计文档的上传供指导教师评阅。详细实现代码参见附录B源码四1.1.1院、系部门抽查设计进度抽查界面如图5-7所示:图5-7学生设计进度抽查院、系管理员可在此界面对所选定的学生进行毕业设计任一环节完成情况的抽查,详细实现代码参见附录B源码五。1.2本章小结本章对毕业设计管理系统进行了编码实现,完成了系统的开发,在文章中,限于篇幅的原因,给出了主要模块的实现代码和实现后的界面图,如需查看其他功能,请登陆系统。第2章37 四川理工学院毕业设计(论文)结束语本课题在开发的中从开始到结束经历了很多过程,从前老以为只要程序编好就行,很少有意识的训练自己对整个系统的设计。而且每次课程设计都是急于编码,根本不从整体考虑系统和设计。显然,这种方法是不可取得,若是一个小程序还可以,但是涉及到稍微大一些的项目时,就会出现顾此失彼,多次返工,最后会心有余而力不足,使整个系统以失败结束。此次的毕业设计管理系统是基于B/S结构的毕业设计管理系统,这对于高校本科生的毕业设计和毕业设计进行计算机管理,有利于提高工作效率,解决了毕业生校外实习难于与教师面对面直接接触带来的很多不方便的问题,对于监督和检查毕业设计和毕业论文这一重要的教学环节提供了良好的环境和工作平台。对于改进传统的毕业论文管理模式注入了新的内容,对提高人才培养质量起到了积极的作用。在这次系统设计中我深刻体会到以下三点:(1)需求分析是以后设计和实现能顺利进行的保证和依据,若没有做好需求分析,那么你就不知道自己的系统应该实现什么功能,这样会导致在以后的系统实现时会频繁的给系统增加功能,而把整个设计搞得很乱。因此需求分析必须认真做好,为以后设计和实现奠定好的基础。(2)不要急于做总体设计,也不要忽略总体设计的重要性。在做总体设计之前一定要对所做系统有个清楚地认识,也要对开发系统的技术尤其是关键技术有清楚的认识,然后选择设计模式或设计思想,这样可以避免把系统复杂化或过于简单化。(3)整体规划或总体设计不必过于注重实现细节。在做总体设计时不要一味的把某个功能具体到实现,不要老是把精力放在怎么实现上,而是要放在怎样完整的抽象整个系统上。设计中的不足:在本次设计开发过程中,在代码的整体编排上独立性有一很大的提高,但是随之而来的,在可读性方面可能还有一些欠缺考虑的地方存在,对于其本系统的设计者来看,整体的架构可能还不太清晰,总体还是不够好,今后应该在实践中继续提高,在注释的书写方面也是有待加强,应着重重视这一方面文字的书写,这样更可以便于阅读,加快读程序者了解程序整体架构和思路,这也是日后要加强的部分。在管理员权限方面,由于设计的时间安排不够合理,管理员登陆的功能没能够完全实现,比如管理员应该可以删除分类,但这次设计中没有完成此功能。37 四川理工学院毕业设计(论文)总之,由于个人的知识水平和经验的不足,本设计中可能存在很多的问题,我会在今后的学习中逐步加强。37 四川理工学院毕业设计(论文)致谢经过半年的忙碌和工作,本次毕业设计已经接近尾声,作为一个本科生的毕业设计,由于经验的匮乏,难免有许多考虑不周全的地方,如果没有导师的督促指导,以及同学们的支持,想要完成这个设计是困难的。在这里首先要感谢我的导师欧阳俊林老师。欧阳老师平日里工作繁多,但在我做毕业设计的每个阶段,从查阅资料到设计草案的确定和修改,中期检查,后期详细设计,设计代码等整个过程中都给予了我悉心的指导。我的设计较为繁琐,工作量较大,但是欧阳老师仍然细心地纠正代码中的错误。除了敬佩欧阳老师的专业水平外,他的治学严谨和科学研究的精神也是我永远学习的榜样,并将积极影响我今后的学习和工作。其次要感谢我的同学孙权、张魁文、李缘文对我无私的帮助,在软件的开发研制中给予我很大的帮助,正因为如此我才能顺利的完成设计,我要感谢我的母校——四川理工大学,是母校给我们提供了优良的学习环境;另外,我还要感谢那些曾给我授过课的每一位老师,是你们教会我专业知识。在此,我要再说一次谢谢!谢谢大家!37 四川理工学院毕业设计(论文)参考文献[1]周枫,刘晓燕,李秀敏,李丹编著.软件工程(第二版)[M].重庆:重庆大学出版社,2006.4[2]张景峰,陈刚,李杰,庄连英编.ASP程序设计[M].北京:高等教育出版社,2005.9[3]李丹丹,史秀章著.SQLServer2000数据库实训教程[M].北京:清华大学出版社,2007.2[4]刘淳,雷军环,徐刚强著.数据库系统原理与应用.[M]北京:中国水利水电出版社,2005[5]施伯乐,丁宝康,汪卫编著.数据库系统教程(第2版)[M].北京:高等教育出版社,2003.8[6]赵祖荫,张瑜,赵卓群,孙浚龙编著.电子商务网站建设教程[M].北京:清华大学出版社,2004[7]王少锋编著.UML面向对象技术[M].北京:清华大学出版社,2004.237 四川理工学院毕业设计(论文)附录A数据表详细设计表1、t_bumen数据表:表二、t_info数据表:表三、t_jiaoshi数据表:表四、t_new数据表:表五、t_right数据表:37 四川理工学院毕业设计(论文)表六、t_sjsq数据表:表七、t_sjsq1数据表:表八、t_systemt数据表:表九、t_timu数据表:表十、t_timu1数据表:37 四川理工学院毕业设计(论文)表十一、t_xuanti数据表:表十二、t_xuesheng数据表:表十三、t_emaile数据表37 四川理工学院毕业设计(论文)附录B主要业务实现代码提示:源码中所有包含文件,请参见源码六。*************************源码一:教师题目申请申请*********************************<%@LANGUAGE="VBSCRIPT"CODEPAGE="936"%><%dimrs,sql,xingming"定义变量setrs=server.CreateObject("adodb.recordset")’创建记录集sql="select*fromt_jiaoshiwhereusername=""&session("userid")&"""‘创建sql语句rs.opensql,conn,1,1"使用recordset集合的open方法打开集合并用sql语句查询该集合,设置记录集操作权限为只读ifnotrs.eofthen"判断记录集的指针是否指向最后一条记录,即判断是否找到需要的数据xingming=rs("xingming")endifsetrs=server.CreateObject("adodb.recordset")sql="select*fromt_timu"rs.opensql,conn,3,3"设置记录集操作权限为读写rs.addnew"开始向数据表中插入数据rs("timu")=trim(request.Form("timu"))rs("content")=trim(request.Form("content"))rs("username")=xingmingrs("time")=now()rs("usernumber")=session("userid")rs.update"插入数据结束rs.close’操作完毕关闭记录集callcloseDB()"调用函数关闭数据库连接(该函数创建于“conn.asp”中)response.Write("alert("申请成功!点击确定返回继续添加!");location="tea_timusq.asp"")%>****************************************************************************************************源码二教师题目审核**********************<%@LANGUAGE="VBSCRIPT"CODEPAGE="936"%>37 四川理工学院毕业设计(论文)<%dimrs,sqlsetrs=server.CreateObject("adodb.recordset")sql="select*fromt_timuorderbyiddesc"rs.PageSize=10"这里设定每页显示的记录数rs.CursorLocation=3rs.Opensql,conn,0,2,1"这里执行你查询SQL并获得结果记录集学号/工号姓名题目申请时间课题审核<%’开始循环fori=1tors.PageSizeifrs.EOForrs.BOFthenexitfor%><%=rs("usernumber")%><%=rs("username")%><%=rs("timu")%><%=rs("time")%>">[通过]/">[驳回]************************************************************************************************源码三:学生选题*******************<%@LANGUAGE="VBSCRIPT"CODEPAGE="936"%><%"判断该模块是否已经开放dimrs,sqlsetrs=server.CreateObject("adodb.recordset")sql="select*fromt_right"rs.opensql,conn,1,1ifrs("xuantion")=0thenresponse.Write("alert("无效操作!该功能还未开放!");location="main.asp"")else%>37 四川理工学院毕业设计(论文)<%‘判断学生是否选题dimidsetrs=server.CreateObject("adodb.recordset")sql="select*fromt_xuantiwhereusernumber=""&session("userid")&"""rs.opensql,conn,1,1ifrs.eofthen"查询结果为空,学生还未选题response.Write("您还未选题!")response.Write("您现在可以在以下课题中选择:")%>题目教师题目入库时间题目情况操作<%’将题库中符合要求的题目一一列出setrs=server.CreateObject("adodb.recordset")sql="select*fromt_timu1"rs.opensql,conn,1,1dowhilenotrs.eof%><%=rs("timu")%><%=rs("username")%><%=rs("time")%><%dimrs1,sql1,countsetrs1=server.CreateObject("adodb.recordset")sql1="select*fromt_xuantiwherezhidao=""&rs("username")&""andtimu=""&rs("timu")&"""rs1.opensql1,conn,1,1ifnotrs1.eofthencount=rs1.recordcount’将所获取记录条数赋给变量count,用此变量来判定题目是否可选elsecount=0‘初始化变量endif%><%=count%>/1">[选题]<%rs.movenextloopelseifnotrs.eofthen"查询记录不为空,学生已经选题response.Write("您已经选题,详细信息如下:")response.Write("
")%>题目教师选题时间操作37 四川理工学院毕业设计(论文)<%=rs("timu")%><%=rs("username")%><%=rs("time")%>[退选]<%endifendifrs.closecallcloseDB()"调用函数closeDB()关闭并释放连接endif%>
**************************************************************************************************源码四:学生文档上传********************<%@LANGUAGE="VBSCRIPT"CODEPAGE="936"%><%""数据库连接setrs=Server.CreateObject("adodb.connection")rs.openconnftitle=MyRequest("filetitle")"获取文件名称ifftitle=""then"判断是否为空response.write"文件名称:空
"elseresponse.write"文件名称:"&ftitle&"
"endifftype=myrequest("fileType")"获取文件类型response.write"文件类型:"&ftype&"
"filedata=myrequest("filedata")filesize=lenb(filedata)"获取文件大小iffilesize=0thenresponse.write"上传文件:没有
"elsefilename=GetFileName("filedata")""限制加入的类型*.aspfile_ctype=GetContentType("filedata")response.Write"上传文件:"&filename&"   "response.write"数据流:"&file_ctype&"   "37 四川理工学院毕业设计(论文)response.write"文件长度:"&filesize&"
"endiffiledesc=myrequest("fileDesc")response.write"文件说明:"&filedesc&"

"ifftitle<>""andfileSize>0andinstr(filename,".asp")<1then""保存数据到数据库dimbasepath,sqlbasepath="./kaiti/""设置文件保存路径"向数据表中插入上传文件相关信息sql="insertintot_info(filetitle,filedesc,filetype,filecontenttype,filepath,filesize)values(""sql=sql&ftitle&"",""&filedesc&"",""&ftype&"",""&file_ctype&"",""&basepath&filename&"","&filesize&")"conn.Execute(sql)"执行sql语句CallSavetoFile(filedata,basepath,filename)Response.Write"文件已经上传
"elseResponse.Write"上传失败!
"endifconn.close()setconn=nothing%>*******************************************************************************************************源码五:学生设计进度抽查*************************<%@LANGUAGE="VBSCRIPT"CODEPAGE="936"%><%dimaaacontent,objf,numaaa=request.QueryString("id")setfso=server.createobject("scripting.filesystemobject")filepath=server.mappath("./kaiti")"文件存储的路径setf=fso.GetFolder(filepath)"调用filesystemobject对象的getfolder方法ForEachobjfinf.Files"遍历目标文件夹content=objf.name"获取文件名并赋值给变量contentnum=instr(1,content,trim(aaa),1)"用instr()对遍历到的文件进行筛选ifnum>0then%>"><%=content%><%endifnext%>说明:抽查功能的实现,就是对学生所上传的文档进行查阅.以上代码给出了操作方法.37 四川理工学院毕业设计(论文)******************************************************************************************************源码六:源码中包含的文件************************Part1:conn.asp****************<%"打开数据库setconn=server.CreateObject("adodb.connection")conn.open"driver={SQLServer};server=.;database=sheji;uid=sa;pwd=;""关闭数据库subcloseDB()ifisobject(conn)thenifnot(connisnothing)thensetrs=nothingconn.closesetconn=nothingendifendifendsub%>Part2:config.asp*******************<%ifsession("username")=""thenresponse.redirect("loginout.asp")endif%>Part3:upload2.asp*********************<%""OptionExplicit""Server.ScriptTimeout=999FunctionBytes2bStr(vin)iflenb(vin)=0thenBytes2bStr=""exitfunctionendif""二进制转换为字符串DimBytesStream,StringReturnSetBytesStream=Server.CreateObject("ADODB.Stream")BytesStream.Type=2BytesStream.OpenBytesStream.WriteTextvin37 四川理工学院毕业设计(论文)BytesStream.Position=0BytesStream.Charset="gb2312"BytesStream.Position=2StringReturn=BytesStream.ReadTextBytesStream.closeSetBytesStream=NothingBytes2bStr=StringReturnEndFunctionFunctionMyrequest(fldname)""取表单数据""支持对同名表单域的读取dimidimfldHeaddimtmpvaluefori=0toloopcnt-1fldHead=fldInfo(i,0)ifinstr(lcase(fldHead),lcase(fldname))>0then""表单在数组中""判断该表单域内容tmpvalue=FldInfo(i,1)ifinstr(fldHead,"filename=""")<1thenTmpvalue=Bytes2bStr(tmpvalue)ifmyrequest<>""thenmyrequest=myrequest&","&tmpvalueelseMyRequest=tmpvalueendifelsemyrequest=tmpvalueendifendifnextendfunctionfunctionGetFileName(fldName)""都取原上传文件文件名dimidimfldHeaddimfnposfori=0toloopcnt-1fldHead=lcase(fldInfo(i,0))ifinstr(fldHead,lcase(fldName))>0thenfnpos=instr(fldHead,"filename=""")iffnpos<1thenexitfor37 四川理工学院毕业设计(论文)fldHead=mid(fldHead,fnpos+10)""表单内容GetFileName=mid(fldHead,1,instr(fldHead,"""")-1)GetfileName=mid(GetFileName,instrRev(GetFileName,"")+1)endifnextendfunctionfunctionGetContentType(fldName)""读取上传文件的类型""限定读取文件域的内容dimidimfldHead,cposfori=0toloopcnt-1fldHead=lcase(fldInfo(i,0))ifinstr(fldHead,lcase(fldName))>0andinstr(fldHead,"filename=""")>0then""读取contentTypecpos=instr(fldHead,"content-type:")GetContentType=mid(fldHead,cpos+14)endifnextendfunctionSubSaveToFile(fd,path,fname)""保存文件""参数说明:""fd:byte()类型数据,文件内容""path:保存路径后面必须带"/"""fname:文件名dimFstreamSetFStream=Server.CreateObject("adodb.stream")fstream.mode=3fstream.type=1fstream.openfstream.position=0fstream.Writefdfstream.savetofileServer.Mappath(path&fname),2fstream.closesetfstream=nothingendsub37'

您可能关注的文档

相关文档

最近下载