云系统设计论文:PAAS形式的 CSCL系统设计与落实
作者:吴彦文冯正西康婷单位:华中师范大学信息技术系
面向 PAAS模式的 CSCL系统设计
1CSCL实施流程
CSCL是指利用计算机技术尤其是多媒体和网络技术的辅助和支持,以增强学习者之间的交互和小组学
习,促进学习小组成员的知识共享与建构的一种协作学习方式。其具体的实施流程如下。(1)学习活动
的设计:教师根据教学需要确定学习目标,并将学习目标融入相关学习活动的设计中,通过活动情境激
发学生的学习热情和兴趣。(2)学习小组的划分:教师需要划分若干个学习小组,各小组由小组长和小
组成员组成,其中小组长将协助教师完成各小组的学习活动。(3)学习活动的执行:根据学习目标,小
组长组织小组成员讨论并明确各自的职责和任务。通过分工合作,共同完成小组学习任务。在学习活动
中,组内的协作沟通十分重要,教师可以参与小组讨论并在学生有困难时进行有效地指导。学习任务完
成后,各小组把学习成果上传到成果库中等待进一步的评审。在整个学习过程中,教学资源库提供辅助
学习的内容材料、课件、其他资源库链接和相应功能的软件等。(4)学习成果的评价:学习成果的评价
是检验学习是否达到目标的必要手段。我们可以采用教师评价、自我评价以及小组互评相结合的方法。
评价需要从多个方面进行考虑,尽量保证评价的公平和公正。
可见,在 CSCL系统中,学习者以群组为单位,在网络环境中协作、探讨和交流,共同完成学习目标,
从而使得协作学习能够最大化个人和他人的习得成果。CSCL系统中的交互性、协作性、共享性等特点
是系统实现的核心,它们是小组学习活动得以完成的有力支撑。
2面向 PAAS模式的 CSCL系统架构
基于以上对 CSCL系统实施流程的分析,我们构建了一种面向 PAAS模式的 CSCL系统。PAAS
(PlatformasaService,平台即服务)是一种基于云计算技术的服务,它在统一的应用程序模型的基础
上,将云平台能力进行封装,并提供基于云基础设施的开发和托管环境。该模式可有效地缩短系统的开
发时间、忽略底层硬件设计、节约成本等。本系统架构图如图 1所示,整个系统自上而下分为应用层、
平台层和基础设施层。应用层:本系统使用 SQLAzure来进行数据库管理,构建在 WindowsAzure云操作
系统之上。用户(学习者和老师)终端使用各自权限通过 WindowsAzure的访问接口对 CSCL系统进行访
问,实现 CSCL系统资源浏览、查询、数据处理和系统设置等功能。学习者通过浏览所在小组的任务并
与其他小组成员进行沟通协作,共同完成学习任务,最终提交小组学习成果(可以是作品或研究报告
等)。老师可以跟踪和干预各小组的学习进度,参与各小组的学习活动,评价各小组的学习进展和学习
成果。
平台层和基础设施层:本文利用 WindowsAzure云服务平台的开放式架构进行系统运行底层的构建,
WindowsAzure是一个互联网级的运行于微软数据中心系统上的云计算服务平台,它的数据中心能够提
供十分高效的数据同步、副本创建与更新策略以及相应的容错机制,即使在某个数据中心失效时,也能
够保证数据的完整性、准确性。该平台层通过虚拟化技术实现动态伸缩,使得应用的容量和能力根据访
问需求动态的改变。在应用部署和开始运行之后,云平台提供相应的管理工具和环境对应用程序进行运
行时的管理,比如应用性能的监控、配置的动态修改等。针对整个平台的管理工作,运维环境能够有效
地处理应用的上线、升级、卸载和应用的在线配置等,保证平台的健康运行和资源的高效使用。
3PAAS开发环境的部署
基于平台层的解决方案开发可以有两种形式:离线形式和在线形式。离线形式是用户在本地的开发工具
中进行解决方案的开发和测试,开发完成后远程部署到云平台上;在线形式是用户根据云平台的标准在
线开发和部署自己的应用。本文采用第一种形式,在本地开发完成系统后再部署到 WindowsAzure平台
上并连接 SQLAzure数据库,具体开发环境配置如下。
(1)操作系统的配置
Azure服务平台使开发者能够在原有的技能、工具和技术的基础上,进一步提高应用程序开发的灵活性
和有效性。因此在本研究的开发过程中,笔者选用 WindowsAzure云服务平台对本文的 PAAS架构进行支
撑。为了配置云本地开发模拟环境,需要先安装 ,然后再安装 WindowsAzureTools。
(2)数据库管理系统的配置
系统本地开发时选用 SQLServer2008。需要预安装.和 等组
件。MicrosoftSQLAzure提供了基于云的关系数据库服务(基于 SQLServer技术构建),这使将本地
SQLServer2008数据库移动到 SQLAzure变得相对容易,可以使用本地
SQLServerManagementStudio(SSMS)方便的连接和管理 SQLAzureDatabase。
(3)开发工具的配置
Microsoft在 VisualStudio2010和 VisualWebDeveloper2010Express中新增了直接生成 WindowsAzure
应用程序的支持。本研究选用了 MicrosoftVisualStudio2010作为开发工具。配置如下:启动
VisualStudio2010,单击“文件”菜单,选择“新建”|“项目”,打开“新建项目”对话框。在
“VisualC#”下,选择“云”节点。这将显示“启用 WindowsAzureTools”项目模板,单击该模板后,
将显示一个页面,其中包含用于安装 WindowsAzureToolsforVisualStudio的按钮。
(4)支持工具的配置
最后,安装 WindowsAzureSDK工具包,这个可使开发者依托 Azure平台应用.NET服务。此外 MSDN代码
库页包含许多代码示例,可帮助生成运行于 WindowsAzure上的可缩放 Web应用程序和服务。
系统的关键技术
1群组技术
群组技术是构建 CSCL系统的基础,它将有相同爱好或是有共同兴趣的个体以小组的形式组织起来,在
计算机支持的环境中交流思想、共享心得。CSCL系统中群组大多为异质群组,可以更好地发挥学生的
优势。异质群组的分组原则为,组内差异度最大,组间差异度最小。秉承这一原则,本文设计了基于
PAM的异质群组算法,该算法的具体步骤如下。
(1)建立用户信息模型
英国教育学家 Baker发现,学习者个体特质将严重影响协作学习的效果。协作学习的基础是分析学生的
个人特质,对此本文建立了学生信息模型,如表 1所示。该模型将学生的个体特质描述为{性格特质、
学习风格、学习能力、协作素质、基础成绩、学习兴趣}六个方面构成的向量,并以 1-10分为评价标
准。举个例子来说:向量 a1={483594}表示个体 a1性格内向、学习风格偏向于场独立型、学习能力较
低、能够与其他同伴进行沟通、有扎实的基础、对课程没有太大的兴趣;向量 a2={637745}表示个体 a2
性格外向、学习风格偏向于场依存型、学习能力较强、容易沟通、基础成绩一般、兴趣一般。
(2)PAM聚类描述
我们将上述采集的一组学生特性数据看成是一个向量,那么随机从集合空间内选择几个向量作为中心向
量,计算其它向量到中心向量的距离,将距离最短的归成一类;反复用非中心向量替换中心向量,以提
高聚类的质量。聚类质量用代价来衡量,该代价也是判断非中心替换中心是否恰当的标准。具体算法描
述如下:给定 n个数据对象,每个对象有 p个属性,将其划分为 k个簇。其具体步骤为:1)在 n个数据
对象中随机选择 k个向量作为中心向量,即代表该簇的一个对象,其它 n-k个向量为非中心向量。2)利
用公式 1的距离度量公式,计算剩下的 n-k个非中心向量到 k个中心向量的距离。其中,d(i,j)表示向
量 i到向量 j的距离,且 i用向量(,)i1i2ipaa…a描述,j用向量(,)j1j2jpaa…a描述。
(3)基于 PAM的异质群组
假设分组人数为 n,如果 n<=6,则为一组。否则,在上述的描述中我们选择聚类数 k=4,这样可以控制
群组的基本规模在 4-6个人。聚类完成后形成了 4个簇,每个簇中含有的人数为 num,其中最少的人数
为 min_num个。我们将从每个簇中选一个个体,可以分成 num_class个小组(第一次聚类后的
num_class=min_num)。最后我们在每个组中间选择一个成员为组长,该个体到该组其它成员的平均距
离最短。
2协同工作流技术
协同技术是 CSCL系统的核心技术,协同技术就是要利用现有的技术来高效地管理学习过程,合理地划
分学习任务,有效地组织学习活动,从而协调不同学习者协同一致的完成某一目标。对学习过程的处理
是协同的关键,而工作流技术正是处理学习过程的有效手段。协作学习工作流指的是教师、组长、组员
拥有不同的业务处理权限,将学习任务划分、分配和审核的一整套的流程。(1)构建协作学习工作流
本文利用工作流技术将学习任务划分为多个学习活动,使其在一定的约束条件下在学习者之间传递、执
行,最终实现学习目标。要实现协作学习流程,需要定义协作学习过程。本文以 WfMC定义的工作流过
程元模型为指导,定义了协作学习过程模型,如图 2所示。(2)协作学习流程分析本文以协作学习的
过程定义为基础,分析了 CSCL系统的协作流程。主要体现在业务流程、人机交互和信息处理三个方
面,其主要思想如图 3所示。主要的业务为:明确学习目标、分配学习活动、审核学习成果、活动结束
以及审核任务状态等。人机交互则表现为:提交学习成果、评价活动成果、评价任务等。信息处理主要
包括:状态信息处理、数据库信息处理以及下一步工作处理等。
3交互技术
交互技术是 CSCL系统中的主要支撑技术,是开展协作学习的有效保证。CSCL系统中的交互指学习者充
分发挥其主体作用,在原有的知识结构上,通过与网络资源、学生、教师等相互作用来积极主动地构建
知识的过程。在本文设计的 CSCL系统中,我们依据平等参与、观点互动的原则,采用虚拟圆桌交互活
动的组织策略。具体实施过程如下:群组成员围绕在圆桌周围,对每个成员进行 1-6编号;1号同学先
发表自己的主要观点或展示作品,其他同学按照编号针对 1号的观点或作品进行评论,形成结果;然
后,2号同学发表自己的观点,按照编号进行评论,直到所有同学都陈述完观点或展示了作品;以上步
骤完成后,每人根据大家的评论,修改完善自己的观点或作品,再按照以上方法重新组织发言和评论。
运用虚拟圆桌式交互组织策略能够让发言更加有规律,从而最大限度地调动各方面的积极意见以得到及
时的反馈消息。每个组员均有平等发言的机会,促使组员积极参与讨论,有利于培养组员之间的合作精
神。除了通过虚拟圆桌交互活动支持协作学习交流以外,本系统还设计了教师在线咨询和论坛等交流模
块以帮助学生解决学习问题、分享学习经验。
面向 PAAS模式的 CSCL系统的实现
1系统的“云部署”流程
(1)程序开发及部署到 WindowsAzure的流程
如下图 4所示。本地 Web网站构建完毕后,使用 VS2010提供的“Web角色”云模板将本地应用程序迁
移到云端。WindowsAzure角色是指在云中运行的可单独缩放的组建,云中的每个角色实例都分别对应
于一个虚拟机(VM)实例。有两种类型的角色:Web角色是运行于 IIS上的 Web应用程序。该角色可通
过 HTTP或 HTTPS终结点访问。工作线程角色是一个可运行任意.NET代码的后台处理应用程序。它能公
开面向 Internet的终结点和内部终结点。迁移完毕后,在 VS2010中生成可发布在云端运行的角色包。
最后通过 WindowsAzure开发者门户上传部署该“角色”包后得到唯一域名的 Web网站。
(2)将本地数据库迁移到 SQLAzure
将本地数据库移动到 SQLAzure,具体操作步骤如下:登录到 WindowsAzure管理门户,设置目标
SQLAzure数据库;生成 DDL脚本,根据 SQLAzure执行 DDL脚本;创建迁移帮助存储过程;禁用外键约
束,禁用非聚集索引;使用 bcp命令行工具从源 SQLServer2008数据库导出表数据,使用 bcp命令行工
具将表数据导入目标 SQLAzure数据库;重新生成非聚集索引,启用外键约束。
2系统的主要模块实现与测试
(1)信息获取模块的实现与测试
学生信息是构建 CSCL系统的基础。在 CSCL系统中,无论是实现群组算法,还是交流都离不开学生信
息。因此,本文设计了信息获取模块来采集学生信息,运行后界面如下图 5所示。信息获取模块包括注
册模块和登录模块,而注册模块包括基本信息调查和在线测试两部分。测试模块以群组技术中的学生个
性化建模表为基础,测试内容包括:性格特质、学习风格、学习能力、协作素质、基础成绩和学习兴趣
等。本系统采用卡特尔 16项个性因素测试(16PF)测试性格特质;采用所罗门测试表测试学习风格;依
据学生过往的学习行为,来判断他们的学习能力、协作素质和兴趣。登录模块用来判断用户的角色,同
时记录学习者的登录次数,为后期分析学习行为提供有效的参考数据。
(2)协作学习模块的实现与测试
协作模块是 CSCL系统中的核心模块。该模块需要为学生分组,分配任务,提供交互工具等。运行后界
面如下所示,图 6为学习者分组界面。我们可以将协作模块细分为群组模块、自主学习模块、交流模块
和评价模块。群组是协作的基本单位,群组模块利用基于 PAM的异质群组算法实现。在分组后,学生可
以看到该小组的风采,同组成员的基本信息、照片以及相关的联系方式等。交流是分享学习经验,解决
学习问题,提升学习能力的有效手段,如图 7所示。本文设计的交流模块包括邮件、教师在线咨询、讨
论室、论坛和布告板等。其中,讨论室提供的交流策略有:教师的在线引导、虚拟圆桌讨论、随机讨论
等。
(3)讨论室管理模块的实现与测试
在该管理模块中,教师可以同时监控多个讨论室的情况,根据讨论室的热度和小组成员的讨论情况进行
指导、干预和帮助。该系统为教师提供了一个同时监控各个讨论室状态的平台,运行后界面如图 8所
示。利用 hot或者 cool判断当前讨论是否激烈,通过调查成员是否有问题来进行宏观调控,同时通过
了解学生的问题进行个性化的干预。其它功能模块的实现与测试,鉴于篇幅原因,就不一一截图展示
了。
结束语
本文基于云服务的 PAAS模式搭建了一个 CSCL系统,旨在为学习者创建一个更好的协作学习环境。在此
模式下进行系统的开发,能够缩短开发周期,减少投入成本。该系统利用 SQLAzure数据库进行数据存
储,采用进行开发,最终把 Web网站部署到 WindowsAzure云平台。系统投入使用期间,受到学生一致
好评,协作学习取得了令人满意的成果。
与面向 SAAS模式的 CSCL系统相比,该系统提供了更加丰富的应用功能,以及更加便利、友好的交互环
境,因此能够更好地支持协作学习的开展。下一步,我们将研究如何将个性化推荐引入到 CSCL系统
中,使得协作学习可以进一步满足每个学生的个性化发展的需要。