基于OBE的C语言程序教学改革
2017-04-26胡文生胡艳萍李国华
胡文生+胡艳萍+李国华
摘要:OBE教育模式起源于欧美教育,近年来我国很多高校开始尝试引进该教育理念开展工科生的培养。C语言程序设计是培养学生编程能力的基础课程,对学生学习后续编程课程非常重要。该文系统地阐述了OBE教育理念如何在C语言程序设计教学过程中的具体应用,围绕学生预期学习产出,分析通过学习该门课程学生最终应该具备的能力以及为具备这些能力所采用的教学手段和评价方法。
关键词:OBE;程序设计;教学改革;能力;学习产出
中图分类号:TP311.11 文献标识码:A 文章编号:1009-3044(2017)06-0154-03
Abstract: OBE education philosophy originated in Europe. In recent years, many of Chinese universities have begun trying to introduce OBE education philosophy to cultivate engineering students. C language programming is a basic course of cultivation programming ability of students. It is very important for students to learn further programming course. This paper systematically expounded OBE education philosophy how to apply in C language programming teaching process.
Key words:OBE;programming; teaching reform;ability; learning outcomes
1 概述
“C语言程序设计”是很多工科院校为培养大一、大二学生编程能力而开设的入门级课程,课程中涉及很多程序设计语法规则、强大的运算功能及丰富的数据结构。该门课程虽然是结构化程序设计语言,不是行业主流的编程语言(目前行业主流的编程语言是面向对象、面向方面的编程语言,如Java、C#等),但是学好该门课程能显著提高学生的编程能力、逻辑思维能力并为以后学习面向对象、面向方面的编程语言打下基础。因此,如何学好这门课程是工科院校长期探索的热点问题,然而该门课程的传统教学方法是以教科书的目录结构为蓝本提炼出知识结构体系,按照知识结构体系的知识点逐一讲授并辅以实验,教学过程中不可避免地会遇到大量基本概念的讲解,结果造成学生独立思考、独立动手的时间非常少。这种传统的教学模式属于重理论而轻实践、以教师为中心、以知识灌输为主的教学模式,该教学模式很难提高学生的编程能力和逻辑思维能力。OBE(Outcomes-Based Education,缩写为OBE)教育模式是以学生预期学习产出为中心来组织、实施、评价教学活动的结构模式 [1]。“以学生为本,以产出为导向”的OBE教育模式能够清楚地关注和组织整个教学过程中的每个教学活动,如何关注、如何组织?是OBE教育模式的关键,只有采用系统的观点,从OBE的设计模式、OBE的实施模式、OBE的评价模式三个方面,对“C语言程序设计”的教学过程重新定向、重新聚焦,即定向于学生的学习成果、聚焦于学生的学生能力的提高。OBE特别强调如下四个问题[2]:
l 学生要取得的学习成果是什么?
l 学生怎样取得这些学习成果?
l 教师在学生取得这些学习成果的过程中发挥的作用是什么?
l 如何评价学生已经取得这些学习成果?
2 学生的学习成果
OBE教育模式是以学生预期学习产出为中心来组织、实施、评价教学活动的结构模式,這里的“预期学习产出”就是学生的学习成果,它是开展OBE教育模式的基础,它是教学活动的目标,如果基础和目标不明确,那么随后的组织、实施、评价都会变样,实现不了预期的目标。学习《C语言程序设计》课程的学习成果就是学生学习完该门课程之后所具备的能力,能力要求必须定位准确,既不能好高骛远,也不能降低要求。一般工科院校都是在大一、大二开设《C语言程序设计》课程,对于计算机类相关专业学生来说,它是后续《数据结构》、《面向对象的程序设计》等课程的基础,因此需要培养学生初步的编程能力,对于非计算机类专业的学生来说,有可能只是要求学生稍微了解编程的过程及编程思想。但是无论是计算专业还是非计算专业的学生来说,开设这门课程一个共同和重要的目标就是培养学生的逻辑思维能力。另外,现在社会上也需要大学毕业生具备团队合作精神,因此这门课程还需要承担起培养学生的团队合作能力。因此,《C语言程序设计》课程开展OBE教育模式的学习成果必须满足如下三条:
l 具备初步的编程能力;
l 具备一定的逻辑思维能力;
l 具备一定的自学能力;
l 具备团队合作能力。
3 取得学习成果的途径及教师的作用
3.1混合教学模式
随着互联网和大数据技术在教育领域的广泛应用,出现了许多网络在线开放课程,即所谓的MOOC。该教学方式以灵活、开放的特点著称,国内国外很多著名的高校教授纷纷在MOOC平台上开设网络视频课程,国内比较有名的两个MOOC平台分别是:清华学堂在线和中国大学MOOC。这些优质课程的开放,不仅为偏远的学生提供学习方便,也为更多的非重点大学的学生提供优质的学习资源,为实现教育公平、公正提供了一种实现的渠道,中国大学MOOC平台上的哈尔滨工业大学苏小红教授的《C语言程序设计精髓》、浙江大学翁恺教授的《程序设计入门—C语言》等都是很好的MOOC资源。《C语言程序设计》开展视频教学可以分为如下几个步骤完成:
l 上课之前布置学生自学相应的网络视频课程,网络视频课程可以是现有的网络视频课程(中国大学MOOC平台上的哈尔滨工业大学苏小红教授的《C语言程序设计精髓》),也可以是授课教师自己录制的视频。
l 为每一节课程设置教学任务书,该任务书根据网络视频课程的教学内容并根据所教学生的实际情况进行设置。
l 课堂讨论:开展混合教学之前对全班学生进行分组,分组坚持适当原则,每组人数太少不利于团队协作能力的培养,而且学生的学习兴趣无法激发,如果每组人数过多,则不易于管理,所以每组人数最好是3到5人。通过采用随机点名、随机提问的方式考察每组线下学习情况,每组线下看网络视频课程以及做教学任务书的过程中可能会遇到各种各样的问题,把每一组遇到的问题公开在课堂上讨论帮助学生理解基本概念、掌握编程技巧。
3.2 案例教学
混合教学模式分为线上和线下学习,整个学习过程中学生是主体,教师只是起到辅助引导作用。任务书的设置、课堂问题讨论都是围绕学生的学习成果开展的。学生线上、线下学习的知识并不全面,而且每一组在学习过程中遇到的问题各不相同。为了实现培养学生初步的编程能力、逻辑思维能力的目标,教师应该根据学生掌握知识的情况有意识地设计一些案例,通过师生、生生之间的互动,引导学生积极参与,平等对话和研讨,重点培养学生的批判反思意识及团体合作能力,并促使学习者充分理解问题的复杂性、多样性、变化性等,在案例的选取方面要精,要有代表性和典型性,同时要考虑到学生的认知特点[3]。
3.3 教师的作用
针对传统“满堂灌”教学方法的局限性, 美国心理学家Carroll在1981年首先提出“以学生为中心”的认知教学法[4],该教学方法充分强调人类大脑的智能作用,主张学习应该以学生为中心,让学生在整个学习过程中发挥其积极性和主动性, 通过观察、分析、归纳发现事物的规律,通过动手操作掌握相应的知识。OBE教育模式是以学生预期学习成果而非教师的教学经验作为教学活动的驱动力,这显然同传统上以内容驱动教育模式是有显著区别的。《C语言程序设计》开展OBE教育模式的改革,必须紧紧围绕培养学生具备初步的编程能力、具备一定的逻辑思维能力、具备一定的自学能力、具备团队合作能力为中心来开展教学,而培养学生能力的最佳方法是“做中学”。根据杜威教育理论:“教育即生活”、“教育即生长”、“教育即经验的改造”,在整个教学活动中学生必须成为积极主动的参与者,而教师则是学生活动的协助者[5]。因此,《C语言程序设计》开展OBE教育模式的改革过程中教师应扮演如下三个角色:
l 教学任务书的设计者;
l 课堂讨论的引导者;
l 教学成果考核的主导者。
4 学习成果评价
OBE教育理念认为教学不应以知识为中心按照学科体系设计课程,而应以预期学生学习成果为中心,先明确学生需要学哪些内容、能具体做些什么事情、應该具备哪些能力,然后根据预期学习成果来设计课程和教学。与结果导向教育理念相对应的学习成果评估,主要是看一个学生经过学习后是否有进步,不是根据学生看过多少本书、掌握多少知识点,而在于考查学生是否具备预期学生学习成果,即经过学习之后是否具备相应的能力[6]。OBE教育模式包括能反映教育目标、目的和价值的学习成果内容,使学习成果能够达到的过程和战略(课程、教学、学习、评价、支持和引导方法等),与成果相连的学习评价标准三个要素[7][8]。《C语言程序设计》开展OBE教育模式的改革,其学习成果评价应摒弃传统的以试卷作为评价的唯一手段,而应该采用多种形式:
l 课堂讨论的积极性用来评估学生团队合作能力及自学能力;
l 项目实验作为评估学生编程能力和逻辑思维能力的有力手段;
l 任务书的完成情况作为评估学生自学能力很好载体。
5 结论
随着信息技术的迅猛发展,任何一项技术都有可能在短时间内被其他技术所颠覆,怎样使得学生通过对“C语言程序设计”的学习,长久地获得编程能力、自学能力、逻辑思维能力,学生一旦具备这些能力,会很容易地学习其他主流的编程技术。为了避免传统以传授知识为主要目的教学缺陷,本文重点阐释了OBE教育模式在“C语言程序设计”课程教学上的应用。OBE教育模式以学生预期学习成果为导向,为培养学生各种能力为最终目的,这种模式很适合目前知识更新迭代周期变短的趋势。
参考文献:
[1] 顾佩华,胡文龙,林鹏,等. 基于“学习产出”(OBE)的工程教育模式[J].高等工程教育研究,2014(1):27-37.
[2] 李志义,朱泓,刘志军, 等. 用成果导向教育理念引导高等工程教育教学改革[J].高等工程教育研究,2014(2):29-70.
[3] 肖明.案例教学法在“C++语言程序设计“教学中的应用[J].计算机教育,2010(6):83-86.
[4] 李怀宏. 以学生为中心与教师的作用[J].山东师范大学外国语学院学报,2003(1):70-73.
[5] 查建中. 论“做中学”战略下的CDIO模式[J]. 高等工程教育研究,2008(3):2-9.
[6] 陈凡. 加拿大高校学生学习成果评价:理念和实现路径[J]. 外国教育研究,2016(43):49-58.
[7] 姜波. OBE:以结果为基础的教育[J]. 外国教育研究,2003(3):35-37.
[8] Jackson N. Programme specification and its role in promoting an outcomes model of learning[J].Active Learning in Higher Education,2000,1(2):132- 151.