Litcius/Paper detail

Agile Software Development and Reuse Approach with Scrum and Software Product Line Engineering

Wen-Tin Lee, Chih‐Hsien Chen

2023Electronics18 citationsDOIOpen Access PDF

Abstract

Agile methods and software product line engineering (SPLE) are widely recognized as practical approaches for delivering high-quality software, adapting to evolving stakeholder needs, and tackling complex problems. This study proposes a hybrid agile software development and reuse approach called SPLE-Scrum based on the activities of software product line engineering and Scrum. Within the SPLE process, we incorporate requirement engineering and design practices to create a reference architecture with reusable components called core assets by introducing a product management meeting. The core assets are reused to build a series of applications with various product lines. The product increments are delivered in each Sprint with the review and retrospective meetings based on Scrum lifecycle and practices. We present a case study involving a blockchain online store to demonstrate the practical application of SPLE-Scrum, highlighting the benefits of integrating Scrum and software product line engineering. The research hypotheses of the proposed approach were validated through a study of structured interviews with 5 experts and 44 software practitioners, showing that the key factors of product management, project requirements, and product architecture in the SPLE-Scrum approach have a beneficial impact on project success. The SPLE-Scrum approach provides valuable insights and practical guidance for organizations seeking to optimize their software engineering practices while incorporating agile development and software reuse capabilities.

Topics & Concepts

ScrumAgile software developmentSoftware product lineSoftware engineeringSystems engineeringSoftware developmentComputer scienceEngineeringProcess managementSoftwareProgramming languageSoftware Engineering Techniques and PracticesSoftware Engineering ResearchAdvanced Software Engineering Methodologies
Agile Software Development and Reuse Approach with Scrum and Software Product Line Engineering | Litcius