# Introduction omponent Based Development (CBD) relies on reusable COTS components to build the software systems. Before integrating the components into the system, the components should be quantified according to the non-functional and functional requirements. With the rapid growing and changing of technology, number of products or tools entering in the market also increases. So it becomes a big challenge to select the best component from a number of alternative components and to build a trust on the selected components. Component selection and evaluation is a multi criteria problem in which a component from various alternatives is to be selected which best satisfies the maximum criteria than others. A chosen option should have greater rank on all criteria than others. # II. # Literature Review COTS-Aware Requirements Engineering and Software Architecting (CARE/SA) proposed by Lawrence [8] for evaluating, matching and selecting of COTS components. CARE/SA method uses the architectural aspects, functional aspects and non-functional aspects of COTS components. It indicates that each component is represented by the unique attributes which consists of its architectural, functional and non-functional aspects. Hamdy Ibrahim et al. in [7] proposed a method named 'UnHOS' (Uncertainty Handling in COTS Selection) method for the evaluation of COTS components and takes into account their uncertainty. It uses Analytic Hierarchy Process (AHP) for the evaluation of COTS components and Bayesian Belief Network (BBN) to indicate their uncertainty. It also presents a tool to support the usability of the UnHOS method. Anil Jadhav et al. in [3] tells that Multi Criteria Decision Making Methods helps the decision makers to solve the problem of selection and evaluation of software components in which problem is defined as a collection of multiple criteria that needs to be taken into account. It gives the overview of Multi Criteria Decision Making Methods like: Analytic Hierarchy Process (AHP), Weighted Scoring Method (WSM) and Hybrid Knowledge Based System (HKBS). It compares the three approaches and concludes that HKBS is better than AHP and WSM. # PROMETHEE Various methods can be used as a solution of this problem like OSTO [2], CARE [8], AHP [3], WSM [3], Utility Theory [1], SMART [1], DesCOTS [9], UnHOS [7] etc. Multi Criteria Decision Analysis methods help the decision maker to select the best option from number of multi criteria alternatives which best scores on multiple criteria. PROMETHEE is a multi criteria method proposed by JP Brans in 1982 [6]. It can be applied for the analysis and selection of components and solutions in various kinds of fields like Banking, Industrial Location, Manpower planning, Water resources, Investments, Medicine, Chemistry, Health care, Tourism, Ethics in OR, Dynamic management [6]. It can be applied to selection and evaluation of COTS components while making the decision to select components from repository to develop the software system. The aim of this paper is to apply PROMETHEE on the selection and evaluation of software packages and its benefits over others multi criteria methods. Arvinder Kaur et al. in [2] provide a brief overview of the evolutionary techniques. It also derives a hierarchical decomposition method to draw goals from that impact factors. It introduces OSTO method for the selection of software components which compares the scores and cost associated to each alternative and their relative comparison. It introduces various factors in the selection of reusable software components. It also presents the evaluation criteria based on various classifications as functional requirements, product quality attributes, strategic concerns and architecture and domain compatibility. It gives the result of two case studies using OSTO method. The component which have good quality assurance score is selected for consideration. # III. Multi Criteria Decision Analysis Method Multi criteria problem involves the selection of the best option from a number of alternatives on the basis of multiple criteria satisfaction with higher degree. As component selection is a multi-criteria problem, there are number of alternatives for the solution of problem and we have to select a candidate component which best suits for the solution on the basis of satisfying maximum criteria than others with higher degree. So problem can be formulated as: max {c 1 an,c 2 an??ckan|a n ?A}. Let A= {a 1 , a 2 , a 3 ??????..a n } be the set of 'n' alternatives for the solution of the problem. C= {c 1 , c 2 , c 3 ???????c k } be the set of 'k' criteria as a basis of evaluation and selection. Let w 1 ,w 2 ,w 3 ???w k be the weight of each criterion respectively. Each multi criteria decision analysis method proceeds with the decision table. Decision Table is shown in Table 1. Each column denotes the criteria, each row denotes the alternatives and 'ckan' represents the score of alternative 'n' on criterion 'k'. # Table 1 : The decision table a) PROMETHEE Method There is need to have a method which is simpler and better helps in decision making while obtaining the solution of multi objective selection of trusted components from the number of available alternatives. As COTS components selection is a multicriteria problem. PROMPTHEE solves the problem in an optimal way with additional benefits than other MCDA methods. PROMETHEE is Preference Ranking Organisation Method for Enrichment Evaluation. PROMETHEE is a multi criteria decision analysis method. It is an outranking method based on pair wise comparison of alternatives. It was developed by JP Brans in 1982 [6]. Originally it was developed as PROMETHEE-1 (partial ranking) and PROMETHEE-2 (complete ranking).Later PROMETHEE-3 (ranking based on intervals) and PROMETHEE-4 (continuous case) were developed. PROMETHEE-5 (MCDA includes segmentation constraints) and PROMETHEE-6 (represents human brain) are also there. PROMETHEE is based on mathematical properties [6]. It can be applied on various fields for the selection and evaluation of winning solution in a multi criteria problem. Steps for solving multi criteria problem with this method is as follows: 1. Determination of available alternatives to solve the problem. Let A= {a 1 , a 2 , a 3 ??????..a n } be the set of 'n' alternatives for the solution of the problem. Where VG, G, A, B, VB stands for very good, good, average, bad, very bad. Score for each grade is as in table 2. For C4; q=100 Relative difference between alternatives on each criterion is shown in tables 4, 5, 6, 7 and 8. Table 4 : Difference between alternatives with respect to performance d 1 (a,b) A1 A2 A3 A4 A5 A1 0 1 -2 -1 -1 A2 -1 0 -3 -2 -2 A3 2 3 0 1 1 A4 1 2 -1 0 0 A5 1 2 -1 0 0 Table 5 : Difference between alternatives with respect to reliability Table 6 : Difference between alternatives with respect to maintainability d 3 (a,b) A1 A2 A3 A4 A5 A1 0 1 -1 1 2 A2 -1 0 -2 0 1 A3 1 2 0 2 3 A4 -1 0 -2 0 1 A5 -2 -1 -3 -1 0 Table 7 : Difference between alternatives with respect to cost Table 8 : Difference between alternatives with respect to integrability A1 0 1 2 3 4 A2 -1 0 1 2 3 A3 -2 -1 0 1 2 A4 -3 -2 -1 0 1 A5 -4 -3 -2 -1 0 Preference function value of each alternative over other on all criteria is shown in table 9, 10, 11, 12 and 13. Profile of alternative A1 on all criteria is shown in figure 6. Profile of alternative A4 on all criteria is shown in figure 9. Ranking of all alternatives on all criteria is shown in figure 11. IV. # Conclusion Component selection is a wide comparison of components using a common set of criteria. Selecting the appropriate and relevant component significantly reduces the chances of risks associated with the COTS components with no source code available with them and improves the corporate competitiveness. Using PROMETHEE-GAIA methodology for the complete ranking of alternatives help decision makers to choose and analyse the highest rank component on all criteria and help to build confidence on the selected component. 2![Determination of evaluation criteria. Let C= {c 1 , c 2 , c 3 ???????c k } be the set of 'k' criteria as a basis of evaluation and selection. 3. Problem statement stated as max{c 1 (an),c 2 (an),c 3 (an),???c j (an)??.c k (a n )|a n ?A} Where 'c k (a n )' represents the value of alternative 'a n ' on the criterion 'k'. 4. Create an evaluation table or (n*k) matrix with 'n' rows (number of alternatives) and 'k' columns (number of evaluation criteria) and place the score value of each alternative based on each criterion i.e. 'c k a n '. 5. Assign weight to each criterion i.e. w j where (j=1,2,3?..k) and w 1 +w 2 +w 3 ?..w k =1. 6. Find the difference between each pair of alternatives based on each criterion i.e. d j (a,b)= c j (a)-c j (b) where (j=1, 2?k) and (a,b?A). 7. Find the preference of the one alternative over the other as a function of difference between each pair of alternatives based on each criterion i.e. Pj (a,b)= F j [d j (a,b)] where (a,b? A) and (j=1, 2?k) and 0?P j (a,b)?1. In case of minimizing the criteria preference P j (a,b)=F j [-d j (a,b)]. Preference function values can be taken on the basis of particular criterion function and the parameter value which you have selected. 8. Calculate the degree to which preferred option is better than other alternative on all criteria i.e. ?(a,b)= P 1 (a,b)w 1 +P 2 (a,b)w 2 +???P k (a,b)w k . And 0?? (a,b)? 1.](image-2.png "2 .") ![b'. And if the degree of preference nearly equals to 'one'; it means there is strong preference of alternative 'a' over alternative 'b'. 10. Calculate the positive and negative outranking flow of each option and then compute the net outranking flow of the option and if it comes out to be greater than 'zero' then the option outranking the other options and if lower than 'zero' then it means that the option is outranked by the other options on all criteria. Positive outranking flow (option outranks others): ?+(a)=1/(n-1)[?(a1,a2)+?(a1,a3)? ??(a1,an)] Negative outranks flow (option is outranked by others): ?-(a)=1/(n-1)[?(a2,a1)+?(a3,a1)? ??(an,a1)] Net outrank flow of an option: ?(a)= ?+(a)-?-(a). We can say that 'a' is preferred over 'b' if ?(a)> ?(b) and 0??(a) ?1. Moreover{?(a1)+ ?(a2)+?.. ?(an)=0} 11. Obtain the outrank flow of each option on each criterion as: ?j(a)=1/(n-1)[(P1(a,b) -P1(b,a))+(P2(a,b)-P2(b,a)) +P3(a,b)-P3(b,a))??+ Pk(a,b)-Pk(b,a))]. 12. Obtain the profile of an alternative on all the criteria as: ?(a)= ?1(a)w1+ ?2(a)w2+?. ?k(a)wk. Profile of an alternative indicates the quality of an alternative on each criterion. Profile is shown in figure 1.](image-3.png "") 1![Figure 1 : Profile of an alternative 13. Select the alternative which has high '?(a)'. Values of '?(a)' gives the complete rank of the alternatives. b) Promethee on Cots Components Selection While developing system from COTS components it becomes very difficult to select best one if number of alternatives are available and to evaluate those alternatives. Application of PROMETHEE methodology on the COTS components selection better supports us in decision making. Suppose a set of software components i.e. Alternatives set as A={A1,A2,A3,A4,A5} and evaluation criteria set as C={Performance, Reliability, Maintainability, Cost, Integrability} and the weight of each criterion respectively is as:0.3,0.2,0.1,0.2,0.2. Let criteria can be written as C1, C2, C3, C4 and C5. Scale and units for criteria are as follows: C1: VG, G, A, B, VB](image-4.png "Figure 1 :") ![function may be used as Usual, U-Shaped, V-Shaped, Level, Gaussian or V-Shape with indifference criterion function. Let in the example U-Shaped criterion function is taken for C2 and C4. Level criterion function is taken for C1, C3 and C5. Level and U-Shaped criteria are shown in figure 2 and figure 3 respectively.](image-5.png "") 2![Figure 2 : Level Criterion](image-6.png "Figure 2 :") 91![Preference value on performance P](image-7.png "Table 9 : 1") 1![Quantifying Cots Components Selection using Multi Criteria Decision Analysis Method-PR O ME T H E ETable 15 : Positive, negative and net outrank flow Partial ranking of each alternative is shown in figure4and PROMETHEE-2 Complete ranking of each alternative is shown in figure5.](image-8.png "PROMETHEE- 1") 4![Figure 4 : Partial ranking](image-9.png "Figure 4 :") 55![Figure 5 : Complete ranking Profile of each alternative on all criteria is shown in table 16. Table 16 : Profile of alternative ? 1 (a) ? 2 (a) ? 3 (a) ? 4 (a) ? 5 (a) A1 -.125 .250 .125 .250 .375](image-10.png "Figure 5 : 5") 6![Figure 6 : Profile of A1Profile of alternative A2 on all criteria is shown in figure7.](image-11.png "Figure 6 :") 7![Figure 7 : Profile of A2 Profile of alternative A3 on all criteria is shown in figure 8.](image-12.png "Figure 7 :") 8![Figure 8 : Profile of A3](image-13.png "Figure 8 :") 2Grade VGGABVBScore54321Evaluation table is shown in table 3.Table 3 : Evaluation tableC1C2C3C4C50.30.20.10.20.2A132410005A221312004 12 13Table 14 : Degree of preference ?(a,b)? (a,b)A1A2A3A4A5A10.20.10.30.15A2000.30.10A3.15.400.05.35A40.35000A50.150.200Positive, negative and net outrank flow of each alternative is shown in table 15. © 2014 Global Journals Inc. (US) Quantifying Cots Components Selection using Multi Criteria Decision Analysis Method-PR O ME T H E E * A Review of Negotiation Techniques in Component Based Software Engineering JHutchinson GKotonya Software Engineering and Advanced Applications, 2006. SEAA'06. 32nd EUROMICRO Conference on IEEE 2006. August * Component Selection for Component-Based Software Engineering AKaur KSMann International Journal of Computer Applications 2 1 2010 * Weighted Scoring Method (WSM), and Hybrid Knowledge Based System (HKBS) for Software Selection: A Comparative Study AJadhav RSonar Emerging Trends in Engineering and Technology (ICETET) IEEE 2009. 2009 2nd International Conference on * Improving decision support for software component selection through systematic cross-referencing and analysis of multiple decision criteria CBecker MKraxner MPlangg ARauber 46th Hawaii International Conference on IEEE 2013. January. 2013 System Sciences (HICSS) * Analytical Hierarchy Process and PROMETHEE application in measuring object oriented software quality. InAdvanced Computer Science and Information System (ICACSIS AHalim ASudrajat ASunandar IK RArthana SMegawan PMursanto 2011 International Conference on IEEE 2011. December * In Multiple criteria decision analysis: state of the art surveys JPBrans BMareschal 2005 Springer New York PROMETHEE methods * UnHOS: A Method for Uncertainty Handling in Commercial Off-The-Shelf (COTS) Selection HIbrahim AH HElamy BHFar AEberlein International Journal of Energy, Information & Communications 2 3 2011 * COTS-Aware Requirements Engineering and Software Architecting LChung KCooper SCourtney Software Engineering Research and Practice 2004 * DesCOTS: a software system for selecting COTS components GGrau JPCarvallo XFranch CQuer Euromicro Conference IEEE 2004. August. 2004 Proceedings. 30th