Kasus dalam tulisan ini adalah: Merancang database relasional untuk menyimpan data stok barang - ini adalah ruang-lingkupnya (scope)

dokumen-dokumen yang mirip
Djoni Darmawikarta

Database desain juga termasuk diagram ER (Entity-hubungan model). Diagram ER adalah diagram yang membantu merancang database secara efektif dan

Djoni Darmawikarta

BAB IV DESKRIPSI PEKERJAAN. informasi dalam membuat Aplikasi Pemeliharaan Sarana (Pengadaan).

Djoni Darmawikarta

ANALISA RANCANGAN DATABASE

BAB IV PERANCANGAN SISTEM

Gambar 4.75 Form Menu Utama (b)

BAB IV DESKRIPSI PEKERJAAN. kertas. Pencatatan stok dilakukan dengan cara mengecek jumlah stok barang

Desain dan Pengembangan Sistem Informasi Akuntansi. Oleh : Teguh Wahyono

Contoh ERD sistem penjualan Barang Online

BAB IV ANALISIS DAN PERANCANGAN SISTEM. dilakukan dalam pengumpulan data tersebut, antara lain:

BAB 7 PENERAPAN BENTUK NORMALISASI

Prosedur Penggunaan Program Gambar 4.7 Halaman Home

Pembeli. Bag. Gudang. Bag. Keuangan. Supplier

PERANCANGAN DATABASE 04/07/ :53

MAKALAH PERANCANGAN BASIS DATA MODEL DATA. Disusun oleh: Ainun Aisyiyah Iman Safuad Ismi Fadhilah

Abstrak BAB I PENDAHULUAN

BAB IV DESKRIPSI PEKERJAAN. data, selanjutnya melakukan tahapan sebagai berikut: menyajikan suatu rancangan langkah kerja dari sistem yang baru.

BAB IV DESKRIPSI KERJA PRAKTEK. identifikasi masalah. Adapun penjelasannya sebagai berikut: beberapa cara yang telah dilakukan, antara lain:

INTERNET PROGRAMMING DATABASE

BAB III LANDASAN TEORI. 3.1 Pengertian Pengabdian kepada Masyarakat. kepada masyarakat adalah kegiatan yang mencakup upaya-upaya peningkatan

SISTEM BASIS DATA (Lanjutan) :

BAB IV ANALISIS DAN DESAIN SISTEM. perangkat keras, perangkat lunak, dan pengguna. Analisis ini diperlukan sebagai

Webtop, Memanfaatkan Sistem Operasi Berbasis Web

Pemodelan Database. Pengolahan Basis Data

BAB 4 RANCANGAN SISTEM YANG DIUSULKAN

BAB IV DESKRIPSI PEKERJAAN. barang terlebih dahulu, kemudian dicatat. Hasil dari catatan tersebut akan direkap

BAB III ANALISIS DAN DESAIN SISTEM

Kesalahan Perhitungan Aritmatika Pada Beberapa Program Kalkulator

BAB 1 PENDAHULUAN. atau di simpan di dalam gudang. Jika jumlah inventori terlalu sedikit dan

BAB IV DESKRIPSI PEKERJAAN. kertas. Pencatatan stok dilakukan dengan cara mengecek jumlah stok barang

BAB 1 PENDAHULUAN. pengaturan data secara cepat dan akurat, telah mengubah perpustakaan yang

BAB III ANALISIS DAN PERANCANGAN

BAB IV DESKRIPSI KERJA PRAKTEK

Sofiyan Arif Kurniawan

SISTEM BASIS DATA. Pertemuan 4. 3 SKS Semester 2 S1 Sistem Informasi Nizar Rabbi Radliya

BAB III ANALISA DAN DESAIN SISTEM

Teknik Informatika. Bab III: Perancangan BasisData

BAB IV ANALISIS DAN PERANCANGAN SISTEM. Berikut ini adalah analisis dokumen yang digunakan di bagian penjualan pada

BAB 2 LANDASAN TEORI. pengolahan data, pengolahan gambar, pengolahan angka, dan lainnya.

Oleh : Rahmady Liyantanto

Perancangan Basis Data

BAB 2 LANDASAN TEORI

Mengganti Password Akun Windows lewat CMD

BAB III ANALISIS DAN DESAIN SISTEM

Database dan DBMS DBMS adalah perangkat lunak sistem yang memungkinkan para pemakai membuat, memelihara, mengontrol, dan mengakses basis data dengan

Gambar 4.72 Layar Login User

BAB III LANDASAN TEORI. Flippo (1984) mendefinisikan sebagai berikut: Penarikan calon pegawai

PERANCANGAN BASIS DATA

MODEL ANALISA. Untuk Memenuhi Tugas Mata Kuliah Rekayasa Perangkat Lunak. Dosen Pembimbing : Wachyu Hari Haji, S.Kom, MM.

BAB III ANALISIS DAN PERANCANGAN

BAB IV PERANCANGAN SISTEM. Perancangan ini dibuat untuk ditunjukkan kepada user, programmer, atau ahli

BAB 7 MERANCANG BASIS DATA

BAB III LANDASAN TEORI. organisasi yang merupakan kombinasi dari orang-orang, fasilitas, teknologi,

Basis Data. Roni Andarsyah, ST., M.Kom Lecture Series

Membuat Daftar bersama pada Spreadsheet Google Drive

Rancangan Database. Database. File. Record. Data item atau field. Characters

BAB 5 DATA RESOURCE MANAGEMENT

Hubungan antara file pertama dan file kedua adalah satu berbanding satu.

BAB IV HASIL PRAKTEK DAN ANALISIS. Proses perhitungan jumlah PPA pada bagian Public Affairs and Communications

BAB III ANALISIS DAN PERANCANGAN SISTEM. Tahap analisis sistem merupakansuatu proses untuk menganalisis dan

BAB III ANALISA DAN DESAIN SISTEM

ANALISA & PERANCANGAN SISTEM

Praktikum Basis Data 2. BAB 1 : Pendahuluan

BAB II TINJAUAN PUSTAKA DAN DASAR TEORI. berhubungan dengan obyek penelitian terutama dari penelitian-penelitian

BAB III ANALISIS DAN PERANCANGAN

BAB IV ANALISIS DAN PERANCANGAN SISTEM. Analisis sistem merupakan penguraian dari suatu sistem informasi yang

BAB III OBJEK DAN METODE PENELITIAN. yaitu di BORASPATI BANDUNG, Jl. Sukamantri no. 109 Bandung, adapun

BAB III ANALISIS DAN DESAIN SISTEM

BAB IV ANALISIS DAN PERANCANGAN SISTEM. Analisis sistem merupakan penguraian dari suatu sistem informasi yang

Endi Dwi Kristianto

BAB III ANALISA DAN DESAIN

Modul Praktikum Basis Data 4 Relasi Table

BAB III ANALISIS DAN DESAIN SISTEM

BAB IV DESAIN DAN IMPLEMENTASI SISTEM. menjelaskan siapa pengguna (user) sistem, apa saja yang akan dilakukan oleh

ANALISA RANCANGAN NORMALISASI & DATABASE

[Data Warehouse] [6/C2 & 6/D2]

BAB II. 2.1 Model Data High Level Data Model (Conceptual Data Model)

BAB IV PERANCANGAN SISTEM

BAB IV ANALISIS DAN DESAIN SISTEM

Mendesain Template Presentasi lewat MASTER SLIDE pada Microsoft PowerPoint 2010

Yama Fresdian Dwi Saputro Pendahuluan

BASIS DATA. Model Data Relational. Fakultas Ilmu Komputer UDINUS

NORMALISASI DATA POKOK BAHASAN. Pendahuluan

Pertemuan Transformasi ER-MODEL INDIKATOR. 1. Memahami ER model 2. Menerapkan transformasi ER- Model ke Model Relasional.

Instalasi CMS Joomla di Web Hosting

6.2 Pendekatan Database Untuk Pengelolaan Data

Relational Database & Pemodelan Data [Review]

Model Relational. Dian Dharmayanti

BAB VI KESIMPULAN DAN SARAN 6.1 Kesimpulan... VI Saran... VI-1 DAFTAR PUSTAKA LAMPIRAN A TAMPILAN LAYAR LAMPIRAN B LISTING PROGRAM

BAB IV PERANCANGAN SISTEM

BAB III ANALISIS DAN PERANCANGAN SISTEM. Pada bab ini dibahas tentang identifikasi permasalahan, analisis

3 Cara Belajar HTML, PHP dan MySQL. Nama Penulis Lisensi Dokumen:

Tabel dan Key dalam Database Tipe data dan Karakter pada Database. Author : Minarni, S.Kom.,MM

Riyanto

BAB IV ANALISIS DAN PERANCANGAN SISTEM. untuk mengetahui lebih jelas bagaimana cara kerja sistem tersebut dan masalah

Proses normalisasi model data dapat diringkas sebagai berikut: 3. Tentukan atribut yang dimiliki masing-masing entitas.

BAB III ANALISA DAN PERANCANGAN

Bima Adisetya Pendahuluan

Transkripsi:

Cara Praktis Merancang Database Djoni Darmawikarta djoni_darmawikarta@yahoo.ca Lisensi Dokumen: Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial (nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari IlmuKomputer.Com. Latar Belakang Ide tulisan ini berasal dari milis Ilmukomputer.com yang mendiskusikan bagaimana merancang database. Cara praktis dalam tulisan ini tidak menggunakan teknik normalisasi secara eksplisit atau formal, melainkan berdasar pengalaman penulis merancang berpuluh database berbagai ukuran dan kompleksitas, mulai dari yang modelnya memiliki kurang dari 25 tabel sampai dengan yang memiliki lebih dari 250 tabel. Database tersebut untuk berbagai macam sistem dan aplikasi, baik batch di mainframe, client/server, web-based, business oriented maupun real-time control system. One Step at A Time Kasus dalam tulisan ini adalah: Merancang database relasional untuk menyimpan data stok barang - ini adalah ruang-lingkupnya (scope) Dari spesifikasi yang sudah diperoleh dari pemakai (business user), kita ketahui bahwa yang dimaksud dengan stok barang adalah jumlah tersedia (quantity on hand) untuk setiap barang. Maka kita membutuhkan tabel stok_barang terdiri dari 2 kolom. Beberapa baris datanya sebagai berikut. nama_barang Barang A 100 Barang B 150 Barang C 175 Barang D 250 jumlah_tersedia 1

Perhatikan bahwa setiap barang hanya memiliki satu jumlah_tesedia. Dengan kata lain, nama barang unik didalam tabel stok_barang. Spesifikasi juga meminta rancangan database kita untuk menangani transaksi pembelian dan penjualan barang, dan dampaknya pada stok barang. Tepatnya, bila ada barang masuk (pembelian) dan/atau keluar (penjualan), jumlah_tersedia perlu dimutakhirkan (update). Ada dua pilihan cara melaksanakannya: 1. Jumlah barang masuk/keluar langsung ditambah/kurang-kan pada kolom jumlah_tersedia (update in place). Cara ini umumnya disebut sistem online. Data transaksi keluar/masuk barang disimpan, misalnya untuk keperluan audit atau rekonstruksi tabel stok_barang. 2. Data transaksi barang masuk dikumpulkan, setelah waktu tertentu, misalnya akhir hari, barulah diperhitungkan ke jumlah_tersedia. Cara ini disebut sistem batch. Maka, untuk cara yang manapun dari kedua diatas, dibutuhkan satu tabel lagi untuk menyimpan data transaksi, misalnya sebagai berikut. nama_barang jumlah masuk/keluar tanggal Barang A 1 m 2-Jan-04 Barang A 10 k 5-Jan-04 Barang B 5 k 10-Jan-04 Agar nama barang dikedua tabel sinkron, maksudnya semua nama barang ditabel transaksi_stok harus ada ditabel stok_barang, maka kedua tabel kita hubungkan: nama_barang ditabel stok_barang kita migrasikan ketabel transaksi_stok. Dengan kata lain, nama_barang ditabel transaksi_stok adalah foreign key dengan referensi nama_barang ditabel stok_barang. Diagram ER (Entity Relationship) model data sebagai berikut. 2

Perhatikan bahwa pada transaksi_stok, nama_barang dan tanggal adalah (composite) primary key. Ini berarti dalam satu hari (tanggal) untuk suatu barang hanya boleh ada satu transaksi. Lebih lanjut, spesifikasi menyatakan bahwa, ada beberapa gudang, dan suatu barang mungkin stoknya disimpan dibeberapa gudang (dan suatu gudang bisa menyimpan lebih dari satu barang) Maka perlu ditambahkan data gudang. Struktur tabel kita menjadi sebagai berikut. nama_barang gudang jumlah_tersedia Barang A Gudang 1 100 Barang A Gudang 2 10 Barang B Gudang 1 150 Barang C Gudang 2 175 Barang C Gudang 3 20 Barang D Gudang 3 250 Perhatikan bahwa setiap barang disuatu gudang hanya memiliki satu jumlah_tesedia. Dengan kata lain, nama_barang bersama gudang-nya unik didalam tabel stok_barang. Kini primary key tabel ini adalah nama_barang dan gudang. Dan, model data menjadi: Karena oleh pemakai setiap barang sudah terbiasa diberi kode, maka dalam database kode barang juga diinginkan, selain namanya. Pemakai juga memastikan didalam spesifikasi, bahwa kode barang tidak pernah berubah, sedang nama barang kadang perlu diubah, maka kita gunakan kode_barang sebagai primary key. Berkembanglah model data kita menjadi: 3

Contoh isi tabel stok_barang sekarang adalah: kode_barang nama_barang gudang jumlah_tersedia A01 Barang A Gudang 1 100 A01 Barang A Gudang 2 10 B01 Barang B Gudang 1 150 C01 Barang C Gudang 2 175 C01 Barang C Gudang 3 20 D01 Barang D Gudang 3 250 Dapat dilihat, nama barang ikut diulang bersama kode barangnya. Akibatnya, bila ada perubahan nama, semua baris data barang bersangkutan harus seragam ikut dirubah dan barang ditabel ini sudah diwakili oleh kode_barang. Ini berbahayakan integritas data; maka sebaiknya dipisahkan, sebagai berikut. 4

Ringkasan Laksanakan langkah-langkah demi langkah, jangan sekaligus menganalisa dan merancang semua data dalam spesifikasi. 1. Mulai dengan minimal, satu tabel, berdasar makna fungsi yang dibutuhkan. Dalam contoh kita, makna stok barang adalah quantity on hand untuk setiap barang. 2. Kembangkan struktur dari tabel ini, dengan makin menyertakan detil spesifikasi. Dalam contoh kita, quantity on hand disetiap gudang maka perlu ditambahkan field gudang. Demikian juga dengan penambahan kode_barang. 3. Bila ada duplikat data (data sama di lebih dari satu baris) dan sudah ada wakilnya pisahkanlah ditabel lain yang dihubungkan dengan tabel asalnya. 4. Fungsi berbeda biasanya memerlukan tabel terpisah; dalam contoh kita, fungsi transaksi stok. Kita perlu tabel untuk menyimpan transaksi. Hubungkan dengan tabel utama (umumnya disebut master dalam system batch) agar data terkait dikedua tabel sinkron (integritas terjaga) Makin besar dan rumit database yang harus kita rancang, teknik praktis ini makin lebih terbukti efektivitasnya, dibandingkan dengan menggunakan teknik normalisasi secara formal. 5