Show simple item record

dc.contributor.authorMukelabai, Mukelabai
dc.date.accessioned2022-09-08T09:55:27Z
dc.date.available2022-09-08T09:55:27Z
dc.date.issued2022-09-08
dc.identifier.isbn978-91-8009-955-4 (PRINT)
dc.identifier.isbn978-91-8009-956-1 (PDF)
dc.identifier.urihttps://hdl.handle.net/2077/73449
dc.description.abstractContext: Many software systems exist in several variants customized for specific stakeholder requirements, such as different market segments or hardware constraints. This customization introduces a high level of complexity that renders traditional single-system quality assurance techniques inapplicable, since they need to consider variations and constraints between a system’s features—a.k.a feature-oriented or variability-aware analysis. While several analysis techniques have been conceived in the last two decades for this purpose, they mostly target a branch of variant-rich systems called software product lines, and are less applicable to systems that still rely on cloning strategies to engineer variants—a.k.a low-maturity variant-rich systems. Among other reasons, this is because such systems exhibit: immature architectures that do not systematically account for variability, redundancy that is not exploited to reduce analysis effort, and missing essential meta-information such as feature constraints and locations of features in source code. Objective: This research aims to facilitate quality assurance in low-maturity variant-rich systems. Through analysis of the state-of-practice, we propose techniques that can improve maturity and help developers of such systems mitigate some challenges posed by redundancy. Method: First, we conducted a survey and interviews with practitioners to identify industrial needs and practices for analyzing variant-rich systems, followed by a case study of some open source systems to understand where developers record information necessary for feature-oriented analysis. Then, we designed and systematically evaluated a technique and a tool that can improve the maturity of variant rich systems by supporting feature recording, and two techniques that can reduce analysis effort. Results: Our results stem from two main contributions: our analysis of the state-of-practice and techniques we propose for improving maturity to facilitate feature-oriented analysis in low-maturity variant-rich systems. For the former, we present results of a survey and interviews targeting 27 practitioners from 18 companies in 8 countries to understand industrial practices and needs for analyzing variant-rich systems. Then, we present our empirical understanding of features and their characteristics (facets) based on a case study of two industrial open-source systems. For the latter, we present design decisions and an evaluation of a tool and technique that help developers proactively and continuously record features. Then, we present empirical data on the potential of two techniques for reducing QA effort: one for predicting software defects at the level of features (evaluated on 13 open-source systems), and another for propagating test cases across forked projects, i.e., projects with similar but cloned features (evaluated on over 426,000 test cases from 2,153 projects). Conclusion: This thesis identifies the lack of adoption of feature-oriented quality assurance techniques in industry, and addresses the problem through tools and techniques for feature recording and quality assurance effort reduction.en_US
dc.language.isoengen_US
dc.relation.ispartofseries225Den_US
dc.relation.haspartMukelabai, M., Nešić, D., Maro, S., Berger, T., & Steghöfer, J. P. (2018, September). Tackling combinatorial explosion: a study of industrial needs and practices for analyzing highly configurable systems. In Proceedings of the 33rd ACM/IEEE International Conference on Automated Software Engineering (pp. 155-166).en_US
dc.relation.haspartKrüger, J., Mukelabai, M., Gu, W., Shen, H., Hebig, R., & Berger, T. (2019). Where is my feature and what is it about? a case study on recovering feature facets. Journal of Systems and Software, 152, 239-253.en_US
dc.relation.haspartMartinson, J., Jansson, H., Mukelabai, M., Berger, T., Bergel, A., & Ho-Quang, T. (2021, September). HAnS: IDE-based editing support for embedded feature annotations. In Proceedings of the 25th ACM International Systems and Software Product Line Conference-Volume B (pp. 28-31).en_US
dc.relation.haspartMukelabai, M., Berger, T., & Borba, P. (2021, May). Semi-automated test-case propagation in fork ecosystems. In 2021 IEEE/ACM 43rd International Conference on Software Engineering: New Ideas and Emerging Results (ICSE-NIER) (pp. 46-50). IEEE.en_US
dc.subjectVariant-Rich Systemsen_US
dc.subjectCloned Projectsen_US
dc.subjectQuality Assuranceen_US
dc.subjectFeature Locationen_US
dc.subjectTest Case Reuseen_US
dc.subjectRecommender Systemen_US
dc.titleFacilitating Feature-Oriented Quality Assurance in Low-Maturity Variant-rich Systemsen_US
dc.typeText
dc.type.svepDoctoral thesis
dc.gup.mailmukemuke2008@gmail.comen_US
dc.type.degreeDoctor of Philosophyen_US
dc.gup.originUniversity of Gothenburg. IT Facultyen_US
dc.gup.departmentDepartment of Computer Science and Engineering ; Institutionen för data- och informationstekniken_US
dc.citation.doiITF
dc.gup.defenceplaceTorsdag den 29 Sept. 2021, kl. 13.00, Jupiter 520, Hörselgången 5, Lindholmenen_US
dc.gup.defencedate2022-09-29


Files in this item

Thumbnail
Thumbnail
Thumbnail

This item appears in the following Collection(s)

Show simple item record