软件工程课程“四合”教学模式的探索与实践
2019-10-08郑山红赵辉彭馨仪王国春董亚则
郑山红 赵辉 彭馨仪 王国春 董亚则
摘 要:软件工程课程是软件工程专业的一门重要核心课,是学生建立工程意识掌握工程方法必须学习的专业基础课。针对软件工程课程教学普遍存在的“五个割裂”问题,设计并实践了一种“四合”教学模式,即基于“内容整合”构建课程知识体系,基于“文化融合”激发学习兴趣,增强民族和文化自信,基于“方法结合”创新教学方法,基于“校企联合”实施软件工程教学,应用该教学模式进一步提高了人才培养质量,对软件工程专业其他工程类核心课程建设具有指导意义。
关键词:软件工程;课程建设;“四合”教学模式;五个割裂
中图分类号:TP20 文献标识码:A
Abstract:Software engineering is a core course of software engineering specialty.It is a basic course for students to establish engineering consciousness and to master engineering methods.Aiming at the common problem of Five Splits in software engineering course teaching,a Four-in-One teaching model is designed and practiced,which is to construct curriculum knowledge system based on content integration,to stimulate learning interest based on cultural integration,to enhance national and cultural self-confidence,to innovate teaching methods based on method combination and to implement software engineering teaching based on school-enterprise combination.The application of this teaching model further improves the quality of personnel training and has a guiding significance for the construction of other core courses of software engineering.
Keywords:software engineering;course construction;Four-in-One teaching model;Five Splits
1 引言(Introduction)
軟件工程一词诞生于1968年[1],由于全社会各领域对软件需求的持续快速增长,促使软件工程的理论、方法、技术和工具呈现爆发式发展的状态,短短五十年,软件工程已经从一个术语发展成一种技术、一门课程、一个专业、一个学科,乃至一个产业,日益受到计算机行业的广泛重视[2]。软件工程课程是软件工程学科的一门专业基础课,其核心内容是软件开发方法学等[3],由于软件工程课程基础概念理论枯燥、实践性突出、应用性强,而实际课程教学又多数采用传统的以讲授为主的教学方法,常常出现各环节、内容之间的脱节与割裂现的问题,使学生在缺乏社会活动体验和软件实际开发经验[4]的前提下,很难理解软件工程课程中的概念和原理,实践能力培养更是难上加难。因此,如何在软件工程教学中充分利用抽象思维和形象思维[5],从教学内容组织、教学方法设计、教学手段创新、教学资源建设等方面开展研究,以工程人才培养为目标,以教学模式综合改革为重点,构建更合理的软件工程教学框架,是软件工程课程改革的重中之重。本文深入剖析了软件工程课程教学存在的问题,归结为“五个割裂”问题,并基于此提出了“四合”教学模式,有力保证了软件工程课程的教学质量,为软件工程专业课程建设指出了可供借鉴和具有指导意义的改革途径与方法。
2 “五个割裂”问题的提出(The proposal of Five Splits)
由于软件工程发展的历史原因和软件工程教育的理论性、技术性、实践性并重的特点,以及软件工程飞速发展所带来的各种问题,使得软件工程课程教学普遍存在着学生学习兴趣低、知识学以致用程度差、教师授课方法与知识特点不对接等众多制约教学相长的现象,通过对这些现象的深入研究与剖析,我们将其归结为“五个割裂”问题,即课程文化与民族文化割裂、专业理想与学习行动割裂、教学内容与技术体系割裂、方法手段与学习效果割裂,以及专业学习与实际应用割裂。
(1)课程文化与民族文化割裂
软件工程领域的理论、方法与技术发源于西方,国内采用的相关教材与参考资料中的经典内容多数均取材于西方,课程教学内容普遍缺少中国元素,致使当代大学生崇尚西方文化现象比较普遍,民族自信心不足,文化自信缺失。
(2)专业理想与学习行动割裂
国内高校的软件工程课程普遍开设在大二下学期或大三上学期,这一时期的多数学生开始对专业有所认知,逐渐开始形成自己的专业理想,然而由于软件工程知识抽象性的特点以及多种其他原因,致使学生对课程的学习兴趣不高,学习动力不足,学习行动与专业理想背道而驰。
(3)教学内容与技术体系割裂
软件工程技术日新月异、发展迅速,新技术和新方法不断涌现,新知识和新理论不断更新,然而由于很多方法与技术比较单一,尚未形成完善的体系,国内采用的相关教材在内容组织上均无法快速融入最新技术与方法,各种理论和知识之间尚无法建立完善的关联,导致教学内容相对零散,难成体系。
(4)方法手段与学习效果割裂
软件工程课程在教学方法和教学手段的改革上不断探索,勇于尝试,持续开展基于信息技术和互联网的方法与手段创新,然而由于软件工程课程的教学方法与手段的改革一直以来仅重在信息技术与互联网技术在资源的构建与表现形式的创新上,未能很好地实现方法手段与知识模块的对接,未能将方法手段改革与学生特点有机结合,致使教与学割裂,教学过程中虽然采用了先进的信息化手段和方法,但是学生在学习过程中知识理解困难,学习效果差,教学质量难以保证。
(5)专业学习与实际应用割裂
软件工程课程知识具有明显的工程特征,主要教学目标就是学生软件建模和工程实践能力培养,通过课程学习应该可以直接将所学知识应用于实际的软件项目研发,然而由于学生对知识的理解程度差,以及软件应用领域无所不在的特点,致使学生即使完成了软件工程课程的学习,也很难快速胜任软件建模与研发的实际工作,学非所用,用非所学,学与用的裂痕普遍存在。
3 “四合”教学模式的设计(Design of Four-in-One teaching model)
针对软件工程课程教学普遍存在的“五个割裂”问题,软件工程课程教学团队在教学内容、教学方法、教学手段、教学策略、教学效果等方面持续开展教学改革与研究,全面分析专业学生的特点,全面剖析课程理论与课程体系,全面解析新时代发展要求,全程追踪教学过程中教学方法与教学手段的运用,不断探索应对“五个割裂”问题的策略与途径,提出并实践了软件工程“四合”教学模式,即“文化融合、内容整合、方法结合、校企联合”,有效解决了上述教学问题,有力保证了教学质量。
3.1 文化融合
软件工程在短短50年的发展过程中,由于历史的原因,其概念、原理、技术、方法、工具均来自于西方国家,教材内容也多是西方经典教材的简单裁剪,技术的表达、阐释方法与形式也多采用西方文化的习惯。由于文化的差异,导致学生对教学内容难以理解,进而降低学习兴趣,打消学生学习积极性,学生学习动力不足。另外由于不断受到西方文化的影响,加剧了学生对西方文化的崇尚,学生民族自信心和文化自信受到削弱,实質上是“课程文化与民族文化割裂”的问题。针对该问题,我们在多年的教学研究与实践探索中发现,冥冥之中,中华民族的先哲们,在几千年前就已经为现代软件工程奠定了哲学基础和理论基础。现代软件工程的许多概念、原理、技术和方法都能追溯到中华优秀传统文化中的那些经典名句中。例如“类(Class)”可以追溯到“物以类聚,人以群分”,“聚合”可以追溯到“聚沙成塔、集腋成裘”,“模块化”原理可以追溯到“分而治之”,“头脑风暴”可以追溯到“三个臭皮匠,顶个诸葛亮”,“软件的特点”可以追溯到“大象无形”,等等。为此我们大胆探索并实践了将中华优秀传统文化与现代软件工程技术进行文化融合与渗透,在教学过程中用中华经典名句去诠释现代软件工程的概念、原理、技术和方法,有效降低了学生对知识的理解难度,激发了学生的学习兴趣和学习动力,更为显著的是有效增强了学生的民族自信和文化自信。
3.2 内容整合
软件工程技术产生于计算机科学与技术并伴随其发展而发展,到目前为止已经独立成一门学科,形成产业。自软件工程这一术语诞生到现在,在短短的50年时间里,软件工程技术日新月异,发展迅速,但是很多新方法与新技术尚未形成完整体系,国内采用的相关教材在内容组织上均无法快速融入最新技术与方法,各种理论和知识之间尚无法建立完善的关联,教学内容相对零散,难成体系,从而产生“教学内容与技术体系割裂”的普遍问题。针对该问题,我们以SEBOK(软件工程知识体,SEI)为基础,以教育部《本科软件工程专业指南》为依据,对教学内容进行整合,构建了“一条主线三个维度合理交叉渗透的软件工程课程知识体系”,如图1所示。
在软件工程课程知识体系中,一条主线即“十个节点循序渐进的教学主线”,其中十个节点是“问题、算法、模块、程序、软件、方法、系统、项目、工程、科学”;三个维度即“层次化、模块化、过程化”,在模块维中根据内容将课程划分为理论、基础、实践、技术、过程、方法和工具等知识模块;在层次维中将课程内容分为三个层次即理论层、平台层和应用层;在过程维中根据软件工程过程即需求获取、系统分析、系统设计、系统构造、系统测试和系统维护进行知识的组织;合理交叉渗透即“在保证课程知识体系稳定性的前提下,随着技术的变化不断调整更新教学内容”,增强了课程知识体系的时代性、灵活性、合理性和多样性,有效保证了课程知识体系的先进性和适用性。
3.3 方法结合
软件工程课程教学一直面临严峻的挑战,具体表现在(1)理论性强、技术性强和实践性强的特征明显;(2)领域知识庞大与课时量小矛盾突出;(3)教学内容滞后于产业技术体系发展;(4)智能手机的普及,导致学生有效学习时间的碎片成为普遍现象。这些现象对软件工程教学方法教学手段的运用是极大挑战,教师“教无效、管无效”,学生照样“玩手机、睡大觉”,其根本原因在于“方法手段与学习效果割裂”,教学过程中虽然采用了信息化手段和方法,但是学生在学习过程中仍然存在知识理解困难、学习效果差的现象,教学质量难以保证。针对该问题,我们通过研究发现,由于软件工程课程不同于其他课程的特点,单一的方法不能适用于软件工程课程的教学,必须对教学方法与手段进行深层次创新与改革,教学方法与手段的运用必须实现与知识模块的对接,必须与学生特点有机结合,基于这一认知提出并实践了“问题驱动、案例驱动、项目驱动、翻转课堂相结合”的教学方法和“基于信息技术的线上线下相结合”的教学手段,如图2所示。
针对不同教学内容采取不同的教学方法,基本知识的理解采用问题驱动教学法,基本方法的掌握采用案例驱动教学法,软件建模与工程实践能力训练采用项目驱动教学法,适当适时采用翻转课堂教学法。充分运用信息技术和互联网技术,在课程资源、课件制作、内容讲授、课程实践与过程监控等方面全方位开展教学手段的研究与改革,研发了“软件工程多媒体教学系统”,建立了“软件工程精品课教学网站”,开发了“软件工程在线课程”,实施课上课下、线上线下相结合的教学手段。这些教学方法和教学手段的有机结合,有效地改善了“教”与“学”的效率和效果,明显地提高了教学质量,达到了弥补“方法手段与学习效果割裂”的目的。
3.4 校企联合
随着高等教育由“大众化”向“普及化”逐步过渡,大学生“就业难”和用人单位“招聘难”的矛盾普遍存在,其根本原因是“专业学习与实际应用割裂”,学生即使完成了全部课程的学习,也很难快速胜任软件建模与研发的实际工作。针对该问题,通过课题研究和教学应用,我们探索并实践了“企业岗位知识需求驱动理论知识,企业岗位能力需求驱动实践内容,企业岗位素质需求驱动学习方式”的校企联合的机制与方法,开展全方位、全过程的校企深度合作,与企业联合共同开展“软件工程校企合作开发课程”的建设,如图3所示。
基于上述校企联合的方法,在教学内容的组织、教学过程的开展、教学方法与手段的应用等方面深度合作,企业工程师走进课堂、带来项目,学生走进企业、感受技术与企业文化,教师与企业工程师共谋课程建设。具体做法是:与企业建立定期沟通机制,动态掌握企业对工作岗位的知识、能力、素质需求;与企业工程师共同制订教学大纲和组织教学内容;聘请企业工程师参与教学,在理论教学环节以课程讲座方式讲授部分教学内容,在实践环节直接利用企业实际项目参与教学指导;带领学生参观企业,感受企业技术文化。通过以上做法有效解决了“学非所用、用非所学”所导致的“专业学习与实际应用割裂”问题。
4 教学实践(Teaching practice)
长春工业大学软件工程课程教学团队于2006年开始,围绕“五个割裂”问题,持续开展软件工程课程“四合”教学模式的探索,并在三个层次(2个硕士专业、3个本科专业、5个专科专业)的四门软件工程系列课程进行教学实践,授课对象累计超过1万多名学生。
应用“四合”教学模式开展软件工程系列课程教学,有效提高了学生的工程实践能力,学生优质就业率高,受到用人单位的普遍好评;激发了学生的创新意识,提高了学生的创新能力,近五年来团队成员指导学生完成16项国家级、9项省级大学生创新创业训练计划项目,学生参加中国“软件杯”大学生软件设计大赛、“挑战杯”大学生课外学术科技作品竞赛和“互联网+”大学生创新创业大赛等各级各类竞赛,获国家级奖励20项、省级奖励15项。
应用“四合”教学模式有效促进了课程建设。基于“四合”教学模式,围绕课程建设“五个一流”的目标,着力开展软件工程系列课程建设,取得了较为丰富的课程建设成果,软件工程课程先后被评为校级优秀课、省级优秀课、省级精品课、省级在线开放立项建设课程、省级校企合作开发立项建设课程,团队承担的软件建模与分析、软件项目管理课程先后被评为校级优秀课、校级精品课和省级优秀课,参与建设的操作系统和编译原理课程先后被评为校级优秀课、校级精品课、省级优秀课和省级精品课,如图4所示。
5 结论(Conclusion)
“四合”教学模式本探索与实践了中华优秀传统文化在专业课程教学中的融合与渗透,与党的十八大以来提出的“四个自信”之“文化自信”高度契合,体现了大力宣扬与传承中华优秀传统文化的“新时代”主旋律和鲜明的“新时代”特征,是“专业思政”的实践创新探索;在软件工程课程中用中华优秀传统文化诠释和阐述现代软件工程技术是一种软件工程知识创新探索;在软件工程课程教学中添加中国元素,体现中国风格,将课程文化与中华优秀传统文化自然融合,是消减学生崇尚西方文化、增强民族自信、文化自信直接而有效的途徑创新探索。
参考文献(References)
[1] 白学明.面向工程化教育的软件工程课程建设探讨[J].软件工程,2018,21(12):38-40;28.
[2] 杨爱民,邓芳,高飞.软件工程专业人才培养模式的研究与探讨[J].计算机教育,2016(3):64-67.
[3] 教育部软件工程学科课程体系研究课题组.中国软件工程学科教程[M].北京:清华大学出版社,2005:20-23.
[4] 陈立岩,杨丰,谭龙.以培养软件工程师为目标的软件工程教学模式改革与实践[J].黑龙江教育,2018(4):11-12.
[5] 朴勇,周勇,陈鑫,等.软件工程教学中关于抽象思维和形象思维能力培养的思考[J].计算机教育,2015(17):88-90.
作者简介:
郑山红(1970-),女,博士,教授.研究领域:软件工程,智能计算与大数据处理.
赵 辉(1972-),女,博士,教授.研究领域:软件工程,智能数据管理.
彭馨仪(1979-),女,硕士,副教授.研究领域:软件工程,本体与语义WEB.
王国春(1978-),男,硕士,副教授.研究领域:软件工程,语义WEB与智能检索.
董亚则(1982-),女,硕士,讲师.研究领域:软件工程,语义检索与大数据分析.