《软件工程》课程中的教育游戏
本文关键词:《软件工程》课程中的教育游戏,由笔耕文化传播整理发布。
《软件工程》课程中的教育游戏
□ 朱庆 项慨 贾玉福
摘 要:
传统的《软件工程》教学以讲授为主,不能让学习很好地掌握软件工程中的基本技能。主要原因是孤立地讲授与孤立的课堂项目不能向学生充分地展示软件工程的流程。我们在教学中使用了一些能模拟软件工程过程的软件,让学生在实践之前事先了解软件工程的过程。本文通过对国外高校中流行的软件工程游戏SimSE和国外高校新开发的三维环境中的同类游戏MO—SE Process进行对比,提出新的软件工程过程游戏的思路。
关键词:
分类号:
【摘要】传统的《软件工程》教学以讲授为主,不能让学习很好地掌握软件工程中的基本技能。主要原因是孤立地讲授与孤立的课堂项目不能向学生充分地展示软件工程的流程。我们在教学中使用了一些能模拟软件工程过程的软件,让学生在实践之前事先了解软件工程的过程。本文通过对国外高校中流行的软件工程游戏SimSE和国外高校新开发的三维环境中的同类游戏MO-SEProcess进行对比,提出新的软件工程过程游戏的思路。
【关键词】软件工程教学;SimSE;MO-SEProcess
【中图分类号】G434【文献标识码】B 【论文编号】1009—8097 (2007) 12—0104—03
一 引言
《软件工程》课程是计算机专业学生的必修课,也是计算机专业的一门非常经典的课程。课程的任务是培养学生计算机软件开发与应用的综合能力。介绍软件的基本概念和软件工程的目标,通过对软件开发过程和过程管理技术的学习,使学生了解如何进行软件度量和管理,怎样进行质量保证活动,从而能够有效地策划和管理软件开发活动。为今后从事软件开发和应用打下良好的基础。该门课程同时又是一门相当枯燥的课程,使用传统的教学手段讲授本门课程难以取得很好的效果。在国外有很多企业和学校在从软件开发实践和过程开始培养学生的过程中也碰到类似的问题[1]。
传统的《软件工程》教育有以下特点:
1 以理论讲授为主。
2 由教师指导进行小项目练习。项目完成的满意度由教师反馈。
3 通常在一个学期中都是分散地关注某一个特定的细节,而缺乏对整体的关注。
这样一来,学校教育出来的学生和实际需求存在很大的差距[2-5]。特别是个人和团队的关系上,软件工程的学生需要进一步明确。一方面个人需要在一个大的进程背景下理解自己的角色,另一方面团队要根据个人进度来获得最终的进展。
为了解决这些问题,我们在《软件工程》教学中使用了两个基于游戏的模拟工具:SimSE和MO-SEProcess。SimSE是一个交互式的图形化的软件工程教学模拟游戏;O-SEProcess是一个基于SimSE的多人在线的软件工程过程游戏。两者都可让学生虚拟参加实际的软件工程过程,这种软件工程过程包括在课堂项目中所没有的真实的组成部分,如:团队成员、大规模项目、关键决策、个人因素、预算、计划、随机事件和不可预测事件等。另外,在玩游戏时,用以获得经验的游戏过程是可以重复的,游戏可反复模拟所可能遇到的各种不同的情况,最后在游玩的过程中获得实际有用的经验。
本文第二部分将详细讨论SimSE。第三部分将详细分析另一个模拟游戏MO-SEProcess。在第四部分将论述我们从两个游戏中所获得的经验并描述我们进一步研究的方向。
二 SimSE
《软件工程》课堂上给学生灌输大量的理论知识,而在课堂小项目中能投入应用的只是很小的一部分。SimSE是一个为了改善这种情况而设计开发的用于教育的软件工程模拟游戏。SimSE让学生在一个图形化、交互式的虚拟环境中练习一个虚拟的软件工程过程(或子过程)。环境设置非常有趣,图形化的反馈界面能让学生很容易体会软件开发中复杂的环境和软件工程过程中相互影响的关系[6]。
这个二维单用户的软件工程模拟游戏,由美国加州大学的Irvine开发[7]。在游戏中用户作为一个项目经理管理一个中等大小的项目。用户根据工作能力的大小给虚拟的具有不同经验值的6个人分配工作,并要根据实际情况的变化而作出反应。这种变化有可能是客户需求的变更或别的事情。玩游戏的人还可以通过给软件工程师涨工资来激励工程师的工作积极性。游戏的目标是让软件开发得尽可能完善和迅速。如果玩游戏的人在期限到达的时候还没有提交软件,或者是费用超出了限制,那么游戏就输了。一般情况下,在用户完成并提交软件的时候,系统会根据用户的表现而给出一个分数值。
SimSE系统结构如图1所示。模型由建模器创建,可以详细设定:
1 游戏模拟器中的实体,如:雇员、文档、项目、工具和客户。
2 这些实体能参与的行为和活动,如:编码、合成、需求分析或休息。
3 指明特定行为产生特定效果的规则,如:每过一个时间,编码会增加一定的量,员工的精力值会减少一定的量。
4 图形化描述不同实体。
5 游戏的初始状态。
根据选择的模式不同,生成器自动生成相应组件,然后插入到通用模拟环境中,,这样学生就可以在模拟器中练习所选择的模式了。建模器的界面如图2所示。SimSE 用户界面如图3所示。
三 MO-SEProcess
MO-SEProcess 是一个基于SimSE的多人在线的软件工程过程游戏。用于模拟管理中等大小的软件工程开发项目[8]。它是在第二人生(Second life)平台中开发的游戏。
1 第二人生
第二人生是目前在世界各地非常流行的三维在线虚拟世界[9]。虚拟世界就是用计算机模拟实现的一个类似于现实世界的持久稳定的环境。允许用户以替身的形式在内居住生活。替身就是用户在虚拟世界中的形象代表。
同其它很多虚拟世界一样,第二人生可同时支持大量的在线用户,所以它也被为大规模多人在线游戏。尽管它是一个游戏,但却没有很多传统游戏所有的特性,它没有赢家,没有分数,也没有等级。
第二人生提供两种交流方式:群聊(Chat)和短信(Instant Message)。 群聊指在公共场合中和在场的其他居民(第二人生将它的用户称之为居民)聊天,一定范围内的所有居民都能听到。短信在是两个或多个之间的私聊,其他人不能听到。第二人生还提供一些姿态和动画,在聊天过程中使用可增强其效果。目前,声音即将引入第二人生,并已经进入测试状态。
第二人生提供广泛的在线活动,包括:文化、科学、体育和教育。在第二人生中居民可以四处探寻,会遇见其它居民,同一个社会一样的,居民可以参加各种活动。第二人生还提供了两个强有力的开发工具,一个是三维建模工具,另一个是脚本语言(Linden Script Language ,LSL)。用这两个工具可以创建任何能想象得到的东西。事实上,第二人生中的大部分东西都是由其居民用这两种工具创建的。
正是因为第二人生提供了基于替身的交流方式,提供了广泛的在线活动方式,还开发了一些虚拟世界中的教学工具,在过去的几年中,世界各地的,各个学科的很多教师都将第二人生作为一个教学平台在使用。
2 MO-SEProcess
用户在MO-SEProcess中作为软件工程师工作,它们将与其他的用户合作开发软件。不同的用户扮演不同的角色并完成被分配的不同的工作。用户一直忠实的工作,直到被中止。不同的工程师对他所完成的工作有不同的熟练程序。
目前,MO-SEProcess游戏只支持传统的瀑布型的软件开发过程。游戏中,有6个软件工程师角色,用户可以任选其中一个来参与游戏,选择了哪个角色,就负责完成这个角色的工作。所有参加游戏的人组成一个软件开发团队,不同成员之间可使用第二人生提供的交流方式相互交流,游戏结束之前提交任务的时候会得到团队的得分情况。如果所有的成员不仅很好地完成了自己的工作,而且还和其他成员合作良好,那么这个团队就可以获得一个好分数。这和真实情况是非常类似的。第二人生中的MO-SEProcess游戏如图4所示。
四 进一步的工作和总结
SimSE和MO-SEProcess都试图解决在传统软件工程教育中缺乏对软件工程过程整体把握的问题。这两款游戏以迷人的方式给学生提供实际的,有现实经历的软件工程过程。其中SimSE已经开发实现了适用于课程教学的各种模式,包括:瀑布型、增量型和快速原型法等等,而MO-SEProcess目前只能模型瀑布型。但是MO-SEProcess使用的是一个更有前景的三维在线平台。
在第二人生中进行的教育开发极大地鼓舞了我们。第二人生具有以下引人注目的特点:首先是和虚拟人生中所遇到的人能分享感受;其次,第二人生能提供协同工作的环境;第三,在第二人生中提供的交互式学习的环境是在现实生活中无法重现的;最后,第二人生提供的真正合作的环境,能让大家一起进步。
现在,我们计划在熟悉各个游戏的基础上,在第二人生中合成这两类游戏,让它们为教学服务。我们目前已经获得了我们学校的青年项目基金,该项基金将资助我们在第二人生中开发基于SimSE的软件工程快速原型法模型。
——————————
参考文献
[1]Oh, E. and A. van der Hoek, “Adapting Game Technology to Support Individual and Organizational Learning”,Pro-ceedings of the 13th International Conference on SEngineering and Knowledge Engineering, Knowledge Systems Institute: Buenos Aires, Argentina, 2001, pp. 347-354.
[2]Callahan, D. and B. Pedigo, “Educating Experienced IT Professionals by Addressing Industry's Needs”, IEEE Software, 2002. 19(5): pp. 57-62.
[3]Conn, R., “Developing Software Engineers at the C-130J Software Factory”, IEEE Software, 2002. 19(5): pp. 25-29.
[4]Ludi, S. and J.S. Collofello, “An Analysis of the Gap Between the Knowledge and Skills Learned in Academic Software Engineering Course Projects and Those Required in Real Projects”, In Proceedings of the 2001 Frontiers in Education Conference, 2001.
[5]McMillan, W.W. and S. Rajaprabhakaran, “What Leading Practitioners Say Should Be Emphasized in Students' Software Engineering Projects”, In Proceedings of the Twelfth Conference on Software Engineering Education and Training, H. Saiedian, Editor. IEEE Computer Society. 1999,pp. 177-185.
[6]SimSE OnLine.<~emilyo/SimSE/>
[7]E. O. Navarro and A. van der Hoek, “SimSE: An interactive simulation game for software engineering education”, In CATE ’04: Proceedings of the 7th IASTED International Conference on Computers and Advanced Technology in Education, 2004.
[8]Chang liu,En ye, Tiao chang, Yanhui Fang, “Learning environmental science through game development in Second Life”, The 2007 Ohio Digital Commons for Education (ODCE) Conference, Columbus, Ohio,USA, March 5-6,2007.
[9] Second Life,<>
Educational Game in the Course of Software Engineering
ZHU QingXIANG KaiJIA Yu-fu
(Computer Science & Technology School of Hubei University of Economics, Wuhan, Hube ,430205)
Abstract: A typical software engineering course fails to teach its students many of the skills needed in software development organizations.Because lectures and class projects alone cannot adequately teach about the software process, we have used a pair of games in which the process is simulated, giving students an opportunity to practice it firsthand. SimSE is an educational computer simulation of software process and MO-SEProcess is a Multiplayer Online Software Engineering Process game based on SimSE.
Keyword: Software Engineering Education; SimSE; MO-SEProcess
特别说明:本文献摘要信息,由维普资讯网提供,本站只提供索引,不对该文献的全文内容负责,不提供免费的全文下载服务。
本文关键词:《软件工程》课程中的教育游戏,由笔耕文化传播整理发布。
本文编号:188878
本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/188878.html