[IEEE 2013 IEEE 4th International Conference on Software Engineering and Service Science (ICSESS) -...
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
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 offshoreonshore 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-thepractice 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 signoffs 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 informationgathering 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-ofthe-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 iddenrequirements.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