f tb_request berisi atribut berupa id_request, status_request, dan
tgl_request. tb_request ini berelasikan dengan tb_user dan tb_premium.
g tb_file_id merupakan tabel temporary yang digunakan untuk
menampung data sementara id_download terakhir yang dilakukan user dan tidak memiliki relasi.
3.2.2.2 PDM Physycal Data Model
Dari hasil pembuatan CDM akan digenerate menjadi sebuah Phisical Data Model PDM. PDM ini akan merepresentasikan tabel pada
database yang sebenarnya Physical Data Model PDM merupakan permodelan dari struktur fisik dari basis data data base yang digunakan.
Sebuah PDM yang valide dapat dikonversi kembali kedalam bentuk CDM. Berikut adalah PDM dari sistem Layanan Online File Sharing. Entitas di
mana entitas lemah bergantung dinamakan identifying owner. Entitas lemah tidak memiliki identifier sendiri. Secara umum, dalam diagram ER
entitas lemah memiliki atribut yang berperan sebagai partial identifier identifier yang berfungsi secara sebagian. Hasil dari CDM ke
dalam bentuk PDM dapat dilihat pada gambar berikut:
Gambar 3.3 PDM Database
Penjelasan attribut pada tiap tabel adalah sebagai berikut :
1 tb_
user :
a id_user : id user akan diisi otomatis secara auto increment ketika user
melakukan pendaftaran pada website. ID user berstatus primary key pada tb_user.
b nama_user : data akan diisi dengan nama user oleh useri pada saat
user mendaftar pada website. c
email_user : data akan disi dengan email dari user. d
Password : data akan diisi dengan password oleh user.
e level_account : data akan diisi oleh angka yang menyatakan tingkatan
dari level akses dari user. Angka tersebut diantaranya adalah 0 untuk level account anonymous, 1 untuk level account free user dan 2 untuk
level account premium user.
2 tb_premium:
a id_premium : data akan diisi otomatis secara auto increment pada
saat user melakukan upgrade dari free user menjadi premium user. ID premium ini bersifat primary key.
b id_user : data akan diisi dengan data pada id_user pada tabel tb_user.
id_user merupakan foreign key dari tb_user. c
id_voucher : merupakan data yang diambil dari tabel voucher d
tgl_aktivasi : data akan diisi dengan tanggal pada saat user melakukan aktivasi account oleh siste.
e tgl_berakhir : data akan diisi dengan tanggal saat berakhirnya user
sebagai user premium.
3 tb_voucher:
a id_voucher: data akan diisi secara otomatis secara auto increment
pada saat user melakukan pembelian voucher. b
id_premium: data akan diisi dengan data pada tabel id_premium, id_premium merupakan foreign key dari tabel tb_premium.
c nama_voucher: data akan diisi dengan nama voucher.
d masa_berlaku: data akan diisi dengan tanggal berlaku voucher.
4 tb_file:
a id_file : data akan diisi dengan dengan id dari setiap file yang
diupload oleh user. id_file ini bersifat primary key. b
id_user : data akan diisi dengan id dari user. id_user bersifat foreign key pada tb_file.
c nama_file : data akan diisi dengan nama dari tiap file yang diupload
oleh user. d
size_file : data akan diisi dengan ukuran file yang telah diupload oleh user.
e hit_file : data akan diisi dengan berapa kali file yang akan diupload
oleh user telah didownload oleh user lain. f
file_link : data akan diisi dengan link dari file yang telah diupload oleh user, file link digenerate dengan menggunakan MD5 guna
melindungi keabsahan file tersebut. g
tgl_upload : data akan diisi dengan tanggal pada saat user upload. h
file_sum : merupakan data catatan total saat ini file yang tersimpan di database.
i file_kill : data akan berisi dengan alamat link dari file untuk proses
penghapusan dari file yang bersangkutan.
5 tb_
download :
a id_download : berisikan data yang berupa auto increment untuk
mencatat download yang dilakukan oleh user. b
id_file : berisikan data dari id_file yang diambil dari tabel file. c
tgl_download : merupakan data tanggal yang tercatat dari proses download yang dilakukan.
d jam_download : merupakan data waktu yang tercatat dari proses
download yang dilakukan. e
ip_download : berisikan data alamat ip user yang melakukan download.
6 tb_request :
a id_request : adalah data id dari request yang diminta user untuk
mengaktifkan menjadi premium member. b
tgl_request : data tanggal dari proses user melakukan request. c
id_user : merupakan data id dari user yang melakukan request, data diambil dari tabel user.
d id_voucher : data akan diisi secara otomatis secara auto increment
pada saat user melakukan pembelian voucher e
status_request : merupakan status dari request user apakah telah diterima sebagai premium member atau belum.
7 tb_file_id :
a merupakan tabel temporary yang digunakan untuk menampung data
sementara id_download terakhir yang dilakukan user dan tidak memiliki relasi.
3.2.3 Sistem Flow