Journal of Software Engineering and Applications
Vol.7 No.9(2014), Article ID:49370,12 pages DOI:10.4236/jsea.2014.79072

An Improved Framework for Requirement Change Management in Global Software Development

Nasir Mehmood Minhas, Qurat-ul-Ain, Zafar-ul-Islam, Atika Zulfiqar

University Institute of Information Technology, PMAS Arid Agriculture University, Rawalpindi, Pakistan

Email: nasirminhas@uaar.edu.pk, quratulain.352.se@gmailcom, zafarislam65@gmail.com, aatika80@hotmail.com

Copyright © 2014 by authors and Scientific Research Publishing Inc.

This work is licensed under the Creative Commons Attribution International License (CC BY).

http://creativecommons.org/licenses/by/4.0/

Received 22 June 2014; revised 20 July 2014; accepted 15 August 2014

ABSTRACT

In this research, an improved framework for requirement change management in global software development (RCM_GSD) has been presented. The objective is to manage the change in requirement specifically in global software development in an appropriate manner. The proposed framework RCM_GSD follows the required processes of RCM and reduces the concerns of GSD. Systematic Literature Review (SLR) was conducted for exploration of relevant research. During literature study, it is analyzed that the existing techniques of change management were not suitable for global software development (GSD). The change in requirements becomes more complicated in distributed environment due to the lack of communication and collaboration among globally dispersed stakeholders. The proposed model is compared with other models proposed in recent literature and analysis is made between them; feedback was obtained from the domain experts as well. The feedback and comparison results show that the proposed model provides an appropriate solution for requirement change management in GSD.

Keywords:Requirement Change Management (RCM), Global Software Development (GSD), Requirement Engineering

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?

Figure 1. Research design followed.

Table 1. Study selection criteria.

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.

References

  1. Iqbal, J., Ahmad, R. and Noor, M.A. (2013) A Framework to Improve the Requirements Engineering Process for Software Development Outsourcing. 22nd Australian Software Engineering Conference, Melbourne, 4-7 June 2013, 137-144. http://dx.doi.org/10.1109/ASWEC.2013.25
  2. Assawamekin, N. (2010) An Ontology-Based Approach for Multi Perspective Requirements Traceability between Analysis Models. 2010 IEEE/ACIS 9th International Conference on Computer and Information Science (ICIS), Kaminoyama, 18-20 August 2010, 673-678.
  3. Carmel, E. (1999) Global Software Teams: Collaborating Across Borders and Time Zones. Prentice Hall, PTR.
  4. Lopez, A., Nicolas, J. and Toval, A. (2009) Risks and Safeguards for the Requirements Engineering Process in Global Software Development. IEEE Conference on Global Software Development, Limerick, 13-16 July 2009, 394-399. http://dx.doi.org/10.1109/ICGSE.2009.62
  5. Niazi, M., El-Attar, M., Usman, M. and Ikram, N. (2012) GlobReq: A Framework for Improving Requirements Engineering in Global Software Development Projects. 4th IEEE International Conference on Global Software Engineering, Ciudad Real, 14-15 May 2012, 166-170.
  6. Casey, V. and Richardson, I. (2009) Implementation of Global Software Development: A Structured Approach. Software Process Improvement and Practice, 14, 247-262. http://dx.doi.org/10.1002/spip.422
  7. Conchuir (2009) Global Software Development: Where Are the Benefits? Communications of the ACM, 52, 127-131.
  8. Aranda, G.N., Vizcaíno, A. and Piattini, M. (2010) Analyzing and Evaluating the Main Factors that Challenge Global Software Development. The Open Software Engineering Journal, 4, 14-25. http://dx.doi.org/10.2174/1874107X01004020014
  9. Khan, S.U., Niazi, M. and Ahmad, R. (2009) Critical Barriers for Offshore Software Development Outsourcing Vendors: A Systematic Literature Review. Proceedings of 16th IEEE Asia-Pacific Software Engineering Conference, Penang, 1-3 December 2009, 79-86.
  10. Hussain, W. and Clear, T. (2012) GRCM: A Model for Global Requirements Change Management. 2nd International Requirements Engineering Efficiency Workshop (REEW 2012), Essen, 19 March 2012.
  11. Smite, D. (2006) Requirements Management in Distributed Projects. Journal of Universal Knowledge Management, 1, 69-76.
  12. Damian, D.E. and Zowghi, D. (2003) RE Challenges in Multi-Site Software Development Organizations. Requirements Engineering Journal, 8, 149-160. http://dx.doi.org/10.1007/s00766-003-0173-1
  13. Hussain, W. (2010) Requirements Change Management in Global Software Development: A Case Study in Pakistan.
  14. Kumar, S.A. and Kumar, T.A. (2011) Study the Impact of Requirements Management Characteristics in Global Software Development Project: An Ontology Based Approach. International Journal of Software Engineering and Application, 2, 107.
  15. McGee, S. and Greer, D. (2009) A Software Requirements Change Source Taxonomy. 2009 4th International Conference on Software Engineering Advances, Porto, 20-25 September 2009, 51-58. http://dx.doi.org/10.1109/ICSEA.2009.17
  16. Pierce, K., Ingram, C., Bos, B. and Ribeiro, A. (2013) Experience in Managing Requirements between Distributed Parties in a Research Project Context. 2013 IEEE 8th International Conference on Global Software Engineering (ICGSE), Bari, 26-29 August 2013, 124-128.
  17. Kitchenham, B., Brereton, O.P., Budgen, D., Turner, M., Bailey, J. and Linkman, S. (2009) Systematic Literature Reviews in Software Engineering—A Systematic Literature Review. Information and Software Technology, 51, 7-15.
  18. Sultana, R., Fahad, J., Ahmad, M. and Ahmad, A. (2012) Empirical and Qualitative Studies by Analyzing Requirement Issues in Global Software Development (GSD). International Journal of Management, IT and Engineering, 2, 1-18.
  19. Sinha, V., Sengupta, B. and Chandra, S. (2006) Enabling Collaboration in Distributed Requirements Management. IEEE Software, 23, 52-61. http://dx.doi.org/10.1109/MS.2006.123
  20. Prikladnicki, R. (2007) Distributed Software Development: Practices and Challenges in Different Business Strategies of Offshoring and on Shoring. ICGSE 2007 2nd IEEE International Conference on Global Software Engineering, Munich, 27-30 August 2007, 262-274. http://dx.doi.org/10.1109/ICGSE.2007.19
  21. Berenbach, B. (2006) Impact of Organizational Structure on Distributed Requirements Engineering Processes: Lessons Learned. Proceedings of the 2006 International Workshop on Global Software Development for the Practitioner, Shanghai, 23 May 2006, 15-19. http://dx.doi.org/10.1145/1138506.1138511
  22. Sabahat, N., Iqbal, F., Azam, F. and Javed, M.Y. (2010) An Iterative Approach for Global Requirements Elicitation: A Case Study Analysis. 2010 International Conference on Electronics and Information Engineering (ICEIE), 1, 361-366.
  23. Hoffmann, A. and Lescher, C. (2009) Collaboration and Intercultural Issues on Requirements: Communication, Understanding and Softskills (Circus). 2009 Collaboration and Intercultural Issues on Requirements: Communication, Understanding and Softskills, Atlanta, 31-31 August 2009, 1-4.
  24. Javed, B. and Minhas, S.S. (2010) Process Support for Requirements Engineering Activities in Global Software Development: A Literature Based Evaluation. 2010 International Conference on Computational Intelligence and Software Engineering (CiSE), Wuhan, 10-12 December 2010, 1-6.
  25. Khan, A.A., Basri, S., Dominic, P.D.D. and Amin, F. (2012) A Propose Framework for Requirement Change Management in Global Software Development. International Conference on Computer & Information Science (ICCIS), 2, 944-947.
  26. Ansari, A.K., Sharafi, S.M. and Nematbakhsh, N. (2010) A Method for Requirements Management in Distributed Extreme Programming Environment. Journal of Theoretical and Applied Information Technology, 20, 52-58.
  27. Ramzan, S. and Ikram, N. (2006) Requirement Change Management Process Models: Activities, Artifacts and Roles. IEEE Multitopic Conference, INMIC ’06, Islamabad, 23-24 December 2006, 219-223. http://dx.doi.org/10.1109/INMIC.2006.358167
  28. Lai, R. and Ali, N. (2013) Requirements Management Method for Global Software Development. Advances in Information Sciences (AIS), 1, 38-58.
  29. Hussain, S., Ehsan, N. and Nauman, S. (2010) A Strategic Framework for Requirements Change in Technical Projects: Case Study of a R & D Project. 2010 3rd IEEE International Conference on Computer Science and Information Technology (ICCSIT), 5, 354-358.
  30. Bhatti. M.W., Hayat, F., Ehsan, N., Ahmed, S., Ishaque, A. and Mirza, E. (2010) A Methodology to Manage the Changing Requirements of a Software Project. 2010 International Conference on Computer Information Systems and Industrial Management Applications (CISIM), Krackow, 8-10 October 2010, 319-322. http://dx.doi.org/10.1109/CISIM.2010.5643642
  31. Heindl, M. and Biffl, S. (2006) Risk Management with Enhanced Tracing of Requirements Rationale in Highly Distributed Projects. International Conference on Software Engineering (ICSE), Shanghai, 20-28 May 2006, 20-26
  32. Herbsleb, J D. and Moitra, D. (2001) Global Software Development. Software. IEEE Software, 18, 16-20. http://dx.doi.org/10.1109/52.914732
  33. Prikladnicki, R., Audy, J. and Evaristo, R. (2003) Requirements Management in Global Software Development: Preliminary Findings from a Case Study in a SW-CMM Context. Proceedings of 2nd International Workshop Global Software Development, Cape Town, 1-8 May 2010, VENUE University of Victoria. http://citeseerx.ist.psu.edu/viewdoc/versions?doi=10.1.1.156.2838
  34. Dev, H. and Awasthi, R. (2012) A Systematic Study of Requirement Volatility during Software Development. IJCSI International Journal of Computer Science Issues, 9, 527-533.
  35. Pena, M.E. (2010) A Study of the Causes of Requirements Volatility and Its Impact on Systems Engineering Effort. COSYSMO Workshop, Center of Software and System Engineering, Annual Research Review, 11 March 2010.
  36. Imtiaz, S., Ikram, N. and Imtiaz, S. (2008) A Process Model for Managing Requirements Change. ACST’08 Proceedings of the 4th IASTED International Conference on Advances in Computer Science and Technology, Langkawi, 2-4 April 2008, 121-128.