基于BS的自动排课系统毕业设计论文.docx
《基于BS的自动排课系统毕业设计论文.docx》由会员分享,可在线阅读,更多相关《基于BS的自动排课系统毕业设计论文.docx(50页珍藏版)》请在冰点文库上搜索。
基于BS的自动排课系统毕业设计论文
毕业设计(论文)原创性声明和使用授权说明
原创性声明
本人郑重承诺:
所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。
尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。
对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。
作者签名:
日 期:
指导教师签名:
日 期:
使用授权说明
本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:
按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。
作者签名:
日 期:
学位论文原创性声明
本人郑重声明:
所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。
除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。
对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。
本人完全意识到本声明的法律后果由本人承担。
作者签名:
日期:
年月日
学位论文版权使用授权书
本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。
本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。
涉密论文按学校规定处理。
作者签名:
日期:
年月日
导师签名:
日期:
年月日
注意事项
1.设计(论文)的内容包括:
1)封面(按教务处制定的标准封面格式制作)
2)原创性声明
3)中文摘要(300字左右)、关键词
4)外文摘要、关键词
5)目次页(附件不统一编入)
6)论文主体部分:
引言(或绪论)、正文、结论
7)参考文献
8)致谢
9)附录(对论文支持必要时)
2.论文字数要求:
理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。
3.附件包括:
任务书、开题报告、外文译文、译文原文(复印件)。
4.文字、图表要求:
1)文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写
2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规范。
图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画
3)毕业论文须用A4单面打印,论文50页以上的双面打印
4)图表应绘制于无格子的页面上
5)软件工程类课题应有程序清单,并提供电子文档
5.装订顺序
1)设计(论文)
2)附件:
按照任务书、开题报告、外文译文、译文原文(复印件)次序装订
指导教师评阅书
指导教师评价:
一、撰写(设计)过程
1、学生在论文(设计)过程中的治学态度、工作精神
□优□良□中□及格□不及格
2、学生掌握专业知识、技能的扎实程度
□优□良□中□及格□不及格
3、学生综合运用所学知识和专业技能分析和解决问题的能力
□优□良□中□及格□不及格
4、研究方法的科学性;技术线路的可行性;设计方案的合理性
□优□良□中□及格□不及格
5、完成毕业论文(设计)期间的出勤情况
□优□良□中□及格□不及格
二、论文(设计)质量
1、论文(设计)的整体结构是否符合撰写规范?
□优□良□中□及格□不及格
2、是否完成指定的论文(设计)任务(包括装订及附件)?
□优□良□中□及格□不及格
三、论文(设计)水平
1、论文(设计)的理论意义或对解决实际问题的指导意义
□优□良□中□及格□不及格
2、论文的观念是否有新意?
设计是否有创意?
□优□良□中□及格□不及格
3、论文(设计说明书)所体现的整体水平
□优□良□中□及格□不及格
建议成绩:
□优□良□中□及格□不及格
(在所选等级前的□内画“√”)
指导教师:
(签名)单位:
(盖章)
年月日
评阅教师评阅书
评阅教师评价:
一、论文(设计)质量
1、论文(设计)的整体结构是否符合撰写规范?
□优□良□中□及格□不及格
2、是否完成指定的论文(设计)任务(包括装订及附件)?
□优□良□中□及格□不及格
二、论文(设计)水平
1、论文(设计)的理论意义或对解决实际问题的指导意义
□优□良□中□及格□不及格
2、论文的观念是否有新意?
设计是否有创意?
□优□良□中□及格□不及格
3、论文(设计说明书)所体现的整体水平
□优□良□中□及格□不及格
建议成绩:
□优□良□中□及格□不及格
(在所选等级前的□内画“√”)
评阅教师:
(签名)单位:
(盖章)
年月日
教研室(或答辩小组)及教学系意见
教研室(或答辩小组)评价:
一、答辩过程
1、毕业论文(设计)的基本要点和见解的叙述情况
□优□良□中□及格□不及格
2、对答辩问题的反应、理解、表达情况
□优□良□中□及格□不及格
3、学生答辩过程中的精神状态
□优□良□中□及格□不及格
二、论文(设计)质量
1、论文(设计)的整体结构是否符合撰写规范?
□优□良□中□及格□不及格
2、是否完成指定的论文(设计)任务(包括装订及附件)?
□优□良□中□及格□不及格
三、论文(设计)水平
1、论文(设计)的理论意义或对解决实际问题的指导意义
□优□良□中□及格□不及格
2、论文的观念是否有新意?
设计是否有创意?
□优□良□中□及格□不及格
3、论文(设计说明书)所体现的整体水平
□优□良□中□及格□不及格
评定成绩:
□优□良□中□及格□不及格
教研室主任(或答辩小组组长):
(签名)
年月日
教学系意见:
系主任:
(签名)
年月日
摘要
随着社会的发展,在现在的社会,信息的各种操作都需要通过计算机软件来完成。
当今,素质化教育也在校园内不断地得到深化。
自动排课模式也在许多的学校内开始遍布了,而传统的教学模式渐渐被取代了。
自动化排课系统,可以满足学校教务处对于排课管理的需求,减少教务人员工作量的同时降低排课中的并发和错选等问题。
学生通过网页可以随时随地进行选课,节约了大量统计时间;教务人员通过设置排课规则快速的完成课程的安排,易于调整修改;教师可以快速方便的安排课程信息。
该系统采用数据集中管理、统计分布式管理。
自动排课系统的系统设计是基于JSP技术的,它具有灵活的一体化发展战略,圆满完成了整个系统的全面设计。
自动排课系统,采用一个简单的界面,操作方便,灵活,实用,有效的简化了自动排课管理系统的过程,大大提高了自动排课系统的效率,使之更加系统化体系化、标准化、自动化,具有优良的可用性、可靠性和安全性。
该系统采用标准的MVC三层架构,包括表示层、控制层和业务层三个部分,降低了系统开发的复杂性。
这个项目具体是运用了JSP,提高系统的运行性和安全性,并且方便了后期的维护和操作。
系统主要实现了教师列表、班级列表、学生列表、教师列表、课程列表、排课列表、管理员列表等功能模块,具有良好的实用性。
关键词:
自动排课;B/S模式;MVC;JSP
Abstract
Withthedevelopmentofsociety,intheinformationsociety,informationacquisition,processing,communicationanddecision-makingneedsofhigh-qualitycomputersoftware.Today,thequalityofeducationareconstantlydeepenedcampus.SmartSchedulingmodelisalsoinmanyschoolsthroughoutthebeginning,whilethetraditionalteachingmodelwasgraduallyreplaced.IntelligentSchedulingSystem,arrangingtomeettheneedsoftheschoolmanagementforAcademicAffairs,reducingtheworkloadofacademicstaffwhilereducingconcurrencyandarrangingthewrongchoiceandotherissues.Studentenrollmentatanytimeviathewebcansavealotofstatisticaltime;rapidcompletionoftheacademicstaffbyorganizingcoursessetSchedulingrules,easytoadaptandmodify;teacherscanquicklyandeasilyarrangecourseinformation.Thesystemusesacentralizeddatamanagement,statisticaldistributedmanagement.
SenateelectivesystemdesignmanagementsystemisbasedonJSPtechnology,ithasaflexibleintegrateddevelopmentstrategy,thesuccessfulcompletionofacomprehensivedesignoftheentiresystem.Academiccoursemanagementsystemthatusesasimpleinterface,easytooperate,flexible,practicalandeffectivemanagementsystemsimplifiestheSenateelectiveprocess,greatlyimprovingtheefficiencyofeducationaladministrationcoursemanagementsystemtomakeitmoresystematicsystem,standardization,automationwithexcellentavailability,reliabilityandsecurity.ThesystemusesthreestandardMVCarchitecture,includingthepresentationlayer,controllayerandservicelayerthreeparts,reducingthecomplexityofsystemdevelopment.ThemainuseofJSPtechnologydevelopment,improvethesystemperformanceandsecurity,andeasytomaintainandoperate.Systemismainlytoachievetheteacherlists,classlists,listofstudents,teachers,lists,listofcourses,arrangingthelist,thelistofadministratorsandotherfunctionalmodules,withgoodusability.
Keywords:
AcademicCoursemanagement;B/Smode;MVC;JSP
1绪论
1.1课题研究背景及意义
20世纪末,计算机的诞生与发展将人类带入到一个全新的领域中,如今已经成为解决很多工程问题的必要途径。
早在60年代,人们就开始研究如何使用计算机来解决排课问题,减少人工排课的劳动量并减少排课错误。
现在是21世纪,全球范围内的互联网技术都有了极大的进步,这让许多人不会收到时间和空间上的各种限制了。
利用Web技术来解决生活中遇到的各种问题成为趋势。
排课系统是时间表问题(TimeTableProblems,TTP)的一个分支。
这是个NP完全问题,由于P/NP问题还未解决,只能不断的摸索近似算法来得出近似的最优解。
这个问题涉及到多种因素,是一个多重条件下的组合优化问题。
由于涉及的参数多以及内部关系复杂等原因,传统人工排课的出错率一直很高。
随着我国科研的发展,高等院校的专业和课程都在快速增长,极大程度上增加了排课系统的难度。
同时随着人本教育思想的普及,鼓励学生自主选课也在国内推广开来,使得现代排课问题在收集数据和准确排课上变得更加复杂。
基于WEB的自动化排课系统,可以满足学校教务处关于排课工作的需求,减少教务职员工作量的同时降低排课中的并发和错选等问题。
学生通过网页可以随时随地进行选课和查询自己的课程信息,节约了大量统计时间;教务人员通过设置排课规则快速的完成课程的安排,易于调整修改;教师可以快速方便的查看自己的课程的上课情况。
该系统采用数据集中管理、统计分布式管理。
1.2课题研究现状
排课这个难题的探索开始于20世纪60年代。
1963年,Csima,J.和GotliebC.C.出了编排课表的数学模型,但仅限于基本的数学建模,并没有开发出可使用的软件。
之后人们开始使用图形着色算法来模型解决这个问题。
可是用这方法所花费的时间越来越大,所以,有许多的算法来探索这个问题。
在70年代,Barham和Westwood开始试图使用启发式搜索的方法。
到了80年代,Mulvey使用网络流方法来解决排课问题,同时Werra和Hertz使用了禁忌搜索的方法来解决这个问题。
90年代,由于大量的算法被发现,这个问题的研究得到了进一步的发展。
另一方面,Downsland和Digeetal通过模拟退火的方法来解决。
同时,Digeetal在一所大学的案例中展现出使用基于约束推理的方法。
在这个时期中关于排课研究的活跃归功于在1995年举办的第一届国际自动化排课实践与理论大会(PATAT)。
同样在这个时期,遗传算法也开始被使用在排课问题中。
进入21世纪,这项研究在继续发展。
基于约束的程序设计、混合启发算法(hyperheuristic)。
1.3本课题主要工作
在本文中,基于开发面向对象软件的过程中,对系统的需求分析以及具体实施过程都进行了较为完善的介绍,在本文中本人的具体工作如下:
(1)对系统进行需求分析。
对自动排课系统的需求进行分析以了解系统的基本特征和想要实现目标,并且对系统用户的特性进行分析,并分析业务流程以及梳理系统非功能性需求和功能需求。
(2)选择适当的技术解决方案。
搭建一个系统开发平台,并对系统实施所涉及到的关键技术进行研究。
根据实际、开放以及开源的原则,设计出既能够保证需求,而且开放源代码的以及可扩展的架构体系。
(3)系统的设计和实施。
该系统的设计原则基于MVC的设计思想,使得系统中,逻辑和数据存储在一个单独的状态下。
业务流程和系统的用户角色进行了详细的研究,以及系统的机制设计和系统的具体实现进行了详细的介绍。
(4)测试系统。
在节中,对系统的测试过程进行了具体的介绍。
2系统相关技术
2.1J2EE技术
J2EE技术,即Java2平台企业版(Java2PlatformEnterpriseEdition),是一种B/S模式的体系结构。
J2EE技术一般分为四个等级,其中Web表现层和业务逻辑层,两层是J2EE的核心层次。
J2EE优势:
1.跨平台性。
2.稳定性。
3.开发效率高。
4.具有可伸缩性。
2.2MVC模式
MVC模式(三层架构模式)(Model-View-Controller)是软件工程中的一种软件架构模式,把软件系统分为Model(模型)、View(视图)和Controller(控制器)三个基本部分。
2.3B/S结构
基于B/S架构软件的安装,编辑,维修的需要在服务器端解决。
B/S架构也提供了一个均质机,网上异构网络,异构应用服务的联机,统一的开放服务最现实的基础。
B/S系统包括:
表示逻辑层,控制逻辑层,数据展现层,三层是相对独立又相互关联。
2.4数据库技术
在软件项目中,通过使用数据库进行数据处理,可以保证数据的独立性,一致性和安全性,系统提供对数据的访问效率,并为程序员减少应用程序的开发时间。
不同的数据库有各自的优缺点,此处不做具体介绍。
使用MySQL不仅在开发程序的时候有利于开发,而且在后期维护扩展的时候又简洁。
所以,MySQL可以很好的胜任这个自动排课系统的数据库。
2.5本章小结
本章主要是介绍一下自动排课系统用到的一些技术,针对系统中使用到的技术做了一下简单的介绍。
3系统需求分析
3.1系统总体目标
(1)数据共享
推进自动排课管理系统的数据校验和数据共享规范化和制度化建设,对自动排课管理系统数据查询的精度和效率进行提升。
(2)实现了自动排课系统业务的各种功能
系统主要实现了教师列表、班级列表、学生列表、教室列表、课程列表、排课列表、管理员列表等功能模块,具有良好的实用性。
(3)实行现代化的管理手段
该系统应具有界面清楚,操作简便;不同系统的角色有着不一样的操作权限。
该自动排课系统应该是基于web的系统,只需要有一台能够联网的设备就可以实现对网站的管理。
3.2系统可行性分析
3.2.1操作可行性分析
系统的登录界面简单和友好,采用常见的界面窗口的登录界面,而网站的开发则采用的是较为常用的JSP技术。
这些策使得用户不需要很长的时间就能够快速熟悉系统,并掌握系统的操作方法。
此外,为了方便系统管理维护人员,用户登录系统后会给出了一些提示,让这个自动排课系统能被更多的人简单方便的运用起来。
3.2.2技术可行性分析
(1)硬件可行性分析
系统的硬件要求方面不存在特殊的要求,只需要在普通的硬件配置就能够轻松的实现,只是需要确保系统的正常工作即可,以及拥有较高的效率。
如果有特别低的硬件,它可以导致系统的低性能以及效率低,从而导致整个网站的运行不顺畅。
以目前普遍的个人计算机的配置而言,这是十分容易实现的。
所以,本系统的研发在硬件的问题上是可行的。
(2)软件可行性分析
Java语言提供的动态模型相似的理由的共同机制,设计更集中。
另外,在使用Java语言可以很容易实现模块化和存储信息。
此外,代码复用,也可以很好的体现。
因此,考虑到系统的实际情况,选择JAVA作为本系统开发语言的时候。
通过上述分析,该系统的设计实现在软件方面是可行的。
因此,我们进行了三个方面的可行性研究,可以看出,该系统的开发是没有问题的。
3.3系统功能需求分析
系统主要包括管理员、学生和教师三个角色,不一样的角色拥有着不一样的权限。
(1)管理员:
管理员具有的权限主要实现了教师列表、班级列表、学生列表、教师列表、课程列表、排课列表、管理员列表等功能模块的管理;
(2)学生:
学生进入系统后主要实现了我的课表、可选课程列表、已选课程等功能模块;
(3)教师:
教师登录系统具有的权限是对我的课表、我的课程等功能模块的查看。
其中学生和教师都不能对自己事先录入好的资料进行更改,只具有查看的权限。
学生和老师的信息只能通过管理员的权限进行增添操作和修改操作,只有管理员有足够的权限,目的是为了管理员能更加简单有效地管理整个排课系统并且让系统运行更加良好。
该自动排课系统新添加的一个功能模块是学生进入系统后多了一个选课功能模块,学生可以选择自己班级没有上的自己有感兴趣的课程,这一选课过程只能在排课结束之后才能进行操作。
学生和教师共同都具有的功能就是对自己课表的查询和对特定时间的空教室的查询。
3.4系统非功能需求分析
(1)可靠性需求
可用性:
一般用户按照网站提小便可完成日常操作,界面设计合理,使用方便。
平均故障间隔时间(MTBF):
6个月,支持7*24小时的服务。
平均修复时间(MTTR):
这个系统遇到问题停止运作的时间应该控制在1小时之内。
(2)完整性需求
要求各种数据的完整性,规定的数据信息的记录内容不能为空,各种数据间联系应保持正确,同一个数据在不同记录中所保持的一致性。
(3)性能需求
页面响应时问应该控制在一定的时间范围内;系统支持在同一个时间段内一起在线操作的用户至少要有500名。
(4)精度需求
系统的部分功能对数据的精确度有所要求,对于系统的浮点型数据,其数据信息的精确成都至少应该要达到小数点后面2位数。
(5)易用性需求
系统的使用人用来学习系统的操作时间不能太长;界面设计应为友好、简单、清晰的可视化操作界面;目有相应的操作提示与帮助。
(6)安全性需求
系统要设置用户的合法性,既给每个用户分配不同的帐号,并且要求用户为帐号设置符合要求的密码。
而且,系统也要分级别设置用户的权限,不一样的权限所拥有的访问资格是各不相同的,保证系统的安全稳定的运行。
3.5系统开发环境与开发工具
系统开发环境主要从开发平台、开发语言、所使用的数据库软件、设计工具以及辅助工具等几个方面来介绍。
开发平台:
Myeclipse9.0
开发语言:
Java+JDK1.6
数据库软件:
MySQL6.0
4系统设计与实现
在设计体系的时候要做到全方位的站在用户的立场上考虑问题,让最终的产品能够顺应大众用户的需求。
这一章节将重点突出对于体系的结构框架的设计描述上,以详细的标明每一个数据库的主体结构框架。
4.1系统设计目标和原则
系统的架构设计,要能够反映出用户与整个系统模块的接口之间存在有效互动,而且应该是非常清楚的,从而才能够保障在后期系统真正实现的时候数据的扩展性和安全性,只有设计出的系统实现这个目标才能有一个更好的扩展空间量,以适应企业未来的发展。
整个系统的设计中,系统必须满足以下要求:
(1)数据安全性
存储有关隐私权的自动排课系统问题的系统数据,需要确保数据的安全性,在网站设计时必须要采取安全防范措施,以解决潜在的安全问题。
(2)柔软性
由于这个自动排课管理系统涉及到范围广泛的业务,设计出的系统必须能够处理接受变化的能力。
(3)扩展性
随着自动排课系统管理需求的不断变化,自动排课系统也一定会有功能