BAB 4 PERANCANGAN BASIS DATA Usulan Prosedur yang...

120
94 BAB 4 PERANCANGAN BASIS DATA 4.1. Usulan Prosedur yang Baru 4.1.1 Proses Service Kendaraan Ada 2 jenis pelanggan yang ada melakukan service kendaraan yaitu perorangan dan perusahaan. Pelanggan perorangan yang ingin melakukan service akan didata oleh kasir ke dalam form SPK, data yang diinput adalah data kendaraan beserta keluhan kendaran dan nama mekanik yang akan mengerjakan service, kemudian akan di print dan diberikan ke mekanik. Mekanik akan mengerjakan service berdasarkan SPK, jika ada pergantian sparepart maka mekanik akan mengkonfirmasi ke pelanggan apabila disetujui maka kasir akan menambahkan di form SPK sebagai penambahan keluhan kendaraan,dan setelah itu kasir akan menginputpengeluaran sparepart ke form jual sparepart. Kemudian staff gudang membawa sparepart dan kasir akan mengupdate form Inventory. Setelah pengerjaan selesai kasir akan mencetak struk pembayaran berdasarkan SPK dan struk jual sparepart. Untuk Perusahaanyang ingin berlangganan service kendaraan dinasnya di Dewi Motor, membuat kesepakatan kontrak dengan manajer tentang prihal kedua belah p ihak yang bersangkutan dengan membahas service berkala kendaraan dinas dan sistem pembayaran service kendaraan dinas perusahaan,setelah terjadi kesepakatan kendaraan dinas perusahaan langsung bisa mendapatkan

Transcript of BAB 4 PERANCANGAN BASIS DATA Usulan Prosedur yang...

94

BAB 4

PERANCANGAN BASIS DATA

4.1. Usulan Prosedur yang Baru

4.1.1 Proses Service Kendaraan

Ada 2 jenis pelanggan yang ada melakukan service kendaraan yaitu

perorangan dan perusahaan.

Pelanggan perorangan yang ingin melakukan service akan didata oleh

kasir ke dalam form SPK, data yang diinput adalah data kendaraan beserta

keluhan kendaran dan nama mekanik yang akan mengerjakan service,

kemudian akan di print dan diberikan ke mekanik. Mekanik akan

mengerjakan service berdasarkan SPK, jika ada pergantian sparepart maka

mekanik akan mengkonfirmasi ke pelanggan apabila disetujui maka kasir

akan menambahkan di form SPK sebagai penambahan keluhan

kendaraan,dan setelah itu kasir akan menginputpengeluaran sparepart ke form

jual sparepart. Kemudian staff gudang membawa sparepart dan kasir akan

mengupdate form Inventory. Setelah pengerjaan selesai kasir akan mencetak

struk pembayaran berdasarkan SPK dan struk jual sparepart.

Untuk Perusahaanyang ingin berlangganan service kendaraan

dinasnya di Dewi Motor, membuat kesepakatan kontrak dengan manajer

tentang prihal kedua belah p

ihak yang bersangkutan dengan membahas service berkala kendaraan

dinas dan sistem pembayaran service kendaraan dinas perusahaan,setelah

terjadi kesepakatan kendaraan dinas perusahaan langsung bisa mendapatkan

95

jasa service dari bengkel dengan syarat membawa surat rekomendasi service

dan tanda tangan penanggung jawab perusahaan,cap serta keluhan kendaraan

dinas.dari surat rekomendasi tersebut kasir akan mengisi form SPK

perusahaan yang kemudian akan diprint dan diberikan ke mekanik. Mekanik

kemudian akan men-service kendaraan, apabila ada pergantian sparepart

mekanik akan mengkonfirmasi ke supir jika disetujui kasir akan meminta

staff gudang untuk menyediakan sparepart yang dibutuhkan dan akan

diupdate Inventory oleh kasir. Setelah service selesai akan dimasukan ke

database service perusahaan. Setiap 5 hari sebelum tanggal jatuh tempo,

aplikasi akan memberikan signal berupa warning message dan kasir akan

menelpon perusahaan tentang tanggal jatuh tempo pembayaran.Kemudian

perusahaan membayar via kurir.Sebagai bukti kasir akan. mencetak struk

total pembayaran berdasarkan semua service kendaraan dinas perusahaan

yang ada di database dan struk sparepart berdasarkan sparepart perusahaan.

4.1.2 Proses Penjualan

Pelanggan yang hanya ingin membeli sparepart tanpa melakukan

service langsung ke kasir dan kasir akan mendata di form jual

sparepart.Apabila sparepart yang dibeli pelanggan tidak sesuai, pelanggan

bisa meretur sparepart yang dibeli dengan syarat segel belum rusak dan

serahkan bukti kwitansi barang yang ingin di retur, dan akan diinput ke form

retur barang sebagai bukti retur,apabila retur barang harga nya berbeda

dengan harga barang yang salah maka akan di update dan akan ada

keterangan retur barang di database.

96

4.1.3. Perancangan Basisdata Konseptual

Perancangan basisdata konseptual meliputi langkah – langkah sebagai

berikut:

• Identifikasi Tipe Entitas

• Identifikasi Tipe Relationship

• Identifikasi dan Asosiasikan Atribut dengan Tipe Entitas dan Tipe

Relationship

• Menentukan Domain Atribut

• Penentuan Atribut Candidate Key dan Primary Key

• Validasi Model Konseptual dengan user transaction

4.1.3.1. Identifikasi Tipe Entitas

Hasil identifikasi tipe entitas yang dilakukan akan ditampilkan dalam

tabel berikut :

Entity Name Description Occurrence

Pelanggan Perusahaan / individu yang membeli barang dan melakukan service dari CV.Dewi Bersaudara

Pelanggan membeli barang dan dapat mengajukan retur atas barang dan melakukan service

Karyawan Karyawan yang bekerja kepada CV.Dewi Bersaudara

Seluruh karyawan bekerja kepada CV.Dewi Bersaudara

Supplier Supplier barang bagi CV.Dewi Bersaudara

Setiap Supplier yang menjadi rekanan CV.Dewi Bersaudara

Barang Jenis – jenis barang yang dimiliki oleh perusahaan dan juga banyaknya barang yang dimiliki oleh perusahaan

Seluruh jenis item yang di jual oleh CV.Dewi Bersaudara

Catatan Retur Barang

Retur barang dari pelanggan yang dikembalikan kepada perusahaan

Pelanggan mengembalikan barang yang rusak kepada

97

CV.Dewi Bersaudara

Surat Permohonan Pembelian Barang

Semua detail yang menyangkut pembelian barang

Setiap pemesanan pembelian barang pada supplier

Penjualan Seluruh detail barang yang di pesan oleh pelanggan

Penjualan terhadap pelanggan mengurangi stok barang di gudang

Surat Service Mencatat seluruh keluhan kendaraan pelanggan

Melayani keluhan kendaraan pelanggan

Surat Permintaan Barang

Semua detail permintaan pengeluaran barang

Barang yang di beli pelanggan

Catatan pengeluaran Barang

Mencatat setiap barang keluar Mencatat laporan barang keluar

Surat Pemesanan Barang

Mencatat barang yang habis/kosong Membuat laporan penyediaan stok barang

Nota Pembayaran

Mencetak nota pembayaran yang akan di bayar pelanggan ,sesuai keluhan dan barang apa saja yang di beli

Membuat nota pembayaran yang akan d bayar pelanggan

Surat Penerimaan Barang

Menerima detail barang masuk Membuat laporan barang masuk

Nota Pembelian Barang

Menerima nota pembelian barang dari supplier

Membuat laporan total pembelian barang dari supplier

Surat Tagihan Pembayaran

Mengatur Bilyet Giro(BG) untuk membayar ke supplier

Mengeluar kan Bilyet Giro(BG) dan di berikan ke supplier

Tabel 4.1 Tabel Identifikasi Entitas

4.1.3.2. Identifikasi Tipe Relationship

Hasil identifikasi tipe relasi yang telah dirancang akan ditampilkan

dalam tabel berikut :

98

Entity Name Multiplicity Relationship Entity Name Multiplicity

Supplier 1...1 Menerima Surat pemesanan barang

1...*

Pelanggan 1...1 Menerima Surat service 1...1

Pelanggan 1...1 Memesan Penjualan 1...*

Penjualan 1...* Mengurangi Barang 1...*

Karyawan 1...1 Melakukan Surat service 1...*

Surat sevice 1...* Memesan Barang 1...*

Nota pembayaran 1...1 mencetak Surat sevice 1...1

Surat permintaan barang

1...* Mencetak Surat service 1...1

Barang 1...* Mencetak Catata pengeluaran barang

1...*

Nota pembayaran 1..1 Mencetak Penjualan 1...*

Surat permohonan pembelian

1...* Memesan Barang 1...*

Surat pemesanan barang

1...* Mencetak Surat pemohonan pembelian

1...1

Surat tagihan pembayaran

1...* Membayar Supplier 1...1

Nota pembelian barang

1...* Mencetak Surat tagihan pembayaran

1...1

Nota penerimaan barang

1...1 Mencetak Nota pemesanan barang

1...1

Catatan retur barang

1...* Melakukan Pelanggan 1...1

Catatan catat retur barang

1...* Mencetak Catatan pengeluaran barang

1...1

Tabel 4.2 Tabel Tipe Relasi

99

Dari hasil identifikasi tipe entitas dan relasi di atas, maka ERD dari CV.Dewi

Bersaudaraadalah sebagai berikut :

Gambar 4.1 ER Diagram

4.1.3.3 Identifikasi dan Asosiasikan Atribut dengan Tipe Entitas

atau Tipe Relationship

Atribut – atribut dari tipe entitas di atas ditampilkan dalam

tabel sebagai berikut

Nama entitas : karyawan

Atribut Type dan Panjang data

NULL Multi Value

Keterangan

KD_Karyawan Char (10) No No Kode karyawan Nama_karyawan Varchar (30) No No Nama karyawan Alamat_karyawan Varchar (50) No No Alamat karyawan No_telp_karyawan Varchar (15) No No telp karyawan Jabatan_karyawan Gender No No Jenis jabatan

100

Jenis kelamin Gender No No Jenis kelamin

Nama entitas : pelanggan

Atribut Type dan Panjang data

Null Multi Value

Keterangan

KD_pelanggan Char (10) No No Kode pelanggan Nama_pelanggan Varchar (30) No No Nama pelanggan Alamat_pelanggan Varchar (50) No No Alamat pelanggan No_telp_pelanggan Varchar (15) No No Telp pelanggan Email_pelanggan Varchar (30) Yes No Email pelanggan

Nama entitas : barang

Atribut Type dan Panjang data

Null Multi Value

Keterangan

KD_barang Char (10) No No Kode barang Nama _barang Varchar (20) No No Nama barang Harga_barang Int Yes No Harga satuan barang Jumlah_barang Int Yes No Jumlah barang Jenis barang Gender No No Jenis barang

Nama entitas : supplier

Atribut Type dan Panjang data

Null Multi value Keterangan

KD_Supplier Char (10) No No Kode supplier Nama _supplier Varchar (20) No No Nama supplier Alamat_supplier Varchar (50) No No Alamat supplier No_telp_supplier Varchar (15) No No No telp supplier Nama_Product varchar

Nama entitas : surat service

Atribut Type dan panjang data

Null Multi Value

Keterangan

KD_surat_service Char (10) No No Kode surat service Jenis_service Gender No No Jenis service KD_karyawan Char (10) No No Kode karyawan KD_pelanggan Char (10) No No Kode pelanggan KD_barang Char (10) Yes No Nama barang Tanggal Date time No No Tanggal service

101

Keterangan Varchar (200)

Yes Yes Keterangan service

Nama entitas : nota pembayaran Atribut Type dan

Panjang data

Null Multi Value

Keterangan

KD _nota_pembayaran

Char (10) No No Kode nota pembayaran

Tanggal Date Time Yes No Tanggal pembuatan nota pembayaran

KD_surat_service Char (10) No No Kode surat service Jumlah_bayar Int No No Total harga yang

dibayar Jatuh tempo Date time yes No Tanggal jatuh tempo Nama entitas : surat permintaan barang Atribut Type dan

Panjang data Null Multi

Value Keterangan

KD_SPB Char (10) No No Kode SPB KD_barang Char (10) No No Kode barang Jumlah_barang Int No No Jumlah barang yang di

minta Tanggal Date time No No Tanggal permintaan

barang Nama entitas : surat permohonan pembelian barang Atribut Type dan

Panjang data Null Multi value Keterangan

Tanggal_permohonan Date time No No Tanggal permohananbarang

Nama_barang Varchar (20) NO No Nama barang Jumlah_barang Int No No Jumlah yang ingin

dipesan KD_PPB Char (10) No No Kode PPB Nama entitas : Surat Pemesanan Barang Atribut Type dan

Panjang data Null Multi

value Keterangan

KD_SPB Char(10) No No Kode surat pemesanan barang

KD_PPB Char(10) No No Kode permohonan pembelian barang

KD_barang Char(10) No No Kode barang

102

Tanggal Date time No No Tanggal pemesanan barang

Nama Entitas:Surat penerimaan Barang

Nama Entitas:Surat Tagihan Pembayaran Atribut Type dan

Panjang data

Null Multi Value

Keterangan

KD_surat_tagihan_pembayaran Char(10) No No Kode surat tagihan pembayaran

KD_surat_pemesanan barang Char(10) No No Kode surat pemesanan barang

Jumlah Int No No Jumlah pembayaran tagihan

Tanggal Date time No No Tanggal setiap pembayaran tagihan

Nama Entitas:Penjualan

Atribut Type dan Panjang data

Null Multi Value

Keterangan

KD_Penjualan Char(10) No No Kode Penjualan

KD_Barang Char(10) No No Kode Barang Jumlah_barang Int No No Jumlah

Barang

Atribut Type dan Panjang data

Null Multi Value

Keterangan

KD_Surat_penerimaan_barang Char(10) No No Kode surat penerimaan barang

Nama_barang Char(10) No No Nama barang Tanggal Date time No No Tanggal

penerimaan barang

Jumlah Int No No Jumlah barang KD_Surat_Pemesanan_barang Char(10) No no Kode surat

pemesanan barang

103

Tgl_penjualan Date time No No Tanggal penjualan

Harga_Total Int No No Harga keseluruhan penjualan

Nama Entitas: Catatan Retur Barang

Atribut Type dan Panjang data

Null Multi Value

Keterangan

KD_Catatan_Retur_Brg Char(10) No No Kode retur brg

KD_Nota_pembayaran Char(10) No No Kode nota penjualan

Tgl_catatan _retur_brg Date time No No Tgl terjadi nya retur barang

Jumlah_Barang Int No No Jumlah barang retur

4.1.3.4Menentukan Domain Atribut

Domain atribut adalah kumpulan nilai yang diperbolehkan

untuk satu atau lebih atribut. Domain merupakan fitur yang sangat

kuat dalam model relational. Setiap atribut di dalam relasi ditetapkan

dalam domain. Domain mungkin berbeda untuk tiap atribut, atau dua

atau lebih atribut mungkin ditetapkan dalam domain yang sama.Dari

hasil penentuan atribut maka didapat domain atribut sebagai berikut :

• Supplier

Nama Atribut Domain Atribut Kd_Supplier char dengan panjang 10 karakter, dua karakter pertama huruf,

tiga karakter selanjutnya berupa angka dengan nilai antara 1-999 Nama_Supplier varchar dengan panjang 20 karakter Alamat_Supplier varchar dengan panjang 40 karakter Nama_product char dengan panjang 20 karakter No_telp_Supplier varchar dengan panjang 15 karakter

104

Tabel 4.3 Domain Atribut Supplier

• Pelanggan

Nama Atribut Domain Atribut Kd_pelanggan char dengan panjang 10 karakter, dua karakter pertama huruf,

tiga karakter selanjutnya berupa angka dengan nilai antara 1-999

Nama_pelanggan varchar dengan panjang 30 karakter Alamat_pelanggan varchar dengan panjang 50 karakter No_telp_pelanggan varchar dengan panjang 15 karakter Email_pelanggan varchar dengan panjang 30 karakter

Tabel 4.4 Domain Atribut pelanggan

• Barang

Nama Atribut Domain Atribut KD_barang

char dengan panjang 6 karakter, dua karakter pertama huruf, empat karakter selanjutnya berupa angka dengan nilai antara 1-9999

Nama _barang varchar dengan panjang 30 karakter Harga_barang Int yang angka dengan nilai di antara 100 – 100000000 Jumlah_barang Int yang angka dengan nilai di antara 100 – 100000000 Jenis barang Varchar yang didalam yang isi berupa : akesoris , sparepart , Oli

Tabel 4.5 Domain Atribut Barang

• karyawan

Nama Atribut Domain Atribut Kd_Karyawan

char dengan panjang 10 karakter, dua karakter pertama huruf, tiga karakter selanjutnya berupa angka dengan nilai antara 1-999

Nama_Karyawan varchar dengan panjang 30 karakter Alamat_Karyawan varchar dengan panjang 50 karakter Jbtn_Karyawan Varchar dengan panjang 20 yang berisi : mekanik, SPG,

manager , kasir Jenis_kelamin Varchar dengan panjan 10 yang berisi : pria atau wanita No_Telp_Karyawan varchar dengan panjang 15 karakter

Tabel 4.6 Domain Atribut karyawan

105

• surat service

KD_surat_service char dengan panjang 10 karakter, tiga karakter pertama huruf, karakter berikutnya berupa angka

Jenis_service Varchar dengan panjang karakter 50 Tanggal Date Keterangan Varchar dengan panjang karakter 200

Tabel 4.7 Domain Atribut surat service

• Penjualan

KD_Penjualan char dengan panjang 10 karakter, tiga karakter pertama huruf, karakter berikutnya berupa angka.

Tgl_penjualan Date Jumlah_barang Int yang angka dengan nilai di antara 1- 1000 Harga total Int yang angka dengan nilai di antara 100 – 100000000

Tabel 4.8 Domain Atribut Penjualan

• Nota_ Pembayaran

KD_nota_pembayaran char dengan panjang 10 karakter, tiga karakter pertama huruf, karakter berikutnya berupa angka

Jatuh _tempo Date Jumlah_bayar Int yang angka dengan nilai di antara 100 – 100000000

Tabel 4.9 Domain Atribut Nota_Pembayaran

• Surat penerimaan Barang

KdPnrm char dengan panjang 10 karakter, tiga karakter pertama huruf, karakter berikutnya berupa angka

TglPnrm Date Nama_barang Varchar yang dengan panjang karakter 20 Jumlah Int yang angka dengan nilai di antara 1- 1000

Tabel 4.10 Domain Atribut Penerimaan

• ReturPenjualan

Catatan Return Barang

char dengan panjang 10 karakter, tiga karakter pertama huruf, karakter berikutnya berupa angka

Tgl_catatan _return_brg

Date

Jumlah Int yang angka dengan nilai di antara 1- 1000 Tabel 4.11 Domain Atribut Retur_Penjualan

106

• Surat Tagihan Pembayaran

KD_surat_tagihan_pembayaran char dengan panjang 10 karakter, tiga karakter pertama huruf, karakter berikutnya berupa angka

TglReturPemb Date Jumlah Int yang angka dengan nilai di antara 1- 1000

Tabel 4.12 Domain Atribut Surat_Tagihan_Pembayaran

• Surat Pemesanan Barang

KD_SPB char dengan panjang 10 karakter, tiga karakter pertama huruf, karakter berikutnya berupa angka

Tanggal Date Tabel 4.13 Domain Atribut Surat_Pemesanan_Barang

• surat permohonan pembelian barang

KD_surat_tagihan_pembayaran char dengan panjang 10 karakter, tiga karakter pertama huruf, karakter berikutnya berupa angka

Tanggal_permohonan Date Jumlah_barang Int yang angka dengan nilai di antara 1- 1000 Nama_barang Varchar dengan panjang karakter 20

Tabel 4.14 Domain Atribut Retur_Pemb

• surat permintaan barang

KD_SPB char dengan panjang 10 karakter, tiga karakter pertama huruf, karakter berikutnya berupa angka

Tanggal_permohonan Date Jumlah_barang Int yang angka dengan nilai di antara 1- 1000

Tabel 4.15 Domain Atribut ReturPermintaan barang

4.1.3.5. Penentuan Atribut Candidate Key dan Primary Key

Candidate key adalah sekelompok atribut yang minimal dan

secara unik mengidentifikasikan tiap occurrence dari entity type.

107

Primary key adalah key yang dipilih untuk mengidentifikasikan secara

unik tiap occurrence dari entity type. ketika memilih primary key

diantara candidate key, kita dapat menggunakan panduan berikut

untuk membantu pemilihan primary key, yaitu :

- Candidate key dengan kumpulan atribut yang minimal

- Candidate key yang nilainya jarang berubah

- Candidate key dengan karakter – karakter yang paling

sedikit (untuk yang memiliki textual attributes)

- Candidate key dengan nilai maksimum paling rendah

(untuk yang memiliki numerical attributes)

- Candidate key yang paling mudah digunakan dari sudut

pandang user

Dari hasil panduan di atas, maka didapat candidate key dan

primary key sebagai berikut:

Entity Name Candidate Key Primary Key

Supplier KdSupp KdSupp

Pelanggan KdPlgn KdPlgn

Karyawan KdKrywn KdKrywn

Penjualan KdPnjln KdPnjln

Surat Service KdSrtService KdSrtService

Nota Pembayaran KdNtPmbyrn KdNtPmbyrn

Surat Permintaan Barang KdSrtPermintaanBrg KdSrtPermintaanBrg

Barang KdBrg,jenisBrg KdBrg

Surat Permohonan Pembelian barang KdSrtPermohonanPmblnBrg KdSrtPermohonanPmblnBrg

Catatan Retur Barang KdCttnReturBrg KdCttnReturBrg

108

Catatan Pengeluaran Barang KdCttnPengeluaranBrg KdCttnPengeluaranBrg

Surat Pemesanan Barang KdSrtPemesananBrg KdSrtPemesananBrg

Surat Penerimaan Barang KdSrtPenerimaanBrg KdSrtPenerimaanBrg

Nota Pembelian Barang KdNtPembelianBrg KdNtPembelianBrg

Surat Tagihan Pembayaran KdSrtTagihanPmbyrn KdSrtTagihanPmbyrn

Tabel 4.16 Tabel Atribut Candidate Key dan Primary Key

4.1.3.6Memeriksa Model dari Redudancy

Pada tahap ini, diperiksa apakah terdapat redudancy dan

menghilangkan redudancy yang ada. Dua langkah yang dilakukan

pada tahap ini adalah :

1. Memeriksa ulang hubungan one-to-one

Dari hasil identifikasi, terdapat hubungan one-to-one, sebagai

contoh : Pembelian dengan ReturPemb dan Penjualan dengan

ReturPenj. Dalam kasus ini, kedua entitas tersebut tidak dapat

disatukan bersama, karena Pembelian bukan merupakan sinonim dari

ReturPemb, begitu juga sebaliknya.

2. Menghilangkan hubungan yang redundant

Sebuah hubungan disebut redundant jika informasi yang sama

dapat diperoleh melalui hubungan yang lain. Pada kasus ini,

hubungan one-to-one antara Pembelian dan ReturPemb menghasilkan

informasi yang tidak dapat diperoleh dari hubungan yang lain.

Informasi tentang Pembelian yang diperoleh ReturPemb tidak dapat

109

diperoleh dari hubungan ReturPemb dengan Barang, begitu juga

sebaliknya. Sehingga, hubungan di atas tidak dapat dihilangkan.

Berikut ER Diagram Konseptual CV.Dewi Bersaudara dengan

penambahan Primary Key dan penambahan specialization /

generalization:

Gambar 4.2 ERD konseptual

4.1.3.7. Validasi Model Konseptual Dengan User Transaction

Validasi model konseptual dengan user transaction dapat

digunakan untuk memastikan bahwa rancangan konseptual dari

basisdata yang sedang dibangun dapat mendukung transakasi yang

dibutuhkan oleh pengguna. Hal ini dapat dilakukan dengan

menggunakan dua pendekatan:

110

1. Pendeskripsian transaksi

a. Tampilkan supplier yang memasok barang.

b. Tampilkan detail barang dari Nota pembelian Barang.

c. Tampilkan Notapembayaran saat cetak Nota

pembelian Barang.

d. Tampilkan detail Nota pembayaran oleh Pelanggan.

e. Tampilkan Pelanggan yang memesan barang.

f. Tampilkan Karyawan yang mengurus pembayaran.

g. Tampilkan Karyawan yang mengurus penjualan.

h. Tampilkan detail barang dari penjualan.

i. Tampilkan Karyawan yang mengurus Nota pembelian

Barang.

j. Tampilkan retur penjualan barang yang telah di review

terhadap penjualan.

k. Tampilkan Karyawan yang mengurus Surat

penerimaan Barang.

l. Tampilkan detail retur penjualan barang

Masukkan Data

a. Masukkan detail Supplier

b. Masukkan detail Pelanggan

c. Masukkan detail Barang

d. Masukkan detail Karyawan

e. Masukkan detail NotaPembelianBarang

111

f. Masukkan detail NotaPenjualan

g. Masukkan detail NotaPembayaran

h. Masukkan detail SuratPenerimaanBarang

i. Masukkan detail Retur NotaPenjualan

j. Masukkan detail SuratPemesananBarang

k. Masukkan detail Surat PermintaanBarang

l. Masukkan detail Nota PembayaranPembelian

m. Masukkan detail retur Barang

n. Masukkan detail PengeluaranBarang

o. Masukkan detail SuratService

Update / Delete data

a. Update detail Supplier

b. Update detail Pelanggan

c. Update detail Barang

d. Update detail Karyawan

4.1.4 Meninjau Local Conceptual Data Model Dengan Pengguna

Setelah dilakukan peninjauan model data konseptual lokal dengan

pengguna, model data sudah sesuai dengan representasi perusahaan.

4.1.4.1Perancangan Basisdata Logikal

112

Perancangan basisdata konseptual meliputi langkah – langkah sebagai

berikut:

• Menentukan Relasi – Relasi untuk Model data Logikal

• Validasi Model dengan Normalisasi

• Memvalidasi Relasi dengan user transaction

• Mendefinisikan kendala integrity

• Me-review logical data model dengan user

• Menggabungkan Logical Data Model kedalam Global Model

• Memeriksa untuk perkembangan lebih lanjut.

4.1.4.1.1 Menentukan Relasi - Relasi untuk Model Data Logikal

Dalam menentukan relasi – relasi untuk model data logikal meliputi

langkah – langkah sebagai berikut :

• Identifikasi Strong Entity

• Identifikasi Weak Entity

• Pembentukan relasi biner one to many (1:*)

• Pembentukan relasi biner one to one (1:*)

• Relasi 1:1 Recursive

• Tipe Relasi superclass / subclass

• Relasi biner many to many (*:*)

• Tipe relasi Kompleks

• Atribut multivalue

1. Identifikasi Strong Entity

113

• Supplier

(KdSupp, NmSupp, AlamatSupp, TelpSupp)

Primary Key KdSupp

• Pelanggan

(KdPlgn, NmPlgn, TelpPlgn)

Primary Key KdPlgn

• Barang

(KdBrg, Jenis, HargaBrg, JmlhBrg)

Primary Key KdBrg

• Karyawan

(KdKrywn, NmKrywn, JbtnKrywn, AlamatKrywn, TelpKrywn)

Primary Key KdKrywn

• Penjualan

(KdFakturPenj, TglPenj)

Primary Key KdFakturPenj

• NotaPembayaran

(KdNotaPmbyrn, TglNotaPmbyrn)

Primary Key KdNotaPmbyrn

• SuratPenerimaanBarang

114

(KdSrtPenerimaanBrg, TglSrtPenerimaanBrg)

Primary Key KdSrtPenerimaanBrg

• ReturPenj

(KdReturPenj,KdBrg, TglReturPenj)

Primary Key KdReturPenj

• SuratPermohonanPembelian

(KdSrtPermohonanPmbln, KdBrg,TglSrtPermohonanPmbln)

Primary Key KdSrtPermohonanPmbln

• CatatanPengeluaranBarang

(KdCttnPengeluaranBrg,KdBrg,KdSrtPermohonanPmbln)

Primary Key KdCttnPengeluaranBrg

• CatatanReturBarang

(KdCttnReturBrg,TglReturBrg,KdCttnPengeluaranBrg,KdNotaPembayar

an)

Primary Key KdCttnReturBrg

• PembayaranPembelian

(KdPmbyrnPmbln, TglPmbyrnPmbln,KdSupp)

Primary Key KdPmbyrnPmbln

• NotaPembelianBarang

(KdNtPmblnBrg,KdPmbyrnPmbln)

115

Primary Key KdNtPmblnBrg

• SuratService

(KdSrtSrvc,TglSrvc,KdBrg,KdKrywn,KdPlgn)

Primary Key KdSrtSrvc

• SuratPermintaanBarang

(KdSrtPrmntaanBrg,TglSrtPrmntaanBrg,KdSrtSrvc)

Primary Key KdSrtPrmntaanBrg

2. Identifikasi Weak Entity

Sampai pada tahap ini belum terdapat weak entity..

4.1.4.1.2. Validasi Model dengan Normalisasi

Tujuan dari langkah ini adalah untuk memvalidasi relasi-relasi dalam model

data logikal lokal menggunakan teknik normalisasi. Teknik normalisasi bertujuan

untuk menghasilkan model data yang konsisten, dan memiliki minimal redundansi

(pengulangan data yang tidak perlu) dan maksimum stabilitas. Proses normalisasi

dimulai dengan menentukan functional dependency antar atribut dalam suatu relasi.

Berikut ini adalah proses normalisasi untuk setiap entitas :

karyawan

Kdkrw NmKrw JbtnKrw AlamatKrwNotlpKrw Jeniskelamin

(3NF)

(Primary key)

116

Pegawai = KdPgw + NmPgw + JbtnPgw + AlamatPgw +jenis kelamin+

NoTlpPgw

Pelanggan

KDPlgn NmPlgn AlamatPlgn NotlpPlgn EmailPlgn

(3NF)

Customer = KDPlgn + NmPlgn + AlamatPlgn + NoTlpPlgn+EmailPlgn

Barang

KDBrg NamaBrg HargaBrg JumlahBrg JenisBrg

(3NF)

Barang = KDBrg + NamaBrg + HargaBrg + JumlahBrg + JenisBrg

Supplier

KDSupp NamaSupp AlamatSupp NoTlpSupp IDBrg

(3NF)

Supplier = KDSupp + NamaSupp + AlamatSupp + NoTlpSupp+IDBrg

Surat Service

(Primary key)

(Primary key)

(Primary key)

117

KDSuratService JenisService KDKaryawan KDPlgn KDBrg Tgl Ket

(3NF)

Surat Service = KDSuratService + JenisService + KDKaryawan + KDPlgn +

KDBrg

+ Tgl +ket

DETAIL_SURAT_SERVICE

KDSuratService KDBarang QtyBarang TotalBa

rang

(UNF)

Detail SuratService =KDSuratService + KDBarang + QtyBarang + TotalBarang

(3NF)

Detail SuratService =KDSuratService + KDBarang + QtyBarang

Nota Pembayaran

KDNotaPembayaran KDSuratService JmlhByr Jatuh tempo

(Primary key)

(Primary key)

(Primary key)

118

(3NF)

Nota Pembayaran = KDNotaPembayaran + KDSuratService + JmlhByr +

JatuhTempo

Surat Permintaan Barang

KDSuratPermintaanBrg

KDBrg JmlhBrg Tgl

(3NF)

Surat Permintaan Barang = KDSuratPermintaanBarang + KDBarang +

JmlhBarang + tanggal

DETAIL_SURAT_PERMINTAAN_BARANG

KDSPB KDBarang JmlhBarang QtyBarang

(UNF)

DETAIL_SPB = KDSPB + KDBarang + JlmlhBarang +QtySPB

(3NF)

Detail_SPB = KDSPB + KDBarang + JmlhBarang

Surat Permohonan Pembelian Barang

(Primary key)

(Primary key)

119

KDSuratPermohonanBrg TglPermohonan NamaBrg JmlhBrg

(3NF)

SuratPermohonan PembelianBarang = KDSPPB + TglPermohonan +NamaBrg

+JmlhBrg

DETAIL_SPPB

KDSrtPermohonanBrg KDBarang JmlhBarang QtyBarang

(UNF)

DETAIL_SPPB = KDSPPB + KDBarang + JmlhBarang + QtyBarang

(3NF)

DETAIL_SPPB = KDSPPB + KDBarang + JmlhBarang

Surat Pemesanan Barang

KDSuratPemesananBrg KDSuratPermohonanPembelianBrg KDBrg Tgl

(3NF)

SuratPemesananBarang=KDSuratPemesananBarang

+KDSuratPermohonanPembelianBarang

+ KDBarang + tanggal

(Primary key)

(Primary key)

(Primary key)

120

DETAIL_SURAT_PEMESANAN_BARANG

KDSrtPemesananBrg KDBarang JmlhBarang QtyBarang

(UNF)

Detail_Surat_pemesanan_Barang = KDSrtPemesananBrg + KDBarang +

JmlhBarang +QtyBarang

(3NF)

Detail_Surat_Pemesanan_Barang

KDSrtPemesananBrg + KD_Barang +JmlhBarang

Surat Penerimaan Barang

KDSuratPenerimaanBrg NamaBrg Tgl Jmlh KDSuratPemesananBarang

(3NF)

SuratPenerimaanBarang=

KDSuratPenerimaanBarang+NamaBarang+Tgl+Jumlah+KDSuratPemesananBarang

DETAIL_SURAT_PENERIMAAN_BARANG

KDSuratPenerimaanBrg KDBarang JmlhBarang QtyBarang

(UNF)

(Primary key)

(Primary key)

(Primary key)

121

DETAIL_PENERIMAAN_BARANG = KD_Penerimaan Barang +KD Barang

+Jmlh_barang +QtyBarang

(3NF)

DETAIL_PENERIMAAN_BARANG = KD Penerimaan Barang + KD Barang

+Jmlh_Barang

Surat Tagihan Pembayaran

KDSuratTagihanPembayaran KDSuratPemesananBrg Jmlh Tgl

(3NF)

SuratTagihanPembayaran=KDSuratTagihanPembayaran+KDSuratPemesananBrg+

jumlah+tgl

Penjualan

KDPenjualan KDPelanggan KDBarang JumlahBarang TglPenjualan Hargatotal

(3NF)

SuratTagihanPembayaran=KDPenjualan+KDPelanggan+KDBarang+JmlhBarang+T

gl+hargaTotal

DETAIL_PENJUALAN

(Primary key)

(Primary key)

122

KDPenjualan KDBarang JmlhBarang QtyBarang

(UNF)

DETAIL_PENJUALAN = KD Penjualan + KD_Barang +Jmlh_Barang +

Qty_Barang

(3NF)

DETAIL_PENJUALAN = KD Penjualan + KD Barang + Jmlh_Barang

Catatan retur barang

KD_Catatan_retur_brg KD_Nota_Pembayaran Tgl_Catatan_retur_brg JumlahBarang

(3NF)

Catatan_Retur_Barang=KD Cttn Retur Brg + KD Nota Pmbyrn + Tgl_Cttn_retur_Brg + Jmlh_Brg

Detail Catatan Retur Barang

KD_Catatan_retur_brg KD_Barang Jmlh_Barang Qty_Barang

(UNF)

Catatan Retur Barang = KD Cttn Retur Barang + KD Barang + Jmlh_Barang + Qty_Barang

(3NF)

(Primary key)

(Primary key)

(Primary key)

123

Catatan Retur Barang = KD Catatan Barang + KD Barang + Jmlh_Barang

ER Diagram Logika setelah normalisasi

4.1.4.1.3. Menvalidasi Relasi dengan User Transactions

Relasi – relasi dalam local logical data model sudah mendukung

transaksi – transaksi sesuai dengan kebutuhan pengguna. Transaksi –

transaksi tersebut antara lain sebagai berikut :

a. Tampilkan supplier yang memasok barang.

b. Tampilkan detail barang dari Nota pembelian Barang.

c. Tampilkan Notapembayaran saat cetak Nota pembelian Barang.

d. Tampilkan detail Nota pembayaran oleh Pelanggan.

e. Tampilkan Pelanggan yang memesan barang.

124

f. Tampilkan Karyawan yang mengurus pembayaran.

g. Tampilkan Karyawan yang mengurus penjualan.

h. Tampilkan detail barang dari penjualan.

i. Tampilkan Karyawan yang mengurus Nota pembelian Barang.

j. Tampilkan retur penjualan barang yang telah di review terhadap

penjualan.

k. Tampilkan Karyawan yang mengurus Surat penerimaan Barang.

l. Tampilkan detail retur penjualan barang

4.1.4.1.4 Mendefinisikan Kendala Integrity

Integrity constraint terdiri dari 6 tipe yaitu:

a. Required data

Constraint ini sudah diidentifikasi pada tahap perancangan basisdata

konseptual

b. Attribute domain constraint

Constraint ini sudah diidentifikasi pada tahap perancangan basisdata

konseptual

c. Multiplicity

Constraint ini sudah diidentifikasi pada tahap perancangan basisdata

konseptual

125

d. Entity Integrity

Constraint ini sudah diidentifikasi pada tahap perancangan basisdata

konseptual

e. Referential Integrity

Supplier (Kd_Supplier, Nm_Supplier, Alamat_Supplier, No_telp_supplier, kd_barang , nama_barang ) Primary Key Kd_Supplier Foreign Key Kd_barang references barang (Kd_barang ) ON UPDATE CASCADE ON DELETE NO ACTION Barang (KD_barang, Nama_barang, Harga_barang,jumlah_barang, jenis_barang Primary Key KdBrg Karyawan(KD_Karyawan,Nama_karyawan, Alamat_karyawan, No_telp_karyawan, Jabatan_karyawan, Jenis kelamin) Primary Key KD_Karyawan pelanggan(KD_pelanggan,Nama_pelanggan,Alamat_pelanggan No_telp_pelanggan,email_pelanggan ) Primary Key KdCust surat service (KD_surat_service, Jenis_service, KD_karyawan, KD_pelanggan, KD_barang, Tanggal, Keterangan ) Primary Key KD_surat_service Foreign Key KD_karyawan references karayawan(KD_karyawan) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key KD_pelanggan references pelanggan(KD_pelanggan) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key KD_barang references barang(KD_ KD_barang) ON UPDATE CASCADE ON DELETE NO ACTION Nota Pembayaran (KD _nota_pembayaran, KD_surat_service, Jumlah_bayar, Jatuh tempo) Primary Key KD _nota_pembayaran Foreign Key KD_surat_service references surat_service(KD_surat_service) ON UPDATE CASCADE ON DELETE NO ACTION Nota surat permintaan barang (KD_SPB, KD_barang, Jumlah_barang, Tanggal) Primary Key KD_SPB Foreign Key KD_barang, references barang (KD_barang,) ON UPDATE CASCADE ON DELETE NO ACTION surat permohonan pembelian barang (KD_PPB,KD_barang,Jumlah_barang, Tanggal_permohonan,nama_barang) Primary Key KD_PPB Foreign Key KD_barang, references barang (KD_barang,) ON UPDATE CASCADE ON DELETE NO ACTION Surat Pemesanan Barang (KD_SPB, KD_PPB , Tanggal) Primary Key KD_SPB Foreign Key KD_PPB references permohonan pembelian barang(KD_PPB) ON

126

UPDATE CASCADE ON DELETE NO ACTION Surat penerimaan Barang (KD_Surat_penerimaan_barang, KD_Surat_Pemesanan_barang, Tanggal) Primary Key KD_Surat_penerimaan_barang Foreign Key KD_Surat_Pemesanan_barangreferences Surat Pemesanan Barang (KD_Surat_Pemesanan_barang) ON UPDATE CASCADE ON DELETE NO ACTION Surat Tagihan Pembayaran (KD_surat_tagihan_pembayaran, KD_surat_penerimaan_barang, Tanggal) Primary Key KD_surat_tagihan_pembayaran Foreign Key , KD_surat_penerimaan_barang references Surat penerimaan Barang (KD_surat_penerimaan_barang) ON UPDATE CASCADE ON DELETE NO ACTION Penjualan (KD_Penjualan, KD_pelanggan, KD_Barang, Jumlah_barang, Harga_Total, Tgl_penjualan) Primary Key KD_Penjualan Foreign Key KD_pelanggan references pelanggan (KD_pelanggan ) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key KD_Barang references barang (KD_Barang) ON UPDATE CASCADE ON DELETE NO ACTION Catatan Return Barang (KD_Catatan_Return_Brg, KD_Nota_pembayaran, Jumlah_Barang, Tgl_catatan _return_brg) Primary Key KD_Catatan_Return_Brg Foreign Key KD_Nota_pembayaran references nota pembayaran (KD_Nota_pembayaran) ON UPDATE CASCADE ON DELETE NO ACTION

Tabel 4.17Relasi – relasi yang terbentuk untuk model data logikal

f. General Constraints

Perusahaan membatasi jumlah kapasitas maksimal gudang adalah 3000 item,

maka apabila pembelian melebihi batas maksimal, pembelian tersebut harus

disesuaikan dengan kapasitas gudang.

4.1.5 Perancangan Basisdata Fisikal

Perancangan basisdata Fisikal meliputi langkah – langkah sebagai berikut:

• Menerjemahkan logical data model untuk DBMS yang dipilih

• Merancang file organization dan indexes

127

• Merancang user view

• Merancang mekanisme keamanan

• Mempertimbangkan pengenalan redudancy control

• Mengawasi dan mengendalikan sistem operasional

4.1.5.1. Menterjemahkan Logical Data Model untuk DBMS yang Dipilih

Berikut ini langkah – langkah untuk menerjemahkan logical data model untuk

DBMS yang dipilih :

• Merancang relasi – relasi dasar

• Merancangan representasi untuk data derived

• Merancang general constraint

4.1.5.1.1Merancang Relasi – Relasi Dasar

Tujuan dari langkah ini adalah untuk menentukan bagaimana

merepresentasikan relasi dasar yang diidentifikasikan dalam model data logikal

global ke dalam target DBMS. Informasi yang diperlukan untuk proses ini dapat

diperoleh dari kamus data dan definisi dari relasi dideskripsikan menggunakan

Database Definition Language (DBDL). Adapun DBDL yang didefinisikan adalah

sebagai berikut :

128

1. Supplier

Domain KD_Supplier: Variable length character string, length 10

Domain Nama _supplier: Variable length varchar string, length 20

Domain Alamat_supplier: Variable length varchar string, length 50

Domain No_telp_supplier: Variable length varchar string, length 15

Domain nama_barang : Variable length varchar string, length 20

Kd_barang: Variable length character string, length 10

Supplier(

KD_Supplier Kode Supplier NOT NULL,

Nama _supplier: Nama Supplier NOT NULL,

Alamat_supplier: Alamat Supplier NOT NULL,

No_telp_supplier: no telp supplier NOT NULL,

Nama_barang : nama barang NOT NULL,

Kd_barang kode barang NOT NULL,

PRIMARY KEY (KD_Supplier)

FOREIGN KEY (KD_barang) REFERENCES barang(KD_barang ) ON UPDATE

CASCADE ON DELETE NO ACTION);

129

2. Pelanggan

Domain KD_pelanggan: Variable length character string, length 10

DomainNama_pelanggan:Variable length varchar string, length 30

Domain Alamat _pelanggan: Variable length varchar string, length 50

No_telp_pelanggan Variable length character string, length 15

email_pelanggan Variable length character string, length 30

pelanggan(

KD_pelanggan Kode Customer NOT NULL,

Nama_pelanggan: Nama Customer NOT NULL,

Alamat _pelanggan: Alamat pelanggan NOT NULL,

No_telp_pelanggan telepon pelanggan NOT NULL,

email_pelanggan email pelanggan NOT NULL,

PRIMARY KEY (KD_pelanggan) )

3. karyawan

Domain KD_Karyawan: Variable length character string, length 10

Domain Nama_Karyawan: Variable length varchar string, length 30

Domain Alamat_karyawan: Variable length varchar string, length 50

Domain No_telp_karyawan Variable length character string, length 15

130

Doamin jabatan_karyawan Variable length character string, length 30

Doamain Jenis_kelamin Variable length character string, length 15

Karyawan (

KD_Karyawan Kode karyawan NOT NULL,

Nama_Karyawan: Nama karyawan NOT NULL,

Alamat_karyawan: Alamat karyawan NOT NULL,

No_telp_karyawan telepon karyawan NOT NULL,

jabatan_karyawan jabatan karyawan NOT NULL,

Jenis_kelamin jenis kelamin karyawan NOT NULL,

PRIMARY KEY (KD_Karyawan) )

4. barang

Domain KD_barang: Variable length character string, length 10

Domain Nama _barang: Variable length varchar string, length 20

Domain Harga_barang : integer

Domain Jenis barang: Variable length character string, length 15

Doamin Jumlah_barang: integer

Barang (

131

KD_barang Kode barang NOT NULL,

Nama _barang Nama barang NOT NULL,

Harga_barang harga barang NOT NULL,

Jenis barang jenis barang NOT NULL,

Jumlah_barang jumlah barang NOT NULL,

PRIMARY KEY (KD_barang) )

5. Surat service

Domain KD_surat_service: Variable length character string, length 10

Domain Jenis_service: Variable length varchar string, length 20

Domain KD_karyawan: Variable length character string, length 10

Domain KD_pelanggan: Variable length character string, length 10

Doamin KD_barang : Variable length character string, length 10

Domain Tanggal : date time

Domain keterangan : Variable length character string, length 200

Surat service (

KD_surat_service Kode barang NOT NULL,

Jenis_service Jenis service NOT NULL,

132

KD_karyawan Kode karyawan NOT NULL,

KD_pelanggan kode pelanggan NOT NULL,

KD_barang kode barang NOT NULL,

Tanggal tanggal service NOT NULL,

Domain keterangan keterangan service NULL

PRIMARY KEY (KD_surat_service)

Foreign Key KD_karyawan references karayawan(KD_karyawan) ON UPDATE

CASCADE ON DELETE NO ACTION

Foreign Key KD_pelanggan references pelanggan(KD_pelanggan) ON UPDATE

CASCADE ON DELETE NO ACTION

Foreign Key KD_barang references barang(KD_ KD_barang) ON UPDATE

CASCADE ON DELETE NO ACTION );

6. Nota pembanyaran

Domain KD _nota_pembayaran: Variable length character string, length 10

Domain KD_surat_service: Variable length varchar string, length 10

Domain Jumlah_bayar: integer

Domain Jatuh tempo: date time

133

Nota pembayaran (

Domain KD _nota_pembayaran Kode nota pembanyaran NOT NULL,

KD_surat_service kode surat service NOT NULL,

Jumlah_bayar jumlah yang dibayar NOT NULL,

Jatuh tempo tanggal pembayaran NOT NULL,

PRIMARY KEY (KD _nota_pembayaran)

Foreign Key KD_surat_service references surat_service(KD_surat_service) ON

UPDATE CASCADE ON DELETE NO ACTION

7. Nota surat permintaan barang

Domain KD_SPB: Variable length character string, length 10

Domain KD_barang: Variable length varchar string, length 10

Domain Jumlah_Barang : integer

Domain tanggal: date time

surat permintaan barang (

KD_SPB Kode SPB NOT NULL,

KD_barang kode barang NOT NULL,

Jumlah_Barang jumlah barang yang minta NOT NULL,

tanggal tanggal permintaan NOT NULL,

134

PRIMARY KEY (KD_SPB)

Foreign Key KD_barang, references barang (KD_barang,) ON UPDATE CASCADE

ON DELETE NO ACTION);

8. surat permohonan pembelian barang

Domain KD_PPB: Variable length character string, length 10

Domain KD_barang: Variable length varchar string, length 10

Domain Tanggal_permohonan: Date time

Domain nama_barang: Variable length varchar string, length 20

surat permohonan pembelian barang (

KD_PPB Kode SPB NOT NULL,

KD_barang kode barang NOT NULL,

Tanggal_permohonan Tanggal permohonan NOT NULL,

nama_barang nama barang NOT NULL,

PRIMARY KEY (KD_PPB)

Foreign Key KD_barang, references barang (KD_barang,) ON UPDATE CASCADE

ON DELETE NO ACTION

135

9. Surat Pemesanan Barang

Domain KD_SPB: Variable length character string, length 10

Domain KD_PPB: Variable length varchar string, length 10

Domain Tanggal : Date time

Surat Pemesanan Barang (

KD_SPB Kode SPB NOT NULL,

KD_PPB kode barang NOT NULL,

Tanggal Tanggal pemesanan NOT NULL,

PRIMARY KEY (KD_SPB)

Foreign Key KD_PPB references permohonan pembelian barang (KD_PPB) ON

UPDATE CASCADE ON DELETE NO ACTION

10. Surat penerimaan Barang

Domain KD_Surat_penerimaan_barang: Variable length character string, length

10

DomainKD_Surat_Pemesanan_barang: Variable length varchar string, length

10

Domain Tanggal : Date time

136

Surat Pemenerimaan Barang (

KD_Surat_penerimaan_barang Kode Surat_penerimaan_barang NOT NULL,

KD_Surat_Pemesanan_barang kode SPB NOT NULL,

Tanggal Tanggal pemesanan NOT NULL,

PRIMARY KEY (KD_Surat_penerimaan_barang)

Foreign Key KD_Surat_Pemesanan_barang references Surat Pemesanan Barang

(KD_Surat_Pemesanan_barang) ON UPDATE CASCADE ON DELETE NO

ACTION

11. Surat Tagihan Pembayaran

Domain KD_surat_tagihan_pembayaran: Variable length character string,

length 10

DomainKD_surat_penerimaan_barang: Variable length varchar string,

length 10

Domain Tanggal : Date time

Surat Tagihan Pembayaran (

KD_surat_tagihan_pembayaran Kode SPB NOT NULL,

KD_surat_penerimaan_barang kode barang NOT NULL,

Tanggal Tanggal pembayaran NOT NULL,

137

PRIMARY KEY (KD_surat_tagihan_pembayaran)

Foreign Key , KD_surat_penerimaan_barang references Surat penerimaan Barang

(KD_surat_penerimaan_barang) ON UPDATE CASCADE ON DELETE NO

ACTION

12. Penjualan

Domain KD_Penjualan: Variable length character string, length 10

Domain KD_barang: Variable length varchar string, length 10

Domain Tanggal: Date time

Domain KD_pelanggan: Variable length varchar string, length 10

Domain Jumlah_barang: integer

Domain harga_total : integer

Penjualan (

KD_Penjualan Kode penjualan NOT NULL,

KD_barang kode barang NOT NULL,

KD_pelanggan kode pelanggan NOT NULL,

Jumlah_barang quantity NOT NULL,

harga_total harga total NOT NULL,

138

PRIMARY KEY (KD_Penjualan)

Foreign Key KD_pelanggan references pelanggan (KD_pelanggan ) ON UPDATE

CASCADE ON DELETE NO ACTION

Foreign Key KD_Barang references barang (KD_Barang) ON UPDATE

CASCADE ON DELETE NO ACTION

13. Catatan Return Barang

Domain KD_Catatan_Return_Brg Variable length character string, length

10

KD_Nota_pembayaran: Variable length varchar string, length

10

Tgl_catatan _return_brg: Date time

Jumlah_Barang interger

Catatan Return Barang (

KD_Catatan_Return_Brg Kode SPB NOT

NULL,

KD_Nota_pembayaran: kode barang NOT

NULL,

Tgl_catatan _return_brg Tanggal permohonan NOT NULL,

Jumlah_Barang nama barang NOT NULL,

139

PRIMARY KEY (KD_Catatan_Return_Brg)

Foreign Key KD_Nota_pembayaran references nota pembayaran

(KD_Nota_pembayaran) ON UPDATE CASCADE ON DELETE NO ACTION

4.1.5.1.2Merancang Representasi untuk Data Turunan

Tujuan dari langkah ini adalah untuk memutuskan bagaimana merepresentasikan

derived data yang ada dalam model data logikal global ke dalam target DBMS.

Atribut yang nilainya dapat ditemukan dengan memeriksa nilai dari atribut lain

dikenal dengan nama derived atau calculated attribute. Derived attribute yang

didefinisikan yaitu:

1. Atribut TotalPemb yang merepresentasikan besar pembelian. Nilai ini didapat

dari perkalian antara jumlah barang yang dibeli dengan harga beli barang.

2. Atribut TotalPenj yang merepresentasikan besar penjualan. Nilai ini didapat

dari perkalian antara jumlah barang yang dijual dengan harga jual barang

4.1.5.1.3. Merancang General Constraint

Tujuan dari langkah ini adalah untuk merancang general constraint atau

batasan perusahaan untuk target DBMS. Adapun general constraint yang dirancang

untuk target DBMS ini adalah sebagai berikut :

Jumlah pembelian barang (QtyBrg) yang ada tidak boleh melebih kapasitas gudang

yang tersisa. Kapasitas maksimum gudang adalah 3000 item.

CONSTRAINT QtyMaks

140

CHECK ( NOT EXIST (SELECT SUM(QtyBrg) AS TotalStock FROM

Barang

WHERE (SELECT SUM(QtyBrg) FROM Barang) > 3000) )

4.1.5.2. Merancang File Organization dan Indexes

Berikut langakah – langkah untuk merancang file organization dan indexes :

• Menganalisa transaksi

• Memilih organisasi file

• Memilih indeks - indeks

• Memperkirakan kebutuhan disk space

4.1.5.2.1Menganalisa Transaksi

Langkah ini bertujuan untuk memahami fungsionalitas dari transaksi -

transaksi yang akan berjalan pada basisdata dan untuk menganalisis transaksi -

transaksi yang penting. Matriks berikut ini menunjukkan transaksi - transaksi yang

dibutuhkan dan relasi yang diakses. Adapun transaction / relation cross-reference

matrix yang dihasilkan adalah sebagai berikut :

141

Transaction / Relation

(A) (B) (C) (D) (E) (F) I R U D I R U D I R U D I R U D I R U D I R U D

Pelanggan X X Supplier X X Barang X X X Karyawan X Surat service X Nota pembayaran X Surat permintaan barang Surat permohonan pembelian barang

Surat Pemesanan Barang Surat penerimaan Barang Surat Tagihan Pembayaran

X

Penjualan X Catatan retur barang

I = Insert ; R = Read ; U = Update ; D = Delete (k)Masukkan detail Supplier yang memasok barang ke perusahaan (D) Masukkan detail Pegawai (l)Masukkan detail Customer (E) Masukkan detail Pembelian (M)Masukkan detail Barang (F) Masukkan detail Penjualan

Tabel 4.18Cross-referencing transactions and relationship Transaction / Relation

(G) (H) (I) (J) (K) (L) I R U D I R U D I R U D I R U D I R U D I R U D

Pelanggan X X X Supplier X X X Barang X X Karyawan X X Surat service X X Nota pembayaran X X

142

Surat permintaan barang X Surat permohonan pembelian barang

Surat Pemesanan Barang X Surat penerimaan Barang X Surat Tagihan Pembayaran X Penjualan X Catatan retur barang X

I = Insert ; R = Read ; U = Update ; D = Delete (G) Masukkan detail Pembayaran (J) Masukkan detail Retur Pembelian (H) Masukkan detail Penerimaan (K) Update detail Supplier (I) Masukkan detail Retur Penjualan (L) Update detail Customer

Tabel 4.19Cross-referencing transactions and relations (lanjutan)

Transaction / Relation

(M) (N) (O) (P) (Q) (R) I R U D I R U D I R U D I R U D I R U D I R U D

Pelanggan X Supplier X Barang X X X X Karyawan X X Surat service X Nota pembayaran Surat permintaan barang X Surat permohonan pembelian barang

Surat Pemesanan Barang Surat penerimaan Barang Surat Tagihan Pembayaran X Penjualan Catatan retur barang X X

I = Insert ; R = Read ; U = Update ; D = Delete

143

(M) Update detail barang (P) Tampilkan detail barang dari pembelian (N) Update detail Pegawai (Q) Tampilkan Pembayaran yang dilakukan terhadap pembelian (O) Tampilkan supplier yang memasok barang (R) Tampilkan detail pembayaran oleh customer

Tabel 4.20Cross-referencing transactions and relations (lanjutan)

Transaction / Relation

(S) (T) (U) (V) (W) (X) I R U D I R U D I R U D I R U D I R U D I R U D

Pelanggan Supplier X Barang X X Karyawan X X X X Surat service Nota pembayaran X Surat permintaan barang

X

Surat permohonan pembelian barang

Surat Pemesanan Barang

X

Surat penerimaan Barang

Surat Tagihan Pembayaran

Penjualan X Catatan retur barang

I = Insert ; R = Read ; U = Update ; D = Delete (S) Tampilkan customer yang memesan barang (V) Tampilkan pegawai yang mengurus penjualan (T) Tampikan pegawai yang mengurus pembayaran (W) Tampilkan detail barang dari penjualan (U) Tampilkan manager yang mengawasi pegawai (X) Tampilkan pegawai yang mengurus retur penjualan

144

Tabel 4.21Cross-referencing transactions and relations (lanjutan)

Transaction / Relation

(Y) (Z) (A1) (B1) (C1) (D1) I R U D I R U D I R U D I R U D I R U D I R U D

Pelanggan Supplier Barang X X Karyawan X X Surat service X Nota pembayaran X Surat permintaan barang Surat permohonan pembelian barang

X

Surat Pemesanan Barang Surat penerimaan Barang

X

Surat Tagihan Pembayaran

Penjualan Catatan retur barang

I = Insert ; R = Read ; U = Update ; D = Delete (Y) Tampilkan pegawai yang mengurus retru pembelian (B1) Tampilkan pegawai yang mengurus penerimaan (Z) Tampilkan retur barang yang telah direview terhadap penjualan (C1) Tampilkan detail barang yang dijual yang diretur (A1) Tampilkan retur barang yang telah di review terhadap pembelian (D1) Tampilkan detail barang yang dibeli yang diretur

Tabel 4.22Cross-referencing transactions and relations (lanjutan)

145

4.1.5.2.2. Memilih File – file Organisasi

Berdasarkan basisdata yang dipakai untuk merancang aplikasi ini, yaitu SQL Server 2000,

maka organisasi file yang digunakan adalah B+ - Trees. Adapun aturan – aturan dalam

pembuatan B+ - Trees sebagai berikut :

•Jika root adalah leaf node, maka node tersebut harus memiliki setidaknya 2 child

•Untuk tree of order n, setiap node (kecuali root dan leaf node) harus memiliki pointer dan child

sebanyak antara n/2 dan n. Jika n/2 bukan merupakan integer, maka dibulatkan ke atas.

•Untuk tree of order n, jumlah nilai jumlah dari key pada leaf node harus di antara (n-1)/2 dan (n-

1). Jika (n-1)/2 bukan merupakan integer, maka hasilnya akan dibulatkan ke atas

•Nilai jumlah dari key yang terdapat pada node yang bukan leaf node adalah 1 lebih sedikit dari

jumlah pointer

•Tree harus selalu seimbang (balanced), yaitu setiap jalur dari root ke leaf harus memiliki

panjang yang sama

•Leaf node dihubungkan berdasarkan nilai key

4.1.5.2.3. Memilih Indeks – indeks

Berikut ini adalah tabel indeks untuk setiap entitas yang ada :

Nama Entity Indeks Supplier KdSupp Pelanggan KdPlgn Barang KdBrg Penjualan KdFakturPenj

146

Karyawan KdKrywn Nota pembayaran KdNotaPmbyrn Surat penerimaan barang KdSrtPenerimaanBrg Retur penj KdReturPenj

KdBrg Surat Permohonan Pembelian KdSrtPermohonanPmbln

KdBrg Catatan pengeluaran barang KdCttnPengeluaranBrg

KdBrg KdSrtPermohonanPmbln

Catatan retur barang KdCttnReturBrg KdCttnPengeluaranBrg KdNotaPembayaran

Pembayaran pembelian KdPmbyrnPmbln KdSupp

Nota pembelian barang KdNtPmblnBrg KdPmbyrnPmbln

Surat service KdSrtSrvc KdPlgn

Surat permintaan barang KdSrtPrmntaanBrg KdSrtSrvc

Tabel 4.23Indeks

4.1.5.2.4. Memperkirakan Kebutuhan Disk Space

Langkah ini bertujuan untuk memperkirakan jumlah kapasitas penyimpanan yang

akan dibutuhkan oleh basis data. Langkah-langkah berikut digunakan untuk

memperkirakan jumlah kapasitas penyimpanan yang dibutuhkan untuk menyimpan data

pada tabel dalam Microsoft SQL Server 2000 yaitu :

4.1.5.2.5 Estimasi Table Size

Langkah – langkah dalam estimasi ukuran tableadalah sebagai berikut :

147

1. Adapun perkiraan jumlah record pada masing-masing tabel adalah sebagai berikut.:

Tabel / Relasi Perkiraan jumlah row yang ada sekarang

Perkiraan pertumbuhan jumlah row dalam 1 tahun

Total Row / Num_Rows

Supplier 10 2 12 Pelanggan 400 70 470 Barang 800 100 900 Karyawan 30 3 33 Penjualan 3500 700 4200 Surat service 4000 850 4850 Nota Pembayaran 1000 200 1200 Surat Permintaan Barang

1500 100 1600

Surat Permohonan Pembelian barang

140 25 165

Catatan Retur Barang 100 30 130 Surat Pemesanan Barang

2000 200 2200

Surat Penerimaan Barang

2000 200 2200

Nota Pembelian Barang 1500 300 1800 Surat Tagihan Pembayaran

2000 250 2250

Tabel 4.24Perkiraan jumlah row pada masing-masing tabel

2.Jika ada fixed-length column dan variable-length column dalam definisi tabel, hitung

kapasitas penyimpanan untuk masing-masing group column. Ukuran dari kolom

tergantung pada tipe data dan spesifikasi ukuran.

Adapun pembagian fixed-length column dan variable–length column pada tiap table

sebagai berikut :

148

Tabel / Relasi Fixed-length column Size (byte)

Variable-length column Size (byte)

Pelanggan Kd_Pelanggan 5 Nama_pelanggan 30 - - Alamat_pelanggan 80

- - No_telp_pelanggan 15

- - Email_pelanggan 30

Supplier KD_supplier 5 Nama_supplier 30 KD_barang 6 Alamat_supplier 80 - - No_telp_supplier 15 - - Nama_barang 30 - - - -

Barang KD_barang 5 Nama_barang 30 JmlhStok 4 Jenis_barang 30 Harga_Barang 8 - - - - - -

Karyawan KD_Karyawan 5 Nama_karyawan 20 Jenis kelamin 6 Alamat _karyawan 10 - - No_telp_karyawan 12 - - Jabatan_karyawan 10

Surat service KD_surat_service 8 Jenis _service 40 KD_karyawan 5 Keterangan 100 KD_pelanggan 5 - - KD_barang 5 - - Tanggal 8 - -

Nota pembayaran

KD _nota_pembayaran 8 - - KD_surat_service 8 - - Jumlah_bayar 8 - - Jatuh tempo 8 - -

Surat permintaan barang

KD_SPB 8 - - KD_barang 5 - - Jumlah_barang 4 - - Tanggal 8 -

-

149

Surat permohonan pembelian barang

Tanggal_permohonan 8 Nama_barang 30 Jumlah_barang 4 - - KD_PPB 8 - -

Kd_barang 5 - -

Surat Pemesanan Barang

KD_SPB 8 - - KD_PPB 8 - - Tanggal 8 - -

Surat penerimaan Barang

KD_Surat_penerimaan_barang

8 - -

Tanggal 8 - - KD_Surat_Pemesanan_barang

8 - -

Surat Tagihan Pembayaran

KD_surat_tagihan_pembayaran

8 - -

KD_surat_penerimaan_barang

8 - -

Tanggal 8 - - Penjualan KD_Penjualan 8 - -

KD_pelanggan 5 - - KD_Barang 5 - - Jumlah_barang 4 - - Tgl_penjualan 8 - - Harga_Total 8 - -

Catatan retur barang

KD_Catatan_Return_Brg 5 - - KD_Nota_pembayaran 8 - - Tgl_catatan _return_brg 8 - Jumlah_Barang 4 -

Tabel 4.25 Perhitungan ukuran data untuk setiap fixed dan variable - length column pada

masing-masing tabel

150

Tabel / Relasi Num_ Cols

Fixed_ Data_ Size

Num_ Variable_Cols

Max_Var_ Size

Pelanggan 1 5 4 155

Supplier 2 11 2 155 Barang 3 17 2 60

Karyawan 2 15 4 55

Surat service 5 31 1 100 Nota pembayaran 4 32 0 0

Surat permintaan barang 3 26 0 0 Surat permohonan pembelian barang

4 25 0 0

Surat Pemesanan Barang 3 24 0 0 Surat penerimaan Barang 3 24 0 0

Surat Tagihan Pembayaran 3 24 0 0 Penjualan 6 46 0 0 Catatan retur barang 4 25 0 0

Tabel 4.26 Perhitungan kapasitas penyimpanan untuk masing-masing tabel berdasarkan

fixed dan variable-length column

Num_Cols = jumlah fixed-length column

Fixed_Data_Size = jumlah byte dari semua fixed-length column

Num_Variable_Cols = jumlah variable-length column

Max_Var_Size = maksimum ukuran byte dari semua variable-length column

3. Jika ada fixed-length column dalam tabel, bagian dari row yang dikenal dengan null

bitmap, disediakan untuk mengatur kemungkinan null dari column. Hitung

besarnya ukuran null bitmap tersebut. Hasil perhitungan harus bilangan bulat. Jika

hasil perhitungan adalah bilangan desimal, buang semua nilai di belakang koma.

151

Tabel / Relasi Num_ Cols

Null_ Bitmap

Pelanggan 1 3

Supplier 2 3 Barang 3 3

Karyawan 2 3

Surat service 5 6 Nota pembayaran 4 3

Surat permintaan barang 3 3 Surat permohonan pembelian barang

4 3

Surat Pemesanan Barang 3 3 Surat penerimaan Barang 3 3

Surat Tagihan Pembayaran 3 3 Penjualan 6 3

Catatan retur barang 4 3

Ket :

Null_Bitmap = 2 + (( Num_Cols + 7) / 8 )

Tabel 4.27 Perhitungan null bitmap dari masing-masing tabel

4. Jika ada variable-length column dalam tabel, tentukan berapa besar kapasitas yang

digunakan untuk menyimpan column beserta dengan row - row yang dimilikinya. Jika

tidak ada kolom dengan variable_length, maka variable_data_size diset 0

Tabel / Relasi Num_ Variable_ Cols

Max_Var_ Size

Variable_ Data_Size

Pelanggan 4 155 165 Supplier 2 155 161 Barang 2 60 66 Karyawan 4 55 65 Surat service 1 100 103

Nota pembayaran 0 0 0

152

Surat permintaan barang 0 0 0

Surat permohonan pembelian barang

0 0 0

Surat Pemesanan Barang 0 0 0 Surat penerimaan Barang 0 0 0

Surat Tagihan Pembayaran 0 0 0

Penjualan 0 0 0 Catatan retur barang 0 0 0

Ket :

Variable_Data_Size = 2 + ( Num_Variable_Cols x 2) + Max_Var_Size

Tabel 4.28 Perhitungan kapasitas penyimpanan untuk variable-length column beserta

dengan row dari masing-masing tabel

5 . Hitung ukuran dari row.

Tabel / Relasi Fixed_ Data_ Size

Variable_Data_ Size

Null_ Bitmap

Row_Size

Pelanggan 5 155 3 164 Supplier 11 155 3 173 Barang 17 60 3 84 Karyawan 15 55 3 77 Surat service 31 100 3 138 Nota pembayaran 32 0 3 39 Surat permintaan barang 26 0 3 33 Surat permohonan pembelian barang

25 0 3 32

Surat Pemesanan Barang 24 0 3 31 Surat penerimaan Barang 24 0 3 31 Surat Tagihan Pembayaran 24 0 3 31 Penjualan 46 0 3 53 Catatan retur barang 25 0 3 31

Ket :

Row_Size = Fixed_Data_Size + Variable_Data_Size + Null_Bitmap + 4

( nilai 4 tersebut mewakili data row header)

153

Tabel 4.29 Perhitungan total ukuran row untukmasing-masing tabel

6. Hitung jumlah rows per page (8096 free bytes per page). Hasil perhitungan dibulatkan

Tabel / Relasi Row_Size Rows_Per_Page

Pelanggan 164 48 Supplier 173 46 Barang 84 94 Karyawan 77 102 Surat service 138 57 Nota pembayaran 39 197 Surat permintaan barang 33 231 Surat permohonan pembelian barang 32 238 Surat Pemesanan Barang 31 245 Surat penerimaan Barang 31 245 Surat Tagihan Pembayaran 31 245 Penjualan 53 149 Catatan retur barang 31 245

Ket :

Rows_Per_Page = ( 8096 ) / (Row_Size + 2)

Tabel 4.30Perhitungan jumlah rows per page dari masing-masing tabel

7. Jika clustered index diciptakan dalam tabel, hitung jumlah freerows per page yang

disediakan, berdasarkan pada fill factor yang telah dispesifikasikan. Hasil perhitungan

dibulatkan ke bawah.

Tabel / Relasi Fill_Factor Row_Size Free_Rows_Per_Page

Pelanggan 50 164 24 Supplier 50 173 23 Barang 50 84 47 Karyawan 50 77 51

154

Surat service 50 138 28 Nota pembayaran 50 39 98 Surat permintaan barang 50 33 115 Surat permohonan pembelian barang

50 32 119

Surat Pemesanan Barang 50 31 122 Surat penerimaan Barang 50 31 122 Surat Tagihan Pembayaran 50 31 112 Penjualan 50 53 73 Catatan retur barang 50 31 122

Ket :

Free_Rows_Per_Page = 8096 x ((100 – Fill_Factor) / 100) / (Row_Size + 2)

Tabel 4.31 Perhitungan jumlah free rows per page dari masing-masing tabel

Tabel / Relasi Total Row / Num_ Rows

Rows_Per_ Page

Free_ Rows_Per_Page

Num_ Pages

Pelanggan 12 48 24 1 Supplier 470 46 23 20 Barang 900 94 47 20 Karyawan 33 102 51 1 Surat service 4200 57 28 144 Nota pembayaran 4850 197 98 49 Surat permintaan barang 1200 231 115 10 Surat permohonan pembelian barang

1600 238 119 13

Surat Pemesanan Barang 165 245 122 1 Surat penerimaan Barang 130 245 122 1 Surat Tagihan Pembayaran 2200 245 112 17 Penjualan 2200 149 73 28 Catatan retur barang 1800 245 122 14

Ket :

Num_Pages = Num_Rows / (Rows_Per_Page – Free_Rows_Per_Page)

155

Tabel 4.32 Perhitungan jumlah page untuk menyimpan semua row dari

masing-masing tabel

8. Hitung jumlah kapasitas yang dibutuhkan untuk menyimpan data dalam tabel (8192 total

bytes per page).

Tabel / Relasi Num_Pages Table_Size (KBytes)

Pelanggan 1 8,192 Supplier 20 163,84 Barang 20 163,84 Karyawan 1 8,192 Surat service 144 1179,648 Nota pembayaran 49 401,408 Surat permintaan barang 10 81,92 Surat permohonan pembelian barang 13 106,496 Surat Pemesanan Barang 1 8,192 Surat penerimaan Barang 1 8,192 Surat Tagihan Pembayaran 17 139,264 Penjualan 28 229,376 Catatan retur barang 14 114,688 Total kapasitas penyimpanan yang dibutuhkan

2613,248 KB

Ket :

Table_Size (Data_Space_Used)= 8192 x Num_Pages

Tabel 4.33 Perhitungan jumlah kapasitas untuk menyimpan semua data dalam

masing-masing tabel

156

2. Estimasi Table Size dengan Clustered Index

Berikut merupakan langkah – langkah dalam perhitungan table size yang memiliki clustered index :

Nama Tabel Num_ Ckey_ Cols

Fixed_ Ckey Size

Num_ Var_ Ckey_ Cols

Max_ Var_ Ckey_ Size

CIndex_ Null_ Bitmap

Variable_ Ckey_ Size

CIndex_ Row_ Size

CIndex_ Row_ Per_ Page

Num_Pages_Clevel_0 Num_ CIndex_ Pages

Clustered Index Size

Pelanggan 1 5 0 0 3 0 17 426 1 1 8,192 KB Supplier 1 5 0 0 3 0 17 426 1 1 8,192 KB Barang 1 6 0 0 3 0 18 404 1 1 8,192 KB Karyawan 1 5 0 0 3 0 17 426 1 1 8,192 KB Surat service

1 8 0 0 3 0 20 368

1 1 8,192 KB

Nota pembayaran

1 8 0 0 3 0 20 368

1 1 8,192 KB

Surat permintaan barang

1 8 0 0 3 0

20 368

1 1 8,192 KB

Surat permohonan pembelian barang

1 8 0 0 3 0

20 368

1 1 8,192 KB

Surat Pemesanan Barang

1 8 0 0 3 0

20 368

1 1 8,192 KB

Surat penerimaan Barang

1 8 0 0 3 0

20 368

1 1 8,192 KB

Surat Tagihan Pembayaran

2 14 0 0 3 0

26 289

1 1 8,192 KB

157

Penjualan 2 14 0 0 3 0 26 289 1 1 8,192 KB Catatan retur barang

2 16 0 0 3 0 28 269

1 1 8,192 KB

Tabel 4.34 Perhitungan Clustered Index

158

keterangan :

Data_Space_Used = space yang digunakan untuk menyimpan data

1. Num_CKey_Cols = Jumlah kolom pada kunci index

Fixed_Ckey_Size = Jumlah byte dari semua kolom dengan fixed-length key

Num_Variable_Ckey_Cols = Kolom dengan fixed-length key pada kunci index

Max_Var_CKey_Size = Ukuran maksimum dari semua fixed-length key

2. CIndex_Null_Bitmap = 2 + (( Num_CKey_Cols + 7) / 8 )

3. Variable_CKey_Size = 2 + (Num_Variable_CKey_Cols x 2) + Max_Var_CKey_Size

4. CIndex_Row_Size = Fixed_CKey_Size + Variable_CKey_Size + CIndex_Null_Bitmap + 1 + 8

5. CIndex_Rows_Per_Page = ( 8096 ) / (CIndex_Row_Size + 2)

CIndex_Rows_Per_Page = Jumlah baris index per page

6. Number of pages (level 0) (Num_Pages_CLevel_0) = (Data_Space_Used / 8192) / CIndex_Rows_Per_Page

7. Clustered index size (bytes) = 8192 x Num_CIndex_Pag

159

1. Estimasi Table Size dengan NonClustered Index

Berikut merupakan langkah – langkah dalam perhitungan table size yang memiliki nonclustered index :

Tabel 4.35Tabel Perhitungan Nonclustered Index

Total Estimasi Disk Space yang dibutuhkan selama 1 tahun = Table Size + Clustered Index Size + NonClustered Index

Size

= 2236,416 KB + 180,224 KB + 147,456 KB = 2564,096 KB

Nama Tabel Num_ Ckey_ Cols

Fixed_ Key_ Size

Num_ Var_ Ckey_ Cols

Var_ key_ Size

Index_ Null_ Bitmap

NL_Index_Row_Size

NL_Index_Rows_Per_Page

Index_Row_Size

Index_Rows_Per_Page

Free_Index_Rows_Per_Page

Num_Pages_Level_0

Num_Pages_Level_1

Non Clustered Index Size

pelanggan 1 0 1 20 24 53 147 62 126 65 1 1 16,384KB Supplier 1 0 1 20 24 53 147 62 126 65 5 1 49,152KB Barang 1 5 0 0 3 17 426 27 279 149 7 1 65,536KB Karyawan 1 0 1 20 24 53 147 62 126 65 1 1 16,384KB

160

Keterangan :

1. Num_Key_Cols = jumlah kolom pada kunci index

Fixed_Key_Size = jumlah byte pada semua kolom fixed-length key

Num_Variable_Key_Cols = jumlah kolom dengan variable-length key

Max_Var_Key_Size = ukuran maksimum kolom variable-length key

2. Index_Null_Bitmap = 2 + (( Num_Key_Cols + 7) / 8 )

3. Variable_Key_Size = 2 + (Num_Variable_Key_Cols x 2) + Max_Var_Key_Size

4. NL_Index_Row_Size = Fixed_Key_Size + Variable_Key_Size + Index_Null_Bitmap + 1 + 8

5. NL_Index_Rows_Per_Page = ( 8096 ) / (NL_Index_Row_Size + 2)

6. Index_Row_Size = CIndex_Row_Size + Fixed_Key_Size + Variable_Key_Size + Index_Null_Bitmap + 1

7. Index_Rows_Per_Page = ( 8096 ) / (Index_Row_Size + 2)

8. Free_Index_Rows_Per_Page = 8096 x ((100 - Fill_Factor) / 100) / Index_Row_Size

9. Num_Pages_Level_0 = Num_Rows / (Index_Rows_Per_Page - Free_Index_Rows_Per_Page)

Num_Pages_Level_1 = Num_Pages_Level_0 / NL_Index_Rows_Per_Page

10. Nonclustered index size (bytes) = 8192 x Num_Index_Pages

161

4.1.6 Merancang User View

Tujuan dari tahap ini adalah untuk merancang user view yang diidentifikasikan selama pengumpulan kebutuhan dan analisa perkembangan lifecycle sistem basisdata .

Adapun user view yang dirancang untuk sistem basisdata adalah sebagai berikut :

CREATE VIEW view_ karyawan AS

SELECT *FROM karyawan

CREATE VIEW view_pelanggan AS

SELECT *FROM Customer

CREATE VIEW view_Supplier AS

SELECT * FROM Supplier

CREATE VIEW view_Barang AS

SELECT * FROM Barang

CREATE VIEW view_nota_Pembelian

AS

SELECT p.KdFakturPemb, p.TglPemb, s.KdSupp, s.NmSupp, pg.KdPgw, pg.NmPgw, b.KdBrg, b.KdDesign,b.Merk,b.KdWrn,b.KdUkrn,b.HrgSatuanBrg, SUM(QtyPemb * HrgSatuanBrg) AS Total

FROM Pembelian p JOIN Supplier s ON p.KdSupp = s.KdSupp

JOIN Pegawai pg ON p.KdPgw = pg.KdPgw

JOIN Barang b ON d.KdBrg = b.KdBrg

GROUP BY p.KdFakturPemb, p.TglPemb, s.KdSupp, s.NmSupp, pg.KdPgw, pg.NmPgw, b.KdBrg, b.KdDesign,b.Merk,b.KdWrn,b.KdUkrn,b.HrgSatuanBrg

162

CREATE VIEW view_Penjualan

AS

SELECT p.KdPenjualam, p.Tamggal, c.Kdpelanggan, c.nama_pelanggan , pg.KD_Karyawan,pg.nama_karyawan ,b.KD_barang, b, b.harga_barang, SUM(jumlah * HrgSatuanBrg) AS Total

FROM Penjualan p JOIN Customer c ON p.KdCust = c.KdCust

JOIN Pegawai pg ON p.KdPgw = pg.KdPgw

JOIN Barang b ON d.KdBrg = b.KdBrg

GROUP BY p.Kdpenjualan, p.Tanggal, c.Kd_pelanggan, c.nama_pelanggan, pg.Kd_karyawan,pg.Nama_karyawan, b.Kd_barang, , b.HrgSatuanBrg

CREATE VIEW view_surat_Penerimaan_barang

AS

SELECT pb.surat_penerimaan_barang, pg.Kd_surat_pemesanan_Barang, tanggal, c.Kd_pelanggan, c.nama_pelanggan, pg..kd_karyawan, pg.nama_karyawan

FROM surat_penerimaan_barang pb JOIN karyawan pg ON p.Kd_karyawan = pg.karyawan

JOIN surat_pemesanan_Barang pj ON pg.surat_pemesanan_Barang = pg.surat_pemesaan_barang

JOIN pelanggan c ON c pelanggant = pj.KdCust

CREATE VIEW view_surat_tagihan_Pembayaran

AS

SELECT p.Kd_surat_tagihan_pembayaran, pb.kd_surat_peneriamaan_Barang, Tanggal, s.Kd_Supplier, Nama_supplier, pg.Kd_karyawan, Nama_karyawan, jumlah_total

FROM surat_penerimaan_barang pb JOIN karawan pg ON pb.KdPgw = pg.KdPgw

JOIN surat_pemesanan_Barang pb ON d.Kd_surat_pemesanan_Barang = pb.surat_pemesanan_barang

163

JOIN Supplier s ON s.Kdpelanggan = pb.Kdpelanggan

CREATE VIEW view_catatan_retur_Barang

AS SELECT r.Kdcatatan_retur_barang, r.Kdpenjualan, TglReturPenj, pg.Kdkaryawan, Nm_karyawan, QtyReturPenj, SUM (QtyReturPenj * HrgSatuanBrg) AS Total_Retur

FROM ReturPenj r JOIN Barang b ON d.KdBrg = b.KdBrg

GROUP BY r.Kdcatatan_retur_barang, r.Kdpenjualan, TglReturPenj, pg.Kdkaryawan, Nm_karyawan, QtyReturPenj

4.1.7Merancang mekanisme keamanan

Tujuan dari langkah ini adalah untuk merancang mekanisme keamanan dari basis

data yang dispesifikasikan oleh user. Adapun mekanisme keamanan yang dirancang

untuk basisdata adalah sebagai berikut.

Hak akses setiap user

No Jabatan Akses

1 Admin Insert, Select, Update, Delete 2 Direktur Utama,

Direktur Select

3 Bagian Penjualan Select, Insert, Update 4 Bagian Karyawan Select, Insert, Update

Tabel 4.36 Hak Akses

4.2 Kamus Data

Dibawah ini adalah kamus data dari CV.Dewi bersaudara motor

1.Data Karyawan

Nama Arus Data : Data Karyawan

Alias :-

Bentuk Data Tampilan monitor

Arus Data :File Karyawan

Penjelasan :Daftar Data Diri Karyawan

164

Periode :Setiap Ada Karyawan Baru

2.Data Pelanggan

Nama Arus Data :Data Pelanggan

Alias :-

Bentuk Data :Tampilan Monitor

Arus Data :File Pelanggan

Penjelasan :Daftar Pelanggan

Periode :Setiap Ada Pelanggan Baru

3.Data Barang

Nama Arus Data :Data Barang

Alias :-

Bentuk Data :Tampilan Monitor

Arus Data :File Barang

Penjelasan :Daftar Stock Barang

Periode :Setiap Ada Transaksi

4.Data Supplier

Nama Arus Data :Data Supplier

Alias :-

Bentuk Data :Tampilan monitor

Arus Data :File Supplier

Penjelasan :Data-Data Supplier

Periode :Setiap Ada Supplier Baru dan Setiap Mencapai Titik ROP(?)

165

5.Data Penjualan

Nama Arus Data :Data Penjualan

Alias :-

Bentuk Data :Tampilan Monitor

Arus Data :File Penjualan

Penjelasan :Data barang Terjual

Periode :Setiap Ada Transaksi

6.surat service

Nama Arus Data : Data surat service

Alias :-

Bentuk Data : cetakan komputer

Arus Data : file surat service, file karyawan, file pelanggan , file barang

Penjelasan : surat yang berisi apa yang diservice

Periode : setiap kali ada transaksi

7. Nota pembayaran

Nama Arus Data : Data nota pembayaran

Alias :-

Bentuk Data : cetak komputer

Arus Data : file nota pembayaran, file surat service, file penjualan

Penjelasan : nota yang berisi apa yang harus di bayar oleh pelanggan

Periode : setiap ada transaksi

166

8. Surat permintaan barang

Nama Arus Data : surat permintaan barang

Alias :-

Bentuk Data : cetak komputer

Arus Data : file surat permintaan barang , file surat service

Penjelasan : sebagai bukti pengambilan barang di gudang

Periode : setiap ada transaksi

9 . surat permohonan pembelian barang

Nama Arus Data : surat permohonan pembelian barang

Alias :-

Bentuk Data : cetak komputer

Arus Data : file surat permohonan pembelianng barang, file bar

Penjelasan : jika barang sampe titi ROP maka surat ini dbuat untuk persetujuan pembelian barang

Periode : setiap mencapai titik ROP

10. catatan retur barang

Nama Arus Data : catatan retur barang

Alias :-

Bentuk Data : cetak komputer

Arus Data : file catatan retur barang , file nota pembayaran, file catatan pengeluaran barang

Penjelasan : mencatat jika ada pengambilan barang yang salah oleh pelanggan

Periode : setiap ada barang yang retur

167

12. surat pemesanan barang

Nama Arus Data : surat pemesanan barang

Alias :-

Bentuk Data : cetak komputer

Arus Data : file surat pemesanan barang , file supplier, file surat permohonan pembelian

Penjelasan : surat dibuat untuk barang yang sudah mencapai ROP

Periode : setiap barang mencapai titik ROP

13. surat penerimaan barang

Nama Arus Data : surat penerimaan barang

Alias :-

Bentuk Data : cetak komputer

Arus Data : file surat permintaan barang , file surat pemesanan barang

Penjelasan : surat sebagai bukti barang dari supplier untuk di masukan ke gudang Periode : setiap ada pemesanan barang

14. surat tagih pembayaran

Nama Arus Data : surat tagih pembayaran

Alias :-

Bentuk Data : cetak komputer

Arus Data : file surat tagih pembayaran, file surat penerimaan barang

Penjelasan : sebagai bukti pembayaran kepada supplier

Periode : setiap ada pemesanan

168

4.3. Perancangan Aplikasi

4.3.1.Structure Chart

Berikut ini adalah gambar struktur program yang dirancang untuk aplikasi basisdata pada CV.Dewi Bersaudara :

Gambar 4.3 : Struktur Program

169

4.3.2 State Transition Diagram

Berikut ini adalah gambar State transition Diagram untuk aplikasi basisdata yang

dirancang :

Gambar 4.4 :STD Menu login

Gambar 4.5 :STD Menu utama

170

Gambar 4.6: STD Halaman Insert Data pelanggan

Gambar 4.7 : STD Halaman Insert Data karyawan

Gambar 4.8: STD Menu Transaksi

171

Gambar 4.9 : STD Halaman Insert Data karyawan

Gambar 4.10 :STD Halaman Insert Data barang

Gambar 4.11 STD Menu Penjualan

172

Gambar 4.12 STD halaman penjualan barang

Gambar 4.13 STD halaman surat service

173

Gambar 4.14 STD retur penjulan retur barang

Gambar 4.15 STD submenu pembelian

174

Gambar 4.16 STD halaman SPPB

Gambar 4.17 STD halaman SPB

175

Gambar 4.18 STD submenu pembayaran

Gambar 4.19 STD halaman nota pembayaran

176

Gambar 4.20 STD halaman Surat tagihan pembayaran

Gambar 4.21 STD submenu penerimaan

177

Gambar 4.22 STD halaman surat penerimaan barang

Gambar 4.23 STD Submenu view

178

Gambar 4.24 STD halaman master pelanggan

Gambar 4.25 STD halaman master karyawan

179

Gambar 4.26 STD halaman master supplier

Gambar 4.27 STD halaman master barang

180

Gambar 4.28 STD submenu tools

Gambar 4.29 STD submenu cetak laporan

Gambar 4.30 STD halaman laporan pembelian

181

Gambar 4.31 STD halaman laporan pembayaran

Gambar 4.32 STD halaman laporan penjualan

Gambar 4.33 STD halaman laporan retur penjualan

Gambar 4.34 STD halaman laporan penerimaan

182

4.3.3. Perancangan input

Berikut ini adalah rancangan input untuk aplikasi basisdata yang dirancang

untuk CV.Dewi Bersaudara :

Gambar 4.35 Form Login

Gambar 4.36 Menu Utama

183

Gambar 4.37 Form Insert Data Karyawan

Gambar 4.38 Form Faktur Penjualan

184

Gambar 4.39 Form Insert barang

Gambar 4.40 Insert Data Pelanggan

185

Gambar 4.41 Insert Supplier

Gambar 4.42 Form Nota Pembayaran

186

Gambar 4.43 Form Retur Barang

Gambar 4.44 Surat Pemesanan Barang

187

Gambar 4.45 Form surat Penerimaan Barang

Gambar 4.46 Form Surat Permintaan Barang

188

Gambar 4.47 Form Surat Permohonan Pembelian Barang

Gambar 4.48 Form Surat Service

189

Gambar 4.49 Form Surat Tagihan Pembelian

Gambar 4.50 Master Barang

190

Gambar 4.51 Master Karyawan

Gambar 4.52 Master Pelanggan

191

Gambar 4.53 Master Supplier

Gambar 4.54 laporan

4.3.4. Rancangan output

Dari aplikasi basisdata yang dirancang dihasilkan 6 laporan dan 1 surat jalan, antara

lain sebagai berikut :

• Laporan Pembelian Barang

• Laporan Penjualan Barang

192

• Laporan Retur Penjualan Barang

• Surat penjualan

• Laporan penerimaan

• Laporan pembayaran

4.3.5 Petunjuk Operasional Sistem

Berikut ini akan dijelaskan petunjuk operasional sistem untuk aplikasi

basisdata yang telah dirancang :

Aplikasi dimulai dengan mengklik ganda pada skripsi.exe, kemudian

akan ditampilkan FormLogin.

Form LogIn

Gambar4.55 Login

Pada Formini user diminta untuk mengisi User Name dan Password yang

digunakan untuk menentukan hak akses user terhadap basisdata. Jika user

mengklik tombol ‘Login’ maka user name dan password akan divalidasi untuk

dicek apakah sudah terisi atau belum. Jika belum terisi akan ditampilkan pesan

untuk mengisi user nama dan password dan kemudian kembali ke FormLogin.

193

Jika sudah terisi, user name dan password akan dicek apakah sudah sesuai

dengan data yang ada di basisdata. Jika sesuai akan masuk ke Form Utama. Jika

tidak sesuai, maka akan ditampilkan pesan error dan kembali ke FormLogin.

Tombol cancel digunakan untuk keluar dari Aplikasi

Form utama

Gambar4.56Form utama

Gambar4.57Form utama Menu insert

194

Gambar 4.58Form Utama Menu Transaksi Sub Menu Penjualan

Gambar 4.59Form Utama Menu Transaksi Sub Menu Pembelian

195

Gambar 4.60Form Utama Menu Transaksi Sub Menu Pembayaran

Gambar 4.61Form Utama Menu Transaksi Sub Menu Penerimaan

196

Gambar 4.62Form Utama Menu Master

Gambar 4.63Form Utama Menu Tools

197

Di FormUtama terdapat beberapa menu yang dapat dipilih, antara lain : Menu

Insert (berisi submenu : Insert Barang, Insert Karyawan, Insert Pelanggan, Insert

Supplier), Menu Transaksi (berisi submenu : Penjualan terdapat submenu Penjualan

,Surat Service dan Surat Permintaan Barang, Pembelian terdapat submenu Permohonan

Pembelian Barang dan Surat Pemesanan Barang, Pembayaran terdapat submenu Nota

Pembayaran Dan Surat Tagihan Pembayaran, dan Penerimaan terdapat submenu Surat

Penerimaan Barang), Master (berisi submenu : Master Barang,Master Supplier ,Master

Pelanggan,Master Supplier), Menu Tools (berisi submenu : Cetak Laporan (berisi

submenu : Cetak Laporan Penjualan, Cetak Laporan Pembelian, Cetak Retur Penjualan,

dan Cetak Retur Pembelian) dan User Management(berisi submenu : Tambah User,

Hapus User, dan Ubah Password) ), dan Menu Logout.

Form Insert Data Barang

Jika pada menu Insert dipilih submenu Insert Data Barang, maka akan

ditampilkan Layar Insert Data Barang, seperti berikut :

Form Insert Barang

Gambar 4.64 Form Insert Barang

198

Form Insert Data Karyawan

Jika pada menu Insert dipilih submenu Insert Data Karyawan, maka akan

ditampilkan Form Insert Data Karyawan, seperti berikut :

Form Insert Data Karyawan

Gambar 4.65 Form Insert Data Karyawan

199

Form Penjualan

Jika user mengklik Transaksi -> Penjualan -> Penjualan, maka akan ditampilkan

Form Penjualan, seperti berikut :

Form Penjualan

Gambar 4.66 Form Penjualan

200

Form Permintaan Barang

Jika user mengklik Transaksi -> Penjualan -> Surat Permintaan Barang, maka

akan ditampilkan Form Permintaan Barang, seperti berikut :

Form Permintaan Barang

Gambar 4.67 Form Permintaan Barang

201

Form Service

Jika user mengklik Transaksi -> Penjualan -> Surat Service, maka akan

ditampilkan Form Surat Service, seperti berikut :

Form Service

Gambar 4.68 Form Service

202

Permohonan Pembelian Barang

Jika user mengklik Transaksi -> Pembelian -> Permohonan Pembelian

Barang, maka akan ditampilkan Form Permohonan Pembelian Barang, seperti

berikut :

Permohonan Pembelian Barang

Gambar 4.69 Permohonan Pembelian Barang

203

Form Pemesanan Barang

Jika user mengklik Transaksi -> Pembelian ->Surat Pemesanan Barang,

maka akan ditampilkan Form Surat Pemesanan Barang, seperti berikut :

Form Pemesanan Barang

Gambar 4.70 Form Pemesanan Barang

204

Nota Pembayaran

Jika user mengklik Transaksi -> Pembayaran ->Nota Pembayaran, maka

akan ditampilkan Form Nota Pembayaran, seperti berikut :

Nota Pembayaran

Gambar 4.71 Nota Pembayaran

205

Form Tagihan Pembelian

Jika user mengklik Transaksi -> Pembayaran ->Surat Tagihan

Pembayaran, maka akan ditampilkan Form Surat Tagihan Pembayaran, seperti

berikut :

Form Tagihan Pembayaran

Gambar 4.72 Form Tagihan Pembayaran

206

Form Penerimaan Barang

Jika user mengklik Transaksi -> Penerimaan ->Penerimaan Barang, maka

akan ditampilkan Form Penerimaan Barang, seperti berikut :

Form Penerimaan Barang

Gambar 4.73 Form Penerimaan Barang

207

Master Barang

Jika user mengklik Master -> Master Barang, maka akan ditampilkan

Form Master Barang, seperti berikut :

Master Barang

Gambar 4.74 Master Barang

208

Form Master Karyawan

Jika user mengklik Master -> Master Karyawan, maka akan ditampilkan

Form Master Karyawan, seperti berikut :

Form Master Karyawan

Gambar 4.75 Form Master Karyawan

209

Cetak Laporan

Jika user mengklik Tools -> Cetak Laporan, maka akan ditampilkan jenis

laporan sesuai yang user butuhkan(ex:laporan Penjualan,Pembelian,Laporan

Pembayaran,Laporan Penerimaan), seperti berikut :

Cetak Laporan

Gambar 4.76 Cetak Laporan

4.4. Rencana Implementasi

4.4.1. Metode Implementasi

Metode Implementasi yang diterapkan di CV. Dewi Bersaudara adalah

dengan penerapan secara langsung, tujuan dari metode ini yaitu sistem baru

langsung diterapkan dan sistem lama dihentikan. Keuntungan metode ini adalah

low cost karena tidak memakan waktu serta biaya yang banyak untuk

implementasi maupun pelatihan untuk user. Kerugian dari metode ini adalah

kemungkinan kesalahan baik dari aplikasi maupun user sendiri masih besar

karena minimnya waktu adaptasi untuk sistem yang baru.

210

4.4.2. Jadwal Implementasi

Task Name Bulan 1

1 2 3 4

Pengadaan Hardware dan Software

Instalasi

Backup Data

Pengujian dan Evaluasi

Pelatihan

Tabel 4.35 Jadwal Implementasi

4.4.3. Spesifikasi Komputer

4.4.3.1. Spesifikasi Perangkat Keras

Untuk pengadaan hardware tidak terlalu banyak di lakukan

penambahan karena perusahaan sudah memiliki hardware pada sistem yang

lama hanya saja perlu di lakukan upgrade pada hardware tersebut agar

kemampuan kinerjanya menjadi lebih cepat. Penambahan hardware di

tujukan hanya untuk server database , untuk client bisa menggunakan

perangkat keras yang lama.

Spesifikasi perangkat keras yang disarankan untuk penerapan

aplikasi database di perusahaan adalah sebagai berikut :

211

1. Server sekaligus Client database

Processor : Core I3 , 3.0 Ghz

Memory / RAM : 2 GB

Harddisk : 500 GB

Monitor : Monitor 14 Inch

Printer : Deskjet

Perangkat Pendukung : Keyboard usb, Mouse optic, DVD- RW

4.4.3.2. Spesifikasi Perangkat Lunak

Sedangkan perangkat lunak yang dibutuhkan perusahaan pada sistem

yang baru adalah sebagai berikut :

1. Visual Studio C# 2010

2. MYSQL

3. Crystal report 8

4. Net Framework 4.0

5. Windows XP service pack 3

4.4.4 Instalasi

Setelah dilakukan pengadaan untuk perangkat keras (hardware) dan

perangkat lunak (software), maka tahap impementasi berikutnya adalah instalasi

hardware dan software untuk sistem yang baru. Software yang diinstal di PC

server yang merangkap client adalah MYSQL serta Visual Studio C# lengkap

dengan Crystal Report. Setelah di lakukan instalasi atau pemasangan semua

212

software maka hal selanjutnya adalah melakukan pengaturan pada aplikasi , agar

database dengan UI dapat saling terhubung.

4.4.5 Backup Data

Setelah di lakukan instalasi pada perangkat keras dan perangkat lunak

maka tahap selanjutnya adalah dengan melakukan backup data pada perangkat

lunak. Tujuan dari backup data adalah untuk mengatasi terjadinya kehilangan

data atau kerusakan data pada data asli.

Keterangan :

1. Full backup pada hari sabtu dan seninn

2. Diffrensial backup dilakukan setiap hari (jumat – minggu )

3. Log backup dilakukan pada hari jumat,sabtu,minggu

4. File dan file group dilakukan hari minggu

4.4.6 Pengujian dan Evaluasi

Setelah di lakukan backup data maka tahap selanjutnya adalah melakukan

pengujian untuk menguji coba kesesuaian sistem database baru pada CV. Dewi

Bersaudara. Selama Proses pengujian , karena data dalam sistem yang baru

belum ada , maka data yang di gunakan adalah data dari sistem yang lama.

Evaluasi dilakukan pada saat bersamaan dengan pengujian yang dimana

pada saat terjadinya proses pengujian terdapat kerusakan atau hal – hal yang

perlu di perbaiki maka di butuhkan evaluasi untuk hal tersebut.

213

4.4.7 Pelatihan

Setelah di lakukan pengujian dan evaluasi maka tahap selanjutnya adalah

melakukan pelatihan pada user atau karyawan yang bertujuan agar user atau

karyawan tersebut dapat menggunakan sistem pada database baru dengan baik.