APLIKASI PENGOLAHAN DATA TRANSAKSI BENGKEL MOTOR DENGAN MENERAPKAN PROTOKOL
TWO PHASE LOCKING
(Studi Kasus Bengkel Anugrah Motor)
Skripsi
Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Komputer
Program Studi Teknik Informatika
Disusun Oleh : Ardy Christianto Joseph
105314092
PROGRAM STUDI TEKNIK INFORMATIKA JURUSAN TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA YOGYAKARTA
2016
i
TRANSACTION DATA PROCESSING APPLICATIONS MOTOR WORKSHOP USING
TWO PHASE LOCKING PROTOCOLS
(Case Study at Bengkel Anugrah Motor)
`
Thesis
Presented as Partial Fullfillment of the Requirements To Obtain Sarjana Komputer Degree
In Departement of Informatics Engineering
By :
Ardy Christianto Joseph 105314092
INFORMATICS ENGINEERING STUDY PROGRAM DEPARTMENT OF INFORMATICS ENGINEERING
FACULTY OF SIENCE AND TECHNOLOGY SANATA DHARMA UNIVERSITY
YOGYAKARTA
2016
ii
iii
iv
PERNYATAAN KEASLIAN KARYA
Saya menyatakan dengan sesungguhnya bahwa skripsi yang saya susun dan saya tulis ini tidak memuat karya orang lain , kecuali yang telah disebutkan dalam kutipan dan daftar pustaka , sebagaimana layaknya karya ilmiah.
Yogyakarta , ………. 2016
Penulis
Ardy Christianto Joseph
v
HALAMAN PERSEMBAHAN
Karya ini saya persembahkan kepada :
Tuhan Yesus Kristus atas segala berkat penyertaannya selama mengerjakan tugas akhir
Ayah dan Ibu yang selalu mendoakan dan memberi dukungan selama pengerjaan tugas akhir
Seluruh keluarga besar yang selalu memberi semangat dselama pengerjaan tugas akhir
Semua teman teman yang telah memberikan bantuan dan dukungan
vi
HALAMAN MOTTO
Dia memberi kekuatan kepada yang lelah dan menambah semangat kepada yang tiada berdaya.
(Yesaya 40:29)
Waktu dipenuhi dengan banyak kesempatan. dan seperti waktu setiap kesempatan hanya datang satu kali, saat anda lewatkan
kesempatan itu tak akan ada lagi kesempatan kedua
Tidak ada kata terlambat untuk belajar
vii
PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS
Yang bertanda tangan dibawah ini, saya mahasiswa Universitas Sanata Dharma Nama : Ardy Christianto Joseph
Nim : 105314092
Demi pengembangan ilmu pengetahuan saya memberikan kepada Perpustakaan Universitas Sanata Dharma karya ilmiah saya yang berjudul
APLIKASI PENGOLAHAN DATA TRANSAKSI BENGKEL MOTOR DENGAN MENERAPKAN
PROTOKOL TWO PHASE LOCKING
(Studi Kasus Bengkel Anugrah Motor)
Berserta perangkat yang diperlukan (bila ada). Dengan demikian saya memberikan kepada Perpustakaan Universitas Sanata Dharma untuk hak menyimpan, mengalihkan dalam bentuk media lain, mengolahnya dalam bentuk pangkalan data, mendistribusikanya secara terbatas, dan mempublikasikanya di internet dan media lain untuk kepentingan akademis tanpa perlu meminta izin dari saya maupun memberikan royalti kepada saya selama tetap mencantumkan nama saya sebagai penulis.
Demikian pernyataan saya ini saya buat dengan sebenarnya Dibuat di Yogyakarta
Pada tanggal ………..
Yang menyatakan,
Ardy Christianto Josep
viii
ABSTRAK
Transaksi pengambilan suku cadang dalam proses layanan sepeda motor sangat penting, terutama dalam pencatatan data stok suku cadang yang ada. Dalam mengurangi data stok suku cadang yang digunakan dalam proses layanan ini, manajemen transaksi diterapkan untuk menghindari kesalahan dalam pencatatan stok data suku cadang.
Transaksi di bengkel Anugrah Motor masih menggunakan pencatatan manual dengan cara menulis catatan kertas. Untuk meningkatkan kinerja bengkel Anugrah Motor, sistem pengolahan data transaksi dibuat. Sistem ini akan terhubung dengan database untuk melakukan pengolahan data bengkel Anugrah Motor. Dengan penggunaan database pada sistem ini, dimungkinkan ada masalah konkuren seperti: The Lost Update Problem, The Uncommited Dependency Problem and The Inconsistent Analysis Problem. Hal ini bisa terjadi karena penggunaan aplikasi secara bersamaan untuk proses transaksi pengurangan atau penambahan suku cadang oleh beberapa administrator. Oleh karena itu, manajemen transaksi dibutuhkan dalam proses transaksi pengurangan dan penambahan suku cadang, yang akan dibuat menggunakan Two Phase Locking (2PL) protokol untuk mengendalikan transaksi penambahan atau pengurangan stok suku cadang sehingga data yang diperoleh adalah benar.
Dalam tesis ini, protokol 2PL diuji dengan membuat aplikasi pengolahan data, pada studi kasus di bengkel Anugrah Motor. Sistem ini dibuat untuk membantu administrator dalam transaksi layanan jasa yang mencakup pencatatan data konsumen, rincian motor, rincian jasa, biaya total, dan pengurangan stok suku cadang yang digunakan dalam proses ini. Sistem ini memungkinkan menampilkan rincian dari setiap konsumen yang telah melakukan transaksi layanan jasa di bengkel Motor Anugrah.
Hasil dari pengujian sistem aplikasi transaksi dalam bengkel Anugrah Motor dengan menerapkan manajemen transaksi menggunakan protokol 2PL dirancang untuk membuat aplikasi yang mampu menghindari masalah konkuren serta meningkatkan kinerja administrator bengkel Anugrah Motor.
Kata kunci : Pengolahan Data, Transaksi, Manajemen Transaksi, Two Phase Locking
ix
ABSTRACT
Transactions of spare parts retrieval in the process of motorcycle services are very important, especially in data recording of the existing spare parts stock. In substracting data transaction of the parts used in the process of these services, transaction management is applied in order to avoid errors in the data recording stock of the spare parts. Transactions on Anugrah Motor Workshop still use manual recording by means of writing paper notes. To improve the performance of Anugrah Motor Workshop, transaction data processing system is made. This system will be connected to the database to perform data processing of Anugrah Motor Workshop. With the use of databases on this system, there may be problems of concurrent such as: The Lost Update Problem, The Uncommited Dependency Problem, and The Inconsistent Analysis Problem. This could happen due to the simulteneous use of applications, for transaction processing subtraction or addition of spare parts by some administrators.
Therefore, the transaction management is needed in the transaction process of spare parts' reduction and addition, which is going to be created using the Two Phase Locking (2PL) protocols to control transactions of addition or reduction in spare parts stock so that the data obtained is valid.
In this thesis, the Two Phase Locking protocols was tested by making application transaction of data processing, in the case study on Anugrah Motor Workshop. This system was designed to help administrator in transaction processing services that include consumer data recording, motor details, services, total costs, and the reduction of stock parts used in this process. This system enables displays of the details of every consumer who has made transaction processing services in the Anugrah Motor Workshop.
The results of the transaction data process application system testing in the motorcycle workshops with the implementation of transaction management using Two Phase Locking protocols, is designed to build applications that is able to avoid potential concurrent problems as well as increasing the performance of the Anugrah Motor Workshop administrator.
Keywords: Data Processing, Transaction, Transaction Management, Two Phase Locking
x
KATA PENGANTAR
Puji dan syukur kepada Tuhan Yesus Kristus yang telah memberikan berkat dan rahmatnya secara senantiasa tak berkesudahan serta kesempatan yang telah diberikan kepada penulis sehingga dapat menyelesaikan skripsi dengan judul " Aplikasi Pengolahan Data Transaksi Bengkel Motor Dengan Menerapkan Protokol Two Phase Locking (Studi Kasus Bengkel Anugrah Motor) "
Dalam kesempatan ini, penulis juga ingin mengucapkan terimakasih yang sebesar besarnya terhadap semua pihak yang telah memberikan dukungan dan waktunya sehingga skripsi ini dapat diselesaikan :
1. Bapak JB. Budi Darmawan S.T.,M.Sc selaku dosen pembimbing terimakasih atas semua pengorbanan waktu untuk memberikan bimbingan, diskusi, ilmu, serta kesabaran dalam membimbing penulis.
2. Bapak Sudi Mungkasi, Ph.D. Selaku Dekan Fakultas Sains dan Teknologi.
3. Ibu Dr Anastasia Rita Widiarti. Selaku ketua jurusan Teknik Informatika Universitas Sanata Dharma.
4. Ibu Dr Anastasia Rita Widiarti. S.si., M.Sc. selaku dosen pembimbing akademik.
5. Ibu Agnes Maria Polina, M.Sc., dan Dr Anastasia Rita Widiarti selaku dosen penguji. Yang telah memberikan kritik dan saran.
6. Kedua orang tua penulis. Terimakasih untuk semua semangat, dukungan dan kasih sayang yang diberikan selama ini.
7. Segenap keluarga besar yang telah mendukung dan memberi semangat penulis selama proses penyusunan tugas akhir .
8. Untuk Eduardus Hardika S.A., Wisnu Yhoga W., Alfonsus Doni S., I Nyoman Rama A. dan seluruh teman "2nd home" yang telah memberikan bantuan dan semangat dalam mengerjakan tugas akhir.
9. Untuk seluruh teman teman Teknik Informatika angkatan 2010. terimaka kasih atas dukungan dan kebersamaan selama kuliah di Universitas Sanata Dharma.
xi
Penulis Merasa masih banyak kekurangan dalam penyusunan laporan tugas akhir ini. Untuk itu, penlis mengarapkan saran dan kritik yang membangun dari segenap pembaca. Semoga tugas akhir ini dapat bermanfaat, khususnya pada bidang teknik informatika
Yogyakarta, ...2016
Penulis
Ardy Christianto Joseph
xii
DAFTAR ISI
HALAMAN PERSETUJUAN... ii
HALAMAN PENGESAHAN ... iii
PERNYATAAN KEASLIAN KARYA ... iiiv
HALAMAN PERSEMBAHAN ... v
HALAMAN MOTTO ... vi
ABSTRAK ... vii
ABSTRACT ... ix
KATA PENGANTAR ... x
DAFTAR ISI ... xii
DAFTAR GAMBAR ... xv
DAFTAR TABEL ... xviii
DAFTAR LISTING ... xx
DAFTAR GRAFIK ... xxii
BAB I ... 1
1.1 Latar Belakang ... 1
1.2 Rumusan Masalah ... 2
1.3 Tujuan ... 2
1.4 Batasan ... 2
1.5 Metodologi ... 3
1.6 Sistematika Penulisan ... 4
BAB II ... 5
2.1 Manajemen Transaksi ... 5
2.1.1 Concurency Control ... 6
2.1.2 Two Phase Locking atau 2pl ... 6
2.2 Pemodelan ... 9
2.2.1 Use case ... 9
2.2.2 Actor ... 10
2.2.3 Use Case Association Relationship ... 10
2.3 Entity Relationship Diagram (ERD) ... 11
2.3.1 Entitas ... 11
2.3.2 Atribut ... 11
xiii
2.3.3 Relasi... 11
2.4 Conceptual Database Design ... 12
2.5 Logical Database Design ... 12
2.6 Physical Database Design ... 13
BAB III ... 14
3.1 Gambaran Sistem Lama ... 14
3.2 Gambaran Sistem Baru ... 14
3.3 Requirment Analysis ... 15
3.3.1 Use Case Diagram ... 15
3.3.2 Definisi Aktor ... 16
3.3.3 Definisi Use Case ... 16
3.3.4 Skenario Use Case ... 17
3.4 Activity Diagram ... 29
3.5 Perangancan Diagram Sekuensial ... 41
3.6 Perancangan Diagram Kelas ... 51
3.7 Perancangan Konseptual Basisdata ... 52
3.8 Perancangan Logikal Basisdata ... 53
3.9 Perancangan Fisikal Basis Data ... 54
3.10 Desain User Interface ... 57
3.10.1 Halaman Utama Aplikasi ... 57
3.10.2 Halaman Menu Pertama Daftar Servis ... 57
3.10.3 Halaman Menu Kedua Update Data Pesanan ... 58
3.10.4 Halaman Menu Ketiga Database ... 58
3.10.5 Halaman Menu Kempat Lihat Record Service ... 59
BAB IV ... 60
4.1 Spesifikasi Software dan Hardware yang digunakan... 60
4.1.1 Spesifikasi Software ... 60
4.1.2 Spesifikasi Hardware... 60
4.2 Implementasi Stored Procedure ... 61
4.2.1 Implementasi Stored Procedure untuk Insert dan Update Data Pemesanan Suku Cadang ... 61
4.2.2 Implemetasi Stored Procedure untuk Menghapus Data Pesanan Suku Cadang ... 63
xiv
4.2.3 Implementasi Stored Procedure untuk Mengupdate Data Suku Cadang
kedalam Database ... 64
4.2.4 Implementasi Stored Procedure Mendapatkan Nonota untuk Pendaftaran Servis... 65
4.3 Implementasi Antarmuka ... 66
4.3.1 Halaman Menu Utama ... 66
4.3.2 Halaman Daftar Service ... 69
4.3.3 Halaman Ubah Data Pesanan ... 81
4.3.4 Halaman Ubah Data ... 83
4.3.5 Halaman Histori Servis ... 97
BAB V ... 99
5.1 Analisa Hasil Perangkat Lunak ... 99
5.2 Analisa Hasil Coba Terhadap Program ... 99
5.2.1 Pengujian terhadap Masalah Ketergantungan Transaksi yang Belum Di Laksanakan (Uncommited Dependency Problem) pada Proses Daftar Servis .. 100
5.2.2 Pengujian terhadap Masalah Hilangnya Data yang Diubah (Lost Update Problem) pada Proses Pengambilan Suku Cadang dalam Proses Servis ... 101
5.3 Analisa Hasil Coba Terhadap Pengguna ... 106
5.4 Hasil Pengujian Ddministrator Bengkel ... 106
BAB VI ... 111
6.1 Kesimpulan ... 111
6.2 Saran ... 111
Daftar Pustaka ... 112
Lampiran ... 113
xv
DAFTAR GAMBAR
Gambar 2. 1 Use Case ... 9
Gambar 2. 2 Aktor ... 10
Gambar 2. 3 Relasi ... 10
Gambar 2. 4 Entitas... 11
Gambar 2. 5 Atribut ... 11
Gambar 2. 6 Relasi ... 11
Gambar 3. 1 Use Case ... 15
Gambar 3. 2 Diagram Aktifitas Menambah Transaksi ... 29
Gambar 3. 3 Diagram Aktifitas Menambah Data Suku Cadang ... 30
Gambar 3. 4 Diagram Aktifitas Mengupdate Data Suku Cadang ... 30
Gambar 3. 5 Diagram Aktifitas Menambah Data Konsumen ... 31
Gambar 3. 6 Diagram Aktifitas Mengupdate Data Konsumen ... 31
Gambar 3. 7 Diagram Aktifitas Menambah Data Kendaraan ... 32
Gambar 3. 8 Diagram Aktifitas Mengupdate Data Kendaraan ... 32
Gambar 3. 9 Diagram Aktifitas Menambah Data Suku Cadang ... 33
Gambar 3. 10 Diagram Aktifitas Mengupdate Data Suku Cadang ... 33
Gambar 3. 11 Diagram Aktifitas Menambah Data Jenis Suku Cadang ... 34
Gambar 3. 12 Diagram Aktifitas Mengupdate Data Jenis Suku Cadang ... 34
Gambar 3. 13 Diagram Aktifitas Menambah Data Jenis Motor ... 35
Gambar 3. 14 Diagram Aktifitas Mengupdate Data Jenis Motor ... 36
Gambar 3. 15 Diagram Aktifitas Menambah Data Merek ... 36
Gambar 3. 16 Diagram Aktifitas Mengupdate Data Merek ... 37
Gambar 3. 17 Diagram Aktifitas Menambah Data Jenis Jasa ... 37
Gambar 3. 18 Diagram Aktifitas Mengupdate Data Jenis Jasa ... 38
Gambar 3. 19 Diagram Aktifitas Mengubah Data Pesanan ... 39
Gambar 3. 20 Diagram Aktifitas Mengecek Data Penjualan ... 39
Gambar 3. 21 Diagram Aktifitas Mencetak Nota Servis ... 40
Gambar 3. 22 Diagram Aktifitas Melihat Record Transaksi ... 40
Gambar 3. 23 Diagram Sekuensial Menambah Transaksi ... 41
Gambar 3. 24 Diagram Sekuensial Menambah Data Suku Cadang ... 41
Gambar 3. 25 Diagram Sekuensial Mengupdate Data Suku Cadang ... 42
xvi
Gambar 3. 26 Diagram Sekuensial Menambah Data Konsumen ... 42
Gambar 3. 27 Diagram Sekuensial Mengupdate Data Konsumen ... 43
Gambar 3. 28 Diagram Sekuensial Menambah Data Kendaraan ... 43
Gambar 3. 29 Diagram Sekuensial Mengupdate Data Kendaraan ... 43
Gambar 3. 30 Diagram Sekuensial Menambah Data Suku Cadang ... 44
Gambar 3. 31 Diagram Sekuensial Mengupdate Data Suku Cadang ... 44
Gambar 3. 32 Diagram Sekuensial Menambah Data Jenis Suku Cadang ... 45
Gambar 3. 33 Diagram Sekuensial Mengupdate Data Jenis Suku Cadang ... 45
Gambar 3. 34 Diagram Sekuensial Menambah Data Jenis Motor ... 46
Gambar 3. 35 Diagram Sekuensial Mengupdate Data Jenis Motor... 46
Gambar 3. 36 Diagram Sekuensial Menambah Data Merek ... 47
Gambar 3. 37 Diagram Sekuensial Mengupdate Data Merek ... 47
Gambar 3. 38 Diagram Sekuensial Menambah Data Jenis Jasa ... 48
Gambar 3. 39 Diagram Sekuensial Mengupdate Data Jenis Jasa ... 48
Gambar 3. 40 Diagram Sekuensial Mengubah Data Pesanan... 49
Gambar 3. 41 Diagram Sekuensial Mencetak Nota Servis ... 49
Gambar 3. 42 Diagram Sekuensial Mengecek Data Penjualan ... 50
Gambar 3. 43 Diagram Sekuensial Melihat Record Transaksi ... 50
Gambar 3. 44 Diagram Kelas ... 51
Gambar 3. 45 Diagram Konseptual Basisdata ... 52
Gambar 3. 46 Diagram Logikal Basisdata ... 53
Gambar 3. 47 Halaman Utama Aplikasi ... 57
Gambar 3. 48 Halaman Menu Pertama Daftar Servis ... 57
Gambar 3. 49 Halaman Menu Kedua Update Data Pesanan ... 58
Gambar 3. 50 Halaman Menu Ketiga Database ... 58
Gambar 3. 51 Halaman Menu Keempat Melihat Record Servis ... 59
Gambar 4. 1 Menu Utama ... 66
Gambar 4. 2 Form Data Konsumen ... 70
Gambar 4. 3 Form Data Kendaraan ... 72
Gambar 4. 4 Form Suku Cadang ... 73
Gambar 4. 5 Form Pemesanan Barang ... 74
Gambar 4. 6 Form Keluhan, Jasa, Kilometer. Total Biaya ... 77
Gambar 4. 7 Form Tambah Jasa ... 77
xvii
Gambar 4. 8 Jasper Laporan Nota Transaksi ... 81
Gambar 4. 9 Form Masukkan No Nota (ubah data pesanan) ... 81
Gambar 4. 10 Tab Data Suku Cadang ... 83
Gambar 4. 11 Tab Data Jenis Suku Cadang ... 86
Gambar 4. 12 Tab Data Jenis Motor ... 88
Gambar 4. 13 Tambah Sk Motor ... 91
Gambar 4. 14 Tab Data Merek ... 92
Gambar 4. 15 Tab Data Jenis Jasa ... 94
Gambar 4. 16 Cek Data Penjualan ... 96
Gambar 4. 17 Halaman Histori Servis ... 97
Gambar 4. 18 Halaman Detil Servis ... 98
Gambar 5. 1 Berhasil Mendaftar Servis ... 100
Gambar 5. 2 Gagal Mendaftar Servis dan Ada Pesan Kesalahan ... 101
Gambar 5. 3 Pemesanan Suku Cadang dengan No Nota 0001 ... 102
Gambar 5. 4 Pemesanan Suku Cadang dengan No Nota 0002 ... 102
Gambar 5. 5 Pemesanan Suku Cadang Berhasil ... 103
Gambar 5. 6 Pemesanan Suku Cadang Gagal ... 104
xviii
DAFTAR TABEL
Tabel 2. 1 Masalah Hilangnya Data yang Diubah ... 6
Tabel 2. 2 Masalah Ketergantungan Transaksi yang Belum Dilaksanakan... 7
Tabel 2. 3 Masalah Analisis yang Tidak Konsisten ... 8
Tabel 3. 1 Definisi Aktor ... 16
Tabel 3. 2 Definisi Use Case... 17
Tabel 3. 3 Menambah Transaksi ... 18
Tabel 3. 4 Menyimpan Data Konsumen ... 18
Tabel 3. 5 Mengedit Data Konsumen ... 19
Tabel 3. 6 Menyimpan Data Motor... 19
Tabel 3. 7 Mengedit Data Motor ... 20
Tabel 3. 8 Menambah Data Suku Cadang ... 21
Tabel 3. 9 Update Data Suku Cadang ... 21
Tabel 3. 10 Menambah Data Jenis Suku Cadang ... 22
Tabel 3. 11 Mengupdate Data Jenis Suku Cadang ... 23
Tabel 3. 12 Menambah Data Jenis Motor ... 23
Tabel 3. 13 Mengupdate Data Jenis Motor ... 24
Tabel 3. 14 Menambah Data Merek ... 25
Tabel 3. 15 Mengupdate Data Merek ... 25
Tabel 3. 16 Menambah Data Jenis Jasa ... 26
Tabel 3. 17 Mengupdate Data Jenis Jasa ... 26
Tabel 3. 18 Mengubah Data Pesanan Servis ... 27
Tabel 3. 19 Cek Data Penjualan ... 28
Tabel 3. 20 Mencetak Nota Servis ... 28
Tabel 3. 21 Melihat Record Servis ... 29
Tabel 3. 22 Tabel jenis Suku Cadang ... 54
Tabel 3. 23 Tabel Suku Cadang ... 54
Tabel 3. 24 Tabel Merek ... 54
Tabel 3. 25 Tabel Motor ... 55
Tabel 3. 26 Tabel Jenis Motor ... 55
Tabel 3. 27 Tabel Konsumen ... 55
xix
Tabel 3. 28 Tabel Servis ... 55
Tabel 3. 29 Tabel Detil Jasa ... 56
Tabel 3. 30 Tabel Jasa Servis ... 56
Tabel 3. 31 Tabel Pemesanan ... 56
Tabel 3. 32 Tabel Sk Motor ... 56
Tabel 5. 1 Tabel Proses Transaksi dengan 2PL ... 105
Tabel 5. 2 Hasil Pertanyaan 1 ... 106
Tabel 5. 3 Hasil Pertanyaan 2 ... 106
Tabel 5. 4 Hasil Pertanyaan 3 ... 107
Tabel 5. 5 Hasil Pertanyaan 4 ... 107
Tabel 5. 6 Hasil Pertanyaan 5 ... 107
Tabel 5. 7 Hasil Pertanyaan 6 ... 108
Tabel 5. 8 Hasil Pertanyaan 7 ... 108
Tabel 5. 9 Hasil Pertanyaan 8 ... 109
xx
DAFTAR LISTING
Listing 4. 1 Stored Procedure Tambah Suku Cadang ... 63
Listing 4. 2 Stored Procedure Hapus Sk Pesan ... 63
Listing 4. 3 Stored Procedure Tambah Sk... 64
Listing 4. 4 Stored Procedure Servis ... 66
Listing 4. 5 Daftar Servis ... 67
Listing 4. 6 Menampilkan Jdialog ... 67
Listing 4. 7 Mencari No Nota ... 68
Listing 4. 8 Method Show ... 68
Listing 4. 9 Ubah Data ... 68
Listing 4. 10 Histori servis ... 69
Listing 4. 11 Simpan Konsumen Baru ... 70
Listing 4. 12 Update Data Konsumen... 71
Listing 4. 13 Cari Konsumen ... 71
Listing 4. 14 Simpan Data Kendaraan ... 72
Listing 4. 15 Update Data Kendaraan ... 73
Listing 4. 16 Menampilkana Jdialog Tambah Suku Cadang ... 74
Listing 4. 17 Tambah dan Update Pesanan ... 76
Listing 4. 18 Batal Pemesanan ... 76
Listing 4. 19 Menampilkan Form Tambah Jasa ... 77
Listing 4. 20 Penghitungan Diskon ... 78
Listing 4. 21 Menutup Form Tambah Jasa ... 78
Listing 4. 22 Menyimpan Jasa Servis ... 79
Listing 4. 23 Memanggil Jasper Report ... 80
Listing 4. 24 Menampilkan Form Cari Nota ... 82
Listing 4. 25 Cari No Nota ... 82
Listing 4. 26 Menutup Form Cari No Nota... 83
Listing 4. 27 Cari Semua Suku Cadang ... 84
Listing 4. 28 Cari Kategori ... 84
Listing 4. 29 Simpan Suku Cadang... 84
Listing 4. 30 Update Data Sk ... 85
Listing 4. 31 Tombol Batal ... 85
xxi
Listing 4. 32 Autonumber Jenis Sk ... 87 Listing 4. 33 Simpan Jenis Sk ... 87 Listing 4. 34 Update Jenis Sk ... 87 Listing 4. 35 Tombol Batal ... 88 Listing 4. 36 Autonumber Motor ... 89 Listing 4. 37 Simpan Jenis Motor ... 89 Listing 4. 38 Update Jenis Motor ... 90 Listing 4. 39 Tombol Batal ... 90 Listing 4. 40 Menampilkan Jdialog Tambah Sk Motor ... 90 Listing 4. 41 Menambahkan Suku Cadang Kedalam Motor Tertentu ... 91 Listing 4. 42 Menghapus Suku Cadang Motor Tertentu... 91 Listing 4. 43 Autonumber Merek... 92 Listing 4. 44 Simpan Merek... 93 Listing 4. 45 Update Merek ... 93 Listing 4. 46 Tombol Batal ... 93 Listing 4. 47 Autonumber Jasa ... 95 Listing 4. 48 Simpan Jenis Sk ... 95 Listing 4. 49 Update Jenis Jasa ... 95 Listing 4. 50 Tombol batal ... 96 Listing 4. 51 Cek Penjualan ... 96 Listing 4. 52 Cari No Polisi ... 97 Listing 4. 53 Cari Data Servis ... 98
xxii
DAFTAR GRAFIK
Grafik 5. 1 Grafik Kuisioner ... 110
BAB I PENDAHULUAN
1.1 Latar Belakang
Bengkel merupakan tempat perawatan kendaraan bermotor untuk menjaga performanya agar tetap maksimal. Bengkel juga dapat memperbaiki segala kerusakan yang dialami kendaraan bermotor dalam penggunaanya. Para pemilik kendaraan bermotor akan melakukan servis berkala untuk merawat ataupun untuk memperbaiki kendaraan mereka. Proses pelayanan dalam suatu bengkel dimulai saat staff administrator menanyakan apa keluhan konsumen, apakah hanya ingin servis ringan saja atau ingin mengganti beberapa bagian yang rusak. Setelah staff administrator mengumpulkan informasi dari konsumen, staff administrator akan memprosesnya dan menyerahkan tugas kepada mekanik berikut suku cadang yang dibutuhkan . Kumpulan data transaksi yang dimiliki sebuah bengkel inilah yang merupakan asset berharga bagi bengkel itu sendiri, salah satu fungsinya adalah untuk membantu meningkatkan kualitas pelayanan pada bengkel tersebut.
Bengkel “ Anugrah Motor “ adalah bengkel yang sama dengan bengkel- bengkel resmi yang sudah ada saat ini, yang membedakan bengkel ini dari bengkel resmi adalah jika di bengkel resmi mematok biaya jasa servis sesuai dengan ketentuan perusahaan . maka di bengkel ini akan memberikan diskon khusus atau harga khusus yang akan diberikan kepada pelanggan dengan kebijakan dari pemilik bengkel. Bengkel
“Anugrah Motor” memiliki 2 staff administrator yang akan melayani pelanggan mulai dari pendaftaran sampai pengecekan suku cadang yang dibutuhkan dalam servis.
Bengkel “Anugrah Motor” masih menggunakan cara penyimpanan dan pengumpulan data-data dengan bentuk manual ditulis menggunakan kertas nota. Hal ini memiliki banyak kelemahan diantaranya tidak bisa langsung merekap data, kemungkinan data hilang akan semakin besar dan juga akan berakibat juga pada kinerja staff administrator dalam melakukan pengecekan stok suku cadang yang akan dibutuhkan dalam proses servis karena pasti akan sulit mengecek stock suku cadang yang pendataannya masih belum terkomputerisasi. Dengan otomatis staff administrator akan kesulitan dalam menentukan apakah barang yang dibutuhkan masih ada atau tidak dengan jumlah stok yang akan sulit ditentukan. Dari sinilah maka akan dibuat sistem yang dapat memudahkan staff administrator dalam melakukan proses dari pendaftaran sampai dengan pengecekan stock sparepart yang dibutuhkan, program ini akan digunakan di
lingkungan multiuser sehingga dalam sistem ini juga harus ditanamkan teknologi manajemen transaksi dengan menerapkan protokol Two Phase Locking.
Protokol Two Phase Locking akan melakukan penguncian data pada saat salah satu staff administrator melakukan transaksi untuk mengurangi maupun menambah stok barang sehingga jika staff administrator yang lain juga akan melakukan transaksi maka transaksi oleh staff administrator kedua harus menunggu transaksi dari staff administrator pertama selesai. Sehingga dengan program yang akan dibuat dapat mengefisienkan kinerja staff administrator yang bertugas sekaligus dapat mengurangi kemungkinan ketidak konsistenan data stok suku cadang.
1.2 Rumusan Masalah
Dari latar belakang yang telah dibuat maka rumusan masalah yang dapat di ambil adalah :
1. Bagaimana mengelola data transaksi bengkel dalam lingkungan multiuser demi menjaga kekonsistenan data dengan menerapkan manajemen transaksi.
2. Bagaimana hasil pengujian sistem untuk mempermudah kinerja staff administrator bengkel.
3. Apakah protokol Two Phase Locking dapat berfungsi dengan baik.
1.3 Tujuan
Tujuan dibangunnya sistem ini adalah mengembangkan aplikasi pengelolaan traksaksi servis dan suku cadang bengkel Anugrah Motor yang menerapkan manajemen transaksi dengan protokol Two Phase Locking.
1.4 Batasan
Sistem yang akan dibangun memiliki beberapa batasan : 1. Aplikasi ini hanya berjalan dalam aplikasi desktop.
2. Aplikasi ini hanya menangani penghitungan keuangan tanpa menangani sistem keuangan.
3. Pembayaran dilakukan secara langsung di bengkel tempat servis.
1.5 Metodologi
Metodologi yang akan digunakan adalah studi kasus dengan langkah-langkah sebagai berikut :
1. Observasi
Melakukan observasi pada bengkel dan melakukan wawancara kepada pemilik bengkel.
2. Studi Pustaka
Mempelajari referensi tentang Java yang akan digunakan atau diterapkan dalam pengembangan aplikasi.
3. Pembuatan Aplikasi Pengolahan Data Bengkel Motor, dengan tahap-tahap sebagai berikut :
a. Analisa sistem :
Merupakan tahap untuk pengumpulan kebutuhan yang diperlukan dalam pembuatan aplikasi, yang dilakukan melalui wawancara dan observasi.
b. Desain sistem :
Perancangan interface dan database yang berkaitan dengan pembuatan aplikasi pengolahan data bengkel motor.
c. Implementasi Sistem :
Dalam tahap ini akan dilakukan pembuatan aplikasi sesuai dengan desain yang sudah di rancang.
d. Uji coba sistem
Pada tahap ini akan digunakan untuk mencari kesalahan maupun kekurangan dari aplikasi yang dibuat.
1.6 Sistematika Penulisan
Dalam penulisan skripsi ini sistematika penulisan dibagi menjadi 5 bab yaitu : 1. Bab I Pendahuluan
Dalam bab ini dimuat mengenai latar belakang masalah, perumusan maslah, tujuan dibangun aplikasi, batasan masalah, metode penelitian (Metodologi), dan sistematika penulisan.
2. Bab II Landasan Teori
Dalam bab ini dimuat tengang teori yang melandasi pembuatan aplikasi untuk
“Aplikasi Pengolahan Data Transaksi Bengkel Motor Dengan Menerapkan Protokol Two Phase Locking”.
3. Bab III Analisa dan Perancangan Aplikasi
Dalam bab ini dimuat detil rancangan sistem serta analisa sistem. Akan dijelaskan mengenai perancangan sistem dengan bantuan class diagram, use case diagram, sequence diagram, activity diagram.
4. Bab IV Implementais Sistem dan Pembahasan Hasil
Dalam bab ini menjelaskan mengenai implementasi dari aplikasi yang dibuat serta hasil pembahasan aplikasi.
5. Bab V Kesimpulan dan Saran
Dalam bab ini dimuat mengenai kesimpulan pembahasan dan saran yang berguna untuk mengembangkan aplikasi ini lebih lanjut.
BAB II
LANDASAN TEORI
2.1 Manajemen Transaksi
Transaksi merupakan sebuah atau serangkaian aksi yang dilakukan oleh tunggal atau program aplikasi dengan membaca atau mengubah isi dari basis data (Connolly; 2002). Transaksi merupakan sebuah unit kerja logis dalam basis data yang terdiri dari satu atau lebih kalimat SQL dan dapat melibatkan sejumlah operasi pada basis data. Transaksi merupakan unit yang atomic. Sebuah transaksi akan memiliki dua buah keluaran yaitu :
a. Jika transaksi sukses, maka transaksi dapat dikatakan telah melakukan commit dan basis data telah mencapai keadaan konsistensi yang baru. Transaksi commit, maka tidak dapat dibatalkan. Sebuah transaksi yang telah dilakukan (Commited transaction), tidak dapat dibatalkan. Jika diputuskan bahwa transaksi yang telah dilakukan tersebut memiliki suatu kesalahan, kita harus melakukan transaksi pengganti untuk mengembalikan pengaruhnya.
b. Sebaliknya jika transaksi gagal dieksekusi, maka basis data harus dikembalikan ke keadaan yang konsisten seperti pada saat transaksi belum dimulai.
Transaksi ini disebut rolled back atau undone atau tidak dilakukan.
Statement begin transaction, commit dan rollback merupakan statement DML yang berfungsi untuk membatasi transaksi-transaksi. Jika statement tersebut tidak digunakan, maka dianggap sebagai transaksi tunggal yang dianggap commit saat program selesai dijalankan dengan benar, dan rollback jika tidak (Connolly; 2002).
Ada 4 hal dasar yang harus dimiliki semua transaksi, hal ini sering disebut ACID , yaitu :
a. Atomicity, dimana keadaan transaksi yang tidak dapat dibagi-bagi lagi yang dilakukan secara keseluruhan atau tidak sama sekali.
b. Consistency, dimana suatu keadaan basis data dapat dirubah dari suatu konsistensi ke konsistensi yang lain.
c. Isolation, dimana suatu keadaan transaksi itu bebas, suatu transaksi tidak mempengaruhi transaksi yang lain.
d. Durability, dimana transaksi dapat dicatat secara permanen dan tidak bisa hilang dalam basis data.
2.1.1 Concurency Control
Concurrency Control atau akses secara bersamaan, merupakan proses pengelolaan operasi yang berjalan secara bersamaan dalam basis data tanpa harus saling mengganggu satu dengan lainnya. Bedanya dengan manajemen transaksi adalah untuk menangani transaksi dengan masalah pengontrolan akses user secara bersamaan supaya tidak terjadi lose update data. Tujuan utama pengembangan basis data adalah adanya kemampuan untuk mengakses shared data secara bersamaan. Ada 3 masalah yang dapat disebabkan oleh concurrency control, yaitu :
a. masalah hilangnya data yang diubah (the lost update problem).
b. masalah ketergantungan transaksi yang belum dilaksanakan (The Uncommitted Dependency Problem).
c. masalah analisa yang tidak konsisten (the inconsistent analysis problem).
2.1.2 Two Phase Locking atau 2pl
Sebuah transaksi akan menerapkan protocol 2PL jika semua operasi locking mendahului operasi unlocking yang pertama dalam transaksi tersebut.
Setiap transaksi dibagi menjadi 2 fase yaitu :
1. Growing Phase : fase ini memperoleh semua locks yang dibutuhkan, tetapi tidak dapat melepaskan satu lock pun.
2. Shrinking Phase : fase ini melepaskan semua locks yang dimiliki, tetapi tidak dapat
Berikut ini adalah contoh penggunaan dari protolol 2PL :
a. Mencegah masalah hilangnya data yang diubah (the lost update problem).
Table 2.1 merupakan table penjelasan mengenai masalah hilangnya data yang diubah
Tabel 2. 1 Masalah Hilangnya Data yang Diubah
Keterangan :
Untuk mencegah terjadinya masalah hilangnya data yang diubah, maka : pertama-tama T2 meminta exclusive lock pada balₓ Setelah itu T2 dapat melakukan proses baca nilai balₓ, menambahnya dengan nilai 100, dan menuliskan nilai baru dari baₓ tersebut kedalam basis data.
Saat T1 memulai transaksi, T1 juga meminta suatu exclusive lock pada balₓ, namu karena balₓ sedang berada dalam posisi exclusive lock oleh T2, maka permintaan read balₓ tidak segera diberikan kepada T1 dan T1 harus menunggu sampai lock dipelaskan oleh T2. Hal ini terjadi saat T2 melaksanakan operasi commit atau unlock balₓ (Connoly; 2002).
b. Mencegah masalah ketergantungan transaksi yang belum dilaksanakan (the uncommitted dependency problem).
tabel 2.2 merupakan tabel penjelasan mengenai masalah ketergantungan transaksi yang belum dilaksanakan.
Tabel 2. 2 Masalah Ketergantungan Transaksi yang Belum Dilaksanakan
Keterangan :
Untuk mencegah terjadinya masalah ketergantungan transaksi yang belum dilaksanakan , maka : pertama-tama T4 meminta suatu exclusive lock pada balₓ Setelah itu, T4 dapat melakukan proses baca nilai balₓ dari dalam basis data, menambahnya dengan nilai 100, dan meluliskan nilai baru balₓ tersebut kedalam basis data. rollback dieksekusi , peng-update-an pada transaksi T4 tidak jadi dilakukan dan nilai dalam basis data dikembalikan ke kondisi semula yaitu 100.
Saat T3 memulai transaksi T3 juga meminta suatu exclusive lock pada balₓ, namun karena balₓ sedang dalam posisi exclusive lock oleh T4, maka, permintaan tersebut tidak segera diberikan kepada T3, dan T3 harus menunggu sampai lock dilepaskan oleh T4. Hal ini terjadi saat T4 melaksanakan operasi rollback atau unlock balₓ, barulah T3 dapat melakukan proses baca nilai balₓ (Connoly; 2002)
c. Mencegah masalah analisis yang tidak konsisten (the inconsisteng analysis problem).
Tabel 2.3 merupakan tabel penjelasan mengenai masalah analisis yang tidak konsisten
Tabel 2. 3 Masalah Analisis yang Tidak Konsisten
Keterangan :
Untuk mencegah terjadinya masalah analisis yang tidak konsisten, maka : T5 mengawali meminta suatu exclusive lock pada balₓ. T5 juga meminta suatu exclusive lock pada balᵧ . Saat T6 ingin membaca nilai balₓ, ia harus menunggu sampai lock dilepaskan oleh T5. Hal ini terjadi saat T5 melaksanakan operasi commit atau unlock balₓ, barulah T6 dapat membaca nilai balₓ (Connolly; 2002).
Untuk mengatasi masalah diatas, mesin basis data oracle XE mempunyai kemampuan mendukung transaksi dengan metode 2PL yang dapat menjaminkonsistensi data. ketiga contoh permasalahan yang dapat timbul akibat dua atau lebih transaksi yang dieksekusi secara bersamaan (concurency) dapat diselesaikan dengan menerapkan.
a. Tingkat isolasi Serializable.
b. Autocommit dibuat disable.
c. Operasi pembacaan data yang akan diikuti dengan operasi update data tersebut memberikan exclusive lock dengan cara memberikan perintah for update setelah perintah select. Teknik ini merupakan salah satu alternatif dalam menerapkan 2pl dalam mesin basis data Oracle XE sehingga tidak menutup kemungkinan melakukan penelitian untuk mencari alternatif lain dalam menjaga konsistensi data (Darmawan; 2007).
2.2 Pemodelan
“Pemodelan use case adalah proses memodelkan fungsi sistem dalam proses transaksi, siapa yang mnjalankan perintah dan bagaimana sistem merespon perintah tersebut”(Whitten; 2001).
Use case adalah sebuah diagram yang menggambarkan interaksi antara sistem dan eksternal sistem serta user
Symbol symbol pada pemodelan use case.
2.2.1 Use case
“Use case adalah aksi yang terkait dengan urutan langkah atau skenario, baik otomatis dan manual dengan tujuan meyelesaikan sebuah proses bisnis tunggal"
(Whitten; 2001). simbol use case akan disajikan dalam gambar 2.1.
Gambar 2. 1 Use Case Use case
2.2.2 Actor
“Aktor mewakili semua yang memerlukan interaksi dengan sistem untuk bertukar suatu informasi" (Whitten; 2001) simbol aktor akan disajikan dalam gambar 2.2.
Gambar 2. 2 Aktor
2.2.3 Use Case Association Relationship
Adalah relasi antara actor dan sebuah use case, dimana terjadi interaksi antara actor dan use case. simbol relasi akan disajikan dalam gambar 2.3.
Gambar 2. 3 Relasi Actor
Association relationship
Use case e
Actor
2.3 Entity Relationship Diagram (ERD)
Entity Relationship diagram (ERD) merupakan teknik yang digunakan untuk
memodelkan kebutuhan data dari suatu organisasi (Brady dan Loonam 2010), ERD merupakan suatu model yang dibuat untuk menjalaskan hubungan antar data dalam basis data, dalam pembuatanya erd menggunakan beberapa notasi dan simbol.
Ada tiga komponen dasar yang digunakan yaitu : 2.3.1 Entitas
Adalah objek yang mewakili sesuatu yang nyata dan dapat dibedakan dari sesuatu yang lain sebagai contoh : mahasiswa, dosen yang akan digambarkan seperti pada gambar 2.4.
Gambar 2. 4 Entitas
2.3.2 Atribut
Adalah setiap elemen yang dimiliki oleh entitas untuk mendeskripsikan karakteristik dari entitas tersebut sebagai contoh mahasiswa memiliki nama, nim, notlp, alamat yang akan digambarkan seperti pada gambar 2.5.
Gambar 2. 5 Atribut
2.3.3 Relasi
Adalah hubungan dari beberapa entitas yang dihubungkan dengan garis lurus untuk menghubungkan dua entitas yang berbeda sebagai contoh entitas mahasiswa dan entitas kuliah maka relasinya adalah mahasiswa mengambil matakuliah yang akan di gambarkan seperti pada gambar 2.6.
Gambar 2. 6 Relasi
2.4 Conceptual Database Design
Conceptual database design adalah proses membangun suatu model berdasarkan informasi yang digunakan oleh perusahaan atau organisasi, tanpa pertimbangan perencanaan fisikal (Connolly; 2002).
Langkah langkah dalam perancangan desain konseptual adalah : 1. Mengidentifikasi tipe entitas.
2. Mengidentifikasi tipe relasi.
3. Mengidentifikasi dan menggabungkan atribut dan entitas atau relasi.
4. Menentukan domain atribut.
5. Menentukan atribut primary key dan candidate key.
6. Mempertimbagkan penggunaan enhanced modelling concept.
7. Cek model dari redundancy.
8. Memvalidasi model konseptual lokal terhadap pengguna.
9. Melakukan riview data konseptual terhadap pengguna.
2.5 Logical Database Design
Logical database design adalah proses pembuatan suatu model informasi yang digunakan pada perusahaan berdasarkan pada sebuah model data yang spesifik tetapi bebas dari fakta fakta DBMS dan pertimbangan fisik lainnya (Connolly; 2002).
Langkah langkah dalam perancangan desain logikal adalah : 1. Menentukan relasi untuk model data logikal.
2. Memvalidasi relasi dengan menggunakan normalisasi.
3. Memvalidasi relasi terhadap transaksi pengguna.
4. menentukan integrity constraint.
5. mengecek model data logikal lokal dengan pengguna.
6. menggabungkan kmodel data logical menjadi model data global.
7. memeriksa pertumbuhan selanjutnya.
2.6 Physical Database Design
Physical database design adalah proses untuk menghasilkan gambaran dari implementasi basis data pada tempat penyimpanan, menjelaskan dasar dari relasi, organisasi, file dan indeks yang digunakan untuk efisiensi data dan menghubungkan beberapa integrity constraint dan tindakan keamanan (Connolly; 2002).
langkah langkah dalam perancangan desain fisikal adalah 1. Merancang basis relasional
Dalam memulai merancang desain fisikal, diperlukan untuk mengumpulkan dan memahami informasi tentang relasi yang dihasilkan dari desain logikal.
2. Merancang represtasi dari data yang diperoleh
bertujuan untuk menentukan bagaimana setiap data yang diperoleh merepresentasikan semua model data logikal.
3. Merancang Batasan umum
bertujuan untuk merancang batasan yang ada pada perusahaan.
BAB III
ANALISIS DAN PERANCANGAN SISTEM
3.1 Gambaran Sistem Lama
Bengkel “Anugrah Motor” adalah bengkel yang melayani perbaikan maupun servis rutin sepeda motor. Proses servis akan bermula dari pendaftaran konsumen ke staff administrator untuk mendapatkan antrian dimana tahap-tahapnya akan akan berjalan seperti berikut :
Konsumen mendaftarkan kendaraanya
1. Staff administrator akan meminta data-data kendaraan.
2. Staff administrator menanyakan keluhan dari konsumen.
3. Staff administrator mencatat semua dalam satu nota (tertulis).
4. Staff administrator akan mengecek stok suku cadang yang digunakan dan melakukan pengambilan barang (pendataan stok dalam bentuk tertulis).
5. Setelah semua proses pendaftaran selesai maka staff administrator akan memberikan daftar pekerjaan pada mekanik yang bertugas untuk menjalankan proses servis. Pembayaran secara langsung di staff administrator setelah proses servis selesai.
Tentu saja dengan sistem yang sudah ada ini akan menyulitkan kerja staff administrator dalam proses pengecekan stok suku cadang yang digunakan dan juga untuk mengurangi stok barang yang di gunakan hal ini akan menjadi masalah ketika aplikasi diakses oleh lebih dari satu staff administrator. dan juga pencatatan record servis dari sebuah kendaraan juga dilakukan serara tertulis.
3.2 Gambaran Sistem Baru
Aplikasi baru yang akan dibuat ini memiliki tujuan untuk mempermudah kinerja staff administrator untuk mengecek stok suku cadang, melakukan pencatatan semua data data yang dibutuhkan dalam proses servis, melakukan perhitungan biaya yang dibutuhkan, dan juga dapat melakukan pengecekan record servis dari sebuah kendaraan.
Aplikasi yang dibuat disini bisa melakukan beberapa hal diantaranya 1. Bisa mencatat data – data kendaraan dari kendaraan yang di servis.
2. Bisa mencatat keluhan dari konsumen mengenai kendaraannya.
3. Bisa melakukan pengecekan stok suku cadang yang dibutuhkan sekaligus mengurangi stok suku cadang yang dibutuhkan.
4. Bisa melakukan perhitungan total biaya servis.
5. Bisa melihat record servis dari kendaraan tertentu.
Aplikasi baru yang dikembangkan akan digunakan di lingkungan multi user atau bisa diakses oleh lebih dari satu orang aplikasi ini akan melakukan kontrol terhadap concurrency dalam database saat dilakukan update stok oleh staff administrator dikarenakan pengambilan barang untuk proses servis ataupun penambahan stok sukucadang. Untuk mengatasi salah satu masalah concurrency yaitu Lost update problem dan Uncomited Dependency Problem maka aplikasi ini dibuat dengan menerapkan protocol Two Phase Locking.
3.3 Requirment Analysis 3.3.1 Use Case Diagram
Berikut ini adalah diagram use case yang akan disajikan dalam gambar 3.1.
Gambar 3. 1 Use Case
3.3.2 Definisi Aktor
Berikut ini adalah definisi aktor yang akan di sajikan dalam tabel 3.1.
No Aktor Deskripsi
1 Operator
(staff administrator bengkel)
Aktor ini adalah operator dari sistem dimana bisa menambah transaksi servis, mengedit data konsumen, kendaraan konsumen, suku cadang, jenis suku cadang, jenis motor, merek motor, jenis jasa, pesanan servis, mencetak nota servis dan melihat record transaksi
Tabel 3. 1 Definisi Aktor
3.3.3 Definisi Use Case
Berikut ini adalah definisi use case yang akan di sajikan dalam tabel 3.2
No Use Case Deskripsi
1 Menambah transaksi servis
Sistem akan memasukkan data transaksi yang dibuat oleh administrator kedalam tabel
2 Mengedit data
konsumen
administrator bisa menambah dan mengupdate. data konsumen dalam database
3 Mengedit data kendaraan konsumen
administrator bisa menambah dan mengupdate data kendaraan dalam database
4 Mengedit data
sukucadang
administrator bisa menambah dan mengupdate data suku cadang dalam database
5 Mengedit data jenis sukucadang
administrator bisa menambah dan mengupdate data jenis suku cadang dalam database
6 Mengedit data jenis motor
administrator bisa menambah dan mengupdate data jenis motor dalam database
7 Mengedit data
merek motor
administrator bisa menambah dan mengupdate data merek motor dalam database
8 Mengedit data jenis Jasa service
administrator bisa menambah dan mengupdate data jasa service dalam database
9 Mengedit data
pesanan servis
administrator bisa menambah , menghapus dan mengupdate data pesanan servis
10 Mengecek penjualan suku cadang
administrator bisa mengecek total penjualan suku cadang dalam bulan tertentu dan tahun tertentu
11 Mencetak nota servis
administrator bisa mencetak nota akhir dari proses servis yang berisi detail servis dan detail jasa berikut total biaya yang harus dibayar
12 Melihat record transaksi servis
administrator menampilkan detil record servis dari konsumen tertentu
Tabel 3. 2 Definisi Use Case
3.3.4 Skenario Use Case Skenario
Skenario : Menambah transaksi servis.
Kondisi awal : -
Kondisi akhir : Data tersimpan dalam database.
Actor : Operator (staff administrator bengkel).
Berikut iini adalah definisi use case untuk menambah transaksi servis yang akan disajikan dalam tabel 3.3.
Aktor Sistem
1. Menekan tombol daftar service
2. Menampilkan form konsumen 3. Mengisi data konsumen
4. Menekan tombol lanjut
5. Menampilkan form kendaraan 6. Mengisi data kendaraan
7. Menekan tombol lanjut
8. Menampilkan form sukucadang
9. Memilih suku cadang yang digunakan 10. Menekan tombol lanjut
11. Menampilkan form keluhan, jasa, kilometer dan detil biaya total service
12. Mengisi data keluhan, kilometer masuk , jasa , dan diskon
13. Menekan tombol pesan
14. Menyimpan dalam database 15. Menampilkan nota transaksi Tabel 3. 3 Menambah Transaksi
Skenario
Skenario : Menyimpan data konsumen.
Kondsi awal : -
Kondisi Akhir : Data konsumen akan ditampilkan dalam tabel konsumen.
Actor : Operator (staff administrator bengkel).
Berikut ini adalah definisi use case untuk menyimpan data konsumen yang akan disajikan dalam tabel 3.4.
Aktor Sistem
1. Memilih tombol daftar service
2. Menampilkan form isian data konsumen
3. Mengubah data data konsumen 4. Menekan tombol simpan
5. Sistem akan menyimpan data konsumen
6. Sistem akan menampilkan data konsumen dalam tabel
Tabel 3. 4 Menyimpan Data Konsumen
Skenario
Skenario : Mengedit data konsumen.
Kondsi awal : -
Kondisi Akhir : Data konsumen akan ditampilkan dalam tabel konsumen.
Actor : Operator (staff administrator bengkel).
Berikut ini adalah definisi use case untuk mengubah data konsumen yang akan disajikan dalam tabel 3.5.
Aktor Sistem 1. Memilih tombol daftar service
2. Menampilkan form isian data konsumen
3. Mengubah data data konsumen 4. Menekan tombol update
5. Sistem akan mengupdate data konsumen
6.Sistem akan menampilkan data konsumen dalam tabel
Tabel 3. 5 Mengedit Data Konsumen
Skenario
Skenario : Menyimpan data motor.
Kondsi awal : Form data konsumen telah terisi.
Kondisi Akhir : Data motor akan ditampilkan dalam tabel motor.
Actor : Operator (staff administrator bengkel).
Berikut ini adalah definisi use case untuk menyimpan data motor yang akan disajikan dalam tabel 3.6
Aktor Sistem
1. Menekan tombol lanjut pada form konsumen
2. Menampilkan form data kendaraan 4. Mengisi data kendaraan secara lengkap
5. Menekan tombol simpan
6. Sistem akan menyimpan data motor dengan kode konsumen yang telah diisikan
7. Sistem akan menampilkan data kendaraan dalam tabel
Tabel 3. 6 Menyimpan Data Motor
Skenario
Skenario : Mengubah data motor.
Kondsi awal : Form data konsumen telah terisi.
Kondisi Akhir : Data motor baru akan ditampilkan dalam tabel motor.
Actor : Operator (staff administrator bengkel).
Berikut ini adalah definisi use case untuk mengubah data motor yang akan disajikan dalam tabel 3.7.
Aktor Sistem
1. Menekan tombol lanjut pada form konsumen
2. Menampilkan form data kendaraan 3. Mengubah data kendaraan secara lengkap
4. Menekan tombol update
5. Sistem akan mengupdate data motor
6. Sistem akan menampilkan data kendaraan baru dalam tabel Tabel 3. 7 Mengedit Data Motor
Skenario
Skenario : Menambah data suku cadang.
Kondisi awal : Dalam menu ubah data (data suku cadang).
Kondisi akhir : Data stok suku cadang baru ditampilkan dalam tabel suku cadang.
Actor : Operator (staff administrator bengkel).
Berikut ini adalah definisi use case untuk menambah data suku cadang yang akan disajikan dalam tabel 3.8.
Aktor Sistem
1. Sistem menampilkan form suku cadang
2. Mengisi data suku cadang secara lengkap 3. Menekan tombol simpan
5. Data suku cadang baru akan tersimpan
6. Data suku cadang ditampilkan dalam tabel suku cadang
Tabel 3. 8 Menambah Data Suku Cadang
Skenario
Skenario : Merubah data suku cadang.
Kondisi awal : Dalam menu ubah data (data suku cadang).
Kondisi akhir : Data update suku cadang ditampilkan dalam tabel suku cadang.
Actor : Operator (staff administrator bengkel).
Berikut ini adalah definisi use case untuk merubah data suku cadang yang akan disajikan dalam tabel 3.9.
Aktor Sistem
1. Sistem menampilkan form suku cadang
2. Memilih data suku cadang yang akan diupdate
3. Mengubah data suku cadang secara lengkap
4. Menekan tombol update
5. Data suku cadang akan terupdate 6. Data suku cadang ditampilkan dalam tabel suku cadang
Tabel 3. 9 Update Data Suku Cadang
Skenario
Skenario : Menambah data Jenis suku cadang.
Kondisi awal : Dalam menu ubah data (data jenis suku cadang).
Kondisi akhir : Data jenis suku cadang baru ditampilkan dalam tabel jenis suku cadang.
Actor : Operator (staff administrator bengkel).
berikut ini adalah definisi use case untuk menambah data jenis suku cadang yang akan disajikan dalam tabel 3.10.
Aktor Sistem
1. Sistem menampilkan form jenis suku cadang
2. Mengisi data jenis suku cadang secara lengkap
3. Menekan tombol simpan
4. Data jenis suku cadang baru akan tersimpan
5. Data jenis suku cadang ditampilkan dalam tabel suku cadang Tabel 3. 10 Menambah Data Jenis Suku Cadang
Skenario
Skenario : Merubah data jenis suku cadang.
Kondisi awal : Dalam menu ubah data (data jenis suku cadang).
Kondisi akhir : Data update jenis suku cadang ditampilkan dalam tabel jenis suku cadang.
Actor : Operator (staff administrator bengkel).
berikut ini adalah definisi use case untuk merubah data jenis suku cadang yang akan disajikan dalam tabel 3.11.
Aktor Sistem
1. Sistem menampilkan form jenis suku cadang
2. Memilih data jenis suku cadang yang akan diupdate
3. Mengubah data jenis suku cadang secara lengkap
4. Menekan tombol update
5. Data jenis suku cadang akan terupdate
6. Data jenis suku cadang ditampilkan dalam tabel jenis suku cadang
Tabel 3. 11 Mengupdate Data Jenis Suku Cadang
Skenario
Skenario : Menambah data jenis motor
Kondisi awal : Dalam menu ubah data (data jenis motor)
Kondisi akhir : Data jenis motor baru ditampilkan dalam tabel jenis motor Actor : Operator (staff administrator bengkel)
berikut ini adalah definisi use case untuk menambah data jenis motor yang akan disajikan dalam tabel 3.12.
Aktor Sistem
1. Sistem menampilkan form jenis motor
2. Mengisi data jenis motor secara lengkap 3. Menekan tombol simpan
4. Data jenis motor baru akan tersimpan
5. Data jenis motor ditampilkan dalam tabel jenis motor
6. Menekan tombol tambak sk motor
7. Menampilkan form sk motor 8. Menambahkan data sk motor
9. Data sk motor tersimpan
10. Data sk motor ditampilkan dalam tabel sk motor
Tabel 3. 12 Menambah Data Jenis Motor
Skenario
Skenario : Merubah data jenis motor.
Kondisi awal : Dalam menu ubah data (data jenis motor).
Kondisi akhir : Data update jenis motor ditampilkan dalam tabel jenis suku cadang.
Actor : Operator (staff administrator bengkel).
berikut ini adalah definisi use case untuk merubah data jenis motor yang akan disajikan dalam tabel 3.13.
Aktor Sistem
1. Sistem menampilkan form jenis motor
2. Memilih data jenis motor yang akan diupdate
3. Mengubah data jenis motor secara lengkap
4. Menekan tombol update
5. Data jenis motor akan terupdate 6. Data jenis motor ditampilkan dalam tabel jenis motor
Tabel 3. 13 Mengupdate Data Jenis Motor
Skenario
Skenario : Menambah data merek.
Kondisi awal : Dalam menu ubah data (data merek).
Kondisi akhir : Data merek baru ditampilkan dalam tabel merek.
Actor : Operator (staff administrator bengkel).
berikut ini adalah definisi use case untuk menambah data merek yang akan disajikan dalam tabel 3.14.
Aktor Sistem
1. Sistem menampilkan form merek 2. Mengisi data merek secara lengkap
3. Menekan tombol simpan
4. Data merek baru akan tersimpan
5. Data merek ditampilkan dalam tabel merek
Tabel 3. 14 Menambah Data Merek
Skenario
Skenario : Merubah data merek.
Kondisi awal : Dalam menu ubah data (data merek).
Kondisi akhir : Data update merek ditampilkan dalam tabel merek.
Actor : Operator (staff administrator bengkel).
berikut ini adalah definisi use case untuk merubah data merek yang akan disajikan dalam tabel 3.15.
Aktor Sistem
1. Sistem menampilkan form merek 2. Memilih data merek yang akan diupdate
3. Mengubah data merek secara lengkap 4. Menekan tombol update
5. Data merek akan terupdate
6. Data merek ditampilkan dalam tabel merek
Tabel 3. 15 Mengupdate Data Merek
Skenario
Skenario : Menambah data jenis jasa.
Kondisi awal : Dalam menu ubah data (data jenis jasa).
Kondisi akhir : Data jenis jasa baru ditampilkan dalam tabel jenis jasa.
Actor : Operator (staff administrator bengkel).
berikut ini adalah definisi use case untuk menambah data jenis jasa yang akan disajikan dalam tabel 3.16.
Aktor Sistem
1. Sistem menampilkan form jenis jasa
2. Mengisi data jenis jasa secara lengkap 3. Menekan tombol simpan
4. Data jenis jasa baru akan tersimpan 5. Data jenis jasa ditampilkan dalam
tabel jenis jasa Tabel 3. 16 Menambah Data Jenis Jasa
Skenario
Skenario : Merubah data jenis jasa.
Kondisi awal : Dalam menu ubah data (data jenis jasa).
Kondisi akhir : Data update jenis jasa ditampilkan dalam tabel jenis jasa.
Actor : Operator (staff administrator bengkel).
berikut ini adalah definisi use case untuk merubah data jenis jasa yang akan disajikan dalam tabel 3.17.
Aktor Sistem
1. Sistem menampilkan form jenis jasa
2. Memilih data jenis jasa yang akan diupdate 3. Mengubah data jenis jasa secara lengkap 4. Menekan tombol update
5. Data jenis jasa akan terupdate 6. Data jenis jasa ditampilkan dalam tabel jenis jasa
Tabel 3. 17 Mengupdate Data Jenis Jasa
Skenario
Skenario : Mengubah data pesanan servis.
Kondisi awal : Sudah melakukan transaksi servis.
Kondisi akhir : Data pesanan servis akan ditampilkan dalam nota servis.
Actor : Operator (staff administrator bengkel).
berikut ini adalah definisi use case untuk merubah data pesanan servis yang akan disajikan dalam tabel 3.18.
Aktor Sistem
1. Menekan ubah data pesanan
2. Menampilkan form isian nomor nota
3. Mengisi nomor nota yang sudah didapat dalam transaksi servis pertama
4. Menekan tombol cari
5. Menampilkan data suku cadang pesanan
6. Menambah atau mengurangi suku cadang yang digunakan
7. Menekan tombol lanjut
8. Menampilkan form keluhan, kilometer, dan jasa
9. Menambah atau mengurangi data keluhan kilometer dan jasa
10. Menghitung biaya total sukucadang, jasa dan total biaya servis
11. Menekan tombol pesan
12. Menampilkan jasper nota baru untuk pesanan servis (nota) Tabel 3. 18 Mengubah Data Pesanan Servis
Skenario
Skenario : Mengecek penjualan suku cadang.
Kondisi awal : Sudah dalam menu database.
Kondisi akhir : Menampilkan total penjualan suku cadang dalam tabel.
Actor : Operator (staff administrator bengkel).
berikut ini adalah definisi use case untuk mengecek penjualan suku cadang yang akan disajikan dalam tabel 3.19.
Aktor Sistem 1. Aktor menekan tab cek data penjualan
2. Sistem menampilkan form cek data penjualan
3. Actor memilih bulan dan tahun pada form cek data penjualan
4. Actor menekan tombol cari
5. sistem menampilkan data sesuai dengan bulan dan tahun yang di inginkan dalam tabel
Tabel 3. 19 Cek Data Penjualan
Skenario
Skenario : Mencetak nota servis.
Kondisi awal : Sudah mengisi form tambah transaksi servis.
Kondisi akhir : Menampilkan nota servis dalam jasper.
Actor : Operator (staff administrator bengkel).
berikut ini adalah definisi use case untuk mencetak nota servis yang akan disajikan dalam tabel 3.20.
Aktor Sistem
1. Aktor menekan tombol Pesan pada form transaksi servis
2. Sistem akan menampilkan jasper report untuk form nota servis
Tabel 3. 20 Mencetak Nota Servis
Skenario
Skenario : Melihat record servis.
Kondisi awal : -
Kondisi akhir : Menampilkan record transaksi servis.
Actor : Operator (staff administrator bengkel).
berikut ini adalah definisi use case untuk melibah record servis yang akan disajikan dalam tabel 3.21.
Aktor Sistem 1. Aktor menekan tombol Histori servis
2. Menampilkan table data transaksi 3. Mencari data atau memilih langsung data
yang ditampilkan dalam tabel 4. Menekan tombol detail
5. Menampilkan Detail data yang dipilih kedalam form
Tabel 3. 21 Melihat Record Servis
3.4 Activity Diagram
Berikut ini adalah diagram aktifitas menambah transakasi yang akan disajikan dalam gambar 3.2.
Menekan tombol daftar service
Menampilkan form konsumen
Mengisi data konsumen
Menekan tombol lanjut
Menampilkan form kendaraan
Mengisi data kendaraan
Menekan tombol lanjut
Menampilkan form suku cadang
Memilih suku cadang yang digunakan
Menekan tombol lanjut
Menampilkan form keluhan, kilometer , jenis jasa, dan detil
biaya total service Mengisi data keluhan, kilometer
masuk, jenis jasa
Menekan tombol pesan
Menyimpan dalam database
Menampilkan nota servis Menambah transaksi
Aktor
Sistem
Gambar 3. 2 Diagram Aktifitas Menambah Transaksi
Berikut ini adalah diagram aktifitas menambah data sukucadang yang akan disajikan dalam gambar 3.3.
Menampilkan form suku cadang berikut tabel data yang sudah
ada Mengisi form tambah data
dengan lengkap
Data akan tersimpan dalam database
Menekan tombol simpan
Menampilkan data suku cadang dalam tabel
Aktor Sistem
Menekan tombol batal
Tambah Suku cadang
Gambar 3. 3 Diagram Aktifitas Menambah Data Suku Cadang
Berikut ini adalah diagram aktifitas mengupdate data suku cadang yang akan disajikan dalam gambar 3.4.
Menampilkan form suku cadang berikut tabel data yang sudah
ada Memilih data dalam tabel
Menampilkan data yang dipilih kedalam form Mengubah data barang dalam
form (data barang masuk / update data)
Mengupdate stok dalam database
Menekan tombol update
Menampilkan data stok barang dalam tabel Aktor
Sistem Update Suku cadang
Menekan tombol batal
Gambar 3. 4 Diagram Aktifitas Mengupdate Data Suku Cadang
Berikut ini adalah diagram aktifitas menambah data konsumen yang akan disajikan dalam gambar 3.5.
Menampilkan form isian data konsumen Mengisi data konsumen secara
lengkap
Menyimpan data konsumen dalam database
Menekan tombol Simpan
Menampilkan data dalam tabel
Aktor Sistem
Menyimpan Data Konsumen
Menekan tombol batal
Gambar 3. 5 Diagram Aktifitas Menambah Data Konsumen
Berikut ini adalah diagram aktifitas mengupdate data konsumen yang akan disajikan dalam gambar 3.6.
Menampilkan form isian data konsumen
Aktor Sistem
Mengupdate Data Konsumen
Memilih data dalam tabel
Menampilkan data yang dipilih kedalam form Mengubah data Konsumen
Mengupdate Konsumen dalam database
Menekan tombol update
Menampilkan data Konsumen dalam tabel
Menekan tombol batal
Gambar 3. 6 Diagram Aktifitas Mengupdate Data Konsumen
Berikut ini adalah diagram aktifitas menambah data kendaraan yang akan disajikan dalam gambar 3.7.
Menekan tombol lanjut pada form konsumen
Menampilkan form Data Motor berikut tabel data yang sudah
ada Mengisi data kendaraan secara
lengkap
Menyimpan data kendaraan dengan kode konsumen yang telah diisikan dalam database
Aktor Sistem
Menambah Data Motor
Menekan tombol Simpan
Menampilkan data Motor dalam tabel
Menekan tombol batal
Gambar 3. 7 Diagram Aktifitas Menambah Data Kendaraan
Berikut ini adalah diagram aktifitas mengupdate data kendaraan yang akan disajikan dalam gambar 3.8.
Menekan tombol lanjut pada form konsumen
Aktor Sistem
Mengubah Data Motor
Memilih data dalam tabel
Menampilkan data yang dipilih kedalam form Mengubah data Motor
Mengupdate Motor dalam database
Menekan tombol update
Menampilkan data Motor dalam tabel
Menampilkan form Data Motor berikut tabel data yang sudah
ada
Menekan tombol batal
Gambar 3. 8 Diagram Aktifitas Mengupdate Data Kendaraan