陈 宫,牛秦洲
(桂林理工大学信息科学与工程学院,广西桂林,541004)
基于项目开发的教学模式的探索与应用
陈 宫,牛秦洲
(桂林理工大学信息科学与工程学院,广西桂林,541004)
以建构主义理论作为依据,针对大学毕业生工作能力较弱的问题,构建一种建立项目团队进行实际项目开发的教学模式。这种模式建立以教师为指导、学生为主体的真实的项目实践环境,强调学生对项目任务的自主探究、协作学习、实践创新等。在此阐述了这一模式的理论依据和特点,给出了教学模式的设计,并结合实例进行了讨论。
项目开发;教学模式;建构主义
基于项目开发的教学模式,就是在大学本科教育的后期,在学生完成了基础课程和专业课程的理论学习、实验学习以及课程设计学习之后,为使学生真正完成从学习角色到工作角色的转变,以建构主义理论作为指导,由教师带领学生组成开发团队,对实际的项目进行完全职业化的开发和实施。整个过程完全按照工程化的思想、方法和手段,以教师为主导,规划项目内容和要求、组织项目团队、控制项目进度、协调任务分配等。而以学生作为主体,让学生在教师指导与支持下,以科学研究的方法和工程化的手段,运用所学的知识和技术对项目进行开发,担当开发者的角色,进行自主探究、协作学习和实践创新,最终完成所分配的任务,从而达到学以致用,真正使学生将所学知识转化为实际的能力,进而建立起面对挑战的自信心,从容应对未来的工作。
当前大学毕业生就业难是不争的事实,其中有很多因素。考察大学生的求职历程,可以发现很多人的能力无法满足招聘单位的需要,主要表现在许多大学生实际动手能力不强、创新意识不强、专业知识的宽度和深度不够,尤其是缺乏良好的沟通能力和协作能力。大学生的现有能力不能适应社会需要成为大学生就业难的一个重要的原因。
根据北京大学相关机构所作的“高校毕业生就业状况调查统计”显示:毕业生把工作能力强、有相关实习和工作经历看作是就业的“杀手锏”。影响毕业生就业有多种因素,例如工作能力、学历、学校名气、学习成绩以及自身的形象气质等,而其中最重要的是工作能力和是否具有相关的实习经历。事实上,一个理工科毕业的大学生,往往需要在工作岗位上经过一定时间的继续学习实践,才能成为一名合格的工程师。但大多数的招聘单位不愿意花更多的时间来培训刚毕业的大学生,大学毕业生也想在学校里就具备职业工作人的能力和素质,以便找到理想的工作。因而,大学生在毕业之前进行一种职业化的本专业的工作实践和学习是非常有必要的。
基于项目开发的教学模式作为一种新建构主义下的应用性教学模式,强调构建学生职业化工作素质、自主担当任务角色、相互协作学习实践、和努力探索创新发展,以培养学生良好的学习方式和实践水平为目的,着眼于培养学生熟悉和掌握本专业工作的能力,真正体现“以学生发展为本,以学生人人成功为目标,以学生学会学习为中心,以培养学生创新能力为核心”的教育思想内涵。[1]
基于项目开发的教学模式,通过完成一个完整真实项目的过程,培养学生运用所学知识解决问题的能力和发现不足不断学习的意识,使学生清楚本专业所从事工作的具体内容和工作角色,懂得如何进行团队的合作和协作学习,进一步提升学生的职业化素质和能力。旨在把学生融入有意义的任务完成的过程中,让学生积极地学习、自主地进行知识的建构,以现实的、学生生成的知识和培养起来的能力为最高成就目标。[2]基于项目开发的教学模式集中体现了建构主义的学习和教学理念,强调真实的问题情境、强调自主探究、强调小组合作,注重有效的问题解决技能、自主学习和终生学习的能力的培养。这一构建在建构主义理论上的新型教学模式能够提升学生的实际能力和自信心,使他们能够更好地就业。
基于项目开发的学习以建构主义理论作为理论基础。在教学中以学生为中心,学生是知识的主动建构者,教师是教学过程的组织者、指导者、意义建构的帮助者、促进者。利用情景、协作、会话和意义建构等学习环境要素,充分发展学习者的主动性、积极性和首创精神,最终达到使学习者有效地实现当前所学知识的意义建构的目的。知识不再是教师传授的内容,而是学生主动建构意义的对象;媒体也不再是帮助教师传授知识的手段,而是用来创设情境、进行协作学习和会话交流,即作为学生主动学习、协作式探索的认知工具。[3-5]
基于项目开发的学习的特点包括:(1)建立以学生为中心的学习实践环境,有利于激发学生的学习动机,激励学生主动学习;(2)项目开发过程中,综合性和实践性比较高,学生对项目任务的研究和探索能较好地突破学生课堂所学知识的有限性和局限性,更好地将知识贯穿和集成起来;(3)改变学习中教师主体的观念,将学生推向主要角色的地位,使其综合能力和自信心都能得到极大的提高;(4)项目开发按实际工作的环境设置,使学生面对了很多以前没有遇到过的问题,通过不断地学习和探究,使他们研究探索问题和实践应用的能力都得到了极大的提升;(5)项目按团队模式开发,使师生互动、生生互动得到了体现,这种团队协作的方式下,更能使学生相互交流、相互帮助、相互促进,建立起良好的团队精神;(6)能够使学生真正感觉到自身的能力和自信,从而有利于择业从业。
这一教学模式是通过实施一个真实的、完整的项目来实现的。项目可以来源于指导教师的自然基金项目、企业合作项目等,也可以来源于以往学生做过的项目或由教师研究设定的项目。要建立起适合项目开发所需的工作环境,要有一定数量的开发资源供学生借鉴和使用,要有合适的交流平台作延伸,最后还要有相应的项目考核评估方式来检验等。
在基于项目开发的教学模式过程实施之前,教师首先做好准备工作,包括设计项目内容和要求、规定项目完成的时间、开发方法和使用到的工具、项目团队组成的办法和角色岗位、验证项目完成结果的评价方法等。项目内容和要求需要考虑到项目的实践意义、规模大小和学生现有的知识经验和能力水平以及可能会提升到的知识和能力程度,应具有一定的挑战性,适当给学生一定的压力,才能使他们最大地发挥他们的潜力。根据项目的规模和参与人数来设定项目完成的时间。教师根据自身经验考虑好学生需要准备的知识和步骤,以及项目中会用到的开发方法和工具,事先告知学生进行前期准备;制定项目团队组成的办法和每个角色的设置,以及最后完成成果的评价方法,以使得学生顺利组成项目团队和任务分工,并了解项目结果如何评价。具体过程如下图所示:
图1 基于项目开发的教学模式的过程图
以学生自由组合和教师组织调配相结合的方式组成若干个项目团队,团队成员的搭配要考虑到能力水平、特长、性格、处事能力等方面的因素,尽可能地形成一个能够团结协作的团队。团队的规模控制在3到5人之间,推荐一人作为组长。在选择项目和指导老师上,采用双向选择的方式:学生可以选择项目和指导老师,指导老师也可以选择学生团队。教师在团队中可担当项目负责人的角色,进行项目的总体规划、分配任务、指导学生进行项目的开发、控制项目的进度等。
团队组建完成后,开始进行项目规划,解决要求做什么、可以做什么、能做什么、应当做什么等问题。因为学生没有项目开发经验,所以教师可亲自制定项目的规划,并引导学生按照工程化的思想和方法进行项目的开发。对整个项目按需求调研、分析、设计、实现、测试这一过程进行阶段划分,然后再根据学生自身的具体情况进行任务的分配,并确定大概完成时间。所有项目团队的成员都参与到项目进行中的每一步,每个成员都要了解到项目的总体规划和项目的每一个细节,知道自己要完成的任务,同时了解需要配合他人的地方,这样他们会对项目的按计划执行更加有责任感。另外,为了进行高效的开发和相互交流,应建立起团队开发交流的平台。例如,设置服务器建立共享存储区存放公用的文档,建立版本控制源码保护环境以合理保存各时期的源代码,设立QQ群或网络会议进行网络上的交流等。
学生刚开始时经验不足,教师在项目开始阶段应对学生进行有效的指导。例如,项目开发采用什么样的方法:结构化方法、原型法还是面向对象法?学生可能在课堂上学习过,但在实际项目中应该如何应用还需要教师的言传身教。又比如,在需求分析的时候采用什么样的建模工具?教师可以先让学生自我探索解决,再和学生一起讨论,确定使用何种工具。
学生确定任务解决方案是在自主学习、深入分析问题的基础上完成的。针对自己的任务,学生除了需要学习有关的知识与技能,还必须进行广泛、深入的调查研究(比如上网搜集有关资料,通过个别访谈、问卷调查、实际测量等手段来获取相关的信息与资料)。这时学生需要学习收集信息和保存信息的技巧,并按一定规则对资料进行分类,形成小组资料文件夹并共享。学生在通过自主学习和分析研究后,构思初步的分析设计方案。期间有什么问题,可以进行小组交流讨论,也可以和教师进行交流,逐渐修改和优化方案。教师在这个过程中主要是组织协调小组活动,监控活动的内容、进度和效果,对需要帮助的个人和小组提供资源、技术、方法上的帮助,以保证解决方案是行之有效的。
学生根据经过共同讨论后形成的方案,进行实现工作。在这一过程中,学生可能会遇到很多的技术问题,除了自己研究解决外,还可以和项目组其他成员讨论或在网络上与更多人进行研究解决。在实现过程中,能够真正提高学生的应用能力,不断地积累工作经验,从而提升他们的自信。另外,成员之间在对自己的模块测试完后,还可以相互测试对方的模块,既可以相互发现问题,又可以通过熟悉别人的工作方法和内容,达到进一步学习的目的。最后,项目组成员一起合作将各自的模块进行集成,使每个人都能了解整个项目的结构和内容,使每个人都能体会到收获的乐趣和自身的成就感。
所有项目组都完成各自项目后,聚集起来演示各自的项目成果,相互交流方法、技术和经验,相互评价等,再由教师根据项目难度、所有文档的规范性和完整性、是否到达项目要求、系统是否可靠性、测试有无错误等来对每个项目组进行评价。不仅对结果进行评价,同时也强调对学习过程的评价,真正做到了定量评价和定性评价、形成性评价和终结性评价、对个人的评价和对小组的评价、自我评价和他人评价之间的良好结合。
这一教学模式以“高校工资管理系统”为例。教师先制定出该项目的内容和要求:高校工资管理系统针对高校工资管理复杂、工资计算、发放、核算工作量大、准确率要求较高等特点,采用计算机应用系统进行高校工资的管理。主要功能包括员工基本信息、工资管理、数据统计等。项目预期完成时间为一个月。项目可能需要的方法和工具如表1所示:
表1 项目开发各个阶段、开发工具及相关文档
组建共5人的项目团队,教师要结合学生的知识水平和能力水平、学习风格等方面对小组成员作适当的调整。推选出能力较强的学生作为项目小组组长,全面负责项目的执行。
教师初步整理出项目内容和要求后,召集项目团队一起讨论和规划整个项目。由于学生项目开发经验欠缺,教师应运用自身的知识和经验把控整个项目的方向、进展、技术等各个环节,并带领学生共同经历每一环节,以让他们积累工作经验。团队一起讨论,针对该项目的特点,采用面向对象方法进行项目开发,并按软件工程的思想和方法,对整个项目按需求调研、分析、设计、实现、测试这一过程进行阶段划分,并按表2和表3分别进行了任务分工和进度安排。
另外,建立了一个文件服务器和QQ群,并商定采用表1中规定的开发工具进行下一阶段的开发工作。
项目成员针对自己的任务,开始进行学习和调研,收集大量的资料和文档,并进行分析和整理。在关键的问题上,和项目组成员以及教师进行讨论,并采用建模工具Rose、Power-Designer、Visio等进行模块的分析和设计。教师在此过程中,开始要进行指导,结束时要对每个成员的分析设计方案进行把关,并与项目组所有成员共同讨论确定方案。
按照设计文档的要求,项目成员采用统一的编程语言Delphi进行各自模块的编程工作。这一过程可能面对很多以前上课时所未遇到的问题,学生可自己查阅书籍解决,也可以和别人讨论,还可以通过网络特别是一些专业的网站或论坛来找到答案,从而提高编程水平,积累编程经验,在技术能力上进行提高。在完成编程工作后,学生先对自己的模块进行测试,编写测试用例、记录测试结果,再对别人的模块进行测试。最后,主要由一人主持,将所有的模块集成为完整的系统。
举行项目汇报会,各小组汇报项目成果,并对汇报进行自评、互评,师生对所做主题研究进行总结反思。可以组织学生参与制定量规,或者在评价前向学生说明量规和评价标准可参考表,以引导和激励学生的学习。在设计量规时,教师应根据具体情况设计评价指标,为各指标设置相应的权重并制作合适的量规格式,如表4所示。
表2 项目任务分工
表3 项目进度安排
表4 项目评价表
通过真实项目的开发和团队协作,学生体验到了实际的职业工作过程。在教师的指导下,在实际的项目环境下,通过自主学习、协作探究、网络学习等,在实践中掌握项目的开发方法和技术以及各种工具,积累了实际工作的经验,形成了自己的知识体系,完成了知识建构,提升了自身的成就感和择业的自信心,更好地构建了从事专业工作的基石。
[1] 周文瑾.浅谈研究性学习[J].当代教育论坛,2006(4):58-59.
[2] 胡庆芳,程可拉.美国项目研究模式的学习概论[J].外国教育研究,2003(8):1821.
[3] David Jonassen.Designing Constructivist Learning Environments[C].ICCE 98 proceeding,1998.
[4] Wilson,B.(Ed.).Constructivist Learning Environments:Case StudiesinInstructionalDesign[M].New Jersey:EducationalTechnology Publications,1996.
[5] DavidH.Jonassen.AModelforDesigningConstructivist Learning Environment[C].Proceedings of ICCE97,1997.
G642
A
新世纪广西高等教育教学改革工程2010年立项项目(2010JGB038)
陈宫(1976),男,硕士,讲师,研究方向为计算机应用。