基于实践教学平台的软件工程课程教学改革

点赞:32067 浏览:146493 近期更新时间:2024-02-02 作者:网友分享原创网站原创

摘 要 :分析目前软件工程课程实践教学中存在的问题,提出以课程实践教学平台为基础的教学改革方案,阐述实践教学平台主要包括案例学习、案例模拟训练、项目实践、角色扮演、学习空间、知识库等多个方面内容,从学习、训练、实践、总结及积累等方面加强学生软件工程实践能力的培养,使其尽快获得工程技术经验.

基于实践教学平台的软件工程课程教学改革参考属性评定
有关论文范文主题研究: 关于实践教学的论文范文资料 大学生适用: 研究生毕业论文、高校大学论文
相关参考文献下载数量: 74 写作解决问题: 怎么撰写
毕业论文开题报告: 文献综述、论文摘要 职称论文适用: 期刊发表、职称评初级
所属大学生专业类别: 怎么撰写 论文题目推荐度: 优质选题

关 键 词 :软件工程;实践教学平台;角色扮演;学习空间;知识库

1.高校软件工程课程实践教学现状

随着我国经济的发展,软件产业在国民经济中越来越起到了举足轻重的作用.高校作为社会所需人才的培养基地,有责任和义务培养和提供掌握软件开发方法和具有实践技能的软件人才,以更好地促进软件产业的发展.为此,很多高校开设了软件工程课程,以让学生从工程化的角度认识软件开发和维护,工程化的概念、原理、技术和方法必须通过实践才能真正理解和把握.但是,目前的软件工程课程教学存在着“重理论、轻实践”的现象,且传统的授课模式也不利于开展实践教学.下面将对目前高校软件工程课程实践教学中存在的困难和问题进行分析.

1.1 传统的课程结构设置,不利于开展实践教学

目前,高校的软件工程课程结构基本上是采用理论课+上机课的形式,总学时为48学时,其中,理论课36学时,上机课12学时.这样的课程结构设置凸显了以教师讲授为主、实践教学为辅的特点,学生的实践训练基本以课下为主.

1.2 教学案例过于“文档化”,学生无法了解过程细节

在软件工程课程的教学中,教师一般都会从教材或其他资料上引入一些软件开发的案例,但是,这些案例一般都是直接给出了结果,却没有对过程进行详细的描述.例如,在讲授需求分析时,可能案例中直接给出的是需求分析的结果——《需求规格说明书》,其中描述了功能需求、性能需求、接口需求、安全性需求等,并构建了相应的分析模型,但是却没有给出需求分析的过程描述,即这些功能、性能等的需求是如何分析出来的,模型是如何一步一步建立起来的等.再如,在讲授系统设计时,案例中可能直接给出了数据库设计的结果,其中包括数据库表结构、视图等,但是却没有详细的描述数据库设计的过程,即如何建立数据库设计模型,如何设计相应的数据库表,数据库表中的字段以及字段的类型、约束等是如何得到的等.这些案例只有结果描述,类似于企业里开发所用的文档,学生仅仅通过这些“文档化”的案例,是无法真正掌握软件开发的细节的,而导致的结果是——学生看看都会,听听都明白,动起手来却是满脑子空白.

1.3 缺乏有效的实践教学环境.无法做到“学”“练”和“指导”的全过程互动

目前的软件工程课程实践教学主要采用学生课下完成实践作业的形式,学生在学习“纸质的”和“静态的”理论知识和案例的基础上进行开发实践,这样的实践教学过于简单,缺乏环境的支持,无法做到“学”“练”和“指导”的全过程互动,不利于真正提高学生的实践能力.

(1)学生只能被动地学习和接受案例,但是却不能提出自己的见解,更不能将其与其他学生来分享.

(2)学生无法对案例细节和过程进行“拆解”,并对某部分过程和细节进行模拟训练,更无法对模拟的结果进行动态的对照,发现自身理解的偏差和问题,从而加深对案例的理解和掌握,不至于让案例学习“流于表面”.

(3)学生无法通过实践环境,动态创建软件开发项目,并将项目开发的过程细节和结果与其他学生进行分享,甚至让其他的学生动态参与其中,也无法让教师对实践项目进行全程指导.

(4)学生没有自己的学习空间,无法将课程学习和实践中的心得、体会等进行记录,也无法将一些好的技术、方法等资料与其他学生进行分享.

(5)案例的更新缺乏一种动态的机制,只能依赖教师去收集,无论是数量,还是真实性、贴切度,都无法满足实践教学的要求.

2.具体改革实施方案

经过上文的分析,我们发现目前的软件工程课程实践教学存在课程设置不合理、缺乏能够被学生深入学习和理解的实际案例、缺乏能够支持“学”“练”和“指导”全过程互动的实践教学环境等问题.为此,我们提出了基于实践教学平台的软件工程课程实践教学改革方案,主要从课程结构设置和实践教学平台的使用两个方面人手,加强学生的实践训练,并以实践教学平台为支撑,让学生切实提高实践能力.下面将对具体的改革方案进行论述.

2.1 以课程实训代替上机课,加强实践教学

我们以课程实训来代替传统的上机课,将总学时数由48学时调整为64学时,其中,理论课设置为32学时,实训课设置为32学时.课程实训是在教师的指导下,由学生自己完成一个完整的软件开发实践课题,具体的课程内容如下.

(1)课题确定:由学生自己根据日常生活和学习中所接触或熟悉的软件来命题,如学生管理系统、图书馆管理系统、选课系统、宿舍管理系统等,也可以由教师结合教学、科研的实际情况设置多个课题供学生选择,要求课题的规模大小适中,有一定难度,但经过努力可以较好地完成.

(2)组织形式:课题以小组的形式来进行组织,包括一位组长和3~4位组员,对于系统中的部分开发工作也可以采用“外包”的形式,即由组外的其他学生来帮助完成.

(3)教学安排:实训课每周安排2学时,每一位组长在课上介绍本组项目的进展情况和碰到的问题等,其他项目组的学生可以就项目的某些部分提出疑问,教师可以对项目的实施进行指导,也可以引导学生就某一细节问题展开讨论.

(4)成绩评定:课程实训结束时,每组需提交所完成的软件系统和相关的文档、实践报告等,而成绩的评定采用验收答辩的形式,即每个小组演示开发完成的软件系统,并总结项目实践经验和提出改进意见,由教师主持实践项目验收答辩,由其他组的代表(或组长)充当评委,共同对实践项目的成果进行评审并打分,最后由教师进行综合评定,给出每组的课程实训的最终成绩. 2.2 建立完整的课程实践平台,注重过程学习和模拟实践训练

我们建立一套完整的课程实践平台,学生可以利用平台来进行案例学习和模拟训练,也可以通过共享资料来形成知识库,供每个人参考.此课程实践平台主要包括4个部分.

1)案例学习机.

案例学习机主要为学生提供完整的案例,以供学生进行学习.案例学习机包含由多个案例构成的案例库,案例的选择基本上以学生所熟悉和易于接受的软件开发项目为主,每个案例都详细记录了一个完整的软件开发项目实践,包括项目管理的内容,具体内容包括以下几个方面.

(1)案例分解,细节分析:每一个案例都是完整的整体,同时又可以按照软件开发的流程(瀑布模型)进行分解(如图1所示),学生既可以看到软件开发过程中每一步的结果,也可以看到每一步的过程细节,包括开发中所碰到的问题,解决的办法,甚至开发中所走的弯路等,都可以在案例中进行浏览和学习.

(2)个性思考:学生在学习案例的过程中,可以针对某一个细节进行思考,并发表自己的评论(如图2所示),也可以浏览其他学生针对此所发表的评论,所有的评论构成了一个个性思考评论空间,可以给后续的更多的学生提供借鉴.

2)项目模拟训练器.

项目模拟训练器为学生提供了一个案例模拟和项目开发实践的平台,为学生进行课程实训提供了实践环境,学生可以将案例作为框架,进行模拟训练,也可以进行全新的项目开发实践训练,具体内容包括以下几个方面.

(1)案例模拟环境:学生可以直接引入一个案例作为模拟项目,可以参照案例的执行步骤自行进行每一步的执行操作,并将自己的操作结果与案例进行对照(如图3所示),找出自己模拟训练中存在的问题.

(2)项目实践环境:学生可以自行创建一个新的项目,实践环境将给出项目管理和开发实践的基本流程及任务框架(如图4所示),学生可以进行项目组建、编写项目计划、记录项目执行过程,可以按照软件开发流程进行需求分析、系统设计、编码及测试等活动.

这样的项目实践环境是全方位的,即学生可以训练项目管理方面的技能,也可以训练软件开发环节的技能,如学生可以创建一个项目,并担任项目经理,同时可以将项目在系统中发布,并“招聘”分析人员、设计人员、编码人员、测试人员等,其他学生可以在系统中看到发布的“招聘”信息,如果愿意的话,可以在此项目中担任相关的角色,这样可以实现一种“角色扮演”,即某个学生既可以是A项目的项目经理,以此训练项目管理方面的技能,也可以是B项目的系统分析师,以此训练系统分析的技能,还可以是C项目的开发工程师,以此训练编码实现的技能等.

(3)网上评审:学生在项目实践环境中创建了自己的项目后,安排相应的开发工作,在每一个开发阶段结束时,都可以发布“网上评审”邀请,其他学生可以对该项目本阶段的工作进行评审和打分,这样,最终会汇总出每个项目的总分,也可以根据每个学生在各个项目中参与的工作评分汇总出其项目实践的总分,教师也可以很容易统计出每个学生的实践课程成绩.

(4)师生交流平台:教师和学生可以在模拟训练器中针对某个具体的任务或实践活动进行交流,教师可以提出相应的指导意见,也可以创建一个论坛,以方便学生之间、学生和教师之间的交流.

(5)案例申请:学生可以将自己的实践项目申请成为案例,教师对实践项目的过程细节和结果进行评估,若通过,则可以提交到案例学习机的案例库中,这样可以形成一个良性循环,不断地补充由学生自己开发的真实案例,以供更多的学生进行学习.

3)学习空间.

学习空间是为每个学生的课程学习和实践所建立的一个私有空间,学生可以将课程学习的计划、日程安排、学习心得等置入学习空间中,形成一个完整的学习平台.学生可以在个人的学习空间的桌面上放置便签、今日安排、实践项目列表、消息提醒、常用联系人等快捷图标(如图5所示),并通过点击进人相关部分进行操作.

4)知识库.

知识库是所有资料的共享空间,学生和教师均可以将与软件开发项目相关的资料上传到知识库中,并依照技术、管理等进行分类,以供所有学生进行查阅(如图6所示),还可以建立一个FAO库,把所有的问题和问题的解答(可以是教师解答的,也可以是其他学生解答的)进行记录并存储到FAQ库中,以供学生在实践过程中碰到问题时进行查阅参考.

建立了课程实践平台后,软件工程的课程实训就可以依赖此平台进行开展,学生可以在“案例学习机”中进行学习,在“案例模拟环境”中自己动手参照案例进行模拟训练,在“项目实践环境”中创建和组织新的项目,也可以参与到其他组的项目工作中,在“学习空间”中构造自己的私有学习环境,记录学习心得等,还可以将心得或资料上传到“知识库”中,与其他学生进行分享,从而使“学”与“练”动态结合,真正达到课程实训的目标.

3.结语

随着国内软件产业的发展,软件企业对软件人才的需求无论从数量上还是从质量上都在不断的提升,这也使得高校不断地尝试和探索进行各种课程教学模式的改革,从而真正培养出具有实践开发能力的软件人才.笔者正是基于这一背景而提出的软件工程课程实践教学改革方案,是基于一套完整的实践教学平台环境,以课程实训的方式来切实提高学生的软件工程实践能力.该方案从2010年提出并开始实施,目前已基本完成实践教学平台环境的开发并对2009级和2010级软件工程专业的学生进行了实践教学改革的尝试,取得了良好的教学效果.下一步,我们将继续完善实践教学平台环境,并在进一步完善改革方案的基础上,将其推广到计算机科学与技术及其他计算机软件相关专业,以满足企业对软件人才的需要.