BAB III ANALISIS DAN PERANCANGAN
3.1. Identifikasi Masalah dan Analisis Kebutuhan
Tahap ini digunakan untuk mengetahui kebutuhan toko buku AB cabang klaten melalui administrator kepala toko dalam hasil transaksi
penjualan. Transaksi penjualan akan digunakan untuk laporan dan evaluasi pengadaan seluruh barang dari berbagai penerbit, supplier, kategori, dan
topik yang dijual di toko buku. Setiap bulan administrator melakukan pelaporan transaksi penjualan dari hasil yang diperoleh dan hasil pelaporan
tersebut dikirimkan ke kantor pusat melalui email. Kebutuhan bagian administrator yaitu untuk melihat banyaknya jumlah penjualan dari hasil
transaksi penjualan yang terjadi. Contoh laporan transaksi penjualan yang terjadi dapat dilihat pada tabel 3.1 contoh transaksi penjualan.
Tabel 3.1 Contoh Transaksi Penjualan
Supplier No.Nota
Kd.Brg Judul
Pengarang Qty Jual
ANDI - PBR 12304
10136 BAHANA MEI 2014
ANDI OFFSET
1 ANDI STAR CONCAT
12313 10178
BUKU 40 PL 10 FLOWERY ECER 3
ANDISTAR JOGJA 12291
10232 BUKU TULIS SIDU 38
2 ANDISTAR JOGJA
12289 10232
BUKU TULIS SIDU 38 2
CV.TIRO INTERNATIONAL
12301 8460
RAUTAN R 620-2 2
DIVA PRESS 12301
8593 PERCOBAAN SAINS SEDERHANA UNTUK ANAK
1 MITRA NUGRAHA
12292 9734
DIARY DUS MKY TG YH64K-YS0567990B002 3
MITRA NUGRAHA 12295
9639 BPN DISNEY ISI 48 T48DMKT
3 MITRA NUGRAHA
12298 9504
KERTAS MAS KUNING 3
3.2. Pemrosesan Awal
Setelah melakukan identifikasi masalah dan analisis kebutuhan, ditemukan bahwa struktur data yang ada dalam sistem belum memenuhi
kaidah basis data relasional yang baik dan benar, dimana basis data relasional berisi data dalam bentuk tabel-tabel yang saling berhubungan,
maka dari itu dilakukan pemrosesan awal terlebih dahulu berupa: 1 Struktur tabel basis data dari toko buku AB
2 Perancangan basis data 3 Restrukturisasi tabel
4 Pembersihan data 5 Transformasi data
6 Analisis kebutuhan gudang data Dalam melakukan restrukturisasi tabel, dilakukan pengambilan
data terlebih dahulu dengan menggunakan kettle pentaho, data yang digunakan berbentuk .sql, penggunaan kettle digunakan hanya untuk
memudahkan dalam pemindahan data saja. Berikut ini merupakan bagian yang akan menguraikan lebih rinci proses dari tahap-tahap yang telah
dijelaskan diatas.
3.2.1 Struktur Tabel Basis Data Toko Buku AB
Sebelum masuk pada proses perancangan basis data, terlebih dahulu membaca struktur basis data yang ada pada toko
buku AB guna untuk mendapatkan data seperti tabel 3.1 seperti dibawah ini:
Gambar 3.1 Struktur Tabel Basis Data Toko Buku AB
Gambar 3.1 merupakan struktur tabel basis data dari toko buku AB. Tabel yang berada pada toko buku AB terdiri dari 39
tabel dan dari semua tabel tersebut hanya digunakan 9 tabel, yaitu : 1 Tabel data_barang
Gambar 3.2 Tabel data_barang
Pada gambar 3.2 merupakan data dari tabel yang bernama data_barang. Pada tabel ini terdiri dari kolom Kode_Barang,
Produk_ID, Topik_ID,
ID_Lokasi, ID_Lokasi2,
ID_Penerbit, ISBN, Judul_Buku, Pengarang, Stok_Barang, Harga_Jual dan Tgl_input.
2 Tabel data_beli
Gambar 3.3 Tabel data_beli
Pada gambar 3.3 merupakan data dari tabel yang bernama data_beli. Pada tabel ini terdiri dari kolom Nomor_Beli,
Nomor_Nota, Tanggal_Beli,
ID_Supplier, Tipe_Beli,
Tempo, dan Tgl_Jatuh_Tempo.
3 Tabel data_jual
Gambar 3.4 Tabel data_jual
Pada gambar 3.4 merupakan data dari tabel yang bernama data_jual. Pada tabel ini terdiri dari kolom Nomor_Jual,
Tanggal_Jual, Waktu_Jual,
ID_Customer, N_User,
ID_Cabang, Total_Item, Total_Qty_Brg, dan Tipe_Jual. PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
4 Tabel detail_jual
Gambar 3.5 Tabel detail_jual
Pada gambar 3.5 merupakan data dari tabel yang bernama detail_jual. Pada tabel ini terdiri dari kolom Nomor_Jual,
Kode_Barang, N_User,
Qty_Barang, H_Jual,
dan Disc_Jual.
5 Tabel detail_beli
Gambar 3.6 Tabel detail_beli
Pada gambar 3.6 merupakan data dari tabel yang bernama detail_beli. Pada tabel ini terdiri dari kolom Nomor_Beli,
Kode_Barang, N_User, Qty, Qty_Label, Harga_Beli, Persen_Disc_Item, dan Harga_Disc_Item.
6 Tabel supplier
Gambar 3.7 Tabel supplier
Pada gambar 3.7 merupakan data dari tabel yang bernama supplier. Pada tabel ini terdiri dari kolom ID_Supplier,
Nama, Alamat, dan Kota.
7 Tabel penerbit
Gambar 3.8 Tabel penerbit
Pada gambar 3.8 merupakan data dari tabel yang bernama penerbit. Pada tabel ini terdiri dari kolom ID_Penerbit,
Nama_Penerbit, Alamat, dan Telpon. PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
8 Tabel produk
Gambar 3.9 Tabel produk
Pada gambar 3.9 merupakan data dari tabel yang bernama produk. Pada tabel ini terdiri dari kolom Produk_ID,
Keterangan, Tgl_Input, dan Tgl_Edit.
9 Tabel topik
Gambar 3.10 Tabel topik
Pada gambar 3.10 merupakan data dari tabel yang bernama topik. Pada tabel ini terdiri dari kolom Topik_ID,
Keterangan, Tgl_Input, dan Tgl_Edit.
3.2.1 Perancangan Basis Data
Pada bagian perancangan basis data ini dilakukan untuk memperbaiki relasi basis data yang ada di toko buku sebelumnya.
Proses perancangan basis data bertujuan untuk membuat relasi data PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
sesuai dengan kaidah basis data relasional. Berikut ini merupakan tahapan dalam perancangan basis data.
1. Perancangan Basis Data Konseptual
TOPIK_KOMPLIT ID_TOPIK {PK}
NAMA_TOPIK
SUPPLIER_KOMPLIT ID_SUPPLIER {PK}
NAMA_SUPPLIER PENERBIT_KOMPLIT
ID_PENERBIT {PK} NAMA_PENERBIT
KATEGORI_KOMPLIT ID_KATEGORI {PK}
NAMA_KATEGORI TRANSAKSI_KOMPLIT
ID_TRANSAKSI {PK} NOMOR_NOTA
TGL_JUAL JUMLAH_PENJUALAN
DETAIL_PENJUALAN JUMLAH_PENJUALAN
PUNYA PUNYA
P UN
Y A
PUNYA P
UN Y
A
1..1 1..1
1..1
1 ..1
1.. 1..
1.. 1
.. 1..
1.. BARANG_KOMPLIT
ID_BARANG {PK} NAMA_BARANG
Gambar 3.11 ER Diagram
2. Perancangan Data Logikal
TOPIK_KOMPLIT ID_TOPIK {PK}
NAMA_TOPIK
SUPPLIER_KOMPLIT ID_SUPPLIER {PK}
NAMA_SUPPLIER PENERBIT_KOMPLIT
ID_PENERBIT {PK} NAMA_PENERBIT
BARANG_KOMPLIT ID_BARANG {PK}
NAMA_BARANG ID_PENERBIT {FK}
ID_TOPIK {FK} ID_KATEGORI {FK}
ID_SUPPLIER {FK}
KATEGORI_KOMPLIT ID_KATEGORI {PK}
NAMA_KATEGORI TRANSAKSI_KOMPLIT
ID_TRANSAKSI {PK} NOMOR_NOTA
TGL_JUAL JUMLAH_PENJUALAN
DETAIL_PENJUALAN ID_BARANG {FK}
JUMLAH_PENJUALAN ID_TRANSAKSI {FK}
PUNYA PUNYA
PU N
YA PUNYA
PU N
YA
1..1 1..1
1..1
1.. 1
1.. 1..
1..
1 ..
1.. 1..
Gambar 3.12 Database Logical Design
3. Perancangan Data Fisikal
a. Tabel Barang_Komplit
Tabel 3.2 Tabel Barang_Komplit Nama Field
Tipe Keterangan
ID_BARANG int 11
Primary Key untuk tabel Barang. NAMA_BARANG
varchar80 Field untuk nama barang.
ID_PENERBIT int 11
Foreign key untuk menghubungkan ke tabel Penerbit.
ID_TOPIK int 11
Foreign key untuk menghubungkan ke tabel Topik.
ID_KATEGORI int 11
Foreign key untuk menghubungkan ke tabel Kategori.
ID_SUPPLIER int 11
Foreign key untuk menghubungkan ke tabel Supplier.
b. Tabel Kategori_Komplit
Tabel 3.3 Tabel Kategori_Komplit Nama Field
Tipe Keterangan
ID_KATEGORI int 11
Primary Key untuk tabel Kategori. NAMA_ KATEGORI
varchar25 Field untuk nama Kategori.
c. Tabel Topik_Komplit
Tabel 3.4 Tabel Topik_Komplit Nama Field
Tipe Keterangan
ID_TOPIK int 11
Primary Key untuk tabel Topik. NAMA_TOPIK
varchar25 Field untuk nama Topik.
d. Tabel Penerbit_Komplit
Tabel 3.5 Tabel Penerbit_Komplit Nama Field
Tipe Keterangan
ID_PENERBIT int 11
Primary Key untuk tabel Penerbit. NAMA_PENERBIT
varchar25 Field untuk nama Penerbit.
e. Tabel Supplier_Komplit
Tabel 3.6 Tabel Supplier_Komplit Nama Field
Tipe Keterangan
ID_SUPPLIER int 11
Primary Key untuk tabel Supplier. NAMA_SUPPLIER
varchar25 Field untuk nama Supplier. PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
f. Tabel Transaksi_Komplit
Tabel 3.7 Tabel Transaksi_Komplit Nama Field
Tipe Keterangan
ID_TRANSAKSI int 11
Primary Key untuk tabel Transaksi. NOMOR_NOTA
int 11 Field untuk nomor_nota.
TGL_JUAL int 11
Field untuk tgl_jual. JUMLAH_PENJUALAN
int 11 Field untuk Jumlah_Penjualan.
g. Tabel Detail_Penjualan
Tabel 3.8 Tabel Detail_penjualan Nama Field
Tipe Keterangan
ID_BARANG int 11
Foreign key untuk menghubungkan ke tabel Barang.
JUMLAH_PENJUALAN int 11
Field untuk Jumlah_Penjualan. ID_TRANSAKSI
int 11 Foreign key untuk menghubungkan
ke tabel Id_Transaksi.
3.2.2 Restrukturisasi Tabel
Restrukturisasi tabel dibuat karena adanya beberapa kendala, diantaranya yaitu :
1. Relasi struktur tabel-tabel basis data toko buku AB belum memenuhi kaidah basis data relasional yang baik dan benar,
contohnya yaitu satu id_barang dimiliki oleh banyak id_supplier sehingga membuat administrator toko buku
mengalami kendala. 2. Terjadinya duplikasi data pada semua tabel yang
menghambat proses transaksi penjualan di toko buku AB. Dari alasan tersebut, maka dilakukan restrukturisasi tabel
guna untuk memperbaiki relasi tabel-tabel di toko buku AB, dan untuk memudahkan didalam melakukan pembuatan gudang data.
Bagian berikut ini akan menguraikan lebih rinci proses- proses restrukturisasi tabel :
1. Membaca relasi data dari transaksi penjualan. 2. Memperbaiki relasi database pada tabel-tabel yang belum
benar dengan cara melakukan restrukturisasi.
3.2.1.1 Membaca relasi data dari transaksi penjualan
Pada bagian ini, membaca relasi data sangatlah penting. Relasi data dibutuhkan untuk mengetahui hubungan antar tabel
dalam basis data. Tabel basis data dari toko buku tidaklah semua diambil, hanya tabel yang berkaitan dengan transaksi
penjualan saja dan beberapa tabel yang dibuat guna untuk memperbaiki relasi antara tabel satu dengan tabel yang lain
sehingga transaksi penjualan pada tabel 3.1 dapat sesuai dengan perancangan yang diharapkan dan mempermudah
untuk proses pembuatan gudang data selanjutnya. Pada bagian struktur tabel basis data toko buku AB ada 9
tabel yang akan digunakan untuk proses restrukturisasi tabel. Berikut ini merupakan penjelasan dari 9 tabel tersebut.
1 Tabel data_barang
Gambar 3.13 Tabel data_barang
Gambar 3.13 adalah tabel data_barang yang digunakan untuk membuat tabel barang. Pada tabel data_barang ini
terdapat beberapa kolom data, tetapi hanya ada lima kolom data yang digunakan, yaitu: Kode_Barang, Produk_ID,
Topik_ID, ID_Penerbit, dan Judul_Buku.
2 Tabel data_beli
Gambar 3.14 Tabel data_beli
Gambar 3.14 adalah tabel data_beli. Pada tabel data_beli terdapat beberapa kolom data tetapi hanya satu kolom data
yang digunakan, yaitu: Nomor_Beli. Nomor_Beli ini akan digunakan untuk mendapatkan id_supplier berdasarkan no
beli. Untuk lebih lanjutnya dapat dilihat pada bagian lampiran mengenai restrukturisasi tabel bagian tampung
supplier barang. PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
3 Tabel data_jual
Gambar 3.15 Tabel data_jual
Gambar 3.15 adalah tabel data_jual. Pada tabel data_jual terdapat beberapa kolom data, tetapi hanya tiga kolom data
yang digunakan, yaitu: Nomor_Jual, Tanggal_Jual dan Total_Qty_Brg.
Nomor_Jual, Tanggal_Jual
dan Total_Qty_Brg ini digunakan untuk mendapatkan kode
barang yang sesuai dengan nomor jual. Untuk lebih rincinya, dapat dilihat pada bagian lampiran mengenai
restrukturisasi tabel di pembentukan tabel Data Detail Jual.
4 Tabel detail_jual
Gambar 3.16 Tabel detail_jual
Gambar 3.16 adalah tabel detail_jual. Pada tabel detail_jual, terdapat beberapa kolom data, tetapi hanya tiga kolom data
yang digunakan, yaitu: Nomor_Jual, Kode_Barang, dan Qty_Barang.
Data Nomor_Jual,
Kode_Barang, dan
Qty_Barang berfungsi untuk menghubungkan nomor_jual yang ada pada data_jual. Untuk lebih rincinya, dapat dilihat
pada bagian lampiran mengenai restrukturisasi tabel di pembentukan tabel Data Detail Jual.
5 Tabel detail_beli
Gambar 3.17 Tabel detail_beli
Gambar 3.17 adalah tabel detail_jual. Pada tabel detail_beli terdapat beberapa kolom data tetapi hanya tiga kolom data
yang digunakan, yaitu: Nomor_Beli, Kode_Barang. Data Nomor_Beli,
dan Kode_Barang
berfungsi untuk
menghubungkan Kode_Barang yang berada di tabel data_barang, dan Nomor_Beli di tabel data_beli. Untuk
lebih rincinya, dapat dilihat pada bagian lampiran mengenai restrukturisasi tabel di pembentukan tabel Tampung
Supplier Barang.
6 Tabel supplier PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Gambar 3.18 Tabel supplier
Gambar 3.18 adalah tabel supplier. Pada tabel supplier, terdapat beberapa kolom data tetapi hanya dua kolom data
yang digunakan,
yaitu: ID_Supplier,
dan Nama.
ID_Supplier, dan Nama. ID_Supplier sendiri digunakan untuk banyak tabel, salah satu kegunaannya yaitu untuk
mendapatkan data barang yang sesuai dengan data supplier. Tabel supplier ini akan digunakan di tabel: data_beli,
transaksi, tampung
supplier barang,
tampung_barang_supplier, barang_jadi, sementara transaksi dan tabel woo. Untuk lebih rincinya, dapat dilihat pada
bagian lampiran mengenai restrukturisasi tabel.
7 Tabel penerbit
Gambar 3.19 Tabel penerbit
Gambar 3.19 adalah tabel penerbit. Pada tabel penerbit, terdapat beberapa kolom data tetapi hanya dua kolom data
yang digunakan, yaitu: ID_Penerbit, dan Nama_Penerbit. PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Tabel penerbit digunakan dalam proses restrukturisasi tabel. Untuk lebih rincinya, dapat dilihat pada bagian lampiran
mengenai restrukturisasi tabel di pembentukan tabel penerbit.
8 Tabel produk
Gambar 3.20 Tabel produk
Gambar 3.20 adalah tabel produk. Pada tabel produk, terdapat beberapa kolom data tetapi hanya dua kolom data
yang digunakan, yaitu: Produk_ID, dan Keterangan. Tabel produk sendiri akan digunakan dalam proses restrukturisasi
tabel di bagian pembentukan tabel produk.
9 Tabel topik
Gambar 3.21 Tabel topik
Gambar 3.21 adalah tabel topik. Pada tabel topik, terdapat beberapa kolom data tetapi hanya dua kolom data yang
digunakan, yaitu: Topik_ID, dan Keterangan. Tabel topik sendiri akan digunakan dalam proses restrukturisasi tabel di
bagian pembentukan tabel topik.
3.2.1.2 Memperbaiki relasi database pada tabel-tabel yang belum
benar dengan cara melakukan restrukturisasi.
Dalam melakukan proses restrukturisasi tabel, dilakukan proses import dari database toko menuju ke database
data_jadi_monsi dengan menggunakan kettle. Kettle disini hanya untuk memudahkan di dalam pengambilan data saja.
Tabel yang digunakan yaitu : 1 barang
2 topik 3 produk
4 penerbit 5 supplier
6 data_beli 7 detail_beli
8 data_jual 9 data_detail_jual
10 tampung supplier barang 11 transaksi
12 tampung_barang_supplier_monsi 13 barang_jadi
14 sementara transaksi 15 woo
Beberapa tabel yang dibuat seperti transaksikucoba, sementara_transaksi,
dan tabel
woo bertujuan
untuk mencocokan data agar hasil dari restrukturisasi sesuai dengan
basis data relasional. Dalam pengambilan atau import tabel- tabel diatas dapat dilihat pada bagian lampiran.
Setelah mengambil dan membuat tabel-tabel diatas, kemudian dilakukan penyederhanaan tabel, yaitu mengambil
tabel-tabel dengan data yang akan diperlukan, kemudian dilakukan
import data
ke database
yang bernama
monica_skripsi dimana di dalam database tersebut sudah sesuai dengan basis data relasional seperti perancangan basis
data yang dijelaskan sebelumnya. Hasil tabel di database monica_skripsi dapat dilihat pada gambar berikut :
Gambar 3.22 Hasil Restrukturisasi Basis Data monica_skripsi
3.2.3 Pembersihan Data
Setelah tahap restrukturisasi selasai, kemudian dilakukan proses pembersihan guna untuk mendapatkan data yang konsisten
dan relevan. Tahap ini bertujuan agar di dalam pemrosesan data, dapat berlangsung dengan cepat, sebagai contoh ada data transaksi
yang null atau tidak adanya data yang berkaitan dengan tabel yang lain maka dilakukan pembersihan data.
3.2.4 Transformasi Data
Transformasi dilakukan untuk mengubah format lama menjadi format baru yang digunakan untuk format gudang data.
Sebagai contoh atribut pada barang terdapat ID BARANG, NAMA BARANG maka pada proses transformasi ini atribut akan diubah
menjadi ID_BARANG, NAMA_BARANG. Proses ini bertujuan untuk memudahkan dalam pengimplementasian di gudang data.
3.3. Analisis Kebutuhan Gudang Data
3.3.1 Use Case
Diagram use case ini menggambarkan kebutuhan admin dari Kepala toko buku, dari gudang data yang akan dibangun. Pada
gambar 3.23 menerangkan gambar use case untuk gudang data transaksi penjualan.
Gambar 3.23 Diagram Use Case
Dari diagram use case diatas, dapat di deskripsikan sebagai berikut :
Tabel 3.9 Deskripsi Diagram Use Case
Admin Kepala Toko
OLAP Melihat Laporan
transaksi penjualan Login
Kode Use Case
Nama Use Case Deskripsi
Aktor
US001 Login
Use case ini mejelaskan proses dimana admin kepala
toko melakukan
login sebelum masuk ke sistem.
Untuk dapat
masuk ke
sistem, kepala toko harus memasukkan username dan
password terlebih dahulu. Admin
Kepala Toko
US002 Melihat laporan
transaksi penjualan
Use case ini berfungsi untuk melihat hasil pembangunan
gudang data
transaksi penjualan.
Admin Kepala Toko
3.3.2 Narasi Use Case
1 Narasi Use Case Login Kepala Admin Tabel 3.10 Narasi Use Case Login
Kode Use case US001
Nama Use case
Login
Aktor Admin Kepala Toko
Deskripsi Use Case Use case ini mejelaskan proses dimana admin kepala toko
melakukan login sebelum masuk ke sistem. Untuk dapat masuk ke sistem, kepala toko harus memasukkan username
dan password terlebih dahulu
Kondisi Awal Admin Kepala Toko belum memasukkan username dan
password PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Trigger -
Kegiatan Aktor Respon Sistem
1. Sistem menampilkan halaman utama
2. Kepala admin mengklik menu “LOGIN”
3. Sistem menampilkan halaman login
Langkah umum 4. Kepala admin memasukkan
username dan password 5. Sistem mengecek
username dan password sesuai dengan database
6. menampilkan halaman utama admin kepala toko
Langkah Alternatif -
Kondisi Akhir Kepala admin berhasil login jika password dan username
sesuai dengan database
2 Narasi Use Case melihat laporan transaksi penjualan
Tabel 3.11 Narasi Use Case Melihat Laporan Transaksi Penjualan Kode Use case
US002
Nama Use case
Melihat laporan transaksi penjualan
Aktor Admin Kepala Toko
Deskripsi Use Case Use case ini berfungsi untuk melihat hasil dari pembangunan
gudang data transaksi penjualan
Kondisi Awal Admin
Kepala Toko
belum mendapatkan
hasil PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
pembangunan gudang data laporan transaksi penjualan
Trigger -
Langkah umum
Kegiatan Aktor Respon Sistem
1. Menampilkan halaman utama
2. Admin Kepala Toko memilih
menu “Lihat
Laporan Transaksi
Penjualan” 3. Menampilkan hasil
Langkah Alternatif -
Kondisi Akhir Admin Kepala Toko mendapatkan hasil pembangunan
gudang data transaksi penjualan
3.4. Pembuatan Gudang Data