SKPL dan DPPL Sistem Informasi Tracer Study Institut Teknologi Sepuluh Nopember
DPPL RPLBO
description
Transcript of DPPL RPLBO
-
DOKUMEN PEMBANGUNAN PERANGKAT LUNAK
untuk:
Dipersiapkan oleh:
Mirella Tri Ratnasari (095314003)
Rafaela Rosi Prihaningrum (095314012)
Setyo Resmi Probowati (095314039)
Fiona Endah Kwa (095314041)
-
2
Program Studi Teknik Informatika Universitas Sanata Dharma Yogyakarta
Program Studi
Teknik Informatika
USD
Nomor Dokumen Halaman
DPPL-DOC-2009 1/29
Revisi 0 Tgl: 16 April
2009
DAFTAR PERUBAHAN
Revisi Deskripsi
A
B
C
D
E
F
G
-
3
INDEX
TGL
- A B C D E F G
Ditulis
oleh
Diperiksa
oleh
Disetujui
oleh
Daftar Halaman Perubahan
Halaman Revisi Halaman Revisi
-
4
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
-
5
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
-
6
1 Pendahuluan
1.1 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.
-
7
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 :
Pencatatan data diri penyewa
Pencatatan data penyewaan mobil
Pencatatan data ketersediaan mobil
Pencatatan data pengembalian mobil
Pembuatan jadwal penyewaan mobil
2.2.1 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
mencatat data diri penyewa
mobil
Merupakan tampilan yang digunakan untuk
memasukkan data diri penyewa mobil untuk
selanjutnya disimpan dalam database
SRS-K-003 Operator bertugas untuk
mencatat data penyewaan
mobil
Merupakan tampilan yang digunakan untuk
memasukkan data penyewaan mobil untuk
selanjutnya disimpan dalam database
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
-
8
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
-
9
Operator Login
Sign Up Mencatat data diri penyewa mobil Mencatat data penyewaan mobil Mencatat data ketersediaan mobil Membuat jadwal penyewaan mobil Mencatat data pengembalian mobil
3.3 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
-
10
login pada form Welcome
3. Operator memasukkan
username dan password pada Login
dialog
4. Operator menekan tombol OK
pada form Login Dialog
7. Operator dapat melihat form
utama
2. Sistem menampilkan form LoginDialog
5. Sistem akan memvalidasi username dan
password
6. Sistem menampilkan 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
3. Operator memasukkan nama
operator, username, password, dan
confirm password pada form Sign
Up
4. Operator menekan tombol Submit
2. Sistem menampilkan form Sign Up
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
-
11
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
3. Operator memasukkan data diri penyewa
berupa idPenyewa, namapenyewa,
noIdentitas,alamat penyewa, dan no telp penyewa
4. Operator menekan tombol submit pada form
DataPenyewaPanel
2.Sistem menampilkan 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
-
12
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
3.Operator memasukkan data
penyewaan berupa ID penyewa
7. Operator memasukkan id mobil pada
form DataPenyewaanMobilPanel
2.Sistem menampilkan form
DataPenyewaanMobilPanel
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
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
-
13
11. Operator memasukkan jenis
layanan, jenis penyewa, dan tanggal
kembali
13. Operator menekan tombol Cetak
Nota
15. Operator menekan tombol Submit
pada form DataPenyewaanMobilPanel
12. Sistem menampilkan total pembayaran di
DataPenyewaanMobilPanel
14. Sistem mencetak nota transaksi penyewaan
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
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
2.Sistem menampilkan form
DataKetersediaanMobilPanel
5.Sistem memanggil method insert dari
kelas Intermobil
6. Sistem menyimpan data ketersediaan
mobil pada tabel mobil melalui perantara
kelas Intermobil
-
14
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
3.Operator memilih tanggal yang
akan dilihat jadwalnya pada form
JadwalPanel
2.Sistem menampilkan 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
-
15
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
3.Operator memasukkan data
pengembalian mobil berupa No
transaksi pada Form
DataPengembalianMobilPanel
8. Operator menekan tombol submit
2.Sistem menampilkan 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
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.
-
16
4 Model Analisis
4.1 Realisasi Use Case Tahap Analisis
Kelas Analisis:
4.1.1 Use Case : Login
Diagram colaboration:
//1:menekan tombol
login di Welcome
//2: tampil LoginDialog
Welcome
LoginDialog
//3: Operator memasukkan
username dan password
//5: validasi
username dan
password yang
dimasukkan
//5: sistem
menampilkan
FormUtama
FormUtama
//6: operator dapat
melihat FormUtama
Operator
//5: operator
menekan tombol OK
-
17
Diagram Squence
Operator
//7. Operator dapat
melihat FormUtama
//1. loginButton()
//2. Tampil
LoginDialog
:Welcome :LoginDialog :FormUtama
//3. Memasukkan
username dan
password
//5. Validasi username
dan password
//6.Sistem
menampilkan
FormUtama
//4. Menekan tombol
OK
-
18
4.1.2 Use case : Sign Up
COLABORATION SIGNUP
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
Login
//1. Operator menekan
tombol SignUp
//2. Tampil form
Signup //5. Callmethod
insertOperator
Welcome Form
SignUp
//3. Operator Memasukkan
namaoperator,username,passw
ord,confirmpassword 4. Tekan
tombol
submit
//3a.
//4a.
//3b.
//4b.
//3c.
//4c.
//5a.
//5b. SignUpA
ddContr
oller
//6.Sistem
menyimpa
n data
operator
ke tabel
login
6a 6b
//5c.
-
19
4c. Operator menekan tombol Cari
5c.Call method getByIDOPERATOR/getByNAMAOPERATOR pada kelas
SignUpAddController
Diagram sequence signup
:Welcome :Form SignUp :Login
//1. Operator
menekan tombol
SignUp
2:// Tampil Form
SignUp
3:// Memasukkan
namaoperator,username
,password,confirmpassw
ord 4:// menekan tombol
submit
6:// Sistem
menyimpan data
operator
:SignUpAddCo
ntroller
5:// Call
insertOperator
6a://
4a//
5a://
3a://
3b://
3c://
4b://
5b://
6b://
4c://
5c://
-
20
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
-
21
4.1.3 Use Case : Mencatat Data Diri Penyewa
Diagram colaboration
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
//1. Operator
memilih menu item
DataPenyewa
//2. Tampil
DataPenyewaPanel
//6
.
FormUtama DataPenyewa
Panel
//3.
//4. Tekan
tombol
submit
DataPenyewa
SignUpAdd
Controller
//5
.
//3a //5a
//4a
.
//6a
//7
.
//8
.
//7a.
//8a.
//6b
//3b
//4b tekan
tombol cari
//5b
.
//6c menampilkan
data penyewa
-
22
Diagram Squence
:FormUtama :DataPenyewa
Panel
:DataPenyewa
1://Operator memilih
menu item
DataPenyewa
Operator
2:// Menampilkan
DataPenyewaPanel
3:// Memasukkan data
penyewa
4:// Simpan data
penyewa
5:// Sistem menyimpan
data penyewa
-
23
4.1.4 Use Case : Mencatat Data Penyewaan Mobil
Diagram colaboration:
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
//1. Operator memilih
menu item
DataPenyewaanMobil
//2. Tampil
DataPenyewaanMo
bilPanel
//4.
FormUtama DataPenyewa
anMobilPanel
//3. Memasukkan
id penyewa
DataPenyewa
an
Operator
Intermobil
//5.
//6. Tampil data
penyewa
//7. Memasukkan
Id mobil
//8.
//9.
//10. Tampil data
mobil
//11. Memilih jenis layanan,
jenis penyewa, tanggal
kembali //12. Tampil total pembayaran
//15. Tekan tombol submit
//16. Simpan
data
penyewaan
//13. Tekan tombol cetak faktur
//14. Sistem mencetak nota transaksi
-
24
:FormUtama :DataPenyewaa
nMobilPanel
:Intermobil :DataPenyewaa
n
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
15:// tekan tombol
submit
16:// simpan data
penyewaan
13:// tekan cetak faktur
14://Sistem
mencetak nota
-
25
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:
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
//1. Operator memilih
menu item
DataKetersediaanMobil
//2. Tampil
DataKetersediaanM
obilPanel
//5.
FormUtama DataKetersedi
aanMobilPanel
//3. Operator
Memasukkan
data mobil
4. Tekan
tombol
ADD
DataMobil
//3a.
//4a. Tekan
tombol cari
//5a.
//3b.
//4b. Tekan
tombol
hapus
//5d
//3b.
//4a. Tekan
tombol cari
//3c.
//4a. Tekan
tombol cari
//5b.
//5c. Inter
Mobil
6 6a 6c 6b 6d
7 Tampil
data mobil
-
26
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
-
27
Diagram Squence :
:FormUtama :DataKetersed
iaanMobilPan
el
:DataMobil
//1. Operator
memilih menu item
DataKetersediaanM
obil
Operator
2:// Menampilkan
DataKetersediaanM
obilPanel
3:// Memasukkan data
mobil
4:// menekan tombol
tambah
6:// Sistem
menyimpan data
mobil
:InterMobil
5:// Call method
insert
3a://
4a://
5a://
6b://
4b:// 5b://
6a:// 3b://
3c://
5c:// 6c://
3d://
5d://
6d://
-
28
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
Diagram colaboration:
DataSewa
//1. Operator memilih
menu item Jadwal
//2. Tampil
form Jadwal
FormUtama JadwalPanel
//3. Memilih
tanggal sewa
Operator
Intermobil
//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 ke
tabel Jadwal Pemakaian
mobil
-
29
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
-
30
4.1.7 Use Case : Data pengembalian mobil
Diagram colaboration:
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
//1. Operator memilih
menu item
DataPengembalianMo
bil
//2. Tampil
DataPengembalian
MobilPanel
FormUtama DataPenngem
balianMobilPa
nel
//3. Memasukkan
no transaksi sewa
//8. Tekan tombol
submit
DataSewa
Operator //7. Sistem menampilkan
data sewa , lama
keterlambatan dan total
Intermobil
//4.
//5.
//9.
DataMobil
//10.
//6. Sistem
menghitung biaya
sewa berdasarkan
jumlah hari pinjam
dan lama
keterlambatan
-
31
Diagram squence :
:FormUtama :DataPengemba
lianMobilPanel :Intermobil :DataSewa
Operator
1://memilih menu
item Data
Pengembalian
Mobil
2://menampilkan
DataPengembalianM
obilPanel
3://memasukkan no
transaksi sewa
4://memanggil
method
getBynoTransaksi()
dengan memanggil
SPCariPengembalian
5://Cari data
penyewaan
berdasarkan
no,transaksi
sewa
6:// Sistem
menghitung
biaya sewa
berdasarkan
jumlah hari
pinjam dan
lama
keterlambatan
7:// Sistem
menampilkan data
penyewaan lama
keterlambatan dan total
8://tekan tombol submit
10:// Mengganti status
sewa mobil
berdasarkan id mobil
9:// Memanggil method
updatestatus()
:DataMobil
-
32
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
-
33
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 Daftar Tanggung-Jawab
Daftar Atribut
TestConnection 1. getConnection(Login login)
2. getConnection()
3. setConn(Connection connection)
1.connection;
2.ok;
3. jdbcURL
4. user
5.password
Login
1.setusername(String username)
2.getusername()
3.setPassword(String Password)
4.getpassword()
1.username
2.password
Data Penyewa
1. set get semua atribut
1. ID _penyewa,
2. No_identitas,
3. nama_penyewa,
4. alamat
5. no telepon
-
34
Data Mobil
1. set get semua atribut
1. id_kendaraan
2. nama mobil
3. warna
4. harga_sewa
5. status
6.merk_Mobil
7.No_polisi
8.No_STNK
9. no_kendaraan
DataSewa set get atribut 1.notransaksi;
2.tanggal;
3.alamat;
4.noTelp;
5.idMobil;
6.idPenyewa;
7.namaPenyewa;
8.namaMobil;
9.merkMobil;
10.warnaMobil;
11.jenisSewa;
12.lamaSewa;
13.tglKembali;
14.namaOperator;
15.total;
16.hargasewa;
Welcome
loginButtonActionPerformed() 1. LoginButton;
2. WelcomeLabel;
3. jDesktopPane1;
4. picLabel;
LoginDialog
okButtonActionPerformed()
1CancelButton;
2.OKButton;
3.PasswordField;
4.PasswordLabel;
5.UserNameField;
6. UserNameLabel;
7.jDesktopPane1;
8.piclabe;
9.judullabel;
Utama
1.DataPenyewaItemActionPerformed()
2.DataPenyewaanMobilItemActionPerforme
d()
1. transaksiMenu
2. viewMenu
3. dataPenyewaItem
4. datapenyewaanMobilItem
-
35
3.DataPengembalianMobilItemActionPerfor
med()
4.JadwalPenyewaanItemActionPerformed()
5.DataKetersediaanMobilItemActionPerfor
med()
5. dataKetersediaanMobilItem
6. dataPengembalianMobilItem
7. jadwalPenyewaanItem
8.piclabel
9.jmenubar;
DataPenyewaPan
el
bersih()
SubmitbuttonActionPerformed()
AlamatLabel
AlamatTF
IDLabel
IDTF
JudulLabel
NOIDLabel
NOIDTF
NamaLabel
NamaTF
NoTelpLabel
SubmitButton
TlpnTF
DataPenyewaan
MobilPanel
DataPenyewaanMobilPanel()
buatnomor()
submitButtonActionPerformed(java.awt.eve
nt.ActionEvent evt)
IDTFKeyReleased(java.awt.event.KeyEvent
evt)
idMobilTFKeyReleased(java.awt.event.Key
Event evt)
lamaSewaFieldKeyPressed(java.awt.event.
KeyEvent evt)
tanggalChooserKembaliPropertyChange(jav
a.beans.PropertyChangeEvent evt)
AlamatTF;
IDPenyewatxt;
IDTF;
JAMTF;
NAMAOPTF;
NOTRANTF;
NamaPenyewatxt;
NamaTF;
Notranstxt;
TlpnTF;
alamatxt;
backgroundLabel;
hargaSewaLabel;
hargaSewaTF;
idMobilLabel;
idMobilTF;
jDesktopPane1;
jSeparator1;
jSeparator2;
jSeparator3;
jSeparator4;
jTextField6;
jam;
jenisLayananLabel;
jenisPenyewaBox;
jenisPenyewaLabel;
judulLabel;
lamaSewaField;
-
36
lamaSewaLabel;
layananBox;
merkMobilLabel;
merkMobilTF;
nama;
namaMobilLabel;
namaMobilTF;
submitButton;
tanggalChooserKembali;
tanggalChooserSewa;
tanggalKembaliLabel;
tanggalSewaLabel;
telepontxt;
totalField;
totalLabel;
warnaMobilLabel;
warnaMobilTF;
DataPengembalia
nMobilPanel
DataPengembalianMobilPanel()
NOTRANTFKeyReleased(java.awt.event.K
eyEvent evt)
kabisat(int a)
tanggalKembaliTFKeyPressed(java.awt.eve
nt.KeyEvent evt)
lamaKeterlambatanTFKeyPressed(java.awt.
event.KeyEvent evt)
SubmitButton1ActionPerformed(java.awt.e
vent.ActionEvent evt)
IDPenyewatxt;
JAMTF;
MerkTF;
NAMAOPTF;
NOTRANTF;
NamaPenyewatxt;
Notranstxt;
SUBMITBUTTON;
Tanggal;
TotalField;
WarnaTF;
idMobilTF;
idPenyewaTF;
jDesktopPane1;
jLabel1;
jLabel10;
jLabel11;
jLabel12;
jLabel2;
jLabel3;
jLabel4;
jLabel5;
jSeparator1;
jSeparator2;
jSeparator3;
jSeparator4;
jTextField6;
jam;
lamaKeterlambatanTF;
nama;
namaMobilTF;
-
37
namaPenyewaTF;
tanggalKembaliTF;
tanggalPinjamLabel;
tanggalSewaTF;
terlambatLabel;
tglSekarangChooser;
Jadwal
- tanggalJadwalChooserPropertyChan
ge(java.beans.PropertyChangeEvent
evt)
- initComponents()
- btnBackActionPerformed
background;
jDesktopPane1;
jLabel1;
jLabel2;
jScrollPane1;
jadwalTabel;
tanggalJadwalChooser;
btnBack
DataKetersediaan
MobilPanel
DataKetersediaanMobilPanel1()
isiTabel()
kosongkanTeks()
bersih()
isiTeks()
loadmobil()
loadCari(int item,String cari)
statusAwal()
tidakBolehKosong()
initComponents()
btnCariActionPerformed(java.awt.event.Act
ionEvent evt)
btnTambahUpdateActionPerformed(java.aw
t.event.ActionEvent evt)
btnDeleteActionPerformed(java.awt.event.A
ctionEvent evt)
HARGATF;
IDTF;
IDtxt;
MERKTF;
NAMATF;
NOPOLTF;
NOSTNKTF;
NamaTxt;
STATUSTF;
WARNATF;
btnCari;
btnDelete;
btnTambahUpdate;
cmbKategori;
hargatxt;
jDesktopPane1;
jLabel1;
jLabel16;
jLabel17;
jLabel2;
jScrollPane1;
jSeparator1;
jSeparator2;
jSeparator3;
jSeparator4;
merktxt;
nopoltxt;
nostnktxt;
stattxt;
tabelMobil;
txtCari;
warnatx
Intermobil insert (DataMobil)
-
38
insertakhr(DataSewa sewa)
update (DataMobil)
updatestatus(DataMobil o)
delete (String)
deletesewa(String sewa)
getAll()
getByNamaMobil(String)
getBymrek(String)
getBywarna(String)
getByOne(String)
getByIdPenyewa(DataPenyewa penyewa)
getBynotran(DataSewa s)
getByIdMobil(DataMobil mobil)
getBynoTransaksi(DataSewa sewa)
JadwalTableMode
l
getValueAt(),getColumnName(),
getRowCount(),getColumnName()
SignUp SignUp(), isiTabel(),
isiTeks(),loadOperator(), loadCari(),
statusAwal(),buatNomor(),
cancelButtonActionPerformed(),
submitButtonActionPerformed(),
cariButtonActionPerformed(),hapusButtonA
ctionPerformed(),
JButton Back;
JButton CANCELBUTTON;
JButton CARIBUTTON;
JPasswordField CONFIRMOPTF;
JButton EDITBUTTON;
JButton HAPUSBUTTON;
JTextField IDOPTF;
JLabel IDlbl;
JLabel ItemLabel;
JTextField ItemTf;
JLabel Judul;
JLabel JudulLabel;
JComboBox KatCombo;
JLabel KategoriLabel;
JLabel KonfirmLbl;
JTextField NAMAOPTF;
JLabel NamaOPLbl;
JPasswordField
PASSWORDOPTF;
JLabel Passwordlbl;
JButton SUBMITBUTTON;
JTable TabelOperator;
JTextField USEROPTF;
JLabel UserLbl;
JLabel confirmErrorLabel;
JDesktopPane jDesktopPane1;
JLabel picLabel;
SignUpAddContr
oller
getAll(), getByIDOperator(String
ID),getByNAMAOPERATOR(String
nama), insertOperator(Login o),
deleteOperator(String o),
-
39
updateOperator(Login o),getAllPenyewa(),
getByIDPENYEWA(String ID),
getByNAMAPenyewa(String nama),
insertPenyewa(DataPenyewa
o),deletePenyewa(DataPenyewa
o),updatePenyewa(DataPenyewa o)
4.4 Paket Analisis
4.4.1 Identifikasi Paket Analisis
No Nama Paket Use Case Terkait
1.
Login
1. Login
2. Sign Up
2 Data Penyewa 1.Mencatat Data Diri Penyewa
3
Data Mobil
1 . Mencatat Data Penyewaan Mobil
2. Mencatat Data Pengembalian Mobil
3. Membuat Jadwal Penyewaan Mobil
4. Mencatat Data Ketersediaan Mobil
4.4.2 Identifikasi Kelas Analisis tiap Paket
No Nama Paket Nama Kelas Analisis Jenis Kelas
(Boundary, Control,
Entity)
1 Paket Login 1. Welcome
2 LoginDialog
3 Login
4 Utama
5.SignUp
1.Boundary
2.Boundary
3 Entity
4 Boundary
5.Boundary
2 Paket DataPenyewa 1. DataPenyewaPanel
2.DataPenyewa
1.Boundary
2.Entity
3 Paket DataMobil 1.DataKetersediaanMobilPanel
2. DataPengembalianPanel
3. DataPenyewaanMobilPanel
4.Jadwal
5. DataMobil
6. Intermobil
7.JadwalTableModel
1 Boundary
2 Boundary
3 Boundary
4 Boundary
5 Entity
6 Controller
7 Controller
-
40
4 Paket DBKoneksi 1. TestConnection 1. Entity
5 Paket DataSewa 1.DataSewa
2.SignUpAddController
1.Entity
2.Controller
6 Paket Main 1.RentalMobil 1.Controller
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
5.1.2 Sign Up
5.1.3 Mencatat Data Penyewaan
Form
Utama
Data
Penyewaan
Panel
Data Mobil
InterMobil
Data
Penyewa
RentalMobil Welcome Sign Up
-
41
5.1.4 Mencatat Data Ketersediaan Mobil
5.1.5 Mencatat Data Diri Penyewa
5.1.6 Mencatat Data Pengembalian Mobil
5.1.7 Melihat Jadwal Penyewaan
Form
Utama
Data
Ketersediaan
Panel
Data Mobil
InterMobil
Form
Utama
Data
Pengembalian
Mobil Panel
Data
Sewa
InterMobil
TestConnection
JadwalTable
Model
Form
Utama
Jadwa Panel
TestCo
nnectio
n
DataSe
wa
Intermob
il
-
42
5.2 Diagram Kelas Keseluruhan
5.3 Kelas Perancangan
No Nama Kelas Perancangan Nama Kelas Analisis
1 Login -Welcome
-LoginDialog
-Login
-FormUtama
-SignUp
2 Data Mobil -DataKetersediaanMobilPanel
Rental
Mobil
Welcome TestCon
nection
Login
Dialog
Form
Utama
DataPenyew
aPanel
DataKeterse
diaanPanel
DataPenyew
aanPanel
DataPengemb
alianPanel
Jadwal
DataPeny
ewa
Data
Mobil
Inter
mobil
DataPe
nyewa
Data
Mobil
Inter
mobil
DataS
ewa
Interm
obil
Data
Sewa Inter
mobil
Test
Con
necti
on Jadw
alTa
bleM
odel
-
43
-DataPengembalianMobilPanel
-DataPenyewaanMobilPanel
-Jadwal
- JadwalTableModel
-DataMobil
-Intermobil
3 Data Penyewa -DataPenyewa
-DataPenyewaPanel
4 Data Sewa -DataSewa
-SignUpAddController
5 DBKoneksi - TestConection
6 Main -RentalMobil
5.3.1 Operasi dan Atribut
Kelas:TestConnection.java
Nama Operasi Visibility
(private, public)
Keterangan
getConnection(Login login) Public digunakan untuk melakukan
koneksi ke database
getConnection() public digunakan untuk melakukan
koneksi ke database
Nama Atribut Visibility
(private, public)
Tipe
conn
connection
ok
jdbcURL
user
password
private
private
private
private
private
private
Connection
Connection
boolean
String
String
String
Kelas : Login.java
Nama Operasi Visibility
(private, public)
Keterangan
-
44
setUsername
getUsername
public
public
untuk mengisi nilai String ke
dalam username
untuk mengambil nilai
username
setPassword
getPassword
public
public
untuk mengisi nilai String ke
dalam password
untuk mengambil nilai
password
setLogin
getLogin
public
public
untuk mengisi nilai username
dan password ke dalam login
untuk mengambil nilai login
Nama Atribut Visibility
(private, public)
Tipe
userName
password
login
private
private
private
String
String
Login
Kelas DataMobil.java
Nama Operasi Visibility
(private, public)
Keterangan
set() untuk semua atribut
get() untuk semua atribut
Public
Public
untuk mengisi nilai pada
masing-masing atribut
untuk mengambil nilai pada
masing-masing atribut
Nama Atribut Visibility
(private, public)
Tipe
id_mobil
nama_mobil
warn
harga_sewa
status
merk_Mobil
No_polisi
private
private
private
private
private
private
private
String
String
String
int
String
String
String
-
45
No_STNK
Quantity
private
private
String
Int
Kelas DataPenyewa.java
Nama Operasi Visibility
(private, public)
Keterangan
set() untuk semua atribut
get() untuk semua atribut
public
public
untuk mengisi nilai pada
masing-masing atribut
untuk mengambil nilai pada
masing-masing atribut
Nama Atribut Visibility
(private, public)
Tipe
ID_penyewa
No_identitas
nama_penyewa
alamat
no_telepon
private
private
private
private
private
String
String
String
String
String
Intermobil.java
Nama Operasi Visibility
(private,
public)
Keterangan
insert (DataMobil)
insertakhr(DataSewa sewa)
update (DataMobil)
updatestatus(DataMobil o)
delete (String)
deletesewa(String sewa)
getAll()
getByNamaMobil(String)
getByMerk(String)
Public
Public
public
public
public
public
public
public
public
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
-
46
getBywarna(String)
getByOne(String)
getByIdPenyewa(DataPenyewa
penyewa)
getBynotran(DataSewa s)
getByIdMobil(DataMobil
mobil)
getBynoTransaksi(DataSewa
sewa)
getJadwal(String tanggalSewa)
public
public
public
public
public
public
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
menampilkan jadwal penyewaan
berdasarkan tanggal sewa
Nama Atribut Visibility
(private,
public)
Tipe
- - -
SignUpAddController.java
Nama Operasi Visibility
(private, public)
Keterangan
getAll()
getByIDOperator(String ID)
getByNAMAOPERATOR(String
nama)
insertOperator(Login o)
deleteOperator(String o)
updateOperator(Login o)
public
public
public
public
public
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
-
47
getAllPenyewa()
getByIDPENYEWA(String ID)
getByNAMAPenyewa(String
nama)
insertPenyewa(DataPenyewa o)
deletePenyewa(DataPenyewa o)
updatePenyewa(DataPenyewa o)
public
public
public
public
public
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
Nama Atribut Visibility
(private, public)
Tipe
- - -
DataSewa.java
Nama Operasi Visibility
(private, public)
Keterangan
set() untuk semua atribut
get() untuk semua atribut
public
public
untuk mengisi nilai pada
masing-masing atribut
untuk mengambil nilai pada
masing-masing atribut
Nama Atribut Visibility
(private, public)
Tipe
notransaksi
tanggal
alamat
noTelp
idMobil
idPenyewa
namaPenyewa
namaMobil
merkMobil
warnaMobil
jenisSewa
lamaSewa
tglKembali;
namaOperator
total
private
private
private
private
private
private
private
private
private
private
private
private
private
private
private
String
String
String
String
String
String
String
String
String
String
String
String
String
String
-
48
hargasewa private int
int
JadwalTableModel.java
Nama Operasi Visibility
(private, public)
Keterangan
getRowCount()
getColumnCount()
getValueAt()
getColumnName()
private
private
private
private
Untuk mengambil jumlah
baris
Untuk mengambil jumlah
kolom
Untuk mengambil index dari
baris dan kolom di tabel
Jadwal
Untuk mengambil nama
kolom tabel Jadwal
Nama Atribut Visibility
(private, public)
Tipe
sewa Private List
5.3.2 Algoritma/Query
Nama Kelas : Login
Nama Operasi : okButtonActionPerformed()
Algoritma : (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
Nama Kelas : DataPenyewaPanel
-
49
Nama Operasi : submitButtonActionPerformed()
Algoritma : (Algo-002)
Query :
No Query Query Keterangan
Q-002 insert into DATAPENYEWA values
(IDTF.getText(), NoTF.getText(), NamaTF.getText() , AlamatTF.getText() , TlpnTF.getText() )
untuk menambahkan data
penyewa baru pada database
Nama Kelas : Intermobil
Nama Operasi : insert(DataMobil o)
Algoritma : (Algo-003)
No Query Query Keterangan
Q-003 "insert into DATAMOBIL
values(?,?,?,?,?,?,?,?,?,?)"
untuk memasukkan data
mobil ke dalam table mobil
Nama Kelas : Intermobil
Nama Operasi : insertakhr(DataSewa sewa)
Algoritma : (Algo-004)
No Query Query Keterangan
Q-004 insert into DATASEWA
values(?,?,?,?,?,?,?,?,?,?)
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
-
50
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
-
51
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
-
52
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.
-
53
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
-
54
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
Query Keterangan
Q-
017
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
Untuk mencari
data penyewaan
mobilberdasarkan
no transaksi
-
55
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
Query Keterangan
Q-018 select NOTRANSAKSISEWA as no
from DATAPENYEWAAN ORDER
by NOTRANSAKSISEWA desc
Untuk menampilkan no transaksi sewa
yang ada pada table datapenyewaan dan
diurutkan secara descending
Nama Kelas : DataPenyewaanPanel
Nama Operasi :submitButtonActionPerformed
Algoritma : (Algo-019)
No
Query
Query Keterangan
Q-019 "insert into DATAPENYEWAAN values ('" +
NOTRANTF.getText()
Untuk menambahkan data ke
dalam table datapenyewaan
-
56
+ "','" + NAMAOPTF.getText()
+ "','" + tanggalSewa
+ "','" + IDTF.getText()
+ "','" + NamaTF.getText()
+ "','" + AlamatTF.getText()
+ "','" + TlpnTF.getText()
+ "','" + idMobilTF.getText()
+ "','" + namaMobilTF.getText()
+ "','" + warnaMobilTF.getText()
+ "','" + merkMobilTF.getText()
+ "','" + hargaSewa
+ "','" +
layananBox.getSelectedItem().toString()
+ "','" +
jenisPenyewaBox.getSelectedItem().toString()
+ "','" + tanggalKembali
+ "','" + lamaSewa
+ "','" + total + "') ";
Nama Kelas : DataPenyewaanPanel
Nama Operasi :noTransaksiField
Algoritma : (Algo-020)
No
Query
Query Keterangan
Q-020 select max(to_number(notransaksisewa)) as
no from datapenyewaan
Untuk menampilkan nomor
transaksi pada text field nomor
transaksi
Nama Kelas : InterMobil
Nama Operasi : getJadwal(String tanggalSewa)
Algoritma : (Algo-021)
No
Query
Query Keterangan
Q-021 select m.idmobil, m.namamobil,
s.idpenyewa, s.namapenyewa,
Untuk menampilkan nomor
transaksi pada text field nomor
-
57
s.tanggalsewa, s.tanggalkembali from
DATAMOBIL m, DATAPENYEWAAN s
where m.IDMOBIL = s.IDMOBIL and
tanggalsewa='" + tanggalSewa + "'"+"AND
LOWER(STATUSMOBIL)='not available'"
transaksi
Nama Kelas : SignUpAddController
Nama Operasi : getByIDOPERATOR
Algoritma : (Algo-022)
No
Query
Query Keterangan
Q-022 select * from Login where
IDOPERATOR like ?
Untuk menampilkan nomor
idoperator,namaoperator,username,password
berdasarkan idoperator yang dimasukkan
Nama Kelas : SignUpAddController
Nama Operasi : getByNAMAOPERATOR
Algoritma : (Algo-023)
Query
No
Query
Query Keterangan
Q-023 select * from LOGIN where
NAMAOPERATOR like ?
Untuk menampilkan nomor
idoperator,namaoperator,username,password
berdasarkan namaoperator yang dimasukkan
Nama Kelas : SignUpAddController
Nama Operasi : deleteOperator
Algoritma : (Algo-024)
Query
No
Query
Query Keterangan
Q-024 delete from LOGIN where
IDOPERATOR =?
Untuk menghapus data login berdasarkan
idoperator
-
58
Nama Kelas : SignUpAddController
Nama Operasi : updateOperator
Algoritma : (Algo-025)
Query
No
Query
Query Keterangan
Q-025 update LOGIN set
NAMAOPERATOR=?,"
+"USERNAME=?,PASSWORD=?,where
IDOPERATOR=?
Untuk mengubah data Login berupa
namaoperator, username,password,
dan idoperator
Nama Kelas : SignUpAddController
Nama Operasi : getAllPenyewa()
Algoritma : (Algo-026)
Query
No
Query
Query Keterangan
Q-026 select * from DATAPENYEWA Untuk menampillkan semua datapenyewa
Nama Kelas : SignUpAddController
Nama Operasi : getByIDPENYEWA
Algoritma : (Algo-027)
Query
No
Query
Query Keterangan
Q-027 select * from DATAPENYEWA
where IDPENYEWA like ?
Untuk menampilkan data penyewa
berdasarkan idpenyewa
Nama Kelas : SignUpAddController
Nama Operasi : getByNAMAPenyewa
-
59
Algoritma : (Algo-028)
Query
No
Query
Query Keterangan
Q-028 select * from DATAPENYEWA
where NAMAPENYEWA like ?
Untuk menampilkan data penyewa
berdasarkan namapenyewa
Nama Kelas : SignUpAddController
Nama Operasi : insertPenyewa
Algoritma : (Algo-029)
Query
No
Query
Query Keterangan
Q-029 insert into DATAPENYEWA
values(?,?,?,?,?)
Untuk memasukkan data penyewa baru
Nama Kelas : SignUpAddController
Nama Operasi : deletePenyewa
Algoritma : (Algo-030)
Query
No
Query
Query Keterangan
Q-030 delete from DATAPENYEWA
where IDPENYEWA =?
Untuk memasukkan data penyewa baru
Nama Kelas : SignUpAddController
Nama Operasi : updatePenyewa
Algoritma : (Algo-031)
Query
No
Query
Query Keterangan
Q-031 update DATAPENYEWA set Untuk mengubah data penyewa
-
60
NOIDENTITAS=?,"
+"NAMAPENYEWA=?,ALAMAT=?,
NOTELEPON=?,where
IDPENYEWA=?
5.3 Perancangan Basis Data
5.5 Perancangan Antarmuka
Id_Objek Jenis Nama Keterangan
submitButton Button Submit jika diklik, maka akan menyimpan
data pada textfield ke database
backButton Button Back Jika diklik, maka keluar dari form
menu item dan kembali ke menu
utama
cancelButton Button Cancel Untuk mengkosongkan data pada
textfield
LoginButton Button Login Untuk masuk ke menu utama
SignUpButton Button SignUp Untuk membuat data operator baru
hapusButton Button Hapus Untuk menghapus item pada tabel
-
61
ubahButton Button Ubah Untuk mengubah item data pada tabel
OKButton Button OK Untuk login ke system
6 Implementasi
6.1 Implementasi Kelas
No Nama Kelas Nama File Fisik Nama File Executable Programmer
1 Login Login.java Login.class Rosi
2 Welcome Welcome.form Welcome.class Setyo
3 SignUp.java SignUp.form SignUp.class Rosi
4 SignUpAddController
.java
SignUpAddControl
ler.java
SignUpAddController.class Rosi
5 LoginDialog LoginDialog.form LoginDialog.class Fiona
6 Utama Utama.form Utama.class Setyo
7 TestConnection TestConn.java TestConn.class Fiona
8 DataPenyewaPanel DataPenyewaPanel.
form
DataPenyewaPanel.class Setyo
9 DataPenyewa DataPenyewa.java DataPenyewa.class Mirella
10 DataKetersediaanMo
bilPanel
DataKetersediaanM
obilPanel.form
DataKetersediaanMobilPane
l.class
Mirella
11 DataPengembalianPa
nel
DataPengembalianP
anel.form
DataPengembalianPanel.cla
ss
Rosi
12 DataPenyewaanMobi
lPanel
DataPenyewaanMo
bilPanel.form
DataPenyewaanMobilPanel.
class
Fiona
13 Jadwal Jadwal.form Jadwal.class Setyo
14 DataMobil DataMobil.java DataMobil.class Setyo
-
62
15 RentalMobil RentalMobil.java RentalMobil.class Mirella
16 Intermobil Intermobil.java Intermobil.java Rosi
17 DataSewa DataSewa.java DataSewa.java Fiona
18 DataMobil DataMobil.java DataMobil.java Mirella
6.2 Implementasi Basis Data
6.3 Implementasi Antarmuka
No Nama Kelas Nama Tabel Nama File SQL Programmer
1 Kelas
DataPenyewaanMobilPanel
DATAPENYEWA SPCARIPENYEWA Fiona
DATAMOBIL SPCARIMOBIL Setyo
2 Kelas
DataPengembalianMobilPanel
DATAPENYEWAAN CARIPENGEMBALIAN Mirella
No Antarmuka Nama File
Fisik
Nama File Executable Programmer
1 LoginDialog LoginDialog.
java
LoginDialog.class Rosi
2 Utama FormUtama.
java
FormUtama.class Setyo
3 Welcome Welcome.jav
a
Welcome.class Setyo
4 DataPenyewaP
anel
DataPenyew
aPanel.java
DataPenyewaPanel.class Mirella
5 DataKetersedia
anMobilPanel
DataKeterse
diaanMobilP
anel.java
DataKetersediaanMobilPanel.
class
Rosi
6 DataPengemba
lianMobilPanel
DataPengem
balianMobil
Panel.java
DataPengembalianMobilPanel
.class
Mirella
7 DataPenyewaa
nMobilPanel
DataPenyew
aanMobilPa
nel.java
DataPenyewaanMobilPanel.cl
ass
Fiona
-
63
7 Pengujian
7.1 Rencana dan Prosedur Pengujian
7.1.1 Rencana Pengujian
No Use Case Jenis Pengujian Identifikasi
1 Login Black box
U-1-01
2 Mencatat data
diri penyewa
Black box
U-2-01
3 Mencata data
penyewaan
mobil
Black box
U-3-01
4 Mencatat data
pengembalian
mobil
Black box
U-4-01
5 Mencatat data
ketersediaan
mobil
Black box
U-5-01
U-5-02
U-5-03
6 Melihat jadwal
penyewaan
mobil
Black box
U-6-01
7.2 Kasus Uji
7.2.1 Pengujian Use Case < Login >
Identifikasi
Deskripsi Prosedur
Pengujian
Masukan Keluaran yang
Diharapkan
Kriteria
Evaluasi
Hasil
Hasil
yang
Didapat
Kesi
mpul
an
8 Jadwal Jadwal.java Jadwal.class Setyo
9 SignUp SignUp.java SignUp.class Rosi
-
64
U-1-01 Pengujian
masuk ke
sistem
melalui form
LoginDialog
-Sistem
dijalankan
melalui kelas
RentalMobil
-Tekan tombol
Login pada form
Welcome
-Masukkan
username dan
password pada
field di form
LoginDialog
-Tekan tombol
OK
-Tekan tombol
Cancel
Username dan
password
-Tampil
LoginDialog
-Tampil
FormUtama
-Keluar dari
sistem
RentalMobil
7.2.2 Pengujian Use Case < Mencatat Data Diri Penyewa >
Identifikasi Deskripsi Prosedur
Pengujian
Masukan Keluaran yang
Diharapkan
Kriteria
Evaluasi
Hasil
Hasil
yang
Didapat
Kesi
mpul
an
-
65
U-2-01 Pengujian
mencatat data
diri penyewa
-Sistem
menampilkan
FormUtama
-Masukkan ID
Penyewa,
No.Identitas,
Nama Penyewa,
Alamat
Penyewa,No
Telepon pada
textfield masing-
masing atribut
-Tekan tombol
Submit
-Memilih
Menu Item
Data Penyewa
dari menu
Transaksi
ID Penyewa,
No.Identitas,
Nama
Penyewa,
Alamat
Penyewa,No
Telepon
-Tampil
DataPenyewa
Panel
-Pesan : Data
Berhasil
disimpan
7.2.3 Pengujian Use Case < Mencatat Data Penyewaan Mobil >
Identifikasi Deskripsi Prosedur
Pengujian
Masukan Keluaran yang
Diharapkan
Krite
ria
Evalu
asi
Hasil
Hasil
yang
Didapat
Kesi
mpul
an
U-3-01 Pengujian
mencatat data
penyewaan
mobil
-Sistem
menampilkan
FormUtama
-Tekan Menu
Item Data
Penyewaan
Mobil dari menu
Transaksi
-Tampil
DataPenyewaan
MobilPanel
-No.Transaksi,
Tanggal , Jam
muncul secara
otomatis
-
66
-Masukkan ID
Penyewa, Nama
Penyewa,
Alamat
Penyewa,No
Telepon , ID
mobil , nama
mobil, warna,
mobil, harga
sewa, textfield
masing-masing
atribut
-Memilih jenis
layanan dan
jenis penyewa
-Memasukkan
tanggal kembali
melalui date
chooser
-Tekan enter
pada field Lama
Penyewaan
-Tekan tombol
Submit
ID Penyewa,
Nama
Penyewa,
Alamat
Penyewa,No
Telepon , ID
mobil , nama
mobil, warna,
mobil, harga
sewa
jenis layanan
dan jenis
penyewa
tanggal
kembali
Lama
penyewaan
muncul
-Total muncul
-Muncul pesan
Data berhasil
disimpan
7.2.4 Pengujian Use Case < Mencatat Data Pengembalian Mobil>
Identifikasi Deskripsi Prosedur
Pengujian
Masukan Keluaran yang
Diharapkan
Kriteria
Evaluasi
Hasil
Hasil yang
Didapat
Kesi
mpul
an
-
67
U-4-01
Pengujian
mencatat data
pengembalian
mobil
-Sistem
menampilkan
FormUtama
-Memilih menu
Item Data
Pengembalian
Mobil pada
menu Transaksi
-Memasukkan
nomor transaksi
penyewaan
mobil
Tekan enter
pada field
tanggal kembali
Tekan enter
pada field lama
keterlambatan
Tekan tombol
submit
Nomor
transaksi
-Form Data
Pengembalian
Muncul
-Muncul nama
operator, id
penyewa,
nama
penyewa, id
mobil, nama
mobil, merk
mobil, warna
mobil, tanggal
sewa, tanggal
kembali
berdasarkan
nomor
transaksi yang
dimasukkan
Muncul lama
keterlambatan
Muncul total
sewa
Data
pengembalian
berhasil
disimpan
-
68
7.2.5 Pengujian Use Case < Mencatat Data Ketersedian Mobil>
Identifikasi Deskripsi Prosedur
Pengujian
Masukan Keluaran yang
Diharapkan
Kriteria
Evaluasi
Hasil
Hasil yang
Didapat
Kesi
mpul
an
U-5-01
U-5-02
Pengujian
menambahkan
data
ketersediaan
mobil
Pengujian
mencari data
ketersediaan
mobil
-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
masing-
masing
-Tekan tombol
Tambah
-Memilih
nama
kategori
pada combo
box kategori
Memasukka
n item data
yang akan
di cari
ID mobil,
nama mobil,
merk
mobil,No
polisi, harga
sewa
perhari,
warna
mobil,
status
mobil,no
STNK.
Kategori
(nama, warna,
merk)
-Muncul
FormData
Ketersediaan
MobilPanel
-Data berhasil
disimpan
-
69
U-5-03
Pengujian
menghapus data
ketersediaan
mobil
Tekan
tombol cari
Klik baris
pada tabel
ketesediaan
tekan
tombol
hapus
Nama mobil
atau warna
mobil atau
merk mobil
Data mobil
pada baris
yang dipilih
Nama
mobil/wana
mobil/ merk
mobil sesuai
kata kunci
yang
dimasukkan
akan muncul
di tabel
Data
ketersediaan
mobil pada
baris yang
diklik akan
terhapus
-
70
7.2.5 Pengujian Use Case
Identifikasi Deskripsi Prosedur
Pengujian
Masukan Keluaran yang
Diharapkan
Kriteria
Evaluasi
Hasil
Hasil yang
Didapat
Kesim
pulan
U-6-01 Pengujian
melihat jadwal
penyewaan
mobil
-Sistem
menampilkan
FormUtama
-Memilih
menu Item
Jadwal
Penyewaan
pada menu
View
-Pilih tanggal
lewat date
chooser
Tanggal sewa
Muncul Form
JadwalPanel
Daftar mobil
yang disewa
pada tanggal
sesuai
masukan dari
date chooser
muncul pada
tabel
7.3 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
-
71
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 langkah-
langkah 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 data-
data 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