摘要:研讨式教学法是近年来广受关注的教学模式,可以拓展学生知识面,加深学生对基础知识的理解,培养学生创新能力和综合素质。文章阐述在网络安全实践课程中开展研讨式教学的尝试和体会。
关键词:研讨式教学;安全;实践课程
研讨式教学法源于早期的德国大学,是西方发达国家高等教育中普遍采用的一种教学方法。由于研讨式教学法在提高学生学习积极性,培养学生独立思考能力和创新能力方面具有独特的效果,近年来研讨式教学法受到了国内教育工作者的高度关注,国内许多高校在教育实践中不断尝试研讨式教学法。研讨式教学法是一种互动式教学方法,在这种教学方法中,学生首先按照教师的要求阅读某一个主题的文献,然后教师和学生在课堂上就阅读的文献进行交流和讨论,学生通过这种互动的教学方式学习知识和培养多方面的能力。研讨式教学法突出学生在学习过程中的主体地位,充分调动学生的学习积极性和创造性,有利于培养学生的综合能力和综合素质,最终达到培养高素质人才的目的。
1 课程情况简介
网络安全编程与实践是我们今年新开的一门网络安全实践类课程,这门课程是密码学与网络安全课程的后续课程,注重培养学生的程序开发能力。网络安全编程与实践课程的学时为10周(上海大学将1学年分为“3长1短”4个学期,其中在短学期主要安排实践环节,规定其他3个学期中每学期共10周。该课程被安排在1个长学期中),每周5节课,其中课堂教学3节课,实践开发2节课。
为了拓宽学生的知识面,让学生深入学习并理解教师在课堂上讲授的开发技术,培养学生的自学能力、创新能力、实践能力和表达能力等综合素质,我们尝试在网络安全编程与实践课程中引入研讨学习环节。整个教学活动由精讲、实验和研讨3个部分组成,其中精讲部分的教学活动主要是由教师在课堂上讲授与网络安全相关的开发技术,为进一步实验和研讨教学奠定基础;在实验课程中,学生结合教师在课堂上讲授和自己课外学习的知识,根据课题要求动手开发原型系统;研讨部分主要是学生在教师的组织下,在前2个教学活动的基础上,围绕所开发的课题进行研讨学习。
2 研讨式教学法的组织和实施
在完成课堂听课和动手实验以后,学生在教师的组织下进入研讨学习环节。研讨学习环节包括以下6个步骤。
1)教师以每一个开发课题为基础,设置若干个扩展开发子课题。网络安全编程与实践课程一共安排了7个开发课题,分别是基于系统调用重载的文件访问日志原型实现、基于队列机制的应用层包过滤防火墙原型实现、应用代理防火墙的原型实现、端口扫描工具的原型实现、弱口令扫描工具的原型实现、网络攻击检测系统的原型实现以及端口扫描检测系统的原型实现。在开课之前,教师根据学生人数在上述每一个开发课题的基础上,设置3~5个扩展开发的子课题。整个研讨教学环节围绕每一个开发课题及其扩展开发子课题组织开展。例如,对于端口扫描工具的原型实现这一开发课题,教师可以设置如下3个扩展开发子课题:全连接扫描的多线程扩展、UDP扫描扩展实现、原型系统扫描功能的扩展。另外,对每一个开发课题及其子课题,教师还要设置一定量的思考题,设置思考题主要有2个目的:首先是让学生在每次研讨课之前,利用课外时间根据思考题查阅和学习有关资料,加强学习的针对性;其次在后续的课堂研讨环节,教师可以根据思考题组织研讨,提高学生参与的积极性。
2)子课题的分配。在每次开课之前,任课教师把上述扩展开发子课题分配给每一位学生,让一位学生负责在课堂上报告一个子课题的背景知识及其开发技术。为了提高研讨的质量和学生学习积极性,我们采用加分的形式鼓励学生按照自己的技术路线开发出原型系统,并在课堂上向老师和同学进行演示和讲解。另外,为了给学生创造课外交流学习的机会,我们把所有负责同一个开发课题下扩展子课题的学生组成一个学习小组,并指派一名基础好、能力强的学生担任组长。成立学习小组可以使小组内的成员在课外进行有效的沟通和讨论,深入学习相关的开发技术并锻炼团队协作的能力。
3)课前预习。在传统的教学方法中,为了提高学生听课的效果,教师提倡学生进行课前预习。在研讨式教学法中,为了保证每次研讨的质量,教师同样要求学生提前预习和熟悉即将讨论的内容。在每次讲授完一个课题的开发技术以及完成相应的开发实验之后,我们安排下一次的2节课为研讨课,要求全体学生根据课堂精讲的知识和开发实践以及教师布置的思考题,认真思考每一个扩展开发子课题的技术路线。教师可以在下一次文献阅读研讨课上随机抽查学生回答这些思考问题,以检查学生的预习情况。
4)课堂报告。在每一次研讨课中,每一位学生用PPT向老师和同学简明扼要地报告对于所负责子课题的学习和思考情况。报告内容包括介绍子课题的背景知识、讲解自己采用的开发技术路线和技术原理、演示所实现的原型系统、探讨自己的理解和收获等,时间是10分钟。
5)课堂研讨。在报告完毕后,课堂进入研讨环节,时间安排是10~15分钟。研讨环节包括2个部分:答疑和讨论。答疑部分要求课堂报告的学生回答老师和同学提出的疑问,讨论部分是学生在任课教师的引导下围绕子课题开发进行研讨学习。教师可以通过提出一系列问题启发学生进行讨论,除了引导学生对事先布置的思考题进行讨论以外,还可根据研讨的子课题准备若干课堂即兴讨论的问题,引导课堂讨论内容向深度和广度发展,以加深学生对相关知识点的深入理解,并拓展他们的知识面。
6)教师点评。课堂研讨完毕后,教师对课堂报告和课堂研讨情况进行点评,时间是10分钟,点评内容包括解答遗留问题、讲解技术原理、总结技术路线、指出课堂报告或PPT书写方面存在的问题、介绍学习方法等。
3 组织和实施研讨式教学的体会
我们在网络安全编程与实践课程中按照上述步骤组织和实施研讨式教学,经过一个学期的实践,我们获得以下体会。
1)研讨式教学课堂上的学生人数不宜过多。根据我们的教学体会,研讨式教学只有在课堂报告、讨论和教师点评3个主要环节安排足够的时间,才能保证教学质量。如果课堂上的学生人数太多,在学时不变的情况下,教师势必会压缩以上3个环节的教学时间,这样容易出现课堂报告不详细、研讨不彻底、教师点评不全面透彻等问题,从而影响研讨课的教学效果。根据本门课程学时安排的实际情况,如果引入研讨式教学,那么在课堂上学习该门课程的学生人数不宜超过30人。
2)教师在上研讨课之前一定要督促全体学生做好预习工作。研讨式教学要取得效果,一个重要的前提是学生必须熟悉和了解所研讨的内容。因此,教师每次在研讨课之前一定要督促学生做好预习工作。教师可以围绕开发的课题及其子课题设置若干思考题,让学生根据这些思考题预习即将研讨的内容。这样做有几个好处:首先,思考题能够突出预习的重点,让学生在预习时能够有的放矢;其次,在研讨式教学过程中,抽查学生回答预先布置的思考题不仅可以检查学生预习的情况,而且可以督促学生按时完成预习任务;第三,在课堂研讨环节,教师围绕预先布置的思考题组织研讨,容易调动学生研讨的热情,提高教学效果。
3)实践类课程的研讨式教学不宜以小组为单位分配研讨的子课题。在很多实践类课程中,教师通常把学生分成3~5人组成的小组,并给每个小组分配一个子课题,由小组共同完成子课题的报告或开发任务。根据我们的教学体会,这种方法容易导致小组内“分工不均”,给某些学生提供“搭便车”的机会,即小组的工作任务仅由组内的少数同学完成,而小组中其他同学不积极参与或者根本没有贡献。通过给每位学生分配一个子课题,不仅可以督促学生积极参与研讨学习活动,培养学生的自学能力、表达能力和独立思考能力,而且可以对学生在研讨学习过程中的表现进行客观全面的考核。
4 结语
在实践类课程中开展研讨式教学是一个有待深入研究的课题。教学实践表明,研讨式教学法不仅能够拓展学生的知识面,加深学生对基础知识的理解,而且能够提高学生学习的积极性和主动性,培养学生多方面的能力,值得广大教师在实践类课程的教学实践中不断研究和探索。
(编辑:宋文婷)