Attributes-Based Decision Making for Selection of Requirement Elicitation Techniques Using the Analytic Network Process

,


Introduction
e most important phase in developing software is requirement engineering, which combines different tasks of the developing system in order to gather requirements, taking into account the requirements of multiple stakeholders who have variations. RE is a complicated, practical, social, and intellectual process, which produces the software system requirements [1,2]. Requirement gathering is known as the most complicated process and requires a lot of skills for the software development [3]. Instead of this, inappropriate requirement elicitation leads the software development process to failure and late product delivery. e main objective of the elicitation technique(s), used to elicit requirements, is to discover many possible issues in the process requirement gathering, which, in turn, facilitates obtaining appropriate software product for stakeholders, which can fulfill their requirements [4]. In industry, different techniques are used to collect most adequate requirements of a specific software project. However, the most suitable technique selection requires in-depth knowledge of the problem domain, techniques available, and requirement sources (domain experts, organization, market, users, and customers) from where requirement collection is carried out. However, there does not exist one single elicitation technique that works best to solve all kinds of problems. erefore, techniques used for requirement elicitation are categorized into four various types: cognitive techniques, group techniques, traditional techniques, and contextual techniques [5]. Similarly, lack of knowledge regarding attributes, the most appropriate technique selection, is a challenging task for a particular software. ere exist a lot of elicitation techniques for requirement gathering, but among them, some techniques are appropriate to use in some specific condition, while others are not that much suitable to use. [6]. In the same way, there is a need of a technique through which one might be able to elicit the most appropriate requirements for a specific problem based on some attributes. e other techniques work for different situations; however, no such technique is available, which best fits in situation when there is complexity and the decision is based on attributes.
is research first identifies software project attributes. en, ANP method is used, which is a multicriteria decision making (MCDM) approach. ANP is used for the elicitation technique selection on the basis of project attributes specified.
e ANP method provides a model that is used to determine the comparative importance of the software project attributes selected and how a particular technique could be applied with respect to each attribute. It can improve the chances of dependable results, and requirement engineers can help in the process of techniques selection in order to gather requirements. e ANP works well where there are dependencies, and feedback is needed among the elements of the network. e proposed research main contributions are as follows: (i) To identify the software project attributes for requirement elicitation technique (ii) To identify the relative significance of the attributes with respect to the project (iii) To use multicriteria decision making approach for the selection of requirement elicitation technique is research work will help the analyst in decision making with full comprehension of both upside and downside (trade-off analysis) of techniques regarding attributes. is research provides a base that will certainly help requirement engineers in the selection of appropriate technique. e paper organization is given as follows: Section 2 presents related work. Section 3 presents the methodology of ANP for the conduction of the proposed research, attributes for technique selection and elicitation techniques, expert opinion for weights derivation, and experimental work. Section 4 presents results and discussion. Section 5 contains the conclusion of the paper.

Related Work
Several approaches are adopted by researchers for elicitation techniques used in industry and stated in literature. e applicability of these approaches is dependent on the requirement types gathered, the environment of the project, and features of the target technique. ere are limited guidelines for requirement engineers to support them in the selection of most appropriate technique to gather proper requirements. It has been evidenced from the literature that criteria for the assessment and comparing related work are based on disciplines in which proposal is applicable, scope which the proposal intends to achieve, information type upon which proposal is based, number of elicitation techniques covered, kinds of elicitation process contextual elements accounted for, specification of the contextual attribute values, and evolving ability of the proposal. e elicitation session preparation involves understanding of the domain of application by elaborating policy, organizational and social aspects, and system development constraints, identification of requirement sources, stakeholder analysis, technique selection, tools used for requirements, and requirement elicitation from users [6]. In actual practice, when a particular software system's analysts start gathering requirements, they usually use one technique only, which is interview, for information gathering; besides that, analysts are possibly familiar with numerous techniques [7]. People are using different techniques taken from other disciplines like linguistics, sociology, anthropology, and cognitive psychology [8], and techniques used by knowledge engineering [9], and now software engineering. Most of the software developers are not aware of these techniques for optimization of their elicited requirements. is is thought out to be a breach between practice and theory [10].
Most of the researchers tried their best to propose techniques for optimization of the selection process [3,[11][12][13]. But, still, the existing efforts do not provide any empirical exploration and complete assessment regarding relative significance of various selection issues and their supporting strength for each and every technique. Researchers such as Ghanbar et al. [14] introduced an approach of eliciting requirements. In this approach, online serious games are applied for gathering requirements in situations, in which stakeholders of software systems are dispersed. By using empirical evaluation, the effectiveness and validity of the approached were checked and hence, much more encouraging results are produced. Burnay et al. [15] proposed a method of "Elicitation Topic Map" (ETM) to facilitate analysts to prepare interviews. Ribeiro et al. [16] presented an approach in order to verify the acceptance and effectiveness of a tool that is web collaborative, whose main purpose is stakeholders gathering in order to gather requirements. e tool development approach is Six inking Hats Method and gamification. e main aim of this work is to improve stakeholder's collaboration by discussing results and implications. Ruf et al. [17] reported the elicitation of Mobile Financial Advisory Service (mFAS) requirements for the purpose of its design by validating and instantiating the Requirement Data Model (RDMod). A selection of multimethod approach is done for attaining this goal, focus groups and the review of literature.
Yousaf and Asger [5] provided different elicitation techniques comparison for requirements. ey introduced top to bottom survey of various techniques, their strengths, and weaknesses. Chakraborty et al. [18] proposed technique for the process of eliciting requirements based on conceptualized approach, which emphasizes dynamics of interactions between requirement engineer and future system user. e multifaceted, collaborative perspective of requirement elicitation is repeated by them, and guidelines that are well enough to explain this collaboration are provided. is collaborative activity success depends upon group ability in building up a share frame of reference and furthermore, to work collectively. Most of the empirical research studies are conducted in recent years. However, most of the empirical researches conducted are dependent on experiments in laboratory in which students mainly focus on techniques effects of requirement elicitation on the final product of elicitation process. [19]. e authors [20] define a Methodology for Requirement Engineering Techniques Selection (MRETS); requirement engineering is facilitated by this approach to choose adequate technique for a particular project with respect to requirements. e MRETS proceeds towards the selection of techniques from the given three perspectives as follows: (1) A connection setup between attributes of both techniques and projects. (2) Based on evaluation schema, detailed analysis is carried out by using clustering. (3) Useful tools have been provided by the objective function to select RE techniques. e process of RE is of multidisciplinary nature; in a specific situation, a technique could be perfect, but it may not in another. Table 1 shows the summary of the techniques and approaches used.

ANP Approach for the Selection of Elicitation Technique
Multicriteria decision support system (MCDSS) is used to facilitate the issues arise from daily life. Due to the usefulness of multicriteria based decision support system, researchers are trying to devise machine learning algorithms to provide an intelligent decision making alternative [27][28][29]. Decision support systems (DSS) are used in a variety of applications and domains for solving or assisting the decision maker to take a more appropriate decision, and these can be exploited in almost all domains to solve decision problems, such as DSS in Agriculture [30], energy sector [31], waste management, and business [32], [33]. ese DSS can help practitioners solve the particular problems in the area domain of real life. Various domains exploit the theories and methods of decision making alternatives from simple to more advanced and intelligent models [34,35]. DSS is an active area of research where research finds new ways to evaluate multiple criteria and propose intelligent framework for enhancing the potential of decision support systems.
ANP is a MCDM method, which is used to handle the problems when it becomes very difficult to make a decision. In the ANP, the elements are clustered with each other in a group of networks. e cluster consists of different elements and nodes connected to each other via a network. e ANP works well where there are dependencies, and feedback is needed among the elements of the network. e ANP is a suitable tool to handle such a complicated situation. e following sections briefly show the details of the ANP process for the proposed research.

Analytic Network Process.
e main goal of ANP method is to handle the selection of elicitation technique, both inner and outer dependencies among the project environment attributes of the network of nodes. ANP is applicable in different situations such as [36]. e ANP deals in situations when there is complexity among the available alternatives based on some criteria, and the selection is uncertain. No decision is possible on which option should be adopted. So, to overcome such situation, the ANP is the best option to be adopted. e summarized form of the main steps involved in ANP method is given as follows [37]: where n is the number of elements in a matrix by where RI is a random index. Table 2 shows the RI presented by Saaty [38]. CR value should always be smaller than 0.1; else, the process of calculating the CR should be revised so that the value becomes less than 0.1: (i) e combination of Eigenvectors of the matrices will provide super matrix. Unweighted super matrix is a matrix if the value obtained from column sum is bigger than one. In order to obtain the value of sum of the column less than or equal to one, unweighted super matrix will be normalized. Significant aspects of tools, techniques, and approaches are covered along with the trends, issues, and challenges in the field [8] Roadmap of requirement engineering is research work provides an overview about requirement engineering (RE) of the software systems. It defines the core areas of RE practice and points out some main issues of open research for the future.

Mathematical Problems in Engineering
[9] Techniques of knowledge elicitation e main reason of this survey is (1) knowledge elicitation techniques identification and the related bibliographic information, (2) techniques organization into categories based on methodological resemblance, and (3) summarizing techniques strengths, weaknesses, and suggested applications.
[10] Elicitation technique selection: how do experts do it?
is study provides in-depth interviews results conducted from some of the world's most experienced analysts. e results produced show how the selection is carried out for elicitation techniques based on a variety of situational assessments.
[11] Framework for matching requirement engineering techniques is paper proposed a framework in which the typical requirement engineering techniques are characterized, which in turn provides a base for the selection of most adequate techniques at the time when the project starts and at the time of identifying a change in nature of the project or experiencing difficulties in describing a appropriate set of requirements.
[12] Framework for selection of requirement elicitation techniques In this paper, a framework is introduced; this framework helps analysts select the most suitable elicitation technique that is fit for the elicitation session, the project environment, and problem domain. After applying this framework, it provides a priority list of elicitation techniques that best suits the project. [14] Utilizing online serious games to facilitate distributed requirement elicitation is paper proposed a new approach, i.e., online serious games, in order to gather requirements from the stakeholders distributed.
Empirical study was conducted in this approach to evaluate the feasibility and find the effectiveness. e results produced by this approach were good enough and helped out less experienced analysts gather higher number of requirements. e results produced also recognized that this approach provides simple and easy way to individuals that are technically less experienced and allows them to contribute in requirement elicitation. [15] A theoretical and empirical study of topic importance in requirement engineering elicitation interviews is study proposed the elicitation topic map (ETM), which helps engineers formulate interviews. ETM shows topics in the form of diagrams; these diagrams are then discussed in interviews and represents how likely to discuss these topics spontaneously by the stakeholders. If a topic to be discussed spontaneously, it is less likely, then suggestions to engineers are that they might wish to make questions on it just before the interview. ETM was shaped through empirical and theoretical research. [16] Gamifying requirement elicitation is study examines that how much web collaborative tools are useful and accepted, in which development was done by using approach of the six thinking hats method and gamification to get dispersed stakeholders altogether. e document discusses the implication and results in order to improve collaboration among stakeholders.
[21] Requirement elicitation techniques selection e study was conducted in knowledge-based systems based on previous works, evaluating and building upon their efforts, and extended the knowledge-based approach by considering taxonomy of project characteristics. It has mainly bridged the gap to provide necessary support for the analyst by taxonomy of the software project types. e method proposed provides support in terms of selection of appropriate elicitation technique and knowledge base related to it. e method evaluation is done through a case study and prototype to check its effectiveness and feasibility.
(ii) e weighted matrix will be obtained after normalizing unweighted matrix. (iii) Furthermore, the transformation of super matrix into limit matrix will be carried out. (iv) e limit matrix obtained provides help to select the most appropriate alternative.
e steps involved in ANP technique along with the process of calculations are shown in Figure 1.

Attributes for Technique Selection and Elicitation
Techniques. Project environment attributes greatly affect technique selection for elicitation process. A technique for elicitation may be fit for an attribute but may be not for the rest. E.g:-if stakeholders are easily available, then interview is a good technique that can be applied, but if the analysts find them hard to be available, then he/she cannot use this technique. Industry practices, interviews conducted from domain experts, and large amount of literature reviews have

Reference
Technique Description [22] Review of techniques of requirement elicitation is paper presented elicitation techniques understanding and how to use them in applications of real time. e implementation of these techniques of requirement gathering provides base to know clearly requirements of the stakeholders and also helps developers better understand the requirements of the developing system.
[23] Requirement elicitation problems is paper presented problem types classification that requirement elicitation process faces. To derive this classification, a literature analysis has been carried out. Papers reporting on techniques for improving requirement elicitation practice were examined for the problem the technique was designed to address. e classification contains the most prominent or recent techniques for solving the problems. e requirement engineer is allowed by the classification to be sensitive on the rise of the problems and the educator to structure delivery of requirement elicitation training.
[24] Assessment of requirement elicitation tools and techniques is paper provides the understanding of requirement elicitation tools and techniques. e paper also presented the comparison of elicitation techniques and software requirement tools in a summarized form, and this comparison is based on different parameters.
[25] Requirement elicitation framework is study proposed a framework of requirement elicitation, which starts with an organization's business process model and builds the system's CRUD matrix. is matrix actually provides all possible relationships between entities and functions of the system in order to gather complete requirements of the system.
[26] Analysis of elicitation techniques for design of smart requirements is paper presented elicitation techniques comparison in detail, along with its characteristics as well as situational characteristics. e main aim of comparative analysis is to support analyst for selection of suitable requirement elicitation technique on the basis of different situational characteristics. e model presented will be quite helpful to automate the process of technique selection for elicitation. [18] An exploration into the process of requirement elicitation In this study for RE, an integrative process model is presented. e suggestion comes from the study's finding that there are four collaborative states from which RE is composed. is research explains these four states, and important factors are identified, which tend to trigger transitions from one state to another. [19] Review and aggregation of empirical studies on elicitation techniques is research has provided empirical studies results on the techniques used for elicitation, and empirical evidence has been provided after the results aggregated. e methodology chosen for surveying was systematic review, whereas comparative analysis method is adopted for aggregation because the applicability of meta-analysis techniques is not possible. In review, identification of 564 publications is done from ACM DL databases, IE EEXPLORE, SCOPUS, and Google. In this research, 26 publications are selected, and then data is extracted from them. e 30 empirical studies are found in the selected publications.
ese studies were designed to test 43 elicitation techniques and 50 different response variables. e study got 100 separate results from the experiments. e 17 pieces of knowledge are generated by the aggregation about sorting, laddering, protocol analysis, and interviewing elicitation techniques. In this research, the gathered knowledge provides guidelines set.
Mathematical Problems in Engineering 5 been observed for the identification of attributes of software project environment that are highly influential on the technique selection process [38][39][40]. ese attributes are given as follows: Requirement elicitation is collaborative and human oriented activity where knowledge from other fields is also used widely such as management science, psychology, and sociology. e most crucial task for a requirement engineer in the process of developing software is a suitable technique selection. In process of requirement gathering, various techniques are used to elicit requirements. But there is no such technique that works well to cover all the aspects of the software project. e literature [5,24,26] and industry report many techniques that are used for requirement gathering. But this research mainly focuses on techniques that are most widely used such as (i) Document Analysis (DA), (ii) Interview (IV), (iii) Introspection (IS), (iv) Questionnaire (QN), (v) Survey (SV), and (vi) Task Analysis (TA).
In this study, the process of technique selection to gather requirements is based on attributes of the software project environment. ANP comprises three key components, i.e., (1) Goal, (2) Criteria, and (3) Alternatives. e algorithm presented Saaty's scale, which actually describes the fundamental scales for the judgements and represents the importance of elements among themselves. Table 3 also shows the importance of one element from the other. Figure 2 represents techniques and attributes using ANP.

Derivation of Weights from Expert's Opinion.
In this study, ANP method is applied to the proposed model by in which comparisons are carried out in two phases. ese comparisons are performed in such way that first attributes comparisons are done among themselves with respect to techniques and then comparisons among techniques with respect to attributes. Domain experts (Employee) of various software houses are the source from where data are collected. Questionnaire was used as a data collection tool, distributed among 25 experts. At the start, domain experts were first briefed about techniques used for requirement elicitation and project attributes. After the discussions, the experts came with the idea of using these techniques that are mostly used for requirement gathering and software development. Questions related to the techniques and their attributes were given to the experts. ese questions have covered all techniques mentioned along with the attributes for facilitating requirement gathering. e experts assigned weights to attributes of project environment and to techniques used for elicitation that lead to a balanced agreement on each attribute and technique with respect to weight. To eliminate the variations that occurred in the opinions extracted from experts, a normalized geometric mean on opinions of experts is applied. In this research, traditional techniques are considered, that is, Document Analysis (DA), Interview (IV), Questionnaire (QN), Introspection (IS), Survey (SV), and Task Analysis (TA). ese techniques were chosen to validate results and they pushed into matrix of n × n. e relative weights of the afore mentioned techniques are shown as T ij, where "i" is for the row's representation in the matrix and "j" is for columns. If in the matrix relative weights assigned to any two techniques are the same, then the values of T ij � 1 and T ji � 1. en in position where T ij is compared with the Tji which will definitely be a diagonal value, value "1" will be placed in that position. As shown in the given matrix below, "1" is inserted in DA11, IV22, IS33, QN44, SV55, and TA66: After deciding weights for different parameters, the step by step ANP method to select an elicitation technique with respect to Attributes of project environment is as follows. Techniques comparison with respect to attribute SCO is as given in Table 4. e process of normalization of original matrix as shown in Table 4 is carried out and is given in Table 5. Table 6 is extracted as a result of Table 5 and is said to be a normalized table if we calculate the sum of all columns in Table 4 and the result obtained is equal to 1. Now, to calculate Eigenvalues, the procedure that followed is to find the row sum of Table 5 which will be then divided by the total numbers of column in Table 6. e consistency ratio (CR) is calculated by the formula given in equation (2). e same processes of comparisons have been done for the rest of the attributes.
Comparison of attributes with respect to Interview is shown in Table 7.
e same processes of comparisons have been done for the rest of the requirement elicitation techniques.

Results and Discussion
e proper requirement elicitation is one of the core issues in the software development process. To gather most Step 1 Step 2 Step 3 Weighted super matrix Mathematical Problems in Engineering appropriate requirements of the problem domain elicitation technique selection is also very important and difficult task. e reason is that an elicitation technique might be suitable for use in one situation which results in suitable requirement gathering but it may not be suitable to use in other situations. On the other hand, technique selection process is greatly affected by project attributes of the software system due to the reason that there is no observed value of the techniques to assist the analyst in the process of technique selection. e ANP method is applied which is of the MCDM approach for the appropriate selection of technique to elicit requirements on the basis of software project attributes. In this study, the first step that was taken is the development of a network structure. is network structure was designed in such way  Figure 2: Representation of techniques and attributes using the ANP.

Weighted Super Matrix.
A weighted super matrix is a matrix in which total sum of all the columns must be equal to or less than "1"; otherwise the matrix will be normalized to get weighted matrix. Table 8 shows weighted super matrix.

Limit Matrix.
e values in the weighted super matrix are raised to the power until the rows in the weighted super matrix become the same and stable. e matrix obtained as a result of this process of the weighted super matrix is called the limit matrix. e limit matrix is the summarized form of all the pairwise comparison matrices. e limit matrix as shown in Table 9 contains the priorities of all the elements which help the requirement    engineer select a suitable technique with respect to project environment attributes. e final output (weights) is visually represented in Figure 3. It is very clear from Figure 3 that" Interview (IV)" is the most suitable technique to be selected, then the second number "Task Analysis (TA)", then third "Survey (SV)", fourth "Document Analysis (DA)", fifth "Introspection (IS)", and the last one is "Questionnaire (QN)". Hence, the result generated shows that the technique is the best among the others. So on the basis of attributes of software environment this selection of elicitation technique has been done.
ese results for IV were obtained based on the weights assigned and the calculation process of pair-wise comparison. e process of pair-wise comparisons is shown from Tables 4-7, and the final calculation of summary matrix is shown in Table 8, and limit matrix in Table 9. From these calculations, it is concluded to select the best option among alternatives. e selected technique is well applicable and reliable for its selection purpose. e managerial implications of the proposed approach are that it can help practitioners in a better way to select the most appropriate elicitation technique among the available techniques. As the approach is based on several attributes as criteria, so it deals with multiple perspectives of a project in a better way and can lead the project to success.

Conclusion
In the process of software development, the important thing is requirements, which if gathered properly, then the end product will be according to the need of the user; otherwise, it will be rejected. It means that the development of software system is highly dependent on requirements. For the purpose of eliciting suitable requirements, the most adequate technique selection is required. Hence, selection of suitable technique will gather the most appropriate requirements, which in turn increase productivity and will provide protection to software industry, to clients and system developer from useless efforts, cost, wastage of time, and other resources. e increase in software success ratio and prevention from failure is mainly dependent on elicitation technique selection based on project attributes of software environment. In this research, the method applied for the selection of elicitation technique must be the most suitable one based on attributes of software project environments. ANP, which is one of the MCDM approaches, is very useful to solve decisions, to structure, and to plan problems where multiple criteria are involved.
In this research, the first step was to develop a network structure using ANP method, and the network structure designed is of goal, criteria, and alternatives associated with the criteria. In the network structure goal is to select suitable elicitation technique, criteria are project environment attributes, and alternatives are elicitation techniques. Due to this network structure requirement engineer understanding level becomes increased about elicitation techniques and project environment attributes. After network structure is designed in the next step, the weights are derived from well experienced persons (Experts), who worked in the software industry for years. e experts carried out the pairwise comparison of techniques with respect to attributes and then of attributes with respect to techniques. On the basis of this comparison, calculations have been done, which result in the Eigen values of the techniques and attributes. e consistency ratio was also calculated, which was less than 0.1 and was correct according to the rule. After weighted super and limit matrix were obtained, the limit matrix was actually the summarized form of all the matrices. After all the processes of pair-wise comparisons and calculating weighted and limit matrix, the results show clearly that IV with values 0.2683 and SV with values 0.1499 were the best choices among the available alternatives as they show high ranked values. e final results are obtained through limit matrix, which contains weights and on the basis of these weights, it can be very easy for a requirement engineer to take decision about most suitable technique selection. e proposed research results represent that the method is quite helpful, useful, and appropriate for decision making with respect to requirement elicitation technique selection. In the proposed study, it has been proved that the application of ANP method is very efficient for technique selection with respect to project environment attributes. In future, the proposed work can be extended by using some more efficient techniques like fuzzy ANP, fuzzy logic, roughest, and so on in order to ensure efficient selection of requirement elicitation technique.

Data Availability
No primary data were used to support this study.

Conflicts of Interest
e authors declare that there are no conflicts of interest regarding the publication of this paper.

Acknowledgments
is work was partially supported by the NSFC project (grant no. 61762058) and the Science and Technology Project of Gansu Province (grant no. 1610RJZA056).