<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta>
      <journal-title-group>
        <journal-title>December</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>Methodology for Software Requirements Prioritization</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Vira Liubchenko</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Nataliia Komleva</string-name>
          <email>komleva@op.edu.ua</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Svitlana Zinovatna</string-name>
          <email>zinovatnaya.svetlana@op.edu.ua</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Odesa Polytechnic State University</institution>
          ,
          <addr-line>1 Shevchenko Ave., Odesa, 65044</addr-line>
          ,
          <country country="UA">Ukraine</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2021</year>
      </pub-date>
      <volume>0</volume>
      <fpage>1</fpage>
      <lpage>03</lpage>
      <abstract>
        <p>In software requirements engineering, it is often necessary to prioritize requirements. There are different criteria for evaluating requirements, reflecting the viewpoints of different stakeholders. Therefore, it is possible to apply the methods of multi-criteria decision-making, particularly the AHP method, to solve the problem of prioritization, taking into account several criteria. However, the known disadvantage of AHP is its high complexity. In this paper, we propose a methodology for reducing complexity by moving to hierarchical evaluation. We provide a case study and discuss the properties of the methodology. It is shown that the methodology can also be used for performing What-If analysis. Furthermore, the methodology is invariant to the type and form of requirements. hierarchy, pairwise comparison Software requirement engineering, requirement prioritization, Analytical Hierarchy Process,</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>
        The product of the software development project should meet the user’s expectations and end up
with high-quality software. Therefore, one of the project’s core phases is requirement engineering [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
      </p>
      <p>
        Requirement engineering is the first significant activity that involves understanding the problem
domain described in a needs statement. “Requirements selection is a decision-making process that
enables project managers to focus on the deliverables that add the most value to the project outcome.
This task is performed to define which features or requirements will be developed in the next release.
It is a complex multi-criteria decision process that has been focused on by many research works because
a balance between business profits and investment is needed” [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. Thus, one of the subprocesses in
requirement engineering is requirement prioritization.
      </p>
      <p>
        Software requirements prioritization as one of the most critical requirement engineering activities is
concerned with selecting the most significant requirements from a list of voluminous requirements
gathered from diverse stakeholders [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. This process is quite complex, and many studies aim to analyze
stakeholders’ influence on software system’s requirements engineering process [
        <xref ref-type="bibr" rid="ref4 ref5 ref6">4–6</xref>
        ]. At the same time,
prioritization of requirements is equally important both when developing a new project and modifying
an existing one [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. To prioritize requirements, various techniques are used, in particular, multi-criteria
decision-making techniques. One of the techniques in this group is the Analytical Hierarchy Process.
      </p>
      <p>
        Analytical Hierarchy Process (AHP) is a decision-making method that compares unique pairs of
requirements to determine which of the two compared is of higher priority [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ].
      </p>
      <p>In this paper, based on several publications, we identified the main issues of applying AHP to
requirement prioritization. A hierarchical methodology based on AHP was proposed to solve the issues,
and an information system that supports the implementation of the methodology was designed. An</p>
      <p>2022 Copyright for this paper by its authors.
example of methodology application the product backlog prioritization was considered, and the analysis
of the features of the described methodology was carried out.</p>
    </sec>
    <sec id="sec-2">
      <title>2. Ahp using in software requirement engineering</title>
      <p>
        Although the formulation of requirements is a mandatory phase in the software development
lifecycle, there is no single approach to formalizing requirements. Currently, software requirements
specification, use cases, and user stories are used the most often for this purpose. In addition to the
requirements specification, an estimation of their importance is usually carried out. These estimates
help solve the next release problem and find the most suitable requirements to include in the next
release. The core issue is to construct such estimation (or prioritization) that reflects the interests of
different stakeholders. In general, these interests may not correlate. In [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], it is indicated that the
“requirement prioritization process is challenging in a global software development context, where
communication and coordination are core bottlenecks.”
      </p>
      <p>
        Twenty-five years ago, Karlsson first proposed applying AHP to the software engineering field [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ].
Since then, many authors have published studies of the AHP implementation in the software
engineering field.
      </p>
      <p>
        The paper [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] presented the comparison of nine basic techniques for software requirements
prioritization. It classified the AHP as a ratio scale prioritization technique, which produces ranked lists
of requirements. In conclusion, the study author pointed out that AHP is a slow technique due to pair
comparisons, which is best suited for small (less than 20) numbers of requirements. The value of AHP
could be increased by combining it with other techniques or using hierarchy AHP modification.
      </p>
      <p>
        The paper [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] justified the use of AHP for prioritizing quality attributes in software development.
In particular, it said, “prioritization of quality requirements … is a useful guide for system architects”.
Paper, however, was limited to considering only the quality attributes without touching upon other types
of requirements.
      </p>
      <p>
        The paper [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] also pointed to the time consumption for large problems as the main disadvantage of
AHP. However, at the same time, it defined AHP as “the most promising approach because it is based
on a ratio scale, is fault-tolerant, and includes a consistency check.”
      </p>
      <p>
        The authors of [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ] defined the excessive number of comparisons that one needs to perform as an
evident limitation of AHP. As a result, they concluded, “due to its inherent complexity, AHP becomes
even impractical in software projects with a large number of requirements.”
      </p>
      <p>
        As a result of empirical studies, some authors even highlighted that “people are busy to evaluate
AHP on small projects and are busy in removing the limitations of AHP instead of proposing new
techniques that may prove more fruitful for projects with hundreds of requirements” [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ].
      </p>
      <p>
        However, we cannot ignore the strengths of AHP. For example, the authors of [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ] said, “while
doing requirement prioritization thorough AHP, the participants will clearly and completely understand
the requirements first, have to know the relationship amongst the requirements and criteria, under which
these requirements will be prioritized.” As well they noted reliable results and fault tolerance of AHP.
      </p>
      <p>
        There were developed different solutions that kept the strengths of AHP and reduced complexity.
For example, the paper [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] used the principle of pairwise comparisons of AHP to clearly present the
rationality of the decision made about the prioritization of functional and non-functional requirements.
The paper [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ] proposed a hybrid model for requirements prioritization, which involved AHP after
selecting and grouping requirements. The paper [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ] considered an approach using a combination of
AHP and spanning trees. However, the technology had been applied for requirements prioritization
based on a single criterion (reducing delay or waiting time). To simplify the development and ranking
of requirements by the authors [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ] developed a UML profile for AHP. Its use allows ranking the
software requirements in model-driven engineering and provides a way of ranking requirements in the
model-driven context.
      </p>
      <p>We concluded that AHP is appropriate for software requirement prioritization under the condition
of the number of comparisons. However, there is a need for methodology, which reduces the AHP
complexity when applied to medium or large projects.</p>
    </sec>
    <sec id="sec-3">
      <title>3. The methodology description</title>
      <p>
        The proposed methodology is based on assumptions about the form of requirements specification.
We suppose that stakeholders can estimate the priorities of requirements on different aspects (or
criteria), for example, importance, time, cost, value, penalty, risk, precedence [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ]. The orderings
according to different criteria can be different. Therefore, it is difficult for stakeholders to determine
“integral” priorities; pairwise comparisons in the AHP method should simplify the definition of such
“integral” orderings.
      </p>
      <p>Usually, while analyzing software requirements, business analytics or product owners define “local”
priorities in accordance with one particular criterion. For example, the fragment of the typical product
backlog is shown in Figure 1. Here, the product owner has defined the priorities of user stories in
accordance with their importance and risk. As well, dependencies between user stories could cause the
dimension for prioritization.</p>
      <p>In such a case, the prioritization problem could be decomposed into a hierarchy of subproblems:
prioritization of criteria and prioritizations of requirements in accordance with each criterion. Since
local requirements assessments are defined, the transformation to pairwise comparisons can be
automated. Additionally, it is necessary to carry out only paired comparisons of criteria. Therefore, low
complexity of the procedure can be expected.</p>
      <p>Steps involved in the prioritization procedure are:
1. Model the problem as a hierarchy containing the prioritization goal, the criteria for requirements
estimation, and the requirements.</p>
      <p>2. Establish priorities among the elements of the hierarchy first level by making a series of judgments
based on pairwise comparisons of the estimation criteria.</p>
      <p>2.a. Make n×n matrix (n represents the number of criteria).</p>
      <p>2.b. For each pair of criteria, insert their relative intensity of importance (where the row of Ai meets
the column Aj). At the same point, insert the reciprocal values to the transposed positions (e.g., cell
AiAj=3, then cell AjAi=1/3).</p>
      <p>2.c. Calculate the relative priority of each criterion.</p>
      <p>3. Establish priorities among the elements of the hierarchy second level by calculating pairwise
comparisons based on estimation under each criterion. For each criterion:
3.a. Make m×m matrix (m represents the number of requirements).
3.b. Determine the rules for converting the criterion scale into pairwise comparison estimates.
3.c. For each pair of requirements, calculate and insert their relative intensity of importance. As well,
insert the reciprocal values to the transposed positions.</p>
      <p>3.d. Calculate the relative priority of each requirement under a given criterion.
where wi is a relative priority of ith criterion, eij is a relative priority of jth requirement under ith
criterion.</p>
      <p>5. Check the consistency of the result prioritization.</p>
      <p>We have developed software for prioritizing requirements under a hierarchical methodology. Next,
we describe the design of the database structure.</p>
    </sec>
    <sec id="sec-4">
      <title>4. Data structure</title>
      <p>The database is used to store both the initial data and the results of calculations.</p>
      <p>A feature of the domain is column-oriented data, while a relational database assumes row-oriented
data. Therefore, the structure of the table in Figure 1 is denormalized by the repeating group method.
In addition, the number of criteria may differ for different projects, and therefore the structure of the</p>
      <p>Thus, a table for entering the initial data about the project is created separately for each project. To
create it, the user must specify the number of criteria. In data processing, there are several
transformations of the data presentation form (Figure 2).</p>
      <p>4. Synthesize these judgments to yield a set of overall priorities for the hierarchy. Estimation for
each requirement is calculated as</p>
      <p>The criterion can have values of various types: categorical, numeric, multi-record. A categorical
criterion involves defining a set of possible values. A numeric criterion may involve specifying the
minimum and
maximum values. Finally, a criterion with
multiple values (dependence) involves
specifying a specific subset of values from a set of possible values.</p>
      <p>Two options are possible to obtain possible values.</p>
      <p>Possible values are pre-defined by the user and then are used to fill the table of initial data.</p>
      <p>The user fills in the initial data table, and the program itself forms possible values based on the
entered data.</p>
      <p>The database structure and its filling scheme are shown in Figure 3. Now we describe the general
scenario of the software system actions as a sequence of steps.</p>
      <p>A user creates a project and a list of criteria.</p>
      <p>The system determines the number of criteria n.</p>
      <p>The system forms a table for entering the initial data T0.</p>
      <p>A user and the system in interactions form a list of possible values for the criteria.</p>
      <p>A user fills in the table T0.</p>
      <p>The system determines the number of requirements m.</p>
      <p>The system generates a table for entering the relative priorities of the criterion T1; the table size
is n×n.
8. A user fills in the table T1.
9. The system generates tables for entering the relative priorities of categorical values T2i,
i{1,2,...,n}.
10. A user fills in the tables T2i.
11. The system generates tables to determine the relative priorities of requirements for each
criterion T3i; tables size are m×m,  = ̅1̅̅,̅̅.
12. The system calculates data for tables T3.
13. The system populates database tables based on content T0, T1, T2, T3.
14. The system performs calculations and enters the results into the table Requirement.
T0</p>
      <p>zx</p>
      <p>Requirement
PK RequirementId</p>
      <p>RequirementDescription
ProjectId
Priority</p>
      <p>Second variant of forming possible values</p>
      <p>RequirementCriterion
PK RequirementCriterionId</p>
      <p>RequirementId
CriterionId</p>
      <p>FactValue</p>
      <p>MultipleRequirementCriterion
PK MultipleRequirementCriterionId</p>
      <p>RequirementCriterionId
FactValue</p>
      <p>First variant of forming possible values</p>
      <p>Project
PK ProjectId</p>
      <p>ProjectName
StartDate
FinishDate
...</p>
      <p>Criterion
PK CriterionId</p>
      <p>CriterionDescription
IsDependence
IsMultiple
IsText
ColumnNumberInInputTable
ProjectId
T1</p>
      <p>T3i ...</p>
      <p>Thus, using a flexible data structure makes it possible to unify the methodology applied for projects
with a different number or different types of criteria.</p>
      <p>Now let us examine this methodology application by the example.</p>
    </sec>
    <sec id="sec-5">
      <title>5. Case study</title>
      <p>As an example in the paper, we have taken the product backlog presented in Figure 1. The backlog
consists of 38 requirements. The hierarchical model of the problem is shown in Figure 4.</p>
      <p>Now we should prepare the matrix of pairwise comparisons for elements of hierarchy first level.
There are only three elements, and we should evaluate the relative intensity of importance in pairs
“Importance – Risk,” “Risk – Dependencies,” and “Importance – Dependencies.” The matrix definition
for our example is shown in Table 1.</p>
      <p>Dependencies 0, 258</p>
      <p>Next, we mode to the hierarchy second level. As we see in Figure 1, the scale for criteria Importance
and Risk is the same: High – Moderate – Low. Therefore, it is sufficient to determine the estimates of
pairwise comparisons for different combinations of scale values (Table 2).</p>
      <p>This transition matrix defines the transformation of requirement scores to estimations of pairwise
comparison. For example, we see that the importance of ID04 is Moderated, and the importance of ID08
is High. Therefore, in the matrix of paired comparisons by the importance, we write 1/3 to the position
where the row of ID04 meets the column ID08 and write 3 to the transposed position.</p>
      <p>The criterion Dependencies needs to count in advance for each requirement the number of
requirements that depend on given. These numbers become the basis for the scaling to estimations of
paired comparisons.</p>
      <p>For example, in our case, the minimum number of dependencies was 0, and the maximum number
was 8. So we defined the estimation of paired comparison as e(IDi,IDj)=(Di+1)/(Dj+1), Di represents
the number of requirements that depend on requirement IDi.</p>
      <p>We do not present the results of calculating the relative priorities for each criterion that are vectors
with 38 real numbers each. This is because, for the case study, these vectors do not provide additional
information. Finally, we synthesized the set of overall priorities for the hierarchy in accordance with
(1). We show the modified product backlog, which includes an additional column with “integral”
priority for each requirement, in Figure 5.</p>
      <p>The use of overall priorities simplifies the selection of requirements for implementation in the next
iteration. For example, the team would have had to look for a trade-off between three criteria when
working with the initial product backlog. Now the team needs to order the requirements in descending
priority and get the requirement from the top of the list.</p>
    </sec>
    <sec id="sec-6">
      <title>6. Discussion</title>
      <p>Now we are going to analyze the properties of the proposed methodology.</p>
      <p>As noted above, the main limitation of AHP use is its complexity. Building a matrix of pairwise
comparisons requires performing m×(m-1)/2 comparisons. This procedure should be performed by an
expert and cannot be automated.</p>
      <p>
        At first glance, the moving to hierarchy complicates the procedure even more. However, it is not so.
At the first level of the hierarchy, one should compare only n criteria. At the second level, measurements
for each criterion for assessing requirements can be performed on a categorical (nominal or ordinal) or
quantitative scale. In the case of a categorical scale, it is necessary to determine pairwise comparisons
for the acceptable values of the measurement scale. For quantitative scales, one should set a scaling
rule. We can assume that the upper bound for the number of criteria and the number of categorical scale
values is seven plus or minus two [
        <xref ref-type="bibr" rid="ref22">22</xref>
        ]. Note that the authors have not met a case in which the number
of criteria exceeded three, and the number of values exceeded five. In addition, for categorical scales
within the same project, the value gradations are usually the same, making it possible to use one set of
comparisons for several criteria. All these features support reducing complexity. For example, we
performed 3 comparisons for the criteria and 3 comparisons for the scale values in our case. Thus, in
pairwise comparisons of requirements, the number of mandatory comparisons would be larger already
for m&gt;4.
      </p>
      <p>The next point we want to describe is the ability to perform what-if analysis. In a situation of
multicriteria decision-making, the importance of the criteria affects the final result. For example, in the
requirements engineering case, criteria importance scores reflect the viewpoint of a particular
stakeholder. Therefore, it can be helpful to prioritize requirements from a different stakeholder’s
viewpoint.</p>
      <p>If we were to use pairwise comparisons of requirements, we would have to perform the whole
procedure of comparisons and calculations for each simulated scenario. However, in the case of using
a hierarchy to model different viewpoints, it is sufficient to redefine the comparisons at the first level
of the hierarchy.</p>
      <p>For example, the considered above case presented the viewpoint of the product owner. Suppose we
need to model the viewpoints of the project manager and development team. The project manager
considers risk as the most crucial criterion, and the development team pays attention to the dependencies
between the requirements. If the relative intensity of importance can be considered approximately the
same, then these viewpoints can be described by such pairwise comparisons matrices:</p>
      <p>Requirements comparisons at the lowest level of the hierarchy do not need to be changed. The
simulated prioritizations are shown in Figure 6.</p>
      <p>Often software requirements are changed during the development process: new requirements could
be added, existing ones could be removed or modified, requirements estimates could be revised.
Obviously, in such a case, it is necessary to recalculate the priorities of requirements. Note that the
recalculation would not require additional estimations since a change in the requirements does not entail
a change in the importance of the criteria and comparisons of the values of the measurement scale.
Therefore, the recalculation can be done automatically.</p>
      <p>Finally, we should note that the methodology is applicable both to different types of requirements
(functional, non-functional) and to different forms of recording requirements (user stories, use cases,
software requirements specification).</p>
    </sec>
    <sec id="sec-7">
      <title>7. Conclusion</title>
      <p>The high complexity of the AHP method does not allow it to be used as a universal method for
prioritizing requirements. The overwhelming majority of modern software products must meet dozens
of requirements, and pairwise comparisons of requirements do not justify using the AHP method in the
classical form.</p>
      <p>We have proposed a methodology for reducing the complexity of the AHP method by using
hierarchical prioritization scoring. The methodology is based on the assumption of the form of the
technical task, which can be presented in the form of user stories, use cases, or specifications of software
requirements, with assessments of the priorities of requirements according to specific criteria. In
accordance with the proposed methodology, at the first level of the hierarchy, a specialist needs to
define only a matrix of paired comparisons of criteria. At the same time, at the second level of the
hierarchy, requirements assessments for each criterion are calculated automatically.</p>
      <p>We have developed data structures that allow us to process the technical task and save the results
obtained for the requirements prioritization. A feature of data structures is the ability to work with any
number of criteria of categorical, numeric, or multi-record types.</p>
      <p>The proposed methodology is especially useful for projects with the following features:
 frequent changes in project requirements (due to changes in the conditions for project
development, target audience, project promotion strategy, etc.);
 impossibility of the timely formation of a complete set of requirements due to the lack of
relevant expert information;
 the interest of designers in modeling options for the project development process with the
influence of various stakeholders on the requirements development process.</p>
      <p>The developed methodology and the proposed data structures can form the basis of information and
analytical system for software requirements engineering management.</p>
    </sec>
    <sec id="sec-8">
      <title>8. References</title>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>A.</given-names>
            <surname>Chakraborty</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Baowaly</surname>
          </string-name>
          ,
          <string-name>
            <given-names>U. A</given-names>
            <surname>Arefín</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. N.</given-names>
            <surname>Bahar</surname>
          </string-name>
          ,
          <article-title>The Role of Requirement Engineering in Software Development Life Cycle</article-title>
          ,
          <source>Journal of Emerging Trends in Computing and Information Sciences</source>
          <volume>5</volume>
          (
          <issue>3</issue>
          ) (
          <year>2012</year>
          )
          <fpage>723</fpage>
          -
          <lpage>729</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          <source>[2] J. del Sagrado, I. M. del Águila</source>
          ,
          <article-title>Assisted requirements selection by clustering</article-title>
          ,
          <source>Requirements Engineering</source>
          <volume>26</volume>
          (
          <year>2021</year>
          )
          <fpage>167</fpage>
          -
          <lpage>184</lpage>
          . doi:
          <volume>10</volume>
          .1007/s00766-020-00341-1
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>I.</given-names>
            <surname>Olaronke</surname>
          </string-name>
          , I. Rhoda,
          <string-name>
            <surname>G. Ishaya,</surname>
          </string-name>
          <article-title>An Appraisal of Software Requirement Prioritization Techniques</article-title>
          ,
          <source>Asian Journal of Research in Computer Science</source>
          <volume>1</volume>
          (
          <issue>1</issue>
          ) (
          <year>2018</year>
          )
          <fpage>1</fpage>
          -
          <lpage>16</lpage>
          . doi:
          <volume>10</volume>
          .9734/ajrcos/2018/v1i124717
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>J.</given-names>
            <surname>Linåker</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Regnell</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Damian</surname>
          </string-name>
          ,
          <article-title>A method for analyzing stakeholders' influence on an open source software ecosystem's requirements engineering process</article-title>
          ,
          <source>Requirements Engineering</source>
          <volume>25</volume>
          (
          <year>2020</year>
          )
          <fpage>115</fpage>
          -
          <lpage>130</lpage>
          . doi:
          <volume>10</volume>
          .1007/s00766-019-00310-3.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>A.</given-names>
            <surname>Milne</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Maiden</surname>
          </string-name>
          ,
          <article-title>Power and politics in requirements engineering: embracing the dark side?</article-title>
          ,
          <source>Requirements Engineering</source>
          <volume>17</volume>
          (
          <issue>2</issue>
          ) (
          <year>2012</year>
          )
          <fpage>83</fpage>
          -
          <lpage>98</lpage>
          . doi:
          <volume>10</volume>
          .1007/s00766-012-0151-6
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>D.</given-names>
            <surname>Beimel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            <surname>Kedmi-Shahar</surname>
          </string-name>
          ,
          <article-title>Improving the identification of functional system requirements when novice analysts create use case diagrams: the benefits of applying conceptual mental models</article-title>
          ,
          <source>Requirements Engineering</source>
          <volume>24</volume>
          (
          <year>2019</year>
          )
          <fpage>483</fpage>
          -
          <lpage>502</lpage>
          . doi:
          <volume>10</volume>
          .1007/s00766-018-0296-z
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>L.</given-names>
            <surname>Gren</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R. B.</given-names>
            <surname>Svensson</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Unterkalmsteiner</surname>
          </string-name>
          , Is It Possible to Disregard Obsolete Requirements?
          <article-title>An Initial Experiment on a Potentially New Bias in Software Effort Estimation</article-title>
          , in: 2017 IEEE/ACM 10th International Workshop on Cooperative and
          <article-title>Human Aspects of Software Engineering (CHASE)</article-title>
          , IEEE Press,
          <year>2017</year>
          , pp.
          <fpage>56</fpage>
          -
          <lpage>61</lpage>
          . doi:
          <volume>10</volume>
          .1109/CHASE.
          <year>2017</year>
          .10
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>T.L.</given-names>
            <surname>Saaty</surname>
          </string-name>
          , The Analytic Hierarchy Process,
          <string-name>
            <surname>McGraw-Hill</surname>
          </string-name>
          , Inc., New York, NY,
          <year>1980</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>N. M.</given-names>
            <surname>Minhas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Majeed</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Borstler</surname>
          </string-name>
          , T. Gorschek,
          <string-name>
            <surname>SWVP - A Requirements Prioritization</surname>
          </string-name>
          <article-title>Technique for Global Software Development</article-title>
          ,
          <source>in: 45th Euromicro Conference on Software Engineering And Advanced Applications (SEAA)</source>
          , IEEE Press,
          <year>2019</year>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>9</lpage>
          . doi:
          <volume>10</volume>
          .1109/SEAA.
          <year>2019</year>
          .00010
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>J.</given-names>
            <surname>Karlsson</surname>
          </string-name>
          ,
          <article-title>Software requirements prioritizing</article-title>
          ,
          <source>in: Proceedings of the Second International Conference on Requirements Engineering</source>
          , IEEE Press,
          <year>1996</year>
          , pp.
          <fpage>110</fpage>
          -
          <lpage>116</lpage>
          . doi:
          <volume>10</volume>
          .1109/ICRE.
          <year>1996</year>
          .491435
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>M.</given-names>
            <surname>Vestola</surname>
          </string-name>
          ,
          <article-title>A comparison of nine basic techniques for requirements prioritization</article-title>
          ,
          <year>2010</year>
          . URL: http://www.mvnet.fi/publications/software_development_seminar.pdf
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>M.</given-names>
            <surname>Kassab</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Kilicay-Ergin</surname>
          </string-name>
          ,
          <article-title>Applying analytical hierarchy process to system quality requirements prioritization</article-title>
          ,
          <source>Innovations in Systems and Software Engineering</source>
          <volume>11</volume>
          (
          <year>2015</year>
          )
          <fpage>303</fpage>
          -
          <lpage>312</lpage>
          . doi:
          <volume>10</volume>
          .1007/s11334-015-0260-8
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>S.</given-names>
            <surname>Siddiqui</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. Rizwan</given-names>
            <surname>Beg</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Fatima</surname>
          </string-name>
          ,
          <article-title>Effectiveness of requirement prioritization using Analytical Hierarchy Process (AHP) and Planning Game (PG): a comparative study</article-title>
          ,
          <source>International Journal of Computer Science and Information Technologies</source>
          <volume>4</volume>
          (
          <issue>1</issue>
          ) (
          <year>2013</year>
          )
          <fpage>46</fpage>
          -
          <lpage>49</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <surname>J. M. Fernandes</surname>
            ,
            <given-names>S. P.</given-names>
          </string-name>
          <string-name>
            <surname>Rodrigues</surname>
            ,
            <given-names>L. A.</given-names>
          </string-name>
          <string-name>
            <surname>Costa</surname>
          </string-name>
          ,
          <article-title>Comparing AHP and ELECTRE I for prioritizing software requirements</article-title>
          ,
          <source>in: 2015 IEEE/ACIS 16th International Conference on Software Engineering, Artificial Intelligence</source>
          ,
          <article-title>Networking and Parallel/Distributed Computing (SNPD)</article-title>
          , IEEE Press,
          <year>2015</year>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>8</lpage>
          . doi:
          <volume>10</volume>
          .1109/SNPD.
          <year>2015</year>
          .
          <volume>7176282</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>M. I.</given-names>
            <surname>Babar</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Ramzan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. A. K.</given-names>
            <surname>Ghayyur</surname>
          </string-name>
          ,
          <article-title>Challenges and future trends in software requirements prioritization</article-title>
          , in: International Conference on Computer Networks and Information Technology, IEEE Press,
          <year>2011</year>
          , pp.
          <fpage>319</fpage>
          -
          <lpage>324</lpage>
          . doi:
          <volume>10</volume>
          .1109/ICCNIT.
          <year>2011</year>
          .
          <volume>6020888</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>J. A.</given-names>
            <surname>Khan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>I. Ur</given-names>
            <surname>Rehman</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y. H.</given-names>
            <surname>Khan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>I. J.</given-names>
            <surname>Khan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Rashid</surname>
          </string-name>
          , Comparison of Requirement Prioritization Techniques to Find Best Prioritization Technique,
          <source>International Journal of Modern Education and Computer Science</source>
          <volume>7</volume>
          (
          <issue>11</issue>
          ) (
          <year>2015</year>
          )
          <fpage>53</fpage>
          -
          <lpage>59</lpage>
          ,
          <year>2015</year>
          . doi:
          <volume>10</volume>
          .5815/ijmecs.
          <year>2015</year>
          .
          <volume>11</volume>
          .06
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>F.</given-names>
            <surname>Fellir</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Nafil</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Touahni</surname>
          </string-name>
          ,
          <article-title>System requirements prioritization based on AHP</article-title>
          , in: 2014
          <source>Third IEEE International Colloquium in Information Science and Technology (CIST)</source>
          , IEEE Press,
          <year>2014</year>
          , pp.
          <fpage>163</fpage>
          -
          <lpage>167</lpage>
          . doi:
          <volume>10</volume>
          .1109/CIST.
          <year>2014</year>
          .
          <volume>7016612</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>A. R.</given-names>
            <surname>Asghar</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. N.</given-names>
            <surname>Bhatti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Tabassum</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S A.</given-names>
            <surname>Ali</surname>
          </string-name>
          <string-name>
            <surname>Shah</surname>
          </string-name>
          ,
          <article-title>The Impact of Analytical Assessment of Requirements Prioritization Models: An Empirical Study</article-title>
          ,
          <source>International Journal of Advanced Computer Science and Applications</source>
          <volume>8</volume>
          (
          <issue>2</issue>
          ) (
          <year>2017</year>
          )
          <fpage>303</fpage>
          -
          <lpage>313</lpage>
          . doi:
          <volume>10</volume>
          .14569/IJACSA.
          <year>2017</year>
          .080240
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>M.</given-names>
            <surname>Yaseen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Mustapha</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Ibrahim</surname>
          </string-name>
          ,
          <source>Prioritization of Software Functional Requirements from Developers Perspective</source>
          ,
          <source>International Journal of Advanced Computer Science and Applications</source>
          <volume>11</volume>
          (
          <issue>9</issue>
          ) (
          <year>2020</year>
          )
          <fpage>210</fpage>
          -
          <lpage>224</lpage>
          . doi:
          <volume>10</volume>
          .14569/IJACSA.
          <year>2020</year>
          .0110925
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>T.</given-names>
            <surname>Zahoor</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Azam</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.W.</given-names>
            <surname>Anwar</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Maqbool</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.A.</given-names>
            <surname>Javaid</surname>
          </string-name>
          ,
          <string-name>
            <surname>A UML</surname>
          </string-name>
          <article-title>Profile for Software Requirements Prioritization</article-title>
          ,
          <source>in: IEEE 10th Annual Information Technology, Electronics And Mobile Communication Conference (IEMCON)</source>
          , IEEE Press,
          <year>2019</year>
          , pp.
          <fpage>885</fpage>
          -
          <lpage>891</lpage>
          . doi:
          <volume>10</volume>
          .1109/IEMCON.
          <year>2019</year>
          .8936265
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>S.</given-names>
            <surname>Hatton</surname>
          </string-name>
          , Early Prioritization of Goals, in: J.
          <string-name>
            <surname>-L. Hainaut</surname>
            ,
            <given-names>E. A.</given-names>
          </string-name>
          <string-name>
            <surname>Rundensteiner</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Kirchberg</surname>
          </string-name>
          , M. Bertolotto (Eds.),
          <source>Advances in Conceptual Modeling - Foundations and Applications</source>
          , volume
          <volume>4802</volume>
          of Lecture Notes in Computer Science, Springer, Berlin, Heidelberg,
          <year>2007</year>
          , pp.
          <fpage>235</fpage>
          -
          <lpage>244</lpage>
          . doi:
          <volume>10</volume>
          .1007/978-3-
          <fpage>540</fpage>
          -76292-8_
          <fpage>29</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>G. A.</given-names>
            <surname>Miller</surname>
          </string-name>
          ,
          <article-title>The magical number seven, plus or minus two: Some limits on our capacity for processing information</article-title>
          ,
          <source>Psychological Review</source>
          <volume>63</volume>
          (
          <issue>2</issue>
          ) (
          <year>1956</year>
          )
          <fpage>81</fpage>
          -
          <lpage>97</lpage>
          . doi:
          <volume>10</volume>
          .1037/h0043158
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>