Abstract

Requirement change management (RCM) is a critical activity during software development because poor RCM results in occurrence of defects, thereby resulting in software failure. To achieve RCM, efficient impact analysis is mandatory. A common repository is a good approach to maintain changed requirements, reusing and reducing effort. Thus, a better approach is needed to tailor knowledge for better change management of requirements and architecture during global software development (GSD).The objective of this research is to introduce an innovative approach for handling requirements and architecture changes simultaneously during global software development. The approach makes use of Case-Based Reasoning (CBR) and agile practices. Agile practices make our approach iterative, whereas CBR stores requirements and makes them reusable. Twin Peaks is our base model, meaning that requirements and architecture are handled simultaneously. For this research, grounded theory has been applied; similarly, interviews from domain experts were conducted. Interview and literature transcripts formed the basis of data collection in grounded theory. Physical saturation of theory has been achieved through a published case study and developed tool. Expert reviews and statistical analysis have been used for evaluation. The proposed approach resulted in effective change management of requirements and architecture simultaneously during global software development.

Highlights

  • Requirement engineering (RE) is defined as specifying and representing the customers’ requirements, thereby giving them a proper structure with which to meet them

  • Seven questions were generated for the null hypothesis, which were tailored to the main issues of requirement and architecture change management and the extent to which our proposed approach addresses those issues

  • Our analysis showed that agile Case-Based Reasoning (CBR), when merged with the Twin Peaks model, results in better synchronization and change management of requirements and architecture during global software development (GSD)

Read more

Summary

Introduction

Requirement engineering (RE) is defined as specifying and representing the customers’ requirements, thereby giving them a proper structure with which to meet them. All other phases are highly dependent on RE. A change in one phase affects the quality of other phases. If requirements are not handled in early phases, they may affect the quality of software and result in failure of the system [1]. Efficient RE critically depends upon effective communication and coordination of requirement development and management. GSD interprets communication gaps between different people involved in software projects [2]. Requirement management becomes a major challenge in global software development [3]. Requirement management facilitates and manages changing requirements throughout the software development phases. Requirement management handles relationships among requirements, traceability, and dependency between requirements and the software architecture [3]. Requirement change management includes several activities such as reporting the change, analyzing the possible impact of the change, and implementing the change in the system

Objectives
Methods
Results
Discussion
Conclusion
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call