软件工程课程设计总结范文

时间:2023-03-19 12:51:18 版权声明

软件工程课程设计总结

软件工程课程设计总结范文第1篇

关键词:课程设计;Java程序设计;实践教学;软件工程

0、引言

软件工程专业本科生的培养目标是面向软件产业界对软件工程专业技术人才的需求,培养具备扎实的计算机科学技术基本知识,受过良好的软件设计、开发和工程管理方法基本训练的应用型高级技术人才。

Java程序设计是软件工程专业的一门重要课程,该门课程的课程设计作为实践教学的重要环节,对培养学生的学习能力、问题分析与解决能力、实践创新能力起着重要的作用,同时还可以培养学生的软件工程思想,提高学生的软件开发能力。

1、什么是课程设计

课程设计是学生在学完课程之后集中一两周时间,以个人独立完成或团队分工合作等方式,围绕某一设计题目进行专业实践活动,旨在巩固、强化、拓展所学知识,提高学生实践操作能力和自学创新能力,培养学生团队合作意识。

课程设计是针对性较强的实践教学环节,将课程基本理论与工程实际相联系的综合训练,是培养应用型人才的一个重要步骤。课程设计可以使学生通过查阅资料、分析题目、确定设计方案等一系列步骤将理论知识与工程实践相结合,从而加深对所学知识的理解与巩固,提高整体思维能力、综合应用能力和创新能力。

2、Java课程设计大纲的制定

根据Java程序设计课程的教学大纲要求,制定相应的课程设计大纲,明确课程设计的目的、任务要求、时间安排、设计文档要求、考核方式、备选课题等。由于课程设计以个人独立完成为主,因此课程设计的难易程度应适当,保证学生在指定的时间内能顺利完成。根据计算机技术的应用范围与学生当前的知识储备情况,备选题目可设置多种类型,如小型桌面软件类、管理系统类、网络编程类等题目,当然,学生也可以自拟题目。课程设计文档是学生对自己的作品在系统总体结构、功能模块、程序流程图、类图、主要算法、遇到的主要问题与解决方法等方面进行说明的文字材料,同时要求学生在文档的最后总结在完成课程设计过程中的心得体会。

3、Java课程设计方案

Java课程设计的实施主要由选题、指导、考核3个环节组成,其中,选题是首要的步骤,指导是教师了解学生遇到的问题和完成进度并给予辅导建议的过程,考核是对学生的作品进行检查与评价。

3.1 选题

Java课程设计题目的设置要与软件工程专业培养目标和Java课程的教学大纲要求相一致。课题应尽量满足理论知识与专业技术相结合、软件工程理论与项目实际需求相结合的要求,既要全面覆盖理论课程所学知识,适合实践教学和启发创新,又要联系工程实际,并适应本专业的发展趋势。课题应具有一定的可操作性、设计性、灵活性、挑战性和趣味性。课程设计内容难易程度的确定要以中等水平的学生在规定时间内经过努力能完成任务为依据。

另外,课题应尽可能地与学生的实际学习、生活相关,这样学生在调研、分析设计时更容易了解需求。例如,学生成绩管理系统、图书信息管理系统、宿舍管理系统、ATM柜员机模拟程序等课题与学生的学习、生活相关,在使用计算机时常用的计算器、画图板、音频或视频播放器等都可以作为选题。

在学生明确课程设计的大纲要求后,根据自己对Java语言知识的掌握程度与感兴趣的研究方向,可以从课程设计大纲的备选题目中选择适合自己的题目,也可以自拟题目。

3.2 指导

在课程设计中,学生是主体,教师是主导,因此指导应讲究方法与艺术,最大程度地发挥教师的导向作用与学生的主动性与创造性。指导分为两个阶段,第一个阶段是对学生选题的指导,第二个阶段是学生在完成课程设计的过程中教师对学生的集中辅导与答疑。指导过程同时也是教师对学生进度的检查与监督过程。

1)选题指导。

教师在指导学生选题时要说明各种题目的难度与要求,根据学生基础与能力的不同,因材施教,推荐不同的题目,帮助学生把握好方向。

对于理论基础好、动手能力强的学生,可以给他们提供难度较高、有挑战性的题目;对于理论基础好动手能力一般的学生,难度较高、可操作性强的题目可以激发他们的探索精神、提高动手能力;对于理论基础与动手能力都一般的学生来说,难度中等、有可参照原型的题目较适合他们;基础差的学生要独立完成设计比较困难,因此教师可以建议他们选择源于教材、难度低的扩展性题目。

2)设计指导。

学生在课程设计的具体执行过程中主要由个人独立设计与教师指导两个部分构成。个人独立设计是学生利用课余时间对自己的课题进行设计实现。除此之外,在课程设计期间,教师安排每周2次,每次4~5学时在实验室集中指导与答疑。通过这样的方式,教师可以参与到学生的设计中,了解并开拓学生的思路,发现问题并引导如何解决问题,还可以发掘学生的潜能,同时也可以对整个课程设计的过程进行监督与管理,提高课程设计的质量与效果。

在Java课程的教学过程中,教师应该逐渐了解学生的学习态度与学习情况,因此,鉴于学生态度与基础不同,教师在设计的指导上也要因材施教,有针对性。对于理论基础好、动手能力强的学生,教师可以引导他们进行深入的探索与研究,进行创新性的设计,而不仅仅局限在基本设计要求上。教师要参与他们的设计中,听取他们的思路,对有一定创新性、合理的想法给予鼓励,并给他们提出建议,推荐有关的资料。由于这类学生对新技术的求知欲强,但新技术在最初应用时容易出现问题,所以教师在听取学生的思路时,要及时发现并纠正他们设计中的不合理成分,引导他们朝着正确的方向前行。

对于理论基础好动手能力一般的学生,他们在系统分析与设计中一般都能够完成得很好,但是编程实践的能力欠缺,因此教师通过启发式的方法引导学生,发挥学生的理论水平进行创新性的设计,在系统实现时给学生推荐参考资料,加强对基础知识的应用能力。

对于大部分理论基础与动手能力都一般的学生,教师要帮助学生加深对理论知识的理解,同时在设计上多加指导与启发,引导学生更为完善地完成设计,并在设计中或多或少地表现出一些自己的特色,然后在编码实现时给予更多实际操作性的指导。

在课程设计的指导中,除了教师的指导,也可以采取“强帮弱”的形式,让能力较强的学生参与能力较差的学生的系统设计与实现中,促进他们之间的交流与帮助。

3.3 考核

学生在规定的时间内完成课程设计之后,教师要对学生的作品进行考核,考核的目的不仅仅是为了检查学生完成的情况,更重要的是给他们一个讲解其设计思路并演示作品的机会。考核主要采取学生讲解作品分析设计思路并演示说明作品、教师提问的答辩考核方式,这有助于学生加强知识的全面理解,培养其语言组织与表达能力、应变能力等。

答辩过程要求全班学生参加,分为学生自述、教师提问、学生提问3个环节。首先由学生针对其作品从系统分析、设计、关键技术与算法、存在问题等方面进行讲解,然后演示作品。之后,教师与其他同学可以对答辩人的作品从设计思路、功能、性能、代码与技术等方面进行提问。通过答辩,并结合学生的设计说明书、答辩水平、动手能力、独立分析问题与解决问题的能力、创新精神与学习态度等进行综合考评。对优秀设计者,给予表扬与鼓励,并号召其他同学学习,在评分时适当加分,以调动学生进行课程设计的积极性;对仅完成基本要求的学生,肯定他们的努力,并鼓励他们多实践;对未达到要求的学生,要求其进行整改或限期令其重做。

4、关于Java课程设计的几点思考

这几年Java课程设计的教学效果表明,课程设计为学生巩固所学知识并能学以致用、提高综合应用能力提供了重要的实践平台,教师也从课程设计实践教学中获得了一些有用的经验,为进一步完善课程设计教学提供帮助与参考。

1)注意因材施教,根据学生的基础布置不同的课题。

制定课程设计大纲时,首先制定一个对于大多数学生都比较合适的基本实践要求,然后再针对不同学生的基础设置难易程度不同的课题。这样对大多数学生来说,他们既不会感到实践要求高不可及,又感觉到有一定的难度,比较有挑战性。

2)及时发现并总结问题,积累经验。

在课程设计的整个教学环节中,教师要善于从中发现并总结问题,给予及时、到位的指导。例如,在指导学生完成课程设计时,对于大部分学生普遍遇到的问题,教师要及时发现并进行讲解;从学生上交的课程设计文档中发现学生利用面向对象技术进行程序设计存在的问题,分析问题产生的原因,以改进教学方法;在课程设计答辩考核之后,教师还要对全班课程设计的情况进行全面总结,不断改进。总之,在课程设计的任何一个环节,教师都要善于发现问题,总结经验。

3)教师要不断完善自己的知识结构。

从课程设计的大纲制定、任务布置到指导与考核都需要教师付出很多时间与精力,而且对教师的专业知识与能力要求也很高,因此要想保证课程设计的质量与效果,很大程度上取决于教师的责任心和知识结构的完善。

4)在课程设计中培养学生的软件工程思想。

JaVa程序设计是软件工程课程的先修课程,在讲授程序设计语言时,教师可以适当灌输一些软件工程的思想,让学生对软件开发的基本过程有初步的认识,避免学生陷入“学习程序设计课程只是学编程、软件开发就是编程”的思想误区。实际上,学生在课程设计过程中对系统进行分析、设计、编码、测试等都体现了软件工程思想的运用,程序设计是软件开发过程的一个阶段,通过课程设计能够加深学生对程序设计语言的理解,同时也能较好地培养学生的软件工程思想,为后续软件工程课程的教学打下良好的基础。

5)根据任务的大小,可适当采取小组协作方式。

在这几年的Java课程设计中,由于是面向大二学生,重点是培养学生的个人能力,因此任务的设计主要以个人能独立完成为依据。到了大三、大四,则重点培养团队合作意识。当然,如果课程设计的任务量大、难度大,就可以采取小组成员相互协作的方式完成。教学过程中可以采用分组比赛、奖励等措施来激励各组尤其是知识较弱的学生不断求上进,完善自我,增强团队合作意识和团队荣誉感。

5、结语

软件工程课程设计总结范文第2篇

关键词: 软件工程课程设计 教学现状 教学模式评价体系

一、引言

软件工程是计算机科学、信息技术、软件工程等专业的教学计划中一门重要专业必修课[1],而软件工程课程设计是针对软件工程这门课程展开的一项理论与实践相结合的重要教学活动;它不同于毕业设计,更不同于简单的实验过程。它是软件工程教学的一个重要实践环节,为学生综合能力的运用、技术思维的形成、创造能力的培养搭建了一个平台,使学生除了掌握软件工程理论和方法外,还能够综合运用已学过的程序设计、数据结构、计算机网络、管理学和经济学等课程的技能、工具解决与其相关的理论或实际问题。

在软件工程课程设计中,很多本学科的学者与施教者总结了不错的经验,比如“激励机制”[2]、面向对象的自主实验教学[3]、课程相关体系研究[4]及相关的案例法教学实践设计[5]等,这些方法各有所长。我取其所长,结合亲身教学实践,从课程设计的目标要求,设计内容,设计的具体实施,学生成绩评价体系等方面,对软件工程课程设计教学模式作了系统的探讨。

二、软件工程课程设计的教学现状

长期以来,很多高校培养的学生存在着“什么都学过,却什么都不会”的尴尬局面,专业教育、教材与实际应用需求严重脱节[6]。传统的软件工程课程设计虽然也有设计的要求,但一般只是停留在组织学生编写软件项目若干设计文档这个单一环节上,忽略了对教学方法和内容的更新。目前,大多数院校软件工程课程设计课程教学中普遍存在的问题有以下几点。

1.课程设计目标不够明确,实验和设计不加区别。把软件工程实验和设计的要求同等对待,从而使设计内容偏少,验证性实验内容和方法偏多,实验过程变成了重复的复制和操作的过程,实验教学效果不理想,达不到培养学生独立思考和创新能力的目的。

2.课程设计内容比较陈旧,不能与时俱进。很多从事软件工程课程设计教学的教师本身缺乏项目开发的实战经验,对课程设计的内容往往从一些参考书籍的实例中拿过来让学生去做,有的甚至多年不更新设计内容,这样很容易给学生抄袭的机会,达不到课程设计的要求;同时,很多学生对设计的内容也不一定感兴趣,因此也容易扼杀学生的积极性和创新能力。

3.在项目组划分确定方面,缺乏对学生专业基础,性格和技能的分析与匹配,导致没有凝聚整组成员的合作精神和团队的开发能力。组长的核心作用很重要,但在具体的设计中,一般就是简单的按学号自然的分化,或者学生的自由组合分组,前者失去了团队能力的柔化组合与应用,后者导致少数技能较差的学生不能分到组中去而处于孤军作战的局面。

4.教师制定课程设计的指导要求目的不明确、不详细,监管力度不到位,导致项目开发团队在执行的过程中出现安排任务不合理,出现某些成员任务过重或者过轻的情况。

5.学生成绩的评分结果过于单一,评价体系不够科学合理。对学生的设计成绩的评价往往是指导老师根据学生提交的报告和设计结果来评分,这样容易忽略对学生综合能力(包括学生的口头表达能力,组织能力,团队协调能力等各方面)的评价。

因此,为了培养高素质的综合型软件人才,高等学校探索良好的软件工程课程设计教学模式就显得十分必要。

三、软件工程课程设计教学模式的探讨

针对当前多数院校软件工程课程设计课程教学中普遍存在的一些问题,我根据多年的教学经验,对该课程的教学模式作了如下探讨。

1.指导老师根据软件工程教学的特点,制定出软件工程课程设计的目标与通过该课程设计后可取得预期的收获。下面是我对软件工程课程设计制定的目标和可能的预期收获。

(1)通过本课程设计的实践及其前后的准备与总结,复习、领会、巩固和运用软件工程课堂上所学的软件开发方法和知识,比如,软件项目的完整设计与开发过程、结构化技术、快速原型法和面向对象方法,等等。

(2)为学生适应毕业后团队合作开发规模稍大项目和综合应用本专业所学习的多门课程知识(例如,软件工程、程序设计语言、操作系统、数据库、网络编程等)创造实践机会。为学生提供主动学习(比如,对Web网页设计、或ASP交互网页技术、Java开发环境、网站构架如Struts,Hibernate,Spring,商用数据库应用、电子商务、客户机/服务器技术、Visio与Rational Rose,Sybase powerdesigner软件工具等内容的学习)、积极探索与大胆创新的机会。

(3)使学生通过参加小组团队的开发实践,了解项目管理、团队协作、与客户交流、文档编写、口头与书面表达的重要性。

(4)使每个学生了解软件工具与环境对于项目开发的重要性,并且重点深入掌握好一、两种较新或较流行的软件工具或计算机应用技术、技能。

(5)通过“稍大的”富有挑战性的软件设计项目开发实践,提高学生的自学能力、书面与口头表达能力、创造能力和与团队其他成员交往和协作开发软件的能力,提高学生今后参与开发稍大规模实际软件项目和探索未知领域的能力和自信心。

2.课程设计内容选择应该具有科学性和与时俱进性。课程设计内容选择十分重要,既要体现时代性,又要体现科学性和难度的适当性,因此要求指导老师对当前软件开发领域的整个动态有总体掌握。下面是我对当前软件开发领域进行的大致归类。

(1)网站开发类:包括休闲娱乐(音乐,影视,聊天,休闲运动,旅游景点等)网站;工商经济网站(摄影,日用家居,玩具等);文学网站(诗词/韵文,港台文学,民间文学,科幻文学等);体育与健身网站(极限运动,球类,健美/健身,运动常识,网球,乒乓球等);卫生与健康网站(医学理论,医疗器械,保健/养生,论坛等);国家地区网站(北京,上海,广东,江苏,天津等);教育培训网站(小学/中学教育,职业教育,高等教育,教育软件,培训机构等);其他等类型网站。

(2)应用软件类:如信息管理系统,汉字输入,转换翻译,文字处理,压缩解压,电子阅读,文档管理,字体工具,数据恢复等。

(3)系统软件类:如系统管理,内存管理,文件管理,系统测试工具等。

(4)游戏娱乐类:如网络游戏,Flash游戏,牌和棋游戏等。

(5)其他:如安全病毒,桌面工具等。

这样,课程设计的内容可以根据学生的兴趣和爱好从以上几方面进行选择,也可以由学生自己选择设计内容,指导老师把握学生选择的项目难易程度,同时提出所要达到的要求(包括完成日期,演示时间,学生所要提交的成果,文档资料,等等)。

3.课程设计项目具体实施

(1)确定开发团队。指导老师在班长和学习委员的协助下充分了解学生的兴趣、爱好、基本技能和未来学生的就业意向,学生在教师的指导下,有选择性地进行分组,一般3至5人为一组,并选定好组长。

(2)确定开发项目。指导老师给小组成员分配好开发任务,组长写好开发计划进程安排并提交指导老师检查以便及时修进。

(3)中期检查与指导。指导老师根据各个团队提交的开发计划,对各团队开发项目进程定期进行中期检查,检查各团队的项目进展情况,包括各个小组的开会记录,所查阅的资料,当前所遇到的困难,协助与指导小组面对困难所要采取的解决方法等。

(4)成果提交与演示。课程设计结束时指导老师要求按时提交项目的相关成果,并组织小组团队进行演示与简短的答辩。演示过程要求学生用5―10分钟时间叙述设计原理、过程、系统运行的情况和体会,叙述完毕后由指导老师或其他小组成员提问,指导老师和小组成员记录该学生演示情况和回答问题的情况,并以此作为下一阶段评定该学生成绩的一部分。

本文为全文原貌 未安装PDF浏览器用户请先下载安装 原版全文

4.建立合理,科学公正的评价体系。为了对每个开发团队中的成员成绩有个公正、公平和合理的成绩,因此必须建立合理、科学、公正的评价体系,本文建立的评价体系包括:学生提交成果,学生演示与答辩,学生自评与互评,教师评分。学生提交成果根据表1学生所承担的角色来交付;学生演示与答辩重点体现对系统的原理、过程、结论,以及开发体会进行表述;学生自评和互评体现了学生的自我认同和互相认同感;最后是教师的评分,教师的评定从以下几方面全面考虑:(1)学习态度是否端正,总体表现;(2)项目组织是否有条理,协作程度;(3)软件系统文档资料表达格式是否规范、符合要求,表达是否准确、完整、简单明了;(4)系统结构是否合理,功能是否正确,人机界面是否友好;除了符合上列基本要求具体评定可以参见下表1。最后学生的总评定成绩为:0.4×教师评定分+0.2×学生互评分+0.2×学生演示与答辩评分+0.2×学生自评分。

表1 评定标准

四、结语

软件工程课程设计是一门理论与实践相结合的应用性很强课程,我结合自身从事软件开发的经验和多年的教学,从以上几个方面探索了该课程的教学模式,在实践工作中虽然取得了一定的成效,获得了学生的认可与好评,但仍处于尝试和探索阶段。在实际指导过程中还存在不少问题,例如:个别学生的积极主动性不够,存在抄袭设计成果现象,等等。这些都需要继续努力,尤其是随着软件产业的飞速发展,如何培养高素质软件人才,对教师来说更是一种挑战。因此,教师应不断学习新的知识,提升自身的能力,把握学科的最新发展动态,探索新的教学模式,深化实践教学改革,为我国教育事业作出更大的贡献。

参考文献:

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

[2]张引,杨小虎,陈越.“软件工程”课程实践中激励机制的探索[J].计算机教育,2007,(5):30-32.

[3]江颉,石晓耀.面向对象的软件工程自主实验教学改革[J].实验技术与管理,2007,24(7):112-114.

[4]王薇.软件工程课程体系研究[J].计算机教育,2007,(8):31-32.

[5]巫华芳.软件工程教学案例设计初探[J].教育与职业,2007,(11):139-140.

[6]马燕,张根耀,王文发.软件工程实验教学模式改革与实践研究[J].教育与职业,2006,(36):149-150.

基金项目:华南农业校长基金(2009K203,2008K011)

软件工程课程设计总结范文第3篇

关键词:“A&D”+“T&P”融合;软件工程;专业知识架构;软件人才素养;软件生命周期;课程设计

0.引言

随着软件产业的快速发展,市场对软件人才的需求日益增加,对人才的软件能力属性和从业适应度也提出了更大的挑战。软件工程作为一个独立专业的人才培养模式,也已在各大高校展开。由于此专业起步慢、人才缺口大,关于其培养思路的探讨从开始设置本专业至今,都得到了业内教育界的积极思考。另外,软件工程是计算机高等教育的一个分支,在培养方案和培养模式的讨论议题上,在宏观上依然没有走出计算机基础学科的思维模式;在微观上关于专业方向和专业特色,很多的执行措施并没有太大明显的专业性思路。软件人才在专业性和特色性体现并不明显,更多还是盘旋在传统计算机学科专业的固化模式里。

长期以来,由于培养目标单一、培养过程与企业需求的脱节和错位,高校软件类人才培养不论在数量还是质量都难以满足产业高速发展的需要,也不能很好地做到柔性接口对接,无法为软件产业的发展壮大提供强有力的人才支撑。由此产生了软件实际需求的快速增长与适应性软件人才极度缺乏的矛盾,一方面人才缺口很大,另一方面高校的软件毕业生就业面依旧很窄,专用性不突出,通用性不健壮。对于软件产业的稳固发展,除了要有一定数量的研发人才之外,更欠缺的是批量熟练掌握软件技术原理、柔性适应新型需求、能够灵活贯彻软件行业专业发展目标的应用型技术和架构人才。

1.软件工程学科与软件素养

软件工程是一个成长中的学科,目前还存在不小成熟和提升的空间。它的理念来自于多个学科,并非一个单一的纵向纯粹理念,使它的工程特性体现并不明显。但它的培养目标和学科目的,以及培养对象和实施规范,却是一个典型的工科门类,这在很大程度上可以反映出软件工程的教与学可使用的材料、可借鉴的案例极为匮乏。文献关于软件工程教与学提出“软件工程所有的课程必须要根植现实基础”,并指出“软件的概念、原理,以及解决方法应该贯穿于整个教学活动中以帮助学生建立起一个软件工程心态”。后者的论断是软件工程的出发点也是终结点,所以在整个教与学的实施过程中,问题在于如何很好地提供一个基于以上两点的教学与实践环境,以帮助学生建立起一个“软件工程心态”。所以,软件工程学科的发展目标就是在人才培养过程中创设和浸入软件的可持续素养,是理论与实践的有效融合方案实施,更实现了人才与学科双向的自适应性和可发展性。

软件工程学科的特点决定了软件工程课程的综合性和实践性并重。传统的教学模式在理论和实践环节上都存在一定空缺。一方面,国内高校软件工程课程教学仍停留在课堂授课为主,实践环节薄弱。而理论教材相对于不断涌现的新技术、新方法、新工具,都显陈旧。软件工程的教材不可能做到一本到底。另一方面,学生由于缺乏完备充分的实际项目研发经验,不能很好地理解理论联系,做不到学以致用,做不到主动学习,导致学生学习完这门课程后仍难以面对一项完整的软件项目开发。在进行软件开发时会出现许多问题,如文档不规范、建模使用混乱、CASE平台体会不深、软件项目估算与度量没有方法、系统化软件测试过程等。这些弊端,无法建立起一个自主的“软件工程心态”,也并不能够很好地体会软件素养的真正实质是随需而动、随时而变,而不是纸上谈兵。

软件工程学科和软件工程课程都指出了一个重要参与因素,就是软件工程专业培养过程的实践性问题,这里一般规划了软件工程课程设计。在课程实施时做到课堂与设计的相辅相承、有效融合。软件工程课程设计的目标使学生系统地掌握软件工程的过程、方法和工具三要素,为学生将来从事软件的研发和管理奠定基础。软件工程教学内容是围绕软件生命周期展开的,其相关的过程阶段、开发技术以及工程化的开发过程(软件过程、配置管理、项目管理等)必须通过实际软件问题的实际求解过程以及团队合作进行体验,而综合的软件开发能力的锻炼和培养需要借助一个完整的软件项目开发过程,而不仅是一个小的作业或者几段程序的累砌。因此,以课程设计为基础的实践展开方案是巩固课程教学成果、培养学生软件工程应用能力的重要因素。为了高素质、高质量的人才必须强化理论与实践的结合和跟进,通过强化实践的素质培养来提升人才素养。

2.专业知识架构演化需求

软件工程的专业教授过程,是一个以软件生命周期为纵向线索的执行过程,涉及面广,学科间融合度大。整个知识体系的架构拓扑,不能偏离这条主线。但它的具体实施,并非仅是一个简单的直线序列,首先,需要一个全面扎实的基础底层知识支持,这里需要计算机、软件工程等相关学科的基本知识体系形成,例如数学、管理、经济学、计算机和软件技术基础等的前驱理念。其次,执行过程是个阶段间存在重叠、螺旋、迭代的局部整合结构,每个阶段间存在严格的前驱后继关系,逾越和跳跃的处理方式,均小可行,并且每个阶段的展开过程,有着自己的知识体系,同时都存在知识间的前因后果联系。再次,知识结构的纵向上升轴线,需要实践的并行跟进,实践反过来补充完善教学内容。接下来,进入项目实训过程,综合先期的理论知识和实践经验,以项目管理为指导,通过一个综合性中等及偏上的案例。最后,总结案例过程,汇总相关资料,进一步完善案例内容,补充优化下一阶段教学过程。

这里定义此架构为一个金字塔式的三维体系,如图1所示。

由于软件工程知识结构的综合性和特殊性,金字塔的每个横面和纵面展开细节是按需驱动的平台。并且,知识结构的新型性和技术性是展开细节的主旨思想,即软件工程的教科书知识点不可以拘泥于一本书。课程更多内容,来自于最新的科研、学术、文献和互联网资料。为了更好地完成实践意义和应用目标,在整个教学过程中,知识架构里需要一定实质科研项目的引入,并非几个简单的课程作业。这个实践环节,也是个重叠、螺旋、迭代、逐渐深入、实时反馈总结的过程。这一点,和软件工程的基础理论实施是相辅相承、相得益彰的。理论和实践的实施是专业知识中金字塔的刚性框架是不变的,同时它的参与细节和过程是目标牵引、技术跟进和理论优化完善的,所以此架构的演化,是基本结构不变,参与细节柔性优化。

3.“A&D”+“T&P”融合理念及实施方案

基于图1所示的软件工程理论与实践进阶体系结构,提出“A&D”+“T&P”的融合理念。此理念体现了4个关键字:A&D、T&P、软件工程及适应性软件素养,其中A&D(Analysis&Design)表示软件的分析与设计素养的统一,T&P(Theory&Practice)表示理论与实施的相辅相承。在此理念的实施过程中,秉承软件工程实施过程和先期取得的成果,从软件工程学科的发展和软件从业人才培养角度出发,坚持实施和应用的先导地位,强化分析与设计能力的深化和提升、理论与实践的融合和相长。理念的研究思路强调了自主和适应,即从软件工程的教与学实践出发,紧紧围绕软件工程专业特点,突出人才的适应性和专业特色性,建立可行、自主的理论落实方案,实施深化提升软件素养的分析与设计过程的全面和通用,做到分析与设计、理论与实施的高效结合,推进课程实施和具体应用向实用推广过渡,突现软件工程人才“厚基础、宽口径、强适应、针对性”的素养结构。

在“A&D”+“T&P”的推进过程中,针对高校软件工程学科的专业教育,随着软件工程学科的逐渐细化及不同研究方向间存在的耦合性关联,加上其自身应用行业领域的广泛性和普遍性,计算机各类专用和通用人才的迫切需求,有关计算机在企业、公司、市场等各个角落举足轻重的地位和广阔的发展前景,以及它和其他门类专业间存在的千丝万缕的交互和融合关系,本理念实施方案的主旨目标着眼于高校计算机教育与自适应应用型人才培养的探讨和实施。其实施的架构粒度化为教材框架的适应性创设和更新、课程设计向实施应用的无缝过渡、传统理论基础与前沿技术技能的有效融合和统一及两条主线架构的分析与设计技能提升方案。图2所示为整个方案的实施结构及成果演化拓扑图。此理论的提出有如下创新和建设:

①本理念体现为4个方面的融合和统一,即自主教材建设,重视以课程设计为基准的应用进阶过程,强调基础理论与前沿技能理念的融合,以软件生命周期为主线,体现结构化及面向对象技术。

②A&D、T&P的融合和统一。做到了分析与设计多种思维方式的融合,理论与实施的教学相长和相辅相成。

③软件分析与设计的技能在整个软件素养培养过程的强化和深化。

④适应性软件人才素养的定位,打破课程,建立自主的学科知识结构拓扑规划思路。

⑤硕带本、高年级带低年级的连带式人才培养梯队建设。

⑥“课程设计一软件、嵌入式大赛组织一实践项目参与”的应用实施方案。

⑦基于以上6点,建设了自主教学的《软件工程》教材和讲义。

4&自主性创新型与工程化目标的架构创设

本理念的主旨实施目标是实现自主性创新型的专业建设,以及人才工程化的培养目标。结合图2所示实施结构及演化拓扑过程,在具体实施过程中,序列化为以下4个展开侧面。

4.1自主教材框架的实施

软件工程是计算机学科中一个年轻并充满活力的研究领域,与此相关的软件工程课程是高等院校计算机教学计划中的核心课程。参考大量的国内外软件工程学科教材,从实际出发,总结多年的教学、科研和学科成果,结合软件工程及计算机专业人才素养提升深化的需求,在多个实际软件项目研发过程中积累经验教训,充分考虑软件工程和计算机专业本科生和研究生的知识结构,以软件的生命周期为线索,结构化和面向对象杂揉交织为分析与设计统一理念,项目规划为基本渗入点,统筹传统软件工程和现代软件工程的知识结构特点,规划书稿章节,深入浅出,理论联系实际,在实践中总结理论要点,有效组织书稿内容,自成体系。教材已由科学出版社出版,并在软件工程、计算机专业展开讲授,同时成为软件工程学科硕士研究生的基础参考书籍,取得了不错的效果。

4.2课程设计向实施应用过渡

课程设计是辅助软件工程课程实施的有效实践方案。在软件工程的课程讲授过程中,结合课程理论,已建成多个具体课程设计实施个案,具备了全套课程设计实施的文档、软件及作品。在课程设计的基础上,加大了两点力度:首先,软件、嵌入式大赛的组织和参与,进一步巩固深化了理论基础,演化了课程设计作品向参赛作品的转化,加强了软件的全面性、兼容性、商业化和实用性,从各类大赛的结果和作品自身特色上,充分体现了课程设计在知识点和技能点演化方面的亮点和优势。其次,在课程设计和参赛基础上,在软件工程教师的科研项目中,加大了本科生参与的力度,实现了学生阶段直接进入实施的目标,效果良好。有的学生在第4学年已可以进入软件公司直接展开研发工作,并有着不错的反响。

4.3基础理论与前沿技能理念的融合

基础理论与前沿技能理念的有效融合,体现在3个方面:软件工程学科课程拓扑的纵横两个侧面的思考,课堂教学、课程设计,实践应用的力度分化和统一。一方面,关于课程拓扑和知识结构衔接,做到了变通和灵活。根植实际和市场,建立起一套适时而动、随需而动的拓扑方案,即不拘泥一套培养计划,加大和突出实用性,以软件工程自身的特点为培养计划的实施线索和展开思路,在基础理论的讲授实践过程中,加大了新技术、新技能、新思想的渗透,并充分考虑和变通方向课和选修课的设置和实施。另一方面,打破了传统课堂填鸭式理论灌输方法,在启发式教学的理论基础上,灵活变通教与学角色、教师和学生身份,引导学生做专业学习的主人,强化讨论班、答疑课和讲座的力度,在讨论和答疑过程中,实现了知识点、技术点和前沿新技能由点到线、由线到面的统一。再者,建立了有效的硕带本、高年级帮低年级的培养梯队。不定时地让研究生和高年级本科生走进在授课程,交流研发经验,总结失败教训,交流学习和实践心得,鼓舞了学生自主学习的主动性和自觉性。

4.4软件分析与设计的两条线索

在上述展开过程中,打破了传统结构化和面向对象两个思路分阶段实施的思路,转以软件生命周期为主旨线索,建立了衔接有效的线索阶段划分。针对每一阶段,做到了结构化和面向对象两种思维方式的并行化展开,在对比中加强阶段目标的实现方式,在实现中加强两种思维方式在软件运作过程中的意义。

5.实践应用情况

本理念的实践应用本着“以服务为宗旨,以就业为导向”的办学方针,更新人才培养观念,把适应性人才的自主培养放在极其重要的位置,切实从专业学科本位向职业岗位和就业本位转变,实现教育与就业的对接,切实提高了软件专业素养。

自主教材框架的实施,打破了传统课堂与设计隔离的弊端,建立了多渠道的学习和实施方式。在实施中,巩固了实践的引导作用,在实践中自主完成理论的深化和融会贯通。由于教材的应用案例为多年的经验总结,理论基础的成形参阅了大量的书籍和文献,成熟、稳定、熟练、典型、规范,提供了身临其境的氛围和案例过程。起到了事半功倍、触类旁通的启发式教学目的,效果良好。

灵活变通的学科拓扑方案设计,加大了实践应用课程和选修课程的力度,强化了课程设置的适时、适人和适景,以课程设计为驱动,拓宽了学生的专业视野和觉悟。

提升了学生分析设计软件的技能,尤其在全面性和商业化方面取得了长足进步,提高了学生参与各类比赛和各项科研项目的热情,成果奖项逐年上升。

“硕带本、高带低”的帮带方式,加强了学生间的交流,提高了学生的学习兴趣,从另一层次上强化了学生参与实践、勤于思考、勤于应用的热忱。

同时,该成果的实施,催化了多个软件工程学科的科研项目立项和研发,多个软件成果屡获大奖。

6.结语

软件工程课程设计总结范文第4篇

关键词:数据库课程设计;实践教学;软件工程观

中图分类号:G642 文献标识码:A 文章编号:1007-0079(2014)21-0022-02

教育部2012年对《普通高等学校本科专业目录》和《普通高等学校本科专业设置管理规定》进行修订。以此为契机,结合华北水利水电大学(以下简称“我校”)软件人才培养模式,根据软件工程专业的培养目标和培养要求,积极借鉴“高等学校本科教学质量与教学改革工程”实施以来的教学改革理念、措施和经验,对“数据库课程设计”实践教学环节存在的问题进行反思,提出将工程设计的理念固化在课程设计的各个环节,对其进行改革和研究,旨在提高学生的实践动手能力和自主创新能力。

一、“数据库课程设计”现状概述

“数据库课程设计”为软件学院(以下简称“我院”)软件工程专业在学习完“数据库系统”(包括“数据库原理”与“数据库应用”)课程之后于学期末独立开设的一个综合实践教学环节。实践教学在工科教学领域是一个不可忽视的环节,它不但是理论知识得以迁移的手段,也是抽象与具体、理论与实践结合的基点。数据库系统是一门理论性、实践性均非常强的课程,开设该环节旨在加深学生对数据库系统相关理论知识的理解,培养学生分析、设计和编程实现数据库应用系统的能力,并在具体的数据库应用系统开发过程中强化学生的专业技能。

“数据库课程设计”是让学生独立地根据具体的应用环境,构造满足相应需求的数据库应用系统,它属于设计性实验范畴。设计性实验不但能够促使学生运用所学知识培养综合解决问题的能力,而且也会充分激发学生的学习动机,培养学生的学习兴趣,加强学生的实践能力。但在目前的实施过程中达不到预期的效果,通过分析和反思主要原因如下:

1.轻视实践教学环节

“数据库课程设计”于学期末开设,为期2周。从时间上考虑课程已全部结束,从心理上处于一个放松的状态,已不能全身心地投入学习。且时间较短,学生总以为2周的时间学不到专业技能,不能充分认识安排实践环节的目的和重要性,缺乏学习的兴趣,不能积极参与。

2.缺乏软件工程观念

在学习完“数据库原理”之后进行“数据库课程设计”,大部分学生认为该课程设计只需编程完成数据库的建立、各位数据库对象的建立及数据的添加、删除、修改和查询等功能。学生根据老师布置的课程设计题目马上就做这部分工作,对系统设计缺乏一个整体认识。这部分工作一天时间足以完成,在实际的实践教学环节中,学生大部分时间会浪费在数据库的连接、登录等问题上。这就出现了重程序设计技能,[1]轻软件工程方法,热衷于探索各种机巧的程序设计方法,忽视需求分析、评审、测试等软件工程的基本原则与方法。

3.考核模式过于传统

“数据库课程设计”作为一个独立的实践教学环节,传统的考核方式为出勤率(10%)、电子版系统(30%,界面+数据库连接+数据库设计)和纸质课程设计报告(50%),没有对学生所设计的数据库应用系统进行深入分析,投入的人力、精力不足,没有充分调动学生的自主创新能力。

如何充分发挥“数据库课程设计”的作用,收到良好的教学效果,是本次教学改革的主要研究任务。基于以上分析,主要从以下几个方面进行研究。

二、课程设计实践环节改革思路

1.任务提前分配

通过“数据库系统”课程的教学及“数据库课程设计”实践教学环节的实施,经过反思和讨论,认为通过对课程设计任务的提前分配可以充分认识到实践环节中的要求,调动学生的学习兴趣积极参与其中。关键问题是任务如何分配,提前到什么时候。

“数据库课程设计”是在学习完“数据库系统”课程之后于学期末开设,课程与实践环节是前后连贯的。那么在讲授“数据库系统”时就把“数据库课程设计”的题目、内容、要求、目标及成果提交的方式等分配给学生,在学生认识到学习完课程之后还有一项重要的任务。在学习课程的过程中,学生自己就能认识到学习的重点与难点。

“数据库系统”课程与“数据库课程设计”各个环节的对应关系如图1所示。

2.注重题目设计

“数据库课程设计”的第一个环节:题目的设计,至关重要。教师查阅资料,认真选题。首先题目的难度要适中,若选题简单,会让学生误认为数据库应用系统开发是一件很容易的事情,学生不能在设计中全面了解数据库设计的全过程及数据库系统的各种功能,达不到课程设计的目的;若选题过难,部分学生会知难而退。其次,题目要充分,避免抄袭现象,要设计到较多的领域,题目示例如表1所示。由于在学期初进行任务分配,学生有充分的时间对自己感兴趣的题目进行详细地实地调研,并能让学生充分认识到所学的知识并不抽象,能用来解决现实生活、工作中的实际问题,理论与实践完美结合。

由于学生的工作经验和社会阅历都不够丰富,在给出题目时,不但包括系统应该完成的功能需求,也包括一些描述系统的素材,同时还对各系统中现实环境中的情景用flash或DV制作了一系列的虚拟片断,从而为学生直观地理解系统中的业务需求奠定了基础。[2]

3.培养团队合作意识

学生分组,每组一题,不能重复,组内成员分工合作,培养团队协作能力,避免出现注重个人程序设计技能的运用和各种经典程序设计难题的解决,轻视团队协作能力和具体项目环境下的工程开发能力。

尤其在设计环节,要求学生灵活运用学过的知识进行设计,给同学们提供了较大的思维想象空间,调动了学生的学习兴趣,勤于思考,充分表达对不同设计的看法,然后集体讨论和总结,发挥集体的智慧,得到较优的数据库模式。

4.加强软件工程观

根据学生在进行数据库信息系统设计时重编程、轻设计的问题,提出把软件工程的观念贯穿到信息系统设计的各个环节。基于国际软件工程学科CC-SE2004规范,软件工程的教学与实践,从早期注重培养学生的软件工程观。

软件开发过程是一个系列活动,应包括:需求分析、软件设计、实现与调试、测试与验收、部署、维护等活动,具体过程如图2所示,在此过程中要借鉴工业工程中的“过程决定质量”的理论,强调过程对于软件开发的作用。[3]由此可见,编程只是其中很小一部分工作,应把重点放在分析和设计阶段。

为帮助学生以工程方法构建中小规模软件系统的知识和技能,演示一完整的项目作品,并制作开发视频,视频中展示数据库应用系统开发中每个阶段的主要任务和具体做法,尤其是需求分析和项目设计阶段,从而避免重编程实现而轻分析、设计的现象。

5.考核模式创新

为充分调动学生积极参与到课程设计各个环节,课程设计最后一天,每个设计小组分别答辩,讲解项目开况并回答老师提出的问题,最后提交课程设计报告。最终的成绩由考勤记录、课程设计报告和答辩三部分组成,成绩比例为2:3:5。该方式可充分调动学生的积极性,让每个学生均参与其中。

在此基础上,院里可以组织系统设计大赛,课程设计的作品可以参赛,并把获奖作品上传到院系网站,让学生自己进行投票,评选出界面设计奖、功能奖、代码设计奖等奖项。

6.实践效果的评价与反思

在课程设计结束后要做好教学效果的反思工作,通过问卷、交谈、建议等方式了解学生的心得体会,[4]特别是在实践动手能力方面的收获以及不足之处,以便进行教学改革,逐步提高教学水平,达到更好地教学和实践效果。

三、总结

根据软件工程专业特色,对“数据库课程设计”实践教学环节的任务分配、题目设计、团队意识、软件工程观及考核模式等方面进行改革和研究。近几年的实践表明,改革后效果良好,提高了学生的实践能力,达到了课程设计的预期效果。

参考文献:

[1]何福保,吴德道,胡开华.基于项目模拟实训的“数据库课程设计”教学方法研究[J].福建电脑,2012,(1):31-32.

[2]刘智,刘加伶,闫河,等.数据库课程设计的教学思路与实施[J].软件导刊,2009,(1).

[3]骆斌,邵栋,任桐炜.软件开发的编程基础[M].北京:机械工业出版社,2012.

软件工程课程设计总结范文第5篇

关键词:普通院校;实践教学体系;工程实践能力;路线图

软件工程专业在我国高等院校还是一个很不成熟的专业,比起传统的工科专业来说,软件工程专业有更多的技术成分,因此,我们的教学体系和模式就要有别于传统的教学体系和模式。实践教学体系是否合适将直接影响软件工程专业毕业生的质量。对于重点院校软件专业和软件学院实践教学体系已有很多专家学者进行了研究与实践[1-3],而普通院校无论是师资,还是其他教学资源,都不能与重点院校相比[4-5],应该有一套有别于重点院校的实践教学体系。本文将对普通院校软件工程专业实践教学体系的构建进行探讨,并结合我院软件工程专业实践教学体系进行总结。

1实践教学体系构建原则

软件工程专业实践教学体系构建原则可以从4个方面考虑:软件工程专业特点、教指委的软件工程专业规范、软件工程专业的职业定位、人类认识事物的规律。

1) 软件工程专业是一个综合性学科,既有科学的要求,又有技术的要求。从学生的培养目标来看,普通院校软件工程专业含有更多的技术要求。目前国内大多数普通院校软件工程专业还是按照传统的理工科人才培养方式进行学生的培养,忽视软件工程专业知识体系的特点,从而导致学校的学生大多数随能按照培养计划完成学业,成为一名合格的软件工程专业的毕业生,但与企业的要求相差甚远,企业找不到合适的人才的现状。

2) 软件工程专业规范给定的软件工程专业知识体系包括:计算机科学与技术知识、软件工程知识和领域知识。计算机科学与技术专业、软件工程专业是实践性、应用性非常强的学科,要使学生掌握好计算机科学与技术的基础理论知识,应用软件工程技术的基本技巧与方法,就必须确保实践教学的教学质量。

3) 按照现在职场流行的说法,人才分为3类:白领、灰领、蓝领。根据本地区和学校的特色,我院软件工程专业的定位是培养“灰领”人才,因此,学生除了学习传统的计算机科学与技术知识、软件工程知识外,还要学习管理学知识,同时根据我校的特色与定位,把汽车设计与制造过程中信息结构作为应掌握的领域知识。管理学知识将用于团队管理、软件开发过程管理以及信息结构建模等开发活动;汽车设计与制造过程中的信息作为软件开发实践的应用对象,是软件的加工对象。

4) 人类对事物的认识是一个由简单到复杂,由具体到一般的过程,是一个分析与综合的过程,将随着知识的积累逐步深入。这就要求实践教学要按照培养计划进度设置不同的实践内容,而且可以根据学生的个体情况进行少量的调整。

2实践教学体系构建方案

现在高等教育的教育方式正在从以教师为中心转变为以学生为中心,既以学生的目的需要为中心、以学生的能力拓展为中心、以学生的知识结构为中心开展实践教学。因此,我们在设计实践教学体系时,始终注重按照学生理论学习的进度和学生能力提高的需求,依据软件开发过程的特点,分层次开设不同的实践内容。

按照学生能力培养的路线图,实践教学体系始终围绕着培养知识应用能力和创新能力进行构建。能力培养方面分为3个方面,即程序设计能力、软件开发能力、工程实践能力。实践教学课程体系由5个层次的实验构成:课程实验、课程设计、项目实训、开发实践、毕业设计,如图1所示。

2.1课程实验

本类实验主要是加强学生对所学知识的理解,“听过的会忘记,看过的会记住,做过的会理解”。实验内容分为3类。第1类:掌握和运用工具,包括语言类,软件开发工具类等;第2类:理解所学知识,包括操作系统、编译原理、设计模式、计算机网络、数据结构与算法等;第3类:同时兼顾工具学习和知识理解,如数据库原理。这类实验主要是学生按照实验指导书完成规定的实验内容,但也有一部分内容只给出实验目的,让学生自己设计实验内容(设计型),以兼顾学生的不同层次与兴趣。

2.2课程设计

本类实验的目的就是培养和训练学生对所学知识的综合运用能力和学习新技术、新知识的能力,属于规范中的设计型与综合型实验。教师给出课程设计题目、相应的背景描述和课程设计要求,学生在教师的指导下独立完成课程设计项目,时间一般为1~2周。实验内容和要求根据学生的理论课进程安排,如VC++课程在数据结构与算法设计之前开设,因此VC++课程设计要求学生做好类的设计、界面设计,数据存储用文件形式,对软件的效率不做要求;数据结构与算法设计课程设计,除了VC++课程设计的要求外,要增加对算法的效率和存储空间的要求;设计模式与UML建模课程设计除了VC++课程设计和数据结构与算法设计课程设计的要求外,增加软件可靠性与高效的要求等。所有的课程设计都要求界面美观。同时鼓励优秀学生应用一些还没有开设的课程内容。

2.3项目实训

本类实验的目的主要是训练项目的组织能力、工程实践和团队协作能力,着重开发过程的训练,按照软件生命周期,完成各阶段的工作。项目实训放在软件工程和数据库原理等专业基础课程之后,软件体系结构之前。同时开展多个项目,把学生分成小组,在不同的项目中担任不同的角色,教师扮演客户和技术总监的角色,要求学生按时上下班,实验室允许学生加班,学生要负责实验室设备安全。要上交较完整的需求分析与设计文档,特别是各部分的公共信息要完整。可以只实现部分需求,时间安排为2~4周为宜。

2.4开发实践

开发实践在软件工程的专业实验室或校外实习基地进行。2008年我们与东风悬架弹簧公司和武汉天喻软件有限责任公司合作,利用武汉天喻软件有限责任公司的PLM软件,装入东风悬架弹簧公司产品开发的基础数据。学生通过该平台,可以了解企业产品的开发流程,不懂的地方随时可以向企业工程师咨询;可以选定一个模块,按照PLM系统接口规范进行设计开发,然后集成到PLM系统中去。可以是替换原来的模块,也可以是增加新的功能,进行集成测试检验程序的可靠性和效率。时间安排为4~8周为宜,由学校教师与企业工程共同指导。

2.5毕业设计

毕业设计是大学教学过程的最后一个环节,是一个学生自主开发的综合性实践教学环节。通过毕业设计,能使学生综合应用所学的各种理论知识和技能,进行全面、系统、严格的技术及基本能力的练习。我院毕业设计时间安排为16周,鼓励学生把就业与毕业设计结合起来。学生在企业实习阶段参与项目开发,由企业导师进行项目开发的相关指导,回校在校内教师指导下完成论文和答辩。

3软件工程专业实践教学的师资要求

软件工程专业的实践教学要求实践教师既是实践的指导者,又是直接的参与者。要对学生在实践中遇到的各种问题给予解答,包括编程语法、算法逻辑、软件体系结构设计、用户需求分析、团队协作方法等;在实践过程中更多地是站在用户的角度对学生的成果进行验收测试,使学生体会到在现实情况下怎样的软件才能被用户接受,体会到用户怎样检查软件的可靠性、可用性、正确性,用户怎样评价软件的优劣。

软件工程专业的特征要求从事软件工程专业教学的师资队伍是一支具有综合素质的队伍,既有专业理论基础,又要有企业实践背景;要充当软件开发过程的各种角色――投资者、使用者、组织者、设计者、编码者、测试员等。课程实验主要由理论基础扎实的教师担任,课程设计由理论基础扎实的教师和有企业实践背景的教师共同指导,项目实训和开发实践主要由有企业实践背景的教师完成。

4结语

本文介绍的软件工程专业实践教学体系是我校通过几年的不断摸索与改正后形成的。在探索过程中获得了湖北省教育厅项目(软件工程创新型人才培养研究)和学校的支持(2007年软件工程特色专业建设费15万元)。该实践教学体系利用一些基础实验帮助学生理解和掌握专业理论知识,为今后的发展打下坚实的专业基础,同时通过参与各种项目,提供了发展其动手能力的环境,贴近了企业需求,提高了就业率。2009年我校软件工程专业的一次就业率达到了90%。由课程设计、开发实践和毕业设计构成的创新训练体系,使学生获得了科学研究方法和软件开发活动的工程化的经验。

参考文献:

[1] 李红梅. 面向能力培养的软件工程实践教学体系[J]. 高等工程教育研究,2009(2):84-87.

[2] 董玮. 引入实训体系,培养应用型软件人才的探索与实践[J]. 计算机教育,2007(23):10-19.

[3] 董玮,邱建华,杨英鹏,等. 培养应用型软件人才的实践教学体系的研究与实践[J]. 计算机教育,2008(10):16-18.

[4] 郑耿忠,刘秋梅. 地方性院校软件工程专业建设探讨[J].电脑知识与技术,2009,5(30):8477-8478.

[5] 郑耿忠,刘秋梅. 软件工程专业实践教学体系构建探索[J]. 电脑知识与技术,2009,5(27):7690-7691.

[6] 白伟华. 软件工程专业应用型人才培养模式的思考[J]. 计算机教育,2008(22):35-37.

Practice Teaching System of Software Engineering in General Institutes

FU Yong-zhi, WANG Wen-yan, SHI Lü-hua

(Department of Computer Science School of Electrical & Information Engineering Hubei University of Automotive Technology,

Shiyan 442002, China)

Abstract: This software engineering from the General Practice Teaching Colleges reality, the analysis of general software engineering practice teaching institutions in the current problems based on software engineering students presented a road map and ability to enterprise data into laboratory the establishment of modeling business point of view, combined with our hospital practice of software engineering teaching practice, through repeated experiences in practice and improvement. Three years’ practice shows that the model described in this paper develop students ability to practice engineering has made significant results.

软件工程课程设计总结范文第6篇

关键词:软件工程;教学研究;教材;方法和手段;实践

1课程简介

软件工程(Software Engineering,简称为SE)是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。它涉及工程概论、项目管理、程序设计语言、面向对象的需求、分析、设计、测试、维护、数据库、软件开发工具、系统平台、标准、设计模式等,是一门综合性很强的软件课程,在计算机教学体系中占有十分重要的地位。

2国内外软件工程课程的现状

2009年9月,高等教育出版社正式出版、教育部高等学校计算机科学与技术教学指导委员会编制的《高等学校计算机科学与技术专业发展战略研究报告暨专业规范(试行)》(以下简称试行规范)中列出的“计算机科学与技术”专业方向之一就是软件工程。据信息查阅,目前有“软件工程”方向的教育部国家示范性软件学院有38所,全国高校开设“软件工程”专业方向授课的学校有两百多所。

以美国卡耐基•梅隆大学为代表的国外大学已经开发出非常实用的工程软件人才培养课程体系,它包括10个知识体系、58个知识领域[1]。2007年开始,国内的软件学院纷纷引进他们的课程体系,意在培养出中国的国际化工程型软件人才。各高校的软件工程方向本科教育也正在加快向工程型教育转变。以使课程教育紧密结合现代软件产业需求,课程内容结合一些实际工程项目[2]。

事实上,软件工程是一门教学难度比较大的课程,主要原因在于其以下4个特点。

(1) 软件工程作为指导计算机软件开发与维护的工程学科,研究范围广,包括技术方法、工具和管理等方面;

(2) 软件工程是一门边缘学科,内容丰富,涉及领域广,包括计算机科学、计算机技术、系统工程、管理学及经济学等。

(3) 软件工程还是一个相对比较年轻的学科,尚未形成成熟的教学模式,教材上例题零零散散,几乎没有较为成熟的实践内容。

(4) 软件工程是一项不断发展的技术,相关课程内容更替很快,如果继续偏重传统的成熟理沦,会造成与最新技术的严重脱节。但是完全讲解新技术,也不适合软件开发的实际需要,而且,课堂上也没有时间讲述全部新旧知识点。

国内高校的软件工程课程教学实践仍处在一种探索和发展阶段。在实施过程中,仍然以教师的思路为主,以此带领学生进行知识的学习。学生不可能独立面对一项完整的项目开发,仍然处于被动接受知识状态,缺少自主思考,很难体会到一个完整的项目开发过程。这种教学状态培养的学生在实际应用中不知道如何开展项目,也不懂如何推进项目。另外,课程的考试大多以笔试为主,一张试卷就决定学生课程学习成绩,这在很大程度上导致学生在软件工程课程学习中重理论轻实践。

为了弥补校园软件工程教育弱的现状,很多公司开设软件工程教育实习基地,把学生编入一个具体项目开发组,让他们在实际项目开发中建立工程概念,熟悉项目开发流程,参与项目具体代码和文档的书写,为胜任未来公司实际工作积累经验。为了适应外包软件人才的需要,2007、2008年市场上甚至出现了不少软件工程人才培育公司。

另外,大学为了培养学生职业技能也增设了专业实习,很多软件工程专业的学生被输送到相关的培训公司参加项目实习,而校园的实习也主要是引进公司的实训项目,以培养学生工程意识。

3电科院开设本课程的情况

软件工程课程包括的主要内容如下。

软件工程理论概述、软件开发过程、软件开发工具(建模技术)、项目管理、软件需求、面向对象、软件过程、软件建模、模式设计、极限编程、敏捷软件工程等。

作为一门独立课程,软件工程课程首先需要解决的问题是根据需要选择合适的授课内容;在具体教学过程中选用多本教材,它们的内容对比如表1所示。

北京电子科技学院开设本课程已有多年,经过对历届计算机科学与技术系学生的授课,课程教学处在不断摸索和进步之中。结合其他高校开设该课程的情况,并考虑到就业学生参与计算机项目开发的人不多这一情况,我们在课程内容上有所选择,主要是加大对软件工程项目的介绍和讲解,对软件合同中的甲方内容进行讲述,用政府电子政务项目做举例来说明软件工程的用处。从2008年开始,我们确定了软件工程课程的内容及基本要求,见表2。

通过本课程的学习,我们希望学生掌握软件工程的有关概念,了解各阶段的主要技术、方法与工具,具备协助和管理软件开发的基本能力。同时,强调文档,学习文档模板的学习。另外,在更加细化的内容上面,如分析方法之数据流图、分析工具之UML语言、测试方法之黑盒测试、白盒测试等方面,我们会根据实际的技术发展作适当的调整,以便跟上新技术发展和市场需求。

4教学方法和手段

软件工程课程的教学难度大,要讲好则需要下很大的功夫。

4.1软件工程第一堂课

课程定位:软件工程是计算机学科中一个年轻并且充满活力的研究领域。20世纪60年代末期以来,为克服“软件危机”,人们在这一领域做了大量工作,逐渐形成了系统的软件开发理论、技术和方法,它们在软件开发实践中发挥了重要作用。今天,现代科学技术将人类带入信息社会,计算机软件扮演着十分重要的角色,软件工程已成为信息社会高技术竞争的关键领域之一,而软件工程已成为高等学校计算机教育计划中的一门核心课程。

突出课程的核心地位,从“工程”角度去引导学生对本课程的认识;从“就业”角度去阐述本课程的重要性;从“大型软件”开发的兴趣来看本课程[3-4]。

4.2软件工程的实践

软件工程实践是很重要的环节,理论结合实际才能让学生真正体会课程的魅力。在数据库课程设计这个环节,我们要求学生应用软件工程的知识,尽量用工程化的思想来指导自己的设计。

4.3软件工程的案例

从实际出发,用软件开发的实际例子进行讲解,让学生体会大型软件开发的过程、方法、手段和控制。

从微软、IBM、用友等知名软件公司的软件开发看软件工程的开展。

从学生以前的计算机试验看软件的开发,并进行比较,从中看到弱点和不足。

4.4软件工程和项目管理

引进国外项目管理的概念,从别的项目管理到软件工程的项目管理。将两者进行比较,讲清不同点和相同点,让学生受到启发。突出项目管理的重要性,软件开发同样需要项目管理。从成本、风险、利益、控制角度看软件工程[5]。

4.5软件工程和毕业设计

从学生毕业前的毕业设计环节看软件工程的重要性。“毕业设计”不是一个小的计算机试验,而是一次对学生四年学习的全面考核,而软件工程正是可以利用的知识。

5实践安排与不足

为了培养学生工程概念,也是鉴于软件工程课程实践性强的特点。我们在2003年制定软件工程课程教学大纲时,特将该课程的实践环节与数据库课程设计相结合。本着在实践中体会、在实践中落实的原则,我们要求学生在多人合作开发数据库应用系统的课程设计中,运用软件工程学到的软件项目管理方法和软件设计与实现技术,并撰写必要的文档,以便使开发软件有较好的、完整的技术档案,并使其不断升级换代。另外,从各高校的情况看,实践环节非常重要,它需要实践环节的辅助教学。

6教学实施情况

开设课程实验是一个探索的过程,我们在反复摸索,以便增长学生的工程项目开发经验。我们曾要求1999级、2000级的学生将软件工程课程学习作为一个项目来管理,要求学生写课程学习日志,记录每周投入课程学习的具体时间、当时设计的目标、完成情况等。为了弥补学生缺乏项目开发经验的缺陷,我们也开展课后读书报告活动,即提供10~20个与毕业设计有关文档或指定若干软件工程发展的技术方向,让学生分组阅读文档或查阅并阅读有关文献,写出项目评价及专题读书报告(参见附录中当时读书报告分组评分记录)。但这也带来一些负面影响,即学生越来越依赖计算机,读书报告变成复制和粘贴文本,而不是认真阅读,预设的训练目的无法达成,因此,我们随后取消了这一做法。

99级教学中的软件工程实践时间设计为6小时,这主要是考虑学生在同一个学期中还有数据库课程设计30学时,不可能同时做两项大实验。因此,我们尝试从99级开始,在数据库课程设计中加入软件工程实践内容和要求,如需求报告完善、软件质量评估、软件测试具体检验等,并在课程设计答辩中设立软件工程相关问题的回答。到2003年,教学大纲正式提出两课实验合并。

在此,我们还有两个希望:(1)加大软件工程课程的课时(目前是30课时的教学,没有试验课时),同时开设试验环节,针对软件工程开设一个类似数据库课程设计的环节,加强学生动手能力的培养。(2)让学生走出去(政府或企业),撰写调查单位的软件实施方案。

7结语

软件工程蓬勃发展,学院的教学目标是培养服务于党政机关机要事业的计算机应用型专业人才。在课程教学中不断紧跟技术发展,紧紧抓住学院培养目标而设立课程教学目标,选好教学内容是个艰巨的任务,任重道远,它需要我们长期的努力。

参考文献:

[1] 孙家广,刘强. 软件工程理论、方法与实践[M]. 北京:高等教育出版社,2006.

[2] 钟珞. 软件工程[M]. 北京:清华大学出版社,2005.

[3] 胡飞,武君胜,杜承烈,等. 软件工程基础[M]. 北京:高等教育出版社,2008.

[4] 钱乐秋,赵文耘,牛军钰.软件工程[M]. 北京:清华大学出版社,2007.

[5] Carlo Ghezzi. 软件工程基础[M]. 施平安,译. 2版. 北京:清华大学出版社,2002.

Reflection on Software Engineering Course in BESTI

JIANG Xiang-gang, ZHANG Xiao-li

(Beijing Electronic and Scientific Institute Applied Software Team, Beijing 100070, China)

Abstract: This paper has a general analysis of the course of software engineering in BESTI. It presents the various parts including the curriculum planning, classroom teaching approches, problems to be solved and the goals to be attained. As a result of this reflection followed by related practice, a more improved software engineering is expected in BESTI.

软件工程课程设计总结范文第7篇

关键词:综合性课程设计;软件工程;教学实践;创新模式

中图分类号:G642 文献标识码:A

1引言

软件工程课程具有综合性强,实践性要求高的特点。但是,通过教学实践发现学生普遍感觉软件工程课程中的概念抽象,不容易在课堂讲授中获取切身的体会和认识。同时,大部分学生的编程实践较少,很少参与开发实际的软件项目,对项目的背景了解甚少,欠缺在实际环境中综合运用知识的能力。因此,仅仅是在上软件工程课程的时候以固定课时的方式进行实验训练,学生很难真正理解和掌握软件工程的内涵。从实验过程来说,学生也没有足够的时间为具体的项目做好充分的准备,以完成资料查找、阅读、系统分析、设计、编码和测试等软件开发工作。此外,很多学生重视编程等技术的学习而忽视了必要的文献查找、阅读和写作的训练。

开展综合性课程设计主要是要解决本科生在学习中重理论轻实践,缺乏综合运用各种知识来完成实际工作的问题。软件工程综合性课程设计作为培养学生软件开发能力的重要教学手段为软件工程课程教学提供了理论与实践相结合的有效途径。通过参与综合性课程设计,学生能更好地掌握软件开发的基本技能,培养动手能力,锻炼分析和解决问题的能力。通过经历整个软件开发过程,学生发现和解决各种问题,能进一步培养学生的创新素质;同时,经过工程实践,学生还能建立起独立开展软件开发工作的信心和动力。

2课程设计的组织

课程设计以学生为主体,为学生提供一个既动脑又动手,并且独立实践的机会。首先实验题目要能激发学生的兴趣而不仅仅是一些常规的示例性课题。其次,课程设计的时间安排、实验的开展都需要学生自己把握。因此,在实践过程中不能按通常的课程教学来组织,需要围绕给定的具体题目指导学生自己查阅相关的资料,自学必要的开发工具,搭建实验的开发环境,完成编程和测试工作。除了软件开发实践以外,还要在此过程中培养学生的项目组织和管理能力,以及团队协作精神。老师主要是通过指引方向、讨论问题、提出建议、评价和考核完成情况为学生提供一个将所学知识进行融会贯通的环境,让学生在这个环境中自由的成长。

围绕上述的教学理念,教学过程的组织主要包括以下三个方面:

(1) 制定目标和要求。让学生明确综合课程设计的重要性、需要完成的任务和考核目标,给出具体的问题领域和题目。综合性设计的题目可以按照不同的标准进行划分,例如:研究型和应用型题目,或科研型和教学型题目。研究型题目可以指定学生完成某个特定的研究问题,例如:某些比较复杂且学生没有学过的算法。应用型题目则偏重软件开发实践,训练学生掌握新的技术,例如对于网站开发类题目,不仅是简单的实现网站构建,而是引入当前IT领域最新的技术(如Ajax),使学生学会如何在较短时间内掌握一门新的开发技术。

(2) 按学生的实际水平和情况进行分组管理。学生在知识掌握和运用方面有一定的差异。有的学生具有较强的分析、理解能力,但是动手能力较差;而有的学生动手能力较强,但在写作方面的训练较少。不少的学生在接触到自己不熟悉的领域时,感觉进入陌生的领域很困难,缺乏完成题目的信心。另外,很多学生由于认识上的问题,关心编程锻炼而忽视写作练习。针对这些问题,在组织管理时,要充分了解学生各自的特点,把不同类型的学生划分到一个小组中,例如:在一个小组中以五个人为上限,进行合理组合和搭配使在一个团队中既有具有较强管理意识的学生、编程能力较强的学生,又有一定写作能力的学生。在管理小组时,让每个人去尝试其他小组成员的角色,让他们从团队中学习,既发挥各自的专长,又能全面培养软件开发的才能。

(3) 项目实施和指导。采用定期检查任务进度、召开团队会议、讨论问题等形式关注并检查学生的工作情况。在时间安排方面,通过一个学期来实施整个课程设计,所有实践不占用课程时间,学生利用课余时间来完成分配的任务。前期老师对如何开展工作进行指导,然后定期对学生的阶段性成果进行检查。根据学生所积累的问题的数量和重要程度不定期的做一些软件开发知识的专题指导,如软件编程规范、界面和数据库设计、软件体系架构等。在完成系统后,指导学生依据文档规范撰写实验报告。针对在写作过程中出现的条理混乱、表述不清等问题,通过讲解相应的写作模板和案例来加强学生的写作训练。最后,对学生提交的各种文档采用分析、讨论等方式进行评审和考核。

3教学实践

在综合考虑各情况的基础上,以实验项目的形式开展综合课程设计的教学活动。设计的实验题目涉及多领域的知识和工程背景。老师在指导过程中,运用引导、辅助等手段来充分发挥学生在实践中的主导作用,加强创新能力的培养,让学生充满热情地参与到系统开发,从中获取知识和经验。

(1) 引导学生进入课程设计

开始课程设计时,首先召集学生,建立小组联系方式,确立项目的开发团队。给小组成员讲解综合性课程设计的目的和意义、题目背景,以及所涉及的知识领域。大多数学生是第一次完成这样较大的软件开发题目,缺乏足够的自信,老师需要通过鼓励来帮助学生扫清心理障碍。刚开始学生对整个工作没有明确的思路和规划,因此要引导学生按照项目的开发方式进行规划,包括时间安排、任务分配、确定重点、查阅资料文献,等等。通过培养学生独立查阅文献资料的能力和对系统进行分析和设计的能力,使他们能独立地思考问题,逐步摆脱对老师的依赖。

对于项目完成的成果,给出明确的规范和考核标准。在开始课程设计前需要向参加项目的成员介绍软件开发需要建立哪些文档,例如:需求规格说明书、概要设计说明书,等等,要求学生按照标准的软件工程文档来完成课程设计报告。概要讲解有关的软件开发工具,包括设计工具(MS Visio等)、开发环境工具(MS Visual Studio,Eclipse等)、测试工具(JUnit等)。这些工具的安装、配置和使用要学生通过搜索Internet、查找图书馆资料来自学掌握。

(2) 培养创新能力

软件工程教学如果仅仅在抽象的概念、术语和图表上进行分析、讲解,学生没有直接的项目开发体验,不了解真实用户的需求,就很难发现在软件开发中存在的问题,这样也就限制了学生用新的思维或新的角度去思考问题。从很多IT行业的成功例子中可以发现很多优秀的人才在实践中发现问题、解决问题从而创造了新的产品和技术,甚至开拓了一个新的市场或领域。例如,Google、Facebook、P2P软件等都是从最初一点想法和实践发展起来的。因此,在综合性的课程设计中要充分考虑发挥学生自己的想象力,训练学生的创新思维。

在综合性课程设计中提出四种创新模式,通过不同的创新模式引导学生突破传统和常规的思维方式,尽可能以创造性的方式去解决实践中遇到的问题。

① 应用创新。应用创新以实际工程中的用户需求为核心,以多领域相结合,强调软件系统的实用性,例如:在指导学生确定题目时,把P2P网络和信息检索相结合提出应用软件课题。

② 技术创新。开发一个具体的软件系统需要各门课程,甚至是其他学科的知识,因此,掌握新的技术,并对多种技术进行融合创新,能极大地激发学生的积极性。例如:根据学生已掌握的操作系统知识,在实验中结合多核技术拟定“基于多核实现矩阵并行运算”的题目。

③ 研究创新。研究创新强调问题驱动和研究导向,通过给出能激发学生兴趣的研究问题,进行研讨式分析和实验。老师指导学生阅读某个研究领域前沿性的论文,在论文的基础上实现相关的算法和系统,在逐步积累的基础上,对不足的地方加以改进,实现创新。

④ 管理创新。在实际的软件项目开发中,管理比技术更重要。通过实践要让学生重视管理,学会管理,培养管理能力,实现管理创新。例如,在软件开发中经常会出现各种变化,包括软件需求、设计、源代码等都会在开发过程中出现这样或那样的改变,学生通过在实践中体会这些变化对软件开发的影响,思考如何从管理的角度去解决这些问题,从而发挥创造性。

(3) 评价与考核

在实验过程中要进行阶段性评价,以讨论的方式找出软件系统和文档中的问题。将文档分发给团队成员,每个人要对其他成员的工作进行分析和衡量,对程序代码和各种文档进行评估,提出自己的看法。通过讨论以及批判性和创造性的思考,来强化学生之间的知识交流,提高其分析能力,锻炼交流和沟通技能。老师在评价时要考察学生的开发进度、商讨解决出现的技术问题,协调管理中的矛盾。在总结学生工作时要对学生作出指导,并给出改进建议。

考核方式主要是对学生开发的软件系统和课程设计报告进行评分。在评分时,要综合考虑学生的平时表现、提交的源代码、课程设计报告,以及是否具有创新性。具体来说,考核分为三个部分:第一部分是软件系统的需求分析,这一部分占 30分,主要根据文档考察学生对系统的认识和分析能力;第二部分是软件系统的设计,这一部分占30分,主要考核学生运用各种图表和语言进行系统分解和设计的能力;第三部分是软件系统的编码和测试,这一部分占40分,主要考核学生的逻辑思维能力和动手能力。

4总结

当前本科生除了掌握基本的理论知识和技能外,还需要通过训练学会如何运用各种知识来解决实际问题。综合性课程设计以培养学生的综合素质和能力为目标,以发挥学生主观能动性为指导思想,注重学生在实践过程中各方面能力的培养。通过开展软件工程的综合性课程设计,为学生建立起完成具体任务的团队合作环境,使学生真正成为学习的主动者,让学生组织项目团队,担任不同的角色,培养了组织和管理才能,提升了动手能力和创新素质。

参考文献:

[1] 周波,钟林飞. 软件工程课程设计教学方法探讨[J].计算机与网络教学,2007(9):154-155.

[2] 刘智,刘加伶,闫河,李唯唯.数据库课程设计的教学思路与实施[J]. 软件导刊,2009(1):198-199.

[3] 庞晓琼.案例驱动的数据结构课程设计教学改革实践[J]. 计算机教育,2009(1):53-55.

[4] 唐仕喜.编译技术可扩展式课程设计改革研究[J]. 计算机教育,2009(2):40-42.

[5] 张天宝,王攀峰.试论新型教与学的关系的建构[J].教育研究,2001,(10):38.

Teaching Practice of Comprehensive Course Design of Software Engineering

ZHU Da-yong1, ZHANG Xin-li2, LI Shu-quan1

(1. School of Software, University of Electronic Science and Technology of China, Chengdu 610054, China; 2. Department of Math and Information, Chengdu University of Information Technology, Chengdu 610054, China)

Abstract: Comprehensive course design can effectively motivate learning interest of students, improve practical ability, and promote comprehensive quality. In this paper, we discuss the necessity of teaching practice of comprehensive course design and introduce the organization and assessment method of course design. Innovation modes of developing overall quality of students are presented through practice of teaching practice.

软件工程课程设计总结范文第8篇

关键词:应用型本科;培养软件工程师;Java课程群;教学研究

中图分类号:TP3 文献标识码:A 文章编号:1009-3044(2014)19-4518-03

Java Programs Applied Undergraduate Teaching and Research Group for the Training of Software Engineers

YU Xiao

(Wuhan Technology And Business University Department of Information Engineering, Wuhan 430065, China)

Abstract: In this paper, application-oriented university training Java software engineers in the process of teaching a number of issues, analyzes how demand-oriented enterprise Java software engineers conduct group teaching curriculum design, including accurate positioning training applied talents teaching objectives, optimize Curriculum reconstruction and the accumulation of experience teaching curriculum system, integration and research.

Key words: Application-Oriented; Training of Software Engineers; Java Curriculum Group; Teaching and Research

1 应用型本科Java课程群的教学现状

随着计算机行业的发展进入到互联网时代,由于 Java语言在计算机软件开发尤其是支持网络编程方面的优势,大多数高校计算机科学与技术专业在培养计划中都设置了Java系列课程的培养方案。应用型本科大学作为第三类大学在进行Java系列课程教学改革中确定Java课程群体系的培养目标是非常重要的。因为应用型本科培养的软件类毕业生在就业中将会与研究性大学本科专科毕业生、职业技术专科学院和职业培训机构的学生进行竞争。为了适应软件行业对Java开发人才的需要,高校简单的开设一门Java语言程序设计是远远不够的[1]。现阶段,应用型本科大学的Java课程体系是参考研究性大学本科课程体系的标准而制定的,并没有突出应用性的特点,而学生在编程方面的能力培养远不及职业技术学院、职业培训机构的学生在实践编程能力的培养。

2 面向培养Java软件工程师课程教学的重要性

现阶段计算机应用软件的开发主要采用.Net平台和Java两大平台,这两个平台各有千秋[2]。在计算机类职业培训机构的课程体系中Java系列课程也是热门的课程。Java软件工程师的职位在目前就业市场中属于紧缺职位。面向培养IT企业需要的软件工程师,为企业输送急需对口人才是各大高校在进行Java课程群的教学建设中需要考虑的问题。但是,很多Java课程体系的教学与市场需求存在脱节的情况。另外,Java教学的知识落后于企业正在使用的技术。计算机行业是发展和更新知识非常快的行业,由于高校教师缺乏与企业交流而导致在Java教学过程中不能及时更新到最新的技术,使得学生在毕业时所学的知识过时。

3 面向培养软件工程师的Java课程群教学思路

3.1应用型本科大学在Java课程群教学改革中的优势

应用型本科大学比科研型本科大学在课程设置上允许更为灵活,所以在Java课程群教学中可采用多种培养方式相结合。例如,在实践教学环节可以加强校企合作。Java的实践课程可以由企业的讲师或软件培训机构的人员参与教学过程,在教学内容上,可以比研究性大学更偏重应用。也可以在高年级的实践教学中的有限课时内让学生直接在企业中实习。为实施素质教育,提高学生的专业技能,培养技术应用型人才,需要不断探索以变更落后的教学方法,改革传统的教学模式[3]。

应用型本科大学在教学过程中比职业培训机构更注重综合能力的培养。比如,应用型本科教学不仅教授的是Java语言,除此之外教学课程体系中还会设置有《数据库原理》、《计算机网络工程》、《操作系统原理》和《软件工程》等重要的理论性指导课程,使学生在计算机应用能力上更具全面性,为学生更好的在职业发展中成为软件工程师打好理论基础,而不仅仅只能成为程序员。

3.2 面向培养软件工程师的教学目标

应用型本科Java课程体系教学应将与Java技术紧密相关的多门课程整合起来形成课程群,以强化课程间的关系,理清课程间的衔接,避免课程内容的重复性。设计课程群中实践课程的递进关系。课程群的建设应紧密结合企业的需求,设计面向培养软件工程师所需的能力项目的定向案例或课题。进行Java课程群教学培养的目标应是面向企业需求的以应用型为主的强化实践编程能力的软件工程师。

3.3 Java课程群体系

根据现有Java技术相关的教学课程选择五门课程组成Java课程群,分别是Java语言程序设计、Java语言程序设计课程设计、Java Web程序设计、Java Web程序设计课程设计、Java技术毕业设计。课程群中前一门课程是后一门课程的基础,课程的难度是递进的由浅入深的介绍Java技术的应用。每门课程都有不同的教学培养的侧重点,如下表所示。

表1 Java课程群的培养与考核

[课程名\&能力培养侧重点说明\&考核方式\&Java语言程序设计\&Java语言基础、面向对象程序设计、图形用户界面编程、文件编程\&理论笔试与实践课程综合评分\&Java语言程序设计课程设计\&三个方向的综合应用程序开发:图形用户界面与文件流结合编程;图形用户界面与网络通信结合编程;图形用户界面与数据库结合编程\&答辩与课程设计论文综合评分\&Java Web程序设计\&JSP技术基础、JDBC、JSP进行动态网站开发\&理论笔试与实践课程综合评分\&Java Web程序设计课程设计\&使用JDBC数据库连接技术进行JSP动态网站开发的综合应用\&答辩与课程设计论文综合评分\&Java技术毕业设计\&使用EJB应用开发、Java API的使用及服务的应用进行小型实际应用项目的开发\&毕业设计答辩与毕业设计论文综合评分\&]

课程群的每门课程都分为理论教学环节、实践教学环节和考核环节组成。每门课程的评分标准根据课程的特点而定。程序设计课程以理论考试与实践课程的程序完成情况进行综合评分,课程设计课程以系统运行演示与答辩结合课程设计论文的综合评分,毕业设计环节需要通过本科毕业设计答辩和本科毕业论文的考核综合评分。

4 面向培养软件工程师Java课程群的教学研究

4.1 面向培养软件工程师Java课程群教学方法的研究

在应用型本科大学教学多年Java课程群的课程以后,根据教学实际情况在教学方法方面进行了归纳总结。在Java课程群教学中应以学生在学习该课程的实际情况为出发点,一方面强化面向对象编程思想,因为面向对象是软件工程的基础,为后续用Java工具进行软件工程与产品设计打基础;另外一方面应突出Java与C++的不同点和各种工具包,主要以图形用户界面与事件作为重难点。具体来说,课堂教学方法上尽量深入浅出而突出重难点,因为一般来说,开设《Java程序设计》课程是在大学本科已经开设了至少两门语言课程《C语言程序设计》、《C++语言程序设计》之后的高年级专业课,一部分内容希望学生在老师的引导下培养自学能力或在后续课程《软件工程》与《Java Web程序设计》课程中逐步强化细节。

4.2面向培养软件工程师Java课程群教学方式的研究

教师在本校应用型本科大学教学过程中与学生进行了多次交流,得到了学生宝贵的反馈,结合教师在不断教学探索与实验教学过程中的体会与思考,对进行培养面向软件工程师的Java课程群教学方式改革进行了总结,得到以下五个方面的改进措施。

1) 实践教学与课堂教学整合

学生反映理论教学在教室学习效率不高,建议安排在实验机房进行教学,理论教学后及时进行上机操作能更好的巩固知识,实现理论与实践的同步教学。课堂教学中的每个知识点在理论教学后布置上机的小实例作业,学生通过完成小实例作业就能很好的检测该知识点的掌握情况,将实践教学与课堂理论教学整合。整个教学全程安排在实验机房完成。

2) 分步式案例教学

Java课程群中的课程的每门课程开始列出该门课程的重要知识点。在教学过程中以一个综合应用案例为线索,涵盖该门课程大部分最重要的知识点应用。将这个综合案例分解成若干部分,整个教学过程中在不同的重要章节中逐步分别讲解案例的某个部分。最后,将分步骤讲解的案例部分组合在一起,完成整个案例的拼接运行与演示。这种分步式案例教学让学生对该门课程有一个完整的知识体系。分步式案例教学在培养学生综合应用能力方面取得了很好的效果,使学生从应用角度对该门课程每章的内在联系有了一个总体的了解。

3) 学生演讲与教师指导相结合

一般来说,学生在学习Java课程群的课程时已经具有了一定程序设计语言的基础,学生在现有的C语言或C++语言学习的基础上进行多种编程语言的对比,能更好更快的掌握Java课程群的新知识。关于Java语言基础和JSP语言基础部分,例如变量与常量、表达式与运算符等知识点,可以让学生进行课下自学,并在上课过程中由学生进行演讲,对比现已学过的语言,分析Java语言或JSP语言的不同点和相同点。教师在学生讲课中及时进行补充或更正学生知识点的讲解。学生演讲与教师指导相结合的方式适用于Java课程群中程序设计语言基础部分。这种教学方式在一方面锻炼了学生的表达能力,在另一方面让学生巩固了以往的知识点并学习了新的知识点。在一定程度上调动了学生的学习积极性和促使学生更加参与课程教学,增加教与学的互动。

4) 分组答辩式教学

学生的课程设计或教学演讲都可以采用分组的方式,例如一个班级30人,一般将该班级分为6个组,每组5人。因为企业大型项目开发都是以团队的方式进行的。在应用型本科Java课程群的课程设计类课程中以团队方式进行答辩,每组团队得到相同的分数等级。使学生更具有团队合作意识,增进团队合作能力进行编程,使学生在企业中作为软件工程师能更快适应软件开发团队。

5) 案例式扩展教学在实践教学过程中的应用

Java课程群中实践课程教学可以采用一个应用实例贯穿到每个实践环节。从课内小案例的添加功能就可以完成该门课程的大案例,再在这个大案例的基础上进行优化完善可以完成综合课程设计,然后添加高级应用功能可以达到毕业设计的要求。使实践课程体系中的所有课程共同使用一个应用实例使这些多门实践课程具有内在的连续性,又可以很好的扩展性,使一个应用实例不断进行加强与优化。

参考文献:

[1] 彭碧涛,罗海蛟,姜灵敏. Java课程群的规划与建设[J].福建电脑,2014(2):51.

[2] 朱锋,朱香卫. 高职院校JAVA课程教学改革实践[J].电脑知识与技术,2010(6):9167.

软件工程课程设计总结范文第9篇

关键词:软件工程;教学改革;案例教学

“软件工程”是计算机及相关专业的一门专业课,是培养学生的软件开发能力和项目管理能力的一门重要课程,反映计算机专业人员综合应用的素质和能力。它要求学生在学习过程中不仅要注重概念、原理、方法和技术的掌握,还要注重方法、技术的实际应用。然而,在实际教学中,很多学生认为这是一门理论课,内容繁琐,感到枯燥,学习兴趣不大,待到用时又不知如何运用这些知识。同时,软件工程是计算机科学与技术领域的一个重要的学科,如面向对象的开发方法、CASE工具与环境、软件重用技术、网络环境下的软件开发技术等有了长足的发展,而目前的教材内容、实践环节等方面存在严重的缺陷,制约了软件工程课程的教学效果。

本文结合作者多年来的软件工程课程教学和科研的实践经验,就软件工程教学内容、教学方法和手段、实践环节安排、教学环境乃至考核方式等方面进行了一些探索和研究。

一、结合行业发展,不断更新教学内容

教学内容是连接教师与学生的纽带,是教学改革的重要内容,具有开放性、综合性,应体现学科之间的相互联系、体现现代性,反映科学发展、知识更新规律。

《软件工程》课程是一综合性学科,涉及计算机科学、管理学、数学、心理学等相关学科的知识。随着计算机科学的迅猛发展,与相关学科的联系更加密切。为适应21世纪学科发展的需要,要适当压缩传统的面向过程方法学内容,力求反映20世纪90年代以来面向对象方法学的最新进展。在教学过程中以软件开发过程为主线,重点讲解软件开发的分析和设计方法,内容涉及软件工程方法、工具、过程三要素,使学生从工程的角度认识软件开发,对软件开发有比较完整和深入的认识,了解国内外软件工程学发展的现状和趋势,并且在更广阔和更高层次上加深对软件工程学的认识,为后续课程及相关工作的开展打下坚实的基础。

在教材选择方面,宜采用中英文教材结合的方式。对于基本理论和基本方法部分使用中文教材,对于新方法、新技术以及国际标准等内容则直接使用相关的英文资料,并鼓励和推荐学生课外阅读英文资料,更好地了解其最新发展。

二、采用立体化教学手段

在软件工程的教学过程中,采用多种立体化教学手段,拓宽学生的知识面,以及更强的独立思考、团队协作和解决问题的能力。

1.多媒体课件。采用多媒体教学手段,制作内容丰富、形象生动的课件。这些课件不仅能形象地讲授软件工程基本原理,而且使得课堂信息量更大,教师还可以演示和讲授软件工程工具。还有部分课件被制作成自学模式,以便于学生课外扩展知识。

2.双语教学。对软件工程可进行双语教学,采用国外优秀的原版教材,课堂板书和作业都采用英语作为工作语言,并鼓励学生使用英语解答;同时给学生提供英文的课外阅读资料,让他们及时了解国际上学科的最新发展。

3.实践。在课外,采用大量的项目演练。项目以团队操练的方式进行,一个项目组由5~6名学生组成,分别担任项目经理、客户、上级经理、系统分析员、程序员和测试员等角色。由教师为其提供一个虚拟的项目情景和要求。项目组根据项目需求,制定项目计划,进行分析、设计、编码和测试,运用所学知识,分工协作、查资料、探寻问题的解决方案。应注意培养学生遵守职业道德、法律和纪律,尊重知识产权。必须发挥团队的作用,提高学生在团队中工作的能力,培养学生交流、沟通、协调及与用户合作的能力。进入课程设计阶段,学生就能够进行实际软件项目开发。

4.课程网站。建立软件工程网站,组织和帮助学生的探索性学习,促进学生的主动发现和主动探索,扩展课堂教学。在网站上课程安排、教学大纲、师资介绍、作业、多媒体课件、实践要求、常用软件工程模板、自测题等内容,同时提供大量有价值的参考书籍清单和电子文献,供学生随时查阅,学生还可以随时和教师在网上进行交流和答疑,变学时有限的教学为在读期间的全程教学。

5.探索校企合作。软件工程具有显著的实践特点,其教学内容必须与当前软件行业的发展和需求保持同步。因此学校应该与实力雄厚、管理规范的软件企业建立合作关系,及时了解行业发展动态,调整教学内容。聘请既有理论知识又有开发经验的软件工程师为学生做有关先进的工程技术和管理规范方面的专题报告,让学生了解企业开发软件项目的全过程、软件开发的实际问题、行业现状以及发展趋势,及时调整学习方向,增强学习的主动性和积极性。

三、进行案例教学

软件工程讲授的原理、技术、方法都很抽象,容易产生枯燥乏味的感觉。为了使学生能深刻领会和理解软件工程的思想和方法,在教学中引入实际案例,将复杂抽象的概念用具体生动的案例进行诠释,能够收到事半功倍的效果。具体可采用以下步骤:

1.设计一个典型的、完整的、易于理解的、实际的软件项目案例。在整个教学过程中结合该案例讲授每个知识点,将实际案例作为贯穿所有知识点的主线。该案例最好来源于授课教师直接参与的软件项目,授课教师对其全部细节能够准确掌握。

2.讨论案例。在讲授一个重要的知识点后,安排一到两节的案例课,针对知识点设计多个案例。教师用语言叙述案例,其中隐含着有待解决的问题及其所处的客观条件,学生通过认真阅读案例,查阅相关资料,理出头绪,明确给定条件,找出主要问题并做好记录。然后分析问题,制定针对性的措施,提出解决主要问题的可行方案,并对方案进行初步评价。

3.组织小组讨论。将学生分成五至六人的小组,每位学生运用所学知识对案例进行分析、说明,提出解决的措施,重点阐述分析、设计的理由。然后,大家集思广益,小组内展开讨论,并由专人记录,讨论的重点是对各个解决方案的相互对比和分析评价。最后,选出一个较为合理的解决方案,或者对所有方案进行整理和归纳,得到一个最佳方案。

4.小组代表发言,集体讨论。每组派一名代表上讲台,讲述本组对案例的理解、分析、判断、论证和决策过程,说明解决问题的方案和分析设计结果。对于同学发言老师要给予必要的引导,鼓励他们多角度、多因素地观察分析问题,培养学生的知识迁移和拓宽思维的能力,启发他们学以致用的意识。然后,组织全体同学进行分析、讨论、评价。对于非确定型的决策问题,同学问往往存在着意见分歧,结论很难统一。这一过程可以增加学生对软件开发项目的感性认识和兴趣,提高他们分析问题和解决问题的能力。

5.教师总结。在案例讨论结束时教师要进行总结,因为解决案例问题的决策方案不是唯一的,所以教师的总结应是就整个讨论情况做出评价。对正确的论点给予肯定和完善,指出一

些原则性的问题,特别是对某些问题可以更深一步思考,进行启发式诱导。

案例教学法通过案例贯穿软件工程各知识点的讲授,将枯燥的理论与实际紧密结合,变抽象为具体,帮助学生充分理解和掌握各知识点;通过组织学生参与案例讨论,让学生置身于模拟的真实环境中,扮演不同的角色,身临其境,真正从“工程师”的角度考虑问题,学习如何应用知识解决问题,是软件工程课程进行实践性教学改革的一个重要环节。

四、强调实践教学环节,合理安排课程实践

软件工程课的目的是使学生能够真正在大型软件开发活动中贯彻软件工程的思想,正确使用软件开发方法,提高软件质量。为加强实践环节,教学中可采用以下方法:

1.重要的基础概念和基本方法必须进行实践。例如,需求分析建模的重要工具数据流图、实体关系图和面向对象建模等,这些知识看似容易掌握,但做起来可能会漏洞百出。在讲述相关内容时,应及时安排实验,检验学生是否掌握基本工具的使用。

2.将CASE工具贯穿于所有的软件开发活动。例如,在介绍基于UML的面向对象软件开发方法时,学生即可通过RationalRose针对实际应用问题构造UML模型。

3.根据软件工程课程实践性强的特点,结合教学进度,开设综合性的设计型实验一《软件工程课程设计》。该课程设计与《软件工程》课程的理论教学内容紧密配合,同步进行,让学生通过软件开发的实践训练,进一步掌握软件工程的方法和技术,提高软件开发的实际能力,培养创造性的工程设计能力和综合分析、解决问题的能力。

课程设计的具体内容是:在教师指导下,按照软件工程的开发技术和管理规范,开发小组进行“应用软件项目开发”。课程设计过程中,开设1~2次“软件新技术讲座”,并提供丰富的“教学资源”,为学生提供帮助。其主要内容是按照“案例导向、项目驱动”的设计思想,模拟软件企业先进的软件项目管理和开发过程,进行“应用软件的开发实践”。以项目开发带动软件工程的理论学习,又以软件工程的理论来指导软件开发的实践。使学生得到较全面、系统和规范的软件工程实践的训练,培养创造性的软件设计能力和综合分析、解决问题的能力。

软件开发是智力活动,同样的软件项目,不同的软件开发组织和人员采用的方案,耗费的时间、资源、成本,软件产品的质量可能相差很多。一个重要的因素是软件开发组织和人员的创新能力和水平。因此,在教学和软件开发活动中应营造一个宽松、和谐的环境,努力培养学生的创新精神和创新能力。

五、重视教学和科研环境建设,建立软件工程实验室

有效地使用软件工具和软件开发环境,对提高软件开发质量、效率,保证按时交付具有十分重要的作用,应加大软件实验室的建设力度,重视流行软件工具和软件开发环境的有效使用,提高学生的软件开发能力。如面向对象的软件建模方法、数据建模方法、软件度量方法、软件测试方法、现代软件管理方法、开发工具Rational Rose、Power Designer等不仅教师要掌握,学生也要尽可能熟悉。要熟悉和掌握的软件工程工具包括:分析设计工具、程序设计工具、软件测试工具、配置管理工具等。将这些工具贯穿教学及其软件开发活动,既有利于教师提高自身的研发能力,也能够让学生接触和学习各种CASE技术,锻炼他们的软件开发能力。

软件工程实验室需要配备适用的软硬件设施和比较科学先进的软件开发工具,以便为软件工程的教学和研究创造『必要的环境与条件。通过实验室建设,不仅可以加强教学效果,还可以进一步提高教师的科研水平。

六、改革教学评价体系

作为实践性课程,软件工程的考试方法有别于其他课程,检验的重点不是理论考试成绩,而是学生能否在软件开发过程中贯彻软件工程学的思想和方法。考核不仅是检验学生学习和掌握课程的情况,更重要的是鼓励和督促学生学习的主动性,注重学生综合知识和应用能力方面的考核。我们提出的方案是:平时作业占10%,课程设计占40%,笔试占50%。笔试要注意两个方面:一是反对死记硬背,进行开卷考试;二是卷面综合性题目、实践性题目占主要部分,重点考查学生综合运用理论知识的能力和方法,考核学生对软件工程思想和软件开发方法的实际掌握程度。

软件工程课程设计总结范文第10篇

关键词:软件工程;案例教学法;实施

中图分类号:TP311.5-4 文献标识码:A 文章编号:1007-9599 (2012) 09-0000-02

一、引言

《软件工程》是计算机软件专业的一门核心课程,在软件开发实践中发挥了重要作用。《软件工程》中的方法与技巧不仅能用于软件开发过程,还能促进组织管理协作能力的发展,对培养学生的软件素质,提高学生的软件开发能力具有重要的意义,为将来从事软件开发及项目管理工作打下良好的基础。

《软件工程》是一门比较难学的课程,内容抽象,理论性、逻辑性比较强。对于学生来讲,一些知识点很难学懂学透;对于老师来说,如果仅仅是照本宣科,纯理论的讲解,那么学生听不懂,会失去学习的兴趣,教学效果差。

采用什么样的教学方法能提高学生学习本门课程的兴趣,提高他们的教学效果,促进本课程的教学?是我们每位教师值得思考的问题。通过多年软件工程的教学,总结经验得出案例教学法可以促进软件工程的教学。

二、案例教学法

案例教学,就是在教师的指导下,根据教学目的要求,组织学生对案例的调查、阅读、思考、分析、讨论和交流等活动,教给他们分析问题和解决问题的方法或道理,进而提高分析问题和解决问题的能力,加深学生对基本原理和概念的理解的一种特定的教学方法。

案例教学方法有一个基本的假设前提,即学员能够通过对这些过程的研究与发现来进行学习,在必要的时候回忆并应用这些知识与技能。案例教学法非常适合于开发分析、综合及评估能力等高级智力技能。为使案例教学更有效。学习环境必须能为受训者提供案例准备及讨论案例分析结果的机会,必须安排受训者面对面地讨论或通过电子通讯设施进行沟通。但是,学习者必须愿意并且能够分析案例,然后进行沟通并坚持自己的立场。

案例教学的具有自身的特色:1.鼓励学员独立思考。案例教学没人会告诉你应该怎么办,而是要自己去思考、去创造,使得枯燥乏味变得生动活泼,而且案例教学的稍后阶段。每位学员都要就自己和他人的方案发表见解。通过这种经验的交流。一是可取长补短、促进人际交流能力的提高,二也是起到一种激励的效果。2.引导学员变注重知识为注重能力。学员一味的通过学习书本的死知识而忽视实际能力的培养,对自身的发展有着巨大的障碍。3.重视双向交流。在案例教学中,学员拿到案例后,先要进行消化,然后查阅各种他认为必要的理论知识.这无形中加深了对知识的理解,而且是主动进行的。捕捉这些理论知识后,他还要经过缜密地思考,提出解决问题的方案,这应视为能力上的升华。同时他的答案随时要求教师给以引导,这也促使教师加深思考,根据不同学员的不同理解补充新的教学内容。

三、在软件工程教学中采用案例教学法的意义

传统的软件工程教学是给学生讲解许多的理论知识,并没有说明如何将理论知识与实践相结合,以理论指导实践,通过实践加强对理论知识的理解,采用的是填鸭式的教学方法,学生上课积极性、主动性不高,感觉学习枯燥乏味,产生厌学心理,学生的情绪会同时影响老师的积极性,使课堂气氛非常的沉闷。

要有好的教学效果,除了要求老师对本门课程的知识非常熟悉,教学经验丰富以外,还要求老师在上课时,采用比较好、先进的教学手段和教学方法。通过本人对软件工程课程的研究,认为在软件工程教学中以“案例导向、项目驱动”的教学方法,引导学生理论与应用相结合,理论指导实践,通过实践反过来加深对理论知识的理解,学生利用软件工程的原理、方法、工程技术在实践中学会发现问题、分析问题、研究问题、解决问题,更好地进行软件开发。

四、案例教学法在软件工程教学中如何实施

案例教学法在软件工程教学中组织实施的总原则:先从小的案例教学入手,学生适应后再进行大的案例教学,把学生分成若干个组,在规定的时间让学生阅读材料,之后让学生互相提讨论并解答,让学生对案例进行展示,老师对学生的案例进行评价和总结。以下分别讲解案例教法在软件工程教学的理论、实验、课程设计中的实施。

(一)案例教学法在软件工程理论教学中的实施

本课程主要介绍了软件危机的产生、消除软件危机的途径、软件工程的定义和基本原理;软件生命周期的基本任务、软件模型;传统方法学:结构化分析、结构化设计、结构化实现;面向对象方法学:面向对象分析、面向对象设计、面向对象实现;统一建模语言;软件计划、组织、控制、国际标准。重点和难点的内容是:软件工程的定义和基本原理;软件生命周期的基本任务、软件模型;结构化分析、结构化设计、结构化实现;面向对象分析、面向对象设计、面向对象实现。

这门课程涉及的理论知识比较多,内容比较抽象,教师在讲解课程内容时,如何使这门课程上得有声有色,学生听得津津是道,除了优化课程教学内容,有较强的表达能力以外,还要采用好的教学方法。

在本课程的理论教学中,我们都是以案例为导向,对软件生命周期的基本任务、软件模型的教学,举出三个案例,结合我们的理论知识,要求学生分析与计论出三个案例分别适合采用哪种软件模型,以及采用这种模型的原因。通过仓库管理系统、教师工资支付系统等案例讲解如何采用传统方法学对软件进行分析、设计、实现,面向对象分析、面向对象设计、面向对象实现知识的讲解,贯穿的案例是ATM自动取款机系统、电梯系统。

(二)案例教学法在软件工程实验教学中的实施

软件工程知识的掌握,不仅需要掌握理论知识,也需要大量的实际动手的训练。在实验课中,以案例为主线设计实验内容。本课程安排的实验如下:

1.系统分析----数据流图。2.系统分析----状态图及数据字典。3.软件总体设计---软件的系统结构。4.软件详细设计---程序流程图及判定表。5.白盒测试-----逻辑覆盖。6.白盒测试-----基本路径测试。7.黑盒测试---等价划分及边界值分析。8.自动售货机系统对象模型的创建。9.自动售货机系统动态模型的分析。10.自动售货机系统功能模型的创建。配套与教学内容相对应的上机实验,使理论与实践想结合,使学生得以融会贯通所学知识,学生能对所学的理论知识有更深的理解,加强实践运用的能力。

(三)案例教学法在软件工程课程设计中的实施

精心设计和实施综合性的课程设计,以循序渐进的任务驱动方式,指导学生完成综合性的实验任务。本课程安排了56节课的课程设计,课程设计案例的题目:1.教师工资支付系统的研究与设计;2.仓库管理系统的研究与设计;3.ATM模拟系统的研究与设计;4.图书管理系统的研究与设计;5.无纸化考试系统的研究与设计;6.校友录系统的研究与设计;7.餐饮系统的研究与设计;学生也可以自拟题目。可以三个人一组或单人完成一个项目,在完成项目期间,学生可以互相探讨,也可以与老师探计。项目成果最终以论文+系统的形式上交,论文要求如下:第一章是引言,第二章是系统分析,第三章是系统设计,第四章是系统实现,第五章是系统测试,第六章是总结,然后附录是主要的代码。这些项目可以使用传统方法学的方法,也可以采用面向对象的方法进行分析、设计、编码和测试。

通过案例项目开发过程中发现的问题,有针对性地学习软件工程理论。使学生在实践中学会发现问题、研究问题、分析问题、解决问题。使得学生能对所学的知识建立完整的知识体系。

五、总结

在软件工程的教学过程中,采用案例教学法,打破了传统的填鸭式的教学方式,实现以”案例教学法”促进”软件工程”教学,激发了学生学习的兴趣,使得枯燥乏味的课堂学习变得生动活泼,提高了学生学习的主动性,达到了较好的教学效果,学生通过软件工程课程的学习,掌握软件工程的原理和方法,根据软件规模,用传统方法学或面向对象方法学对软件系统进行分析、设计、编码、测试、运行维护。提高学生的软件开发能力,为将来从事软件开发及项目管理工作打下坚实的基础。

参考文献:

[1]张海藩著.软件工程(第3版).人民邮电出版社,2010,3

[2]宋雨著.软件工程实践教程.清华大学出版社,2011,3

[3]刘光洁著软件工程与项目案例教程.清华大学出版社,2012,1

[4]张凯著.软件工程与开发技术.清华大学出版社,2012,1

注:本文为网友上传,不代表本站观点,与本站立场无关。

上一篇:施工组织课程设计总结范文 下一篇:电子商务课程设计总结范文

免责声明
发表评论  快捷匿名评论,或 登录 后评论
评论