PERLENGKAPAN PESTA DENGAN J2EE
(STUDI KASUS : UD. ROSARI KLATEN)
SKRIPSI
Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program Studi Teknik Informatika
Oleh : Annis Yunita NIM : 045314044
PROGRAM STUDI TEKNIK INFORMATIKA JURUSAN TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA YOGYAKARTA
ii
RENTAL COMPANY WITH J2EE
(A CASE STUDY: UD. ROSARI KLATEN)
A THESIS
Presented as Partial Fulfillment of the Requirement To Obtain Sarjana Teknik Degree
Informatics Engineering Study Program
By : Annis Yunita NIM : 045314044
INFORMATICS ENGINEERING STUDY PROGRAM DEPARTMENT OF INFORMATICS ENGINEERING
FACULTY OF SCIENCE AND TECHNOLOGY SANATA DHARMA UNIVERSITY
vi
HALAMAN PERSEMBAHAN
vii
HALAMAN MOTTO
# $
%
$ &
%
&
viii
U.D.ROSARI adalah perusahaan yang bergerak di bidang persewaan perlengkapan pesta yang menyewakan tenda, kursi, barang pecah belah, dan lain - lain. Selama ini proses sewa barang, daftar pelanggan yang menyewa, dan pencarian stok perlengkapan, masih dilakukan secara manual. Jumlah stok per macam barang mencapai ribuan, sehingga pegawai yang bertugas melakukan pekerjaan tersebut merasa kesulitan.
Untuk memenuhi kebutuhan UD. ROSARI, penulis membuat sistem informasi yang mendukung pengelolaan persewaan perlengkapan pesta yang terdiri dari pencatatan pegawai, pelanggan, perlengkapan, peminjaman dan pengembalian perlengkapan, transaksi persewaan, pencarian perlengkapan dan stok perlengkapan, dan berbagai proses lainnya yang mendukung sistem informasi persewaan perlengkapan pesta. Sistem ini juga dibuat berbasis web, sehingga pelanggan dapat mengakses pencarian perlengkapan dan stok perlengkapan yang disewakan melalui internet.
ix
U.D.ROSARI is a catering equipment rental company which rented tents, folded
chairs, glass wares, and others. Until the present days, the renting process, the customer’s
list, and the stock list were still be done manually. The amounts of stock for each
equipment were thousands so that it raised difficulties for the person in charge to record
the stocks when they were rented.
To fulfill the U.D.ROSARI’s needs, the writer designed the information system
which supported all the process in a catering equipment rental company, such as: the
listing of employees, customers, utensils, rental and the return of the equipment, rental
transaction, quest of the stock, and the other process which supported the information
system in a catering equipment rental company. The system was based on the web, so
that the customers were able to access the quest of equipment and stocks through the
internet.
The system’s trial was implemented by twenty respondents and the data were
obtained by questionnaires. The respondents were three of UD. ROSARI’s, employees
and seventeen university students. Based on the data, it could be concluded that the
xi
Puji dan syukur saya ucapkan kepada Tuhan Yesus Kristus, yang telah melimpahkan kasih karuniaNya, sehingga saya dapat menyelesaikan skripsi ini. Penulisan skripsi ini ditujukan untuk memenuhi salah satu syarat memperoleh gelar Sarjana Teknik Jurusan Teknik Informatika, Fakultas Sains dan Teknologi.
Terselesaikannya penulisan skripsi ini tidak lepas dari peran serta beberapa pihak, baik secara langsung maupun secara tidak langsung. Oleh karena itu, saya ingin menyampaikan terima kasih kepada pihak – pihak yang telah ikut membantu dalam penulisan skripsi ini, baik dalam memberi bimbingan, petunjuk, kerjasama, kritikan, maupun saran, antara lain kepada:
1. Ibu A. Rita Widiarti, S.Si, M. Kom., selaku dosen pembimbing I skripsi, yang banyak membantu dalam memberikan saran perbaikan dan masukan.
2. Eko Hari Parmadi, S.Si., M.Kom., dan Drs. Kuntoro Adi SJ, MA, M.Sc., Ph.D selaku dosen penguji yang memberikan banyak masukan dan inspirasi.
3. Pakde Pri dan Bude Risti, yang selalu mendoakan, memberi spirit, dan dorongan kepada penulis untuk dapat menyelesaikan penulisan skripsi ini.
4. Pihak UD. ROSARI yang banyak membantu dan mendukung dalam pengerjaan skripsi ini.
5. Seluruh dosen, staf dan karyawan Universitas Sanata Dharma khususnya Fakultas Sains dan Teknologi Jurusan Teknik Informatika.
xii sayang.
8. Mbak Ius dan keluarga, yang selalu mendoakan, memberi semangat, dan membantu kelancaran penyelesaian skripsi ini.
9. Tante Ani dan mbak Nur yang selalu mendoakan dan memberi semangat.
10.Teman – teman Lion of Judah (K’ Chika, Donal, Gita, Dokman, Henny, Sabet, James, Devi, Nana, Ester), yang selalu mendoakan dan memberi semangat.
11.Teman – teman Jurusan Teknik Informatika (terkhusus buat Vita, Friska, Elis, Ratih, Dian, Anas, Vera Sala, Verania, Putu) yang selalu memberi semangat dan doa.
12.Teman teman kos Valent (Lisa, Lita, Lian, Lia besar, Lia kecil, Desti, Iis, Niken, Kiki, Deli), yang selalu memberikan semangat, doa, dan inspirasi.
13.Saudara-saudara di PMK Apostolos USD yang selalu memberi dukungan dan doa (terkhusus buat Weli, Dhita, Indah, Stefan, Ratih, Mas Antok, K’Jefry, Boy, Stanley). 14.Teman – teman mitra Perpustakaan Universitas Sanata Dharma.
15.Semua pihak yang telah membantu kelancaran pembuatan skripsi ini yang tidak bisa disebutkan secara satu persatu.
Akhir kata penulis berharap skripsi ini dapat bermanfaat bagi semua pihak yang tertarik terhadap skripsi ini pada umumnya.
Yogyakarta, 25 Maret 2009 Penulis
xiii
HALAMAN JUDUL ... i
HALAMAN PERSETUJUAN PEMBIMBING ……….. .. iii
HALAMAN PENGESAHAN ………. .. iv
PERNYATAAN KEASLIAN KARYA ... v
HALAMAN PERSEMBAHAN ………. vi
HALAMAN MOTTO ……… .. vii
ABSTRAK ... viii
ABSTRACT ... ix
HALAMAN PERSETUJUAN ……… x
HALAMAN KATA PENGANTAR ……… xi
HALAMAN DAFTAR ISI ... xiii
DAFTAR GAMBAR ... xviii
DAFTAR TABEL ... xxiv
BAB I. PENDAHULUAN ... 1
1.1. Latar Belakang Masalah ... 1
1.2. Rumusan Masalah ... 1
1.3. Batasan Masalah ... 2
1.4. Tujuan ... 3
1.5. Manfaat ... 3
1.6. Metodologi Penelitian ... 3
1.7. Sistematika Penulisan ... 4
BAB II. LANDASAN TEORI ...6
2.1. SISTEM, INFORMASI, SISTEM INFORMASI ...6
xiv
2.2.1.1. Servlet ...9
2.2.1.2. Java Server Pages (JSP) ...11
2.3. WEB CONTAINER ...11
2.3.1. Web Server ...11
2.3.1.1.Tomcat ...12
2.3.2. Protokol HTTP ...13
2.3.2.1.Method HTTP Request ...14
2.3.2.2.Method Request GET ...14
2.3.2.3.Method Request POST ... 14
2.3.2.4.Response HTTP ... 14
2.3.3. Aplikasi Web ... 15
2.4. MVC (Model-View-Controller) ... 15
2.4.1. Model ... 16
2.4.2. View ...16
2.4.3. Controller ... 16
2.5. DATABASE SERVER, JDBC, DAN MYSQL ...17
2.5.1. Database Server ...17
2.5.2. JDBC ...17
2.5.3. MYSQL ...18
2.6. PEMROGRAMAN BERORIENTASI OBJEK ...20
2.6.1. Pengertian ...20
2.6.2. Karakteristik Pemrograman Berorientasi Objek ...20
2.6.3. Keuntungan Pemrograman Berorientasi Objek ...21
xv
2.6.4.2.Object Oriented Design ...22
2.6.5. UML (Unified Modelling Language) ...23
2.6.6. Use-Case Diagram ...24
2.6.7. Class Diagram ...26
2.6.8. Sequence Diagram ...28
BAB III. ANALISIS DAN PERANCANGAN SISTEM ...29
3.1. Analisa Sistem ...29
3.1.1. Gambaran Umum Perusahaan ...29
3.1.1.1.Sejarah Singkat Perusahaan UD. ROSARI ...29
3.1.1.2.Struktur Organisasi Perusahaan UD. ROSARI ...32
3.1.2. Prosedur dan Metode Pengumpulan Kebutuhan ...33
3.1.2.1.Prosedur ...33
3.1.2.2.Metode Pengumpulan Kebutuhan ...34
3.1.3. Orang yang terlibat dalam Sistem ...36
3.1.4. Gambaran Umum Sistem ...36
3.1.5. Kebutuhan Sistem ...37
3.1.6. Spesifikasi Sistem ...38
3.1.7. Use Case Diagram ...39
3.2. Perancangan Sistem ...42
3.2.1. Class Diagram ...43
3.2.2. Sequence Diagram ...45
3.2.3. Perancangan Database ...84
3.2.4. Perancangan User Interface ...89
xvi
3.2.4.3.Perancangan Output ...105
BAB IV. IMPLEMENTASI ...138
4.1. Instalasi ...138
4.2. Implementasi Program ...139
4.2.1. Implementasi Database ...139
4.2.2. Implementasi User Interface ...144
4.2.2.1.Proses Menu Utama ...144
4.2.2.2.Proses Login ...149
4.2.2.3.Proses Tambah Data ...151
4.2.2.4.Proses Ubah Data ...156
4.2.2.5.Proses Hapus Data ...159
4.2.2.6.Proses Sewa Barang ...165
4.2.2.7.Proses Pengembalian Barang ...172
4.2.2.8.Proses Transaksi Persewaan ...178
4.2.2.9.Proses Detail Transaksi ...183
4.2.2.10. Proses Pencarian ...188
4.2.2.11. Proses Tampil Barang ...196
4.2.2.12. Proses Logout ...203
BAB V. ANALISA HASIL ... 205
5.1. Teknik Pengumpulan Data ... 205
5.2. Sasaran Penyebaran Kuesioner ...205
5.3. Form Kuesioner ...206
5.4. Hasil dan Pembahasan ...212
xvii
5.7. Kekurangan Sistem ...222
BAB VI. PENUTUP ...223
6.1. KESIMPULAN ...223
6.2. SARAN ...224
xviii
Gambar 2.1. Siklus Informasi …………..………. 7
Gambar 2.2. J2EE Server dan Container ... 8
Gambar 2.3 Struktur Direktori Tomcat ... 12
Gambar 2.4. Simbol Use Case ... 25
Gambar 2.5. Simbol Aktor ...25
Gambar 2.6. Association ...…... 25
Gambar 2.7. Use Case depend on Relationship ... 26
Gambar 2.8. Use Case extend Relationship ... 26
Gambar 2.9. Class Diagram ... 27
Gambar 2.10. Sequence Diagram ... 28
Gambar 3.1. Struktur Organisasi Perusahaan UD. ROSARI ... 32
Gambar 3.2. Global Use Case Diagram ... 39
Gambar 3.3. Detail Use Case Diagram ... 41
Gambar 3.4. Class Diagram ... 43
Gambar 3.5. Sequence Diagram Login ... 45
Gambar 3.6. Sequence Diagram tambah pegawai ... 46
Gambar 3.7. Sequence Diagram ubah pegawai ... 47
Gambar 3.8. Sequence Diagram hapus pegawai ...48
Gambar 3.9. Sequence Diagram tambah pengguna akses ... 49
Gambar 3.10. Sequence Diagram ubah pengguna akses ... 50
Gambar 3.11. Sequence Diagram hapus pengguna akses ... 51
Gambar 3.12. Sequence Diagram tambah jenis ... 52
Gambar 3.13. Sequence Diagram ubah jenis ... 53
xix
Gambar 3.16. Sequence Diagram ubah barang ... 56
Gambar 3.17. Sequence Diagram hapus barang ... 57
Gambar 3.18. Sequence Diagram print out brosur ... 58
Gambar 3.19. Sequence Diagram tambah pelanggan ... 59
Gambar 3.20. Sequence Diagram ubah pelanggan ... 60
Gambar 3.21. Sequence Diagram hapus pelanggan ... 61
Gambar 3.22. Sequence Diagram tambah sewa ... 62
Gambar 3.23. Sequence Diagram ubah sewa ... 63
Gambar 3.24. Sequence Diagram hapus sewa ... 64
Gambar 3.25. Sequence Diagram sewa barang ... 65
Gambar 3.26. Sequence Diagram Proses ubah peminjaman barang ... 66
Gambar 3.27. Sequence Diagram Proses hapus peminjaman barang ... 67
Gambar 3.28. Sequence Diagram Proses tambah pengembalian ... 68
Gambar 3.29. Sequence Diagram ubah pengembalian ... 70
Gambar 3.30. Sequence Diagram hapus pengembalian ... 71
Gambar 3.31. Sequence Diagram tambah transaksi ... 72
Gambar 3.32. Sequence Diagram ubah transaksi ... 73
Gambar 3.33. Sequence Diagram hapus transaksi ... 74
Gambar 3.34. Sequence Diagram detail transaksi ... 75
Gambar 3.35. Sequence Diagram Print out nota persewaan ... 76
Gambar 3.36. Sequence Diagram tampil barang ... 77
xx
Gambar 3.39. Sequence Diagram pencarian perlengkapan berdasar bulan ... 81
Gambar 3.40. Sequence Diagram pencarian peminjaman berdasar nama pelanggan ... 83
Gambar 3.41. Form Menu Utama ... 89
Gambar 3.42. Form Menu Login ... .90
Gambar 3.43. Form Menu Admin ... 91
Gambar 3.44. Form Menu Pegawai ... 92
Gambar 3.45. Form Login ... 93
Gambar 3.46. Form Tambah Pegawai ... 93
Gambar 3.47. Form Tambah Pengguna Akses ... 94
Gambar 3.48. Form Tambah Pelanggan ... 95
Gambar 3.49. Form Tambah Jenis Barang ... 95
Gambar 3.50. Form Tambah Barang ... 96
Gambar 3.51. Form Tambah Sewa ... 97
Gambar 3.52. Form Sewa Barang ... 98
Gambar 3.53. Form Tambah Pengembalian ... 99
Gambar 3.54. Form Tambah Transaksi ...100
Gambar 3.55. Form Pencarian Perlengkapan Berdasarkan Nama Jenis Barang ... 101
Gambar 3.56. Form Pencarian Perlengkapan Berdasarkan Nama Barang ... 102
xxi
Nama Pelanggan ... 104
Gambar 3.59. Form Daftar Pegawai ... 105
Gambar 3.60. Form Ubah Pegawai ... 106
Gambar 3.61. Form Hapus Pegawai ... 106
Gambar 3.62. Form Daftar Pengguna Akses ... 107
Gambar 3.63. Form Ubah Pengguna Akses ... 108
Gambar 3.64. Form Hapus Pengguna Akses ... 108
Gambar 3.65. Form Daftar Jenis Barang ... 109
Gambar 3.66. Form Ubah Jenis Barang ...110
Gambar 3.67. Form Hapus Jenis Barang ... 110
Gambar 3.68. Form Daftar Barang ... 111
Gambar 3.69. Form Ubah Barang ... 112
Gambar 3.70. Form Hapus Barang ... 113
Gambar 3.71. Form Print Out Brosur ... 114
Gambar 3.72. Form Daftar Pelanggan ... 115
Gambar 3.73. Form Ubah Pelanggan ... 115
Gambar 3.74. Form Hapus Pelanggan ...116
Gambar 3.75. Form Daftar Persewaan ... 117
Gambar 3.76. Form Ubah Sewa ... .117
Gambar 3.77. Form Hapus Persewaan ... 118
Gambar 3.78. Form Daftar Peminjaman Barang ... 119
Gambar 3.79. Form Ubah Peminjaman Barang ... 120
Gambar 3.80. Form Hapus Peminjaman Barang ... 121
xxii
xxiii
xxiv
1
PENDAHULUAN
1.1LATAR BELAKANG MASALAH
U.D.ROSARI adalah perusahaan yang bergerak di bidang persewaan perlengkapan pesta yang menyewakan tenda, kursi, barang pecah belah, dan lain – lain. Perusahaan tersebut mempunyai inventaris perlengkapan pesta yang jumlahnya kurang lebih 70 macam barang dan jumlah stok per macam barang mencapai ribuan. Inventaris perlengkapan pesta ini disimpan dalam 1 gudang. Perusahaan tersebut mempekerjakan 8 orang pegawai untuk bongkar-pasang barang, 1 orang pegawai sebagai buruh cuci, dan 1 orang pegawai sebagai tenaga administrasi.
Selama ini proses sewa barang, daftar pelanggan yang menyewa, dan pencarian stok barang, masih dilakukan secara manual. Pegawai yang bertugas melakukan pekerjaan tersebut merasa kesulitan, karena jumlah barang dan pelanggan yang semakin bertambah banyak.
Untuk memenuhi kebutuhan UD. ROSARI, penulis membuat sistem informasi yang mendukung pengelolaan persewaan perlengkapan pesta. Sistem ini juga dibuat berbasis web, sehingga pelanggan dapat mengakses pencarian perlengkapan dan stok perlengkapan yang disewakan melalui internet.
1.2RUMUSAN MASALAH
perusahaan persewaaan perlengkapan pesta yang dapat memberikan layanan informasi dan pengolahan data barang kepada pegawai dan pelanggan.
1.3BATASAN MASALAH
Sistem informasi untuk perusahaan persewaan perlengkapan pesta ini mempunyai batasan masalah sebagai berikut:
1. Program dibuat dengan bahasa pemrograman J2EE yaitu dengan JSP (Java Server Pages) dan Servlet, dan database yang digunakan adalah MySQL 5.0.
2. Sistem informasi yang akan dibangun tidak menangani sistem penggajian pegawai, dan penambahan stok barang.
3. Sistem informasi yang akan dibangun mempunyai beberapa kemampuan, yaitu: a. Login Administrator
b. Login Pegawai c. Pendaftaran pegawai
d. Pendaftaran pengguna akses
e. Pencatatan perlengkapan, meliputi: penambahan, pengubahan, dan penghapusan data perlengkapan.
f. Laporan daftar perlengkapan yang disewakan g. Pendaftaran pelanggan baru
h. Pelayanan persewaan perlengkapan
1.4TUJUAN
Membangun suatu sistem informasi untuk perusahaan persewaan perlengkapan pesta U.D. ROSARI Klaten dengan JSP dan Servlet.
1.5MANFAAT
Manfaat dari sistem informasi yang akan dibangun ini adalah supaya dapat memberikan layanan informasi dan pengolahan data perlengkapan yang lebih baik kepada pegawai dan pelanggan.
1.6 METODOLOGI PENELITIAN
Metodologi penelitian yang digunakan dalam pembuatan sistem informasi ini adalah metodologi object-oriented (Carol Britton, Jill Doake). Langkah – langkah metodologi tersebut adalah sebagai berikut:
1. Melakukan studi kasus berupa wawancara yang bertujuan untuk:
a. Mendapatkan contoh informasi detail barang di perusahaan persewaan perlengkapan pesta U.D. ROSARI, misalnya tentang jenis barang, jumlah stok barang per jenis barang, daftar pelanggan.
b. Melihat sampai sejauh mana proses persewaan di perusahaan tersebut. 2. Melakukan studi literatur yang bertujuan untuk:
Mempelajari referensi mengenai bahasa pemrograman yang dipakai untuk pembuatan sistem informasi ini yaitu: J2EE khususnya untuk JSP dan Servlet, dan database yang digunakan yaitu MySQL.
3. Mengembangkan sistem informasi dengan SDLC(System Development Life Cycle) (Benyamin L. Sinaga). Tahap – tahap dalam pengembangan sistem yaitu:
Analisa sistem ini dimaksudkan untuk menentukan apa yang akan dilakukan oleh sistem. Fungsionalitas atau layanan – layanan apa yang akan diberikan kepada pengguna sistem.
b. Desain Sistem
Mengembangkan cara untuk mewujudkan sistem yang akan dibuat dengan perancangan sistem secara umum yaitu class diagram, sequence diagram, perancangan database, dan perancangan user interface.
c. Implementasi
Hasil perancangan sistem diterjemahkan ke dalam bahasa pemrograman yang dapat dimengerti oleh mesin.
d. Pengujian
Pengujian yang dilakukan adalah dengan menjalankan kuesioner untuk mendapatkan kesimpulan umum mengenai sistem informasi yang akan dibangun apakah secara garis besar sudah menjawab kebutuhan user. e. Deploymen
Pengguna melakukan instalasi program dan menggunakan program. f. Pemeliharaan
Melakukan pemeliharaan terhadap sistem berupa perawatan terhadap sistem. Perawatan ini meliputi perubahan, penambahan fungsi atau peningkatan informasi.
1.7SISTEMATIKA PENULISAN
BAB I PENDAHULUAN
BAB II LANDASAN TEORI
Bab ini berisi tentang penjelasan mengenai sistem informasi, J2EE, Web Container, MVC, Database Server, JDBC, MySQL, dan Pemrograman Berorientasi Objek.
BAB III ANALISA DAN PERANCANGAN SISTEM
Bab ini berisi tentang sejarah singkat perusahaan UD. ROSARI, gambaran umum tentang sistem informasi yang akan dibangun pada perusahaan persewaan perlengkapan pesta U.D. ROSARI, analisis sistem yang digambarkan dengan use-case diagram, perancangan sistem dengan class diagram, sequence diagram, basis data, dan perancangan user interface yang meliputi: perancangan menu, input, dan output.
BAB IV IMPLEMENTASI
Bab ini berisi tentang pembuatan form – form, pengkodean modul – modul, pembuatan tabel, dan lain – lain yang diperlukan sistem.
BAB V ANALISA HASIL
Bab ini berisi tentang analisa kelebihan dan kekurangan sistem baru yang telah berhasil dibuat.
BAB VI PENUTUP
6
BAB II
LANDASAN TEORI
2.1 SISTEM, INFORMASI, SISTEM INFORMASI
Menurut Jogiyanto HM (Jogiyanto, 1990) terdapat dua kelompok pendekatan di dalam mendefinisikan sistem, yaitu yang menekankan pada prosedur dan menekankan pada komponen atau elemennya. Pendekatan sistem yang lebih menekankan pada prosedur mendefinisikan sistem adalah suatu jaringan kerja dari prosedur – prosedur yang saling berhubungan, berkumpul bersama – sama untuk melakukan suatu kegiatan atau untuk menyelesaikan suatu sasaran yang tertentu. Pendekatan sistem yang merupakan jaringan kerja dari prosedur lebih menekankan urut – urutan operasi di dalam sistem. Pendekatan sistem yang lebih menekankan pada komponen atau elemennya mendefinisikan sistem adalah kumpulan dari elemen – elemen yang berinteraksi untuk mencapai suatu tujuan tertentu.
siklus pengolahan data (data processing cycles). Siklus informasi dapat dilihat pada Gambar 2.1.
Gambar. 2.1. Siklus Informasi
Kualitas dari suatu informasi tergantung dari tiga hal, yaitu informasi harus akurat, tepat pada waktunya, dan relevan (Jogiyanto, 1990).
2.2. J2EE (Java 2 Enterprise Edition)
J2EE merupakan teknologi Java yang menyediakan platform, library, dan kerangka kerja untuk membangun aplikasi enterprise. Dalam aplikasi enterprise tersebut, aplikasi web sering berperan sebagai klien karena memiliki banyak keunggulan dibanding dengan aplikasi desktop. Aplikasi web ini dapat dihasilkan dengan teknologi Servlet maupun Java Server Pages (JSP) (Isak Rickyanto, 2003).
2.2.1. Komponen – Komponen J2EE
Aplikasi J2EE terdiri dari beberapa komponen. Komponen di J2EE adalah sebuah unit program yang dirakit ke aplikasi J2EE sesuai dengan kelas dan filenya yang berkomunikasi dengan komponen lainnya. Spesifikasi J2EE mendefinisikan komponen – komponen J2EE sebagai berikut:
a. Komponen klien yang berjalan di komputer klien yaitu aplikasi klien dan applet.
b. Komponen web yang berjalan di J2EE server yaitu komponen Servlet dan JSP .
c. Komponen bisnis yang berjalan di J2EE server yaitu komponen EJB. Komponen web J2EE dapat dilihat pada gambar 2.2:
2.2.1.1. Servlet
Menurut Isak Rickyanto (Rickyanto, 2003), servlet adalah teknologi Java untuk aplikasi web. Teknologi servlet merupakan salah satu teknologi penting dari J2EE karena menjadi dasar dari teknologi JSP (Java Server Pages). Servlet sering digunakan untuk menghasilkan response berupa halaman HTML, XML, file, dan sebagainya sesuai request yang berjalan pada protokol HTTP. Servlet juga dipanggil sebagai HTTP Servlet. Hal ini disebabkan karena servlet biasanya digunakan dengan HTTP, akan tetapi servlet bukanlah salah satu spesifikasi spesifik dari protokol client – server.
Kelebihan Servlet:
a. Efisien dan baik dalam kinerja
Kinerja servlet baik dan efisien karena tidak ada proses pembuatan berulang untuk tiap request dari klien. Setiap request ditangani oleh proses servlet container. Servlet tidak dibuat dan dihancurkan berulang – ulang, tetapi tetap tersimpan pada memori untuk menangani request lain yang datang selanjutnya.
b. Powerfull
Servlet mempunyai kemampuan yang lengkap, antara lain mampu melakukan penanganan request ke request, penanganan cookie dan session, akses database dengan JDBC, caching, serta library yang lengkap untuk pembuatan aplikasi web.
c. Aman
d. Portabilitas
Teknologi Java Servlet portable karena dapat dijalankan di berbagai servlet container, aplikasi server, maupun sistem operasi.
e. Proses development yang lebih cepat
Dengan menggunakan servlet, dapat digunakan library Java yang lengkap dan komponen yang sudah ada.
f. Tangguh
Servlet merupakan teknologi Java yang memiliki penanganan memori yang baik dan garbage collection, sehingga menjadi aplikasi web yang tangguh dan stabil.
g. Telah digunakan dan diakui di dunia.
Servlet merupakan teknologi Java yang telah diterima dan digunakan di berbagai belahan dunia. Komponen, solusi, dan dukungan dapat ditemukan secara gratis(open source) maupun komersial.
h. Murah
Dikatakan murah karena JDK Java gratis untuk didownload. Container Servlet dan JSP juga banyak yang gratis, misalnya Tomcat.
2.2.1.2. Java Server Pages (JSP)
JSP adalah teks dokumen yang dapat menghasilkan halaman web yang statis (HTML, XML, Text, dll.) dan dinamis (Kode Java).
Kelebihan JSP:
a. Lebih mudah digunakan untuk menciptakan halaman web yang menarik b. JSP dapat dibuat dengan editor HTML biasa.
c. Modifikasi JSP dideteksi secara otomatis, sehingga mudah untuk dibangun. d. JSP merupakan multi-platform yang tidak terpisahkan dan dapat dijalankan
pada berbagai container servlet yang kompatibel, dengan mengabaikan vendor atau sistem operasinya.
2.3. WEB CONTAINER
Web container ialah sebuah runtime Java yang menyediakan implementasi dari Java Servlet API, dan fasilitas-fasilitas lainnya untuk JSP. Web container bertanggung jawab untuk inisialisasi, invoking, dan mengatur daur hidup Servlet dan JSP.
2.3.1. Web Server
2.3.1.1.Tomcat
Menurut Isak Rickyanto (Rickyanto, 2003), Tomcat atau lebih lengkapnya Apache Tomcat adalah servlet container sekaligus JSP container yang merupakan standar implementasi dari spesifikasi Servlet dan JSP. Tomcat dapat didownload secara gratis serta merupakan servlet container paling banyak digunakan di dunia. Versi Apache Tomcat yang digunakan pada pembuatan sistem informasi perusahaan persewaan ini adalah apache-tomcat-5.5.17.
Struktur direktori Tomcat dapat dilihat pada gambar 2.3:
Gambar 2.3 Struktur Direktori Tomcat Penjelasan struktur direktori Tomcat adalah sebagai berikut: a. bin
direktori untuk menyimpan skrip startup, shutdown dan file lain. b. classes
direktori untuk menyimpan Class yang tidak diekstrak(masih dipack) untuk aplikasi web global.
c. conf
deployment descriptor) serta tomcat-users.xml(file konfigurasi user Tomcat).
d. server
direktori untuk menyimpan file archive Tomcat. e. lib
direktori untuk menyimpan file class umum dalam bentuk “ .jar”. f. logs
direktori untuk menyimpan log Tomcat. g. common
direktori untuk menyimpan file class common untuk Catalina dan aplikasi web.
h. webapps
direktori untuk meyimpan file-file dari aplikasi web/servlet, JSP, dan image serta file-file terkait.
i. work
direktori untuk menyimpan file servlet hasil kompilasi dari file JSP.
2.3.2. Protokol HTTP
2.3.2.1.Method HTTP Request
HTTP menentukan tipe-tipe request yang dikirim client ke server. Protokol juga menentukan bagaimana request dan response dijalankan. HTTP/1.0 menentukan 3 tipe method request, yaitu GET, POST, dan HEAD. HTTP/1.1 mempunyai 5 method request tambahan, yaitu OPTION, PUT, TRACE, DELETE, dan CONNECT. Namun, yang umum digunakan adalah method GET dan POST saja.
2.3.2.2.Method Request GET
Method GET adalah method yang termudah dan paling sering digunakan untuk mengakses sumber statis seperti dokumen HTML, gambar, dan lain-lain. Method GET dapat juga digunakan untuk mengambil informasi dinamis, dengan mengggunakan parameter query tambahan pada URL yang diminta.
2.3.2.3.Method Request POST
Method POST digunakan untuk mengakses sumber dinamis. Umumnya, POST digunakan untuk mengirim informasi yang tergantung pada permintaan, dan digunakan ketika harus mengirim informasi kompleks yang besar ke server. Method POST mengizinkan enkapsulasi dari pesan multi bagian ke tubuh request.
2.3.2.4.Response HTTP
2.3.3. Aplikasi Web
Aplikasi web adalah aplikasi sisi server. Oleh karena itu, dibutuhkan persyaratan :
1. Sebuah model pemrograman dan API untuk pengembangan aplikasi 2. Dukungan runtime sisi server
3. Dukungan deployment, yaitu proses menginstal aplikasi ke server. Aplikasi web mempunyai struktur yang dibagi menjadi 4 bagian, yaitu:
1. direktori umum.
2. file WEB-INF/web.xml 3. direktori WEB-INF/classes 4. direktori WEB-INF/lib
2.4. MVC (Model – View - Controller)
MVC merupakan model arsitektur yang dipakai untuk membangun aplikasi web dengan logika bisnis dan presentasi yang kompleks. Dalam model arsitektur ini logika bisnis dipisahkan dari presentasi. Komponen yang mengatur logika dan data bisnis tidak mengatur presentasi data. Sebaliknya, komponen yang mengatur presentasi data juga tidak mengatur logika dan data bisnis (Wijono, dkk., 2007).
2.4.1. Model
Model merupakan implementasi dari logika bisnis dan data bisnis. Model dapat direalisasi dengan memakai sembarang komponen web (Wijono dkk., 2007). Model dapat berupa salah satu gabungan dari :
Sembarang class Java (class standar, servlet, JavaBeans, atau class lain yang memakai API Java Enterprise Edition).
Halaman JSP
Komponen akses data, baik memakai JDBC atau komponen EJB.
2.4.2. View
View merupakan implementasi dari presentasi, yaitu halaman yang akan dipakai sebagai response untuk dikirimkan kepada client. View akan menampilkan data bisnis yang telah diolah. Dalam hal ini, halaman JSP digunakan sebagai view (Wijono dkk., 2007) .
2.4.3. Controller
Controller merupakan pengontrol aliran request dan data. Tugas controller adalah menerima request yang dikirimkan dari client. Data request akan diolah atau diteruskan(forward) kepada komponen lain yang mengolah data. Pada akhirnya
2.5. DATABASE SERVER, JDBC, DAN MYSQL
2.5.1. Database Server
Komputer yang bertindak sebagai server umumnya menyediakan database server yang berfungsi sebagai server yang melayani akses terhadap database. Database server yang dipakai oleh penulis adalah MySQL.
2.5.2. JDBC
JDBC adalah API (Application Programming Interface) yang dikembangkan oleh Sun Microsystem untuk menyediakan akses data universal dalam bahasa pemrograman Java. JDBC merupakan bagian dari Java 2 SDK Standard Edition.
Inti dari JDBC adalah package java.sql dan javax.sql. JDBC menyediakan mekanisme untuk koneksi database, sintaks untuk mengirimkan query, dan melakukan transaksi serta struktur data yang mewakili hasil query. JDBC tidak melakukan standarisasi SQL, tetapi dapat mendukung sintaks SQL sesuai database vendor.
JDBC bukan database server, tetapi merupakan penyedia mekanisme untuk berhubungan antara aplikasi Java dengan database server. Dalam JDBC terdapat 7 langkah standar untuk menangani database yaitu:
1. Memanggil atau load driver JDBC
2. Mendefinisikan URL untuk koneksi database 3. Melakukan koneksi database
4. Membuat objek statement 5. Melakukan query atau update 6. Memproses hasil
2.5.3. MYSQL
MySQL adalah multiuser database yang menggunakan bahasa SQL (Structured Query Language) yang mampu menangani data yang cukup besar. SQL(Structured Query Language) adalah bahasa yang telah distandarisasi dan digunakan dalam pengelolaan semua database yang ada. Menurut Ridwan Sanjaya (Sanjaya, 2005), di dalam SQL terdapat 3 sub bahasa, yaitu:
1. DDL (Data Definition Language)
DDL adalah perintah – perintah yang digunakan untuk membangun isi dari database. DDL bertugas untuk membuat objek SQL dan menyimpan definisinya dalam tabel. Perintah – perintah yang digolongkan dalam DDL adalah:
a. Create
Perintah ini digunakan untuk membuat database, tabel, dan objek lain dalam database.
b. Alter
Perintah ini digunakan untuk memodifikasi tabel, seperti mengganti nama tabel, mengubah jenis / tipe field yang digunakan, mengubah nama field, menambah field baru atau mengurangi field tertentu. c. Drop
Perintah ini digunakan untuk menghapus database, tabel, dan objek yang lain dalam database.
2. DML (Data Manipulation Language)
a. Select
Perintah ini digunakan untuk menampilkan isi tabel. b. Insert
Perintah ini digunakan untuk mengisi atau menambah isi tabel. c. Update
Perintah ini digunakan untuk mengubah item – item tertentu dalam 1 tabel.
d. Delete
Perintah ini digunakan untuk menghapus record –record dengan kriteria tertentu.
3. DCL (Data Control Language)
DCL adalah perintah yang akan membantu mengontrol keamanan setiap database atau sebagian isi dari database dengan membuat hak –hak akses tertentu bagi setiap user.
a. Grant
Perintah ini digunakan untuk memberikan hak – hak tertentu kepada seorang user. Grant diberikan oleh user yang mempunyai hak untuk memberikan grant atau administrator(root).
b. Revoke
2.6. PEMROGRAMAN BERORIENTASI OBJEK
2.6.1. Pengertian
Pemrograman berorientasi objek adalah mengkombinasikan data dan fungsi untuk mengakses data menjadi sebuah kesatuan unit. Unit ini dikenal dengan nama objek. Objek sebenarnya mencerminkan pola kerja manusia dalam kehidupan sehari – hari. Sebuh objek dapat diibaratkan sebagai departemen – departemen di dalam sebuah perusahaan bisnis. Contoh departemen:
a. Penjualan b. Akunting c. Personalia
Objek sebenarnya adalah anggota dari kelas (class). Dengan kata lain, kelas adalah kumpulan dari beberapa objek yang sama.
2.6.2. Karakteristik Pemrograman Berorientasi Objek
Lima karakteristik dalam pemrograman berorientasi objek adalah sebagai berikut:
1. Abstraksi (abstraction)
Abstraksi adalah kemampuan manusia untuk mengenali keserupaan di antara objek – objek, situasi – situasi, atau proses – proses di duni nyata serta keputusan untuk berkonsenrasi pada keserupaan – keserupaan tersebut dan mengabaikan perbedaan – perbedaan yang kecil.
2. Enkapsulasi (encapsulation)
Enkapsulasi adalah pengemasan atau pembungkusan beberapa item ke dalam suatu unit
Modularitas adalah memecah sesuatu yang kompleks atau rumit menjadi bagian – bagian kecil yang dapat dikendalikan atau diatur.
4. Polimorfisme (polymorphism)
Polimorfisme adalah kemampuan untuk memperoleh beberapa bentuk. 5. Pewarisan (inheritance)
Pewarisan adalah urutan atau aturan dari tingkatan abstraksi menjadi seperti struktur pohon.
2.6.3. Keuntungan Pemrograman Berorientasi Objek
Keuntungan dari pemrograman berorientasi objek adalah sebagai berikut: 1. Realistic Modelling
Mengimajinasikan semua bentuk ke dalam bentuk nyata. 2. Reusability
Dapat membuat sebuah objek atau class yang bisa digunakan dalam proses yang lain, sehingga tidak perlu menulis ulang program. Dengan demikian dapat menghemat waktu, tenaga, dan biaya.
3. Fleksible
Sistem yang dibangun dimungkinkan untuk mengalami perubahan jangka waktu tertentu.
2.6.4. Metodologi Pemrograman Berorientasi Objek
2.6.4.1. Object Oriented Analysis
suatu aplikasi bisnis yang lebih berguna (Whitten, 2004). Ada 2 aktivitas utama dalam object oriented analysis yaitu:
1. Memodelkan fungsi dari sistem
Pada saat proses requirement analysis, telah dibangun use case yang mendokumentasikan kebutuhan fungsional dari sistem. Tujuan dari kegiatan ini adalah untuk mendapatkan dokumentasi yang cepat untuk seluruh bisnis event yang terjadi (use case) untuk mendefinisikan dan memvalidasi kebutuhan. 2. Mengorganisasikan objek dan mengidentifikasi relasinya
Pada tahap ini dibuat class diagram tahap analisis yang menggambarkan struktur objek dari sistem, memperlihatkan class objek dari sistem yang disusun dengan relasi antar class objeknya.
2.6.4.2. Object Oriented Design
Object oriented design merupakan pendekatan yang digunakan untuk menspesifikasikan solusi perangkat lunak dalam bentuk kolaborasi objek, atribut, dan methodnya. Tahap ini merupakan kelanjutan dari proses object oriented anaysis. Dalam tahap ini, terdapat tiga buah jenis objek, yaitu:
1. Entity Object, merupakan sebuah objek yang berisi informasi yang berhubungan dengan bisnis dan secara khusus bersifat persisten dan dismpan dalam database. Simbol :
a. Menterjemahkan input user ke dalam informasi yang dapat dimengerti oleh sistem dan menggunakannya untuk memproses kejadian bisnis.
b. Membawa data yang berhubungan ke dalam sebuah kejadian bisnis dan menterjemahkan data untuk dipresentasikan tepat kepada user.
Simbol :
3. Control Object, merupakan sebuah objek yang berisi aplikasi logik yang bukan merupakan tanggung jawab entity object. Control Object akan mengkoordinasikan message antara interface object dan entity object dan mengurutkan message yang terjadi.
Simbol:
Ketiga jenis objek tersebut akan menggambarkan fakta bahwa responsibilitas dan
behaviour dibutuhkan untuk mendukung fungsi sistem di antara ketiga objek yang akan bekerja sama untuk mendapatkan layanan terbaik. Ketiga jenis objek tersebut juga berhubungan dengan model client/server. Client bertanggung jwab untuk aplikasi logik (control object) dan merepresentasikan method (interface object) dan server bertanggung jawab terhadap repository (entity object).
2.6.5. UML (Unified Modelling Language)
dalam sistem perangkat lunak. Artifak adalah sepotong informasi yang digunakan atau dihasilkan dala suatu proses rekayasa perangkat lunak.
Untuk membuat suatu model, UML memiliki diagram grafis sebagai berikut : 1. Use-case diagram
2. Class diagram 3. Behavior diagram :
a. Statechart diagram b. Activity diagram c. Interaction diagram :
i. Sequence diagram ii. Collaboration diagram 4. Implementation diagram
a. Component diagram b. Deployment diagram
2.6.6. Use-Case Diagram
Gambar 2.4. Simbol Use Case
Aktor yang digambarkan pada gambar 2.5 merupakan segala sesuatu yang dibutuhkan untuk berinteraksi dengan sistem untuk mengubah informasi. Aktor ini dapat berupa orang, organisasi atau sistem informasi yang lain atau juga suatu waktu kejadian.
Gambar 2.5. Simbol Aktor
Association yang digambarkan pada gambar 2.6 adalah relasi antara aktor dan sebuah use case dimana terjadi interaksi antar mereka. Association dengan sebuah panah menyentuh use case mengidentifikasikan bahwa use case diinisiasi oleh aktor. Association dengan sebuah panah keluar dari use case menuju aktor berarti aktor menerima use case.
Gambar 2.6. Association
Use case depends on Relationship yang digambarkan pada gambar 2.7 adalah sebuah relasi use case yang menentukan bahwa use case yang lain harus dibuat sebelum use case yang sekarang, dimana digambarkan sebagai anak panah yang dimulai dari satu use case dan menunjuk ke use case yang depend on kepadanya. Setiap relasi depend on diberi label “<<depend on>>”.
Simbol Use Case
Pegawai membuat l aporan nota Pelanggan
Gambar 2.7. Use Case depend on Relationship
Use case extend Relationship yang digambarkan pada gambar 2.8 adalah sebuah relasi untuk menambahkan deskripsi use case pada use case yang sudah ada, memodelkan kondisi tambahan pada urutan aksi suatu use case, digunakan untuk menunjukkan behaviour yang opsional, behaviour yang terjadi pada kondisi khusus, dan beberapa sub-flow yang dijalankan berdasarkan pilihan aktor.
Gambar 2.8. Use Case extend Relationship
2.6.7. Class Diagram
Class diagram digunakan untuk memvisualisasikan struktur kelas-kelas dari suatu sistem dan merupakan tipe diagram yang paling banyak dipakai. Class diagram
Login
membuat laporan nota <<depend on>>
Daftar Pelanggan
tambah pelanggan ubah pelanggan
detail pelanggan hapus pelanggan
<<extend>>
<<extend>> <<extend>>
ini memperlihatkan hubungan antar kelas dan penjelasan detail tiap-tiap kelas di dalam model desain dari suatu sistem.
Selama proses analisis, class diagram memperlihatkan aturan-aturan dan tanggung jawab entitas yang menentukan perilaku sistem. Selama tahap desain, class diagram berperan dalam menangkap struktur dari semua kelas yang membentuk arsitektur sistem yang dibuat. Contoh Class Diagram digambarkan pada gambar 2.9.
Gambar 2.9. Class Diagram
2.6.8. Sequence Diagram
Sequence diagram menjelaskan interaksi objek yang disusun dalam suatu urutan waktu. Diagram ini secara khusus berasosiasi dengan use-case. Sequence diagram memperlihatkan tahap demi tahap apa yang seharusnya terjadi untuk menghasilkan sesuatu di dalam use case. Tipe diagram ini baik digunakan di awal tahap desain atau analisis karena kesederhanaannya dan mudah untuk dimengerti. Contoh Sequence Diagram dapat dilihat pada gambar 2.10.
Gambar 2.10. Sequence Diagram
: Admin/Pegawai : FormLogin : Servlet Login : admin/pegawai : Form Menu Admin/Pegawai 1: masukkan username dan password
2: username dan password
3: getLogin()
4: cek username, password
5: valid/non valid
6: valid
29
ANALISA DAN PERANCANGAN SISTEM
3.1. Analisa Sistem
3.1.1. Gambaran Umum Perusahaan
3.1.1.1.Sejarah Singkat Perusahaan UD. ROSARI
Perusahaan UD. ROSARI adalah perusahaan yang bergerak di bidang jasa pelayanan persewaan perlengkapan pesta yang menyewakan tenda, kursi, barang pecah belah, dan lain - lain. UD. ROSARI didirikan pada tahun 1996. Tahun 1998 mendapat nomor ijin untuk menjalankan operasional persewaan dengan nomor ijin: 113/11.12/TDUP/VII/1998. Pada awal mulanya, UD. ROSARI didirikan oleh karena pemilik UD. ROSARI yang sudah pensiun dari Pegawai Negeri Sipil (PNS) ingin mencari kesibukan dan pendapatan tambahan. Motivasi dari pemilik UD. ROSARI untuk memilih usaha persewaan adalah sebagai berikut:
1. Persewaan perlengkapan pesta sampai kapanpun akan dibutuhkan orang 2. Andaikata barang – barang inventaris yang disewakan sampai tidak laku
dan masih dalam kondisi tidak rusak, maka barang – barang tersebut tidak membutuhkan biaya perawatan yang besar.
pengembalian barang, maka UD. ROSARI menyediakan alat transportasi yaitu 1 buah truk dan 2 buah pick-up. UD. ROSARI mempekerjakan 1 orang untuk tenaga administrasi, 8 orang untuk tenaga bongkar-pasang barang, dan 1 orang sebagai tenaga cuci. UD. ROSARI juga melakukan perbaikan barang – barang yang rusak seperti meja, tenda, kursi yang dilakukan secara rutin. Buku – buku administrasi yang digunakan adalah:
1. Buku presensi buruh bongkar-pasang 2. Buku daftar pelanggan
3. Nota persewaan pelanggan 4. Kuitansi pembayaran pelanggan
Sampai saat ini, sistem persewaan UD. ROSARI masih dilakukan secara manual. Urutan proses manual persewaan UD. ROSARI adalah sebagai berikut:
1. Pelanggan menyodorkan daftar barang – barang yang akan disewa.
2. UD. ROSARI memberikan brosur yang berisi inventaris dan harga sewa per hari.
3. Kalau persewaan menyangkut tenda, UD. ROSARI melakukan survei ke tempat tersebut sehingga mengetahui berapa ukuran tenda yang akan dipasang dengan tepat.
4. UD. ROSARI melakukan pengecekan barang – barang yang tersedia apakah masih tersedia dalam stock.
5. Kalau barang yang disewa oleh pelanggan masih ada, maka dibuatkan nota peminjaman dan disertai berapa besar biaya untuk transportasi (diukur dari jarak jauh-dekatnya pengiriman dan pengembalian barang).
7. UD. ROSARI mengeluarkan kuitansi pembayaran sesuai dengan jumlah harga yang dibayar oleh pelanggan.
8. UD. ROSARI mengirim dan atau memasang barang – barang yang disewa oleh pelanggan sesuai dengan tanggal pemakaian.
9. Kalau pemakaian barang sudah selesai, maka pihak UD. ROSARI melakukan pengambilan atau pembongkaran.
10.Pelanggan melakukan pembayaran yang merupakan pelunasan atas barang – barang yang disewa.
11.Setelah peminjaman selesai, pihak UD. ROSARI melakukan pengecekan jumlah barang – barang yang tersedia, apabila ternyata ada kekurangan mengenai jumlah yang disebabkan oleh karena pecah, hilang, dan sebagainya, maka pelanggan dikenai biaya penggantian sesuai dengan harga umum.
12.Dalam hal- hal tertentu (misalnya: kesibukan yang padat sehingga buruh bongkar-pasang dan alat transportasi tidak ada) maka pelanggan terpaksa harus mengambil sendiri barang – barang yang akan disewa dan tidak dikenakan ongkos biaya transportasi.
Secara insidentil, UD. ROSARI perlu menambah barang – barang untuk mengikuti selera pelanggan dalam hal mengenai mode dan bentuk jenis barang – barang tertentu. Sedangkan sistem penggajian untuk tenaga administrasi dan para buruh adalah sebagai berikut:
1. Buruh bongkar-pasang diberlakukan sistem prosentase sebesar 25% dari omset dan diberikan uang makan.
2. Buruh cuci diberlakukan sistem berapa jumlah barang yang dicuci dimana per barang sudah ditentukan berapa harganya oleh pihak UD. ROSARI.
3.1.1.2.Struktur Organisasi Perusahaan UD. ROSARI
Struktur organisasi perusahaan UD. ROSARI dapat digambarkan seperti pada gambar 3.1.
Gambar 3.1. Struktur Organisasi Perusahaan UD. ROSARI Keterangan :
a. Pimpinan
Pimpinan merupakan pemilik perusahaan UD. ROSARI yang bertanggungjawab sepenuhnya atas berbagai aktivitas yang terjadi dalam proses persewaan perlengkapan pesta.
b. Tenaga Administrasi
Tenaga Administrasi merupakan orang yang bertugas menangani para pelanggan yang menyewa, dan mengoperasikan sistem persewaan perlengkapan pesta.
c. Tenaga bongkar-pasang
Tenaga bongkar-pasang merupakan orang yang bertugas mengirim, memasang, dan membongkar perlengkapan yang disewa ke alamat pelanggan.
Tenaga bongkar-pasang
Tenaga cuci Pimpinan
d. Tenaga cuci
Tenaga cuci merupakan orang yang bertugas untuk mencuci perlengkapan pesta yang kotor, seperti: taplak dan barang pecah belah.
3.1.2. Prosedur dan Metode Pengumpulan Kebutuhan
3.1.2.1.Prosedur
Prosedur pengumpulan kebutuhan dilakukan dengan wawancara ke perusahaan, dengan tahap – tahap sebagai berikut :
1. Meminta ijin kepada pimpinan perusahaan
2. Pimpinan memperbolehkan pelaksanaan wawancara 3. Menentukan waktu wawancara
4. Mempersiapkan beberapa pertanyaan
3.1.2.2.Metode Pengumpulan Kebutuhan
Perusahaan UD. ROSARI Pimpinan:
Albertus Supriyadi
Wawancara
Perusahaan ini bergerak di bidang apa?
P: Perusahaan ini bergerak di bidang jasa persewaan perlengkapan pesta.
Siapa saja yang terlibat di dalam perusahaan ini?
P: Orang yang terlibat dapat perusahaan ini adalah saya selaku pimpinan, tenaga administrasi, buruh bongkar-pasang, buruh cuci, dan para pelanggan.
Bisakah bapak jelaskan tugas dari setiap orang yang terlibat dalam perusahaan ini?
P: Pimpinan perusahaan bertugas untuk mengelola usaha persewaan, tenaga administrasi bertugas sebagai operator yang melayani para pelanggan yang menyewa barang, buruh bongkar-pasang bertugas untuk mengirim barang yang disewa oleh pelanggan sampai pada tujuan kemudian memasang segala perlengkapan yang disewa dan mengambil/membongkar kalau sudah selesai dipakai, buruh cuci bertugas untuk mencuci segala perlengkapan yang kotor setelah dipinjam oleh pelanggan (misalnya: taplak, sendok, piring, gelas, dll.).
Bagaimanakah prosedur pelanggan dan perusahaan dalam transaksi persewaan selama ini?
P: Prosedurnya adalah seperti:
1. Pelanggan menyodorkan daftar barang – barang yang akan disewa. 2. UD. ROSARI memberikan brosur yang berisi inventaris dan harga
sewa per hari.
3. Kalau persewaan menyangkut tenda, UD. ROSARI melakukan survei ke tempat tersebut sehingga mengetahui berapa ukuran tenda yang akan dipasang dengan tepat.
4. UD. ROSARI melakukan pengecekan barang – barang yang tersedia apakah masih tersedia dalam stock.
5. Kalau barang yang disewa oleh pelanggan masih ada, maka dibuatkan nota peminjaman dan disertai berapa besar biaya untuk transportasi (diukur dari jarak jauh-dekatnya pengiriman dan pengembalian barang).
7. UD. ROSARI mengeluarkan kuitansi pembayaran sesuai dengan jumlah harga yang dibayar oleh pelanggan.
8. UD. ROSARI mengirim dan atau memasang barang – barang yang disewa oleh pelanggan sesuai dengan tanggal pemakaian.
9. Kalau pemakaian barang sudah selesai, maka pihak UD. ROSARI melakukan pengambilan atau pembongkaran.
10.Pelanggan melakukan pembayaran yang merupakan pelunasan atas barang – barang yang disewa.
11.Setelah peminjaman selesai, pihak UD. ROSARI melakukan pengecekan jumlah barang – barang yang tersedia, apabila ternyata ada kekurangan mengenai jumlah yang disebabkan oleh karena pecah, hilang, dan sebagainya, maka pelanggan dikenai biaya penggantian sesuai dengan harga umum.
12.Dalam hal- hal tertentu (misalnya: kesibukan yang padat sehingga buruh bongkar-pasang dan alat transportasi tidak ada) maka pelanggan terpaksa harus mengambil sendiri barang – barang yang akan disewa dan tidak dikenakan ongkos biaya transportasi.
Apakah prosedur yang dilakukan mengalami kesulitan selama ini? P: selama ini, yang menjadi kesulitan kami adalah:
1. Pengontrolan stock sisa barang yang ada. Sewaktu ada pelanggan yang meminjam pada tanggal tertentu, kami tidak bisa langsung memberitahu kepada pelanggan apakah barang yang disewa masih atau tidak, dan kami harus mencari dalam daftar pelanggan terlebih dahulu apakah ada pelanggan yang memakai juga pada tanggal tertentu tersebut dan dijumlah keseluruhannya apakah sisa barang di UD. ROSARI memenuhi jumlah barang yang disewa oleh pelanggan lain pada tanggal tertentu tersebut.
Apakah ada keinginan dari bapak untuk mengganti sistem persewaan ini menjadi secara terkomputerisasi?
P: Oh, tentu saja ada.
1. Saya ingin ada sistem untuk memberikan informasi tentang pengontrolan stock sisa barang persewaan.
2. Saya ingin sewaktu pelanggan membayar sewa, mereka juga mendapat print out secara langsung dari sistem sebagai bukti nota peminjaman. Terima kasih atas waktu dan informasi yang bapak berikan.
P: Iya, sama-sama. Keterangan:
3.1.3. Orang yang terlibat dalam Sistem
Orang yang terlibat dalam sistem ini adalah sebagai berikut:
1. Admin merupakan orang yang bertugas untuk mengelola keseluruhan sistem. 2. Pegawai merupakan orang yang bertugas untuk melayani daftar sewa,
transaksi persewaan dan pendaftaran pelanggan.
3. Pelanggan merupakan orang yang menyewa perlengkapan pesta.
3.1.4. Gambaran Umum Sistem
Sistem yang dibangun adalah sistem informasi untuk perusahaan persewaan perlengkapan pesta dengan J2EE. Sistem yang dibangun merupakan sistem persewaan yang berbasis web dengan memberikan kemungkinan akses dan pemberian informasi yang lebih lengkap kepada orang yang terlibat di dalam persewaan perlengkapan pesta ini. Orang yang terlibat adalah admin, pegawai dan pelanggan.
Admin merupakan orang yang bertugas untuk mengelola sistem dan memberikan username dan password untuk pegawai. Sebelum admin masuk ke dalam sistem, admin harus melakukan login terlebih dahulu. Jika username dan password yang dimasukkan salah maka akan ditampilkan pesan kesalahan dan harus mengulangi proses login kembali. Jika username dan password yang dimasukkan benar maka admin dapat memanfaatkan sistem yang akan dibangun yaitu mengelola proses daftar pegawai, daftar pengguna akses, daftar jenis, daftar barang, daftar pelanggan, persewaan barang, pengembalian barang, transaksi persewaan, pencarian perlengkapan, dan menampilkan barang yang disewakan secara keseluruhan. Setelah admin selesai melakukan pengelolaan sistem, maka melakukan logout untuk keluar dari sistem.
harus melakukan login terlebih dahulu. Jika username dan password yang dimasukkan salah maka akan ditampilkan pesan kesalahan dan harus mengulangi proses login kembali. Jika username dan password yang dimasukkan benar maka pegawai dapat memanfaatkan sistem yang akan dibangun yaitu mengelola proses daftar pelanggan, proses persewaan dan pengembalian barang, transaksi persewaan, pencarian perlengkapan, dan menampilkan barang yang disewakan secara keseluruhan. Setelah pegawai selesai melakukan pengelolaan sistem, maka melakukan logout untuk keluar dari sistem.
Pelanggan merupakan orang yang menyewa perlengkapan pesta. Proses sewa barang dilakukan di UD. ROSARI, dan proses dilakukan oleh pegawai yang bertugas mengoperasikan persewaan. Hasil dari proses sewa barang diberikan kepada pelanggan sebagai bukti persewaan, seperti: nota persewaan dan brosur. Pelanggan juga dapat mengakses pencarian barang dan pencetakan brosur lewat akses internet.
3.1.5. Kebutuhan Sistem
Sistem informasi yang akan dikembangkan mempunyai beberapa kebutuhan sistem sebagai berikut:
A. Hardware
1. Sistem yang akan dibangun membutuhkan RAM minimal 512MB. 2. Membutuhkan kapasitas harddisk minimal 40GB.
B. Software
3.1.6. Spesifikasi Sistem
Berdasarkan analisa kebutuhan sistem, maka spesifikasi sistem yang akan dikembangkan adalah sebagai berikut:
1. Proses Login
2. Pendaftaran pegawai, pengubahan pegawai, dan penghapusan pegawai. 3. Pendaftaran pengguna akses, pengubahan data pengguna akses, dan
penghapusan data pengguna akses.
4. Pendaftaran jenis barang, pengubahan jenis barang, dan penghapusan jenis barang.
5. Pendaftaran barang, pengubahan barang, penghapusan barang, dan pencetakan brosur.
6. Pendaftaran pelanggan, pengubahan pelanggan, dan penghapusan pelanggan.
7. Pendaftaran persewaan, pengubahan persewaan, dan penghapusan persewaan.
8. Pengembalian barang
9. Transaksi persewaan yang meliputi penambahan transaksi, pengubahan transaksi, penghapusan transaksi, detail transaksi, dan pencetakan nota persewaan.
10.Pencarian perlengkapan.
3.1.7. Use Case Diagram
Use case diagram digambarkan menjadi 2 use case diagram yaitu, use case diagram secara global dan secara detail. Use case diagram dapat dilihat pada Gambar 3.2, dan Gambar 3.3
Daftar Pegawai Daftar Pengguna Akses
Daftar Jenis Daftar Barang
Logout Daftar Pelanggan Persewaan
Pengembalian Barang Transaks i Pers ewaan
pencarian perlengkapan berdasar nama jenis barang
pencarian perlengkapan berdas ar nama barang
Gambar 3.2 merupakan diagram yang menggambarkan interaksi antara sistem dan pengguna secara garis besar. Aktor yang terlibat adalah Admin, Pegawai, dan Pelanggan. Admin dapat berinteraksi dengan semua use case yang akan dibangun. Pegawai dapat berinteraksi dengan use case tertentu saja yaitu Login, Daftar Pelanggan, Persewaan, Pengembalian Barang, Transaksi Persewaan, pencarian perlengkapan berdasar nama jenis barang, pencarian perlengkapan berdasar nama barang, pencarian stok perlengkapan berdasar bulan, pencarian peminjaman berdasar nama pelanggan, Tampil Barang, dan Logout. Pelanggan dapat berinteraksi dengan use case pencarian perlengkapan berdasar nama jenis barang, pencarian perlengkapan berdasar nama barang, pencarian stok perlengkapan berdasar bulan, pencarian peminjaman berdasar nama pelanggan, dan Tampil Barang tanpa melakukan login. Pelanggan juga menerima hasil bukti dari persewaan yang terjadi.
Gambar 3.3. Detail Use Case Diagram
hapus peminjaman barang ubah peminjaman barang <<extend>>
Gambar 3.3 merupakan diagram yang menggambarkan interaksi antara sistem dan pengguna secara lengkap. Diagram tersebut merupakan perluasan dari gambar 3.2. Aktor yang terlibat adalah Admin, Pegawai, dan Pelanggan. Pelanggan dapat mengakses pencarian perlengkapan berdasar nama jenis barang, pencarian perlengkapan berdasar nama barang, pencarian stok perlengkapan berdasar bulan, pencarian peminjaman berdasar nama pelanggan, dan Tampil Barang di luar proses persewaan. Pelanggan juga menerima Print Out Brosur dan Print Out nota persewaan atas proses sewa barang yang terjadi.
3.2. Perancangan Sistem
UserAkses
Class diagram pada gambar 3.4 mempunyai 10 class. Masing – masing class mempunyai beberapa atribut. Gambar 3.4 menjelaskan bahwa 1 pelanggan mendaftar sebagai penyewa sebanyak 1 kali atau lebih proses peminjaman yang terdapat pada class DaftarSewa. Penyewa atau lebih dikenal dengan nama pelanggan dapat menyewa satu atau banyak barang, proses ini digambarkan pada class Sewa_Kembali dengan class DaftarBarang. Setiap 1 barang atau banyak barang yang disewakan mempunyai jenis tersendiri, hal tersebut digambarkan pada class DaftarBarang berhubungan dengan class JenisBarang. Setelah pelanggan melakukan proses sewa barang, maka pelanggan harus memenuhi transaksi persewaan. Proses tersebut digambarkan pada class TransaksiPersewaan. Dengan demikian proses persewaan barang dapat dilakukan sesuai dengan tanggal yang ditetapkan. Ketika proses persewaan barang telah selesai maka barang dikembalikan, pegawai mengecek macam dan stok barang yang disewa kemudian melakukan entry data yang digambarkan pada class Sewa_Kembali.
: Form Menu Admin/Pegawai : Admin/Pegawai : Index : Servlet AksesLogin : userakses
1: Masukkan usernam e dan password
2: Username dan password
3: getLogin(userNm,passwd)
4: Cek username dan password
5: Pesan error jika salah
6: Tam pil pesan error
7: Valid/Non Valid
8: Valid
9: Non Valid dan tampilkan pesan
3.2.2. Sequence Diagram 1. Login
Gambar 3.5. Sequence Diagram Login
: Admin : Form Tambah Pegawai : Servlet tambahPegawai : Daftar Pegawai : Form Daftar Pegawai
1: Masukkan data pegawai
2: data pegawai baru
3: tambahPegawai(pegawai)
4: Cek data pegawai
5: Pesan error jika data tidak lengkap
6: Tampil pesan error
7: Berhasil / Gagal disimpan
8: Penambahan pegawai berhasil dan tampil pesan
9: Data pegawai gagal disimpan
10: Tampil pesan gagal disimpan
password yang dimasukkan ada dalam database atau tidak. Pemeriksaan ini dikirim kembali ke servlet, jika pengisian username dan password salah maka tertampil pesan error pada halaman Index. Username dan password yang dimasukkan juga dicek pada servlet apakah valid atau tidak. Jika valid maka Admin / Pegawai berhasil masuk ke halaman masing – masing menurut level aksesnya. Sebaliknya, jika tidak valid maka kembali ke Index dan ditampilkan pesan kesalahan.
2. tambah pegawai
: Admin : Form Ubah Pegawai : Daftar Pegawai : Form Daftar Pegawai 1: Menam pilkan data yang akan diubah
2: Masukkan perubahan data pegawai pada form yang disediakan
5: cek data pegawai
11: Tam pil pes an gagal diubah
: Servlet s impan_ubahPegawai
3: Data pegawai baru
4: ubahPegawai(pegawai,request.getParameter("data_lam a"))
10: Gagal diubah
6: Pesan error jika data tidak lengkap
7: Tampil pesan error
8: Gagal / Berhas il diubah
9: Berhasil diubah dan tampil pesan
Sequence diagram pada gambar 3.6 menjelaskan bahwa aktor admin melakukan proses penambahan data pegawai. Proses ini dimulai dari memasukkan data pegawai sesuai dengan form yang disediakan pada Form Tambah Pegawai, kemudian data pegawai dikirim ke servlet tambahPegawai dengan method tambahPegawai(pegawai). Di dalam method tambahPegawai(pegawai) terdapat pengecekan tentang kelengkapan data pegawai dan data pegawai yang dimasukkan sudah ada sebelumnya dalam entity DaftarPegawai atau belum. Jika data yang dimasukkan lengkap dan atau belum ada di dalam entity DaftarPegawai, maka data berhasil disimpan. Sebaliknya, jika data yang dimasukkan tidak lengkap dan atau sudah ada dalam entity DaftarPegawai maka data pegawai gagal disimpan dan ditampilkan pesan gagal disimpan pada Form Tambah Pegawai.
3. ubah pegawai
: Adm in : Servlet konfirm Hapus Peg
: Daftar Pegawai : Form Daftar Pegawai : Form Hapus Pegawai
1: Menam pilkan data pegawai yang akan dihapus
2: Tekan tombol hapus
3: kodePeg
4: hapusPegawai(kodePeg)
5: cek data pegawai
6: Gagal / Berhas il dihapus
7: Tampilkan pesan gagal / berhasil dihapus
Sequence diagram pada gambar 3.7 menjelaskan bahwa aktor admin melakukan proses pengubahan data pegawai. Proses ini dimulai dari admin memilih salah satu data pegawai yang akan diubah dengan menekan tombol ubah pada Form Daftar Pegawai, lalu sistem menampilkan data – data yang akan diubah yang tertampil pada Form Ubah Pegawai. Admin memasukkan perubahan data pegawai pada form yang disediakan, kemudian data pegawai yang baru dikirim ke servlet simpan_ubahPegawai. Method pada servlet yang
menangani pengubahan data pegawai adalah
ubahPegawai(pegawai,request.getParameter(“data_lama”)), kemudian di dalam method ini terjadi pengecekan data pegawai yang diubah apakah data tersebut berhasil diubah atau tidak. Jika berhasil, maka di dalam entity Daftar Pegawai tersimpan pengubahan data yang dilakukan dan ditampilkan pada Form Daftar Pegawai. Tetapi jika tidak berhasil maka data gagal diubah dan ditampilkan pesan gagal diubah pada Form Ubah Pegawai.
4. hapus pegawai
: Adm in : Form Tambah Pengguna : Servlet tam bahUser : us eraks es : Form Daftar Pengguna Aks es 1: Memas ukkan data pengguna
2: Data pengguna baru
3: tambahUs er(us erakses )
4: Cek data pengguna
5: Pesan error jika data tidak lengkap
6: Tam pil pesan error
7: Berhas il/Gagal disim pan
10: Penam bahan pengguna baru gagal dis impan
11: Tam pil pes an gagal dis im pan
8: Penam bahan pengguna berhas il dis im pan
9: Tam pil pesan berhas il dis im pan
Sequence diagram pada gambar 3.8 menjelaskan bahwa aktor admin melakukan proses penghapusan data pegawai. Proses ini dimulai dari menekan tombol hapus pada baris pegawai yang akan dihapus datanya yang ada pada Form Daftar Pegawai, lalu sistem menampilkan data – data yang akan dihapus yang tertampil pada Form Hapus Pegawai. Lalu dari Form Hapus Pegawai mengirimkan kodePeg ke servlet konfirmHapusPeg. Method yang menangani hapus sewa adalah hapusPegawai(kodePeg). Dalam method ini data pegawai yang dihapus adalah berdasarkan pada kodePeg, kemudian dicek apakah data dengan kodePeg yang dihapus sudah benar – benar terhapus dalam entity Daftar Pegawai. Jika sudah terhapus maka ditampilkan pesan bahwa data telah dihapus.
5. tambah pengguna akses
: Admin : Servlet
simpan_ubahUser : userakses : Form Daftar Pengguna Akses : Form Ubah Pengguna Akses
1: Menampilkan data pengguna akses yang akan diubah
2: Masukkan pengubahan data
3: userakses,data_lama
4: ubahUser(userakses,request.getParameter("data_lama"));
5: Cek data userakses yang diubah
6: Pesan error jika data tidak lengkap
7: Tam pil pesan error
8: Berhasil/Gagal disimpan
9: Tampil pesan berhasil/gagal disimpan
Sequence diagram pada gambar 3.9 menjelaskan bahwa aktor admin melakukan proses penambahan pengguna akses baru. Proses ini dimulai dari memasukkan data pengguna akses sesuai dengan form yang disediakan pada Form Tambah Pengguna, kemudian data pengguna dikirim ke servlet tambahUser dengan method tambahUser(userakses). Di dalam method tambahUser(userakses) terdapat pengecekan tentang kelengkapan data pengguna dan data pengguna yang dimasukkan sudah ada sebelumnya dalam entity userakses atau belum. Jika data yang dimasukkan lengkap dan atau belum ada di dalam entity userakses, maka data berhasil disimpan. Sebaliknya, jika data yang dimasukkan tidak lengkap dan atau sudah ada dalam entity userakses maka data pengguna gagal disimpan dan ditampilkan pesan gagal disimpan pada Form Tambah Pegawai.
6. ubah pengguna akses