网站管理系统的设计与实现

时间:2022-03-25 03:31:56

网站管理系统的设计与实现

摘要:本文基于B/S框架,采用“PHP+MySQL”技术,融入工作过程和OBE理念,以《动态网站开发与设计》课程为例设计实现课程网站管理系统,该系统包括学生用户相关模块、教师用户相关模块和管理员相关模块。

关键词:课程网站管理系统;工作过程;OBE理念

1课程网站管理系统现状

随着“互联网+”的快速发展,教育信息化已成为教育界特别是教育技术学界专家学者研究的焦点,教育部也在不同场合强调“必须以教育信息化推动教育现代化”,这吸引了众多IT类科技公司在教育信息化研发的布局与投入,目前市面上出现的课程网站管理系统非常多,以下主要从课程网站管理系统的功能、用户体验、教育教学理念三个方面进行分析:从功能角度分析,大部分课程网站管理系统的功能都是常用的功能模块,如课件管理模块、视频管理模块、教学内容(富文本)管理模块、作业管理模块、在线答疑模块等;从用户体验上分析,当前的课程网站管理系统重功能化设计,轻用户体验,大部分的网站的呈现未能很好地融入课程的特点和特色;从教育教学理念上分析,小部分虽有融入“混合式”教学模式,但未能很好地融入教育教学理念,如行业工作过程教学理论、OBE(成果导向教育)理念等。在课程网站管理系统的研究上,通过在中国学术期刊网络出版总库(CNKI),以关键词“课程网站管理系统”进行文献检索,共搜索到的文献资料10篇;以相关的关键词“课程网站系统”进行文献检索,共搜索到的文献资料84篇;以“课程网站系统”、“工作过程”关键词组合在结果中进一步检索,获得的文献资料共27篇;以“课程网站系统”、“工作过程”、“OBE理念”几个关键词组合搜索,共收集相关文献0篇。基于上述的分析,融入了工作过程和OBE教育教学理念的课程网站管理系统的研究甚少,因此本文的研究具有一定的价值与意义。

2工作过程与课程网站功能、布局研究

《动态网站开发与设计》课程,重点在于培养学生的动态网站的设计、开发能力和工程思维能力,通过本门课程的学习,让学生熟悉动态网站开发的工作过程,因此,在设计该门课程的课程网站时,把动态网站开发的工作过程与学生学习过程、教师教学过程相融合,以达到三者之间的相互对接,最终提高学生的学习效果和教师的教学效果。通过对网站开发企业/公司的充分调研,形成了动态网站开发的工作过程:(1)业务员或业务经理取得网站建设项目;(2)相关人员与客户进行充分的沟通,确认网站项目需求;(3)网页设计师设计网站版面图;(4)客户确认版面后,网页设计师利用相关技术进行“切图”,并形成web页面;(5)网站程序员根据需求设计数据库;(6)网站程序员根据需求开发网站后台;(7)网站程序员对网站前、后台进行整合,形成整套网站;(8)网站测试人员对网站进行全面测试;(9)网站;(10)验收网站。根据动态网站开发的工作过程,结合《动态网站开发与设计》课程的实际,可以把教学过程分为分析网站需求、设计网站前台版面、网站前台版面“切图”、设计网站数据库、开发网站后台、整合网站前后台、测试网站、网站、验收网站等9个教学环节。基于工作过程与OBE理念的课程网站管理系统的设计与实现文/林龙健(惠州经济职业技术学院广东省惠州市516057)因此,课程网站管理系统应具有全面支撑教师开展工作过程导向教学,具有友好的界面且能够体现工作过程的版面布局。

3OBE教育教学理念与课程网站功能融合研究

OBE(即成果导向教育)是Outcomes-basedEducation的简称,是美国、英国、加拿大等国家教育改革的主流理念,它强调教学设计和教学实施的目标是学生通过教育过程最后取得的学习成果,通过成果的达成,全面培养学生的职业能力。因此,在设计基于OBE教育理念的课程时,必须弄清楚让学生取得怎样的学习成果、为什么要取得这些学习成果、如何有效地帮助学生取得这些学习成果以及如何评价学生取得的学习成果等4个问题。在教学过程的设计上,根据学习成果,采用反向设计原则来设计课程,并以学生为主体,分阶段采用多元和梯次的评价标准,评价达成学习成果的内涵和个人的学习进步。根据OBE教育理念,课程网站管理系统的功能,应具有描述顶峰成果(即最终成果)、阶段性学习成果及其与职业能力关系的功能栏目、支撑学生完成阶段性学习成果的学习资源(学习材料)管理模块、学习成果评价标准模块、学习记录管理模块等。

4课程网站管理系统分析

4.1系统用例分析。系统功能分析是实现课程网站管理系统的首要环节,也是课程网站管理系统运行的前提与基础。通常,在软件需求分析阶段,采用用例分析能够较好描述用户、系统和功能单元之间的关系,可以准确地获取用户的需求。课程网站的用例分析,包括学生用例、教师用例、系统管理员用例等。其中,学生用例包括查看课程网站相关信息(包括学习材料)、管理个人信息、管理作业信息、管理个人答疑信息等用例;教师用例包括管理课程动态、管理教学团队、管理课程动态、管理教学资源库、管理学习评价标准、管理学生作品、管理学生答疑、管理工作过程、查看学生学习记录等用例;系统管理员包括管理教师用户、管理学生用户、管理网站数据、管理系统配置等用例。4.2系统业务操作流程分析。系统业务操作流程分析,利用学生用户操作序列图、教师用户操作序列图以及系统管理员用户操作系列图进行分析。限于篇幅,这里仅阐述教师用户创建工作过程的流程和为工作过程添加相关内容的流程。(1)教师创建工作过程序列图分析。教师用户成功登录课程网站管理系统后,在系统的功能菜单上单击“管理工作过程”中的“添加工作过程”菜单项;系统显示添加工作过程页面,在该页面输入相关信息;最后单击“提交”按钮,完成添加工作过程操作。(2)教师为工作过程添加相关内容序列图分析。教师用户成功登录课程网站管理系统后,在系统的功能菜单上单击“工作过程管理”中的“添加工作过程内容”菜单项;系统显示添加工作过程内容页面,在页面输入相关内容;最后单击“提交”按钮,完成添加工作过程内容的操作。

5课程网站管理系统设计

5.1系统结构。课程网站管理系统采用B/S架构,以PHP语言作为主要的开发语言,结合jQuery库以及WEB前端框架进行设计开发,数据库采用MySQL。课程网站管理系统由表示层、业务逻辑层、数据服务层等三层技术架构体系组成,其中第一层是表示层(也称为浏览器层),主要用于呈现课程网站管理系统的界面,是系统用户与系统交互的窗口;第二层为业务逻辑层(也称为Web服务器层),该层主要负责对课程网站管理系统的业务逻辑进行处理;第三层为数据服务层(也称为后台服务器层),该层主要负责课程网站管理系统数据的存储与管理。课程网站管理系统的系统结构如图1所示。5.2系统主要功能模块。课程网站管理系统有学生、教师、系统管理员等3种用户类型,每种类型的用户登录系统后具有相应的功能操作。(1)登录验证模块。该模块主要用于验证课程网站管理系统用户的合法性,并根据验证的结果和用户类型跳转至不同的用户界面。为了增强课程网站管理系统的安全性,该模块在验证的过程中,须对用户输入的信息进行分析,过滤非法字符,做到能够防止SQL数据库注入攻击等,增强系统的安全性。(2)学生用户模块。学生用户登录课程网站管理系统后,具有修改个人信息、查看课程相关信息(包括学习材料),查看个人学习记录、查看及提交课程作业、提交学习疑问等功能模块。(3)教师用户模块。教师用户登录课程网站管理系统后,具有修改个人信息、管理学生信息、管理课程简介、管理课程动态、管理学生作品、管理网上答疑、管理教学资源库、管理工作过程(教学过程)、管理学生学习进度、管理学生作业等功能模块。工作过程模块是课程网站管理系统的重要模块,其受众对面主要为学生,也用于对接教学过程。因此,在设计该模块时,应充分结合动态网站开发的工作过程进行设计,在工作过程的每个环节,应用融入OBE理念,具有直观呈现或描述学习成果的内容元素,并能提供完成该成果的支撑——学习材料。通过分析,工作过程管理模块由添加工作过程、修改工作过程、册除工作过程和工作过程列表4部分组成,其中,工作过程列表又由添加学习材料、修改学习材料、删除学习材料等3个功能操作构成。在开发该模块时,工作过程的具体内容即学习材料主要从教学资源库中抽取,因此,每个工作过程主要包括了工作过程节点的任务描述、学习成果描述、学习材料以及学习成果评价等组成部分。该模块的功能结构图如图2所示。课程网站开发完成后,根据动态网站开发的工作过程,利用工作过程管理模块来设计教学过程,具体包括动态网站概述、需求分析、版面设计、版面“切图”、数据库设计、网站后台开发、网站前后台整合、网站测试、网站、网站验收等10教学环节。(4)系统管理员用户模块。该模块主要由系统参数配置模块、学生用户管理模块、教师用户管理模块、系统数据管理模块等功能模块组成。5.3系统数据库设计。本文所设计的课程网站管理系统采用MySQL数据库管理系统,在设计上按照“数据库概念设计->数据库逻辑设计->数据库物理设计”思路进行设计,最后在数据库服务器上实施。通过分析,课程网站管理系统的数据库表包括网站配置信息表、网站管理员信息表、学生信息表、教师信息表、课程基本信息表、课程动态信息表、教学资源表、教学资源类别表、答疑信息表、教学评价信息表、作品信息表、申报材料信息表、作业信息表、作业成绩信息表、工作过程信息表、工作过程内容信息表、学习成果评价标准信息表、数备份信息表等,以下仅以“工作过程内容信息”为例讲授数据库设计的过程。(1)数据库概念设计——工作过程内容的数据实体分析。该实体主要用于承载工作过程每个环节的信息,用于对接教学过程环节,通过分析,该实体包括任务描述、学习成果描述、学习材料(主要来源于教学资源库)、学习成果评价标准、排序、开关等属性构成,因此,该实体的属性图如图3所示。(2)数据库逻辑设计——工作过程内容的数据逻辑结构。根据工作过程内容实体分析结果,形成工作过程内容实体数据逻辑结构如下:工作过程内容(记录ID、任务描述、学习成果描述、课程资源ID、学习评价、排序ID、开关)。(3)数据库物理设计——工作过程内容的数据信息表。根据工作过程内容的数据逻辑结构,设计工作过程内容数据表如表1所示。(4)数据库实施——在MySQL数据库服务器上创建工作过程内容信息表。

6课程网站实现

6.1技术描述。本文所设计的课程网站管理系统,采用“PHP+MySQL+Apache”模式进行开发,其中PHP是目前主流的用于开发动态网站及服务器应用程序的通用开源脚本语言,具有良好的跨平台性、支持面向过程和面向对象编程方式等众多优点,应用广泛;MySQL是由两瑞典MySQLAB公司开发的一个开源的关系型数据库管理系统,是当前最流行的关系型数据库管理系统之一;ApacheHTTPServer是Apache软件基金会开发的一款开放源代码网页服务器,是当前最流行的Web服务器软件之一。在程序设计模式上采用MVC模式,实现了前端视图与程序逻辑相分离,提高了程序的可维护性、可移植性、可扩展性与可重用性,降低了程序的开发难度。6.2开发关键技术。6.2.1防SQL注入技术实现为了增强课程网站管理系统的安全性,需对用户提交的数据进行检查,把非法的字符过滤掉,因此,结合课程网站管理系统的逻辑,利用递归算法编写自定义函数inject_check(),通过该函数的应用以防止非法SQL注入,增强了系统的安全性。具体实现的程序如下:functioninject_check($sql_str){Returnpreg_match('/^select|insert|and|or|create|update|delete|alter|count|\'|\/\*|\*|\.\.\/|\.\/|union|into|load_file|outfile/i',$sql_str);//进行过滤}//递归ddslashesfunctiondaddslashes($string,$force=0,$strip=FALSE){if(!get_magic_quotes_gpc()||$force){if(is_array($string)){foreach($stringas$key=>$val){$string[$key]=daddslashes($val,$force);}}else{$string=addslashes($strip?stripslashes($string):$string);}}return$string;}//递归stripslashesfunctiondstripslashes($string){if(is_array($string)){foreach($stringas$key=>$val){$string[$key]=$this->dstripslashes($val);}}else{$string=stripslashes($string);}return$string;}6.2.2页面静态化的技术实现为了减轻课程网站管理系统服务器的负担,提升访问速度,解决因并发访问量大而导致网页打开速度下降的问题,在开发课程网站管理系统时,引入Smarty模板引擎来实现生成HTMl静态页面,Smarty是业界最著名的PHP模板引擎之一,它提供了一种易于管理和使用的方法,实现把前端页面和程序逻辑相分离。具体实现的过程如下:首先加载Smarty模板引擎;接着创建Smarty对象;修改Smarty默认行为,如开启缓存、模板的存放路径等;然后将程序中取得的数据通过Smarty对象的assign()方法赋值给模板中相应的变量;最后用Smarty对象的display()方法将模板内容输出。通过本方法,能够快速高效实现页面的静态化,对提高课程网站管理系统的性能具有重要意义。6.3课程网站管理系统的界面效果因篇幅有限,以下仅展示课程网站管理系统前台首页的主体部分,如图4所示。

7结束语

本文通过分析当前课程网站管理系统的现状,以“能学辅教”为目标,设计了一种融合工作过程和OBE教育教学理念的课程网站管理系统,通过系统的应用,使其更好实现教学过程对接行业工作过程,让学生“明明白白地学习,让学习成果看得见”,最终提高教学效率和教学效果。在系统的实现上,采用PHP动态网站技术、MySQL数据库技术等技术,按照软件工程的方法,从需求分析到系统设计再到编码实现等步骤,一步一步阐述课程网站管理系统实现的过程,同时引入防SQL注入技术、页面静态化技术等,增强了系统的安全性和系统的性能,系统开发完成后,通过上线测试,系统能够正常运行,达到了预期目标,后续笔者将对该系统继续研究,不断优化,以提升系统的灵活性和实用性。

作者:林龙健 单位:惠州经济职业技术学院