当前位置:文档之家› 基于web排课系统的设计与实现

基于web排课系统的设计与实现

基于web排课系统的设计与实现
基于web排课系统的设计与实现

毕业设计(论文)题目基于WEB的排课系统的设计与实现

姓名郑如冰

学号 021*******

所在学院管理学院

专业班级信息管理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 inspect

1 综述

随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。因此,在计算机技术越来越普及的今天,市场上也出现了不同版本的排课系统,而这些排课系统又大部分是用传统的Visual basic、Visual Foxpro等语言来开发设计,此类系统有一个共性就是运行的界面单一而且不能发布到网上。所以在经过各个方面的综合分析后,本人决定用ASP这一目前较为流行的开放式的Web服务器应用程序开发技术。使用它可以将HTML语言,脚本语言和ActiveX 控件组合一起,产生动态、交互、具有数据库访问功能,且高效率的基于Web的应用程序。

1.1 课题背景及意义

在高等院校中,培养学生的主要途径是教学。在教学活动中,有一系列管理工作。其中,教学计划的实施是一个重要环节。每学期管理人员都要整理教学计划,根据教学计划下达教学任务书,然后根据教学任务书编排课程表。在这些教学调度工作中,既有大量繁琐的数据整理工作,更有严谨思维的脑力劳动。此外,还要填写大量的表格,因此工作非常繁重。加之教学的改革,招生人数的增加及教室设备的不足,不但增加了工作的难度,而且要求管理工作更加快速、准确。为此,人们自然希望用先进的管理手段完成这些工作。随着计算机技术的普及,办公室自动化的先进管理手段被引进到教学调度工作中。计算机排课与人工排课有一定区别。人的思维可以是收敛的,也可以是发散的。因而排课表时非常灵活,随机性很强,没有严格的工作步骤,随情况而变,觉得怎么合理怎么做。但计算机就不同,它并不具备人的大脑那样的发散思维能力。它的“大脑”里的一切信息都是由“数据”组成。每步工作是由人把人的思维抽象成计算机的语言,通过程序进行控制。所以用计算机进行排课最大的要领就是要掌握系统软件的设计思想,各种数据间的关系及工作先后顺序等,就是要掌握各种课程的要求如何通过数据传输给计算机,让它领会人的意图,达到预期的目的。也就是说,计算机排课的关键是数据。

1.2 课题研究现状

传统的人工进行排课,最令人担心的问题就是——出现教室资源冲突或教师资源冲突的

情况,而且工作繁琐,工作量巨大,尤其是在给大学校园进行排课时出现的问题更多。市场流行的排课系统很多,这些排课软件在解决排课问题时大多数采用的算法都是回溯算法,排课的效果也都很好。利用回溯算法解决问题的思路是先选择某一可能的线索进行试探,每一步试探都有多种方式,将每一方式都一一试探,如有问题就返回纠正,反复进行这种试探再返回纠正,直到得出全部符合条件的答案或是问题无解为止。这种解决问题的方法就是回溯算法。回溯算法对空间的消耗较少,当其与分枝定界法一起使用时,对于所求解在解答树中层次较深的问题有较好的效果。但应避免在后继节点可能与前继节点相同的问题中使用,以免产生循环。

回溯算法是所有搜索算法中最为基本的一种算法,其采用了一种“走不通就掉头”思想作为其控制结构,其相当于采用了先根遍历的方法来构造解答树,可用于找解或所有解以及最优解(据了解清华大学制作的一种排课软件主要采用时间模式和并行回溯算法,和此算法基本相同,只是在排课前就已经建立的时间库)。

1.3 发展趋势

计算机软件技术应用于学校的课程安排是发展的必然。充分发挥计算机的优势,将大量复杂的判断与运算交给计算机来做,是真正意义上的人脑的“减负”。教师设置好学校基本情况及排课要求,让计算机排出课程表,适度调课后的课表就能满意地应用于新的学期。随着计算机软件技术的不断发展,排课效率高、出错概率低的排课算法也必将会逐渐趋向成熟,功能更加完善的排课系统也将应运而生。

2 需求分析

2.1 可行性分析

系统可行性研究是系统发展过程中的一项重要的工作,其目的就是订出一套选择标准和一套选择程序及组成一个有效能的决策组织,如此,使用者便能依正确的顺序解决相关的问题。下面将从操作可行性、技术可行性、经济可行性三个方面对排课系统进行分析。

(1)操作可行性

对于新系统的实施运作,由于组织人员都相当配合,没有任何抗拒心理,所以运作方面

没有太大的困难。而由于作业流程和程序设计都很详细规划,所以方案的运作都能按照作业程序来进行。而软硬件方面,由于现有的PC和打印机,再加上ASP和IIS极为普遍,所以没有太大的问题。

(2)技术可行性

方案所需的硬件设备,组织内可以提供;软件技术方面,系统发展人员的能力足以胜任;而且在软件技术方面,我们采用Access作为后台数据库,使用ASP开发基于WEB的排课系统,因为这种技术已实用化,设计的页面精美,功能强大。

(3)经济可行性

经济可行性是对将要开发的系统的成本效益进行的量度,可以说是可行性分析中最重要的一个,以低成本追求高效率是我们的目标。排课系统是通过计算机来自动地解决各种教学资源如教室、教师的合理有效利用问题,避免教师、班级在上课时间、地点上的冲突,使排课时间分配均匀,这就大大的节省了时间,提高了工作效率,避免了人力,物力,财力的浪费,因此本系统可行。

2.2 系统开发目的

排课管理的主要任务是把各系或各授课部门的课程申请进行汇总,然后根据教学计划或教学环节制订全校各班级的课表。一方面,由于高校班级数、课程门数较多,每门课又涉及很多信息,如果用手工进行排课,不可避免地出现教室资源冲突或教师资源冲突的情况。另一方面,由于教学管理工作存在人流量大、事务繁琐的特点,教务管理人员付出大量的工作时间来从事各种事务性工作,但工作的效率很低。为提高工作效率,减轻校方人员的工作负担,决定针对教学管理中各项事务性工作开发排课管理系统软件,以供教学人员及操作者进行教学管理。同时也为开发人员提高软件开发的能力,从中学习知识吸取经验,进一步深入理解校园信息化管理的精髓,在技术和软件思想上得到锻炼和提高提供了机会,从而使总体管理水平上升到一个新的高度。

2.3 系统功能及性能要求

2.3.1 对功能的规定

作为一个完整的数据库系统,其各种功能也要求比较完善,本系统的主要功能有:

(1)系统登入功能:在系统授权范围内,用户选择各自的用户名,输入密码后登入系统;

(2)基本信息管理:教师、教室、班级、课程、课程申请等数据的增、删、改、查;

(3)数据处理:自动排课、教师、教室、班级、课程、课程申请等数据的输入、编辑、修改、删除等功能;

(4)数据输出:查询教师、班级课程表,打印教师、班级课程表,查询教师、班级、教室课程以及课程申请的基本信息;

(5)系统设置:对用户权限的设置和密码的更改。管理员在此可修改各个用户的密码。在本系统中,普通用户即教师和学生只能浏览、查询和打印基本信息以及查询课表和打印课表,不能添加、删除、修改基本信息并且无权排课、调课和更改密码。

2.3.2 对性能的规定

(1)教师和学生都不能发生课时冲突,即没有教师要同时给两个(或两个以上的)班上课,也没有一个班要同时上两门(或两门以上)不同的课程;

(2)教师和学生合理的不排课时间要求一定要满足;

(3)要求排连堂的课一定要连堂;

(4)主课(大学英语、高等数学、大学物理等)课程排上午,副课(思想道德修养、文献检索等)课程排下午,其它课程在上、下午随机分布;

(5)满足教师教案的周期性,教师备一次课后应在他授课的所有班上都讲授一遍之后才进入到下一阶段的备课和授课;

(6)尽量避免断点,即不出现一天内前、后节次有课,中间无课的现象;

(7)文、理课(如高等数学和大学英语)相间,以使学生智力得到调整,提高学习效率;

(8)同一门课一周内在节次上要均匀分布;

(9)排课前考虑老师的时间问题。张教师一周5天共上20节,则尽可能安排每天4节课且4节课不连续安排在如1234或5678节等;

(10)排课时还要充分考虑到课程的均匀性问题。即课程安排尽可能均匀,英语一周3

节,若一周上5天的课,尽量每隔一天安排一次课程;

(11)对于数量巨大的信息,系统仍具有较快的响应速度和较小的系统开支。

2.4 组织结构图

组织结构,指的是一个组织(部门,企业,车间,科室等)的组成以及这些组成部分之间的隶属关系或管理与被管理的关系。如图2-1所示:

图2-1 组织结构图

2.5 管理业务流程

业务流程图是一种描述系统内各单位、人员之间业务关系、作业顺序和管理信息流向的图表,利用它可以帮助分析人员找出业务流程中的不合理流向。下图是排课系统的业务流程图。管理员在进行教师、班级、教室、课程、课程申请的信息登记汇总后提交到教务处,教务处的工作人员根据这些信息,利用计算机自动排出课表,之后再对有冲突的课程进行调整,使课程安排均匀最后生成正式的课表,再将课表分发到各个班级,如图2-2所示:

图2-2 业务流程图

2.6 系统数据结构图

(1)顶级数据流动图

图2-3 基本信息管理数据流动图(2)第二级数据流动图

数据流动图:

图2-4 排课数据流动图

3 系统设计

3.1 需求规定

随着Internet 技术的日益发展,Web 应用的逐渐普及,本校校园网建设的逐步扩展,对本校的教务管理提出了新的要求,要求实现教务的网络化管理,并且要求教务人员能从繁杂的传统的手动排课中解脱出来,利用计算机自动的安排合理而又实用的课程表,考虑年级、班级、教师、课程、教室等方方面面的因素,合理地利用教室、教师等资源,解决好班级间的时间冲突,给每个班排课时,避免时间、场地冲突等,能够充分考虑到课程的均匀性问题。

3.2 运行环境

(1) 硬件环境

内存128M ,显示器17寸;分辨率1024×768、大字体(大尺寸)显示,或分辨率800×600、小字体(正常尺寸)的显示。

(2) 支持软件

适合的环境:Windows 2000、Windows XP 、Windows 2000 Sever 等的运行环境并且要安

装WEB服务器即IIS信息服务器,其中Windows 2000 Sever不需要安装IIS。

3.3 开发语言介绍

3.3.1 系统开发环境介绍

B/S结构,即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户界面完全通过WWW浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现。B/S结构,主要是利用了不断成熟的WWW浏览器技术,结合浏览器的多种Script语言(VBScript、JavaScript等)和ActiveX技术,用通用浏览器就实现了原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。目前大多数应用软件系统都是Client/Server 形式的两层结构,现在的软件应用系统正在向分布式的Web应用发展;内部的和外部的用户都可以访问新的和现有的应用系统,Web和Client/Server 应用都可以进行同样的业务处理;不同的应用模块共享逻辑组件;通过现有应用系统中的逻辑可以扩展出新的应用系统。这也就是目前应用系统的发展方向。随着Windows 98/Windows 2000将浏览器技术植入操作系统内部,这种结构更成为当今应用软件的首选体系结构。

3.3.2 开发语言简介

Active Server Pages(ASP)是服务器端脚本编写环境,使用它可以创建和运行动态、交互的Web服务器应用程序。使用ASP可以组合HTML页、脚本命令和ActiveX组件以创建交互的Web页和基于Web的功能强大的应用程序。ASP应用程序很容易开发和修改。使用ASP进行计算的Web可转化为有形的利益,它使Web供应商能够提供交互的商业应用而不仅仅是发布内容。

用ASP访问WEB 数据库时,必须使用ADO组件,ASP与ADO是一种完全的WEB数据库访问解决方案。首先浏览器向Web服务器发出请求,服务器会自己解释ASP文件(若不是ASP文件,则会直接下载)中的Script段,而把其余的部分交给用户执行。若是执行中使用了ADO对象设置的参数来启动对应的ODBC驱动程序,在启动ODBC驱动程序之后,程序可以直接利用ADO对象来访问数据库,或通过ADO对象来发送SQL指令,进而达到存取数据库的目的。

3.4 基本设计概念和处理流程

系统用况如图3-1所示:

用户(教师和学生)浏览信息

图3-1 系统用况图

活动者1:用户(教务处),作为系统的最大使用者,可操作系统的全部功能,即使用系统对全校的班级进行排课,可进行基本的信息设置(教师信息设置,班级信息设置,教室信息设置,课程设置,课程申请),根据基本信息进行自动排课和手动调课,并对教师的课表和班级的课表进行查询,还可对系统的权限进行设置。

活动者2:用户(教师和学生),作为系统的一般使用者,他们能进行查询和浏览,并能看到教师、班级、教室、课程、课程申请的基本信息。学生可以查询自己班级的课表和自己关注的老师的课表;老师可以查询自己的课表,也可查询自己所教的班级的课表。

用况说明:

(1)用况名称:主界面

参与者:用户(教务处、教师、学生)

主要事件流:

用户在这里根据自己的需要选择需要的操作,其中以教务处身份登入的就可选择此界面上的所有功能操作,而以老师和学生身份登入的就只能浏览各个模块的基本信息并可选择高级查询这个模块。

(2)用况名称:教师设置

参与者:用户(教务处、教师、学生)

主要事件流:

教务处的管理人员对教师的基本情况如姓名、职称、学位、住所等进行编辑、添加、删除、查询等操作;教师和学生能够浏览和查询基本信息。

(3)用况名称:班级设置

参与者:用户(教务处、教师、学生)

主要事件流:

教务处的管理人员对班级的基本情况如班级名称、班级人数、专业、年级等进行编辑、添加、删除、查询等操作;教师和学生能够浏览和查询基本信息。

(4)用况名称:教室设置

参与者:用户(教务处、教师、学生)

主要事件流:

教务处的管理人员对教室的基本情况如教室名称、教室容量、教室性质等进行编辑、添加、删除、查询等操作;教师和学生能够浏览和查询基本信息。

(5)用况名称:课程设置

参与者:用户(教务处、教师、学生)

主要事件流:

教务处的管理人员对课程的基本情况如课程名称、课程类别、考核方式、课程性质等进行编辑、添加、删除、查询等操作;教师和学生能够浏览和查询基本信息。

(6)用况名称:课程申请设置

参与者:用户(教务处、教师、学生)

主要事件流:

教务处的管理人员对课程的基本情况如课程名称、教师姓名、班级名称、周课数、学分、开始周、周数等进行编辑、添加、删除、查询等操作;教师和学生能够浏览和查询基本信息。

(7)用况名称:自动排课

参与者:用户(教务处)

主要事件流:

教务处的管理人员在输入教师信息、班级信息和教室信息、课程信息后系统就可根据算法和代码自动的安排各班和各老师的课程表,在自动排课后,教务处的管理人员可调整课表的一些冲突问题如场地冲突、时间冲突等进行改正,或是对某些老师由于特殊情况要课程调动的课表进行重新安排。

(8)用况名称:高级查询

参与者:用户(教务处、教师、学生)

主要事件流:

系统的所有默认用户都可使用这个模块查询他们各自关注的课表信息并且打印课表。用户输入查询的关键字(查询班级课表的可以输入班级名称,查询老师课表的可以输入老师姓名),系统搜索所需的课表,显示课表信息,用户可对课表进行打印。

(9)用况名称:系统权限

参与者:用户(教务处)

主要事件流:

系统管理员可对系统的权限进行设置,用户可对原有的密码进行修改。教务处在登入系统后可输入旧密码,再二次输入新密码进行密码的修改。

3.5 结构

3.5.1 系统的物理结构图

图3-2 系统物理结构图

3.5.2系统模块图

以下对系统模块进行大致的介绍:

(1)用户接口模块;

(2)数据库管理模块;

(3)核心功能模块;

①基本信息管理子模块。该模块包含:教师设置,教室设置,班级设置,课程设置,课程申请设置。

②系统管理子模块。该模块包括:用户界面与系统权限。

③排课管理子模块。该模块包括:手动课程管理、自动排课管理、手动调节管理、排课异常管理以及班级、教师课表管理5个部分。如图3-3所示:

图3-3 系统模块图

3.6 数据库设计

3.6.1 建立数据库的基本工具

建立一个数据库我们有多种选择,现在市场上有各种各样的数据库,而且每一种数据库都有其自身的特点,不能说哪一种更好,只能在其中寻找一种能更好地适应系统需求、更好地满足用户的要求以及适应开发人员的习惯。在本系统中,作为高校排课系统是一个比较小的应用系统,它所产生和处理的数据量也比较小。因此,没有必要使用像SQL Server和Oracle 这样的大型数据库。我首先想到的是Microsoft Office中的Access数据库在计算机上的应用比较普及,是开发小型数据库系统的比较理想的选择,所以,在本系统中我选择了Access 数据库。Access作为一个数据库管理系统,它被集成在Microsoft Office中。Access数据库处理的基本结构,采取关系型数据库模式。与其他的数据库系统相比,Access更加简单易学,一个普通的计算机用户可以很快地掌握它。Access 2000的功能十分强大,利用它可以方便地

实现对信息保存、维护、查询、统计、打印、交流、发布,而且它可以十分方便地与Office 其他组件交流数据,这些功能对一个一般用户而言已经足够了。

3.6.2 设计原则

要设计出一个好的管理系统数据库,除满足系统所要求的功能外,还必须遵守下列原则:(1)基本表的个数越少越好。

(2)主键的个数越少越好。键是表间连接的工具,主键越少,表间的连接就越简单。

(3)字段的个数越少越好。

(4)所有基本表的设计均应尽量符合第三范式。

在数据库的设计中,如何处理多对多的关系和如何设计主键,是两个有着较大难度、需要重点考虑的问题。

3.6.3 系统数据库设计

在概念设计阶段中,设计人员从用户的角度看待数据及处理要求和约束,产生一个反映用户观点的概念模式。然后再把概念模式转换成逻辑模式。将概念设计从设计过程中独立开来,使各阶段的任务相对单一化,设计复杂程度大大降低,不受特定DBMS的限制。

我深入分析后,确定在本系统中将使用以下几个数据表,同时为了便于使用数据,在各个数据表中增加代码属性作为其主码。

(1)课程信息数据库:记录课程的基本信息

属性:(课程名称,课程代码,课程类型,考核方式,课程性质)其中课程代码唯一标识一门课程,课程类型用来确定课程优先级,而课程性质是课程所需教室条件的信息,如:是否需要多媒体。如表3-1所示:

表3-1 课程信息表

(2)教师信息数据库:记录院系教师的基本信息

属性:(教师姓名,教师代码,职称,学位,住所)其中教师代码唯一标识一位教师,教师职称和学位确定教师优先级,住所判断老师是否在校外居住,排课时给予一定的优先级。如表3-2所示:

表3-2 教师表

(3)教室信息数据库:记录教室的基本信息

属性:(教室名称,教师代码,教室容量,教室性质)其中教室代码唯一标识一个教室,教室容量和性质分别判断是否与班级和课程性质的相匹配。如表3-3所示:

表3-3 教室表

(4)班级信息数据库:记录班级的基本信息

属性:(班级号,班级代码,班级人数,所在专业,所属年级)其中班级代码唯一标识一个班级,所属年级用来确定该班级有哪些课程。如表3-4所示:

自动排课系统设计与实现论文

摘要:制定一个学校的排课计划是一项非常耗时且相当辛苦的工作,而且它还得由有学校排课工作经验或者这方面知识的人才能做好。在一所高校时一个课程表的制定是一个难题,因为在有关课程表的问题上有很多的限制条件得考虑,还有大量的数据空间被挖掘,即便你的输入数据量并不是实际意义上的大批量。 课程编排系统是一个学校不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以自动课程编排系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。 本系统经过测试,运行稳定,可投入使用。 关键字:排课管理,VB,数据库

Abstract:Formulates a school platoon class plan is an item consumes extremely when also the quite laborious work, moreover it also must by have the school row of class work experience or this aspect knowledge talented person can complete. When a university a class schedule formulation is a difficult problem, because has the very many limiting condition in the related class schedule question to result in the consideration, but also has the massive data space to excavate, even if your input data quantity is not in the practical significance mass. The curriculum arranges the system is a school essential part, Its content said regarding the school policy-maker and the superintendent all very important, Therefore the automatic curriculum arranges the system to be supposed to be able to provide the sufficient information and the quick inquiry method for the user. But the people have since always used the traditional artificial way management document file, this management way has many shortcomings, For example: The efficiency low, the secrecy is bad, Moreover the time one is long, Will produce the massive documents and the data, This regarding the search, the renewal and the maintenance has all brought many difficulties. Along with science and technology unceasing enhancement, The computer science is mature day after day, Its formidable function had profoundly known for the people, t entered the human society each domain and is playing the more and more vital role. This system after the test, the movement is stable, may put into the use. Key words: Curriculum management, VB, database

课程设计(自动排课系统)

2008~2009学年度《WEB 程序设计》 课程设计 班级:05网络3班 学号:090205338 姓名:周秋艳 2008年12月17日

基于WEB的高校教师排课系统 一、用户需求分析(10分) 学校教务的管理作为高校教育信息化工作中的一项重要工作,如何构建一个具有开放性、实用性和灵活性的平台,是一个值得探讨的课题。其中,作为学校教务重点环节之一的排课系统也尤为重要。 先前,在统筹安排各班级上课的时间需要人工实现,而且经常会出现同时有多个班级要使用教室的冲突。既耗时又耗精力,随着计算机技术的不断发展,计算机技术在各领域的充分完美应用,以学校的教务管理为该系统的应用背景,开发一个教室智能排课系统。 此系统开发主要包括后台数据库的建立和前端应用程序的开发两个方面。系统采用Visual Basic 6.0开发工具和SQL Server 2000作为后台数据库开发的应用软件。该系统实现上机时间的安排,课程的安排,教室的安排,以及它们之间的不冲突和资源的高效利用;这更切合学院教学需要,降低了排课管理工作的工作量和节省了时间,同时课程安排完成后,学院可迅速获得课表情况信息,为教学工作带来方便。本系统界面友好,操作简单,使用方便。 二、系统总体设计(15分) 1.系统功能描述 1.1 基本信息管理:教师、教室、班级、课程、教学任务等数据的输入、编辑功能; 1.2 数据处理:自动排课、课表修改、删除功能;

1.3 数据输出:桌面查询教师、教室、班级课程表,报表打印教师、 教室、班级课程表; 1.4 帮助:指导用户使用该系统及其他相关说明。 2 系统功能设计 分析目前市场上流行的各种排课软件,它们都具有比较完善的功能,但在真正的排课算法上都会有些问题,因为排课算法最关键的问题是如何解决各式各样的冲突。在做需求分析的过程中,通过调查得知目前排课人员对排课算法的主要要求有: 2.1 怎样的合班组合能避免冲突? 目前采取的方式是相同或相近的专业的班级组合。 2.2 什么地方有空能排课? 对教室和班级而言是查空,对教师而言是有无排课需求。 2.3 有两个以上的空哪一个更好? 是要考虑离散和平衡问题。 2.4 排课前如何考虑教师宏观利用问题? 例如:多媒体大班课:大学英语、高等数学尽量排在上午, 思想道德修养、马克思主义哲学原理等尽量排在下午。 2.5 对于数量巨大的信息,系统仍具有较快的响应速度和较小的 系统开销。 三、系统功能模块分析(25分) 详细分析各功能模块之间的关系,以及各功能模块下的子模块构成。

自动排课系统的设计与实现[1]

目录 摘要............................................................................................................................. I 第1章绪论 (1) 1.1系统开发背景 (1) 1.2国内外的研究现状 (1) 1.3系统解决的主要问题 (3) 1.4本文的主要工作 (3) 1.5本文的组织结构 (3) 第2章需求分析 (5) 2.1系统概述 (5) 2.1.1总体业务描述 (5) 2.1.2系统的目标和解决的问题 (5) 2.1.3系统的开发模式 (7) 2.2系统需求问题描述 (9) 2.2.1功能性需求 (9) 2.3.2系统非功能性需求 (12) 第3章系统构架设计 (14) 3.1构架的目标和约束 (14) 3.2构架设计 (15) 3.2.1系统总体架构 (15) 3.2.2系统功能构架 (16) 3.2.3系统技术构架 (17) 3.2.4系统安全构架 (18) 第4章系统详细设计 (20) 4.1 系统建模 (20) 4.2 系统数据库设计 (24) 4.2.1生成数据库表 (24) 4.2.2数据分析 (32) 4.2.3数据库管理技术 (34) 第5章计算机排课系统的实现 (35) 5.1系统总体实现 (35) 5.1.1数据录入模块的设计与实现 (38) 5.1.2报表模块的设计与实现 (43) 5.1.3用户管理模块的设计与实现 (45) 5.2教学计划的关键实现 (48) 5.2.1算法描述 (49) 5.2.2教学计划算法过程 (49) 5.3排课算法的关键实现 (51) 第6章总结与展望 (66) i

简单Web服务器设计与实现课程设计

计算机网络课程设计报告 题目:简单Web服务器设计与实现 专业: 学号: 学生姓名: 指导教师:

摘要 (2) 关键词 (2) 1. 前言 (3) 1.1 课程设计前准备 (4) 1.2 课程设计的内容 (5) 1.3 课程设计要求 (5) 1.4 课程设计平台 (5) 2. Web服务器的工作原理 (5) 2.1 HTTP协议的作用原理 (5) 2.2 Java开发语言相关知识与技术 (6) 3. 开发环境及套字接编程 (11) 3.1 Web服务器的开发环境 (11) 3.2 Web服务器的套接字编程 (12) 4. WEB服务器的设计与实现 (13) 4.1 Web服务器的程序设计流程 (13) 4.2 用Java实现Web服务器的主要设计步骤及程序 (14) 5. 测试运行 (21) 5.1 调试运行 (21) 6.结束语 (23) 参考文献 (24)

WWW的工作基于客户机/服务器计算模型,由Web 浏览器(客户机)和Web服务器(服务器)构成,两者之间采用超文本传送协议(HTTP)进行通信,HTTP协议的作用原理包括四个步骤:连接,请求,应答,关闭应答。在课程设计中,系统开发平台为Win7,程序设计语言采用Java,程序运行平台为Eclipse。在程序设计中,采用了结构化与面向对象两种解决问题的方法。程序通过调试运行,初步实现了设计目标,并且经过适当完善后,将可以应用在商业中解决实际问题。 关键词Java;HTTP;Web服务器

Internet是目前世界上最大的计算机互联网络,与大家的生活、学习、工作有着越来越密切的关系,它遍布全球,将世界各地各种规模的网络连接成一个整体,其用户群十分庞大,因此,建设一个好的Web站点对于一个机构的发展十分重要。近年来,随着网络用户要求的不断提高及计算机科学的迅速发展,特别是数据库技术在Internet中的广泛应用,Web站点向用户提供的服务将越来越丰富,越来越人性化。 本课程设计主要解决由Web 浏览器(客户机)和Web服务器(服务器)构成,两者之间采用超文本传送协议(HTTP)进行通信的Web服务器的程序设计。 1.1 课程设计前准备 以下的工作均是建立在大量的调查基础上的,是Web服务器开发前期准备工作所解决的问题。 (1)Java简介 Java是由sun公司开发的一种新型的面向对象的程序设计语言,主要用于web页面的设计[1]。Java语言的流行除了因为它能够编制嵌入HTML文件中的Applet外,还在于Java语言本身的面向对象、简单、平台无关性、安全性、多线程等特点。Java语言的发展颇具传奇性,它与Internet的WWW的迅猛发展是分不开的。由于其发展迅速,有人将它比喻为Internet上的世界语。前面讲到在Internet上Web页面的设计采用的是HTML语言,用户借助于Web浏览器(如Netscape,HotJava,IE等),可以访问到远程web服务器上静态的、具有超链接的Web页面[2]。 (2)HTTP协议简介 HTTP 协议是应用层的协议,定义了服务器端和客户端之间文件传输的沟通方式。HTTP协议用于从WWW服务器传输超文本到本地浏览器的传送协议。由于HTTP协议支持的服务不限于WWW,还可以是其它服务,它允许用户在统一的界面下,采用不同的协议访问不同的服务。它可以使浏览器更加高效,使网络传输减少。它不仅保证计算机正确快速地传输超文本文档,还确定传输文档中的哪一部分,以及哪部分内容首先显示等[3]。

排课系统设计

一、需求分析 需求分析是数据库设计的必要和首要设计阶段,将会影响以后数据库设计的延续和质量,需求分析方法也很多,最重要是形成有实用价值的实际性的数据字典和数据流图。在该排课系统的需求分析阶段,主要是通过询问和自己所掌握的关于该系统的数据联系方式和工作方式,形成了关于该系统的数据字典和数据流图。 1.1需求表述 1.1.1 基本功能描述 排课系统的数据库设计主要完成工作有: 1、数据库管理员对数据的录入和相关完整性条件约束的建立, 2、数据库相关的触发器与存储过程对数据库中数据的联系的 管理; 3、执行程序能够高效率地完成数据处理和调用; 4、能够通过DBMS建立一系列视图来更方便的操作数据库。1.1.2 开发技术描述 开发工具:Microsoft SQL Server 2005 SQL Server 2005 是microsoft 公司推出的数据库管理系统,该版本继承了SQL Server 2000 版本的优点,同时又比它增加了许多更先进的功能。具有使用方便可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 2000 电脑到运行Microsoft Windows XP 的大型多处理器的服务器等多种平台使用。本实验中最终将使用Microsoft SQL Server 2005数据库管理系统将我们设计的数据库实现。 1.2分析形成初步数据字典 数据字典(Data Dictionary,DD)是数据库设计需求分析阶段后通过科学的处理方法得到的该系统中各类数据描述的集合,也是进行详细数据收集和数据分析所获得的主要成果,它在数据库设计中占有恨重要的地位。 数据字典通常包括数据项、数据结构、数据流、数据存储和处理过程5个部

web程序设计课程设计--文件管理系统

目录 一.项目背景 (2) 二.需求分析 (2) 1.系统需求分析 (2) 2.系统分析 (3) 三.后台数据库Microsoft SQL Server 2008 (4) 四.https://www.doczj.com/doc/7c18123172.html, 2010 (4) 五.数据库设计 (4) 1.数据库设计 (4) 2.功能模块设计 (6) 3.系统功能流程 (7) 六.详细功能设计 (7) 七. 课程设计总结 (8) 八.问题与解答 (9)

一.项目背景 文件管理系统是信息技术在公司里管理中最典型的应用。传统文件管理模式是由人工去管理的,效率低下,无法适用于当前对文件管理的需求。文件管理系统基于网络技术,使办公室对文件的管理工作逐步信息化,从而形成由办公室人员与办公室设备共同构成服务于某种目标的人机文件处理系统,因而可以将跨地区的各个部门紧密连接在一起,从而达到对文件的实时共享,可以最大程度地发挥各级人员的工作效率。 通过以上分析,得出总结:文件管理是一个过程,因为网络化的文件管理系统并不局限于办公室,具有广泛的应用范畴。从领导各个业务部门乃至单位的所有工作人员,几乎人人都可能成为使用文件管理系统的用户。随着社会的发展与信息技术的进步,全球信息化的直拨越来越明显,任何单位与企业不再是局限于某一个地区,都在自觉不自觉在参与到了全球化的竞争中。在这个全球化的竞争中,政府机关企事业单位对信息的掌握程序,信息获取是否及果,信息能否得到充分的利用、对信息的瓜刘否敏感准确,已越来越成为徇其竞争能力的最重要因素。综上所述,文件管理系统的前景是非常广阔的。 二.需求分析 1.系统需求分析 随着国家信息基础建设的深入,规划用网络构建文件管理系统以实现管理员对文档的管理,同时实现了对文档的上传,下载,浏览共享文件和删除文件,同时每个用户还有不同的权限。在此让不同用户方便的实现了对文件的有效管理与其它相关信息的有效管理,为人们提供更广泛的、更便捷的信息及服务。 随着各个学校规模的不断扩大,学校内部对文件处理急剧增加。如果通过网络文件管理系统工作,就可以抛弃以入往传统的模式,发文件的一级一级传达的烦琐。用户只要上网就以查看上级添加而存放在数据库中的文件与相互交流信息的目的。因而根据学校对文件管理

中小学辅助排课系统的设计及实现

word文档整理分享 中小学辅助排课系统的设计与实现 贺荣 摘要:编排课表是中小学教学管理中一项重要而又复杂的工作。它通过合理地安排时间、教师、课程、班级四大要素之间的关系,使全校各个班级一周内的每节课,都有合适的教师及课程与之对应。 针对我校自身的校务情况,在研究过当前一些优秀的排课算法的基础上,我研究出一套基本可行的排课程序。它可先根据教务人员输入的约束条件进行设置,通过逐步筛选细化,将特定的课自动安排在最合适的时间段中安排到最优级的班级中。如果自动排课尚有不成功的地方,会在课表显示区将该课程以红色显示进行警告。通过这种直观的辅助手段,教务人员再配合进一步手动调整,最终调整出满意的课表。 关键词:排课系统自动手动辅助 参考资料

一、排课系统的开发背景 随着教育事业的不断发展,学校对教师课程安排的复杂度不断增加,如何将一个学校各个学科每天的课程安排与教室资源的分配合理化是摆在每一个教务工作人员面前的一个难题。传统的人工排课方式不仅工作繁琐,工作量大,而且还很容易出现错误。因此,计算机软件技术应用于学校的课程安排是发展的必然。充分发挥计算机自身的优势,将大量复杂的判断与运算交给计算机做,是真正意义上的人脑的“减负”。教师设置好学校基本情况及排课要求,让计算机自动排出课程表,适度调课后的课表就能满意地应用于新的学期。 早在上世纪60年代末,Grotlieb.C.C教授就对课程表问题进行了形式化描述[1]。排课表这样的时间表问题(TTP: T ime-Table-P rob lem ) , 是典型的组合优化和不确定性的调度问题[ 2, 3 ] , 并且已被证明是NP完全问题,有其自身固有的数学模型,即课表问题存在解,并且能找到解[4]。排课表问题的难度在于:它是一个多元受限的问题(受限于课程、时间、班级、教师、教室排课五要素) , 如果必须满足所有的约束条件(而这些条件通常是相互矛盾的) , 则极有可能找不到完整解[ 5 ]; 这也是为什么迄今为止还几乎没有完全自动生成课表系统的软件应用于实际,因为多数的排课效果好的软件还需后期手动辅助排课进行完善,而那些完全自动生成的排课软件,通常会以降低约束条件的满足程度为代价(比如不能均匀分布课程、主副科安排时间段不很合理等)。 目前, 解决课表问题的方法有: 模拟手工排课法[ 6,7 ] , 图论方法, 拉格朗日松弛法, 二次分配型法等多种方法[ 8, 9 ]。在以往的教学管理中,课表编排在许多学校只能通过人工或人工模拟的方式生成。但是,伴随着各类学科范围的不断扩大,各学科科目逐渐增多,以至于众多的教师和学生、庞大的课时、复杂的班级信息令学校的教务安排人员无法高效、合理地制定出相应的排课计划。这就促使我们的教务安排人员必须采用一些辅助的手段来帮助自己。因此,计算机辅助排课成了现代排课的需要,相应的排课算法成了人们探讨的主要问题。目前常见的排课算法有贪心算法、遗传算法、回溯算法等[10]。研究并使用一种好的算法不仅可以缩短排课时间,提高排课效率,更可以让使用者得心应手,提高教学效果。

软件工程课程设计--高校课表编排子系统

软件工程课程设计--高校课表编排子系统

题目:高校课表编排子系统 学院信息工程学院 专业计算机科学与技术 指导教师白娟 2014年1 月 3 日

摘要 教学工作是高校的中心工作,而课表是高校日常教学活动运行的指挥调度表,是高校能否进行正常教学的关键,因此科学的,合理的课表在高校的重要性毋庸置疑。高校教务管理是一向复杂而繁重的工作,课表编排作为其中腰组成部分是长期困扰学校教务管理工作的大问题,计算机排课无疑是必然优势。课表编排是一个涉及多因素约束的,多目标的,结构复杂的典型的组合优化问题,并且已经被证明为一个NP完全类,是典型的组合优化的问题,其问题求解的时间复杂度呈指数函数增长。每个学校在排课表时考虑的因素千差万别,各种约束条件也不尽相同,但是它所涉及的主要实体却具有相对稳定性。关键字:NP完全类; 约束满足;课表编排;课程设置;

目录 目录 (4) 第一章需求分析说明 (5) 1.1编写目的 (5) 1.2问题定义 (5) 1.3可行性分析 (5) 1.4任务描述 (5) 1.5目标 (5) 1.6运行环境 (6) 1.7功能需求 (6) 1.7.1功能描述 (6) 1.7.2排课约束 (6) 1.7.3操作规程 (6) 第二章概要设计说明 (8) 2.1数据描述与数据库设计 (8) 2.2数据表 (8) 2.2.1E-R图 (9) 2.2.2数据流图部分 (9) 2.3运行需求 (11) 2.3.1硬件 (11) 2.3.2软件 (11) 第三章详细设计说明 (12) 3.1模块的具体算法 (12) 3.1.1登陆模块 (12) 3.1.2管理员模块 (13) 数据库中各表的物理结构 (17) 第四章编码+测试 (19) 4.1登录模块 (19) 4.1.1 管理员模块 (20) 4.1.2教师模块 (22) 4.2测试方案设计 (24) 测试结果分析: (24) 第五章用户使用说明书 (25) 第六章实验总结 (28) 第七章参考文献 (30)

排课系统数据库设计

JIANGXI AGRICULTURAL UNIVERSITY 本科课程实训 题目: 关于学生排课系统的数据库设计 学院: 软件学院 姓名: 肖力谢果 学号: 20101466 20101467 专业: 软件工程 班级: 软件1001 指导教师: 黄欣 2011年12月

引言: 由于当下大学学校班级及专业较多,我们学校的实用的帮助班级排课的一个系统也有迫切需求。基于用SQL Server设计的数库的排课系统也有很大的需要,在本实训作业中,将会针对该实际情况,对我校江西农业大学的学生上课排课系统的数据库进行设计。 该设计工作由双人合作的形式完成,对一个学期以来数据库系统概论的学习进行巩固与联系。该排课系统主要设计流程工作大概分为三个阶段:需求分析,概念结构设计,逻辑结构设计,也将设计的物理结构与数据库实施维护从略讲述,着重在需求分析上的收集数据形成实体及其联系的数据字典完成,在需求分析的基础上完成数据流图的基本设计;在概念结构设计上完成数据的抽象形成各子系统的E-R图,最后在解决冲突的分析下完成基本总实体-联系(E-R图);在逻辑结构设计阶段中完成数据的抽象及实体的形成,实体的规范分析及完整性约束,以及设计阶段的有关触发器的创建分析与实现……最后简要对数据库设计的步骤的物理设计与实施阶段简要概述。 课程设计为实验周两天完成,使用流行的SQL Server 2005数据库系统完成基本设计工作,通过数据库管理系统(DBMS)、T/SQL基本语句实现数据库表的创建,表的完整性约束,表的视图及触发器的创建,基本工作都按照实训题要求基本完成。

一、需求分析 需求分析就是数据库设计的必要与首要设计阶段,将会影响以后数据库设计的延续与质量,需求分析方法也很多,最重要就是形成有实用价值的实际性的数据字典与数据流图。在该排课系统的需求分析阶段,主要就是通过询问与自己所掌握的关于该系统的数据联系方式与工作方式,形成了关于该系统的数据字典与数据流图。 1.1 需求表述 1、1、1 基本功能描述 排课系统的数据库设计主要完成工作有: 1、数据库管理员对数据的录入与相关完整性条件约束的建立, 2、数据库相关的触发器与存储过程对数据库中数据的联系的管理; 3、执行程序能够高效率地完成数据处理与调用; 4、能够通过DBMS建立一系列视图来更方便的操作数据库。 1、1、2 开发技术描述 开发工具:Microsoft SQL Server 2005 SQL Server 2005 就是microsoft 公司推出的数据库管理系统,该版本继承了SQL Server 2000 版本的优点,同时又比它增加了许多更先进的功能。具有使用方便可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 2000 电脑到运行Microsoft Windows XP 的大型多处理器的服务器等多种平台使用。本实验中最终将使用Microsoft SQL Server 2005数据库管理系统将我们设计的数据库实现。 1.2 分析形成初步数据字典 数据字典(Data Dictionary,DD)就是数据库设计需求分析阶段后通过科学的处理方法得到的该系统中各类数据描述的集合,也就是进行详细数据收集与数据分析所获得的主要成果,它在数据库设计中占有恨重要的地位。 数据字典通常包括数据项、数据结构、数据流、数据存储与处理过程5个部分。其中数据项就是数据的最小组成单位,若干个数据项可以组成一个数据结构,以下将把分析收集的数据及其结构列出:

CRP排课管理系统

CRP模型 CRP系统包括学籍管理、成绩管理、排课管理、考试管理、教师管理、备品管理、系统维护和系统登陆平台。对于每一个子系统,都对应相应的模型,即各种各样的UML图。由于篇幅所限和各子系统具有相同的结构特征,这里只介绍的排课管理子系统的各种模型的建立。 CRP排课管理子系统是为了解决中小学繁杂的排课任务而设计开发的,其基本的要求是要实现排课的半自动或自动化,排出的课程表必须合理,实用。 在这里,结合RRUP过程来介绍各个排课管理系统在实际开发中使用UML 表示的各个模型。 1.1 需求模型 我们使用用例模型来表示需求阶段的系统模型,用例模型主要有用例图组成,从该子系统开始到子系统最终的发布,每一个迭代其用例模型都不相同;在CRP系统的开发过程中,随着迭代的不断进行,用例模型也在不断地发生变化,由于篇幅所限,本文只给出第一次迭代确定的用例模型和现今最后一次迭代所确定的用例模型。 RRUP过程的第一步,就是找出系统的功能需求和非功能需求,并建立相应的需求模型(用例模型)。 通过需求分析,确定了排课管理的功能需求,其需求简要概括如下: ?排课信息设置:包括科目信息,上课时间,科目和教师限制信息,班级 排课信息,排课管理系统根据这些排课信息和限制信息对系统进行自动 排课。 ?自动排课和手工排课:对于用户设定了排课信息之后,系统能够自动对 课表进行安排,而且能够手工对安排完的课表进行调整,在排课过过程 当中,能够对不合理的排课结果给用户进行提示。 ?课表报表和课表查询,给出全校教师,班级课表;在课表查询中,用户 可以选择不同的教师,班级,科目,系统根据用户的选择给出相应的课 表。 需求描述是整个系统在初始阶段的开端,RRUP中,不赞成使用文档对需求进行描述,而是使用用例图和用例模型对系统建立整个需求模型。

WEB课程设计报告

Web开发技术课程设计题目:学生信息管理系统 院系:软件工程 班级学号:软件13 -1(21,19) 姓名:唐波 同组成员:史伟良 指导教师:王双利 2014 年12 月12 日

Web开发技术课程设计任务书 一、题目:学生信息管理系统 二、设计要求 (1)史伟良负责设计与实现管理系统登陆界面;唐波负责设计与实现管理系统增删改查界面。 (2)查阅相关资料,自学具体课题中涉及到的新知识。 (3)采用结构化、模块化程序设计方法,功能要完善,具有一定的创新。 (4)所设计的程序有输入、输出。 (5)按要求写出了课程设计报告,于设计结束后2天提交了。其主要内容包括:封皮、课程设计任务书,指导教师评语与成绩、目录、概述、软件总体设计、详细设计、软件的调试、总结、致谢、附录(带中文注释的程序清单)、参考文献。总体设计应配合软件总体模块结构图来说明软件应具有的功能;详细设计应用传统或N-S流程图和屏幕抓图说明;调试的叙述应配合出错场景的抓图来说明出现了哪些错误,如何解决的。 三、课程设计工作量 一般每人的程序量在200行有效程序行左右,不得抄袭。 四、课程设计工作计划 2014年12月8日,指导教师讲解布置题目,学生根据题目准备资料; 2014年12月8日,进行总体方案设计; 2014年12月8日~2014年12月10日,完成程序模块并通过独立编译; 2014年12月10日~2014年12月11日,将各模块集成为一完整的系统, 并录入足够数据进行调试运行; 2014年12月11日~2014年12月12日,验收、撰写课程设计报告。 指导教师签章: 专业主任签章:

Web开发技术课程设计指导教师评语与成绩

排课系统数据库设计

` JIANGXI AGRICULTURAL UNIVERSITY 本科课程实训 ; 题目:关于学生排课系统的数据库设计 学院:软件学院 姓名:肖力谢果 学号: ~ 专业:软件工程 班级:软件1001 指导教师:黄欣

2011年12月

引言: 由于当下大学学校班级及专业较多,我们学校的实用的帮助班级排课的一个系统也有迫切需求。基于用SQL Server设计的数库的排课系统也有很大的需要,在本实训作业中,将会针对该实际情况,对我校江西农业大学的学生上课排课系统的数据库进行设计。 该设计工作由双人合作的形式完成,对一个学期以来数据库系统概论的学习进行巩固和联系。该排课系统主要设计流程工作大概分为三个阶段:需求分析,概念结构设计,逻辑结构设计,也将设计的物理结构和数据库实施维护从略讲述,着重在需求分析上的收集数据形成实体及其联系的数据字典完成,在需求分析的基础上完成数据流图的基本设计;在概念结构设计上完成数据的抽象形成各子系统的E-R图,最后在解决冲突的分析下完成基本总实体-联系(E-R图);在逻辑结构设计阶段中完成数据的抽象及实体的形成,实体的规范分析及完整性约束,以及设计阶段的有关触发器的创建分析和实现……最后简要对数据库设计的步骤的物理设计和实施阶段简要概述。 课程设计为实验周两天完成,使用流行的SQL Server 2005数据库系统完成基本设计工作,通过数据库管理系统(DBMS)、T/SQL基本语句实现数据库表的创建,表的完整性约束,表的视图及触发器的创建,基本工作都按照实训题要求基本完成。

一、需求分析 需求分析是数据库设计的必要和首要设计阶段,将会影响以后数据库设计的延续和质量,需求分析方法也很多,最重要是形成有实用价值的实际性的数据字典和数据流图。在该排课系统的需求分析阶段,主要是通过询问和自己所掌握的关于该系统的数据联系方式和工作方式,形成了关于该系统的数据字典和数据流图。 1.1需求表述 基本功能描述 排课系统的数据库设计主要完成工作有: 1、数据库管理员对数据的录入和相关完整性条件约束的建立, 2、数据库相关的触发器与存储过程对数据库中数据的联系的管理; 3、执行程序能够高效率地完成数据处理和调用; 4、能够通过DBMS建立一系列视图来更方便的操作数据库。 开发技术描述 开发工具:Microsoft SQL Server 2005 SQL Server 2005 是microsoft 公司推出的数据库管理系统,该版本继承了SQL Server 2000 版本的优点,同时又比它增加了许多更先进的功能。具有使用方便可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 2000 电脑到运行Microsoft Windows XP 的大型多处理器的服务器等多种平台使用。本实验中最终将使用Microsoft SQL Server 2005数据库管理系统将我们设计的数据库实现。 1.2分析形成初步数据字典 数据字典(Data Dictionary,DD)是数据库设计需求分析阶段后通过科学的处理方法得到的该系统中各类数据描述的集合,也是进行详细数据收集和数据分析所获得的主要成果,它在数据库设计中占有恨重要的地位。 数据字典通常包括数据项、数据结构、数据流、数据存储和处理过程5个部分。其中数据项是数据的最小组成单位,若干个数据项可以组成一个数据结构,以下将把分析收集的数据及其结构列出:

教务排课管理系统设计(VB课程设计)

类型:【02课程设计】 作品名称:教务排课管理系统设计 作品关键词:排课管理系统、Microsoft Visual Basic、Microsoft Access

第一章系统需求分析 这个阶段的任务不是具体地解决问题,而是准确地确定“为了解决 这个问题,目标系统必须做什么”,主要是确定目标系统必须具备哪些功能。 需求分析也是软件定义时期的第一个阶段,虽然在可行性研究阶段 可以粗略了解了用户的需求,甚至还提出了可行的方案,但是可行性研 究的基本目的是用较小的成本在较短的时间内确定是否存在可行的解法,因此许多细节被忽略了。然而在最终的系统中却不能遗漏任何一个微小 的细节,所以可行性研究并不能代替需求分析,它实际上并没有准确地 回答“系统必须做什么?”这个问题。为此,必须对系统进行需求分析。1.1 系统编写目的 排课是学校教学管理中十分重要、又相当复杂的管理工作之一,是 为学校所设置的课程安排时间和地点,使整个教学能够有计划有秩序的 进行。 课表编排是一个涉及多种因素的组合规划问题,它要保证在课程安 排中教师、学生、教室不能产生冲突(所谓冲突,就是将需上不同课程 的两个或多个班级安排在了同一时间、同一教室、或为同一教师在同一 时间段安排了多门课程等情况),并且要满足教师的要求和教室资源的要 求等约束条件。 伴随着我国教育体制改革的深入,学生人数的不断上升,课程设置 不断向深度和广度发展,手工排课的缺点越来越突出。由于计算机具有 运算速度快,处理能力强等特点,很自然地进入到这一应用领域中。用 计算机进行排课能够快速地得到满足约束条件的可行性结果,具有排课 时间短、人力省和质量高的优点,不但能够使教务人员从繁杂的排课任 务中解脱出来,而且对于推动教学的发展也起到非常重要的作用。

排课系统概要设计

陕西国防工业职业技术学院 J2EE 项目开发报告 题目排课系统概要设计 专业计算机软件技术 班级软件3121 姓名巨建波 学号 35312130 指导教师魏晓燕刘慧梅房栋 二○一四年

概要设计说明书 目录 1引言 (3) 1.1编写目的 (3) 1.2定义 (4) 1.3参考资料 (4) 2.总体设计 (5) 2.1 任务目标 (5) 2.2 运行环境 (5) 2.3 条件与限制 (5) 2.4基本设计概念和处理流程 (6) 2.4结构 (7) 2.5功能器求与程序的关系 (7) 2.6人工处理过程 (8) 2.7尚未问决的问题 (8) 3.接口设计 (8) 3.1用户接口 (8) 3.2外部接口 (9) 3.3内部接口 (9) 4.运行设计 (10) 4.1运行模块组合 (10) 4.2运行控制 (10) 4.3运行时间 (11) 5.系统数据结构设计 (11) 5.1逻辑结构设计要点......................................................... 错误!未定义书签。 5.2物理结构设计要点 (11) 5.3数据结构与程序的关系 (11) 6.系统出错处理设计 (11) 6.1出错信息 (11) 6.2补救措施 (12)

1引言 1.1编写目的 在排课系统项目的前一阶段,也就是需求分析阶段中,已经将系统用户对本系统的需求做了详细的阐述,这些用户需求已经在上一阶段中对学校,老师,学生中调研中获得,并在需求规格说明书中得到详尽的叙述及阐述。 本阶段已在系统的需求分析的基础上,对排课系统做概要设计。主要解决了实现该系统需求的程序模块设计问题。包括如何把该系统划分成若干个模块、决定各个模块之间的接口、模块之间传递的信息,以及数据结构、模块结构的设计等。在以下的概要设计报告中将对在本阶段中对系统所做的所有概要设计进行详细的说明。 在下一阶段的详细设计中,程序设计员可参考此概要设计报告,在概要设计对机票预定系统所做的模块结构设计的基础上,对系统进行详细设计。在以后的软件测试以及软件维护阶段也可参考此说明书,以便于了解在概要设计过程中所完成的各模块设计结构,或在修改时找出在本阶段设计的不足或错误。 本文档为排课系统设计、实现、测试、以及验收提供重要的依据,也为评价系统功能和性能提供依据,本文档可供用户、项目管理人员、系统分析员、程序设计人员、以及系统测试人员阅读和参考。 项目名称:排课系统

Web程序设计课程设计报告模板

Web程序设计课程设计报告课程设计题目:某电子杂志网站 姓名:肖琴霞 专业:软件工程(国际教育) 班级:10211133 学号:1021113321 指导教师:吴光明 2013 年 3 月 10 日

一、设计目的 《Web应用开发课程设计》是实践性教学环节之一,是《Web程序设计》课程的辅助教学课程。通过课程设计,使学生掌握Web网站的基本概念,结合实际的操作和设计,巩固课堂教学内容,使学生掌握软件开发的基本概念、原理和技术,将理论与实际相结合,应用现有的开发工具,规范、科学地完成一个完整地应用软件的设计与实现,把理论课与实验课所学内容做一综合,并在此基础上强化学生的实践意识、提高其实际动手能力和创新能力。 当今时代是飞速发展的信息时代,在各行各业中离不开信息处理,这正使得计算机被广泛的应用于信息管理系统。计算机的最大好处在于利用它能够进行信息管理和查询。使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。计算机进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。制作电子杂志网站可以方便读者阅读,且可以扩大读者的视野以及提高阅历。 二、设计解决方案 问题解决方案: 经过分析,我们决定利用ASP编程,使用Dreamweaver MX作前端开发工具,利用SQLServer2000作后台数据库管理,数据库驱动使用ADO。 前台功能模块:系统主界面与登录程序设计,杂志查询及订阅,读者服务模块,杂志分类设计等。 后台功能模块:管理主界面与登录程序设计,最新杂志信息管理模块,杂志订阅管理模块,在留言管理模块设计等。后台管理的建立,使管理员可以通过后台很容易的对杂志城进行管理,比如:对最畅销杂志,公告和杂志城注册用户进行添加,删除等管理工作,还可以对读者在线留言的处理。 三、电子杂志网需求分析 3.1 需求分析 需求分析是整个设计过程的基础,最困难、最消耗时间的一步。它的最终结果是提供

实验室排课系统的设计与实现教学内容

实验室排课系统的设 计与实现

实验室排课系统的设计与实现 作者计家瑞 指导教师赵会洋 [摘要] 为提高实验室的资源利用率,减轻管理人员的劳动强度,方便学生、实验室管理人员与教师之间的交互和沟通,系统提出了用计算机代替手工排课的方法,设计了一个利用计算机实现实验室排课的系统。通过对手工排课过程的调研与分析,设计出了实验室排课系统的功能结构,在此基础上,给出并利用回溯算法实现了实验室排课及课表的导出与打印等功能。实验结果表明,该方法具有很高的可行性和有效性。 [关键词] 导出与打印;自动排课;回溯算法 1.引言 自动排课是在传统人工排课经验的基础之上,利用计算机模拟人脑来选择合适的方案进行排课。许昌学院计算机科学与技术学院计算机机房承担着计算机科学与技术学院、软件学院的教学实验任务,由于近两年来学院的办学规模不断扩大,实验室的建设也在逐步发展。高质量的教学需要高效率的管理支持,随着开放式实验教学管理模式的改革和学院办公信息化项目的推广,传统的实验室人工管理模式已经不能满足我们工作学习的需求,无法有效合理的提高实验室资源的利用率。实验室自动排课系统的实施,不仅可以提高计算机机房的管理水平、教学质量,而且可以使实验室达到高效、有序、网络化的管理。 2.系统需求分析 排课是高等院校教学管理中一项重要而复杂的工作,自动排课算法是一个NP完全问题,集成了时间、空间的双重约束,从数学上来讲,排课问题是一个在时间、教师、学生和教室四维空间,以教学计划和各种特殊要求(如指定时间、指定教室、排课等级)为制约条件的组合规划问题,其实质是解决各个因素之间的冲突。 2.1 系统的功能分析 本系统的最终用户是学生、教师和管理员,处理要求如下所示。 (1)先排有指定要求的课程,指定要求包括指定教室和指定时间、只指定时间没有指定教室、只指定教室没有指定时间,最后对既没有指定时间又没有指定教室的课程进行安排。 (2)周五下午不能排课,排课时间为周一至周五,每天上午、下午各两节课,共十八个上课时间段。 (3)满足周课时要求。 (4)可根据使用用户的不同,将课表分为班级课表、教室课表、教师课表和总课表。 (5)管理员可以设置用户权限、用户初始密码及添加、删除用户。 (6)可分别将基本信息和课表信息导出到Word或者Excel。 (7)可打印基本信息、教学计划和课表信息。 (8)设置一个简易留言板,用户可以进行留言,管理员可以对留言板进行管理。

软件项目管理课程设计指导书

软件项目管理课程设计 指导书 文件管理序列号:[K8UY-K9IO69-O6M243-OL889-F88688]

《软件项目管理》课程设计 指导书 一.课程设计报告要求 1、工作衔接 本次《软件项目管理》课程设计所选项目必须与前期所作的《软件工程》课程设计所选的项目相同,也就是在《软件工程》课程设计的基础上进行本次课程设计。不能重新另选项目背景。 2、课程设计报告封面要求 报告封面应包含课程设计题目,作者专业、班级、姓名、学号,指导教师和设计完成日期。 3、课程设计包含的内容 (1)项目概述 (2)工作任务书(业务需求) 1)项目目标 2)功能要求 3)性能要求 (3)项目进度计划 1)分解项目工作 2)项目工作关系表 3)绘制甘特图 4)绘制网络图 5)里程碑计划

(4)项目规模成本估算 1)分解项目工作 2)项目规模估算表 3)开发成本 4)管理、质量成本 5)直接成本 6)间接成本 7)总估算成本 (5)项目质量计划 1)项目质量保证组织 2)项目的质量目标 3)质量保证活动 4)质量控制活动 (6)项目团队计划 1)项目团队组成 2)项目团队管理 3) 项目沟通计划 (7)项目配置管理计划 1)组织及职责 2)配置管理环境 3)配置管理活动 (8)需求分析阶段的项目管理1)团队组织及职责

2)团队管理 3)进度管理 4)质量管理 5)需求管理 (9)设计分析阶段的项目管理 1)团队组织及职责 2)团队管理 3)进度管理 4)质量管理 (10)编码阶段的项目管理 1)团队组织及职责 2)团队管理 3)进度管理 4)质量管理 5)成本管理 (11)测试阶段的项目管理 1)团队组织及职责 2)团队管理 3)进度管理 4)质量管理 二、课程设计范例 1、项目概述

相关主题
文本预览
相关文档 最新文档