基于web排课系统的设计与实现
- 格式:doc
- 大小:7.73 MB
- 文档页数:44
教务管理系统是现代教育管理中必不可少的一部分,它通过信息技术手段帮助学校高效地管理学生信息、教师信息、课程安排、成绩管理等方面。
随着互联网技术的发展,传统的教务管理方式已经无法满足学校管理的需求,因此设计一个基于Java Web的教务管理系统将会带来革命性的改变。
本文将探讨教务管理系统的设计与实现,主要包括系统的需求分析、系统的架构设计、系统模块的实现等方面。
一、需求分析在设计教务管理系统前,首先要对系统的需求进行全面、深入的分析。
主要包括以下几个方面的需求:1. 学生管理:包括学生基本信息的录入、修改、删除,学生课程的选取、查看成绩等功能。
2. 教师管理:包括教师基本信息的录入、修改、删除,教师课程的安排、成绩录入等功能。
3. 课程管理:包括课程信息的录入、修改、删除,课程的排课、教室安排等功能。
4. 成绩管理:包括成绩录入、成绩统计、成绩查询等功能。
5. 班级管理:包括班级信息的录入、修改、删除,班级学生的管理等功能。
6. 系统管理:包括系统用户的权限管理、数据备份、日志管理等功能。
二、系统架构设计基于Java Web的教务管理系统主要分为前台展示系统和后台管理系统两部分。
其中前台展示系统主要提供给学生、教师和家长使用,包括学生信息查询、课程管理、成绩查询等功能;后台管理系统主要提供给教务处老师和管理员使用,包括教师、课程、班级、成绩等信息的管理和维护。
系统采用B/S架构,即浏览器/服务器架构。
前台展示系统通过浏览器访问,后台管理系统通过服务器端进行管理。
系统采用MVC(Model View Controller)设计模式,将业务逻辑、数据模型、用户界面分离,提高系统的可维护性和扩展性。
三、系统模块的实现1. 用户管理模块用户管理模块是整个系统的核心模块,包括用户注册、登入、权限管理等功能。
在系统中,用户分为管理员、教师、学生和家长四种角色,每种角色对应不同的权限和功能。
2. 学生管理模块学生管理模块包括学生基本信息的录入、修改、删除,学生选课、成绩查询等功能。
《基于WEB的学生信息管理系统设计与实现》篇一一、引言随着信息技术的飞速发展,传统的纸质学生信息管理方式已经无法满足现代教育的需求。
因此,基于WEB的学生信息管理系统应运而生,旨在通过互联网技术实现学生信息的电子化管理,提高管理效率,降低管理成本。
本文将详细介绍该系统的设计与实现过程。
二、系统需求分析首先,我们需要明确系统的需求。
基于WEB的学生信息管理系统需要满足学校对学生信息管理的需求,包括学生基本信息管理、课程信息管理、成绩管理、学籍管理、系统用户管理等。
此外,系统还需要具备数据安全性、可扩展性、易用性等特点。
三、系统设计1. 系统架构设计本系统采用B/S架构,即浏览器/服务器架构。
用户通过浏览器访问系统,服务器负责处理用户的请求并返回相应的数据。
系统采用前后端分离的开发模式,前端负责用户界面的展示和交互,后端负责业务逻辑的处理和数据的管理。
2. 数据库设计数据库是系统的核心,需要设计合理的数据库表结构来存储学生信息、课程信息、成绩信息等。
根据需求分析,我们设计了学生信息表、课程信息表、成绩表、用户表等,并定义了表之间的关系。
同时,为了保证数据的安全性,我们还设计了相应的数据备份和恢复策略。
3. 系统功能设计根据需求分析,我们设计了以下系统功能:(1)学生基本信息管理:包括学生信息的录入、修改、删除、查询等功能。
(2)课程信息管理:包括课程信息的录入、修改、删除、查询等功能,以及排课功能的实现。
(3)成绩管理:包括成绩的录入、修改、删除、查询等功能,以及成绩统计分析功能的实现。
(4)学籍管理:包括学生学籍的录入、修改、删除、查询等功能,以及学籍异动功能的实现。
(5)系统用户管理:包括用户权限的管理、用户登录功能的实现等。
四、系统实现1. 技术选型本系统采用Java语言进行开发,后端采用Spring Boot框架,前端采用HTML5、CSS3和JavaScript等技术。
数据库采用MySQL数据库。
基于Web的通辽职业学院教务管理系统设计与实现作者:张婧来源:《数字技术与应用》2012年第11期摘要:本文采用流行的MVC设计模型并运用Struts应用框架设计了适用于通辽职业学院的教务管理系统平台,实现了原型系统并达到了预期设计目标和功能。
通过本系统的建设以对提高学院教务管理水平有所帮助。
关键词:MVC Struts 教务管理中图分类号:TP311.5 文献标识码:A 文章编号:1007-9416(2012)11-0169-011、引言通辽职业学院是一所专科(高职)层次全日制公办普通高等院校,教学班级类型多,所涉及的信息资料数量大,统计数据复杂,学院教务管理工作的流程长。
目前,学院内部的教学管理工作仍然是以传统的手工操作方式为主。
例如:排课管理方面,首先由各个教务管理部门采用人工方式填写授课计划,再通过电话同教师管理部门及教师预约,等授课信息和教师名单确认后才能安排上课计划。
上述工作流程存在效率低、易出错、不能及时更新信息,易造成应用上的冲突等诸多弊端,同时传统依托手工操作的教务管理方式已经越来越不适应现代化管理的要求。
为了实现了学院教务、教学的自动化和交互式管理,以及进一步适应现代管理机制的要求,设计和开发基于校园网且又能满足学院教务要求的综合教务管理信息系统显得十分迫切和必要。
按照系统工程原理,借鉴企业全面质量管理模式,结合通辽职业学院特点,采取边研究、边总结、边实施、边改进的方法,不断推进教务管理方式及手段现代化的研究。
教务管理系统是高校教学、教务管理应用软件,开发此系统要求必须熟悉教务管理工作的全部过程,从教务工作的实际出发,解决工作中关键性的难点问题,并充分利用计算机网络功能,实现教务工作全过程的计算机管理,帮助具体管理人员从复杂烦琐工作中解放出来,使得教务管理走向规范化、现代化和无纸化办公管理。
本文设计并实现了基于Web的教务管理系统,具有较好的通用性,是对传统教务管理模式的改革和创新,其推广使用在教学管理的改革方面、实现开放式教育管理方面、扩大受教育面方面、使有限的师资发挥更大的作用等方面具有重要的意义。
本科毕业论文(设计)题目:基于WEB地选排课系统地设计与实现姓名:学号:专业:计算机科学与技术院系:信息工程学院指导老师:职称学位:讲师/硕士完成时间: 2015年5月教务处制安徽新华学院本科毕业论文(设计)独创承诺书本人按照毕业论文(设计)进度计划积极开展实验(调查)研究活动,实事求是地做好实验(调查)记录,所呈交地毕业论文(设计)是我个人在导师指导下进行地研究工作及取得地研究成果.据我所知,除文中特别加以标注引用参考文献资料外,论文(设计)中所有数据均为自己研究成果,不包含其他人已经发表或撰写过地研究成果.与我一同工作地同志对本研究所做地工作已在论文中作了明确说明并表示谢意.毕业论文(设计)作者签名:日期:基于WEB地选排课系统地设计与实现摘要随着互联网地高速发展,校园网已遍布各大高校,并且在学校地管理工作中扮演着重要角色.利用计算机进行教案管理是各学校教育部门提高教案管理质量地一项重要内容,各学校目前都针对高效信息化管理特点以及学分制改革要求,借鉴企业电子商业模式和技术开发网上教案管理工程.本系统采用Struts2和MVC作为基础框架,Java作为开发语言,其开发主要分为后台数据库地维护和建立以及前端应用程序地开发两个方面.对于前者需要建立起数据安全性好、数据一致性和完整性强地数据库.而对于后者要求应用程序功能完备和易使用等特点.开发平台采用MyEclipce,数据库使用SQL2005 .本系统是一个典型地信息管理系统,分为教师模块、学生模块以及管理员模块.管理员可对学生、教师、课程、教师以及专业等信息进行增删该查等操作;学生可以查询自己地成绩以及选课和退课.而教师则可以对学生进行打分,还可以查询课程详情.关键词:选课;排课;网络;在线The optional course arrangement system based on WEB design and implementationAbstractWith the high-speed development of Internet, the campus network has been in colleges and universities, and plays an important role in the school of management. The use of computers for teaching management is the school education department an important content to improve the quality of teaching management, schools are now according to the characteristics and efficient information management system of credit system reform, enterprise electronic business model and technology development of online teaching management project.This system USES the struts 2 framework and MVC as a foundation, Java as a development language, its development mainly includes the backstage database the establishment and maintenance of and front-end application development two aspects. For the former requirement to establish data consistency and integrality and security of data. For the latter requires the application program function complete, easy to use, etc. Development platform USES the MyEclipce, use SQL2005 database.This system is a typical information management system, divided into teacher module and student module and administrator module。
基于web的教务管理系统设计教务管理系统是为了方便学校教务工作的开展而设计的一款软件系统。
基于web的教务管理系统能够有效地提高教务工作的效率和质量,实现教学管理的数字化和信息化。
下面将结合教务管理系统的需求和设计原则,对基于web的教务管理系统进行设计。
一、需求分析:1.用户管理功能:包括学生、教师、管理员等用户类型的注册、登录、个人信息管理等功能。
2.课程管理功能:包括开设课程、编辑课程信息、查询课程等功能。
3.选课管理功能:包括学生进行选课、退选、查看选课信息等功能。
4.成绩管理功能:包括教师录入成绩、查询成绩、学生查看成绩等功能。
5.排课管理功能:包括教师排课、学生查询课表、课程调整等功能。
6.考试管理功能:包括考试安排、考试成绩录入、学生查询考试成绩等功能。
7.教务通知功能:包括教务公告发布、通知查询、新闻动态等功能。
二、系统设计:1.系统架构:基于web的教务管理系统采用B/S架构,即浏览器/服务器架构。
用户通过浏览器访问系统,服务器端进行数据处理和业务逻辑处理,实现数据的交互与传输。
2.前端设计:使用HTML、CSS、JavaScript等技术进行页面设计和布局,使页面简洁、美观、易用。
采用响应式设计,适应不同设备的屏幕大小。
3.后端设计:采用Java语言作为后端开发语言,使用SpringMVC 框架进行业务逻辑处理和数据传输。
数据库采用MySQL,存储系统中的各类数据。
4.用户管理设计:根据用户类型划分账号,学生、教师、管理员拥有相应权限,并提供注册、登录、个人信息管理等功能。
5.课程管理设计:管理员负责开设课程和编辑课程信息,包括课程名称、教师信息等,并提供课程查询功能。
6.选课管理设计:学生可根据自己的专业和年级进行选课,可以查询已选课程和退选课程,系统进行课程冲突检测。
7.成绩管理设计:教师负责录入学生成绩,学生可查询自己的成绩,系统进行成绩统计和排名等功能。
8.排课管理设计:教师根据教学计划进行排课,学生可以查询自己的课表,系统进行时间冲突检测。
毕业设计(论文)题目基于WEB的排课系统的设计与实现姓名郑如冰学号**********所在学院管理学院专业班级信息管理2班指导教师胡昌龙日期2006年6月6日目录摘要 (I)Abstract (II)1 综述 (1)1.1 课题背景及意义 (1)1.2 课题研究现状 (1)1.3 发展趋势 (2)2 需求分析 (2)2.1 可行性分析 (2)2.2 系统开发目的 (3)2.3 系统功能及性能要求 (3)2.3.1 对功能的规定 (3)2.3.2 对性能的规定 (4)2.4 组织结构图 (5)2.5 管理业务流程 (5)2.6 系统数据结构图 (6)3 系统设计 (7)3.1 需求规定 (7)3.2 运行环境 (7)3.3 开发语言介绍 (8)3.3.1 系统开发环境介绍 (8)3.3.2 开发语言简介 (8)3.4 基本设计概念和处理流程 (9)3.5 结构 (12)3.5.1 系统的物理结构图 (12)3.5.2 系统模块图 (12)3.6 数据库设计 (13)3.6.1 建立数据库的基本工具 (13)3.6.2 设计原则 (14)3.6.3 系统数据库设计 (14)3.6.4 E-R图数据库设计 (17)3.6.5 关系数据库的逻辑设计 (18)3.6.6 数据结构和程序(模块)关系 (19)3.7 算法设计 (20)3.7.1 排课细节及需求 (20)3.7.2 算法说明 (20)3.8 接口设计 (22)3.8.1 用户接口 (22)3.8.2 内部接口 (23)3.9 运行设计 (24)3.9.1 运行模块组合 (24)3.9.2 网页与模块关系 (25)3.9.3 运行控制 (29)3.9.4 运行时间 (34)4 系统功能说明 (34)4.1 功能分析 (34)4.2 系统功能特点 (35)4.3 系统功能介绍 (35)5 系统出错设计处理 (35)5.1 出错信息 (35)5.2 补救措施 (35)5.3 系统维护设计 (36)6 结论与展望 (37)参考文献 (38)致谢 (39)基于WEB排课系统的设计与实现02信管2班郑如冰指导教师胡昌龙摘要:一所学校为了保证其高水平的教学质量,必须制定一套严密、规范的教学计划,并严格执行。
密级:NANCHANG UNIVERSITY学士学位论文THESIS OF BACHELOR(2010—2014年)题目基于Java Web的高校排课系统的设计与实现学院:信息工程学院系信管系专业班级:学生姓名:学号:指导教师:职称:起讫日期:2014.2.16—2014.5.30基于Java Web排课系统的设计与实现摘要排课问题是一个NP完全问题,是一个多约束的、多目标的组合优化问题。
而传统的手工排课的方式,不仅繁琐、极易出错,而且不能全面地考虑对教学资源的合理利用。
因此,设计一个能够根据约束条件,自动安排课程的智能排课系统,是现在高校教务管理的迫切需求。
本文通过对排课系统的分析,阐述了基于Java Web平台下的排课系统的Web 解决方案。
本系统采用了B/S结构,采用了基于JSP Model2的MVC设计模式,大大简化了系统开发的困难。
本文选用了遗传算法来解决排课问题,阐述了遗传算法的基本原理与算法流程,以及在排课问题中的具体实现。
关键词:排课系统;MVC;JSP Model2 ;Java WebCourse Arrangement System Design andImplementation Based on WebAbstractCourse timetabling problem is a NP complete problem, and is a combinatorial optimization problem with a variety of constraints and a multiobjective optimization. the traditional manual method , is not only tedious and error-prone, and can not fully take the reasonable use of the teaching resources into consideration. Therefore, designing a course arrangement system that can arrange the course arrangement automatically according to the constraints is the urgent demand of university educational administration management now.Through the analysis of the curriculum arrangement system, this paper expounds the web solutions of curriculum arrangement system based on Java Web platform . This system adopts B/S structure, and using the MVC design pattern based on JSP Model2,greatly simplifying the difficulties of system development. This paper use genetic algorithm to solve the course timetabling problem, and expounds the basic principle of genetic algorithm , the algorithm flow, and the concrete implementation in the problem.Keyword: Course Arrangement System;MVC;JSP Model2;Java Web目录摘要 (I)Abstract (II)第一章绪论 (1)1.1 课题背景与意义 (1)1.2 国内外发展现状 (1)1.3 本文的研究目标 (2)第二章相关开发技术 (3)2.1 网络结构 (3)2.2 JSP技术 (3)2.3 MVC模式介绍 (5)2.4本章小结 (6)第三章排课系统分析与设计 (7)3.1 排课系统需求分析 (7)3.2 排课系统功能架构分析 (9)3.3 数据库设计 (12)第四章排课系统算法设计 (18)4.1 遗传算法介绍 (18)4.2 排课系统算法设计 (19)4. 3 本章小结 (26)第五章排课系统实现与测试 (27)5.1登录模块实现与测试 (27)5.2 基本信息管理模块实现与测试 (28)5.3 手动排课模块实现与测试 (29)5.4 自动排课模块实现与测试 (30)5.5 课表查询模块实现实现与测试 (30)5.6 本章小结 (31)第六章总结与展望 (32)6.1 总结 (32)6.2 展望 (32)参考文献 (33)致谢 (35)第一章绪论1.1 课题背景与意义随着我国在校大学生人数快速增长,教学资源相对紧缺,合理安排课程变得尤为重要。
基于web的管理系统课程设计一、课程目标知识目标:1. 让学生理解基于Web的管理系统的基本概念,掌握其功能和结构。
2. 学会使用至少一种Web开发技术,如HTML、CSS、JavaScript等。
3. 了解数据库的基本原理,掌握在Web管理系统中使用数据库进行数据存储和查询的方法。
技能目标:1. 培养学生运用Web技术开发简单管理系统的能力。
2. 培养学生分析实际问题,设计并实现基于Web的管理系统的解决方案的能力。
3. 提高学生的团队协作能力和沟通能力,能在项目中进行有效分工和协作。
情感态度价值观目标:1. 培养学生热爱信息技术,关注Web技术的发展趋势。
2. 培养学生具有良好的信息素养,能够正确使用网络资源,遵守网络道德规范。
3. 培养学生具有创新精神和实践能力,敢于面对挑战,勇于解决实际问题。
课程性质分析:本课程属于信息技术学科,注重实践性和应用性,旨在培养学生的动手操作能力和实际解决问题的能力。
学生特点分析:学生处于高年级阶段,已经具备一定的信息技术基础,对Web技术有一定了解,但可能缺乏实际项目经验。
教学要求:1. 结合课本内容,注重理论与实践相结合,让学生在实际操作中掌握知识。
2. 采用项目驱动的教学方法,激发学生的兴趣和积极性,培养其解决问题的能力。
3. 重视团队协作,培养学生的沟通能力和合作精神。
二、教学内容1. Web管理系统概述- 了解Web管理系统的基本概念、功能和适用场景。
- 分析Web管理系统的结构,掌握其关键技术。
2. Web开发技术基础- 学习HTML、CSS、JavaScript等基本语法和用法。
- 了解前端框架和库的使用,如Bootstrap、jQuery等。
3. 数据库原理与应用- 掌握数据库的基本概念、类型和设计方法。
- 学习SQL语言,实现数据的增删改查等操作。
4. Web管理系统设计与实现- 分析实际需求,设计Web管理系统的功能模块和数据库结构。
- 学习使用Web开发工具,如Visual Studio Code、Eclipse等,实现系统功能。
毕业设计(论文)题目基于WEB的排课系统的设计与实现姓名郑如冰学号**********所在学院管理学院专业班级信息管理2班指导教师胡昌龙日期2006年6月6日目录摘要 (I)Abstract (II)1 综述 (1)1.1 课题背景及意义 (1)1.2 课题研究现状 (1)1.3 发展趋势 (2)2 需求分析 (2)2.1 可行性分析 (2)2.2 系统开发目的 (3)2.3 系统功能及性能要求 (3)2.3.1 对功能的规定 (3)2.3.2 对性能的规定 (4)2.4 组织结构图 (5)2.5 管理业务流程 (5)2.6 系统数据结构图 (6)3 系统设计 (7)3.1 需求规定 (7)3.2 运行环境 (7)3.3 开发语言介绍 (8)3.3.1 系统开发环境介绍 (8)3.3.2 开发语言简介 (8)3.4 基本设计概念和处理流程 (9)3.5 结构 (12)3.5.1 系统的物理结构图 (12)3.5.2 系统模块图 (12)3.6 数据库设计 (13)3.6.1 建立数据库的基本工具 (13)3.6.2 设计原则 (14)3.6.3 系统数据库设计 (14)3.6.4 E-R图数据库设计 (17)3.6.5 关系数据库的逻辑设计 (18)3.6.6 数据结构和程序(模块)关系 (19)3.7 算法设计 (20)3.7.1 排课细节及需求 (20)3.7.2 算法说明 (20)3.8 接口设计 (22)3.8.1 用户接口 (22)3.8.2 内部接口 (23)3.9 运行设计 (24)3.9.1 运行模块组合 (24)3.9.2 网页与模块关系 (25)3.9.3 运行控制 (29)3.9.4 运行时间 (34)4 系统功能说明 (34)4.1 功能分析 (34)4.2 系统功能特点 (35)4.3 系统功能介绍 (35)5 系统出错设计处理 (35)5.1 出错信息 (35)5.2 补救措施 (35)5.3 系统维护设计 (36)6 结论与展望 (37)参考文献 (38)致谢 (39)基于WEB排课系统的设计与实现02信管2班郑如冰指导教师胡昌龙摘要:一所学校为了保证其高水平的教学质量,必须制定一套严密、规范的教学计划,并严格执行。
而课表管理是其中最为关键的一环。
没有一个合理、准确规范的课程表,整个学校的教学秩序将混乱不堪,这是不难想象的。
由此可见课程安排在学校教学计划中的核心地位与重要性。
因此,很有必要对排课表问题进行深入研究。
使用手工或传统的方法来排课,不仅工作量巨大,耗时、耗资,且准确率低。
本文主要研究解决各种教学资源如教室、教师的合理有效利用问题,避免教师、班级在上课时间、地点上的冲突,使排课时间分配均匀。
在算法设计中为排课操作设置了不同的优先级,逐级排课,有效地降低了排课时间冲突的几率,提高了排课的成功率。
另外,系统为教师和教室分别设计了排课级别,从而能够避免教学资源过于集中地使用,实现均衡化利用。
小型自动排课系统只是一种尝试,还有很多不完善的地方,需待日后改进。
关键词:自动排课算法冲突检测Abstract:In order to guarantee its advanced teaching and studying quality, a university must draw up a tight and standard teaching and studying plan. The arrangement of curriculum schedule is one of the key questions. Not having a rational, accurate and normal curriculum schedule, the whole university will not has a well teaching and studying order. This shows the courses arrange is the core of teaching and studying plan. Accordingly, deeply studying the question of curriculum schedule is very necessary. Arranging the courses by hand and traditional ways, we have great work load, cost much time, use up many resources, but the accuracy of curriculum schedule is Low. The main of this paper is solve the proper and defective usage of various teaching resources, such as classrooms, teachers and so on. To avoid the confliction the time or the place of the schedule, and to make the time produced on the average. In the design of the algorithm, different priorities areassigned to the operation of the arranging schedule, making it complished priority by priority, and thus bring down the probability of the confliction of the time arranging effectively, increase the probability of the successive arranging. Moreover, in order to make sure the teaching resources won’t be used to realize the average usage, the system designs the arranging levels of the teacher and the classroom.The proposal of the algorithm is just an attempt, so there are lost of defects, which are to be improved in future.Key words:auto arranging course;algorithm; conflict inspect1 综述随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。
因此,在计算机技术越来越普及的今天,市场上也出现了不同版本的排课系统,而这些排课系统又大部分是用传统的Visual basic、Visual Foxpro等语言来开发设计,此类系统有一个共性就是运行的界面单一而且不能发布到网上。
所以在经过各个方面的综合分析后,本人决定用ASP这一目前较为流行的开放式的Web服务器应用程序开发技术。
使用它可以将HTML语言,脚本语言和ActiveX 控件组合一起,产生动态、交互、具有数据库访问功能,且高效率的基于Web的应用程序。
1.1 课题背景及意义在高等院校中,培养学生的主要途径是教学。
在教学活动中,有一系列管理工作。
其中,教学计划的实施是一个重要环节。
每学期管理人员都要整理教学计划,根据教学计划下达教学任务书,然后根据教学任务书编排课程表。
在这些教学调度工作中,既有大量繁琐的数据整理工作,更有严谨思维的脑力劳动。
此外,还要填写大量的表格,因此工作非常繁重。
加之教学的改革,招生人数的增加及教室设备的不足,不但增加了工作的难度,而且要求管理工作更加快速、准确。
为此,人们自然希望用先进的管理手段完成这些工作。
随着计算机技术的普及,办公室自动化的先进管理手段被引进到教学调度工作中。
计算机排课与人工排课有一定区别。
人的思维可以是收敛的,也可以是发散的。
因而排课表时非常灵活,随机性很强,没有严格的工作步骤,随情况而变,觉得怎么合理怎么做。
但计算机就不同,它并不具备人的大脑那样的发散思维能力。
它的“大脑”里的一切信息都是由“数据”组成。
每步工作是由人把人的思维抽象成计算机的语言,通过程序进行控制。
所以用计算机进行排课最大的要领就是要掌握系统软件的设计思想,各种数据间的关系及工作先后顺序等,就是要掌握各种课程的要求如何通过数据传输给计算机,让它领会人的意图,达到预期的目的。
也就是说,计算机排课的关键是数据。
1.2 课题研究现状传统的人工进行排课,最令人担心的问题就是——出现教室资源冲突或教师资源冲突的情况,而且工作繁琐,工作量巨大,尤其是在给大学校园进行排课时出现的问题更多。
市场流行的排课系统很多,这些排课软件在解决排课问题时大多数采用的算法都是回溯算法,排课的效果也都很好。
利用回溯算法解决问题的思路是先选择某一可能的线索进行试探,每一步试探都有多种方式,将每一方式都一一试探,如有问题就返回纠正,反复进行这种试探再返回纠正,直到得出全部符合条件的答案或是问题无解为止。
这种解决问题的方法就是回溯算法。
回溯算法对空间的消耗较少,当其与分枝定界法一起使用时,对于所求解在解答树中层次较深的问题有较好的效果。
但应避免在后继节点可能与前继节点相同的问题中使用,以免产生循环。
回溯算法是所有搜索算法中最为基本的一种算法,其采用了一种“走不通就掉头”思想作为其控制结构,其相当于采用了先根遍历的方法来构造解答树,可用于找解或所有解以及最优解(据了解清华大学制作的一种排课软件主要采用时间模式和并行回溯算法,和此算法基本相同,只是在排课前就已经建立的时间库)。
1.3 发展趋势计算机软件技术应用于学校的课程安排是发展的必然。
充分发挥计算机的优势,将大量复杂的判断与运算交给计算机来做,是真正意义上的人脑的“减负”。
教师设置好学校基本情况及排课要求,让计算机排出课程表,适度调课后的课表就能满意地应用于新的学期。
随着计算机软件技术的不断发展,排课效率高、出错概率低的排课算法也必将会逐渐趋向成熟,功能更加完善的排课系统也将应运而生。
2 需求分析2.1 可行性分析系统可行性研究是系统发展过程中的一项重要的工作,其目的就是订出一套选择标准和一套选择程序及组成一个有效能的决策组织,如此,使用者便能依正确的顺序解决相关的问题。