基于Big6的程序设计教学
2006-12-29周彩英聂世澄
中小学信息技术教育 2006年2期
在传统教学中,人们特别关注学会“是什么”与“为什么”的事实性和原理性知识。进入信息社会后,掌握“如何做”的技能性知识具有同样的意义与价值。然而,在程序设计教学中,教师们依然采用传授和灌输知识为主的教学模式,学生在学习过程中也习惯于过分依赖教师,不会自主学习。在人类已开始全面步人信息社会的21世纪,信息素养的培养已渐成世界各国教育界乃至社会各界关注的重大理论与实践课题。“Big6”技能是其中较有影响的一个。目前,国内对Big6的认识还仅限于介绍阶段,大家只是浅层次了解了“Big6信息问题解决模式”的6个主要技能领域。笔者在讲授程序设计的过程中,对Big6进行了研究,并针对不同的实际问题为施教的学生建立了指导性Big6方案。
一、Big6探究学习模式简介
Big6是美国迈克·艾森堡和鲍勃·伯克维茨两位学者首先提出的。它的全称是“Big6 Model oflnformatlon Problem—Solving(Big6信息问题解决模式)”,是一种用来培养学生信息获取能力和问题解决能力的主题探究模式。所谓Big6,是由6个步骤英文名称的各一个字母(如下列各项中黑体字母)组合而成的。
1.Be sure you understand the problem.Task Definition
确切地了解探究的问题——任务定义
2.Identify sources of information.In—formatton Seeking
确认信息资源——信息搜索策略
3.Gatiler relevant information.LocaLion & Acccss
获取相关信息——一定位和搜索
4.Select a solution.Use of lnformation
选择一个答案——运用信息
5.Integrate the ideas info a product.Synthesis
把观点整合到作品中——综合
6.eXamine the result.Evaluation
检查结果——评价
笔者认为,Big6属于“问题解决”式的研究学习,其流程可简要概括为“任务驱动→寻找搜索方法→收集信息→运用信息→表达信息一学习评价”。它充分体现了对学生信息素养的培养,与PISA(国际学生评价项目)关于阅读能力的指向一致。
二、利用Big6进行程序设计教学设计
在程序设计教学过程中存在着多条主线,如代码编写的主线、算法学习的主线、问题解决的主线、程序设计的主线等,不同主线反映了不同的思想。通常我们以“算法学习”为主线进行程序设计教学,这是因为算法是程序设计的核心,被比作程序设计的灵魂。以算法为主线进行程序设计教学,强调按照逻辑顺序进行程序设计的过程和步骤,因此,算法的学习和掌握,有利于培养学生的逻辑思维能力(当然,最终目的是解决实际问题)。
在教学实践过程中,笔者认为“以问题解决为主线”或“以程序设计为主线”的教学设计较之更为先进。“以问题解决为主线”是将程序设计从宽泛的意义上来理解。它把程序设计看作解决问题的一种方式,包括分析问题、确定算法、编程求解等基本过程。问题解决的实质就是要寻求一种解决问题的方法和思想,更准确地说,应该是最佳的方法和思想,这与算法的基本精神一致;“以程序设计为主线”,即关注程序设计的整个过程:首先,根据需要确定算法,然后用程序设计语言来实现算法思想。在教材的编写和实际教学上,我们需科学处理算法、程序设计与语言的选用的关系,避免学程序设计就是学语言的片面思想,以及单纯训练算法的做法。在强调算法灵魂的前提下,整体结构应以程序设计为中心,在突出算法的基础上对程序设计加以关注,既体现算法在程序设计中的重要作用,又明确算法只是程序设计其中的一步,其价值体现在服务于程序设计的整个过程中。
我们可以将三种基本方法有效结合起来,即用算法与程序设计来解决问题。流程为:从遇到的问题出发,分析问题→发现问题的本质,选择设计相应的算法→通过程序设计语言的使用来编制程序→最终使问题得以解决。
根据这一流程,我们完全可以在程序设计教学过程中利用Big6技能进行例化,引导学生从遇到的实际问题出发,分析问题,发现问题的本质,设计算法并通过程序设计语言最终解决问题。
在程序设计教学过程中,笔者在经历多个教学环节之后设计了Biz6方案,引导学生进行探究性学习。一个典型的Big6指导方案如下表。


在Biz6方案中,要求学生用算法解决的问题相对简单,它不是大型的软件开发工程,也不需要经历软件工程的所有步骤,但应当让学生在按照一定的流程解决问题的过程中,去体会和理解系统设计的思想,掌握系统设计的方法。
Bie6教学模式的设计思想基于“发现学习”的学习理论,它适用于学习不确定的内容,即那些没有既定答案,或有多种解决途径的问题。因此,Biz6有其特定的适用范围,需要结合课程教学的实际,灵活地运用、改造和创新。
通过尝试,笔者意识到,实践了Bis6的学生,不断地习惯于这种解决信息问题的方式,他们从没有像现在这样能清晰地知道解决问题的思路,在不断地反思自己解决问题的过程中受益颇深。看看学生做的Bis6实现方案就可略见一斑:吴盼、蒋中同学的“黑洞数的查找”、谢士强同学的“零件加工时的合理安排”、孙春雨同学的“磨光变换”、杜赞玲同学的“RSA密码问题”、王金鑫同学的“维吉尼亚式自制密码机”等等。而这些,在我们常规的程序设计教学过程中一般无法一一涉及到。采用了Biz6指导方案,大大激发了学生的学习兴趣,充分展现了学生的智慧,淋漓尽致地表现着各自的创造力。
(作者单位:江苏扬州大学信息工程学