bab iii pembahasan - repository.bsi.ac.id · a. mengelola fungsi akuntansi dalam memproses data dan...
TRANSCRIPT
18
BAB III
PEMBAHASAN
3.1. Tinjauan Perusahaan
Sehubungan dengan perkembangan sektor industri di daerah karawang
keberadaan PT. Satria Gemilang Abadi memberikan pengaruh positif bagi
masyarakat sekitar khususnya dibidang ekonomi. Salah satunya adalah melalui
perekrutan tenaga kerja untuk merepair barang/limbah yang memprioritaskan warga
sekitar perusaahan.
Wilayah kerja yang dibangun disekitar lingkungan masyarakat sangat
membantu untuk meningkatkan perekonomian dan mengurangi tingkat
pengangguran.
PT. Satria Gemilang Abadi didirikan dengan maksud dan tujuan untuk menjadi
perusahaan yang bergerak dibidang perdagangan umum dan jasa khususnya bidang
penyedia tenaga kerja borongan repair barang.
3.1.1. Sejarah Perusahaan
PT. Satria Gemilang Abadi adalah perusahaan yang bergerak dibidang
perdagangan umum meliputi alat tulis kantor serta alat kebersihan dan jasa penyedia
tenaga kerja borongan repair barang untuk sebuah perusahaan. Adapun jasa yang di
tawarkan oleh PT. Satria Gemilang Abadi sebagai berikut :
1. Kontraktor bidang jasa pengadaan tenaga kerja repair barang
2. Perdagangan Umum
Adapun daftar perusahaan yang bekerjasama yaitu :
19
1. PT. Fuji Seat Indonesia
PT. Satria Gemilang Abadi dengan DAFTAR PERUSAHAAN
PERSOROAN TERBATAS (PT) NOMOR : 503/11751/PT/XII/BPMPT/2014
dengan nama perusahaan “ PT. SATRIA GEMILANG ABADI ” Adapun pemilik
perusahaan SUNARYA yang beralamatkan kantor perusahaan di BADAMI
RT.005/002, DESA MARGAKAYA, KECAMATAN TERUKJAMBE TIMUR
KABUPATEN KARAWANG.
PT. Satria Gemilang Abadi memiliki beberapa segi yaitu :
1. Segi Kesejahteraan Pegawai
Perusahaan memberikan perhatian penuh untuk tercapainya kesejahteraan dan
kepuasan bagi para pegawai, pendekatan demokratis dalam pelaksanaan tugas
dan apresiasi terhadap prestasi dengan stick dan carrot approach menjadi
pemicu sekaligus kendali efektif bagi para pegawai untuk selalu melakukan
tugas dengan baik. Paket remunisasi dengan tunjangan-tunjangan yang menarik
diberikan untuk menjaga fokus pegawai terhadap tugasnya, seperti :
a. Cuti
b. Tunjangan Pengobatan
c. THR (Tunjangan Hari Raya)
2. Segi Pelayanan
Senantiasa memberikan kesan terbaik kepada perusahan lainnya dalam
menjalin hubungan kerjasama, pelayanan terintegritas dan handal, baik oleh
staf administrasi maupun operasional.
3. Segi Harga
Senantiasa mempertahankan pengenaan harga yang bersaing dan wajar, adanya
perubahan harga secara umum yang secara langsung maupun tidak langsung
20
mempengaruhi komponen-komponen biaya operasional akan dipertimbangkan
dengan cermat sebelum mengadakan penyesuain.
4. Segi Waktu
Senantiasa mempertahankan dan meningkatkan ketepatan waktu sesuai dengan
jadwal yang sudah direncanakan oleh perusahaan, setiap faktor internal diatur
dengan baik sehingga menghilangkan atau mengurangi kendala yang
menyebabkan keterlambatan pengerjaan. Memberikan inputan kepada para
pelanggan dalam penyususan jadwal untuk memastikan kesinambungan
operasional perusahaan pelanggan agar tidak terganggu.
3.1.2. Struktur Ogranisasi dan Fungsi
Struktur organisasi merupakan suatu bagan untuk membagi kelompok
kelompok tertentu yang secara jelas diuraikan berdasarkan fungsi, tugas dan
tanggung jawabnya. Adapun struktur organisasi pada PT. Satria Gemilang Abadi
adalah :
Sumber : PT. Satria Gemilang Abadi
Gambar III.1
Struktur Organisasi PT. Satria Gemilang Abadi
21
Setiap bagian mempunyai fungsi yang berbeda satu dengan yang lainnya.
Adapun fungsi-fungsinya adalah :
1. Komisaris
a. Mengawasi jalannya perusahaan secara berkala, serta mengevaluasi tentang
hasil yang diperoleh perusahaan.
b. Menentukan siapa yang menjadi Direktur.
c. Menyetujui planning yang akan diajukan oleh Direktur.
d. Memberikan masukan-masukan yang berguna bagi perusahaan.
2. Direktur
a. Memimpin perusahaan dengan kebijakan-kebijakan perusahaan.
b. Memilih, menentukan, mengawasi pekerjaan karyawan.
c. Menyetujui anggaran tahunan perusahaan dan melaporkan laporan pada
dewan komisaris.
d. Mengkoordinasikan dan mengendalikan kegiatan pengadaan dan
peralatan perlengkapan.
e. Merencanakan dan mengembangkan sumber-sumber pendapatan serta
pembelanjaan dan kekayaan perusahaan.
3. Marketing
a. Menawarkan barang dan atau jasa kepada perusahaan atau instansi lain.
b. Membuat program-program pemasaran yang jitu dan efektif untuk menjaring
konsumen lebih besar.
4. Staf Administrasi
a. Mengawasi kinerja dari karyawan atau staf lainnya dalam sebuah
perusahaan.
22
b. Mengurus segala jenis urusan administrasi perusahaan.
c. Mengatur masalah penggajian pegawai, mulai dari sistem penggajian
pengaturan waktu penggajian sampai laporan penggajian.
d. Mengawasi keluar masuknya surat-surat perusahaan.
e. Membuat berbagai jenis laporan yang menjadi bagian staf administrasi.
5. Accounting
a. Mengelola fungsi akuntansi dalam memproses data dan informasi keuangan
untuk menghasilkan keuangan yang dibutuhkan perusahaan secara akurat dan
tepat waktu.
b. Mengkoordinasikan dan mengontrol perencanaan, pelaporan, dan
pembayaran. kewajiban pajak perusahaan agar efesien, akurat, tepat waktu
sesuai dengan pengaturan pemerintah yang berlaku.
c. Membuat program-program pemasaran yang jitu dan efektif untuk menjaring
konsumen lebih besar.
6. HRD
a. Membagi tenaga kerja sesuai dengan kebutuhan.
b. Memonitor dan melakukan supervise hasil kerja.
c. Melakukan pengawasan yang tidak terjadwal atau mendadak.
3.2 Tinjauan Kasus
3.2.1. Proses Bisnis Sistem Berjalan
Sistem dan prosedur pendapatan jasa pada PT. Satria Gemilang Abadi ini
berlangsung secara manual dan telah digunakan sejak awal perusahaan tersebut
dibentuk. Adapun prosedur sistem berjalan PT. Satria Gemilang Abadi saat ini
diantaranya :
23
1. Prosedur Pemberian Surat PKB (Pas Keluar Barang)
Customer memberikan PKB kepada PT. Satria Gemilang Abadi, PKB diterima
dan ditandatangani oleh Direktur PT. Satria Gemilang Abadi. PKB tersebut
diberikan kepada accounting untuk diarsipkan. Setelah PKB diarsipkan maka
accounting memberikan informasi kepada operator gudang dengan tujuan
untuk dilakukan pengecekan terhadap barang yang dikirim oleh customer.
2. Prosedur Pengerjaan Pekerjaan
Setelah accounting memberikan informasi bahwa barang siap untuk diproses
selanjutnya ialah dilakukan pengecekan jumlah dan kualitas barang, apabila
jumlah dan kulitas barang sesuai dengan surat PKB selanjutnya dilakukan
proses pengerjaan. Proses pengerjaan dilakukan selama satu hari setelah
pengeriman barang ke PT. Satria Gemilang Abadi. Setelah proses pengerjaan
selesai operator melakukan pengecekan ulang demi kesusaian fisik barang dan
data yang dikirim oleh customer. Operator memberikan konfirmasi kepada
accounting dengan tujuan untuk dibuatkannya surat jalan dan fatkur yang akan
diserahkan kepada cutomer.
3. Prosedur Pembayaran
Setelah faktur dan surat jalan diterima oleh customer, maka customer akan
melakukan pembayaran. Adapun proses pembayaran dilakukan via transfer.
4. Proses Pembuatan Laporan
Accounting akan membuatkan laporan pendapatan jasa setiap bulannya yang
diambil dari bukti pembayaran. Kemudian laporan pendapatan jasa diberikan
kepada Direktur dan selanjutnya di simpan dan di arsipkan sebagai laporan
pendapatan jasa bulanan.
24
3.2.2. Activity Diagram
Gambar III.2
Activity Diagram Sistem Berjalan
25
3.2.3. Dokumen Masukan
Dokumen masukan adalah segala bentuk masukan yang berupa dokumen dan
diolah dalam proses agar mendapatkan keluaran yang diinginkan. Adapun dokumen
masukan sebagai berikut:
1. NamaDokumen : Pas Keluar Barang
Fungsi : Sebagai surat pembawa barang repair
Sumber : Customer
Tujuan : PT. Satria Gemilang Abadi
Media : Kertas
Jumlah : 1 (satu) lembar
Frekuensi : Setiap kali ada perintah kerja
Format : Lampiran B-1
3.2.4. Dokumen Keluaran
Dokumen keluaran adalah segala bentuk hasil dari proses pengelolaan yang
terjadi pada suatu sistem melalui dokumen yang akan menghasilkan bentuk laporan.
Adapun spesifikasi dari dokumen keluaran sebagai berikut.
1. Nama Dokumen : Surat Jalan
Fungsi : Sebagai Arsip
Sumber : Accounting
Tujuan : Customer
Media : Kertas
Jumlah : 1 (satu) lembar
Frekuensi : Sebagai bukti transaksi barang telah diserahkan
Format : Lampiran B-2
26
2. Nama Dokumen : Faktur
Fungsi : Sebagai syarat pembayaran
Sumber : PT. Satria Gemilang Abadi
Tujuan : Customer
Media : Kertas
Jumlah : 1 (satu) lembar
Frekuensi : Setiap kali ada transaksi
Format : Lampiran B-3
3. Nama Dokumen : Bukti Pembayaran
Fungsi : Sebagai pembuatan Laporam
Sumber : Direktur
Tujuan : Accounting
Jumlah : 1 (Lembar)
Frekuensi : Setiap kali ada transaksi
Format : -
3.2.5. Permasalahan Pokok
Berdasarkan hasil analisa, observasi dan wawancara sistem prosedur
permintaan pekerjaan untuk jasa penyedia tenaga kerja borongan pada PT. Satria
Gemilang Abadi pada dasarnya berjalan sangat baik, akan tetapi penulis menemukan
adanya kendala pada sistem tersebut, seperti:
1. Karena semua penyimpanan data pada perusahaan berupa berkas arsip yang
berupa kertas menyebabkan data mudah rusak atau hilangnya data yang ada.
2. Setiap data berbentuk kertas/hardcopy dikumpulkan menjadi dokumen yang
diarsipkan sehingga membutuhkan waktu lama dalam proses pencarian data.
27
3. Data yang dikumpulkan menjadi dokumen membutuhkan banyak ruang
penyimpanan fisik yang lebih besar.
4. Pembuatan laporan pendapatan yang dilakukan secara manual, sehingga
membutuhkan ketelitian.
3.2.6. Pemecahan Masalah
Berdasarkan beberapa permasalahan yang timbul terdapat beberapa alternatif
pemecahan masalah yang dapat dilakukan untuk membangun sistem yang lebih
efektif dan efisien, yaitu:
1. Untuk penyimpanan data yang cukup lama tetapi selalu berubah, dibutuhkan
tempat penyimpanan yang aman dan terjamin.
2. Dibuatkan program aplikasi yang tersimpan dalam bentuk database sehingga
akan mempermudah dalam proses pencarian data yang dibutuhkan.
3. Sistem yang terkomputerisasi lebih efisien dalam hal penyimpanan data tidak
memakan tempat atau volume data tinggi sehingga mampu mengolah data
dalam sekala besar tanpa menambah tempat untuk ruang penyimpanan.
4. Pembuatan laporan yang cepat, akurat dan lebih terinci dan dibuatkannya back
up file agar data terjaga keamanannya.
3.3. Analisa Kebutuhan Software
Berdasarkan proses bisnis pada PT. Satria Gemilang Abadi penerimaan
pendapatan jasa, maka tahap berikutnya adalah analisa kebutuhan, berikut ini
spesifikasi kebutuhan dari sistem penerimaan pendapatan jasa.
Bagian Accounting dapat masuk ke sistem pencatatan pendapatan, di dalam
sistem pendapatan jasa bagian accounting dapat menginput semua transaksi
pendapatan tetapi tidak dapat mencetak laporan pendaptan, laporan pendapatan
hanya dapat dilihat oleh Direktur/pimpinan perusahaan.
28
3.3.1. Analisa Kebutuhan
A. Accounting
A1. Accounting Login
A2. Accounting membuka menu utama
A3. Accounting input data user
A4. Accouting input data customer
A6. Accounting input data jenis layanan
A7. Accounting input data akun
A8. Accounting input surat pas keluar barang
A9. Accounting input surat jalan
A10. Accounting input faktur
A11. Accounting input jurnal
A12. Accounting mencetak faktur
A13. Accounting mencetak surat jalan
A14. Accounting mencetak jurnal
A15. Accounting logout
A16. Accounting exit
B. Direktur
B1. Direktur login
B2. Direktur membuka menu utama
B3. Direktur melihat laporan data customer
B4. Direktur melihat laporan laporan pendapatan
B5. Direktur logout
B6. Direktur exit
29
3.3.2. Use Case Diagram
A. Accounting
A1. Use Case Diagram Login
Gambar III.3
Use Case Diagram Login
Tabel III.1
Deskripsi Use Case Diagram Login
Use Case Narative Login
Tujuan Melakukan Login dan masuk kedalam sistem
jasa penyedia tenaga kerja.
Deskripsi Sistem ini memungkinkan aktor untuk mengakses
sistem penyedia tenaga kerja.
Skenario Utama
Aktor Accounting
Kondisi Awal Aktor Membuka Aplikasi Jasa penyedia tenaga kerja.
Aksi Aktor Reaksi Sistem
1. Aktor melakukan login Sistem akan menampilkan textbox untuk mengisi
kode_user dan password.
Kondisi Akhir Jika perintah sesuai maka sistem akan masuk kedalam
aplikasi jasa penyedia tenaga kerja borongan dan aktor
dapat melakukan aktivitas didalam sistem.
30
A2. Use Case Diagram Membuka Menu Utama Accounting
Gambar III.4
Use Case Diagram Membuka Menu Utama Accounting
Tabel III.2
Deskripsi Use Case Diagram Membuka Menu Utama Accounting
Use Case Narative Menu Utama Accounting
Tujuan Masuk kedalam menu utama dan kedalam sistem
jasa penyedia tenaga kerja.
Deskripsi Sistem ini memungkinkan aktor untuk mengakses menu
utama dan mengakses sistem jasa penyedia tenaga kerja.
Skenario Utama
Aktor Accounting
Kondisi Awal Aktor membuka aplikasi jasa penyedia tenaga kerja.
Aksi Aktor Reaksi Sistem
1. Aktor memilih tombol menu
file
2. Aktor memilih tombol menu
master
3. Aktor memilih tombol menu
transaksi
4. Aktor memilih tombol menu
cetak
Sistem akan menampilkan sub menu file seperti logout
dan exit.
Sistem akan menampilkan sub menu master seperti
user, customer, layanan dan akun.
Sistem akan menampilkan sub menu transaksi seperti
pkb, sj, faktur dan jurnal.
Sistem akan mencetak surat jalan dan faktur.
Kondisi Akhir Jika perintah sesuai maka sistem akan akan
menampilkan seperti yang diinginkan oleh si Aktor.
31
A3. Use Case Diagram input Data User
Gambar III.5
Use Case Diagram Data User
Tabel III.3
Deskripsi Use CaseDiagram Input Data User
Use Case Narative Data User
Tujuan Masuk ke dalam sub menu master dan input
data user dalam sistem jasa penyedia tenaga kerja.
Deskripsi Sistem ini memungkinkan aktor untuk
mengakses data user dan sistem jasa penyedia tenaga kerja.
Skenario Utama
Aktor Accounting
Kondisi Awal Aktor Membuka Aplikasi Jasa penyedia tenaga kerja
Aksi Aktor Reaksi Sistem
1. Aktor memilih tombol data user
di menu master
2. Aktor memilih tombol tambah
3. Aktor memilih tombol simpan
4. Aktor memilih tombol cari kode
user
5. Aktor memilih tombol ubah
6. Aktor memilih tombol batal
7. Aktor memilih tombol hapus
8. Aktor memilih tombol keluar
Sistem akan menampilkan form data user.
Sistem akan menampilkan form input data user.
Sistem akan menyimpan form data user yang sudah di
tambah.
Sistem akan menampilkan kode yang dicari.
Sistem akan memberikan pilihan data mana yang akan di
ubah dan akan menyimpan data tersebut.
Sistem akan membatalkan data user yang akan di ubah.
Sistem akan menghapus data user yang sudah di pilih.
Sistem akan keluar dari aktivitas data user.
Kondisi Akhir Jika perintah sesuai maka sistem sudah masuk ke dalam
sub menu master dan aktor dapat melakukan aktivitas
didalam sistem.
32
A4. Use Case Diagram Accounting input Data Customer
Gambar III.6
Use Case Diagram input Data Customer
Tabel III.4
Deskripsi Use Case Diagram Accounting Input Data Customer
Use Case Narative Data Customer
Tujuan Masuk ke dalam sub menu master dan input data
customer dalam sistem jasa penyedia tenaga kerja.
Deskripsi Sistem ini memungkinkan aktor untuk mengakses data
customer dan sistem jasa penyedia tenaga kerja.
Skenario Utama
Aktor Accounting
Kondisi Awal Aktor Membuka Aplikasi Jasa penyedia tenaga kerja
Aksi Aktor Reaksi Sistem
1. Aktor memilih tombol data
customer di menu master
2. Aktor memilih tombol tambah
3. Aktor memilih tombol simpan
4. Aktor memilih tombol cari kode
customer
5.Aktor memilih tombol ubah
6. Aktor memilih tombol Batal
7. Aktor memilih tombol hapus
8. Aktor memilih tombol keluar
Sistem akan menampilkan form data customer.
Sistem akan menampilkan form input data customer.
Sistem akan menyimpan form data customer yang sudah
di tambah.
Sistem akan menampilkan kode yang dicari.
Sistem akan memberikan pilihan data mana saja yang
akan di ubah dan akan menyimpan data tersebut.
Sistem akan membatalkan data customer yang akan di
ubah.
Sistem akan menghapus data customer yang di pilih.
Sistem akan keluar dari aktivitas data customer.
Kondisi Akhir Jika perintah sesuai maka sistem sudah masuk ke
dalam sub menu master dan aktor dapat melakukan
aktivitas didalam sistem.
33
A5. Use Case Diagram Accounting input Data Jenis Layanan
Gambar III.7
Use Case Diagram input Data Jenis Layanan
Tabel III.5
Deskripsi Use Case Diagram Accounting Input Data Jenis Layanan
Use Case Narative Data Jenis Layanan
Tujuan Masuk ke dalam sub menu master dan input data jenis
layanan dalam sistem jasa penyedia tenaga kerja.
Deskripsi Sistem ini memungkinkan aktor untuk mengakses data
jenis layanan dan sistem jasa penyedia tenaga kerja.
Skenario Utama
Aktor Accounting
Kondisi Awal Aktor Membuka Aplikasi Jasa penyedia tenaga kerja
Aksi Aktor Reaksi Sistem
1. Aktor memilih tombol data
jenis layanan di menu master
2. Aktor memilih tombol tambah
3. Aktor memilih tombol simpan
4. Aktor memilih tombol cari
kode layanan
5. Aktor memilih tombol ubah
6. Aktor memilih tombol Batal
7. Aktor memilih tombol hapus
8. Aktor memilih tombol keluar
Sistem akan menampilkan form data jenis layanan.
Sistem akan menampilkan form input data jenis
layanan.
Sistem akan menyimpan form data jenis layanan yang
sudah di tambah.
Sistem akan menampilkan kode yang dicari.
Sistem akan memberikan pilihan data mana saja yang
akan di ubah dan akan menyimpan data tersebut.
Sistem akan membatalkan data jenis layanan yang akan
di ubah.
Sistem akan menghapus data jenis layanan yang di pilih.
Sistem akan keluar dari aktivitas data jenis layanan.
Kondisi Akhir Jika perintah sesuai maka sistem sudah masuk ke
dalam sub menu master dan aktor dapat melakukan
aktivitas didalam sistem.
34
A6.Use Case Diagram Accounting input Data Akun
Gambar III.8
Use Case Diagram input Data Akun
Tabel III.6
Deskripsi Use Case Diagram Accounting Input Data Akun
Use Case Narative Data Akun
Tujuan Masuk ke dalam sub menu master dan input data akun
dalam sistem jasa penyedia tenaga kerja.
Deskripsi Sistem ini memungkinkan aktor untuk mengakses data
akun dan sistem jasa penyedia tenaga kerja
Skenario Utama
Aktor Accounting
Kondisi Awal Aktor Membuka Aplikasi Jasa penyedia tenaga kerja
Aksi Aktor Reaksi Sistem
1. Aktor memilih tombol data akun
di menu master
2. Aktor memilih tombol tambah
3. Aktor memilih tombol simpan
4. Aktor memilih tombol cari kode
akun
5. Aktor memilih tombol ubah
6. Aktor memilih tombol Batal
7. Aktor memilih tombol hapus
8. Aktor memilih tombol keluar
Sistem akan menampilkan form data akun.
Sistem akan menampilkan form input data akun.
Sistem akan menyimpan form data akun yang sudah
di tambah.
Sistem akan menampilkan kode yang dicari.
Sistem akan memberikan pilihan data mana saja yang
akan di ubah dan akan menyimpan data tersebut.
Sistem akan membatalkan data akun yang akan
di ubah.
Sistem akan menghapus data akun yang udah
di pilih.
Sistem akan keluar dari aktivitas data akun.
Kondisi Akhir Jika perintah sesuai maka sistem sudah masuk ke
dalam sub menu master dan aktor dapatmelakukan
aktivitas didalam sistem.
35
A7. Use Case Diagram Accounting input Surat Pas Keluar Barang
Gambar III.9
Use Case Diagram input Surat Pas Keluar Barang
Tabel III.7
Deskripsi Use Case Diagram Accounting Input Surat PKB
Use Case Narative Surat Pas Keluar Barang
Tujuan Masuk ke dalam sub menu transaksi dan input surat pas
barang keluar dalam sistem jasa penyedia tenaga kerja.
Deskripsi Sistem ini memungkinkan aktor untuk mengakses data
surat pas keluar barang sistem jasa penyedia tenaga kerja.
Skenario Utama
Aktor Accounting
Kondisi Awal Aktor Membuka Aplikasi Jasa Penyedia Tenaga Kerja
Aksi Aktor Reaksi Sistem
1. Aktor memilih tombol SPK di
menu transaksi
2. Aktor memilih tombol tambah
3. Aktor memilih tombol simpan
4.Aktor memilih tombol cari
kode SPK
5.Aktor memilih tombol ubah
6 Aktor memilih tombol Batal
7. Aktor memilih tombol hapus
8. Aktor memilih tombol keluar
Sistem akan menampilkan form surat pas keluar barang.
Sistem akan menampilkan form input surat surat pas
keluar barang.
Sistem akan menyimpan form surat surat pas keluar
barang yang sudah di tambah.
Sistem akan menampilkan kode yang dicari.
Sistem akan memberikan pilihan data mana saja yang
akan di ubah akan menyimpan data tersebut.
Sistem akan membatalkan surat surat pas keluar barang
yang akan di ubah.
Sistem akan menghapus surat surat pas keluar barang
yang udahdi pilih.
Sistem akan keluar dari aktivitas data akun.
Kondisi Akhir Jika perintah sesuai maka sistem sudah masuk ke dalam
sub menu transaksi dan aktor dapatmelakukan aktivitas
didalam sistem.
36
A8. User Diagram Accounting input Surat Jalan
Gambar III.10
Use Case Diagram input Surat Jalan
Tabel III.8
Deskripsi Use Case Diagram Accounting Input Surat Jalan
Use Case Narative Surat Jalan
Tujuan Masuk ke dalam sub menu transaksi dan input
surat jalan dalam sistem jasa penyedia tenaga kerja.
Deskripsi Sistem ini memungkinkan aktor untuk mengakses data
surat jalan dan sistem jasa penyedia tenaga kerja.
Skenario Utama
Aktor Accounting
Kondisi Awal Aktor Membuka Aplikasi Jasa Penyedia Tenaga Kerja
Aksi Aktor Reaksi Sistem
1. Aktor memilih tombol surat
jalan di menu transaksi
2. Aktor memilih tombol tambah
3. Aktor memilih tombol simpan
4. Aktor memilih tombol cari
kode surat jalan
5.Aktor memilih tombol ubah
6. Aktor memilih tombol batal
7. Aktor memilih tombol hapus
8. Aktor memilih tombol keluar
Sistem akan menampilkan form surat jalan.
Sistem akan menampilkan form input surat jalan.
Sistem akan menyimpan form surat jalan yang sudah di
tambah.
Sistem akan menampilkan kode yang dicari.
Sistem akan memberikan pilihan data mana saja yang
akan di ubah dan akan menyimpan data tersebut.
Sistem akan memperbarui surat jalan yang
telah di ubah.
Sistem akan membatalkan surat jalan yang
akan di ubah.
Sistem akan menghapus surat jalan yang udah
di pilih.
Sistem akan keluar dari aktivitas surat jalan.
Kondisi Akhir Jika perintah sesuai maka sistem sudah masuk ke
dalam sub menu transaksi dan aktor dapat melakukan
aktivitas didalam sistem.
37
A9. Use Case Diagram Accounting input Faktur.
Gambar III.11
Use Case Diagram input Faktur
Tabel III.9
Deskripsi Use Case Diagram Accounting Input Faktur
Use Case Narative Faktur
Tujuan Masuk ke dalam sub menu transaksi dan input faktur
dalam sistem jasa penyedia tenaga kerja.
Deskripsi Sistem ini memungkinkan aktor untuk mengakses data faktur
dan sistem jasa penyedia tenaga kerja.
Skenario Utama
Aktor Accounting
Kondisi Awal Aktor Membuka Aplikasi Jasa Penyedia Tenaga Kerja
Aksi Aktor Reaksi Sistem
1. Aktor memilih tombol surat
jalan di menu transaksi
2. Aktor memilih tombol tambah
3. Aktor memilih tombol simpan
4. Aktor memilih tombol cari
kode invoice
5.Aktor memilih tombol ubah
6. Aktor memilih tombol batal
7. Aktor memilih tombol hapus
8. Aktor memilih tombol keluar
Sistem akan menampilkan form faktur.
Sistem akan menampilkan form input faktur.
Sistem akan menyimpan form faktur yang sudah ditambah.
Sistem akan menampilkan kode yang dicari.
Sistem akan memberikan pilihan data mana saja
yang akan di ubah dan akan menyimpan data tersebut.
Sistem akan membatalkan faktur yang akan diubah.
Sistem akan menghapus faktur yang udah dipilih.
Sistem akan keluar dari aktivitas faktur.
Kondisi Akhir Jika perintah sesuai maka sistem sudah masuk ke dalam
sub menu transaksi dan aktor dapatmelakukan aktivitas
didalam sistem.
38
A10. Use Case Diagram Accounting input Jurnal
Gambar III.12
Use Case Diagram input Jurnal
Tabel III.10
Deskripsi Use Case Diagram Accounting Input Jurnal
Use Case Narative Jurnal
Tujuan Masuk ke dalam sub menu transaksi dan input jurnal
dalam sistem jasa penyedia tenaga kerja.
Deskripsi Sistem ini memungkinkan aktor untuk mengakses data
jurnal dan sistem jasa penyedia tenaga kerja.
Skenario Utama
Aktor Accounting
Kondisi Awal Aktor Membuka Aplikasi Jasa Penyedia Tenaga Kerja
Aksi Aktor Reaksi Sistem
1. Aktor memilih tombol jurnal
di menu transaksi
2. Aktor memilih tombol tambah
3. Aktor memilih tombol simpan
4. Aktor memilih tombol cari
kode jurnal
5. Aktor memilih tombol batal
6. Aktor memilih tombol keluar
Sistem akan menampilkan form jurnal.
Sistem akan menampilkan form input jurnal.
Sistem akan menyimpan form jurnal yang sudah
di tambah.
Sistem akan menampilkan kode yang dicari.
Sistem akan membatalkan jurnal yang akan di ubah.
Sistem akan keluar dari aktivitas jurnal.
Kondisi Akhir Jika perintah sesuai maka sistem sudah masuk ke
dalam sub menu transaksi dan aktor dapat melakukan
aktivitas didalam sistem.
39
A11. Use Case Diagram Accounting mencetak Faktur
Gambar III.13
Use Case Diagram Mencetak Faktur
Tabel III.11
Deskripsi Use Case Diagram Accounting Mencetak Faktur
Use Case Narative Mencetak Faktur
Tujuan Masuk ke dalam menu cetak dandapat mencetak faktur
dalam sistem jasa penyedia tenaga kerja.
Deskripsi Sistem ini memungkinkan aktor untuk mencetak
Faktur dalam sistem jasa penyedia tenaga kerja.
Skenario Utama
Aktor Accounting
Kondisi Awal Aktor Membuka Aplikasi Jasa Penyedia Tenaga Kerja
Aksi Aktor Reaksi Sistem
1. Aktor memilih tombol cari
kode faktur
2. Aktor memilih tombol cetak
invoice
3. Aktor keluar
Sistem akan menampilkan kode yang di cari.
Sistem akan mencetak faktur.
Sistem akan keluar dari aktivitas.
Kondisi Akhir Jika perintah sesuai maka sistem sudah masuk ke
dalam menu cetak dan aktor dapat melakukan
aktivitas didalam sistem.
40
A12. Use Case Diagram Accounting mencetak Surat Jalan
Gambar III.14
Use Case Diagram Mencetak Surat Jalan
Tabel III.12
Deskripsi Use Case Diagram Accounting Mencetak Surat Jalan
Use Case Narative Mencetak Surat Jalan
Tujuan Masuk ke dalam menu cetak dandapat mencetak surat
Jalan dalam sistem jasa penyedia tenaga kerja.
Deskripsi Sistem ini memungkinkan aktor untuk mencetak
Surat jalan dalam sistem jasa penyedia tenaga kerja.
Skenario Utama
Aktor Accounting
Kondisi Awal Aktor Membuka Aplikasi Jasa Penyedia Tenaga Kerja
Aksi Aktor Reaksi Sistem
1. Aktor memilih tombol cari
kode faktur
2. Aktor memilih tombol cetak
invoice
3. Aktor keluar
Sistem akan menampilkan kode yang di cari.
Sistem akan mencetak surat jalan.
Sistem akan keluar dari aktivitas.
Kondisi Akhir Jika perintah sesuai maka sistem sudah masuk ke
dalam menu cetak dan aktor dapat melakukan
aktivitas didalam sistem.
41
A13. Use Case Diagram Accounting mencetak Jurnal
Gambar III.15
Use Case Diagram Mencetak Jurnal
Tabel III.13
Deskripsi Use Case Diagram Accounting Mencetak Jurnal
Use Case Narative Mencetak Jurnal
Tujuan Masuk ke dalam menu cetak dandapat mencetak jurnal
dalam sistem jasa penyedia tenaga kerja.
Deskripsi Sistem ini memungkinkan aktor untuk mencetak
jurnal dalam sistem jasa penyedia tenaga kerja.
Skenario Utama
Aktor Accounting
Kondisi Awal Aktor Membuka Aplikasi Jasa Penyedia Tenaga Kerja
Aksi Aktor Reaksi Sistem
1. Aktor memilih tombol cari
kode faktur
2. Aktor memilih tombol cetak
invoice
3. Aktor keluar
Sistem akan menampilkan periode yang di cari.
Sistem akan mencetak jurnal.
Sistem akan keluar dari aktivitas.
Kondisi Akhir Jika perintah sesuai maka sistem sudah masuk ke
dalam menu cetak dan aktor dapat melakukan
aktivitas didalam sistem.
42
A14. Use Case Diagram Accounting Logout
Gambar III.16
Use Case Diagram Logout
Tabel III.14
Deskripsi Use Case Diagram Logout
Use Case Narative Logout
Tujuan Keluar dari sistem jasa penyedia tenaga kerja.
Deskripsi
Sistem ini memungkinkan aktor untuk keluar dari
sistem jasa penyedia tenaga kerja dan kembali melakukan
login
Skenario Utama
Aktor Accounting
Kondisi Awal Aktor Membuka Aplikasi Jasa Penyedia Tenaga Kerja
Aksi Aktor Reaksi Sistem
1. Aktor logout Sistem akan keluar dari aktivitas kemudian kembali ke
menu login.
Kondisi Akhir Jika perintah sesuai maka sistem akan keluar dari
aplikasi jasa penyedia tenaga kerja.
43
A15. Use Case Diagram Accounting Exit
Gambar III.17
Use Case Diagram Exit
Tabel III.15
Deskripsi Use Case Diagram Exit
Use Case Narative Exit
Tujuan Keluar dari sistem jasa penyedia tenaga kerja
Deskripsi Sistem ini memungkinkan aktor untuk keluar
dari sistem jasa penyedia tenaga kerja
Skenario Utama
Aktor Accounting
Kondisi Awal Aktor Membuka Aplikasi Jasa Penyedia Tenaga Kerja
Aksi Aktor Reaksi Sistem
1. Aktor exit Sistem akan keluar dari aktivitas
Kondisi Akhir Jika perintah sesuai maka sistem akan keluar dari
aplikasi jasa penyedia tenaga kerja.
44
B. Direktur
B1. Use Case Diagram Direktur membuka Menu Utama
Gambar III.18
Use CaseMembuka Menu Utama
Tabel III.16
Deskripsi Use Case Membuka Menu Utama
Use Case Narative Menu Utama
Tujuan Masuk kedalam menu utama dan kedalam sistem
jasa penyedia tenaga kerja.
Deskripsi Sistem ini memungkinkan aktor untuk mengakses menu
utama dan meng akses sistem jasa penyedia tenaga kerja.
Skenario Utama
Aktor Direktur
Kondisi Awal Aktor membuka aplikasi jasa penyedia tenaga kerja.
Aksi Aktor Reaksi Sistem
1. Aktor memilih tombol menu
file
2. Aktor memilih menu laporan
Sistem akan menampilkan sub menu file seperti logout
dan exit.
Sistem akan menampilan sub menu laporan
seperti laporan data customer dan laporan pendapatan
perbulan.
Kondisi Akhir Jika perintah sesuai maka sistem akan masuk ke dalam
aplikasi jasa penyedia tenaga kerja dan aktor dapat
melakukan aktivitas didalam sistem.
45
B2. Use Case Diagram Direktur melihat Laporan Data Customer
Gambar III.19
Use Case Diagram Melihat Laporan Data Customer
Tabel III.17
Deskripsi Use Case Diagram Direktur Melihat Laporan Data Customer
Use Case Narative Laporan Data Customer
Tujuan Masuk ke dalam menu laporan dan dapat melihat laporan
data customer dalam sistem jasa penyedia tenaga kerja.
Deskripsi Sistem ini memungkinkan aktor untuk melihat laporan
data customer dalam sistem jasa penyedia tenaga kerja.
Skenario Utama
Aktor Direktur
Kondisi Awal Aktor Membuka Aplikasi Jasa Penyedia Tenaga Kerja
Aksi Aktor Reaksi Sistem
1. Aktor melihat laporan
customer
2. Aktor keluar
Sistem akan menampilkan laporan data customer.
Sistem akan keluar dari aktivitas
Kondisi Akhir Jika perintah sesuai maka sistem sudah masuk ke dalam
menu laporan dan aktor dapatmelakukan aktivitas
didalam sistem.
46
B3. Use Case Diagram Direktur melihat Laporan Pendapatan Perbulan
Gambar III.20
Use Case Diagram Melihat Laporan Pendapatan Perbulan.
Tabel III.18
Deskripsi Use Case Diagram Direktur Melihat Laporan Pendapatan Perbulan.
Use Case Narative Laporan Pendapatan Perbulan
Tujuan Masuk ke dalam menu laporan dan dapat melihat
laporan pendapatan perbulan dalam sistem jasa
penyedia tenaga kerja.
Deskripsi Sistem ini memungkinkan aktor untuk melihat laporan
pendapatan perbulan dalam sistem jasa penyedia tenaga
kerja.
Skenario Utama
Aktor Direktur
Kondisi Awal Aktor Membuka Aplikasi Jasa Penyedia Tenaga Kerja
Aksi Aktor Reaksi Sistem
1. Aktor melihat menu
laporan
2. Aktor keluar
Sistem akan menampilkan laporan pendapatan
perbulan.
Sistem akan keluar dari aktivitas.
Kondisi Akhir Jika perintah sesuai maka sistem sudah masuk ke
dalam menu laporan dan aktor dapat melakukan
aktivitas didalam sistem.
47
3.3.3. Activity Diagram
A1. Activity Diagram melakukan Login
Gambar III.21
Activity Diagram Login
A2. Activity Diagram membuka Menu Utama Accounting
Gambar III.22
Activity Diagram Menu Utama Accounting
48
A3. Activity Diagram input Data User
Gambar III.23
Activity Diagram User
49
A4. Activity Diagram input Data Customer
Gambar III.24
Activity Diagram Customer
50
A5. Accounting input data jenis layanan
Gambar III.25
Activity Diagram Jenis Layanan
51
A6. Accounting input data akun
Gambar III.26
Activity Diagram Akun
52
A7. Accounting input surat pas keluar barang
Gambar III.27
Activity Diagram Surat Pas Keluar Barang
53
A8. Accounting input surat jalan
Gambar III.28
Activity Diagram Surat Jalan
54
A9. Accounting input Faktur
Gambar III.29
Activity Diagram Faktur
55
A10. Accounting input Jurnal
Gambar III.30
Activity Diagram Jurnal
56
A11. Accounting mencetak surat jalan
Gambar III.31
Activity Diagram Mencetak Surat Jalan
A12. Accounting mecetak faktur
Gambar III.32
Activity Diagram Mencetak Faktur
57
A13. Accounting mecetak Jurnal
Gambar III.33
Activity Diagram Mencetak Jurnal
A14. Accounting Logout
Gambar III.34
Activity Diagram Logout
58
A15. Accounting Exit
Gambar III.35
Activity Diagram Exit
B1. Direktur membuka menu utama
Gambar III.36
Activity Diagram Menu Utama
59
B2. Direktur melihat laporan data customer
Gambar III.37
Activity Diagram Melihat Data Customer
B3. Direktur melihat laporan pendapatan jasa perbulan
Gambar III.38
Activity Diagram Melihat Laporan Pendapatan Perbulan
60
3.4. Desain
3.4.1.Entity Relationship Digram (ERD)
Gambar III.39
Entity Relationship Digram
61
3.4.2.Logical Record Structure (LRS)
Gambar III.40
Logical Record Structure
62
3.4.3.Spesifikasi File
Spesifikasi file digunakan untuk menyimpan data maupun proses pengolahan
data agar mendapatkan hasil yang menunjang sistem kerja yang diinginkan. Adapun
spesifikasi file tersebut adalah :
1. Spesifikasi File User Nama Database : DdUser
Nama File : User
Tipe File :Master
Akses File : Random
Panjang Record : 60 Karakter
Field key : kode_user
Tabel III.19
Spesifikasi File User
No. Elemen Data Field Type Panjang Keterangan
1. Kode User kode_user Varchar 20 Primary key
2. Nama
Pengguna nama_user Varchar 20
3. Alamat
Pengguna alamat_user Text -
4. Password password Varchar 15
5. Jenis Kelamin jk_user Varchar 20
6. No Telpon notlp_user Varchar 15
7. Hak akses hak_akses Enum -
2. Spesifikasi File Customer
Nama Database : DdCustomer
Nama File : Customer
Tipe File : Master
Akses File : Random
Panjang Record : 60 Karakter
Field key : kode_customer
Tabel III.20
Spesifikasi File Customer
No. Elemen Data Field Type Panjang Keterangan
1. Kode
Customer kode_customer Varchar 20 Primary key
2. Nama
Customer nama_customer Varchar 25
3 No Telpon
Customer notlp_customer Varchar 15
4. Alamat alamat_customer Text -
63
Customer
5. Email email_customer Varchar 40
6. No Rekening no_rek Varchar 30
3. Spesifikasi File Jenis Layanan
Nama Database : DdJenisLayanan
Nama File : Jenis Layanan
Tipe File : Master
Akses File : Random
Panjang Record : 60 Karakter
Field key : kode_layanan
Tabel III.21
Spesifikasi File Jenis Layanan
No. Elemen Data Field Type Panjang Keterangan
1. Kode
Jenis Layanan kode_layanan Varchar 20 Primary key
2. Kategori kategori Varchar 40
3. Harga harga Int 11
4. Spesifikasi File Akun
Nama Database : DdAkun
Nama File : Akun
Tipe File : Master
Akses File : Random
Panjang Record : 60 Karakter
Field key : kode_akun
Tabel III.22
Spesifikasi File Akun
No. Elemen Data Field Type Panjang Keterangan
1. Kode Akun kode_akun Varchar 20 Primary key
2. Nama Akun nama_akun Varchar 20
3. Jenis Akun nenis_akun Varchar 20
4. Debet Status Varchar 15
5. Spesifikasi File Surat Perintah Kerja (PKB)
Nama Database : DdPKB
Nama File : PKB
Tipe File : Transaksi
Akses File : Random
Panjang Record : 60 Karakter
Field key : kode_pkb
64
Tabel III.23
Spesifikasi File Pas Keluar Barang No. Elemen Data Field Type Panjang Keterangan
1. Kode PKB kode_pkb Varchar 20 Primary key
2. Tanggal tgl_pkb Date -
3. Keterangan keterangan Varchar 40
6. Spesifikasi File Surat Perintah Kerja Detail (PKB Detail)
Nama Database : DdPKB
Nama File : PKB_detail
Tipe File : Transaksi
Akses File : Random
Panjang Record : 60 Karakter
Field key : kode_pkb
Tabel III.24
Spesifikasi File Pas Keluar Barang Detail No. Elemen Data Field Type Panjang Keterangan
1. Kode SPK kode_pkb Varchar 20 Primary key
2. Kode
Customer kode_customer Varchar 20 Foreign Key
3. Kode Layanan kode_layanan Varchar 20 Foreign Key
4. Jumlah jumlah Int 11
7. Spesifikasi File Surat Jalan
Nama Database : DdSJ
Nama File : SJ
Tipe File : Transaksi
Akses File : Random
Panjang Record : 60 Karakter
Field key : kd_sj
Tabel III.25
Spesifikasi File Surat Jalan
No. Elemen Data Field Type Panjang Keterangan
1. Kode Surat
Jalan kode_sj Varchar 15 Primary Key
2. Kode PKB kode_pkb Varchar 20 Foreign Key
3. Tanggal tanggal_sj Date -
8. Spesifikasi File Faktur Detail
Nama Database : DdFaktur
Nama File : Faktur_detail
Tipe File : Transaksi
Akses File : Random
Panjang Record : 60 Karakter
Field key : kode_faktur
65
Tabel III.26
Spesifikasi File Faktur
No. Elemen
Data Field Type Panjang Keterangan
1. Kode Faktur kode_faktur Varchar 20 Primary
Key
2. Kode PKB Kode_pkb Vachar 20 Foreign
Key
3. Subtotal subtotal Double -
9. Spesifikasi File Faktur
Nama Database : DdFaktur
Nama File : Faktur
Tipe File : Transaksi
Akses File : Random
Panjang Record : 60 Karakter
Field key : kode_faktur
Tabel III.27
Spesifikasi File Faktur
No. Elemen
Data Field Type Panjang Keterangan
1. Kode Faktur kode_faktur Varchar 15 Primary
Key
2. Kode User kode_user Varchar 20 Foreign
Key
3. Kode Surat
Jalan kode_sj Varchar 20
Foreign
Key
4. Tanggal
Faktur tanggal_ faktur Date -
10. Spesifikasi File Detail Jurnal
Nama Database : DdJurnalDetail
Nama File : Jurnal Detail
Tipe File : Transaksi
Akses File : Random
Panjang Record : 60 Karakter
Field key : kd_jurnal
Tabel III.28
Spesifikasi File Jurnal Detail
No. Elemen Data Field Type Panjang Keterangan
1. Kode Jurnal kd_jurnal Varchar 20 Primary
Key
2. Kode Akun kd_akun Varchar 20 Foreign
Key
3. debet Debet Int 11
4. kredit Kredit Int 11
66
11. Spesifikasi File Jurnal
Nama Database : DdJurnal
Nama File : Jurnal
Tipe File : Transaksi
Akses File : Random
Panjang Record : 60 Karakter
Field key : kode_jurnal
Tabel III.29
Spesifikasi File Jurnal
No. Elemen Data Field Type Panjang Keterangan
1. Kode Jurnal kode_jurnal Varchar 25 Primary
Key
2. Tanggal Tgl_trans Varchar -
3. Keterangan keterangan Varchar 30
3.4.4. Sequence Diagram Menu Utama
Gambar III.41
Sequence Diagram Menu Utama
67
3.4.5. Sequence Diagram Transaksi
Gambar III.42
Sequence Diagram Transaksi
3.4.6. Deployment Diagram
Gambar III.43
Deployment Diagram
68
3.4.6. User Interface
1. User Interface Form Login
Gambar III.44
User Interface Form Login
2. User Interface Form Menu Utama Acconting
Gambar III.45
User Interface Form Menu Utama Acconting
69
3. User Interface Form User
Gambar III.46
User Interface Form User
4. User Interface Form Customer
Gambar III.47
User Interface Form Customer
70
5. User Interface Form Jenis Layanan
Gambar III.48
User Interface Form Jenis Layanan
6. User Interface Form Akun
Gambar III.49
User Interface Form Akun
71
7. User Interface Form Pas Keluar Barang
Gambar III.50
User Interface Form Pas Keluar Barang
8. User interface Form Surat Jalan
Gambar III.51
User Interface Form Surat Jalan
72
9. User Interface Form Faktur
Gambar III.52
User Interface Form Faktur
10. User Interface Form Jurnal
Gambar III.53
User Interface Form Jurnal
73
11. User Interface Form Cetak Surat Jalan
Gambar III.54
User Interface Form Cetak Surat Jalan
12. User Interface Form Cetak Faktur
Gambar III.55
User Interface Form Cetak Faktur
74
13. User Interface Form Jurnal
Gambar III.56
User Interface Form Cetak Jurnal
14. User Interface Form Logout
75
Gambar III.57
User Interface Form Logout
15. User Interface Form Exit
Gambar III.58
User Interface Form Exit
16. User Interface Form Menu Utama Direktur
76
Gambar III.59
User Interface Form Menu Utama Direktur
17. User Interface Direktur Melihat Laporan Data Customer
Gambar III.50
User Interface Direktur Melihat Laporan Data User
18. User Interface Direktur Melihat Laporan Pendapatan
Gambar III.61
User Interface Direktur Melihat Laporan Pendapatan
77
3.5. Implementasi
3.5.1. Code Generation
A. Form Surat Pas Keluar Barang
import java.awt.event.ActionEvent;
import java.util.Date;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.text.SimpleDateFormat;
import javax.crypto.ExemptionMechanismException;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;
/**
*
* @author user
*/
public class pkb extends javax.swing.JFrame {
koneksi kon = new koneksi();
/**
* Creates new form pkb
*/
public pkb() {
initComponents();
kon.getConnection();
txtTgl.setText(s.format(dd));
btnsimpan.setEnabled(false);
btnhapus.setEnabled(false);
btnubah.setEnabled(false);
btnbatal.setEnabled(false);
txtKode.setText(nomor());
78
regrid();
nonaktif();
}
Date dd = new Date();
SimpleDateFormat s = new SimpleDateFormat("yyyy-MM-dd");
public String nomor() {
String urutan = null;
try {
kon.rs = kon.st.executeQuery("select right(kode_pkb,3)+1 from pkb");
if (kon.rs.next()) {
kon.rs.last();
urutan = kon.rs.getString(1);
while (urutan.length() < 3) {
urutan = "0" + urutan; }
urutan = "PKB" + urutan;
} else {
urutan = "PKB001"; }
} catch (Exception e) {
JOptionPane.showMessageDialog(null, "Mungkin Database Anda: " + e);
}
return urutan;
}
private void aktif() { // untuk form yang akan diaktifkan
txtKode.setEnabled(true);
txtTgl.setEnabled(true);
txtKodeCustomer.setEnabled(true);
txtNamaCus.setEnabled(true);
txtAlamat.setEnabled(true);
txtKodeL.setEnabled(true);
txtKategori.setEnabled(true);
79
txtJumlah.setEnabled(true);
txtKet.setEnabled(true);
}
private void nonaktif() { // untuk form yang akan dinonaktifkan
txtKode.setEnabled(false);
txtTgl.setEnabled(false);
txtKodeCustomer.setEnabled(false);
txtNamaCus.setEnabled(false);
txtAlamat.setEnabled(false);
txtKodeL.setEnabled(false);
txtKategori.setEnabled(false);
txtJumlah.setEnabled(false);
txtKet.setEnabled(false); }
private void regrid() {
DefaultTableModel tpkb = new DefaultTableModel();
tpkb.addColumn("Kode PKB");
tpkb.addColumn("Kode Customer");
tpkb.addColumn("Kode Layanan");
tpkb.addColumn("Jumlah");
try {
kon.rs = kon.st.executeQuery("select * from pkb_detail "); //asc untuk mulai
dari yang terkecil dan desc itu urutan melai dari yang terbesar
while (kon.rs.next()) {
tpkb.addRow(new Object[]{
kon.rs.getString(1),
kon.rs.getString(2),
kon.rs.getString(3),
kon.rs.getString(4),}); }
} catch (Exception c) {
JOptionPane.showMessageDialog(this, c);
}
80
jTable1.setModel(tpkb);
}
private void bersih() {
txtKode.setText("");
txtTgl.setText("");
txtKodeCustomer.setText("");
txtNamaCus.setText("");
txtAlamat.setText("");
txtKodeL.setText("");
txtKategori.setText("");
txtJumlah.setText("");
txtKet.setText("");
}
/**
* This method is called from within the constructor to initialize the form.
* WARNING: Do NOT modify this code. The content of this method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
jLabel1 = new javax.swing.JLabel();
jLabel2 = new javax.swing.JLabel();
jLabel3 = new javax.swing.JLabel();
jLabel7 = new javax.swing.JLabel();
txtKode = new javax.swing.JTextField();
txtTgl = new javax.swing.JTextField();
txtKet = new javax.swing.JTextField();
btnsimpan = new javax.swing.JButton();
btnhapus = new javax.swing.JButton();
81
btnkeluar = new javax.swing.JButton();
btnbatal = new javax.swing.JButton();
btntambah = new javax.swing.JButton();
btncari = new javax.swing.JButton();
btnubah = new javax.swing.JButton();
jScrollPane1 = new javax.swing.JScrollPane();
jTable1 = new javax.swing.JTable();
jPanel1 = new javax.swing.JPanel();
jLabel4 = new javax.swing.JLabel();
txtKodeCustomer = new javax.swing.JTextField();
jLabel9 = new javax.swing.JLabel();
txtNamaCus = new javax.swing.JTextField();
jLabel8 = new javax.swing.JLabel();
txtAlamat = new javax.swing.JTextField();
btKode = new javax.swing.JButton();
jPanel3 = new javax.swing.JPanel();
jLabel13 = new javax.swing.JLabel();
jLabel11 = new javax.swing.JLabel();
jLabel5 = new javax.swing.JLabel();
txtJumlah = new javax.swing.JTextField();
btKodeLay = new javax.swing.JButton();
txtKodeL = new javax.swing.JTextField();
txtKategori = new javax.swing.JTextField();
btnSimpan = new javax.swing.JButton();
jLabel12 = new javax.swing.JLabel();
jPanel5 = new javax.swing.JPanel();
jLabel6 = new javax.swing.JLabel();
jPanel6 = new javax.swing.JPanel();
jLabel1.setText("jLabel1");
82
setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
setTitle("Surat PKB");
getContentPane().setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout());
jLabel2.setText("Kode PKB");
getContentPane().add(jLabel2, new
org.netbeans.lib.awtextra.AbsoluteConstraints(60, 100, 59, 22));
jLabel3.setText("Tanggal PKB");
getContentPane().add(jLabel3, new
org.netbeans.lib.awtextra.AbsoluteConstraints(410, 100, -1, 22));
jLabel7.setText("Keterangan");
getContentPane().add(jLabel7, new
org.netbeans.lib.awtextra.AbsoluteConstraints(690, 100, 59, 22));
txtKode.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
txtKodeActionPerformed(evt); }
});
getContentPane().add(txtKode, new
org.netbeans.lib.awtextra.AbsoluteConstraints(140, 100, 107, -1));
txtTgl.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
txtTglActionPerformed(evt); }
});
getContentPane().add(txtTgl, new
org.netbeans.lib.awtextra.AbsoluteConstraints(490, 100, 110, -1));
getContentPane().add(txtKet, new
org.netbeans.lib.awtextra.AbsoluteConstraints(800, 100, 130, -1));
83
btnsimpan.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/img/simpan.png"))); // NOI18N
btnsimpan.setText("Simpan");
btnsimpan.setBorder(new
javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED));
btnsimpan.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnsimpanActionPerformed(evt); }
});
getContentPane().add(btnsimpan, new
org.netbeans.lib.awtextra.AbsoluteConstraints(370, 350, -1, -1));
btnhapus.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/img/hapus.png"))); // NOI18N
btnhapus.setText("Hapus");
btnhapus.setBorder(new
javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED));
btnhapus.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnhapusActionPerformed(evt); }
});
getContentPane().add(btnhapus, new
org.netbeans.lib.awtextra.AbsoluteConstraints(700, 350, 70, -1));
btnkeluar.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/img/keluar.png"))); // NOI18N
btnkeluar.setText("Keluar");
btnkeluar.setBorder(new
javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED));
btnkeluar.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnkeluarActionPerformed(evt); }
});
getContentPane().add(btnkeluar, new
org.netbeans.lib.awtextra.AbsoluteConstraints(800, 350, 70, 30));
84
btnbatal.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/img/batal.png"))); // NOI18N
btnbatal.setText("Batal");
btnbatal.setBorder(new
javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED));
btnbatal.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
btnbatal.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnbatalActionPerformed(evt); }
});
getContentPane().add(btnbatal, new
org.netbeans.lib.awtextra.AbsoluteConstraints(480, 350, -1, 30));
btntambah.setBackground(new java.awt.Color(255, 255, 255));
btntambah.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/img/tambah.png"))); // NOI18N
btntambah.setText("Tambah");
btntambah.setBorder(new
javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED));
btntambah.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btntambahActionPerformed(evt); }
});
getContentPane().add(btntambah, new
org.netbeans.lib.awtextra.AbsoluteConstraints(150, 350, 80, 30));
btncari.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/img/cari.png"))); // NOI18N
btncari.setText("Cari");
btncari.setBorder(new
javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED));
btncari.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
85
btncariActionPerformed(evt); }
});
getContentPane().add(btncari, new
org.netbeans.lib.awtextra.AbsoluteConstraints(270, 350, -1, 30));
btnubah.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/img/ubah.png"))); // NOI18N
btnubah.setText("Ubah");
btnubah.setBorder(new
javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED));
btnubah.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnubahActionPerformed(evt); }
});
getContentPane().add(btnubah, new
org.netbeans.lib.awtextra.AbsoluteConstraints(590, 350, -1, -1));
jTable1.setModel(new javax.swing.table.DefaultTableModel(
new Object [][] {
{null, null, null, null},
{null, null, null, null},
{null, null, null, null},
{null, null, null, null} },
new String [] {
"Title 1", "Title 2", "Title 3", "Title 4" }
));
jTable1.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
jTable1MouseClicked(evt); }
});
jScrollPane1.setViewportView(jTable1);
86
getContentPane().add(jScrollPane1, new
org.netbeans.lib.awtextra.AbsoluteConstraints(140, 400, 760, 160));
jPanel1.setBackground(new java.awt.Color(0, 153, 102));
jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder("Data
Customer"));
jPanel1.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout());
jLabel4.setText("Kode Customer");
jLabel4.setToolTipText("");
jPanel1.add(jLabel4, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 40,
90, 22));
jPanel1.add(txtKodeCustomer, new
org.netbeans.lib.awtextra.AbsoluteConstraints(110, 40, 110, -1));
jLabel9.setText("Nama Customer");
jPanel1.add(jLabel9, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 70,
-1, -1));
jPanel1.add(txtNamaCus, new
org.netbeans.lib.awtextra.AbsoluteConstraints(110, 70, 110, -1));
jLabel8.setText("Alamat Customer");
jPanel1.add(jLabel8, new org.netbeans.lib.awtextra.AbsoluteConstraints(10,
100, -1, -1));
jPanel1.add(txtAlamat, new org.netbeans.lib.awtextra.AbsoluteConstraints(110,
100, 110, -1));
btKode.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/img/hhh.png"))); // NOI18N
btKode.setBorder(new
javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED));
btKode.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btKodeActionPerformed(evt); }
});
87
jPanel1.add(btKode, new org.netbeans.lib.awtextra.AbsoluteConstraints(240,
30, -1, -1));
getContentPane().add(jPanel1, new
org.netbeans.lib.awtextra.AbsoluteConstraints(100, 140, 290, 160));
jPanel3.setBackground(new java.awt.Color(0, 153, 102));
jPanel3.setBorder(javax.swing.BorderFactory.createTitledBorder("Jenis
Layanan"));
jPanel3.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout());
jLabel13.setText("Kode Layanan");
jPanel3.add(jLabel13, new org.netbeans.lib.awtextra.AbsoluteConstraints(20,
40, -1, -1));
jLabel11.setText("Kategori");
jPanel3.add(jLabel11, new org.netbeans.lib.awtextra.AbsoluteConstraints(20,
70, 101, -1));
jLabel5.setText("Jumlah ");
jPanel3.add(jLabel5, new org.netbeans.lib.awtextra.AbsoluteConstraints(20,
100, 59, 22));
txtJumlah.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
txtJumlahActionPerformed(evt); }
});
jPanel3.add(txtJumlah, new org.netbeans.lib.awtextra.AbsoluteConstraints(130,
100, 110, -1));
btKodeLay.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/img/hhh.png"))); // NOI18N
btKodeLay.setBorder(new
javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED));
btKodeLay.addActionListener(new java.awt.event.ActionListener() {
88
public void actionPerformed(java.awt.event.ActionEvent evt) {
btKodeLayActionPerformed(evt); }
});
jPanel3.add(btKodeLay, new
org.netbeans.lib.awtextra.AbsoluteConstraints(250, 30, -1, -1));
jPanel3.add(txtKodeL, new org.netbeans.lib.awtextra.AbsoluteConstraints(130,
40, 111, -1));
txtKategori.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
txtKategoriActionPerformed(evt); }
});
jPanel3.add(txtKategori, new
org.netbeans.lib.awtextra.AbsoluteConstraints(130, 70, 110, -1));
getContentPane().add(jPanel3, new
org.netbeans.lib.awtextra.AbsoluteConstraints(610, 140, 300, 160));
btnSimpan.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/img/simpan2.png"))); // NOI18N
btnSimpan.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.bor
der.BevelBorder.RAISED));
btnSimpan.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnSimpanActionPerformed(evt); }
});
getContentPane().add(btnSimpan, new
org.netbeans.lib.awtextra.AbsoluteConstraints(950, 520, -1, -1));
jLabel12.setFont(new java.awt.Font("Calisto MT", 3, 36)); // NOI18N
jLabel12.setText(" PKB");
getContentPane().add(jLabel12, new
org.netbeans.lib.awtextra.AbsoluteConstraints(430, 30, 130, 30));
89
jPanel5.setBackground(new java.awt.Color(0, 153, 102));
getContentPane().add(jPanel5, new
org.netbeans.lib.awtextra.AbsoluteConstraints(0, 80, 1010, 500));
jLabel6.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/img/Capture1.PNG"))); // NOI18N
getContentPane().add(jLabel6, new
org.netbeans.lib.awtextra.AbsoluteConstraints(20, 0, -1, 70));
jPanel6.setBackground(new java.awt.Color(255, 255, 255));
getContentPane().add(jPanel6, new
org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, 1010, 80));
pack();
}// </editor-fold>
private void btntambahActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
aktif();
regrid();
txtKode.requestFocus();
txtKode.setText(nomor());
txtKode.setEditable(false);
txtTgl.setText(s.format(dd));
btnsimpan.setEnabled(true);
btnhapus.setEnabled(false);
btnbatal.setEnabled(true);
btnubah.setEnabled(false);
btnbatal.setEnabled(true);
btnkeluar.setEnabled(false);
btncari.setEnabled(false);
}
90
private void btnbatalActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
nonaktif();
txtTgl.setText(s.format(dd));
btntambah.setEnabled(true);
btnhapus.setEnabled(false);
btnubah.setEnabled(false);
btnsimpan.setEnabled(false);
btnbatal.setEnabled(false);
btnkeluar.setEnabled(true);
btncari.setEnabled(true);
bersih();
}
private void btnubahActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
aktif();
txtKode.setEditable(false);
txtTgl.setEditable(false);
btntambah.setEnabled(false);
btnhapus.setEnabled(false);
btnubah.setEnabled(false);
btnsimpan.setEnabled(true);
btnbatal.setEnabled(true);
btnkeluar.setEnabled(false);
btncari.setEnabled(false);
}
private void btnkeluarActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
this.dispose();
}
91
private void btnhapusActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
try {
int tanya = JOptionPane.showConfirmDialog(this, "yakin akan dihapus ?",
"konfirmasi", JOptionPane.OK_CANCEL_OPTION);
if (tanya == JOptionPane.OK_OPTION) {
kon.st.execute("delete from pkb where kode_pkb='" + txtKode.getText() +
"'");
bersih();
btntambah.setEnabled(true);
btnhapus.setEnabled(false);
btnubah.setEnabled(false);
btnsimpan.setEnabled(false);
btnbatal.setEnabled(false);
btnkeluar.setEnabled(true);
btncari.setEnabled(true); }
} catch (Exception v) {
JOptionPane.showMessageDialog(this, v); }
regrid();
}
private void btncariActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
nonaktif();
try {
String s = JOptionPane.showInputDialog(this, "Input ", "Pencarian",
JOptionPane.QUESTION_MESSAGE);
//JOptionPane.showMessageDialog(this, s);
kon.rs = kon.st.executeQuery("select * from pkb where kode_pkb='" + s +
"'");
if (kon.rs.next()) { //jikaditemukan
txtKode.setText(kon.rs.getString(1));
txtTgl.setText(kon.rs.getString(2));
txtKet.setText(kon.rs.getString(3));
92
} else {
JOptionPane.showMessageDialog(this, "Tidak Ditemukan"); }
} catch (Exception c) {
}
btntambah.setEnabled(false);
btnhapus.setEnabled(true);
btnubah.setEnabled(true);
btnsimpan.setEnabled(false);
btnbatal.setEnabled(true);
btnkeluar.setEnabled(false);
btncari.setEnabled(false);
}
private void btnsimpanActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
txtTgl.setText(s.format(dd));
if (txtKode.getText().equals("") || txtKet.getText().equals("") ) {
JOptionPane.showMessageDialog(this, "Data belum lengkap");
} else {
try {
String s = "insert into pkb values('" + txtKode.getText() + "','"
+ txtTgl.getText() + "','"
+ txtKet.getText() + "') ";
kon.st.execute(s);
JOptionPane.showMessageDialog(this, "Data Disimpan");
txtKode.setEnabled(true);
btntambah.setEnabled(true);
btnhapus.setEnabled(false);
btnubah.setEnabled(false);
btnsimpan.setEnabled(false);
btnbatal.setEnabled(false);
93
btnkeluar.setEnabled(true);
btncari.setEnabled(true);
} catch (Exception b) {
JOptionPane.showMessageDialog(this, "Data Tersimpan" + b);
try {
kon.st.execute("update pkb_detail set kode_customer='" +
txtKodeCustomer.getText() + "',"
+ "kode_layanan='" + txtKodeL.getText() + "',"
+ "jumlah='" + txtJumlah.getText() + "' "
+ "where kode_pkb='" + txtKode.getText() + "' ");
//bersih();
btnbatalActionPerformed(evt);
} catch (Exception d) {
JOptionPane.showMessageDialog(this, d); } }
bersih();
regrid();
nonaktif(); }
}
public String KodeLayanan;
public String Kategori;
private void btKodeLayActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
boolean tutup = true;
dataLayanan lc = new dataLayanan(null, tutup);
lc.ly = this;
lc.setVisible(true);
txtKodeL.setText(KodeLayanan);
txtKategori.setText(Kategori);
}
private void jTable1MouseClicked(java.awt.event.MouseEvent evt) {
// TODO add your handling code here:
int baris = jTable1.getSelectedRow();
94
txtKode.setText((String) jTable1.getValueAt(baris, 0));
try {
int tanya = JOptionPane.showConfirmDialog(this, "Yakin mau dihapus ?",
"konfirmasi", JOptionPane.OK_CANCEL_OPTION);
if (tanya ==JOptionPane.OK_OPTION) {
kon.st.execute("delete from pkb_detail where kode_pkb='" +
txtKode.getText()+ "'");
regrid(); }
} catch (Exception e) { }
}
private void btKodeActionPerformed(java.awt.event.ActionEvent evt) {
boolean tutup = true;
dataCustomer dc = new dataCustomer(null, tutup);
dc.fab = this;
dc.setVisible(true);
txtKodeCustomer.setText(KodeCus);
txtNamaCus.setText(namaCus);
txtAlamat.setText(alamatCus);
}
public String KodeCus;
public String namaCus;
public String alamatCus;
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code
(optional) ">
/* If Nimbus (introduced in Java SE 6) is not available, stay with the default
look and feel.
* For details see
http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
95
*/
try {
for (javax.swing.UIManager.LookAndFeelInfo info :
javax.swing.UIManager.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break; }
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(pkb.class
.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(pkb.class
.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(pkb.class
.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(pkb.class
.getName()).log(java.util.logging.Level.SEVERE, null, ex);
}
//</editor-fold>
/* Create and display the form */
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new pkb().setVisible(true);
}
});
}
96
// Variables declaration - do not modify
private javax.swing.JButton btKode;
private javax.swing.JButton btKodeLay;
private javax.swing.JButton btnSimpan;
private javax.swing.JButton btnbatal;
private javax.swing.JButton btncari;
private javax.swing.JButton btnhapus;
private javax.swing.JButton btnkeluar;
private javax.swing.JButton btnsimpan;
private javax.swing.JButton btntambah;
private javax.swing.JButton btnubah;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel11;
private javax.swing.JLabel jLabel12;
private javax.swing.JLabel jLabel13;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JLabel jLabel5;
private javax.swing.JLabel jLabel6;
private javax.swing.JLabel jLabel7;
private javax.swing.JLabel jLabel8;
private javax.swing.JLabel jLabel9;
private javax.swing.JPanel jPanel1;
private javax.swing.JPanel jPanel3;
private javax.swing.JPanel jPanel5;
private javax.swing.JPanel jPanel6;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JTable jTable1;
// End of variables declaration
}
97
3.5.2. Blacbox Testing
Tabel III.30
Hasil Pengujian Black Box Testing Form Login
No. Skenario
pengujian
Test case Hasil yang
diharapkan
Hasil
Pengujian
Kesimpulan
1. Salah satu data dari
kode user dan
password tidak diisi
kemudian klik
tombol login
Nama user:
(kosong)
Password :
(kosong)
Sistem akan
menolak akses
dan
menampilkan
pesan “Gagal,
Tidak
Ditemukan”
Sesuai
harapan
Valid
2. Salah satu data dari
kode user diisi dan
password tidak diisi
(kosong) kemudian
klik tombol login
Nama user:
Nurmala
Password :
(kosong)
Sistem akan
menolak akses
dan
menampilkan
pesan “Gagal,
Tidak
Ditemukan”
Sesuai
harapan
Valid
3. Salah satu data dari
kode user tidak diisi
(kosong) dan
password diisi
kemudian klik
tombol login
Nama user:
(kosong)
Password :
1116082
Sistem akan
menolak akses
dan
menampilkan
pesan “Gagal,
Tidak
Ditemukan”
Sesuai
harapan
Valid
4. Mengisi semua
data seperti nama
user, password dan
hak akses
kemudian klik
tombol simpan
Nama user:
(Nurmala)
Password :
(1116082)
Hak akses :
(Accounting)
Sistem akan
menampilkan
pesan “Data
Berhasil
Disimpan”.
Sesuai
harapan
Valid
98
3.5.3. Spesifikasi Hardware dan Software
Tabel III.31
Spesifikasi Hardware dan Software
Kebutuhan Keterangan
Sistem Windows 10 Enterprise 64-bit
Processor Intel (R) Celeron (R) CPU N3060 @1.60GHz 1.60Hz
RAM 2,00 GB
Harddisk 500 GB
Monitor 11” LED
Keyboard 108 key
Printer Microsft XPS Document Writer
Mouse Standard
Software
Kebutuhan menjalankan aplikasi secara local :
Bahasa Script Programming : Java 8.1
Web Server : Apache
DBMS : MySql