Critical Aspects of Modern Open Source SoftwareTechnology to Support Emerging Demands
软件在我们的日常生活中已经获得了巨大的重要性,并且正在处理当今技术世界的各个方面。软件的概念在最初的阶段是由一个非常精确的少数个人实现的,现在它无处不在,无论是个人生活还是组织。财力雄厚的组织和能够购买技术时代这一慷慨的人可以有效地满足他们的愿望。可以肯定的是,这不是一个普遍的情况下,一个是财政雄厚,可以轻松地负担所需的软件。有许多用户不能这样做。开源软件为这些用户提供了一条出路,它为他们提供了与同等软件相同的设施和功能,而不考虑任何财务压力.因此,经济拮据的个人或组织可以利用开源软件来实现他们想要的任务。在这篇研究论文中,通过对Ubuntu作为一种新兴的高质量开源现代操作系统与众所周知的Microsoft Windows操作系统进行简要比较,对开源软件进行了分析
2011-09-01 cs.SE
Aspect-Oriented Programming in Secure Software Development: A Case Study of Security Aspects in Web Applications
本研究通过案例对比,证明面向切面编程(AOP)能模块化安全关注点,提升Web应用中安全机制的模块化、可重用性和可维护性,且性能开销极小。
2025-09-09 cs.SE
What do Transgender Software Professionals say about a Career in the Software Industry?
多样性是软件开发的一个重要方面,因为技术影响着现代社会的几乎每一个方面,如果软件行业缺乏多样性,软件产品可能会无意中限制个人群体,而不是促进所有人的平等体验。在这项研究中,我们调查的观点,跨性别的软件专业人士的职业生涯中的软件工程的多样性在软件行业的一个方面。我们的研究结果表明,一方面,跨性别者选择从事软件工程的职业主要有两个原因:a)尽管软件开发环境不能免于歧视,但软件行业对跨性别者来说比其他行业更安全; b)跨性别者偶尔不得不应对性别焦虑、焦虑和对判断的恐惧,软件公司提供的工作灵活性使他们能够更有效地处理这些问题。
2023-03-22 cs.SE
The Influence of Human Aspects on Requirements Engineering-related Activities: Software Practitioners Perspective
需求工程(RE)相关的活动需要在软件工程(SE)中的各种角色之间进行高度协作,例如需求工程师,利益相关者,开发人员等。他们的人口统计,观点,对技术的理解,工作风格,沟通和协作能力使RE高度依赖于人。确定动机、领域知识、沟通技巧、个性、情感、文化等“人的方面”如何影响可再生能源相关活动,将有助于我们从总体上改善可再生能源和可持续能源。本研究的目的是更好地了解当前行业的角度对人的方面的影响,对RE相关的活动,特别是专注于动机和个性,针对软件从业人员参与RE相关的活动。我们的研究结果表明,软件从业者认为动机,领域知识,态度,沟通技巧和个性非常重要的人的方面时,参与RE相关的活动。一组因素被确定为软件从业者的动机因素时,参与RE相关的活动,并确定了重要的个性特征时,参与RE。我们还确定了因素,使个人参与RE相关的活动时,效率较低,并获得了初步的想法,测量个人的性能时,参与RE。我们的研究结果表明,各个领域需要更多的调查,我们总结了一套关键的建议,以进一步研究。
2022-06-06 cs.SE
Aspects of Sustainable Test Processes
测试是一项核心的软件开发活动,具有使软件开发更具可持续性的巨大潜力。在本文中,我们讨论了环境,社会,经济和技术的可持续性映射到测试规划,设计,执行和评估的活动。
2021-04-03 cs.SE
Empirical and Sustainability Aspects of Software Engineering Research in the Era of Large Language Models: A Reflection
University College London(伦敦大学学院);Simula Research Laboratory(西穆拉研究实验室);University of Athens(雅典大学);Monash University(蒙纳士大学)
本文反思了大语言模型时代软件工程研究在基准测试严谨性、可重复性及可持续性方面的挑战,并提出改进建议。
2026-01-19 cs.SE
Social Aspects of Software Testing: Comparative Studies in Asia
本研究试图了解三个不同亚洲国家的软件专业学生从事和维持软件测试职业的动机和抑制因素,即,中国,印度和马来西亚。研究的问题可以是:在不同的亚洲地区,有多少软件专业的学生热衷于从事测试职业,他们选择的原因是什么?为了找到答案,我们开发了一种横截面但简单的基于调查的工具。在这项工作中,我们调查了软件专业的学生如何看待软件测试的作用。来自中国和印度的调查结果显示,学生们并不热衷于从事软件测试工作,但马来西亚的学生对软件测试表现出更积极的态度。该研究还指出了将软件测试活动视为一组依赖于人类的任务的重要性,并强调了进一步研究的必要性,即严格审查软件测试人员对软件测试活动的个人评估。本研究有助于从事软件测试课程的学者了解影响学生学习动机和消极因素的因素,并试图传达积极的观点,即测试具有挑战性,需要批判性思维和创新思想。
2022-05-16 cs.SE
A New Hierarchical Software Architecture Towards Safety-Critical Aspects of a Drone System
为了提高无人机系统的安全性和可靠性,从源代码的角度提出了一种新的分层软件体系结构。所提出的架构使用形式化验证方法来确保每个模块的实现满足其预期的设计规范,从而防止无人机由于意外的软件故障而坠毁。本研究建立在正式验证的操作系统内核、认证套件操作系统(CertiKOS)之上。由于设备驱动程序被认为是影响无人机系统安全的最重要部分,我们主要集中在验证总线驱动程序,如串行外设接口和内部集成电路驱动程序在无人机系统中使用严格的形式化验证方法。已经进行了实验,以证明在设备异常的情况下的可靠性的改善。
2019-05-03 cs.SE
Systematic Mapping Protocol - Coverage of Aspect-Oriented Methodologies for the Early Phases of the Software Development Life Cycle
面向方面的软件开发技术和工具的数量在过去的几年里一直在增加,但它们仍然不够成熟,也没有足够的传播,以包括在项目领导者的工具箱中。软件开发项目必须处理许多风险,项目领导者的主要职能是将风险最小化。使用不成熟的技术、市场新手的工具、未经充分测试的技术等,对于那些有责任执行一个成功的软件开发项目的人来说,这将是非常危险的决定。另一方面,掌握众所周知的工具和技术以及遵守标准和最佳做法,将有助于专业人员作出良好的估计和作出更好的决定。有很多关于面向方面的技术、符号、工具等的建议,但它们还没有统一在一个共同的知识体系上,没有一个成为最流行的方法。我们感兴趣的是面向方面SDLC的早期阶段,包括从生存周期开始到架构设计的各个阶段。我们感兴趣的是描绘面向方面的技术和工具的艺术状态,以及它们所采用的标准的识别。我们的目标是收集所有可用的证据,分析它,并研究在实际项目中应用这些技术,工具和标准的可能性,利用面向方面范式的好处,通过识别科学文献中存在的标准和广泛的方法,技术,符号和工具,并验证它们是否在行业中应用,通过对1995年至2019年期间发表的文献进行系统映射。
2018-09-26 cs.SE
Do Chase Your Tail! Missing Key Aspects Augmentation in Textual Vulnerability Descriptions of Long-tail Software through Feature Inference
针对长尾软件文本漏洞描述关键维度缺失的问题,提出含名称标准化、LLM生成、CWE聚类选例、NLI校验的特征推断框架,提升漏洞分析效率。
2024-12-15 cs.CR cs.SE
Let's Go to the Whiteboard (Again):Perceptions from Software Architects on Whiteboard Architecture Meetings
白板在软件架构师的日常生活中起着至关重要的作用,因为他们经常会在白板上组织会议,讨论新的架构,对架构的一些建议更改,架构和代码之间的不匹配等等。虽然已经研究了很多关于软件架构师,他们产生的架构,以及他们如何产生它们,但仍然缺乏对这些白板会议的详细了解。在本文中,我们提供了一个混合方法的研究,包括半结构化的采访和随后的调查,以了解白板架构会议上的软件架构师的看法。我们重点关注五个方面:(1)为什么要召开这些会议,这些会议参与者的经验水平有什么影响,架构师如何记录会议,会议结束后进行了什么样的更改并将其结果转移到实施中,数字白板扮演什么角色?在研究这些方面时,我们确定了与会议的技术方面和社会方面有关的12项意见。这些见解对进一步的研究有影响,为从业者提供具体的建议,为未来的工具设计提供指导,并建议教育未来的软件架构师的方法。
2022-10-28 cs.SE
What You Use is What You Get: Unforced Errors in Studying Cultural Aspects in Agile Software Development
本文通过在日本和德国的多案例研究,揭示了使用Hofstede文化维度模型表征敏捷软件开发中文化特征时的挑战,指出实证软件工程研究需进行特定案例的文化特征分析。
2024-04-25 cs.SE
Requirements Engineering Aspects of a Geographically Distributed Architecture
我们目前正在进行的工作,地理分布的软件和系统的需求规格说明和分析。在不同的国家或州内或为不同的国家或州甚至在不同的组织内或为不同的组织开发软件和系统意味着对它们的要求在每种特定情况下都可能不同。这些方面自然会影响软件体系结构和整个开发过程。目前的挑战是以系统的方式处理这种多样性,避免矛盾和不遵守。在本文中,我们提出了一个正式的框架,分析的需求多样性,这来自不同的国家或组织的法规,法律和文化方面的差异。该框架还提供了相应的架构视图和方法的需求结构和优化。
2015-08-07 cs.SE
"So what if I used GenAI?" -- Implications of Using Cloud-based GenAI in Software Engineering Research
本文聚焦软件工程研究中使用基于云的GenAI的法律风险,指出数据保护与版权两类核心风险,总结了软件研究人员需知晓的关键要点并提出认知引导清单,以帮助研究者规避责任索赔风险。
2024-12-10 cs.SE
Introducing Aspect-Oriented Programming in Improving the Modularity of Middleware for Internet of Things
物联网(IoT)已成为智慧城市及其应用发展的流行语。在这种情况下,支持软件的开发构成了物联网基础设施的核心部分。中间件位于物联网设备之间,并在它们之间进行交互,以在自动化架构的组件之间交换数据。中间件服务包括握手,数据传输和安全性,其核心功能集。它还包括跨领域的功能服务,如身份验证、日志记录和缓存。能够运行这些中间件服务的软件需要仔细选择良好的软件建模技术。面向对象编程(AOP)是一种软件开发方法,可用于独立封装物联网基础设施中间件服务的核心和横切功能。在本文中,已尝试使用模拟环境,独立建模的两个正交功能的中间件的重点,以提高其模块化。此外,定量测量的核心设计属性的凝聚力已经做了推断在物联网中间件封装的模块的可重用性的改善。基于测量,它被发现,在中间件软件的功能的模块化和可重用性已提高在ANOJ版本相比,其等效的Java版本。
2020-09-23 cs.SE
Finding Relationships between Socio-Technical Aspects and Personality Traits by Mining Developer E-mails
人格特质影响着大多数(如果不是全部的话)人类活动,从人们走路、说话、穿衣和写作的方式,到与他人互动的方式。最重要的是,个性会影响人们做决定的方式,包括在开发人员的情况下,他们在选择他们想要参与的软件项目时所考虑的标准。大多数研究软件开发项目中社会、技术和人为因素的影响的工作都集中在软件质量中沟通的影响上。例如,在发布软件产品的增强版本之前,识别预测器以检测可能包含错误的文件。这些作品中只有少数关注自由/自由和开源软件项目中具有提交权限的开发人员(提交者)的个性特征及其与他们交互的软件工件的关系。本文提出了一种方法,自动识别的基础上,从电子邮件发送的提交人在FLOSS项目的个性特征,揭示在软件开发过程中发生的社会和技术方面之间的关系。我们的实验结果表明,提交者通过他们的电子邮件和他们进行的社会(沟通)和技术活动所投射的人格特质之间存在一些关系。这项工作是一个初步的研究,旨在支持建立有效的工作团队,在软件开发项目的基础上,考虑到他们的个性特征的利益相关者的适当组合。
2016-03-03 cs.SE
Aspects of complexity in automotive software systems and their relation to maintainability effort. A case study
本研究以Scania AB的两个大型车载软件系统为对象开展案例研究,明确了影响可维护性工作量的内外部复杂性来源,验证了复杂性作为可维护性工作量代理指标的有效性,并提出需构建涵盖内外维度的复杂性度量体系。
2025-05-19 cs.SE
Modeling Software Development Methodologies: A Logic Based Approach
在过去的二十年里,软件开发行业的增长趋势使软件工程的不同方面对计算机科学研究社区更加有趣。软件开发生命周期是影响软件开发项目成败的重要因素之一。由于每种软件开发方法都相对地提供了自己的软件开发生命周期,因此将软件开发生命周期编码在工作流表示语言中可以帮助开发人员正确地管理他们的软件项目。此外,这种编码也可以在CASE工具中使用。在这份报告中,我们认为软件开发生命周期作为一个工作流程,可以表示为语义Web和基于规则的语言。这样的考虑让我们分析生命周期的属性。具体来说,我们采取了著名的面向代理的软件开发方法,并表明其相应的生命周期可以指定的事务逻辑容易和简洁。最后,事务逻辑中紧凑而清晰的生命周期表示可以在CASE工具中使用,以指导软件开发人员。
2016-08-03 cs.SE
Human Capital in Software Engineering: A Systematic Mapping of Reconceptualized Human Aspect Studies
投入到软件开发中的人力资本对任何软件项目的成功都起着至关重要的作用。人力资本并不是指个人本身,而是指知识和技能的范围(即,人的方面),在发展过程中投资创造价值。然而,对于这些广义的人的方面如何与项目的健康相关,仍然没有达成共识。在这项研究中,我们将软件工程(SE)的人的方面重新概念化为一个框架(即,人力资本)。该研究提出了一个系统的映射,以调查和分类现有的人的方面的研究,分为四个方面的框架:能力,部署,发展和专门知识(基于全球人力资本指数)。从高级SE出版场所(五篇期刊文章和四次会议)中,我们提取了2013年至2017年期间发表的2,698篇论文。使用搜索标准,我们将结果缩小到340篇论文。最后,我们使用纳入和排除标准手动选择78篇论文(49篇定量研究和29篇定性研究)。使用研究问题,我们发现相关的主题,理论和数据来源。本文的主要成果是一套指标的SE人力资本。这项工作是为了创建一个SE人力资本指数(SE-HCI),以捕捉和排名人的方面,有可能评估项目内的进展,并指出跨项目学习和跨软件项目交流的机会。
2018-05-10 cs.SE cs.SI
Slicing functional aspects out of legacy applications
面向方面的软件开发建立在面向对象开发的基础上,它提供了额外的抽象边界,帮助我们将不同类型的需求分离为所谓的方面。给定一个遗留OO应用程序,识别现有的方面以帮助理解应用程序的结构,并可能将这些方面提取到可以单独维护和重用的单独软件模块中是值得的。我们提出了一种方法来提取功能方面使用程序切片。我们首先描述我们的意思是功能方面,并探讨在何种程度上,程序切片技术可以改善现有的方面挖掘和功能定位方法等方面。然后,我们描述了我们的方法应用到两个中等规模的开放源程序的结果。我们的初步结果表明,程序切片可以产生定义良好的功能方面时,适当的切片标准。最后,我们探讨了候选功能方面的设计质量的影响。
2021-09-24 cs.SE
Towards the Design and Implementation of Aspect-Oriented Programming for Spreadsheets
一个电子表格通常开始作为一个简单的和单用户的软件工件,但是,在其他软件系统中一样频繁,迅速演变成一个复杂的系统,由许多参与者开发。通常,不同的用户处理同一电子表格的不同方面:秘书可能只参与向电子表格添加普通数据,会计师可能定义新的业务规则,而工程师可能需要调整电子表格内容,以便其他软件系统可以使用。不幸的是,电子表格系统不提供模块化机制,因此,前面的一些任务可能通过向电子表格添加侵入性“代码”来定义。在本文中,我们通过设计和实现的面向方面的语言,电子表格,使用户可以在不同的方面工作的电子表格中的模块化的方式。例如,可以定义方面以便向现有电子表格引入新的业务规则,或者操纵电子表格数据以将其移植到另一个系统。方面被定义为面向方面的程序规范,由方面编织器动态地编织到底层电子表格中。在这种面向方面风格的电子表格开发中,不同的用户开发或重用方面,而无需向原始电子表格添加侵入性代码。这样的代码添加/执行的电子表格编织机制,本文提出的。
2015-03-11 cs.SE
The Who, What, How of Software Engineering Research: A Socio-Technical Framework
软件工程是一项社会技术工作,虽然我们的许多贡献集中在技术方面,但人类利益相关者(如软件开发人员)直接受到我们的研究和工具创新的影响,并从中受益。在本文中,我们质疑我们的研究有多少涉及人类和社会问题,并探讨我们在研究设计中研究人类和社会方面的程度。为了回答这些问题,我们开发了一个社会技术研究框架,以捕捉研究的主要受益者(谁),产生的主要类型的研究贡献(什么),以及研究中使用的研究策略(我们如何在方法上提供相关的结果)。我们使用这个Who-What-How框架分析了来自两个被广泛引用的出版场所的151篇论文--国际软件工程会议的主要技术跟踪,以及Springer的经验软件工程杂志--以评估这项已发表的研究在多大程度上明确考虑了人类方面。我们发现,尽管这些论文中的大多数声称所包含的研究应该使人类利益相关者受益,但大多数论文都专注于技术贡献,而没有让人类参与他们的研究。虽然我们的分析范围是两个场地,我们的研究结果表明,需要更多样化和三角的研究策略。特别是,有必要制定战略,旨在更深入地了解软件开发实践的人类和社会方面,以平衡技术创新的设计和评估。我们建议,该框架应在未来的研究设计中使用,以推动软件工程研究明确包括人类和社会的关注,在他们的设计,并提高我们的研究人类利益相关者的相关性。
2020-05-26 cs.SE
Aspects of SOA: An Entry Point for Starters
由于面向服务的体系结构(SOA)是当前最热门的话题之一,并且其采用者(包括业务和IT管理人员)的数量正在以惊人的方式增加,因此必须收集与其相关的重要方面,以便让这些采用者更好地理解它在软件和业务市场中所扮演的角色。这些方面从SOA的定义及其关键组件、精英软件供应商给予它的不同形式的支持、它的演变历史、它与Web服务之间的关系、对它在不同组织中的使用和好处的未来预期、SOA与企业应用集成(EAI)之间的关系、以及可以使用它来克服与其他传统方法相关的限制的各种应用。此外,SOA在软件市场中面临的挑战应该得到解决和讨论,以便能够看到大局,并为他们寻找更好的解决方案。
2012-02-29 cs.SE
Enhancing Human Aspect of Software Engineering using Bayesian Classifier
在目前的情况下,信息技术产业必须在成本、质量、服务或创新方面进行有效的斗争,才能在全球市场上生存。由于技术的快速变革,软件行业需要管理大量隐藏着宝贵信息的数据集。数据采掘技术可以有效地处理这些隐藏的信息,它可以应用于代码优化,故障预测和其他领域,调制软件项目的成功性质。此外,开发产品的效率还取决于项目人员的素质。因此,本文的立场是探索项目人员的潜力,他们的能力和技能组合及其对项目质量的影响。上述目标是使用贝叶斯分类器来实现的,以便捕获人类表现的模式。通过这种方法,在相关数据库中发现的隐藏的和有价值的知识将被总结在统计结构中。这种预测研究模式使项目经理能够通过正确选择项目人员来将失败率降低到一个显著的水平,并提高项目的绩效。
2014-02-11 cs.SE
Free Open Source Communities Sustainability: Does It Make a Difference in Software Quality?
本研究通过贝叶斯分析217个Apache项目,发现FOSS社区可持续性指标对缺陷密度和覆盖率无显著影响,但社区年龄提升部分代码质量指标,且可持续性社区仍存在代码质量退化现象。
2024-02-10 cs.SE
On Gender, Ethnicity, and Culture in Empirical Software Engineering Research
本说明强调了在实证研究中结合调查多样性方面的重要性。它借鉴了心理学的话语,并建议为什么以及如何软件工程学者可以使用多样性方面在他们所有的研究工作。
2019-04-05 cs.CY cs.SE
Software Development Aspects of Integrating Linear Algebra Libraries
本文从软件工程角度分析应用软件集成 Ginkgo 稀疏线性代数库的挑战与收益,并通过 CFD、电网仿真和心脏电生理学等实例,总结实现可持续软件开发的集成方法。
2025-09-19 cs.MS cs.SE
An Empirical Study on Decision-Making Aspects in Responsible Software Engineering for AI
本研究通过访谈、调查与专家验证,揭示了AI负责任软件工程中伦理决策的操作化差距,提出跨学科协作、H型能力与伦理文化是推动其实践的关键。
2025-04-28 cs.SE
Legal Aspects for Software Developers Interested in Generative AI Applications
University of Passau(帕绍大学)
本文探讨了软件开发者在将生成式AI集成到产品中时面临的数据保护和版权法律风险,总结了关键知识以帮助开发者避免责任索赔。
2024-04-25 cs.AI cs.CY cs.LG
A Framework for Aspectual Requirements Validation: An Experimental Study
需求工程是软件工程的一门学科,关注用户和系统需求的识别和处理。面向对象的需求工程(AORE)扩展了现有的需求工程方法,以解决横切关注点引起的纠缠和分散问题。横切关注点被认为是潜在的方面,可能导致主导分解的暴政现象。文档级方面负责在需求文档中产生分散和混乱的需求描述。需求工件的验证是软件开发中的一项重要任务。这项任务确保需求在完整性和一致性方面是正确和有效的,从而减少开发成本,维护和建立一个近似正确的估计工作量和项目完成时间。在本文中,我们提出了一个验证框架,以验证方面的需求和横切关系的关注,从需求工程阶段产生的。建议的框架包括一个高层次和低层次的验证,以实现软件需求规范(SRS)。高层验证与涉众一起验证关注点,而低层验证由需求工程师和分析师使用检查表来验证方面需求。该方法已被评估使用两个AORE方法的实验研究。这些方法是基于视点的AORE与ArCaDe和基于主题/文档方法的词法分析。从研究中获得的结果表明,所提出的框架是一个有效的验证模型AORE文物。
2021-10-08 cs.SE
On the Software and Knowledge Engineering Aspects of the Educational Process
希腊开放大学已开始大规模努力,用明显支持远程学习基本原则的内容加强其教科书材料。目前的挑战是建立一个框架,允许制作一级的内容创作、分发和消费,同时从所获得的技术、教育和组织知识的角度评估这方面的努力。本文提出了一个模型的教育过程中,被用作发展的骨干,并认为其概念和技术的实用性。
2007-01-26 cs.DL cs.SE
Aspect-Based API Review Classification: How Far Can Pre-Trained Transformer Model Go?
API(应用程序编程接口)是可重用的软件库,是现代快速软件开发的构建块。以前的研究表明,程序员经常在主流软件问答(Q&A)平台(如Stack Overflow)上分享和搜索API评论,这促使研究人员设计与自动处理API评论相关的任务和方法。在这些任务中,将API审查分类为不同的方面(例如,性能或安全),这被称为基于方面的API审查分类,非常重要。目前最先进的(SOTA)解决方案是基于传统的机器学习算法。受预训练模型在许多软件工程任务中取得的巨大成功的启发,本文针对基于方面的API评审分类任务,对六个预训练模型进行了微调,并在Uddin等人收集的API评审基准上将它们与当前的SOTA解决方案进行了比较(BERT、RoBERTa、ALBERT和XLNet)是在自然语言上进行预训练的,BERTOverflow是在从Stack Overflow上的帖子中提取的文本语料库上进行预训练的,CosSensBERT是为处理不平衡数据而设计的。结果表明,所有六个微调模型优于传统的机器学习为基础的工具。更具体地说,F1评分的改善范围为21.0%至30.2%。我们还发现,BERTOverflow,一个在Stack Overflow的语料库上预先训练的模型,并没有表现出比BERT更好的性能。结果还表明,CosSensBERT在F1方面也没有表现出比BERT更好的性能,但它仍然值得考虑,因为它在MCC和AU…
2022-01-27 cs.SE
Toward Optimal Psychological Functioning in AI-driven Software Engineering Tasks: The SEWELL-CARE Assessment Framework
本文提出SEWELL-CARE概念框架,从技术、心理和社会多维度评估AI驱动的软件工程任务,旨在提升开发者效率、福祉与心理功能,弥补现有评估忽视人文维度的不足。
2023-11-13 cs.SE
Suggest an Aspect-Oriented Design Approach for UML Communication Diagram
统一建模语言(UML)是一种有效的面向对象软件建模语言,目前的面向对象软件设计方法还不成熟,不能很好地描述软件的并发性、容错性、分布性和持久性等非功能性需求。我们的方法建议使用面向方面的软件开发(AOSD)机制来解决的问题,在UML中的通信图的交互只支持面向对象的机制,因此AOSD允许设计程序,是超出了严格的面向对象的,并可能改善的结构和实现。
2013-07-03 cs.PL cs.SE
Toward Inclusion of Children as Software Engineering Stakeholders
背景:今天,越来越多的软件可供儿童使用。儿童既使用专门为他们开发的软件,也使用为一般用户开发的软件。虽然他们从软件中获得了明显的好处,例如获得创造性工具和学习资源,但儿童也面临着一些风险和不利因素,例如侵犯隐私,不活动或甚至可能导致死亡的安全风险。研究和开发界正在逐一处理和调查软件对儿童的积极和消极影响,但没有一个综合模式将软件工程与儿童作为利益攸关方联系起来。目的:这一系列研究的最终目标是提出有效的方法,使儿童可以参与软件工程活动的利益相关者。具体来说,在本文中,我们调查的质量方面,儿童的利益,质量是一个至关重要的方面,在任何类型的软件开发,特别是对利益相关者,如儿童。方法:我们的贡献主要是基于软件工程(特别是软件质量)和儿童计算机交互之间的交叉点的研究分析。结果如下:我们确定了一组质量和一套初步的指导方针,可以用于研究人员和从业人员在理解软件工程和儿童之间的复杂的相互关系。基于质量和指导方针,研究人员可以设计实证调查,以获得更深入的洞察力的现象,并提出新的软件工程知识,这种类型的利益相关者。结论:这种概念化是迈向一个框架,以支持儿童利益相关者在软件工程的第一步。
2021-01-07 cs.SE
Psychological Aspects of Pair Programming
本研究采用混合实验方法,探究结对编程中不同角色对高校学生内在动机的影响,得出7个相关心理学主题,证实领航-导航角色比同步编程更具趣味性,为人工智能结对研究提供支撑。
2023-06-12 cs.SE
On the costs and profit of software defect prediction
缺陷预测可以成为指导质量保证资源使用的有力工具。然而,尽管许多研究涵盖了缺陷预测的方法以及缺陷预测研究的方法学方面,但缺陷预测的实际成本节约潜力仍不清楚。在本文中,我们关闭这一研究差距,并制定了一个软件缺陷预测的成本模型。我们推导出数学上可证明的边界条件,必须满足的缺陷预测模型,使有一个积极的利润时,使用的缺陷预测模型。我们的成本模型包括质量保证的成本,发布后的缺陷的成本,质量保证未能揭示预测的缺陷的可能性,以及软件工件和缺陷之间的关系等方面。我们使用不同的假设初始化成本模型,进行实验,以显示实际项目的成本行为的趋势。我们的研究结果表明,不切实际的假设,缺陷只影响一个单一的软件工件,这是一个标准的做法,在缺陷预测文献,导致不准确的成本估计。此外,结果表明,机器学习度量的阈值也不适合定义软件缺陷预测的成功标准。
2019-11-11 cs.SE
Measuring affective states from technical debt: A psychoempirical software engineering experiment
软件工程是一项人类活动。尽管如此,在技术债务研究中,人的方面的代表性不足,也许是因为他们具有挑战性的评估。本研究的目的是调查软件从业人员的技术债务和情感状态(感觉,情绪和心情)之间的关系。来自12家公司的40名参与者(N = 40)参加了混合方法的研究,包括重复测量(r = 5)实验(n = 200),调查和半结构化访谈。统计分析表明,不同的设计气味(技术债务的强烈指标)对情感状态产生负面或正面的影响。从定性数据来看,很明显,技术债务激活了情绪频谱的很大一部分,并且在心理上是负担。此外,从业者对技术债务的反应似乎在不同的成熟度水平上下降。我们认为,技术债务中的人为因素是需要考虑的重要因素,因为它们可能导致,例如,拖延、忧虑和倦怠。
2021-05-02 cs.SE
A Community Strategy Framework -- How to obtain Influence on Requirements in Meritocratic Open Source Software Communities?
背景:在开源软件(OSS)社区的需求工程(RE)过程中,参与的公司是众多利益相关者中的一员。调整议程可能会造成与公司内部需求战略的不一致。在具有精英治理或其某些方面的社区中,企业有机会通过积极和共生的参与获得影响力,从而根据自己的议程影响可再生能源进程。目的:本研究的重点是确定哪些方面,企业应该考虑当他们评估他们的需求影响可再生能源过程中的开放源码软件社区,以及什么样的参与的做法,应该考虑,以获得这种影响力。方法:使用设计科学的方法,与18个行业的专业人士从12个不同的软件密集型公司进行了21次采访,探索,设计和验证的问题背景下的工件。结果如下:社区战略框架(CSF),以帮助企业创建社区战略,描述如果和为什么他们需要在一个特定的(精英)OSS社区的可再生能源过程中的影响力,以及公司如何才能获得它。这些方面有助于从业务和技术角度确定OSS项目及其社区的重要性。在考虑获得影响力的可行性和潜力时,采用了社区视角。参与实践的目的是作为一个工具箱,一个公司如何能够与社区,以建立所需的影响力。结论:它的结论是从访谈为基础的验证,拟议的CSF可以为企业提供支持,在创建和定制的社区战略,并帮助他们集中资源的问题,并获得对各自的可再生能源进程所需的影响。
2022-07-29 cs.SE
Quality Assurance And Integration Testing Aspects In Web Based Applications
集成测试是软件测试生存周期的重要阶段之一。随着互联网和Web服务的快速发展,基于Web的应用也在迅速增长,其重要性和复杂性也在不断增加。分布式组件、应用程序的异构性和多样性,以及它们对多平台的支持和协作性,使得这些应用程序变得更加复杂,规模也在迅速增长。这些应用程序的质量保证变得越来越重要。测试是实现和确保这些软件或基于Web的产品质量的关键过程之一。在基于Web的应用程序中涉及到许多测试挑战。但最重要的是,集成是与基于Web的应用程序相关的最关键的测试。在集成测试工作中涉及到许多具有挑战性的因素。这些因素对基于Web的应用程序的整体质量有近70%到80%的影响。在软件行业中,不同类型的测试方法被从业者用来解决与集成相关的问题,这些问题是由于基于Web的应用程序的复杂性不断增加。
2012-07-13 cs.SE
Ethical Aspects of ChatGPT in Software Engineering Research
本文通过文献调查、问卷调研、ISM和MICMAC方法,系统识别并分析了在软件工程研究中使用ChatGPT的激励因素、阻碍因素和伦理原则,构建了层级与聚类决策模型,为伦理化整合ChatGPT提供策略基准。
2023-08-13 cs.SE
Can Transformer Models Effectively Detect Software Aspects in StackOverflow Discussion?
Ahsanullah University of Science and Technology(阿萨努拉科技大学)
针对开发者难从社区讨论中快速定位软件关键特性的问题,本文用Opiner数据集测试多种Transformer模型的软件方面检测性能,发现多数场景下优于SVM基线,但部分方面检测效果差,且大架构表现不如小架构。
2022-09-24 cs.CL cs.SE
Facets of Software Doping
本文提供了一个非正式的讨论软件兴奋剂的正式方面。
2018-03-27 cs.LO cs.SE
Reduce, Reuse, Recycle: Building Greener Sustainable Software
针对软件开发中常被忽视的能耗问题,本文分析基础软件操作的能源影响,证明通过能源意识的编程决策可实现显著节能并推动绿色可持续软件。
2023-11-03 cs.PF cs.SE
AI's Impact on Traditional Software Development
本文探讨AI在传统软件开发中的应用,涵盖代码生成、智能测试、AI调试及CI/CD流水线,分析其提升效率与准确性的优势,并讨论过度依赖、伦理及技术限制等挑战。
2025-02-05 cs.SE
An Introduction to Software Ecosystems
本章介绍软件生态系统的定义、分类与示例,聚焦其开发、工具与分析层面,阐释社会技术依赖网络,并梳理相关术语及研究方法。
2023-07-28 cs.SE
Role of Ontology Training to Software Engineering Students
软件工程的学生努力发展系统的观点,因为大多数软件工程方法集中在开发系统的一个特定方面。缺乏统一的覆盖面的主题系统建模被确定为这一问题背后的根本原因。本文从系统的角度阐述了本体论在系统构建中的作用。本体训练的必要性,以克服这个问题的一种手段的情况下。文中还介绍了一门典型的本体论课程的教学内容。
2019-10-17 cs.SE
Synchronised Visualisation of Software Process and Product Artefacts: Concept, Design and Prototype Implementation
内容:大多数以前的软件可视化(SV)的研究主要集中在使无形的软件产品文物方面更加明显。虽然毫无疑问是有用的,但这种关注意味着软件过程可视化受到的关注要少得多。目的:本文介绍了概念可视化,一种新的SV方法,它建立在著名的CodeCity隐喻的基础上,通过将软件代码文物与软件开发过程相结合,以链接和同步这些通常独立的组件。方法:虽然大多数先前的SV研究都集中在表示代码中已经可用的内容(即,实现)或从其导出的信息(即,不同的度量),所提出的方法反而使得设计概念和原始开发者的意图(在软件开发和维护方面都是重要的信息源)在可视化环境中容易地和上下文地可用,该可视化环境将代码工件与它们的原始功能需求和开发活动紧密地集成。结果如下:我们的方法已经在一个名为ScrumCity的原型工具中实现,并使用六个真实世界的开源系统进行了概念验证。初步的案例研究已进一步与现实世界的数据进行。结论:在ScrumCity中实现的概念可视化显示了早期的承诺,使开发人员和管理人员(以及潜在的其他利益相关者)能够以同步的方式遍历和探索软件产品和过程工件的多个方面,实现两者之间的可追溯性。
2021-05-03 cs.SE
A fourth explanation to Brooks' Law - The aspect of group developmental psychology
Brooks定律在实践中经常被引用,它指出在后期的软件项目中增加人力会使其更晚。Brooks自己给出了三种解释,只涉及具体的任务相关问题,比如向新成员介绍正在完成的工作,通信开销,或者难以划分一些编程任务。通过对群体发展心理学的描述,我们提出了对该定律的第四种解释,即当新成员加入时,群体将回落到其群体发展中,从而导致重新制定群体规范、群体目标、定义角色等,这些也将随着时间的推移而改变。我们表明,这第四个解释是很重要的,当试图理解布鲁克斯定律,并增加组发展的角度可能有助于软件开发组织在管理项目。
2019-04-04 cs.SE
A Cognitive and Machine Learning-Based Software Development Paradigm Supported by Context
认知和机器学习(ML)使能系统的使用的进步推动了对新方法和工具的追求,以支持支持软件开发人员执行他们的任务。首先,由于软件开发是一项复杂和动态的活动,这些任务高度依赖于软件项目及其上下文的特征,开发人员需要基于任务上下文的信息和指导方面的全面支持。其次,缺乏基于会话引导代理的方法,这些方法考虑了注意力和记忆力等认知方面。第三,还缺乏利用历史隐式或隐性数据来推断关于项目任务的新知识的技术,诸如相关任务、任务专家、任务完成和警告所需的相关信息,以及过程的导航方面,诸如接下来执行什么任务和最佳任务排序。基于这些挑战,本文介绍了一种新的模式,人机软件支持的背景下,认知辅助,和机器学习,并简要介绍了正在进行的研究活动,以实现这一模式。该研究利用了上下文感知软件流程、聊天机器人等认知计算和推荐系统等机器学习中提供的紧急方法之间的协同作用。这些新颖的范例有可能改变软件开发的方式,允许开发人员在参与项目时实时接收有价值的信息和指导。
2021-02-10 cs.SE
Exploring Explainability: A Definition, a Model, and a Knowledge Catalogue
软件系统日益复杂,软件支持的决策在我们的社会中产生了影响,这就唤醒了对透明、负责和值得信赖的软件的需求。可解释性被认为是实现这些品质的一种手段。它被认为是一种新兴的非功能需求(NFR),对系统质量有重大影响。然而,为了将这个NFR整合到系统中,我们需要从软件工程的角度理解可解释性意味着什么,以及它如何影响系统中的其他质量方面。这允许对不同质量方面之间的相互关系所产生的好处和可能的设计问题进行早期分析。然而,可解释性是目前在需求工程领域的研究不足,缺乏概念模型和知识目录,支持需求工程过程和系统设计。在这项工作中,我们通过提出一个定义,一个模型和一个可解释性目录来弥合这一差距。它们说明了可解释性如何与其他质量方面相互作用,以及它如何影响系统的各个质量维度。为此,我们进行了跨学科的系统性文献综述,并与专家在研讨会上验证了我们的研究结果。
2021-08-06 cs.SE
An Assessment of the Consistency for Software Measurement Methods
一致性,定义为要求由不同的评级者使用相同的方法对同一项目进行的一系列测量应该产生类似的结果,是软件测量方法中要考虑的最重要的方面之一。尽管如此,人们普遍认为,许多测量方法在测量过程中引入了不受欢迎的主观性。这种认识促使一些组织对标准方法进行了修订,其主要目的是通过对那些被认为会引入更大程度的主观性的方面进行适当的修改来提高其一致性,必须对方法的每次修订进行经验评估,以确定在多大程度上实现了提高一致性的目标。在本文中,我们将定义一个同质统计量,用于描述方法的一致性水平,我们将开展统计分析,以得出结论,是否测量方法比其他方法更一致。
2002-04-09 cs.SE
Rigorous Description Of Design Components Functionality: An Approach Based Contract
当前的软件构件模型使得基于构件的软件工程成为现实。然而,这些模型是有限的,在这个意义上说,他们的支持特性/规格的设计组件主要处理语法问题。为了避免组件的错配和误用,需要更全面的软件组件规范。在本文中,我们提出了一种基于契约的方法来分析和建模的两个方面(功能和非功能)属性的设计组件和他们的组合,以检测和纠正组合错误。这种方法允许表征设计组件的结构,界面和行为方面。为了实现这一点,我们提出了一种模式契约语言,它捕获了与一系列模式相关的结构和行为需求,以及作为结果得到保证的系统属性。此外,我们建议使用的LOTOS语言作为正式这些方面的ADL。我们通过将其应用于标准设计来说明该方法
2014-02-13 cs.SE
M3triCity: Visualizing Evolving Software & Data Cities
在3D中可视化软件系统的城市隐喻已经被广泛探索,并导致了许多不同的实现和方法。所有方法的共同点是关注软件工件,而很少考虑与系统使用的数据和信息(存储在数据库和文件中)有关的方面。我们提出M3triCity,一个交互式的Web应用程序,其目标是可视化面向对象的软件系统,它们的演变,以及它们访问数据和信息的方式。我们说明了它可以用于程序的理解和数据密集型软件系统的演化分析。演示视频网址:https://youtu.be/uBMvZFIlWtk
2022-04-21 cs.SE