APP下载

基于CDIO教育模式软件技术专业项目教学实践

2010-12-31易著梁

计算机教育 2010年11期

  摘要:本文探讨基于CDIO工程教育理念进行高职软件技术专业的项目教学。我们分别从课程体系构建、授课体系改革、评价方法改进等方面进行了实践探索,使学生在项目开发和工程实际环境中学习专业知识和工程实践技能,提高人际交往能力及产品、过程和系统建造能力,获得了良好的教学效果。
  关键词:CDIO项目教学;课程体系;授课体系;考核评价
  
  1 CDIO模式简介
  
  CDIO工程教育模式是近年来国际工程教育改革的典型成果。从2000年起,麻省理工学院和瑞典皇家工学院等四所大学组成的跨国研究团队获得Nut andAlice Wallenberg基金会近2000万美元巨额资助,经过四年的探索研究,创立了CDIO工程教育理念,并成立了以CDIO命名的国际合作组织。CDIO是构思(Conceive)、设计(Design)、实施(Implement)、运作(0perate)四个英文单词的缩写,它以产品研发到产品运行的生命周期为载体,让学生以主动的、实践的、课程之间有机联系的方式学习工程,是“做中学”和“基于项目的教育和学习”(Project based educationand learning简称PBL)的集中概括和抽象表达。该理念不仅继承和发展了欧美20世纪90年代以来工程教育改革的各项成果,更重要的是提出了系统的能力培养标准、教学大纲及评估标准,更具系统性和可操作性。这与我国高职教育人才培养模式改革的理念不谋而合。因此,CDIO工程人才培养模式的实践将会带来不同以往教学改革的实质性成效。在国家高等职业教育示范性院校建设中,我院软件技术专业按照CDIO的理念开展了项目教学模式的改革,取得了较好成效。
  
  2 构建CDIO模式的项目教学专业课程体系
  
  2.1 总体思路
  在高等职业教育国家示范性院校3年的建设过程中,通过与企业的交流与合作,我们进一步认识到工程设计是整个工程系统的精髓所在。基于这一理念,我们在软件技术专业教学中确定了以项目设计为导向、以能力培养为目标的项目教学工学结合人才培养模式,通过项目设计将整个课程体系系统地、有机地结合起来。具体说来,就是在专业课程体系中体现CDIO大纲理念,其标志是整个课程体系以项目为主线,把专业知识、能力、素质等培养目标融入到项目教学过程中。特点是学习内容都围绕项目这个核心进行,并与核心融合成一个整体。在3年的教学安排中,通过合理规划的课程项目、学期项目、毕业设计和综合项目等,把基础课程、专业课程、实践课程等内容及应达到能力目标融于项目之中,并通过实施项目培养学生的综合应用能力,循序渐进,逐步提高。基于CDIO的项目均为团队合作项目,学生在实施项目过程中学习、探索、应用知识,掌握实际项目开发的工作流程、组织与管理,培养CDIO能力。
  
  
  2.2 课程体系内涵
  在制订专业培养方案和课程教学计划时,我们依据项目开发的工作过程涉及的专业知识范围及项目本身的规模设计了3种类型的项目:课程项目(学习领域项目或学段项目)、学期项目(阶段项目)、毕业设计项目和综合实践项目。课程项目是针对课程教学计划中单门课程(学习领域)内容的理解而设置的,设立的必要性、涉及的能力要求等是根据课程的需要和课程教学标准的要求而定;每个学期针对几门核心课程的学习设计项目叫做“学期项目”,引导一组相关核心课程的学习,重点突出对某项能力的培养要求;毕业设计及综合实践项目包含本专业主要核心课程群,体现本专业主要能力要求。通过以上三种类型的项目设计,整个培养计划形成一个有机整体。在以项目为载体设计的专业课程教学计划中,项目设计与开发完整地贯穿于整个3年的教学阶段,对学生系统地进行构思、设计、实现、运作的整体训练,因此项目设置是CDIO培养计划中最为重要的环节。为此,我们设计了基于CDIO理念的以项目为载体的软件技术专业课程体系,如图1所示。
  在新生入学的第一学期里,我们要求学生首先完成计算机办公综合应用、网络组建与微机调试、计算机数学、软件技术基础等基础知识的学习,使学生具备基本的科学素养和专业基础,并为将来的专业课学习作好准备。
  第二、三、四、五学期,我们打破每学期几门课程并行开课的方式,而按单门课程分段开课。完成一门课程教学(课程项目)任务后,再开设另一门课程,完成一门课程学习的时间段为“1学段”,一学期大约为2~3个学段,每学段约6~8周左右,每学期共完成2~3门项目课程学习,最后3周完成学期项目的学习。我们按照学习学段渐进学习的原则确定课程顺序,每学期在相应的工程背景下确定教学目标。课程项目的设计与学期项目相关联,每个课程项目都是学期项目的一部分或几个模块,学生学完整个学期的几门课程后,也就完成了各个课程项目的学习任务。通过最后3周的学期项目练习,学生感觉自己在课程项目中完成的并不是零碎的程序段,而只需将之前完成的多个小项目内容作一些修改,再做必要的链接、整合,就可以实现学期项目的设计。
  
  2.3 教学实践
  为激发学生的创新思维,使之学会构思、设计、实现、运作,我们将学生组成4人左右的项目团队,教师也组成指导团队,指导学生反复尝试构思、设计并实现一个系统。在项目开发的不同阶段,我们都要求学生在查阅大量文献资料的基础上开展团队研讨、交流,在导师指导下不断完善构思、设计、实现,并在各个阶段接受质量评估,最终达到教学要求。通过项目训练,学生掌握了课程所要求的专业技术和专业知识,提高了个人能力、团队交流及创新思维能力,达到了预期要求。
  
  3 建立CDIO模式的课程项目教学授课体系
  
  在学习课程的每个学段,教师要明确所授课程在本专业知识结构中的地位和作用以及学生学习本课程应掌握的知识和能力,在教学中安排一个学习任务和工作任务,让学生自己动手和全身心投入,增强概念学习,强调学生发现问题、分析问题和解决问题能力的培养,建立和加强学习反馈机制。
  
  3.1 教师角色的转换
  传统教学中,教师占据主体地位,教师讲,学生听,学生容易产生依赖心理,甚至感到疲劳、枯燥。CDIO教育模式不仅注重培养学生的自学能力,也强调教师团队的指导作用。教学实施通常是围绕某问题、任务或项目开展,以项目为载体,由教师引导学生自主学习和探索。教师成为教学的组织者、引导者、咨询者和评价者;学生不再是知识的被动接受者,而成为知识的主动建构者。
  
  3.2 项目教学的实践
  项目设计是一项非常系统和复杂的工作,设计的好坏直接决定课程项目教学效果。项目的选取是学习的关键,既要包含基本的教学知识点,又要调动学生解决问题的积极性,因此必须选取一个具有实际应用功能,适合学生掌握的软件开发案例。以,Net开发平台与C#编程课程为例,该课程选取“客户关系管理系统”作为总项目,将课程项目划分成客户信息管理、系统管理、统计分析等若干个子模块,并把每个子模块涉及的知识点罗列出来,对其要实现的目标和要求进行详细的说明;然后按照教学内容设置由浅入深的任务,制定项目教学计划。
  在教学的过程中,教师提出所要完成的功能,并讲授项目涉及的知识点,然后根据功能布置任务,提出要求。例如:在设计和实现“登录窗体”的过程中,学生可以掌握“窗体、文本框、标签、按钮等控件的常用属性、方法和事件;变量命名规则、变量数据类型、变量的声明语法:赋值、条件语句的使用”等相关知识群,学生在明确目标驱动下学习。在教学组织形式上,将小组方式与独立方式相结合,全班每4人组成一个项目小组,每组推选出一名小组长。项目组长组织组员进行需求分析、软件设计、编码、功能测试等,组员分工协作,也可独立完成某一新知识型任务;对于知识面较广、难度较大的任务,可通过小组讨论来解决,也可以咨询教师,在教师团队的指导下完成。在这个过程中,教师担负着答疑和指导的任务,鼓励学生们用不同方法完成任务,针对具体情况提出改进建议。通过这种方法,所有学生共同参与,协作完成,提高创作热情,锻炼交流与合作能力、学习和思考能力、解决问题和创造性思维能力。
  
  4 建立CDIO模式的项目教学考核评价方式
  
  4.1 存在的问题
  过去的考试测评方式将学生成绩作为评价教师教学质量和学生学习成效的依据,一般分为考试课和考查课两种,考试课程成绩一般采用百分制,依据平时作业成绩、期中考试成绩和期末考试成绩评定,平时成绩占10%~30%,期中考试成绩占20%~30%,期末成绩占40%~70%。期末考试方式多采用闭卷笔试。考查课成绩也采用百分制,主要依据各种平时成绩和期末考试成绩综合评定。采用这样的评价方式,评价主体不重视对学生学习过程的评价,不符合现代工程教育价值观。
  
  4.2 理念的转变
  CDIO模型理念的考核评价以“过程”为基础开展,关注知识、技能的学习过程,关注实践环节及工程应用能力,力求知识与能力的协调统一。在强调技术基础的同时注重探究式学习方法,通过基于团队的研究性学习模式和主题研究项目的实践活动培养高素质工程应用型人才。
  
  4.3 考核评价方法
  在评价方式上,由教师制定评价标准,采取学生自评、互评和教师评价相结合的方法。一般采用分组讲解,成果展示的形式,由教师组织学生对各小组合作学习过程、方法策略、效果等方面进行评价,引导学生反思、总结和改进自己的合作学习,将学生打分和教师打分作为整个开发小组的分数;而学生的个人分数则在小组分数的基础上再加上其在项目开发过程中的参与程度、掌握新知识和新技能的能力以及综合运用知识解决问题的能力的得分。实践中,我们通过多种方法收集学生获得预期学习效果的证据,如用笔试和口试、课堂表现、产品审查、记录、报告等形式进行考核。
  (1)笔试和口试。通过笔试和口试有效评价学生对概念的理解,测试可以包含在考试、面谈或与学生的互动中。笔试在评价学生对概念的理解上仍然卓有成效段,可以在同一时间内对大批学生进行评估。口试要求学生对概念独立思考和合理理解,而且让教师及时发现学生对概念的误解。
  (2)课堂表现。通过学生在口头演讲和团队工作等特定任务中的表现情况评估学生对技术信息的理解,考核学生能否清楚和专业地表达出他们的想法。教学过程始终围绕着项目案例和项目任务展开,课堂讨论注重专业知识的掌握和启发性。教师要以学生为中心,适当引导,调动学生讨论的积极性。教师根据课堂讨论情况和学生提交的讨论记录给学生记录成绩,作为今后学生总评成绩的一部分。通过课堂讨论方式展开教学,学生可以充分展示创新思维,提高沟通表达能力,激发创造力,挖掘自己的优势。
  (3)产品评审:通过产品(学生完成的项目作品)的展示和评审展示学生在构思、设计、实施和运行产品、过程及系统方面的能力。在实现系统的过程中,教师以用户身份提出软件需求与使用意见反馈,帮助学生改进软件功能及用户体验。在完成系统后,教师一方面以最终用户身份验收和评价软件,另一方面根据完成的系统情况及系统的报告文档给学生记录成绩。产品评审可以让学生反思各种解决方案是否合理,更重要的是让学生在整个系统的构思、设计、实施、运作过程中发挥自己的作用,进行有效的工程实践。
  
  5 教学效果
  
  国家高等职业教育示范院校建设的探索和实践证明,采用CDIO模式开展项目教学取得了明显效果,主要体现为:
  (1)培养了学生的工程能力。在重实践性和探索性的教学理念下,以项目为主线组织教学内容将项目作为知识学习与技能训练的载体,引导学生进入实际的工作环境,切实解决实践问题,初步掌握工程项目的一般设计流程,达到理解、消化、吸收的目的。
  (2)提高了学生的自学能力。CDIO教育理念以工程项目为中心,学生在项目制作中不断阅读、查找、研究提供的学习资源,带着问题寻找答案,提高了学习效率,锻炼程序设计综合能力和自主学习能力。
  (3)培养了学生的团队交流能力。教学采取小组合作教学模式,在项目实现、运作之中,小组成员要进行项目总结交流,实现经验分享,拓展所学知识,从而提高团队协作能力。
  (4)为学生的后续发展打下了坚实基础。在全国软件技术资格(水平)考试中,我院有30%的学生通过软件设计师的考试,增强了就业能