BAB 2 LANDAS AN TEORI
2.1 Peramalan 2.1.1 Definisi peramalan Peramalan adalah metode untuk memperkirakan suatu nilai di masa depan dengan menggunakan data masa lalu. Peramalan juga dapat diartikan sebagai seni dan ilmu untuk memperkirakan kejadian pada masa yang akan datang, sedangkan aktivitas peramalan merupakan suatu fungsi bisnis yang berusaha memperkirakan penjualan dan penggunaan suatu produk sehingga produk-produk itu dapat dibuat dalam kuantitas yang tepat (Gaspersz, 2002, hal.71). Peramalan bukanlah suatu dugaan , karena dugaan hanya mengestimasikan masa mendatang berdasarkan perkiraan saja sedangkan peramalan menggunakan perhitungan matematis sebagai bahan pertimbangan (Gross,1982,hal.2). M enurut Webster (1986,p3), peramalan adalah dugaan yang dibuat secara sederhana tentang apa yang akan terjadi di masa depan berdasarakan informasi yang tersedia saat ini. Dengan kata lain , peramalan adalah proses untuk menduga kejadian atau kondisi di masa mendatang berdasarkan data historis dan pengalaman untuk menemukan kecenderungan dari pola sistematis yang bertujuan memperkecil resiko kesalahan.
2.1.2 Tujuan peramalan Dalam dunia usaha sangat penting diperkirakan hal-hal yang terjadi di masa depan sebagai dasar untuk pengambilan keputusan, terutama dunia usaha itu merupakan bagian dari kehidupan sosial, di mana segala sesuatu yang terjadi serba tidak pasti, sukar
11
diprediksi dengan tepat. Oleh karena itu perlu dilakukan sebuah peramalan / rencana. Peramalan yang dibuat selalu diupayakan agar dapat: a. M eminimumkan pengaruh ketidakpastian terhadap perusahaan b. Peramalan
bertujuan
mendapatkan
meminimumkan kesalahan
peramalan
(forecast)
yang
bisa
meramal (forecast error) yang biasanya diukur
dengan M SE (Mean Squared Error), MAE (Mean Absolute Error),
dan
sebagainya (Subagyo, 1986 : 4).
2.1.3 Langkah-Langkah Peramalan Peramalan yang baik adalah peramalan yang dilakukan dengan mengikuti langkah-langkah atau prosedur penyusunan yang baik yang akan menentukan kualitas atau mutu dari hasil peramalan yang disusun. Pada dasarnya ada tiga langkah peramalan yang penting, yaitu (Assauri, 1984, p5): 1) M enganalisis data yang lalu, tahap ini berguna untuk pola yang terjadi pada masa lalu. 2) M enentukan metode yang dipergunakan. M etode yang baik adalah metode yang memberikan hasil ramalan yang tidak jauh berbeda dengan kenyataan yang terjadi. 3) M emproyeksikan
data yang lalu
dengan
menggunakan
metode yang
dipergunakan, dan mempertimbangkan adanya beberapa faktor perubahan (perubahan kebijakan-kebijakan yang mungkin terjadi, termasuk perubahan kebijakan pemerintah, perkembangan potensi masyarakat, perkembangan teknologi dan penemuan-penemuan baru).
12
2.1.4 Jenis-Jenis Metode Peramalan Peramalan dapat dibedakan atas dua macam, yaitu (Assauri, 1984, p4) : a. Peramalan Kuantitatif : menggunakan model matematis dengan data masa lalu. Tujuannya mempelajari apa yang telah terjadi di masa lalu untuk meramalkan nilai- nilai yang akan datang. b. Peramalan Kualitatif : menggunakan faktor seperti intuisi, emosi, pengalaman. Hasil peramalan yang dibuat sangat tergantung pada orang yang membuatnya, karena ditentukan berdasarkan pemikiran yang bersifat intuisi, judgment atau pendapat, dan pengetahuan serta pengalaman dari penyusunnya.
Peramalan kuantitatif adalah peramalan yang didasarkan atas data kuantitatif pada masa lalu.
Hasil peramalan yang dibuat sangat tergantung pada metode yang
dipergunakan dalam peramalan tersebut maupun besarnya faktor yang tidak diduga (outliers) yang mempengaruhi nilai ramalan. Peramalan kuantitatif dapat digunakan bila terdapat tiga kondisi berikut: tersedianya informasi masa lalu, informasi tersebut dapay dikuantitatifkan dalam bentik data numerik, dan dapat diasumsikan bahwa beberapa aspek pola masa lalu akan terus berlanjut di masa mendatang.(M akridakis et al, 1999, pp19-20). Peramalan kuantitatif dapat dikelompokkan kedalam dua jenis, yaitu: 1. Peramalan yang didasarkan atas penggunaan analisa pola hubungan antara variabel yang akan diperkirakan dengan variabel waktu yang disebut deret waktu (time series). M odel deret berskala melakukan pendugaan masa depan berdasarkan nilai masa lalu dari suatu variabel untuk menemuka pola dalam deret data historis dan mengeksploitasikan .
13
2. Peramalan yang didasarkan atas penggunaan analisa pola hubungan antara variabel yang akan diperkirakan dnegan variabel lain yang mempengaruhinya yang disebut model kausal/ sebab akibat.
M etode peramalan kualitatif tidak memerlukan data yang serupa seperti peramalan kuantitatif. Input yang dibutuhkan tergantung pada metode tertentu dan biasanya merupakan hasil dari pemikiran intuitif, pertimbangan , dan pengetahuan yang telah didapat. Peramalan kualitatif dapat dikelompokkan kedalam dua jenis, yaitu : 1. M etode eksploratoris (seperti Dalphi, kurva-S, analogi, dan penelitian morfologis) dimulai dari masa lalu dan masa kini sebagai titik awalnya dan bergerak ke arah masa depan secara heuristik, seringkali dengan melihat semua kemungkinan yang ada. 2. M etode normatif (seperti matriks keputusan, pohon relevansi, dan analisis sistem) dimulai dengan menetapkan sasaran dan tujuan yang akan datang, kemudian bekerja mundur untuk melihat apakah hal ini dapat dicapai, berdasarkan kendala, sumber daya, dan teknologi yang rersedia. M enurut Hyndman (2003) peramalan dapat dihitung juga dengan metode theta , tetapi metode theta lebih kompleks dan memusingkan karena banyaknya unsur aljabar yang perlu dijabarkan terlebih dahulu.
2.1.5 Beberapa Metode Deret Waktu (Time Series) 2.1.5.1 Moving Average M oving average merupakan metode yang paling sering digunakan dan paling standar.
14
Moving average adalah suatu metode peramalan umum dan mudah untuk menggunakan
alat-alat yang tersedia untuk analisis teknis. Moving average
menyediakan metode sederhana untuk pemulusan data masa lalu. M etode ini berguna untuk peramalan ketika tidak terjadi tren. Jika terdapat tren, gunakan estimasi berbeda untuk mempertimbangkannya. Hal ini disebut dengan ”bergerak” karena sebagai data baru yang tersedia, data yang tertua tidak digunakan lagi (M akridakis et all, 1999). Tujuan utama dari penggunaan rata-rata bergerak adalah untuk menghilangkan atau mengurangi acakan dalam deret waktu. Teknik rata-rata bergerak dalam deret waktu terdiri dari pengambilan suatu kumpulan nilai-nilai yang diobservasi, mendapatkan rata-rata dari nilai ini, dan kemudian menggunakan nilai rata-rata tersebut sebagai ramalan untukperiode yang akan datang. (Assauri,1984,hal23) Peramalan dengan teknik moving average melakukan perhitungan terhadap nilai data yang paling baru sedangkan data yang lama akan dihapus. Nilai rata-rata dihitung berdasarkan jumlah data, yang yang angka rata-ratanya bergeraknya ditentukan dari harga 1 sampai N data yang dimiliki. Moving average dihitung dengan menggunakan rumus sebagai berikut: =
∑
(2.1)
Di mana t adalah nilai yang paling akhir dan t+1 adalah periode berikutnya, untuk periode mana suatu ramalan dibuat. = ramalan untuk periode yang berikut, t+1 Xt,t-1,t-2 = nilai observasi/sebenarnya dari variabel itu pada periode t,t-1,t-2,..... N = Jumlah observasi yang digunakan dalam menghitung rata-rata bergerak
15
Dalam model moving average dapat dilihat bahwa semua data observasi memiliki bobot yang sama yang membentuk rata-ratanya. Padahal data observasi terbaru seharusnya memiliki bobot yang lebih besar dibandingkan dnegan data observasi dimasa lalu. Hal ini dipandang sebagai kelemahan dalam metode moving average. 2.1.5.2 Exponential Smoothing M etode exponential smoothing adalah metode yang menunjukkan pembobotan menurun secara eksponensial terhadap nilai pengamatan yang lebih tua. Terdapat satu atau lebih parameter penulisan yang ditentukan secara eksplisit, dan hasil pilhan ini menetukan bobot yang dikenakan pada nilai observasi. (M akridakis et all, 1999, p78). M enurut Billah (2006) metode exponential smoothing terdiri dari simple exponential smoothing, trend, dan musiman. Beberapa keuntungan dari penggunaan metode exponential smoothing adalah banyak mengurangi masalah penyimpanan data., sehingga tidak perlu lagi menyimpan semua data historis atau sebagian. Hanya pengamatan terakhir, ramalan terakhir, dan suatu nilai konstanta yang harus disimpan. (M akridakis et all, 1999, p103-104). M etode ini dipergunakan secara luas didalam peramalan karena sederhana, efisien didalam perhitungan ramalan, mudah disesuaikan dengan perubahan data, dam ketelitian metode ini cukup besar M etode ini digunakan untuk melakukan pemulusan terhadap suatu deret berkala dengan membuat rata-rata tertimbang dari sederetan data yang lalu. M etode ini sangat efektif untuk peramalan jangka pendek dan tidak membutuhkan banyak data. M etode exponential smoothing cocok untuk data yang bergerak acak keatas dan kebawah secara terus menerus berarti tidak ada tren maupun musiman. 1
′
(2.2)
16
Di mana 0< <1 adalah faktor pemulusan. Semakin kecil nilai alpha, semakin mulus suatu data. Dengan nilai Y’(1) untuk inisial nilai ramalan didekati dengan nilai rata-rata ( ) atau ′
=
′
+α
-
′
)
(2.3)
2.1.5.3 Metode Winters Apabila suatu data time series diketahui adanya pola musiman disamping pola data trend, maka metode winters merupakan satu-satunya metode pendekatan pemulusan yang banyak digunakan. M enurut M akridakis, Wheelright, dan M cGee (p122-127,1999), metode winters merupakan metode yang dapat menangani faktor musiman dan tren secara langsung. M etode ini didasarkan atas tiga persamaan pemulusan dengan tiga paramater, yaitu satu untuk unsur stasioner, satu untuk trend, dan satu untuk musiman. Keuntungan dari metode winters adalah memiliki kemampuan yang sangat baik dalam meramalkan data yang memiliki pola trend dan musiman.
M etode winters
digunakan untuk meramalkan suatu hasil yang disesuaikan dengan variasi trend dan musiman yang tidak dapat diatasi oleh metode moving average dan metode exponential smoothing. M etode winters menyediakan 3 parameter untuk memperhalus nilai base, trend , dan musiman. Persamaan dasar untuk metode winters adalah sebagai berikut: 1.Pemulusan Keseluruhan St = α
Xt + (1 − α ) ( S t−1 + bt −1 ) I t− L
(2.4)
17
2. Pemulusan trend bt = γ (S t − S t−1 ) + (1 − γ )bt−1
(2.5)
3. Pemulusan musiman Xt + (1 − β ) I t −L St
(2.6)
Ft +m = ( S t + bt m)I t − L+m
(2.7)
It = β 4. Ramalan
Di mana L adalah panjang musiman (misal jumlah bulan atau kuartal dalam suatu tahun), b adalah komponen trend, I adalah faktor penyesuaian musiman, dan Ft+m adalah ramalan untuk m periode ke muka. Persamaan 2.6 dapat dibandingkan dengan indeks musiman yang merupakan rasio antara nilai sekarang dari deret data,Xt, dibagi dengan nilai pemulusan tunggal yang sekarang untuk deret data tersebut, St . Jika Xt lebih besar daripada St, maka rasio tersebut akan lebih besar daripada 1, sedangkan jika Xt lebih kecil daripada St, maka rasio tersebut akan
lebih kecil daripada 1. Untuk memahami metode ini kita perlu
menyadari bahwa St merupakan nilai pemulusan (rata-rata) dari deret data yang tidak termasuk unsur musiman. Juga perlu diingat bahwa Xt mencakup adanya kerandoman dalam deret data. Untuk menghaluskan keacakan ini, persamaan 2.6 membobot faktor musiman yang dihitung paling akhir dengan β dan angka musiman paling akhir pada musiman yang sama dengan (1- β ). (Faktor musiman sebelum ini dihitung pada periode t-L, karena L adalah panjang musiman).
18
Persamaan 2.5 tepat sama dengan persamaan dari Holt untuk pemulusan trend, yaitu
bt = γ ( S t −S t−1 ) + (1 − γ )bt −1
(2.8)
Persamaan 2.4 berbeda sedikit dari persamaan
S t = αX t + (1 − α ) ( S t−1 + bt −1 )
(2.9)
dari Holt di mana unsur pertamanya dibagi dengan angka musiman It-L. Hal ini dilakukan untuk menghilangkan musiman (mengeliminasi fluktuasi musiman dari) Xt. Penyesuian ini dapat digambarkan dengan memperhatikan kasus di mana It-L lebih besar daripada 1, yang terjadi pada saat nilai periode t-L lebih besar daripada ratarata dalam musimannya. M embagi Xt dengan bilangan yang lebih besar daripada 1 ini menghasilkan suatu nilai yang lebih kecil daripada nilai semula. Persentase penurunan ini sama dengan banyaknya unsur musiman pada periode t-L yang lebih besar daripada nilai rata-rata. Penyesuaian yang sebaliknya terjadi bilamana angka musiman lebih kecil daripada 1. Nilai It-L digunakan dalam perhitungan ini karena It tidak dapat dihitung sebelum St diketahui dari persamaan pemulusan keseluruhan. M etode winters juga memiliki kelemahan , kelemahan utama dari metode winters yang menghambat pemakaiannya secara luas yaitu metode ini membutuhkan tiga parameter pemulusan (alpha, beta, gamma) yang dapat bernilai antara 0 dan 1, sehingga banyak kombinasi yang harus dicobakan sebelum nilai parameter yang optimal ditentukan. M etode alternatif yang dapat mengurangi keraguan tentang nilai optimal adalah menacari nilai taksiran awal yang lebih baik, lalu menetapkan nilai yang kecil untuk ketiga parameter pemulusan (sekitar 0,1 sampai dengan 0,3). Nilai 0,1 membuat ramalan bersifat terlalu berhati-hati, sedangkan nilai 0,3 memberikan sistem yang lebih responsif.
19
Karena adanya himpunan pilihan nilai yang dipersempit ini, maka metode ini biasanya dipandang sebagai metode yang lebih mudah digunakan (Makridakis et al.,1999.p137). Dalam metode ini nilai-nilai alpha, beta, dan gamma untuk meminimumkan MSE (Mean Squared Error) atau MAPE (ABSOLUTE PERCENTAGE ERROR).
2.1.6 Ukuran Ketepatan Peramalan
Dalam semua situasi peramalan mengandung derajat ketidakpastian. Kita mengenali fakta ini dengan memasukkan unsur kesalahan (error) dalam perumusan sebuah peramalan deret waktu. Sumber penyimpangan dalam peramalan bukan hanya disebabkan oleh unsur error , tetapi ketidakmampuan suatu model peramalan mengenali unsur yang lain dalam deret data juga mempengaruhi besarnya penyimpangan dalam peramalan. Jadi besarnya penyimpangan hasil peramalan bisa disebabkan oleh besarnya fajtor yang tidak diduga (outliers) di mana tidak ada metode peramalan yang mampu menghasilkan peramalan yang akurat, atau bisa juga disebabkan metode peramalan yang digunakan tidak dapat memprediksi dengan tepat komponen trend, komponen musiman, atau komponen siklus yang mungkin terdapat dalam deret data, yang berarti metode yang digunakan tidak tepat (Bowerman dan O’Connell, p12,1987). Jika Xi merupakan data aktual untuk periode i dan Fi merupakan ramalan (atau nilai kecocokan / fitted value) untuk periode yang sama, maka kesalahan didefinisikan sebagai ei = Xi-Fi
(2.10)
20
Jika terdapat nilai pengamatan dan ramalan untuk n periode waktu, maka akan terdapat n buah galat dan ukuran statistik standar berikut yang dapat didefinisikan: (Makridakis et all, 1999) Nilai Tengah Galat (MEAN ERROR) (2.11)
1 n ME = ∑ ei n i=1 Nilai Tengah Galat Absolut (MEAN ABSOLUTE ERROR) 1 n MAE = ∑ ei n Jumlah Kuadrat Galat i=1(SUM OF SQUARED ERROR) n
(2.12)
(2.13)
2
SSE = ∑ ei I =1
Nilai Tengah Galat Kuadrat (MEAN SQUARED ERROR) 1 n MSE = ∑ ei n I =1
2
(2.14)
Deviasi Standar Galat (STANDARD DEVIATION OF ERROR) SDE =
n
∑= ei
(2.15)
2
/(n − 1)
I 1
Ada pula ukuran-ukuran ketepatan lain yang sering digunakan untuk mengetahui ketepatan suatu metode peramalan dalam memodelkan data deret waktu , yaitu nilai MAPE (MEAN PERCENTAGE ERROR), MSD (MEAN SQUARED DEVIATION), MAD (MEAN ABSOLUTE DEVIATION) Nilai Tengah Galat Persentase Absolut (MEAN ABSOLUTE PERCENTAGE ERROR) MAPE merupakan ukuran ketepan relatif yang digunakan untuk mengetahui persentase penyimpangan hasil peramalan , dengan persamaan sebagai berikut
21
MAPE =
1 n PEi n∑ i =1
(2.16)
Galat Persentase (PERCENTAGE ERROR) ⎛ Xt − Ft ⎞ PEt = ⎜ ⎟ × 100% ⎝ Xt ⎠
(2.17)
MAD menyatakan penyimpangan ramalan dalam unit yang sama pada data, dengan merata-ratakan nilai absolut error (penyimpangan) seluruh hasil peramalan. Nilai absolut berguna untuk menghindari nilai penyimpangan positif dan penyimpangan negatif saling meniadakan. Persamaannya adalah sebagai berikut : ∑
|
′
|
(2.18)
Cara lain untuk menghindari penyimpangan nilai positif dan penyimpangan negatif saling meniadakan adalah dengan mengkuadratkan nilai kesalahan tersebut. MSD merupakan ukuran penyimpangan ramalan dengan merata-ratakan kuadrat error (penyimpangan semua ramalan). Persamaannya adalah sebagai berikut: Tujuan optimalisasi statistik seringkali adalah untuk memilih suatu model agar nilai MSD minimal , tetapi ukuran ini mempunyai 2 kelemahan. Pertama ukuran ini menunjukkan pencocokkan (fitting) suatu model terhadap data historis. Pencocokan seperti ini tidak selalu mengimplikasikan peramalan yang baik. Suatu model yang terlalu cocok (over fitting) dengan deret data berarti sama dengan memasukkan unsur random sebagai bagian proses bangkitan, adalah sama buruknya dengan dengan tidak berhasil mengenai pola non acak dalam data. Kekurangan kedua dalam MSD sebagai
22
ukuran ketepatan model adalah berhubungan dengan kenyataan bahwa metode berbeda akan menggunakan prosedur yang berbeda pula dalam fase pencocokan. Dalam fase peramalan penggunaan MSD dan MAD sebagai suatu ukuran ketepatan juga dapat menimbulkan masalah. Ukuran ini tidak memudahkan perbandingan antar deret berskala yang berbeda dan untuk selang waktu yang berlainan, karena MSD dan MAD merupakan ukuran absolut yang sangat tergantung pada skala dari data deret waktu. Lagi pula, interpretasi nilai MSD tidak bersifat intuitif, karena ukuran ini menyangkut pengkuadratan sederetan nilai. Karena alasan tersebut dalam hubungan dengan keterbatasan MSD dan MAD sebagai ukuran ketepatan peramalan, maka dipakai ukuran alternatif sebagai sebagai salah satu indikasi ketepatan dalam peramalan , yaitu MAPE. Pola data untuk time series dibedakan menjadi pola horison, pola musiman, pola siklis, dan pola tren. 1. Pola horison terjadi bila data berfluktuasi disekitar nilai rata-rata yang konstan. Suatu produk yang penjualannya tidak meningkat atau menurun selama waktu tertentu termasuk jenis ini. 2. Pola musiman terjadi bila data dipengaruhi oleh faktor musiman (misal pada bulan atau hari-hari tertentu). 3. Pola siklis terjadi bila data dipengaruhi oleh fluktuasi ekonomi jangka panjang 4. Pola trend terjadi bila terdapat kecenderungan kenaikan atau penurunan jangka panjang dalam data.
23
Gambar 2.1 Pola Data
Model time series secara umum adalah Yt = f (t,Yt-1, Yt-2,...,Yt-p)
(2.19)
Untuk memilih model terbaik pada analisis deret waktu , kriteria pemilihan model biasanya didasarkan nilai MSE (Mean Square Error), MAPE(Mean Absolute Percentage Error), MAD(Mean Absolute Deviation), dan MSD(Mean Square Deviation) yang terkecil.
24
2.2 Penjualan 2.2.1 Pengertian Penjualan
Bagi perusahaan, penjualan merupakan sumber utama pendapatan perusahaan. Pendapatan yang diperoleh dipergunakan perusahaan untuk membiayai segala kegiatannya maupun untuk mengembangkan usaha. “Penjualan adalah perencanaan, pelaksanaan dan pengendalian program-program kontak muka, termasuk pengalokasian, penarikan, pemilihan, pelatihan dan pemotivasian yang dirancang untuk mencapai tujuan penjualan perusahaan”.
2.2.2 Tujuan Penjualan
Tujuan utama suatu perusahaan memproduksi suatu barang adalah untuk memperoleh keuntungan atau laba. Suatu keuntungan atau laba dapat diperoleh melalui penghasilan dengan melakukan kegiatan penjualan. Faktor perusahaan kondisi pasar terutama tentang jumlah permintaan model yang diinginkan dan sebagainya, hal tersebut menjadi penawaran dari setiap produknya yang terjadi kepada para masyarakat atau para konsumen (Sugiarto, 2000).
2.2.3 Faktor-faktor yang mempengaruhi volume penjualan
Menurut Swastha, Basu, dkk (1990), tinggi rendahnya volume penjualan sangat tergantung dari penjualan itu sendiri. Seiring dalam kenyataan volume penjualan juga banyak dipengaruhi oleh beberapa faktor, yaitu antara lain: a. Faktor Intern Faktor-faktor ini berasal dari perusahaan yang menyangkut kebijaksanaan yang diambil perusahaan, meliputi:
25
1) Promosi Dengan promosi, informasi mengenai produk perusahaan dapat diketahui oleh konsumen
sehingga
akan
terdorong
terjadinya
permintaan
yang
menyebabkan terjadinya pembelian. 2) Harga Harga akan berpengaruh terhadap volume penjualan karena konsumen dalam proses pengambilan keputusan untuk membeli juga mempertimbangkan harga. Harga yang lebih bersaing tentunya akan lebih menarik minat konsumen. 3) Distribusi Apabila saluran distribusinya panjang dan mudah menyebarluas di berbagai daerah maka konsumen akan mudah mendapatkan produk tersebut. 4) Fasilitas dan Pelayanan yang diberikan Hal ini meliputi mudah tidaknya produk dijangkau konsumen, pelayanan penjualan, sistem pembayaran dan kemudahan lainnya. 5) Produk Produk dengan kualitas yang tinggi akan lebih menarik konsumen dari para produk yang mutunya rendah. Demikian juga produk yang tidak sesuai dengan kebutuhan akan kurang disukai. b. Faktor Ekstern Faktor ini berasal dari luar perusahaan yang meliputi: 1) Persaingan
26
Persaingan merupakan pengaruh yang cukup besar terhadap volume penjualan. Dengan adanya persaingan maka pasaran tidak hanya dikuasai oleh seorang pengusaha. 2) Peraturan Pemerintah Peraturan pemerintah juga dapat mempengaruhi volume penjualan misalnya pajak, peraturan, perijinan dan sebagainya. 3) Perubahan Selera Konsumen Dengan berubahnya selera konsumen, maka konsumen akan beralih pada produknya yang lain. Dengan demikian permintaan akan suatu jenis produk tentu akan berkurang dan akan sangat berpengaruh terhadap volume penjualan produk tersebut.
2.3 UML (Unified Modeling Language)
UML adalah bahasa standar untuk mebuat cetak biru dari piranti lunak. UML dapat
digunakan
untuk
visualisasi
dan
menentukan,
membangun
serta
mendokumentasikan hasil kerja dari sistem yang dirancang untuk piranti lunak (Booch, Rumbaugh, dan Jacobson, 1998, p13). Artifact dapat berupa model, deskripsi atau perangkat lunak) dari system perangkat lunak, seperti pada pemodelan bisnis dan system non perangkat lunak lainnya. UML tidak hanya digunakan dalam proses pemodelan perangkat lunak, namun hampir dalam semua bidang yang membutuhkan pemodelan. Bagian-bagian utama dari UML adalah view, diagram, model element, dan general mechanism. a. View
27
View digunakan untuk melihat sistem yang dimodelkan dari beberapa aspek yang berbeda. View bukan melihat grafik, tapi merupakan suatu abstraksi yang berisi sejumlah diagram. Beberapa jenis view dalam UML antara lain: use case view, logical view, component view, concurrency view, dan deployment view. b. Use case view Mendeskripsikan fungsionalitas sistem yang seharusnya dilakukan sesuai yang diinginkan external actors. Aktor yang berinteraksi dengan sistem dapat berupa user atau sistem lainnya. View ini digambarkan dalam use case diagram dan kadang-kadang dengan activity. View ini digunakan terutama untuk pelanggan , perancang (designer), pengembang (developer), dan penguji sistem (tester). c. Logical view Mendeskripsikan bagaimana fungsionalitas dari sistem, struktur statis (class, object,
dan
relationship )
dan
kolaborasi
dinamis
yang
terjadi
ketika object mengirim pesan ke object lain dalam suatu fungsi tertentu. View ini digambarkan dalam class diagrams untuk struktur statis dan dalam state, sequence, collaboration, dan activity diagram untuk model dinamisnya. View ini digunakan untuk perancang (designer) dan pengembang (developer). d. Component view Mendeskripsikan implementasi dan ketergantungan modul. Komponen yang merupakan tipe lainnya dari code module diperlihatkan dengan struktur dan ketergantungannya juga alokasi sumber daya komponen dan informasi administratif lainnya.
28
View ini
digambarkan
dalam component
view dan
digunakan
untuk
pengembang (developer). e. Concurrency view Membagi sistem ke dalam proses dan prosesor.View ini digambarkan dalam diagram dinamis (state, sequence, collaboration, dan activity diagram) dan diagram implementasi (component dan deployment diagram) serta digunakan untuk pengembang (developer), pengintegrasi (integrator), dan penguji (tester). f. Deployment view Mendeskripsikan fisik dari sistem seperti komputer dan perangkat (nodes) dan bagaimana hubungannya dengan lainnya. View ini digambarkan dalam deployment diagramsdan digunakan untuk pengembang (developer), pengintegrasi (integrator), dan penguji (tester). g. Diagram Diagram berbentuk grafik yang menunjukkan simbol elemen model yang disusun untuk mengilustrasikan bagian atau aspek tertentu dari sistem. Sebuah diagram merupakan bagian dari suatu view tertentu dan ketika digambarkan biasanya dialokasikan untuk view tertentu. Adapun jenis diagram antara lain : 1. Use case diagram 2. Class diagram 3. Component diagram 4. Deployment diagram 5. State diagram 6. Sequence Diagram
29
7. Collaboration diagram 8. Activity diagram Penulis dalam skripsi ini menggunakan use case diagram, sequence diagram, dan activity diagram. 2.3.1 Use case Diagram
Use case adalah abstraksi dari interaksi antara system dan actor (Booch, Rumbaugh, dan Jacobson, 1998, p97). Use case bekerja dengan cara mendeskripsikan tipe interaksi antara user sebuah system dengan sistemnya sendiri melalui sebuah cerita bagaimana
sebuah
system
dipakai. Use
case
merupakan
konstruksi
untuk
mendeskripsikan bagaimana system akan terlihat di mata user. Sedangkan use case diagram memfasilitasi komunikasi diantara analis dan pengguna serta antara analis dan client. Use case diagram menjelaskan manfaat suatu sistem jika dilihat menurut pandangan orang yang berada di luar sistem. Diagram ini menunjukkan fungsionalitas suatu sistem atau kelas dan bagaimana sistem tersebut berinteraksi dengan dunia luar. Use case diagram dapat digunakan selama proses analisis untuk menangkap requirements sistem dan untuk memahami bagaimana sistem seharusnya bekerja. Selama tahap desain, use case diagram berperan untuk menetapkan perilaku (behavior) sistem saat diimplementasikan. Dalam sebuah model mungkin terdapat satu atau beberapa use case diagram. Kebutuhan atau requirements sistem adalah fungsionalitas apa yang harus disediakan oleh sistem kemudian didokumentasikan pada model use case yang menggambarkan fungsi sistem yang diharapkan (use case), dan yang mengelilinginya (actor), serta hubungan antara actor dengan use case (use case diagram) itu sendiri.
30
Gambar 2.2 U se case diagram dalam UML
2.3.2 Sequence Diagram
Sequence Diagram merupakan sebuah diagram yang menggambarkan interaksi antar objek di dalam sebuah system (Booch, Rumbaugh, dan Jacobson, 1998, p97. Interaksi tersebut berupa message yang digambarkan terhadap waktu. Sequence Diagram terdiri dari dimensi horizontal (objek-objek) dan dimensi vertical (waktu). Diagram ini juga menggambarkan urutan even yang terjadi. Dan lebih detail dalam menggambarkan aliran data, termasuk data atau behavior yang dikirimkan atau diterima.
31
Gambar 2.3 Sequence Diagram dalam UML 2.3.3 Activity diagram
Menggambarkan
rangkaian
aliran
dari
aktivitas,
digunakan
untuk
mendeskripsikan aktifitas yang dibentuk dalam suatu operasi sehingga dapat juga digunakan untuk aktifitas lainnya seperti use case atau interaksi (Booch, Rumbaugh, dan Jacobson, 1998, p97).
32
Gambar 2.4 Activity Diagram dalam UML
Tujuan Penggunaan UML 1. Memberikan bahasa pemodelan yang bebas dari berbagai bahas pemrograman dan proses rekayasa. 2. Menyatukan praktek-praktek terbaik yang terdapat dalam pemodelan. 3. Memberikan model yang siap pakai, bahsa pemodelan visual yang ekspresif untuk mengembangkan dan saling menukar model dengan mudah dan dimengerti secara umum. 4. UML bisa juga berfungsi sebagai sebuah (blue print) cetak biru karena sangat lengkap dan detail. Dengan cetak biru ini maka akan bias diketahui informasi secara detail tentang coding program atau bahkan membaca program dan menginterpretasikan kembali ke dalam bentuk diagram (reserve enginering).
33
2.4 Berbasis Komputer
Berbasis komputer adalah semua perhitungan, aplikasinya dikerjakan dengan menggunakan komputer. Rekayasa piranti lunak pertama kali diperkenalkan oleh Fritz Bauzer sebagai penetepan dan penggunaan prinsip-prinsip rekayasa dalam usaha mendapatkan piranti lunak yang ekonomis, yaitu piranti lunak yang terpercaya dan bekerja efisiensi pada mesin atau komputer (Pressman,2001).
2.4.1 Waterfall Model WATERFALL MODEL
Gambar 2.5 Waterfall Model
34
1. Rekayasa sistem (System Engineering) Karena perangkat lunak merupakan bagian dari sebuah sistem yang lebih besar, maka aktivasi ini dimulai dengan penetapan kebutuhan dari semua elemen sistem. Gambaran sistem ini penting jika perangkat lunak harus berinteraksi dengan elemen-elemen lain , seperti hardware, manusia, dan database. 2. Analisis kebutuhan perangkat lunak (Software Requirement Analysis) Analisis dilakukan untuk mengetahui kebutuhan piranti lunak, fungsi-fungsi yang dibutuhkan, kemampuan piranti lunak dan antarmuka piranti lunak tersebut. 3. Perancangan (Design) Peranacangan dititikberatkan pada empat atribut program, yaitu stuktur data, arsitektur piranti lunak, rincian prosedur, dan karakter antarmuka. Proses perancangan menerjemahkan kebutuhan kedalam sebuah representasi perangkat lunak yang dapat dinilai kualitasnya sebelum dilakukan pengkodean. 4. Pengkodean (Coding) Aktivitas yang dilakukan adalah memindahkan hasil perancangan menjadi suatu bentuk yang dapat dimengerti oleh mesin, yaitu dengan membuat program. 5. Pengujian (Testing) Tahap pengujian perlu dilakukan agar output yang dihasilkan oleh program sesuai dengan yang diharapkan. Pengujian dilakukan secara menyeluruh hingga semua perintah dan fungsi telah diuji. 6. Pemeliharaan (Maintenance) Karena kebutuhan pemakai selalu meningkat, makam piranti lunak yang telah selesai dibuat perlu dipelihara agar dapat mengantisipasi kebutuhan pemakai
35
terhadap fungsi-fungsi baru yang dapat timbul karena munculnya sistem operasi baru dan perangkat keras baru.
2.4.2
Diagram Alir (Flowchart)
Diagram alir merupakan urutan semua proses yang harus dijalankan untuk mencapai tujuan yang diinginkan dalam sebuah sistem (Pressman,2002,p476). Diagram ini dinyatakan dengan simbol. Flowchart berguna sebagai sarana pembantu untuk menunjukkan bagaimana bekerjanya program yang diusulkan serta sebagai sarana untuk memahami operasi-operasi dari sebuah program. Flowchart merupakan gambaran hasil pemikiran dalam menganalisa suatu masalah dengan komputer. Flowhart yang dihasilkan antara satu pemogram dengan pemogram lainnya dapat bervariasi. Flowchart terdiri dari tiga bagian utama, yaitu: • Input • Proses • Output
Gambar 2.6 Beberapa Gambar Pada Diagram Alir
36
2.4.3 Interaksi Manusia dan Komputer
Suatu program yang baik harus bersifat user friendly. Shneiderman (2005) menjelaskan lima kriteria yang harus dipenuhi oleh program user friendly, yaitu: 1. Waktu belajar yang tidak lama 2. Kecepatan penyajian informasi yang tepat 3. Tingkat kesalahan pemakaian yang rendah 4. Penghafalan sesudah melampui jangka waktu 5. Kepuasan user Untuk merancang sistem interaksi interaksi manusia dan komputer yang baik, harus memperhatikan delapan aturan emas dibawah ini : 1. Consistency (konsisten) 2. Enable frequent user to use shortcuts (menyediakan fasilitas shortcut untuk pengguna mahir) 3. Offer informative feed back (memberikan umpan balik yang informatif) 4. Design dialog to yield closer (pengorganisasian yang baik sehingga pengguna mengetahui kapan awal dan akhir dari suatu aksi) 5. Offer simple error handling (penanganan kesalahan yang sederhana) 6. Permit easy reversal handling (mengizinkan pmebalikan aksi yang mudah) 7. Support internal locus of control (pemakai menguasai sistem) 8. Reduce short term memory lost (mengurangi beban ingatan jangka pendek)
Keuntungan penggunaan perangkat bantu untuk mengembangkan user interface menurut Sentosa (1997, p7) yaitu : 1. User interface yang dihasilkan lebih baik.
37
2. Program user interface-nya menjadi mudah ditulis dan lebih ekonomis untuk dipelihara.
2.4.4 Perancangan Layar
. Rancangan layar dibuat sedemikian rupa sehingga memudahkan pengguna untuk berinteraksi dengan sistem. Smith dan Mosier (dikutip oleh Shneiderman, 2005) mengusulkan pedoman perancangan layar yang baik sebagai berikut: 1. Konsistensi tampilan data. Istilah, singkatan, format, dan lain sebagainya harus standar. 2. Beban ingatan yang seminimal mungkin bagi pengguna. Pengguna sedapat mungkin tidak diharuskan mengingat informasi dari layar satu ke layar lainnya. 3. Kompatibilitas tampilan data dengan pemasukan data. Format tampilan informasi perlu berhubungan dengan tampilan pemasukan data 4. Fleksibilitas kendali pengguna terhadap data. Pengguna program harus dapat memperoleh informasi yang diinginkan dengan format yang paling memudahkan.