Bill Gates念初中的时候就会了。

解决方案 »

  1.   

    高校通用排课管理信息系统的设计与实现
    摘 要 在分析以往一些排课软件的基础上,提出一个通用的排课管理信息系统的设计方法,并对一些具体的技术问题作出相应安排。
    引 言排课管理的主要任务是把各系或各授课部门的课程申请进行汇总,然后根据教学计划或教学环节制订全校各班级的课表。由于高校班级数、课程门数较多,每门课又涉及很多信息,如果用手工进行排课,不可避免地出现教室资源冲突或教师资源冲突的情况。为了使课表的编排更准确、合理、快速,高校教务部门已用计算机来进行排课管理,并先后开发出一些适用的排课软件系统。我们发现这些软件有以下不足:1)每个学期的课程、教师、教室信息相对固定,但却不能被重用;2)不能保存每个学期的历史数据,不便教师对以前课表进行查询;3)未提供用户的分级使用制度;4)自动排课速度较慢;5)形成的课表大小不固定,增加打印难度。为了解决这些问题,充分利用学校的教室资源,我校教务处决定自行开发排课管理系统软件(PKMIS),该系统现已研究成功并投入使用,为教务处的教学管理工作提供了极大方便。1 数据库结构本软件使用的数据库很多,每个数据库中都增加了两个属性“USESTATUS”和“DM”。“USESTATUS”用于描述该记录是否被其它数据库使用,如果被使用,属性值为逻辑真,在进行记录删除操作时被禁止。“DM”属性保存了汉字信息的代码,减少了以后录入信息的工作量,以下介绍几个主要的数据库。班级库(CLASS.DBF)是描述班级信息(即班级号、班级名、代码、学生人数、专用教室)的文件,学生人数决定了排课时所使用的教室类型。教室数据库(ROOM.DBF)描述了教室的有关信息,即教室号、教室名、教室位置、容纳人数、教室功能等。教师数据库(TECH.DBF)描述了教师号、教师名、代码、职称、年龄、工作时间、使用状态等信息,其中教师号由教研室号(4位)与序号(2位)共同构成。课程数据库(KCK.DBF)信息由课程号、课程名、代码、简称、学时数、学分、后续学时、使用状态等属性构成。课程申请库(PKDB.DBF)结构由申请号、班级号、课程号、教题号、总学时、实验学时、周学时、起始周次、指定教室、使用状态等属性构成,此数据库是最重要的排课管理数据库,是生成排课数据库的依据。其它数据库限于篇幅,这里不作介绍。2 系统功能与模块结构1.初始化管理:此功能在开始排下一学期课时,可以载入上次排课的一些信息(如教师信息、教室信息、班级信息等),节省了重复输入的时间。2.辅助数据管理:此功能可以对教师、教室、课程等信息进行组合条件查询、模糊输入、删除、修改、打印等操作。3.排课管理:排课管理分为排课数据管理,根据班级、教师或教室进行手工排课,自动排课等功能。4.课表管理:此功能可以根据各种条件打印、查询或保存班级课表(总课表、系课表等)、教师课表(授课任务书)、教室安排表、某天课表、某节课表等。5.工作量管理:为了便于教务处期末结算教师总工作量及发放课时酬金,特增加此功能。工作量管理人员可输入计算公式,计算机根据公式自动生成工作量(教师工作量、系总工作量),并能打印、查询工作量情况。6.系统功能管理:此功能可对数据进行备份/恢复,对数据库进行索引维护、进行用户设置(设置用户对软件的使用权限,如查询权,排课权等)。系统总体构成见图1所示:图1 排课管理信息系统的系统构成3 通用系统设计的一些考虑1.系统的进入与注册系统在启动时要求用户输入用户名和口令,PKMIS允许用户输入三次,三次都不正确则确定为非法用户,强行退出系统。每个用户使用的功能与权限都受到相应限制。2.数据备份与恢复为了防止事故造成数据损失,必须经常对所使用的数据库文件进行备份操作,以便在出现数据损坏时能恢复到以前工作的状态。3.用户权限管理PKMIS可供排课管理员、教务长、系教务员、一般教师等使用,因此提供了用户分级管理功能,使不同的用户享有不同的权限。4.数据库的共享PKMIS可以在Novell网上供多个用户同时使用,因此PKMIS提供了对共享数据库的保护,当一个用户在修改一条记录时,则拒绝另一用户作同样的操作。5.上机记录管理为了对使用软件的用户进行责任跟踪,了解软件的使用情况,PKMIS提供的上机记录管理可以登记上机的用户名、使用的机器、起始时间、终止时间以及使用的功能。4 排课功能的一些问题排课管理功能是PKMIS设计难点,它不仅要考虑到教室冲突问题和教师冲突问题,还要考虑到分段课、单双周课时的资源利用问题。另外由于高校的教学特点,还要处理合班课、外语分级课、体育课、分组课与选修课等特殊课程。PKMIS针对这些问题,专门对数据库设计与程序编制作了一些探索,但由于本软件开发周期短,可能有些问题需要进一步研究和完善。PKMIS还设置了专家排课功能,它能够根据排课用户事先给出的排课策略进行自动排课,排课速度较快。为了实现专家排课功能,专门设置了两个堆栈S1和S2,S1的每个结点保存已排好课程及该课程的某次课,S2保存未排课程及该课程的某次课。具体排课算法如图2:
      
    图2 专家排课算法
     5 结束语PKMIS采用FOXPRO数据库管理系统编程,在1996年12月完成,并在我校的教务部门正常运行到现在。PKMIS使用简单、性能稳定、容错能力较强,生成的课表快速、准确、可靠,并能向教务部门提供各种有关课程、教师、教室等报表。与同类软件相比,PKMIS还有以下一些特点:1. 功能集成化,PKMIS的所有管理(增加、删除等)都集中于一个统一的界面。2. 使用简单化,PKMIS的各种操作简单、统一。3. 查询综合化,在窗口中显示了所有可查询的字段。只需在相应处输入查询值即可对指定字段进行组合查询。4. 输入智能化,PKMIS在排课申请管理时,可按代码、信息片段等进行录入,不需输入大量信息。也可在弹出窗口中直接选择相应信息到指定位置。