基于学习共同体的软件人才培养模式研究
2014-10-27司国东宋鸿陟
司国东 宋鸿陟
摘要:从学习科学的角度分析普通高校软件人才培养方面存在的问题,以学习共同体概念为理论基础,介绍一种适用于普通高校的软件人才培养模式,目的是以较小的管理代价和实施代价为学生提供真实的项目实践学习。
关键词:软件人才培养;学习共同体;项目驱动学习
0、引言
示范性软件学院在软件人才培养方面起到了巨大的作用,但和中国飞速发展的软件产业相比,示范性软件学院的毕业生数量还远不能满足市场的需求。除了软件学院外,普通高校的学历教育仍然是软件人才培养的主渠道,大多数普通高校都开设了计算机软件的相关专业。但是,与国家级示范性软件学院相比,普通院校在学生素质、办学条件、师资队伍、校企合作等方面还存在较大的差距,人才培养方式与软件企业的用人需求间仍存在较大的矛盾,企业对毕业生的专业技能和协作精神等方面存在较多的抱怨。高校教育强调基础理论和稳定性,缺乏对最新技术的跟进和学生实践开发能力的培养,同时,学生在小学、中学、乃至大学的学习过程中始终存在“学习是学生自己的事情”这样一种学习观念,协同学习与协同工作能力较差。另外,软件企业的人才需求比较细致化,如软件工程师、界面设计师、架构设计师、测试工程师等,而高校在人才培养目标与课程设置上相对保守,毕业的学生在应聘某些职位时缺乏一些关键能力。
普通高校的软件人才培养模式研究一直以来是高校计算机专业教育教学改革的重点问题,笔者以华南农业大学人机交互工作室为例,介绍一种应用学习共同体理论的软件人才培养模式。
1、学习共同体
学习科学领域的研究者指出:“学习的问题不仅是认知的问题,更是情境的问题、社会实践的问题”[2]。在现代社会的知识体系中,相当一部分知识属于默会(隐性)知识,这些知识具有实践陛,不能像显性知识那样在课堂上通过教师的教授来学习,必须通过参与真正的社会实践来获取,而学习共同体正是学习默会知识的一种重要手段。
学习共同体(Leaming communmity)的概念来源于社会学,博耶尔对学习共同体作了如下定义:“学习共同体是所有人因共同的使命朝共同的愿景一起学习的组织,共同体中的人共同分享学习的兴趣,共同寻找通向知识的旅程和理解世界运作的方式,朝着教育这一相同的目标相互作用和共同参与”。学习共同体不是简单地把许多人组合起来为同一个任务而工作,拓展任务的长度和扩大小组的规模都不是形成共同体的最主要因素,关键是要与社会联系,要通过共同体的参与在社会上赋予学习者一个合法的角色(即活动中具有真实意义的身份)或真实的任务。
2、软件专业学习共同体建设
软件开发是一项技术性、创新性、合作性都很强的工作,强调团队协作,其中包含需求分析、设计、编码、测试、实施、维护等不同的子过程,还涉及项目管理、风险分析等众多因素,这里面既有大量的显性知识,也存在很多无法传授的默会知识。这些默会知识无法通过课堂上的讲授和学生的自我学习获得,只能在工作或实践的过程中获得。我们希望应用学习共同体的理念来改善普通高校软件人才培养存在的实践能力缺失问题。
笔者所介绍的学习共同体全称为“华南农业大学人机交互工作室(Human Computer Interacti-on Studio,简称HCIS)”,可将其理解为一种特殊形式的学习型组织,它在学习形式和管理方法上与一般的学习型组织有较大的区别。HCIS的主要目的是帮助其成员学习软件项目的开发,以项目驱动的学习方式学习专业技能,以协商的方式组织管理这个共同体,成员们具有共同的学习兴趣,通过协作、交流、讨论等方式在课余时间进行学习与实践活动;成员自愿加入,无需身份界定,彼此相互信任;共同体内的资源(经验、知识)共享;成员中的新手通过学习交流发展成为老手,每一年都有一些老手毕业离开,更多的新手加入,共同体不断发展,形成并沿承一种良好的学习氛围,培育一种集体合作精神。
HCIS正式成立于2007年,发展的初期并没有使用学习共同体的概念和理论,它是一个由教师引导的“第二课堂”性质的学习小组,一些对软件开发感兴趣的学生在教师的指导下利用课余时间进行项目开发的实践学习。这种学习方式能够培养学生软件开发的能力,特别是在就业的时候,HCIS的成员表现出更强的竞争力,近两年来每一年都有大量的学生申请加入。随着人数的不断增加,学习小组的形式与管理方式已经无法满足共同学习的需要,我们逐渐意识到这种学习型组织的成功与发展需要教育理论的支持,近两年来开始应用学习共同体与实践共同体的理论指导HCIS的发展,淡化教师的管理作用,以学生自主学习与自我管理为主要组织形式,取得了明显的效果。
在这个学习共同体中,我们把所有参与者的身份定义为学习者与助学者,这种身份的定义是比较模糊的,学习者在某种情况下也会成为助学者。就像布鲁纳指出的:“在学习共同体中,教师不一定会成为专卖者,而学习者们也有能力相互成为支架”。学习者指的是HCIS的学生成员,来自于不同的专业和不同的年级。助学者被划分成内部助学者和外部助学者,内部助学者主要是指某一学习领域的专家,即学习者中的老手;外部助学者包括指导教师、企业中的软件工程师等,外部助学者通过专业报告和指导的方式帮助学习者。
学习共同体强调合法的边缘参与,即为新手提供边缘参与经验。HCIS每年都会招收一些新成员,新成员可以根据自己的学习方向加入不同的学习部门。这些新手通过观察、模仿、交流、建议等方式逐步地融入到这个共同体之中,在身份从新手向老手转换的过程中完成实践学习的过程。我们看到,这种身份的转换并不是简单的类似于“传帮带”的学徒制,而是通过积极地参与、协商、交流等多方面的学习实践来完成。事实上,由于软件的开发涉及到不同的专业领域和不同的专业知识,每一个项目的完成需要多方面的协同工作,新手在实践学习的过程中需要和众多其他的学习者进行交流协商,所以这种身份的转换是一种综合的过程,表现为一种合力的作用。同时,在身份转换的过程中成员自然而然地对共同体形成一种情感上的依托和归属感,具体表现为一种良好的学习氛围与集体精神。正像仇丽君等人对成员身份转换所提出的观点那样:“在学习共同体中,成员通过身份的转变,不仅获得了知识上的分享,也获得了思想上的交汇和情感上的满足”。endprint
HCIS在管理上并不使用严格的规章制度,而是通过成员的协商制定一些指导性的规范,规范的执行更多地依靠一种集体精神,这与其他学习型组织是有差别的。具体的管理工作由学生中推选出的一些管理者完成,管理者的身份在学习的过程中自然形成,这种身份的获取体现了一种集体的认同,管理者都是技术上的专家,他们要花费一些时间做一些管理和学习指导的工作。我们发现,这些成员对这样的管理工作充满热情,他们的组织与交流能力也有了明显的提升。
3、项目驱动的实践学习过程
HCIS被定义为项目驱动的学习共同体。成员采用完全自愿的加入与退出机制,这种方式能够避免项目驱动学习中“消极参与”的问题。软件项目的开发涉及到多方面的内容,需要拥有不同技术背景知识的项目开发人员。因此,HCIS也被细分为4个学习部门:前台开发部、后台开发部、系统部和测试部,成员根据个人兴趣选择合适的部门参与,每一个项目的成功完成与实施都需要4个部门成员的共同参与。项目组的构成一般包括4~8名成员,分别来自不同的部门,其中有1名或2名老手作为项目组的负责人,老手指的是经历过项目开发并具备较强技术能力的成员,他们负责项目的整体计划、调度、管理和实施。项目的实施主要包括3个步骤:(1)项目的需求分析与任务的分配。项目在共同体内公开发布,感兴趣的成员可以报名参与,不同部门的成员组成项目组,进行项目的需求分析、任务分解,工作计划制定。(2)学习过程中的实践开发。项目组成员需要对项目所涉及的专业知识进行学习交流,对项目的设计方案进行讨论协商,并完成具体的代码编写与软、硬件配置工作。(3)项目的测试与评价。项目组在项目完成后,首先进行组内测试,然后提交到测试组作更全面的软件测试。HCIS每两周会有一个项目报告交流会,在会议上指导教师和其他成员对项目的完成情况作出评价、给予建议,项目组对项目中存在的缺陷或不完善的部分进行改进。
通常情况下,老手都是那些高年级的学生,低年级的新手则通过项目开发过程中的观察、交流和实践学习默会知识,获得开发经验,边缘参与的方式更容易被新手所接受。当新手成长为老手后,共同体倡导的分享精神使得他们愿意为后来的新手提供帮助,从而形成一种良性循环。在项目的实施过程中,新手可以向其所属部门的专家请教专业知识,通过学习、交流、协商的方式获取专业知识和实践经验。老手负责项目整体的管理与技术指导,在整个项目实施的过程中继续深化他对专业知识的理解,提高解决技术难题的能力,锻炼交流与管理能力。为了尽量保证实践情境的真实性,HCIS的项目均来自于现实需求,包括指导教师提供的科研项目、学校内部需求的信息系统与网站、HCIS内部的一些管理系统,学生负责申报的省级或校级大学生创新项目等。
从实践情况看,学习共同体的组织形式取得了很好的效果。成员们表现出较强的专业能力、创新能力以及自主学习能力,在学术论文、竞赛、项目开发、就业等方面表现得极为突出。成员们普遍认为在HCIS中的学习过程是愉快的,项目实践学习的方式调动了他们学习的积极性,掌握了很多课堂学习无法学到的知识,提升了他们的专业能力、交流与团队协作能力。已经毕业的同学认为在HCIS的学习经历对他们的工作很有帮助。
4、结语
学习共同体提供了一种新型的学习环境,旨在纠正或强调以成人为主导的传统的课堂教学,使学习活动的参与者在共同完成学习任务的过程中相互帮助、协同工作,充分发挥学习者的主观能动性。学生以项目驱动和协作学习的方式掌握了最新的软件应用技术、积累开发经验、提高交流能力与自主学习能力、培养了创新能力与团队协作精神。endprint