1 Introduction

Multi-criteria decision making (MCDM) is a sub-branch of operations research which is concerned with the selection and prioritization of alternatives on the basis of different criteria’s as well as the classification of the alternatives in a small number of groups (Mardani et al. 2015; Abdulla 2012). Different MCDM methods have for instance been developed in the following areas: decision science, supply chain management, quality management, software engineering, safety and risk management, tourism management, (Mardani et al. 2015). Software engineering employs MCDM for some of its tasks, for example, SRs selection and prioritization (Sadiq and Jain 2014). SRs selection is a key research problem of software engineering whose objective is to select different “functional requirements” (FRs) or alternatives on the basis of different “non-functional requirements” (NFRs) or criteria (Sadiq and Jain 2015). The FRs describe the functionality of the system, while NFRs describe the “non-behavioral” aspect of the system like security, reliability, maintainability, etc. For the successful development of the software product, it is vital to elicit, model, and manage the SRs in the early phase of the requirements engineering. It has been observed that lack of user’s participation and SRs related issues are the main causes for failure of the software projects (Lehtinen et al. 2014; Kappelman et al. 2006). In order to develop a system which is accepted by stakeholders, its requirements must be elicited and prioritized before the implementation of the software. The essence of SRs selection is to implement the requirements of stakeholders with respect to cost, quality, delivery time, etc. (Sadiq 2017; Khurum et al. 2012). Perini et al. (2007) pointed out that selection and prioritization of SRs play a key role in the software development process as it enhances the “software release planning”, “budget control”, and “scheduling”. Among different SRs related issues, SRs selection is a key research issue; and improper selection of SRs during the development phase may lead to the failure of the software project (Achimugu et al. 2014; Savolainen et al. 2012; Cerpa and Verner 2009). Software products that are developed on the basis of the selected requirements can be expected to have a lower probability of being rejected (Achimugu et al. 2014). Therefore, this paper focuses on one of the key research issues of requirements engineering, i.e., the selection of the SRs.

During the SRs selection process, different stakeholders participate in group decision making and they specify their preferences for the SRs using preference relations (Sadiq and Jain 2014; Xu 2011, 2006). These specify the stakeholders’ preferences regarding the importance of their requirements by using crisp data or fuzzy data. Crisp data is based on the classical set theory in which an individual is either a member or not a member. On the other hand, fuzzy set theory is the generalization of the classical set theory in which an element may have a certain degree of membership in the set it belongs to (Zadeh 1996). Fuzzy logic was developed by Lotfi A. Zadeh in 1960s to deal with imprecision, uncertainty, partial truth, and approximation. In fuzzy based MCDM systems, linguistic variables are used to specify the preferences of the stakeholders in preference relations. There are different applications of fuzzy logic in the following areas, e.g., business, chemical industry, defense, finance, electrical engineering, software engineering. (Mardani et al. 2015; Zavadskas et al. 2014). The motivation, research problem, and the contribution of our work are discussed in the following sub-sections.

1.1 Motivation

The SRs selection problem is a “multi-criteria group decision making” (MCGDM) problem because it involves the combination of “group decision making” (GDM) and “multi-criteria decision making” (MCDM) fields (Morente-Molinera et al. 2017; Sadiq and Afrin 2017; Chu and Lin 2009). The MCGDM problem ranks the FRs using the preferences of the set of stakeholders as to the set of the FRs according to NFRs. Several stakeholders are involved during the SRs selection process and the preferences of the stakeholders are specified according to preference relations (Xu 2011, 2006). Preference relations may be complete and incomplete (Xu 2006, 2011). Complete preference relations (CPR) are those relations in which decision makers can specify their preferences for all sets of the SRs. In case of incomplete preference relations (IPR), the SRs decision makers can’t specify their preferences for some sets due to “time pressure”, “lack of knowledge”, and “his/her limited expertise related with problem domain” (Xu 2006). As a result, the decision makers form an incomplete linguistic preference relation (LPR) (Xu 2006). Therefore, we are motivated to select the SRs when incomplete LPRs are given.

1.2 Research Problem

To develop a successful software system, it is essential to elicit and implement the SRs according to the consensus of the stakeholders during the different releases of software (Achimugu et al. 2014; Sadiq 2017; Simoes et al. 2018). In any system, there are \(n\) FRs, i.e., FR1, FR2,…, FRn; and the selection of these FRs on the basis of \(m\) NFRs, i.e., NFR1, NFR2, … NFRm during SRs selection process creates a MCGDM problem (Sadiq and Jain 2015). In SRs selection process, \(q \) decision makers, i.e., \(DM_{1} , DM_{2} , \ldots ,DM_{q}\) are involved; and the weights of these DMs are represented by \( W_{{DM_{1} }} ,W_{{DM_{2} }} \ldots W_{{DM_{q} }}\). It is given that

$$ W_{{DM_{k} }} \ge 0\;{\text{and}}\;k = 1, 2, \ldots , q $$
(1)
$$ \mathop \sum \limits_{k = 1}^{q} W_{{DM_{k} }} = 1 $$
(2)

In real life applications, decision makers specify their preferences using linguistic terminologies to deal with imprecision, uncertainty, partial truth, and approximations; and each stakeholder or decision maker has different opinions or preferences for the same SRs during the GDM process. The preferences of different decision makers regarding different SRs are stored in the preference relations. Sometimes, decision makers may not construct the complete preference relations due to “time pressure”, “lack of knowledge”, and “his/her limited expertise related with problem domain” and form an incomplete preference relation (Xu 2011). In literature, SRs selection with incomplete LPRs is still an unresearched problem. Therefore, to address this issue, a method is presented for the selection of SRs with incomplete LPRs.

1.3 Contribution

The contribution of the paper is to develop a method for the SRs selection which utilizes the acceptable incomplete LPRs with the least judgements (i.e., \(n-1\) judgements) to construct the consistent complete LPRs (Xu 2006). In the proposed method, the weight vectors of the \(q\) decision makers are elicited by using the L−1 – R−1 inverse function arithmetic principle and the “graded mean integration representation” (GMIR) method (Chou 2003).

1.4 Organization of the paper

The remaining part of the paper is organized as follows: Related work is given in Sect. 2. The proposed method for SRs selection is given in Sect. 3. The proposed method is illustrated with the help of a case study which is given in Sect. 4. Threats to validity are discussed in Sect. 5. Finally, Sect. 6 comprises the conclusions and suggestions for further work to be done in the future.

2 Related Work

Decision making processes in the area of management science and information technology have been developed to solve different problems like the portfolio selection problem (Masmoudi and Abdelaziz 2012), the spam problem (Berend et al. 2017), the software test case selection problem (Farzat and Barros 2016), the facility location selection problem (Farahani et al. 2010), the software goal selection problem (Sadiq and Jain 2015), the SRs selection problem (Karlsson and Ryan 1996), the real time location system (Budak and Ustundag 2015), and the supplier selection problem (Kar 2014). The objective of this section is to present the related work in the area of SRs selection methods. There are few studies which have reviewed the literature regarding the “software requirements selection and prioritization (SRSP)”. For example, Achimugu et al. (2014) presented a systematic literature review on SRs prioritization research. In another study, Pitangueira et al. (2015) performed a systematic review and mapping in SRSP using “search based software engineering” (SBSE) approaches. In SBSE, SRs selection is also known as the “Next Release Problem”, which was proposed by Bagnall et al. (2001). In this work, the SRs selection methods are categorized into six parts based on the following criteria: Integer linear programming (ILP), Metaheuristic algorithms, Approximate backbone-based multilevel algorithms, MCDM algorithms, Fuzzy based approaches, and Machine learning.

The integer linear programming (ILP) is a class of “combinatorial constrained optimization problems” which includes objective function and constraints. In ILP, the objective function is a linear function and the constraints are linear inequalities. Different methods have been developed for the solution of the SRs problem using ILP (Jung 1998; Van den Akker et al. 2005a; Van den Akker et al. 2008; Li 2007; Sureka 2014; Veerapen et al. 2015). For example, Jung (1998) developed a method by considering the variant of “0/1 Knapsack problem” for the selection of SRs. This method was the extension of Karlsson and Ryan (1996) in which the analytic hierarchy process (AHP) was used to find the set of requirements for the implementation. SRs methods based on ILP was found to be impractical because it demands large execution times (Veerapen et al. 2015). Therefore, to address this issue, metaheuristic algorithms-based methods were developed for the selection of the SRs. Ruhe and Greer (2003) developed a method, EVOLVE + , using the Genetic Algorithm (GA) to allocate the optimal requirements during different increments. The Multi-Objective Genetic Algorithm (MOGA) was applied in (Silva et al. 2014) for the selection of SRs. In this method, the “path-relinking based” technique was used to generate the initial population of MOGA. Sagrado and Aguila (2009) used Ant Colony Optimization (ACO) for SRs selection. Techniques like ACO, GA, etc. can work efficiently on small sets of SRs. Therefore, to deal with large sets of requirements, the “approximate backbone based multilevel algorithm” was used for the solution of the SRs selection problem (Jiang et al. 2010a). In another study, Xuan et al. (2012) employed the “backbone based multilevel algorithm” for SRs selection from the large sets of data.

Among various MCDM techniques, the AHP has been widely used in the literature to compute the ranking values of SRs under crisp environment (Karlsson and Ryan 1996; Ruhe et al. 2003). For example, Ruhe et al. (2003) used AHP for “trade off analysis for the selection of SRs”. In this method, the preferences of stakeholders were identified by AHP. One of the limitations of the AHP based techniques is the scalability problem, i.e., as the number of SRs increases, the number of pairwise comparisons also increases (Avesani et al. 2005). Therefore, to handle the scalability issue of the AHP, different methods have been proposed. For example, Avesani et al. (2005) developed a method for SRs prioritization using machine learning techniques. In their work, the Case-Based Ranking (CBRanking) method was adopted to compute the ranking values of the SRs (Avesani et al. 2003).

Different methods have also been used as groups to solve the SRs selection problem. For example, Baker et al. (2006) proposed a method by grouping the greedy and simulated annealing (SA) algorithms for the identification of the set of SRs that would be implemented during different releases of the software. Bagnall et al. (2001) used the following group of methods to solve the “single objective next release problem” (NRP): ILP, greedy algorithms, Hill climbing, and SA. The bi-objective NRP and multi-objective NRP were formulated by Durillo et al. (2011) and Zhang et al. (2007), respectively. Cai et al. (2012) developed a requirements dependency based method for SRs selection using the “Multi-Objective Evolutionary Approach” and “The Strength Pareto Evolution Algorithm-2” techniques. ACO and “Particle Swarm Optimization” were used to address the scalability issues of the SRs selection problem. (Cai and Wei 2013) proposed an integrated method by using the “domination and decomposition based multi-objective evolutionary” algorithms for the selection of SRs. The memetic algorithm was used in (Cheng et al. 2014) for SRs selection. Fuchshuber and Barros (2014) use the landscape visualization to solve the SRs selection problem. They applied visualization patterns along with the hill climbing algorithm to improve the heuristics for SRs selection.

In the literature of SRs selection, integrated methods have also been developed to select the SRs, for example, Sadiq and Afrin (2017) proposed an integrated fuzzy AHP and fuzzy TOPSIS method for the selection of SRs. Ngo-The and Ruhe (2009) proposed a method for the selection of SRs by integrating the ILP and GAs. Uncertainty issues during the selection of SRs are discussed in (Paixao and Souza 2013a; Paixao and Souza 2015; Li et al. 2014; Harman et al. 2014; Li 2016; Li et al. 2017). For example, Paixao and Souza (2013a) proposed a scenario-based method for NRP using the SA and GA and considered the uncertainties presented in the input variables. A recoverable robust based approach for NRP was proposed by Paixao and Souza (2013b). In another study, Paixao and Souza (2015) reformulated the NRP in the presence of uncertainties. Stakeholders play an important role during the SRs selection process (Sadiq 2017; Pitangueira et al. 2016; Zhang et al. 2011). In Pitangueira (2015) preferences of multiple stakeholders were incorporated during the SRs selection process. In MCDM based methods for the selection of SRs, different stakeholders are involved in the decision making process. Therefore, it is important to identify the stakeholders before starting the SRs selection process (Sadiq and Jain 2014; Sadiq 2017).

In real life applications, stakeholders use linguistic terminologies to specify their preferences regarding the SRs, for example, “the cost of the system should be low” and “the performance of the system should be high”. Here the terms “low” and “high” are linguistic variables (LVs). Such types of the LVs are modelled by fuzzy logic. Few studies have applied fuzzy based approaches during the SRs selection process (Pitangueira et al. 2013, 2015; Achimugu et al. 2014; Sadiq and Nazneen 2019). For example, Sadiq and Jain (2015) proposed a method for the selection of goals in “goal-oriented requirements elicitation process” (GOREP) under fuzzy environment. Sen and Baracli (2010) proposed a fuzzy based approach for “quality function deployment” to determine which NFRs are important for a company’s decision concerning its software selection. The proposed method was applied to “audio electronics of Turkey’s electronic industry”. In these methods, preference relations are used as an input during the SRs selection process.

To discuss the strengths and weaknesses of the existing SRs selection and prioritization methods, different review studies have been conducted (e.g., Hujainah et al. 2018; Pitangueira et al. 2015; Achimugu et al. 2014). These studies focus on the selection and prioritization of the SRs when the preference relations are complete. A summary of the selected studies on SRs selection methods is exhibited in Table 1. In these studies, both crisp and fuzzy data have been employed during the decision-making process. The main objective of these methods was to compute the ranking values of the SRs by using the following techniques when complete linguistic preference relations were employed to compute the ranking values of the SRs: (a) integer linear programming, (b) Metaheuristic algorithms, (c) approximate backbone-based multilevel algorithms, (d) AHP/TOPSIS methods, (e) fuzzy based methods and (f) machine learning algorithms. To our knowledge there is no study which focuses on the selection of SRs when the preference relation is incomplete. Therefore, to address this issue, we present a method for the selection of SRs under incomplete LPRs.

Table 1 Summary of the selected studies on SRs selection methods

3 Proposed Method

The method for selecting SRs with incomplete LPRs is discussed in this section. The steps of the proposed method are given in Fig. 1.

Fig. 1
figure 1

Steps of the proposed method

The visual representation for the computation of the ranking values of the SRs is exhibited in Fig. 2. In Fig. 2, boxes are used to represent some of the intermediate steps of the proposed method and these steps are connected by the arrows. There are \(n\) FRs, i.e., \({FR}_{1}\),\({FR}_{2}\), …,\({FR}_{n}\), which are selected on the basis of \(m\) NFRs, i.e.,\({NFR}_{1}\),\({NFR}_{2}\), …,\({NFR}_{m}\). There are separate boxes for different FRs and NFRs; and each FR is connected with all the NFRs by arrows. This means that each FR will be evaluated on the basis of the \(m\) NFRs. In the proposed method the goal-oriented method is used to elicit the FRs and NFRs. In Fig. 2, \(q\) decision makers, i.e., \(DM_{1} ,DM_{2} , \ldots ,DM_{q}\) are invited to evaluate the FRs based on NFRs so that the LPRs can be constructed. Based on the collective complete LPRs, the ranking values (\(rv\)) of the \(n\) FRs are determined, i.e., \(rv_{1} ,rv_{2} , \ldots ,rv_{n}\) The explanation of the steps of the proposed method is given in the following:

Fig. 2
figure 2

Computation of the ranking values of the SRs

Step 1: Identify Stakeholders and their Requirements

Stakeholder identification is a key activity of the requirements elicitation process. In any business and in government organizations, a stakeholder can be defined as “any group or individual who can affect or is affected by the achievement of the organization”. Stakeholders can be categorized on the basis of their roles and responsibilities, for example, stakeholders responsible for the elicitation of the FRs and NFRs. During the SRs elicitation technique, several stakeholders participate in the identification of the SRs for any type of the information system. Therefore, it is vital to identify the stakeholders before the SRs elicitation process (Sadiq 2017). To identify the stakeholders, following steps are employed: (a) identification of the types of the stakeholders (b) role of the stakeholders. Once the key stakeholders have been identified, the next step is to elicit their needs according to the elicitation techniques. In this step, the goal-oriented method is used for the elicitation of the SRs. In the goal-oriented method, the need of the stakeholders is decomposed and refined into sub-goals. The process of decomposition and refinement will continue until the authority of the last sub-goal is allocated to agents or software systems. During the decomposition and refinement process, the requirements are connected through “AND decomposition” and “OR decomposition”. These connections are represented in a graph called AND/OR graph. In AND decomposition “if all of the sub-goals or requirements are achieved, their parent goals are achieved or satisfied”. In OR decomposition, “the achievement of at least one sub-goal or requirement leads to the achievement of a parent goal” (Lamsweerde 2000; Kaiya et al. 2002). There are different techniques to identify the need of the stakeholders such as traditional, group elicitation, cognitive, contextual, goal oriented, etc. In this step, initially traditional techniques are used to obtain the initial background of the information system and after that the goal-oriented technique is used to find the FRs and NFRs of the information system because it visualizes the SRs using an AND/OR graph (Sadiq and Jain 2012).

Step 2: Specify Decision Maker’s Linguistic Assessment

In real life applications, decision makers use linguistic variables to specify their preferences. For example, (i) the system should be “more” usable and (ii) Bakewar is a “very good” place in Uttar Pradesh in India. Here, more and very good are the linguistic variables. To model these variables, fuzzy logic is used in the decision making process. The objective of this step is to collect the decision maker’s linguistic assessment that would be used during the SRs selection process. Here, the stakeholder’s linguistic assessments \(\left( {LA} \right)\) are collected during the evaluation of the FRs by using the linguistic variables defined by a discrete terms set \(LA\) and decision makers constructs an LPR = \( (PR_{ij} )_{n \times n}\), where \(pr_{ij}\) designates the preference degree or intensity for \(FR_{i}\) over \(FR_{j}\). In this relation, \(pr_{ij} { } = { }la_{0}\) indicates “indifference between \(FR_{i}\) and \( FR_{j}\)”, \(pr_{ij} > la_{0 }\) indicates that “\(FR_{i}\) is preferred to \( FR_{j}\)”, \(pr_{ij} < la_{0 }\) indicates that “\(FR_{j} \) is preferred to \(FR_{i}\)”. Here, \({\text{LA}}\) be a set of finite and totally ordered discrete terms with odd cardinality, e.g., 3 or 5; and is represented as \({\text{LA }} = {\text{\{ }}la_{\alpha } { |}\alpha = { } - {\text{t}}, \ldots ,{\text{t}}\} .{ }\) Each term in \(LA\) represents a possible value for a linguistic variable and has the following characteristics (Xu 2006):

(a) For all elements in \( {\text{LA}}\), \(la_{\alpha } > la_{\beta }\) if and only if \(\alpha > \beta\).

(b) There is a negation operator defined as:

  • Negation (\(la_{\alpha }\)) = \(la_{ - \alpha }\)

  • Negation (\(la_{0}\)) = \(la_{0} \) for self-judgement.

Step 3: Evaluate the Relevant Functional Requirements on the Basis of the Non-functional ones

Let \(DM = \left\{ {DM_{1} , DM_{2} , \ldots ,DM_{q} } \right\}\) be the set of decision makers and \(W = \left\{ {W_{1} , W_{2} , \ldots , W_{q} } \right\}\) be the weight vectors of decision makers, where \( W_{k} \ge 0\), \(k = 1,2, \ldots ,q\) and \( \mathop \sum \nolimits_{k = 1}^{q} W_{q} = 1\). The decision makers evaluate each FR by using the term set \( LA\), based on the NFRs, and construct an acceptable incomplete LPR \( PR_{k} = \left( {pr_{ij}^{k} } \right)_{n \times n}\), if the size of the SRs is small. As the number of requirements increases, the number of comparisons will also increase. So, to deal with this issue, i.e. the scalability issue, all the relevant requirements that have similar types will be inserted into groups. The priority of these groups will be calculated after all insertions are completed by using the following steps (Ibriwesh et al. 2018):

  • Step 1: The decision makers will fill in the top-right half cells of the decision matrix on the scale of 3, 5, 7, and 9. The elements of the group G1 and G2 will be entered as: (a) 1 for the diagonal elements of the matrix, (b) \(3\) in the decision matrix, if G1 is slightly more important than G2 (c) \(5\) in the decision matrix, if G1 is more important than G2 (d) \(7\) in the decision matrix, if G1 is slightly more important than G2, and (e) \(9\) in the decision matrix, if G1 is definitely more important than G2. On the other hand, (f) enter \(- 3\) in the decision matrix, if G1 is slightly less important than G2 (g) enter \(- 5\) in the decision matrix, if G1 is less important than G2 (h) enter \(- 7\) in the decision matrix, if G1 is considerably less important than G2, and (e) enter \(- 9\) in the decision matrix, if G1 is extremely less important than G2.

  • Step 2: Directly transfer the negative values to the other sides as positive values in the decision matrix

  • Step 3: Compute the sum of each column of the decision matrix

  • Step 4: Divide each element of the decision matrix by the sum of its column

  • Step 5: Compute the sum of each row and after that divide each row of the decision matrix by the number of rows to compute the average.

Based on the ranking values of the groups, the ranking values of the SRs will be computed when incomplete LPRs are given. After evaluating the FRs based on NFRs by different decision makers (DMs), the incomplete LPRs are constructed.

Step 4: Construct Complete Linguistic Preference Relations

In this step, we first explain the meaning of complete LPR, consistent LPR, incomplete LPR, and acceptable LPR, then we discuss how to construct the consistent complete LPR.

  1. 1.

    Let \(PR = (pr_{ij} )_{n \times n}\) be a LPR, then \(PR\) is called a complete LPR,

    $$ if\;pr_{ij} { } \in { }LA,{ }pr_{ij} \oplus pr_{ji} = { }la_{0} { },pr_{ii} { } = { }la_{0} {\text{ for all}}\;i,j $$
    (3)
  2. 2.

    Let \(PR = (pr_{ij} )_{n \times n}\) be a linguistic preference relation, then \(PR\) is called a consistent complete LPR

    $$ if\;pr_{ij} = pr_{ik} \oplus pr_{kj} \;{\text{for all}}\;i, j, k $$
    (4)
  3. 3.

    Let \(PR = (pr_{ij} )_{n \times n}\) be a LPR; \(PR\) is called an incomplete LPR if some of the elements cannot be provided by the DMs. In an incomplete LPR, unknown element is represented by \(ue\). The elements provided by the DMs should satisfy the following condition (Xu 2006):

    $$ pr_{ij} { } \in {\text{ LA}},{ } pr_{ij} \oplus pr_{ji} = {\text{ la}}_{0} { };{ }pr_{ii} { } = { }la_{0} $$
    (5)
  4. 4.

    Let \(PR = (pr_{ij} )_{n \times n}\) be an incomplete LPR, then \(PR\) is called acceptable if each unknown element can be computed by its adjoining known elements otherwise \(PR\) is called unacceptable (Xu 2006):

The meaning of the oplus operator used in Eqs. (3) to (5) is defined as below:

Let \( la_{\alpha } \) and \( la_{\beta } \in LA\), then.

\( la_{\alpha } \oplus la_{\beta } = \max (la_{ - t} ,\min \{ la_{\alpha + \beta } , la_{t} \} )\), where \(\alpha\) and \( \beta \in \left[ { - t,t} \right]\).

The known elements in \( PR_{k} \left( {k = 1,2, \ldots , q} \right)\) are used to compute all the unknown elements, and thus obtain the consistent complete LPR \(\overline{PR}_{k} = (\overline{pr}_{ij}^{k} )_{n \times n}\),\(k = 1, 2, \ldots ,q.\)

Step 5: Elicit Weight Vectors of Decision Makers

The objective of this step is to identify the relevant NFRs from the list of the NFRs. For the identification of the relevant NFRs, different decision makers participate during the decision-making process; and they specify their preferences on NFRs by using the linguistic variables. To deal with these linguistic variables the weight vectors of the decision makers are elicited by using the L−1 – R−1 inverse function arithmetic principle and “graded mean integration representation” (GMIR) (Chou 2003, 2006). The explanation of “L−1 – R−1 inverse function arithmetic principle of the addition” is given as below:

Let \(T_{1} = \left( {j_{1} , k_{1} , m_{1} } \right)\) and \(T_{2} = \left( {j_{2} , k_{2} , m_{2} } \right)\) be two TFNs. Then according to the “L−1 – R−1 inverse function arithmetic principle the addition” of \(T_{1}\) and \(T_{2}\) at \(h\)-level is given below (Chou 2006):

$$ T_{1\left( h \right) } \oplus T_{2\left( h \right)} = \left( {L_{{T_{1\left( h \right)} }}^{ - 1} + L_{{T_{2\left( h \right)} }}^{ - 1} , L_{{T_{1\left( h \right)} }}^{ - 1} + R_{{T_{2\left( h \right)} }}^{ - 1} , R_{{T_{1\left( h \right)} }}^{ - 1} + L_{{T_{2\left( h \right)} }}^{ - 1} , R_{{T_{1\left( h \right)} }}^{ - 1} + R_{{T_{2\left( h \right)} }}^{ - 1} } \right) $$
(6)

where \(L_{{T_{1} }}\), \(L_{{T_{2} }}\) and \(R_{{T_{1} }} ,\) \(R_{{T_{2} }}\) are the functions L and R of the fuzzy numbers \(T_{1}\) and \(T_{2} ,\) respectively. \(L_{{T_{1\left( h \right)} }}^{ - 1} , L_{{T_{2\left( h \right)} }}^{ - 1}\) and \(R_{{T_{1\left( h \right)} }}^{ - 1}\), \(R_{{T_{2\left( h \right)} }}^{ - 1}\) are the inverse functions of functions \(L_{{T_{1} }}\), \(L_{{T_{2} }}\) and \(R_{{T_{1} }} , R_{{T_{2} }}\) at \(h\)-level, respectively.

Suppose the membership functions of \(T_{1} = \left( {j_{1} , k_{1} , m_{1} } \right)\) is

$$ f_{{T_{1} }} \left( x \right) = \left\{ {\begin{array}{*{20}c} {\frac{{\left( {x - j_{1} } \right)}}{{\left( {k_{1} - j_{1} } \right)}}, j_{1} \le x \le k_{1} ,} \\ {\frac{{\left( {x - m_{1} } \right)}}{{\left( {k_{1} - m_{1} } \right)}}, k_{1} \le x \le m_{1} ,} \\ {0 , {\text{otherwise}}.} \\ \end{array} } \right\} $$
(7)

Since

$$ \begin{gathered} L_{{T_{1} }} \left( x \right) = \frac{{\left( {x - j_{1} } \right)}}{{\left( {k_{1} - j_{1} } \right)}}, j_{1} \le x \le k_{1} \hfill \\ R_{{T_{1} }} \left( x \right) = \frac{{\left( {x - m_{1} } \right)}}{{\left( {k_{1} - m_{1} } \right)}}, k_{1} \le x \le m_{1} \hfill \\ \end{gathered} $$
$$ L_{{T_{1\left( h \right)} }}^{ - 1} = j_{1} + \left( {k_{1} - j_{1} } \right)h, 0 \le h \le 1, $$
(8)
$$ R_{{T_{1\left( h \right)} }}^{ - 1} = m_{1} + \left( {k_{1} - m_{1} } \right)h, 0 \le h \le 1, $$
(9)

Similarly, the membership function of \(T_{2} = \left( {j_{2} , k_{2} , m_{2} } \right)\) is

$$ f_{{T_{2} }} \left( x \right) = \left\{ {\begin{array}{*{20}c} {\frac{{\left( {x - j_{2} } \right)}}{{\left( {k_{2} - j_{2} } \right)}}, j_{2} \le x \le k_{2} ,} \\ {\frac{{\left( {x - m_{2} } \right)}}{{\left( {k_{2} - m_{2} } \right)}}, k_{2} \le x \le m_{2} ,} \\ {0 , otherwise.} \\ \end{array} } \right\} $$
(10)

Since

$$ \begin{gathered} L_{{T_{2} }} \left( x \right) = \frac{{\left( {x - j_{2} } \right)}}{{\left( {k_{2} - j_{2} } \right)}}, j_{2} \le x \le k_{2} , \hfill \\ R_{{T_{2} }} \left( x \right) = \frac{{\left( {x - m_{2} } \right)}}{{\left( {k_{2} - m_{2} } \right)}}, k_{2} \le x \le m_{2} \hfill \\ \end{gathered} $$
$$ L_{{T_{2\left( h \right)} }}^{ - 1} = j_{2} + \left( {k_{2} - j_{2} } \right)h, 0 \le h \le 1, $$
(11)
$$ R_{{T_{2\left( h \right)} }}^{ - 1} = m_{2} + \left( {k_{2} - m_{2} } \right)h, 0 \le h \le 1, $$
(12)

According to Eq. (6)

$$ \begin{aligned} & T_{1\left( h \right) } \oplus T_{2\left( h \right)} = \left( {L_{{T_{1\left( h \right)} }}^{ - 1} + L_{{T_{2\left( h \right)} }}^{ - 1} , L_{{T_{1\left( h \right)} }}^{ - 1} + R_{{T_{2\left( h \right)} }}^{ - 1} , R_{{T_{1\left( h \right)} }}^{ - 1} + L_{{T_{2\left( h \right)} }}^{ - 1} , R_{{T_{1\left( h \right)} }}^{ - 1} + R_{{T_{2\left( h \right)} }}^{ - 1} } \right) \\ & = \left[ {\left( {j_{1} + \left( {k_{1} - j_{1} } \right)h} \right) + \left( {j_{2} + \left( {k_{2} - j_{2} } \right)h} \right),} \right. \\ & \left( {j_{1} + \left( {k_{1} - j_{1} } \right)h} \right) + \left( {m_{2} + \left( {k_{2} - m_{2} } \right)h} \right), \left( {m_{1} + \left( {k_{1} - m_{1} } \right)h} \right) \\ & \left. { + \left( {j_{2} + \left( {k_{2} - j_{2} } \right)h} \right), \left( {m_{1} + \left( {k_{1} - m_{1} } \right)h} \right) + \left( {m_{2} + \left( {k_{2} - m_{2} } \right)h} \right)} \right] \\ \end{aligned} $$

The “graded mean integration representation” (GMIR) of \(T\) is (Chou 2006):

$$ GMIR \left( T \right) = \frac{{\mathop \smallint \nolimits_{0}^{wT} \left( {h\left( {L_{\left( h \right)}^{ - 1} + L_{\left( h \right)}^{ - 1} } \right)/2} \right) {\text{d}}h}}{{\mathop \smallint \nolimits_{0}^{wT} h{\text{d}}h}} $$
(13)
$$ GMIR \left( T \right) = \frac{1}{6}\left( {j + 4k + m} \right) $$
(14)

where \(0 < h \le w_{T }\, and\, 0 < w_{T } \le 1\).

The Eq. (14) is used to deal with the linguistic variables applied by the decision makers (DM), i.e., \(DM_{1} , DM_{2} , \ldots ,DM_{q}\), so that their weight vectors (W), i.e., \(W_{1} , W_{2} , \ldots , W_{q} )\), can be identified.

Step 6: Use Linguistic Averaging Operator to Select the Optimal Functional Requirements

In this step, the linguistic weighted operator is used to fuse all the elements of the consistent complete LPR \(\overline{PR}_{k} = (\overline{pr}_{ij}^{k} )_{n \times n}\), \(k = 1, 2,...,r\), into a collective complete LPR \(\overline{PR} = \left( {\overline{pr}_{ij} } \right)_{n \times n}\). Now the linguistic averaging operator is used to fuse all the preference degrees \(\overline{ pr}_{ij}\),\( j = 1, 2,..,n\) in the \(i^{th}\) line of \(\overline{PR}\) and then obtain the averaged one \(\overline{pr}_{i}\) of the \(i^{th}\) FRs over all other FRs. Select the optimal set of FRs according to the values of \(\overline{pr}_{i}\), \(i = 1, 2, \ldots , n\).

$$ \overline{pr}_{ij} = W_{DM1 } p_{ij}^{\left( 1 \right)} \oplus W_{DM2 } p_{ij}^{\left( 2 \right)} \oplus , \ldots , \oplus W_{DMq } pr_{ij}^{\left( q \right)} {\text{for all}}\; i,j $$
(15)
$$ \overline{pr}_{i} = \frac{1}{n} pr_{i1} \oplus \frac{1}{n} pr_{i2} \oplus , \ldots , \oplus \frac{1}{n} pr_{in} {\text{ for all }}i $$
(16)

The FRs which have the highest-ranking values will be selected for the implementation during the software development process. The selected FRs or top \(n\) FRs on the basis of the ranking values will be implemented during the first release of the software and the remaining FRs will be implemented during the next release of the software.

4 Case Study

In the literature of information systems and software engineering, following real life systems have been used as a part of case studies: (a) Ambulance Dispatching System (Lamsweerde and Letier 2000), (b) Online National Election Voting System (Alshazly et al. 2014), (c) Mobee: A System for Public Transport (Mendonca et al. 2016), (d) Institute Examination System (IES) (Sadiq and Nazneen 2019; Sadiq 2017; Naaz and Mariyam 2016), etc. In our work, the steps of the proposed method are explained with the help of the IES, which is a type of information system, dedicated to the examination related activities. SRs selection plays a key role in deciding which requirements to implement during different releases of the software according to the budget, time, and customer’s expectations, etc. (Sadiq and Jain 2014). In this section, following steps have been used for conducting the case studies research process in information systems and software engineering: (a) case study design and planning, (b) preparation and collection of data, (c) data analysis (Runeson et al. 2012; Sadiq 2017).

4.1 Case Study Design and Planning

The case study design and planning consists of three elements, i.e., “objective”, “the case”, and “research questions”. The explanation of these elements is given below:

4.1.1 Objective

The objective of this case study is to measure the ease of use and accuracy of the proposed method by considering the requirements of IES.

4.1.2 The Case

The intent of this element is to explain, what is studied. The objective of IES is to deal with the examination related activities, for example, to submit of the examination form, to download the hall ticket of the end semester examinations, to enter the internal and external marks of the semester, to download the mark-sheet of the end semester examinations, etc. (Sadiq and Jain 2015).

4.1.3 Research Questions.

Following research questions (RQs) have been formulated to analyze the differences in ease of use and accuracy between the proposed method, which is based on incomplete LPRs, and the “prioritization of requirements using fuzzy based approach in goal-oriented requirements elicitation” (PRFGORE) method. The PRFGORE method was proposed by Sadiq and Jain (2014) for the selection and prioritization of the SRs when complete LPRs are used during the decision-making process.

  • RQ-1: Which approach, of the proposed method and the PRFGORE method, is easier to use?

  • RQ-2: Does using other formats and combinations of different formats of incomplete LPRs improve the accuracy in the ranking order of the SRs?

4.2 Preparation and Collection of Data

In this case study, the data is collected by evaluating the ten FRs based on three NFRs by three decision makers (DMs) (see Tables 3, 4, and 5). Detailed descriptions concerning preparation and collection of data are given in step 1 to step 4 of the proposed method.

4.3 Data Analysis

In Sect. 4.3.1, data is analyzed by explaining the steps of the proposed method. After that the RQs are analyzed and the method is discussed in Sect. 4.3.2.

4.3.1 Explanation of the Proposed Method

The objective of this section is to explain the steps of the proposed method.

Step 1 Stakeholders Identification and Their Requirements

Based on the type of stakeholders and their roles, ten stakeholders have been identified for the development of IES. These stakeholders are divided into five groups, i.e., (i) administrators, (ii) requirements analysts responsible for the elicitation of FRs and NFRs, (iii) developers, (iv) consultants, and (v) students and users. In the proposed method, stakeholders have been identified according to their types and roles, as shown in Table 2. In addition to these stakeholders, three decision makers were also invited from the software industries for the evaluation of the FRs and NFRs. The evaluation was performed by the decision makers in consultation with the stakeholders so that their views could be recorded in LPRs.

Table 2 Types and roles of stakeholders for IES

After applying the traditional and goal-oriented techniques, following FRs and NFRs of an IES were elicited (Sadiq and Jain 2014, 2015):

  • FR1: To generate the bank receipt of student’s fee

  • FR2: To enter the internal and external marks of the theory and practical courses

  • FR3: To view the semester results of different courses

  • FR4: To generate the seating plan

  • FR5: To conduct the online examination

  • FR6: To fill in the examination form

  • FR7: To upload examination related activities

  • FR8: To generate examination hall tickets by giving the following information: (i) Name of the students, (ii) Father’s Name (iii) Roll number of the candidate, (iv) Name of the examination, (v) Subject code, (vi) Subject name(s), (vii) Number of backlogs, if any, (viii) Examination fee(s)”

  • FR9: To approve the examination form by administrative office

  • FR10: To pay examination fees

  • NFR1: Cost

  • NFR2: Security

  • NFR3: Usability

Step 2 Specify Decision Maker’s Linguistic Assessment

Three decision makers (DMs) are invited for the evaluation of the FRs on the basis of NFRs from the following software industries so that their feedback can be incorporated into the preference relations: (a) DM1 is from the Infosys, Jaipur, India, (b) DM2 is from HCL Technologies, Noida, India, and (c) DM3 is from Bakewarr Software Solutions (BSS), New Delhi, India. BSS is a new start-up in the field of the Information Technology; and it deals with the SRs engineering and software development. The detailed information about the DMs is not given due to the privacy regulation. Following linguistic assessments \((LAs)\) are used by the DMs for the evaluation of FR on the basis of NFRs:

Very Low = \(la_{ - 2}\), Low = \(la_{ - 1}\) , Medium = \(la_{0}\), High = \(la_{1}\) and Very High = \(la_{2}\).

Step 3 Evaluation of the Functional Requirements on the Basis of the Non-Functional Requirements

The objective of this step is to evaluate the FRs on the basis of the NFRs, the evaluation being conducted by three DMs, i.e., DM1, DM2, and DM3. In step 1, ten FRs and three NFRs of IES have been identified. Therefore, the evaluation of the ten FRs on the basis of three NFRs, i.e., cost (NFR1), security (NFR2), and usability (NFR3) by the three decision makers are given below:

(A)Evaluation of the FRs based on NFR 1 by DM 1

During the decision making process, each decision maker has a different opinion for the same requirement. Therefore, it is important to capture their preferences on different requirements in some preference matrix or relation so that their preferences can be used to select the SRs (Xu 2011). Here, preference (\(pr)\) is used to show the preference of one requirement over another. The NFRs are vital for the successful development of an information system (Ameller et al. 2010). During SRs and prioritization process, NFRs serve as criteria for the evaluation of FRs (Chung and Nixon 1995). Here, the FRs are evaluated based on NFR1, i.e., cost. In our study, the cost of each FR is determined by the function point approach (Herrmann and Daneva 2008). To compute the expected cost of each FR using the function point, the following parameters have been extracted from the FRs: (a) number of inputs, (b) number of outputs, (c) number of enquiries (d) internal logical files, and (f) external interface files. Based on these parameters, the three DMs predicted the cost of each FRs. After that each FR is evaluated based on the cost. For example, FR1 and FR2 are compared by DM1 regarding cost. During the analysis, DM1 decides that FR1 is more cost effective than FR2. As a result, the value of \({pr}_{1-2}\) is filled by \({la}_{1}\) in Table 3. Similarly, the remaining FRs were evaluated on the basis of the cost by DM1; and the results are given below:

$$ \begin{aligned} & pr_{1 - 2}^{\left( 1 \right)} = la_{1} ; pr_{1 - 3}^{\left( 1 \right)} = la_{2} ; pr_{1 - 4}^{\left( 1 \right)} = la_{1} ; pr_{1 - 5}^{\left( 1 \right)} = la_{2} ; pr_{1 - 6}^{\left( 1 \right)} = la_{1} ; \\ & pr_{1 - 7}^{\left( 1 \right)} = la_{2} ; pr_{1 - 8}^{\left( 1 \right)} = la_{1} ; pr_{1 - 9}^{\left( 1 \right)} = la_{2} ; pr_{1 - 10}^{\left( 1 \right)} = la_{1} \\ \end{aligned} $$
Table 3 Incomplete LPR of DM1 in

On the basis of the judgements of the DMs, incomplete preference relations are constructed. The results of the judgement of DM1 after evaluating the FRs on the basis of NFR1 are exhibited in Table 3. In Table 3, missing values or unknown element are represented by \(ue\).

(B)Evaluation of the FRs based on NFR 1 by DM 2

Here, DM2 evaluates the FR1 and FR2; and as result DM2 decides that FR1 is more important than FR2, therefore, the corresponding linguistic assessment for very important is used in the preference relation, i.e., \({pr}_{1-2}^{(2)} = {la}_{2}\). Similarly, the remaining FRs are evaluated; and the results after evaluation by DM2 are given below:

\(pr_{1 - 2}^{\left( 2 \right)} = la_{2} ; \) \(pr_{1 - 3}^{\left( 2 \right)} = la_{ - 1} ; \) \(pr_{1 - 4}^{\left( 2 \right)} = la_{2} ; \) \(pr_{1 - 5}^{\left( 2 \right)} = la_{ - 1} ; \) \(pr_{1 - 6}^{\left( 2 \right)} = la_{2} ; \) \(pr_{1 - 7}^{\left( 2 \right)} = la_{1} ; \) \(pr_{1 - 8}^{\left( 2 \right)} = la_{1} ; \) \(pr_{1 - 9}^{\left( 2 \right)} = la_{0} ; \) \(pr_{1 - 10}^{\left( 2 \right)} = la_{1}\).

The results of the judgement of DM2 after evaluating the FRs on the basis of NFR1 are summarized in Table 4. In Table 4, missing values or unknown element are represented by \(ue\).

Table 4 Incomplete LPR of DM2

(C)Evaluation of the FRs based on NFR 1 by DM 3

Here, DM3 evaluates the FR1 and FR2; and as a result, DM3 decides that FR1 is not as important as FR2, therefore, the corresponding linguistic assessment for low is used in the preference relation, i.e., \({pr}_{1-2}^{(3)} = {la}_{-1}\). Similarly, the remaining FRs are evaluated; and the results after evaluation by DM3 are given below:

DM3: \(pr_{1 - 2}^{\left( 3 \right)} = la_{ - 1} ; \) \(pr_{1 - 3}^{\left( 3 \right)} = la_{0} ; \) \(pr_{1 - 4}^{\left( 3 \right)} = la_{ - 1} ; \) \(pr_{1 - 5}^{\left( 3 \right)} = la_{0} ; \) \(pr_{1 - 6}^{\left( 3 \right)} = la_{1} ; \) \(pr_{1 - 7}^{\left( 3 \right)} = la_{0} ; \) \(pr_{1 - 8}^{\left( 3 \right)} = la_{ - 1} ; \) \(pr_{1 - 9}^{\left( 3 \right)} = la_{ - 1} ; \) \(pr_{1 - 10}^{\left( 3 \right)} = la_{2}\).

The results of the judgement of DM3 after evaluating the FRs on the basis of NFR1 are summarized in Table 5. In Table 5, missing values or unknown element are represented by \(ue\). The same process was adopted to evaluate the FRs by three DMs based on the NFR2 and NFR3.

Table 5 Incomplete LPR of DM3

Step 4 Construct Complete Linguistic Preference Relations

Now the unknown elements from Table 3 are computed to construct the complete LPR; and the results are summarized in Table 6.

$$ pr_{2 - 3}^{\left( 1 \right)} = pr_{2 - 1}^{\left( 1 \right)} \oplus pr_{1 - 3}^{\left( 1 \right)} = la_{ - 1} \oplus la_{2} = la_{1} $$
$$ pr_{2 - 4}^{\left( 1 \right)} = pr_{2 - 1}^{\left( 1 \right)} \oplus pr_{1 - 4}^{\left( 1 \right)} = la_{ - 1} \oplus la_{1} = la_{0} $$
$$ pr_{2 - 5}^{\left( 1 \right)} = pr_{2 - 1}^{\left( 1 \right)} \oplus pr_{1 - 5}^{\left( 1 \right)} = la_{ - 1} \oplus la_{2} = la_{1} $$
$$ pr_{2 - 6}^{\left( 1 \right)} = pr_{2 - 1}^{\left( 1 \right)} \oplus pr_{1 - 6}^{\left( 1 \right)} = la_{ - 1} \oplus la_{1} = la_{0} $$
$$ pr_{2 - 7}^{\left( 1 \right)} = pr_{2 - 1}^{\left( 1 \right)} \oplus pr_{1 - 7}^{\left( 1 \right)} = la_{ - 1} \oplus la_{2} = la_{1} $$
$$ pr_{2 - 8}^{\left( 1 \right)} = pr_{2 - 1}^{\left( 1 \right)} \oplus pr_{1 - 8}^{\left( 1 \right)} = la_{ - 1} \oplus la_{1} = la_{0} $$
$$ pr_{2 - 9}^{\left( 1 \right)} = pr_{2 - 1}^{\left( 1 \right)} \oplus pr_{1 - 9}^{\left( 1 \right)} = la_{ - 1} \oplus la_{2} = la_{1} $$
$$ pr_{2 - 10}^{\left( 1 \right)} = pr_{2 - 1}^{\left( 1 \right)} \oplus pr_{1 - 10}^{\left( 1 \right)} = la_{ - 1} \oplus la_{1} = la_{0} $$
$$ pr_{3 - 4}^{\left( 1 \right)} = pr_{3 - 1}^{\left( 1 \right)} \oplus pr_{1 - 4}^{\left( 1 \right)} = la_{ - 2} \oplus la_{1} = la_{ - 1} $$
$$ pr_{3 - 5}^{\left( 1 \right)} = pr_{3 - 1}^{\left( 1 \right)} \oplus pr_{1 - 5}^{\left( 1 \right)} = la_{ - 2} \oplus la_{2} = la_{0} $$
$$ pr_{3 - 6}^{\left( 1 \right)} = pr_{3 - 1}^{\left( 1 \right)} \oplus pr_{1 - 6}^{\left( 1 \right)} = la_{ - 2} \oplus la_{1} = la_{ - 1} $$
$$ pr_{3 - 7}^{\left( 1 \right)} = pr_{3 - 1}^{\left( 1 \right)} \oplus pr_{1 - 7}^{\left( 1 \right)} = la_{ - 2} \oplus la_{2} = la_{0} $$
$$ pr_{3 - 8}^{\left( 1 \right)} = pr_{3 - 1}^{\left( 1 \right)} \oplus pr_{1 - 8}^{\left( 1 \right)} = la_{ - 2} \oplus la_{1} = la_{ - 1} $$
$$ pr_{3 - 9}^{\left( 1 \right)} = pr_{3 - 1}^{\left( 1 \right)} \oplus pr_{1 - 9}^{\left( 1 \right)} = la_{ - 2} \oplus la_{2} = la_{0} $$
$$ pr_{3 - 10}^{\left( 1 \right)} = pr_{3 - 1}^{\left( 1 \right)} \oplus pr_{1 - 10}^{\left( 1 \right)} = la_{ - 2} \oplus la_{1} = la_{ - 1} $$
$$ pr_{4 - 5}^{\left( 1 \right)} = pr_{4 - 1}^{\left( 1 \right)} \oplus pr_{1 - 5}^{\left( 1 \right)} = la_{ - 1} \oplus la_{2} = la_{1} $$
$$ pr_{4 - 6}^{\left( 1 \right)} = pr_{4 - 1}^{\left( 1 \right)} \oplus pr_{1 - 6}^{\left( 1 \right)} = la_{ - 1} \oplus la_{1} = la_{0} $$
$$ pr_{4 - 7}^{\left( 1 \right)} = pr_{4 - 1}^{\left( 1 \right)} \oplus pr_{1 - 7}^{\left( 1 \right)} = la_{ - 1} \oplus la_{2} = la_{1} $$
$$ pr_{4 - 8}^{\left( 1 \right)} = pr_{4 - 1}^{\left( 1 \right)} \oplus pr_{1 - 8}^{\left( 1 \right)} = la_{ - 1} \oplus la_{1} = la_{0} $$
$$ pr_{4 - 9}^{\left( 1 \right)} = pr_{4 - 1}^{\left( 1 \right)} \oplus pr_{1 - 9}^{\left( 1 \right)} = la_{ - 1} \oplus la_{2} = la_{1} $$
$$ pr_{4 - 10}^{\left( 1 \right)} = pr_{4 - 1}^{\left( 1 \right)} \oplus pr_{1 - 10}^{\left( 1 \right)} = la_{ - 1} \oplus la_{1} = la_{0} $$
$$ pr_{5 - 6}^{\left( 1 \right)} = pr_{5 - 1}^{\left( 1 \right)} \oplus pr_{1 - 6}^{\left( 1 \right)} = la_{ - 2} \oplus la_{1} = la_{ - 1} $$
$$ pr_{5 - 7}^{\left( 1 \right)} = pr_{5 - 1}^{\left( 1 \right)} \oplus pr_{1 - 7}^{\left( 1 \right)} = la_{ - 2} \oplus la_{2} = la_{0} $$
$$ pr_{5 - 8}^{\left( 1 \right)} = pr_{5 - 1}^{\left( 1 \right)} \oplus pr_{1 - 8}^{\left( 1 \right)} = la_{ - 2} \oplus la_{1} = la_{ - 1} $$
$$ pr_{5 - 9}^{\left( 1 \right)} = pr_{5 - 1}^{\left( 1 \right)} \oplus pr_{1 - 9}^{\left( 1 \right)} = la_{ - 2} \oplus la_{2} = la_{0} $$
$$ pr_{5 - 10}^{\left( 1 \right)} = pr_{5 - 1}^{\left( 1 \right)} \oplus pr_{1 - 10}^{\left( 1 \right)} = la_{ - 2} \oplus la_{1} = la_{ - 1} $$
$$ pr_{6 - 7}^{\left( 1 \right)} = pr_{6 - 1}^{\left( 1 \right)} \oplus pr_{1 - 7}^{\left( 1 \right)} = la_{ - 1} \oplus la_{2} = la_{1} $$
$$ pr_{6 - 8}^{\left( 1 \right)} = pr_{6 - 1}^{\left( 1 \right)} \oplus pr_{1 - 8}^{\left( 1 \right)} = la_{ - 1} \oplus la_{1} = la_{0} $$
$$ pr_{6 - 9}^{\left( 1 \right)} = pr_{6 - 1}^{\left( 1 \right)} \oplus pr_{1 - 9}^{\left( 1 \right)} = la_{ - 1} \oplus la_{2} = la_{1} $$
$$ pr_{6 - 10}^{\left( 1 \right)} = pr_{6 - 1}^{\left( 1 \right)} \oplus pr_{1 - 10}^{\left( 1 \right)} = la_{ - 1} \oplus la_{1} = la_{0} $$
$$ pr_{7 - 8}^{\left( 1 \right)} = pr_{7 - 1}^{\left( 1 \right)} \oplus pr_{1 - 8}^{\left( 1 \right)} = la_{ - 2} \oplus la_{1} = la_{ - 1} $$
$$ pr_{7 - 9}^{\left( 1 \right)} = pr_{7 - 1}^{\left( 1 \right)} \oplus pr_{1 - 9}^{\left( 1 \right)} = la_{ - 2} \oplus la_{2} = la_{0} $$
$$ pr_{7 - 10}^{\left( 1 \right)} = pr_{7 - 1}^{\left( 1 \right)} \oplus pr_{1 - 10}^{\left( 1 \right)} = la_{ - 2} \oplus la_{1} = la_{ - 1} $$
$$ pr_{8 - 9}^{\left( 1 \right)} = pr_{8 - 1}^{\left( 1 \right)} \oplus pr_{1 - 9}^{\left( 1 \right)} = la_{ - 1} \oplus la_{2} = la_{1} $$
$$ pr_{8 - 10}^{\left( 1 \right)} = pr_{8 - 1}^{\left( 1 \right)} \oplus pr_{1 - 10}^{\left( 1 \right)} = la_{ - 1} \oplus la_{1} = la_{0} $$
$$ pr_{9 - 10}^{\left( 1 \right)} = pr_{9 - 1}^{\left( 1 \right)} \oplus pr_{1 - 10}^{\left( 1 \right)} = la_{ - 2} \oplus la_{1} = la_{ - 1} $$
Table 6 Complete LPR by DM1

Similarly, the values of the unknown elements from Tables 4 and 5 are computed to construct the complete LPR; and the results are summarized in Tables 7 and 8, respectively.

Table 7 Complete LPR by DM2
Table 8 Complete LPR by DM2

Step 5 Elicit Weight Vectors of Decision Makers

To identify the relevant NFRs, three decision makers (DMs), i.e., DM1, DM2, and DM3, evaluated the NFRs using the following linguistic terminologies: very weak (VW), weak (W), medium (M), strong (S), and very strong (VS). To model these linguistic terminologies, the triangular fuzzy numbers (TFNs) are used because of their simplicity in both concepts and computation. The TFNs for the linguistic terminologies are given below: VW = (0,0,0.25), W = (0,0.25,0.5), M = (0.25,0.5,0.75), S = (0.5,0.75,1), and VS = (0.75,1,1). According to DM1, the NFR1 should be VS, NFR2 should be S, and NFR3 should be M. DM2 specifies in his evaluation that NFR1 should be S, NFR2 should be W and NFR3 should be VS. Similarly, DM3 specifies in his preferences that NFR1 should be VS, NFR2 should be VS and NFR3 should be M. Based on these linguistic assessments, the values of the TFNs are identified. As a result, the TFNs for NFR1, NFR22, and NFR33 are (\(0.5, 0.75, 0.92\)), (\(0.42, 0.67, 0.83\)), and (\(0.58, 0.83, 0.92\)), respectively. After applying the Eq. (14) the weights of the NFRs are computed and the results are as follows: NFR1 = \(0.73\); NFR2 = \(0.66\), and NFR3 = \(0.80\). Now these weights would be normalized before computing the final ranking values of the FRs. In this example, we can see that according to DM2 the NFR2 is not relevant, so during the decision-making process NFR2 is represented by W, i.e., weak. At the same time, other decision makers have different opinions about NFR2. So, in the proposed method, the opinions of all the decision makers are captured to find out the importance of the NFRs. If all the decision makers evaluate that an NFR is not relevant for some particular FR, then that NFR will be represented by the VW, i.e., very weak; and the TFN for VW = (\(0,0,0.25\)). In this TFN, the most promising value is “zero”, i.e., the second element of a TFN. So, during the computation process, the non-relevant NFRs will not be considered because those NFRs will be represented by the “zero”. The final weights of the NFRs are normalized to compute the optimal FRs.

Step 6 Use Linguistic Averaging Operator to Select the Optimal Functional Requirements

The collective complete LPR (CCLPR) of DM1, DM2, and DM3 are given in Tables 9, 10, and 11, respectively. Now Eq. (15) is used to fuse all CCLPR and the results are summarized in Table 12.

Table 9 CCLPR of DM1
Table 10 CCLPR of DM2
Table 11 CCLPR of DM3
Table 12 CCLPR of all DMs

Then Eq. (16) is utilized to obtain the ranking values of the FRs. Finally, the ranking values of the FRs are given below:

“FR1 = 0.323, FR2 = − 0.834, FR3 = 0.454, FR4 = 0.821, FR5 = 0.506, FR6 = − 0.452, FR7 = 0.01, FR8 = − 0.082, FR9 = − 0.421, and FR10 = − 0.44”

After computing the ranking values \(\left( {rv} \right)\), the next step is to select the top \(n\) FR from the list of the above FRs on the basis of the \( rv\). Suppose stakeholders want to implement the top 5 FRs during the first releases of the software; in this case the following 5 requirements would be selected based on their ranking values, i.e., FR1, FR3, FR4, FR5, and FR7.

4.3.2 Analysis of the RQs

In this section, the RQs are analyzed to measure the two properties ease of use as well as accuracy of the proposed method and the PRFGORE method, i.e., Prioritization of Requirements using Fuzzy based approach in Goal Oriented Requirements Elicitation (PRFGORE). This method was developed by Sadiq and Jain (2014) by using the following: (i) an \(\alpha \)-level weighted F-preference relation, (ii) extent fuzzy AHP for pairwise comparisons of functional requirements (FR) and non-functional requirements (NFR), and (iii) the binary sort tree method to obtain the prioritized list of requirements. This method computes the ranking values of the SRs when complete linguistic preference relations are given during the decision-making process. The fifteen participants, who are Ph.D. scholars of Jamia Millia Islamia (A Central University), New Delhi-110025, India, were invited to carry out the experiment. These participants have the experience of working in industry and academics. They have a good knowledge about SRs selection and prioritization, fuzzy logic, and software engineering.

RQ-1: Which Approach, is Easier to Use, the Proposed Method or the PRFGORE Method?

For the analysis of the RQ-1, following null and alternative hypotheses have been formulated:

  1. i.

    Null hypothesis (\(H_{{{\text{easeofuse}}\_0}} )\): The ease of use is equal for the proposed method and the PRFGORE method

  2. ii.

    Alternative hypothesis (\(H_{{{\text{easeofuse}}\_1}} )\): The ease of use is not equal for the proposed method and PRFGORE method

The fifteen participants were asked to evaluate the proposed method and the PRFGORE method regarding the ease of use and choose an integer value ranging from one (very low) to five (very high) to answer the question to show which method better suited their needs. The responses of these participants were collected and summarized in Table 13. As shown there, the majority of the participants believed that the proposed method has a high degree of ease of use for the selection of the SRs as compared to the PRFGORE method.

Table 13 Responses of the participants

The Mann Whitney U test (Siegel 1956) was employed to test the null hypothesis of RQ-1. This test is appropriate when the outcomes of the two independent samples are not normally distributed and the samples are small. The Shapiro–Wilk test was conducted to check whether the data is normally distributed or not (Rahman and Govindarajulu 1997). It was found that the value of \(\rho\) is less than the significance level (\(\alpha )\) value, i.e., 0.05 for the proposed method and the PRFGORE method.

In Table 14, the value of \(W, i.e., 0.700458\) indicates that the proposed method is “best fit” based on the data given in Table 13. The “df” is the degree of freedom, which is equal to the size of the data. Here, the size of the data is 15, which is equal to the number of participants. The Sig. = \(0.000000\) indicates that the data is not normally distributed. After checking the normality test, the significance value (\(\rho\)) was calculated using the Mann Whitney U test. As a result, it was found that \(\rho = 0.000,\) which is less than \(0.05\) so the null hypothesis was rejected; and it was concluded that the proposed approach is easier to use as compared to the PRFGORE method.

Table 14 Normality test of data collected from participants

RQ-2: Does Using Other Formats and Combinations of Different Formats of Incomplete LPRs Improve the Accuracy in the Ranking Order of the SRs?

To answer this question, the different formats of the incomplete LPRs, i.e., incomplete multiplicative preference relation (MPR), incomplete fuzzy preference relation (FPR), incomplete LPRs/incomplete additive LPRs (ALPRs), and incomplete multiplicative LPRs (MLPRs), were discussed with all the participants. The participants were asked to apply any of the incomplete preference relations and compute the ranking order of the SRs. As a result, it was found that regarding all the formats the ranking order of the SRs was same and there was no improvement in the accuracy in ranking values of the SRs.

In Table 15, we have compared the proposed method and some selected SRs selection methods based on the type of data used during the SRs selection process, i.e., crisp and fuzzy, criteria for SRs selection, size of SRs used in the case studies, and type of the preference relations, i.e., CPRs and IPRs. For example, Sadiq et al. (2020) developed a method for the selection of SRs in which fuzzy TOPSIS was used to compute the ranking values of the SRs of an institute examination system using complete preference relations, and triangular fuzzy numbers were used to model the linguistic variables. In their method, following criteria were used for the selection of SRs: security, performance, usability. Sadiq and Nazneen (2019) applied a fuzzy based MCDM method for the selection of SRs so that from the selected set of requirements the testing requirements of an examination system can be identified. The objective of this method was to strengthen the goal-oriented requirements elicitation process in which a complete linguistic preference relation was used for the decision-making method. For the experimental work, the authors used ten requirements of IES and three criteria were used for the selection, i.e., security, cost, and usability.

Table 15 Comparative study between proposed method and selected SRs selection methods

In (Misaghian and Motameni 2018) crisp data was used during the SRs prioritization and selection process. In their work, the tensor decomposition method was used for the prioritization and selection of the six requirements of an automated teller machine based on the following criteria: availability, security, usability, performance, and reliability. According to the comparative study, we found that only a small set of SRs were used to show the steps of the SRs selection methods based on different criteria and most of the focus of these methods is on the CPRs under crisp and fuzzy environment. From the results of Table 15, it is clear that the proposed method supports the selection of SRs under IPRs. In this paper an attempt has been made to select the FRs under incomplete LPRs during the decision-making process.

5 Threats to Validity

The main threat to the validity of the evaluation is the analysis of only one system, i.e., IES. There are four types of validity threats, i.e., the threat to internal validity, to external validity, to construct validity and to conclusion validity (Wohlin et al. 2012). These validity threats are discussed in this section.

Internal validity is related to the trustworthy cause and effect relationship between a treatment and the outcome of the experiment. The weariness of participants, which is the internal validity threat, can affect the output of the experiment. Participants will get tired during the experimental work if the execution time is long. To reduce this factor, a small set of the SRs was considered during the experimental work.

External validity refers to how generalizable the findings are. There are different factors which can threaten the external validity, for example, researchers’ characteristics. The external validity can restrict the generalizability of the experiment. To minimize this threat, fifteen Ph.D. research scholars from Jamia Millia Islamia (A Central University), New Delhi, India, were selected, rather than class room students. The Ph.D. research scholars have a sufficient knowledge of software engineering, requirements engineering, and SRs selection and prioritization methods. Therefore, they may be considered close to professionals.

The construct validity threat is concerned with the relationship between theory and observation. The RQ-1 was analyzed regarding the ease of use. This ease of use relies on how the participants perceived it. The RQ-2 was analyzed as to the different formats of incomplete preference relations to check the accuracy in the ranking values of the SRs.

The conclusion validity threat is related to the statistical analysis as well as unexpected interruptions at the time of the execution. The Mann Whitney U test was conducted to reject the null hypothesis of RQ-1. One of the threats of this study is the limited number of the participants in the experiment (i.e., fifteen participants). Therefore, to perform a more statistical analysis, a large set of the participants as well as the large set of the SRs are required.

6 Conclusions and Future Work

In this paper, a method for the selection of SRs is presented where incomplete LPRs are used during the decision-making process. There are six steps in the proposed method, i.e., (i) stakeholders’ identification and their requirements, (ii) specification of the decision makers linguistic assessment, (iii) evaluation of the FRs on the basis of the NFRs, (iv) construction of complete LPRs, (v) elicitation of weight vectors of decision makers, and (vi) use of a linguistic averaging operator to select the optimal FRs. To elicit the weight vectors of the DMs, the “L−1 – R−1 inverse function arithmetic principle” and GMIR have been used. The proposed method has been applied to select the FRs of IES, as a part of real-life application. In this study, traditional and goal-oriented methods have been used to identify the ten FRs and three NFRs of IES. After applying the proposed methodology, the top five FRs were identified which would be implemented during the first release of the software.

The implementation of low priority requirements before the high priority ones may lead to a software failure. Therefore, it is necessary to compute the ranking values of all SRs so that only those requirements are implemented which have higher priorities. The proposed method can be applied for other real life case studies like an ambulance dispatching system, an online national election voting system, etc. In real life, decision makers use different format types of the incomplete preference relations, i.e., incomplete MPR, incomplete FPR, incomplete ALPRs, and incomplete MLPRs. Therefore, in future, our focus will be to develop a tool to rank the SRs under different formats of the incomplete preference relations and to apply the proposed method on a large set of requirements.