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