• Tidak ada hasil yang ditemukan

BAB 3 ANALISIS DAN PERANCANGAN SISTEM

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB 3 ANALISIS DAN PERANCANGAN SISTEM"

Copied!
172
0
0

Teks penuh

(1)

  58  

BAB 3

ANALISIS DAN PERANCANGAN SISTEM

 

3.1 Latar Belakang Perusahaan

3.1.1 Sejarah Berdirinya PT. Ekadharma International Tbk.

Perseroan ini didirikan pada tahun 1981 dengan nama PT. Ekadharma Widya Grafika. Di tahun 2006, nama perusahaan diubah menjadi PT. Ekadharma International Tbk. Perseroan telah menjadi perusahaan publik sejak 1990 yang sahamnya dicatat di Bursa Efek Jakarta.

Sejak tahun 1983, Perseroan mengembangkan usahanya ke bidang industri pita perekat dalam rangka memenuhi kebutuhan pasar di Indonesia. Seiring dengan permintaan pasar yang berkembang pesat di seluruh Indonesia maka sejak tahun 1991, perseroan mulai membuka kantor cabang penjualan dan fasilitas pendukung lainnya yang sampai saat ini telah mencapai delapan kantor cabang dan sembilan stock point yang tersebar di seluruh Indonesia.

Dengan berjalannya waktu serta kerja keras, perseroan telah menjadi salah satu pemimpin pasar di bidangnya dengan melakukan berbagai terobosan – terobosan baru baik dalam produksi maupun pemasaran hasil produk.

Berbagai peristiwa penting dalam perjalanan Ekadharma dari sejak pendiriannya hingga kini adalah :

(2)

  59  

Tabel 3. 1 Perkembangan Perusahaan

Tahun Keterangan 1981 Ekadharma didirikan dengan nama "PT Ekadharma Widya

Grafika" dan bergerak dalam bidang produksi kertas. 1983 Ekadharma mengembangkan usahanya ke bidang industri

pita perekat.

1984 Ekadharma mengadakan kerja sama dengan Nashua Corporation USA untuk memproduksi pita perekat merek "NASHUA" untuk pasar Indonesia.

1986 Ekadharma mengekspor produknya ke luar negeri, terutama untuk pasar di kawasan Asia.

1990 Nama Ekadharma diubah menjadi PT. Ekadharma Tape Industries. Ekadharma menjual sebagian sahamnya ke publik.

1991 Ekadharma mulai mengadakan perluasan pabrik dan membuka kantor cabang di Medan dan Surabaya.

1992 Ekadharma membuka kantor cabang di Semarang.

1993 Produksi komersial dari pabrik perluasan dimulai, sehingga total kapasitas produksi Ekadharma mencapai 114,5 juta m2 per tahun.

1995 Ekadharma membuka kantor cabang di Bandung dan mengembangkan jaringan distribusi ke wilayah Bali, Ujung Pandang dan Balikpapan.

(3)

  60  

2001 Ekadharma membuka stock point di Tangerang, Kawasan Industri Jababeka, dan daerah Cengkareng-Jakarta Barat. 2002 Ekadharma membuka stock point di Yogyakarta - Jawa

Tengah, Purwakarta - Jawa Barat dan Pandaan - Jawa Timur.

2006 Ekadharma berubah nama menjadi PT Ekadharma International.

2007 Ekadharma membuka kantor cabang di Makassar.

3.1.2 Visi Perusahaan

Menjadi salah satu perusahaan terbaik dan terbesar di bidang pita perekat di Indonesia.

3.1.3 Misi Perusahaan

Perseroan yang bergerak dalam bidang produsen pita perekat ini telah bertekad untuk berperan aktif dalam mensukseskan pembangunan Indonesia. Dilandasi oleh konsep dasar pemikiran inilah, perseroan terus berupaya mengembangkan usahanya dengan menekuni keahlian yang dimiliki serta mengambil hikmah dari berbagai pengalaman yang didapat sepanjang perjalanannya.

Hubungan baik dengan berbagai pihak adalah salah satu prinsip kerja yang selalu dianut dan merupakan kunci sukses yang mengantar PT.

(4)

  61  

Ekadharma International Tbk. Sebagai salah satu perusahaan terbaik di bidang pita perekat di Indonesia.

3.1.4 Struktur Organisasi

Sejak didirikannya pada tahun 1981, PT. Ekadharma International Tbk telah mengalami berbagai macam tantangan dan masalah yang mungkin menyebabkan pergantian struktur organisasi. Berikut adalah struktur organisasi PT. Ekadharma saat ini :

PT. Ekadharma International Tbk.

Dewan Komisaris / Board of

Commissioners

Presiden Direktur / President Director

Internal Auditor

Direktur Pemasaran & Operasional / Marketing

& Operation Director

Direktur Keuangan / Finance Director Manajer Pemasaran / Marketing Manager Manajer operasional / Operation Manager

Manajer Keuangan & Akuntansi / Finance & Accounting Manager Sekretaris

Perusahaan / Corporate Secretary

  Gambar 3. 1 Struktur Organisasi Dasar

(5)

  62   3.1.5 Informasi Perseroan

Dewan Komisaris

Presiden Komisaris : Tjiptono Darmadji

Komisaris : Ronny Kusuma Moentoro Komisaris : Rudy Kurniawan Leornadi Komite Audit

Ketua : Ronny Kusuma Moentoro

Anggota : Emil Bachtiar

Anggota : Edward Tanujaya

Direksi

Presiden Direktur : Judi Widjaja Leonardi

Direktur : Christian Tedjawidjaja

Direktur : Lie Phing

Akuntan Publik : Tjahjadi, Pradhono, & Teramihardja Biro Administrasi Efek : PT.Adimitra Transferindo

Alamat Perseroan

Kantor Pusat & Pabrik / Head Office & Factory Kawasan Industri Pasar Kemis Blok C-1

Jalan Raya Pasar Kemis, Tangerang 15560 Kantor Perwakilan / Representative Office Kedoya Elok Plaza Blok DD No 71

Jalan Panjang, Kedoya, Jakarta 11520 Kantor Jakarta / Jakarta Office

(6)

  63  

Jalan Raya Pantai Indah Kapuk, Jakarta 14460 Kantor Cabang

Tabel 3. 2 Kantor Cabang PT Ekadharma International Tbk Jakarta Kawasan Industri Sunter Agung

Jalan Agung Timur 2 Blok O-1 No 71, Jakarta 14350 Bandung Komplek Singgasana Pradana

Jalan Singgasana Raya Ruko No 23 dan 25, Bandung 40236

Bali Ruko Dewata Square No B-1

Jalan Letda Tantular No 1, Denpasar 80234 Surabaya Kawasan Industri Berbek

Jalan Berbek Industri V No 11, Sidoarjo, Surabaya 61256 Medan Kompleks MIEL Nusantara II

Jalan Pulau Sumbawa I No 9 Lot 10 B, Kawasan Industri Medan II, 20371

Makassar Jalan Ir. Sutami No 38

Komp. Pergudangan Parangloe Indah Blok D2 No 25, Makassar 90224

Semarang Kompleks Puri Anjasmoro Blok EE 2 No 2, 50144 Cikarang Jalan Jababeka VII G Blok R-I D

(7)

  64   Stock Point

Tabel 3. 3 Stock Point PT Ekadharma International Tbk Cengkareng Ruko Daan Mogot Prima Blok B2 No 10

Jalan Daan Mogot Km 12.8, Jakarta Barat 11740 Yogyakarta Ruko Griya Alvita Blok A1 No 4

Jalan Wates Km 3, Yogyakarta Pekanbaru Jalan Arengka II No 36 (Ring Road)

Simpang Baru, Tampan, Riau 28293 Pasar Kemis Kawasan Industri Pasar Kemis Blok C-1

Jalan Raya Pasar Kemis, Tangerang 15560 Bogor Jalan Raya Tajur No 162

Ruko 1, Bogor

Banjarmasin Jalan Yos Sudarso, Komplek Airmatan No 11C, RT/RW 29/09

Telaga Biru, Banjarmasn Barat 70119 Purwakarta Kampung Cilame, No NK 1

Cibening – Bungursari, Purwakarta 41181 Balikpapan Jalan Soekarno Hatta Km 6, Balikpapan

Lampung Jalan Pulau Legundi No 7C

(8)

  65   3.1.6 Anak Perusahaan

Berikut adalah dua perusahaan yang merupakan anak perusahaan dari PT. Ekadharma International Tbk. yaitu :

PT. Dunia Catridge Indonesia

Pendirian : PT. Dunia Catridge Indonesia didirikan berdasarkan akta no 2 pada tanggal 2 Desember 2005 oleh Notaris Singgih di Jakarta. Anggaran dasar perusahaan telah disahkan oleh Menteri Hukum dan Hak Asasi Manusia Republik Indonesia dalam surat keputusan No C-01808 HT.01.01.TH.2006.

Bidang Usaha : Isi ulang tinta untuk cartridge printer inkjet dan laser dengan sistem waralaba.

Profile : Cartridge World adalah pemimpin dunia dalam isi ulang cartridge tinta dan laser. Mereka adalah sebuah toko serba ada untuk semua perlengkapan printer inkjet, laser, fax, dan mesin fotokopi. Mereka mengisi ulang cartridge, menjual cartridge baru dan serangkaian aksesoris printer. Di awal tahun 2006 Cartridge World telah menunjuk PT. Dunia Cartridge Indonesia untuk menjadi Master Franchise Indonesia, yang berkantor pusat di Jakarta. Peranan kami sebagai Master Franchise di Indonesia adalah untuk mengembangkan jaringan dan mendampingi perkembangan franchise, memberikan training dan secara berkesinambungan mendorong persatuan dagang. Kami juga memiliki Pusat Training Cartridge World yang berpusat di Jakarta untuk seluruh Indonesia, dan memiliki pusat

(9)

  66  

logistik dan distribusi di beberapa kota besar di Indonesia untuk memberikan pelayanan kepada konsumen.

Visko Industries SDN.BHD

Pendirian : Visko Industries SDN.BHD didirikan berdasarkan akta no 780459-U pada tanggal 11 Juli 2007 di Malaysia. Akte perusahaan ini telah didaftarkan di Suruhanjaya Syarikat Malaysia.

Bidang Usaha : Menjalankan usaha pabrikan di bidang industri pita perekat. Profile : Perusahaan ini berkomitmen untuk memberikan produk

berkualitas tinggi yang konsisten melalui Tim Research dan Development dan Laboratorium pengendalian kualitas sesuai standar internasional, dan akan mengimplementasikan Sistem Quality Control secara Internasional. Perusahaan berinvestasi di mesin produksi terbaru untuk menjamin efisiensi yang tinggi dan spesifikasi produk yang tepat. Otomasi dan sistem informasi yang diterapkan di seluruh proses produksi, untuk mengaktifkan pelacakan real-time produksi dan persediaan, dan meminimalkan pekerjaan secara manual.

3.2 Analisis Permasalahan

3.2.1 Sistem Yang Sedang Berjalan

Sistem yang sedang berjalan pada PT. Ekadharma International Tbk. hingga saat ini adalah dengan menggunakan sistem manual, setiap proses

(10)

  67  

transaksi penjualan terjadi dengan berkomunikasi langsung ke sales masing - masing perusahaan dan proses pemesanan dilakukan melalui proses pencatatan.

PT. Ekadharma International Tbk. menyimpan setiap data customer dan histori dari transaksi dalam database, tetapi database tersebut tidak terhubung ke sistem manapun, sehingga hanya merupakan database yang berdiri sendiri.

Berikut adalah prosedur penjualan yang sedang berjalan pada kantor cabang PT. Ekadharma International Tbk. :

1. Customer melakukan pesanan produk yang diinginkan kepada sales yang bertugas menangani customer tersebut dengan mengirimkan atau memberikan surat purchase order.

2. Sales mengkonfirmasi surat purchase order tersebut agar customer mengetahui bahwa permintaan pesanannya telah diterima, lalu akan diproses lebih lanjut dengan mengirimkan surat perintah pengiriman produk ke gudang / warehouse berdasarkan purchase order dari customer.

3. Warehouse menerima surat perintah pengiriman produk dari sales dan membuat surat jalan untuk dikirimkan bersama produk yang diminta ke lokasi sesuai alamat yang tertera pada purchase order.

4. Warehouse memberi fotokopi surat jalan kepada sales untuk keperluan pembuatan faktur.

5. Sales membuat faktur untuk penagihan kepada customer. Waktu jatuh tempo pembayaran adalah 30 hari setelah tanggal pembuatan surat jalan.

(11)

  68  

6. Pada tanggal jatuh tempo, sales akan memberi collector faktur transaksi untuk dilakukan proses penagihan ke customer.

7. Sales menerima bukti pembayaran dari collector setelah proses penagihan dilakukan dan mengkonfirmasi pembayarannya dari nomor transfer bank.

Berikut adalah prosedur persediaan yang sedang berjalan pada kantor cabang PT. Ekadharma International Tbk. :

1. Warehouse / gudang melakukan proses pengecekan produk yang ada melalui dokumen stok produk setiap harinya untuk menghindari kosongnya stok produk atau terlalu sedikitnya stok produk.

2. Jika produk berjumlah sedikit, warehouse akan membuat surat permintaan produk ke pabrik.

3. Jika pada saat terjadi perintah pengiriman produk dari sales dan ternyata stok yang ada pada warehouse tidak memadai, warehouse akan memberitahu sales bahwa produk tertentu yang diminta tidak memadai jumlahnya sehingga sales dapat sesegera mungkin memberi kabar kepada customer untuk menunggu beberapa hari. Kemudian warehouse akan membuat surat permintaan produk ke pabrik.

4. Jika produk dari pabrik tiba, pekerja warehouse akan menghitung kembali jumlah produk tersebut dan melaporkannya ke manajer warehouse untuk dimasukkan ke dalam dokumen stok produk. Lalu manajer warehouse segera membuat surat jalan untuk dikirimkan bersama produk ke customer.

(12)

  69  

3.2.2 Flowchart Dari Sistem Yang Sedang Berjalan

Berikut merupakan tampilan diagram aliran dari sistem yang sedang berjalan:

  Gambar 3. 2 Flowchart Sistem Persediaan

(13)

  70  

  Gambar 3. 3 Flowchart Sistem Penjualan

(14)

  71   Proses Penjualan (Lanjutan)

Sales Warehouse Collector

Customer

Tidak

Ya Menunggu hingga

30 hari dari tanggal surat jalan

30 hari Terima faktur penjualan Kirim faktur penjualan Melakukan penagihan ke customer Faktur Penjualan Sudah melakukan pembayaran 1 2 Tidak Melakukan proses pembayaran Ya Beri bukti pembayaran Terima bukti pembayar an Dapat bukti pembayaran Kirim bukti pembayaran ke sales Terima bukti pembayaran Selesai   Gambar 3. 4 Flowchart Sistem Penjualan (Lanjutan)

(15)

  72   3.2.3 Permasalahan Yang Dihadapi

Setelah melakukan proses wawancara mengenai sistem yang sedang berjalan, maka ditemukan beberapa masalah yang terjadi pada perusahaan tersebut, yaitu :

1. Sistem transaksi penjualan yang dilakukan kantor cabang PT. Ekadharma International Tbk. ini secara keseluruhan masih menggunakan sistem semi manual. Yang dimaksud dengan semi manual adalah proses transaksi menggunakan pesan email atau telepon secara langsung ke sales perwakilan dari pelanggan tersebut sehingga manajemen informasi kurang optimal. 2. Proses pencatatan transaksi – transaksi penjualan cukup merepotkan Sales

Administration, salah satunya dikarenakan Sales Administration diharuskan mengecek setiap surat purchase order yang ada.

3. Proses pembuatan surat – surat yang terlibat dalam suatu transaksi seperti surat jalan, surat permintaan produk, dan faktur masih dibuat manual dengan menulis / mengetik sesuai dengan surat purchase order yang dikirimkan.

3.2.4 Usulan Pemecahan Masalah

Setelah diketahui masalah – masalah yang dihadapi oleh perusahaan, maka akan dibentuk dan diterapkan suatu sistem web basis data yang dapat menggantikan sistem manual yang sedang berjalan saat ini. Hasil dari perancangan web ini dapat membantu mencatat setiap hasil transaksi secara otomatis ke dalam database, dapat menyediakan informasi yang berkaitan dengan transaksi dengan lebih cepat dan akurat, dan dapat mempermudah pelanggan untuk melakukan proses pemesanan tanpa mengenal waktu, serta

(16)

  73  

dapat mempermudah sales untuk melihat pesanan barang dari setiap perusahaan yang ia tangani. Selain itu web ini juga dilengkapi dengan fitur message sehingga sales dan customer dapat saling berinteraksi untuk kesepakatan bisnis, seperti mengkonfirmasi pesanan produk yang telah diterima, untuk menginformasikan mengenai keterlambatan datangnya produk pesanan, atau hal lainnya. Manajer dapat melihat laporan – laporan seperti laporan jumlah pembelian oleh customer, laporan jumlah penjualan dari sales, laporan jumlah produk yang dijual pada jangka waktu tertentu, dan laporan performa dari sales dalam melakukan konfirmasi suatu transaksi. Web ini juga dilengkapi fitur untuk mencetak surat – surat yang diperlukan dalam suatu transaksi. Dengan demikian diharapkan web basis data ini dapat meningkatkan efisiensi dan efektivitas kerja perusahaan lebih maksimal, khususnya dalam bidang penjualan.

(17)

  74   3.2.4.1 Diagram Konteks

Berikut adalah gambar diagram konteks dari web basis data yang diusulkan :

  Gambar 3. 5 Diagram Konteks web basis data

Keterangan :

(18)

  75  

C. Nomor PO dan PO detail D. Username dan Password Sales E. Data Transaksi Customer dari Sales F. Username dan Password Admin G. Data Transaksi Customer dari Admin H. Add Customer Baru dari Sales I. Add Customer Baru dari Admin J. Add Sales Baru

K. Status dari Sales L. Status dari Admin

M. Message Konfirmasi PO telah diterima N. Username dan Password Warehouse O. Data Transaksi yang akan dikirim P. Data Stok Produk

Q. Jumlah Stok Produk yang dibutuhkan R. Delivery Status S. Nomor Polisi Kendaraan T. No. Surat Jalan

V. Payment Status W. Message Customer

X. Message Customer untuk Sales Y. Message Customer untuk Admin

Z. Feedback Sales A1. Feedback Admin

B1. Feedback untuk Customer C1. Stok Produk Baru D1. Nomor Transfer

(19)

  76   3.2.4.2 Data Flow Diagram Level Nol

Di bawah ini digambarkan diagram aliran data level nol yang mendeskripsikan sistem yang berjalan pada web basis data yang diusulkan :

  Gambar 3. 6 DFD Tingkat 0

(20)

  77   Keterangan :

A. Username dan Password Customer B. Daftar Produk

C. Nomor PO dan PO detail D. Username dan Password Sales E. Data Transaksi Customer dari Sales F. Username dan Password Admin G. Data Transaksi Customer dari Admin H. Add Customer Baru dari Sales I. Add Customer Baru dari Admin J. Add Sales Baru

K. Status dari Sales L. Status dari Admin

M. Message KonfirmasiPO telah diterima N. Username dan Password Warehouse O. Data Transaksi yang akan dikirim P. Data Stok Produk

Q. Jumlah Stok Produk yang dibutuhkan R. Delivery Status S. Nomor Polisi Kendaraan T. No. Surat Jalan

V. Payment Status W. Message Customer

X. Message Customer untuk Sales Y. Message Customer untuk Admin

Z. Feedback Sales A1. Feedback Admin

B1. Feedback untuk Customer C1. Stok Produk Baru

D1. Nomor Transfer E1. Konfirmasi Password Customer F1. Status Login Customer G1. Data Produk

H1. Data Purchase Order I1. Konfirmasi Password Sales J1. Status Login Sales K1. Hasil Transaksi Customer L1. Konfirmasi Password Admin M1. Status Login Admin N1. Data Customer Baru dari Sales O1. Data Customer Baru P1. Data Customer Baru dari Admin Q1. Data Sales Baru

(21)

  78  

T1. Konfirmasi Password Warehouse U1. Status Login Warehouse V1. Data Transaksi W1. Data Jumlah Produk X1. Jumlah Permintaan Produk Y1. Status untuk Delivery Z1. Indeks Nomor Polisi Kendaraan A2. Message Baru

B2. Jumlah Produk yang Datang C2. Data No.Surat Jalan D2. Data No. Transfer

                                               

(22)

  79   3.2.4.3 Data Flow Diagram Level Satu

Di bawah ini digambarkan diagram aliran data level satu yang mendeskripsikan sistem yang berjalan pada web basis data yang diusulkan :

(23)

  80   Keterangan :

A. Username dan Password Customer B. Daftar Produk

C. Nomor PO dan PO detail D. Username dan Password Sales E. Data Transaksi Customer dari Sales F. Username dan Password Admin G. Data Transaksi Customer dari Admin H. Add Customer Baru dari Sales I. Add Customer Baru dari Admin J. Add Sales Baru

K. Status dari Sales L. Status dari Admin M. Message KonfirmasiPO telah diterima R. Delivery Status T. No. Surat Jalan V. Payment Status

W. Message Customer X. Message Customer untuk Sales Y. Message Customer untuk Admin Z. Feedback Sales

A1. Feedback Admin B1. Feedback untuk Customer D1. Nomor Transfer E1. Konfirmasi Password Customer F1. Status Login Customer G1. Data Produk

H1. Data Purchase Order I1. Konfirmasi Password Sales J1. Status Login Sales K1. Hasil Transaksi Customer L1. Konfirmasi Password Admin M1. Status Login Admin N1. Data Customer Baru dari Sales O1. Data Customer Baru P1. Data Customer Baru dari Admin Q1. Data Sales Baru

R1. Status Confirm S1. Message Konfirmasi diterima A2. Message Baru C2. Data No.Surat Jalan

D2. Data No. Transfer E2. Status Konfirmasi Payment

(24)

  81     Warehouse 2.1 Login Warehouse 2.2 Konfirmasi Produk yang akan dikirim 2.3 Menetapkan Kendaraan Warehouse N T1 U1 Transaction V1 O Z1 Vehicle S F2   Gambar 3. 8 DFD Tingkat Satu 2.0

 

Keterangan :

N. Username dan Password Warehouse O. Data Transaksi yang akan dikirim S. Nomor Polisi Kendaraan T1. Konfirmasi Password Warehouse U1. Status Login Warehouse V1. Data Transaksi

Z1. Indeks Nomor Polisi Kendaraan F2. Login Permission Warehouse  

     

(25)

  82  

  Gambar 3. 9 DFD Tingkat Satu 3.0

 

Keterangan :

P. Data Stok Produk Q. Jumlah Stok Produk yang dibutuhkan C1. Data Stok Produk baru W1. Data Jumlah Produk

X1. Jumlah Permintaan Produk B2. Jumlah Produk yang Datang  

3.3 Perancangan Basis Data Konseptual 3.3.1 Identifikasi Tipe Entitas

Pada tahap awal ini, kami akan menentukan entitas – entitas apa saja yang diperlukan di dalam sistem yang akan dibentuk. Berikut adalah tabel yang menunjukkan entitas – entitas yang dibutuhkan untuk bagian penjualan PT. Ekadharma International Tbk. :

Tabel 3. 4 Kamus Data Entitas

Nama Entitas Deskripsi Kejadian

(26)

  83  

Nama Entitas Deskripsi Kejadian

berisi informasi tentang karyawan yang bekerja pada divisi marketing di perusahaan.

jabatannya masing – masing dan bekerja dalam satu kantor cabang.

Customer Merupakan entitas yang berisi informasi tentang perusahaan yang menjadi pelanggan / rekanan dari PT. Ekadharma

Setiap pelanggan memiliki password masing – masing. Selain itu juga memiliki satu sales dari PT. Ekadharma yang menjadi perwakilan dari pelanggan tersebut untuk melakukan proses transaksi pembelian produk dan untuk membuat kesepakatan – kesepakatan tertentu.

Setiap perusahaan / pelanggan memiliki seorang karyawan yang akan dihubungi oleh PT. Ekadharma apabila terjadi hal – hal darurat atau yang tidak diinginkan. Input Merupakan entitas yang

berisikan informasi tentang sales yang menjadi perwakilan dari

Setiap pelanggan hanya mempunyai satu sales yang menangani semua kegiatan transaksi pembelian produk dari

(27)

  84  

Nama Entitas Deskripsi Kejadian

sebuah perusahaan pelanggan.

perusahaan tersebut.

Transaction Merupakan entitas yang berisi informasi tentang

seluruh transaksi penjualan yang dilakukan

PT. Ekadharma ke perusahaan – perusahaan pelanggan.

Setiap transaksi terdapat seorang sales yang bertanggungjawab terhadap penjualan produk hingga produk tersebut sampai pada alamat yang dituju. Pada setiap transaksi terdapat tanggal jatuh tempo yang ditetapkan perusahaan atau yang telah ditetapkan atas kesepakatan pelanggan dengan sales.

Product Merupakan entitas yang berisi informasi tentang produk – produk yang dijual dan deskripsi dari produk tersebut.

Setiap produk memiliki tipe produk dan memiliki gambar yang berguna mendeskripsikan produk tersebut ke pelanggan.

Message Merupakan entitas yang berisi informasi tentang pesan yang ditinggalkan oleh pelanggan / customer ke sales.

Setiap pesan merupakan proses interaksi antara sebuah perusahaan pelanggan dengan sales perwakilannya pada PT. Ekadharma.

(28)

  85  

Nama Entitas Deskripsi Kejadian

berisi informasi tentang surat pembelian produk yang dibuat oleh pelanggan.

dicatat bersama dengan nama sales yang bertanggung jawab dan tanggal surat tersebut dikeluarkan.

Delivery Merupakan entitas yang berisi informasi tentang surat jalan yang telah dikeluarkan gudang / warehouse.

Setiap surat jalan yang dibuat merupakan hasil akhir ketika permintaan produk dari sales telah tercukupi.

Warehouse Merupakan entitas yang berisi informasi tentang gudang / warehouse yang dimiliki oleh kantor cabang.

Gudang memiliki penanggung jawabnya tersendiri yang merupakan karyawan dari kantor cabang yang berasal dari gudang yang bersangkutan. Gudang memiliki password untuk memeriksa persediaan produk.

Vehicle Merupakan entitas yang berisi informasi tentang kendaraan – kendaraan pengantar yang dimiliki gudang.

Setiap kendaraan memiliki nomor polisi yang menjadi tanda pengenal dari kendaraan tersebut.

(29)

  86  

Nama Entitas Deskripsi Kejadian

berisi informasi tentang permintaan produk dari gudang yang akan diajukan ke pabrik pusat.

dibuat disertakan gudang yang melakukan permintaan dan data waktu permintaan tersebut dibuat.

3.3.2 Identifikasi Tipe Relasional

Tahap ini bertujuan untuk mengidentifikasi hubungan – hubungan yang dimiliki antar entitas. Berikut merupakan relasi – relasi yang telah diidentifikasikan :

Tabel 3. 5 Kamus Data Relasional

Nama Entitas Multiplicity Relationship Multiplicity Nama Entitas PurchaseOrder 1..* Is created by 1..1 Customer

1..* Is created to 1..1 Employee Message 0..* Is responded by 1..1 Employee 0..* Is created by 1..1 Customer

Transaction 1..1 Has 1..1 PurchaseOrder

1..* Is managed by 1..1 Employee

1..1 Has 1..1 Delivery

1..* Has 1..* Product

Input 1..1 Appoint 1..1 Customer

1..* Is registered by 1..1 Employee Delivery 1..* Is declared by 1..1 Warehouse

(30)

  87  

Nama Entitas Multiplicity Relationship Multiplicity Nama Entitas 1..* Is transported

by

1..1 Vehicle

Vehicle 1..* Is owned by 1..1 Warehouse Request 1..* Is created by 1..1 Warehouse

1..* Consist of 1..* Product

Hubungan tiap entitas dapat dilihat pada ERD sebagai berikut:

  Gambar 3. 10 Entity Relationship Diagram Konseptual

(31)

  88  

3.3.3 Identifikasi dan Asosiasi Atribut dengan Entitas – Entitas dan Relationship

Tujuan tahap ini untuk menentukan atribut – atribut yang dibutuhkan dalam setiap entitas. Berikut adalah kamus data atribut dari entitas yang telah diidentifikasi :

Tabel 3. 6 Kamus Data Atribut Employee

Atribut Deskripsi Tipe Data

dan Panjang

Nulls Multi Value EmployeeID Identifikasi unik dari

sebuah member dari Employee

Char (6) No No

EmployeeName Nama dari karyawan Varchar (50) No No EmployeeAdd Alamat dari karyawan Varchar

(100)

Yes No

EmployeePhone No telepon dari karyawan Varchar (20) No No EmployeePass Password karyawan

untuk masuk ke dalam web

Varchar (20) No No

Position Jabatan dari seorang karyawan Varchar (30) No No        

(32)

  89  

Tabel 3. 7 Kamus Data Atribut Customer

Atribut Deskripsi Tipe Data

dan Panjang

Nulls Multi Value CustomerID Identifikasi unik dari

sebuah member dari Customer

Char (5) No No

CustomerName Nama perusahaan yang menjadi pelanggan

Varchar (50) No No

CustomerAdd Alamat perusahaan pelanggan

Varchar (100)

No No

CustomerTaxNo Nomor pajak dari perusahaan pelanggan

Char (16) No No

CustomerPhone Nomor telepon perusahaan pelanggan

Varchar (20) No No

CustomerFax Nomor faximile dari pelanggan

Varchar (20) No No

CustomerCP Nama dari karyawan kepercayaan perusahaan

pelanggan yang menangani pembelian produk yang dapat dihubungi oleh sales sebagai Contact Person

(33)

  90  

Atribut Deskripsi Tipe Data

dan Panjang

Nulls Multi Value CustomerPass Kode Password yang

dimiliki pelanggan untuk dapat melakukan proses pembelian barang pada web

Varchar (20) No No

DestinationAdd Alamat pengiriman produk yang dituju

Varchar (100)

No No

Tabel 3. 8 Kamus Data Atribut Message

Atribut Deskripsi Tipe Data

dan Panjang

Nulls Multi Value MessageID Identifikasi unik dari

sebuah member dari Message

Char (8) No No

Topic Topik pesan yang

dikirimkan dan ingin dibahas

Varchar (100)

No No

MessageTime Waktu pesan dibuat DateTime No No MessagePost Nama seseorang yang

membuat pesan

Varchar (50) No No

(34)

  91  

Atribut Deskripsi Tipe Data

dan Panjang

Nulls Multi Value Customer atau Sales (200)

CommentPost Nama seseorang yang menuliskan Comment

Varchar (50) No No

CommentTime Waktu pada saat Comment dibuat

DateTime No No

Tabel 3. 9 Kamus Data Atribut Product

Atribut Deskripsi Tipe Data

dan Panjang

Nulls Multi Value ProductID Identifikasi unik dari

sebuah member dari Product

Char (10) No No

ProductName Nama produk Varchar (50) No No ProductPrice Harga dari produk Int (11) No No ProductSize Ukuran dari produk Varchar (20) No No ProductImage Gambar dari produk Varchar (30) No No Stock Jumlah produk dalam

gudang

Int (11) No No

(35)

  92  

Tabel 3. 10 Kamus Data Atribut Transaction

Atribut Deskripsi Tipe Data

dan Panjang

Nulls Multi Value DocumentNo Identifikasi unik dari

sebuah member dari Transaction

Char (5) No No

MaturityDate Tanggal jatuh tempo pembayaran

Date No No

Status Status apakah transaksi sudah dilihat oleh sales (Confirm / Not Confirmed)

Tiny Int No No

DeliveryStatus Status apakah transaksi tersedia dan siap untuk dikirim ke pelanggan (Pending / Ready)

Tiny Int No No

PaymentStatus Status apakah transaksi yang telah terjadi sudah dibayar sepenuhnya

Tiny Int No No

TransferNo Nomor transfer dari pembayaran yang dilakukan oleh pelanggan

(36)

  93  

Atribut Deskripsi Tipe Data

dan Panjang

Nulls Multi Value SalesConfirmDate Tanggal transaksi telah

dikonfirmasi oleh sales

Date No No

TransactionDate Tanggal transaksi telah dikonfirmasi oleh warehouse dan siap dikirim

Date No No

Qty Jumlah produk yang

terlibat dalam transaksi

Int (11) No No

Tabel 3. 11 Kamus Data Atribut Input

Atribut Deskripsi Tipe Data

dan Panjang

Nulls Multi Value EmployeeID Identifikasi unik dari

sebuah member dari Employee

Char (6) No No

CustomerID Identifikasi unik dari sebuah member dari Customer

Char (5) No No

InputDate Tanggal data pelanggan diinput

(37)

  94  

Tabel 3. 12 Kamus Data Atribut PurchaseOrder

Atribut Deskripsi Tipe Data

dan Panjang

Nulls Multi Value Purchase

OrderID

Nomor purchase order

yang ditetapkan perusahaan pelanggan Varchar (30) No No Purchase OrderDate Tanggal pembuatan purchase order Date No No

Tabel 3. 13 Kamus Data Atribut Delivery

Atribut Deskripsi Tipe Data

dan Panjang

Nulls Multi Value DeliveryID Nomor surat jalan yang

telah ditetapkan oleh pihak gudang

Varchar (20) No No

DeliveryDate Tanggal surat jalan dikeluarkan

Date No No

Tabel 3. 14 Kamus Data Atribut Warehouse

Atribut Deskripsi Tipe Data

dan Panjang

Nulls Multi Value WarehouseID Identifikasi unik dari

sebuah member dari Warehouse

(38)

  95  

Atribut Deskripsi Tipe Data

dan Panjang

Nulls Multi Value WarehouseName Nama gudang Varchar (50) No No WarehouseAdd Alamat dari gudang Varchar

(100)

No No

WarehousePhone Nomor telepon dari gudang

Varchar (20) No No

WarehouseFax Nomor faximile dari gudang

Varchar (20) No No

WarehousePass Kode password yang dimiliki Warehouse

Varchar (20) No No

VerPass Kode yang dimiliki Warehouse yang digunakan untuk proses penghapusan produk

Varchar (30) No No

Tabel 3. 15 Kamus Data Atribut Vehicle

Atribut Deskripsi Tipe Data

dan Panjang

Nulls Multi Value VehicleID Nomor polisi kendaraan

gudang

Varchar (9) No No

(39)

  96  

Tabel 3. 16 Kamus Data Atribut Request

Atribut Deskripsi Tipe Data

dan Panjang

Nulls Multi Value RequestID Nomor surat permintaan

produk ke pabrik

Char (4) No No

RequestDate Tanggal pembuatan surat Date No No

Qty Jumlah produk yang

diminta

Int (11) No No

3.3.4 Menentukan Atribut Domain

Tahap ini bertujuan untuk menentukan domain dari suatu atribut, yaitu tipe data dan panjang dari atribut tersebut. Dari hasil penentuan atribut, maka didapat atribut domain sebagai berikut :

Tabel 3. 17 Atribut Domain

Nama Entitas Atribut Domain Atribut Employee EmployeeID Char dengan panjang 6 karakter

EmployeeName Varchar dengan panjang 50 karakter EmployeeAdd Varchar dengan panjang 100 karakter EmployeePhone Varchar dengan panjang 20 karakter EmployeePass Varchar dengan panjang 20 karakter Position Varchar dengan panjang 30 karakter Customer CustomerID Char dengan panjang 5 karakter

(40)

  97  

Nama Entitas Atribut Domain Atribut

CustomerAdd Varchar dengan panjang 100 karakter CustomerTaxNo Char dengan panjang 16 karakter CustomerPhone Varchar dengan panjang 20 karakter CustomerFax Varchar dengan panjang 20 karakter CustomerCP Varchar dengan panjang 50 karakter CustomerPass Varchar dengan panjang 20 karakter DestinationAdd Varchar dengan panjang 100 karakter Message MessageID Char dengan panjang 8 karakter

Topic Varchar dengan panjang 100 karakter MessageTime DateTime

MessagePost Varchar dengan panjang 50 karakter Comment Varchar dengan panjang 200 karakter CommentPost Varchar dengan panjang 50 karakter CommentTime DateTime

Product ProductID Char dengan panjang 10 karakter ProductName Varchar dengan panjang 50 karakter ProductPrice Int dengan panjang 11

ProductSize Varchar dengan panjang 20 karakter ProductImage Varchar dengan panjang 30 karakter Stock Int dengan panjang 11

ProductType Varchar dengan panjang 20 karakter Transaction DocumentNo Char dengan panjang 5 karakter

(41)

  98  

Nama Entitas Atribut Domain Atribut MaturityDate Date

Status Tiny Int DeliveryStatus Tiny Int PaymentStatus Tiny Int

TransferNo Varchar dengan panjang 20 karakter SalesConfirmDate Date

TransactionDate Date

Qty Int dengan panjang 11

Input EmployeeID Char dengan panjang 6 karakter CustomerID Char dengan panjang 5 karakter InputDate Date

PurchaseOrder Purchase OrderID

Varchar dengan panjang 30 karakter

Purchase OrderDate

Date

Delivery DeliveryID Varchar dengan panjang 20 karakter DeliveryDate Date

Warehouse WarehouseID Char dengan panjang 4 karakter WarehouseName Varchar dengan panjang 50 karakter WarehouseAdd Varchar dengan panjang 100 karakter WarehousePhone Varchar dengan panjang 20 karakter WarehouseFax Varchar dengan panjang 20 karakter

(42)

  99  

Nama Entitas Atribut Domain Atribut

WarehousePass Varchar dengan panjang 20 karakter VerPass Varchar dengan panjang 30 karakter Vehicle VehicleID Varchar dengan panjang 9 karakter

VehicleName Varchar dengan panjang 50 karakter Request RequestID Char dengan panjang 4 karakter

RequestDate Date

Qty Int dengan panjang 11

3.3.5 Menentukan Candidate Key dan Primary Key

Pada tahap ini terjadi proses penentuan atribut – atribut yang berfungsi sebagai candidate key pada tiap entitas. Tujuan dari tahap ini adalah mengidentifikasi canditate key dan primary key dari setiap entitas.

Tabel 3. 18 Identifikasi Candidate Key dan Primary Key Nama Entitas Candidate Key Primary Key Customer CustomerID CustomerID

CustomerName CustomerTaxNo

Employee EmployeeID EmployeeID EmployeeName

Message MessageID MessageID Delivery DeliveryID DeliveryID

(43)

  100  

Nama Entitas Candidate Key Primary Key Warehouse WarehouseID WarehouseID Transaction DocumentNo DocumentNo Vehicle VehicleID VehicleID

Input EmployeeID EmployeeID

CustomerID CustomerID Request RequestID RequestID Product ProductID ProductID

ProductName ProductImage

  Gambar 3. 11 ERD Konseptual dengan Primary Key

(44)

  101   3.3.6 Periksa Model untuk Redundansi

Langkah ini bertujuan untuk mengecek / memeriksa kehadiran redundansi pada model konseptual. Di dalam perancangan database kami tidak ditemukan adanya hubungan redundansi antar entitas. Dua aktivitas yang dilakukan untuk mengecek redundansi yaitu :

1. Memeriksa kembali adanya hubungan one-to-one (1:1).

Dalam aktivitas ini diidentifikasi apakah terdapat dua entitas yang merepresentasikan sebuah objek yang sama dan pada aktivitas ini kami tidak menemukan adanya lebih dari satu entitas yang mewakili objek yang sama.

2. Menghilangkan hubungan – hubungan yang redundan.

Sebuah hubungan dikatakan redundan jika sebuah informasi dapat diperoleh dari hubungan lain. Tujuan dari perancangan ini adalah untuk mengembangkan sebuah data model yang minimum sehingga model yang memiliki satu hubungan yang sebenarnya tidak diperlukan dapat dihapus. Pada model kami tidak terdapat hubungan yang dapat dikatakan redundan, ada beberapa hubungan yang terlihat seperti redundan namun sebenarnya hubungan tersebut mempunyai tujuannya tersendiri yang tidak dapat dihapuskan.

(45)

  102  

3.3.7 Validasi Model Konseptual terhadap Transaksi – Transaksi yang Dilakukan Pengguna

Tahap ini bertujuan untuk memastikan bahwa model konseptual yang dibuat dapat mendukung transaksi – transaksi yang dibutuhkan oleh pengguna / pemakai.

Pada tahap ini kami menggunakan transaction pathways yang digambarkan pada diagram konseptual untuk memastikan bahwa model konseptual yang telah dibentuk dapat mendukung transaksi yang dibutuhkan pengguna. Transaksi – transaksi yang ada adalah sebagai berikut :

1. Data Entry / Insert

a) Memasukkan detail data untuk Customer baru

b) Memasukkan detail data untuk Message baru yang dibuat oleh Customer c) Memasukkan detail data untuk Transaction baru

d) Memasukkan detail data untuk balasan Message yang dilakukan oleh Employee

e) Memasukkan detail data untuk produk baru f) Memasukkan detail data untuk Employee baru g) Memasukkan detail data untuk posisi baru h) Memasukkan detail data untuk tipe produk baru i) Memasukkan detail data untuk kendaraan baru j) Memasukkan detail data untuk gudang

(46)

  103   2. Data Update / Delete

a) Melakukan proses update / delete data pada Customer b) Melakukan proses delete data pada Message

c) Melakukan proses update / delete data pada pesan / comment tertentu d) Melakukan proses update / delete data pada Employee

e) Melakukan proses update / delete data pada Product f) Melakukan proses delete data pada Transaction

g) Melakukan proses update / delete data pada tipe produk h) Melakukan proses delete kendaraan

i) Melakukan proses update Warehouse 3. Data Query

A. Mengidentifikasi data transaksi pada waktu tertentu

B. Mencari informasi mengenai sales yang menangani suatu transaksi penjualan

C. Mengidentifikasi pelanggan yang melakukan transaksi tertentu

D. Mengetahui apakah seorang sales mempunyai sejumlah transaksi yang belum dikonfirmasikan

E. Mengetahui informasi tentang pelanggan

F. Mengetahui tanggal jatuh tempo dari sebuah transaksi

G. Mencari informasi mengenai produk – produk yang dibeli dalam sebuah transaksi

H. Mengidentifikasi surat jalan yang dikeluarkan untuk transaksi tertentu I. Mengetahui pesan – pesan yang telah dibuat oleh seorang Customer J. Mengetahui jumlah barang yang diminta gudang pada hari tertentu.

(47)

  104  

K. Mengidentifikasi nomor kendaraan yang digunakan untuk mengirimkan suatu transaksi.

  Gambar 3. 12 Validasi Model Data Konseptual terhadap Transaksi Pengguna

3.3.8 Melakukan Review Model Data Konseptual dengan User

Setelah ditinjau berdasarkan kuesioner yang ada yang telah mewakili pengguna, hingga tahap ini rancangan konseptual kami dianggap mampu untuk memenuhi keinginan pengguna sistem dari PT. Ekadharma International Tbk.

(48)

  105   3.4 Perancangan Basis Data Logikal

3.4.1 Menghilangkan Hal yang Tidak Cocok dengan Model Data Relational Logikal

Tahap ini dimaksudkan untuk menghasilkan relasi pada model data logikal untuk menampilkan entitas, relasi, dan atribut yang telah diidentifikasikan.

1. Menghilangkan tipe relasi binary many-to-many (*:*)

Gambar 3. 13 Entitas DetailTransaction yang Dihasilkan Setelah Menghilangkan Many-to-Many

 

 

  Gambar 3. 14 Entitas RequestDetail yang Dihasilkan Setelah

Menghilangkan Many-to-Many 2. Menghilangkan atribut multivalue

Pada model data logikal yang telah kami bentuk tidak terdapat adanya atribut yang bernilai banyak atau multivalue.

(49)

  106  

3.4.2 Menentukan Relasi untuk Model Data Logikal

Tujuan dari tahap ini adalah membuat relasi model data logikal lokal untuk menampilkan kembali entitas, relational, dan atribut yang telah diidentifikasi.

3.4.2.1 Strong and Weak Entity Types

Pada model data kami yang merupakan strong entity types adalah sebagai berikut :

a) Employee (EmployeeID, EmployeeName, EmployeeAdd, EmployeePhone, EmployeePass, Position)

Primary Key : EmployeeID

b) Customer (CustomerID, CustomerName, CustomerAdd, CustomerTaxNo, CustomerPhone, CustomerFax, CustomerCP, CustomerPass, DestinationAdd)

Primary Key : CustomerID

c) Delivery (DeliveryID, DeliveryDate, WarehouseID, VehicleID) Primary Key : DeliveryID

d) Transaction (DocumentNo, PurchaseOrderID, TransactionDate, MaturityDate, SalesConfirmDate, DeliveryID, EmployeeID, Status, DeliveryStatus, PaymentStatus, TransferNo)

Primary Key : DocumentNo

e) Product (ProductID, ProductName, ProductPrice, ProductSize, ProductImage, ProductType, Stock)

Primary Key : ProductID

(50)

  107   Primary Key : VehicleID

g) Warehouse (WarehouseID, WarehouseName, WarehouseAdd, WarehousePhone, WarehouseFax, WarehousePass, VerPass)

Primary Key : WarehouseID

h) Request (RequestID, RequestDate, WarehouseID) Primary Key : RequestID

i) PurchaseOrder (PurchaseOrderID, CustomerID, PurchaseOrderDate, EmployeeID)

Primary Key : PurchaseOrderID

Pada model data kami yang merupakan weak entity types adalah sebagai berikut :

a) Message (MessageID, Topic, MessageTime, MessagePost, CustomerID, EmployeeID, Comment, CommentPost, CommentTime)

Primary Key : MessageID

b) DetailTransaction (DocumentNo, ProductID, Qty, DetailDate) Primary Key : ProductID, DocumentNo

c) RequestDetail (RequestID, ProductID, Qty) Primary Key : RequestID, ProductID

d) Input (EmployeeID, CustomerID, InputDate) Primary Key : EmployeeID, CustomerID

(51)

  108  

3.4.2.2 One-to-Many Binary Relationship Types

Relasi 1:* memiliki 2 bagian, yaitu pada entitas yang bernilai 1 (one) disebut dengan istilah parent entity dan pada entitas yang bernilai * (many) disebut dengan istilah child entity. Berikut adalah relasi – relasi 1:* serta hasil posting dari entitas – entitas yang berhubungan satu dengan yang lainnya :

1. Relasi antara Employee dengan Input melakukan posting EmployeeID ke entitas Input.

Employee (EmployeeID,

EmployeeName, EmployeeAdd, EmployeePhone, EmployeePass, Position)

Primary Key (EmployeeID) 

Input (EmployeeID, CustomerID, InputDate) Primary Key (EmployeeID, CustomerID)

Foreign Key (EmployeeID) references Employee

(EmployeeID)

Foreign Key (CustomerID) references Customer

(52)

  109  

2. Relasi antara Employee dengan Message melakukan posting EmployeeID ke entitas Message.

Employee (EmployeeID, EmployeeName,

EmployeeAdd, EmployeePhone,

EmployeePass, Position) Primary Key (EmployeeID) 

Message (MessageID, Topic, MessageTime, MessagePost, CustomerID,

EmployeeID, Comment, CommentPost, CommentTime) Primary Key (MessageID) Foreign Key (EmployeeID)

references Employee (EmployeeID) Foreign Key (CustomerID)

(53)

  110  

3. Relasi antara Customer dengan Message melakukan posting CustomerID ke entitas Message.

Customer (CustomerID, CustomerName, CustomerAdd, CustomerTaxNo, CustomerPhone, CustomerFax, CustomerCP, CustomerPass, DestinationAdd)

Primary Key (CustomerID)

Message (MessageID, Topic, MessageTime, MessagePost, CustomerID, EmployeeID, Comment, CommentPost, CommentTime)

Primary Key (MessageID) Foreign Key (EmployeeID)

references Employee (EmployeeID) Foreign Key (CustomerID)

(54)

  111  

4. Relasi antara Customer dengan PurchaseOrder melakukan posting CustomerID ke entitas PurchaseOrder.

Customer (CustomerID, CustomerName, CustomerAdd, CustomerTaxNo, CustomerPhone, CustomerFax, CustomerCP, CustomerPass, DestinationAdd)

Primary Key (CustomerID)

PurchaseOrder (PurchaseOrderID, EmployeeID, CustomerID,

PurchaseOrderDate)

Primary Key (PurchaseOrderID) Foreign Key (CustomerID)

references Customer (CustomerID) Foreign Key (EmployeeID)

references Employee (EmployeeID)

5. Relasi antara Employee dengan PurchaseOrder melakukan posting EmployeeID ke entitas PurchaseOrder.

Employee (EmployeeID, EmployeeName,

EmployeeAdd, EmployeePhone,

EmployeePass, Position) Primary Key (EmployeeID)

PurchaseOrder (PurchaseOrderID, EmployeeID, CustomerID,

PurchaseOrderDate)

Primary Key (PurchaseOrderID) Foreign Key (CustomerID)

references Customer (CustomerID) Foreign Key (EmployeeID)

(55)

  112  

6. Relasi antara Employee dengan Transaction melakukan posting EmployeeID ke entitas Transaction.

Employee (EmployeeID, EmployeeName,

EmployeeAdd, EmployeePhone,

EmployeePass, Position) Primary Key (EmployeeID) 

Transaction (DocumentNo, TransactionDate, MaturityDate, DeliveryID, TransferNo, PurchaseOrderID, EmployeeID, Status, DeliveryStatus, PaymentStatus) Primary Key (DocumentNo) Foreign Key (DeliveryID) references Delivery (DeliveryID) Foreign Key (EmployeeID) references Employee

(EmployeeID)

Foreign Key (PurchaseOrderID) references PurchaseOrder

(56)

  113  

7. Relasi antara Vehicle dengan Delivery melakukan posting VehicleID ke entitas Delivery.

Vehicle (VehicleID,

VehicleName, WarehouseID) Primary Key (VehicleID) Foreign Key (WarehouseID) references Warehouse (WarehouseID)    Delivery (DeliveryID, WarehouseID, VehicleID, DeliveryDate)

Primary Key (DeliveryID) Foreign Key (VehicleID) references Vehicle (VehicleID) Foreign Key (WarehouseID) references Warehouse

(WarehouseID)

8. Relasi antara Warehouse dengan Delivery melakukan posting WarehouseID ke entitas Delivery.

Warehouse (WarehouseID, WarehouseName, WarehouseAdd, WarehousePhone, WarehouseFax, WarehousePass, VerPass) Primary Key (WarehouseID)  

Delivery (DeliveryID, WarehouseID, VehicleID, DeliveryDate)

Primary Key (DeliveryID) Foreign Key (VehicleID) references Vehicle (VehicleID) Foreign Key (WarehouseID) references Warehouse

(57)

  114  

9. Relasi antara Warehouse dengan Vehicle melakukan posting WarehouseID ke entitas Vehicle.

Warehouse (WarehouseID, WarehouseName, WarehouseAdd, WarehousePhone, WarehouseFax, WarehousePass, VerPass) Primary Key (WarehouseID)                             Vehicle (VehicleID, VehicleName, WarehouseID) Primary Key (VehicleID) Foreign Key (WarehouseID) references Warehouse

(58)

  115  

10. Relasi antara Warehouse dengan Request melakukan posting WarehouseID ke entitas Request.

Warehouse (WarehouseID, WarehouseName, WarehouseAdd, WarehousePhone, WarehouseFax, WarehousePass, VerPass) Primary Key (WarehouseID)  

Request (RequestID,

WarehouseID, RequestDate) Primary Key (RequestID) Foreign Key (WarehouseID) references Warehouse

(WarehouseID)

3.4.2.3 One-to-One Binary Relationship Types

Pada hubungan ini entitas yang terkait akan digabungkan menjadi satu entitas dan primary key akan dipilih dari salah satu entitas tersebut jika terbukti bahwa kedua entitas tersebut tidak mempunyai alasan yang tepat untuk tetap memiliki hubungan binary one-to-one. Pada model data kami ditemukan adanya tiga hubungan one-to-one dan setelah dipertimbangkan hubungan tersebut tidak perlu digabungkan.

3.4.2.4 Superclass / Subclass Relationship Types

Pada model data konseptual, tidak ditemukan adanya hubungan superclass maupun subclass.

(59)

  116  

3.4.2.5 Many-to-Many Binary Relationship Types Hubungan Product dengan Transaction Transaction (DocumentNo,

PurchaseOrderID,

TransactionDate, MaturityDate, DeliveryID, EmployeeID, Status, DeliveryStatus, PaymentStatus, TransferNo)

Primary Key (DocumentNo)

Foreign Key (DeliveryID) references Delivery (DeliveryID)

Foreign Key (EmployeeID) references Employee (EmployeeID)

Foreign Key (PurchaseOrderID) references PurchaseOrder (PurchaseOrderID)

Product (ProductID,

ProductName, ProductPrice, ProductSize, ProductImage, ProductType)

Primary Key (ProductID)

DetailTransaction (DocumentNo, ProductID, Qty, DetailDate) Primary Key (DocumentNo, ProductID)

Foreign Key (DocumentNo) references Transaction (DocumentNo)

(60)

  117   Hubungan Product dengan Request Request (RequestID,

WarehouseID, RequestDate) Primary Key (RequestID) Foreign Key (WarehouseID) references Warehouse (WarehouseID) Product (ProductID, ProductName, ProductPrice, ProductSize, ProductImage, ProductType)

Primary Key (ProductID)

RequestDetail (RequestID, ProductID, Qty) Primary Key (RequestID, ProductID)

Foreign Key (RequestID) references Request (RequestID) Foreign Key (ProductID) references Product (ProductID)

3.4.2.6 Multivalue Attribute

Multivalue attribute merupakan atribut yang memiliki nilai multiple / lebih dari satu. Dalam model data yang telah dibentuk, tidak ada entitas yang memiliki atribut demikian. Setiap atribut dibuat dengan hanya memiliki satu nilai.

Tabel 3. 19 Dokumentasi Relasi untuk Model Data Logikal

No Relation

1 Employee (EmployeeID, EmployeeName, EmployeeAdd, EmployeePhone, EmployeePass, Position)

(61)

  118  

No Relation

Primary Key : EmployeeID

2 Customer (CustomerID, CustomerName, CustomerAdd, CustomerTaxNo, CustomerPhone, CustomerFax, CustomerCP, CustomerPass, DestinationAdd)

Primary Key : CustomerID

3 Message (MessageID, Topic, MessageTime, MessagePost, CustomerID, EmployeeID, Comment, CommentPost, CommentTime)

Primary Key : MessageID

Foreign Key : EmployeeID references Employee Foreign Key : CustomerID references Customer

4 Delivery (DeliveryID, DeliveryDate, WarehouseID, VehicleID) Primary Key : DeliveryID

Foreign Key : VehicleID references Vehicle Foreign Key : WarehouseID references Warehouse

5 Product (ProductID, ProductName, ProductPrice, ProductSize, ProductImage, ProductType)

Primary Key : ProductID

6 Transaction (DocumentNo, PurchaseOrderID, TransactionDate, MaturityDate, SalesConfirmDate, DeliveryID, EmployeeID, Status, DeliveryStatus, PaymentStatus, TransferNo)

(62)

  119  

No Relation

Foreign Key : DeliveryID references Delivery

Foreign Key : PurchaseOrderID references PurchaseOrder Foreign Key : EmployeeID references Employee

7 DetailTransaction (DocumentNo, ProductID, Qty, DetailDate) Primary Key : DocumentNo, ProductID

Foreign Key : DocumentNo references Transaction Foreign Key : ProductID references Product

8 PurchaseOrder (PurchaseOrderID, CustomerID, EmployeeID, PurchaseOrderDate)

Primary Key : PurchaseOrderID

Foreign Key : CustomerID references Customer Foreign Key : EmployeeID references Employee 9 Input (EmployeeID, CustomerID, InputDate)

Primary Key : EmployeeID, CustomerID Foreign Key : EmployeeID references Employee Foreign Key : CustomerID references Customer 10 Vehicle (VehicleID, VehicleName, WarehouseID)

Primary Key : VehicleID

Foreign Key : WarehouseID references Warehouse

11 Warehouse (WarehouseID, WarehouseName, WarehouseAdd, WarehousePhone, WarehouseFax, WarehousePass, VerPass) Primary Key : WarehouseID

(63)

  120  

No Relation

12 Request (RequestID, WarehouseID, RequestDate) Primary Key : RequestID

Foreign Key : WarehouseID references Warehouse 13 RequestDetail (RequestID, ProductID, Qty)

Primary Key : RequestID, ProductID Foreign Key : RequestID references Request Foreign Key : ProductID references Product

  Gambar 3. 15 ERD Logikal Awal

(64)

  121   3.4.3 Validasi Relasi menggunakan Normalisasi

Tujuan dari langkah ini adalah untuk menghilangkan redundansi dan menghindari data yang tidak konsisten terutama bila dilakukan penambahan atau penghapusan data.

1. Employee (EmployeeID, EmployeeName, EmployeeAdd, EmployeePhone, EmployeePass, Position)

1NF : @EmployeeID, EmployeeName, EmployeeAdd, EmployeePhone, EmployeePass, Position

2NF : @EmployeeID, EmployeeName, EmployeeAdd, EmployeePhone, EmployeePass, Position

3NF : @EmployeeID, EmployeeName, EmployeeAdd, EmployeePhone, EmployeePass, PositionID

Position : @PositionID, Position

2. Customer (CustomerID, CustomerName, CustomerAdd, CustomerTaxNo, CustomerPhone, CustomerFax, CustomerCP, CustomerPass, DeliveryAdd)

1NF : @CustomerID, CustomerName, CustomerAdd, CustomerTaxNo, CustomerPhone, CustomerFax, CustomerCP, CustomerPass, DeliveryAdd

3. Message (MessageID, Topic, MessageTime, MessagePost, CustomerID, EmployeeID, Comment, CommentPost, CommentTime)

1NF : @MessageID, Topic, MessageTime, MessagePost, CustomerID, EmployeeID, Comment, CommentPost, CommentTime

(65)

  122  

2NF : @MessageID, Topic, MessageTime, MessagePost, CustomerID, EmployeeID

DetailMessage : @CommentTime, @MessageID, Comment, CommentPost

3NF : @MessageID, Topic, MessageTime, MessagePost, CustomerID, EmployeeID

DetailMessage : @CommentTime, @MessageID, Comment, CommentPost

Customer : @CustomerID, CustomerName, CustomerAdd,

CustomerTaxNo, CustomerPhone, CustomerFax, CustomerCP, CustomerPass,

DeliveryAdd

Employee :@EmployeeID, EmployeeName,

EmployeeAdd, EmployeePhone, EmployeePass, PositionID

4. Delivery (DeliveryID, DeliveryDate, WarehouseID, VehicleID) 1NF : @ DeliveryID, DeliveryDate, WarehouseID, VehicleID 2NF : @ DeliveryID, DeliveryDate, WarehouseID, VehicleID 3NF : @ DeliveryID, DeliveryDate, WarehouseID, VehicleID

Warehouse :@WarehouseID, WarehouseName, WarehouseAdd, VerPass, WarehouseFax, WarehousePass, Warehouse Phone

(66)

  123  

5. Product (ProductID, ProductName, ProductPrice, ProductSize, ProductImage, ProductType)

1NF : @ProductID, ProductName, ProductPrice, ProductSize, ProductImage, ProductType

2NF : @ProductID, ProductName, ProductPrice, ProductSize, ProductImage, ProductType

3NF : @ProductID, ProductName, ProductPrice, ProductSize, ProductImage, ProductTypeID

ProductType : @ProductTypeID, ProductType

6. Transaction (DocumentNo, PurchaseOrderID, TransactionDate, MaturityDate, SalesConfirmDate, DeliveryID, EmployeeID, Status, DeliveryStatus, PaymentStatus, TransferNo)

1NF :@DocumentNo, PurchaseOrderID, TransactionDate, MaturityDate, SalesConfirmDate, DeliveryID, EmployeeID, Status, DeliveryStatus, PaymentStatus, TransferNo

2NF :@DocumentNo, PurchaseOrderID, TransactionDate, MaturityDate, SalesConfirmDate, DeliveryID, EmployeeID, Status, DeliveryStatus, PaymentStatus, TransferNo

3NF :@DocumentNo, PurchaseOrderID, TransactionDate, MaturityDate, SalesConfirmDate, DeliveryID, EmployeeID, Status, DeliveryStatus, PaymentStatus, TransferNo

Delivery : @DeliveryID, DeliveryDate, WarehouseID, VehicleID

(67)

  124  

PurchaseOrder :@PurchaseOrderID, PurchaseOrderDate, @CustomerID, EmployeeID

Employee :@EmployeeID, EmployeeName,

EmployeeAdd, EmployeePhone, EmployeePass, PositionID

7. DetailTransaction (DocumentNo, ProductID, Qty, DetailDate) 1NF : @ DocumentNo, @ProductID, Qty, DetailDate

2NF : @ DocumentNo, @ProductID, Qty, DetailDate 3NF : @ DocumentNo, @ProductID, Qty, DetailDate

Product : @ProductID, ProductName, ProductPrice, ProductSize, ProductImage, ProductTypeID 8. PurchaseOrder (PurchaseOrderID, PurchaseOrderDate, CustomerID,

EmployeeID)

1NF :@PurchaseOrderID, PurchaseOrderDate, CustomerID, EmployeeID

2NF :@PurchaseOrderID, PurchaseOrderDate, CustomerID, EmployeeID

3NF :@PurchaseOrderID, PurchaseOrderDate, @CustomerID, EmployeeID

Customer : @CustomerID, CustomerName, CustomerAdd,

CustomerTaxNo, CustomerPhone, CustomerFax, CustomerCP, CustomerPass,

(68)

  125  

Employee :@EmployeeID, EmployeeName,

EmployeeAdd, EmployeePhone, EmployeePass, PositionID

9. Input (CustomerID, EmployeeID, InputDate) 1NF :@CustomerID, @EmployeeID, InputDate 2NF :@CustomerID, @EmployeeID, InputDate 3NF :@CustomerID, @EmployeeID, InputDate

Customer : @CustomerID, CustomerName, CustomerAdd,

CustomerTaxNo, CustomerPhone, CustomerFax, CustomerCP, CustomerPass,

DeliveryAdd

Employee :@EmployeeID, EmployeeName,

EmployeeAdd, EmployeePhone, EmployeePass, PositionID

10. Vehicle (VehicleID, WarehouseID, VehicleName) 1NF :@VehicleID, WarehouseID, VehicleName 2NF :@VehicleID, WarehouseID, VehicleName 3NF :@VehicleID, WarehouseID, VehicleName

Warehouse :@WarehouseID, WarehouseName, WarehouseAdd, VerPass, WarehouseFax, WarehousePass, WarehousePhone

11. Warehouse (WarehouseID, WarehouseName, WarehouseAdd, WarehousePhone, WarehouseFax, WarehousePass, VerPass)

(69)

  126  

1NF : @WarehouseID, WarehouseName, WarehouseAdd, VerPass, WarehouseFax, WarehousePass, WarehousePhone

12. Request (RequestID, RequestDate, WarehouseID) 1NF :@RequestID, RequestDate, WarehouseID 2NF :@RequestID, RequestDate, WarehouseID 3NF :@RequestID, RequestDate, WarehouseID

Warehouse :@WarehouseID, WarehouseName, WarehouseAdd, VerPass, WarehouseFax, WarehousePass, WarehousePhone

13. RequestDetail (RequestID, ProductID, Qty) 1NF :@RequestID, @ProductID, Qty 2NF :@RequestID, @ProductID, Qty 3NF :@RequestID, @ProductID, Qty

Product :@ProductID, ProductName, ProductPrice, ProductSize, ProductImage, ProductTypeID

Tabel 3. 20 Dokumentasi Relasi Model Data Logikal Setelah Dilakukan Normalisasi

No Relation

1 Employee (EmployeeID, EmployeeName, EmployeeAdd, EmployeePhone, EmployeePass, PositionID)

Primary Key : EmployeeID

Foreign Key : PositionID references Position 2 Position (PositionID, Position)

(70)

  127  

No Relation

Primary Key : PositionID

3 Customer (CustomerID, CustomerName, CustomerAdd, CustomerTaxNo, CustomerPhone, CustomerFax, CustomerCP, CustomerPass, DeliveryAdd)

Primary Key : CustomerID

4 Message (MessageID, Topic, MessageTime, MessagePost, CustomerID, EmployeeID)

Primary Key : MessageID

Foreign Key : EmployeeID references Employee Foreign Key : CustomerID references Customer 5 DetailMessage (MessageID, Comment, CommentPost,

CommentTime)

Primary Key : MessageID, CommentTime Foreign Key : MessageID references Message

6 Delivery (DeliveryID, DeliveryDate, WarehouseID, VehicleID) Primary Key : DeliveryID

Foreign Key : WarehouseID references Warehouse Foreign Key : VehicleID references Vehicle

7 Product (ProductID, ProductName, ProductPrice, ProductSize, ProductImage, ProductTypeID)

Primary Key : ProductID

(71)

  128  

No Relation

8 ProductType (ProductTypeID, ProductType) Primary Key : ProductTypeID

9 Transaction (DocumentNo, CustomerID, PurchaseOrderID, TransactionDate, MaturityDate, SalesConfirmDate, DeliveryID, EmployeeID, Status, DeliveryStatus, PaymentStatus, TransferNo) Primary Key : DocumentNo

Foreign Key : CustomerID references PurchaseOrder Foreign Key : PurchaseOrder ID references PurchaseOrder Foreign Key : DeliveryID references Delivery

Foreign Key : EmployeeID references Employee

10 DetailTransaction (DocumentNo, ProductID, Qty, DetailDate) Primary Key : DocumentNo, ProductID

Foreign Key : DocumentNo references Transaction Foreign Key : ProductID references Product

11 PurchaseOrder (PurchaseOrderID, PurchaseOrderDate, CustomerID, EmployeeID)

Primary Key : PurchaseOrderID

Foreign Key : CustomerID references Customer Foreign Key : EmployeeID references Employee 12 Input (CustomerID, EmployeeID, InputDate)

Primary Key : CustomerID, EmployeeID Foreign Key : CustomerID references Customer

(72)

  129  

No Relation

Foreign Key : EmployeeID references Employee 13 Vehicle (VehicleID, WarehouseID, VehicleName)

Primary Key : VehicleID

Foreign Key : WarehouseID references Warehouse

14 Warehouse (WarehouseID, WarehouseName, WarehouseAdd, WarehousePhone, WarehouseFax, WarehousePass, VerPass) Primary Key : WarehouseID

15 Request (RequestID, RequestDate, WarehouseID) Primary Key : RequestID

Foreign Key : WarehouseID references Warehouse 16 RequestDetail (RequestID, ProductID, Qty)

Primary Key : RequestID, ProductID

Foreign Key : RequestID references Request Foreign Key : ProductID references Product

(73)

  130  

  Gambar 3. 16 ERD Logikal setelah dilakukan Normalisasi

3.4.4 Validasi Relasi Terhadap Transaksi User

Tahap ini bertujuan untuk melihat apakah model data logikal mendukung transaksi yang diperlukan perusahaan.

1. Data Entry / Insert

a) Memasukkan detail data untuk Customer baru

b) Memasukkan detail data untuk Message baru yang dibuat oleh Customer

c) Memasukkan detail data untuk Transaction baru

d) Memasukkan detail data untuk balasan Message yang dilakukan oleh Employee

Gambar

Tabel 3. 18 Identifikasi Candidate Key dan Primary Key  Nama Entitas  Candidate Key  Primary Key  Customer  CustomerID  CustomerID
Gambar 3. 13 Entitas DetailTransaction yang Dihasilkan Setelah  Menghilangkan Many-to-Many
Tabel 3. 21 Penambahan Kamus Atribut Position pada Tahap Pengecekan Integrity  Constraint
Tabel 3. 22 Penambahan Kamus Atribut DetailMessage pada Tahap Pengecekan  Integrity Constraint
+7

Referensi

Dokumen terkait

murah dibanding adaptive array, lebih mudah diterapkan pada sistem-sistem yang lama. Tetapi switched beam juga memiliki kekurangan diantaranya : hanya cocok digunakan

Pengadaan Barang/Jasa kategori Pekerjaan Pengadaan Barang metode pengadaan Pemilihan Langsung secara Pascakualifikasi Metode Satu File dengan Evaluasi Sistem Gugur

Cara kerja dari keran sensor, yaitu membaca gerakan tangan / benda sesuai jarak baca dari sensor tersebut, untuk kemudian kran terbuka dan mengeluarkan air. Hal ini dapat

Admin finance melakukan pengecekan informasi rekening bank, jika sudah ada pembayaran dari customer untuk tagihan tersebut, maka admin finance membuat incoming

Adapun Skripsi ini merupakan tugas akhir dari masa studi S1 di jurusan Teknik Industri yang sifatnya sebagai salah satu syarat kelulusan bagi mahasiswa S1 Teknik Industri

Unsur-unsur tersebut tidak hadir secara terpisah dalam sebuah karya, tetapi diciptakan sebagai satu kesatuan yang utuh untuk mewujudkan citra tertentu yang ingin

Kelompok pria tani memiliki inovasi dalam hal pemberantasan hama yaitu denga sistem tumpang sari dengan tanaman yang berbau menyengat ataupun tanaman berbau menyangat

Pajak penghasilan terkait pos-pos yang tidak akan direklasifikasi ke laba rugi 0. Penyesuaian akibat penjabaran laporan keuangan dalam mata uang