首页 > 最新文献

Journal of Software-Evolution and Process最新文献

英文 中文
When rationality meets intuition: A research agenda for software design decision-making 当理性遇到直觉:软件设计决策研究议程
IF 1.7 4区 计算机科学 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2024-03-31 DOI: 10.1002/smr.2664
Carianne Pretorius, Maryam Razavian, Katrin Eling, Fred Langerak

As society's reliance on software systems escalates over time, so too does the cost of failure of these systems. Meanwhile, the complexity of software systems, as well as of their designs, is also ever-increasing, influenced by the proliferation of new tools and technologies to address intended societal needs. The traditional response to this complexity in software engineering and software architecture has been to apply rationalistic approaches to software design through methods and tools for capturing design rationale and evaluating various design options against a set of criteria. However, research from other fields demonstrates that intuition may also hold benefits for making complex design decisions. All humans, including software designers, use intuition and rationality in varying combinations. The aim of this article is to provide a comprehensive overview of what is known and unknown from existing research regarding the use and performance consequences of using intuition and rationality in software design decision-making. To this end, a systematic literature review has been conducted, with an initial sample of 3909 unique publications and a final sample of 26 primary studies. We present an overview of existing research, based on the literature concerning intuition and rationality use in software design decision-making and propose a research agenda with 14 questions that should encourage researchers to fill identified research gaps. This research agenda emphasizes what should be investigated to be able to develop support for the application of the two cognitive processes in software design decision-making.

随着社会对软件系统的依赖程度与日俱增,这些系统发生故障的代价也越来越高。同时,软件系统及其设计的复杂性也在不断增加,这是受为满足预期社会需求而不断涌现的新工具和新技术的影响。软件工程和软件体系结构对这种复杂性的传统应对方法是,通过各种方法和工具来捕捉设计原理,并根据一系列标准来评估各种设计方案,从而将理性主义方法应用到软件设计中。然而,其他领域的研究表明,直觉也能为复杂的设计决策带来益处。包括软件设计师在内的所有人类都会以不同的方式结合使用直觉和理性。本文旨在全面概述现有研究中关于在软件设计决策中使用直觉和理性及其性能后果的已知和未知内容。为此,我们进行了一次系统的文献综述,初始样本为 3909 篇独特的出版物,最终样本为 26 项主要研究。我们在有关软件设计决策中直觉和理性使用的文献基础上,对现有研究进行了概述,并提出了包含 14 个问题的研究议程,以鼓励研究人员填补已发现的研究空白。该研究议程强调了为支持在软件设计决策中应用这两种认知过程而应进行的调查。
{"title":"When rationality meets intuition: A research agenda for software design decision-making","authors":"Carianne Pretorius,&nbsp;Maryam Razavian,&nbsp;Katrin Eling,&nbsp;Fred Langerak","doi":"10.1002/smr.2664","DOIUrl":"10.1002/smr.2664","url":null,"abstract":"<p>As society's reliance on software systems escalates over time, so too does the cost of failure of these systems. Meanwhile, the complexity of software systems, as well as of their designs, is also ever-increasing, influenced by the proliferation of new tools and technologies to address intended societal needs. The traditional response to this complexity in software engineering and software architecture has been to apply rationalistic approaches to software design through methods and tools for capturing design rationale and evaluating various design options against a set of criteria. However, research from other fields demonstrates that intuition may also hold benefits for making complex design decisions. All humans, including software designers, use intuition and rationality in varying combinations. The aim of this article is to provide a comprehensive overview of what is known and unknown from existing research regarding the use and performance consequences of using intuition and rationality in software design decision-making. To this end, a systematic literature review has been conducted, with an initial sample of 3909 unique publications and a final sample of 26 primary studies. We present an overview of existing research, based on the literature concerning intuition and rationality use in software design decision-making and propose a research agenda with 14 questions that should encourage researchers to fill identified research gaps. This research agenda emphasizes what should be investigated to be able to develop support for the application of the two cognitive processes in software design decision-making.</p>","PeriodicalId":48898,"journal":{"name":"Journal of Software-Evolution and Process","volume":"36 9","pages":""},"PeriodicalIF":1.7,"publicationDate":"2024-03-31","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://onlinelibrary.wiley.com/doi/epdf/10.1002/smr.2664","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"140360862","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
An empirical investigation of the relationship between pattern grime and code smells 模式污垢与代码气味之间关系的实证调查
IF 1.7 4区 计算机科学 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2024-03-21 DOI: 10.1002/smr.2666
Maha Alharbi, Mohammad Alshayeb

Developers are encouraged to adopt good design practices to maintain good software quality during the system's evolution. However, some modifications and changes to the system could cause code smells and pattern grime, which might incur more maintenance effort. As the presence of both code smells and pattern grime is considered a bad sign and raises a flag at code segments that need more careful examination, a potential connection between them may exist. Therefore, the main objective of this paper is to (1) empirically investigate the potential relationship between the accumulation of pattern grime and the presence of code smells and (2) evaluate the significance of individual code smells when they appear in a specific pattern grime category. To achieve this goal, we performed an empirical study using six-grime metrics and 10 code smells on five Java open-source projects ranging from 217 to 563 classes. Our statistical results indicate that, in general, the growth of grime is more likely to co-occur with code smells using Spearman's correlation and Odd Ratio test. Specifically, there is a strong positive association between the growth of pattern grime at the class level and the presence of Shotgun Surgery smell according to the result of applying the Apriori algorithm, which gives conviction values equal to 1.66. The findings in this paper are helpful for developers and researchers as the presence of pattern grime could be considered a factor in improving the performance of existing smell detection methods. Furthermore, the link between grime and smells can be exploited as a hint for smell distribution in the system.

我们鼓励开发人员采用良好的设计实践,以便在系统演进过程中保持良好的软件质量。但是,对系统的某些修改和变更可能会导致代码异味和模式污垢,从而增加维护工作量。由于代码臭味和模式污垢的出现被认为是一个不好的征兆,会在需要更仔细检查的代码段上亮起红灯,因此它们之间可能存在潜在的联系。因此,本文的主要目的是:(1) 通过实证研究模式污垢的积累与代码气味的存在之间的潜在关系;(2) 评估出现在特定模式污垢类别中的单个代码气味的重要性。为了实现这一目标,我们在五个 Java 开源项目(从 217 个类到 563 个类)中使用六种污垢度量标准和 10 种代码气味进行了实证研究。我们的统计结果表明,一般来说,使用斯皮尔曼相关性和奇数比检验,污垢的增长更有可能与代码气味同时出现。具体地说,根据 Apriori 算法的应用结果,在类的层面上,模式污垢的增长与 Shotgun Surgery 气味的存在之间有很强的正相关性,该算法给出的确信值等于 1.66。本文的研究结果对开发人员和研究人员很有帮助,因为污垢模式的存在可被视为提高现有气味检测方法性能的一个因素。此外,污垢与气味之间的联系可以作为系统中气味分布的提示。
{"title":"An empirical investigation of the relationship between pattern grime and code smells","authors":"Maha Alharbi,&nbsp;Mohammad Alshayeb","doi":"10.1002/smr.2666","DOIUrl":"10.1002/smr.2666","url":null,"abstract":"<p>Developers are encouraged to adopt good design practices to maintain good software quality during the system's evolution. However, some modifications and changes to the system could cause code smells and pattern grime, which might incur more maintenance effort. As the presence of both code smells and pattern grime is considered a bad sign and raises a flag at code segments that need more careful examination, a potential connection between them may exist. Therefore, the main objective of this paper is to (1) empirically investigate the potential relationship between the accumulation of pattern grime and the presence of code smells and (2) evaluate the significance of individual code smells when they appear in a specific pattern grime category. To achieve this goal, we performed an empirical study using six-grime metrics and 10 code smells on five Java open-source projects ranging from 217 to 563 classes. Our statistical results indicate that, in general, the growth of grime is more likely to co-occur with code smells using Spearman's correlation and Odd Ratio test. Specifically, there is a strong positive association between the growth of pattern grime at the class level and the presence of Shotgun Surgery smell according to the result of applying the Apriori algorithm, which gives conviction values equal to 1.66. The findings in this paper are helpful for developers and researchers as the presence of pattern grime could be considered a factor in improving the performance of existing smell detection methods. Furthermore, the link between grime and smells can be exploited as a hint for smell distribution in the system.</p>","PeriodicalId":48898,"journal":{"name":"Journal of Software-Evolution and Process","volume":"36 9","pages":""},"PeriodicalIF":1.7,"publicationDate":"2024-03-21","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"140196261","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Richen: Automated enrichment of Git documentation with usage examples and scenarios Richen:利用使用实例和场景自动丰富 Git 文档
IF 1.7 4区 计算机科学 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2024-03-13 DOI: 10.1002/smr.2662
Chaochao Shen, Wenhua Yang, Haitao Jia, Minxue Pan, Yu Zhou

As the predominant modern version control system, Git has become an indispensable tool for both commercial and open-source software projects. It substantially improves software development effectiveness and efficiency through its distributed version control system, fostering seamless collaboration among teams and across locations. However, research has found that many developers have doubts about using Git commands, while the official Git documentation is rather scanty, that is, lacking sufficient explanations and examples. To help developers learn and use Git commands, we propose the first approach (Richen) for enriching Git documentation with usage examples and scenarios by leveraging crowd knowledge from Stack Overflow. Richen retrieves Git-related posts from Stack Overflow, extracts relevant Q&A pairs, and selects representative command usages, including usage examples and scenarios, for different Git commands. Experimental results have shown that Richen can extract informative and concise command usages for Git commands. Compared with alternative methods adapted from API usage mining, the command usages obtained by Richen have significant advantages in terms of relevance, readability, and usability. Furthermore, we have shown through an empirical study that the command usages extracted by Richen can better help developers complete Git command-related tasks.

作为现代版本控制系统的主流,Git 已成为商业和开源软件项目不可或缺的工具。它通过分布式版本控制系统大大提高了软件开发的效果和效率,促进了团队间和跨地域的无缝协作。然而,研究发现,许多开发人员对 Git 命令的使用心存疑虑,而 Git 的官方文档又相当匮乏,即缺乏足够的解释和示例。为了帮助开发人员学习和使用 Git 命令,我们提出了第一种方法(Richen),通过利用 Stack Overflow 的人群知识来丰富 Git 文档的使用示例和场景。Richen 从 Stack Overflow 中检索与 Git 相关的帖子,提取相关的 Q&A 对,并针对不同的 Git 命令选择有代表性的命令用法,包括使用示例和场景。实验结果表明,Richen 可以为 Git 命令提取信息丰富、简洁明了的命令用法。与其他应用程序接口用法挖掘方法相比,Richen 获得的命令用法在相关性、可读性和可用性方面都有显著优势。此外,我们还通过实证研究证明,Richen 提取的命令用法能更好地帮助开发人员完成与 Git 命令相关的任务。
{"title":"Richen: Automated enrichment of Git documentation with usage examples and scenarios","authors":"Chaochao Shen,&nbsp;Wenhua Yang,&nbsp;Haitao Jia,&nbsp;Minxue Pan,&nbsp;Yu Zhou","doi":"10.1002/smr.2662","DOIUrl":"10.1002/smr.2662","url":null,"abstract":"<p>As the predominant modern version control system, Git has become an indispensable tool for both commercial and open-source software projects. It substantially improves software development effectiveness and efficiency through its distributed version control system, fostering seamless collaboration among teams and across locations. However, research has found that many developers have doubts about using Git commands, while the official Git documentation is rather scanty, that is, lacking sufficient explanations and examples. To help developers learn and use Git commands, we propose the first approach (Richen) for enriching Git documentation with usage examples and scenarios by leveraging crowd knowledge from Stack Overflow. Richen retrieves Git-related posts from Stack Overflow, extracts relevant Q&amp;A pairs, and selects representative command usages, including usage examples and scenarios, for different Git commands. Experimental results have shown that Richen can extract informative and concise command usages for Git commands. Compared with alternative methods adapted from API usage mining, the command usages obtained by Richen have significant advantages in terms of relevance, readability, and usability. Furthermore, we have shown through an empirical study that the command usages extracted by Richen can better help developers complete Git command-related tasks.</p>","PeriodicalId":48898,"journal":{"name":"Journal of Software-Evolution and Process","volume":"36 8","pages":""},"PeriodicalIF":1.7,"publicationDate":"2024-03-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"140152248","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
ReInstancer: An automatic refactoring approach for Instanceof pattern matching ReInstancer:针对 Instanceof 模式匹配的自动重构方法
IF 1.7 4区 计算机科学 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2024-03-12 DOI: 10.1002/smr.2661
Yang Zhang, Shuai Hong

The instanceof pattern matching can improve the code quality and readability by removing the redundant typecasting and simplifying the design in different scenarios. However, existing works do not provide sufficient support for refactoring instanceof pattern matching. This paper first identifies several cases that cannot be well handled by existing IDEs. Based on these observations, we propose a novel approach called ReInstancer to refactor instanceof pattern matching automatically. ReInstancer conducts program analysis for multi-branch statements to obtain pattern variables. After analyzing these patterns, the multi-branch statements are optimized and finally refactored into switch statements or expressions. ReInstancer is evaluated by 20 real-world projects with more than 7,700 instanceof pattern matching. The experimental results demonstrate that a total of 3,558 instanceof expressions and 228 multi-branch statements are refactored within 10.8 s on average for each project. ReInstancer improves the code quality by reducing redundant typecasting, demonstrating its effectiveness.

instanceof 模式匹配可以去除多余的类型转换,简化不同场景下的设计,从而提高代码质量和可读性。然而,现有的工作并没有为重构 instanceof 模式匹配提供足够的支持。本文首先确定了现有集成开发环境无法很好处理的几种情况。基于这些观察结果,我们提出了一种名为 ReInstancer 的新方法,用于自动重构 instanceof 模式匹配。ReInstancer 对多分支语句进行程序分析,以获取模式变量。分析这些模式后,多分支语句将被优化,并最终重构为开关语句或表达式。ReInstancer 在 20 个实际项目中进行了评估,模式匹配实例超过 7,700 个。实验结果表明,每个项目平均在 10.8 秒内重构了 3,558 个 instanceof 表达式和 228 个多分支语句。ReInstancer 通过减少冗余类型铸造提高了代码质量,证明了它的有效性。
{"title":"ReInstancer: An automatic refactoring approach for Instanceof pattern matching","authors":"Yang Zhang,&nbsp;Shuai Hong","doi":"10.1002/smr.2661","DOIUrl":"10.1002/smr.2661","url":null,"abstract":"<p>The <i>instanceof</i> pattern matching can improve the code quality and readability by removing the redundant typecasting and simplifying the design in different scenarios. However, existing works do not provide sufficient support for refactoring <i>instanceof</i> pattern matching. This paper first identifies several cases that cannot be well handled by existing IDEs. Based on these observations, we propose a novel approach called <i>ReInstancer</i> to refactor <i>instanceof</i> pattern matching automatically. <i>ReInstancer</i> conducts program analysis for multi-branch statements to obtain pattern variables. After analyzing these patterns, the multi-branch statements are optimized and finally refactored into <i>switch</i> statements or expressions. <i>ReInstancer</i> is evaluated by 20 real-world projects with more than 7,700 <i>instanceof</i> pattern matching. The experimental results demonstrate that a total of 3,558 <i>instanceof</i> expressions and 228 multi-branch statements are refactored within 10.8 s on average for each project. <i>ReInstancer</i> improves the code quality by reducing redundant typecasting, demonstrating its effectiveness.</p>","PeriodicalId":48898,"journal":{"name":"Journal of Software-Evolution and Process","volume":"36 8","pages":""},"PeriodicalIF":1.7,"publicationDate":"2024-03-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"140124595","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Introduction to the special issue: “Software Quality for Modern Systems” 特刊简介:"现代系统的软件质量
IF 1.7 4区 计算机科学 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2024-03-07 DOI: 10.1002/smr.2663
Guglielmo De Angelis, Hyunsook Do, Bao N. Nguyen
<p>It is with a great pleasure that we, as the Guest Editors, can finally present the Special Issue on “Software Quality for Modern Systems” for the <i>Journal of Software: Evolution and Process</i>.</p><p>Software pervasiveness in modern systems strongly affects both industry and digital society. As a notable recent example, the proliferation of artificial intelligence (AI) technologies is continuously leading to emerging needs and expectations from both software producers and consumers. At the same time, infrastructures, software components, and applications aim to hide their increasing complexity in order to appear more human-centric. However, the potential risk from design errors, poor integration, and time-consuming engineering phases can result in unreliable solutions that can barely meet their intended objectives. In this context, software engineering processes keep demanding for the investigation of novel and further refined approaches to software quality assurance (SQA).</p><p>Software testing automation is a discipline that has produced noteworthy research in the last decades. The search for solutions to automatically test any concept of software is critical, and it encompasses several areas. These include generating test cases, test oracles, and test doubles (e.g., dummies, stubs, mocks, and fakes); defining test selection and prioritization criteria; engineering infrastructures governing; and optimizing the execution of testing sessions locally or remotely in the cloud.</p><p>In this sense, we launched this special issue in order to explore current research methods, empirical evaluations, or industrial case studies involving software test automation for modern software systems such as AI solutions or applications, mobile applications, adaptive systems, or distributed and cloud platforms. Accordingly, we crafted a dedicated call for papers, inviting both the research and industrial communities to submit research papers in test automation focusing on improving various software quality attributes.</p><p>The Special Issue has been originally conceived within the context of the 3rd International Conference on Automation of Software Test (AST 2022). The authors of the best papers accepted at AST 2022 have been invited to submit an extended version of their previous work. In addition, the editors have decided to keep the submissions open for any other contributions aligned with the objectives of the Special Issue.</p><p>The Special Issue attracted the interest of researchers from all over the world: mostly from Europe, but also from Asia, Australia, Middle East, North Africa, and North America. The Special Issue received 7 scientific papers during the submission period between August and December 2022. Among these, 4 submissions were finally accepted for publication, and an article is an extended version of a work presented at AST 2022. In the following, we report a brief resume of the accepted papers, but we also invite the reader to consul
作为特邀编辑,我们非常荣幸地为《软件学报》推出 "现代系统的软件质量 "特刊:现代系统中软件的普遍性对工业和数字社会都产生了重大影响。最近的一个显著例子是,人工智能(AI)技术的普及正不断引发软件生产商和消费者的新需求和新期望。与此同时,基础设施、软件组件和应用程序也在努力掩盖其日益增加的复杂性,以便显得更加以人为本。然而,设计错误、集成不佳和工程阶段耗时所带来的潜在风险可能会导致解决方案不可靠,难以达到预期目标。在这种情况下,软件工程过程需要不断研究新的和进一步完善的软件质量保证(SQA)方法。软件测试自动化是一门学科,在过去几十年中产生了值得关注的研究成果。寻找自动测试任何软件概念的解决方案至关重要,它包括多个领域。这些领域包括生成测试用例、测试谕令和测试替身(例如,假人、存根、模拟和伪造);定义测试选择和优先级标准;工程基础设施管理;以及优化本地或远程云测试会话的执行。从这个意义上说,我们推出本特刊的目的是为了探索当前的研究方法、经验评估或工业案例研究,这些研究涉及现代软件系统的软件测试自动化,如人工智能解决方案或应用程序、移动应用程序、自适应系统或分布式和云平台。因此,我们精心设计了一个专门的论文征集活动,邀请研究界和工业界提交测试自动化方面的研究论文,重点关注改进各种软件质量属性。本特刊最初是在第三届软件测试自动化国际会议(AST 2022)的背景下构思的。AST 2022 会议接受的优秀论文的作者受邀提交其以前工作的扩展版本。此外,编辑们还决定对符合本特刊目标的任何其他投稿保持开放。本特刊吸引了世界各地研究人员的兴趣:主要来自欧洲,也有来自亚洲、澳大利亚、中东、北非和北美的研究人员。在 2022 年 8 月至 12 月的投稿期间,特刊共收到 7 篇科学论文。其中,4 篇最终被接受发表,还有一篇文章是在 AST 2022 上发表的作品的扩展版本。在下文中,我们将简要报告录用论文的简历,同时也邀请读者查阅全部稿件。在论文《了解安卓应用程序构建系统的质量和演进》1 中,刘培等人介绍了挖掘软件仓库研究中关于开源安卓仓库中构建系统使用情况的方法和结果。作者研究了从 7 万多个 AndroZooOpen 项目中选取的 6960 个项目组成的大型数据集。这项研究的结果为研究人员和从业人员提供了一些有趣的经验见解,包括安卓项目最常用的构建系统及其原因;这些项目中的依赖关系通常是如何演变和管理的。这些见解对于了解当今现代软件是如何构建和维护的非常重要:Klein 等人在论文《探索语音用户界面的使用环境:用户体验质量测试的情境依赖性》2 中对语音用户界面(VUI)系统的使用环境进行了全面研究。研究结果为现代应用程序用户界面的设计提供了许多有益的启示,而不局限于传统的命令行和图形界面。在题为 "比较三种网络测试自动化方法的实证研究"(An empirical study to compare three web test automation approaches:在题为 "比较三种网络测试自动化方法的实证研究:基于 NLP、可编程和捕获&amp;重放 "3 中,M. Leotta 等人在网络环境中提出了一种基于 NLP 的测试自动化方法,并进行了一系列案例研究,将所提出的方法与两种传统方法进行了比较。研究结果表明,对于中小型测试套件而言,基于 NLP 的测试自动化方法更具竞争力,而且还能降低总累积成本(以测试用例开发和测试用例演化为衡量标准)。
{"title":"Introduction to the special issue: “Software Quality for Modern Systems”","authors":"Guglielmo De Angelis,&nbsp;Hyunsook Do,&nbsp;Bao N. Nguyen","doi":"10.1002/smr.2663","DOIUrl":"10.1002/smr.2663","url":null,"abstract":"&lt;p&gt;It is with a great pleasure that we, as the Guest Editors, can finally present the Special Issue on “Software Quality for Modern Systems” for the &lt;i&gt;Journal of Software: Evolution and Process&lt;/i&gt;.&lt;/p&gt;&lt;p&gt;Software pervasiveness in modern systems strongly affects both industry and digital society. As a notable recent example, the proliferation of artificial intelligence (AI) technologies is continuously leading to emerging needs and expectations from both software producers and consumers. At the same time, infrastructures, software components, and applications aim to hide their increasing complexity in order to appear more human-centric. However, the potential risk from design errors, poor integration, and time-consuming engineering phases can result in unreliable solutions that can barely meet their intended objectives. In this context, software engineering processes keep demanding for the investigation of novel and further refined approaches to software quality assurance (SQA).&lt;/p&gt;&lt;p&gt;Software testing automation is a discipline that has produced noteworthy research in the last decades. The search for solutions to automatically test any concept of software is critical, and it encompasses several areas. These include generating test cases, test oracles, and test doubles (e.g., dummies, stubs, mocks, and fakes); defining test selection and prioritization criteria; engineering infrastructures governing; and optimizing the execution of testing sessions locally or remotely in the cloud.&lt;/p&gt;&lt;p&gt;In this sense, we launched this special issue in order to explore current research methods, empirical evaluations, or industrial case studies involving software test automation for modern software systems such as AI solutions or applications, mobile applications, adaptive systems, or distributed and cloud platforms. Accordingly, we crafted a dedicated call for papers, inviting both the research and industrial communities to submit research papers in test automation focusing on improving various software quality attributes.&lt;/p&gt;&lt;p&gt;The Special Issue has been originally conceived within the context of the 3rd International Conference on Automation of Software Test (AST 2022). The authors of the best papers accepted at AST 2022 have been invited to submit an extended version of their previous work. In addition, the editors have decided to keep the submissions open for any other contributions aligned with the objectives of the Special Issue.&lt;/p&gt;&lt;p&gt;The Special Issue attracted the interest of researchers from all over the world: mostly from Europe, but also from Asia, Australia, Middle East, North Africa, and North America. The Special Issue received 7 scientific papers during the submission period between August and December 2022. Among these, 4 submissions were finally accepted for publication, and an article is an extended version of a work presented at AST 2022. In the following, we report a brief resume of the accepted papers, but we also invite the reader to consul","PeriodicalId":48898,"journal":{"name":"Journal of Software-Evolution and Process","volume":"36 8","pages":""},"PeriodicalIF":1.7,"publicationDate":"2024-03-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://onlinelibrary.wiley.com/doi/epdf/10.1002/smr.2663","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"140074740","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Application programming interface recommendation for smart contract using deep learning from augmented code representation 利用增强代码表示的深度学习为智能合约推荐应用程序编程接口
IF 1.7 4区 计算机科学 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2024-03-03 DOI: 10.1002/smr.2658
Jie Cai, Qian Cai, Bin Li, Jiale Zhang, Xiaobing Sun

Application programming interface (API) recommendation plays a crucial role in facilitating smart contract development by providing developers with a ranked list of candidate APIs for specific recommendation points. Deep learning-based approaches have shown promising results in this field. However, existing approaches mainly rely on token sequences or abstract syntax trees (ASTs) for learning recommendation point-related features, which may overlook the essential knowledge implied in the relations between or within statements and may include task-irrelevant components during feature learning. To address these limitations, we propose a novel code graph called pruned and augmented AST (pa-AST). Our approach enhances the AST by incorporating additional knowledge derived from the control and data flow relations between and within statements in the smart contract code. Through this augmentation, the pa-AST can better represent the semantic features of the code. Furthermore, we conduct AST pruning to eliminate task-irrelevant components based on the identified flow relations. This step helps mitigate the interference caused by these irrelevant parts during the model feature learning process. Additionally, we extract the API sequence surrounding the recommendation point to provide supplementary knowledge for the model learning. The experimental results demonstrate our proposed approach achieving an average mean reciprocal rank (MRR) of 68.02%, outperforming the baselines' performance. Furthermore, through ablation experiments, we explore the effectiveness of our proposed code representation approach. The results indicate that combining pa-AST with the API sequence yields improved performance compared with using them individually. Moreover, our AST augmentation and pruning techniques significantly contribute to the overall results.

应用编程接口(API)推荐通过为开发人员提供特定推荐点的候选 API 排名列表,在促进智能合约开发方面发挥着至关重要的作用。基于深度学习的方法在这一领域取得了可喜的成果。然而,现有方法主要依靠标记序列或抽象语法树(AST)来学习推荐点相关特征,这可能会忽略语句之间或语句内部关系中隐含的基本知识,并可能在特征学习过程中包含与任务无关的成分。为了解决这些局限性,我们提出了一种名为 "剪枝增强语法树"(pa-AST)的新型代码图。我们的方法通过纳入从智能合约代码中语句之间和语句内部的控制和数据流关系中获得的额外知识来增强 AST。通过这种增强,pa-AST 可以更好地表示代码的语义特征。此外,我们还根据确定的流程关系进行 AST 修剪,以消除与任务无关的组件。这一步骤有助于减轻模型特征学习过程中这些无关部分造成的干扰。此外,我们还提取了推荐点周围的 API 序列,为模型学习提供补充知识。实验结果表明,我们提出的方法实现了 68.02% 的平均倒数等级 (MRR),优于基准性能。此外,通过消融实验,我们探索了我们提出的代码表示方法的有效性。结果表明,将 pa-AST 与 API 序列相结合比单独使用它们性能更高。此外,我们的 AST 增强和剪枝技术也为整体结果做出了重大贡献。
{"title":"Application programming interface recommendation for smart contract using deep learning from augmented code representation","authors":"Jie Cai,&nbsp;Qian Cai,&nbsp;Bin Li,&nbsp;Jiale Zhang,&nbsp;Xiaobing Sun","doi":"10.1002/smr.2658","DOIUrl":"10.1002/smr.2658","url":null,"abstract":"<p>Application programming interface (API) recommendation plays a crucial role in facilitating smart contract development by providing developers with a ranked list of candidate APIs for specific recommendation points. Deep learning-based approaches have shown promising results in this field. However, existing approaches mainly rely on token sequences or abstract syntax trees (ASTs) for learning recommendation point-related features, which may overlook the essential knowledge implied in the relations between or within statements and may include task-irrelevant components during feature learning. To address these limitations, we propose a novel code graph called pruned and augmented AST (pa-AST). Our approach enhances the AST by incorporating additional knowledge derived from the control and data flow relations between and within statements in the smart contract code. Through this augmentation, the pa-AST can better represent the semantic features of the code. Furthermore, we conduct AST pruning to eliminate task-irrelevant components based on the identified flow relations. This step helps mitigate the interference caused by these irrelevant parts during the model feature learning process. Additionally, we extract the API sequence surrounding the recommendation point to provide supplementary knowledge for the model learning. The experimental results demonstrate our proposed approach achieving an average mean reciprocal rank (MRR) of 68.02%, outperforming the baselines' performance. Furthermore, through ablation experiments, we explore the effectiveness of our proposed code representation approach. The results indicate that combining pa-AST with the API sequence yields improved performance compared with using them individually. Moreover, our AST augmentation and pruning techniques significantly contribute to the overall results.</p>","PeriodicalId":48898,"journal":{"name":"Journal of Software-Evolution and Process","volume":"36 8","pages":""},"PeriodicalIF":1.7,"publicationDate":"2024-03-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"140026312","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
MFLion-DMN: Mayfly Lion-optimized deep maxout network for prediction of software development effort MFLion-DMN:用于预测软件开发工作量的蜉蝣狮优化深度 maxout 网络
IF 1.7 4区 计算机科学 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2024-02-28 DOI: 10.1002/smr.2659
Swapna R., Niranjan Polala

The precise evaluation of predicting software development effort is a serious process in software engineering. The underestimates require more time, which seems to be the negotiation of complete efficient design and complete software testing. Thus, this paper devises a novel model for inspecting the effort taken for the design of software. The Mayfly Lion Optimization (MFLion) algorithm is devised, which ensembles the Mayfly Algorithm (MA) with the Lion Optimization Algorithm (LOA) for precise estimation. The deep maxout network (DMN) is adapted wherein the different weights are produced out of which the most suitable is infused considering the MFLion during model training. The optimal features are selected using recursive feature elimination (RFE) wherein the best features are selected and the remaining irrelevant features are eliminated from the list. The proposed MFLion obtained better performance with the smallest mean magnitude of relative error (MMRE) of 5.909 and the smallest root mean square error (RMSE) of 75.505, respectively. Each technique is produced using a separate database generated using the Promise software engineering repository. The outcomes produced from the assessment of the accuracies of models suggested that the MFLion-DMN is a substitute to forecast software effort, which is extensively devised in engineering platforms.

精确评估预测软件开发工作量是软件工程中的一项重要工作。低估工作量需要更多的时间,这似乎是对完整高效的设计和完整的软件测试的协商。因此,本文设计了一种新颖的模型,用于检测软件设计的工作量。本文设计了蜉蝣狮子优化算法(MFLion),该算法将蜉蝣算法(MA)与狮子优化算法(LOA)组合在一起,用于精确估算。深度最大网络(DMN)经过调整,产生了不同的权重,其中最合适的权重将在模型训练期间注入 MFLion。使用递归特征消除(RFE)来选择最佳特征,其中选择最佳特征,并从列表中消除其余无关特征。所提出的 MFLion 性能更佳,平均相对误差(MMRE)最小,为 5.909;均方根误差(RMSE)最小,为 75.505。每种技术都使用 Promise 软件工程库生成的独立数据库。对模型准确性的评估结果表明,MFLion-DMN 可以替代工程平台中广泛使用的预测软件。
{"title":"MFLion-DMN: Mayfly Lion-optimized deep maxout network for prediction of software development effort","authors":"Swapna R.,&nbsp;Niranjan Polala","doi":"10.1002/smr.2659","DOIUrl":"10.1002/smr.2659","url":null,"abstract":"<p>The precise evaluation of predicting software development effort is a serious process in software engineering. The underestimates require more time, which seems to be the negotiation of complete efficient design and complete software testing. Thus, this paper devises a novel model for inspecting the effort taken for the design of software. The Mayfly Lion Optimization (MFLion) algorithm is devised, which ensembles the Mayfly Algorithm (MA) with the Lion Optimization Algorithm (LOA) for precise estimation. The deep maxout network (DMN) is adapted wherein the different weights are produced out of which the most suitable is infused considering the MFLion during model training. The optimal features are selected using recursive feature elimination (RFE) wherein the best features are selected and the remaining irrelevant features are eliminated from the list. The proposed MFLion obtained better performance with the smallest mean magnitude of relative error (MMRE) of 5.909 and the smallest root mean square error (RMSE) of 75.505, respectively. Each technique is produced using a separate database generated using the Promise software engineering repository. The outcomes produced from the assessment of the accuracies of models suggested that the MFLion-DMN is a substitute to forecast software effort, which is extensively devised in engineering platforms.</p>","PeriodicalId":48898,"journal":{"name":"Journal of Software-Evolution and Process","volume":"36 8","pages":""},"PeriodicalIF":1.7,"publicationDate":"2024-02-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"140007057","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Assessing BizDevOps maturity using international standards: Case studies and lessons learned 使用国际标准评估商务开发运营的成熟度:案例研究与经验教训
IF 1.7 4区 计算机科学 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2024-02-26 DOI: 10.1002/smr.2646
Eduardo Sanjurjo, Oscar Pedreira, Félix García, Mario Piattini

DevOps has emerged as a practical approach to the interaction between development and operations. This approach has been extended to the interaction with business functions, generating the term BizDevOps. Although many proposals and tools support BizDevOps from a technical viewpoint, there has been no significant improvement in management aspects, such as evaluating the practices and processes involved in the area. This paper presents two case studies on the assessment of BizDevOps practices using MMBDO (Maturity Model for BizDevOps), a maturity model for BizDevOps based on international ICT standards. The case studies were conducted in two organizations with different profiles: a large multinational ICT company with a unit specialized in providing DevOps to the rest of the company and a small software development company that implements DevOps practices as part of its development system. The evidence we obtained in the case studies supports the adequacy of MMBDO for assessing the maturity of BizDevOps in real companies. Also, the combination of the two case studies supports the adequacy of the model for being used in companies with different sizes and levels of maturity. MMBDO is an adequate proposal for assessing the maturity of BizDevOps in software organizations and a suitable tool for process improvement.

DevOps 已成为开发与运营之间互动的实用方法。这种方法已扩展到与业务功能的互动,并产生了 BizDevOps 这一术语。虽然有许多建议和工具从技术角度支持 BizDevOps,但在管理方面,如评估该领域所涉及的实践和流程,却没有明显的改进。本文介绍了利用 MMBDO(商务开发运营成熟度模型)评估商务开发运营实践的两个案例研究,MMBDO 是基于国际 ICT 标准的商务开发运营成熟度模型。案例研究在两个不同的组织中进行:一个是大型跨国 ICT 公司,该公司有一个部门专门负责为公司其他部门提供 DevOps 服务;另一个是小型软件开发公司,该公司将 DevOps 实践作为其开发系统的一部分。我们从案例研究中获得的证据证明,MMBDO 足以评估 BizDevOps 在实际公司中的成熟度。此外,两个案例研究的结合也证明了该模型适用于不同规模和成熟度的公司。MMBDO 是评估软件企业商务开发运营成熟度的适当建议,也是流程改进的合适工具。
{"title":"Assessing BizDevOps maturity using international standards: Case studies and lessons learned","authors":"Eduardo Sanjurjo,&nbsp;Oscar Pedreira,&nbsp;Félix García,&nbsp;Mario Piattini","doi":"10.1002/smr.2646","DOIUrl":"10.1002/smr.2646","url":null,"abstract":"<p>DevOps has emerged as a practical approach to the interaction between development and operations. This approach has been extended to the interaction with business functions, generating the term BizDevOps. Although many proposals and tools support BizDevOps from a technical viewpoint, there has been no significant improvement in management aspects, such as evaluating the practices and processes involved in the area. This paper presents two case studies on the assessment of BizDevOps practices using MMBDO (Maturity Model for BizDevOps), a maturity model for BizDevOps based on international ICT standards. The case studies were conducted in two organizations with different profiles: a large multinational ICT company with a unit specialized in providing DevOps to the rest of the company and a small software development company that implements DevOps practices as part of its development system. The evidence we obtained in the case studies supports the adequacy of MMBDO for assessing the maturity of BizDevOps in real companies. Also, the combination of the two case studies supports the adequacy of the model for being used in companies with different sizes and levels of maturity. MMBDO is an adequate proposal for assessing the maturity of BizDevOps in software organizations and a suitable tool for process improvement.</p>","PeriodicalId":48898,"journal":{"name":"Journal of Software-Evolution and Process","volume":"36 8","pages":""},"PeriodicalIF":1.7,"publicationDate":"2024-02-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"139977747","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Software bug localization based on optimized and ensembled deep learning models 基于优化和集合深度学习模型的软件错误定位
IF 1.7 4区 计算机科学 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2024-02-26 DOI: 10.1002/smr.2654
Waqas Ali, Lili Bo, Xiaobing Sun, Xiaoxue Wu, Aakash Ali, Ying Wei

An automated task for finding the essential buggy files among software projects with the help of a given bug report is termed bug localization. The conventional approaches suffer from the challenges of performing lexical matching. Particularly, the terms utilized for describing the bugs in the bug reports are observed to be irrelevant to the terms used in the source code files. To resolve these problems, we propose an optimized and ensemble deep learning model for software bug localization. These features are reduced by the principle component analysis (PCA). Then, they are selected by the weighted convolutional neural network (CNN) model with the support of the Modified Scatter Probability-based Coyote Optimization Algorithm (MSP-COA). Finally, the optimal features are subjected to the ensemble deep neural network and long short-term memory (DNN-LSTM), with parameter tuning by the MSP-COA. Experimental results show that the proposed approach can achieve higher bug localization accuracy than individual models.

借助给定的错误报告在软件项目中查找重要错误文件的自动化任务被称为错误定位。传统的方法在进行词汇匹配时会遇到困难。特别是,我们发现错误报告中用于描述错误的术语与源代码文件中使用的术语不相关。为了解决这些问题,我们提出了一种用于软件错误定位的优化和集合深度学习模型。这些特征通过原理成分分析(PCA)进行还原。然后,在基于修正散射概率的丛林狼优化算法(MSP-COA)的支持下,通过加权卷积神经网络(CNN)模型选择这些特征。最后,在 MSP-COA 的参数调整下,将最优特征应用于集合深度神经网络和长短期记忆(DNN-LSTM)。实验结果表明,与单个模型相比,所提出的方法可以实现更高的错误定位精度。
{"title":"Software bug localization based on optimized and ensembled deep learning models","authors":"Waqas Ali,&nbsp;Lili Bo,&nbsp;Xiaobing Sun,&nbsp;Xiaoxue Wu,&nbsp;Aakash Ali,&nbsp;Ying Wei","doi":"10.1002/smr.2654","DOIUrl":"10.1002/smr.2654","url":null,"abstract":"<p>An automated task for finding the essential buggy files among software projects with the help of a given bug report is termed bug localization. The conventional approaches suffer from the challenges of performing lexical matching. Particularly, the terms utilized for describing the bugs in the bug reports are observed to be irrelevant to the terms used in the source code files. To resolve these problems, we propose an optimized and ensemble deep learning model for software bug localization. These features are reduced by the principle component analysis (PCA). Then, they are selected by the weighted convolutional neural network (CNN) model with the support of the Modified Scatter Probability-based Coyote Optimization Algorithm (MSP-COA). Finally, the optimal features are subjected to the ensemble deep neural network and long short-term memory (DNN-LSTM), with parameter tuning by the MSP-COA. Experimental results show that the proposed approach can achieve higher bug localization accuracy than individual models.</p>","PeriodicalId":48898,"journal":{"name":"Journal of Software-Evolution and Process","volume":"36 8","pages":""},"PeriodicalIF":1.7,"publicationDate":"2024-02-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"139977670","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
An assessment of heterogenous ensemble classifiers for analyzing change-proneness in open-source software systems 评估用于分析开源软件系统易变性的异源集合分类器
IF 1.7 4区 计算机科学 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2024-02-24 DOI: 10.1002/smr.2660
Megha Khanna, Ankita Bansal

Software managers constantly look out for methods that ensure cost effective development of good quality software products. An important means of accomplishing this is by allocating more resources to weak classes of a software product, which are prone to changes. Therefore, correct prediction of these change-prone classes is critical. Though various researchers have investigated the performance of several algorithms for identifying them, the search for an optimum classifier still persists. To this end, this study critically investigates the use of six Heterogenous Ensemble Classifiers (HEC) for Software Change Prediction (SCP) by empirically validating datasets obtained from 12 open-source software systems. The results of the study are statistically assessed using three robust performance indicators (AUC, F-measure and Mathew Correlation Coefficient) in two different validation scenarios (within project and cross-project). They indicate the superiority of Average Probability Voting Ensemble, a heterogenous classifier for determining change-proneness in the investigated systems. The average AUC values of software change prediction models developed using this ensemble classifier exhibited an improvement of 3%-9% and 3%-11% respectively when compared with its base learners and homogeneous counter parts. Similar observations were inferred using other investigated performance measures. Furthermore, the evidence obtained from the results suggests that the change in number of base learners or type of meta-learner does not exhibit significant change in the performance of corresponding heterogenous ensemble classifiers.

软件管理者一直在寻找各种方法,以确保经济高效地开发出高质量的软件产品。实现这一目标的一个重要手段就是为软件产品中容易发生变化的薄弱类分配更多资源。因此,正确预测这些易变类至关重要。虽然不同的研究人员已经研究了几种识别算法的性能,但对最佳分类器的探索仍在继续。为此,本研究通过对从 12 个开源软件系统中获取的数据集进行经验验证,批判性地研究了六种异源集合分类器(HEC)在软件变更预测(SCP)中的应用。在两种不同的验证场景(项目内和跨项目)中,使用三个稳健的性能指标(AUC、F-measure 和 Mathew 相关系数)对研究结果进行了统计评估。结果表明,平均概率投票合集这种异质分类器在确定所研究系统的易变性方面具有优势。使用这种集合分类器开发的软件变更预测模型的平均 AUC 值与基础学习器和同质分类器相比,分别提高了 3%-9% 和 3%-11%。使用其他调查性能指标也得出了类似的结论。此外,从结果中获得的证据表明,基础学习器数量或元学习器类型的变化不会对相应的异质集合分类器的性能产生显著影响。
{"title":"An assessment of heterogenous ensemble classifiers for analyzing change-proneness in open-source software systems","authors":"Megha Khanna,&nbsp;Ankita Bansal","doi":"10.1002/smr.2660","DOIUrl":"10.1002/smr.2660","url":null,"abstract":"<p>Software managers constantly look out for methods that ensure cost effective development of good quality software products. An important means of accomplishing this is by allocating more resources to weak classes of a software product, which are prone to changes. Therefore, correct prediction of these change-prone classes is critical. Though various researchers have investigated the performance of several algorithms for identifying them, the search for an optimum classifier still persists. To this end, this study critically investigates the use of six Heterogenous Ensemble Classifiers (HEC) for Software Change Prediction (SCP) by empirically validating datasets obtained from 12 open-source software systems. The results of the study are statistically assessed using three robust performance indicators (AUC, F-measure and Mathew Correlation Coefficient) in two different validation scenarios (within project and cross-project). They indicate the superiority of Average Probability Voting Ensemble, a heterogenous classifier for determining change-proneness in the investigated systems. The average AUC values of software change prediction models developed using this ensemble classifier exhibited an improvement of 3%-9% and 3%-11% respectively when compared with its base learners and homogeneous counter parts. Similar observations were inferred using other investigated performance measures. Furthermore, the evidence obtained from the results suggests that the change in number of base learners or type of meta-learner does not exhibit significant change in the performance of corresponding heterogenous ensemble classifiers.</p>","PeriodicalId":48898,"journal":{"name":"Journal of Software-Evolution and Process","volume":"36 8","pages":""},"PeriodicalIF":1.7,"publicationDate":"2024-02-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"139957043","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
期刊
Journal of Software-Evolution and Process
全部 Acc. Chem. Res. ACS Applied Bio Materials ACS Appl. Electron. Mater. ACS Appl. Energy Mater. ACS Appl. Mater. Interfaces ACS Appl. Nano Mater. ACS Appl. Polym. Mater. ACS BIOMATER-SCI ENG ACS Catal. ACS Cent. Sci. ACS Chem. Biol. ACS Chemical Health & Safety ACS Chem. Neurosci. ACS Comb. Sci. ACS Earth Space Chem. ACS Energy Lett. ACS Infect. Dis. ACS Macro Lett. ACS Mater. Lett. ACS Med. Chem. Lett. ACS Nano ACS Omega ACS Photonics ACS Sens. ACS Sustainable Chem. Eng. ACS Synth. Biol. Anal. Chem. BIOCHEMISTRY-US Bioconjugate Chem. BIOMACROMOLECULES Chem. Res. Toxicol. Chem. Rev. Chem. Mater. CRYST GROWTH DES ENERG FUEL Environ. Sci. Technol. Environ. Sci. Technol. Lett. Eur. J. Inorg. Chem. IND ENG CHEM RES Inorg. Chem. J. Agric. Food. Chem. J. Chem. Eng. Data J. Chem. Educ. J. Chem. Inf. Model. J. Chem. Theory Comput. J. Med. Chem. J. Nat. Prod. J PROTEOME RES J. Am. Chem. Soc. LANGMUIR MACROMOLECULES Mol. Pharmaceutics Nano Lett. Org. Lett. ORG PROCESS RES DEV ORGANOMETALLICS J. Org. Chem. J. Phys. Chem. J. Phys. Chem. A J. Phys. Chem. B J. Phys. Chem. C J. Phys. Chem. Lett. Analyst Anal. Methods Biomater. Sci. Catal. Sci. Technol. Chem. Commun. Chem. Soc. Rev. CHEM EDUC RES PRACT CRYSTENGCOMM Dalton Trans. Energy Environ. Sci. ENVIRON SCI-NANO ENVIRON SCI-PROC IMP ENVIRON SCI-WAT RES Faraday Discuss. Food Funct. Green Chem. Inorg. Chem. Front. Integr. Biol. J. Anal. At. Spectrom. J. Mater. Chem. A J. Mater. Chem. B J. Mater. Chem. C Lab Chip Mater. Chem. Front. Mater. Horiz. MEDCHEMCOMM Metallomics Mol. Biosyst. Mol. Syst. Des. Eng. Nanoscale Nanoscale Horiz. Nat. Prod. Rep. New J. Chem. Org. Biomol. Chem. Org. Chem. Front. PHOTOCH PHOTOBIO SCI PCCP Polym. Chem.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1