Upload
dinhnga
View
302
Download
7
Embed Size (px)
Citation preview
1
BAB IV HASIL PENELITIAN DAN PEMBAHASAN
4.1 Peramalan dengan menggunakan Metode Dekomposisi
Penggunaan metode Dekomposisi untuk forecasting berdasarkan
langkah-langkah yang telah dijabarkan pada BAB II terhadap data jumlah
penjualan diperoleh hasil sebagai berikut.
1. Metode Dekomposisi untuk forecasting jumlah penjualan di Karvak Langkah-
langkah penggunaan metode Dekomposisi untuk peramalan (forecasting)
sebagai berikut.
a. Menyusun data kuartalan masing-masing tahun
Jumlah Penjualan 2008 sampai dengan tahun 2010 perkuartal (tiga bulanan
yaitu mulai : januari-februari-maret, april-mei-juni, juli-agustus-september
serta oktober-november-desember), jumlah data ada 20 kuartal.
b. Membuat scatter diagram garis trend linier
Trend (Seculer Trend) adalah rata-rata perubahan (tiap tahun ) dalam jangka
panjang. Kalau hal yang diteliti menunjukkan gejala kenaikan maka trend
yang dimiliki memiliki rata-rata pertambahan (Trend Positif), tetapi kalau hal
yang diteliti menunjukkan gejala semakin berkurang maka trend yang
dimiliki menunjukkan rata-rata penurunan (Trend Negatif). Ada beberapa
metode yang bisa digunakan untuk membuat trend yaitu metode trend linier
Least Square, metode trend parabolic dan metode trend eksponensial.
Penggunaan metode-metode tersebut disesuaikan dengan kebutuhan dan sifat
data yang dimiliki. Grafik 4.1 menunjukkan bahwa perubahan dari data
2
tersebut mempunyai pola linier atau letaknya mendekati garis lurus, maka
trend linier cocok digunakan. Berdasarkan data tersebut dibuat scatter
diagram dan ditambahkan garis trend, sehingga dapat dilihat bagaimana
kelinieran dari garis trend, pola dan kecenderungan naik atau turun, setelah
itu baru dilakukan peramalan (forecasting) dengan metode dekomposisi.
Normal P-P Plot of Regression Standardized Residual Dependent Variable: BULAN
Observed Cum Prob
Grafik 4.1 Uji linieritas jumlah penjualan
1.00 .50 .25
0.00
.25
.50
.75
1.00
.75 0.00
Expected Cum Prob
3
c. Menghitung besarnya nilai trend
Langkah-langkah untuk menghitung besarnya nilai trend adalah sebagai
berikut.
1) Susunlah data sesuai dengan urutan tahunnya dan letakkan nilai X sesuai
dengan tahunnya.
Tabel 4.1 Mengubah data tahunan menjadi data kuartalan dari data
penjualan
Tahun Jumlah Penjualan Jumlah
Kuartal I Kuartal II Kuartal III Kuartal IV
2008 440.340.259 365.721.048 370.370.445 494.911.566 1.671.343.318
2009 520.814.404 577.430.388 795.047.363 746.064.719 2.639.356.874
2010 431.987.306 650.454.973 622.586.422 699.652.466 2.404.681.167
2) Hitung nilai XY dan X2, kemudian carilah jumlah Y, jumlah XY, dan jumlah
X2, carilah nilai a dan b dengan menggunakan rumus sebagai berikut:
� = ∑ �
�=
�.�.� .���
�= 2.238.460.453
� = ∑ ��
∑ ��=
��.� . ��
�= 366.689.424,5
3) Masukkan nilai a dan b pada persamaan linier Ŷ = � + ��.
dari langkah 2 diperoleh persamaan trend sebagai berikut:
4
Ŷ = 2.238.460.453 + 366.689.424,5 X
Tabel 4.1 Menghitung nilai Least Squar Trend dari data penjualan
Tahun Data
Penjualan (Y)
X XY X2 Ŷ
2008
2009
2010
1.671.343.318
2.639.356.874
2.404.681.167
-1
0
1
-1.671.343.318
0
2.404.681.167
1
0
1
1.871.771.028,5
2.238.460.453
2.605.149.877,5
Jumlah 6.715.381.359 733.378.849 2 6.715.381.359
4) Setelah didapat persamaan trend maka dapat dicari nilai trend tiap-tiap tahun
dengan melakukan substitusi nilai X pada persamaan trend.
5) Forecast pada tahun yang akan datang, maka substitusikan nilai X pada tahun
yang bersangkutan.
2011 ; Ŷ = 2.238.460.453 + 366.689.424,5 (2)
= 2.971.839.302
6) Mengubah bentuk persamaan trend rata-rata.
Dari persamaan trend tahunan kalau akan dibuat menjadi persamaan trend
rata-rata tiap bulan dilakuakan dengan : a dibagi 12 dan b dibagi 12, kalau
akan dijadikan trend rata-rata tiap kuartal baik a maupun b masing-masing
5
dibagi 4, kemudian substitusikan nilai X pada tahun yang bersangkutan
sehingga didapat nilai trend yang merupakan trend rata-rata.
Ŷ = �.�� .���.���
�+
���.� �.���,�
� �
Ŷ = 559.615.113,25 + 91.672.356,125 X
Maka nilai trend rata-ratanya menjadi:
2008 : 559.615.113,25 + 91.672.356,125 (-1) = 467.942.757,125
2009 : 559.615.113,25 + 91.672.356,125 (0) = 559.615.113,25
2010 : 559.615.113,25 + 91.672.356,125 (1) = 651.287.469,375
7) Mengubah persamaan trend rata-rata tiap kuartal menjadi trend bulanan dan
kuartalan.
Trend bulanan adalah trend dari bulan satu ke bulan berikutnya,
menunjukkan perkiraan kenaikan atau perubahan setiap bulannya. Jadi bukan
dari tahun satu ke tahun berikutnya tetapi dari bulan satu ke bulan
berikutnya. Sedangkan trend kuartalan adalah trend yang menunjukkan
perubahan dari kuartal ke kuartal. Kalau akan merubah persamaan trend
tahunan yang satuan X satu tahun menjadi trend bulanan maka a dibagi 12
dan b dibagi 122, sedangkan kalau akan dirubah menjadi trend kuartalan
maka a dibagi 4 dan b dibagi 42. Maka persamaan trend berubah menjadi:
Ŷ = �.�� .���.���
� +
���.� �.���,�
� �
6
Ŷ = 559.615.113,25 + 22.916.807,78X
Tabel 4.2 Skala X untuk trend kuartalan
Sehingga nilai trend kuartalan menjadi:
Tahun 2008 K I ; Ŷ = 559.615.113,25 + 22.916.807,78(-5,5)
= 433.565.623,58
K II ; Ŷ = 559.615.113,25 + 22.916.807,78(-4,5)
= 456.483.712,61
K III ; Ŷ = 559.615.113,25 + 22.916.807,78(-3,5)
K I K II K III K IV
2008 -5,5 -4,5 -3,5 -2,5
2009 -1.5 -0.5 0,5 1,5
2010 2,5 3,5 4,5 5,5
7
= 479.401.801,64
K IV ; Ŷ = 559.615.113,25 + 22.916.807,78(-2,5)
= 502.319.890,67
Tahun 2009 K I ; Ŷ = 559.615.113,25 + 22.916.807,78(-1,5)
= 525.237.979,70
K II ; Ŷ = 559.615.113,25 + 22.916.807,78(-0,5)
= 548.156.709,36
K III ; Ŷ = 559.615.113,25 + 22.916.807,78(0,5)
= 571.074.157,76
K IV ; Ŷ = 559.615.113,25 + 22.916.807,78(1,5)
= 593.992.246,79
Tahun 2010 K I ; Ŷ = 559.615.113,25 + 22.916.807,78(2,5)
= 616.910.335,82
K II ; Ŷ = 559.615.113,25 + 22.916.807,78(3,5)
= 639.828.424,85
K III ; Ŷ = 559.615.113,25 + 22.916.807,78(4,5)
= 662.746.513,88
8
K IV ; Ŷ = 559.615.113,25 + 22.916.807,78(5,5)
= 181.664.602,92
Untuk mencari nilai trend kuartalan seperti diatas hitungannya agak
sulit karena X yang disubstitusikan pecahan, untuk mempermudah originnya
dapat diubah menjadi kuartal yang terdekat (kuartal II dan kuartal III). Jika
origin dirubah menjadi kuartal II tahun 2009 maka a-nya diganti dengan nilai
trend pada kuartal II, sedangkan b-nya tetap. Sehingga persamaan trend-nya
menjadi:
Ŷ = 548.156.709,36 + 22.916.807,78X
Tabel 4.3 Nilai X Kuartalan Setelah Originnya Dirubah
Sehingga nilai trend kuartalan berubah menjadi :
K I K II K III K IV
2008 -5 -4 -3 -2
2009 -1 0 1 2
2010 3 4 5 6
9
Tahun 2008 K I ; Ŷ = 548.156.709,36 + 22.916.807,78(-5)
= 433.565.623,57
K II ; Ŷ = 548.156.709,36 + 22.916.807,78(-4)
= 456.483.712,60
K III ; Ŷ = 548.156.709,36 + 22.916.807,78(-3)
= 479.401.801,63
K IV ; Ŷ = 548.156.709,36 + 22.916.807,78 (-2)
= 502.319.890,66
Tahun 2009 K I ; Ŷ = 548.156.709,36 + 22.916.807,78(-1)
= 525.237.979,69
K II ; Ŷ = 548.156.709,36 + 22.916.807,78(0)
= 548.156.709,36
K III ; Ŷ = 548.156.709,36 + 22.916.807,78(1)
= 571.074.157,76
K IV ; Ŷ = 548.156.709,36 + 22.916.807,78(2)
= 593.992.246,79
10
Tahun 2010 K I ; Ŷ = 548.156.709,36 + 22.916.807,78(3)
= 616.910.335,82
K II ; Ŷ = 548.156.709,36 + 22.916.807,78(4)
= 639.828.424,85
K III ; Ŷ = 548.156.709,36 + 22.916.807,78(5)
= 662.746.513,88
K IV ; Ŷ = 548.156.709,36 + 22.916.807,78(6)
= 685.664.602,91
d. Menghitung Indeks Musiman Tertentu
Menurut (Subagyo, 1986:51) Gelombang musim adalah gelombang
pasang surut yang berulang kembali dalam waktu tidak lebih dari satu tahun .
gelombang musim dinyatakan dalam bentuk indeks , namanya indeks
musim. Hubungan antara komponen-komponen perubahan dinyatakan dalam
perkalian sebagai berikut.
X = T X M X S X R
Artinya data yang terjadi ( X ) dapat dihitung dengan mengalikan nilai trend
dengan indeks musim, indeks siklis dan perubahan-perubahan yang bersifat
random. Ada tiga cara untuk menghitung indeks musiman yaitu dengan
metode
11
rata-rata sederhana, metode persentase terhadap trend, dan metode persentase
terhadap rata-rata bergerak. Metode yang akan digunakan dalam penelitian
ini adalah metode rata-rata sederhana. Dalam metode ini indeks musim
dihitung dengan berdasarkan rata-rata tiap periode musim setelah dibebaskan
dari pengaruh trend.
Langkah-langkah mencari indeks musim dengan menggunakan
metode rata-rata sederhana Tabel 4.4 adalah sebagai berikut.
1) Susunlah data tiap kuartal (atau bulan sesuai dengan kebutuhan) untuk
masing-masing tahun. Kuartal kebawah dan tahun kekanan.
2) Carilah rata-rata kuartal pada tahun 2008 sampai dengan tahun 2010.
3) Karena rata-rata masih mengandung unsur kenaikan (trend) maka hilangkan
pengaruh trend tersebut yang diambil dari persamaan trend kuartalan.
4) Carilah rata-rata dari kolom sisa yaitu (2.088.959.606,0 : 4) = 522.239.901,58
5) Nyatakan angka-angka pada kolom sisa sebagai persentase dari rata-ratanya,
sehingga diperoleh indeks musiman sebagai berikut:
Kuartal I = ���.� �.���,��
���.���.��,� × 100 = 89
Kuartal II = �� .� �.�� ,�
���.���.��,� × 100 = 97
Kuartal III = �� .�.��,�
���.���.��,� × 100 = 103
Kuartal IV = � .��. �
���.���.��,� × 100 = 111
12
Pada metode dekomposisi, forecasting dilakukan dengan
menggabungkan komponen-komponen yang telah diperoleh yaitu trend,
indeks musim, mestinya dengan indeks siklis dan perubahan-perubahan
random. Tetapi gerak siklis sukar diperkirakan polanya karena faktor yang
mempengaruhinya banyak sekali, demikian juga gerak random sangat sulit
diperkirakan. Oleh karena itu forecasting biasanya hanya menggunakan trend
(T) dan gerak Musiman (M) saja, sehingga forecast dapat dibuat dengan
rumus sebagai berikut:
F = T x M
Sebagai contoh forecast permintaan konsumen pada tahun 2008
dengan menggunakan data, trend dan indeks musim yang telah diperoleh.
Kita
pakai persamaan trend sebagai berikut:
Dari persamaan trend yang telah dirubah originnya yaitu Ŷ=
548.156.709,36+ 22.916.807,78 X maka diperoleh nilai trend untuk tahun
2011 adalah sebagai berikut:
Kuartal I ; Ŷ = 548.156.709,36 + 22.916.807,78(7)
= 708.574.363,83
Kuartal II ; Ŷ = 548.156.709,36 + 22.916.807,78(8)
= 731.491.171,61
Kuartal III ; Ŷ = 548.156.709,36 + 22.916.807,78(9)
= 754.407.979,39
13
Kuartal IV ; Ŷ = 548.156.709,36 + 22.916.807,78(10)
=777.324.787,17
Tabel 4.4 Menghitung indeks musiman dengan rata-rata
sederhana
2008 2009 2010 Rata-rata B
Kumulatif
Rata-rata b
Kum
Inde
ks
Musi
man
(1) (2) (3) (4) (5) (6) (7)
Kw I 440.340.259 520.814.404 431987306 464.380.656 0 464.380.656 88,9
Kw II 365.721.048 577.430.388 650454973 531.202.136 22.916.807 508.285.328 97,3
Kw III 370.370.445 759.047.363 622586422 584.001.410 45.833.615 538.167.794 103
Kw IV 494.911.566 746.064.719 699652466 646.876.250, 68.750.423 578.125.827 111
∑ 1.671.343.318 2.603.356.874 2.404.681.167 2.088.959.60
6
Dengan memakai indeks musim maka akan diperoleh forcast jumlah
penjualan untuk tahun 2011 (tiap kuartal) sebagai berikut:
Forcast kuartal I = 708.574.363,83 × �
�� = 630.071.021,37
= 630.071.021
Forcast kuartal II = 731.491.171,61 × �
�� = 711.945.275,39
= 711.945.275
14
Forcast kuartal III = 754.407.979,39× ��
�� = 777.416.810,18
= 777.416.810,18
Forcast kuartal IV = 777.324.787,17 ×
�� = 860.507.851,15
= 860.507.851
Tabel 4.5 Tabel Peramalan dan Average Error
Kuartal Peramalan Average Error
Kuartal 1 Rp630.071.021 Rp60.857.323
Kuartal 2 Rp711.945.175 Rp16.954.146
Kuartal 3 Rp777.416.810 Rp24.927.252
Kuartal 4 Rp860.507.851 Rp52.884.004
15
Grafik 4.2 Peramalan dan Average Error
4.2 Pengembangan Perangkat Lunak
Secara umum proses pengembangan perangkat lunak ini mengacu
kepada tiga fase perekayasaan perangkat lunak menurut Roger s Pressman
(2002 : 30), menurutnya, usaha yang berhubungan dengan perekayasaan
sebuah perangkat lunak dikategorikan menjadi tiga fase umum dengan tanpa
memperhatikan area sistem informasi, ukuran proyek, maupun
kompleksitasnya. Ketiga fase tersebut adalah fase definisi (Definition Phase),
fase pengembangan (Development Phase), dan fase pemeliharaan
(Maintenance Phase). Pendeskripsian dari ketiga fase tersebut dijelaskan
dalam penjelasan berikut :
1. Fase Definisi (Definition Phase)
Pada fase definisi ini, seorang pengembang perangkat lunak harus melakukan
identifikasi informasi apa saja yang akan diproses, fungsi dan unjuk kerja apa
yang dibutuhkan, tingkah laku sistem yang seperti apa yang diharapkan, dan
batasan desain apa saja yang diberlakukan.
Rp-
Rp100.000.000
Rp200.000.000
Rp300.000.000
Rp400.000.000
Rp500.000.000
Rp600.000.000
Rp700.000.000
Rp800.000.000
Rp900.000.000
Rp1.000.000.000
1 2 3 4
peramalan
Average Error
16
2. Fase Pengembangan (Development Phase)
Pada fase ini seorang pengembang memfokuskan diri pada beberapa
permasalahan, misalnya bagaimana fungsi – fungsi sistem yang telah
dirumuskan diimplementasikan sebagai sebuah arsitektur perangkat lunak,
bagaimana rancangan yang telah dibuat diterjemahkan ke dalam bahasa
pemograman, dan bagaimana pengujian perangkat lunak dilakukan.
3. Fase Pemeliharaan (Maintenance Phase)
Pada fase ini dilakukan beberapa perbaikan atau penyesuaian yang
dibutuhkan terhadap kesalahan yang muncul dari perangkat lunak yang
dibangun ketika lingkungan perangkat lunak berubah.
Secara khusus, dalam pengembangan sistem informasi yang akan
dibuat, kesemua fase diatas dituangkan ke dalam sebuah pendekatan
pengembangan perangkat lunak model sekuensial linear, model sekuensial
linear ini biasa juga disebut dengan model air terjun (waterfall model).
(Pressman, 2002).
4.2.1 Batasan Perangkat Lunak
Untuk tidak melebarnya pembahasan penelitian yang dimaksud maka
penulis membatasi dalam batasan perangkat lunak, diantaranya yaitu hanya
menyajikan jumlah peramalan permintaan barang pada periode satu tahun
berikutnya yang dihitung berdasarkan jumlah penjualan bulanan barang 3
tahun sebelumnya.
4.2.2 Analisis kebutuhan perangkat lunak
Pada penelitian yang dilakukan, proses analisis kebutuhan ini
dilakukan melalui observasi dan wawancara. Untuk mengetahui kebutuhan
apa saja yang diperlukan bagi pihak perusahaan untuk sistem informasi yang
dibuat, penulis melakukan wawancara tidak terstruktur dengan pemilik
perusahaan langsung. Wawancara yang telah dilakukan membahas mengenai
kebutuhan fungsional maupun non fungsional yang diperlukan dalam sistem.
17
Semua kebutuhan ini dijelaskan di dalam dokumen spesifikasi perangkat
lunak yang telah disusun oleh penulis.
Berdasarkan dokumen teknis pengembangan perangkat lunak yang
disertakan, beberapa kebutuhan fungsional dan non fungsional yang telah
dirumuskan dijelaskan dalam penjelasan berikut :
4.2.2.1 Kebutuhan Fungsional
Tabel 1 Kebutuhan Fungsional Perangkat Lunak APPB
No Kode
Fungsi Nama Fungsi Deskripsi
1 PLPP-F-01 Login Merupakan fungsi yang digunakan
oleh pengguna untuk dapat masuk
kedalam sistem yang akan
digunakan.
2 PLPP-F-02 Master Terdapat beberapa menu setelah
admin berhasil login ke sistem
3 PLPP-F-03 Input data
penjualan
Merupakan fungsi yang digunakan
untuk menambahkan data penjualan
bulanan
4 PLPP-F-04 Peramalan Merupakan menu untuk melakukan
perhitungan peramalan
5 PLPP-F-05 Hitung
Peramalan
Merupakan fungsi untuk mulai
menghitung peramalan setelah
memilih detail barang yang akan
diramalkan yang akan langsung
masuk ke menu Laporan
6 PLPP-F-6 Lihat detail
peramalan
Merupakan fungsi untuk melihat
detail hasil peramalan dari kedua
model sementara yang mungkin
18
digunakan sebagai model peramalan
4.2.2.2 Kebutuhan Non Fungsional
Tabel 1.1 Kebutuhan Non Fungsional Perangkat Lunak APPB
No Kode Fungsi Nama Fungsi Deskripsi
1 APPB-NF-01 Availibility Sistem informasi harus mampu berjalan
dengan baik apabila data masukan yang
dibutuhkan tersedia
2 APPB-NF-02 Ergonomi Sistem informasi harus bersifat user
friendly dari segi tampilan, mudah
digunakan, dan memberikan
kenyamanan dalam pengoperasian
fungsi-fungsi atau menu-menu yang ada
3 APPB-NF-03 Portability Sistem informasi mampu berjalan baik
pada pada pada system operasi
windows
4 APPB-NF-04 Response Time Sistem informasi mampu memberikan
respon dengan cepat berdasarkan input
pengguna
5 APPB-NF-05 Maintainability
and
Upgradeability
Sistem informasi mampu untuk
dikembangkan lebih lanjut
6 APPB-NF-06 Security Sistem informasi di lengkapi password
untuk login
20
4.2.3 Analisis Pengguna
Setelah menganalisis masalah diatas, maka akan diperlukan sebuah
sistem yang nantinya akan digunakan oleh admin yang mempunyai hak akses
pada sistem informasi peramalan ini. Berikut adalah analisis pengguna dari
sistem yang akan dibuat.
Admin yaitu user yang dapat menginputkan, mengedit dan
menghapus data yang dibutuhkan oleh sistem informasi peramalan ini seperti
data barang dan data penjualan bulanan. Selain itu admin bertugas untuk
menghitung peramalan itu sendiri.
4.2.4 Desain Perangkat Lunak
Desain perangkat lunak merupakan suatu tahapan yang dilakukan
setelah melakukan analisis dari siklus pengembangan perangkat lunak,
pendefinisian dan kebutuhan-kebutuhan fungsional, persiapan rancang
bangun, implementasi, menggambarkan bagaimana suatu perangkat lunak
tersebut dibentuk. Perangkat lunak yang dibentuk dapat berupa
penggambaran, perancangan, dan pembuatan sketsa atau pengaturan dari
beberapa elemen yang terpisah kedalam suatu kesatuan yang utuh dan
berfungsi baik dari komponen-komponen perangkat lunak maupun perangkat
keras dari suatu sistem.
4.2.4.1 Desain Input
21
Pada sistem informasi peramalan penjualan barang ini, terdapat
beberapa proses input. Proses input tersebut diantaranya berupa data barang
dan data penjualan bulanan dalam kurun waktu 4 tahun terakhir. Proses
penginputan ini dilakukan oleh admin. Sedangkan untuk hasil peramalannya,
akan di inputkan langsung oleh sistem setelah dilakukan perhitungan dengan
menggunakan metode Dekomposisi.
Gambar 4.5 Antarmuka tambah barang
Nomor Barang
Nama Barang
Kuartal I
Kuartal II
Kuartal III
Kuartal IV
Penginputan Data
Data penjualan
Input Bersih Teks Batal Selesai
22
4.2.4.2 Desain Output
Desain output (keluaran) merupakan produk dari sistem yang dapat
terlihat. Pada sistem informasi peramalan penjualan barang ini, output yang
dihasilkan berupa hasil perhitungan peramalan selama satu tahun kedepan
berdasarkan penjualan bulanan selama 3 tahun sebelumnya yang
perhitungannya menggunakan metode Dekomposisi.
Gambar 4.5 Antarmuka hasil peramalan
Tahun Trend Indeks
Musiman
Persen(%) Hasil Ramal
Hasil peramalan
Kuarta1 Kuartal 2 Kuartar 3 Kuartal 4
23
4.2.5 Pemodelan Data
Menurut Pressman (2002: 355), dalam suatu proses pemodelan data
ada tiga elemen penting yang berperan, elemen tersebut antara lain:
• Objek Data (Data Object)
Objek data ini berupa entitas eksternal yang memproduksi maupun yang
mengkonsumsi sebuah informasi, bentuk dari objek data ini bisa berupa suatu
benda, peristiwa, event, atau suatu unit organisasional.
• Atribut
Suatu atribut menentukan properti suatu objek data dan digunakan untuk
menamai suatu objek data, mendeskripsikan karakteristiknya, atau menjadi
referensi bagi objek data lain.
• Relasi (Relationship)
Relationship berfungsi untuk menghubungkan antara objek data yang satu
dengan yang lainnya.
Dalam pemodelan data, ketiga elemen diatas dinotasikan menjadi
sebuah diagram ERD (Entity Relationship Diagram), diagram ini
menetapkan semua data yang disimpan, ditransformasi, dan diproduksi oleh
suatu perangkat lunak. Dalam pemodelan data yang dilakukan, digunakan
bentuk CDM (Conceptual Data Model) untuk menotasikan objek data dan
relasi yang ada, di bawah ini digambarkan diagram CDM yang telah dibuat :
24
nom or nom or
tmaster
nomornama barang
data ramal
nomortahunKw1Kw2Kw3Kw4jumlah
hasil ramal
nomortahuntrendindeks musimanhasil
user
id_usernamapassword
Gambar 4.7 Diagram CDM (Conceptual Data Model)
4.2.6 Pemodelan Fungsional
Dalam pemodelan fungsional ini, penulis menggunakan diagram
DFD (Data Flow Diagram) untuk menotasikan fungsi-fungsi dari sistem
yang mentrasformasikan informasi yang masuk ke sistem, fungsi-fungsi
tersebut dinotasikan dengan bentuk lingkaran, untuk informasi input atau
output digambarkan dengan notasi anak panah yang diberi label, sedangkan
entitas eksternal yang memproduksi data dan mengkonsumsi informasi
dinotasikan dengan gambar kotak. Keseluruhan fungsi dari sistem
digambarkan sebagai trasnformasi informasi tunggal, hal ini bisa dinotasikan
dengan bentuk konteks diagram, berikut konteks diagram dari sistem yang
dikembangkan:
perkiraan_permintaan_barang_masa_mendatangdata_penjualan_tahunan_dan_data_barangadmin
1
perangkat_lunak_peramalan
_penjualan
+
bagian produksi
25
Gambar 4.8 Diagram Konteks Sistem Informasi Peramalan Permintaan Barang
Diagram konteks di atas terdiri atas sebuah proses tunggal yang
merepresentasikan semua elemen perangkat lunak peramalan permintaan
barang, sementara untuk entitas eksternalnya yaitu bagian penjualan dan
bagian produksi. Entitas eksternal tersebut memproduksi informasi / data
yang dibutuhkan oleh sistem dan mengkonsumsi semua informasi yang
digenerasi oleh sistem, sedangkan simbol anak panah yang diberi label
merepresentasikan objek data yang mengalir.
DFD level 1 sistem informasi peramalan permintaan barang dapat
dilihat pada gambar berikut ini.
Gambar 4.9 DFD level 1 sistem informasi peramalan permintaan barang
perkiraan_permintaan_barang_masa_mendatang
data hasil peramalandata hasil peramalan
data hasil peramalan
data penjualan tahunan dan data barang
data_ penjualan tahunan
data_barangdata_penjualan_tahunan_dan_data_barangadmin
bagian produksi
1
olah data master
+ barang
penjualan tahunan
2
peramalan
+
peramalan
3
laporan
26
Untuk analisis sistem, lebih lengkapnya dapat dilihat pada dokumen teknis.
4.3 Implementasi (Coding)
4.3.1 Implementasi Modul Program
Table 4.11 Implementasi modul program
No. Antarmuka Hasil Implementasi Keterangan
1. Tampilan login Login.vb Halaman untuk tampilan login
admin
2. Tampilan utama Form1.vb Halaman tampilan utama
3. Tampilan input data
barang
Input data.vb Halaman untuk menginput
data barang
Untuk lebih lengkapnya implementasi program dapat dilihat dalam
dokumen teknis.
4.3.2 Implementasi Sistem
Untuk implementasi system, dibuat program aplikasi menggunakan
Visual Basic.Net dan MySQL dengan database SqlYog tools versi 5.1
27
4.3.2.1 Fungsi Trend
Sub mencari_Trend() Try SimpleButton4.PerformClick() dg7.Columns.Clear() dg7.Columns.Add(1, "Kwartal") For x As Integer = 0 To Dg1.RowCount - 1 dg7.Columns.Add(x, Dg1.Rows(x).Cells(0).Value) Next dg7.Columns.Add(1, "Rata-rata") dg7.Columns.Add(1, "B Kumulatif") dg7.Columns.Add(1, "Rata2 B Kumulatif") dg7.Columns.Add(1, "Index musiman") Dim y, j As Integer y = 1 For l As Integer = 1 To 5 dg7.Rows.Add() 'dg7.Rows(l).Cells(0).Value = "Kw " & l Next For j = 0 To Dg1.RowCount - 1 For k As Integer = 1 To 4 dg7.Rows(k).Cells(y).Value = Dg1.Rows(j).Cells(k).Value dg7.Rows(k).Cells(0).Value = "Kw " & k Next y += 1 Next dg7.Rows.RemoveAt(0) 'Mejumlahkan data kwartalan per tahun dg7.Rows.Add() dg7.Rows(4).Cells(0).Value = "jumlah" Dim hasil As Long For komlom As Integer = 1 To j hasil = 0 For baris As Integer = 0 To 3 hasil += dg7.Rows(baris).Cells(komlom).Value Next dg7.Rows(4).Cells(komlom).Value = hasil Next dg7.Rows(0).Cells(j + 2).Value = "0" dg7.Rows(1).Cells(j + 2).Value = dg6.Rows(0).Cells(5).Value dg7.Rows(2).Cells(j + 2).Value = dg6.Rows(0).Cells(5).Value * 2 dg7.Rows(3).Cells(j + 2).Value = (dg6.Rows(0).Cells(5).Value * 2) + dg6.Rows(0).Cells(5).Value hasil = 0 For bar As Integer = 0 To 3 hasil = 0 For kol As Integer = 1 To j hasil += dg7.Rows(bar).Cells(kol).Value Next dg7.Rows(bar).Cells(j + 1).Value = hasil / j Next
28
For p As Integer = 0 To 3 dg7.Rows(p).Cells(j + 3).Value = dg7.Rows(p).Cells(j + 1).Value - dg7.Rows(p).Cells(j + 2).Value Next Dim hasil1 As Long For baris1 As Integer = 0 To 3 hasil1 += dg7.Rows(baris1).Cells(j + 3).Value Next dg7.Rows(4).Cells(j + 3).Value = hasil1 Rata2B.Text = hasil1 Baris.Text = 4 TextEdit2.Text = hasil1 / 4 For t As Integer = 0 To 3 dg7.Rows(t).Cells(j + 4).Value = dg7.Rows(t).Cells(j + 3).Value / (hasil1 / 4) * 100 Next 4.3.2.2 Fungsi Trend
Dg8.Columns.Clear() Dg8.Columns.Add(1, "Tahun") Dg8.Columns.Add(1, "Kw" ) Dg8.Columns.Add(1, "Penjualan") Dg8.Columns.Add(1, "Trend") Dg8.Columns.Add(1, "Index musiman") Dg8.Columns.Add(1, "Normal") Dg8.Columns.Add(1, "Variasi Siklis Dan Random (SxR)") Dg8.Columns.Add(1, "Jumlah Bergerak tertimbang 3 bulan") Dg8.Columns.Add(1, "index siklis") Dg8.Columns(0).FillWeight = 50 Dg8.Columns(1).FillWeight = 25 Dg8.Columns(2).FillWeight = 50 Dg8.Columns(3).FillWeight = 40 Dg8.Columns(4).FillWeight = 40 For m As Integer = 0 To Dg8.Columns.Count - 1 Dg8.Columns(m).SortMode = DataGridViewColumnSortMode.NotSortable Next Dim jumlah As Integer For h As Integer = 1 To j For v As Integer = 0 To 3 jumlah += 1 Dg8.Rows.Add() Next Next Dim dg As Integer = 0
29
For i As Integer = 1 To j For row As Integer = 0 To 3 Dg8.Rows(dg).Cells(2).Value = dg7.Rows(row).Cells(i).Value dg += 1 Next Next Call Nambahin_Kuartal() Dim musim As Integer = 0 For mu As Integer = 0 To Dg8.RowCount - 1 If musim > 3 Then musim = 0 End If Dg8.Rows(mu).Cells(5).Value = (dg7.Rows(musim).Cells(j + 4).Value * Dg8.Rows(mu).Cells(3).Value) / 100 Dg8.Rows(mu).Cells(4).Value = dg7.Rows(musim).Cells(j + 4).Value musim += 1 Dg8.Rows(mu).Cells(6).Value = (Dg8.Rows(mu).Cells(2).Value / Dg8.Rows(mu).Cells(5).Value) * 100 Next Dim pk As Integer = 1 DgPangkat.Rows.Clear() For pangkat As Integer = 0 To Dg8.RowCount - 1 DgPangkat.Rows.Add() DgPangkat.Rows(0).Cells(0).Value = Dg8.Rows(0).Cells(6).Value Next For z As Integer = 1 To Dg8.RowCount - 1 DgPangkat.Rows(z).Cells(0).Value = Dg8.Rows(z).Cells(6).Value * 2 Next DgPangkat.Rows(Dg8.RowCount - 1).Cells(0).Value = Dg8.Rows(Dg8.RowCount - 1).Cells(6).Value * 1 For yx As Integer = 0 To (Dg8.RowCount - 1) - 1 If yx >= Dg8.RowCount Then Exit For End If Dg8.Rows(yx + 1).Cells(7).Value = Dg8.Rows(yx).Cells(6).Value + DgPangkat.Rows(yx + 1).Cells(0).Value + Dg8.Rows(yx + 1).Cells(6).Value Next Dg8.Rows(Dg8.RowCount - 1).Cells(7).Value = 0 For xy As Integer = 1 To (Dg8.RowCount - 1) - 1 Dg8.Rows(xy).Cells(8).Value = Dg8.Rows(xy).Cells(7).Value / 4 Next SimpleButton3.PerformClick() Catch ex As Exception MsgBox(ex.Message) End Try End Sub
30
4.3.2.3 Hasil Forcasting
Sub hasil_Forcasting() Try dg10.Rows.Clear() Dim j As Integer For j = 0 To Dg1.RowCount - 1 Next Dim baris3 As Integer = 0 For xx As Integer = 0 To Dg9.RowCount - 1 dg10.Rows.Add() If baris3 > 3 Then baris3 = 0 End If dg10.Rows(xx).Cells(4).Value = (Dg9.Rows(xx).Cells(8).Value * dg7.Rows(baris3).Cells(j + 4).Value) / 100 dg10.Rows(xx).Cells(1).Value = Dg9.Rows(xx).Cells(8).Value dg10.Rows(xx).Cells(2).Value = dg7.Rows(baris3).Cells(j + 4).Value dg10.Rows(xx).Cells(3).Value = 100 baris3 += 1 dg10.Rows(xx).Cells(0).Value = Dg9.Rows(xx).Cells(0).Value dg10.Rows(xx).Cells(5).Value = Dg9.Rows(xx).Cells(0).Value Next ComboBoxEdit1.Properties.Items.Clear() For w As Integer = 0 To dg10.RowCount - 1 Step 4 dg10.Rows(w).DefaultCellStyle.BackColor = Color.Azure Dg9.Rows(w).DefaultCellStyle.BackColor = Color.Azure ComboBoxEdit1.Properties.Items.Add(dg10.Rows(w).Cells(0).Value) For tmp As Integer = w To (w + 3) dg10.Rows(tmp).Cells(5).Value = dg10.Rows(w).Cells(5).Value Next Next Catch ex As Exception MsgBox(ex.Message) End Try End Sub
31
4.4 Pengujian
Tahap selanjutnya adalah proses pengujian perangkat lunak, pengertian
dari perangkat lunak menurut Myers adalah suatu proses menjalankan program
dengan maksud menemukan kesalahan (Myers, 1979), proses pengujian ini
dilakukan untuk memastikan perangkat lunak yang telah dibuat telah sesuai
dengan kebutuhan.
4.4.1 Lingkungan Pengujian
Lingkungan perangkat keras yang digunakan dalam proses pengujian
sistem informasi ini adalah sebagai berikut:
1. Processor Intel Core Duo
2. RAM 2 GB
3. Hard Disk 160 GB
4. Mouse
Untuk lingkungan perangkat lunak yang digunakan dalam pengujian
sistem informasi peramalan permintaan barang ini dideskripsikan dalam
penjelasan berikut:
1. Sistem Operasi Microsoft Windows XP Professional Edition SP 2
2. MySql Server 5.1 Sql Yog Inteprise
3. Vusual Studio Visual Basic 2008
Bentuk dari pengujian yang dilakukan adalah pengujian kebenaran
fungsional unit program, pengujian yang dilakukan menggunakan teknik
pengujian Black Box. Menurut Pressman (2002: 551), pengujian blackbox
dilakukan untuk menemukan kesalahan yang terjadi seperti fungsi yang tidak
32
benar/hilang, kesalahan interface, kesalahan struktur data, kesalahan kinerja,
atau kesalahan inisialisasi dan terminasi.
4.4.2 Rencana Pengujian
Tabel 4.12 Rencana Pengujian
No Bentuk pengujian Metode pengujian
Data uji yang digunakan
keterangan (tujuan)
1. Pengujian koneksi ke database
Black box data sembarangan dalam database
Melihat koneksi database
2. Pengujian input data barang, data penjualan bulanan
Black box Data sembarang dapat mewakili data
Melihat proses input data terjadi
3. Pengujian edit data Black box Data sembarang dapat mewakili data
Melihat proses edit data terjadi
4. Pengujian hapus data
Black box Data sembarang dapat mewakili data
Melihat proses hapus data terjadi
5. Pengujian pengelolaan peramalan
Black box Data sembarang dapat mewakili data
Melihat cetak hasil peramalan terjadi
4.4.3 Hasil Pengujian
Tabel 4.13 Hasil Pengujian menggunakan Black Box Testing
No Deskripsi Skenario Hasil yang
diharapkan
Hasil Nyata Hasil
1 Login 1. Memasukkan
username dan
password yang
benar
User dapat
masuk ke
halaman utama
User dapat
masuk ke
halaman utama
sesuai dengan
yang diharapkan
OK
33
2. Tidak mengisi
username dan
password
User tidak
dapat masuk ke
halaman utama
User tidak dapat
masuk ke
halaman utama
sesuai dengan
yang diharapkan
2 Tambah
barang
1. Memasukkan
data isian
barang secara
lengkap
Data barang
masuk ke
dalam tabel
barang dan
tersimpan pada
tabel tersebut
Data barang yang
dimasukkan
tersimpan sesuai
pada tabel barang
dalam database
OK
2. Memasukkan
data isian
barang secara
tidak lengkap
Keluar
peringatan
inputan tidak
boleh kosong
Peringatan
inputan tidak
boleh kosong
muncul sesuai
yang diharapkan
3 Input data
penjualan
bulanan
1. Memasukkan
data secara
lengkap dan
data isian
berupa angka
Data penjualan
kuartalan
masuk ke
dalam tabel
penjualan dan
tersimpan pada
tabel tersebut
Data penjualan
tahunan yang
dimasukkan
tersimpan sesuai
pada tabel
peramalan dalam
database
OK
2. Memasukkan
data secara tidak
lengkap dan
data isian selain
angka
Keluar
peringatan
inputan tidak
boleh kosong
dan harus diisi
berupa angka
Peringatan
inputan tidak
boleh kosong
dan harus diisi
berupa angka
muncul sesuai
yang diharapkan
34
6 Hitung
Peramalan
Memasukan
data penjualan
harus kurang
dari 3 tahun
dalam bentuk
kuartalan
Perhitungan
peramalan bisa
dilanjutkan
Perhitungan
peramalan bisa
dilanjutkan
OK
Pemilihan
periode
peramalan lebih
atau kurang dari
3 tahun
Keluar
Message Box
masa
peramalan
harus3 tahun
Message Box
masa peramalan
harus 3 tahun
berhasil muncul
7 Peramalan Melihat setiap
langkah proses
peramalan
dengan hasil
akhir muncul
hasil
peramalannya
Langkah-
langkah
peramalan tidak
ada yang
terlewati dan
hasil akhir
berupa hasil
peramalan
model yang
disesuaikan
Langkah-langkah
peramalan tidak
ada yang
terlewati dan
hasil akhir
berupa hasil
peramalan model
yang disesuaikan
OK
8 Lihat detail Melihat hasil Hasil Hasil peramalan OK