首页 > 最新文献

Journal of Systems and Software最新文献

英文 中文
Experimental evaluation of architectural software performance design patterns in microservices 微服务中架构软件性能设计模式的实验评估
IF 3.7 2区 计算机科学 Q1 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2024-08-10 DOI: 10.1016/j.jss.2024.112183

Microservice architectures and design patterns enhance the development of large-scale applications by promoting flexibility. Industrial practitioners perceive the importance of applying architectural patterns but they struggle to quantify their impact on system quality requirements. Our research aims to quantify the effect of design patterns on system performance metrics, e.g., service latency and resource utilization, even more so when the patterns operate in real-world environments subject to heterogeneous workloads. We built a cloud infrastructure to host a well-established benchmark system that represents our test bed, complemented by the implementation of three design patterns: Gateway Aggregation, Gateway Offloading, Pipe and Filters. Real performance measurements are collected and compared with model-based predictions that we derived as part of our previous research, thus further consolidating the actual impact of these patterns. Our results demonstrate that, despite the difficulty to parameterize our benchmark system, model-based predictions are in line with real experimentation, since the performance behaviors of patterns, e.g., bottleneck switches, are mostly preserved. In summary, this is the first work that experimentally demonstrates the performance behavior of microservices-based architectural patterns. Results highlight the complexity of evaluating the performance of design patterns and emphasize the need for complementing theoretical models with empirical data.

微服务架构和设计模式通过提高灵活性来加强大规模应用程序的开发。行业从业人员意识到应用架构模式的重要性,但他们很难量化这些模式对系统质量要求的影响。我们的研究旨在量化设计模式对系统性能指标(如服务延迟和资源利用率)的影响,尤其是当设计模式在真实世界的异构工作负载环境中运行时。我们构建了一个云基础设施,以托管一个代表我们测试平台的成熟基准系统,并辅以三种设计模式的实施:网关聚合、网关卸载、管道和过滤器。我们收集了真实的性能测量结果,并将其与我们在以前的研究中得出的基于模型的预测结果进行了比较,从而进一步巩固了这些模式的实际影响。我们的研究结果表明,尽管我们的基准系统很难参数化,但基于模型的预测与实际实验结果是一致的,因为瓶颈交换机等模式的性能行为在很大程度上得到了保留。总之,这是第一项通过实验证明基于微服务的架构模式的性能行为的工作。研究结果凸显了评估设计模式性能的复杂性,并强调了用经验数据补充理论模型的必要性。
{"title":"Experimental evaluation of architectural software performance design patterns in microservices","authors":"","doi":"10.1016/j.jss.2024.112183","DOIUrl":"10.1016/j.jss.2024.112183","url":null,"abstract":"<div><p>Microservice architectures and design patterns enhance the development of large-scale applications by promoting flexibility. Industrial practitioners perceive the importance of applying architectural patterns but they struggle to quantify their impact on system quality requirements. Our research aims to quantify the effect of design patterns on system performance metrics, e.g., service latency and resource utilization, even more so when the patterns operate in real-world environments subject to heterogeneous workloads. We built a cloud infrastructure to host a well-established benchmark system that represents our test bed, complemented by the implementation of three design patterns: Gateway Aggregation, Gateway Offloading, Pipe and Filters. Real performance measurements are collected and compared with model-based predictions that we derived as part of our previous research, thus further consolidating the actual impact of these patterns. Our results demonstrate that, despite the difficulty to parameterize our benchmark system, model-based predictions are in line with real experimentation, since the performance behaviors of patterns, e.g., bottleneck switches, are mostly preserved. In summary, this is the first work that experimentally demonstrates the performance behavior of microservices-based architectural patterns. Results highlight the complexity of evaluating the performance of design patterns and emphasize the need for complementing theoretical models with empirical data.</p></div>","PeriodicalId":51099,"journal":{"name":"Journal of Systems and Software","volume":null,"pages":null},"PeriodicalIF":3.7,"publicationDate":"2024-08-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://www.sciencedirect.com/science/article/pii/S0164121224002279/pdfft?md5=14118d7bfbb73c2d2f636735b1874ad9&pid=1-s2.0-S0164121224002279-main.pdf","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"142098300","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":2,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Evolution patterns of software-architecture smells: An empirical study of intra- and inter-version smells 软件架构气味的演变模式:版本内和版本间气味的实证研究
IF 3.7 2区 计算机科学 Q1 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2024-08-07 DOI: 10.1016/j.jss.2024.112170

Architecture smells are a widely established concept to describe symptoms of software degradation by measuring perceived violations of software-design principles. As such, architecture smells can help developers assess and understand the architectural quality of their software system. However, research has rarely been concerned with how architecture smells evolve and whether they actually foster software degradation during a system’s evolution. Building on our previous work in this direction, we present extended techniques for measuring architecture smells, novel visualizations, as well as an empirical study of how architecture smells evolve and what typical patterns they exhibit in 485 releases of 14 open-source systems. Among others, the results of our study indicate that especially cyclic dependencies on the class-level are prone to becoming highly complex over time, with one of the reasons being the continued merging of smells, most often resulting in tangled multi-hubs. Moreover, we found unstable dependencies to mostly grow slowly over time, whereas hub-like dependencies remain rather stable during a system’s evolution. These findings are valuable for practitioners to identify and tackle system degeneration, as well as for researchers to scope new research on managing architecture smells and technical debt.

架构气味是一个广为流传的概念,它通过测量对软件设计原则的感知违反来描述软件退化的症状。因此,架构气味可以帮助开发人员评估和了解软件系统的架构质量。然而,研究很少关注架构气味是如何演变的,以及在系统演变过程中它们是否真的会导致软件退化。在我们以前的工作基础上,我们提出了测量架构气味的扩展技术、新颖的可视化方法,并对 14 个开源系统的 485 个版本中架构气味如何演变及其表现出的典型模式进行了实证研究。我们的研究结果表明,随着时间的推移,尤其是类级的循环依赖关系很容易变得非常复杂,其中一个原因是气味的不断合并,最常见的是导致纠缠不清的多集线器(multi-hubs)。此外,我们还发现不稳定的依赖关系大多会随着时间的推移而缓慢增长,而类似于集线器的依赖关系在系统演化过程中会保持相当的稳定性。这些发现对于从业人员识别和解决系统退化问题,以及研究人员管理架构气味和技术债务的新研究范围都很有价值。
{"title":"Evolution patterns of software-architecture smells: An empirical study of intra- and inter-version smells","authors":"","doi":"10.1016/j.jss.2024.112170","DOIUrl":"10.1016/j.jss.2024.112170","url":null,"abstract":"<div><p>Architecture smells are a widely established concept to describe symptoms of software degradation by measuring perceived violations of software-design principles. As such, architecture smells can help developers assess and understand the architectural quality of their software system. However, research has rarely been concerned with how architecture smells evolve and whether they actually foster software degradation during a system’s evolution. Building on our previous work in this direction, we present extended techniques for measuring architecture smells, novel visualizations, as well as an empirical study of how architecture smells evolve and what typical patterns they exhibit in 485 releases of 14 open-source systems. Among others, the results of our study indicate that especially cyclic dependencies on the class-level are prone to becoming highly complex over time, with one of the reasons being the continued merging of smells, most often resulting in tangled multi-hubs. Moreover, we found unstable dependencies to mostly grow slowly over time, whereas hub-like dependencies remain rather stable during a system’s evolution. These findings are valuable for practitioners to identify and tackle system degeneration, as well as for researchers to scope new research on managing architecture smells and technical debt.</p></div>","PeriodicalId":51099,"journal":{"name":"Journal of Systems and Software","volume":null,"pages":null},"PeriodicalIF":3.7,"publicationDate":"2024-08-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://www.sciencedirect.com/science/article/pii/S0164121224002152/pdfft?md5=ee022032f4f27f4603b1cb6a7bc058ba&pid=1-s2.0-S0164121224002152-main.pdf","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141984699","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":2,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
An empirical study on bug severity estimation using source code metrics and static analysis 利用源代码度量和静态分析估算错误严重性的实证研究
IF 3.7 2区 计算机科学 Q1 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2024-08-06 DOI: 10.1016/j.jss.2024.112179

In the past couple of decades, significant research efforts have been devoted to the prediction of software bugs (i.e., defects). In general, these works leverage a diverse set of metrics, tools, and techniques to predict which classes, methods, lines, or commits are buggy. However, most existing work in this domain treats all bugs the same, which is not the case in practice. The more severe the bugs the higher their consequences. Therefore, it is important for a defect prediction method to estimate the severity of the identified bugs, so that the higher severity ones get immediate attention. In this paper, we provide a quantitative and qualitative study on two popular datasets (Defects4J and Bugs.jar), using 10 common source code metrics, and two popular static analysis tools (SpotBugs and Infer) for analyzing their capability to predict defects and their severity. We studied 3,358 buggy methods with different severity labels from 19 Java open-source projects. Results show that although code metrics are useful in predicting buggy code (Lines of the Code, Maintainable Index, FanOut, and Effort metrics are the best), they cannot estimate the severity level of the bugs. In addition, we observed that static analysis tools have weak performance in both predicting bugs (F1 score range of 3.1%–7.1%) and their severity label (F1 score under 2%). We also manually studied the characteristics of the severe bugs to identify possible reasons behind the weak performance of code metrics and static analysis tools in estimating their severity. Also, our categorization shows that Security bugs have high severity in most cases while Edge/Boundary faults have low severity. Finally, we discuss the practical implications of the results and propose new directions for future research.

在过去的几十年里,大量的研究工作都致力于软件缺陷(即缺陷)的预测。一般来说,这些研究利用各种指标、工具和技术来预测哪些类、方法、行或提交存在缺陷。然而,该领域的大多数现有工作都对所有错误一视同仁,而实际情况并非如此。错误越严重,后果越严重。因此,对于缺陷预测方法来说,重要的是要估算出已识别错误的严重程度,以便让严重程度较高的错误立即得到关注。在本文中,我们对两个流行的数据集(Defects4J 和 Bugs.jar)进行了定量和定性研究,使用了 10 个常见的源代码度量指标和两个流行的静态分析工具(SpotBugs 和 Infer),以分析它们预测缺陷及其严重性的能力。我们研究了来自 19 个 Java 开源项目的 3,358 个具有不同严重性标签的缺陷方法。结果表明,虽然代码度量在预测代码缺陷方面很有用(代码行数、可维护指数、FanOut 和努力度量是最好的),但它们无法估计缺陷的严重程度。此外,我们还观察到静态分析工具在预测错误(F1 分数范围为 3.1%-7.1%)及其严重性标签(F1 分数低于 2%)方面都表现不佳。我们还人工研究了严重漏洞的特征,以找出代码度量和静态分析工具在估计漏洞严重性方面表现不佳的可能原因。此外,我们的分类显示,安全漏洞在大多数情况下具有较高的严重性,而边缘/边界故障则具有较低的严重性。最后,我们讨论了这些结果的实际意义,并提出了未来研究的新方向。
{"title":"An empirical study on bug severity estimation using source code metrics and static analysis","authors":"","doi":"10.1016/j.jss.2024.112179","DOIUrl":"10.1016/j.jss.2024.112179","url":null,"abstract":"<div><p>In the past couple of decades, significant research efforts have been devoted to the prediction of software bugs (i.e., defects). In general, these works leverage a diverse set of metrics, tools, and techniques to predict which classes, methods, lines, or commits are buggy. However, most existing work in this domain treats all bugs the same, which is not the case in practice. The more severe the bugs the higher their consequences. Therefore, it is important for a defect prediction method to estimate the severity of the identified bugs, so that the higher severity ones get immediate attention. In this paper, we provide a quantitative and qualitative study on two popular datasets (Defects4J and Bugs.jar), using 10 common source code metrics, and two popular static analysis tools (SpotBugs and Infer) for analyzing their capability to predict defects and their severity. We studied 3,358 buggy methods with different severity labels from 19 Java open-source projects. Results show that although code metrics are useful in predicting buggy code (Lines of the Code, Maintainable Index, FanOut, and Effort metrics are the best), they cannot estimate the severity level of the bugs. In addition, we observed that static analysis tools have weak performance in both predicting bugs (F1 score range of 3.1%–7.1%) and their severity label (F1 score under 2%). We also manually studied the characteristics of the severe bugs to identify possible reasons behind the weak performance of code metrics and static analysis tools in estimating their severity. Also, our categorization shows that Security bugs have high severity in most cases while Edge/Boundary faults have low severity. Finally, we discuss the practical implications of the results and propose new directions for future research.</p></div>","PeriodicalId":51099,"journal":{"name":"Journal of Systems and Software","volume":null,"pages":null},"PeriodicalIF":3.7,"publicationDate":"2024-08-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://www.sciencedirect.com/science/article/pii/S0164121224002243/pdfft?md5=a39163bbaede6f3d8ae30da169d41fa3&pid=1-s2.0-S0164121224002243-main.pdf","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"142021335","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":2,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
CfExplainer: Explainable just-in-time defect prediction based on counterfactuals CfExplainer:基于反事实的可解释及时缺陷预测
IF 3.7 2区 计算机科学 Q1 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2024-08-05 DOI: 10.1016/j.jss.2024.112182

Just-in-time (JIT) defect prediction helps rationally allocate testing resources and reduce testing costs. However, most JIT defect prediction models lack explainability, which significantly affects their credibility. Recently, the local interpretable model-agnostic explanations (LIME) method has been used widely in model-explainable research, and many improved LIME-based methods have been proposed. However, problems with respect to explanation effectiveness and reliability remain, which seriously affects the practical use of LIME. To address this problem, CfExplainer, a local rule-based model-agnostic approach, is proposed. The approach first applies counterfactuals to generate synthetic instances. It then mines weighted class association rules based on synthetic instances, and it optimises the process of generating, ranking, pruning, and predicting the class association rules. Next, it employs the rules with the highest priority to explain the prediction results of the model. Experiments were conducted using the public datasets employed in related studies. Compared to other state-of-the-art methods, in terms of explanation effectiveness, CfExplainer's instance similarity improves by 26.5 %-31.2 %, and local model fittness improves by 2.0 %-3.5 %, 2.3 %-3 %, and 0.7 %-7.5 % on the AUC, F1-score, and Popt metrics, respectively. In terms of the reliability of the explanation, explanations that are 2.6 %-4.7 % more unique and 2.5 %-5.9 % more consistent with the actual characteristics of defect-introducing commits than other state-of-the-art methods. Thus, the explanations of the proposed approach can enhance the model credibility and help guide developers in fixing defects and reducing the risk of introducing them.

准时制(JIT)缺陷预测有助于合理分配测试资源,降低测试成本。然而,大多数 JIT 缺陷预测模型缺乏可解释性,这严重影响了其可信度。近来,局部可解释模型-不可知论解释(LIME)方法在模型可解释研究中得到广泛应用,并提出了许多基于 LIME 的改进方法。然而,在解释的有效性和可靠性方面仍然存在问题,严重影响了 LIME 的实际应用。为了解决这个问题,我们提出了一种基于局部规则的与模型无关的方法--CfExplainer。该方法首先应用反事实生成合成实例。然后,它根据合成实例挖掘加权类关联规则,并优化类关联规则的生成、排序、剪枝和预测过程。接下来,它采用优先级最高的规则来解释模型的预测结果。实验使用了相关研究中使用的公共数据集。与其他最先进的方法相比,在解释效果方面,CfExplainer 的实例相似度提高了 26.5 %-31.2 %,在 AUC、F1-score 和 Popt 指标上,局部模型拟合度分别提高了 2.0 %-3.5 %、2.3 %-3 % 和 0.7 %-7.5 %。在解释的可靠性方面,与其他最先进的方法相比,该方法的解释的唯一性提高了 2.6 %-4.7 %,与引入缺陷的提交的实际特征的一致性提高了 2.5 %-5.9 %。因此,建议方法的解释可以提高模型的可信度,有助于指导开发人员修复缺陷并降低引入缺陷的风险。
{"title":"CfExplainer: Explainable just-in-time defect prediction based on counterfactuals","authors":"","doi":"10.1016/j.jss.2024.112182","DOIUrl":"10.1016/j.jss.2024.112182","url":null,"abstract":"<div><p>Just-in-time (JIT) defect prediction helps rationally allocate testing resources and reduce testing costs. However, most JIT defect prediction models lack explainability, which significantly affects their credibility. Recently, the local interpretable model-agnostic explanations (LIME) method has been used widely in model-explainable research, and many improved LIME-based methods have been proposed. However, problems with respect to explanation effectiveness and reliability remain, which seriously affects the practical use of LIME. To address this problem, CfExplainer, a local rule-based model-agnostic approach, is proposed. The approach first applies counterfactuals to generate synthetic instances. It then mines weighted class association rules based on synthetic instances, and it optimises the process of generating, ranking, pruning, and predicting the class association rules. Next, it employs the rules with the highest priority to explain the prediction results of the model. Experiments were conducted using the public datasets employed in related studies. Compared to other state-of-the-art methods, in terms of explanation effectiveness, CfExplainer's instance similarity improves by 26.5 %-31.2 %, and local model fittness improves by 2.0 %-3.5 %, 2.3 %-3 %, and 0.7 %-7.5 % on the AUC, F1-score, and Popt metrics, respectively. In terms of the reliability of the explanation, explanations that are 2.6 %-4.7 % more unique and 2.5 %-5.9 % more consistent with the actual characteristics of defect-introducing commits than other state-of-the-art methods. Thus, the explanations of the proposed approach can enhance the model credibility and help guide developers in fixing defects and reducing the risk of introducing them.</p></div>","PeriodicalId":51099,"journal":{"name":"Journal of Systems and Software","volume":null,"pages":null},"PeriodicalIF":3.7,"publicationDate":"2024-08-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"142047794","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":2,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
An architecture for model-based and intelligent automation in DevOps DevOps 中基于模型的智能自动化架构
IF 3.7 2区 计算机科学 Q1 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2024-08-02 DOI: 10.1016/j.jss.2024.112180

The increasing complexity of modern systems poses numerous challenges at all stages of system development and operation. Continuous software and system engineering processes, e.g., DevOps, are increasingly adopted and spread across organizations. In parallel, many leading companies have begun to apply artificial intelligence (AI) principles and techniques, including Machine Learning (ML), to improve their products. However, there is no holistic approach that can support and enhance the growing challenges of DevOps. In this paper, we propose a software architecture that provides the foundations of a model-based framework for the development of AI-augmented solutions incorporating methods and tools for continuous software and system engineering and validation. The key characteristic of the proposed architecture is that it allows leveraging the advantages of both AI/ML and Model Driven Engineering (MDE) approaches and techniques in a DevOps context. This architecture has been designed, developed and applied in the context of the European large collaborative project named AIDOaRt. In this paper, we also report on the practical evaluation of this architecture. This evaluation is based on a significant set of technical solutions implemented and applied in the context of different real industrial case studies coming from the AIDOaRt project. Moreover, we analyze the collected results and discuss them according to both architectural and technical challenges we intend to tackle with the proposed architecture.

现代系统日益复杂,给系统开发和运行的各个阶段都带来了诸多挑战。持续的软件和系统工程流程(如 DevOps)正被越来越多的企业采用和推广。与此同时,许多领先企业已开始应用人工智能(AI)原理和技术(包括机器学习(ML))来改进其产品。然而,目前还没有一种全面的方法能够支持和增强 DevOps 所面临的日益严峻的挑战。在本文中,我们提出了一种软件架构,它为基于模型的框架提供了基础,用于开发人工智能增强型解决方案,其中包含用于持续软件和系统工程及验证的方法和工具。所提架构的主要特点是,它可以在 DevOps 环境中充分利用人工智能/ML 和模型驱动工程(MDE)方法和技术的优势。该架构是在名为 AIDOaRt 的欧洲大型合作项目背景下设计、开发和应用的。 在本文中,我们还报告了对该架构的实际评估。该评估基于在 AIDOaRt 项目的不同实际工业案例研究中实施和应用的大量技术解决方案。此外,我们还对所收集的结果进行了分析,并根据我们打算利用所提议的架构来应对的架构和技术挑战进行了讨论。
{"title":"An architecture for model-based and intelligent automation in DevOps","authors":"","doi":"10.1016/j.jss.2024.112180","DOIUrl":"10.1016/j.jss.2024.112180","url":null,"abstract":"<div><p>The increasing complexity of modern systems poses numerous challenges at all stages of system development and operation. Continuous software and system engineering processes, e.g., DevOps, are increasingly adopted and spread across organizations. In parallel, many leading companies have begun to apply artificial intelligence (AI) principles and techniques, including Machine Learning (ML), to improve their products. However, there is no holistic approach that can support and enhance the growing challenges of DevOps. In this paper, we propose a software architecture that provides the foundations of a model-based framework for the development of AI-augmented solutions incorporating methods and tools for continuous software and system engineering and validation. The key characteristic of the proposed architecture is that it allows leveraging the advantages of both AI/ML and Model Driven Engineering (MDE) approaches and techniques in a DevOps context. This architecture has been designed, developed and applied in the context of the European large collaborative project named AIDOaRt. In this paper, we also report on the practical evaluation of this architecture. This evaluation is based on a significant set of technical solutions implemented and applied in the context of different real industrial case studies coming from the AIDOaRt project. Moreover, we analyze the collected results and discuss them according to both architectural and technical challenges we intend to tackle with the proposed architecture.</p></div>","PeriodicalId":51099,"journal":{"name":"Journal of Systems and Software","volume":null,"pages":null},"PeriodicalIF":3.7,"publicationDate":"2024-08-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://www.sciencedirect.com/science/article/pii/S0164121224002255/pdfft?md5=d54471e0503d6c6e1beee84152a7b5ac&pid=1-s2.0-S0164121224002255-main.pdf","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141963808","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":2,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Unlocking inclusive education: A quality assessment of software design in applications for children with autism 开启全纳教育:自闭症儿童应用软件设计质量评估
IF 3.7 2区 计算机科学 Q1 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2024-07-31 DOI: 10.1016/j.jss.2024.112164

Digital technologies are an essential resource for maximizing education opportunities, yet the COVID-19 pandemic has exposed learning inequities, particularly among underrepresented groups such as children with autism. In this study, we have evaluated the quality of a distinctive dataset of multiplatform software applications, encompassing both assistive and mainstream software, first-hand acquired from special education professionals and families of children with autism. Through a heuristic evaluation based on a system indicators, and an in-depth analysis, we aimed to (1) assess the quality and effectiveness of assistive technologies in supporting the education of children with autism; (2) determine the adaptability of mainstream applications to the unique educational needs of children with autism; and (3) explore the features and constraints of applications targeting children with ASD, categorized according to the needs they cover. The resulting quality ranking, organized by cognitive domains, provides insights into the engagement and effectiveness of applications supporting the learning of children with autism. Furthermore, the findings delineating the functionalities and limitations of these applications contribute to the identification of necessary software engineering best practices. These practices align with user-centered design principles and drive the development of accessible software, thereby fostering high-quality inclusive education for children with autism.

数字技术是实现教育机会最大化的重要资源,然而 COVID-19 的流行暴露了学习上的不公平,尤其是在自闭症儿童等代表性不足的群体中。在这项研究中,我们从特殊教育专业人员和自闭症儿童家庭那里获得第一手资料,评估了多平台软件应用程序的独特数据集的质量,其中包括辅助软件和主流软件。通过基于系统指标的启发式评估和深入分析,我们的目标是:(1) 评估辅助技术在支持自闭症儿童教育方面的质量和有效性;(2) 确定主流应用软件对自闭症儿童独特教育需求的适应性;(3) 探索针对自闭症儿童的应用软件的特点和制约因素,并根据其涵盖的需求进行分类。由此得出的质量排名按认知领域划分,有助于深入了解支持自闭症儿童学习的应用程序的参与度和有效性。此外,对这些应用程序的功能和局限性进行描述的研究结果有助于确定必要的软件工程最佳实践。这些实践符合以用户为中心的设计原则,推动了无障碍软件的开发,从而促进了针对自闭症儿童的高质量全纳教育。
{"title":"Unlocking inclusive education: A quality assessment of software design in applications for children with autism","authors":"","doi":"10.1016/j.jss.2024.112164","DOIUrl":"10.1016/j.jss.2024.112164","url":null,"abstract":"<div><p>Digital technologies are an essential resource for maximizing education opportunities, yet the COVID-19 pandemic has exposed learning inequities, particularly among underrepresented groups such as children with autism. In this study, we have evaluated the quality of a distinctive dataset of multiplatform software applications, encompassing both assistive and mainstream software, first-hand acquired from special education professionals and families of children with autism. Through a heuristic evaluation based on a system indicators, and an in-depth analysis, we aimed to (1) assess the quality and effectiveness of assistive technologies in supporting the education of children with autism; (2) determine the adaptability of mainstream applications to the unique educational needs of children with autism; and (3) explore the features and constraints of applications targeting children with ASD, categorized according to the needs they cover. The resulting quality ranking, organized by cognitive domains, provides insights into the engagement and effectiveness of applications supporting the learning of children with autism. Furthermore, the findings delineating the functionalities and limitations of these applications contribute to the identification of necessary software engineering best practices. These practices align with user-centered design principles and drive the development of accessible software, thereby fostering high-quality inclusive education for children with autism.</p></div>","PeriodicalId":51099,"journal":{"name":"Journal of Systems and Software","volume":null,"pages":null},"PeriodicalIF":3.7,"publicationDate":"2024-07-31","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://www.sciencedirect.com/science/article/pii/S0164121224002097/pdfft?md5=5db804a278992bb8bd75b8f331578e32&pid=1-s2.0-S0164121224002097-main.pdf","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141953727","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":2,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
PMTT: Parallel multi-scale temporal convolution network and transformer for predicting the time to aging failure of software systems PMTT:用于预测软件系统老化故障时间的并行多尺度时间卷积网络和变换器
IF 3.7 2区 计算机科学 Q1 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2024-07-31 DOI: 10.1016/j.jss.2024.112167

Software aging is one of the significant factors affecting the reliability and availability of long-running software systems, such as Android, Cloud systems, etc. The time to aging failure (TTAF) prediction for software systems plays a crucial role in proactive rejuvenation scheduling through machine learning or statistical analysis techniques, due to its ability to determine when to perform rejuvenation to mitigate the aging effects. However, software aging characterization is relatively complicated, and only fitting the variations for a single aging indicator cannot grasp the comprehensive degradation process across different case systems; moreover, since software systems often exhibit long and short-term inherent degradation characteristics, existing prediction models possess a poor ability for modeling both global and local information simultaneously. To tackle the above problems, a novel TTAF prediction framework based on the parallel multi-scale temporal convolution network and transformer (named PMTT) is proposed, by mapping various system running indicators reflecting the software aging to TTAF. PMTT possesses the following distinctive characteristics. First, a local feature extraction module that contains multiple channel TCNs with different scales is developed to extract inherent local information from the raw input. Second, in a parallel manner, a global feature extraction module integrating transformer blocks is built to extract global information representation synchronously using the self-attention mechanism. Afterward, high-level global–local features extracted from different channels are fused, and TTAF is estimated through two fully connected regression layers using the fused features. The proposed PMTT has been compared to seven competitors using run-to-failure data collected from Android and OpenStack systems. The experiments have demonstrated the superiority of PMTT, showing an average improvement of 11.2%, 9.0%, and 9.3% in performance across three evaluation metrics compared with the optimal baseline model.

软件老化是影响安卓、云系统等长期运行软件系统可靠性和可用性的重要因素之一。通过机器学习或统计分析技术,软件系统的老化失效时间(TTAF)预测能够确定何时执行年轻化以减轻老化影响,因此在主动年轻化调度中发挥着至关重要的作用。然而,软件老化表征相对复杂,仅拟合单一老化指标的变化无法把握不同情况下系统的综合退化过程;此外,由于软件系统往往表现出长期和短期固有的退化特征,现有预测模型同时模拟全局和局部信息的能力较差。针对上述问题,本文提出了一种基于并行多尺度时空卷积网络和变换器的新型 TTAF 预测框架(命名为 PMTT),将反映软件老化的各种系统运行指标映射到 TTAF 上。PMTT 具有以下显著特点。首先,开发了一个本地特征提取模块,其中包含多个不同尺度的通道 TCN,用于从原始输入中提取固有的本地信息。其次,以并行的方式建立了一个集成了变压器模块的全局特征提取模块,利用自注意机制同步提取全局信息表征。然后,融合从不同通道提取的高级全局-局部特征,并利用融合特征通过两个全连接回归层估算 TTAF。利用从安卓和 OpenStack 系统收集的运行失败数据,将所提出的 PMTT 与七家竞争对手进行了比较。实验证明了 PMTT 的优越性,与最优基线模型相比,它在三个评估指标上的性能平均分别提高了 11.2%、9.0% 和 9.3%。
{"title":"PMTT: Parallel multi-scale temporal convolution network and transformer for predicting the time to aging failure of software systems","authors":"","doi":"10.1016/j.jss.2024.112167","DOIUrl":"10.1016/j.jss.2024.112167","url":null,"abstract":"<div><p>Software aging is one of the significant factors affecting the reliability and availability of long-running software systems, such as Android, Cloud systems, etc. The time to aging failure (TTAF) prediction for software systems plays a crucial role in proactive rejuvenation scheduling through machine learning or statistical analysis techniques, due to its ability to determine when to perform rejuvenation to mitigate the aging effects. However, software aging characterization is relatively complicated, and only fitting the variations for a single aging indicator cannot grasp the comprehensive degradation process across different case systems; moreover, since software systems often exhibit long and short-term inherent degradation characteristics, existing prediction models possess a poor ability for modeling both global and local information simultaneously. To tackle the above problems, a novel TTAF prediction framework based on the parallel multi-scale temporal convolution network and transformer (named PMTT) is proposed, by mapping various system running indicators reflecting the software aging to TTAF. PMTT possesses the following distinctive characteristics. First, a local feature extraction module that contains multiple channel TCNs with different scales is developed to extract inherent local information from the raw input. Second, in a parallel manner, a global feature extraction module integrating transformer blocks is built to extract global information representation synchronously using the self-attention mechanism. Afterward, high-level global–local features extracted from different channels are fused, and TTAF is estimated through two fully connected regression layers using the fused features. The proposed PMTT has been compared to seven competitors using run-to-failure data collected from Android and OpenStack systems. The experiments have demonstrated the superiority of PMTT, showing an average improvement of 11.2%, 9.0%, and 9.3% in performance across three evaluation metrics compared with the optimal baseline model.</p></div>","PeriodicalId":51099,"journal":{"name":"Journal of Systems and Software","volume":null,"pages":null},"PeriodicalIF":3.7,"publicationDate":"2024-07-31","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141953836","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":2,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Enhancing understanding and addressing gender bias in IT/SE job advertisements 加强了解并解决 IT/SE 招聘广告中的性别偏见问题
IF 3.7 2区 计算机科学 Q1 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2024-07-31 DOI: 10.1016/j.jss.2024.112169

The majority of Information Technology (IT)/Software Engineering (SE) professionals are male. A potential reason for the low number of female IT/SE professionals might be that the roles and the way they are advertised are biased towards male candidates. The aim of this research is to collect information about the present state of practice of gender inclusiveness within IT/SE job advertisements and how, if needed, we might improve this. We conducted a survey of hiring managers and IT/SE professionals (who are employed in IT/SE roles). The survey collected their general views on gender bias within job advertisements. According to their opinions, job advertisements are often biased towards male candidates. Based on the review and suggestions from our participants we developed a set of recommendations to help hiring managers design more gender inclusive SE job advertisements. This will be a first step toward developing a gender balanced SE workforce.

信息技术(IT)/软件工程(SE)专业人员大多为男性。女性信息技术/软件工程专业人员数量较少的一个潜在原因可能是,招聘广告中的职位和招聘方式偏向于男性求职者。本研究的目的是收集有关 IT/SE 招聘广告中性别包容性实践现状的信息,以及如果需要,我们可以如何改进。我们对招聘经理和 IT/SE 专业人员(受雇于 IT/SE 职位)进行了一项调查。调查收集了他们对招聘广告中性别偏见的一般看法。根据他们的意见,招聘广告往往偏向男性应聘者。根据审查结果和参与者的建议,我们提出了一系列建议,以帮助招聘经理设计更具性别包容性的 SE 招聘广告。这将是培养一支性别平衡的 SE 工作队伍的第一步。
{"title":"Enhancing understanding and addressing gender bias in IT/SE job advertisements","authors":"","doi":"10.1016/j.jss.2024.112169","DOIUrl":"10.1016/j.jss.2024.112169","url":null,"abstract":"<div><p>The majority of Information Technology (IT)/Software Engineering (SE) professionals are male. A potential reason for the low number of female IT/SE professionals might be that the roles and the way they are advertised are biased towards male candidates. The aim of this research is to collect information about the present state of practice of gender inclusiveness within IT/SE job advertisements and how, if needed, we might improve this. We conducted a survey of hiring managers and IT/SE professionals (who are employed in IT/SE roles). The survey collected their general views on gender bias within job advertisements. According to their opinions, job advertisements are often biased towards male candidates. Based on the review and suggestions from our participants we developed a set of recommendations to help hiring managers design more gender inclusive SE job advertisements. This will be a first step toward developing a gender balanced SE workforce.</p></div>","PeriodicalId":51099,"journal":{"name":"Journal of Systems and Software","volume":null,"pages":null},"PeriodicalIF":3.7,"publicationDate":"2024-07-31","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://www.sciencedirect.com/science/article/pii/S0164121224002140/pdfft?md5=e7917c321c5541079279777d4b82ec09&pid=1-s2.0-S0164121224002140-main.pdf","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141984700","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":2,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Exploring the trade-off between computational power and energy efficiency: An analysis of the evolution of quantum computing and its relation to classical computing 探索计算能力与能源效率之间的权衡:量子计算的演变及其与经典计算的关系分析
IF 3.7 2区 计算机科学 Q1 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2024-07-29 DOI: 10.1016/j.jss.2024.112165

Quantum computing is considered a revolutionary technology due to its ability to solve computational problems that are beyond the capabilities of classical computers. However, quantum computing requires great amounts of energy to run. Therefore, a factor in deciding whether to use quantum computing should be not only the complexity of the problem to be solved, but also the energy required to solve it. This paper presents an empirical study developed with the aim of comparing classical and quantum computing in terms of energy efficiency to determine whether the increased power of quantum computers is offset by their higher energy consumption. To achieve this, a variety of problems with different levels of complexity were tested on both types of computers. Specifically, we used the IBM Quantum computers with a maximum of 5 qubits and an Intel i7, as a classical computer. In addition to this we have also analysed the evolution of the quantum computers, performing measurements on three time periods. Our empirical study showed that there is a variability of results obtained in the three time periods and that quantum computing is not recommended for low-complexity problems, given its high energy consumption, particularly when compared to traditional computing.

量子计算被认为是一项革命性技术,因为它能够解决经典计算机无法解决的计算问题。然而,量子计算的运行需要大量能源。因此,在决定是否使用量子计算时,不仅要考虑要解决的问题的复杂性,还要考虑解决问题所需的能量。本文介绍了一项实证研究,目的是比较经典计算和量子计算的能效,以确定量子计算机所增加的功率是否被其较高的能耗所抵消。为此,我们在两种类型的计算机上测试了各种不同复杂程度的问题。具体来说,我们使用了最多 5 量子位的 IBM 量子计算机和英特尔 i7 作为经典计算机。此外,我们还分析了量子计算机的演化过程,对三个时间段进行了测量。我们的实证研究表明,在三个时间段内获得的结果存在差异,鉴于量子计算的高能耗,尤其是与传统计算相比,不建议将其用于低复杂度问题。
{"title":"Exploring the trade-off between computational power and energy efficiency: An analysis of the evolution of quantum computing and its relation to classical computing","authors":"","doi":"10.1016/j.jss.2024.112165","DOIUrl":"10.1016/j.jss.2024.112165","url":null,"abstract":"<div><p>Quantum computing is considered a revolutionary technology due to its ability to solve computational problems that are beyond the capabilities of classical computers. However, quantum computing requires great amounts of energy to run. Therefore, a factor in deciding whether to use quantum computing should be not only the complexity of the problem to be solved, but also the energy required to solve it. This paper presents an empirical study developed with the aim of comparing classical and quantum computing in terms of energy efficiency to determine whether the increased power of quantum computers is offset by their higher energy consumption. To achieve this, a variety of problems with different levels of complexity were tested on both types of computers. Specifically, we used the IBM Quantum computers with a maximum of 5 qubits and an Intel i7, as a classical computer. In addition to this we have also analysed the evolution of the quantum computers, performing measurements on three time periods. Our empirical study showed that there is a variability of results obtained in the three time periods and that quantum computing is not recommended for low-complexity problems, given its high energy consumption, particularly when compared to traditional computing.</p></div>","PeriodicalId":51099,"journal":{"name":"Journal of Systems and Software","volume":null,"pages":null},"PeriodicalIF":3.7,"publicationDate":"2024-07-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://www.sciencedirect.com/science/article/pii/S0164121224002103/pdfft?md5=f1e454a84fdd497790282cfb0938fc07&pid=1-s2.0-S0164121224002103-main.pdf","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"142006814","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":2,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
EvaluateXAI: A framework to evaluate the reliability and consistency of rule-based XAI techniques for software analytics tasks EvaluateXAI:评估软件分析任务中基于规则的 XAI 技术的可靠性和一致性的框架
IF 3.7 2区 计算机科学 Q1 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2024-07-27 DOI: 10.1016/j.jss.2024.112159

The advancement of machine learning (ML) models has led to the development of ML-based approaches to improve numerous software engineering tasks in software maintenance and evolution. Nevertheless, research indicates that despite their potential successes, ML models may not be employed in real-world scenarios because they often remain a black box to practitioners, lacking explainability in their reasoning. Recently, various rule-based model-agnostic Explainable AI (XAI) techniques, such as PyExplainer and LIME, have been employed to explain the predictions of ML models in software analytics tasks. In this paper, we assess the ability of these techniques, particularly the state-of-the-art PyExplainer and LIME, to generate reliable and consistent explanations for ML models across various software analytics tasks, including Just-in-Time (JIT) defect prediction, clone detection, and the classification of useful code review comments. Our manual investigations find inconsistencies and anomalies in the explanations generated by these techniques. Therefore, we design a novel framework: Evaluation of Explainable AI (EvaluateXAI), along with granular-level evaluation metrics, to automatically assess the effectiveness of rule-based XAI techniques in generating reliable and consistent explanations for ML models in software analytics tasks. After conducting in-depth experiments involving seven state-of-the-art ML models trained on five datasets and six evaluation metrics, we find that none of the evaluation metrics reached 100%, indicating the unreliability of the explanations generated by XAI techniques. Additionally, PyExplainer and LIME failed to provide consistent explanations for 86.11% and 77.78% of the experimental combinations, respectively. Therefore, our experimental findings emphasize the necessity for further research in XAI to produce reliable and consistent explanations for ML models in software analytics tasks.

机器学习(ML)模型的进步推动了基于 ML 的方法的发展,以改进软件维护和演进中的众多软件工程任务。然而,研究表明,尽管 ML 模型有可能取得成功,但在现实世界中可能无法使用,因为对于从业人员来说,这些模型往往是一个黑盒子,其推理缺乏可解释性。最近,PyExplainer 和 LIME 等各种基于规则的、与模型无关的可解释人工智能(XAI)技术被用来解释软件分析任务中 ML 模型的预测。在本文中,我们评估了这些技术(尤其是最先进的 PyExplainer 和 LIME)在各种软件分析任务中为 ML 模型生成可靠、一致的解释的能力,包括及时(JIT)缺陷预测、克隆检测和有用代码审查评论分类。我们的人工调查发现,这些技术生成的解释存在不一致和异常。因此,我们设计了一个新颖的框架:可解释人工智能评估(EvaluateXAI),以及细粒度的评估指标,用于自动评估基于规则的 XAI 技术在为软件分析任务中的 ML 模型生成可靠、一致的解释时的有效性。在对五个数据集上训练的七个最先进的 ML 模型和六个评价指标进行深入实验后,我们发现没有一个评价指标达到 100%,这表明 XAI 技术生成的解释不可靠。此外,PyExplainer 和 LIME 未能分别为 86.11% 和 77.78% 的实验组合提供一致的解释。因此,我们的实验结果强调了进一步研究 XAI 的必要性,以便为软件分析任务中的 ML 模型提供可靠、一致的解释。
{"title":"EvaluateXAI: A framework to evaluate the reliability and consistency of rule-based XAI techniques for software analytics tasks","authors":"","doi":"10.1016/j.jss.2024.112159","DOIUrl":"10.1016/j.jss.2024.112159","url":null,"abstract":"<div><p>The advancement of machine learning (ML) models has led to the development of ML-based approaches to improve numerous software engineering tasks in software maintenance and evolution. Nevertheless, research indicates that despite their potential successes, ML models may not be employed in real-world scenarios because they often remain a black box to practitioners, lacking explainability in their reasoning. Recently, various rule-based model-agnostic Explainable AI (XAI) techniques, such as PyExplainer and LIME, have been employed to explain the predictions of ML models in software analytics tasks. In this paper, we assess the ability of these techniques, particularly the state-of-the-art PyExplainer and LIME, to generate reliable and consistent explanations for ML models across various software analytics tasks, including Just-in-Time (JIT) defect prediction, clone detection, and the classification of useful code review comments. Our manual investigations find inconsistencies and anomalies in the explanations generated by these techniques. Therefore, we design a novel framework: Evaluation of Explainable AI (<em>EvaluateXAI</em>), along with granular-level evaluation metrics, to automatically assess the effectiveness of rule-based XAI techniques in generating reliable and consistent explanations for ML models in software analytics tasks. After conducting in-depth experiments involving seven state-of-the-art ML models trained on five datasets and six evaluation metrics, we find that none of the evaluation metrics reached 100%, indicating the unreliability of the explanations generated by XAI techniques. Additionally, PyExplainer and LIME failed to provide consistent explanations for 86.11% and 77.78% of the experimental combinations, respectively. Therefore, our experimental findings emphasize the necessity for further research in XAI to produce reliable and consistent explanations for ML models in software analytics tasks.</p></div>","PeriodicalId":51099,"journal":{"name":"Journal of Systems and Software","volume":null,"pages":null},"PeriodicalIF":3.7,"publicationDate":"2024-07-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141848583","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":2,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
期刊
Journal of Systems and Software
全部 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