地方院校软件工程学科研究生课程体系建设的思考
2015-03-16何箐等
何箐等
摘要:软件工程学科研究生课程体系建设需要保证学生知识结构完整性与课程知识体系先进性、明确研究生培养目标与课程水平、兼顾学科发展与人才培养、结合培养单位实际情况与自身特色。地方院校在构建软件工程学科硕士研究生课程体系时,应该借助CDIO的引导,加大工程实践的力度,培养合格的、得到社会认可的硕士毕业生。
关键词:软件工程学科;研究生课程体系;地方院校
中图分类号:G64 文献标识码:A 文章编号:1009-3044(2015)04-0178-03
Abstract: During constructing the postgraduate curriculum of the software engineering discipline, it is very important to keep the body of knowledge in the curriculum advanced, ensure the students knowledge architecture appropriate, discern the difference between undergraduate and postgraduate level, promote the discipline construction and development of the colleges and universities, and be in correspondence with the self practical condition of the colleges and universities. Especially for the local colleges and universities, it is proper to enhance the engineering practice training for students guided by CDIO activities in order to supply the qualified and accepted graduates for software engineering field.
Key words: Software Engineering Discipline; Postgraduate Curriculum; Local Colleges and Universities
软件业作为信息产业的核心之一,已越来越成为国民经济的基础性和战略性产业。而涉及软件业和现代服务业的软件工程已形成了较为完整的理论与工程技术体系,课程体系基本明确,高端人才培养能力基本形成,创新型复合型人才的社会需求不断提高。因此,在2011年国务院学位委员会新修订的学科目录中,软件工程从原来的计算机科学与技术学科中独立出来,成为新的一级学科。从2012年开始,在全国范围内,被批准设立软件工程硕士学位授权点的各高校开始招收第一批硕士研究生。目前,正值第一届软件工程学科研究生撰写论文、临近毕业之际。为了能有效提高教育教学质量和人才培养水平,我们对几所省属一般院校的软件工程学科应届毕业的研究生进行走访调研,从学生角度在课程设置能否支撑科学研究的开展、是否有利于就业、是否能促进学生建立完整的专业知识结构等方面进行了调查。经过对调查结果的分析以及反馈意见与建议的梳理,结合我校软件工程专业在研究生培养各个环节的观察与实践,我们认为高校、尤其是地方院校在软件工程学科的课程体系建设过程中需要关注以下几个方面。
1 课程体系的构建应该兼顾的原则
课程作为高等教育的主要实现载体,对人才的培养发挥着至关重要的作用。课程体系是由一系列课程通过相互整合、协调而最终形成的统一整体。制定合理的课程体系有助于学生知识结构构建的完善与优化,有助于研究生中期、后期科学研究与综合、创新实践的开展,对学生综合素质的提高、对培养单位的学科发展都具有重要意义。因此,作为人才培养的基础,课程体系建设历来受到培养单位的重视。
制定课程体系时需要解决的核心问题是,如何提供一系列的课程,使得学生在有限的培养期限内得到足够训练,成长为社会与行业认可、达到培养规格的合格人才。因此,构建软件工程学科的课程体系应兼顾以下三个方面:
如何保证课程体系的完整性与先进性,使学生构建起合理、全面的专业知识结构;
如何做好知识等级的衔接与过渡,集中体现研究生层次的培养目标;
如何结合培养单位的软件工程学科自身实际情况,使学生顺利进入自身的研究方向,积极参与导师的科研项目,形成合力,保持研究优势与成果,推动学科发展。
只有解决好上述三个问题,构建出的核心课程体系才能真正满足学生培养,学科持续发展的要求。
2 基于SWEBOK,保证课程体系的完整性与先进性,与国际接轨
建立软件工程学科,系统、规范地培养软件工程人才已受到国内外高等学校、科研院所和企业界的普遍重视。由ACM和IEEE/CS联合工作组所组织制定的“软件工程知识体”SWEBOK(Software Engineering Body of Knowledge)、“计算教程-软件工程卷”CCSE(Computing Curriculum Software Engineering)及其中的“软件工程教育知识体”SEEK(Software Engineering Education Knowledge)于2004年5月正式发布。其论证工作吸纳了来自世界七十多个国家和地区的著名大学、软件企业和研究院所参加,集中了软件工程领域众多科学家、教授和企业家的智慧和期望。
SWEBOK把软件工程划分为软件需求、软件设计、软件构造、软件测试、软件维护、软件配置管理、软件工程管理、软件工程过程、软件工程工具和方法、软件质量等10个领域(如表1所示)。每个领域又分为若干个子域,每个子域中罗列了相关的主题和子主题。
SWEBOK还给出了作为软件工程学科知识领域的相关学科,包括:认知科学和人的因素、计算机科学、计算机工程、管理和管理科学、项目管理、系统工程和数学。SWEBOK为确立软件工程的学科地位打下基础,是软件工程教育的里程碑。因此,制定课程体系时,只有遵循世界范围内得到认可的软件工程知识体SWEBOK,才能保证课程体系的完整性与先进性,才能使学生构建起合理、全面的专业知识结构。
3 明确研究生层次的培养目标,厘清研究生与本科生课程内容与水平的差异,做好课程之间的衔接与过渡
作为软件工程学科的基础,SWEBOK描述了整个软件工程学科方向划分的知识领域。为了要将其用于人才培养上,还需要进一步落实相应课程的教学计划与实施安排。可以借鉴软件工程教育知识体SEEK的方案设置,将知识结构分为知识领域、知识单元、知识点三个层次,并给出每个知识单元的参考学时;将学生掌握知识点的方式分为:知识(识记)、理解、应用;知识点的重要程度分为核心、必修和选修三个类型。SEEK的知识体系中包括:计算基础、数学和工程基础、职业实践、软件建模与分析、软件设计、软件验证与确认、软件进化、软件过程、软件质量、软件管理共10个知识领域和1个应用知识领域(特定系统和应用)。计算教程-软件工程卷CCSE按照SEEK的要求设计了五组课程,并以此为基础设计了几个参考教学计划。SEEK是CCSE中的核心组成内容,为制定软件工程的本科教学计划提供了指南。SEEK虽然没有包含SWEBOK的全部内容,但涉及到SWEBOK的全部知识领域,为制定研究生培养计划留下空间。因此,非常有必要明确研究生层次的培养目标,制定的课程真正达到研究生的培养层次,而不是本科生课程的简单重复与随意扩充。
在课程设置上,应该注意研究生层次的课程与本科培养课程内容的衔接与过渡,我校在课程体系的“专业基础课”层次中设立三门课程。“高级面向对象技术”着重讲解针对大中型软件开发的“面向对象分析与设计”与“设计模式”;“软件测试与质量保证”着重于测试用例的设计与功能验证;“软件项目管理”着重于从项目经理的角度讲解对整个软件开发过程所涉及的各项资源的管理与掌控。这三门课程分别与本科阶段的“面向对象程序设计”、“软件调试与测试基础”、“软件过程管理基础”等课程对应,加强学生在三个方面的知识深度。如图1中的第2层“专业基础课”所示。
4 兼顾人才培养与学科发展两大根本任务,使人才培养与学科建设紧密结合、齐头并进。
制定的培养方案、构建的课程体系不仅要结合SWEBOK(为学生提供该学科的完整知识结构)、研究生层次的培养定位(分清本科阶段与研究生阶段的培养方案),还应该结合培养单位多年积累、凝练出的研究方向,这样才能进一步巩固加强各高校在相关领域已经积累起来的科研成果,有利于培养单位自身的学科建设与发展。
为了能够使学生尽快熟悉自己导师的科研方向,可以设置多个不同模块的选修课系列,每个模块对应于各高校在软件工程学科的相关领域所积累和凝练出的特色研究方向。学生通过选修相应的模块课程,达到与研究方向的初步对接,为及早进入导师的科研项目打下基础。因此课程体系的设置可以使用“分层次、多模块”的体系结构。
如我校研究生学位课程中专业部分能够占到10个学分,对应约5门课程:我们可以在专业学位型研究生的课程体系中安排5门课程:体现软件准确性的“软件形式化方法与建模”课程;体现现代软件分布特性的“分布式系统”课程;体现软件复用性的“软件复用技术”课程;体现计算技术核心的“算法设计与分析”课程;体现软件发展新趋势的“并行计算与多核程序设计”课程。
“专业基础课”与“研究方向课”一般占到13个学分,七门课左右。在企业进行的“专业实践课”为必修课,按照学校规定为2个学分。通过“分层次、多模块”的课程体系使得学生专业基础比较扎实、知识结构相对完整、研究方向基本明确。
5 地方院校软件工程学科课程体系建设要考虑学校实际情况,加大工程实践力度
由于学术型硕士、专业学位硕士研究生的培养要求不同,因此,正确处理不同培养目标之间的关系是课程设置的基础。学术型硕士研究生培养方案以培养具有一定创新能力的高素质学术型人才为目标,突出系统性;专业学位硕士研究生培养方案以培养具有一定专业基础知识的高素质应用型人才为目标,突出实践性。因此,针对不同类型的研究生培养,课程体系建设上也应区别对待。学术型研究生强调科学研究能力的培养,适当增强数学类课程的比例有利于学生提高数学素养,为科研工作打下稳健的基础。专业学位硕士研究生则偏重于工程实践能力的培养,因此设立相关的综合性工程实践类课程,有利于学生工程素养的提高。
但是,这里尤其值得注意的是地方院校对学术型研究生的培养。一般来说,地方院校相对于985、211等全国重点高校来说,教育资源相对匮乏,在学科方向、师资、生源、经费、政策等方面都存在一定或者较大的差距。因此,如果培养单位不考虑自身实际情况,而盲目向全国重点院校、国家示范性软件学院的高标准看齐,则往往会显得力不从心,处于两难境地。
就像研究型大学在对全日制专业学位硕士研究生培养上出现的“职业性”与“学术性”、“领域性”与“学科性”、“实践性”与“研究性”之间矛盾现象一样,以教学型、教学研究型为主的地方院校在学术型研究生的培养上,一样也存在着类似的矛盾因素。因此,一定要把握好因材施教的原则。尤其在软件工程学科,除了研究型大学的一部分学生将来走向研究岗位以外,可能大多数硕士毕业生最后都会从事软件开发的相关工作。因此,在课程体系建设上,一般院校应该特别注意软件工程学科中工程实践的能力培养,即使在学术型研究生的课程体系构建时,也应考虑按照CDIO理念,加强工程实践的力度。
长期的研究发现,高校软件人才培养体系非常强调知识结构,却忽略了知识以外的很多相关环节教育。社会用人单位非常关注客户为尊、勇于负责、沟通的能力、团队的协力、值得信赖、自我驱动、热诚、适应性、创造性等要素。这些要素在创业和工作中是必须的,但是校园教育却往往重视不够。传统的软件人才教育模式以学科知识为中心,在创新能力、实践动手能力、团队协作能力的培养方面存在薄弱环节。CDIO代表构思(Conceive)、设计(Design)、实现(Implement)、 运作(Operate),是近年来国际工程教育改革的最新成果。它以产品的从研发到运行的生命周期为载体,让学生以主动的、实践的、课程之间有机联系的方式学习工程。
CDIO培养大纲将工程毕业生的能力分为专业知识与能力、个人能力、人际团队能力和工程实践能力四个层面,要求以综合的
培养方式使学生在这四个层面达到预定的目标。CDIO的理念不仅继承和发展了欧美20多年以来的工程教育大改革的理念,更重要的是还提出了系统的能力培养、全面的实施指引(包括培养计划、教学方法、学生考核以及学习构架)以及实施检验的12条标准,具有可操作性。按CDIO模式培养的学生深受社会与企业的欢迎。
CDIO的理念非常适合将工程思想结合到软件工程专业的软件开发教学过程中。在软件开发课程中涉及到的需求分析、软件设计、编码实现与测试、使用维护等阶段完全与CDIO理念相对应。我校软件工程学科的专业基础课设置以“软件工程综合设计”课程为训练场,对“软件测试与质量保证”、“软件项目管理”、“高级面向对象技术”等课程进行充分实践。以此课程为基础,设置“软件工程专业实践”,鼓励学生在软件企业进行工程实践。这样使得CDIO理念有机贯穿于专业基础课程的学习与实践当中,有力提升了学生工程实践的素养。
6 总结
课程体系的建设是培养研究生的基础。因此在构建研究生课程体系时应该首先保证课程知识体系的先进性与学生知识结构的完整性,明确研究生的培养目标与课程应该达到的水平。其次应该根据培养单位自身特色与优势,设立能够引导学生顺利进入研究方向的模块选修课程,促进学科发展。最后,培养单位应该根据师资、生源等情况,设立符合客观实际的课程体系。尤其在地方院校的软件工程学科硕士研究生的课程设置中,应该加大工程实践的力度。只有这样,才能有助于提高学生专业所需的综合素质,培养出符合软件行业需求、用人单位认可与欢迎的软件工程高级人才。
参考文献:
[1] 中国科学技术大学软件学院,中国科学技术大学研究生院.创新的全日制软件工程硕士培养探索之路[J].学位与研究生教育,2012(2):13-16.
[2] 张乐平,朱敏,王应密.研究型大学全日制专业学位硕士研究生培养特性及矛盾分析[J].学位与研究生教育,2013(8):5-9.
[3] 董威,谭庆平,齐治昌.基于SWEBOK和SEEK的“软件工程”课程建设.第三届大学计算机课程报告论坛.
[4] 介军,何箐,董丽丽,等.面向软件应用开发的校企协同创新型计算机人才培养模式研究[J].电脑知识与技术, 2014(2):334-335.
[5] 叶伟巍,孔寒冰.基于CDIO理念的产学合作工程教育案例研究[J].高等工程教育研究(增刊),2008:34-39.
[6] 张文辉,林基明.以就业为导向,深化研究生课程体系改革[J].高教论坛,2010(3):117-120.