iv Semester Ganjil Tahun 2006 / 2007
ANALISIS DAN PERANCANGAN SISTEM BASISDATA PEMBELIAN, PENJUALAN, DAN PERSEDIAAN MATERIAL BAHAN KIMIA PADA
PT. CHAMPION KURNIA DJAJA TECHNOLOGIES
Verawati 0700703302 Lily Suryanti 0700705724 Johan 0700706916
Kelas / Kelompok : 07PMT / 2
Abstrak
Tujuan penelitian, ialah menganalisa kebutuhan informasi dan merancang sistem basisdata untuk operasional pembelian, penjualan dan persediaan material bahan kimia pada PT. Champion Kurnia Djaja Technologies. Metodologi Penelitian yang digunakan adalah pencarian fakta, analisis dan perancangan. Pencarian fakta merupakan metode mencari fakta dari buku- buku sebagai landasan teori penulisan. Analisis merupakan metode survei dan wawancara untuk mendapatkan kebutuhan informasi. Metode perancangan meliputi perancangan konseptual, perancangan logikal dan perancangan fisikal. Dan untuk merancang aplikasinya, menggunakan model perancangan Waterfall, dimana dilakukan dengan analisis kebutuhan, perancangan program, desain, pengkodean, pengujian, dan pemeliharaan. Hasil yang dicapai berupa rancangan sistem basisdata yang memenuhi kebutuhan perusahaan dan terkomputerisasi sehingga semua transaksi saling terintegrasi. Simpulan yang diperoleh adalah sistem basisdata yang memeberikan efektivitas dan efisiensi waktu dan mengurangi kesalahan, memungkinkan eksekutif mendapatakan laporan dengan cepat dan mudah serta menjamin keamanan data dengan membatasi hak akses setiap staff.
Kata Kunci
v
PRAKATA
Puji dan syukur penulis panjatkan kepada Sanghyang Adi Buddhaya, Tuhan Yang Maha Esa, Para Buddha dan Bodhisatva karena berkat dan rahmatNya sehingga penulis dapat menyelesaikan skripsi yang berjudul: “Analisis Dan Perancangan Sistem Basis Data Pembelian, Penjualan, dan Persediaan Material Bahan Kimia Pada PT. Champion Kurnia Djaja Technologies” sebagai syarat menyelesaikan jenjang studi Strata-1 pada Fakultas Ilmu Komputer Jurusan Teknik Informatika di Universitas Bina Nusantara, Jakarta.
Dalam kesempatan ini, penulis ingin mengucapkan terima kasih kepada:
1. Bapak Prof. Dr. Gerarldus Polla, M. App.Sc., selaku Rektor Universitas Bina Nusantara.
2. Bapak H.M Subekti, BE., M.Sc., selaku Ketua Jurusan Teknik Informatika.
3. Bapak Fredy Purnomo, S.Kom., M.Kom., selaku Sekretaris Jurusan Teknik Informatika.
4. Bapak Muh. Tassim Billah, Ir., M.Sc., selaku dosen pembimbing yang telah banyak memberikan bimbingan dalam pembuatan skripsi dari awal hingga akhir.
5. Bapak Yusrinol Chandra, Bapak IGB Bintara, Ibu Fida Alkaff, Ibu Mulyani beserta seluruh staff PT. Champion Kurnia Djaja Technologies yang telah memberikan kesempatan untuk memberikan informasi yang diperlukan.
vi
7. Rekan – rekan, Sahabat - sahabat dan teman- teman yang telah memberikan saran, dukungan, semangat dan doa.
8. Semua pihak yang tidak dapat disebutkan satu persatu, baik secara langsung maupun tidak langsung telah membantu penulis dalam menyelesaikan penulisan skripsi ini.
Vera Thank’s to :
- Bapak Dosen Dewan Penguji, karena udah ngelulusin kami semua...
- Temen – temen satu kelompok skripsi (Lily ’n Akhim), walopun kadang kita suka berbeda pendapat, tapi akhirnya semua bisa kita lalui bersama tanpa ada pertengkaran hebat..hehehe...
- Pak Tassim atas bimbingannya selama ini,
- Doa ’n dukungan dari Papa, Mama, Ahok, Ali, Mega, Mega, Ce Aing yang bener2 mujarab,
- Bdeb atas pinjeman Laptop ama udah ngajarin tarian lagu Para – para, - Mhita yang terus – terusan setel lagu There You’ll Be – nya Faith Hill,
- Temen satu kamar kost (Mhita, Bdeb) yang terus2an udah ngingetin biar gak males...
- Lisa atas buku Anapersisnya,
- Lusianti yang udah pinjemin buku Akuntansi Mulyadi di perpus ’n juga susu Frisian Flagnya...
- Lagu Sheila On Seven yang udah bikin semangat,
vii
- Temen – temen senasib seperjuangan kelas skripsi 07 PMT (Christine, Lina, Vincent, Cherrie, Amran, Hendy, Anton, Ukar, dll),
- Kisman atas pinjeman laptop nya,
- Engko – engko Glodok yang udah bantuin koding, - Toge atas nasihat ’n masukannya ’n yang ngasih2 tips,
- Pak Besar, staff CMC (Mas Hardy, Mbak Ika, Mas Catur, Mas Rano, dll) yang udah nyuport,
- Anjing gw, Dicky yang bikin semangat,
- Belu ’n Piyo2 yang udah nenangin hati nemenin tidur malam sebelum sidang, - Teman – teman dan Sahabat yang udah nyuport ’n kasih semangat (Kero, Santi,
Wong, Albert K).
Akhirnya..!!! Skripsi ini bisa selesai, walopun banyak rintangan (terutama rintangan males, rintangan Stuck, ama eneg ngeliat koding), tapi akhirnya semua bisa dilalui... Dan hasilnya skripsi ini bisa dipajang di perpustakaan Universitas Bina Nusantara. Moga2 aja untuk bisa berguna buat Binusian yang pada lagi skripsi lainnya... Satu kata : SEMANGAT!!!!
Lily Thank’s to :
- Bapak – bapak Dewan Penguji, karena udah ngelulusin kami semua...
viii
kenangan buat pengalaman kita di kemudian hari...btw fren, kita udah lulus euy...^-^
- Pak Tassim buat bimbingannya,
- Papa, Mama, Ce Ani, Ce Dina, Ce Titik, Ko Adi, ko Ali, Ko Rinto, Ko Candra, Nanda Ponakan gw yang lucu n gremesin, makasih banget atas semua doa dan dukungannya baik moril dan materiil,
- Temen – temen senasib seperjuangan kelas skripsi 07PMT, - Pra sidang oleh Senior Toge,
- Teman – teman dan Sahabat yang udah kasih semangat (Lisa, Santi, Melly, Dewi, ’n Lex),
ix Johan Thank’s to :
- Bapak Dosen Dewan Penguji, karena udah ngelulusin kami semua, meskipun sempat bikin jantung deg – degan,
- Temen – temen satu kelompok skripsi (Vera ’n Lily), yang selalu kompak aje. - Pak Tassim atas bimbingannya selama ini,
- Doa ’n dukungan dari sekeluarga,
- Mery atas dukungan selama ini, n pinjeman MP3 tuk stel lagu Jay Chow,
- Para Pengurus Inti 17 KMBD ’n Anggota Bidang Pendidikan & Pembinaan 17 KMBD atas dukungan selama ini,
- Kisman atas pinjeman Laptop dan buku Anapersis,
- Lagu Jay Chow ”Qian Dan Ai” yang udah bikin semangat,
- Temen – temen senasib seperjuangan kelas skripsi 07 PMT (Christine, Lina, Vincent, Cherrie, Amran, Hendy, Anton, Ukar, dll),
- Mas Toge atas nasihat ’n masukannya ’n yang ngasih2 tips untuk menghadapi sidang,
- Pegawai perpustakaan yang selalu senantiasa melayani kami dengan ramah, meskipun mpe kelompok kami yang terakhir bertahan sampai jam 8 malam.
Akhirnya..!!! Skripsi ini bisa selesai, tapi akhirnya semua bisa dilalui dengan tanpa terasa oleh waktu...
x
Penulis telah berusaha sebaik mungkin dalam menyelesaikan skripsi ini dan dengan segala kerendahan hati penulis sangat menghargai segala saran dan kritik yang membangun dari pembaca untuk penyempurnaan skripsi ini.
Akhir kata, penulis berharap agar skripsi ini dapat bermanfaat bagi pembaca, pihak-pihak yang membutuhkan dan sebagai salah satu sumbangsih kepada almamater dalam pengembangan ilmu pengetahuan.
Jakarta, 22 Januari 2007
xi DAFTAR ISI
Halaman Judul Luar i
Halaman Judul Dalam ii
Halaman Persetujuan HardCover iii
Abstrak iv
Prakata v
Daftar Isi xi
Daftar Tabel xviii
Daftar Gambar xxi
Daftar Lampiran xxviii
BAB 1 PENDAHULUAN 1
1.1 Latar Belakang 1
1.2 Ruang Lingkup 3
1.3 Tujuan dan Manfaat 3
1.4 Metodologi 4
1.5 Sistematika Penulisan 6
BAB 2 LANDASAN TEORI 8
2.1Pendekatan Basisdata 8 2.1.1 Pengertian Teori - teori yang berkaitan dengan Basisdata 8
xii
2.1.3 DDL (Data Definition Language) 12 2.1.4 DML (Data Manipulation Language) 12
2.1.5 4GLs 12
2.1.6 Database System Development Lifecycle 13
2.1.6.1Database Planning 15
2.1.6.2System Definition 16
2.1.6.3Requirements Collection and Analysis 17
2.1.6.4Database Design 18
2.1.6.5DBMS Selection (optional) 19
2.1.6.6Application Design 20
2.1.6.7Prototyping (optional) 22
2.1.6.8Implementation 23
2.1.6.9Data Conversion and Loading 24
2.1.6.10 Testing 24
2.1.6.11 Operational Maintenance 24 2.1.7 Tahap - tahap Perancangan Basisdata 25
2.1.7.1Perancangan Konseptual 25 2.1.7.2Perancangan Logikal 34 2.1.7.3Perancangan Fisikal 42 2.1.8 Entity Relationship (ER) Modelling 47
2.1.8.1Entity Type 48
2.1.8.2Relationship Types 49
xiii
2.1.8.4Keys 52
2.1.8.5Structural Constraints 53
2.1.9 Normalisasi 57
2.1.9.1Pengertian Normalisasi 57 2.1.9.2Tahap - tahap Normalisasi 58 2.2 Pengertian Pembelian, Penjualan, Retur Penjualan, dan Persediaan 59
2.2.1 Pembelian 59
2.2.2 Penjualan 61
2.2.3 Retur Penjualan 62
2.2.4 Persediaan 63
BAB 3 ANALISIS KEBUTUHAN SISTEM BASISDATA 65
3.1 Tentang Perusahaan 65
3.1.1 Sejarah 65
3.1.2 Tujuan 66
3.1.3 Kegiatan Bisnis 66
3.1.4 Struktur Organisasi 67 3.1.5 Pembagian Tugas dan Tanggung Jawab 68 3.2 Gambaran Sistem yang Sedang Berjalan 73
3.2.1 Data Flow Diagram 74
xiv
3.2.3.2 Indentifikasi Entity 90 3.2.4 Permasalahan yang dihadapi 92 3.2.5 Solusi Pemecahan Masalah 92
BAB 4 PERANCANGAN DAN IMPLEMENTASI 93 4.1 Perancangan Basisdata 93
4.1.1 Perancangan Konseptual 93 4.1.1.1 Identifikasi Tipe Entity 94 4.1.1.2 Identifikasi Tipe Relasi 96 4.1.1.3Identifikasi dan Asosiasi Atribut dengan Entity atau Tipe Relasional 99
4.1.1.4Menentukan Atribut Domain 104 4.1.1.5Menentukan Candidate Key dan Primary Key 109 4.1.1.6Cek Model Untuk Redudancy 110 4.1.1.7Validasi Model Konseptual Terhadap Transaksi 111 4.1.1.8Me-review model data konseptual lokal dengan user 113 4.1.2 Perancangan Basisdata Logikal 113
4.1.2.1Menghilangkan Fitur Tidak Kompatibel 114
4.1.2.1.1 Menghilangkan many-to-many (*:*) binary relationship types 114 4.1.2.1.2 Menghilangkan many-to-many (*:*) recursive relationship types 116 4.1.2.1.3 Menghilangkan complex relationship types 117 4.1.2.1.4 Menghilangkan Multi-valued Attribute 117 4.1.2.2Menentukan Model Data Logikal Lokal 118
xv
4.1.2.2.2 Weak Entity Types 120 4.1.2.2.3 One-to-many (1:*) binary relationship types 121 4.1.2.2.4 One-to-One (1:1) binary relationship types 129 4.1.2.2.5 One-to-One (1:1) recursive relationship types 132 4.1.2.2.6 Superclass / subclass relationship types 133 4.1.2.2.7 Many-to-Many (*:*) binary relationship types 133 4.1.2.2.8 Complex relationship types 135 4.1.2.2.9 Multi-valued attributes 136 4.1.2.3Validasi Model dengan Normalisasi 138 4.1.2.4Validasi relasi terhadap Transaksi 144 4.1.2.5Mendefinisikan kendala Integrity 146
4.1.2.5.1 Required Data 146
4.1.2.5.2 Attribute Domain Constraints 150 4.1.2.5.3 Entity Integrity 151 4.1.2.5.4 Referential Integrity 153 4.1.2.6Me-review model data logikal lokal dengan user 158 4.1.2.7Menggabungkan model data logikal ke model global (langkah optional) 159
4.1.2.7.1 Menggabungkan model data logikal ke model global 159 4.1.2.7.2 Memvalidasi model data logikal global 164 4.1.2.7.3 Me-review model data logikal global dengan user 165 4.1.2.8Memeriksa untuk pertumbuhan ke masa yang akan datang 166 4.1.3 Perancangan Basisdata Fisikal 166
xvi
4.1.3.2Merancang representasi dari data turunan (derived data) 184 4.1.3.3Merancang batasan umum (general constraints) 185 4.1.3.4Merancang organisasi file dan indeks 186 4.1.3.4.1 Menganalisis transaksi 186 4.1.3.4.2 Memilih organisasi file 195 4.1.3.4.3 Memilih indeks 195 4.1.3.4.4 Pembuatan Index Setiap Entity 197 4.1.3.4.5 Memperkirakan kapasitas penyimpanan yang dibutuhkan 202 4.1.3.5Merancang User Views 211 4.1.3.6Merancang Mekanisme Keamanan 211 4.1.3.7Pemilihan DBMS (Database Management System) 212 4.2 Perancangan Aplikasi 215
4.2.1 Perancangan Struktur Program 215 4.2.2 State Transition Diagram 216 4.2.3 Perancangan Input / Output 220 4.2.3.1Perancangan Input 220 4.2.4 Perancangan Output 228 4.2.5 Spesifikasi Proses 231
4.2.6 Implementasi 253
xvii
4.2.6.5Cara Pengoperasian Aplikasi 256
4.2.6.6Evaluasi 275
4.2.6.6.1 Evaluasi Sistem 276
4.2.6.6.2 Evaluasi User 277
BAB 5 SIMPULAN DAN SARAN 282
5.1 Simpulan 282
5.2 Saran 283
DAFTAR PUSTAKA
RIWAYAT HIDUP
xviii
DAFTAR TABEL
Tabel 2.1 Tabel Kamus Data 26
Tabel 3.1 Daftar Entity 91
Tabel 4.1 Identifikasi Tipe Entity 94 Tabel 4.2 Multiplicity Tipe Relasional 98
Tabel 4.3 Entity Staff 99
Tabel 4.4 Entity Material 99
xix
Tabel 4.20 Attribute Domain Constraints 151
Tabel 4.21 Entity Integrity 151
Tabel 4.22 Referential Integrity Constraint 153
Tabel 4.23 Menggabungkan model data logikal ke model global 159
Tabel 4.24 Analisis Transaksi 188
Tabel 4.25 Staff 203
Tabel 4.26 Login 203
Tabel 4.27 StaffTelp 203
Tabel 4.28 Pelanggan 203
Tabel 4.29 PelangganTelp 204
Tabel 4.30 PelangganFax 204
Tabel 4.31 Supplier 204
Tabel 4.32 SupplierTelp 204
Tabel 4.33 SupplierFax 205
Tabel 4.34 Material 205
Tabel 4.35 Formula 205
Tabel 4.36 Class 205
Tabel 4.37 Unit 206
Tabel 4.38 SOR 206
Tabel 4.39 OrderPembelian 206
Tabel 4.40 OrderBeliDetail 206
Tabel 4.41 OrderPenjualan 206
xx
Tabel 4.43 TransPembelian 207 Tabel 4.44 TransBeliDetail 207 Tabel 4.45 TransPenjualan 208 Tabel 4.46 TransJualDetail 208 Tabel 4.47 ReturPenjualan 208 Tabel 4.48 ReturJualDetail 208 Tabel 4.49 PembayaranSupplier 209 Tabel 4.50 PembayaranPelanggan 209
Tabel 4.51 Pengiriman 209
Tabel 4.52 KirimDetail 210
xxi
DAFTAR GAMBAR
Gambar 2.1 Database System Development Lifecycle 14 Gambar 2.2 Contoh Conceptual Data Model untuk user views pada Staff dengan
semua atribut 33
Gambar 2.3 Contoh ERD Logikal Global Relation Diagram pada kasus DreamHome 41 Gambar 2.4 Representasi Diagramatik dari tipe Entity Pegawai dan Cabang 48 Gambar 2.5 Representasi diagram tipe entity kuat dan tipe entity lemah 49 Gambar 2.6 Representasi Diagramatik dari Relationship 50 Gambar 2.7 Representasi diagram derajat tiga dari suatu tipe relationship 50 Gambar 2.8 Representasi diagram recursive relationship dan nama peran 51 Gambar 2.9 Representasi diagram entity dengan dua relationship berbeda beserta
nama peran 51
Gambar 2.10 Representasi diagram entity Pegawai dan Cabang beserta atribut
dan primary key-nya 53
Gambar 2.11 Semantic net menunjukkan dua occurrence dari relationship Pegawai
Mengatur Cabang 54
Gambar 2.12 Multiplicity dari relationship one-to-one (1:1) 55 Gambar 2.13 Semantic net menunjukkan tiga occurrence dari relationship Staff
Melihat PropertyForRent 55
Gambar 2.14 Multiplicity dari relationship one-to-many (1:*) 56 Gambar 2.15 Semantic net menunjukkan empat occurrence dari relationship
xxii
Gambar 2.16 Multiplicity dari relationship many-to-many (*:*) 57 Gambar 3.1 Struktur Organisasi PT. Champion Kurnia Djaja Technologies 68 Gambar 3.2 Diagram Konteks Sistem Pembelian, Penjualan, dan Persediaan Pada
PT. Champion Kurnia Djaja Technologies 75 Gambar 3.3 Diagram Nol Sistem Pembelian, Penjualan, dan Persediaan Pada
PT. Champion Kurnia Djaja Technologies 76 Gambar 3.4 Diagram Alir Dokumen Proses Pembelian yang sedang berjalan pada
PT. Champion Kurnia Djaja Technologies 79 Gambar 3.5 Diagram Alir Dokumen Proses Penjualan yang sedang berjalan pada
PT. Champion Kurnia Djaja Technologies 83 Gambar 3.6 Diagram Alir Dokumen Proses Retur Penjualan yang sedang berjalan pada
PT. Champion Kurnia Djaja Technologies 86 Gambar 3.7 Diagram Aliran Dokumen prosedur Persediaan pada PT. Champion
Kurnia Djaja Technologies 89 Gambar 4.1 Entity Relationship Diagram Konseptual 97 Gambar 4.2 Validasi Model Konseptual Terhadap Transaksi 111 Gambar 4.3 Relasi binary many-to-many dari TransPenjualan ke Material yang
menghasilkan entity TransJualDetail 114 Gambar 4.4 Relasi binary many-to-many dari TransPembelian ke Material yang
menghasilkan entity TransBeliDetail 115 Gambar 4.5 Relasi binary many-to-many dari Material ke OrderPenjualan yang
xxiii
menghasilkan entity OrderBeliDetail 116 Gambar 4.7 Relasi binary many-to-many dari Pengiriman ke Material yang
xxiv
Gambar 4.28 Relasi binary one-to-many dari Supplier memiliki SupplierFax 128 Gambar 4.29 Relasi binary one-to-one dari Staff melakukan PembayaranSupplier 128 Gambar 4.30 Relasi binary one-to-one dari Pelanggan dilibatkan TransPenjualan 129 Gambar 4.31 Relasi binary one-to-one dari Pelanggan melakukan ReturPenjualan 129 Gambar 4.32 Relasi binary one-to-one dari OrderPenjualan menghasilkan TransPenjualan 129 Gambar 4.33 Relasi binary one-to-one dari OrderPembelian menghasilkan TransPembelian130 Gambar 4.34 Relasi binary one-to-one dari TransPenjualan menimbulkan ReturPenjualan 130 Gambar 4.35 Relasi binary one-to-one dari TransPenjualan mendasari PembayaranPelanggan131 Gambar 4.36 Relasi binary one-to-one dari TransPembelian mendasari PembayaranSupplier128 Gambar 4.37 Relasi binary one-to-one dari Pengiriman menimbulkan TransPenjualan 129 Gambar 4.38 Relasi binary many-to-many dari TransPenjualan ke Material yang
menghasilkan entity TransJualDetail 133 Gambar 4.39 Relasi binary many-to-many dari TransPembelian ke Material yang
menghasilkan entity TransBeliDetail 133 Gambar 4.40 Relasi binary many-to-many dari Material ke OrderPenjualan yang
menghasilkan entity OrderJualDetail 134 Gambar 4.41 Relasi binary many-to-many dari Material ke OrderPembelian yang
menghasilkan entity OrderBeliDetail 134 Gambar 4.42 Relasi binary many-to-many dari Pengiriman ke Material yang
menghasilkan entity KirimDetail 135 Gambar 4.43 Multi-valued attributes pada entity Staff menghasilkan entity StaffTelp 135 Gambar 4.44 Multi-valued attributes pada entity Supplier menghasilkan entity
xxv
Gambar 4.45 Multi-valued attributes pada entity Supplier menghasilkan entity
SupplierFax 136
Gambar 4.46 Multi-valued attributes pada entity Pelanggan menghasilkan entity
PelangganTelp 136
Gambar 4.47 Multi-valued attributes pada entity Pelanggan menghasilkan entity
PelangganFax 137
Gambar 4.48 Validasi Relasi terhadap Transaksi 144 Gambar 4.49 Logical Entity Relationship Diagrams (Global) 158 Gambar 4.50 Entity Relationship Diagram Logikal beserta entity hasil normalisasi
beserta primary key, foreign key, dan atribut – atribut 165 Gambar 4.51 Struktur Program 216
Gambar 4.52 STD Login 216
xxvi
xxvii
Gambar 4.87 Layar Add Material 262 Gambar 4.88 Layar Add Formula 263 Gambar 4.89 Layar Order Pembelian 264 Gambar 4.90 Layar Transaksi Pembelian 265 Gambar 4.91 Layar Order Penjualan 266 Gambar 4.92 Layar Transaksi Penjualan 267 Gambar 4.93 Retur Penjualan 268 Gambar 4.94 Layar Pengiriman 269
Gambar 4.95 Layar User 270
xxviii
DAFTAR LAMPIRAN
Lampiran 1 Fotocopy Surat Survey L1 Lampiran 2 Absensi Survey Skripsi L2
Lampiran 3 Wawancara L3