TAHUN
BAGI PELANGGAN TETAP REDBLACK
RESTO
Oleh : Rahmat Taufik R.L Bau
Seorang Menejer Redblack Resto ingin mengadakan sebuah undian akhir tahun untuk
pelanggan setianya. Pelanggan tetap mempunyai sebuah Member Card dan akan mendapatkan
satu nomor undian setiap total pembelanjaan lebih dari Rp. 100.000,- untuk makanan, minuman
maupun souvenir yang kemudian akan diundi berdasarkan nomor undian pada akhir tahun.
Seorang programmer diminta untuk membuatkan sebuah database dimana dalam
database tersebut bisa mewakili data-data yang diperlukan untuk keperluan pengundian pada
akhir tahun nanti. Untuk setiap pelanggan bisa mendapatkan nomor undian lebih dari satu dan
satu nomor undian hanya berlaku untuk satu pelanggan saja. Nomor undian didapat dari tiap total
pembelian diatas dari Rp. 200.000,- dan pada saat pengundian nanti hanya aka nada satu nomor
undian yang mendapatkan sebuah mobil dari Redblack Resto.
Sehingga kemudian muncul dua buah tabel, yaitu tabel pelanggan dan tabel kupon seperti
dibawah ini :
Id_member
G07150001
G12150023
S02140014
S02160111
Nama
Alamat
No_tel
Rahmat
Jl. Jlagran
0852990xxx
Taufik
Jl. Kaliurang
081299060xxx
Arel
Jl. Haryadi
085650991xxx
Opick
Jl. Jlagran
087812345xxx
Tabel 1.1 Tabel Pelanggan Tetap Redblack Resto
12/01/2016
Tanggal
Id_member
G12150023
10/01/2016
S08150111
SS0216008 01/02/2016
G12150023
MS0216377 15/02/2016
S02140014
Tabel 1.2 Tabel No Kupon Undian Redblack Resto
No_kupon, untuk setiap pembelian diatas Rp. 200.000 maka system akan
menambahkan field baru berupa seri angka dan huruf yang akan menjadi
nomor kupon pada saat pengundian. No_kupon bersifat unik dimana dalam
tiap fieldnya tidak bisa ada yang yang sama.
Tanggal, sebagai keterangan kapan diperolehnya nomor kupon
Id_member, untuk mengetahui siapa pemegang dari tiap nomor kupon.
Dari kedua tabel tersebut sejatinya sudah memenuhi syarat sebagai system informasi
untuk mengundi siapa yang nanti akan memenangkan undian tahunan Redblack Resto, namun
ada sebuah kelemahan terdapat didalamnya, yaitu masih bisa di manipulasi.
Untuk setiap nomor kupon tidak bisa dicek apakah kupon tersebut valid atau tidak. Bisa
saja untuk tiap pelanggan yang mempunyai koneksi di dalam untuk memanipulasi data dengan
memperbanyak nomor undiannya, karena tidak ada relasi antara no kupon dengan tabel yang
yang bisa memvalidasi apakah nomor kupon tersebut benar-benar valid.
1. Model Data Relasional
Bersinggungan dengan database, programmer memilih model data relasional dalam
pengembangannya, dimana ia menghubungkan sebuah tabel dengan tabel lainnya sehingga
terdapat keterhubungan antar tabel.
Karena Redblack Resto sudah mempunyai data pelanggan pada databasenya maka
programmer hanya menambahkan satu tabel saja kedalam database, yaitu tabel kupon yang
nantinya akan direlasikan dengan tabel pelanggan.
ID_MEMBER
NO_KUPON
NAMA
TANGGAL
Dapat
ID_MEMBER
NO_STRUK
KUPON
PELANGGAN
Validasi
ALAMAT
NO_TELP
TANGGAL
NO_STRUK
ITEM
JAM
STRUK
TOTAL
Untuk Entitas Pelanggan dihubungkan dengan Relasi Dapat kepada Entitas Kupon
dan Entitas Kupon dihubungkan dengan Relasi Validasi kepada Entitas Struk
Dari diagram diatas diketahui bahwa untuk tiap pelanggan akan
mendapatkan sebuah kupon jika setelah divalidasi total belanja yang ada pada
struk lebih dari Rp. 200.000, maka dengan ERD dibuktikan bahwa sistem yang
dibuat sudah memenuhi kebutuhan Menejer Redblack Resto untuk melakukan
pengundian di akhir tahun.
2.2
SQL
akan keluar notifikasi bahwa nomor kupon valid, jika tidak, maka akan keluar
notifikasi bahwa nomor kupon tidak valid.