BAB 2 LANDASAN TEORI 2.1. Pengertian Data Menurut Dewitz (1996,p44) Data merupakan inti informasi. Data dibedakan menjadi 3 yaitu input data, stored data dan output data. Input data adalah setiap data yang dimasukkan ke dalam sistem. Stored data adalah data yang dipelihara dan disimpan didalam file, disk dan type. Sedangkan output data adalah setiap data yang dihasilkan oleh sebuah sistem informasi. 2.2. Pengertian Basis Data (Database) Menurut Connolly (2002,p14) Basis Data merupakan sekumpulan dari data yang saling berhubungan secara logis dan deskriptif, yang dirancang guna memenuhi kebutuhan informasi suatu organisasi. Database merupakan sebuah penyimpanan data besar yang dapat digunakan bersama-sama oleh banyak user dari banyak departemen. Menurut Date (2000,p5) Database adalah suatu sistem yang pada dasarnya menyimpan record record didalam suatu sistem secara komputerisasi yang tujuannya adalah membuat suatu kumpulan data yang saling terhubung. Database Management System (DBMS) menjadi program yang mengatur akses ke Basis Data (Database) yang juga memelihara dan menyediakan data ketika dibutuhkan. 2.2.1. Keuntungan dan Kerugian Basis Data Beberapa Keuntungan yang dimiliki Basis Data: 7
8 a. Integritas data Validitas dan konsistensi dari data yang disimpan merupakan integritas dari suatu data. b. Sharing data Seluruh data yang dimiliki perusahaan dapat dibagikan kepada seluruh pengguna dengan hak akses tertentu. c. Menghindari redudansi data Dengan Database, penyimpanan data dapat dikendalikan sehingga terhindar dari penumpukan data yang sama. d. Konsistensi data Dengan pengontrolan redudansi maka konsistensi data menjadi lebih terjaga. e. Keamanan lebih terjaga Data yang tersimpan memiliki pengontrolan terhadap hak akses sehingga lebih terjaga keamanannya. Beberapa Kerugian Basis Data : a. Kompleksitas Semakin besar dan banyak data yang tersimpan membuat file menjadi semakin kompleks. b. Biaya DBMS
9 Besar kecilnya biaya DBMS tergantung dari kepentingan dan fungsionalitas yang disediakan. c. Biaya penambahan Hardware Semakin banyaknya data yang disimpan maka dibutuhkan ruang penyimpanan (storage) yang lebih besar pula, ini menyebabkan biaya meningkatnya biaya Hardware. d. Biaya konversi Selain biaya DBMS dan biaya Hardware dibutuhkan juga biaya konversi untuk menjalankan DBMS, biaya tersebut termasuk biaya pelatihan bagi staff pengguna (user) dari DBMS tersebut. 2.3. Pengertian Database Management System (DBMS) Menurut Connolly (2002,p16) DBMS merupakan perangkat lunak yang memungkinkan penggunanya untuk mengatur serta mengontrol pengorganisasian data, penyimpanan dan pengaksesan data dalam database. DBMS merupakan perangkat lunak yang mengintegrasikan database dengan program aplikasi pengguna. 2.3.1. Komponen DBMS Beberapa komponen DBMS menurut Connolly (2002,p18): a. Perangkat keras (Hardware) DBMS dan aplikasi-aplikasinya memerlukan hardware untuk beroperasi. Hardware tersebut antara lain terdiri dari beberapa
10 PC (personal computer) yang terhubung ke satu mainframe yang terintegrasi dalam sebuah jaringan. b. Perangkat lunak (Software) Komponen Software terdiri dari DBMS berupa SQL Server 2008, dan aplikasi yang berjalan dengan operation system (OS) dengan bantuan jaringan. c. Data Komponen terpenting pada DBMS dan pemakai (end user) adalah data. Data digunakan sebagai jembatan antara hardware dan software dengan komponen manusia sebagai pengguna. d. Prosedur Prosedur menunjuk pada instruksi dan aturan yang mempengaruhi pendesainan dan penggunaan dari database. Prosedur digunakan oleh para pengguna sistem yang mengatur database sebagai arahan untuk menggunakan dan menjalankan sistem. Berikut beberapa instruksi prosedur: 1. Bagaimana cara memasuki DBMS 2. Bagaimana menggunakan fasilitas DBMS dan program aplikasi tertentu 3. Bagaimana memulai dan mengakhiri DBMS
11 4. Bagaimana membuat salinan dari database 5. Bagaimana mengatasi kesalahan (error) dari hardware dan software. 6. Bagaimana mengubah struktur table, mengorganisasi ulang redudansi data dan penyimpanan data pada second storage e. Manusia Orang-orang yang berhubungan dengan sistem antara lain : 1. Database designer 2 tipe database designer : a. Logical database designer : tugasnya berhubungan dengan mengidentifikasi data, relasi antar data dan batasan antar data dan batasan pada data yang disimpan di database b. Physical database designer : bertugas memutuskan bagaimana desain logical database direalisasikan. Hal ini termasuk pemilihan struktur penyimpanan yang spesifik dan metode akses data untuk mencapai performa yang baik dan mendesain aturan keamanan yang dibutuhkan oleh data. 2. Application developer
12 Setelah database diimplementasikan, program aplikasi yang menyediakan fungsi yang akan digunakan oleh end user juga harus diimplementasikan. Ini adalah tanggung jawab dari application developers. Application developer bekerja sesuai ketentuan yang diberikan oleh system analysis. 3. End user End User adalah pengguna yang sudah dilatih untuk menggunakan DBMS. Pemakai ini akan mengakses database menggunakan aplikasi khusus yang telah dibuat sesederhana mungkin dalam pengoperasiaannya. Mereka akan memasukkan data menggunakan pilihan menu yang telah tersedia, mereka sebagai pemakai tidak perlu secara khusus mengerti mengenai DBMS dan database. Pengguna berpengalaman adalah pengguna yang sudah mengerti akan struktur dari database dan fasilitas-fasilitas apa yang ada didalam DBMS. Dalam pengoperasiannya pengguna ini mungkin dapat menggunakan query secara langsung untuk memenuhi kebutuhannya. 2.3.2. Keuntungan dan Kerugian DBMS Keuntungan DBMS (Connoly,2002,p26): a. Pengaturan redudansi data b. Konsistensi data
13 c. Mendapat informasi lebih banyak dari data yang sama d. Sharing of data e. Menambah integritas data f. Keamanan data lebih baik g. Penetapan standarisasi h. Pengurangan biaya i. Keseimbangan dari selisih permintaan j. Memperbaiki pengaksesan dan tanggapan data k. meningkatkan produktifitas l. memperbaiki pemeliharaan melalui independensi data m. memperbaiki backup dan layanan perbaikan Kerugian DBMS (Connolly, 2002, p29): a. Kompleksitas b. Ukuran c. Biaya DBMS d. Biaya perangkat keras e. Biaya konversi f. Dampak yang lebih besar dari kegagalan 2.4. Database Language Menurut Connolly (2002,p40) data sublanguage terdiri dari dua bagian : data definition language (DDL) dan data manipulation language (DML). DDL
14 digunakan untuk menspesifikasikan skema database sedangkan DML digunakan untuk membaca dan mengupdate database. Bahasa ini disebut data sublanguage karena mereka tidak membangun semua kebutuhan pemrograman komputer seperti pertanyaan kondisi dan iteratif yang digunakan oleh bahasa pemrograman tingkat tinggi. 2.4.1. Data Definition Language (DDL) Data definition language menurut Connolly (2000,p40) adalah sebuah bahasa yang memperbolehkan DBA atau user untuk menjelaskan dan menamai entity, attribute dan relationship. DDL digunakan untuk mendefinisikan skema atau untuk memperbaharuinya tidak dapat digunakan untuk memanipulasi data. Hasil kompilasi DDL statement adalah satu set table yang disimpan dalam sebuah file khusus yang disebut sistem katalog. Sistem katalog mengintegrasikan metadata yaitu : data yang mendeskripsikan object dalam database dan memudahkan object-object tersebut untuk di akses atau dimanipulasi. 2.4.2. Data Manipulation Language (DML) Data definition language menurut Connolly (2000,p40) adalah sebuah bahasa yang menyediakan sekumpulan operasi untuk mendukung manipulasi data dasar pada data yang diperoleh dalam basis data. Operasi data manipulasi biasanya mencakup sebagai berikut : Memasukkan data baru ke dalam database (insertion) Memodifikasi data yang tersimpan di dalam database (modification)
15 Memperbaiki data yang terdapat dalam database (retrieval) Menghapus data dari database (deletion) DML dapat dibedakan menjadi 2 tipe : 1. Prosedural DML adalah bahasa yang memungkinkan user untuk memberitahukan sistem data apa yang dibutuhkan dan bagaimana memperbaiki data. Dengan ini user / programmer menspesifikasikan data apa yang dibutuhkan dan bagaimana mendapatkannya. 2. Nonprosedural DML adalah bahasa yang memungkinkan user untuk menentukan data apa yang dibutuhkan, bukan bagaimana untuk memperbaikinya. 2.5. State Transition Diagram Menurut G.Marakas (2006,p117) State Transition diagram menggambarkan bagaimana 2 buah proses atau lebih saling berhubungan dalam suatu waktu. Menurut Yourdon (1989,p259) State Transition Diagram merupakan suatu alat Bantu perancangan yang menggambarkan sifat ketergantungan waktu dalam sistem. Komponen utama yang digunakan dalam diagram transisi : a. System state (keadaan sistem)
16 State merupakam suatu kumpulan keadaan atau atribut yang mencirikan suatu benda pada waktu dan kondisi tertentu. State disimbolkan dengan gambar persegi panjang. Notasi sbb : b. Change of state (perubahan keadaan) Gambar 2.1 Simbol State Perubahan keadaan digambarkan dengan garis panah yang menghubungkan dua keaadan yang berkaitan. Notasi sbb: c. Condition and action (kondisi dan aksi) Gambar 2.2 Perpindahan state Untuk melengkapi State Transition Diagram diperlukan dua komponen tambahan, yaitu kondisi dan aksi. Kondisi merupakan penyebab suatu keadaan menjadi berubah, sedangkan aksi yang dilakukan oleh sistem apabila terjadi perubahan keadaan. Notasinya sbb :
17 Gambar 2.3 Kondisi dan aksi 2.6. Data Flow Diagram (DFD) Menurut G.Marakas (2006,p117) Data Flow Diagram (DFD) adalah sebuah gambaran grafis yang menggambarkan urutan dari proses-proses dan fungsifungsi yang terkandung didalam sebuah batasan spesifikasi sistem serta aliran data yang melewati sistem tersebut. Dengan menggunakan 4 simbol dasar, analis dapat menggambarkan aliran data, penampungan data, proses dan fungsinya serta pihak luar yang berinteraksi dengan sistem namun yang masih berada dalam batasan sistem. Simbol-simbol DFD: 1. Aliran data (Data Flow) Data flow digambarkan dengan panah yang menunjukkan arah aliran, bersamaan dengan penamaan isi datanya. Data flow dapat menggambarkan perpindahan aliran data dari berbagai bentuk. Arus data dapat digambarkan dengan arah panah, panah dapat berbentuk dari lurus atau lengkung. 2. Penyimpanan data (Data store) Gambar 2.4 Aliran data
18 Data store digambarkan sebagai tempat penyimpanan untuk data baik penyimpanan sementara maupun untuk penyimpanan tetap di dalam sistem. Penyimpanan data dapat digambarkan dengan dengan satu set garis paralel atau persegi empat terbuka. 3. Proses Gambar 2.5 Penyimpanan data Proses terjadi ketika sebuah data di transformasikan ke bentuk yang lain, biasanya proses digunakan untuk membuat data baru, atau untuk membuat sebuah output seperti laporan atau surat pengiriman barang. Gambar 2.6 Proses 4. Entity Entity adalah seseorang atau sesuatu yang berinteraksi dengan sistem tetapi berada di luar batasan sistem, maka dari itu, entity tersebut berada diluar pengawasan sistem. Entity memberikan informasi untuk input sistem dan juga menerima output dari sistem. Supplier
19 Gambar 2.7 Entity 2.7. Flowchart Diagram Flowchart dan Data Flow Diagram keduanya memiliki pendekatan yang sama yaitu pada sistem dokumentasi. Walaupun terlihat memiliki tujuan yang sama, namun keduanya berbeda satu sama lain dan tidak dapat digunakan bersamaan. 2.8. Normalisasi 2.8.1. Pengertian Normalisasi Normalisasi adalah sebuah teknik untuk memproduksi seperangkat hubungan dengan properti yang diinginkan, memberikan kebutuhan data dari sebuah perusahaan (Connolly,p376). Tujuan dari normalisasi adalah untuk mengidentifikasikan seperangkat relasi yang sesuai yang dapat mendukung kebutuhan data pada sebuah perusahaan. 2.8.2. Proses Normalisasi Normalisasi merupakan teknik formal untuk menganalisis relasi berdasarkan primary key (atau candidate key) dan fungsional dependency (Connolly,p386). Teknik ini meliputi adanya batasan batasan atau aturan aturan yang digunakan untuk menguji relasi yang ada, normalisasi database terdiri dari beberapa tingkat. Ada tiga susunan normalisasi yang biasa disebut sebagai Unnormalized Form (UNF), First Normal Form (1NF), Second Normal Form (2NF), dan Third Normal Form (3NF).
20 1. Unnormalized Form (UNF) Unnormalized Form adalah sebuah tabel yang mengandung satu atau lebih grup yang berulang. Unnormalized Form adalah bagian awal dari First Normal Form. 2. First Normal Form (1NF) First Normal Form adalah sebuah relasi dimana persimpangan antara baris dan kolomnya mengandung satu dan hanya satu nilai. 3. Second Normal Form (2NF) Second Normal Form adalah relasi yang ada di First Normal Form dan setiap atribut yang non primary key menjadi sepenuhnya bergantung pada fungsi dari primary key. 4. Third Normal form (3NF) Third Normal form adalah relasi yang ada pada First dan Second Normal form dan dimana atribut yang non primary key beralih menjadi dependent pada primary key.
21 2.9. Database Application Lifecycle Gambar 2.8 Lifecycle
22 Database lifecycle dibagi menjadi beberapa tahap (Connolly,p272) : 1. Database Planning Database planning adalah manajemen aktivitas yang memperbolehkan tingkat dari database system development lifecycle untuk diwujudkan secara efisien dan efektif (Connolly,p273) ada 3 kegiatan utama yang digunakan.yaitu : a. Mengidentifikasi rencana dan tujuan perusahaan dengan tujuan utama untuk memastikan keperluan sistem informasi. b. Mengevaluasi sistem informasi yang ada untuk mengetahui kekuatan dan kelemahannya. c. Menentukan IT yang dapat memberikan keuntungan yang kompetitif. 2. System definition System definition menjelaskan tentang lingkup dan batasan dari aplikasi database dan pandangan utama dari pengguna (Connolly,p274). 3. Requirements Collection and Analysis Requirements collection and analysis merupakan proses dari pengumpulan informasi tentang bagian dari organisasi yang didukung oleh sistem database, dan menggunakan informasi untuk mengidentifikasikan kebutuhan untuk sistem baru (Connolly,p276). 4. Database design
23 Database design adalah proses membuat desain yang dapat mendukung misi perusahaan dan misi objektif untuk sistem database yang dibutuhkan (Connolly,p279). Ada 3 fase dari database design yaitu : a. Conceptual database design Conceptual database design adalah proses pembuatan model dari data yang digunakan pada sebuah perusahaan, terpisah dari semua pertimbangan fisikal (Connolly,p281). b. Logical database design Logical database design adalah proses pembuatan model dari data yang digunakan pada perusahaan, berdasarkan data model tertentu, tetapi independen pada DBMS utama dan pertimbangan fisikal lainnya.(connolly,p281). c. Physical database design Physical database design adalah proses memproduksi sebuah deskripsi dari implementasi database pada penyimpanan kedua, mendeskripsikan relasi dasar, organisasi file, dan indeks yang digunakan untuk mencapai akses yang efisien kepada data, dan batasan integritas dan ukuran keamanan.(connolly,p282). 5. DBMS selection DBMS selection adalah pemilihan DBMS yang cocok untuk mendukung sistem basis data (Connolly,p284).
24 6. Application design Application design adalah desain dari tampilan pengguna dan program aplikasi yang menggunakan dan memproses basis data (Connolly,p287). 7. Prototyping Prototyping adalah membuat model yang bekerja pada sebuah sistem basis data (Connolly,p291). 8. Implementation Implementation adalah perwujudan fisik dari basis data dan desain aplikasi (Connolly,p292). 9. Data conversion and loading Data conversion and loading adalah memindahkan data yang ada ke basis data baru dan mengkonversikan aplikasi yang ada untuk dijalankan di database baru (Connolly,p292) 10.Testing Testing adalah proses menjalankan sistem basis data dengan tujuan mencari kesalahan yang ada (Connolly,p293). 11.Operational maintenance Operational maintenance adalah proses dari pengawasan dan penjagaan sistem basis data mengikuti instalasi (Connolly,p293).
25 2.10. Teori Teori Khusus 2.10.1. Pengertian Penjualan Menurut Mulyadi (2001, p202), sistem penjualan adalah sistem yang melibatkan sumber daya dalam suatu organisasi, prosedur, data serta sarana pendukung untuk mengoperasikan sistem penjualan sehingga menghasilkan informasi yang bermanfaat bagi pihak manajemen dalam pengambilan keputusan. 2.10.2. Pengertian Pembelian Menurut Mulyadi (2001, p299), sistem pembelian digunakan dalam perusahaan untuk pengadaan barang yang diperlukan oleh perusahaan. Fungsi pembelian pada sistem pembelian bertanggung jawab untuk memperoleh informasi mengenai harga barang, menentukan pemasok yang dipilih dalam pengadaan barang, dan mengeluarkan order pembelian kepada pemasok yang dipilih. 2.10.3 Pengertian Persediaan Menurut Mulyadi (2001, p18), sistem persediaan dirancang untuk menangani transaksi yang bersangkutan dengan mutasi persediaan yang disimpan di gudang. Persediaan barang pada perusahaan dagang adalah persediaan barang dagang yang dibeli dengan tujuan untuk dijual kembali.