科研项目驱动的计算机软件论文

2022-05-01

【摘要】本文阐述传统的C#程序设计课程教学存在的课程入门受限、理论与实操脱节、课程教学手段创新能力不强等问题和不足,论述基于项目驱动的C#程序设计课程教学设计、实施与教学评价体系构建,并进行教学反思。今天小编为大家精心挑选了关于《科研项目驱动的计算机软件论文(精选3篇)》,供大家参考借鉴,希望可以帮助到有需要的朋友。

科研项目驱动的计算机软件论文 篇1:

“数字图像处理”小组课题驱动教学法探索

摘要:将小组合作分工法与课题驱动法有机结合并应用于光电信息类《数字图像处理》课程教学,通过引导学生以小组学习方式来解决与课程密切相关的课题任务,并贯穿于理论教学与上机实践应用之中,激发学生学习积极性、提高学生团体合作能力,帮助学生加深对课程理论知识和实际应用的理解。教学实践表明将小组分工合作和课题驱动相结合的教学方法能提高学生学习主动性和学习兴趣,有利于提高学生学习效率,强化学生分析问题、团队合作和解决问题的能力,增强学生综合应用能力和创新素养。

关键词:小组合作;课题驱动;数字图像处理;教学实践

《数字图像处理》课程是光电信息类专业本科生重要的专业课,要求学生掌握图像处理的基本理论、基本方法和实践应用。该课程学科交叉性较强,涉及学科领域较多,例如为了获取图像需了解光传感器的结构和成像机理,光学和电子学方面的基础;为了表示图像要用到矩阵论[13]、数学分析和随机过程;为了压缩对图像需要了解信息论与编码的基本理论;为了增强图像需要熟悉人类视觉的生理和心理特点 ,这给学生掌握本门课程增加了难度。而且,数字图像处理课程的理论性和实践性都较强,课程教学中存在着大量的数学公式及相关数学理论推导,需要学生有较好的数学基础,同时理论知识还需要学生上机编程实践才能更好地透彻理解理论知识,这对学生的编程能力又提出了要求。这些都给学生更好的掌握和学习本门课程带来了不小的难度。

目前,传统的《数字图像处理》课程教学模式以课堂教学为主、实验为辅,学生对课堂上的大量公式和数学理论推导感到枯燥和缺乏兴趣,对部分抽象课程内容难以理解。学生对理论实践比较感兴趣,然而仅仅学习过C、C++等通用型基础性程序设计语言,对MATLAB等高级编程语言接触较少,很难编程实现专业性的算法理论。造成学生对课堂知识点理解不充分,进而对降低课程学习热情,课后不能主动预习与复习课程知识,导致最终学习效果差,与课堂教学目的相偏离。为此,不少学者积极探索新的教学实践方式[9-11,14,16,19,20]来提高数字图像处理的教学效率和学生的学习兴趣。课题驱动[1]是一种引人注目的教学方式,在教学中的应用很多。[2-8,12]课题驱动教学[15]的教学方式将科研项目与理论教学相结合,使学生能具体了解到《数字图像处理》在生活实践中的应用。

然而,上述教学方式以一种课题驱动的方式驱使学生学习,未充分调动学生主动性,且缺乏同學之间在学习过程中的沟通交流与帮助,不利于发挥团体在学习过程中的作用。为此,本文将课题驱动与小组分工合作的教学方式相融合,该方法按照“学生为主体,教师为主导,以课题任务为驱动,以小组合作的方式”的教学思路,利用实践和小组相互帮助协调共同学习的方式巩固和加深学生对课堂内容的理解,激发学生学习兴趣,从而提高学生的综合能力。

1 “课题驱动”与“小组合作”的内涵

“课题驱动”教学法源于建构主义学习理论,将以传授知识为主的传统教学理念转变为以解决课题任务为主的多维互动式教学理念,调动学生处于学习积极性,使学生根据对课题的理解,运用既有知识和特有经验提出方案、解决问题。它尤其适用于以实验性、实践性、操作性较强的教学内容,把与教学内容紧密结合的科研课题作为载体,使学生通过完成特定任务来获得知识与技能。“小组合作”学习是以合作学习小组为基本形式而进行的一种教学活动,它强调人际交流对认知发展的促进功能,利用教学中动态因素之间的互动合作来共同达成教学目标的教学活动。这种教学法将班组授课制下个体间的学习竞争关系转变成“组内合作”、“组际竞争”的关系,将传统教学中师生的单向或双向交流转变为多向交流,在提高学生学习效率的同时,能促进学生间合作关系和社会适应性的发展,增强了学生心理品质,推动了职业素养技能的培育。

上述两种教学方法各有优点,但也有一些不足之处,比如,“课题驱动”教学法并未考虑学习者个体差异,而小组合作学习教学法则没有考虑所依托的学习内容。为此,可将两者结合起来实施教学,教师通过布置课题任务,鼓励学生采用小组合作学习的形式完成学习任务。这种教学方法融合了“合作探究”与“课题驱动”两种教学方式的优点,现已在一些教学实践中引起注意。在这种教学方式中,教师不仅仅担任传统知识传授中的单向传播者,而是要更多地发挥学生的积极性、能动性、合作性,以“课题驱动”帮助学生理解枯燥乏味的理论知识,以“小组合作”为手段,从而帮助学生更深层次地理解课程内容,培养团队意识等职业技能。

2 课题驱动—小组合作教学方法的实践应用

我们将上述课题驱动-小组合作分工的教学思想融和于光电信息类《数字图像处理》教学过程,探索出一种较为实用的教学方法,主要包括以下四个实施部分:

1) 用于教学任务的课题设置。由于《数字图像处理》涉及知识点繁多,而且与专业特点、专业实践紧密结合,在课题任务设置中,注意考察课题的难度和特点,既要与教学大纲紧密结合,又要激发学生兴趣,还应有一定挑战性。在课题来源选择上,主要来源于最新研究领域及热点和教师科研项目成果,比如人脸识别、人脸检测、校门车牌识别,基于深度学习的图像处理等。教师将最新的科研成果和研究热点及时引入课堂教学,能够培养学生的科研兴趣,促进学生较早地参与科学研究,锻炼他们的科学研究能力与创造能力。在第一次课上就对课题任务进行介绍,并指出预期目标,由易到难,让学生初步认识每个任务所涉及的图像处理领域,要求学生围绕课题任务开展自主学习,并在规定时间内完成相应的学习任务。

2) 学习主体——合作学习小组的分工与职责。在本教学法中,合作学习不仅仅是一种个人的学习行为,更多表现为一种集体行为,需要学生有足够的团队意识和积极的参与感。为了在公平基础上兼顾学生间的差异,要在自愿基础上精心设计结构合理的合作小组,这决定着小组合作学习能否顺利高效开展。总体而言,教学中遵循“各组实力尽量均衡,自愿组队性格搭配”的原则,依据学生个人意愿,自主学习效果、性格特点、组织协调、口头表达、编程能力等具体情况进行分组,学生之间先自由搭配,接着进行分组确认,按照学生总人数对每组人数限定为5~6人,对于少数基础较好、学习能力强的同学可允许4人组队。同时,每组指定一名组长,负责协调整个小组的工作,每个学生均需承担分解任务,不能存在侥幸心理,杜绝成员之间无所事事的现象。最终任务完成情况及小组分工等安排将在课堂上代表小组进行阶段汇报并接受同学提问评价。

3) 结合课题的教学内容设计。将课题内容与教学内容紧密结合,课程的教学内容的组织与课堂设计应该围绕具体任务来进行,注重针对课题的基本原理和基本流程来引导学生进行创造性思考和知识拓展。对于教学大纲及课题中涉及的共同重点、难点等问题应采用子专题的方式授课。在每个子专题授课前,应布置学生收集资料,自学相关的背景介绍,启发学生在学科发展视角来对某一项技术要点开展思考。在课堂讨论中,引导学生形成意识问题-梳理问题-凝炼问题-解决问题的基本思路。课后,要求学生消化整理课堂讨论的结果,积累解决问题必需的基础知识,获取解决问题的方法和手段并编程实现,最后对专题涉及的问题进行总结和归纳。实践环节的编程工具选择方面,应该注意课程性质特点,不应意味求难或求容易,可推荐学生选择MATLAB平台或Python等语言,要提醒学生在学习Basic,Java, C#等语言方面的预期困难和长远回报。与Microsoft Visual C++等复杂的编程环境相比,MATLAB平台简单,自带的图像处理工具箱集成了图像处理函数,能帮助学生方便地实现如图像读取、图像格式分析、图像直方图查看、灰度增强、直方图均衡化、分水岭分割等经典的图像处理算法,有利于学生快速上手,让学生将主要精力放在对算法思想的理解上,从而调动学生的学习主动性。在课程核心知识点的算法方面,例如图像空域增强、图像频域增强、图像边缘检测等,不允许学生直接调用系统自带函数,而要求学生自行编写,以达到透彻理解的程度。

在教学内容设计中,还应当注重激发学生的积极参与感。成员的积极参与性是小组合作任务顺利进行的关键和任务完成质量的保证。课堂理论内容尽量“精且少”,讲解方式应该在教师讲解基础上强化学生自学讨论,避免过深、过泛的内容讲解,注重引入最新的研究成果和国内外前沿知识,拓展本课程学习的深度与广度,激发学生的积极参与性与学习成就感,加强学生对本学科的认识和了解。通过投票评选表现最佳组员等多种方式,使学生在小组合作教学过程中获得成就感,增加自信心。与此同时,对小组成员的分工和个人任务完成情况进行了解,保证各尽其才,小组任务高质量完成,避免学生之间在任务分配和调度方面会存在的一些问题和冲突,这对后续的小组任务进行是极为不利的。

4) 课程评价方式的设置。为了在考核中体现学生参与小组合作任务的主动性与积极性,本文教学法可以采用课外作业、实验作业、理论考试等相结合的形式来考核学生对课程的掌握情况,也可以把平时完成项目情况作为基本依据计入学生总成绩;亦可增加上机操作,进一步考查学生对MATLAB等语言的掌握情况。此时需要设定平时成绩和理论考试成绩的比例。为保证学生过程性学习的重要性,以项目完成情况作为依据的部分成绩所占比例不宜太低。为进一步提升学生的学习主动性和创造性,还可以建立多样化的考评机制,为此,在教学实践中采取自我评价和小组相互评价的方式进行,在汇报小组任务的时候,要求小组长及小组成员自我评分自我汇总得出统一权重的成绩,接着,由开展了类似课题学习的其他小组对该组的情况进行打分评价,最后由老师对最终成绩进行汇总判定。和老师单独评价的方式相比较,采取小组自评和互评的方式更能激发学生参与意識,促进评分成绩的公平和公正,也有利于小组之间的借鉴学习,及时发现并改进本组的不足之处,更好地进行后续课程内容的学习和任务的推进。这种考核方式能够充分检验学生对课程重点、难点内容的掌握程度,切实激发他们学习的积极主动性和提高他们的动手实践能力。

3 结束语

本文根据学科专业特点,通过分析《数字图像处理》教学中目前存在的部分典型问题,结合本学科的研究热点、应用场景以及授课教师的科研项目,将课题驱动教学法与小组合作学习法有机相结合,应用于光电信息类数字图像处理课程的教学实践中,巩固了学生对课堂理论的理解,培养了学生的分析问题、自主学习、编程实现、总结表达和解决实际问题的能力,让学生真正地学以致用,提高学生的学习能力。通过课后调查学生对课程教学的真实感受,大部分学生反映课题任务设置合适,有助于深入理解课程知识点,所有学生认为采用小组合作方式学习效率更高,能更好地激发学习兴趣,遇到问题同学之间的及时交流可以帮助解决。部分学生表示对于学习目的以及学以致用的理解更深。教学效果表明,该教学方法克服传统教学方法所存在的弊端,较好地提高了学生的自主学习能力。学生较好地掌握数字图像处理的核心内容,了解当代图像处理的代表性成果和前沿趋势,综合应用能力和创新素养明显增强,为培养具有较强适应能力的应用型和创新型人才打下坚实的基础,同时也提高了学生的团队合作能力,适应了新世纪对信息技术人才的培养要求。 (下转第123页)

(上接第120页)

参考文献:

[1] 郭绍青. 任务驱动教学法的内涵 [J]. 中国电化教育,2006,234(7):57-59.

[2] 杨爱鑫.信息技术教学中基于任务驱动的小组合作教学法初探[J].教育与职业,2009(6):142-143.

[3] 吴海花, 王连山. 计算机软件项目教学改革的实践与探索—— 基于“任务驱动”的小组协作教学模式[J].考试周刊,2009(23):11-12.

[4] 刘文杰,吴婷婷,郑玉.基于任务驱动的小组协作Java教学模式研究[J].计算机教育,2010(20):55-57,61.

[5] 贺斌.基于小组协作的“任务驱动”式教学探微[J].甘肃联合大学学报:自然科学版,2008,22(1):102-105.

[6] 徐永明.浅谈计算机教学中基于“任务驱动”的小组合作学习法[J].时代教育,2013(8):59-60.

[7] 曲凌.任务驱动的小组教学法在实践教学中应用[J].实验室研究与探索,2014,33(6):200-203.

[8] 高月红, 张小美. 《数字图像处理》课程的驱动教学实践[J]. 科技视界, 2016(3):49-49.

[9] 肖志勇, 刘建军, 宋晓宁,等. 《数字图像处理》课程教学改革探索研究[J]. 教育教学论坛, 2017(3):86-87.

[10] 马 宁,周则明,梁妙元,郑君杰. 任务驱动—小组协作教学法在《数字图像处理》课程中的实践应用[J]. 教育教学论坛, 2017(1):158-159.

[11] 吕朝辉. “数字图像处理”课程教学改革与实践[J]. 高教论坛, 2010(11):58-59.

[12] 金炜, 周亚训. "数字图像处理"课程项目驱动教学模式的实践[J]. 中国电力教育, 2010(3):82-83.

[13] 白阿拉坦高娃. 《线性代数》教学中矩阵理论在图像处理中的应用[J]. 科技创新导报, 2017, 14(1):211-211.

[14] 李玉林. 基于项目教学法的图形图像处理课程改革初探[J]. 亚太教育, 2016(14):265-265.

[15] 陈锡爱,王凌,王斌锐,钟绍俊,郑恩辉. 基于项目教学的图像处理与模式识别课程教学改革研究[J]. 教育现代化,2017,(02):42-43+51.

[16] 梁志贞, 江海峰, 杨小冬. 具有行业特色的《数字图像处理》教学改革[J]. 现代计算机, 2015(23).

[17] 贺东霞, 李竹林, 王静. 浅谈数字图像处理的应用与发展趋势[J]. 延安大学学报:自然科学版, 2013, 32(4):18-21.

[18] 李蓉, 周维柏, 刘文平. 以“三基”教学理念主导“图像处理基础”课程教学改革探索[J]. 计算机时代, 2017(1):69-72.

[19] 宁纪锋. 数字图像处理教学改革研究与探索[J]. 中国电力教育, 2013(34):122-123.

[20] 陈 奋. 数字图像处理课程的理论教学和实践教学探讨[J]. 大学教育,2017(9):27-29.

作者:王旭初

科研项目驱动的计算机软件论文 篇2:

基于项目驱动的C#程序设计课程教学研究

【摘 要】本文阐述传统的C#程序设计课程教学存在的课程入门受限、理论与实操脱节、课程教学手段创新能力不强等问题和不足,论述基于项目驱动的C#程序设计课程教学设计、实施与教学评价体系构建 ,并进行教学反思。

【关键词】项目驱动  C#程序设计  课程教学  设计  实施

C#程序设计课程所教学的C#是微软基于.NET Framework平台所开发的面向对象的编程语言,不仅具备C语言和C++语言的应用特征,也全面继承了面向对象的开发思想,而且兼具Delphi与VB语言优势。C#程序设计课程的教学目标为:掌握C#语言设计程序的基本技能,掌握面向对象和结构化的程序设计思路与方法,完成实用性强、可读性强、规范性强的桌面应用程序的写、调和运行工作。从现阶段看,国内高校的计算机专业基本开设了C#程序设计课程,但多年来所用教学方法依然存在传统教学的弊端,并不利于学生系统性知识构建。为此,现代教学主张引入项目驱动教学法,项目驱动教学法有别于传统教学理念,是可以灵活变通和升级扩展的教学方法。对于C#程序设计这样的课程,要求学生动手实践能力够强,采用传统教学方法已经有些不合时宜,应在课程教学中引入项目驱动教学思想,从而持续有效提升学生的学习实践与合作创新能力。

一、传统的C#程序设计课程教学存在的问题和不足

(一)设计语言的学习基础与掌握层次有别,课程入门受限

初入大学的学生,计算机基础知识水平是有明显区别的,在深入学习计算机设计语言方面的情况更加复杂且不容乐观。很显然,硬件设施投入相对欠缺的偏远农村地区学生,计算机应用基础较弱,掌握新的计算机理论与技能的消化和吸收效率也较低;部分学生的计算机基础知识与应用理论学习毫无章法和规律,也无法集中注意力完成学习;有些学生对学习充满了反抗与厌恶,在学业上颓废消沉。除了这些主观因素,C#程序设计中的语法规则、多变表达形式、抽象程序设计思想等客观因素,同样让学生的学习处于被动状态。相关专业的学生在课程学习中,对于设计出像样的程序充满渴望却难以办到,在实践中多次出现错误后,也丧失了调试改进的能力与信心。因此,传统C#程序设计课程教学的不足首先就在于学生对课程的兴趣度不高,课程入门时受到诸多影响和限制。

(二)教学内容守旧,理论与实操脱节

随着时代的不断进步,计算机的软硬件技术都在快速发展,但教育教学的内容更新始终无法与计算机技术革新保持同步,许多内容都可能短时间被推翻和修改,大量课堂沿用陈旧的教学内容。不少计算机教师在设计中偏重程序语言,并未在程序设计的结构、逻辑上花大力气,更未明确学生需要在程序设计中完成怎样的目标,理论与实操存在脱节,以至于不少学生上过专业课程后,在实践动手创新方面并无起色,学生无法用实践操作来验证自己的理论所学,也就无法巩固和提升理论知识的构建,所有的知识点不能系统组合形成对解决实际问题有所帮助的实用性程序。

(三)课程教学手段的创新能力不强,教学效果不明显

C#程序設计课程的教师虽然多数在编程方面技术出众,但是要从教学的角度来传播C#程序设计的思想与内容,还有很大的上升空间。虽然大多数教师尊重课程改革所提出的多样化教学倡导,用多媒体教学替代了传统的“黑板+粉笔”板书式教学,但是又会出现另一个极端,就是教师开始过多依赖多媒体技术手段,PPT制作画面精良,但却没有取得明显的教学效果。课程教学手段的创新能力不强,学生自主探究的学习积极性就难以被激发,学生的课堂主体地位就难以得到真正的巩固,程序设计的教学只会压缩学生在课程教学中的学习创造力,发挥不出应有的教学作用。

二、基于项目驱动的C#程序设计课程教学设计与实施

(一)C#程序设计课程项目的设计

1.项目的合理化设置。项目设置是否合理化,决定了教学效果的好坏。C#程序设计课程中要运用项目驱动教学时,首先应明确设立项目,确保后续工作都能围绕项目合理化展开。通过项目在不断解析中学习,学生可体验到实战性的软件程序开发,从而积攒实战经验。

通常需要从以下几方面加强项目合理化设置:第一,项目应源于真实实践,具备典型性、实用性,关联学生日常工作、学习或生活,可自我识别并激发主人翁意识,放大课程学习兴趣。第二,项目应由教师开发设计,是教师深思熟虑后的成果,便于教师宏观上统领,微观处细化调整与控制。教师熟知其中重难点,因而便于实施针对性教学。第三,要控制好项目规模与难易度,超规模超难度的项目实施只会打击学生信心与积极性;小规模低难度的项目又不能在相同教学资源上得到最优教学效果。项目应涵盖所有知识要点、难度中等且具有挑战性,从这个角度出发选择项目,学生的热情度就会比较高。

2.项目的模块化分解。C#的知识体系庞大,内容点多,项目设定完成后就需要考虑多项目进行模块化分解,要让各模块具备独立功能,然后再次对各模块进行分解,直至可用不同知识点讲解不同模块时分解终止。通过模块化分解,模块与课程知识点之间的联系变得更加清晰,也能验证前期的项目设置合理性。若分解过程中出现某些知识点的遗漏,则应调整增设功能模块,确保知识完整。分解中的不同模块的知识顺序并不统一,需要教师在教学中进行适度调整。实际教学中,教师对融合知识点的不同子模块进行讲解后,就完成整个课程项目的分解,也增进了对相关知识的理解和掌握。当然,对于一些重要知识点而言,并非通过独立的单体子模块所融合的知识理解就能掌握,而是需要结合多个子模块来探索知识点的结构,并积极开展相应的实践操作才可有效掌握重点知识点。这样,通过模块分解将一个综合项目划分成了相对容易的子模块,不仅使得各个知识点融入模块中,学生在完成项目模块的同时也掌握了相关知识点,又可以使学生树立完成任务的信心,充分调动积极性和主观能动性。另外,通过教学实践发现,学生仅通过某个子模块的实践来掌握该模块涉及的知识点是不够的,还应对重要知识点设计多个配套小项目,让学生通过大量的实践真正掌握该知识点。

3.项目教学模式构建。项目驱动教学中,依然需要寻找恰当的匹配教学方法与手段。C#程序设计开发项目多基于网络B/S架构Web应用系统,因此会出现大量功能化的复杂模块,需要开发者在合作中才能出成果,因此在课堂上要鼓励开展小组式团队开发,以小组为单位来执行项目各环节决议。分组过程也含有一定的技术性,主要是确保组间同质、组内异质,这就需要教师把关,认真了解不同学生的优点与个人表现,综合实际情况来兼顾优等生与后进生的互补穿插。小组制项目教学过程中,小组长的责任重大,要富有协调统筹和决定权,各小组成员的责任分工也要明确,整体上推动小组团队开发取得实效。

(二)C#程序设计课程项目教学实施

1.专业人士前期辅导。C#程序设计所要培养的专业人才是面向专业技术岗位的,需要有正确的开发理念和超前的设计技术。因此,学校不应让课堂教学成为信息闭塞的孤岛作业,而是积极邀请富有项目开发经验的专业人士到校辅导。特别是在教师设定好一个项目后,专业人员要从工程角度或专业技术要求出发,为学生梳理项目开发流程,可以通过公开讲座为学生传授最新的项目开发理念与技术。学生在这样的学前辅导中,能更清醒地认识到开发流程与环节,激发热情,提高兴趣,真正保持激情與信心投入到学习中。

2.组织学生优选项目。教学开始后,教师就应引导学生合理选择项目。为了体现学生的课堂主体地位,文中建议不再沿用现今多数项目驱动教学中的惯用方式,即由教师前期设置项目并于启动教学后直接提出项目组织模块设计,学生只需接受教师指导完成开发即可。调整以后的思路应是:教学启动后,要求学生自己寻找项目,并经过学生小组讨论后提出项目,这样在全班中会出现多个项目,由大家集中选择其中的项目。原则上,教师应合理引导学生向已选项目靠拢,因为已选项目代表着教师已经做了充分的研究。

完成项目选题后,教师应尽快引导学生分析项目,并要求学生小组参考各种数据资料,并基于自己的认识完成项目的需求分析和可行性研究,同时将项目中的不同模块进行分解,再由学生讨论判定功能设定科学合理性。教师要注重以下两点:一是自己要结合已有经验,从工程理论与实践应用等角度科学分析学生分解的功能模块,给予必要的意见建议。二是对学生在查阅资料整理信息过程中所出现的创新想法,教师要及时给予肯定与鼓励,适度加载兼具创意与实用性的功能模块。

3.创新项目教学模式。基于项目驱动的C#程序设计课程教学开展中,本文主张可用情境教学法,但需要进行必要的修正和完善。教师确定项目后,可参考项目的真实存在场景来构建课程教学中的程序设计开发场景,确保所有步骤都在操作规程与技术规范范围内,增加学生了解真实项目开发的深刻度。当然,从C#程序设计的课程教学需求出发,应围绕实验室中心开展教、学、练多位一体的教学模式。这主要是考虑到C#语言设计的强实践性,若坚持重理论轻实践,课程学习的意义就大大降低。因此,教师在对相关知识点做必要的讲解点拨后,就要求学生动手,以完成各类实验去验证理论知识点,这样掌握知识要点才会更快,也才有可能实现设计开发创新。在多功能一体的实验室中开展课程教学后,学生随时可以对教师说的某些语法技巧与知识结构进行实验验证,能够第一时间加强印象,达到消化吸收的目的,学习效率容易得到提升。

(三)C#程序设计课程项目教学评价体系的构建

1.个人总结评价。课程教学过程中,当学生最终设计出产品后,教师和学生应从个人角度首先总结自查自评本项目的教学得失。教师要看是否为学生点拨到了教学方案中的所有重点,语法、多态、图形图像、网络编程、数据库等重点是否合理分配,是否有应用或开发编程风格的不正当误导,是否成功激发学生兴趣或与学生保持深度互动,还要自我反省对于课堂内容的控制有没有把握到位,是否已为学生的上机实操提供代码提示、程序调试、错误分析等专业指导。学生的自评主要包括:是否在教师的合理引导下加强创新和发散思维,是否将理论联系实操后加强练习,是否掌握C#语言程序设计思想与方法等。

2.小组交流与评价。采用C#语言完成程序设计开发后,班级的小组团队要首先对成员的作品进行检验和讨论,要给出中肯的点评。特别是对于其中出现的富有创新性的且具有实用性的正确设计思路,要多展开讨论交流,相互之间取长补短,不断完善自身的思维缺陷,不断强化自己的设计开发信心与技能。同时,小组中出现的主题鲜明且独创性突出的作品,教师要首先给予表扬,并利用自己的专业评价标准为学生解释作品的闪光点,鼓励大家共同提升开发信心与热情。

3.综合能力考核测评。C#语言程序设计的技术性突出,知识架构分支多且联系紧密,学生可以在不断学习练习中主动掌握分析与解决问题的能力。课程最终的考核测评方式还应该考虑以上机实验考核为主、以纸质笔试考核为辅的模式。成绩分三部分:一是日常表现,综合成绩占比40%,主要涵盖学生日常各功能模块完成情况、进度要求、重要知识点及不同项目完成情况。二是实操表现,综合成绩占比30%,整体考核学生对全项目的设计开发、安装调试等完成情况。三是笔试成绩,综合成绩占比30%,主查专业课程基本知识点掌握情况。可见,综合能力考核测评涉及学习、实践、创新三方面能力的综考,是十分标准和可行的手段。

三、教学反思

C#程序设计课程上所使用的项目驱动教学法,可以作为典型教法推广到其他课程教学中去。项目驱动教学法其实对教师有相当高的要求,也对学校培养高素质高才干的“双师型”教师队伍提出了更高要求。因此,学校要注重开拓路径加大“双师型”教师培养力度,如可积极开展教师专业性技能比武,外派教师观摩学习新知识、理念、技术、平台,鼓励教师合理规划时间适度参加培训进修、主动申报不同级别教学科研项目、主动进入社会企业中交流取经等。这些内容,对于培养C#程序设计课程的授课教师而言同样重要。

项目驱动教学在C#程序设计课程中的应用已经得到了很多人的认可,但是依然会出现各种不理想问题,这就需要我们积极保持基于项目驱动的C#程序设计课程教学创新。如教师不必自选项目而让学生通过整理、讨论、对比后进行优选项目,理念改变后对学生的帮助作用是明显的。随着课程改革的持续深入,项目驱动教学法还会在具体课程教学中得到完善和改进,以有效推动教学工作的开展。

【参考文献】

[1]田雪.项目驱动教学在《C#程序设计》课程中的研究与应用[J].信息与电脑(理论版),2011(11)

[2]陈翠红.项目导向、案例驱动在高职院校C#课程教学应用与实践探析[J].科技创新导报,2014(16)

[3]党兰学.项目驱动教学在C#程序设计中的应用与实践[J].科技创新导报,2014(17)

[4]司明,龙熙华吗,李占利.构建虚实结合的计算机专业实验教学平台[J].高教论坛,2014(9)

[5]滕金芳.C语言程序设计课程教学方法的探讨[J].高教论坛,2007(3)

[6]张振平.多平台构建虚实结合的计算机网络实验教学体系研究[J].无线互联科技,2016(22)

【基金项目】广西职业教育教学改革立项项目“项目导向教学法在《C#程序设计》课程教学中的应用研究与实践”(桂教职成〔2015〕22号)

【作者简介】蒋红军(1982— ),男,广西全州人,广西农业职业技术学院讲师,硕士研究生,研究方向:计算机软件、计算机网络。

(责编 苏 洋)

作者:蒋红军

科研项目驱动的计算机软件论文 篇3:

基于学习共同体的软件人才培养模式研究

摘要:从学习科学的角度分析普通高校软件人才培养方面存在的问题,以学习共同体概念为理论基础,介绍一种适用于普通高校的软件人才培养模式,目的是以较小的管理代价和实施代价为学生提供真实的项目实践学习。

关键词:软件人才培养;学习共同体;项目驱动学习

0、引言

示范性软件学院在软件人才培养方面起到了巨大的作用,但和中国飞速发展的软件产业相比,示范性软件学院的毕业生数量还远不能满足市场的需求。除了软件学院外,普通高校的学历教育仍然是软件人才培养的主渠道,大多数普通高校都开设了计算机软件的相关专业。但是,与国家级示范性软件学院相比,普通院校在学生素质、办学条件、师资队伍、校企合作等方面还存在较大的差距,人才培养方式与软件企业的用人需求间仍存在较大的矛盾,企业对毕业生的专业技能和协作精神等方面存在较多的抱怨。高校教育强调基础理论和稳定性,缺乏对最新技术的跟进和学生实践开发能力的培养,同时,学生在小学、中学、乃至大学的学习过程中始终存在“学习是学生自己的事情”这样一种学习观念,协同学习与协同工作能力较差。另外,软件企业的人才需求比较细致化,如软件工程师、界面设计师、架构设计师、测试工程师等,而高校在人才培养目标与课程设置上相对保守,毕业的学生在应聘某些职位时缺乏一些关键能力。

普通高校的软件人才培养模式研究一直以来是高校计算机专业教育教学改革的重点问题,笔者以华南农业大学人机交互工作室为例,介绍一种应用学习共同体理论的软件人才培养模式。

1、学习共同体

学习科学领域的研究者指出:“学习的问题不仅是认知的问题,更是情境的问题、社会实践的问题”[2]。在现代社会的知识体系中,相当一部分知识属于默会(隐性)知识,这些知识具有实践陛,不能像显性知识那样在课堂上通过教师的教授来学习,必须通过参与真正的社会实践来获取,而学习共同体正是学习默会知识的一种重要手段。

学习共同体(Leaming communmity)的概念来源于社会学,博耶尔对学习共同体作了如下定义:“学习共同体是所有人因共同的使命朝共同的愿景一起学习的组织,共同体中的人共同分享学习的兴趣,共同寻找通向知识的旅程和理解世界运作的方式,朝着教育这一相同的目标相互作用和共同参与”。学习共同体不是简单地把许多人组合起来为同一个任务而工作,拓展任务的长度和扩大小组的规模都不是形成共同体的最主要因素,关键是要与社会联系,要通过共同体的参与在社会上赋予学习者一个合法的角色(即活动中具有真实意义的身份)或真实的任务。

2、软件专业学习共同体建设

软件开发是一项技术性、创新性、合作性都很强的工作,强调团队协作,其中包含需求分析、设计、编码、测试、实施、维护等不同的子过程,还涉及项目管理、风险分析等众多因素,这里面既有大量的显性知识,也存在很多无法传授的默会知识。这些默会知识无法通过课堂上的讲授和学生的自我学习获得,只能在工作或实践的过程中获得。我们希望应用学习共同体的理念来改善普通高校软件人才培养存在的实践能力缺失问题。

笔者所介绍的学习共同体全称为“华南农业大学人机交互工作室(Human Computer Interacti-on Studio,简称HCIS)”,可将其理解为一种特殊形式的学习型组织,它在学习形式和管理方法上与一般的学习型组织有较大的区别。HCIS的主要目的是帮助其成员学习软件项目的开发,以项目驱动的学习方式学习专业技能,以协商的方式组织管理这个共同体,成员们具有共同的学习兴趣,通过协作、交流、讨论等方式在课余时间进行学习与实践活动;成员自愿加入,无需身份界定,彼此相互信任;共同体内的资源(经验、知识)共享;成员中的新手通过学习交流发展成为老手,每一年都有一些老手毕业离开,更多的新手加入,共同体不断发展,形成并沿承一种良好的学习氛围,培育一种集体合作精神。

HCIS正式成立于2007年,发展的初期并没有使用学习共同体的概念和理论,它是一个由教师引导的“第二课堂”性质的学习小组,一些对软件开发感兴趣的学生在教师的指导下利用课余时间进行项目开发的实践学习。这种学习方式能够培养学生软件开发的能力,特别是在就业的时候,HCIS的成员表现出更强的竞争力,近两年来每一年都有大量的学生申请加入。随着人数的不断增加,学习小组的形式与管理方式已经无法满足共同学习的需要,我们逐渐意识到这种学习型组织的成功与发展需要教育理论的支持,近两年来开始应用学习共同体与实践共同体的理论指导HCIS的发展,淡化教师的管理作用,以学生自主学习与自我管理为主要组织形式,取得了明显的效果。

在这个学习共同体中,我们把所有参与者的身份定义为学习者与助学者,这种身份的定义是比较模糊的,学习者在某种情况下也会成为助学者。就像布鲁纳指出的:“在学习共同体中,教师不一定会成为专卖者,而学习者们也有能力相互成为支架”。学习者指的是HCIS的学生成员,来自于不同的专业和不同的年级。助学者被划分成内部助学者和外部助学者,内部助学者主要是指某一学习领域的专家,即学习者中的老手;外部助学者包括指导教师、企业中的软件工程师等,外部助学者通过专业报告和指导的方式帮助学习者。

学习共同体强调合法的边缘参与,即为新手提供边缘参与经验。HCIS每年都会招收一些新成员,新成员可以根据自己的学习方向加入不同的学习部门。这些新手通过观察、模仿、交流、建议等方式逐步地融入到这个共同体之中,在身份从新手向老手转换的过程中完成实践学习的过程。我们看到,这种身份的转换并不是简单的类似于“传帮带”的学徒制,而是通过积极地参与、协商、交流等多方面的学习实践来完成。事实上,由于软件的开发涉及到不同的专业领域和不同的专业知识,每一个项目的完成需要多方面的协同工作,新手在实践学习的过程中需要和众多其他的学习者进行交流协商,所以这种身份的转换是一种综合的过程,表现为一种合力的作用。同时,在身份转换的过程中成员自然而然地对共同体形成一种情感上的依托和归属感,具体表现为一种良好的学习氛围与集体精神。正像仇丽君等人对成员身份转换所提出的观点那样:“在学习共同体中,成员通过身份的转变,不仅获得了知识上的分享,也获得了思想上的交汇和情感上的满足”。

HCIS在管理上并不使用严格的规章制度,而是通过成员的协商制定一些指导性的规范,规范的执行更多地依靠一种集体精神,这与其他学习型组织是有差别的。具体的管理工作由学生中推选出的一些管理者完成,管理者的身份在学习的过程中自然形成,这种身份的获取体现了一种集体的认同,管理者都是技术上的专家,他们要花费一些时间做一些管理和学习指导的工作。我们发现,这些成员对这样的管理工作充满热情,他们的组织与交流能力也有了明显的提升。

3、项目驱动的实践学习过程

HCIS被定义为项目驱动的学习共同体。成员采用完全自愿的加入与退出机制,这种方式能够避免项目驱动学习中“消极参与”的问题。软件项目的开发涉及到多方面的内容,需要拥有不同技术背景知识的项目开发人员。因此,HCIS也被细分为4个学习部门:前台开发部、后台开发部、系统部和测试部,成员根据个人兴趣选择合适的部门参与,每一个项目的成功完成与实施都需要4个部门成员的共同参与。项目组的构成一般包括4~8名成员,分别来自不同的部门,其中有1名或2名老手作为项目组的负责人,老手指的是经历过项目开发并具备较强技术能力的成员,他们负责项目的整体计划、调度、管理和实施。项目的实施主要包括3个步骤:(1)项目的需求分析与任务的分配。项目在共同体内公开发布,感兴趣的成员可以报名参与,不同部门的成员组成项目组,进行项目的需求分析、任务分解,工作计划制定。(2)学习过程中的实践开发。项目组成员需要对项目所涉及的专业知识进行学习交流,对项目的设计方案进行讨论协商,并完成具体的代码编写与软、硬件配置工作。(3)项目的测试与评价。项目组在项目完成后,首先进行组内测试,然后提交到测试组作更全面的软件测试。HCIS每两周会有一个项目报告交流会,在会议上指导教师和其他成员对项目的完成情况作出评价、给予建议,项目组对项目中存在的缺陷或不完善的部分进行改进。

通常情况下,老手都是那些高年级的学生,低年级的新手则通过项目开发过程中的观察、交流和实践学习默会知识,获得开发经验,边缘参与的方式更容易被新手所接受。当新手成长为老手后,共同体倡导的分享精神使得他们愿意为后来的新手提供帮助,从而形成一种良性循环。在项目的实施过程中,新手可以向其所属部门的专家请教专业知识,通过学习、交流、协商的方式获取专业知识和实践经验。老手负责项目整体的管理与技术指导,在整个项目实施的过程中继续深化他对专业知识的理解,提高解决技术难题的能力,锻炼交流与管理能力。为了尽量保证实践情境的真实性,HCIS的项目均来自于现实需求,包括指导教师提供的科研项目、学校内部需求的信息系统与网站、HCIS内部的一些管理系统,学生负责申报的省级或校级大学生创新项目等。

从实践情况看,学习共同体的组织形式取得了很好的效果。成员们表现出较强的专业能力、创新能力以及自主学习能力,在学术论文、竞赛、项目开发、就业等方面表现得极为突出。成员们普遍认为在HCIS中的学习过程是愉快的,项目实践学习的方式调动了他们学习的积极性,掌握了很多课堂学习无法学到的知识,提升了他们的专业能力、交流与团队协作能力。已经毕业的同学认为在HCIS的学习经历对他们的工作很有帮助。

4、结语

学习共同体提供了一种新型的学习环境,旨在纠正或强调以成人为主导的传统的课堂教学,使学习活动的参与者在共同完成学习任务的过程中相互帮助、协同工作,充分发挥学习者的主观能动性。学生以项目驱动和协作学习的方式掌握了最新的软件应用技术、积累开发经验、提高交流能力与自主学习能力、培养了创新能力与团队协作精神。

作者:司国东 宋鸿陟

上一篇:行政事业单位内部财务控制论文下一篇:高职护理专业学生学风建设论文