Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Utilizing Continuous Integration environments for evaluation of software quality attributes
Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.ORCID iD: 0000-0001-5949-1375
2023 (English)Licentiate thesis, comprehensive summary (Other academic)
Abstract [en]

Software quality attributes are properties that reflect the quality of a software system, and Non-functional requirements (NFRs) are the specifications that define how a software system should perform to reach a desired level of goals of the quality attributes.The evaluation of quality attributes is important to show the effectiveness of a system in meeting customers' NFRs.

Continuous integration (CI) environments have emerged as powerful platforms for organizations to improve software quality through automated software verification and validation.Despite this, there is a growing need for evaluating quality attributes that is often met by in-house development of metrics and tools.This highlights the importance of quality attributes for software product quality.

This thesis investigates the association between quality attributes and components of a CI environment, as well as how to utilize these components for evaluating software quality attributes.The focus is on improving the knowledge of the evaluation and providing specific recommendations for companies to enhance their CI environments for higher demands of quality evaluation.The contributions of this thesis include a better understanding of the relationship between quality attributes and CI components, and a set of practical guidelines for companies to effectively leverage CI for quality attribute evaluation.

The studies in this thesis utilized mixed methodologies, including a systematic literature review, a multi-case study conducted in four software development companies, and an synthesis of the collected data.The multi-case study provided a comprehensive overview of practices for quality attribute evaluation and how CI components can generate data to support the evaluation of specific attributes.The synthesis study presents a maturity model based on the collected data from both academia and industry, and the model can aid organizations in assessing their current level of maturity in utilizing CI environments to identify potential improvements.The results in these studies show the capabilities of different components of a CI environment and how these components can be used to support the evaluation of quality attributes.While the use of CI environments for the thesis topic offers benefits, it also presents several challenges, for example, the challenge to identify effective quality metrics.

In conclusion, this thesis contributes to the understanding of the use of CI environments for evaluating software quality attributes.The results suggest that CI environments can be an effective approach for quality attribute evaluation, but suitable metrics need to be considered to ensure accurate and meaningful evaluation results. Furthermore, the thesis presents areas for future research, such as the use of machine learning techniques to improve the accuracy of quality assessment using CI environments.

Place, publisher, year, edition, pages
Karlskrona: Blekinge Tekniska Högskola, 2023.
Series
Blekinge Institute of Technology Licentiate Dissertation Series, ISSN 1650-2140 ; 5
Keywords [en]
Quality attributes, Quality metrics, Non-functional requirement, Continuous integration, Empirical software engineering
National Category
Software Engineering
Research subject
Software Engineering
Identifiers
URN: urn:nbn:se:bth-24402ISBN: 978-91-7295-457-1 (print)OAI: oai:DiVA.org:bth-24402DiVA, id: diva2:1750312
Presentation
2023-06-14, J1630 + Zoom, Karlskrona, 13:00 (English)
Opponent
Supervisors
Available from: 2023-04-17 Created: 2023-04-12 Last updated: 2023-08-22Bibliographically approved
List of papers
1. Utilising CI environment for efficient and effective testing of NFRs
Open this publication in new window or tab >>Utilising CI environment for efficient and effective testing of NFRs
2020 (English)In: Information and Software Technology, ISSN 0950-5849, E-ISSN 1873-6025, Vol. 117, article id 106199Article in journal (Refereed) Published
Abstract [en]

Context: Continuous integration (CI) is a practice that aims to continuously verify quality aspects of a software intensive system both for functional and non-functional requirements (NFRs). Functional requirements are the inputs of development and can be tested in isolation, utilising either manual or automated tests. In contrast, some NFRs are difficult to test without functionality, for NFRs are often aspects of functionality and express quality aspects. Lacking this testability attribute makes NFR testing complicated and, therefore, underrepresented in industrial practice. However, the emergence of CI has radically affected software development and created new avenues for software quality evaluation and quality information acquisition. Research has, consequently, been devoted to the utilisation of this additional information for more efficient and effective NFR verification. Objective: We aim to identify the state-of-the-art of utilising the CI environment for NFR testing, hereinafter referred to as CI-NFR testing. Method: Through rigorous selection, from an initial set of 747 papers, we identified 47 papers that describe how NFRs are tested in a CI environment. Evidence-based analysis, through coding, is performed on the identified papers in this SLR. Results: Firstly, ten CI approaches are described by the papers selected, each describing different tools and nine different NFRs where reported to be tested. Secondly, although possible, CI-NFR testing is associated with eight challenges that adversely affect its adoption. Thirdly, the identified CI-NFR testing processes are tool-driven, but there is a lack of NFR testing tools that can be used in the CI environment. Finally, we proposed a CI framework for NFRs testing. Conclusion: A synthesised CI framework is proposed for testing various NFRs, and associated CI tools are also mapped. This contribution is valuable as results of the study also show that CI-NFR testing can help improve the quality of NFR testing in practices. © 2019

Place, publisher, year, edition, pages
Elsevier B.V., 2020
Keywords
Agile, CI, Continuous integration, DevOps, NFR, Non-functional requirement, SAFe, Scaled agile framework, Computer software selection and evaluation, Integral equations, Paper, Software design, Continuous integrations, Non-functional requirements, Quality control
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-18829 (URN)10.1016/j.infsof.2019.106199 (DOI)000496874400005 ()2-s2.0-85073572821 (Scopus ID)
Available from: 2019-10-31 Created: 2019-10-31 Last updated: 2024-12-30Bibliographically approved
2. Automated NFR testing in Continuous Integration Environments: a multi-case study of Nordic companies
Open this publication in new window or tab >>Automated NFR testing in Continuous Integration Environments: a multi-case study of Nordic companies
2023 (English)In: Empirical Software Engineering, ISSN 1382-3256, E-ISSN 1573-7616, Vol. 28, no 6, article id 144Article in journal (Refereed) Published
Abstract [en]

Context: Non-functional requirements (NFRs) (also referred to as system qualities) are essential for developing high-quality software.Notwithstanding its importance, NFR testing remains challenging, especially in terms of automation.Compared to manual verification, automated testing shows the potential to improve the efficiency and effectiveness of quality assurance, especially in the context of  Continuous Integration (CI).However, studies on how companies manage automated NFR testing through CI are limited.

Objective: This study examines how automated NFR testing can be enabledand supported using CI environments in software development companies.

Method: We performed a multi-case study at four companies by conducting 22 semi-structured interviews with industrial practitioners.

Results: Maintainability, reliability, performance, security and scalability, were found to be evaluated with automated tests in CI environments.Testing practices, quality metrics, and challenges for measuring NFRs were reported.

Conclusions: This study presents an empirically derived model that shows how data produced by CI environments can be used for evaluation and monitoring of implemented NFR quality. Additionally, the manuscript presents explicit metrics, CI components, tools, and challenges that shall be considered while performing NFR testing in practice.

Place, publisher, year, edition, pages
Springer, 2023
Keywords
Automated testing, Case study, CI, Continuous integration, Metrics, NFR, Non-functional requirements, Automation, Integration, Integration testing, Quality control, Software design, Case-studies, Continuous integrations, Integration environments, Metric, Nordic companies, System quality, Quality assurance
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-24400 (URN)10.1007/s10664-023-10356-1 (DOI)001087927600001 ()2-s2.0-85174862814 (Scopus ID)
Funder
Knowledge Foundation, 20180010Knowledge Foundation, 20170213
Available from: 2023-03-29 Created: 2023-03-29 Last updated: 2024-08-07Bibliographically approved
3. Utilizing Continuous Integration environments for evaluation of software quality attributes: a practical road map
Open this publication in new window or tab >>Utilizing Continuous Integration environments for evaluation of software quality attributes: a practical road map
(English)Manuscript (preprint) (Other academic)
Abstract [en]

The evaluation of quality attributes is often conducted in an ad-hoc manner in many companies.This practice, although often necessary to reduce cost, can lead to inefficient work and undetected quality defects.To mitigate these issues, approaches that make use of metrics/data from Continuous Integration (CI) environments have been proposed, offering many advantages, including timely feedback on code quality, early detection of quality issues, and visual representation of system quality trends.

Despite these known benefits, there is a lack of frameworks that provide guidelines how to utilize CI environments, or their components, for quality attribute evaluation.Such guidelines are important since market demands on software quality factors, e.g., security or performance, are growing.Therefore, this study aims to explore the state-of-the-practice in using CI environments and identify shared guidelines underlying industrial practices.To achieve our research objectives, we conducted a multi-case study involving four selected companies and 22 interviews with industrial participants.

In this paper, we first present a general model to offer an overview of how CI environments contribute to quality attribute evaluation.We then introduce common quality metrics used in the studied companies and from which CI components these metrics can be acquired.Finally, based on the study's findings, we propose a hierarchical and multi-layered decision support model for improving a CI environment's quality evaluation capabilities over time.

Keywords
Continuous Integration, Quality attributes, Quality evaluation, Metrics, Empirical study
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-24401 (URN)
Available from: 2023-03-29 Created: 2023-03-29 Last updated: 2024-12-30Bibliographically approved

Open Access in DiVA

fulltext(9278 kB)423 downloads
File information
File name FULLTEXT02.pdfFile size 9278 kBChecksum SHA-512
e66ad8ad593c5e1e04831cc609a94c05ee0475b26225556d95796666829495ee2cbecdeb4593016b72e24f71f9162d9686590306a11f106544bfc7b34094bd64
Type fulltextMimetype application/pdf

Authority records

Yu, Liang

Search in DiVA

By author/editor
Yu, Liang
By organisation
Department of Software Engineering
Software Engineering

Search outside of DiVA

GoogleGoogle Scholar
Total: 438 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

isbn
urn-nbn

Altmetric score

isbn
urn-nbn
Total: 350 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf