高校软件教育的问题分析与对策研究

 根据《国家中长期人才发展规划纲》(215-22),22年前,我国将在经济、社会发展重点领域新增培养大量紧缺专门人才,其内容涵盖十六个大项,62个子项。其中培养人才人数较多的是软件、医卫、教育领域,将近百万计。
  前不久,中国青年报与某门户网站联合开展了一项调查(共有8777人参与),结果显示,34.7%的受访者后悔上大学,51.5%的人认为在大学里“没学到什么有用东西”1。
  目前,在人才市场上大批的计算机专业的大学生找不到工作,而同时大批企业找不到合适的人才。很多学生也已经意识到了仅凭在大学所学的计算机知识,很难应付今后的工作,纷纷在毕业后专门去北大青鸟、清华IT、华宇国际等培训机构,参加1-2年的专业化培训2。
  分析出现上述现象的原因,主是高校软件教育与企业的需求严重脱节。软件企业对人才的求是,有一定的项目研发经验,有团队开发能力及沟通技巧,而这恰恰是现行高校教育中所缺乏的。对于软件人才的培养,教育部新一轮的改革就是请企业参与进来,“高校是在为企业培养人才,不去询问是否满足企业的求,就是闭门造车”3。
  从事高校软件教育的经验使我们深刻地体会到学生虽然在高校学习了若干门计算机语言课程,到最后还是很难用任何一门语言设计一个完整的项目。原因是在教学过程中,虽注重了教学的系统性和完整性,严格按照教科书的编排顺序组织教学,但从教学结果的反馈来看并不理想。首先,学生在学习中普遍感觉计算机语言生涩、抽象,难以理解,课堂上看似听明白,其实掌握程度浮于表面,不能真正理解其中含义;其次,动手能力差,上机实验形同虚设。没有理论知识学习与上机实践的有效配合,上机实验常常是匆匆上阵,草草收场,达不到通过实践来高实际编程能力的目的。久而久之导致学生逐渐失去了编程的兴趣和信心4。
  综上所述,高校软件教育必须满足企业的求,对现有的人才培养方案、教材、教学方法进行全方位的改革,加大对高校教师的培养力度,只有这样才能高人才培养质量,高学生的实践动手能力,从而使高校培养的学生满足企业的需求,彻底改变学生在大学里“没学到什么有用东西”的现状。
  1 人才培养方案存在问题及对策
  高校的软件教育培养的软件人才不符合企业的需求,首先从人才培养方案找原因。高校的软件教育是按照科学家培养的标准比较多,而很少考虑将学生培养成未来的工程师,因此人才培养方案很少考虑如何满足不断发展的企业需求。
  在高校软件人才培养方案中,往往非常重视学生的知识结构的构建和理论的学习,而忽视了计算机软件应用知识和实践经验,与企业求有一定的距离。高校在人才培养的过程中,过分依赖于知识的传达,而忽略了对学生能力的培养,而其中学生的实践能力恰是企业需求最急迫的。
  虽然高等职业院校实践教学环节的学时可能占到了总学时5%以上,但是软件专业的人才培养方案大多是本科的压缩版,采用的教学方法也没有充分体现软件教学实践性强的特点,教学内容更新慢,师资缺乏项目实践经验的现象仍然很严重。
  当今的软件行业发展迅猛,新的概念、技术、知识也不断涌现,所以必须对原有人才培养方案中不适应新形势需求的课程进行改革,切实理顺理论教学与实践教学、课程教学与实用新技术之间的关系,加强新理论、新方法、新技术的研究与应用,更新教学内容,注重学生实践能力的培养。
  2 教材存在的问题及对策
  教材是知识传授活动中的主信息媒介,是教师和学生沟通的桥梁,是学生了解知识的主窗口。对教师而言,教材是教学的主依据;对学生而言,教材是学生获取知识、培养能力的重工具。
  教师授课所用教材滞后于现实。据统计,目前计算机软件技术平均每18个月更新换代一次,而高校教学使用的计算机专业教材的内容更新一般需2-3年,课程体系设计与软件教育内容的滞后很难培养出高素质的计算机软件人才,也在很大程度上给学生的就业带来困难。
  高校软件专业的学生使用的教材大部分是按知识体系来组织的,使用这样的教材进行教学,学生学完一门课时,很难应用该门课程所学的知识来设计一个完整的项目。教师如果完全按照教科书的编排顺序组织教学这本身就不符合软件开发的特点,所以必须对现有的高校软件专业的教材进行改革,应该按工程化的方法组织教材的编写,即以“项目引领,任务驱动”的思路组织教材的编写。
  教材编写遵循基于工作过程系统化编写方法,按照由简单到复杂,由单一到综合的原则进行创设学习情境,使学生通过该教材的学习过程体验到在软件公司开发软件的工作过程,这样才能充分体现“以学生为中心”、“教中学,学中做”的教育理念,使学生在实践过程中掌握知识、技能和技巧。
  使用这样的教材进行教学,学生学完某门课后既可以学到该门课的知识,又可以应用该门课的知识设计项目。这不仅高了教学效率,而且可不断地对学生强化软件工程的思维模式,让学生积累项目经验,对他们将来的就业是非常有帮助的。
  使用这样的教材进行教学,对高校教师的素质求更高了。首先教师在教学之前做大量的准备工作,教师在开始教学前,就对项目的环境求,项目的功能及项目的实施过程非常清楚。其次对教师的知识面求更宽了,让学生学会软件项目的开发过程和方法,教师必需有足够的项目开发经验才能驾驭这样的教学方式。