通过开发社交应用和游戏在Android平台上学习软件体系结构的比较外文翻译资料

 2022-11-16 11:11

英语原文共 11 页,剩余内容已隐藏,支付完成后下载完整资料


Hindawi Publishing Corporation

International Journal of Computer Games

Technology Volume 2012,Article ID494232,10

Pages doi:10.1155/2012/494232

研究文章

通过开发社交应用和游戏在Android平台上学习软件体系结构的比较

Bian Wu and Alf Inge Wang

计算机科学系,挪威科技大学,特隆赫姆7491,挪威

2012年4月15日(杂志社)收到该篇论文;并于2012年7月16日接受了这篇论文章

学术编辑:Daniel Thalmann

版权所有@2012 Bian Wu和Alf Inge Wang。

摘要

本文描述了一个实证研究的重点是在学生工作中开发游戏使用相同的android开发平台中的异同。2010-2011年,参加农委科技大学软件体系结构课程的学生(NTNU)在四类项目之间选择。 通过独立的项目选择的类型,所有学生都必须经过相同的阶段,产生相同的文件,基于相同的模板,病遵循相同的过程。本研究的重点项目之一的Android项目,看看有多少应用程序域影响课程设计中独立的选择技术。我们的结果显示,学生做游戏开发与社会应用开发学习软件架构有一些积极地影响,比如努力地工作与学习,对于属性品质,如在开发的可变性和可测性有更好的焦点,高复杂性的软件架构的生产,更高效的编码的项目工作。然而,我们在授予学生选择两个不同域之间的等级中没有发现显著差异。

1说明

电脑游戏和视频游戏在儿童、青少年和年轻人中已经非常受欢迎了(在文化中扮演重要的角色)[1]。现在的游戏有着丰富的技术环境,配备了笔记本电脑,随处可见的智能手机,游戏机(移动和固定),机顶盒和其他数字设备。从这一现象可以认为年轻人对游戏的内在动机可以结合教育内容和目标,也就是Prensky所说的“数字化学习游戏”[2]

除了青少年学习生生活游戏中的丰富外形,游戏开发技术也越见成熟,愈发先进[3]。基于现有的各种游戏开发环境,游戏开发过程中的全部职责可以分为几个专家域和角色,如游戏程序员,3D模型的创造者,游戏设计师,音乐师,动画师,和戏曲作家等等。游戏内容与技术的结合过程可以通过游戏引擎和提供信息的使用网络上的各种用户和专家社区来简化。例如微软的XNA游戏开发套件提供的游戏循环函数绘制和更新游戏内容,并提供给负载的图形,音频格式,游戏开发组件和视频。这使得一些有或没有变成编程背景的学生游戏迷修改现有游戏或开发新游戏。他们可以用这些游戏创作工具实现自己的游戏设计概念,学习发展技能和相关知识,并积累相关的实践经验。

在这样的背景下,游戏不仅可以用于学习,也可以用作游戏开发工具,还可以用于研究在计算机科学(CS),软件工程(SE)和通过激励分配的游戏编程任务的相关课题。一般来说,游戏可以集成在教育上有三种方式[4,5]。首先,游戏可以用来代替传统的练习,激励学生吧额外的努力放在做练习上,给老师或助教提供机会,知道学生如何在实时工作中得到锻炼例如[6,7]。其次,游戏可以作为讲座的一部分来提高学生的参与度和积极性,例如[8,9]。第三,学生被要求去修改或开发一个部分使用游戏开发框架的一个课程(GDF)来学习CS和SE的技能的游戏,例如[10]。我们把后者称为游戏开发基础学习。GDF可以用来开发或修改游戏,例如,游戏引擎、游戏编辑器、或者游戏(模拟)平台,甚至任何集成开发环境(IDE),如Visual C 、Eclipse、J2ME和Android SDK,他们都可以用来开发游戏。

本文的研究重点在学生在安卓平台上通过学习开发和社会应用开发(如天气预报、聊天软件)之间的相似性和差异性的评价。

2相关作品

本节介绍了有关使用gdbl方法在软件工程领域的研究背景和前人的结果。

2.1 研究背景

在这样的游戏环境下编程学习的最早的类似的应用是在上世纪70年代初。乌龟图形的标记是最古老的图书馆,用来给初学者计算概念。这个概念基于一个“海龟”,可以用钢笔穿越一个二维屏幕,可以设置或者关闭屏幕,所以因此可能会留下龟痕迹的动作。这样的龟模式编程用不同模式,可以用来介绍常用的计算技巧,如程序操作,迭代和递归。此外,在1987,该提出学习[写一个井字游戏的使用[12]。随后,其他研究已经使用专门的游戏编程工具包,如舞台演员的创造者[13]和游戏制造者[14],爱丽丝[15]和无冬之夜[16]。此外,文章[17]提出了使用手机游戏开发作为激励工具和学习环境中计算机课程的调查。从他们的调查中表明游戏编程和其他计算机科学领域的游戏开发之间的关系可以通过人工智能(AI)研究、数据库、计算机网络、硒、人机交互、计算机图形学、算法、编程、计算机体系结构、操作系统。

这些研究表明,游戏是激励和发展故事以及技术的编程技巧。对制作游戏的任务自然是特制的环境略有不同,所扮演的角色的平衡者承担相应改变。最近的游戏编程工具往往比标志更强的视觉方面,无论是在这个意义上,他们使设计人员能够轻松地创建图形游戏,因为他们有一个可视化的编程语言,或两者都有。这种转移的重点从低级编程,使学生专注于其他角色设计师或者作家。因此,我们探讨如何通过实验研究和教育中的应用与探讨传统的向丰富的环境下的学生讲授进化是动态的,合作的,和有吸引力的目前的技术。然而,这一说法需要相关理论,进一步支持的应用经验,评价结果与经验证据。这是分享我们的经验和实证研究领域gdbl使用Android软件体系结构课程的原因之一。

2.2课程和项目的设置

挪威科技大学(NTNU)软件体系结构课程(课程代码tdt4240)比其他大多数大学教以不同的方式,作为学生也必须在项目中实施的设计架构。这样做的动机是为了让学生了解架构和实现之间的关系,能够进行真正的评价是建筑和实现的结果满足规定的质量要求的应用。在课程的建筑项目与其他软件工程课程项目的相似性,但在项目的一切都是从软件架构的角度进行。在整个项目中,学生们成功的根据指定的项目使用的软件架构技术,方法和工具。

软件体系结构的项目包括以下几个阶段。

(I)COTS(商用)练习:学习技术,可以通过开发一个简单的游戏。

(II)设计模式:学习如何使用和利用现有系统中的应用设计模式的变化。(III)需求和架构:列表功能和质量的要求和对游戏的软件架构设计。

(IV)架构评估:使用架构权衡分析法(ATAM)[18-20]评价方法评价项目的软件架构方面的质量要求。

(V)实现:做一个详细的设计和实现基于创建架构和从评价变化的游戏。

(VI)项目评估:评估项目作为一个整体,采用事后分析(PMA)方法[21]

在项目的第一个阶段,学生们独立工作或2人组队。3–6阶段,学生在自己选择的4-5个学生的团队工作。同时,学生有一个固定的主要指定质量属性集中在项目。对于中等质量属性,学生可以选择他们喜欢的质量属性。学生花大部分时间在实施阶段(六周),他们也鼓励启动实施在早期测试他们的建筑选择(增量开发)。在实施阶段,学生不断延伸、细化,并通过多次迭代的软件体系结构演化。

2.3以前的结果

在2008年,结合我们的经验在运行游戏项目在软件体系结构课程,我们进行了在2010-2011年期间增加一个COTS软件体系结构课程设计Android的新选择。学生可以现在除了java机器人项目和XNA游戏项目选择开发Android的社交应用或游戏。独立的床和领域的选择,学生们必须集中在相同的软件架构的问题在项目进行过程中,遵循相同的模板。介绍了游戏和社交的Android项目允许我们比较领域的学生工作在项目影响学习和项目经验,独立的COTS。在以后的章节中详细描述了。

3方法

本节介绍给我们的Android软件开发项目的相关数据结构实验研究方法。

3.1目的

本文重点介绍使用相同的床但不同发展领域探讨不同区域产生不同的输出。在我们以前的研究中,对gdbl结论的有效性是基于不同的COTS机器人和XNA。本文除在XNA和java开发的机器人控制器开发的游戏,只有注重社会应用和游戏应用的Android平台开发。我们的评估包括五个主题:选择域分布,学生感知的项目,项目交付的代码质量和复杂性,学生的努力和成绩,获奖项目。

3.2GQM方法

对社会和游戏项目的比较应该有助于发现差异,揭示引入项目对Android平台的影响。这个评价是quasiexperiment,一个不受控制的试验。研究方法是基于目标问题度量(GQM)方法[25],我们首先定义一个研究目标(概念),然后定义一组研究问题(操作层面),最后描述了一套指标来回答研究问题的定义(数量级)。在我们的例子中,回答研究问题所用的指标是混合物的定量和定性数据。表显示用于分析软件体系结构课程的游戏开发项目的GQM方法。

表1:GQM表

3.3程序

当学生开始项目,按照项目的阶段,他们应该报告他们在项目的各个阶段的时间。第一个阶段让学生单独或成对熟悉胶辊、建筑和设计模式。该项目的主要工作是在阶段5和3–进行包括需求规格说明、建筑设计、建筑评估、实施和检验。学生产生每个阶段的交付,这是由课程教师评价和反馈,提高了最终交付之前。在5阶段结束时,学生会产生一个最终的结果,这是通过与课程人员分级。完成5阶段后,学生回答一个问卷调查,主要集中在如何看待学生的项目。在阶段6,学生必须开展自己的项目的事后分析作为一个整体来反思他们的成功和挑战。

4结果

在2010和2011,学生可以选择做项目使用三床:机器人(java),XNA(C #),和Android(java)。COTS的学生选择如图所示36,在学生选择Khepera机器人(19%),55的学生选择了XNA(27%),102的学生(54%)选择了Android。那选择Android的学生,58名学生(57%)选择了社会应用与44名学生(43%)游戏。如果我们看一下学生选择我们看到,51%的人选择了游戏开发领域,30%选择和19%选择的社会应用,机器人控制器。

图1 分布选型软件架构项目

图的统计清楚地表明,大多数学生喜欢游戏开发相比其他领域。Android是目前最受欢迎的床,我们相信这是由于其开发商开放,在java开发,有吸引力的设备,创新的特点和发展,以及新的方式共享开发的应用程序通过Android的标记。

在项目的第一阶段,学生们被要求填写一份调查问卷对选择COTS和域的原因。主要原因是:(1)规划名单的原因(熟悉java或C #)(70.7%)、(2)了解COTS(机器人,XNA,Android)(59.5%)、(3)游戏动机或娱乐的原因(40.1%)、(4)社会应用的动机(39.5%),(5)学习领域(机器人,游戏,社会)(34.2%)、(6)硬件的动机,对Android手机运行游戏,zuneplayer(33%),和(7)使游戏Android市场或XNA俱乐部(24.5%)。从以上数据,我们发现,游戏领域在吸引学生的注意力和吸引力的外设的优势,如硬件或软件市场,所以Android社交领域也是这样。这在以前并不是机器人领域的案例。

4.1不同的学生如何感知项目

一个项目进行调查,一周后学生完成他们的软件工程。本调查的目的是要揭示可能存在的差异,学生感知的项

剩余内容已隐藏,支付完成后下载完整资料


资料编号:[29373],资料为PDF文档或Word文档,PDF文档可免费转换为Word

原文和译文剩余内容已隐藏,您需要先支付 30元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。