2014 National Software Engineering Conference (NSEC)
Eliciting Futuristic End-User Requirements through Contributory Appreciative Inquiry Kanwal Daud Gill
Athar Mohsin Zaidi
Muhammad Muneeb Kiani
Department of CSE National University of Sciences and Technology (NUST) Islamabad, Pakistan daud.mscs
[email protected]
Department of CSE National University of Sciences and Technology (NUST) Islamabad, Pakistan
[email protected]
Department of CSE National University of Sciences and Technology (NUST) Islamabad, Pakistan
Abstract
-
The phase of requirements elicitation is specifically
important due to its widespread impact on the succeeding phases of software development. Elicitation of requirements from
varying
perspectives
is
an
active
research
issue
concerning the researchers and practitioners for decades. The aim of this research study is to strengthen and optimize the elicitation
of
'futuristic
requirements'
by
proposing
a
technique named as, 'Contributory Appreciative Inquiry'. The technique is based on philosophy of appreciative perspective rather than deficit based perspective. The technique along with various constituents and building components is presented. Afterwards a comprehensive comparative analysis is conducted to evaluate its performance in comparison to other competing techniques. Results indicate a marked improvement in eliciting futuristic
and
unique
requirements
as
compared
to
Observation, Interviewing, Brainstorming and Appreciative Inquiry itself.
Keywords
Requirements
Elicitation,
Contributory
Appreciative Inquiry, Futuristic Requirements.
I. INTRODUCTION Requirements Engineering (RE) has gained significant importance in Software Engineering (SE) due to its critical importance for succeeding development phases. Requirements Elicitation too is a research topic of enormous impact, due to its ability of either steering or disturbing other RE phases. Capturing end-user and futuristic requirements within the bounds of business organization goals and scope is still largely untapped issue. Uncertain and incomplete information poses a huge impact on decision making and optimal requirements generation. Moreover, the incomplete requirements are largely considered as a huge factor for project failure [I]. Therefore it is critical to elicit futuristic and unique requirements that are both complete and implementable. Futuristic requirements could be defined as, "the requirements that although do not present current business needs but still reflect the potential future business goals". Eliciting futuristic requirements in an efficient manner consists of envisioning the potential of a business without exaggeration [2]. Eliciting valuable end-user and futuristic requirements is a daunting task. 978-1-4799-6162-7114/$31.00 2014 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media, including reprinting/republishing this material for advertising or promotional purposes, creating new collective works, for resale or redistribution to servers or lists, or reuse of any copyrighted component of this work in other works.
muneeb.mscs
[email protected]
The issue becomes grim due to factors such as, uncertainty of stakeholders to be involved, elicitation technique(s) to be utilized. These issues do not allow the product manufacturers to trust and consider the apparently futuristic requirements seriously. Moreover, the requirements gained through brainstorming and similar elicitation techniques are unable to bring vision of uniqueness and do not integrate future considerations for software products [3]. Therefore there is a need to encourage participation of alienated communities in software product development but also to persistently monitor their input and quality to be in line with the goals and objectives of organization. If elicited correctly, the futuristic and forward looking requirements could give significant edge to the subject organization in tough competitor markets. There are various existing requirements elicitation techniques for unearthing the end user requirements; however none of them could be considered as the ultimate for gathering simple end-user needs [4], even if no incorporation of futuristic vision takes place. The purpose of this research study is to come up with an improved requirements elicitation technique for surfacing futuristic end-user requirements that are in line with the business goals and of good value to an organization. The rest of this research study is organized as; Section II presents the background of study which includes elicitation techniques overview along with a discussion on Appreciative Inquiry (AI) and fmally its various shortcomings. Section III aims to propose and manifest the nuts and bolts of a new elicitation technique that aims to overcome the shortcomings of AI in particular. Section IV is based on providing details of a detailed empirical study conducted to validate the effectiveness of newly proposed technique. Finally section V brings the research study to a conclusion. II.
BACKGROUND
A. Elicitation Techniques Overview As discussed earlier, numerous requirements elicitation techniques although exist, but no single technique is suitable for application in every scenario. The conventional elicitation techniques promise to provide some insight into requirements but they still do not allow the luxury of discovering the futuristic requirements within the implementable scope of an organization. The 'observation' method of elicitation is mainly used for the observation of the client organization and context. It
49
provides an insight to the developers and requirements gatherers on the contextual issues that afterwards play role in system design. However, this method could not be used on its own and has to be utilized in partnership with other techniques such as task analysis and techniques for interviewing [5] [6]. The technique is not largely acknowledged for its efficiency and acceptance mainly because of its inability to function in isolation. [t is also unable to elicit futuristic and unique requirements, as observing the present context could not provide future growth potentials of an organization. Interviewing is another widely used technique that collects requirements from particular stakeholders interviewed. The technique could not be banked upon totally due to its inefficiency of bringing different results from different stakeholders [6]. The technique is largely dependent on interviewer's capability of steering the interview in a direction that could prompt unique and futuristic requirements [7]. Prototyping is another popular technique for requirements elicitation that works generally in conjugation with other elicitation techniques [6]. The technique does not appear to be an ideal elicitation strategy due to its inability of being used in isolation and consumes a lot of time and resources [4]. The technique does not provide unique and futuristic requirements due to its nature of focusing at the current system problems. Focus Groups technique presents a good base for eliciting requirements in natural settings. But it tends to limit attention of participants and is highly prone to descend into discussions around political aspects of organization [7]. Therefore all these competing elicitation techniques do not present an optimized and improved way of specifically eliciting futuristic and unique requirements along with general requirements. Focus of all these techniques is solely towards problems and their solutions rather than unearthing potential of an organization in an efficient manner. B. Appreciative Inquiry Appreciative Inquiry (AI) is an elicitation technique recently proposed by [8]. The major case and premise behind adoption of AI resides in the fact that the organizations want to develop and build on previous success in an incremental manner. The technique also aims to surface forward looking and futuristic requirements by overcoming shortage of time and resources. The use of AI was made successfully in comparison with one of the most established elicitation technique, 'brainstorming'. The results from empirical investigation indicated that A[ provided more and futuristic requirements as compared to Brainstorming [8]. The technique was also evaluated for its efficiency and effectiveness in varying circumstances. A[ is not carried out in isolation as some of its competing techniques like interviewing, observation, prototyping, etc. It is aimed at including the future vision with organization, owners, managerial teams and other organizational entities for the purpose of unearthing requirements. The reason for inclusion of various entities and stakeholder groups is important to allow them share their vision of the future. Focus on problem/solution philosophy somewhat limits the concentration of participants to view the future possibilities. On the contrary, emphasis on positive/goal
would dramatically shift participants' attention to opportunities and goals that they actually want to reach through system use. Thus, the focus on problem/solution essentially detracts the participants from opportunities and future vision that is vital for bringing futuristic and unique requirements [3] [9]. C. Unresolved Issues in A[ 'Appreciative Inquiry' surfaced new possibilities for generating futuristic and unique requirements for software development projects. Although the empirical evidence affirmed its ability of surfacing futuristic requirements yet there are still some improvements that could be made [8]. Firstly, the A[ elicitation technique does not counter issue of scope escalation in requirements and does not provide any inbuilt mechanism of continuously tracking the possibilities in direct linkage to organization' s business goals. The technique although also brings futuristic, unique and forward looking requirements but it is not optimized for that. AI is built primarily to elicit end-user requirements without putting much attention on surfacing the futuristic requirements and drilling into finer details for unearthing low level requirements [2]. The previous study also highlighted inadequacy of brainstorming technique for finding answers to questions [8], where A[ showed improvement in comparison. Requirements escalating from the organization's scope and resources are simply eliminated in the destiny phase of AI elicitation technique [8]. The problematic aspects of eliminated requirements are not even attempted to be altered for fitting into the goals of organization. This elimination disturbs the elicited "what will be" vision and thus enormous information is lost. Totally eliminating a "difficult to fulfill requirement" rather than providing any mechanism of converting it into a "possible to fulfill requirement" is another shortcoming of A[ technique. Moreover, the requirements elicited by the A[ technique are generally high level requirements that are not well understood by developers and no attempt of obtaining understanding is gained with stakeholders. Therefore the major problem areas that are unaddressed by the AI technique: 1) No mapping of requirements with business objectives 2) No solution for embracing the hard to fulfill requirements 3) [nability to produce finer and low level requirements III.
PROPOSED SOLUTION
A. Elicitation Technique The major mindset to be intrigued by an elicitation process must address the notion of discovering a common vision for the future versions of a system. The system discovered and developed as a result must be able to represent end-user needs and also have a common vision for future that lies within the possible reach of an organization. Appreciation of end-users, and focus on positive traits of an organization could serve as lifeblood for new system under development. The proposed solution hence comprises of presenting a new requirements elicitation technique that could be interpreted as the optimized form of AI.
50
AI aimed at providing a more innovative insight into the future system-to-be and fmding future possibilities of change and improvement. Proposed technique aims at optimizing the basic philosophy of moving towards the positive/goal. It further extends the AI technique to deeply focus on generating new requirements within the business scope. The provision of futuristic requirements generated by the selected individuals could provide significant business
advantage to the organization. The classic AI technique is already evaluated for its improved performance over brainstorming technique for unique requirements elicitation [2] [8]. However, the proposed technique still makes use of brainstorming technique in an entirely different way to complement AI and surface low level requirements in the process. n Requirements
----------------------------------------------
�
Discovery Phase "what isl!
High Level Requirement
Des ign Phase "how it can be))
1______-----
4D AppreCistn e InqUiry
Brainstonning Questions Generation around Contributory Point I
Closest
Low Leve1
Fit
Requirements (Refinement)
Amend Contributory Streamlining Process
Fig. 1. Contributory Appreciative Inquiry B.
Contributory Appreciative Inquiry
Figure I presents the proposed "Contributory Appreciative Inquiry" (CAl) technique for requirements elicitation. The technique is based on same basic principle as AI and aims to strengthen and optimize elicitation of futuristic requirements. Due to the issue of scope escalation and presence of requirements needing expensive resources, the requirements generated by traditional AI technique are not always ready to be fulfilled. The proposed CAl technique solves the issue and in essence inducts the traits of:
I) Futuristic requirements elicitation and thorough mapping of requirements to business organization's objectives. 2) Amendment or elimination provision for requirements needing expensive resources of a business organization. 3) Amendment or elimination of requirements that are not in line with the business objectives of an organization. Here is detailed description CAl technique that is augmented by AI. 1. 4D Appreciative Inquiry The AI technique is utilized for its effectiveness and similar vision. Phases of AI are used for generation of high level requirements of a business organization.
a) Discovery Phase The focus of this phase is at 'what is' aspect of context building. The developer(s) indicates the position and situation of an organization in its existing form. The success of organization is considered as a baseline for discussion and discourse of community. b) Dream Phase The focus of Dream Phase is on 'what might be'. Entire concentration of this phase is on defming and articulating the vision of an organization for future, according to its stakeholders. Stakeholders are asked to peep into the future and mentally carve the shape of an ideal organization or software product in the subject domain of interest. c) Design Phase The 'design phase' aims at answering 'how it can be'. The strengths identified in proceeding phases are utilized for building "possibility propositions". These powerful propositions now serve as the elaborations and images of what could be achieved and created in future. d) Destiny Phase The 'destiny phase' aims at presenting the details and is hence known to answer 'what will be'. It is a phase that provides clear defmitions and boundaries of future system to
51
be built. The end-users and developers focus at the clearer shape of expected software that would be powering an organization after development. The stakeholder contributions would be apparent and system design details would be properly surfaced. 2. High Level Requirement(s) The AI elicitation technique comes up with valuable excerpts and goal oriented statements from the stakeholders. These statements are then rearticulated in terms of proper requirements by the facilitatorirequirements analyst. It must be noted here that the immediate requirements generated through the AI technique are not optimal and easily implementable. These requirements instead present an overall vision of the system. But the entities are not specified, concepts and their implementation details are also not clarified in these requirements. 3. Contributory Points The CAl technique takes over at this point from AI through the introduction of "Contributory Points" a.k.a. CPs. The CPs are a concept introduced in CAl technique to specifically support the mapping of a high level requirements to the Business Objectives (BOs). It can result in two possible ways; 1) The perfectly mapped CPs are collected in a repository for further processing. 2) The imperfectly mapped CPs are passed to the 'Contributory Streamlining Process' for analysis and amendments. 4. Contributory Streamlining Process The Contributory Streamlining Process (CSP) aims at processing and streamlining the imperfectly mapped CPs. The specific CPs are analyzed by the facilitator in partnership with the business organization and business objectives statements. Facilitator after analyzing comes up with either one of three solutions; a) Negative Impacts The CPs whose implementation could negatively impact the business organization's goals and vision are identified. Such CPs are discarded completely from any further processing, as they would introduce problems and are not in interest of business organization. b) Expensive Resources The CPs that require expensive resources for their fulfillment and are not within the organization's capacity are analyzed. The facilitator checks for the budget, cost, time and other available resources and then proposes 'closest fit' solution or amended CPs. c) Not In line with Business The CPs that are not currently in line with the business objectives and scope are analyzed by the facilitator. Facilitator holds meetings and discussions with business organization experts to establish whether the CPs would be followed by organization in future. The CPs are then either discarded or amended depending on the future course of action for business. Finally the 'evolved CPs' are gathered. These 'evolved CPs' enter the succeeding Brainstorming session Gust like the perfectly mapped CPs).
5. Brainstorming Session The brainstorming session takes over the CPs and facilitator generates prompting questions that are circled around these CPs. Facilitator can gauge the end-users in discussion and as compared to brainstorming(without AI), the end-users now know the focal points of system to be built. The brainstorming phase helps facilitator with contextual information and high level requirements that s/he could use to prompt and generate more futuristic requirements. CPs therefore perform the essential task of not only spearheading course for brainstorming questions but also guides in selecting requirements to be included. Finally low level and refined requirements are generated through proper brainstorming sessions around the CPs. CPs serve as focal points of interests for forming brainstorming questions. The obtained requirements are expected to be more in number, have details attached around the CPs and are properly mapped to the BOs of an organization. 6. Low Level Requirements Brainstorming session allows the facilitator luxury of having multiple CPs that he uses to refine the high level requirements. Facilitator could also understand and obtain a better vision of future through the low level requirements. IV. CASE STUDY Earlier research studies on proposing and analyzing AI compared the classic AI elicitation technique with brainstorming [8], observation and interviewing [10]. AI proved to present and provide better results than their counterparts. The gained requirements were more in number and were also futuristic [10]. However, this research study aims to improve upon the shortcomings of AI technique by introduction of CPs that serve a vital part for spearheading brainstorming integrated with AI. The CPs also support in providing a systematic mechanism to streamline the requirements with resources and business goals of an organization. For the purpose of analyzing the effectiveness, the proposed CAl technique would be compared with brainstorming, observation, interviewing and AI. The employees of 'Wisden Accounting Solutions', an accounting management firm were reached for case study conductance. The end-users and developers were taken on board for eliciting requirements via brainstorming, observation, interviewing, AI and CAL A total of 13 end users at the customer end were reached for the purpose of eliciting requirements. Appreciative questions were firstly asked as per recommendation of [11]. These questions were used as a baseline to obtain input against them. Afterwards responses were collected basing on the input provided by the accounting firm's personnel. Single responses below are provided for convenience, so that concerns of end-users could be properly communicated to research community. 1. 4D Appreciative Inquiry i) Discovery Phase • You chose this project with what hopes and dreams? A: Deliverance of a one to all accounting management system that could promptly handle the effects of all transactions.
52
During your career, what was the greatest experience and feeling you had, when you felt contended with your success? A: The satisfaction providence to customer and uplifting their burdens of managing huge financial statements are the best things. Trust of customers when they handover all their business details is also very precious feeling. We enable them to manage and keep all their finances on track with Financial Accounting (FA). • What are the most valuable traits that you cherish being a member of accounting management firm? A: We really like being able to help the companies in managing their business transactions and overall business. We feel good by controlling and coordinating most vital part of business i.e. money. ii) Dream Phase • Are there any expected results from your job and team? What are they? A: We aim at providing the completed and error free Income statements, customer feedback, balance sheets, profit and loss accounts, and capital management statements. • Where do you envision yourself and firm leading in the future? (after many years from now) A: We certainly would aim at providing financial management services to various company sectors in the country. We would be grateful to one day manage accounts of country's biggest companies. Operating nationwide and reaching higher customer satisfaction in limited time is also highly desirable. iii) Design Phase • How it can happen? •
Role of Organization: The customer would have to participate more in customizing the financial accounting software. Changing the software features as per customer needs is very important for them. Strengths Analysis: Customers always want to think ahead of time and make good decisions. In this regard it is important to provide them details of what has to change in their accounts management practices. Features: Customers generally want to communicate their financial statements, perform analysis and operate with multiple companies. iv) Destiny Phase •
What will it be?
Destiny phase aims at providing specific requirements from all previous phases. These requirements are gathered and rearticulated by the facilitator. Requirements: a) Conversion of manual account processes to computerized system that could handle all books of accounts.
f) Provision of accounts management services to different sectors of business. g) Provision of accounts management services nationwide. h) The customer trust and satisfaction should be improved and gained in all means. i) Customization facilities to manage financial accounts should be provided to customers in all financial statements. j) Accounts analysis and financial statistics should be provided to customer companies. 2. Contributory Points Extraction TABLE I Contributory Points Decision Mapping
Legal Issues Limited firm resources
Discarded
Customer Satisfaction
Mapped
Overall Customization
Risky and privacy issues
Non-governmental sections
Mapped Mapped
3. Mapping As depicted in table I, the CPs are identified from requirements produced by AI. These CPs are afterwards checked for conformance with the BOs of the accounting firm. The resources, budget, legal issues, and other aspects are also acquired from the BOs and mapped for suitability and possibility. The possible requirements are flagged as 'Mapped' while hard to implement requirements are either altered or flagged as 'discarded' in cases when even alternation does not work. 4. Brainstorming Session The brainstorming session was now initiated with the end-users of accounting management firm. A significant difference between simple brainstorming employed and brainstorming conducted as part of CAl is that this time the CPs were utilized for brainstorming questions generation. The CPs were analyzed by the facilitator and various possible brainstorming questions were generated by him basing on the CPs. Some of the brainstorming questions are given as sample; Table II
b) Enabling trust of customer companies on the firm. c) Conversion of accounts entries to the computer code. d) Management of business companies and their accounts. e) Provision of error free statements of accounts.
Mapped
Corporate Sector
Brainstorming Questions extracted via CPs I.
Error Free Accounts
53
I' . . What are some of the recurring accounting errors faced by you during manual accounts keeping?
Customer Satisfaction
Analysis and Reports Generation
Which accounts statements are generally at risk of being erroneous? What mechanisms are used by your firm to train the employees about error avoidance? What customer satisfaction mechanisms are in place right now? Can they be implemented in computerized accounts management system? What automated reports and financial statements generation mechanisms would you want in computerized version of your accounting software? What particular analyses are generally liked by the customers? What different reports should the system generate to enable customer companies gain continuous information about their finances?
Table II shows the sample brainstorming extracted and established from guidance of the depict the focal points of requirements and could gain low level and refined requirements for the requirements.
questions CPs. CPs be used to high level
The entire process of generating requirements was earlier conducted with interviewing, observation and brainstorming elicitation techniques. The requirements generated from these methods of elicitation were then compared in number and quality with the firm management and software developers responsible for developing the system. Basing on the comparison following results were obtained. The results are given proper consideration in context of problem statement at hand in this research effort and necessary elements.
Table III Comparison overview of various elicitation techniques against the attribute Attribute Participation Requirements Captured Functional Requirements Non-Functional Requirements Futuristic Requirements
Observation No
Interview Yes
Brainstorming Yes
AI Yes
CAl Yes
8
II
12
22
69
6
7
8
7
32
2
4
4
IS
37
0
I
2
10
27
Future Vision
No
Yes,but occasionally and limited
Participants did not bother to think about future of system/firm
Yes,good peep through into the future
More and refined Future requirements than other techniques
Table III presents the detailed overview of the requirements generated by various elicitation techniques. Observation, Interviewing and Brainstorming were utilized before the use of AI and CAL This was done to allow the end-users think in the traditional way first and then apply a different elicitation technique to witness the impact on requirements gathered. Statistics indicate that the CAl was able to acquire requirements that were more in number and were futuristic in nature. Interestingly in brainstorming, the partIcIpants did not bother to come up with any vision for future which precisely strengthens the point that problem/solution mechanism does not bring unique perspectives in the limelight. However when brainstorming technique was utilized after AI (like in CAl), it was able to bring futuristic requirements simply because the end-users now had focal points (CPs elicited through AI) to work with. V.
CONCLUSION
CAl technique presents best results in unearthing unique and futuristic requirements. Moreover, the requirements elicited are continuously analyzed and altered to fit into resources of customer organization. The merger of brainstorming and AI elicitation techniques through the CPs provides a streamlined and well connected set of dots that are utilized to elicit futuristic requirements. CAl could be used in partnership to augment other elicitation techniques and obtain futuristic requirements as it aims to uncover the positive/goal aspects and goals instead of focusing on problem/solution.
VI.
REFERENCES
[I]
A. Herrmann and B. Paech, "Practical challenges of requirements prioritization based on risk estimation," Empirical Software Engineering, vol. 14,no. 6,pp. 644-684, 2009.
[2]
Carol Kernitzki Gonzales, Eliciting Appreciative Inquiry,2010.
[3]
M. Avital, R. 1. Boland, and D.L. Cooperrider, "Designing Information and Organizations with a Positive Lens," Elsevier SCience, vol. 2,2008.
[4]
D. Zowghi and C. Coulin, "Requirements Elicitation I: A Survey of Techniuqes,Approaches,and Tools," ,2005.
[5]
S. Barney, A. Aurum, and C. Wohlin, "A product management challenge: Creating software product value through requirements selection," Journal of Systems Architecture, vol. 54, no. 6, pp. 576593,2008.
[6]
S. G. Gunda, "Requirements Engineering: Elicitation Techniques," , 2008.
[7]
S. Hansen, N. Berente, and M. Avital, A First Step toward Innovative Projects: An Appreciative Approach to Requirements Elicitation, 2006.
[8]
C. K. Gonzales and G. Leroy, "Eliciting user requirements using Appreciative inquiry," Empirical Software Engineering, vol. 16, pp. 733-772,2011.
[9]
C. Gonzales, G. Leroy G, and De Leo G. , "Requirements engineering using Appreciative Inquiry for an online community of caregivers of children with autism," in Proceedings of the ACM Symposium on Applied Computing, Honolulu, HI, 2009,pp. 9-12.
User Requirements
Using
[10] O. I. AI Mrayat, N. M. Norwawi, and N. Basir, "Appreciative Inquiry in Eliciting Software Requirements," International Journal oj Computer Science and Electronics Engineering (IJCSEE), vol. I, no. 3,pp. 356-361,2013. [II] W. Cooperrider and Stavros, Appreciative Inquiry Handbook for Leaders of Change, 2nd ed. Brunswick, OH: Crown Custom Publishing,Inc.,2008.
54