BAB 2 LANDASAN TEORI 2.1 Internet 2.1.1 Pengertian Internet Menurut Purwadi (1995, p1) internet adalah sebuah jaringan komputer yang terdiri dari berbagai macam ukuran jaringan komputer di seluruh dunia mulai dari sebuah PC, jaringan-jaringan lokal berskala kecil, jaringan-jaringan kelas menegah, hingga jaringan-jaringan utama yang menjadi tulang punggung internet seperti NSFnet, NEARnet, SURAnet, dan lain-lain. Jaringan-jaringan ini saling berhubungan atau berkomunikasi satu sama lain dengan berbasiskan protokol IP (Internet Protocol, RFC 793) pada network layer-nya (layer ke 3 dari 7 layer OSI model) dan TCP (Transmission Control Protocol, RFC 791) atau UDP (User Datagram Protocol, RFC 768) pada transport layer-nya (layer ke 4), sehingga setiap pemakai dari setiap jaringan dapat saling mengakses semua service atau layanan yang disediakan oleh jaringan lainnya. (Sumber : Daniel H. Purwadi) 2.1.2 Sejarah Internet Internet merupakan kumpulan Sputnik, satelit utama buatan pertama yang mengorbit ke bumi oleh Uni Soviet. Menanggapi hal tersebut, Amerika Serikat lalu membentuk ARPA(Advance Research Project Agency) yang bertujuan untuk memenangkan perlombaan pengetahuan dan teknologi militer dengan Uni Soviet. ARPA lalu membentuk 10 11 ARPANET untuk kepentingan komunikasi antara pihak militer Amerika Serikat yang berjauhan. Pada akhir tahun 1969, empat universitas di Amerika Serikat yaitu, University of California, Stanford Research Institute, University of Utah dan University of Santa Barbara menjadi empat node yang saling terhubung pada jaringan ARPANET. Pada Oktober 1972 Bob Khan mengoperasikan demonstrasi yang sangat sukses dari ARPANET pada International Computer Communication Conference (ICCC). ARPANET inilah yang kemudian menjadi cikal bakal internet. Jadi bisa disimpulkan bahwa internet adalah sebuah jaringan komunikasi. 2.2 Internet Services Komputer pada jaringan Internet dapat menggunakan satu atau semua dari servis internet berikut ini : 1. Electronic Mail (e-mail) Memungkinkan anda untuk mengirim dan menerima surat. Bahkan layanan e-mail sekarang memungkinkan kita untuk menyertakan (attach) dokumen-dokumen pada surat elektronik yang kita kirim. 2. Telnet atau Remote Login Memungkinkan komputer anda untuk masuk (log) pada komputer lainnya dan menggunakan komputer tersebut seolah-olah anda ada disana secara fisik. 12 3. FTP atau File Transfer Protocol Memungkinkan komputer anda untuk mengambil dokumen yang kompleks yang terhubung kepada remote komputer secara cepat dan melihat atau menyimpan pada komputer kita. 4. World Wide Web (www) World Wide Web (www atau “the web”). Aktivitas paling besar dan paling cepat pertumbuhannya pada internet, adalah merupakan sistem besar yang terdiri dari server-server yang menawarkan semua jenis informasi kepada semua orang di internet. Informasi ini bisa berbentuk teks biasa, gambar, suara dan tipe data lainnya. 2.3 HTML Menurut Kurniawan (2001, p7) HTML adalah bahasa yang digunakan untuk membuat halaman-halaman hypertext pada internet. Konsep hypertext memungkinkan pembacaan dokumen tidak secara berurutan, baris demi baris atau halaman demi halaman namun dapat berpindah dari satu topik ke topik lainnya yang diinginkan. Dokumen HTML pada dasarnya hanyalah teks biasa. Pada dokumen HTML dapat diberikan suatu format tertentu seperti bentuk tebal, miring, form, tabel, list sedangkan pada dokumen teks hal ini tidak dapat dilakukan. Untuk melihat hasil format tersebut dibutuhkannya browser. Bahasa HTML disebut mark-up language karena mengandung tanda-tanda tertentu yang digunakan untuk menentukan tampilan dan tingkat kepentingan dari teks tersebut dalam suatu halaman HTML. Struktur HTML sangat sederhana bila dibandingkan dengan bahasa pemrograman lainnya dimana pada HTML tidak terdapat looping. 13 2.4 Web Server Web Server adalah suatu aplikasi yang berjalan diatas suatu website dan bertanggung jawab untuk merespon permintaan dokumen dari web browser. Dalam melakukan suatu permintaan page pada website, browser melakukan hubungan web ke suatu server dengan menggunakan protokol HTTP. Server menanggapi koneksi tersebut dan mengirimkan isi dokumen yang diminta dan memutuskan koneksi tersebut. Kemudian browser melakukan proses formating informasi yang didapatkan dari server. Web Server tidak hanya sekedar melakukan pengiriman dokumen, tetapi juga bertanggung jawab mengelola formulir input dan linking form serta browser dengan program-programnya. 2.5 Internet Information Services (IIS) IIS singkatan dari Internet Information Services merupakan sebuah aplikasi web server dan FTP server untuk lingkungan sistem operasi Windows. IIS dimaksudkan untuk memenuhi kebutuhan user dari banyak lapisan : dari workgroup dan departemen pada lingkungan intranet perusahaan hingga hosting web yang menerima hingga jutaan hits(pengunjung) per hari. Fitur-fitur seperti web publishing yang inovatif, wizards, tools yang dapat di modifikasi(customize), tools management yang dapat di modifikasi, pilihan administrasi yang fleksibel dan tools untuk analisis. IIS memudahkan bagi kita untuk berbagi dokumen dan informasi melalui intranet pada perusahaan maupun pada internet dan IIS terintegrasi secara penuh dengan Windows NT Directory Service dan Windows 2000. 14 IIS meupakan salah satu web server yang berhubungan dengan sistem operasi Windows NT dan Windows 2000, dan dirancang khusus untuk memenuhi kebutuhan server internet secara luas. 2.6 Java Script Menurut Tom N. dan Dori S. (1992. p2) Java Script merupakan modifikasi dari bahasa C++ dengan pola penulisan yang lebih sederhana. Intepreter bahasa ini sudah disediakan ASP ataupun Internet Explorer. Secara khusus beberapa hal yang penting dalah Java Script adalah : • Menggunakan blok awal “{” dan blok akhir “}”. • Automatic Version dalam pengoperasian tipe data yang berbeda. • Case Sensitive, sehingga programer java harus ekstra hati-hati dalam menggunakan nama variabel fungsi dan lain-lain. • Extension umumnya menggunakan “.js”. • Setiap statement dapat di akhiri dengan “;” sebagaimana halnya C++ tetapi terkadang juga tidak digunakan. • Jika tidak didukung oleh browser versi lama, script-nya dapat disembunyikan diantara tag “<!--” dan “-->”. • Jika program dalam satu baris terlalu panjang dapat disambung ke baris berikutnya dengan karakter “\”. 2.7 Use Case Menurut Whitten (2004, p256), pemodelan Use Case adalah sebuah pendekatan yang memfasilitasi pengembangan system dengan memfokuskan pada pengguna. Dengan memfokuskan diri pada pengguna ini,maka analis akan dapat berkonstrasi untuk mengembangkan bagaimana sistem akan 15 digunakan. Pemodelan use case ini berpusat pada pemodelan berorientasi objek untuk melihat bagaimana pengguna dapat berperan aktif di dalam sistem. 2.8 Web Pages Berdasarkan sifatnya web pages dibagi menjadi 2 macam, yaitu : • Static Pages Ciri-ciri page ini adalah web pages ini tidak pernah berubah, baik isi maupun tampilannya. Si pemrogram harus melakukan pengaturan ulang pada coding HTML-nya untuk melakukan perubahan, sehingga perubahan yang terjadi pada page dilakukan secara manual. • Dynamic Pages Ciri-ciri pages ini adalah web pages ini dapat berubah sesuai permintaan user, perubahan yang terjadi bersifat otomatisasi karena pages melakukan proses generate secara otomatis dalam perubahan yang terjadi tanpa si pemrogram harus melakukan proses coding ulang. Dynamic Pages biasanya digunakan untuk mengidentifikasi user, seperti pada saat Login atau dapat juga untuk melakukan pengecekan tipe browser yang digunakan oleh user sehingga page dapat mengoptimalkan kemampuan yang dimiliki oleh browser. Melalui page ini user dapat meminta suatu informasi, yang memungkinkan setiap permintaan user satu dengan yang lainnya dapat berbeda-beda. Biasanya informasi terdapat dalam database, file, text, file XML, dan lain-lain. Untuk menghasilkan dynamic pages digunakan suatu scripting karena jika hanya menggunakan HTML sangat mustahil untuk 16 menggunakan page seperti ini. Dynamic Pages dapat dibedakan berdasarkan tempat pengolahannya yaitu Client-Side Scripting dan Server-Side Scripting. 2.8.1 Client-Side Scripting Merupakan scripting yang pengolahannya dilakukan oleh browser dan hasilnya ditampilkan dimonitor. Pada Client-Side Scripting, user dapat melihat kode instruksi yang tedapat pada page. Keuntungan : Memiliki response time yang lebih cepat karena script diproses oleh browser pada tiap client. Mengurangi workload pada web server. Kelemahan : • User dapat melihat script yang terdapat pada web pages sehingga web pages dapat ketahui dan mudah dirusak (di-hack). 2.8.2 Server-Side Scripting Merupakan scripting yang pengolahannya dilakukan oleh web server dan hasil pemrosesannya berupa HTML yang kemudian dikirim sebagai bagian dari HTTP response ke browser yang melakukan permintaan. Keuntungan : • Server-Side Scripting memungkinkan web programmer untuk mengambil dan menyimpan informasi melalui database dan file text. • Scripting yang ada tidak dapat dilihat oleh user sehingga keamananya lebih terjamin. 17 Kelemahan : • Memiliki response time yang relatif lebih lama dibandingkan dengan Client-Side Scripting karena proses scripting dilakukan di web server. Dari pembahasan diatas dapat dikatakan untuk membuat Dynamic Pages yang baik dan aman lebih baik menggunakan Server-Side Scripting. Beberapa contoh Server-Side Scripting adalah : JSP, PHP, CGI dan ASP (Active Server Pages). 2.9 SQL Server 2000 Menurut Mangkulo (2004,p14), SQL Server 2000 adalah aplikasi database yang dikeluarkan oleh Microsoft. SQL Server 2000 dapat digunakan pada pembuatan aplikasi mulai dari aplikasi kecil sampai dengan aplikasi besar sekalipun. Pada saat SQL Server 2000 di-install, secara otomatis sudah terdapat 6 buah database, yaitu master, model, tempdb, pubs, Northwind dan msdb. 2.10 Rekayasa Perangkat Lunak 2.10.1 Pengertian Rekayasa Perangkat Lunak Menurut Pressman (Pressman, 2005, page 20), Rekayasa Perangkat Lunak adalah penetapan dan penggunaan prinsip rekayasa untuk menghasilkan perangkat lunak yang dapat diandalkan dan bekerja efisien pada perangkat keras. Istilah Rekayasa Perangkat Lunak meliputi beberapa metode, teknik, dan juga peralatan yang digunakan dalam pembuatan aplikasi sebelum aktifitas utama yaitu pembuatan program. Istilah “engineering” sendiri tidak jauh berbeda dengan civil engineering, yaitu sebuah referensi untuk mempelajari 18 pengkonstruksian pembangunan. Dalam pengkonstruksian bangunan, hanya meletakkan bata dan semen tidaklah cukup untuk membuat bangunan disebut sebuah bangunan, sama seperti dalam pembuatan program. Membangun suatu bangunan memerlukan sejumlah atau serangkaian dari aktifitas seperti membuat desain arsitektur, seperti dinding, pipa air dan jalur listrik sebelum tahap konstruksi sebenarnya dimulai, dengan keterbatasan dana dan waktu yang juga perlu dikalkulasikan. Dikarenakan hal tersebut Perangkat Lunak Engineering memerlukan manajemen proyek untuk mengembangkan suatu aplikasi dengan keterbatasan waktu dan dana sekaligus untuk memenuhi kepuasan pengguna. 2.10.2 Model Proses Perangkat Lunak Menurut Pressman(Pressman, 2005, page 78), model proses merupakan gambaran dari suatu proses pembuatan rekayasa perangkat lunak yang terdiri dari bermacam – macam aktifitas, tindakan, tugas, tujuan dan hasil kerja yang dibutuhkan untuk menghasilkan perangkat lunak yang berkualitas. Berikut ini adalah kegiatan umum yang penting dalam pembuatan perangkat lunak : 1. Spesifikasi Penjelasan tentang fungsi dan batas – batas dalam pengembangan suatu perangkat lunak. 2. Desain dan Implementasi Perangkat lunak yang mendukung spesifikasi harus dibuat sesuai dengan rencana. 3. Validasi 19 Perangkat lunak yang dirancang, harus divalidasi agar sesuai dengan kebutuhan pengguna 4. Evolusi Perangkat lunak yang telah selesai dibuat, harus dapat terus berubah dan berkembang sesuai dengan kebutuhan pengguna. 2.10.3 Karakteristik Perangkat Lunak Menurut Pressman(2005, page 6-8), perangkat lunak memiliki bentuk yang abstrak. Oleh karena itu perangkat lunak memiliki karakteristik yang berbeda dengan perangkat keras, yaitu : 1. Perangkat lunak dikembangkan atau dibangun, bukan dibuat atau diproduksi seperti pembuatan perangkat lainnya. 2. Perangkat lunak tidak pernah habis. 3. Perangkat lunak biasanya dibuat untuk keperluan tertentu. Selain dilihat dari fisik, perangkat lunak memiliki beberapa karakteristik yang membedakannya terhadap elemen sistem lainnya, antara lain : a. Perangkat lunak yang dikembangkan dan direkayasa. Pada hardware(perangkat keras), kualitas dari suatu produk diukur dari keunggulan desainnya. Berbeda dengan perangkat lunak, kualitas perangkat lunak yang memiliki pendekatan yang berbeda mengenai kualitas. perangkat lunak lebih berkonsentrasi pada proses penyusunan, bukan pada perakitan. b. Perangkat lunak tidak dapat rusak secara fisik. Pada hardware kerusakan secara fisik dapat diakibatkan karena frekuensi pemakaian yang berlebih atau karena faktor-faktor fisik lainnya, sehingga 20 umur suatu hardware tentunya lebih pendek dan membutuhkan pergantian komponen yang mungkin harus dilakukan secara berkala. Berbeda dengan software(perangkat lunak) yang tidak dapat termakan oleh umur dan memiliki tingkat kefatalan yang tinggi apabila rusak karena membutuhkan penyusunan kembali suatu software. c. Perangkat lunak umumnya custom build(tersendiri). Perangkat lunak merupakan suatu kesatuan yang utuh, tidak seperti perangkat keras yang dapat merujuk pada sebuah komponen digital. Karena itu pembuatan suatu perangkat lunak memakan waktu lebih lama karena perakitannya bukan berasal dari komponen-komponen yang tersedia. 2.10.4 Waterfall Model Menurut Pressman (Pressman, 2005, page 79) Dalam rekayasa perangkat lunak, terdapat suatu pendekatan yang disebut Waterfall Model. Waterfall Model biasa disebut juga sebagai Classic Life-Cycle dalam Rekayasa Perangkat Lunak, menyarankan sebuah pendekatan yang sistematis dan berurutan untuk merancang serta mengembangkan sebuah perangkat lunak yang berawal dari spesifikasi yang diminta oleh pengguna, kemudian melakukan sebuah perencanaan, membuat model dari rancangan perangkat lunak, konstruksi, penempatan dan hasil akhir dari perangkat lunak tersebut. Berikut ini adalah gambar dari model waterfall (Gambar 2.1 Waterfall Model (Pressman, 2005, page 79)) 21 Waterfall model Communication Planning modeling construction deployment Gambar 2.1 : Waterfall Model (Pressman, 2005, p79) • Communication. Pemodelan ini diawali dengan mencari kebutuhan dari keseluruhan sistem yang akan diaplikasikan ke dalam bentuk perangkat lunak. Hal ini sangat penting, mengingat perangkat lunak harus dapat berinteraksi dengan elemen-elemen yang lain seperti perangkat keras, device memory, dsb, dan juga dalam tahapan ini terjadi proses pencarian kebutuhan diintensifkan dan difokuskan pada perangkat lunak. Untuk mengetahui sifat dari program yang akan dibuat, maka para perangkat lunak engineer harus mengerti tentang domain informasi dari perangkat lunak, misalnya fungsi yang dibutuhkan, user interface, dsb. Dari 2 aktivitas tersebut (pencarian kebutuhan sistem dan perangkat lunak) harus didokumentasikan dan ditunjukkan kepada pelanggan. • Planning. Proses ini digunakan untuk menentukan jadwal/waktu yang diperlukan untuk menyelesaikan setiap kegiatan yang dibutuhkan untuk menyelesaikan proyek perangkat lunak ini. • Modeling. Proses ini digunakan untuk mengubah kebutuhan-kebutuhan diatas menjadi representasi ke dalam bentuk “blueprint” perangkat lunak sebelum coding dimulai. Desain harus dapat mengimplementasikan 22 kebutuhan yang telah disebutkan pada tahap sebelumnya. Seperti aktivitas sebelumnya, maka proses ini juga harus didokumentasikan sebagai konfigurasi dari perangkat lunak. • Construction. Untuk dapat dimengerti oleh mesin, dalam hal ini adalah komputer, maka desain tadi harus diubah bentuknya menjadi bentuk yang dapat dimengerti oleh mesin, yaitu ke dalam bahasa pemrograman melalui proses coding. Tahap ini merupakan implementasi dari tahap design yang secara teknis nantinya dikerjakan oleh programmer dan juga sesuatu yang dibuat haruslah diujicobakan. Demikian juga dengan perangkat lunak. Semua fungsi-fungsi perangkat lunak harus diujicobakan, agar perangkat lunak bebas dari error(kesalahan), dan hasilnya harus benar-benar sesuai dengan kebutuhan yang sudah didefinisikan sebelumnya. • Deployment. Pemeliharaan suatu perangkat lunak diperlukan, termasuk di dalamnya adalah pengembangan, karena perangkat lunak yang dibuat tidak selamanya hanya seperti itu. Ketika dijalankan mungkin saja masih ada errors kecil yang tidak ditemukan sebelumnya, atau ada penambahan fiturfitur yang belum ada pada perangkat lunak tersebut. Pengembangan diperlukan ketika adanya perubahan dari eksternal perusahaan seperti ketika ada pergantian sistem operasi, atau perangkat lainnya. 2.10.4.1 Kelebihan dan Kekurangan Waterfall Model Kelebihan dari Waterfall Model adalah semua kebutuhan sistem dapat didefinisikan secara utuh, eksplisit, dan benar di awal project maka SE dapat berjalan dengan baik dan tanpa masalah. Meskipun seringkali kebutuhan sistem tidak dapat didefinisikan seeksplisit yang diinginkan, tetapi paling 23 tidak, problem pada kebutuhan sistem di awal project lebih ekonomis dalam hal uang (lebih murah), usaha, dan waktu yang terbuang lebih sedikit jika dibandingkan problem yang muncul pada tahap-tahap selanjutnya. Kekurangan dari Waterfall Model adalah model ini melakukan pendekatan secara urut / sequential, maka ketika suatu tahap terhambat, tahap selanjutnya tidak dapat dikerjakan dengan baik. 2.11 Interaksi Manusia dan Komputer Interaksi Manusia dan Komputer menurut Schneidermen (1998, p10) adalah suatu ilmu yang mempelajari bagaimana seorang manusia berinteraksi dengan komputer atau pengaruh komputer dalam pengembangan untuk berinteraksi dengan manusia. IMK sering dianggap sebagai persimpangan dari ilmu komputer, ilmu perilaku, desain dan bidang lainnya. Interaksi antara manusia dan komputer muncul pada tampilan layar, baik perangkat lunak maupun perangkat keras. Berdasarkan Association for Computing Machinery (ACM), IMK adalah suatu ilmu yang berhubungan dengan perancangan, evaluasi dan implementasi sistem komputer interaktif untuk digunakan manusia, serta pembelajaran fenomena disekitarnya. Fokus dari ilmu ini adalah perancangan dan evaluasi antarmuka pemakai dan bagaimana membuat suatu sistem yang mudah dipelajari dan mudah bagi penggunaannya. 24 Empat Prinsip sistem IMK yang baik adalah sebagai berikut : 1. Kondisi dan aksi alternatif harus dapat dilihat oleh pemakai. 2. Harus ada model konseptual yang baik dan gambaran sistem yang konsisten. 3. Pemakai harus mendapatkan umpan balik (feedback) secara terus-menerus. 4. Antar muka yang dibuat harus memenuhi pemetaan yang baik, yang mencakup hubungan tiap tingkat. Semua pedoman yang diterapkan dalam suatu perancangan ditujukan kepada semua pemakai . Terdapat tiga jenis kategori pemakai : 1. Novice atau First Time Users (Pemula) Pemakai yang tidak mempunyai pengetahuan yang rinci mengenai device ketika menggunakan sistem komputer, seperti menghapus karakter menggunakan tombol delete dan backspace. Pengetahuan mengenai konsep komputer sedikit, seperti membuka, menutup file dan lain-lain. 2. Knowledgeable Intermitent Users Pemakai mengetahui konsep komputer, tetapi masih kesulitan dalam menggunakan device. 3. Expert Frequent Users (Ahli) Pemakai mengenal betul rincian mengenai device dan konsep komputer. Dalam merancang suatu sistem yang interaktif diperlukan rancangan model yang user friendly agar dapat berinteraksi dengan baik dengan penggunaannya. 25 2.12 Konsep Perancangan Antarmuka Pemakai Dalam merancang suatu sistem, harus diperhatikan satu hal yang sangat penting, yaitu interaksi antara user dengan sistem. Interaksi ini harus user friendly yang artinya mudah digunakan oleh user yang awam sekalipun. Menurut Shneiderman (1998, p15) terdapat lima faktor ukuran manusia yang dapat digunakan dalam mengevaluasi sistem, yaitu : 1. Time to learn (waktu belajar) Merupakan berapa lama waktu yang diperlukan oleh user untuk mempelajari perintah-perintah yang ada dalam sistem untuk melakukan suatu tugas. 2. Speed of performance (kecepatan kinerja) Merupakan berapa lama waktu yang diperlukan oleh sistem untuk merespon perintah yang diberikan oleh user. 3. Rate of error by user (tingkat kesalahan pemakai) Jumlah dan jenis kesalahan yang dilakukan atau terjadi pada saat user melaksanakan tugas-tugasnya. 4. Retention over time (retensi daya ingat) Merupakan kemampuan user mengingat pengetahuan mereka setelah jangka waktu tertentu. Berhubungan dengan waktu belajar dan frekuensi penggunaan suatu apikasi. 5. Subjective satisfaction (kepuasan subjektif) Merupakan Kepuasan User dalam menggunakan berbagai aspek yang ada di dalam sistem dan seberapa jauh user menyukai sistem tersebut. Jawaban dari pertanyaan ini dapat diperoleh melalui wawancara atau 26 dengan angket yang meliputi skala kepuasan dan ruang untuk memeberikan komentar secara bebas. Dalam konsep perancangan antarmuka, ada yang disebut dengan delapan aturan emas atau dikenal dengan sebutan “8 Golden Rules” (Shneiderman, 1998, page 74-75) yaitu : 1. Konsistensi Konsistensi dilakukan pada urutan tindakan, perintah, dan istilah yang digunakan pada prompt, menu, serta layar bantuan. 2. Memungkinkan pengguna untuk menggunakan shortcut Ada kebutuhan dari pengguna yang sudah ahli untuk meningkatkan kecepatan interaksi, sehingga diperlukan singkatan, tombol fungsi, perintah tersembunyi, dan fasilitas makro. 3. Memberikan umpan balik yang informatif Untuk setiap tindakan operator, sebaiknya disertakan suatu sistem umpan balik. Untuk tindakan yang sering dilakukan dan tidak terlalu penting, dapat diberikan umpan balik yang sederhana. Tetapi ketika tindakan merupakan hal yang penting, maka umpan balik sebaiknya lebih substansial. Misalnya muncul suatu suara ketika salah menekan tombol pada waktu input data atau muncul pesan kesalahannya. 4. Merancang dialog untuk menghasilkan suatu penutupan Urutan tindakan sebaiknya diorganisir dalam suatu kelompok dengan bagian awal, tengah, dan akhir. Umpan balik yang informatif akan memberikan indikasi bahwa cara yang dilakukan sudah benar dan dapat mempersiapkan kelompok tindakan berikutnya. 27 5. Memberikan penanganan kesalahan yang sederhana Sedapat mungkin sistem dirancang sehingga pengguna tidak dapat melakukan kesalahan fatal. Jika kesalahan terjadi, sistem dapat mendeteksi kesalahan dengan cepat dan memberikan mekanisme yang sedehana dan mudah dipahami untuk penanganan kesalahan. 6. Mudah kembali ke tindakan sebelumnya Hal ini dapat mengurangi kekuatiran pengguna karena pengguna mengetahui kesalahan yang dilakukan dapat dibatalkan sehingga pengguna tidak takut untuk mengeksplorasi pilihan-pilihan lain yang belum biasa digunakan. 7. Mendukung tempat pengendali internal (internal locus of control) Pengguna ingin menjadi pengontrol sistem dan sistem akan merespon tindakan yang dilakukan pengguna daripada pengguna merasa bahwa sistem mengontrol pengguna. Sebaiknya sistem dirancang sedemikan rupa sehingga pengguna menjadi inisiator daripada responden. 8. Mengurangi beban ingatan jangka pendek Keterbatasan ingatan manusia membutuhkan tampilan yang sederhana atau banyak tampilan halaman yang sebaiknya disatukan, serta diberikan cukup waktu pelatihan untuk code, mnemonic, dan urutan tindakan. 28 2.13 Pedoman Perancangan Menurut Shneiderman (1998, page 67), dalam merancang user interface harus berpedoman pada 3 prinsip, yaitu : 1. Prinsip 1 : Kenali Perbedaan (Jenis Pemakai) a. Novice or first-time users 1). Pemakai hanya mengenal sedikit konsep dan cara interface. 2). Untuk perancangan harus diperhatikan untuk membatasi jumlah pilihan. Selain itu, penyajian umpan balik yang informatif akan membantu, tampilan pesan kesalahan yang jelas jika pemakai melakukan kesalahan harus disediakan, dan perancangan manual dan tutorial online yang efektif. b. Knowledgeable intermittent users 1). Pemakai memiliki konsep tugas stabil dan pengetahuan konsep interface yang luas, namun pemakai kesulitan mengingat struktur menu. 2) Dalam perancangan harus diperhatikan untuk merancang struktur menu yang rapi, konsisten dan kejelasan interface yang jelas serta perlindungan dari bahaya karena eksplorasi fitur. c. Expert frequent users 1) Pemakai pada tingkat ini telah terbiasa dengan konsep tugas dan interface. Mereka mengharapkan waktu respon yang kecil sehingga pekerjaan dapat cepat selesai. 2) Dalam perancangan harus diperhatikan penggunaan makro, menu singkat, singkatan, dan kebutuhan lainnya untuk mempercepat pekerjaan. 29 2. Prinsip 2 : Gunakan Delapan Aturan Emas Perancangan Interface. 3. Prinsip 3 : Cegah Kesalahan a. Membetulkan pasangan yang bersesuaian (correct matching pairs). 1) Menempatkan tanda pembuka dan penutup dalam satu aksi 2) Mengingatkan pemakai bahwa tanda penutup belum dipasang. b. Melengkapi urutan aksi (complete sequences). 1) Memungkinkan penggabungan aksi-aksi menjadi suatu aksi baru dengan makro atau sejenisnya. 2) Melakukan aksi-aksi yang tergantung aksi lain secara automatis. c. Membetulkan perintah (correct commands). 1) Mengenali kekurangan perintah dan melengkapinya. 2) Memberikan pilihan sebagai ganti mengetik. Setelah sistem dirancang dan diimplementasikan maka sistem harus dievaluasi untuk menguji sistem tersebut apakah layak atau tidak untuk digunakan. 30 2.14 Basis Data Menurut Conolly dan Begg (2005, p15) basis data merupakan suatu kumpulan data yang berhubungan secara logis yang dipakai bersama, dan deskripsi dari data tersebut dirancang untuk memenuhi kebutuhan informasi suatu organisasi. 2.14.1 Entiti Relational Diagram (ERD) Menururt Conolly dan Begg (2005, p354) ERD adalah penggambaran dari sebuah kebutuhan penyimpanan data dengan cara kerja dari suatu perusahaan atau organisasi tersebut yang bebas dari ambiguitas. ERD digunakan untuk mengidentifikasikan data yang akan disimpan, diolah dan diubah untuk mendukung aktivitas bisnis suatu organisasi. Ada berbagai jenis relationship yang mungkin terjadi antara suatu entity dengan entity lainnya, antara lain : 1. One-to-One Relationships, contohnya : Gambar 2.2 Contoh One-to-One Relationships (sumber : Conolly and Begg, 2005, p358) 31 2. One-to-Many Relationships, contohnya : Gambar 2.3 Contoh One-to-Many Relationships (sumber : Conolly and Begg, 2005, p359) 3. Many-to-Many Relationships, contohnya : Gambar 2.4 Contoh Many-to-Many Relationships (sumber : Conolly and Begg, 2005, p360) 32 2.15 JAVA Teknologi JAVA merupakan bahasa pemrograman yang dikembangkan oleh Sun Microsystems dan dirilis pada tahun 1995 sebagai komponen utama dari Sun Microsystems Java Platform. Sintaks dari bahasa pemrograman Java banyak diambil dari C dan C++, tetapi Java memiliki model objek yang lebih sederhana dan lebih sedikit fasilitas low-level. Proyek Java dimulai pada bulan Juni tahun 1991 oleh James Gosling. Pada mulanya bahasa ini disebut Oak yang berasal dari pohon oak yang berada di luar kantor Gosling, juga pernah berubah menjadi Greendan dan akhirnya dinamakan Java, dari kumpulan kata acak. Gosling bertujuan untuk mengimplementasi sebuah mesin virtual dan bahasa yang mirip dengan notasi C / C++. Sun merilis implementasi publik pertama Java 1.0 di tahun 1995 yang menjanjikan “Write Once, Run Anywhere” (WORA) dimana dapat dijalankan dengan baik pada platform popular, cukup aman dan menyediakan fitur keamanan yang dapat dikonfigurasi. Kode JAVA diproses melalui 2 tahap, yaitu fase kompilasi dan interpretasi. Dalam fase kompilasi, source code dari Java (file .java) akan diterjemahkan menjadi sebuah bahasa penengah (intermediate language) yang disebut Java Bytecode menggunakan Java Virtual Machine (JVM). 33 2.15.1 Teknologi JAVA Dengan berkembangnya versi terbaru dari Java yang disebut Java 2, teknologi Java dibagi menjadi 3 (tiga) macam edisi, yaitu : 1. Teknologi Java pada perangkat mobile (J2ME) Micro edition dari Java platform memenuhi permintaan dari pengembang untuk menciptakan aplikasi guna memenuhi kebutuhan pasar dan konsumen. J2ME merupakan teknologi Java yang menyediakan aplikasi robust untuk berbagai tipe dan ukuran peralatan wireless dan wireline dari mobile phone, PDA, dan sistem telematic pada kendaraan. 2. Teknologi Java pada PC Desktop (J2SE) Merupakan edisi standar dari platform Java yang didesain untuk mengembangkan keamanan, kemudahan dan aplikasi berperforma tinggi untuk desktop dengan jangkauan yang luas meliputi sistem operasi seperti Apple Macintosh, Linux, Microsoft Windows, dan Sun Solaris. Kompatibel dengan desktop terutama pada lingkungan yang heterogen sehingga dapat menambah produktifitas pengguna, komunikasi dan kolaborasi dengan biaya yang sesuai. 3. Teknologi Java untuk bisnis menengah dan besar (J2EE) Edisi Enterprise dari Java Platform ini dikhususkan untuk membantu perkembangan bisnis dengan keperluan pengembangan yang besar, sebagai contoh server dan aplikasi desktop dan aplikasi wireless mobile dan wireline. Hingga saat ini telah lebih dari 5 juta download teknologi Java Enterprise (J2EE) yang digunakan untuk kepentingan segala industri dan tipe aplikasi dari proses manajemen bisnis, otomatisasi sales dan service, serta produktifitas kantor.