软件项目管理教学分析论文

2022-04-24

【摘要】本文研究了软件工程在的教学管理的应用特点和存在问题,强调案例化教学和探索式学习,使学生在理解和实践的基础上掌握当前软件工程的方法、技术和工具。【关键词】软件工程;教学管理系统;系统设计;应用随着多媒体技术的快速发展,软件工程在现代教学中占据越来越重要的位置,软件工程的开发也逐渐受到重视。下面小编整理了一些《软件项目管理教学分析论文(精选3篇)》的相关内容,希望能给你带来帮助!

软件项目管理教学分析论文 篇1:

基于项目驱动模式下的“软件工程”教学改革

摘要:本文介绍了我院针对软件工程传统教学模式的弊端,以项目为驱动,结合案例教学、团队合作等教学方法,使学生能够系统地掌握软件开发的过程、方法和工具,从而具备计算机软件系统开发和维护的能力,为学生将来的工作打下坚实的基础。

关键词:软件工程;教学改革;项目驱动教学模式;教学方法

文献标识码:A

1引言

软件工程发展非常快,与其形成鲜明对比的是,近几年来软件工程人才的培养却陷入了停滞不前的状态,致使软件工程这门学科的发展与软件工程人才的培养严重脱节。导致这种状况的原因可归结为:(1)高校的教学模式单调;(2)教学内容落后。目前大多数学校采用的教学方式重理论、轻实践,以教师讲授为主,学生只是知识的被动接受者[1],学生接受起来比较困难。导致学生学习软件工程时难以深入体会和把握软件工程知识的精髓和本质,更不知道如何运用软件工程的技术和方法来开发、维护软件。

2课程特点

软件工程的定义:将系统的、规范的、可度量的工程化方法应用于软件开发、运行和维护的全过程及上述方法的研究[2]。从定义可以看出软件工程是一门集方法性、思想性、标准性和规范性于一身的学科,包含大量在长期的工程实践中总结、提炼出来的原则和经验,以及规模庞大、操作复杂的实践要求。软件工程研究的范围很广、涉及的领域很多,内容十分丰富,很关键的一点是软件工程还很年轻,尚未形成成熟的教学模式,教材也少有提供较为成熟的设计、训练和实践内容。软件工程的这些特点导致了软件工程的教学面临着诸多困难。

3教学改革方案

对软件工程教学模式进行改革的目的是为了让学生能够积极主动地参与到软件工程课堂学习,激发学生学习的热情和兴趣,进一步提高课堂教学效果,提高学生的实践能力,以期培养高素质的软件工程专业人才。以上分析了软件工程课程的特点,并列举了教学中存在的一些问题,高校应结合自身的现实情况,以社会需求为动力,积极创新,探索适合自己的软件工程教学方式。本文立足于培养优秀的软件工程人才,针对软件工程传统教学模式的弊端,对该门课程的教学改革进行了研究,认为课堂教学模式在打牢基础、提高实践能力的方针指导下,以项目为驱动,结合案例教学、团队合作等教学方法,根据社会需求大胆尝试改革软件工程教学模式。让学生系统地学习软件开发过程、方法和工具,理解软件开发的原理,掌握软件开发的技术,从而具备软件开发和维护的能力,为学生以后的工作打下良好的基础。

3.1教学方针

(1) 打牢基础

软件工程是总结于实践的抽象理论,是对软件开发的总结和指导,涉及到计算机技术、工程学、管理学等多领域的知识[3]。这就要求我们在做好软件工程这门课程教学的同时,还要加强计算机科学与软件基础理论等其他计算机专业课程的教学。而且,数学是所有理工科的基础,对软件工程也同样不例外,没有好的数学基础,就不可能学好软件工程。所以,必须重视数学基础教学,另外,培养学生对问题空间分析和建模的能力,以及运用算法求解问题的能力也同样重要。

(2) 提高实践能力

提出本方针是因为:(1)软件工程课程不涉及具体软件项目,学生在学习过程中很难将抽象的理论与实际软件项目联系起来;(2)教师在实际授课过程中采用传统的单一的课堂讲授方式,忽视对学生实践能力的培养;(3)学生在毕业以后无法快速地适应自己的工作。这有违高校的办学宗旨。

要更好地贯彻本方针需要:(1)在教学过程中以具体的项目为驱动,培养学生将所学理论知识应用于实践的能力,体验项目开发的规范与原则,积累宝贵的项目开发经验;(2)通过案例教学让学生对实际的项目开发有最初的印象,提高学生的学习兴趣(目前大型的软件公司都有自己一套成熟的软件工程理论,他们之间有共性但又有不同,在课堂上挑选典型成功的案例让同学们揣摩学习,找出失败的案例给同学们以警示[3]);(3)通过团队合作教学方法培养学生的团队意识。

3.2以项目为驱动的教学模式

以项目为驱动的教学模式,目的在于提高学生在今后工作中需要的计算机专业技术技能,让学生在项目实现过程中体会团队合作的意义,培养与其他学生交流、合作的能力,获得项目开发的经验,同时不断提高学生的创新能力。重点培养学生将所学理论知识应用于实践的能力,体验项目开发的规范与原则,积累宝贵的项目开发经验,培养学生的团队意识。

如果情况允许,鼓励学生参与到教师的实际项目中,这样不仅可以让学生尽早接触软件工程的实际问题,了解软件开发的全过程,提高实践能力,增强对软件工程技术、方法和原理的理解,使学生切实感受到该课程的重要性,而且有利于培养学生从事该专业工作所必需的职业道德和行为规范。本文中将以宠物商店电子商务网站为例,介绍教学改革的具体实现

3.3教学改革方法

(1) 案例教学

考虑到软件工程课程特点和教学中存在问题,课堂教学时采用了案例教学,改变教师主导、学生被动接受的教学方式为学生为主导、而教师辅助学生学习的教学方式。授课过程中以案例为背景,以教材为基础。首先,以具体的相关联的案例为引,诱导学生自主学习、独立思考、相互讨论、自由表达观点、对案例提出质疑、从案例中分析应该理解和掌握哪一些理论知识等;最后,由教师对学生思考和质疑探究中无法解决或难以理解的问题给予指导和建议。这种方法可以实现启发式教学,能够极大地提高学生的学习兴趣,实现教与学的相互促进、相互增长,而且它更是实现了理论联系实际。案例教学法在软件工程教学中的应用将在更大程度上激发学生的学习兴趣和参与的积极性。同时,案例教学也有利于学生掌握理论知识,并运用知识解决软件开发中的实际问题。

(2) 团队合作法教学

每个学期挑选一个较为大型的项目,模拟实际工作中的角色给同学们分工,要求学生按照软件开发真实流程做出这个项目,每个项目最后演示他们的成果,其他小组作为裁判给出评价。该方法虽然操作复杂但效果极为显著,实践证明,这是让学生学会合作的最好的方法。在实际操作中还可以接受真实的软件开发项目,让学生在实际工作中体会团队合作的意义。

以上方法总的出发点是夯实理论基础、提高学生兴趣、增强社会实践、给学生相互合作、相互信任的机会,当然这些方法还需要在实践中不断磨合和优化。

3.4实现过程

以项目为驱动教学模式有两条主线组成,一是上课,既是教师教课的过程,在此教师为学生传授软件工程的相关理论知识;二为项目实现过程,通过实现具体项目来提高学生的动手能力。两条主线同时进行,即重视实践能力,又不放松对理论知识的把握。以宠物商店电子商务网站为例,下面具体介绍本教学方案的具体实施流程。

3.4.1准备

(1) 将班级按“项目小组”形式进行分组,每组不得超过6人;

(2) 每個项目小组成员按照真实项目开发过程进行分工;

(3) 项目中的每项任务要落实到人且规定该任务的起止日期和时间;

(4) 由老师为每个小组准备不同的项目(项目必须根据企业实践产生)。

3.4.2授课

课程根据软件生命周期划分为六个阶段,分别为可行性研究与计划制定阶段、需求分析阶段、软件设计阶段、实现阶段、测试阶段、运行和维护。课程的一个阶段也是教学过程中的一个阶段,每个阶段结束给学生一定的时间来实现PetStore系统中相关内容。讲课过程中教师以一个具体的程序案例引入,由学生自己理解这个程序,发现其中优点与不足。对于这段代码每个人的理解肯定不同,采用辩论方式,让学生交流自己的不同观点,以期从讨论中发现自己不足和别人的优点,同时也能活跃课堂气氛。这一步最关键的是怎样让每个学生积极地参与到讨论中来,建议采用先小组讨论再集体讨论的方法,由教师在旁边指导。讨论结束后,由教师总结本次讨论和讲解相关概念。学生在课后也写出总结,以便学生充分理解和掌握课堂讨论内容。

3.4.3項目实现

(1) 可行性研究与计划制定阶段:小组成员模拟现实中软件开发场景,确定PetStore系统的开发目标和总的要求,给出它的功能、性能、可靠性以及接口等方面的可能方案,制定完成开发任务的实施计划。

(2) 需求分析阶段。小组成员深入了解和分析需求,根据自己的经验和需求用Word或相关的工具再做出一份文档系统的功能需求文档,清楚列出系统大致的大功能模块,大功能模块有哪些小功能模块,并且还列出相关的界面和界面功能。例如PetStore可以分为用户、宠物商店和维护库存数据库三大模块,每个大功能模块又可分为若干小模块。宠物商店需要用户登录界面、管理员登录界面、客户选择宠物界面等。

(3) 软件设计阶段:项目小组在反复理解PetStore系统需求的基础上,给出软件的结构、模块的划分、功能的分配以及处理流程,并编写设计说明书。在系统比较复杂的情况下,设计阶段可分解成概要设计阶段和详细设计阶段。

(4) 实现阶段:小组成员根据实际说明书中所列出的功能一个一个地编写,把软件设计转换成计算机可以接受的程序代码,既完成源程序的编码。同时,编写用户手册、操作手册等面向用户的文档,编写单元测试计划。

(5) 测试阶段:小组成员为PetStore系统设计测试用例,检验软件的各个组成部分。并编写测试分析报告。由小组成员模拟现实客户来使用系统,并一个一个的确认每个功能。

(6) 运行和维护阶段:将已交付的软件投入运行,并在运行中不断地维护,对发现的问题进行修改,并不断为系统添加功能来完善系统。

此教学模式具体实施过程中应结合校园网络。现在高校的校园网络已经普及,校园网成了学生与学生、学生与教师之间交流和学习的一个平台,为学生的学习带来了极大的方便。通过在校园网上开通软件工程论坛、FTP站点等,为学生提供一些与教学计划相关的文件和资料,最主要的是提供一些国内外优秀的软件工程文献的电子版本。学生还可通过软件工程相关论坛跟其他学生或者老师及时交流一段时间的学习收获、对某一个问题的体会、请教自己不懂的问题等。与校园网络的结合使软件工程的教学变得更加灵活。

此外,教材是教学内容的载体,现今软件工程的发展日新月异,而教材却存在一定的滞后性。这就要求我们在教学过程中需要参考国外已经比较成熟的教材以及软件工程最新成果以弥补教材的不足[4]。不过这种补充终究不是长远之计,应当将教材的建设纳入软件工程教学改革的研究范畴,在国内外文献、资料以及软件工程最新成果的基础上编制适合自身的教学用书。而且,要善于借助各种形式拓展教学内容,使学生在现有条件下能够掌握比较先进实用的知识。在软件工程的课程讲解过程中实时地穿插关于软件工程最新研究成果的专题讲座。同时,根据具体条件考虑与业界公司联合,安排学生与企业员工进行交流,邀请企业技术专家参加讲座,组织学生到相关企业实习参观等。通过以上方法和途径,使软件工程课程内容跟紧学科的最新发展,更贴近社会需求。软件工程课程不仅涉及软件开发的理论和技术,而且涉及项目管理,因此软件工程教学承担了培养既懂工程化管理又懂技术的复合型人才的任务。因此我们必须制定相应的教学策略,讲授软件工程的原理、方法、过程的同时,应该重视技术管理的相关知识的传授,包括项目管理、质量管理、配置管理、过程管理等方面[4]。

4结论

目前软件工程领域中各种技术快速发展,而软件工程传统教学模式却存在严重滞后的弊端。所以,通过积极改革现有的教学体系,完善和丰富教学模式、紧跟软件工程的发展步伐,以项目为驱动,结合案例教学,加强学生实践能力的培养。这样经过一系列学习,使学生能够系统地掌握软件开发的过程、方法,培养计算机软件系统开发和维护的能力,为学生将来的就业和工作打下坚实的基础,使其成为社会需要的高素质软件工程人才。

参考文献

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

[2] 齐治昌,谭庆平,宁洪. 软件工程(第二版)[M]. 北京:高等教育出版社,2006.

[3] 李红梅,卢苇,张红延. 软件人才培养模式的探索与实践[J]. 计算机教育,2008,(8):114-115.

[4] 张舒,陈昱. 软件工程课程教学改革研究[J]. 福建电脑,2008,(6):196-200.

Software engineering Teaching Reform based on project-driven

ZHANG Zhong-lin

(School of Electronic and Information Engineering, Lanzhou jiaotong University, Lanzhou 730070, China)

Key wards: Software Engineering, Teaching Reform, Teaching Mode based on Project-driven, Teaching Methods

作者:张忠林

软件项目管理教学分析论文 篇2:

论软件工程在教学管理中的应用

【摘要】本文研究了软件工程在的教学管理的应用特点和存在问题,强调案例化教学和探索式学习,使学生在理解和实践的基础上掌握当前软件工程的方法、技术和工具。

【关键词】软件工程;教学管理系统;系统设计;应用

随着多媒体技术的快速发展,软件工程在现代教学中占据越来越重要的位置,软件工程的开发也逐渐受到重视。将软件工程应用于教学管理中可以有效提高教学管理工作效率,通过利用软件工程课程的学习,学生能够了解和掌握软件工程的理论、技术和方法。由于软件工程是一门综合性和实践性很强的课程,传统的教学模式在实践环节上存在很大不足,直接影响了课程的教育质量和教学效果,因此切实加强软件工程实验课程的创新与改革是至关重要的。

1.软件工程在教学管理的作用

1.1 教学管理系统是集计算机技术、网络通信技术为一体的信息系统工程,通过JSP开发基于Web的教学管理系统,一方面它面向包括学生、教师和教学管理人员,大大方便学校的教务管理,另一方面它通过数据库管理学校的庞大信息量,保证了数据的准确、及时、全面、详实。

1.2 借助教学管理系统,可以为学校提供全面的教学管理的解决方案,以解决传统人工管理方式效率低、保密性差,不利于查找、更新和维护的问题,极大地提高教学管理的效率,节约教育经费,以适应学校信息化建设的发展趋势。提高学生管理的效率,节约管理成本,增强学生管理的安全性。满足学校领导、教育管理单位、学生管理人员、教师和学生的不同层次和不同方面的需要,实现其日常教学活动庞大数据量的有效管理,

1.3 随着学校办学规模的扩大、专业设置和学生人数的逐年增加,原本基于小型数据库的、半手工操作、单机版的教学管理系统已经难以适应当今广大学校的发展要求,而应用先进的信息网络技术建立一套完整、规范的软件系统进行科学管理,以便快捷地录入、统计、查询、检索学生及学校各项教学事务的信息,从而达到资源共享,协同管理,实现管理信息现代化、规范化和科学化的现代管理的发展趋势。

2.软件工程在教学管理应用中的问题

2.1 与教学活动相关的角色大致可分为学生、教师和教学管理人员三类。而这三类用户所具备的权限、所关心的问题及所需要的资料也互不相同,这就需要给他们提供不同的操作界面,规定他们的对应操作。

2.2 大多数教师开发课件缺乏专门培训和专业知识,制作的课件往往存在照搬教材内容;课件只追求“漂亮”,用各种图片,动画或音乐吸引学生注意力,反而忽略了教学效果;课件缺乏与学生的互动,着眼点在教而不再学;课件应用范围窄,不能资源共享,重复开发严重等等问题。

2.3 在实际的”动手做”和”真正练”中体会和掌握軟件工程的思想许多教师本身缺少使用软件工程方法开发一个完整系统的经验,仅限于照本宣科地抽象介绍一些基本原理,不能将当前软件企业的实际案例融入在基本原理的讲解之中,与实际的软件工程实践有明显的差距。

2.4 需求分析是整个软件设计中的关键环节,在这个环节中要确定软件系统“做什么”,确定软件的功能需求、性能需求和运行环境。目前的一些教学软件实用性不强,与教学脱节,主要还是需求分析工作做得不充分。

3.教学管理系统的系统功能设计

3.1 管理员功能。考虑到教学软件的特征,概要设计应包括教学设计和结构设计。教学设计根据教学目标,教学计划,教学内容模块,教学环节,学生信息安排整体教学过程。结构设计是按照课程的框架结构和要实现的功能对课件总体结构进行设计。从而实现学生信息查询、教师信息查询、添加或删除学生、添加或删除教师、留言管理、公告管理、课程信息录入及修改等功能。

3.2 教师功能。设计过程是一个逐步细化的过程,对概要设计所产生的功能模块逐步细化,形成具体的教学单元。根据教学进度要求,学生接受能力,知识点分布,内容逻辑关系等合理划分教学单元,详细列出每个教学单元包含的教学内容、重点内容、表现方式、逻辑顺序等。另外内容设计要注意规范化,对整个界面的布局,课件的文字、颜色、背景、强调效果都要有统一的设计。实现学生成绩录入及修改、个人信息查询及修改、选择选课的学生、网上留言和查看公告等功能。

3.3 学生功能。根据模块功能和脚本内容,搜集整理相关的媒体素材。媒体素材包括文字素材、图片、动画、音频和视频等。文字素材是最基本的内容,也是课件主体内容,一定要注意突出醒目。图片、动画等制作时注意格式,以免课件容量过大。实现网上选课、成绩查询、个人信息查询及修改、网上留言及查看公告等功能。

3.4 研讨方面。软件工程是研究和应用如何以系统性的、规范化的、可定量的过程化方法去开发和维护软件,以及如何把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来。软件工程是经过众多科研工作者和用户的创造、修改和更新得出的经验总结,可以有效保证软件质量,科学组织人员、跟踪进度、完成计划。

4.教学管理软件的使用与维护应注意的事项

4.1 软件在实际教学中试运行,让老师与学生从教、学两个方面评价,根据教学效果和运行情况进行合理修改。试用正常就可以发布,正常使用。当然在软件使用过程中,教学软件也应该根据学科变化及时更新内容,增加知识点,同时修改漏洞,优化界面,以保证课件的先进性和实用性。

4.2 应该遵循正确的软件开发原理,成功的软件开发方法,软件工程学是是用工程、科学和数学的原则与方法研制、维护计算机软件的有关技术及管理方法。使用软件工程的方法有助于提高软件产品的质量和开发效率。

4.3 针对将要开发的教学软件,必须要进行大量的市场调研,分析同类软件存在的问题,能否满足教学需要,初步给出课件开发的概况。然后分析教学要求和教学对象,确定软件开发可行性。

4.4 全面分析教学中课程的总体要求,根据教学大纲确定教学目标,分析教学对象的特点和接受能力,根据课程要求、教学目标和学生特点制定教学软件的总体框架。由于软件是复杂的逻辑产品,需求分析阶段很难精确表述各项指标,所以这一过程中,应该与用户反复交流,了解教学要达到的效果,使用户需求逐步精确化、一致化、完全化。

4.5 在软件项目管理方面,我们总结一些企业的最佳实践案例,诸如微软公司和IBM公司等的人员组织与项目管理,使学生了解软件项目管理中人员、产品、过程和项目之间的关系,认识到项目管理在成本、人员、进度、质量、风险等方面活动的重要性,有利于学生在实际项目中开展团队协作和项目沟通活动。

4.6 在整个教学过程中,避免”一言谈”的死板方式,采取课堂互动讨论,营造活跃、宽松的课堂气氛,鼓励和引导学生进行探索式学习,通过文献查阅以及对软件的接触交流,真正体会当前软件工程业界的真实案例和最佳实践。

4.7 在常规的课堂教学之外,我们辅之以网络课程和扩展资源,鼓励学生根据个人兴趣和需要进行自主式的学习。同时,充分利用网络教学平台,加强师生之间的交流和学生之间的协作,引导学生积极思考和参与讨论,教师由知识的灌输者成为学习的引导者,学生由被动地接受教育变成主动地探索知识。

5.结束语

软件工程在现代教学中逐步占据重要位置,而如何高效利用软件工程系统,使之越来越趋向专业化、模块化、规模化,需要我们在今后的工作中紧密结合软件工程原理,结合教学自身的特点,制作出更多高效优质的软件系统。

参考文献

[1]王琳.JAVA教学中软件工程思想的培养[J].海淀走读大学学报,2012,04.

[2]赵锋.“软件工程”课程项目教学法研究[J].计算机教育,2009,21.

[3]孙云,高攀.项目教学法在“软件工程”教学中的应用[J].科技信息(学术研究),2008,09.

[4]陈向阳.软件高质高效低成本自动构建与测试[J].中国科技信息,2010,24.

作者:王达

软件项目管理教学分析论文 篇3:

基于实训模式的软件工程课程设计

摘 要:分析目前高校计算机专业软件工程实践教学存在的问题,提出在学校现有实践教学条件下,结合社会发展对计算机专业人才的要求,借鉴企业的工程化模式,将校内实验设备、师资、项目等资源进行重组,实现课堂教学与实训相结合的课程设计教学的新模式。并给出了在中国软件行业协会的支持下该模式的实践过程,结果证明,教学效果良好。

关键词:软件工程;课程设计教学;创新模式;实训

1 背景

软件工程课程设计的目标是使学生系统地掌握软件工程的过程、方法和工具,为学生将来从事软件的研发和管理奠定基础。软件工程教学内容中的需求分析、设计、实现和测试等软件开发技术以及工程化的开发过程(如软件过程、配置管理、项目管理等)必须通过实际软件问题求解过程以及团队合作进行体验,而综合的软件开发能力的锻炼和培养是需要借助一个完整的软件项目开发过程。因此软件工程课程设计是巩固课堂教学成果、培养学生软件工程实践能力的重要环节[1],为了培养高素质、高质量的软件工程人才必须在理论与实践结合上下工夫,通过强化实践教学来提高人才培养[2]。

2 现状

教育部高教司2006年一项调查[3]显示,自2002年以来,高校计算机专业大学生初次就业率连年下滑,然而业界高端软件人才依旧匮乏。造成这一现象的重要原因为当前高校软件工程型人才的能力结构和知识结构与当前技术发展不能紧密结合,没有形成以能力培养为核心、综合技能训练为辅助的实践课程体系[4]。目前软件工程的实践教学主要存在以下问题:

1) 软件工程教学多数还停留在传统的人才培养模式,基础理论知识和验证型实验构成教学主体,

缺少对学生工程能力和职业素质的训练,因此培养出来的学生难以适应IT企业的需求。

2) 传统的软件工程教学使学生具备一定的专业基础知识,但没有机会让学生将所学知识融会贯通,缺乏实际参与软件工程项目的经验。

3) 学校通过在企业建立实训基地的形式将软件工程实践环节引入其中。这种形式可以促进学生从学习专业知识向学习专业技能迅速转化。但这种形式需要投入大量的人力、财力。目前,由于这种形式风险较大,成本高,多数高校没有采用。

如何在学校现有教学条件下,借鉴企业的工程化模式,实现软件工程课堂教学与实训相结合,使学生走出校门就能实现与IT企业的无缝连接,这正是该门课程在实践教学环节需要研究和解决的问题。

3 课程设计改革

工程化的方法开发软件已成为当今业界的共识,对学生工程能力和职业素养的培养仅在学校内部进行显然局限性大,为了更好地促进学生这种专业综合能力的塑造,我校通过中国软件行业协会教育与指导委员会与北京市中关村软件园签订了校企合作的协议,并在中关村软件园挂牌成立了校外实训基地。由于软件工程课程设计周期有限(如1周),进入实训基地进行教学的效果并不理想。因此,借助合作,我们对软件工程课程设计教学环节进行改革,

作者简介:唐晓君,女,副教授,研究方向为软件工程;李晓红,女,讲师,研究方向为信息系统、软件测试。

使其与实训相结合,探索出一种计算机实训与基本教学实践环节无缝结合的模式,具体实践流程如下。

3.1 内容安排

目前,我校软件工程课程设计教学环节按照教学大纲安排,共分以下几个步骤。

1) 课程设计要求说明。给出课程设计期间对学生的出勤、时间、地点等要求。

2) 课程设计任务布置与讲解。进行课程设计安排时,课程设计任务的布置形式由教师进行课程教学的形式发布;对课程设计内容的选取大多选择模拟或选取类似中小企业项目。

3) 分组实践。分组原则是使每个学生工作量相当,并都能在项目开发过程中得到锻炼。

4) 中期检查。教师对各小组中期结果以答辩的形式进行监督检查,督促各小组按进度进行。

5) 课程设计答辩、设计结果提交。课程设计采用答辩和软件演示的形式对设计结果进行验收。

以上这种课程设计安排形式也是大多数高校采用的方式,但该方式不能使学生对企业软件开发全过程产生很好的感性认识。同时,由于项目大多是模拟项目,学生对待项目积极性不够,对项目需求的理解及设计的实现也过于局限,小组成员的角色分工也不够科学。此外,对课程设计环节的管理(任务下发、角色分配、进度控制、在线答疑、任务提交等)一直没有实现信息化。

3.2 具体措施

结合软件工程实践教学的现状,针对我校软件工程课程设计存在的问题,在中国软件行业协会提供的产学研实训平台的支持下,我校对软件工程课程设计的教学进行了以下几方面的改革和探索:

1) 将实训模式引入课程设计中。

软件工程课程设计教学采用的是实训模式,但由于考虑成本问题,没有借助企业人员进行专门指导。学生课程设计地点仍在计算机专业机房和专门实验室,课程设计是在本校软件工程专业教师的指导下,按照软件企业的项目开发摸式,以“项目驱动”形式进行软件开发实践训练,既以项目开发带动软件工程的理论学习,又以软件工程的理论来指导软件开发的实践,使学生得到较全面、系统和规范的软件工程实践训练,提高软件设计与开发的能力。

2) 将产学研实训管理平台引入课程设计管理中。

对软件工程课程设计整个环节的管理(包括任务发布、角色分配、项目管理、进度监控、成果验收、学生管理等)通过中国软件行业协会提供的产学研实训管理平台实现。平台为每个学生分配用户账号及口令,通过该平台统一进行学生管理,学生可以通过校园网登录实训管理平台,方便快捷的了解项目需求(课程设计主要任务)、项目相关资料、项目管理流程、项目角色分工等信息。平台也为指导教师提供管理接口,教师可以通过平台进行项目案例的发布与管理、项目的启用、项目角色的管理等。学生和教师还可以使用在线提问与在线答疑的形式指导教师进行交流,学生与教师的沟通更加实时、高效,实现了完全信息化的管理形式。

3) 将企业真实案例引入课程设计中。

在进行课程设计任务布置时,采用所有项目案例均来自中国软件行业协会提供的企业真实案例(10余个),考虑到企业员工与在校学生的能力差别,同时根据课程设计要求掌握的知识点和教学时间限制,通过指导教师与软件行业协会技术人员沟通,对项目案例进行不同程度的调整。因此,应用到课程设计教学中的所有教学案例均由本校教师根据课程设计的要求定制确定。对案例的裁剪既解决了以往教学案例局限的问题,又保证了学生在有限的设计周期内实现完整实际项目开发的目的。

学生按照兴趣选择项目案例,这样可以确保学生在整个项目周期中有足够的积极性和信心按期完成。通过以实际的工程项目为背景,使学生参与实际项目开发,以开发团队形式,按照实训步骤在规定的时间完成从需求分析建模(需求由案例给出)、设计、代码编写、测试、部署体验完整的软件开发全过程。这样,可以激发学生项目开发热情,使学生完全掌握企业化软件开发流程,并具备直接进入企业进行开发的能力。

4) 将企业项目管理方法引入课程设计中。

课程设计借鉴企业化运作机制,实施每天八小时工作制,晚上可以加班加点,以项目组长负责、项目组成员协作的形式完成设计任务。

项目启动(课程设计任务的发布)通过产学研实训平台发布,学生可以使用个人用户账号通过校园网络登录到平台查看自己的项目组及项目要求。由于项目案例均来自企业真实案例,因此,平台能为学生提供比较规范、详细的需求说明文档,帮助学生更好地理解业务知识及流程。

项目小组成立时,指导教师按照项目实际情况(项目需求复杂程度、设计难度、代码量等)安排小组人数,并按照学生能力对小组成员进行角色分配,如项目组长、软件工程师、测试工程师、配置工程师等。这种角色分工根据源于企业项目组的分工,能够使学生更加感性的认识企业中的不同角色。在进行小组人数的安排时,为防止出现工作量过少的情况发生,限制每组人数不得超过5人,满足软件工程中7±2的原理。后来的实践证明,这样的分组,在项目中每个实训的学生都有明确的职责和任务,工作量非常饱满,通过项目组内部协作,能够降低项目实施的难度,又能确保项目能够按期保质保量完成。开发过程中,任何一个学生不努力或不配合,都可能导致最终提交的任务效果不理想。

项目进度的控制通过实训管理平台设定中期检查及最终任务提交时间表实现。开发过程中,无论是中期检查结果还是最终成果验收都通过平台来提交,并以教师评语的形式实时有效地将结果给学生反馈,既可以提高学生继续完善项目的动力,还可以有效地监控各项目组的进度,同时,还可以及时对各项目组进行沟通与指导。

项目进行中(课程设计过程中),教师不再是传统的讲授者,更像是一位工程项目的经理,负责提出项目的要求(即向学生明确项目应用的背景、目的、期望看到的结果、具体的数据和指标要求),检查项目(学生)的开发进度,监督开发过程,评定软件质量。同时适当点出课程设计中可能涉及到的知识,帮助学生自主学习、启发学生创造性思维的观念,然后由学生自己进行理论分析,自己建立问题的模型,自己掌握开发进度,自己完成课程设计的任务,最终使学生具备独立分析和解决问题的能力。

对项目成果的验收,采用全面有效的质量评价指标,不仅考虑项目完成的质量,包括需求、设计模型的合理性、准确性,软件代码的完整度,还要考虑验收答辩时项目组成员不同任务承担者的表现,这种评价机制既能保证对学生工程能力的考核,又能锻炼学生的协作能力和职业素养。

3.3 成果

该实践教学模式应用到了本校计算机2007级、2008级两个年级中,在成果验收时与往届比较有很大进步,体现在以下几方面:

1) 因采用企业真实项目案例,学生在课程设计过程中学习积极性有很大提高。

2) 以企业规范的需求及设计说明书作为指导,开发过程中对项目需求的理解更加清晰,分析得更加充分。

3) 项目需求分析及设计阶段模型建立更加准确。

4) 因有实训平台进行角色任务管理,小组成员分工更加科学、合理。

5) 最终提交的课程设计文档更加规范。

6) 学生的团体协作能力得到很好的锻炼,项目完成度有很大提高。

7) 学生对企业软件开发全过程有了更深刻的认识。

8) 在实训平台的支持下,将传统的“以教师为中心”的教学模式,转变为“以学生为中心,在教师指导下的主动学习”模式,有效地达到了教学互动、教学相长的良好效果,同时老师对学生以及项目的管理更加高效。

另外,在期末进行的评教中,该门课程的实践教学更是得到了学生的认可,评教优良率达到了98%。

4 结语

让工程化思想成为学生从事软件开发工作的行动指南并不是一件容易的事情。在传统的教学过程中,软件工程往往是一门独立的理论性课程,学生们认为软件工程就是一些条条框框。缺乏实践经验,缺乏合作开发软件的感性体会,使得学生在学习过程中难于理解软件工程的精髓。

通过软件工程课程设计教学的改革,使学生对企业软件开发及软件过程管理有了更加深刻的认识。这种模式成功地将实训环节引入了课程设计,在课程设计的实践教学中培养学生的软件工程意识,这是对高校计算机专业实训与实践教学环节无缝结合模式的有益探索,可在计算机专业其他的实践教学环节进行推广,如数据库实践教学、程序设计实践教学等,还可以将这种模式推广到兄弟院校的计算机专业,这也是中国软件行业协会一直大力支持和倡导的。

参考文献:

[1] 朱大勇,张新丽,李树全. 软件工程综合性课程设计的教学实践[J]. 计算机教育,2009(15):160-162.

[2] 许精明,张雷. 计算机专业实践教学改革[J]. 计算机教育,2010(16):21-23.

[3] 张建臣.高等院校计算机学科实践教学的探索与改革[J]. 现代企业教育,2006(24):17-18.

[4] 陈朔鹰,赵小林. 建立软件实践课程体系,全面培养工程型人才[J]. 计算机教育,2008(7):14-18.

The Course Design for Software Engineering Based on Training

TANG Xiaojun, LI Xiaohong

(Information Science and Engineering School, Dalian Polytechnic University, Dalian 116034,China)

Key words: software engineering; course design teaching; innovation model; training

(编辑:彭远红)

(上接87页)

参考文献:

[1] 冯博琴,赵音良,顾刚. 狠抓能力培养,提高实验教学水平[J]. 计算机教育,2008(19):9-11.

[2] 教育部高等学校计算机科学与技术教学指导委员会. 关于进一步加强高等学校计算机基础教学的意见暨计算机基础课程教学基本要求[M]. 北京:高等教育出版社,2006:23-27.

[3] 张丽萍,刘东升. 程序设计精品课程建设的研究与实践[J]. 内蒙古师范大学学报:教育科学版,2007(1):109-111.

[4] 张丽萍,刘东升. 关于精品课程“程序设计”的建设方案[C]//大学计算机基础课程报告论坛论文集(2006). 北京:高等教育出版社,2006.

[5] 张丽萍,刘东升,王春晖. 计算机应用型人才培养与数据结构改革[J]. 计算机教育,2010(5):21-23.

[6] 张丽萍,刘东升,葛湘巍. 民族地区计算机专业实践教学改革[J]. 计算机教育,2011(13):8-10.

[7] 张丽萍,刘东升,王春晖. 程序设计类课程考核评价方法的改革与实践[J]. 计算机教育,2010(2):17-20.

Construction and Practice of the Public Computer-based Courses

WANG Lijiang1, LIU Dongsheng2, ZHANG Liping2

(1. Office of Academic Affairs, Inner Mongolia Normal University, Huhhot 010022, China;

2. Computer & Information Engineering College, Inner Mongolia Normal University, Huhhot 010022, China)

Key words: the public computer-based courses; curriculum; teaching reform; practice

(编辑:彭远红)

作者:唐晓君 李晓红

上一篇:信息网络交通运输管理论文下一篇:未成年人生命权益管理论文