2. Perancangan basis data Logikal. 3. Perancangan basis data Fisikal.
1. Perancangan Basis Data Konseptual
Perancangan basis data konseptual merupakan proses pembuatan model data konseptual menggunakan hasil analisis transaksi dan pengumpulan persyaratan aplikasi yang telah dilakukan sebelumnya. Langkah–langkah penting dalam merancang basis data konseptual adalah:
a. Mengidentifikasi tipe entity.
Tabel 3.1 Identifikasi Tipe Entity
Nama
Entitas Deskripsi Alias Keterangan
Barang Merupakan entitas yang berisi informasi jenis barang perusahaan produk
Setiap barang dapat dimiliki oleh banyak pembelian dan penjualan
Customer Merupakan entitas yang berisi informasi konsumen pada perusahaan konsumen Setiap konsumen dapat melakukan satu atau banyak transaksi pembelian dan penjualan Petugas Merupakan entitas yang berisi informasi petugas pada perusahaan staf Setiap petugas menangani nol atau banyak transaksi pembelian, penjualan dan persediaan. Supplier Merupakan entitas yang berisi informasi supplier pada perusahaan Setiap supplier
memiliki satu supplier id Penjualan Merupakan entitas yang berisi informasi penjualan barang perusahaan salesorder
Setiap penjualan oleh customer diatur oleh satu petugas. Setiap penjualan melatarbelakangi satu pengeluaran. Pembelian Merupakan entitas yang berisi informasi purchaseorder Setiap pembelian barang oleh perusahaan ke
pembelian barang pada supplier
supplier diatur oleh satu petugas. Setiap pembelian melatarbelakangi satu penerimaan. Penerimaan Merupakan entitas yang berisi informasi penerimaan barang dari supplier Segala penerimaan barang dari pemasok
Pengeluaran Merupakan entitas yang berisi informasi pengeluaran barang kepada customer deliveryorder Setiap pengeluaran dilatarbelakangi oleh satu penjualan. Setiap pengeluaran mengirim satu atau banyak barang. Permintaan Merupakan entitas yang berisi informasi permintaan barang pesanan customer Setiap permintaan dilatarbelakangi oleh satu penjualan. Setiap permintaan mengirim satu atau banyak barang.
b. Mengidentifikasi tipe relasi atau hubungan.
Langkah ini bertujuan untuk mengidentifikasikan hubungan yang terjadi antara tipe entitas yang ada. Terdapat dua langkah penting yang dilakukan untuk menentukan tipe relasi, yaitu pertama menentukan batasan multiplicity dari relasi seperti yang terlihat pada Tabel 3.2 yang kedua membuat entity relationship diagram seperti yang terlihat pada Tabel 3.2
Tabel 3.2 Tipe Relasi
Nama Entitas Multiplicity Relasi Nama Entitas Multiplicity
Barang 1..* Memiliki Penjualan 1..*
Pembelian 1..* Menghasilkan Barang 1..*
Petugas 1..1 Melakukan Pembelian 1..*
Petugas 1..1 Menangani Penjualan 1..*
Petugas 1..1 Menangani ReturPenjualan 1..*
Customer 1..1 Menyebabkan Penjualan 1..*
Customer 1..1 Melakukan ReturPenjualan 1..* Penjualan yang berisi
informasi rincian retur penjualan
barang
mengenai barang yang diretur dari pelanggan.
Penjualan 1..1 Memiliki ReturPenjualan 0..1
Penerimaan 1..* Menerima Supplier 1..1
Penerimaan 1..* Menerima Barang 1..*
Pengeluaran 1..1 Melatarbelakangi Penjualan 1..1
Pengeluaran 1..* Mengirim Barang 1..*
Permintaan 1..1 Melatarbelakangi Penjualan 1..1
Permintaan 1..* Mengirim Barang 1..*
c. Mengidentifikasi dan Menghubungkan Atribut dengan Tipe Entity (Relationship).
Tujuannya adalah untuk mengidentifikasi atribut setiap entiti yang ada. Nulls value adalah atribut yang tidak mempunyai nilai dan tidak diketahui harganya. Multi values attribute adalah atribut yang mempunyai beberapa nilai pada setiap entitas.
Tabel 3.3 Kamus Data Atribut Entitas Barang
Atribut Deskripsi
Tipe data dan panjang data
Nulls
Multi Values Kode_Barang kode unik untuk setiap barang Varchar (20) No No Nama_Barang nama dari setiap barang Varchar (50) No No Harga_Beli harga beli dari setiap barang Integer No No Harga_Jual harga jual dari setiap barang Integer No No Jumlah_Barang jumlah barang yang tersedia Integer No No
Satuan jenis satuan barang Varchar (10) No No
Tabel 3.4 Kamus Data Atribut Entitas Customer
Atribut Deskripsi
Tipe data dan panjang data
Nulls
Multi Values KodeCus kode unik untuk setiap customer Varchar (20) No No NamaCus nama lengkap dari setiap customer Varchar (30) No No AlamatCus alamat lengkap dari setiap customer Varchar (50) No No TeleponCus telepon lengkap dari setiap customer Varchar (20) No Yes PersonCus person dari setiap customer Varchar (30) No No EmailCus email lengkap dari setiap customer Varchar (30) No No
Tabel 3.5 Kamus Data Atribut Entitas Petugas
Atribut Deskripsi
Tipe data dan panjang data
Nulls
Multi Values Kode kode petugas untuk login Varchar (20) No No Nama nama lengkap dari setiap petugas Varchar (30) No No Password kode sandi untuk memasukan sandi Varchar (10) No No Status jabatan dari setiap petugas Varchar (20) No No
Tabel 3.6 Kamus Data Atribut Entitas Supplier
Atribut Deskripsi
Tipe data dan panjang data
Nulls
Multi Values KodeSpl kode unik untuk setiap supplier Varchar (20) No No NamaSpl nama lengkap dari setiap supplier Varchar (30) No No AlamatSpl alamat lengkap dari setiap supplier Varchar (50) No No TeleponSpl telepon lengkap dari setiap supplier Varchar (30) No Yes PersonSpl person dari setiap supplier Varchar (30) No No EmailSPl email lengkap dari setiap supplier Varchar (30) No No
Tabel 3.7 Kamus Data Atribut Entitas Pembelian
Atribut Deskripsi
Tipe data dan panjang data
Nulls
Multi Values Faktur mengidentifikasi pembelian secara unik Varchar (20) No No
Item jumlah barang yang dibeli Integer No No
Total jumlah pembayaran barang yang dibeli Integer No No Dibayar pembayaran saat pembelian Integer No No Kembali uang kembali saat pembelian Integer Yes No
Tabel 3.8 Kamus Data Atribut Entitas Penjualan
Atribut Deskripsi
Tipe data dan panjang data
Nulls
Multi Values Faktur mengidentifikasi penjualan secara unik Varchar (20) No No
Item jumlah barang yang dijual Integer No No
Total jumlah pembayaran barang yang dijual Integer No No Dibayar pembayaran saat penjualan Integer No No Kembali uang kembali saat penjualan Integer Yes No
Tanggal tanggal saat penjualan Datetime No No
Tabel 3.9 Kamus Data Atribut Entitas Penerimaan
Atribut Deskripsi
Tipe data dan panjang data
Nulls
Multi Values KodeTrm mengidentifikasi penerimaan secara unik Varchar (20) No No NomorBon nomor refisi untuk penerimaan barang Varchar (10) No No TotalTrm jumlah barang yang diterima Integer No No TanggalTrm tanggal saat penerimaan barang Datetime No No
Tabel 3.10 Kamus Data Atribut Entitas Pengeluaran
Atribut Deskripsi
Tipe data dan panjang data
Nulls
Multi Values KodeKlr mengidentifikasi pengeluaran secara unik Varchar (20) No No NomorBon nomor refisi untuk pengeluaran barang Varchar (10) No No TotalMnt jumlah barang yang diminta Integer No No TotalKrm jumlah barang yang dikirim Integer No No KetKirim informasi pengiriman barang Varchar (30) No No TanggalKlr tanggal saat pengeluaran barang Datetime No No
Tabel 3.11 Kamus Data Atribut Entitas Permintaan
Atribut Deskripsi
Tipe data dan panjang data
Nulls
Multi Values KodeMnt mengidentifikasi permintaan secara unik Varchar (20) No No NomorBon nomor refisi untuk permintaan barang Varchar (10) No No TotalMnt jumlah barang yang diminta Integer No No TotalKrm jumlah barang yang dikirim Integer No No KetKirim informasi pengiriman barang Varchar (30) No No TanggalMnt tanggal saat permintaan barang Datetime No No
Tabel 3.12 Kamus Data Atribut Entitas Retur Penjualan
Atribut Deskripsi
Tipe data dan panjang data
Nulls
Multi Values FakturPenjualan mengidentifikasi retur yang ada Varchar (20) No No Tanggal Tanggal dari retur yang terjadi Datetime No No
Item jumlah barang yang diretur Integer No No
Total Total dari jumlah retur Integer No No
Kode Mengidentifikasi petugas yang bertugas Varchar (20) No No
d. Menentukan Atribut Domain
Tabel 3.13 Menentukan Domain Atribut
Nama Domain Atribut Domain Atribut
Kode Petugas Kode
Terdiri dari 5 karakter dengan tipe Char, dengan cara penulisan :
3 karakter pertama diisi dengan kode PTG
2 karakter terakhir menunjukkan urutan masuk petugas.
contoh kode petugas :
PTG01, artinya petugas merupakan orang per - 1 masuk
Nama Petugas Nama
String, karena data berupa huruf yang diisi dengan maksimal 30 karakter
Contoh : a-z, A-Z
Password
Petugas Password
String, karena data berupa huruf yang diisi dengan maksimal 10 karakter
Contoh : a-z, A-Z
Status Petugas Status
String, karena data berupa huruf yang diisi dengan maksimal 20 karakter
Contoh : a-z, A-Z
Kode Barang Kode_Barang
Terdiri dari 4 karakter dengan tipe Char, dengan cara penulisan :
• 2 karakter pertama diisi dengan kode KB
• 2 `karakter terakhir menunjukkan urutan barang.
Contoh kode barang :
KB01
Nama Barang Nama_Barang
String, karena data berupa huruf yang diisi dengan maksimal 50 karakter
Contoh : a-z, A-Z
Harga Beli Harga_Beli String yang berisi digit angka 0-9 Harga Jual Harga_Jual String yang berisi digit angka 0-9 Jumlah Barang Jumlah_Barang String yang berisi digit angka 0-9
maksimal 10 karakter Contoh : a-z, A-Z
Stock Minimal StockMinimal String yang berisi digit angka 0-9
Kode Customer KodeCus
Terdiri dari 4 karakter dengan tipe Char, dengan cara penulisan :
• 2 karakter pertama diisi dengan kode CS
• 2 karakter terakhir menunjukkan urutan customer.
Contoh kode customer :
CS01
Nama
Customer NamaCus
String, karena data berupa huruf yang diisi dengan maksimal 30 karakter
Contoh : a-z, A-Z Alamat
Customer AlamatCus Diisi dengan karakter maksimal 50 karakter Telepon
Customer TeleponCus Diisi dengan karakter maksimal 20 karakter Person
Customer PersonCus Diisi dengan karakter maksimal 30 karakter Email
Customer EmailCus Diisi dengan karakter maksimal 30 karakter
Kode Supplier KodeSpl
Terdiri dari 4 karakter dengan tipe Char, dengan cara penulisan :
• 2 karakter pertama diisi dengan kode SP
• 2 karakter terakhir menunjukkan urutan supplier.
Contoh kode supplier :
SP01
Nama Supplier NamaSpl
String, karena data berupa huruf yang diisi dengan maksimal 30 karakter
Contoh : a-z, A-Z Alamat
Supplier AlamatSpl Diisi dengan karakter maksimal 50 karakter
Telepon
Supplier TeleponSpl Diisi dengan karakter maksimal 30 karakter Person
Supplier PersonSpl Diisi dengan karakter maksimal 30 karakter Email Supplier EmailSpl Diisi dengan karakter maksimal 30 karakter Faktur
Pembelian Faktur_Pembelian
Terdiri dari 10 karakter dengan tipe Char, dengan cara penulisan :
• 2 karakter pertama diisi dengan tahun (0001…9999).
• 2 karakter kedua diisi dengan bulan (01-12).
(01-31).
• 4 karakter terakhir menunjukkan kode transaksi pembelian
Contoh faktur pembelian :
1210140001
Item Item String yang berisi digit angka 0-9 Total Total String yang berisi digit angka 0-9 Dibayar Dibayar String yang berisi digit angka 0-9 Kembali Kembali String yang berisi digit angka 0-9 Tanggal Tanggal Tanggal dengan format
Faktur
Penjualan Faktur_Penjualan
Terdiri dari 10 karakter dengan tipe Char, dengan cara penulisan :
2 karakter pertama diisi dengan tahun (0001…9999).
2 karakter kedua diisi dengan bulan (01-12). 2 karakter ketiga diisi dengan tanggal (01-31).
4 karakter terakhir menunjukkan kode transaksi penjualan
contoh faktur penjualan :
1210140001
Item Item String yang berisi digit angka 0-9
Dibayar Dibayar String yang berisi digit angka 0-9 Kembali Kembali String yang berisi digit angka 0-9 Tanggal Tanggal Tanggal dengan format
Kode Terima KodeTrm
Terdiri dari 10 karakter dengan tipe Char, dengan cara penulisan :
• 2 karakter pertama diisi dengan kode TR
• 2 karakter kedua diisi dengan tahun (0001-9999).
• 2 karakter ketiga diisi dengan bulan (01-12).
• 3 karakter keempat diisi dengan tanggal (01-31).
• 2 karakter terakhir menunjukkan kode transaksi penerimaan
Contoh kode terima :
TR12101401
Nomor Bon NomorBon String yang berisi digit angka 0-9 Total Terima TotalTrm String yang berisi digit angka 0-9 Tanggal
Terima TanggalTrm Tanggal dengan format
Kode Keluar KodeKlr
Terdiri dari 10 karakter dengan tipe Char, dengan cara penulisan :
• 2 karakter kedua diisi dengan tahun (0001-9999).
• 2 karakter ketiga diisi dengan bulan (01-12).
• 3 karakter keempat diisi dengan tanggal (01-31).
• 2 karakter terakhir menunjukkan kode transaksi pengeluaran
Contoh kode pengeluaran :
KL12101401
Nomor Bon NomorBon String yang berisi digit angka 0 - 9 Total Minta TotalMnt String yang berisi digit angka 0 - 9 Total Kirim TotalKrm String yang berisi digit angka 0 - 10
Keterangan
Kirim KetKirim
String, karena data berupa huruf yang diisi dengan maksimal 30 karakter
Contoh : a-z, A-Z Tanggal Keluar TanggalKlr Tanggal dengan format
Kode Minta KodeMnt
Terdiri dari 10 karakter dengan tipe Char, dengan cara penulisan :
• 2 karakter pertama diisi dengan kode MT
• 2 karakter kedua diisi dengan tahun (0001-9999).
• 2 karakter ketiga diisi dengan bulan (01-12).
• 3 karakter keempat diisi dengan tanggal (01-31).
• 2 karakter terakhir menunjukkan kode transaksi permintaan
Contoh kode minta :
MT12101401
Nomor Bon NomorBon String yang berisi digit angka 0-9 Total Minta TotalMnt String yang berisi digit angka 0-9 Total Kirim TotalKrm String yang berisi digit angka 0-10
Keterangan
Kirim KetKirim
String, karena data berupa huruf yang diisi dengan maksimal 30 karakter
Contoh : a-z, A-Z Tanggal Minta TanggalMnt Tanggal dengan format
Retur Penjualan
Faktur_Penjualan
Terdiri dari 10 karakter dengan tipe Char, dengan cara penulisan :
2 karakter pertama diisi dengan tahun (0001…9999).
2 karakter kedua diisi dengan bulan (01-12). 2 karakter ketiga diisi dengan tanggal (01-31). 4 karakter terakhir menunjukkan kode transaksi penjualan
contoh faktur penjualan : 1210140001
Tanggal Retur Tanggal
Tanggal dengan format Jumlah Retur Item
String yang berisi digit angka 0-9 Total Retur Total
String yang berisi digit angka 0-9
Kode Pegawai
Kode
Terdiri dari 5 karakter dengan tipe Char, dengan cara penulisan :
3 karakter pertama diisi dengan kode PTG 2 karakter terakhir menunjukkan urutan masuk petugas.
contoh kode petugas :
PTG01, artinya petugas merupakan orang per - 1 masuk
e. Menentukan Atribut Candidate Key dan Primary Key Tabel 3.14 Menentukan Atribut Candidate Key dan Primary Key
Nama Entitas Candidate Key Primary Key
Barang Kode_Barang Kode_Barang
Nama_Barang
Customer KodeCus KodeCus
TeleponCus
Petugas Kode Kode
Supplier KodeSpl KodeSpl
TeleponSpl
Pembelian Faktur Faktur
Penjualan Faktur Faktur
Penerimaan KodeTrm KodeTrm
Pengeluaran KodeKlr KodeKlr
Permintaan KodeMnt KodeMnt