perbaningan php framework dengan expert choice

166

Click here to load reader

Upload: alen-boby

Post on 26-Dec-2015

86 views

Category:

Documents


11 download

TRANSCRIPT

Page 1: Perbaningan PHP Framework Dengan Expert Choice

ANALISIS PERBANDINGAN FRAMEWORK PHP

BERDASARKAN MOOSE CK DAN PROPERTI KUALITAS

DISAIN MENGGUNAKAN METODE ANALYTIC

HIERARCHY PROCESS (AHP)

WAHYU RIFA’I DWI SEPTIAN

106091002976

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH

JAKARTA

2010M/1431H

Page 2: Perbaningan PHP Framework Dengan Expert Choice

iii

PENGESAHAN UJIAN

Skripsi yang berjudul “Analisis Perbandingan Framework PHP Berdasarkan

MOOSE CK dan Properti Kualitas Disain Menggunakan Metode Analytic Hierarchy

Process (AHP)”, telah diuji dan dinyatakan lulus dalam Sidang Munaqosah Fakultas

Sains dan Teknologi Universitas Islam Negeri Syarif Hidayatullah Jakarta, pada hari

Jum’at tanggal 10 Desember 2010. Skripsi ini telah diterima sebagai salah satu syarat

untuk memperoleh gelar Sarjana Komputer pada Program Teknik Informatika

Jakarta, Desember 2010

Tim Penguji,

Tim Pembimbing,

Mengetahui,

Penguji I

Viva Arifin, MMSI

NIP. 19730810 200604 2 005

Pembimbing II

Imam M Shofi, MT

NIP. 19720205 200801 1 010

Pembimbing I

Husni Teja Sukmana, Ph.D

NIP. 19771030 200112 1 003

Penguji II

Yusuf Durrachman, MIT, M.Sc

NIP. 19710522 200604 1 002

Dekan

Fakultas Sains Dan Teknologi

DR. Syopiansyah Jaya Putra, M.Sis

NIP. 19680117 200112 1 001

Ketua Program Studi

Teknik Informatika

Yusuf Durrachman, MIT, M.Sc

NIP. 19710522 200604 1 002

Page 3: Perbaningan PHP Framework Dengan Expert Choice

ii

ANALISIS PERBANDINGAN FRAMEWORK PHP BERDASARKAN

MOOSE CK DAN PROPERTI KUALITAS DISAIN MENGGUNAKAN

METODE ANALYTIC HIERARCHY PROCESS (AHP)

Skripsi

Sebagai Salah Satu Syarat Untuk Memperoleh Gelar

Sarjana Komputer

Fakultas Sains dan Teknologi

Universitas Islam Negeri Syarif Hidayatullah Jakarta

Oleh

Wahyu Rifa’i Dwi Septian

106091002976

Menyetujui,

Pembimbing 1

Husni Teja Sukmana, Ph.D

NIP. 19771030 2001 12 1 003

Pembimbing 2

Imam M Shofi, MT

NIP. 19720205 2008 01 1 010

Mengetahui,

Ketua Program Studi Teknik Informatika

Yusuf Durrachman, MSc, M.IT

NIP. 19710522 2006 04 1 002

Page 4: Perbaningan PHP Framework Dengan Expert Choice

v

Abstrak

WAHYU RIFA’I DWI SEPTIAN, Analisis Perbandingan Framework PHP

Berdasarkan MOOSE CK dan Properti Kualitas Disain Menggunakan Metode

Analytic Hierarchy Process (AHP). Di bawah bimbingan HUSNI TEJA

SUKMANA, Ph.D dan IMAM M. SHOFI, MT.

Keberadaan framework PHP menjadi suatu tantangan tersendiri untuk dicoba

penggunaannya dalam membuat aplikasi berbasis web. Framework PHP yang

sangat banyak tersedia menjadi kendala bagi seseorang untuk memilih

menggunakannya. Karena belum adanya penelitian mengenai perbandingan

framework PHP ini, sehingga penulis mencoba untuk membandingkan dan

mencari kualitas framework PHP terbaik. Sehingga penelitian ini difokuskan

untuk mendapatkan tujuan framework PHP terbaik berdasarkan kualitas disain

modelnya. Dalam penelitian mengenai skripsi ini penulis mencoba

membandingkan 5 framework PHP berdasarkan kualitas disain modelnya dengan

menggunakan parameter MOOSE CK dan properti kualitas disain, kemudian

digabungkan dengan metode Analytic Hierarchy Process (AHP) untuk

menentukan kualitas disain model framework terbaik. Penulis juga menggunakan

tool PHP Depend untuk menghitung nilai MOOSE CK pada masing-masing

framework PHP. Framework PHP tersebut adalah Yii, CodeIgniter, CakePHP,

Symfony dan Zend. Hasil akhir dari penelitian ini menunjukkan bahwa framework

CakePHP memiliki kualitas disain model framework terbaik dibandingkan dengan

framework Yii, CodeIgniter, Symfony dan Zend.

Kata Kunci: framework PHP, Analytic Hierarchy Process (AHP), MOOSE CK,

Properti kualitas disain, PHP Depend.

Jumlah Halaman : 118 halaman

Jumlah Daftar Pustaka : 33 sumber

Page 5: Perbaningan PHP Framework Dengan Expert Choice

vi

Abstract

WAHYU RIFA’I DWI SEPTIAN, Comparative Analysis Framework PHP

Based MOOSE CK and Quality Property Design Method Using Analytic

Hierarchy Process (AHP). Under the guidance of HUSNI TEJA SUKMANA,

Ph.D dan IMAM M. SHOFI, MT.

The existence of the PHP framework becomes a challenge to try its use in creating

web-based applications. The existence of the PHP Framework is very much

available to be obstacles for a person to choose to use it. Due to the lack of

comparative research on this PHP framework, so the author tries to compare and

find the best PHP framework quality. So the research was focused on getting the

best PHP framework objectives based on the quality of the design model. In a

study of this thesis the author tries to compare 5 PHP framework based on the

quality of the design model using the parameters of MOOSE CK and design

quality properties, then combined with the method of Analytic Hierarchy Process

(AHP) to determine the best framework model of design quality. The author also

uses a PHP Depend tool to calculate the value of MOOSE CK Depend on each

PHP framework. PHP Framework is Yii, CodeIgniter, CakePHP, Symfony and

Zend. The final results of this study indicate CakePHP that the various

frameworks have the best quality design framework model compared with Yii

framework, CodeIgniter framework, Symfony framework and Zend framework.

Keywords: framework PHP, Analytic Hierarchy Process (AHP), MOOSE CK,

Properti kualitas disain, PHP Depend.

Total Pages : 118 pages

Total References : 33 source

Page 6: Perbaningan PHP Framework Dengan Expert Choice

52

Gambar 3.2. Kerangka Berpikir I

Menggabungkan metode AHP, parameter MOOSE CK

dan parameter properti kualitas disain sofware

Studi literatur mengenai parameter MOOSE CK, parameter

properti kualitas software dan metode AHP

Menentukan properti kualitas disain software

Menentukan korelasi antara MOOSE CK dan properti

kualitas disain software

3.2. Kerangka Berpikir

I. Pembobotan MOOSE CK

Perbandingan nilai skala Saathy pada parameter MOOSE CK

Menjumlahkan total pada masing-masing kolom

Membagi masing-masing cell dengan jumlah total sesuai

dengan kolom

Menghitung rata-rata pada setiap baris

Hasil faktor

Pembobotan

Menghitung Weighted Sum Vector

Menghitung Consistency Vector

Menghitung Consistency Ratio

Menghitung Consistency Index

Menghitung Lambda

Cek

Consistency Ratio

Faktor pembobotan

parameter MOOSE

CK dapat digunakan

CR < 0.1

CR >= 0.1

II. Evaluasi MOOSE CK

Menghitung parameter Moose CK (WMC, DIT,

NOC, CBO, FC, LCOM) pada masing-masing

framework dengan tool PHP Depend

Data parameter WMC, DIT,

NOC, CBO, RFC, LCOM pada

masing-masing framework

Perbandingan nilai parameterMOOSE CK pada

masing-masing framework

Mnghitung total nilai parameter MOOSE CK

pada masing-masing framework

Menghitung rata-rata masing-masing baris

Membagi masing-masing cell dengan jumlah total

sesuai dengan kolom

Hasil faktor evaluasi MOOSE CK pada masing-

masing framework

Page 7: Perbaningan PHP Framework Dengan Expert Choice

53

Gambar 3.2. Kerangka Berpikir II (lanjutan)

III. Pembobotan Properti Kualitas IV. Evaluasi Properti Kualitas

II. Evaluasi MOOSE CK

Perbandingan nilai skala Saathy pada properti

kualitas disain software

Menjumlahkan total pada masing-masing kolom

Membagi masing-masing cell dengan jumlah total

sesuai dengan kolom

Menghitung rata-rata pada setiap baris

Hasil faktor

Pembobotan

Menghitung Weighted Sum Vector

Menghitung Consistency Vector

Menghitung Consistency Ratio

Menghitung Consistency Index

Menghitung Lambda

Cek

Consistency

Ratio

Faktor pembobotan properti kualitas

disain softwaredapat

digunakan

CR < 0.1

CR >= 0.1

Hasil faktor pembobotan

MOOSE CK pd masing-

masing framework

Menghitung faktor evaluasi sesuai dengan

properti kualitas disain software

Hasil kualitas dari

keseluruhan framework

Menghitung final evaluasi masing-masing

software

Hasil faktor evaluasi

MOOSE CK pd masing-

masing framework

Hasil faktor evaluasi

properti kualitas disain

software

Hasil faktor bobot

properti kualitas

disain software

Menerapkan metode yang telah dirumuskan pada sebuah studi kasus

Hasil Evaluasi Keseluruhan

Software

Menggabungkan metode AHP, parameter MOOSE CK

dan parameter properti kualitas disain sofware

Page 8: Perbaningan PHP Framework Dengan Expert Choice

vi

Page 9: Perbaningan PHP Framework Dengan Expert Choice

vii

KATA PENGANTAR

Alhamdulillahirobbil’alamin, penulis haturkan segala puja dan puji kepada

Alloh SWT, yang telah memberikan begitu banyak nikmat dan karunianya kepada

penulis. Shalawat serta salam semoga selalu tercurahkan kepada Nabi Muhammad

SAW, kepada para keluarganya, para sahabatnya hingga kepada umatnya hingga

Yaumil Akhir.

Rasa syukur yang teramat dalam terus penulis ucapkan dalam penyelesaian

Skripsi ini. Skripsi ini penulis buat sebagai syarat kelulusan dalam menempuh

pendidikan jenjang Strata-1 (S1) di Universitas Islam Negeri Syarif Hidayatullah

Jakarta. Selain itu penulis berharap apa yang penulis teliti, yang dijelaskan dalam

skripsi ini dapat dipergunakan dengan baik oleh semua pihak yang membutuhkan,

sehingga perkembangan ilmu pengetahuan dan teknologi khususnya di Program

Studi Teknik Informatika UIN Syarif Hidayatullah Jakarta dapat lebih maju dan

lulusannya dapat bekerja secara kooperatif dengan semua elemen informatika dari

seluruh dunia. Secara khusus penulis ingin menyampaikan terima kasih kepada:

1. Bapak DR. Syopiansyah Jaya Putra, M.Sis selaku Dekan Fakultas Sains dan

Teknologi yang telah memberikan suatu komitmen, dorongan, dan program

pendidikan sesuai kebutuhan mahasiswanya.

2. Bapak Yusuf Durachman, M.Sc, MIT selaku Ketua Program Studi Teknik

Informatika yang telah memberikan suatu komitmen, dorongan dan program

pendidikan sesuai kebutuhan mahasiswanya.

3. Bapak Husni Teja Sukmana, Ph.D selaku dosen pembimbing I yang telah

memberikan dukungan baik secara moril maupun teknis.

4. Bapak Imam M Shofi, MT selaku dosen pembimbing II yang telah

memberikan dukungan baik secara moril maupun teknis.

5. Kepada Ibu Mahmudah dari Bagian Beasiswa untuk mahasiswa UIN Syarif

Hidayatullah Jakarta, yang telah banyak membantu penulis dan mendukung

untuk selalu semangat dalam belajar dan jangan pernah putus asa. Terimakasih

juga penulis sampaikan kepada semua dosen TI/SI yang mengajarkan banyak

ilmu ke penulis.

Page 10: Perbaningan PHP Framework Dengan Expert Choice

viii

6. Umi (Nuzullah) dan Ayah (Moh. Hasan Salam), orangtua penulis yang begitu

banyak memberikan dukungan moril, materil dan doanya kepada penulis,

sehingga penulis dapat meyelesaikan Praktek Kerja Lapangan ini dengan baik,

Alhamdulillah. Semoga kalian selalu dalam lindungan-Nya dan senantiasa

diberikan kesehatan, Amin. Terima kasih atas bimbingan kalian selama ini

kepada penulis.

7. Kepada saudara-saudaraku seperjuangan, Ganis Miftahuddin (Kakak), Arief

Rahmansyah (Deaman) dan Mila Robiah Amalia (Mila) yang telah

memberikan dukungannya untuk penulis sehingga penulis dapat sabar dalam

menyelesaikan Praktek Kerja Lapangan dan penulis laporan ini, dapat menjadi

teman curhat yang baik dan menghibur. Semoga Alloh SWT membalas

kebaikan kalian.

8. Kepada seseorang yang selalu berusaha menyemangati penulis dalam

menyelesaikan Skripsi ini, Herawati Am.Keb. Terimakasih atas dukungannya,

semoga Alloh SWT membalas kebaikanmu dan senantiasa memberikan yang

terbaik untukmu. Semoga tetap Istiqomah dan jangan pernah menyerah

dengan keadaan.

9. Seluruh anggota UswahTech, semoga kalian mendapatkan apa yang dicita-

citakan, Amin. Kepada seluruh teman – teman KKN 76, teman - teman Teknik

Informatika kelas D angkatan 2006 dan Seluruh kawan-kawan jurusan Teknik

Informatika dan Sistem Informasi angkatan 2006 UIN Syarif Hidayatullah

Jakarta, tetaplah semangat menggapai cita-citamu.

Kesempurnaan hanyalah milik Alloh Ta’ala, penulis mohon maaf yang

sebesar-besarnya jika adanya kekurangan dalam meyelesaikan Skripsi ini,

begitu banyak kesalahan yang terjadi baik disengaja maupun tidak disengaja.

Akhirnya, semoga laporan Skripsi ini bermanfaat.

Jakarta, 13 Desember 2010

Wahyu Rifa’i Dwi Septian

Page 11: Perbaningan PHP Framework Dengan Expert Choice

ix

DAFTAR ISI

Halaman

HALAMAN JUDUL .......................................................................................... . i

HALAMAN PERSETUJUAN .......................................................................... . ii

HALAMAN PENGESAHAN ............................................................................. iii

HALAMAN PERNYATAAN ............................................................................. iv

ABSTRAK ........................................................................................................... v

KATA PENGANTAR ........................................................................................ vii

DAFTAR ISI ...................................................................................................... ix

DAFTAR GAMBAR ......................................................................................... xiv

DAFTAR TABEL .............................................................................................. .xv

DAFTAR ISTILAH ........................................................................................... .xx

BAB I PENDAHULUAN

1.1. Latar Belakang .............................................................................. 1

1.2. Rumusan Masalah ......................................................................... 3

1.3. Batasan Masalah ............................................................................ 4

1.4. Tujuan dan Manfaat ....................................................................... 5

1.4.1. Tujuan ................................................................................. 5

1.4.2. Manfaat ............................................................................... 5

1.5. Metodologi Penelitian ................................................................... 7

1.6. Sistematika Penulisan .................................................................... 7

Page 12: Perbaningan PHP Framework Dengan Expert Choice

x

BAB II LANDASAN TEORI

2.1. Metrics for Object Oriented Software Engineering Chidamber,

Kemerer (MOOSE CK) .............................................................. .11

2.1.1. Weighted Methods Per Class (WMC)................................. 11

2.1.2. Depth of Inheritance Tree (DIT) ......................................... 12

2.1.3. Number of Children (NOC) ................................................ 13

2.1.4. Coupling Between Object Classes(CBO)............................ 13

2.1.5. Response for a Class (RFC) ................................................ 14

2.1.6. Lack of Cohesion Method (LCOM) .................................... 14

2.2. Properti Kualitas Disain Software ................................................. 15

2.2.1. Hubungan Properti Kualitas Disain Software dan Parameter

MOOSE CK ........................................................................ 17

2.2.2. Pengaruh Parameter MOOSE CK pada Properti Kualitas

Disain Software .................................................................. 19

2.3. Analytic Hierarchy Process (AHP) ............................................... 21

2.3.1. Prinsip-Prinsip Dasar Analytic Hierarchy Process

(AHP). ................................................................................ 24

2.4. Mengenal Framework PHP Yang Digunakan Dalam Penelitian .. 37

2.4.1. Framework Yii ..................................................................... 38

2.4.2. Framework CodeIgniter ...................................................... 39

2.4.3. Framework CakePHP ......................................................... 40

2.4.4. Framework Symfony............................................................ 40

2.4.5. Framework Zend ................................................................. 40

Page 13: Perbaningan PHP Framework Dengan Expert Choice

xi

2.5. PHP Depend .................................................................................. 41

2.5. Studi Sejenis .................................................................................. 43

BAB III METODOLOGI PENELITIAN PERBANDINGAN

3.1. Tahapan-Tahapan Metodologi Penelitian ................................... 45

3.1.1. Pendalaman Mengenai Parameter MOOSE CK,

Parameter Properti Kualitas dan Metode AHP ................. 46

3.1.2. Menentukan Properti Kualitas Disain Software ............... 47

3.1.3. Menentukan Korelasi Antara MOOSE CK dengan

Properti Kualitas Disain Software ..................................... 48

3.1.4. Menggabungkan Metode AHP, Parameter MOOSE CK

dan Parameter Properti Kualitas Disain Software ............. 49

3.1.5 Menerapkan Metode yang Telah Dirumuskan pada Sebuah

Studi Kasus ........................................................................ 50

3.2. Kerangka Berpikir ..................................................................... 52

BAB IV ANALISIS PENELITIAN

4.1. Pembobotan Parameter MOOSE CK ........................................ 55

4.1.1. Perbandingan Nilai Skala Saaty pada Parameter MOOSE

CK .................................................................................... 57

4.1.2. Menjumlahkan Total pada Masing-Masing Kolom ......... 58

4.1.3. Membagi Masing-Masing Cell Dengan Jumlah Total ..... 59

4.1.4. Menghitung Rata-Rata Pada Setiap Baris ........................ 60

4.1.5. Menghitung Weighted Sum Vector................................... 61

Page 14: Perbaningan PHP Framework Dengan Expert Choice

xii

4.1.6. Menghitung Consistency Vector ...................................... 62

4.1.7. Menghitung Lambda ........................................................ 62

4.1.8. Menghitung Consistency Index ........................................ 63

4.1.9. Menghitung Consistency Ratio ........................................ 63

4.2. Evaluasi Parameter MOOSE CK .............................................. 63

4.2.1. Pengukuran Parameter MOOSE CK ................................ 64

4.2.2. Perbandingan Nilai Parameter MOOSE CK pada Masing

Masing Software .............................................................. 66

4.2.3. Menghitung Total Nilai Parameter MOOSE CK pada

Masing-Masing Software ................................................ 69

4.2.4. Membagi Masing-Masing Cell dengan Jumlah Total ...... 70

4.2.5. Menghitung Rata-Rata Pada Masing-Masing Baris ......... 70

4.2.6. Menghitung DIT, NOC, CBO, RFC LCOM .................... 72

4.2.6.1. Perhitungan Faktor Evaluasi DIT........................ 72

4.2.6.2. Perhitungan Faktor Evaluasi NOC ...................... 75

4.2.6.3. Perhitungan Faktor Evaluasi CBO ...................... 79

4.2.6.4. Perhitungan Faktor Evaluasi RFC ....................... 83

4.2.6.5. Perhitungan Faktor Evaluasi LCOM ................... 86

4.3. Pembobotan Properti Kualitas Disain ....................................... 90

4.3.1. Perbandingan Nilai Skala Saaty Pada Properti Kualitas

Disain Software ................................................................ 92

4.3.2. Menjumlahkan Total Pada Masing-Masing Kolom ......... 92

4.3.3. Membagi Masing-Masing Cell dengan Jumlah Total ...... 93

Page 15: Perbaningan PHP Framework Dengan Expert Choice

xiii

4.3.4. Menghitung Rata-Rata pada Setiap Baris ........................ 94

4.3.5. Menghitung Weighted Sum Vector................................... 95

4.3.6. Menghitung Consistency Vector ...................................... 96

4.3.7. Menghitung Lambda ........................................................ 97

4.3.8. Menghitung Consistency Index ........................................ 97

4.3.9. Menghitung Consistency Ratio ........................................ 97

4.4. Evaluasi Properti Kualitas Disain ........................................... .98

4.4.1. Menghitung Faktor Evaluasi Sesuai dengan Properti

Kualitas Disain Software ................................................ .99

4.4.2. Menghitung Final Evaluasi Masing-Masing

Framework .................................................................. ...101

BAB V PENUTUP

5.1. Kesimpulan .............................................................................. 112

5.2. Saran ........................................................................................ 113

DAFTAR PUSTAKA ....................................................................................... 115

Page 16: Perbaningan PHP Framework Dengan Expert Choice

xiv

DAFTAR GAMBAR

Halaman

Gambar 2.1. Pemetaan Macam-Macam Metric ................................................... 10

Gambar 2.2. McCall’s Software Quality Factors ................................................ 15

Gambar 2.3. Struktur Hirarki ................................................................................. 25

Gambar 3.1. Metodologi Penelitian .............................................................................. 45

Gambar 3.2. Kerangka Berpikir I .................................................................................. 52

Gambar 3.2. Kerangka Berpikir II (lanjutan) ................................................................ 53

Gambar 4.1. Empat Tahapan Utama Metode Pengukuran Kualitas Disain Software ... 55

Gambar 4.2. Proses Pembobotan Parameter MOOSE CK ............................................ 56

Gambar 4.3. Proses Evaluasi Parameter MOOSE CK ................................................. 64

Gambar 4.4. Proses Pembobotan Properti Kualitas Disain Software ............................ 91

Gambar 4.5. Prosedur Evaluasi Properti Kualitas Disain Software ............................ .99

Gambar 4.6. Nilai Evaluasi Properti Kualitas Disain pada Masing-Masing

Framework PHP ...................................................................................... 108

Gambar 4.7. Nilai Final Evaluasi Properti Kualitas Disain pada Masing-

Masing Framework PHP ....................................................................... 110

Page 17: Perbaningan PHP Framework Dengan Expert Choice

xv

DAFTAR TABEL

Halaman

Tabel 2.1. Pemetaan Model Kualitas Software Antara ISO 1926-1,

McCall, Bhoem ................................................................................... 16

Tabel 2.2. Hubungan Properti Kualitas Software dan Parameter Metric ............. 18

Tabel 2.3. Hubungan dan Pengaruh Parameter Metric ........................................ 20

Tabel 2.4. Skala Saaty .......................................................................................... 30

Tabel 2.5. Perbandingan Antara Sistem 1, Sistem 2 dan Sistem 3 ...................... 31

Tabel 2.6. Menjumlahkan pada Masing-Masing Kolom ..................................... 31

Tabel 2.7. Hasil Pembagian Masing-Masing Cell dengan Jumlah Total ............. 32

Tabel 2.8. Faktor Evaluasi pada Parameter Hardware ........................................ 32

Tabel 2.9. Weighted Sum Vector .......................................................................... 33

Tabel 2.10. Consistency Vector ............................................................................. 33

Tabel 2.11. Random Index .................................................................................... 34

Tabel 2.12. Hasil Faktor Evaluasi ......................................................................... 35

Tabel 2.13. Perbandingan Hardware, Software dan Vendor Support ................... 35

Tabel 2.14. Jumlah Total pada Masing-Masing Kolom ........................................ 36

Tabel 2.15. Hasil Pembagian Masing-masing Cell dengan Jumlah Total ............ 36

Tabel 2.16. Hasil Rata-Rata Pada Masing-Masing Baris ...................................... 36

Tabel 2.17. Hasil Pembobotan Parameter ............................................................. 37

Tabel 2.18. Final Evaluasi ..................................................................................... 37

Tabel 2.19. Daftar Studi Sejenis ........................................................................... 43

Page 18: Perbaningan PHP Framework Dengan Expert Choice

xvi

Tabel 3.1. Hubungan Properti Kualitas dan MOOSE CK yang akan

Digunakan Dalam Penelitian ............................................................ 48

Tabel 3.2. Hubungan dan Pengaruh Parameter MOOSE CK pada

Properti Kualitas Disain Software yang akan digunakan

dalam Penelitian ................................................................................ 49

Tabel 4.1. Pemetaan Metric dengan Object Oriented Design Element.............. 57

Tabel 4.2. Hasil dari Perbandingan Antara Parameter ....................................... 58

Tabel 4.3. Jumlah Total pada Masing-Masing Kolom ....................................... 59

Tabel 4.4. Membagi Masing-Masing Cell dengan Jumlah Total ....................... 59

Tabel 4.5. Hasil Pembagian dari Masing-Masing Cell ...................................... 60

Tabel 4.6. Rata-Rata pada Masing-Masing Parameter MOOSE CK

Sebagai Bobot Parameter MOOSE CK............................................. 60

Tabel 4.7. Weighted Sum Vector ........................................................................ 61

Tabel 4.8. Consistency Vector ............................................................................ 62

Tabel 4.9. Jumlah Class pada Masing-Masing Framework PHP ...................... 65

Tabel 4.10. Hasil Parameter MOOSE CK pada Masing-Masing

Framework PHP ............................................................................... 66

Tabel 4.11. Consistency Vector ............................................................................ 67

Tabel 4.12. Perbandingan Parameter WMC pada Masing-Masing

Framework PHP .............................................................................. 68

Tabel 4.13. Hasil Perbandingan Parameter WMC pada Masing-

Masing Framework PHP ................................................................. 68

Tabel 4.14. Jumlah Total pada Masing-Masing Framework PHP ..................... 69

Page 19: Perbaningan PHP Framework Dengan Expert Choice

xvii

Tabel 4.15. Membagi Cell dengan Jumlah Total ................................................ 70

Tabel 4.16. Menghitung Rata-Rata Tiap Baris ................................................... 71

Tabel 4.17. Perbandingan Parameter DIT pada Masing-

Masing Framework PHP ................................................................ 72

Tabel 4.18. Hasil Perbandingan Parameter DIT pada Masing-

Masing Framework PHP ................................................................. 73

Tabel 4.19. Jumlah Total pada Masing-Masing Framework PHP ..................... 73

Tabel 4.20. Membagi Cell dengan Jumlah Total ................................................ 74

Tabel 4.21. Menghitung Rata-Rata Tiap Baris ................................................... 74

Tabel 4.22. Perbandingan Parameter NOC pada Masing-

Masing Framework PHP ................................................................ 75

Tabel 4.23. Hasil Perbandingan Parameter NOC pada Masing-

Masing Framework PHP ................................................................. 76

Tabel 4.24. Jumlah Total pada Masing-Masing Framework PHP ..................... 77

Tabel 4.25. Membagi Cell dengan Jumlah Total ................................................ 78

Tabel 4.26. Menghitung Rata-Rata Tiap Baris ................................................... 78

Tabel 4.27. Perbandingan Parameter CBO pada Masing-

Masing Framework PHP ................................................................ 79

Tabel 4.28. Hasil Perbandingan Parameter CBO pada Masing-

Masing Framework PHP ................................................................. 80

Tabel 4.29. Jumlah Total pada Masing-Masing Framework PHP ..................... 80

Tabel 4.30. Membagi Cell dengan Jumlah Total ................................................ 81

Tabel 4.31. Menghitung Rata-Rata Tiap Baris ................................................... 81

Page 20: Perbaningan PHP Framework Dengan Expert Choice

xviii

Tabel 4.32. Perbandingan Parameter RFC pada Masing-

Masing Framework PHP ................................................................ 83

Tabel 4.33. Hasil Perbandingan Parameter RFC pada Masing-

Masing Framework PHP ................................................................. 83

Tabel 4.34. Jumlah Total pada Masing-Masing Framework PHP ..................... 84

Tabel 4.35. Membagi Cell dengan Jumlah Total ................................................ 85

Tabel 4.36. Menghitung Rata-Rata Tiap Baris ................................................... 85

Tabel 4.37. Perbandingan Parameter LCOM pada Masing-

Masing Framework PHP ................................................................ 86

Tabel 4.38. Hasil Perbandingan Parameter LCOM pada Masing-

Masing Framework PHP ................................................................. 87

Tabel 4.39. Jumlah Total pada Masing-Masing Framework PHP ..................... 88

Tabel 4.40. Membagi Cell dengan Jumlah Total ................................................ 88

Tabel 4.41. Menghitung Rata-Rata Tiap Baris ................................................... 89

Tabel 4.42. Nilai Parameter MOOSE pada Masing-Masing

Framework PHP .............................................................................. 90

Tabel 4.43. Perbandingan Properti Kualitas Disain Software ............................. 92

Tabel 4.44. Penjumlahan Total pada Masing-Masing Kolom ............................ 93

Tabel 4.45. Pembagian Masing-Masing Cell dengan Jumlah Total ................... 93

Tabel 4.46. Hasil Pembagian Masing-Masing Cell dengan Jumlah Total ........... 94

Tabel 4.47. Perhitungan Rata-Rata Properti Kualitas Disain ............................... 94

Tabel 4.48. Hasil Perhitungan Bobot Properti Kualitas Disain ........................... 95

Tabel 4.49. Weighted Sum Vector ........................................................................ 96

Page 21: Perbaningan PHP Framework Dengan Expert Choice

xix

Tabel 4.50. Consistency Vector ............................................................................ 96

Tabel 4.51. Perhitungan Faktor Evaluasi pada Properti Kualitas

Disain Software ............................................................................ ..100

Tabel 4.52. Final Evaluasi .................................................................................. 101

Tabel 4.53. Perhitungan Faktor Evaluasi pada Properti Kualitas

Disain Framework Yii ..................................................................... 102

Tabel 4.54. Perhitungan Faktor Evaluasi pada Properti Kualitas

Disain Framework CodeIgniter ...................................................... 103

Tabel 4.55. Perhitungan Faktor Evaluasi pada Properti Kualitas

Disain Framework CakePHP .......................................................... 104

Tabel 4.56. Perhitungan Faktor Evaluasi pada Properti Kualitas

Disain Framework Symfony ............................................................ 105

Tabel 4.57. Perhitungan Faktor Evaluasi pada Properti Kualitas

Disain Framework Zend .................................................................. 106

Tabel 4.58. Nilai Evaluasi Properti Kualitas Disain pada

Masing-Masing Framework PHP ................................................... 107

Tabel 4.59. Hasil Perhitungan Final Evaluasi .................................................... 109

Tabel 4.60. Hasil Final Evaluasi Properti Kualitas Disain pada

Masing-Masing Framework PHP ................................................... 111

Page 22: Perbaningan PHP Framework Dengan Expert Choice

xx

DAFTAR ISTILAH

1. Analytic Hierarchy Process (AHP) : AHP adalah metode yang digunakan

untuk mengambil sebuah tujuan terbaik dengan melibatkan banyak faktor

dan juga kriteria, yang mengacu pada nilai konsistensi.

2. Consistency Index : Menghitung nilai konsistensi yang ada kemudian

dibandingan dengan rasio index panduan.

3. Consistency Ratio : Membagi nilai consistency index dengan tabel random

Index panduan.

4. Consistency Vector : Menghitung konsistensi nilai dari hasil perhitungan

weighted sum vector.

5. Framework : Merupakan kerangka kerja yang terdiri dari kumpulan class

fungsi-fungsi yang dapat digunakan kembali untuk keperluan sistem atau

sub sistem lainnya.

6. Hardware : Perangkat keras merupakan slah satu elemen dari sistem

komputer, suatu alat yang bisa diraba oleh manusia secara langsung, yang

mendukung proses komputerisasi.

7. MOOSE CK : Metric For Object Oriented Software Engineering-

Chidamber Kemerer, salah satu parameter yang digunakan untuk

mengukur metric sebuah aplikasi dilihat dari aspek orientasi kualitas

model disainnya, parameter ini ditemukan oleh Chidamber dan Kemerer.

Page 23: Perbaningan PHP Framework Dengan Expert Choice

xxi

8. Multifactor Evaluation Process (MFEP) : Metode yang digunakan untuk

mengambil sebuah tujuan atau keputusan dengan melibatkan banyak

faktor dan kriteria, namun tidak ada cek konsistensi.

9. Object Oriented Programming : Merupakan paradigma dalam membuat

program dengan menggunakan objek data yang di dalamnya terdiri dari

metode dan fungsi yang saling berinteraksi untuk membuat disain aplikasi

atau program.

10. PHP Depend : Tool yang digunakan untuk menghitung nilai MOOSE CK

pada masing-masing farmework PHP.

11. Properti Kualitas Disain : Parameter untuk menghitung kualitas sebuah

disain software berdasarkan aspek object oriented design model.

12. Software : Perngkat lunak adalah istilah umum untuk data yang diformat

dan disimpan secara digital, termasuk program komputer, dokumentasinya

dan berbagai informasi yang bisa dibaca dan ditulis oleh komputer, dengan

kata lain bagian dari sistem komputer yang tidak berwujud.

13. Software Metric : Ukuran beberapa buah properti spesifikasi dari bagian

software/aplikasi tersebut.

14. web : Sekumpulan sistem yang saling terkait dengan dokumen yang

memiliki tautan yang dapat diakses dengan internet melalui web browser.

15. Weighted Sum Vector : Merupakan nilai rata-rata dari tiap baris

perhitungan bobot

Page 24: Perbaningan PHP Framework Dengan Expert Choice

1

BAB I

PENDAHULUAN

1.1. Latar Belakang

Keberadaan teknologi informasi saat ini memegang peranan yang

sangat signifikan, apalagi untuk perusahaan-perusahaan berskala

menengah keatas. Tidak dapat dipungkiri, hal tersebut terjadi karena

dengan teknologi informasi ini akan dapat menunjang dan menaikkan

income perusahaan, sehingga setiap perusahaan mencoba untuk

menerapkan teknologi informasi di dalamnya. Sebagai contohnya adalah

website e-commerce perusahaan ataupun aplikasi-aplikasi untuk

menunjang kegiatan perusahaannya, seperti aplikasi akunting.

Pemilihan aplikasi yang sesuai dengan kebutuhan untuk menjawab

permasalahan yang ada, menjadi hal yang harus sangat diperhatikan.

Karena hal ini dapat menyebabkan baik buruknya suatu kinerja dari

perusahaan yang bersangkutan dalam menjalankan bisnisnya. Akan terasa

lebih rumit lagi jika aplikasi yang ditawarkan sangatlah beragam

macamnya.

Dalam penelitian tugas akhir ini, penulis mencoba untuk

menggunakan metode yang ada untuk diterapkan dalam dunia informatika

dalam hal pemilihan software framework yang terbaik. Namun tentu saja

metode ini tidak terbatas pada dunia teknologi informasi, tapi juga dalam

hal lainnya. Sebagai contoh metode ini juga dapat digunakan dalam

Page 25: Perbaningan PHP Framework Dengan Expert Choice

2

perbandingan kelayakan jalan beton dan aspal atau juga dapat dijadikan

sebagai alat bantu pengambilan keputusan pemilihan calon tenaga kerja.

Dalam penelitian tugas akhir ini penulis mencoba untuk

membandingkan kualitas disain software pada framework PHP. Alasan

mengapa penulis meneliti kualitas disain software, karena disain sebuah

aplikasi software sangat mempengaruhi kinerja/performa dari sebuah

software tersebut, baik itu aplikasi dektop maupun aplikasi web.

Beberapa riset terdahulu telah menghasilkan alat ukur kualitas

software yang diwujudkan dalam beberapa parameter-parameter seperti

MOOD, MOOD2 (Metric for Object Oriented Design) dan MOOSE

(Metric for Object Oriented Software Engineering). Parameter ukuran

kualitas software ini biasa disebut dengan Object Oriented Metric (OO

Metric).

Dalam penerapan OO Metric, kualitas software diinterpretasikan

dalam parameter-parameter yang sesuai dengan OO Metric yang

digunakan. Tetapi nilai-nilai dari parameter tersebut belum cukup untuk

menentukan kualitas software mana yang lebih baik dari software yang

lain, sehingga diperlukan metode untuk mengkombinasikan keseluruhan

nilai tersebut menjadi sebuah nilai yang menginterpretasikan kualitas

software relatif terhadap software yang lain dalam domain aplikasi/fungsi

yang sama.

Page 26: Perbaningan PHP Framework Dengan Expert Choice

3

Pada penelitian ini penulis mencoba untuk mengambil 5 contoh

framework PHP yang paling banyak diminati oleh programmer web

menurut versi phpframeworks.com.

Kelima framework tersebut akan diukur dan dibuat peringkat

berdasarkan penilaian secara objektif dari hasil nilai kuantitatif MOOSE

CK (Metric for Object Oriented Software Engineering, Chidamber,

Kemerer), properti kualitas dan diolah menggunakan metode Analytic

Hierarcy Process (AHP).

1.2. Rumusan Masalah

1. Dapatkah sebuah framework PHP memberikan kontribusi yang

baik dalam pemrograman, khususnya aplikasi web?

2. Apakah dari sudut pandang kualitas disain model mempengaruhi

kualitas sebuah framework PHP?

3. Mengapa dibutuhkan pengukuran kualitas disain model sebuah

framework PHP?

4. Bagaimana cara mengukur kualitas disain model sebuah

framework PHP?

5. Framework PHP manakah yang paling baik berdasarkan kualitas

disain modelnya?

Page 27: Perbaningan PHP Framework Dengan Expert Choice

4

1.3. Batasan Masalah

Berdasarkan penjelasan dari latar belakang diatas, penggunaan OO

Metric saja tidak cukup untuk menentukan kualitas suatu software dengan

software yang lainnya. Sehingga diperlukan metode umum tambahan yang

dapat menggabungkan parameter-parameter yang dihasilkan OO metric

untuk diolah sehingga memberikan sebuah nilai kualitas software yang

bersangkutan. Sehingga metode ini juga dapat dipakai oleh orang yang

ingin mengevaluasi software lainnya, namun disarankan dengan domain

yang sama. Setelah didapatkan nilai kualitasnya maka akan dapat dibuat

peringkat software mana yang memiliki nilai kualitas terbaik.

Banyak faktor yang dapat mempengaruhi hasil dari penelitian ini,

seperti jenis OO Metric, tool yang digunakan, jenis aplikasi yang

dievaluasi dan masih banyak faktor lain yang mempengaruhinya. Oleh

karena itu ruang lingkup penelitian ini adalah sebagai berikut:

1. Studi kasus akan menggunakan aplikasi framework PHP yang

sudah cukup dikenal dan banyak diminati oleh para programmer

web versi www.phpframeworks.com. Hal ini karena framework

PHP telah menerapkan konsep Object Oriented Programming,

seperti kita tahu bahwa membuat suatu koding pada saat sekarang

bukanlah seperti spaghety code lagi. Sehingga muncul kemudahan

dalam membangun aplikasi web dengan framework yang telah

disediakan. Disamping itu penelitian mengenai perbandingan

Page 28: Perbaningan PHP Framework Dengan Expert Choice

5

disain kualitas antara aplikasi web masih tergolong sangat jarang

jika dibandingkan dengan aplikasi desktop.

2. Pengukuran kualitas disain software menggunakan parameter

MOOSE CK dan tool PHP Depend. Pada saat ini telah banyak OO

Metric seperti MOOD, MOOD2 dan lain-lainnya. MOOSE CK

sengaja dipilih karena dari penelitian sebelumnya telah

menghasilkan pemetaan antara MOOSE CK dan properti kualitas.

PHP Depend dipilih karena parameter yang dimilikinya sebagian

besar sama dengan parameter MOOSE CK.

1.4. Tujuan dan Manfaat

1.4.1. Tujuan

Tujuan dari membandingkan kualitas kelima framework

tersebut adalah untuk mengetahui kualitas disain software dari

kelima framework, manakah yang paling baik. Sehingga akan

dapat memberikan rekomendasi kepada programmer web dalam

membangun aplikasi web menggunakan framework PHP.

1.4.2. Manfaat

Dari penelitian tugas akhir ini diharapkan memberikan nilai

manfaat diantaranya adalah sebagai berikut:

Page 29: Perbaningan PHP Framework Dengan Expert Choice

6

Bagi Sivitas Akademik Fakultas Sains dan Teknologi :

1. Dapat memberi rekomendasi manakah framework yang

paling baik digunakan, khsusunya dalam membangun

aplikasi web.

2. Metode yang penulis pakai dapat dipergunakan untuk

menganalisis kembali software yang diiginkan dan tentunya

yang memiliki domain atau fugsi yang sama.

3. Dapat menjadi referensi dalam pembelajaran untuk mengukur

kualitas disain software yang lainnya, baik itu aplikasi

desktop maupun aplikasi web.

Bagi Penulis :

1. Menerapkan ilmu-ilmu yang diperoleh selama kuliah.

2. Membandingkan teori dan pendapat yang ada dengan

keadaan sebenarnya.

3. Mengetahui ketiga framework PHP mana yang terbaik dalam

hal kualitas disainnya.

Bagi Mahasiswa :

1. Dapat dijadikan referensi untuk menggali informasi

mengenai framework PHP yang terbaik, khususnya dalam

domain aplikasi web.

Page 30: Perbaningan PHP Framework Dengan Expert Choice

7

2. Memberikan pengetahuan umum mengenai framework PHP

secara lebih rinci.

1.5. Metodologi Penelitian

Dalam pembuatan laporan tugas akhir ini, penulis menggunakan

metode penelitian kepustakaan (Library Research). Metode penelitian ini

dengan menggunakan buku-buku, jurnal atau paper yang berhubungan

dengan permasalahan yang akan dibahas dalam penulisan laporan tugas

akhir ini. Selain itu penulis juga menggunakan sarana internet untuk

mendapatkan informasi mengenai topik tugas akhir seperti artikel yang

berhubungan dengan topik, milis (mailing list) pemrograman web, forum-

forum diskusi, maupun chatting dengan praktisi pemrograman web yang

bersangkutan.

1.6. Sistematika Penulisan

Sistematika Penulisan laporan ini adalah sebagai berikut :

BAB I : PENDAHULUAN

Bab ini adalah bab pendahuluan. Pada bab ini, Penulis

menerangkan latar belakang pemilihan judul tugas akhir penelitian,

rumusan dan batasan masalah, tujuan dan manfaat penelitian, metodologi

penelitian dan sistematika penulisan.

Page 31: Perbaningan PHP Framework Dengan Expert Choice

8

BAB II : LANDASAN TEORI

Bab ini merupakan penjelasan MOOSE Chidamber Kemerer

(MOOSE CK), properti kualitas disain software seperti efficiency,

understandability, reusability, testability, maintainability akan dibahas

dengan melihat hubungan antara parameter-parameter MOOSE CK dan

properti kualitas disain software. Penjelasan metode Analytic Hierarchy

Process disertai dengan menggunakan contoh.

BAB III : METODOLOGI PENELITIAN

Bab ini berisi metodologi penelitian yang digunakan dalam

penelitian ini.

BAB IV : ANALISIS PENELITIAN

Bab ini berisi hasil penelitian framework PHP dengan kombinasi

parameter MOOSE CK, parameter properti kualitas disain software dan

metode Analytic Hierarchy Process (AHP). Dalam bab ini juga dibuat

diagram alur dari beberapa tahapan pengukuran kualitas disain software.

BAB V : PENUTUP

Bab ini berisi kesimpulan dari penelitian yang telah dilakukan dan

juga berisi saran-saran untuk pengembangan penelitian ini lebih lanjut.

Page 32: Perbaningan PHP Framework Dengan Expert Choice

9

BAB II

LANDASAN TEORI

Dalam perkembangannya, aplikasi web tidak jauh berbeda dengan aplikasi

desktop. Kedua-duanya mempunyai peran yang sangat penting dan memiliki

keunggulan tersendiri. Kedua aplikasi tersebut sama-sama berkembang dengan

pemrograman yang lebih cenderung kearah berorientai objek. Dalam penelitian ini

penulis mencoba untuk mengukur kualitas sebuah software aplikasi web, dalam

hal ini adalah framework PHP. Penelitian ini dilakukan untuk menentukan

kualitas disain software terbaik dari kelima framework yang banyak digunakan

oleh programmer web menurut versi www.phpframeworks.com. Kenapa penulis

memilih framework PHP? Karena pada framework PHP telah ada sifat Object

Oriented Programming dalam membuat suatu aplikasi website. Jika berbicara

mengenai Object Oriented Programming maka juga berbicara mengenai kualitas

disain suatu software, hal tersebut adalah yang akan diperbandingkan untuk

mendapatkan kualitas framework terbaik.

Kualitas disain sebuah software sangatlah penting untuk dapat selalu

diukur, dengan demikian maka setiap pengembang akan dapat mengetahui sejauh

mana kualitas software-nya dapat berjalan dengan baik. Sehingga apabila

ditemukan sebuah permasalahan akan dapat dengan cepat ditangani. Nilai dari

pengukuran kualitas sebuah software dinamakan metric. Menurut The IEEE

Standard Glossary (dalam Software Engineering, 1992) mendefinisikan metric

sebagai berikut, “metric as a quantitative measure of the degree to which a

Page 33: Perbaningan PHP Framework Dengan Expert Choice

10

system, component, or process possesses a given attribute” . Penelitian tugas akhir

ini berdasarkan nilai metric untuk mengukur kualitas disain sebuah software.

Gambar 2.1. Pemetaan Macam-macam Metric

(Sumber: Global Journal of Computer Science and Technology: A

Survey-Object Oriented Quality Metrics)

Menurut Efano Hermawan (2007: 7), “telah banyak penelitian yang

dilakukan untuk memformulasikan seperangkat parameter yang dapat digunakan

untuk mengukur kualitas disain software berorientasi objek. Masing-masing

kelompok peneliti menghasilkan seperangkat parameter. Parameter yang sama

dihasilkan oleh peneliti meskipun dengan nama atau istilah yang berbeda,

sebagian lain merupakan parameter unik yang dihasilkan oleh kelompok tersebut.

Seperangkat parameter tersebut biasa disebut dengan Object Oriented

Metric (OO Metric). Beberapa penelitian tersebut menghasilkan beberapa kriteria

kualitas software yang berbeda-beda, tergantung darimana peneliti itu melihatnya.

METRICS

Project Based Metric Design Based Metric

Resources Product Proce Object Oriented Traditional

…Etc CP SLOC Complexity CK MOOD …Etc

Page 34: Perbaningan PHP Framework Dengan Expert Choice

11

Sebagian penelitian yang lain berusaha menghubungkan antara OO Metric dan

properti kualitas”.

Bab ini akan menguraikan seperangkat parameter OO Metric menurut

Chidamber, Kemerer, properti kualitas dan metode Analytic Hierarchy Process

(AHP). AHP merupakan metode pemilihan beberapa objek berdasarkan kriteria-

kriteria yang ada pada objek yang dibandingkan. AHP akan dijelaskan lebih rinci

setelah penjelasan mengenai Parameter OO Metric menurut Chidamber, Kemerer

dan properti kualitas disain software.

2.1. METRICS FOR OBJECT ORIENTED SOFTWARE ENGINEERING

CHIDAMBER, KEMERER (MOOSE CK)

MOOSE CK merupakan salah satu metric yang dipergunakan

untuk mengukur kualitas disain sebuah software berdasarkan enam

parameter dengan melihat pada perspektif Object Oriented Design

2.1.1 Weighted Methods Per Class (WMC)

WMC berhubungan secara langsung terhadap kompleksitas

dari sebuah objek, karena metode adalah properti dari sebuah objek

dan kompleksitas sebuah objek ditentukan oleh properti.

WMC=

n

i

Ci1

Ci = Static Kompleksitas

Page 35: Perbaningan PHP Framework Dengan Expert Choice

12

Jumlah metode dan kompleksitas dari metode merupakan

salah satu indikator berapa lama waktu dan usaha yang dibutuhkan

untuk membangun dan memelihara objek. Objek dengan jumlah

metode yang lebih banyak dapat membatasi kemungkinan objek

tersebut untuk digunakan kembali (reuse) .

Nilai WMC yang tinggi mempunyai kecenderungan

kegagalan software. Menurut www.aivosto.com toleransi nilai

WMC adalah antara 20-50 dalam sebuah class, atau maksimum

10% dari jumlah metode dalam sebuah class. Penelitian yang lain

menurut Basili, dengan sampel 30 proyek C++, menunjukkan

semakin tinggi nilai WMC akan meningkatkan bugs dan

menurunkan kualitas.

Namun penelitian tersebut juga tidak menyebutkan berapa

optimum range yang dapat digunakan. Pada penelitian yang sama

mengatakan bahwa nilai yang tinggi untuk proyek VB terlihat

diperbolehkan.

2.1.2 Depth of Inheritance Tree (DIT)

Kedalaman dari sebuah class dalam inheritance hirarki

dimana angka maksimum dimulai dari class leaf dan menurun pada

class root pada sebuah hirarki. Sehingga hirarki yang dalam akan

menyebabkan tingginya kompleksitas dari disain karena makin

banyak metode dan class yang terlibat .

Page 36: Perbaningan PHP Framework Dengan Expert Choice

13

Rekomendasi www.aivosto.com nilai DIT adalah 5 atau

kurang. Dokumentasi Visual Studio.Net menyebutkan nilai DIT ≤

5. Beberapa sumber lain mengijinkan nilai DIT sampai dengan 8.

2.1.3 Number of Children (NOC)

NOC adalah jumlah subclass dalam sebuah class hierarchy.

NOC merupakan indikator besarnya pengaruh sebuah class

terhadap disain sistem secara keseluruhan. Semakin besar nilai

NOC, semakin besar pula potensi ketidakcocokan sub class dengan

abstraksi pada parent class.

Hal ini dapat mengakibatkan kesalahan penggunaan sub

class seperti ketika menggunakan salah satu sub class dari sekian

banyak sub class yang lain dalam salah satu program.

2.1.4 Coupling Between Object Classes (CBO)

CBO menghitung class yang berhubungan dengan class

yang lain. Hal ini dihitung terhadap non-inheritance class.

Sehingga semakin sedikit class yang berhubungan maka

mengindikasikan class yang baik. Karena meningkatkan

modularity dan reuse.

Semakin banyak class yang tidak tergantung satu sama lain

akan lebih baik untuk digunakan dalam aplikasi yang lain. Hal ini

sangat konsisten dengan tingkat interdependency antara modul.

Page 37: Perbaningan PHP Framework Dengan Expert Choice

14

Berapa nilai maksimum yang diijinkan? CBO > 14 terlalu tinggi

menurut Houari A Sahraoui.

2.1.5 Response for a Class (RFC)

RFC adalah jumlah semua metode yang dipanggil sebagai

respon terhadap diluar objek dari sebuah class. RFC juga

mengukur komunikasi antara objek. Hal ini berlaku terhadap

semua metode yang diakses dalam class hirarki. Sehingga semakin

banyak metode yang digunakan untuk merespon objek dari luar

semakin kompleks dan meningkatkan waktu tes.

2.1.6 Lack of Cohesion Method (LCOM)

LCOM mengukur ketidaksamaan metode dalam sebuah

class dari instance variabel atau atribut. Dengan tingginya kohesi

berarti mengindikasikan semakin baik class tersebut.

Sehingga lebih sederhana dan memiliki sifat reusability

yang tinggi. Sedangkan semakin rendah kohesi atau lack of

cohesion maka semakin kompleks class tersebut.

Semua parameter MOOSE CK tersebut digunakan sebagai

tolak ukur dalam perbandingan framework PHP yang akan

dilakukan. Parameter-parameter tersebut akan digabungkan dengan

parameter properti kualitas, mengenai properti kualitas lebih

lengkapnya akan dijelaskan pada sub bab selanjutnya.

Page 38: Perbaningan PHP Framework Dengan Expert Choice

15

2.2. PROPERTI KUALITAS DISAIN SOFTWARE

Beberapa penelitian telah menghasilkan model kualitas software

dan perspektif yang berbeda-beda, McCall melihat dari tiga perspektif

yaitu product revision, product transition dan product operations. Dari

masing-masing perspektif dikembangkan menjadi beberapa faktor kualitas

software yaitu maintainability, flexibillity, testability, portability,

reusability, interoperability, correctness, reliability, efficiency, integrity,

usability. Sehingga total memiliki 11 faktor kualitas software.

Gambar 2.2. McCall’s Software Quality Factors

(Sumber: Roger S Pressman, Software Engineering, hal.463)

Menurut BW. Boehm, et al (dalam Jurnal MTI UI Volume 5, No.1,

2007). BW. Boehm memiliki tujuh faktor kualitas portability, reliability,

efficiency, usability, testability, understandability, flexibility.

ISO juga mengeluarkan model kualitas software yang dituangkan

dalam ISO1926-1 dan memiliki 6 karakteristik kualitas software

functionality, reliability, usability, efficiency, maintainability, portability

yang masing-masing dipecah dalam beberapa subkarakteristik.

PRODUCT TRANSITION PRODUCT REVISION

PRODUCT OPERATION

Maintainability

Flexibility

Testability

Portability

Reusability

Interoperability

Correctness Reliability Usability Integrity Efficiency

Page 39: Perbaningan PHP Framework Dengan Expert Choice

16

Tabel 2.1. Pemetaan Model Kualitas Software Antara ISO 1926-1,

McCall, Boehm

ISO 1926-1 McCall Boehm

Functionality

Suitability

Accurateness Correctness

Interoperability Interoperability

Compliance

Security Integrity

Reliability Reliability Reliability

Maturity

Fault Tolerance

Recoverability

Usability Usability Usability

Understandability Understandability

Learnability

Operability

Efficiency Efficiency Efficiency

Time Behaviour

Resource Behaviour

Maintainability Maintainability

Analyzability

Changeability

Stability

Testability Testability Testability

Portability Portability Portability

Adaptability Flexibility Flexibility

Installability

Conformance

Replaceability Reusability

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

Melihat tabel 2.1 hampir semua struktur ISO1926-1 mirip dengan

McCall (1977) dan Boehm (1978). Hal ini disebabkan karena fungsi dari

karakteristik kualitas software yang berbeda-beda. Beberapa karakteristik

kualitas memiliki nama yang berbeda meskipun artinya sama.

Karakteristik-karakteristik yang lain juga lebih cenderung pada

Page 40: Perbaningan PHP Framework Dengan Expert Choice

17

fungsionalitas software apakah telah sesuai dengan kebutuhan

(requirement) software.

Namun apabila dihubungkan dengan kualitas disain software pada

aspek orientasi objek dan disesuaikan dengan OO Metric maka hanya

beberapa karakteristik atau properti kualitas yang dapat dievaluasi untuk

mengukur kualitas kode dan disain yaitu efficiency, complexity,

understandability, reusability, maintainability/testability.

1. Efficiency : Apakah disain dan implementasi software telah

dilakukan dengan efisien?

2. Complexity : Dapatkah implementasi software digunakan lebih

efektif sehingga menurunkan tingkat kompleksitas?

3. Understandability : Apakah disain software lebih mudah

dimengerti?

4. Reusability : Apakah kualitas disain software mendukung

penggunaan kembali (reuse)?

5. Maintainability/Testability : Apakah disain software mendukung

untuk kemudahan testing dan perubahan?

2.2.1. Hubungan Properti Kualitas Disain Software dan Parameter

MOOSE CK

Berdasarkan properti kualitas yang telah dipilih, Linda H

Rosenberg dan Lawrence E Hyaat telah memetakan dengan

MOOSE CK dan satu traditional metrics yaitu Cyclomatic

Page 41: Perbaningan PHP Framework Dengan Expert Choice

18

Complexity (CC). CC adalah salah satu metric yang dihasilkan oleh

Thomas J. McCabe dan Charles W. Butler. Metric ini membahas

mengenai struktur logika yaitu jumlah pernyataan keputusan

ditambah dengan 1. Contoh sebagai berikut IF A=B AND C=D

THEN, logika IF mempunyai nilai 1 ditambah dengan 1, sehingga

pada logika ini nilai CC=2.

Masing-masing parameter dalam metric memiliki

kontribusi yang berbeda pada properti kualitas disain software.

Pada tabel 2.2 adalah hasil pemetaan menurut Linda H Rosenberg

dan Lawrence E Hyaat.

Tabel 2.2. Hubungan Properti Kualitas Software dan Parameter Metric

Properti Kualitas

Software

Parameter Metric

Efficiency LCOM, CBO, DIT, NOC

Complexity CC (Traditional Metric)

Understandability WMC, RFC, DIT

Reusability WMC, LCOM, CBO, DIT, NOC

Maintainability/Testability WMC, RFC, DIT, NOC

(Sumber: Buku Linda H Rosenberg, Software Quality Metrics for

Object Oriented Environments, 2003)

Pada tabel 2.2 diatas tampak bahwa penelitian Linda H

Rosenberg dan Lawrence E Hyaat pada tahun 2003, menunjukkan

properti complexity tidak menggunakan parameter MOOSE CK,

Page 42: Perbaningan PHP Framework Dengan Expert Choice

19

tapi menggunakan Cyclomatic Complexity (CC). Pada riset yang

lain pada tahun 1993 terutama properti maintainability/testability

menggunakan parameter yang hampir sama, DIT, NOC, RFC,

LCOM, WMC, DAC, NOM, SIZE1, SIZE2, MPC. Sedangkan

menurut Magiel Bruntink dan Arie Van Deursen (dalam Jurnal

MTI UI, 2007: 13), DIT, LCOM, NOC, RFC, WMC, FOUT,

LOCC, NOF, NOM, Parameter-parameter yang dicetak tebal

tidak termasuk MOOSE CK.

2.2.2. Pengaruh Parameter MOOSE CK pada Properti Kualitas

Disain Software

Penelitian Linda H Rosenberg dan Lawrence E Hyatt

mengenai hubungan dan pengaruh antara parameter-parameter OO

Metric dan properti kualitas disain software menunjukkan bahwa

nilai parameter MOOSE CK berbanding terbalik dengan kualitas

disain software

Page 43: Perbaningan PHP Framework Dengan Expert Choice

20

Tabel 2.3. Hubungan dan pengaruh parameter metric

Metric Objective

Testing

Efforts

Understand-

ability

Maintain-

ability

Develop

Effort

reuse

Complexity ↓ ↓ ↑ ↑

Size (LOC) ↓ ↓ ↑ ↑

Comment % ↑ ↓ ↑ ↓

WMC ↓ ↑ ↓ ↑

RFC ↓ ↓ ↑ ↑

LCOM ↓ ↑ ↑ ↓ ↑

CBO ↓ ↓ ↑ ↑ ↑

(Sumber: Buku Linda H Rosenberg, Applying and Interpreting Object

Oriented Metrics, 1998)

Tampak pada tabel 2.3 Linda H Rosenberg dan Lawrence E

Hyaat pada tahun 1998 tidak hanya menggunakan OO metric tetapi

juga menggabungkan dengan traditional metric yaitu LOC dan

komentar (Comment). Tidak hanya itu, properti kualitas yang

digunakan hampir sama dengan penelitian selanjutnya pada tahun

2003 yaitu properti understandability, maintainability dan reuse,

sedangkan properti yang lain berbeda.

Meskipun terdapat beberapa perbedaan penelitian Linda H

Rosenberg pada tahun yang berbeda namun kedua penelitian

tersebut menegaskan bahwa MOOSE CK memiliki nilai yang

berbanding terbalik dengan properti kualitas disain software.

Page 44: Perbaningan PHP Framework Dengan Expert Choice

21

2.3. ANALYTIC HIERARCHY PROCESS (AHP)

Metode Analytic Hierarchy Process (AHP) dikembangkan oleh

Thomas L. Saaty pada tahun 70-an ketika di Warston School. Metode AHP

merupakan salah satu metode yang dapat digunakan dalam sistem

pengambilan keputusan dengan memperhatikan faktor-faktor persepsi,

preferensi, pengalaman dan intuisi. AHP menggabungkan penilaian-

penilaian dan nilai-nilai pribadi ke dalam satu cara yang logis.

Analytic Hierarchy Process (AHP) dapat menyelesaikan masalah

multikriteria yang kompleks menjadi suatu hirarki. Masalah yang

kompleks dapat diartikan bahwa kriteria dari suatu masalah yang begitu

banyak (multikriteria), struktur masalah yang belum jelas, ketidakpastian

pendapat dari pengambil keputusan, pengambil keputusan lebih dari satu

orang, serta ketidakakuratan data yang tersedia. Menurut Saaty, hirarki

didefinisikan sebagai suatu representasi dari sebuah permasalahan yang

kompleks dalam suatu struktur multi level dimana level pertama adalah

tujuan, yang diikuti level faktor, kriteria, sub kriteria, dan seterusnya ke

bawah hingga level terakhir dari alternatif. Dengan hirarki, suatu masalah

yang kompleks dapat diuraikan ke dalam kelompok-kelompoknya yang

kemudian diatur menjadi suatu bentuk hirarki sehingga permasalahan akan

tampak lebih terstruktur dan sistematis.

Metode ini adalah sebuah kerangka untuk mengambil keputusan

dengan efektif atas persoalan dengan menyederhanakan dan mempercepat

proses pengambilan keputusan dengan memecahkan persoalan tersebut

Page 45: Perbaningan PHP Framework Dengan Expert Choice

22

kedalam bagian-bagiannya, menata bagian atau variabel ini dalam suatu

susunan hirarki, memberi nilai numerik pada pertimbangan subjektif

tentang pentingnya tiap variabel dan mensintesis berbagai pertimbangan

ini untuk menetapkan variabel yang mana yang memiliki prioritas paling

tinggi dan bertindak untuk mempengaruhi hasil pada situasi tersebut.

Metode ini juga menggabungkan kekuatan dari perasaan dan logika yang

bersangkutan pada berbagai persoalan, lalu mensintesis berbagai

pertimbangan yang beragam menjadi hasil yang cocok dengan perkiraan

kita secara intuitif sebagaimana yang dipersentasikan pada pertimbangan

yang telah dibuat.

Analytic Hierarchy Process (AHP) mempunyai landasan

aksiomatik yang terdiri dari :

1. Reciprocal Comparison, yang mengandung arti si pengambil keputusan

harus bisa membuat perbandingan dan menyatakan preferensinya.

Preferensinya itu sendiri harus memenuhi syarat resiprokal yaitu kalau

A lebih disukai dari B dengan skala x, maka B lebih disukai dari A

dengan skala 1:x.

2. Homogenity, yang mengandung arti preferensi seseorang harus dapat

dinyatakan dalam skala terbatas atau dengan kata lain elemen-

elemennya dapat dibandingkan satu sama lain. Kalau aksioma ini tidak

dapat dipenuhi maka elemen-elemen yang dibandingkan tersebut tidak

homogenous dan harus dibentuk suatu cluster (kelompok elemen-

elemen) yang baru.

Page 46: Perbaningan PHP Framework Dengan Expert Choice

23

3. Independence, yang berarti preferensi dinyatakan dengan

mengasumsikan bahwa kriteria tidak dipengaruhi oleh alternatif-

alternatif yang ada melainkan oleh objektif secara keseluruhan. Ini

menunjukkan bahwa pola ketergantungan atau pengaruh dalam model

AHP adalah searah keatas, artinya perbandingan antara elemen-elemen

dalam satu level dipengaruhi atau tergantung oleh elemen-elemen

dalam level di atasnya.

4. Expectations, artinya untuk tujuan pengambilan keputusan, struktur

hirarki diasumsikan lengkap. Apabila asumsi ini tidak dipenuhi maka

si pengambil keputusan tidak memakai seluruh kriteria dan atau

objektif yang tersedia atau diperlukan sehingga keputusan yang

diambil dianggap tidak lengkap.

Tahapan-tahapan pengambilan keputusan dalam metode AHP pada

dasarnya adalah sebagai berikut :

1. Mendefenisikan masalah dan menentukan solusi yang diinginkan

2. Membuat struktur hirarki yang diawali dengan tujuan umum,

dilanjutkan dengan kriteria-kriteria dan alternatif - alternatif pilihan

yang ingin di rangking.

3. Membentuk matriks perbandingan berpasangan yang menggambarkan

kontribusi relatif atau pengaruh setiap elemen terhadap masing-masing

tujuan atau kriteria yang setingkat diatas. Perbandingan dilakukan

berdasarkan pilihan atau judgement dari pembuat keputusan dengan

Page 47: Perbaningan PHP Framework Dengan Expert Choice

24

menilai tingkat-tingkat kepentingan suatu elemen dibandingkan

elemen lainnya.

4. Menormalkan data yaitu dengan membagi nilai dari setiap elemen di

dalam matriks yang berpasangan dengan nilai total dari setiap kolom.

5. Menghitung nilai eigen vector dan menguji konsistensinya, jika tidak

konsisten maka pengambilan data (preferensi) perlu diulangi. Nilai

eigen vector yang dimaksud adalah nilai eigen vector maksimum yang

diperoleh dengan menggunakan matlab maupun dengan manual.

6. Mengulangi langkah, 3, 4, dan 5 untuk seluruh tingkat hirarki.

7. Menghitung eigen vector dari setiap matriks perbandingan

berpasangan. Nilai eigen vector merupakan bobot setiap elemen.

Langkah ini untuk mensintetis pilihan dalam penentuan prioritas

elemen pada tingkat hirarki terendah sampai pencapaian tujuan.

8. Menguji konsistensi hirarki. Jika tidak memenuhi dengan CR < 0,100

maka penilaian harus diulangi kembali.

2.3.1. Prinsip-Prinsip Dasar Analytic Hierarcy Process (AHP)

Dalam menyelesaikan persoalan dengan metode AHP ada beberapa

prinsip dasar yang harus dipahami antara lain :

Page 48: Perbaningan PHP Framework Dengan Expert Choice

25

1. Decomposition

Pengertian decomposition adalah memecahkan atau membagi

problema yang unsurnya ke bentuk hirarki proses pengambilan utuh

menjadi unsur keputusan, dimana setiap unsur atau elemen saling

berhubungan. Untuk mendapatkan hasil yang akurat, pemecahan dilakukan

terhadap unsur-unsur sampai tidak mungkin dilakukan pemecahan lebih

lanjut, sehingga didapatkan beberapa tingkatan dari persoalan yang hendak

dipecahkan. Struktur hirarki keputusan tersebut dapat dikategorikan

sebagai complete dan incomplete. Suatu hirarki keputusan disebut

complete jika semua elemen pada suatu tingkat memiliki hubungan

terhadap semua elemen yang ada pada tingkat berikutnya, sementara

hirarki keputusan incomplete kebalikan dari hirarki complete.

Bentuk struktur dekomposisi yakni :

Tingkat pertama : Tujuan keputusan (Goal)

Tingkat kedua : Kriteria-kriteria

Tingkat ketiga : Alternatif-alternatif

Gambar 2.3. Struktur Hirarki

(Sumber: Jurnal Umum Universitas Sumatera Utara)

Tujuan

Kriteria 1

Alternatif 2 Alternatif 1

Kriteria 2 Kriteria 3 Kriteria 4

Alternatif 3

Page 49: Perbaningan PHP Framework Dengan Expert Choice

26

Hirarki masalah disusun untuk membantu proses pengambilan

keputusan dengan memperhatikan seluruh elemen keputusan yang terlibat

dalam sistem. Sebagian besar masalah menjadi sulit untuk diselesaikan

karena proses pemecahannya dilakukan tanpa memandang masalah

sebagai suatu sistem dengan suatu struktur tertentu.

2. Comparative Judgement

Comparative judgement dilakukan dengan penilaian tentang

kepentingan relatif dua elemen pada suatu tingkat tertentu dalam kaitannya

dengan tingkatan diatasnya. Penilaian ini merupakan inti dari AHP karena

akan berpengaruh terhadap urutan prioritas dari elemen elemennya. Hasil

dari penilaian ini lebih mudah disajikan dalam bentuk matriks pairwise

comparisons yaitu matriks perbandingan berpasangan memuat tingkat

preferensi beberapa alternatif untuk tiap kriteria. Skala preferensi yang

digunakan yaitu skala 1 yang menunjukkan tingkat yang paling rendah

(equal importance) sampai dengan skala 9 yang menujukkan tingkatan

paling tinggi (extreme importance).

3. Synthesis of Priority

Synthesis of priority dilakukan dengan menggunakan eigen vector

method untuk mendapatkan bobot relatif bagi unsur unsur pengambilan

keputusan.

4. Logical Consistency

Logical consistency merupakan karakteristik penting AHP. Hal ini

dicapai dengan mengagresikan seluruh eigen vector yang diperoleh dari

Page 50: Perbaningan PHP Framework Dengan Expert Choice

27

berbagai tingkatan hirarki dan selanjutnya diperoleh suatu vektor

composite tertimbang yang menghasilkan urutan pengambilan keputusan.

Akan timbul banyak masalah dalam membuat keputusan

melibatkan sejumlah faktor. Sebagai contoh ketika perusahaan

mendapatkan penawaran implementasi sistem informasi dari beberapa

vendor. Tentu saja pemilihan sistem informasi tidak berdasarkan sistem

mana yang lebih murah. Ada beberapa faktor yang harus dipertimbangkan

seperti beberapa dukungan hardware, stabilitas software, layanan vendor,

harga dan lain sebagainya.

Pemilihan akan menjadi semakin sulit karena masing-masing

vendor memiliki keunggulan yang berbeda-beda. Seperti vendor A

menawarkan harga murah tetapi hardware kurang kompatibel dan layanan

vendor kurang baik, sedangkan vendor B harga lebih mahal, namun

hardware lebih kompatibel dan layanan lebih baik. Mungkin pada kasus

yang lain seperti pemilihan mobil terbaik untuk kita gunakan, ada banyak

faktor yang dapat mempengaruhi keputusan kita untuk membeli, seperti

dari segi kegunaan mobilnya, harganya sesuai budget atau tidak,

pelayanannya, onderdilnya mudah didapatkan atau tidak. Masing-masing

dealer memiliki keunggulan tersendiri dan faktor diatas yang akan menjadi

pertimbangan kita dalam memilihnya.

Berdasarkan kedua contoh diatas maka diperlukan sebuah metode

untuk mengevaluasi dan memberikan pembobotan pada faktor-faktor

tersebut. Menurut Barry Render dan Ralph M. Stair dalam Jurnal MTI UI

Page 51: Perbaningan PHP Framework Dengan Expert Choice

28

Volume 5, no.1 ada 2 metode yang dapat digunakan untuk membuat

keputusan ketika menghadapi multi kriteria faktor. Metode yang pertama

adalah Multifactor Evaluation Process (MFEP). Pada metode ini

pemberian nilai menggunakan skala 0-1, semakin lebih penting faktor

tersebut akan diberikan nilai yang lebih tinggi.

Namun ada beberapa kelemahan metode ini menurut Barry Render

dan Ralph M, karena tidak ada tes konsistensi maka nilai yang dimasukkan

akan menjadi tidak valid ketika pembuat keputusan tidak benar-benar

mengerti domain masalahnya. Pembuat keputusan juga harus benar-benar

menguasai domain masalahnya sehingga yang dimasukkan bukan

merupakan nilai perkiraan tetapi nilai sebenarnya.

Metode kedua adalah Analytic Hierarchy Process (AHP). Ada

beberapa kelebihan pada metode ini dibandingkan sebelumnya. Metode

AHP mempunyai tes konsistensi sehingga apabila hasil evaluasi pembuat

keputusan tidak memenuhi konsistensi maka hasil evaluasi harus diulang

kembali. Kelebihan yang kedua adalah pemberian nilai merupakan

perbandingan antara 2 item sehingga masih dapat memasukkan nilai

perkiraan dan nilai ini akan menjadi valid apabila tes konsistensi

terpenuhi. AHP adalah sebuah metode perbandingan berpasangan terhadap

beberapa objek yang akan dievaluasi. AHP pertama kali dipublikasikan

oleh Thomas L. Saathy dalam bukunya yang berjudul “The Analytic

Hierarchy Process” tahun 1980. Sejak di publikasikan tahun 1980 AHP

telah dipergunakan dalam berbagai permasalahan. Dari permasalahan

Page 52: Perbaningan PHP Framework Dengan Expert Choice

29

sosial, ekonomi, kesehatan, engineering dan sekarang dalam bidang

teknologi informasi. Hasil akhir dari metode AHP adalah faktor

pembobotan dan faktor evaluasi, sehingga item-item yang di evaluasi dapat

diberikan peringkat berdasarkan nilai yang dihasilkan.

Dalam memberikan nilai pada masing-masing objek atau faktor

yang akan di evaluasi, AHP memberikan skala 1-9 . Semakin besar nilai

yang diberikan berarti objek atau faktor tersebut semakin penting.

Misalnya ada objek A dan objek B, masing-masing memiliki faktor X, Y,

Z. Apabila diberikan nilai 3 pada perbandingan objek A dan objek B untuk

faktor X, maka pembacaan nilai 3 adalah objek A sedikit lebih penting

daripada objek B pada faktor X. Pembacaan “sedikit lebih penting” dapat

dirubah dengan menyesuaikan konteks permasalahan. Seperti sedikit lebih

baik, atau lebih bagus, yang terpenting adalah pemberian nilai

menunjukkan perbandingan antara dua objek.

Tabel 2.4 di bawah ini adalah skala Saathy yang digunakan dalam

implementasi metode AHP. Seperti pada penjelasan sebelumnya, pada

kolom keterangan dapat merubah kata-kata “agar” sesuai dengan topik

permasalahan. Pada baris terakhir merupakan kebalikan dari nilai

perbandingan. Sehingga seperti pada contoh diatas apabila objek A

mempunyai nilai 3 dibandingkan nilai B, maka nilai B mempunyai nilai

1/3 dibandingkan objek A.

Page 53: Perbaningan PHP Framework Dengan Expert Choice

30

Tabel 2.4. 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

1/(1-9) Kebalikan nilai tingkat kepentingan dari

skala 1-9

(Sumber: Buku Thomas L Saathy, Decision Making with the

Analytic Network Process, 2006)

Agar metode AHP menjadi lebih jelas, berikut ini penulis berikan

contoh prosedur penggunaan AHP. Contoh ini membandingkan 3 buah

sistem dengan parameter yang berpengaruh adalah hardware, software dan

dukungan vendor.

1. Faktor evaluasi objek terhadap sebuah parameter.

Pembobotan dapat menggunakan perbandingan antara beberapa

objek. Nilai yang dimasukkan dengan menggunakan skala pada tabel

2.3.

Page 54: Perbaningan PHP Framework Dengan Expert Choice

31

Tabel 2.5. Perbandingan antara sistem 1, sistem 2 dan sistem 3

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

Tabel 2.5 menjelaskan bahwa sistem-1 memiliki hardware

sedikit lebih baik daripada sistem-2 sehingga diberi nilai 3. Dan untuk

perbandingan sistem-1 memiliki hardware mutlak lebih baik daripada

sistem-3 dan diberikan nilai 9. Sedangkan perbandingan untuk sistem-

2 dengan sistem-1 merupakan kebalikan dari perbandingan dari sistem-

1 dengan sistem-2 sehingga diberikan nilai 1/3. Begitu juga dengan

perbandingan sistem-3 dengan sistem-1 merupakan kebalikan dari

perbandingan sistem-1 dengan sistem-3 yaitu 1/9. Nilai 1 diberikan

karena dibandingkan pada item yang sama semisal sistem-1 dengan

sistem-1.

2. Menjumlahkan pada masing-masing kolom.

Tabel 2.6. Menjumlahkan pada masing-masing kolom

Hardware Sistem-1 Sistem-2 Sistem-3

Sistem-1 1 3 9

Sistem-2 0.3333 1 6

Sistem-3 0.1111 0.1677 1

--------- + --------- + --------- +

Total 1.4444 4.1667 16.0

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

Hardware Sistem-1 Sistem-2 Sistem-3

Sistem-1 1 3 9

Sistem-2 1/3 1 6

Sistem-3 1/9 1/6 1

Page 55: Perbaningan PHP Framework Dengan Expert Choice

32

3. Membagi masing-masing cell dengan jumlah total pada kolom yang

sesuai

Tabel 2.7. Hasil pembagian pada masing-masing cell dengan jumlah

total

Hardware Sistem-1 Sistem-2 Sistem-3

Sistem-1 1/1.4444=0.6923 3/4.1667=0.7200 9/16=0.5625

Sistem-2 0.3333/1.4444=0.2300 1/4.1667=0.2400 6/16=0.375

Sistem-3 0.1111/1.4444=0.0769 0.1677/4.1667=0.0400 1/16=0.0625

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

4. Untuk mendapatkan prioritas sistem berdasarkan hardware maka

dihitung rata-rata setiap baris.

Tabel 2.8. Faktor evaluasi pada parameter hardware

Rata-rata

0.6583 (0.6923+0.7200+0.5625)/3

0.2819 (0.2300+0.2400+0.3750)/3

0.0598 (0.0769+0.0400+0.0625)/3

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

5. Menghitung Consistency Ratio

Setelah mendapatkan faktor evaluasi diperlukan cek konsistensi

terhadap perbandingan yang telah dilakukan dengan menghitung

Consistency Ratio.

Sebelum menghitung consistency ratio terlebih dahulu menghitung

Weighted Sum Vector. Hal ini dilakukan dengan hasil faktor evaluasi

tabel 2.8 dikali dengan perbandingan tabel 2.5.

Page 56: Perbaningan PHP Framework Dengan Expert Choice

33

Tabel 2.9. Weighted Sum Vector

Weighted Sum Vector

(0.6583)(1) + (0.2819)(3) + (0.0598)(9) 2.0423

(0.6583) (0.3333) + (0.2819)(1) + (0.0598)(6) 0.8602

(0.6583)(0.1111) + (0.2819)(0.1677) + (0.0598) (1) 0.1799

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

Langkah selanjutnya adalah menghitung consistency vector. Hal ini

dilakukan dengan membagi weighted sum vector tabel 2.9 dengan nilai

evaluasi tabel 2.8.

Tabel 2.10. Consistency Vector

Consistency

vector

2.0423/0.6583 = 3.1025

0.8602/0.2819 = 3.0512

0.1799/0.0598 = 3.0086

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

Setelah menghitung consistency vector diperlukan menghitung

lambda dan consistency index.

CI = )1(

)(

n

n.......................................................... (2.1)

Keterangan : CI = Consistency Index

n = Jumlah item yang dibandingkan

Lambda dihitung dengan menjumlah hasil dari tabel 2.10 dan

dibagi dengan jumlah item yang dibandingkan dalam kasus ini n=3.

λ = 3

3.0086) 3.0512 (3.1025 = 3.0541

Page 57: Perbaningan PHP Framework Dengan Expert Choice

34

CI = 1-3

3)-(3.0541= 0.027

Menghitung consistency ratio dengan membagi hasil dari

consistency index dengan random index tabel 2.11.

CR = RI

CI............................................................... (2.2)

Keterangan :

CR : Consistency Ratio

CI : Consistency Index

RI : Random Index

Tabel 2.11. Tabel Random Index

n RI

2 0.00

3 0.58

4 0.90

5 1.12

6 1.24

7 1.32

8 1.41

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

CR = 0.58

0.027= 0.0466

Consistency ratio dipergunakan untuk mengukur seberapa besar

konsistensi dalam membandingkan antara objek. Semakin besar nilai

CR semakin tidak konsisten. CR mempunyai batasan yaitu nilai 0.1

atau kurang. Jika ternyata CR melebihi 0.1 maka diperlukan

Page 58: Perbaningan PHP Framework Dengan Expert Choice

35

perbandingan kembali antara objek. Sehingga dengan melihat nilai CR

diatas maka nilai evaluasi tabel 2.8 dapat diterima.

Untuk faktor-faktor yang lain seperti software dan parameter lain

yang mempengaruhi objek tersebut dilakukan dengan prosedur yang

sama, sehingga dihasilkan hasil faktor evaluasi tabel 2.12.

Tabel 2.12. Hasil faktor evaluasi

Faktor Sistem-1 Sistem-2 Sistem-3

Hardware 0.6583 0.2819 0.0598

Software 0.0874 0.1622 0.7504

vendor 0.4967 0.3967 0.1066

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

6. Pembobotan parameter

Pembobotan parameter dapat mempergunakan cara yang sama

yaitu dengan membandingkan antara parameter tersebut dengan nilai

perbandingan menggunakan tabel 2.6.

Tabel 2.13. Perbandingan hardware, software dan vendor support

Hardware Software Vendor Support

Hardware 1 1/8 1/3

Software 8 1 3

Vendor Support 3 1/3 1

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

Seperti yang ditunjukkan pada tabel 2.13 bahwa software memiliki

nilai kepentingan yang lebih besar dibandingkan dengan hardware

dengan nilai 8 dan nilai software sedikit lebih penting daripada vendor

support dan diberikan nilai 3.

Page 59: Perbaningan PHP Framework Dengan Expert Choice

36

Menjumlahkan total pada masing-masing kolom seperti pada tabel

2.14 di bawah ini.

Tabel 2.14. Jumlah total pada masing-masing kolom

Hardware Software Vendor Support

Hardware 1 1/8 1/3

Software 8 1 3

Vendor Support 3 1/3 1

--------- + --------- + --------- +

Total 12 1.4583 4.3333

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

Membagi pada masing-masing cell dengan jumlah total.

Tabel 2.15. Hasil pembagian masing-masing cell dengan jumlah total

Hardware Software Vendor Support

Hardware 1/12=0.0833 1/8 / 1.4583=0.0857 1/3 / 4.3333=0.0769

Software 8/12=0.6667 1 / 1.4583=0.6857 3 / 4.3333=0.6923

Vendor Support 3/12= 0.3333 1/3 / 1.4583=0.2285 1 / 4.3333=0.2307

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

Menghitung rata-rata pada masing-masing baris seperti tabel 2.16

Tabel 2.16. Hasil rata-rata pada masing-masing baris

Rata-rata

0.082 (0.0833+0.0857+0.0769)/3

0.6816 (0.6667+0.6587+0.6923)/3

0.2364 (0.3333+0.2285+0.2307)/3

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

Sehingga dihasilkan bobot pada parameter adalah sesuai tabel 2.17

Page 60: Perbaningan PHP Framework Dengan Expert Choice

37

Tabel 2.17. Hasil pembobotan parameter

Vendor Support

Hardware 0.082

Software 0.6816

Vendor Support 0.2364

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

Setelah dihasilkan pembobotan parameter diperlukan cek

konsistensi seperti pada langkah nomor 5.

7. Final Evaluasi

Setelah didapatkan bobot pada masing-masing parameter dan

faktor evaluasi, maka masing-masing bobot tabel 2.17 dikalikan

dengan masing-masing faktor evaluasi tabel 2.12.

Tabel 2.18. Final Evaluasi

Final Evaluasi

Sistem-1 (0.082 x 0.6583 + 0.6816 x 0.0874 + 0.2364 x 0.4967) = 0.231

Sistem-2 (0.082 x 0.2819 + 0.6816 x 0.1622 + 0.2364 x 0.3967) = 0.2275

Sistem-3 (0.082 x 0.0596 + 0.6816 x 0.7504 + 0.2364 x 0.1066) = 0.5416

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

Pada tabel 2.18 tampak bahwa peringkat 1 adalah sistem-3

kemudian sistem-1 dan terakhir sistem-2.

2.4. MENGENAL FRAMEWORK PHP YANG DIGUNAKAN DALAM

PENELITIAN

Penulis mengambil contoh framework PHP yang dibandingkan

dari sebuah website www.phpframeworks.com pada tanggal 9 Oktober

Page 61: Perbaningan PHP Framework Dengan Expert Choice

38

2010, dalam web tersebut ditetapkan 10 framework PHP teratas yang

paling banyak digunakan oleh programmer web seluruh dunia berdasarkan

hasil voting, namun dalam penelitian ini penulis hanya mengambil 5

framework PHP teratas yang paling banyak digunakan oleh programmer

web. Alasan pertama untuk membatasi ruang lingkup penelitian, agar tidak

terlalu banyak mengambil contoh yang dibandingkan. Kedua, karena

pengambilan contoh 5 framework PHP dari web tersebut sudah mewakili

dari sekian banyak framework PHP yang ada. Untuk lebih jelasnya dapat

kita bahas satu-persatu di bawah ini.

2.4.1. Framework Yii

Di dalam web resminya, www.yiifrmework.com, Yii adalah

komponen yang berbasiskan bahasa PHP dengan performa yang

tinggi, di dalamnya termasuk penerapan MVC (Model-View-

Controller), DAO/Active Records, caching, jQuery berbasis

AJAX. Yii sangatlah mudah untuk digunakan. Kita hanya

diharuskan mengetahui bahasa pemrograman PHP dan object

oriented programming. Framework Yii ini sangatlah mudah untuk

digunakan kembali (reusable) dan dapat dengan mudah dipakai

dalam platform apapun seperti windows maupun linux, framework

ini murni adalah object oriented. Framework Yii juga dilengkapi

dokumentasi yang sangat detil, dari panduan definisi sampai

kepada panduan referensi class. Framework ini mempunyai setiap

informasi yang kita butuhkan untuk dengan cepat belajar dan

Page 62: Perbaningan PHP Framework Dengan Expert Choice

39

menguasainya. Yii juga didisain dengan sangat hati-hati untuk

membangun aplikasi PHP berskala kecil dan besar dan yang tidak

kalah penting adalah framework ini gratis, bisa digunakan oleh

siapa saja yang ingin membangun aplikasi web.

2.4.2. Framework CodeIgniter

Di dalam website www.codeigniter.com, CodeIgniter

adalah sebuah framework untuk web yang dibuat dalam format

PHP. Format yang dibuat ini selanjutnya dapat digunakan untuk

membuat sistem aplikasi web yang sangat kompleks. CodeIgniter

dapat mempercepat proses pembuatan web, karena semua class dan

modul yang dibutuhkan sudah ada dan kita hanya tinggal

menggunkanannya kembali pada aplikasi web yang akan kita buat.

Keunggulan yang dimiliki framework ini antara lain adalah

framework ini gratis untuk digunakan dan dapat dikembangkan

secara legal. CodeIgniter berlisensi Apache/BSSD-style open

source yang memperbolehkan penggunaan dari framework ini

sesuai dengan keinginan kita. CodeIgniter sangat ringan jika

dijalankan pada semua platform, framework ini menggunakan

sistem berbasis MVC, dapat menciptakan URL yang user friendly,

dikemas dalam sebuah framework yang lengkap, fungsi-fungsinya

dapat ditambahkan, selain itu dokumentasinya juga lengkap dan

memiliki komunitas pengguna yang besar.

Page 63: Perbaningan PHP Framework Dengan Expert Choice

40

2.4.3. Framework CakePHP

Framework ini dibuat dengan menggunakan konsep sistem

MVC juga, di dalamnya kita dimanjakan dengan kemudahan dalam

membuat aplikasi web yang sangat baik. CakePHP juga dapat

digabungkan dengan AJAX yang banyak digunakan seperti

sekarang ini. Dalam dokumentasi, CakePHP memiliki kelemahan,

yakni pengguna diharuskan online ke internet, karena

dokumentasinya tidak dapat di download dalam satu bundel.

Silahkan mengunjungi web resminya di www.cakephp.org.

2.4.4. Framework Symfony

Framework ini dibuat dengan arsitektur, komponen dan

tools untuk membangun aplikasi web yang kompleks dan lebih

cepat. Framework ini juga didukung dengan dokumentasi yang

lengkap dan dapat digabungkan dengan penerapan AJAX dalam

aplikasi webnya. Lebih jelasnya dapat dilihat di websitenya,

www.symfony-project.org.

2.4.5. Framework Zend

Di dalam website resminya, www.framework.zend.com,

Framework ini ada karena seni dan semangat akan pemrograman

berbasis PHP. Framework Zend di dukung dengan penerapan yang

sederhana, lisensi perusahaan yang ramah dan dapat digunakan

Page 64: Perbaningan PHP Framework Dengan Expert Choice

41

untuk membangun web 2.0 aplikasi dan web services, terbukti

framework ini banyak digunakan oleh Google, Amazon, Yahoo!,

Flickr. Framework ini juga mendukung pemrograman

menggunakan AJAX, seperti JASON, lisensi yang diberikan

adalah new BSD lisensi dengan Zend’s Framework License.

Framework ini telah diujicoba dan dapat dengan mudah digunakan

dan sangat aman.

2.5. PHP DEPEND

PHP Depend adalah sebuah tool yng digunakan untuk mengukur

metric aplikasi web menggunakan bahasa pemrograman PHP. Menurut

website resminya http://www.pdepend.org program kecil yang

menunjukkan analisis kode berdasarkan sumber file yang akan diuji.

Analisis kode berarti PHP Depend pertama kali mengambil kode asal

aplikasi kemudian memparsingnya kedalam proses struktur data internal

yang mudah. Data struktur ini biasa disebut sebagai AST (Abstract Sintax

Tree), yang menampilkan pernyataan dan elemen berbeda yang digunakan

untuk menganalisa kode sumber. Pengukuran ini juga disebut sebagai

software metric.

Apa itu software metric? Pada dasarnya software metric adalah

sesuatu yang sangat sederhana. Software metric adalah penjumlahan dari

beberapa elemen atau fragmen kode yang ditemukan dalam kode sumber.

Sebagai contoh nilai cyclomatic complexity, metode yang digunakan untuk

Page 65: Perbaningan PHP Framework Dengan Expert Choice

42

mendapatkan nilainya adalah dengan menjumlahkan pernyataan logika,

seperti if, for dan lain sebagainya kedalam metode analisis.

Mengapa penulis memilih menggunakan PHP Depend? Pertanyaan

tersebut dapat penulis jawab sebagai berikut :

1. PHP Depend sangat otomatis dan selalu objektif, tool ini hanya

mengukur kualitas dari kode sumber aplikasi yang diberikan.

2. PHP Depend memberikan skala tergantung pada kode sumber

aplikasi.

3. PHP Depend mengikuti untuk mengidentifikasi bagian-bagian

software yang digunakan untuk menganalisis kodenya.

4. PHP Depend juga mendukung beberapa fancy metric yang sangat

berguna.

Kesimpulan yang dapat diambil dari penggunaan tool PHP Depend

dalam menghitung nilai MOOSE CK pada penelitian ini menunjukkan

bahwa PHP Depend adalah tool yang sangat berguna untuk mencari tahu

nilai kualitas dari sebuah aplikasi, sehingga berguna dalam menaikkan

pengembangan produktivitas dan juga kualitas tim.

Page 66: Perbaningan PHP Framework Dengan Expert Choice

43

2.6. STUDI SEJENIS

Dalam menyusun penelitian skripsi ini penulis mencoba mencari

studi sejenis mengenai hal yang sedang diteliti, pertama dari Tesis Efano

Hermawan, tahun 2007, dalam Jurnal MTI UI Volume 5 No. 1. Di dalam

penelitian tersebut mencoba menemukan sebuah metode baru pengukuran

software/aplikasi yang studi kasusnya adalah framework JAVA.

Penelitian Kedua adalah Skripsi Nurmaya, tahun 2007, penelitian

ini dilakukan untuk membuat aplikasi metrics calculator yang digunakan

dalam menghitung nilai MOOD pada software yang diteliti.

Penelitian ketiga adalah Skripsi Rhamdani, tahun 2008. Penelitian

ini menghasilkan sebuah nilai rata-rata metric dari aplikasi ERP yang

diteliti.

Penelitian keempat adalah Tesis Agus Apriyanto, Magister Teknik

Sipil, tahun 2008, Universitas Diponegoro, Semarang. Penelitian ini

mengenai perbandingan kelayakan jalan beton dan aspal dengan

menggunakan metode AHP.

Penelitian kelima Asria Idrus, tahun 2010, STMIK AMIKOM,

Yogyakarta, mengenai Implementasi AHP sebagai alat pengambil

keputusan pemilihan calon tenaga kerja. Hasil akhirnya adalah aplikasi

yang dibuat dapat membantu perusahaan dalam menilai calon tenaga kerja

yang dimilikinya.

Sehingga dari penelitian-penelitian tersebut dapat dilihat seperti

tabel 2.19 berikut.

Page 67: Perbaningan PHP Framework Dengan Expert Choice

44

Tabel 2.19. Daftar Studi Sejenis

No Nama

Pengarang Judul Penelitian Hasil/Kesimpulan

1 Efano Hermawan Pemeringkatan Software

Aplikasi Berdasarkan Properti

Kualitas Disain dan Metrics For

Object Oriented Software

Menggunakan Analytic

Hierarchy Process

Hasil penelitian tersebut adalah menemukan

metode baru dalam mengukur kualitas suatu

software dan menentukan framework JAVA

terbaik. Hasil akhirnya adalah framework

JAVA Plasma yang terbaik.

2 Nurmaya Metode Pengukuran Disain

Berorientasi Objek Berbasis

Metrics Object Oriented Design

(MOOD)

Hasil dari penelitian ini adalah mampu

membuat aplikasi metrics calculator untuk

menghitung nilai MOOD pada software

yang diteliti.

3 Rhamdani Evaluasi Kualitas Perangkat

Lunak Berorientasi Objek

Penelitian ini menghasilkan sebuah nilai

rata-rata metric dari aplikasi ERP yang

diteliti. Melakukan perhitungan object

oriented metrics terhadap semua class-nya

4 Agus Apriyanto Perbandingan Kelayakan Jalan

Beton dan Aspal dengan Metode

Analytic Hierarchy Process

(AHP)

Hasil penelitian ini adalah bahwa kualitas

jalan beton lebih layak dibandingkan jalan

aspal.

5 Asria Idrus Implementasi Sistem metode

AHP Sebagai Alat Bantu

Pengambilan Keputusan

Pemilihan Calon Tenaga Kerja

di PT. Danagung Ramulti

Hasil penelitian ini adalah dimudahkannya

perusahaan yang bersangkutan untuk

menentukan kualitas calon tenaga kerja

yang dimilikinya dengan memasukkan

parameter yang dibutuhkan.

Berdasarkan data tabel 2.19 dari penelitian diatas dapat memberikan

masukan pada penulis untuk lebih melengkapi kekurangan yang ada dari

penelitian sebelumnya. Dikarenakan penelitian mengenai framework PHP belum

ada, maka penulis mencoba untuk meneliti framework PHP manakah yang terbaik

jika dilihat dari aspek kualitas disain modelnya.

Page 68: Perbaningan PHP Framework Dengan Expert Choice

45

BAB III

METODOLOGI PENELITIAN

3.1. TAHAPAN-TAHAPAN METODOLOGI PENELITIAN

Keingintahuan penulis dalam mengukur kualitas sebuah software

aplikasi web dan membuat peringkat terhadap aplikasi web tersebut menjadi

alasan utama adanya penelitian ini. Sehingga diharapkan dari hasil penelitian

ini mendapatkan aplikasi web terbaik dari beberapa aplikasi yang

dibandingkan. Adapun metodologi penelitian ini adalah sebagai berikut:

Gambar 3.1. Metodologi penelitian

(Sumber: Efano Hermawan, Petrus Mursanto, Tesis Magister Teknologi

Informasi, Jurnal Sistem Informasi MTI UI, Volume 5, No.1 2007)

Pendalaman mengenai parameter MOOSE

CK, parameter properti kualitas software dan

metode AHP

Menentukan properti kualitas disain software

Menentukan korelasi antara MOOSE CK dan

properti kualitas disain software

Menggabungkan metode AHP, parameter

MOOSE CK dan parameter properti kualitas

disain software

Menerapkan metode yang telah dirumuskan

pada sebuah studi kasus

Page 69: Perbaningan PHP Framework Dengan Expert Choice

46

3.1.1. PENDALAMAN MENGENAI PARAMETER MOOSE

CHIDAMBER, KEMERER (CK), PARAMETER PROPERTI

KUALITAS DISAIN DAN METODE AHP

Pada pembahasan bab sebelumnya telah dijelaskan bahwa

karakteristik tiap-tiap parameter MOOSE CK memiliki kecenderungan

berbanding terbalik dengan kualitas disain software, semakin kecil nilai

parameter MOOSE CK maka semakin baik kualitas disain software.

Karakteristik parameter MOOSE CK yang kedua adalah MOOSE CK

berpengaruh pada konsep orientasi objek dan bukan prosedural.

Sehingga konsep inheritance, encapsulation dan polymorphism benar-

benar mempengaruhi nilai dari tiap-tiap parameter MOOSE CK.

Properti kualitas mempunyai beberapa model, dimana masing-

masing model memperlihatkan kemiripan nama dan arti. Perbedaan ini

disebabkan karena fungsi karakteristik kualitas software dilihat dari

sudut pandang yang berbeda-beda. Beberapa karakteristik dilihat dari

sudut pandang fungsional software, keamanan software maupun dari

disain software. Oleh karena itu perlu untuk dipilah properti kualitas

mana yang sesuai dengan penelitian ini. Dalam Subbab 3.2 akan

dijelaskan penentuan properti kualitas disain software.

Dari penjelasan sebelumnya tampak bahwa AHP membandingkan

antara dua item dengan menggunakan skala 1-9. Kemudian ada cek

konsistensi dari nilai-nilai yang dimasukkan sebagai nilai perbandingan.

Adanya prosedur cek konsistensi yang membuat AHP lebih banyak

Page 70: Perbaningan PHP Framework Dengan Expert Choice

47

diminati oleh banyak orang untuk penelitian. Sehingga dapat

disimpulkan bahwa hal yang utama dalam AHP adalah cek konsistensi

dan perbandingan antara objek dengan skala 1-9.

3.1.2. MENENTUKAN PROPERTI KUALITAS DISAIN SOFTWARE

Beberapa sumber BW. Boehm, ISO dan McCall mengusulkan

properti kualitas software yang berbeda-beda, meskipun masih ada

kemiripan antara satu dengan yang lain, sehingga perlu dilakukan seleksi

terhadap properti kualitas yang sesuai dengan objektifitas penelitian ini.

Properti kualitas yang digunakan adalah properti kualitas yang

berhubungan dengan konsep orientasi objek bukan yang berhubungan

dengan fungsional atau proses pengembangan software. Dalam memilih

properti kualitas penulis juga mempertimbangkan ketersediaan referensi

mengenai hubungan antar OO Metric dan properti kualitas.

Karena dalam penelitian ini hanya fokus dengan

menggunakan MOOSE CK maka properti kualitas software yang tidak

berhubungan dengan MOOSE CK tidak akan dievaluasi. Sedangkan

untuk properti maintainability/testability antara Linda H Rosenberg,

Jonas Lindell, Magiel Bruntink (dalam Jurnal MTI UI Volume 5, No.1,

2007: 29), memiliki perbedaan yaitu LCOM tidak dimasukkan dalam

pemetaan menurut Linda H Rosenberg. Dalam hal ini penulis

sependapat dengan dengan Jonas Lindell dan Magiel Bruntink bahwa

parameter LCOM seharusnya mempengaruhi properti

Page 71: Perbaningan PHP Framework Dengan Expert Choice

48

maintainability/testability. Dari penjelasan diatas maka dalam penelitian

ini akan menggabungkan antara Linda H Rosenberg, Jonas Lindell,

Magiel Bruntink sehingga tabel 2.2 akan dirubah menjadi seperti tabel

3.1. Dimana properti maintainability/testability ditambah parameter

metric LCOM.

Tabel 3.1. Hubungan properti kualitas dan MOOSE CK yang akan

digunakan dalam penelitian

Properti Kualitas Disain

Software

Parameter Metric

Efficiency LCOM, CBO, DIT, NOC

Understandability WMC, RFC, DIT

Reusability WMC, LCOM, CBO, DIT, NOC

Maintainability/Testability WMC, RFC, DIT, NOC, LCOM

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

3.1.3. MENENTUKAN KORELASI ANTARA MOOSE CK DENGAN

PROPERTI KUALITAS DISAIN SOFTWARE

Untuk mendapatkan nilai dari kualitas disain software perlu

dipetakan antara parameter-parameter MOOSE CK dengan properti

kualitas disain software.

Dengan melakukan pemetaan ini dapat dilihat kontribusi dari

parameter-parameter MOOSE CK terhadap masing-masing properti

kualitas. Korelasi antara MOOSE CK dengan properti kualitas dapat

diambil dari beberapa referensi Linda H Rosenberg, Jonas Lindell,

Magiel Bruntink dalam Jurnal MTI UI Volume 5, No.1. Sehingga

Page 72: Perbaningan PHP Framework Dengan Expert Choice

49

apabila tabel 2.3 dan tabel 3.1 digabungkan akan menghasilkan seperti

pada tabel 3.2.

Tabel 3.2. Hubungan dan Pengaruh Parameter MOOSE CK pada

Properti Kualitas Disain Software yang akan digunakan dalam penelitian.

Metric

Desirable

Value

Efficiency

Understand-

ability

Reusability

Maintainability

/Testability

WMC ↓ ↑ ↑ ↑

DIT ↓ ↑ ↑ ↑ ↑

NOC ↓ ↑ ↑ ↑

CBO ↓ ↑ ↑

RFC ↓ ↑ ↑

LCOM ↓ ↑ ↑ ↑

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

Tampak pada tabel 3.2 bahwa tiap-tiap properti kualitas

mempunyai parameter-parameter MOOSE CK yang berbeda-beda.

Kemudian nilai parameter MOOSE CK berbanding terbalik dengan

properti kualitas disain software.

3.1.4. MENGGABUNGKAN METODE AHP, PARAMETER MOOSE CK

DAN PARAMETER PROPERTI KUALITAS DISAIN SOFTWARE

Setelah dihasilkan pemetaan antara properti kualitas, parameter

MOOSE CK kemudian AHP yang akan menggabungkan semua item

tersebut sehingga membentuk sebuah metode pengukuran kualitas disain

Page 73: Perbaningan PHP Framework Dengan Expert Choice

50

software. Metode pengukuran yang akan dihasilkan bersifat umum

artinya tidak tergantung pada salah satu jenis software (contoh : aplikasi

desktop, aplikasi web) atau domain tertentu namun software yang akan

di evaluasi harus memiliki domain yang sama.

3.1.5. MENERAPKAN METODE YANG TELAH DIRUMUSKAN PADA

SEBUAH STUDI KASUS

Setelah metode pengukuran kualitas disain dirumuskan, rasanya

tidak lengkap apabila tidak diujicobakan pada sebuah studi kasus. Karena

itu penulis menambahkan sebuah bab yang akan membahas implementasi

metode pengukuran kualitas disain software dengan menggunakan studi

kasus pada framework berbasis bahasa pemrograman PHP. Penulis

sengaja memilih framework PHP karena penelitian mengenai kualitas

framework PHP masih sangat jarang, diharapkan dengan memakai metode

ini akan dapat menganalisa dan kemudian membuat peringkat framework

mana yang terbaik dari framework lain yang dibandingkan. Dengan

adanya studi kasus seperti ini maka metode pengukuran akan lebih terasa.

Pada studi kasus ini penulis akan menggunakan 5 framework PHP

yang paling banyak diminati/digunakan menurut versi

www.phpframeworks.com. Framework ini diurutkan mulai dari yang

sering digunakan oleh para programmer PHP dalam membangun aplikasi

web, Yii (93 Votes), CodeIgniter (88 Votes), CakePHP (67 Votes),

Symfony (58 Votes), Zend (45 Votes). Data ini diambil pada tanggal 9

Page 74: Perbaningan PHP Framework Dengan Expert Choice

51

Oktober 2010. Kemudian dalam penghitungan parameter MOOSE CK

akan digunakan tool PHP Depend yang khusus untuk mengukur kualitas

metric dari bahasa pemrograman PHP.

Page 75: Perbaningan PHP Framework Dengan Expert Choice

54

BAB IV

ANALISIS PENELITIAN

Metode AHP dengan kombinasi parameter MOOSE CK dan properti

kualitas disain software yang dipakai dalam penelitian sebelumnya dapat

dijadikan sebagai sebuah metode dalam membandingkan kualitas disain

software. Kombinasi yang dihasilkan dari metode dan parameter tersebut

diharapkan mampu memberikan peringkat kualitas disain software secara

objektif, sedangkan perbandingan secara subjektif bisa dilihat dalam survey

www.phpframeworks.com pada tanggal 9 Oktober 2010.

Untuk mempermudah penjelasan mengenai metode perbandingan kualitas

disain software. Penulis membagi metode tersebut dalam empat tahap utama,

antara lain pembobotan MOOSE CK, evaluasi MOOSE CK, pembobotan

properti kualitas disain dan evaluasi properti kualitas disain. Tahapan ini

dijelaskan pada Gambar 4.1. Hasil akhir yang diharapkan dari metode ini adalah

masing-masing software memiliki satu nilai yang menginterpretasikan kualitas

disain software. Sehingga dari nilai tersebut para pengguna dapat menentukan

peringkat kualitas disain software.

Page 76: Perbaningan PHP Framework Dengan Expert Choice

55

Gambar 4.1. Empat Tahapan Utama Metode Pengukuran Kualitas Disain Software

(Sumber: Tesis Magister Teknologi Informasi, (Depok: Jurnal Sistem Informasi

MTI UI, Volume 5, No.1, 2007))

4.1. PEMBOBOTAN PARAMETER MOOSE CK

Pada tahap pembobotan, parameter MOOSE CK dibagi dalam

sembilan tahapan. Dimana tujuannya adalah untuk mendapatkan bobot

dari masing-masing parameter MOOSE CK. Hal ini seperti yang

dijelaskan pada Gambar 4.2. Hasil yang diperoleh dari pembobotan

parameter-parameter MOOSE CK harus dicek konsistensinya, ini

bertujuan untuk mengukur konsistensi dalam memberikan penilaian, pada

skala 1-9. Proses pembobotan MOOSE CK adalah sebagai berikut :

Pembobotan MOOSE CK

Evaluasi MOOSE CK

Pembobotan Properti Kualitas

Evaluasi Properti Kualitas

Hasil Evaluasi

Keseluruhan

Software

Page 77: Perbaningan PHP Framework Dengan Expert Choice

56

Gambar 4.2. Proses Pembobotan Parameter MOOSE CK

(Sumber: Tesis Magister Teknologi Informasi, (Depok: Jurnal Sistem Informasi

MTI UI, Volume 5, No.1, 2007))

Perbandingan nilai skala Saathy pada

parameter MOOSE CK

Menjumlahkan total pada masing-

masing kolom

Membagi masing-masing cell dengan

jumlah total sesuai dengan kolom

Menghitung rata-rata pada setiap baris

Hasil factor

Pembobotan

Menghitung Weighted Sum Vector

Menghitung Consistency Vector

Menghitung Consistency Ratio

Menghitung Consistency Index

Menghitung Lambda

Cek

Consis-

tency

Ratio

Faktor pembobotan parameter MOOSE

CK dapat digunakan

CR < 0.1

CR >= 0.1

Page 78: Perbaningan PHP Framework Dengan Expert Choice

57

4.1.1. Perbandingan Nilai Skala Saathy pada Parameter MOOSE

CK

Perbandingan parameter-parameter MOOSE CK

berpedoman pada skala Saathy. Seperti yang ditunjukkan pada

Tabel 2.3. Dalam membandingkan parameter-parameter MOOSE

CK harus mempertimbangkan objektifitas dari pengukuran

software. Pemetaan metric dengan objet oriented design element,

Tabel 4.1 merupakan salah satu tool yang dapat digunakan dalam

membandingkan parameter-parameter MOOSE CK, maka

pemberian nilai skala dapat disesuaikan dengan nilai objektifitas

pengukuran kualitas disain software.

Tabel 4.1. Pemetaan metric dengan Object Oriented Design

Element

Metric Object

Definition

Object

Attributes

Object

Communication

WMC √ √

DIT √

NOC √

RFC √ √

CBO √

LCOM √

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

Berikut ini adalah contoh dalam memberikan nilai

perbandingan dari masing-masing parameter MOOSE CK. Dalam

contoh ini penulis ingin mengukur dependency objek-objek dalam

software, sehingga parameter yang memiliki orientasi object

Page 79: Perbaningan PHP Framework Dengan Expert Choice

58

communication memiliki perbandingan nilai lebih besar

dibandingkan orientasi yang lain. Urutan selanjutnya adalah object

attribute, elemen ini mewakili konsep encapsulation yang dapat

mempengaruhi faktor dependency object dalam software.

Kemudian dilanjutkan dengan object definition. Hasil

perbandingan dalam tabel tidak selalu sama tergantung pada

objektifitas software aplikasi yang diukur.

Tabel 4.2. Hasil dari perbandingan antara parameter

WMC DIT NOC CBO RFC LCOM

WMC 1 3 4 1/4 1/7 2

DIT 1/3 1 3 1/5 1/8 1/2

NOC 1/4 1/3 1 1/6 1/9 1/4

CBO 4 5 6 1 1/3 3

RFC 7 8 9 3 1 4

LCOM 1/2 2 4 1/3 1/4 1

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

Pada tabel 4.2 menerangkan bahwa nilai-nilai tersebut

adalah hasil perbandingan antara parameter-parameter MOOSE

CK berdasarkan object oriented design element.

4.1.2. Menjumlahkan Total pada Masing-masing Kolom

Setelah melakukan perbandingan pada skala Saathy,

langkah selanjutnya adalah menjumlahkan total masing-masing

kolom seperti pada Tabel 4.3.

Page 80: Perbaningan PHP Framework Dengan Expert Choice

59

Tabel 4.3. Jumlah total pada masing-masing kolom

WMC DIT NOC CBO RFC LCOM

WMC 1.0000 3.0000 4.0000 0.2500 0.1429 2.0000

DIT 0.3333 1.0000 3.0000 0.2000 0.1250 0.5000

NOC 0.2500 0.3333 1.0000 0.1667 0.1111 0.2500

CBO 4.0000 5.0000 6.0000 1.0000 0.3333 3.0000

RFC 7.0000 8.0000 9.0000 3.0000 1.0000 4.0000

LCOM 0.5000 2.0000 4.0000 0.3333 0.2500 1.0000

------- + ------- + ------- + ----- + ----- + ------- +

Total 13.0833 19.3333 27.0000 4.9500 1.9623 10.7500

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

Pada tabel 4.3 menerangkan bahwa nilai-nilai akhir tersebut

adalah hasil dari jumlah total pada tiap-tiap kolom yang

didapatkan.

4.1.3. Membagi Masing-masing Cell dengan Jumlah Total

Menghitung rata-rata dengan membagi pada masing-

masing cell dengan jumlah total pada kolom yang sesuai, seperti

pada Tabel. 4.4.

Tabel 4.4. Membagi masing-masing cell dengan jumlah total

WMC DIT NOC CBO RFC LCOM

WMC 1/

13.0833

3/

19.3333

4/

27

0.25/

4.95

0.1429/

1.9623

2/

10.75

DIT 0.3333/

13.0833

1/

19.3333

3/

27

0.2/

4.95

0.125/

1.9623

0.5/

10.75

NOC 0.25/

13.0833

0.3333/

19.3333

1/

27

0.1667/

4.95

0.1111/

1.9623

0.25/

10.75

CBO 4/

13.0833

5/

19.3333

6/

27

1/

4.95

0.3333/

1.9623

3/

10.75

RFC 7/

13.0833

8/

19.3333

9/

27

3/

4.95

1/

1.9623

4/

10.75

LCOM 0.5/

13.0833

2/

19.3333

4/

27

0.3333/

4.95

0.25/

1.9623

1/

10.75

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

Page 81: Perbaningan PHP Framework Dengan Expert Choice

60

Pada tabel 4.4 adalah membagi setiap cell dengan jumlah

total yang telah didapatkan pada table 4.3.

Tabel 4.5. Hasil pembagian dari masing-masing cell

WMC DIT NOC CBO RFC LCOM

WMC 0.0764 0.1552 0.1481 0.0505 0.0728 0.1860

DIT 0.0255 0.0517 0.1111 0.0404 0.0637 0.0465

NOC 0.0191 0.0172 0.0370 0.0377 0.0566 0.0233

CBO 0.3057 0.2586 0.2222 0.2020 0.1699 0.2791

RFC 0.5350 0.4138 0.3333 0.6061 0.5096 0.3721

LCOM 0.0382 0.1034 0.1481 0.0673 0.1274 0.0930

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

Pada tabel 4.5 adalah hasil dari pembagian pada tabel 4.4.

4.1.4. Menghitung Rata-rata pada Setiap Baris

Hasil perhitungan rata-rata ini akan digunakan sebagai

bobot pada masing-masing parameter.

Tabel 4.6. Rata-rata pada masing-masing parameter MOOSE CK

sebagai bobot parameter MOOSE CK

Rata-

rata

WMC (0.0764+0.1552+0.1481+0.0505+

0.0728+0.1860)/6 0.1149

DIT (0.0255+0.0517+0.1111+0.0404+

0.0637+0.0465)/6 0.0565

NOC (0.0191+0.0172+0.037+0.0337+

0.0566+0.0233)/6 0.0312

CBO (0.3057+0.2586+0.2222+0.2020+

0.1699+0.2791)/6 0.2396

RFC (0.5350+0.4138+0.3333+0.6061+

0.5096+0.3721)/6 0.4617

LCOM (0.0382+0.1034+0.1481+0.0673+

0.1274+0.0930)/6 0.0963

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

Pada tabel 4.6 adalah menghitung rata-rata setiap baris

dengan cara menjumlahkan masing-masing baris sesuai dengan

nilai yang didapatkan pada tabel 4.5 kemudian dibagi dengan

Page 82: Perbaningan PHP Framework Dengan Expert Choice

61

jumlah item yang dibandingkan, dalam evaluasi ini item yang

digunakan ada 6.

4.1.5. Menghitung Weighted Sum Vector

Setelah dihasilkan bobot pada masing-masing parameter

MOOSE CK, selanjutnya hasil dari pembobotan tersebut perlu

dilakukan cek konsistensi. Cek konsistensi dilakukan dengan cara

menghitung Weighted Sum Vector seperti pada tabel 4.7. Weighted

Sum Vector diperoleh dengan mengalikan hasil bobot pada tabel

4.6 dengan perbandingan semula, yaitu tabel 4.2.

Tabel 4.7. Weighted Sum Vector

Weighted Sum Vector

(0.1149)(1) + (0.0565)(3) + (0.0312)(4) + (0.2396)(0.25) +

(0.4617)(0.1429) + (0.0963)(2) 0.7273

(0.1149)(0.3333) + (0.0565)(1) + (0.0312)(3) + (0.2396)(0.2)

+ (0.4617)(0.1250) + (0.0963)(0.5) 0.3420

(0.1149)(0.25) + (0.0565)(0.3333) + (0.0312)(1) +

(0.2396)(0.1667) + (0.4617)(0.1111) + (0.0963)(0.25) 0.1940

(0.1149)(4) + (0.0565)(5) + (0.0312)(6) + (0.2396)(1) +

(0.4617)(0.3333) + (0.0963)(3) 1.6110

(0.1149)(7) + (0.0565)(8) + (0.0312)(9) + (0.2396)(3) +

(0.4617)(1) + (0.0963)(4) 3.1017

(0.1149)(0.5) + (0.0565)(2) + (0.0312)(4) + (0.2396)(0.3333)

+ (0.4617)(0.25) + (0.0963)(1) 0.5866

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

Tabel 4.7 menghitung weighted sum vector. Menghitung

weighted sum vector adalah tahap awal untuk menghitung

konsistensi sebuah pembobotan evaluasi.

Page 83: Perbaningan PHP Framework Dengan Expert Choice

62

4.1.6. Menghitung Consistency Vector

Perhitungan consistency vector dilakukan dengan cara

membagi hasil weighted sum vector tabel 4.7 dengan hasil bobot

parameter MOOSE CK tabel 4.6 sehingga didapatkan hasil

consistency vector seperti tabel 4.8.

Tabel 4.8. Consistency Vector

Consistency

vector

0.7273/0.1149 = 6.3327

0.3420/0.0565 = 6.0543

0.1940/0.0312 = 6.2264

1.6110/0.2396 = 6.7242

3.1017/0.4617 = 6.7188

0.5866/0.0963 = 6.0934

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

Pada tabel 4.8 menerangkan bahwa nilai consistency vector

didapatkan dengan cara membagi hasil dari tabel 4.7 dengan tabel

4.6.

4.1.7. Menghitung Lambda

Perhitungan lambda menggunakan hasil dari Tabel 4.8,

consistency vector, dengan menjumlahkan semua consistency

vector dan dibagi dengan jumlah item yang di evaluasi. Seperti

pada persamaan di bawah ini. Dalam kasus ini jumlah item adalah

6.

λ=6

6.0934)6.71886.72426.22646.0543(6.3327 = 6.3582

Page 84: Perbaningan PHP Framework Dengan Expert Choice

63

4.1.8. Menghitung Consistency Index

Dalam perhitungan consistency index menggunakan hasil

dari perhitungan lambda kemudian disubtitusikan dalam

persamaan 2.1, sehingga hasil perhitungan seperti pada persamaan

4.1.

CI = )1(

)(

n

n=

)16(

)63582.6(

= 0.0716 .....................(4.1)

4.1.9. Menghitung Consistency Ratio

Perhitungan consistency ratio menggunakan persamaan 4.2

dengan mensubtitusikan hasil dari persamaan 4.1 dan nilai Random

Index pada Tabel 2.11. Sesuai dengan Tabel 2.11 karena jumlah

item yang di evaluasi ada 6 maka nilai Random Index (RI) = 1.24.

CR = )(

)(

RI

CI=

24.1

0716.0 = 0.0577

Sesuai dengan konsep AHP bahwa jika consistency ratio

adalah 0.1 atau kurang maka evaluasi perbandingan diatas adalah

konsisten, namun apabila lebih besar daripada 0.1 maka

perbandingan antara parameter harus diulang kembali. Karena nilai

CR = 0.057, kurang dari 0.1 maka pembobotan parameter yang

dihasilkan pada Tabel 4.6 dapat diterima.

4.2. EVALUASI PARAMETER MOOSE CK

Evaluasi parameter MOOSE CK adalah tahapan kedua dari metode

pengukuran kualitas disain software (lihat gambar 4.1). Pada tahap ini

Page 85: Perbaningan PHP Framework Dengan Expert Choice

64

dilakukan perbandingan parameter MOOSE CK yang sama antar masing-

masing software. Detail proses evaluasi parameter MOOSE CK seperti

pada Gambar 4.3.

Gambar 4.3. Proses Evaluasi Parameter MOOSE CK

(Sumber: Tesis Magister Teknologi Informasi, (Depok: Jurnal Sistem Informasi

MTI UI, Volume 5, No.1, 2007))

4.2.1. Pengukuran Parameter MOOSE CK

Banyak software atau tool yang dapat melakukan

pengukuran MOOSE CK. Masing-masing tool memiliki

Menghitung parameter Moose CK

(WMC, DIT, NOC, CBO, FC, LCOM)

pada masing-masing framework dengan

tool PHP Depend

Data parameter WMC, DIT,

NOC, CBO, RFC, LCOM pada

masing-masing framework

Perbandingan nilai parameterMOOSE

CK pada masing-masing framework

Mnghitung total nilai parameter

MOOSE CK pada masing-masing

framework

Membagi rata-rata masing-masing baris

Membagi masing-masing cell dengan

jumlah total sesuai dengan kolom

Hasil faktor evaluasi MOOSE

CK pada masing-masing

framework

Page 86: Perbaningan PHP Framework Dengan Expert Choice

65

kelebihan dan kekurangan. Diantara tool yan penulis pernah

coba adalah PHPUnit, CCLOC, namun yang paling baik dalam

hal perhitungan adalah PHP Depend. PHP Depend adalah

software metric khusus untuk bahasa pemrograman PHP.

Berbeda dengan software metric lainnya, PHP Depend

mendukung untuk menghitung aplikasi PHP yang berorientasi

objek. Seperti inheritance, coupling, encapsulation, cyclomatic

complexity dan lain sebagainya. Tool ini berbasis console, dan

berjalan dalam sistem operasi linux. Instalasinya cukup mudah,

kita dapat mendownloadnya lewat website resminya di

www.pdepend.net. Kemudian kita mengikuti panduan

instalasinya dengan benar, untuk mengeceknya apakah sudah

terinstal, kita perlu mengetik pdepend –version pada console

terminal linux.

Setelah melalui perhitungan menggunakan PHP

Depend maka didapatkan hasil sebagai berikut ini.

Tabel 4.9. Jumlah class pada masing-masing framework

PHP

No Framework Jumlah Class

1 Yii 1082

2 CodeIgniter 136

3 CakePHP 460

4 Symfony 2102

5 Zend 2244

(Sumber: Hasil Pengujian Penulis)

Page 87: Perbaningan PHP Framework Dengan Expert Choice

66

Tabel 4.9 adalah jumlah masing-masing class pada

setiap framework dengan menggunakan PHP Depend.

Tabel 4.10. Hasil parameter MOOSE CK pada masing-

masing framework PHP

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

(Sumber: Hasil Pengujian Penulis)

Tabel 4.10 adalah jumlah masing-masing class pada

setiap framework dengan menggunakan PHP Depend.

4.2.2. Perbandingan Nilai Parameter MOOSE CK pada Masing-

masing Software

Setelah dilakukan pengukuran parameter MOOSE CK

kemudian dilakukan perbandingan antara software dengan

menggunakan salah satu parameter MOOSE CK. Namun

seperti dijelaskan sebelumnya karena nilai parameter MOOSE

berbanding terbalik dengan properti kualitas disain software,

maka perbandingan tersebut perlu dilakukan inverse. Sehingga

apabila framework-I. WMC = a, framework-II. WMC = b,

Page 88: Perbaningan PHP Framework Dengan Expert Choice

67

framework-III. WMC = c, maka perbandingannya adalah

sebagai berikut :

Tabel 4.11. Consistency Vector

WMC Framework-I Framework -II Framework -III

Framework-I 1 1/(a/b) 1/(a/c)

Framework –II 1/(1/(a/b)) 1 1/(b/c)

Framework -III 1/(1/(a/c)) 1/(1/(b/c)) 1

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

Pada framework-I dibandingkan framework-II adalah

b

a karena kualitas berbanding terbalik dengan nilai parameter

sehingga harus di inverse menjadi

b

a

1. Sedangkan untuk

perbandingan framework-II dan framework-I adalah kebalikan

dari

b

a

1 menjadi

)/(

1

1

ba

. Pada nilai-nilai yang lain

memiliki kaidah yang sama. Selanjutnya kita akan

memasukkan nilai sebenarnya dalam perhitungan.

Page 89: Perbaningan PHP Framework Dengan Expert Choice

68

Tabel 4.12. Perbandingan parameter WMC pada masing-

masing framework PHP

WMC 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

Yii versi

1.0.12 1

1/

(5.6330/13.6102)

1/

(5.6330/17.55)

1/

(5.6330/8.5713)

1/

(5.6330/10.8395)

CodeIgniter

versi 1.7.2 1/

(1/(5.6330/13.6102)) 1

1/ (13.6102/17.55)

1/ (13.6102/ 8.5713)

1/ (13.6102/10.8395)

CakePHP

versi 1.3.3

1/

(1/(5.6330/17.55))

1/

(1/(13.6102/17.55))

1

1/

(17.55/8.5713)

1/

(17.55/10.8395)

Symfony

versi 1.4.8

1/

(1/(5.6330/8.5713))

1/

(1/(13.6102/ 8.5713))

1/

(1/(17.55/8.5713))

1

1/

(8.5713/10.8395)

Zend versi

1.10.8

1/

(1/(5.6330/10.8395))

1/

(1/(13.6102/10.8395))

1/

(1/(17.55/10.8395))

1/

(1/(8.5713/10.8395)

)

1

(Sumber: Hasil Pengujian Penulis)

Pada tabel 4.12 menerangkan bahwa nilai-nilai tersebut

adalah perbandingan antara masing-masing framework

terhadap parameter WMC, nilainya berdasarkan dari tabel 4.11.

Tabel 4.13. Hasil perbandingan parameter WMC pada

masing-masing framework PHP

WMC 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

Yii versi

1.0.12 1

2.4160

3.1153

1.5216

1.9242

CodeIgniter

versi 1.7.2 0.4139

1

0.7755

0.6298

0.7964

CakePHP

versi 1.3.3 0.3210

1.2894

1

0.4884

0.6176

Symfony

versi 1.4.8 0.6572

1.5878

2.0475

1

1.2647

Zend versi

1.10.8 0.5197

1.2556

1.6191

0.7907

1

(Sumber: Hasil Pengujian Penulis)

Page 90: Perbaningan PHP Framework Dengan Expert Choice

69

Pada tabel 4.13 adalah nilai hasil perbandingan dari

tabel 4.12.

4.2.3. Menghitung Total Nilai Parameter MOOSE CK pada

Masing-masing Software

Hasil perbandingan parameter MOOSE CK Tabel 4.13

kemudian dihitung jumlah total pada masing-masing software

seperti Tabel 4.14.

Tabel 4.14. Jumlah total pada masing-masing framework

PHP

WMC 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

Yii versi

1.0.12 1

2.4160

3.1153

1.5216

1.9242

CodeIgniter

versi 1.7.2 0.4139

1

0.7755

0.6298

0.7964

CakePHP

versi 1.3.3 0.3210

1.2894

1

0.4884

0.6176

Symfony

versi 1.4.8 0.6572

1.5878

2.0475

1

1.2647

Zend versi

1.10.8 0.5197

1.2556

1.6191

0.7907

1

---------- + ------------ + ------------ + ----------- + --------- +

Total 2.9118 7.5488 8.5574 4.4305 5.6029

(Sumber: Hasil Pengujian Penulis)

Dari tabel 4.14 menerangkan bahwa masing-masing

kolom dijumlahkan untuk mendapatkan nilai totalnya. Dapat

kita lihat bahwa masing-masing software memiliki total nilai

yang bervariasi.

Page 91: Perbaningan PHP Framework Dengan Expert Choice

70

4.2.4. Membagi Masing-masing Cell dengan Jumlah Total

Hasil penjumlahan total pada masing-masing kolom tabel

4.14 kemudian dilakukan pembagian pada masing-masing cell

dengan jumlah total pada kolom yang sesuai seperti pada tabel

4.15.

Tabel 4.15. Membagi cell dengan jumlah total

WMC 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

Yii versi

1.0.12

1/2.9188

= 0.3434

2.416/7.5488

= 0.3201

3.1153/8.5574

= 0.364

1.5216/4.4305

= 0.3434

1.9242/5.6029

= 0.3434

CodeIgniter

versi 1.7.2

0.4139/2.9188

= 0.1421

1/7.5488

= 0.1325

0.7755/8.5574

= 0.0906

0.6298/4.4305

= 0.1422

0.7964/5.6029

= 0.1421

CakePHP

versi 1.3.3

0.321/2.9188

= 0.1102

1.2894/7.5488

= 0.1708

1/8.5574

= 0.1169

0.4884/4.4305

= 0.1102

0.6176/5.6029

= 0.1102

Symfony

versi 1.4.8

0.6572/2.9188

= 0.2257

1.5878/7.5488

= 0.2103

2.0475/8.5574

= 0.2392

1/4.4305

= 0.2257

1.2647/5.6029

= 0.2257

Zend versi

1.10.8

0.5197/2.9188

= 0.1785

1.2556/7.5488

= 0.1663

1.6191/8.5574

= 0.1892

0.7907/4.4305

= 0.1785

1/5.6029

= 0.1785

(Sumber: Hasil Pengujian Penulis)

Pada tabel 4.15 adalah membagi setiap cell dengan

jumlah total yang telah ditetapkan pada tabel 4.14.

4.2.5. Menghitung Rata-rata pada Masing-masing Baris

Menghitung rata-rata pada masing-masing baris dari

Tabel 4.15 dan hasil ini akan digunakan sebagai faktor

evaluasi.

Page 92: Perbaningan PHP Framework Dengan Expert Choice

71

Tabel 4.16. Menghitung rata-rata tiap baris

WMC Faktor Evaluasi

Yii versi

1.0.12 (0.3434 + 0.3201+ 0.364 + 0.3434 + 0.3434)/5 (1.7143/5) = 0.3429

CodeIgniter

versi 1.7.2 (0.1421 + 0.1325 + 0.0906 + 0.1422 + 0.1421)/5 (0.6495/5) = 0.1299

CakePHP

versi 1.3.3 (0.1102 + 0.1708 + 0.1169 + 0.1102 + 0.1102)/5 (0.6183/5) = 0.1237

Symfony

versi 1.4.8 (0.2257 + 0.2103 + 0.2392 + 0.2257 + 0.2257)/5 (1.1266/5) = 0.2253

Zend versi

1.10.8 (0.1785 + 0.1663 + 0.1892 + 0.1785 + 0.1785)/5 (0.891/5) = 0.1782

(Sumber: Hasil Pengujian Penulis)

Pada tabel 4.16 dalam tabel tersebut terlihat bahwa hasil

perhitungan dari tabel 4.15 tiap-tiap baris dicari nilai rata-

ratanya. Nilai tersebut didapatkan dengan cara menjumlahkan

masing-masing baris kemudian dibagi dengan jumlah item

yang dibandingkan, dalam hal ini item yang dibandingkan ada

5. Pada faktor WMC framework Yii mempunyai nilai yang

paling tinggi dengan nilai 0.3429. Hal tersebut menunjukkan

bahwa nilai WMC yang tinggi mempunyai kecenderungan

kegagalan software. Kemudian disusul pada urutan kedua

sampai terakhir dengan framework symfony, zend, codeigniter

dan cakePHP.

Prosedur yang sama juga dilakukan terhadap lima

parameter MOOSE CK yang lain yaitu DIT, NOC, CBO, RFC

dan LCOM.

Page 93: Perbaningan PHP Framework Dengan Expert Choice

72

4.2.6. Menghitung DIT, NOC, CBO, RFC, LCOM

4.2.6.1. Perhitungan Faktor Evaluasi DIT

Tabel 4.17. Perbandingan parameter DIT pada masing-

masing framework PHP

DIT 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

Yii versi

1.0.12 1

1/

(0.7874/4.9779)

1/

(0.7874/2.3521)

1/

(0.7874/1.7093)

1/

(0.7874/1.5668)

CodeIgniter

versi 1.7.2

1/

(1/(0.7874/4.9779)) 1

1/

(4.9779/2.3521)

1/

(4.9779/ 1.7093)

1/

(4.9779/1.5668)

CakePHP

versi 1.3.3

1/

(1/(0.7874/2.3521))

1/

(1/(4.9779/2.3521)

)

1

1/

(2.3521/1.7093)

1/

(2.3521/1.5668)

Symfony

versi 1.4.8

1/

(1/(0.7874/1.7093))

1/

(1/(4.9779/ 1.7093))

1/

(1/(2.3521/1.7093))

1 1/

(1.7093/1.5668)

Zend versi

1.10.8

1/

(1/(0.7874/1.5668))

1/

(1/(4.9779/1.5668))

1/

(1/(2.3521/1.5668)

)

1/

(1/(1.7093/1.5668))

1

(Sumber: Hasil Pengujian Penulis)

Pada tabel 4.17 menerangkan bahwa nilai-nilai tersebut

adalah perbandingan antara masing-masing framework

terhadap parameter DIT, nilainya berdasarkan dari tabel 4.11.

Page 94: Perbaningan PHP Framework Dengan Expert Choice

73

Tabel 4.18. Hasil perbandingan parameter DIT pada

masing-masing framework PHP

DIT 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

Yii versi

1.0.12 1 6.3211 2.9868 2.1706 0.9897

CodeIgniter

versi 1.7.2 0.1582 1 0.4725 0.3434 0.3148

CakePHP

versi 1.3.3 0.3348 2.1164 1 0.7268 0.6661

Symfony

versi 1.4.8 0.4607 2.9121 1.3759 1 0.9167

Zend versi

1.10.8 0.5026 3.1766 1.5013 1.0909 1

(Sumber: Hasil Pengujian Penulis)

Pada tabel 4.18 adalah nilai hasil perbandingan dari

tabel 4.17.

Tabel 4.19. Jumlah total pada masing-masing framework

PHP

DIT 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

Yii versi

1.0.12 1 6.3211 2.9868 2.1706 0.9897

CodeIgniter

versi 1.7.2 0.1582 1 0.4725 0.3434 0.3148

CakePHP

versi 1.3.3 0.3348 2.1164 1 0.7268 0.6661

Symfony

versi 1.4.8 0.4607 2.9121 1.3759 1 0.9167

Zend versi

1.10.8 0.5026 3.1766 1.5013 1.0909 1

------------ + ------------ + ------------ + ------------ + ------------ +

Total 2.4563 15.5262 7.3365 5.3317 3.8873

(Sumber: Hasil Pengujian Penulis)

Page 95: Perbaningan PHP Framework Dengan Expert Choice

74

Dari tabel 4.19 menerangkan bahwa masing-masing

kolom dijumlahkan untuk mendapatkan nilai totalnya. Dapat

kita lihat bahwa masing-masing software memiliki total nilai

yang bervariasi.

Tabel 4.20. Membagi cell dengan jumlah total

DIT 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

Yii versi

1.0.12

1/2.4563

= 0.4071163

6.3211/15.5262

= 0.4071247

2.9868/7.3365

= 0.4071151

2.1706/5.3317

= 0.4071121

0.9897/3.8873

= 0.2545983

CodeIgniter

versi 1.7.2

0.1582/2.4563

= 0.0644058

1/15.5262

= 0.0644073

0.4725/7.3365

= 0.0644040

0.3434/5.3317

= 0.0644072

0.3148/3.8873

= 0.0809817

CakePHP

versi 1.3.3

0.3348/2.4563

= 0.1363026

2.1164/15.5262

= 0.1363115

1/7.3365

= 0.1363048

0.7268/5.3317

= 0.1363167

0.6661/3.8873

= 0.1713529

Symfony

versi 1.4.8

0.4607/2.4563

= 0.1875585

2.9121/15.5262

= 0.1875604

1.3759/7.3365

= 0.1875417

1/5.3317

= 0.1875574

0.9167/3.8873

= 0.2358192

Zend versi

1.10.8

0.5026/2.4563

= 0.2046167

3.1766/15.5262

= 0.2045961

1.5013/7.3365

= 0.2046344

1.0909/5.3317

= 0.2046064

1/3.8873

= 0.2572480

(Sumber: Hasil Pengujian Penulis)

Pada tabel 4.20 adalah membagi setiap cell dengan

jumlah total yang telah ditetapkan pada tabel 4.19.

Tabel 4.21. Menghitung rata-rata tiap baris

DIT Faktor

Evaluasi Yii versi

1.0.12 (0.4071163 + 0.4071247 + 0.4071151+ 0.4071121 + 0.2545983)/5 (1.8830667/5) = 0.3766

CodeIgniter

versi 1.7.2 (0.0644058 + 0.0644073 + 0.0644040 + 0.0644072 + 0.0809817)/5 (0.3386060/5) = 0.0677

CakePHP

versi 1.3.3 (0.1363026 + 0.1363115 + 0.1363048 + 0.1363167 + 0.1713529)/5 (0.7165885/5) = 0.1433

Symfony

versi 1.4.8 (0.1875585 + 0.1875604 + 0.1875417 + 0.1875574 + 0.2358192)/5 (0.9860373/5) = 0.1972

Zend versi

1.10.8 (0.2046167 + 0.2045961 + 0.2046344 + 0.2046064 + 0.2572480)/5 (1.0757015/5) = 0.2151

(Sumber: Hasil Pengujian Penulis)

Page 96: Perbaningan PHP Framework Dengan Expert Choice

75

Pada tabel 4.21 tersebut terlihat bahwa hasil

perhitungan dari tabel 4.20 tiap-tiap baris dicari nilai rata-

ratanya. Nilai tersebut didapatkan dengan cara menjumlahkan

masing-masing baris kemudian dibagi dengan jumlah item

yang dibandingkan, dalah hal ini item yang dibandingkan ada

5. Pada faktor DIT framework Yii memiliki nilai yang paling

besar dengan nilai 0.3766, hal ini menandakan kedalaman

hierarki framework Yii paling besar, sehingga akan semakin

tinggi kompleksitasnya. Kemudian pada urutan kedua sampai

terakhir ada framework Zend, Symfony, CakePHP dan

CodeIgniter.

4.2.6.2. Perhitungan Faktor Evaluasi NOC

Tabel 4.22. Perbandingan parameter NOC pada masing-

masing framework PHP

NOC 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

Yii versi

1.0.12 1

1/

(3.7449/9.3161)

1/

(3.7449/11.1717)

1/

(3.7449/6.5309)

1/

(3.7449/7.7393)

CodeIgniter

versi 1.7.2 1/

(1/(3.7449/9.3161)) 1

1/

(9.3161/11.1717)

1/

(9.3161/6.5309)

1/

(9.3161/7.7393

) CakePHP

versi 1.3.3

1/ (1/(3.7449/11.1717))

1/ (1/(9.3161/11.1717))

1 1/

(11.1717/6.5309)

1/ (11.1717/7.739

3)

Symfony

versi 1.4.8

1/

(1/(3.7449/6.5309))

1/

(1/(9.3161/6.5309))

1/

(1/(11.1717/6.5309))

1

1/

(6.5309/7.7393)

Zend versi

1.10.8

1/

(1/(3.7449/7.7393))

1/

(1/(9.3161/7.7393))

1/

(1/(11.1717/7.7393))

1/

(1/(6.5309/7.7393))

1

(Sumber: Hasil Pengujian Penulis)

Page 97: Perbaningan PHP Framework Dengan Expert Choice

76

Pada tabel 4.22 menerangkan bahwa nilai-nilai tersebut

adalah perbandingan antara masing-masing framework

terhadap parameter NOC, nilainya berdasarkan dari tabel 4.11.

Tabel 4.23. Hasil perbandingan parameter NOC pada

masing-masing framework PHP

NOC 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

Yii versi

1.0.12 1 2.4876 2.9833 1.7440 2.0665

CodeIgniter

versi 1.7.2 0.4020 1 1.1990 0.7010 0.8308

CakePHP

versi 1.3.3 0.3352 0.8340 1 0.5846 0.6928

Symfony

versi 1.4.8 0.5734 1.4265 1.7106 1 1.1850

Zend versi

1.10.8 0.4839 1.2037 1.4434 0.8439 1

(Sumber: Hasil Pengujian Penulis)

Pada tabel 4.23 adalah nilai hasil perbandingan dari

tabel 4.22.

Page 98: Perbaningan PHP Framework Dengan Expert Choice

77

Tabel 4.24. Jumlah total pada masing-masing framework

PHP

NOC 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

Yii versi

1.0.12 1 2.4876 2.9833 1.7440 2.0665

CodeIgniter

versi 1.7.2 0.4020 1 1.1990 0.7010 0.8308

CakePHP

versi 1.3.3 0.3352 0.8340 1 0.5846 0.6928

Symfony

versi 1.4.8 0.5734 1.4265 1.7106 1 1.1850

Zend versi

1.10.8 0.4839 1.2037 1.4434 0.8439 1

------------ + ------------ + ------------ + ------------ + ------------ +

Total 2.7945 6.9518 8.3363 4.8735 5.7751

(Sumber: Hasil Pengujian Penulis)

Dari tabel 4.24 menerangkan bahwa masing-masing

kolom dijumlahkan untuk mendapatkan nilai totalnya. Dapat

kita lihat bahwa masing-masing software memiliki total nilai

yang bervariasi.

Page 99: Perbaningan PHP Framework Dengan Expert Choice

78

Tabel 4.25. Membagi cell dengan jumlah total

NOC 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 Yii versi

1.0.12

1/2.7945

= 0.3578458

2.4876/6.9518

= 0.3578354

2.9833/8.3363

= 0.3578686

1.744/4.8735

= 0.3578537

2.0665/5.7751

= 0.3578293

CodeIgniter

versi 1.7.2

0.402/2.7945

= 0.1438540

1/6.9518

= 0.1438476

1.199/8.3363

= 0.1438288

0.701/4.8735

= 0.1438391

0.8308/5.7751

= 0.1438590

CakePHP

versi 1.3.3

0.3352/2.7945

= 0.1199499

0.834/6.9518

= 0.1199689

1/8.3363

= 0.1199573

0.5846/4.8735

= 0.11995486

0.6928/5.7751

= 0.11996323

Symfony

versi 1.4.8

0.5734/2.7945

= 0.2051888

1.4265/6.9518

= 0.2051987

1.7106/8.3363

= 0.2051989

1/4.8735

= 0.2051913

1.185/5.7751

= 0.2051913

Zend versi

1.10.8

0.4839/2.7945

= 0.1731616

1.2037/6.9518

= 0.1731494

1.4434/8.3363

= 0.1731464

0.8439/4.8735

= 0.1731610

1/5.7751

= 0.1731572

(Sumber: Hasil Pengujian Penulis)

Pada tabel 4.25 adalah membagi setiap cell dengan

jumlah total yang telah ditetapkan pada tabel 4.24.

Tabel 4.26. Menghitung rata-rata tiap baris

NOC Faktor Evaluasi

Yii versi

1.0.12

(0.3578458 + 0.3578354 + 0.3578686 + 0.3578537 +

0.3578293)/5

(1.7892327/5) = 0.3578

CodeIgniter

versi 1.7.2

(0.1438540 + 0.1438476 + 0.1438288 + 0.1438391 +

0.1438590)/5

(0.7192285/5) = 0.1438

CakePHP

versi 1.3.3

(0.1199499 + 0.1199689 + 0.1199573 + 0.11995486 +

0.11996323)/5

(0.5997943/5) = 0.1199

Symfony

versi 1.4.8

(0.2051888 + 0.2051987 + 0.2051989 + 0.2051913 +

0.2051913)/5

(1.0259686/5) = 0.2052

Zend versi

1.10.8

(0.1731616 + 0.1731494 + 0.1731464 + 0.1731610 +

0.1731572)/5

(0.8657755/5) = 0.1732

(Sumber: Hasil Pengujian Penulis)

Pada tabel 4.26 dalam tabel tersebut terlihat bahwa hasil

perhitungan dari tabel 4.25 tiap-tiap baris dicari nilai rata-

ratanya. Nilai tersebut didapatkan dengan cara menjumlahkan

Page 100: Perbaningan PHP Framework Dengan Expert Choice

79

masing-masing baris kemudian dibagi dengan jumlah item

yang dibandingkan, dalah hal ini item yang dibandingkan ada

5. Pada faktor NOC framework Yii menempati urutan pertama

dengan nilai 0.3578, hal ini berarti semakin tinggi nilainya

maka akan semakin besar pula nilai ketidakcocokan subclass

dengan abstraksi pada parent class.

4.2.6.3. Perhitungan Faktor Evaluasi CBO

Tabel 4.27. Perbandingan parameter CBO pada masing-

masing framework PHP

CBO 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

Yii versi

1.0.12 1

1/

(5.7236/13.522)

1/

(5.7236/17.1282)

1/

(5.7236/8.783)

1/

(5.7236/11.0374)

CodeIgniter

versi 1.7.2

1/

(1/(5.7236/13.522))

1

1/

(13.522/17.1282)

1/

(13.522/8.783)

1/

(13.522/11.0374)

CakePHP

versi 1.3.3

1/

(1/(5.7236/17.1282))

1/

(1/(13.522/17.1282))

1

1/

(17.1282/8.783)

1/

(17.1282/11.0374)

Symfony

versi 1.4.8

1/

(1/(5.7236/8.783))

1/

(1/(13.522/8.783))

1/

(1/(17.1282/8.783))

1 1/

(8.783/11.0374)

Zend versi

1.10.8

1/

(1/(5.7236/11.0374))

1/

(1/(13.522/11.0374))

1/

(1/(17.1282/11.0374))

1/

(1/(8.783/11.0374))

1

(Sumber: Hasil Pengujian Penulis)

Pada tabel 4.27 menerangkan bahwa nilai-nilai tersebut

adalah perbandingan antara masing-masing framework

terhadap parameter CBO, nilainya berdasarkan dari tabel 4.11.

Page 101: Perbaningan PHP Framework Dengan Expert Choice

80

Tabel 4.28. Hasil perbandingan parameter CBO pada

masing-masing framework PHP

CBO 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

Yii versi

1.0.12 1 2.3624 2.9922 1.5344 1.9283

CodeIgniter

versi 1.7.2 0.4232 1 1.2666 0.6495 0.8163

CakePHP

versi 1.3.3 0.3342 0.7895 1 0.5128 0.6444

Symfony

versi 1.4.8 0.6517 1.5396 1.95 1 1.2568

Zend versi

1.10.8 0.5186 1.2250 1.5518 0.7957 1

(Sumber: Hasil Pengujian Penulis)

Pada tabel 4.28 adalah nilai hasil perbandingan dari

tabel 4.27.

Tabel 4.29. Jumlah total pada masing-masing framework PHP

CBO 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

Yii versi

1.0.12 1 2.3624 2.9922 1.5344 1.9283

CodeIgniter

versi 1.7.2 0.4232 1 1.2666 0.6495 0.8163

CakePHP

versi 1.3.3 0.3342 0.7895 1 0.5128 0.6444

Symfony

versi 1.4.8 0.6517 1.5396 1.95 1 1.2568

Zend versi

1.10.8 0.5186 1.2250 1.5518 0.7957 1

------------ + ------------ + ------------ + ------------ + ------------ +

Total 2.9277 6.9165 8.7606 4.4924 5.6458

(Sumber: Hasil Pengujian Penulis)

Page 102: Perbaningan PHP Framework Dengan Expert Choice

81

Dari tabel 4.29 menerangkan bahwa masing-masing

kolom dijumlahkan untuk mendapatkan nilai totalnya. Dapat

kita lihat bahwa masing-masing software memiliki total nilai

yang bervariasi.

Tabel 4.30. Membagi cell dengan jumlah total

CBO 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

Yii versi

1.0.12

1/2.9277

= 0.3415650

2.3624/6.9165

= 0.3415600

2.9922/8.7606

= 0.3415519

1.5344/4.4924

= 0.3415546

1.9283/5.6458

= 0.3415459

CodeIgniter

versi 1.7.2

0.4232/2.9277

= 0.1445503

1/6.9165

= 0.1445818

1.2666/8.7606

= 0.1445791

0.6495/4.4924

= 0.1445775

0.8163/5.6458

= 0.1445854

CakePHP

versi 1.3.3

0.3342/2.9277

= 0.1141510

0.7895/6.9165

= 0.1141473

1/8.7606

= 0.1141474

0.5128/4.4924

= 0.1141483

0.6444/5.6458

= 0.1141379

Symfony

versi 1.4.8

0.6517/2.9277

= 0.2225979

1.5396/6.9165

= 0.2225981

1.95/8.7606

= 0.2225875

1/4.4924

= 0.2225982

1.2568/5.6458

= 0.2226080

Zend versi

1.10.8

0.5186/2.9277

= 0.1771356

1.2250/6.9165

= 0.1771127

1.5518/8.7606

= 0.1771340

0.7957/4.4924

= 0.1771213

1/5.6458

= 0.1771228

(Sumber: Hasil Pengujian Penulis)

Pada tabel 4.30 adalah membagi setiap cell dengan

jumlah total yang telah ditetapkan pada tabel 4.29.

Tabel 4.31. Menghitung rata-rata tiap baris

CBO Faktor Evaluasi

Yii versi

1.0.12

(0.3415650 + 0.3415600 + 0.3415519 + 0.3415546 +

0.3415459)/5

(1.7077776/5) = 0.3416

CodeIgniter

versi 1.7.2

(0.1445503 + 0.1445818 + 0.1445791 + 0.1445775 +

0.1445854)/5

(0.7228741/5) = 0.1446

CakePHP

versi 1.3.3

(0.1141510 + 0.1141473 + 0.1141474 + 0.1141483 +

0.1141379)/5

(0.5707321/5) = 0.1141

Symfony

versi 1.4.8

(0.2225979 + 0.2225981 + 0.2225875 + 0.2225982 +

0.2226080)/5

(1.1129897/5) = 0.2226

Zend versi

1.10.8

(0.1771356 + 0.1771127 + 0.1771340 + 0.1771213 +

0.1771228)/5

(0.8856265/5) = 0.1771

(Sumber: Hasil Pengujian Penulis)

Page 103: Perbaningan PHP Framework Dengan Expert Choice

82

Pada tabel 4.31, dalam tabel tersebut terlihat bahwa

hasil perhitungan dari tabel 4.30 tiap-tiap baris dicari nilai rata-

ratanya. Nilai tersebut didapatkan dengan cara menjumlahkan

masing-masing baris kemudian dibagi dengan jumlah item

yang dibandingkan, dalah hal ini item yang dibandingkan ada

5. Dalam hal faktor CBO ini framework Yii menduduki

peringkat pertama dengan nilai 0.3416, disusul dengan

framework Symfony, Zend, CodeIgniter, dan CakePHP. Hal ini

memberi arti bahwa framework Yii banyak memiliki class yang

saling ketergantungan antara satu class dengan class yang

lainnya sehingga mengindikasikan class yang tidak baik, hal itu

dikarenakan tidak memiliki tingkat modularity dan reuse yang

tinggi.

Page 104: Perbaningan PHP Framework Dengan Expert Choice

83

4.2.6.4. Perhitungan Faktor Evaluasi RFC

Tabel 4.32. Perbandingan parameter RFC pada masing-

masing framework PHP

RFC 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

Yii versi

1.0.12 1

1/

(5.1007/16.2352)

1/

(5.1007/15.826)

1/

(5.1007/7.7621)

1/

(5.1007/9.7486)

CodeIgniter

versi 1.7.2

1/

(1/(5.1007/16.2352))

1

1/

(16.2352/15.8260)

1/

(16.2352/7.7621)

1/

(16.2352/9.7486)

CakePHP

versi 1.3.3

1/

(1/(5.1007/15.826))

1/

(1/(16.2352/15.8260))

1

1/

(15.8260/7.7621)

1/

(15.8260/9.7486)

Symfony

versi 1.4.8

1/

(1/(5.1007/7.7621))

1/

(1/(16.2352/7.7621))

1/

(1/(15.8260/7.7621))

1 1/

(7.7621/9.7486)

Zend versi

1.10.8

1/

(1/(5.1007/9.7486))

1/

(1/(16.2352/9.7486))

1/

(1/(15.8260/9.7486))

1/

(1/(7.7621/9.7486))

1

(Sumber: Hasil Pengujian Penulis)

Pada tabel 4.32 menerangkan bahwa nilai-nilai tersebut

adalah perbandingan antara masing-masing framework

terhadap parameter RFC, nilainya berdasarkan dari tabel 4.11.

Tabel 4.33. Hasil perbandingan parameter RFC pada

masing-masing framework PHP

RFC 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

Yii versi 1.0.12 1 3.1827 3.1027 1.5218 1.9113

CodeIgniter

versi 1.7.2

0.3142 1 0.9748 0.4781 0.6005

CakePHP

versi 1.3.3

0.3223 1.0259 1 0.4905 0.6160

Symfony versi

1.4.8

0.6571 2.0916 2.0387 1 1.2560

Zend versi

1.10.8

0.5232 1.6653 1.6234 0.7962 1

(Sumber: Hasil Pengujian Penulis)

Page 105: Perbaningan PHP Framework Dengan Expert Choice

84

Pada tabel 4.33 adalah nilai hasil perbandingan dari

tabel 4.32.

Tabel 4.34. Jumlah total pada masing-masing framework PHP

RFC 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

Yii versi

1.0.12 1 3.1827 3.1027 1.5218 1.9113

CodeIgniter

versi 1.7.2 0.3142 1 0.9748 0.4781 0.6005

CakePHP

versi 1.3.3 0.3223 1.0259 1 0.4905 0.6160

Symfony

versi 1.4.8 0.6571 2.0916 2.0387 1 1.2560

Zend versi

1.10.8 0.5232 1.6653 1.6234 0.7962 1

---------- + ---------- + ---------- + ---------- + ---------- +

Total 2.8168 8.9655 8.7396 4.2866 5.3838

(Sumber: Hasil Pengujian Penulis)

Dari tabel 4.34 menerangkan bahwa masing-masing

kolom dijumlahkan untuk mendapatkan nilai totalnya. Dapat

kita lihat bahwa masing-masing software memiliki total nilai

yang bervariasi.

Page 106: Perbaningan PHP Framework Dengan Expert Choice

85

Tabel 4.35. Membagi cell dengan jumlah total

RFC 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

Yii versi

1.0.12

1/2.8168

= 0.3550128

3.1827/8.9655

= 0.3549941

3.1027/8.7396

= 0.3550162

1.5218/4.2866

= 0.3550133

1.9113/5.3838

= 0.3550095

CodeIgniter

versi 1.7.2

0.3142/2.8168

= 0.1115450

1/8.9655

= 0.1115387

0.9748/8.7396

= 0.1115382

0.4781/4.2866

= 0.1115336

0.6005/5.3838

= 0.1115383

CakePHP

versi 1.3.3

0.3223/2.8168

= 0.1144206

1.0259/8.9655

= 0.1144275

1/8.7396

= 0.1144217

0.4905/4.2866

= 0.1144264

0.6160/5.3838

= 0.1144173

Symfony

versi 1.4.8

0.6571/2.8168

= 0.2332789

2.0916/8.9655

= 0.2332943

2.0387/8.7396

= 0.2332715

1/4.2866

= 0.2332851

1.256/5.3838

= 0.23329247

Zend versi

1.10.8

0.5232/2.8168

= 0.1857426

1.6653/8.9655

= 0.1857454

1.6234/8.7396

= 0.1857522

0.7962/4.2866

= 0.1857416

1/5.3838

= 0.1857424

(Sumber: Hasil Pengujian Penulis)

Pada tabel 4.35 adalah membagi setiap cell dengan

jumlah total yang telah ditetapkan pada tabel 4.34.

Tabel 4.36. Menghitung rata-rata tiap baris

RFC Faktor Evaluasi

Yii versi

1.0.12

(0.3550128 + 0.3549941+ 0.3550162 + 0.3550133 +

0.3550095)/5 (1.7750459/5) = 0.3550

CodeIgniter

versi 1.7.2

(0.1115450 + 0.1115387 + 0.1115382 + 0.1115336 +

0.1115383)/5 (0.5576939/5) = 0.1115

CakePHP

versi 1.3.3

(0.1144206+ 0.1144275 + 0.1144217 + 0.1144264 +

0.1144173)/5 (0.5721135/5) = 0.1144

Symfony

versi 1.4.8

(0.2332789 + 0.2332943 + 0.2332715 + 0.2332851 +

0.23329247)/5 (1.1664223/5) = 0.2333

Zend versi

1.10.8

(0.1857426 + 0.1857454 + 0.1857522 + 0.1857416 +

0.1857424)/5 (0.9287243/5) = 0.1857

(Sumber: Hasil Pengujian Penulis)

Pada tabel 4.36 dalam tabel tersebut terlihat bahwa hasil

perhitungan dari tabel 4.35 tiap-tiap baris dicari nilai rata-

ratanya. Nilai tersebut didapatkan dengan cara menjumlahkan

Page 107: Perbaningan PHP Framework Dengan Expert Choice

86

masing-masing baris kemudian dibagi dengan jumlah item

yang dibandingkan, dalah hal ini item yang dibandingkan ada

5. Pada faktor RFC framework Yii menempati urutan teratas

dengan nilai 0.3550, hal ini berarti jumlah metode yang

dimilikinya lebih banyak dibandingkan dengan framework

yang lain. Kemudian di urutan kedua sampai terakhir ada

framework Symfony, Zend, CakePHP, dan CodeIgniter.

4.2.6.5. Perhitungan Faktor Evaluasi LCOM

Tabel 4.37. Perbandingan parameter LCOM pada masing-

masing framework PHP

LCOM 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

Yii versi

1.0.12 1

1/

(5.2107/12.9411)

1/

(5.2107/15.4260)

1/

(5.2107/7.8411)

1/

(5.210710.0267)

CodeIgniter

versi 1.7.2 1/

(1/(5.2107/12.9411)) 1

1/

(12.9411/15.426)

1/

(12.9411/7.8411)

1/

(12.9411/10.0267)

CakePHP

versi 1.3.3

1/

(1/(5.2107/15.4260))

1/

(1/(12.9411/15.426))

1

1/

(15.4260/7.8411)

1/

(15.4260/10.0267)

Symfony

versi 1.4.8

1/

(1/(5.2107/7.8411))

1/

(1/(12.9411/7.8411))

1/

(1/(15.4260/7.8411))

1

1/

(7.8411/10.0267)

Zend versi

1.10.8

1/

(1/(5.210710.0267))

1/

(1/(12.9411/10.0267))

1/

(1/(15.4260/10.0267))

1/

(1/(7.8411/10.0267))

1

(Sumber: Hasil Pengujian Penulis)

Pada tabel 4.37 menerangkan bahwa nilai-nilai tersebut

adalah perbandingan antara masing-masing framework

Page 108: Perbaningan PHP Framework Dengan Expert Choice

87

terhadap parameter LCOM, nilainya berdasarkan dari tabel

4.11.

Tabel 4.38. Hasil perbandingan parameter LCOM pada

masing-masing framework PHP

LCOM 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

Yii versi

1.0.12 1 2.4839 2.9603 1.5049 1.9242

CodeIgniter

versi 1.7.2 0.4026 1 1.1920 0.6059 0.7748

CakePHP

versi 1.3.3 0.3378 0.8389 1 0.5083 0.6500

Symfony

versi 1.4.8 0.6645 1.6504 1.9673 1 1.2788

Zend versi

1.10.8 0.5197 1.2907 1.5385 0.7820 1

(Sumber: Hasil Pengujian Penulis)

Pada tabel 4.38 adalah nilai hasil perbandingan dari

tabel 4.37.

Page 109: Perbaningan PHP Framework Dengan Expert Choice

88

Tabel 4.39. Jumlah total pada masing-masing framework PHP

LCOM 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

Yii versi 1.0.12 1 2.4839 2.9603 1.5049 1.9242

CodeIgniter

versi 1.7.2 0.4026 1 1.1920 0.6059 0.7748

CakePHP

versi 1.3.3 0.3378 0.8389 1 0.5083 0.6500

Symfony versi

1.4.8 0.6645 1.6504 1.9673 1 1.2788

Zend versi

1.10.8 0.5197 1.2907 1.5385 0.7820 1

------------ + ------------ + ------------ + ------------ + ------------ +

Total 2.9246 7.2639 8.6581 4.4011 5.6278

(Sumber: Hasil Pengujian Penulis)

Dari tabel 4.39 diatas menerangkan bahwa masing-

masing kolom dijumlahkan untuk mendapatkan nilai totalnya.

Dapat kita lihat bahwa masing-masing software memiliki total

nilai yang bervariasi.

Tabel 4.40. Membagi cell dengan jumlah total

LCOM 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

Yii versi

1.0.12

1/2.9246

= 0.3419271

2.4839/7.2639

= 0.3419513

2.9603/8.6581

= 0.3419110

1.5049/4.4011

= 0.3419372

1.9242/5.6278

= 0.3419098

CodeIgniter

versi 1.7.2

0.4026/2.9246

= 0.1376599

1/7.2639

= 0.1376671

1.192/8.6581

= 0.1376745

0.6059/4.4011

= 0.1376701

0.7748/5.6278

= 0.1376737

CakePHP

versi 1.3.3

0.3378/2.9246

= 0.1155030

0.8389/7.2639

= 0.1154889

1/8.6581

= 0.1154988

0.5083/4.4011

= 0.1154939

0.65/5.6278

= 0.1154981

Symfony

versi 1.4.8

0.6645/2.9246

= 0.2272106

1.6504/7.2639

= 0.2272058

1.9673/8.6581

= 0.2272208

1/4.4011

= 0.2272159

1.2788/5.6278

= 0.2272291

Zend versi

1.10.8

0.5197/2.9246

= 0.1776995

1.2907/7.2639

= 0.1776869

1.5385/8.6581

= 0.1776949

0.782/4.4011

= 0.1776829

1/5.6278

= 0.1776893

(Sumber: Hasil Pengujian Penulis)

Page 110: Perbaningan PHP Framework Dengan Expert Choice

89

Pada tabel 4.40 adalah membagi setiap cell dengan

jumlah total yang telah ditetapkan pada tabel 4.39.

Tabel 4.41. Menghitung rata-rata tiap baris

LCOM Faktor Evaluasi

Yii versi

1.0.12

(0.3419271 + 0.3419513 + 0.3419110 + 0.3419372 +

0.3419098)/5

(1.7096365/5) = 0.3419

CodeIgniter

versi 1.7.2

(0.1376599 + 0.1376671 + 0.1376745 + 0.1376701 +

0.1376737)/5

(0.6883453/5) = 0.1377

CakePHP

versi 1.3.3

0.1155030 + 0.1154889 + 0.1154988 + 0.1154939 +

0.1154981)/5

(0.5774826/5) = 0.1155

Symfony

versi 1.4.8

(0.2272106 + 0.2272058 + 0.2272208 + 0.2272159 +

0.2272291)/5

(1.136082/5) = 0.2272

Zend versi

1.10.8

(0.1776995 + 0.1776869 + 0.1776949 + 0.1776829 +

0.1776893)5

(0.8884535/5) = 0.1777

(Sumber: Hasil Pengujian Penulis)

Pada tabel 4.41 dalam tabel tersebut terlihat bahwa hasil

perhitungan dari tabel 4.40 tiap-tiap baris dicari nilai rata-

ratanya. Nilai tersebut didapatkan dengan cara menjumlahkan

masing-masing baris kemudian dibagi dengan jumlah item

yang dibandingkan, dalah hal ini item yang dibandingkan ada

5. Pada faktor LCOM framework Yii menempati urutan

pertama dengan nilai 0.3419, berarti menandakan framework

Yii mempunyai class yang lebih baik, ditandai dengan nilai

kohesi yang lebih tinggi. Di urutan kedua sampai terakhir ada

framework symfony, zend, codeigniter dan cakePHP.

Page 111: Perbaningan PHP Framework Dengan Expert Choice

90

Tabel 4.42. Nilai Parameter MOOSE Pada Masing-masing

Framework PHP

WMC DIT NOC CBO RFC LCOM

Yii versi

1.0.12

0.3429 0.3766 0.3578 0.3416 0.3550 0.3419

CodeIgniter

versi 1.7.2

0.1299 0.0677 0.1438 0.1446 0.1115 0.1376

CakePHP

versi 1.3.3

0.1237 0.1433 0.1199 0.1141 0.1144 0.1154

Symfony

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

(Sumber: Hasil Pengujian Penulis)

Setelah melalui perhitungan sebelumnya pada tabel

4.42 adalah hasil dari perhitungan pada masing-masing

framework PHP terhadap parameter-parameter MOOSE CK.

4.3. PEMBOBOTAN PROPERTI KUALITAS DISAIN

Tahap pembobotan properti kualitas disain software secara umum

sama prosedurnya dengan pembobotan parameter MOOSE CK.

Perbedaannya terletak pada objek yang dibandingkan, yaitu objek

parameter MOOSE CK dan properti kualitas disain software. Namun

untuk memperjelas keseluruhan metode pengukuran kualitas disain

software, penulis akan menjelaskan proses pembobotan kualitas disain

software. Detail proses pembobotan properti kualitas disain software

seperti pada Gambar 4.4.

Page 112: Perbaningan PHP Framework Dengan Expert Choice

91

Gambar 4.4. Proses Pembobotan Properti Kualitas Disain Software

(Sumber: Tesis Magister Teknologi Informasi, (Depok: Jurnal Sistem Informasi

MTI UI, Volume 5, No.1, 2007))

Perbandingan nilai skala Saathy pada

property kualitas disain software

Menjumlahkan total pada masing-

masing kolom

Membagi masing-masing cell dengan

jumlah total sesuai dengan kolom

Menghitung rata-rata pada setiap baris

Hasil factor

Pembobotan

Menghitung Weighted Sum Vector

Menghitung Consistency Vector

Menghitung Consistency Ratio

Menghitung Consistency Index

Menghitung Lambda

Cek

Consis-

tency

Ratio

Faktor pembobotan properti kualitas

disain softwaredapat

digunakan

CR < 0.1

CR >= 0.1

Page 113: Perbaningan PHP Framework Dengan Expert Choice

92

4.3.1. Perbandingan Nilai Skala Saathy pada Properti Kualitas

Disain Software

Sama seperti prosedur pembobotan parameter MOOSE

CK, mula-mula perbandingan pada masing-masing properti

kualitas disain software dengan menggunakan skala Saathy.

Kembali penulis tekankan bahwa dalam perbandingan kualitas

disain software, seorang pengukur harus terlebih dahulu

menentukan objektifitas pengukuran kualitas disain software.

Dalam studi kasus ini penulis lebih menekankan pada properti

kualitas dengan urutan sebagai berikut

maintainability/testability, reusability, understandability,

efficiency. Sehingga hasil dari perbandingan tersebut seperti

pada Tabel 4.43.

Tabel 4.43. Perbandingan Properti Kualitas Disain Software

Efficiency Understandability Reusability Maintainability/

Testability

Efficiency 1 1/4 1/6 1/7

Understandability 4 1 1/2 1/4

Reusability 6 2 1 1/2

Maintainability/

Testability 7 4 2 1

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

4.3.2. Menjumlahkan Total pada Masing-masing Kolom

Kemudian hasil dari Tabel 4.42 dijumlahkan pada

masing-masing kolom seperti pada Tabel 4.43.

Page 114: Perbaningan PHP Framework Dengan Expert Choice

93

Tabel 4.44. Penjumlahan Total pada Masing-masing Kolom

Efficiency Understandability Reusability Maintainability/

Testability Efficiency 1.0000 0.2500 0.1667 0.1429

Understandability 4.0000 1.0000 0.5000 0.2500

Reusability 6.0000 2.0000 1.0000 0.5000

Maintainability/

Testability

7.0000 4.0000 2.0000 1.0000

-----------

+

-----------+ -----------+ -----------+

Total 18.0000 7.2500 3.6667 1.8929

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

Pada tabel 4.44 dapat dilihat bahwa tiap-tiap kolom

dijumlahkan untuk mendapatkan nilai totalnya. Ini adalah tahap

kedua dalam proses pembobotan properti kualitas disain.

4.3.3. Membagi Masing-masing Cell dengan Jumlah Total

Setelah penjumlahan total dilakukan dilanjutkan dengan

pembagian masing-masing cell.

Tabel 4.45. Pembagian Masing-masing Cell dengan Jumlah Total

Efficiency Understandability Reusability Maintainability/

Testability Efficiency 1/18 0.25/7.25 0.1667/3.6667 0.1429/1.8929

Understandability 4/18 1/7.25 0.5//3.6667 0.25//1.8929

Reusability 6/18 2/7.25 1//3.6667 0.5/1.8929

Maintainability/

Testability

7/18 4/7.25 2//3.6667 1/1.8929

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

Page 115: Perbaningan PHP Framework Dengan Expert Choice

94

Tahap selanjutnya pada Tabel 4.45 diatas adalah

membagi setiap cell dengan jumlah total yang telah didapatkan

pada tabel 4.44 sebelumnya.

Tabel 4.46. Hasil Pembagian Masing-masing Cell dengan Jumlah Total

Efficiency Understandability Reusability Maintainability/

Testability

Efficiency 0.0556 0.0345 0.0455 0.0755

Understandability 0.2222 0.1379 0.1364 0.1321

Reusability 0.3333 0.2759 0.2727 0.2642

Maintainability/

Testability 0.3889 0.5517 0.5455 0.5283

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

Pada tabel 4.46 adalah hasil dari pembagian cell terhadap

jumlah totalnya.

4.3.4. Menghitung Rata-rata pada Setiap Baris

Perhitungan rata-rata dilakukan dengan menjumlahkan

tiap baris pada Tabel 4.46 seperti Tabel 4.47. Sehingga

dihasilkan seperti pada Tabel 4.47. Hasil perhitungan rata-rata

pada Tabel 4.48 adalah bobot properti kualitas disain software.

Tabel 4.47. Perhitungan Rata-rata Properti Kualitas Disain

Bobot

Efficiency (0.0556+0.0345+0.0455+0.0755)/4 0.0527

Understandability (0.2222+0.1379+0.1364+0.1321)/4 0.1571

Reusability (0.3333+0.2759+0.2727+0.2642)/4 0.2865

Maintainability/

Testability

(0.3889+0.5517+0.5455+0.5283)/4 0.5036

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

Page 116: Perbaningan PHP Framework Dengan Expert Choice

95

Pada tabel 4.47, terlihat bahwa setiap baris dijumlahkan

kemudian dibagi dengan 4, sesuai dengan item yang di

evaluasi. Hal itu dilakukan untuk mendapatkan nilai rata-

ratanya.

Tabel 4.48. Hasil Perhitungan Bobot Properti Kualitas Disain

Faktor Bobot

Efficiency 0.0527

Understandability 0.1571

Reusability 0.2865

Maintainability/

Testability

0.5036

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

Pada tabel 4.48 menunjukkan hasil akhir nilai bobot yang

didapatkan terhadap properti kualitas disain software. Namun

belum selesai sampai disitu saja, untuk itu kita perlu untuk

menghitung nilai konsostensinya untuk menguji apakah

perbandingan pada tabel 4.43 dapat diterima atau tidak.

4.3.5. Menghitung Weighted Sum Vector

Setelah dihasilkan bobot pada masing-masing properti

kualitas disain software maka diperlukan cek konsistensi.

Untuk mengecek konsistensi pertama kali dihitung Weighted

Sum Vector pada Tabel 4.49. Weighted sum vector diperoleh

dengan mengalikan hasil bobot pada Tabel 4.48 dengan

perbandingan semula yaitu Tabel 4.42.

Page 117: Perbaningan PHP Framework Dengan Expert Choice

96

Tabel 4.49. Weighted Sum Vector

Weighted Sum Vector

(0.0527)(1)+( 0.1571)(0.25)+

( 0.2865)(0.1667)+( 0.5036)(0.1429)

0.2117

(0.0527)(4)+( 0.1571)(1)+( 0.2865)(0.5)+

( 0.5036)(0.25)

0.6373

(0.0527)(6)+( 0.1571)(2)+( 0.2865)(1)+

( 0.5036)(0.25)

1.1691

(0.0527)(7)+( 0.1571)(4)+( 0.2865)(2)+

( 0.5036)(1)

2.0744

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

Pada tabel 4.49 ini adalah tahap pengujian untuk

menghitung nilai konsistensi yang ada yaitu menghitung

weighted sum vector terlebih dahulu.

4.3.6. Menghitung Consistency Vector

Perhitungan consistency vector dilakukan dengan cara

membagi hasil weighted sum vector Tabel 4.49 dengan hasil

bobot properti kualitas disain Tabel 4.48.

Tabel 4.50. Consistency Vector

Consistency Vector

0.2117/0.0527 4.0144

0.6373/0.1571 4.0552

1.1691/0.2865 4.0802

2.0744/0.5036 4.1192

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

Page 118: Perbaningan PHP Framework Dengan Expert Choice

97

4.3.7. Menghitung Lambda

Perhitungan lambda menggunakan hasil tabel 4.49

consistency vector, dengan menjumlahkan semua consistency

vector dan dibagi dengan jumlah item yang di evaluasi seperti

pada persamaan di bawah ini, dalam kasus ini jumlah item = 4.

λ = 4

) 4.1192 4.0802 4.0552 (4.0144 = 4.0673

4.3.8. Menghitung Consistency Index

Dalam perhitungan consistency index menggunakan hasil

dari perhitungan lambda kemudian disubtitusikan dalam

persamaan 4.3, sehingga hasil perhitungan sesuai dengan

persamaan di bawah ini.

CI = )1(

)(

n

n=

1)-(4

4)-(4.0673= 0.02242

4.3.9. Menghitung Consistency Ratio

Perhitungan consistency ratio menggunakan di bawah ini,

dengan mensubtitusikan hasil dari consistency index

sebelumnya dan dibagi dengan nilai random index pada tabel

2.11. Sesuai dengan Tabel 2.11 karena jumlah item yang

dievaluasi ada 4 maka nilai random index (RI) = 0.9.

CR =RI

CI=

0.9

0.02242 = 0.0249

Page 119: Perbaningan PHP Framework Dengan Expert Choice

98

Sesuai dengan konsep AHP sebelumnya, jika consistency

ratio adalah 0.1 atau kurang maka perbandingan diatas adalah

konsisten, namun apabila lebih besar daripada 0.1 maka

perbandingan antara parameter harus diulang kembali. Karena

nilai CR = 0.0249 kurang dari 0.1 maka pembobotan yang

dihasilkan pada Tabel 4.43 dapat diterima.

4.4. EVALUASI PROPETI KUALITAS DISAIN

Evaluasi kualitas disain software merupakan tahap terakhir dari

empat tahapan utama metode pengukuran kualitas disain software. Pada

tahap ini menggunakan hasil dari ketiga tahapan sebelumnya yaitu hasil

faktor pembobotan MOOSE CK, hasil faktor evaluasi MOOSE CK dan

hasil faktor pembobotan properti kualitas disain software.

Ada dua tahapan lagi dalam evaluasi properti kualitas disain

software yaitu faktor evaluasi sesuai dengan properti kualitas disain

software dan menghitung final evaluasi masing-masing framework PHP.

Detail tahapan evaluasi properti kualitas disain software seperti pada

Gambar 4.5.

Page 120: Perbaningan PHP Framework Dengan Expert Choice

99

Gambar 4.5. Prosedur Evaluasi Properti Kualitas Disain Software

(Sumber: Tesis Magister Teknologi Informasi, (Depok: Jurnal Sistem Informasi

MTI UI, Volume 5, No.1, 2007))

4.4.1. Menghitung Faktor Evaluasi Sesuai dengan Properti Kualitas

Disain Software

Pada tahapan ini tampak pada Gambar 4.5 menggunakan

faktor pembobotan MOOSE CK pada masing-masing framework

PHP (hasil dari subbab 4.1) dan hasil faktor evaluasi MOOSE CK

(hasil dari subbab 4.2). Karena masing-masing parameter MOOSE

CK memiliki kontribusi yang berbeda-beda dengan properti

Hasil faktor pembobotan

MOOSE CK pd masing-masing framework

Menghitung faktor evaluasi

sesuai dengan properti kualitas

disain software

Hasil kualitas dari

keseluruhan framework

Menghitung final evaluasi

masing-masing software

Hasil faktor evaluasi

MOOSE CK pd masing-masing framework

Hasil faktor evaluasi

properti kualitas disain software

Hasil faktor bobot

property kualitas disain software

Page 121: Perbaningan PHP Framework Dengan Expert Choice

100

kualitas software, sehingga pada masing-masing properti kualitas

mempunyai perhitungan sesuai dengan Tabel 4.50 di bawah ini.

Tabel 4.51. Perhitungan Faktor Evaluasi pada Properti Kualitas

Disain Software

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

Understandability (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

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

Faktor Evaluasi (FE) dan Bobot Metric (BM) disesuaikan

dengan nilai pada framework PHP yang dipilih.

Page 122: Perbaningan PHP Framework Dengan Expert Choice

101

4.4.2. Menghitung Final Evaluasi Masing-masing Framework

Perhitungan final evaluasi mengalikan antara bobot properti

kualitas software (BK) (hasil dari subbab 4.3) dengan hasil

perhitungan faktor evaluasi dari properti kualitas Tabel 4.25.

Faktor evaluasi (FE disesuaikan dengan item yang berhubungan

yaitu kelima framework PHP yang diuji.

Tabel 4.52. Final Evaluasi

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) maintainability/testability x (BK) maintainability/testability

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

Untuk lebih jelasnya penulis akan masukkan nilai ke dalam

persamaan pada Tabel 4.50 dan Tabel 4.51 dengan memakai nilai

yang telah dihitung pada subbab sebelumnya. Sehingga pada hasil

finalnya akan didapatkan framework PHP yang memiliki kualitas

disain yang paling baik dari kelima framework PHP yang

dianalisis.

Page 123: Perbaningan PHP Framework Dengan Expert Choice

102

Tabel 4.53. Perhitungan Faktor Evaluasi pada Properti

Kualitas Disain Framework Yii

Properti Kualitas Framework Yii versi 1.0.12

Efficiency

(0.3766)DIT (0.0565) DIT + (0.3578) NOC (0.0312)

NOC + (0.3415) CBO (0.2396) CBO + (0.3419) LCOM

(0.0963) LCOM

0.0212779(DIT)+

0.0111634(NOC) +

0.0818234(CBO) +

0.0329250(LCOM) =

0.1471896

Understandability

(0.3429) WMC (0.1149) WMC + (0.3766) DIT

(0.0565) DIT +

(0.355) RFC (0.4617) RFC

0.0393992(WMC) +

0.0212779 (DIT)+

0.1639035(RFC) =

0.2245806

Reusability

(0.3429) WMC (0.1149) WMC + (0.3766) DIT

(0.0565) DIT +

(0.3578) NOC (0.0312) NOC + (0.3415) CBO

(0.2396) CBO +

(0.3419) LCOM (0.0963) LCOM

0.0393992 (WMC) +

0.0212779(DIT)+

0.0111634(NOC) +

0.0818234(CBO) +

0.0329250(LCOM) =

0.1865888

Maintainability/

Testability

(0.3429) WMC (0.1149) WMC + (0.3766) DIT

(0.0565) DIT +

(0.3578) NOC (0.0312) NOC + (0.355) RFC (0.4617)

RFC +

(0.3419) LCOM (0.0963) LCOM

0.0393992 (WMC) +

0.0212779(DIT)+

0.0111634(NOC) +

0.1639035(RFC) =

0.0329250(LCOM) =

0.2686689

(Sumber: Hasil Pengujian Penulis)

Pada tabel 4.53 adalah menghitung nilai pada masing-

masing properti kualitas disain software untuk framework Yii

sesuai dengan tabel 4.51. Nilai hasil adalah yang dicetak tebal.

Page 124: Perbaningan PHP Framework Dengan Expert Choice

103

Tabel 4.54. Perhitungan Faktor Evaluasi pada Properti

Kualitas Disain Framework CodeIgniter

Properti Kualitas Framework CodeIgniter versi 1.7.2

Efficiency

(0.0677)DIT (0.0565) DIT + (0.1438)

NOC (0.0312) NOC +

(0.1446) CBO (0.2396) CBO + (0.1377)

LCOM (0.0963) LCOM

0.0038250(DIT)+

0.0044866(NOC) +

0.0346461(CBO) +

0.0132605(LCOM) =

0.0562183

Understandability

(0.1299) WMC (0.1149) WMC +

(0.0677) DIT (0.0565) DIT +

(0.1115) RFC (0.4617) RFC

0.0149255(WMC)+

0.0038250 (DIT)+

0.0514795(RFC) =

0.0702300

Reusability

(0.1299) WMC (0.1149) WMC +

(0.0677) DIT (0.0565) DIT +

(0.1438) NOC (0.0312) NOC + (0.1446)

CBO (0.2396) CBO +

(0.1377) LCOM (0.0963) LCOM

0.0149255 (WMC)+

0.0038250(DIT)+

0.0044866(NOC) +

0.0346461(CBO) +

0.0132605(LCOM) =

0.0711438

Maintainability/Testability

(0.1299) WMC (0.1149) WMC +

(0.0677) DIT (0.0565) DIT +

(0.1438) NOC (0.0312) NOC + (0.1115)

RFC (0.4617) RFC +

(0.1377) LCOM (0.0963) LCOM

0.0149255 (WMC)+

0.0038250(DIT)+

0.0044866(NOC) +

0.0514795(RFC) +

0.0132605(LCOM)

=0.0879772

(Sumber: Hasil Pengujian Penulis)

Pada tabel 4.54 adalah menghitung nilai pada masing-

masing properti kualitas disain software untuk framework

CodeIgniter sesuai dengan tabel 4.51. Nilai hasil adalah yang

dicetak tebal.

Page 125: Perbaningan PHP Framework Dengan Expert Choice

104

Tabel 4.55. Perhitungan Faktor Evaluasi pada Properti

Kualitas Disain Framework CakePHP

Properti Kualitas Framework CakePHP versi 1.3.3

Efficiency

(0.1433)DIT (0.0565) DIT + (0.111) NOC

(0.0312) NOC +

(0.1141) CBO (0.2396) CBO + (0.1155)

LCOM (0.0963) LCOM

0.0080965(DIT)+

0.0034632(NOC) +

0.0273384(CBO) +

0.0111226(LCOM) =

0.0500207

Understandability

(0.1237) WMC (0.1149) WMC +

(0.1433) DIT (0.0565) DIT +

(0.1144) RFC (0.4617) RFC

0.0142131(WMC)+

0.0080965(DIT)+

0.0528185(RFC) =

0.0751280

Reusability

(0.1237) WMC (0.1149) WMC +

(0.1433) DIT (0.0565) DIT +

(0.111) NOC (0.0312) NOC + (0.1141)

CBO (0.2396) CBO +

(0.1155) LCOM (0.0963) LCOM

0.0142131(WMC)+

0.0080965(DIT)+

0.0034632(NOC) +

0.0273384(CBO) +

0.0111226(LCOM) =

0.0642338

Maintainability/Testability

(0.1237) WMC (0.1149) WMC +

(0.1433) DIT (0.0565) DIT +

(0.111) NOC (0.0312) NOC + (0.1144)

RFC (0.4617) RFC +

(0.1155) LCOM (0.0963) LCOM

0.0142131(WMC)+

0.0080965(DIT)+

0.0034632(NOC) +

0.0528185(RFC) +

0.0111226(LCOM) =

0.0897139

(Sumber: Hasil Pengujian Penulis)

Pada tabel 4.55 adalah menghitung nilai pada masing-

masing properti kualitas disain software untuk framework

CakePHP sesuai dengan tabel 4.51. Nilai hasil adalah yang dicetak

tebal.

Page 126: Perbaningan PHP Framework Dengan Expert Choice

105

Tabel 4.56. Perhitungan Faktor Evaluasi pada Properti

Kualitas Disain Framework Symfony

Properti Kualitas Framework Symfony versi 1.4.8

Efficiency

(0.1972)DIT (0.0565) DIT + (0.2052)

NOC (0.0312) NOC +

(0.2226) CBO (0.2396) CBO + (0.2272)

LCOM (0.0963) LCOM

0.0111418(DIT)+

0.0064022(NOC) +

0.0533350(CBO) +

0.0218794(LCOM) =

0.0927584

Understandability

(0.2253) WMC (0.1149) WMC +

(0.1972) DIT (0.0565) DIT +

(0.2333) RFC (0.4617) RFC

0.0258870(WMC)+

0.0111418 (DIT)+

0.1077146(RFC) =

0.1447434

Reusability

(0.2253) WMC (0.1149) WMC +

(0.1972) DIT (0.0565) DIT +

(0.2052) NOC (0.0312) NOC + (0.2226)

CBO (0.2396) CBO +

(0.2272) LCOM (0.0963) LCOM

0.0258870(WMC)+

0.0111418(DIT)+

0.0064022(NOC) +

0.0533350(CBO) +

0.0218794(LCOM) =

0.1186453

Maintainability/Testability

(0.2253) WMC (0.1149) WMC +

(0.1972) DIT (0.0565) DIT +

(0.2052) NOC (0.0312) NOC + (0.2333)

RFC (0.4617) RFC +

(0.2272) LCOM (0.0963) LCOM

0.0258870(WMC)+

0.0111418(DIT)+

0.0064022(NOC) +

0.1077146(RFC) +

0.0218794(LCOM) =

0.1730250

(Sumber: Hasil Pengujian Penulis)

Pada tabel 4.56 adalah menghitung nilai pada masing-

masing properti kualitas disain software untuk framework Symfony

sesuai dengan tabel 4.51. Nilai hasil adalah yang dicetak tebal.

Page 127: Perbaningan PHP Framework Dengan Expert Choice

106

Tabel 4.57. Perhitungan Faktor Evaluasi pada Properti

Kualitas Disain Framework Zend

Properti Kualitas Framework Zend versi 1.10.8

Efficiency

(0.2151)DIT (0.0565) DIT + (0.1732)

NOC (0.0312) NOC +

(0.1771) CBO (0.2396) CBO + (0.1777)

LCOM (0.0963) LCOM

0.0121531(DIT)+

0.0054038(NOC) +

0.04243326(CBO) +

0.0171125(LCOM) =

0.0771027

Understandability

(0.1782) WMC (0.1149) WMC +

(0.2151) DIT (0.0565) DIT +

(0.1857) RFC (0.4617) RFC

0.0204752(WMC)+

0.0121531 (DIT)+

0.0857377(RFC)=

0.1183660

Reusability

(0.1782) WMC (0.1149) WMC +

(0.2151) DIT (0.0565) DIT +

(0.1732) NOC (0.0312) NOC + (0.1771)

CBO (0.2396) CBO +

(0.1777) LCOM (0.0963) LCOM

0.0204752 (WMC)+

0.0121531(DIT)+

0.0054038(NOC) +

0.0424332(CBO) +

0.0171125(LCOM) =

0.0975778

Maintainability/Testability

(0.1782) WMC (0.1149) WMC +

(0.2151) DIT (0.0565) DIT +

(0.1732) NOC (0.0312) NOC + (0.1857)

RFC (0.4617) RFC +

(0.1777) LCOM (0.0963) LCOM

0.0204752 (WMC)+

0.0121531(DIT)+

0.0054038(NOC) +

0.0857377(RFC) +

0.0171125(LCOM) =

0.1408823

(Sumber: Hasil Pengujian Penulis)

Pada tabel 4.57 diatas adalah menghitung nilai pada

masing-masing properti kualitas disain software untuk framework

Zend sesuai dengan tabel 4.51. Nilai hasil adalah yang dicetak

tebal.

Page 128: Perbaningan PHP Framework Dengan Expert Choice

107

Tabel 4.58. Nilai Evaluasi Properti Kualitas Disain pada

Masing-masing Framework PHP

Efficiency Understandability Reusability Maintainability/

Testability

Yii versi

1.0.12

0.1471896 0.2245806 0.1865888 0.2686689

CodeIgniter

versi 1.7.2

0.0562183 0.0702300 0.0711438 0.0879772

CakePHP

versi 1.3.3

0.0500207 0.0751280 0.0642338 0.0897139

Symfony

versi 1.4.8

0.0927584 0.1447434 0.1186453 0.1730250

Zend versi

1.10.8

0.0771027 0.1183660 0.0975778 0.1408823

(Sumber: Hasil Pengujian Penulis)

Pada tabel 4.58 adalah hasil dari keseluruhan properti

kualitas disain software terhadap masing-masing framework PHP.

Page 129: Perbaningan PHP Framework Dengan Expert Choice

108

Page 130: Perbaningan PHP Framework Dengan Expert Choice

109

Tabel 4.59. Hasil Perhitungan Final Evaluasi

Final

Evaluasi

Yii versi

1.0.12

((0.1471896 x 0.0527) + (0.2245806 x 0.1571) +

(0.1865888 x 0.2865) + (0.2686689 x 0.5036))/4

(0.007756892 +

0.035281612 +

0.053457691 +

0.135301658) =

0.231797853/4 =

0.057949463

CodeIgniter

versi 1.7.2

((0.0562183 x 0.0527) + (0.0702301 x 0.1571) +

(0.0711438 x 0.2865) +

(0.0879772 x 0.5036))/4

0.002962704 +

0.011033149 +

0.020382699 +

0.044305318 =

0.07868387/4 =

0.019670967

CakePHP

versi 1.3.3

((0.0500207 x 0.0527) + (0.0751280 x 0.1571) +

(0.0642338 x 0.2865) +

(0.0897139 x 0.5036))/4

0.002636091 +

0.011802609 +

0.018402984 +

0.04517992 =

0.078021603/4 =

0.019505401

Symfony

versi 1.4.8

((0.0927584 x 0.0527) + (0.1447434 x 0.1571) +

(0.1186453 x 0.2865) +(0.1730250 x 0.5036))/4

0.004888368+

0.022739188 +

0.033991878 +

0.08713539 =

0.148754824/4 =

0.037188706

Zend versi

1.10.8

((0.0771027 x 0.0527) + (0.1183660 x 0.1571) +

(0.0975778 x 0.2865) + (0.1408823 x 0.5036))/4

0.004063312+

0.018595299 +

0.02795604 +

0.070948377 =

0.121563027/4=

0.030390757

(Sumber: Hasil Pengujian Penulis)

Pada tabel 4.59 adalah hasil dari perhitungan final evaluasi

framework PHP.

Page 131: Perbaningan PHP Framework Dengan Expert Choice

110

Page 132: Perbaningan PHP Framework Dengan Expert Choice

111

Tabel 4.60. Hasil Final Evaluasi Properti Kualitas Disain

pada Masing-masing Framework PHP

Peringkat Framework PHP Final

Evaluasi

1 CakePHP versi

1.3.3 0.0195

2 CodeIgniter versi

1.7.2 0.0197

3 Zend versi 1.10.8 0.0304

4 Symfony versi

1.4.8 0.0372

5 Yii versi 1.0.12 0.0579

(Sumber: Hasil Pengujian Penulis)

Dari hasil tabel 4.60 maka dapat disimpulkan bahwa karena

pada prinsipnya nilai parameter MOOSE CK berbanding terbalik

dengan properti kualitas disain software, maka pada aspek orientasi

objek disain model dengan menggunakan MOOSE CK dan

properti kualitas disain software, framework PHP CakePHPi

dengan nilai 0.0195 paling baik kualitasnya diantara framework

PHP yang lainnya. Sedangkan yang paling rendah adalah

framework Yii dengan nilai 0.0579. Disusul dengan urutan kedua,

ketiga dan keempat adalah framework CodeIgniter dengan nilai

0.0197, framework Zend dengan nilai 0.0304 dan framework

Symfony dengan nilai 0.0372.

Page 133: Perbaningan PHP Framework Dengan Expert Choice

112

BAB V

PENUTUP

5.1. KESIMPULAN

Beberapa kesimpulan dapat diambil dari penelitian ini adalah

sebagai berikut :

1. Hasil penelitian menunjukkan bahwa dengan menggunakan

metode ini akan menghasilkan sebuah nilai yang menunjukkan

kualitas sebuah disain software relatif terhadap software yang

lain

2. Metode ini bersifat umum, sehingga selain dapat diterapkan

pada aplikasi dekstop, metode ini juga dapat diterapkan untuk

mengevaluasi aplikasi web. Namun software yang akan di

evaluasi harus mempunyai domain atau fungsi yang sama.

3. Berdasarkan penelitian yang dilakukan kita dapat mengetahui

bahwa berdasarkan object oriented design model, kualitas

framework CakePHP adalah yang paling baik dari framewok

lain. Karena memiliki nilai hasil final evaluasi yang paling

rendah diantara nilai final evaluasi framework yang lainnya

sebesar 0.0195. Hal tersebut karena nilai parameter MOOSE

CK berbanding terbalik dengan properti kualtias disain software

seperti yang telah dijelaskan pada BAB II sebelumnya, jadi

semakin kecil nilai akhir maka semakin baik kualitasnya.

Page 134: Perbaningan PHP Framework Dengan Expert Choice

113

Sedangkan yang paling rendah tingkat kualitasnya adalah

framework Yii dengan nilai sebesar 0.0579.

5.2. SARAN

1. Pemakai metode ini diharuskan mengerti arti dari masing-

masing parameter MOOSE CK, properti kualitas disain dan

objektifitas dari pengukuran software. Objektifitas dari

pengukuran akan berbeda-beda seperti jika membandingkan

parameter A dengan parameter B dalam MOOSE CK, namun

semuanya harus melewati proses perhitungan konsistensi

sehingga dapat disimpulkan apakah pengukuran peneliti dapat

diterima atau tidak.

2. Apabila pengukuran dengan software berbasis bahasa

pemrograman selain PHP, maka diperlukan tool yang dapat

menghitung parameter MOOSE CK sesuai dengan bahasa

pemrograman yang digunakan.

3. Metode ini dapat dikembangkan dengan mengimplemetasikan

OO Metrics yang lain seperti Metrics for Object Oriented

Design (MOOD) atau (MOOD2) ataupun penggabungan dari

metric-metric lainnya tergantung pada faktor apa yang akan

dibandingkan.

Page 135: Perbaningan PHP Framework Dengan Expert Choice

114

4. Penulis berharap dapat dibuat aplikasi yang menggunakan

metode AHP untuk membantu seseorang dalam mengambil

keputusan dengan banyak pilihan yang juga melibatkan banyak

faktor.

5. Pada penelitian selanjutnya diharapkan ada penambahan

penelitian mengenai pemakaian Framework PHP terbanyak di

suatu tempat tertentu berdasarkan kebiasaan pemakainya.

Seperti di kampus UIN Syarif Hidayatullah Jakarta atau di

kampus lainnya.

Page 136: Perbaningan PHP Framework Dengan Expert Choice

109

Gambar 4.6. Nilai Evaluasi Properti Kualitas Disain pada Masing-masing

Framework PHP

(Sumber: Hasil Pengujian Penulis)

Pada gambar 4.6 diatas terlihat jelas bahwa pada masing-masing

framework PHP dengan parameter properti kualitas disain software framework

Yii terlihat lebih baik dari semuanya. Namun hasil ini belum final karena masih

harus melewati satu perhitungan final evaluasi agar dapat diketahui kulitas disain

software framework yang terbaik.

Page 137: Perbaningan PHP Framework Dengan Expert Choice

110

0

0.01

0.02

0.03

0.04

0.05

0.06

Final Evaluasi

Yii

CodeIgniter

CakePHP

Symfony

Zend

Gambar 4.7. Hasil Final Evaluasi Properti Kualitas Disain pada Masing-masing

Framework PHP

(Sumber: Hasil Pengujian Penulis)

Berdasarkan teori sebelumnya bahwa parameter MOOSE CK berbanding

terbalik dengan kualitas disain software, sehingga pada gambar 4.7 diatas sudah

dapat disimpulkan bahwa kualitas disain software framework yang terbaik adalah

framework CakePHP dengan nilai 0.0195, kemudian diikuti dengan framework

CodeIgniter dengan nilai 0.0197, framework Zend dengan nilai 0.0304,

framework Symfony dengan nilai 0.0372 dan yang terakhir adalah framework Yii

dengan nilai 0.0579.

Page 138: Perbaningan PHP Framework Dengan Expert Choice

115

DAFTAR PUSTAKA

Apriyanto, Agus. 2008. “Perbandingan Kelayakan Jalan Beton dan Aspal dengan

Metode Analytic Hierarchy Process (AHP)”. Tesis Magister Teknik Sipil,

Universitas Diponegoro,Semarang.

Bari, Ahsanul, Syam, Anupom. 2008. CakePHP Application Development – Step

by step introduction to rapid web development using the open source MVC

cakePHP framework. Penerbit Packt Publishing, Birmingham, Mumbai: xv

+ 311 hlm.

Basili, Victor, et al. 1996. “A validation of Object Oriented Design Metric as

Quality Indicators”.

Boehm, B.W, J.R. Brown, H. Kaspar, M. Lipow, G.J. McLeod and M.J. Merritt.

1978. “Characteristics of Software Quality”, Amsterdam: North-Holland.

Bray, Ian K. 2002. “An Introduction To Requirements Engineering”. Pearson

Education Limited, United Kingdom: xi + 408 hlm

Brito, Fernando e Abreu. 2003. Talk on “Design Metrics For Object Oriented

Software Systems”.

Brito, Fernando e Abreu. 1998. “The MOOD2 Metrics Set”, INESC.

Bruntink, Magiel, Arie van Deursen. 2004. “Predicting Class Testability Using

Object Oriented Metrics”.

Carl Vondrick.2010. What’s Symfony? 12 Januari: 3 hlm.

http://www.symfony-project.org

13 November 2010, pk. 09.30 WIB.

Page 139: Perbaningan PHP Framework Dengan Expert Choice

116

CakePHP Team.2005. CakePHP the rapid development php framework: 3 hlm.

http://cakephp.org/

13 November 2010, pk. 09.30 WIB.

Derek Allard.2010. Welcome to CodeIgniter! 14 Agustus: 3 hlm.

http://codeigniter.com

13 November 2010, pk. 09.30 WIB.

Hermawan, Efano dan Petrus Mursanto. 2007. “Pemeringkatan Software Aplikasi

Berdasarkan Properti Kualitas Disain dan Metrics For Object Oriented

Software Menggunakan Analytic Hierarchy Process”. Tesis Magister

Teknologi Informasi, Depok:Jurnal Sistem Informasi MTI UI, Volume 5,

No.1.

Idrus, Asria. 2010. “Implementasi Sistem Metode AHP Sebagai Alat Bantu

Pengambilan Keputusan Pemilihan Calon Tenaga Kerja di PT. Danagung

Ramulti”. STMIK AMIKOM, Yogyakarta.

ISO 1926-1. 2001. “Software Quality Characteristic”.

Jajang. 2005. Hardware. 2 Mei: 2 hlm.

http://total.org.id

27 Desember 2010, pk. 16.59 WIB.

Kotonya, Gerald, Sommerville Ian. 1997. Requirements Engineering : Processes

and Techniques. John Wiley & Sons, Inc, New York: xiii + 282 hlm.

Manuel Pichler.2009. What is PHP_Depend? 14 Desember: 3 hlm.

http://pdepend.org

13 November 2010, pk. 09.30 WIB.

Page 140: Perbaningan PHP Framework Dengan Expert Choice

117

Muslich, Masnur; Maryaeni. 2009. Bagaimana Menulis Skripsi?. Penerbit PT.

Bumi Aksara, Jakarta: x + 166 hlm.

PHP Frameworks.2010. Top 10 Ranking PHP Frameworks? 5 Juli: 2 hlm.

http://phpframeworks.com

9 Oktober 2010, pk. 14.20 WIB.

Pressman, Roger S. 1992. SOFTWARE ENGINEERING- A Practitioner’s

Approach – Third Edition. Penerbit Beacon Graphic Corporation,

Singapura: xxii + 793 hlm.

Render, Barry, Ralph M. Stair. 2000. “Quantitative Analysis for Management”,

Prentice Hall Inc.

Rosenberg, Linda H, Lawrence E. Hyaat. 2003 “Software Quality Metrics for

Object Oriented Environments”.

Rosenberg, Linda H, Lawrence E. Hyaat. 1998. “Applying and Interpreting

Object Oriented Metrics”, Software Technology Conference, Utah.

Saathy, Thomas, Vargas L.G. 2006. “Decision Making with the Analytic Network

Process”, Springer.

Shyam R. Chidamber, Chris F. Kemerer. 1995. “A Metrics Suite For Object

Oriented Design”. M.I.T Sloan School of Management.

http://web.cs.wpi.edu/~gpollice/cs562-s05/Readings/CKMetrics.pdf

Shyam R. Chidamber, Chris F. Kemerer. 1993. “MOOSE: Metric for Object

OrientedSoftware Engineering”. Workshop on Process and Metric for

Object Oriented Software Development, Washington DC, EUA.

Page 141: Perbaningan PHP Framework Dengan Expert Choice

118

Wikipedia Tim. 2010. Framework. 15 Desember : 2 hlm

http://www.wikipedia.org

27 Desember 2010, pk. 17.15 WIB.

Wikipedia Tim. 2010. Object Oriented Programming. 27 Desember : 15 hlm

http://www.wikipedia.org

27 Desember 2010, pk. 17.01 WIB.

Wikipedia Tim. 2010. Perangkat Lunak. 18 November : 2 hlm

http://www.wikipedia.org

27 Desember 2010, pk. 17.15 WIB.

Wikipedia Tim. 2010. Software Metric. 17 Desember : 3 hlm

http://www.wikipedia.org

27 Desember 2010, pk. 17.00 WIB.

Wikipedia Tim. 2010. Web. 27 Desember : 14 hlm

http://www.wikipedia.org

27 Desember 2010, pk. 17.23 WIB.

Yii Team.2009. Welcome to Yii Framework. 15 Desember: 3 hlm.

http://www.yiiframework.com

13 November 2010, pk. 09.30 WIB.

Zend Team.2008. About Zend Framework. 12 Januari: 4 hlm.

http://framework.zend.com

13 November 2010, pk. 09.30 WIB.

Page 142: Perbaningan PHP Framework Dengan Expert Choice

1

ANALISIS PERBANDINGAN FRAMEWORK PHP BERDASARKAN

MOOSE CK DAN PROPERTI KUALITAS DISAIN MENGGUNAKAN

METODE ANALYTIC HIERARCHY PROCESS (AHP)

Wahyu Rifa’i Dwi Septian

Program Studi Teknik Informatika, Fakultas Sains dan Teknologi, Universitas Islam Negeri Syarif

Hidayatullah Jakarta, Indonesia, 2010

[email protected]

Abstrak

Keberadaan framework PHP menjadi suatu tantangan tersendiri untuk dicoba penggunaannya

dalam membuat aplikasi berbasis web. Keberadaan Framework PHP yang sangat banyak tersedia

menjadi kendala bagi seseorang untuk memilih menggunakannya. Karena belum adanya penelitian

mengenai perbandingan framework PHP ini, sehingga penulis mencoba untuk membandingkan

dan mencari kualitas framework PHP terbaik. Sehingga penelitian ini difokuskan untuk

mendapatkan tujuan framework PHP terbaik berdasarkan kualitas disain modelnya. Dalam

penelitian mengenai tugas akhir ini penulis mencoba membandingkan 5 framework PHP

berdasarkan kualitas disain modelnya dengan menggunakan parameter MOOSE CK dan properti

kualitas disain, kemudian digabungkan dengan metode Analytic Hierarchy Process (AHP) untuk

menentukan kualitas disain model framework terbaik. Penulis juga menggunakan tool PHP

Depend untuk menghitung nilai MOOSE CK pada masing-masing framework PHP. Framework

PHP tersebut adalah Yii, CodeIgniter, CakePHP, Symfony dan Zend. Hasil akhir dari penelitian ini

menunjukkan bahwa framework CakePHP memiliki kualitas disain model framework terbaik

dibandingkan dengan framework Yii, CodeIgniter, Symfony dan Zend.

Kata Kunci: framework PHP, Analytic Hierarchy Process (AHP), MOOSE CK, Properti kualitas

disain, PHP Depend.

1. Pendahuluan

1.1. Latar Belakang

Keberadaan teknologi informasi

saat ini memegang peranan yang sangat

signifikan, apalagi untuk perusahaan-

perusahaan berskala menengah keatas.

Tidak dapat dipungkiri, hal tersebut terjadi

karena dengan teknologi informasi ini akan

dapat menunjang dan menaikkan income

perusahaan, sehingga setiap perusahaan

mencoba untuk menerapkan teknologi

informasi di dalamnya. Sebagai contohnya

adalah website e-commerce perusahaan

ataupun aplikasi-aplikasi untuk menunjang

kegiatan perusahaannya, seperti aplikasi

akunting.

Pemilihan aplikasi yang sesuai

dengan kebutuhan untuk menjawab

permasalahan yang ada, menjadi hal yang

harus sangat diperhatikan. Karena hal ini

dapat menyebabkan baik buruknya suatu

kinerja dari perusahaan yang bersangkutan

dalam menjalankan bisnisnya. Akan terasa

lebih rumit lagi jika aplikasi yang

ditawarkan sangatlah beragam macamnya.

Dalam penelitian tugas akhir ini,

penulis mencoba untuk menggunakan

metode yang ada untuk diterapkan dalam

dunia informatika dalam hal pemilihan

software framework yang terbaik. Namun

tentu saja metode ini tidak terbatas pada

dunia teknologi informasi, tapi juga dalam

hal lainnya. Sebagai contoh metode ini juga

dapat digunakan dalam perbandingan

kelayakan jalan beton dan aspal atau juga

dapat dijadikan sebagai alat bantu

Page 143: Perbaningan PHP Framework Dengan Expert Choice

2

pengambilan keputusan pemilihan calon

tenaga kerja.

Dalam penelitian tugas akhir ini

penulis mencoba untuk membandingkan

kualitas disain software pada framework

PHP. Alasan mengapa penulis meneliti

kualitas disain software, karena disain

sebuah aplikasi software sangat

mempengaruhi kinerja/performa dari sebuah

software tersebut, baik itu aplikasi dektop

maupun aplikasi web.

Beberapa riset terdahulu telah

menghasilkan alat ukur kualitas software

yang diwujudkan dalam beberapa

parameter-parameter seperti MOOD,

MOOD2 (Metric for Object Oriented

Design) dan MOOSE (Metric for Object

Oriented Software Engineering). Parameter

ukuran kualitas software ini biasa disebut

dengan Object Oriented Metric (OO

Metric).

Dalam penerapan OO Metric,

kualitas software diinterpretasikan dalam

parameter-parameter yang sesuai dengan

OO Metric yang digunakan. Tetapi nilai-

nilai dari parameter tersebut belum cukup

untuk menentukan kualitas software mana

yang lebih baik dari software yang lain,

sehingga diperlukan metode untuk

mengkombinasikan keseluruhan nilai

tersebut menjadi sebuah nilai yang

menginterpretasikan kualitas software relatif

terhadap software yang lain dalam domain

aplikasi/fungsi yang sama.

Pada penelitian ini penulis

mencoba untuk mengambil 5 contoh

framework PHP yang paling banyak

diminati oleh programmer web menurut

versi phpframeworks.com.

Kelima framework

tersebut akan diukur dan dibuat peringkat

berdasarkan penilaian secara objektif dari

hasil nilai kuantitatif MOOSE CK (Metric

for Object Oriented Software Engineering,

Chidamber, Kemerer), properti kualitas dan

diolah menggunakan metode Analytic

Hierarcy Process (AHP).

1.2. Rumusan dan Batasan Masalah

Berdasarkan penjelasan dari latar belakang

diatas, penggunaan OO Metric saja tidak

cukup untuk menentukan kualitas suatu

software dengan software yang lainnya.

Sehingga diperlukan metode umum

tambahan yang dapat menggabungkan

parameter-parameter yang dihasilkan OO

metric untuk diolah sehingga memberikan

sebuah nilai kualitas software yang

bersangkutan. Sehingga metode ini juga

dapat dipakai oleh orang yang ingin

mengevaluasi software lainnya, namun

disarankan dengan domain yang sama.

Setelah didapatkan nilai kualitasnya maka

akan dapat dibuat peringkat software mana

yang memiliki nilai kualitas terbaik.

Banyak faktor yang dapat mempengaruhi

hasil dari penelitian ini, seperti jenis OO

Metric, tool yang digunakan, jenis aplikasi

yang dievaluasi dan masih banyak faktor

lain yang mempengaruhinya. Oleh karena

itu ruang lingkup penelitian ini adalah

sebagai berikut:

1. Studi kasus akan menggunakan

aplikasi framework PHP yang sudah cukup

dikenal dan banyak diminati oleh para

programmer web versi

www.phpframeworks.com. Hal ini karena

framework PHP telah menerapkan konsep

Object Oriented Programming, seperti kita

tahu bahwa membuat suatu koding pada saat

sekarang bukanlah seperti spaghety code

lagi. Sehingga muncul kemudahan dalam

membangun aplikasi web dengan framework

yang telah disediakan. Disamping itu

penelitian mengenai perbandingan disain

kualitas antara aplikasi web masih tergolong

sangat jarang jika dibandingkan dengan

aplikasi desktop.

2. Pengukuran kualitas disain

software menggunakan parameter MOOSE

CK dan tool PHP Depend. Pada saat ini

telah banyak OO Metric seperti MOOD,

MOOD2 dan lain-lainnya. MOOSE CK

sengaja dipilih karena dari penelitian

sebelumnya telah menghasilkan pemetaan

antara MOOSE CK dan properti kualitas.

PHP Depend dipilih karena parameter yang

dimilikinya sebagian besar sama dengan

parameter MOOSE CK.

3. Penelitian ini tidak

membandingkan tool penghitung parameter

OO Metric. Penulis tidak membandingkan

hasil perhitungan antara satu tool dengan

tool yang lainnya. Hal ini dikarenakan agar

penelitian lebih fokus untuk menghasilkan

metode pengukuran kualitas disain software

framework PHP.

4. Penelitian ini tidak

membandingkan antara parameter OO

Page 144: Perbaningan PHP Framework Dengan Expert Choice

3

Metric yang lainnya. Hal ini dikarenakan

setiap OO Metric memiliki karakteristik

parameter yang berbeda-beda. Dan tidak

semua OO Metric telah dipetakan ke dalam

properti kualitas. Sehingga tidak

memungkinkan bagi penulis untuk mencoba

semua OO Metric kedalam penelitian ini.

1.3. Tujuan dan Manfaat

1.3.1. Tujuan

Tujuan dari membandingkan kualitas

kelima framework tersebut adalah untuk

mengetahui kualitas disain software dari

kelima framework, manakah yang paling

baik. Sehingga akan dapat memberikan

rekomendasi kepada programmer web

dalam membangun aplikasi web

menggunakan framework PHP.

1.3.2. Manfaat

1. Dapat memberi rekomendasi

manakah framework yang paling baik

digunakan, khsusunya dalam

membangun aplikasi web.

2. Metode yang penulis pakai dapat

dipergunakan untuk menganalisis

kembali software yang diiginkan dan

tentunya yang memiliki domain atau

fugsi yang sama.

3. Dapat menjadi referensi dalam

pembelajaran untuk mengukur

kualitas disain software yang lainnya,

baik itu aplikasi desktop maupun

aplikasi web.

1.4. Landasan Teori

1.4.1 METRICS FOR OBJECT

ORIENTED SOFTWARE

ENGINEERING CHIDAMBER,

KEMERER (MOOSE CK)

MOOSE CK merupakan salah

satu metric yang dipergunakan untuk

mengukur kualitas disain sebuah

software berdasarkan enam parameter

dengan melihat pada perspektif

Object Oriented Design

1. Weighted Methods Per Class

(WMC)

WMC berhubungan secara

langsung terhadap kompleksitas dari

sebuah objek, karena metode adalah

properti dari sebuah objek dan

kompleksitas sebuah objek

ditentukan oleh properti.

WMC=

n

i

Ci1

Ci = Static Kompleksitas

Jumlah metode dan kompleksitas

dari metode merupakan salah satu

indikator berapa lama waktu dan

usaha yang dibutuhkan untuk

membangun dan memelihara objek.

Objek dengan jumlah metode yang

lebih banyak dapat membatasi

kemungkinan objek tersebut untuk

digunakan kembali (reuse) .

Nilai WMC yang tinggi mempunyai

kecenderungan kegagalan software.

Menurut www.aivosto.com toleransi

nilai WMC adalah antara 20-50

dalam sebuah class, atau maksimum

10% dari jumlah metode dalam

sebuah class. Penelitian yang lain

menurut Basili, dengan sampel 30

proyek C++, menunjukkan semakin

tinggi nilai WMC akan meningkatkan

bugs dan menurunkan kualitas.

Namun penelitian tersebut juga

tidak menyebutkan berapa optimum

range yang dapat digunakan. Pada

penelitian yang sama mengatakan

bahwa nilai yang tinggi untuk proyek

VB terlihat diperbolehkan.

2. Depth of Inheritance Tree (DIT)

Kedalaman dari sebuah class

dalam inheritance hirarki dimana

angka maksimum dimulai dari class

leaf dan menurun pada class root

pada sebuah hirarki. Sehingga hirarki

yang dalam akan menyebabkan

tingginya kompleksitas dari disain

karena makin banyak metode dan

class yang terlibat .

Rekomendasi www.aivosto.com

nilai DIT adalah 5 atau kurang.

Dokumentasi Visual Studio.Net

menyebutkan nilai DIT ≤ 5. Beberapa

sumber lain

mengijinkan nilai DIT

sampai dengan 8.

Page 145: Perbaningan PHP Framework Dengan Expert Choice

4

3. Number of Children (NOC)

NOC adalah jumlah subclass

dalam sebuah class hierarchy. NOC

merupakan indikator besarnya

pengaruh sebuah class terhadap

disain sistem secara keseluruhan.

Semakin besar nilai NOC, semakin

besar pula potensi ketidakcocokan

sub class dengan abstraksi pada

parent class.

Hal ini dapat mengakibatkan

kesalahan penggunaan sub class

seperti ketika menggunakan salah

satu sub class dari sekian banyak sub

class yang lain dalam salah satu

program.

4. Coupling Between Object Classes

(CBO)

CBO menghitung class yang

berhubungan dengan class yang lain.

Hal ini dihitung terhadap non-

inheritance class. Sehingga semakin

sedikit class yang berhubungan maka

mengindikasikan class yang baik.

Karena meningkatkan modularity dan

reuse.

Semakin banyak class yang tidak

tergantung satu sama lain akan lebih

baik untuk digunakan dalam aplikasi

yang lain. Hal ini sangat konsisten

dengan tingkat interdependency

antara modul. Berapa nilai

maksimum yang diijinkan? CBO >

14 terlalu tinggi menurut Houari A

Sahraoui.

5. Response for a Class (RFC)

RFC adalah jumlah semua

metode yang dipanggil sebagai

respon terhadap diluar objek dari

sebuah class. RFC juga mengukur

komunikasi antara objek. Hal ini

berlaku terhadap semua metode yang

diakses dalam class hirarki. Sehingga

semakin banyak metode yang

digunakan untuk merespon objek dari

luar semakin kompleks dan

meningkatkan waktu tes.

6. Lack of Cohesion Method

(LCOM)

LCOM mengukur ketidaksamaan

metode dalam sebuah class dari

instance variabel atau atribut. Dengan

tingginya kohesi berarti

mengindikasikan semakin baik class

tersebut.

Sehingga lebih sederhana dan

memiliki sifat reusability yang tinggi.

Sedangkan semakin rendah kohesi

atau lack of cohesion maka semakin

kompleks class tersebut.

1.4.2. PROPERTI KUALITAS DISAIN

SOFTWARE

Kualitas disain software pada

aspek orientasi objek dan disesuaikan

dengan OO Metric maka hanya

beberapa karakteristik atau properti

kualitas yang dapat dievaluasi untuk

mengukur kualitas kode dan disain

yaitu efficiency, complexity,

understandability, reusability,

maintainability/testability.

1. Efficiency : Apakah disain dan

implementasi software telah

dilakukan dengan efisien?

2. Complexity : Dapatkah

implementasi software digunakan

lebih efektif sehingga menurunkan

tingkat kompleksitas?

3. Understandability : Apakah

disain software lebih mudah

dimengerti?

4. Reusability : Apakah kualitas

disain software mendukung

penggunaan kembali (reuse)?

5. Maintainability/Testability :

Apakah disain software mendukung

untuk kemudahan testing dan

perubahan?

1. Hubungan Properti Kualitas

Disain Software dan Parameter

MOOSE CK

Tabel 1. Hubungan Properti Kualitas

Software dan Parameter Metric Properti

Kualitas

Software

Parameter Metric

Efficiency LCOM, CBO, DIT, NOC

Complexity CC (Traditional Metric)

Understandabili

ty WMC, RFC, DIT

Reusability WMC, LCOM, CBO, DIT, NOC

Maintainability/Testability

WMC, RFC, DIT, NOC

Pada tabel 1 diatas tampak

bahwa penelitian Linda H Rosenberg

dan Lawrence E Hyaat pada tahun

2003, menunjukkan properti

Page 146: Perbaningan PHP Framework Dengan Expert Choice

5

complexity tidak menggunakan

parameter MOOSE CK, tapi

menggunakan Cyclomatic

Complexity (CC). Pada riset yang

lain pada tahun 1993 terutama

properti maintainability/testability

menggunakan parameter yang

hampir sama, DIT, NOC, RFC,

LCOM, WMC, DAC, NOM, SIZE1,

SIZE2, MPC. Sedangkan menurut

Magiel Bruntink dan Arie Van

Deursen (dalam Jurnal MTI UI,

2007: 13), DIT, LCOM, NOC, RFC,

WMC, FOUT, LOCC, NOF, NOM,

Parameter-parameter yang dicetak

tebal tidak termasuk MOOSE CK.

2. Pengaruh Parameter MOOSE

CK pada Properti Kualitas

Disain Software

Penelitian Linda H Rosenberg

dan Lawrence E Hyatt mengenai

hubungan dan pengaruh antara

parameter-parameter OO Metric dan

properti kualitas disain software

menunjukkan bahwa nilai parameter

MOOSE CK berbanding terbalik

dengan kualitas disain software

1.4.3. ANALYTIC HIERARCHY

PROCESS (AHP)

Metode Analytic Hierarchy

Process (AHP) dikembangkan oleh

Thomas L. Saaty pada tahun 70-an

ketika di Warston School. Metode

AHP merupakan salah satu metode

yang dapat digunakan dalam sistem

pengambilan keputusan dengan

memperhatikan faktor-faktor

persepsi, preferensi, pengalaman dan

intuisi. AHP menggabungkan

penilaian-penilaian dan nilai-nilai

pribadi ke dalam satu cara yang

logis.

Analytic Hierarchy Process

(AHP) dapat menyelesaikan

masalah multikriteria yang kompleks

menjadi suatu hirarki. Masalah yang

kompleks dapat diartikan bahwa

kriteria dari suatu masalah yang

begitu banyak (multikriteria),

struktur masalah yang belum jelas,

ketidakpastian pendapat dari

pengambil keputusan, pengambil

keputusan lebih dari satu orang, serta

ketidakakuratan data yang tersedia.

Menurut Saaty, hirarki didefinisikan

sebagai suatu representasi dari

sebuah permasalahan yang kompleks

dalam suatu struktur multi level

dimana level pertama adalah tujuan,

yang diikuti level faktor, kriteria, sub

kriteria, dan seterusnya ke bawah

hingga level terakhir dari alternatif.

Dengan hirarki, suatu masalah yang

kompleks dapat diuraikan ke dalam

kelompok-kelompoknya yang

kemudian diatur menjadi suatu

bentuk hirarki sehingga

permasalahan akan tampak lebih

terstruktur dan sistematis.

Analytic Hierarchy Process

(AHP) mempunyai landasan

aksiomatik yang terdiri dari :

1. Reciprocal Comparison,

yang mengandung arti si pengambil

keputusan harus bisa membuat

perbandingan dan menyatakan

preferensinya. Preferensinya itu

sendiri harus memenuhi syarat

resiprokal yaitu kalau A lebih disukai

dari B dengan skala x, maka B lebih

disukai dari A dengan skala 1:x.

2. Homogenity, yang

mengandung arti preferensi

seseorang harus dapat dinyatakan

dalam skala terbatas atau dengan

kata lain elemen-elemennya dapat

dibandingkan satu sama lain. Kalau

aksioma ini tidak dapat dipenuhi

maka elemen-elemen yang

dibandingkan tersebut tidak

homogenous dan harus dibentuk

suatu cluster (kelompok elemen-

elemen) yang baru.

3. Independence, yang

berarti preferensi dinyatakan dengan

mengasumsikan bahwa kriteria tidak

dipengaruhi oleh alternatif-alternatif

yang ada melainkan oleh objektif

secara keseluruhan. Ini menunjukkan

bahwa pola ketergantungan atau

pengaruh dalam model AHP adalah

searah keatas, artinya perbandingan

antara elemen-elemen dalam satu

level dipengaruhi atau tergantung

Page 147: Perbaningan PHP Framework Dengan Expert Choice

6

oleh elemen-elemen dalam level di

atasnya.

4. Expectations, artinya

untuk tujuan pengambilan keputusan,

struktur hirarki diasumsikan

lengkap. Apabila asumsi ini tidak

dipenuhi maka si pengambil

keputusan tidak memakai seluruh

kriteria dan atau objektif yang

tersedia atau diperlukan sehingga

keputusan yang diambil dianggap

tidak lengkap.

1. Prinsip-Prinsip Dasar Analytic

Hierarcy Process (AHP)

1. Decomposition

Pengertian decomposition

adalah memecahkan atau

membagi problema yang

unsurnya ke bentuk hirarki

proses pengambilan utuh

menjadi unsur keputusan,

dimana setiap unsur atau

elemen saling berhubungan.

Gambar 1. Struktur Hirarki

(Sumber: Jurnal umum Universitas Sumatera Utara)

2. Comparative Judgement

Comparative judgement

dilakukan dengan penilaian tentang

kepentingan relatif dua elemen pada

suatu tingkat tertentu dalam

kaitannya dengan tingkatan

diatasnya. Penilaian ini merupakan

inti dari AHP karena akan

berpengaruh terhadap urutan prioritas

dari elemen elemennya.

3. Synthesis of Priority

Synthesis of priority dilakukan

dengan menggunakan eigen vector

method untuk mendapatkan bobot

relatif bagi unsur unsur

pengambilan keputusan.

4. Logical Consistency

Logical consistency

merupakan karakteristik penting

AHP. Hal ini dicapai dengan

mengagresikan seluruh eigen

vector yang diperoleh dari berbagai

tingkatan hirarki dan selanjutnya

diperoleh suatu vektor composite

tertimbang yang menghasilkan

urutan pengambilan keputusan.

Tabel 2 ini adalah skala

Saathy yang digunakan dalam

implementasi metode AHP. Seperti

pada penjelasan sebelumnya, pada

kolom keterangan dapat merubah

kata-kata “agar” sesuai dengan

topik permasalahan. Pada baris

terakhir merupakan kebalikan dari

nilai perbandingan. Sehingga

seperti pada contoh diatas apabila

objek A mempunyai nilai 3

dibandingkan nilai B, maka nilai B

mempunyai nilai 1/3 dibandingkan

objek A.

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

1/(1-9) Kebalikan nilai tingkat

kepentingan dari skala 1-9

1.5 Metodologi Penelitian

Pada studi kasus ini penulis

akan menggunakan 5 framework

PHP yang paling banyak

diminati/digunakan menurut versi

www.phpframeworks.com.

Framework ini diurutkan mulai dari

yang sering digunakan oleh para

programmer PHP dalam

membangun aplikasi web, Yii (93

Votes), CodeIgniter (88 Votes),

CakePHP (67 Votes), Symfony (58

Tujuan

Kriteria 1

Alternatif 2 Alternatif 1

Kriteria 2 Kriteria 3 Kriteria 4

Alternatif 3

Page 148: Perbaningan PHP Framework Dengan Expert Choice

7

Votes), Zend (45 Votes). Data ini

diambil pada tanggal 9 Oktober

2010. Kemudian dalam penghitungan

parameter MOOSE CK akan

digunakan tool PHP Depend yang

khusus untuk mengukur kualitas

metric dari bahasa pemrograman

PHP.

Untuk menghitung besarnya

nilai MOOSE CK yang digunakan,

penulis menggunakan tool PHP

Depend. PHP Depend adalah sebuah

tool yang digunakan untuk mengukur

metric aplikasi web menggunakan

bahasa pemrograman PHP. Menurut

website resminya

http://www.pdepend.org program

kecil yang menunjukkan analisis

kode berdasarkan sumber file yang

akan diuji. Analisis kode berarti PHP

Depend pertama kali mengambil

kode asal aplikasi kemudian

memparsingnya kedalam proses

struktur data internal yang mudah.

Data struktur ini biasa disebut

sebagai AST (Abstract Sintax Tree),

yang menampilkan pernyataan dan

elemen berbeda yang digunakan

untuk menganalisa kode sumber.

Pengukuran ini juga disebut sebagai

software metric.

Apa itu software metric? Pada

dasarnya software metric adalah

sesuatu yang sangat sederhana.

Software metric adalah penjumlahan

dari beberapa elemen atau fragmen

kode yang ditemukan dalam kode

sumber. Sebagai contoh nilai

cyclomatic complexity, metode yang

digunakan untuk mendapatkan

nilainya adalah dengan

menjumlahkan pernyataan logika,

seperti if, for dan lain sebagainya

kedalam metode analisis.

Mengapa penulis memilih

menggunakan PHP Depend?

Pertanyaan tersebut dapat penulis

jawab sebagai berikut :

1. PHP Depend sangat otomatis dan

selalu objektif, tool ini hanya

mengukur kualitas dari kode sumber

aplikasi yang diberikan.

2. PHP Depend memberikan skala

tergantung pada kode sumber

aplikasi.

3. PHP Depend mengikuti untuk

mengidentifikasi bagian-bagian

software yang digunakan untuk

menganalisis kodenya.

4. PHP Depend juga mendukung

beberapa fancy metric yang sangat

berguna.

Gambar 2. Empat Tahapan Utama Metode

Pengukuran Kualitas Disain Software

(Sumber: Tesis Magister Teknologi

Informasi, (Depok: Jurnal Sistem Informasi

MTI UI, Volume 5, No.1, 2007))

1.5.1 Pembobotan Parameter MOOSE

CK

Pada tahap pembobotan,

parameter MOOSE CK dibagi

dalam sembilan tahapan. Dimana

tujuannya adalah untuk

mendapatkan bobot dari masing-

masing parameter MOOSE CK.

Hal ini seperti yang dijelaskan pada

Gambar 4.2. Hasil yang diperoleh

dari pembobotan parameter-

parameter MOOSE CK harus dicek

konsistensinya, ini bertujuan untuk

mengukur konsistensi dalam

memberikan penilaian, pada skala

1-9.

1.5.2 Perbandingan Nilai Skala Saathy

Pada Parameter MOOSE CK

Perbandingan parameter-

parameter MOOSE CK

Pembobotan MOOSE CK

Evaluasi MOOSE CK

Pembobotan Properti Kualitas

Evaluasi Properti Kualitas

Hasil Evaluasi

Keseluruhan

Software

Page 149: Perbaningan PHP Framework Dengan Expert Choice

8

berpedoman pada skala Saathy.

Seperti yang ditunjukkan pada

Tabel 2. Dalam membandingkan

parameter-parameter MOOSE CK

harus mempertimbangkan

objektifitas dari pengukuran

software. Pemetaan metric dengan

objet oriented design element,

Tabel 3 merupakan salah satu tool

yang dapat digunakan dalam

membandingkan parameter-

parameter MOOSE CK, maka

pemberian nilai skala dapat

disesuaikan dengan nilai

objektifitas pengukuran kualitas

disain software.

Tabel 3. Pemetaan metric dengan

Object Oriented Design Element

Metric Object

Definition

Object

Attributes

Object

Commu

nication

WMC √ √

DIT √

NOC √

RFC √ √

CBO √

LCOM √

(Sumber: Tesis MTI UI Volume 5, No.1,

2007)

Dengan preferensi seperti tabel

diatas, diperoleh nilai bobot dari masing-

masing metric seperti disajikan tabel

dibawah ini

Tabel 4. Bobot Parameter 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 Evaluasi Parameter MOOSE CK

Evaluasi parameter

MOOSE CK adalah tahapan kedua

dari metode pengukuran kualitas

disain software. Pada tahap ini

dilakukan perbandingan parameter

MOOSE CK yang sama antar

masing-masing software.

Banyak software atau tool

yang dapat melakukan pengukuran

MOOSE CK. Masing-masing tool

memiliki kelebihan dan

kekurangan. Diantara tool yan

penulis pernah coba adalah

PHPUnit, CCLOC, namun yang

paling baik dalam hal perhitungan

adalah PHP Depend. PHP Depend

adalah software metric khusus

untuk bahasa pemrograman PHP.

Berbeda dengan software metric

lainnya, PHP Depend mendukung

untuk menghitung aplikasi PHP

yang berorientasi objek. Seperti

inheritance, coupling,

encapsulation, cyclomatic

complexity dan lain sebagainya.

Tool ini berbasis console, dan

berjalan dalam sistem operasi

linux. Instalasinya cukup mudah,

kita dapat mendownloadnya lewat

website resminya di

www.pdepend.net. Kemudian kita

mengikuti panduan instalasinya

dengan benar, untuk mengeceknya

apakah sudah terinstal, kita perlu

mengetik pdepend –version pada

console terminal linux.

Setelah melalui

perhitungan menggunakan PHP

Depend maka didapatkan hasil

sebagai berikut ini.

Tabel 5. Jumlah class pada

masing-masing framework PHP

No Framework Jumlah

Class

1 Yii 1082

2 CodeIgniter 136

3 CakePHP 460

4 Symfony 2102

5 Zend 2244

(Sumber: Hasil Pengujian Penulis)

Page 150: Perbaningan PHP Framework Dengan Expert Choice

9

Tabel 6. Hasil parameter MOOSE CK

pada masing-masing framework PHP

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

(Sumber: Hasil Pengujian Penulis)

Tabel 7. Nilai Parameter MOOSE Pada

Masing-masing Framework PHP

WMC DIT NOC CBO RFC LCOM

Yii

versi

1.0.12

0.3429 0.3766 0.3578 0.3416 0.3550 0.3419

CodeIg

niter

versi

1.7.2

0.1299 0.0677 0.1438 0.1446 0.1115 0.1376

CakeP

HP

versi

1.3.3

0.1237 0.1433 0.1199 0.1141 0.1144 0.1154

Symfo

ny

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

(Sumber: Hasil Pengujian Penulis)

1.5.4 Pembobotan Properti Kualitas

Disain Software

Tahap pembobotan

properti kualitas disain software

secara umum sama prosedurnya

dengan pembobotan parameter

MOOSE CK. Perbedaannya

terletak pada objek yang

dibandingkan, yaitu objek

parameter MOOSE CK dan

properti kualitas disain software.

Namun untuk memperjelas

keseluruhan metode pengukuran

kualitas disain software, penulis

akan menjelaskan proses

pembobotan kualitas disain

software.

Tabel 8. Perbandingan Properti Kualitas

Disain Software

Efficie

ncy

Understa

ndability

Reusab

ility

Maintain

ability/

Testabilit

y Efficiency 1 1/4 1/6 1/7

Understanda

bility 4 1 1/2 1/4

Reusability 6 2 1 1/2

Maintainabil

ity/

Testability 7 4 2 1

(Sumber: Tesis MTI UI Volume 5, No.1, 2007)

Berikut ini adalah hasil pengukuran bobot

properti kualitas disain.

Tabel 9. Hasil Perhitungan Bobot Properti

Kualitas Disain

Faktor Bobot

Efficiency 0.0527

Understandability 0.1571

Reusability 0.2865

Maintainability/

Testability

0.5036

(Sumber: Tesis MTI UI Volume 5, No.1,

2007)

1.5.5 Evaluasi Properti Kualitas

Disain Software

Evaluasi kualitas disain

software merupakan tahap terakhir

dari empat tahapan utama metode

pengukuran kualitas disain

software. Pada tahap ini

menggunakan hasil dari ketiga

tahapan sebelumnya yaitu hasil

faktor pembobotan MOOSE CK,

hasil faktor evaluasi MOOSE CK

dan hasil faktor pembobotan

properti kualitas disain software.

Ada dua tahapan lagi dalam

evaluasi properti kualitas disain

software yaitu faktor evaluasi

sesuai dengan properti kualitas

disain software dan menghitung

final evaluasi masing-masing

framework PHP.

Page 151: Perbaningan PHP Framework Dengan Expert Choice

10

Tabel 10. Perhitungan Faktor Evaluasi pada

Properti Kualitas Disain Software

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

(Sumber: Tesis MTI UI Volume 5, No.1,

2007)

Faktor Evaluasi (FE) dan Bobot

Metric (BM) disesuaikan dengan nilai pada

framework PHP yang dipilih.

Tabel 11. Final Evaluasi

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)

maintainability/testability x (BK)

maintainability/testability

(Sumber: Tesis MTI UI Volume 5, No.1,

2007)

1.5.6 Hasil Penelitian

Tabel 12. Hasil Final Evaluasi Properti

Kualitas Disain pada Masing-masing

Framework PHP

Perin

gkat Framework PHP

Final

Evaluasi

1 CakePHP versi

1.3.3 0.0195

2 CodeIgniter versi

1.7.2 0.0197

3 Zend versi 1.10.8 0.0304

4 Symfony versi 1.4.8 0.0372

5 Yii versi 1.0.12 0.0579

(Sumber: Hasil Pengujian Penulis)

Dari hasil tabel 12 maka dapat

disimpulkan bahwa karena pada prinsipnya

nilai parameter MOOSE CK berbanding

terbalik dengan properti kualitas disain

software, maka pada aspek orientasi objek

disain model dengan menggunakan MOOSE

CK dan properti kualitas disain software,

framework PHP CakePHPi dengan nilai

0.0195 paling baik kualitasnya diantara

framework PHP yang lainnya. Sedangkan

yang paling rendah adalah framework Yii

dengan nilai 0.0579. Disusul dengan urutan

kedua, ketiga dan keempat adalah

framework CodeIgniter dengan nilai 0.0197,

framework Zend dengan nilai 0.0304 dan

framework Symfony dengan nilai 0.0372.

1.6 Kesimpulan

Beberapa kesimpulan dapat

diambil dari penelitian ini adalah sebagai

berikut :

1. Hasil penelitian menunjukkan bahwa

dengan menggunakan metode ini akan

menghasilkan sebuah nilai yang

menunjukkan kualitas sebuah disain

software relatif terhadap software yang lain

2. Metode ini bersifat umum, sehingga selain

dapat diterapkan pada aplikasi dekstop,

metode ini juga dapat diterapkan untuk

mengevaluasi aplikasi web. Namun software

yang akan di evaluasi harus mempunyai

domain atau fungsi yang sama.

Page 152: Perbaningan PHP Framework Dengan Expert Choice

11

3. Berdasarkan penelitian yang

dilakukan kita dapat mengetahui bahwa

berdasarkan object oriented design model,

kualitas framework CakePHP adalah yang

paling baik dari framewok lain. Karena

memiliki nilai hasil final evaluasi yang

paling rendah diantara nilai final evaluasi

framework yang lainnya sebesar 0.0195. Hal

tersebut karena nilai parameter MOOSE CK

berbanding terbalik dengan properti kualtias

disain software seperti yang telah dijelaskan

pada BAB II sebelumnya, jadi semakin

kecil nilai akhir maka semakin baik

kualitasnya. Sedangkan yang paling rendah

tingkat kualitasnya adalah framework Yii

dengan nilai sebesar 0.0579.

1.7 Daftar Pustaka

[1] Apriyanto, Agus. 2008.

“Perbandingan Kelayakan Jalan

Beton dan Aspal dengan Metode

Analytic Hierarchy Process (AHP)”.

Tesis Magister Teknik Sipil,

Universitas Diponegoro,Semarang.

[2] Bari, Ahsanul, Syam, Anupom. 2008.

CakePHP Application Development –

Step by step introduction to rapid

web development using the open

source MVC cakePHP framework.

Penerbit Packt Publishing,

Birmingham, Mumbai: xv + 311 hlm.

[3] Basili, Victor, et al. 1996. “A

validation of Object Oriented Design

Metric as Quality Indicators”.

[4] Boehm, B.W, J.R. Brown, H. Kaspar,

M. Lipow, G.J. McLeod and M.J.

Merritt. 1978. “Characteristics of

Software Quality”, Amsterdam:

North-Holland.

[5] Bray, Ian K. 2002. “An Introduction

To Requirements Engineering”.

Pearson Education Limited, United

Kingdom: xi + 408 hlm

[6] Brito, Fernando e Abreu. 2003. Talk

on “Design Metrics For Object

Oriented Software Systems”.

[7] Brito, Fernando e Abreu. 1998. “The

MOOD2 Metrics Set”, INESC.

[8] Bruntink, Magiel, Arie van Deursen.

2004. “Predicting Class Testability

Using Object Oriented Metrics”.

[9] Carl Vondrick.2010. What’s

Symfony? 12 Januari: 3 hlm.

http://www.symfony-project.org

13 November 2010, pk. 09.30 WIB.

[10] CakePHP Team.2005. CakePHP the

rapid development php framework: 3

hlm.

http://cakephp.org/

13 November 2010, pk. 09.30 WIB.

[11] Derek Allard.2010. Welcome to

CodeIgniter! 14 Agustus: 3 hlm.

http://codeigniter.com

13 November 2010, pk. 09.30 WIB.

[12] Hermawan, Efano dan Petrus

Mursanto. 2007. “Pemeringkatan

Software Aplikasi Berdasarkan

Properti Kualitas Disain dan Metrics

For Object Oriented Software

Menggunakan Analytic Hierarchy

Process”. Tesis Magister Teknologi

Informasi, Depok:Jurnal Sistem

Informasi MTI UI, Volume 5, No.1.

[13] Idrus, Asria. 2010. “Implementasi

Sistem Metode AHP Sebagai Alat

Bantu Pengambilan Keputusan

Pemilihan Calon Tenaga Kerja di

PT. Danagung Ramulti”. STMIK

AMIKOM, Yogyakarta.

[14] ISO 1926-1. 2001. “Software Quality

Characteristic”.

[15] Jajang. 2005. Hardware. 2 Mei: 2

hlm.

http://total.org.id

27 Desember 2010, pk. 16.59 WIB.

[16] Kotonya, Gerald, Sommerville Ian.

1997. Requirements Engineering :

Processes and Techniques. John

Wiley & Sons, Inc, New York: xiii +

282 hlm.

[17] Manuel Pichler.2009. What is

PHP_Depend? 14 Desember: 3 hlm.

http://pdepend.org

13 November 2010, pk. 09.30 WIB.

[18] Muslich, Masnur; Maryaeni. 2009.

Bagaimana Menulis Skripsi?.

Penerbit PT. Bumi Aksara, Jakarta: x

+ 166 hlm.

[19] PHP Frameworks.2010. Top 10

Ranking PHP Frameworks? 5 Juli: 2

hlm.

http://phpframeworks.com

9 Oktober 2010, pk. 14.20 WIB.

[20] Pressman, Roger S. 1992.

SOFTWARE ENGINEERING- A

Practitioner’s Approach – Third

Edition. Penerbit Beacon Graphic

Corporation, Singapura: xxii + 793

hlm.

Page 153: Perbaningan PHP Framework Dengan Expert Choice

12

[21] Render, Barry, Ralph M. Stair. 2000.

“Quantitative Analysis for

Management”, Prentice Hall Inc.

[22] Rosenberg, Linda H, Lawrence E.

Hyaat. 2003 “Software Quality

Metrics for Object Oriented

Environments”.

[23] Rosenberg, Linda H, Lawrence E.

Hyaat. 1998. “Applying and

Interpreting Object Oriented

Metrics”, Software Technology

Conference, Utah.

[24] Saathy, Thomas, Vargas L.G. 2006.

“Decision Making with the Analytic

Network Process”, Springer.

[25] Shyam R. Chidamber, Chris F.

Kemerer. 1995. “A Metrics Suite For

Object Oriented Design”. M.I.T

Sloan School of Management.

http://web.cs.wpi.edu/~gpollice/cs56

2-s05/Readings/CKMetrics.pdf

[26] Shyam R. Chidamber, Chris F.

Kemerer. 1993. “MOOSE: Metric for

Object OrientedSoftware

Engineering”. Workshop on Process

and Metric for Object Oriented

Software Development, Washington

DC, EUA.

[27] Wikipedia Tim. 2010. Framework. 15

Desember : 2 hlm

http://www.wikipedia.org

27 Desember 2010, pk. 17.15 WIB.

[28] Wikipedia Tim. 2010. Object

Oriented Programming. 27

Desember : 15 hlm

http://www.wikipedia.org

27 Desember 2010, pk. 17.01 WIB.

[29] Wikipedia Tim. 2010. Perangkat

Lunak. 18 November : 2 hlm

http://www.wikipedia.org

27 Desember 2010, pk. 17.15 WIB.

[30] Wikipedia Tim. 2010. Software

Metric. 17 Desember : 3 hlm

http://www.wikipedia.org

27 Desember 2010, pk. 17.00 WIB.

[31] Wikipedia Tim. 2010. Web. 27

Desember : 14 hlm

http://www.wikipedia.org

27 Desember 2010, pk. 17.23 WIB.

[32] Yii Team.2009. Welcome to Yii

Framework. 15 Desember: 3 hlm.

http://www.yiiframework.com

13 November 2010, pk. 09.30 WIB.

[33] Zend Team.2008. About Zend

Framework. 12 Januari: 4 hlm.

http://framework.zend.com

13 November 2010, pk. 09.30 WIB.

Page 154: Perbaningan PHP Framework Dengan Expert Choice

1

COMPARATIVE ANALYSIS FRAMEWORK PHP BASED MOOSE CK AND

QUALITY PROPERTY DESIGN METHOD USING ANALYTIC HIERARCHY

PROCESS (AHP) Wahyu Rifa’i Dwi Septian

Program Studi Teknik Informatika, Fakultas Sains dan Teknologi, Universitas Islam Negeri Syarif

Hidayatullah Jakarta, Indonesia, 2010

[email protected]

Abstrak

The existence of the PHP framework becomes a challenge to try its use in creating web-based

applications. The existence of the PHP Framework is very much available to be obstacles for a

person to choose to use it. Due to the lack of comparative research on this PHP framework, so the

author tries to compare and find the best PHP framework quality. So the research was focused on

getting the best PHP framework objectives based on the quality of the design model. In a study of

this thesis the author tries to compare 5 PHP framework based on the quality of the design model

using the parameters of MOOSE CK and design quality properties, then combined with the

method of Analytic Hierarchy Process (AHP) to determine the best framework model of design

quality. The author also uses a PHP Depend tool to calculate the value of MOOSE CK Depend on

each PHP framework. PHP Framework is Yii, CodeIgniter, CakePHP, Symfony and Zend. The

final results of this study indicate CakePHP that the various frameworks have the best quality

design framework model compared with Yii framework, CodeIgniter framework, Symfony

framework and Zend framework.

Keywords: framework PHP, Analytic Hierarchy Process (AHP), MOOSE CK,

Properti kualitas disain, PHP Depend.

1. Preface

1.1. Background

The presence of information

technology currently plays a very

significant, especially for medium-scale

firms and above. Undeniably, this happens

because with this information technology

will be able to support and raise corporate

income, so any company trying to apply

information technology in it. As an example

is the company's e-commerce website or

applications to support corporate activities,

such as accounting applications.

Selection of the appropriate applications

with the need to address existing problems,

a thing that should be kept. Because this can

lead to good or bad a performance of the

companies concerned in running the

business. Will be felt even more

complicated if the applications offered are

very diverse kinds.

In this research, the author tries to use

existing methods to be applied in a world of

informatics in the choice of the best

software framework. But of course this

method is not limited to the world of

information technology, but also in other

cases. For example, this method can also be

used in a comparison of the feasibility of

road asphalt or concrete and can also be

used as a decision making tool selection of

job seekers.

In this research the authors tried to compare

the quality of design software on the PHP

framework. The reason why the author

examines the quality of software design,

because design a software application

greatly affect the performance / performance

of a software, both desktop applications and

web applications.

Page 155: Perbaningan PHP Framework Dengan Expert Choice

2

Some previous research has produced a

measure of quality software that is

manifested in several parameters such as

MOOD, MOOD2 (Metric for Object

Oriented Design) and Moose (Metric for

Object Oriented Software Engineering).

Software quality measurement parameters is

usually called the Metric Object Oriented

(OO Metric).

In the application of OO Metric, software

quality parameters are interpreted in

accordance with OO Metric used. But the

values of these parameters is not sufficient

to determine the quality of the software

which one is better than other software, so

that the necessary methods to combine the

overall value becomes a value that interpret

the quality of the software relative to other

software in the application domain /

function the same.

In this research, the author tries to retrieve

the 5 sample PHP framework most

requested by a web programmer by

phpframeworks.com version.

Fifth framework will be measured and made

ratings based on an objective assessment of

the quantitative value Moose CK (Metric for

Object Oriented Software Engineering,

Chidamber, Kemerer), property quality and

processed using the method Hierarcy

Analytic Process (AHP).

1.2. Problem formulation and Limitations Based on the explanation of the

background above, the use of OO

metric alone is not sufficient to

determine the quality of a software with

other software. So, we need a general

method that can incorporate additional

parameters generated OO metrics to be

processed so as to provide a quality

value of the relevant software. So this

method can also be used by people who

want to evaluate other software, but it is

recommended with the same domain.

Having obtained the value of quality

then it will be made ranking software

which has the best quality value.

Many factors can affect the results of

this study, such as the type of OO

Metric, tools used, types of applications

are evaluated and many other factors

that influence it. Therefore the scope of

this study are as follows:

1. The case study will use a PHP

application framework that is well

known and much in demand by web

programmers

www.phpframeworks.com version.

This is because the PHP framework has

implemented the concept of Object

Oriented Programming, as we know

that creating a code at the moment now

is not like spaghety code again. Then

came the ease in building web

applications with the framework that

has been provided. Besides, research on

the comparison between the quality

design of web applications is still

relatively very rare when compared

with desktop applications.

2. Measuring the quality of software

design using the parameter Moose CK

and PHP tool Depend. At this time was

much like MOOD OO Metric, MOOD2

and others. Moose CK deliberately

chosen because of previous research

has produced a mapping between

Moose CK and property quality.

Depend PHP was chosen because it has

most of the parameters together with

parameters Moose CK.

3. This study did not compare the

parameters of OO Metric calculator

tool. The author does not compare the

calculation results between the one tool

with other tools. This is because for

more focused research to produce a

method of measuring the quality of

software design framework for PHP.

4. This study did not compare between

OO Metric other parameters. This is

because every OO Metric

characteristics of different parameters.

And not all OO Metric has been

mapped to the properties of quality. So

it is not possible for writers to try all

OO Metric into this study.

1.3. Objectives and Benefits

1.3.1. Goal

The purpose of comparing the quality

of the fifth framework was to evaluate

the quality of software design from the

fifth framework, where the most good.

So that will be able to provide

recommendations to web programmers

to build web applications using PHP

framework.

Page 156: Perbaningan PHP Framework Dengan Expert Choice

3

1.3.2. Benefits

1. Framework which can make

recommendations that are best used,

khsusunya in building web applications.

2. The method I use may be used to

analyze the software that diiginkan

back and of course that has the same

domain or Functions.

3. Can become a reference in learning

to measure the quality of the other

design software, both desktop

applications and web applications.

1.4. Platform Theory

1.4.1 Metrics FOR OBJECT

ORIENTED SOFTWARE

ENGINEERING CHIDAMBER,

KEMERER (Moose CK) Moose CK is one metric that is used to

measure the quality of a software

design based on six parameters by

looking at the perspective of Object

Oriented Design

1. Weighted Methods Per Class

(WMC) WMC relates directly to the complexity

of an object, because the method is a

property of an object and the

complexity of an object is determined

by the property.

The number of methods and complexity

of the method is one indicator of how

much time and effort required to build

and maintain the object. Objects with a

number of methods to limit the

possibility of more such objects to be

reused (reuse).

High WMC values have a tendency

software failure. According to WMC

www.aivosto.com tolerance value is

between 20-50 in a class, or a

maximum of 10% of the method in a

class. Another study by Basili, with a

sample of 30 projects of C + +, showed

the higher value of WMC will improve

the bugs and reduce the quality.

But the study also did not mention how

the optimum range that can be used. In

the same study said that high value for

VB project looks allowed.

2. Depth of Inheritance Tree (DIT)

The depth of a class in the inheritance

hierarchy in which the maximum

number of classes begins to decline in

leaf and root class in a hierarchy. So

who in the hierarchy will result in a

high complexity of the design because

more and more methods and classes

involved.

Recommendations www.aivosto.com

DIT value is 5 or less. Documentation

Visual Studio.Net mentioned the value

of DIT ≤ 5. Several other sources to

allow the value of DIT to 8.

3. Number of Children (NOC) NOC is the number of subclasses in a

class hierarchy. NOC is an indicator of

the level of influence a class to design

the overall system. The greater the

value of the NOC, the greater the

potential incompatibility of a sub class

with abstraction in the parent class.

This can lead to errors such as the use

of sub-classes when using one sub-class

of the many other sub-classes in one

program.

4. Coupling Between Object Classes

(CBO)

CBO calculates class associated with

another class. This was calculated on

the non-inheritance class. So the fewer

classes relating it indicates good class.

Because of increasing modularity and

reuse.

More and more classes are not

independent of one another would be

better for use in other applications. This

is very consistent with the level of

interdependency between modules.

What is the maximum value permitted?

CBO> 14 is too high by Houari A

Sahraoui.

5. Response for a Class (RFC)

RFC is the sum of all the methods

called in response to the outside of the

object of a class. RFC also measured

the communication between objects.

This applies to all methods accessible

within the class hierarchy. So the more

methods used to respond to increasingly

complex objects from outside and

increase testing time.

Page 157: Perbaningan PHP Framework Dengan Expert Choice

4

6. Lack of Cohesion Methods

(LCOM)

LCOM measures the dissimilarity of

methods in a class instance variables or

attributes. With high cohesion means

indicates the better class.

So much simpler and have a high

reusability properties. Meanwhile, the

lower the cohesion or lack of cohesion,

the more complex class.

1.4.2. PROPERTY QUALITY

SOFTWARE DESIGN

The quality of design in aspects of

object-oriented software and adapted to

OO Metric then only a few

characteristics or properties of quality

which can be evaluated to measure the

quality of code and design is efficiency,

complexity, Understandability,

reusability, maintainability / testability.

1. Efficiency: Is the design and

software implementation has been done

efficiently?

2. Complexity: Can the software

implementation is used more effectively

so that the lower level of complexity?

3. Understandability: Is the design of

the software easier to understand?

4. Reusability: Is the quality of software

design to support reuse (reuse)?

5. Maintainability / Testability: Is the

design of software support for easy

testing and changes?

1. Property Relations Quality Design

Software and Parameter Moose CK

Table 1. Property Relations and

Parameters Software Quality Metric

Properti

Kualitas

Software

Parameter Metric

Efficiency LCOM, CBO, DIT, NOC

Complexity CC (Traditional Metric)

Understandability

WMC, RFC, DIT

Reusability WMC, LCOM, CBO, DIT, NOC

Maintainability/

Testability WMC, RFC, DIT, NOC

In table 1 above it appears that research

Linda H. Rosenberg and Lawrence E

Hyaat in 2003, shows the complexity

properties Moose CK does not use

parameters, but using the cyclomatic

Complexity (CC). In another research

in 1993, mainly property

maintainability / testability using

similar parameters, DIT, NOC, RFC,

LCOM, WMC, DAC, NOM, SIZE1,

SIZE2, MPC. Meanwhile, according

Magiel and Arie Van Deursen Bruntink

(in the Journal of MTI UI, 2007: 13),

DIT, LCOM, NOC, RFC, WMC,

FOUT, LOCC, NOF, NOM,

parameters in bold are not included

moose CK.

2. Effect of Parameters on the

Properties Moose CK Design

Software Quality

Research Linda Rosenberg and

Lawrence H E Hyatt on the relationship

and influence between the parameters

and properties Metric OO software

design quality shows that parameter

values inversely Moose CK-quality

software design

1.4.3. Analytic Hierarchy Process

(AHP)

Method of Analytic Hierarchy Process

(AHP) was developed by Thomas L.

Saaty in the 70s when the Warston

School. AHP is one method that can be

used in the decision system by

observing the factors of perception,

preference, experience and intuition.

AHP incorporates judgments and

personal values into a single logical

way.

Analytic Hierarchy Process (AHP) to

solve the complex problem of multiple

criteria into a hierarchy. Complex

problem can be interpreted that the

criteria of a problem that so many

(multiple criteria), the structure of the

problem is unclear, uncertainty

opinions of decision makers, decision

makers more than one person, and

inaccuracies of data available.

According to Saaty, the hierarchy is

defined as a representation of a

complex problem in a multi-level

structure where the first level is the

goal, which followed the level of

factors, criteria, sub criteria, and so on

down to the last level of the alternative.

Page 158: Perbaningan PHP Framework Dengan Expert Choice

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 person's

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

Page 159: Perbaningan PHP Framework Dengan Expert Choice

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

1/(1-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

Page 160: Perbaningan PHP Framework Dengan Expert Choice

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)

Page 161: Perbaningan PHP Framework Dengan Expert Choice

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 1/4 1/6 1/7

Understanda

bility 4 1 1/2 1/4

Reusability 6 2 1 1/2

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)

maintainability/testability x (BK)

maintainability/testability

(Source: MTI UI Thesis Volume 5, No.1,

2007)

Page 162: Perbaningan PHP Framework Dengan Expert Choice

9

1.5.6 Research Results

Table 12. Final Results Property Evaluation

Design Quality in Each PHP Framework

Perin

gkat Framework PHP

Final

Evaluasi

1 CakePHP versi

1.3.3 0.0195

2 CodeIgniter versi

1.7.2 0.0197

3 Zend versi 1.10.8 0.0304

4 Symfony versi 1.4.8 0.0372

5 Yii versi 1.0.12 0.0579

(Source: Test Result Author)

From the results of Table 12 it can

be concluded that because, in principle, CK

Moose parameter value is inversely

proportional to property design quality

software, on aspects of object-oriented

design models using Moose CK and

property quality software design, PHP

framework with a value of 0.0195

CakePHPi best quality among other PHP

frameworks. While the lowest is Yii

framework with a value of 0.0579. Followed

by the second, third and fourth is a

framework with a value of 0.0197

CodeIgniter, Zend Framework with

Symfony framework value of 0.0304 and

0.0372 value. 1.6 Conclusion

Some conclusions can be drawn from

this study are as follows:

1. The results showed that by using

this method will produce a value that

indicates the quality of a software

design relative to other software

2. This method is general, so in

addition can be applied to desktop

applications, this method can also be

applied to evaluate the web

application. But the evaluation of the

software should have the same

domain or function.

3. Based on research conducted, we

can determine that based on object-

oriented design models, quality

frameworks are the best from other

framewok. Because the final results

of the evaluation value of the lowest

among the final value of the other

evaluation framework of 0.0195. This

is because the value of CK was

inversely Moose parameters with

properties kualtias design software

such as those described in Chapter II

before, so the smaller the final value

the better the quality. While the

lowest level of quality is Yii

framework with a value of 0.0579. 1.7 References

[1] Apriyanto, Agus. 2008.

“Perbandingan Kelayakan Jalan

Beton dan Aspal dengan Metode

Analytic Hierarchy Process (AHP)”.

Tesis Magister Teknik Sipil,

Universitas Diponegoro,Semarang.

[2] Bari, Ahsanul, Syam, Anupom. 2008.

CakePHP Application Development –

Step by step introduction to rapid

web development using the open

source MVC cakePHP framework.

Penerbit Packt Publishing,

Birmingham, Mumbai: xv + 311 hlm.

[3] Basili, Victor, et al. 1996. “A

validation of Object Oriented Design

Metric as Quality Indicators”.

[4] Boehm, B.W, J.R. Brown, H. Kaspar,

M. Lipow, G.J. McLeod and M.J.

Merritt. 1978. “Characteristics of

Software Quality”, Amsterdam:

North-Holland.

[5] Bray, Ian K. 2002. “An Introduction

To Requirements Engineering”.

Pearson Education Limited, United

Kingdom: xi + 408 hlm

[6] Brito, Fernando e Abreu. 2003. Talk

on “Design Metrics For Object

Oriented Software Systems”.

[7] Brito, Fernando e Abreu. 1998. “The

MOOD2 Metrics Set”, INESC.

[8] Bruntink, Magiel, Arie van Deursen.

2004. “Predicting Class Testability

Using Object Oriented Metrics”.

[9] Carl Vondrick.2010. What’s

Symfony? 12 Januari: 3 hlm.

http://www.symfony-project.org

13 November 2010, pk. 09.30 WIB.

[10] CakePHP Team.2005. CakePHP the

rapid development php framework: 3

hlm.

http://cakephp.org/

13 November 2010, pk. 09.30 WIB.

Page 163: Perbaningan PHP Framework Dengan Expert Choice

10

[11] Derek Allard.2010. Welcome to

CodeIgniter! 14 Agustus: 3 hlm.

http://codeigniter.com

13 November 2010, pk. 09.30 WIB.

[12] Hermawan, Efano dan Petrus

Mursanto. 2007. “Pemeringkatan

Software Aplikasi Berdasarkan

Properti Kualitas Disain dan Metrics

For Object Oriented Software

Menggunakan Analytic Hierarchy

Process”. Tesis Magister Teknologi

Informasi, Depok:Jurnal Sistem

Informasi MTI UI, Volume 5, No.1.

[13] Idrus, Asria. 2010. “Implementasi

Sistem Metode AHP Sebagai Alat

Bantu Pengambilan Keputusan

Pemilihan Calon Tenaga Kerja di

PT. Danagung Ramulti”. STMIK

AMIKOM, Yogyakarta.

[14] ISO 1926-1. 2001. “Software Quality

Characteristic”.

[15] Jajang. 2005. Hardware. 2 Mei: 2

hlm.

http://total.org.id

27 Desember 2010, pk. 16.59 WIB.

[16] Kotonya, Gerald, Sommerville Ian.

1997. Requirements Engineering :

Processes and Techniques. John

Wiley & Sons, Inc, New York: xiii +

282 hlm.

[17] Manuel Pichler.2009. What is

PHP_Depend? 14 Desember: 3 hlm.

http://pdepend.org

13 November 2010, pk. 09.30 WIB.

[18] Muslich, Masnur; Maryaeni. 2009.

Bagaimana Menulis Skripsi?.

Penerbit PT. Bumi Aksara, Jakarta: x

+ 166 hlm.

[19] PHP Frameworks.2010. Top 10

Ranking PHP Frameworks? 5 Juli: 2

hlm.

http://phpframeworks.com

9 Oktober 2010, pk. 14.20 WIB.

[20] Pressman, Roger S. 1992.

SOFTWARE ENGINEERING- A

Practitioner’s Approach – Third

Edition. Penerbit Beacon Graphic

Corporation, Singapura: xxii + 793

hlm.

[21] Render, Barry, Ralph M. Stair. 2000.

“Quantitative Analysis for

Management”, Prentice Hall Inc.

[22] Rosenberg, Linda H, Lawrence E.

Hyaat. 2003 “Software Quality

Metrics for Object Oriented

Environments”.

[23] Rosenberg, Linda H, Lawrence E.

Hyaat. 1998. “Applying and

Interpreting Object Oriented

Metrics”, Software Technology

Conference, Utah.

[24] Saathy, Thomas, Vargas L.G. 2006.

“Decision Making with the Analytic

Network Process”, Springer.

[25] Shyam R. Chidamber, Chris F.

Kemerer. 1995. “A Metrics Suite For

Object Oriented Design”. M.I.T

Sloan School of Management.

http://web.cs.wpi.edu/~gpollice/cs56

2-s05/Readings/CKMetrics.pdf

[26] Shyam R. Chidamber, Chris F.

Kemerer. 1993. “MOOSE: Metric for

Object OrientedSoftware

Engineering”. Workshop on Process

and Metric for Object Oriented

Software Development, Washington

DC, EUA.

[27] Wikipedia Tim. 2010. Framework. 15

Desember : 2 hlm

http://www.wikipedia.org

27 Desember 2010, pk. 17.15 WIB.

[28] Wikipedia Tim. 2010. Object

Oriented Programming. 27

Desember : 15 hlm

http://www.wikipedia.org

27 Desember 2010, pk. 17.01 WIB.

[29] Wikipedia Tim. 2010. Perangkat

Lunak. 18 November : 2 hlm

http://www.wikipedia.org

27 Desember 2010, pk. 17.15 WIB.

[30] Wikipedia Tim. 2010. Software

Metric. 17 Desember : 3 hlm

http://www.wikipedia.org

27 Desember 2010, pk. 17.00 WIB.

[31] Wikipedia Tim. 2010. Web. 27

Desember : 14 hlm

http://www.wikipedia.org

27 Desember 2010, pk. 17.23 WIB.

[32] Yii Team.2009. Welcome to Yii

Framework. 15 Desember: 3 hlm.

http://www.yiiframework.com

13 November 2010, pk. 09.30 WIB.

[33] Zend Team.2008. About Zend

Framework. 12 Januari: 4 hlm.

http://framework.zend.com

13 November 2010, pk. 09.30 WIB.

Page 164: Perbaningan PHP Framework Dengan Expert Choice

ANALISIS PERBANDINGAN FRAMEWORK PHP

BERDASARKAN MOOSE CK DAN PROPERTI KUALITAS

DISAIN MENGGUNAKAN METODE

ANALYTIC HIERARCHY PROCESS (AHP)

WAHYU RIFA’I DWI SEPTIAN

106091002976

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH

JAKARTA

2010M/1431H

Page 165: Perbaningan PHP Framework Dengan Expert Choice

ANALISIS PERBANDINGAN FRAMEWORK PHP

BERDASARKAN MOOSE CK DAN PROPERTI KUALITAS

DISAIN MENGGUNAKAN METODE

ANALYTIC HIERARCHY PROCESS (AHP)

Oleh:

Wahyu Rifa’i Dwi Septian

NIM : 106091002976

Skripsi Sebagai Salah Satu Syarat untuk Memperoleh Gelar

Sarjana Komputer Bidang Teknik Informatika

Fakultas Sains dan Teknologi Universitas Islam Negeri Syarif Hidayatullah Jakarta

PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH JAKARTA

2010 M/1431 H

Page 166: Perbaningan PHP Framework Dengan Expert Choice

PERNYATAAN

DENGAN INI SAYA MENYATAKAN BAHWA SKRIPSI INI ADALAH

HASIL KARYA SENDIRI YANG BELUM PERNAH DIAJUKAN SEBAGAI

SKRIPSI ATAU KARYA ILMIAH PADA PERGURUAN TINGGI ATAU

LEMBAGA MANAPUN

Jakarta, Desember 2010

Wahyu Rifa’i Dwi Septian

106091002976