Software: Practice and Experience最新文献

筛选
英文 中文
Blockchain and explainable AI for enhanced decision making in cyber threat detection 区块链和可解释人工智能促进网络威胁检测中的决策制定
Software: Practice and Experience Pub Date : 2024-02-19 DOI: 10.1002/spe.3319
Prabhat Kumar, Danish Javeed, Randhir Kumar, A.K.M Najmul Islam
{"title":"Blockchain and explainable AI for enhanced decision making in cyber threat detection","authors":"Prabhat Kumar, Danish Javeed, Randhir Kumar, A.K.M Najmul Islam","doi":"10.1002/spe.3319","DOIUrl":"https://doi.org/10.1002/spe.3319","url":null,"abstract":"Artificial Intelligence (AI) based cyber threat detection tools are widely used to process and analyze a large amount of data for improved intrusion detection performance. However, these models are often considered as black box by the cybersecurity experts due to their inability to comprehend or interpret the reasoning behind the decisions. Moreover, AI-based threat hunting is data-driven and is usually modeled using the data provided by multiple cloud vendors. This is another critical challenge, as a malicious cloud can provide false information (i.e., insider attacks) and can degrade the threat-hunting capability. In this paper, we present a blockchain-enabled eXplainable AI (XAI) for enhancing the decision-making capability of cyber threat detection in the context of Smart Healthcare Systems. Specifically, first, we use blockchain to validate and store data between multiple cloud vendors by implementing a Clique Proof-of-Authority (C-PoA) consensus. Second, a novel deep learning-based threat-hunting model is built by combining Parallel Stacked Long Short Term Memory (PSLSTM) networks with a multi-head attention mechanism for improved attack detection. The extensive experiment confirms its potential to be used as an enhanced decision support system by cybersecurity analysts.","PeriodicalId":21899,"journal":{"name":"Software: Practice and Experience","volume":"246 1","pages":""},"PeriodicalIF":0.0,"publicationDate":"2024-02-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"139918416","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
On the interaction between the search parameters and the nature of the search problems in search-based model-driven engineering 基于搜索的模型驱动工程中搜索参数与搜索问题性质之间的相互作用
Software: Practice and Experience Pub Date : 2024-02-15 DOI: 10.1002/spe.3320
Isis Roca, Jaime Font, Lorena Arcega, Carlos Cetina
{"title":"On the interaction between the search parameters and the nature of the search problems in search-based model-driven engineering","authors":"Isis Roca, Jaime Font, Lorena Arcega, Carlos Cetina","doi":"10.1002/spe.3320","DOIUrl":"https://doi.org/10.1002/spe.3320","url":null,"abstract":"The use of search-based software engineering to address model-driven engineering activities (SBMDE) is becoming more popular. Many maintenance tasks can be reformulated as a search problem, and, when those tasks are applied to software models, the search strategy has to retrieve a model fragment. There are no studies on the influence of the search parameters when applied to software models. This article evaluates the impact of different search parameter values on the performance of an evolutionary algorithm whose population is in the form of software models. Our study takes into account the nature of the model fragment location problems (MFLPs) in which the evolutionary algorithm is applied. The evaluation searches 1895 MFLPs (characterized through five measures that define MFLPs) from two industrial case studies and uses 625 different combinations of search parameter values. The results show that the impact on the performance when varying the population size, the replacement percentage, or the crossover rate produces changes of around 30% in performance. With regard to the nature of the problems, the size of the search space has the largest impact. Search parameter values and the nature of the MFLPs influence the performance when applying an evolutionary algorithm to perform fragment location on models. Search parameter values have a greater effect on precision values, and the nature of the MFLPs has a greater effect on recall values. Our results should raise awareness of the relevance of the search parameters and the nature of the problems for the SBMDE community.","PeriodicalId":21899,"journal":{"name":"Software: Practice and Experience","volume":"139 1","pages":""},"PeriodicalIF":0.0,"publicationDate":"2024-02-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"139918413","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Functions as a service for distributed deep neural network inference over the cloud-to-things continuum 在 "云到物 "连续体上为分布式深度神经网络推理提供功能服务
Software: Practice and Experience Pub Date : 2024-02-11 DOI: 10.1002/spe.3318
Altair Bueno, Bartolomé Rubio, Cristian Martín, Manuel Díaz
{"title":"Functions as a service for distributed deep neural network inference over the cloud-to-things continuum","authors":"Altair Bueno, Bartolomé Rubio, Cristian Martín, Manuel Díaz","doi":"10.1002/spe.3318","DOIUrl":"https://doi.org/10.1002/spe.3318","url":null,"abstract":"The use of serverless computing has been gaining popularity in recent years as an alternative to traditional Cloud computing. We explore the usability and potential development benefits of three popular open-source serverless platforms in the context of IoT: OpenFaaS, Fission, and OpenWhisk. To address this we discuss our experience developing a serverless and low-latency Distributed Deep Neural Network (DDNN) application. Our findings indicate that these serverless platforms require significant resources to operate and are not ideal for constrained devices. In addition, we archived a 55% improvement compared to Kafka-ML's performance under load, a framework without dynamic scaling support, demonstrating the potential of serverless computing for low-latency applications.","PeriodicalId":21899,"journal":{"name":"Software: Practice and Experience","volume":"18 1","pages":""},"PeriodicalIF":0.0,"publicationDate":"2024-02-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"139765571","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
A distributed tracing pipeline for improving locality awareness of microservices applications 用于提高微服务应用程序定位意识的分布式跟踪管道
Software: Practice and Experience Pub Date : 2024-02-01 DOI: 10.1002/spe.3317
Carmine Colarusso, Assunta De Caro, Ida Falco, Lorenzo Goglia, Eugenio Zimeo
{"title":"A distributed tracing pipeline for improving locality awareness of microservices applications","authors":"Carmine Colarusso, Assunta De Caro, Ida Falco, Lorenzo Goglia, Eugenio Zimeo","doi":"10.1002/spe.3317","DOIUrl":"https://doi.org/10.1002/spe.3317","url":null,"abstract":"The microservices architectural style aims at improving software maintenance and scalability by decomposing applications into independently deployable components. A common criticism about this style is the risk of increasing response times due to communication, especially with very granular entities. Locality‐aware placement of microservices onto the underlying hardware can contribute to keeping response times low. However, the complex graphs of invocations originating from users' calls largely depend on the specific workload (e.g., the length of an invocation chain could depend on the input parameters). Therefore, many existing approaches are not suitable for modern infrastructures where application components can be dynamically redeployed to take into account user expectations. This paper contributes to overcoming the limitations of static or off‐line techniques by presenting a big data pipeline to dynamically collect tracing data from running applications that are used to identify a given number of microservices groups whose deployment allows keeping low the response times of the most critical operations under a defined workload. The results, obtained in different working conditions and with different infrastructure configurations, are presented and discussed to draw the main considerations about the general problem of defining boundary, granularity, and optimal placement of microservices on the underlying execution environment. In particular, they show that knowing how a specific workload impacts the constituent microservices of an application, helps achieve better performance, by effectively lowering response time (e.g., up to a reduction), through the exploitation of locality‐driven clustering strategies for deploying groups of services.","PeriodicalId":21899,"journal":{"name":"Software: Practice and Experience","volume":"16 18","pages":""},"PeriodicalIF":0.0,"publicationDate":"2024-02-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"139831607","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
A distributed tracing pipeline for improving locality awareness of microservices applications 用于提高微服务应用程序定位意识的分布式跟踪管道
Software: Practice and Experience Pub Date : 2024-02-01 DOI: 10.1002/spe.3317
Carmine Colarusso, Assunta De Caro, Ida Falco, Lorenzo Goglia, Eugenio Zimeo
{"title":"A distributed tracing pipeline for improving locality awareness of microservices applications","authors":"Carmine Colarusso, Assunta De Caro, Ida Falco, Lorenzo Goglia, Eugenio Zimeo","doi":"10.1002/spe.3317","DOIUrl":"https://doi.org/10.1002/spe.3317","url":null,"abstract":"The microservices architectural style aims at improving software maintenance and scalability by decomposing applications into independently deployable components. A common criticism about this style is the risk of increasing response times due to communication, especially with very granular entities. Locality‐aware placement of microservices onto the underlying hardware can contribute to keeping response times low. However, the complex graphs of invocations originating from users' calls largely depend on the specific workload (e.g., the length of an invocation chain could depend on the input parameters). Therefore, many existing approaches are not suitable for modern infrastructures where application components can be dynamically redeployed to take into account user expectations. This paper contributes to overcoming the limitations of static or off‐line techniques by presenting a big data pipeline to dynamically collect tracing data from running applications that are used to identify a given number of microservices groups whose deployment allows keeping low the response times of the most critical operations under a defined workload. The results, obtained in different working conditions and with different infrastructure configurations, are presented and discussed to draw the main considerations about the general problem of defining boundary, granularity, and optimal placement of microservices on the underlying execution environment. In particular, they show that knowing how a specific workload impacts the constituent microservices of an application, helps achieve better performance, by effectively lowering response time (e.g., up to a reduction), through the exploitation of locality‐driven clustering strategies for deploying groups of services.","PeriodicalId":21899,"journal":{"name":"Software: Practice and Experience","volume":"64 1-2","pages":""},"PeriodicalIF":0.0,"publicationDate":"2024-02-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"139891490","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
A novel instance-based method for cross-project just-in-time defect prediction 基于实例的跨项目及时缺陷预测新方法
Software: Practice and Experience Pub Date : 2024-01-24 DOI: 10.1002/spe.3316
Xiaoyan Zhu, Tian Qiu, Jiayin Wang, Xin Lai
{"title":"A novel instance-based method for cross-project just-in-time defect prediction","authors":"Xiaoyan Zhu, Tian Qiu, Jiayin Wang, Xin Lai","doi":"10.1002/spe.3316","DOIUrl":"https://doi.org/10.1002/spe.3316","url":null,"abstract":"Cross-project (CP) just-in-time software defect prediction (JIT-SDP) uses CP data to overcome initial data scarcity for training high-performing JIT-SDP classifiers in the early stages of software projects. The primary challenge faced by JIT-SDP in a cross-project context lies in the distinct distributions between training and test data. To tackle this issue, we select source data instances that closely resemble target data for building classifiers. Software datasets commonly exhibit a class imbalance problem, where the ratio of the defective class to the clean class is notably low. This imbalance typically diminishes classifier performance. In this study, we propose an instance selection method utilizing kernel mean matching (ISKMM) that addresses both knowledge transfer and class imbalance in cross-project defect prediction (CPDP). The method employs the kernel mean matching (KMM) technique to assess the similarity between training and target data. It selects instances with high similarity, retains them, and resamples the data based on similarity weighting to mitigate the class imbalance problem. Our experiments, conducted on 10 open-source projects, reveal that the ISKMM algorithm outperforms existing CP single-source software defect prediction (SDP) algorithms. Moreover, when employing the proposed algorithm, defect predictors constructed from cross-project data demonstrate an overall performance comparable to predictors learned from within-project data.","PeriodicalId":21899,"journal":{"name":"Software: Practice and Experience","volume":"122 1","pages":""},"PeriodicalIF":0.0,"publicationDate":"2024-01-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"139562496","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Privacy-preserving task offloading in mobile edge computing: A deep reinforcement learning approach 移动边缘计算中的隐私保护任务卸载:深度强化学习方法
Software: Practice and Experience Pub Date : 2024-01-23 DOI: 10.1002/spe.3314
Fanglue Xia, Ying Chen, Jiwei Huang
{"title":"Privacy-preserving task offloading in mobile edge computing: A deep reinforcement learning approach","authors":"Fanglue Xia, Ying Chen, Jiwei Huang","doi":"10.1002/spe.3314","DOIUrl":"https://doi.org/10.1002/spe.3314","url":null,"abstract":"As machine learning (ML) technologies continue to evolve, there is an increasing demand for data. Mobile crowd sensing (MCS) can motivate more users in the data collection process through reasonable compensation, which can enrich the data scale and coverage. However, nowadays, users are increasingly concerned about their privacy and are unwilling to easily share their personal data. Therefore, protecting privacy has become a crucial issue. In ML, federated learning (FL) is a widely known privacy-preserving technique where the model training process is performed locally by the data owner, which can protect privacy to a large extent. However, as the model size grows, the weak computing power and battery life of user devices are not sufficient to support training a large number of models locally. With mobile edge computing (MEC), user can offload some of the model training tasks to the edge server for collaborative computation, allowing the edge server to participate in the model training process to improve training efficiency. However, edge servers are not fully trusted, and there is still a risk of privacy leakage if data is directly uploaded to the edge server. To address this issue, we design a local differential privacy (LDP) based data privacy-preserving algorithm and a deep reinforcement learning (DRL) based task offloading algorithm. We also propose a privacy-preserving distributed ML framework for MEC and model the cloud-edge-mobile collaborative training process. These algorithms not only enable effective utilization of edge computing to accelerate machine learning model training but also significantly enhance user privacy and save device battery power. We have conducted experiments to verify the effectiveness of the framework and algorithms.","PeriodicalId":21899,"journal":{"name":"Software: Practice and Experience","volume":"7 1","pages":""},"PeriodicalIF":0.0,"publicationDate":"2024-01-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"139557260","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Evolution of internal dimensions in object-oriented software–A time series based approach 面向对象软件内部维度的演变--基于时间序列的方法
Software: Practice and Experience Pub Date : 2024-01-21 DOI: 10.1002/spe.3310
Bruno L. Sousa, Mariza A. S. Bigonha, Kecia A. M. Ferreira, Glaura C. Franco
{"title":"Evolution of internal dimensions in object-oriented software–A time series based approach","authors":"Bruno L. Sousa, Mariza A. S. Bigonha, Kecia A. M. Ferreira, Glaura C. Franco","doi":"10.1002/spe.3310","DOIUrl":"https://doi.org/10.1002/spe.3310","url":null,"abstract":"Software evolution is the process of adapting, maintaining, and updating a software system. This process concentrates the most significant part of the software costs. Many works have studied software evolution and found relevant insights, such as Lehman's laws. However, there is a gap in how software systems evolve from an internal dimensions point of view. For instance, the literature has indicated how systems grow, for example, linearly, sub-linearly, super-linearly, or following the Pareto distribution. However, a well-defined pattern of how this phenomenon occurs has not been established. This work aims to define a novel method to analyze and predict software evolution. We based our strategy on time series analysis, linear regression techniques, and trend tests. In this study, we applied the proposed model to investigate how the internal structure of object-oriented software systems evolves in terms of four dimensions: coupling, inheritance hierarchy, cohesion, and class size. Applying the proposed method, we identify the functions that better explain how the analyzed dimensions evolve. Besides, we investigate how the relationship between dimension metrics behave over the systems' evolution and the set of classes existing in the systems that affect the evolution of these dimensions. We mined and analyzed data from 46 Java-based open-source projects. We used eight software metrics regarding the dimensions analyzed in this study. The main results of this study reveal ten software evolution properties, among them: coupling, cohesion, and inheritance evolve linearly; a relevant percentage of classes contributes to coupling and size evolution; a small percentage of classes contributes to cohesion evolution; there is no relation between the software internal dimensions' evolution. The results also indicate that our method can accurately predict how the software system will evolve in short-term and long-term predictions.","PeriodicalId":21899,"journal":{"name":"Software: Practice and Experience","volume":"34 1","pages":""},"PeriodicalIF":0.0,"publicationDate":"2024-01-21","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"139516846","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
On-demand JSON: A better way to parse documents? 按需 JSON:解析文档的更好方法?
Software: Practice and Experience Pub Date : 2024-01-18 DOI: 10.1002/spe.3313
John Keiser, Daniel Lemire
{"title":"On-demand JSON: A better way to parse documents?","authors":"John Keiser, Daniel Lemire","doi":"10.1002/spe.3313","DOIUrl":"https://doi.org/10.1002/spe.3313","url":null,"abstract":"JSON is a popular standard for data interchange on the Internet. Ingesting JSON documents can be a performance bottleneck. A popular parsing strategy consists in converting the input text into a tree-based data structure—sometimes called a Document Object Model or DOM. We designed and implemented a novel JSON parsing interface—called On-Demand—that appears to the programmer like a conventional DOM-based approach. However, the underlying implementation is a pointer iterating through the content, only materializing the results (objects, arrays, strings, numbers) lazily. On recent commodity processors, an implementation of our approach provides superior performance in multiple benchmarks. To ensure reproducibility, our work is freely available as open source software. Several systems use On Demand: for example, Apache Doris, the Node.js JavaScript runtime, Milvus, and Velox.","PeriodicalId":21899,"journal":{"name":"Software: Practice and Experience","volume":"47 1","pages":""},"PeriodicalIF":0.0,"publicationDate":"2024-01-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"139495743","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Experiences and challenges from developing cyber-physical systems in industry-academia collaboration 产学合作开发网络物理系统的经验和挑战
Software: Practice and Experience Pub Date : 2024-01-17 DOI: 10.1002/spe.3312
Johan Cederbladh, Romina Eramo, Vittoriano Muttillo, Per Erik Strandberg
{"title":"Experiences and challenges from developing cyber-physical systems in industry-academia collaboration","authors":"Johan Cederbladh, Romina Eramo, Vittoriano Muttillo, Per Erik Strandberg","doi":"10.1002/spe.3312","DOIUrl":"https://doi.org/10.1002/spe.3312","url":null,"abstract":"Cyber-physical systems (CPSs) are increasing in developmental complexity. Several emerging technologies, such as Model-based engineering, DevOps, and Artificial intelligence, are expected to alleviate the associated complexity by introducing more advanced capabilities. The AIDOaRt research project investigates how the aforementioned technologies can assist in developing complex CPSs in various industrial use cases. In this paper, we discuss the experiences of industry and academia collaborating to improve the development of complex CPSs through the experiences in the research project. In particular, the paper presents the results of two working groups that examined the challenges of developing complex CPSs from an industrial and academic perspective when considering the previously mentioned technologies. We present five identified challenge areas from developing complex CPSs and discuss them from the perspective of industry and academia: data, modeling, requirements engineering, continuous software and system engineering, as well as intelligence and automation. Furthermore, we highlight practical experience in collaboration from the project via two explicit use cases and connect them to the challenge areas. Finally, we discuss some lessons learned through the collaborations, which might foster future collaborative efforts.","PeriodicalId":21899,"journal":{"name":"Software: Practice and Experience","volume":"11 1","pages":""},"PeriodicalIF":0.0,"publicationDate":"2024-01-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"139495747","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
相关产品
×
本文献相关产品
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信