Platform Analisis Perbandingan framework php berdasarkan moose ck dan properti kualitas disain menggunakan metode analytic hierarchy process (AHP)

5 With a hierarchy, a complex problem can be decomposed into group-the group who then arranged into a form of hierarchy so that the problem would seem more structured and systematic. Analytic Hierarchy Process AHP has an axiomatic foundation that consists of: 1. Reciprocal Comparison, which means the decision makers must be able to make comparisons and express preferences. Preference itself should qualify reciprocal ie if A is more preferable than B with a scale of x, then B is more preferred than A with a scale of 1: x. 2. Homogenity, which mean a persons preference should be expressed in a limited scale or in other words, the elements can be compared with each other. If this axiom can not be met then the elements being compared are not homogenous and have formed a cluster group elements is new. 3. Independence, which means the preference expressed by assuming that the criteria are not influenced by the existing alternatives but the overall objective. This shows that the pattern of dependence or influence in the AHP model is the direction upwards, meaning the ratio between the elements in one level are influenced by or dependent elements in the above level. 4. Expectations, it means for the purpose of decision making, hierarchical structure is assumed complete. If this assumption is not fulfilled then the decision maker does not use all or objective criteria and the available or required so that decisions taken are considered incomplete. 1. Basic Principles Hierarcy Analytic Process AHP 1. Decomposition Definition of decomposition is to solve problems or divide the elements into a hierarchical model intact into the process of making a decision element, in which each element or elements are interconnected. Figure 1. Structure Hierarchy Source: Journal of Public Universities of North Sumatra 2. Comparative Judgement Comparative judgment conducted an assessment of the relative importance of two elements at a certain level in relation to the level above it. This assessment is the core of AHP because it will affect the priority order of the elements of its elements. 3. Synthesis of Priority Synthesis of priority is done by using the eigen vector method to obtain the relative weights of decision elements. 4. Logical Consistency Logical consistency is an important characteristic of AHP. This is achieved by mengagresikan all eigen vector obtained from various levels of hierarchy and subsequently obtained a weighted composite vector that produces the sequence of decision making. Table 2 this is Saathy scale used in the implementation of the AHP method. As in the previous explanation, the description column to change the words for in accordance with the subject issues. In the last line is the opposite of the value comparison. So as in the example above, if the object A has a value of 3 than the value of B, then the value of B has a value of 1 3 compared to the object A Tujuan Kriteria 1 Alternatif 2 Alternatif 1 Kriteria 2 Kriteria 3 Kriteria 4 Alternatif 3 6 Tabel 2. Skala Saaty Nilai Keterangan 1 Sama penting equal 3 Sedikit lebih penting Moderate 5 Jelas Lebih Penting Strong 7 Sangat Jelas Penting Very Strong 9 Mutlak Lebih Penting Extreme 2,4,6,8 Apabila ragu-ragu antara dua nilai yang berdekatan 11-9 Kebalikan nilai tingkat kepentingan dari skala 1-9

1.5 Research

Methodology In this case study the author will use a PHP 5 framework most requested used by www.phpframeworks.com version. Framework is sorted started from the frequently used by PHP programmers to build web applications, Yii 93 Votes CodeIgniter 88 Votes CakePHP 67 Votes Symfony 58 Votes, Zend 45 Votes. This data was taken on October 9, 2010. Later in the calculation of parameters of CK Moose Depend PHP tool will be used specifically to measure the quality metrics of the PHP programming language. To calculate the value of CK Moose used, the authors use a PHP tool Depend. Depend PHP is a tool used to measure metrics web applications using PHP programming language. According to his official website http:www.pdepend.org small program that shows the analysis based on source code files to be tested. Depend PHP code analysis means the first time took the code from the application and then memparsingnya into the internal data structure that is easy. The data structure is commonly referred to as AST Abstract Sintax Tree, which displays the statement and the different elements that are used to analyze the source code. This measurement is also referred to as software metrics. What is a software metric? Basically the software metrics is something very simple. Software metrics are the sum of several elements or fragments of code found in the source code. As an example of the value of cyclomatic complexity, the method used to obtain its value is by adding a statement of logic, like if, for and so forth into the methods of analysis. Why the author chose to use PHP Depend? The question is can the author replied as follows: 1. PHP Depend highly automated and always objective, this tool only measures the quality of application source code provided. 2. Depend PHP provides a scale depending on the application source code. 3. PHP Depend follow to identify the parts of the software used to analyze the code. 4. Depend PHP also supports some fancy metrics that are useful. Figure 2. Four Main Stages of Software Design Quality Measurement Methods Source: Master Thesis, Information Technology Depok: UI MTI Information Systems Journal, Volume 5, No.1, 2007

1.5.1 Weighting Parameters Moose CK

At this stage of weighting, CK Moose parameters are divided into nine stages. Where the goal is to get the weight of each parameter Moose CK. This is as described in Figure 4.2. Results obtained from the weighting parameters Moose CK should be checked for consistency, it aims to measure the consistency in providing assessment, on a scale of 1-9. 1.5.2 Comparison of Scale Parameters Moose Saathy In CK Comparison of parameters guided by Moose CK Saathy scale. As shown in Table 2. In comparing the parameters of CK Moose should consider the Pembobotan MOOSE CK Evaluasi MOOSE CK Pembobotan Properti Kualitas Evaluasi Properti Kualitas Hasil Evaluasi Keseluruhan Software 7 objectivity of the measurement software. Mapping metrics with objet oriented design elements, Table 3 is one tool that can be used in comparing the parameters of CK Moose, the scoring scale can be adjusted with the value of software design quality measurement objectivity. Table 3. Metric Mapping and Object Oriented Design Element Metric Object Definition Object Attributes Object Commu nication WMC √ √ DIT √ NOC √ RFC √ √ CBO √ LCOM √ Source: MTI UI Thesis Volume 5, No.1, 2007 With preferences such as the table above, obtained by weighting the value of each metric as presented in the table below Table 4. Weight Parameters Moose CK. Rata- rata WMC 0.1149 DIT 0.0565 NOC 0.0312 CBO 0.2396 RFC 0.4617 LCOM 0.0963

1.5.3 Evaluation of Parameters Moose CK

Evaluation parameters of CK Moose is the second stage of software design quality measurement methods. In this stage, CK Moose comparison the same parameters between their respective software. Many of the software or tools that can take measurements Moose CK. Each tool has advantages and disadvantages. Among the tools yan ever tried was the author of PHPUnit, CCLOC, but the best in terms of calculation is a PHP Depend. Depend is a free PHP specific metrics for the PHP programming language. Unlike other software metrics, PHP Depend support to calculate the object-oriented PHP applications. Such as inheritance, coupling, encapsulation, cyclomatic complexity and so forth. This tool is based console, and run the Linux operating system. Installation is easy enough, we can download it via their official website at www.pdepend.net. Then we followed the installation guide correctly, to check whether it has been installed, we need to type pdepend-version on linux terminal console. After going through the calculations using PHP Depend the following results are obtained. Table 5. The number of classes in each of the PHP framework No Framework Jumlah Class 1 Yii 1082 2 CodeIgniter 136 3 CakePHP 460 4 Symfony 2102 5 Zend 2244 Source: Test Result Author Table 6. Results Moose CK parameters in each of the PHP frameworks Faktor Yii CodeIgniter CakePHP Symfony Zend WMC 5.6330 13.6102 17.55 8.5713 10.8395 DIT 0.7874 4.9779 2.3521 1.7093 1.5668 NOC 3.7449 9.3161 11.1717 6.5309 7.7393 CBO 5.7236 13.5220 17.1282 8.7830 11.0374 RFC 5.1007 16.2352 15.8260 7.7621 9.7486 LCOM 5.2107 12.9411 15.4260 7.8411 10.0267 Source: Test Result Author Table 7. Parameter Value Moose On Each PHP Framework WMC DIT NOC CBO RFC LCOM Yii versi 1.0.12 0.3429 0.3766 0.3578 0.3416 0.3550 0.3419 CodeIgn iter versi 1.7.2 0.1299 0.0677 0.1438 0.1446 0.1115 0.1376 CakePH P versi 1.3.3 0.1237 0.1433 0.1199 0.1141 0.1144 0.1154 Symfon y versi 1.4.8 0.2253 0.1972 0.2051 0.2226 0.2333 0.2272 Zend versi 1.10.8 0.1782 0.2151 0.1732 0.1771 0.1857 0.1777 Source: Test Result Author 8

1.5.4 Weighting Design Software Quality Properties

Phase weighting of property in general quality of design software the same procedure with a weighting parameter CK moose. The difference is that the objects compared, namely CK Moose object parameters and properties of software design quality. However, to clarify the overall design quality of software measurement methods, the authors will explain the process of weighting the quality of software design. Table 8. Property Comparison of Quality Design Software Efficie ncy Understa ndability Reusab ility Maintain ability Testabilit y Efficiency 1 14 16 17 Understanda bility 4 1 12 14 Reusability 6 2 1 12 Maintainabil ity Testability 7 4 2 1 Source: MTI UI Thesis Volume 5, No.1, 2007 Here are the results of weight measurement properties of quality design. Table 9. Weight Calculation Results Property Design Quality Faktor Bobot Efficiency 0.0527 Understandability 0.1571 Reusability 0.2865 Maintainability Testability 0.5036 Source: MTI UI Thesis Volume 5, No.1, 2007 1.5.5 Property Evaluation Software Design Quality Evaluation of the quality of software design is the last stage of the four main stages software design quality measurement method. At this stage using the results of the three previous stages of the weighting factor Moose CK, CK Moose outcome evaluation factors and results of the weighting factor of software design quality properties. There are two more stages in the evaluation of properties of software design quality evaluation factor in accordance with the properties of quality software design and calculate the final evaluation of each PHP framework. Table 10. Calculation of Evaluation Factors in Software Design Quality Property Properti Kualitas Framework Yii versi 1.0.12, CodeIgniter versi 1.7.2, CakePHP versi 1.3.3, Symfony versi 1.4.8, Zend versi 1.10.8 Efficiency FE DIT BM DIT + FE NOC BM NOC + FE CBO BM CBO + FE LCOM BM LCOM Understandabil ity FE WMC BM WMC + FE DIT BM DIT + FE RFC BM RFC Reusability FE WMC BM WMC + FE DIT BM DIT + FE NOC BM NOC + FE CBO BM CBO + FE LCOM BM LCOM Maintainability Testability FE WMC BM WMC + FE DIT BM DIT + FE NOC BM NOC + FE RFC BM RFC + FE LCOM BM LCOM Source: MTI UI Thesis Volume 5, No.1, 2007 Factor Evaluation FE and the Weight of Metric BM according to the value selected on the PHP framework. Table 11. Final Evaluation Final Evaluasi Framework Yii versi 1.0.12, CodeIgniter versi

1.7.2, CakePHP versi 1.3.3, Symfony

versi 1.4.8, Zend versi 1.10.8 FE efficiency x BK efficiency + FE understandability x BK understandability + FE reusability x BK reusability + FE maintainabilitytestability x BK maintainabilitytestability Source: MTI UI Thesis Volume 5, No.1, 2007