基于CDIO理念的面向对象分析与设计课程教学改革探索

2018-02-08 12:17毕忠勤
计算机教育 2018年2期
关键词:收银面向对象理念

毕忠勤,周 平

(上海电力学院 计算机科学与技术学院,上海 200090)

1 背 景

随着面向对象编程语言在编程领域统领性地位的树立,面向对象方法与技术已经成为现代软件企业广为采用的一项有效技术手段。该方面首先在编程领域取得巨大成功,进而在软件生存周期的分析与设计阶段也取得了长足的发展。20世纪90年代出现的统一建模语言(UML,unified modeling language)进一步使面向对象分析与设计方法在现代软件企业成为主流的方法,即便是最新的SOA、云计算等新兴概念也是建立在面向对象方法基础之上。

面向对象分析与设计课程作为软件工程专业的一门核心课程,其主要思想是利用面向对象的概念,结合统一建模语言,采用统一软件开发过程(RUP,rational unified process)指导对软件系统的分析和设计过程,是现代软件工程人才必须掌握的基础知识和必备能力。课程的教学大纲不仅要求学生熟练掌握UML的基本概念和基本表示方法,还要求学生熟练利用UML进行系统的分析与设计。虽然系统的分析与设计仅仅是软件开发中的一个具体的环节,但在授课过程中必须涉及软件开发的整个流程,这样才能让学生较系统地掌握面向对象方法的精髓,体会面向对象方法的优势,从而更好地利用UML进行系统建模。CDIO作为近年来国际工程教育改革的最新成果,系统地提出了12条具有可操作性的能力培养、全面实施以及检验测评的标准。CDIO的培养理念符合面向对象分析与设计课程培养学生系统工程能力、项目的构思、设计开发和实施能力的特点。

2 CDIO概述

CDIO是麻省理工学院、瑞典皇家工学院等4所大学经过4年的探索研究而形成的工程教育理念。CDIO代表构思(conceive)、设计(design)、实现(implement)和运作(operate),以产品研发到产品运行的生命周期为载体,鼓励学生以主动的、实践的、课程之间有机联系的方式开展学习。CDIO将毕业生的工程能力分为工程基础知识、个人能力、人际团队能力和工程系统能力4个层面。CDIO工程教育理念不仅继承和发展了欧美20多年来工程教育改革的理念,还系统地提出了具有可操作性的能力培养、全面实施以及检验测评的12条标准。这些标准对整个模式的实施和检验进行了全面的、系统的指引,使得工程教育改革具体化、可操作、可测量,并对学生和教师都具有重要指导意义。

随着我国高等工科教育与国际的接轨,国内专家也较系统地对CDIO工程教育理念开展了深入的研究并加以实施,取得了一定的成效。汕头大学工学院在执行校长顾佩华教授的指导下,结合我国在职业化和职业道德方面教育缺失的状况,提出了全新的EIP-CDIO培养模式[1-2],EIP(ethics、integrity、professionalism)是指道德、诚信和职业化。EIP-CDIO以培养高级工程专业人才为目标,强调做人与做事相结合,做人通过做事体现,做事通过做人保证,并在培养过程中注重人文精神的熏陶,从而培养出的工程师具备优秀的职业道德、正值、富有责任感。同时,在教育部的统一领导和指导下,电气类、化工类、机械类、土木类等专业组对CDIO开展了深入的理论研究并提出了适合专业特点的CDIO模式[3],在专业层面上,制定了贯彻CDIO工程教育理念的培养方案和课程大纲,在课程层面上,借助CDIO的工程教育理念加强了对课程体系、课程内容、教学方法等方面的改革[4-5],完善对学生能力评估和改革质量评估体制。

面向对象分析与设计课程的特性是“工程性”,因此,在教学过程中,在注重理论教学的同时,必须把实践教学放在首要位置。实践教学效果如何直接关系到毕业生的培养质量和效果。本课程团队成员结合CDIO工程教育理念,建立了理论与实践相结合、跨课程的立体化课程内容体系,为培养学生系统工程能力奠定了坚实的基础。

3 CDIO驱动的面向对象分析与设计教学改革

3.1 课程定位

面向对象分析与设计课程作为软件工程本科专业的专业核心课程,全面贯彻实施CDIO工程教育理念,通过强化实践环节,使学生系统掌握面向对象分析与设计的基本原理、方法、技术和建模工具,并熟练地与本专业其他核心课程形成有效衔接和整合,全面提高学生的系统工程能力,为高级应用型软件人才的培养奠定坚实的理论和实践基础。

3.2 课程目标

通过学习,熟练掌握统一建模语言的基本理论,熟练利用统一建模语言和面向对象方法进行软件系统的分析、设计,着力培养学生的系统分析能力、系统设计能力、文档撰写能力、团队合作能力以及组织能力等,为后续进行软件全生命周期的系统、流程化软件开发奠定良好的基础。

3.3 课程理论架构

根据面向对象分析与设计在软件工程专业核心课程群中的地位,结合软件工程专业的特点,课程教学团队经过多次研讨,在介绍面向对象分析与设计方法之前,利用6~8课时对统一建模语言UML进行比较深入的介绍。同时在面向对象分析、面向对象设计讲授完后,增加了4~6课时进行统一软件开发过程RUP的介绍。RUP是一种软件工程过程方法,它涵盖了将一个用户需求转化为软件系统所需要的活动的集合,提供了开发组织中分配任务和责任的纪律化方法,以保证工程项目在可预见的日程和预算前提下,确保满足最终用户需求的高质量产品。理论课程的整体架构如图1所示。

图1 理论课程整体架构

其中,虚线框内的部分为面向对象分析介绍的主要内容,面向对象设计部分主要在面向对象分析模型的基础上,进行人机交互、数据管理、控制驱动以及构件部署4个方面的介绍,在面向对象分析与面向设计的讲授过程中,始终贯穿RUP的面向对象方法工程思路。

3.4 课程实践体系

面向对象分析与设计课程实践体系包括章节实验以及课程设计部分。章节实验以验证性实验内容为主,重点验证理论课时的讲授内容,依托案例开展教学,同时还包括少量设计型实验内容。课程设计则要求学生以一个自选的软件课题完成面向对象分析与设计的全过程。

同时,为了更好贯彻CDIO的工程教育理念,本课题组建立了面向对象技术实践课程群,很好地利用课程间的关系以及课程的关注点,形成了相互补充、互相渗透的实践体系。在章节实验和课程设计实践教学过程中,充分考虑到面向对象分析与设计课程与其他课程(如软件工程、数据库原理、J2EE、现代编程技术、软件测试等)的紧密联系,采用了项目贯穿制的课程群实践体系,根据课程内容要求,完成各自课程的实践教学大纲。一方面,避免学生在其他课程中重复进行系统需求分析、概要设计等问题;另一方面,利用同一课题,可以让学生对课题需求理解更透彻,课程实践环节要求可以更高。通过近两年的具体实施,学生的作品有了很大的提升,不仅完成了课程教学大纲的基本要求,还实现了部分诸如统计分析、数据报表、大数据分析等方面等额外功能要求。根据课程特性以及项目特点,在本校2014级软件工程专业教学过程中,统一采用“超市收银系统”作为实践案例,软件工程课程要求学生用工程化思想和方法,对超市收银系统进行软件计划、需求分析、设计以及测试文档的撰写,侧重用结构化方法进行系统的分析与设计。数据库原理课程要求学生根据软件工程课程的文档实现超市收银系统的数据库设计,并要求根据系统需求设计触发器和存储过程,同时,要求学生进行数据库系统的优化与改进,主要侧重学生数据库技术水平的培养。面向对象分析与设计课程要求学生在熟练掌握UML的基础上,利用用况图实现超市收银系统的需求分析,利用类图实现超市收银系统的基本框架,同时借助交互图、活动图以及状态机图等对系统进行有益补充,主要考核学生利用面向对象方法进行系统分析与设计的能力。现代编程技术课程要求学生利用一些开源程序实现超市收银系统的软件编码部分,同时要求学生对系统中的一些核心算法进行深入研究,如超市收银系统的促销产品收银算法、数据分析算法等,主要考核学生利用现代编程技术实现系统的能力。软件测试课程主要考核学生借助软件工程以及面向对象分析与设计产生文档的能力和对超市收银系统进行单元测试和系统测试的能力。这样整个课程群就成为一个整体,贯穿CDIO的4个过程,符合工程化的思想理念。

4 教学改革特色与创新

(1)以CDIO工程教育理念为指导,强化项目驱动教学方法的实施。根据面向对象分析与设计的课程特点,系统地设计了课程内容,并且在课程教学过程中,强调项目驱动的教学方法,使学生在“学中做、做中学”,有效解决了面向对象分析与设计课程内容枯燥、学生缺乏工程经验等现实问题。

(2)根据CDIO工程化思想,形成了项目贯穿制的课程群实践体系。面向对象分析与设计课程内容作为CDIO工程化中的一个环节,需要有效地与其他课程构成课程群。本课题组教师在长期教学的基础上,提出了项目贯穿制的课程群实践体系,利用一个统一的项目案例,贯穿课程群中的所有课程,达到相互渗透、各有侧重的教学目的。

5 结 语

计算机学科是一个工程性很强的学科,其中的很多课程符合CDIO工程教育理念。基于CDIO工程教育理念的课程教学改革能够有效激发学生的学习热情,开阔学生的视野,锻炼学生解决问题的专业水平。然而,课程特点和实践结果表明,孤立于单门课程的CDIO教学改革还具有一定的缺陷,需要将CDIO工程教育理念渗透到课程群的建设过程中,形成一个符合CDIO工程化思想的课程群体系,这也将是本课程组下一步的研究内容。

[1]顾佩华, 包能胜, 康全礼, 等. CDIO在中国(上)[J]. 高等工程教育研究, 2012(3): 24-40.

[2]顾佩华, 包能胜, 康全礼, 等. CDIO在中国(下)[J]. 高等工程教育研究, 2012(5): 34-45.

[3]查建中. 面向经济全球化的工程教育改革战略[J]. 高等工程教育研究, 2008(1): 21-27.

[4]王向辉, 崔巍, 徐俊丽.基于CDIO的数据库课程教学改革方案研究[J]. 计算机教育, 2011(2): 38-41.

[5]韩智, 张振虹, 李兴娟. 基于CDIO理念的软件工程课程教学改革[J]. 计算机教育, 2010(11): 56-59.

猜你喜欢
收银面向对象理念
建筑设计应对低碳理念的相关思考
GEE平台下利用物候特征进行面向对象的水稻种植分布提取
建筑设计应对低碳理念的相关思考
低碳理念在建筑设计中的融入
浅析当前收银审核工作中存在的问题及对策
面向对象方法在水蓄冷PLC编程中应用分析
面向对象的组合软件工程研究
医院收银审核工作存在的问题分析与措施总结
互联网支付时代完善收银审核运行机制的措施
收银审核工作中存在的问题及对策