Teknik Informasi
Jurusan
Database showroom mobil bekas Step by Step Design Fakultas Teknologi Informasi UNAI
Pembelian
Penjualan
Keuangan
Pemasaran
Pembelian
1. Penjelasan Organisasi Perusahaan 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-date Misi : 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 bekas 2. 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
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
Conceptual Database Design 4.1 Mengidentifikasi entity type Entity type yang ada adalah sebagai berikut:
Mobil
Pelanggan
Penjualan
Pemilik
Pelanggan
Pegawai
Pembayaran
Penjualan Pemilik
Pengiriman
Mobil
Logical Database Design 1.1 Menentukan cardinality untuk setiap relasi entity
1. Pelanggan dan Penjualan melibatkan
(1, 1) Pelanggan (0, *) Penjualan
melibatkan
(1, 1) Pelanggan
melibatkan
(1, 1) Mobil
melibatkan
(1, 1) Pengiriman
melibatkan
(0, *) Mobil
Tabel untuk entity di atas: tblPegawai : IDPegawai tblPengiriman : IDPengiriman, [IDPegawai] 5. Penjualan dan Mobil
(0, 1) Penjualan (1, 1) Mobil
Tabel untuk entity di atas: tblMobil : IDMobil, tblPengiriman : IDPengiriman, [IDMobil] 7. Pelanggan dan Pembayaran
(1, 1) Pelanggan (0, *) Penjualan
Tabel untuk entity di atas: tblPelanggan : IDPelanggan tblPenjualan : IDPembayaran, [IDPembayaran] 8. Pemilik dan Mobil
(1, 1) Pemilik (0, *) Mobil
Dari hasil penurunan tabel dari relasi entity yang ada, maka diperoleh tabel-tabel yang dihasilkan adalah sebagai berikut: tblPenjualan IDPelanggan IDMobil IDPegawai tblPembayaran IDPembayaran IDPegawai IDMobil
tblMobil IDMobil
tblPemilik IDPegawai
tblPelanggan IDPelanggan
tblPegawai IDPegawai
tblPenjualan IDMobil IDPelanggan Tipe pembayaran TglPenjualan TglPembayaran Cara Pembayaran Jumlah bayar IDPegawai
Tabel-tabel yang dihasilkan di atas, kemudian diperiksa apakah mempunyai field-field yang bersifat multivalued attribute dan composite attribute. Dan hasilnya adalah sebagai berikut:
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). tblPegawai IDPegawai Nama L/P TglLahir NmJalan Kota KP Pelanggan IDPelanggan Nama NmJalan Kota KP Telepon TglLahir L/P Pekerjaan
2. Tabel tblPenjualan Pada 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. tblPenjualan No Faktur IDMobil IDPelanggan Tipe pembayaran TglPenjualan IDPegawai tblPembayaran No Faktur TglPembayaran Cara Pembayaran Jumlah bayar
3. Tabel tblMobil Tabel mobil mempunyai field Spesifikasi yang bersifat composite attribute, maka field tersebut harus dipecah menjadi seperti di bawah ini: tblMobil IDMobil Tipe Warna Rem depan Rem belakang Tipe mesin DayaMaks TorsiMaks Kopling Starter Sistem Pengapian Jumlah HargaJual JlhStock
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: tblPelanggan IDPelanggan Nama NmJalan Kota KP Telepon TglLahir L/P Pekerjaan tblPembayaran No Faktur TglPembayaran Cara Pembayaran Jumlah bayar
tblSpesifikasi Tipe Kapasitas tangki Rem depan Rem belakang Tipe mesin DayaMaks Kopling Starter Sistem Pengapian
TglLahir L/P KodePos Pekerjaan 2. Pegawai Field IDPegawai Nama NamaJalan Telepon TglLahir L/P Kota KodePos Pekerjaan 3. Mobil Field IDMobil IDTipe Warna Jumlah HargaJual JumlahStock 4. Pemilik Field IDMobil Nama NamaJalan Tlp Kota KodePos
Tipe Data Numberik AutoNumber Text Text Text Date Text Text Text Text
Domain Numerik 0 9 (6 digit) Teks 50 karakter Teks 50 karakter 14 digit L dan P Text 50 karakter 14 digit Teks 30 karakter
Domain Huruf O + Numerik 0 9 (6 digit) Huruf O + Numerik 0 9 (6 digit) Teks 50 karakter Teks 50 karakter Teks 50 karakter Teks 50 karakter
Domain Huruf O + Numerik 0 9 (6 digit) Teks 50 karakter Teks 50 karakter 14 digit Teks 50 karakter Teks 30 karakter
5. Spesifikasi Field IDTipe RemDepan RemBelakang TipeMesin DayaMaks Kopling Starter SistemPengapian
Tipe Data O + Numberik Text Text Text Text Text Text Text
Domain Huruf O + Numerik 0 9 (6 digit) Teks 50 karakter Teks 50 karakter Teks 50 karakter Teks 50 karakter Teks 50 karakter Teks 50 karakter Teks 50 karakter
6. Penjualan Field No Faktur TglPenjualan Tipe Pembayaran Tanggal Pembayaran Cara pembayaran IDMobil IDPelanggan IDPegawai Jumlah Bayar 7. Pengiriman Field IDPengiriman TglPengiriman IDMobil IDPelanggan IDPegawai 8. Pembayaran Field No Faktur Tipe Pembayaran Tanggal Pembayaran Cara pembayaran Jumlah Bayar Tipe Data P + Numberik Date Kode numerik Date Teks O + Numberik O + Numberik O + Numberik Currency Domain Huruf P + Numerik 0 9 (6 digit) 1 = Cash, 2 = Kredit Tunai, Transfer, kartu kredit Huruf O + Numerik 0 9 (6 digit) Huruf O + Numerik 0 9 (6 digit) Huruf O + Numerik 0 9 (6 digit)
Domain Huruf O + Numerik 0 9 (6 digit) Huruf O + Numerik 0 9 (6 digit) Huruf O + Numerik 0 9 (6 digit) Huruf O + Numerik 0 9 (6 digit)
Domain Huruf P + Numerik 0 9 (6 digit) 1 = Cash, 2 = Kredit Tunai, Transfer, kartu kredit
9. Implementation
Membuat DDL untuk masing-masing tabel??? Contoh untuk tabel tblPelanggan di atas:
Create table tblPelanggan (IDPelanggan 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))
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 Null ID 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 karakter Harga Jual Text 50 karakter NmJalan 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), Kopling Text (50) Starter text (50) Sistem Pengapian Text (50)
Create table tblPengiriman IDPengiriman number ) + Numberik primary key TglPengiriman Date, ID Mobil O + Numberik (huruf O + Numberik 0-9) (IDPelanggan Number (5) Primary key, ID Pegawai (15), Create table tblPembayaran No Faktur P + Numberik (0-9) Tipe Pembayaran vachar Kode numerik 1 = cash 2 = kredit Tanggal Pembayaran Date Carah pembayaran text (tunai,transfer,kartu kredit) Jumlah bayar vachar (Currency)