“移动软件开发项目实训”课程教学

点赞:6384 浏览:21680 近期更新时间:2024-03-11 作者:网友分享原创网站原创

摘 要:针对近年来新开设的“移动软件开发项目实训”课程,结合实际教学经验,对该课程实际教学进行了总结,提出了一种可操作性强的教学模式,从分组安排与项目选题、学生实践实施环节、教师教学实施环节、课后补充实施环节,以及课程考核方式等方面对教学实施过程中的各项措施进行了探讨.

关 键 词:移动软件;项目实训;实践教学;教学方法

中图分类号:G434文献标识码:A文章编号文章编号:16727800(2014)001019102

基金项目基金项目:西华大学软件工程特色专业项目(10TSZY317)

作者简介作者简介:唐剑梅(1975-),女,西华大学数学与计算机学院软件工程系讲师,研究方向为软件工程、信息检索技术.


0引言

作为校级特色专业,笔者所在学院的软件工程系近年来积极推进特色专业建设进程,设有软件开发、软件测试及移动软件开发3个专业方向.在西华大学特色专业建设基金的资助下,各专业方向的课程体系建设日趋完善.由于实践教学贯穿于高等人才培养的全过程,是提高人才培养质量、实现高等教育目标的关键环节[1],软件工程学科和软件产业不断发展,以及全国对高素质软件人才需求量激增的形势下,针对软件工程学科实践性极强的特点,学校较大幅度地增加了实践类课程和环节所占的比例.“移动软件开发项目实训”是近年来新开设的移动软件开发方向学生必修的一门很重要的专业实践课程,这门课将为培养更加符合社会实际需要的移动软件开发人才打下坚实基础,因此迫切需要研究和探索该课程的教学方法,以更有效的手段和方式提高教学质量.本文将从分组安排与项目选题、教师课堂讲授环节、学生实践实施环节、课程考核方式等方面进行研究.

1合理分组,严格筛选项目选题

“移动软件开发项目实训”课程开设在大三下学期.此时学生已经学完了大多数基础及专业课程,移动软件开发方面也已经具备了Android平台下的开发基础.对于该阶段的学生来说,急需在大四的专业实习及毕业设计到来之前做好更充分的实战准备.因此,该课程的教学目标是:使学生学会移动软件开发项目的需求分析、设计、实现及测试相关技术,能将之前学到的点状知识和技能集结到面,同时整合训练各种移动软件开发所涉及到的主要技能点,为学生将来从事实际的移动软件开发工作做好技术准备.本课程不再采用前期程序设计语言实训课所采用的单元式训练为主、综合训练为辅的方式,而是采用实战项目的方式,让学生完整地实现一个综合性的中小型项目.

在该课程的第一堂课上,由教师对整个课程的概况和目标进行介绍,并给出该门课程的进度安排,让学生了解整个项目实训流程.接着进行分组安排,采用自由组合的分组原则,要求每组2~3人,并推选一个技术和沟通能力较强的学生为小组长.相对教师直接指派而言,自由组合的好处是各小组成员配合更加默契,课后的交流合作更易展开.而且学生中已有自发组织的软件开发兴趣小组,这样他们可以保持兴趣小组的组合来进行实训,更易于出成果.分组结果可能存在某些小组成员开发能力都较强,但某些小组成员开发能力都较弱的情况.对于较强的小组,可鼓励他们发挥创新精神和主观能动性,多在设计方面出新点子,在项目中大量使用新技术.课程结束后可鼓励其将成果用于参加一些竞赛,如Android平台软件开发大赛等.对于较弱的小组,则可降低对创新性的要求,建议他们选择一些注重基本技术的项目,即适于边学边练进而对技术的应用达到一定熟练程度的项目,这样能减少学生的畏难情绪,激发学生的学习兴趣和动力,使学生对移动软件开发的学习由被动变为主动,以便更好地将书本上学到的知识转化为实战经验.教师对移动软件开发中的几大技术进行介绍,提出实训项目选题要求(如要求不重题、要具备实用价值、要涉及不少于3个较大的技术面的综合应用等),并安排各小组根据自身的兴趣进行课后选题调研.

第二次课则由各小组作选题报告,汇报选题背景及意义,阐述项目涉及的主要技术面,其余各小组可给出建议和意见.这样既可集思广益,又避免了小组选题内容过于雷同.由教师进行审核和点评,工作量或涉及的技术面达不到要求的小组需重新选题,直至题目通过为止.教师要严把选题关,避免出现小组找寻现成源码项目抄袭的现象.

2学生分阶段提交项目文档,进行阶段汇报

实训项目在规模和技术上应是企业实际开发项目的浓缩,因此要求是一个完整的项目.按照软件工程的思想和规范,至少包括需求分析、软件设计、编码实现、软件测试、进度控制、项目成果这6个工作过程,再根据具体情况,添加版本控制、文档书写、项目发布等工作过程,从而更加真实地模拟企业项目[2].结合移动软件开发项目的特点,以及各小组题目涉及的主要技术面,各小组可根据自身项目情况对项目进展进行阶段规划和裁剪.教师则按照所有小组都会经历的开发阶段收取小组提交的阶段项目文档,听取小组的阶段汇报,进而评估其开发进展情况.

题目确定后,课程内容分阶段完成,各小组需按阶段要求提交相关文档,主要阶段包括:

第一阶段:在完成系统背景及功能概述和需求分析后,提交需求规格说明书.

第二阶段:进行软件系统功能界面规划及总体架构设计,提交软件设计文档.

这两个阶段由小组成员共同讨论完成.学生在这两个阶段同步进行开发前的技术准备工作,包括Android平台及Eclipse工具的使用,以及相关技术知识的复习等.

第三阶段:小组长分配开发任务,各成员分别进行自己所负责模块的实现与测试.此阶段持续时间较长,过程中要经历期中检查,各组需提交各模块的开发文档及已完成部分的代码.

第四阶段:进行集成测试,提交测试报告.

第五阶段:进行系统优化与改进.

第六阶段:程序打包发布.

第七阶段:教师验收项目,检查实训报告.第八阶段:期末项目验收答辩,答辩通过后整理提交相关文档及代码.

教师事先通过学校的课程中心网络平台建好“移动软件开发项目实训”课程网站,将编制好的课程阶段进度表上传提供给学生下载使用,以便学生对整个课程安排心中有数.学生提交阶段成果也通过课程网站进行.

3教师及时进行阶段总结及讲评

在整个实训过程中,教师要在3个阶段集中进行阶段总结及讲评.课程第一阶段完成后,教师根据各小组提交的需求规格说明书进行一次集中讲评,及时发现问题并要求小组整改,避免因需求分析阶段的失误而导致最终软件不合要求的情况发生.

第二阶段完成后,教师根据各小组提交的软件设计文档再进行一次集中讲评,以便及时纠正小组设计中的不合理之处.

第三次阶段总结安排在期中检查后,在各组提交部分模块开发文档及代码后,教师及时发现学生技术上的问题,对各小组项目开发中的典型性技术问题进行汇总及解答.虽然各组开发设计的主要技术面不完全一样,但仍采用集中讲评,目的是对用到相关技术的小组起到引导和提升作用,同时让未使用到该项技术的学生学习借鉴.毕竟各组项目涉及的技术面有限,因此应尽量全方位提升学生的知识和技术面.

“移动软件开发项目实训”课程教学参考属性评定
有关论文范文主题研究: 关于软件开发的论文范文 大学生适用: 自考论文、电大论文
相关参考文献下载数量: 97 写作解决问题: 写作技巧
毕业论文开题报告: 论文任务书、论文设计 职称论文适用: 职称评定、职称评中级
所属大学生专业类别: 写作技巧 论文题目推荐度: 经典题目

4强调课后不断线

“移动软件开发项目实训”课程总共只有48个学时,每周3学时,共16周,因此要想学生在如此有限的课时内通过这门课能有更多的收获,课后的继续学习必不可少.因此,教师一定要对各小组提出项目开发课后不断线的要求,对于各自完成的部分,各小组成员要尽量抽出共同的课余时间聚在一起继续完成.笔者所在学院的实验中心未被上课占用的机房对本院学生是免费开放的,这为各小组课余在机房继续进行项目开发提供了平台.

移动软件开发技术发展非常迅速,新技术层出不穷,更新很快,教师既要引导学生采用课堂上学到的知识和技术进行项目的设计和开发,也要在课后随时关注行业最新进展,保持对新技术的敏锐触角,也即课后对新知识新技术的了解和学习要不断线.

5强调过程考核,注重答辩环节

为了使学生在实训过程中能够真正地提高他们的实践动手能力以及分析问题、解决问题的能力,能够独立完成一定规模难度软件的开发,除教师自身要努力提高个人授课能力和改进实训方案之外,还要有一套完善的考核机制对学生在实训过程中的表现和成绩进行评价,使学生能够对自己有一个正确的认识,及时看到自己的不足和差距,并调整自己的学习方法[3].移动软件开发项目实训是通过任务来驱动学习的,让学生能够在完成任务的过程中不知不觉地熟悉和掌握最主流的技术,因此有必要通过阶段性考核,给学生定期施加压力,有助于他们更好地完成最终的实训任务.

在课程进行的一、二、三、四阶段,学生均要提交相关的阶段文档材料;在课程的第七、八阶段,学生将提交实训报告、最终的源码及相关文档.这些可作为教师进行过程考核的依据,教师可据此对学生的阶段性成果进行考核.同时,为培养出具有良好职业素质和操守的软件从业人员,对学生的学习态度和纪律性也要严格要求并纳入考核范围,所以教师每次课上要对学生的出勤情况进行考核.同一小组的学生,教师要根据其表现和承担的开发任务量给予不同的成绩评定.

6结语

“移动软件开发项目实训”是一门实践性很强的课程,能集中训练和提高学生进行移动软件项目开发和设计的实际技能,是移动开发方向的核心专业实践课程.根据该课程的实际实施情况来看,本文关于该课程的教学方法激发了学生的动手兴趣和积极主动寻求解决问题的热情.但由于该课程为近年新开实践类课程,其教学内容也应紧随移动软件行业的发展而不断更新,所以其教学方法和措施目前还处于初探阶段,尚需持续不断地总结、改进、探索和创新.后续可考虑从两方面着手改进:一是与企业合作,引进真实项目进行实训[4];二是设计开发一个基于软件交付过程的平台,以便在软件交付过程的各个阶段,由教师设定学习任务、考核指标,通过学生提交的成果,教师输入判定的各个项目成绩,然后由系统自动生成学生最终的考核成绩,从而改进实训教学手段[5].