基于JSP的学生选课及排课系统开题报告

时间:2024.3.31

开题报告

选课排课系统设计与实现

学号:

姓名:

题目指导教师:

一、       题目摘要

题目简要说明:

 选排课系统功能的设计上,选排课系统可以分为登录、排课和选课3个子系统。登录子系统区分排课者(也即系统的管理者)、教师和学生这三者的不同身份,给出不同的权限,在页面中根据身份判断其相应具有的功能来使用这套系统。排课子系统主要供排课者使用,排课者可以在这里进行一切与排课有关的活动。选课系统主要供学生选课使用,在这里可以进行与选课有关的活动;教师可在教师反馈系统中对排课者提出反馈意见,供排课者在排课时可参考使用。

二、       题目背景

1、国内国外发展

随着Internet的逐步发展,网络不仅仅是科研部门学术交流的平台,在其他的方面上也得到了很大的发展,尤其是在校园网的分支教务管理上,同时在教务管理的主要分之选课排课系统的应用上得到了较大的发展,国外针对此问题展开的研究较早。1963年C C Gotlieb 在他的文章《The Construction of Class-Teacher Time-Tables》中提出了课表编排的数学模型。这篇文章引起了人们对于选排课问题的重视。1976年S Even在其论文《The Complexity of Timetable And Multi Commodity Flow Problem 》中,第一次证明了课表问题是NP完全的。S Even的论证进一步地将人们对课表问题复杂性的认识提高到理论高度。

而国内对排课问题的研究较晚。1984年,清华大学在《清华大学学报》上发表了林漳希和林尧瑞在该课题上的实验性研究成果《人工智能技术在课表编排中的应用》。

如今国内软件市场上也有很多通用型的排课软件,例如“排课无忧” 、“排课高手”等等。这些通用软件往往无法满足学校的某些特殊要求。因此,针对学校的一些特殊要求,我设计并开发了基于校园网之子系统选排课系统。

2、需求背景分析

   网上选排课系统是针对在校学生和教师使用,从学生的角度来说,由于学校教学制度的改革,现在大部分高等学校开始实行的是学生的自主选课模式,而传统的教学模式:学生按照学校安排好的课程上课已经不能适应新型的教学方式,如果按照传统方式宣科,一方面浪费了大量的人力和物力;另一方面浪费时间以及在人为的统计过程中不可避免出现的差错的情况。从教师的角度来说,由于教师提出代课申请完成课程发布的工作,因此通过网上进行课程发布能大幅度的减少教师的工作量,减少错误的发生几率。作为教师,只要通过自己的电脑来操作即可,不必于奔波在教务处和办公室之间。基于此等原因从而提出网上选排课系统的研究进行实施与探讨。

3、主要技术JSP语言和Oracle数据库

JSP(Java Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。 JSP技术是用JAVA语言作为脚本语言的,JSP网页为整个服务器端的JAVA库单元提供了一个接口来服务于HTTP的应用程序。 在传统的网页HTML文件中加入Java程序片段(Script let)和JSP标记(tag),就构成了JSP网页(扩展名为.jsp)。

Oracle数据库相对于其他数据库也有很多优点:

(1)无范式要求,可根据实际系统需求构造数据库。

(2)采用标准的SQL结构化查询语言。

(3)具有丰富的开发工具,覆盖开发周期的各阶段。

(4)支持大型数据库,数据类型支持数字、字符、大至4GB的二进制数据,为数据库的面向存储提供数据支持。

(5)具有第四代语言的开发工具(SQL*formS、SQL*REPORTS、SQL*MENU等)。

(6)具有字符界面和图形界面,易于开发。

(7)通过SQL*DBA控制用户权限,提供数据保护功能,监控数据库的 运行状态,调整数据缓冲区的大小。

(8)分布优化查询功能。

(9)具有数据透明、网络透明,支持异种网络、异构数据库系统。并行 处理采用动态数据分片技术。

(10)             支持客户机/服务器体系结构及混合的体系结构(集中式、分布式、 客户机/服务器)。

(11)             实现了两阶段提交、多线索查询手段。

正因于此,所以采用此数据库编程语言。

4、        题目所采用的主要技术

服务器系统为Linux系统,前台采用JSP语言,后台采用sqlserver2000/Oracle数据库。

5、        所应用技术的难点

(1) 选课系统设计

根据功能的不同可以将本系统划分为三个主模块,九个子模块:

一、用户登录子系统
操作对象:学生、教师、管理员。
用户登录子系统功能:用户登录时,首先要选择自己登录的类型,才能实现自己所需求的服务功能。即用不同身份登录系统会拥有不同的权限。
用户登录操作流程:首先用户应先输入账号(学号、教师号、管理员号)和密码,再选择登录的类型,如果相应的账号和密码正确,则顺利进入系统,如果账号或密码不正确,则提示用户登录失败。

二、学生选课子系统
操作对象:学生。
学生选课子系统功能:学生可以查询课表、查询课程详细信息(课程,教师)、选课和退课等操作。
学生选课操作流程:学生登录验证成功后,进入学生选课子系统,点击相应的课程号就可以直接选课。如果输入课程号或教师号,可以进行可选课程查询,同时,自己的选课表会显示出来,在选课版面还可以进行密码修改,退出系统。除此之外,学生还可以进入课表查询、课程查询和选课查询版面进行相应操作。
三、课程管理子系统
操作对象:管理员。
课程管理子系统功能:管理员可以进入排课系统,还可以进行课表查询、课程查询、选课查询,但不具有学生拥有的选课功能。
管理员操作流程:管理员登录验证成功,进入系统,即可以进行相应的操作,如进入排课系统,可以进行排课、发布选课信息、对学生的选课信息进行确认。

(2)排课系统编码与实现

首先,排课时设置了排课优先级:优先级最高的是公共课,因为公共课一般合班上课的班级个数较多,最容易产生时间冲突,优先级次之的是每周平均课时最多的课程,同样,因为平均课时多,选择时间时进行排课冲突的机会就大,最后是总课时最多的课程。

其次,产生的时间是在教师和所有上课的班级共同的空闲时间集合中产生,并且尽量保证时间选择上的均匀性,防止一周几次课集中于某一段时间。

再次,对教师的选择,一方面考虑到教师的时间限制(由教师确定一学期中第几周,每周哪天哪节课没空),另一方面,对教师设置排课级别,随着排课时间的增多,级别值就增大,从而再次被选择排课的几率就减小(此时要求同一门课程有多个教师讲授)。

最后,教室也设置了排课级别,同教师类似,这样便可以保证教室资源会得到合理而均匀有效地利用。

流程图如下:

(3)设计及连接数据库

数据库设计是本系统的起点,它的分析结果是否准确地反映了用户的实际要求,将直接影响到后面各个阶段的设计,并影响到设计结果是否合理和实用。它的基本任务是回答“系统必须做什么”的问题。至此,本阶段的主要任务有明确系统的开发目的,分析系统功能的具体要求,由此画出系统的数据库的E-R图。

对应关系:

学生与班级: n:1 

教师与课程: n:1

班级与课程: n:m

班级与课程时间:n:m

课程与课程时间:n:m

课程时间与教室:n:m

数据库连接对动态网站来说是最为重要的部分,在与后端数据库连接时可以采用ODBC或JDBC技术。虽然ODBC作为传统的连接数据库的手段是一种选择,但是ODBC有以下致命缺陷,从而使它无法胜任JSP的请求。

三、题目任务

1、              主要要求

   开发一个校园网门户网站其中一个子系统之学生选课排课系统,由选课信息、教室信息根据排课原则生成。

选课信息数据库中包含:学生姓名、课程名称、每周所需课时、所在班级、任课教师姓名  

教室信息数据库包含:教室名称、教室容纳人数  

要求生成的课程表需要包含:班级名称、课程名称、上课时间、教室名称、任课教师姓名  

2、              时间要求

3月12日至3月16日。提交开题报告。

  3月16日至5月中旬,完成毕业设计。

六、题目需求分析

1、功能需求分析

A、根据学生的所学专业、学校的教学大纲(开设的课程)、生成每个学生的选课信息;

B、学生的选课信息要求符合课程体系的实际需求,即先开课没有选修完成时,不允许选修后序课程,选修课程在专业方向上要根据专业类别设置课程的连带关系;

C、学生在累积有5门课,没拿到学分时,不允许选择新课。

D、学生未缴纳学费超过两门次时,不允许选课;

E、排课系统要根据教室情况、学生人数、每个学生选课的情况、教师的授课情况等条件自动排课、手动排课、半自动排课;可以设置不同的排课优先级。

2、              生成结果标准

有良好的交互界面

1)            新用户可以成功注册(以学号注册)

2)            用户可以成功登陆

3)            用户可以成功进行相关操作(选课操作)

4)            管理员可以成功登陆管理员界面(及相关操作)

3、              所需开发工具

JSP语言(掌握程度一般)

Eclipse,JBuild (熟练掌握)

Oracle数据库SQL语言(一般了解)

Linux系统web服务器(初步了解)

4、              需要的主要测试条目

(1)用户登录界面(题目:学生选课排课系统)

  (2)学生登录功能

  (3)管理员登录功能

  (4)学生选课功能

  (5)管理员对学生选课信息进行修改与删除功能

  (6)管理员上传选课信息

  (7)根据选课信息进行排课

七、题目计划安排

1、              开发进度,以周为单位进行安排。(只需安排系统开发阶段的内容,论文写作不算在内)

2、              测试计划(测试内容条目,时间,测试结果)

八、参考文献

1、主要的参考书籍和资料

    《JSP动态网站开发》

《JAVA面向对象编程》

《tomcat与java Web开发技术详解》

      《数据库原理及Oracle应用》

2、主要参考的网站和网络资料

   清华大学网(www.tsinghua.edu.cn)

   北大大学网(www.pku.edu.cn)

   北京航空航天大学网(www.buua.edu.cn)

   辽宁大学网(www.lnu.edu.cn)


第二篇:基于JSP的网上投票系统的研究以及实现开题报告


  毕 业 设 计(论 文)开 题 报 告

题目:  基于JSP的网上投票系统的研究以及实现      

姓    名:             

学    号:            

指导教师:                       

班    级:              

系    部:           

陕西科技大学镐京学院毕业设计(论文)开题报告

更多相关推荐:
课题研究开题报告

课题研究开题报告一、课题名称农村小学数学学习两极分化的成因与对策研究二、课题研究的目的、意义此课题研究的意义主要表现在:1、通过研究可以让我们认识小学数学学习出现分化这一现象的本质和原因。2、研究影响学生学习造…

课题开题报告范本

沧县教育科学研究十二五规划课题开题报告立项编号培养小学生文明礼仪习惯课题名称的研究有效途径课题类别心理健康课题负责人许键沧县杜林乡代营小学盖章所在单位沧县教育科学规划领导小组办公室制20xx年5月注将开题报告送...

课题开题报告格式及开题报告的写法

课题开题报告格式及开题报告的写法随着新一轮国家基础教育课程改革的不断深人教师成为研究者的观念逐渐深人人心开展和参与课题研究是教师获得自我持续发展能力的最佳途径事实证明通过开展课题研究边学习边做课题边研究边实践逐...

课题开题报告

依托信息技术开展初中语文个性化阅读与写作实践研究开题报告一本课题研究的目的和意义本课题总的研究目的是依托现代信息技术围绕语文个性化阅读教学和个性化写作教学及评价开展实验研究构建初中语文个性化阅读和个性化写作的教...

省级课题开题报告

山东省教学研究室立项课题编号pt20xx0318农村初中合作教学中课程内容选择研究课题开题报告滨州市沾化县富国中学农村初中合作教学中课程内容选择研究课题组20xx年5月农村初中合作教学中课程内容选择研究开题报告...

开题报告格式及范文模板(最全面,最实用)

1开题报告方法介绍开题报告是指开题者对科研课题的一种文字说明材料这是一种新的应用写作文体这种文字体裁是随着现代科学研究活动计划性的增强和科研选题程序化管理的需要应运而生的开题报告一般为表格式它把要报告的每一项内...

课题研究开题报告怎么写

课题研究开题报告怎么写?课题研究开题报告应该包括以下九大要素:(一)课题名称课题名称就是课题的名字。这看起来是个小问题,但实际上很多人写课题名称时,往往写得不准确、不恰当,从而影响整个课题的形象与质量。这就是平…

课题开题报告

云南省教育科学规划课题开题报告立项编号课题名称小学生校内礼仪教育实践研究课题类别一般课题课题负责人高国贵南华县东城小学盖章所在单位20xx年9月

课题开题报告

愚公一中十二五课题构建初中语文生成性课堂的教学策略研究开题报告课题类别市学会一般课题学科分类基础教育课题名称构建初中语文生成性课堂的教学策略研究课题主持人杨宝林主持人所在单位哈尔滨市依兰县愚公乡第一中学课题批号...

课题开题报告

榆林市微型课题开题报告课题编号YWX14180课题名称对农村学生不能按时完成作业原因的调查研究主持人所在单位填表日期20xx年5月12日榆林市教育科学规划领导小组办公室20xx年制1111213请将此报告电子版...

开题报告撰写注意事项及PPT的制作090217 (2)

开题报告撰写注意事项供参考注本注意事项主要是给同学们一个可供参考的材料以便使同学们在撰写开题报告时尽量避免走弯路其中的内容不一定完全正确所述的方法更不可能是唯一正确的方法故当指导教师对同学们撰写的开题报告所给出...

关于针对课题开题报告的撰写方法

HRPlanningSystemIntegrationandUpgradingResearchofASuzhouInstitution课题开题报告的撰写方法一课题开题报告含义与作用开题报告就是当课题方向确定之后...

课题的开题报告(53篇)