27
ANALISIS DAN PERANCANGAN DATA WAREHOUSE
3.1 Analisis
3.1.1 Latar Belakang Perusahaan
PT. Indomobil Multi Trada berdiri sejak tanggal 3 Juni 1997 dengan akta pendirian PT No.14 oleh notaris Buntario Tigris Darmawa, Ng, SE berdasarkan surat Penetapan Pengadilan Negeri Jakarta Pusat tertanggal 2 Mei 1997 No.17 / CN / 1997 / PN, Jakarta Pusat.
PT. Indomobil Multi Trada merupakan anak perusahaan dari PT. Indomobil Sukses Internasional ( sebagai holding company ). Sejalan dengan bisnis yang dikelola oleh PT. Indomobil Sukses Internasional yang bergerak dalam bidang perdagangan dan jasa, maka PT. Indomobil Multi Trada menjalankan bisnis yang sama dan lebih dikhususkan pada perdagangan otomotif dengan memfokuskan penjualan Multi Brand Produk Indomobil. Disamping itu, PT. Indomobil Multi Trada juga memberikan pelayanan jasa perbaikan kendaraan Multi Brand Produk Indomobil.
PT. Indomobil Multi Trada resmi beroperasi pada tanggal 1 Agustus 1997 di jalan M H. Thamrin, Kav.CBD Blok A1/1, Bintaro Jaya Sektor VII. Pada awal operasional, jumlah penjualan adalah 30 unit dengan jumlah karyawan 25 orang.
Modal dasar perusahaan berjumlah Rp 32.000.000.000, 00. Terbagi atas 32.000 saham yang masing – masing bernilai Rp 1.000.000, 00 dengan pendiri PT Indomobil Sukses Internasional dan PT. Wahana Inti Selaras.
3.1.2 Struktur Organisasi
CEO Chief Executive Officer
Koordinator Mobil Sales FAD Service & Sparepart 1. Koordinator Suzuki 2. Koordinator Nissan 3. Koordinator Renault 4. Koordinator Mazda 5. Koordinator A/ VW 6. Koordinator Volvo Service Sparepart HRDGA Sales Admin
Gambar 3.1
3.1.3 Tugas dan Wewenang CEO:
• Bertanggung jawab penuh atas seluruh aktivitas perusahaan • Mengawasi jalannya perusahaan
• Mengadakan pemeriksaan laporan secara berkala
Koordinator Mobil:
• Bertanggung jawab pada aktivitas yang berhubungan dengan mobil
• Bertanggung jawab memberikan laporan aktivitas mobil secara berkala
• Mengawasi bawahan untuk bekerja dengan baik dan bertanggung jawab
FAD:
• Bertanggung jawab terhadap proses yang masuk dan uang keluar perusahaan
• Mengawasi keuangan perusahaan
• Mengatur dan bertanggung jawab terhadap masalah perpajakan • Bertanggung jawab terhadap perhitungan akuntansi perusahaan • Bertanggung jawab dalam pembuatan faktur pajak dan faktur
penjualan
• Memberikan laporan pajak masukan dan pajak keluaran setiap bulannya
HRDGA:
• Bertanggung jawab dalam perekrutan karyawan baru
• Memenuhi setiap kebutuhan karyawan yang diperlukan untuk kepentingan perusahaan
• Bertanggung jawab dalam pengurusan pembelian alat tulis kantor untuk karyawan
• Bertanggung jawab dalam pengaturan dan pengawasan absen serta cuti pegawai
SALES ADMIN:
• Bertanggung jawab dalam melakukan pengiriman unit
• Mengurusi segala dokumen yang diperlukan setiap penjualan dan pengiriman unit
• Menyimpan laporan persediaan unit perusahaan • Membuat laporan penjualan unit setiap bulan
KOORDINATOR SALES:
• Mengawasi jalannya penjualan unit untuk setiap merk • Mengawasi pekerjaan sales untuk setiap merk
• Memeriksa dokumen dari sales untuk diberikan ke sales admin dan FAD
SALES:
• Mencari pelanggan untuk membeli unit • Melakukan promosi
• Bertanggung jawab terhadap koordinator salesnya
SERVICE dan SPAREPART:
• Bertanggung jawab terhadap aktivitas service dan spare part • Membeli stok spare part jika ada kekurangan
• Membuat pajak masukan untuk service dan spare part untuk diberikan kepada FAD bagian perpajakan
3.1.4 Proses Bisnis 1. Sales / S’Counter
a. Menerima customer.
b. Terima tanda jadi, baik cash, transfer, atau giro.
c. Membuat atau mengisi Surat Pesan / Sales Order ( SO ) empat rangkap tanda tangan customer dan sales / s’counter.
d. Setor tanda jadi ke kasir untuk cash atau bukti transfer, dan giro ke finance.
e. Minta tanda tangan kacab / koordinator, acc pejabat di atasnya dan manajer FAD, serta mendistribusikan SO tersebut.
1. Rangkap yang putih ke Sales Administrasi.
2. Rangkap yang merah ke CCD ( Accounting / FAD ). 3. Rangkap yang kuning arsip Sales / S’Counter. 4. Rangkap hijau untuk Customer.
f. Terima Purchase Order ( PO ) Leasing ( untuk penjualan melalui leasing ).
g. Meminta pelunasan DP ke Customer.
h. Mengajukan Permohonan Faktur dengan tanda tangan sales / s’counter, kacab / koordinator, dan atasan yang bersangkutan serta accounting ( CCD ) disertai dengan bukti lunas DP.
2. Sales Administrasi ( Administrasi )
a. Menerima Surat Pesanan ( SO ) lembar ke satu dan permohonan faktur dari Sales / S’Counter.
b. Entry data ke komputer untuk mencatat pesanan customer dan daftar pending.
c. Membuat Catatan Penjualan ( CP ) dua rangkap tanda tangan Manajer FAD.
1. Rangkap yang putih ke Accounting ( CCD ). 2. Rangkap yang merah Arsip.
e. Minta acc DO ke bagian CCD ( Accounting / FAD ) untuk pengiriman unit.
f. Membuat Bukti Penerimaan Kendaraan ( BPK ) lima rangkap dan menyiapkan unit.
g. Minta tanda tangan customer untuk DO dan BPK atas unit yang telah diterima customer.
h. Distribusikan DO dan BPK ke bagian yang terkait. Delivery Order ( DO ) empat rangkap :
1. Rangkap yang putih ke CCD ( Accounting / FAD ). 2. Rangkap yang merah Arsip Sales Administrasi. 3. Rangkap yang kuning Arsip Sales Administrasi. 4. rangkap yang hijau ke Satpam waktu unit keluar. Bukti Penerimaan Unit ( BPK ) lima rangkap :
1. Rangkap yang putih ke CCD ( Accounting / FAD ). 2. Rangkap yang merah Arsip Bagian Pengiriman / Gudang. 3. Rangkap yang kuning Arsip Sales Administrasi.
4. Rangkap yang hijau Arsip Sales Administrasi. 5. Rangkap yang biru untuk Customer.
i. Membuat Permohonan Faktur Polisi dua rangkap tanda tangan COO. 1. Rangkap yang putih ke ATPM.
2. Rangkap yang merah Arsip Sales Administrasi.
j. Terima Faktur Polisi dari ATPM, menyerahkan ke Biro Jasa untuk dibuatkan BBN.
Catatan : Untuk pengiriman unit dengan STNK tunggu proses Faktur Polisi jadi STNK.
3. Kasir
a. Terima setoran tanda jadi dari Sales / S’Counter.
b. Membuat tanda terima dua rangkap atau tanda tangan di SO atas setoran tanda jadi.
1. Rangkap yang putih untuk Customer. 2. Rangkap yang merah arsip sementara. c. Mencatat dalam laporan penerimaan harian.
d. Menyerahkan laporan penerimaan harian beserta bukti ke Finance ( FAD ).
4. Finance ( FAD )
a. Terima bukti transfer dan giro dari Sales / S’Counter.
b. Terima bukti laporan penerimaan harian dan bukti dari kasir. c. Crosscheck ke rekening koran.
d. Menyetor uang ke bank. e. Membuat Bukti Terima Bank. f. Arsip Bukti Terima Bank.
5. Accounting ( CCD )
a. Menerima Surat Pesan ( SO ) lembar ke dua dari Sales / S’Counter.
b. Entry data ke komputer dan mencatat ke buku pembantu.
c. Crosscheck lunas DP ke rekening Koran dan acc permohonan faktur yang diajukan oleh Sales / S’Counter.
d. Menerima Catatan Penjualan ( CP ) lembar ke satu, Delivery Order ( DO ) lembar ke satu, dan Bukti Penerimaan Kendaraan ( BPK ) lembar ke satu dari Sales Administrasi.
e. Cek kelengkapan Leasing, acc Delivery Order ( DO ).
f. Membuat Kwitansi Penagihan empat rangkap tanda tangan manajer FAD.
1. Rangkap yang putih untuk Customer. 2. Rangkap yang merah Arsip.
3. Rangkap yang kuning Arsip. 4. Rangkap yang hijau Arsip.
6. Accounting ( Pajak )
a. Membuat Faktur Penjualan ( FP ) dua rangkap tanda tangan manajer FAD dan COO.
1. Rangkap yang putih untuk Customer. 2. Rangkap yang merah Arsip.
b. Membuat Faktur Pajak ( FP ) dua rangkap. c. Posting akhir bulan.
3.1.5 Analisis Hardware dan Software
Perusahaan saat ini telah menggunakan teknologi informasi dalam menjalankan usahanya. Untuk itu, telah tersedia komputer yang digunakan untuk membantu memasukkan dan menyimpan data yang berhubungan dengan proses bisnis perusahaan.
Komputer yang digunakan ada yang berfungsi sebagai komputer server dan komputer client.
Hardware Server / Client Jml Processor Memory HDD OS Software Server 1 Pentium IV 1.6 GHZ 128 MB RAM 20 GB Windows XP Professional FoxPro V2.00, Network Operating System Novell V3.XX atau V4.XX Client 6 Pentium IV 2.8 GHZ 256 MB RAM 40 GB Windows XP Professional FoxPro V2.00, Network Operating System Novell V3.XX atau V4.XX Tabel 3.1
3.1.6 Analisis Aplikasi dan User 1. AP ( Account Payable )
Merupakan suatu aplikasi yang berisi tentang perincian utang perusahan kepada supplier. Utang yang dimaksud yaitu pembelian spare part ke perusahaan yang menyediakan spare part tersebut.
Fungsi AP adalah menyediakan data seperti jumlah utang, nama supplier, dan spare part yang dibeli.
Operating system yang digunakan dalam AP adalah Windows XP Professional.
Database yang digunakan dalam AP adalah FoxPro V2.00. User yang menggunakan AP adalah FAD Staff Accounting. 2. AR ( Account Receivable )
Merupakan suatu aplikasi yang berisi tentang perincian piutang perusahaan. Aplikasi ini berguna untuk mencatat transaksi piutang perusahaan dan siapa saja yang masih memiliki utang pada perusahaan. Fungsi AR adalah menyediakan data seperti jumlah piutang, nama customer, piutang yang sudah dibayar, tanggal jatuh tempo, dan tanggal piutang dibayar.
Operating system yang digunakan dalam AR adalah Windows XP Professional.
Database yang digunakan dalam AR adalah FoxPro V2.00. User yang mengunakan AR adalah FAD Staff Finance. 3. FP ( Faktur Pajak )
Fungsi FP adalah menyediakan data seperti pajak masukan perusahaan perusahaan, pajak keluaran perusahaan, rincian pajak perusahaan, dan pajak sederhana.
Operating system yang digunakan dalam FP adalah Windows XP Professional.
Database yang digunakan dalam FP adalah FoxPro V2.00. User yang menggunakan FP adalah FAD Staff Accounting. 4. GL ( General Ledger )
Merupakan suatu aplikasi yang berisi tentang perhitungan akuntansi perusahaan.
Fungsi GL adalah menyediakan data seperti voucher – voucher transaksi.
Operating system yang digunakan dalam GL adalah Windows XP Professional.
Database yang digunakan dalam GL adalah FoxPro V2.00. User yang menggunakan GL adalah FAD Staff Accounting. 5. SA ( Sales Admin )
Merupakan suatu aplikasi yang berisi tentang rincian penjualan unit. Fungsi SA adalah menyediakan data seperti rincian persediaan, rincian pembayaran, rincian SO ( Sales Order ), rincian DO ( Delivery Order ), rincian invoice, dan rincian faktur pajak.
Operating system yang digunakan dalam SA adalah Windows XP Professional.
User yang menggunakan SA adalah FAD Staff Accounting, Sales Admin Manager, dan Sales Admin Staff.
User Aplikasi FAD Manager FAD Staff Accounting FAD Staff Finance Sales Admin Manager Sales Admin Staff AP X AR X FP X GL X SA X X X X Workshop Sparepart Tabel 3.2
3.1.7 Entity Relationship Diagram ( ERD ) DeliveryOrderATPM PK no_do_pemasok FK2 no_faktur_pembelian FK3 id_produk FK1 id_pemasok FK3 id_warna ReturPembelian PK id_retur_pembelian FK1 no_faktur_pembelian FK2 id_produk FK3 id_pemasok FK2 id_warna ATPM PK id_pemasok TrPembelian PK no_faktur_pembelian FK1 id_pemasok FK2 id_produk FK3 no_so_pemasok FK2 id_warna Produk PK id_produk PK,FK2 id_warna FK1 id_pemasok Warna PK id_warna TrPesanATPM PK no_so_pemasok FK1 id_pemasok FK2 id_produk FK2 id_warna TrPesanCust PK no_so FK1 id_produk FK2 id_cust FK3 id_cbg FK4 id_sales FK1 id_warna TrBatal PK id_batal FK1 no_so FK2 id_produk FK3 id_cust FK4 id_cbg FK5 id_sales FK2 id_warna DeliveryOrderCust PK no_do FK1 id_cust FK2 no_invoice FK3 id_produk FK4 id_cbg FK3 id_warna TrPenjualan PK no_invoice FK3 no_so FK2 id_produk FK1 id_cbg FK4 id_cust FK5 id_sales FK2 id_warna Cabang PK id_cbg Customer PK id_cust FK1 id_tp_cust Salesman PK id_sales TipeCustomer PK id_tp_cust TrPembayaran PK tgl_bayar PK,FK4 no_invoice FK3 id_cust FK2 id_cbg FK1 id_lease Leasing PK id_lease TrPiutang PK tgl_piutang PK,FK4 no_invoice FK3 id_cust FK1 id_lease FK2 id_cbg 1..1 1..* 1..* 1..1 1..* 1..1 1..* 1..1 1..1 1..* 1..1 1..1 1..* 1..1 1..1 1..* 1..* 1..1 1..1 1..1 1..1 1..* 1..1 1..* 1..1 1..* 1..1 1..* 1..1 1..* 1..1 1..* 1..1 1..1 1..* 1..* 1..* 1..1 1..* 1..1 1..1 1..* 1..* 1..1 1..1 1..1 1..* 1..1 1..* 1..1 1..* 1..1 1..1 1..1 1..* 1..1 1..* 1..1 1..* 1..1 1..* 1..1 1..1 1..* 1..* 1..1 1..* 1..1 1..* 1..1 1..* 1..1 1..* 1..1 1..* 1..1 1..* 1..1 1..* 1..1 Gambar 3.2
3.1.8 Kebutuhan Informasi
Untuk mempermudah dalam perancangan data warehouse maka perlu diketahui kebutuhan informasi masing-masing user yang nantinya akan menggunakan aplikasi data warehouse, yang dikelompokkan berdasarkan ruang lingkup pada penelitian ini.
User
Informasi
FAD Manager Sales Admin Manager
CEO & Koordinator
Mobil Persediaan jumlah stock
berdasar: - hari - bulan - tahun - jenis produk - ATPM jumlah stock berdasar: - hari - bulan - tahun - jenis produk - ATPM jumlah stock berdasar : - hari - bulan - tahun - jenis produk - ATPM jumlah pengiriman berdasar: - ATPM - hari - bulan - tahun - jenis produk jumlah pengiriman berdasar: - ATPM - hari - bulan - tahun - jenis produk jumlah pesanan berdasar: - ATPM - hari - bulan - tahun - jenis produk jumlah pesanan berdasar: - ATPM - hari - bulan - tahun - jenis produk jumlah pesanan berdasar: - ATPM - hari - bulan - tahun - jenis produk jumlah pengembalian unit berdasar: - ATPM - hari - bulan - tahun - jenis produk jumlah pengembalian unit berdasar: - ATPM - hari - bulan - tahun - jenis produk Tabel 3.3
User
Informasi
FAD Manager Sales Admin Manager
CEO & Koordinator
Mobil Penjualan jumlah unit yang
terjual berdasar: - customer - hari - bulan - tahun - salesman - jenis produk - cabang
jumlah unit yang terjual berdasar: - customer - hari - bulan - tahun - salesman - jenis produk - cabang
jumlah unit yang terjual berdasar: - hari - bulan - tahun - jenis produk - cabang jumlah pesanan berdasar: - customer - hari - bulan - tahun - salesman - jenis produk - cabang jumlah pesanan berdasar: - customer - hari - bulan - tahun - salesman - jenis produk - cabang jumlah transaksi batal berdasar: - customer - hari - bulan - tahun - salesman - jenis produk - cabang
jumlah transaksi batal berdasar: - customer - hari - bulan - tahun - salesman - jenis produk - cabang jumlah pengiriman unit berdasar: - customer - hari - bulan - tahun - salesman - jenis produk - cabang jumlah pengiriman unit berdasar: - customer - hari - bulan - tahun - salesman - jenis produk - cabang Tabel 3.4
User
Informasi
FAD Manager Sales Admin Manager
CEO & Koordinator
Mobil Pembayaran jumlah pembayaran
dari customer berdasar: - hari - bulan - tahun - customer - jenis pembayaran - leasing - cabang - no. invoice jumlah pembayaran dari customer berdasar: - hari - bulan - tahun - cabang jumlah pengembalian uang berdasar: - customer - no. SO - cabang - hari - bulan - tahun jumlah pengembalian uang berdasar: - hari - bulan - tahun -cabang Tabel 3.5
User
Informasi
FAD Manager Sales Admin Manager
CEO & Koordinator
Mobil
Piutang jumlah piutang
berdasar: - hari - bulan - tahun - no. invoice - leasing - cabang jumlah piutang berdasar: - hari - bulan - tahun - no. invoice - cabang jumlah pembayaran piutang berdasar: - hari - bulan - tahun - no. invoice - leasing - customer - cabang
jumlah akhir piutang berdasar: - hari - bulan - tahun - no. invoice - leasing - customer - cabang jumlah akhir piutang berdasar: - hari - bulan - tahun - no. invoice - cabang Tabel 3.6
Tabel Kebutuhan Informasi Piutang
3.1.9 Permasalahan yang Dihadapi
Setelah melakukan survey dan analisis pada PT. Indomobil Multi Trada Bintaro dalam lingkup persediaan dan penjualan, ditemukan masalah – masalah sebagai berikut :
• Pihak eksekutif mengalami kesulitan dalam memperoleh data dan informasi yang dibutuhkan karena data dan informasi masih tersebar antar divisi.
• Pihak eksekutif belum dapat mengakses secara langsung data yang diinginkan.
3.1.10 Usulan Pemecahan Masalah
Dalam menghadapi masalah – masalah yang terjadi, maka diusulkan pemecahan masalah berupa sebuah data warehouse dimana data warehouse tersebut merupakan suatu database yang menggabungkan data dan informasi dari berbagai sumber yang dapat digunakan untuk keperluan analisis.
3.2 Perancangan Data Warehouse 3.2.1 Perancangan Logikal
3.2.1.1 Penentuan Proses Bisnis
Proses bisnis dalam perancangan data warehouse mencakup persediaan dan penjualan.
3.2.1.2 Penentuan Grain
Grain dalam perancangan data warehouse mencakup persediaan, penjualan, pembayaran, dan piutang.
3.2.1.3 Penentuan Measures
Measure yang terdapat dalam perancangan data warehouse ini :  jml_stock
 jml_pesanan _ke_ATPM  jml_retur_pembelian  jml_unit_terjual  jml_so  jml_trans_batal  jml_delivery_ke_cust  jml_pby_dr_cust  jml_pengembalian_ke _cust  jml_piutang  jml_pby_piutang  jml_akhir_piutang 3.2.1.4 Penentuan Dimensi
Dimensi yang terdapat dalam perancangan data warehouse ini yaitu :  dimWaktu : o kode_waktu o tahun o bulan o hari  dimATPM o kode_ATPM o nama_ATPM o alamat_ATPM o telp_ATPM
 dimProduk : o kode_produk o kode_warna o nama_model o principle_model  dimWarna : o kode_warna o jenis_warna o warna_komersil  dimSalesman : o kode_salesman o nama_salesman o alamat_salesman  dimCabang : o kode_cabang o nama_cabang o alamat_cabang o telp_cabang  dimCustomer : o kode_cust o kode_tipe_cust o nama_cust o alamat_cust o telp_cust
 dimTipeCustomer o kode_tipe_cust o tipe_cust  dimJenisPembayaran : o kode_jenis_pby o nama_jenis_pby  dimLeasing : o kode_leasing o nama_leasing o alamat_leasing o telp_leasing  dimInvoice o no_invoice  dimSO o no_SO
3.2.1.5 Matriks Fact Vs Measure Fact
Measures
Persediaan Penjualan Pembayaran Piutang jml_stock X jml_delivery_dr_ATPM X jml_pesanan_ke_ATPM X jml_retur_pembelian X jml_unit_terjual X jml_SO X jml_trans_batal X jml_delivery_ke_cust X jml_pby_dr_cust X jml_pengembalian_ke_cust X jml_piutang X jml_pby_piutang X jml_akhir_piutang X Tabel 3.7 Tabel Fact Vs Measure
3.2.1.6 Matriks Fact Vs Dimensi Fact
Dimensi
Persediaan Penjualan Pembayaran Piutang waktu: tahun X X X X bulan X X X X hari X X X X ATPM X Produk X X Warna X X Salesman X Cabang X X X Customer X X X Tipe_customer X X X Jenis_pembayaran X Leasing X X Invoice X X SO X Tabel 3.8 Tabel Fact Vs Dimensi 3.2.1.7 Skema Bintang
Dalam perancangan ini, dihasilkan 4 skema bintang, yaitu: 1. Skema bintang persediaan
2. Skema bintang penjualan 3. Skema bintang pembayaran 4. Skema bintang piutang
factPersediaan kode_waktu kode_produk kode_ATPM jml_stock jml_delivery_dr_ATPM jml_pesanan_ke_ATPM jml_retur_pembelian dimProduk kode_produk kode_warna nama_model principle_model dimWarna kode_warna jenis_warna warna_komersial dimWaktu kode_waktu tahun bulan hari dimATPM kode_ATPM nama_ATPM alamat_ATPM telp_ATPM Gambar 3.3
factPenjualan kode_waktu kode_cabang kode_salesman kode_produk kode_cust jml_unit_terjual jml_so jml_trans_batal jml_delivery_ke_cust dimWaktu kode_waktu tahun bulan hari dimCabang kode_cabang nama_cabang alamat_cabang telp_cabang dimProduk kode_produk kode_warna nama_model principle_model dimWarna kode_warna jenis_warna warna_komersial dimSalesman kode_salesman nama_salesman alamat_salesman dimCustomer kode_cust kode_tipe_cust nama_cust alamat_cust telp_cust dimTipeCustomer kode_tipe_cust tipe_cust Gambar 3.4 Skema Bintang Penjualan
Gambar 3.5
factPiutang kode_waktu kode_leasing kode_customer no_invoice kode_cabang jml_piutang jml_pby_piutang jml_akhir_piutang dimWaktu kode_waktu tahun bulan hari dimInvoice no_invoice dimLeasing kode_leasing nama_leasing alamat_leasing telp_leasing dimCustomer kode_cust kode_tipe_cust nama_cust alamat_cust telp_cust dimTipeCustomer kode_tipe_cust tipe_cust dimCabang kode_cabang nama_cabang alamat_cabang telp_cabang Gambar 3.6 Skema Bintang Piutang
Data Warehouse Data Source
Tabel Field Server File Field
dimProduk kode_produk IMT SAMVHC0 id_produk
kode_warna IMT SAMCLR0 id_warna
nama_model IMT SAMVHC0 jns_unit
principle_model IMT SAMVHC0 merk
dimWarna kode_warna IMT SAMCLR0 id_warna
jenis_warna IMT SAMCLR0 jns_warna
warna_komersil IMT SAMCLR0 komersil
dimWaktu kode_waktu tahun bulan hari
generated
dimATPM kode_ATPM IMT SAMPSK0 id_pemasok
nama_ATPM IMT SAMPSK0 nm_pemasok
alamat_ATPM IMT SAMPSK0 almt_pmsk
telp_ATPM IMT SAMPSK0 telp_pmsk
dimSalesman kode_salesman IMT GPMSTF0 id_sales
nama_salesman IMT GPMSTF0 nm_sales
alamat_salesman IMT GPMSTF0 almt_sales
dimCustomer kode_cust IMT GPMCUS0 id_cust
kode_tipe_cust IMT GPMCUT0 id_tp_cust
Tabel Field Server File Field
nama_cust IMT GPMCUS0 nm_cust
alamat_cust IMT GPMCUS0 almt_cust
telp_cust IMT GPMCUS0 telp_cust
dimTipeCustomer kode_tipe_cust IMT GPMCUT0 id_tp_cust
tipe_cust IMT GPMCUT0 tp_cust
dimCabang kode_cabang IMT SAMBRA0 id_cbg
nama_cabang IMT SAMBRA0 nm_cbg
alamat_cabang IMT SAMBRA0 almt_cbg
telp_cabang IMT SAMBRA0 telp_cbg
dimJenisPembayaran kode_jenis_pby
nama_jenis_pby generated
dimLeasing kode_leasing IMT SATPAY0 id_lease
nama_leasing IMT SATPAY0 nm_lease
alamat_leasing IMT SATPAY0 almt_lease
telp_leasing IMT SATPAY0 telp_lease
dimInvoice no_invoice IMT SATSAL0 no_invoice
dimSO no_SO IMT SATORD0 no_SO
factPersediaan kode_waktu generated
kode_produk IMT SAMVHC0 id_produk
kode_ATPM IMT SAMPSK0 id_pemasok
jml_stock IMT SAMVHC0 jml_stok
Tabel Field Server File Field
jml_delivery_dr_ATPM generated
jml_pesanan_ke_ATPM IMT SATORA0 jml_pesan
jml_retur_pembelian IMT SATRTP0 jml_retur factPenjualan kode_waktu generated
kode_cabang IMT SAMBRA0 id_cbg
kode_salesman IMT GPMSTF0 id_sales
kode_produk IMT SAMVHC0 id_produk
kode_cust IMT GPMCUS0 id_cust
jml_unit_terjual jml_so
jml_trans_batal jml_delivery_ke_cust
generated
factPembayaran kode_waktu generated
kode_cabang IMT SAMBRA0 id_cbg
kode_jenis_pby generated
kode_leasing IMT SATPAY0 id_lease
kode_cust IMT GPMCUS0 id_cust
no_invoice IMT SATSAL0 no_invoice
no_SO IMT SATORD0 no_SO
jml_pby_dr_cust IMT ARTPAY0 jml_pby
Tabel Field Server File Field jml_pengembalian_ke_
cust
IMT ARTCNL0 jml_kembali
factPiutang kode_waktu generated
kode_cabang IMT SAMBRA0 id_cbg
kode_cust IMT GPMCUS0 id_cust
kode_leasing IMT SATPAY0 id_lease
no_invoice IMT SATSAL0 no_invoice
jml_piutang IMT ARTKOD0 sal_awal
jml_pby_piutang IMT ARTKOD0 pby_ar
jml_akhir_piutang IMT ARTKOD0 sal_akhir
Tabel 3.9
Tabel Mapping Data Warehouse dan OLTP 3.2.2 Pemilihan DBMS
Pada perancangan data warehouse ini akan digunakan Microsoft SQL Server 2000 sebagai DBMSnya. Hal ini dikarenakan ada sejumlah fitur baru sehingga menjadi lebih mudah dipakai dan diatur. Dimana SQL Server 2000 ini tidak hanya dapat digunakan untuk OLTP berskala kecil, tetapi juga dapat digunakan untuk OLTP berskala besar, data warehouse, dan aplikasi e-commerce. Di dalam Microsoft SQL Server 2000 terdapat aplikasi DTS ( Data Transform Service ) yang merupakan alat bantu yang baik untuk memindahkan data. DTS ini mudah digunakan terutama ketika membuat
paket transformasi dengan DTS Wizard. DTS ini juga merupakan alat bantu yang fleksibel.
3.2.3 Perancangan Fisikal
3.2.3.1 Desain Base Tabel Nama Tabel : dimProduk
Deskripsi tabel : Tabel Dimensi Produk Primary Key : kode_produk
Nama Field Tipe Data Ukuran Keterangan
kode_produk char 10 kode mobil
kode_warna char 5 kode warna mobil nama_model varchar 30 nama mobil principle_model varchar 10 merk mobil
Tabel 3.10 Tabel Dimensi Produk
Deskripsi tabel : Tabel Dimensi Warna Primary Key : kode_warna
Nama Field Tipe Data Ukuran Keterangan
kode_warna char 5 kode warna mobil jenis_warna varchar 8 jenis warna mobil warna_komersil varchar 30 warna penjualan
Tabel 3.11 Tabel Dimensi Warna
Nama Tabel : dimWaktu
Deskripsi tabel : Tabel Dimensi Waktu Primary Key : kode_waktu
Nama Field Tipe Data Ukuran Keterangan
kode_waktu datetime 8 kode waktu
tahun char 4 tahun
bulan char 2 bulan
hari char 2 hari
Tabel 3.12 Tabel Dimensi Waktu
Deskripsi tabel : Tabel Dimensi ATPM Primary Key : kode_ATPM
Nama Field Tipe Data Ukuran Keterangan
kode_ATPM char 7 kode pemasok
nama_ATPM varchar 30 nama pemasok alamat_ATPM varchar 50 alamat pemasok telp_ATPM varchar 14 nomor telepon ATPM
Tabel 3.13 Tabel Dimensi ATPM
Nama Tabel : dimSalesman
Deskripsi tabel : Tabel Dimensi Salesman Primary Key : kode_salesman
Nama Field Tipe Data Ukuran Keterangan
kode_salesman char 5 kode salesman
nama_salesman varchar 30 nama salesman alamat_salesman varchar 50 alamat salesman
Tabel 3.14
Tabel Dimensi Salesman
Deskripsi tabel : Tabel Dimensi Customer Primary Key : kode_cust
Nama Field Tipe Data Ukuran Keterangan
kode_cust char 6 kode customer
kode_tipe_cust char 1 kode tipe customer nama_cust varchar 30 nama customer alamat_cust varchar 50 alamat customer telp_cust varchar 14 nomor telepon customer
Tabel 3.15
Tabel Dimensi Customer
Nama Tabel : dimTipeCustomer
Deskripsi tabel : Tabel Dimensi Tipe Customer Primary Key : kode_tipe_cust
Nama Field Tipe Data Ukuran Keterangan
kode_tipe_cust char 1 kode tipe customer
tipe_cust varchar 10 tipe customer
Tabel 3.16
Tabel Dimensi Tipe Customer
Deskripsi tabel : Tabel Dimensi Cabang Primary Key : kode_cabang
Nama Field Tipe Data Ukuran Keterangan
kode_cabang char 3 kode cabang
nama_cabang varchar 10 nama cabang alamat_cabang varchar 50 alamat cabang telp_cabang varchar 14 nomor telepon cabang
Tabel 3.17 Tabel Dimensi Cabang
Nama Tabel : dimJenisPembayaran
Deskripsi tabel : Tabel Dimensi Jenis Pembayaran Primary Key : kode_jenis_pby
Nama Field Tipe Data Ukuran Keterangan
kode_jenis_pby char 2 kode jenis pembayaran nama_jenis_pby varchar 6 nama jenis pembayaran
Tabel 3.18
Tabel Dimensi Jenis Pembayaran
Deskripsi tabel : Tabel Dimensi Leasing Primary Key : kode_leasing
Nama Field Tipe Data Ukuran Keterangan
kode_leasing char 10 kode leasing
nama_leasing varchar 30 nama leasing alamat_leasing varchar 50 alamat leasing telp_leasing varchar 14 nomor telepon leasing
Tabel 3.19 Tabel Dimensi Leasing
Nama Tabel : dimInvoice
Deskripsi tabel : Tabel Dimensi Invoice Primary Key : no_invoice
Nama Field Tipe Data Ukuran Keterangan
no_invoice char 13 nomor invoice
Tabel 3.20 Tabel Dimensi Invoice
Deskripsi tabel : Tabel Dimensi Sales Order Primary Key : no_SO
Nama Field Tipe Data Ukuran Keterangan
no_SO char 13 nomor sales order
Tabel 3.21
Tabel Dimensi Sales Order
Deskripsi tabel : Tabel Fakta Persediaan Primary Key : -
Nama Field Tipe Data Ukuran Keterangan
kode_waktu datetime 8 kode waktu kode_produk char 10 kode mobil
kode_ATPM char 7 kode pemasok
jml_stock integer 4 jumlah stock mobil di perusahaan
jml_delivery_dr_ATPM integer 4 jumlah pengiriman unit yang sudah dibeli dari ATPM jml_pesanan_ke_ATPM integer 4 banyaknya pesanan unit ke
ATPM
jml_retur_pembelian integer 4 banyaknya pengembalian unit ke ATPM
Tabel 3.22 Tabel Fakta Persediaan
Deskripsi tabel : Tabel Fakta Penjualan Primary Key : -
Nama Field Tipe Data Ukuran Keterangan
kode_waktu datetime 8 kode waktu kode_produk char 10 kode mobil kode_cabang char 3 kode cabang kode_salesman char 5 kode salesman
kode_cust char 6 kode customer
jml_unit_terjual integer 4 banyaknya unit mobil yang terjual di perusahaan jml_so integer 4 banyaknya pesanan yang
terjadi
jml_trans_batal integer 4 banyaknya transaksi yang dibatalkan oleh customer jml_delivery_ke_cust integer 4 jumlah pengiriman unit yang
sudah dibeli
Tabel 3.23 Tabel Fakta Penjualan
Deskripsi tabel : Tabel Fakta Pembayaran Primary Key : -
Nama Field Tipe Data Ukuran Keterangan
kode_waktu datetime 8 kode waktu
kode_cabang char 3 kode cabang
kode_jenis_pby char 2 kode jenis pembayaran kode_leasing char 10 kode leasing
kode_cust char 6 kode customer
no_invoice char 13 nomor invoice
no_SO char 13 nomor sales order
jml_pby_dr_cust money 8 jumlah pembayaran dari customer
jml_pengembalian_ ke_cust
money 8 jumlah uang yang
dikembalikan ke customer
Tabel 3.24 Tabel Fakta Pembayaran
Deskripsi tabel : Tabel Fakta Piutang Primary Key : -
Nama Field Tipe Data Ukuran Keterangan
kode_waktu datetime 8 kode waktu kode_cabang char 3 kode cabang kode_leasing char 10 kode leasing
kode_cust char 6 kode customer
no_invoice char 13 nomor invoice jml_piutang money 8 jumlah piutang jml_pby_piutang money 8 jumlah pembayaran piutang jml_akhir_piutang money 8 jumlah akhir piutang
Tabel 3.25 Tabel Fakta Piutang
Derived atribut merupakan atribut yang nilainya diperoleh dari mencocokkan atau memeriksa nilai tabel yang lain. Dalam perancangan data warehouse ini, terdapat derived data, yaitu:
• jml_stock • jml_pesanan_ke_ATPM • jml_retur_pembelian • jml_pby_dr_cust • jml_pengembalian_ke_cust • jml_piutang • jml_pby_piutang • jml_akhir_piutang 3.2.3.3 Pemilihan Organisasi File
Pemilihan file organisasi bertujuan untuk menentukan organisasi file yang efisien untuk setiap base tabel.
Dalam perancangan data warehouse persediaan dan penjualan ini digunakan file organisasi B*Tree, karena DBMS yang digunakan dalam data warehouse ini adalah SQL Server 2000.
Dalam perancangan data warehouse ini, index yang digunakan dalam tabel dimensi dan tabel fakta adalah index cluster.
Tabel Nama Index Field Cluster / Non
Cluster
dimWaktu kode_waktu_index kode_waktu Cluster
dimProduk kode_produk_index kode_produk Cluster
dimWarna kode_warna_index kode_warna Cluster
dimATPM kode_ATPM_index kode_ATPM Cluster
dimSalesman kode_salesman_index kode_salesman Cluster
dimCustomer kode_cust_index kode_cust Cluster
dimTipeCustomer kode_tipe_cust_index kode_tipe_cust Cluster
dimCabang kode_cabang_index kode_cabang Cluster
dimJenisPembayaran kode_jenis_pby_index kode_jenis_pby Cluster
dimLeasing kode_leasing_index kode_leasing Cluster
dimDokumenPiutang kode_dok_piutang_index kode_dok_piutang Cluster
factPersediaan persediaan_idx kode_waktu, kode_produk,
kode_ATPM
Cluster
factPenjualan penjualan_idx kode_waktu, kode_cabang,
kode_salesman, kode_produk, kode_cust
Cluster
factPembayaran pembayaran_idx kode_waktu, kode_cabang,
kode_jenis_pby, kode_leasing, kode_cust, no_invoice, no_SO
Cluster
factPiutang piutang_idx kode_waktu, kode_cabang,
kode_leasing, kode_cust, no_invoice
Cluster
Tabel 3.26 Tabel Index
3.2.3.5.1 Menghitung Kapasitas Disk
1. Menentukan jumlah baris di dalam tabel = Num_Rows 2. Ukuran tergantung pada tipe data dan panjangnya.
Jumlah kolom = Num_Cols
Jumlah fixed length kolom (byte) = Fixed_Data_Size Jumlah variable length kolom = Num_Variable_Cols Ukuran maksimal variable-length kolom =
Max_Var_Size
3. Menghitung null bitmap jika dalam tabel terdapat fixed length kolom
Null Bitmap (Null_Bitmap) = 2 + (( Num_Cols + 7) / 8 ) 4. Menghitung kapasitas jika terdapat variable length
kolom dalam tabel
Total size of variable-length columns
(Variable_Data_Size) = 2 + (Num_Variable_Cols x 2) + Max_Var_Size
Jika tidak terdapat variable length kolom, Variable_Data_Size = 0.
5. Menghitung ukuran baris:
Total row size (Row_Size) = Fixed_Data_Size + Variable_Data_Size + Null_Bitmap + 4
6. Menghitung jumlah baris per page (8096 byte per page):
Number of rows per page (Rows_Per_Page) = ( 8096 ) / (Row_Size + 2)
7. Jika terdapat clustered index di dalam tabel, maka menghitung free rows per page didasarkan pada Fill Factor. Jika tidak ada clustered index yang dibuat, maka Fill Factor = 100
Number of free rows per page (Free_Rows_Per_Page) = 8096 x ((100 - Fill_Factor) / 100) / (Row_Size + 2) 8. Menghitung jumlah page yang dibutuhkan untuk
menyimpan semua baris:
Number of pages (Num_Pages) = Num_Rows / (Rows_Per_Page - Free_Rows_Per_Page) 9. Menghitung kapasitas yang dibutuhkan untuk
menyimpan data dalam tabel (8192 byte per page): Table size (bytes) = 8192 x Num_Pages
3.2.3.5.2 Menghitung Ukuran Tabel dengan Index Clustered Berikut ini cara yang digunakan untuk menghitung tabel yang di dalamnya terdapat index clustered.:
1. Menghitung kapasitas yang digunakan untuk menyimpan data.
2. Menghitung kapasitas yang digunakan untuk menyimpan index clustered.
3. Menghitung kapasitas yang digunakan untuk menyimpan index nonclustered.
4. Menghitung nilai-nilai yang telah dihitung di atas. Pada setiap penghitungan, selalu mencantumkan jumlah baris yang akan ada di dalam tabel. Number of rows in the table = Num_Rows
Menghitung kapasitas yang digunakan untuk menyimpan data:
Space used to store data = Data_Space_Used
Menghitung kapasitas yang digunakan untuk menyimpan index clustered:
1. Definisi dari index clustered dapat berupa fixed length dan variable length kolom.
Jumlah kolom dalam index key = Num_CKey_Cols Jumlah semua fixed length kolom key (byte) = Fixed_CKey_Size
Jumlah variable length kolom dalam index key = Num_Variable_CKey_Cols
Ukuran maksimum dari variable length kolom key = Max_Var_CKey_Size
2. Index Null Bitmap (CIndex_Null_Bitmap) = 2 + (( Num_CKey_Cols + 7) / 8 )
3. Jika terdapat variable length kolom dalam index, maka dihitung berapa kapasitas yang digunakan untuk menyimpan kolom di dalam baris index:
Total size of variable length columns (Variable_CKey_Size) = 2 +
(Num_Variable_CKey_Cols x 2) + Max_Var_CKey_Size
Jika tidak terdapat variable length kolom, maka Variable_CKey_Size = 0.
4. Menghitung ukuran baris index:
Total index row size (CIndex_Row_Size) = Fixed_CKey_Size + Variable_CKey_Size + CIndex_Null_Bitmap + 1 + 8
5. Menghitung jumlah baris index per page (8096 byte per page):
Number of index rows per page
(CIndex_Rows_Per_Page) = ( 8096 ) / (CIndex_Row_Size + 2)
6. Menghitung jumlah pages yang dibutuhkan untuk menyimpan semua baris index pada setiap level dari index.
Number of pages (level 0) (Num_Pages_CLevel_0) = (Data_Space_Used / 8192) /
CIndex_Rows_Per_Page
Number of pages (level 1) (Num_Pages_CLevel_1) = Num_Pages_CLevel_0 /
Perhitungan terus dilakukan sampai level n (Num_Pages_CLevel_n) sama dengan satu (index root page).
Menghitung jumlah page yang dibutuhkan untuk menyimpan setiap level dari index:
Total number of pages (Num_CIndex_Pages) = Num_Pages_CLevel_0 + Num_Pages_CLevel_1 + Num_Pages_CLevel_2 + ... +
Num_Pages_CLevel_n
7. Menghitung ukuran index clustered (8192 byte per page):
Clustered index size (bytes) = 8192 x Num_CIndex_Pages
Menghitung ukuran tabel:
Menghitung ukuran tabel:
• Total table size (bytes) = Data_Space_Used + Clustered index size + Nonclustered index size + ...n
Total kapasitas yang dibutuhkan dalam satu tahun = 7118848 + 40960
= 7159808 byte
= 6992 KB = 6.83 MB
Jadi total kapasitas yang dibutuhkan selama lima tahun sebesar 34.15 MB
3.2.3.6 Desain User View 3.2.3.6.1 Persediaan
CEO dan Koordinator Mobil tahun
nama_ATPM principle_model jml_stock
nama_model jml_pesanan_ke_ATPM
Gambar 3.7
Rancangan Tampilan Layar Persediaan untuk CEO dan Koordinator Mobil
FAD Manager tahun nama_ATPM jml_stock principle_model jml_retur nama_model jml_delivery_dr_ATPM jml_pesanan_ke_ATPM Gambar 3.8
Rancangan Tampilan Layar Persediaan untuk FAD Manager
Sales Admin Manager tahun nama_ATPM jml_stock principle_model jml_retur nama_model jml_delivery_dr_ATPM jml_pesanan_ke_ATPM Gambar 3.9
Rancangan Tampilan Layar Persediaan untuk Sales Admin Manager
3.2.3.6.2 Penjualan
CEO dan Koordinator Mobil tahun
nama_cabang principle_model
nama_model jml_unit_terjual
Gambar 3.10
Rancangan Tampilan Layar Penjualan untuk CEO dan Koordinator Mobil
FAD Manager tahun
nama_cabang nama_cust nama_salesman jml_unit_terjual
principle_model jml_so
nama_model jml_transaksi_batal
jml_delivery_ke_cust
Gambar 3.11
Sales Admin Manager tahun
nama_cabang nama_cust nama_salesman jml_unit_terjual
principle_model jml_so
nama_model jml_transaksi_batal
jml_delivery_ke_cust
Gambar 3.12
Rancangan Tampilan Layar Penjualan untuk Sales Admin Manager
3.2.3.6.3 Pembayaran
CEO dan Koordinator Mobil
tahun nama_cabang
jml_pby_dr_cust no_SO
no_invoice jml_pengembalian_ke_cust
Gambar 3.13
Rancangan Tampilan Layar Pembayaran untuk CEO dan Koordinator Mobil
FAD Manager tahun
nama_cabang nama_leasing nama_cust nama_jenis_pby no_SO no_invoice jml_pby_dr_cust jml_pengembalian_ke_cust Gambar 3.14
Rancangan Tampilan Layar Pembayaran untuk FAD Manager
3.2.3.6.4 Piutang
CEO dan Koordinator Mobil
tahun nama_cabang nama_cust jml_piutang
no_invoice jml_akhir_piutang
Gambar 3.15
Rancangan Tampilan Layar Piutang untuk CEO dan Koordinator Mobil
FAD Manager tahun nama_leasing nama_cabang nama_cust no_invoice jml_piutang jml_pby_piutang jml_akhir_piutang Gambar 3.16
3.2.3.7 Security
USER Tabel
FAD Manager Sales Admin Manager CEO dan Koordinator Mobil dimProduk X X X dimWarna X X X dimWaktu X X X dimATPM X X X dimSalesman X X dimCustomer X X dimTipeCustomer X X dimCabang X X X dimJenisPembayaran X dimLeasing X dimInvoice X X dimSO X X factPersediaan X X X factPenjualan X X X factPembayaran X X factPiutang X X Tabel 3.29 Tabel Security dan User
Terdapat 2 tahap dalam security, yaitu:
• Autentikasi, yang berarti mengidentifikasi user yang boleh login. Jika proses autentikasi berhasil, maka user akan terhubung ke SQL Server. • Autorisasi, merupakan izin pengaksesan data warehouse.