An Improved Framework for Requirement Change Management in Global Software Development ()
1. Introduction
Requirement Change Management (RCM) is the process of interpreting, managing, analyzing, controlling, tracing and documenting changes in requirements. It is necessary to fulfill the changing needs of stakeholders for success of software systems, as a result, the changing requirements becomes challenging [1] . Among the largest issues of distributed software development Requirement Engineering (RE) faces many obstacles [2] .
Global Software Development (GSD) is gaining the more attraction of the software industry throughout the world. During the 1990s, the differences in development cost, the limited pool of work force, the necessity to get closer to customer and round the clock development, force the organizations to outsource their projects [3] .
Due to the high rate of distributed projects, it becomes important to understand the nature of such type of software development [4] [5] . Organizations adopt the global software development because of the attractive features it offers. These are having a large pool of skilled workers, cheap labor or low salary cost, quick formation of virtual corporation/teams, to respond to severe pressure, to improve time to market [6] [7] . At the same time, teams are facing some real problems as well, while handling distributed projects. According to Aranda et al. [8] distance is the major problem in global software development and it introduces difficulties in globally distributed projects.
Moreover, different time zones, languages and cultures introduce communication problems in globally distributed teams [9] ; to make changes in the requirements is a complicated activity [10] [11] . Requirement change management becomes more challenging while dealing with distributed projects due to the difficulties of communication among the dispersed stakeholders [12] . The lack of proper management of changing requirements leads towards the failures of software systems; the process of change management is worthwhile as well as challenging at the same time [13] . Requirements change management is the collaboration intensive process, in distributed environment, the informal meetings of stakeholders are not possible, and due to which requirement change management becomes a serious issue [14] . The management of changing requirements is very important for the success of software systems. The changing requirements are not problematic; the real problem is that how to manage these changes [15] [16] .
For this particular study the exploration of literature is mostly discovered about the concerns of global software development. Later on, more investigation is made upon the process of requirement change management in the global work environment of software development. These areas are not exhaustively viewed, instead of this only focused and relevant literature is taken as deep study.
This paper presents the problems that are being faced by the stakeholders in a distributed development environment during the change management process. Existing change management techniques have been investigated and features/limitation of these processes has been highlighted. Systematic literature review (SLR) methodology has been used for the said investigations. On the basis of these investigations an improved framework has been suggested to overcome the problems with respect to the change management process. A comparison of the proposed model and two existing models from the recent literature is also the part of this article.
The remaining paper is organized as: section 3 presents the methodology, section 4 presents the proposed framework, and section 5 presents results and discussion.
2. Methodology & Research Questions
The methodology used for working on this particular paper is initiated from the systematic literature review of related work. For conducting SLR research questions are formalized, review planning is done and final review is conducted. The SLR investigated the RCM issues in GSD. The investigated literature is critically analyzed that identified the problem region. That problem is minimized by the proposal of a framework. Further implementation and validation of the proposed work is performed.
2.1. Review Protocol
The primary purpose of the study is to discover the challenges faced during the RCM process in GSD and find out the techniques designed to manage the change in the GSD environment. For this purpose the research papers only selected from 2000 to onwards 2013. The studies before 2000 were not selected also the search is limited to only the papers written in English language.
2.2. Search for Studies
During the process of finding the relevant studies the following search string was used:
((Requirements change management OR Requirements engineering OR Requirements change management techniques) AND << in >> (Global software development OR Distributed software development OR Offshore software development OR outsourcing)).
2.3. Study Selection Criteria
The search scheme confined the following selections:
Searched databases were IEEE Explorer, Springer Link and ACM Digital Library. Google Scholar (Google scholar is taken as it is the important source for collecting the literature from different journals and conferences). Searched items were Journal articles, workshop papers and conference papers. Language: Our search limited to the papers written in English. Publication period: Since 2000 to onwards.
The research papers before 2000 are not included in the review the reason behind is that the GSD phenomena rapidly spread in the 21st century and research before 2000 is not much relevant to this subject. The study selection is performed to identify with relevance for the objective of the systematic review.
2.4. Methodology
The SLR helps to conduct the literature review in the formal way and also facilitate, to identify, interpret, and evaluate the existing research concerning a particular topic or research question. The SLR methodology proposed by Kitchenham [17] has been followed in this research. Figure 1 presents the overall research design followed to complete this work. Detail of SLR is given in Table 1, while Table 2 presents the results from different sources. SLR results are further elaborated in Graph1 and Graph 2.
The graphical and tabular representation of the above mentioned description is shown below:
2.5. Research Questions
Three questions have been established to investigate through literature, these questions are as follows:
RQ1: What are the problems faced during the RCM in GSD environment?
RQ2: Are the existing techniques of RCM suitable to manage the change in GSD environment?
Table 2. Number of results per source.
Table 3
Graph 1.Number of results per sources.
Graph 2.Percentile of selected and excluded studies from the total.
RQ3: Is there any effort made to design RCM framework for GSD environment?
RQ3.1: What are the modalities of such frameworks?
RQ3.2: What are the limitations of such framework?
cially communication and its correlated areas. The proposed model is presented below in Figure 2.
In the initiation phase, change request is raised from any site through any stakeholder. The change is accepted in the “Change Request Form (CRF)” and most of the time change is raised from the client side. The framework provides the multilingual support in the case if any stakeholder is not familiar with the common language. The change request form contains the information regarding the change request, complete contact details of the initiator and complete detail of the change request.
After the CRF filled, it will be submitted and recorded in the RCM Database for further processing. In the next step of proposed framework, the change evaluation is performed by analyst along with the help of requirements repository that contain information regarding system requirements. The evaluation is made for estimation of cost, time, and resource utilization by the requirement analyst. The evaluation result is again recorded in RCM database.
The notification is generated to all the Change Control Board (CCB) members.
For voting on the evaluation results and the threshold is defined for getting feedback from CCB members. The voting results are processed for all CCB members, agree or disagree for acceptance of change for implementation.
The decision about acceptance of change or rejection is decided on the feedback of voting results generated by all CCB members. If all members agreed on the evaluation results, change is considered accepted and approved for implementation else rejected. The final result of CCB decision is recorded in RCM database and all sites are notified about it.
Figure 2. Proposed RCM Framework for GSD.
5.1. Phase 1: Change Initiation
The initial step covers the change initiation phase. The change control process starts when the request for change is arises. The change request can be initiated from any of the distributed sites and any stakeholder can initiate the request for change. Normally, the request arises from client side; however the process is flexible to involve all the sites to initiate the request. The change will be requested by filling the “Change Request Form”. The change request form contains the information regarding the change request, complete contact details of the initiator and complete detail of the change request. Once the CRF filled, it will be submitted and the data regarding the change request will be recorded in the RCM DB for further processing.
5.2. Phase 2: Change Evaluation Process
In the next step, the Change Evaluation is performed. As the request is received the change manger notified and starts the evaluation process. Change Evaluation performed automatically to reduce the chances of communication. The results of the change evaluation process recorded in the RCM DB and the CCB members take a decision on the results either to implement the change or not.
5.3. Phase 3: Voting Process
This step is started after the evaluation results recorded in the RCM DB. The voting process is the core component of the framework. The threshold time will be defined to get the feedback from all the CCB members within the time. All CCB members will give their feedback on the change evaluation results that either they are agreed or disagreed with the requested change. If any member didn’t respond within the threshold time, then the new threshold time defined to get the feedback from all of the members. All the CCB members have the same level of priority so it is essential to get feedback from each CCB member to decide either to implement the change or not.
6. Evaluation of Proposed Framework
The RCM_GSD framework has been evaluated by two different methods.
1) Evaluation through industrial stakeholder feedback on the basis of case study results 2) Evaluation through comparison with the existing literature based frameworks.
6.1. Evaluation through Case Study
To validate the proposed RCM_GSD framework, we selected two companies operating in Global Software Development and RCM_GSD framework was tested on two GSD based projects and on the basis of the results, stakeholders given us the feedback on a pre-specified questionnaire based form. The goal was to evaluate the performance of our proposed framework in the real world environment.
6.2. Evaluation through Comparison
The objective of this evaluation was to validate RCM_GSD on the basis of two criteria.
1) RCM activities covered 2) GSD issues resolved The assessment is made, that’s how well the framework is developed and resolves the matters of requirements change management in Global Software Development. The literature based comparison is performed to accomplish this objective.
The comparison is made upon the basis of parameters defined for traditional RCM. The framework must follow the required activities of RCM and reduces the challenges occur during Global Software Development.
Two techniques have been selected from the literature and the comparison of RCM_GSD has been made with these techniques. Various frameworks or techniques have been proposed in the literature to manage the change, but the reason to choose these techniques [18] [25] for comparison is that these are specifically designed for RCM in GSD.
7. Results and Discussion
The proposed model is implemented as RCM_GSD Framework and validated through case study. The case study is passed through the developed system. Many relevant cases are elaborated by this process.
The literature based comparison was performed to express that how well the proposed framework fit for requirements change management in Global Software Development. The activities list identified from Imtiaz et al., 2008 [36] in order to compare the activities for the purpose of comparison and the GSD issues was also highlighted from the literature.
The comparison was performed on the proposed framework with the exiting RCM techniques in term of the two parameters: one is the activities and the other is the GSD issues covered.
Two existing techniques selected from the literature for comparison with proposed framework [18] [25] is selected for comparison because these techniques are specifically designed for RCM in GSD. The observation illustrates some spots in the model that need to work out for enhanced efficiency. The graph below shows the comparison results.
Graph 3 presents the comparison of RCM_GSD with the existing frameworks on the basis of RCM activities, results show that the proposed framework covers the maximum six activities along-with the framework of Rabia Sultana. Similarly, in Graph 4 GSD issues covered by any framework could be observed; proposed framework, covered the maximum issues as compared to rest of the two frameworks.
From these results it can be concluded that the proposed RCM_GSD covers the maximum activities and especially overcomes the issues faced due to the distributed development environment (highlighted from literature) specifically identified factors due to the communication effects in a distributed environment.
As it has been mentioned, we also have taken the feedback from experts regarding framework effectiveness and applicability. Feedback form could be concluded in three major sections. First section can be interpreted as: does that RCM_GSD save effort and time? Second section concluded the level of satisfaction of experts, while in third section it has been estimated that whether RCM_GSD reduces the face to face communication or not. The results of experts’ feedback are being presented in Graph 5. Only one stakeholder showed his dissatisfaction on RCM_GSD, three remained neutral, while four stakeholders were satisfied. The majority of experts agreed
Graph 3.Number of activities covered RCM frameworks in GSD.
Graph 4.Number of issues covered by RCM frameworks in GSD.
Graph 5.Results of feedback questionnaire.
that RCM_GSD saved effort and time, only one stakeholder remained silent on this issue; at the same time, exerts agreed that RCM_GSD reduced the face to face communication, only two remained neutral in this regard.
8. Limitations and Future Work
There are some limitations found in the proposed framework in this paper. The effort should be made upon the decision phase of Requirement Change Management. So that in future this framework is possible improved from decision making perspective along with few other addressable area’s.