PDM Physycal Data Model

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