[IEEE 2013 IEEE 4th International Conference on Software Engineering and Service Science (ICSESS) -...

4
A Survey On Global Requirements Elicitation Issues And Proposed Research Framework Neetu Kumari.S Research Scholar. Department a/Computer Applications Hindustan Universi Chennai. Tamil Nadu. India neetu _ [email protected] Abstract- Requirements Elicitation is a practice [I] that aids in determining the needs of customers, users and stakeholders in building systems and soſtware that can result in a high probability of satisfying such needs. Requirements Elicitation is the most complex part of the Requirements Engineering (RE) phases and demands as much attention, especially in Global Soſtware Development scenarios, so as to minimize the impacts of failures. On one side, researchers and practitioners are cognizant of the fact that most project failures are attributed to poor requirements. On the other side, there are several recommendations, tools, methods, etc. available to overcome the said issues pertaining to requirements. Despite such recommendations, challenges still "persist". This paper attempts to understand the issues that impact effectiveness and efficiencies of global requirements elicitation through literature reviews and discussions with practitioners. This paper proposes a research framework to reflect the state-of-the-art and state-of-the practice requirement elicitation issues that currently exist and also provide critical guidance that elicitation issues and uncertainty have on the overall RE success. Keywords-Requirements Engineering, Elicitation; Global Software Development I. INTRODUCTION Requirements The success or failure of a project is largely goveed by the quality of requirements based on which the systems are built. The quality of requirements is dependent on the methodology that is adopted in capturing these requirements. Accurately capturing or eliciting these requirements significantly improves the quality of requirements and in t the quality of systems built. There is a song urge to understand elicitation approaches and adopt them appropriately for a given project type. It is also important to understand the nature of projects to be executed and nature of systems to be built to identi appropriate elicitation approaches. The reason being all these parameters put together have a direct bearing on the overall project success. Global Soſtware Development (GSD) undertakes soſtware development at geographically separate locations with efficient co-ordination and asynchronous interactions [2]. This implies that effective communication across various project 978-1-4673-5000-6/13/$31.00 ©2013 IEEE 554 Dr.Anitha S. Pillai Professor & HOD. Department a/Computer Applications Hindustan Universi Chennai. Tamil Nadu. India [email protected] development locations is imperative to meet the overall soſtware objectives. Based on discussion with practitioners, an illustrative GSD scenario focusing on the requirements engineering phase is depicted below. This is indicative of the initial phases for a given type of project. The figure represents the activities that are done collaboration by the offshore- onshore teams. While the teams engage in early phases, there are challenges that impact the overall Requirements phases. Figure 1: Illusative GSD on Requirement phases Researchers and practitIOners have confirmed that requirements elicitation phase is most affected in this global set-up [2, 8]. While GSD is designed to gain benefits of reduced time-to-market, reduction in development cost, better use of scarce resources and business advantage om proximity to customers [9]; the issues related to GSD are sategic issues, communication issues, co-ordination, cultural issues, geographical dispersion, technical issues, and knowledge management [8, 12, 25]. These put together has led to critical challenges impacting project success factors. The GSD model will continue to exist in many years to come, and it is important to understand what is failing elicitation despite detailed studies, surveys, root causes analyses and solutions being available. An illustrative Requirements elicitation approach on a GSD model has been modified based on [3] and is depicted below. Blocks Offshore/ Development Location Onshore/ Client Location Initial Project Planning Assessment (Current System/ Environment/ Infrastructure) Agreed Project Plan with stakeholders (Baselined) Knowledge Transition from Client Subject Matter Experts Requirements Gathering/ Elicitation Requirements Understanding Requirements Negotiations Requirements Finalization Documentation Support and Knowledge Base Set-up Project Plan Prep Support Obtain specifications from onshore teams Support in preparing questionnaires, interview pointers, updates knowledge repository, raise clarifications on requirements, etc Obtain final requirements specifications for next steps Internet or other private connectivity

Transcript of [IEEE 2013 IEEE 4th International Conference on Software Engineering and Service Science (ICSESS) -...

A Survey On Global Requirements Elicitation Issues

And Proposed Research Framework

Neetu Kumari.S

Research Scholar. Department a/Computer Applications

Hindustan University

Chennai. Tamil Nadu. India

neetu _ [email protected]

Abstract- Requirements Elicitation is a practice [I] that aids in

determining the needs of customers, users and stakeholders in

building systems and software that can result in a high

probability of satisfying such needs. Requirements Elicitation is

the most complex part of the Requirements Engineering (RE)

phases and demands as much attention, especially in Global

Software Development scenarios, so as to minimize the impacts of

failures. On one side, researchers and practitioners are cognizant

of the fact that most project failures are attributed to poor

requirements. On the other side, there are several

recommendations, tools, methods, etc. available to overcome the

said issues pertaining to requirements. Despite such

recommendations, challenges still "persist". This paper attempts

to understand the issues that impact effectiveness and efficiencies

of global requirements elicitation through literature reviews and

discussions with practitioners. This paper proposes a research

framework to reflect the state-of-the-art and state-of-the practice

requirement elicitation issues that currently exist and also

provide critical guidance that elicitation issues and uncertainty

have on the overall RE success.

Keywords-Requirements Engineering, Elicitation; Global Software Development

I. INTRODUCTION

Requirements

The success or failure of a project is largely governed by the quality of requirements based on which the systems are built. The quality of requirements is dependent on the methodology that is adopted in capturing these requirements. Accurately capturing or eliciting these requirements significantly improves the quality of requirements and in tum the quality of systems built. There is a strong urge to understand elicitation approaches and adopt them appropriately for a given project type. It is also important to understand the nature of projects to be executed and nature of systems to be built to identify appropriate elicitation approaches. The reason being all these parameters put together have a direct bearing on the overall project success.

Global Software Development (GSD) undertakes software development at geographically separate locations with efficient co-ordination and asynchronous interactions [2]. This implies that effective communication across various project

978-1-4673-5000-6/13/$31.00 ©2013 IEEE

554

Dr.Anitha S. Pillai

Professor & HOD. Department a/Computer Applications

Hindustan University

Chennai. Tamil Nadu. India

[email protected]

development locations is imperative to meet the overall software objectives. Based on discussion with practitioners, an illustrative GSD scenario focusing on the requirements engineering phase is depicted below. This is indicative of the initial phases for a given type of project. The figure represents the activities that are done in collaboration by the offshore­onshore teams. While the teams engage in early phases, there are challenges that impact the overall Requirements phases.

Figure 1: Illustrative GSD on Requirement phases

Researchers and practitIOners have confirmed that requirements elicitation phase is most affected in this global set-up [2, 8]. While GSD is designed to gain benefits of reduced time-to-market, reduction in development cost, better use of scarce resources and business advantage from proximity to customers [9]; the issues related to GSD are strategic issues, communication issues, co-ordination, cultural issues, geographical dispersion, technical issues, and knowledge management [8, 12, 25]. These put together has led to critical challenges impacting project success factors. The GSD model will continue to exist in many years to come, and it is important to understand what is failing elicitation despite detailed studies, surveys, root causes analyses and solutions being available. An illustrative Requirements elicitation approach on a GSD model has been modified based on [3] and is depicted below. Blocks

Offshore/ Development LocationOnshore/ Client Location

Initial Project Planning

Assessment(Current System/

Environment/ Infrastructure)

Agreed Project Plan with stakeholders (Baselined)

Knowledge Transition from Client Subject Matter Experts

Requirements Gathering/ Elicitation

Requirements Understanding

Requirements Negotiations

Requirements Finalization

Documentation Support and Knowledge Base Set-up

Project Plan Prep Support

Obtain specifications from onshore teams

Support in preparing questionnaires,

interview pointers, updates knowledge

repository, raise clarifications on

requirements, etc

Obtain final requirements

specifications for next steps

Internet or other private connectivity

marked with connectors represents activities that can be executed from mUltiple locations (offshore - onshore) in a GSD model.

Prepare foreach stakeholder:questions,discussion pointers

Apply on each group of stakeholders

NexlSteps· RequirementsAnalysis

and Documentation

Figure 2: Customized Requirements elicitation approach in GSD Model

This paper attempts to understand and present the issues that persist in the elicitation methodology. This also attempts to review the challenges that impact the effectiveness and efficiencies of requirements elicitation through literature reviews and discussions with practitioners. The subsequent section of the paper proposes a research framework that presents two aspects - 1. State-of-the-art and state-of-the­practice in requirements elicitation issues, 2. Provides critical guidance on the impact of elicitation issues and uncertainty on overall RE success.

II. RELATED STUDIES

A. Literature Review

According to Gabriela et.al, [7], about 40% - 60% of project failures are due to poor software management and requirements defmition. Similar results have been shown through various surveys conducted [4, 17, 19]. Practitioners executing projects over a decade also support the view that most projects fail in requirements engineering processes.

Christel and Kang [10] categorize challenges in requirements elicitation in three major groups:

1. Problems of scope - While attempting to understand the system requirements, it is important to understand the boundaries of the system in discussion. This understanding applies to customers/ end-users and project stakeholders. One of the several reasons for project failures is attributed to scope management [4, 5, 1 1, 17, 21, 24, 26]

2. Problems of understanding - This is the core challenge that forms the basis for a majority of elicitation

555

challenges. This encompasses poor understanding of what is needed by customers, poor communication on requirements, lack of knowledge of the available environment in which the system needs to or is currently operating, etc. If not dealt with carefully, these challenges coupled with the challenges in GSD are a perfect recipe for disaster! [4, 5, 1 1, 13, 14, 15, 16, 17, 20, 21, 23]

3. Problems afvolatility - This refers to the requirements changes. There are issues cited due to poor change management process or understanding of the requirement as a change [18]. These do contribute to a sizable percentage of issues impacting project success.

Extensive study in this area is implicit of the fact that elicitation is a significant part of the software development life cycle and has a direct bearing on the project success. While there are several studies done that discusses the issues and challenges pertaining to elicitation and also provides situational recommendations, there still seems to be issues and challenges that persist. Even mature organizations face challenges in a GSD environment which is not related to communication alone [4]. It is therefore, imperative to understand how these tactic or hidden challenges and issues impact the overall success ofRE.

B. Practitioner's View

Discussions with industry practItIOners who have spent significant years in project execution in GSD scenarios cite issues related to requirements as one of the major concerns for project failures and re-work. Based in prior survey conducted [4], it is clear from the results that majority of the issues indicated are pertaining to elicitation. There have been few others that are reflective of the other phases of RE as well. As the practitioners understand the challenges, they do talk about solutions or recommendations on how the impacts of the challenges can be minimized. They also admit that these solutions or recommendations are applicable in situational scenarios. This is similar to researchers' views [22, 27, 28] on proposing improvised elicitation approaches for specific project types. In general, practitioners believe that some of the "basics" need to be applied well and this is related to structuring requirements, documenting requirements, adopt and effective review mechanism with timely sign­offs from stakeholders, track requirements to closure and effective usage of Requirements Management tools. This view has motivated further research to understand how the critical issues empirically impact overall RE success.

III. MOTlOVATlON IN RESEARCH

What motivates research in the field of requirements engineering? Project success is important for every practitioner and stakeholder wanting to automate their business. Organizations adopt mature and proven RE processes that are expected to support the phases and activities effectively. There are tools and techniques to support these processes through which they can improve efficiencies. The results of the survey amongst practitioners of mature organizations indicated that

challenges still existed in this field; Pareto analysis showed the results that reflected in the "significant few" [4] -

Lack of business/ application knowledge

Misinterpretation of requirements

Poor documentation skills

Incorrect requirements

Incomplete/ ambiguous requirements

Poor communication skills/ articulation

Stakeholder identification/ involvement

Similar conclusions have been drawn on the problems pertaining to RE in GSD [2]. This motivates further study in this field to understand root causes that is failing elicitation approaches and methodologies.

IV. PROPOSED RESEARCH FRAMEWORK

This research framework adopts qualitative information­gathering approach that includes surveys, in-depth interviews with experts and document inspection on a random sample population of practitioners. Similar techniques have been adopted in [5].

Overall Research Objective

• Investigate and determine key issues that persist in the requirements elicitation methodology adopted by mature organizations focusing on initial stages of elicitation.

• Build a contingency or structural model which predicts the impact elicitation issues and requirements uncertainty has on overall RE success.

• Empirically test the model using survey data.

Research Hypothesis

Elicitation issues are positively associated with elicitation factors (stakeholder, communication, etc) for RE success

Research Goals

• Perfonn a critical review and analysis on literature to draw the state-of-the-art elicitation challenges.

• Investigate and present state-of-the-practice elicitation challenges from industry practitioners.

• Draw conclusions on issues and determine anyt possible gaps between the state-of-the-art and state-of­the-practice.

• Determine the success of elicitation factors or elicitation dimensions.

• Build a contingency model or structural model that predicts the impacts of elicitation issues and requirements uncertainty on project success.

• Empirically test the theoretical model through survey data

Overall Research Methodology

556

Figure 3 shows the various research phases to achieve the research goals.

Conduct in-depth interviews with

Industry Practitioners

(termed as "practitioner group")

PI

Conduct document analysis on

Requirements Elicitation Issues

(termed as "research group")

Compare results from

practitioner group and

research group

Determine elicitation

dimensions that

influence the overall RE

process

Theoretical modeling

of requirements

uncertainty and

elicitation dimensions

Empirical validation of

the theoretical model

through surveys

Figure 3: Proposed Research Framework

P2

A brief description of the phases in the proposed research framework is given below:

PI: Conduct document analysis or inspection (through manual and automated means) on elicitation issues. This will reflect the state-of-the-art requirements elicitation issues as an outcome of this phase.

P2: Conduct in-depth interviews/ surveys with industry practitioners. This will be required to determine the elicitation factors that have an overall influence on the RE success.

P3: The outcomes from phase 1 and phase 2 will need to be compared. This will surface any gaps in the elicitation issues reported in research. Besides assisting in the progress of the research, it will also enable contribution to the overall knowledge base pertaining to elicitation.

P4: Determine factors or dimensions that influence the elicitation factors and has an impact on the overall RE success. This is also obtained through surveys amongst practitioners.

P5: Theoretical modeling of requirements uncertainty and elicitation factors that are derived from the previous phases.

P6: The theoretical model is empirically tested using surveys.

This research based on the above framework is in-progress and is expected to get refmed as the author adopts this framework to meet the overall research objectives. The hypotheses for the later phases (for example in P4) will get refmed based on the outcomes on the initial phases.

V. DISCUSSION AND CONCLUSION

This paper discusses the current trends in the key elicitation issues and challenges in GSD projects. Practitioners confirm that this work is important in identifying the tactic or hidden root causes that need focus for proper elicitation to happen. Parameters like quality, cost of re-work is dependent on how well the requirements are elicited. The implementation of proposed research framework is in its initial stages but, the current literature already indicate the impediments in effective elicitation and continues to demands the required attention to resolve them. While there is no one solution to all elicitation issues, it is wise to understand basic needs of a good elicitation approach and how related issues can be addressed. Ask a practitioner a question "If you were to execute this project again, what would you do well or improve on?" The responses to this will include approaches in requirements gathering. Experience provides a rich source of information in resolving similar issues. In the present day when several projects of similar nature are being executed across the globe, the need for organizational repository is imperative [14, 22, 23].

There is research conducted that reflect how a single elicitation factor like user participation [28] or stakeholder perception gaps [29] impact the overall RE success. There is not yet any researches conducted that determine impact of multiple elicitation factors on RE success and that is what the depicted research framework will focus on.

REFERENCES

[I] Wikipedia, http://en.wikipedia.orglwiki/Requirements_elicitation

[2] Nosheen Sabahat, Faiza Iqbal, Farooque Azam, Muhammad Younus Javed, "An Iterative Approach for Global Requirements Elicitation: A Case Study Analysis", Electronics and Information Engineering, vol I, pp 361-366, Aug 20 10

[3] Coral, M., 2006, "Hidden Requirements", ACC learning Solution, http://www.betterprojects.netl2008/02/ I O-ti ps-for-find ing -h idden­requirements.html

[4] Neetu Kumari. S, Anitha S. Pillai, "State-Of-The-Practice Survey And Comparison In Requirements Engineering In Healthcare IT Projects", International Conference on Advances in Computing, Communications and Informatics, Aug 2012

[5] Hickey, A.M., "Elicitation Technique Selection: How Do Experts Do It?", Requirements Engineering Conference, 2003. Proceedings. lIth IEEE International, pp 169-178, Sep 2003

[6] Huang Longjun, Jiang Changgen, Zhou Caiying , "The Research of Requirements Elicitation for Project", Multimedia and Information Technology, vol2, pp 302-305, Apr 2010

[7] Gabriela N. Aranda, Aurora Vizcal'no, Mario Piattini, "A framework to improve communication during the requirements elicitation process in GSD projects", vol5, pp. 397-417, Nov 2010

[8] Siri-on Setamanit, Wayne Wakeland, David Raffo, "Planning and Improving Global Software Development Process Using Simulation", Proceedings of the 2006 international workshop on Global software development for the practitioner , pp.8-14, May 2006

[9] Christel, Michael and Kyo C. Kang , "Issues in Requirements Elicitation". Technical Report CMU/SEI-92-TR-OI2.

[10] Noraini Che Pa, Abdullah Mohd Zin, "Requirement Elicitation: Identifying the Communication Challenges between Developer and Customer", Proceedings of the 2006 international workshop on Global software development for the practitioner, pp.8-14, May 2006

557

[II] Paras too Mohagheghi, "Global Software Development: Issues, Solutions, Challenges", http://www.researchgate.netlpublication1228377833 Global software d evelopment_lssues_solutions_challenges

- - -

[12] Asma Sajid, Ayesha Nayyar, Athar Mohsin, "Modern Trends Towards Requirement Elictiation", Proceedings of the 2010 National Software Engineering Conference , Oct 20 10

[13] Ann M. Hickey, Alan M. Davis, Requirements Elicitation and Elicitation Technique Selection: A Model for Two Knowledge-Intensive Software Development Processes", Proceedings of the 36th Hawaii International Conference on System Sciences, Jan 2003

[14] Abdullah Mohd Zin, Noraini Che Pa, "Measuring Communication Gap in Software Requirements Elicitation Process", Proceedings of the 8th WSEAS Int. Conference on Software Engineering, Parallel And Distributed Systems, pp.67-71, 2009

[15] Yoon-kyu Lee, Neung-Hoe Kim, Dohoon Kim, Dong-hyun Lee and Hoh Peter In, "Customer Requirements Elicitation based on Social Network Service", KSTT Transactions On Internet And Information Systems, vol 5,Oct2011

[16] Naz, H.; Khokhar, M.N, "Critical Requirements Engineering Issues & their Solution', Computer Modeling and Simulation, 2009. pp. 218-222, Feb 2009

[17] Dhirendra Pandey, U. Suman, "An Effective Requirement Engineering Process Model for Software Development and Requirements", International Conference on Advances in Recent Technologies in Communication and Computing Management, 2010

[18] pmsolutions research. "Strategies for Project Recovery", pmsolutions, http://www.ihrim.orglPubonline/Wire/Julyll/StrategiesforPro

[19] Carlos Mario Zapata 1., "Computational Linguistics for helping Requirements Elicitation: a dream about Automated Software Development", Proceedings of the NAACL HLT 2010 Young Investigators Workshop on Computational Approaches to Languages of the Americas, pp. 117-124, Jun 2010

[20] Thomas Keller, "Contextual Requirements Elicitation", Seminar in Requirements Engineering, Spring 2011, Department of Informatics, University of Zurich

[21] Deepak Dhungana, Norbert Seyff, Florian Graf, "Research Preview: Supporting End-user Requirements Elicitation Using Product Line Variability Models", Requirements Engineering: Foundation for Software Quality, vol. 6606, pp. 66-71, Mar 2011

[22] Rahman A. N. and Sahibuddin S., "Extracting Soft Issues during Requirements Elicitation: A Preliminary Study", International Journal of Information and Electronics Engineering, vol I, Sep 20 II

[23] Mohd. Sadiq, Mohd. Shahid, Shabbir Ahmad, "Adding Threat during Software Requirements Elicitation and Prioritization", International Journal of Computer Applications (0975 - 8887), vol I, Feb 2010

[24] Gabriela N. Aranda I , Aurora Vizcaino, Alejandra Cechich, Mario Piattini, " Strategies to Minimize in Global Requirements Elicitation", CLEI Electronic Journal, vol II, Jun 2008

[25] Nilofar Mulla and Sheetal Girase, "A New Approach To Requirement Elicitation Based On Stakeholder Recommendation And Collaborative Filtering", International Journal of Software Engineering & Applications, vol.3, May 2012

[26] Chad Raymond COULIN, "Situational Approach and Intelligent Tool for Collaborative Requirements Elicitation", 2007, University of Technology, Sydney

[27] Umar Sajjad, Muhammad Qaisar Hanif, "Issues and Challenges of Requirement Elicitation in Large Web Projects", 2010, Blekinge Institute of Technology

[28] EI EmaJn, K., S. Quintin and N. H. Madhavji , "User Participation in the Requirements Engineering Process: an Empirical Study." Requirements Engineering Journal, pp.4-26, 1996

[29] Jiang, J. J., Klein, G., Wu, S. P. J., & Liang, T. P, "The relation of requirements uncertainty and stakeholder perception gaps to project management performance" Journal Of Systems And Software 82, pp. 801-808, 2009