• Tidak ada hasil yang ditemukan

BAB 3 ANALISIS DAN PERANCANGAN SISTEM

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB 3 ANALISIS DAN PERANCANGAN SISTEM"

Copied!
158
0
0

Teks penuh

(1)

37

ANALISIS DAN PERANCANGAN SISTEM

3.1 Riwayat Perusahaan

PT. Bahagia Idkho Mandiri adalah perusahaan yang bergerak dibidang industri kosmetik dengan merk dagang MBK. Logo MBK berupa kembang sepatu berwarna merah. Perusahaan berusaha melakukan pengembangan didalam variasi produknya yang telah dikenal sejak lama sebagai produk bagi kalangan menengah kebawah, dengan harga murah tetapi berkualitas dan perusahaan selalu menjaga mutu dan kualitas agar kepuasan konsumen terjamin. Perusahaan yakin dapat menjadi mitra yang baik kepada pelanggan. Perusahaan percaya bahwa karyawan adalah keluarga yang sama. Perusahaan percaya untuk menghormati individu karyawan. Untuk meningkatkan kepuasan konsumen, perusahaan akan melakukan revisi secara terus – menerus untuk mendapatkan proses bekerja secara efektif dan akan meningkatkan target penjualan dengan produk tambahan dan pelanggan baru. PT. Bahagia Idkho Mandiri akan meninjau kebijakan ini secara terus – menerus dan semua pegawai harus memahami dan mengikuti kebijakan ini.

i. Visi dan Misi PT. Bahagia Idkho Mandiri 1. Visi PT. Bahagia Idkho Mandiri

Menjadi perusahaan Nasional yang sehat sehingga dapat memberikan kontribusi yang optimal bagi pembangunan bangsa dan menyejahterakan masyarakat.

(2)

2. Misi PT. Bahagia Idkho Mandiri

1. Menyejahterakan rakyat dengan memberikan kesempatan kerja bagi sebagian rakyat Indonesia.

2. Meningkatkan Sumber Daya Manusia ( SDM ) dengan melakukan berbagai program stimulan untuk mengembangkan potensi jasmani, rohani serta intelektualitas.

.

ii. Produk-produk PT. Bahagia Idkho Mandiri

Berikut ini adalah produk-produk yang dihasilkan oleh PT. Bahagia Idkho Mandiri :

1. MBK Sachet BB Putih & Silver 2. MBK Tin BB Putih & Silver 3. MBK BK Menthol & Non Menthol 4. MBK Roll On Deodorant,

5. MBK Deo Lotion Tube dan Sachet 6. B – Care Minyak Angin aromatherapy

7. B – Care Minyak Kayu Putih dan Minyak telon.

(3)

3.2.1 Struktur Organisasi PT. Bahagia Idkho Mandiri Komisaris Direktur Ka. Gudang Ka. Purchasing Ka. Marketing Ka. Keuangan Ka. Personalia Pelaksana Gudang Staff Gudang Staff Purchasing Modern Trade Staff Pajak Staff Keuangan Spv. QC Ka. QC Staff Produksi Spv. Produksi Spv. Teknisi Spv. OB Driver Penanggung Jawab Teknis Ka. Produksi Ka. R. Tangga Ka. Kendaraan Staff Analisis Lab Staff Personalia

(4)

3.2.2 Pembagian Tugas dan Tanggung Jawab 1. Komisaris

Memasukkan berbagai pejabat senior. Secara khusus, komisaris bertugas sebagai pengawas diperusahaan dan memberi nasihat kepada Direksi.

2. Direktur Tugas

- Memimpin perusahaan dengan menerbitkan kebijakan-kebijakan perusahaan.

- Memilih, menetapkan, mengawasi tugas dari karyawan dan kepala bagian (manajer)

- Menyetujui anggaran tahunan perusahaan

- Mengesahkan dokumen sistem manejemen mutu. • Tanggung Jawab

- Memimpin, mengkoordinasi, mengarahkan dan mengawasi seluruh kegiatan perusahaan.

- Mengambil keputusan dan kebijakan yang telah ditetapkan oleh perusahaan.

- Menerima dan mengevaluasi laporan pelaksanaan kegiatan diperusahaan.

(5)

3. Ka. Personalia Tugas

- Menerima dan mendistribusikan surat-surat masuk keperusahaan.

- Menyimpan dan memelihara dokumen perusahaan. - Mengevaluasi laporan dari staff personalia.

- Menjalankan administrasi karyawan. • Tanggung Jawab

- Merencanakan penerimaan karyawan. - Merencanakan pelatihan internal karyawan.

- Mengembangkan dan menetapkan peraturan karyawan yang disesuaikan dengan peraturan pemerintah.

- Merencanakan program kerja sama dengan lingkungan masyarakat.

4. Ka. Keuangan Tugas

- Mengeluarkan dan membayarkan uang pembelian bahan baku serta gaji karyawan dan pembayaran-pembayaran lainnya sesuai aturan perusahaan.

- Melaporkan kegiatan keuangan triwulan kepada Direktur. - Membicarakan kegiatan arus keuangan setiap hari atau

setiap saat dengan Direktur.

(6)

- Mencatat seluruh kegiatan keuangan setiap hari.

- Menerima laporan kegiatan keuangan dari kantor dan pabrik.

Tanggung Jawab

- Menyusun kebijakan keuangan yang berhubungan dengan kegiatan akuntansi, administrasi keuangan, pengaturan sumber dana dan penggunaan dana peruusahaan.

- Mengkoordinir dan mengawasi transaksi keuangan. - Menugaskan staff keuangan membayar gaji karyawan. - Mengawasi kelancaran keuangan perusahaan.

5. Ka. Marketing Tugas

- Mengkoordinasikan dan mengidentifikasi informasi pasar. - Melaksanakan program promosi untuk meningkatkan daya

saing.

- Memelihara dan menyimpan dokumen penjualan.

- Membuat dan melaporkan mekanisme penjualan kepada Direktur.

Tanggung Jawab

(7)

- Bertanggung jawab atas perkembangan pasar penjual. - Bertanggung jawab atas kebijakan promosi dan penagihan. - Bertanggung jawab atas pelayanan dan hubungan baik

dengan konsumen, distributor dan supplier. 6. Ka. Gudang

Tugas

- Mencatat jumlah bahan baku yang keluar masuk gudang. - Mencatat jumlah produksi akhir yang keluar masuk

gudang.

- Menjaga tingkat kerapihan, kebersihan dan keamanan gudang.

- Memberi identifikasi barang setiap barang masuk gudang dan melaksanakan penggunaan barang dengan sistem FIFO.

Tanggung Jawab

- Bertanggung jawab atas keselamatan bahan baku dan produksi yang tersimpan dalam gudang.

- Bertanggung jawab atas pemberian identifikasi atas bahan baku dan produk jadi yang ada di dalam gudang.

7. Ka. Kendaraan Tugas

(8)

- Memelihara dan menjaga agar kendaraan tetap baik. - Mengontrol jika ada kerusakan pada kendaraan. Tanggung Jawab

- Menjaga kondisi kendaraan agar tetap baik.

8. Ka. Produksi Tugas

- Mengkoordinir karyawan dalam proses produksi untuk melaksanakan tugasnya sesuai prosedur yang telah diterapkan.

- Mengatur kelancaran proses produksi dari tahap bahan baku sampai produk jadi.

- Memeriksa dan menguji bahan baku, produksi jadi sesuai dengan SNI (Standar Nasional Indonesia).

- Menyiapkan standar mutu sebagai acuan. • Tanggung Jawab

- Bertanggung jawab didalam proses produksi. - Bertanggung jawab atas mutu bahan baku.

- Bertanggung jawab atas kesesuaian mutu produk akhir. - Bertanggung jawab atas arus persediaan bahan baku. 9. Penanggung Jawab Teknis

(9)

- Memeriksa tingkat kebersihan alat atau mesin produksi baik sebelum dan sesudah dioperasikan.

- Memelihara, merawat mesit atau peralatan produksi. • Tanggung Jawab

- Bertanggung jawab atas kesiapan operasi alat-alat produksi.

- Bertanggung jawab atas pelaksanaan perawatan alat-alat produksi.

3.3. Sistem yang Sedang Berjalan

Sistem yang sedang berjalan pada PT. BAHAGIA IDHKO MANDIRI dapat dijelaskan sebagai berikut :

3.3.1 Bagian Penjualan

Bagian penjualan akan melayani customer seperti transaksi penjualan dan pemesanan dari customer. Bagian penjualan akan mengecek barang, apakah barang tersedia atau tidak. Apabila barang tersedia, maka bagian gudang akan memberikan barang ke bagian penjualan dan bagian penjualan akan mengirim langsung ke customer. Kemudian pelanggan akan membayar pesanannya kepada bagian penjualan. Setelah itu bagian penjualan akan membuat laporan penjualan tersebut.

(10)

Apabila barang tidak tersedia, maka bagian pembelian akan memesan ke supplier bahwa stok barang telah habis dan minta agar supplier mengirimkan barang yang dibutuhkan tersebut secara cepat. Supplier akan mengirim barang yang dipesan langsung kepada bagian pembelian dan kemudian bagian pembelian akan membayar pesananannya kepada supplier. Biasanya bagian penjualan bekerja sama dengan bagian pembelian ketika barang sudah hampir habis untuk memesan kepada supplier. Bagian penjualan selalu mengecek stok barang yang ada setiap transaksi penjualan agar tidak terjadi kehabisan stok ketika ada transaksi penjualan berikutnya. Setelah itu bagian pembelian akan membuat laporan bagian pembelian tersebut.

3.3.3 Retur Pembelian

Bagian pembelian akan mengecek kondisi barang yang dibeli dan diteliti. Jika ada barang yang rusak atau tidak baik maka bagian pembelian akan mengembalikan barang tersebut ke supplier sesuai dengan bukti pembelian yang terdiri barang yang dibeli, harga dari barang tersebut dan jumlah dari barang yang diretur / dikembalikan. Setelah itu bagian pembelian akan membuat laporan pembelian tersebut.

3.3.4 Buku Penerimaan Gudang

Setiap terjadi pemasukan logistik ke dalam gudang harus segera dilakukan pencatatan pemasukan logistik ke dalam Buku Penerimaan Gudang. Buku Penerimaan Gudang harus diikuti bukti-bukti penerimaan barang yang dapat berupa Nota, Faktur, Kwitansi, Surat Jalan dll.

(11)

Setiap terjadi pengeluaran logistik dari gudang harus segera dilakukan pencatatan pengeluaran logistik ke dalam Buku Pengeluaran Gudang. Buku Pengeluaran Gudang harus diikuti bukti-bukti pengeluaran barang yang dapat berupa Bon Gudang, Surat Jalan, Surat Pengeluaran Barang dll.

3.3.6 Kartu Persediaan / Stok

Setiap terjadi pemasukan atau pengeluaran logistik ke dalam gudang harus segera dilakukan pencatatan perubahan jumlah ke dalam Kartu Persediaan / Stok.

3.3.7 Bon Permintaan Barang / Bon Gudang

Setiap permintaan kebutuhan logistik dari setiap unit kerja dalam organisasi proyek harus disertai dengan bukti permintaan berupa Bon Permintaan Barang / Bon Gudang yang telah disetujui oleh petugas yang ditunjuk oleh Kepala Proyek.

3.3.8 Surat Penyerahan Barang

Setiap permintaan kebutuhan logistik dari luar unit kerja dalam organisasi proyek harus disertai dengan Surat Penyerahan Barang. Surat Penyerahan Barang baru dinyatakan sah apabila ditandatangai oleh :

1. Yang menyetujui (Kepala Proyek). 2. Yang menyerahkan .

3. Yang menerima.

(12)

Di bawah ini adalah hasil wawancara antara Penulis (P) dengan Manajer (M) : P : Bagaimana sejarah perusahaan PT BAHAGIA IDKHO MANDIRI?

M : Perusahaan ini didirikan pada tahun 1980, dan memulai kegiatan operasinya pada bulan Februari 1981. Pada akhir tahun 1987, hanya enam tahun setelah didirikan, perusahaan ini berhasil meningkatkan pendapatan dan pertambahan modal yang sangat signifikan, dengan mulai adanya perubahan sistem kerja. Hingga pertengahan tahun 1996, Bahagia Idkho Mandiri mengubah status perusahaannya dari CV Bahagia Idkho Mandiri menjadi PT Bahagia Idkho Mandiri dan dapat membuka luas jaringan usahanya yang merambah berbagai bidang dan beberapa wilayah. Alhamdulillah berkat semangat kerja dan limpahan karunia Allah, perusahaan ini terus maju dan akan terus maju guna membantu mensejahterakan tarap hidup bangsa.

P : Perusahaan anda bergerak dibidang apa?

M : PT. Bahagia Idkho Mandiri merupakan perusahaan yang bergerak dibidang industri kosmetik.

P : Apa visi dan misi perusahan ini?

M : Visi perusahaan menjadi perusahaan Nasional yang sehat sehingga dapat memberikan kontribusi yang optimal bagi pembangunan bangsa dan menyejahterakan masyarakat. Misi perusahaan menyejahterakan rakyat dengan memberikan kesempatan kerja bagi sebagian rakyat Indonesia dan meningkatkan Sumber Daya Manusia ( SDM ) dengan melakukan berbagai program stimulan untuk mengembangkan potensi jasmani, rohani serta intelektualitas.

(13)

P : Bagaimana sistem basis data penjualan, pembelian dan persediaan yang sedang berjalan pada PT BAHAGIA IDKHO MANDIRI ?

M : PT BAHAGIA IDKHO MANDIRI masih menggunakan sistem pencatatan manual dalam menjalankan kegiatan operasionalnya. Perusahaan memasukkan data dengan cara manual dan kemudian menyimpannya ke dalam arsip berupa kertas-kertas, sehingga data-data tidak tersktruktur dengan rapi.

P : Bagaimana proses penjualan pada PT BAHAGIA IDKHO MANDIRI ? M : Bagian penjualan menerima pemesanan barang dari pelanggan dan akan membuat laporan pemesanan barang, kemudian bagian gudang akan melakukan pengecekan barang. Bagian gudang akan menyiapkan barang dan membuat laporan kesiapan barang, kemudian bagian keuangan akan membuat kwitansi dan akan diberikan kepada pelanggan, setelah itu pelanggan melakukan pembayaran. Bagian penjualan akan menerima pembayaran, kemudian akan membuat bukti pembayaran, bukti pembayaran akan diberikan kepada bagian penjualan. Bagian penjualan akan menerima bukti pembayaran yang telah dilakukan oleh pelanggan dari bagian keuangan. Setelah bagian penjualan mendapatkan bukti pembayaran, bagian penjualan akan membuat faktur penjualan dan surat jalan, kemudian akan mengirim barang dan meminta informasi penerimaan barang, maka pelanggan akan member konfirmasi tersebut. Proses penjualan berakhir ketika bagian penjualan menerima konfirmasi tersebut.

(14)

M : Apabila barang tidak tersedia, maka bagian pembelian akan memesan ke supplier bahwa stok barang telah habis dan minta agar supplier mengirimkan barang yang dibutuhkan tersebut secara cepat. Supplier akan mengirim barang yang dipesan langsung kepada bagian pembelian dan kemudian bagian pembelian akan membayar pesananannya kepada supplier. Biasanya bagian penjualan bekerja sama dengan bagian pembelian ketika barang sudah hampir habis untuk memesan kepada supplier. Bagian penjualan selalu mengecek stok barang yang ada setiap transaksi penjualan agar tidak terjadi kehabisan stok ketika ada transaksi penjualan berikutnya. Setelah itu bagian pembelian akan membuat laporan bagian pembelian tersebut.

P : Bagaimana proses persediaan pada PT BAHAGIA IDKHO MANDIRI ? M : Bagian produksi akan memproduksi barang-barang perusahaan. Setelah barang telah selesai diproduksi maka bagian produksi akan membuat daftar barang perusahaan. Bagian penjualan akan membuat laporan pemesanan barang. Laporan pemesanaan tersebut akan diberikan kepada bagian gudang untuk selanjutnya diproses oleh bagian gudang. Apabila bagian produksi telah membuat daftar barang dan bagian penjualan telah membuat laporan pemesanan barang maka laporan tersebut diberikan ke bagian gudang. Bagian gudang akan menerima laporan-laporan tersebut, kemudian bagian gudang akan membuat daftar barang masuk dan bagian gudang akan segera meyiapkan barang tersebut. Bagian gudang juga akan membuat daftar barang keluar yang kemudian semuanya akan dicatat di buku persediaan barang.

(15)

P: Berapa banyak transaksi pembelian dan penjualan yang dilakukan perusahaan setiap harinya ?

M : Penjualan diperkirakan mencapai 8-10 transaksi perharinya sedangkan untuk pembelian diperkirakan 4 kali dalam satu bulan.

P: Bagaimana perusahaan memenuhi permintaan pelanggan setiap harinya? M : Perusahaan memenuhi permintaan pelanggan dengan mengecek persediaan barang di gudang. Apabila persediaan barang tersedia maka transaksi penjualan dilakukan, tetapi apabila persediaan barang tidak mencukupi maka permintaan pelanggan akan ditunda hingga barang dipesan dari pemasok.

P : Berapa jumlah karyawan di perusahaan ini? M : Ada sekitar 30 orang karyawan.

P : Ada berapa banyak pelanggan ?

M : Perusahaan tidak mempunyai data pelanggan dengan pasti, jadi pelanggan tidak diketahui secara pasti.

P : Ada berapa banyak pemasok ? M: Ada 3 pemasok tetap

P: Berapa kali perusahaan membuat laporan setiap harinya ? M : Perusahaan biasanya membuat laporan harian dan bulanan.

(16)

P : Apakah ada masalah yang dihadapi perusahaan dengan digunakannya sistem pencatatan manual ?

M : Perusahaan belum mempunyai pendataan yang rapi dan tersktruktur, baik dalam data aktifitas penjualan, pembelian dan persediaan. Perusahaan mengalami kesulitaan dalam mengimplementasikan pendataan yang baik pada penjualan, pembelian dan persediaan. Pencarian data dan informasi yang dibutuhkan masih kurang efisien dan tidak maksimal. Tingkat keakuratan data juga tidak begitu jelas dilaporkan, karena masih manual dan tidak terkomputerisasi.

P: Aplikasi dengan fungsi - fungsi seperti apa yang dibutuhkan perusahaan ? M : Aplikasi yang menangani transaksi penjualan, pembelian dan persediaan, dapat mengelola data pelanggan, pemasok, karyawan, serta dapat menghasilkan laporan.

P: Laporan apa saja yang dibutuhkan perusahaan ?

M : Laporan yang berhubungan dengan transaksi pembelian, penjualan dan persediaan.

P: Siapa saja yang menggunakan aplikasi ini ?

M : Yang menggunakan aplikasi ini adalah manajer, karyawan dan bagian persediaan.

P: Apa yang diharapkan perusahaan dari aplikasi ini ?

M : Diharapkan aplikasi yang dibuat dapat membantu meningkatkan kinerja perusahaan.

(17)

3.5 Diagram Aliran Data (DAD)

Berikut ini adalah beberapa gambar DAD untuk memudahkan dalam penggambaran sistem yang sedang berjalan di PT. Bahagia Idkho Mandiri.

3.5.1 Diagram Konteks

(18)

3.5.2 Diagram Nol

(19)

3.5.3 Diagram Level 1 Tabel Master

(20)

3.5.4 Diagram Level 1 Transaksi Penjualan

Gambar 3.4 Diagram Level 1 Transaksi Penjualan 3.5.5 Diagram Level 1 Transaksi Penerimaan dan Pengeluaran

(21)

3.5.6 Diagram Level 1 Transaksi Pembelian dan Persediaan

Gambar 3.6 Diagram Level 1 Transaksi Pembelian dan Persediaan 3.5.7 Diagram Level 1 Transaksi Retur Penjualan

(22)

3.5.8 Diagram Level 1 Laporan

Gambar 3.8 Diagram Level 1 Laporan

3.6 Permasalahan yang Dihadapi

Permasalahan yang timbul akibat dari sistem yang masih menggunakan metode konvensional dalam sistem penjualan, pembelian dan persediaan yang sedang berjalan saat ini adalah :

a. Apabila perusahaan membutuhkan data, pihak perusahaan harus mencari dokumen atau laporan satu persatu secara manual. Jika data tersebut dibutuhkan secara cepat, maka kebutuhan tersebut sulit untuk terpenuhi karena membutuhkan banyak waktu yang cukup lama untuk mendapatkan semua data yang diminta.

b. Perusahaan mengalami kesulitan dalam mengimplementasikan pendataan yang baik pada penjualan, pembelian dan persediaan.

(23)

c. Belum ada sistem keamanan pada sistem aktivitas yang ada, data yang dimiliki mempunyai tingkat kerusakan ataupun berpindah tangan secara tidak sengaja ataupun disengaja secara tidak jelas. d. Tingkat keakuratan data juga tidak bisa begitu jelas dilaporkan,

karena masih manual dan tidak terkomputerisasi. 3.7 Alternatif Pemecahan Masalah

Setelah melihat dan menganalisis masalah-masalah yang dihadapi oleh perusahaan, serta kelebihan yang tidak dimiliki sistem penjualan konvensional, maka diusulkan alternatif pemecahan masalah sebagai berikut :

a. Membangun aplikasi yang lebih baik dan mampu memenuhi proses penjualan, pembelian dan persediaan pada saat perusahaan sedang berkembang seperti saat ini.

b. Membangun aplikasi yang dapat mengintegritaskan data satu sama lain.

c. Membangun aplikasi yang dapat mengimplementasikan data yang sesuai dengan pengguna.

d. Membuat aplikasi yang user friendly.

e. Menerapkan sistem keamanan yang baik, agar pihak-pihak yang tidak berkepentingan tidak dapat mengakses data-data yang ada. Bisa dengan menggunakan username dan password pada melakukan login untuk memulai proses pendataan.

(24)

3.8 Perancangan Sistem Basis Data

Perancangan sistem basis data dilakukan sesuai dengan kebutuhan informasi dari PT. BAHAGIA IDKHO MANDIRI, difokuskan pada perancangan basis data yang meliputi tiga tahap antara lain :

1. Perancangan basis data Konseptual. 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

(25)

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

(26)

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.

(27)

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.

(28)

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..*

(29)
(30)

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

(31)

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

(32)

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

(33)

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

(34)

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

(35)

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

(36)

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

(37)

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 :

(38)

• 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).

(39)

(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

(40)

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 :

(41)

• 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).

(42)

• 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

(43)

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

(44)

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

2. Perancangan Basis Data Logikal

Perancangan basis data logikal merupakan proses membangun sebuah model informasi yang digunakan dalam organisasi berdasarkan model data spesifik, tetapi tidak bergantung dengan DBMS khusus dan pertimbangan fisik lainnya. Beberapa tahapan penting dalam merancang

(45)

basis data logikal, yaitu membangun dan memvalidasi data model logikal lokal untuk tiap-tiap pandangan, membangun dan memvalidasi data model logikal global. Pada tahap ini yang bersifat many-to-many, kompleks dan juga rekursif harus dihilangkan.

Langkah-langkah penting dalam tahap perancangan basis data logikal, yaitu :

1. Menghilangkan fitur-fitur yang tidak sesuai dengan model relasional.

Aktifitas – aktifitas dalam langkah ini adalah sebagai berikut: Menghilangkan many-to-many (*:*) binary relationship types. Setiap relationship yang mempunyai hubungan antar entity many-to-many harus dihilangkan dengan cara memecah kedua entitas tersebut dan membuat entitas baru untuk menghubungkan kedua entitas tersebut.

1..* 1..*

1..1 1..* 1..* 1..1

Gambar 3.10 Diagram Entity Relationship (ER) setelah menghilangkan many-to-many untuk Penjualan dengan Barang.

(46)

1..* 1..*

1..1 1..* 1..* 1..1

Gambar 3.11 Diagram Entity Relationship (ER) setelah menghilangkan many-to-many untuk Pembelian dengan Barang.

1..* 1..*

1..1 1..* 1..* 1..1

Gambar 3.12 Diagram Entity Relationship (ER) setelah menghilangkan many-to-many untuk Pengeluaran dengan Barang.

(47)

1..1 1.* 1..* 1..1

Gambar 3.13 Diagram Entity Relationship (ER) setelah menghilangkan many-to-many untuk Permintaan dengan Barang.

1..* 1..*

1..1 1..* 1..1 1..*

Gambar 3.14 Diagram Entity Relationship (ER) setelah menghilangkan many-to-many untuk Penerimaan dengan Barang.

2. Membuat Hubungan untuk Model Logikal Lokal.

Langkah ini bertujuan untuk membuat hubungan model logikal yang mewakili entitas, hubungan dan atribut yang telah didefinisikan.

(48)

1. Mengidentifikasi Entitas Kuat (Strong Entity)

Himpunan yang melibatkan dalam ERD adalah himpunan entitas kuat / bebas. Himpunan entitas tersebut tidak memiliki ketergantungan dengan entitas lain. Yang termasuk dalam entitas kuat adalah:

a. Customer (KodeCus, NamaCus, AlamatCus, TeleponCus,

PersonCus, EmailCus). Primary Key : KodeCus.

b. Petugas (Kode, Nama, PasswordPtg, StatusPtg). Primary Key : Kode.

c. Supplier (KodeSpl, NamaSpl, AlamatSpl, TeleponSpl, PersonSpl, EmailSpl).

Primary Key : KodeSpl.

2. Mengidentifikasi Entitas Lemah (Weak Entity) Sebuah Entitas yang bergantung dengan entitas lain.

a. Barang (Kode_Barang, Nama_Barang, Harga_Beli, Harga_Jual, Jumlah_Barang, Satuan, StockMinimal) Primary Key : Kode_Barang.

b. Pembelian (Faktur_Pembelian, Tanggal, Item, Total, Dibayar, Kembali, Kode, KodeSpl).

Primary Key : Faktur_Pembelian.

c. DetailPembelian (Faktur_Pembelian, Kode_Barang, Nama_Barang, Harga_Beli, Subtotal, Jumlah) Primary Key : Faktur_Pembelian,Kode_Barang

(49)

d. Penjualan (Faktur_Penjualan, Tanggal, Item, Total, Dibayar, Kembali, Kode, KodeCus).

Primary Key : Faktur_Penjualan.

e. DetailPenjualan (Faktur_Penjualan, Kode_Barang, Nama_Barang, Harga_Jual, Subtotal, Jumlah) Primary Key : Faktur_Penjualan, Kode_Barang

f. Penerimaan (KodeTrm, KodeSpl, NomorBon, TotalTrm, Kode).

Primary Key : KodeTrm

g. DetailPenerimaan (KodeTrm, Kode_Barang, StockAwal, StockAkhir, JumlahMinta )

Primary Key : KodeTrm, Kode_Barang

h. Pengeluaran (KodeKlr, TanggalKlr, NomorBon, TotalMnt, TotalKrm, KetKrm, KodeCus, Kode). Primary Key : KodeKlr.

i. DetailKeluar (KodeKlr, Kode_Barang, StockAwal, StockAkhir, Dikirim, JumlahMinta, Ket)

Primary Key : KodeKlr, Kode_Barang

j. PermintaanCustomer (KodeMnt, TanggalMnt, NomorReff, TotalMnt, TotalKrm, KetKirim, Kode, KodeCus)

(50)

k. DetailMintaCus (KodeMnt, Kode_Barang, Stock, JumlahMinta, Dikirim, Ket)

Primary Key : KodeMnt, Kode_Barang

3. Tipe Relasi Binary One-to-Many (1..*)

Untuk sebuah hubungan Binary One-to Many (1..*), entitas pada ‘sisi satu’ dari hubungan antar entitas disebut entitas parent dan entitas pada ‘sisi banyak’ disebut entitas child. Dalam mengimplementasikan hubungan ini diletakkan salinan atribut primary key dari entitas parent ke dalam hubungan yang mengimplementasikan entitas child, sebagai foreign key.

a. Hubungan Petugas Menangani Penjualan post Petugas ke Penjualan

Petugas(Kode, Nama, PasswordPtg, StatusPtg) Primary key Kode

Penjualan (Faktur_Penjualan, Tanggal, Item, Total, Dibayar, Kembali, Kode, KodeCus) Primary key Faktur_Penjualan Foreign key Kode references Petugas (Kode)

Foreign key KodeCus

(51)

b. Hubungan Petugas Menangani Pembelian post Petugas ke Pembelian

Petugas(Kode, Nama, PasswordPtg, StatusPtg) Primary key Kode

Pembelian (Faktur_Pembelian, Tanggal, Item, Total, Dibayar, Kembali, Kode, KodeSpl) Primary key Faktur_Pembelian Foreign key Kode references Petugas (Kode)

Foreign key KodeSpl references Supplier (KodeSpl)

c. Hubungan Petugas Menangani Retur Penjualan post Petugas ke Retur Penjualan

Petugas(Kode, Nama, PasswordPtg, StatusPtg) Primary key Kode

Retur (Faktur_Penjualan, Tanggal, Item, Total, Kode) Foreign key Faktur_Penjualan references Penjualan

(Faktur_Penjualan)

Foreign key Kode references Petugas (Kode)

(52)

d. Hubungan Customer Menyebabkan Penjualan post Customer ke Penjualan

Customer (KodeCus, NamaCus, AlamatCus, TeleponCus, PersnCus, EmailCus)

Primary key KodeCus

Penjualan (Faktur_Penjualan, Tanggal, Item, Total, Dibayar, Kembali, Kode, KodeCus) Primary key Faktur_Penjualan Foreign key Kode references Petugas (Kode)

Foreign key KodeCus references Customer (KodeCus)

e. Hubungan Customer Melakukan Retur Penjualan post Customer ke Retur Penjualan

Customer (KodeCus, NamaCus, AlamatCus, TeleponCus, PersnCus, EmailCus)

Primary key KodeCus

Retur (Faktur_Penjualan, Tanggal, Item, Total, Kode) Foreign key Faktur_Penjualan references Penjualan

(Faktur_Penjualan)

Foreign key Kode references Petugas (Kode)

(53)

4. Tipe Relasi Binary One-to-One (1..1)

Setiap hubungan ini terjadi apabila sebuah data yang ada pada tabel pertama juga ada pada tabel kedua, dimana data tersebut hanya diizinkan satu buah data pada masing-masing tabel, tidak boleh ada beberapa data yang sama pada tabel yang sama.

a. Hubungan Penjualan Melatarbelakangi Pengerluaran. post Penjualan ke Pengeluaran

Penjualan (Faktur_Penjualan, Tanggal, Item, Total, Dibayar, Kembali, Kode, KodeCus) Primary key Faktur_Penjualan Foreign key Kode references Petugas (Kode)

Foreign key KodeCus references Customer (KodeCus)

Pengeluaran (KodeKlr, NomorBon, TotalMnt, TotalKrm, KetKirim, TanggalKlr)

Primary key KodeKlr

b. Hubungan Pembelian Melatarbelakangi Penerimaan post Pembelian ke Penerimaan

Pembelian (Faktur_Pembelian, Tanggal, Item, Total, Dibayar,

Penerimaan (KodeTrm, NomorBon, TotalKrm,

(54)

Kembali, Kode, KodeSpl) Primary key Faktur_Pembelian Foreign key Kode references Petugas (Kode)

Foreign key KodeSpl references Supplier (KodeSpl)

TanggalKrm)

Primary key KodeTrm

5. Tipe Relasi Binary Many-to-Many (*..*)

Setiap relationship yang mempunyai hubungan antar entity many-to-many (*..*) harus dihilangkan dengan cara memecah kedua entitas tersebut dan membuat entitas baru untuk menghubungkan kedua entitas tersebut. Primary key disalin ke relasi entitas baru dan akan bertindak sebagai foreign key.

a. Relasi antara Penjualan dan Barang akan membentuk entitas baru yaitu DetailPenjualan.

Kondisi Awal

Penjualan (Faktur_Penjualan, Tanggal, Item, Total, Dibayar, Kembali, Kode, KodeCus) Primary key Faktur_Penjualan

Barang (Kode_Barang, Nama_Barang, Harga_Beli, Harga_Jual, Jumlah_Barang, Satuan, StockMinimal)

(55)

Foreign key Kode references Petugas (Kode)

Foreign key KodeCus references Customer (KodeCus)

Primary key Kode_Barang

Kondisi Akhir

DetailPenjualan (Faktur_Penjualan, Kode_Barang, Nama_Barang, Harga_Jual, Subtotal, Jumlah)

b. Relasi antara Pembelian dan Barang akan membentuk entitas baru yaitu DetailPembelian.

Kondisi Awal

Pembelian (Faktur_Pembelian, Tanggal, Item, Total, Dibayar, Kembali, Kode, KodeSpl) Primary key Faktur_Pembelian Foreign key Kode references Petugas (Kode)

Foreign key KodeSpl references Supplier (KodeSpl)

Barang (Kode_Barang, Nama_Barang, Harga_Beli, Harga_Jual, Jumlah_Barang, Satuan, StockMinimal) Primary key Kode_Barang

(56)

Kondisi Akhir

DetailPembelian (Faktur_Pembelian, Kode_Barang, Nama_Barang, Harga_Beli, Subtotal, Jumlah)

c. Relasi antara Pengeluaran dan Barang akan membentuk entitas baru yaitu DetailKeluar.

Kondisi Awal

Pengeluaran(KodeKlr, Tanggal Klr, Nomorbon, Totalmnt, Totalkrm, Ketkrm, KodeCus, Kode)

Primary key Kodeklr

Foreign key Kode references Petugas (Kode)

Foreign key KodeCus references Customer (KodeCus)

Barang (Kode_Barang, Nama_Barang, Harga_Beli, Harga_Jual, Jumlah_Barang, Satuan, StockMinimal) Primary key Kode_Barang

Kondisi Akhir

DetailKeluar (KodeKlr, Kode_Barang, StockAwal, StockAkhir, Dikirim, JumlahMinta, Ket)

(57)

d. Relasi antara Permintaan dan Barang akan membentuk entitas baru yaitu DetailMintaCus

Kondisi Awal

Permintaan (KodeMnt, TanggalMnt, Nomorreff, TotalMnt, TotalkKrm, KetKirim, Kode, KodeCus) Primary key KodeMnt Foreign key Kode references Petugas (Kode)

Foreign key KodeCus

references Customer (KodeCus)

Barang (Kode_Barang, Nama_Barang, Harga_Beli, Harga_Jual, Jumlah_Barang, Satuan, StockMinimal) Primary key Kode_Barang

Kondisi Akhir

DetailMintaCus (KodeMnt, Kode_Barang, Stock, JumlahMinta, Dikirim, Ket)

(58)

e. Relasi antara Penerimaan dan Barang akan membentuk entitas baru yaitu DetailPenerimaan.

Kondisi Awal

Penerimaan (KodeTrm,

KodeSpl, NomorBon, TotalTrm, Kode)

Primary key KodeTrm Foreign key Kode references Petugas (Kode)

Foreign key KodeSpl references Supplier (KodeSpl)

Barang (Kode_Barang, Nama_Barang, Harga_Beli, Harga_Jual, Jumlah_Barang, Satuan, StockMinimal) Primary key Kode_Barang

Kondisi Akhir

DetailPenerimaan (KodeTrm, KodeBarang, StockAwal, StockAkhir, JumlahMinta )

(59)

Hasil Relasi

Tabel 3.15 Hasil Relasi

Barang Barang (Kode_Barang, Nama_Barang,

Harga_Beli, Harga_Jual, Jumlah_Barang, Satuan, StockMinimal)

Primary key Kode_Barang

Petugas Petugas(Kode, Nama, PasswordPtg,

StatusPtg)

Primary key Kode

Customer Customer (KodeCus, NamaCus,

AlamatCus, TeleponCus, PersnCus, EmailCus)

Primary key KodeCus

Supplier Supplier (KodeSpl, NamaSpl, AlamatSpl,

TeleponSpl, PersonSpl, EmailSpl). Primary Key : KodeSpl.

Penjualan Penjualan (Faktur_Penjualan, Tanggal,

Item, Total, Dibayar, Kembali, Kode, KodeCus)

Primary key Faktur_Penjualan Foreign key Kode references Petugas

(60)

(Kode)

Foreign key KodeCus references Customer (KodeCus)

Pembelian Pembelian (Faktur_Pembelian, Tanggal,

Item, Total, Dibayar, Kembali, Kode, KodeSpl)

Primary key Faktur_Pembelian Foreign key Kode references Petugas (Kode)

Foreign key KodeSpl references Supplier (KodeSpl)

Penerimaan Penerimaan (KodeTrm, KodeSpl,

NomorBon, TotalTrm, Kode). Primary Key : KodeTrm

Foreign key Kode references Petugas (Kode)

Foreign key KodeSpl references Supplier (KodeSpl)

Pengeluaran Pengeluaran(KodeKlr, Tanggal Klr,

Nomorbon, Totalmnt, Totalkrm, Ketkrm, KodeCus, Kode)

Primary key Kodeklr

(61)

(Kode)

Foreign key KodeCus references Customer (KodeCus)

Permintaan Permintaan (KodeMnt, TanggalMnt,

Nomorreff, TotalMnt, TotalkKrm, KetKirim, Kode, KodeCus) Primary key KodeMnt

Foreign key Kode references Petugas (Kode)

Foreign key KodeCus references Customer (KodeCus)

ReturPenjualan Retur (Faktur_Penjualan, Tanggal, Item, Total, Kode)

Foreign key Faktur_Penjualan

references Penjualan (Faktur_Penjualan) Foreign key Kode references Petugas (Kode)

(62)

3.Memvalidasikan relasi dengan menggunakan normalisasi.

Tahap ini bertujuan untuk memvalidasikan relasi dalam model data logikal lokal dengan menggunakan normalisasi. Normalisasi memastikan bahwa model yang akan dihasilkan adalah model yang memiliki redundansi seminimal mungkin.

Penjualan UNF

Penjualan = (Faktur_penjualan + tanggal + Item + Total + Dibayar + Kembali + Kode + KodeCus + Kode_Barang) 1NF

Penjualan = (@Faktur_penjualan + tanggal + Item + Dibayar + Kembali + Kode + KodeCus + Kode_Barang) 2NF

Penjualan = (@Faktur_penjualan + tanggal + Item + Dibayar + Kembali + Kode + KodeCus + Kode_Barang) DetailPenjualan = (@Faktur_Penjualan, @Kode_Barang, Nama_Barang, Harga_Jual, Jumlah_Barang).

Barang = (@Kode_Barang, Nama_Barang, Harga_Jual). 3NF

Penjualan = (@Faktur_penjualan + tanggal + Item + Dibayar + Kembali + Kode + KodeCus + Kode_Barang) DetailPenjualan = (@Faktur_Penjualan, @Kode_Barang, Nama_Barang, Harga_Jual, Jumlah_Barang).

(63)

Barang = (@Kode_Barang, Nama_Barang, Harga_Jual, Harga_Beli, Jumlah_Barang, Satuan, StockMinimal). Petugas = (@Kode, Nama, PasswordPtg, StatusPtg). Customer = (@KodeCus, NamaCus, AlamatCus, TeleponCus, PersnCus, EmailCus)

Pembelian UNF

Pembelian = (Faktur_Pembelian + tanggal + Item + Dibayar + Kembali + Kode + KodeSpl + Kode_Barang) 1NF

Pembelian = (@Faktur_Pembelian + tanggal + Item + Dibayar + Kembali + Kode + KodeSpl + Kode_Barang) 2NF

Pembelian = (@Faktur_Pembelian + tanggal + Item + Dibayar + Kembali + Kode + KodeSpl + Kode_Barang) DetailPembelian = (@Faktur_Pembelian, @Kode_Barang, Nama_Barang, Harga_Beli, Jumlah_Barang).

Barang = (@Kode_Barang, Nama_Barang, Harga_Beli). 3NF

Pembelian = (@Faktur_Pembelian + tanggal + Item + Dibayar + Kembali + Kode + KodeSPl + Kode_Barang) DetailPembelian = (@Faktur_Pembelian, @Kode_Barang, Nama_Barang, Harga_Beli, Jumlah_Barang).

(64)

Barang = (@Kode_Barang, Nama_Barang, Harga_Jual,Harga_Beli,Jumlah_Barang, Satuan, StockMinimal).

Petugas = (@Kode, Nama, PasswordPtg, StatusPtg). Supplier = (@KodeSpl, NamaSpl, AlamatSpl, TeleponSpl, PersonSpl, EmailSpl)

Penerimaan UNF

Penerimaan = (KodeTrm, KodeSpl, NomorBon, TotalTrm, Kode)

1NF

Penerimaan = (@KodeTrm, KodeSpl, NomorBon, Kode) 2NF

Penerimaan = (@KodeTrm, KodeSpl, NomorBon, Kode) DetailPenerimaan = (@KodeTrm, @KodeBarang,

StockAwal, StockAkhir, JumlahMinta). Barang = (@Kode_Barang, Nama_Barang, Jumlah_Barang).

3NF

Penerimaan = (@KodeTrm, KodeSpl, NomorBon, Kode) DetailPenerimaan = (@KodeTrm, @KodeBarang,

(65)

Barang = (@Kode_Barang, Nama_Barang, Harga_Jual,Harga_Beli,Jumlah_Barang, Satuan, StockMinimal).

Petugas = (@Kode, Nama, PasswordPtg, StatusPtg). Supplier = (@KodeSpl, NamaSpl, AlamatSpl, TeleponSpl, PersonSpl, EmailSpl)

Pengeluaran UNF

Pengeluaran = (KodeKlr, Tanggal Klr, Nomorbon, Totalmnt, Totalkrm, Ketkrm, KodeCus, Kode) 1NF

Pengeluaran = (@KodeKlr, Tanggal Klr, Nomorbon, Ketkrm, KodeCus, Kode)

2NF

Pengeluaran = (@KodeKlr, Tanggal Klr, Nomorbon, Ketkrm, KodeCus, Kode)

DetailKeluar = (@KodeKlr, Kode_Barang, StockAwal, StockAkhir, Dikirim, JumlahMinta, Ket)

Barang = (@Kode_Barang, Nama_Barang, Jumlah_Barang).

3NF

Pengeluaran = (@KodeKlr, Tanggal Klr, Nomorbon, Ketkrm, KodeCus, Kode)

(66)

DetailKeluar = (@KodeKlr, Kode_Barang, StockAwal, StockAkhir, Dikirim, JumlahMinta, Ket)

Barang = (@Kode_Barang, Nama_Barang, Harga_Jual,Harga_Beli,Jumlah_Barang, Satuan, StockMinimal).

Petugas = (@Kode, Nama, PasswordPtg, StatusPtg). Customer = (@KodeCus, NamaCus, AlamatCus, TeleponCus, PersnCus, EmailCus)

Permintaan UNF

Permintaan = (KodeMnt, TanggalMnt, Nomorreff, TotalMnt, TotalkKrm, KetKirim, Kode, KodeCus) 1NF

Permintaan = (@KodeMnt, TanggalMnt, Nomorreff, KetKirim, Kode, KodeCus)

2NF

Permintaan = (@KodeMnt, TanggalMnt, Nomorreff, KetKirim, Kode, KodeCus)

DetailMintaCus = (@KodeMnt, Kode_Barang, Stock, JumlahMinta, Dikirim, Ket)

Barang = (@Kode_Barang, Nama_Barang, Jumlah_Barang,StockMinimal).

(67)

3NF

Permintaan = (@KodeMnt, TanggalMnt, Nomorreff, KetKirim, Kode, KodeCus)

DetailMintaCus = (@KodeMnt, Kode_Barang, Stock, JumlahMinta, Dikirim, Ket)

Barang = (@Kode_Barang, Nama_Barang, Harga_Jual, Harga_Beli ,Jumlah_Barang, Satuan, StockMinimal). Petugas = (@Kode, Nama, PasswordPtg, StatusPtg). Customer = (@KodeCus, NamaCus, AlamatCus, TeleponCus, PersnCus, EmailCus)

4. Menentukan Integrity Constraint.

Integrity Constraint adalah batasan-batasan yang digunakan untuk menjaga agar basis data tidak menjadi inkonsisten.

Ada empat tipe Integrity Constraint, yaitu : 1. Required Data

Beberapa atribut harus selalu berisi sebuah nilai yang valid, atribut tidak bernilai “NULL”. Batasan ini sudah diidentifikasikan dalam tahap dari tabel 4.3 sampai 4.11.

(68)

2. Domain Constraint

Setiap atribut mempunyai domain sendiri, yaitu sekumpulan nilai yang sah. Batasan ini sudah diidentifikasikan dalam tahap 4.12.

3. Entity Integrity

Primary key dari setiap entitas tidak boleh bernilai “NULL”. Setiap entitas harus mempunyai sebuah primary key. Batasan ini sudah diidentifikasikan dalam tahap 4.13. 4. Referential Integrity

Jika sebuah foreign key memiliki sebuah nilai, maka nilai tersebut harus menunjuk ke sebuah baris yang ada pada relasi parent. Adapun referential integrity constraint untuk relasi-relasi yang telah diciptakan sebelumnya, batasan ini terlihat dalam tabel berikut ini.

Barang (Kode_Barang, Nama_Barang, Harga_Beli, Harga_Jual, Jumlah_Barang, Satuan, StockMinimal) Primary key Kode_Barang

Petugas(Kode, Nama, PasswordPtg, StatusPtg) Primary key Kode

Customer (KodeCus, NamaCus, AlamatCus, TeleponCus, PersnCus, EmailCus)

Primary key KodeCus.

(69)

PersonSpl, EmailSpl). Primary Key : KodeSpl.

Penjualan (Faktur_Penjualan, Tanggal, Item, Total, Dibayar, Kembali, Kode, KodeCus)

Primary key Faktur_Penjualan

Foreign key Kode references Petugas (Kode)

Foreign key KodeCus references Customer (KodeCus) DetailPenjualan (Faktur_Penjualan, Kode_Barang, Nama_Barang, Harga_Jual, Subtotal, Jumlah)

Pembelian (Faktur_Pembelian, Tanggal, Item, Total, Dibayar, Kembali, Kode, KodeSpl)

Primary key Faktur_Pembelian

Foreign key Kode references Petugas (Kode)

Foreign key KodeSpl references Supplier (KodeSpl) DetailPembelian (Faktur_Pembelian, Kode_Barang, Nama_Barang, Harga_Beli, Subtotal, Jumlah)

Penerimaan (KodeTrm, KodeSpl, NomorBon, TotalTrm, Kode).

Primary Key : KodeTrm

Foreign key Kode references Petugas (Kode)

Foreign key KodeSpl references Supplier (KodeSpl) DetailPenerimaan (KodeTrm, KodeBarang, StockAwal, StockAkhir, JumlahMinta )

(70)

Pengeluaran(KodeKlr, Tanggal Klr, Nomorbon, Totalmnt, Totalkrm, Ketkrm, KodeCus, Kode)

Primary key Kodeklr

Foreign key Kode references Petugas (Kode)

Foreign key KodeCus references Customer (KodeCus) DetailKeluar (KodeKlr, Kode_Barang, StockAwal, StockAkhir, Dikirim, JumlahMinta, Ket)

Permintaan (KodeMnt, TanggalMnt, Nomorreff, TotalMnt, TotalkKrm, KetKirim, Kode, KodeCus)

Primary key KodeMnt

Foreign key Kode references Petugas (Kode)

Foreign key KodeCus references Customer (KodeCus) DetailMintaCus (KodeMnt, Kode_Barang, Stock, JumlahMinta, Dikirim, Ket)

Retur (Faktur_Penjualan, Tanggal, Item, Total, Kode) Foreign key Faktur_Penjualan

references Penjualan (Faktur_Penjualan) Foreign key Kode references Petugas (Kode)

5. Menggabungkan Model Data Logikal Lokal dengan Model Global.

Tujuannya adalah untuk menggabungkan data model logikal lokal yang individual menjadi data model logikal global

(71)

yang menggambarkan perusahaan. Berikut adalah relasi dari model data logikal global yang dapat dilihat pada tabel berikut ini:

Barang (Kode_Barang, Nama_Barang, Harga_Beli, Harga_Jual, Jumlah_Barang, Satuan, StockMinimal) Primary key Kode_Barang

Petugas(Kode, Nama, PasswordPtg, StatusPtg) Primary key Kode

Customer (KodeCus, NamaCus, AlamatCus, TeleponCus, PersnCus, EmailCus)

Primary key KodeCus.

Supplier (KodeSpl, NamaSpl, AlamatSpl, TeleponSpl, PersonSpl, EmailSpl).

Primary Key : KodeSpl.

Penjualan (Faktur_Penjualan, Tanggal, Item, Total, Dibayar, Kembali, Kode, KodeCus)

Primary key Faktur_Penjualan

Foreign key Kode references Petugas (Kode)

Foreign key KodeCus references Customer (KodeCus) DetailPenjualan (Faktur_Penjualan, Kode_Barang, Nama_Barang, Harga_Jual, Subtotal, Jumlah)

Pembelian (Faktur_Pembelian, Tanggal, Item, Total, Dibayar, Kembali, Kode, KodeSpl)

(72)

Primary key Faktur_Pembelian

Foreign key Kode references Petugas (Kode)

Foreign key KodeSpl references Supplier (KodeSpl) DetailPembelian (Faktur_Pembelian, Kode_Barang, Nama_Barang, Harga_Beli, Subtotal, Jumlah)

Penerimaan (KodeTrm, KodeSpl, NomorBon, TotalTrm, Kode).

Primary Key : KodeTrm

Foreign key Kode references Petugas (Kode)

Foreign key KodeSpl references Supplier (KodeSpl) DetailPenerimaan (KodeTrm, KodeBarang, StockAwal, StockAkhir, JumlahMinta )

Pengeluaran(KodeKlr, Tanggal Klr, Nomorbon, Totalmnt, Totalkrm, Ketkrm, KodeCus, Kode)

Primary key Kodeklr

Foreign key Kode references Petugas (Kode)

Foreign key KodeCus references Customer (KodeCus) DetailKeluar (KodeKlr, Kode_Barang, StockAwal, StockAkhir, Dikirim, JumlahMinta, Ket)

Permintaan (KodeMnt, TanggalMnt, Nomorreff, TotalMnt, TotalkKrm, KetKirim, Kode, KodeCus)

Primary key KodeMnt

(73)

Foreign key KodeCus references Customer (KodeCus) DetailMintaCus (KodeMnt, Kode_Barang, Stock, JumlahMinta, Dikirim, Ket)

Retur (Faktur_Penjualan, Tanggal, Item, Total, Kode) Foreign key Faktur_Penjualan

references Penjualan (Faktur_Penjualan) Foreign key Kode references Petugas (Kode)

Dari hasil data model logikal global, maka dapat digambarkan global Entity Relationship Diagram (ERD) yang terlihat dalam gambar berikut ini :

(74)
(75)

3. Perancangan Basis Data Fisikal

Tahap perancangan basis data fisikal merupakan tahapan terakhir dalam perancangan sistem basis data, dimana perancangan basis data fisikal meliputi tahapan sebagai berikut:

3.1 Menerjemahkan model data logikal global untuk DBMS. 3.1.1 Mendesain Relasi - Relasi Dasar.

Tujuan dari tahap ini adalah untuk mengidentifikasi relasi dasar dalam model data global logikal pada DBMS dengan menggunakan DBDL (Database Design Languages). Untuk memulai proses perancangan fisikal, di haruskan memeriksa dan menggunakan informasi dari relasi yang dihasilkan selama perancangan basis data logikal sebelumnya. Setiap relasi yang diidentifikasikan dalam data model global logikal yang akan didefinisikan terdiri dari:

a. Nama dari relasi

b. Atribut-atribut yang ada didalam relasi c. Primary key dan Foreign key

d. Derived atribut (belum ada)

e. Referential integrity constraint untuk setiap Foreign key

(76)

Dalam kamus data ini di dapatkan beberapa atribut, yaitu:

a. Domain atribut

b. Nilai awal suatu atribut

c. Keterangan apakah atribut bisa null.

Relasi – relasi dasarnya adalah sebagai berikut : Tabel 3.16. Relasi Dasar Barang

Barang

Kode_Barang Kode Barang Not Null Nama_Barang Nama Barang Not Null Harga_Beli Harga Beli Not Null Harga_Jual Harga Jual Not Null Jumlah_Barang Jumlah Barang Not Null

Satuan Satuan Not Null

StockMinimal Stock Minimal Not Null

Primary key (Kode_Barang).

Domain Kode_Barang variabel karakter panjang string 20 Domain Nama_Barang variabel karakter

panjang string 50 Domain Harga_Beli variabel integer Domain Harga_Jual variabel integer Domain Jumlah_Barang variabel integer

(77)

Domain Satuan variabel karakter panjang string 10

Domain StockMinimal variabel integer

Tabel 3.17 Relasi Dasar Petugas Petugas

Kode Kode Petugas Not Null Nama Nama Petugas Not Null PasswordPtg PasswordPetugas Not Null StatusPtg Status Petugas Not Null

Primary key (Kode).

Domain Kode variabel karakter panjang string 20

Domain Nama variabel karakter panjang string 30

Domain PasswordPtg variabel karakter panjang string 10

Domain StatusPtg variabel karakter panjang string 20

(78)

Tabel 3.18. Relasi Dasar Customer Customer

KodeCus Kode Customer Not Null NamaCus NamaCustomer Not Null AlamatCus AlamatCustomer Not Null TeleponCus TeleponCustomer Not Null PersonCus Person Customer Not Null EmailCus Email Customer Not Null

Primary key (KodeCus).

Domain KodeCus variabel karakter panjang string 20

Domain NamaCus variabel karakter panjang string 30

Domain AlamatCus variabel karakter panjang string 50

Domain TeleponCus variabel karakter panjang string 20

Domain PersonCus variabel karakter panjang string 30

Domain EmailCus variabel karakter panjang string 30

(79)

Tabel 3.19. Relasi Dasar Supplier Supplier

KodeSpl Kode Supplier Not Null NamaSpl Nama Supplier Not Null AlamatSpl Alamat Supplier Not Null TeleponSpl TeleponSupplier Not Null PersonSpl Person Supplier Not Null EmailSpl Email Supplier Not Null

Primary key (KodeSpl).

Domain KodeSpl variabel karakter panjang string 20

Domain NamaSpl variabel karakter panjang string 30

Domain AlamatSpl variabel karakter panjang string 50

Domain TeleponSpl variabel karakter panjang string 30

Domain PersonSpl variabel karakter panjang string 30

Domain EmailSpl variabel karakter panjang string 30

Gambar

Gambar 3.1 Diagram Konteks PT. BAHAGIA IDKHO MANDIRI
Gambar 3.4 Diagram Level 1 Transaksi Penjualan  3.5.5 Diagram Level 1 Transaksi Penerimaan dan Pengeluaran
Gambar 3.7 Diagram Level 1 Transaksi Retur Penjualan
Tabel 3.1 Identifikasi Tipe Entity
+7

Referensi

Dokumen terkait

material Material dibeli melalu PO dan digunakan sesuai SPK PurchaseBill Semua tagihan atas pembelian material oleh supplier Tagihan pembelian Menunjukan jumlah

Fungsi Pembelian digunakan untuk menginputkan barang-barang yang dibeli dari supplier. Dimana fungsi pembelian bisa dilakukan tanpa harus melakukan order

DFD Level 0 P1 PEMBELIAN P2 RETUR PEMBELIAN P3 PEMBAYARAN P4 MEMO D15 BELI.DAT P6 CETAK LAPORAN UTANG k BAGIAN AKUNTANSI i BAGIAN PEMBELIAN D1 UTANG.DAT D6 TBREK.DAT h MANAJEMEN

prosedur pembelian dan penjualan sangat penting untuk dilakukan, baik itu dari proses pengadaan sampai dengan pengolahan barang yang telah dibeli oleh perusahaan untuk dijual

Bagian pembelian menerima dokumen permintaan barang kurang, kemudian bagian pembelian mengecek barang di gudang apakah sesuai dengan yang dicatat didokumen permintaan barang

persediaan, supplier sebagai identitas data dan juga mendata identitas supplier itu sendiri, pelanggan yang melakukan pembelian barang dan juga transaksi pembelian barang, admin

Jika stok barang habis bagian gudang membuat data pemesanan barang kepada supplier dan mendapatkan bukti pengiriman barang dari supplier.. Bagian gudang mencatat data penerimaan

Surat order pembelian, bukti transaksi setoran serta kwitansi pembelian diserahkan kepada Supplier untuk dikirim barang pesanan pembelian dan dibuatkannya