APP下载

基于ITIL的开放型实验教学辅助系统的设计与实现

2012-11-20郑伟平薛冬涛杨镇雄郭纯燕

长江大学学报(自科版) 2012年31期
关键词:专职人员开放型实验室

郑伟平, 薛冬涛, 杨镇雄, 郭纯燕

(华南师范大学计算机学院,广东 广州 510631)

基于ITIL的开放型实验教学辅助系统的设计与实现

郑伟平, 薛冬涛, 杨镇雄, 郭纯燕

(华南师范大学计算机学院,广东 广州 510631)

针对开放实验室实验教学存在的难题,引入ITIL管理模型设计出一套标准化的开放实验教学管理流程,并使用轻量级JavaEE技术开发了开放型实验室教学辅助系统。实际应用表明,该系统能提高学生实验完成率,同时还能降低实验室的开放服务成本。

开放实验;ITIL;流程设计;辅助系统

高等学校实验室是培养学生实践能力和创新能力的重要场所。近年来,国内高等学校在不断探索、改革和实践的过程中,逐渐认识到建设开放型实验室的重要性。各高校在整合已有资源的基础上,投入了大量的人力物力建设开放型实验室,目前已取得了一定的成效。但是,开放型实验室建设也面临着一系列的问题。其中,开放型实验室对实验时空的突破给实验室管理、人员安排、教学辅导等带来了严峻的挑战,如值班人员安排、设备仪器管理、实验前期准备和实验辅导等,其中实验辅导问题直接影响到开放型实验室的开放效果。由于实验内容、实验时间的开放,学生在实验中无法得到相应专业教师的辅导,遇到问题或有疑问通常不能及时解决,导致实际实验效果不佳。因此,如何创新性地解决开放型实验室教学管理模式是当前的研究焦点,具有重要的理论和实际意义。下面,笔者将ITIL管理模型应用到开放型实验室的实验教学环节,设计出符合ITIL规范的实验教学辅导流程,以此为需求设计并实现了一套开放型实验室教学辅助系统,旨在促进开放型实验室教学管理的规范化。

1 系统核心管理流程

信息技术基础架构库(IT Infrastructure Library,ITIL)是英国政府中央计算机与电信管理中心(CCTA)于1980年开发的一套IT服务管理标准库[1]。

ITIL给出了IT管理的基本框架,其核心思想是IT管理流程化、标准化和服务化。ITIL的核心模块是服务管理,该模块包括了10个流程和1项管理职能,这些流程和职能可归结为2大流程组,即服务提供流程组和服务支持流程组[2]。其中,服务支持流程组归纳了与IT管理相关的一项管理职能及5个运营级流程,即事件管理、问题管理、配置管理、变更管理和发布管理。

2 基于ITIL的开放实验教学辅助流程设计

实验辅导是开放型实验室建设中的难点。由于实验教学往往以实验项目为中心,模式相对固定,可操作性强,因而将ITIL服务管理模式引入开放型实验室的实验教学环节,通过ITIL最佳实践对教学辅导的流程进行规范,改善开放实验教学的服务质量,同时降低实验室开放服务成本。

结合目前高等学校开放实验室的一般人员配置情况,定义了4种流程相关角色,即服务人员、专职人员、专家及学生。服务人员指实验室值班人员,通常为研究生或高年级本科生。专职人员指实验室负责人,一般为实验室主任或责任教授,负责实验室建设和管理协调工作。专家一般为任课教师,或相关研究方向的研究生。学生指开放实验服务对象。结合教学辅导的实际需求,将IT服务支持流程应用到实验教学场景,设计了开放实验教学的辅导流程,包括服务台、事件管理、问题管理、变更管理、配置管理以及发布管理。下面对部分核心流程进行介绍。

1)事件管理 事件管理流程如下:①实验中学生遇到问题无法完成实验或实验结果与期望有偏差,可通过服务台或直接与服务人员联系;②服务人员视情况决定是否将该情况记录为事件,并检索该系统的知识库、问题库,帮助学生解决问题。如果事件得到解决,则流程结束;否则,进入事件管理流程;③服务人员对事件具体信息进行记录,并提交给相应的专家解决;④专家收到事件处理任务后,对事件进行分析和诊断,结合自身专业知识给出解决该事件的应急措施,并在该系统中记录并提交。如果事件解决方案需要引发教学信息或设备信息的变更,专家便需要发起变更并进入变更流程;⑤专家提交应急措施后,服务台负责检查并通知相关的学生,并跟踪了解事件是否已得到解决。如果事件得不到解决,需将事件重新分配处理。笔者将影响实验正常开展的各种情况定义为事件。在实际使用中,事件的记录工作量大,较繁琐,需要相关服务人员、学生和教师的积极配合,结合实际情况有时可采用事后补充登记的办法。

2)问题管理 问题管理流程如下:①专职人员(或专家)对系统中记录的大量事件进行分析,发现导致和引发事件的深层根源,将其提取并抽象为问题,记录后交由相应的专家寻求解决方案。②专家收到处理任务后,进行分析、调查和诊断,得到问题的解决方案并在系统中添加提交该方案。③专职人员负责检验问题解决方案的有效性,如果有效,专职人员组织人员实施解决方案;否则,将问题重新分配处理;同时,结合问题的代表性和解决方案的价值,必要时提取和录入相关知识点、实验注意事项、研究拓展等信息到知识库中。实施时如果需要引发教学信息或设备信息的变更,则进入变更管理流程。

3)变更管理 变更管理流程如下:①专家(或专职人员)可从事件或问题发起变更请求,对变更信息进行有效的记录。②按照变更的标准流程对变更进行构建和测试。③在变更测试通过之后,对变更进行发布,进入发布管理流程。在发布成功并终止后,系统自动终止变更,变更终止后系统自动终止引发变更的问题或事件。④根据变更对实验教学信息和实验设备信息的影响,为实验教学信息和实验设备添加新的配置信息版本。

4)发布管理 发布管理流程如下:①专家(或专职人员)根据变更构建发布,并对发布信息进行有效记录。②专家(或专职人员)组织人员对变更进行发布。③专家(或专职人员)进行发布验收。④在发布验收成功后,终止发布,系统将自动终止变更。

3 系统设计与实现

1)系统框架与功能设计 通过对系统需求和相关技术的分析,采用JavaEE体系架构[3]来构建该开放实验教学辅助系统。该系统采用Struts2+Spring+Hibernate + Compass + Lucene 的框架体系,使系统的耦合性尽可能降到最低。系统采用MVC设计模式,将系统分为视图层、控制层(包括过滤层和控制层)和模型层(包括业务逻辑层、数据访问层和资源层)。其中Struts2用于控制层的请求转发和视图控制,Spring主要用于实现依赖注入和事务控制,而Hibernate、Compass和Lucene用于数据访问层,其中Hibernate用于与数据库的交互,Compass和Lucene[4]用于索引库的构建和访问。系统体系架构设计如图1所示。

该系统包括12个功能模块,如事件管理、问题管理、变更管理、配置管理等,具体介绍如下:

①用户管理功能。该模块提供用户注册、修改密码、启用/禁用等功能。该系统将用户共分为5类,即系统管理员、专职人员、专家、服务人员以及学生。

②角色管理功能。该模块为专职人员、专家、服务人员及学生4类用户提供了4种默认角色,同时也可以自定义角色。

③权限管理功能。该模块实现了基于角色的权限管理功能,可为用户分配角色权限。

④服务台功能。服务台是实验室管理人员的工作桌面,也是学生的帮助台。该模块提供任务列表、事件提醒、常用知识、服务跟踪及统计分析等功能。

⑤事件管理功能。该模块提供实验现场信息、失败/异常/疑问等实验相关情况、处理解决方案等的记录、修改、浏览等维护功能。此外,还提供事件分配、事件审核、事件升级、事件关闭、发起变更等功能。

图1 系统体系构架图

⑥问题管理功能。该模块提供问题记录、修改、删除、查询、浏览、提取知识,以及问题分派、问题验收、问题分析、解决方案维护、发起变更等功能。

⑦变更管理功能。该模块提供变更的新增、修改、删除、查询等功能;以及变更构建、测试、发布、终止等功能。

⑧发布管理功能。该模块提供发布的新增、修改、删除、查询等功能;以及发布执行、发布验收和发布终止等生命周期相关功能。同时还提供发布计划、发布公告等平台管理功能。

⑨配置管理功能。该系统配置信息包括传统的IT设备配置信息和实验项目配置信息。该模块提供配置添加、修改、删除、查找以及版本维护等功能。

⑩知识管理功能。该模块提供知识的新增、修改、删除、查找、归类、评价等功能。

图2 事件与实体之间的关系

2)数据库设计 事件是该系统的核心数据,与之密切关联的实体有配置项、关键字、应急措施、回退原因、问题、附件等。事件与上述实体之间的关系如图2所示。

3)系统实现 ①表现层实现。结合JavaBean技术对显示数据进行封装,使用Struts2标签等技术实现数据的获取与展示。系统通过Frameset、SiteMesh、CSS等技术实现前端页面展示:页面构架采用Frameset技术,由多个独立的页面组成;应用SiteMesh组件实现页面动态内容与静态装饰外观的分离,展示特定业务内容;采用CSS+Div技术实现页面排版,可达到美观、清晰的效果;使用subModal组件实现窗口弹出功能,使用简便且美观统一;使用Prototype(JavaScript包)实现表单数据校验,规范客户端的数据输入。

②控制层实现。采用MVC框架,在控制层以Struts2的控制器为核心,结合Servlet 2.3的Filter技术和SiteMesh框架,对用户请求进行过滤→转发→装饰。该系统实现了缓存控制、字符编码、用户登录、权限控制以及SiteMesh等过滤器:缓存控制过滤器控制发送给客户端的页面是否要在客户端的浏览器进行缓存;字符编码过滤器将请求中的字符编码统一转换为UTF-8编码;用户登录过滤器检查用户是否已登录,如果没有登录,则将用户导向登录页面;权限控制过滤器根据用户类别及其角色权限,判别其是否有权访问所请求的资源;SiteMesh过滤器通过配置文件定义装饰器页面和需要被装饰和不需要装饰的页面。

③业务层实现。以事件管理为例,系统中AccidentAction类用于处理事件管理中客户请求、视图资源的转发。系统使用Annotation来标注AccidentAction类,将其交由Spring框架进行管理,同时为AccidentAction类中所需要的业务逻辑接口配置依赖,让Spring自动为某个属性注入Bean实例。部分关键代码如下:

@Component(“accidentAction”)

@Scope(“prototype”)

public class AccidentAction extends BasicAction {

//业务模型

private Accident accident;

//业务逻辑处理接口

private AccidentService accidentService;

//配置依赖

@Resource

public void setAccidentService(AccidentService accidentService) {

this.accidentService = accidentService;

}

……

}

④数据访问层实现。以事件管理为例,在数据访问层中,通过AccidentDao接口向业务逻辑层提供相关数据访问方法。该层 AccidentDaoImpl类实现了AccidentDao接口,并提供数据访问操作的具体实现。AccidentDaoImpl类继承自BasicDaoSupport类,该类继承自HibernateDaoSupport类[5]并对一些数据访问操作进行封装,提供了更为方便的数据访问操作。

4 结 语

针对开放型实验室的教学管理问题,将ITIL服务支持流程应用到开放型实验教学环节,将教学辅导流程规范化,设计和实现了实验教学辅助系统。该系统在笔者所在单位试运行半年多,为计算机网络、网络工程、网络安全等课程实验提供支持服务,目前积累事件超过300个。实际应用表明,该系统有效提高了学生实验的完成率,可帮助任课教师改善教学质量;系统的事件实例、问题库和知识库也为服务人员提供了丰富的培训资料。

[1]皮之军,李建海,于敏,等.开放式实验教学模式的研究与探索[J].实验技术与管理, 2010,27(5): 27-29.

[2]Janvan B. Foundations of IT Service Management: based on ITIL[M]. Holland: Van Haren Publishing, 2005.

[3]朱亚晓. 基于ITIL的高校Eservice研究[D]. 上海:复旦大学, 2006.

[4]李刚. 轻量级JavaEE企业应用实战[M].北京:电子工业出版社, 2011.

[5]罗刚. 解密搜索引擎技术实战:Lucene & Java [M].北京:电子工业出版社, 2011.

[编辑] 李启栋

10.3969/j.issn.1673-1409(N).2012.11.040

TP391

A

16731409(2012)11N12304

猜你喜欢

专职人员开放型实验室
基于风险管理在质量专职人员培训中的应用
打好“侨”牌,稳中有为——打造江苏开放型经济的“重要窗口”
江苏巩固拓展高质量发展开放型经济的新态势
河南省某市医院感染管理专职人员压力来源调查
电竞实验室
电竞实验室
电竞实验室
电竞实验室
人事档案材料收集与鉴别工作中存在的问题及建议
内陆开放型经济区人力资源管理的重难点及其对策:以宁夏内陆开放型实验区为例