SyDRA: An Approach to Understand Game Engine Architecture
针对游戏引擎架构复杂难理解引发的开发问题,提出子系统依赖恢复方法SyDRA,经10款开源引擎验证和对照实验表明,其生成的架构模型可提升开发者架构理解与影响分析的效率和正确率。
2024-07-14 cs.SE
Critical Success Factors to Improve the Game Development Process from a Developers Perspective
软件游戏开发行业的增长是巨大的,并且日益重要。这种增长给游戏开发社区带来了巨大的压力和许多问题和挑战。游戏开发是一个复杂的过程,一个重要的游戏开发选择是考虑开发人员的角度,通过改进游戏开发过程来生产高质量的软件游戏。本研究的目的是提供一个更好的理解的开发者尺寸作为一个因素,在软件游戏的成功。它主要侧重于对软件游戏开发过程中的关键开发人员因素的影响,并最终对所产生的游戏质量的实证调查。一项定量调查的开发和进行,以确定关键的开发人员因素,增强游戏开发过程。在本研究中,开发的调查被用来测试研究模型和假设。研究结果表明,游戏开发组织必须处理多个关键因素,以保持竞争力,并处理软件游戏行业的高压。本文的主要贡献是实证研究的关键开发人员的因素对游戏开发过程的影响。
2018-01-12 cs.SE
An Exploratory Approach for Game Engine Architecture Recovery
游戏引擎为视频游戏开发人员提供了广泛的基础子系统来创建游戏,例如2D/3D图形渲染,输入设备管理和音频播放。开发人员经常将这些子系统与其他应用程序集成或通过插件扩展它们。为了正确地集成或扩展,开发人员需要广泛的系统架构理解。然而,体系结构信息并不总是容易获得,并且在这种系统中经常被忽视。在这项工作中,我们提出了一种游戏引擎架构恢复的方法,并探讨了三个流行的开源游戏引擎(Cocos2d-x,Godot和Urho 3D)的架构。我们进行手动子系统检测,并使用Moose,软件分析平台,生成建筑模型。通过这些模型,我们回答了以下问题:游戏引擎中存在哪些子系统?哪些子系统更经常相互耦合?为什么这些子系统相互耦合?结果表明,平台独立性,资源管理,世界编辑器和核心子系统经常被其他人包括在内,因此作为游戏引擎的基础。此外,我们表明,通过应用我们的方法,游戏引擎开发人员可以了解子系统是否相关,并划分责任。他们还可以评估子系统之间的关系是否适合游戏引擎。
2023-03-20 cs.SE
Dataset of Video Game Development Problems
与传统的软件开发不同,视频游戏开发中的软件工程过程和技术的信息很少。在视频游戏开发者社区中分享知识的一种流行方式是发布事后分析,这是总结视频游戏开发项目期间发生的事情的文档。然而,这些文档是在没有正式结构的情况下编写的,并且通常提供完全不同的信息。通过本文,我们为开发人员和研究人员提供了从事后分析中提取的描述视频游戏开发中软件工程问题的基础数据集。我们使用迭代法创建了数据集,通过该方法,我们手动编码了20年(1998年至2018年)的200多个事后分析,并提取了1,035个与软件工程相关的问题,同时保持了事后分析的可追溯性链接。我们把问题分成20种不同的类型。该数据集有助于了解开发人员在视频游戏开发过程中所面临的问题,为研究人员和从业人员提供了一个起点,在软件工程的背景下研究视频游戏开发。
2020-09-05 cs.SE
Visualising Game Engine Subsystem Coupling
本文使用架构恢复方法为10个开源游戏引擎创建模型,分析子系统耦合模式,发现Low-Level Renderer等频繁与Core耦合,进而描述涌现架构以助从业者改善系统理解与可维护性。
2023-09-12 cs.SE
Teaching Software Testing and Debugging with the Serious Game Sojourner under Sabotage
本文提出了一款基于浏览器的严肃游戏 Sojourner under Sabotage,通过交互式叙事挑战让学生扮演船员使用 JUnit 框架进行单元测试与调试,有效提升了学生的参与度、测试覆盖率和调试技能。
2025-04-27 cs.SE
Characterizing Open-Source Video Games from a Software Engineering Perspective
Universidade Federal de São Carlos(圣卡洛斯联邦大学);Ontario Tech University(安大略理工大学)
本研究从软件工程视角分析491款GitHub开源游戏,发现其类型集中于益智、动作和平台类,仓库多休眠,常用Godot或Unity引擎,测试文档稀缺,为小团队开发提供洞见。
2026-10-06 cs.SE
Software Engineering For Automated Game Design
Queen Mary University of London(伦敦玛丽女王大学)
随着我们开发更多的辅助和自动化游戏设计系统,如何将这些系统集成到游戏开发工作流程中,以及需要进行多大程度的调整,变得越来越重要。在本文中,我们探讨的影响软件工程决策的能力,一个自动化的游戏设计系统,以了解游戏的代码库,生成新的游戏代码,并评估其工作。我们认为,一种新的方法,软件工程可能需要为了游戏开发人员充分受益于自动化的游戏设计。
2020-04-03 cs.AI cs.SE
Are the Old Days Gone? A Survey on Actual Software Engineering Processes in Video Game Industry
在过去的10年里,一些研究人员研究了视频游戏的开发过程,他们提出了改进游戏开发方式的方法。这些方法通常采用敏捷方法,因为传统实践和瀑布过程已经消失。然而,游戏行业的“旧时代”真的一去不复返了吗?在本文中,我们提出了一个调查的软件工程过程中的视频游戏产业从事后项目分析。我们分析了Gamasutra Portal的20个尸检报告。我们提取了他们的流程,并通过使用业务流程模型和符号(BPMN)进行建模。这项工作提出了三个主要贡献。首先,一种事后分析方法来识别和提取项目过程。研究的主要结果:\textbf{the "old days" are gone, but not completely}。\textbf{Iterative practices}正在增加,并至少应用于\textbf{65\% of projects},其中\textbf{45\% of this projects}明确采用了敏捷实践。然而,\textbf{waterfall}过程仍然至少应用于\textbf{30\% of projects}。最后,我们讨论了视频游戏开发社区的一些启示,方向和机会。
2020-09-05 cs.SE
Computer Games Are Serious Business and so is their Quality: Particularities of Software Testing in Game Development from the Perspective of Practitioners
在过去的几十年里,计算机游戏开始对社会产生重大影响。然而,尽管计算机游戏是一种软件,但概念化、生产和交付游戏的过程可能涉及不寻常的功能。例如,在软件测试中,研究表明,由于需求和设计的不断变化,专业人员对游戏使用自动化测试技术犹豫不决,并指出需要创建考虑到游戏开发过程所需灵活性的测试工具。目标.本研究的目的是改善目前的知识体系,在游戏开发中的软件测试,并指出现有的特殊性,在软件测试考虑到计算机游戏的发展。法基于案例研究和意见调查的混合方法,从软件专业人士那里收集关于游戏开发中软件测试特殊性的定量和定性数据。结果我们分析了70多个消息发布在三个完善的网络问答社区相关的软件工程,软件测试和游戏开发,并收到了38个专业人士的答案讨论测试之间的差异计算机游戏和一般的软件,并确定了重要的方面,以观察从业人员在规划,执行和报告测试的过程中,在这种情况下。结论考虑到计算机游戏,软件测试不仅要关注一般软件的共同点,还要跟踪和调查可能与游戏平衡、游戏物理和娱乐相关的问题,以保证计算机游戏的质量和成功的测试过程。
2018-12-12 cs.CY cs.SE
CyberSecurity Challenges: Serious Games for Awareness Training in Industrial Environments
了解网络安全主题,例如,与安全编码指南相关,使软件开发人员能够编写安全代码。这种意识在工业环境中对于关键基础设施中的产品和服务至关重要。在这项工作中,我们介绍和讨论了一个新的严重的游戏,专为软件开发人员在行业中。这个游戏解决了软件开发人员的需求,并被证明是非常适合提高安全编码意识的软件开发人员在行业中。我们的工作成果来自作者在行业中进行十多项网络安全挑战时获得的经验。所提出的游戏设计,这是被软件开发人员所接受的,是一种新颖的替代传统的课堂培训。我们希望通过在早期生产阶段改善产品的网络安全,对行业产生积极影响。
2021-02-20 cs.SE
Software Testing Beyond Closed Worlds: Open-World Games as an Extreme Case
Ritsumeikan University(立命馆大学)
本文探讨了传统封闭世界假设在现代软件系统中的局限性,通过开放世界游戏案例,提出测试应支持在不确定环境下系统行为的表征与解释,讨论了自动化测试生成、评估指标和实证研究设计等研究方向。
2026-04-08 cs.SE
Serious Games in Digital Gaming: A Comprehensive Review of Applications, Game Engines and Advancements
本文全面综述了严肃游戏的应用与类型,介绍了主流游戏引擎,并详细比较了Unreal和Unity引擎的优缺点,为严肃数字游戏开发提供未来建议。
2023-11-03 cs.SE
Game Engine Comparative Anatomy
视频游戏开发人员使用游戏引擎作为工具来管理游戏开发的复杂方面。虽然引擎在游戏的成功中扮演着重要的角色,但据我们所知,它们通常是以封闭源代码的方式孤立开发的,没有架构讨论,比较和项目之间的协作。在这项正在进行的工作中,我们比较了两个开源引擎的调用图:Godot 3.4.4和Urho 3D 1.8。虽然静态分析工具可以为我们提供一个没有精确调用图路径的总体情况,但使用Callgrind等分析器也允许我们查看调用顺序和频率。这些图表使我们对发动机的设计有了深入的了解。我们表明,通过使用Callgrind,我们可以获得一个引擎的架构,这可以用来理解它的高级视图。在未来的工作中,我们打算应用动态和静态分析其他开源引擎,以了解架构模式及其对性能和维护等方面的影响。
2022-07-13 cs.SE
The Art of Software Design, a Video Game for Learning Software Design Principles
本文介绍了我们的游戏化的一部分,我们的软件设计课程。基于典型的设计原则,开发了一个激励学习游戏,用于训练学生的软件设计。我们使用Bloom的分类法来确定学习目标。我们让玩家在一个具有挑战性的水平为基础的游戏越来越复杂的直接反馈参与。玩家可以在可视化的控制和数据流的帮助下评估他们的设计行为。主要学习目标:应用设计原则,适合游戏的主要活动。这支持讲师的边做边学方法。用户测试表明可能的学习效果和可玩的游戏。
2014-01-20 cs.HC cs.SE
Gamifying a Software Testing Course with Continuous Integration
针对软件工程专业学生测试积极性不足的问题,将游戏化工具Gamekins集成到本科软件测试课程的持续集成环节,有效提升了学生测试结果准确率与参与度。
2024-01-31 cs.SE
A Comparative Analysis of Energy Consumption Between The Widespread Unreal and Unity Video Game Engines
本研究对比Unity与Unreal Engine在物理、静态网格和动态网格场景下的能耗,发现显著差异,并指出每年可节省至少51太瓦时能源,为节能游戏引擎研究开辟新方向。
2024-05-23 cs.SE
Personality Profiles of Software Engineers and Their Software Quality Preferences
软件工程(SE)中与人的方面相关的研究已经从不同的角度进行。这些观点包括研究软件生存周期不同阶段的人的因素,软件开发中团队绩效的影响,一个人格特质如何适合一个特定的任务,以及其他一些杂项问题。这项研究工作的目的是建立巴基斯坦的软件工程师使用迈尔斯-布里格斯类型指标(MBTI)仪器的个性概况。在这项调查中,我们收集了110名软件工程师的个性特征。此外,还收集了他们对软件质量属性的偏好。研究分析表明,最突出的人格类型是内向、敏感、思考和判断的组合。调查结果表明,大多数软件工程师认为可用性和功能性是最重要的软件质量属性。
2015-11-13 cs.SE
Video Game Project Management Anti-patterns
项目管理反模式在软件工程文献中有很好的文档记录,研究它们可以理解它们对团队和项目的影响。视频游戏开发行业以其管理不善的做法而闻名,因此应用这些知识将有助于提高游戏开发人员的生产力和福祉。在本文中,我们将项目管理反模式映射到灰色文献中游戏开发人员报告的反模式。我们阅读了440个事后分析问题,确定了反模式候选者,并将它们与软件工程文献中的定义联系起来。我们发现,大多数反模式候选者可以映射到软件工程文献中的反模式,除了功能蠕变,功能削减,多项目工作,以及缺少或不充分的工具。我们讨论了未映射的候选者对开发过程的影响,同时也在视频游戏和传统软件开发之间进行了比较。未来的工作包括通过对实践者的调查来验证候选人的定义,并考虑开发反模式。
2022-03-11 cs.SE
Gamifying the Escape from the Engineering Method Prison - An Innovative Board Game to Teach the Essence Theory to Future Project Managers and Software Engineers
软件工程是一门工程学科,但缺乏坚实的理论基础。在补救这种情况的努力之一是SEMAT精华规范。Essence由一种用于建模软件工程(SE)实践和方法的语言以及一个内核组成,该内核包含其作者所描述的每个软件开发项目中存在的元素。在实践中,它是SE项目的方法不可知的项目管理工具。使用规范的语言,Essence可以用来建模任何软件开发方法或实践。因此,该规范可以潜在地应用于任何软件开发环境,使其成为一个强大的工具。然而,由于使用Essence进行建模实践所涉及的手工工作和学习过程,它的最初采用可能是开发团队的任务。由于项目管理在SE项目中的重要性,Essence等新的项目管理工具很有价值,因此促进其采用也很重要。为了解决这个问题的情况下的本质,我们提出了一个基于游戏的方法来教使用本质。在本文中,我们通过一个创新的棋盘游戏来游戏化学习过程。该游戏是经验验证的一项研究,涉及的学生从大学的于韦斯屈莱(n=61)。根据结果,我们报告的有效性,以游戏为基础的方法来教学的本质和SE项目的工作。
2018-09-23 cs.SE
Supporting Software Engineering Research and Education by Annotating Public Videos of Developers Programming
软件工程长期以来一直在研究软件开发人员如何工作,构建了一个工作主体,形成了许多软件工程最佳实践、工具和理论的基础。最近,一些开发人员开始录制自己参与开源项目编程任务的视频,使他们能够与其他开发人员分享知识和社交。我们相信这些视频为软件工程研究和教育提供了重要的机会。在本文中,我们讨论了这些视频的潜在用途,以及如何最好地实现这种设想的使用开放的问题。我们建议创建一个中央存储库的编程视频,使分析和注释视频,以说明感兴趣的特定行为,如提问和回答问题,采用策略,和软件工程理论。这样一个知识库将提供一种重要的新方法,使软件工程研究人员和学生都能理解软件开发人员是如何工作的。
2019-05-09 cs.SE
How Software Engineering Research Overlooks Local Industry: A Smaller Economy Perspective
Warsaw University of Technology(华沙理工大学);Wroclaw University of Science and Technology(弗罗茨瓦夫科技大学)
本文从较小经济体视角出发,指出软件工程研究与产业间存在显著差距,并提出改进研究与产业合作的建议。
2026-01-28 cs.SE
Lost in Code Generation: Reimagining the Role of Software Models in AI-driven Software Engineering
TU Wien(维也纳工业大学)
该研究针对AI生成软件存在的缺陷,提出从AI生成系统中恢复软件模型,区分智能体与人类反思循环,将软件模型作为连接现有软件工程与AI驱动开发的桥梁,拓展了软件模型的作用。
2026-08-28 cs.SE
Standards of Validity and the Validity of Standards in Behavioral Software Engineering Research: The Perspective of Psychological Test Theory
背景软件工程研究中有一些出版物旨在指导研究人员评估其研究的有效性威胁。尽管如此,许多研究人员未能解决许多方面的有效性是必不可少的定量研究人为因素。目标.本文的目标是引发思维方式的转变,在什么类型的研究是最有价值的行为软件工程领域,也提供了更多的细节,什么是结构效度。法该方法是基于心理测试理论,并借鉴了心理学中使用的方法与结构效度。结果在本文中,我提出了一种不同的方法来有效性威胁比什么是常见的行为软件工程研究。结论.虽然本文的重点是行为软件工程,我相信其他类型的软件工程研究也可能受益于越来越多的关注结构效度。
2018-09-06 cs.SE
A Game of Attribute Decomposition for Software Architecture Design
属性驱动的软件体系结构设计旨在通过考虑软件的质量属性来提供决策支持。这个过程中的一个中心问题是:什么架构设计最能满足期望的软件需求?为了回答这个问题,系统设计者需要在几个潜在冲突的质量属性之间进行权衡。这种决定通常是临时性的,在很大程度上依赖于经验。我们提出了一个数学方法来解决这个问题。博弈论自然提供了基本的语言:参与者代表需求,策略涉及在参与者之间建立联盟。通过这种方式,我们提出了一种新的模型,称为分解游戏,属性驱动的设计。基于内聚和扩展自由的概念,我们提出了它的解的概念,并证明了解总是存在的。然后,我们研究了获得解决方案的计算复杂性。博弈模型和算法可以作为一个通用的框架,为软件体系结构设计提供有用的指导。我们目前我们的结果,通过运行的例子和案例研究,在现实生活中的软件项目。
2015-08-12 cs.GT cs.SE
A Game-Theoretical Self-Adaptation Framework for Securing Software-Intensive Systems
针对软件密集型系统的安全攻击越来越普遍,这就要求有新的、有效的方法来检测和响应这些攻击。作为一种有前途的方法,博弈论提供了分析工具,系统和敌对环境之间的相互作用建模和设计可靠的防御。在本文中,我们提出了一种使用严格的博弈理论框架来保护软件密集型系统的方法。首先,自适应框架部署在基于组件的软件密集型系统,定期监测系统的异常行为。提出了一种基于学习的方法来检测系统组件上可能正在进行的攻击,并预测组件的潜在威胁。然后,一个算法被设计成自动建立一个\emph{Bayesian game}的基础上的系统架构(其中的一些组件可能已经受到损害),一旦检测到攻击,其中的系统组件被建模为独立的球员在游戏中。最后,通过求解贝叶斯博弈来计算最优防御策略,以实现最佳的系统效用,即最小化攻击的影响。我们进行了两组实验上的两个一般的基准任务的安全域。此外,我们系统地介绍了一个真实世界的水处理试验台,即安全水处理系统的案例研究。实验结果表明了该方法的适用性和有效性。
2021-12-12 cs.GT cs.SE
Teaching cloud computing: a software engineering perspective
这篇简短的论文从软件工程而非业务角度讨论了云计算教学的问题。它讨论了云软件工程高级课程可能涉及的主题。
2012-09-05 cs.DC cs.SE
MentalGame: Predicting Personality-Job Fitness for Software Developers Using Multi-Genre Games and Machine Learning Approaches
Department of Computer Engineering, University of Tehran(塔里哈大学计算机工程系)
MentalGame通过多类型游戏和机器学习方法预测软件开发人员的性格-职业适配度,实现高精度的适配性预测。
2026-01-03 cs.AI cs.HC cs.LG
An Exploratory Case Study of LLM-Assisted Refactoring and Gameplay Feature Generation in an Endless Runner Game
IU International University of Applied Sciences(国际应用科学大学)
通过GPT-4o在Python/Pygame无尽跑酷游戏中的案例,发现LLM在局部重构任务上表现可靠,但在需要跨系统交互的新玩法生成任务中成功率较低。
2026-06-23 cs.AI cs.SE
Can GPT-4 Replicate Empirical Software Engineering Research?
Carnegie Mellon University(卡内基梅隆大学);Microsoft Research(微软研究院)
本研究探究GPT-4复现实证软件工程研究的能力,通过7篇论文的测试与14名专家的评估,发现其能挖掘正确假设、生成逻辑正确的高层代码,但存在常识假设缺失和底层实现错误的问题。
2024-06-19 cs.AI cs.SE
Characterizing disruptions in online gaming behavior following software patches
多人在线游戏是研究技术中断对社会行为影响的理想环境。在线游戏的软件补丁会导致游戏规则发生重大变化,并要求玩家制定新的策略来应对这些中断。我们调查了玩家,分析了软件补丁说明的内容,并分析了30个月内软件补丁前后超过5300万场Dota 2比赛中角色选择行为的变化。我们发现,补丁的严重程度与补丁后的行为变化的幅度相关。我们讨论的机会,利用软件补丁的在线游戏作为一个有价值的,但被忽视的实证工具,测量行为动态。
2022-07-06 cs.CY cs.HC cs.SE
Personality Traits in Game Development
现有的关于软件开发中人格特质的研究将游戏开发者排除在一个独立的群体之外。虽然游戏是软件,但游戏开发有其独特的考虑因素,因此游戏开发人员可能会表现出与其他软件专业人员不同的个性特征。我们评估了123个游戏开发者的国际人格项目池五因素模型量表和人口调查问卷,使用因素分析。程序员的外向性低于设计师、艺术家和制作团队成员;开放性低于设计师和制作,神经质高于制作--可能与倦怠和关键时间有关。与已发表的软件开发人员的规范相比,游戏开发人员报告较低的开放性,责任心,外向性和可信赖性,但较高的神经质。这些个性差异有许多实际意义:角色之间的外向性差异可能会导致沟通障碍;开放性差异可能会导致程序员和设计师之间的冲突。了解性格特征和角色之间的关系可以帮助招聘人员引导新员工进入合适的角色,并帮助管理人员应用适当的压力管理技巧。为了实现这些好处,必须将个人与角色区分开来:仅仅因为一个人占据了一个角色并不意味着他们拥有与该角色相关的人格特征。
2022-04-25 cs.HC cs.SE
Will AI replace Software Engineers? Do not hold your breath
National University of Singapore(新加坡国立大学);CISPA Helmholtz Center for Information Security(CISPA亥姆霍兹信息安全中心)
本文指出,尽管LLMs在代码生成中很流行,但软件工程还包括维护大型软件和保持可靠性等LLMs尚不具备能力的关键部分,因此AI不会完全取代软件工程师。
2025-03-03 cs.AI cs.SE
Instruction-Driven Game Engine: A Poker Case Study
Shanghai Jiao Tong University(上海交通大学);Tencent(腾讯)
本文提出指令驱动游戏引擎(IDGE),以扑克为案例,通过课程化训练大语言模型进行下一状态预测,使用户能用自然语言创建多样化且个性化的游戏,降低游戏开发门槛。
2024-10-17 cs.AI cs.SE
JAMER: Project-Level Code Framework Dataset and Benchmark on Professional Game Engines
Nankai University(南开大学);Shanghai Innovation Institute(上海创新研究院);Shanghai AI Laboratory(上海人工智能实验室)
提出首个基于专业游戏引擎的项目级代码框架数据集JamSet和基准JamBench,通过设计确定性验证流程,从24万仓库中筛选出8133个已验证项目,评估9个前沿模型发现项目规模增大时能力急剧下降。
2026-06-23 cs.CL cs.SE
Automated Quantum Software Engineering: why? what? how?
本文提供了一个关于自动化量子软件工程(AQSE)研究的个人观点。它阐明了研究AQSE的动机(为什么?),对这样一个框架的精确描述(什么?),以及对实现它所需的组件的思考(如何实现?)。
2022-12-01 cs.ET cs.SE quant-ph