张夏林,翁正平,李章林,刘 刚
中国地质大学(武汉) 计算机学院,湖北 武汉 430074
空间信息与数字技术专业“应用开发实习”项目教学法研究
张夏林,翁正平,李章林,刘 刚
中国地质大学(武汉) 计算机学院,湖北 武汉 430074
针对空间信息与数字技术专业的本科学生软件开发经验不足、项目管理知识不充分、与就业单位用人要求匹配困难等问题,探索在应用开发实习的实践教学中采用项目教学法。采取“模拟项目”的教学方式,以一个真实项目的实现作为教学主线,将专业技术和实践动手能力培养贯穿起来,以项目小组的形式模拟软件开发进行实战演练。以学生为主体,老师扮演甲方角色,学生扮演乙方角色,通过逼真项目的开发过程模拟,完成学生今后承担实际项目能力的培训。通过教学方法的改革,锻炼了学生分析、设计、开发、测试及管理等专业技能,提高了团队协同工作的合作意识,有利于培养既懂地质又懂计算机的复合型特色人才。
项目教学法;空间信息与数字技术;实践教学;软件实习
project teaching methods;spatial information and digital technology; practical teaching;software practice
中国地质大学(武汉)自2010年开始培养空间信息与数字技术专业的本科人才,在培养过程中碰到几个问题需要解决。一是培养目标中人才规格定位为培养从事各类地质信息系统的管理、设计、开发和科学研究工作,能适应信息时代国家地矿工作信息化建设和社会发展需要的复合型创新人才[1-2],教学中如何使学生在毕业时具备较强的地质信息系统设计开发能力。二是由于课时所限,课程计划中对软件项目运行及项目管理方面的知识没有专门的课程涉及。三是本科毕业的学生如何能快速适应用人单位对软件系统开发的实际能力要求。为了解决以上问题,我们开设了本专业的应用开发实习,并探索在实习中采用项目教学法[3],取得了较好的教学效果。
应用开发实习是“空间信息与数字技术”专业的重要教学环节,是中国地质大学(武汉)该专业“多层次、多结合、多渠道、一平台”实践教学体系的重要组成部分(如图1所示),该实践课程是在本科第六学期结束后进行的一次专业知识及技能的全面总结和提升。该实习为后续的生产实习、毕业设计以及就业或考研进一步深造打下坚实的专业知识基础和提供充分的技能培训。
在上本课程前,该专业的学生已经完成了“空间信息与数字技术”专业的学科基础课(普通地质学、高等数学、计算机组成原理等)和专业主干课(地质信息系统、计算机图形学、综合勘查学、地学三维可视化与过程模拟、软件工程等)的学习,具备了一定的专业知识基础和上机实践能力,但总体而言,知识体系还不够全面,缺少软件项目管理方面的知识和经验,软件开发技能离实战也有一定距离。
图1 空间信息与数字技术专业的实践教学体系结构
项目教学法实质上是以项目为导向,让学生通过承担和完成某个具体项目来培养学生的专业能力、方法能力和社会能力[4]。通过参与一个功能较完整的实际地质信息系统软件项目开发过程,“在做中学”理论教学与技能训练相结合[5],既培养学生的动手能力、又获得了地质信息系统软件设计所必需知识,让学生能有一定的软件开发体验,能够在以后的实际工作中直接进入角色。
教学目标是结合本专业培养目标,通过该实习对所学专业课程知识做一个全面的总结和实践,形成完整的地学信息化专业知识体系,掌握专业地学信息软件开发及应用技能。
开发或应用地质信息系统,全面应用信息技术,解决地学领域问题,是“空间信息与数字技术”专业毕业的学生在今后从业过程中必然会面临的问题。因此,应用开发实习内容围绕地质工作信息化工作展开,包括地质数据的数字化采集、地质数据的计算机存储管理、地质数据的计算机分析与处理、地质数据可视化、地质信息提取、地质数据应用等完整的业务流程及相应软件模块的开发。
该教学方法的思路是:实习以教学团队完成的真实矿山勘查与开发信息系统为原型,抽出接近真实系统的小型“MiniMine矿山信息系统”开发为课题,采取“模拟项目”方式进行教学。以学生为主体,组成系统研发项目组,下设数个技术组;指导老师充当“甲方”及“质量管理部门经理”的角色。课程按真实项目的方式展开,分为立项论证、合同签订、需求分析、概要设计、详细设计、编码实现、测试优化、发布实施环节。通过让学生全程参与这个地质信息系统项目研发过程,引导学生总结专业基础知识,汲取软件项目运作及管理的知识,培养学生研发软件的专业技能,锻炼学生团队协作能力,掌握基本的科学研究方法,真实体验地质信息系统研发及应用的实际工作。
1.项目法教学内容设置及准备工作
实习采取“模拟项目”方式进行教学。要求学生作为乙方在三维可视化环境下开发“MiniMine矿山三维信息系统”,具体技术要求:(1)所开发系统为三维信息系统,具备三维软件基本操作功能;(2)实现矿山测量数据输入功能;(3)实现矿山三维地表模型生成与展示功能;(4)实现钻孔中地层和样品数据的三维建模功能;(5)实现钻孔中样品数据按规则合并功能;(6)实现建立三维矿体的面模型功能;(7)实现建立三维矿体的块体模型创建功能;(8)实现IDW品位估值功能;(9)实现三维开挖分析功能;(10)实现储量结果报表功能。
实习中将30人的一个行政班的学生划分为两个大项目组,每组15人,按软件研发项目的方式给定不完全相同的项目研发课题。实习中要求项目组自己推选项目经理,参照软件公司体系结构,结合任务组建研发团队,下设技术小组,每个小组3~5名研发成员,推选一名技术组长负责任务协调。项目组针对合同要求的研发内容,分解模块和任务,每个学生都要有自己独立完成的实习内容和实习成果,汇总为项目组的研发成果。两个项目组承担总体近似、局部有别的项目任务,研发中可以相互借鉴和竞争。完成后每个同学必须提交一份字数不少于8千字的正式实习报告。由项目经理和负责老师根据实习过程和结果,全程考核和给定成绩。
为了实现以上的教学思路,针对专题地质信息系统开发项目,老师必须每个环节都需准备好备案和相应的实习材料:(1)确定任务节点,编写实习教案;(2)某矿区勘探脱密数据,尤其是钻孔及样品数据;(3)一份“模糊”的软件需求和一份详细而明确的软件需求文档;(4)一份高仿真的软件研发“合同”,按科技部正式格式编写,合同规定软件研发的任务目标、时间节点,这是最终考核项目组的标准;(5)事先在学生中调研和物色合适的项目经理人选,以备学生未能及时选出项目经理时,推荐给他们;(6)三维平台二次开发平台;(7)各类文档模板及示例文档;(8)一份完整的技术方案,用于开发中发现学生团队卡壳或存疑时指导学生;(9)项目组运行的“管理规则”,即例会制度、项目经理、小组长和成员的行为职责等,通告给学生,作为日常项目运行和管理依据;(10)软件工程及项目管理的案例;(11)实习报告要求及报告编写模板;(12)针对学生实习中可能出现的问题的处理预案。
2.项目任务分解及时间安排
实习的项目任务分解、教学进程与时间安排如表1所示。
应用开发实习的时间为每年9月,为期四周,每天实习时间为:上午8:00~11:45,下午14:30~17:30,晚上自愿上机,周六、周日休息。
3.教学重点、难点与对策
地质信息系统软件开发的全流程训练是本应用开发实习的重点。项目管理及软件需求分析、设计和开发是难点。由于“模拟项目”方式的教学实习是以学生为主体,而他们知识基础、专业技能、团队协作等各方面能力都有待提高,并且学生的主动性、积极性、合作性对于教学实习的成效起到很大的作用。因此,作为指导老师需要高超的组织能力和密切关注学生的进展情况,并且在每个阶段都要“走在学生的前面”,每个阶段都要有预案,实习进度要严格控制,多用启发和案例的方式引导学生更好地进行项目研发。另外,老师必须有丰富的信息系统开发实战经验,才能把控每个实习环节的节奏和重点,我们由三个老师组成教学团队互相配合完成。一个月的模拟项目执行,毕竟不是真实项目,且由于时间所限,实习中既不能只蜻蜓点水简单地涉及每个环节,又不能面面俱到纠缠于每个环节的细节。粗了,学生会觉得走过场,学不到什么东西;细了,学生会深陷细节忘了大局。老师需要把握好这个度。在实习过程中每天要安排老师值班,随时解答学生的疑问和解决实习中碰到的问题。
表1 应用开发实习的项目任务分解及时间安排
4.项目法教学全过程考核方式与成绩评定办法
该项目教学法的学习效果、成绩的评价由试卷考核改变为全过程评价,由单独老师评价改为老师学生联合评价。过程评价需要从第一堂课开始,每个重要的环节都记录学生的学习过程和表现。例如第一次的需求分析报告完成后,组织正式的项目汇报,每位同学汇报自己所负责工作的需求分析的过程和结果。老师和学生共同组成的专家组给每位同学打分,平均后作为本次汇报的成绩。四次汇报的成绩平均后作为最终汇报的成绩。这样一方面让学生参与考核,可以调动大家的积极性,另一方面每次考核,有利于学生一次次挑战自己,做到台阶式提高。后期要求项目经理给下属成员每人一个综合表现成绩(项目经理由老师打分),占总成绩的40%。这样,项目经理有了评价权,对组织和协调项目执行很有作用。实习结束前一天,要求编写好报告(老师给出提纲,按软件工程方式编写,字数不少于8千字),每位同学必须用PPT演示汇报实习工作及实现成果。最终考核成绩 = 项目经理打分×40% + 汇报成绩×20% + 实习报告×30% + 平时考勤×10%。当然这样精细的考核评价很客观,也能起到以考核促进步的作用,但对教师的要求高、工作量大。
采用项目法进行应用开发实习的教学特点有:(1)高度的模拟实战性:以真实软件产品开发的实践过程为蓝本,基于实际矿区数据模型和需求,模拟项目研发的各个过程,通过实战性的训练,让学生在实战中学习、感受软件开发的全过程。对于学生以后就业或从事类似软件研发的科研活动,平滑过渡、接近无缝衔接。(2)高度的学生自主性:老师作为“旁观者”主要扮演甲方代表、数据支持、技术顾问、管理顾问等角色,尽量不直接干涉项目组日常运行;学生组成项目组,选举组织能力强、知识基础好、善于沟通的学生为项目经理,并在他的带领下组建项目研发小组,指定能力强有责任心的同学作为技术小组长,完成整个项目的研发。项目经理对组员的评分将占实习成绩的很大权重,有利于调动学生积极完成好实习。(3)以战代练,授人以渔:在项目开发过程中,学生必须自觉查找资料,攻克技术难关,加强团队协作,学习科研方法,通过模拟实战,事实上锻炼了学生分析、设计、开发、测试及管理等专业技能,同时在团队中训练协同工作的合作意识,潜移默化地培养了学生协作学习、团队精神。还补齐了软件项目执行和管理方面的知识。
经过以上项目法教学,通过概要设计、详细设计和验收汇报三次正式的项目评审考核,和最终的实习成果及报告考核结果表明:(1)学生参与热情高涨,项目执行期间,项目组团队成员之间沟通频繁和相互学习热情高。(2)能力提高明显,三次正式的汇报,同学每次都能带来惊喜,可以明显看到学生的能力提高。(3)有效避免抄袭,由于整个大项目分解为近10个小的技术要求,可以对应10个不同的功能模块,相当于10个小题目,这些题目是相互关联的,有机组织起来就是一个完整的系统。因此学生在实习中,找不到现成的代码和文档来参考,必须按小组分工,任务分解到个人,且每个人内容都不一样,抄袭几乎是不可能的。实际上,学生也不屑于抄袭,他们更热衷于合作开发,在软件功能上展现自己的能力,甚至不惜加班加点,激烈比拼。
从2014年开始尝试在本专业应用开发实习中采用项目教学法,经过对三届学生的教学实践,不断优化完善,形成了完备的教学方法,取得了良好的教学效果。实践表明,采用高仿真的项目法实施应用开发实习,能让学生亲历一个地质信息系统软件开发项目从立项论证、合同签订、需求分析、概要设计、详细设计、编码实现、测试优化、部署实施的全过程,体现了应用开发实习教学过程的实践性特点,增强学生对知识的理解和掌握程度,提升学生知识运用和解决问题的能力,搭建了理论教学与系统开发和应用实践之间的桥梁。有利于提高学生就业竞争力,有利于培养既懂地质又懂计算机的复合型特色人才[6]。
[1] 吴冲龙,刘刚,田宜平,等.地矿勘查信息化与地矿信息科技学科建设[J]. 中国地质教育,2005(1): 32-35.
[2] 张冬梅,王媛妮.空间信息与数字技术专业复合创新型人才培养研究[J]. 教育教学论坛, 2016,5(24),157-158.
[3] 彭传正,单片机项目法教学设计[J]. 科技信息:科学教研,2007(31):345,355.
[4] 吴海波.项目法教学在机械设计基础中的应用[J].教育观察,2015(6):127.
[5] 赵春春,谭文非. 计算机辅助设计课程中教学方法改革与实践的探索——以《园林景观计算机辅助表现技法》课程项目法教学为例[J].教育教学论坛,2013(49):214-215.
[6] 吴冲龙,刘刚,田宜平,等. 论地质信息科学[J]. 地质科技情报, 2005, 24(3):1-8.
G642
A
1006-9372(2017)02-0056-04
2016-06-28;
2016-12-28。
湖北省教学研究项目“《地质信息系统》案例教学法研究”(项目编号2012128),2017年中国地质大学教学研究项目“高仿真项目实战教学法驱动《软件应用开发实习》”资助。
张夏林,男,教授,主要从事空间信息与数字技术及三维地学信息系统方面的教学和科研工作。
投稿网址: www.chinageoeducation.net.cn 联系邮箱:bjb3162@cugb.edu.cn
张夏林,翁正平,李章林,等.空间信息与数字技术专业“应用开发实习”项目教学法研究[J].中国地质教育,2017,26 (1):56-59.
Title:Research on Project Teaching Methods in“Application Development Practice”of Spatial Information and Digital Technology Major
Author(s):ZHANG Xia-lin, WENG Zheng-ping, LI Zhang-lin,LIU-Gang