• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

基于J2EE架构的通用教学评价系统的设计与实现

发布: 2008-2-20 17:32 | 作者: 李杰 潘应睿 | 来源: 不详 | 查看: 98次 | 进入软件测试论坛讨论

领测软件测试网 摘 要 基于目前数字化校园系统中教学评价模块的功能单一、模型固定和重复开发等问题,作者给出了一个通用的教学评价系统,该系统的主要功能流程、系统的体系结构和实现技术,以及所用到的两种重要算法:AHP法和BP神经网络。该系统可作为一个模块直接嵌入不同的网络教学平台与数字化校园系统,具有通用性强、扩充性好等优势,能有效的排除模型定制中人为因素的干扰,具有较强的实用和推广价值。

    关键词 评价模型 struts框架 AHP法 BP神经网络

    1 引言

    随着Internet应用的普及,网络化教学日益成为一种重要的教学手段和教学场所,作为网络化教学系统的一个模块,教学评价系统承担着监督教学效果、使教学双方形成有效交互与反馈以及对教学过程的决策取向产生直接参考依据的重要任务。但是,目前我国还没有网络化教学评价的基本标准,教学形式和教学对象的多样性也导致难以制定一个统一的标准。

    为了解决上述问题,本文给出了一个通用的教学评价系统,该系统不仅解决了重复开发造成的资源浪费,对不同的基于J2EE架构的网络教学系统或者数字化校园平台,只须把该系统作为一个模块嵌入其中,就可轻松实现评价功能,而且针对各种不同的需求,提供评价表单、权值的定制功能,教学单位可根据自己的实际情况选择使用AHP法、BP神经网络法或常规法定制适合自己的评价模型。前两种方法,本系统提供评价模型的生成和检验机制,用以保证所定制的模型符合用户需求,以最大程度排除人为因素的干扰,是本系统的核心和关键技术。

    2 相关算法介绍

    2.1 AHP 法

    AHP是Analytic Hierarchy Process(层次分析法)的简称,它是一种定性和定量相结合的系统化、层次化的分析方法,适用于多目标、多准则的复杂评价问题。它能提供一种方法把定性的评价标准定量化,形成对每一评价指标的权值,由于它同时提供一致性检验从而可以保证所得权植的客观合理性。其主要步骤为:

    1) 建立层次结构模型

    2) 构造判断矩阵

    3) 层次单排序及其一致性检验

    4) 层次总排序及其一致性检验

    利用AHP法建模的关键在于判断矩阵的构造,这需要在建立层次结构之后进行两两标度比较,这项工作一般要由专家来做。

    2.2 BPNN 法

    即BP神经网络法,又称误差逆传播学习算法,分为三层:输入层、隐含层和输出层。在具体应用该网络时分为网络学习及网络工作两个阶段。网络的学习过程由正向和反向传播两部分组成。在正向传播过程中,每一层神经元的状态只影响到下一层神经元网络。如果输出层不能得到期望输出,就是实际输出与期望输出值之间有误差,那么转入反向传播过程中,将误差信号沿原来的连接通路返回,通过修改各层神经元的权值,逐次向输入层传播去进行计算,再经过正向传播过程,这两个过程的反复运用,使得误差信号最小。当误差达到人们所希望的要求时,网络的学习过程就结束。在网络的工作阶段,根据训练好的网络权值及给定的输入向量,按照“模式顺传播”方式求得与输入向量相对应的输出向量的解答。

    BP网是一种反向传递并能修正误差的多层映射网络。当参数适当时,此网络能够收敛到较小的均方差,是目前应用最广的网络之一。使用BP神经网络来进行权值的定制是基于它具有能任意精度近似线性非线性函数的特性,把样本与权值组的映射关系看作一个非线性函数,用BP网络去近似这个函数,只要样本是合理的,那么得出的权值也是合理的。

    根据R.Hech-Nielson的论证,一个三层BP神经网络可以实现任意精度、任意连续函数的映射,故我们仅取一个隐含层。输入层和输出层的节点数,按实际应用需要而定。隐含层节点数的确定,跟输入层和输出层的神经元个数有关,但具体的定量关系目前仍无定论。按照Charence N.W.Tan和Gerhard E.Wittig(1993)的说法,一般情况下输入层、单个隐含层和输出层的神经元个数基本相等或呈金字塔结构时,BP模型的运行效果较好。因为取节点太少,网络不“强壮”,难以达到目的;取节点太多,使学习时间过长,误差不一定最小。

    3 系统的体系结构

图1 系统总体结构图

    如图1为评价系统的总体结构图,从逻辑上可以把整个系统分成三个大的子系统,模型定制子系统、教务管理子系统和教学评价子系统,分别由模型管理员、教务管理员和评价用户来操控。每一用户登录时,首先查找自身的数据库,若数据库中没有该用户的身份认证信息,将访问平台系统数据库,从中取得用户的合法身份信息,并将有效用户存入评价系统自身的数据库,同时,根据用户的角色进入相应的功能页面。

    3.1 模型定制子系统中

    评价模型的定制分两步,第一步要从指标库中选取评价指标,对指标库的维护由模型管理员负责,评价指标分为两类,一类是定性描述指标,一类是定量指标,定量指标须从元数据集中选择指标所对应的元数据。元数据集是能够从网络教学系统提取的定量信息的数据集合,客观反映了学生和教师参与教学的情况。指标选择完毕,还要定制每一指标的权值,定制权值的方式有三种:自定义法、BP法和AHP法。

    自定义法可以对某一模型的指标直接输入权值,这一方法和目前大部分评价系统的实现功能相同,当评价模型已经确定或是有统一的评价标准时,可选择这种方式定制权值。

    AHP法需要对评价领域较熟悉的专家决定出反映各指标的相对重要性的判断矩阵,在定制过程中,系统提供了一个界面友好的定制模块,让用户可以比较方便的完成定制操作。如果输入的判断矩阵不满足一致性要求,那就意味着比较参数有自相矛盾的地方,系统将会报错并返回重新输入参数。AHP的这种验证机制能保证用户最大限度的精确量化在潜意识中指标的重要程度,从而定制出符合要求的评价模型。

    使用BP法在定制权值时需要评价样本的输入,评价样本提供了一个模板,它实际是由一些孤立的点来确定一条多维的权值曲线,权值曲线的合理与否与样本的合理性紧密相关。样本库由教务管理员员管理和维护,可以组织专家制定样本或是在AHP法运行一段时间后由教务人员从产生的评价实例中提取样本来组成样本库。BP法通过误差反传的方法来不断调整预设的权值,当误差小于某一预设的值时完成权值训练,否则继续调整下去。由此可见,BP法自身也具有检验机制,这样得出的权值能最大限度满足用户的需求。

    通过定制不同的评价模型,系统可以对教学的各个方面进行评价。模型管理员负责模型的管理维护工作,可以对模型进行编辑和删除操作,还可以通过提供样本对已经定制完成的某模型进行模型检验,以此来对模型的可用性进行评估。评估算法主要采用取所有样本的实际评价结果和理想值之间的均方误差,将该误差值与某一上限值做比较,并在该模型做上标记,并附上误差值,以供教务管理员选定评价模型时参考。

    3.2 教务管理子系统

    由教务管理员实施,主要完成评价模型的选择、打开或关闭模型以及样本库的管理以及其它管理功能。 评价模型定制完成之后,由教务管理员来控制系统的评价流程,教务管理员选择一个或多个评价模型使其生效并进入实际运行,参评者就可以对相应模型进行评价。教务管理员还可以将评价开关关闭,使评价暂停。此时若参评者访问评价页面,系统会告知评价功能由管理员关闭,暂停评价。关闭评价并不影响正常的浏览等其它操作的进行。

    在样本库管理中,可添加和删除样本,或者从以往的评价结果信息中提取出一些评价结果作为样本存入样本库,以备BP法定制权值和模型检验时使用。 教务管理员还可以浏览全部的评价信息,系统对评价结果采用横向比较、纵向比较、表、图等多样化显示,方便快速直观的对评价结果做出判断。

    3.3 教学评价子系统

    该子系统是系统的核心,主要完成对评价对象的评价功能。参评者登录之后,系统根据参评者的评价权限列出其可参评的有效评价项目,参评者可以从其中选择一个进行评价,评价时,每一项评价指标的评价得分都要输入相应的评价模型进行运算。其中,定性描述指标得分通过参评者提交得到,而定量指标得分则由评价系统从网络教学系统自动提取。

    所得到的评价得分存入参评者的评价记录,每隔一定时间,系统将从评价记录中读取这些信息,产生最终的评价结果。 评价可以重复进行,此时旧的评价信息将被替换,被评价者可以实时浏览评价结果,以达到对教学的实时反馈作用。

    4 实现技术

    4.1 基于struts 的框架结构

图2 系统的框架结构设计

    本系统采用基于struts的MVC编程设计思路,将用户显示界面、流程控制和业务逻辑进行分离。其框架结构图见图2,在客户端,用户提交需求,数据信息以request或FormBean两种方式提交到web服务器,在web服务器中,Struts Action完成主要的数据封装和流程转发工作,Action Servlet起着控制器的作用,控制逻辑利用Struts-config.xml文件来配置。在模型层,EJB则处理业务逻辑,定制模型所涉及到的算法都在EJB中完成,之后通过DAO访问数据库完成数据的存取。

    4.2 与教学平台系统的数据同步设计

    由于该评价系统定位于可嵌入不同的教学平台,对于各种教学平台,其数据库的结构设计也有着较大差别,因此,如何解决与不同平台系统数据库的数据同步,是解决通用性的关键。

    本系统采用在XML基础上发展起来的Web服务(Web Service)技术来实现系统间的功能控制和信息交互与共享。Web服务使用基于XML的消息处理作为基本的数据通讯方式,消除使用不同组件模型、操作系统和编程语言的系统之间存在的差异,使异类系统能够作为计算网络的一部分协同运行。开发人员可以使用像过去创建分布式应用程序时使用组件的方式,创建由各种来源的Web服务组合在一起的应用程序。由于Web服务是建立在一些通用协议的基础上,如HTTP、SOAP、XML、WSDL、UDDI等,这些协议在涉及到操作系统、对象模型和编程语言的选择时,没有任何倾向,因此Web服务将会有很强的生命力。两个应用程序通过Web服务进行远程通信时,所需的标准核心构件如图3所示:

图3 Web Service的核心构件块

    使用Web Servic方式进行数据共享,对使用本评价系统的教学平台而言,只须在原系统的基础上开发一个访问其数据库的模块,并将其部署到Apache SOAP上(可选择使用其他的服务器),访问数据的接口方法由本系统的数据访问规范确定,而由教学平台端实现。当评价系统需要访问平台系统的数据信息时,调用SOAP客户端代码,把请求发送至服务器,调用相应的服务接口方法,结果返回和参数传递都是通过RPC来完成。

    Web Service基于XML文档进行服务描述,服务请求和反馈结果,可以在Internet上通过HTTP协议进行传递,很容易的被访问和返回结果。同时,由于Web Service的相关标准都是W3C的开放协议,与平台和操作系统无关,不同的平台和操作系统上的Web Service的实现在很大程度上可以做到互操作,这就使异构平台上应用的集成变得很容易。

    4.3 评价的有效性解决方案

    除常规法外,另外两种定制权值方法即AHP法和BP神经网络法自身都具有有效性验证机制。对AHP法,用户在建立各指标的两两标度比较矩阵后,评价系统将对矩阵的一致性进行判断,若误差(一般采用均方误差)大于设定的某个最小值,将会报错,那就意味着输入参数不符合一致性规范,系统将提示用户重新定制,直到所定制的模型能真正反映用户的需求,这在一定程度上避免了定制的随意性。其次,BP法本身有一个逐渐收敛的学习过程,在评价样本具有足够可信度的情况下,评价权值将无限接近样本所反映的理想模型(需要有足够多的样本),收敛的时间正常是与样本的数量成正比,用户可在运行速度和精确性之间求得折衷。 本评价系统把评价成绩和访问量、登录次数、考试成绩这样一些硬性指标挂钩,对评价对象的评价角度从多个方面来考虑,教学单位在定制评价模型时可选择使用,从而给被评价对象一个尽可能公正的评价。

    5 结论

    本文大略介绍了系统的设计思路、体系结构以及所用到的主要的实现技术和算法依据。对于具体的细节,由于篇幅所限,没有涉及。从用户需求角度讲,该系统通用性、可维护性强,可避免相当大一部分重复开发工作,并且,由于引进两种算法使评价结果的有效性和合理性得到更大的保证,具有较大的实用和推广价值。

    参考文献:

    1) 卢宗华. AHP矩阵一致性判别和元素修正方法及其应用[J].山东科技大学学报第三期,2000-09

    2) 焦李成. 神经网络系统理论[M].西安:西安电子科技大学出版社, 1996

    3) Hecht-Nielsen R. Theory of the Back Propagation Neural Network [A]. In: Proc 1989 IEEE IJCNN [C], 1989.593-603

    4) Wei Qiang, Zhang Shijun, Zhang yongchuan. How to Determine the Structure of the Hidden Layer in Neural Networks[J]. International Journal Hydroelectric Energy, 1997

    5) 蒋继承,庄成三,吴志诚. 用SOAP和WSDL实现异质应用系统的无缝衔接[J].计算机应用,2004(2):146-150

    6) 刘钊,卢正鼎. 大数据量传输下SOAP的性能研究[J].华中科技大学学报(自然科学版),2004(3):65-67

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/

TAG: J2EE架构


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网