|
软件工程的理论性和实践性都很强,要求学生在掌握好理论知识的同时,同样注重实践性教学的设计和安排,使学生能够理论联系实际,活学活用,在解决实际软件开发问题的过程中培养和开发学生的素质和能力,学以致用。
推行“以理论知识为基础、以软件技能培养为核心、以项目实践为载体”的教学模式以及体现以教师为主导、学生为主体的“双主式”教学模式。在教学上采取传统的教学方式与现代教学手段相结合,讲授与研讨相结合等形式多样的组合式教学,积极推行“任务驱动教学法”,使学生成为学习的主体,在完成任务中进行主动学习,做中学、学中做,边学边做,学以致用,使学生由外部刺激的被动接受者和知识的灌输对象转变为信息加工的主体、知识意义的主动构建者,教师由知识的传授者、灌输者转变为学生主动建构意义的帮助者、促进者,调动学生的主动性和创造性,注重培养和训练学生自主解决问题的能力,使学生的创新能力、综合素质得到较大提高。在教学中通过布置工作量不小于150个小时的“大作业”,使学生感到有压力,有紧迫感,促使学生抓紧时间努力学习。课内安排一些“小任务”,使学生在课程实验中掌握一些基本技能。
课程安排分为课堂理论教学和课后实践两大部分:课堂理论教学的目的是使学生掌握软件工程的基本概念、原理和方法;课后实践的目的是培养学生综合运用这些知识开发实际项目的能力。不仅如此,还要培养他们严谨、求实的科学态度和合作精神,激发他们的创新意识和创业精神。为此,我们在课堂理论教学中,将软件工程的理论分为软件产品与过程、管理、传统方法学、面向对象方法学等四大块内容,通过生动的实际案例指导学生理解软件工程基本概念的重要性,通过大量的练习题帮助学生掌握各方面的基础理论和方法,通过大型模拟实践项目帮助学生应用基本知识和熟练掌握各种开发工具。
教学讲授方式。即采用板书推导、电子教案和课堂讨论相结合的教学方式。课堂上,在讲理论知识的同时,重点讲授如何运用书本上的理论知识应用于实际。并注重调动学生的积极性,将学生学习的过程变为在教师引导下师生共同探索的过程。对课程中的重点与难点内容,组织学生进行课堂讨论,通过热烈讨论加深对问题的理解和解决,有效地培养了学生的创新能力,表达能力。
真实的软件项目通常是由一定规模的项目小组来完成的,软件工程师不仅需要完成个人的工作任务,还需要与项目组成人员协同工作,因此必须具备良好的团队精神,才可能与其他成员共同开发出高质量的软件产品。同时软件工程之博大精深,对于毫无团队开发经验的在校学生而言,是很难真正领略的。所以课后大型模拟项目实践是非常重要的教学辅助手段。
布置大型模拟案例,将学生分为3-5人的开发小组,结合课堂教学的进度,布置每周的实践任务,使学生在实践中体会软件的生命周期,包括需求分析、总体设计、详细设计、编码、测试、维护、以及团队合作。在整个学期的开发过程中,学生需要与模拟客户(即任课教师或其助教)进行反复沟通以确定需求;项目组必须定期自行组织召开协商会议,就项目进度、模块接口等管理与技术问题进行非正式的沟通和磋商;学生们需要提交3份正式的、装订精美的书面报告;需要在课堂中进行2场模拟报告会,与模拟客户和其他协作小组进行正式的沟通与讨论;训练学生的分析能力、开发能力、组织能力、表达能力、以及培养团队精神。
在完成教学大纲内容的基础上,通过开设开放课堂,尝试以学生为中心的教学模式,发挥学生的主动性、积极性,通过各种学习策略激发学生去主动建构知识的意义。通过“大作业”加大课程设计力度,强化训练学生的实际动手能力和创新能力。同时建立完善一整套课程实践的方案,包含内容、考核标准;进一步引入各种实践环节所需软硬件环境;通过与IT研究所、企业合作的方式,建立校内外软件工程实习基地。
改革目标是以建构主义学习理论为基础,针对软件工程学科知识体系和教学过程的特点,确定CDIO教学目标框架下课程教学的阶段划分、教学模式、活动、目标与方法,并根据课程知识单元的教学特点,选择各个知识单元的有效的教学方法,形成各门课程有效达成教学目标并体现以学生为主体、教师为主导的双主模式的组合教学方法模式,并在此基础上开展教学实验并收集教学效果的实验数据。
|