基于CDIO理念的教学做一体化软件工程课改构思和实践

时间:2022-09-07 03:11:26

基于CDIO理念的教学做一体化软件工程课改构思和实践

摘 要:软件工程课程的理论抽象性和工程应用性都比较强,本文将CDIO理念的全局意识融入到软件工程课程的教学做一体化实践中,采用了CDIO工程教学模式及融入建构主义教学方法进行教学,全面提高软件工程课程的教学质量和学生的学习效果,并推广到相关其它课程的教学和实践之中。

关键字: CDIO模式和理念;软件工程;课程改革;教学做一体化;建构主义;实践

中图分类号:TP31 文献标识码:A DOI:10.3969/j.issn.1003-6970.2013.07.056

本文著录格式:[1]陈巧莉.基于CDIO理念的教学做一体化软件工程课改构思和实践[J].软件,2313,34(7):148-151

0 引言

CDIO工程教育模式是近年来国际工程教育改革的最新成果,是基于工程项目全过程的学习模式,是对以课堂讲课为主的教学模式的一种创新改革,CDIO思想源于早期的建构主义思想。俗语说,“观念更新通百变”,从2000年起,麻省理工学院和瑞典皇家工学院等四所大学组成的跨国研究机构,经过四年的探索研究,创立了CDIO工程教育理念,并成立了以CDIO命名的国际合作组织。中国教育部也十分重视CDIO工程教育模式,并给予了一定经费支持。我院在《C#程序设计》和《项目教学》两门课程中首先试行[1],效果比较满意,并推广到《软件工程》课程的教学和实践之中。

1 CDIO理念的全局意识

CDIO是英文Conceive(构思)、Design(设计)、Implement(实现)、Operate(运作)首字母的缩写,它是现代工业产品从构思研发到运行改良乃至终结废弃的生命全过程,CDIO工程教育理念就是要以这个全过程为载体培养学生的工程能力。所以我们在《软件工程》课程教学中也尝试引入并实践了CDIO工程理念的实施,软工课程作为软件技术专业和计算机等专业的一门专业核心基础课程,其工程性更加突出,引入CDIO模式和理念及教学做一体化的思想,对于培养学生采用不同的计算机语言进行各种类型的软件开发均有着非常重要的指导意义。

CDIO的基本内容包括“1个愿景”,“1个大纲 ”和“12条标准”。“1个愿景”是指CDIO教育在产品、过程或系统的构思、设计、实施、运行的背景环境下强调基础知识的学习。这个愿景的突出特点是:教育是基于明确的、经利益相关者确认的专业目标和学习效果目标;学习效果目标通过一系列一体化的学习经验来实现。“1个大纲 ”,是指对学生4个层面的能力要求,包括:一是技术知识和推理能力;二是个人能力、职业能力和态度;三是人际交往能力:团队工作和交流能力;四是在企业和社会环境下构思、设计、实施、运行系统的能力。“12条标准”是指对是否实践CDIO教学理念的判定标准,对培养计划、课程结构、教学方法、教学评估和学生考核等方面进行指导。

要达成CDIO理念的全局意识,还要做到上下级想法一致,才能获得成功。首先领导层要有CDIO的认识和规划,其次,教师要拿出CDIO实施的方案和行动,第三,学生要主动参与CDIO的学习和实践活动,并能提高对本课程学习的效果,从而对以后的就业活动产生积极良好的影响,并在全社会达成共识,形成良性支持CDIO学习和实践活动的热潮,并推广到其它课程的学习和实践活动之中。

2 一体化培养模式和实施计划

一体化培养模式包括CDIO的全局一体化培养方案和教学做一体化培养方案两种形式。CDIO的全局一体化培养方案包括的具体计划内容有结构化的分析-设计-编码实现-运行测试和维护的CDIO及面向对象的分析-设计-编码实现-运行测试和维护的CDIO两种实现类型,具体针对具体的项目案例来进行具体的分析和灵活选取。

而教学做一体化培养方案是在CDIO的全局一体化培养方案的基础上进行的,所谓“教、学、做”一体化,是指“教、学、做合一”,即教中有学和做,学中有做,做中有学,学和做中有评价。我院正是籍于这样的思想将软件工程的教学与工作环境尽可能融为一体,宏观上一体化实施基于CDIO的教学做一体化全过程,并遵循“讲练结合、边学边做,融理论于实践,从实践中获取知识”的原则,让“教、学、做”尽可能一体化进行,这样,学生不仅技术逐渐学会了,技能也得到了不断加强。

教学做一体化培养计划具体内容是指从软件系统的立项、需求分析、系统设计、系统实施、系统运行到系统维护的整个项目开发周期,经历着构思、设计、实现、运作的全过程,正好和 CDIO的理念和主旨不谋而合[2]。项目的开发过程不仅培养了学生的软件工程基础知识和个人专业能力,而且培养了学生的人际交流和团队能力及软件工程系统综合运用能力,而这四点正是CDIO大纲中的四条所要求的。具体:①CDIO中的构思-设计-实现-运行的过程正好体现了CDIO 学中做的思想;②复杂抽象的软件工程系统中的原理、方法、技术的掌握则体现了教中有学和做及学中知的思想;③基于软件工程环境的团队合作和交流则体现了学生共同学习。即学中做和做中学的思想;④在企业和社会环境下C、D、I、O系统的能力,可以提高和评价一个人的综合运用能力,即个人能力。则体现了学和做中有评价的思想。

3 如何实施CDIO的理念和模式到软工教学中

软工课程教学改革是在案例项目教学的驱动下进行的,以案例项目的开发贯穿整个理论和实践教学过程之中。并在案例项目的驱动教学中完成软件工程的理论和实践教学任务,教改成功的关键是在CDIO理念提出的12条标准(见表1所示)的指导下逐一进行的。为此,课改的方案和实施策略具体如下。

3.1软工课程的定位目标要明确可行

软件工程课程在软件技术专业课程群中占具相当重要的地位,它属于核心专业基础课程,它的先行和同开基础课程是《计算机基础》、《C语言》、《VB程序设计》等;同样,对其他专业课程(如《C#程序设计》、《JAVA语言》、《程序设计》、《J2EE》等)及其课程设计、毕业设计的学习和开展均有指导作用。而且软件工程课程对学生毕业后的工学结合就业岗位都有不同程度指导作用,也就是说这些岗位都有可能用到软件工程的理念和模式指导相关实际工作的开展。

根据本课程的要求和学生毕业后可能从事的企业岗位要求:软件公司所需要的人才应该是对项目有宏观认识,不仅有基本的分析设计的技能,还要有遇到问题多层次、多角度、灵活地处理问题的能力;不仅需要在技术方面有扎实的基本功,还必须拥有良好的团队协作精神、实践能力和自学能力[4]。我们制订了如下保障措施:一是教材的选取要合理合需:教材是课程的基本建设,是高职院校教师实施项目化教学的重要资源,我们早先选用过的教材有《软件工程实用技术》、《现代软件工程》等,这些教材要么太抽象不便于理解,要么缺少案例项目的指导,不便于驱动理论和实验教学或实训教学的开展,为此我们编写并出版了基于CDIO理念和模式的项目化教材《现代软件工程技术》,该教材围绕一个真实的案例项目——高校学生信息管理平台展开教学,由浅入深地介绍了软件工程课程所涵盖的所有知识点,并将理论知识点介绍和建模实训技能训练进行了有机结合,融CDIO理念和“教-学-做”三者为一体,符合软件蓝领岗位能力的要求和学生的认知规律。二是项目教学的实施尽可能在多媒体一体化教室开展;三是要让学生选择一些配合项目教学需要的必要的软件工程参考资料

3.2完善好课程标准及相关教学计划

传统软件工程教学的弊端是采用传统的授课方式已不能满足高职软件技术专业学生教学的需要;学生缺乏自主学习、自主实践的能力,与高职学生的喜欢操作性相悖,毕业生往往不能满足社会和工业界的要求。另外,由于大部分工程师的学习都是从具体到抽象,例如:从操作ROSE软件到理解ROSE理论概念;又如,对于刚上大学的高职学生缺乏动手能力,设计(I)-实现(O)活动及其它形式的体验式学习可以为学生建立认知框架,对于学生学习软件系统和过程的构建能力,及对加深技术知识的理解均有积极的作用,这样的学习方式称为“建构主义”。其含义是指:知识不是通过教师传授得到,而是学习者在一定的情境即社会文化背景下,借助其他人(包括教师和学习伙伴)的帮助,利用必要的学习资料,通过意义建构的方式而获得,“情境”、“协作”、“交流”和“意义建构”是学习环境中的四大要素[5]。

其具体思想是:1)以学生为中心,强调学生对知识的主动探索、主动发现和对所学知识意义的主动建构。即学习不是由教师把知识简单地传递给学生,而是由学生自己主动建构知识的意旨的过程。以学生为中心,强调的是“学”;以教师为中心,强调的是“教”,这正是与传统教学的教育思想、教学观念最根本的分歧点。2)CDIO工程教育模式的理论基础是经验学习理论,正是植根于建构主义和认知发展理论的,建构主义知识观、学习观为CDIO教学模式提供了教育思想的理论基础。3)建构主义教学观认为CDIO教学模式的建立提供了方法意义指导,建构主义者认为教学应该是激发学生原有的知识经验,以其作为知识的生长点来促进学生知识的建构。4)建构主义教学模式和方法是CDIO 12条标准形成的基础,CDIO教学设计的每个环节都渗透着建构主义教学设计的影子 [6]。按照以上指导思想,我们制定并完善了《软件工程》课程的课程标准(其中创设了10个学习情景,激发学生的学习兴趣),并参考课程组编写的《现代软件工程技术》教材,制订和完善了软件工程的理论教学计划和实训教学计划,使学生学习过程的最终目的是为了促成对知识意义的建构。

3.3不断提升教师的CDIO能力和教学能力

为了开展好软件工程教学做一体化教学的要求,主讲任课教师必须要进行好CDIO的工程思想和教学模式的培训才能承担本课程的教学任务,其中也包含了建构主义理论和教学模式的培训及相关教学能力方面的提升。除前已述及之外,在建构主义理论和教学模式中主要推介了三种教学方法值得任课教师的重视:

3.3.1“支架式”教学:支架原本指建筑行业中使用的脚手架,在这里用来形象地描述一种教学方式,其教学思想是以前苏联著名心理学家维果斯基的“最近发展区”理论为依据的。它由以下几个环节组成:①搭手脚架;②进入情境;③ 独自探索;④协作学习;⑤效果评价。本方法适于软件工程理论和实验教学。

3.3.2“抛锚式”教学:本教学思想要求建立在有感染力的真实事件(或问题)的基础之上,确定这类真实事件或问题被形象地比喻为抛“锚”,所以有时也被称为“实例式教学”或“情境性教学”或“基于问题的教学”。它由以下几个环节组成:①创设情境;②确定问题(即“抛锚”);③自主学习;④协作学习;⑤效果评价。本方法适用于软件工程案例项目教学、实验和实训教学。

3.3.3“随机进入教学”:随机进入教学思想源自建构主义学习理论的一个新分支—“弹性认识理论”。这种理论的宗旨是要提高学习者的理解能力和其知识迁移能力。对同一教学内容在不同时间、不同情境下,为不同的目的,用不同方式加以呈现。它主要包括以下几个环节:①呈现基本情境;②随机进入学习;③思维发展训练;④小组协作学习;⑤学习效果评价。本方法适于软件工程实验和实训教学。

从上述三种教学方法中不难看出建构主义教学模式和方法是CDIO 12条标准形成的基础,CDIO教学设计的每个环节(C-D-I-O)都渗透着建构主义教学设计的背景。建构主义教学方法的意旨与CDIO大纲对学生的4个层面的能力要求是完全一致的。

3.4课程的重点难点明确,并有可行的解决办法

3.4.1让CDIO的理念走进课堂,课程的理论教学架构的确定

本课程在软件技术专业每学年开设一次,课改为尽可能在一体化教室进行,课程教学主要采用边教边学边建模的方式和基于案例项目的CDIO及问题情景导向学习(PBL)的教学模式,即主要采用的教学方法有“支架式”教学和“抛锚式”教学。其中,理论教学共计64~78学时,每周6个学时,其中有22个实验(即岗位训练)学时,可用于“做中学”和“学中做”训练,其余42~56个学时用于“教中学和做”(即理论融合实践)的教学和训练。课程的重点是软件开发模型的正确选择,Visio或ROSE建模方法 ,结构化的 (分析、设计 、编码 )方法,面向对象的 (分析、设计、编码) 方法,软件体系结构及软件重用,软件测试和维护,新型软件开发方法,CDIO各实践环节。课程的难点是课程丰富的工程经验要求与学生缺乏工程体验及行业背景知识之间的矛盾,具体表现在需求分析、软件设计与建模、软件项目管理和CDIO实践环节等方面。解决方法是:一是通过项目案例教学 ,让学生直观地感受软件开发和软件工程的基本原理,让学生具有感性认识。二是通过启发式和PBL教学模式,加强与学生的交流,建立互动精品课程学习网站和丰富生动的PPT,促进学生自主学习、主动地学习。三是软工课程与C#及项目一体化教学的区别是前者理论抽象性较强,工程应用性较弱,需要在实践中多具体化到案例项目和所用到的程序设计语言。四是通过 CDIO人才培养模式和“建构主义”教学方法的灵活运用,加强软工实验训练环节,并进一步践行“教-学-做”一体化过程。最后通过让学生到企业调研和生产实习,促进对社会、市场和技术的真正理解,逐步解决学生缺乏工程体验及行业背景知识的问题。

3.4.2 让CDIO的理念走进项目实践,课程的实践教学架构的确定

高职软件工程课程实训大约30多个学时,用于案例项目“教学做一体化”训练和实践训练,基本采用边教边学边做项目的实际训练方法和基于案例项目的CDIO教学模式,即主要采用的教学方法有 “抛锚式”教学和“随机进入教学”。实践教学活动用于进一步强化学生对软件工程基本概念及原理的理解,着力培养学生以下能力要求。

①系统分析能力:通过案例项目实践的分析过程,培养学生对现实世界的抽象描述和建模能力,使他们能够系统地完成由现实到抽象,由抽象到设计,再由设计到实现环节的转换。

②工程实践能力:推行CDIO工程教育的理念和模式及建构主义方法,让学生实际经历和实现软件工程过程的各个环节,学习并掌握软件工程理论、方法、原理、技术、工具和过程。

③交流、表达与文档撰写能力:学生要善于与团队成员及客户进行沟通,并能正确而恰当地表达自己的思想,同时能规范地完成相关文档的撰写,利用业界主流的建模工具来进行表达。

④自我学习能力:案例项目的实训教学也培养了学生不断学习、终身学习的能力,尤其是在项目开发实践中自我学习的能力和师徒传帮带的关系,能为今后工作奠定良性基础。

⑤团队精神和组织能力:通过团队合作完成实现项目,培养学生的团队精神和合作意识;通过设立项目经理培养学生的组织能力和协调能力,为今后实施大型软件工程项目奠定基础。

⑥不断创新能力和应对挑战的能力:通过案例项目实训教学,培养学生的创新性思维,并能应用到所开发的项目中,从而加以实现。工程实践总会有需求与条件变更,市场运作必定要面对许多困难与风险。通过设置障碍、变更需求等方式,培养学生建立正确的心态,以便应对危机化解难题[3]。

3.5对学生进行正确的考核和评价

本课程考核内容包括平时考核、实训项目考核及期末考试,其中平时成绩占总评成绩的20%,项目实践占30%,期未考试占50%,项目实践要求学生按小组完成一个比较完整的项目模拟,并以书面报告的形式上交。

教学效果评价方式采用教师过程评价、组员之间相互评价及学生自我评价结合的方式进行。其中评价内容主要围绕三个方面:学生的自主学习能力、团队合作学习中做出的贡献及是否达到案例项目建构的要求,侧重考查学生的思维过程。

采用前面考核方法和教学评价结合的方式,软件工程教学必能取得较为理想的教学效果,学生普遍能够完成所选定项目的基本任务和基本要求,期末考核能够达到预期的要求,课程考核评价方法合理,考核目标与培养目标也能取得一致的要求。

4 结语

总之,CDIO在我国的高职高专教学中的试点是成功的,在软工课程教学中,其中的C代表构思(即系统分析),D代表设计(即概要设计和详细设计),I代表实现(若不能实现,要测试到系统实现为止),O代表运作(若系统运作不正常,维护到系统正常运作为止)。C-D-I-O的每一个环节对于教师和学生同等重要,但对于教师和学生的强调各有侧重:CDIO思想对于学生更强调I和O;而对于教师则更强调C和D,及部分I和O。希望本文能起到抛砖引的作用,能为更多的高职院校的软件工程及其它课程的教改提供帮助作用。

参考文献

[1]陈巧莉,宫护震等.基于CDIO的教学做一体化课改和实践[J],软件,2012,33(12)

[2]李莹莹,孙全玲.CDIO理念下项目驱动的软件工程教学改革方案的探讨[J],福建电脑,2011,(12)

[3]李彤,赵娜.基于CDIO的软件工程国家精品课程建设[J].计算机教育,2012,(1)

[4]石冬凌.结合CDIO理念的“做中学”—软件工程课程教学方法的探讨[J],教育教学论坛,2010,(3)

[5]钟志贤,徐洪.建构主义教学思想揽要[J],中国电化教育,2000,(2)

[6]于佐东,党承华等.以建构主义的学习理论认识CDIO工程教育模式[J],中国电力教育,2012,(4)

上一篇:软件工程技术发展探究 下一篇:高职《计算机平面设计技术》课程的改革与实践