BAB 2 LANDASAN TEORI
2.1. Data 2.1.1. Pengertian Data Data dalam bahasa sehari-hari mempunyai arti yang sama dengan informasi, namun dalam ilmu pasti ada perbedaan yang cukup signifikan antara data dan informasi. Perbedaan tersebut yaitu data adalah pengukuran yang tidak diatur dan sewaktu data menjadi teratur maka data tersebut menjadi informasi. Data mungkin tidak berhubungan dengan realitas atau dengan fiksi seperti pada film fiksi. Data tentang realitas berisikan dalil-dalil. Golongan terbesar dari dalil-dalis yang terpenting adalah pengukuran atau pengamatan dari sebuah variabel. Dalil-dalil tersebut mungkin terdiri dari angka, huruf ataupun gambar ( Anonymous, http://en.wikipedia.org/wiki/Data, 2007). Huruf data merupakan bentuk jamak dari bahasa Latin untuk kata datum. Dalam bahasa Inggris, kata datum masih sering digunakan untuk mengartikan ”sesuatu yang diberikan”, dan lebih khusus lagi didalam ilmu perpetaan, geografi, geologi, NMR dan pengumpulan yang merunjuk kepad titik referensi, garis referensi ataupun referensi permukaan. Data yang dalam bahasa Latin dalam bentuk jamak juga digunakan di dalam bahasa Inggris dalam bentuk jamak, tetapi lebih banyak digunakan untuk benda yang banyak dan digunakan dalam bentuk tunggal, atau sedikitnya dalam penggunaan seharihari. Data mentah (Anonymous, http://en.wikipedia.org/wiki/Raw_data, 2007 ) adalah angka, karakter, gambar ataupun hasil-hasil yang lainnya dari alat yang digunakan untuk
6 mengkonversi jumlah fisik menjadi simbol. Data-data yang terangkum diproses oleh manusia atau dimasukan kedalam komputer, disimpan dan diproses oleh komputer, atau di transmisikan ke orang lain ataupun komputer lain. Data yang tersebut diatas dapat juga berupa data numerik, data tabel, data grafik dll.
2.1.2. Kegunaan Data Kegunaan data dalam sebuah penelitian sangat penting, sebab tanpa adanya data maka penelitian tidak bisa berjalan. Berikut adalah beberapa kegunaan dari data: a. Untuk mengetahui atau memperoleh gambaran tentang sesuatu keadaan atau persoalan b. Untuk membuat keputusan atau memecahkan persoalan. Oleh karena persoalan yang timbul itu ada penyebabnya, maka memecahkan persoalan maksudnya menghilangkan faktor-faktor yang menyebabkan timbulnya persoalan tersebut. c. Untuk alat kontrol dalam pelaksanaan suatu perencanaan. Perencanaan memerlukan data masa lampau, sekarang dan yang akan datang yang berupa ramalan. Karena ramalan itu mengandung unsur ketidak pastian maka ada kemungkinan pelaksanaan suatu perencanaan tidak sesuai. Kontrol bertujuan untuk mengetahui jika ada kesalahan dalam pelaksanaan suatu perencanaan untuk segera diatasi. d. Untuk dasar evaluasi dari penelitian yang akan dilakukan
7 2.1.3. Pembagian Data 2.1.3.1. Pembagian Data Menurut Sifat Menurut sifatnya data dapat dibagi menjadi dua yaitu: a. Data kualitatif yaitu data yang tidak berbentuk angka namun berupa kata ataupun kalimat yang menjabarkan objek yang diteliti b. Data kuantitatif yaitu data yang berbentuk angka
2.1.3.2. Pembagian Data Menurut Sumber Data Menurut sumber data maka data dapat dibagi menjadi dua yaitu a. Data internal, yaitu data dari dalam suatu organisasi yang menggambarkan keadaan organisasi tersebut. b. Data external, yaitu data dari luar suatu organisasi yang dapat mengambarkan faktor-faktor yang mungkin mempengaruhi hasil kerja suatu organisasi.
2.1.3.3. Pembagian Data Menurut Cara Pengumpulannya Menurut cara pengumpulannya maka data dapat dibagi menjadi dua yaitu; a. Data primer yaitu data yang dikumpulkan sendiri oleh perorangan/suatu organisasi langsung melalui objeknya. b. Data sekunder yaitu data yang diperoleh dalam bentuk yang sudah jadi dan berupa publikasi. Data sudah dikumpulkan oleh pihak/instansi lain sehingga peneliti tidak perlu langsung memperoleh data dari objeknya.
2.1.3.4. Pembagian Data Menurut Waktu Pengumpulannya Menurut waktu pengumpulannnya maka data dapat dibagi menjadi dua yaitu:
8 a. Data cross section yaitu data yang dikumpulkan pada suatu waktu tertentu untuk menggambarkan keadaan dan kegiatan pada waktu tersebut. Analisa yang didasarkan atas data cross section disebut analisa cross section yang sifatnya statis oleh karena tidak memperhitungkan perubahan-perubahan yang terjadi, yang salah satunya disebabkan karena adanya perubahan waktu. b. Data berkala yaitu data yang dikumpulkan dari waktu kewaktu untuk melihat perkembangan suatu kejadian/kegiatan selama periode tersebut.
2.2. Data Pemasaran Data pemasaran (McGraw-Hill, 1993, p 2) adalah sebuah alat dalam dunia pemasaran, periklanan maupun promosi penjualan tetapi bukan merupakan perluasan dari definisi tersebut dan juga tidak dapat menggantikan hal tersebut. Data pemasaran sangat efektif dan dapat dipakai dalam berbagai kesempatan pemasaran yang berbeda. Perbedaan antara data pemasaran dengan pemasaran secara langsung berada pada analisis data yang diperhatikan. Data pemasaran mencakup keseluruhan informasi yang didapatkan dari konsumen maupun produsen yang kemudian diproses secara statistik (Anonymous, http://en.wikipedia.org/wiki/Database_marketing, 2007).
2.3. Optimalisasi Dalam matematika, Optimalisasi ialah suatu proses untuk mencapai hasil yang ideal atau optimal (nilai efektif yang dapat dicapai). Dalam disiplin matematika optimisasi merujuk pada studi permasalahan yang mencoba untuk mencari nilai minimal atau maximal dari suatu fungsi nyata. Untuk dapat mencapai nilai optimal baik minimal atau maximal tersebut, secara sistimatis dilakukan pemilihan nilai variabel integer atau
9 nyata
yang
akan
memberikan
solusi
optimal.
(
Anonymous,
http://en.wikipedia.org/wiki/Optimization_%28mathematics%29, 2007). Dalam komputer, optimalisasi adalah sebuah proses merubah sebuah sistem untuk membuat beberapa aspek dari pekerjaan tersebut menjadi lebih effisien atau membutuhkan sumber daya yang lebih sedikit. Sistem tersebut dapat berupa sebuah program, kumpulan program komputer atau bahkan berupa jaringan seperti internet ( Anonymous, http://en.wikipedia.org/wiki/Optimization_%28computer_science%29, 2007 ).
2.4. Klasterisasi Klaterisasi ( Anonymous, http://en.wikipedia.org/wiki/Clustering, 2007) adalah proses membuat pengelompokan sehingga semua anggota dari setiap partisi mempunyai persamaan berdasarkan matrik tertentu. Sebuah klaster adalah sekumpulan objek yang digabung bersama karena persamaan atau kedekatannya. Klasterisasi merupakan sebuah teknik yang sangat berguna karena akan mentranslasi ukuran persamaan yang intuitif menjadi ukuran yang kuantitatif. Ada banyak pendekatan untuk membuat cluster diantaranya adalah membuat aturan yang mendikte keanggotaan dalam grup yang sama berdasarkan tingkat persamaan diantara anggotanya. Pendekatan lainnya adalah dengan membuat sekumpulan fungsi yang mengukur beberapa properti dari pengelompokkan tersebut sebagai fungsi dari beberapa parameter dari sebuah klasterisasi. Tujuan utama dari metode klaster ( Budi Santosa, 2007 , p 33 ) adalah pengelompokan sejumlah data/obyek ke dalam klaster sehingga dalam setiap klaster akan berisi data yang semirip mungkin. Dalam klastering kita berusaha untuk menempatkan obyek yang mirip dalam satu klaster dan membuat jarak antar klaster
10 sejauh mungkin. Ini berarti obyek dalam satu klaster sangat mirip satu sama lain dan berbeda dengan obyek dalam klaster-klaster yang lain. Analisis Klaster ( Hair; Anderson; Tatham; Black, 1998 , p 473) yaitu nama untuk sebuah kelompok dari teknik multivariate yang tujuan utamanya adalah untuk mengelompokan obyek berdasrkan dari karakteristik yang mereka miliki. Analisis Klaster mengklasifikasikan objek-objek sehingga setiap objek mirip dengan objek lainnya didalam klaster. Analisis Klaster termasuk dalam analisis statistik multivariate metode interdependen, sebagai alat analisis interdependen maka tujuan analisis cluster tidak untuk menghubungkan ataupun membedakan dengan sample ataupun variable yang lain. Analisis cluster merupakan salah satu alat analisis yang berguna dalam meringkas data atau sejumlah variabel untuk menjadi lebih sedikit. Dalam melakukan proses meringkas data ini dapat di lakukan dengan jalan mengelompokan objek-objek berdasarkan kesamaan karakteristik tertentu di antara objek-objek yang hendak di teliti. Analisis cluster dapat diterapkan untuk berbagai lahan penelitian seperti berikut ini. Dalam psikologi untuk mengklasifikasikan individu individu kedalam tipe tipe kepribadian, Dalam Demographi untuk mengklasifikasi kota kota ke dalam tingkat atau topologi
berdasarkan
variabel
demographi
tertentu,
Dalam
ekonomi
untuk
mengklasifikasikan konsumen ke dalam kelompok kelompok berdasarkan penggunaan dari produk yang di beli. Sedangkan dalam aplikasi pemasaran, analisis cluster dapat di gunakan untuk : •
Mengetahui segmentasi dan menentukan target target pasar yang di tuju.
•
Mengetahui positioning produk dan menentukan pengembangan produk baru
11 •
Memilih pasar yang akan dipilih untuk produk baru perusahaan Keragaman klaster adalah sebuah kumpulan variabel yang merepresentasikan
karakteristik yang didigunakan untuk membandingkan objek didalam analisis klaster. Karena keragaman klaster hanya mencakup variabel-bariabel yang digunakan untuk membandingkan objek maka keragaman klaster menentukan sifat dari objek tersebut. Analisis klaster adalah satu-satunya teknik multivariate yang tidak menentukan keragaman empiris tetapi menggunakan keragaman yang spesifikasikan oleh peneliti. Pokok dari analisis klaster terletak pada perbandingan objek yang didasari atas keragaman, bukan pada estimasi dari keragaman itu sendiri. Analisis klaster dapat melakukan prosedur pengurangan data secara objektif dengan cara mengurangi informasi dari keseluruhan populasi atau sampel untuk menginformasikan tentang subgrup yang lebih kecil namun lebih spesifik. Pembentukan kelompok kelompok observasi / kasus ini berdasarkan jarak, observasi yang mirip seharusnya berada dalam kelompok yang sama, dan data observasi yang jauh seharusnya berada dalam kelompok yang berbeda.pembentukan kelompok ini akan di ikuti dengan terjadinya pengelempokan yang menunjukan kedekatan kesamaan antar kasus. Meskipun hasil analisis cluster merupakan hasil data yang objektif, namun perlu di ketahui bahwa hasil analisis cluster tidak boleh di percaya begitu saja. Agar hasil analisis dapat ideal sebaiknya di lakukan beberapa kali analisis cluster dengan menggunakan beberapa metode jarak cluster. Tujuan utama dari analisis klaster ( Hair; Anderson; Tatham; Black, 1998 , p 473) yaitu untuk mendefinisaikan stuktur dari data dengan cara menempatkan pengamatan yang paling menyerupain menjadi grup-grup. Tetapi untuk melaksanakan
12 tugas ini kita harus mempunyai sebuah metode yang secara terus menerus membandingkan pengamatan dari variabel-variabel klastering. Ada beberapa cara untuk melakukan pengamatan tersebut salah satunya yaitu dengan menghitung korelasi diantara objek-objek. Berikut adalah diagram dalam pemilihan bentuk clustering algorithm yang akan dipilih:
13
Gambar 2.1. Diagram Penentuan Analisis Klaster tahap 1-3
14
Gambar 2.2. Diagram Penentuan Analisis Klaster tahap 4-6
15 Perbedaan pendekatan untuk clustering data dapat digambarkan melalui hierarki berikut ini
Gambar 2.3. Taksonomi Pendekatan klastering Beberapa hal yang harus di perhatikan dalam melakukan analisis cluster adalah : 1. Lakukan beberapa kali analisis cluster 2. Pastikan data yang didapatkan adalah data yang valid. Berikan justifikasi logika pada output analisis cluster yang telah di keluarkan SPSS, jika output yang di hasilkan jauh dari logika, kemungkinan terjadi berbagai kesalahan baik pengukuran maupun sample.
2.5. Klastering Hirarki Klastering hirarki kita gunakan untuk menghitung jarak masing-masing obyek dengan setiap obyek yang lain. Selanjutnya kita temukan pasangan obyek yang jaraknya terdekat. Sehingga tiap obyek akan berpasangan dengan satu obyek atau kelompok obyek yang lain yang paling dekat jaraknya ( Budi Santosa, 2007 , p 34 – 35) Langkah-langkah yang perlu dilakukan untuk melakukan klastering dengan cara kalstering hiraarki adalah:
16 a. Kelompokkan setiap obyek ke dalam kelompok/klasternya sendiri. b. Temukan pasangan paling mirip untuk dimasukkan ke dalam klaster yang sama dengan melihat data dalam matriks kemiripan. c. Gabungkan kedua obyek dalam satu klaster d. Ulangi sampai tersisa hanya satu klaster Dalam klaster, untuk menggabungkan dua atau lebih obyek menjadi satu klaster, umumnya digunakan ukuran kemiripan atau ketidakmiripan. Semakin mirip dua obyek semakin tinggi peluang untuk dikelompokkan dalam satu klaster. Sebaliknya semakin tidak mirip semakin rendah peluang untuk dikelompokkandalam satu klaster. Untuk mengukur kemiripan dan ketidak miripan diantara data/obyek bisa dipakai beberapa ukuran. Untuk ukuran kemiripan bisa dipakai cosinus, kovarian dan korelasi. Sedang untuk ukuran kemiripan bisa dipakai cosinus, kovarian dan korelasi. Sedang untuk ukuran ketidakmiripan bisa dipakai jarak. Dalam ukuran kemiripan, semakin beasr nilainya berarti semakin mirip. Sebaliknya dalam ketidakmiripan smakin besar nilainya semakin tidak mirip.
2.6. Algoritma K-Means Pengklasteran dalam Ruang Euclidean N-dimensi RN ( Anonymous, wikipedia, 2007 ) adalah proses pembagian himpunan n buah titik ke dalam sejumlah K kelompok atau klaster berdasarkan beberapa criteria kesamaan/ketidaksamaan. Dimisalkan himpunan n buah titik {x1,x2, … , xn} di dalam himpunan S dan sebanyak K klaster dinyatakan oleh C1,C2, …,Ck. Sedemikian hingga : Ci ≠ 0 for i = 1,...,K
17 Ci ∩ Cj = 0 for i = 1,…,K , j = 1,…,K and I ≠ j and
K
∑C i =1
i
=S
Algoritma K-Means adalah metode pengklasteran yang paling banyak digunakan karena skemanya yang sederhana, yang mencari titik pusat dari sejumlah klaster kemudian menandai titik-titik data yang lain ke dalam klaster-klaster yang ada berdasarkan pengukuran kesamaan yang ditetapkan. Data dinyatakan dalam bentuk matrik X yang anggota-anggotanya Xij, i = i...n dan j = 1...n sehingga ukuran kedekatan antara data ke-1 dan ke-k : n
∑(X
Dkl =
i =1
ki
− X li ) 2
Berikut ini akan dijelaskan secara singkat tahapan dalam Algoritma K-Means. Langkah 1 yaitu tentukan K dengan inisial klaster z1,z2,...,zk secara acak dari n buah titik{x1,x2,...,xn}. Langkah 2 yaitu menentukan atau menginisialisai k sebagai pusat klaster yang dapat dilakukan dengan berbagai cara dan cara yang paling sering digunakan adalah dengan cara random. Pusat-pusat klaster diberi nilai awal dengan angka-angka random. Langkah 3 : Tandai titik xi, i=1,2,...,n ke dalam klaster Cj, j ∈ {1,2,..., K } jika
xi − z j < xi − z j , p = 1,2,...k , and j ≠ p . Masukkan setiap data ke klaster yang paling cocok berdasarkan ukuran kedekatan dengan centroid. Centroid adalah vektor term yang dianggap sebagai titik tengah klaster. Langkah 4 : Hitung titik pusat klaster yang baru z1* , z 2* ,..., z k* sebagai berikut:
z1* =
1 ni
∑x
x j ∈Ci
j
,1,2,..., K
Di mana ni adalah jumlah elemen yang dimiliki oleh klaster Ci.
18 Langkah 5 : Jika z1* = zi,I = 1,2,…,K maka proses berhenti, jika tidak kembali ke langkah nomor 3.
2.7. System Development Life Cycle
Metodologi adalah suatu cara yang disarankan untuk melakukan suatu hal. Pendekatan sistem adalah metodologi dasar untuk memecahkan masalah. Siklus hidup sistem (system life cycle – SLC) adalah penerapan pendekatan sistem untuk pengembangan sistem atau subsistem informasi berbasis komputer. SLC terdiri dari serangkaian tugas yang erat mengikuti suatu pola yang teratur dan dilakukan secara topdown, SLC sering disebut sebagai waterfall approach bagi pengembangan dan penggunaan sistem (Raymond McLeod, Jr. Dan George Schell, 2004, p 133). SDLC adalah sebuah pendekatan sistematik untuk menyelesaikan sebuah masalah dan dilakukan dengan beberapa tahap yaitu: a. Konsep perangkat lunak yaitu untuk mengidentifikasi dan menentukan kebutuhan untuk sistem yang baru. b. Analisis kebutuhan yaitu menganalisis informasi yang dibutuhkan oleh pengguna. c. Disain arsitektur yaitu membuat cetak biru untuk disain yang dibutuhkan oleh perangkat keras, perangkat lunak, manusia dan sumber data. d. Coding and debugging yaitu membuat dan memprogram sistem yang dibutuhkan.
19 e. Pengujian sistem yaitu mengevaluasi fungsi sebenarnya dari sistem kepada fungsi
yang
diharapkan
atau
diinginkan
(Anonymous,
http://en.wikipedia.org/wiki/Systems_Development_Life_Cycle, 2008).
2.8. Waterfall Method
Metode Waterfall adalah sebuah model perancangan software secara sekuensial, di mana proses perancangan tersebut mengalir secara teratur kebawah sehingga terlihat seperti air terjun(Anonymous, http://en.wikipedia.org/wiki/waterfall_model, 2008). Proses ini melalui fase-fase seperti, analisis kebutuhan, desain, implementasi, pengetesan atau validasi, integrasi dan perawatan. Asal kata waterfall sering dikutip dari artikel yang dipublikasikan pada tahun 1970 oleh W. W. Royce, ironisnya, Royce sendiri tidak menggunakan kata tersebut, sebaliknya memakai kata pendekatan iteratif dalam perancangan software. Pada awalnya Royce menggambarkan metode Waterfall adalah contoh metode yang beresiko dan rawan terhadap kegagalan. Tetapi walapun begitu, penggunaan metode ini tetap populer di dalam perancangan program.
Gambar 2.4.
Metode Waterfall
20 Sumber: Sommerville (2001). Seperti yang terlihat pada Gambar 2.5, proses perancangan program bergerak dari atas ke bawah seperti air terjun. Di dalam model Waterfall yang dinyatakan oleh Royce, fase-fasenya adalah sebagai berikut : a. Spesifikasi Kebutuhan b. Desain c. Konstruksi atau Implementasi d. Integrasi e. Pengetesan dan Debugging (verifikasi) f. Instalasi g. Perawatan
2.9. Alat Bantu Perancangan
Alat Bantu perancangan yang digunakan dalam penulisan skripsi ini adalah state transition diagram dan pseudocode.
2.9.1. State Transition Diagram
State Transition Diagram adalah salah satu cara menggambarkan jalannya proses. Di dalamnya dapat dilihat input / kondisi, state proses, output / aksi yang terjadi dan perubahan state. Komponen dasar state transition diagram dapat dilihat pada gambar 2.5.
21
Gambar 2.5
Komponen Dasar State Transition Diagram
State, menunjukkan satu atau lebih kegiatan atau keadaan atau atribut yang menjelaskan bagian tertentu dari proses. Anak panah berarah, menunjukkan perubahan state yang disebabkan oleh input tertentu (state X ke state Y). Input / kondisi merupakan suatu kejadian pada lingkungan eksternal yang dapat dideteksi oleh sistem, misal sinyal, interupsi atau data. Hal ini menyebabkan perubahan dari satu state ke state lainnya atau dari satu aktivitas ke aktivitas lainnya. Output / aksi merupakan hal yang dilakukan oleh sistem jika terjadi perubahan state atau merupakan reaksi terhadap kondisi. Aksi dapat menghasilkan output, tampilan pesan pada layar, kalkulasi atau kegiatan lainnya.
2.9.2 Unified Modeling Language (UML)
UML adalah suatu bahasa permodelan standar untuk menulis rancangan software.UML dapat digunakan untuk visualisasi, spesifikasi, konstruksi dan
22 dokumentasi suatu software yang intensif dari suatu sistem. Sebuah pembuat software yang sehat/normal paling tidak dapat menghasilkan dokumentasi requirements, architecture, design, source code, project plans, tests, prototypes, releases. UML memiliki tiga unsur utama, yaitu: a. Blok-blok bangunan, terdiri dari tiga jenis, yaitu Things, Relationships dan Diagrams b. Aturan yang mengatur bagaimana blok-blok itu dihubungkan c. Mekanisme yang dapat digunakan Untuk memahami UML, perlu diketahui tiga karakteristik penting dari UML, yaitu: a. Use case driven artinya use case digunakan sebagai awalan untuk membuat perilaku, verifikasi dan validasi arsitektur system. Selanjutnya use case digunakan untuk pengetesan sistem dan sebagai alat komunikasi di antara pihakpihak yang berkepentingan dengan pembangunan sistem ini. b. Architecture centric berarti arsitektur sistem digunakan sebagai pegangan utama untuk membuat konsep, mengkonstruksi, mengatur (manage) dan menyusun sistem yang sedang dikembangkan. c. Iterative dan incremental process. Iterative berarti proses itu menyangkut pernyataan/keputusan yang dapat dikerjakan secara berkelanjutan. Incremental process adalah satu proses yang melibatkan integrasi terus menerus dari arsitektur sistem untuk menghasilkan pernyataan/keputusan tersebut diikuti oleh pernyataan/ keputusan berikutnya yang lebih baik dari sebelumnya. Iterative dan incremental process adalah risk driven, artinya pernyataan/keputusan yang baru
23 difokuskan untuk mengatasi atau mengurangi risiko yang paling besar untuk suksesnya sistem yang dibangun. Selanjutnya, ada empat tahapan dalam daur hidup perangkat lunak, yaitu: a. Inception (kelahiran) Inception adalah tahap di mana benih pemikiran membangun sistem mulai diterima, minimal secara internal organisasi. b. Elaboration (perluasan dari rencana semula) Elaboration adalah tahap yang menghasilkan visi mengenai produk dan arsitekturnya. Tahapan ini juga menghasilkan System requirements berupa pernyataan sederhana mengenai visi, bahkan sampai pada kriteria evaluasi untuk tiap perilaku fungsional maupun non-fungsional, sehingga masing-masing dapat menjadi “basis” untuk pengetesan. c. Construction (pembangunan) Di sini software dibangun, diuji, diperbaiki dan disempurnakan. d. Transition (peralihan) Dalam tahap ini software diserahkan kepada komunitas user.
2.9.3. Pseudocode
Pseudocode adalah suatu bahasa umum yang menggunakan kosa kata dari satu bahasa (misal: bahasa Inggris) dan perintah (syntax) dari bahasa yang lain (misal: bahasa pemrograman terstruktur). (Pressman, 1997, p411) Pseudocode adalah suatu bahasa pemrograman yang informal dan sangat fleksibel, yang tidak dimaksudkan untuk dieksekusi pada mesin, tetapi hanya digunakan
24 untuk mengorganisir cara berpikir pemrogram sebelum melakukan coding. (Pege-Jones, 1980, p11) Pseudocode dapat menjadi alternatif dalam perancangan perangkat lunak di samping alat bantu berupa diagram. Tidak ada standarisasi dalam hal penulisan pseudocode. Pemrogram dapat menulisnya dalam bahasa apa saja yang mereka sukai dan dipadukan dengan bahasa pemrograman tertentu. Pemrogram juga bebas menggunakan teknik dan aturannnya sendiri.
2.10. Interaksi Manusia Komputer
Saat ini sistem atau program yang interaktif lebih populer dan digemari, karena itu penggunaan komputer telah berkembang pesat sebagai suatu program yang interaktif dan membuat orang tertarik untuk menggunakannya. Program yang interaktif ini perlu dirancang dengan baik sehingga pengguna dapat merasa senang dan juga ikut berinteraksi dengan baik dalam menggunakannya. Interaksi Manusia dan Komputer (IMK) atau Human-Computer Interaction (HCI) adalah disiplin ilmu yang berhubungan dengan perancangan, evaluasi, dan implementasi sistem komputer interaktif untuk digunakan oleh manusia, serta studi fenomena – fenomena besar yang berhubungan dengannya.
2.10.1. Tujuan Rekayasa Sistem Interaksi Manusia dan Komputer
Tujuan rekayasa sistem interaksi manusia dan komputer seperti disebutkan oleh Shneiderman(1998,p11-14) adalah sebagai berikut : •
Fungsionalitas yang sesungguhnya
25 Harus dapat menentukan fungsi-fungsi apa saja yang harus dilaksanakan dan bagaimana cara untuk mencapai fungsionalitas yang lengkap tersebut. •
Kehandalan, ketersediaan, keamanan dan integritas data Kehandalan disini diartikan dapat berfungsi seperti yang diinginkan, ketersediaan berarti selalu ada ketika hendak digunakan, keamanan berarti terlindung dari akses yang tidak diinginkan dan intergritas data berarti terdapat perlindungan data terhadap kerusakan baik disengaja maupun tidak.
•
Standarisasi, integrasi, konsistensi dan portabilitas Standarisasi disini mengacu kepada keseragaman sifat-sifat user interface pada aplikasi yang berbeda-beda, integrasi diantara paket aplikasi dan peralatan piranti lunak, konsistensi atau keseragaman di dalam suatu program aplikasi dan portabilitas yang mengacu pada dimungkinkannya data dikonversi pada berbagai bentuk software dan hardware.
•
Penjadwalan dan anggaran Penjadwalan yang sesuai target dan anggaran yang rasional akan menjamin kualitas produk tersebut. Produk yang terlambat atau terlalu mahal akan membuat produk tersebut tidak kompetitif.
2.10.2. Program Interaktif
Suatu program yang interaktif dan baik harus bersifat user friendly. Shneiderman (1998, p15) menjelaskan lima kriteria yang harus dipenuhi oleh suatu program yang user friendly, yaitu: 1. Waktu belajar yang tidak lama.
26 2. Kecepatan penyajian informasi yang tepat. 3. Tingkat kesalahan pemakaian rendah. 4. Penghafalan sesudah melampaui jangka waktu. 5. Kepuasan pribadi. Suatu program yang interaktif dapat dengan mudah dibuat dan dirancang dengan suatu perangkat bantu pengembang sistem antarmuka, seperti: Macromedia Flash MX, Visual Basic, Borland Delphi dan sebagainya. Keuntungan penggunaan perangkat bantu untuk mengembangkan antarmuka menurut Santosa (1997, p7) yaitu: 1. Antarmuka yang dihasilkan menjadi lebih baik. 2. Program antarmukanya menjadi lebih mudah ditulis dan lebih ekonomis untuk dipelihara.
2.10.3. Pedoman untuk Merancang User Interface
Terdapat beberapa pedoman yang dianjurkan dalam merancang program guna mendapatkan suatu program yang user friendly. User Interface atau antarmuka pemakai adalah bagian sistem komputer yang memungkinkan manusia berinteraksi dengan komputer.
2.10.3.1. Delapan Aturan Emas (Eight Golden Rules)
Menurut Shneiderman (1998, p74) untuk merancang sistem interaksi manusia dan komputer yang baik, harus memperhatikan delapan aturan utama dibawah ini, yaitu: 1. Strive for consistency (berusaha untuk konsisten) 2. Enable frequent user to use shortcuts (memungkinkan pengguna sering memakai shortcut)
27 3. Offer informative feed back (memberikan umpan balik yang informatif) 4. Design dialogs to yield closure (pengorganisasian yang baik sehingga pengguna mengetahui kapan awal dan akhir dari suatu aksi) 5. Offer simple error handling (memberikan pencegahan kesalahan dan penanganan kesalahan yang sederhana) 6. Permit easy reversal of actions (memungkinkan pembalikan aksi (undo) dengan mudah) 7. Support internal locus of control (memungkinkan pengguna untuk menguasai dan mengontrol sistem) 8. Reduce short term memory load (mengurangi beban ingatan jangka pendek, di mana manusia hanya dapat mengingat 7 ± 2 satuan informasi sehingga perancangannya harus sederhana agar pengguna tidak perlu banyak menghapal)
2.10.3.2. Pedoman Merancang Penampilan Data
Beberapa pedoman yang disarankan untuk digunakan dalam merancang tampilan data yang baik menurut Smith and Mosier yang dikutip Shneiderman (1998, p80) yaitu: 1. Konsistensi tampilan data, istilah, singkatan, format, dan sebagainya harus standar. 2. Beban ingatan yang sesedikit mungkin bagi pengguna. Pengguna tidak perlu mengingat informasi dari layar satu ke layar yang lain. 3. Kompatibilitas tampilan data dengan peinput data. Format tampilan informasi perlu berhubungan erat dengan tampilan peinput data. 4. Fleksibilitas kendali pengguna terhadap data. Pemakai harus dapat memperoleh informasi dari tampilan dalam bentuk yang paling memudahkan.
28 2.10.3.3. Teori Waktu Respon
Waktu respon dalam sistem komputer menurut Shneiderman (1998, p352) adalah jumlah detik dari saat pemakai memulai aktivitas (misalnya dengan penekanan tombol enter atau tombol mouse) sampai ditampilkannya hasil pada display atau printer. Beberapa pedoman yang disarankan mengenai kecepatan waktu respons pada suatu program menurut Shneiderman (1998, p367) yaitu: 1. Pemakai lebih menyukai waktu respons yang lebih pendek. 2. Waktu respons yang panjang (lebih dari 15 detik) menggangu. 3. Waktu respons yang lebih pendek menyebabkan waktu pengguna berpikir lebih pendek. 4. Langkah yang lebih cepat dapat meningkatkan produktivitas, tetapi juga dapat meningkatkan tingkat kesalahan. 5. Waktu respons harus sesuai dengan tugasnya. a. Untuk mengetik, menggerakan kursor, memilih dengan mouse: 50 – 150 milidetik. b. Tugas sederhana yang sering: <1 detik c. Tugas biasa: 2-4 detik. d. Tugas kompleks: 8-12 detik. Pemakai harus diberitahu mengenai penundaan yang panjang.