BAB III ANALISA DAN DESAIN SISTEM
III.1. Analisis Masalah Masalah-masalah yang sering dihadapi oleh PT. Ada Jadi Mobil adalah kesulitan dalam pencatatan data penyewaan dan pencatatan laporan dan seringnya terjadi kesalahan dalam pencatatan data mobil yang telah disewa yang mengakibatkan tidak kestabilan daftar penyewaan mobil yang diterapkan oleh perusahaan. Hal ini mendorong oleh PT. Ada Jadi Mobil untuk dapat memberikan pelayanan yang cepat dan akurat serta efisien sehingga dapat bersaing dengan perusahaan-perusahaan lainnya. Dari uraian permasalahan diatas maka penulis mencoba untuk merancang suatu sistem informasi dalam penyewaan mobil sehingga dapat menghasilkan laporan perhitungan ataupun pencatatan data penyewaan mobil.
III.2. Desain Sistem III.2.1.
Use Case Diagram Dalam penyusunan suatu program diperlukan suatu model data yang
berbentuk diagram yang dapat menjelaskan suatu alur proses sistem yang akan di bangun. Dalam penulisan skripsi ini ini penulis menggunakan metode UML yang dalam metode itu penulis menerapkan diagram Use Case. Maka digambarlah suatu bentuk diagram Use Case yang dapat dilihat pada gambar III.1.
29
30
SISTEM INFORMASI RENTAL MOBIL PADA PT. ADA JADI MOBIL <<extend>>
<
>
Login
<>
Mengolah data mobil Mengolah data driver
<<extend>>
<> <>
Admin
<<extend>>
<<extend>> <>
Melihat laporan driver Melihat laporan member
<> Mengolah data member
Melihat laporan mobil
Melihat laporan penyewaan
Mengolah data sewa <>
konfirmasi
Mengolah data pengembalian <> <>
Login
<>
Melakukan pemesanan penyewaan
Mengisi buku tamu
<> <<extend>>
Logout Member
Melihat laporan penyewaan
Membaca Berita Melihat daftar harga sewa
Pengunjung
Gambar III.1. Use Case Sistem Informasi Rental Mobil Pada PT. Ada Jadi Mobil
31
III.2.2. Activity diagrams Activity diagrams menggambarkan berbagai alir aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi. 1. Activity Diagram Form Input Data Login Activity diagram form input data login dapat dilihat pada Gambar III.2. Sebagai berikut :
Click Login Tidak Isi Username dan password
Validasi Database Ya
Menu Utama
Gambar III.2. Activity Diagram Halaman Login
32
2. Activity Diagram Form Data Member Activity diagram form data member dapat dilihat pada Gambar III.3. Sebagai berikut :
Form Data Member
Daftar
Edit
Pilih Data
Isi Data
Isi Data
Click Delete
Click Insert Record
Edit Data Penyewa
tidak ya
Gambar III.3 Activity Diagram Input Data Member
33
3. Activity Diagram Form Input Data Mobil Activity diagram form input data mobil dapat dilihat pada Gambar III.4. Sebagai berikut :
Form Data Mobil
Tambah
Edit
Pilih Data
Isi Data
Isi Data
Click Delete
Click Simpan Data
Edit Data Mobil
tidak ya
Gambar III.4. Activity Diagram Form Input Data Mobil
34
4. Activity Diagram Form Driver Activity diagram form driver dapat dilihat pada Gambar III.5. Sebagai berikut :
Form Driver
Input Data
Edit
Pilih Data
Isi Data
Isi Data
Konfirm
Click Simpan Data
Edit Data Penyewa
tidak ya
Update
Gambar III.5. Activity Diagram Form Driver
III.2.4 Sequence Diagram Sequence Diagram menggambarkan perilaku pada sebuah skenario, diagram ini menunjukkan sejumlah contoh objek dan message (pesan) yang diletakkan diantara objek-objek ini di dalam use case, berikut gambar sequence diagram :
35
a.Sequence Diagram Login Sequence diagram login dapat dilihat pada Gambar III.6. Sebagai berikut :
Gambar III.6. Sequence Diagram Form Login
36
b. Sequence Diagram Member Sequence diagram member dapat dilihat pada Gambar III.7. Sebagai berikut :
Gambar III.7. Sequence Diagram Form Member
37
c. Sequence Proses Penyewaan Sequence diagram form penyewaan dapat dilihat pada Gambar III.8. Sebagai berikut :
Gambar III.8.Sequence Diagram Form Penyewaan
38
III.2.5.
Desain Database Untuk membuat database Sistem Informasi Rental Mobil pada PT. Ada
Jadi Mobil penulis menggunakan PHP Mysql 1. Normalisasi Normalisasi merupakan sebuah teknik dalam desain logika sebuah database, teknik pengelompokan atribut dari suatu relasi sehingga membentuk struktur relasi yang baik (tanpa redundansi). a. unnormalisasi Kode_Member No_KTP Nama Alamat Telepon Username Password Kode_Mobi No_polisi No_mesin Merk Type Tarif_harian Tarif_mingguan Tarif_bulanan Status Kode_driver Nama_driver Alamat Telepon Kode_sewa Kode_member Tanggal_pesan Tanggal_sewa Kode_driver Status Kode_detail Kode_sewa Kode_mobil Jenis_tarif Lama Biaya Username Password Nama_admin Kode_pengembalian Kode_detail Keterlambatan Denda Total_denda
Gambar III.9. Bentuk Tidak Normal
39
b. Normalisasi 1NF Kode_member No_KTP Nama Alamat Telepon Username Password Kode_sewa Kode_member Tanggal_pesan Tanggal_sewa Kode_driver Status
Kode_mobil No_polisi No_mesin Merk Type Tarif_harian Tarif_mingguan Tariff_bulanan Status Kode_driver Nama_driver Alamat Telepon
Kode_pengembalian Kode_detail Keterlambatan Denda Total_denda
Gambar III.10. Normalisasi Tahap 1 (1 NF)
c. Normalisasi 2NF
Kode_member No_KTP Nama Alamat Telepon Username Password Kode_sewa Kode_member Tanggal_pesan Tanggal_sewa Kode_driver Status
Kode_driver Nama_driver Alamat Telepon
Kode_sewa Kode_member Tanggal_pesan Tanggal_sewa Kode_driver Status
Gambar III.11. Normalisasi Tahap 2 (2 NF)
Kode_pengembalian Kode_detail Keterlambatan Denda Total_denda
40
c. Normalisasi 3NF *Kode_member No_KTP Nama Alamat Telepon Username Password
*Username Password Nama_admin
*Kode_mobil No_polisi No_mesin Merk Type Tarif_harian Tarif_mingguan Tariff_bulanan Status
*Kode_detail Kode_sewa Kode_mobil Jenis_tarif Lama Biaya
*Kode_driver Nama_driver Alamat Telepon
*Kode_sewa Kode_member Tanggal_pesan Tanggal_sewa Kode_driver Status
*Kode_pengembalian Kode_detail Keterlambatan Denda Total_denda
Gambar III.12. Normalisasi Tahap 3 (3 NF)
2. Desain Tabel Perancangan struktur database adalah untuk menentukan file database yang digunakan seperti field, tipe data, ukuran data. Sistem ini dirancang dengan menggunakan database MySql
41
Berikut adalah desain database dan tabel dari sistem yang dirancang.
1. Struktur Tabel Admin Tabel admin digunakan untuk menyimpan data Id_User, Username, Password, Nama, selengkapnya mengenai struktur tabel ini dapat dilihat pada tabel III.1 di bawah ini: Tabel III.1 Rancangan Tabel Admin Nama Database
arif_rental
Nama Tabel
admin
No
Nama Field
Tipe Data
Boleh Kosong
Kunci
1.
Id_User
int(11)
Tidak
Primary Key
2.
Username
varchar(12)
Tidak
Unique
3.
Password
varchar(12)
Tidak
-
4.
Nama
varchar(25)
Tidak
-
2. Struktur Tabel Berita Tabel berita digunakan untuk menyimpan data ID_Berita, Creator, Email, Tanggal, Judul, Isi, selengkapnya mengenai struktur tabel ini dapat dilihat pada tabel III.2 di bawah ini: Tabel III.2 Rancangan Tabel Berita Nama Database
arif_rental
Nama Tabel
berita
No
Nama Field
Tipe Data
Boleh Kosong
Kunci
1.
ID_Berita
int(11)
Tidak
Primary Key
2.
Creator
varchar(25)
Tidak
-
3.
Email
varchar(25)
Tidak
-
42
4.
Tanggal
date
Tidak
-
5.
Judul
text
Tidak
-
6.
Isi
text
Tidak
-
3. Struktur Tabel Berita_komentar Tabel berita_komentar digunakan untuk menyimpan data ID_Komentar, ID_Berita, Komentator, Email, Tanggal, Komentar, selengkapnya mengenai struktur tabel ini dapat dilihat pada tabel III.3 di bawah ini: Tabel III.3 Rancangan Tabel Berita_komentar Nama Database
arif_rental
Nama Tabel
berita_komentar
No
Nama Field
Tipe Data
Boleh Kosong
Kunci
1.
ID_Komentar
int(11)
Tidak
Primary Key
2.
ID_Berita
int(11)
Tidak
Foreign Key
3.
Komentator
varchar(25)
Tidak
-
4.
Email
varchar(25)
Tidak
-
5.
Tanggal
date
Tidak
-
6.
Komentar
text
Tidak
-
4. Struktur Tabel Buku_tamu Tabel buku_tamu digunakan untuk menyimpan data ID_Buku_Tamu, Nama_Pengirim, Email, Buku_Tamu, selengkapnya mengenai struktur tabel ini dapat dilihat pada tabel III.4 di bawah ini:
43
Tabel III.4 Rancangan Tabel Buku_tamu Nama Database
arif_rental
Nama Tabel
buku_tamu
No
Nama Field
Tipe Data
Boleh Kosong
Kunci
1.
ID_Buku_Tamu
int(11)
Tidak
Primary Key
2.
Nama_Pengirim
varchar(25)
Tidak
-
3.
Email
varchar(25)
Tidak
-
4.
Buku_Tamu
text
Tidak
-
5. Struktur Tabel Detail Tabel detail digunakan untuk menyimpan data Kode_Detail, Kode_Sewa, Kode_Mobil, Biaya, selengkapnya mengenai struktur tabel ini dapat dilihat pada tabel III.5 di bawah ini: Tabel III.5 Rancangan Tabel Detail Nama Database
arif_rental
Nama Tabel
detail
No
Nama Field
Tipe Data
Boleh Kosong
Kunci
1.
Kode_Detail
int(11)
Tidak
Primary Key
2.
Kode_Sewa
varchar(5)
Tidak
Foreign Key
3.
Kode_Mobil
varchar(5)
Tidak
Foreign Key
4.
Biaya
int(11)
Tidak
-
6. Struktur Tabel Driver Tabel driver digunakan untuk menyimpan data Kode_Driver, Nama_Driver, Alamat, Telepon, selengkapnya mengenai struktur tabel ini dapat dilihat pada tabel III.6 di bawah ini:
44
Tabel III.6 Rancangan Tabel Driver Nama Database
arif_rental
Nama Tabel
driver
No
Nama Field
Tipe Data
Boleh Kosong
Kunci
1.
Kode_Driver
varchar(5)
Tidak
Primary Key
2.
Nama_Driver
varchar(25)
Tidak
-
3.
Alamat
text
Tidak
-
4.
Telepon
varchar(12)
Tidak
-
7. Struktur Tabel Member Tabel member digunakan untuk menyimpan data Kode_Member, No_KTP, Nama, Alamat, Telepon, Username, Password, selengkapnya mengenai struktur tabel ini dapat dilihat pada tabel III.7 di bawah ini: Tabel III.7 Rancangan Tabel Member Nama Database
arif_rental
Nama Tabel
member
No
Nama Field
Tipe Data
Boleh Kosong
Kunci
1.
Kode_Member
varchar(5)
Tidak
Primary Key
2.
No_KTP
varchar(16)
Tidak
-
3.
Nama
varchar(25)
Tidak
-
4.
Alamat
text
Tidak
-
5.
Telepon
varchar(12)
Tidak
-
6.
Username
varchar(10)
Tidak
-
7.
Password
varchar(10)
Tidak
-
45
8. Struktur Tabel Mobil Tabel mobil digunakan untuk menyimpan data Kode_Mobil, No_Polisi, No_Mesin, Merk, Tipe, Tarif_Harian, Tarif_Mingguan, Tarif_Bulanan, Status, selengkapnya mengenai struktur tabel ini dapat dilihat pada tabel III.8 di bawah ini: Tabel III.8 Rancangan Tabel Mobil Nama Database
arif_rental
Nama Tabel
mobil
No
Nama Field
Tipe Data
Boleh Kosong
Kunci
1.
Kode_Mobil
varchar(5)
Tidak
Primary Key
2.
No_Polisi
varchar(9)
Tidak
Unique
3.
No_Mesin
varchar(16)
Tidak
-
4.
Merk
varchar(25)
Tidak
-
5.
Tipe
varchar(25)
Tidak
-
6.
Tarif_Harian
int(11)
Tidak
-
7.
Tarif_Mingguan
int(11)
Tidak
-
8.
Tarif_Bulanan
int(11)
Tidak
-
9.
Status
varchar(25)
Tidak
-
9. Struktur Tabel Pengembalian Tabel pengembalian digunakan untuk menyimpan data Kode_Kembali, Kode_Sewa, Tanggal_Kembali, Keterlambatan, Denda, selengkapnya mengenai struktur tabel ini dapat dilihat pada tabel III.9 di bawah ini:
46
Tabel III.9 Rancangan Tabel Pengembalian Nama Database
arif_rental
Nama Tabel
Pengembalian
No
Nama Field
Tipe Data
Boleh Kosong
Kunci
1.
Kode_Kembali
varchar(5)
Tidak
Primary Key
2.
Kode_Sewa
varchar(5)
Tidak
Foreign Key
3.
Tanggal_Kembali
date
Tidak
-
4.
Keterlambatan
int(11)
Tidak
-
5.
Denda
int(11)
Tidak
-
10. Struktur Tabel Sewa Tabel sewa digunakan untuk menyimpan data Kode_Sewa, Kode_Member, Tanggal_Pesan, Tanggal_Sewa, Tanggal_Kembali, Kode_Driver, Jenis_Tarif, Lama_Sewa, Status, selengkapnya mengenai struktur tabel ini dapat dilihat pada tabel III.10 di bawah ini: Tabel III.10 Rancangan Tabel Sewa Nama Database
arif_rental
Nama Tabel
sewa
No
Nama Field
Tipe Data
Boleh Kosong
Kunci
1.
Kode_Sewa
varchar(5)
Tidak
Primary Key
2.
Kode_Member
varchar(5)
Tidak
Foreign Key
3.
Tanggal_Pesan
date
Tidak
-
4.
Tanggal_Sewa
date
Tidak
-
5.
Tanggal_Kembali
date
Tidak
-
6.
Kode_Driver
varchar(5)
Tidak
Foreign Key
7.
Jenis_Tarif
varchar(15)
Tidak
-
47
8.
Lama_Sewa
int(11)
Tidak
-
9.
Status
varchar(25)
Tidak
-
III.2.6. Desain User Interface III.2.6.1. Desain Input Perancangan input merupakan masukan yang penulis rancang guna lebih memudahkan dalam entry data. Entry data yang dirancang akan lebih mudah dan cepat dan meminimalisir kesalahan penulisan dan memudahkan perubahan. Perancangan input tampilan yang dirancang adalah sebagai berikut : 1. Perancangan Input Form Login Perancangan input form login berfungsi untuk verifikasi pengguna yang berhak menggunakan sistem. Adapun rancangan form login dapat dilihat pada Gambar III.13. sebagai berikut : Username
Password
Login
Gambar III.13. Rancangan Input Form Login 2. Rancangan Form Menu Utama Rancangan input menu home berfungsi untuk menampilkan tampilan utama dari user interface. Adapun rancangan menu utama dapat dilihat pada Gambar III.14. sebagai berikut
48
HEADER
Halaman Beranda
TEXT
Daftar Harga Buku Tamu Berita Terkini Login Administrator Tentang Kami
FOOTER
Gambar III.14. Rancangan Form Menu Utama
3. Rancangan Form Daftar Harga Mobil Perancangan input form daftar harga mobil merupakan form untuk penyimpanan data-data mobil. Adapun bentuk form daftar harga mobil dapat dilihat pada Gambar III.15 Sebagai berikut :
49
HEADER
Halaman Beranda
No
Gambar
Merk/Type/No Polisi/No Mesin
Tarif
Status
Daftar Harga Buku Tamu Berita Terkini Login Administrator Tentang Kami
FOOTER
Gambar III.15. Rancangan Input Form Daftar Harga Mobil
4. Rancangan Form Input Data Member Perancangan input form input data member merupakan form untuk penyimpanan data-data member. Adapun bentuk form input data member dapat dilihat pada Gambar III.16 Sebagai berikut :
50
HEADER Halaman Beranda
No
No. KTP
Nama
Alamat
Telepon
Proses
Daftar Harga Buku Tamu Berita Terkini Form Mobil Form Driver Form Member Form Penyewaan Form Pengembalian Data Buku Tamu Data Berita Laporan Mobil Laporan Driver Laporan Member Laporan Penyewaan Laporan Pengembalian Keluar/Logout Tentang Kami
FOOTER
Gambar III.16. Rancangan Input Form Data Member
5. Rancangan Form Driver Perancangan form Driver merupakan form untuk penyimpanan datadata driver. Adapun bentuk form input data driver dapat dilihat pada Gambar III.17 Sebagai berikut :
51
HEADER Halaman Beranda
No
Nama Driver
Alamat
Telepon
Proses
Daftar Harga Buku Tamu Berita Terkini Form Mobil Form Driver Form Member Form Penyewaan Form Pengembalian Data Buku Tamu Data Berita Laporan Mobil Laporan Driver Laporan Member Laporan Penyewaan Laporan Pengembalian Keluar/Logout Tentang Kami
FOOTER
Gambar III.17. Rancangan Input Form Driver
6. Rancangan Form Penyewaan Perancangan
form penyewaan merupakan form untuk penyimpanan
data-data penyewaan. Adapun bentuk form penyewaan dapat dilihat pada Gambar III.18 Sebagai berikut :
52
HEADER Halaman Beranda
No
Member
Daftar Harga
Tanggal Pesan
Tanggal Sewa
Tanggal Kembali
Driver
Lema Sewa
Jenis Tarif
Status
Buku Tamu Berita Terkini Form Mobil Form Driver Form Member Form Penyewaan Form Pengembalian Data Buku Tamu Data Berita Laporan Mobil Laporan Driver Laporan Member Laporan Penyewaan Laporan Pengembalian Keluar/Logout Tentang Kami
FOOTER
Gambar III.18. Rancangan Input Form Penyewaan
6. Rancangan Input Form Pengembalian Perancangan
input
form
pengembalian
merupakan form
untuk
penyimpanan data-data pengembalian. Adapun bentuk form pengembalian dapat dilihat pada Gambar III.19 Sebagai berikut :
Proses
53
HEADER Halaman Beranda
No Kode Sewa
Tanggal Kembali
Keterlambatan
Denda
Daftar Harga Buku Tamu Berita Terkini Form Mobil Form Driver Form Member Form Penyewaan Form Pengembalian Data Buku Tamu Data Berita Laporan Mobil Laporan Driver Laporan Member Laporan Penyewaan Laporan Pengembalian Keluar/Logout Tentang Kami
FOOTER
Gambar III.19. Rancangan Input Form Pengembalian
III.3.2. Desain Output Desain sistem ini berisikan pemilihan menu dan hasil pencarian yang telah dilakukan. Adapun bentuk rancangan output dari Sistem Informasi Penyewaan Mobil pada PT. Ada Jadi Mobil ini adalah sebagai berikut :
Proses
54
1.
Rancangan Output Laporan Mobil Rancangan output laporan data mobil berfungsi menampilkan data-data
jenis mobil. Adapun rancangan output laporan mobil dapat dilihat pada Gambar III.20. sebagai berikut :
Print
Cancel
PT. ADA JADI MOBIL Jl. Jendral Gatot Subroto No.18 Medan Telepon: 061-4146757 Fax:061-4527849 No x
Merk/Type/No Polisi/No Mesin xxxx
Tarif Sewa xxxx
Status xxxx
Gambar III.20. Rancangan Output Laporan Data Mobil 2.
Rancangan Output Laporan Data Driver Rancangan output laporan data driver berfungsi menampilkan data-data
driver. Adapun rancangan output laporan data driver dapat dilihat pada Gambar III.21. sebagai berikut :
55
Print
Cancel
PT. ADA JADI MOBIL Jl. Jendral Gatot Subroto No.18 Medan Telepon: 061-4146757 Fax:061-4527849 No x
Nama Driver xxxx
Alamat xxxx
Telepon xxxx
Gambar III.21. Rancangan Output Laporan Data Driver
3.
Rancangan Output Laporan Data Member Rancangan output laporan data member berfungsi menampilkan data-
data member. Adapun rancangan output laporan data member dapat dilihat pada Gambar III.22. sebagai berikut :
Print
Cancel
PT. ADA JADI MOBIL Jl. Jendral Gatot Subroto No.18 Medan Telepon: 061-4146757 Fax:061-4527849 No x
No. KTP xxxx
Nama xxxx
Alamat xxxx
Gambar III.22. Rancangan Output Laporan Data Member
Telepon xxxx
56
4.
Rancangan Output Laporan Data Penyewaan Rancangan output laporan data sewa berfungsi menampilkan data-data
penyewaan. Adapun rancangan output laporan data sewa dapat dilihat pada Gambar III.23. sebagai berikut :
Print
Cancel
PT. ADA JADI MOBIL Jl. Jendral Gatot Subroto No.18 Medan Telepon: 061-4146757 Fax:061-4527849 No
Kode Sewa
Tanggal Sewa
Penyewa
x
xxxx
xxxx
xxxx
Total Biaya Sewa xxxx
Gambar III.23. Rancangan Output Laporan Data Penyewaan
5.
Rancangan Output Laporan Data Pengembalian Rancangan output laporan data pengembalian berfungsi menampilkan
data-data pengembalian mobil. Adapun rancangan output laporan data pengembalian dapat dilihat pada Gambar III.24. sebagai berikut:
57
Print
Cancel
PT. ADA JADI MOBIL Jl. Jendral Gatot Subroto No.18 Medan Telepon: 061-4146757 Fax:061-4527849 No
TglSewa
TglKembali
Tgldikembalikan
Penyewa
x
xxxx
xxxx
xxxx
xxxx
Total Biaya Sewa xxxx
keterlambatan
Denda
xxxx
xxxx
Gambar III.24. Rancangan Output Laporan Data Pengembalian