基于极限编程的计算机专业本科毕业设计模式

来源 :中国校外教育·综合(上旬) | 被引量 : 0次 | 上传用户:matingf
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  近年来,大多数高校计算机专业毕业生的专业素质跟不上时代发展的步伐,在工作中综合运用所学知识解决实际问题的能力达不到要求。本文从传统方式下计算机专业毕业设计存在的问题出发,提出了基于极限编程的计算机专业本科毕业设计模式,并对该模式进行了教学实践研究。
  极限编程 毕业设计 教学实践
  一、前言
  近年来,尽管大学本科毕业生的数量在大幅度增长,但质量却并不令人满意。很多毕业生在工作中只能做一些基础性和辅助性的工作,无法成为单位的主要科技力量。大学毕业生质量滑坡的原因虽然是多方面的,但从本科教育的角度来看,就是我们培养的学生走向社会后,综合解决实际问题的能力达不到要求。
  计算机专业毕业设计是本科教学中的最后一个环节,对于训练学生综合运动所学的理论知识与实践技能分析问题和解决问题的能力,培养学生的创新能力和初步科研能力的起着至关重要的作用。
  二、传统方式下计算机毕业设计存在的主要问题
  从某种角度上来说,本科毕业设计是一扇窗口,其成果是对计算机专业本科教学质量的全面综合检验,同时也是用人单位选拔人才的重要依据之一。近年来,由于扩招以后师生比例过低以及教育观念的改变,目前很多高校本科毕业设计存在着不少问题,毕业设计的作用正在逐渐减弱,毕业设计的质量呈逐年下滑的趋势,已引起了教育专家的广泛关注。由于计算机技术的发展速度最快,相比之下,计算机专业毕业设计的问题就更为突出。
  1.流于形式,不能有效提高学生的综合实践能力,达不到预期效果
  多年来的实践表明,每届学生在进行毕业设计的时总是虎头蛇尾,过程平淡甚至经常出现消极状态。
  通过考查我们了解到计算机专业的学生对毕业设计是既期待,又担心。期待是因为希望过毕业设计提高和锻炼自己综合运用所学知识分析问题、解决问题的能力,真正体验一次做项目经理或数字蓝领的感觉,担心的是怕答辩过不了关。然而,当毕业设计真正进入实质性阶段后,各种问题就开始慢慢出现,而且越来越多,工作进度缓慢,偶尔还会出现一两个星期都没有任何进展的情况。于是,学生们的情绪便立刻降到了低谷。然后便慢慢转入一种消极被动的状态。当答辩时间越来越近时,学生们便开始慌乱起来,便着手思考如果过关的问题,普遍的做法是草草弄个系统应付交差,答辩能勉强通过即可。因此,很我学生虽然参加了毕业设计,但动手实践能力并没有实质性的提高。
  2.理念陈旧,闭门造车
  目前,大多数高校计算机专业毕业生的专业知识和技能跟不上时代的要求,与社会对计算机软件开发人员专业素质的要求脱节的现象十分严重。近几来,许多高校在毕业设计宏观管理方面上取得不少的成果,但在毕业设计教学模式与前沿技术和先进理念相结合方面所做的研究还十分有限。
  近年来,软件工程领域产生了许多新的方法和技术,包括:敏捷软件开发(Agile Software Development)、极限编程(eXtreme Programming,XP)、测试驱动的开发(Test-Driven Development,TDD)、面向Agent的软件开发(Agent-Oriented Development)、面向方面的编程(Aspect-Oriented Programming,AOP)、模型驱动体系结构(Model-Driven Architecture,MDA)等。与传统的软件工程方法相比较,这些方法和技术为软件工程实践提供了新的思路,已在许多软件工程实践中取得了积极的效果。
  然而,多年以来,传统的软件开发理念和技术一直是高校计算机专业本科毕业设计的主流。很多先进的理念和技术学生们都没有接触过,毕业后根本无法适应新工作的需要。
  3.能力强的学生不易体现优势,能力弱的学生难以完成任务
  随着信息时代的到来和计算机软、硬件技术的飞速发展,信息技术的应用已渗透到各行各业,软件开发平台、软件工程方法和应用系统规模随着时代的发展不断升级。传统的以“单打独斗”为主的毕业设计模式对于强、弱两极学生的影响尤其明显。
  对于动手能力强的学生来说,虽然能够顺利完成任务,但由于没有形成团队,仅靠一个人的力量难以开发出符合社会要求、能够投入实际应用、具有一定规模的应用系统,再强的能力得不到充分的体现。而对于能力弱的学生来说,要独立承担一个毕业设计选题又确实非常困难,必须依靠他人的帮助才能勉强交差,由于这种帮助纯属义务,帮助者与被帮助者之间既没有共同的责任,也没有明确的目标,无法形成正式的合作关系。当施助者因为各种原因无法继续帮助受助者按部就班地完成任务时,部分同学为了过关就开始铤而走险——弄虚作假。
  4.选题的时代性不强,实用价值不高,不利于培养学生的创造性思维能力
  很多老师多年来的选题都一直是那几个,跟不上时代的脉搏,不能充分体现实用价值。一些老师明确表示:“学生做能得出这些选题就不错了,不敢搞什么新花样”。
  计算机专业本科学生做毕业设计属于研究与设计方面的工作,就像我们的老师做课题,应该具有时代特征和一定的实用价值,这样才能体现研究的必要性和研究价值。不仅如此,学生做毕业设计的选题还要与面向能力的复合型、应用型人才的培养目标相结合。所以,如何结合社会对软件人员专业素质的要求,设计出更多更好的有利于培养学生创造性思维能力的选题,从整体上提高毕业设计选题的质量,也将成为毕业设计教学实践改革的重点之一。
  5.答辩与评价机制不完善
  传统方式下的计算机专业本科毕业设计答辩及成绩考核有两个较为突出的弊端。一个是答辩主要由学生的讲解和老师的提问两个环节组成,这种考核评价方式不仅过于简单,而且容易造成答辩走过场,不能全面考核学生综合应用专业知识分析解决问题和管理、协调工作等方面的能力。另一个是考核只局限于个人成绩,而在现实工作中,单人单干软件开发的模式无论从工作量还是从技术能力的角度来说都不能适应社会的需求,团队开发模式才是必然的结果。因此,学生毕业设计成绩的考核应该除了个人成绩以外,还应该包括集体成绩。   三、基于极限编程的计算机专业本科毕业设计模式
  1.敏捷开发与极限编程
  敏捷软件开发方法并不是一个具体的过程,而是一个涵盖性术语,“敏捷”这个词是指软件开发的一种理念。敏捷开发方法主要有极限编程(eXtreme Programming,简称“XP”)、特征驱动的开发(Feature Driven Development,简称“FDD”)、动态系统开发方法(Dynamic Systems Development Methodology,简称“DSDM”)、自适应软件开发(Adaptive Software Development,简称“ASD”)以及SCRUM方法等,其中,最具代表性的敏捷方法当属极限编程。
  极限编程(Extreme Programming,简称“XP”)是由KentBeck于1996年提出的,是一种以编码为核心任务并且经历过实践考验的轻量级软件开发方法,是敏捷软件开发方法中最著名的一个。它的基础和价值观是沟通、简单、反馈、勇气和尊重。
  XP是一种近螺旋式的开发方法,它将复杂的开发过程分解为一个个相对比较简单的小周期;通过积极的交流、反馈以及其它一系列的方法,开发人员和客户可以非常清楚开发进度、变化、待解决的问题和潜在的困难等,并根据实际情况及时地调整开发过程。极限(eXtreme)是指,对比传统的项目开发方式,XP强调把它列出的每个方法和思想做到极限、做到最好。
  2.在毕业设计中引入极限编程的意义
  计算机专业本科毕业设计的主要目的是对学生四年所学知识的一次综合检验。由于传统模式中存在上述若干问题,经过深入研究,我们在毕业设计模式中引入了极限编程的敏捷软件开发方法,称为“基于极限编程的计算机专业本科毕业设计模式”(以下简称为“XP模式”)。
  首先,XP模式强调完整团队的合作,并要所有项目参与者(开发人员、客户、测试人员等)一起工作在一个开放的场所中,业务人员和开发人员应该在整个项目过程中始终朝夕在一起工作,以便进行面对面的交流和沟通。对于在校大学生来说,宿舍就是一个现成的可朝夕在一起工作的开发场所,对于实践XP模式来说环境条件完全具备。。
  其次,能够最大限度的发挥优秀学生的优势,让能力较弱的同学取得最大的进步。极限编程在任务阶段,任何一位程序员都将寻找一位同伴、在同一台电脑上共同完成编程任务,称为结对编程。在结对编程的过程中,能力强的学生的既能充分发挥他的能力为集体做出突出贡献,为了使能力弱的同学也能为团队出力,能力强的学生有责任帮助能力弱的学生以使其尽快能投入到毕业设计的工作中来。
  第三,作为一种轻量级软件开发方法,极限编程有于提高工作效率,树立成就感。鼓励从最简单的解决方式入手再通过不断重构达到更好的结果,这就是极限编程所倡导的“简单”的标准。传统的软件开发过程强调设计先行,任何系统的开发在代码编写之前首先要设计出一个完美的模型。另外,传统模式中测试是在全部编码都已完成之后才进行,一般的经验是,如果编码使用了20%的时间,测试至少要用掉40%以上的时间。而XP提倡在开始写程序之前先写单元测试,每一次修改了程序之后,都要运行测试代码来检查程序是否有问题,这种方法可提高学生的工作效率,还可避免过多的重复劳动,学生能较快地获得成就感。
  3.基于极限编程的计算机专业本科毕业设计模式
  我们将基于极限编程的计算机专业本科毕业设计模式分为以下五个环节:
  环节一:对学生专业素质与心理特征进行调查。
  对学生专业素质与心理特征进行调查是XP模式环节中的第一步。主要工作是考查学生已有的专业基础理论水平、实践技能以及心理特征。掌握学生进行基于极限编程的毕业设计的优势和存在的问题,研究合理运用优势、解决现有问题的方案。调查毕业班学生目前所具备的知识水平、实践技能、心理特征、协作能力等情况,根据调查结果分析学生进行基于极限编程的毕业设计可能存在的问题和不利因素,针对问题及时进行解决。
  环节二:基于极限编程的毕业设计科学选题策略。
  由于做毕业设计项目的学生绝大多数都没有项目实战开发经验,面对学科提供的一堆选题往往都比较茫然,不知道该如何入手。为此,可从以下三个方面去启发和引导学生:
  开设一门小课时的专业选修课,给学生讲解敏捷软件开发理念、极限编程相关知识和结合我院实际的XP模式实施办法,使学生充分了解分组合作的意义,帮助学生克服心理上的畏难情绪,树立信心,相信团队的力量,并初步设计自己在XP方法中所扮演的角色,定位自己的在本次毕业设计中的目标。
  举行一次选题讲座,让每一位指导教师针对自己所设计的选题从意义、规模、关键技术、计划人数和人员结构等角度进行一个概述性的介绍,使学生对所有选题都有一个初步的了解。
  举办一次毕业设计双向选择交流会,让学生在明确毕业设计方法、初步了解选题的前提下与指导老师有一个充分交流、了解的机会。学生通过等量选择指导老师后,指导教师利用交流会提供的机会让和学生面谈,更加具体地了解学生的情况和想法。
  环节三:毕业设计项目开发小组分组方案。
  分组是XP模式中一个非常重要的环节。科学合理的分组不仅能够使工作顺利开展,还能提高毕业设计的效率和质量。分组过程可以依次分为以下几个步骤进行:
  第一步,同题同组。选择了同一个题目的学生自成一组,这种情况下可能出现两种情况,第一种是选择同一题目的人数刚好合适组成一组,第二种是选择同一题目的人数过多或过少,出现这种情况就需进入第二步进行调整。
  第二步,选题同一题目的人数过多时可考虑将部分学生调整到同类选题但人数较少的小组中去,选题同一题目的人数过少时当然得考虑另外接收新成员的问题了。
  在XP模式中,每个对项目做贡献的人都应该是项目开发小组中的一员。良好的团队结构可以减少人员因素对项目的影响。
  环节四:基于极限编程的毕业设计指导方法。
  由于绝大多数学生是没有实际开发经验的,所以,无论是传统模式还是XP模式,指导教师在整个毕业设计过程中的指导工作是非常重要的。
  XP模式下,指导教师对学生毕业设计的指导过程和指导步骤为:进度控制——技术性指导(贯穿全程)——阶段性工作小结——工作总结。
  进度控制:负责控制毕业设计的总体进度,及时了解项目开发的情况。
  技术性指导:指导学生使用增量式开发,密切关注结对编程的状态,给予学生技术性指导。对于难度较大的软件,可以先做出基本功能,然后再逐步增加和完善功能。
  阶段性工作小结:按计划对阶段性成果进行考查,进行阶段性工作小结,并作好会议记录。
  环节五:基于极限编程的毕业设计成绩考核办法。
  XP模式既强调团队的协作力量,又重视每一位成员的为项目所作的贡献。基于极限编程的毕业设计成绩的考核也要充分体现这两点。具体做法是:
  第一步:集体考核。制定小组成绩考核标准,主要包括系统质量、工作效率、协作情况等各项成绩的评定。
  第二步:角色(个人)成绩的考核。主要包括:实习态度、综合运用所学专业知识与技能的能力、完成角色分工任务的情况、角色工作任务以外的协作能力与贡献等。
  第三步:毕业设计综合成绩评的最终认定。将质性评价与量化评价相结合,最终得出每一位同学在本次毕业设计中的最终成绩。
  基于极限编程的计算机专业本科毕业设计模式将使合作的学生能更有效地交流,相互学习和传递经验;能有效提高设计的质量和代码的质量;训练学生更强的问题解决能力;有利于学生在工作中获取更多的成就感与满足感。
  参考文献:
  [1]陈鹤鸣,汝一飞.本科毕业设计模式改革的探索[J].电气电子教学学报,2009,(9).
  [2]马静媛,薛惠.极限编程在高职计算机专业毕业设计中的应用[J].电脑知识与技术,2009,(3).
  [3]极限编程.百度百科.
  [4]刘竹松,李振坤,王文彦.极限编程在计算机本科毕业设计中的应用[J].计算机教育,2007,(7).
  基金项目:贵州省教育厅教学研究和教学改革项目([2011]第10号)。
其他文献
本文系作者在湖北省各县(市)土肥站长培训班上的讲稿,经整理而成。文章中回顾了国内外计算机在土肥工作中的应用概况,简要介绍了几个目前在国内有一定影响的推荐施肥专家系统,并对
<正> 一、国际竞争力研究发展的简明考察 在当今充满着竞争的世界经济中,一国竞争力的强弱,不仅直接影响着这个国家的经济增长和生活水准,而且关系着该国未来的地位和前途。
简述了聚合物电解质的特点和发展前景,介绍了聚醚型聚氨酯、聚硅氧烷改性聚氨酯、聚丙烯腈改性聚氨酯、聚丙烯酸酯改性聚氨酯作为聚合物电解质基体材料的最新研究进展。聚氨酯
简要介绍了形状记忆聚氨酯(SPU)的结构特点及其与普通聚氨酯的区别,讨论了形状记忆聚氨酯不同的聚合单体对其超分子结构(微相分离)及主要应用性能的影响,对SPU在其临界相转变温度Tc
黄迪君教授是成都中医药大学博士研究生导师,从事临床、教学、科研近40载,知识渊博,学验俱丰。尤其擅长治疗疑难杂证,临证屡起沉疴。吾随师临证期间,深感其治学严谨、辨证施治、集
综述了含天然纤维素的植物原料在聚乙二醇和聚酯多元醇中进行液化及制备改性聚氨酯(PU)。介绍了植物纤维改性PU、玉米秸杆改性PU、稻草改性PU、甘蔗渣改性PU、树皮改性PU的性能
概述了中日第四次聚氨酯工业界技术交流的内容。介绍了两国聚氨酯工业的发展动向,聚氨酯弹性胶粘剂、密封剂、建筑工业用聚氨酯泡沫材料以及CFC发泡剂的替代物等近期的研发概
<正> 最近,美国政府向各联邦研究与发展部局下达了一套内容广泛,涉及科技政策、优先项目和财政拨款原则的文件,作为各联邦局制订1996年度财政预算和估价它们正在进行或已经提
TheliteratureonthemagneticpropertiesofrareearthionsRE3+isenormous[1,2],andthemagneticcharacteristicsofrareearthorthophosphat...
采用两步法制备水基石墨烯纳米流体并进行表征,使用乌氏黏度计测量水基石墨烯纳米流体在15~45℃时不同质量分数(0.03%、0.07%、0.10%、0.15%)下的黏度。结果表明,水基石墨烯纳米流