建构主义下软件工程案例教学法研究

建构主义下软件工程案例教学法研究

摘要:

建构主义认为,学习是学生在原有知识经验的基础上对新信息进行主动构建的过程,教学要以学生为中心、设计教学环境、为学生自主建构知识的意义提供各种信息条件。针对软件工程课程的特点及其实践教学的不足,依据建构主义理论,提出软件工程课程的案例教学法。该方法从精选案例、案例分析、案例总结、案例教学效果评价四方面,给出软件工程课程案例教学的基本过程;同时,指出案例教学是在传统理论教学基础上实施的,以及案例教学过程中应该注意的问题;最后,给出案例教学效果的评价方法。教学实践表明,该方法有助于学生理解和掌握软件工程的基本原理和方法,提高软件分析与设计的能力。

关键词:

建构主义;软件工程;案例教学法

1引言

从学生学习和教师教学两方面来看,建构主义理论强调:知识是动态的,学生的经验世界具有差异性,学生学习具有情景性、互动性和主动建构性。学生学习不是被动地接收信息,不是由老师强迫性地灌输,而是学生根据自己已有的知识背景,主动地选择、加工和处理外部信息,获得新知识。学生学习知识是一个主动建构的过程,学生是学习的主体[1]。教师要根据学生建构知识的过程,设计理想的学习情景,帮助学生主动建构知识。教师在学生学习过程中起主导作用。案例教学法于1910年在美国哈佛商学院最早被使用,20世纪80年代初传入我国。案例教学法是在学生掌握一定理论知识的基础上,由教师精心选择案例,案例往往是真实的、典型的、具有代表性的[2]。通过案例情景教学,激发学生的学习兴趣,调动学生的主动性,让学生独立思考、集体协作地分析问题解决问题,得出可靠的结论,使学生在主动学习的过程中掌握课程的原理和方法,提高学生分析和解决问题的能力,激发学生的创造力,同时培养学生的沟通协作能力,对学生今后发展是十分有利的。软件工程是计算机相关专业十分重要的专业核心课程,其理论性和实践性非常强。单纯的理论教学往往会使学生感到枯燥乏味,失去学习的主动性。软件工程的理论来源于实践,是实践的理论化和升华[3],因此,只有将具体软件工程实践引入课程教学,才能使教学生动具体,才有利于学生理解和掌握相关知识。

2软件工程案例教学的必要性

目前,软件工程的课程教学大多采用理论教学为主实验教学为辅的教学手段,理论教学课时数所占比例较大,实验教学内容简单,教学中很少采用案例教学甚至没有案例教学,学生普遍感到理论知识难以弄懂,即使似乎能够听懂,也是似懂非懂,不能将所学知识应用到具体的软件开发项目中。显然,这种教学方法在一定程度上忽略了软件工程课程实践性强的特点,忽略了培养学生分析问题解决问题的能力,忽略了学生的主动性、参与性和创造性,忽略了学生是学习的主体,根据建构主义的知识观、学习观、教学观,这样的教学方法难以收到好的教学效果[4]。案例教学法是以学生为主体教师为主导的教学方法,通过对案例的分析,激发学生的求知欲,调动学生的主观能动性,使学生主动学习,掌握课程涉及的原理和方法,是理论联系实际的教学方法[5],是符合建构主义理论学习观、教学观的教学方法。因此,有必要在软件工程的课程中采用案例教学方法,通过来源于实践的真实软件工程案例,使学生在学习案例的过程中深刻理解掌握软件工程的基本原理和基本方法[6,7],并能够将所学知识灵活运用到今后的软件开发中,解决实际问题。

3精讲软件工程理论

建构主义理论强调学生是在自身已有的知识背景下构建新的知识,而软件工程课程内容在其前面已开的课程中几乎没有涉及,因此,教师在利用案例讲解前,必须给学生讲解一些基本概念和基本方法,让学生有一个概貌性的了解、感性的认识,以便在今后利用案例讲解时学生能够结合已有知识来理解案例,从而更深刻理解和掌握所学知识。所以,在实施软件工程案例教学之前,精讲软件工程理论是必要的。讲授理论知识时,教师是知识的呈现者,是知识的传授者,对软件工程课程涉及的内容要抓住重点、难点和关键点,精讲软件工程的基本原理和基本方法,尽可能使学生对软件工程的原理和方法有一个基本的认识,为下一步的案例教学做好准备。教师在传授知识时,可以充分利用多媒体课件,采用一些传统的教学方法,比如:讲授式、启发式、对比式、小结式等方法进行教学。

4软件工程案例教学法

建构主义的学习理论认为,学生学习的动力来自生存环境的压力;学习的过程是学生自己在头脑中,对知识的意义进行建构的过程;知识不是由教师传授的,而是学生自己在一定的“情景”中,借助他人的帮助,使用必要的工具和资料,通过“意义建构”的方法获得的。依据建构主义的学习理论,用案例建立“情景”,提出一个任务,让学生明白本课程的学习目标;再建立“协作”,让学生成为实现“情景”的主体,自己动手做,必要时,教师和同学之间互助与合作。然后,建立“会话”,综合所有课程的知识点,进行综合练习,提出学习过程中的问题,学生之间商讨、交流彼此的意见与学习成果,共同完成规定的学习任务;最后,学生实现“意义建构”,掌握所学知识。

4.1精选案例

案例是建立学习“情景”的关键,一个好的案例才能够引发学生思考和探索,才能有效地进行案例教学[8]。目前,软件工程中不乏成功案例,但对于具体的教学来说,还要注意由简到繁、粗细结合等教学规律,精选若干个符合学生水平、真实的小案例和1—2个综合案例。小案例侧重于重要知识点的讲解,综合案例则贯穿课程始终,使学生全面理解掌握实际软件开发中涉及的任务、方法、技术和工具。精选案例时需要注意几个方面:(1)目的性。软件工程课程的教学目标就是要使学生掌握软件开发过程及其规范,掌握软件开发、管理、维护的方法、技术及其工具。因此,在选取案例时,必须围绕这一目标,使得每个小案例都能很好地帮助学生理解软件工程涉及的各个重要知识点,综合案例则能帮助学生理解整个软件的开发过程,切实提高学生分析问题、解决问题的能力,从而提高学生软件开发、管理和维护的能力。(2)真实性。案例必须来源于现实中的真实软件项目,这样才能使学生真正感受到软件开发需要解决的问题,才能更好地理解软件开发、管理、维护的过程。(3)代表性。案例所涉及的软件规模大小、内容、方法、工具等都必须具有代表性,以便学生更好地理解软件工程,今后能够举一反三地解决实际问题。(4)启发性。案例本身蕴含的问题必须具有启发性,学生通过解决问题,能够获得启发,能够更好地理解掌握所学知识。(5)生动性。案例本身必须是生动具体的,这样才可能激发学生的学习兴趣和求知欲,进而积极地解决问题。另外,精选案例时,教师还要考虑案例涉及的关键信息、疑难问题、解决疑难问题的方法、各种可能的解决方案以及对解决方案的恰当评价等。

4.2案例分析

教师在精心准备好案例后,就要在课堂上进行案例的讨论分析了。在这一过程中,教师要充当一个与学生同样地位的人,不要认为自己就是权威,要把自己当成学生中的一员,与学生共同探讨。这样,也能营造一个自由轻松的氛围,让学生放松心情、积极思考、各抒己见。教师要认真倾听、适时肯定和鼓励,并及时做出相应的评价。当学生没有思路时,教师要进行必要的引导,使学生围绕案例涉及的问题逐个地讨论、分析、解决,实质上学生在不知不觉中就完成了“协作”“会话”和“意义建构”。总之,通过案例的分析讲解,教师要让学生真正体会到弄懂了软件工程的相关知识点,也知道如何将软件工程的原理和方法应用到具体的软件开发、管理和维护中去。软件问题答案往往不是唯一的。比如,数据流图、算法设计、软件结构设计、类图等等在软件开发中就可以有多种设计方案。因此,软件工程课程中的案例分析更注重分析过程,而不要过多地强调结果。事实上,在这样的案例分析过程中,学生更需要认真研究教材内容、相互讨论研究,才可能在发言中有理有据、逻辑清晰、头头是道。总之,只要学生在分析过程中,能够应用软件工程的原理和方法,有逻辑地分析问题和解决问题,这样的案例分析课就是成功的。

4.3案例总结

当一个案例讨论分析结束后,教师要及时总结。软件工程涉及的案例往往有不同的答案,教师要对各种答案进行有效的优缺点分析,在充分肯定学生独立思考的前提下,还要肯定学生分析的亮点和独到的见解,同时委婉地指出分析中的不足。在总结过程中,尤其要注意问题的本质,结合具体实际,给出恰如其分的评价;案例是用来说明原理和方法的,最终都要归结到总结案例所涉及的软件工程基本概念、基本原理和基本方法。只有这样,才能发挥案例分析的作用。在案例总结的基础上,进一步要求学生重新审视案例、总结归纳、消化提升,写出高质量的案例分析报告书。通过这一过程,不仅可以锻炼学生的书面表达能力和系统分析能力,而且可以使学生更系统更深刻地理解软件工程的基本原理和基本方法,为学生真正实现“意义建构”打下坚实的基础。

4.4案例教学效果评价

案例教学是否能够收到预期的效果,可以采用以下两种方法进行检查。(1)学生个人的自我评价。通过案例教学后,学生对所学知识的掌握情况可能会有一个比较清醒的认识,比如:对相关知识是弄懂了还是模糊不清,对解决问题的方法是有思路了还是不知从何处入手,对软件开发过程是有了清楚的认识还是不知所措等等。(2)有针对性的练习题。有时,案例教学后,学生还是不能准确评价自己。事实上,仅有学生自身的评价也是不够的。这时,教师有必要出一些有针对性的练习题,让学生进行自我测试,检查学生的完成情况,从而更准确地判断学生对软件工程的基本思想、概念、原理、方法和技能等的理解和掌握情况。总之,教师通过学生的自我评价,以及学生完成作业的情况,基本可以判断案例教学效果,从而能进一步改进案例教学法。

5结论

在建构主义知识观、学习观和教学观的指导下,构建软件工程的案例教学法。一般来说,先使用传统教学法讲授软件工程的基本原理和方法,再在此基础上,进行案例教学。通过案例分析使学生进一步理解和掌握所学的原理和方法,达到理论与实践相结合的统一。该方法不仅可以激发学生的求知欲、提高学习兴趣,而且学生在案例的讨论、分析、归纳、总结过程中进一步理解和掌握了软件工程的基本思想、概念、方法和技术,有助于提高学生分析问题、解决问题、相互沟通、相互合作的能力,对学生今后从事软件开发、管理与维护有一定的指导意义。同时,该方法也要求教师本身的知识水平、教学组织能力、口头表达能力、综合素质较好,并具有一定的软件开发、管理与维护的能力,这样才能够较好地控制教学过程,实施有效的案例教学活动。我院计算机相关专业的软件工程课程教学过程中,案例教学法已被实施,并取得较好的教学效果。

作者:胡俐蕊 阳建中 陈国斌 单位:钦州学院电子与信息工程学院

参考文献

[4]袁维新.建构主义理论运用于科学教学的15条原则[J].教育理论与实践,2004,24(10):57-62.

[5]张家军,靳玉乐.论案例教学的本质与特点[J].中国教育学刊,2004(01):48-50.

[6]张霞,谢桂芳,李盛欣.“软件工程”课程教学改革的研究[J].软件工程师,2014,17(05):31-32.

[7]毛燕琴.软件工程专业案例启发式教学实践框架研究[J].计算机教育,2015(07):22-24.

[8]岑琴.案例教学法在计算机专业教学中的应用——以《软件工程》为例[J].电脑知识与技术,2014,10(32):7657-7658;7669.