BAB 4 PERANCANGAN DAN IMPLEMENTASI
4.1 Pendahuluan Dalam bab 4 ini akan dituangkan tentang perancangan database, prototipe aplikasi, arsitektur aplikasi dan pengujian/evaluasi dari aplikasi. Perancangan database meliputi perancangan konseptual, logikal, dan fisikal. Prototipe aplikasi menggunakan perancangan web database yang meliputi perancangan konseptual, logikal dan fisikal. Arsitektur aplikasi menggunakan arsitektur client-server three tier. Evaluasi aplikasi menggunakan program Yslow dan kuisioner online kepada pengguna. 4.2 Perancangan Dabatase Pada bagian ini akan dijelaskan perancangan database untuk web database yang dibuat. Perancangan database tersebut meliputi perancangan konseptual, perancangan logikal dan perancangan fisikal. 4.2.1 Perancangan Database Konseptual Langkah-langkah
pada
perancangan
65
database
konseptual
meliputi
:
66 4.2.1.1 Identifikasi Tipe Entitas Tabel 4. 1 Kamus Tipe Entitas Entitas Name
Pemilik
Description
Mendeskripsikan semua pemilik usaha tempat kost
Aliases
Occurance
PemilikKost
Setiap pemilik dapat memiliki satu atau banyak tempat kost,dapat memiliki nol atau banyak session, memiliki nol atau banyak ThreadForum, memiliki nol atau banyak rating,dan dapat memiliki nol atau banyak komentar
Pelanggan
Setiap member dapat memiliki nol atau banyak ThreadForum,dapat memiliki nol atau banyak session,dapat memiliki nol atau banyak tempat usaha lainnya, dapat memiliki nol atau banyak komentar, memiliki nol atau banyak rating,dan Banyak member dapat memiliki nol atau banyak sewa tempatkost,dapat memiliki nol atau banyak booking tempatkost
Member
Mendeskripsikan semua anggota yang terdaftar
TempatKost
Mendeskripsikan semua tempat kost yang terdaftar
TempatTinggal
Setiap tempatkost memiliki nol atau banyak foto,dapat memiliki satu atau banyak fasilitas,dan dapat memiliki nol atau satu map
TempatUsaha
Mendeskripsikan semua tempat usaha yang terdaftar
TempatUsaha
Setiap tempatusaha dapat memiliki nol atau satu mapusaha
ThreadForum
Mendeskripsikan semua ThreadForum yang dibuat
TopikForum
Setiap ThreadForum memiliki nol atau banyak komentar,dan memiliki nol atau banyak rating
Komentar
Mendeskripsikan semua komentar pada ThreadForum
Pesan
-
Session
Mendeskripsikan semua sesi dari semua pengguna yang login
Session
-
Foto
Mendeskripsikan semua foto dari tempatkost
Photo
-
Map
Mendeskripsikan semua posisi map dari tempatkost
Map
-
67
Rating
Mendeskripsikan semua rating dari thread forum
Rating
-
Forum
Mendeskripsikan semua forum
Forum
Setiap forum dapat memiliki satu atau banyak ThreadForum
MapUsaha
Mendeskripsikan semua map usaha
MapUsaha
-
Fasilitas
Mendeskripsikan semua fasilitas tempat kost
Fasilitas
-
KategoriUsaha
Mendeskripsikan semua kategoriusaha
KategoriUsaha
Setiap kategori usaha dapat memiliki nol atau banyak tempat usaha
4.2.1.2 Identifikasi Tipe Relasi Tabel 4. 2 Kamus Tipe Relasi Entitas Name
Multiplicity
Relationship
Entitas Name
Multiplicity
Pemilik
1..1 1..1 1..1 1..1 1..1
Memiliki Memiliki Memiliki Memiliki Memiliki
TempatKost ThreadForum Komentar Session Rating
1..* 0..* 0..* 0..* 0..*
Member
1..1 1..1 1..1 1..* 1..* 1..1 1..1
Memiliki Memiliki Memiliki Menyewa Memesan Memiliki Memiliki
TempatUsaha ThreadForum Komentar TempatKost TempatKost Rating Session
0..* 0..* 0..* 0..* 0..* 0..* 0..*
TempatKost
1..1 1..1 1..1
Memiliki Memiliki Memiliki
Foto Map Fasilitas
0..* 0..1 1..*
TempatUsaha
1..1
Memiliki
MapUsaha
0..1
Forum
1..1
Memiliki
ThreadForum
1..*
KategoriUsaha
1..1
Memiliki
TempatUsaha
0..*
ThreadForum
1..1 1..1
Memiliki Memiliki
Komentar Rating
0..* 0..*
68 4.2.1.3 Identifikasi Hubungan Atribut Tabel 4. 3 Kamus Hubungan Atribut Entitas Name
Attributes PemilikID Username Password NamaPemilik E-mail
Pemilik
Alamat Pemilik Telepon Handphone StatusPemilik Posisi Transaksi Joindate Gambar MemberID Username Password NamaMember E-mail
Member
JenisMember StatusMember Gambar Posisi Joindate
Description Unik, mengidentifikasi setiap pemilik Mengidentifikasi username login setiap pemilik Mengidentifikasi password login setiap pemilik Mengidentifikasi nama dari setiap pemilik Mengidentifikasi e-mail dari setiap pemilik Mengidentifikasi alamat dari setiap pemilik Mengidentifikasi telepon dari setiap pemilik Mengidentifikasi nomor handphone dari setiap pemilik Mengidentifikasi status dari setiap pemilik Mengidentifikasi posisi dari setiap pemilik Mengidentifikasi status aktif transaksi oleh pemilik Mengidentifikasi waktu gabung pemilik Mengidentifikasi gambar dari pemilik Unik, mengidentifikasi setiap member Mengidentifikasi username login setiap member Mengidentifikasi password login setiap member Mengidentifikasi nama setiap member Mengidentifikasi e-mail setiap member Mengidentifikasi jenis member setiap member Mengidentifikasi status dari setiap member Mengidentifikasi gambar dari setiap member Mengidentifikasi posisi dari setiap member Mengidentifikasi waktu gabung dari setiap member
Data Type & Length
Nulls
MultiValued
10 varchar
No
No
50 varchar
No
No
50 varchar
No
No
100 varchar
No
No
100 varchar
No
No
100 varchar
No
No
30 varchar
No
Yes
30 varchar
No
Yes
10 varchar
No
No
10 varchar
No
No
integer
No
No
datetime
No
No
100 varchar
Yes
No
10 varchar
No
No
50 varchar
No
No
50 varchar
No
No
100 varchar
No
No
100 varchar
No
No
10 varchar
No
No
10 varchar
No
No
100 varchar
No
No
10 varchar
No
No
datetime
No
No
69 KostID NamaKost AlamatKost HargaSewa HargaBooking
JumlahKamar KamarKosong
Tempat Kost
Kamar Booking Deskripsi
InputDate
Rating DurasiSewa
Durasi Booking Muka
UsahaID NamaUsaha Alamat Tempat Usaha
Deskripsi Inputdate Muka Rating
Unik, mengidentifikasi setiap tempat kost Mengidentifikasi nama setiap tempat kost Mengidentifikasi alamat setiap tempat kost Mengidentifikasi harga sewa kamar setiap tempat kost Mengidentifikasi harga booking kamar setiap tempat kost Mengidentifikasi jumlah kamar setiap tempat kost Mengidentifikasi jumlah kamar kosong setiap tempat kost Mengidentifikasi jumlah kamar yang bisa dibooking setiap tempat kost Mengidentifikasi deskripsi informasi dari setiap tempat kost Mengidentifikasi waktu masuk dan update dari setiap tempat kost Mengidentifikasi rating dari setiap tempat kost Mengidentifikasi DurasiSewa dari setiap tempat kost Mengidentifikasi DurasiBooking dari setiap tempat kost Mengidentifikasi gambar dari setiap tempat kost Unik, Mengidentifikasi setiap tempat usaha Mengidentifikasi nama setiap tempat usaha Mengidentifikasi alamat setiap tempat usaha Mengidentifikasi deskripsi informasi setiap tempat usaha Mengidentifikasi waktu masuk dan update dari tempat usaha Mengidentifikasi gambar dari tempat usaha Mengidentifikasi rating dari tempat usaha
10 varchar No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
Yes
No
No
No
No
No
No
No
integer
No
No
100 varchar
No
No
10 varchar
No
No
50 varchar
No
No
100 varchar
No
No
text
No
No
datetime
No
No
100 varchar
No
No
integer
No
No
50 varchar 100 varchar integer integer
integer integer
integer
text
datetime
integer integer
70 ThreadID NamaThread Rating Thread Forum
View Komentar Deskripsi LastUpdate
KomentarID Komentar
Isikomentar KomentarDate
FotoID Foto
FotoName FotoDate MapID
Map
Latitude Longitude RatingID
Rating
RatingDate SessionID Name Position
Session
Session_id User_agent Ip_address Last_activity
Unik, Mengidentifikasi setiap thread forum Mengidentifikasi nama setiap thread forum Mengidentifikasi rating setiap thread forum Mengidentifikasi jumlah view setiap thread forum Mengidentifikasi jumlah komentar setiap thread forum Mengidentifikasi isi dari setiap thread forum Mengidentifikasi waktu update setiap thread forum
10 varchar
No
No
50 varchar
No
No
integer
No
No
integer
No
No
integer
No
No
text
No
No
date
No
No
Unik, mengidentifikasi setiap komentar Mengidentifikasi isi komentar dari setiap komentar Mengidentifikasi tanggal dari setiap komentar
10 varchar
No
No
text
No
No
datetime
No
No
Unik, mengidentifikasi dari setiap foto Mengidentifikasi nama dari setiap foto Mengidentifikasi tanggal foto dari setiap foto
10 varchar
No
No
50 varchar
No
No
date
No
No
Unik, mengidentifikasi dari setiap map Mengidentifikasi posisi latitude dari setiap map Mengidentifikasi posisi longitude dari setiap map
10 varchar
No
No
number
No
No
number
No
No
Unik, mengidentifikasi dari setiap rating Mengidentifikasi tanggal dari setiap rating
10 varchar
No
No
datetime
No
No
Unik, mengidentifikasi dari setiap session Mengidentifikasi username dari setiap session Mengidentifikasi posisi user dari setiap session Mengidentifikasi session_id dari setiap session Mengidentifikasi user_agent dari setiap session Mengidentifikasi ip_address dari setiap session Mengidentifkasi tanggal activity dari setiap session
10 varchar
No
No
50 varchar
No
No
10 varchar
No
No
50 varchar
No
No
100 varchar
No
No
50 varchar
No
No
date
No
No
71 ForumID ForumName Forum Inputdate Deskripsi KategoriID Kategori Usaha
KategoriName KategoriDate MapUsahaID Latitude
MapUsaha Longitude
FasilitasID Fasilitas
Fasilitas
Unik,mengidentifikasi dari setiap forum Mengidentifikasi nama forum dari setiap forum Mengidentifikasi waktu input dari forum Mengidentifikasi deskripsi dari forum Unik,mengidentifikasi dari setiap kategoriusaha Mengidentifikasi nama kategori dari kategoriusaha Mengidentifikasi tanggal masuk kategoriusaha
10 varchar
No
No
20 varchar
No
No
datetime
No
No
text
No
No
10 varchar
No
No
20 varchar
No
No
Date
No
No
Unik, mengidentifikasi dari setiap map usaha Mengidentifikasi posisi latitude dari setiap map usaha Mengidentifikasi posisi longitude dari setiap map usaha
10 varchar
No
No
number
No
No
number
No
No
Unik, mengidentifikasi dari setiap fasilitas Mengidentifikasi nama fasilitas dari setiap fasiltias
10 varchar
No
No
50 varchar
No
No
4.2.1.4 Tetapkan Domain Atribut Tabel 4. 4 Domain Atribut Entitas Name
Pemilik
Member
Attributes
Domain
PemilikID Username Password NamaPemilik E-mail AlamatPemilik Telepon Handphone StatusPemilik Posisi Transaksi Joindate Gambar MemberID Username Password NamaMember E-mail JenisMember StatusMember Gambar
Di awali dengan PE Verifikasi / BelumVerifikasi Pemilik/Admin 0/1 yyyy-mm-dd H:M:S Di awali dengan ME Member/Admin Banned/Unbanned -
72 Posisi Joindate
Admin/Member/Co-Admin yyyy-mm-dd H:M:S
KostID NamaKost Alamat HargaSewa HargaBooking JumlahKamar KamarKosong KamarBooking Deskripsi Rating InputDate DurasiSewa DurasiBooking Muka UsahaID NamaUsaha Alamat Deskripsi Inputdate Muka Rating ThreadID NamaThread Rating View Komentar Deskripsi LastUpdate
Di awali dengan KOS yyyy-mm-dd H:M:S Di awali dengan UH yyyy-mm-dd H:M:S Di awali dengan TH yyyy-mm-dd
Komentar
KomentarID Isikomentar KomentarDate
Di awali dengan KO yyyy-mm-dd H:M:S
Foto
FotoID FotoName FotoDate
Di awali dengan FO yyyy-mm-dd
Session
SessionID Name Position Session_id User_agent Ip_address Last_activity
Di awali dengan SESI Pemilik/Member/Admin yyyy-mm-dd
Map
MapID Latitude Longitude
Di awali dengan MA -
Forum
ForumID ForumName Inpudate Deskripsi
Di awali dengan FR Lounge/Kuliah/Kost/Event/Games yyyy-mm-dd H:M:S -
TempatKost
TempatUsaha
ThreadForum
73
Rating
RatingID RatingDate
Di awali dengan RA yyyy-mm-dd
KategoriUsaha
KategoriID KategoriName KategoriDate
Di awali dengan KT Hiburan/Jasa/Tempat Makan/Toko/Unknown yyyy-mm-dd
Fasilitas
FasilitasID Fasilitas
Di awali dengan FA -
MapUsaha
MapUsahaID Latitude Longitude
Di awali dengan MU -
4.2.1.5 Tetapkan Atribut Primary Key dan Candidate Key Tabel 4. 5 Atribut Primary Key dan Candidate Key Pemilik(PemilikID,Username,Password,NamaPemilik,E-mail, AlamatPemilik,Telepon,Handphone,StatusPemilik,StatusPemilik,Posisi,Transaksi, Joindate,Gambar) Candidate KeyPemilikID,Username,E-mail Primary Key PemilikID Alternate Key Username,E-mail Member(MemberID,Username,Password,NamaMember,E-mail,JenisMember, ,StatusMember,Gambar,Posisi,Joindate) Candidate KeyMemberID,Username,E-mail Primary Key MemberID Alternate Key Username,E-mail TempatKost(KostID,NamaKost,Alamat,HargaSewa,HargaBooking,JumlahKamar ,KamarKosong,KamarBooking,Deskripsi,Rating,InputDate,DurasiBooking,Durasi Sewa,Muka) Candidate KeyKostID, NamaKost Primary Key KostID Alternate Key NamaKost TempatUsaha(UsahaID,NamaUsaha,Alamat,Deskripsi,Inputdate,Muka,Rating) Candidate KeyUsahaID,NamaUsaha Primary Key UsahaID Alternate Key NamaUsaha ThreadForum(ThreadID,NamaThread,Rating,View,Komentar,Deskripsi,LastUpd ate) Candidate KeyThreadID,NamaThread Primary KeyThreadID Alternate Key NamaThread
74 Komentar(KomentarID,Isikomentar,KomentarDate) Candidate KeyKomentarID,Komentar Primary KeyKomentarID Alternate Key Komentar Foto(FotoID,FotoName,FotoDate) Candidate KeyFotoID,FotoName Primary KeyFotoID Alternate Key FotoName Session(SessionID,Name,Position,Session_id,User_agent,Ip_address,Last_activity Candidate KeySessionID,Name,Session_id Primary KeySessionID Alternate Key Name,Session_id Map(MapID,Latitude,Longitude) Candidate KeyMapID Primary KeyMapID Alternate Key Forum(ForumID,ForumName,Inpudate,Deskripsi) Candidate KeyForumID,ForumName Primary KeyForumID Alternate Key ForumName Rating(RatingID,RatingDate) Candidate KeyRatingID Primary KeyRatingID Alternate Key KategoriUsaha(KategoriID,KategoriName,KategoriDate) Candidate KeyKategoriID Primary KeyKategoriID Alternate Key MapUsaha(MapUsahaID,Latitude,Longitude) Candidate KeyMapUsahaID Primary KeyMapUsahaID Alternate Key Fasilitas(FasilitasID,Fasilitas) Candidate KeyFasilitasID Primary KeyFasilitasID Alternate Key -
75
Gambar 4. 1 ERD dengan Primary Key 75
76 4.2.1.6 Periksa Model Untuk Pengulangan Dua aktifitas dalam langkah ini adalah: •
Menguji ulang relationship 1-1 (one-to-one)
Berdasarkan gambar di atas hubungan relationship 1-1 ditemukan pada hubungan tempatkost dengan map digabung ke dalam tempatkost, dan tempatusaha dengan mapusaha digabung ke dalam tempatusaha.
Gambar 4. 2 Relasi 1-1 antara tempat kost dengan Map
Gambar 4. 3 Relasi 1-1 antara tempat usaha denganMap Usaha •
Menghilangkan relationship yang redundan
Berdasarkan gambar di atas tidak ada redundan relationship yang terjadi.
77
Gambar 4. 4 ERD setelah Pengurangan 77
78 4.2.1.7 Validasi Model Konseptual Terhadap Transaksi User Diuji dengan dua pendekatan untuk memastikan model data konseptual lokal mendukung transaksi yang dibutuhkan, dengan cara : 1. Mendeskripsikan transaksi-transaksi 1. Menambah member atau pemilik baru. 2. Menambah, menghapus dan mengubah tempat usaha oleh member. 3. Menambah thread di forum oleh member atau pemilik. 4. Menambah komentar di thread forum oleh member atau pemilik. 5. Menampilkan session dari setiap member dan pemilik. 6. Menampilkan tempat usaha berdasarkan member. 7. Menampilkan thread berdasarkan forum. 8. Menampilkan komentar berdasarkan thread. 9. Menambah, menghapus dan mengubah tempat kost oleh pemilik. 10. Menambah foto tempat kost oleh pemilik. 11. Menambah, mengubah dan menghapus map tempat kost oleh pemilik. 12. Menampilkan tempat kost berdasarkan pemilik. 13. Menampilkan foto berdasarkan tempat kost. 14. Menampilkan map berdasarkan tempat kost. 15. Memberikan rating kepada thread di forum. 16. Menampilkan rating berdasarkan member atau pemilik. 17. Menampilkan rating berdasarkan thread forum. 18. Menampilkan thread berdasarkan setiap member atau pemilik. 19. Menampilkan komentar berdasarkan setiap member atau pemilik. 20. Melakukan transaksi sewa tempat kost oleh setiap member.
79 21. Melakukan transaksi booking tempat kost oleh setiap member. 22. Menampilkan tempat usaha berdasarkan kategori. 23. Menambah, mengubah dan menghapus map tempat usaha oleh member. 24. Menampilkan map berdasarkan tempat usaha. 25. Menambah, mengubah dan menghapus fasilitas tempat kost oleh pemilik. 26. Menampilkan fasilitas tempat kost berdasarkan tempat kost.
80 2. Menggunakan jalur-jalur transaksi
Gambar 4. 5 ERD dengan Jalur Proses Transaksi
81
4.2.2 Perancangan Database Logikal Langkah-langkah pada perancangan database logikal meliputi : 4.2.2.1 Menghilangkan Fitur Yang Tidak Sesuai Dengan Model Relasional 1. Menghilangkan hubungan many to many (*..*) Pada ERD Konseptual terjadi hubungan entitas yang many to many(*..*). Hubungan ini harus dihilangkan dengan menambah entitas baru. Hubungan tersebut terjadi antara Member dengan Tempat Kost, dengan menambah entitas baru yaitu SewaKost dan BookingKost.
Gambar 4. 6 Relasi Many to Many antara Member dengan Tempat Kost
Gambar 4. 7 Relasi Many to Many antara Member dengan Tempat Kost 2. Menghilangkan atribut yang multi-valued Pada bagian identifikasi atribut ada beberapa entitas yang mempunyai atribut yang multi-valued. Pada ERD Konseptual di atas terdapat multi-valued yaitu Telepon dan Handphone.
82
Gambar 4. 8 ERD Logikal 82
83 4.2.2.2 Menurunkan Relationship Untuk Model Data Logikal 1.
Strong Entitas Types;
Pemilik(PemilikID,Username,Password,NamaPemilik,E-mail, AlamatPemilik,StatusPemilik,Posisi,Transaksi,Joindate,Gambar) Primary Key PemilikID Telepon(TeleponID,NomorTelepon) Primary Key TeleponID Handphone(HandphoneID,NomorHandphone) Primary Key HandphoneID Member(MemberID,Username,Password,NamaMember,Email,JenisMember,StatusMember,Gambar,Posisi,Joindate) Primary Key MemberID TempatKost(KostID,NamaKost,Alamat,HargaSewa,HargaBooking,JumlahKam ar,KamarKosong,KamarBooking,Deskripsi,Rating,InputDate,DurasiSewa,Durasi Booking,Muka) Primary Key KostID TempatUsaha(UsahaID,NamaUsaha,Alamat,Deskripsi,Inputdate,Muka, Rating) Primary Key UsahaID ThreadForum(ThreadID,NamaThread,Rating,View,Komentar,Deskripsi, LastUpdate) Primary Key ThreadID Komentar(KomentarID,Komentar,KomentarDate) Primary Key KomentarID Foto(FotoID,FotoName,FotoDate) Primary Key FotoID Session(SessionID,Name,Position,Session_id,User_agent,Ip_address,Last_activit y) Primary Key SessionID Map(MapID,Latitude,Longitude) Primary Key MapID Forum(ForumID,ForumName,Inputdate,Deskripsi) Primary Key ForumID Rating(RatingID,RatingDate)
84 Primary Key RatingID KategoriUsaha(KategoriID,KategoriName,KategoriDate) Primary Key KategoriID MapUsaha(MapUsahaID,Latitude,Longitude) Primary Key MapUsahaID Fasilitas(FasilitasID,Fasilitas) Primary Key FasilitasID 2.
Weak Entitas Types;
SewaKost(MemberID,KostID,Namapenyewa,AlamatPenyewa,Kontak, Rekening,PemilikRekening,Bank,Total,Bukti,Deskripsi,Status,Durasi,Berita,Tan ggalMulai,TanggalAkhir,TanggalBayar,CaraBayar,Lastdate) Primary Key MemberID,KostID BookingKost(MemberID,KostID,Namapenyewa,AlamatPenyewa,Kontak, Rekening,PemilikRekening,Bank,Total,Bukti,Deskripsi,Status,Durasi,Berita,Tan ggalMulai,TanggalAkhir,TanggalBayar,CaraBayar,Lastdate) Primary Key MemberID,KostID
3.
One to Many Relationship (1:*)
Masukkan PemilikID dalam TempatKost untuk model 1:* relasi memiliki Pemilik(PemilikID,Username,Password ,NamaPemilik,E-mail, AlamatPemilik,StatusPemilik,Posisi,Tra nsaksi,Joindate,Gambar) Primary Key PemilikID
TempatKost(KostID,PemilikID,Nama Kost,Alamat,HargaSewa,HargaBooking, JumlahKamar,KamarKosong,KamarBoo king,Deskripsi,Rating,InputDate,Durasi Sewa,DurasiBooking,Muka) Primary Key KostID
Masukkan PemilikID dalam Telepon untuk model 1:* relasi memiliki Pemilik(PemilikID,Username,Password ,NamaPemilik,E-mail, AlamatPemilik,StatusPemilik,Posisi,Tra nsaksi,Joindate,Gambar) Primary Key PemilikID
Telepon(TeleponID,PemilikID,NomorT elepon) Primary Key TeleponID
85
Masukkan PemilikID dalam Handphone untuk model 1:* relasi memiliki Pemilik(PemilikID,Username,Password ,NamaPemilik,E-mail, AlamatPemilik,StatusPemilik,Posisi,Tra nsaksi,Joindate,Gambar) Primary Key PemilikID
Handphone(HanphoneID,PemilikID,N omorHandphone) Primary Key HandphoneID
Masukkan KostID dalam Foto untuk model 1:* relasi memiliki TempatKost(KostID,PemilikID,Nama Kost,Alamat,HargaSewa,HargaBooking, JumlahKamar,KamarKosong,KamarBoo ked,Deskripsi,Rating,InputDate,DurasiS ewa,DurasiBooking,Muka) Primary Key KostID
Foto(FotoID,KostID,FotoName,FotoDa te) Primary Key FotoID
Masukkan KostID dalam Fasilitas untuk model 1:* relasi memiliki TempatKost(KostID,PemilikID,Nama Kost,Alamat,HargaSewa,HargaBooking, JumlahKamar,KamarKosong,KamarBoo ked,Deskripsi,Rating,InputDate,DurasiS ewa,DurasiBooking,Muka) Primary Key KostID
Fasilitas(FasilitasID,KostID,Fasilitas) Primary Key FasilitasID
Masukkan MemberID dalam TempatUsaha untuk model 1:* relasi memiliki
Member(MemberID,Username,Passwor d,NamaMember,Email,JenisMember,StatusMember,Gamb ar,Posisi,Joindate) Primary Key MemberID
TempatUsaha(UsahaID,MemberID,Na maUsaha,Alamat,Deskripsi,Inputdate,M uka,Rating) Primary Key UsahaID
86
Masukkan KategoriID dalam TempatUsaha untuk model 1:* relasi memiliki KategoriUsaha(KategoriID,KategoriNa me,KategoriDate) Primary Key KategoriID
TempatUsaha(UsahaID,KategoriID,Me mberID,NamaUsaha,Alamat,Deskripsi,I nputdate,Muka,Rating) Primary Key UsahaID
Masukkan ForumID dalam ThreadForum untuk model 1:* relasi memiliki Forum(ForumID,ForumName, Inputdate,Deskripsi) Primary Key ForumID
ThreadForum(ThreadID,ForumID, NamaThread,Rating,View,Komentar,De skripsi,LastUpdate) Primary Key ThreadID
Masukkan MemberID dalam ThreadForum untuk model 1:* relasi memiliki Member(MemberID,Username,Passwor d,NamaMember,Email,JenisMember,StatusMember,Gamb ar,Posisi,Joindate) Primary Key MemberID
ThreadForum(ThreadID,MemberID,F orumID,NamaThread,Rating,View,Kom entar,Deskripsi,LastUpdate) Primary Key ThreadID
Masukkan PemilikID dalam ThreadForum untuk model 1:* relasi memiliki
Pemilik(PemilikID,Username,Password ,NamaPemilik,E-mail, AlamatPemilik,StatusPemilik,Posisi,Tra nsaksi,Joindate,Gambar) Primary Key PemilikID
ThreadForum(ThreadID,PemilikID,M emberID,ForumID,NamaThread,Rating, View,Komentar,Deskripsi,LastUpdate) Primary Key ThreadID
Masukkan ThreadID dalam Komentar untuk model 1:* relasi memiliki ThreadForum(ThreadID,PemilikID,M emberID,ForumID,NamaThread,Rating, View,Komentar,Deskripsi,LastUpdate) Primary Key ThreadID
Komentar(KomentarID,ThreadID,Isiko mentar,KomentarDate) Primary Key KomentarID
87
Masukkan ThreadID dalam Rating untuk model 1:* relasi memiliki ThreadForum(ThreadID,PemilikID,M emberID,ForumID,NamaThread,Rating, View,Komentar,Deskripsi,LastUpdate) Primary Key ThreadID
Rating(RatingID,ThreadID,RatingDate) Primary Key RatingID
Masukkan PemilikID dalam Komentar untuk model 1:* relasi memiliki Pemilik(PemilikID,Username,Password ,NamaPemilik,E-mail, AlamatPemilik,StatusPemilik,Posisi,Tra nsaksi,Joindate,Gambar) Primary Key PemilikID
Komentar(KomentarID,PemilikID,Thre adID,Isikomentar,KomentarDate) Primary Key KomentarID
Masukkan MemberID dalam Komentar untuk model 1:* relasi memiliki Member(MemberID,Username,Passwor d,NamaMember,Email,JenisMember,StatusMember,Gamb ar,Posisi,Joindate)
Primary Key MemberID Komentar(KomentarID,MemberID,Pe milikID,ThreadID,Komentar,Tanggal) Primary Key KomentarID
Masukkan PemilikID dalam Rating untuk model 1:* relasi memiliki Pemilik(PemilikID,Username,Password ,NamaPemilik,E-mail, AlamatPemilik,StatusPemilik,Posisi,Tra nsaksi,Joindate,Gambar) Primary Key PemilikID
Rating(RatingID,PemilikID,ThreadID, RatingDate) Primary Key RatingID
Masukkan MemberID dalam Rating untuk model 1:* relasi memiliki Member(MemberID,Username,Passwor d,NamaMember,Email,JenisMember,StatusMember,Gamb ar,Posisi,Joindate) Primary Key MemberID
Rating(RatingID,MemberID,PemilikID, ThreadID,RatingDate) Primary Key RatingID
88
Masukkan PemilikID dalam Session untuk model 1:* relasi memiliki
Pemilik(PemilikID,Username,Password ,NamaPemilik,E-mail, AlamatPemilik,StatusPemilik,Posisi,Tra nsaksi,Joindate,Gambar) Primary Key PemilikID
Session(SessionID,PemilikID,Name, Position,Session_id,User_agent,Ip_addr ess,Last_activity) Primary Key SessionID
Masukkan MemberID dalam Session untuk model 1:* relasi memiliki Member(MemberID,Username,Passwor d,NamaMember,Email,JenisMember,StatusMember,Gamb ar,Posisi,Joindate) Primary Key MemberID
4.
Session(SessionID,MemberID, PemilikID,Name, Position,Session_id,User_agent,Ip_addr ess,Last_activity) Primary Key SessionID
Many to Many Relationship (*:*)
Member(MemberID,Username,Passwor d,NamaMember,Email,JenisMember,StatusMember,Gamb ar,Posisi,Joindate) Primary Key MemberID
TempatKost(KostID,PemilikID,Nama Kost,Alamat,HargaSewa,HargaBooking, JumlahKamar,KamarKosong,KamarBoo king,Deskripsi,Rating,InputDate,Durasi Sewa,DurasiBooking,Muka) Primary Key KostID
SewaKost(MemberID,KostID,Namapenyewa,AlamatPenyewa,Kontak, Rekening,PemilikRekening,Bank,Total,Bukti,Deskripsi,Status,Durasi,Berita,Tan ggalMulai,TanggalAkhir,TanggalBayar,CaraBayar,Lastdate) Primary Key MemberID,KostID
89 Member(MemberID,Username,Passwor d,NamaMember,Email,JenisMember,StatusMember,Gamb ar,Posisi,Joindate) Primary Key MemberID
TempatKost(KostID,PemilikID,Nama Kost,Alamat,HargaSewa,HargaBooking, JumlahKamar,KamarKosong,KamarBoo king,Deskripsi,Rating,InputDate,Durasi Sewa,DurasiBooking,Muka) Primary Key KostID
BookingKost(MemberID,KostID,Namapenyewa,AlamatPenyewa,Kontak, Rekening,PemilikRekening,Bank,Total,Bukti,Deskripsi,Status,Durasi,Berita,Tan ggalMulai,TanggalAkhir,TanggalBayar,CaraBayar,Lastdate) Primary Key MemberID,KostID
5.
One-to-one (1:1) binary relationship types; Mandatory participation on one side of a 1:1 relationship
Masukkan KostID dalam Mapuntuk model 1:1 relasimandatory participation memiliki TempatKost(KostID,PemilikID,Nama Kost,Alamat,HargaSewa,HargaBooking, JumlahKamar,KamarKosong,KamarBoo ked,Deskripsi,Rating,InputDate,DurasiS ewa,DurasiBooking,Muka)Primary Key KostID
Map(MapID,KostID,Latitude,Longitud e) Primary Key MapID
Masukkan UsahaID dalam MapUsahauntuk model 1:1 relasimandatory participation memiliki TempatUsaha(UsahaID,KategoriID,Me mberID,NamaUsaha,Alamat,Deskripsi,I nputdate,Muka,Rating) Primary Key UsahaID
MapUsaha(MapUsahaID,UsahaID,Latit ude,Longitude) Primary Key MapUsahaID
Gambar 4. 9 ERD Logikal Dengan Atribut dan Primary Key 90
Tabel 4. 6 Tabel Contoh Data Untuk ThreadForum PemilikID PE001
MemberID -
Nama Paijo
-
ME004
Riki
ThreadID TH001 TH012 TH004
NamaThread ABCD KLJM LLKM
ForumID FR001 FR004 FR002
ForumName KKKK LLLL BBBB
ThreadForum (PemilikID, Username, Password, NamaPemilik, E-mail, AlamatPemilik, Telepon, Handphone, StatusPemilik, Posisi, Transaksi, Joindate, Gambar, MemberID, NamaMember, Username, Password, E-mail, StatusMember, JenisMember, Gambar, Posisi, Joindate, {ThreadID, NamaThread, Rating, View, Komentar, Deskripsi, LastUpdate, ForumID, ForumName, Inputdate, Deskripsi}) Tabel 4. 7 Tabel Contoh Data Untuk Komentar ThreadForum PemilikID PE001
MemberID -
Nama Paijo
-
ME004
Riki
KomentarID KO001 KO004 KO011
Komentar Wkwkw Lucu Up
Tanggal 2012-02-03 2012-02-03 2012-04-03
ThreadID TH001 TH004 TH001
NamaThread ABCD LLKM ABCD
Komentar 189 123 190
Komentar (PemilikID, Username, Password, NamaPemilik, E-mail, AlamatPemilik, Telepon, Handphone, StatusPemilik, Posisi, Transaksi, Joindate, Gambar, MemberID, NamaMember, Username, Password, E-mail, StatusMember, JenisMember, Gambar, Posisi, Joindate, {KomentarID, Isikomentar, KomentarDate, ThreadID, NamaThread, Rating, View, Komentar, Deskripsi, LastUpdate })
91
Tabel 4. 8 Tabel Contoh Data Untuk TempatUsaha MemberID ME004
Nama Riki
Username Riki12
Password Riki12
ME001
David
David22
David22
UsahaID UH001 UH010 UH004 UH003
NamaUsaha Salon Warnet Warteg Warnet
MapUsahaID MU001 MU010 -
Latitude 7890 29292 -
Longitude 22323 29291 -
KategoriID KT002 KT001 KT004 KT001
KategoriName Jasa Hiburan Rumah Makan Hiburan
TempatUsaha (MemberID, NamaMember, Username, Password, E-mail, StatusMember, JenisMember, Gambar, Posisi, Joindate, {UsahaID, NamaUsaha, Alamat, Deskripsi, Inputdate, Muka, Rating, MapUsahaID, Latitude, Longitude, KategoriID, KategoriName, KategoriDate })
Tabel 4. 9 Tabel Contoh Data Untuk TempatUsaha MemberID ME004
PemilikID Riki
Username Riki12
ME001
David
David22
RatingID RA001 RA004 RA012 RA11
RatingDate 2012-02-03 2012-04-01 2012-04-01 2012-04-01
ThreadID TH001 TH004 TH002 TH007
ThreadName ABCD JKLM KKLM BCVD
Rating 254 124 45 112
Rating (PemilikID, Username, Password, NamaPemilik, E-mail, AlamatPemilik, Telepon, Handphone, StatusPemilik, Posisi, Transaksi, Joindate, Gambar, MemberID, NamaMember, Username, Password, E-mail, StatusMember, JenisMember, Gambar, Posisi, Joindate, {RatingID, RatingDate, ThreadID, NamaThread, Rating, View, Komentar, Deskripsi, LastUpdate })
92
Tabel 4. 10 Tabel Contoh Data Pemilik TempatKost dan Map TempatKost PemilikID PE001
Nama Andri
PE004
Reza
KostID KOS001 KOS012 KOS004 KOS005
NamaKost Pasarrabu Demak Palem Citra
MapID MA001 MA002 MA004 MA011
Latitude 2323 2341 221 1123
Longitude 2323 1111 213 2314
TempatKost (PemilikID, Username, Password, NamaPemilik, E-mail, AlamatPemilik, Telepon, Handphone, StatusPemilik, Posisi, Transaksi, Joindate, Gambar, {KostID, NamaKost, Alamat, HargaSewa, HargaBooking, JumlahKamar, KamarKosong, KamarBooking, Deskripsi, Rating, InputDate, DurasiSewa, DurasiBooking, Muka, MapID, Latitude, Longitude }) Tabel 4. 11 Tabel Contoh Data TempatKost dan Fasilitasnya KostID KOS001
NamaKost Pasarrabu
Alamat Jl.Pagi
HargaSewa 1000000
HargaBooking 110000
JumlahKamar 100
KOS0012
Demak
Jl.Sore
2000000
220000
60
FasilitasID FA001 FA002 FA001 FA003
Fasilitas Parkir CCTV Parkir Dekat Kampus
Fasilitas (KostID, NamaKost, Alamat, HargaSewa, HargaBooking, JumlahKamar, KamarKosong, KamarBooking, Deskripsi, Rating, InputDate, DurasiSewa, DurasiBooking, Muka, {FasiltiasID, Fasilitas})
93
Tabel 4. 12 Tabel Contoh Data Session Login MemberID ME012
PemilikID -
Alamat -
JenisMember User
Latitude 1111
Longitude 2222
Telepon -
Handphone -
-
PE007
Jl.Sore
-
-
-
12323
081931111
SessionID SESI001 SESI003 SESI004 SESI002
Name Lukas Lukas Piner Piner
Session (PemilikID, Username, Password, NamaPemilik, E-mail, AlamatPemilik, Telepon, Handphone, StatusPemilik, Posisi, Transaksi, Joindate, Gambar, MemberID, NamaMember, Username, Password, E-mail, StatusMember, JenisMember, Gambar, Posisi, Joindate, {SessionID, Name, Position, Session_id, User_agent, Ip_address, Last_activity }) Tabel 4. 13 Tabel Contoh Data SewaKost MemberID
Nama
KostID
NamaKost
Alamat
TanggalMulai
TanggalAkhir
ME004
Sukijo
KOS001
Pasarrabu
Jl.Pagi
2012-04-12
2012-05-12
KOS003
Palem
Jl.Kebun
2011-04-12
2011-05-11
KOS001
Pasarrabu
Jl.Pagi
2012-01-04
2012-02-04
KOS004
Jeruk
Jl.Sawah
2011-01-04
2011-04-04
ME011
Sidola
Berita MBanking ATM MBanking EBanking
PemilikID
Nama
PE001
David
PE004
Lia
PE001
David
PE002
Lukman
SewaKost (MemberID, NamaMember, Username, Password, E-mail, StatusMember, JenisMember, Gambar, Posisi, Joindate, {KostID, NamaKost, Alamat, HargaSewa, HargaBooking, JumlahKamar, KamarKosong, KamarBooking, Deskripsi, Rating, InputDate, DurasiSewa, DurasiBooking, Muka, NamaPenyewa, Tanggal Mulai, TanggalAkhir, TanggalBayar, Berita, AlamatPenyewa, Kontak, Rekening, PemilikRekening, Bank, Total, Bukti, CaraBayar, Deskripsi, Status, Durasi, LastDate, PemilikID, Username, Password, NamaPemilik, E-mail, AlamatPemilik, Telepon, Handphone, StatusPemilik, Posisi, Transaksi, Joindate, Gambar })
94
Tabel 4. 14 Tabel Contoh Data BookingKost MemberID
Nama
KostID
NamaKost
Alamat
TanggalMulai
TanggalAkhir
ME004
Sukijo
KOS001
Pasarrabu
Jl.Pagi
2012-04-12
2012-04-20
KOS003
Palem
Jl.Kebun
2011-04-12
2011-04-15
KOS001
Pasarrabu
Jl.Pagi
2012-01-04
2012-01-10
KOS004
Jeruk
Jl.Sawah
2011-01-04
2011-01-12
ME011
Sidola
Berita MBanking ATM MBanking EBanking
PemilikID
Nama
PE001
David
PE004
Lia
PE001
David
PE002
Lukman
BookingKost (MemberID, NamaMember, Username, Password, E-mail, StatusMember, JenisMember, Gambar, Posisi, Joindate, {KostID, NamaKost, Alamat, HargaSewa, HargaBooking, JumlahKamar, KamarKosong, KamarBooking, Deskripsi, Rating, InputDate, DurasiSewa, DurasiBooking, Muka, NamaPenyewa, Tanggal Mulai, TanggalAkhir, TanggalBayar, Berita, AlamatPenyewa, Kontak, Rekening, PemilikRekening, Bank, Total, Bukti, CaraBayar, Deskripsi, Status, Durasi, LastDate, PemilikID, Username, Password, NamaPemilik, E-mail, AlamatPemilik, Telepon, Handphone, StatusPemilik, Posisi, Transaksi, Joindate, Gambar}) Tabel 4. 15 Tabel Contoh Data Foto TempatKost KostID KOS001
NamaKost Pasarrabu
Alamat Jl.Pagi
KOS003
Palem
Jl.Kebun
FotoID FO001 FO002 FO003 FO003
FotoName Depan Belakang Kiri Kanan
FotoTanggal 2011-05-19 2011-05-19 2011-05-19 2011-05-19
Foto (KostID, NamaKost, Alamat, HargaSewa, HargaBooking, JumlahKamar, KamarKosong, KamarBooking, Deskripsi, Rating, InputDate, DurasiSewa, DurasiBooking, Muka, {FotoID, FotoName, FotoDate})
95
96 4.2.2.3 Memvalidasi Relasi Dengan Normalisasi 1. ThreadForum UNF ThreadForum (PemilikID, Username, Password, NamaPemilik, E-mail, AlamatPemilik, Telepon, Handphone, StatusPemilik, Posisi, Transaksi, Joindate, Gambar,
MemberID,
StatusMember,
NamaMember,
JenisMember,
Gambar,
Username, Posisi,
Password, Joindate,
E-mail,
{ThreadID,
NamaThread, Rating, View, Komentar, Deskripsi, LastUpdate, ForumID, ForumName, Inputdate, Deskripsi}) 1NF ThreadForum (ThreadID, PemilikID, Username, Password, NamaPemilik, Email, AlamatPemilik, Telepon, Handphone, StatusPemilik, Posisi, Transaksi, Joindate, Gambar, MemberID, NamaMember, Username, Password, E-mail, StatusMember, JenisMember, Gambar, Posisi, Joindate, NamaThread, Rating, View, Komentar, Deskripsi, LastUpdate, ForumID, ForumName, Inputdate, Deskripsi) 2NF ThreadForum (ThreadID, PemilikID, Username, Password, NamaPemilik, Email, AlamatPemilik, Telepon, Handphone, StatusPemilik, Posisi, Transaksi, Joindate, Gambar, MemberID, NamaMember, Username, Password, E-mail, StatusMember, JenisMember, Gambar, Posisi, Joindate, NamaThread, Rating, View, Komentar, Deskripsi, LastUpdate, ForumID, ForumName, Inputdate, Deskripsi
97 3NF ThreadForum(ThreadID,PemilikID,
MemberID,
ForumID,
NamaThread,
Rating, View, Komentar, Deskripsi, LastUpdate) Pemilik
(PemilikID,
Username,
Password,
NamaPemilik,
E-mail,
AlamatPemilik, StatusPemilik, Posisi, Transaksi, Joindate, Gambar) Telepon(TeleponID, PemilikID, NomorTelepon) Handphone(HandphoneID, PemilikID, NomorHandphone) Member
(MemberID,
NamaMember,
Username,
Password,
E-mail,
NamaPemilik,
E-mail,
StatusMember, JenisMember, Gambar, Posisi, Joindate) Forum(ForumID, ForumName, Inputdate, Deskripsi)
2. Komentar ThreadForum UNF Komentar(PemilikID,
Username,
Password,
AlamatPemilik, Telepon, Handphone, StatusPemilik, Posisi, Transaksi, Joindate, Gambar,
MemberID,
StatusMember,
NamaMember,
JenisMember,
Gambar,
Username, Posisi,
Password,
Joindate,
E-mail,
{KomentarID,
Isikomentar, KomentarDate, ThreadID, NamaThread, Rating, View, Komentar, Deskripsi, LastUpdate}) 1NF Komentar (KomentarID, PemilikID, Username, Password, NamaPemilik, Email, AlamatPemilik, Telepon, Handphone, StatusPemilik, Posisi, Transaksi, Joindate, Gambar, MemberID, NamaMember, Username, Password, E-mail, StatusMember,
JenisMember,
Gambar,
Posisi,
Joindate,Isikomentar,
98 KomentarDate, ThreadID, NamaThread, Rating, View, Komentar, Deskripsi, LastUpdate) 2NF Komentar(KomentarID, PemilikID, Username, Password, NamaPemilik, Email, AlamatPemilik, Telepon, Handphone, StatusPemilik, Posisi, Transaksi, Joindate, Gambar, MemberID, NamaMember, Username, Password, E-mail, StatusMember,
JenisMember,
Gambar,
Posisi,
Joindate,Isikomentar,
KomentarDate, ThreadID, NamaThread, Rating, View, Komentar, Deskripsi, LastUpdate) 3NF Komentar(KomentarID,
PemilikID,
MemberID,
ThreadID,
Isikomentar,
KomentarDate) ThreadForum(ThreadID, NamaThread, Rating, View, Komentar, Deskripsi, LastUpdate) Pemilik
(PemilikID,
Username,
Password,
NamaPemilik,
E-mail,
AlamatPemilik, StatusPemilik, Posisi, Transaksi, Joindate, Gambar) Telepon(TeleponID, PemilikID, NomorTelepon) Handphone(HandphoneID, PemilikID, NomorHandphone) Member
(MemberID,
NamaMember,
Username,
StatusMember, JenisMember, Gambar, Posisi, Joindate)
Password,
E-mail,
99 3. TempatUsaha UNF TempatUsaha (MemberID, NamaMember, Username, Password, E-mail, StatusMember, JenisMember, Gambar, Posisi, Joindate, {UsahaID, NamaUsaha, Alamat, Deskripsi, Inputdate, Muka, Rating, MapUsahaID, Latitude, Longitude, KategoriID, KategoriName, KategoriDate }) 1NF TempatUsaha (UsahaID, MemberID, NamaMember, Username, Password, Email, StatusMember, JenisMember, Gambar, Posisi, Joindate,NamaUsaha, Alamat, Deskripsi, Inputdate, Muka, Rating, MapUsahaID, Latitude, Longitude, KategoriID, KategoriName, KategoriDate) 2NF TempatUsaha (UsahaID, MemberID, NamaMember, Username, Password, Email, StatusMember, JenisMember, Gambar, Posisi, Joindate, NamaUsaha, Alamat, Deskripsi, Inputdate, Muka, Rating, MapUsahaID, Latitude, Longitude, KategoriID, KategoriName, KategoriDate) 3NF TempatUsaha (UsahaID, MemberID, MapUsahaID, KategoriID, NamaUsaha, Alamat, Deskripsi, Inputdate, Muka, Rating) Member
(MemberID,
NamaMember,
Username,
StatusMember, JenisMember, Gambar, Posisi, Joindate) MapUsaha (MapUsahaID, Latitude, Longitude) KategoriUsaha (KategoriID, KategoriName, KategoriDate)
Password,
E-mail,
100 4. Rating ThreadForum UNF Rating (PemilikID, Username, Password, NamaPemilik, E-mail, AlamatPemilik, Telepon, Handphone, StatusPemilik, Posisi, Transaksi, Joindate, Gambar, MemberID, NamaMember, Username, Password, E-mail, StatusMember, JenisMember, Gambar, Posisi, Joindate, {RatingID, RatingDate, NamaThread, Rating, View, Komentar, Deskripsi, LastUpdate}) 1NF Rating (RatingID, PemilikID, Username, Password, NamaPemilik, E-mail, AlamatPemilik, Telepon, Handphone, StatusPemilik, Posisi, Transaksi, Joindate, Gambar,
MemberID,
NamaMember,
Username,
Password,
E-mail,
StatusMember, JenisMember, Gambar, Posisi, Joindate, RatingDate, ThreadID, NamaThread, Rating, View, Komentar, Deskripsi, LastUpdate) 2NF Rating (RatingID, PemilikID, Username, Password, NamaPemilik, E-mail, AlamatPemilik, Telepon, Handphone, StatusPemilik, Posisi, Transaksi, Joindate, Gambar,
MemberID,
NamaMember,
Username,
Password,
E-mail,
StatusMember, JenisMember, Gambar, Posisi, Joindate, RatingDate, ThreadID, NamaThread, Rating, View, Komentar, Deskripsi, LastUpdate) 3NF Rating (RatingID, MemberID, PemilikID, ThreadID, RatingDate) Member
(MemberID,
NamaMember,
Username,
StatusMember, JenisMember, Gambar, Posisi, Joindate)
Password,
E-mail,
101 Pemilik
(PemilikID,
Username,
Password,
NamaPemilik,
E-mail,
AlamatPemilik, StatusPemilik, Posisi, Transaksi, Joindate, Gambar) Telepon(TeleponID, PemilikID, NomorTelepon) Handphone(HandphoneID, PemilikID, NomorHandphone) ThreadForum (ThreadID, NamaThread, Rating, View, Komentar, LastUpdate)
5. TempatKost UNF TempatKost
(PemilikID,
Username,
Password,
NamaPemilik,
E-mail,
AlamatPemilik, Telepon, Handphone, StatusPemilik, Posisi, Transaksi, Joindate, Gambar,
{KostID,
NamaKost,
Alamat,
HargaSewa,
HargaBooking,
JumlahKamar, KamarKosong, KamarBooking, Deskripsi, Rating, InputDate, DurasiSewa, DurasiBooking, Muka, MapID, Latitude, Longitude }) 1NF TempatKost (KostID, PemilikID, Username, Password, NamaPemilik, E-mail, AlamatPemilik, Telepon, Handphone, StatusPemilik, Posisi, Transaksi, Joindate, Gambar, NamaKost, Alamat, HargaSewa, HargaBooking, JumlahKamar, KamarKosong, KamarBooking, Deskripsi, Rating, InputDate, DurasiSewa, DurasiBooking, Muka, MapID, Latitude, Longitude) 2NF TempatKost (KostID, PemilikID, Username, Password, NamaPemilik, E-mail, AlamatPemilik, Telepon, Handphone, StatusPemilik, Posisi, Transaksi, Joindate, Gambar,
NamaKost, Alamat, HargaSewa, HargaBooking, JumlahKamar,
102 KamarKosong, KamarBooking, Deskripsi, Rating, InputDate, DurasiSewa, DurasiBooking, Muka, MapID, Latitude, Longitude) 3NF TempatKost(KostID, PemilikID, MapID, HargaBooking,
JumlahKamar,
NamaKost, Alamat, HargaSewa,
KamarKosong,
KamarBooking,
Deskripsi,
Rating, InputDate, DurasiSewa, DurasiBooking, Muka) Pemilik(PemilikID, Username, Password, NamaPemilik, E-mail, AlamatPemilik, Telepon, Handphone, StatusPemilik, Posisi, Transaksi, Joindate, Gambar) Telepon(TeleponID, PemilikID, NomorTelepon) Handphone(HandphoneID, PemilikID, NomorHandphone) Map (MapID, Latitude, Longitude)
6. Fasilitas TempatKost UNF Fasilitas
(KostID,
NamaKost,
Alamat,
HargaSewa,
HargaBooking,
JumlahKamar, KamarKosong, KamarBooking, Deskripsi, Rating, InputDate, DurasiSewa, DurasiBooking, Muka, {FasiltiasID, Fasilitas}) 1NF Fasilitas (FasiltiasID, KostID, NamaKost, Alamat, HargaSewa, HargaBooking, JumlahKamar, KamarKosong, KamarBooking, Deskripsi, Rating, InputDate, DurasiSewa, DurasiBooking, Muka, Fasilitas)
103 2NF Fasilitas (FasiltiasID, KostID, NamaKost, Alamat, HargaSewa, HargaBooking, JumlahKamar, KamarKosong, KamarBooking, Deskripsi, Rating, InputDate, DurasiSewa, DurasiBooking, Muka, Fasilitas) 3NF Fasilitas (FasiltasID, KostID, Fasilitas) TempatKost
(KostID,
NamaKost,
Alamat,
HargaSewa,
HargaBooking,
JumlahKamar, KamarKosong, KamarBooking, Deskripsi, Rating, InputDate, DurasiSewa, DurasiBooking, Muka)
7. Session Login UNF Session
(PemilikID,
Username,
Password,
NamaPemilik,
E-mail,
AlamatPemilik, Telepon, Handphone, StatusPemilik, Posisi, Transaksi, Joindate, Gambar,
MemberID,
NamaMember,
Username,
Password,
E-mail,
StatusMember, JenisMember, Gambar, Posisi, Joindate, {SessionID, Name, Position, Session_id, User_agent, Ip_address, Last_activity }) 1NF Session (SessionID,PemilikID, Username, Password, NamaPemilik, E-mail, AlamatPemilik, Telepon, Handphone, StatusPemilik, Posisi, Transaksi, Joindate, Gambar,
MemberID,
StatusMember,
NamaMember,
JenisMember,
Gambar,
Username, Posisi,
Session_id, User_agent, Ip_address, Last_activity)
Password,
E-mail,
Joindate,Name,
Position,
104
2NF Session (SessionID,PemilikID, Username, Password, NamaPemilik, E-mail, AlamatPemilik, Telepon, Handphone, StatusPemilik, Posisi, Transaksi, Joindate, Gambar,
MemberID,
StatusMember,
NamaMember,
JenisMember,
Gambar,
Username, Posisi,
Password,
E-mail,
Joindate,Name,
Position,
Session_id, User_agent, Ip_address, Last_activity 3NF Session (SessionID, MemberID, PemilikID, Name, Position, Session_id, User_agent, Ip_address, Last_activity) Pemilik
(PemilikID,
Username,
Password,
NamaPemilik,
E-mail,
AlamatPemilik, Telepon, Handphone, StatusPemilik, Posisi, Transaksi, Joindate, Gambar) Telepon(TeleponID, PemilikID, NomorTelepon) Handphone(HandphoneID, PemilikID, NomorHandphone) Member
(MemberID,
NamaMember,
Username,
Password,
E-mail,
Password,
E-mail,
StatusMember, JenisMember, Gambar, Posisi, Joindate)
8. SewaKost UNF SewaKost
(MemberID,
NamaMember,
Username,
StatusMember, JenisMember, Gambar, Posisi, Joindate, {KostID, NamaKost, Alamat,
HargaSewa,
HargaBooking,
JumlahKamar,
KamarKosong,
KamarBooking, Deskripsi, Rating, InputDate, DurasiSewa, DurasiBooking,
105 Muka, NamaPenyewa, Tanggal Mulai, TanggalAkhir, TanggalBayar, Berita, AlamatPenyewa, Kontak, Rekening, PemilikRekening, Bank, Total, Bukti, CaraBayar, Deskripsi, Status, Durasi, LastDate, PemilikID, Username, Password, NamaPemilik, E-mail, AlamatPemilik, Telepon, Handphone, StatusPemilik, Posisi, Transaksi, Joindate, Gambar}) 1NF SewaKost (MemberID,KostID, NamaPenyewa, Tanggal Mulai, TanggalAkhir, TanggalBayar, Berita, AlamatPenyewa, Kontak, Rekening, PemilikRekening, Bank,
Total,
Bukti,
CaraBayar,
Deskripsi,
Status,
Durasi,
LastDate,
NamaMember, Username, Password, E-mail, StatusMember, JenisMember, Gambar, Posisi, Joindate, NamaKost, Alamat, HargaSewa, HargaBooking, JumlahKamar, KamarKosong, KamarBooking, Deskripsi, Rating, InputDate, DurasiSewa,
DurasiBooking,
Muka,
PemilikID,
Username,
Password,
NamaPemilik, E-mail, AlamatPemilik, Telepon, Handphone, StatusPemilik, Posisi, Transaksi, Joindate, Gambar) 2NF SewaKost (MemberID, KostID, NamaPenyewa, Tanggal Mulai, TanggalAkhir, TanggalBayar, Berita, AlamatPenyewa, Kontak, Rekening, PemilikRekening, Bank, Total, Bukti, CaraBayar, Deskripsi, Status, Durasi, LastDate) TempatKost
(KostID,
NamaKost,
Alamat,
HargaSewa,
HargaBooking,
JumlahKamar, KamarKosong, KamarBooking, Deskripsi, Rating, InputDate, DurasiSewa,
DurasiBooking,
Muka,
PemilikID,
Username,
Password,
NamaPemilik, E-mail, AlamatPemilik, Telepon, Handphone, StatusPemilik, Posisi, Transaksi, Joindate, Gambar)
106 Member
(MemberID,
NamaMember,
Username,
Password,
E-mail,
StatusMember, JenisMember, Gambar, Posisi, Joindate) 3NF SewaKost (MemberID, KostID, NamaPenyewa, Tanggal Mulai, TanggalAkhir, TanggalBayar, Berita, AlamatPenyewa, Kontak, Rekening, PemilikRekening, Bank, Total, Bukti, CaraBayar, Deskripsi, Status, Durasi, LastDate) TempatKost HargaBooking,
(KostID,
PemilikID,
JumlahKamar,
NamaKost,
KamarKosong,
Alamat,
HargaSewa,
KamarBooking,
Deskripsi,
Rating, InputDate, DurasiSewa, DurasiBooking, Muka) Member
(MemberID,
NamaMember,
Username,
Password,
E-mail,
StatusMember, JenisMember, Gambar, Posisi, Joindate) Pemilik
(PemilikID,
NamaPemilik,
E-mail,
AlamatPemilik,
Telepon,
Handphone, StatusPemilik, Posisi, Transaksi, Joindate, Gambar) Telepon(TeleponID, PemilikID, NomorTelepon) Handphone (HandphoneID, PemilikID, NomorHandphone)
9. BookingKost UNF BookingKost (MemberID, NamaMember, Username, Password, E-mail, StatusMember, JenisMember, Gambar, Posisi, Joindate, {KostID, NamaKost, Alamat,
HargaSewa,
HargaBooking,
JumlahKamar,
KamarKosong,
KamarBooking, Deskripsi, Rating, InputDate, DurasiSewa, DurasiBooking, Muka, NamaPenyewa, Tanggal Mulai, TanggalAkhir, TanggalBayar, Berita, AlamatPenyewa, Kontak, Rekening, PemilikRekening, Bank, Total, Bukti,
107 CaraBayar, Deskripsi, Status, Durasi, LastDate, PemilikID, Username, Password, NamaPemilik, E-mail, AlamatPemilik, Telepon, Handphone, StatusPemilik, Posisi, Transaksi, Joindate, Gambar }) 1NF BookingKost
KostID,
(MemberID,
NamaPenyewa,
Tanggal
Mulai,
TanggalAkhir, TanggalBayar, Berita, AlamatPenyewa, Kontak, Rekening, PemilikRekening, Bank, Total, Bukti, CaraBayar, Deskripsi, Status, Durasi, LastDate,
NamaMember,
Username,
Password,
E-mail,
StatusMember,
JenisMember, Gambar, Posisi, Joindate, NamaKost, Alamat, HargaSewa, HargaBooking,
JumlahKamar,
KamarKosong,
KamarBooking,
Deskripsi,
Rating, InputDate, DurasiSewa, DurasiBooking, Muka, PemilikID, Username, Password,
NamaPemilik,
E-mail,
AlamatPemilik,
Telepon,
Handphone,
StatusPemilik, Posisi, Transaksi, Joindate, Gambar) 2NF BookingKost
(MemberID,
KostID,
NamaPenyewa,
Tanggal
Mulai,
TanggalAkhir, TanggalBayar, Berita, AlamatPenyewa, Kontak, Rekening, PemilikRekening, Bank, Total, Bukti, CaraBayar, Deskripsi, Status, Durasi, LastDate) TempatKost
(KostID,
NamaKost,
Alamat,
HargaSewa,
HargaBooking,
JumlahKamar, KamarKosong, KamarBooking, Deskripsi, Rating, InputDate, DurasiSewa, DurasiBooking, Muka,
PemilikID, Username, Password,
NamaPemilik, E-mail, AlamatPemilik, Telepon, Handphone, StatusPemilik, Posisi, Transaksi, Joindate, Gambar)
108 Member
(MemberID,
NamaMember,
Username,
Password,
E-mail,
Tanggal
Mulai,
StatusMember, JenisMember, Gambar, Posisi, Joindate) 3NF BookingKost
(MemberID,
KostID,
NamaPenyewa,
TanggalAkhir, TanggalBayar, Berita, AlamatPenyewa, Kontak, Rekening, PemilikRekening, Bank, Total, Bukti, CaraBayar, Deskripsi, Status, Durasi, LastDate) TempatKost HargaBooking,
(KostID,
PemilikID,
JumlahKamar,
NamaKost,
KamarKosong,
Alamat,
HargaSewa,
KamarBooking,
Deskripsi,
Rating, InputDate, DurasiSewa, DurasiBooking, Muka) Member
(MemberID,
NamaMember,
Username,
Password,
E-mail,
StatusMember, JenisMember, Gambar, Posisi, Joindate) Pemilik(PemilikID, NamaPemilik, E-mail, AlamatPemilik, Telepon, Handphone, StatusPemilik, Posisi, Transaksi, Joindate, Gambar) Telepon (TeleponID, PemilikID, NomorTelepon) Handphone(HandphoneID, PemilikID, NomorHandphone)
10. Foto TempatKost UNF Foto (KostID, NamaKost, Alamat, HargaSewa, HargaBooking, JumlahKamar, KamarKosong, KamarBooking, Deskripsi, Rating, InputDate, DurasiSewa, DurasiBooking, Muka, {FotoID, FotoName, FotoDate})
109 1NF Foto (FotoID, KostID, NamaKost, Alamat, HargaSewa, HargaBooking, JumlahKamar, KamarKosong, KamarBooking, Deskripsi, Rating, InputDate, DurasiSewa, DurasiBooking, Muka, FotoName, FotoDate) 2NF Foto (FotoID, KostID, NamaKost, Alamat, HargaSewa, HargaBooking, JumlahKamar, KamarKosong, KamarBooking, Deskripsi, Rating, InputDate, DurasiSewa, DurasiBooking, Muka, FotoName, FotoDate) 3NF Foto(FotoID, KostID, FotoName, FotoDate) TempatKost = (KostID, NamaKost, Alamat, HargaSewa, HargaBooking, JumlahKamar, KamarKosong, KamarBooking, Deskripsi, Rating, InputDate, DurasiSewa, DurasiBooking, Muka)
11. Gabungan Dari Semua Normalisasi Member
(MemberID,
NamaMember,
Username,
Password,
E-mail,
NamaPemilik,
E-mail,
StatusMember, JenisMember, Gambar, Posisi, Joindate) Pemilik
(PemilikID,
Username,
Password,
AlamatPemilik, StatusPemilik, Posisi, Transaksi, Joindate, Gambar) Telepon(TeleponID, PemilikID, NomorTelepon) Handphone(HandphoneID, PemilikID, NomorHandphone) ThreadForum (ThreadID, PemilikID, MemberID, ForumID, NamaThread, Rating, View, Komentar, Deskripsi, LastUpdate)
110 Komentar (KomentarID, PemilikID, MemberID, ThreadID, Isikomentar, KomentarDate) Rating(RatingID, MemberID, PemilikID, ThreadID, RatingDate) TempatUsaha(UsahaID, MemberID, MapUsahaID, KategoriID, NamaUsaha, Alamat, Deskripsi, Inputdate, Muka, Rating) TempatKost(KostID, PemilikID, MapID, HargaBooking,
JumlahKamar,
NamaKost, Alamat, HargaSewa,
KamarKosong,
KamarBooking,
Deskripsi,
Rating, InputDate, DurasiSewa, DurasiBooking, Muka) Fasilitas (FasiltasID, KostID, Fasilitas) Forum(ForumID, ForumName, Inputdate, Deskripsi) MapUsaha (MapUsahaID, Latitude, Longitude) KategoriUsaha (KategoriID, KategoriName, KategoriDate) Map (MapID, Latitude, Longitude) Foto(FotoID, KostID, FotoName, FotoDate) Session (SessionID, MemberID, PemilikID, Name, Position, Session_id, User_agent, Ip_address, Last_activity) SewaKost (MemberID, KostID, NamaPenyewa, Tanggal Mulai, TanggalAkhir, TanggalBayar, Berita, AlamatPenyewa, Kontak, Rekening, PemilikRekening, Bank, Total, Bukti, CaraBayar, Deskripsi, Status, Durasi, LastDate BookingKost
(MemberID,
KostID,
NamaPenyewa,
Tanggal
Mulai,
TanggalAkhir, TanggalBayar, Berita, AlamatPenyewa, Kontak, Rekening, PemilikRekening, Bank, Total, Bukti, CaraBayar, Deskripsi, Status, Durasi, LastDate)
111
4.2.2.4 Memeriksa Integrity Constraint Tabel 4. 16 Tabel Integrity Constraints Pemilik(PemilikID,Username,Password,NamaPemilik,E-mail, AlamatPemilik,Telepon,Handphone,StatusPemilik,StatusPemilik,Posisi,Transaksi, Joindate,Gambar) Primary Key PemilikID Member(MemberID,Username,Password,NamaMember,E-mail,JenisMember, ,StatusMember,Gambar,Posisi,Joindate) Primary Key MemberID KategoriUsaha(KategoriID,KategoriName,KategoriDate) Primary Key KategoriID MapUsaha(MapUsahaID,Latitude,Longitude) Primary Key MapUsahaID Map(MapID,Latitude,Longitude) Primary Key MapID Forum(ForumID,ForumName,Inputdate,Deskripsi) Primary Key ForumID ThreadForum(ThreadID,PemilikID,MemberID,ForumID, NamaThread,Rating,View,Komentar,Deskripsi,LastUpdate) Primary Key ThreadID Foreign Key PemilikID references Pemilik(PemilikID) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key MemberID references Member(MemberID) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key ForumID references Forum(ForumID) ON UPDATE CASCADE ON DELETE NO ACTION Komentar(KomentarID,PemilikID,MemberID,ThreadID,Isikomentar, KomentarDate) Primary Key KomentarID Foreign Key PemilikID references Pemilik(PemilikID) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key MemberID references Member(MemberID) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key ThreadID references ThreadForum(ThreadID) ON UPDATE CASCADE ON DELETE NO ACTION Rating(RatingID,MemberID,PemilikID,ThreadID,RatingDate) Primary Key RatingID Foreign Key PemilikID references Pemilik(PemilikID) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key MemberID references Member(MemberID) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key ThreadID references ThreadForum(ThreadID) ON UPDATE CASCADE ON DELETE NO ACTION
112 TempatUsaha(UsahaID,MemberID,MapUsahaID,KategoriID, NamaUsaha,Alamat,Deskripsi,Inputdate,Muka,Rating) Primary Key UsahaID Foreign Key MemberID references Member(MemberID) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key MapUsahaID references MapUsaha(MapUsahaID) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key KategoriID references KategoriUsaha(KategoriID) ON UPDATE CASCADE ON DELETE NO ACTION TempatKost(KostID,PemilikID,MapID,NamaKost,Alamat,HargaSewa,HargaBooking, JumlahKamar,KamarKosong,KamarBooking,Deskripsi,Rating,InputDate,DurasiBooki ng,DurasiSewa,Muka) Primary Key KostID Foreign Key PemilikID references Pemilik(PemilikID) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key MapID references Map(MapID) ON UPDATE CASCADE ON DELETE NO ACTION Fasilitas(FasilitasID,KostID,Fasilitas) Primary Key FasilitasID Foreign Key KostID references TempatKost(KostID) ON UPDATE CASCADE ON DELETE NO ACTION Telepon(TeleponID,NomorTelepon,PemilikID) Primary Key TeleponID Foreign Key PemilikID references Pemilik(PemilikID) ON UPDATE CASCADE ON DELETE NO ACTION Handphone(HandphoneID,NomorHandphone,PemilikID) Primary Key HandphoneID Foreign Key PemilikID references Pemilik(PemilikID) ON UPDATE CASCADE ON DELETE NO ACTION Foto(FotoID,KostID,FotoName,FotoDate) Primary Key FotoID Foreign Key KostID references TempatKost(KostID) ON UPDATE CASCADE ON DELETE NO ACTION Session(SessionID,MemberID,PemilikID,Name,Position,Session_id,User_agent, Ip_address,Last_activity) Primary Key SessionID Foreign Key PemilikID references Pemilik(PemilikID) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key MemberID references Member(MemberID) ON UPDATE CASCADE ON DELETE NO ACTION SewaKost(MemberID,KostID,NamaPenyewa,AlamatPenyewa,Kontak,Total,Berita,Ta nggalMulai,TanggalAkhir,TanggalBayar,Bank,Rekening,PemilikRekening, CaraBayar,Status,Durasi,Bukti) Primary Key MemberID,KostID Foreign Key MemberID references Member(MemberID) ON UPDATE CASCADE ON DELETE NO ACTION
113 Foreign Key KostID references TempatKost(KostID) ON UPDATE CASCADE ON DELETE NO ACTION BookingKost(MemberID,KostID,NamaPenyewa,AlamatPenyewa,Kontak,Total,Berita, TanggalMulai,TanggalAkhir,TanggalBayar,Bank,Rekening,PemilikRekening, CaraBayar,Status,Durasi,Bukti) Primary Key MemberID,KostID Foreign Key MemberID references Member(MemberID) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key KostID references TempatKost(KostID) ON UPDATE CASCADE ON DELETE NO ACTION
Gambar 4. 10 Model Data Relasional 114
115 5. Review Model Data Logikal Dengan User Dari hasil review dengan data dari hasil pengumpulan data dari pengguna, model data logikal yang dihasilkan sudah sesuai dengan kebutuhan yang ada. Sehingga, sudah dapat dilanjutkan ke tahap selanjutnya. 6. Memeriksa Untuk Pertumbuhan di Masa Depan Model data logikal yang dirancang sudah disesuaikan dengan kemungkinan yang mungkin terjadi di masa depan, kecuali jika terjadi perubahan pada kebutuhan pengguna pada sewaktu-waktu.
116
4.2.3 Perancangan Database Fisikal 4.2.3.1 Merancang Relasi Dasar Pemilik Domain PemilikNumber Domain Username Domain Password Domain Nama Domain E-mail Domain AlamatPemilik Domain StatusPemilik Domain Posisi DomainTransaksi Domain Joindate Domain Gambar
varchar, length 10, diawali dengan ‘PE’ varchar, length 50 varchar, length 50 varchar, length 100 varchar, length 100 varchar, length 100 varchar, length 50, ‘Verifikasi’ atau ‘Belum Verifikasi’ varchar, length 10, ‘Pemilik’ atau ‘Admin’ integer, 0 atau 1 datetime ,yyyy-mm-dd H:M:S varchar, length 100
Pemilik( PemilikID PemilikNumber Username Username Password Password NamaPemilik NamaPemilik E-mail E-mail AlamatPemilik AlamatPemilik StatusPemilik StatusPemilik Posisi Posisi Transaksi Transaksi Joindate Joindate Gambar Gambar Primary Key(PemilikID));
NOT NULL, NOT NULL, NOT NULL, NOT NULL, NOT NULL, NOT NULL, NOT NULL DEFAULT ‘Belum Verifikasi’, NOT NULL DEFAULT ‘Pemilik’, NOT NULL DEFAULT 0, NOT NULL, NOT NULL,
Handphone Domain HandphoneNumber varchar, length 10, diawali dengan ‘HP’ Domain NomorHandphone varchar, length 20, Domain PemilikNumbervarchar, length 10, diawali dengan ‘PE’ Handphone( HandphoneID HandphoneNumber PemilikID PemilikNumber NomorHandphone NomorHandphone Primary Key (HandphoneID),
NOT NULL, NOT NULL, NOT NULL
117 Foreign Key (PemilikID)references CASCADE ON DELETE CASCADE);
Pemilik(PemilikID) ON UPDATE
Telepon Domain TeleponNumber varchar, length 10, diawali dengan ‘TEL’ Domain NomorTelepon varchar, length 20, Domain PemilikNumbervarchar, length 10, diawali dengan ‘PE’
Telepon( TeleponID HandphoneNumber NOT NULL, PemilikID PemilikNumber NOT NULL, NomorTelepon NomorTelepon NOT NULL Primary Key (TeleponID), Foreign Key (PemilikID)references Pemilik(PemilikID) ON UPDATE CASCADE ON DELETE CASCADE));
Member Domain MemberNumber Domain Username Domain Password Domain NamaMember Domain E-mail Domain JenisMember Domain StatusMember Domain Gambar Domain Posisi Domain Joindate
varchar, length 10, diawali dengan ‘ME’ varchar, length 50 varchar, length 50 varchar, length 100 varchar, length 100 varchar, length 10, ‘User’ atau ‘Admin’ varchar, length 10, ‘Banned’ atau ‘Unbanned’ varchar, length 100 varchar, length 10, ‘Member’,’Admin’,’CoAdmin’ datetime, yyyy-mm-dd H:M:S
Member( MemberID MemberNumber Username Username Password Password NamaMember NamaMember E-mail E-mail JenisMember JenisMember StatusMember StatusMember Gambar Gambar Posisi Posisi Joindate Joindate Primary Key(MemberID));
NOT NULL, NOT NULL, NOT NULL, NOT NULL, NOT NULL, NOT NULL, NOT NULL DEFAULT ‘Unbanned’, NOT NULL, NOT NULL DEFAULT ‘Member’, NOT NULL,
118 KategoriUsaha Domain KategoriNumber Domain KategoriName Domain KategoriDate KategoriUsaha( KategoriID KategoriName
varchar, length 10, diawali dengan ‘KT’ varchar, length 20, ‘Hiburan’ atau ’Jasa’ atau ’Tempat Makan’atau’Toko’atau’Unknown’ date, yyyy-mm-dd
KategoriNumber KategoriName
KategoriDate KategoriDate Primary Key (KategoriID));
NOT NULL, NOT NULL DEFAULT ‘Unknown’, NOT NULL,
MapUsaha Domain MapUsahaNumber varchar, length 10, diawali dengan ‘MU’ Domain MapUsahaLatitude number Domain MapUsahaLongitude number MapUsaha( MapUsahaID MapUsahaNumber NOT NULL, Latitude MapUsahaLatitude NOT NULL, Longitude MapUsahaLongitude NOT NULL, Primary Key (MapUsahaID));
Map Domain MapNumber Domain MapLatitude Domain MapLongitude
varchar, length 10, diawali dengan ‘MA’ number number
Map( MapID MapNumber NOT NULL, Latitude MapLatitude NOT NULL, Longitude MapLongitude NOT NULL, Primary Key (MapID));
Forum Domain ForumNumber Domain ForumName Domain ForumInputDate Domain ForumDeskripsi
varchar, length 10, diawali dengan ‘FR’ varchar, length 20, datetime, yyyy-mm-dd H:M:S text
Forum( ForumID ForumNumber ForumName ForumName Inputdate ForumInputDate
NOT NULL, NOT NULL, NOT NULL,
119 Deksripsi ForumDeskripsi Primary Key (ForumID));
ThreadForum Domain ThreadNumber Domain PemilikNumber Domain MemberNumber Domain ForumNumber Domain NamaThread Domain TotalRating Domain TotalView Domain TotalKomentar Domain Deskripsi Domain LastUpdate
NOT NULL,
varchar, length 10, diawali dengan ‘TH’ varchar, length 10, diawali dengan ‘PE’ varchar, length 10, diawali dengan ‘ME’ varchar, length 10, diawali dengan ‘FO’ varchar, length 50 integer integer integer text date, ‘yyyy-mm-dd’
ThreadForum( ThreadID ThreadNumber NOT NULL, PemilikID PemilikNumber NOT NULL, MemberID MemberNumber NOT NULL, ForumID ForumMember NOT NULL, NamaThread NamaThread NOT NULL, Rating TotalRating NOT NULL DEFAULT 0, View TotalView NOT NULL DEFAULT 0, Komentar TotalKomentar NOT NULL DEFAULT 0, Deskripsi Deskripsi NOT NULL, LastUpdate LastUpdate NOT NULL, Primary Key (ThreadID), Foreign Key (PemilikID) references Pemilik(PemilikID) ON UPDATE CASCADE ON DELETE NO ACTION, Foreign Key (MemberID) references Member(MemberID) ON UPDATE CASCADE ON DELETE NO ACTION, Foreign Key (ForumID) references Forum(ForumID) ON UPDATE CASCADE ON DELETE NO ACTION);
Komentar Domain KomentarNumber Domain PemilikNumber Domain MemberNumber Domain ThreadNumber Domain Komentar Domain KomentarDate Komentar( KomentarID PemilikID
varchar, length 10, diawali dengan ‘KO’ varchar, length 10, diawali dengan ‘PE’ varchar, length 10, diawali dengan ‘ME’ varchar, length 10, diawali dengan ‘TH’ text datetime, yyyy-mm-dd H:M:S
KomentarNumber PemilikNumber
NOT NULL, NOT NULL,
120 MemberID MemberNumber NOT NULL, ThreadID ThreadNumber NOT NULL, Komentar Komentar NOT NULL, KomentarDate KomentarDate NOT NULL, Primary Key (KomentarID), Foreign Key (PemilikID)references Pemilik(PemilikID) ON UPDATE CASCADE ON DELETE NO ACTION, Foreign Key (MemberID)references Member(MemberID) ON UPDATE CASCADE ON DELETE NO ACTION, Foreign Key (ThreadID)references ThreadForum(ThreadID) ON UPDATE CASCADE ON DELETE NO ACTION);
Rating Domain RatingNumber Domain PemilikNumber Domain MemberNumber Domain ThreadNumber Domain RatingDate
varchar, length 10, diawali dengan ‘RA’ varchar, length 10, diawali dengan ‘PE’ varchar, length 10, diawali dengan ‘ME’ varchar, length 10, diawali dengan ‘TH’ datetime, yyyy-mm-dd H:M:S
Rating( RatingID RatingNumber NOT NULL, MemberID MemberNumber NOT NULL, PemilikID PemilikNumber NOT NULL, ThreadID ThreadNumber NOT NULL, RatingDate RatingDate NOT NULL, Primary Key (RatingID), Foreign Key (PemilikID)references Pemilik(PemilikID) ON UPDATE CASCADE ON DELETE NO ACTION, Foreign Key (MemberID)references Member(MemberID) ON UPDATE CASCADE ON DELETE NO ACTION, Foreign Key (ThreadID)references ThreadForum(ThreadID) ON UPDATE CASCADE ON DELETE NO ACTION);
TempatUsaha Domain UsahaNumber Domain MemberNumber Domain MapUsahaNumber Domain KategoriNumber Domain NamaUsaha Domain AlamatUsaha Domain Deskripsi Domain Inputdate Domain Muka Domain Rating
varchar, length 10, diawali dengan ‘UH’ varchar, length 10, diawali dengan ‘ME’ varchar, length 10, diawali dengan ‘MU’ varchar, length 10, diawali dengan ‘KT’ varchar, length 50 varchar, length 100 text datetime, yyyy-mm-dd H:M:S varchar, length 100 integer
121 TempatUsaha( UsahaID UsahaNumber NOT NULL, MemberID MemberNumber NOT NULL, MapUsahaID MapUsahaNumber NOT NULL, KategoriID KategoriNumber NOT NULL, NamaUsaha NamaUsaha NOT NULL, Alamat AlamatUsaha NOT NULL, Deskripsi Deskripsi NOT NULL, Inputdate UsahaInputDate NOT NULL, Muka MukaUsaha NOT NULL, Rating RatingUsaha NOT NULL DEFAULT 0 Primary Key (UsahaID), Foreign Key (MemberID)references Member(MemberID) ON UPDATE CASCADE ON DELETE NO ACTION, Foreign Key (MapUsahaID)references MapUsaha(MapUsahaID) ON UPDATE CASCADE ON DELETE NO ACTION, Foreign Key (KategoriID)references KategoriUsaha(KategoriID) ON UPDATE CASCADE ON DELETE NO ACTION);
TempatKost Domain KostNumber Domain PemilikNumber Domain MapNumber Domain NamaKost Domain AlamatKost Domain HargaSewa Domain HargaBooking Domain JumlahKamar Domain KamarKosong Domain KamarBooked Domain Deskripsi Domain JumlahRating Domain InputDate Domain DurasiSewa Domain DurasiBooking Domain MukaKost TempatKost( KostID PemilikID MapID NamaKost AlamatKost HargaSewa HargaBooking JumlahKamar
varchar, length 10, diawali dengan ‘KOS’ varchar, length 10, diawali dengan ‘PE’ varchar, length 10, diawali dengan ‘MA’ varchar, length 50 varchar, length 100 integer integer integer integer integer text integer datetime, yyyy-mm-dd H:M:S integer integer varchar, length 100
KostNumber PemilikNumber MapNumber NamaKost AlamatKost HargaSewa HargaBooking JumlahKamar
NOT NULL, NOT NULL, NOT NULL, NOT NULL, NOT NULL, NOT NULL, NOT NULL, NOT NULL,
122 KamarKosong KamarKosong NOT NULL, KamarBooking KamarBooked NOT NULL, Deskripsi Deskripsi NOT NULL, Rating JumlahRating NOT NULL DEFAULT 0, InputDate InputDate NOT NULL, DurasiSewa DurasiSewa NOT NULL, DurasiBooking DurasiBooking NOT NULL, Muka MukaKost NOT NULL, Primary Key (KostID), Foreign Key (PemilikID)references Pemilik(PemilikID) ON UPDATE CASCADE ON DELETE NO ACTION, Foreign Key (MapID)references Map(MapID) ON UPDATE CASCADE ON DELETE NO ACTION);
Fasilitas Domain FasilitasNumber Domain KostNumber Domain FasilitasName
varchar, length 10, diawali dengan ‘FA’ varchar, length 10, diawali dengan ‘KOS’ varchar, length 50
Fasilitas( FasilitasID FasilitasNumber NOT NULL, KostID KostNumber NOT NULL, Fasilitas FasilitasName NOT NULL, Primary Key (FasilitasID), Foreign Key (KostID)references TempatKost(KostID) CASCADE ON DELETE NO ACTION);
Foto Domain FotoNumber Domain KostNumber Domain FotoName Domain FotoDate
ON
UPDATE
ON
UPDATE
varchar, length 10, diawali dengan ‘KOS’ varchar, length 10, diawali dengan ‘FO’ varchar, length 50 date, ‘yyyy-mm-dd’
Foto( FotoID FotoNumber NOT NULL, KostID KostNumber NOT NULL, FotoName FotoName NOT NULL, FotoDate FotoDate NOT NULL, Primary Key (FotoID), Foreign Key (KostID)references TempatKost(KostID) CASCADE ON DELETE NO ACTION);
Session Domain SessionNumber
varchar, length 10, diawali dengan ‘SESI’
123 Domain MemberNumber Domain PemilikNumber Domain Name Domain Position Domain Session_id Domain User_agent Domain Ip_address Domain Last_activity
varchar, length 10, diawali dengan ‘ME’ varchar, length 10, diawali dengan ‘PE’ varchar, length 50 varchar, length 10, ‘Pemilik’ atau ’Member’ atau ’Admin’ varchar, length 50 varchar, length 100 varchar, length 50 date, ‘yyyy-mm-dd’
Session( SessionID SessionNumber NOT NULL, MemberID MemberNumber NOT NULL, PemilikID PemilikNumber NOT NULL, Name Name NOT NULL, Position Position NOT NULL, Session_id Session_id NOT NULL, User_agent User_agent NOT NULL, Ip_address Ip_address NOT NULL, Last_activity Last_activity NOT NULL, Primary Key (SessionID), Foreign Key (PemilikID)references Pemilik(PemilikID) ON UPDATE CASCADE ON DELETE NO ACTION, Foreign Key (MemberID)references Member(MemberID) ON UPDATE CASCADE ON DELETE NO ACTION);
SewaKost Domain MemberNumber Domain KostNumber Domain NamaPenyewa Domain AlamatPenyewa Domain KontakPenyewa Domain JumlahUang Domain BeritaSewa Domain TanggalMulai Domain TanggalAkhir Domain TanggalBayar Domain NomorRekening Domain PemilikRekening Domain BuktiBayar Domain Bank Domain CaraBayar Domain StatusBayar Domain DurasiSewa
varchar, length 10, diawali dengan ‘ME’ varchar, length 10, diawali dengan ‘KOS’ varchar, length 100 varchar, length 100 varchar, length 20 integer text datetime, yyyy-mm-dd H:M:S datetime, yyyy-mm-dd H:M:S datetime, yyyy-mm-dd H:M:S varchar, length 100 varchar, length 100 varchar, length 100 varchar, length 20 varchar, length 20 varchar, length 20, ‘Pending’ atau ‘Selesai’ atau ‘Cancel’ integer
124 SewaKost( MemberID MemberNumber NOT NULL, KostID KostNumber NOT NULL, NamaPenyewa NamaPenyewa NOT NULL, AlamatPenyewa AlamatPenyewa NOT NULL, Kontak KontakPenyewa NOT NULL, Total JumlahUang NOT NULL, Berita BeritaSewa NOT NULL, TanggalMulai TanggalMulai NOT NULL, TanggalAkhir TanggalAkhir NOT NULL, TanggalBayar TanggalBayar NOT NULL, Bank Bank NOT NULL, Rekening NomorRekening NOT NULL, PemilikRekeningPemilikRekening NOT NULL, Bukti BuktiBayar DEFAULT NULL, CaraBayar CaraBayar NOT NULL, Status StatusBayar NOT NULL DEFAULT ‘Pending’, Durasi DurasiSewa NOT NULL, Primary Key (MemberID,KostID), Foreign Key (MemberID)references Member(MemberID) ON UPDATE CASCADE ON DELETE NO ACTION, Foreign Key (KostID)references TempatKost(KostID) ON UPDATE CASCADE ON DELETE NO ACTION);
BookingKost Domain MemberNumber Domain KostNumber Domain NamaPenyewa Domain AlamatPenyewa Domain KontakPenyewa Domain JumlahUang Domain BeritaSewa Domain TanggalMulai Domain TanggalAkhir Domain TanggalBayar Domain NomorRekening Domain PemilikRekening Domain BuktiBayar Domain Bank Domain CaraBayar Domain StatusBayar Domain DurasiSewa
varchar, length 10, diawali dengan ‘ME’ varchar, length 10, diawali dengan ‘KOS’ varchar, length 100 varchar, length 100 varchar, length 20 integer text datetime, yyyy-mm-dd H:M:S datetime, yyyy-mm-dd H:M:S datetime, yyyy-mm-dd H:M:S varchar, length 100 varchar, length 100 varchar, length 100 varchar, length 20 varchar, length 20 varchar, length 20, ‘Pending’ atau ‘Selesai’ atau ‘Cancel’ integer
BookingKost( MemberID MemberNumber
NOT NULL,
125 KostID KostNumber NOT NULL, NamaPenyewa NamaPenyewa NOT NULL, AlamatPenyewa AlamatPenyewa NOT NULL, Kontak KontakPenyewa NOT NULL, Total JumlahUang NOT NULL, Berita BeritaSewa NOT NULL, TanggalMulai TanggalMulai NOT NULL, TanggalAkhir TanggalAkhir NOT NULL, TanggalBayar TanggalBayar NOT NULL, Bank Bank NOT NULL, Rekening NomorRekening NOT NULL, PemilikRekeningPemilikRekening NOT NULL, Bukti BuktiBayar DEFAULT NULL, CaraBayar CaraBayar NOT NULL, Status StatusBayar NOT NULL DEFAULT ‘Pending’, Durasi DurasiSewa NOT NULL, Primary Key (MemberID,KostID), Foreign Key (MemberID)references Member(MemberID) ON UPDATE CASCADE ON DELETE NO ACTION, Foreign Key (KostID)references TempatKost(KostID) ON UPDATE CASCADE ON DELETE NO ACTION);
4.2.3.2 Membuat Index untuk Setiap Tabel Tabel 4. 17 Index setiap Tabel Tabel Member Pemilik Telepon Handphone Forum ThreadForum TempatUsaha MapUsaha KategoriUsaha Rating Komentar TempatKost Map Fasilitas Foto Session SewaKost BookingKost
Index MemberInd PemilikInd TeleponInd HandphoneInd ForumInd ThreadInd UsahaInd MapUsahaInd KategoriInd RatingInd KomentarInd KostInd MapInd FasilitasInd FotoInd SessionInd SewaKostInd BookingKostInd
Clustered V V V V V V V V V V V V V V V V V V
Non-Clustered
126 4.2.3.3 Validasi Model RelasionalTerhadap Transaksi User Diuji dengan dua pendekatan untuk memastikan model data konseptual lokal mendukung transaksi yang dibutuhkan, dengan cara : 1. Mendeskripsikan transaksi-transaksi 1. Menambah member atau pemilik baru. 2. Menambah, menghapus dan mengubah tempat usaha oleh member. 3. Menambah thread di forum oleh member atau pemilik. 4. Menambah komentar di thread forum oleh member atau pemilik. 5. Menampilkan session dari setiap member dan pemilik. 6. Menampilkan tempat usaha berdasarkan member. 7. Menampilkan thread berdasarkan forum. 8. Menampilkan komentar berdasarkan thread. 9. Menambah, menghapus dan mengubah tempat kost oleh pemilik. 10. Menambah foto tempat kost oleh pemilik. 11. Menambah, mengubah dan menghapus map tempat kost oleh pemilik. 12. Menampilkan tempat kost berdasarkan pemilik. 13. Menampilkan foto berdasarkan tempat kost. 14. Menampilkan map berdasarkan tempat kost. 15. Memberikan rating kepada thread di forum. 16. Menampilkan rating berdasarkan member atau pemilik. 17. Menampilkan rating berdasarkan thread forum. 18. Menampilkan thread berdasarkan setiap member atau pemilik. 19. Menampilkan komentar berdasarkan setiap member atau pemilik. 20. Menampilkan tempat usaha berdasarkan kategori.
127 21. Menambah, mengubah dan menghapus map tempat usaha oleh member. 22. Menampilkan map berdasarkan tempat usaha. 23. Menambah, mengubah dan menghapus fasilitas tempat kost oleh pemilik. 24. Menampilkan fasilitas tempat kost berdasarkan tempat kost. 25. Menambah, mengubah dan menghapus sewa tempat kost oleh member dan pemilik. 26. Menambah, mengubah dan menghapus booking tempat kost oleh member dan pemilik. 27. Menampilkan sewa tempat kost berdasarkan member dan tempat kost 28. Menampilkan booking tempat kost berdasarkan member dan tempat kost 29. Menampilkan nomor telepon berdasarkan pemilik. 30. Menampilkan nomor handphone berdasarkan pemilik.
128 2. Menggunakan jalur-jalur transaksi
Gambar 4. 11 Model Relasional dengan Jalur Transaksi
129 4.2.3.4 Design User-View Tabel 4. 18 User-View Terhadap Database User
View
Tabel
Field
Tempat Kost Fasilitas Kost
Tempatkost Fasilitas
Foto Kost
Foto
Map Kost
Map
Transaksi Sewa Transaksi Booking Tempat Usaha
Sewakost Bookingkost Tempatusaha
Map Usaha
Mapusaha
Kategori Usaha
Forum
Kategoriusaha Pemilik ThreadForum Komentar Rating Telepon Handphone Forum
Thread Forum
ThreadForum
Komentar
Komentar
Rating Tempat Kost Fasilitas Kost
Rating Tempatkost Fasilitas
Foto Kost
Foto
Map Kost
Map
Transaksi Sewa Transaksi Booking Tempat Usaha
Sewakost Bookingkost Tempatusaha
Map Usaha
Mapusaha
Kategori Usaha
Forum
Kategoriusaha Member ThreadForum Komentar Rating Forum
Thread Forum
ThreadForum
Semua Fasilitas Fotoname Fototanggal Latitude Longitude Semua Semua Semua Latitude Longitude Kategoriname Semua Semua Semua Semua Semua Semua Semua Namathread Rating View Komentar Lastupdate Komentar Tanggal Ratingdate Semua Fasilitas Fotoname Fototanggal Latitude Longitude Semua Semua Semua Latitude Longitude Kategoriname Semua Semua Semua Semua Semua Namathread Rating View Komentar Lastupdate
Pemilik Profile
Member
Profile
130
Visitor
Komentar
Komentar
Rating Tempat Usaha
Rating Tempatusaha
Map Usaha
Mapusaha
Kategori Usaha Tempat Kost Fasilitas Kost
Kategoriusaha Tempatkost Fasilitas
Foto Kost
Foto
Map Kost
Map
Tempat Kost Fasilitas Kost Foto Kost Map Kost Transaksi Sewa Transaksi Booking Tempat Usaha Map Usaha Kategori Usaha
Tempatkost Fasilitas Foto Map Sewakost Bookingkost Tempatusaha Mapusaha Kategoriusaha Pemilik Member ThreadForum Komentar Rating Telepon Handphone Forum ThreadForum Komentar Rating
Admin Profile
Forum Thread Forum Komentar Rating
Komentar Tanggal Ratingdate Semua Latitude Longitude Kategoriname Semua Fasilitas Fotoname Fototanggal Latitude Longitude Semua Semua Semua Semua Semua Semua Semua Semua Semua Semua Semua Semua Semua Semua Semua Semua Semua Semua Semua Semua
4.2.3.5 Keamanan Authorisasi Tabel 4. 19 Tabel Keamanan Authorisasi (I=Insert,R=Read,U=Update,D=Delete) User Tabel Forum ThreadForum Komentar Rating Member Pemilik TempatUsaha MapUsaha KategoriUsaha TempatKost Fasilitas
Pemilik
Member
Admin
Visitor
R IR IRU IRU I IRU R R R IRU IRUD
R IR IRU IRU IRU I IRUD IRU R R R
IRU IRUD IRUD IRUD IRU IRU IRUD IRU IRU IRU IRUD
I I R R R R R
131 Map Foto Session SewaKost BookingKost Telepon Handphone
IRU IRUD RU RU IRU IRU
R R IRUD IRUD -
IRU IRUD R IRUD IRUD IRU IRU
R R -
4.2.3.6Estimasi Kapasitas Penyimpanan Tabel 4. 20 Tabel Perkiraan Kapasitas Member Entitas Member
Field MemberID Username Password NamaMember Email JenisMember StatusMember Gambar Posisi Joindate
Tipe data Varchar(10) Varchar(50) Varchar(50) Varchar(100) Varchar(100) Varchar(10) Varchar(10) Varchar(100) Varchar(10) Datetime
Ukuran(bytes) 11 51 51 101 101 11 11 101 11 8
Total 457 Kapasitas tabel Member457bytes. Perkiraan peningkatan record pertahun 10% Kapasitas saat ini 20 * 457 = 9140bytes Tabel 4. 21 Tabel Perkiraan Kapasitas ThreadForum Entitas ThreadForum
Field ThreadID NamaThread Rating View Komentar Deskripsi LastUpdate MemberID PemilikID ForumID
Tipe data Ukuran(bytes) Varchar(10) 11 Varchar(50) 51 Integer 4 Integer 4 Integer 4 Text 65535 Date 3 Varchar(10) 11 Varchar(10) 11 Varchar(10) 11 Total 65645 Kapasitas tabel ThreadForum65645bytes. Perkiraan peningkatan record pertahun 10%. Kapasitas saat ini 20 * 65645 = 1312900bytes
132 Tabel 4. 22 Tabel Perkiraan Kapasitas Forum Entitas Forum
Field ForumID ForumName Inputdate Deskripsi
Tipe data Varchar(10) Varchar(20) Datetime Text
Ukuran(bytes) 11 21 8 65535
Total 65575 Kapasitas tabel Forum65575bytes. Perkiraan peningkatan record pertahun 1% Kapasitas saat ini 4 * 65575= 262300 Tabel 4. 23 Tabel Perkiraan Kapasitas Komentar Entitas Komentar
Field KomentarID Isikomentar KomentarDate ThreadID MemberID PemilikID
Tipe data Ukuran(bytes) Varchar(10) 11 Text 65535 Datetime 8 Varchar(10) 11 Varchar(10) 11 Varchar(10) 11 Total 65587 Kapasitas tabel Komentar65587bytes. Perkiraan peningkatan record pertahun 10% Kapasitas saat ini 20 * 65587= 1311740
Tabel 4. 24 Tabel Perkiraan Kapasitas Komentar Entitas Rating
Field RatingID RatingDate ThreadID MemberID PemilikID
Tipe data Ukuran(bytes) Varchar(10) 11 Datetime 8 Varchar(10) 11 Varchar(10) 11 Varchar(10) 11 Total 52 Kapasitas tabel Rating52bytes. Perkiraan peningkatan record pertahun 10% Kapasitas saat ini 20 * 52= 1040
133 Tabel 4. 25 Tabel Perkiraan Kapasitas Pemilik Entitas Pemilik
Field PemilikID Username Password NamaPemilik Email AlamatPemilik Gambar Posisi Joindate Transaksi StatusPemilik
Tipe data Ukuran(bytes) Varchar(10) 11 Varchar(50) 51 Varchar(50) 51 Varchar(100) 101 Varchar(100) 101 Varchar(100) 101 Varchar(100) 101 Varchar(10) 11 Datetime 8 Integer 4 Varchar(10) 11 Total 551 Kapasitas tabel Pemilik551bytes. Perkiraan peningkatan record pertahun 10% Kapasitas saat ini 10 * 551 = 5510 bytes Tabel 4. 26 Tabel Perkiraan Kapasitas Telepon Entitas Telepon
Field TeleponID NomorTelepon PemilikID
Tipe data Varchar(10) Varchar(20) Varchar(10)
Ukuran(bytes) 11 21 11
Total 43 Kapasitas tabel Telepon43bytes. Perkiraan peningkatan record pertahun 10% Kapasitas saat ini 10 * 43= 430 Tabel 4. 27 Tabel Perkiraan Kapasitas Handphone Entitas Handphone
Field HandphoneID NomorHandphone PemilikID
Tipe data Varchar(10) Varchar(20) Varchar(10)
Ukuran(bytes) 11 21 11
Total 43 Kapasitas tabel Handphone43bytes. Perkiraan peningkatan record pertahun 10% Kapasitas saat ini 10 * 43= 430
134 Tabel 4. 28 Tabel Perkiraan Kapasitas TempatKost Entitas TempatKost
Field
Tipe data Ukuran(bytes) KostID Varchar(10) 11 NamaKost Varchar(50) 51 AlamatKost Varchar(100) 101 HargaSewa Integer 4 HargaBooking Integer 4 JumlahKamar Integer 4 KamarKosong Integer 4 KamarBooking Integer 4 Deskripsi Text 65535 InputDate Datetime 8 Rating Integer 4 DurasiSewa Integer 4 DurasiBooking Integer 4 Muka Varchar(100) 101 PemilikID Varchar(10) 11 Total 65850 Kapasitas tabel Tempatkost65850bytes. Perkiraan peningkatan record pertahun 10%. Kapasitas saat ini 71 * 65850 = 4675350bytes
Tabel 4. 29 Tabel Perkiraan Kapasitas Foto Entitas Foto
Field FotoID FotoName FotoDate KostID
Tipe data Varchar(10) Varchar(50) Date Varchar(10)
Ukuran(bytes) 11 51 3 11
Total 76 Kapasitas tabel Foto76bytes. Perkiraan peningkatan record pertahun 10% Kapasitas saat ini 30 * 76= 2280 Tabel 4. 30 Tabel Perkiraan Kapasitas Map Entitas Map
Field MapID Latitude Longitude KostID
Tipe data Varchar(10) Number(3,15) Number(3,15) Varchar(10)
Ukuran(bytes) 11 17 17 11
Total 58 Kapasitas tabel Map 58bytes. Perkiraan peningkatan record pertahun 10%
135 Kapasitas saat ini 71 * 58= 4118 Tabel 4. 31 Tabel Perkiraan Kapasitas Fasilitas Entitas Fasilitas
Field FasilitasID Fasilitas KostID
Tipe data Varchar(10) Varchar(50) Varchar(10)
Ukuran(bytes) 11 51 11
Total 73 Kapasitas tabel Fasilitas73bytes. Perkiraan peningkatan record pertahun 10% Kapasitas saat ini 30 * 73= 2190 Tabel 4. 32 Tabel Perkiraan Kapasitas TempatUsaha Entitas TempatUsaha
Field UsahaID NamaUsaha AlamatUsaha Deskripsi
Tipe data Varchar(10) Varchar(50) Varchar(100) Text
Ukuran(bytes) 11 51 101 65535
InputDate Rating Muka KategoriID MemberID
Datetime 8 Integer 4 Varchar(100) 101 Varchar(10) 11 Varchar(10) 11 Total 65833 Kapasitas tabel TempatUsaha65833bytes. Perkiraan peningkatan record pertahun 10%. Kapasitas saat ini 20 * 65833 = 1316660 bytes Tabel 4. 33 Tabel Perkiraan Kapasitas MapUsaha Entitas MapUsaha
Field MapUsahaID Latitude Longitude UsahaID
Tipe data Varchar(10) Number(3,15) Number(3,15) Varchar(10)
Ukuran(bytes) 11 17 17 11
Total 58 Kapasitas tabel MapUsaha 58bytes. Perkiraan peningkatan record pertahun 10% Kapasitas saat ini 20 * 58= 1160
136 Tabel 4. 34 Tabel Perkiraan Kapasitas Kategori TempatUsaha Entitas KategoriUsaha
Field KategoriID KategoriName KategoriDate
Tipe data Ukuran(bytes) Varchar(10) 11 Varchar(20) 21 Date 3 Total 35 Kapasitas tabel KategoriUsaha35bytes. Perkiraan peningkatan record pertahun 1% Kapasitas saat ini 6 * 35= 210 Tabel 4. 35 Tabel Perkiraan Kapasitas Kategori Session Entitas Session
Field SessionID Name Position Session_id
Tipe data Varchar(10) Varchar(50) Varchar(10) Varchar(50)
Ukuran(bytes) 11 51 11 51
User_agent Ip_address Last_activity MemberID PemilikID
Varchar(100) 101 Varchar(50) 51 Date 3 Varchar(10) 11 Varchar(10) 11 Total 301 Kapasitas tabel Session301bytes. Perkiraan peningkatan record pertahun 10%. Kapasitas saat ini 30 * 301 = 9030 bytes Tabel 4. 36 Tabel Perkiraan Kapasitas SewaKost Entitas SewaKost
Field MemberID KostID NamaPenyewa AlamatPenyewa KontakPenyewa JumlahUang BeritaSewa TanggalMulai TanggalAkhir TanggalBayar NomorRekening PemilikRekening BuktiBayar Bank CaraBayar
Tipe data Varchar(10) Varchar(10) Varchar(100) Varchar(100) Varchar(20) Integer Text Datetime Datetime Datetime Varchar(100) Varchar(100) Varchar(100) Varchar(20) Varchar(20)
Ukuran(bytes) 11 11 101 101 21 4 65535 8 8 8 101 101 101 21 21
137 StatusBayar DurasiSewa
Varchar(20) 21 Integer 4 Total 66178 Kapasitas tabel SewaKost66178bytes. Perkiraan peningkatan record pertahun 10%. Kapasitas saat ini 10 * 66178 = 661780bytes Tabel 4. 37 Tabel Perkiraan Kapasitas BookingKost Entitas BookingKost
Field MemberID KostID NamaPenyewa AlamatPenyewa KontakPenyewa JumlahUang BeritaSewa TanggalMulai TanggalAkhir TanggalBayar NomorRekening PemilikRekening BuktiBayar Bank CaraBayar StatusBayar DurasiSewa
Tipe data Ukuran(bytes) Varchar(10) 11 Varchar(10) 11 Varchar(100) 101 Varchar(100) 101 Varchar(30) 21 Integer 4 Text 65535 Datetime 8 Datetime 8 Datetime 8 Varchar(100) 101 Varchar(100) 101 Varchar(100) 101 Varchar(20) 21 Varchar(20) 21 Varchar(20) 21 Integer 4 Total 66178 Kapasitas tabel BookingKost66178bytes. Perkiraan peningkatan record pertahun 10%. Kapasitas saat ini 10 * 66178 = 661780bytes
Tabel 4. 38 Jumlah Perhitungan Kapasitas Untuk 3 Tahun Entitas Member Pemilik Forum ThreadForum Komentar Rating TempatKost Map Fasilitas Foto TempatUsaha
Ukuran(bytes) (X0) 9140 5930 262300 1312900 1311740 1040 4675350 4118 2190 2280 1316660
Pertumbuhan pertahun (i) 10% 10% 1% 10% 10% 10% 10% 10% 10% 10% 10%
Ukuran(bytes) 3 tahun (X3) 12165.34 7892.83 270247.9523 1747469.9 1745925.94 1384.24 6222890.85 5481.058 2914.89 3034.68 1752474.46
138 KategoriUsaha MapUsaha Session SewaKost BookingKost Telepon Handphone
210 1160 9030 661780 661780 430 430 ∑R0=10237508
1% 10% 10% 10% 10% 10% 10%
216.36321 1543.96 12018.93 880829.18 880829.18 572.33 572.33 ∑R3 = 13548464.41
Dengan menggunakan rumus Xn = X0*(1+i)n, dimana i= pertumbuhan, X0=ukuran awal, dan n=waktu tahun ke depan. Total kapasitas penyimpanan yang diperlukan selama 3 tahun ke depan adalah 13548464.41 bytes atau 13.5485 MB.
4.3 Prototipe Aplikasi Pada bagian ini akan dijelaskan perancangan web untuk web database yang dibuat. Perancangan web tersebut meliputi perancangan konseptual, perancangan logikal, dan perancangan fisikal. 4.3.1 Perancangan Web Database Konseptual
Gambar 4. 12 Perancangan Konseptual Web Database 139
140 4.3.2 Perancangan Web Database Logikal 4.3.2.1 Page Schema Visitor
PAGE-SCHEMA Seputar BINUS Unique { PAGE-SCHEMA Home; PAGE-SCHEMA Registrasi Member; PAGE-SCHEMA Registrasi Member; PAGE-SCHEMA Login; PAGE-SCHEMA Tempat Kost; PAGE-SCHEMA Tempat Usaha; } PAGE-SCHEMA Home{ STRING ForumName STRING NamaKost STRING NamaUsaha LIST_OF (STRING UsahaID ) TempatUsaha; LIST_OF (STRING ForumID ) Forum; LIST_OF (STRING KostID ) TempatKost; } PAGE-SCHEMA Registrasi Member { STRING Username STRING Password STRING E-mail STRING Posisi STRING Status STRING Gambar DATE Joindate LIST_OF (STRING MemberID ) Member; } PAGE-SCHEMA Registrasi Pemilik { STRING Username
141 STRING Password STRING E-mail STRING Posisi STRING Status STRING Gambar STRING Alamat STRING Telepon STRING Handphone DATE Joindate INTEGER Transaksi LIST_OF (STRING PemilikID ) Pemilik; } PAGE-SCHEMA Login { STRING Username STRING Password STRING Posisi LIST_OF (STRING PemilikID ) Pemilik; LIST_OF (STRING MemberID ) Member; } PAGE-SCHEMA Tempat Kost { STRING NamaKost STRING AlamatKost INTEGER HargaSewa INTEGER HargaBooking INTEGER JumlahKamar INTEGER KamarKosong INTEGER KamarBooking STRING Deskripsi INTEGER Rating DATE Inputdate INTEGER DurasiSewa INTEGER DurasiBooking STRING Muka STRING FotoName STRING Fasilitas INTEGER Latitude INTEGER Longitude INTEGER Latitude
142 INTEGER Longitude STRING Username LIST_OF (STRING KostID) TempatKost; LIST_OF (STRING PemilikID) Pemilik; LIST_OF (STRING MapID) Map; LIST_OF (STRING FotoID) Foto; LIST_OF (STRING FasilitasID) Fasilitas; LIST_OF (STRING MapUsahaID) MapUsaha; } PAGE-SCHEMA TempatUsaha { STRING NamaUsaha STRING Alamat STRING Deskripsi DATE Inputdate STRING Muka INTEGER Rating STRING KategoriName STRING Username LIST_OF (STRING KategoriID ) KategoriUsaha; LIST_OF (STRING MemberID) Member; } Pemilik PAGE-SCHEMA Seputar BINUS Pemilik Unique { PAGE-SCHEMA Home; PAGE-SCHEMA Tempat Kost; PAGE-SCHEMA Tempat Usaha; PAGE-SCHEMA Forum; PAGE-SCHEMA Profile; PAGE-SCHEMA SewaKost; PAGE-SCHEMA BookingKost; }
143 PAGE-SCHEMA Home{ STRING ForumName STRING NamaKost STRING NamaUsaha LIST_OF (STRING UsahaID ) TempatUsaha; LIST_OF (STRING ForumID ) Forum; LIST_OF (STRING KostID ) TempatKost; } PAGE-SCHEMA Tempat Kost { STRING NamaKost STRING AlamatKost INTEGER HargaSewa INTEGER HargaBooking INTEGER JumlahKamar INTEGER KamarKosong INTEGER KamarBooking STRING Deskripsi INTEGER Rating DATE Inputdate INTEGER DurasiSewa INTEGER DurasiBooking STRING Muka STRING FotoName STRING Fasilitas INTEGER Latitude INTEGER Longitude INTEGER Latitude INTEGER Longitude STRING Username LIST_OF (STRING KostID) TempatKost; LIST_OF (STRING PemilikID) Pemilik; LIST_OF (STRING MapID) Map; LIST_OF (STRING FotoID) Foto; LIST_OF (STRING FasilitasID) Fasilitas; LIST_OF
144 (STRING MapUsahaID) MapUsaha; } PAGE-SCHEMA SewaKost { STRING NamaPenyewa STRING AlamatPenyewa STRING Berita INTEGER Total STRING CaraBayar STRING Bank STRING Rekening STRING PemilikRekening STRING Bukti STRING Kontak STRING Status INTEGER Durasi DATE TanggalMulai DATE TanggalAkhir DATE TanggalBayar STRING Username STRING NamaKost STRING AlamatKost LIST_OF (STRING MemberID ) Member; LIST_OF (STRING KostID) TempatKost; LIST_OF (STRING PemilikID) Pemilik; LIST_OF (STRING KostID,STRING MemberID) Sewakost; } PAGE-SCHEMA BookingKost { STRING NamaPenyewa STRING AlamatPenyewa STRING Berita INTEGER Total STRING CaraBayar STRING Bank STRING Rekening STRING PemilikRekening STRING Bukti STRING Kontak STRING Status
145 INTEGER Durasi DATE TanggalMulai DATE TanggalAkhir DATE TanggalBayar STRING Username STRING NamaKost STRING AlamatKost LIST_OF (STRING MemberID ) Member; LIST_OF (STRING KostID) TempatKost; LIST_OF (STRING PemilikID) Pemilik; LIST_OF (STRING KostID,STRING MemberID) Bookingkost; } PAGE-SCHEMA TempatUsaha { STRING NamaUsaha STRING Alamat STRING Deskripsi DATE Inputdate STRING Muka INTEGER Rating STRING KategoriName STRING Username LIST_OF (STRING KategoriID ) KategoriUsaha; LIST_OF (STRING MemberID) Member; } PAGE-SCHEMA Forum { STRING ForumName DATE Inputdate STRING Deskripsi STRING NamaThread STRING Deskripsi DATE LastUpdate INTEGER Rating INTEGER View INTEGER Komentar STRING Username
146 DATE RatingDate STRING Isikomentar DATE KomentarDate LIST_OF (STRING ForumID) Forum; LIST_OF (STRING ThreadID) ThreadForum; LIST_OF (STRING MemberID) Member; LIST_OF (STRING PemilikID) Pemilik; LIST_OF (STRING RatingID) Rating; LIST_OF (STRING KomentarID) Komentar; } PAGE-SCHEMA Profile { STRING Username STRING Password STRING NamaPemilik STRING E-mail STRING AlamatPemilik STRING Gambar STRING NamaThread STRING Isikomentar DATE KomentarDate STRING RatingDate LIST_OF (STRING ForumID) Forum; LIST_OF (STRING ThreadID) ThreadForum; LIST_OF (STRING RatingID) Rating; LIST_OF (STRING KomentarID) Komentar; LIST_OF (STRING PemilikID) Pemilik; } Member
PAGE-SCHEMA Seputar BINUS Pemilik Unique
147 { PAGE-SCHEMA Home; PAGE-SCHEMA Tempat Kost; PAGE-SCHEMA Tempat Usaha; PAGE-SCHEMA Forum; PAGE-SCHEMA Profile; PAGE-SCHEMA SewaKost; PAGE-SCHEMA BookingKost; } PAGE-SCHEMA Home{ STRING ForumName STRING NamaKost STRING NamaUsaha LIST_OF (STRING UsahaID ) TempatUsaha; LIST_OF (STRING ForumID ) Forum; LIST_OF (STRING KostID ) TempatKost; } PAGE-SCHEMA Tempat Kost { STRING NamaKost STRING AlamatKost INTEGER HargaSewa INTEGER HargaBooking INTEGER JumlahKamar INTEGER KamarKosong INTEGER KamarBooking STRING Deskripsi INTEGER Rating DATE Inputdate INTEGER DurasiSewa INTEGER DurasiBooking STRING Muka STRING FotoName STRING Fasilitas INTEGER Latitude INTEGER Longitude INTEGER Latitude INTEGER Longitude STRING Username LIST_OF
148 (STRING KostID) TempatKost; LIST_OF (STRING PemilikID) Pemilik; LIST_OF (STRING MapID) Map; LIST_OF (STRING FotoID) Foto; LIST_OF (STRING FasilitasID) Fasilitas; LIST_OF (STRING MapUsahaID) MapUsaha; } PAGE-SCHEMA SewaKost { STRING NamaPenyewa STRING AlamatPenyewa STRING Berita INTEGER Total STRING CaraBayar STRING Bank STRING Rekening STRING PemilikRekening STRING Bukti STRING Kontak STRING Status INTEGER Durasi DATE TanggalMulai DATE TanggalAkhir DATE TanggalBayar STRING Username STRING NamaKost STRING AlamatKost LIST_OF (STRING MemberID ) Member; LIST_OF (STRING KostID) TempatKost; LIST_OF (STRING PemilikID) Pemilik; LIST_OF (STRING KostID,STRING MemberID) Sewakost; } PAGE-SCHEMA BookingKost { STRING NamaPenyewa
149 STRING AlamatPenyewa STRING Berita INTEGER Total STRING CaraBayar STRING Bank STRING Rekening STRING PemilikRekening STRING Bukti STRING Kontak STRING Status INTEGER Durasi DATE TanggalMulai DATE TanggalAkhir DATE TanggalBayar STRING Username STRING NamaKost STRING AlamatKost LIST_OF (STRING MemberID ) Member; LIST_OF (STRING KostID) TempatKost; LIST_OF (STRING PemilikID) Pemilik; LIST_OF (STRING KostID,STRING MemberID) Bookingkost; } PAGE-SCHEMA TempatUsaha { STRING NamaUsaha STRING Alamat STRING Deskripsi DATE Inputdate STRING Muka INTEGER Rating STRING KategoriName STRING Username INTEGER Latitude INTEGER Longitude LIST_OF (STRING KategoriID ) KategoriUsaha; LIST_OF (STRING MemberID) Member; LIST_OF (STRING MapUsahaID) MapUsaha;
150 } PAGE-SCHEMA Forum { STRING ForumName DATE Inputdate STRING Deskripsi STRING NamaThread STRING Deskripsi DATE LastUpdate INTEGER Rating INTEGER View INTEGER Komentar STRING Username DATE RatingDate STRING Isikomentar DATE KomentarDate LIST_OF (STRING ForumID) Forum; LIST_OF (STRING ThreadID) ThreadForum; LIST_OF (STRING MemberID) Member; LIST_OF (STRING PemilikID) Pemilik; LIST_OF (STRING RatingID) Rating; LIST_OF (STRING KomentarID) Komentar; } PAGE-SCHEMA Profile { STRING Username STRING Password STRING NamaMember STRING E-mail STRING AlamatMember STRING Gambar STRING NamaThread STRING Isikomentar DATE KomentarDate STRING RatingDate LIST_OF (STRING ForumID) Forum;
151 LIST_OF (STRING ThreadID) ThreadForum; LIST_OF (STRING RatingID) Rating; LIST_OF (STRING KomentarID) Komentar; LIST_OF (STRING MemberID) Member; } Admin PAGE-SCHEMA Seputar BINUS Admin Unique { PAGE-SCHEMA Home; PAGE-SCHEMA Tempat Kost; PAGE-SCHEMA Tempat Usaha; PAGE-SCHEMA Forum; PAGE-SCHEMA Member; PAGE-SCHEMA Transaksi; PAGE-SCHEMA Panel; } PAGE-SCHEMA Home{ STRING ForumName STRING KategoriName LIST_OF (STRING KategoriID ) KategoriUsaha; LIST_OF (STRING ForumID ) Forum; } PAGE-SCHEMA Tempat Kost { STRING NamaKost STRING AlamatKost INTEGER HargaSewa INTEGER HargaBooking INTEGER JumlahKamar INTEGER KamarKosong INTEGER KamarBooking STRING Deskripsi INTEGER Rating DATE Inputdate INTEGER DurasiSewa INTEGER DurasiBooking
152 STRING Muka STRING FotoName STRING Fasilitas INTEGER Latitude INTEGER Longitude INTEGER Latitude INTEGER Longitude STRING Username LIST_OF (STRING KostID) TempatKost; LIST_OF (STRING PemilikID) Pemilik; LIST_OF (STRING MapID) Map; LIST_OF (STRING FotoID) Foto; LIST_OF (STRING FasilitasID) Fasilitas; LIST_OF (STRING MapUsahaID) MapUsaha; } PAGE-SCHEMA Transaksi { STRING NamaPenyewa STRING AlamatPenyewa STRING Berita INTEGER Total STRING CaraBayar STRING Bank STRING Rekening STRING PemilikRekening STRING Bukti STRING Kontak STRING Status INTEGER Durasi DATE TanggalMulai DATE TanggalAkhir DATE TanggalBayar STRING Username STRING NamaKost STRING AlamatKost LIST_OF (STRING MemberID ) Member; LIST_OF
153 (STRING KostID) TempatKost; LIST_OF (STRING PemilikID) Pemilik; LIST_OF (STRING KostID,STRING MemberID) Sewakost; LIST_OF (STRING KostID,STRING MemberID) BookingKost; } PAGE-SCHEMA TempatUsaha { STRING NamaUsaha STRING Alamat STRING Deskripsi DATE Inputdate STRING Muka INTEGER Rating STRING KategoriName STRING Username INTEGER Latitude INTEGER Longitude LIST_OF (STRING KategoriID ) KategoriUsaha; LIST_OF (STRING MemberID) Member; LIST_OF (STRING MapUsahaID) MapUsaha; } PAGE-SCHEMA Forum { STRING ForumName DATE Inputdate STRING Deskripsi STRING NamaThread STRING Deskripsi DATE LastUpdate INTEGER Rating INTEGER View INTEGER Komentar STRING Username DATE RatingDate STRING Isikomentar DATE KomentarDate LIST_OF (STRING ForumID) Forum;
154 LIST_OF (STRING ThreadID) ThreadForum; LIST_OF (STRING MemberID) Member; LIST_OF (STRING PemilikID) Pemilik; LIST_OF (STRING KomentarID) Komentar; LIST_OF (STRING RatingID) Rating; } PAGE-SCHEMA Member { STRING Username STRING Password STRING NamaMember STRING E-mail STRING AlamatMember STRING Gambar STRING NamaThread STRING Isikomentar DATE KomentarDate STRING RatingDate LIST_OF (STRING ForumID) Forum; LIST_OF (STRING ThreadID) ThreadForum; LIST_OF (STRING RatingID) Rating; LIST_OF (STRING KomentarID) Komentar; LIST_OF (STRING MemberID) Member; LIST_OF (STRING PemilikID) Pemilik; }
155
4.3.2.2 Screenshot Visitor -
Index/Beranda Tempat Kost o Map Tempat Kost o Daftar Tempat Kost
-
-
Daftar Kost o View Kost o Map Kost o Album Tempat Usaha o Daftar Tempat Usaha
-
-
Daftar Tempat Usaha o View Usaha Login Registrasi o Member o Pemilik
Gambar 4. 13 Screenshot Index Pada halaman ini menampilkan halaman beranda untuk pengunjung website. Halaman ini terdapat slideshow gambar, daftar tempat kost baru, daftar tempat usaha baru, kategori forum, registrasi member/pemilik, Facebook dan Twitter.
156
Gambar 4. 14 Screenshot Login Pada halaman ini menampilkan halaman login untuk pengunjung website, login menjadi member atau pemilik. Halaman ini terdapat form pengisian username, password dan jenis member yang digunakan untuk login ke dalam website.
157
Gambar 4. 15 Screenshot Register Member Pada halaman ini menampilkan halaman registrasi menjadi member untuk pengunjung website. Pada halaman berupa form registrasi yang terdiri dari username, passsword, e-mail, gambar dan persetujuan user.
158
Gambar 4. 16 Screenshot Register Pemilik Pada halaman ini menampilkan halaman registrasi menjadi pemilik untuk pengunjung website. Pada halaman berupa form registrasi yang terdiri dari username, passsword, e-mail, alamat, telepon, gambar dan persetujuan user. Pengunjung yang registrasi pemilik akan mendapatkan verifikasi dari admin berupa panggilan telepon/handphone. Hal itu untuk memastikan apakah pengunjung memenuhi kriteria menjadi pemilik.
159
Gambar 4. 17 Screenshot Daftar Tempat Kost Pada halaman ini menampilkan halaman daftar tempat kost untuk pengunjung website. Pada halaman berupa daftar tempat kost yang terdiri dari gambar depan, nama tempat kost dan harga sewa per bulan. Terdapat juga fasilitas pencarian berdasarkan nama, alamat atau fasilitas tempat kost. Terdapat juga fasilitas pengurutan berdasarkan nama kost, tanggal terbaru dan harga termurah.
160
Gambar 4. 18 Screenshot Map Tempat Kost Pada halaman ini menampilkan halaman map daftar tempat kost untuk pengunjung website. Pada halaman ini berupa peta dari aplikasi google map dimana terdapat marker berwarna merah sebagai penanda lokasi. Marker yang memiliki animasi adalah marker tempat kost yang telah terdaftar.
161
Gambar 4. 19 Screenshot View Tempat Kost Pada halaman ini menampilkan halaman view daftar tempat kost untuk pengunjung website. Pada halaman ini berupa detil informasi mengenai satu tempat kost. Informasi tersebut meliputi rating, perubahan terakhir, nama, alamat, harga sewa, harga booking, jumlah kamar, kamar kosong, kamar booking, durasi sewa, durasi booking dan deskripsi tempat kost. Terdapat juga fasilitas peta kost yang terintegrasi dengan peta tempat usaha dan album yang berisi gambar-gambar yang berhubungan dengan tempat kost.
162
Gambar 4. 20 Screenshot Daftar Tempat Usaha Pada halaman ini menampilkan halaman daftar tempat usaha untuk pengunjung website. Pada halaman berupa daftar tempat usaha yang terdiri dari gambar depan, nama tempat usaha dan kategori usaha. Terdapat juga fasilitas pencarian berdasarkan nama, alamat, produk atau kategori usaha. Terdapat juga fasilitas pengurutan berdasarkan nama tempat usaha dan tanggal terbaru.
163
Gambar 4. 21 Screenshot View Tempat usaha Pada halaman ini menampilkan halaman view daftar tempat usaha untuk pengunjung website. Pada halaman ini berupa detil informasi mengenai satu tempat usaha. Informasi tersebut meliputi rating, nama, alamat, kategori dan deskripsi tempat usaha.
164 Pemilik -
-
-
Index/Beranda Tempat Kost o Map Tempat Kost o Daftar Tempat Kost o Kost Saya Daftar Kost o View Kost o Map Kost o Album Kost Saya o View Kost o Tambah Kost o Transaksi Sewa o Edit Profile
-
-
o Transaksi Booking View Kost Saya o Edit Kost o Edit Foto o Edit Lokasi o Edit Fasilitas Transaksi Sewa o View Sewa Transaksi Booking o View Booking Tempat Usaha o Daftar Tempat Usaha Daftar Tempat Usaha
-
-
o View Usaha Forum o View Forum o View Thread o Edit Thread o Edit Comment o Edit Rating Profile o View Profile o Aktivitas Forum o Aktivitas Rating o Aktivitas Komentar
Gambar 4. 22 Screenshot Index Pemilik Pada halaman ini menampilkan halaman beranda untuk pengunjung yang login sebagai pemilik. Halaman ini terdapat slideshow gambar, daftar tempat kost baru, daftar tempat usaha baru dan kategori forum.
165
Gambar 4. 23 Screenshot Map Tempat Kost Pemilik Pada halaman ini menampilkan halaman map daftar tempat kost untuk pemilik. Pada halaman ini berupa peta dari aplikasi Google Map dimana terdapat marker berwarna merah sebagai penanda lokasi. Marker yang memiliki animasi adalah marker tempat kost yang telah terdaftar. Terdapat juga daftar kost yang menampilkan daftar tempat kost dan kost saya yang menampilkan daftar tempat kost milik pemilik.
166
Gambar 4. 24 Sreenshot Daftar Tempat Kost Pemilik Pada halaman ini menampilkan halaman daftar tempat kost untuk pemilik. Pada halaman berupa daftar tempat kost yang terdiri dari gambar depan, nama tempat kostdan harga sewa per bulan. Terdapat juga fasilitas pencarian berdasarkan nama, alamat atau fasilitas tempat kost. Terdapat juga fasilitas pengurutan berdasarkan nama kost, tanggal terbaru dan harga termurah.
167
Gambar 4. 25 Screenshot View Kost Pemilik Pada halaman ini menampilkan halaman view daftar tempat kost untuk pemilik. Pada halaman ini berupa detil informasi mengenai satu tempat kost. Informasi tersebut meliputi rating, perubahan terakhir, nama, alamat, harga sewa, harga booking, jumlah kamar, kamar kosong, kamar booking, durasi sewa, durasi booking dan deskripsi tempat kost. Terdapat juga fasilitas peta kost yang terintegrasi dengan peta tempat usaha dan album yang berisi gambar-gambar yang berhubungan dengan tempat kost.
168
Gambar 4. 26 Screenshot Daftar Kost Saya Pemilik Pada halaman ini menampilkan halaman daftar tempat kost yang dimiliki oleh pemilik. Pada halaman berupa daftar tempat kost yang terdiri dari gambar depan, nama tempat kost dan harga sewa per bulan. Terdapat juga fasilitas pencarian berdasarkan nama, alamat atau fasilitas tempat kost. Terdapat juga fasilitas pengurutan berdasarkan nama kost, tanggal terbaru dan harga termurah. Terdapat juga fasilitas tambah kost untuk menambah tempat kost baru; panel transaksi untuk mengatur proses transaksi aktif atau tidak aktif; transaksi sewa yang menampilkan daftar transaksi sewa oleh member; dan transaksi booking yang menampilkan daftar transaksi booking oleh member.
169
Gambar 4. 27 Screenshot View Kost Saya Pemilik Pada halaman ini menampilkan view tempat kost yang dimiliki oleh pemilik. Pada halaman ini terdapat ubah kost untuk mengubah informasi tempat kost; ubah foto untuk mengubah album tempat kost; ubah lokasi untuk mengubah lokasi peta tempat kost; dan ubah fasilitas untuk mengubah fasilitas tempat kost.
170
Gambar 4. 28 Screenshot Daftar Sewa Kost Pemilik Pada halaman ini menampilkan halaman daftar sewa tempat kost yang dimiliki oleh pemilik. Pada halaman ini berupa daftar sewa tempat kost yang terdiri dari nama kost, alamat kost, nama penyewa, member, tanggal bayar, status bayar, status sewa, action lihat dan hapus. Action lihat untuk melihat isi transaksi, sedangkan hapus hanya bisa dilakukan oleh member. Terdapat fasilitas pencarian berdasarkan nama kost, alamat kost atau tanggal bayar. Terdapat juga fasilitas pengurutan berdasarkan nama kost, nama penyewa atau tanggal bayar terbaru.
171
Gambar 4. 29 Screenshot Daftar Booking Kost Pemilik Pada halaman ini menampilkan halaman daftar booking tempat kost yang dimiliki oleh pemilik. Pada halaman ini berupa daftar booking tempat kost yang terdiri dari nama kost, alamat kost, nama penyewa, member, tanggal bayar, status bayar, status sewa, action lihat dan hapus. Action lihat untuk melihat isi transaksi, sedangkan hapus hanya bisa dilakukan oleh member. Terdapat fasilitas pencarian berdasarkan nama kost, alamat kost atau tanggal bayar. Terdapat juga fasilitas pengurutan berdasarkan nama kost, nama penyewa atau tanggal bayar terbaru.
172
Gambar 4. 30 Screenshot Daftar Tempat Usaha Pemilik Pada halaman ini menampilkan halaman daftar tempat usaha untuk pemilik. Pada halaman ini berupa daftar tempat usaha yang terdiri dari gambar depan, nama tempat usaha dan kategori usaha. Terdapat juga fasilitas pencarian berdasarkan nama, alamat,produk atau kategori usaha. Terdapat juga fasilitas pengurutan berdasarkan nama tempat usaha dan tanggal terbaru.
173
Gambar 4. 31 Screenshot View Tempat Usaha Pemilik Pada halaman ini menampilkan halaman view daftar tempat usaha untuk pemilik. Pada halaman ini berupa detil informasi mengenai satu tempat usaha. Informasi tersebut meliputi rating, nama, alamat, kategori dan deskripsi tempat usaha. Terdapat juga fasilitas pemberian rating untuk tempat usaha. Setiap kali login hanya dapat memberikan rating satu kali dari semua tempat usaha.
174
Gambar 4. 32 Screenshot Forum Pemilik Pada halaman ini menampilkan halaman forum untuk pemilik. Pada halaman ini berupa kategori forum. Masing-masing kategori forum terdapat view thread untuk melihat isi thread, edit thread untuk mengubah isi thread, edit comment untuk menambah atau mengubah komentar terhadap thread dan edit rating untuk menambah rating terhadap thread.
175
Gambar 4. 33 Screenshot Profile Pemilik Pada halaman ini menampilkan halaman profil untuk pemilik. Pada halaman ini terdapat informasi mengenai username, e-mail, dan posisi dari pemilik. Terdapat juga forum untuk melihat aktivitas thread dari pemilik; rating untuk melihat aktivitas rating thread dari pemilik; komentar untuk melihat aktivitas komentar thread dari pemilik; ubah password untuk mengubah password login dari pemilik; dan edit untuk mengubah informasi dari pemilik.
176 Member -
-
Index/Beranda Tempat Kost o Map Tempat Kost o Daftar Tempat Kost o Sewa Kost Saya o Booking Kost Saya Daftar Kost o View Kost View Kost o View Kost o Map Kost o Sewa Kost o Booking Kost o Album
-
-
-
Sewa Kost Saya o View Sewa Kost Booking Kost Saya o View Booking Kost Tempat Usaha o Daftar Tempat Usaha o Usaha Saya Daftar Tempat Usaha o View Usaha Usaha Saya o Tambah Usaha o View Usaha Saya View Usaha Saya o Edit Usaha Saya
-
-
o Edit Map Usaha Forum o View Forum o View Thread o Edit Thread o Edit Comment o Edit Rating Profile o View Profile o Aktivitas Forum o Aktivitas Rating o Aktivitas Komentar o Edit Profile
o
Gambar 4. 34 Screenshot Index Member Pada halaman ini menampilkan halaman beranda untuk pengunjung yang login sebagai member. Halaman ini terdapat slideshow gambar, daftar tempat kost baru, daftar tempat usaha baru dan kategori forum.
177
Gambar 4. 35 Screenshot Map Tempat Kost Member Pada halaman ini menampilkan halaman map daftar tempat kost untuk member. Pada halaman ini berupa peta dari aplikasi Google Map dimana terdapat marker berwarna merah sebagai penanda lokasi. Marker yang memiliki animasi adalah marker tempat kost yang telah terdaftar. Terdapat juga daftar kost yang menampilkan daftar tempat kost, daftar sewa kost dari member dan daftar booking kost dari member tersebut.
178
Gambar 4. 36 Screenshot Daftar Tempat Kost Member Pada halaman ini menampilkan halaman daftar tempat kost untuk member. Pada halaman berupa daftar tempat kost yang terdiri dari gambar depan, nama tempat kostdan harga sewa per bulan. Terdapat juga fasilitas pencarian berdasarkan nama, alamatatau fasilitas tempat kost. Terdapat juga fasilitas pengurutan berdasarkan nama kost, tanggal terbaru dan harga termurah.
179
Gambar 4. 37 Screenshot Sewa Kost Saya Member Pada halaman ini menampilkan halaman daftar sewa tempat kost yang dimiliki oleh member. Pada halaman ini berupa daftar sewa tempat kost yang terdiri dari nama kost, alamat kost, nama penyewa, pemilik kost, tanggal bayar, status bayar, status sewa, action lihat dan hapus.Action lihat untuk melihat isi transaksi, sedangkan hapus hanya bisa dilakukan oleh member. Terdapat fasilitas pencarian berdasarkan nama kost, alamat kost atau tanggal bayar. Terdapat juga fasilitas pengurutan berdasarkan nama kost, nama penyewaatau tanggal bayar terbaru.
180
Gambar 4. 38 Screenshot Booking Kost Saya Member Pada halaman ini menampilkan halaman daftar booking tempat kost yang dimiliki oleh member. Pada halaman ini berupa daftar booking tempat kost yang terdiri dari nama kost, alamat kost, nama penyewa, pemilik kost, tanggal bayar, status bayar, status sewa, action lihat dan hapus. Action lihat untuk melihat isi transaksi, sedangkan hapus hanya bisa dilakukan oleh member. Terdapat fasilitas pencarian berdasarkan nama kost, alamat kost atau tanggal bayar. Terdapat juga fasilitas pengurutan berdasarkan nama kost, nama penyewa atau tanggal bayar terbaru.
181
Gambar 4. 39 Screenshot View Kost Member Pada halaman ini menampilkan halaman view daftar tempat kost untuk member. Pada halaman ini berupa detil informasi mengenai satu tempat kost. Informasi tersebut meliputi rating, perubahan terakhir, nama, alamat, harga sewa, harga booking, jumlah kamar, kamar kosong, kamar booking, durasi sewa, durasi booking dan deskripsi tempat kost. Terdapat juga fasilitas peta kost yang terintegrasi dengan peta tempat usaha dan album yang berisi gambar-gambar yang berhubungan dengan tempat kost. Member dapat melakukan transaksi sewa dan booking apabila pemilik tempat kost mengaktifkan fitur transaksi. Transaksi sewa dan booking juga tergantung dengan jumlah kamar kosong dan kamar booking. Apabila masih terdapat transaksi sewa dengan tempat kost tersebut yang masih pending, member tidak dapat melakukan transaksi sewa dengan tempat kost tersebut sampai transaksi tersebut selesai dan dihapus.
182
Gambar 4. 40 Screenshot Daftar Tempat Usaha Member Pada halaman ini menampilkan halaman daftar tempat usaha untuk member. Pada halaman berupa daftar tempat usaha yang terdiri dari gambar depan, nama tempat usaha dan kategori usaha. Terdapat juga fasilitas pencarian berdasarkan nama, alamat,produk atau kategori usaha. Terdapat juga fasilitas pengurutan berdasarkan nama tempat usaha dan tanggal terbaru.
183
Gambar 4. 41 Screenshot View Tempat Usaha Member Pada halaman ini menampilkan halaman view daftar tempat usaha untuk member. Pada halaman ini berupa detil informasi mengenai satu tempat usaha. Informasi tersebut meliputi rating, nama, alamat, kategori dan deskripsi tempat usaha. Terdapat juga fasilitas pemberian rating untuk tempat usaha. Setiap kali login hanya dapat memberikan rating satu kali dari semua tempat usaha.
184
Gambar 4. 42 Screenshot Daftar Tempat Usaha Saya Member Pada halaman ini menampilkan halaman daftar tempat usaha yang dimiliki oleh member. Pada halaman ini berupa daftar tempat usaha yang dimiliki oleh member yang terdiri dari gambar depan, nama tempat usaha dan kategori usaha. Terdapat juga fasilitas pencarian berdasarkan nama, alamat,produk atau kategori usaha. Terdapat juga fasilitas pengurutan berdasarkan nama tempat usaha dan tanggal terbaru. Member dapat menambah tempat usaha baru yang dimilikinya.
185
Gambar 4. 43 Screenshot View Tempat Usaha Saya Member Pada halaman ini menampilkan halaman view daftar tempat usaha yang dimiliki oleh member. Pada halaman ini berupa detil informasi mengenai satu tempat usaha. Informasi tersebut meliputi rating, nama, alamat, kategori dan deskripsi tempat usaha. Terdapat juga fasilitas ubah tempat usaha untuk mengubah informasi tempat usaha; rating untuk memberikan rating pada tempat usaha; lokasi tempat usaha untuk mengubah lokasi peta tempat usaha; dan hapus tempat usaha untuk menghapus tempat usaha.
186
Gambar 4. 44 Screenshot Forum Member Pada halaman ini menampilkan halaman forum untuk member. Pada halaman ini berupa kategori forum. Masing-masing kategori forum terdapat view thread untuk meihat isi thread, edit thread untuk mengubah isi thread, edit comment untuk menambah atau mengubah komentar terhadap thread dan edit rating untuk menambah rating terhadap thread.
187
Gambar 4. 45 Screenshot Profile Member Pada halaman ini menampilkan halaman profil untuk member. Pada halaman ini terdapat informasi mengenai username, e-mail dan posisi dari member. Terdapat juga forum untuk melihat aktivitas thread dari member; rating untuk melihat aktivitas rating thread dari member; komentar untuk melihat aktivitas komentar thread dari member; ubah password untuk mengubah password login dari member; dan edit untuk mengubah informasi dari member.
188 Admin -
-
-
Index/Beranda Tempat Kost o Map Tempat Kost o Daftar Tempat Kost Daftar Kost o View Kost o Tambah Kost View Kost o View Kost o Edit Kost o Edit Foto o Edit Lokasi o Edit Fasilitas
-
-
-
Tempat Usaha o Daftar Tempat Usaha Daftar Tempat Usaha o View Usaha View Usaha o View Tempat Usaha o Edit Tempat Usaha o Edit Lokasi Usaha Member o Member o Pemilik Transaksi o Booking
-
-
o Sewa Panel o Ubah Slide o Ubah Kategori Usaha o Ubah Forum Forum o View Forum o View Thread o Edit Thread o Edit Comment o Edit Rating
o
Gambar 4. 46 Screenshot Index Admin Pada halaman ini menampilkan halaman beranda untuk admin. Halaman ini terdapat slideshow gambar, daftar tempat kost baru, daftar tempat usaha barudan kategori forum.
189
Gambar 4. 47 Screenshot Daftar Tempat Kost Admin Pada halaman ini menampilkan halaman daftar tempat kost untuk admin. Pada halaman berupa daftar tempat kost yang terdiri dari gambar depan, nama tempat kostdan harga sewa per bulan. Terdapat juga fasilitas pencarian berdasarkan nama, alamatatau fasilitas tempat kost. Terdapat juga fasilitas pengurutan berdasarkan nama kost, tanggal terbaru dan harga termurah.
190
Gambar 4. 48 Screenshot Map Tempat Kost Admin Pada halaman ini menampilkan halaman map daftar tempat kost untuk admin. Pada halaman ini berupa peta dari aplikasi Google Map dimana terdapat marker berwarna merah sebagai penanda lokasi. Marker yang memiliki animasi adalah marker tempat kost yang telah terdaftar. Terdapat juga daftar kost yang menampilkan daftar tempat kost.
191
Gambar 4. 49 Screenshot View Tempat Kost Admin Pada halaman ini menampilkan view tempat kost untuk admin. Pada halaman ini terdapat ubah kost untuk mengubah informasi tempat kost; ubah foto untuk mengubah album tempat kost; ubah lokasi untuk mengubah lokasi peta tempat kost; dan ubah fasilitas untuk mengubah fasilitas tempat kost.
192
Gambar 4. 50 Screenshot Daftar Tempat Usaha Admin Pada halaman ini menampilkan halaman daftar tempat usaha untuk admin. Pada halaman berupa daftar tempat usaha yang terdiri dari gambar depan, nama tempat usaha dan kategori usaha. Terdapat juga fasilitas pencarian berdasarkan nama, alamat,produk atau kategori usaha. Terdapat juga fasilitas pengurutan berdasarkan nama tempat usahadan tanggal terbaru. Admin dapat menambah tempat usaha baru.
193
Gambar 4. 51 Screenshot View Tempat Usaha Admin Pada halaman ini menampilkan halaman view daftar tempat usaha untuk admin. Pada halaman ini berupa detil informasi mengenai satu tempat usaha. Informasi tersebut meliputi rating, nama, alamat, kategori dan deskripsi tempat usaha. Terdapat juga fasilitas ubah tempat usaha untuk mengubah informasi tempat usaha; lokasi tempat usaha untuk mengubah lokasi peta tempat usaha; dan hapus tempat usaha untuk menghapus tempat usaha.
194
Gambar 4. 52 Screenshot Daftar Member Admin Pada halaman ini menampilkan halaman daftar member termasuk pemilik yang terdaftar di dalam website.Pada halaman ini terdapat informasi yang terdiri dari username, e-mail, posisi, status dan action view. Action view untuk melihat informasi dari member tersebut. Terdapat fasilitas pencarian berdasarkan username, e-mail, posisidan status. Terdapat juga fasilitas pengurutan berdasarkan username, e-mail dan status.
195
Gambar 4. 53 Screenshot Daftar Transaksi Admin Pada halaman ini menampilkan halaman daftar transaksi sewa termasuk transaksi booking yang terdaftar di dalam website.Pada halaman ini terdapat informasi yang terdiri dari nama kost, alamat kost, nama penyewa, pemilik kost, tanggal bayar, status, status sewa, action lihat dan action hapus. Action lihat untuk melihat informasi dari transaksi tersebut. Hapus untuk menghapus transaksi tersebut. Terdapat fasilitas pencarian berdasarkan nama kost, alamat kost dan tanggal bayar. Terdapat juga fasilitas pengurutan berdasarkan nama kost, nama penyewa dan tanggal bayar terbaru.
196
Gambar 4. 54 Screenshot Panel Admin Pada halaman ini menampilkan halaman panel pengaturan untuk admin.Pada halaman ini terdapat fasilitas yang terdiri dari ubah slide untuk mengubah gambar slideshow; ubah kategori usaha untuk mengubah kategori tempat usaha; ubah forum untuk mengubah kategori forum; visitor untuk menampilkan daftar pengunjung; session untuk menampilkan daftar pengunjung yang login ke dalam website; dan pesan untuk menampilkan daftar pesan dari member website kepada admin.
197
Gambar 4. 55 Screenshot Forum Admin Pada halaman ini menampilkan halaman forum untuk admin. Pada halaman ini berupa kategori forum. Masing-masing kategori forum terdapat view thread untuk meihat isi thread; edit thread untuk mengubah isi thread atau menghapus thread; edit comment untuk menambah,mengubah,atau menghapus komentar terhadap thread; dan edit rating untuk menambah rating terhadap thread.
198 4.3.3 Perancangan Web Database Fisikal 4.3.3.1 Tabel Mekanisme Akses P1 = Map Kost P2 = Daftar Kost P3 = View Kost P4 = Edit Kost
User Visitor Pemilik Member Admin
P5=Edit Map Kost P6=Edit Fasilitas P7=Edit Foto Kost P8=Sewa Kost
P1
P2
P3
V V V V
V V V V
V V V V
P9=Edit Sewa Kost P10=Booking Kost P11= Edit Booking Kost
Page Tempat Kost P4 P5 P6 P7 P8 X V X V
X V X V
X V X V
X V X V
X V V V
P9
P10
P11
X V V V
X V V V
X V V V
Tabel 4. 39 Mekanisme Akses Tempat Kost (Edit = Insert/Update/Delete)
P1 = Daftar Usaha P2 = View Usaha
P3 = Edit Usaha P4 = Edit Map Usaha
Page Tempat Usaha P1 P2 P3 V V X V V X V V V V V V Tabel 4. 40 Mekanisme Akses Tempat Usaha (Edit = Insert/Update/Delete)
User Visitor Pemilik Member Admin
P1= Daftar Forum P2 = Daftar Thread P3 = Edit Thread P4 = Daftar Komentar
User Visitor Pemilik Member Admin
P4 X X V V
P5 = Edit Komentar P6 = Daftar Rating P7 = Edit Rating
P1
P2
X V V V
X V V V
Page Forum P3 P4 P5 X V V V
X V V V
X V V V
P6
P7
X V V V
X V V V
Tabel 4. 41 Mekanisme Akses Forum (Edit = Insert/Update/Delete)
199 P1=Daftar Profile
P2 = Edit Profile
Page Profile
User Visitor Pemilik Member Admin
P1
P2
X V V V
X V V V
Tabel 4. 42 Mekanisme Akses Profile (Edit = Insert/Update/Delete) P5 = Daftar Rating P6 = Edit Rating P7 = Daftar Komentar P8 = Edit Komentar
P1 = Daftar Forum P2 = Daftar Thread P3 = Tambah Thread P4 = Edit Thread
User
Page Forum P4 P5
P1
P2
P3
Visitor Pemilik Member
X V V
X V V
X V V
Admin
V
V
V V V V V V Tabel 4. 43 Mekanisme Akses Forum (Edit = Insert/Update/Delete)
X V V
X V V
P6
P7
P8
X V V
X V V
X V V
P1 = Registrasi P2 = Login
User Visitor Pemilik Member Admin
Page Registrasi dan Login P1 P2 V V V V
V V V V
Tabel 4. 44 Mekanisme Akses Registrasi dan Login
200 4.4Arsitektur Aplikasi Pada bagian ini akan dijelaskan perancangan web untuk web database yang dibuat. Perancangan web tersebut meliputi perancangan fisikal. 4.4.1 Arsitektur Client-Server
Gambar 4. 56 Arsitektur Three-Tier 4.4.1.1 First Tier (Layanan Presentasi) Layanan ini berfungsi menangani semua interaksi user dengan web dan tampilan web. Pada layanan ini dibangun menggunakan bahasa pemrograman client side meliputi HTML, JavaScript, CSS dan Jquery. 4.4.1.2 Second Tier (Layanan Bisnis) Layanan ini berfungsi memberlakukan aturan-aturan bisnis, memproses data, dan mengelola transaksi. Pada layanan ini dibangun menggunakan bahasa pemrograman server side meliputi PHP dan Framework CodeIgniter.
201 4.4.1.3 Third Tier (Layanan Data) Layanan data merupakan sebuah DBMS yang mewakili satu atau lebih penyimpanan data. Lapisan ini menyediakan permintaan data bagi web client dengan melalui lapisan layanan bisnis. Pada layanan ini dibangun menggunakan bahasa pemrograman basis data meliputi DBMS MySQL. 4.4.2 Arsitektur Fisikal Web Database
Gambar 4. 57 Arsitektur Web Database 4.4.2.1 Web Client •
Client harus menggunakan browser Google Chrome. Google Chrome sangat kompatibel dengan berbagai macam bahasa pemrograman client side terbaru seperti HTML5. Google Chrome memiliki performa yang cepat karena menyimpan cache setiap web yang diakses.
•
Client melakukan request yang terdiri dari POST, GET dan REQUEST ke Web Server melewati Firewall.
•
Pada client side dibangun dengan menggunakan bahasa pemrograman HTML, JavaScript, JQuery dan CSS.
•
Data dari web server akan diterjemahkan dan ditampilkan ke dalam client oleh bahasa pemrograman client side.
202 4.4.2.2 Web Server •
Server Side untuk web hosting menggunakan Apache dengan Operating System Ubuntu. Web hosting menggunakan Apache dengan Operating System Ubuntu tahan terhadap serangan virus ,worm dan trojan. Untuk uji coba Server Side menggunakan localhost Apache XAMPP. Localhost Apache XAMPP lebih ringan dan memiliki banyak kemampuan untuk menangani bahasa pemrograman server side, serta kemampuan untuk DBMS database seperti MySQL.
•
Server Side juga terdiri dari Web Apps seperti PHP dan Framework PHP CodeIgniter. Web Apps ini berfungsi menterjemahkan request dari client seperti POST, GET dan REQUEST.
•
Dari request client akan diterjemahkan oleh web apps untuk kemudian dibaca oleh DBMS database dan kemudian mengambil data dari database server.
•
Data yang diambil dari database server dikembalikan kepada client melewati web apps dan melewati web server.
4.4.2.3 Database Server •
Database server menggunakan DBMS MySQL. MySQL sangat mendukung relational database dan mendukung proses query yang dinamis dan kompleks.
•
Koneksi antar DBMS MySQL dengan PHP menggunakan MySQL PHP Connector, mirip seperti ODBC.
203 • Request dari Client akan diterjemahkan oleh PHP dan akan diteruskan ke DBMS untuk diambil data dari database server. Data tersebut akan dikembalikan lagi ke PHP dan diteruskan kembali ke client. 4.4.3 Rancangan Work Flow 4.4.3.1 Work Flow Visitor Visitor adalah halaman untuk pengunjung website. Ada 4 konten utama pada halaman Visitor, yaitu Tempat Kost, Tempat Usaha, Registrasi dan Login.
Gambar 4. 58 Work Flow Visitor
204 4.4.3.2 Work Flow Pemilik Login sebagai pemilik ke dalam website. Ada 4 konten utama pada halaman pemilik, yaitu Tempat Kost, Tempat Usaha, Forum dan Profile.
Gambar 4. 59 Work Flow Pemilik
205 4.4.3.3 Work Flow Member Login sebagai member ke dalam website. Ada 4 konten utama pada halaman member, yaitu Tempat Kost, Tempat Usaha, Forum dan Profile.
Gambar 4. 60 Work Flow Member
206 4.4.3.4 Work Flow Admin Login sebagai admin ke dalam website. Ada 6 konten utama pada halaman admin, yaitu Tempat Kost, Tempat Usaha, Member, Transaksi, Forum dan Panel.
Gambar 4. 61 Work Flow Admin
207 4.5Evaluasi Pada bagian ini akan dijelaskan evaluasi web dengan menggunakan program Yslow dan kuisioner online kepada pengguna. 4.5.1 Yslow Yslow adalah tool buatan Yahoo untuk optimasi web. Tool ini dapat mengetes dan mengukur kecepatan loading website. YSlow menilai performa suatu website berdasarkan sejumlah kriteria, yaitu antara lain
:
1. Jumlah HTTP Request. 2. Konten website. 3. Keberadaan file JavaScript dan stylesheet (CSS). 4. Ukuran dokumen web yang diakses. 5. Optimasi image dan sebagainya. Hasil yang didapatkan dari evaluasi menggunakan Yslow terhadap konten di dalam website mendapatkan nilai performa rata-rata B dan C. Nilai performa B berarti performa halaman tersebut baik, sedangkan nilai performa C berarti performa halaman tersebut cukup.Jumlah halaman yang mendapatkan nilai B sebanyak 13 halaman. Jumlah halaman yang mendapatkan nilai C sebanyak 11 halaman.
4.5.2 Kuisioner Kuisioner evaluasi diberikan kepada pengguna terbatas. Kuisioner diberikan melalui Facebook kepada teman-teman yang ada di daftar pertemenan. Jumlah responden yang terkumpul adalah 92. Berikut adalah hasil kuisioner evaluasi tersebut : 1. Apakah aplikasi ini mudah digunakan?
208 Aplikasi ini cukup mudah digunakan. Yang terbanyak menjawab aplikasi ini cukup mudah digunakan sebanyak 54 suara; yang menjawab sangat mudah digunakan sebanyak 36 suara, dan yang menjawab tidak mudah digunakan sebanyak 2 suara. 2. Bagaimana dengan tampilan dari aplikasi ini? Aplikasi ini tampilannya cukup. Yang terbanyak menjawab menjawab tampilan aplikasi cukup sebanyak 74 suara; yang menjawab tampilan aplikasi baik sebanyak 12 suara; dan yang menjawab menjawab tampilan aplikasi buruk sebanyak 6 suara. 3. Bagaimana dengan akses dari aplikasi ini? Aplikasi ini cukup mudah diakses. Yang terbanyak menjawab akses dari aplikasi cukup sebanyak 66 suara; yang menjawab akses dari aplikasi baik sebanyak 24 suara; yang menjawab akses dari aplikasi buruk sebanyak 2 suara. 4. Bagaimana dengan interaksi yang diberikan oleh aplikasi kepada pengguna? Interaksi yang diberikan oleh aplikasi ini cukup. Yang terbanyak menjawab interaksi yang diberikan aplikasi cukup sebanyak 67 suara; yang menjawab interaksi aplikasi baik sebanyak 25 suara; yang menjawab aplikasi buruk sebanyak 5 suara; 5. Apakah aplikasi Seputar BINUS memberikan informasi mengenai tempat kost yang ada di sekitar BINUS sesuai harapan anda? Aplikasi ini cukup memberikan informasi mengenai tempat kost. Yang terbanyak menjawab aplikasi ini cukup memberikan informasi mengenai tempat kost sebanyak 64 suara; yang menjawab sangat memberikan informasi sebanyak 23
209 suara; yang menjawab tidak memberikan informasi mengenai tempat kost sebanyak 5 suara; 6. Apakah fitur pada aplikasi Seputar BINUS membantu anda dalam mencari tempat kost? Aplikasi ini cukup membantu dalam mencari tempat kost. Yang terbanyak menjawab aplikasi ini cukup membantu mencari tempat kost sebanyak 51 suara; yang menjawab sangat membantu mencari tempat kost sebanyak 38 suara; yang menjawab tidak membantu mencari tempat kost sebanyak 3 suara. 7. Menurut anda, fitur apa yang paling bermanfaat pada aplikasi Seputar BINUS? Fitur paling bermanfaat adalah Map Tempat Kos. Yang paling tinggi adalah fitur Map Tempat Kost; yang kedua adalah fitur Gambar Tempat Kost; yang ketiga adalah fitur Informasi Tempat Usaha; yang keempat fitur Transaksi Sewa/Booking; dan yang terakhir adalah fitur Forum; 8. Apakah anda tertarik untuk terus menggunakan aplikasi Seputar BINUS dalam mencari informasi tempat kost di sekitar BINUS? Sebagian besar tertarik untuk menggunakan aplikasi ini. Yang menjawab tertarik untuk menggunakan aplikasi ini sebanyak 88 suara; dan sisanya tidak tertarik sebanyak 4 suara. Berdasarkan hasil kuisioner evaluasi di atas maka dapat ditarik kesimpulan bahwa aplikasi Seputar BINUS adalah Cukup. Cukup mudah digunakan, cukup dari tampilan, cukup dengan akses, cukup interaksi yang diberikan, cukup memberikan informasi tempat kost, dan cukup membantu dengan fitur yang ada dari aplikasi ini. Sebagian besar responden tertarik untuk menggunakan aplikasi ini dalam mencari informasi tempat kost di sekitar BINUS.
210
4.5.3 Kekurangan 1. Dalam pengembangan selanjutnya untuk aplikasi komunitas kost ini sebaiknya ditambahkan fitur yang lebih lengkap pada bagian forum yaitu reply/balas komentar antara member yang terdaftar. 2. Dalam pengembangan selanjutnya untuk aplikasi komunitas kost ini sebaiknya ditambahkan fitur yang lebih lengkap pada bagian transaksi penyewaan tempat kost yaitu adanya fitur pemilihan kamar kost oleh member. 3. Dalam pengembangan selanjutnya untuk aplikasi komunitas kost ini sebaiknya ditambahkan fitur yang lebih lengkap pada bagian pencarian tempat kost. 4. Dalam pengembangan selanjutnya untuk aplikasi komunitas kost ini sebaiknya ditambahkan fitur yang lebih lengkap pada bagian tempat usaha yaitu adanya fitur penambahan foto tempat usaha oleh member dan fitur peta tempat usaha. 5. Dalam pengembangan selanjutnya untuk aplikasi komunitas kost ini sebaiknya diperketat dari sisi keamanan terhadap penambahan data baru dan desain tampilannya diubah menjadi lebih baik.