BAB 2 LANDASAN TEORI
2.1. Teknik Industri 2.1.1 Peramalan Peramalan atau forecasting adalah ilmu memprediksi peristiwa-peristiwa masa depan. Peramalan merupakan perhitungan yang objektif dan dengan menggunakan datadata masa lalu untuk menentukan sesuatu di masa yang akan datang (Sumayang, 2003, p24). Peramalan adalah sebuah teknik yang menggunakan data historis untuk memperkirakan proyek yang akan datang (Chapman, 2006, p17). Peramalan adalah proses untuk memperkirakan beberapa kebutuhan dimasa datang yang meliputi kebutuhan dalam ukuran, kuantitas, kualitas, waktu dan lokasi yang dibutuhkan dalam rangka memenuhi pemrintaan barang atau jasa (Arman Hakim Nasution, 2003, p25). Dalam hubungannya dengan horison waktu peramalan, maka peramalan dapat diklasifikasikan kedalam tiga kelompok, yaitu (Arman Hakim Nasution, 2003, p26) : 1. Peramalan Jangka Panjang, umumnya 2 sampai 10 tahun. Peramalan ini digunakan untuk perencanaan produk dan perencanaan sumber daya. 2. Peramalan Jangka Menengah, umumnya 1 sampai 24 bulan. Peramalzn ini lebih khusus dibandingkan peramalan jangka panjang, biasanya digunakan untuk menentukan aliran kas, perencanaan produksi, dan penentuan anggaran. 3. Peramalan Jangka Pendek, umumnya 1 sampai 5 minggu. Peramalan ini digunakan unutk mengambil keputusan dalam hal pelru tidaknya lembur, penjadwalan kerja, dan lain-lain keputusan kontrol jangka pendek.
17 Terdapat beberapa karakteristik yang fundamental dalam peramalan, yaitu: 1. Peramalan hampir selalu salah. Fokus pada peramalan bukanlah selalu mengenai benar atau salah, akan tetapi tentang “seberapa salah kita memperkirakannya” dan “apa yang akan kita lakukan apabila terdapat eror pada peramalan.” Biasanya penggunaan safety stock dalam suatu perusahaan mempunyai kaitan erat dengan eror peramalan. 2. Peramalan menjadi lebih akurat untuk famili suatu item. Lebih mudah untuk meramalkan sebuah grup produk daripada suatu produk individu, misalnya lebih akurat memperkirakan penjualan mobil sedan daripada memperkirakan penjualan masing-masing tipe mobil sedan.. 3. Peramalan menjadi lebih akurat untuk jangka waktu yang lebih pendek. Biasanya, eror yang akan dihasilkan ketika meramalkan untuk waktu yang pendek lebih kecil daripada meramalkan untuk waktu yang panjang. 4. Setiap peramalan harus ada perkiraan eror. Peramalan yang baik haruslan mempunyai perkiraan peramalan dan perkiraan nilai eror yang akan terjadi. 5. Peramalan bukanlah pengganti dari perhitungan permintaan. Apabila terdapat data permintaan untuk periode tertentu, jangan membuat peramalan berdasarkan periode yang sama dengan data permintaan tersebut. Selalu gunakan data yang riil apabila tersedia.
Pendekatan peramalan dapat dilakukan dengan cara kualitatif yaitu dengan memanfaatkan faktor-faktor intiusi, pengalaman pribadi, dan sistem nilai pengambilan keputusan dan untuk peramalan jangka panjang. Sedangkan cara yang berikutnya yaitu
18 dengan cara kuantitatif yang menggunakan data historis untuk peramalan jangka pendek (secara time series) dan peramalan jangka sedang (time series atau casual). Adapun dasar-dasar pertimbangan dalam rangka pemilihan metode peramalan yang akan digunakan sebagai berikut (Sumayang, 2003, p27): 1. Pengguna atau pelaku dan kecanggihan metode. 2. Waktu peramalan dan sumber daya yang tersedia. 3. Tergantung pada tujuan penggunaan dan karakteristik keputusan manajemen. Dalam peramalan kuantitatif dapat dibagi menjadi peramalan seri waktu dan model kausal. Metode seri waktu didasarkan pada asumsi bahwa deret waktu tersebut terdir dari komponen-komponen Trend (T), Siklus / Cycle (C), Pola musiman / Season (S), dan Variasi Acak / Random (R) yang akan menunjukkan suatu pola tertentu. Analisa deret waktu sangat tepat digunakan untuk meramalkan permintaan yang pola permintaan dimasa lalunya cukup konsisten dalam periode yang lama, sehingga diharapkan pola tersebut akan masih akan tetap berlanjut. Dalam metode seri waktu memiliki empat komponen yang digambarkan pada Gambar 2.1, antara lain (Arman Hakim Nasution, 2003, p36): 1. Trend adalah gerakan ke atas atau ke bawah secara berangsur-angsur dari data sepanjang waktu. 2. Musim adalah pola data yang berulang setelah periode harian, mingguan, bulanan, atau kuartalan. 3. Siklus adalah pola dalam data yang terjadi setiap beberapa tahun. Biasanya dikaitkan dengan siklus bisnis dan merupakan hal yang sangat penting dalam analisis dan perencanaan bisnis jangka pendek.
19 4. Variasi acak adalah ”tanda” dalam data yang disebabkan oleh peluang dan situasi yang tidak biasa; variabel acak mengikuti pola yang tidak dapat dilihat. Sering dihapus dengan menghilangkan periode waktu yang jelas-jelas menyimpang.
(Sumber: Arman Hakim Nasution, 2003, p36)
Gambar 2.1 Pola Data Permintaan
Metode Peramalan yang akan digunakan untuk pola data acak adalah: 1. Rata-rata bergerak Ganda (Double Moving Average = DMA) Moving Average diperoleh dengan merata-rata permintaan berdasarkan beberapa data masa lalu yang terbaru. Tujuan utama dari penggunaan teknik ini adalah untuk mengurangi atau menghilangkan variasi acak permintaan dalam hubungannya dengan waktu. Tujuan ini dicapai dengan merata-ratakan beberapa nilai data secara bersama-sama, dan menggunakan nilai rata-rata tersebut sebagai ramalan permintaan untuk periode yang akan datang (Arman Hakim Nasution, 2003, p35) . Prosedur peramalan rata-rata bergerk ganda meliputi tiga aspek (Makridakis / Wheelwright / McGee, 1999) : a. Penggunaan rata-rata bergerak tunggal pada waktu t (ditulis S't )
20 b. Penyesuaian, yang merupakan perbedaan antara rata-rata bergerak tunggal dan ganda pada waktu t (ditulis S 't − S "t ) c. Penyesuaian untuk kecenderungan dari periode t ke periode t+1 (atau ke periode t+m jka kita ingin meramalkan m periode ke muka)
Prosedur rata-rata bergerak ganda dapat diterangkan melalui persamaan berikut:
S 't =
X t + X t −1 + X t − 2 + ... + X t − N +1 N
S "t =
S 't + S 't −1 + S 't − 2 +... + S 't − N +1 N
at = S 't +(S 't + S "t ) = 2 S ' y − S "t
bt =
2 ( S 't − S "t ) N −1
Ft + m = at + bt m
2. Pemulusan Eksponential Tunggal (Single Exponential Smoothing = SES) Metode pemulusan eksponensial tunggal (Single Exponential Smoothing) dengan menambahkan parameter α dalam modelnya untuk mengurangi faktor kerandoman. Berbeda dengan metode rata-rata bergerak yang hanya menggunakan N data periode terakhir dalam melakukan perkiraan, metode pemulusan eksponensial tunggal mengikutsertakan semua periode. Setiap data pengamatan mempunyai kontribusi dalam penentuan nilai perkiraan periode sesudahnya. Namun dalam perhitungannya cukup diwakili oleh data pengamatan dan hasil perkiraan terakhir, karena nilai
21 perkiraan
periode
sebelumnya
sudah
mengandung
nilai-nilai
pengamatan
sebelumnya (Makridakis / Wheelwright / McGee, 1999). Prosedur pemulusan eksponential tunggal dapat diterangkan melalui persamaan berikut: Ft = α . X t + (1 − α )Ft −1
3. Metode Penghalusan Exponential (Double Exponential Smooting) Double Exponential Smoothing satu parameter bertujuan supaya peramalan dapat menghasilkan hasil yang lebih mulus (Makridakis / Wheelwright / McGee, 1999). Dasar pemikirannya serupa dengan rata – rata bergerak linier yang secara matematis dapat ditunjukan dengan rumus : St' = α . X t + (1 − α )S( t −1) St'' = α .St' + (1 − α ) S(''t −1) at = 2 St' − St'' bt =
α ( St' − St'' ) 1−α
Ft + m = at + bt m Dimana:
X t = Data penerimaan pada periode t a = Faktor atau konstanta pemulusan Ft + m = Perkiraan untuk periode t
22 2.1.2. Safety stock
Safety stock merupakan jumlah dari persediaan barang jadi, yang juga disebut sebagai “buffer stock”, yang digunakan untuk memenuhi permintaan pelanggan ketika terjadi hal yang tiba-tiba. Rumus untuk menghitung safety stock (Greene, 1997, p309) adalah: Safety stock = Safety Factor * Standar Deviasi Standar deviasi merupakan hasil perhitungan yang menggunakan data permintaan selama periode yang bersangkutan. Rumus untuk menghitung standar deviasi (S) adalah: S =
∑(x-x) 2 n
Dengan x = jumlah permintaan dalam periode yang bersangkutan, x = rata-rata permintaan selama periode yang bersangkutan, n = jumlah periode data permintaan.
2.1.3.
Jadwal Induk Produksi Produksi
Aktifitas Master Production Schedule (MPS) pada dasarnya berkaitan dengan bagaimana menyusun dan memperbaharui jadwal produksi induk (Master Production Schedule/MPS), memproses transaksi MPS, memelihara catatan-catatan MPS,
mengevaluasi efektifitas dari MPS, dan memberikan laporan evaluasi dalam periode waktu yang teratur untuk keperluan umpan-balik tinjauan ulang.
Fungsi MPS adalah : 1. Menjadwalkan jumlah end item yang akan diproduksi. 2. Memberikan input bagi MRP.
23 3. Sebagai dasar dari pembuatan perencanaan sumber daya. 4. Merupakan dasar untuk menetapkan janji pengiriman pada konsumen.
Menurut Reid dan Sanders, tujuan dari pembuatan MPS adalah [2]: 1. Mencapai tingkat pelayanan konsumen yang diinginkan dengan menjaga tingkat persediaan produk akhir atau dengan menjadwalkan waktu penyelesaian produk akhir untuk memenuhi permintaan konsumen. 2. Memanfaatkan sumber-sumber daya perusahaan yang ada, seperti bahan baku, tenaga kerja, dan peralatan-peralatan dengan sebaik mungkin. 3. Menjaga agar jumlah persediaan tetap berada pada tingkat yang diinginkan.
Lingkungan manufaktur sangat menetukan proses penjadwalan MPS, lingkungan yang umum dipertimbangkan ketika akan mendesain MPS (Chapman, 2006, p78) adalah: •
Make To Stock
Biasanya akan dikirim secara langsung dari gudang produk akhir dan harus ada stok sebelum pesanan pelanggan tiba. Produk akhir harus dibuat dan diselesaikan terlebih dahulu sebelum menerima pesanan dari pelanggan. •
Make To Order
Biasanya dikerjakan setelah menerima pesanan dari pelanggan. Seringkali komponen-komponen memiliki waktu tunggu yang panjang (long lead time) direncanakan atau dibuat lebih awal guna mengurangi waktu tunggu penyerahan kepada pelanggan.
24 •
Assembly To Order
Pada dasarnya seperti Make To Order, dimana semua komponen yang digunakan dalam assembly atau proses akhir direncanakan atau dibuat lebih awal, kemudian disimpan dalam stock guna mengantisipasi pesanan pelanggan.
Menurut Gaspersz (1998, p141-144) pada dasarnya jadwal produksi induk (Master Production Schedulling = MPS) merupakan suatu pernyataan tentang produk akhir (termasuk parts pengganti dan suku cadang) dari suatu perusahaan industri manufaktur yang merencanakan memproduksi output berkaitan dengan kuantitas dan periode waktu. Tabel 2.1 Contoh Tabel MPS Item No. Lead Time On Hand Periode Forecast Actual Order Project Available Balance Available to Promise Master Schedule Kapasitas Produksi Terpasang
Past Due
Description Safety Stock Demand Time Fences Planning Time Fences 1 2
3
4
Penjelasan mengenai komponen-komponen yang terdapat dalam tabel 2.1 MPS adalah sebagai berikut : a) Item No menyatakan kode produk yang akan diproduksi. b) Lead time menyatakan waktu yang dibutuhkan untuk me-release atau memanufaktur suatu produk. c) On hand menyatakan jumlah produk yang ada di gudang sebagai sisa periode sebelumnya.
5
25 d) Description menyatakan deskripsi produk secara umum. e) Safety stock merupakan stok pengaman yang harus ada di tangan sebagai antisipasi terhadap kebutuhan di masa akan datang. f) Demand Time Fences (DTF) adalah periode mendatang dari MPS di mana dalam periode ini perubahan terhadap MPS tidak diijinkan atau tidak diterima karena akan menimbulkan kerugian biaya yang besar akibat ketidaksesuaian atau kekacauan jadwal. g) Planning Time Fences (PTF) merupakan batas waktu penyesuaian pesanan di mana permintaan masih boleh berubah. Perubahan masih akan dilayani sepanjang material dan kapasitas masih tersedia. h) Forecast merupakan rencana penjualan atau peramalan penjualan untuk item yang dijadwalkan itu. i) Actual Order (AO) merupakan pesanan-pesanan yang diterima dan bersifat pasti. j) Projected Available Balance (PAB) merupakan perkiraan jumlah sisa produk pada akhir periode. PAB dihitung dengan menggunakan rumus: PAB t < DTF = PABt-1 + MSt – AO PAB DTF < t < PTF = PABt-1 + MSt – AO atau Ft (pilih yang besar) k) Available to Promise memberikan informasi tentang berapa banyak item atau produk tertentu yang dijadwalkan pada periode waktu itu tersedia untuk pesanan pelanggan, sehingga berdasarkan informasi ini bagian pemasaran dapat membuat janji yang tepat bagi pelanggan. ATPt = ATPt-1 + MSt – AOt l) Master Schedule merupakan jadwal produksi atau manufakturing yang diantisipasi untuk produk atau item tertentu.
26 2.2. Sistem Informasi Manajemen (Management Information System) 2.2.1. Sistem
Sistem menurut O’Brien (2003, p8) adalah suatu kelompok dari elemen-elemen yang saling berhubungan dan berinteraksi satu sama lain dan menciptakan suatu kesatuan yang utuh. Elemen-elemen ini bekerja sama untuk mencapai suatu tujuan bersama dengan menerima input dan memproduksi output dalam proses transformasi yang terorganisir. Sistem memiliki tiga komponen dasar yang saling berinteraksi : 1. Input : mencakup mendapatkan dan mengatur komponen atau elemen yang masuk ke sistem untuk diproses. Contohnya mencakup bahan mentah, data, usaha manusia. 2. Proses : mencakup proses transformasi yang mengubah input menjadi output. Contohnya mencakup proses manufaktur, perhitungan matematis, dan lain sebagainya. 3. Output : mencakup elemen yang telah melalui proses transformasi. Contoh mencakup jasa, produk dan informasi. Selain ketiga komponen dasar tersebut, terdapat dua lagi komponen tambahan yaitu : 1. Feedback : data mengenai performa sistem. 2. Control : mecakup pengawasan dan evaluasi dari feedback untuk mengetahui bila sistem bergerak menuju tujuan yang telah ditetapkan.
2.2.2. Informasi
Untuk memahami konsep informasi, perlu untuk terlebih dahulu memahami konsep data. Data adalah kenyataan atau observasi mengenai fenomena tertentu atau
27 transaksi bisnis tertentu yang merupakan pengukuran objektif dari karakteristik dari suatu objek pengamatan tertentu. Informasi adalah data yang telah diolah sehingga memiliki makna tertentu bagi penggunanya.
2.2.3. Sistem Informasi
Sistem Informasi adalah sekumpulan orang, prosedur, dan sumber daya yang mengumpulkan, memproses dan menyalurkan informasi dalam suatu organisasi. Pengertian lainnya dari sistem informasi adalah sebagai suatu sistem yang menerima data sebagai input dan kemudian mengolahnya menjadi informasi sebagai outputnya. Computer Based Information System (CBIS) adalah sistem informasi berbasis
komputer dimana sistem disini menyangkut kombinasi dari perangkat keras, perangkat lunak, sumber daya manusia, jaringan dan data yang berfungsi untuk melakukan kegiatan input, proses, output, penyimpanan dan kontrol yang mengubah sumber daya data menjadi produk berupa informasi. Sumber daya sistem informasi menurut O’Brien (2003, p11-14) mencakup : 1. Sumber daya manusia Sumber daya manusia mencakup pengguna akhir dan spesialis IS. Pengguna akhir adalah semua orang yang menggunakan sistem informasi dalam melaksanakan kegiatan dan tugas mereka. Spesialis IS mencakup system analyst, pengembang software dan orang yang mengoperasikan sistem tersebut.
2. Sumber daya perangkat keras (hardware) Hardware mencakup semua peralatan fisik dan material yang digunakan dalam
mengolah informasi termasuk di dalamnya mesin seperti komputer (baik itu
28 merupakan komputer desktop, laptop, mainframe, dan lain sebagainya) serta semua perlengkapan lainnya seperti media penyimpanan, media untuk input dan output. 3. Sumber daya perangkat lunak (software) Software mencakup program dan prosedur. Program adalah serangkaian perintah
yang mengontrol jalannya hardware. Prosedur adalah serangkaian instruksi untuk mengolah informasi seperti prosedur input data, prosedur untuk mengoreksi kesalahan. 4. Sumber daya data Data disini mencakup semua bentuk data termasuk data berupa angka, alfabet maupun karakter lain yang mendeskripsikan transaksi bisnis dan kejadian lainnya. Termasuk juga di dalamnya adalah konsep penyimpanan data seperti database. 5. Sumber daya jaringan Sumber daya jaringan mencakup media komunikasi seperti teknologi komunikasi wireless, microwave kabel serat optik dan lain sebagainya serta dukungan untuk
jaringan seperti modem
Sistem Informasi menurut O’Brien (2003, p24) terbagi atas tiga kategori yaitu : 1. Operations Support Systems Merupakan sistem operasi yang memproses data yang digunakan dalam operasi bisnis menjadi informasi yang dapat digunakan baik untuk keperluan internal maupun eksternal tanpa penekanan mengenai kegunaannya bagi manajemen (atau manager). Fungsinya adalah untuk mengefisiensikan transaksi bisnis, mengontrol
proses bisnis, mendukung komunikasi dan kolaborasi serta update database. Yang termasuk dalam Operations Support Systems adalah :
29 a. Transaction Processing Systems
Mengolah data yang didapat dari transaksi bisnis, mengupdate database operasional, dan mengahasilkan dokumen bisnis. b. Process Control Systems
Memonitor dan mengontrol proses industri. c. Enterprise Collaboration Systems
Mendukung kolaborasi dan kerja sama serta komunikasi dalam kegiatan perusahaan, tim dan kelompok kerja.
2. Management Support Systems Merupakan sistem informasi yang berfokus pada penyediaan informasi untuk mendukung pengambilan keputusan yang efektif bagi para manager. Yang termasuk dalam Management Support Systems adalah : a. Management Information Systems
Menyediakan informasi dalam bentuk laporan dan tampilan yang mendukung proses pembuatan keputusan bisnis. b. Decision Support Systems
Menyediakan dukungan ad hoc untuk proses pengambilan keputusan bagi manager dan profesional bisnis lainnya. c. Executive Information Systems
Menyediakan informasi yang kritis dari berbagai sumber untuk memenuhi kebutuhan informasi bagi kaum eksekutif perusahaan.
30 3. Sistem informasi yang dapat mendukung operasi maupun kegiatan manajemen seperti: a. Expert Systems
Sistem berbasis knowledge (pengetahuan) yang memberikan masukan atau nasihat dari sudut pandang ahli di bidang tersebut. b. Knowledge Management Systems
Sistem berbasis knowledge yang mendukung penciptaan, pengorganisasian, dan penyebaran business knowledge dalam perusahaan. c. Strategic Information Systems
Mendukung proses manajemen dan operasi yang memberikan perusahaan kemampuan strategis dalam mendapatkan keuntungan bersaing. d. Functional Business Systems
Mendukung berbagai aplikasi operasional dan manajemen untuk fungsi bisnis mendasar dalam suatu perusahaan.
2.2.4. Sistem Informasi Manajemen
McLeod (2001, p239) mendefinisikan Sistem Informasi Manajemen (SIM) sebagai sistem berbasis komputer yang menyediakan informasi bagi pengguna yang memiliki kepentingan yang saman yaitu pengambilan keputusan untuk menyelesaikan masalah yang dihadapi oleh organisasi / perusahaan. Output dari SIM adalah berupa laporan periodik, laporan khusus dan perhitungan matematis. Model SIM dapat dijelaskan dalam Gambar 3.2. Dimana ditunjukkan bahwa data dan informasi didapat dari lingkungan. Database digunakan oleh software untuk menghasilkan laporan dan model matematis juga digunakan untuk menghasilkan
31 perhitungan yang akan digunakan oleh pengambil keputusan dalam organisasi baik itu berupa manager maupun non manager. Aliran data dan informasi dibedakan untuk menunjukkan yang mana yang merupakan input dan output dari komponen system.
(Sumber : McLeod, 2000, p240)
Gambar 2.2 Model Sistem
32 SIM memberikan kontribusi terhadap pemecahan masalah dalam dua cara: 1. Sumber daya informasi organisasi secara menyeluruh SIM menyiapkan dan merupakan sarana untuk menghubungkan para manager dalam organisasi, sehingga informasi dapat digunakan bersama untuk mendukung pemecahan masalah yang dihadapi. 2. Pemahaman dan identifikasi masalah Sesuai dengan konsep SIM yaitu sebagai penyedia informasi terus menerus bagi manager (pengambil keputusan). Penggunaan SIM dapat memberikan gambaran dan
sinyal akan masalah yang dihadapi atau yang akan terjadi bila keputusan lebih lanjut tidak segera diambil. SIM juga membantu dalam hal pemahaman penyebab dari masalah tersebut.
2.2.5. Daur Hidup Sistem (System Life Cycle)
Daur
Hidup
Sistem
adalah
pengaplikasian
pendekatan
sistem
untuk
pengembangan sistem informasi dan subsistem berbasis komputer. Daur hidup sistem terdiri dari rangkaian tugas yang mengikuti pola tertentu dan dilakukan secara top-down sehingga dikenal dengan pendekatan air terjun (waterfall approach). Daur hidup sistem menurut McLeod (2001, p123) terdiri dari lima fase dimana empat fase pertama berkaitan dengan upaya pengembangan sistem sehingga dikenal dengan sebutan System Design Life Cycle (SDLC). Keempat fase tersebut adalah planning (perencanaan), analysis (analisa), design (perancangan) dan implementation
(implementasi). Fase yang kelima adalah use (pemakaian) yang mana akan berlangsung hingga sistem perlu untuk dirancang ulang atau dihentikan.
33 2.2.6. Analisa dan Perancangan Berorientasi Objek (Object Oriented Analysis and Design)
Analisa dan perancangan berorientasi objek (OOAD) menggunakan objek dan kelas sebagai konsep kunci dalam melakukan analisa dan perancangan. Objek sendiri adalah suatu entitas yang memiliki identitas, state dan behaviour. Dalam kegiatan analisa objek digunakan untuk mengelola pemahaman akan konteks sistem. Dalam perancangan objek digunakan untuk memahami dan mendefinisikan sistem. Kelas menurut Mathiassen (2000, p4) adalah deskripsi dari sekumpulan objek yang berbagi struktur, behavioral pattern dan attributes yang sama. Kelas berguna untuk memahami dan menggambarkan objek dimana daripada mendeskripsikan masingmasing objek yang ada, akan lebih baik untuk membuat kelas yang berisi objek-objek dengan deskripsi yang sama. Penganalisaan objek mendeskripsikan fenomena yang terjadi diluar sistem yang umumnya berdiri sendiri. Walaupun fenomena tersebut tidak dapat diatur namun tetap perlu diakui keberadaannya yang akan mempengaruhi sistem. Perancangan objek mendeskripsikan fenomena yang berada dalam sistem yang dapat dikendalikan. Keunggulan dalam OOAD menurut Mathiassen (2000, p5-6) adalah : a. Menyediakan informasi yang jelas mengenai konteks sistem. Dimana OOAD memfokuskan dengan kejelasan yang sama antara sistem dan konteksnya. b. Hubungan yang erat antara analisa berorientasi objek dengan perancangan berorientasi objek, antar muka pengguna yang berorientasi objek dan programming yang berorientasi objek. Dalam kegiatan analisa, objek digunakan untuk menentukan system requirements dan dalam perancangan, objek digunakan untuk mendeskripsikan sistem. Objek juga
34 digunakan untuk menggambarkan dan sebagai model dari situasi dalam organisasi mauun situasi di luar organisasi. c. Objek memungkinkan pemahaman dengan cara yang alami terhadap masalah yang dihadapi. Aktivitas dalam OOAD mencakup kegiatan utama yaitu problem domain analysis, application domain analysis, architecture design dan componen design. Selain
itu terdapat juga kegiatan tambahan yaitu preliminary analysis yang dilakukan sebelum keempat aktivitas tersebut yang bertujuan untuk menentukan sistem yang dibutuhkan dengan cara memahami situasi yang ada mengumpulkan ide-ide.
2.2.6.1. System Choice
Perancangan sistem dimulai dengan mengumpulkan ide-ide mengenai sistem yang dibutuhkan serta mengumpulkan informasi mengenai situasi yang sedang dihadapai. Kegiatan ini merupakan preliminary analysis dimana pada tahap ini dilakukan perembukan demi tujuan pengumpulan ide mengenai sistem atau keadaaan yang ada saat ini dari berbagai sudut pandang pihak-pihak yang terlibat di dalamnya serta ide-ide berkaitan dengan sistem yang diinginkan dan dibutuhkan. Hasil
dari
preliminary
analysis
ini
adalah
system
definition
yang
menggambarkan pilihan sistem yang akan dikembangkan. System definition menjelaskan konteks sistem, informasi yang harus dikandung dalam sistem, fungsi-fungsi dalam sistem, penggunaan serta batasan-batasan yang harus diperhatikan.
35 Dalam kegiatan preliminary analysis juga ditentukan FACTOR yang mana seperti dinyatakan oleh Mathiassen (2000, p39-40) merupakan enam kriteria : a. Functionality : Fungsi dari sistem yang mendukung kegiatan dalam application domain.
b. Application domain : Bagian dari organisasi yang mengatur, mengawasi dan mengontrol problem domain. c. Conditions : Kondisi dimana sistem akan dikembangkan dan digunakan. d. Technology : Teknologi yang digunakan baik untuk mengembangkan sistem dan juga teknologi yang memungkinkan dan mendukung jalannya sistem. e. Objects : Objek utama dalam problem domain f. Responsibility : Tanggung jawab sistem secara keseluruhan dalam hubungannya dengan konteksnya.
Mathiassen (2000, p40) juga menyatakan bahwa FACTOR dapat digunakan dalam dua cara. Yang pertama adalah FACTOR dapat digunakan untuk mendukung kegiatan
pembuatan
system
definition,
dimana
keenam
kriteria
FACTOR
dipertimbangkan formulasinya. Pada tahap ini, FACTOR terlebih dahulu didefinisikan baru kemudian ditentukan system definitionnya. Cara kedua adalah dengan mendefinisikan terlebih dahulu system definition dan kemudian menggunakan keenam kriteria FACTOR untuk mengetahui bagaimana system definition yang dibuat telah memenuhi keenam faktor tersebut.
36 2.2.6.2. Problem Domain Analysis
Problem domain analysis berfokus pada upaya untuk mengetahui apa-apa saja
informasi yang perlu untuk ditangani oleh sistem. Kegiatan dalam problem domain analysis mencakup aktivitas kelas berupa penentuan objek, kelas dan event yang
dirangkum dalam event table. Kelas dan objek tersebut kemudian dibuat modelnya berdasarkan relasi struktural antara kelas dan objeknya, untuk kemudian dilakukan pendeskripsian dari atribut dan behavior dari kelas dan objek tersebut.
2.2.6.2.1. Aktivitas Kelas
Aktivitas kelas dalam problem domain analysis merupakan kegiatan abstraksi, klasifikasi, dan pemilihan. Abstraksi merupakan kegiatan dimana problem domain diabstraksikan dalam bentuk objek dan kelas. Objek dan kelas tersebut kemudian diklasifikasikan dan kemudian dilakukan pemilihan kelas dan event yang digunakan untuk memodelkan problem domain. Konsep kelas dan event ini merupakan upaya untuk mendifinisikan dan membatasi problem domain. Event table merupakan tabel yang merangkum kelas dan event dimana dalam event table akan ditunjukkan event dimana objek tertentu terlibat di dalamnya dan juga event apa saja yang mempengaruhi objek tersebut.
2.2.6.2.2 Aktivitas Struktural
Bila dalam aktivitas kelas, kelas dan objek dikarakterisasi berdasarkan eventnya maka pada aktivitas struktural hal ini dikembangkan dengan menambahkan pendeskripsian hubungan struktural antara kelas dan objek tersebut. Sruktur ini kemudian digambarkan dalam suatu class diagram (diagram kelas). Struktur menurut
37 Mathiassen (2000, p72-77) terbagi atas dua yaitu struktur antar objek dan struktur antar kelas : 1. Struktur antar kelas, yaitu: Generalisasi Merupakan hubungan struktural antara dua atau lebih kelas yang khusus dengan kelas yang lebih umum. Relasi generalisasi dapat didefinisikan sebagai hubungan ‘adalah’ dimana subclass (kelas yang khusus) juga adalah superclass (kelas yang umum). Contohnya adalah antara kendaraan dengan truk dimana kendaraan adalah superclass dan truk adalah subclass dimana dapat dinyatakan bahwa truk adalah
kendaraan. Dalam konsep generalisasi ini segala yang merupakan property dari superclass juga berlaku bagi subclassnya.
2. Struktur antar objek a. Agregasi Menggambarkan hubungan antara dua atau lebih objek yang menunjukkan bahwa salah satu dari objek merupakan bagian dari suatu objek keseluruhan. Hubungan asosiasi dapat dinyatakan sebagai hubungan ‘bagian dari’. Contohnya adalah pada objek mobil dan roda dimana roda dapat dinyatakan sebagai bagian dari mobil. b. Asosiasi Hubungan asosiasi merupakan hubungan antara dua atau beberapa objek yang tidak mengimplikasikan adanya peringkat antar objek yang dihubungkannya tersebut. Asosiasi tidak memiliki nama, dimana bila tampak perlu untuk pemberian nama maka itu menandakan adanya kelas penghubung yang belum didefinisikan untuk hubungan tersebut.
38 2.2.6.2.3. Aktivitas Behavior
Pada aktivitas ini dilakukan pendefinisian atribut dan behavioral pattern (pola behavior) dari setiap kelas. Pola behavior adalah deskripsi dari semua kemungkinan event traces untuk semua objek dalam sebuah kelas. Event traces adalah urutan event
yang melibatkan onjek tertentu. Mathiassen (2000, p93) menyatakan bahwa behavioral pattern memiliki tiga bentuk yaitu sequence (urutan), selection (pemilihan) dan iteration (perulangan). Sequence merupakan pola dimana event terjadi setelah event tertentu diselesaikan. Selection merupakan pola dimana hanya satu event yang terjadi dari beberapa
kemungkinan event yang dapat terjadi. Iteration merupakan pola event yang dapat terjadi berulang-ulang. Hal yang perlu diperhatikan dalam pembuatan behavioral pattern adalah event yang menyebabkan tebentuknya objek dalam sebuah problem domain dan event yang menyebabkan hilangnya objek tersebut. Hal lainnya adalah bahwa behavioral pattern harus mampu menggambarkan event traces yang diperbolehkan dan yang tidak legal. Hasil dari aktivitas behavioral ini adalah statechart yang menggambarkan semua kemungkinan aktivitas dalam kelas mulai dari pembentukan kelas hingga ketika kelas tersebut diterminasi.
2.2.6.3. Application Domain Analysis
Application domain analysis berfokus pada upaya untuk menjawab pertanyaan
bagaimana sistem akan digunakan. Pada tahap ini akan dilakukan pendefinisian use cases, actor, function dan interface dari system. Kegiatan analisa dapat dimulai baik dari analisa problem domain maupun pada analisa application domain masing-masing
39 dengan titik berat yang berbeda. Dimana bila diawali dengan application domain analysis maka fokus akan terletak pada pekerjaan pengguna sementara dengan memulai dari problem domain analysis fokus terletak pada aktivitas bisnis tersebut dan bukannya pada antarmuka sistem tersebut. Dengan memulai dari problem domain analysis yang walaupun lebih sulit dibandingan
dengan
application
domain
analysis
terdapat
kelebihan
berupa
pendeskripsian object oriented yang lebih baik. Sementara problem domain lebih stabil sementara application domain lebih rentan terhadap perubahan. Bila terdapat perubahan pada problem domain maka fungsi dan antarmuka pasti berubah namun perubahan pada application domain dapat tidak menyebabkan perubahan pada problem domain.
2.2.6.3.1. Usage
Dalam aktivitas ini dilakukan pendefinisian bagaimana pengguna (user) berinteraksi dengan sistem. Hal ini dilakukan dengan pendefinisian use case dan actor. Use case adalah pola interaksi antara sistem dengan actor dalam application domain. Actor adalah abstraksi dari pengguna ataupun sistem lain yang berinteraksi dengan
sistem. Use case memungkinkan suatu pemahaman atas sistem dari sudut pandang pengguna dan menyediakan dasar bagi pendefinisian dan pengevaluasian fungsi dan antarmuka. Hasil dari aktivitas ini adalah use case diagram yang menggambarkan nteraksi antara actor dan use case.
40 2.2.6.3.2. Functions
Function (fungsi) adalah fasilitas yang memungkinkan model agar berguna bagi
para actors. Aktivitas ini berguna untuk menentukan kapabilitas dari pemrosesan sistem informasi dimana function yang kompleks perlu untuk diberikan perhatian lebih. Mathiassen (2000, p138) menyatakan bahwa terdapat empat tipe function yaitu : 1. Update : fungsi yang diaktifkan oleh event dalam problem domain dan menghasilkan perubahan di status dari model. 2. Signal : diaktifkan oleh perubahan status dari model dan mengakibatkan reaksi baik berupa tampilan bagi para aktor yan menyatakan hal tersebut atau intervensi langsung dalam problem domain. 3. Read : diaktifkan oleh adanya keperluan akan informasi oleh para actors dan mengakibatkan sistem menampilkan bagian tertentu dari model yang berhubungan. 4. Compute : diaktifkan oleh adanya keperluan akan informasi oleh para actors yang perlu melibatkan komputasi dari informasi yang disediakan oleh para actos ataupun model. Hasilnya adalah berupa hasil komputasi tersebut.
2.2.6.3.3. Antarmuka
Antarmuka merupakan fasilitas yang memungkinkan model sistem dan function dari sistem agar dapat digunakan oleh para actors. Antarmuka sendiri dapat dibedakan atas antarmuka pengguna dengan antarmuka sistem. Hasil dari kegiatan analisa antarmuka adalah navigation diagram yang menggambarkan setiap windows dan bagaimana hubungan antara setiap windows dan bagaimana mengakses setiap windows tersebut. Hasil lainnya adalah berupa sequence
41 diagram dimana pada diagram ini dijelaskan interaksi antar objek-objek melalui pesan-
pesan yang disampaikan antar objek tersebut.
2.2.6.4. Architecture Design
Perancangan arsitektur merupakan suatu usaha untuk menstrukturisasi sistem berdasarkan bagian-bagiannya untuk memenuhi kriteria perancangan tertentu. Kegiatan perancangan arsitektur terbagi atas dua kegiatan yaitu arsitektur komponen dan arsitektur proses. Arsitektur komponen berfokus pada aspek yang lebih stabil (kelas) dan merupakan struktur untuk keperluan deskripsi. Arsitektur proses lebih berfokus pada aspek yang dinamis (objek) dan menstrukturisasi proses dalam sistem agar terkoordinasi dan efisien. Arsitektur proses lebih berhubungan dengan pertimbangan fisikal dibandingkan dengan arsitektur komponen yang lebih berhubungan dengan aspek logikal.
Kegiatan dalam perancangan arsitektur menurut Mathiassen (2000, p176) adalah: 2.2.6.4.1. Prioritas perancangan (kriteria)
Kriteria merupakan kondisi atau sifat yang lebih diutamakan dalam suatu arsitektur. Perancangan yang baik perlu untuk menyeimbangkan antara berbagai kriteria dan karena kriteria-kriteria ini bisa jadi saling bertentangan maka prioritas dari kriteria tersebut menjadi penting. Kriteria-kriteria tersebut adalah : 1. Usable : Kemampuan sistem untuk dapat diadaptasi dalam suatu organisasi, kegiatan kerja dan konteks teknis dalam organisasi tersebut.
42 2. Secure : Pencegahan terhadap akses yang tidak diijinkan terhadap data dan fasilitas sistem. 3. Efficient : Eksploitasi ekonomis dari fasilitas teknis sistem. 4. Correct : Pemenuhan kebutuhan sistem. 5. Reliable : Pemenuhan ketepatan yang dibutuhkan dalam pelaksanaan fungsi - fungsi sistem. 6. Maintainable : Biaya untuk memperbaiki defect dari sistem. 7. Testable : Biaya untuk memastikan bahwa sistem yang dibuat dapat berfungsi sesuai sebagaimana mestinya. 8. Flexible : Biaya untuk mengubah sistem yang dibuat. 9. Comprehensible : Usaha yang diperlukan untuk mendapatkan pemahaman atas sistem. 10. Reuseable : Potensi untuk menggunakan bagian dari sistem dengan sistem terkait lainnya. 11. Portable: Biaya untuk memindahkan sistem ke perangkat teknis yang lain. 12. Interoperable : Biaya untuk penggunaan sistem dengan sistem yang lain.
Perancangan yang baik umumnya memiliki kriteria usable, flexible dan comprehensible. Usable ditentukan oleh hubungan antara kualitas teknis sistem dengan
penerapannya dalam pekerjaan user. Flexible dan comprehensible membantu dalam perancangan dan pengimplementasian kegiatan.
43 2.2.6.4.2. Pendefinisian komponen
Komponen adalah kumpulan dari bagian program dengan tanggung jawabnya masing-masing. Arsitektur komponen adalah struktur sistem dari komponen-komponen yang saling berhubungan. Arsitektur komponen yang baik akan membantu pemahaman sistem, pengaturan perancangan dan menunjukkan kestabilan dari sistem tersebut.
Komponen sistem memiliki tiga bagian yaitu : 1. User interface : bertanggung jawab untuk membaca perintah dari tombol dalam tampilan, dan mengupdate tampilan yang memungkinkan interaksi antara pengguna dengan sistem. 2. Model : bertanggung jawab dalam menampung objek. 3. Function : bertanggung jawab dalam menyediakan fungsi dari sistem.
Terdapat tiga pola arsitektur yaitu : 1.
The layered architecture pattern
Arsitektur ini memiliki beberapa komponen yang dirancang dalam bentuk lapisanlapisan
dimana
terdapat
antarmuka
atas
dan
bawah.
Antarmuka
atas
mendeskripsikan operasi yang disediakan oleh komponen di lapisan atas sementara antarmuka bawah mendeskripsikan operasi yang dapat diakses oleh komponen dari lapisan dibawahnya. 2. The generic architecture pattern Arsitektur ini terdiri model sistem yang terletak di lapisan paling bawah, diikuti dengan dengan function diatasnya dan kemudian interface di lapisan teratas.
44 Perangkat teknis bisa diletakkan di bawah model dimana perangkat teknis ini terhubung dengan model dan interface. 3. The client-server architecture pattern Dikembangkan untuk sistem yang terdistribusi di beberapa area geografis yang berbeda. Komponen dari arsitektur ini mencakup sebuah sever dan beberapa klien dimana klien-klien ini menggunakan server secara independen satu sama lainnya.
2.2.6.4.3. Pendefinisian proses
Arsitektur proses merupakan struktur pengeksekusian sistem yang terdiri dari proses-proses
yang
interdependent.
Tujuan
dari
aktivitas
ini
adalah
untuk
mendefinisikan struktur fisik dari sistem. Hasil dari aktivitas ini adalah deployment diagram. Deployment diagram menjelaskan konfigurasi sistem dalam bentuk processor
dan objek yang terkait dengan processor dimana processor adalah unit yang melakukan proses.
2.2.6.5. Component Design
Sistem komponen yang umum terdiri atas komponen fungsi dan komponen model. Perancangan komponen terdiri dari kegiatan untuk mendefinisikan kedua komponen tersebut dan bagaimana menghubungkan komponen-komponen. Tujuan dari kegiatan ini adalah untuk menentukan penerapan kebutuhan dalam kerangka kerja arsitektur.
45 2.2.6.5.1. Model Component
Model component adalah bagian dari sistem yang mengimplementasikan model problem domain. Tujuan dari model component adalah untuk mengantarkan data historis
dan masa kini ke functions, antarmuka dan juga bagi pengguna serta sistem lain yang menggunakannya. Hasil dari kegiatan ini adalah revised class diagram dari hasil analisa event dan struktur kelas yang ada.
2.2.6.5.2. Function Component
Funciton component adalah bagian dari sistem yang mengimplementasikan apa
yang menjadi keperluan fungsional. Tujuan dari kegiatan ini adalah untuk memberikan akses terhadap model kepada antarmuka pengguna dan sistem lainnya. Dengan demikian function component adalah penghubung antara model dan penggunaannya. Hasil dari
kegiatan ini adalah class diagram dengan operasi dan spesifikasi dari operasi yang kompleks. Spesifikasi bagi operasi yang kompleks dapat digambarkan dalam bentuk operation specification, sequence diagram atau statechart diagram.
2.2.7. Visual Basic .Net
Microsoft Visual Basic .Net adalah sebuah alat untuk mengembangkan dan
membangun aplikasi yang bergerak di atas sistem .Net Framework, dengan menggunakan bahasa Basic. Dengan menggunakan alat ini programmer dapat membangun aplikasi Windows Form. Alat ini dapat diperoleh secara terpadu dalam Microsoft Visual Studio .Net. Bahasa Visual Basic .Net sendiri mengatur paradigma
bahasa pemograman berorientasi objek yang dapat dilihat sebagai evolusi dari Microsoft Visual Basic versi sebelumnya yang diimplementasikan di atas .Net Framewok. Pada
46 tahun 2005, Miscrosoft merilis versi terbaru dari Visual Basic .Net, yang disebut Visual Basic 2005 (dengan membuang kata “.Net”).