Pub Date : 2022-08-01DOI: 10.1109/SEAA56994.2022.00061
Lisa Sonnleithner, Rick Rabiser, Alois Zoitl
Bad Smells are sub-optimal software structures or patterns. They can obstruct the understandability of a software system and cause maintenance issues. As a result, it is critical to avoid Bad Smells. While the subject is well-researched in software engineering, it remains an unresolved issue in industrial automation, e.g., when developing control software in the context of a Cyber-Physical Production System (CPPS). In this short paper, we present possible detection methods for Feature Envy, a smell that indicates bad modularization of a software system. We explain how these methods can be applied to analyze control software developed in IEC 61499. We present first results as well as next steps.
{"title":"Bad Smells in Industrial Automation: Sniffing out Feature Envy","authors":"Lisa Sonnleithner, Rick Rabiser, Alois Zoitl","doi":"10.1109/SEAA56994.2022.00061","DOIUrl":"https://doi.org/10.1109/SEAA56994.2022.00061","url":null,"abstract":"Bad Smells are sub-optimal software structures or patterns. They can obstruct the understandability of a software system and cause maintenance issues. As a result, it is critical to avoid Bad Smells. While the subject is well-researched in software engineering, it remains an unresolved issue in industrial automation, e.g., when developing control software in the context of a Cyber-Physical Production System (CPPS). In this short paper, we present possible detection methods for Feature Envy, a smell that indicates bad modularization of a software system. We explain how these methods can be applied to analyze control software developed in IEC 61499. We present first results as well as next steps.","PeriodicalId":269970,"journal":{"name":"2022 48th Euromicro Conference on Software Engineering and Advanced Applications (SEAA)","volume":"15 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114826407","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}
Pub Date : 2022-08-01DOI: 10.1109/SEAA56994.2022.00081
K. Rahman, Clemente Izurieta
For the last few decades, the number of security vulnerabilities has been increasing with the development of web applications. The domain of Web Applications is evolving. As a result, many empirical studies have been carried out to address different security vulnerabilities. However, an analysis of existing studies is needed before developing new security vulnerability testing techniques. We perform a systematic mapping study documenting state-of-the-art empirical research in web application security vulnerability detection. The aim is to describe a roadmap for synthesizing the documented empirical research. Existing research and literature have been reviewed using a systematic mapping study. Our study reports on work dating from 2001 to 2021. The initial search retrieved 150 papers from the IEEE Xplore and ACM Digital Libraries, of which 76 were added to the study. A classification scheme is derived based on the primary studies. The study demonstrates that vulnerability detection in web applications is an ongoing field of research and that the number of publications is increasing. Our study helps illuminate research areas that need more consideration.
{"title":"A Mapping Study of Security Vulnerability Detection Approaches for Web Applications","authors":"K. Rahman, Clemente Izurieta","doi":"10.1109/SEAA56994.2022.00081","DOIUrl":"https://doi.org/10.1109/SEAA56994.2022.00081","url":null,"abstract":"For the last few decades, the number of security vulnerabilities has been increasing with the development of web applications. The domain of Web Applications is evolving. As a result, many empirical studies have been carried out to address different security vulnerabilities. However, an analysis of existing studies is needed before developing new security vulnerability testing techniques. We perform a systematic mapping study documenting state-of-the-art empirical research in web application security vulnerability detection. The aim is to describe a roadmap for synthesizing the documented empirical research. Existing research and literature have been reviewed using a systematic mapping study. Our study reports on work dating from 2001 to 2021. The initial search retrieved 150 papers from the IEEE Xplore and ACM Digital Libraries, of which 76 were added to the study. A classification scheme is derived based on the primary studies. The study demonstrates that vulnerability detection in web applications is an ongoing field of research and that the number of publications is increasing. Our study helps illuminate research areas that need more consideration.","PeriodicalId":269970,"journal":{"name":"2022 48th Euromicro Conference on Software Engineering and Advanced Applications (SEAA)","volume":"46 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126598541","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}
Pub Date : 2022-08-01DOI: 10.1109/SEAA56994.2022.00060
Felix Rinker, Kristof Meixner, S. Kropatschek, Elmar Kiesling, S. Biffl
In agile Cyber-physical Production System (CPPS) engineering, multi-disciplinary teams work concurrently and iteratively on various CPPS engineering artifacts, based on engineering models and Product-Process-Resource (PPR) knowledge, to design and build a production system. However, in such settings it is difficult to keep track of (i) the effects of changes across engineering disciplines, and (ii) their implications on risks to engineering quality, represented in Failure Mode and Effects Analysis (FMEA). To tackle these challenges and systematically co-evolve FMEA and PPR models, requires propagating and validating changes across engineering and FMEA artifacts. To this end, we design and evaluate a Multi-view FMEA +PPR (MvFMEA+PPR) meta-model to represent relationships between FMEA elements and CPPS engineering assets and trace their change states and dependencies in the design and validation lifecycle. We evaluate the MvFMEA + PPR meta-model in a feasibility study on the quality of a screwing process from automotive production. The study results indicate the MvFMEA + PPR meta-model to be more effective than alternative traditional approaches.
{"title":"Risk and Engineering Knowledge Integration in Cyber-physical Production Systems Engineering","authors":"Felix Rinker, Kristof Meixner, S. Kropatschek, Elmar Kiesling, S. Biffl","doi":"10.1109/SEAA56994.2022.00060","DOIUrl":"https://doi.org/10.1109/SEAA56994.2022.00060","url":null,"abstract":"In agile Cyber-physical Production System (CPPS) engineering, multi-disciplinary teams work concurrently and iteratively on various CPPS engineering artifacts, based on engineering models and Product-Process-Resource (PPR) knowledge, to design and build a production system. However, in such settings it is difficult to keep track of (i) the effects of changes across engineering disciplines, and (ii) their implications on risks to engineering quality, represented in Failure Mode and Effects Analysis (FMEA). To tackle these challenges and systematically co-evolve FMEA and PPR models, requires propagating and validating changes across engineering and FMEA artifacts. To this end, we design and evaluate a Multi-view FMEA +PPR (MvFMEA+PPR) meta-model to represent relationships between FMEA elements and CPPS engineering assets and trace their change states and dependencies in the design and validation lifecycle. We evaluate the MvFMEA + PPR meta-model in a feasibility study on the quality of a screwing process from automotive production. The study results indicate the MvFMEA + PPR meta-model to be more effective than alternative traditional approaches.","PeriodicalId":269970,"journal":{"name":"2022 48th Euromicro Conference on Software Engineering and Advanced Applications (SEAA)","volume":"17 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126604335","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}
Pub Date : 2022-08-01DOI: 10.1109/SEAA56994.2022.00068
Niels van Harten, C. Damasceno, D. Strüber
In search-based software engineering (SBSE), the choice of search operators can significantly impact the quality of the obtained solutions and the efficiency of the search. Recent work in the context of combining SBSE with model-driven engineering has investigated the idea of automatically generating smart search operators for the case at hand. While showing improvements, this previous work focused on single-objective optimization, a restriction that prohibits a broader use for many SBSE scenarios. Furthermore, since it did not allow users to customize the generation, it could miss out on useful domain knowledge that may further improve the quality of the generated operators. To address these issues, we propose a customizable framework for generating mutation operators for multi-objective problems. It generates mutation operators in the form of model transformations that can modify solutions represented as instances of the given problem meta-model. To this end, we extend an existing framework to support multi-objective problems as well as customization based on domain knowledge, including the capability to specify manual “baseline” operators that are refined during the operator generation. Our evaluation based on the Next Release Problem shows that the automated generation of mutation operators and user-provided domain knowledge can improve the performance of the search without sacrificing the overall result quality.
{"title":"Model-Driven optimization: Generating Smart Mutation Operators for Multi-Objective Problems","authors":"Niels van Harten, C. Damasceno, D. Strüber","doi":"10.1109/SEAA56994.2022.00068","DOIUrl":"https://doi.org/10.1109/SEAA56994.2022.00068","url":null,"abstract":"In search-based software engineering (SBSE), the choice of search operators can significantly impact the quality of the obtained solutions and the efficiency of the search. Recent work in the context of combining SBSE with model-driven engineering has investigated the idea of automatically generating smart search operators for the case at hand. While showing improvements, this previous work focused on single-objective optimization, a restriction that prohibits a broader use for many SBSE scenarios. Furthermore, since it did not allow users to customize the generation, it could miss out on useful domain knowledge that may further improve the quality of the generated operators. To address these issues, we propose a customizable framework for generating mutation operators for multi-objective problems. It generates mutation operators in the form of model transformations that can modify solutions represented as instances of the given problem meta-model. To this end, we extend an existing framework to support multi-objective problems as well as customization based on domain knowledge, including the capability to specify manual “baseline” operators that are refined during the operator generation. Our evaluation based on the Next Release Problem shows that the automated generation of mutation operators and user-provided domain knowledge can improve the performance of the search without sacrificing the overall result quality.","PeriodicalId":269970,"journal":{"name":"2022 48th Euromicro Conference on Software Engineering and Advanced Applications (SEAA)","volume":"48 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125176831","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}
Pub Date : 2022-08-01DOI: 10.1109/SEAA56994.2022.00040
S. Amasaki, Hirohisa Aman, Tomoyuki Yokogawa
CONTEXT: Software defect prediction (SDP) is an active research topic to support software quality assurance (SQA) activities. It was observed that unsupervised prediction models were often competitive with supervised ones at release-level and change-level defect prediction. Fine-grained just-in-time defect prediction focuses on defective files in a change, rather than the whole change. A recent study showed that the fine-grained just-in-time defect prediction was cost-effective in terms of effort-aware performance measures. Those studies did not explore the effectiveness of supervised and unsupervised models at that finer level in terms of effort-aware performance measures. OBJECTIVE: To examine the performance of supervised and unsupervised prediction models in the context of fine-grained defect prediction in terms of effort-aware performance measures. METHOD: Experiments with a time-sensitive approach were conducted to evaluate the predictive performance of supervised and unsupervised methods proposed in past studies. Datasets from OSS projects with manually validated defect links were employed from a past study. RESULTS: The use of manually validated links led to low-performance results. No clear difference among supervised and unsupervised methods was found while CBS+, a supervised method, was the best method in terms of F-measure. Even CBS+ did not achieve reasonable performance. A non-linear learning algorithm did not help the performance improvement. CONCLUSION: No clear preference among unsupervised and supervised methods. CBS+ was the best method on average. The predictive performance was still a challenge.
{"title":"An Evaluation of Effort-Aware Fine-Grained Just-in-Time Defect Prediction Methods","authors":"S. Amasaki, Hirohisa Aman, Tomoyuki Yokogawa","doi":"10.1109/SEAA56994.2022.00040","DOIUrl":"https://doi.org/10.1109/SEAA56994.2022.00040","url":null,"abstract":"CONTEXT: Software defect prediction (SDP) is an active research topic to support software quality assurance (SQA) activities. It was observed that unsupervised prediction models were often competitive with supervised ones at release-level and change-level defect prediction. Fine-grained just-in-time defect prediction focuses on defective files in a change, rather than the whole change. A recent study showed that the fine-grained just-in-time defect prediction was cost-effective in terms of effort-aware performance measures. Those studies did not explore the effectiveness of supervised and unsupervised models at that finer level in terms of effort-aware performance measures. OBJECTIVE: To examine the performance of supervised and unsupervised prediction models in the context of fine-grained defect prediction in terms of effort-aware performance measures. METHOD: Experiments with a time-sensitive approach were conducted to evaluate the predictive performance of supervised and unsupervised methods proposed in past studies. Datasets from OSS projects with manually validated defect links were employed from a past study. RESULTS: The use of manually validated links led to low-performance results. No clear difference among supervised and unsupervised methods was found while CBS+, a supervised method, was the best method in terms of F-measure. Even CBS+ did not achieve reasonable performance. A non-linear learning algorithm did not help the performance improvement. CONCLUSION: No clear preference among unsupervised and supervised methods. CBS+ was the best method on average. The predictive performance was still a challenge.","PeriodicalId":269970,"journal":{"name":"2022 48th Euromicro Conference on Software Engineering and Advanced Applications (SEAA)","volume":"67 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130707580","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}
Pub Date : 2022-08-01DOI: 10.1109/SEAA56994.2022.00024
A. R. Fasolino, Porfirio Tramontana
Capture and Replay techniques provide a well-known solution for End-To-End (E2E) testing of Web applications. They allow a tester to generate test scripts without requiring advanced programming skills. For this reason, they are very popular in acceptance and regression testing activities. These techniques are affected by the issue of fragility of the produced test cases, which may break even if small changes are operated in the user interface, without modifications of the app functionality. To overcome this issue, several approaches for either generating robust test cases or automatically repairing broken test cases have been proposed. In this paper we propose an alternative solution that aims at improving the testability of Web applications for generating robust test cases. This solution applies to Web applications developed with template-based technologies. It is based on the template source code automatic injection of additional hook attributes and on the proposal of a new type of locators based on such hooks. These locators aid the unique retrieval of the user interface items involved in test cases. We validated our technique in the context of a continuous integration and delivery processes of template-based web applications that was developed from scratch. The study showed that the use of hook-based locators can improve the robustness of test cases generated by a Capture & Replay testing tool, introducing relevant savings in the regression test case repairing activity.
{"title":"Towards the Generation of Robust E2E Test Cases in Template-based Web Applications","authors":"A. R. Fasolino, Porfirio Tramontana","doi":"10.1109/SEAA56994.2022.00024","DOIUrl":"https://doi.org/10.1109/SEAA56994.2022.00024","url":null,"abstract":"Capture and Replay techniques provide a well-known solution for End-To-End (E2E) testing of Web applications. They allow a tester to generate test scripts without requiring advanced programming skills. For this reason, they are very popular in acceptance and regression testing activities. These techniques are affected by the issue of fragility of the produced test cases, which may break even if small changes are operated in the user interface, without modifications of the app functionality. To overcome this issue, several approaches for either generating robust test cases or automatically repairing broken test cases have been proposed. In this paper we propose an alternative solution that aims at improving the testability of Web applications for generating robust test cases. This solution applies to Web applications developed with template-based technologies. It is based on the template source code automatic injection of additional hook attributes and on the proposal of a new type of locators based on such hooks. These locators aid the unique retrieval of the user interface items involved in test cases. We validated our technique in the context of a continuous integration and delivery processes of template-based web applications that was developed from scratch. The study showed that the use of hook-based locators can improve the robustness of test cases generated by a Capture & Replay testing tool, introducing relevant savings in the regression test case repairing activity.","PeriodicalId":269970,"journal":{"name":"2022 48th Euromicro Conference on Software Engineering and Advanced Applications (SEAA)","volume":"345 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124260758","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}
Pub Date : 2022-08-01DOI: 10.1109/SEAA56994.2022.00057
Jacinto Ramirez Lahti, A. Tuovinen, T. Mikkonen, Rafael Capilla
Technical debt analysis is used to detect problems in a codebase. Most technical debt indicators rely on measuring the quality of the code, as developers tend to induce recurring technical debt that emerges along with evolution cycles. This debt can emerge when project pressure leads to process deviations, for instance. In agile methods like Scrum, such deviations are commonly known as ScrumButs (like Scrum but …), which can be considered as a form of process debt. In this paper, we investigate two recurring signs of process debt (i.e. code smells and anti-patterns) caused by Scrumbuts. Our contribution investigates typical ScrumBut practices found in agile projects in one company and we report the relationships found between problems in code and ScrumBut issues. Our findings identify three types of ScrumButs, their root causes, and how these relate to concrete code smells and anti-patterns.
{"title":"ScrumBut as an Indicator of Process Debt","authors":"Jacinto Ramirez Lahti, A. Tuovinen, T. Mikkonen, Rafael Capilla","doi":"10.1109/SEAA56994.2022.00057","DOIUrl":"https://doi.org/10.1109/SEAA56994.2022.00057","url":null,"abstract":"Technical debt analysis is used to detect problems in a codebase. Most technical debt indicators rely on measuring the quality of the code, as developers tend to induce recurring technical debt that emerges along with evolution cycles. This debt can emerge when project pressure leads to process deviations, for instance. In agile methods like Scrum, such deviations are commonly known as ScrumButs (like Scrum but …), which can be considered as a form of process debt. In this paper, we investigate two recurring signs of process debt (i.e. code smells and anti-patterns) caused by Scrumbuts. Our contribution investigates typical ScrumBut practices found in agile projects in one company and we report the relationships found between problems in code and ScrumBut issues. Our findings identify three types of ScrumButs, their root causes, and how these relate to concrete code smells and anti-patterns.","PeriodicalId":269970,"journal":{"name":"2022 48th Euromicro Conference on Software Engineering and Advanced Applications (SEAA)","volume":"218 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122394850","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}
Pub Date : 2022-08-01DOI: 10.1109/SEAA56994.2022.00010
Osayande P. Omondiagbe, Sherlock A. Licorish, Stephen G. MacDonell
Cross-project defect prediction (CPDP) models are used in new software project prediction tasks to improve defect prediction rates. The development of these CPDP models could be challenging in cases where there is little or no historical data. For this reason, researchers may need to rely on multiple sources and use transfer learning-based CPDP for building defect prediction models. These data are typically taken from similar and related projects, but their distributions can be different from the new software project (target data). Although, transfer learning-based CPDP models are designed to handle these distribution differences, but if not correctly handled by the model, may lead to negative transfer. To this end, recent works have focused on building transfer CPDP models, but little is known about how similar or dissimilar sources should be to avoid negative transfer. This paper provides the first empirical investigation to understand the effect of combining different sources with different levels of similarities in transfer CPDP. We introduce the use of the Population Stability Index (PSI) to interpret whether the distribution of the combined or single-source data is similar to the target data. This was validated using an adversarial approach. Experimental results on three public datasets reveal that when the source and target distribution are very similar, the probability of false alarm is improved by 3% to 7% and the recall indicator is reduced from 1% to 8%. Interestingly, we also found that when dissimilar source data are combined with different source datasets, the overall domain divergence is lowered, and the performance is improved. The results highlight the importance of using the right source to aid the learning process.
{"title":"Negative Transfer in Cross Project Defect Prediction: Effect of Domain Divergence","authors":"Osayande P. Omondiagbe, Sherlock A. Licorish, Stephen G. MacDonell","doi":"10.1109/SEAA56994.2022.00010","DOIUrl":"https://doi.org/10.1109/SEAA56994.2022.00010","url":null,"abstract":"Cross-project defect prediction (CPDP) models are used in new software project prediction tasks to improve defect prediction rates. The development of these CPDP models could be challenging in cases where there is little or no historical data. For this reason, researchers may need to rely on multiple sources and use transfer learning-based CPDP for building defect prediction models. These data are typically taken from similar and related projects, but their distributions can be different from the new software project (target data). Although, transfer learning-based CPDP models are designed to handle these distribution differences, but if not correctly handled by the model, may lead to negative transfer. To this end, recent works have focused on building transfer CPDP models, but little is known about how similar or dissimilar sources should be to avoid negative transfer. This paper provides the first empirical investigation to understand the effect of combining different sources with different levels of similarities in transfer CPDP. We introduce the use of the Population Stability Index (PSI) to interpret whether the distribution of the combined or single-source data is similar to the target data. This was validated using an adversarial approach. Experimental results on three public datasets reveal that when the source and target distribution are very similar, the probability of false alarm is improved by 3% to 7% and the recall indicator is reduced from 1% to 8%. Interestingly, we also found that when dissimilar source data are combined with different source datasets, the overall domain divergence is lowered, and the performance is improved. The results highlight the importance of using the right source to aid the learning process.","PeriodicalId":269970,"journal":{"name":"2022 48th Euromicro Conference on Software Engineering and Advanced Applications (SEAA)","volume":"12 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125052610","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}
Pub Date : 2022-08-01DOI: 10.1109/SEAA56994.2022.00042
Vincenzo Luigi Martino, C. Gravino
We present a systematic literature review performed to understand and summarize the application of COSMIC which is a functional size measurement (FSM) method, mainly applied for estimating software development effort. The results reveals that it is considered to be suitable for a broader range of application domains, e.g., Web applications, Mobile app. Furthermore, the review shows that a lot has been done also for automating the use of COSMIC as well as for rapidly and early applying the method through some approximations.
{"title":"Using COSMIC to measure functional size of software: a Systematic Literature Review","authors":"Vincenzo Luigi Martino, C. Gravino","doi":"10.1109/SEAA56994.2022.00042","DOIUrl":"https://doi.org/10.1109/SEAA56994.2022.00042","url":null,"abstract":"We present a systematic literature review performed to understand and summarize the application of COSMIC which is a functional size measurement (FSM) method, mainly applied for estimating software development effort. The results reveals that it is considered to be suitable for a broader range of application domains, e.g., Web applications, Mobile app. Furthermore, the review shows that a lot has been done also for automating the use of COSMIC as well as for rapidly and early applying the method through some approximations.","PeriodicalId":269970,"journal":{"name":"2022 48th Euromicro Conference on Software Engineering and Advanced Applications (SEAA)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127911364","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}
Pub Date : 2022-08-01DOI: 10.1109/SEAA56994.2022.00059
Jubril Gbolahan Adigun, Linus Eisele, M. Felderer
Metamorphic testing has proven to be effective for test case generation and fault detection in many domains. It is a software testing strategy that uses certain relations between input-output pairs of a program, referred to as metamorphic relations. This approach is relevant in the autonomous systems domain since it helps in cases where the outcome of a given test input may be difficult to determine. In this paper therefore, we provide an overview of metamorphic testing as well as an implementation in the autonomous systems domain. We implement an obstacle detection and avoidance task in autonomous drones utilising the GNC API alongside a simulation in Gazebo. Particularly, we describe properties and best practices that are crucial for the development of effective metamorphic relations. We also demonstrate two metamorphic relations for metamorphic testing of single and more than one drones, respectively. Our relations reveal several properties and some weak spots of both the implementation and the avoidance algorithm in the light of metamorphic testing. The results indicate that metamorphic testing has great potential in the autonomous systems domain and should be considered for quality assurance in this field.
{"title":"Metamorphic Testing in Autonomous System Simulations","authors":"Jubril Gbolahan Adigun, Linus Eisele, M. Felderer","doi":"10.1109/SEAA56994.2022.00059","DOIUrl":"https://doi.org/10.1109/SEAA56994.2022.00059","url":null,"abstract":"Metamorphic testing has proven to be effective for test case generation and fault detection in many domains. It is a software testing strategy that uses certain relations between input-output pairs of a program, referred to as metamorphic relations. This approach is relevant in the autonomous systems domain since it helps in cases where the outcome of a given test input may be difficult to determine. In this paper therefore, we provide an overview of metamorphic testing as well as an implementation in the autonomous systems domain. We implement an obstacle detection and avoidance task in autonomous drones utilising the GNC API alongside a simulation in Gazebo. Particularly, we describe properties and best practices that are crucial for the development of effective metamorphic relations. We also demonstrate two metamorphic relations for metamorphic testing of single and more than one drones, respectively. Our relations reveal several properties and some weak spots of both the implementation and the avoidance algorithm in the light of metamorphic testing. The results indicate that metamorphic testing has great potential in the autonomous systems domain and should be considered for quality assurance in this field.","PeriodicalId":269970,"journal":{"name":"2022 48th Euromicro Conference on Software Engineering and Advanced Applications (SEAA)","volume":"15 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121488762","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}