BAB II LANDASAN TEORI 2.1 Kajian Pustaka Jaringan lokal merupakan suatu lingkungan yang memungkinkan sejumlah orang dapat berbagi data yang sama dalam waktu yang bersamaan. Suatu data diletakkan dalam suatu komputer yang disebut server dan data ini dapat digunakan secara serentak oleh pemakai-pemakai pada komputer lain yang disebut workstation. Saat ini jaringan lokal banyak dipakai tidak hanya pada perusahaan menengah ke atas tetapi juga pada perusahaan berskala kecil. Tentu saja hal ini tidak lepas dari keuntungan yang ditawarkan oleh jaringan komputer lokal. Salah satu keuntungannya adalah memungkinkan data dapat dipakai secara bersamaan oleh pemakai. Satu perubahan yang dilakukan oleh satu pemakai pada komputer yang terhubung ke jaringan komputer akan segera diketahui oleh orang lain. Hal ini jelas menguntungkan bagi pemakai, sebab bila ada data yang berubah masing-masing pemakai tidak perlu mengadakan perubahan. Dengan demikian sifat ini dapat meningkatkan produktifitas pemakai dalam perusahaan. Tentu saja dalam permasalahan pembagian data secara bersamaan ada satu kelemahan yang harus diatasi, yaitu masalah hak akses data bagi orang tertentu. Dalam hal ini perlu diberikan hak akses yang berbeda untuk golongan pemakai yang berbeda agar tidak ada kemungkinan manipulasi data bagi orang yang tidak mempunyai hak untuk memanipulasi data tersebut. 8 9 2.2 Sistem Pembelian dan Penjualan di PT. Inti Duta Arihta Motors Sistem pembelian dan penjualan yang digunakan di PT. Inti Duta Arihta Motors dalam melakukan transaksi perdagangan untuk menghasilkan laporan masih menggunakan sistem single user. Dengan daya sistem komputerisasi berbasis Multiuser mampu menangani dari pihak konsumen diharapkan mampu mengefisiensikan transaksi yang terjadi selama ini. Proses data Kendaraan Proses data kendaraan di PT. Inti Duta Arihta Motors dilakukan dengan pendataan semua kendaraan yang dibeli dari supplier. Semua kendaraan tersebut ditulis atau direkam dalam sebuah dokumen dan dibedakan menurut Jenis, Merk, no_seri, no_mesin dan no_rangka. Proses Data Supplier Proses data supplier dilakukan dengan pendataan nama-nama supplier kendaraan kepada pihak PT.Inti Duta Arihta Motors. Nama-nama supplier tersebut didapatkan dari pihak PT.Inti Duta Arihta Motors yang mencari relasi sebagai pemasok kendaraan. Proses Pembelian Kendaraan Proses pembelian kendaraan di PT.Inti Duta Arihta Motors dilakukan jika persediaan barang sudah habis. Pada transaksi pembelian ini dapat dilakukan dengan pembelian langsung yaitu kendaraan yang akan dibeli pada supplier dapat dipenuhi oleh supplier saat transaksi pembelian dilakukan. 10 Proses Penjualan Kendaraan Proses penjualan kendaraan di PT.Inti Duta Arihta Motors dapat terjadi apabila adanya permintaan kendaraan dari konsumen dan kendaraan tersebut ada di persediaan PT.Inti Duta Arihta Motors. Untuk penjualan kendaraan apabila kendaraan yang dibutuhkan konsumen tidak ada atau sedang kosong maka dilakukan transaksi pemesanan kendaraan oleh konsumen ke pihak PT. Inti Duta Arihta Motors. 2.3 Sistem Client/Server Istilah client/server dewasa ini telah demikian popular. Keuntungan utama dari sistem berbasis client/server adalah bahwa perangkat keras dan perangkat lunak bisa ditempatkan dimana saja mereka bisa bekerja secara lebih optimal. Definisi yang banyak digunakan untuk menjelaskan sistem berbasis client/server adalah “sistem yang memisahkan antara tugas-tugas komputasi antara proses-proses client dan server”. Dengan sistem client/server, kekuatan pemrosesan bisa disebarkan (didistribusikan) ke kebanyakan mesin client dan mesin server yang terpisah secara fisik (itu sebabnya disebut distributed sistem). Konsep dasar sistem berbasis client/server adalah balancing (penyebaran), yaitu proses yang mencegah suatu prosessor yang mengalami overiod (terbeban lebih) sementara mesin lainnya justru menganggur. Jadi, setidaknya dalam teori, sistem berbasis client/server memberikan keuntungan yang banyak seperti penggunaan resource secara lebih efisien, penyimpanan data terpusat, serta lalu lintas data dalam jaringan menjadi lebih rendah 11 (dibandingkan sistem yang seluruhnya terpusat). Satu-satunya kelemahan dari sistem client/server adalah manajemen dan perawatan mesin-mesin client yang membutuhkan upgrading serta proses konfigurasi yang memakan waktu dan tenaga. Aplikasi Client/Server: - Setiap departemen dapat mengakses data yang merupakan bagiannya. - Memberikan pengaksesan data kepada pengambilan keputusan dalam bentuk yang sesuai. - Data dapat dikontrol secara terpusat sehingga integritas data yang diberikan oleh server database - Mengurangi kepadatan lalu lintas jaringan, karena hanya sebagian data yang dikirimkan ke client bukan seluruh tabel. 2.4 Pemrograman Multiuser Multiuser merupakan suatu lingkungan yang memungkinkan sejumlah orang berbagi data yang sama dalam waktu yang bersamaan. Suatu data diletakkan pada suatu komputer yang disebut server, dan data ini dapat digunakan secara serentak oleh pemakai pada komputer-komputer lain yang disebut terminal kerja (Workstation). 2.5 Konsep Pemrograman Multiuser Pada lingkungan jaringan komputer, suatu program dapat digunakan oleh sejumlah orang secara bersamaan (Multiuser). Hal seperti ini dapat menuntut suatu penanganan pemrograman yang sedikit berbeda dengan data yang hanya dipakai oleh 12 seorang pemakai. Salah satu permasalahan yang muncul dalam system multiuser adalah mencegah kemungkinan terjadinya suatu data yang dapat dimodifikasi oleh lebih dari satu orang pada waktu yang bersamaan. Jika keadaan seperti ini dapat diantisipasi, maka akan terjadi keadaan yang kurang konsisten. Penanganan multiuser pada dasarnya berupa penanganan saat tabel dibuka, penguncian terhadap record yang diperbaharui dan pembebasan record yang dikunci. 2.6 Teknik Pemrograman Multiuser Seperti telah dijelaskan bahwa pemrograman Multiuser adalah pemrograman yang dapat secara bersamaan oleh beberapa pengguna dalam waktu yang bersamaan. Karena dipakai secara bersamaan maka perlu dilakukan teknik pemrograman tersendiri agar pengguna yang sedang melakukan perubahan data pada record tertentu tidak dibuka atau diubah oleh pengguna lain. Pada PT. Inti Duta Arihta Motors sendiri, pembagian wewenang dibuat berdasarkan jabatan setiap karyawan masing-masing. Jabatan yang paling tingggi dipegang oleh seorang Manajer maka Manajer akan memiliki hak sebagai superuser (root) yang mampu mengakses level dibawahnya. 2.7 Arsitektur sistem Multiuser Ada beberapa macam arsitektur aplikasi untuk multiuser seiring dengan perkembangan teknologi komputer. Arsitektur multiuser adalah sekelompok komputer yang terintegrasi dalam sebuah jaringan dimana terjadi sebuah aplikasi 13 dapat digunakan oleh berbagai pemakai dari computer yang berbeda.1 Arsitekturnya yaitu: 1. File Server 2. Client Server 3. Three Tier 2.7.1 File Server atau Arsitektur Berbasis Host Pada masa awal komputasi, semua pemrosesan dilakukan pada mainframe. Kode aplikasi, data dan semua komponen system ditempatkan dan dijalankan pada host, seperti terlihat pada gambar dibawah ini: client Mainframe Network client Gambar 2.1 File Server atau Arsitektur Berbasis Host Walaupun komputer client dipakai untuk mengakses mainframe tidak ada pemrosesan yang terjadi pada mesin ini, oleh karena itu mereka disebut “dumb client” atau “dumb-terminal”. Tipe model ini, dimana semua pemrosesan terjadi secara terpusat, dikenal sebagai berbasis host. Sekilas bisa dilihat kelemahan dalam mode ini. Ada masalah utama pada komputasi berbasis host yaitu pemrosesan terjadi pada sebuah mesin tunggal sehingga semakin banyak user yang mengakses host, semakin kewalahan pula terjadi. Jika sebuah perusahaan memiliki beberapa kantor 1 Siebold, hal. 20-26, 2001. 14 cabang diseluruh dunia, namun mainframenya ditempatkan pada kantor pusat, user yang dapat mengakses mainframenya adalah yang beralokasi pada tempat itu, membiarkan kantor lain tanpa akses ke aplikasi yang ada. 2.7.2 Client Server Pada arsitektur file server atau berbasis host kelemahan utamanya adalah beban yang berat pada saat proses, hal inilah yang kemudian mendasari perkembangan arsitektur client server yang kemudian membagi proses tidak dalam sistem yang tunggal tetapi melibatkan mesin client sehingga terjadi distribusi proses dengan demikian beban proses tidak terjadi dalam satu mesin yaitu mainframe saja. Arsitektur ini kemudian lebih dikenal dengan arsitektur Two-Tier. Dalam arsitektur ini client tidak brsifat “dumb-client” karena client terlibat dalam distribusi proses, berikut ini gambar arsitektur client server: client (PC) Server Network client (PC) Gambar 2.2 Client Server Dalam Client server, client bertanggung jawab untuk bagian dari aplikasi yang berinteraksi dengan user termasuk didalamnya logika-logika prosedur yang berkomunikasi dengan server, sedang server akan bertanggung jawab terhadap manajemen data, keamanan, dan penaganan kesalahan. Kelemahan yang dimiliki 15 model ini adalah kurangnya skalabilitas. Skalabilitas adalah seberapa baik suatu aplikasi bisa menangani kebutuhan yang meningkat misalnya penambahan sejumlah user akan menyebabkan beban server tetap berat karena dalam model client server proses tetap lebih berat ke server dibandingkan sisi client sehingga semakin banyak client yang mengakses/ditambahkan ke sistem akan semakin berat beban server dalam bekerja. 2.7.3 Three Tier Model Three Tier dikembangkan untuk mengatasi keterbatasan model client server. Untuk mengatasi keterbatasan tersebut pada model ini proses disebar kedalam tiga lapisan proses. Ketiga lapisan tersebut masing-masing memiliki fungsi tersendiri sebagai berikut: a. Lapisan client sebagai layanan yang menangani semua interaksi user dengan aplikasi. Lapisan ini bertanggung jawab untuk semua input user dan komunikasi dengan lapisan layanan bisnis/menengah. b. Lapisan bisnis/menengah, layanan terhadap proses prosedur dan fungsi yang terjadi dalam aplikasi yaitu memproses data, dan mengolah transaksi, proses ini pada model client server terjadi di sisi client namun dalam model ThreeTier dipisahkan kedalam lapisan tersendiri yaitu lapisan bisnis/menengah. c. Lapisan data, tempat memproses data sumber-sumber data yang memberi layanan terhadap satu atau lebih layanan penyimpanan data, lapisan ini menyediakan data bagi lapisan layanan bisnis. 16 Dengan arsitektur Three-Tier suatu aplikasi multiuser akan menjadi lebih mudah untuk melakukan perawatan dan pengembangan baik dari aspek perangkat lunak yaitu penambahan prosedur atau fungsi aplikasi maupun aspek hardware dengan penambahan jumlah client dalam jaringan. Network Data Source Tier Lapisan I Bussines Tier Lapisan II client Tier Lapisan III Gambar 2.3 Three Tier 2.8 Kerangka Teori 2.8.1 Pengertian Sistem Sistem adalah kumpulan elemen-elemen yang berinteraksi untuk mencapai suatu tujuan tertentu. Sistem dilihat sebagai suatu konsep yang menyeluruh, bukan pada sub sistem. Sistem konsep ini mendorong adanya integrasi, kombinasi dari berbagai sub sistem. Dengan berintegrasinya sub sistem akan mendefinisikan proses dengan mengurangi pengulangan data yang tidak perlu, penyimpanan, laporan dan proses-proses lainnya. Suatu sistem adalah suatu jaringan kerja dari prosedur-prosedur yang saling berhubungan, berkumpul bersama-sama untuk melakukan suatu kegiatan atau untuk menyelesaikan suatu sasaran tertentu (Pendekatan prosedur-Jogiyanto, 1990). 17 Dalam sistem ada prosedur-prosedur yang tepat dari tahapan-tahapan intruksi yang menerangkan apa (What) yang harus dikerjakan, siapa (Who) yang mengerjakan, kapan (When) dikerjakan dan bagaimana (How) mengerjakan. 2 2.8.2 Elemen-elemen Sistem Elemen-elemen penyusun menurut Jogiyanto meliputi: a. Komponen sistem Komponen sistem berupa subsistem-subsistem yang mempunyai proses sistem secara keseluruhan. b. Batas sistem Batas sistem ini memungkinkan suatu sistem dipandang sebagai suatu kesatuan atau dengan kata lain merupakan daerah yang membatasi antara suatu sistem dengan sistem lainnya atau dengan lingkungan luarnya. c. Lingkungan luar sistem Sesutu diluar sistem yang dapat mempengaruhi jalannya sistem d. Masukan sistem Bagian sistem yang bertugas untuk menerima data masukan. e. Proses (pengolah sistem) Merupakan bagian sistem yang memproses segala data masukan menjadi data keluaran yang sesuai dengan dari penerima. f. Penghubung sistem 2 Jerry FitzGerald, Andra F.Gerald dan Warren D Stalling, JR, 1981. 18 Merupakan media penghubung antara satu subsistem dengan subsistem lainnya. Media ini memungkinkan sumber-sumber daya mengalir. g. Output (keluaran sistem) Merupakan keluaran atau hasil dari proses yang dilakukan. Output dapat berupa: - Laporan - Grafik h. Sasaran/Tujuan Suatu sistem pasti mempunyai sasaran tertentu dan dikatakan berhasil bila sistem itu mengenai sasaran. 2.8.3 Pengertian Informasi Robert G Murdick (1995) menjelaskan bahwa informasi terdiri dari data yang telah diambil kembali, diolah atau sebaiknya digunakan untuk tujuan informatif atau kesimpulan, argumentasi atau sebagai dasar untuk pelamaran dan pengambilan keputusan. Sedangkan menurut Raymon Mc Leod JR (1996) mendefinisikan informasi adalah data yang telah diproses atau data yang memiliki arti.3 Dari penjelasan tersebut dapat disimpulkan bahwa informasi adalah data, kenyataan yang menggambarkan suatu kejadian (event) dan kesatuan nyata (fact/entity) yang berupa suatu objek nyata, yang diolah atau diproses menjadi bentuk yang lebih berguna dan lebih berarti bagi yang menerimanya. 3 Raymon MC Leod JR. Sistem Informasi Manajemen Jilid I, hal. 18, PT Prenhallindo, Jakarta, 1996. 19 2.8.4 Pengertian Data Data adalah kumpulan kejadian yang diangkat dari suatu kenyataan. Data dapat berupa angka-angka, huruf-huruf atau simbol-simbol khusus atau gabungan darinya. Data mentah masih belum bisa digunakan sepenuhnya, sehingga perlu diolah lebih lanjut. 2.9 Pengertian Sistem Informasi System informasi didefinisikan oleh Robert A.Leitch dan K. Roscoe Davis sbb: System informasi adalah suatu sistem di dalam suatu organisasi yang mempertemukan kebutuhan pengolahan transaksi harian, mendukung operasi bersifat manajerial atau kegiatan strategi dari laporan-laporan yang diperlukan. Sistem informasi terdiri dari komponen-komponen yang disebut dengan istilah blok bangunan (Building block) a. Blok Model Blok ini terdiri dari kombinasi prosedur, logika dan Model matematika yang akan memanipulasi data ini dan data yang tersimpan dalam basis data dengan cara yang sudah ditentukan untuk menghasilkan keluaran yang diinginkan. b. Blok Masukan Input mewakili data yang masuk ke dalam sistem informasi. Input disini termasuk metode-metode dari media untuk menangkap data yang akan dimasukkan yang bisa berupa dokumen-dokumen dasar. 20 c. Blok Keluaran Produk dari sistem informasi adalah keluaran atau output yang merupakan informasi yang berkualitas dan dokumen yang berguna untuk semua tingkatan manajemen serta semua pemakai sistem. d. Blok Teknologi Teknologi merupakan kotak alat (toolbox) dalam sistem informasi. Teknologi digunakan untuk menerima input, menjalankan model penyimpanan, mengakses data, mengirim data dan menghasilkan keluaran serta membantu pengendalian dari sistem secara keseluruhan. Teknologi terdiri dari 3 bagian utama yang teknisi (humanware/grandware), perangkat lunak (software) dan perangkat keras (hardware) e. Blok Basis Data Basis Data (Database) merupakan kumpulan dari data yang saling berhubungan satu dengan yang lainnya. Tersimpan dalam perangkat keras (hardware) dan digunakan perangkat lunak (software) untuk memanipulasinya. f. Blok Kendali Pengendalian perlu dirancang dan diterapkan untuk meyakinkan bahwa halhal yang dapat merusak sistem dapat dicegah ataupun bila terlanjur terjadi kesalahankesalahan dapat langsung diatasi. 2.10 Operasi Data Untuk menyusun data dan mendatangkan hasil yang berarti, beberapa kombinasi operasi data dasar harus dilaksanakan. Menurut Burch dan Scaten ada 21 sepuluh operasi data yang menghasilkan keluaran penting dalam system informasi adalah sbb: 1. Penangkapan (Capturing) Operasi ini menunjukkan pencatatan data dari suatu peristiwa atau kejadian dalam bentuk formulir-formulir. 2. Pemeriksaan (Verifying) Operasi menunjukkan pengecekan atau pengesahan data untuk menjamin agar data tersebut dapat diperoleh dan dicatat secara cermat. 3. Penggolongan (Classifying) Operasi ini menempatkan unsur-unsur data dalam kategori-kategori khusus yang memberikan arti bagi pengguna. 4. Pengurutan (Sorting) Operasi ini menempatkan unsure-unsur data dalam suatu rangkaian khusus atau rangkaian yang telah ditentukan sebelumnya. 5. Peringkasan (Summarizing) Operasi ini menggabungkan atau mengumpulkan unsure-unsur data dalam suatu hasil. 6. Perhitungan (Calculating) Operasi ini memerlukan penanganan data secara ilmu hitung dan logika. 7. Penyimpanan (Storing) Operasi ini menempatkan data kedalam suatu media penyimpanan seperti kertas, microfilm dan sebagainya. 22 8. Pengambilan kembali (Retrieving) Operasi ini melakukan pencarian data dan menciptakan tambahan bagi unsure data khusus dari media tempat unsur data tersebut disimpan. 9. Reproduksi (Reproduction) Operasi ini memperbanyak data dari suatu media ke media yang lain atau kedalam kedudukan yang lain dalam media yang sama. 10. Penyebaran atau Pengkomunikasian (Disseminating-Communic) Operasi ini memindahkan data dari suatu tempat ke tempat lain. 2.11 Structured Query Language SQL adalah bahasa standar yang digunakan untuk memanipulasi dan memperoleh data dari sebuah database relasional. SQL membuat pemrograman dan seorang administrator database dapat melakukan hal-hal berikut: - mengubah struktur sebuah database - mengubah pengaturan keamanan system - memberikan hak akses kepada pengguna untuk mengakses database atau table - memperoleh informasi dari database - memutakhirkan isi database Perintah-perintah SQL dikelompokkan menjadi lima macam: 23 1. Data Definition Language (DDL) Adalah perintah SQL yang digunakan untuk menjelaskan objek dari database. Dengan kata lain DDL digunakan untuk mendefinisikan kerangka database. Perintahnya adalah: - create : untuk membuat objek database - alter : untuk memodifikasi database - drop : untuk menghapus objek database objek database yang dimaksud terdiri dari database, table, index dan view 2. Data Manipulation Language (DML) Adalah perintah yang digunakan untuk mengoperasikan atau memanipulasi isi database. SQL menyediakan 4 perintah DML: - select : digunakan untuk mengambil data dari database - delete : digunakan untuk menghapus data pada database - insert : untuk menambahkan data ke database - update : untuk memodifikasi data pada database 3. Security Adalah perintah-perintah untuk menjamin keamanaan data antara lain: - grant : memberi akses kepada user tertentu untuk akses ke database - revoke : mencabut hak akses dari user 4. Integrity adalah perinta-perintah yang digunakan untuk menjaga kesatuan data. Contoh : recover table: untuk memperbaiki table pada database. 24 5. Auxiliary adalah perintah-perintah pelengkap atau tambahan seperti : unload dan rename. 2.12 Akses Database dengan ADO Universal Data Access (UDA) adalah strategi Microsoft untuk menyediakan akses ke semua tipe informasi dari berbagai sumber data baik relational maupun Nonrelational seperti mainframe ISAM/VSAM, database hierarkial, e-mail, teks, dan data grafis. OLE database (OLE DB) adalah bagian dari Universal Data Access yang memungkinkan kita membaca dan memproses data dari manapun tanpa terlebih dahulu mengkonversi dan mengimpor ke dalam bentuk database tradisional. Menggunakan provider OLE DB, dapat memproses data dalam pesan e-mail, halaman HTML, spreadsheet dan dokumen teks, juga Microsoft Jet, SQL Server, FoxPro dan database Oracle. Active X Data Object (ADO) adalah antar muka level tinggi ke OLE DB atau dengan kata lain kita dapat berkomunikasi dengan OLE DB menggunakan ADO. Dengan Menggunakan ADO yang dihubungkan dengan OLE DB kita dapat “Berbicara” dengan data Access, Oracle, Server SQL, dan sumber data lainnya menggunakan model object ADO.4 4 Drs.Aryo Suryo Kusumo, Pemrograman Database dengan Visual Basic 6.0, hal.175, Jakarta, Penerbit PT Elex Media Komputindo, 2002. 25 Client Application ADO OLE DB ODBC Relation Data SQL Server Jet Oracle DB2 ISAM Database NonRelationData E-Mail Text Directory Service Mainframe Data Gambar 2.4 Bagan Alir Database Dari gambar 2.4 diatas bisa dilihat bagaimana suatu aplikasi meminta/mengirim data ke server/database. Suatu aplikasi menggunakan koneksi OLE DB untuk setiap koneksi. Untuk aplikasi multiuser digunakan tools ODBC agar bisa dilakukan ke komputer client. 26 2.13 Mengenal Visual Basic Ada jutaan pengembang perangkat lunak di seluruh dunia yang menggunakan Visual Basic untuk mengelola database. Mereka membuat program dari aplikasi desktop seperti buku alamat, sistem stok barang, penggajian sampai aplikasi clientserver, dan menempatkan informasi database di Internet. Microsoft Visual Basic adalah bahasa pemrograman yang digunakan untuk membuat aplikasi Windows yang berbasis grafis (GUI-Garphical User Interface). Visual Basic merupakan event-driven programming (pemrograman terkendali kejadian) artinya program menunggu sampai adanya respon dari pemakai berupa event atau kejadian tertentu (tombol diklik, menu dipilih, dan lain-lain). Ketika event terdeteksi, kode yang berhubungan dengan event (prosedur event) akan dijalankan. 2.13.1 Aplikasi Visual Basic Aplikasi (proyek) terdiri dari : Form adalah Windows/jendela dimana anda akan membuat user interface/tampilan. Kontrol/Control adalah Tampilan berbasis grafis yang dimasukkan pada form untuk membuat interaksi dengan pemakai (text box, label, scroll bar, tombol command). Form dan Control adalah objek. Properti adalah nilai yang dimiliki sebuah objek visual basic. Visual Basic menerapkan property standar, anda dapat mengubah property saat mendisain program atau saat program dijalankan. 27 Metode adalah serangkaian perintah yang sudah tersedia pada suatu objek yang dapat diminta untuk mengerjakan tugas khusus. Prosedur Kejadian adalah Kode yang berhubungan dengan suatu objek. Kode ini akan dieksekusi ketika ada respon dari pemakai berupa event tertentu. Prosedur Umum adalah kode yang tak berhubungan dengan suatu objek. Kode ini harus diminta oleh aplikasi. Modul atau Module adalah Kumpulan dari prosedur umum, deklarasi variable dan definisi konstanta yang digunakan oleh aplikasi. 2.14 Konsep Basis Data Database Manajement System (DBMS) berisi suatu koleksi data yang saling berelasi dari suatu set program untuk mengakses data tersebut. Dengan kata lain DBMS adalah kumpulan file yang saling berkaitan dengan program untuk mengelolanya. Jadi DBMS terdiri dari database dan set program pengelola untuk menambah data, menghapus data, mengambil dan membaca data.5 Basis Data adalah suatu kumpulan data terhubung (Interrelated data) yang disimpan secara bersama-sama pada suatu media, tanpa mengharap satu sama lain atau tidak perlu suatu kerangkapan data (Controlled redundancy) dengan cara-cara tertentu sehingga mudah untuk digunakan atau di tampilkan kembali.6 Basis data sendiri dapat didefinisikan dalam berbagai sudut pandang, seperti: 5 Harianto Kristanto, Konsep dan Perancangan Database, hal.1, Yogyakarta, Penerbit Andi, 1994. Edhy Susanto, Sistem Basis Data Konsep dan Perancangannya dalam Sistem Informasi Manajemen, hal.6, Yogyakarta, Penerbit Andi, 1996. 6 28 a. Himpunan kelompok data (arsip) yang saling berhubungan yang diorganisasi sedemikian rupa agar kelak dapat digunakan kembali. b. Kumpulan data yang saling berhubungan yang disimpan secara bersama sedemikian rupa dan tanpa pengulangan (redudansi) yang tidak perlu, untuk memenuhi berbagai kebutuhan. c. Kumpulan file/table/arsip yang saling berhubungan yang disimpan dalam media penyimpanan elektronik. Sistem basis data terdiri dari empat komponen, yaitu data, perangkat keras, perangkat lunak, dan brainware. Data merupakan sekumpulan fakta yang akan diolah menjadi informasi. Data ini akan dikumpulkan pada suatu media penyimpan dalam bentuk basis data. Perangkat Keras merupakan peranti computer yang digunakan untuk menyimpan dan memproses data yang telah disimpan. Perangkat Lunak merupakan program-program yang idgunakan untuk memberi perintah pada computer untuk mengerjakan sustu pekerjaan tertentu. Brainware merupakan orang yang berkepentingan dengan data serta hasil pengolahan data. Ketika database Multiuser menawarkan nilai tambah yang besar ke organisasi yang membuat dan menggunakannya, mereka juga merupakan masalah yang cukup sulit untuk organisasi yang sama. Kebutuhan akan system yang berubah setiap saat dan perubahan ini mengharuskan perubahan lain ke struktur database dan perubahan struktur harus dirancang dan dikontrol dengan hati-hati. 29 2.14.1 Kegunaan Basis Data Penyusunan suatu basis data dapat digunakan untuk mengatasi masalahmasalah pada penyusunan data, yaitu: a. Redudansi dan Inkonsistensi Data Penggunaan data pada berkas-berkas yang berbeda (Redudansi) serta tidak konsistennya data merupakan hal-hal yang perlu di hindari. Sehingga perlunya disusun suatu database. b. Kesulitan pengaksesan Data Apabila suatu data dibutuhkan untuk mencetak suatu daftar tertentu sementara belum tersedia program untuk menulis data-data pada daftar tersebut, maka terjadilah kesulitan dalam pengaksesan data, maka dalam hal ini perlu disusunnya database untuk memudahkan dalam pengaksesan data. c. Isolasi data untuk Standarisasi Seharusnya data dalam suatu database dibuat satu format sehingga mudah dibuat program aplikasinya. d. Masalah Keamanan (Security) Tidak semua pemakai system database diperbolehkan mengakses semua data, olek karena itu diperlukan keamanan suatu data. Keamanan ini dapat diatur lewat program yang dibuat oleh pemrogram. e. Masalah Kesatuan (Integrasi) Database berisi berkas-berkas yang saling berkaitan, masalah utama adalah bagaimana kaitan antara file tersebut terjadi atau bagaimana kesatuan dari berkas-berkas tersebut. 30 f. Masalah Kebebasan Data (Data Independence) Perubahan apapun dalam database sebaiknya dapat diatasi tanpa harus merubah program yang telah dibuat, inilah yang disebut kebebasan data. 2.14.2 Struktur Tabel Setiap table terdiri atas baris (row) dan kolom (Column). Baris sering disebut record atau tupple, kolom sering disebut field atau atribut. Setiap baris memuat suatu kesatuan. Jumlah baris sering disebut cardinality atau kardinalitas. Jumlah field sering disebut degree atau arity. Supaya data dapat diakses dengan lebih mudah dan cepat, maka data harus diurutkan berdasarkan suatu field tertentu. Field yang dijadikan dasar pengurutan tesebut disebut field kunci (key field). Ada beberapa kategori kunci : 1. Primary key (Kunci Utama), kunci utama yang dijadikan dasar pengurutan. 2. Secondary Key (Kunci Sekunder), kunci kedua yang dijadikan dasar pengurutan. 3. Foreign Key (Kunci Tamu), field yang dijadikan dasar hubungan dengan table lainnya. 4. Candidate Key (Kunci Kandidat), field yang mempunyai kemungkinan untuk dijadikan field kunci. Biasanya field yang dijadikan kunci adalah field yang datanya bersifat unik. Artinya tidak mungkin ada duplikasi. 31 2.14.3 Normalisasi Proses normalisasi merupakan proses pengelompokan elemen data menjadi table-tabel pada suatu basis data yang menunjukkan entitas serta relasi antar entitas tersebut. Pada umumnya, normalisasi dilaksanakan sampai dengan bentuk 3 (3NF). Bentuk tidak normal yaitu proses yang dilaksanakan hanya merupakan pengumpulan data (semua data). Semua data yang ada dicatat apa adanya. Bentuk Normal ke-1 (1NF) yaitu bentuk yang diambil dari bentuk tidak normal kemudian dicari atribut (field) pada dokumen dasar tersebut. Setelah itu dibuat format table dan kemudian data ditempatkan pada masing-masing kolom yang telah ditetapkan. Bentuk Normal ke-2 (2NF) yaitu bentuk yang didasari oleh 1NF, dicari atribut yang bisa mewakili suatu entitas. Atribut tersebut kemudian dijadikan kunci utama yang bersifat unik. 2.14.4 Entity Relationship Pemodelan data merupakan proses untuk merepresentasikan pandangan pengguna terhadap data. Bagian ini merupakan bagian yang penting dalam pengembangan aplikasi basis data. Salah satu pemodelan data adalah model E/R (Entity Relationship). Entity merupakan sesuatu yang bisa diidentifikasi dalam lingkungan kerja dari pengguna. Atribut mendeskripsikan karakteristik dari entitas yang bersangkutan. 32 Identifier merupakan atribut dari suatu entitas yang mewakili entitas tersebut, jadi bisa dikatakan bahwa identifier merupakan kunci. Relationship merupakan hubungan antar suatu entitas dengan entitas yang lain. Suatu relasi dapat mempunyai atribut. Suatu relasi dapat terdiri atas lebih dari dua entitas. Ada tiga kemungkinan relasi antar entitas : 1. One to One (1 : 1) Yaitu hubungan suatu entitas lawan satu entitas 2. One to Many (1 : M) Yaitu hubungan suatu entitas dengan banyak entitas 3. Many to Many (M : M) Yaitu hubungan banyak entitas lawan banyak entitas 2.14.5 Diagram Arus Data (DAD) Pada tahap analisis, Diagram Arus Data sering digunakan untuk menggambarkan suatu system yang telah ada atau system baru yang akan dikembangkan secara logika tanpa mempertimbangkan linkungan fisik dimana data tersebut mengalir atau lingkungan fisik dimana data tersebut disimpan. Diagram Arus Data (DAD) akan menjelaskan kepada pengguna bagaimana nantinya fungsi-fungsi pada system informasi secara logika bekerja. 33 Diagram Arus Data ini digambarkan dalam bentuk grafik yang dapat digunakan untuk menunjukkan urutan-urutan kegiatan dari system informasi berbasis computer. Ada beberapa symbol yang digunakan DAD yaitu:7 1. External Entity (kesatuan luar) yang disimbolkan dengan suatu notasi kotak. Kegiatan luar merupakan kesatuan dari lingkungan luar system yang akan memberikan input atau menerima output dari system. Contoh gambarnya adalah sebagai berikut : Symbol External Entity 2. Process (proses) disimbolkan dengan lingkaran atau persegi panjang tegak dengan setiap sudutnya tumpul. Suatu proses adalah kegiatan atau kerja yang dilakukan organisasi, mesin atau computer. Contoh gambarnya adalah sebagai berikut : atau symbol Process 3. Data Flow (arus data) yang dilambangkan dengan garis atau panah. Arus data ini menunjukkan arus data yang dapat berupa masukan atau hasil dari proses system. Contoh gambarnya adalah sebagai berikut : Simbol Data Flow 7 Desmiati (005410250). Penjualan Komputer Berbasis Web di D&P Komputer Yogyakarta, hal. 39. 2004 34 4. Data Store (penyimpanan data) disimbolkan dengan sepasang garis horizontal paralel. Simpanan data merupakan simpanan dari data yang dapat berupa file atau database, arsip atau catatan manual. Contoh gambarnya adalah sebagai berikut : Symbol Data Store 2.15 Perancangan Masukan Dalam perancangan masukan perlu dirancang bentuk dari dokumen dasar yang digunakan untuk menangkap kode input yaitu dengan menentukan kebutuhan input dari system baru dan menentukan parameter dari input. Tujuan dari perancangan masukan adalah mengefektifkan biaya pemasukan data dan untuk menjamin pemasukan data dapat diterima dan dimengerti oleh pemakai. Suatu perancangan masukan dapat digolongkan dalam dua tipe yaitu: 1. Masukan Intern, adalah masukan yang berasal dari dalam organisasi misalnya faktor penjualan, order penjualan dsb. 2. Masukan Ekstern, adalah masukan yang berasal dari luar organisasi, misalnya faktor pembelian, kuitansi-kuitansi dari luar organisasi. Sedangkan tahap-tahap dari proses pemasukan adalah sbb: 1. Tahap penangkapan data (data Capture) yaitu proses kejadian nyata yang terjadi akibat transaksi yang dilakukan organisasi kedalam dokumen dasar. 2. Tahap penyimpanan data (data Preparation) yaitu mengubah data yang ditangkap kedalam bentuk yang dapat dibaca oleh mesin. 3. Pemasukan data (data Entry) yaitu proses pemasukan data kedalam komputer. 35 2.16 Perancangan Keluaran Perancangan keluaran merupakan produk dari system informasi yang dapat dilihat. Keluaran dapat berupa hasil dari media keras maupun media lunak. Dapat berupa proses yang akan digunakan oleh proses lain dan tersimpan dari suatu media seperti tape, disk atau kartu. Tipe keluaran dibedakan menjadi: 1. Keluaran Internal, yaitu keluaran yag digunakan untuk mendukung kegiatan manajemen. 2. Keluaran Eksternal, yaitu keluaran yang didistribusikan kepada pihak luar yang membutuhkan. 3. Opertional, merupakan tujuan keluaran hanya untuk bagian komputer saja.