软件工程教学中存在的问题及教学策略探讨

来源 :中国现代教育装备·高教 | 被引量 : 0次 | 上传用户:cicf1986
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:软件工程是高校计算机专业学生的一门必修课程,文章分析了软件工程教学过程中存在的问题,并从教学内容、教学设计和教学评价体制三个方面对其解决策略进行了的探讨。
  关键词:软件工程;案例教学;项目驱动;反思性评价
  
  软件工程是为计算机专业本科生设立的一门专业必修课程,早期是计算机专业研究生的必修课,近些年设置为本科教学内容,面向高年级计算机软件与应用学生开设。本课程旨在使学生掌握软件工程的基本原理、概念与技术方法,在让学生在了解有关知识与方法的同时,学习如何采用系统化、规范化和可度量的工程化方法将软件开发技术和软件的工程化管理以及软件开发环境等方面结合起来并运用到实际的软件开发与维护工作中。
  
  一、软件工程教学中存在的问题
  作为计算机专业的一门重要必修课程,软件工程能为学生今后从事计算机大规模软件开发与维护工作打下坚实的基础,对于学生而言是不无裨益的,但在实际的教学过程中往往许多学生对这门课程并不感兴趣,不愿学或学不进去,甚至听不懂。通过近几年从事软件工程课程的教学工作及与学生之间的交流沟通,笔者发现学生之所以如此的原因有多方面,其中与教学环节息息相关的主要问题如下:
  1.学生对课程定位有误
  软件工程是一门综合性很强的课程,除了计算机科学,还涉及数学、管理学、经济学工程学等多种学科,这一特点决定了软件工程是一门很抽象的课程。软件工程的教学目的是通过学习软件工程的基本原理、技术与方法,将其应用于指导软件开发的全部过程,但学生往往在刚接触该课程时对课程的教学内容和教学目的存在误区,许多学生在拿到教材时竟误以为是学习如何编程的科目。由于学生对课程认识最初的误区,导致学习一开始就存在盲目性,在学习过程中也存在着现实落差,会影响后续的课程学习。
  2.理论性强、课时有限导致教学效果不理想
  与计算机专业的大部分专业课程相比,软件工程的理论性强尤为突出。通过该课程的学习,学生必须具备扎实的软件工程理论知识,并熟练掌握软件设计、开发、测试、维护技术。正因如此,大部分高校选用的都是偏重理论教授型的教材,可操作性较差,从软件工程的基本概念、开发模型到软件生命周期中的每一个环节、技术手段、实现方法,教材中目之所及全是理论,导致学生在学习的过程中需要记忆大量的文字内容。由于理论课时有限,教师在课堂上势必采用照本宣科、满堂灌的教学方法,从而引起学生的反感。其次,若没有足够的时间消化,进而系统地学习,该课程前后内容易混淆,同时大量的文字内容也导致学生在课余提不起看书的兴趣。
  3.实践性要求高但缺乏锻炼的契机
  在课程的教学中如果一味讲授,而较少给学生提供实验尤其是项目环境,学生也会觉得该课程难于理解、用处不大,进而导致厌学的情绪。由于计算机专业学生毕业后很大一部分从事软件研发相关工作,因此该课程的实践教学也将直接影响到学生毕业后的项目开发及管理能力。但是传统的软件工程实验教学模式无法给学生提供项目锻炼的契机,原因如下:
  (1)文档欠缺规范化机制
  由于实验条件受限,老师仅给出项目各阶段文档模板,要求学生按规格编写相应文档,但往往没有企业项目开发中的严格评审机制,学生很难建立标准化、规范化思想。
  (2)学生难以参与软件开发的全过程
  学生在实验教学中开发的系统仅仅作为作业提交给教师,教师大概的检查代码,而没有严格的代码走读过程,也未交付用户使用,没有真正意义上的验收测试,更别谈维护。学生无法发现各阶段中存在的问题,因此对软件工程的实验认识仅仅停留在与编程语言课程的实验同一高度。
  
  二、软件工程教学策略的探讨
  针对上面提到的软件工程教学中存在的问题,结合实际教学经验总结,要改变软件工程教学现状,达到理想的教学效果,根源在于改变教学内容安排与教学方式,合理设计教学,激发学生学习兴趣及学习的主动性。作者认为可以从以下几个方面着手:
  1.根据学生初始认知结构,调整教学内容安排
  本课程的学习者多为大学三年级学生,之前已系统学习了程序设计基础、面向对象程序设计、数据结构和操作系统等课程,学生大都具备了一定的计算机程序开发能力,具有学习本课程的知识基础。
  虽然软件工程教学内容上较少体现与其他计算机课程的综合,但软件工程与其他计算机课程都是相互作用和影响的。除此之外,软件工程课程自身的知识体系内容也是前后联系相互渗透的。因此,在教学内容的安排上应该注意该课程与其它相关课程间以及该课程前后内容之间的相互联系与知识渗透。
  首先,从计算机专业课程体系结构着手,站在系统的角度为学生解释专业课程体系,让学生对软件工程可程在专业知识体系中所处的层次和地位有一定了解,以避免后期的盲目学习。我国目前计算机专业的本科教育中,课程体系可分为以下几部分:程序设计语言、数据结构、人机交互、程序设计方法论和软件工程。教师可将已开设和未开设的课程分别划入到这几类中,通过实例让学生理解软件工程的课程性质以及它与其它专业课程之间的区别和联系,帮助学生形成对课程的正确认识及认识到这门课程的重要性。通过对课程体系的了解,学生也可以在平时的学习中自主地将已学的相关课程知识融汇贯通到软件工程的学习过程中。
  其次,由于软件工程生命周期的各阶段相互联系紧密,学生很容易在学习过程中与前期的内容混淆,因此,在每一个章节的伊始,教师应以该内容环节为要点对软件生命周期模型进行分析,找准该章节在整个周期中的地位与作用,同时也起到了知识的复习与巩固作用。其次鉴于分析方法和设计方法的相似和共通性,在学习相关知识点时,可将前面内容的复习与新内容的学习一起进行,也可以帮助学生在学习的过程中区别记忆,加深对知识结构的理解。
  2.以案例教学为主的理论教学策略设计
  传统的填鸭式教学方法,以教师作为课堂主体,学生被动的接受老师灌输的大量理论,很难激起学生学习的热情,因此传统的教学方法不适应软件工程的教学需要,而采用案例法的教学则可以解决这一弊端。
  案例教学法系指教师在教学过程中,以真实的情境或事件为题材,提供学生相互讨论之用,以激励学生主动参与学习活动的一种教学方法。
  案例法教学分三个阶段展开:
  第一阶段,重难点精讲。以教师为主导,对授课内容中的重点难点进行精讲,在这个过程中要充分利用好的教学手段如多媒体教学,以提高授课效率。这一过程可为后期的案例分析教学做好充分的准备。
  第二阶段,案例抛出。以学生为主体,教师布置相关案例,学生进行分组,教师引导学生进行深入讨论,让学生扮演项目开发中的各种角色,模拟真实开发环境。以需求分析阶段为例,学生可以扮演项目经理、开发人员和用户,大家各抒己见,通过激烈讨论来实现最终的分析结果,并在课后形成文档,以作业的形式提交。
  第三阶段,总结。学生讨论结束后,由各组派一代表向教师汇报讨论成果,组与组之间可以相互交流经验。对于学生在案例分析过程中遇到的问题,教师可依据实际经验解答;对于学生在案例分析中忽视的一些客观存在的典型问题,教师提出补充。
  案例教学法对教师本身的素质要求较高,因为案例教学要达到好的教学效果首先要对案例进行精心设计,其次教师曾具有大型项目开发的经历,并积累丰富实践经验,对于学生在情境中遇到的一些问题才能给出合理解答。因此,该教学方式更适用于具有企业项目开发背景的教师。
  3.以项目驱动为主的实践教学策略设计
  所谓项目驱动教学法,是师生通过共同实施一个完整的“项目”工作而进行的教学活动。这里的项目,是指以生产一件具体的、具有实际应用价值的产品为目的的任务。
  软件工程实验教学应避免采用传统的固定安排实验时间,以写文档编代码为主要实验内容的教学方式。实验教学环节可采用项目驱动的模式,以大作业的形式贯穿学期始末。
  在课程初期,教师布置项目课题,学生进行自由分组(6~7)人,各小组根据兴趣选择项目,每1组根据学生的个人能力分配角色,并选出组长1人负责项目的整体工作进度安排与组员间的协调工作,并定期向教师汇报各项目进度。
  在开发过程中严格遵循以下要求:
  (1)各组的开发进度应对应教师的授课进度适当延后1周。
  (2)项目开展的每一阶段,都必须以组为单位提交标准化、规范化的阶段文档,并要求组内部成员执行严格的文档评审机制。
  (3)实现阶段产出的代码应在组员间进行代码走读。
  (4)测试结束后,各小组提交全部软件配置,由教师随机将软件系统交付别组试用,发现错误,反馈给开发小组进行维护工作。
  这种项目驱动的实验教学模式,让学生完整经历软件开发的各个阶段,为未来的学习工作打下了一定基础,同时也是一个对课堂知识加以理解应用、融汇贯通的过程。在开发过程中,组员之间的协调工作培养了大家的团队意识,这是软件人员一种最基本的职业素养。
  4.反思性评价机制的建立
  教学过程中,为激励学生的学习积极性,评价是不可缺少的重要环节。而传统的课程教学评价普遍存在功利化、单一化和单向化倾向,不利于学生主动性和积极性的提高。
  为提高学生的学习主动性好积极性,培养学生的反思能力,本课程建立反思性评价机制。反思性评价是指教师和学生在多元、客观、开放的评价过程中,根据基础性发展目标和学科学习目标的达成度、学与教过程的合理性、学与教策略的有效性等方面即时生成的信息,主动反思、不断调节学与教的行为,以促进学生的学会学习与教师的学会教学相统一的发展性评价方式。
  软件工程课程考核的重点不应是理论考试成绩,而是学生运用软件工程的思想和方法进行软件开发及项目管理的综合能力,具体评价可由自评、组内互评、组间评价及教师评价4种评价方式构成。评价的内容应针对软件工程一学期的完整教学活动中对专业知识的学习态度和成效、对小组的贡献,对项目的责任感、团队意识、项目成果等方面。由于软件工程的理论教学和项目开发呈现明显的阶段性,因此该评价方式也应分阶段性的进行,最终形成一个结合4种评价方式,分阶段性的反思性评价体制。
  自评以学生为主体,通过他们在自己不同阶段的表现对自己进行纵向的分析比较,同时与其他同学进行横向对比评价,便于他们从中学会独立地运用自己的理智,全面地认识自己,从而增强学习的责任感、自信心和自我效能感;组内互评则以小组为背景,由组内各组员间进行互评,在小组其他成员的评价下使学生清醒地认识自己的优势和不足,在今后的学习中不断完善自我;组间评价以整个小组为评价主体,在小组间以组为单位实现互评;教师评价则以教师为评价主体,站在宏观的角度,基于对全体学生学习状态的整体把握对每个学生的的个人表现给予中肯评价。组内互评、组间评价和教师评价这3种传统的他评方式,既激励了学生开发过程中的认真严谨,又实现了组与组之间、学生与学生之间的良性竞争。
  在整个教学过程中,教师也要根据学生的学习效果对自己的教学过程及行为进行反思性评价。可通过撰写教学反思日记及设定教学阶段性效果分析等手段,记录教学过程中存在的问题并提出解决方案来及时地进行总结,从而在教学过程中不断提高自身的教学能力以达到更好的教学效果。
  通过以上反思性评价机制的实施,学生与教师主动反思、不断调节学与教的行为,以促进学生的学会学习与教师的学会教学相统一的发展性评价方式,进一步提高了学生自我认识和评价的方法及能力。
  
  三、结束语
  以上对于软件工程教学的现状分析和教学策略的提出是在近年实际教学工作中的一些思考和经验的总结。作者已将以上若干教学方法应用到教学工作中,并取得了较好的效果,学生学习的积极性主动性明显提高。但随着计算机科学日新月异的发展,软件工程的教学也不断有全新的知识内容涌现,因此对该课程教学的探索是一项长期而艰巨的任务。除了改进教学内容安排、教学模式外,教师本身的专业素养不断提高也是相当重要的。
  
  
  参考文献
  [1]张海藩.软件工程导论[M].北京:清华大学出版社,2003
  [2]戴庆,肖红,潘俊辉.信息类本科专业案例教学实践研究[J].长江大学学报(自然科学版),2009,3
  [3]罗凌.基于项目驱动的ASP.NET程序设计课程创新教学法研究[J].计算机教育2009,13
  [4]王通,宣守国.课堂教学要素与反思性评价指标的设计[J].内蒙古师范大学学报(教育科学版),2006,8
  
  Problems and discussion on teaching strategy in software engineering teaching
  Min Di,Chu Qiuyan
  Zhanjiang normal university, Zhanjiang ,524048,China
  Abstract:Software engineering is a required course for college students whose major is compute science. This article analyses problems in software engineering teaching, and then discusses the solution strategies include teaching contents、teaching design and evaluation system.
  Key words:software engineering; case-based teaching; project-driven; reflective evaluation
其他文献
<正> IP(Intellectual Property),即知识产权,更恰切地应译为&#39;知识产权设计模块&#39;。随着半导体技术的迅速进步如IC的几何尺寸更小、密度更高、功能更强、开发周期缩短
<正>1 安全要求1.1 国家标准 根据GB18406.2-2001,无公害水果的安全要求包括重金属及其它有害物质卫生限量和农药最大残留限量。 要求表明,重金属有砷、汞、铅、铬、镉和氟
本文对《机械制造技术基础》课程内容的灵活性、综合性特点进行了分析,开发了此双语教学CAI课件,应用此软件可解决以往难于用双语阐述清楚的问题,并介绍了CAI课件的主要结构及特
扼要介绍熔断器分断能力试验装置的组成及工作原理。
为有效提高生物科学教育专业本科生的实验水平,培养具有创新意识和实验综合素质的新型中学生物教师,进行了开放式生物实验教学的调查、实践和探索。
本文介绍几种性线霍尔电流传感器的性能、封装尺寸及其应用方法。
特级教师吴正宪在“搭配”一课的教学中,以巧妙的设计、朴实的语言,返璞归真,让学生在真问题的解决、真体验的实践中进行真正的学习。
氧化锌陶瓷电阻器是由ZnO晶粒及其他晶粒组成的复合烧结体,无高阻晶界层,具有线性的电压-电流特性,电阻率可调,电阻温度系数小且为正,耐浪涌能量大。本文讨论了氧化锌陶瓷电阻器的
摘要:本文在分析财贸高职学生的人文素养现状和人文素养教育重要性的基础上,结合所在学校近年来在人文素养教育方面的理论研究和实践探索,梳理、总结出财贸高职学生人文素养教育的培养模式。  关键词:财贸高职;人文素养教育;模式     判断一个国家经济是否发达的一个重要指标是其服务业占GDP的比重。目前,发达国家的这一指标已达70%~80%,发展中国家的平均水平为40%,而中国的服务产业占GDP的比重只有