58
BAB 3
ANALISIS DAN PERANCANGAN
3.1 Tahap Analisis Kebutuhan 3.1.1 Sejarah Perusahaan
Sejarah Hop-Hop berawal dari kecintaan Bapak M ichael Karnady, Founder dan inisiator Hop-Hop untuk memulai sebuah bisnis berbasis makanan dan minuman. Berbekal pengalaman dan observasi selama di Amerika dibuatlah sebuah merek baru mengacu kepada sebuah minuman unik yang aslinya berasal dari Taiwan kemudian berkembang pesat di USA dan Kanada di pertengahan 90-an.
M endapat lisensi dari Kanada dalam bentuk produk, Hop-Hop mulai diperkenalkan di Indonesia. Pada tahun 2000 melalui berbagai alternative nama:
Bubba, Buble Tea, Bubble King dicoba sebelum akhirnya diputuskan dengan nama
Hop-Hop karena bubblenya yang kenyal dan seolah bisa meloncat-loncat.
Hop-Hop secara resmi didaftarkan dan pada tahun 2001, gerai Hop-Hop pertama dibuka di Pasaraya Grande lantai basement. Hampir sebagian besar bahan bakunya masih diimport dari luat negeri untuk tetap menjaga kualitas dan mutu produk.
Tahun Berikutnya berkembang pesat karena banyak pula merek-merek gurem yang buka sehingga membantu sosialisasi produk. Franchise pertama dibuka di Sumatera. Pada tahun 2006 total gerai telah berjumlah 44 outlet.
oleh gelas plastik ukuran 400ml yang dapat ditutup dengan baik oleh sealed atau lid. Didalamnya terdapat 5gr bubble tapioca yang kenyal berwarna coklat kehitaman yang menambah keunikan dan kenikmatan rasanya.
Kecuali kopi dan teh, variasi rasa berasal dari bubuk rasa yang diimport beserta dengan bubble tapioca kering. Proses pembuatannya adalah dengan menggunakan blender yang mencampurkan 4 elemen utama yaitu bubble, bubuk rasa, gula dan es batu.
Pembuatan bubble dilakukan dengan cara dimasak fresh setiap hari sesuai dengan pesanan masing-masing outlet. Variasi rasa berjumlah lebih kurang 20 varian dengan beberapa varian baru diperkenalkan pada masa-masa tertentu. Produk bestseller Hop-Hop adalah Coklat, Strawberry, Bubble Gum, dan Taro.
3.1.2 S truktur Organisasi Perusahaan
Di dalam perusahaan terdapat beberapa unit kerja yang masing-masing mempunyai tugas dan tanggung jawab yang berbeda, sehingga dibentuklah sebuah struktur organisasi. Berikut ini adalah struktur organisasi perusahaan PT M ata Air Boga Lestari (Hop-Hop) yang menggambarkan hubungan vertikal dan horizontal antara pemimpin dan bawahan beserta para karyawannya. Dimana karyawan atau bawahan harus menjalankan tugasnya dan bertanggung jawab kepada atasannya sehingga bisa tercapai hasil kerja yang optimal.
Berikut ini adalah struktur organisasi PT M ata Air Boga Lestari (Hop-Hop) yang tampak pada Gambar 3.1 :
Berikut ini adalah uraian tentang wewenang dan tanggung jawab masing-masing personil dari PT M ata Air Boga Lestari (Hop-Hop) :
1. Direktur Utama
• Mengawasi perusahaan secara umum. • Mengawasi arah perkembangan perusahaan.
• Menjalin kerja sama dengan perusahaan atau pengusaha yang lain, baik di dalam maupun luar negeri.
• Menyusun sistem organisasi, mengambil keputusan – keputusan penting yg dapat mempengaruhi kelangsungan hidup dan perkembangan perusahaan
2. Direktur Operasional
• Bertugas mengawasi dan membantu jalannya operasional perusahaan. • Mengkoordinasikan gudang dan stock gudang
3. Direktur Finance, Accounting, dan HRD
• Mengatur keuangan perusahaan, negosiasi harga pembelian, menerima laporan keuangan secara rutin dari divisi accounting. M embuat rencana keuangan yaitu pengadaan dan penggunaan dana perusahaan
• Memonitor kinerja karyawan dan peningkatan kesejahteraan karyawan pada perusahaan
Accounting
• Bertugas membuat laporan keuangan perusahaan. • Mebuat laporan keuangan masing – masing counter
serta melaksanakan analisanya
• Pelaksanan pembayaran, pelaporan pajak perusahaan bulanan
Finance
• Mencatat kas harian, utang-piutang perusahaan, pelunasan, dan pembayaran.
• Memegang kas harian untuk kebutuhan harian perusahaan.
• Menyusun rencana kartu stock perusahaan
• Melaksanakan pemnayaran gaji, upah, lembur dan komisi karywaan
HRD
• Merekrut dan melatih karyawan baru
• Memonitor kerja karyawan dan tingkat kerja karyawan
4. Direktur Marketing
• Membantu menetapkan harga produk.
• Membuat rencana dan kebijaksanaan pemasaran serta memimpin dan mengawasi pelakasaan kebijaksanaan pemasaran tersebut
• Melaksanakan kebijaksanaan dari Direktur Operasional • Melaksanakan tugas produksi serta pengaturan stok
• Memonitor sistem pengendalian manajemen yang disiapkan oleh bagian operasional dan mengevaluasi pelaksanaan kegiatan perusahaan
Di bawah Operational Division terdapat :
5.1 GA (General Affair)
• Mengatur building maintenance, yakni listrik, air, telepon, dan bangunan.
5.2 Gudang Operational
• Mengecek Kartu Stock (Stock Card) yaitu mengecek jumlah data atau jumlah barang yang masuk ke dalam gudang.
6. Marketing Division
• Membuat rencana pemasaran dan penjualan di seluruh counter2 yang tersebar di Indonesia
• Melaksanakan kebijakan-kebijakan di bidang penjualan dan pemasaran dalam rangka penetrasi pasar
• Menjalankan seleksi dan uji coba pasar
7. S ales Division
• Menerima dan memproses transaksi pemesanan dari counter-counter
3.1.4 Proses Bisnis dan Diagram Aliran
Prosedur yang sedang berjalan pada sistem informasi persediaan pada PT M ata Air Boga Lestari (Hop-Hop) adalah sebagai berikut :
Prosedur persediaan sampai tahap distribusi terdiri dari beberapa tahap yaitu:
• Purchase Order yang bertujuan untuk memesan barang kepada
supplier ketika stock barang yang digunakan untuk kegiatan produksi
menipis. Pemesanan barang disini dibagi menjadi dua bagian yaitu persediaan untuk Gudang Atas dan persediaan untuk Gudang Bawah • Stock Control Gudang Bawah, yakni mencatat dan mengontrol
barang-barang yang masuk atau dibeli (diterima). Barang disimpan di gudang bawah, persediaan bertambah. Dan juga mencatat dan mengontrol barang-barang yang keluar. Pengertian barang keluar dari Gudang bawah adalah barang dipakai untuk kegiatan produksi dan juga ada yang langsung didistribusikan. Barang keluar dari Gudang Bawah dan persediaan berkurang
• Stock Control Gudang Atas, yakni mencatat dan mengontrol barang-barang yang masuk atau dibeli (diterima). Barang disimpan di gudang atas, persediaan bertambah. Darisini persediaan barang tersebut dipakai untuk proses produksi dengan menggabungkan sebagian persediaan yang diambil dari Gudang Bawah juga sehingga mengurangi persediaan kedua Gudang. Hasil produksi tersebut menghasilkan barang jadi yang akan menambah stock barang produksi.
produksi kepada counter, bazaar dan juga franschise setelah mendapat
order pesanan.
• Setiap proses dicatat dan dibuat laporannya kepada kepala divisi inventory.
Berikut ini adalah bagan flowchart (diagram alir) prosedur persediaan :
Gambar 3.2 Diagram Alir Sistem Persediaan
Berikut lebih diperluas dari diagram persedian dengan produksi dari bagan sebelumnya:
Gambar 3.3 Diagram 2 Alir Sistem Persediaan, Produksi dan Distribusi
Dari diagram 2 dan prosedur sebelumnya, dapat dijabarkan proses bisnis yang berlangsung pada bagian persediaan, produksi dan distribusi sebagai berikut:
Kepala divisi inventory mendapat laporan persediaan dari penanggung jawab Gudang Bawah dan Gudang Atas untuk memesan barang kembali. Dari laporan tersebut, kepala divisi mengajukan purchase order yang dibuat rangkap 3. Rangkap 1 untuk dibuat laporan persediaan setiap barang yang dibeli dan yang masuk ke dalam gudang, yang akan diserahkan kepada manajer keuangan. Rangkap 2 diserahkan kepada kepala divisi operasional untuk pengawasan pembelian barang apakah sesuai atau tidak. Rangkap 3 untuk diserahkan ke supplier setelah kedua rangkap sebelumnya telah disetujui.
• Stock Control Gudang Bawah
Penanggungjawab Gudang Bawah mengawasi dan memeriksa masuknya barang yang datang dari pemasok untuk Gudang Bawah apakah sesuai dengan pesanan dan juga faktur dari vendor dimana jumlah barang sesuai dengan yang tertera di faktur. Setelah itu, penanggungjawab membuat laporan untuk diserahkan kepada kepala divisi inventory untuk pengawasan persediaan dan juga laporan pemakain barang yang diambil oleh bagian Gudang Atas untuk proses produksi.
• Stock Control Gudang Atas dan Produksi
Penanggungjawab Gudang Atas mengawasi dan memeriksa masuknya barang yang datang dari pemasok untuk Gudang Atas apakah sesuai dengan pesanan dan juga faktur dari vendor dimana jumlah barang sesuai dengan yang tertera di faktur. Kemudian juga penanggungjawab
melaporkan pengambilan barang dari Gudang Bawah kepada penanggungjawab Gudang Bawah dimana barang yang diambil akan digunakan untuk proses produksi. Di dalam produksi bahan baku dari Gudang Atas dan sebagian dari Gudang Bawah dikombinasikan dengan standar produksi yang telah ditetapkan menjadi barang hasil produksi. Setelah proses produksi selesai, maka diadakan pemeriksaan terhadap hasil produksi apakah sudah memenuhi standar barang yang akan dihasilkan. Setelah itu, penanggungjawab Gudang Atas membuat laporan untuk diserahkan kepada kepala divisi untuk pengawasan persediaan dan juga laporan produksi.
• Delivery Order
Setelah melalui proses produksi maka barang hasil produksi dikemas agar dapat siap dikirimkan mengikuti permintaan pesanan yang ada. Di sini bagian distribusi yang berperan dalam hal mengawasi barang apa saja yang keluar dan dari pengawasan tersebut dibuat laporan distribusi barang untuk diserahkan kepada kepala divisi inventory. Pengiriman pesanan di sini dibagikan menjadi 3 tujuan yaitu kepada Counter (gerai milik perusahaan), Bazaar (gerai yang diadakan pada acara-acara tertentu) dan juga Franshise sebagai mitra kerjasama yang menggunakan gerai dari perusahaan untuk menjual barang hasil produksi. Khusus untuk Franchise, barang bisa dikirim atau juga dapat diambil sendiri dari pihak Franshise
• Informasi pembelian barang
Kebutuhan informasi barang (Item dan Flavour) yang dibeli oleh PT M ata Air Boga Lestari
• Informasi stok flavour
Kebutuhan informasi mengenai persediaan flavour yang dapat diproduksi oleh PT M ata Air Boga Lestari
• Informasi stok item
Kebutuhan informasi mengenai persediaan item yang dapat dikirim oleh PT M ata Air Boga Lestari
• Informasi karyawan
Kebutuhan informasi mengenai data-data karyawan yang bekerja di PT M ata Air Boga Lestari
• Informasi franchise
Kebutuhan informasi mengenai data-data franchise yang terdapat di PT M ata Air Boga Lestari
• Informasi bazaar
Kebutuhan informasi mengenai data-data bazaar yang dilakukan oleh PT M ata Air Boga Lestari
• Informasi counter
Kebutuhan informasi mengenai data-data counter yang terdapat di PT M ata Air Boga Lestari
Kebutuhan informasi mengenai data-data pengiriman barang (item dan flavour) yang dilakukan oleh PT M ata Air Boga Lestari
• Informasi konversi
Kebutuhan informasi mengenai produksi flavour dari per bag menjadi sachet.
Tabel 3.1 Kebutuhan Informasi PT. Mata Air Boga Lestari
Kebutuhan Informasi Direktur Utama Direktur Operasional Direktur Finance, Accounting, dan HRD Direktur M arketing Operational Division M arketing Division Informasi pembelian barang √ √ √ √ Informasi stok √ √ √ Informasi karyawan √ √ √ Informasi Stand √ √ √ √ √ Informasi pengiriman barang √ √ √ √ √
Setelah mengadakan penelitian terhadap sistem yang sedang berjalan pada PT M ata Air Boga Lestari (Hop-Hop), terdapat beberapa permasalahan umum yang dihadapi antara lain :
1. Data-data perusahaan masih dikerjakan secara manual dan berbasis file sehingga memakan waktu yang cukup lama untuk mencari data yang diinginkan.
2. Dalam produksi tidak adanya ketentuan pasti dalam konversi dari per bag menjadi sachet.
3. Kesulitan dalam penyimpanan berkas karena transaksi dan produksi yang terjadi cukup banyak.
4. Sering terjadi ketidaksesuaian antara jumlah persediaan barang yang ada di gudang dengan jumlah yang tercatat di kartu stock
3.1.7 Usulan Pemecahan Masalah
Berdasarkan hasil analisis terhadap permasalahan yang dihadapi perusahaan tersebut, maka diusulkan untuk menerapkan sistem basis data sebagai pengganti sistem manual dalam menjalankan bisnisnya. Sistem basis data yang diusulkan di sini adalah basis data yang :
1. Dapat menyediakan keakuratan data persediaan sehingga jumlah yang di gudang sama dengan jumlah yang tercatat pada laporan persediaan dan begitu juga sebaliknya
2. Dapat menyediakan kemudahan-kemudahan dalam melakukan penyimpanan data-data transaksi penting perusahaan.
3. M erancang aplikasi sistem basis data persediaan dan produksi dengan meminimalkan kelemahan sistem yang ada, sehingga segala macam transaksi persediaan dan produksi dapat dijalankan secara cepat dan akurat, serta memudahkan proses pencarian informasi.
4. Secara khusus merancang fungsi sistem reorder point sehingga kegiatan produksi perusahaan tidak terganggu dan dapat berjalan lebih optimal dengan adanya kendali dari sistem untuk pemesanan barang produksi
5. M erancang sistem produksi menggunakan standar produksi perusahaan dengan metode indeks yang dapat diubah sesuai dengan kebutuhan sehingga bagian produksi mendapatkan hasil yang optimal dalam proses produksi.
6. Pendataan menggunakan aplikasi basis data yang konsisten dan
user-friendly sehingga dapat melakukan pemeriksaan dan penyesuaian data
dengan mudah, cepat, dan akurat melalui data-data yang tersedia dalam basis data.
7. M engadakan pelatihan dengan sistem yang baru sehingga pegawai-pegawai yang ada benar-benar familiar dengan sistem tersebut, sehingga produktivitas dalam bekerja menjadi lebih baik.
3.2 Perancangan Sistem Basis Data
Perancangan Sistem Basis Data meliputi perancangan konseptual,
perancangan logikal dan perancangan fisikal, yang akan dijelaskan sebagai berikut.
Tahap awal dalam perancangan sebuah sistem basis data adalah perancangan konseptual, yang meliputi langkah-langkah sebagai berikut :
1. M engidentifikasi tipe entity 2. M engidentifikasi tipe relasi
3. M engidentifikasi dan asosiasi atribut dengan entity atau tipe relasi 4. M engidentifikasi domain atribut
5. M engidentifikasi candidate key dan primary key 6. M engecek Redudansi
7. Validasi model koseptual terhadap transaksi
3.2.1.1 Mengidentifikasi Tipe-Tipe Entitas
Tabel 3.2 Identifikasi Tipe Entitas
Nama Entiti Deskripsi
SuratJalan Data mengenai barang yang akan dikirim perusahaan dan tujuan ke tempat pesanan (Counter, Franchise, Bazaar)
MsProduksi Data mengenai proses produksi seperti kode, tanggal dan barang yang dihasilkan
MsStock Data mengenai status suatu stock dalam gudang MsKonversi Data mengenai barang yang akan dikonversi FormOrder Data mengenai status sebuah order yang terjadi
FakturVendor Data mengenai faktur yang di dapat dari vendor ketika terjadi proses pembelian dan proses pengiriman
MsVendor Data mengenai vendor yang pernah berhubungan dengan PT. M ata Air Boga Lestari
Karyawan Data mengenai karyawan-karyawan yang bekerja pada PT M ata Air Boga Lestari
Stand Data mengenai seluruh stand yang dimiliki oleh PT. M ata Air Boga Lestari termasuk Bazaar dan Franchise
3.2.1.2 Mengidentifikasi Tipe-Tipe Relasi
Identifikasi tipe relasi antar entity sebagai berikut : 1. Karyawan menangani M sProduksi
2. Karyawan melakukan FormOrder 3. Karyawan menangani Stand
4. Karyawan menerima FakturVendor 5. MsProduksi melibatkan M sStock
7. FakturVendor melibatkan M sStock 8. MsVendor mengeluarkan FakturVendor 9. SuratJalan melibatkan M sStock
10. Karyawan menangani SuratJalan 11. MsKonversi melibatkan M sStock 12. MsKonversi melibatkan M sProduksi
Tabel 3.3 Identifikasi Tipe Relasi Antar Entitas
Entitas Multiplicity Relationship Entitas Multiplicity
Karyawan 1 M enerima FakturVendor 1…*
1…* M enangani MsProduksi 1…*
1 M elakukan FormOrder 1…*
1 M enangani SuratJalan 1…*
Stand 1…* M elibatkan Karyawan 1…*
MsProduksi 1…* M elibatkan MsStock 1…*
FormOrder 1...* 1…* M elibatkan M elibatkan MsVendor MsStock 1 1…*
FakturVendor 1…* M elibatkan MsStock 1…*
1…* M elibatkan MsStock 1…* SuratJalan 1…* M elibatkan Stand 1 1…* M elibatkan MsStock 1…* MsKonversi 1 M elibatkan MsProduksi 1…* KARYAWAN FORMORDER MSSTOCK SURATJALAN MSVENDOR STAND MSPRODUKSI FAKTURVENDOR melibatkan melibatkan Menerima melibatkan melibatkan Menangani melakukan melibatkan mengeluarkan 1..* 1..* 1 1 1..* 1…* 1..* 1..* 1..* 1..* 1..* 1 1..* 1..* 1.. * 1.. * menangani melibatkan 1 1..* 1..* 1..* 1 1..* melibatkan 1 1..* MSKONVERSI melibatkan melibatkan 1.. * 1..* 1..* 1
Gambar 3.5 ER Diagram Entity dan Tipe Relationship
3.2.1.3 Mengidentifikasi dan Menghubungkan Atribut dengan Tipe Entitas, Domain Atribut, Primary Key, dan Candidate
• Mengidentifikasi Atribut
Tabel 3.4 Identifikasi SuratJalan beserta Atributnya Attribute Description Data Types and
Length
Null Multivalue
Qty Jumlah Item yang akan Dikirim
Number(5) No No
Status Status yang
menyatakan ‘Approve’ atau ‘Pending’
Varchar2(7) No No
Deskripsi Deskripsi mengenai barang atau tempat
yang akan dikirim
VARCHAR2(50) Yes No
Tabel 3.5 Identifikasi Karyawan beserta Atributnya
Attribute Description Data Types and Length
Null Multivalue
KdKaryawan Kode Karyawan Char(6) No No
NamaKaryawan Nama Karyawan Char(50) No No
Alamat Alamat Karyawan Varchar2(50) No No
TglLahir Tanggal Lahir Karyawan Date No No Telp Nomor Telp Karyawan Varchar2(15) Yes No
Status Status Kerja Varchar2(8) No No
Tabel 3.6 Identifikasi S tand beserta Atributnya
Attribute Description Data Types and Length
KdStand Kode Stand Char(4) No No
NamaStand Nama Stand Varchar2(50) No No
Alamat Alamat Stand Varchar2(50) No No
Telp Nomor Telp Stand Varchar2(15) No No
Tabel 3.7 Identifikasi MsProduksi beserta Atributnya
Attribute Description Data Types and Length
Null Multivalue
KdProduksi Kode Produksi Char(11) No No
TglProduksi Tanggal Produksi Date No No
QtyPakai Jumlah item yang dipakai Number(6,2) No No TglJadi Tanggal jadi suatu produksi Date No No
QtyHasil Hasil Produksi Number(6) No No
Tabel 3.8 Identifikasi MsS tock beserta Atributnya
Attribute Description Data Types and Length
Null Multivalue
PartyNo Kode Barang Char(5) No No
NamaBarang Nama Barang Varchar2(50) No No
JumlahStock Jumlah Stock Number(7,2) No No
Satuan Satuan Varchar2(6) No No
ROP Stock minimum barang harus ada di gudang
Tabel 3.9 Identifikasi FakturVendor beserta Atributnya
Attribute Description Data Types and Length
Null Multivalue
NoFaktur Nomor Faktur Char(16) No No
TglFaktur Tanggal Faktur Date No No
QtyM asuk Jumlah item yang dibeli Number(5) No No Deskripsi Deskripsi mengenai barang
yang dikirim
Varchar2(50) Yes No
Tabel 3.10 Identifikasi MsVendor beserta Atributnya Attribute Description Data Types
and Length
Null Multivalue
KdVendor Kode Vendor Char(6) No No
NamaVendor Nama Vendor Varchar2(50) No No
Alamat Alamat Vendor Varchar2(50) No No
Telp Nomor Telp Vendor Varchar2(15) No No
Fax Nomor Fax Vendor Varchar2(15) Yes No
Tabel 3.11 Identifikasi FormOrder beserta Atributnya Attribute Description Data Types
and Length
Null Multivalue
NoOrder Nomor Order Char(11) No No
TglOrder Tanggal Order Date No No
Qty Jumlah Item yang akan dipesan
Number(5) No No
Status Status apakah ‘Approve’ atau ‘Pending’
Varchar(7) No No
Deskripsi Deskripsi tentang FormOrder Varchar2(50) Yes No
Tabel 3.12 Identifikasi MsKonversi beserta Atributnya
Attribute Description Data Types and Length
Null Multivalue
KdKonversi Kode Konversi Char(11) No No
NamaKon Nama Konversi Varchar2(30)
Perkalian Suatu index yang akan dijadikan nilai konversi
Number(4,1) No No
Perbandingan Suatu perbandingan antara satu item dengan item lain jika dikonversi
Tabel 3.13 Domain Atribut
Nama Domain
Nama Entity Nama Field Atribut Domain
KdStand Stand KdStand Char(4)
[A-Z][0-9][0-9][0-9] PartyNo MsStock PartyNo Char(5)
[A-Z][A-Z][0-9][0-9][0-9] KdKaryawan Karyawan KdKaryawan Char(6)
[K][R][0-9][0-9][0-9][0-9]
KdVendor Vendor KdVendor Char(6)
[S][U][P][0-9][0-9][0-9] KdProduksi MsProduksi KdProduksi Char(11)
[P][R][0-9][0-9][/][0-9][0-9][/][0-9][0-9][0-9] KdKonversi MsKonversi KdKonversi Char(11)
[K][N][0-9][0-9][/][0-9][0-9][/][0-9][0-9][0-9]
NoOrder FormOrder NoOrder Char(11)
[P][O][0-9][0-9][/][0-9][0-9][/][0-9][0-9][0-9] NoSuratJalan SuratJalan NoSuratJalan Char(16)
[0-9][0-9][0-9][0-9][0- 9][/][G][D][0-9][0-9][/][0-9][0-9][0-9][0-9]
NoFaktur FakturVendor NoBon Char(16)
[0-9][0-9][0-9][0-9][0- 9][/][N][B][0-9][0-9][/][0-9][0-9][0-9][0-9]
Satuan MsStock Satuan Varchar2(6) Status FormOrder
SuratJalan
Status Status
Varchar2(7)
Status Karyawan Status Varchar2(8)
NoTelp Karyawan Stand MsVendor Telp Telp Telp Varchar(215)
Fax MsVendor Fax Varchar2(15)
Nama MsKonversi NamaKon Varchar2(30)
Nama Karyawan Stand MsStock MsVendor MsVendor NamaKaryawan NamaStand NamaBarang NamaVendor CP Varchar2(50) Alamat Karyawan Vendor Alamat Alamat Varchar2(50)
Deskripsi FakturVendor FormOrder SuratJalan Deskripsi Varchar2(50) Tanggal Karyawan FormOrder FakturVendor SuratJalan MsProduksi MsProduksi TglLahir TglOrder TglFaktur TglSurat TglProduksi TglJadi Date
ROP MsStock ROP Number (3)
Perkalian MsKonversi Perkalian Number (4,2) Perbandingan MsKonversi Perbandingan Number (3) Qty SuratJalan MsProduksi FakturVendor FormOrder Qty QtyHasil Qty Qty Number(6)
JumlahStock MsStock JumlahStock Number (7,2) QtyPakai MsProduksi QtyPakai Number(7,2)
• Mengidentifikasi Primary Key dan Candidate Key
Tabel 3.14 Primary Key dan Candidate Key
No. Entity Candidate Key Primary Key
1 FakturVendor NoFaktur TglFaktur
NoFaktur
2 FormOrder NoOrder NoOrder
3 Karyawan KdKaryawan
Telp
KdKaryawan
4 SuratJalan SuratJalanID SuratJalanID
5 MsVendor KdVendor Telp KdVendor 6 MsProduksi KdProduksi TglProduksi KdProduksi 7 Stand KdStand NamaStand KdStand 8 MsStock PartyNo NamaBarang PartyNo
Gambar 3.6 ER Konseptual Awal Dengan PK 3.2.1.4 Memeriksa Redudansi Sistem
Pada langkah ini, dilakukan pengecekan untuk menghilangkan redundansi. Terdapat 3 aktivitas pada langkah ini yaitu :
1. M engecek relasi one-to-one ( 1:1 ).
Pada relasi yang ada tidak terdapat relasi one-to-one, sehingga tahap ini tidak perlu dilakukan.
2. M enghilangkan relasi yang redundan.
Pada relasi-relasi entiti yang ada, tidak ada relasi yang redundan yang perlu dihilangkan.
Tidak ada relasi yang berhubungan dengan dimensi waktu. Oleh karena itu langkah ini tidak dilakukan.
3.2.1.5 Menggunakan Enhanced Modeling Concepts
Gambar 3.7 ER menggunakan konsep permodelan yang diperbaharui 3.2.1.6 Memvalidasi Model Konseptual Terhadap Transaksi User
Daftar validasi model konseptual terhadap transaksi dapat dilihat sebagai berikut:
(a) mendapatkan informasi jumlah barang dari M sStock (b) Karyawan melakukan pesanan
(c) Form Order setelah di Approve akan dikirim ke vendor (d) Vendor mengirim barang beserta faktur
MsStock
(f) Karyawan melakukan produksi
(g) Dalam tahap produksi, terdapat proses konversi perbandingan barang mentah yang dicampur untuk menghasilkan barang produksi
(h) Setelah produksi, hasil produksi akan di entry (dimasukkan) ke dalam M sStock
(i) Karyawan menerima atau membuat SuratJalan
(j) SuratJalan berisikan data barang yang akan dikirim, alamat yang akan dikirim
(k) Karyawan menerima Faktur Vendor dan membandingkan dengan barang yang dikirim apa sudah sesuai dengan Faktur
FormOrder PK NoO rder St and PK KdStand MsStock PK Par tyNo MsProduksi PK KdProduksi Karyawan PK KdKaryawan MsVendor PK KdVendor Fak turVendor PK NoFaktur SuratJalan PK NoSuratJal an me na ng a ni m el ib atka n 1 ..* 1 ..* 1 1 ..* 1..* 1 ..* 1 ..* 1 ..* 1 ..* 1..* 1 ..* 1..* 1 1 ..* 1 1 ..* 1 ..* 1 ..* me li ba tka n m en e rim a me la ku ka n 1 me li ba tka n me la ku ka n 1 m el aku ka n me la ku ka n m el ib atka n 1 me li b atka n 1..* m el ak uk an 1 ..* 1..* MsKonversi PK KdKonver si m el ib atka n me li ba tka n 1 ..* 1..* 1 ..* 1 Login PK KdKaryaw an me lib a tk an Bazaar PK KdStand Franchise PK KdStand me li ba tkan me li ba tkan (a ) (b) (c) ( d) ( e) (f) (g) (h) (i) (j) (k )
Gambar 3.8 ERD dengan Transaksi
3.2.2 Perancangan Basisdata Logikal
3.2.2.1 Menghilangkan fitur yang tidak sesuai dengan model relasional
1. Menghilangkan many-to-many binary relationship type • MsProduksi (1..*) Melibatkan MsStock (1..*)
(ii)
Keterangan : (i) Kondisi awal, (ii) Kondisi akhir
Gambar 3.9 Dekomposisi MsProduksi dengan MsStock
• FakturVendor (1…*) Melibatkan MsStock (1…*)
(i)
(ii)
Keterangan : (i) Kondisi awal, (ii) Kondisi akhir
• SuratJalan (1..*) Melibatkan MsStock (1..*)
(i)
(ii)
Keterangan : (i) Kondisi awal, (ii) Kondisi akhir
Gambar 3.11 Dekomposisi SuratJalan dengan MsStock
• MsKonversi (1..*) Melibatkan MsStock (1..*) (i)
Keterangan : (i) Kondisi awal, (ii) Kondisi akhir
Gambar 3.12 Dekomposisi MsKonversi dengan MsStock
• Stand (1...*) Melibatkan Karyawan (1...*)
(i)
(ii)
Keterangan : (i) Kondisi awal, (ii) Kondisi akhir
Gambar 3.13 Dekomposisi Stand dengan Karyawan
• FormOrder (1…*) melibatkan MsStock (1…*) (i)
(ii)
Keterangan : (i) Kondisi awal, (ii) Kondisi akhir
Gambar 3.14 Dekomposisi FormOrder dengan MsStock
• Karyawan (1…*) menangani MsProduksi (1…*) (i)
(ii)
Keterangan : (i) Kondisi awal, (ii) Kondisi akhir
1. Tipe entiti kuat
• Karyawan (KdKaryawan, NamaKaryawan, Alamat, TglLahir, Telp, Status)
Primary Key: KdKaryawan
• Stand (KdStand, NamaStand, Alamat, Telp) Primary Key: KdStand
• MsStock (PartyNo, NamaBarang, JumlahStock, Satuan, ROP) Primary Key: PartyNo
• MsKonversi (KdKonversi, NamaKon, Perkalian) Primary Key: KdKonversi
• MsProduksi (KdProduksi, TglProduksi) Primary Key: KdProduksi
• MsVendor (KdVendor, NamaVendor, Alamat, Telp, Fax, CP) Primary Key: KdVendor
• FakturVendor (NoFaktur, TglFaktur, Deskripsi) Primary Key: NoFaktur
• FormOrder (NoOrder, TglOrder, Qty, Status, Deskripsi) Primary Key: NoOrder
• SuratJalan (NoSuratJalan, TglSurat, Status) Primary Key: NoSuratJalan
2. Tipe entiti lemah
• DetailProduksi (KdProduksi, PartyNo, QtyPakai) Primary Key: KdProduksi, PartyNo
• AfterProd (KdProduksi, PartyNo, KdKaryawan, TglJadi, QtyHasil) Primary Key: KdProduksi, KdKaryawan
• DetailFV (NoFaktur, PartyNo, QtyMasuk) Primary Key: NoFaktur, PartyNo • DetailSuratJalan (NoSuratJalan, PartyNo)
Primary Key: NoSuratJalan, PartyNo
• DetailKonversi (KdKonversi, PartyNo, Perbandingan) Primary Key: KdKonversi, PartyNo
• TempatKerja (KdStand, KdKaryawan, TglMasuk, TglKeluar) Primary Key: KdStand, KdKaryawan
• Franchise (KdStand, NamaPerusahaan, Alamat, TelpPerusahaan, FaxPerusahaan, CP)
Primary Key: KdStand
• Login (KdKaryawan, Username, Password, Privilege) Primary Key: KdKaryawan
• Bazaar (KdStand, TglAwal, TglAkhir) Primary Key: KdStand
• Hubungan Karyawan dengan FormOrder
Setiap Karyawan dapat melakukan satu atau lebih FormOrder. Dengan demikian pada FormOrder terdapat atribut primary key dari Karyawan yaitu KdKaryawan
Post KdKaryawan ke FormOrder untuk model relasi (1 : *) melakukan
Karyawan (KdKaryawan,
NamaKaryawan , Alamat,TglLahir, Telp, Status)
Primary Key KdKaryawan
FormOrder(NoOrder, TglOrder, QtyOrder, Deskripsi, Status, KdKaryawan)
Primary Key NoOrder
Foreign Key KdKaryawan references Karyawan (KdKaryawan)
• Hubungan Karyawan dengan FakturVendor
Setiap Karyawan dapat menerima satu atau lebih FakturVendor. Dengan demikian pada FakturVendor terdapat atribut primary key dari Karyawan yaitu KdKaryawan
Post KdKaryawan ke FakturVendor untuk model relasi (1 : *) menerima
Karyawan (KdKaryawan,
NamaKaryawan , Alamat,TglLahir, Telp, Status)
Primary Key KdKaryawan
FakturVendor (NoFaktur, TglFaktur, Deskripsi, KdKaryawan)
Primary Key NoFaktur
Foreign Key KdKaryawan references Karyawan (KdKaryawan)
• Hubungan Stand dengan SuratJalan
Setiap Stand dapat melibatkan satu atau lebih SuratJalan. Dengan demikian pada SuratJalan terdapat atribut primary key dari Stand yaitu KdStand
Post KdStand ke SuratJalan untuk model relasi (1 : *) melibatkan
Stand (KdStand, NamaStand, Alamat, Telp)
Primary Key KdStand
SuratJalan (NoSuratJalan, TglSurat, Status, KdStand)
Primary Key NoSuratJalan
Foreign Key KdStand references Stand (KdStand)
• Hubungan MsVendor dengan FakturVendor
Setiap M sVendor dapat mengeluarkan satu atau lebih FakturVendor. Dengan demikian pada FakturVendor terdapat atribut primary key dari M sVendor yaitu KdVendor
Post KdVendor ke FakturVendor untuk model relasi (1 : *) mengeluarkan
MsVendor(KdVendor, NamaVendor, Alamat, Telp, Fax, CP)
Primary Key KdVendor
FakturVendor (NoFaktur, TglFaktur, Deskripsi, KdKaryawan, KdVendor) Primary Key NoFaktur
Foreign Key KdKaryawan references Karyawan (KdKaryawan)
Foreign Key KdVendor references Vendor (KdKaryawan)
Setiap M sKonversi dapat melibatkan satu atau lebih M sProduksi. Dengan demikian pada M sProduksi terdapat atribut primary key dari MsKonversi yaitu KdKonversi
Post KdKonversi ke M sProduksi untuk model relasi (1 : *) mengeluarkan
MsKonversi (KdKonversi, NamaKon, Perkalian)
Primary Key: KdKonversi
MsProduksi (KdProduksi, TglProduksi, KdKonversi)
Primary Key: KdProduksi
Foreign Key KdKonversi references MsKonversi (KdKonversi)
• Hubungan Karyawan dengan SuratJalan
Setiap Karyawan dapat menangani satu atau lebih SuratJalan. Dengan demikian pada SuratJalan terdapat atribut primary key dari Karyawan yaitu KdKaryawan
Post KdKaryawan ke SuratJalan untuk model relasi (1 : *) menangani
Karyawan (KdKaryawan,
NamaKaryawan, Alamat, TglLahir, Telp) Primary Key: KdKaryawan
SuratJalan (NoSuratJalan, TglSurat, Status, KdStand, KdKaryawan)
Primary Key NoSuratJalan
Foreign Key KdStand references Stand (KdStand)
Foreign Key KdKaryawan references Karyawan (KdKaryawan)
• Hubungan Stand dengan Franchise
Setiap Stand dapat memiliki satu atau lebih Franchise. Dengan demikian pada Franchise terdapat atribut primary key dari Stand yaitu KdStand
Post KdStand ke Franchise untuk model relasi (1 : *) memiliki
Stand (KdStand, NamaStand, Alamat, Telp)
Primary Key: KdStand
Franchise (KdStand, NamaPerusahaan, Alamat, TelpPerusahaan)
Primary Key: KdStand
Foreign Key KdStand references Stand (KdStand)
• Hubungan Stand dengan Bazaar
Setiap Stand dapat memiliki satu atau lebih Bazaar. Dengan demikian pada Bazaar terdapat atribut primary key dari Stand yaitu KdStand Post KdStand ke Bazaar untuk model relasi (1 : *) memiliki
Stand (KdStand, NamaStand, Alamat, Telp)
Primary Key: KdStand
Bazaar (KdStand, TanggalAwal, TanggalAkhir)
Primary Key: KdStand
Foreign Key KdStand references Stand (KdStand)
4. Tipe Relasi Binari One to One (1:1)
• Hubungan antara Karyawan dengan Login
Post KdKaryawan ke Login untuk model relasi (1 : 1) memiliki
Karyawan (KdKaryawan,
namaKaryawan , Alamat,TglLahir, Telp, Status)
Primary Key KdKaryawan
Login (KdKaryawan, Username, Password, Privilege)
Primary Key KdKaryawan
Foreign Key KdKaryawan references Karyawan (KdKaryawan)
5. Tipe Relasi Binari M any to M any (*:*)
• Hubungan antara Stand dengan Karyawan
Relasi antara Stand dengan Karyawan M enghasilkan entity baru yaitu TempatKerja yang menerima posting KdStand dan KdKaryawan
Stand (KdStand, NamaStand, Alamat, Telp) Primary Key: KdStand
Karyawan (KdKaryawan, namaKaryawan , Alamat,TglLahir, Telp, Status)
Primary Key KdKaryawan TempatKerja (KdKaryawan, KdStand)
Primary Key KdKaryawan, KdStand
Foreign Key KdKaryawan references Karyawan (KdKaryawan) Foreign Key KdStand references Stand (KdStand)
• Hubungan antara MsProduksi dengan MsStock
Relasi antara M sProduksi dengan M sStock M enghasilkan entity baru yaitu DetailProduksi yang menerima posting KdStand dan PartyNo
KdKonversi)
Primary Key: KdProduksi
Foreign Key KdKonversi references MsKonversi (KdKonversi)
JumlahStock, Satuan, ROP) Primary Key: PartyNo
DetailProduksi (KdProduksi, PartyNo, QtyPakai) Primary Key: KdProduksi, PartyNo
Foreign Key KdProduksi references M sProduksi (KdProduksi) Foreign Key PartyNo references M sStock (PartyNo)
• Hubungan antara FakturVendor dengan MsStock
Relasi antara FakturVendor dengan M sStock M enghasilkan entity baru yaitu DetailFV yang menerima posting NoFaktur dan PartyNo
FakturVendor (NoFaktur, TglFaktur, Deskripsi, KdKaryawan, KdVendor) Primary Key NoFaktur
Foreign Key KdKaryawan references Karyawan (KdKaryawan)
Foreign Key KdVendor references Vendor (KdKaryawan)
MsStock (PartyNo, NamaBarang, JumlahStock, Satuan, ROP) Primary Key: PartyNo
DetailFV (NoFaktur, PartyNo, QtyM asuk) Primary Key: NoFaktur, PartyNo
Foreign Key NoFaktur references FakturVendor (NoFaktur)
Foreign Key PartyNo references M sStock (PartyNo)Foreign Key KdProduksi references MsProduksi (KdProduksi)
Relasi antara SuratJalan dengan M sStock M enghasilkan entity baru yaitu DetailSuratJalan yang menerima posting NoSuratJalan dan PartyNo
SuratJalan (NoSuratJalan, TglSurat, Status, KdStand, KdKaryawan)
Primary Key NoSuratJalan
Foreign Key KdStand references Stand (KdStand)
Foreign Key KdKaryawan references Karyawan (KdKaryawan)
MsStock (PartyNo, NamaBarang, JumlahStock, Satuan, ROP) Primary Key: PartyNo
DetailSuratJalan (NoSuratJalan, PartyNo, qtyKeluar) Primary Key: NoSuratJalan, PartyNo
Foreign Key NoSuratJalan references SuratJalan (NoSuratJalan) Foreign Key PartyNo references M sStock (PartyNo)
• Hubungan antara MsKonversi dengan MsStock
Relasi antara M sKonversi dengan M sStock M enghasilkan entity baru yaitu DetailKonversi yang menerima posting KdKonversi dan PartyNo
MsKonversi (KdKonversi, NamaKon, Perkalian)
Primary Key: KdKonversi Foreign Key KdKaryawan references Karyawan (KdKaryawan)
MsStock (PartyNo, NamaBarang, JumlahStock, Satuan, ROP) Primary Key: PartyNo
DetailKonversi (KdKonversi PartyNo, Perbandingan) Primary Key: KdKonversi, PartyNo
Foreign Key KdKonversi references M sKonversi (KdKonversi) Foreign Key PartyNo references M sStock (PartyNo)
• Hubungan antara FormOrder dengan MsStock
Relasi antara FormOrder dengan M sStock M enghasilkan entity baru yaitu DetailOrder yang menerima posting NoOrder dan PartyNo
FormOrder(NoOrder, TglOrder, QtyOrder, Deskripsi, Status, KdKaryawan)
Primary Key: NoOrder
Foreign Key KdKaryawan references Karyawan (KdKaryawan)
MsStock (PartyNo, NamaBarang, JumlahStock, Satuan, ROP) Primary Key: PartyNo
DetailOrder(NoOrder, PartyNo, QtyOrder) Primary Key: NoOrder, PartyNo
Foreign Key NoOrder references FormOrder (NoOrder) Foreign Key PartyNo references M sStock (PartyNo)
• Hubungan Karyawan dengan MsProduksi
Relasi antara Karyawan dengan M sProduksi M enghasilkan entity baru yaitu AfterProd yang menerima posting KdKaryawan dan KdProduksi
Karyawan (KdKaryawan,
NamaKaryawan , Alamat,TglLahir, Telp, Status)
Primary Key KdKaryawan
MsProduksi (KdProduksi, TglProduksi, KdKonversi)
Primary Key KdProduksi
Foreign Key KdKonversi references MsKonversi (KdKonversi)
AfterProd(KdProduksi, PartyNo, KdKaryawan, TglJadi, QtyHasil) Primary Key: KdProduksi, KdKaryawan
Foreign Key KdProduksi references M sProduksi (KdProduksi) Foreign Key PartyNo references M sStock (PartyNo)
3.2.2.3 Validasi Relasi dengan Normalisasi 1NF
Semua relasi telah memenuhi 1NF karena telah memiliki Primary Key dan tidak
ditemukan Repeating groups sebab tiap baris dan kolom dalam sebuah relasi telah mengandung hanya satu nilai.
2NF
Semua relasi telah memenuhi 2NF karena tidak ditemukan ketergantungan parsial karena setiap atribut non-primary key telah bersifat tergantung penuh dengan
Primary Key.
3NF
Semua relasi telah memenuhi 3NF karena tidak ditemukan ketergantungan transitif karena tidak ada atribut bukan primary key bergantung secara transitif terhadap primary key
3.2.2.4 Definisi Integrity Constraint
Tabel 3.15 Batasan Integritas
Karyawan (KdKaryawan, namaKaryawan , Alamat,TglLahir, Telp, Status)
Primary Key KdKaryawan
Stand (KdStand, NamaStand, Alamat, Telp)
Primary Key: KdStand
MsKonversi (KdKonversi, NamaKon, Perkalian)
MsVendor (KdVendor, NamaVendor, Alamat, Telp, Fax, CP)
Primary Key KdVendor
Login (KdKaryawan, Username, Password, Privilege)
Primary Key KdKaryawan
Foreign Key KdKaryawan references Karyawan (KdKaryawan)
FormOrder (NoOrder, TglOrder, QtyOrder, Deskripsi, Status, KdKaryawan)
Primary Key NoOrder
Foreign Key KdKaryawan references Karyawan (KdKaryawan) ON UPDATE CASCADE ON DELETE NO ACTION
SuratJalan (NoSuratJalan, TglSurat, Status, KdStand, KdKaryawan)
Primary Key NoSuratJalan
Foreign Key KdStand references Stand (KdStand) ON UPDATE CASCADE ON DELETE NO ACTION
Foreign Key KdKaryawan references Karyawan (KdKaryawan) ON UPDATE CASCADE ON DELETE NO ACTION
FakturVendor (NoFaktur, TglFaktur, Deskripsi, KdKaryawan, KdVendor)
Primary Key NoFaktur
Foreign Key KdKaryawan references Karyawan (KdKaryawan) Foreign Key KdVendor references Vendor (KdKaryawan)
MsProduksi (KdProduksi, TglProduksi, KdKonversi)
Primary Key: KdProduksi
Foreign Key KdKonversi references M sKonversi (KdKonversi) ON UPDATE CASCADE ON DELETE NO ACTION
DetailFV (NoFaktur, PartyNo, QtyM asuk)
Primary Key: NoFaktur, PartyNo
Foreign Key NoFaktur references FakturVendor (NoFaktur) ON UPDATE CASCADE ON DELETE NO ACTION
Foreign Key PartyNo references M sStock (PartyNo) ON UPDATE CASCADE ON DELETE NO ACTION
DetailKonversi (KdKonversi PartyNo, Perbandingan)
CASCADE ON DELETE NO ACTION
Foreign Key PartyNo references M sStock (PartyNo) ON UPDATE CASCADE ON DELETE NO ACTION
DetailSuratJalan (NoSuratJalan, PartyNo, qtyKeluar)
Primary Key: NoSuratJalan, PartyNo
Foreign Key NoSuratJalan references SuratJalan (NoSuratJalan) ON UPDATE CASCADE ON DELETE NO ACTION
Foreign Key PartyNo references M sStock (PartyNo) ON UPDATE CASCADE ON DELETE NO ACTION
DetailProduksi (KdProduksi, PartyNo, QtyPakai)
Primary Key: KdProduksi, PartyNo
Foreign Key KdProduksi references M sProduksi (KdProduksi) ON UPDATE CASCADE ON DELETE NO ACTION
Foreign Key PartyNo references M sStock (PartyNo) ON UPDATE CASCADE ON DELETE NO ACTION
TempatKerja (KdKaryawan, KdStand)
Primary Key KdKaryawan, KdStand
Foreign Key KdKaryawan references Karyawan (KdKaryawan) ON UPDATE CASCADE ON DELETE NO ACTION
Foreign Key KdStand references Stand (KdStand) ON UPDATE CASCADE ON DELETE NO ACTION
DetailOrder(NoOrder, PartyNo, QtyOrder)
Primary Key: NoOrder, PartyNo
Foreign Key NoOrder references FormOrder (NoOrder) ON UPDATE CASCADE ON DELETE NO ACTION
Foreign Key PartyNo references M sStock (PartyNo) ON UPDATE CASCADE ON DELETE NO ACTION
AfterProd (KdProduksi, KdKaryawan, PartyNo, TglJadi, QtyHasil)
Primary Key: KdProduksi, PartyNo
Foreign Key KdProduksi references M sProduksi (KdProduksi) ON UPDATE CASCADE ON DELETE NO ACTION
DELETE NO ACTION
Foreign Key KdKaryawan references Karyawan (KdKaryawan) ON UPDATE CASCADE ON DELETE NO ACTION
Bazaar (KdStand, TanggalAwal, TanggalAkhir)
Primary Key: KdStand
Foreign Key KdStand references Stand (KdStand) ON UPDATE CASCADE ON DELETE NO ACTION
Franchise (KdStand, NamaPerusahaan, Alamat, TelpPerusahaan)
Primary Key: KdStand
Foreign Key KdStand references Stand (KdStand) ON UPDATE CASCADE ON DELETE NO ACTION
3.2.2.5 Validasi Model Logikal Lokal dengan Transaksi User
Keterangan gambar:
(a) M emasukkan/ubah data NoOrder, TglOrder, Deskripsi, Status dari entity FormOrder dan menampilkan data dari entity Karyawan sesuai dengan KdKaryawan, MsVendor sesuai dengan KdVendor yang dimasukkan pada entity FormOrder.
(b) M emasukkan/ubah/hapus data NoOrder,PartyNo, QtyOrder dari entity DetailOrder sesuai dengan entity FormOrder
(c) M emasukkan/ ubah data NoFaktur, TglFaktur, Deskripsi dari entity FakturVendor dan menampilkan data dari entity Karyawan sesuai dengan KdKaryawan, MsVendor sesuai dengan KdVendor yang dimasukkan pada entity FakturVendor.
(d) M emasukkan/ubah/hapus data dari entity DetailFV sesuai dengan entity FakturVendor dan PartyNodari entity MsStock
(e) M emasukkan/ubah/hapus Username, Password, Privilege dari entity Login dan menampilkan data dari entity Karyawan sesuai dengan KdKaryawan yang dimasukkan pada entity Login
(f) M emasukkan/ubah/delete dari entity TempatKerja dan M enampilkan data dari entity Karyawan sesuai dengan KdKaryawan, Stand sesuai dengan KdStand yang dimasukkan pada entity TempatKerja
(g) M enampilkan/ubah data NamaStand, Alamat, Telp dari entity Stand dan menampilkan data dari entity TempatKerja sesuai dengan KdStand
(h) M enampilkan/ubah data KdStand, TglAwal, TglAkhir dari entity Bazaar dan menampilkan data dari entity Stand sesuai dengan KdStand yang dimasukkan pada entity Bazaar
FaxPerusahaan, CP dari entity Franchise dan menampilkan data dari entity Stand sesuai dengan KdStand yang dimasukkan pada entity Franchise
(j) M emasukkan/ubah data NoSuratJalan, TglSurat, Deskripsi, Status dari entity SuratJalan dan menampilkan data dari entity Stand sesuai dengan KdStand, Karyawan sesuai dengan KdKaryawan yang dimasukkan pada entity SuratJalan
(k) M enampilkan/ubah/hapus data dari entity DetailSuratJalan sesuai dengan NoSuratJalan dari entity SuratJalan dan PartyNo dari entity MsStock yang dimasukkan pada entity DetailSuratJalan
(l) M emasukkan/ubah data T glProduksi, KdProduksi dari entity M sProduksi dan menampilkan detail data dari M sKonversi sesuai dengan KdKonversi, Karyawan sesuai dengan KdKaryawan yang dimasukkan pada entity MsProduksi
(m) M emasukkan/ubah data dari entity DetailKonversi sesuai dengan KdKonversi dari entity MsKonversi dan PartyNo dari entity M sStock
(n) M emasukkan/ubah/hapus KdProduksi, PartyNo, QtyPakai dari DetailProduksi sesuai dengan KdProduksi dari entity M sProduksi dan PartyNo dari entity MsStock
(o) M emasukkan/ubah/hapus KdProduksi, PartyNo, TglJadi, QtyM asuk dari AfterProd sesuai dengan KdProduksi dari entity MsProduksi dan KdKaryawan dari entity Karyawan juga PartyNo dari entity MsStock
3.2.2.6 Membangun dan Memvalidasi Model Data Logikal Global Tabel 3.16 Model Data Logikal Global
Karyawan (KdKaryawan, namaKaryawan , Alamat,TglLahir, Telp, Status)
Primary Key KdKaryawan
Stand (KdStand, NamaStand, Alamat, Telp)
Primary Key: KdStand
MsKonversi (KdKonversi, NamaKon, Perkalian)
Primary Key: KdKonversi
MsVendor (KdVendor, NamaVendor, Alamat, Telp, Fax, CP)
Primary Key KdVendor
Login (KdKaryawan, Username, Password, Privilege)
Primary Key KdKaryawan
Foreign Key KdKaryawan references Karyawan (KdKaryawan)
FormOrder (NoOrder, TglOrder, QtyOrder, Deskripsi, Status, KdKaryawan)
Primary Key NoOrder
Foreign Key KdKaryawan references Karyawan (KdKaryawan)
SuratJalan (NoSuratJalan, TglSurat, Status, KdStand, KdKaryawan)
Primary Key NoSuratJalan
Foreign Key KdStand references Stand (KdStand)
Foreign Key KdKaryawan references Karyawan (KdKaryawan)
FakturVendor (NoFaktur, TglFaktur, Deskripsi, KdKaryawan, KdVendor)
Primary Key NoFaktur
Foreign Key KdKaryawan references Karyawan (KdKaryawan) Foreign Key KdVendor references Vendor (KdKaryawan)
MsProduksi (KdProduksi, TglProduksi, TglJadi, QtyHasil, KdKonversi, KdKaryawan)
Primary Key: KdProduksi
Foreign Key KdKonversi references M sKonversi (KdKonversi) Foreign Key KdKaryawan references Karyawan (KdKaryawan)
Foreign Key NoFaktur references FakturVendor (NoFaktur) Foreign Key PartyNo references M sStock (PartyNo)
DetailKonversi (KdKonversi PartyNo, Perbandingan)
Primary Key: KdKonversi, PartyNo
Foreign Key KdKonversi references M sKonversi (KdKonversi) Foreign Key PartyNo references M sStock (PartyNo)
DetailSuratJalan (NoSuratJalan, PartyNo, qtyKeluar)
Primary Key: NoSuratJalan, PartyNo
Foreign Key NoSuratJalan references SuratJalan (NoSuratJalan) Foreign Key PartyNo references M sStock (PartyNo)
DetailProduksi (KdProduksi, PartyNo, QtyPakai)
Primary Key: KdProduksi, PartyNo
Foreign Key KdProduksi references M sProduksi (KdProduksi) Foreign Key PartyNo references M sStock (PartyNo)
TempatKerja (KdKaryawan, KdStand)
Primary Key KdKaryawan, KdStand
Foreign Key KdKaryawan references Karyawan (KdKaryawan) Foreign Key KdStand references Stand (KdStand)
DetailOrder(NoOrder, PartyNo, QtyOrder)
Primary Key: NoOrder, PartyNo
Foreign Key NoOrder references FormOrder (NoOrder) Foreign Key PartyNo references M sStock (PartyNo)
AfterProd (KdProduksi, KdKarywan, PartyNo, TglJadi, QtyM asuk)
Primary Key: KdProduksi, KdKaryawan
Foreign Key KdProduksi references M sProduksi (KdProduksi) Foreign Key KdKaryawana references Karyawan (KdKaryawan) Foreign Key PartyNo references M sStock (PartyNo)
Bazaar (KdStand, TanggalAwal, TanggalAkhir)
Primary Key: KdStand
Franchise (KdStand, NamaPerusahaan, Alamat, TelpPerusahaan)
Primary Key: KdStand
Foreign Key KdStand references Stand (KdStand)
Setelah tahap perancangan basis data logical selesai, maka dapat dilakukan tahap selanjutnya yaiut meracang basis data fisikal yang terdiri dari beberapa langkah sebagai berikut:
3.2.3.1 Perancangan Model Data Logical Global untuk DBMS Target
• Merancang Relasi Dasar
DBDL (Database Design Language) untuk karyawan
Domain KdKaryawan fixed length character string, length 6
Format: [K][R][0-9][0-9][0-9]
Domain NamaKaryawan variable length character string, length 50 Domain Alamat variable length character string, length 50
Domain TglLahir date
Domain Telp variable length character string, length 15 Domain Status variable length character string, length 8 Karyawan (
KdKaryawan KdKaryawan NOT NULL,
NamaKaryawan NamaKaryawan NOT NULL,
AlamatKaryawan Alamat NOT NULL,
TanggalLahir TglLahir NOT NULL,
NoTelp Telp,
Status Status,
Primary Key (KdKaryawan),
DBDL (Database Design Language) untuk Login
Domain KdKaryawan fixed length character string, length 6
Domain Username variable length character string, length 10 Domain Password variable length character string, length 10 Domain Privilege variable length character string, length 50 Login (
KdKaryawan KdKaryawan NOT NULL,
Username Username NOT NULL,
Password Password NOT NULL,
Privilege Privilege,
Primary Key (KdKaryawan),
Foreign Key KdKaryawan references Karyawan (KdKaryawan) ON UPDATE CASCADE ON DELETE NO ACTION
);
DBDL (Database Design Language) untuk Stand
Domain KdStand fixed length character string, length 4 Domain NamaStand variable length character string, length 50 Domain Alamat variable length character string, length 50 Domain Telp variable length character string, length 15
S tand(
Alamat Alamat NOT NULL, Telp Telp,
Primary Key (KdStand) );
DBDL (Database Design Language) untuk TempatKerja
Domain KdKaryawan fixed length character string, length 6 Domain KdStand fixed length character string, length 4
TempatKerja(
KdKaryawan KdKaryawan NOT NULL,
KdStand KdStand NOT NULL,
Primary Key (KdKaryawan, KdStand),
Foreign Key KdKaryawan references Karyawan (KdKaryawan) ON UPDATE CASCADE ON DELETE NO ACTION, Foreign Key KdStand references Stand (KdStand)
ON UPDATE CASCADE ON DELETE NO ACTION );
DBDL (Database Design Language) untuk Bazaar
KdStand fixed length character string, length 4
TglAwal date
Bazaar (
KdStand KdStand NOT NULL,
TglAwal TglAwal NOT NULL,
TglAkhir TglAkhir NOT NULL,
Primary Key (KdStand) );
DBDL (Database Design Language) untuk Franchise
KdStand fixed length character string, length 4 NamaPerusahaan variable length character string, length 50 Alamat variable length character string, length 50 TelpPerusahaan variable length character string, length 15 FaxPerusahaan variable length character string, length 15 CP variable length character string, length 50
Franchise(
KdStand KdStand NOT NULL,
NamaPerusahaan NamaPerusahaan NOT NULL, Alamat AlamatPerusahaan NOT NULL, TelpPerusahaan TelpPerusahaan NOT NULL, FaxPerusahaan FaxPerusahaan,
ContactPerson CP, Primary Key (KdStand),
);
DBDL (Database Design Language) untuk MsStock
PartyNo fixed length character string, length 5 NamaBarang variable length character string, length 50 JumlahStock number, length (7,2)
Satuan variable length character string, length 50
ROP number, length 3
MsS tock (
PartyNo PartyNo NOT NULL,
NamaBarang NamaBarang NOT NULL, JumlahStock JumlahStock NOT NULL,
Satuan Satuan NOT NULL,
ROP ROP NOT NULL,
Primary Key (PartyNo) );
DBDL (Database Design Language) untuk SuratJalan
NoSuratJalan fixed length character string, length 16
TglSurat date
Qty number, length 5
Deskripsi variable length character string, length 50 CP variable length character string, length 50 KdKaryawan fixed length character string, length 6 KdStand fixed length character string, length 4
SuratJalan (
NoSuratJalan NoSuratJalan NOT NULL,
TglSurat TglSurat NOT NULL,
Qty Qty NOT NULL,
Status Status NOT NULL,
Deskripsi Deskripsi,
KdKaryawan KdKaryawan NOT NULL,
KdStand KdStand NOT NULL,
Primary Key (NoSuratJalan),
Foreign Key KdKaryawan references Karyawan (KdKaryawan) ON UPDATE CASCADE ON DELETE NO ACTION, Foreign Key KdStand references Stand (KdStand)
ON UPDATE CASCADE ON DELETE NO ACTION );
DBDL (Database Design Language) untuk DetailS uratJalan
NoSuratJalan fixed length character string, length 16 PartyNo fixed length character string, length 5 QtyKeluar Number, length 5
NoSuratJalan NoSuratJalan NOT NULL,
PartyNo PartyNo NOT NULL,
QtyKeluar QtyKeluar NOT NULL,
Primary Key (NoSuratJalan, PartyNo),
Foreign Key NoSuratJalan references SuratJalan (NoSuratJalan) ON UPDATE CASCADE ON DELETE NO ACTION, Foreign Key PartyNo references M sStock (PartyNo) ON UPDATE CASCADE ON DELETE NO ACTION );
DBDL (Database Design Language) untuk MsKonversi
KdKonversi fixed length character string, length 11 NamaKon variable length character string, length 50 Perkalian Number, length (4,1)
MsKonversi (
KdKonversi KdKonversi NOT NULL,
NamaKon NamaKon NOT NULL,
Perkalian Perkalian NOT NULL,
Primary Key (KdKonversi) );
KdProduksi fixed length character string, length 11
TglProduksi date
KdKonversi fixed length character string, length 11 KdKaryawan fixed length character string, length 6
MsProduksi (
KdProduksi KdProduksi NOT NULL, TglProduksi TglProduksi NOT NULL, KdKoversi KdKonversi NOT NULL, KdKaryawan KdKaryawan NOT NULL, Primary Key (KdProduksi),
Foreign Key KdKonversi references M sKonversi (KdKonversi) ON UPDATE CASCADE ON DELETE NO ACTION, Foreign Key KdKaryawan references Karyawan (KdKaryawan) ON UPDATE CASCADE ON DELETE NO ACTION );
DBDL (Database Design Language) untuk DetailProduksi
KdProduksi fixed length character string, length 11 PartyNo fixed length character string, length 5 QtyPakai Number, length (6, 2)
DetailProduksi (
Primary Key (KdProduksi, PartyNo),
Foreign Key PartyNo rereferences M sStock (PartyNo) ON UPDATE CASCADE ON DELETE NO ACTION );
DBDL (Database Design Language) untuk AfterProd
KdProduksi fixed length character string, length 11 KdKaryawan fixed length character string, length 6 PartyNo fixed length character string, length 5
TglJadi date
QtyHasil Number, length (6, 2)
AfterProd(
Primary Key (KdProduksi, KdKaryawan),
Foreign Key KdProduksi references M sProduksi (KdProduksi) ON UPDATE CASCADE ON DELETE NO ACTION, Foreign Key PartyNo rereferences M sStock (PartyNo) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key KdKaryawan references Karyawan (KdKaryawan) ON UPDATE CASCADE ON DELETE NO ACTION );
DBDL (Database Design Language) untuk MsVendor
NamaVendor variable length character string, length 50 Alamat variable length character string, length 50 Telp variable length character string, length 15 Fax variable length character string, length 15 CP variable length character string, length 50
MsVendor(
KdVendor KdVendor NOT NULL,
NamaVendor NamaVendor NOT NULL,
Alamat Alamat NOT NULL,
Telp Telp NOT NULL,
Fax Fax,
CP CP,
Primary Key (KdVendor) );
DBDL (Database Design Language) untuk FormOrder
NoOrder fixed length character string, length 11
TglOrder date
Deskripsi variable length character string, length 50 Status variable length character string, length 50 KdVendor fixed length character string, length 6 KdKaryawan fixed length character string, length 6
TglOrder TglOrder NOT NULL,
Deskripsi Deskripsi ,
Status Status NOT NULL,
KdVendor KdVendor NOT NULL,
KdKaryawan KdKaryawan NOT NULL, Priamry Key (NoOrder),
Foreign Key KdVendor references M sVendor (KdVendor) ON UPDATE CASCADE ON DELETE NO ACTION, Foreign Key KdKaryawan references Karyawan (KdKaryawan) ON UPDATE CASCADE ON DELETE NO ACTION );
DBDL (Database Design Language) untuk DetailOrder
NoOrder fixed length character string, length 11 PartyNo fixed length character string, length 5 QtyOrder Number, length 5
DetailOrder(
NoOrder NoOrder NOT NULL,
PartyNo PartyNo NOT NULL,
QtyOrder QtyOrder NOT NULL,
Primary Key (NoOrder, PartyNo),
ON UPDATE CASCADE ON DELETE NO ACTION, Foreign Key PartyNo references M sStock (PartyNo) ON UPDATE CASCADE ON DELETE NO ACTION );
DBDL (Database Design Language) untuk DetailKonversi KdKonversi fixed length character string, length 11 PartyNo fixed length character string, length 5
Perbandingan Number, length 3 DetailKonversi(
KdKonversi KdKonversi NOT NULL,
PartyNo PartyNo NOT NULL,
Perbandingan Perbandingan NOT NULL, Primary Key (KdKonversi, PartyNo),
Foreign Key KdKonversi references M sKonversi (KdKonversi) ON UPDATE CASCADE ON DELETE NO ACTION, Foreign Key PartyNo refernces M sStock (PartyNo)
ON UPDATE CASCADE ON DELETE NO ACTION
);
DBDL (Database Design Language) untuk FakturVendor
NoFaktur fixed length character string, length 11
KdVendor fixed length character string, length 6 KdKaryawan fixed length character string, length 6
FakturVendor(
NoFaktur NoFaktur NOT NULL,
TglSurat TglSurat NOT NULL,
Deskripsi Deskripsi,
KdVendor KdVendor NOT NULL,
KdKaryawan KdKaryawan NOT NULL, Primary Key (NoFaktur),
Foreign Key KdVendor references M sVendor (KdVendor) ON UPDATE CASCADE ON DELETE NO ACTION, Foreign Key KdKaryawan references Karyawan (KdKaryawan) ON UPDATE CASCADE ON DELETE NO ACTION );
DBDL (Database Design Language) untuk DetailFV
NoFaktur fixed length character string, length 11 PartyNo fixed length character string, length 5 QtyM asuk number, length 5
DetailFV(
NoFaktur NoFaktur NOT NULL,
QtyM asuk QtyM asuk NOT NULL, Primary Key (NoFaktur, PartyNo),
Foreign Key NoFaktur references FakturVendor (NoFaktur) ON UPDATE CASCADE ON DELETE NO ACTION, Foreign Key PartyNo references M sStock (PartyNo) ON UPDATE CASCADE ON DELETE NO ACTION );
3.2.3.2 Perancangan Representasi Fisikal 3.2.3.2.1 Analisa Transaksi
Daftar transakisi yang ada di PT. M ata Air Boga Lestari (Hop-Hop) :
(a) M emasukkan/ubah data NamaBarang, JumlahStock, Satuan, dan ROP dari entity MsStock
(b) M emasukkan/ubah data NoOrder, TglOrder, Deskripsi, Status dari entity FormOrder dan menampilkan data dari entity Karyawan sesuai dengan KdKaryawan, MsVendor sesuai dengan KdVendor yang dimasukkan pada entity FormOrder.
(c) M emasukkan/ubah/hapus data NoOrder,PartyNo, QtyOrder dari entity DetailOrder sesuai dengan entity FormOrder
(d) M emasukkan/ ubah data NamaVendor, Alamat, Telp, Fax, CP dari entity MsVendor
(e) M emasukkan/ ubah data NoFaktur, TglFaktur, Deskripsi dari entity FakturVendor dan menampilkan data dari entity Karyawan sesuai dengan
pada entity FakturVendor.
(f) M emasukkan/ubah/hapus data NoFaktur, PartyNo, QtyM asuk dari entity DetailFV sesuai dengan entity FakturVendor
(g) M emasukkan/ubah/hapus data NamaKaryawan, Alamat, TglLahir, Telp, Status dari entity Karyawan
(h) M emasukkan/ubah/hapus Username, Password, Privilege dari entity Login dan menampilkan data dari entity Karyawan sesuai dengan KdKaryawan yang dimasukkan pada entity Login
(i) M emasukkan/ubah/delete dari entity TempatKerja dan M enampilkan data dari entity Karyawan sesuai dengan KdKaryawan, Stand sesuai dengan KdStand yang dimasukkan pada entity TempatKerja
(j) M enampilkan/ubah data NamaStand, Alamat, Telp dari entity Stand (k) M enampilkan/ubah data KdStand, TglAwal, TglAkhir dari entity Bazaar
dan menampilkan data dari entity Stand sesuai dengan KdStand yang dimasukkan pada entity Bazaar
(l) M emasukkan/ubah NamaPerusahaan, Alamat, TelpPerusahaan, FaxPerusahaan, CP dari entity Franchise dan menampilkan data dari entity Stand sesuai dengan KdStand yang dimasukkan pada entity Franchise
(m) M emasukkan/ubah data NoSuratJalan, TglSurat, Deskripsi, Status dari entity SuratJalan dan menampilkan data dari entity Stand sesuai dengan KdStand, Karyawan sesuai dengan KdKaryawan yang dimasukkan pada entity SuratJalan
(n) M enampilkan/ubah/hapus data dari entity DetailSuratJalan sesuai dengan NoSuratJalan dari entity SuratJalan dan PartyNo dari entity MsStock yang dimasukkan pada entity DetailSuratJalan
(o) M emasukkan/ubah data TglProduksi, KdProduksi dari entity MsProduksi dan menampilkan detail data dari M sKonversi sesuai dengan
KdKonversi, Karyawan sesuai dengan KdKaryawan yang dimasukkan pada entity MsProduksi
(p) M emasukkan/ubah NamaKov, Perkalian dari entity MsKonversi (q) M emasukkan/ubah/hapus KdProduksi, PartyNo, QtyPakai dari
DetailProduksi sesuai dengan KdProduksi dari entity M sProduksi dan PartyNo dari entity MsStock
(r) M emasukkan/ubah/hapus KdProduksi, PartyNo, TglJadi, QtyM asuk dari AfterProd sesuai dengan KdProduksi dari entity M sProduksi dan PartyNo dari entity MsStock
Tabel 3.17 Referensi Silang Analisa Transaksi
A B C D Transaksi Table I R U D I R U D I R U D I R U D Karyawan X Login TempatKerja Stand Bazaar Franchise SuratJalan DetailSuratJalan
Table I R U D I R U D I R U D I R U D MsKonversi MsProduksi DetailProduksi AfterProd FormOrder X X X X DetailOrder X X X X MsVendor X X X X MsStock X X X X FakturVendor DetailFV DetailKonversi
I = INSERT, R = READ, U = UPDATE, D = DELETE
E F G H Transaksi Table I R U D I R U D I R U D I R U D Karyawan X X X X X Login X X X X TempatKerja Stand Bazaar Franchise SuratJalan DetailSuratJalan MsKonversi MsProduksi DetailProduksi
E F G H Transaksi Table I R U D I R U D I R U D I R U D AfterProd FormOrder DetailOrder MsVendor X MsStock FakturVendor X X X X DetailFV X X X X DetailKonversi
I = INSERT, R = READ, U = UPDATE, D = DELETE
I J K L Transaksi Table I R U D I R U D I R U D I R U D Karyawan X Login TempatKerja X X X Stand X X X X X X Bazaar X X X Franchise X X X SuratJalan DetailSuratJalan MsKonversi MsProduksi DetailProduksi AfterProd FormOrder DetailOrder
Table I R U D I R U D I R U D I R U D MsVendor MsStock FakturVendor DetailFV DetailKonversi
I = INSERT, R = READ, U = UPDATE, D = DELETE
M N O P Transaksi Table I R U D I R U D I R U D I R U D Karyawan X X Login TempatKerja Stand X Bazaar Franchise SuratJalan X X X X DetailSuratJalan X X X X MsKonversi X X X X MsProduksi X X X X DetailProduksi AfterProd FormOrder DetailOrder MsVendor MsStock X FakturVendor
M N O P Transaksi
Table I R U D I R U D I R U D I R U D DetailFV
DetailKonversi
I = INSERT, R = READ, U = UPDATE, D = DELETE
Q R Transaksi Table I R U D I R U D Karyawan Login TempatKerja Stand Bazaar Franchise SuratJalan DetailSuratJalan MsKonversi MsProduksi X X DetailProduksi X X X X AfterProd X X X FormOrder DetailOrder MsVendor MsStock X X FakturVendor DetailFV DetailKonversi
Estimasi kebutuhan ini dilakukan dengan menghitung besar kapasitas disk yang terpakai untuk setiap tabel/entity dengan atribut-atribut yang ada di dalamnya dan tipe data yang digunakan.
Tabel 3.18 Estimasi tabel Karyawan
Entity Atribut Tipe Data Ukuran (Byte)
Karyawan KdKaryawan NamaKaryawan Alamat TglLahir Telp Status Char Varchar2 Varchar2 Date Varchar2 Varchar2 6 50 50 8 15 8 Kapasitas dari tabel Karyawan adalah 137 bytes
Diperkirakan dalam satu tahun terjadi penambahan 20 karyawan baru Dalam satu tahun pertumbuhan dari tabel ini adalah
20 * 137 = 2740 byte atau 2.68 Kbyte
Tabel 3.19 Estimasi tabel Login
Entity Atribut Tipe Data Ukuran (Byte)
Login KdKaryawan Username Password Privilege Char Varchar2 Varchar2 Varchar2 6 10 32 15
Kapasitas dari tabel Login adalah 63 bytes
Diperkirakan dalam satu tahun terjadi penambahan 0 Login baru Dalam satu tahun pertumbuhan dari tabel ini adalah
63 * 41 = 0 byte
Tabel 3.20 Estimasi tabel TempatKerja
Entity Atribut Tipe Data Ukuran (Byte)
TempatKerja KdStand KdKaryawan Char Char 6 6 Kapasitas dari tabel Karyawan adalah 12 bytes
Diperkirakan dalam satu tahun terjadi penambahan 20 TempatKerja baru
Dalam satu tahun pertumbuhan dari tabel ini adalah 20 * 12 = 240 byte atau 0.23 Kbyte
Tabel 3.21 Estimasi tabel Stand
Entity Atribut Tipe Data Ukuran (Byte)
Stand KdStand NamaStand Alamat Telp Char Varchar2 Varchar2 Varchar2 6 50 50 15 Kapasitas dari tabel Stand adalah 121 bytes
Diperkirakan dalam satu tahun terjadi penambahan 20 Stand baru Dalam satu tahun pertumbuhan dari tabel ini adalah