智能排课系统(参考文档)

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

智能排课系统设计与实现

摘要

排课,是给学校各专业的教学计划中设置的课程安排合适的时间和地点,也就是给每个班的课程安排时间和地点。排课工作在教学管理中很重要也很繁琐,计算机智能排课系统,可以降低排课人员的工作量,减少排课中的人为因素[1-2]。但排课问题属于NP问题,即无法直接得到答案,只能通过猜测获取可能结果。通常NP问题虽无答案,却有算法,算法不能直接告诉答案,但可以用来判断可能的结果是否正确可行。因此,要做好排课工作,提高排课效率,实现智能排课是必不可少的。

本文在查阅大量相关文献的基础上,对高校的排课问题进行了分析,设计和实现了该功能,此系统主要被分为三个部分:界面的设计、排课算法的设计、以及报表的自动生成。本系统是采用Microsoft Visual Studio2005作为前台开发工具,SQL Server2005作为后台数据库平台的管理系统。

关键词:智能排课、贪心、分治、Visual Studio2005、SQL Server2005。

目录

摘要..............................................................................................................................I ABSTRACT......................................................................................错误!未定义书签。1绪论. (1)

1.1系统开发背景 (1)

1.2系统开发环境及方法 (1)

1.2.1.开发环境 (1)

1.2.2开发方法 (3)

2可行性分析 (4)

2.1技术可行性 (4)

2.2经济可行性 (4)

2.3操作可行性 (5)

2.4法律可行性 (5)

3系统需求分析 (6)

3.1系统功能需求 (6)

3.2系统非功能需求 (6)

3.2.1排课中的基本原则 (6)

3.2.2排课的基本要求 (7)

4总体设计 (8)

4.1系统总体构架 (8)

4.2系统功能结构 (8)

4.3排课算法 (9)

4.3.1目前常用算法 (9)

4.3.2排课问题描述 (10)

4.3.3排课问题的数学表示 (11)

4.3.4排课问题的优先级问题 (11)

4.3.5算法思想 (12)

4.3.6算法分析 (13)

5数据库设计 (14)

5.1系统数据表 (14)

5.2UML建模图 (14)

5.3数据字典 (15)

5.4数据库关系图 (18)

6详细设计与实现 (19)

6.1数据库访问模块 (19)

6.2条件设置模块 (22)

6.3教学计划模块 (25)

6.4排课模块 (26)

6.5课程表查询模块 (44)

结束语..........................................................................................错误!未定义书签。致谢..............................................................................................错误!未定义书签。参考文献 (46)

1绪论

1.1系统开发背景

在高校各项教学管理工作中,排课一直是最基本的、最重要的工作,其实质就是给教学计划中设置的课程安排合适的时问和地点,保证整个教学工作能够顺利地进行;同时,排课工作也是一项很复杂的工作,排课是一个NP问题,就是始终找不到一个最优的方法能够解决的问题,因为这个问题涉及了多种因素进行组合规划,有教师、学生的因素,也有教室的因素。尤其在目前各高校规模不断扩大,教学资源面临紧张,教师总数不足的前提下,排课工作问题更为凸出。

随着计算机技术的飞速发展,特别是计算机的应用已普及到经济和社会生活的各个领域。使原本的旧的管理方法越来越不适应现在社会的发展。许多人还停留在以前的手工操作。这大大地阻碍了人类经济的发展。为了适应现代社会人们高度强烈的时间观念,利用计算机实现高校排课系统势在必行。对于各大高校来说,利用计算机支持学校管理员排课,是适应现代学校的制度要求、推动学校管理走向科学化、系统化、规范化的必要条件,从而达到提高校管理效率的目的。给同学和老师带来方便。

1.2系统开发环境及方法

1.2.1.开发环境

在计算机硬件和软件快速发展的今天,计算机硬件和软件已经远远满足本管理系统的要求。在数据库编程工具方面,各种可视化编程方法的出现,一改过去程序设计的概念和方法,用户用鼠标就可以快速、简捷地创建应用程序,极大地提高了编程效率。选用Microsoft Visual Studio2005中文版数据库开发的应用程序可以独立运行于windows平台,而且SQL Server2005产生的数据库适用范围广,因此本系统采用Microsoft Visual Studio2005中文版来完成高校排课系统的设计。

Visual Studio是微软公司推出的开发环境。是目前最流行的Windows平台应用程序开发环境。2005年,微软发布了Visual Studio2005。.NET字眼从各种语言的名字中被抹去,但是这个版本的Visual Studio仍然还是面向.NET 框架的(版本2.0)。它同时也能开发跨平台的应用程序,如开发使用微软操作系统的手机的程序等。总体来说是一个非常庞大的软件,甚至包含代码测试功能。这个版本的Visual Studio包含有众多版本,分别面向不同的开发角色。同时还永久提供免费的Visual Studio Express版本。

使用Visual Studio2005,专业开发人员能够:

(1)使用改进后的可视化设计工具、编程语言和代码编辑器,享受高效率的开发环境;

(2)在统一的开发环境中,开发并调试多层次的服务器应用程序;

(3)使用集成的可视化数据库设计和报告工具,创建SQL Server2005解决方案;

(4)使用Visual Studio SDK创建可以扩展Visual Studio IDE的工具[6-8]。

VB2005是visual Studio2005中最重要的组件之一,是新一代的VB,但它并不是2003的简单升级,从开发界面到控件,VB2005与2003之间还是有比较大的区别[6]。

新一版SQL Server的设计目标正是帮助企业单位应对上述挑战。作为Microsoft公司的下一代数据管理与分析软件,SQL Server2005有助于简化企业数据与分析应用的创建、部署和管理,并在解决方案伸缩性、可用性和安全性方面实现重大改进。

基于SQL Server2000技术优势构建的SQL Server2005将提供集成化信息管理解决方案,可帮助任何规模的组织机构:

(1)创建并部署更具伸缩性、可靠性和安全性的企业级应用。

(2)降低数据库应用创建、部署与管理的复杂程度,进而实现IT效率最大化。

(3)凭借可供创建更具安全保障之数据库应用的丰富、灵活、现代化开发环境增强开发人员工作效能。

(4)跨越多种平台、应用和设备实现数据共享,进而简化内部系统与外部系统连接。

相关文档
最新文档