A Combined AHP and Source of Power Schemes for Prioritising Requirements Applied on a Human Resources

Abstract. There are a number of scenarios where prioritising is one of the critical activities. The requirements engineering process domain uses different approaches to prioritise requirements. Most of these approaches overlook the influence of the stockholders politics and power among dimensions of the process. This paper expands the scope of Analytic Hierarchy Process (AHP) and uses the source of power approach that accounts for the political and authoritative powers typically found among stakeholders. The suggested model weaves both approaches using a well-defined process model and applies this model on a case of prioritising the requirements of human resources software in a multinational company.


Introduction
Requirements Engineering (RE) is software engineering process, which covers all of the activities involved in discovering, documenting and maintaining a set of requirements for a computer-based system [1].It is defined as the process of identifying stakeholders and their needs, and documenting these in a form that is amenable to analysis, communicate, and subsequent implement [2] & [3].
RE process is difficult because businesses operate rapidly in a changing environment.Accordingly, requirements change continuously and consequently that increases the vagueness of what is exactly required.Having multiple stakeholders with different goals is another reason to raise more arguments.More often, the requirements identifications and prioritisations are influenced by political and organizational factors that stakeholders will not admit publicly [1].
The RE process involves main four activities, which are requirements discovery, requirements classification, prioritisation and negotiation, and requirements documentation activities.In the requirements discovery, software engineers interact with stakeholders to discover their requirements.This is followed by requirements classification and organisation activity.In that respect, requirements are grouped and organised into coherent clusters.Afterward, in the prioritisation and negotiation, members of the project group subjectively do the process of requirements prioritisation, which is the process of finding an order relation on the set of requirements.The prioritisation involves negotiation among the stakeholders to resolve conflicts and to decide the ranking according to information available about budget, time and technical constraints, and stakeholder expectations [1].
Prioritising requirements means categorising raw potential requirements from the standpoint of importance into essential and desirable requirements.Essential requirements must be included because it would reduce system effectiveness if they were left out and desirable requirements will make the system more desirable to certain stakeholder [1]."Negotiation and consensus are important to eliminate unnecessary potential "requirements" [2] (i.e., goals, desires, and "nice-tohaves" that do not merit the mandatory nature of true requirements) [1].After finishing negotiating the set of requirements and their priories, requirements documentation ends this RE process.Different technical approaches are used to automatism the AHP approach.More specifically, in prioritising requirements different techniques are used such as Analytic Hierarchy Process (AHP) [5], Bubble Sort [6], and Case Based Ranking [7].These approaches represent an abstract and a mechanistic view of the prioritisation process and don't represent the real final decision of the ranked list.The final decision of ranking involves discussions and negations among different teams who are involved in projects.For instance, technical group like Information Technology (IT) group will have different ranking from the business groups such as marketing or finance groups.Each group prioritises according to its objectives that could introduce conflict and the power of politics among groups plays an important role to have the final set of prioritise requirements.Pairwise and other mechanistic approaches overlook this reality.This paper proposes a novel approach that adds to the mechanistic pairwise technique i.e.AHP the weight power model.It is structured as follows.It starts with introducing the problem.The following section describes the related work and identifies the prioritising approaches.Then we present the details of our weighted political model followed by a case study to explain the implementation of the model and to perform an initial validation of the model.The final part discusses the implementation of model and finishes by concluding remarks.

Related work
Advancements in the software product management have pushed the industry to add updated releases of planning activity.One of the key steps in release planning is requirements prioritisation and several techniques are applied to do this step.
Pairwise comparison-based approaches are the pivotal pillar for a lot of models and frameworks to prioritise the requirements [1], [3], [4], [5], [6],& [7].The most commonly used approach is Analytic Hierarchy Process (AHP).It compares all unique pairs of requirements to determine which of the two is of higher priority and to what extent [5].Bubble Sort compares two requirements and swaps them if they are in the wrong order [6] & [8].Case Based Ranking exploits a machine-learning algorithm to guide the elicitation of user preferences during the prioritisation process [7].In the Cost-Value approach, each requirement is determined based on its value to the users and the cost of implementing.It also uses the AHP technique [6] & [9].MoScoW (Museum of Soviet Calculators on the Web) MoScoW is a type of numerical assignment technique.It prioritises based on four priority groups, which are MUST have, SHOULD have, COULD have and WONT have [10] & [11].Binary Search Tree Binary search tree method by Hopcroft, Aho and Ullman [11] is another technique used for sorting requirements.Berander and Andrews [12] suggested simple ranking requirement prioritisation technique.In simple ranking, requirements are ranged from 1 to n where n is any integer value.Adaptive Fuzzy Hierarchical Cumulative Voting technique uses fuzzy logic with adaptive mechanism.itanalyses the different self-adaptive properties like selfheal, self-configure, self-optimize, self-protect [13].
AHP based approaches have the advantage of quantifying stakeholders' judgments and it works well as a computational process.In addition, it could be easily mixed with other models to introduce more robust model.The AHP is a subjective tool to analyse, based on a crisp 9-point scale, the qualitative criteria needed to generate alternative priorities and preferences [3].The AHP enables decision makers to structure complex problems in a simple hierarchical form, and to evaluate a large number of quantitative and qualitative factors in a systematic manner despite the presence of multiple conflicting criteria.However, it lacks the representation of the rationale and justification for decisions and the negotiation among the stakeholders.
In reality, requirements identification and prioritisation involve politics because defining requirement represents different views and involves bargaining and negotiation to reach the final set of requirements.Models tend to simplify the process and overcome representing conflicts and differences of opinion.Team behaviour and decisions are usually presented as rational however, this is not the case.Individuals in organisations are not honest about their political motivations.
Power relations are so embedded in our daily lives.In that respect, we find it is hard to talk about directly.AL-Ta'ani and Razali [15], in their conceptual framework, have touched this point and they considered the stakeholders' characteristics, which are trust, knowledge, learning, experience and authority, as an environmental factor.It is one of the factors that affect the process and the final product of requirements prioritisation process in agile methods [16].However, they didn't show the power relationship and didn't have a mathematical formula to calculate this framework.
Milne and Maiden work [16] shows a framework that defines the structure of power relationships networks.This can be used to describe the relationship between stakeholders in Requirements Engineering (RE) process.The framework shows structure of power relations and the process of decision-making by applying it to a case study [16].
Milne and Maiden [16] believe that politics played a role in forming decision-making process and present their framework about straightforward source of power.They use the French and Raven's [17] concept of sources of power that defines five powers: Legitimate, which is formal authority, Reward which is the ability to bestow rewards, Coercive which is the ability to punish, Expert which is possession of skill or knowledge, Referent from personal characteristics [17].Figure 1 is an example that represents the actors and their power relationship.The most straightforward of the relationships shown in Figure . 1 is the legitimate links between actors.These links reflect the formal power structure of the organisation and it is usually documented in organisational charts and formal job descriptions.In Figure .1, we see, B has legitimate authority over A and C, and A over F and E. The remaining power relationships within this simple network are based on informal ties.C has power over A by means of Expert power onlyperhaps C might control the production of reports required by A. Actor F has power over E through Referent power-based upon interpersonal skills rather than any formal authority.E might rely on F's ability to manage relationships with other actors.The model of power described in Figure 1.implies a straightforward unidirectional exercise of power between actors.This framework can be used to add relative power importance of each stakeholder to the AHP based approach.Our proposed model combines both AHP and the source of power mechanism in one scheme.We also tie both with a proposed clear supporting process model.Our approach AHP provides the stable and sound mathematical foundation for supporting individual's judgement on relative importance of pairs of requirements to come out, using simple mathematical manipulation, with a vector that reflects a specific stakeholder view of priorities of a list of requirements.The source of power clarifies the overlooked political merit inherent in the prioritisation process and adds the missing dimension from AHP.We call our scheme Power Analytic Hierarchy Process (PAHP).

Multi-level hierarchy decision problems &PAHP
Prioritising requirements by a group of stakeholders who may have different goals, is a kind of a decision problem.One efficient solution for such a problem is structuring.Hierarchical structuring techniques can play a pivotal role in solving this problem.The AHP method can perfectly fit because the AHP employs hierarchical structuring and the underlying problem needs such an abstraction technique.
Power Analytic Hierarchy Process (PAHP) models the process of group decision making and reflects the power structure in prioritise the requirements.In other words, it models the process of aggregating the opinions from all experts to get a consensus or compromise results through mutual interaction.
Power Analytic Hierarchy Process (PAHP) is multilevel hierarchy decision problems.The number of levels and what each level, it represents, depends on the nature of the problem and the sought solution.In our case, the problem is to choose and prioritise requirements based on some criteria and the prioritisation is done by a set of stakeholders who have power relationships.We can view this case as a structure that includes four main levels: • Level 1: the root of the problem (prioritising requirements).• Level 2: criteria on which judgment is based.• Level 3: the requirements list to prioritise.• Level 4: the power types that reflect the weights of the stakeholders Figure 2 abstracts our model elements along with it process.Steps detailing such a process are presented below.

The PAHP Model Process
Our model process of combining individual stakeholder judgement into one group of prioritised requirements is viewed in two major activities.Each activity has a number of steps.The first major activity is the one where the actual requirements prioritisation process occurs.The second major activity is the process of ranking stakeholders themselves who will prioritise the requirements.Ranking of stakeholders is based on power relations among participating stakeholders.Both activities are employing AHP based theme as shown in Fig 2 .These activities are broken down into six steps to produce the final priorities of the requirements set.

Step 1:Stakeholders agree on the list of requirements to prioritise
This is done in one or more sessions and may require the engagement in an elicitation effort.The outcome of this step is a set of requirements to priortise.

Step 2: Stakeholders decide the criteria to be used in the judgement
Stakeholders then agree on the criteria they will consider to prioritise the requirements.Similar to the previous step, stakeholders choose from criteria collected and agree on those criteria.

Step 3: Stakeholders conduct pair-wise comparison of the requirements
Based on the agreed criteria, each stakeholder is presented with an instance of the problem in the form of a matrix that each includes requirements to prioritise and the criterion against which the requirements pairs are to be compared.Comparison values are drawn from a 9-point scale (see For example, for three criteria, each stakeholder is required to develop three matrices.In each of these three matrices, stakeholders assign relative importance to each requirement with respect to the other requirement Step 4.The system processes the matrices filled by each stakeholder to construct the priority vector. In this step, a priority vector for each stakeholder reflecting her/his individual judgment is produced following the AHP [5] steps described briefly below.Once all individual stakeholders are done, the system will use individual priority vectors to produce the final group priority vector showing the priority of each requirement with respect to all other requirements.These (global) priorities of the requirements are obtained by manipulating the importance matrix resulting from the pairwise comparisons.The result of this manipulation is a vector of priorities that has an entry for each requirement.
While n requirements are assumed, n (n-1)/2 elements of the pairwise comparison must be derived.Let C1, C2, …, Cn denote the set of requirements to be prioritised against some criteria, while aij represents a quantified judgment on a pair of requirements Ci, Cj..This yields an n-by-n matrix A see Equation ( 1). (1) To calculate the priorities vector, given the importance matrix M, the priority vector is given by the normalised principal eigenvector of M. The principal eigenvector is the eigenvector corresponding to the largest eigenvalue λ max.The mathematical justification for this result is beyond the scope of this study.For details, please refer to [5].The desired eigenvector is given by the normalised row sum of the limiting power of the importance matrix.This is obtained by raising the matrix into some arbitrary large power and dividing the sum of each row by the sum of the elements of the matrix.
Since the cost of this kind of computation is expensive in terms of time, some other methods are used that give crude estimates of the required vector.One of these methods called averaging over the normalised columns is summarised in the following stages: 1.Sum each column in the importance matrix M.

2.Divide each element in M by the sum of the column
it belongs to obtaining MI.
3.Sum each row in Ml, the result is a vector v.
4.Divide v by the sample size of n columns, the result is the required priority vector.
For example, let (gearboxes, horsepower, fuel consumption, air bags) be the list of alternative criteria to choose a car.We follow the earlier steps to prioritise the alternative criteria.After creating the pairwise comparisons, we get A matrix in Equation ( 2).

A=
(2) 1: Sum each column in the importance matrix M in Equation (3).

M= (3)
2: Divide each element in M by the sum of the column it belongs to obtaining MI in Equation ( 4).

MI= (4)
3 & 4: Sum each row in Ml, the result is a vector v; Divide v by the sample size of n columns, the result is the required priority vector in Equation ( 5).

Priority vector = (5)
The priority goes for the gearboxes (0.47) then fuel consumption (0.31) and that is followed by the horsepower (0.13) and air bags (0.07).

Step 5. Stakeholders rank each other based on the power relationship network model.
Stakeholders rank each other's power.Each stakeholder produces five matrices for the five types of power defined by French and Raven i.e., Legitimate (L), Reward (R), Coercive(C), Expert (E)and, Referent(F).
To embed the source of power to PAHP model, TABLE 2 suggests numerical values for each sources of power based on their definition [18].We use the same 9point scale in not have the full control.This is why we set it with the value 7. Referent effect depends upon the culture and the environment and interpersonal skills however, it is not as influential as Expert and knowledge, so we give it the value 5.The Reward power which is the ability to bestow rewards, has higher influence than Coercive power, which is the ability to punish [19].We scale reward with 3 and coercive with 1.In this step, power matrices are established for each stakeholder and each power type.Each stakeholder establishes one matrix for each type of power that reflects power weights of stakeholders as expressed by this stakeholder in matrix M in Equation ( 6).(6) Step 6.The system uses these power matrices to process the power vector.
If we have 10 stakeholders and 5 types of power, 50 matrices are produced.The previous Equations 1, 2, 3, 4, &5 are applied to produce an eigenvector for each power per one stakeholder.Then one priority vector that represents the group decision about power relationships.
Step 7. The system combines the results obtained in steps 4&6 into one group priority vector that reflects the combined group judgement.
This step combines both activities "actual prioritisation of requirements" and "ranking the stakeholders" and products one set of prioritised requirements that could map realistic one.

CASE STUDY
To explain the process model and clarify the steps in details, we describe the steps with an example of setting and prioritising a list of requirements to develop a human resources software in a multinational company.

Step 1:Stakeholders agree on the list of requirements to prioritise
In a multinational company, they want to develop a new human resources system.The panel, that has to decide on prioritising these requirements, consists of the following stakeholders: A (Marketing), B (Sales), C (Finance), and D (IT and Development) departments' representatives and each has different authority.Stakeholders have set seven main requirements that the system need to have.The requirements are R1 customer ease of use, R2 scalability, R3 performance, R4 cost, R5 security, R6 modifiability, and R7 ease of installation.

1) Step 2: Stakeholders decide the criteria to be used in the judgement
In that respect, in a session, stakeholders discussed the requirements and agreed to consider money is the criterion.

Step 3: Stakeholders conduct pair-wise comparison of the requirements
In this step, requirements' matrices are collected from each stakeholder.
Step 4.The system processes the matrices filled by each stakeholder to construct the priority vector.
Here, the eigenvector is calculated, and consistency test is checked as in [5].Assumed model power Step 6.The system uses these power matrices to process the power vector.
Because of the technical aspects of the system, the expert is the determine power.The expert matrix is calculated based on the figure 3 network of power.Accordingly, the eigenvector is calculated.Furthermore, the consistency test is checked.
The eigenvalue is=

3) Step 7. The system combines the results obtained in steps 4&6 into one group priority vector that reflects the combined group judgement
In this step, the system multiples the produced matrix in step 4 that has the eigenvector for the seven requirements by the eigenvector of the expert power calculated in step 6.

Priorities =
The produced vector shows that R2 scalability is the first then R6 modifiability, R3 performance, R5 security, R4 cost, R7 ease of installation, and finally R1 customer ease of use.

4.DISCUSSIONS
The theme of our proposed approach in tackling the requirements prioritisation activity deals with the problem in wider spectrum than currently practiced.First, it combines technical quantitative judgment method that is based on sound mathematical basis, with commonly overlooked realistic factors that affect the outcome of the whole prioritisation process which is the power relationships among stakeholders.To the best of our knowledge, this is the first work to combine both aspects in one scheme.
Second, we managed to express the power relationships using the same mathematical basis that the AHP adopts which led to our ability to rank stakeholders using priority vector derived from power relationships.This manipulation enabled us to get a homogenous combined priority vector for the whole process that encompasses the group judgment regarding the set of the requirements and also embedded power relations among stakeholders.
As for the process itself, all what is required from stakeholders is agreeing on the set of requirements to be prioritised and the criteria to be used in the judgment process.Once agreed, each stakeholder is presented with an instance of the problem structure and is actually engaged in the prioritisation that is mostly mechanised.For example, a stakeholder is required to fill only half of a comparison matrix and the system will automatically fill the other half.From this point on, the system performs the rest of the computations automatically until produces the final group combined priority vector.
One might question the cost of such a process especially with the commonly adopted agile approaches of software developments.However, requirements prioritisation is traditionally a required activity with large systems that have many stakeholders whose goals may be contradicting and this even goes with small agile system.For example in Scrum, the prioritisation activity could be part of the project planning or release planning activities to select features to be included in the project.
Currently, we are working on a prototype of a software tool that implements and supports this model and its process and evolves gradually into a complete system.We intend to use the system in sizable projects in cooperation with.This will enable us to get realistic result and measure the effectiveness and the viability of our approach.We will report on the obtained results.

5.CONCLUSIONS
Prioritising requirements is a critical activity in requirements engineering that mandates devising effective methods and techniques that take into account different dimensions of the endeavor and provide automated support for the process.In this paper, we presented a combined scheme for prioritising requirements that is based in part on the mathematical basis of the AHP method while weaving in the process an overlooked aspect which is the power authority and its effect on the outcome of the process.
Our proposed combined scheme does not only account for ranking requirements based on a mathematical model, but also ranking stakeholders engaged in the prioritisation process using the same mathematical model.The application of our scheme and its process will yield prioritisation of requirements, while embedding the overlooked power authorities with its different interpretations.
Currently we are engaged in developing a prototype that implements our scheme model and process that will be evolved into a complete system.The completed system will be used to run experimentations using realistic software development projects.
As a future work, we intend to formalise the scalability of our scheme as the set of the requirements gets larger.We also intend to study the refinement of the outcome result of our proposed scheme by the project's identified risks so that judgment criteria do not conflict with critical risks.We believe that more elaboration is needed to answer many questions in order to use our scheme in agile based development project.

6 Figure 2 .
Figure 2. The process of developing a hybrid matrix of the PAHP model

DOI
/RI = 0.093/1.32= 0.070 = 0.075/1.32= 0.057 All calculated eigenvector for the seven requirements of each stakeholder and put in one matrix (S) 2) Step 5. Stakeholders rank each other based on the power relationship network model.The 5 stakeholders, namely A (Marketing), B (Sales), C (Finance), and D (IT and Development) departments' representatives, have different authority.In the network of power, Fig.3 shows the different power each stakeholder has of legitimate, reward, coercive, expert, and referent.

TABLE I .
TABLE I for the pairwise comparison.Legitimate or formal authority has the highest value because there is no Legitimate without Reward and/or Coercive [19] that takes the value 9.In some cultures, Expert has almost equal power as Legitimate but still does

TABLE 2 .
THE SOURCE OF POWER EXPLANATION