DOKUMEN PEMBANGUNAN PERANGKAT LUNAK <Sistem Sewa Mobil> untuk: <#nama User> Dipersiapkan oleh: Mirella Tri Ratnasari (095314003) Rafaela Rosi Prihaningrum (095314012) Setyo Resmi Probowati (095314039) Fiona Endah Kwa (095314041)
Program Studi Teknik Informatika – Universitas Sanata Dharma Yogyakarta Nomor Dokumen
Halaman
DPPL-DOC-2009
1/29
Program Studi Teknik Informatika USD
Revisi
0
DAFTAR PERUBAHAN Revisi
Deskripsi
A
B
C
D
E
F
G
2
Tgl: 16 April 2009
INDEX TGL
-
A
B
C
D
E
F
Ditulis oleh Diperiksa oleh Disetujui oleh Daftar Halaman Perubahan Halaman
Revisi
Halaman
3
Revisi
G
Daftar Isi 1 Pendahuluan................................................................................................................................. 6 1.1 Tujuan Penulisan Dokumen .................................................................................................. 6 1.2 Lingkup Masalah ................................................................................................................... 6 1.3 Aturan Penomoran............................................................... Error! Bookmark not defined. 1.4 Referensi................................................................................................................................ 6 1.5 Deskripsi Umum Dokumen (Ikhtisar) ................................................................................... 6 2 Kebutuhan Perangkat Lunak ........................................................................................................ 7 2.1 Deskripsi Umum Sistem........................................................................................................ 7 2.2 Fitur Utama Perangkat Lunak ............................................................................................... 7 2.2.1 Kebutuhan Fungsional ..................................................................................................... 7 2.2.2 Kebutuhan Non Fungsional ............................................................................................. 8 2.3 Spesifikasi Tambahan ........................................................................................................... 8 2.4 Glossary................................................................................................................................. 8 3 Model Use Case .......................................................................................................................... 8 3.1 Diagram Use Case ................................................................................................................. 8 3.2 Definisi Actor ........................................................................................................................ 8 3.3 Definisi Use Case .................................................................................................................. 9 3.4 Skenario Use Case ................................................................................................................. 9 3.4.1 Use Case : Login ......................................................................................................................... 9 3.4.5 Use Case : Mencatat Data Ketersediaan Mobil ..................................................................... 13 3.4.6 Use Case : Membuat Jadwal Peminjaman Mobil ................................................................. 14 3.4.7 Use Case : Mencatat Data Pengembalian Mobil ................................................................... 15 4 Model Analisis .......................................................................................................................... 16 4.1 Realisasi Use Case Tahap Analisis ..................................................................................... 16 4.1.1 Use Case : Login ................................................................................................................... 16 Diagram Squence ........................................................................................................................... 17 4.1.3 Use Case : Mencatat Data Diri Penyewa .............................................................................. 21 Diagram Squence ........................................................................................................................... 22 4.3 Kelas Analisis ...................................................................................................................... 32 4.4 Paket Analisis ...................................................................................................................... 39 4.4.1 Identifikasi Paket Analisis ............................................................................................. 39 4.4.2 Identifikasi Kelas Analisis tiap Paket ............................................................................ 39 4.5 Deskripsi Arsitektur ............................................................................................................ 40 5.1 Realisasi Use Case Tahap Perancangan .............................................................................. 40 5.2 Diagram Kelas Keseluruhan................................................................................................ 42 5.3 Kelas Perancangan ................................................................................................................... 42 5.3.1 Operasi dan Atribut ....................................................................................................... 43 Kelas DataPenyewa.java ............................................................................................................ 45 SignUpAddController.java ......................................................................................................... 46 5.3.2 Algoritma/Query............................................................................................................ 48 5.3.3 Diagram Statechart ........................................................ Error! Bookmark not defined. 5.4 Perancangan Basis Data ...................................................................................................... 60 5.5 Perancangan Antarmuka ..................................................................................................... 60 4
5.6 Coding Standard dan Naming Convention (Dikosongkan dulu)Error! Bookmark not defined. 5.7 Deployment Diagram .......................................................... Error! Bookmark not defined. 6 Implementasi .............................................................................................................................. 61 6.1 Implementasi Kelas ............................................................................................................. 61 6.2 Implementasi Basis Data ..................................................................................................... 62 6.3 Implementasi Antarmuka .................................................................................................... 62 7 Pengujian.................................................................................................................................... 63 7.1 Rencana dan Prosedur Pengujian ........................................................................................ 63 7.1.1 Rencana Pengujian ........................................................................................................ 63 7.1.2 Prosedur Pengujian ........................................................ Error! Bookmark not defined. 7.2 Kasus Uji ............................................................................................................................. 63 7.2.1 Pengujian Use Case ........................................................................... 63 7.3 Defect dan Status Perbaikan ................................................................................................ 70 7.4 Evaluasi Pengujian .............................................................. Error! Bookmark not defined. 8 Lampiran .................................................................................................................................... 71
5
1 1.1
Pendahuluan Tujuan Penulisan Dokumen
Tujuan penulisan dokumen ini yaitu untuk memberi informasi mengenai pencataan data diri penyewa mobil, pencatatan biaya pembayaran sewa mobil, pencatatan tanggal peminjaman dan pengembalian sewa mobil, pencetakan slip tanda bukti pembayaran transaksi penyewaan mobil, pencatatan denda keterlambatan pengembalian penyewaan mobil. 1.2
Lingkup Masalah Dokumen ini berisi penjelasan mengenai sistem informasi penyewaan mobil yang meliputi: ● pencatatan data diri penyewa mobil ● pencatatan data penyewaan mobil ● pencatatan data ketersediaan mobil ● pembuatan jadwal penyewaan mobil ● pencatatan data pengembalian mobil 1.3 Referensi Template spesifikasi kebutuhan perangkat lunak dan project charter.
1.4
Deskripsi Umum Dokumen (Ikhtisar) Bab satu yaitu pendahuluan, terdiri dari tujuan penulisan dokumen, lingkup masalah, aturan penulisan, referensi dan deskripsi umum dokumen. Bab dua yaitu kebutuhan perangkat lunak, terdiri dari deskripsi umum sistem, fitur utama perangkat lunak, spesifikasi tambahan dan glossary. Fitur utama perangkat lunak mencakup kebutuhan fungsional dan kebutuhan non fungsional. Bab tiga yaitu model use case, terdiri dari diagram use case, definisi aktor, definisi use case dan skenario use case. Bab empat yaitu model analisis, terdiri dari realisasi use case tahap analisis, diagram kelas keseluruhan, kelas analisis, paket analisis dan deskripsi arsitektur. Paket analisis mencakup identifikasi paket analisis dan identifikasi kelas analisis tiap paket. Bab lima yaitu, model perancangan, terdiri dari realisasi use case tahap perancangan, diagram kelas keseluruhan, kelas perancangan, perancangan basis data, perancangan antarmuka, coding standard dan naming convention serta deployment diagram. Kelas perancangan mencakup operasi dan atribut, algoritma/query dan diagram statechart. Bab enam yaitu implementasi, terdiri dari implementasi kelas, implementasi basisdata dan implementasi antarmuka. Bab tujuh yaitu pengujian, terdiri dari rencana dan prosedur pengujian, kasus uji, defect dan status perbaikan serta evaluasi pengujian. Rencana dan prosedur pengujian mencakup rencana pengujian dan prosedur pengujian. Kasus uji mencakup pengujian use case. Bab delapan yaitu lampiran. 6
2
Kebutuhan Perangkat Lunak
2.1
Deskripsi Umum Sistem
Software yang akan dibuat membutuhkan software lain yang dapat terhubung dengan database, untuk membantu proses pencatatan. Software ini berguna untuk membantu mencatat data diri penyewa dan data mobil. Software ini dirancang dengan desain yang mudah digunakan oleh siapapun. 2.2
Fitur Utama Perangkat Lunak Beberapa fitur yang akan di berikan oleh sistem ini : ● ● ● ● ●
2.2.1
Pencatatan data diri penyewa Pencatatan data penyewaan mobil Pencatatan data ketersediaan mobil Pencatatan data pengembalian mobil Pembuatan jadwal penyewaan mobil Kebutuhan Fungsional
Operator Kode
Kebutuhan Fungsional
Keterangan
SRS-K-001
Operator melakukan login sebelum masuk ke sistem
Merupakan tampilan awal saat operator akan masuk ke dalam sistem
SRS-K-002
Operator bertugas untuk Merupakan tampilan yang digunakan untuk mencatat data diri penyewa memasukkan data diri penyewa mobil untuk mobil selanjutnya disimpan dalam database
SRS-K-003
Operator mencatat mobil
SRS-K-004
Operator bertugas untuk mencatat data ketersediaan mobil
Merupakan tampilan yang berisi informasi mengenai data kendaraan yang dapat disewa
SRS-K-005
Operator bertugas untuk mencatat data pengembalian mobil
Merupakan tampilan yang berisi data pengembalian mobil
SRS-K-006
Operator bertugas untuk membuat jadwal penyewaan mobil
Merupakan tampilan yang berisi data jenis mobil yang disewa, nama penyewa, dan tanggal sewanya
bertugas untuk Merupakan tampilan yang digunakan untuk data penyewaan memasukkan data penyewaan mobil untuk selanjutnya disimpan dalam database
7
2.2.2
Kebutuhan Non Fungsional
SRS-NF-001 Sistem memberikan respon terhadap aksi pengguna dalam waktu kurang dari 5 detik. 2.3
Spesifikasi Tambahan
2.4
Glossary Software : Sekumpulan data elektronik yang disimpan dan diatur oleh komputer, data elektronik yang disimpan oleh komputer itu dapat berupa program atau instruksi yang akan menjalankan suatu perintah. Melalui sofware atau perangkat lunak inilah suatu komputer dapat menjalankan suatu perintah. Cash drawer atau laci uang elektronik adalah drawer atau laci yang berisi rak-rak yang disebut bill tray dan coin tray, digunakan untuk penyimpanan uang berdasarkan nominal uang. Bill tray adalah untuk uang kertas dan coin tray untuk uang logam. Mini printer atau POS printer adalah jenis printer yang digunakan untuk keperluan aplikasi yang berhubungan dengan mesin kasir atau komputer kasir. Ukurannya relatif kecil, kecepatan cetak tinggi, menggunakan kertas struk model Roll. Sistem adalah sekumpulan unsur / elemen yang saling berkaitan dan saling mempengaruhi dalam melakukan kegiatan bersama untuk mencapai suatu tujuan.
●
●
●
●
3
Model Use Case
3.1
Diagram Use Case
3.2
Definisi Actor Nama Aktor
Deskripsi tugas
8
Operator
● ● ● ● ● ●
3.3
Login Sign Up Mencatat data diri penyewa mobil Mencatat data penyewaan mobil Mencatat data ketersediaan mobil Membuat jadwal penyewaan mobil Mencatat data pengembalian mobil
Definisi Use Case
No
Use Case
Deskripsi
1
Login
Operator bisa masuk ke dalam sistem dengan menginputkan username dan password yang sesuai
2
Sign Up
Operator bisa membuat username dan password baru untuk login ke sistem
3
Mencatat data diri penyewa mobil
Operator memasukkan data diri penyewa mobil dan disimpan kedalam sistem
4
Mencatat data penyewaan mobil
Operator memasukkan id penyewa dan memasukkan id mobil yang akan disewa serta memasukkan tanggal pengembalian,jenis layanan,dan jenis penyewa.
5
Mencatat data pengembalian mobil
Operator hanya memasukkan no transaksi dan tanggal saat penyewa mengembalikan mobil
6
Melihat jadwal penyewaan mobil
Jadwal penyewaan mobil berisi idmobil,nama mobil,id penyewa , nama penyewa, tanggal pinjam mobil, dan tanggal kembali sesuai dengan tanggal yang dipilih.
7
Mencatat data ketersediaan mobil
Data ketersediaan mobil digunakan untuk mengetahui status mobil serta untuk menambah data mobil ketika ada mobil yang baru.
3.4
Skenario Use Case
3.4.1 Use Case : Login Aktor : Operator Kondisi awal : Operator belum login ke sistem Kondisi akhir : Operator dapat masuk ke sistem Skenario utama 1.
Operator menekan tombol 9
login pada form Welcome 2. Sistem menampilkan form LoginDialog 3. Operator memasukkan username dan password pada Login dialog 4. Operator menekan tombol OK pada form Login Dialog 5. Sistem akan memvalidasi username dan password 6. Sistem menampilkan form Utama 7. Operator dapat melihat form utama 3.4.2 Use case : Sign Up Aktor : Operator Kondisi awal : Operator belum memiliki username dan password Kondisi akhir : Operator memiliki username dan password Skenario : 1. Operator menekan tombol Sign Up pada form Welcome 2. Sistem menampilkan form Sign Up 3. Operator memasukkan nama operator, username, password, dan confirm password pada form Sign Up 4. Operator menekan tombol Submit
5. Sistem memanggil method insertOperator pada kelas SignUpAddController 6. Sistem menyimpan data operator ke tabel Login
Alternative flow: 3a. Jika operator akan mengubah data, operator menekan data pada tabel pada form Sign Up dan mengubah data username/password/confirm 4a. Operator menekan tombol Ubah pada form Sign Up 5a. Sistem memanggil method updateOperator pada kelas SignUpAddController 6a. Sistem menyimpan data operator ke tabel Login
10
3b. Jika operator akan menghapus data, operator menekan data pada tabel pada form Sign Up 4b. Operator menekan tombol Hapus pada form Sign Up 5b.Sistem memanggil method deleteOperator pada kelas SignUpAddController 6b. Sistem menyimpan data operator ke tabel Login 3c. Jika operator akan mencari data operator,operator memilih kategori (ID, Nama) dan mengisikan item 4c. Operator menekan tombol Cari 5c. Sistem memanggil method getByIDOPERATOR/getByNAMAOPERATOR pada kelas SignUpAddController 3.4.3 Use Case : Mencatat Data Diri Penyewa Mobil Aktor : Operator Kondisi awal : Operator melakukan login Kondisi akhir : Data diri penyewa tersimpan pada database Skenario utama
1. Operator memilih menu item data penyewa pada FormUtama 2.Sistem menampilkan form DataPenyewaPanel 3. Operator memasukkan data diri penyewa berupa idPenyewa, namapenyewa, noIdentitas,alamat penyewa, dan no telp penyewa 4. Operator menekan tombol submit pada form DataPenyewaPanel 5. Sistem memanggil method insertPenyewa pada kelas SignUpAddController 6. Sistem menyimpan data diri penyewa ke tabel DataPenyewa Alternative flow: 3a. Jika operator akan mengubah data penyewa , operator menekan data pada tabel pada form DatPenyewaPanel dan mengubah data penyewa (no.identitas, nama penyewa, alamat penyewa, no.telepon) 4a. Operator menekan tombol Edit pada form DataPenyewaPanel 5a. Sistem memanggil method updatePenyewa pada kelas SignUpAddController 6a. Sistem menyimpan data diri penyewa ke tabel DataPenyewa 11
3b. Jika operator akan menghapus data penyewa , operator menekan data pada tabel pada form DatPenyewaPanel 4b. Operator menekan tombol Hapus pada form DataPenyewaPanel 5c. Sistem memanggil method deletePenyewa pada kelas SignUpAddController 6d. Sistem menyimpan data diri penyewa ke tabel DataPenyewa 3c. Jika operator akan mencari data penyewa ,operator memilih kategori (ID, Nama) dan mengisikan item 4c. Operator menekan tombol Cari 5c. Sistem memanggil method getByNAMAPenyewa/getByIDPenyewa pada kelas SignUpAddController
3.4.4 Use Case : Mencatat Data Penyewaan Mobil Aktor : Operator Kondisi awal : Operator melakukan login Kondisi akhir : Data penyewaan mobil tersimpan pada database Skenario utama : 1.Operator memilih menu item Data Penyewaan Mobil di FormUtama 2.Sistem menampilkan form DataPenyewaanMobilPanel 3.Operator memasukkan data penyewaan berupa ID penyewa 4. Sistem memanggil method getByIdPenyewa() yang ada pada kelas Intermobil 5. Sistem mencari data penyewa (nama, alamat, no.telepon) sesuai idpenyewa yang dimasukkan 6. Sistem menampilkan data penyewa pada form DataPenyewaanMobilPanel 7. Operator memasukkan id mobil pada form DataPenyewaanMobilPanel 8. Sistem memanggil method getByIdMobil yang ada pada kelas Intermobil 9. Sistem mencari data mobil (nama mobil, merk mobil, warna mobil, harga sewa) sesuai id mobil yang dimasukkan 10. Sistem menampilkan data mobil pada form DataPenyewaanMobilPanel 12
11. Operator memasukkan jenis layanan, jenis penyewa, dan tanggal kembali
13. Operator menekan tombol „Cetak Nota‟
12. Sistem menampilkan total pembayaran di DataPenyewaanMobilPanel
14. Sistem mencetak nota transaksi penyewaan
15. Operator menekan tombol Submit pada form DataPenyewaanMobilPanel 16. Sistem menyimpan data penyewaan ke tabel datapenyewaan Alternative Flow : 3a. Jika ID penyewa belum ada , maka operator memasukkan data penyewa melalui Form DataPenyewaanPanel 7a. Jika ID mobil belum ada, maka operator memasukkan data mobil melalui Form Data Ketersediaan Mobil Panel 3.4.5 Use Case : Mencatat Data Ketersediaan Mobil Aktor : Operator Kondisi awal : Operator melakukan login Kondisi akhir : Data ketersediaan mobil tersimpan pada database 1.Operator memilih menu item data ketersediaan mobil pada FormUtama 2.Sistem menampilkan form DataKetersediaanMobilPanel 3. Operator memasukkan data mobil berupa ID mobil, nama mobil, merk mobil,No polisi, harga sewa perhari, warna mobil, status mobil,no STNK. 4.Operator menekan tombol tambah
5.Sistem memanggil method insert dari kelas Intermobil 6. Sistem menyimpan data ketersediaan mobil pada tabel mobil melalui perantara kelas Intermobil 13
Alternatife Flow : 3a : Jika operator memilih kategori nama dan memasukkan nama mobil yang dicari 3b : Jika operator memilih kategori warna dan memasukkan warna mobil yang dicari 3c : Jika operator memilih kategori merk dan memasukkan merk mobil yang dicari 3d : Jika operator memilih data mobil yang akan dihapus 5a : memanggil method getByNamaMobil() dari kelas Intermobil, Jika operator memilih kategori nama dan memasukkan nama mobil yang dicari 5b : memanggil method getByWarna()dari kelas Intermobil, Jika operator memilih kategori warna dan memasukkan warna mobil yang dicari 5c : memanggil method getByMerk()dari kelas Intermobil, Jika operator memilih kategori merk dan memasukkan merk mobil yang dicari 5d : memanggil method delete()dari kelas Intermobil, Jika operator akan menghapus data 6a : mencari data mobil berdasarkan nama, Jika operator memilih kategori nama dan memasukkan nama mobil yang dicari 6b : mencari data mobil berdasarkan warna, Jika operator memilih kategori warna dan memasukkan warna mobil yang dicari 6c : mencari data mobil berdasarkan merk, Jika operator memilih kategori merk dan memasukkan merk mobil yang dicari 6d : menghapus data mobil Jika operator akan menghapus data 3.4.6 Use Case : Membuat Jadwal Peminjaman Mobil Aktor : Operator Kondisi Awal : Operator melakukan Login Kondisi Akhir : Operator melihat jadwal keseluruhan penyewaan mobil 1.Operator memilih menu item Jadwal Penyewaan mobil pada menu View
2.Sistem menampilkan form JadwalPanel
3.Operator memilih tanggal yang akan dilihat jadwalnya pada form JadwalPanel 4. Sistem memanggil method getJadwal pada pada kelas Intermobil 5.Sistem mencari idmobil, namamobil, idpenyewa, namapenyewa, tgl sewa, tgl kembali sesuai tanggal sewa 6.Sistem menampilkan jadwal penyewaan mobil sesuai dengan tanggal sewa ke dalam tabel Jadwal 14
Pemakaian mobil
3.4.7 Use Case : Mencatat Data Pengembalian Mobil Aktor : Operator Kondisi Awal : Operator sudah melakukan login Kondisi Akhir : Data pengembalian mobil tersimpan 1.Operator memilih menu item Data Pengembalian Mobil pada FormUtama
2.Sistem menampilkan form DataPengembalianMobilPanel
3.Operator memasukkan data pengembalian mobil berupa No transaksi pada Form DataPengembalianMobilPanel 4. Sistem memanggil method getBynoTransaksi() pada kelas Intermobil 5. Sistem mencari data penyewaan (nama operator, id penyewa, nama penyewa, id mobil, nama mobil, merk mobil, warna mobil, harga sewa, tanggal sewa, tanggal kembali) berdasarkan nomor transaksi sewa 6. Sistem menghitung biaya sewa berdasarkan jumlah hari pinjam 7. Sistem menampilkan data penyewaan (lama keterlambatan jika ada) dan total
8. Operator menekan tombol submit
9. Sistem memanggil method updatestatus(), insertakhr(), deletesewa() di kelas Intermobil 10. Sistem mengganti status sewa mobil yang ada di tabek DataMobil berdasarkan id mobil
Alternative flow : 6a.Jika terdapat lama keterlambatan, Sistem akan menghitung total sewa dan biaya keterlambatan berdasarkan lama keterlambatan.
15
4 4.1
Model Analisis Realisasi Use Case Tahap Analisis
Kelas Analisis: 4.1.1 Use Case : Login Diagram colaboration:
//2: tampil LoginDialog
//5: validasi username dan password yang dimasukkan
//1:menekan tombol login di Welcome Welcome LoginDialog //3: Operator memasukkan username dan password //5: operator menekan tombol OK
Operator
//5: sistem menampilkan FormUtama
//6: operator dapat melihat FormUtama
FormUtama
16
Diagram Squence
:Welcome
:LoginDialog
:FormUtama
Operator //1. loginButton()
//2. Tampil LoginDialog //3. Memasukkan username dan password //4. Menekan tombol OK //5. Validasi username dan password //6.Sistem menampilkan FormUtama //7. Operator dapat melihat FormUtama
17
4.1.2 Use case : Sign Up COLABORATION SIGNUP //2. Tampil form Signup
//5. Callmethod insertOperator
Form SignUp
Welcome //1. Operator menekan tombol SignUp
//3. Operator Memasukkan namaoperator,username,passw ord,confirmpassword 4. Tekan tombol submit //3a.
//5a. //5b. //5c.
SignUpA ddContr oller
//6.Sistem menyimpa n data operator ke tabel login
//4a.
//3b. //4b.
//3c. 6a 6b //4c. Login
3a. Jika operator akan mengubah data, operator menekan data pada tabel pada form Sign Up dan mengubah data username/password/confirm 4a. Operator menekan tombol Ubah pada form Sign Up 5a. Call method updateOperator pada kelas SignUpAddController 6a. Sistem menyimpan data operator ke tabel Login 3b. Jika operator akan menghapus data, operator menekan data pada tabel pada form Sign Up 4b. Operator menekan tombol Hapus pada form Sign Up 5b.Call method deleteOperator pada kelas SignUpAddController 6b. Sistem menyimpan data operator ke tabel Login 3c. Jika operator akan mencari data operator,operator memilih kategori (ID, Nama) dan mengisikan item 18
4c. Operator menekan tombol Cari 5c.Call method getByIDOPERATOR/getByNAMAOPERATOR SignUpAddController
pada
kelas
Diagram sequence signup :Welcome
:Form SignUp
:SignUpAddCo ntroller
:Login
//1. Operator menekan tombol SignUp 2:// Tampil Form SignUp 3:// Memasukkan namaoperator,username ,password,confirmpassw ord 4:// menekan tombol submit 5:// Call insertOperator 6:// Sistem menyimpan data operator 3a:// 4a// 5a:// 6a://
3b:// 4b://
5b:// 6b://
3c:// 4c:// 5c://
19
3a. Jika operator akan mengubah data, operator menekan data pada tabel pada form Sign Up dan mengubah data username/password/confirm 4a. Operator menekan tombol Ubah pada form Sign Up 5a. Call method updateOperator pada kelas SignUpAddController 6a. Sistem menyimpan data operator ke tabel Login 3b. Jika operator akan menghapus data, operator menekan data pada tabel pada form Sign Up 4b. Operator menekan tombol Hapus pada form Sign Up 5b.Call method deleteOperator pada kelas SignUpAddController 6b. Sistem menyimpan data operator ke tabel Login 3c. Jika operator akan mencari data operator,operator memilih kategori (ID, Nama) dan mengisikan item 4c. Operator menekan tombol Cari 5c. Call getByIDOPERATOR/getByNAMAOPERATOR pada kelas SignUpAddController
20
4.1.3 Use Case : Mencatat Data Diri Penyewa Diagram colaboration „ //2. Tampil DataPenyewaPanel FormUtama
//4a .
//5b .
//5 . //7 DataPenyewa . //7a. Panel
//1. Operator memilih menu item DataPenyewa
SignUpAdd Controller
//3. //4. Tekan tombol submit
//8a.
//8 .
//6 .
//5a //3a
DataPenyewa
//6a //6b //3b //4b tekan tombol cari //6c menampilkan data penyewa
3: memasukkan data penyewa 3a : memilih data penyewa pada tabel 3b: memilih kategori ID/nama dan memasukkan data yang dicari 5: call insertPenyewa() 5a : menampilkan data penyewa 5b : call loadCari() 4a: call isiTeks() 6: menyimpan data penyewa 6a: tekan tombol edit 6b : tekan tombol hapus 7: call updatePenyewa() 7a: call deletePenyewa() 8: mengubah data penyewa 8a: menghapus data penyewa
21
Diagram Squence
:DataPenyewa Panel
:FormUtama
:DataPenyewa
Operator 1://Operator memilih menu item DataPenyewa 2:// Menampilkan DataPenyewaPanel
3:// Memasukkan data penyewa
4:// Simpan data penyewa 5:// Sistem menyimpan data penyewa
22
4.1.4 Use Case : Mencatat Data Penyewaan Mobil Diagram colaboration: //2. Tampil DataPenyewaanMo bilPanel
//8.
//5.
//9.
//3. Memasukkan id penyewa
//6. Tampil data penyewa
Operator
Intermobil
DataPenyewa anMobilPanel
FormUtama //1. Operator memilih menu item DataPenyewaanMobil
//4.
//7. Memasukkan Id mobil
//16. Simpan data penyewaan
DataPenyewa an
//10. Tampil data mobil //11. Memilih jenis layanan, jenis penyewa, tanggal kembali //12. Tampil total pembayaran //13. Tekan tombol cetak faktur //14. Sistem mencetak nota transaksi //15. Tekan tombol submit
4: call getByIdPenyewa dengan call SPCariPenyewa() 5: Mencari data penyewa (nama penyewa, alamat, no telepon) sesuai id penyewa 8: call getByIdMobil dengan call SPCariMobil() 9: Mencari data mobil (nama mobil, merk mobil, warna mobil, harga sewa) sesuai id mobil
23
:FormUtama
:DataPenyewaa nMobilPanel
:Intermobil
Operator 1://memilih menu item Data Penyewaan Mobil
2://menampilkan DataPenyewaanMob ilPanel 3://memasukkan id penyewa 4://call getByIdPenyewa() dengan call SPCariPenyewa
5://
6://tampil data penyewa 7://memasukkan id mobil 8://Memanggil getByIdMobil() dengan call SPCarimobil
9:// 10://tampil data mobil 11:// 12:// tampil total 14://Sistem 13:// tekan cetak faktur mencetak nota 15:// tekan tombol submit
16:// simpan data penyewaan 24
:DataPenyewaa n
5: Mencari data penyewa (nama penyewa, alamat, no telepon) sesuai id penyewa 9: Mencari data mobil (nama mobil, warna mobil, merk mobil, harga sewa) sesuai id mobil 11: Memilih jenis layanan, jenis penyewa, tanggal kembali
4.1.5 Use Case : Mencatat Data Ketersediaan Mobil Diagram colaboration: //2. Tampil DataKetersediaanM obilPanel FormUtama //1. Operator memilih menu item DataKetersediaanMobil //3. Operator Memasukkan data mobil
//3a. //4a. Tekan tombol cari //3b. //4a. Tekan tombol cari //3c. 6 7 Tampil data mobil
6a
6b 6c
//4a. Tekan tombol cari //3b.
DataMobil //4b. Tekan tombol hapus
3a : memilih kategori nama dan memasukkan nama mobil yang dicari 3b : memilih kategori warna dan memasukkan warna mobil yang dicari 3c : memilih kategori merk dan memasukkan merk mobil yang dicari 3d : memilih data mobil yang akan dihapus 25
6d
5 : call method insert() 5a : call method getByNamaMobil() 5b : call method getByWarna() 5c : call method getByMerk() 5d : call method delete() 6 : menyimpan data mobil 6a : mencari data mobil berdasarkan nama 6b : mencari data mobil berdasarkan warna 6c : mencari data mobil berdasarkan merk 6d : menghapus data mobil
26
Diagram Squence : :FormUtama
:DataKetersed iaanMobilPan el
:InterMobil
:DataMobil
Operator //1. Operator memilih menu item DataKetersediaanM obil 2:// Menampilkan DataKetersediaanM obilPanel
3:// Memasukkan data mobil 4:// menekan tombol tambah
5:// Call method insert 6:// Sistem menyimpan data mobil
3a:// 4a://
5a:// 6a://
3b:// 4b:// 5b:// 6b://
3c:// 5c://
3d://
6c://
5d:// 6d://
27
3a:// memilih nama kategori dan data yang dicari 4a:// tekan tombol cari 5a:// Call method getByNamaMobil 6a:// Sistem mencari data mobil berdasarkan nama 3b ://memilih kategori warna dan memasukkan warna mobil yang dicari 4b://tekan tombol hapus 5b://Call method getByWarna 6b:// Sistem mencari data mobil berdasarkan warna 3c ://memilih kategori merk dan memasukkan merk mobil yang dicari 5c :// Call method getByMerk() 6c :// mencari data mobil berdasarkan merk 3d : memilih data mobil yang akan dihapus 5d : call method delete() 6d : menghapus data mobil 4.1.6 Use Case : Membuat jadwal penyewaan mobil //4. Sistem
Diagram colaboration:
memanggil method getJadwal pada pada kelas Intermobil
//2. Tampil form Jadwal
JadwalPanel
FormUtama //1. Operator memilih menu item Jadwal
Intermobil
//5. Sistem mencari //3. Memilih tanggal sewa
idmobil, namamobil, idpenyewa, namapenyewa, tgl sewa, tgl kembali sesuai tanggal sewa
Operator //6. Sistem menampilkan
jadwal penyewaan mobil ke tabel Jadwal Pemakaian mobil
28
DataSewa
Diagram Squence :FormUtama
:Jadwal
:Intermobil
:DataSewa
Operator 1://memilih menu item Jadwal 2://menampilkan Jadwal 3://memilih tanggal sewa
4://call method getJadwal() 5://Mencari jadwal penyewaan sesuai tanggal sewa 6:// menampilkan jadwal
penyewaan mobil ke tabel Jadwal Pemakaian Mobil
29
4.1.7 Use Case : Data pengembalian mobil Diagram colaboration:
//6. Sistem menghitung biaya sewa berdasarkan jumlah hari pinjam dan lama keterlambatan
//2. Tampil DataPengembalian MobilPanel
//4.
//9. DataPenngem balianMobilPa nel
FormUtama //1. Operator memilih menu item DataPengembalianMo bil
Operator
//3. Memasukkan no transaksi sewa
Intermobil
//5.
//10.
//7. Sistem menampilkan data sewa , lama keterlambatan dan total
DataMobil
DataSewa
//8. Tekan tombol submit
4: memanggil method getBynoTransaksi() dengan call SPCariPengembalian 5: Mencari data penyewaan (nama operator, id penyewa, nama penyewa, id mobil, nama mobil, merk mobil, warna mobil, harga sewa, tanggal sewa, tanggal kembali) berdasarkan no transaksi sewa 9: Memanggil method updatestatus() 10: Mengganti status sewa mobil berdasarkan id mobil
30
Diagram squence :
:FormUtama
:DataPengemba lianMobilPanel
:Intermobil
:DataSewa
:DataMobil
Operator 1://memilih menu item Data Pengembalian Mobil 2://menampilkan DataPengembalianM obilPanel 3://memasukkan no transaksi sewa 4://memanggil method getBynoTransaksi() dengan memanggil SPCariPengembalian
7:// Sistem menampilkan data penyewaan lama keterlambatan dan total
6:// Sistem menghitung biaya sewa berdasarkan jumlah hari pinjam dan lama keterlambatan
5://Cari data penyewaan berdasarkan no,transaksi sewa
10:// Mengganti status sewa mobil berdasarkan id mobil
4.2
Diagram Kelas Keseluruhan
4.3
Kelas Analisis
No
Nama Kelas
Jenis
1
Test Connection
Entity
2
Login
Entity
3
DataPenyewa
Entity
4
DataMobil
Entity
5
DataSewa
Entity
6
Welcome
Boundary
7
LoginDialog
Boundary
8
Utama
Boundary
9
DataPenyewaPanel
Boundary
10
Data PenyewaanMobilPanel
Boundary 32
11
DataPengembalianMobilPanel
Boundary
12
Jadwal
Boundary
13
DataKetersediaanMobilPanel
Boundary
14
SignUp
Boundary
15
SignUpAddController
Controller
16
Intermobil
Controller
17
JadwalTableModel
Controller
18
RentalMobil
Controller
Untuk setiap kelas analisis, lakukan (dengan melengkapi subbab-subbab berikutnya): · identifikasi tanggung-jawab (responsibility) · identifikasi atribut Nama Kelas
4.5 Deskripsi Arsitektur Arsitektur aplikasi sistem rental mobil ini menggunakan database. Database yang digunakan adalah Oracle Database 10g Express Edition. Arsitektur aplikasi sistem rental mobil berupa aplikasi desktop. Spesifikasi yang dibutuhkan untuk mengoperasikan software rental mobil ini ini adalah sistem operasi Windows (Xp, Vista, Seven), Pentium 4 atau Intel Atom 1,6 Ghz (i3, i5),RAM-Memory 256 MB, dan Hardisk Free Space 2Gb. Sistem aplikasi rental mobil ini akan di install pada satu komputer untuk operator dan komputer ini akan terhubung dengan komputer server untuk database dengan menggunakan jaringan LAN. 5.
Model Perancangan
5.1 Realisasi Use Case Tahap Perancangan 5.1.1 Login
memasukkan data mobil ke tabel data mobil memasukkan data sewa ke table datapenyewaan mengupdate data mobil ke tabel data mobil mengupdate status mobil yang ada di table data mobil menghapus data mobil ke tabel data mobil menghapus data sewa yang ada di table datapenyewaan mengambil semua data mobil
45
getBywarna(String)
public
getByOne(String)
public
getByIdPenyewa(DataPenyewa penyewa)
public
getBynotran(DataSewa s)
public
getByIdMobil(DataMobil mobil)
public
menampilkan data mobil berdasarkan nama mobilnya menampilkan data mobil berdasarkan merk mobilnya menampilkan data mobil berdasarkan warna mobilnya menampilkan data mobil berdasarkan id mobilnya menampilakan data penyewa berdasar id penyewa yang terdapat pada table datapenyewa menampilakan data sewa berdasar no transaksi pada table datapenyewaan menampilkan data mobil berdasar id mobil yang terdapat pada table datamobil menampilakan data sewa berdasar no transaksi pada table datapenyewaan
public getBynoTransaksi(DataSewa sewa) public getJadwal(String tanggalSewa)
menampilkan jadwal penyewaan berdasarkan tanggal sewa Nama Atribut
Visibility (private, public)
Tipe
-
-
-
Visibility (private, public)
Keterangan
SignUpAddController.java Nama Operasi getAll()
public
getByIDOperator(String ID)
public
getByNAMAOPERATOR(String nama)
public
insertOperator(Login o)
public
deleteOperator(String o)
public
updateOperator(Login o)
public
Untuk menampilkan data operator Untuk menampilkan data operator berdasarkan idoperator yang dicari Untuk menampilkan data operator berdasarkan namaoperator Untuk menambah data operator Untuk menghapus data operator Untuk mengubah data operator
46
getAllPenyewa()
public
getByIDPENYEWA(String ID)
public
getByNAMAPenyewa(String nama)
public
Untuk menampilkan data penyewa Untuk menampilkan data penyewa dengan id penyewa tertentu Untuk menampilkan data penyewa dengan nama penyewa tertentu Untuk menambahkan data penyewa baru Untuk menghapus data penyewa Untuk mengubah data penyewa
public insertPenyewa(DataPenyewa o) public deletePenyewa(DataPenyewa o) public updatePenyewa(DataPenyewa o) Nama Atribut
Visibility (private, public)
-
-
Tipe -
DataSewa.java Nama Operasi
Visibility (private, public)
Keterangan
set() untuk semua atribut
public
untuk mengisi nilai pada masing-masing atribut
get() untuk semua atribut
public
untuk mengambil nilai pada masing-masing atribut
Nama Atribut notransaksi tanggal alamat noTelp idMobil idPenyewa namaPenyewa namaMobil merkMobil warnaMobil jenisSewa lamaSewa tglKembali; namaOperator total
Keterangan Untuk mengambil jumlah baris Untuk mengambil jumlah kolom Untuk mengambil index dari baris dan kolom di tabel Jadwal Untuk mengambil nama kolom tabel Jadwal
Visibility (private, public) Private
Tipe List
Algoritma/Query
Nama Kelas Nama Operasi Algoritma
: Login : okButtonActionPerformed() : (Algo-001)
Jika username dan password yang dimasukkan sesuai dengan yang tersimpan pada tabel login, maka akan tampil menu utama Jika username dan/atau password yang dimasukkan tidak sesuai dengan yang tersimpan pada tabel login, maka akan tampil pesan (dialog) kesalahan. Query
:
No Query
Query
Keterangan
Q-001
select * from login where username = „username‟ and password = „password‟
untuk mencocokkan username dan password yang dimasukkan operator dengan yang tersimpan pada database
untuk memasukkan data mobil ke dalam table DataPenyewaan
Nama Kelas
: intermobil
Nama Operasi
: update(Data Mobil o)
Algoritma
: (Algo-005)
No Query
Query
Keterangan
Q-005
"update DATAMOBIL set NOKENDARAAN=?,NAMAMOBIL=?, "+ "WARNAMOBIL=?,HARGASEWA=?," +"STATUSMOBIL=?,MERKMOBIL=?, NOPOLISI=?,NOSTNK=?,QUANTITY =? where IDMOBIL=?");
untuk mengupdate data mobil yang terdapat dalam table mobil sesuai dengan id mobil yang dimasukkan
49
Nama Kelas
: intermobil
Nama Operasi
: updatestatus(DataMobil o)
Algoritma
: (Algo-006)
No Query
Query
Keterangan
Q-006
update DATAMOBIL set STATUSMOBIL=? where IDMOBIL=?
untuk mengupdate status mobil yang terdapat dalam table mobil sesuai dengan id mobil yang dimasukkan
Nama Kelas
: intermobil
Nama Operasi
: Delete(String o)
Algoritma
: (Algo-007)
No Query
Query
Keterangan
Q-007
"delete from DATAMOBIL where IDMOBIL=?”
untuk menghapus data mobil yang terdapat dalam table mobil sesuai dengan id mobil yang di masukkan.
Nama Kelas
: intermobil
Nama Operasi
: deletesewa(String sewa)
Algoritma
: (Algo-008)
No Query
Query
Keterangan
Q-008
delete from DATAPENYEWAAN where NOTRANSAKSISEWA=?
untuk menghapus data penyewaan yang terdapat dalam table datapenyewaan sesuai dengan no transaksi sewa yang di masukkan.
Nama Kelas
: intermobil 50
Nama Operasi
: getAll()
Algoritma
: (Algo-009)
No Query
Query
Keterangan
Q-009
"select * from DATAMOBIL"
untuk memanggil/memunculkan semua data mobil yang terdapat dalam table mobil
Nama Kelas
: intermobil
Nama Operasi
: getByNamaMobil(String nama)
Algoritma
: (Algo-010)
No Query
Query
Keterangan
Q-010
("select * from DATAMOBIL where NAMAMOBIL like ?"); ps.setString(1, "%"+nama+"%");
untuk mencari data mobil yang terdapat dalam table mobil berdasarkan nama mobil yang dimasukkan
Nama Kelas
: intermobil
Nama Operasi
: getBymrek(String mrk)
Algoritma
: (Algo-011)
No Query
Query
Keterangan
Q-011
("select * from DATAMOBIL where MERKMOBIL like ?"); ps.setString(1, "%"+mrk+"%");
untuk mencari data mobil yang terdapat dalam table mobil berdasarkan merk mobil yang dimasukkan
Nama Kelas
: intermobil 51
Nama Operasi
: getBywarna(String wrna)
Algoritma
: (Algo-012)
No Query
Query
Keterangan
Q-012
("select * from DATAMOBIL where WARNAMOBIL like ?"); ps.setString(1, "%"+wrna+"%");
untuk mencari data mobil yang terdapat dalam table mobil berdasarkan warna mobil yang dimasukkan
Nama Kelas
: intermobil
Nama Operasi
: getByOne(String o)
Algoritma
: (Algo-013)
{Jika mengacu query tertentu, lengkapi tabel query di bawah} Query
:
No Query
Query
Keterangan
Q-013
("select *from DATAMOBIL where IDMOBIL=?")
untuk mencari data mobil yang terdapat dalam table mobil berdasarkan id mobil yang dimasukkan
Nama Kelas
: intermobil
Nama Operasi
: getByIdPenyewa(DataPenyewa penyewa)
Algoritma
: (Algo-014)
No Query
Query
Keterangan
Q-014
create or replace procedure SPCARIPENYEWA (e_ID_PENYEWA IN DATAPENYEWA.IDPENYEWA%TYPE, e_NAMA_PENYEWA OUT
untuk mencari data penyewa berdasarkan id penyewa.
52
DATAPENYEWA.NAMAPENYEWA%TYPE, e_ALAMAT OUT DATAPENYEWA.ALAMAT%TYPE, e_TELEPON OUT DATAPENYEWA.NOTELEPON%TYPE) is BEGIN select NAMAPENYEWA,ALAMAT,NOTELEPON into e_NAMA_PENYEWA,e_ALAMAT,e_TELEPON from DATAPENYEWA where IDPENYEWA= e_ID_PENYEWA; end SPCARIPENYEWA; / Nama Kelas
: intermobil
Nama Operasi
: getBynotran(DataSewa s)
Algoritma
: (Algo-015)
No Query
Query
Keterangan
Q-015
select HARGASEWA, TOTAL from DATAPENYEWAAN where NOTRANSAKSISEWA=?
untuk mencari harga sewa dan total yang terdapat pada table datapenyewaan berdasar no transaksi sewa yang dimasukkan
Nama Kelas
: intermobil
Nama Operasi
: getByIdMobil(DataMobil mobil)
Algoritma
: (Algo-016)
No Query
Query
Keterangan
Q-016
create or replace procedure SPCARIMOBIL (e_ID_MOBIL IN DATAMOBIL.IDMOBIL%TYPE, e_NAMAMOBIL OUT DATAMOBIL.NAMAMOBIL%TYPE,
untuk mencari data mobilberdasarkan id mobil
53
e_WARNA OUT DATAMOBIL.WARNAMOBIL%TYPE, e_MERK OUT DATAMOBIL.MERKMOBIL%TYPE, e_HARGASEWA OUT DATAMOBIL.HARGASEWA%TYPE) is BEGIN select NAMAMOBIL, WARNAMOBIL, MERKMOBIL, HARGASEWA into e_NAMAMOBIL,e_WARNA,e_MERK, e_HARGASEWA from DATAMOBIL where IDMOBIL = e_ID_MOBIL; end SPCARIMOBIL; / Nama Kelas
: intermobil
Nama Operasi
: getBynoTransaksi(DataSewa sewa)
Algoritma
: (Algo-017)
No Query Q017
Query
Keterangan
create or replace procedure SPCARIPENGEMBALIAN ( e_NO_TRANSAKSI IN DATAPENYEWAAN.NOTRANSAKSISEWA%TYPE, e_NAMA_OPERATOR OUT DATAPENYEWAAN.NAMAOPERATOR%type, e_ID_PENYEWA OUT DATAPENYEWAAN.IDPENYEWA%TYPE, e_NAMA_PENYEWA OUT DATAPENYEWAAN.NAMAPENYEWA%TYPE, e_ID_MOBIL out DATAPENYEWAAN.IDMOBIL%TYPE, e_NAMA_MOBIL OUT DATAPENYEWAAN.NAMAMOBIL%TYPE, e_MERK_MOBIL OUT DATAPENYEWAAN.MERKMOBIL%TYPE, e_WARNA_MOBIL OUT DATAPENYEWAAN.WARNAMOBIL%TYPE, e_TANGGAL_SEWA OUT 54
Untuk mencari data penyewaan mobilberdasarkan no transaksi
DATAPENYEWAAN.TANGGALSEWA%TYPE, e_TANGGAL_KEMBALI OUT DATAPENYEWAAN.TANGGALKEMBALI%type ) is BEGIN select NAMAOPERATOR,IDPENYEWA, NAMAPENYEWA,IDMOBIL,NAMAMOBIL, MERKMOBIL,WARNAMOBIL,TANGGALSEWA, TANGGALKEMBALI into e_NAMA_OPERATOR,e_ID_PENYEWA, e_NAMA_PENYEWA, e_ID_MOBIL, e_NAMA_MOBIL,e_MERK_MOBIL,e_WARNA_MOBIL, e_TANGGAL_SEWA,e_TANGGAL_KEMBALI from DATAPENYEWAAN where NOTRANSAKSISEWA= e_NO_TRANSAKSI; end SPCARIPENGEMBALIAN; / Nama Kelas
: DataPenyewaanPanel
Nama Operasi
: buatnomor()
Algoritma
: (Algo-018)
No Query Q-018
Query
Keterangan
select NOTRANSAKSISEWA as no from DATAPENYEWAAN ORDER by NOTRANSAKSISEWA desc
Nama Kelas
Untuk menampilkan no transaksi sewa yang ada pada table datapenyewaan dan diurutkan secara descending
: DataPenyewaanPanel
Nama Operasi
:submitButtonActionPerformed
Algoritma
: (Algo-019)
No Query Q-019
Query
Keterangan
"insert into DATAPENYEWAAN values ('" + NOTRANTF.getText() 55
Untuk menambahkan data ke dalam table datapenyewaan
Untuk menampilkan nomor transaksi pada text field nomor 56
s.tanggalsewa, s.tanggalkembali from DATAMOBIL m, DATAPENYEWAAN s where m.IDMOBIL = s.IDMOBIL and tanggalsewa='" + tanggalSewa + "'"+"AND LOWER(STATUSMOBIL)='not available'"
Nama Kelas
: SignUpAddController
Nama Operasi
: getByIDOPERATOR
Algoritma
: (Algo-022)
No Query Q-022
transaksi
Query
Keterangan
select * from Login where IDOPERATOR like ?
Nama Kelas
Untuk menampilkan nomor idoperator,namaoperator,username,password berdasarkan idoperator yang dimasukkan
: SignUpAddController
Nama Operasi
: getByNAMAOPERATOR
Algoritma
: (Algo-023)
Query No Query Q-023
Query
Keterangan
select * from LOGIN where NAMAOPERATOR like ?
Nama Kelas
Untuk menampilkan nomor idoperator,namaoperator,username,password berdasarkan namaoperator yang dimasukkan
: SignUpAddController
Nama Operasi
: deleteOperator
Algoritma
: (Algo-024)
Query No Query Q-024
Query delete from LOGIN where IDOPERATOR =?
Keterangan Untuk menghapus data login berdasarkan idoperator 57
Nama Kelas
: SignUpAddController
Nama Operasi
: updateOperator
Algoritma
: (Algo-025)
Query No Query Q-025
Query
Keterangan
update LOGIN set NAMAOPERATOR=?," +"USERNAME=?,PASSWORD=?,where IDOPERATOR=?
Nama Kelas
Untuk mengubah data Login berupa namaoperator, username,password, dan idoperator
: SignUpAddController
Nama Operasi
: getAllPenyewa()
Algoritma
: (Algo-026)
Query No Query Q-026
Query
Keterangan
select * from DATAPENYEWA
Nama Kelas
Untuk menampillkan semua datapenyewa
: SignUpAddController
Nama Operasi
: getByIDPENYEWA
Algoritma
: (Algo-027)
Query No Query Q-027
Query
Keterangan
select * from DATAPENYEWA where IDPENYEWA like ?
Nama Kelas Nama Operasi
Untuk menampilkan data penyewa berdasarkan idpenyewa
: SignUpAddController : getByNAMAPenyewa 58
Algoritma
: (Algo-028)
Query No Query Q-028
Query
Keterangan
select * from DATAPENYEWA where NAMAPENYEWA like ?
Nama Kelas
Untuk menampilkan data penyewa berdasarkan namapenyewa
-Tekan Menu Item Data Penyewaan Mobil dari menu Transaksi
-No.Transaksi, Tanggal , Jam muncul secara otomatis
65
Krite Hasil Kesi ria yang mpul Evalu Didapat an asi Hasil
-Masukkan ID Penyewa, Nama Penyewa, Alamat Penyewa,No Telepon , ID mobil , nama mobil, warna, mobil, harga sewa, textfield masing-masing atribut
ID Penyewa, Nama Penyewa, Alamat Penyewa,No Telepon , ID mobil , nama mobil, warna, mobil, harga sewa
-Memilih jenis layanan dan jenis penyewa
jenis layanan dan jenis penyewa
-Memasukkan tanggal kembali melalui date chooser
tanggal kembali
-Total muncul
-Tekan enter pada field Lama Penyewaan
-Muncul pesan Data berhasil disimpan
-Tekan tombol Submit
7.2.4 Identifikasi
Lama penyewaan muncul
Pengujian Use Case < Mencatat Data Pengembalian Mobil>
Deskripsi
Prosedur Pengujian
Masukan
66
Keluaran yang Kriteria Diharapkan Evaluasi Hasil
Hasil yang Didapat
Kesi mpul an
U-4-01
Pengujian mencatat data pengembalian mobil
-Sistem menampilkan FormUtama -Memilih menu Item Data Pengembalian Mobil pada menu Transaksi
-Form Data Pengembalian Muncul
-Memasukkan Nomor nomor transaksi transaksi penyewaan mobil
-Muncul nama operator, id penyewa, nama penyewa, id mobil, nama mobil, merk mobil, warna mobil, tanggal sewa, tanggal kembali berdasarkan nomor transaksi yang dimasukkan
Tekan enter pada field tanggal kembali
Muncul lama keterlambatan
Tekan enter pada field lama keterlambatan
Muncul total sewa
Tekan tombol submit
Data pengembalian berhasil disimpan
67
7.2.5
Pengujian Use Case < Mencatat Data Ketersedian Mobil>
Identifikasi
Deskripsi
U-5-01
Pengujian menambahkan data ketersediaan mobil
Prosedur Pengujian
Masukan
-Sistem menampilkan FormUtama -Memilih menu Item Data Ketersediaan Mobil pada menu View Memasukka n ID mobil, nama mobil, merk mobil,No polisi, harga sewa perhari, warna mobil, status mobil,no STNK pada field masingmasing
-Muncul FormData Ketersediaan MobilPanel
ID mobil, nama mobil, merk mobil,No polisi, harga sewa perhari, warna mobil, status mobil,no STNK.
-Tekan tombol Tambah
U-5-02
Pengujian mencari data ketersediaan mobil
Keluaran yang Kriteria Diharapkan Evaluasi Hasil
-Data berhasil disimpan
-Memilih nama kategori pada combo box kategori Memasukka n item data yang akan di cari
Kategori (nama, warna, merk) 68
Hasil yang Didapat
Kesi mpul an
Nama mobil atau warna mobil atau merk mobil
Tekan tombol cari
U-5-03
Pengujian menghapus data ketersediaan mobil
Klik baris pada tabel ketesediaan
Nama mobil/wana mobil/ merk mobil sesuai kata kunci yang dimasukkan akan muncul di tabel
Data mobil pada baris yang dipilih
tekan tombol hapus
Data ketersediaan mobil pada baris yang diklik akan terhapus
69
7.2.5
Pengujian Use Case <Melihat jadwal penyewaan mobil>
Identifikasi
Deskripsi
U-6-01
Pengujian melihat jadwal penyewaan mobil
Prosedur Pengujian
Masukan
-Sistem menampilkan FormUtama -Memilih menu Item Jadwal Penyewaan pada menu View -Pilih tanggal lewat date chooser
7.3
Keluaran yang Kriteria Diharapkan Evaluasi Hasil
Muncul Form JadwalPanel
Tanggal sewa
Daftar mobil yang disewa pada tanggal sesuai masukan dari date chooser muncul pada tabel
Defect dan Status Perbaikan
Pada Form Sign up : - id operator ketika row selected tidak dapat di Cancel - tombol edit belum berfungsi Pada Form Penyewa : - Tidak ada pesan error pop up - Saat mengisi data tanggal kembali < tanggal sewa tidak di set null - Saat cetak nota pada tanggal terdapat angka '20' Pada Form Pengembalian: -total pembayaran masih bermasalah - pencarian no transaksi tidak valid dan bisa diupdate Pada Form Ketersediaan: -Exception pada field masih salah -Format pengisian field (nomor polisi) diperjelas
70
Hasil yang Didapat
Kesim pulan
8
Lampiran USER MANUAL Aplikasi Rental Mobil
TAHAP AWAL 1. Install aplikasi terlebih dahulu pada desktop anda. 2. Install Databasenya. UNTUK MENJALANKAN APLIKASI Setelah aplikasi dan database terinstall, untuk menjalankan aplikasi tersebut ikuti langkahlangkah dibawah ini : 1. Jalankan aplikasi 2. Maka akan muncul dua pilihan untuk Login dan Signup. Login digunakan bagi user yang sudah memiliki account. Bagi user yang belum memiliki account silahkan klik tombol Signup, sedangkan user yang sudah memiliki account silahkan klik tombol Login. Signup (untuk user yang belum mempunyai account) 1. Klik Signup 2. Silahkan isi data pada kotak. Masukkan nama operator, username, password, dan confirm password. Kemudian klik tombol Submit untuk menyimpan datadata yang baru anda masukkan. 3. Bila diklik tombol Cancel maka data-data yang dimasukkan akan terhapus semua. 4. Bila diklik tombol Back maka akan kembali ke halaman yang sebelumnya. Untuk mencari data operator berdasarkan ID dan NAMA. Lakukan langkah : Pada kotak Kategori, klik tanda panah. Pilih ID atau NAMA untuk mecari data operator. Bila yang anda pilih adalah ID. Maka pada kotak Item masukkan nomor ID. Bila yang anda pilih Nama, maka pada kotak Item masukkan Nama. Login (untuk user yang sudah memiliki account). Bila user yang sudah mempunyai account silahkan klik tombol Login. Kemudian lanjutkan ke langkah 3. 3. Setelah tombol Login diklik maka akan tampil halaman Login. Pada halaman ini user diminta untuk memasukkan password dan username agar dapat masuk ke system. Masukkan password dan username anda. Setelah password dan username anda masukkan klik tombol OK. Bila tombol CANCEL anda klik maka akan kembali ke halaman sebelumnya. 4. Bila password dan username yang anda masukkan salah maka anda akan diminta untuk mengulangi memasukkan password dan username.
71
Bila Password dan username yang dimasukkan benar maka akan tampil halaman utama dari aplikasi rental mobil. Pada halaman utama terdapat dua menu, yaitu : Transaksi dan View. Pada Menu Transaksi terdapat tiga menu item yaitu : Data Penyewa, Data Penyewaan Mobil, dan Data Pengembalian Mobil. Sedangkan pada Menu view terdapat dua menu item, yaitu : Data Ketersediaan Mobil dan Jadwal. Lakukan langkah-langkah berikut ini untuk DATA PENYEWA Untuk masuk halaman DATA PENYEWA yang ada pada halaman utama rental. Dengan cara klik Menu Transaksi kemudian pilih Data Penyewa. 1. Masukkan data-data untuk penyewa. Data yang dimasukkan No.identitas, Nama Penyewa, Alamat Penyewa, dan no.telepon. 2. Kemudian klik tombol Submit. Setelah tombol Submit diklik maka data yang telah dimasukkan akan muncul pada tabel. 3. Bila ingin mengedit data. Klik terlebih dahulu data pada tabel yang akan diedit. Kemudian klik tombol Edit, selanjutnya editlah data yang akan diedit. 4. Bila ingin menghapus data yang sudah ada. Klik terlebih dahulu data pada tabel yang akan dihapus. Kemudian klik tombol Hapus. Maka data yang sudah ada akan terhapus. 5. Untuk mencari data penyewa dengan ID dan Nama tertentu dapat lakukan langkah : Pada kotak Kategori pilih salah satu ID atau NAMA. Bila ID yang dipilih, masukkan ID penyewa pada kotak Kategori. Bila Kategori yang dipilih NAMA maka pada kotak Item NAMA penyewa. 6. Bila tombol Back diklik maka akan kembali ke halaman utama rental mobil Lakukan langkah-langkah berikut ini untuk DATA PENYEWAAN MOBIL Untuk masuk halaman DATA PENYEWAAN MOBIL yang ada pada halaman utama rental. Dengan cara klik Menu Transaksi kemudian pilih Data Penyewaan Mobil. 1. Masukkan ID Penyewa pada kotak ID Penyewa. Setelah memasukkan ID Penyewa maka akan tampil data-data yang sudah disimpan. Data yang tampil adalah: Nama penyewa, alamat, No.telepon. 2. Kemudian masukkan ID MOBIL, maka akan tampil nama mobil, harga sewa, warna mobil, merk mobil 3. Selanjutnya pilih jenis layanan : sopir atau tanpa sopir. 4. Selanjutnya pilih jenis penyewa : instansi atau pribadi. 5. Pilih tanggal kembali. Selanjutnya tampil lama sewa. 6. Enter pada lama sewa maka akan tampil total pembayaran yang harus dibayar. 7. Selanjutnya klik tombol submit. Maka akan muncul pesan “Data Berhasil Disimpan”. 72
8. Bila tombol print diklik, maka akan mencetak struck. 9. Bila tombol Back diklik kembali ke halaman utama rental mobil Lakukan langkah-langkah berikut ini untuk DATA PENGEMBALIAN MOBIL Untuk masuk halaman DATA PENGEMBALIAN MOBIL yang ada pada halaman utama rental. Dengan cara klik Menu Transaksi kemudian pilih Data Pengembalian Mobil. 1. Masukkan No.transaksi penyewaan mobil yang telah tersimpan saat melakukan penyewaan mobil. Maka akan tampil data-data yang telah tersimpan. Data-data yang tampil : Nama operator, ID Penyewa, Nama Penyewa, ID mobil, Nama mobil, tanggal sewa, merk mobil, dan warna. 2. Untuk menampilkan lama keterlambatan, Enter pada kotak Tanggal Kembali, kemudian akan tampil lama keterlambatannya. 3. Untuk menampilkan Total yang harus dibayar, Enter pada kotak lama keterlambatan, kemudian akan tampil Total bayarnya. 4. Selanjutnya klik tombol submit. Maka tampil pesan “Karena terlambat…hari maka anda harus membayar….”(untuk pengembalian yang terlambat), Bila pengembalian terlambat maka akan tampil pesan “Terima Kasih”. 5. Bila tombol Back diklik kembali ke halaman utama rental mobil. Lakukan langkah-langkah berikut ini untuk DATA KETERSEDIAAN MOBIL Untuk masuk halaman DATA KETERSEDIAAN MOBIL yang ada pada halaman utama rental. Dengan cara klik Menu View kemudian pilih Data Ketersediaan Mobil. Fungsi ketersediaan mobil berfungsi utnuk mencatat data mobil yang terdapat di rental mobil dan melihat mobil apa saja yang terdapat dirental. 1. Isikan data-data mobil yang akan disimpan. Data yang disimpan adalah ID MOBIL, NAMA POLISI, NAMA MOBIL, WARNA MOBIL, HARGA SEWA, STATUS MOBIL, MERK MOBIL, NO.STNK 2. Selanjutnya klik tombol tambah. Maka data mobil akan bertambah dan berhasil disimpan. 3. Bila tombol cancel diklik maka data yang akan diisikan akan terhapus semua. 4. Bila tombol Back diklik kembali ke halaman utama rental mobil. Untuk mencari data ketersediaan mobil dengan ID, MERK, dan Nama tertentu dapat lakukan langkah : Pada kotak Kategori pilih salah satu ID atau MERK atau NAMA. Bila ID yang dipilih masukkan ID mobil pada kotak Item. Bila Kategori yang dipilih NAMA maka pada kotak Item masukkan NAMA mobil. Bila yang 73
dipilih MERK mobil maka pada kotak Item masukkan MERK mobil. Lakukan langkah-langkah berikut ini untuk JADWAL Jadwal berfungsi untuk melihat mobil apa saja yang terpakai. 1. Klik menu item jadwal 2. Selanjutnya, untuk melihat jadwal mobil yang terpakai, pilihlah berdasarkan tanggal. 3. Bila tombol Back diklik maka akan kembali ke halaman utama rental mobil.