• Tidak ada hasil yang ditemukan

ISSN : IMPLEMENTASI DAN ANALISIS PREDIKSI KEDALAMAN LAUT BERDASARKAN CITRA SATELIT MENGGUNAKAN ARTIFICIAL NEURAL NETWORK

N/A
N/A
Protected

Academic year: 2021

Membagikan "ISSN : IMPLEMENTASI DAN ANALISIS PREDIKSI KEDALAMAN LAUT BERDASARKAN CITRA SATELIT MENGGUNAKAN ARTIFICIAL NEURAL NETWORK"

Copied!
8
0
0

Teks penuh

(1)

IMPLEMENTASI DAN ANALISIS PREDIKSI KEDALAMAN LAUT BERDASARKAN CITRA SATELIT MENGGUNAKAN ARTIFICIAL NEURAL NETWORK

Nurseno Bayu Aji1 Drs. Jondri, Msi.2 Rian Febrian Umbara, Ssi., Msi.3 Fakultas Teknik

Universitas Telkom, Bandung

1clover.generation@gmail.com 2jdn@stttelkom.ac.id 3rianum123@gmail.com

ABSTRAK

Teknologi informasi berkembang dengan pesat dari waktu ke waktu. Dengan perkembangan teknologi tersebut menjadikan manusia terus berkreasi untuk menciptakan teknologi baru untuk mempermudah orang dalam mengakses informasi yang diinginkan dengan cepat. Salah satu teknologi yang bisa diangkat adalah tentang penginderaan jauh dalam bidang pengukuran kedalaman laut atau bathymetry. Dengan citra satelit akan didapatkan suatu informasi yang dapat digunakan sebagai acuan untuk dijadikan variabel yang akan digunakan dalam menentukan kedalaman laut. Tujuan dari penelitian ini adalah untuk merancang parameter-parameter ANN dan menganalisis kinerja sistem dalam prediksi kedalaman laut menggunakan ANN. Untuk pembentukan sistem, data diambil dari 2 tempat yang berbeda, untuk data citra sendiri diambil dari google map dan untuk data kedalaman diambil dari Hawaii University. Dalam penelitian ini data yang ada akan diolah dalam 2 tahapan yaitu preprocessing citra masukan dan prediksi kedalaman laut. Skenario yang dilakukan adalah mencari kinerja sistem yang terbaik dari parameter-parameter ANN yang dipakai. Namun terlebih dahulu data citra digabungkan dengan data kedalaman sehingga data dapat digunakan untuk melatih model ANN. Dari sekian banyak skenario didapatkan skenario terbaik pada hidden layer ada 3 dengan neuron [ 20 15 25 ], epoch 2000 dan learning rate 0,001.

Kata Kunci : Prediksi, Bathymetry, Preprocessing, ANN, Backpropagation.

PENDAHULUAN A. Latar Belakang

Teknologi informasi berkembang dengan pesat dari waktu ke waktu. Dengan perkembangan teknologi tersebut menjadikan manusia terus berkreasi untuk menciptakan teknologi baru untuk mempermudah orang dalam mengakses informasi yang diinginkan dengan cepat. Salah satu teknologi yang bisa diangkat adalah tentang penginderaan jauh dalam bidang pengukuran kedalaman laut atau bathymetry]. Tetapi dalam melakukan cara tersebut dibutuhkan proses, biaya dan waktu yang tidak sedikit untuk mendapatkan informasi kedalaman yang diinginkan.

Dengan masalah yang ada, dikembangkan dalam penelitian untuk dapat mengukur kedalaman laut dengan mengolah data citra multispectral dari satelit. Dari citra satelit tersebut akan didapatkan suatu informasi yang dapat digunakan sebagai acuan untuk dijadikan variabel yang akan digunakan dalam menentukan kedalaman laut. Dari variabel-variabel yang didapat dari pengolahan citra tersebut dapat digunakan untuk pembentukan model. Dari model yang telah didapatkan akan digunakan sebagai pemrediksi kedalaman laut untuk citra lain.

Penerapan analisis tehadap kasus ini dapat digunakan untuk mengatasi masalah yang muncul sekitaran kasus bathymetry. Dimana dalam pengaksesan informasi dapat dilakukan lebih cepat, tidak perlu melakukan pengukuran secara langsung yang akan memakan waktu dan biaya lebih besar.

Dalam penelitian ini data yang ada akan diolah dalam 2 tahapan yaitu preprocessing citra masukan dan prediksi kedalaman. Dalam tahapan preprocessing akan dilakukan pemrosesan citra sehingga dapat diolah pada tahapan selanjutnya. Untuk tahapan preprocessing citra masukan akan diambil data RGB dan kemudian akan disesuaikan dengan kedalaman berdasarkan letak piksel dan titik kedalaman. Setelah didapatkan komposisi warna RGB tersebut, kemudian diprediksikan menggunakan algoritma backpropagation Artificial Neural Network (ANN) dengan fungsi aktivasi sigmoid biner.

B. Tujuan

Tujuan dari penelitian ini adalah untuk merancang parameter-parameter ANN dan menganalisis kinerja sistem dalam prediksi kedalaman laut menggunakan ANN.

DASAR TEORI

(2)

Penginderaan jauh adalah ilmu dan seni untuk memperoleh informasi tentang suatu objek, daerah, atau fenomena. Melalui analisis data yang diperoleh dengan suatu alat tanpa kontak langsung dengan objek, daerah, atau fenomena yang dikaji .

B. Bathymetri[14]

Bathymetri adalah studi tentang kedalaman air danau atau dasar lautan. Dengan kata lain, Bathymetri

adalah setara dengan hypsometry bawah air. Bathymetri berasal dari bahasa Yunani βαθσς, μετρον, deep dan mengukur. Peta Bathymetri biasanya diproduksi untuk mendukung keselamatan navigasi permukaan atau sub-permukaan, dan biasanya menunjukkan relief dasar laut atau daerah dasar laut sebagai garis kontur dan pemilihan kedalaman, dan biasanya juga menyediakan informasi mengenai navigasi permukaan.

C. Fungsi Aktivasi [12]

Didalam Artificial Neural Network terdapat sebuah fungsi yang akan digunakan untuk mengolah data inputan menjadi suatu nilai outputan yang kita inginkan. Terdapat beberapa macam fungsi aktivasi di dalam

Artificial Neural Network salah satunya adalah fungsi aktivasi sigmoid biner. Fungsi aktivasi sigmoid biner

adalah fungsi aktivasi yang memiliki nilai range 0 sampai 1.

[1] D. Backpropagation[12]

Algoritma pelatihan Backpropagation Neural Network pertama kali dirumuskan oleh Werbos dan dipopulerkan oleh Rumelhart & Mc.Clelland. Backpropagation neural network merupakan tipe Artificial Neural

Network yang membentuk model dengan bobot yang terbaik dari input dan output pada data yang digunakan

untuk data latih.

E. Normalisasi Data[13]

Sebelum data digunakan dalam proses yang ada dalam ANN yang memiliki 3 tahapan yaitu proses latih, proses validasi, dan proses uji. Data yang akan digunakan harus berupa data dengan range antara 0,1 sampai 0,9, kenapa demikian hal ini disebabkan karena fungsi aktivasi yang digunakan adalah fungsi aktivasi

sigmoid biner dimana hasil keluarannya antara range 0,1 sampai 0,9.

𝑟𝑏 𝑤 𝑟𝑏 𝑤 𝑟𝑏 [2]

F. Mean Square Error (MSE)[15]

MSE adalah metode pengecekan galat yang membandingkan hasil sebenarnya dengan hasil yang didapat pada proses learning yang dilakukan. Nilai MSE yang baik adalah nilai MSE yang kecil, semakin kecil nilai MSE menandakan prediksi kedalaman laut semakin baik.

̂ [3]

G. Mean Absolute Precentage Error (MAPE)[15][16]

Sama seperti MSE, MAPE merupakan salah satu metode pengecekan galat yang membandingkan hasil sebenarnya dengan hasil yang didapat pada proses learning yang dilakukan. Suatu model mempunyai kinerja sangat bagus jika nilai MAPE berada di bawah 10%, dan mempunyai kinerja bagus jika nilai MAPE berada di antara 10% dan 20%.

𝑃 ∑ |̂̂ |

[4]

PERANCANGAN SISTEM DAN SIMULASI A. Perancangan Sistem

1. Diagram Alir Sistem

(3)

Citra Latih preprocessing Pelatihan ANN Model Identifier preprocessing Citra Uji

Pengujian ANN Kedalaman hasil prediksi

Gambar 1 Diagram Alur Sistem

ANALISIS HASIL SIMULASI A. Strategi pengujian

Dalam pengujian ini menggunakan data citra dan kedalaman laut yang sebenarnya yang akan diproses dan mendapatkan data yang bisa diolah di proses training dan pengujian ini. Dari tahapan preprocessing didapat array dengan kolom berisi R,G,B dan kedalaman dengan jumlah data sebanyak 897342 yang akan diseleksi lagi menjadi 882 data dengan pertimbangan kedekatan antar titik dalam citra antara lokasi kedalaman dan lokasi piksel warna. Dari 882 data yang didapatkan akan dibagi lagi untuk proses training dan testing dengan komposisi 70 % untuk training dan 30 % untuk proses testing yang dilakukan. Untuk dapat mengetahui kinerja dari sistem dalam proses prediksi ini akan digunakan MAPE dan MSE untuk menghitung rata – rata error yang dihasilkan oleh sistem ini. Dan pada Artificial Neural Network itu sendiei terdapat beberapa parameter yang bisa mempengaruhi kinerja dari sistem. Parameter-parameter tersebut adalah epoch, learning rate dan jumlah neuron pada hidden layer dan jumlah hidden layer itu sendiri.

B. Preprocessing

Runtutan proses yang dilakukan dalam preprocessing ini adalah Georeferencing, plot kedalamaan, menampilkan data citra terpisah, dan terakhir join tabel. Data hasil preprocessing akan digunakan dalam proses

training dan testing. Variabel yang akan digunakan untuk menentukan kedalaman pada suatu tempat tertentu

adalah warna R, G, dan B.

C. Analisis Pengaruh ANN Backpropagation 1. Analisis Pengaruh Epoch

Dari hasil proses training dan testing dapat dikatakan bahwa untuk epoch 100 kurang bagus karena nilai rata – rata MAPE berada diatas 20% hal ini dikarenakan saat epoch 100 masih terlalu sedikit untuk membuat model mengatasi masalah kedalaman laut, dan untuk epoch 500, 1000, dan 2000 sudah bisa dikatakan bagus karena nilai rata – rata MAPE berada pada selang 10% sampai 20 %.

Gambar 2 Grafik pengaruh epoch

Dan dilihat pada hasil proses data training dan testing dapat diambil kesimpulan bahwa semakin besar jumlah epoch maka semakin kecil nilai MAPE dan MSE yang berarti semakin bagus kinerja dari sistem yang ada, akan tetapi belum dilakukan percobaan lebih lanjut sampai nilai epoch berapakah tren ini akan berlanjut.

0 5 10 15 20 25 M APE Epoch Train ANN 0 10 20 30 1 0 0 5 0 0 1 0 0 0 2 0 0 0 M AP E Epoch

Test ANN

(4)

2. Analisis Pengaruh Learning Rate

Dari data hasil training dan testing dapat dikatakan bahwa untuk learning rate 0,0001 kurang bagus karena nilai rata – rata MAPE berada diatas 20% hal ini dikarenakan saat learning rate 0,0001 memiliki langkah yang kecil dan untuk membentuk model menjadi optimal maka learning rate ini membutuhkan epoch yang besar, dan dengan epoch yang terbatas pada nilai 2000 membuat learning rate 0,0001 ini belum mencapai model terbaiknya. Dan untuk learning rate 0,1;0,01; dan 0,001 sudah bisa dikatakan bagus karena nilai rata – rata MAPE berada pada selang 10% sampai 20 %.

Gambar 3 Grafik pengaruh learning rate

Dimana rata – rata dari semua learning rate yang ada menunjukkan bahwa semakin kecil nilai dari

learning rate maka akan semakin besar nilai dari MAPE dan MSE.

3. Analisis Pengaruh Jumlah Hidden Layer

Dari kedua data training dan testing untuk hidden layer 1, 2, dan 3 sudah bisa dikatakan bagus karena nilai rata – rata MAPE berada pada selang 10% sampai 20 %.

Dari data tersebut dapat dilihat bahwa nilai rata – rata MAPE dan MSE terkecil terdapat pada hidden

layer berjumlah 2. Tetapi terjadi sesuatu yang menarik dari hasil testing yang didapatkan, dimana pada jumlah hidden layer 2 dan 3 lebih baik memodelkan data testing dibandingkan dengan data training.berbeda dengan hidden layer 1 dimana hasil implementasi data testing memiliki nilai MAPE dan MSE yang lebih besar

dibanding hasil training-nya, walaupun nilai MAPE dan MSE hidden layer 1 lebih baik daripada 3 pada hasil

training yang dilakukan. Dari hasil percobaan yang dilakukan tidak dapat dipastikan jumlah hidden layer mana

yang paling optimal, hanya bisa diketahui dengan trial dan error.

4. Hasil Kinerja Sistem

Dari penelitian yang dilakukan skenario terbaik dalam perancangan sistem prediksi kedalaman laut ini ada pada struktur dengan hidden layer 3 dengan banyaknya neuron [ 20 15 25 ], dan nilai learning rate 0,001 dan jumlah epoch adalah 2000 yang dapat menghasilkan nilai MAPE berada dibawah 10% pada nilai 7,87%. Dibandingkan dengan hasil dari masing – masing parameter yang sudah dibahas di atas, skenario optimal pada pelatihan sistem ini memiliki perbedaan dengan hasil rata – rata parameter ANN. Untuk hidden layer rata – rata terkecil dari semua skenario adalah 2 sedangkan hasil terbaik tedapat pada hidden layer dengan jumlah 3. Begitu pula dengan learning rate, dimana rata – rata terbaik dari semua skenario berada pada nilai 0,1 sedangkan pada skenario optimal nilai learning rate adalah 0,001. Berbeda dengan nilai epoch, antara rata – rata dan skenario terbaik sama yaitu 2000 iterasi. Semua ini menunjukkan bahwa skenario terbaik tidak mudah untuk ditentukan, dan apabila ingin mendapatkan hasil terbaik adalah dengan cara coba – coba dan tidak ada struktur yang pasti.

KESIMPULAN DAN SARAN A. Kesimpulan

Berdasarkan pembahasan hasil dan analisis maka dapat disimpulkan bahwa : 0 10 20 30 0 ,1 0 ,0 1 0 ,0 0 1 0 ,0 0 0 1 M APE Learning Rate

Train ANN

0 10 20 30 0 ,1 0 ,0 1 0 ,0 0 1 0 ,0 0 0 1 M APE Learning Rate

Test ANN

0 5 10 15 20 25 1 2 3 M APE Hidden Layer

Train ANN

0 20 40 60 1 2 3 M APE Hidden Layer

Test ANN

(5)

1. Artificial Neural NetworkBackpropagation memiliki kemampuan prediksi yang sangat bagus pada kasus

prediksi kedalaman laut, hal ini terbukti dengan kinerja sitem yang diangun pada ANNdapat menghasilkanMSE 0,00255dan MAPE 7,87 % [16]. jumlah hidden layer ada 3 ( layer 1 = 20 neuron, layer 2 = 15 neuron, layer 3= 25 neuron),epoch2000 dan learning rate 0,001.

2. Semakin besar nilai epoch akan semakin bagus kinerja dari sistem prediksi kedalaman laut.

3. Banyaknya jumlah hidden layer optimal tidak dapat diperkirakan dengan melihat rata – rata dari percobaan yang telah dilakukan.

4. Semakin kecil nilai learning ratemaka akan semakin lama sistem menemukan titik minimum erroryang diinginkan. Sehingga dengan epochterbesaryang terbatas 2000 dihasilkan pola dimana semakin kecil

learning rate maka sistem kurang baik dalam memprediksi kedalaman laut.

B. Saran

1. Menggunakan model yang lebih bagus dari ANN, seperti metode hybrid seperti neuro fuzzy, Evolving ANN, dll atau menggunakan algoritma dalam ANN yang lebih bagus dari backpropagation.

2. Untuk preprocessing dapat dikembangkan lebih lanjut dengan metode yang menghasilkan hasil yang lebih baik lagi.

3. Penggunaan data latih dan uji yang lebih banyak sehingga sistem dapat memodelkan masalah ini lebih baik.

DAFTAR PUSTAKA

[1] Adiwijaya, U.N. Wisesty, F. Nhita, Some Line Search Tech-niques on the Modified Backpropa-gation for Forecasting of Weather Data in Indonesia, Far East Journal of Mathematical Sciences 86:2 (2014), pp. 391 -396

[2] Adiwijaya, T.A.B. Wirayuda, U.N. Wisesty, Z.K.A. Baizal, U. Haryoko, An improvement of Backpropagation Performance by Using Conjugate Gradient on Forecasting of Air Temperature and Humidity in Indonesia, the Far East Journal of Mathematical Sciences , Special Volume 2013 no.1, pp. 57-67

[3] Alpaydin, Ethern.2010. Mechine Learning. Cambridge :The MIT Press

[4] Corruci, Linda, Masini, Andrea, A study on Bathymetry Estimation From High Resolution Multi-Spectral

Satellite Images, Proceedings of IEEE GOLD 2010 : IEEE South Italy Geoscience & Remote Sensing

Chapter.

[5] Hadihadaja, Iwan K. Dan Sutikno, Sugeng . 2005.PemodelanCurah Hujan-Limpasan Menggunakan

Artificial Neural Network (ANN) dengan metode Backpropagation. Bandung : Media Teknik Sipil ITB

[6] ]Jang, J.-S.R, Sun,C.-T, and Mizutani , E. (1997), Neuro-Fuzzy and Soft Computing, Prentice Hall, Englewood Cliffs

[7] Olsen, R. C. (2007), Remote Sensing from Air and Space, SPIE,

ISBN

978-0-8194-6235-

0 [8] Prasetyo, Eko.2011.Pengolahan Citra Digital dan Aplikasi menggunakan Matlab. Yogyakarta : Andi [9] Prasetyo, Eko.2012. Data mining – Konsep dan Aplikasi Menggunakan MATLAB. Yogyakarta : Andi [10] Kusumadewi, Sri. 2002.Buku ajar Kecerdasan Buatan, Teknik Informatika UII, Yogyakarta,

Matlab,Indonesia

[11] Soenarno, Sri Hartati .2009. Penginderaan jauh dan pengenalan sistem informasi geografis untuk bidang

ilmu kebumian.Bandung:ITB

[12] Sutoyo,T ,dkk.2009.Teori Pengolahan Citra Digital.Yogyakarta:Andi

[13] Wijaya,Marvin Ch & Agus Prijono.2007.Pengolahan Citra Digital menggunakan MATLAB.Bandung:Informatika

[14] Suyanto.2008. Soft Computing. Bandung:Informatika

[15] Vamsidhar. Enireddy,dkk.2010. Prediction of Rainfall Using Backpropagation Neural Network Model, Visakhapatnam : Gitam University.

[16] Thurman, H. V. (1997), Introductory Oceanography, New Jersey, USA: Prentice Hall College,

ISBN

0-13-262072-3

[17] Markidakis,dkk.1999. Forcasting: Methods and Applications.Jakarta:Binarupa Aksara

[18] Zainun, N Yasmin & Eftekhari,M.2010.Forecasting low-cost housing demand in urban area in Malaysia

(6)

ANALISA DAN PENERAPAN HMVC PADA APLIKASI E – LEARNINGHaryo Adi Nugroho, Dana S. Kusumo, ST., MT., PhD, Ade Romadhony, ST., MT.

ryodbluedragon@gmail.com, dskusumo.itt@gmail.com, ade.romadhony@gmail.com

Abstrak

Aplikasi e – learning PT. Javan IT Services menerapkan pola Model – View – Controller (MVC) pada rancangannya. Namun pola ini memiliki kelemahan, yaitu keterkaitan yang erat antar komponen (model, view, dan controller) pada pola tersebut.Hal ini menyebabkan pengembangan aplikasi yang menerapkan pola MVC, termasuk aplikasi e – learning PT. Javan IT Services, menjadi lebih sulit. Hierarchical – Model – View – Controller (HMVC) merupakan pola variasi dari MVC. HMVC dikembangkan untuk mengatasi kekurangan yang dimiliki oleh MVC. Cohesion dan coupling merupakan atribut aplikasi yang dapat menunjukkan kualitas aplikasi tersebut. Perawatan, pengujian, dan pengembangan aplikasi akan lebih mudah dilakukan bila aplikasi tersebut memiliki cohesion dan coupling yang baik.

Pada penelitian ini, dua rancangan aplikasi e – learning PT. Javan IT Services dibuat. Salah satu rancangan menerapkan pola HMVC sedangkan rancangan lainnya menerapkan pola MVC. Cohesion dan coupling dari kedua rancangan kemudian dianalisa. Hasil analisa menunjukkan bahwa rancangan yang menerapkan pola HMVC memiliki cohesion dan coupling yang lebih baik dibandingkan dengan rancangan yang menerapkan pola MVC. Diharapkan melalui penelitian ini pengembang aplikasi web khususnya pengembang e – learning PT. Javan IT Services dapat melihat HMVC sebagai pola alternatif dalam mengembangkan aplikasinya.

Kata kunci : aplikasi web, cohesion, coupling, HMVC, MVC. 1. Pendahuluan

Bila dibandingkan dengan saat World Wide Web (WWW) berdiri, aplikasi web saat ini sudah berkembang jauh. Fungsi aplikasi web tidak lagi hanya sebagai media informasi. Berbagai macam layanan bisa disajikan dalam aplikasi web, contohnya layanan transaksi, media pembelajaran, dan permainan.Salah satu contoh aplikasi web adalah aplikasi e – learning yang dibuat oleh PT. Javan IT Services. Aplikasi ini memfasilitasi berbagai kegiatan yang terkait dengan pembelajaran, misalnya penyampaian materi, pengerjaan tugas, dan evaluasi tugas. Tujuan pembuatan aplikasi ini yaitu untuk membuat proses pembelajaran menjadi lebih menarik, mudah, dan penyampaian materi yang lebih baik.

E – learning PT. Javan IT Services menerapkan pola Model – View – Controller (MVC) pada rancangannya.

MVC membagi sebuah sistem menjadi tiga komponen utama : Model, Controller, dan View. Meskipun MVC merupakan pola yang umum digunakan [1], namun MVC memiliki kekurangan, yaitu keterkaitan yang erat antar ketiga komponen (Model, View, dan Controller)[2]. Hal ini menyebabkan pengembangan aplikasi yang menerapkan pola MVC, termasuk aplikasi e – learning PT. Javan IT Services, menjadi lebih sulit[2]. Salah satu alternatif pola arsitektur yang ada yaitu Hierarchical – Model – View – Controller (HMVC). HMVC merupakan variasi dari MVC [1]. HMVC membagi aplikasi web menjadi komponen – komponen yang disebut MVC triad. MVC triad adalah komponen yang menerapkan pola MVC. Setiap MVC triad saling terkait melalui Controller dari masing – masing MVC triad tersebut.

Kemudahan pengembangan sebuah aplikasi dapat dilihat dari coupling dan cohesion aplikasi tersebut.

Coupling merupakan sebuah ukuran untuk melihat tingkat keterikatan antar komponen pada suatu

sistem. Cohesion adalah ukuran keselarasan antar elemen dalam sebuah komponen di dalam sebuah sistem [3].

Berdasarkan paparan di atas maka permasalahan yang diangkat pada penelitian ini adalah “Apakah rancangan aplikasi e – learning PT. Javan IT Services yang menerapkan pola HMVC memiliki

cohesion dan coupling yang lebih baik bila dibandingkan dengan rancangan serupa yang menerapkan pola

MVC?”

Adapun batasan masalah pada penelitian ini yaitu :

a. Requirement aplikasi pada penelitian ini didefinisikan berdasarkan sumber acuan setelah dilakukan beberapa perubahan sesuai kebutuhan.

b. Data terkait couplingdan cohesiondiambil setelah tahap perancangan aplikasi, bukan setelah tahap implementasi.

(7)

c. Analisa dilakukan pada tingkat package dan class dengan mengabaikan atribut dan operasi yang ada di dalamnya .

d. Metrik yang digunakan adalah relational cohesion, afferent coupling, dan efferent coupling. 2. Cohesion dan Coupling

Coupling dan cohesion merupakan atribut internal suatu sistem yang digunakan untuk mengukur

kualitas sistem tersebut. Coupling merupakan sebuah ukuran untuk melihat tingkat keterikatan sebuah komponen sistem dengan komponen lainnya.Pada sebuah sistem, coupling yang baik adalah coupling yang rendah. Cohesion adalah ukuran keselarasan antar elemen dalam sebuah komponen (package, class, dll.). Komponen pada sebuah sistem diharapkan memiliki cohesion yang tinggi.

Metrik yang digunakan untuk mengukur cohesion dan coupling pada penelitian ini adalah

relationalcohesion,afferentcoupling, dan efferentcoupling.Relationalcohesion adalah cohesion yang dihitung

dengan melihat relasi antar class dalam sebuah package. RelationalCohesion adalah angka rata – rata relasi internal yang ada di dalam sebuah package. Relationalcohesion dihitung dari jumlah relasi yang ada di dalam package tersebut ditambah satu lalu dibagi jumlah class yang ada di dalam package tersebut. [4]

Afferentcoupling dan efferentcoupling adalah coupling yang dihitung dengan melihat relasi antara class

dalam sebuah package dengan class lain di luar package tersebut. Afferentcoupling merupakan

couplingexport. Afferentcoupling adalah jumlah class di luar sebuah package yang membutuhkan class di

dalam package tersebut [4][5]. Efferentcoupling merupakan couplingimport. Efferentcoupling adalah jumlah class di luar sebuah package yang dibutuhkan oleh class di dalam package tersebut [4][5].

3. HMVC dan MVC

Hierarchical Model – View – Controller(HMVC) merupakan pola arsitektur variasi dari Model – View – Controller (MVC). Pada MVC, sebuah sistem dibagi menjadi tiga komponen utama : Model, Controller, dan

View [6][7]. Model merupakan komponen yang menangani data pada sistem. Model memiliki fungsi untuk memanipulasi data dan dapat mengakses basisdata. View adalah komponen yang menangani tampilan visual sistem. Controller berisi alur proses sistem dan menangani input dari pengguna sistem. Controller dapat memanggil Model dan View dalam menjalankan fungsinya.

Pada HMVC, sistem dibagi menjadi komponen – komponen yang disebut MVC triad. Setiap MVC triad adalah komponen yang menggunakan pola MVC. Setiap MVC triad saling terkait melalui Controller dari masing – masing MVC triad tersebut[8].

4. Rancangan Aplikasi

Pada penelitian ini aplikasi yang dirancang mengacu pada aplikasi web e – learning yang dibuat oleh PT. Javan IT Services. Rancangan aplikasi dibuat dua buah. Salah satu rancangan menerapkan pola HMVC sedangkan rancangan lainnya menerapkan pola MVC.

Pada rancangan yang menerapkan pola HMVC, aplikasi dibagi menjadi komponen – komponen yang disebut MVC triad. MVC triad pada aplikasi dibagi menjadi dua kelompok besar, yaitu MVC triad halaman dan MVC triad komponen.

MVC triad halaman adalah MVC triad yang bertanggung jawab untuk menangani halaman web secara keseluruhan. MVC triad ini dibuat berdasarkan halaman aplikasi. Controller pada MVC triad ini memiliki tanggung jawab untuk menerima request dari pengguna dan memprosesnya sedangkan view berisi rangka tampilan halaman yang diperlukan oleh request tersebut.

MVC triad komponen merupakan MVC triad yang bertanggung jawab untuk menangani komponen suatu halaman. MVC triad ini memiliki tanggung jawab dalam hal fungsionalitas dan basisdata aplikasi. Model pada MVC triad ini dibuat berdasarkan data aplikasi. Controllerbertugas menerima request dari MVC triad halaman dan memprosesnya. View pada komponen ini dapat berupa rangka tampilan atau

form untuk menambah data baru.

Berbeda dengan rancangan pertama yang menerapkan pola HMVC, pada rancangan kedua aplikasi dirancang dengan menerapkan pola MVC. Pada rancangan ini, request dari pengguna akan ditangani oleh

controller pada package Controller. Controller yang menangani request tersebut sesuai dengan halaman

web yang di – request. Misalnya, jika request yang diterima berkaitan dengan halaman pelatihan, maka

class Pelatihan yang akan menangani request tersebut. Controller tersebut kemudian akan memanggil view

dan model yang dibutuhkan dari masing – masing package kemudian memprosesnya untuk memenuhi

request dari pengguna.

5. Hasil analisa

Berdasarkan data yang diambil dari kedua rancangan aplikasi, terdapat beberapa kesimpulan yang bisa diambil. Yang pertama, relational cohesion pada rancangan yang menerapkan HMVC lebih tinggi bila dibandingkan dengan rancangan yang menerapkan MVC. Pada rancangan yang menerapkan HMVC,

(8)

relational cohesion pada setiap package memiliki nilai satu atau lebih, sedangkan pada rancangan yang

menerapkan pola MVC setiap package memiliki nilai 0,1 atau lebih rendah. Kesimpulan kedua, afferent

coupling (Ca), dan efferent coupling (Ce) pada rancangan yang menerapkan pola HMVC memiliki nilai

tertinggi yang rendah, yaitu hanya empat, sedangkan rancangan yang menerapkan pola MVC memiliki nilai tiga puluh tujuh.

6. Penutup

Pada penelitian ini telah dipaparkan perbandingan cohesion dan coupling antara rancangan aplikasi e

– learning PT. Javan IT Servicesyang menerapkan pola HMVC dengan rancangan serupa yang menerapkan

pola MVC. Berdasarkan hasil analisa, dapat disimpulkan bahwa rancangan yang menggunakan HMVC memiliki cohesion dan coupling yang lebih baik bila dibandingkan dengan rancangan yang menggunakan pola MVC.

Cohesion dan coupling yang baik pada rancangan tersebut berperan pada kualitas aplikasi yang lebih

baik. Perawatan, pengujian, dan pengembangan aplikasi akan lebih mudah dilakukan bila rancangan aplikasi tersebut menggunakan pola HMVC dibandingkan dengan menggunakan pola MVC.

Selain coupling dan cohesion, pengujian terhadap atribut aplikasi lain perlu dilakukan. Pengujian pun perlu dilakukan pada tahap yang berbeda. Contohnya, pengujian dapat dilakukan pada aplikasi hasil implementasi.

Daftar Pustaka

[1] S. d. Freyssinet, “Scaling Web Applications with HMVC,” 22 februari 2010. [Online]. Available: http://techportal.inviqa.com/2010/02/22/scaling-web-applications-with-hmvc/. [Diakses 19 september 2013].

[2] S. A. M. Rizvi dan S. I. Hassan, “Achieving Loose Coupling Between Different Components of Model-View-Controller For Web Based Application,” New Delhi, 2009.

[3] J. Eder, G. Kappel dan M. Schrefl, Coupling and Cohesion in Object - Oriented Systems, 1994. [4] J. Wüst, “SDMetric User Manual,” 2002. [Online]. Available:

http://www.sdmetrics.com/manual/index.html. [Diakses 22 3 2014].

[5] R. C. Martin, Agile Software Development: Principles, Patterns, and Practices, Prentice Hall PTR, 2003.

[6] C. Heller, D. Streitferdt dan I. Philippow, A new Pattern Systematics, 2005.

[7] A. Karagkasidis, “Developing GUI Applications: Architectural Patterns Revisited,” EuroPLoP, 2008.

[8] J. Cai, R. Kapila dan G. Pal, “HMVC: The layered pattern for developing strong client tiers,” juli 2000. [Online]. Available: http://www.javaworld.com/jw-07-2000/jw-0721-hmvc.html. [Diakses 19 september 2013].

[9] G. Kappel, B. Proll, R. Siegfried dan W. Retschitzegger, Web engineering: The Discipline of Systematic Development of Web Applications., John Wiley & Sons, 2006.

[10] M. Hitz dan B. Montazeri, Measuring Coupling and Cohesion in Object - Oriented Systems, 1995. [11] Wescrow, “Hierarchical Model-View-Controller (HMVC): Planning for the Future,” 9 Januari 2012.

[Online]. Available: http://somethingstatic.com/hierarchical-model-view-controller-planning-future/. [Diakses 18 Maret 2014].

Gambar

Gambar 2 Grafik pengaruh epoch
Gambar 3 Grafik pengaruh learning rate

Referensi

Dokumen terkait

Dari hasil analisis menunjukkan bahwa hubungan dukungan sosial dengan kepercayaan diri remaja tunanetra di Panti Rehabilitasi Bina Sosial Cacat Netra Budi Mulya Malang

Keluaran : Terlaksananya program dan kegiatan Bagian Umum Setda Kota Medan dengan didukung SDM Belanja Pegawai 18.090.000.000,00 4.01.. 01 PAD, Dana Transfer dari Pemerintah

Banyaknya kegiatan yang dilakukan oleh Humas Polrestabes Bandung untuk memenuhi kebutuhan informasi kepada masyarakat dalam membentuk citra, kegiatan- kegiatan

Abstrak. Penelitian ini bertujuan untuk 1) menemukan produk nasi sebagai salah satu pengembangan produk pangan lokal, 2) dihasilkanya resep nasi pindul, 3)

Hasil analisis regresi berganda menunjukkan faktor manajemen peternak yang memengaruhi CR adalah jenis hijauan yang diberikan ke ternak dengan besar faktor 0,199

Tujuh mutan sensitif asam-Al diperoleh dari hasil seleksi koloni transkonjugan galur BJ11, BJ38, dan KDR15 yang telah mengalami insersi transposon pada kromosomnya.. O’Hara

kemampuan kognitif mitra tutur dan sumber-sumber konteks yang mesti tecermin dalam caranya berkomunikasi, dan secara khusus terkait dengan pilihannya, apakah harus

Meskipun interaksinya berpengaruh tidak nyata, namun berdasarkan hasil penelitian (Tabel 1) memperlihatkan adanya kecenderungan bahwa pada setiap taraf perlakuan