美章网 精品范文 软件技能论文范文

软件技能论文范文

软件技能论文

软件技能论文范文第1篇

结合目前就业形势,石油行业的相关发展,民办本科院校自身的特点及学生的实际情况,教学时并不只是讲软件技术的基础理论课程,而是主要讲授Eclipse油藏数值模拟软件,Surfer、Grafer、Petrel等几个专业软件的操作学习。例如,Surfer软件是美国GoldenSoftware公司编制的一款以画三维图(等高线,imagemap,3dsurface)的软件,Surfer具有的强大插值功能和绘制图件能力,使它成为用来处理XYZ数据的首选软件,是地质工作者必备的专业成图软件。Petrel是一个共享地球模型工具,由斯伦贝谢公司出品,通过一个公用的数据模型发现油藏规律。Petrel是一套目前国际上占主导地位的基于Windows平台的三维可视化建模软件,它集地震解释、构造建模、岩相建模、油藏属性建模和油藏数值模拟显示及虚拟现实于一体,为地质学家、地球物理学家、岩石物理学家、油藏工程人员提供了一个共享的信息平台。

对于复杂的软件应用课程,教师在讲授软件操作时,可以采用集体备课的方式进行课程备课工作。由于这门课程需要在机房进行,一个教师进行讲授的同时,最好再有一名教师进行辅助指导,这样可以及时解答学生的具体问题,也更容易知道学生在哪些方面不理解,以后讲课中需要注意什么。不然,很容易造成学生听课质量低,一名教师也无暇顾及众多学生的问题,学生跟不上教师的讲课节奏等,给教师授课带来不小的压力。因此采用集体备课,辅助教学的方法就可以解决授课效果不够理想等实际问题。教师在教课的同时不仅为学生传达了知识,自己也在共同备课的过程中渐渐地丰富了知识。这种教师集体备课,共同讨论教学中出现的问题,相互提出建议,总结经验,也能够不断地完善师资队伍素质和提高教师梯队建设的目标。

2结合学生兴趣,利用多媒体工具,改善教学效果

软件技术应用课程讲授起来是很枯燥、乏味的,其结果必然影响到教学效果。这就需要在讲课时能够结合学生的兴趣点,将枯燥的操作理论与油田实际相结合,配合一些实例来讲解操作方法,可以更好地改善教学效果。软件技术应用课程还可以充分利用网络和现代多媒体技术,实时展现目前油田系统成熟的软件信息系统,如采油工程信息系统、勘探信息系统、开发信息系统,通过这样的方式可以拓宽学生的知识面,使学生视野更加开阔,思路更加清晰,以弥补本科阶段学习的不足,增加学生的学习兴趣,为他们后续的工作和学习做准备。

3带学生参加比赛,锻炼学生的实践能力和创新能力

如果只是在课堂上讲授如何操作石油工程专业软件,还没有达到更好的学习效果,就要鼓励学生参加各种相关方面的大赛。例如,由教师带领学生参加“全国石油工程设计大赛”“,学以用赛,赛以促研”,以大赛为契机给学生提供应用、创新、交流的舞台。因为大赛要求学生能够充分发挥创新精神,需要利用课内学习的知识,课外查阅的资料,教师的指导等才能完成作品,所以通过这种方式,可以强化教学效果。根据学生的特点进行有的放矢,为他们打开实际应用的窗口,使他们掌握基本操作和方法的基础上,能够联系实际,进行高层次的创新工作,以更好地提高他们的学习能力,综合运用专业知识的能力,并能够锻炼他们的实践能力,团队合作,整体素质等,从而在就业时让学生有更强的市场竞争力。

软件技能论文范文第2篇

关键词:自主学习;外文文献研读;软件测试;双语研究性教学

0、引言

软件测试是从事计算机软件开发和维护专业的人员应该掌握的一门技术。软件测试是软件工程中的关键活动之一,是保证软件质量的重要手段,其工作量通常占软件开发总工作量的50%以上,而对于某些可靠性要求极高的软件系统,如航天、银行等领域的软件系统,软件测试占软件开发总工作量的比例甚至达到60%~80%。软件测试的目的是发现软件中的错误,并及时修正这些软件错误,以减少软件在后出现错误,提高软件产品质量。软件测试是一项需要专业技能的工作,它包含许多理论和实践。如果缺少这些理论知识和实践经验,测试的深度和广度就不够,测试质量也就无法保证,从而导致软件质量达不到要求,影响软件的可信性。

由于国内软件产业的现状所致,很多的软件公司属于软件外包型公司,这些公司以软件开发为主。这样,软件工程专业很大一部分学生毕业后通常从事软件开发或者程序员工作,这也影响着学校对软件工程专业的设置。因此,当前高校在软件工程专业课程设置上往往将很大一部分精力放在软件开发课程的设置上,如各种语言的学习、软件开发方法的学习等。但是,软件工程不仅包括软件开发,还包括软件测试以及软件维护。大部分国外大型软件公司,如微软、IBM等公司,这些公司对软件测试非常重视。在这些公司内部,软件测试人员数量并不比软件开发人员少,因为一个优秀的软件产品最终是通过不断的软件测试进行验证和评价的。随着软件工程课程的不断完善,当前软件测试的重要性已逐渐得到重视,很多高校已将软件测试课程作为软件工程专业课程中的必修课程。该课程是软件工程的核心组成部分,是连接软件开发和软件的纽带。通过本课程的学习,学生要了解软件测试及其管理的重要性,掌握软件测试基本理论、技术和方法,具备研究设计测试用例和使用自动化测试工具的基本方法和实践能力,能将测试驱动的理念融入软件开发、维护的研究与应用中,从工程化角度提高和培养学生从事大型软件的测试技术和能力。

尽管软件测试课程已作为软件工程专业的必修课程,但从教师和学生两个角度对该课程的调查反馈发现,教师觉得该课程不好教,教学效果不好;而学生感觉该课程较空洞,没有发现其在实际软件开发中有多大的应用。这主要因为在传统的软件测试教学中,学生只是被动地参与,听教师授课,听教师讲授各种软件测试概念和方法,但学生并没有真正学到这些理念,并没有对这些方法进行应用。所以这种传统的软件测试教学方法效果很难令人满意。

扬州大学信息工程学院将软件测试课程作为一门双语研究性课程进行试点改革,探讨如何更好地进行软件测试课程的教与学。本文将以该学院软件工程专业软件测试课程为例,探讨学生自主学习的软件测试双语研究性教学方法。笔者作为该课程的授课人实施了本文的软件测试教学方法,其目的是研究如何促进学生进行双语研究性教学,促进学生主动学习软件测试新技术,从而让学生学到软件测试课程中的一些测试理念,让他们了解软件测试在整个软件开发过程中的重要性。

1、软件测试双语研究性教学

软件测试双语研究性教学主要包括三方面内容:教学、研究、实践。这三者在软件测试双语研究性教学中的关系是:以教学为本学习,以研究为重点突破,以实践为辅助训练。下面分别介绍这三方面的内容:

1)教学方面。

软件测试双语研究性教学和传统的软件测试教学一样,根据软件测试教学大纲进行教学,主要包括软件测试基本概念、软件测试基本方法、白盒测试、黑盒测试等。由于研究性教学过程中加入了研究,所以教学是以基本的测试理论和技术为主。另外,在教学过程中,由于本课程属于双语课程,所以教学过程中采用英文PPT,中文授课方式进行教学。另外,教学主要以启发式教学为主,让学生更多参与课堂讨论,由于本文主要讨论研究方面,所以这里对教学不做详细讨论。

2)研究方面。

本课程采用的是研究性教学,因此研究是本课程的重点和特色。本课程所采取的研究方式主要以学生自主学习为主,采用阅读文献的方式。由于本课程是双语教学,研究过程中所提供的文献材料全部是英文论文,这些材料都是从当年软件工程领域顶级国际会议中选取的有关软件测试方面的最新技术和方法,这样有助于学生开阔视野,了解最新的软件测试技术、方法,及软件测试发展的方向。这一部分的实施方法将在第3节进行详细介绍。

3)实践方面。

软件工程是实践性很强的专业,同样,软件测试也是如此。需要通过不断的实践才能理解和掌握软件测试技术,将测试理念贯穿到软件工程项目中。本课程软件测试实践主要包括三方面内容:一是验证性实践,熟悉已有测试工具,学会使用这些工具,并利用已有测试工具生成测试用例;二是自己开发软件测试工具,主要根据研读的论文进行工具的设计和开发;三是软件测试工具的验证和评估,主要是对自己开发的工具进行验证和评估。一方面利用已有测试工具来验证当前软件测试工具,另一方面,利用已有软件测试知识评估测试工具在故障识别方面的效率,这有助于学生更深地掌握软件测试技术,了解什么样的测试技术是好的测试技术或者方法,是有效的测试工具。这一部分也不是本文的重点,因此不详细展开讨论。

2、软件测试双语研究性教学特色

本课程作为扬州大学软件工程专业的试点课程,采用双语研究性教学方式进行课程的授课和学习。对于双语性教学,主要采用英文材料,中文授课;而对于研究性教学,主要是让学生进行自主学习最新的软件测试技术和方法,研读相关的英文论文,进行专题报告和讨论,并鼓励学生开发实现这些技术。因此,在本课程的教学过程中,主要体现了5个特性。

(1)自主性:让学生从给定的英文材料中自主选择学习材料,自主组建团队,自主与英文材料作者联系、沟通、交流和讨论。

(2)协作性:学生必须要组建团队,团队成员数量由2~4人构成,团队之间相互协作、配合,共同完成整个研究性学习过程。

(3)互动性:在学习过程中,必须要与论文作者沟通和交流,真正把握论文作者的真正意图,并尝试提出自己的见解,与论文作者进行讨论。

(4)实践性:要能够实现论文材料中的软件测试方法,在工具开发过程中,鼓励学生采取测试驱动的开发方法,并利用所掌握的软件测试技术去测试自己的工具。

(5)研究性:在研读论文过程中,要对论文进行深入的讨论和研究,特别是对作者的思想以及未来工作、论文中的不足进行研究,提出可能的解决方案。

3、软件测试双语研究性教学实施

笔者主要针对软件测试双语研究性教学过程中的研究过程的实施进行讨论。在本课程中,研究主要是采用学生阅读文献的方式进行自主学习的研究,主要针对当前最新的软件测试技术进行学习和研究。研究性教学具体的实施过程如图1所示。

首先,教师从当年软件工程顶级国际会议中选取软件测试相关的研究技术论文放入文献库中。这样的文献库主要用于学生对当前软件测试的学习和研究。对于本科学生来说,独立地去研读这些最新技术还有一些难度,而且时间上也紧张。因此,研究性学习主要采取团队方式一起研究,这样学生进行自由分组,并且每个小组指派一名学生作为小组组长负责该小组的研究性学习进展。

有了文献库以及学生分组后,就进入自由选题阶段,即各个小组从文献库中选取自己感兴趣的论文。在各小组确定自己的研究论文后,进行论文的研读。在论文研读过程中,要求每个小组每周至少讨论一次,讨论各小组的分工任务完成情况,对原文的理解情况,以及对遇到的问题进行讨论,并且项目小组要及时记录这些讨论记录,每周发送给任课教师。另外,在研读论文过程中,每个小组要用英文与论文作者进行沟通与交流(如果作者没有回复,可以选择与课程教师进行交流),并将交流过程中的对话记录下来作为课程成绩考核的依据。

在论文研读后,需专门安排几节课进行专题报告和讨论,主要用于检查各小组对原文的理解情况。专题讨论内容包括三方面:一是学生对论文内容的理解;二是学生需要提出对论文的见解和观点,挖掘论文可能存在的问题或对论文中的未来工作部分提出见解;三是本小组研读论文的体会分享。在专题报告中,我们还邀请了学院的一些其他教师参与进来与学生们一起讨论,一方面,教师对各个论文本身进行点评;另一方面,教师对各个小组的表现进行点评。另外,在专题报告中,强调学生的参与,就是大家要多提问,多讨论。

专题讨论后,各小组要对原文中软件测试技术进行实现。其中,在软件测试技术实现过程中,鼓励采用测试驱动的软件开发方法;另外,需使用已有的软件测试技术和工具进行测试。在完成开发软件测试工具后,需要选择一些例子进行软件测试技术的验证。最后,各个小组需要提交一份总结报告,主要是关于技术实现进行总结,包括这几方面内容:对论文原文的理解或技术改进,采用的测试技术和工具,技术改进效果的验证和评估。

4、实施效果

该课程已在2012-2013年秋学期的扬州大学软件工程专业的一个班按照本文教学方式进行实践。该班学生40人,我们从2012年ICSE(International Conference on Software Engineering)、FSE(Symposium on the Foundations of Software)、ISSTA(Symposium on the Foundations of Soft-ware)、ICST(Intemational Conference on Sottware Testing,Verification and Validation)、ICSM(Inter-national Conference on Software Maintenance)等国际顶级会议上选取了44篇软件测试相关的论文作为学生学习的资料库。然后让学生自由组队,每组2~4人一起研读论文。最后组队15组,选择了15篇论文进行学习和讨论。在研读论文过程中,建议学生自己与论文作者用英文进行交流和讨论,讨论论文中不能理解的内容;在研读完论文后,我们组织了专题报告,报告主要包括三方面:一是论文主要内容;二是学生对论文的看法以及学生自己的想法;最后就是分享研读过程中的体会。另外,我们鼓励学生用英文进行报告(其中一组采用英文进行报告)。专题报告过程中我们还邀请软件工程系相关教师一起进行点评。

通过这样的学习,大部分小组完成得较好,基本能理解论文内容,也提出一些想法和改进措施。在研读论文后,学生对论文内容和自己的想法进行实践,实现相关技术并进行实验验证。几个月的学习后,大部分学生对这门课的研究性教学方式比较认可。我们以问卷的方式对学生进行了调查分析,调查主要包括对课程教学方式的认可,对自己收获的认可等。发放调查问卷40份,收回有效调查结果28份。该调查问卷由11个问题组成。前10个是选择题,如表1所示,是对当前教学方式和教学效果的同意或支持程度,由1~5这5个选项构成,其中1表示非常支持(同意),2表示支持,3表示无所谓,4表示不支持,5表示严重不支持。统计结果如表1所示。最后一个调查问题是关于这门课程的建议。从表1中可见,学生还是比较渴望学习新的知识,比较认可这种学习方式;另外,学生对自己的学习效果也比较认可。最后,无论从考试效果,还是学生的反响来看,这门课所采用的教学和学习方式是比较成功的。该教学方式也得到学院的认可,所采用的教学方式也得到科技日报、新华报业网等主流媒体的广泛关注和报道。

软件技能论文范文第3篇

硬件主导论:硬件决定一切信息技术发展初期面临的最大难题是硬件制造,全世界一年内能造出的计算机屈指可数,这些庞大而昂贵的计算机难以操作且极不稳定,有些计算机甚至需要通过调整电路结构来应对不同的计算任务。在这种背景下,硬件成了决定信息系统价值的核心因素,甚至是唯一因素,从而形成了硬件主导论,即硬件的价值等同于信息系统的价值,其他组成均附属于硬件。基于这种认识,当时的硬件厂商通常会把配套软件的源代码免费送给用户,以方便他们根据自己的需要进行修改。硬件主导论存在很大局限,忽略了软件等系统其他组成的价值,但正是在它的影响下,大量的社会资源集中投向硬件制造领域,制造工艺飞速发展。

软件价值论:软件具有独立价值随着硬件制造技术日益进步,越来越多的机构甚至个人购买计算机处理事务,计算机的使用情况发生了很大变化:一方面,使用目的日益丰富;另一方面,用户大多不具备开发软件的技能。于是,能否提供易用、可靠的软件成了评测信息系统的重要因素,软件的重要性日益突出。为了保护自身利益,开发者不再提供源代码,甚至要求用户付费购买软件。对软件的旺盛需求促使研究者反思硬件和软件的关系,并形成了软件价值论,即软件不是硬件的附属品,而是具有自身独立的价值。软件价值论深深地影响了中小学信息技术教育,无论是学习编程还是学习多媒体处理,都离不开软件的支持。在很长一段时间里,软件操作成了信息技术课程的焦点。

开源共享论:开放源码共享智慧开源共享论来自开发人员对软件价值论的反思,他们认同软件的价值,但反对闭源或设置软件专利等手段。他们认为,软件、通信协议等是人类智慧的结晶,不应掌控在少数商业机构手中,而应开放给全人类自由使用,开源正是保证这一权利的必要手段。经过长期努力,开源精神开始从软件开发向其他领域延伸。近年来,随着软件行业垄断的加剧,很多国家希望借助开源获得信息产业上的突破,开源共享的呼声日益高涨。与此同时,在中小学开展开源文化教育得到了更多关注,我国一些省市已明确把开源文化纳入课程。

普适计算论:计算无处不在普适计算论最早在1988年被提出,表现为人们能在任何时间、任何地点、以任何方式处理信息,而不必关心技术和设备。普适计算论源自科研人员对“人-机”关系的重新思考,力图让人成为信息系统的中心,其倡导的“以人为本”理念对信息技术普及具有重要意义。这一理念在信息技术课程改革中受到了充分重视,教育的重心从关注软件操作转变为关注学生信息素养的培养,不过计算机的中心地位还未动摇,已有的发展成果也没能得到课程设计者的充分认可。

软件技能论文范文第4篇

一、引言

软件工程是一门交叉性的工程学科,它将计算机科学、数学、工程学和管理学等基本原理应用于软件的开发与维护中,研究重点是大型软件系统的分析与评价、规格说明、设计和演化,同时也涉及管理、质量、创新、标准、个人技能、团队协作和专业实践等方面的内容。然而,软件工程开展近30年后,人们才对软件工程核心的知识体系达成共识。在国际上,ieee-cs和acm联合组建的软件工程协调委员会(swecc)了软件工程知识体系和推荐实践swebok2004[1],为软件工程职业实践建立了合适的准则和规范集,以作为产业决策、职业认证、课程教育的依据。基于swebok,swecc进一步定义了其中可以纳入教育程序的知识体系,包括本科生软件工程教育计划se2004中的seek、研究生软件工程教育计划gswe2009[2]中的cbok、软件工程职业道德规范和职业实践。

我国2002年启动了软件工程硕士培养程序。借助于计算机科学技术、数学、管理科学与工程诸多学科,软件工程已由计算机科学与技术专业下的一个学科方向,发展为一个独立的新兴交叉一级学科。但由于我国传统的高等教育注重科学研究能力培养,工程化人才教育开展时间较短,培养体系尚在不断改革完善,因此在很多院校中软件工程学科还没有脱离计算机科学与技术的范围,所培养的软件工程人才与工业界的要求尚有一定距离,整个硕士培养过程中,课程体系的设置是影响研究生业务能力和素质的重要因素,因此以企业需求为导向,以软件工程知识体系为核心,以训练实践能力的为目标的层次化软件工程课程体系改革对促进高等教育面向社会需求培养人才,全面提高工程教育人才培养质量具有十分重要的示范和引导作用。特别是在硕士生的培养上,对课程学习与学位论文的要本文由论文联盟收集整理求一般是同等并重,合理的课程体系是高等院校保证培养目标和形成办学特色的重要手段。软件工程硕士的定位和其他学生不同,这为我们的课程设置、建设与管理提出了新的挑战。

通过对国内众多高校的软件工程专业培养方案和课程设置进行分析,将其分为以下四种主要类型[3]:

(1)完全独立型:将软件工程彻底从计算机科学与技术专业分离出来,作为独立的一级学科,课程设置上综合计算机、数学、管理科学与工程等学科,偏重于数学基础,但实践能力较缺乏。

(2)以计算机科学与技术主体课程为基础,以软件工程理论课程为核心,加强实践教学型。以计算机科学与技术的课程体系为主体,教学中突出软件工程的知识体系,加强实践教学,根据企业需求或者人才市场需要,按照工程思想进行实践教学,同时校企结合,试图在实践中摸索和学习软件工程的工程理念,但在进行实践之前的软件工程理论基础不牢固。

(3)实践加强型的计算机科学与技术课程体系,在这个模式下,课程体系基本和计算机科学与技术相同,只是加强了实践环节,学生在学习和就业方面没有脱离计算机科学与技术专业,工作中所学的工程理念需要自己去学习。

(4)其他类型,鼓励学生参加各种软件大赛,推荐学生参加各种证书的考试,获取各种软件企业证书。这种类型中,学生所学内容较多,但是正是为了考试而学习,基础不扎实,同时真正的工程实践能力不够。

因此我们认为,目前的软件工程还没有脱离计算机科学与技术的范围,无论是从传统计算机科学与技术专业与软件工程专业的区别,还是本科生与研究生的区别来看,针对软件工程硕士的课程体系建设和教学改革研究都是十分有必要的,同时也是迫切的。

二、生源基础分析

gswe2009对给出了软件工程硕士的三种主要生源:

(1)在职程序员,由于没有受到过正规研究生教育,有些企业的在职人员对理论知识匮乏,因此具有系统学习的愿望;

(2)其他领域的专业人员,由于软件工程职业的兴起,以及目前人才市场对该专业的需求,使得其他领域的专业人员想要加入软件工程的队伍;

(3)没有工作经验的本科毕业生,在当前就业压力下,许多本科毕业生毕业后选择继续深造。

在我国,软件工程硕士研究生多是没有工作经验的本科毕业生,正式由于这些大学本科毕业生的基础专业各不相同,使得软件工程硕士研究生的课程设置更加复杂和重要。

三、知识体系分析

2004年8月,有全世界五百多位专家教授推出的软件工程知识体(swebok)和软件工程教育知识体(seek)两个文件的最终版本,包含了软件工程核心类的知识领域、基础类或前导类的知识领域以及其他相关领域的知识。2009年, gswe2009中的教育知识体系cbok主要来源于swebok,同时也参考了seek2004、incose2003和haskins2007。与swebok2010同步,gswe2009包含了一个新的知识领域ka(职业实践)和四个关于教育的ka(工程经济学基础、计算基础、数学基础和工程基础),同时两个在swebok中没有出现的ka(系统工程基础和职业操守指导)被加入了cbok。此外,cbok还调整了一些知识单元和知识点[4]。gswe2009由准备知识、核心知识、大学特有知识、选择性知识和顶点经验所构成。其中的大学特有知识有学生的入学基础决定,在整个硕士研究生的培养过程中,主要为学生设置学习专业核心知识之前的准备知识以及在学生职业实践课程中所需要的选择性知识,而顶点经验需要学生在学习专业核心知识和进行职业实践的过程中积累,因此,课程设置中准备知识和专业核心知识的设置以及学习方式尤为重要。

四、课程设置分析

通过对软件工程知识体系进行分析,软件工程硕士研究生应具备的主要能力有:基础开发技能、团队合作技能、发现并解决问题技能、系统建模技能、文档撰写技能。我们将硕士研究生的培养阶段分为:理论知识学习、职业实践、论文撰写三个阶段。在前两个阶段中,我们给出了三单元课程、两步实践的方式,三单元课程分别是:必选课单元、必修课单元、自选课单元,两步实践有:模拟职业实践、实际职业实践。传统的理论学习和职业实践通常是完全分开的两个阶段,但在软件工程这个特殊的学科,我们将理论学习和职业实践结合起来,在进入理论学习第二单元的同时进入模拟职业实践阶段。理论学习三个单元具体设置如下:

(1)必选课:选择工程经济学基础(例如知识产权与法律、企业管理与文化、领导学、信息经济学 、市场营销学等)、计算基础(例如算法设计与分析、高级软件工程、高级数据库、高级操作系统、高级网络技术)、数学基础(离散数学 、组合数学、 工程数学、数值分析)等准备知识中的专业主干课程按学科分类作为新生入学的必选课,取代以往将某些固定课程作为所有学生的基础课的方式,方便根据学生大学所学专业来选择自己所欠缺的准备知识进行学习,是知识的储备阶段,在本单元根据学生所选课程的成绩作为给定学分的依据。

(2)必修课:将软件工程基础中的核心知识(例如软件体系结构、软件项目管理、软件质量保证与软件测试技术、软件系统建模原理和方法、基于cmm 的软件过程改进、软件开发方法、软件需求工程)作为所有学生的必修课,培养学生能够系统全面地了解软件工程的概念,旨在学生具有扎实的软件工程及相关专业基础理论,熟练掌握软件工程知识和技能,并且具备作为软件工程师从事工程实践所需的专业能力。在学知识的同时,适当加入模拟职业实践的训练,根据学生的学习方向,将学生进行分组,进行模拟题目的训练,题目可以是各类大赛的题目、教师的科研课题以及学生自己选题,这是学生职业实践的第一步,培养学生基础开发技能、团队合作技能、系统建模以及独立创新技能,之所以称之为模拟职业实践,是因为这一步的实践题目并不是真正的软件工程课题,而是采用软件工程思想的实际课题,为下一步学生进入企业进行第二步的实际职业实践奠定基础,在本单元根据学生的课堂表现以及最后考核给出一部分成绩,另一部分成绩给出的依据是学生实践课题的完成情况以及在小组中的贡献程度,培养学生动手实践的同时,也提高了学生认识自我、团结合作的能力。

(3)自选课:学生根据自己对软件工程的理解以及通过对上一个单元所做题目的分析,选择自己所需要补充的基础专业知识,自行选择和学习,培养学生发现并解决问题以及自觉学习的能力。在这一单元中,导师根据学生所选专业知识的准确性以及学习之后对该软件工程专业的认识给出学生的成绩。

传统的课程设置一般都是先学习再实践,或者是边学习边实践的过程,前者学生在学习理论的同时没有实践练习,导致学生理论与实践结合得不好,后者在学习的过程中进行实践,锻炼了动手能力,但是学生往往不知所以然,只是按照老师的讲解去实践,对理论的指导作用理解不够,而我们通过上面学习-实践-学习的过程,学生不但对软件工程相关知识有所掌握,也具备了一定的实践能力,同时也培养了学生具有不断补充知识、总结自己、提高自己的意识和能力,在实践中体会到理论知识的作用,从而能够主动学习。在这个过程中,学生在学习软件工程核心知识的同时进入了职业实践的第一步模拟职业实践,将理论和实践很好地融合在一起,使理论的学习过程不再枯燥。

在职业实践的第二步实际职业实践中,学生自己从课堂走出去,到实习基地、用人单位或者是校企合作的相关公司企业进行真正的软件工程实践,学习良好的职业道德,正规的软件工程管理方式,同时在实践中学习和总结自己的研究生学习过程,进入第三阶段论文撰写,这就避免了以往硕士研究生写论文闭门造车的现象,为论文提供了更好的实践依据,提高了硕士论文的质量,这一步通过从实践中回到学习上来培养学生的总结、概括、撰写文档的能力。

软件技能论文范文第5篇

关键词:软件工程;试验;软件装置;平台;问题;特点;应用;功能;分析

中图分类号:TP311文献标识码:A文章编号:1009-3044(2012)23-5598-02

正如上文所述:软件工程课程作为现阶段高等教育教学体系中计算机科学及技术相关学科教学工作开展过程当中的重要构成要素之一,旨在培养学生软件工程设计、分析以及测试工作的实践操作能力,进而为现代经济社会的建设发展输送质量更高的复合型计算机软件操作人才。从软件产业的发展角度上来说,新时期软件产业高速的发展使得软件工程学科教学工作面临着前所未有的发展机遇与挑战。现代经济社会建设发展新时期,各行业领域对于软件系统的需求正呈现出较为迅猛的增长趋势,以上实际情况与软件产业的发展趋势要求软件工程学科教学作出必要的改进与完善,以适应软件产业的工程化、规模化、综合化以及系统化发展趋势。该文基于对现阶段存在于软件工程教学作业中问题的分析,从软件工程实验装置建设的基本特点与软件工程试验软件装置的具体应用分析这两个角度入手,针对以上问题做详细分析与说明。

1现阶段软件工程教学工作存在的问题分析

学生对于软件工程学科学习的最终意义与价值认识还不够明确与精准,无法找准软件工程学科学习对于自身发展与社会生存间的推动关系,直接导致大部分学生并不具备学习软件工程相关知识技能的兴趣度,最终致使学生参与软件工程课程学习的主动性与积极性无法得到充分发挥。更应当注意的一点在于:大部分学生所认识到的软件工程学科知识仅有着一定的理论价值,学习意义的发挥存在较大的局限性,软件工程学科潜在的实践性价值无法得到有效体现与发挥。

学生在参与软件工程学科学习过程当中所涉及到的相关理论知识与技术方法无法得到试验的检验与证实:现阶段软件工程学科学习最突出的问题在于:软件工程学科学习过程当中所涉及到大量理论知识与技术方法无法得到试验的检验与证实,理论知识的传授与实践操作之间的连接不够紧密,学生对于所接收到的软件工程相关知识与规律存在一定的质疑性。

学生软件项目管理相关操作能力与基本素养水平无法通过软件工程学科的学习而有所改善与提升:我们知道,对于软件工程学科教学而言,其教学内容当中所涉及到的管理与协调等非技术性教学内容站整体教学内容的比例是比较高的。要想熟练掌握并合理应用这部分管理与协调经验并非一蹴而就的,其更多的倾向于一种长期性且复杂性的系统化工程。很明显,现阶段软件工程学科所选取的理论知识与实践操作实验还无法引导学生直接且有效的达到以上应用技能水平的高效提升,最终也制约了软件工程学科教学目标的实现。

2软件工程实验软件装置建设应体现的基本特点分析

相关工作人员应当明确一个方面的问题:软件工程实验软件装置引入的最关键目的在于引导学生以实验软件装置为载体,感受到软件工程的抽象化存在,明确学习软件工程的意义,认知软件工程的学习方法,探究软件工程学科学习过程当中的趣味性,最终引导学生自主、自发的对软件工程学科相关理论知识与实践操作进行学习。从以上分析可以总结:软件工程试验软件装置的建设应当特别体现以下几个方面的应用特点。软件工程试验软件装置的建设应当引导学生构建创新意识与创新精神。软件工程实验软件装置的建设应当体现新课程改革标准规范针对软件工程学科教学实际所提出“软件工程学科建设应当将传统意义上单向传授知识的学科知识教授体系予以打破,进而构建一种将传授与探索研究相结合的目标化教学模式”的教学理念,引导学生在一种极具开放性与启发性的学习环境当中进行软件工程学科学习,引导学生通过问题的发现,激发解决问题的积极性,进而对问题进行有效思考,最终解决问题。

软件工程实验软件装置的建设应当满足软件工程学科多元化的试验需求:实验软件装置的应用应当具备对软件工程学科教学所选取教材教学内容进行归纳与细化的功能,引导学生对自身学习能力水平高低以及自身掌握软件工程学科知识技能的程度对知识学习与实践操作进行合理的选取,实现软件工程学科教学的针对性与侧重性转型,与此同时,软件工程实验装置的应用还应当促进学生将软件工程理论与自身专业技能相融合,从而对整个项目开发环境有一个全面的认识与了解。

3软件工程支持可扩展与可定制软件装置平台的应用分析

软件装置平台背景分析:由于软件工程所涉及到的理论知识与应用技术据比较系统与具体,软件工程所涉及到的工作面比较大,导致学生在刚刚接触软件工程教学的过程当中出现大量的疑问与学习难点。最普遍的问题可以简单概括为以下几个方面:①.学习软件工程的意义何在?②.软件工程应当怎样学习?③.在软件工程的整个学习过程当中会涉及到哪些类型工具的应用?教师要做的是在软件工程教学实践过程当中逐步引导学生解决疑问,在对软件开发流程进行过程当中对学生可能感到疑惑的问题与细节进行处理。在这一过程当中,教师应当引导学生明确以下几个方面的问题:软件装置平台的构建目标在于提供一个让初次接触软件工程的学生能够在学习初期最为直接与直观对软件分析、设计以及测试相关理论技术与工作流程有一个宏观的认识。与此同时,通过软件装置平台的构建,学生能够在一个个性化的学习基地当中进行系统化的软件工程知识技术学习。更为关键的一点在于:通过软件装置平台的构建,学生能够确保软件作业所输出软件工程制品的高效性与合理性。软件装置平台的构建使得学生所接触到的软件开发全过程更为简便,可操作性得到了有效提升。有关软件工程思想的认识与学习能够在学生主观性与自觉性的学习过程当中得到完善,从而确保实验装置动态更新速率的稳定提升。

软件装置平台基本功能分析:从某种角度上来说,软件装置平台能够辅助终端操作者通过对软件工程基本理论及应用技术的掌握明确认识到有关面向对象方法的应用情况,进而以此为依据提高软件系统分析、设计以及开发工作的完成效率。从这一角度上来说,软件装置平台所涉及到的基本功能可归纳为以下几个方面,需要引起相关人员的特别关注与重视。

1)软件装置平台的构建应当具备对软件工程基本理论、技术以及应用工具的介绍功能。健全化的软件装置平台构建应当具备有关软件工程应用工具以及支持面向对象软件流程分析与设计相关工作的介绍性能,在这一过程当中应当特别关注对UML图基本意义及应用方式的介绍作用。对软件工程应用工具以及软件工程相关理论技术的介绍应当具体到软件分析的目的、软件设计的步骤、软件内容的概括、软件实现的原则以及软件应用客观要求等多个方面。以软件装置平台构建中课程常识的介绍功能而言,应重点介绍的内容应当包括①.课程必要性介绍;②.课程涉及面介绍;③.开发模型介绍;④.开发流程介绍这几个方面,在此基础之上拓展在线搜索功能,外联“baidu”或是“google”网页搜索,并为学生提供专门的学习笔记以及师生交流支持,与之相对应的网页布局结构如下图所示(见图1)。

图1网页布局结构示意图

2)软件装置平台的构建应当具备健全的可扩展特性与可定制特性。从软件工程学科所涉及到的相关理论与技术方法的研究角度上来说,所构建的软件装置平台应当支持装置终端使用者依照自身的实际需求,在基于对软件工程项目设计全过程进行分析与规划,并且明确项目输出需求的基础之上,对软件工程项目实施流程作出一定程度上的调整与优化,并对实验需求进行合理的定制。更为关键的一点在于:所构建的软件装置平台还能够支持装置终端使用者将所开发出的最优案列导入系统结构内部并储存,作为后续软件工程项目开发的参考案列。实践研究结果表明:通过软件装置平台可扩展性与可定制性的实现,软件装置平台最大限度的避免了项目开发参考案例的单一性,从而提高项目开发质量与开发效率。

4结束语

伴随着现代科学技术的蓬勃发展与经济社会现代化建设进程日益完善,社会大众持续增长的物质文化与精神文化需求同时对新时期的软件工程建设事业提出了更为全面与系统的发展要求。现代经济社会对于软件工程专业复合型人才需求量的持续提升要求有关软件工程学科教学工作作出一定的改革与优化。软件装置平台的构建无疑是最为直接也是最为有效的实现方式之一。通过对现阶段存在于软件工程教学中问题的分析,笔者认为,对于软件工程课程教学作业的开展而言,在遵循软件工程实验软件装置一般建设特点予以满足的基础之上,重点通过对软件装置平台基本功能的描述,其相对于软件工程学科的教学优势能够得到充分的体现。总而言之,该文针对有关软件工程实验装置相关问题做出了简要分析与说明,希望能够为今后相关研究与实践工作的开展提供一定的参考与帮助。

参考文献:

[1]张为.庄育飞.冯华,等.《软件工程实验》课程采用产学合作模式以培养应用型软件人才的研究和实践[J].价值工程.2012,31(7): 146-147.

[2]熊凡,李伟波.项目驱动的软件工程实验教学探讨[J].中国电力教育,2012(2):77-79.

[3]司莹莹.软件工程实验课程教学模式探索[J].中国科教创新导刊,2008(36).

[4]黄妮,吴晓军.基于时间约束的软件工程资源配置Petri网检测模型[J].计算机技术与发展,2012,22(4):21-24,28.

[5]张云.将过程控制引入软件工程课程实验的研究[J].嘉兴学院学报.2006,18(3):98-100.

[6]吴志男.基于模拟软件企业的导学制在软件工程实验教学中的实施应用[J].科教导刊,2011(21):64-65.

软件技能论文范文第6篇

关键词:项目驱动法;软件测试;教学方法

作者简介:赵晓君(1979-),女,河南南阳人,郑州轻工业学院软件学院,讲师;黄艳(1976-),女,河南信阳人,郑州轻工业学院软件学院,副教授。(河南 郑州 450002)

基金项目:本文系郑州轻工业学院校级青年教师教学改革项目的研究成果。

中图分类号:G642.0 文献标识码:A 文章编号:1007-0079(2013)07-0101-02

随着软件产业的快速发展,软件系统的规模越来越大,功能实现也越来越复杂,导致软件中存在的缺陷数量大大增加,这些缺陷将会带来各种损失,甚至出现灾难性的后果。因此,如何保证软件质量已成为所有使用软件和开发软件的人们关注的焦点。软件测试作为软件工程的一个重要组成部分,是目前用来验证软件是否能够满足用户需求功能的唯一有效方法,是保证和提高软件质量的重要环节。为适应软件产业的发展趋势和满足软件测试人才的大量需求,目前已经有许多大学在软件工程专业添加软件测试课程或者添加软件测试专业方向。

软件测试专业包含多门专业课程,有“软件测试理论”、“软件测试技术”和“软件缺陷管理”等,其中,“软件测试理论”课程重点为初学测试的同学讲解测试的基础理论知识,主要包括软件测试基本理论、软件测试方法和技术等,在多门专业课程中占有举足轻重的地位。

一、“软件测试理论”教学现状

“软件测试理论”课程重点介绍软件测试的基本理论,因此整个课程主要以教师讲授为主,在教学的过程中存在以下问题:

1.教学内容理论性较强,难以调动学生学习的主动性

对于初学软件测试的学生,首先要向其讲授相关测试理论,使其建立系统的测试理念。

但是学测试的学生大都是理科生,喜欢操作性强的课程,“软件测试理论”课程的理论性太强,需要背诵很多概念性的知识,这对于他们来说是比较困难,不能激发学习的主动性,教学效果不理想。

2.测试方法和技术案例实际应用价值不足,学生很迷茫

测试方法和技术是“软件测试理论”课程学习的重点和难点,这部分内容仅靠老师的讲解和书本上的案例很难让学生深入理解掌握测试技术的内涵,学生在学习这部分知识时会产生迷茫:学习这些知识有什么用处,在具体的项目测试中,应该怎样应用这些知识?没有实际的项目案例做支撑,学生会失去继续学习下去的兴趣。

针对上面的问题,本文提出将项目驱动法应用于“软件测试理论”课程的教学中,学生在进行项目实践的同时,根据需要学习软件测试相关理论知识,这样有助于提高学生的学习主动性,有助于理论知识的牢固掌握,有助于提高学生的实践技术能力,改善该课程的教学效果。

二、项目驱动法

项目驱动法是目前中国教育领域中一种比较新的教育教学方法。

所谓项目驱动法,是师生通过共同实施一个完整的项目工作而进行的教学活动,它既是一种课程模式,又是一种教学方法。[1]这里的项目根据课程教学内容的不同所包含的涵义也不同。在“软件测试理论”课程教学中,项目即指一个已经开发完成的软件测试工作。通常,项目教学都是实践导向的和任务驱动式的教学。

在项目驱动模式的教学活动中,教师根据学生现有的知识水平和项目经验选择一个合适的项目,以项目实施为主线展开教学活动,把课程相关的知识点的讲解融入项目操作的每个步骤中。在项目实施的过程中,以学生为中心,教师主要做组织和指导工作,学生在整个项目的实施过程中处于探索知识的情景中,充分发挥主动性、积极性和创新精神,综合运用所学的知识和技能解决实际问题,最终达到有效地将所学知识系统化深入化的目的。

这种模式从根本上将传统课堂中老师满堂灌转变为“学生为主体,教师为主导”的教学模式。同时,学生通过一个具体项目的实践,感受到了真实项目管理的思想和团队协作的必要性,提高了学生的创新能力和项目实践能力。拥有真实项目的实践经验使得学生在择业时拥有很大竞争优势。

将项目驱动法应用于“软件测试理论”课程教学中,在课程理论教学中加入一个完整的项目测试实践环节,通过项目实践能够很好地激发学生的学习主动性,使学生经历了一个“先做,遇到问题,再学,解决问题,再做,获得经验”的学习过程,最终完成一个完整的软件测试实践,同时也学到了“软件测试理论”课程应该掌握的理论知识。这样,既解决了软件测试理论课程理论性太强的问题,又解决了测试方法和技术案例实际应用价值不足的问题;而且丰富了学生的实践经验,提高了软件测试理论课程的教学效果。

三、“软件测试理论”课程教学目标和教学内容

1.教学目标

通过本门课程的学习和实践,理解软件测试理论与原则;掌握主流测试技术和方法,熟悉测试用例的编制、熟悉软件测试的基本流程,熟悉软件测试过程中各类技术文档的编制规范,并能灵活运用测试技术解决实际问题。

对于一个具体项目软件,每一个学生都能够顺利完成如下手工测试流程:根据软件需求规格说明书撰写测试计划,设计测试用例、进行测试环境配置和测试数据准备工作、执行各种测试,撰写缺陷报告、跟踪并修复缺陷、进行测试评测,最后提交测试总结报告,达到软件企业对测试专业人才的要求。

2.教学内容

“软件测试理论”课程的教学内容主要包括软件测试基本理论、软件测试基本技术、软件测试过程和软件测试工具。[2]

软件测试基本理论包括软件测试、软件缺陷和测试用例的基本概念,测试的目的、测试模型、测试分类和测试流程。

软件测试基本技术包括白盒测试和黑盒测试;其中白盒测试包括静态测试和动态测试,动态测试又包括程序插桩、逻辑覆盖、基本路径测试等;黑盒测试包括等价类划分、边界值分析、因果图法、判定表法、场景法等。这些基本技术都是在进行测试用例设计时使用的。

软件测试过程是指执行测试的过程,通常分为四个阶段:单元测试、集成测试、系统测试和验收测试。

软件测试工具有多种:功能测试工具、性能测试工具和测试管理工具等。

四、项目驱动法的应用方案

1.项目的设计

实施项目驱动法,首先需要设计项目。项目的设计与选取直接影响到该教学模式的教学效果及学生的学习兴趣。“软件测试理论”课程项目的选取与其他课程又有所不同,学生要进行的操作是对现有的或者已经开发完成的软件的测试工作,因此在设计项目时应遵循以下几条原则:

第一,项目是现有的软件或已经开发完成的软件,软件中有部分明显错误,有部分隐藏错误;明显错误有助于提高学生的测试积极性,隐藏错误有助于启发学生进行更深入的测试。

第二,项目具有典型性,代表大部分软件的共性。通过该项目的测试,学生可以掌握大多数软件的测试流程和测试方法。

第三,项目中有多种情景元素,符合使用多种测试技术和方法,有助于学生在进行项目测试的同时,学习使用多种测试技术设计测试用例的方法。

第四,项目大小和难易适中。每个项目组的人数控制在3~5个人,设计的项目能使学生通过努力在一定的时间内完成。

根据以上原则,本课程目前选择的项目是《企业薪酬管理系统》。

2.项目驱动法的实施

本课程通过让学生进行企业薪酬管理系统完整的测试流程实践的同时,讲解测试需求编写、测试计划编写、测试用例设计、测试环境配置、测试执行、缺陷跟踪和管理、测试报告撰写等内容。课程授课方式主要是分阶段讲解测试过程和测试要求,每一个阶段开始,老师先讲原理,选择部分内容做例子进行讲解,然后学生比照例子跟着做;阶段内容完成时,学生提交完成的文档,老师选择典型的问题进行讲评,然后进行下一个阶段的内容,如此类推直至测试结束。

企业薪酬管理系统测试流程设计如图1所示。

本课程课时为60学时,根据图1系统测试流程图安排,基于项目驱动法的“软件测试理论”课程安排如表1所示。

在课程进行的过程中,必须严格按照项目的测试流程进行,测试流程为:先获取项目测试需求,撰写测试计划,设计测试用例,执行测试,提交缺陷报告并跟踪修复缺陷,最后提交测试总结报告。课程结束,要求学生提交项目测试报告,测试报告包括多个文档,整个流程中每个阶段的工作必须有撰写规范的文档提交,如:测试计划、测试用例、测试执行报告、缺陷报告和测试总结报告等等。

测试报告既体现了教师项目教学的结果,也体现了学生对测试知识技能的掌握水平。通过评价学生作品,找出学生在学习过程中的薄弱环节,进一步改进项目驱动教学的教学安排,使其能够发挥最大的教学效果。

五、结束语

本文针对软件学院软件工程专业的培养对象和教学特点,把真实项目引入“软件测试理论”课程课堂教学中,采用项目驱动教学法,从项目的需求评审、测试计划、测试用例设计、测试执行、缺陷报告、测试评测到测试总结一个完整的测试流程,交给学生组建测试团队,按照流程进行任务分配和管理,最终完成整个项目的测试工作。通过一个完整项目测试流程的完成,有效提高学生的学习和实践能力、解决问题的能力、团队协作能力等,使学生在掌握软件测试的各种测试技术和基本流程的同时,积累了一定的项目测试经验,为他们今后的就业打下了良好的基础。

参考文献:

软件技能论文范文第7篇

关键词:日文软件人才;教学模式;项目训练

计算机科学与技术专业的本科毕业生就业情况不理想是一个不争的事实,但这并不是因为市场不再需要这方面的人才。相反,市场对于软件开发人才的需求量非常大。

日文软件人才需求的现状

软件外包是一些发达国家的软件公司将软件项目通过外包的形式交给人力资源成本相对较低国家的软件公司开发,其目的是降低软件开发成本。目前,全球软件外包市场规模已达1000亿美元,并以平均每年29%的速度增长,在目前全球的软件产值中,三分之一都需要通过软件外包来完成。软件外包已经成为世界软件产业发展的一个重要趋势。

近年来,

“六双”教学模式在人才培养过程中的实施

在“六双”教学模式下,日文软件人才的培养具体采取了如下措施。

优化软件工程专业的任课教师采取“双师”配置,由学校的教授、讲师主讲专业基础课程以及相关的理论课程,聘请企业具有丰富日文软件项目开发经验的工程师讲授技能训练的课程并进行案例教学。通过“双师”的教学,使学生在较短的时间内掌握软件理论和编程技巧。

将日语作为学生的第一外语为了满足日文软件外包人才培养的需要,在语言教学的设置上,软件工程专业在外语教学上将日语作为学生的第一外语,英语为学生的第二外语,跟踪学生语言的学习效果并适时进行调整。毕业生的日语水平应达到日语二级水平,训练有素且深谙日本企业文化,能胜任日文软件开发和应用工作。根据不同的需要,在完成各层次技术课的基础上,还应加强日本语言、日文软件开发流程与规范、日文软件项目管理与企业文化、项目实战等针对日文软件设计开发的专业知识与能力培养。

取得职业资格证书在学校“双证书一体化”培养模式下,使学生在学习期间通过专项的技能训练取得劳动部门认证的职业资格证书,并参加人力资源和社会保障部、工业和信息化部组织的计算机技术与软件专业技术资格(水平)考试,从而取得人力资源和社会保障部颁发的专业技术资格证书。

实行互助教学模式在教学环节上,为了充分调动教师的积极性,通过采取“主讲教师+助讲教师”的互助教学模式,既充分发挥主讲教师的理论水平和实践经验,学生又可掌握助讲教师熟练的编程技巧。

为技能训练创造优异的教学条件虽然国内外提出了不同的软件人才培养模式,但是不管采用什么样的教学模式培养人才,如果培养人才的过程中没有实际项目做支撑都是纸上谈兵。要想提高学生的技能水平,就必须在技能训练上创造条件。可是,使所有学生深入企业实习又是不现实的。我们结合软件工程专业的人才培养定位目标,引进工程教育的理念。为此,我们针对软件工程专业建设,以培养软件应用型人才为目标,以实际工程项目实训为手段,以市场需求为导向,设计开发了软件技术实训平台(以下简称平台)。平台包括用户信息管理模块、理论知识学习、协作交流、软考训练及工程实践等模块,为软件工程专业的学生提供实时在线的服务,最终达到增加学生软件项目实际设计经验,实现企业需求与人才培养对接的目标。日文软件人才培养在技能训练上实行机房教学模拟训练与企业项目实际训练相结合的方法;在实验实训环境建设方面,利用软件人才工程项目训练教学管理平台为学生提供较为严格的软件项目的训练环境,培养学生掌握与企业项目开发接近的技能水平;在学生具备了相当的技能水平后,安排学生到企业完成企业项目实际训练,使学生能够近距离地接触软件企业的项目开发过程。此外,在教师的指导下,学生还面向学校和社会承揽一些软件开发项目,在项目的开发过程中,锻炼学生实际软件开发能力;还可以通过参加各级专业竞赛,在竞赛中提高学生的软件开发能力。学生实行“基础理论+工程实践”的培养模式:先完成“公共基础和专业基础教育”;然后进行“专业案例教学”、“对日软件开发专业教育”的学习。从教育模式上,先主要完成基础语言教学和专业基础课程的教学,让学生系统地接受软件开发和项目管理方面的语言(日语和开发语言)基础、数据库基础、网络基础等方面的教育,从而夯实专业基础知识。“专业案例教学”又可大致分为两个阶段,但是这两个阶段可以根据实际情况相互交叉和重叠。第一个阶段主要进行“软件案例教学”,第二个阶段主要进行“工程实践教育”,通过让学生在校进行相关的专业课程设计以及在企业进行生产实习、综合课程设计、毕业设计、顶岗工作等方式锻炼工程实践的能力。

充分发挥学校教学基地和企业实践基地的优势,全面提高学生的师范能力和实践水平在教材建设方面,学习国外教材的设计理念,配合案例式教学思想,编写符合本专业教学需求的教材。日文软件人才的培养目标是既能动脑、又能动手,具有较高知识层次、较强创新能力的复合型实用型人才,能够服务于滨海新区的对日软件外包。采用“基础理论+工程实践”培养模式,专业基础教学与案例及工程实验教育并重,通过校企合作等途径切实保证学生的实训实习效果。为了使该专业发展更加符合社会人才需求,体现我们的办学特色,也为学生的就业和个人发展提供更多机会,一方面,使学生在学习结束之后成为既掌握良好理论知识,又具备突出的实际操作能力的实用型人才,与社会接轨,能被企业所用;同时面向企事业单位和日本市场,成为具有创新意识的软件工程技术人才。另一方面,从学生发展方面,强化学生专业理论和实践能力全面发展的素质,依据学生不同的需求,在侧重于培养符合日文软件外包服务行业要求的同时,增设师范选修模块以保证学生的师范能力,从学生自身的特点和社会需求出发,打造实用人才,拓宽学生就业和发展渠道。

参考文献:

[1]谢安邦.高等教育学[m].北京:高等教育出版社,1999.

软件技能论文范文第8篇

关键词:软件成本估算 算法模型 功能点 类比法

中图分类号:TP393 文献标识码:A 文章编号:1672-3791(2013)06(c)-0201-03

早在20世纪60年代末,美国国防部门和软件界有关人士首先提出了“软件危机”的警告。软件危机首要体现在“难以正确的估计软件开发的成本和进度”[1]。因此,国内外学者对软件成本估算技术进行了大量的研究。从作者收集到的文献看,现有的研究软件成本估算技术可以分为五类,根据文献数量的从多到少,依次为:基于算法模型的估算技术、基于功能点的估算技术、基于类比法的估算技术、基于专家经验的估算技术和其它类技术。其中,基于算法模型的估算技术包括COCOMO模型、PRICE-S模型、SLIM模型、SEER-SEM模型等等;基于功能点的估算技术包括IFPUG功能点、MarkⅡ功能点、COSMIC-FFPⅠ、COSMIC-FFPⅡ等等;基于专家经验的估算技术包括Delphi法、WBS法等等;其它技术包括回归分析技术、神经网络技术、动态技术、贝叶斯分析技术、模糊理论技术、组合方法技术等等。图1为软件成本估算技术的分类图。

1 基于算法模型的软件成本估算技术

所谓算法模型是指从参数得到成本估算的一系列规则、公式。基于算法模型的软件成本估算技术的基本思想是:找到软件工作量的各种成本影响因子,并判定它对工作量所产生的影响程度是可加的、乘数的还是指数的。不同的算法模型不仅在因子的选取上各不相同,而且在成本因子的关系表达式上也有所区别[2]。

1.1 COCOMO模型

在软件成本估算的模型方面,最具有影响力的算法模型是由南加里福尼亚大学软件工程中心计算机科学系主任Barry Boehm博士为首的团队提出的COCOMO模型(结构型成本估算模型)。Barry Boehm博士在他编著的两本经典著作—— 《软件工程经济学》(1981年出版)和《软件成本估算:COCOMOⅡ模型》(2000年出版)中,介绍了世界上应用范围最为广泛的成本估算模型—— COCOMO模型。《软件工程经济学》以经济学的观点来研究和分析软件开发,以探讨软件成本估算技术与成本估算模型。该书是原版COCOMO模型(COCOMO

81)最完整的信息资源,提供了理解与应用COCOMOⅡ模型的大量素材。COCOMOⅡ模型是对COCOMO81的改进版本,在诸多方面进行了重要更新和扩展。Barry Boehm博士的这两本著作既是国内外的学者们研究COCOMO模型的理论起源,也是研究软件成本估算技术的重要参考文献。

COCOMO模型的通用的计算公式如下[3]:

其中,PM表示工作量(单位通常为人月),Size表示软件规模,E表示对工作量呈指数级影响的比例因子,EM表示工作量的乘数因子。

COCOMO模型共经历了三次发展,按照时间顺序分别是COCOMO81、COCOMOⅡ、COCOMO模型扩展。

1.2 PRICE-S模型

PRICE-S模型最初是由RCA公司为阿波罗登月计划的软件项目而开发的,仅供内部使用,然后于1977年作为专利模型获得版权,在美国国防部、美国宇航局等其它政府的软件项目中推广使用。尽管该模型的个别核心算法已经公开,但是尚未公布全部内容[4]。美国国防部采用PRICE-S模型进行软件成本估算的项目有:F-22战斗机(ATF)、F-35联合攻击机(ISF)、Tanker Program美国空军新型空中加油机等[5]。

1.3 SLIM模型

SLIM模型(the Software of Life-cycle Model)是由Quantitative Software Measurement的Larry Putnam于二十世纪七十年代末开发的、建立在Putnam采用一种被称为项目个人水平与时间的瑞利(Rayleigh)分布对软件生存期分析基础上的模型[6]。

1.4 SEER-SEM模型

SEER-SEM[7]是由Galorath Inc.公司提供的产品,该模型是建立在原始Jensen模型基础上,推向市场已经有15年左右。在此期间,该产品已经演化为一个支持自顶向下和自底向上评估方法的成熟工具,其建模公式具有专利,但是它们采用的是参数估算方法。该模型的应用范围很广,覆盖了项目生存期的所有阶段,从早期定义,到设计、开发、交付和维护。可以处理各种环境和应用,如客户机-服务器、单机、分布式、图像等等。开发模式覆盖面向对象、重用、COTS、螺旋、瀑布、原型、增量型。

2 基于功能点的软件成本估算技术

功能点方法是在需求分析阶段基于系统功能的一种规模度量方法,是基于应用软件的外部、内部特性以及软件性能的一种间接的规模测量[8]。功能点方法可以细分为功能点、功能扩展点(包含特征点、3D功能点、全功能点)、对象点和用例点。具有影响力的功能点方法有以下几点。

2.1 IFPUG功能点分析法

1984年,功能点度量已得到广泛应用,形成了“国际功能点用户组”(International Function Point Users Group,简称IFPUG),现在已成为世界上最大的软件测量联盟,很多国家的大批软件机构都加入了IFPUG。该组织提出的“IFPUG功能点分析方法”是使用最为广泛的功能点分析方法,已经成为这一领域的标准,2004年该组织了《IFPUG功能点计数实践手册4.2版》[9]。

2.2 MarkⅡ功能点分析法

1987年,Charles Symons正式提出了MarkⅡ功能点方法[10]。该方法由英国软件度量协会(United Kingdom Software Metrics Association,简称UKSMA)研究和推广,主要在英国使用。MarkⅡ功能点方法是一种定量的、针对应用软件的测量分析方法。该方法的输入是《需求规格说明书》、《概要设计》、《数据库设计》和《业务说明书》,输出是未调整功能点、技术复杂度调整和已调整功能点。MarkⅡ方法在IFPUG方法的基础上精简组件模型,使用连续性的度量使计算结果更精确[11]。

2.3 COSMIC-FFPⅠ

1997年,魁北克大学软件项目风险管理研究实验室提出COSMIC-FFPⅠ方法[12]。该方法后来由国际组织软件度量共同协会(Common Software Measurement International Consortium, COSMIC)继承并进行完善。FFP是指全功能点(full function point),COSMIC-FFPⅠ是IFPUG方法的扩展,针对实时系统软件增加了度量控制进程的分析规则,处理实时系统中大量存在的一次性数据。

2.4 COSMIC-FFPⅡ

COSMIC-FFPⅡ是COSMIC-FFPⅠ方法的升级,但其分析规则与COSMIC-FFPⅠ完全不同,其计算规则于2001年。该方法综合了其它功能规模度量方法的优点,提出了全新的组件模型和分析规则,适用于MIS系统、实时系统、中间件等多种类型系统的功能规模计算。

另外,Checkpoint也是采用功能点作为初始输入。它是由软件生产率研究所(SPR)根据Capers Jones的研究开发的一种基于知识库的、拥有一个包含大约8000个软件项目的数据库的软件项目评估工具[13]。

3 基于类比法的软件成本估算技术

使用类比的方法进行估算是基于案例推理技术(Case Based Reasoning,简称CBR),在软件成本估算中的一种应用形式,其主要思想就是通过待估算的目标与一个或多个已经完成的类似项目的对比来预测其相应属性[14]。基于案例推理的软件开发工作量估算方法的基本思路是:根据案例推理的基本原理,对以往发生的、历史的、具有真实数据的软件项目进行工作量驱动因子分析,寻求一般规律,从而估算当前待估算软件的开发工作量。估算软件工作量的关键步骤为:提取软件工作量驱动因子;计算待估软件与各个案例之间的相似度;估算软件工作量[15]。

4 基于专家经验的软件成本估算技术

基于专家经验的估算技术也称为专家判定法,是指与一位或多位专家进行商讨,专家根据自己的经验和对所涉及项目的理解,得出该项目的成本估算值。专家估算法适用于没有历史数据的情况下的成本估算,并且在决定其它模型的输入时特别有用[16]。

4.1 Delphi技术

Delphi技术是最流行的专家评估技术。

Delphi技术是兰德公司在四十年代末为预测未来事件而开发的,其名字源于古希腊神使占卜所在Parnassos山南侧的Delphi。标准Delphi技术不允许小组讨论,宽带Delphi技术要求在评估后进行小组讨论。

4.2 WBS法

工作分解结构WBS(Work Breakdown Structure),通过将项目元素放置到一定的等级划分中来简化预算估计与控制的相关工作。WBS包括两个层次的分解:一个表示软件产品本身的划分,把软件系统分解为各个功能组件以及其下的各个子模块;另一个表示开发软件所需活动的划分,工作活动分解为需求、设计、编码、测试、文档等大块以及其下的更具体的细分。

5 其它类软件成本估算技术

软件成本估算技术除了基于算法模型、功能点、类比法、专家经验的技术方法之外,还有回归分析、神经网络、动态技术、贝叶斯分析、模糊理论以及将不同的估算技术进行组合等技术方法。

5.1 回归分析

回归分析包括分类回归树、最优子集回归、逐步方差分析、普通最小均方回归、稳健回归等。其中普通最小均方回归是最传统的方法。

普通最小均方回归(Ordinary Least Squares,OLS)也称作标准回归,指的是采用最小均方普通线性回归的经典统计方法,该方法简单好用,很多商业软件包如Minitab、Splus和SPSS中都有该技术软件。“Robust”回归是对标准OLS方法的改进。很多现存的参数成本模型(COCOMO II,SLIM,Checkpoint,等)都使用了各种形式的回归技术。

5.2 神经网络

神经网络(Neural Network)(1996年根据Gray 和McDonell的研究),是最常见的代替最小均方回归的软件评估建模技术,这些模型可以用历史数据来“训练”,以便形成更好的能自动调整算法参数值的模型,减少实际结果和模型预算值之间的差异。

5.3 动态技术

动态技术(Dynamics-based Techniques)是指软件项目的成本因子在系统开发的期间不断变化,它是一个连续的仿真建模方法。该技术最早是在1961年Jay Forrester研究发明的,1994年Macdachy提出了系统仿真模型的公式,并用于软件工程估算。

5.4 贝叶斯分析

贝叶斯分析是允许调查人员根据样本和专家判断的预先信息采用逻辑相容的方法产生推论,COCOMO II就采用了该技术。

5.5 模糊理论

模糊理论一般不会单独用于软件成本估算中,通常需要与其它的方法结合使用。

5.6 组合方法

组合方法是指将不同的软件成本估算技术组合在一起使用,或者将其它理论与软件成本估算技术相组合的方法。典型的组合方法有COBRA(cost estimation, benchmarking, and risk assessment)及其后来针对Web应用的扩展Web-COBRA。除此之外,还有:将贝叶斯网络与COCOMO模型组合,将模糊理论与COCOMO模型组合,将神经网络与COCOMO模型组合等等。

6 各类软件成本估算技术的比较

下面通过表格的形式从估算技术的基本思想、主要优缺点两个方面对不同的软件成本估算技术进行比较。

参考文献

[1] 总装备部电子信息基础部标准化研究中心.军用软件工程系列标准实施指南[M].北京:航空工业出版社,2006:2.

[2] Barry boehm.Software Engineering Economics[M].Canifornia:New Jersey Prentice Hall.

[3] Barry Boehm.Constructive Cost Model[M].Beijing:China Press,2005:1.

[4] Park Riee.The Central Equations of the PRICE Software Cost Model[C].Price of the 4th COCOMO Users Group Meeting,1988:256.

[5] 许道利.基于模型的软件成本估算技术研究及工具原型实现[D].长沙:国防科学技术大学,2007.

[6] Lawrence Ware Myers.Measures for Excellence[M].New York:Yourdon Press,1992:1.

[7] 国家计委,财政部,总参谋部,国防科工委.军品价格管理办法[S].北京:四部委,1996.

[8] 张文华.功能点的计算方法[J].电脑知识与技术,2006(4):17-18.

[9] Roger S.Pressman,Software Engineering[M].北京:机械工业出版社,2008:37.

软件技能论文范文第9篇

【关键词】软件工程;应用导向;“一体化”教学理念

平顶山学院软件学院从建系以来的培养目标就是培养应用型人才。而软件工程课程是软件学院软件工程专业的一门专业基础核心课程,也是一门理论与实践并重的课程。该课程的培养目标也应该与院系培养目标一致,培养应用型人才。但在实际的教学过程中,存在较大的难度。现有的软件工程课程存在着知识与现实脱离、课程内容比较庞杂和抽象、教学实践环节薄弱等,对于缺乏软件开发实践经验的本科生来说,单纯地讲授抽象的理论知识往往使学生感到枯燥无味且难以理解。达不到良好的教学效果,无法满足现代软件工程人才的培养目标。为此,以“应用”为导向的软件工程课程教学过程的设计显得尤为重要。

1软件工程课程的课程目标

《软件工程》课程以培养学生完整严格的软件工程观念和训练软件项目开发、管理能力为目标。通过本课程的理论教学,要求学生了解软件项目开发和维护的一般过程,建立良好的软件设计开发理念,能自觉按照软件工程的方法进行软件的开发和维护工作;掌握软件开发中传统和最新的方法与技术,学会使用分析设计工具,培养学生用工程的方法进行软件开发的能力和素质;了解软件开发过程中的各种标准与规范,包括国际国家标准、行业标准、企业规范和项目规范等。通过本课程的实践教学,训练学生运用软件工程CASE工具的能力,同时强化训练个人分析设计能力、工程实践能力、创新能力、规范化工作能力、沟通表达能力、文档写作能力、团队配合能力、自我学习与可塑性组织能力。通过本课程的理论学习与实践练习,了解软件工程各领域的发展动向;如何用工程化的方法开发软件项目,以及在开发过程中应遵循的流程、准则、标准和规范。使学生基本具备进行软件工程项目分析、设计、实现和进行有效的项目管理以及文档编写的能力。为适应计算机应用各领域对专业技术人才的需求,根据应用型本科技术人才培养目标的需要,我们坚持课程体系的科学性、系统性与开放性,关注计算机软件技术发展研究的最新动向,及时更新与充实课程内容。

2教学设计原则

坚持以应用能力培养为本位的设计原则,教学内容、教学方法以及考核方式均围绕能力培养来进行设计。

3教学设计策略

3.1知识域覆盖

针对软件程序员/软件设计师职业,以职业所需的知识和技能为先导,突出技术理论和技术应用主线,实现知识传授与技能培养并重,体现知识、能力、素质培养“三合一”特征。理论部分突出基本知识和基本概念的表述,知识覆盖范围,着重把握理论知识的深度和要领,力求线条清晰,为后续技术方法介绍和运用提供技术理论支撑;对软件工程基础理论知识的涵盖原则是“必须的不缺、不用的不设”,对技术原理(方法)的分析原则是“举一反三”,对实践技能训练的原则是“项目运作”。

3.2技术方法先导

软件工程是一项技术性较强的工作,软件规范的实施是以技术的方式开展或进行,教学策略设计是以技术与工程为导向,围绕着软件工程项目的进程展开,一个项目的进程当中能处处体现工程特点和专有技术的特征。因此,教学设计通过项目活动及过程来呈现问题、运用相关理论知识解析问题和通过工程过程解决问题。通过项目阐明技术方法与策略运用。

3.3突出技能训练

技能训练也是本课程重要组成,践行“做中学”人才培养理念,建立课内课外一体化实践教学体系。建立“1-7课题组”课外工作机制,将学生的实践教学环节延伸到课外。学期大作业要求学生按“1-7课题组”课外完成一个实际软件系统的分析、设计、实现和模拟运作等4个过程,并按照国家标准《GB/T8567-2006计算机软件文档编制规范》规定的要求,提交各阶段报告,课题组完成后通过课堂答辩提交项目结果。通过技能训练学习掌握当前主流软件的软件开发方法、工程技术,并将软件工程理论知识与软件工程过程密切结合。在软件分析与设计能力培养上,主要通过实际案例或软件项目的运作,以“学中做与做中学”方式中培养和形成专业技能。

4教学内容设计

结合软件产业发展的要求,以能力需求为导向。坚持理论够用,将相关知识点分解到实际项目案例中,让学生通过对项目的分析和实现来掌握相关理论知识和软件开发技能,选择技术实用性、知识拓展性强的教学案例和实验项目,在保持传统理论知识讲授的同时,同时关注计算机软件技术发展研究的最新动向,将相关内容融入到相关的教学单元中,及时更新教学内容,并通过阶段性安排新技术讲座,布置课外读物等方式,使学生了解最新热点知识,掌握新方法。

5教学方法设计

在教学过程中,针对专业学生的特点,从实际教学出发,在对多个小软件项目的研究基础上,提出首先结合小软件项目,以传统的结构化的方法为主线全面系统的进行教学设计,将软件工程思想贯穿于教学中,这样可以从综合的观点看待整个系统开发过程。然后以快速原型法、面向对象法为辅线扩展学生进行软件设计的思路,从而总体上提高学生进行软件设计、编写文档的能力。改进教学方法和教学手段。教学中,实行启发式、讨论式、行动导向、案例分析、项目驱动等教学,有效地调动学生的积极性和主动性,激发其学习潜能,注意学生的参与和互动。采用“提问式切入”、“问题讨论式”等方法对前述内容进行深入复习和引申,同时采用“问题引入”、“情境导入”等方法引入新的教学内容;采用“以项目开发驱动”的方法授课,将相关知识点融入项目,通过项目实现,让学生掌握软件工程技术,并对面向软件工程理论有一个直观和更加感性的认识。

6课程重、难点解决方案

6.1软件工程课程重点

软件工程基础理论,软件工程策略,面向数据流的分析方法、面向数据结构的设计方法、问题域中对象的识别、对象关联关系的建立、对象的结构层次、建立动态模型、建立功能模型,以及软件工程过程管理和配置设计。

6.2软件工程课程难点

软件需求分析模型,软件开发过程模型,软件质量分析与度量,软件设计方法、软件维护。

6.3重、难点的解决方案

软件工程所涉及的基本概念、基本方法、基本过程和应用技术,教学必须作为重点突破,主要措施是理论讲解和实践体验“双管齐下”,为学习软件工程专业知识和掌握实际开发技能奠定基础。理论讲解实施项目教学模式,以精讲和透彻分析、自主学习、探究方式和集体讨论的形式进行,引导学生理论与应用相结合;实践教学主要是通过课内、课外一体体教学体系、产学合作方式等方式,通过项目开发过程中的问题,有针对性的学习软件工程理论。引入真实企业项目,在引入项目的同时,引入企业项目经理等技术与管理人员,协助完成合同任务,将教学活动与项目实施融为一体,实现工学结合。培养学生在实践中学会发现问题、研究问题、分析问题、解决问题,培养学生综合实践能力。

7考核方式与评价方法

采用过程性考核方式,评价所有的学习结果。制定了分阶段、互评定的二次考核体系,即课程考核由三部分组成:平时考核(课堂表现、考勤)占20%,理论(期末考试)考核占40%,实践(技能)考核占40%。其中实践成绩的评定包括小组成绩和个人成绩两部分,各占50%。

8总结

该教学过程设计,切合院系在2013年提出的“一体化”教学的理念。从这几个学期的教学效果看,取得了一定的成果。但在具体实施的一些细节中还存在一些问题,有待进一步思考、提高。

【参考文献】

[1]刘强,等.“软件工程”课程教学实施方案[J].中国大学教学,2011(2).

[2]刘海燕,王雅轩,等.基于项目案例驱动的《软件工程》实践教学研究[J].科技创新导报,2015(14).

[3]汪璟玢,叶福玲.案例与项目实践结合的“软件工程”教学方法[J].计算机教育,2012(10).

软件技能论文范文第10篇

关键词:CDIO;软件工程;课程体系

中图分类号:G642 文献标识码:A 文章编号:1009-3044(2013)10-2415-03

CDIO 工程教育模式是近年来国际工程教育改革的最新成果。CDIO 是构思(Conceive)、设计(Design)、实现(Implement) 和运作(Operate)四个英文单词的缩写[1]。CDIO 工程教学模式是一种倡导以工程项目为主线,将项目研发不同阶段涉及的知识与课程进行有机的结合,教师针对课程在工程项目的地位,运用多种教学方法引导学生进行主动学习,强调学生的学习主体性,注重能力培养的一种教学模式。

1 软件工程专业应用型人才培养理念

1.1 人才培养目标

软件工程专业要求培养适应计算机应用学科的发展,特别是软件产业的发展,具备计算机软件的基础理论、基本知识和基本技能,具有用软件工程的思想、方法和技术来分析、设计和实现计算机软件系统的能力,能在IT行业、科研机构、企事业中从事软件工程项目的开发与测试、网站开发、网络游戏设计的高素质应用型人才。

1.2 基于CDIO模式的人才培养过程

CDIO 理念下的软件工程专业人才培养以软件工程项目为主线,采用理论、实践、案例分析、综合项目实践和工程化毕业设计的一体化教学模式。在整个人才培养过程中,按照软件工程项目的基础知识、分析、开发、运行和维护的流程组织教学,同时培养学生具有较强的外语能力、扎实的软件工程基础知识,并熟练掌握软件开发与测试技术,熟悉服务外包软件开发流程。

软件工程是注重系统化和工程性的专业, 其内容具有厚基础、更新快、实践重等特点,这些特点决定了软件工程人员要具备坚实的理论基础、一定的工程实践能力和创新能力。本着培养“技术基础厚、应用能力强、综合素质高”应用型技术人才为宗旨,软件工程专业的教学安排如下:第一学年主要学习公共基础课程和部分专业基础课程,使学生掌握从事软件工程领域的专业基础知识,培养学生的数学工程职业基础和人文素养;第二学年主要学习专业基础课程和专业核心课程,重点结合工程项目进行“做中学”,形成自主学习、团队协作和计算机软件基础及软件工具软件产品的基本工程能力;第三学年主要学习方向核心课程和专业拓展课程,引进当前软件开发新技术、新方法和新平台,采取合作探究式学习方法,培养软件系统与应用及软件工程软件管理能力;第四学年主要进行综合项目实践类课程的学习,塑造学生软件工程能力、团队协作能力,对学生的职业岗位能力进行训练,使学生在进入岗位前就具备较好的工程经验,实现从学校到职场的转变。

1.3 项目贯穿学习过程

CDIO模式的核心就是项目教学,可将企业真实项目直接引入课堂,也可以由教师设计项目,要求项目涵盖该教学任务的大多数知识点,并且能有明确的阶段性目标。在项目教学中,教师的身份也就集工程师、导师、教师“三师”为一体,从软件项目的构思(C)、设计(D)、实现(I)到运行(O),教师的工程化指导至关重要,这就要求教师进行自身工程实践的经验积累。项目教学中采用过程化考核方式,以成果为考核依据。

2 软件工程专业综合能力素质的分解

2.1 综合能力素质分解原则

软件工程专业综合能力素质的分解基于以能力培养为主线,突出实践性、发展性和工程性,注重学生的基本人文素质、职业基础和创新能力的培养,注重学生潜在发展能力、职业适应能力和职业迁移能力的养成,注重专业素质和身心素质的锻炼培养。同时结合区域产业发展,强调专业素质和非专业素质并重。

2.2 综合能力素质分解

结合CDIO模式的特点,软件工程专业核心能力分解为项目构思阶段的计算机软件基础(CSE)能力、项目设计阶段的软件工程软件管理(SEM)能力、项目实现阶段的软件系统与应用(SSA)能力、项目运行阶段的软件工具软件产品(STP)能力,非专业技能素质的数学工程职业基础(MEP)能力和基本素质(BAS)贯穿这个项目的CDIO模式过程。CDIO模式下的软件工程专业综合能力素质分解如图1所示。

3 基于专业综合能力素质分解的软件工程专业课程体系模型

专业人才的培养要体现知识、能力、素质协调发展的原则。科学认识和分析知识、能力、素质的辨证关系,以“知识是基础、是载体,能力是知识的综合体现,素质是知识和能力的升华”先进理念为指导思想,要设计适当的知识为载体,实施素质和能力培养;设计适当的知识群构成知识体系,要强化知识体系的设计与建设,使专业教育内容的每一个教学模块构成一个以知识体系为载体,实施素质和能力培养有效的训练和学习系统。

3.1 课程体系开发思路

课程体系是达成人才培养目标的有力支撑,科学合理的课程体系会促成高端技能型人才的培养。根据专业综合能力素质分解的结果,基于CDIO 的软件工程专业课程体系的构建原则从以下几方面进行考虑:

1) 充分发挥工程性的专业特点,基于CDIO培养大纲设置课程体系,实现学校与企业零距离接轨。

2) 注重公共基础课程、专业基础课程、专业核心课程的课程设置, 借助当前主流的软件开发平台,做到软件开发语言和技术四年不断线。

强调学生工程性、技术性、实用性、系统性、综合性、复合型和适应软件工作流程等素质的培养,实现“熟悉软件工程技能、更完整的系统级认识、掌握某一方向的软件设计开发技术和适应软件企业的英语加计算机能力”四个目标。在这一阶段中,综合考虑主干专业课程和特色课程的设置,全面考虑课程之间的关联,强调统一设计、统一规划。

3) 结合区域经济发展特点,根据软件的新兴技术和行业软件的发展需要设置专业选修课, 形成独特的教育内容、教育途径和教育体系。

4) 遵循软件行业的先进性、灵活性、工程性原则。

3.2 模块化平台课程体系框架

按照顶层设计的方法,软件工程专业教育内容由普通教育内容、专业教育内容和综合教育内容三个类别,公共基础(通识教育、基本素质)课程平台、学科及专业基础课程平台、专业(核心)课程平台、专业拓展(选修)课程平台、集中实践教学项目平台等五个平台及13个教学模块构成:

普通教育内容包括:①人文社会科学,②自然科学,③外语,④体育,⑤实践训练等教学模块。

专业教育内容包括:①本学科专业基础,②专业核心,③专业方向,④专业实践训练等教学模块。

综合教育内容包括:①思想教育,②学术与科技活动,③文体活动,④自选活动等教学模块。

课程体系中五大教学平台之间的关系如图2所示。

各平台的内容包括:

1)公共基础课程平台

该平台是依据人才培养规格而设置的,包括较宽广的基础课程、通用课程。包括英语、政治理论课、德育和体育、数学基础等。侧重培养基本素质、职业素质和职业道德。主要课程有思想道德修养与法律基础、思想、邓小平理论和“三个代表”、马克思主义基本原理、中国近代史纲要、大学英语、体育与健康、高等数学、大学语文等课程。

2)学科及专业基础课程平台

该平台是依据软件工程学科来设置课程,侧重于软件工程中的专业技术。包括软件基础课程群、硬件基础课程群和理论基础课程群等,主干课程包括顺序开设的程序设计基础、数据结构与算法、工程数学等课程。

3)专业(核心)课程平台

该平台是依据人才培养主线而设置课程,主要培养学生面向软件开发岗位群的应用能力,并为其解决实际应用问题打下坚实的理论基础。主要包括以下顺序开设的课程:面向对象程序设计、面向对象程序设计、建模课程、系统开发、软件工程、项目管理、软件质量保证、计算机网络等。

4)专业拓展(选修)课程平台

该平台是依据应用型本科定位而设置的。考虑到计算机应用型人才在知识结构上应具有知识面宽、基础扎实、应用性强的特点,在该课程平台上设置的课程具有学科知识面宽;理论深度稍低,学科知识在应用有针对性,共设计了职业素质、软件体系、行业软件应用、游戏软件等模块,设置了如下课程:国际软件工程师职业道德、软件体系结构、软件项目管理、物流信息技术、大宗商品交易系统、管理信息系统、RIA编程技术、游戏脚本编程、3DMAX建模制作、心理学、Flas制作、中国文化史等。

5)实践教学项目平台

4 人才培养评估

CDIO 模式下的软件工程专业人才培养模式以提高学生工程实践能力为本,注重培养学生的工程基础知识、个人能力、人际团队能力和工程系统能力。在CDIO工程教育模式中,参照 CDIO 标准11,采用多元化过程式的模式评估学生的软件工程能力和职业素养。其中,工程能力主要从软件开发与实现、软件测试与质量保证、软件建模、软件开发过程管理、软件方法、文档写作和英文阅读写作能力等方面进行评估;职业素养主要从职业道德、职业素质、主动学习能力、行业知识技术和团队合作能力等方面进行评估。评估采用理论考核、实践考核、大作业和小组评价等方式。理论考核主要考查学生对软件工程基础知识的掌握程度,实践考核主要考查学生的工程系统能力,大作业主要考查学生对项目工程的理解和掌控程度,小组评价主要考查学生的团队合作能力。这种多种方式结合的考核模式能够比较全面有效地反映学生的工程构思、设计、实现和运行各个阶段的情况,促进学生全方位发展。

5 结束语

基于CDIO 的软件工程专业课程体系符合软件工程专业的工程性和学科性的特点,围绕软件工程基础知识、软件管理能力、软件系统与应用能力和软件工具和产品能力四个方面开展工作,创新了人才培养模式,加强了软件开发技术和工程方面的课程教学,这些课程通常都能使学生拥有自己的作品,教学效果良好。实践教学环节无疑是与企业无缝连接最好的渠道,通过设置多种方式的实践教学,使学生真实的接触企业项目,按照企业要求模拟软件开发流程,在毕业设计完成后,学生的实践动手能力达到企业要求。真正做到了“技术基础厚、应用能力强、综合素质高”,这是CDIO教育模式的本土化,为促进工程教育模式的改革和创新、卓越工程师的培养和现代职教体系的建设提供借鉴。

参考文献:

[1] 尹春娇, 沈桂芳. 探析CDIO模式在应用型本科院校软件工程课程实践教学中的应用[J].科技信息, 2012(31):15-16.

[2] 张锦华,丁新慧. 基于CDIO理念的创新型软件人才培养模型[J]. 周口师范学院学报,2012(9):119-122.

[3] 屈卫清. 区域产业发展与软件专业细分相关性[J]. 人民论坛, 2010(11):234-235.

[4] 田玲, 尹庆民, 马丽仪. 基于CDIO模式的服务外包人才培养探索与实践[J]. 科技管理研究,2012(16):164-167.

软件技能论文范文第11篇

关键词:软件工程 实例化教学 项目实践

中图分类号:G462 文献标识码:A 文章编号:1674-2117(2014)16-00-02

1 前言

软件工程是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。它涉及程序设计语言、数据库、软件开发工具、系统平台、设计模式以及管理、标准、个人技能、团队协作和专业实践等多方面的知识和技能。它是一门理论性和实践性并重的重要学科。

软件工程课程是计算机专业重要的专业基础课。通过软件工程课程的学习,学生能够了解和掌握软件工程的理论、技术和方法,具备作为软件工程师所需的专业能力。由于软件工程的课程特点,传统的教师课堂授课为主、学生被动听讲为辅的教学模式在实践环节上存在很大不足,软件工程的理论和方法是从众多软件开发实践中总结出来的。但是对于缺乏软件开发实际经验的本科生来说,单纯地讲授理论知识往往使学生感到枯燥无味且难以理解,这严重影响了课程的教育质量和教学效果。近年来,部分学校采用了案例化教学的方式改革软件工程课程教学,在案例化教学中收集和总结了若干典型的软件开发案例,将这些案例贯穿于理论知识的讲解中;同时引入“做中学”教学模式,让学生在实际的项目开发中进一步理解理论知识,取得了很好的教学效果。[1-4]

我们在软件工程的授课过程中,也引入了案例化教学模式。总体来讲,学生的反应是积极的,不过也发现了一些问题。

(1)任课教师本身缺乏使用软件工程方法开发一个完整系统的经验,仅限于照本宣科地介绍基本原理和实际案例,不能将当前实际案例和软件工程方法有机地结合在一起,与实际的软件工程实践有明显的差距。

(2)大学阶段的课程实践基本以个人编程完成为主,软件工程方法起到的作用有限。即使面对需要团队协作的作业,也因为规模小、从头开发和无需维护的特点,使得学生感觉到使用软件工程方法作用不大,除了增加工作量外,没有明显的益处,无法激发他们进一步学习的兴趣。

(3)现有的软件实验环境偏重于提供编程工具的支持,缺少一个完整的软件工程支持环境,缺少适合教学使用的实验环境和资料,学生得不到真正的锻炼。

2 教学改革

针对现存的问题,结合ACM和IEEE联合的CCSE2005的相关内容[5],我们进一步改革课程体系框架和教学内容,本文将着重介绍我们在软件工程课程教学中的经验和成果。

IEEE的软件工程知识体系包括10个知识领域:软件需求、软件设计、软件构造、软件测试、软件维护、软件配置管理、软件工程工具和方法、软件工程过程和软件质量。参考这10个领域知识,根据教学目标,结合理论知识、软件工具和工程实践等方面组织整个课程内容,在理论、应用、实践三个层次上建立了软件工程的课程体系。

理论部分以当前流行的统一开发过程RUP和UML语言为核心,覆盖IEEE的软件工程知识体系。包括软件需求、软件设计、软件实现、软件测试、软件演化、软件质量和软件配置管理等内容。

应用部分结合实际案例,覆盖IEEE的系列软件工程标准,学习RationalRose、ClearCase、ClearQuest、JUnit、MicrosoftProject等常见软件工程工具和环境。

实践部分要求学生以团队的方式协作开发具有一定规模的软件系统,并且在实践过程中能够熟练使用软件工程工具。实践部分着重培养学生应用软件工程的思想和现代技术解决软件开发问题的能力。

2.1 理论知识

理论部分的教学仍采用教师授课为主的模式,向学生讲述软件工程的基本理论,内容力求少而精,目的是在较短时间内让学生了解现阶段最广泛使用的软件工程技术的理论基础,为下一步应用部分的学习奠定基础。在具体的授课过程中,为避免单纯理论学习的枯燥性,授课内容围绕典型的软件开发案例展开。学生学习的注意力和兴趣是影响教学质量的重要因素。我们使用的案例是从国内著名的软件开发公司得到的真实案例,学生可以完整地看到项目的全景,这样既帮助学生认识到学习课程的必要性,又调动起学生的学习兴趣。

2.2 应用技术

软件工程与其他计算机课程不同,学生需要面对的不只是单一的软件工具,而是一组软件工具组成的软件支持环境。为了增强软件工程课的真实性,我们选用了一组业内流行的软件工程工具,营造一个适合软件工程课程项目实践的软件工程环境。使用RationalRose完成需求分析与系统分析和设计,使用ClearCase完成源代码管理,使用ClearQuest完成缺陷管理,使用MicrosoftProject完成项目资源调度等。考虑到相关软件工具的复杂性,为避免学生陷入单纯学习软件功能的误区,我们坚持“用中学”的方针,不要求学生面面俱到掌握软件功能,而是从实用角度出发,以完成项目为目的,掌握软件的常用功能。我们会首先演示如何使用相关软件完成典型案例,然后要求学生模仿示例,自行创作设计。

2.3 项目实践

大学阶段,大部分计算机课程实践通过学生的独立编程即可完成,软件工程课程实践则不同,软件工程方法和技术的作用必须在完成项目的过程中通过团队合作才能体现出来。

我们刚刚开始教这门课的时候,为了便于管理,选择的项目偏小,一般适合3~5人完成。不过通过几学期的实践,发现效果不佳。因为规模不大,通常只会有1~2人来承担主要开发工作,其他学生通常只起到辅助作用。在开发过程中,由于核心开发人员少,口头沟通远要比书面沟通简单有效,没有认真准备项目文档的动力;而且项目是从头做起,不需要利用以前文档来了解项目情况,无法体会到项目文档的重要性。在此种情形下,学生感觉到引入软件工程只是额外增加了工作负担,并没有明显的益处。

为了更好地帮助学生认识到这门课的重要性,我们在实践阶段做了若干改进。

(1)有意识地扩大了项目的规模,开发团队的人数也相应增加,通常开发团队人数在10人左右。人数的增多使得单纯的口头交流很难保证项目的顺利进行,从而促使学生撰写项目文档。

(2)分组时,根据学生的能力和水平,明确学习任务,进行合理有效的分工。在一个项目组内,应该有项目经理、系统分析师、软件工程师、配置管理员、测试工程师等角色。同一名学生在不同的开发阶段可能会承担不同的角色。

(3)项目开发也分为两个阶段,第一阶段完成后,我们会再提出一份更新的需求,要求在第一阶段的成果上继续开发。项目组的成员也不是一成不变的,第二阶段时每个项目组至少更换50%的成员。

在项目开发过程中,我们会监控项目的开发过程,参与项目阶段成果的评审工作。项目开发过程尽可能模拟真实软件企业的开发过程,最终使学生完成需求分析、设计、代码编写、测试、部署全过程,培养学生的合作意识、责任感和集体荣誉感。学生在开发过程中遇到问题,我们也不会直接给出答案,会建议他们自行讨论来解决,提高他们的沟通交际能力,培养其团队合作精神。

在教学过程中,理论部分、应用部分和实践部分并不是相互独立,而是有机地结合在一起。我们在该课程教学初期,首先给学生若干项目课题进行选择,题目选定后,以自主结合的方式完成分组。这样做可以有效地增强学生学习时的目的性。在重要章节的教学过程中,遵循先理论知识、再应用技术、最后实践部分的次序进行。完成某章节的学习后,就应该在规定时间内提交项目相应阶段的工作成果。例如,需求分析章节的理论知识学习安排在第2周、应用技术部分安排在第3周、需求分析说明书要求在第5周提交;系统分析的理论知识学习安排在第4周、应用技术部分安排在第5周、系统分析报告要求在第7周提交。我们会及时对每一部分的工作成果进行评讲,指出缺陷和不足,保障项目开发的顺利进行。在期末考试结束之前,结束第一阶段的开发工作。随后,我们会给出项目的新增需求,并调整项目成员,开始第二阶段的开发工作。由于第二阶段是在所有课程考试结束之后,学生有条件在固定地点集中上机,因此第二阶段的工作将尽可能模仿软件公司的开发模式。首先,项目经理必须和组员共同讨论出一份可行的项目开发计划。我们将根据该计划监控项目进展过程,并在重要节点抽查该项目的进展情况。项目计划的重大变化,必须及时更新项目开发计划。其次,在项目进展过程中,每个开发阶段的工作成果都必须经过评审。不评审或者评审不合格,不可以开始下一阶段的工作。最后,每个项目成员必须每天提交工作进展报告,内部会议也要有会议记录。所有这些项目管理相关文档和项目本身的文档都需要在项目结束时一并提交。评定成绩时结果和过程并重,项目管理相关文档是过程的重要体现。

3 考核方法和教学效果分析

为突出实践环节的重要性,我们将项目实践部分的考核比例增加至总成绩的50%,即成绩标准为项目实践成绩(50%)+笔试成绩(30%)+平时成绩(20%)。其中第一阶段的项目实践成绩占20%,第二阶段占30%。在对学生的实践环节考核中,我们更侧重于对学生的实践操作能力、文档编写能力、团队合作和沟通能力的考核。为避免浑水摸鱼,在评定成绩时,根据贡献不同,组中的不同成员会有不同的权重,每个学生的最终成绩是团队成绩和权重的乘积。采用新的考核方法后,极大地调动了学生参与项目实践的热情,取得了良好的学习效果。在随后的毕业设计和程序设计比赛中学生都体现出较强的团队开发能力。

4 结语

软件工程是一门理论和实践并重的课程,只有加强实践环节的训练,理论知识才能得到有效巩固。我们在教学过程中,始终把项目实践放在突出的地位,通过增大项目规模和引入两阶段项目开发,让学生主动认识到软件工程课程的重要作用。实践证明,现阶段软件工程的教学改革工作,有效地提高了学生的学习兴趣,增强了学生使用软件工程方法和技术解决实际问题的能力,培养了学生团队合作精神。下一步我们准备通过“校企合作”,增强项目实践的真实性,使软件工程的项目实践更加合理、完善。

(上海海洋大学信息学院,上海201306)

参考文献:

[1]张剑波,方芳,袁国斌.软件工程专业实践教学体系改革[J].计算机教育,2013(12):37-41.

[2]王卫红,杨良怀,江领.软件工程优势专业的建设与发展[J].计算机教育,2013(10):1-4,9.

[3]汤淼.软件工程专业“项目驱动”实验教学模式研究[J].实验技术与管理,2012(4):267-271.

软件技能论文范文第12篇

关键词:多元教学模式;软件工程;案例教学法

作者简介:司春景(1981-),女,新疆阿拉尔人,塔里木大学信息工程学院,讲师;李向阳(1973-),男,新疆阿拉尔人,塔里木大学信息工程学院,副教授。(新疆 阿拉尔 843300)

基金项目:本文系塔里木大学本科质量工程特色专业“计算机科学与技术”(项目编号:20090627)的研究成果。

中图分类号:G642.0 文献标识码:A 文章编号:1007-0079(2013)07-0098-03

“软件工程”是一门指导计算机软件系统开发、维护和管理的学科,主要利用工程概念、原理、技术和方法,将现代技术方法和正确的管理技术相结合,重点研究应用软件开发的基本理论和工程技术来指导软件系统的开发、维护和管理。“软件工程”课程是学生参加工作以后最能直接应用的一门专业核心课,它要求做出一个满足用户要求的系统,这是一个很具体的实践过程,具有很强的工程和项目背景。[1]

一、传统教学模式的问题

“软件工程”是计算机专业学生的一门基础必修课。在目前的教育体系下,大学生学习知识的主要途径是教师讲授。传统的“软件工程”课程教学模式在理论教学方面重视基本知识的教授;在教学原则上强调教学的直观性、系统性和巩固性;在教学方法上强调学生预习、教师讲授和学生反复复习记忆;在教学组织形式上则选用“填鸭式”教学。这种强调知识的单线注入和忽略学生思维训练的方法,不能很好地调动学生的学习主动性,不能起到很好的学习效果。当前高校软件工程课程教学中存在以下突出问题:

1.教材重理论轻实践

对于没有任何大型软件开发经验或参与开发的高校本科生,如果教材只关注软件工程理论的讲解,包括软件开发模型、分析和设计方法等,则学生无法将理论联系实际,所学内容不知所云,更无法在日后发展中将理论与实际相结合。

2.实践教学缺乏系统性和针对性

目前许多高校“软件工程”课程除了理论讲解外,也加入了实践教学部分。往往受学时所限,实践分为软件项目若干设计文档的编写和软件工程工具的实验练习。前者受缺乏相应的开发环境、教师虚拟客户不能很好地反应现实需求、理工科学生的文字表达能力不足等因素的影响,设计文档的编写不能很好提高学生能力;后者在一定程度起到了一定的作用,但对于培养学生分析问题、解决问题、管理和团体协作能力方面仍显不足。

3.评分模式单一

软件工程采用了传统的闭卷考试方式,平时成绩占总成绩的30%,期末考试占70%。平时成绩=上课出勤情况(10%)+实验完成情况(10%)+作业完成情况(10%)。任课教师通过对不同的考核内容赋予不同权重来评价学生对软件工程课程的掌握情况,主要考核学生对课程基本知识的理解。此方法不足以提高学生实际动手的能力,更不利于激发学生实际软件设计开发的兴趣。

二、现有的教学方法的分析

针对上述问题,从事软件工程的相关教师从不同角度,对软件工程课程进行了改革。归纳起来主要有如下几种教学方法改革:

1.自底向上教学法在“软件工程”课程中应用

授课方式主要是用倒叙的方式贯穿完整案例(包含警戒案例),以启发、讨论、辩论的形式讲授软件工程的原理、方法及过程,使学生不觉生疏,易接受,又符合IT从业人员的工作进程。[2]

2.模块化教学法在“软件工程”课程中的应用

在尊重教学规律和学生个性发展的原则上,根据课程体系和内容之间的关系,将教学部分划分为若干独立的模块,确定模块之间的关联,针对不同的教学计划要求,采用不同的模块组合有选择地进行讲授和学习。[3]

3.案例教学法在“软件工程”课程中的应用

软件工程案例教学是根据“软件工程”课程的教学目的和学生培养目标要求,教师选用相应的案例作为基本素材,引导学生对案例进行调查、思考、分析、讨论、设计、开发和交流等相关活动,在活动中教授学生软件工程的原理、方法及过程,进而提高学生分析和解决问题的能力,加深学生对基本理论知识的理解和掌握。[4]

4.项目驱动教学法在“软件工程”课程中的应用

项目驱动教学法是案例教学法的基础上采用“案例导向、项目驱动”的教学方法。首先,教师根据要讲授的理论知识预先准备一个或者多个小的软件开发项目;然后,将学生作为主体,以软件开发项目的研发过程为引导,采用学生小组团队合作和学生个人独立完成相结合的教学形式,组织学生开展集体讨论并完成相应的实践性活动,在研发过程中同学和老师要对每位学生所完成的每个阶段任务加以点评、督促改进、分享经验等;最后,学生将成功的软件给予演示。[5]

5.三位一体式教学法在“软件工程”课程中的应用

根据学生的认识特点和该课程自身的特点以及对“软件工程”课程在计算机科学专业的定位、教材的选取、课程培养目标的分析下,采取以综合能力培养为中心、项目实践为标准,模板、案例、指导说明为辅助的三位一体式的教学思路。[6]

对目前在“软件工程”课程改革中应用的五种方法针对改革侧重点进行汇总发现(见表1),单一的教学方法只是在理论教学、实践教学和考核方式某一方面发挥了很好的作用,而不能从全面发挥效果,而对于“软件工程”课程来说三者同样重要。

三、基于多元教学法的课程改革新模式

某一种教学模式改革已经不能满足现代“软件工程”课程教学的要求,只有将多元教学模式组合在一起,充分考虑各自对课程教学的优势,避其缺点,找到一种既能使学生具有良好的理论基础,又能充分培养学生实践能力,还能准确地考核学生的教学模式。本次课程改革就是本着这样一种思想,从理论教学、实践教学和考核方式三个方面进行多样化改革。

1.理论教学内容多样化

理论知识的学习在学生以后软件项目开发过程中具有必要性和重要性,软件工程学习过程中要重视基础和基本技能的培养。学生要具有开发软件项目的能力,首先要熟悉掌握软件工程相关的理论知识,特别是对如何按照工程化的方法系统地设计、实现、测试和维护大型软件,内容包括:软件开发的基本理论、方法和技术;其次是了解目前已有系统、工具和技术。

(1)授课内容引入案例。教师在教学过程中引入与理论知识相匹配的实际案例,将比较抽象的软件工程原理、方法和技术转为具体生动的案例进行诠释,增强理论教学的艺术性、科学性、趣味性、形象性,使学生能够在课堂上深刻领会和理解软件工程的思想和方法,教学效果收到了事半功倍。

(2)适时更新教学内容。近几年,软件原理、方法和技术发展较快,许多适应时展的软件不断涌出,而目前的教材虽不断改版更新,但其更新的速度远远跟不上软件工程的发展。因此,教师在进行理论讲解时,除了要教授学生基本原理、技术和方法外,还要时刻关注新内容的出现。

(3)制作丰富多彩的课件。采用多媒体教学手段,在课件中插入图片、动画、声音、视频等多媒体元素,使教学内容更加充实和生动。

(4)课堂小组讨论。从小问题到大问题,让学生参与教学过程,有机会发表自己的看法。课堂讨论和分析试验,使理论有实践作支撑,抽象的知识变得看得见,用得着,大大激发学生学习的兴趣和自信。

2.实践教学内容多样化

软件工程理论的讲解是课程学习和技能培养的基础,而软件工程中许多理论内容如果只是教师讲解不加以实践,内容本身就会变得空洞和不可理解,例如:软件复杂性计算、软件可靠性与安全性的测量标准、结构化的实现方法等都需要学生动手实践才能更好地理解知识本身的内涵。掌握概念、原理、方法和技术,熟练应用软件开发实践中的方法和技术是“软件工程”课程对学生的培养目标。

(1)课程角色扮演。教师预先选择若干小项目,班内学生根据自己对项目熟悉情况选择项目名称,划分项目小组,每组人数不超过6人,每个项目小组成员根据自身特长选择不同软件工程角色,例如项目负责人、需求分析负责人、设计负责人、编码负责人、测试负责人和用户代表,进行项目分工。项目组成员按时完成自己负责任务,撰写相应文档。教师帮助学生分析和解决所遇到问题。在整个开发过程可以体现“学以致用”的思想,实现理论与实践相结合。

(2)课程设计。课程设计主要是针对高年级学生在学习软件工程课程时开展的专项训练。课程设计采取在学校内模拟IT企业环境下完成来自企业案例或开发一些具有应用价值项目或学校教师承担的开发项目的部分开发工作,也可以是学生自选项目,整个课程设计阶段严格按照工程实施的基本思想来实施。

(3)加强校企合作。一方面经常邀请软件公司长期从事软件设计、开发和项目管理的工程师和项目经理,给学生讲解自己在软件设计、开发和管理中的经验,高质量软件产品需要经过怎样的开发过程,软件生命周期中标准文档如何撰写等相关内容;另一方面,利用寒暑假时间,让学生走出去,到软件产品的研发单位实地实习。

3.考试方式多样化

传统的考核方式已经不能反映学生实际软件开发的水平,也与多样化的教学模式不相匹配,为此多样化的考核方式才符合现实需求,主要包括:笔试、课后角色扮演、课程设计和项目总结。

(1)笔试占总成绩的35%,主要考查学生理论知识的掌握情况和学习效果。

(2)课后角色扮演占总成绩的15%。由教师根据每位学生在课后角色扮演中的具体表现进行打分,主要由3部分取平均值组成:1/3*(整个项目的成绩+自己负责完成的文档成绩+组内其他成员负责完成的文档的平均成绩)。

(3)项目总结或心得体会占总成绩的15%。根据学生在软件开发过程中所撰写的经验和教训总结报告、每个小组成员建立的个人开发记录或日志的实际情况,相互打分。

四、基于多元教学模式课程改革方案

基于上述改革理念,按照软件工程开发原理、方法和技术,选用典型项目案例,将学生按照项目分成若干个小组,每组人数不超过6人。每个小组对应着一个具体的项目,每个人对应着一个具体工作过程,按照如下步骤进行多元教学。

第一步,教师选用合适的教学内容,制作丰富多彩的课件,对学生进行基本理论和基本技能的讲解。在每一个软件生命周期结束后,教师进行案例场景描述。教师按照理论知识的内容,选择相应的案例进行描述,学生将所学内容运用到相关案例中。教师通过案例让学生明白理论知识如何应用,学生通过案例体会到小项目中所学的原理、方法和技术是如何实现的。

第二步,课后角色扮演。学生通过分组讨论的方式,完成项目分工,明确自己在项目中所扮演的角色。所有的任务通过集体讨论的方式,决出所要完成的任务,并由相应的角色人实际操作完成。例如,需求分析一章内容,学生课后进行项目小组讨论,决定需求分析的内容,进行相应的需求分析,并由扮演需求分析人员的学生完成需求报告。软件开发过程需要整个团队的通力合作,根据学生的性格、表达能力、开发能力、理论基础掌握情况等方面进行人员分组,将具有不同特点的学生组成一个团队完成项目开发。这种团队合作的方式,既能发挥学生各自的特长,又能培养学生的团队合作精神。

第三步,课程设计。当全部内容讲解完成,就可以开始长达2周的课程设计内容了。这段时间要求项目小组,彻底完成一个由教师虚拟的项目。此步骤中,主要培养学生良好的科研习惯,在开发过程中及时总结经验和教训,建立个人开发记录或日志,理论联系实际学着开发软件。

第四步,学生总结,教师点评。学生经过多个教学环节后,每个团队在一定程度上完成了各自的项目任务,对各自团队的成果进行总结。教师听取每个团队的汇报后,从横向和纵向两个方面对项目成果之间进行比较,从而让每一位学生明白自己在团队中发挥了什么作用,自己哪些方面不足。

第五步,请进来,走出去。通过学校和企业合作的方式,一方面经常邀请软件公司长期从事软件设计、开发和项目管理的工程师和项目经理,给学生讲解自己在软件设计、开发和管理中的经验,高质量软件产品需要经过怎样的开发过程,软件生命周期中标准文档如何撰写等相关内容;另一方面,利用寒暑假时间,让学生走出去,到软件产品的研发单位,实地实习。

五、结束语

在多元教学过程中,理论教学利用多媒体PPT充实了课堂内容,小组讨论调动了学生积极性,不断更新的教学内容跟上了发展,以及启发式的案例教学提高了学生的能力;实践教学从课后角色扮演、期末集中时间课程设计,到寒暑假校企实习,整个过程依据软件工程思想逐步的从小角色的扮演,团结合作做一个虚拟项目,到真正到软件公司去实习工作,提高了学生的语言表达能力、分析问题能力、实践动手能力和软件工程协作、纪律等。考核方式不再是单一的方式,除了考查基本理论的掌握情况,还考核学生是否已经具备了一定的动手能力和科研能力。从理论教学、实践教学和考核方式三个方面进行多元教学,按照方案进行实施,强调动手能力,将工作过程的职业环境融入学习过程中,将学生对知识、职业能力的掌握程度提高到了实践这一层面,使得学生能真正进入到“在学中做,在做中学”的理想学习环境中。

参考文献:

[1]张海潘.软件工程导论[M].第五版.北京:清华大学出版社,2008.

[2]温春友,敖广武.对软件工程课程自底向上教学模式的探索[J].辽宁高职学报,2008,(3):27-28.

[3]孙知信.软件工程课程模块化教学改革的实践与思考[J].南京邮电学院学报(社会科学版),2004,(2):39-42.

[4]彭佳红,彭佳文,等.基于案例的软件工程课程教学研究[J].高等农业教育,2009,(11):60-62.

软件技能论文范文第13篇

一、研究背景

软件工程是高校计算机专业教学计划中的一门重要课程。软件工程的课程体系涉及了从客户沟通,软件设计,软件开发,软件测试到最终软件维护等软件生命周期各个阶段。既是一门理论性极强的专业课程,更是一门实践性很强的课程。近年来,全国各大高校均将软件工程作为计算机及其相关专业的一门重要专业课程。计算机专业的学生通过软件工程课程,学习作为软件从业人员需要掌握的基本专业能力,为未来从事计算机软件相关的各类工作,提供理论及方法的指导。可以说,学好软件工程,对计算机及其相关专业的从业人员来说都是一门必修课。

二、教学现状

在当前的软件工程课堂教学当中,部分院校采用纯理论课堂讲授的授课形式,另一部分院校则采用理论讲授与实践实训课程相结合的授课形式。然而,从教学内容来看,当前软件工程的教学内容,主要集中在传统方法学,即传统的软件工程学。对于面向对象方法学来说,很多新的知识方法还涉及不足,特别是软件模型化,构建技术,UML统一建模语言等等一些当下社会流行的软件工具和方法。同时,实践环节较少,实践效果不够理想也是软件工程教学中普遍存在的问题。目前可供该课程选用的合适的实验项目甚少,所以学生通过实验课程所达到的效果与教学要求存在较大的差距。另一方面,学生对理论知识的理解不足。软件工程是一门计算机领域的综合性、工程性学科。涉及软件生命从萌芽、成型、成熟、生命结束的各个周期阶段的工作和任务。学习者似乎能听懂,可听完后大部分学生还处在似懂非懂的阶段,真正需要动手时,不知道该从何下手。在近年来的教学实践过程中发现,一些理论知识,过于抽象晦涩。与实际的应用需要相脱节,学生对很多知识理论,只停留在概念阶段,难以消化,更无法理解理论知识在实际的软件设计、开发、测试、维护中究竟何时何地可以运用,具体又该如何操作。理论与实际的结合仍存在很多不足。这一方面与课程理论研究性较强有关,另一面也与教师本身长期在院校从事较单一的教学工作,缺少工程项目经验,脱离实际的生产及软件开发场景,难以将理论与现实情境很好的结合传授给学生。在计算机专业毕业生的毕业设计中,也集中体现出了学生不能把理论知识有效地运用到实践活动中的问题。学生并没有真正掌握基础理论及运用理论的技能和方法,所以在进行毕业论文设计时,不能将软件工程的理论充分运用到他们的设计实践中去,从而导致设计开发的软件和撰写的文档在结构、内容等方面错误百出。

三、改革思路

(1)研究并解决软件工程教学中存在的新兴软件方法不足等问题。结合现有的专业培养方案,教学大纲,制定教学计划,改善软件工程教学现状,研究传统软件工程技术在教学改革中占的课时比例及应当讲授的内容,增加研究面向对象软件工程技术在教学改革中的地位及讲授的方式、内容和课时量。(2)研究并解决软件工程课程实践性不足,学生学习停留于理论阶段的问题。结合理论课程的内容,增强软件工程的实践性,与一些软件开发的实训课程相结合,增加学生的实践机会,将软件工程理论应用于实践当中,提高学生对课程的理解和现实认识。(3)研究并解决学生对理论知识理解不足,课程停留于课堂教学,脱离实际运用,学生难以满足应用型人才培养目标等问题。根据教学计划,教师请教并邀请相关企业的软件资深从业人员,与学生开展专业知识交流活动。以企业中实际可行的软件项目为案例,为学生讲解软件知识,让学生理解软件工程的理论知识如何有效的融入实践当中。并加深学生对课程、对当今计算机领域流行的专业知识及未来从业方向,对计算机专业从业现状的认识,真正做到应用型人才的培养。可以安排学生到企业进行调研,参与实际的企业项目。(4)研究并解决学生在毕业设计及毕业论文的完成过程中,缺少理论支撑,不能合理规范化完成设计的问题。将软件工程专业知识与计算机专业毕业设计相结合,在毕业论文指导的过程中,重视软件工程理论的应用。以软件工程方法学,软件过程,项目管理等相关知识软件工程相关理论指导学生的毕业设计,力求整个毕业设计过程达到模块化、规范化,正规化。

参考文献

[1]张海藩.软件工程导论(第5版)[M].北京:清华大学出版社,2018.2

[2]崔含鼎,梁仕云.现代教学系统工程模式论[M].广西教育出版社,2001.

软件技能论文范文第14篇

[关键词] 类DNA; 教学结构; 软件人才培养

[中图分类号] G434 [文献标志码] A

[作者简介] 冀付军(1975―),男,河北馆陶人。讲师,博士,主要从事教育技术学计算机教育应用研究。E-mail:。

一、引 言

脱氧核糖核酸(DNA)是生物界最重要的大分子体系,在生物进化中起着非常重要的作用,其结构中蕴藏着决定遗传、细胞分裂、分化、生长和蛋白质生物合成等生命过程的信息。DNA分子具有双螺旋结构,其螺旋的骨架是由磷酸根和糖基通过共价键连接而成。同时,DNA分子具有两个独特的性质,即自识别和自组装功能。由于DNA自身结构的复杂性,科学家一直在寻找一个最为恰当的模型来对它进行研究,到目前为止,科学家已建立了一维紧束缚模型、鱼骨模型、梯子模型、三维紧束缚模型等几个模型,从不同的侧重点来研究DNA分子。[1]

DNA结构的特点和优势在于其双螺旋式循环上升,既简单重复,又有递进,结合作者十余年的软件教学经验,敏感地觉察到DNA双螺旋与软件教学中的知识与技能双主线循环递进的内在一致性;同时DNA分子的自识别和自组装特性与软件教学的技能自反馈和知识自建构也是出奇的一致,因此提出面向软件人才培养的类DNA教学结构。当前软件人才培养的主要问题是什么呢?国际上有哪些可以借鉴的先进理念?

当前我国软件行业发展迅速,但与世界其他国家相比仍存在较大差距,印度原来与我国处于同一起跑线上,如今却成为仅次于美国的世界软件大国,其高速增长的背后是强大的人才队伍支持,其NIIT的MCLA(榜样教学法)教学模式是印度软件教学的创举。[2]MCLA是印度NIIT教学模式的基础和核心,它是以实际应用为导向,在全任务驱动中教学,强调基本技能和动手操作能力的培养,[3]按照NIIT课程体系技术路线[4]设置课程,实现软件理论与实践对接。

我国软件产业所面临的主要问题,一是软件人才匮乏,供需矛盾突出,直接影响了产业发展和市场的占有份额;二是知识、能力结构不尽合理。[5]软件行业低迷的主要原因在于培养的软件人才不符合当前市场经济的需求,其中课堂教学结构的不合理又直接影响软件人才的培养。[6]人才培养包括课堂和课外两个阵地,其中课堂教学是专业技术人才培养的主渠道,抓住了课堂教学的变革,就抓住了教学改革实施的主要渠道之一。而课堂教学结构又是课堂教学中的关键因素,因此软件人才培养中的课堂教学结构就成为重中之重,课堂教学结构对人才培养起着至关重要的作用,这与何克抗教授关于教学深化改革的主要目标应当指向教学结构变革的观点是一致的。何克抗教授指出,教学结构是指在一定的教育思想、教学理论和学习理论指导下的,在某种环境中展开的教学活动进程的稳定结构形式, 是教学系统四个组成要素(教师、学生、教材和教学媒体)相互联系、相互作用的具体体现。在多年从事教学改革试验研究探索的基础上, 何教授经过深层次的理论思考指出: 当前各级各类学校教学深化改革的主要目标应当指向教学结构的变革。[7]

在以教师为中心的传统教学结构下的软件教学中,通常都是照本宣科讲述软件的功能以及工具栏里各种工具的作用,没有将软件的功能与设计中的应用相结合,[8]而如今市场经济体制下企事业单位尤其是IT 企事业单位只招聘有经验的专业人才。[9]因此,产生了软件人才培养与人才需求的矛盾。显然,人才需求不易改变,能够进行控制和改变的是对人才的培养,改革现有的软件教学结构,才能更好地培养出符合企事业单位需要的软件人才。

对于当前软件教学中的这些问题,我国教育学者已经提出一些有效解决思路。

从宏观策略上看,软件教育者主张形成软件人才培养梯队, 构建软件人才的金字塔结构,如图1所示;[10]倡导与企业的合作,提高学生的动手操作能力,如图2所示。[11]当前我国也充分意识到与企业合作培养工程人才的重要性,于2012年6月7日公布了部级工程实践教育中心的第一批名单。[12]

从微观策略来看,案例教学通过对具体情境的分析,提升学生的分析能力与解决问题能力;[13]基于网络视频资源的小组合作教学模式开展计算机应用软件教学,培养学生自我反思、讨论和交流的能力,培养学生的知识共享和社会交往能力。[14]

以上软件人才培养梯队、企业合作、案例教学和合作教学等策略从宏观方面和微观方面为我国软件人才的培养作出了积极有益的贡献。本文则试图依据软件学科的特点,在软件教学结构上进行变革,提出适合软件学科特点的新型教学结构,从根本上解决软件学科的教学问题。

那么,软件学科究竟有哪些特点? 要想了解软件学科的特点,就必须首先洞悉软件科学的研究内容。软件学科研究内容主要包括:软件开发范型、软件设计方法、工程支持技术和工程管理技术。杨芙清院士指出,软件开发范型涉及软件工程的“方向”问题;软件设计方法涉及软件工程的“途径”问题;工程支持技术和过程管理技术涉及工程过程质量和产品质量问题;软件开发就是实施了一个从“高层概念模型”到“低层概念模型”的映射,从“高层处理逻辑”到“低层处理逻辑”的映射,而且在这一映射中还涉及人员、技术、成本、进度等要素。[15]由此可见,软件学科不同于常见的语文或数学学科,它是建立在计算机科学基础上,指导计算机软件开发和维护的工程性学科,其理论性、技术性、工程性、抽象性与应用性都很强。这决定了软件是一门实践性很强的课程,因此常用于语文或数学的教学结构并不能较好地适应软件学科特点,盲目套用指导其他学科取得很好效果的教学结构、教学模式、教学策略等到软件学科教学中,并不一定产生同样的好效果。软件学科教学迫切需要提出适合其特点的新型教学结构。

二、类DNA教学结构研究

(一)类DNA教学结构的理论基础

类DNA教学结构并不是直接创造出来的,是作者在十余年来从事软件相关教学经验的积累和总结的基础上,借鉴了生物学DNA结构的优势特点引进到软件教学领域中而来的。事实上,关于类DNA教学结构中的螺旋式教学,最早是孔子提出的,即孔子通过使没有疑问的学生产生疑问,有了疑问并帮助他解决疑问,还要产生新的疑问。如此反复,螺旋上升,使发问和解疑节节逼近,相辅相成。作者考虑到软件学科的知识性和技能性双主线循环上升的学习特点,结合自身的软件螺旋式教学经验,总结了教师与学生群体的一对多交互特征,吸引借鉴了网游沉溺动机中的螺旋式任务奖励机制、场景循环变换机制、装备人物生长发展机制、竞争协作促进机制等,历经十余年至今才提出类DNA教学结构。

类DNA教学结构的理论基础有建构主义学习理论、实用主义教学思想和要素教育论等。从建构主义学习理论方面讲,类DNA教学结构旨在通过教师的层层螺旋上升式引导,在知识和技能两个方面,不断激发学生求知的欲望,一步步使学生提出关键问题,在教师的引导下分析问题并解决问题,再提出新的关键问题,形成螺旋,使学生不断循环校正完善自主构建的知识体系。类DNA教学结构汲取杜威实用主义教育思想的精华,践行“做中学”这一杜威教学理论的基本原则,[16]以实现学生知识与技能的同步发展为目标,真正实现软件学生在“做中学”。类DNA教学结构同时以裴斯泰洛奇的要素教育[17]为指导,从最基本、最简单的知识技能出发,使“零基础”的学生轻松地获取知识技能,逐步积累知识技能,从而达到较高的知识技能水平。它抛弃了以往教学中盲目追求知识和技能的深度的做法,注重从学生现有水平出发,尽量使每个学生都跟得上教学进度,不断循环,逐渐进行知识和技能的深化。螺旋吸收发展相应知识和技能更利于学生知识的同化和异化。就像网游玩家之所以容易沉溺一样,不断在其最近发展区中获得进步,享受自己追求上的愉悦感和成就感。

(二)类DNA教学结构的理论提出

类DNA教学结构位于双主教学结构之下(教学结构分为以教为主的教学结构、以学为主的教学结构和教学并重的以教师为主导、以学生为主体的双主教学结构[18]――笔者注),是双主教学结构在软件人才培养领域的具体教学结构。类DNA教学结构中的双螺旋是指知识与技能双主线,螺旋的骨架是由教师和学生通过交互连接而成,通过知识与技能的双螺旋师生交互,知识和技能的学习深化呈现类似DNA结构的双螺旋递进上升的特征。

类DNA教学结构是专门针对软件学科课堂教学,以建构主义认知教学理论、实用主义教育思想、要素教育论为指导,以学生、教师为主体,以知识与技能为主要方面,以知识与技能在实践中的应用效果为评价机制,运用教材、教学媒体和实验器材,在教师的情境引导下学生主动提出新的问题,进行新的探究,实现知识与技能基本同步发展的教学结构。类DNA教学结构突破了原有传统教学结构仅注重知识而忽略技能的限制,以螺旋方式充分发挥了教师的引导职能,螺旋培养学生不断上升的思维和质疑能力,可以成功解决软件人才培养中所缺乏的经多层螺旋深化的熟练技能问题。

(三)类DNA教学结构的理论设计

类DNA教学结构以教师与学生为双主体,以知识与技能为双主线,教师与学生在教学过程中逐步进行教与学的螺旋交互,最终实现知识与技能的同步螺旋式上升发展。类DNA教学结构在交互过程中,教师以螺旋式形成性评价对学生学习效果进行查漏补缺,并确定更高层次螺旋的内容,同时利用螺旋反馈不断完善自己的教学。

类DNA教学结构倡导教师螺旋式指导学生的主动学习,教师是类DNA教学结构的知识传授者和技能培育者,教师在了解学生现有知识水平的基础上,以最简单、最直白的方式将新知识传授给“零基础”的学生,使学生轻而易举的获取知识,并在学生消化知识之后积极指导学生进行技能训练,对学生在训练中的表现进行螺旋式评估,促使学生及时改正错误,不断开始教学过程的更高层次螺旋。学生则在螺旋吸收知识技能基础之上,积极、大胆地提出新问题,逐步进行新知识的探究,通过螺旋式情境培养深化学生的思维能力及探索创新精神。类DNA教学结构设计俯视示意图如图3所示。

类DNA教学结构在以教师与学生为双主体、以知识与技能为主要内容的前提之下,四者交互进行,以促进学生的学、教师的教。为了详细说明这四者之间的交互关系,将这种关系分为三个层次:一个是以知识为轨道的层次,一个是以技能为轨道的层次,一个是以知识与技能两个轨道交互的层次。其中知识与技能双轨的交互教学结构有以下几方面的特点。

1. 在类DNA教学结构中,教师与学生各自位于锥体的两端,知识与技能是实现师生交互的媒介,教师首先在知识方面与学生进行交互,教师以简洁方式将最基本知识传授给学生并对学生进行引导,学生汲取知识,两者教与学相遇于知识轨道的起点处,学生求知欲逐渐得到激发,教师不断引导学生探求新知识。学生在学习知识时,教师不断提出疑问,使学生带着疑问进行深层次的学习,促使学生积极思考并进行创造性思维活动。

2. 在知识不断增长的同时开始技能培养训练,此时教师与学生技能的交互点将落在技能这条轨道上,技能与知识两者的交互点之间有一定的距离。在对知识的探索过程中,技能的学习有可能赶上或者超过知识的学习。总体上,知识与技能在各自的轨道上基本同步运行。最终,教师与学生在知识和技能方面所形成的交互点不断形成类DNA结构的螺旋式轨道循环上升,达到学生知识与技能的互相促进和提高。

3. 类DNA教学结构中蕴含形成性评价,重视教学过程中的反馈和矫正,通过网络系统体现个别化教学反馈优势,[19][20]及时诊断教与学的状况,从而采取必要补救措施,促进教学目标的实现,这是类DNA教学结构的自识别特性。在整个教学结构中,教师在每堂课后会以学生原有知识经验积累为基础对学生学习效果进行螺旋层次检验,并不断纠正学生存在的错误与其自身在教学过程中存在的问题,从而完成学生和教师的知识和技能的不断自主建构。这正是类DNA教学结构的自组装特性。类DNA教学结构的自识别特性和自组装特性正是生物界DNA分子结构的固有特性。

4. 类DNA教学结构实现了学生知识与技能的同步发展,螺旋交互教学过程的设计有利于学生深化知识与技能,提升学生学习效果,使得学生在理论与实践方面齐头并进,有效地解决当前软件教学难题,为软件行业培养出理论结合实践、知识配备技能的应用性创新人才。图4为类DNA教学交互点微观示意图。

5. 类DNA教学结构以知识与技能为主要内容,两者沿两条不同的螺旋骨架同步运行。知识在整个类DNA教学结构中处于基础地位,一定的基础知识是进行技能训练的必要条件。技能是此教学结构中的核心组成部分,交互作为骨架的“共价键”,对于在软件教学中最终实现知识与技能起着至关重要的作用。知识与技能的成功交互是实现类DNA教学结构的关键环节。网游沉溺动机机制的实现也都有赖于这种“共价”交互。

6. 以知识与技能为双主线的类DNA教学结构,从教学起点就开始激发学生的学习动机,使“零基础”的学生首先掌握基本知识,并获得成就感,再及时训练学生基本技能,获取新的成就感,充分感受到进步所带来的尊重,在网游沉溺机制动机的驱动下,自主学习欲望强烈,然后在此循环教学中不断进行形成性评价,不断在最近发展区内给学生以适度鼓励或刺激,进一步激发起学习动机,从而通过以知识与技能的螺旋式共同发展逐步实现软件人才的培养革新。它避免了传统教学结构只注重教师传授知识的弊端,知识与技能并重更符合当前软件人才的需求,对推进软件人才培养进程有重要意义,有利于软件人才的理论知识与实践能力的并重发展,从而彻底解决软件人才需求与软件人才培养的突出矛盾问题。

三、类DNA教学结构的案例及应用

(一)基于类DNA教学结构的教学案例

为简化起见,在这里以基于类DNA教学结构的Word教学为案例。在Word教学中,将熟练运用Word作为教学目标,将教学内容分为五部分,分为安装、文字、表格、图形及打印。第一部分为Word最基本的安装知识,教师首先讲解Word的一些基本常识,如基本简介、功能特点等,并演示安装过程,在学生进行一段时间的消化以后,开始进行技能练习,自己动手进行安装;第二部分为Word的文字编辑教程,文字的编辑是Word最核心的功能,同样也是教学的重中之重,为了便于学生理解,激发学生的求知欲,教师从最简单的文字录入讲起,在教师一步步“还有没有简单的办法,希望达到某某效果该怎么办呢”等提问之下,逐步进行知识深化教学,最终掌握Word文字编辑的全部功能,在进行系统知识的讲解的同时,在学生对知识的理解过程中,穿插相对应的技能训练,最终实现知识与技能的同步进行;表格、图形及打印的教学结构与文字编辑的结构大致相同,均采用螺旋递进的教学方式,深化教学内容,最终达到精通Word的教学目标。其具体示意如图5所示。

(二)类DNA教学结构的实践应用

为了验证类DNA教学结构的有效性,在类DNA教学结构指导下进行了相应的教学设计,在2012―2013第一学期计算机技能教学中进行了具体实践应用。首先对全校2012级新生进行了授课前测,之后,笔者在实验班(班级编号20120405)贯彻类DNA教学结构的指导,实施类DNA教学设计,在学期结束时,对全校新生进行计算机技能期末测试。学期前测和期末测试均采用机考自动化测评得分方式进行,以保证客观公平。两次机考测评难度系数相同。经统计,前后两次具体成绩情况见表1。

由此可见,实验班在学期授课开始前,其前测平均分与全校总平均分相比,相应的Z分数为0.32.58,这说明,实验班与全校新生在期末测评中的成绩呈现显著性差异。由于只有笔者所任教班级实施了类DNA教学结构指导下的教学设计,且前测成绩一致,尽管在期末测评中全校平均分大大提高,但是因为检验的是实验班平均分与全校平均分的显著性差异,因此已经排除了全校教学方面努力的共同普遍因素,这就只剩下任课教师特殊教学方面的因素,故此数据可在某种程度上表明类DNA教学结构的有效性。

四、结 束 语

本研究着眼于软件人才培养教学中的问题,分析软件学科的特点,在建构主义学习认知理论、实用主义教学思想、要素教育理论基础上,借鉴国外软件人才培养的先进教学理念,结合自身十余年软件相关教学的经验积累,从软件人才培养的课堂教学主渠道着手,抓住了软件课堂教学结构这个关键因素,对于软件教学结构变革进行有意义的探索和研究,借鉴引进了生物学中的DNA结构,创新提出了软件学科教学结构――类DNA新型教学结构,并对该结构进行理论和实践研究,并在实践应用后基于统计学原理进行显著性检验,数据验证表明了所提类DNA新型教学结构的有效性。

类DNA教学结构符合以“知识与技能、过程与方法、情感态度和价值观”的三维培养目标为核心的素质教育理念,对于改变当前软件类课程注重知识讲解、轻视技能传授的现状有着积极意义。该教学结构能充分尊重学生的主体地位,促进学生积极、主动地思维与学习,同时发挥教师的螺旋式层层主导作用。既有利于教师掌控整个教学过程和系统知识的传授,又有利于学生自主学习能力和探索能力的螺旋上升式发展。从宏观角度来看,类DNA教学结构适应当今市场对实践应用性创新软件人才的需求,而高质量的人才培养对改善我国当前软件行业的现状具有重要意义。同时,类DNA教学结构为具体领域新型教学结构的提出提供了研究范式,在类DNA新型教学结构的理论构建和应用方面具有一定的示范研究意义。

[参考文献]

[1] 高绪团. DNA分子的电子结构及其电荷输运性质研究[D]. 济南: 山东大学,2007.

[2] 李洛等. 印度NIIT软件人才培养模式的探索与实践[J]. 广东轻工职业技术学院学报, 2003(3): 49~53.

[3] 刘彦姝, 唐乘花,张克俭. 引入印度NIIT构建教学新模式[J]. 计算机光盘软件与应用, 2012(3): 232~233.

[4]. 田祥宏,陈爱萍. 构建NIIT嵌入式软件人才培养课程体系[J]. 金陵科技学院学报, 2009,(02).

[5] 向毅, 彭军,吴英. 普通高校应用型软件人才培养存在的问题及对策[J]. 计算机教育, 2009,(22): 9~11.

[6] [7] [9] 赵春雨,栗红霞,李鸿宝. 我国软件教育的发展趋势[J]. 黄河科技大学学报, 2005(2): 118~119.

[8] [18] 李蓟宁. 多途径教学方法在艺术设计专业计算机软件教学的应用[J]. 艺术与设计(理论), 2011,(9): 190~192.

[10] [11] 邓子云. 高校软件教育的问题与对策分析[J]. 高等函授学报(自然科学版), 2005,(1): 6~7.

软件技能论文范文第15篇

近年来,软件行业进入第二春,供需两旺。据调查,以北京为例,软件工程师每年需求50000人左右。据IT英才网数据显示:北京IT职场每月需求达3380个。 [1]但是,软件行业市场的供需出现了错位,一方面,IT企业对软件工程专业的人才需求旺盛,另一方面,软件工程专业的毕业生就业质量却不高。究其原因,是我们培养的人才不能满足企业对软件工程人才要求。 

软件工程专业是国家教育部在2002年新增的专业。该专业以计算机技术为主的专业,实践性很强,专业的实践教学体系是培养学生实践能力、计算机工程能力、创新能力的重要途径。我们应该充分了解市场和企业的需求,制订和实施切实可行的实践教学体系。[2] 

曲靖师范学院软件工程专业从2008年开办至今,已经培养5届学生,一直以来,我们不断丰富和完善该专业的实践教学体系,形成了相对完备、效果好的实践教学体系。 

2 实验室建设是硬件基础 

实验室是开展实践教学的硬件保障,实验室建设的好坏,直接关乎实践教学体系执行的成败。一直以来,我们非常重视软件工程专业的实验室建设。实验建设能充分满足软件工程专业实践教学体系的硬件要求。实验设备采购的指导思想是实验设备要先进、实用,充分满足学生的学习和教师的实践教学需要。 

该专业已经建成硬件实验室有2个,分别是“计算机组成原理实验室”、“计算机组装与维护实验室”;通信与网络实验室有2个,分别是“计算机通信实验室”、“计算机网络实验室”;软件类的实验室有3个,分别是“软件开发与测试实验室”、“数据库实验室”、“信息技术创新实验室”。同时,为适应当今云计算的研究需要,我们投资200多万建立了云计算平台。 

以上实验室的更新及新建,能充分满足师生完成实践教学的需要。 

3 软件工程专业技能训练是实践教学体系的抓手 

在学生大学期间,为了在不同学期适时提高学生的综合实践能力,我们结合“软件工程专业人才培养方案”的要求,开展了贯穿大学4年的专业技能训练。我们把专业技能训练当作实践教学体系的抓手,专业技能训练根据训练大纲,着力提升学生应具备的专业素养和能力。 

我院的专业技能训练主要包括两个级别,一级是课程设计训练,本训练以课程为依托,制定课程级别的训练大纲;二级是综合设计训练,主要训练学生的软件论文项目的开发能力,要求学生能灵活应用所掌握的知识和技能,完成一个综合性、设计性的软件项目。下面分别对这两级训练作详细介绍。 

3.1 课程设计训练 

“课程设计”是一个多义词词条。它可以指“为掌握某一课程内容所进行的设计”[3]。课程设计是课程实验的高级环节,课程实验是提升学生立体实践能力的根本,课程实验分为验证性实验、综合性实验和课程设计实验,我们在传统验证性实验的基础上开展课程设计实验,提升学生的课程综合实践能力。 

以《Java程序设计》课程设计为例,课程设计的目的:利用Java语言的语法特性,结合数据结构算法、网络知识、文件处理和数据库等知识完成综合题目的设计和代码实现,并培养锻炼分析程序、撰写报告等能力。 

软件工程专业的已经开出课程设计的课程有4门,分别是:OFFICE办公软件、计算机组装与维护、C语言程序设计、JAVA程序设计。我们针对这些课程,在编写实验大纲时,要求包含课程设计,设计方案要经过专业系的审核和教授委员的审定。最后,以审定通过的课程设计为依托,为后续综合实践能力的提升打下坚实的基础。 

3.2 综合设计训练 

综合设计训练的目的是锻炼学生综合所学知识,设计和开发一个小项目的能力。这些项目有“JAVA程序设计”、“商业数据库开发”、“J2EE企业应用”、“JAVA Web开发”等,这些小项目的训练要基于几门课的知识和技能,如“JAVA Web开发”就需要学生综合数据库、软件工程、JAVA程序设计语言等知识与技能。 

综合设计训练要与毕业设计区别开来,此训练的主要目的是让学生体验和掌握项目开发流程,同时锻炼综合应用所学课程来完成一个具体的小项目。 

3.3 软件工程专业技能训练安排 

为鼓励学生多渠道获得技能分,我们规定,学生参加通过全国软件资格(水平)考试(中级),可以获得2学分,参加通过软件资格(水平)考试(高级),可以获得3学分。 

4 毕业设计是实践教学体系总结性的实践环节 

毕业设计是教学过程的最后阶段采用的一种总结性的实践教学环节。通过毕业设计,学生可以综合应用所学的各种理论知识和技能,进行全面、系统、严格的计算机技术及软件工程能力的练习。[4]毕业论文(设计)是实践教学体系的技能整合,我院对毕业论文(设计)作重大改革,着力打造学生综合实践能力。 

参加毕业论文(设计)的学生分两部分,一部分在公司实习,同时要在公司完成毕业论文(设计)工作,余下的学生在曲靖师院完成毕业论文工作,为提高毕业论文(设计)的质量,经向教务处请示,允许我院结合专业实践性强的实际,改革本专业毕业论文(设计)工作。改革思路包括三点,一是我院学生的毕业论文(设计)以毕业设计为主,弱化对学生文本的要求,强化对实践动作能力的提升和检查,二是做好规范管理工作,制定相关文件,如:“信息工程学院毕业论文(设计)工作规定”、 “信息工程学院毕业设计开发文档的撰写与打印规范” 、“信息工程学院毕业设计开发文档”等。 

5 校企合作助力实践教学体系 

为提升学生的实习效果和就业质量。我们自2012年开始,与四川华迪信息技术有限公司开展毕业实习的合作,该公司是一家集软件外包、信息服务、学生专业技能培训为一体的公司,在以上业务深耕12年,在全国小有名气。我们的学生参加校企合作实习有两种类型,一是为期三个月的专业实习,二是为期四个月的就业培训。三个月的专业实习分为Java开发方向和计算机网络方向,Java开发实训的重点是提升学生的软件开发实践能力和水平,计算机网络方向的实训重点是提升学生的网络规划、设计、实施、部署的能力。 

从2013年开始,软件工程专业的学生几乎都参加校了企业合作的实习,取得了良好效果,学生的专业实践能力提升了,就业质量明显提高,很多学生就在四川成都就业、创业。 

6 结语 

本文结合长期的思考和实践,不同的实践环节有机整合,大大提高了学生的职业能力和素质。软件工程专业的实践教学体系的构建和实践是一个系统的、长期的过程,还需要我们不断地探索,进一步提高人才培养质量。 

参考文献: