BAB 2 LANDASAN TEORI
2.1
Produksi Kelapa Sawit Produksi sawit merupakan buah kelapa sawit hasil panen dari suatu
perkebunan kelapa sawit. Produksi sawit ini sangat penting bagi perusahaan perkebunan kelapa sawit, karena merupakan sumber penghasilan utama dari perusahaan itu sendiri. Oleh sebab itu, jika tingkat produksi tinggi maka keuntungan dari hasil penjualan buah sawit juga meningkat. Tetapi di sisi lain biaya produksi juga menigkat. Dalam hal ini biaya produksi mencakup biaya panen, biaya angkutan, biaya langsiran (jika ada) dan biaya lainnya. Untuk bisa mengoptimalkan alokasi biaya, maka pada umumnya perusahaan perkebunan kelapa sawit melakukan peramalan terhadap produksi sawit untuk dijadikan target produksi. Dari target produksi yang telah ditetapkan tersebut, maka dilakukan penyesuaian besarnya anggaran yang diperlukan untuk biaya produksi tiap tahunnya. Dalam industri kelapa sawit, keberhasilan suatu produksi tergantung pada berbagai faktor. Beberapa faktor yang mempengaruhinya meliputi: bibit, jenis tanah, iklim (suhu dan curah hujan), umur tanaman, luas areal, pemupukan, pemeliharaan, dan lain sebagainya. 2.2
Curah Hujan Berdasarkan informasi dari pihak manajemen kebun, tanaman kelapa sawit
menghendaki curah hujan di atas 2000 mm per tahun. Tetapi curah hujan yang optimal berada pada kisaran 2000-4000 mm per tahun dengan jumlah hujan tidak
6
7 lebih dari 180 hari per tahun (Setyamidjaja, 2006:43-44). Pembagian curah hujan yang merata dalam satu tahunnya memiliki pengaruh yang kurang baik, karena pertumbuhan vegetatif lebih dominan daripada pertumbuhan generatif. Pertumbuhan generatif yang kurang dominan ini mengakibatkan proses penyerbukan pada bunga yang merupakan cikal bakal buah yang akan terbentuk relatif lebih sedikit. Di sisi lain bila curah hujan yang terlalu tinggi (lebih dari 5000 mm) akan menjadi kondisi yang kurang menguntungkan bagi penyelenggara kebun karena mengganggu kegiatan di kebun seperti pemeliharaan tanaman dan yang terutama kelancaran transportasi. Sedangkan keadaan curah hujan yang kurang dari 2000 mm per tahun tidak berarti kurang baik bagi pertumbuhan kelapa sawit. Hal yang terpenting adalah tidak terjadi defisit air. 2.3
Umur Tanaman Tinggi rendahnya tingkat produkivitas kelapa sawit juga dipengaruhi oleh
umur tanaman kelapa sawit yang ada di suatu perkebunan. Menurut Risza (2008:149) semakin luas komposisi umur tanaman remaja dan renta, semakin rendah pula tingkat produktivitasnya. Sedangkan semakin banyak tanaman dewasa dan teruna semakin tinggi pula tingkat produktivitasnya. Menurutnya pula tanaman kelapa sawit biasanya dibagi atas 6 kelompok, yaitu: 1.
0 - 3 tahun – muda (belum menghasilkan)
2.
3 - 4 tahun – remaja (sangat rendah)
3.
5 - 12 tahun – teruna (mengarah naik)
4.
12 - 20 tahun – dewasa (posisi puncak)
5.
21 - 25 tahun – tua (mengarah turun)
6.
26 tahun ke atas - renta (sangat rendah)
8
2.4
Dosis Pupuk Pemupukan yang optimal dapat memaksimalkan produksi kelapa sawit.
Optimal dalam hal ini berarti pemupukan dengan dosis yang tepat. Dosis pupuk yang yang akan diberikan harus disesuaikan dengan kebutuhan tanaman. Pupuk juga merupakan nutrisi bagi kelapa sawit, karena itu kebutuhan nutrisi tersebut harus terpenuhi. Jika tidak terpenuhi maka produksi yang dihasilkan tidak akan maksimal. Dosis pupuk yang akan diberikan tidak boleh berlebihan. Jika dosis pupuknya berlebihan maka tidak hanya biaya pemupukan semakin tinggi, tetapi juga merugikan tanaman karena dapat menyebabkan gejala penyimpangan pertumbuhan yang berbeda-beda tiap pohonnya. Begitu pula dengan dosis pupuk yang kekurangan akan menghambat pertumbuhan tanaman itu sendiri. 2.5
Peramalan Peramalan merupakan penggunaan data masa lalu untuk memprediksi suatu
nilai pada masa mendatang. Menurut Prasetya (2009:43) esensi peramalan adalah peristiwa-peristiwa di waktu yang akan datang atas dasar pola-pola di waktu yang lalu, dan penggunaan kebijakan terhadap proyeksi-proyeksi dengan pola-pola di waktu yang lalu. Sedangkan peramalan itu sendiri adalah seni dan ilmu untuk memperkirakan kejadian di masa depan. Hal ini dapat dilakukan dengan melibatkan pengambilan data masa lalu dan menempatkannya ke masa yang akan datang dengan suatu bentuk model matematis. Menurut Gaspersz (1998:84) untuk melakukan peramalan dibutuhkan langkah-langkah yang harus dilakukan untuk menjamin efisiensi dari sistem peramalan. Langkah-langkah tersebut yaitu:
9 1.
Menentukan tujuan peramalan
2.
Memilih item yang akan diramalkan
3.
Menentukan rentang waktu peramalan
4.
Memilih model peramalan
5.
Mengumpulkan dan menganalisis data
6.
Validasi model peramalan
7.
Membuat peramalan
8.
Implementasi hasil peramalan
9.
Memantau keandalan hasil peramalan Berdasarkan
horison waktu, peramalan dapat dikelompokkan dalam tiga
bagian (Herjanto, 2007:78-79), yaitu: •
Peramalan jangka pendek, jangka waktu kurang dari 3 bulan. Misalnya, peramalan yang berhubungan dengan perencanaan pembelian material, penjadwalan kerja dan penugasan karyawan.
•
Peramalan jangka menengah, mencakup waktu antara 3 bulan sampai 18 bulan. Misalnya, peramalan perencanaan penjualan, perencanaan produksi dan perencanaan tenaga kerja tidak tetap.
•
Peramalan jangka panjang, mencakup waktu yang lebih besar dari 18 bulan. Misalnya peramalan yang diperlukan dalam kaitannya dengan penanaman modal, perencanaan fasilitas dan perencanaan kegiatan litbang. Sedangkan berdasarkan jenisnya, teknik peramalan dapat dibedakan menjadi
dua macam (Herjanto, 2007:77-79), yaitu: a.
Peramalan kuantitatif, teknik peramalan yang dilakukan berdasarkan pendapat (judgment) atau pandangan dari yang melakukan peramalan. Oleh sebab itu
10 hasil peramalannya sangat tergantung dari orang yang melakukan peramalan tersebut. b.
Peramalan kuantitatif, teknik peramalan dengan menggunakan metode statistik berdasarkan data masa lampau. Peramalan dengan menggunakan metode kuantitatif, pada dasarnya dapat
dibedakan menjadi dua jenis, yaitu metode eksplanatori atau kausal dan metode deret waktu (time series). Metode eksplanatori mengasumsikan bahwa nilai suatu variabel merupakan fungsi dari satu atau beberapa variabel lain. Kegunaan dari metode eksplanatori ialah untuk menemukan bentuk hubungan antara suatu variabel dengan variabel lain, dan menggunakannya untuk meramalkan variabel dependen terhadap perubahan dari variabel independennya. Sedangkan metode deret waktu (time series) digunakan untuk menganalisis serangkaian data yang merupakan fungsi dari waktu. Metode ini mengasumsikan bahwa beberapa pola atau kombinasi pola selalu berulang sepanjang waktu. Untuk penjelasan tentang deret waktu akan dijelaskan lebih dalam pada sub bab berikutnya. 2.6
Deret Waktu Deret waktu merupakan rangkaian data yang diukur berdasarkan waktu
dengan selang interval yang sama. Menurut Spiegel et al. (2007:352) Deret waktu (time series) adalah serangkaian nilai pengamatan yang diambil selama kurun waktu tertentu, pada umumnya dalam interval-interval yang sama panjang. Langkah penting dalam
memilih
suatu
metode
deret
waktu
yang
tepat
adalah
dengan
mempertimbangkan jenis pola data , sehingga metode yang paling tepat dengan pola tersebut dapat diuji.
11 Menurut Makridakis et al. (1999:10), pola data dapat dibedakan menjadi empat jenis, yaitu: 1.
Pola Horisontal, terjadi bilamana nilai datanya berfluktuasi di sekitar nilai ratarata yang konstan. Pola seperti ini juga disebut statisioner terhadap nilai rataratanya.
2.
Pola Musiman, terjadi bilamana suatu deret waktu dipengaruhi oleh faktor musiman (misalnya kuartal tahun tertentu, bulanan, atau hari-hari pada minggu tertentu)
3.
Pola Siklis, terjadi bilamana suatu deret dipengaruhi oleh fluktuasi ekonomi jangka panjang seperti yang berhubungan dengan siklus bisnis.
4.
Pola Trend, terjadi bilamanaterdapat kenaikan atau penurunan sekuler jangka panjang dalam data.
Gambar 2.1 Pola Data
12
2.7
Exponential Smoothing Peramalan Pemulusan Eksponensial (Exponential Smoothing) merupakan
salah satu kategori metode time series yang menggunakan pembobotan data masa lalu secara eksponensial. Dalam kategori ini terdapat beberapa metode yang umum dipakai, antara lain metode Pemulusan Eksponensial Tunggal (Single Exponential Smoothing), metode Pemulusan Ganda Dua Parameter dari Holt (Holt’s Two Parameter Exponential Smoothing), dan metode Pemulusan Eksponensial Tripel dari Winter (Winters Three Parameter Triple Exponential Smoothing) (Makridakis, 1999:79-101).
2.7.1 Single Exponential Smoothing Metode ini juga dikenal sebagai simple exponential smoothing yang digunakan pada peramalan jangka pendek, biasanya hanya satu bulan ke depan. Model ini mengasumsikan data berfluktuasi di sekitar nilai rata-rata yang tetap, tanpa mengikuti pola atau tren (Makridakis,1999:79). Metode ini dapat dirumuskan pada persamaan (2.1) sebagai berikut :
(2.1) Dimana :
13 2.7.2 Double Exponential Smoothing (Holt) Metode pemulusan dua parameter dari Holt atau lebih dikenal dengan Holt Exponential Smoothing pada dasarnya tidak menggunakan rumus pemulusan berganda secara langsung. Sebagai gantinya, Holt memuluskan nilai trend dengan parameter yang berbeda dari parameter yang digunakan pada deret asli. Ramalan dari pemulusan dua parameter dari Holt didapat dengan menggunakan dua konstanta pemulusan (dengan nilai antara 0 dan 1) dan memiliki tiga persamaan, yaitu: (2.0) (2.3) (2.4) Dimana :
Untuk melakukan peramalan dengan metode ini makan dilakukan langkahlangkah sebagai berikut: 1.
Menentukan nilai alpha dan gamma. Alpha merupakan smoothing constant sedangkan gamma merupakan trend constant. Dalam exponential smoothing nilai alpha dan gamma dapat ditentukan dengan cara trial and error yang bisa meminimumkan nilai error. Besarnya nilai alpha dan gamma antara 0 sampai 1.
14 2.
Menentukan nilai pemulusan awal untuk
. Untuk menentukan nilai pemulusan
dapat dilakukan secara langsung yaitu dengan memilih nilai aktual awal menjadi nilai pemulusan awal. (2.5) Dengan
3.
Menentukan nilai trend awal untuk
. Untuk bisa menentukan nilai trend awal,
maka diperlukan penaksiran nilai trend dari satu periode ke periode lainnya. Berikut adalah kemungkinan penaksiran nilai trend: (2.6) (2.7) (2.8) Dengan
Bila datanya memiliki pola yang baik, dalam hal ini peningkatan atau penurunan tidak terlalu drastis, maka tidak akan menjadi masalah. Tetapi jika terdapat peningkatan atau penurunan yang drastis, maka sebaiknya periode tersebut tidak dimasukkan dalam menentukan trean atau kemiringan awal. 4.
Menentukan masing–masing nilai
dan
untuk periode berikutnya dengan
menggunakan Persamaan 2.2 dan Persamaan 2.3.
15 5.
Melakukan proses peramalan periode ke depan dengan menghitung terlebih dahulu nilai pemulusan terakhir
dan nilai trend akhir
. Dengan kata lain
dapat menggunakan rumus pada Persamaan 2.4. 6.
Langkah
terakhir
adalah
melihat nilai
keakuratan
peramalan
dengan
menggunakan metode Mean Absolute Percentage Error (MAPE) berdasarkan kombinasi nilai konstanta alpha dan gamma. Kombinasi dari nilai konstanta alpha dan gamma yang tepat dapat meminimumkan error dan menghasilkan nilai MAPE yang minimum. 2.7.3 Triple Exponential Smoothing (Holt-Winters) Metode ini digunakan ketika terdapat unsur trend dan perilaku musiman yang ditunjukkan pada data. Untuk menangani musiman, telah dikembangkan parameter yang sesuai dengan nama penemunya yaitu metode “Holt-Winters”. Metode Exponential Smoothing
yang telah dibahas sebelumnya dapat digunakan untuk
hampir segala jenis data stasioner atau non – stasioner sepanjang data tersebut tidak mengandung faktor musiman. Tetapi bilamana terdapat data musiman, metode Winters dapat dijadikan cara untuk meramalkan data yang mengandung faktor musiman tersebut (Makridakis, 1999:96). Berikut adalah persamaan-persamaan yang digunakan untuk melakukan peramalan dengan menggunakan metode Tripple Exponential Smoothing adalah: (2.9)
(2.10)
(2.11) (2.12)
16 Dimana :
Untuk melakukan peramalan dengan metode ini makan dilakukan langkahlangkah sebagai berikut: 1.
Menentukan nilai alpha, beta, dan gamma. Alpha merupakan smoothing constant, beta merupakan faktor penyesuaian musiman, dan gamma merupakan trend constant. Dalam metode ini, nilai alpha, beta, dan gamma dapat ditentukan dengan cara trial and error yang bisa meminimumkan nilai error. Besarnya nilai alpha, beta, dan gamma antara 0 sampai 1.
2.
Menentukan nilai pemulusan awal
pada musim pertama. Untuk menentukan
nilai pemulusan dapat dilakukan secara langsung yaitu dengan memilih nilai aktual awal menjadi nilai pemulusan awal. (2.13) Dimana
3.
Menentukan nilai pemulusan faktor musiman awal
sampai
. Untuk
melakukannya diperlukan minimal satu data musiman awal ( periode). (2.14) Dimana
4.
Menentukan nilai trend awal untuk
pada musim pertama. Untuk bisa
menentukan nilai trend awal tersebut, maka digunaka rumus berikut:
17
(2.15) Dimana
5.
Menentukan masing–masing nilai
,
dan
untuk periode berikutnya dengan
menggunakan Persamaan 2.9, Persamaan 2.11, dan Persamaan 2.11. 6.
Melakukan proses peramalan untuk periode ke depan
dengan
menggunakan rumus pada Persamaan 2.12. 7.
Langkah
terakhir
adalah
melihat nilai
keakuratan
peramalan
dengan
menggunakan metode Mean Absolute Percentage Error (MAPE) berdasarkan kombinasi nilai konstanta alpha dan gamma. Kombinasi dari nilai konstanta alpha dan gamma yang tepat dapat meminimumkan error dan menghasilkan nilai MAPE yang minimum.
2.8
Regresi Persamaan matematik yang memungkinkan kita melakukan peramalan nilai-
nilai atau variabel-variabel suatu peubah tak bebas dari nilai-nilai satu atau lebih peubah bebas disebut persamaan regresi (Walpole, 1995). Nilai peubah tak bebas biasa disebut dengan variabel dependen atau variabel respon (Y) dan nilai peubah bebas disebut dengan variabel independen atau variabel prediktor (X). Di dalam penerapannya, variabel dependen (Y) dipengaruhi oleh faktor lain selain variabel independen (X) yang tidak dimasukkan ke dalam persamaan regresi tersebut. Oleh karena itu, di dalam persamaan regresi dimasukkan nilai error agar persamaan regresi dapat menggambarkan bentuk dari data dengan tepat. Nilai error ini tidak dapat dihilangkan sehingga resiko itu akan selalu ada. Resiko ini hanya dapat diperkecil dengan memperkecil kesalahan.
18 2.8.1 Regresi Linear dan Regresi Non Linear Berdasarkan bentuk kelinearan data, model regresi dapat dikelompokkan menjadi dua macam, yaitu regresi linear dan regresi non linear. Regresi dikatakan linear apabila hubungan antara variabel independen dan variabel dependen adalah linear. Regresi dikatakan non linear apaabila hubungan antara variabel independen dan variabel dependen tidak linear. Untuk mengetahui apakah hubungan antara variabel independen dan variabel dependen linear atau non linear dapat dilihat dari scatterplot data atau disebut juga dengan diagram pencar. Plot data linear mempunyai diagram pencar dengan pola mendekati garis lurus. 2.8.2 Regresi Linear Ganda Regresi linear Ganda adalah analisis regresi yang menjelaskan hubungan antara
variabel
dependen
dengan
variabel-variabel
independen
yang
mempengaruhinya (lebih dari satu prediktor) (Walpole, 1995). Secara umum hubungan antara variabel dependen dan variabel-variabel independen yang mempengaruhinya dapat dituliskan dalam bentuk persamaan regresi sebagai berikut : (2.16)
Dimana :
Dalam bentuk matriks dapat diuraikan sebagai berikut : (2.17)
19
Dimana :
2.8.3 Pengujian Parameter Pengujian parameter dalam model regresi harus dilakukan untuk mengetahui apakah parameter tersebut menunjukkan hubungan yang nyata antara variabel dependen dengan variabel independen. Dalam pengujian parameter, ada dua tahap pengujian, yaitu uji simultan dan uji parsial. 2.8.3.1 Uji Simultan Uji simultan adalah pengujian secara bersama-sama semua parameter dalam model regresi. Tahap-tahap dalam melakukan uji simultan adalah : 1.
Penentuan hipotesis Hipotesis yang digunakan pada uji simultan adalah :
2.
Penentuan taraf signifikan ( ) Nilai signifikansi dari suatu hipotesis adalah nilai kebenaran dari hipotesis yang diterima atau ditolak. Kisaran nilai signifikansi mulai dari 0.01 sampai 0.1.
3. Statistik uji Statistik uji yang digunakan pada uji simultan adalah dengan membagi Mean Square Regression (MSR) dengan Mean Square Error (MSE).
20
(2.18) (2.19)
(2.20) 4. Daerah penolakan H0 ditolak jika
atau
.
5. Pengambilan kesimpulan Jika
ditolak pada tingkat signifikansi , artinya paling sedikit ada satu
yang tidak sama dengan nol dan variabel-variabel independen memberikan pengaruh yang signifikan pada variabel dependennya. 2.8.3.2 Uji Parsial Uji parsial adalah pengujian parameter dalam model regresi secara individu yang bertujuan untuk mengetahui apakah parameter tersebut sudah berpengaruh secara signifikan atau tidak. Tahap-tahap dalam melakukan uji parsial adalah : 1.
Penentuan hipotesis Hipotesis yang digunakan pada uji parsial adalah :
2.
Penentuan taraf signifikan ( ) Nilai signifikansi dari suatu hipotesis adalah nilai kebenaran dari hipotesis yang diterima atau ditolak. Kisaran nilai signifikansi mulai dari 0.01 sampai 0.1.
3.
Statistik uji Statistik uji yang digunakan pada uji serentak adalah dengan membagi Mean Square Regression (MSR) dengan Mean Square Error (MSE).
21
(2.21) dimana: Nilai
adalah nilai dugaan
dan
adalah simpangan baku bagi
. 4.
Daerah penolakan H0 ditolak jika
5.
atau
.
Pengambilan kesimpulan Jika
ditolak pada tingkat signifikansi
artinya
tidak sama dengan nol dan
variabel independen tersebut memberikan pengaruh yang signifikan terhadap variabel dependennya. 2.8.4 Pengujian Asumsi Residual Apabila dalam analisis regresi tidak didasarkan pada analisis yang benar, maka akan mengakibatkan hasil pendugaan regresi tidak sesuai. Asumsi residual merupakan salah satu dasar yang harus terpenuhi dalam membentuk model regresi. Asumsi residual dalam model regresi harus memenuhi kriteria berdistribusi normal, independen, dan identik. 2.8.4.1 Uji Normalitas Uji asumsi ini bertujuan untuk menguji apakah data variabel independen dan data variabel dependen pada persamaan regresi yang dihasilkan berdistribusi normal atau tidak. Persamaan regresi dikatakan baik jika mempunyai data yang berdistribusi mendekati normal. Beberapa pengujian yang dapat dilakukan untuk asumsi distribusi normal adalah Anderson-Darling, Shapiro-Wilk, Kolmogorov Smirnov, Jarque-Bera,
22 dan Skewnes-Kurtosis. Dalam penelitian ini peneliti menggunakan uji Shapiro-Wilk untuk melakukan uji normalitas. Tahap-tahap pengujian yang dilakukan dengan uji Shapiro-Wilk adalah: 1.
Penentuan hipotesis
2.
Penentuan taraf signifikan ( )
3.
Statistik uji (2.22)
4.
Daerah penolakan Tolak
5.
jika
.
Pengambilan keputusan. Jika
ditolak, maka dapat disimpulkan data residual berdistribusi normal.
2.8.4.2 Uji Autokorelasi Uji ini dilakukan untuk mengetahui apakah ada korelasi antar data residual. Untuk melakukan pengujian autokorelasi dapat menggunakan plot Autocorrelation Function (ACF) dan uji Durbin-Watson. Untuk pengujian dengan metode ACF dapat dilihat langsung dari hasil plotnya. Jika tidak ada lag yang keluar dari garis batas, maka dapat simpulan bahwa tidak ada korelasi antar residual. Dalam penelitian ini peneliti menggunakan uji Durbin-Watson untuk melakukan uji autokorelasi. Untuk pengujian Durbin-Watson dapat dilakukan dengan tahap-tahap berikut: 1.
Penentuan hipotesis
23
2.
Penentuan taraf signifikan ( )
3.
Statistik uji (2.23)
4.
Daerah penolakan
Ga mbar 2.2 Statistik Uji Durbin Watson 5. Pengambilan keputusan Jika
ditolak, maka dapat disimpulkan bahwa terjadi autokorelasi pada data residual.
2.8.4.3 Uji Heteroskedastisitas Uji heteroskedastisitas bertujuan untuk menganalisis apakah data residual bersifat tetap/konstan (homoskedastis) atau berubah-ubah (heteroskedastis). Data residual harus bersifat homoskedastisitas yaitu bersifat identik atau tidak membentuk pola tertentu. Beberapa uji yang dapat digunakan untuk menguji asumsi identik adalah uji glejser, park test, plot of residual and fit, uji white dan Breusch-Pagan. Tahap-tahap pengujian yang dilakukan dengan uji White adalah: 1.
Penentuan hipotesis
2.
Penentuan taraf signifikan (α)
24 3.
Statistik uji (2.24)
4.
Daerah penolakan ditolak jika nilai
5.
atau
Pengambilan keputusan Jika
ditolak, maka dapat disimpulkan terdapat heteroskedastitas pada data residual.
2.8.5 Uji Multikolinearitas Uji ini diterapkan untuk analisis regresi ganda yang terdiri dari dua atau lebih variabel independen, dimana akan diukur tingkat keeratan hubungan atau pengaruh antar variabel-variabel independennya (Sunyoto, 2011:79). Multikolinearitas dapat diuji dengan menggunakan koefisien korelasi. Jika koefisien korelasinya lebih besar dari 0.8 maka terdapat multikolinearitas pada data tersebut (Ohyver, 2010). Selain menggunakan koefisien korelasi, ada cara lain untuk melakukan uji multikolinearitas, yaitu dengan menggunakan nilai Variance Inflation Factor (VIF).
Nilai VIF
diperoleh dari Persamaan (2.25). Apabila nilai VIF lebih besar dari 10 maka dapat disimpulkan terjadi multikolinearitas (Neter et al, 1996:387). (2.25)
Untuk menyelesaian masalah multikolinearitas dapat dilakukan dengan beberapa cara, diantaranya: 1.
Menambahkan lebih banyak observasi.
2.
Mengeluarkan salah satu atau lebih variabel independen yang mempunyai koefisien korelasi yang kuat.
25 3.
Mentransformasikan variabel independen.
4.
Menggunakan metode lain, misalnya regresi bayesian atau regresi ridge.
2.9
Ukuran Ketepatan Peramalan Suatu ramalan tidak memungkinkan akan benar-benar akurat. Ketepatan
ramalan adalah satu hal yang mendasar dalam peramalan, yaitu bagaimana mengukur kesesuaian suatu metode peramalan tertentu untuk suatu kumpulan data yang diberikan. Menurut Makridakis (1999:39), ketepatan peramalan dipandang sebagai kriteria penolakan untuk memilih suatu metode peramalan. Tentunya jika tingkat kesalahan tidak kecil, hal ini memberi indikasi apakah teknik ramalan yang digunakan salah, atau teknik ini perlu disesuaikan dengan mengubah parameter. 2.9.1
Mean Absolute Percentge Error (MAPE) MAPE merupakan pengukuran kesalahan yang menghitung ukuran
presentase penyimpangan antara data aktual dengan data peramalan. Nilai MAPE dapat dihitung dengan persamaan berikut.
(2.26)
Dimana :
Kemampuan peramalan sangat baik jika memiliki nilai MAPE kurang dari10% dan mempunyai kemampuan peramalan yang baik jika nilai MAPE kurang dari 20% (Yasmin et al, 2010).
26 2.9.2 Mean Square Error (MSE) MSE adalah pengukuran kesalahan dalam peramalan yang dihitung dengan menjumlahkan kesalahan kuadrat dan membaginya dengan jumlah pengamatan. MSE dihitung dengan menggunakan persamaan berikut.
(2.27) 2.9.3 Sum of Squares Error (SSE) SSE merupakan salah satu pengukuran kesalahan yang popular dan mudah digunakan. Nilai SSE dihitung dengan mengkuadratkan selisih antara ramalan dengan nilai aktual. Umumnya, semakin kecil SSE semakin akurat nilai suatu ramalan. Menurut Makridakis SSE dihitung dengan menggunakan persamaan berikut. (2.28) 2.10
Transformasi Transformasi merupakan salah satu cara untuk melakukan standarisasi
terhadap variabel-variabel yang memiliki skala pengukuran yang berbeda. Tujuan utamanya adalah untuk mengubah skala pengukuran data asli menjadi bentuk bentuk lain sehingga dapat menghasilkan model regresi yang lebih baik. Transformasi korelasi merupakan salah satu modifikasi sederhana terhadap variabel. Persamaan yang digunakan pada transformasi korelasi adalah (Neter et al, 1996:279). Standardized: (2.29)
(2.30)
27 (2.31) Unstandardized: (2.32)
(2.33) Dimana:
2.11
Waterfall Model Dalam pengembangan sistem perangkat lunak, dapat dilakukan dengan
menggunakan metode Systems Development Life Cycle atau yang biasa disebut dengan metode waterfall. Menurut Pressman (2010:39) model waterfall adalah model klasik yang bersifat sistematis dan berurutan dalam membangun software. Model waterfall adalah proses dasar seperti spesifikasi, pengembangan, validasi, evolusi, dan merepresentasikannya sebagai fase-fase proses yang berbeda seperti spesifikasi persyaratan, perancangan perangkat lunak, implemetasi, pengujian. Berikut ini adalah fase-fase pada model waterfall menurut Pressman:
28
Gambar 2.3 Waterfall Model 1.
Communication Langkah ini merupakan analisis terhadap kebutuhan software, dan tahap untuk mengadakan pengumpulan data dengan melakukan pertemuan dengan customer, maupun mengumpulkan data-data tambahan baik yang ada di jurnal, artikel, maupun dari internet.
2.
Planning Proses planning merupakan lanjutan dari proses communication (analysis requirement). Tahapan ini akan menghasilkan dokumen user requirement ataubisa dikatakan sebagai data yang berhubungan dengan keinginan user dalampembuatan software, termasuk rencana yang akan dilakukan.
3.
Modeling Proses modeling ini akan menerjemahkan syarat kebutuhan ke sebuah perancangan software yang dapat diperkirakan sebelum dibuat coding. Proses ini berfokus pada rancangan struktur data, arsitektur software, representasi interface, dan detail (algoritma) prosedural. Tahapan ini akan menghasilkan dokumen yang disebut software requirement.
4.
Construction Construction merupakan proses membuat kode. Coding atau pengkodean merupakan penerjemahan desain dalam bahasa yang bisa dikenali oleh
29 komputer. Programmer akan menerjemahkan transaksi yang diminta oleh user. Tahapan inilah yang merupakan tahapan secara nyata dalam mengerjakan suatu software, artinya penggunaan komputer akan dimaksimalkan dalam tahapan ini. Setelah pengkodean selesai maka akan dilakukan testing terhadap sistem yang telah dibuat tadi. Tujuan testing adalah menemukan kesalahan-kesalahan terhadap sistem tersebut untuk kemudian bisa diperbaiki. 5.
Deployment Tahapan ini bisa dikatakan final dalam pembuatan sebuah software atau sistem. Setelah melakukan analisis, desain dan pengkodean maka sistem yang sudah jadi akan digunakan oleh user. Kemudian software yang telah dibuat harus dilakukan pemeliharaan secara berkala.
2.12
Object Oriented Programming (OOP) Objek merupakan sebuah entitas dapat didefenisikan dengan jelas. Object
Oriented Programming (OOP) merupakan pemrograman yang menggunakan atau melibatkan objek-objek (Liang, 2011:288). OOP dilakukan dengan membagi fungsifungsi berdasarkan pembagian tanggung jawab yang ditetapkan pada setiap class dibuat. Objek dari jenis yang sama didefenisikan menggunakan public class. Pada class java digunakan variabel untuk menetukan data field dan metode untuk untuk menentukan action. Class juga menyediakan metode dengan tipe khusus yang dikenal sebagai constructor, yang dapat dipakai untuk membuat objek baru. Constructor harus memiliki nama yang sama dengan class itu sendiri. Constructor dapat diakses menggunakan keyword new. Secara umum, suatu bahasa pemrograman dapat dikatakan sebagai OOP, jika program tersebut mendukung konsep encapsulation, polymorphism, dan inheritance.
30 Selain konsep-konsep tersebut ada beberapa konsep fundamental lainnya yang harus dimiliki dalam sebuah bahasa pemrograman, seperti class, objek, dan message. 2.13
Unified Modelling Language (UML) UML adalah notasi yang lengkap untuk membuat visualisasi model suatu
sistem. Sistem berisi informasi dan fungsi tapi secara normal digunakan untuk memodelkan system komputer. Menurut Whitten & Bentley (2007:371) UML hanya sebuah notasi yang sekarang diterima secara luas sebagai standar untuk memodelkan suatu objek. Sebagaimana halnya bahasa pemodelan, UML mengijinkan deskripsi dari sistem yang dibuat secara mendetail pada setiap level abstraksinya. Secara umum UML merupakan sintak umum untuk membuat model logika dari suatu sistem dan digunakan untuk menggambarkan sistem agar dapat dipahami selama fase analisis dan desain. UML dapat dibagi menjadi beberapa komponen, yaitu: 1.
Use Case Diagram Menurut Pressman (2010:847), use case menjelaskan bagaimana user berhubungan dengan sistem pada sekumpulan sirklus tertentu untuk mencapai tujuan tertentu. Sedangkan use case diagram adalah gambaran umum dari keseluruham use case yang ada dan menjelaskan hubungan antar use case. Secara umum use case diagram menjelaskan manfaat dan memahami kerja dari suatu sistem. Dalam sebuah model bisa terdapat lebih dari satu use case diagram, hal ini bergantung pada kebutuhan dari sistem. Use case diagram memiliki komponen sebgai berikut: a. Actors, segala sesuatu yang memiliki kepentingan untuk berinteraksi dengan sistem guna pertukaran informasi.
31 b. Relationship, dalam use case diagram digambarkan dengan sebuah garis. Terdapat beberapa jenis relationship pada use case diagram, yaitu: - Associations, terjadi apabila hubungan antara actor dan use case tersebut mendeskripsikan interaksi antara kedua belah pihak. - Extends, terjadi apabila terdapat hubungan antara extention use case dan use case. Sebuah use case diperbolehkan untuk mempunyai banyak extends relationship, tetapi extension use case hanya dapat dilakukan apabila bersama dengan use case yang sedang berkembang. - Include, terjadi apabila ada urutan perilaku (use case) yang digunakan dalam sejumlah kasus, dan user ingin menghindari penyalinan deskripsi yang sama ke dalam setiap use case yang digunakan. Include Relationship biasa disebut sebagai penggambaran use case yang memiliki perilaku dari use case lain.
Gambar 2.4 Contoh Use Case Diagram 2.
Use Case Narative Menurut Whitten & Bentley (2007: 385) setiap use case narrative berisi informasi menjelaskan fungsi sistem dengan lebih detail.
32
Gambar 2.5 Contoh Use Case Narrative 3.
Activity Diagram Menurut Pressman (2010:161), Activity diagram melengkapi use case dengan menyediakan gambaran dari alur interaksi pada skenario tertentu. Activity diagram juga digunakan untuk memodelkan logika dengan suatu sistem. Activity diagram memiliki komponen sebagi berikut: a. Nodes (Initial & Final) Simbol untuk memulai dan mengakhiri suatu activity diagram. b. Actions Persegi dengan sudut tumpul yang menggambarkan tugas yang harus dilakukan. c. Flow Panah dalam diagram yang menggambarkan kegiatan yang dikerjakan berikutnya. d. Decision Bentuk permata dengan satu flow yang masuk dan dan dua atau lebih flow yang keluar yang menggambarkan pilihan untuk mengambil keputusan.
33 e. Merge Bentuk permata dengan dua atau lebih flow yang masuk dan satu flow yang keluar. Notasi ini mengkombinasikan flow yang sebelumnya dipisahkan oleh decision kemudian diproses sehingga menjadi satu flow. f. Fork Balok hitam dengan satu flow masuk dan dua atau lebih flow keluar. Tindakan pada flow paralel di bawah fork dapat terjadi dalam urutan apapun atau bersamaan. g. Join Kotak hitam dengan dua atau lebih flow yang masuk dan satu flow keluar. Tindakan yang masuk ke dalam join harus selesai sebelum proses dilanjutkan.
Gambar 2.6 Contoh Activity Diagram
34 4.
Class Diagram Menurut Whitten & Bentley
(2007: 400), class diagram digunakan untuk
menggambarkan objek-objek dan hubungannya secara grafis. Notasi-notasi yang terdapat pada class diagram adalah:
Gambar 2.7 Contoh Class Diagram
35 a. Class Class adalah rancangan dari suatu objek, dimana objek yang diciptakan dari class memiliki semua yang dimiliki oleh class tersebut. Secara umum class digambarkan dengan sebuah kotak yang terdiri dari 3 bagian, yaitu: •
Bagian atas: class name.
•
Bagian tengah: attribute.
•
Bagian bawah: operational.
b. Relationship •
Associations Associations adalah hubungan yang terjadi antara class-class yang ada. Associations memungkinkan suatu class untuk menggunakan atau mengetahui attribute atau operation yang dimiliki oleh class lain.
Gambar 2.8 Notasi Associations
36 •
Aggregation Aggregation adalah suatu bentuk relasi yang jauh lebih kuat dari association. Aggregation dapat diartikan bahwa suatu
class
merupakan bagian dari class yang lain namun bersifat tidak wajib. Aggregation digambarkan dengan sebuah garis yang memiliki bentuk diamond kosong di salah satu ujung garisnya.
Gambar 2.9 Notasi Aggreagation
•
Generalization Generalization memungkinkan suatu class mewarisi attribute dan operation yang dimiliki oleh base class. Attribute dan operation yang bisa diwarisi oleh suatu class adalah yang memiliki access modifier public, protected, dan default. Generalization digambarkan dengan garis yang memiliki tanda panah kosong pada salah satu ujungnya yang mengarah ke base class. Attribute dan method dalam class diagram dapat memiliki salah satu sifat berikut:
37
Gambar 2.10 Notasi Generalization Private (-), tidak dapat dipanggil di luar class yang bersangkutan. Protected (#), hanya dapat dipanggil oleh class yang bersangkutan dan class anaknya. Public (+), dapat dipanggil oleh semua class lain.
•
Composition Relasi ini merupakan relasi yang paling kuat dibandingkan dengan association maupun aggregation. Pada composition diartikan bahwa suatu class merupakan bagian wajib dari class yang lain. Composition digambarkan dengan sebuah garis yang memiliki bentuk diamond utuh di salah satu ujung garisnya.
38
Gambar 2.11 Notasi Composition
5.
Sequence Diagram Menurut
Pressman
(2010:848),
sequence
diagram
digunakan
untuk
menunjukkan hubungan dinamis antara objek-objek selama melaksanaan suatu tugas. Objek-objek yang dimaksud adalah komponen-komponen yang terdapat pada sistem. Sequence diagram juga digunakan untuk menggambarkan skenario atau rangkaian langkah-langkahyang telah dilakukan. Secara umum, sequence diagram menunjukkan interaksi antara aktor, sistem, dan kompnen dalam sistem.
39
Gambar 2.12 Contoh Sequence Diagram Menurut Whitten & Bentley (2007: 660) elemen-elemen yang ada pada sequence diagram adalah: a.
Actor Actor adalah pengguna yang berinteraksi dengan sistem.
b.
Interface Class Sebuah kotak yang mengindikasikan kode kelas. Interface class ditandai dengan <>.
c.
Controller Class Setiap use case akan memiliki satu atau lebih controller class yang digambarkan sama dengan interface clas, yaitu <>.
d.
Entity Classes Kotak
tambahan
untuk
setiap
entitas
menggabungkan urutan langkah-langkah sistem. e.
Messages
yang
dibutuhkan
untuk
40 Panah horizontal yang mengindikasikan pesan masuk berisi metode dari kelas objek. f.
Activation Bars Balok yang yang terletak pada lifelines menandakan rentang waktu berfungsinya setiap objek.
g.
Return Messages Panah putus-putus adalah pesan balik. Setiap kejadian seharusnya mengirimkan pesan balik, walaupun hanya pesan indikasi sukses atau tidak.
h. Self Call Self Call adalah objek yang dapat mengirimkan pesan ke objek itu sendiri. i. Frame Frame digunakan untuk menandakan area pada diagram yang mengalami perulangan, seleksi atau memiliki sebuah ketentuan. 2.14
Java Programming Java pertama kali dikembangkan oleh Sun Microsystem pada tahun 1995.
Awalnya bahasa pemrograman ini dikhususkan untuk aplikasi berbasis internet, akan tetapi saat ini aplikasi java juga sudah digunakan untuk desktop application hingga mobile application. Java memiliki fitur lengkap, sehingga penggunaannya bertujuan untuk mengembangkan aplikasi mission-critical. Java misip seperti C++, karena sama-sama merupakan bahasa pemrograman yang berorientasi terhadap objek, yang mana pemrogramannya menggunakan kelas untuk membentuk objek.
41 Spesifikasi bahasa Java dan Java application program interface (API) merupakan penjelasan standar pada bahasa java. Spesifikasi bahasa java merupakan definisi teknis dari bahasa yang mencakup sintaks dan semantik dari bahasa pemrograman java. Sedangkan Java API berisi kelas standar dan interface untuk mengembangkan program java (Liang, 2011:34). Desain API pada java Graphical User Interface (GUI) merupakan contoh penerapan object oriented principle yang sangat baik. Ketika java diperkenalkan, kelas GUI tergabung dalam sebuah library yang dikenal sebagai Abstract Windows Toolkit (AWT). AWT dapat digunakan secara baik untuk mengembangkan antarmuka grafis sederhana, tetapi tidak untuk pengembangan proyek dengan GUI yang lengkap. Selain itu, AWT juga rentan terhadap bug platform yang spesifik. Oleh sebab itu, AWT yang merupakan komponen antarmuka, digantikan oleh library yang lebih kuat, serbaguna, dan fleksibel yang dikenal sebagai komponen Swing. Komponen Swing tergambar langsung pada kanvas dengan menggunakan kode java, kecuali untuk komponen subclass dari java.awt.window atau java.awt.panel yang mana harus dipersiapkan untuk menggunakan GUI asli pada platform tertentu (Liang, 2011:430).
2.15
NetBeans NetBeans merupakan sebuah proyek open-source yang dengan jumlah
pengguna yang banyak dan sangat luas. Komunitas penggunanya terus tumbuh dan memiliki hampir 100 mitra (dan akan terus bertambah). Produk dasar NetBeans adalah NetBeans Integrated Development Environment Platform.
(IDE) dan NetBeans
42 NetBeans IDE merupakan sebuah lingkungan pengembangan untuk para programmer menulis, mengkompilasi, mencari error, dan menyebarkan program. Secara umum Netbeans IDE adalah sebuah produk bebas dengan tanpa batasan bagaimana digunakan. Netbeans IDE ditulis dalam bahasa Java, namun juga dapat mendukung bahasa pemrograman lain. Terdapat banyak modul tersedia pada Netbeans IDE. NetBeans Platform merupakan sebuah fondasi modular yang digunakan sebagai perangkat lunak dasar untuk membuat aplikasi desktop yang besar (Anonim:2013). https://netbeans.org/index_id.html 2.16
R Software R Software merupakan perangkat lunak yang tersedia di bawah persyaratan
dari GNU General Public License Free Software Foundation dalam bentuk sumber kode. Komputasi pada R Software menggunakan bahasa pemrograman khusus. Bahasa pemrograman yang digunakan adalah bahasa R (R-language). R Software dapat berjalan pada berbagai sistem operasi, seperti Windows, Mac OS, UNIX, FreeBSD, dan Linux. R menyediakan fasilitas untuk komputasi statistik, grafis, dan berbagai macam metode statistik (analisis time series, model linier dan nonlinier, uji statistik klasik, dan sebagainya) serta teknik grafis (Cryer and Chan, 2004:423). Saat ini R telah menjadi platform fleksibel dan kuat untuk melakukan analisis statistik. Untuk mendapatkan software ini, dapat mengunjungi situs web di www.rproject.org. Menurut Rosadi (2011:2-3), terdapat beberapa alasan untuk lebih memilih menggunakan R software daripada software statistik lainnya yang juga merupakan kelebihan dari R software, yaitu: a.
Portabilitas Jika
memilih
software
R,
pengguna
menggunakannya sampai kapan pun.
bebas
untuk
mempelajari
dan
43 b.
Multiplatform R merupakan software multiplatform yang lebih kompatibel daripada perangkat lunak statistika mana pun yang pernah ada.
c.
Umum dan berada di barisan terdepan Berbagai metode analisis statistik (metode klasik maupun metode baru) telah diprogramkan ke dalam R-Language. Sehingga, software ini dapat digunakan untuk berbagai macam analisis statistika, baik pendekatan klasik maupun pendekatan statistika modern.
d.
Deprogram Pengguna dapat memprogramkan metode baru atau mengembangkan modifikasi dari fungsi-fungsi analisis statistika yang telah ada dalam software R.
e.
Bahasa berbasis analisis matriks. R Language sangat baik untuk melakukan pemograman dengan basis matriks.
f. 2.17
Fasilitas grafik yang relatif baik. Interaksi Manusia dan Komputer (IMK) Menurut Schneiderman (2010:4-5), interaksi manusia komputer adalah
disiplin ilmu yang mempelajari hubungan antara manusia dan komputer yang meliputi perancangan, evaluasi, dan implementasi antarmuka pengguna komputer agar mudah digunakan oleh manusia. Dalam perancangan desain antarmuka (interface) terdapat delapan aturan emas yang perlu diperhatikan (Shneiderman & Plaisant, 2010:88-89): 1.
Berusaha untuk konsisten. Diperlukan urutan aksi yang konsisten pada situasi yang sama. Konsistensi juga harus diterapkan pada promps, menus, dan layar bantu.
2.
Memungkinkan penggunaan yang universal.
44 Mengenali kebutuhan pengguna yang beragam dari pengguna pemula (novice) sampai pengguna ahli (expert) dengan merancang konten yang beragam, misal: penjelasan untuk user pemula sampai shortcut untuk pengguna yang sudah ahli.
3.
Memberikan umpan balik yang informatif. Untuk setiap tindakan yang dilakukan user, diharapkan adanya umpan balik dari sistem. Untuk tindakan yang sering terjadi dan tidak membutuhkan banyak aksi, umpan balik dapat dibuat sederhana, sedangkan tindakan yang jarang dilakukan dan memerlukan banyak aksi harus lebih ditonjolkan.
4.
Merancang dialog yang memberikan penutupan (keadaan akhir). Urutan aksi yang harus disusun ke dalam kelompok awal, tengah, dan akhir. Suatu umpan balik yang informatif pada akhir pekerjaan sebaiknya dibuat untuk mengindikasikan bahwa pekerjaan tersebut telah selesai dan siap melanjutkan ke aksi berikutnya.
5.
Memberikan pencegahan kesalahan dan penanganan kesalahan sederhana. Sistem yang dibuat diharapkan tidak memungkinkan user membuat kesalahan serius. Jika terjadi kesalahan, sistem harus dapat mendeteksi kesalahan tersebut dan menawarkan penanganan kesalahan yang sederhana.
6.
Memungkinkan pengembalian aksi yang sebelumnya. Fitur untuk mengurangi kekhawatiran user karena user tahu bahwa jika ada kesalahan yang dibuat dapat dikembalikan lagi ke aksi sebelumnya.
7.
Mendukung pusat kendali internal. Menjadikan user sebagai yang mengendalikan sistem, bukan yang dikendalikan oleh sistem.
45 8.
Mengurangi beban ingatan jangka pendek. Mengingat keterbatasan manusia dalam pemrosesan informasi dalam jangka pendek, sebuah sistem diharapkan dibuat dengan tampilan sesederhana mungkin, beberapa halaman dijadikan satu, frekuensi pergerakan window dikurangi dan harus ada waktu yang cukup bagi
user
untuk mempselajari kode-kode,
singkatan, serta urutan aksi. Informasi seperti singkatan atau kode sebaliknya tersedia. Selain delapan aturan emas (Eight Golden Rules) dalam perancangan desain antarmuka terdapat juga lima faktor manusia terukur yang digunakan untuk mengevaluasi perancangan desain antarmuka, yaitu (Shneiderman & Plaisant, 2010:32): 1.
Waktu pembelajaran (time to learn). Berapa lama waktu yang dibutuhkan oleh anggota dari sekelompok komunitas pengguna untuk mempelajari cara menggunakan perintah-perintah yang digunakan untuk menyelesaikan sebuah tugas.
2.
Kecepatan kinerja (speed of performance). Berapa lama waktu yang diperlukan untuk menyelesaikan suatu tugas.
3.
Tingkat kesalahan pengguna (rate of errors by users). Mengukur berapa banyak kesalahan yang terjadi saat aplikasi menyelesaikan suatu tugas. Meskipun waktu untuk membuat dan memperbaiki kesalahan mungkin dimasukan ke dalam kecepatan kinerja, penanganan kesalahan merupakan hal yang penting dalam penggunaan antarmuka dan membutuhkan pembelajaran yang luas.
46 4.
Daya ingat jangka panjang (retention over time). Bagaimana pengguna menjaga pengetahuan mereka setelah beberapa jam, hari, atau minggu. Daya ingat sering dikaitkan dengan waktu pembelajaran dan biasanya frekuensi penggunaan juga memainkan peran penting.
5.
Kepuasan subjektif (subjective satisfication). Mengukur sebarapa jauh pengguna menyukai berbagai aspek dari antarmuka pengguna.