Deskripsi Umum Sistem Sistem Flow

perancangan dalam bentuk perancangan proses, perancangan data, perancangan tabel, dan perancangan antar muka.

3.2.1 Deskripsi Umum Sistem

Secara umum deskripsi dari sistem ini dapat dilihat dalam bantuk gambar seperti yang tertera di bawah ini: INTERNET Server File Hosting Web Server User Premium User Premium User Biasa User Biasa User Biasa W E B L I N K Download terbatas Download terbatas Download terbatas Download premium Upload Upload Download premium User Terdaftar User Pendaftaran Verifikasi via email N A S Switch ADSL Mode Bridge Gambar 3.1 Deskripsi Umum Sistem Dari gambar di atas secara garis besar dapat sistem akan melakukan pengecekan terhadap user yang mengakses file server. Jika user tidak terdaftar sebagai premium user, maka sistem akan memberikan beberapa limitasi diantaranya adalah download yang diberikan sistem kepada user akan memiliki batas. Batas limitasi user berupa waktu tunggu, quota bandwidth, dan besar ukuran file. Pada anonymous user atau biasa disebut dengan user tanpa identitas hanya diperbolehkan melakukan proses upload dan download file selama user tersebut memiliki link file yang masih valid. Anonymous user tidak dapat mengecek file yang telah disimpan kedalam server kecuali user tersebut telah mendaftar sebagai free user. Pada free user sama seperti anonymous user tetapi memiliki hak untuk mengakses file yang telah diupload ke mesin server. Untuk mendapatkan hak sebagai premium user, user yang telah terdaftar sebagai free user dapat melakukan upgrade menjadi premium user. User yang telah terdaftar sebagai premium account, tidak akan memiliki batasan seperti yang diberikan sistem pada free account.

3.2.2 Kebutuhan Sistem

Berdasarkan deskripsi yang telah dibahas di atas untuk memenuhi kebutuh

3.2.2.1 CDM Conceptual Data Model

memodelkan struktur logis dari kes an sistem dan dapat berinteraksi serta dapat memenuhi kebutuhan- kebutuhan pada sistem nantinya, maka diperlukan penjabaran basis data untuk mengatur data-data layanan baik itu data user maupun data file yang didownload oleh user. Kebutuhan basis data ini dapat digambarkan dalam diagram Entity Relationship Diagram ER atau yang disebut dengan Conceptual Data Model CDM. Conceptual Data Model CDM eluruhan aplikasi data, tidak tergantung pada software atau pertimbangan model struktur data. CDM yang valid dapat dikonversi ke PDM. Berikut ini adalah gambar dari Conceptual Data Model Sistem Layanan Online File Sharing : Gambar 3.2 CDM Sistem Layanan Onlie File Sharing Dari hasil CDM di atas akan menghasilkan 5 tabel berikut penjelasan dari masing-masing tabel: a tb_user ini berisikan data user yang mendaftar pada layanan online file sharing. tb_user memiliki 5 attribut diantaranya id_user, nama_user, email_user, password dan level_account. tb_user bersifat dominan terhadap tb_premium, yang artinya tb_premium tidak akan ada jika tb_user tidak ada. b tb_premium berisikan data user yang telah mendaftar dan melakukan upgrade dari user biasa menjadi user premium. tb_premium berisi 3 entitas diantaranya id_premium, tgl_aktivasi dan tgl_berakhir. tb_premium juga berelasikan dengan tb_user one-to-one dengan tb_premium yang mempunyai mandatory pada tb_premium. c tb_voucher berisi data voucher pada layanan online file sharing yang nantinya digunakan untuk menyimpan data harga voucher, masa berlaku voucher, serta masa berlaku voucher. tb_voucher memiliki 4 attribute diantaranya id_voucher, nama_voucher, masa_berlaku dan harga voucher. tb_voucher berlesasikan dengan tb_premium one-to-many dimana nantinya id_premium akan menjadi foreign key pada tb_voucher. d tb_file berisi data file dari user yang melakukan upload ke server serta sebagai pencatat data link, ukuran file, tanggal upload dan hot_link dari user. tb_file memiliki 6 attribut diantaranya id_file, nama_file, size, hit_link, file_link dan tgl_upload. tbl_file berelasikan dengan tbl_user many-to-one dimana id_user akan menjadi foregn key pada tbl_file. e tb_download berisi data download file, memiliki 2 attribut diantaranya id_download dan tgl_download. Berelasikan dengan tb_file many-to-one dimana id_file akan menjadi foreign key pada tb_download. 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

Pada sistem flow ini akan menjelaskan aliran data dari sistem yang digunakan, mulai anonymous user, free user dan premium yang akan mengakses file yang telah diuploadnya ke online file sharing ini. Berikut adalah sistem flow pembangunan server layanan penyedia penyimpanan file online: 1 Anonynous User Sistem flow pada layanan online file sharing dibawah ini ditujukan pada anonymous user, yaitu user yang ingin meletakkan filenya pada layanan onlie file sharing tetapi user tersebut tidak ingin terdaftar sebagai user. Sistem flow di dibawah ini dimulai dari START kemudian user akan mencari file yang akan di upload ke server layanan online file sharing. Setelah menentukan file mana yang akan diupload user hanya melakukan klik pada button upload. Setelah file sukses di upload web server akan membuat alamat link download dari file tersebut dan ditampilkan ke user. Jika user ingin melakukan proses upload lagi maka akan dikembalikan pada proses sebelumnya. UploadDownload Anonymous User Web Server User Upload file Selesai ? Start Tampilkan link file Finish T Y Cari Upload File Generate download link Download link Ulpoad download Confirm file Limit download File downloaded Gambar 3.4 Layanan UploadDownload Pada Anonymous User 2 Free user Sistem flow pada layanan online file sharing di bawah berikut ditujukan pada free user, yaitu user yang terdaftar sebagai member. Web Server User Gambar 3.5 Layanan Upload Download Pada Free User Sistem flow ini dimulai dari START, kemudian pada sistem akan terjadi pengecekan apakah user memang terdaftar sebagai free user atau anonymous. Jika user tidak terdaftar maka user akan diminta untuk mendaftarkan diri terlebih dahulu dengan memasukkan data user. Setelah data user disimpan sistem akan mengirimkan notification bahwasannya account telah aktif. Ketika account telah aktif user diminta unutk login terlebih dahulu, jika user memang terdaftar sebagai user yang valid artinya user yang belum expired masa keanggotaannya, maka sistem akan menampilkan home directory dari user. Dalam home directory user, user dapat melakukan upload file dan download file. Jika user melakukan upload, user diminta untuk memilih file yang akan akan diupload. Jika ukuran file lebih besar dari 200M, maka sistem akan memberikan notification bahwasannya file yang akan diupload terlalu besar dan sistem tidak akan mengijinkan file tersebut untuk diupload. Jika ukuran file kurang dari 200 MB maka file akan disimpan oleh sistem. Setelah file tersimpan sistem akan membuat link file dengan menggunakan metode MD5. Link file dari hasil generate tersebut akan ditampilkan ke user. Pada proses download user diminta untuk memasukkan link file. Jika link file tersebut valid, maka sistem akan melakukan pengecekan apakah terdapat paralel download atau tidak. Yang dimaksud dengan paralel download adalah dimana seorang user melakukan lebih dari satu file yang di download pada saat bersamaan. Jika tidak ada paralel download, sistem akan mengijinkan file tersebut untuk didownload serta sistem akan melakukan limitasi bandwidth. 3 Premium User Sistem flow pada layanan online file sharing berikut ini ditujukan pada user yang teregister sebagai premium user. Premium user adalah user yang telah teregistrasi sebagai free member dan melakukan update account menjadi premium user dengan cara melakukan pembelian voucher. Sistem flow di atas dimulai dari START dan pada sistem akan melakukan pengecekan apakah user sudah terdaftar sebagai free user atau belum. Jika user telah terdaftar sistem akan melakukan pengecekan lagi apakah user telah terdaftar sebagai premium user atau belum, jika ternyata user belum terdaftar maka user melakukan upgrade menjadi premium member untuk mendapatkan hak akses sebagai premium user. Setelah user melakukan upgrade menjadi premium member maka secara otomatis account level dari user tersebut akan naik menjadi premium user setelah melakukan relogin. Status tersebut akan ditampilkan pada tampilan status user di halaman awal pertama login. Pada saat user upload file akan dibatasi sebesar 200MB per file, sedangkan pada saat download user premium tidak dikenakan delay waktu tunggu dan dapat melakukan paralel download tanpa harus menunggu proses download yang sebelumnya selesai. Gambar 3.6 Layanan Upload Download pada Premium User

3.2.4 Interface Perancangan Antar Muka