2011年第1期计算机与现代化JISUANJI YU XIANDAIHUA 第185期文章编号:1006~475(201 1)01-0063-03 基于PHP的高校教学管理系统设计张军伟(山西医科大学信息管理系,山西太原030001) 摘要:鉴于当前高校教学管理面临的问题以及使用计算机辅助教学管理的可行性和必要性,本文对高校教学管理系统进行功能分析、模块划分和系统设计,并选用PHP语言进行系统开发和实现,有效提高教学管理效率和质量。关键词:PHP;高校;教学管理系统中图分类号:TP315 文献标识码:A doi:10.3969/j.issn.1006—2475.2011.01.018 Design of College Education M anagement System Based on PHP ZHANG Jun.wei (Dept.of Information Management,Shanxi Medical University,Taiyuan 030001,China) Abstract:According tO the current problems of college education management and the feasibility and necessity of computer—aided education management,this paper first analyzes the functions of coHege education management system,secondly decomposes the system into some modules,then designs the system,and finally uses PHP language to develop and implement the system.The college education management system can improve the efficiency and quality of college education management.Key words:PHP;college;educmion management system 0 引言随着我国经济、社会的不断发展,接受高等教育国民的绝对数量和相对比例都在不断增高,我国的高等教育已经从“精英化”教育阶段迈人“大众化”教育阶段。当前,高等学校在校学生人数较之前十年有较大幅度增加,二级学院、系和专业设置也更加细化。尽管我国不断增加对高等教育的投入,但是投入增加的幅度远远小于学生增加的幅度,这就形成了有限的教学资源和师资力量与不断增加的学生之间的矛盾。如何有效利用有限的教学资源和师资力量合理地安排各专业学生的课程,是摆在教学管理人员面前的现实问题。当前,很多高校的课程安排工作依然处于人工阶段,效率低下。如果由高校教学管理部门来排课,可以从全局出发,对全校教学任务进行统筹规划,合理安排教学资源和师资力量,但涉及范围广,工作量大,协调起来难度较大;如果将排课工作下放到各院系,又缺乏全局观,不能有效协调,容易冲突,例如同一时间、同一教师安排了不同的课程,或者同一时间、同一教室安排了不同的课程。这样的冲突不容易被发现,等到发现后再进行调整,可能会产生新的冲突,严重影响正常的教学秩序。随着计算机技术的不断发展与计算机功能的日益丰富,使计算机融人到国民经济的各个领域。教学管理部门可以利用计算机,对教学时间、教学地点以及其它教学资源进行合理配置,提高管理水平和管理效率,做好教学服务,为提高教学效率和教学质量奠定基础,从而提高学校整体的管理水平。使用教学管理系统排课,是以教学管理系统为中心,各院系为局部,做到全局和局部的统一,各院系使用同一个系统来进行统筹协调,例如某一时间,某教师或教室已安排课程,别的院系就不能再为此教师或教室安排课程,避免冲突的产生。此外,教学管理系统可以为用户提供课程安排信息的多种检索方式,形成班级课程表、教师课程表、教室课程表等,为不同类型的用户提供方便。总的来说,设计高校教学管理系统是可行的,也是必要的。1 系统模块设计教学管理系统的主要目标是实现教学资源和师收稿日期:2010一l1.18 基金项目:tlf西省教育科学“十一五”规划2009年度课题(Qz-09012) 作者简介:张军伟(1981一),男,山西忻州人,LIJ西医科大学信息管理系助教,硕士,研究方向:医学信息系统设计与开发。64 计算机与现代化201 1年第1期资力量合理配置,消除排课冲突,课程表设置是该系统的核心,涉及到班级、教师、教室、时间、课程等内容。从实际情况出发,课程表通常对应于班级,即一个班级的所有学生使用相同的课程表,不同的班级使用不同的课程表,冈此应以班级为单位在教学日历中添加课程安排信息。一条完整的课程安排信息应包含学生班级、授课教师、授课地点、授课时问、课程名称,其中学生班级隐含了学生的专业和年级信息。为了使用方便,添加到数据库中的课程安排信息按照学期来进行组织,将一个学期内的所有课程安排信息都存放到一个数据库基本表中。使用不同的检索条件对存放课程安排信息的数据库基本表进行检索,可以形成不同类型的课程表。接班级检索,即可得到该班级某学期的课程表;按教师检索,即可得到该教师某学期的课程表;按教室检索,即可得到该教室某学期的课程表。通过对系统应用目标进行分析,教学管理系统应该包括院系管理、课程管理、教室管理、学期管理、专业管理、教研室管理、教师管理、专业课程管理、专业教室管理、假日管理、年级班级管理等模块,每一个模块都能实现模块信息添加、修改、删除等操作。教学管理系统模块设计如图l所示。教研室管理王教师管理院系管J里课程管理专I I.弼l 教室管理专业教室管理孝期管理节假B 管理课程表没置班级课程表I l教师课程表表I l教室课程衷1 教学管理系统模块设计图在院系管理模块中,主要实现高校内院系的管理,院系信息主要包括院系名称、院系简介等,在院系模块下面设置教研室模块和专业模块,即~个院系包括若干个教研室和专业。在教研室管理模块中,主要实现院系内教研室的管理,教研室信息包括教研室名称、承担课程、教师总数等信息,它是院系管理模块的下级模块,同时也是教师管理模块的上级模块,设置此模块的目的是使教师信息归属化,避免设置课程表时从大量敦师信息中查找授课教师,同时也可避免混淆同名教师。在教师管理模块中,主要实现教师信息的管理,教师信息包括教师姓名、性别、年龄、民族、学历、职称等,设课程表时可以沿院系——教研室——教师路径快速选择教师。在专业管理模块中,主要实现院系内专业的管理,专业信息包括专业名称、专业简介、专业学制、培养方案、授予学位等,在专业管理模块还设有年级管理模块,年级管理模块下设有班级管理模块,即同一譬业下有若于年级,同一年级有若干班级,同一年级不同班级在?学期内学习相同专业课程。在课程管理模块中,主要实现对全校所有课程的统一管理。不同专业可能会学习相同的课程,但开课时问、学时、课程性质、课程类型等信息会有所不同,在此模块中仅涉及课程名,至于其它课程信息应该与专业相结合,因此另外设置专业课程管理模块,设置此模块的目的在于可以形成全局课程列表,方便专业课程设置。在专业课程管理模块中,主要实现对某一专业所有课程的管理,专业课程信息包括课程名称、开课单位、课程类型、课程性质、教学大纲、开课学期、学时数等。此模块有两个父模块,即专业模块和课程模块。课程表设置时,使用此模块能迅速找出该专业所有课程,提高课程表设置速度。在教室管理模块中,主要实现全校教室的管理,教室信息包括教室名、教室位置、座位数、是否有多媒体设备等信息。一般来说,某一专业的上课教室较为固定,应缩小专业教室的范围,所以另外设置专业教室管理模块。设置教室管理模块的目的是形成全局教室列表,方便专业教室设置。在专业教室管理模块中,主要实现对某一专业所有可用教室的管理。课程表设置时,使用此模块能迅速找出该专业所有可用教室,提高课程表设置速度。在学期管理模块中,主要实现某学年某学期起止日期的设置,形成教学日历,以便将课程安排在确定的时间区间内,暑假和寒假期问不安排课程。在节假日管理模块中,主要实现某一学期时问区问内的节假日管理,对该学期内的教学工作日和节假日进行区分并锁定节假日,避免将课程安排到节假日。以上几个管理模块已经可以管理班级、教师、教室、时问、课程等信息,根据学期管理和假日管理设置教学日历,以班级为单位.对其它4种信息进行选择添加,形成课程安排信息并存人到数据库。以不同的检索条件对数据库进行检索,可以得到不同类型的课程表。20I 1年第l期张军伟:基于PHP的高饺教学管理系统设计65 2 技术选择考虑开发过程的便捷性,系统的通用性以及用户使用习惯等冈素,:悔高校教学管理系统没汁为Web 信息系统,选择PHP语言进行开发。Web信息系统使用网页界面,易于开发和部署,用户对网页界面也较为熟悉和适应。PHP(Hypertext Preprocessor)是一种在计算机L运行的脚本语言,主要用途是处理动态网页,具有开源、免费及跨平台等特性。网页服务器通过运行PHP代码来产生用户浏览的网页。另外,考虑到各种信息的存储容量和存取速度,数据库管理系统使用MySQL。MySQL是一种小型关系数据库管理系统,多应用于小型网站的数据存储,它也具有开源、免费及跨平台等特性,可以和PHP完美配合。3 系统实现(1)本系统在实现过程中所采用的技术和软件都基于开放源码协议,避免软件版权问题,并且大大降低了开发成本,节省项目经费。(2)本系统用户界面友好,采用填表格的形式来实现课程表设置。与传统纸质课程表类似,在表格中行方向列出星期一到星期日,列方向列出第一到第八节课,表格中的空白处可以填入课程安排信息。在输入课程安排信息时,系统还会对用户给出提示信息,如该课程已安排多少课时,还剩多少课时需要安排。(3)一条完整的课程安排信息应包含学生班级、授课教师、授课地点、授课时问、课程名称等信息,而这些信息已经事先被系统组织好,用户在设置课程安排信息时只需要进行选择操作即可,而且所选择条目也做到最小化,减轻用户记忆和操作负担。(4)为了防止产生课程表冲突,系统使用njax技术对输入的课程安排信息进行检查。对于不会产生冲突的课程安排信息,可以存入到数据库;对于会产生冲突的课程安排信息,则拒绝存人到数据库,并对用户进行提示,让用户对课程安排信息进行修改,直到不会产生冲突时才将其存人到数据库。这样,就可以从根本上防止各种冲突情况的发生。(5)本系统中采用tepdf扩展包对PHP进行功能扩展,可以动态生成PDF电子义档。因此本系统生成的课程表不仅可以在校园网上进行在线浏览和查看,还可以以PDF格式下载到本地计算机并打印成纸质版。(6)本系统可作为高校信息管理平台的一个子系统.在此系统设计和建设过程中,为系统扩展预留了足够空间,各模块所管理的信息并不仅仅适用于课程安排,还可为其它予系统提供信息支持,多个信息管理子系统可以共用数据库中的数据,如教学评价系统可用到院系、专业、教师等信息。4 结束语随着科技发展和时代进步,高校使用计算机进行教学管理,提高教学管理水平和效率,已成为必然趋势。本义从实际情况出发,分析系统应用需求,对计算机教学管理系统进行功能设计和模块划分,详细说明每?个模块的作用,提出教学管理系统可实施方案,最后使用PHP语言进行系统开发,实现系统功能。从该系统实际应用情况来看.确实解决了以前人工排课混乱、易产生冲突的弊端,提高了排课效率。参考文献:[I] 寇俊丽,张军伟.计算机辅助教学及其利弊分析[J].科技信息,2008(15):522—546.[2] 杨选辉.信息系统分析与设计[M].北京:清华大学出版社,2007.[3] 土珊,萨师煊.数据库系统慨论(第4版)[M].北京:高等教育出版社,2006.[4] 邹火思,孙鹏.PHP从入f】到精通[M].北京:清华大学出版社,2008.[5] Rasmus Lerdof,Kevin Tatm,Epeter Maclntyre.PHP程序设计(第2版)[M].胡丹,徐景译.北京:电子工业出版礼。2009.[6] 王志刚.PHP5应用实例详解:使用Zend Framework& Sma~y构筑真正的MVC模式应用[M].北京:电子工业出版社,2010.[7] 蒲戈光.基于PHP和hjax的实验室管理系统的设计与实现[D].上海:华东师范大学,2009.[8] 何炳荣.基于PHP的高等数学在线测试软件[J].计算机与现代化,2010(8):89-91.[9] 尹博.基于PHP技术的网络协同办公系统的设计与实现[D].山东:山东大学,2009.[1O]李雪玲,管群.基于PHP技术的在线考试系统设计与实现[J].计算机与现代化,2009(2):118—121.[11]杨贵,杨兴.21天学通JavaScfipt[M].北京:电工业出版社.2009.[12] 叶青.完全手册:HTML+CSS+JavaScript实用详解[M].北京:电子工业出版社,2008.[13]祝红涛,刘海松,郝军肩.Aj“从入门到精通[M].北京:电子工业出版社,2008.[14]张银鹤,肖新峰,崔程.PHP+Ajax网站开发典型实例[M].:IE京:电子工业出版社,2009.[15]Phil Ballard.ax、JavaScript和PHP编程导学[M].刘红伟译.北京:机械工业出版社,2009.