BAB 2 LANDASAN TEORI
2.1. Kualitas Membicarakan tentang pengertian atau definisi kualitas dapat berbeda makna bagi setiap orang, karena kualitas memiliki banyak kriteria dan sangat tergantung pada konteksnya. Banyak pakar di bidang kualitas yang mencoba untuk mendefinisikan kualitas berdasarkan sudut pandangnya masing-masing. Beberapa di antaranya yang paling populer adalah : -
H. L. Gilmore. Kualitas adalah suatu kondisi di mana produk sesuai dengan desain atau spesifikasi tertentu.
-
William W. Scherkenbach. Kualitas ditentukan oleh pelanggan; pelanggan ingin produk dan jasa, dalam seluruh kehidupannya, terpenuhi kebutuhan dan harapannya, pada suatu harga tertentu yang menunjukkan nilai produk tersebut.
-
J. M. Juran. Kualitas adalah kesesuaian dengan spesifikasi.
-
Ross Johnson dan William O. Winchell. Kualitas adalah keseluruhan ciri dan karakteristik produk atau jasa yang berkaitan dengan kemampuannya memenuhi kebutuhan atau kepuasan.
-
Deming. Kualitas adalah apapun yang menjadi kebutuhan dan keinginan konsumen.
46 -
Crosby. Mempersepsikan kualitas sebagai nihil cacat, kesempurnaan, dan kesesuaian terhadap persyaratan.
Menurut perbendaharaan istilah ISO 8402 dan dari Standar Nasional Indonesia (SNI 19-8402-1991), kualitas adalah keseluruhan ciri dan karakteristik produk atau jasa yang kemampuannya dapat memuaskan kebutuhan, baik dinyatakan secara tegas maupun tersamar. Istilah kebutuhan diartikan sebagai spesifikasi yang tercantum dalam kontrak maupun kriteria-kriteria yang harus didefinisikan terlebih dahulu. Goetsch Davis, 1994 membuat definisi kualitas yang lebih luas cakupannya, yaitu “kualitas merupakan suatu kondisi dinamis yang berhubungan dengan produk, jasa, manusia, proses, dan lingkungan yang memenuhi atau melebihi harapan”. Pendekatan yang dikemukakan Goetsch Davis ini menegaskan bahwa kualitas bukan hanya menekankan pada aspek hasil akhir, yaitu produk dan jasa tetapi juga menyangkut kualitas manusia, kualitas proses, dan kualitas lingkungan. Sangatlah mustahil menghasilkan produk dan jasa yang berkualitas tanpa melalui manusia dan proses yang berkualitas. Perusahaan jasa dan pelayanan lebih menekankan pada kualitas proses, karena konsumen biasanya terlibat langsung dalam proses tersebut. Sedangkan perusahaan yang menghasilkan produk lebih menekankan pada hasil, karena konsumen umumnya tidak terlibat secara langsung dalam prosesnya. Untuk itu diperlukan sistem manajemen kualitas yang dapat memberikan jaminan kepada pihak konsumen bahwa produk tersebut dihasilkan oleh proses yang berkualitas. David Garvin, 1994 mengidentifikasikan lima pendekatan perspektif kualitas yang dapat digunakan oleh para praktisi bisnis, yaitu :
47 1. Transcendental Approach Kualitas dalam pendekatan ini adalah sesuatu yang dapat dirasakan, tetapi sulit didefinisikan dan dioperasionalkan maupun diukur. Perspektif ini umumnya diterapkan dalam karya seni seperti seni musik, seni tari, seni drama, dan seni rupa. Untuk produk dan jasa pelayanan, perusahaan dapat mempromosikan dengan menggunakan pernyataan-pernyataan seperti kelembutan dan kehalusan kulit (sabun mandi), kecantikan wajah (kosmetik), pelayanan prima (bank), dan tempat berbelanja yang nyaman (mall). Definisi seperti ini sangat sulit untuk dijadikan sebagai dasar perencanaan dalam manajemen kualitas. 2.
Product-based Approach Kualitas dalam pendekatan ini adalah suatu karakteristik atau atribut yang dapat diukur. Perbedaan kualitas mencerminkan adanya perbedaan atribut yang dimiliki produk secara objektif, tetapi pendekatan ini tidak dapat menjelaskan perbedaan dalam selera dan preferensi individual.
3. User-based Approach Kualitas dalam pendekatan ini didasarkan pada pemikiran bahwa kualitas tergantung pada orang yang memandangnya, dan produk yang paling memuaskan preferensi seseorang atau cocok dengan selera (fitness fo used) merupakan produk yang berkualitas palin tinggi. Pandangan yang subjektif ini mengakibatkan konsumen yang berbeda memiliki kebutuhan dan keinginan yang berbeda pula, sehingga kualitas bagi seseorang adalah kepuasan maksimum yang dapat dirasakannya.
48 4. Manufacturing-based Approach Kualitas dalam pendekatan ini adalah bersifat supply-based atau dari sudut pandang produsen yang mendefinisikan kualitas sebagai sesuatu yang sesuai dengan persyaratannya (conformance quality) dan prosedur. Pendekatan ini berfokus pada kesesuaian spesifikasi yang ditetapkan perusahaan secara internal. Oleh karena itu, yang menentukan kualitas adalah standar-standar yang ditetapkan perusahaan, dan bukan konsumen yang menggunakannya. 5. Value-based Approach Kualitas dalam pendekatan ini adalah memandang kualitas dari segi nilai dan harga. Kualitas didefinisikan sebagai “affordable excellence”. Oleh karena itu kualitas dalam pandangan ini bersifat relatif, sehingga produk yang memiliki kualitas paling tinggi belum tentu produk yang paling bernilai. Produk yang paling bernilai adalah produk yang paling tepat beli.
2.2.
Dimensi Kualitas Berdasarkan perspektif kualitas, David Garvin mengembangkan dimensi kualitas
ke dalam delapan dimensi yang dapat digunakan sebagai dasar perencanaan strategis terutama bagi perusahaan atau manufaktur yang menghasilkan barang. Kedelapan dimensi tersebut adalah sebagai berikut : 1. Performance (kinerja), yaitu karakteristik produk dari produk inti. 2. Features, yaitu karateristik pelengkap atau tambahan. 3. Reliability (kehandalan), yaitu kemungkinan tingkat kegagalan pemakaian.
49 4. Conformance (kesesuaian), yaitu sejauh mana karakteristik desain dan operasi memenuhi standar-standar yang telah ditetapkan sebelumnya. 5. Durability (daya tahan), yaitu berapa lama produk dapat terus digunakan. 6. Serviceability, yaitu meliputi kecepatan, kompetensi, kenyamanan, kemudahan dalam pemeliharaan dan penanganan keluhan yang memuaskan. 7. Estetika, yaitu menyangkut corak, rasa, dan daya tarik produk. 8. Perceived, yaitu menyangkut citra dan reputasi produk serta tanggung jawab perusahaan terhadapnya. Karakteristik kualitas dari suatu produk sangat multidimensional, karena produk dapat memberikan kepuasan dan nilai kepada pelanggan dalam banyak cara. Karakteristik beberapa produk secara kuantitatif mudah ditentukan, seperti berat, panjang, dan waktu penggunaan. Tetapi beberapa karakteristik yang lain, seperti daya tarik produk adalah bersifat kualitatif. Joseph S. Martinich, 1997 p.564 mengemukakan spesifikasi dari dimensi kualitas produk yang relevan dengan pelanggan dapat dikelompokkan dalam enam dimensi, yaitu : 1. Performance. Hal yang paling prnting bagi pelanggan adalah apakah kualitas produk menggambarkan keadaan yang sebenarnya. 2. Range and Type of Features. Selain fungsi utama dari suatu produk, pelanggan seringkali tertarik pada kemampuan atau keistimewaan yang dimiliki produk. 3. Reliability and Durability. Kehandalan produk dalam penggunaan secara normal dan berapa lama produk dapat digunakan hingga perbaikan diperlukan. 4. Maintainability and Serviceability. Kemudahan untuk pengoperasian produk dan kemudahan perbaikan maupun ketersediaan komponen pengganti.
50 5. Sensory Characteristics. Penampilan, corak, rasa, daya tarik, bau, selera, dan beberapa faktor lainnya mungkin menjadi aspek penting dalam kualitas. 6. Ethical Profile and Image. Kualitas adalah bagian terbesar dari kesan pelanggan terhadap produk. Dimensi kualitas yang dikemukakan oleh David Garvin maupun Martinich tersebut berpengaruh pada harapan pelanggan dan kenyataan yang mereka terima. Jika kenyataannya pelanggan menerima produk yang melebihi harapannya, maka pelanggan akan mengatakan produknya berkualitas. Dan jika pelanggan menerima produk kurang atau sama dari harapannya, maka pelanggan akan mengatakan produknya tidak berkualitas atau tidak memuaskan. Dimensi kualitas di atas dapat dijadikan dasar bagi pelaku bisnis untuk mengetahui apakah ada kesenjangan (gap) atau perbedaan antara harapan pelanggan dan kenyataan yang mereka terima. Harapan pelanggan sama dengan keinginan pelanggan yang ditentukan oleh informasi yang mereka terima dari mulut ke mulut, kebutuhan pribadi, pengalaman masa lalu, dan komunikasi eksternal melalui iklan dan promosi. Jika kesenjangan antara harapan dan kenyataan cukup besar, hal ini menunjukkan bahwa perusahaan tidak mengetahui apa yang diinginkan oleh pelanggannya.
2.3.
Biaya Kualitas Biaya kualitas adalah biaya yang terjadi atau yang mungkin akan terjadi karena
produk cacat atau kualitas yang jelek. Biaya yang terjadi atau yang mungkin terjadi akan berhubungan dengan desain, pengidentifikasian, perbaikan, dan pecegahan kerusakan. Biaya dan kualitas merupakan satu kesatuan dan bukanlah sesuatu yang perlu
51 dipertentangkan atau sesuatu yang berlawanan. Oleh karena itu, dalam pengertian ini sangatlah tidak mungkin menghasilkan produk yang berkualitas tinggi dengan biaya rendah. Kualitas yang lebih tinggi berarti biaya yang lebih tinggi pula, dengan kata lain peningkatan kualitas pasti dibarengi dengan peningkatan biaya. Biaya tinggi berarti harga jual tinggi, tetapi harga jual tinggi tidak selalu mencerminkan kualitas tinggi, karena tingginya harga produk dapat pula disebabkan oleh faktor lain seperti : terlalu jauh proses produksinya, terlalu rumit dalam proses, margin yang diperoleh terlalu tinggi, pengaruh daya beli konsumen, dan pengaruh hukum permintaan dan penawaran. Pandangan yang menyatakan bahwa kualitas yang lebih tinggi berarti biaya lebih tinggi mendapatkan kritikan dari para pioner kualitas. Juran meneliti tentang aspek ekonomis dari kualitas dan menyimpulkan bahwa manfaat kualitas jauh melebihi biayanya. Sedangkan Crosby mengajukan konsepnya yang terkenal, yaitu “quality is free”. Bahkan ada yang beranggapan bahwa biaya kualitas sebenarnya melebihi biaya yang terjadi apabila produk dihasilkan dengan cara yang benar sejak dari awal proses. Pada saat ini terdapat tiga kaegori pandangan yang berkembang di antara para praktisi mengenai biaya kualitas, yaitu : 1. Kualitas semakin tinggi berarti biaya semakin tinggi Tambahan biaya yang terjadi akibat dari peningkatan kualitas lebih besar dari manfaat peningkatan kualitas. Dengan kata lain manfaat tamahan dari peningkatan kualitas tidak dapat menutupi biaya tambahan. Pandangan seperti ini beranggapan bahwa peningkatan kualitas selalu diikuti oleh peningkatan biaya.
52 2. Biaya peningkatan kualitas lebih rendah dari penghematan yang dihasilkan Pandangan ini dikemukakan pertama kali oleh Deming dan banyak dipakai oleh perusahaan Jepang. Penghematan dihasilkan oleh berkurangnya pengerjaan ulang, produk cacat, dan biaya lainnya yang berkaitan dengan kerusakan. Pandangan ini menjadi landasan bagi perbaikan kualitas berkelanjutan atau terusmenerus pada kebanyakan perusahaan di Jepang. 3. Biaya kualitas melebihi biaya yang terjadi bila produk diproses secara benar sejak awalnya. Pandangan ini banyak dianut oleh para pendukung filosofi TQM yang menyatakan bahwa biaya kualitas tidak hanya menyangkut biaya secara langsung, tetapi juga biaya akibat kehilangan pelanggan, kehilangan pangsa pasar, biaya kehilangan peluang, dan banyak lagi biaya tersembunyi lainnya. Baik para manajer maupun perusahaan menginginkan agar biaya kualitas turun, tetapi dapat mencapai kualitas yang lebih tinggi atau minimal sampai pada batas tertentu. Untuk dapat mengukur biaya kualitas perlu dipahami dulu jenis biaya kualitas tersebut. Dilihat dari sumbernya biaya kualitas dapat berasal dari dalam perusahaan, yaitu biaya yang terjadi untuk menjaga agar kualitas produk yang dihasilkan sesuai dengan standar yang telah ditentukan. Biaya yang berasal dari luar perusahaan, yaitu biaya yang timbul setelah produk dan jasa sampai kepada konsumen. Sumber biaya kualitas dari dalam perusahaan maupun dari luar perusahaan dapat dikelompokkan menjadi empat kategori, yaitu : 1. Biaya pencegahan (Preventive Cost Category) Biaya pencegahan adalah biaya yang terjadi untuk mengidentifikasi dan menghilangkan penyebab kerusakan agar tidak terulang kembali kesalahan yang
53 sama dalam setiap produk. Dalam biaya pencegahan termasuk semua kegiatan baik yang berhubungan dengan spesifikasi desain, proses, dan pemeliharaan sistem kualitas. Contoh biaya pencegahan seperti : biaya perencanaan kualitas, biaya
pemasaran
dan
pelanggan,
biaya
operasi
pabrik,
biaya
untuk
pengembangan desain produk, biaya pembelian, biaya kualitas administrasi, dan biaya program perbaikan kualitas. 2. Biaya Inspeksi/Deteksi (Inspection/Detection Cost Category) Biaya inspeksi adalah biaya yang terjadi untuk menentukan apakah produk sesuai dengan standar kualitas yang telah ditentukan. Tujuan utama inspeksi ini adalah untuk menghindari terjadinya kerusakan pada waktu proses dan mencegah pengiriman produk yang tidak sesuai standar kepada konsumen. Contoh biaya inspeksi/deteksi atau disebut juga appraisal cost ini seperti : biaya pemeriksaan bahan baku yang diterima dari pemasok, biaya pemeriksaan produk dalam proses, biaya pengujian produk, biaya pemeriksaan kualitas produk, kalibrasi, survei, verifikasi, biaya pemeriksaan peralatan, biaya mengevaluasi persediaan material dan barang jadi. 3.
Biaya Kegagalan Internal (Internal Failure Cost Category) Biaya kegagalan internal adalah biaya yang terjadi karena ketidak sesuaian produk yang dihasilkan dengan standar yang telah ditentukan dan terdeteksi sebelum produk dikirim ke konsumen. Contoh biaya kegagalan internal ini seperti : biaya pengerjaan ulang (retest, rework), redesign, reinspeksi, tes ulang (retest), corrective action cost, scrap dari proses produksi yang tidak dapat dipakai lagi, kerusakan mesin (downtime), stok pengaman, biaya kelebihan kapasitas, biaya lembur untuk perbaikan.
54 4. Biaya Kegagalan Eksternal (External Failure Cost Category) Biaya kegagalan eksternal adalah biaya yang terjadi karena produk gagal memenuhi persyaratan yang telah ditentukan dan diketahui setelah produk tersebut dikirimkan kepada konsumen. Hal ini dapat menurunkan reputasi perusahaan di mata konsumen, kehilangan pelanggan, dan menurunnya pangsa pasar (loss of market share). Contoh biaya kegagalan eksternal ini seperti : biaya penanganan keluhan, biaya penarikan kembali produk di pasaran (product recall), biaya jaminan atau pertanggunan (warranty expenses), biaya penalti, loss of liability cost, biaya kehilangan penjualan (loss sales cost), dan biaya perbaikan kembali produk agar sesuai dengan standar. Biaya kegagalan eksternal ini sesungguhnya tidak perlu terjadi bila tidak ada kerusakan atau kerusakan dapat dideteksi sebelum produk dikirim ke konsumen. Kesulitan yang mungkin timbul dalam menilai dan menganalisis biaya kualitas adalah kebanyakan kategori biaya kualitas tidak tercermin secara langsung dalam catatan akuntansi perusahaan. Akibatnya informasi yang akurat mengenai biaya kualitas sulit diperoleh. Untuk mengatasi hal ini, perusahaan perlu melakukan penaksiran dengan membandingkan penampilan kualitas sekarang dengan penampilan kualitas yang lampau, sehingga biaya kualitas akan menampilkan variansi dari penampilan yang lalu.
2.4.
Pengendalian Kualitas Pengendalian kualitas merupakan proses yang berkelanjutan untuk menjamin
kualitas produk yang dihasilkan. Tujuan pelaksanaan pengendalian kualitas adalah untuk memperbaiki kualitas produk dan menurunkan ongkos secara keseluruhan. Terdapat dua
55 pendekatan dalam pengendalian kualitas, yaitu On-line Quality Control dan Off-line Quality Control. On-line Quality Control adalah kegiatan pengendalian kualitas yang dilakukan selama proses manufakturing berlangsung dengan menggunakan Statistical Process Control (SPC). Sifat on-line quality control adalah tindakan pengendalian yang reaktif, atau tindakan setelah kegiatan produksi berjalan. Artinya jika produk yang dihasilkan tidak memenuhi spesifikasi yang diharapkan, tindakan perbaikan terhadap proses dilakukan. Off-line Quality Control adalah pengendalian kualitas yang dilakukan sebelum proses produksi atau pengendalian kualitas yang bersifat preventif. Dengan tindakan secara preventif maka kemungkinan adanya cacat produk dan masalah kualitas dapat diatasi sebelum produksi berjalan. Pengurangan pada produk cacat akan mengurangi scrap dan produk gagal, yang akhirnya akan mengurangi pengembalian produk dari konsumen. Tujuan dari off-line quality control adalah untuk mengoptimasi desain produk dan proses dalam rangka mendukung kegiatan on-line quality control. Tujuan dan keuntungan dari pengendalian kualitas pada tahap desain produk adalah : 1. Membuat produk sesuai dengan kebutuhan konsumen dengan kualitas yang diharapkan. 2. Mendesain produk sesuai kemampuan manufakturnya, sehingga terlepas dari kesulitan pada saat produksi dengan biaya yang rendah dan kompetitif. 3. Mengurangi siklus pengembangan produk, sehingga produk sampai ke pasar sesingkat mungkin. 4. Memperbaiki produktivitas dengan biaya pembuatan yang rendah.
56 5. Menghasilkan produk dengan kualitas kompetitif tidak hanya pada saat ini tetapi tetap berkelanjutan.
2.4.1. Variasi Proses Menurut Gaspersz (2003, p3), variasi merupakan ketidakseragaman dalam proses operasional sehingga menimbulkan perbedaan dalam kualitas pada produk (barang/jasa) yang dihasilkan. Pada dasarnya dikenal ada dua jenis variasi yaitu : 1. Variasi Penyebab Khusus (Special Causes Variation) Adalah kejadian-kejadian di luar sistem yang mempengaruhi variasi dalam sistem. Penyebab khusus dapat bersumber dari manusia, peralatan, material, lingkungan, metode kerja, dan lain-lain. Penyebab khusus ini mengambil pola-pola non acak sehingga dapat diidentifikasikan/ditemukan, sebab mereka tidak selalu aktif dalam proses tetapi memiliki pengaruh yang lebih kuat pada proses sehingga menimbulkan variasi. Dalam konteks pengendalian proses statiskal menggunakan peta-peta kendali (control charts), jenis variasi ini sering ditandai dengan titik-titik pengamatan yang melewati atau keluar dari batas-batas pengendalian yang didefinisikan ( defined control limits ). 2. Variasi Penyebab Umum (Common Causes of Variation) Adalah faktor-faktor di dalam sistem atau yang melekat pada proses yang menyebabkan timbulnya variasi dalam sistem serta hasil-hasilnya. Penyebab umum sering disebut juga penyebab acak (random causes) atau penyebab system (system causes). Karena penyebab umum ini selalu melekat pada sistem, untuk menghilangkannya kita harus menelusuri elemen-elemen dalam sistem itu dan hanya pihak manajemen yang dapat memperbaikinya, karena pihak manajemenlah
57 yang mengendalikan sistem itu. Dalam konteks pengendalian proses statistikal dengan menggunakan peta-peta kendali, jenis variasi ini sering ditandai dengan titik-titik pengamatan yang berada dalam batas-batas pengendalian yang didefinisikan.
2.4.2. Jenis Data Data adalah catatan tentang sesuatu, baik yang bersifat kualitatif maupun kuantitatif yang dipergunakan sebagai petunjuk untuk bertindak. Berdasarkan data, kita mempelajari fakta-fakta yang ada dan kemudian mengambil tindakan yang tepat berdasarkan pada fakta itu. Dalam konteks pengendalian proses statistikal dikenal dua jenis data, yaitu : (Gaspersz, 1998, p43) 1. Data Atribut Merupakan data kualitatif yang dapat dihitung untuk pencatatan dan analisis. Contoh dari data atribut karakteristik kualitas adalah ketiadaan label pada kemasan produk, kesalahan proses administrasi buku tabungan nasabah, banyaknya jenis cacat pada produk, banyaknya produk kayu lapis yang cacat karena corelap, dll. Data atribut
biasanya
diperoleh
dalam
bentuk
unit-unit
nonkonformans
atau
ketidaksesuaian dengan spesifikasi atribut yang ditetapkan. 2. Data Variabel Merupakan data kuantitatif yang diukur untuk keperluan analisis. Contoh dari data variabel karakteristik kualitas adalah diameter pipa, ketebalan produk kayu lapis, berat semen dalam kantong, banyaknya kertas setiap rim, konsentrasi elektrolit dalam persen, dll. Ukuran-ukuran berat, panjang, lebar, tinggi, diameter, volume biasanya merupakan data variabel.
58 2.4.3. Tools yang Digunakan dalam Pengendalian Kualitas 2.4.3.1. Pareto Diagram Diagram Pareto adalah grafik batang yang menunjukkan masalah berdasarkan urutan banyaknya kejadian. Masalah yang paling banyak terjadi ditunjukkan oleh grafik batang pertama yang tertinggi serta ditempatkan pada sisi paling kiri, dan seterusnya sampai masalah yang paling sedikit terjadi ditunjukkan oleh grafik batang terakhir yang terendah serta ditempatkan pada sisi paling kanan. Diagram Pareto diperkenalkan oleh seorang ahli ekonomi dari Italia yang bernama Vilfredo Pareto, dalam studinya mengemukakan mengenai prinsip 80/20. Prinsip ini kemudian sering disebut dengan Prinsip Pareto yang mengatakan bahwa 80 persen dari semua masalah diakibatkan oleh 20 persen dari penyebabnya. Sehingga diagram ini sangat berguna dalam prioritas pengambilan tindakan-tindakan perbaikan proses. Pada dasarnya diagram Pareto mempunyai kegunaan untuk : -
Menentukan frekuensi relatif dan urutan pentingnya masalah-masalah atau penyebab-penyebab dari masalah yang ada.
-
Memfokuskan perhatian pada isu-isu kritis dan penting melalui pembuatan ranking terhadap masalah-masalah atau penyebab-penyebab dari masalah itu dalam bentuk yang signifikan.
-
Membandingkan data cacat berdasarkan tipe, dan melihat cacat mana yang paling umum terjadi.
-
Membandingkan masalah-masalah berdasarkan hari tiap minggu atau tiap bulan, untuk melihat selama periode tersebut masalah yang muncul paling sering.
59 -
Mengurutkan tipe dari keluhan pelanggan, untuk mengetahui keluhan apa yang paling sering terjadi.
Langkah-langkah pembuatan diagram Pareto (Gaspersz, 1998, p53) dapat dikemukakan sebagai berikut : -
Langkah 1
Menentukan masalah apa yang akan diteliti.
Menentukan data apa yang diperlukan dan bagaimana mengklasifikasikan atau mengkategorikan data itu.
-
Menentukan metode dan periode pengumpulan data.
Langkah 2 Membuat suatu ringkasan daftar atau tabel yang mencatat frekuensi kejadian dari masalah yang telah diteliti dengan menggunakan formulir pengumpulan data atau lembar periksa.
-
Langkah 3 Membuat daftar masalah secara berurut berdasarkan frekuensi kejadaian dari yang tertinggi sampai terendah, serta hitunglah frekuensi kumulatif, persentase dari total kejadian, dan persentase dari total kejadian secara kumulatif.
-
Langkah 4 Menggambar dua buah garis vertikal dan sebuah garis horisontal. a. Garis Vertikal a. Garis vertikal sebelah kiri : buatkan pada garis ini, skala dari nol sampai total keseluruhan dari kerusakan. b. Garis vertikal sebelah kanan : buatkan pada garis ini, skala dari 0% sampai 100%.
60 b. Garis Horisontal Bagilah garis ini ke dalam banyaknya interval sesuai dengan banyaknya item masalah yang diklasifikasikan. -
Langkah 5 Buatkan histogram pada diagram Pareto.
-
Langkah 6 Gambarkan kurva kumulatif serta cantumkan nilai-nilai kumulatif (total kumulatif atau persen kumulatif) di sebelah kanan atas dari interval setiap item masalah.
-
Langkah 7 Memutuskan untuk mengambil tindakan perbaikan atas penyebab utama dari masalah yang sedang terjadi itu. Untuk mengetahui akar penyebab dari suatu masalah, kita dapat menggunakan diagram sebab-akibat
2.4.3.2. Fishbone Diagram Fishbone diagram atau sering juga disebut dengan diagram Ishikawa dan cause and effect diagram dikembangkan oleh Dr. Kaoru Ishikawa. Ia mengembangkan suatu metode untuk menggambarkan penyebab dari masalah yang ada. Menurut Pyzdek (2002, p261) fishbone diagram adalah suatu alat yang digunakan untuk mengelola dan menampilkan secara grafis pengetahuan yang dimiliki terhadap masalah tertentu. Kegunaan dari diagram fishbone ini adalah untuk mengumpulkan ide yang merupakan metode dasar dari brainstorming terstruktur. Dengan diagram fishbone dapat dikelompokkan penyebab-penyebab yang mungkin dan membantu dalam memikirkan semua kemungkinan yang ada dibandingkan hanya fokus pada penyebab tertentu.
61
Sumber : Gasperz, 1998.
Gambar 2.1 Skema Fishbone Diagram Langkah-langkah dalam pembuatan diagram sebab-akibat dapat dikemukakan sebagai berikut : 1. Mulai dengan pernyataan masalah-masalah utama yang penting dan mendesak untuk diselesaikan. 2. Tuliskan pernyataan masalah itu pada “kepala ikan“, yang merupakan akibat (efek). Tuliskan pada sisi sebelah kanan dari kertas (kepala ikan), kemudian gambarkan “tulang belakang“ dari kiri ke kanan dan tempatkan pernyataan masalah itu dalam kotak. 3. Tuliskan faktor-faktor penyebab utama (sebab-sebab) yang mempengaruhi masalah kualitas sebagai “tulang besar“, juga ditempatkan dalam kotak. Faktor-faktor penyebab atau kategori-kategori utama dapat dikembangkan melalui stratifikasi ke dalam pengelompokan dari faktor-faktor : manusia, mesin, peralatan, material, metode kerja, lingkungan kerja, pengukuran, dan lain-lain, atau stratifikasi melalui
62 langkah-langkah aktual dalam proses. Faktor-faktor penyebab atau kategori-kategori dapat dikembangkan melalui brainstorming. 4. Tuliskan penyebab-penyebab sekunder yang mempengaruhi penyebab-penyebab utama (tulang-tulang besar), serta penyebab sekunder itu dinyatakan sebagai “ tulang-tulang berukuran sedang “. 5. Tuliskan penyebab-penyebab tersier yang mempengaruhi penyebab-penyebab sekunder (tulang-tulang berukuran sedang), serta penyebab-penyebab tersier itu dinyatakan sebagai “ tulang-tulang berukuran kecil “. 6. Tentukan item-item yang penting dari setiap faktor dan tandailah faktor-faktor penting tertentu yang kelihatannya memiliki pengaruh nyata terhadap karakteristik kualitas.
2.4.3.3. P Diagram P-diagram merupakan tool yang sangat berguna dan membantu dalam melakukan brainstorming dan documenting karena P-diagram memberikan gambaran yang sangat jelas dari suatu sistem yang sedang diteliti dimana mulai dari input hingga output dan faktor-faktor yang mempengaruhi sistem. Oleh karena itu, diagram ini telah banyak digunakan untuk pengembangan proyek. Konsep P-diagram muncul berdasarkan konsep perubahan 100% dari energi yang masuk (input signal) menjadi 100% fungsi yang ideal. Setiap sistem yang telah direncanakan untuk mencapai fungsi yang ideal, dimana ketika semua energi yang masuk (input) ditransformasikan secara efisien menjadi energi output yang diinginkan, dengan kata lain jika 100% energi input ditransformasikan maka energi output yang dihasilkan juga 100%. Namun dalam kenyataannya tidak ada fungsi atau sistem yang
63 seperti ini. Yang terjadi adalah energi sistem (output) kurang dari 100% ketika 100% energi input ditransformasikan secara efisien. Kekurangan ini akan menciptakan suatu sistem atau output yang tidak diharapkan, dengan kata lain adalah error states.
Sumber : Thomas Edison, http://www.thequalityportal.com/p_diagram.htm.
Gambar 2.2 Skema P-Diagram Sejumlah faktor yang dapat mempengaruhi karakteristik kualitas produk (responses variable) dapat diklasifikasikan menjadi :
Signal Factors Merupakan faktor yang menjadi input dari suatu sistem atau parameter-parameter signal. Jika signal konstan disebut karakteristik statis dan jika signal mempunyai beberapa nilai yang berubah-ubah disebut karakteristik dinamis. Faktor ini tidak diset oleh ahli rekayasa desain tetapi oleh pengguna berdasarkan kondisi yang ada pada saat itu.
Noise Factors Merupakan parameter yang menjadi penyebab terjadinya variasi (deviation) karakteristik kualitas dari target. Noise factors adalah faktor yang nilainya tidak
64 bisa diatur atau dikendalikan, atau faktor yang nilainya tidak ingin diatur atau dikendalikan. Pada saat tertentu sebenarnya faktor ini dapat dikendalikan tetapi membutuhkan biaya yang mahal. Faktor gangguan terdiri atas : a. External
(outer)
noise,
merupakan
semua
gangguan
dari
kondisi
lingkungan/luar produksi. b. Internal (inner) noise : semua gangguan dari dalam produksi sendiri. c. Unit to unit noise : perbedaan antara unit yang diproduksi dengan spesifikasi yang sama.
Control Factors Merupakan parameter-parameter yang nilainya dapat dikontrol oleh ahli rekayasa desain. Faktor terkontrol mempunyai nilai satu atau lebih yang disebut level.
2.4.3.4. Peta Kendali Control Chart atau peta kendali adalah grafik yang secara khusus memberi informasi dalam dua dimensi mengenai distribusi proses baik itu berupa rata-rata maupun varian dan kecenderungan proses. Peta kendali pertama kali digunakan oleh Dr. Walter Andrew Shewhart dari Bell Telephone Laboratories pada tahun 1924. Peta kendali umumnya memiliki tiga garis batas yaitu batas kontrol atas (Upper Control Limit – UCL) yang merupakan garis batas 3σ, rata-rata (Central Limit – CL), dan batas kontrol bawah (Lower Control Limit – LCL) yang merupakan garis batas -3σ. Secara umum titik yang berada didalam rentang UCL-LCL dikatakan berada dalam batas kontrol (in control). Titik yang out of control mengindikasikan bahwa terdapat variasi penyebab khusus dan bahwa analisa dan evaluasi perlu dilakukan untuk variasi penyebab khusus tersebut.
65 Menurut Montgomery (2001, p160) fungsi terpenting dari peta kendali adalah untuk memperbaiki proses dimana pada umumnya proses tidak beroperasi di dalam batas kontrol, dengan demikian maka penggunaan peta kendali secara rutin akan dapat mengidentifikasikan penyebab khusus, bila penyebab khusus ini dapat diatasi maka variabilitas akan berkurang dan proses akan menjadi lebih baik. Fungsi lain dari peta kendali adalah sebagai alat untuk mengukur kapabilitas proses, dimana dari peta yang sudah in control, kita dapat mengukur parameter proses seperti tingkat cacat, rata-rata, standar deviasi dan parameter lainnya yang berguna dalam pengukuran kapabilitas proses. Peta kendali dapat diklasifikasikan menjadi dua berdasarkan jenis datanya yaitu peta kendali untuk data variabel dan peta kendali untuk data atribut. Data variabel adalah tipe data kontinu yang didapat sebagai hasil pengukuran seperti data berat, panjang, dan lain sebagainya. Data atribut adalah tipe data diskrit yang memiliki dua kemungkinan seperti baik atau tidak baik. Pemilihan diagram kontrol dapat ditentukan sesuai dengan jenis data dan ukuran subgrupnya seperti yang ditampilkan di Tabel 2.1. Tabel 2.1 Tabel Jenis Data dan Peta Kendali yang Digunakan Jenis Data Data Atribut
Data Variabel
Sumber : Gaspersz,1998
Jenis Peta Kendali np Chart p Chart c Chart u Chart X – S Chart X – R Chart I – MR Chart
66 A. Peta kendali untuk data atribut : i. np Chart Merupakan peta kendali berdasarkan proporsi cacat. Proporsi cacat adalah perbandingan antara jumlah produk cacat dengan jumlah produk yang dihasilkan. Produk dikatakan cacat bila terdapat satu atau lebih karakterisitik produk yang seharusnya dimiliki namun tidak dimiliki. Peta np digunakan untuk pengamatan dengan jumlah sampel yang tetap. ii. p Chart Sama halnya dengan np chart, peta kendali p digunakan berdasarkan proporsi cacat hanya saja peta p diguanakan ketika jumlah sampel dalam pengamatan berjumlah tidak sama antara pengamatan satu dengan lainnya. iii. c Chart c chart digunakan ketika cacat dihitung berdasarkan jumlah jenis cacat yang terdapat dalam satu unit produk dimana dalam satu unit produk ada kemungkinan terdapat satu atau lebih jenis cacat. C chart digunakan ketika jumlah sampel dalam pengamatan berjumlah sama. iv. u Chart Sama halnya dengan c chart, u chart digunakan untuk pengukuran berdasarkan jumlah jenis cacat, hanya saja u chart digunakan ketika jumlah sampel dalam suatu pengamatan berbeda antara pengamatan yang satu dengan yang lainnya.
B. Peta kendali untuk data variabel : i.
X - S Chart Terdapat dua syarat dalam penggunaan X – S Chart yaitu :
67 a. Ukuran subgrup lebih besar dari 10. b. Data merupakan tipe data variabel. X - S Chart dapat digunakan untuk ukuran sampel yang sama maupun yang bervariasi. ii.
X – R Chart Seperti juga halnya pada X – S chart, juga terdapat dua syarat dalam penggunaan X – R chart : a. Ukuran subgrup antara 2 – 10. b. Data merupakan tipe data variabel.
iii.
I – MR Chart Terdapat beberapa situasi dimana ukuran subgrup yang digunakan adalah 1, atau digunakan data individual : a. Inspeksi dan teknologi pengukuran dilakukan secara otomatis dan setiap unit dianalisa sehingga tidak terdapat basis untuk pembuatan subgrup. b. Tingkat produksi yang rendah sehingga pengambilan sampel lebih besar dari satu tidak memungkinkan. Selain itu rentang antara pengamatan bisa menjadi masalah dalam subgrup. c. Pengukuran berulang hanya berbeda karena adanya kesalahan analisis atau laboratorium, seperti halnya dalam proses kimia. d. Pengukuran yang berulang diambil dari unit produk yang sama. e. Untuk proses tertentu, pengukuran untuk parameter tertentu hanya akan berbeda sedikit sekali. Peta kendali I – MR dilakukan dengan pertama-tama membuat peta MR dan setelah peta tersebut in control maka dibuat peta I.
68 Ketentuan dalam penggunaan peta kendali variabel : • Untuk R, S dan MR chart, data yang out of control adalah data yang berada di luar rentang LCL – UCL. Dimana hal tersebut menunjukkan bahwa distribusi data telah menjadi kurang konsisten. • Peta kendali untuk R, S dan MR chart harus berada dalam batas kendali sebelum kita dapat melanjutkan ke peta kendali rata-rata dan individual. (George, 2005) • Sementara untuk chart rata-rata dan chart individual, terdapat beberapa aturan mengenai penentuan data yang out of control : o Data ekstrim (di luar rentang LCL – UCL) : menandakan adanya pergeseran nilai rata-rata, dan peningkatan nilai standar deviasi. Perlu dilakukan pengecekan dengan data pada S, R atau MR. o Sembilan titik secara berurut di satu sisi dari peta kendali (di atas CL atau di bawah CL) : menandakan adanya pergeseran di nilai rata-rata. o Enam titik berturut-turut terus naik atau turun : menandakan pola data trend. o Empat belas data berturut-turut bergerak naik dan turun : menunjukkan adanya variasi antara dua sistem yang berbeda (misalnya mesin atau operator yang berbeda). o Dua dari tiga data berada di luar batas 2 σ : menandakan pergeseran nilai rata-rata dan peningkatan nilai standar deviasi. o Empat dari lima data berada di luar batas 1 σ : menandakan adanya pergeseran nilai rata-rata.
69 o Lima belas data berturut-turut berada di dalam batas 1 σ : menandakan stratifikasi dalam subgrup dimana observasi berada pada rentang rata-rata yang berbeda. o Tidak terdapat satu datapun yang terletak di dalam batas 1 σ dianatara delapan data berturut-turut : menandakan adanya stratifikasi dalam subgrup dimana observasi berasal dari satu sumber tetapi subgrup berasal dari sumber yang berbeda dengan nilai rata-rata yang berbeda.
2.5.
Metode Taguchi
2.5.1. Latar Belakang Metode Taguchi dicetuskan oleh Genichi Taguchi pada tahun 1949 saat mendapat tugas untuk memperbaiki sistem komunikasi di Jepang. Ia memiliki latar belakang engineering, juga mendalami statistika dan matematika tingkat lanjut sehingga ia dapat menggabungkan antara teknik statistik dan pengetahuan engineering. Metode ini ditemukan untuk memenuhi informasi yang akurat pada saat percobaan yang besar tidak mungkin dilakukan. Metode Taguchi berawal dari metode desain eksperimen klasik yang dikembangkan oleh R.A. Fisher di Inggris, metode ini berdasarkan pada pendekatan statistika yang didasarkan pada latin square dan pada awalnya dikembangkan untuk industri pertanian. Metode ini menjadi tidak praktis untuk diterapkan pada industri manufaktur karena adanya asumsi tertentu dan penekanan pada prosedur-prosedur tertentu. Taguchi mengembangkan metode desain eksperimen dengan memanfaatkan sifat desain kokoh (robust design). Sejak tahun 1960, metode Taguchi telah sukses digunakan untuk meningkatkan kualitas dari produk Jepang. Tahun 1980, banyak perusahaan yang akhirnya menyadari
70 bahwa metode lama tidak lagi kompetitif untuk menjamin kualitas dari produk yang dihasilkan karena inspeksi kualitas tidak dapat memperbaiki produk yang cacat. Bagaimanapun menurut Taguchi, kualitas produk harus diperhatikan sejak awal yakni mulai dari tahap desain produk. Filosofi yang dikembangkan oleh Taguchi adalah kualitas yang diukur dengan penyimpangan karakteristik dari nilai target. Faktor-faktor tidak terkendali seperti kegaduhan dapat menyebabkan penyimpangan dan menambah biaya. Pengurangan faktor kegaduhan tersebut sulit dan tidak mungkin dapat diterapkan. Metode Taguchi mencoba meminimalkan pengaruh kegaduhan tersebut dengan mencoba menentukan tingkat maksimal faktor-faktor penting yang dapat dikendalikan berdasar pada konsep kekuatan atau kesamaan (robustness). Ide dasar dalam desain Taguchi adalah untuk mengidentifikasi, melalui penyelidikan interaksi antara parameter kontrol dan noise variabel, setting yang tepat pada parameter kontrol dengan performansi sistem yang kokoh (robust) terhadap variasi yang tidak dapat dikendalikan (uncontrollable variation). Dengan kata lain, Taguchi melakukan desain yang kokoh dalam proses dan produk sedemikian sehingga dapat mencegah masuknya faktor yang tidak terkendali dalam proses produksi dan mencegah masuknya dampak faktor yang tidak terkendali tersebut pada konsumen.
2.5.2. Langkah-Langkah dalam Metode Taguchi 2.5.2.1.Penentuan Variabel Tak Bebas Variabel tak bebas adalah variabel yang perubahannya tergantung pada variabelvariabel lain. Dalam merencanakan suatu percobaan harus dipilih dan ditentukan dengan jelas variabel tak bebas mana yang akan diselidiki. Dalam percobaan Taguchi variabel
71 tak bebas adalah karakteristik kualitas yang terdiri dari tiga kategori, yaitu : (Peace, 1993, p46) 1. Measureable characteristics (karakteristik yang dapat diukur), yaitu semua hasil akhir yang diamati dapat diukur dengan skala kontinu seperti dimensi, berat, tekanan dan lain-lain. Karakteristik kualitas yang dapat diukur dapat diklasifikasikan atas :
Nominal is the best Adalah karakteristik kualitas yang menuju suatu nilai target yang tepat pada suatu nilai tertentu.
Smaller is better Merupakan pencapaian karakteristik kualitas, jika semakin kecil (mendekati nol) semakin baik.
Larger is better Merupakan pencapaian karakteristik kualitas, jika semakin besar semakin baik.
2. Attribute Characteristics (karakteristik atribut), yaitu hasil akhir yang diamati tidak dapat diukur dengan skala kontinu, tetapi dapat diklasifikasikan secara kelompok. Seperti kelompok kecil, menengah, besar, dan sangat besar. Bisa juga dikelompokkan berdasarkan berhasil / tidak. 3. Dynamic characteristics (karakteristik dinamik), merupakan fungsi representasi dari proses yang diamati. Proses yang diamati digambarkan sebagai signal atau input dan output sebagai hasil dari signal.
2.5.2.2.Penentuan Variabel Bebas Pada tahap ini akan dipilih faktor-faktor mana saja yang akan diselidiki pengaruhnya. Faktor – faktor yang berpengaruh termasuk variabel bebas yaitu variabel
72 yang perubahannya tidak tergantung pada variabel lain. Dalam suatu eksperimen tidak seluruh faktor yang diperkirakan mempengaruhi respon diselidiki, sebab terlalu banyak faktor yang diteliti, analisisnya akan menjadi kompleks, sehingga hanya faktor – faktor yang dianggap penting saja yang diselidiki.
2.5.2.3.Pemisahan Faktor-faktor Kontrol dan Gangguan Faktor-faktor yang diamati terbagi atas faktor kontrol dan faktor gangguan. Dalam metode Taguchi, keduanya perlu diidentifikasikan dengan jelas sebab pengaruh antar kedua faktor tersebut berbeda. Untuk pemisahan faktor-faktor tersebut dapat digunakan P-diagram, agar faktor-faktor yang berpengaruh pada responses dapat terlihat dengan jelas.
2.5.2.4.Penentuan Jumlah Level dan Nilai Level Faktor Pemilihan jumlah level penting artinya untuk ketelitian hasil percobaan dan biaya pelaksanaan percobaan. Makin banyak level yang diteliti maka hasil percobaan akan lebih teliti karena data yang diperoleh lebih banyak. Tetapi banyaknya level akan meningkatkan jumlah pengamatan sehingga menaikkan biaya percobaan.
2.5.2.5.Identifikasi Interaksi Antar Faktor Interaksi muncul ketika dua faktor atau lebih yang mengalami perlakuan secara bersama akan memberikan hasil yang berbeda pada karakteristik kualitas dibandingkan jika faktor mengalami perlakuan secara sendiri-sendiri.(Belavendram, 1995, p531) Kesalahan dalam penentuan interaksi akan berpengaruh pada kesalahan interpretasi data dan kegagalan pada penentuan proses yang optimal. Tetapi Taguchi lebih mementingkan
73 engineering approach dengan cara pengamatan pada main effect (penyebab utama) sehingga adanya interaksi diusahakan seminimal mungkin, tetapi tidak dihilangkan sehingga perlu dipelajari kemungkinan munculnya interaksi.(Peace, 1993, p86). Jumlah interaksi yang terlalu banyak akan meningkatkan biaya percobaan dan tidak efisien dalam penggunaan waktu. Maka penentuan interaksi dilakukan hanya antar faktor yang potensial mengalami interaksi saja.
2.5.2.6.Perhitungan Derajat Kebebasan Menurut Bagchi (1993, p114) perhitungan dengan derajat kebebasan dilakukan untuk menghitung jumlah minimum percobaan yang harus dilakukan untuk menyelidiki faktor yang diamati. Jika nA dan nB adalah jumlah perlakuan untuk faktor A dan B maka: dof untuk faktor A
= nA – 1
dof untuk faktor B
= nB – 1
dof untuk interaksi faktor A dan B
= (nA – 1)(nB – 1)
Jumlah total dof
= (nA – 1) + (nB – 1) + (nA – 1) (nB – 1)
dof total
= (jumlah total percobaan x jumlah pengulangan) –1
dof error
= vT – vA – vB – vAxB
2.5.2.7.Pemilihan Orthogonal Array Orthogonal Array (OA) merupakan salah satu bagian kelompok dari percobaan yang hanya menggunakan bagian dari kondisi total, dimana bagian ini barangkali hanya separuh, seperempat atau seperdelapan dari percobaan faktorial penuh. Orthogonal
74 Array diciptakan oleh Jacques Hardmard pada tahun 1897, dan mulai diterapkan pada perang dunia II oleh Plackett dan Burman. Matriks Taguchi secara matematis identik dengan matriks Hardmard, hanya kolom dan barisnya dilakukan pengaturan lagi. Keuntungan Orthogonal Array adalah kemampuannya untuk mengevaluasi berapa faktor dengan jumlah tes yang minimum. Jika pada percobaan terdapat 7 faktor dengan level 2, maka jika menggunakan full factorial akan diperlukan 27 buah percobaan. Dengan Orthogonal Array, jumlah percobaan yang perlu dilakukan dapat dikurangi sehingga akan mengurangi waktu dan biaya percobaan. (Ross, 1989, p70). Taguchi hanya menyediakan dua macam orthogonal array dasar, yaitu orthogonal array dengan faktor-faktornya mempunyai dua level dan orthogonal array dengan faktorfaktornya mempunyai tiga level. Jika orthogonal array yang siap pakai tidak tersedia maka perlu dilakukan modifikasi dan memungkinkan untuk melakukan pengujian faktor-faktor multiple level. Contoh orthogonal array adalah L8(27) yang mempunyai arti delapan adalah baris yang menyatakan banyaknya observasi, dua menyatakan level dan tujuh menyatakan kolom yaitu banyaknya faktor dan interaksi faktor. Taguchi telah membuat 18 Orthogonal Array yang biasa juga disebut OA Standar (Belavendram, 1995, p89). Pemilihan penggunaan OA disesuaikan dengan jumlah Dof berdasarkan pada tabel berikut ini : (Bagchi, 1993, p91) Tabel 2.2 Tabel Pemilihan Orthogonal Array Jumlah DoF 2-3 4-7 8-11 12-15 Sumber : Bagchi, 1993.
Orthogonal Array L4 L8 L12 L16
75 Dalam memilih jenis Orthogonal Array harus diperhatikan jumlah level faktor yang diamati yaitu : a. Jika semua faktor adalah dua level: pilih jenis OA untuk 2 level faktor. b. Jika semua faktor adalah tiga level: pilih jenis OA untuk 3 level faktor. c. Jika beberapa faktor adalah multi-level faktor : gunakan Dummy Treatment, Metode Kombinasi atau Metode Idle Columns.(Ross, 1989, p63,67-69) d. Jika terdapat campuran faktor dari dua, tiga, atau empat level : lakukan modifikasi OA dengan Merging Columns. (Ross, 1989, p60-63)
2.5.2.8. Persiapan dan Pelaksanaan Percobaan Sudjana (1980, p10) menyatakan bahwa dua kondisi diperlukan untuk memperoleh estimasi kesalahan percobaan yang valid yaitu replikasi. Replikasi adalah pengulangan kembali perlakuan yang sama suatu percobaan dengan kondisi yang sama untuk memperoleh ketelitian yang lebih tinggi. Replikasi dalam eksperimen Taguchi terwakili oleh eksperimen untuk setiap kombinasi faktor pada outer array. Hal ini dilakukan untuk mengurangi tingkat kesalahan eksperimen dan meningkatkan ketelitian data eksperimen.
2.5.2.9.Analisa Data Pada tahap ini dilakukan pengumpulan, pengaturan, perhitungan, dan penyajian data dalam suatu lay out yang sesuai dengan desain yang dipilih untuk suatu eksperimen. Dalam perhitungan tersebut, dapat terlihat berapa besar kontribusi masing-masing faktor terhadap karakteristik produk. Cara yang digunakan untuk menganalisa data adalah dengan melihat dan menganalisa grafik main effect responses dan grafik interaction plot
76 yang dihasilkan untuk rata-rata dan rasio S/N. Perhitungan untuk menganalisa data dapat terbagi menjadi dua metode, yaitu :
Metode Average (Metode Rata-rata) Perhitungan dengan metode ini dimaksudkan untuk mengetahui pengaruh dari masing-masing faktor dan interaksi terhadap nilai tengah dari hasil yang diharapkan.
Metode S/N Rasio (Signal to Noise) Rasio signal to Noise adalah rasio rataan (signal) terhadap standar deviasi (noise), disingkat rasio S/N dan dilambangkan dengan η. Satuan rasio S/N adalah desibel (dB). Dalam percobaan, respon rataan digunakan untuk mengoptimasi factor-faktor yang berpengaruh terhadap rata-rata dan respon rasio S/N digunakan untuk
mengoptimasi
faktor-faktor
yang
berpengaruh
terhadap
variansi.
(Belavendram, 1995, p507-508). Rasio S/N digunakan untuk memilih faktor-faktor yang memiliki kontribusi pada pengurangan variansi suatu respons. Rasio S/N merupakan rancangan untuk transformasi pengulangan data (paling sedikit dua untuk satu percobaan) ke dalam suatu nilai yang merupakan ukuran variansi yang timbul. (Ross, 1989, p172). Rasio S/N adalah cara yang sangat berguna dalam mengevaluasi kualitas sebuah proses atau produk. Rasio ini mengukur level performansi terhadap level faktor gangguan pada performansi. Dengan demikian, rasio S/N merupakan sebuah evaluasi kestabilan dari performansi karakteristik output. Rasio S/N bertujuan untuk mengukur sensitifitas dari karakteristik kualitas dari faktor yang dapat dikontrol terhadap pengaruh faktor eksternal yang tidak dikontrol. Dalam suatu percobaan bertujuan untuk
77 mendapat nilai rasio S/N terbesar, karena dengan semakin besar rasio S/N maka variasi produk sekitar nilai target semakin kecil. Terdapat beberapa jenis rasio S/N sesuai dengan tipe kualitas, yaitu nominal is the best, smaller the better, dan bigger the better. Rumus untuk menghitung rasio S/N adalah : Mean responses
Standard deviation
: y=
: S=
1 n ∑ yi n i =1
(y − y) ∑ n
i =1
2
i
n −1
Tabel 2.3 Tabel Rumus SNR Berdasarkan Karakteristik Kualitas Karakteristik Kualitas Smaller the Better
Rumus SNR ⎛1 n ⎞ SN S = −10 log ⎜ ∑ y i2 ⎟ ⎝ n i =i ⎠
Nominal is Best
⎛ y2 SN T = 10 log ⎜ 2 ⎜S ⎝
⎞ ⎟ ⎟ ⎠
Larger The Better
⎛1 n 1 SN L = −10 log ⎜⎜ ∑ 2 ⎝ n i =i y i
⎞ ⎟⎟ ⎠
Sumber : Mitra, 1993.
2.5.2.10.Pemilihan Level Faktor-Faktor Utama
Untuk mendapatkan suatu kondisi optimal harus dilakukan pemilihan faktorfaktor yang berpengaruh pada kondisi optimal dari kualitas suatu produk. Dari efek tiaptiap faktor dapat dilihat urut-urutan pengaruh dari tiap-tiap faktor faktor mulai yang berpengaruh besar sampai yang berpengaruh kecil. Dari rata-rata respon tiap faktor dipilih yang paling kecil sebagai rancangan usulan karena karakteristik mutu untuk cacat adalah smaller the better.
78 2.5.2.11.Percobaan Konfirmasi
Percobaan konfirmasi adalah percobaan yang dilakukan untuk memeriksa kesimpulan setting kondisi optimal yang didapat dari perhitungan (validasi kesimpulan yang ditarik selama fase analisa). Tujuan percobaan konfirmasi adalah untuk memverifikasi : (Bagchi, 1993, p87) 1. Dugaan yang dibuat pada saat model performansi penentuan faktor dan interaksinya. 2. Setting parameter (faktor) yang optimal analisa hasil percobaan pada performansi yang diharapkan Pada saat percobaan konfirmasi yang dilakukan adalah men-setting kondisi optimal untuk faktor dan level signifikan, sedangkan untuk faktor yang tidak signifikan, setting untuk level faktornya dipilih berdasarkan pertimbangan biaya ekonomis. (Ross,
1989, p182)
2.5.2.12.Perhitungan Taguchi Loss Function
Kerugian kualitas digunakan dalam mengukur performansi karakteristik kualitas dalam pencapaian nilai target (target value) yaitu suatu nilai yang ideal dari performansi karakteristik tersebut. Semakin dekat penyimpangan produk dari nilai target yang telah ditetapkan maka semakin baik mutunya. Taguchi menekankan bahwa kualitas produk adalah fungsi dari karakteristik kunci suatu produk yang disebut karakteristik– karakteristik performansi. Tujuan dari Quality Control adalah untuk mengontrol variasi fungsional dan masalah-masalah yang berkaitan. Karena tidak adanya evaluasi secara kuantitatif untuk kualitas dan kerugian kualitas, masalah-masalah dari QC dan pemecahannya dilihat secara subyektif. Tujuan dari Quality Lost Function adalah untuk
79 mengevaluasi secara kuantitatif dari kerugian kualitas yang disebabkan oleh variasi fungsional. Metode konvensional menggunakan loss-by-defect untuk menghitung kegagalan kualitas yang disebabkan adanya produk yang cacat. Semua produk dalam batas spesifikasi diasumsikan tidak memiliki kegagalan kualitas. Oleh karena itu, jika diketahui proporsi produk yang cacat, maka tidak susah untuk menghitung kegagalan kualitasnya. Sedangkan Taguchi loss function digunakan dalam mengukur performansi karakteristik kualitas dalam pencapaian nilai target (Target Value, yaitu nilai yang ideal dari performansi karakteristik tersebut). Semakin dekat penyimpangan produk dari nilai target yang telah ditetapkan, semakin baik mutunya.
Sumber : Bagchi, 1993
Gambar 2.3 Taguchi Loss Function
80 Untuk melakukan perhitungan loss function, maka digunakan rumus : k =
L0
Δ2
Dimana : k
= koeffisien biaya
L0
= rata-rata biaya
Δ2
= toleransi
Khusus untuk Larger the Better : k = L 0 xΔ2
Tabel 2.4 Tabel Rumus Loss Function Berdasarkan Karakteristik Kualitas Karakteristik Kualitas
Jenis Produk
Smaller the Better
One-Piece 2 L = k (y - t )
L = k S2 + y − t
Nominal is Best
L = ky 2
L = k S2 + y
Larger The Better
⎛1⎞ L = k⎜⎜ ⎟⎟ ⎝y⎠
Sumber : Mitra, 1993
Dimana : y
= rata-rata hasil percobaan
t
= nilai target
S
= standar deviasi
Many-Pieces
[
2
L=
k μ2
(
(
2
)] 2
)
⎧ 3S 2 ⎫ ⎨1 + 2 ⎬ μ ⎭ ⎩
81
Sumber : Bagchi, 1993
Gambar 2.4 Kurva Loss Function Berdasarkan Karakteristik Kualitas Untuk memastikan bahwa data-data yang digunakan untuk perhitungan loss
function ini valid, maka dilakukan uji keseragaman data dan uji kecukupan data. Uji keseragaman data dapat menggunakan peta kontrol. Pembuatan peta kontrol ini dilakukan menggunakan software Minitab 15. Uji keseragaman data ini dilakukan agar tidak ada data yang terlalu besar atau terlalu kecil dan jauh menyimpang dari nilai ratarata (tidak ada data yang ekstrim). Sedangkan uji kecukupan data perlu dilakukan untuk mengetahui apakah sampel data yang diambil sudah mencukupi untuk mewakili data populasi. Uji kecukupan data ini dilakukan dengan mencari banyaknya data yang diperlukan sesuai dengan ketelitian yang diinginkan. Rumus yang digunakan dalam uji kecukupan data ini adalah:
N’
⎛ Zα ⎜ 2 ⎜ =⎜ s ⎜ ⎜ ⎝
(
)
N ∑ x i2 − (∑ x i )
∑x
i
2
⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠
2
82 dimana : s
= Tingkat ketelitian ( % )
k
= Nilai tingkat kepercayaan dari distribusi normal
Xi
= Data pengamatan
N
= Jumlah pengamatan/pengukuran yang telah dilaksanakan
N’
= Banyaknya data yang diperlukan untuk tingkat ketelitian dan kepercayaan yang diinginkan
2.5.3. Kelebihan dan Kelemahan Metode Taguchi
Metode pengukuran biaya kualitas dengan metode Taguchi ini memiliki beberapa kelebihan jika diterapkan dalam perusahaan. Kelebihan-kelebihan metode ini antara lain adalah : -
Adanya metode ini memungkinkan perusahaan untuk melakukan analisis terhadap produk yang dihasilkan. Dengan penerapan metode Taguchi, perusahaan akan mudah melakukan analisis karena produk yang dihasilkan dapat dideteksi tingkat penyimpangannya.
-
Memotivasi perusahaan sehingga meningkatkan kualitas produk yang dihasilkan karena metode Taguchi ini selalu berpandangan bahwa produk yang dihasilkan haruslah mencapai nilai target, jika tidak, akan selalu ada kerugian yang diderita oleh perusahaan untuk setiap penyimpangan produk yang ada karena semakin besar penyimpangan produk dari nilai targetnya maka akan semakin besar tingkat ketidakpuasan konsumen bila produk tersebut didistribusikan ke konsumen.
83 -
Dengan metode Taguchi ini, perusahaan dapat mengidentifikasi dan melakukan estimasi terhadap besarnya biaya kualitas yang tersembunyi. Selama ini metode yang digunakan perusahaan dalam menentukan besarnya biaya kualitas tersembunyi kurang mencerminkan kondisi (kerugian) yang diderita oleh perusahaan apabila produk yang dihasilkan menyimpang dari nilai target yang ditetapkan. Melalui metode ini, Taguchi berusaha memberikan suatu alternatif metode yang
merupakan penerapan dari sistem yang terintegrasi untuk mengimplementasikan suatu eksperimen desain produk sehingga tidak menyimpang dari standar yang dihasilkan. Metode ini telah terbukti mampu mengembangkan proses produksi, baik yang sederhana maupun yang kompleks sifatnya, dengan meminimumkan tingkat eksperimental produk yang tidak sesuai dengan tingkat spesifikasi produk. Hal yang paling penting adalah bahwa metode Taguchi ini telah mampu menggabungkan metode statistik dengan industri terutama untuk pengembangan kualitas produk yang dihasilkan. Hal ini tentu saja akan mendukung metode yang dikembangkan oleh Deming, Juran dan Crosby mengenai pengembangan kualitas suatu produk. Metode yang telah terbukti berhasil diterapkan terutama oleh perusahaan industri manufaktur ini juga memiliki kelemahan-kelemahan antara lain : -
Dalam hal pengembangan produk (quality improvement) metode ini, apabila diterapkan tanpa diikuti penerapan tehnik-tehnik yang dikembangkan oleh Deming, Juran dan Crosby, tidak akan memberikan hasil yang maksimal. Hal ini disebabkan
karena
metode
ini
hanya
memberikan
tehnik
bagaimana
menghasilkan produk yang benar-benar sesuai target dan menhitung biaya yang diserap oleh produk yang tidak dapat memenuhi nilai target, tetapi metode yang
84 dikembangkan oleh Taguchi ini tidak memberikan tehnik-tehnik pengendalian dan pengembangan kualitas produk di masa yang akan datang. -
Metode ini hanya cocok diterapkan untuk perusahaan industri manufaktur yang menghasilkan barang dengan tingkat ketelitian tinggi. Apabila produk yang dihasilkan menyimpang dari nilai target maka sedikit saja penyimpangan akan menyebabkan konsumen tidak puas dan lari ke produk/merk lain.
-
Implementasi dari metode ini membutuhkan perhitungan statistik yang sedikit rumit,
sehingga
diperlukan
sumberdaya
yang
benar-benar
mampu
menerapkannya. Selain itu juga diperlukan keahlian khusus dalam melakukan analisa statistik.
2.6. Sistem Informasi Manajemen 2.6.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 :
Input. Mencakup mendapatkan dan mengatur komponen atau elemen yang masuk ke sistem untuk diproses. Contohnya mencakup bahan mentah, data, usaha manusia.
85 Proses. Mencakup proses transformasi yang mengubah input menjadi output. Contohnya mencakup proses manufaktur, perhitungan matematis, dan lain sebagainya.
Output. Mencakup elemen yang telah melalui proses transformasi. Contohnya mencakup jasa, produk dan informasi.
Selain ketiga komponen dasar tersebut, terdapat dua lagi komponen tambahan yaitu :
Feedback
: data mengenai performa sistem.
Control
: mencakup pengawasan dan evaluasi dari feedback untuk mengetahui bila sistem bergerak menuju tujuan yang telah ditetapkan.
2.6.2. Informasi
Untuk memahami konsep informasi, perlu untuk terlebih dahulu memahami konsep data. Data adalah kenyataan atau observasi mengenai fenomena tertentu atau transaksi bisnis tertentu yang merupakan pengukuran objektif dari karakteristik dari suatu objek pengamatan tertentu. Menurut McLeod (2001, p2) Informasi merupakan data yang telah diproses atau data yang memiliki arti. Sedangkan menurut O’Brien (2002, p13), informasi adalah data yang telah dikonversikan menjadi bentuk yang bermakna dan berguna bagi pengguna akhir. Menurut pendapat ahli lainnya, informasi adalah data yang telah diproses menjadi bentuk yang memiliki arti bagi penerima dan dapat berupa fakta, suatu nilai yang bermanfaat atau prospek keputusan. Jadi ada suatu proses transformasi data menjadi suatu informasi (input-proses-output). Dari definisi yang disebutkan, informasi dapat
86 disimpulkan sebagai data yang telah diolah yang mempunyai arti dalam pengambilan keputusan bagi pihak yang bersangkutan.
2.6.3. Sistem Informasi
Pengertian sistem informasi menurut Mcleod (2001,p4) adalah suatu kombinasi yang terorganisasi dari manusia, perangkat lunak, perangkat keras, jaringan komputer, dan sumber daya data yang mengumpulkan, mentransformasikan, serta menyebarkan informasi di dalam sebuah organisasi. Menurut pendapat ahli lainnya, sistem informasi adalah sebuah sistem terintegrasi, sistem manusia-mesin, untuk menyediakan informasi untuk mendukung operasi, manajemen, dan fungsi pengambilan keputusan dalam suatu organisasi. Pengertian lainnya dari sistem informasi adalah sebagai suatu sistem yang menerima data sebagai input dan kemudian mengolahnya menjadi informasi sebagai
outputnya. Definisi sistem informasi dapat disimpulkan sebagai gabungan sistem kerja dari berbagai elemen yang mengumpulkan, menyimpan, mentransformasikan dan menyebar informasi dalam suatu sistem. Menurut Turban et al. (2001, p17), sistem informasi berbasiskan komputer (CBIS) merupakan sebuah sistem informasi yang menggunakan komputer dan teknologi telekomunikasi untuk melakukan beberapa atau semua tugasnya. Komponen sistem informasi merupakan model sistem informasi yang menunjukkan hubungan antara komponen dan aktivitas sistem informasi, yang terdiri atas : 1. Sumber daya orang (people resources) Merupakan orang-orang yang mengoperasikan semua sistem informasi. Sumber daya orang meliputi: Pemakai (end user) adalah orang-orang yang menggunakan sistem informasi
87 atau informasi yang dihasilkannya. Contohnya adalah : - Clerical personnel, untuk menangani transaksi dan pemrosesan data dan melakukan inquiry (operator). - First level manager, untuk mengelola pemrosesan data didukung dengan perencanaan,
penjadwalan,
identifikasi
situasi
out-of-control
dan
pengambilan keputusan level menengah ke bawah. - Management, untuk pembuatan laporan berkala, permintaan khsus, analisis khusus, laporan khsusus, pendukung identifikasi masalah dan peluang, pendukung analisis pengambilan keputusan level atas. Spesialis sistem informasi merupakan orang-orang yang mengembangkan dan
mengoperasikan sistem informasi. 2. Sumber daya perangkat keras (hardware resources) Meliputi semua alat dan material fisik yang digunakan dalam pengolahan informasi, mencakup semua mesin dan media data. Komponen penting adalah: Sistem Komputer, adalah CPU dan yang terkait, seperti terminal dan jaringan PC (personal computer). Penghubung Komputer, adalah alat masukan dan alat keluaran seperti papan tombol (keyboard), monitor, dan sarana penyimpanan sekunder. Jaringan Telekomunikasi, adalah sistem komputer yang saling berhubungan melalui berbagai media telekomunikasi seperti modem (modulator demodulator). 3. Sumber daya perangkat lunak (software resources) Meliputi sekumpulan instruksi untuk pengolahan informasi. Sumber daya perangkat lunak meliputi:
88
Perangkat lunak sistem, untuk mengendalikan bekerjanya komputer.
Perangkat lunak aplikasi, digunakan untuk membantu pelaksanaan tugas spesifik dari pemakai, seperti pengolah kata.
Prosedur, adalah instruksi kerja atau operasional untuk orang-orang yang menggunakan sistem informasi tersebut.
4. Sumber daya data (data resources) Data adalah bahan baku utama diantara berbagai sumber daya organisatoris yang sangat berharga didalam suatu sistem informasi. Data dapat disajikan dalam bentuk alphanumeric, teks, gambar dan/atau format audio. Data secara khas terorganisir ke dalam basis data (database) yang mengatur proses dan pengorganisasian data atau Basis Pengetahuan (knowledgebase) yang mengatur pengetahuan dan knowledge dalam berbagai format atau bentuk seperti fakta dan peraturan tentang suatu hal/subjek tertentu.
Sistem Informasi menurut O’Brien (2003, p24) terbagi atas tiga kategori yaitu :
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 :
89 -
Transaction Processing Systems Mengolah data yang didapat dari transaksi bisnis, mengupdate database
operasional, dan mengahasilkan dokumen bisnis. -
Process Control Systems Memonitor dan mengontrol proses industri.
-
Enterprise Collaboration Systems Mendukung kolaborasi dan kerja sama serta komunikasi dalam kegiatan perusahaan, tim dan kelompok kerja.
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 : -
Management Information Systems Menyediakan informasi dalam bentuk laporan dan tampilan yang mendukung proses pembuatan keputusan bisnis.
-
Decision Support Systems Menyediakan dukungan ad hoc untuk proses pengambilan keputusan bagi
manager dan profesional bisnis lainnya. -
Executive Information Systems Menyediakan informasi yang kritis dari berbagai sumber untuk memenuhi kebutuhan informasi bagi kaum eksekutif perusahaan.
Sistem informasi yang dapat mendukung operasi maupun kegiatan manajemen seperti :
90 -
Expert Systems Sistem berbasis knowledge (pengetahuan) yang memberikan masukan atau nasihat dari sudut pandang ahli di bidang tersebut.
-
Knowledge Management Systems Sistem
berbasis
knowledge
yang
mendukung
penciptaan,
pengorganisasian, dan penyebaran business knowledge dalam perusahaan. -
Strategic Information Systems Mendukung proses manajemen dan operasi yang memberikan perusahaan kemampuan strategis dalam mendapatkan keuntungan bersaing.
-
Functional Business Systems Mendukung berbagai aplikasi operasional dan manajemen untuk fungsi bisnis mendasar dalam suatu perusahaan.
2.6.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 2.5. Dimana ditunjukkan bahwa data dan informasi didapat dari lingkungan. Database digunakan oleh software untuk menghasilkan laporan dan model matematis juga digunakan untuk menghasilkan perhitungan yang akan digunakan oleh pengambil keputusan dalam organisasi baik itu
91 berupa manager maupun non manager. Aliran data dan informasi dibedakan untuk menunjukkan yang mana yang merupakan input dan output dari komponen sistem.
Sumber : McLeod (2000, p240)
Gambar 2.5 Model Sistem
SIM memberikan kontribusi terhadap pemecahan masalah dalam dua cara:
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.
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
92 lebih lanjut tidak segera diambil. SIM juga membantu dalam hal pemahaman penyebab dari masalah tersebut.
2.6.5. Analisa dan Perancangan Berorientasi Objek Menurut Whitten et al. (2004, p31), Object Oriented Analysis and Design (OOAD) merupakan kumpulan alat dan teknik mengembangkan sistem dengan menggunakan teknologi objek untuk membuat sebuah sistem dan programnya. Sedangkan menurut Mathiassen et al. (2000, pp3-4), OOAD merupakan metode untuk menganalisa dan merancang suatu sistem informasi dengan menggunakan objek dan class sebagai konsep dasarnya.
2.6.5.1. Konsep Dasar Analisa dan Perancangan Berorientasi Objek 1. Objek Menurut pendapat Lau (2001), ”Objek merupakan abstraksi baik untuk hal-hal konseptual maupun fisik. Objek memiliki keadaan dan identitas yang melekat. Objek mencapai tingkah laku tertentu melalui suatu kumpulan operasi yang didefinisikan diawal, yang mana dapat masuk atau merubah keadaannya. (p.1).” Menurut Mathiassen et al, et al (2000), ”Objek adalah suatu entitas dengan identitas, keadaan (tingkatan hidup) dan tingkah laku. Objek merupakan dasar dalam Object Oriented Analysis and Design (OOA&D). Keadaan dari objek biasanya diimplementasikan dengan kelompok propertinya (disebut atribut), berisi nilai dari properti tersebut, ditambah keterhubungan objek yang mungkin dengan objek lainnya. Kelakuan menentukan bagaimana sebuah objek beraksi dan bereaksi terhadap permintaan
93 dari objek lainnya. Kelakuan dari objek mendeskripsikan segala sesuatu yang dapat kita lakukan terhadap objek tersebut dan segala sesuatu yang dapat dilakukan oleh objek untuk kita. Setiap objek mempunyai identitas yang unik. Identitas yang unik ini membuat kita dapat membedakan dua objek yang berdeda, walaupun kedua objek tersebut mempunyai keadaan dan nilai yang sama pada atributnya. Karakteristik yang dimiliki objek antara lain: -
Tiap objek dapat memiliki satu atau lebih informasi individual yang unik. Inilah yang disebut attribute dimana tiap attribute mempunyai nilai.
-
Objek dapat melakukan suatu operasi yang disebut behaviour. Operasi ini dapat dipicu dari stimulus dari luar maupun dalam objek
-
Objek dapat dikomposisikan menjadi bagian-bagian terpartisi yang dinyatakan dengan hubungan consist of atau aggregate.
2. Kelas Setiap objek digambarkan secara berkelompok (kumpulan) karena ada beberapa objek yang memiliki sifat atau fungsi yang sama yang dikenal dengan istilah class. Sedangkan class adalah suatu deskripsi atas kumpulan objek yang saling menggunakan struktur, pola tingkah laku, dan atribut secara bersamasama. (p.4).” 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 masing-masing objek yang ada, akan lebih baik untuk membuat kelas yang berisi objek-objek dengan deskripsi yang sama.
94 3. Atribut Atribut adalah nama-nama properti dari sebuah kelas yang menjelaskan batasan nilainya dari properti yang dimiliki oleh sebuah kelas tersebut. Atribut dari suatu kelas merepresentasikan properti-properti yang dimiliki oleh kelas tersebut. Atribut mempunyai tipe yang menjelaskan tipe instansiasinya. Hanya sebuah instansiasi dari kelas (objek) yang dapat mengubah nilai dari atributnya. Keadaan (state) dari sebuah objek dijelaskan dengan nilai dari atribut-atribut yang dimilikinya (selain keberadaan hubungan dengan objek lainnya). Dalam sebuah kelas atribut hanya dinyatakan keberadaan dan batasan nilainya saja, sedangkan dalam sebuah objek atributnya sudah dinyatakan nilai dan menjelaskan kedudukan/ keadaan dari objek tersebut. 4. Operasi Operasi adalah implementasi dari layanan yang dapat diminta dari sebuah objek dari sebuah kelas yang menentukan tingkah lakunya. Sebuah operasi dapat berupa perintah ataupun permintaan. Sebuah permintaan tidak boleh mengubah kedudukan dari objek tersebut. Hanya perintah yang dapat mengubah keadaan dari sebuah objek. Keluaran dari sebuah operasi tergantung dari nilai keadaan terakhir dari sebuah objek.
Analisa dan perancangan berorientasi objek (OOAD) menggunakan objek dan kelas sebagai konsep kunci dalam melakukan analisa dan perancangan. Dalam kegiatan analisa objek digunakan untuk mengelola pemahaman akan konteks sistem. Dalam perancangan objek digunakan untuk memahami dan mendefinisikan sistem.
95 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. Mathiassen et al. (2000, pp5-6) menyebutkan bahwa terdapat keuntungan menggunakan OOAD diantaranya adalah: -
OOAD memberikan informasi yang jelas mengenai context sistem.
-
Dapat menangani data yang seragam dalam jumlah yang besar dan mendistribusikannya ke seluruh bagian organisasi.
-
Berhubungan erat dengan analisa berorientasi objek, perancangan berorientasi objek, user interface berorientasi objek, dan pemrograman berorientasi objek. Selain keuntungan yang diperoleh dalam menggunakan OOAD seperti yang telah
disebutkan di atas, ternyata juga terdapat beberapa kelemahan yang berhasil diidentifikasi oleh Raymond McLeod, Jr (2001, p615) yaitu: -
Diperlukan waktu lama untuk memperoleh pengalaman pengembangan.
-
Kesulitan metodologi untuk menjelaskan sistem bisnis yang rumit.
-
Kurangnya pilihan peralatan pengembangan yang khusus disesuaikan untuk sistem bisnis.
2.6.5.2. Teknik Dasar Analisa dan Perancangan Berorientasi Objek Terdapat tiga buah teknik dasar dalam proses analisa dan perancangan berorientasi objek, yaitu:
96 1. Encapsulation Encapsulation dalam bahasa pemrograman berorientasi objek secara sederhana berarti pengelompokkan fungsi. Pengelompokkan ini bertujuan agar developer tidak perlu membuat coding untuk fungsi yang sama, melainkan hanya perlu memanggil fungsi yang telah dibuat sebelumnya. 2. Inheritance Inheritance dalam bahasa pemrograman berorientasi objek secara sederhana berarti menciptakan sebuah class baru yang memiliki sifat-sifat dan karakteristikkarakteristik sama dengan yang dimiliki class induknya disamping sifat-sifat dan karakteristik-karakteristk individualnya. 3. Polymorphism Polymorphism berarti kemampuan dari tipe objek yang berbeda untuk menyediakan atribut dan operasi yang sama dalam hal yang berbeda. Polymorphism adalah hasil natural dari fakta bahwa objek dari tipe yang berbeda atau bahkan dari sub-tipe yang berbeda dapat menggunakan atribut dan operasi yang sama.
2.6.5.3. Aktivitas Utama Analisa dan Perancangan Berorientasi Objek Mathiassen et al. (2000, pp14-15) menjelaskan empat buah aktivitas utama dalam analisa dan perancangan berorientasi objek yang digambarkan dalam Gambar 2.6 berikut ini.
97
Gambar 2.6 Aktivitas Utama dalam OOAD 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.6.5.3.1. Preliminary Analysis 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.
98 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. System definition dapat digambarkan dalam bentuk rich picture. Menurut Mathiassen et al (2000), Rich picture adalah sebuah gambaran informal yang digunakan oleh pengembang sistem untuk menyatakan pemahaman mereka terhadap situasi dari sistem yang sedang berlangsung. “Rich picture is an informal drawing that presents the illustrator’s understanding of a situation” (p.26). Rich picture juga dapat digunakan sebagai alat yang berguna untuk memfasilitasi dan menggambarkan komunikasi yang baik antara pengguna dengan sistem. Rich picture difokuskan pada aspek-aspek penting dari sistem tersebut, yang ditentukan oleh pengembang dengan mengunjungi perusahaan untuk melihat bagaimana sistem itu beroperasi, berbicara dengan orang-orang yang mengerti apa yang terjadi atau seharusnya terjadi, dan mungkin melakukan beberapa wawancara informal maupun formal. Dalam kegiatan preliminary analysis juga ditentukan FACTOR yang mana seperti dinyatakan oleh Mathiassen (2000, p39-40) merupakan enam kriteria : •
Functionality. Fungsi dari sistem yang mendukung kegiatan dalam application domain.
•
Application domain. Bagian dari organisasi yang mengatur, mengawasi dan mengontrol problem domain.
•
Conditions. Kondisi dimana sistem akan dikembangkan dan digunakan.
99 •
Technology. Teknologi yang digunakan baik untuk mengembangkan sistem dan juga teknologi yang memungkinkan dan mendukung jalannya sistem.
•
Objects. Objek utama dalam problem domain
•
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.
2.6.5.3.2. Analisis Problem Domain Problem domain merupakan bagian dari situasi yang diatur, diawasi, dan dikendalikan oleh sistem. Tujuan melakukan analisis problem domain adalah mengidentifikasi dan memodelkan problem domain. Analisis problem domain terbagi menjadi tiga aktivitas yang digambarkan dalam Gambar 2.7, yaitu: a. Memilih objek, class, dan event yang akan menjadi elemen model problem domain.
100 b. Membangun model dengan memusatkan perhatian pada relasi struktural antara class dan objek. c. Mendeskripsikan properti dinamis dan atribut untuk setiap class.
Gambar 2.7 Aktivitas Analisis Problem Domain Pada aktivitas classes, langkah awal yang perlu dilakukan adalah menentukan class. Langkah berikutnya adalah membuat sebuah event table yang dapat membantu menentukan event-event yang dimiliki oleh setiap class. Pada aktivitas structure, class-class yang telah ditentukan sebelumnya akan dihubungkan berdasarkan tiga jenis hubungan yaitu generalisasi, agregasi, atau asosiasi sehingga menjadi sebuah skema yang disebut class diagram. Dalam aktivitas behavior, definisi class dalam class diagram akan diperluas dengan menambahkan deskripsi pola perilaku dan atribut dari masing-masing class. Pola perilaku dari class terdiri dari tiga jenis, yaitu: •
Sequence Merupakan event yang terjadi secara berurutan satu per satu.
101 •
Selection Merupakan pemilihan salah satu dari beberapa event yang terjadi.
•
Iteration Merupakan event yang terjadi berulang kali.
Hasil dari aktivitas ini adalah sebuah statechart diagram yang menunjukkan perubahan status dari masing-masing class yang dikarenakan oleh event tertentu mulai dari initial state sampai dengan final state.
2.6.5.3.3. Analisis Application Domain Application domain merupakan organisasi yang mengatur, mengawasi, atau mengendalikan problem domain. Tujuan dilakukannya analisis application domain adalah untuk menentukan kebutuhan penggunaan sistem. Sama seperti analisis problem domain, analisis application domain juga terdiri dari beberapa aktivitas antara lain: a. Menentukan penggunaan sistem dan bagaimana sistem berinteraksi dengan user. b. Menentukan fungsi dan kemampuan sistem dalam mengolah informasi. c. Menentukan kebutuhan interface sistem dan merancang interface.
Berikut ini merupakan gambaran aktivitas-aktivitas yang dilakukan pada saat melakukan analisis application domain.
102
Gambar 2.8 Aktivitas Analisis Application Domain
Dalam aktivitas usage, hal pertama yang harus dilakukan adalah membuat actor table yang dapat membantu menentukan actor dan use case yang berkaitan. Langkah selanjutnya adalah membuat use case diagram sehingga terlihat lebih jelas interaksi antara actor dengan masing-masing use case. Function merupakan fasilitas sistem yang menjadikan sistem tersebut berguna bagi actor. Terdapat empat jenis function, antara lain: •
Update Fungsi update diaktifkan oleh event problem domain dan menghasilkan perubahan status model.
•
Signal Fungsi signal diaktifkan oleh perubahan status model dan menghasilkan reaksi di dalam context.
•
Read Fungsi read diaktifkan oleh kebutuhan actor akan informasi dan menghasilkan tampilan model sistem yang relevan.
103 •
Compute Fungsi compute diaktifkan oleh kebutuhan actor akan informasi dan berisi perhitungan yang dilakukan baik oleh actor maupun oleh model. Hasilnya adalah tampilan dari hasil perhitungan yang dilakukan.
Aktivitas interface mencakup pembuatan navigation diagram yang merupakan skema yang menunjukkan tampilan dari sistem dan relasi antar interface.
2.6.5.3.4. Architectural Design Architectural design berfungsi sebagai kerangka kerja dalam aktivitas pengembangan sistem dan menghasilkan struktur komponen dan proses sistem. Tujuannya adalah untuk menstrukturisasi sebuah sistem yang terkomputerisasi. Tahap architectural design terdiri dari tiga aktivitas yaitu criteria, component architecture, dan process architecture seperti yang digambarkan pada Gambar 2.9.
Gambar 2.9 Aktivitas Architectural Design
Criterion merupakan properti yang diinginkan dari sebuah arsitektur. Tabel 2.5. menunjukkan criterion yang telah ditentukan oleh para peneliti untuk menentukan kualitas dari sebuah software.
104 Tabel 2.5 Kriteria untuk Menentukan Kualitas Software Criterion Usable Secure Efficient Correct Reliable Maintainable Testable Flexible Comprehensible Reusable Portable Interoperable
Ukuran Kemampuan sistem beradaptasi dengan context organisasional dan teknikal. Pencegahan akses ilegal terhadap data dan fasilitas. Eksploitasi ekonomis dari fasilitas technical platform. Kesesuaian dengan kebutuhan. Fungsi yang dijalankan secara tepat. Biaya untuk mencari dan memperbaiki kerusakan sistem. Biaya untuk menjamin bahwa sistem melakukan fungsinya. Biaya memodifikasi sistem. Usaha yang diperlukan untuk memahami sistem. Penggunaan bagian dari sistem ke dalam sistem lain yang berkaitan. Biaya memindahkan sistem ke technical platform lain. Biaya pemasangan sistem dengan sistem lain.
Mathiassen et al. (2000, pp179-182) menyebutkan bahwa kriteria usable, flexible, dan comprehensible tergolong sebagai kriteria umum yang harus dimiliki oleh sebuah sistem dan menentukan baik tidaknya suatu rancangan sistem. Komponen adalah kumpulan dari bagian program dengan tanggung jawabnya masing-masing. Component architecture adalah struktur sistem dari komponenkomponen yang saling berhubungan. Component architecture yang baik akan membantu pemahaman sistem, pengaturan perancangan dan menunjukkan kestabilan dari sistem tersebut. Component architecture memiliki tiga bagian yaitu :
105 o User interface. Bertanggung jawab untuk membaca perintah dari tombol dalam tampilan, dan mengupdate tampilan yang memungkinkan interaksi antara pengguna dengan sistem. o Model. Bertanggung jawab dalam menampung objek. o Function. Bertanggung jawab dalam menyediakan fungsi dari sistem.
Terdapat tiga pola arsitektur yaitu : o The layered architecture pattern Arsitektur ini memiliki beberapa komponen yang dirancang dalam bentuk lapisan-lapisan 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. o 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. Perangkat teknis bisa diletakkan di bawah model dimana perangkat teknis ini terhubung dengan model dan interface. o The client-server architecture pattern Pattern ini dibangun untuk mengatasi sistem yang terdistribusi di beberapa proses yang tersebar. Arsitektur ini terdiri dari sebuah server dan beberapa client. Server memiliki kumpulan operation yang dapat digunakan oleh client. Client menggunakan server secara indenpenden. Bentuk distribusi dari bagian sistem harus diputuskan antara client dan server. Identifikasi komponen,
106 di dalam perancangan sistem atau subsistem, pada umumnya memulai dengan layer architecture yang menggunakan interface, function, dan model component. Tabel 2.6 Jenis Arsitektur Client-Server Client U U U+F U+F U+F+M
Server U+F+M F+M F+M M M
Architecture Distributed presentation Local presentation Distributed Functionality Centralized Data Distributed Data
Hasil dari aktivitas ini adalah sebuah component diagram yang merupakan class diagram yang dilengkapi dengan spesifikasi komponen yang kompleks.
Process architecture adalah struktur eksekusi sistem yang terdiri atau tersusun dari proses yang saling bergantungan. Tujuan dari aktivitas ini adalah mendefinisikan struktur sistem. Menurut Mathiassen et al (2000), ada empat konsep yang harus diketahui, diantaranya sebagai berikut: 1. Process architecture adalah struktur eksekusi sistem yang tersusun dari proses yang saling bergantungan. 2. Processor adalah sebuah peralatan yang dapat mengeksekusi sebuah program. 3. Program component adalah modul fisik dari kode program. 4. Active object adalah sebuah objek yang telah ditugaskan oleh sebuah proses (p209). Pada process architecture, sumber daya yang digunakan secara bersama perlu diidentifikasi untuk mencari bottleneck. Menurut Mathiassen et al (2000), sumber daya yang pada umumnya digunakan secara bersama adalah sebagai berikut:
107 1. Processor. Penggunaan processor secara bersamaan terjadi apabila dua atau lebih proses yang dieksekusi secara bersamaan pada satu processor. 2. Program component. Program component digunakan secara bersamaan apabila dua atau lebih proses yang secara bersamaan memanggil operasi pada komponen. 3. External device. External device digunakan secara bersamaan pada saat terjadi pemrosesan dua atau lebih pada suatu peralatan. Bottleneck artinya kemacetan yang terjadi pada proses. Seperti yang telah disebutkan diatas bahwa untuk mencari bottleneck, maka perlu memperhatikan penggunaan processor, external device, tempat penyimpanan data atau juga sistem koneksi. Dalam aktivitas ini juga perlu menentukan pola distribusi yang sesuai dengan model sistem. Pola-pola distribusi yang ada antara lain:
Centralized Pattern
Distributed Pattern
Decentralized Pattern Hasil dari aktivitas ini adalah sebuah deployment diagram yang menunjukkan
processor dengan komponen program dan active objects.
2.6.5.3.5. Component Design Component design bertujuan untuk menentukan implementasi kebutuhan di dalam kerangka kerja arsitektural. Hasilnya adalah deskripsi mengenai komponenkomponen sistem. (Mathiassen et al., 2000, p231). Component design terdiri dari tiga aktivitas, yaitu:
108 a. 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. b. 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. Terdapat empat pola eksplorasi untuk merancang function component, yaitu: Model-Class Placement Function-Class Placement Strategy Active Function Gambar 2.10 berikut ini menggambarkan aktivitas-aktivitas yang terdapat dalam component design.
109
Gambar 2.10 Aktivitas Component Design
2.6.6. Unified Modelling Language 2.6.6.1. Sejarah Unified Modelling Language Unified Modelling Language (UML) adalah sebuah bahasa yang berdasarkan grafik/gambar
untuk
memvisualisasi,
menspesifikasikan,
membangun,
dan
pendokumentasian dari sebuah sistem pengembangan software berbasis OO (Object Oriented). Pendekatan analisa dan rancangan dengan menggunakan model OO mulai diperkenalkan sekitar pertengahan 1970 hingga akhir 1980 dikarenakan pada saat itu aplikasi software sudah meningkat dan mulai komplek. Sebelum tahun 1980 awal, dimana C dan C++ berkembang, developer software masih menggunakan sistem pemrograman struktural. Pemrograman yang umum digunakan adalah Cobol di tahun 1967 dan berkembang dengan pesat di tahun 1970. Sejak penggunaan OOAD (Object Oriented Analysis and Design) pertama di bahasa pemrograman Smalltalk di awal tahun 1980, banyak metode OOAD yang mulai muncul, diantaranya seperti Shlaer/Mellor, Coad/Yourdon, Booch, Rumbaugh, dan lainnya. Pada tahun 1994, Booch dan Rumbaugh bergabung di Rational Software Corp dan membentuk sebuah standar yang baru. Pada awal tahun 1996, OMG (Object
110 Management
Group)
mengajukan
proposal
untuk
bertanggung
jawab
pada
pengembangan dan penyatuan metode pengembangan berbasis objek, inilah yang terus dikembangkan menjadi UML. Jumlah yang menggunakan metoda OO mulai diuji cobakan dan diaplikasikan antara tahun 1989 hingga tahun 1994, seperti halnya oleh Grady Booch dari Rational Software Co. yang dikenal dengan OOSE (Object-Oriented Software Engineering) dan James Rumbaugh dari General Electric yang dikenal dengan OMT (Object Modelling Technique). Kelemahan saat itu mulai disadari oleh Booch maupun Rumbaugh, ketika mereka bertemu rekan lainnya, Ivar Jacobson dari Objectory. Kelemahan saat itu adalah tidak adanya standar penggunaan model yang berbasis OO, sehingga mereka mulai mendiskusikan untuk mengadopsi masing-masing pendekatan metoda OO untuk membuat suatu model bahasa yang seragam, yaitu UML (Unified Modeling Language) dan dapat digunakan oleh seluruh dunia. Secara resmi bahasa UML dimulai pada bulan Oktober 1994, ketika Rumbaugh bergabung dengan Booch untuk membuat sebuah proyek pendekatan metoda yang seragam dari masing-masing metoda mereka. Saat itu baru dikembangkan draft metoda UML version 0.8 dan diselesaikan, serta di release pada bulan Oktober 1995. Bersamaan dengan saat itu, Jacobson bergabung dan UML tersebut diperkaya ruang lingkupnya dengan metoda OOSE sehingga muncul release version 0.9 pada bulan Juni 1996. Hingga saat ini, sejak Juni 1998 UML version 1.3 telah diperkaya dan direspons oleh OMG (Object Management Group), Anderson Consulting, Ericsson, Platinum Technology, Object Time Limited, dan lain-lain, serta di pelihara oleh OMG yang dipimpin oleh Cris Kobryn. UML adalah standar dunia yang dibuat oleh Object
111 Management Group (OMG), sebuah badan yang bertugas mengeluarkan standar-standar teknologi object oriented dan software component.
2.6.6.2. Diagram-Diagram Unified Modelling Language 2.6.6.2.1. Class Diagram Class Diagram menggambarkan struktur objek dari sistem. Class diagram menunjukkan class objek yang membentuk sistem dan hubungan struktural diantara class objek tersebut (Mathiassen et al., 2000, p336). Terdapat tiga jenis hubungan antar class yang biasa digunakan dalam class diagram (Whitten et al., 2004, pp455-459). Ketiga jenis hubungan tersebut antara lain: 1. Asosiasi Asosiasi merupakan hubungan statis antar dua objek atau class. Hubungan ini menggambarkan apa yang perlu diketahui oleh sebuah class mengenai class lainnya. Hubungan ini memungkinkan sebuah objek atau class mereferensikan objek atau class lain dan saling mengirimkan pesan.
Sumber: Whitten et al. (2004, p461)
Gambar 2.11 Contoh Hubungan Asosiasi
112 2. Generalisasi (atau Spesialisasi) Dalam hubungan generalisasi, terdapat dua jenis class, yaitu class supertype dan class subtype. Class supertype atau class induk memiliki atribut dan behavior yang umum dari hirarki tersebut. Class subtype atau class anak memiliki atribut dan behavior yang unik dan juga memiliki atribut dan behavior milik class induknya. Class induk merupakan generalisasi dari class anaknya, sedangkan class anak merupakan spesialisai dari class induknya.
Sumber: Whitten et al. (2004, p461)
Gambar 2.12 Contoh Hubungan Generalisasi 3. Agregasi Agregasi merupakan hubungan yang unik dimana sebuah objek merupakan bagian dari objek lain. Hubungan agregasi tidak simetris dimana jika objek B merupakan bagian dari objek A, namun objek A bukan merupakan bagian dari objek B. Pada hubungan ini, objek yang menjadi bagian dari objek tertentu tidak akan memiliki atribut atau behavior dari objek tersebut.
113
Gambar 2.14 Contoh Class Diagram
2.6.6.2.2. Statechart Diagram Statechart Diagram digunakan untuk memodelkan perilaku dinamis dari sebuah objek dalam sebuah class yang spesifik dan berisi state dan transition (Mathiassen et al., 2000, p341). Statechart diagram mengilustrasikan siklus objek hidup yaitu berbagai status yang dapat dimiliki objek dan event yang menyebabkan status objek berubah menjadi status lain (Whitten et al., 2004, p700). Statechart diagram dibuat dengan langkah-langkah sebagai berikut (Whitten et al., 2004, p700):
114 1. Mengidentifikasi initial dan final state. 2. Mengidentifikasi status objek selama masa hidup objek tersebut. 3. Mengidentifikasi event pemicu perubahan status objek. 4. Mengidentifikasi jalur perubahan status.
Sumber: Mathiassen et al. (2000, p425)
Gambar 2.15 Contoh Statechart Diagram
2.6.6.2.3. Use Case Diagram Use Case Diagram menggambarkan interaksi antara sistem dan user (Whitten et al., 2004, p441). Use case diagram mendeskripsikan secara grafis hubungan antara actors dan use case (Mathiassen et al., 2000, p343). Penjelasan use case biasa ditambahkan untuk menjelaskan langkah-langkah interaksi.
115
Library System
Apply for membership Visitor
Search library inventory
Check out books Patron
Sumber: Whitten et al. (2004, p282)
Gambar 2.16 Contoh Use Case Diagram
2.6.6.2.4. Sequence Diagram Sequence diagram adalah sebuah interaction diagram yang menekankan pada urutan waktu penyampaian dari suatu pesan. Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar sistem (termasuk pengguna, display, dan sebagainya) berupa message yang digambarkan terhadap waktu. Sequence diagram terdiri atar dimensi vertikal (waktu) dan dimensi horizontal (objek-objek yang terkait). Sequence diagram biasa digunakan untuk menggambarkan skenario atau rangkaian langkah-langkah yang dilakukan sebagai respons dari sebuah event untuk menghasilkan output tertentu. Diawali dari apa yang men-trigger aktivitas tersebut, proses dan perubahan apa saja yang terjadi secara internal dan output apa yang dihasilkan. Masingmasing objek, termasuk aktor, memiliki lifeline vertikal. Message digambarkan sebagai garis berpanah dari satu objek ke objek lainnya. Pada fase desain berikutnya, message
116 akan dipetakan menjadi operasi atau metoda dari class. Activation bar menunjukkan lamanya eksekusi sebuah proses, biasanya diawali dengan diterimanya sebuah message. (Dharwiyanti, Wahono, http://ikc.tuxed.org/umum/yanti-uml.php, 2003). Berikut ini merupakan contoh dari sequence diagram, yaitu :
Sumber : Palmkvist et al., http://www-edlab.cs.umass.edu/cs520/OMG-Tutorials/51.
Gambar 2.17 Contoh Sequence Diagram
2.6.6.2.5. Navigation Diagram Navigation Diagram merupakan statechart diagram khusus yang berfokus pada user interface (Mathiassen et al., 2000, p344). Diagram ini menunjukkan windowwindow dan transisi diantara window-window tersebut. Sebuah window dapat digambarkan sebagai sebuah state. State ini memiliki nama dan berisi gambar miniatur window. Transisi antar state dipicu oleh ditekannya sebuah tombol yang menghubungkan dua window.
117
Gambar 2.18 Contoh Navigation Diagram
2.6.6.2.6. Component Diagram Component Diagram merupakan diagram implementasi yang digunakan untuk menggambarkan arsitektur fisik dari software sistem. Diagram ini dapat menunjukkan bagaimana coding pemrograman terbagi menjadi komponen-komponen dan juga menunjukkan ketergantungan antar komponen tersebut (Whitten et al., 2004, p442). Sebuah komponen digambarkan dalam UML sebagai sebuah kotak dengan dua kotak kecil di sebelah kirinya. Ketergantungan antar dua komponen menunjukkan bagaimana kedua komponen tersebut saling berkomunikasi.
118
Sumber: Mathiassen et al. (2000, p201)
Gambar 2.19 Contoh Component Diagram
2.6.6.2.7. Deployment Diagram Deployment Diagram, sama seperti component diagram, juga merupakan diagram implementasi yang menggambarkan arsitektur fisik sistem. Perbedaannya, deployment diagram tidak hanya menggambarkan arsitektur fisik software saja, melainkan software dan hardware. Diagram ini menggambarkan komponen software, processor, dan peralatan lain yang melengkapi arsitektur sistem (Whitten et al., 2004, p442). Menurut Mathiassen et al. (2000, p340), deployment diagram menunjukkan konfigurasi sistem dalam bentuk processor dan objek yang terhubung dengan processor tersebut. Setiap kotak dalam deployment diagram menggambarkan sebuah node yang menunjukkan sebuah hardware. Hardware dapat berupa PC, mainframe, printer, atau
119 bahkan sensor. Software yang terdapat di dalam node digambarkan dengan simbol komponen. Garis yang menghubungkan node menunjukkan jalur komunikasi antar
device.
:Client
User Interface
System Interface
more clients
Function
Model
:Server
System Interface
Sumber: Mathiassen et al. (2000, p217)
Gambar 2.20 Contoh Deployment Diagram
2.6.7.
ASP.NET
ASP atau Active Server Pages adalah produk server-side scripting yang dikeluarkan oleh Microsoft Corporation. Terdapat beberapa perbedaan antara ASP dengan server-side scripting lainnya, diantaranya :
120
Lisensi, seperti yang diketahui ASP adalah bersifat proprietary.
Distribusi, ASP hanya dapat dijalankan di sistem operasi Windows dengan IIS yang terinstall didalamnya, Walaupun dapat dijalankan di Linux/Unix dengan Chilisoft ASP, tidak dapat selancar bila di Windows.
Penggunaan COM Object yang kental, salah satu keunggulan ASP adalah kekayaannya dalam integrasi dengan COM Object dalam kinerjanya.
Dapat berkolaborasi dengan script lainnya, seperti VBScript, JScript, PerlScript, PyhonScript, dan lainnya.
Dominan memakai ADO dalam konektivitas databasenya.
Dalam perkembangannya, saat ini ASP sudah mengimplementasikan konsep .NET didalamnya. Berikut adalah sejarah singkat dari perkembangan ASP : -
ASP version 1.0 (distributed with IIS 3.0) , Desember 1996,
-
ASP version 2.0 (distributed with IIS 4.0) , September 1997,
-
ASP version 3.0 (distributed with IIS 5.0) , November 2000,
-
ASP.NET version 1.0 (part of the Microsoft .NET platform) , Januari 2002
-
ASP.NET version 1.1 , April 2003
-
ASP.NET version 2.0 , November 7 2005) Active Server Pages .NET (sering disingkat sebagai ASP.NET) adalah sebuah
teknologi layanan Web dinamis, aplikasi web, dan XML web service yang dikembangkan oleh Microsoft sebagai pengganti Active Server Pages (ASP) yang telah lama. Teknologi ini berbasis .NET Framework dan dibangun di atas Common Language
Runtime (CLR), sehingga para programmer dapat menulis kode ASP.NET dengan
121 menggunakan semua bahasa pemrograman .NET, meski yang populer digunakan adalah bahasa C# dan Visual Basic .NET. ASP.NET adalah teknologi baru dalam pemrograman web yang merupakan kelanjutan dari teknologi ASP 3.0 yang merupakan server side script (web script yang akan diolah di server, dan hasilnya akan ditampilkan di klien dalam bentuk html). Perbedaan utama dibanding ASP klasik adalah penggunaan .NET framework sebagai fondasi pemrograman (Ruth, 2005). ASP.NET memiliki beberapa karakteristik dibandingkan teknologi terdahulu, antara lain: 1. Bahasa ter-compile ASP.NET adalah bahasa yang ter-compile sehingga source-code aman dari para pencuri script, bahkan jika source .aspx bisa tercuri, source code-behind tetap aman karena yang dipublikasikan di internet hanya .dll-nya saja. Maka dari itu, ASP.NET bukan lagi disebut website, melainkan WebApps, atau Web Application karena bersifat seperti applikasi-aplikasi desktop. 2. Pendukung bahasa yang lebih baik Dengan memprogram
adanya
arsitektur
front-end/disain
web
code-behind, dengan
pengembang
ASP.NET
dan
ASP.NET
back-end
dapat dengan
VB>NET/C++/C#/ JScript, dan mereka dapat saling berinteroperasi. Jadi, jika dalam satu tim ada programmer yang berbeda keahlian, yang satu C-guru dan yang satu VBmaster, mereka kini bisa bekerja di proyek yang sama tanpa berselisih.
122 3. Kemampuan meningkat Tentu saja ini adalah hal yang pasti sebagaimana layaknya suatu peningkatan dari produk lama. Kenaikan kemampuan ini juga diakibatkan oleh kode ter-compile arsitektur di atas, di mana kini ASP.NET hanya melakukan instalasi satu kali, yaitu pada saat situsnya dipanggil pertama kali dan masuk ke dalam memori server sehingga bila ada permintaan lain dia sudah siap untuk beroperasi. 4. Pengendali terprogram ASP.NET memperkenalkan pengendali web. Dengan pengendali web, kita dapat membuat pengendali/komponen kita sendiri yang dapat digunakan di halaman yang berbeda-beda. Komponen-komponen ini dapat dengan mudah diprogram dengan sesuka hati. 5. Event driven ASP.NET mengetahui kejadian yang terjadi pada sebuah halaman situsnya sehinga kejadian seperti onLoad, onClick, onMouseOver, onChange, dan lain-lain dapat ditangani dengan mudah. 6. XML friendly ASP.NET atau .NET framework sangat akrab dengan XML. Ini sangat mempermudah berbagai aspek, misalnya dalam konfigurasinya ASP.NET memiliki file konfigurasi yang berbasis XML dan dapat diubah dan digunakan dengan mudah. 7. Higher scalability Komunikasi antar-server dapat dengan mudah dilakukan dalam lingkungan web.
123 8. Deployment dengan mudah
Server tidak perlu dinyalakan ulang untuk kode yang baru. ASP.NET dengan mudah
melangsungkan
kembali
semua
permintaan
ke
berbasis
bentuk,
kode
yang
baru.
9. Autentikasi pengguna, account dan peran ASP.NET
mendukung
autentifikasi
termasuk
cookie
management, dll, dan autorisasi pengguna otomatis secara langsung ke halaman yang disediakan. Pembuatan halaman masuk sendiri juga dapat dengan mudah dilakukan. ASP.NET juga mengizinkan account dan peran sehingga dapat dengan mudah redirect sebuah account dengan peran manajer ke kode yang berbeda dengan peran operator contohnya. 10. Caching ASP.NET
dapat
meng-cache
objek
dan
keluarannya
sehingga
dapat
mempercepat proses dan pengguna tidak terlalu sering meminta benda yang sama dari server. 11. Arsitektur postback ASP.NET menggunakan kejadian postback, yaitu menggunakan halaman itu sendiri sebagai pemroses data. Contoh dalam ASP sering kali terlihat bahwa sebuah halaman harus mengirim data ke halaman yang lain untuk diolah, tetapi ASP.NET dapat melakukan semua itu dengan halaman itu sendiri.
124 12. Kompatibilitas dengan ASP ASP.NET tidak searatus persen kompatibel dengan ASP, tetapi dengan penamaan file .aspx, ASP dan ASP.NET dapat berjalan berdampingan di satu server dengan baik, bahkan saling berinteroperasi.
2.6.8.
Microsoft Access
Microsoft Access (atau Microsoft Office Access) adalah sebuah program aplikasi basis data komputer relasional yang ditujukan untuk kalangan rumahan dan perusahaan kecil hingga menengah. Aplikasi ini merupakan anggota dari beberapa aplikasi Microsoft Office, selain tentunya Microsoft Word, Microsoft Excel, dan Microsoft PowerPoint. Aplikasi ini menggunakan mesin basis data Microsoft Jet Database Engine, dan juga menggunakan tampilan grafis yang intuitif sehingga memudahkan pengguna. Versi terakhir adalah Microsoft Office Access 2007 yang termasuk ke dalam Microsoft Office System 2007. Microsoft Access dapat menggunakan data yang disimpan di dalam format Microsoft Access, Microsoft Jet Database Engine, Microsoft SQL Server, Oracle Database, atau semua kontainer basis data yang mendukung standar ODBC. Para pengguna yang mahir dapat menggunakannya untuk mengembangkan perangkat lunak aplikasi yang kompleks, sementara para programmer yang kurang mahir dapat menggunakannya untuk mengembangkan perangkat lunak aplikasi yang sederhana. Access juga mendukung teknik-teknik pemrograman berorientasi objek, tetapi tidak dapat digolongkan ke dalam perangkat bantu pemrograman berorientasi objek.
125 2.6.8.1. Sejarah Microsoft Access
Microsoft merilis Microsoft Access 1.0 pada bulan November 1992 dan dilanjutkan dengan merilis versi 2.0 pada tahun 1993. Microsoft menentukan spesifikasi minimum untuk menjalankan Microsoft Access 2.0 adalah sebuah komputer dengan sistem operasi Microsoft Windows 3.0, RAM berkapasitas 4 megabyte (6 megabyte lebih disarankan) dan ruangan kosong hard disk yang dibutuhkan 8 megabyte (14
megabyte lebih disarankan). Versi 2.0 dari Microsoft Access ini datang dengan tujuh buah disket floppy 3½ inci berukuran 1.44 megabyte. Perangkat lunak tersebut bekerja dengan sangat baik pada sebuah basis data dengan banyak record tapi terdapat beberapa kasus di mana data mengalami kerusakan. Sebagai contoh, pada ukuran basis data melebihi 700 megabyte sering mengalami masalah seperti ini (pada saat itu, memang hard disk yang beredar masih berada di bawah 700 megabyte). Buku manual yang dibawanya memperingatkan bahwa beberapa kasus tersebut disebabkan oleh driver perangkat yang kuno atau konfigurasi yang tidak benar. Nama kode (codename) yang digunakan oleh Access pertama kali adalah Cirrus yang dikembangkan sebelum Microsoft mengembangkan Microsoft Visual Basic, sementara mesin pembuat form antarmuka yang digunakannya dinamakan dengan Ruby. Bill Gates melihat purwarupa (prototype) tersebut dan memutuskan bahwa
komponen bahasa pemrograman BASIC harus dikembangkan secara bersama-sama sebagai sebuah aplikasi terpisah tapi dapat diperluas. Proyek ini dinamakan dengan Thunder. Kedua proyek tersebut dikembangkan secara terpisah, dan mesin pembuat
126
form yang digunakan oleh keduanya tidak saling cocok satu sama lainnya. Hal tersebut berakhir saat Microsoft merilis Visual Basic for Applications (VBA). Tabel 2.7 Jenis-Jenis Versi Microsoft Access
Tahun
Nama Versi
Nomor Versi
1992
Microsoft Access 1.1
1
Microsoft Windows
1993
Microsoft Access 2.0
2
Microsoft Windows
1995
Microsoft Access for Windows 95
7
1997
Microsoft Access 97
8
1999
Microsoft Access 2000
9
2001
Microsoft Access 2002
10
2003
Microsoft Access 2003
2007
Microsoft Office Access 2007
11
12
Sistem Operasi yang Didukung
Microsoft Windows 95 dan Windows NT 3.51 Microsoft Windows 95/98 dan Windows NT 3.51/NT 4.0 Microsoft Windows 98/Me, Windows NT 4.0/2000 Microsoft Windows 98/Me, Windows NT/2000/XP Microsoft Windows 2000 (Service Pack 3 ke atas)/XP (Service Pack 1 ke atas)/Server 2003 Microsoft Windows XP (Service Pack 2)/Server 2003/Vista/Server 2008 (Beta 2 ke atas)
Sumber : http://id.wikipedia.org/wiki/Microsoft_Access
Versi Microsoft Office
T/A Microsoft Office 4.3 Professional Microsoft Office 95 Professional Microsoft Office 97 Professional Microsoft Office 2000 Premium dan Office 2000 Professional Microsoft Office XP Professional Microsoft Office System 2003 Microsoft Office System 2007
127 2.6.8.2. Penggunaan Microsoft Access
Microsoft Access digunakan kebanyakan oleh bisnis-bisnis kecil dan menengah, di dalam sebuah organisasi yang kecil bahkan mungkin juga digunakan oleh perusahaan yang cukup besar, dan juga para programmer untuk membuat sebuah sistem buatan sendiri untuk menangani pembuatan dan manipulasi data. Access juga dapat digunakan sebagai sebuah basis data untuk aplikasi Web dasar yang disimpan di dalam server yang menjalankan Microsoft Internet Information Services (IIS) dan menggunakan Microsoft Active Server Pages (ASP). Meskipun demikian, penggunaan Access kurang disarankan, mengingat telah ada Microsoft SQL Server yang memiliki kemampuan yang lebih tinggi. Beberapa pengembang aplikasi profesional menggunakan Microsoft Access untuk mengembangkan aplikasi secara cepat (digunakan sebagai Rapid Application
Development/RAD tool), khususnya untuk pembuatan purwarupa untuk sebuah program yang lebih besar dan aplikasi yang berdiri sendiri untuk para salesman. Microsoft Access kurang begitu bagus jika diakses melalui jaringan sehingga aplikasi-aplikasi yang digunakan oleh banyak pengguna cenderung menggunakan solusi sistem manajemen basis data yang bersifat klien/server. Meskipun demikian, tampilan muka Access (form, report, query, dan kode Visual Basic) yang dimilikinya dapat digunakan untuk menangani basis data yang sebenarnya diproses oleh sistem manajemen basis data lainnya, seperti halnya Microsoft Jet Database Engine (yang secara default digunakan oleh Microsoft Access), Microsoft SQL Server, Oracle Database, dan beberapa produk lainnya yang mendukung ODBC.
128 2.6.8.3. Fitur-Fitur Microsoft Access
Salah satu keunggulan Microsoft Access dilihat dari perspektif programmer adalah kompatibilitasnya dengan bahasa pemrograman Structured Query Language (SQL); query dapat dilihat dan disunting sebagai statemen-statemen SQL, dan statemen SQL dapat digunakan secara langsung di dalam Macro dan VBA Module untuk secara langsung memanipulasi tabel data dalam Access. Para pengguna dapat mencampurkan dan menggunakan kedua jenis bahasa tersebut (VBA dan Macro) untuk memprogram
form dan logika dan juga untuk mengaplikasikan konsep berorientasi objek. Microsoft SQL Server Desktop Engine (MSDE) 2000, yang merupakan sebuah versi mini dari Microsoft SQL Server 2000, dimasukkan ke dalam Office XP Developer Edition dan dapat digunakan oleh Microsoft Access sebagai alternatif dari Microsoft Jet Database Engine. Tidak seperti sebuah sistem manajemen basis data relasional yang komplit, Microsoft JET Database Engine tidak memiliki fitur trigger dan stored procedure. Dimulai dari Microsoft Access 2000 yang menggunakan Microsoft Jet Database Engine versi 4.0, ada sebuah sintaksis yang mengizinkan pembuatan kueri dengan beberapa parameter, dengan sebuah cara seperi halnya sebuah stored procedure, meskipun prosesur tersebut dibatasi hanya untuk sebuah pernyataan tiap prosedurnya. Access juga mengizinkan form untuk mengandung kode yang dapat dieksekusi ketika terjadi sebuah perubahan terhadap tabel basis data, seperti halnya trigger, selama modifikasi dilakukan hanya dengan menggunakan form tersebut, dan merupakan sesuatu hal yang umum untuk menggunakan kueri yang akan diteruskan (pass-through dan teknik lainnya di
129 dalam Access untuk menjalankan stored procedure di dalam RDBMS yang mendukungnya. Dalam berkas Access Database Project (ADP) yang didukung oleh Microsoft Access 2000 dan yang selanjutnya, fitur-fitur yang berkaitan dengan basis data berbeda dari versi format/struktur data yang digunakan Access (*.MDB), karena jenis berkas ini dapat membuat koneksi ke sebuah basis data MSDE atau Microsoft SQL Server, ketimbang menggunakan Microsoft JET Database Engine. Sehingga, dengan menggunakan ADP, adalah mungkin untuk membuat hampur semua objek di dalam server yang menjalankan mesin basis data tersebut (tabel basis data dengan constraints dan trigger, view, stored procedure, dan UDF). Meskipun demikian, yang disimpan di dalam berkas ADP hanyalah form, report, macro, dan modul, sementara untuk tabel dan objek lainnya disimpan di dalam server basis data yang membelakangi program tersebut.
2.6.8.4. Pengembangan dengan Microsoft Access
Access mengizinkan pengembangan yang relatif cepat karena semua tabel basis data, kueri, form, dan report disimpan di dalam berkas basis data miliknya (*.MDB). Untuk membuat Query, Access menggunakan Query Design Grid, sebuah program berbasis grafis yang mengizinkan para penggunanya untuk membuat query tanpa harus mengetahui bahasa pemrograman SQL. DI dalam Query Design Grid, para pengguna dapat memperlihatkan tabel basis data sumber dari query, dan memilih field-field mana yang hendak dikembalikan oleh proses dengan mengklik dan menyeretnya ke dalam
grid. Join juga dapat dibuat dengan cara mengklik dan menyeret field-field dalam tabel
130 ke dalam field dalam tabel lainnya. Access juga mengizinkan pengguna untuk melihat dan memanipulasi kode SQL jika memang diperlukan. Bahasa pemrograman yang tersedia di dalam Access adalah Microsoft Visual Basic for Applications (VBA), seperti halnya dalam beberapa aplikasi Microsoft Office. Dua buah pustaka komponen Component Object Model (COM) untuk mengakses basis data pun disediakan, yakni Data Access Object (DAO), yang hanya terdapat di dalam Access 97, dan ActiveX Data Objects (ADO) yang tersedia dalam versi-versi Access terbaru.