大规模开放课程(MOOCs)对我国大学程序设计语言课程设计的启示研究——以范德堡大学POSA MOOC为例

2015-03-28 20:57

王 直 军

(福建师范大学 教育学院,福建 福州 350007)

大规模开放课程(MOOCs)对我国大学程序设计语言课程设计的启示研究
——以范德堡大学POSA MOOC为例

王 直 军

(福建师范大学 教育学院,福建 福州 350007)

摘要:大规模开放在线课程是基于网络班级环境下,旨在大规模全球性参与并且通过网络开放接入的课程。MOOC对全球性的教育如何传送以及建设产生了冲击的趋势。在2013年春,范德堡大学开设了第一门MOOC课程(即POSA—面向模式的软件架构),该课程为期10周,是范德堡大学过去十年里几门软件设计与编程课的整合。本文对范德堡大学POSA MOOC课程设计与制作进行了分析,并讨论了POSA MOOC给我们带来的经验与启示。

关键词:MOOCs;Coursera;面向模式;软件体系结构和框架;设计和编程

0引言

自1873年以来,范德堡大学一直是一个受人敬仰的高等教育学府,在过去的140年里,毕业生已经超过了10万名。然而,在短短的8个月,范德堡大学增加了一倍多由其教师所教的学生人数。这种激增源于“大规模开放网络课程”。范德堡大学在2013年3月开始通过Coursera提供范德堡大学MOOCs,即POSA MOOC。

当POSA MOOC于2013年3月4日推出后,有超过31 000的学生加入进来,这些学生来自全球许多国家。在十周的POSA MOOC课程中,这些学生观看在线视频讲座464 498次,尝试访问在线测试37 817次。学生共提交了13 220份用6种不同编程语言完成的作业,并对这些作业进行了45 649次独立的同伴成绩(peer-graded)评估。此外,学生和课程教师在论坛上的对话超过了7 000条,这提供了一个高度交互的虚拟学习社区。

MOOCs和范德堡大学传统面对面课堂之间的差异深刻影响着POSA MOOC材料的准备、呈现以及评估。

1POSA MOOC的结构和内容

1.1POSA MOOC概述

范德堡大学MOOC是在多核和无处不在的有线和无线连接的分布式核心处理器的出现下应运而生的。在过去的40年里处理器和网络尽管得以不断地改善,然而,研发高质量的并发网络软件仍然很困难,开发高质量可重用的并发网络软件则是难上加难。

了解如何创建和应用模式和框架可以极大地增强理解开发这类软件所需的原则、方法和技能。POSA MOOC描述了如何应用模式和框架来减轻多领域中并发网络软件的开发和部署时出现的许多意外和固有的复杂性,包括移动应用程序、web服务器、对象请求代理等。

1.2视频录像概述

在范德堡大学课程模式和框架课中,通过设置Coursera课程先决条件,教师在开发和教授POSA MOOC时可以提前告知学生所需的课程基础知识。

虽然MOOC整体关注的是面向模式软件架构的并发网络软件,但是课程设计人员添加了一些介绍性章节,包括并发性、网络、模式和框架,以及一个覆盖核心面向对象设计、编程和模式概念的可选部分。以下总结了这些部分覆盖的主题。

1.2.1初始节课程概述

该介绍性视频旨在激发学生可视化的动机以及让学生了解并发网络软件的挑战。当然,也总结了模式和框架如何帮助解决软件的关键挑战。

1.2.2第一节并发网络软件简介

该节包含3.5小时的视频,提供了操作系统和中介软件相关的背景信息,讨论了并发网络化软件系统的关键设计规模(如将原则划分成多个层和服务),以及审查常见UNIX和Windows操作系统编程机制和Android编程机制。由于该部分强调了概念,所以并没有太多的讨论模式、框架或代码。主要目标是概括学生需要理解主题的材料。

1.2.3第二节模式和框架的简介

该节中有6个小时的视频,深入到了POSA MOOC的重点——并发网络化软件的模式和框架,且主要关注的是设计而不是编程,有许多通过UML图传达的模式和框架的结构和行为元素。视频从模式和框架的概述开始,强调关键概念,如编纂设计经验,使系统复用,并结合相关模式的组织来定义一个过程,使其在特定领域有序解决软件开发问题。为此,课程设计人员给了几个常见的用Java和c++编写的并发和网络编程模式的例子(如代理和命令处理器)和框架(如Android等)。课程设计人员还讨论了模式和框架的利弊,包括何时使用它们和何时避免使用它们,以及如果它们在特定环境中不工作可选择的方案。

1.2.4第三节模式和框架在并发网络软件中的应用

该节包含6个小时的视频,覆盖了POSA MOOC最深的技术。它侧重于通过将模式和框架和分组模式应用到模式语言中来开发并发网络软件。为了使这部分的例子具体且相关,课程设计人员从高性能web服务器领域选择了一个案例研究,基于C++ 开发的使用多种模式和ACE框架组件的JAWS开源web服务器。

具体讨论的模式和框架涉及了广泛的并发网络软件功能,包括服务访问和配置、进程间通信、同步和异步事件处理、并发和同步。在这一节中大多数模式是基于《面向模式的软件架构卷》两本书中的模式语言,涵盖了并发和分布式对象的模式。除此之外,还介绍讨论了《设计模式:可重用面向对象软件的元素》(所谓的“四人组”的书)中的模式如何帮助简化了某些并发网络软件的设计和编程方面。

1.2.5第四节“四人组”模式的研究案例

该可选部分提供3.5小时的面向对象设计和模式的背景视频,但这些视频与并发网络软件没有直接相关,但对成为一个有效的面向对象程序开发人员是必需的。围绕一个案例研究,应用超过一半的“四人组”书中的23个模式展示了模式和面向对象的设计以及使用C++ 编程技术。这个案例研究使学生学习和评估替代软件开发方法的局限性(如算法分解)和通过例子的展示了解模式和面向对象如何有助于缓解这些限制。

2POSA MOOC的学生评估机制

在POSA MOOC课程中,基于不是所有的参与者都有相同的学习目标或可用时间的事实,课程设计人员创建了以下两个方法来评估学生的表现。

2.1一般轨迹

学生在这个层次上收到一份课程完成声明,即通过每周自动测验评估来认证对课程概念是否精通。这个主题是为了那些有时间或兴趣参与自动评估测验和期末考试的学生设计的,而不是为那些没有时间和兴趣完成同伴互评编程作业的学生的。

在MOOC开始时没有加入的学生能完成一般轨迹,只要他们在10周后POSA MOOC结束时完成所有自动评估测验和期末考试。一般轨迹的最终成绩是基于每周测验(期末成绩的90%)和期末考试(期末成绩的10%)。学生获得最高成绩的70%或更多就会收到一份课程完成声明。

2.2分级轨迹

学生在这个层次上获得一份分级的课程完成声明。除了完成自动评估每周测验和正常轨道下的期末考试,分级轨迹还需完成同伴互评短文和同伴互评编程任务。这个轨迹是为了那些愿意花时间来实现对课程内容的掌握并在结构化任务中进行应用的学生设计的。

履行分级轨迹的学生需要在截止日期前完成各种同伴互评作业。分级轨迹的最终成绩是基于每周测验(期末成绩的35%),同伴互评短文和同伴互评作业(期末成绩的55%)和期末考试(期末成绩的10%)。学生获得满分的70%以上就会收到一份课程完成声明。

3POSA MOOC的经验与启示

3.1需要大量的时间来准备MOOC建立前的内容

3.1.1录制高质量的视频课程

由于在拍摄的视频工作室里没有学生参与交互。因此,课程设计人员需要制定更紧凑的脚本和高度结构化的演讲材料。

POSA MOOC每个模块类似于书中的章节。每段教学视频约15—20分钟(Coursera建议保持学生注意的长度)。每五分钟左右,“嵌入式”多项选择题测验出现来检查学生到目前为止是否观看了视频以及是否了解了介绍的内容。

POSA MOOC课程设计人员花了整整两个月的时间拍摄制作了超过80个独立视频,持续20个小时。此外,课程设计人员还为POSA MOOC准备了1 200多个Powerpoint幻灯片。即使这样,POSA MOOC仅仅是对并发网络软件的模式和框架作了粗浅的介绍,更广泛和更深入的主题很难覆盖在一个MOOC中。

此外,在镜头前展示MOOC材料也比在课堂上演讲更加困难,因为没有学生提问,即使学生理解材料也无法通过视觉线索获取。因此教师必须掌握顺利展示幻灯片的艺术,甚至以一个速度,保持热情而坚定的目光盯着摄像头几个小时。最后,在后期制作过程中还要花费大量的时间对视频进行编辑。

3.1.2创建学生评估机制

除了开发视频所需的时间,课程设计人员还需要相当长的时间来制定嵌入式测试、每周测验、同伴互评短文和编程任务。在传统的课堂中,通过教师对学生反应的解释以及提供立即的反馈,开放式的问题可以锻炼学生用自由的方式来综合他们所学的知识。但让成千上万MOOC学习者进行个人反馈是不可行的,因此课程设计人员需要预先构建一个清晰有用的问题测验和同伴评估标准。在这个过程中,求助于其他领域专家可以节约创建MOOC的时间。

3.2MOOC建立后需要更多的时间去管理维护

相对于制作MOOC而言,管理维护MOOC课程论坛将会花费更多的时间和精力。在POSA MOOC中,课程维护人员在论坛上花费大量时间主要有以下几点原因:

3.2.1加速和扩大学习过程

论坛是学习过程的核心。这些论坛帮助课程从被动地观看“课程导向”视频转变为积极参与教师或课程维护人员和学生之间“学习型”的对话。根据论坛上问题的类型和产生的对话可以加深学生对课程材料的理解。

3.2.2消除常见的误解

为了消除常见误解而对论坛进行深入干涉是必不可少的,因为这些误解会随着时间开始积累。例如,许多学生认为模式只适用于面向对象编程语言,模式的唯一目的是为了弥补主流语言的缺陷,以及面向对象框架发生太多用于资源受限系统的时间或空间开销。

3.2.3构建良好的意愿

3.2.4奖励有建设性的学生参与

在缺少课程人员一直监督时,论坛帖子的语气和内容往往倾向于陷入挫折和个人偏好攻击。最活跃的参与者的帖子往往具有知识性和思想性,我们明确鼓励深入参与论坛,并奖励表现不错的学生当“社区助教”。

3.3评估学生表现时以设计为导向的MOOC比以事实为导向的MOOC更加困难

POSA MOOC学生想要有意义的方式来评估他们的成就,即,他们想将他们学到的东西付诸实践。但是课程维护人员无法对成千上万MOOC学生的解决方案进行评估。

在理想情况下,扩大POSA MOOC评估将会应用自动评估工具。然而,自动评估工具在以设计为导向的MOOCs(比如POSA)应用上,没有以事实导向的MOOC(如代数或初级微积分)成熟。问题主要源于自动评估软件设计缺乏有用的工具。

另外,同伴互评是弹性的,但由于学生的能力、动机和时间约束使得同伴评估存在问题。在POSA MOOC课程中,学生在评估成绩时有很大的自由度,一些学生评估时对一些学生宽松而其他学生却非常严格。

MOOCs自动评估和同伴互评的缺陷凸显了专家评估在培养批判性思维过程中的无价的角色。

3.4创新使MOOC更像是一个“真正的”课程

3.4.1虚拟办公时间

为了解决传统MOOCs师生之间的交互问题,POSA MOOC课程设计人员使用了两个社交媒体工具——讨论论坛和网路广播来参与学生连续互动的对话。

POSA MOOC课程人员使用谷歌聚会和YouTube频道举行每周一次的“虚拟办公时间”,学生通过即时消息可以问关于作业和课程视频的问题,并得到及时解答。谷歌聚会会自动记录办公时间,课程人员随后将记录上传到POSA Coursera网站上,这样学生就可以离线查看它们。

3.4.2众包的编程任务

对众包编程作业规范的应用尤为有效地扩大了课程范围,吸引了更多的学生。例如,POSA MOOC课程主要专注于C++ 和Java,但是同伴评估编程作业被众包到包括c#、Ruby、Python和Scala。而Coursera的同伴互评系统可以让学生使用不同编程语言完成作业,这使得学生可以调整课程以满足他们的需求和兴趣。

4结语

随着MOOC的兴起,传统大学教育的观念和方法都会随之改变,如何应对这一变化,提高学生的学习效果,培养基于深厚理论知识系统的实践能力,是教师面临的一项巨大挑战。本文通过对范德堡大学POSA MOOC课程设计与制作的分析以及分享POSA MOOC带来的经验与启示,希望能为我国高校的程序设计语言课程MOOC化提供一定的借鉴。

参考文献:

[1]Fisher, D.. Warming Up to MOOC’s[J].Chronicle of Higher Education,2012,(11).

[2]Meister, J.. How MOOCs Will Revolutionize Corporate Learning And Development[J].Forbes,2013,(8).

[3]王文礼.MOOC的发展及其对高等教育的影响[J].江苏高教,2013,(2).

[4]冯雪松,汪琼.北大首批MOOCs的实践与思考[J].中国大学教学,2013,(12).

责任编辑:富春凯

作者简介:王直军(1989—),男,安徽人,在读硕士研究生。研究方向:多媒体与信息技术。

收稿日期:2014-12-01

中图分类号:G40-057

文献标志码:A

文章编号:1674-6341(2015)01-0083-03

doi:10.3969/j.issn.1674-6341.2015.01.038