Step by Step Perancangan Database Showroom Mobil Finish

23
Step by Step Design Database Showroom Mobil Bekas Sistem Basis Data Disusun oleh: Boas Kamarudin Kapitan (1182018) Fakultas Teknik Informasi Jurusan (Sistem informasi) UNIVERSITAS ADVENT INDONESIA 2013

description

Step by Step Perancangan Database Showroom Mobil Finish

Transcript of Step by Step Perancangan Database Showroom Mobil Finish

Page 1: Step by Step Perancangan Database Showroom Mobil Finish

Step by Step DesignDatabase Showroom Mobil Bekas

Sistem Basis Data

Disusun oleh:

Boas Kamarudin Kapitan (1182018)

Fakultas

Teknik InformasiJurusan

(Sistem informasi)UNIVERSITAS ADVENT INDONESIA

2013

Page 2: Step by Step Perancangan Database Showroom Mobil Finish

Database showroom mobil bekasStep by Step Design

Fakultas Teknologi Informasi UNAI

Struktur organisasi Showroom mobil :Pimpinan

Pembelian Penjualan Keuangan Pemasaran

Pembelian

Page 3: Step by Step Perancangan Database Showroom Mobil Finish

1. Penjelasan OrganisasiPerusahaan shorum mobil merupakan perusahaan yang bergerak dalam jual belih mobil bekas hasil penjualan ini di tujukan dalam pasaran dalam negeri. Showroom mobil ini di dirikan dalam dua tujuan yaitu tujuan jangka pendek dan jangka panjang.Tujuannya adalah untuk mencapai target penjualan yang ditetapkan setiap bulan dan mencapai keuntungan dengan mengimbangi biaya operasional shorum.

Bagian-bagian dari Showroom Mobil bekas :

Bisnis organisasi : Jual beli mobil bekas dan bekerja sama dengan showroom mobil baru untuk menjual dan menampung mobil bekas dari showroom mobil baru.

Produk/jasa yang dijual : mobil bekas Strategi bisnis organisasi : bekerja sama dengan showroom mobil baru menampung

setiap mobil bekas yang dikembalikan oleh pelanggan karena tidak sanggup melanjutkan kredit mobil.

Visi misi organisasi : Visi : Menyediakan informasi yang selalu up-to-dateMisi : Dapat memenuhi target penjualan yang besar.

Hal-hal unik yang membedakan organisasi dengan organisasi sejenis : adalah organisasi ini telah memakai sistem komputerisasi jadi setiap barang yang di tawarkan selalu melalui website yang selalu ter up- to date

2. System Definition

Database ini dibangun untuk digunakan sebagai database pada sistem informasi sebuah Showroom mobil bekas. Aplikasi database yang akan dibangun haruslah bisa menangani proses bisnis yang ada di Showroom mobil tersebut, yang antara lain:

1. Proses bisnis penjualan mobil bekas2. Proses bisnis pengiriman mobil bekas kepada pelanggan

Batasan sistem dapat juga ditentukan dengan menentukan siapa saja user yang ingin dilayani oleh sistem dan apa saja view bagi masing-masing user:Misalnya:

1. User 1 : Direktur- Menampilkan data penjualan seluruh cabang- Menampilkan data semua pegawai.- Menampilkan data semua pelanggan seluruh cabang

2. User 2 : Manager

Page 4: Step by Step Perancangan Database Showroom Mobil Finish

- Menampilkan penjualan di cabang yang dipimpin- Menampilkan pelanggan di cabang yang dipimpin- Menampilkan pembayaran di cabang yang dipimpin.

3. User 3 : Pegawai- Menampilkan halaman home dari website- Menampilkan data-data mobil bekas yang akan dijual- Menampilkan pesanan dari pelanggan- Menampilkan data pelanggan- dll

4. Requirements collection and analysis

Pada bagian ini, identifikasi semua kebutuhan data pada masing-masing proses bisnis. Identifikasi kebutuhan data juga dapat dilakukan dengan mengidentifikasi kebutuhan data untuk masing-masing user. Dibawah ini ditunjukkan cara mengidentifikasi kebutuhan data berdasarkan proses bisnis.

Beberapa hal yang perlu diperhatikan, sistem harus dapat mencatat semua data-data sehingga tidak ada terjadi resiko-resiko bisnis seperti:

1. Hilangnya data pelanggan sehingga terjadi kesulitan pada saat mengirimkan barang.2. Pengiriman barang yang tidak sesuai dengan pesanan pelanggan.3. Kesalahan pencatatan pembayaran yang dilakukan oleh pelanggan.

Kebutuhan akan data untuk aplikasi database yang akan dibangun antara lain:

1. Proses bisnis penjualan mobil

Nama pelanggan Alamat Telepon Merek Mobil

Harga Warna Cara pembayaran Jumlah pembayaran

2. Proses pengiriman mobil kepada pelanggan

Merek Mobil Tipe Warna Nama Pelanggan

Alamat Telepon Pegawai

Page 5: Step by Step Perancangan Database Showroom Mobil Finish

Conceptual Database Design4.1 Mengidentifikasi entity typeEntity type yang ada adalah sebagai berikut:

Mobil Pelanggan

Pengiriman Pemilik

Penjualan

PegawaiPembayaran

Page 6: Step by Step Perancangan Database Showroom Mobil Finish

4.2 Relasi antar entity

Mobil

Pelanggan

Pemilik Pengiriman

Penjualan

Pegawai Pembayaran

Page 7: Step by Step Perancangan Database Showroom Mobil Finish

Pelanggan Penjualan(1, 1) (0, *)

Pengiriman Pelanggan(0, *) (1, 1)

Pegawai Penjualan(1, 1) (0, *)

Pegawai Pengiriman(1, 1) (0, *)

Penjualan Mobil(0, 1) (1, 1)

Mobil Pengiriman(1, 1) (1, 1)

Pelanggan Pembayaran(1, 1) (0, *)

Pemilik Mobil (1, 1) (0, *)

Logical Database Design1.1 Menentukan cardinality untuk setiap relasi entity

1. Pelanggan dan Penjualan

2. Pengiriman dan Pelanggan

3. Pegawai dan Penjualan

4. Pegawai dan Pengiriman

5. Penjualan dan Mobil

6. Mobil dan Pengiriman

7. Pelanggan dan Pembayaran

8. Pemilik dan mobil

melibatkan

melibatkan

melibatkan

melakukan

melibatkan

melibatkan

melibatkan

melibatkan

Page 8: Step by Step Perancangan Database Showroom Mobil Finish

Pelanggan Penjualan(1, 1) (0, *)

Pengiriman Pelanggan(0, *) (1, 1)

Pegawai Penjualan(1, 1) (0, *)

Pegawai Pengiriman(1, 1) (0, *)

Penjualan Mobil(0, 1) (1, 1)

Menurunkan tabel dari relasi antar entity1. Pelanggan dan Penjualan

Tabel untuk entity di atas:tblPelanggan : IDPelanggantblPenjualan : IDPenjualan, [IDPelanggan]

2. Pengiriman dan Pelanggan

Tabel untuk entity di atas:tblPelanggan : IDPelanggantblPengiriman : IDPengiriman, [IDPelanggan]

3. Pegawai dan Penjualan

Tabel untuk entity di atas:tblPegawai : IDPegawaitblPenjualan : IDPenjualan, [IDPegawai]

4. Pegawai dan Pengiriman

Tabel untuk entity di atas:tblPegawai : IDPegawaitblPengiriman : IDPengiriman, [IDPegawai]

5. Penjualan dan Mobil

Tabel untuk entity di atas:tblMobil : IDMo bil , tblPenjualan : IDPenjualan, [IDMobil]

Page 9: Step by Step Perancangan Database Showroom Mobil Finish

Mobil Pengiriman(1, 1) (1, 1)

Pelanggan Penjualan(1, 1) (0, *)

Pemilik Mobil(1, 1) (0, *)

6. Mobil dan Pengiriman

Tabel untuk entity di atas:tblMobil : IDMo bil ,tblPengiriman : IDPengiriman, [IDMobil]

7. Pelanggan dan Pembayaran

Tabel untuk entity di atas:tblPelanggan : IDPelanggantblPenjualan : IDPembayaran, [IDPembayaran]

8. Pemilik dan Mobil

Tabel untuk entity di atas:tblPelanggan : IDPe milik tblPenjualan : ID Mobil , [IDMobil]

Page 10: Step by Step Perancangan Database Showroom Mobil Finish

Dari hasil penurunan tabel dari relasi entity yang ada, maka diperoleh tabel-tabel yang dihasilkan adalah sebagai berikut:

tblPengirimanIDPengirimanIDPelangganIDPegawaiIDMobil

tblPembayaranIDPembayaranIDPegawaiIDMobil

tblPenjualanIDPelangganIDMobilIDPegawai

tblPegawaiIDPegawai

tblMobilIDMobil

tblPelangganIDPelanggan

tblPemilikIDPegawai

Page 11: Step by Step Perancangan Database Showroom Mobil Finish

Menambahkan atribute yang lain ke dalam tabelMenambakan atribute lain ke dalam tabel adalah menambahkan atribute-atribute yang ada pada masing-masing entity yang belum terdapat di tabel ke dalam tabel-tabel yang bersesuaian. Kemudian setelah atribute-atribute yang lain ditambahkan ke dalam tabel-tabel, maka diperoleh hasil tabel menjadi seperti di bawah ini.

Tabel-tabel yang dihasilkan di atas, kemudian diperiksa apakah mempunyai field-field yang bersifat multivalued attribute dan composite attribute. Dan hasilnya adalah sebagai berikut:

tblPenjualanIDMobilIDPelanggan Tipe pembayaranTglPenjualanTglPembayaranCara PembayaranJumlah bayarIDPegawai

tblPegawaiIDPegawaiNamaL/PTglLahirAlamat

tblMobilIDMobilTipeWarnaSpesifikasiJumlahHargaJualJlhStock

PelangganIDPelanggan

NamaAlamatTeleponTglLahirL/PPekerjaan

tblPembayaranNo FakturTglPembayaranCara PembayaranJumlah bayar

tblPemilikIDPegawaiNamaAlamatTlp

tblPengirimanIDPengirimanTglPengirimanIDMobilIDPelangganIDPegawai

Page 12: Step by Step Perancangan Database Showroom Mobil Finish

1. Tabel tblPegawai, tblPelanggan,Tabel tblPegawai, tblPelanggan, tblSupplier, memiliki field yang bersifat composite attribute yaitu: Alamat. Maka field tersebut dipecah menjadi field: NmJalan, Kota dan Kode Pos (KP).

2. Tabel tblPenjualanPada tabel tblPenjualan, pembayaran dilakukan oleh pelanggan bisa saja terjadi beberapa kali. Misalnya pelanggan membayar uang muka terlebih dahulu, baru kemudian melakukan pembayaran. Akibatnya field: TglPembayaran, CaraPembayaran dan JumlahBayar menjadi field yang bersifat multivalued attribute. Sebagai solusinya, maka tblPenjualan harus dipecah menjadi tabel tblPenjualan dan tblPembayaran.

3. Tabel tblMobilTabel mobil mempunyai field Spesifikasi yang bersifat composite attribute, maka field tersebut harus dipecah menjadi seperti di bawah ini:

tblPegawaiIDPegawaiNamaL/PTglLahirNmJalanKotaKP

PelangganIDPelangganNamaNmJalanKotaKPTeleponTglLahirL/PPekerjaan

tblPenjualanNo FakturIDMobilIDPelanggan Tipe pembayaranTglPenjualanIDPegawai

tblPembayaranNo FakturTglPembayaranCara PembayaranJumlah bayar

tblMobilIDMobilTipeWarnaRem depanRem belakangTipe mesinDayaMaksTorsiMaksKoplingStarterSistem PengapianJumlahHargaJualJlhStock

Page 13: Step by Step Perancangan Database Showroom Mobil Finish

1.2 Memvalidasi tabel-tabel dengan melakukan normalisasiNormalisasi dilakukan dengan cara menguji aturan-aturan normalisasi yang ada. Pada kasus ini, aturan normalisasi yang digunakan hanya aturan normalisasi yang pertama sampai yang ketiga (1NF, 2NF dan 3NF).1. Tidak ada kelompok data yang berulangPada setiap tabel, tidak ditemukan lagi kelompok data yang berulang. Semua tabel sudah memenuhi aturan nomalisasi pertama (1NF).

2. Tidak ada non primary key yang bergantung pada non primary key yang lain.Tabel mobil masih memiliki field non primary key yang bergantung pada non primary key yang lain, yaitu field Spesifikasi, yang bergantung pada field Tipe. Karena itu, sebagai solusinya, field-field tersebut harus ditempatkan di tabel tersendiri. Maka tabel tblMobil harus dipecah menjadi tabel tblMobildan tblSpesifikasi.

3. Semua non primary harus bergantung pada primary key.Semua tabel sudah memenuhi aturan dari normalisasi ketiga (3NF).

Setelah melakukan normalisasi, maka tabel-tabel yang ada di database adalah sebagai berikut:

tblMobilIDMobilIDTipeWarnaJumlahHargaJualJlhStock

tblSpesifikasiIDTipeTipeKapasitas tangkiRem depanRem belakangTipe mesinDayaMaksTorsiMaksKoplingStarterSistem Pengapian

tblPegawaiIDPegawaiNamaL/PTglLahirNmJalanKotaKP

tblPelangganIDPelangganNamaNmJalanKotaKPTeleponTglLahirL/PPekerjaan

tblPembayaranNo FakturTglPembayaranCara PembayaranJumlah bayar

Page 14: Step by Step Perancangan Database Showroom Mobil Finish

1.3 Memvalidasi tabel dengan transaksi-transaksi userDari validasi yang dilakukan, maka tabel-tabel yang ada sudah memenuhi kebutuhan transaksi yang dilakukan oleh user.

1.4Membangun relasi antar tabelRelasi antar tabel-tabel yang ada di database adalah seperti yang ditunjukkan di bawah ini.

tblMobilIDMobilTipeWarnaJumlahHargaJualJlhStock

tblSpesifikasiTipeKapasitas tangkiRem depanRem belakangTipe mesinDayaMaksKoplingStarterSistem Pengapian

tblPenjualanNo FakturIDMobilIDPelanggan Tipe pembayaranTglPenjualanIDPegawai

tblPengirimanIDPengirimanTglPengirimanIDMobilIDPelangganIDPegawai

tblPemilikIDPegawaiNamaNamaJalanKotaKPTlp

Page 15: Step by Step Perancangan Database Showroom Mobil Finish

1.5 Mendefinisikan integrity constraintBeberapa integrity constaint yang harus dipenuhi oleh sistem, antara lain:1. Data di tabel tblMobil, tblPelanggan, dan tblPegawai tidak dapat dihapus karena akan

merusak referential integrity.2. Pembayaran dengan transfer bank hanya dapat diterima jika dana sudah masuk ke

rekening Showroom Mobil Bekas.

Menentukan domain dari attribute

1. Pelanggan

Page 16: Step by Step Perancangan Database Showroom Mobil Finish

2. PegawaiField Tipe Data Domain

IDPegawai Numberik AutoNumber Numerik 0 – 9 (6 digit)Nama Text Teks 50 karakterNamaJalan Text Teks 50 karakterTelepon Text 14 digitTglLahir DateL/P Text L dan PKota Text Text 50 karakterKodePos Text 14 digitPekerjaan Text Teks 30 karakter

3. MobilField Tipe Data Domain

IDMobil O + Numberik Huruf O + Numerik 0 – 9 (6 digit)IDTipe Text Huruf O + Numerik 0 – 9 (6 digit)Warna Text Teks 50 karakterJumlah Text Teks 50 karakterHargaJual Text Teks 50 karakterJumlahStock Text Teks 50 karakter

4. PemilikField Tipe Data Domain

IDMobil O + Numberik Huruf O + Numerik 0 – 9 (6 digit)Nama Text Teks 50 karakterNamaJalan Text Teks 50 karakterTlp Text 14 digitKota Text Teks 50 karakterKodePos Text Teks 30 karakter

5. SpesifikasiField Tipe Data Domain

IDTipe O + Numberik Huruf O + Numerik 0 – 9 (6 digit)RemDepan Text Teks 50 karakter

Field Tipe Data DomainIDPelanggan Numberik AutoNumber Numerik 0 – 9 (6 digit)Nama Text Teks 50 karakterNamaJalan Text Teks 50 karakterKota Text Text 50 karakterTelepon Text 14 digitTglLahir DateL/P Text L dan PKodePos Text Text 30 karakterPekerjaan Text Teks 30 karakter

Page 17: Step by Step Perancangan Database Showroom Mobil Finish

RemBelakang Text Teks 50 karakterTipeMesin Text Teks 50 karakterDayaMaks Text Teks 50 karakterKopling Text Teks 50 karakterStarter Text Teks 50 karakterSistemPengapian Text Teks 50 karakter

6. Penjualan Field Tipe Data Domain

No Faktur P + Numberik Huruf P + Numerik 0 – 9 (6 digit)TglPenjualan DateTipe Pembayaran Kode numerik 1 = Cash, 2 = KreditTanggal Pembayaran DateCara pembayaran Teks Tunai, Transfer, kartu kreditIDMobil O + Numberik Huruf O + Numerik 0 – 9 (6 digit)IDPelanggan O + Numberik Huruf O + Numerik 0 – 9 (6 digit)IDPegawai O + Numberik Huruf O + Numerik 0 – 9 (6 digit)Jumlah Bayar Currency

7. PengirimanField Tipe Data Domain

IDPengiriman O + Numberik Huruf O + Numerik 0 – 9 (6 digit)TglPengiriman DateIDMobil O + Numberik Huruf O + Numerik 0 – 9 (6 digit)IDPelanggan O + Numberik Huruf O + Numerik 0 – 9 (6 digit)IDPegawai O + Numberik Huruf O + Numerik 0 – 9 (6 digit)

8. PembayaranField Tipe Data Domain

No Faktur P + Numberik Huruf P + Numerik 0 – 9 (6 digit)Tipe Pembayaran Kode numerik 1 = Cash, 2 = KreditTanggal Pembayaran DateCara pembayaran Teks Tunai, Transfer, kartu kreditJumlah Bayar Currency

9. ImplementationMembuat DDL untuk masing-masing tabel???

Contoh untuk tabel tblPelanggan di atas:

Create table tblPelanggan(IDPelanggan Number (5) Primary Key,

Page 18: Step by Step Perancangan Database Showroom Mobil Finish

Nama Varchar(50) Not Null,NmJalan Varchar (50) Not Null,Kota Varchar(50) Not Null,KP Varchar(5),Telp Varchar(15),TglLahir Date Not Null,L/P Char(1) Check (L/P IN (“L”, “P”))Pekerjaan Varchar (50) Not Null)

Create table tblPenjualan(NoFaktur P + Numberik 0-9(6 digit)Tgl Penjualan Date,Tipe Pembayaran Kode numerikl,Carah Pembayarn Text (Tunai, transfer,kartu kredit) Not NullID Mobil O + Numberik (huruf O + Numberik 0-9)(IDPelanggan Number (5) Primary key,ID Pegawai (15),Jumlah Bayar Currency

Create table tblPegawai(IDPegawai Number (5) Primary Key,Nama Varchar(50) Not Null,NmJalan Varchar (50) Not Null,Kota Varchar(50) Not Null,KP Varchar(5),Telp Varchar(15),TglLahir Date Not Null,L/P Char(1) Check (L/P IN (“L”, “P)Kota Text (50)Kode Pos text (14)Pekerjaan Varchar (50) Not Null)

Create table tblMobil(IDMobil Number (5) Primary Key,IDTipe Text (huruf O + Numberik 0-9)Warna Text(50) Not Null,Jumlah Text Text 50 karakterHarga Jual Text 50 karakterNmJalan Varchar (50) Not Null,Jumlah Stock text (text 50 karakter)

Create table tblPemilik(IDPemilik Number (5) Primary Key,Nama Varchar(50) Not Null,NmJalan Varchar (50) Not Null,Kota Varchar(50) Not Null,Telp Varchar(15),Kota Text (50)Kode Pos text (14)

Create table tblSpesifikasi(IDTipe Number (5) Primary Key,Rem Depan Varchar(50) Not Null,Rem Belakang Varchar (50) Not Null,Tipe Mesin Varchar(50) Not Null,Daya Maks varchar (15),

Page 19: Step by Step Perancangan Database Showroom Mobil Finish

Kopling Text (50)Starter text (50)Sistem Pengapian Text (50)

Create table tblPengirimanIDPengiriman number ) + Numberik primary keyTglPengiriman Date,ID Mobil O + Numberik (huruf O + Numberik 0-9)(IDPelanggan Number (5) Primary key,ID Pegawai (15),

Create table tblPembayaranNo Faktur P + Numberik (0-9)Tipe Pembayaran vachar Kode numerik 1 = cash 2 = kreditTanggal Pembayaran DateCarah pembayaran text (tunai,transfer,kartu kredit)Jumlah bayar vachar (Currency)