BAB III PEMBAHASAN...keluarga, pemuda, olah raga dan karang taruna. 9. Kepala Dusun (KADUS) Tugas a....
Transcript of BAB III PEMBAHASAN...keluarga, pemuda, olah raga dan karang taruna. 9. Kepala Dusun (KADUS) Tugas a....
37
BAB III
PEMBAHASAN
3.1. Tinjauan Perusahaan
Balai Desa Cikopo, Kecamatan Bungursari, Kabupaten Purwakarta.
Pengelolaan Alokasi Dana Desa (ADD) pada Desa Cikopo sebagian besar masih
menggunakan media kertas sebagai alat pembukuan, terutama dalam pembuatan
laporan Alokasi Dana Desa (ADD) pada Desa Cikopo. jika diperhatikan kembali
dalam pengolahan data gaji karyawan di bagian bendahara masih banyak masalah
yang harus dibenarkan salah satu nya yaitu jika dilihat dari segi kecepatan dan
ketepatan waktu itu bisa dikatakan kurang efisien karena akan membutuhkan waktu
yang lama, dan juga bagian bendahara harus lebih teliti dalam pengolahanya agar
data gaji karyawan tidak tertukar dengan karyawan lainnya.
Alokasi Dana Desa (ADD), Terkait mengenai dana tersebut tepatnya di Desa
Cikopo Kecamatan Bungursari Kabupaten Purwakarta, jumlah yang dikeluarkan
sebesar Rp.51.050.000 perbulan yang bersumber dari pemerintah daerah Purwakarta
yang digunakan untuk kesejahteraan perangkat desa atau biasa disebut penghasilan
tetap perbulan untuk kepala desa beserta jajaran nya meliputi perangkat desa yang
berjumlah 11 orang dan lembaga desa lainnya yang meliputi RT/RW, Linmas,
Lembaga desa, dan Babinsa Kamtibmas dll. yang total nya diangka Rp. 617.100.000
pertahun. Permasalahan lain yang akan muncul jika data Alokasi Dana Desa tersebut
hilang atau rusak terkena air maka akan mengakibatkan permasalahan yang timbul
menjadi semakin kompleks Yang akan menghambat peroses pengelolaan Alokasi
Dana Desa.
38
3.1.1. Sejarah Perusahaan
Desa Cikopo, Kecamatan Bungursari, Kabupaten Purwakarta merupakan salah
satu desa dengan cakupan luas wilayah yang cukup luas dibandingkan dengan desa
desa lain di kabupaten Purwakarta. Dilihat dari sisi letak nya yang cukup unik karena
desa ini terletak diujung dari kabupaten purwakarta atau bisa dikatakan perbatasan
antara Kabupaten Purwakarta dan Kabupaten karawang, sehingga memiliki cakupan
wilayah nya yang sangat luas.
Balai Desa Cikopo di resmikan pada tahun 1970, pada saat itu yang
menduduki jabatan pertama sebagai kepala desa cikopo yaitu Bapak E.Kosasih,
beliau menjadi kepala desa selama hamper 4 periode yang tiap periode nya memiliki
rentan waktu 5 tahun, sehingga beliau memiliki masa jabatan dari tahun 1970-1989
Masehi. Masa jabatan beliau dilanjutkan oleh Endang Dahlan S selama masa periode
1990-2006 atau selama 3 periode, kemudian tahun 2007-2013 Kosim Zaenal terpilih
sebagai kepala Desa, kemudian 2013 diadakan pemilihan kepala Desa, antara Kosim
Zaenal dan Dasewan Husein, akhirnya yang terpilih menjadi kepala Desa masa
jabatan 2013-2019 atau hingga sekarang adalah Dasewan Husein. Luas wilayah Desa
Cikopo 704.297 m2 dengan Jumlah Rukun Warga (RW) 8 dan jumlah Rukun
tetangga (RT) 23, Cakupan wilayah nya sangat luas dengan jumlah penduduk jiwa
yang lumayan banyak.
3.1.2. Struktur Organisasi dan Fungsi
Struktur Organisasi adalah suatu susunan dan hubungan antara tiap bagian
serta posisi yang ada pada suatu organisasi atau perusahaan dalam menjalankan
kegiatan operasional untuk mencapai tujuan. Struktur Organisasi menggambarkan
39
dengan jelas pemisahan kegiatan pekerjaan antara yang satu dengan yang lain.
Bentuk Struktur Organisasi yang terdapat dalam Desa Cikopo sebagai berikut:
Sumber: Arsip Desa Cikopo
Gambar III.1
Struktur Organisasi Desa Cikopo
ANWAR SAEPUDIN
BAMUSDES
DASEWAN HUSIEN
KEPALA DESA
CIKOPO
H.U.DATA
SAERPUDIN
DUSUN I
HENDRIK.F
DUSUN II
AGUS SOFIAN
DUSUN III
EUIS KUSTINI
UMUM
CECE HALIMI
KASI PEMERINTAHAN
ENDANG CASMITA
KASI PELAYANAN
ELIA NINGSIH
PERENCANAA
N
NUNUNG SUPRIATNA
KASI KESEJAHTERAAN
NURHADI
SEKRETARIS DESA
NURLINA
KEUANGAN
40
Berikut adalah tugas dan fungsi dari perangkat desa Cikopo sebagai berikut:
1. Kepala Desa
a. Menyelenggarakan pemerintahan desa berdasarkan kebijakan yang ditetapkan
bersama BPD
b. Mengajukan rancangan peraturan Desa
c. Menetapkan peraturan-peraturan yang telah mendapatkan persetujuan bersama
BPD
d. Menyusun dan mengajukan rancangan peraturan desa mengnenai APB Desa
untuk dibahas dan ditetapkan bersama BPD
e. Membina kehidupan masyarakat Desa
f. Membina ekonomi desa
g. Mengordinasikan pembangunan desa secara partisipatif
h. Mewakili desanya di dalam dan luar pengadilan dan dapat menunjuk kuasa
hukum untuk mewakilinya sesuai dengan paeraturan perundang-undangan; dan
i. Melaksanakan wewenang lain sesuai dengan peraturan perundang-undangan.
2. Sekretaris Desa
Tugas Pokok yaitu Membantu Kepala Desa dalam mempersiapkan dan
melaksanakan pengelolaan administrasi Desa, mempersiapkan bahan penyusunan
laporan penyelenggaraan Pemerintah Desa.
Fungsi
a. Penyelenggara kegiatan administrasi dan mempersiapkan bahan untuk
kelancaran tugas Kepala Desa
b. Melaksanakan tugas kepala desa dalam hal kepala desa berhalangan
c. Melaksanakan tugas kepala desa apabila kepala desa diberhentikan sementara
d. Penyiapan bantuan penyusunan Peraturan Desa
41
e. Penyiapan bahan Laporan Penyelenggaraan Pemerintahan Desa
f. Pengkoordinasian Penyelenggaraan tugas-tugas urusan; dan
g. Pelaksanaan tugas lain yang diberikan oleh Kepala Desa.
h. melaksanakan urusan keuangan, seperti pengurusan administrasi keuangan,
administrasi sumber-sumber pendapatan dan pengeluaran, verifikasi
administrasi keuangan, dan administrasi penghasilan Kepala Desa, Perangkat
Desa, BPD dan lembaga pemerintahan desa lainnya;
i. melaksanakan urusan perencanaan, seperti menyusun rencana anggaran
pendapatan dan belanja desa, menginventarisir data-data dalam rangka
pembangunan, melakukan monitoring dan evaluasi program, serta penyusunan
laporan.
3. Kepala Urusan (KAUR) Umum
Tugas Pokok yaitu Membantu Sekretaris Desa dalam melaksanakan administrasi
umum, tata usaha dan kearsipan, pengelolaan inventaris kekayaan desa, serta
mempersiapkan bahan rapat dan laporan.
Fungsi
a. Pelaksanaan, pengendalian dan pengelolaan surat masuk dan surat keluar serta
pengendalian tata kearsipan
b. Pelaksanaan pencatatan inventarisasi kekayaan Desa
c. Pelaksanaan pengelolaan administrasi umum
d. Pelaksanaan penyediaan, penyimpanan dan pendistribusian alat tulis kantor
serta pemeliharaan dan perbaikan peralatan kantor
e. Pengelolaan administrasi perangkat Desa
f. Persiapan bahan-bahan laporan dan
g. Pelaksanaan tugas lain yang diberikan oleh Sekretaris Desa.
42
4. Kepala Urusan (KAUR) Keuangan
Tugas Pokok yaitu Membantu Sekretaris Desa dalam melaksanakan pengelolaan
sumber pendapatan Desa, pengelolaan administrasi keuangan Desa dan
mempersiapkan bahan penyusunan APB Desa.
Fungsi
a. Pelaksanaan pengelolaan administrasi keuangan Desa
b. Persiapan bahan penyusunan APB Desa; dan
c. Pelaksanaan tugas lain yang diberikan oleh Sekretaris Desa.
5. Kepala Urusan (KAUR) Perencanaan
Tugas Pokok yaitu membantu Sekretaris Desa dalam urusan perencanaan program
kegiatan desa dan tugas lainnya sesuai dengan peraturan perundang-undangan.
Fungsi nya yaitu menyusun rencana anggaran pendapatan dan belanja desa,
menginventarisir data-data dalam rangka pembangunan, melakukan monitoring
dan evaluasi program, serta penyusunan laporan.
6. Kepala Seksi (KASI) Pemerintahan
Tugas Pokok yaitu Membantu Kepala Desa dalam melaksanakan pengelolaan
administrasi kependudukan, administrasi pertanahan, pembinaan, ketentraman dan
ketertiban masyarakat Desa, mempersiapkan bahan perumusan kebijakan
penataan, Kebijakan dalam Penyusunan produk hukum Desa.
Fungsi
a. Pelaksanaan kegiatan administrasi kependudukan
b. Persiapan bahan-bahan penyusunan rancangan peraturan Desa dan keputusan
Kepala Desa
c. Pelaksanaan kegiatan administrasi pertanahan
d. Pelaksanaan Kegiatan pencatatan monografi Desa
43
e. Persiapan bantuan dan melaksanakan kegiatan penataan kelembagaan
masyarakat untuk kelancaran penyelenggaraan pemerintahan Desa
f. Persiapan bantuan dan melaksanakan kegiatan kemasyarakatan yang
berhubungan dengan upaya menciptakan ketentraman dan ketertiban
masyarakat dan pertahanan sipil.
g. Melakukan fungsi-fungsi lain yang dilimpahkan oleh kepala desa.
7. Kepala Seksi (KASI) Pelayanan
Tugas Pokok yaitu membantu Kepala Desa sebagai pelaksana teknis, pelaksana
tugas operasional dan tugas lainnya sesuai dengan peraturan perundang-undangan,
mengkoordinasikan kegiatan pemberdayaan masayarakat sesuai dengan bidang.
Fungsinya yaitu melaksanakan penyuluhan dan motivasi terhadap pelaksanaan
hak dan kewajiban masyarakat, meningkatkan upaya partisipasi masyarakat,
pelestarian nilai sosial budaya masyarakat, keagamaan, dan ketenagakerjaan.
8. Kepala Seksi (KASI) Perencanaan
Tugas Pokok yaitu membantu Kepala Desa sebagai pelaksana teknis, pelaksana
tugas operasional dan tugas lainnya sesuai dengan peraturan perundang-undangan.
Fungsi nya yaitu melaksanakan pembangunan sarana prasarana perdesaan,
pembangunan bidang pendidikan, kesehatan, dan tugas sosialisasi serta motivasi
masyarakat di bidang budaya, ekonomi, politik, lingkungan hidup, pemberdayaan
keluarga, pemuda, olah raga dan karang taruna.
9. Kepala Dusun (KADUS)
Tugas
a. Membantu pelaksanaan tugas kepala desa dalam wilayah kerjanya.
b. Melakukan pembinaan dalam rangka meningkatkan swadaya dan gotong
royong masyarakat.
44
c. Melakukan kegiatan penerangan tentang program pemerintah kepada
masyarakat.
d. Membantu kepala desa dalam pembinaan dan mengkoordinasikan kegiatan RW
(Rukun Wilayah) dan RT (Rukun Tetangga) diwilayah kerjanya.
e. Melaksanakan tugas lain yang diberikan oleh kepala desa
Fungsi
a. Melakukan koordinasi terhadap jalannya pemerintah desa, pelaksanaan
pembangunan dan pembinaan masyarakat diwilayah dusun
b. Melakukan tugas dibidang pembangunan dan pembinaan kemasyarakatan yang
menjadi tanggung jawabnya
c. Melakukan usaha dalam rangka meningkatkan partisipasi dan swadaya gotong
royong masyarakat dan melakukan pembinaan perekonomian
d. Melakukan kegiatan dalam rangka pembinaan dan pemeliharaan ketrentaman
dan ketertiban masyarakat
e. Melakukan fungsi-fungsi lain yang dilimpahkan oleh kepala desa.
f. Mengawasi pelaksanaan pembangunan di wilayahnya
3.1. Tinjauan Kasus
Tinjauan kasus menguraikan tentang gambaran proses sistem pengelolaan
Alokasi Dana Desa (ADD) yang dimulai dari proses pencairan dana, pengambilan
dana, kemudian dilanjutkan proses perekapan dan pengelolaan data gaji karyawan
berdasarkan kriteria tertentu, penerimaan gaji oleh perangkat Desa, dan tahap
terakhir yaitu tahap proses pembutan laporan Alokasi Dana Desa (ADD) pada Desa
Cikopo.
45
3.2.1. Analisa Sistem Berjalan
Berikut merupakan Analisa sistem berjalan mengenai Alokasi Dana Desa
(ADD) pada Desa Cikopo, Kecamatan Bungursari, Kabupaten Purwakarta
1. Proses Pencairan Dana
Pemerintah daerah Purwakarta akan mengeluarkan SP2D (Surat Perintah
Pencairan Dana) yang ditujukan kepada bank BJB untuk melakukan pencairan
sejumlah dana yang telah ditetapkan sebelumnnya oleh pemerintah Purwakarta
sebagai program Desa yang biasa disebut Alokasi Dana Desa (ADD) yang akan
ditransfer ke rekening Desa Cikopo. Bendahara dan Kepala Desa kemudian
menyerahkan cek giro atas nama Desa Cikopo ke Bank BJB untuk melakukan
pengambilan sejumlah dana untuk program Alokasi Dana Desa (ADD) dengan
memberikan cek giro kepada petugas bank untuk diproses dan dicairkan nya dana
yang ditetapkan kemudian data transaksi di tanda tangan oleh petugas bank
sebagai bukti telah melakukan transaksi pengambilan dana untuk program Alokasi
Dana Desa (ADD) dan diarsipkan oleh bendahara desa.
2. Proses Pengolahan Data Gaji Perangkat Desa
Setelah dana dicairkan, bendahara akan mengelola data gaji perangkat desa
berdasarkan jabatan dan kriteria tertentu dengan jumlah nominal yang telah
ditetapkan oleh pemerintah daerah purwakarta. Setelah pengolahan selesai maka
bendahara akan memberikan form gaji kepada sekretaris desa untuk mengecek
kembali data tersebut, jika sesuai maka akan dilanjutkan untuk pembagian gaji
kepada perangkat desa, namun jika data tidak sesuai maka akan dikembalikan ke
bendahara untuk dikoreksi kembali, setelah dikoreksi maka bendahara akan
46
memberikan kembali kepada sekretaris desa, jika telah mendapat persetujuan,
maka akan dilanjutkan ke proses pembagian gaji.
3. Proses Pembagian Gaji
Setelah data diolah dan mendapat persetujuan oleh sekretaris desa, bendahara
akan mempersiapkan form gaji dan slip gaji yang ditujukan kepada perangkat
desa, sebelum itu perangkat desa dipersilahkan untuk mengecek kembali, jika
perangkat desa keberatan atau ada data yang salah maka akan dikembalikan
kebendahara agar di cek ulang, jika telah sesuai maka akan dilakukan tanda
tangan pada form gaji dan slip gaji sebagai bukti penerimaan gaji. Kemudian form
gaji akan di arsipkan oleh bendahara desa dan slip gaji akan diarsipkan oleh
masing masing perangkat desa.
4. Proses Pembuatan Laporan
setelah semua perangkat desa menerima gaji nya, maka bendahara akan
memberikan form gaji yang telah ditanda tangani sebelumnya oleh perangkat desa
kepada kepala desa untuk menandatangani bahwa semua gaji telah diterima oleh
perangkat desa masing-masing, kemudian pada tahap akhir bendahara akan
membuat laporan keuangan Desa Cikopo yang disebut surat pertanggung jawaban
yang akan diarsipkan oleh bendahara desa.
3.2.2. Activity Diagram
Activity diagram menggambarkan workflow (aliran kerja) atau aktivitas dari
sebuah sistem atau proses bisnis atau menu yang ada pada perangkat lunak (aktivitas
yang dapat dilakukan oleh sistem. Berikut merupakan gambaran sistem berjalan
Alokasi Dana Desa pada Desa Cikopo yang akan dijelaskan dengan gambar activity
diagram dibawah ini:
47
1. Prosedur Pencairan Dana
Gambar dibawah ini akan menjelaskan activity diagram sistem berjalan
prosedur pencairan dana Alokasi Dana Desa (ADD) pada Desa Cikopo,
Kecamatan Bungursari, Kabupaten Purwakarta
Sumber: Desa Cikopo
Gambar III.2.
Activity Diagram Pencairan Dana
48
2. Proses Pengolahan Data Gaji Perangkat Desa
Gambar dibawah ini akan menjelaskan activity diagram sistem berjalan
prosedur pengolahan data gaji perangkat Desa pada Desa Cikopo, Kecamatan
Bungursari, Kabupaten Purwakarta
Sumber: Desa Cikopo
Gambar III.3.
Activity Diagram Pengolahan Data Gaji
49
3. Proses Pembagian Gaji
Gambar dibawah ini akan menjelaskan activity diagram sistem berjalan
prosedur pembagian gaji perangkat desa. pada Desa Cikopo, Kecamatan
Bungursari, Kabupaten Purwakarta
Sumber: Desa Cikopo
Gambar III.4.
Activity Diagram Pembagian Gaji
50
4. Proses Pembuatan Laporan
Gambar dibawah ini akan menjelaskan activity diagram sistem berjalan
prosedur pembuatan laporan keuangan pada Desa Cikopo, Kecamatan
Bungursari, Kabupaten Purwakarta
Sumber: Desa Cikopo
Gambar III.5.
Activity Diagram Pembuatan Laporan
51
3.2.3. Spesifikasi Bentuk Dokumen Masukan
Dokumen masukan adalah sebagai bentuk dokumen masukan yang akan diolah
dalam suatu proses agar dapat menghasilkan keluaran yang diinginkan.
Adapun dokumen masukan tersebut adalah:
1. Kertas Absen
Nama Dokumen : Kertas Absen
Fungsi : Tanda absen masuk
Sumber : Karyawan
Tujuan : Keuangan
Media : Kertas
Jumlah Rangkap : 1 (satu)
Lampiran : A.1
2. Bukti Transaksi
Nama Dokumen : Cek Giro
Fungsi : Bukti Pencairan Dana
Sumber : Bagian keuangan
Tujuan : Kepala desa
Media : Kertas
Jumlah Rangkap : 1 (satu)
Lampiran : A.2
3. Form Gaji Karyawan
Nama Dokumen : Data gaji karyawan
Fungsi : Bukti penerimaan gaji karyawan
Sumber : Bagian keuangan
52
Tujuan : Kepala desa
Media : Kertas
Jumlah Rangkap : 1 (satu)
Lampiran : A.3
3.2.4. Spesifikasi Bentuk Dokumen Keluaran
Dokumen keluaran menjelaskan mengenai semua dokumen output yang
digunkan pada sistem informasi penggajian pada Desa Cikopo.
Berikut uraian bentuk dokumen keluaran:
1. Slip Gaji
Nama Dokumen : Slip Gaji
Fungsi : Bukti Penerimaan Gaji
Sumber : Karyawan
Tujuan : Keuangan
Media : Kertas
Jumlah Rangkap : 1 (satu)
Lampiran : B.1
2. Surat Pertanggungjawaban
Nama Dokumen : Surat Pertanggungjawaban
Fungsi : Laporan ADD
Sumber : Bagian keuangan
Tujuan : kepala desa
Media : Kertas
Jumlah Rangkap : 1 (satu)
Lampiran : B.2
53
3.2.5. Permasalahan Pokok
Berdasarkan pengamatan penulis sistem berjalan yang ada di Balai Desa
Cikopo dalam mengelola proses Alokasi Dana Desa (ADD) masih ada beberapa
kesulitan atau permasalahan yang sering terjadi, antara lain:
1. Sering terjadinya kesalahan dalam pencatatan dan perhitungan data gaji karyawan
karena masih dilakukan secara Sederhana menggunakan aplikasi Microsoft excel
karena permasalahan ini penerimaan gaji karyawan tidak sesuai dengan
perhitungan aktualnya.
2. Penyimpanan arsip kurang tertata dengan baik, besar kemungkinan arsip arsip
tersebut rusak, tercecer, ataupun hilang dan lamanya pencarian data sehingga akan
memeperlambat proses berikutnya.
3. Sistem absen di Desa Cikopo masih dalam bentuk kertas dalam bentuk tanda
tangan perangkat desa pada lembar yang disediakan sehingga memungkin adanya
kecurangan misalnya titip absen dengan memalsukan tanda tangan.
3.2.6. Pemecahan Masalah
Dengan melihat berbagai permasalahan yang ada pada sistem berjalan, maka
untuk mengatasi permasalahan tersebut penulis mangajukan pemecahan masalah
antara lain yaitu:
1. Membuat suatu sistem informasi pada proses pencatatan dan perhitungan gaji
karyawan secara terkomputerisasi dan perhitungan otomatis oleh komputer,
hal ini akan memudahkan dalam pemberian gaji karyawan.
2. Merancang sistem informasi penggajian berbasis desktop client server
diantaranya menginput data penggajian karyawan menggunakan program
database, hal ini akan meningkatkan efisiensi dalam penyimpanan data
penggajian karyawan
54
3. Dengan merancang sistem absen fingerprint dapat meminimalisair adanya
kecurangan data kehadiran perangkat Desa
3.3. Analisa Kebutuhan Software
Merupakan langkah awal untuk menentukan gambaran perangkat yang akan
dihasilkan ketika pengembang melaksanakan sebuah proyek pengembangan
perangkat lunak, berikut adalah analisa kebutuhan di Desa Cikopo
3.3.1. Analisa Kebutuhan
A. Kepala desa
A.1. login
A.2. mengakses laporan gaji
B. Sekretaris desa
B.1. login
B.2. mengelola data karyawan
B.3. mengelola data absen
C. Bendahara
C.1. login
C.2. mengelola data karyawan
C.3. mengelola data gaji karyawan
C.4. mengelola rekap absen
C.5. mengelola data jurnal
C.6. mengelola laporan jurnal
C.7. mengelola laporan gaji karyawan
C.8. mengelola data akun
55
3.3.2. Usecase Diagram
Use case mendeskripsikan sebuah interaksi antara satu atau lebih aktor dengan
sistem informasi yang akan dibuat. Berikut adalah activity diagram usulan di desa
Cikopo Purwakarta.
a. Bagian Kepala Desa
Gambar III.6.
Usecase Diagram Sistem Penggajian Bagian Kepala Desa
Tabel III.1.
Deskripsi Usecase Diagram Kepala Desa Melakukan Login
Usecase Narative Form Login
Tujuan Kepala desa dapat Login
Deskripsi Sistem ini memungkinkan aktor untuk
melakukan login dan masuk ke menu utama
56
Skenario Utama
Aktor Kepala Desa
Kondisi awal Aktor membuka aplikasi halaman Login
Aksi Aktor Reaksi Sistem
1. Akor melakukan Login
2. Aktor input username dan password
Sistem akan menampilkan Form Login
Sistem akan menampilkan Menu Utama
Kondisi Akhir Jika Perintah sesuai maka sistem akan
menampilkan sesuai keinginan.
Tabel III.2.
Deskripsi Usecase Diagram Kepala Desa Mengakses Laporan Penggajian
Usecase Narative Form Laporan Penggajian
Tujuan Kepala desa dapat mengakses laporan
penggajian
Deskripsi Sistem ini memungkinkan aktor untuk
mengakses laporan penggajian
Skenario Utama
Aktor Kepala Desa
Kondisi awal Aktor membuka aplikasi laporan jurnal
Aksi Aktor Reaksi Sistem
1. Akor memilih form laporan
penggajian
2. Aktor memilih cetak
Sistem akan menampilkan form laporan
penggajian
Sistem akan mencetak data sesuai dengan
periode yang dipilih oleh aktor
Kondisi Akhir Jika Perintah sesuai maka sistem akan
menampilkan sesuai keinginan.
57
B. Bagian Bendahara
Gambar III.7.
Usecase Diagram Sistem Penggajian Bagian Bendahara Login
Tabel III.3.
Deskripsi Usecase Diagram Bendahara Melakukan Login
Usecase Narative Form Login
Tujuan Bendahara dapat Login
Deskripsi Sistem ini memungkinkan aktor untuk
melakukan login dan masuk ke menu utama
Skenario Utama
Aktor Bendahara
Kondisi awal Aktor membuka aplikasi halaman Login
Aksi Aktor Reaksi Sistem
1. Akor melakukan Login
2. Aktor memasukkan username dan
password
Sistem akan menampilkan form Login
Sistem akan menampilkan Menu Utama
Kondisi Akhir Jika Perintah sesuai maka sistem akan
menampilkan sesuai keinginan.
58
Gambar III.8.
Usecase Diagram Sistem Penggajian Bagian Bendahara Mengelola Data Gaji
Tabel III.4.
Deskripsi Usecase Diagram Bendahara Mengelola Data Gaji
Usecase Narative Form Data Gaji
Tujuan Bendahara dapat mengelola data gaji
Deskripsi Sistem ini memungkinkan aktor untuk
mengelola data gaji
Skenario Utama
Aktor Bendahara
Kondisi awal Aktor membuka aplikasi halaman data gaji
Aksi Aktor Reaksi Sistem
1. Akor memilih data gaji
2. Aktor memilih tambah
3. Aktor memilih simpan
4. Aktor memilih batal
5. Aktor memilih cari
6. Aktor memilih cetak
Sistem akan menampilkan data gaji
Sistem akan menginput data gaji baru
Sistem akan menyimpan data kedalam
database
Sistem akan menampilkan form awal
Sistem akan menampilkan data sesuai
dengan kode pencarian
Sistem akan mencetak data gaji yang dipilih
Kondisi Akhir Jika Perintah sesuai maka sistem akan
menampilkan sesuai keinginan.
59
Gambar III.9.
Usecase Diagram Sistem Penggajian Bagian Bendahara Rekap Data Absen
Tabel III.5.
Deskripsi Usecase Diagram Bendahara Mengelola Data Absen
Usecase Narative Form Data Absen
Tujuan Bendahara dapat mengelola data absen
Deskripsi Sistem ini memungkinkan aktor untuk
mengelola data absen
Skenario Utama
Aktor Bendahara
Kondisi awal Aktor membuka aplikasi halaman data absen
Aksi Aktor Reaksi Sistem
1. Akor memilih data absen
2. Aktor memilih tambah
3. Aktor memilih simpan
4. Aktor memilih batal
5. Aktor memilih cari
6. Aktor memilih edit
7. Aktor memilih hapus
Sistem akan menampilkan data absen
Sistem akan menginput data absen baru
Sistem akan menyimpan kedalam database
Sistem akan menampilkan form awal
Sistem akan menampilkan data sesuai
dengan kode pencarian
Sistem akan mengedit data
Sistem akan menghapus data absen
Kondisi Akhir Jika Perintah sesuai maka sistem akan
menampilkan sesuai keinginan.
60
Gambar III.10.
Usecase Diagram Sistem Penggajian Bagian Bendahara Mengelola Data Akun
Tabel III.6.
Deskripsi Usecase Diagram Bendahara Mengelola Data Akun
Usecase Narative Form Data Akun
Tujuan Bendahara dapat mengelola data Akun
Deskripsi Sistem ini memungkinkan aktor untuk
mengelola data akun perkiraan
Skenario Utama
Aktor Bendahara
Kondisi awal Aktor membuka aplikasi halaman data akun
Aksi Aktor Reaksi Sistem
1. Akor memilih data akun
2. Aktor memilih tambah
3. Aktor memilih simpan
4. Aktor memilih batal
5. Aktor memilih edit
6. Aktor memilih hapus
Sistem akan menampilkan data akun
Sistem akan menginput data akun baru
Sistem akan menyimpan data kedalam
database
Sistem akan menampilkan form awal
Sistem akan mengedit data sesuai dengan
keinginan aktor
Sistem akan menghapus data akun yang
dipilih oleh aktor
Kondisi Akhir Jika Perintah sesuai maka sistem akan
menampilkan sesuai keinginan.
61
Gambar III.11.
Usecase Diagram Sistem Penggajian Bagian Bendahara Mengelola Data Jurnal
Tabel III.7.
Deskripsi Usecase Diagram Bendahara Mengelola Data Jurnal
Usecase Narative Form Data Jurnal
Tujuan Bendahara dapat mengakses data jurnal
Deskripsi Sistem ini memungkinkan aktor untuk
mengakses data jurnal
Skenario Utama
Aktor Bendahara
Kondisi awal Aktor membuka aplikasi data jurnal
Aksi Aktor Reaksi Sistem
1. Akor memilih form data jurnal
2. Aktor memilih cari
Sistem akan menampilkan form data jurnal
Sistem akan menampilkan data sesuai
dengan kode pencarian
Kondisi Akhir Jika Perintah sesuai maka sistem akan
menampilkan sesuai keinginan.
62
Gambar III.12.
Usecase Diagram Sistem Penggajian Bendahara Mengeola Laporan Jurnal
Tabel III.8.
Deskripsi Usecase Diagram Bendahara Mengelola Laporan Jurnal
Usecase Narative Form Laporan Jurnal
Tujuan Bendahara dapat mengakses laporan jurnal
Deskripsi Sistem ini memungkinkan aktor untuk
mengakses laporan jurnal
Skenario Utama
Aktor Bendahara
Kondisi awal Aktor membuka aplikasi laporan jurnal
Aksi Aktor Reaksi Sistem
1. Akor memilih form laporan jurnal
2. Aktor memilih cetak
Sistem akan menampilkan form laporan
jurnal
Sistem akan mencetak data sesuai dengan
periode yang dipilih oleh aktor
Kondisi Akhir Jika Perintah sesuai maka sistem akan
menampilkan sesuai keinginan.
63
Gambar III.13.
Usecase Diagram Penggajian Bendahara Mengelola Laporan Penggajian
Tabel III.9.
Deskripsi Usecase Diagram Bendahara Mengelola Laporan Penggajian
Usecase Narative Form Laporan Penggajian
Tujuan Bendahara dapat mengakses laporan
penggajian
Deskripsi Sistem ini memungkinkan aktor untuk
mengakses laporan penggajian
Skenario Utama
Aktor Bendahara
Kondisi awal Aktor membuka aplikasi laporan jurnal
Aksi Aktor Reaksi Sistem
1. Akor memilih form laporan
penggajian
2. Aktor memilih cetak
Sistem akan menampilkan form laporan
penggajian
Sistem akan mencetak data sesuai dengan
periode yang dipilih oleh aktor
Kondisi Akhir Jika Perintah sesuai maka sistem akan
menampilkan sesuai keinginan.
64
B. Bagian Sekretaris Desa
Gambar III.14.
Usecase Diagram Sistem Penggajian Bagian Sekretaris Login
Tabel III.10.
Deskripsi Usecase Diagram Sekretaris Desa Melakukan Login
Usecase Narative Form Login
Tujuan Sekretaris Desa dapat Login
Deskripsi Sistem ini memungkinkan aktor untuk
melakukan login dan masuk ke menu utama
Skenario Utama
Aktor Sekretaris Desa
Kondisi awal Aktor membuka aplikasi halaman Login
Aksi Aktor Reaksi Sistem
1. Akor melakukan Login
2. Aktor memasukkan username dan
password
Sistem akan menampilkan form Login
Sistem akan menampilkan Menu Utama
Kondisi Akhir Jika Perintah sesuai maka sistem akan
menampilkan sesuai keinginan.
65
Gambar III.15.
Usecase Diagram Sistem Penggajian Sekretaris Mengelola Data Karyawan
Tabel III.11.
Deskripsi Usecase Diagram Sekretaris Desa Mengelola Data Karyawan
Usecase Narative Form Data Karyawan
Tujuan Sekretaris Desa dapat mengelola data
karyawan
Deskripsi Sistem ini memungkinkan aktor untuk
mengelola data karyawan
Skenario Utama
Aktor Sekretaris Desa
Kondisi awal Aktor membuka halaman data karyawan
Aksi Aktor Reaksi Sistem
1. Akor memilih data karyawan
2. Aktor memilih tambah
3. Aktor memilih simpan
4. Aktor memilih Update
5. Aktor memilih cari
6. Aktor memilih edit
7. Aktor memilih Hapus
Sistem akan menampilkan data karyawan
Sistem akan menginput data karyawan baru
Sistem akan menyimpan kedalam database
Sistem akan memperbaharui data terbaru
Sistem akan menampilkan data pencarian
Sistem akan mengedit data
Sistem akan menghapus data karyawan
Kondisi Akhir Jika Perintah sesuai maka sistem akan
menampilkan sesuai keinginan.
66
Gambar III.16.
Usecase Diagram Sistem Penggajian Bagian Sekretaris Mengelola Data Absen
Tabel III.12.
Deskripsi Usecase Diagram Sekretaris Desa Mengelola Data Absen
Usecase Narative Form Data Absen
Tujuan Sekretaris Desa dapat mengelola data absen
Deskripsi Sistem ini memungkinkan aktor untuk
mengelola data absen
Skenario Utama
Aktor Sekretaris Desa
Kondisi awal Aktor membuka aplikasi halaman data absen
Aksi Aktor Reaksi Sistem
1. Akor memilih data absen
2. Aktor memilih tambah
3. Aktor memilih simpan
4. Aktor memilih batal
5. Aktor memilih cari
6. Aktor memilih edit
7. Aktor memilih hapus
Sistem akan menampilkan data absen
Sistem akan menginput data absen baru
Sistem akan menyimpan kedalam database
Sistem akan menampilkan form awal
Sistem akan menampilkan data pencarian
Sistem akan mengedit data sesuai
Sistem akan menghapus data absen yang
dipilih oleh aktor
Kondisi Akhir
Jika Perintah sesuai maka sistem akan
menampilkan sesuai keinginan.
67
3.3.3. Activity Diagram
Activity diagram menggambarkan workflow (aliran kerja) atau aktivitas dari
sebuah sistem atau proses bisnis atau menu yang ada pada perangkat lunak. Berikut
adalah activity diagram usulan penggajian pada Desa Cikopo Purwakarta.
1.a. Activity Diagram Bagian Kepala Desa Login
Gambar III.17.
Activity Diagram Bagian Kepala Desa Login
68
1.b. Activity Diagram Bagian Kepala Desa Mengakses Laporan Penggajian
Gambar III.18.
Activity Diagram Bagian Kepala Desa Mengakses Laporan Penggajian
2.a. Activity Diagram Bagian Sekretaris Login
Gambar III.19.
Activity Diagram Bagian Sekretaris Login
69
2.b. Activity Diagram Bagian Sekretaris Mengelola Data Karyawan
Gambar III.20.
Activity Diagram Bagian Sekretaris Mengelola Data Karyawan
70
2.c. Activity Diagram Bagian Sekretaris Mengelola Data Absen
Gambar III.21.
Activity Diagram Bagian Sekretaris Mengelola Data Absen
71
3.a. Activity Diagram Bagian Bendahara Login
Gambar III.22.
Activity Diagram Bagian Bendahara Login
72
3.b. Activity Diagram Bagian Bendahara Mengelola Data Gaji
Gambar III.23.
Activity Diagram Bagian Bendahara Mengelola Data Gaji
73
3.c. Activity Diagram Bagian Bendahara Mengelola Data Absen
Gambar III.24.
Activity Diagram Bagian Bendahara Mengelola Data Absen
74
3.d. Activity Diagram Bagian Bendahara Mengelola Data Jurnal
Gambar III.25.
Activity Diagram Bagian Bendahara Mengelola Data Jurnal
75
3.e. Activity Diagram Bagian Bendahara Mengelola Laporan Jurnal
Gambar III.26.
Activity Diagram Bagian Bendahara Mengelola Laporan Jurnal
76
3.f. Activity Diagram Bagian Bendahara Mengelola Laporan Gaji
Gambar III.27.
Activity Diagram Bagian Bendahara Mengelola Laporan Gaji
77
3.g. Activity Diagram Bagian Bendahara Mengelola Data Akun
Gambar III.28.
Activity Diagram Bagian Bendahara Mengelola Data Akun
78
3.4. Desain
3.4.1. Entity Relationship Diagram (ERD)
Berikut adalah Entity Relationship Diagram Sistem usulan Penggajian
Gambar III.29.
Entity Relationship Diagram Penggajian
79
3.4.2. Logical Record Structure (LRS)
Berikut adalah Logical Record Structure Sistem usulan Penggajian
Gambar III.30.
Logical Record Structure Penggajian
80
3.4.3. Spesifikasi File
Program ini menggunakan database dengan nama add_cikopo dan di
dalamnya terdapat tabel-tabel sebagai entitas. Tabel-tabel sebagai berikut:
1. Spesifikasi File Tabel Data Login:
Nama Database : add_cikopo
Nama File : dt_login
Tipe File : Master Data
Akses File : Random
Record Size : 85 karakter
Filed Key : Id_pengguna
Software : Mysql
Tabel III.13.
Spesifikasi File Data Login
No Elemen Data Akronim Tipe Panjang Keterangan
1 Id pengguna Id_pengguna Integer 10 Primary key
2 Nama Lengkap Nama_lengkap Varchar 25
3 UserName Username Varchar 15
4 Password Password Varchar 35
5 Hak akses Hak_akses Enum -
2. Spesifikasi File tabel Data Absen:
Nama Database : add_cikopo
Nama File : dt_absen
81
Tipe File : Master Data
Akses File : Random
Record Size : 42 byte
Filed Key : Kd_absen
Software : Mysql
Tabel III.14.
Spesifikasi File Data Absen
No Elemen Data Akronim Tipe Panjang Keterangan
1 Kode Absen Kd_absen varchar 10 Primary key
2 Id karyawan Id_karyawan varchar 10
3 Jumlah hadir Jml_hadir integer 11
4 Jumlah tidak
hadir
Jml_tdkhadir integer 11
3. Spesifikasi File Tabel Data Akun:
Nama Database : add_cikopo
Nama File : dt_akun
Tipe File : Master Data
Akses File : Random
Record Size : 23 karakter
Filed Key : kd_akun
Software : Mysql
82
Tabel III.15.
Spesifikasi File Data Akun
No Elemen Data Akronim Tipe Panjang Keterangan
1 Kode Akun Kd_akun varchar 8 Primary key
2 Nama Akun Nm_akun varchar 15
4. Spesifikasi File Tabel Data Gaji:
Nama Database : add_cikopo
Nama File : dt_gaji
Tipe File : Master Data
Akses File : Random
Record Size : 68 karakter
Filed Key : no_slip
Software : mysql
Tabel III.16.
Spesifikasi File Data Gaji
No Elemen Data Akronim Tipe Panjang Keterangan
1 No slip No_slip Varchar 10 Primary key
2 Id karyawan Id_karyawan Varchar 10
3 Tidak hadir Tidak_hadir Integer 15
4 Potongan Potongan Integer 11
5 Gaji Gaji Integer 11
6 Total Gaji Total_gaji Integer 11
83
5. Spesifikasi File Tabel Data Jurnal:
Nama Database : add_cikopo
Nama File : dt_jurnal
Tipe File : Transaksi
Akses File : Random
Record Size : 80 karakter
Filed Key : no_jurnal
Software : mysql
Tabel III.17.
Spesifikasi File Data Jurnal
No Elemen Data Akronim Tipe Panjang Keterangan
1 No jurnal No_jurnal varchar 10 Primary key
2 Nama akun Nm_akun varchar 15
3 Kode akun Kd_akun varchar 8
4 Debit Debit Integer 11
5 Kredit Kredit Integer 11
6 Keterangan Keterangan varchar 25
7 Tanggal Jurnal Tgl_jurnal Date -
6. Spesifikasi File Tabel Data karyawan:
Nama Database : add_cikopo
Nama File : dt_karyawan
Tipe File : Master Data
84
Akses File : Random
Record Size : 84 karakter
Filed Key : Id_karyawan
Software : mysql
Tabel III.18.
Spesifikasi File Data Karyawan
No Elemen Data Akronim Tipe Panjang Keterangan
1 Id karyawan Id_karyawan varchar 10 Primary key
2 Nama Karyawan Nm_karyawan varchar 25
3 Jabatan Jabatan varchar 15
4 Jenis kelamin Jns_kelamin varchar 10
5 No. Hp No_hp varchar 13
6. Gaji Gaji integer 11
1.4.4. Sequence Diagram
Diagram sequence menggambarkan kelakuan objek pada usecase dengan
mendeskripsikan waktu hidup objek dan massage yang dikirmkan dan diterima antar
objek. berikut merupakan diagram sequence pengelolaan data karyawan dan login
pada Desa Cikopo Purwakarta.
85
1. Sequence Diagram Data Gaji Karyawan
Gambar III.31.
Sequence Diagram Data Transaksi Gaji
86
1.4.5. Deployment Diagram
Gambar III.32.
Deployment Diagram
1.4.6. User Interface
Gambar III.33.
User Interface Tampilan Login
87
Gambar III.34.
User Interface Tampilan Menu Utama
Gambar III.35.
User Interface Tampilan Data Absen
88
Gambar III.36.
User Interface Tampilan Data Akun
Gambar III.37.
User Interface Tampilan Data Karyawan
89
Gambar III.38.
User Interface Tampilan Data Jurnal
Gambar III.39.
User Interface Tampilan Data Gaji
90
Gambar III.40.
User Interface Tampilan Laporan Gaji Karyawan
Gambar III.41.
User Interface Tampilan Laporan Jurnal
91
5.1. Implementation
1.5.1. Code Generation
Sebuah program yang dibuat agar dapat menghasilkan instruksi atau kode
program sesuai dengan kebutuhan pengguna dalam ruang lingkup tertentu
1. Form Transaksi
package Form_ADD;
import com.mysql.jdbc.Statement;
import java.awt.HeadlessException;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperCompileManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;
import net.sf.jasperreports.engine.design.JasperDesign;
import net.sf.jasperreports.engine.xml.JRXmlLoader;
import net.sf.jasperreports.view.JasperViewer;
import java.io.File;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.PreparedStatement;
import javax.swing.JOptionPane;
import java.text.DateFormat;
import java.text.DecimalFormat;
import java.text.SimpleDateFormat;
92
import java.util.Calendar;
import java.util.HashMap;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;
public class gaji_karyawan extends javax.swing.JDialog {
koneksi conn= new koneksi();
String kode,tanggal, penerima,keterangan, ubah;
int jml;
Date txttgl;
ResultSet resultSet;
java.sql.Statement statement;
DefaultTableModel tb;
Form_ADD.koneksi1 konek = new Form_ADD.koneksi1();
public gaji_karyawan(java.awt.Frame parent, boolean modal) {
super(parent, modal);
initComponents();
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
93
Calendar cal = Calendar.getInstance();
ttanggal.setText(dateFormat.format(cal.getTime()));
tabelmodel();
akun.hide();
lbladmin.setText(PetugasSession.getU_id());
lbladmin.hide();
potongan.hide();
debet.hide();
no_jurnal.hide();
}
public void tabelmodel(){
tb =new DefaultTableModel();
tb.addColumn("No Slip Gaji");
tb.addColumn("ID Karyawan");
tb.addColumn("Tanggal");
tb.addColumn("Gaji");
tb.addColumn("Tidak Hadir");
tb.addColumn("Potongan");
tb.addColumn("Tunjangan");
tb.addColumn("Total Gaji");
tb.addColumn("ID Admin");
jTable1.setModel(tb);
try {
ResultSet res = conn.ambilData("select *from dt_gaji ");
while (res.next()){
94
tb.addRow(new
Object[]{res.getString(1),res.getString(2),res.getString(3),res.getString(4),res.getS
tring(5),res.getString(6),res.getString(7),res.getString(8),res.getString(9)});
}
jTable1.setModel(tb);
} catch (SQLException ex) {
JOptionPane.showMessageDialog(this, ex);
}
}
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
jButton3.setEnabled(true) ;
setkode();
}
private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {
if (total.getText().equals("")||slip.getText().equals("")) {
JOptionPane.showMessageDialog(this,"Semuah Data Harus Di Isi");
}
else{
simpan();
simpanjurnal();
simpanjurnall();
tabelmodel();
JOptionPane.showMessageDialog(null, "Berhasil menyimpan data transaksi");
}
95
try {
HashMap hash = new HashMap();
hash.put("no_slip", slip.getText());
File file = new File("src/Laporan/slipgaji.jrxml");
JasperDesign jasperDesign = JRXmlLoader.load(file);
JasperReportjasperReport=
JasperCompileManager.compileReport(jasperDesign);
JasperPrintjasperPrint=JasperFillManager.fillReport(jasperReport,hash,
konek.openkoneksi());
JasperViewer.viewReport(jasperPrint, false);
}catch (ClassNotFoundException | JRException e) {
JOptionPane.showMessageDialog(null, "Error " + e);
}
this.hide();
bersih();
}
private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) {
bersih();
}
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
try {
ResultSet res = conn.ambilData("select * FROM dt_absen INNER JOIN
dt_karyawan ON dt_absen.Id_karyawan = dt_karyawan.Id_karyawan where
dt_absen.Id_karyawan='" +idk.getText() +"'" );
if (res.next())
96
{ gp.setText(res.getString("Gaji"));
idk.setText(res.getString("Id_karyawan"));
th.setText(res.getString("jml_tdkhadir"));
}
else{
JOptionPane.showMessageDialog(null,"IDKaryawantidak ditemukan.");
idk.setText("");
}
}
catch (Exception e) {
JOptionPane.showMessageDialog(rootPane, e);
}
potong.setText("0");
}
private void tunjanganFocusLost(java.awt.event.FocusEvent evt) {
int nilai1;
int nilai2;
int nilai3;
int nilai4;
String Hasil;
nilai1=Integer.valueOf(gp.getText());
nilai2=Integer.valueOf(potong.getText());
nilai4=Integer.valueOf(tunjangan.getText());
nilai3=nilai1-nilai2+nilai4;
Hasil=String.valueOf(nilai3);
97
total.setText(Hasil);
}
private void jButton6ActionPerformed(java.awt.event.ActionEvent evt) {
tb =new DefaultTableModel();
tb.addColumn("No Slip Gaji");
tb.addColumn("ID Karyawan");
tb.addColumn("Tanggal");
tb.addColumn("Gaji");
tb.addColumn("Tidak Hadir");
tb.addColumn("Potongan");
tb.addColumn("Tunjangan");
tb.addColumn("Total Gaji");
tb.addColumn("ID Admin");
jTable1.setModel(tb);
try {
ResultSet res = conn.ambilData("select *from dt_gaji where no_slip like '%" +
txtcari.getText() + "%'" + "or Id_karyawan like '%" + txtcari.getText() + "%'");
if (res.next()){
tb.addRow(new
Object[]{res.getString(1),res.getString(2),res.getString(3),res.getString(4),res.getStri
ng(5),res.getString(6),res.getString(7),res.getString(8),res.getString(9)});
}
else{
JOptionPane.showMessageDialog(null, "Data tidak ditemukan.");
tabelmodel();
98
}
jTable1.setModel(tb);
} catch (SQLException ex) {
JOptionPane.showMessageDialog(this, ex);
}
}
public static void main(String args[]) {
try {
for(javax.swing.UIManager.LookAndFeelInfoinfo:
javax.swing.UIManager.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(gaji_karyawan.class.getName()).log(java.util.log
ging.Level.SEVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(gaji_karyawan.class.getName()).log(java.util.log
ging.Level.SEVERE, null, ex);
}catch(IllegalAccessExceptionex){
java.util.logging.Logger.getLogger(gaji_karyawan.class.getName()).log(java.util.log
ging.Level.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
99
java.util.logging.Logger.getLogger(gaji_karyawan.class.getName()).log(java.util.log
ging.Level.SEVERE, null, ex);
}
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
gaji_karyawan dialog = new gaji_karyawan(new javax.swing.JFrame(), true);
dialog.addWindowListener(new java.awt.event.WindowAdapter() {
public void windowClosing(java.awt.event.WindowEvent e) {
System.exit(0);
}
});
dialog.setVisible(true);
}
});
}
private javax.swing.JTextField akun;
private javax.swing.JTextField akunn;
private javax.swing.JTextField debet;
private javax.swing.JTextField gp;
private javax.swing.JTextField idk;
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JButton jButton3;
private javax.swing.JButton jButton5;
private javax.swing.JButton jButton6;
100
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel10;
private javax.swing.JLabel jLabel16;
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 jPanel2;
private javax.swing.JPanel jPanel3;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JTable jTable1;
private javax.swing.JTextField kas;
private javax.swing.JTextField ket;
private javax.swing.JTextField lbladmin;
private javax.swing.JTextField no_jurnal;
private javax.swing.JTextField potong;
private javax.swing.JTextField potongan;
private javax.swing.JTextField slip;
private javax.swing.JTextField th;
private javax.swing.JTextField total;
101
private javax.swing.JTextField ttanggal;
private javax.swing.JTextField tunjangan;
private javax.swing.JTextField txtcari;
public int simpan(){
String sql="insert into dt_gaji "+
"values"+
"('"+slip.getText()+"', " +
"'"+idk.getText()+"', "+
"'"+ttanggal.getText()+"', "+
"'"+gp.getText()+"', "+
"'"+th.getText()+"', "+
"'"+potong.getText()+"', "+
"'"+tunjangan.getText()+"', "+
"'"+total.getText()+"', "+
"'"+lbladmin.getText()+"' "+ ")";
conn.simpanData(sql);
return 0;
}
public int simpanjurnal(){
String sql=("insert into dt_jurnal (no_slip, debit, kredit, keterangan,
kode_akun, tanggal) VALUES ('" + slip.getText() + "', '" + total.getText() + "', '" +
debet.getText() + "', '" + ket.getText() + "', '" + akun.getText() + "', '" +
ttanggal.getText() + "')");
conn.simpanData(sql);
102
return 0;
}
public int simpanjurnall(){
String sql=("insert into dt_jurnal (no_slip, debit, kredit, keterangan,
kode_akun, tanggal) VALUES ('" + slip.getText() + "', '" + debet.getText() + "', '" +
total.getText() + "', '" + kas.getText() + "', '" + akunn.getText() + "', '" +
ttanggal.getText() + "')");
conn.simpanData(sql);
return 0;
}
public int hapus(String kd){
String sql="delete from transaksi where id_transaksi = '"+kd+"'";
conn.simpanData(sql);
return 0;
}
void bersih(){
slip.setText("");
debet.setText("");
total.setText("");
gp.setText("");
th.setText("");
potong.setText("");
tunjangan.setText("");
total.setText("");
}
103
void setkode(){
try {
ResultSet res = conn.ambilData("select * from dt_gaji order by no_slip
desc");
if (res.next()) {
String nofak = res.getString("no_slip").substring(3);
String AN = "" + (Integer.parseInt(nofak) + 1);
String Nol = "";
if(AN.length()==1)
{Nol = "000";}
else if(AN.length()==2)
{Nol = "00";}
else if(AN.length()==3)
{Nol = "0";}
else if(AN.length()==4)
{Nol = "";}
slip.setText("SLP" + Nol + AN);
} else {
slip.setText("SLP0001");
}
}catch(Exception e){
JOptionPane.showMessageDialog(null, e);
}
}
void setkodee(){
104
try {
ResultSet res = conn.ambilData("select * from dt_jurnal order by no_jurnal
desc");
if (res.next()) {
String nofak = res.getString("no_jurnal").substring(3);
String AN = "" + (Integer.parseInt(nofak) + 1);
String Nol = "";
if(AN.length()==1)
{Nol = "000";}
else if(AN.length()==2)
{Nol = "00";}
else if(AN.length()==3)
{Nol = "0";}
else if(AN.length()==4)
{Nol = "";}
no_jurnal.setText("JRN" + Nol + AN);
} else {
no_jurnal.setText("JRN0001");
}
}catch(Exception e){
JOptionPane.showMessageDialog(null, e);
}
105
1.5.2. BlackBox Testing
BlackBox testing adalah untuk menguji perangkat lunak dari segi spesifikasi
fungsional tanpa menguji desain dan kode program.
Tabel III.19.
Hasil Pengujian Blackbox Testing Form Login Bendahara
No Skenario
Pengujian
Test Case Hasil yang
diharapkan
Hasil
pengujian
Kesimpulan
1 Id user dan
password
tidak di isi
kemudian
klik tombol
login
Id user:
(kosong)
Password:
(kososng)
Sistem akan
menolak
akses
dan
menampilkan
pesan
“Username
dan
Password
harus diisi“
Sesuai
harapan
Valid
2 Mengetikkan
id user dan
password
tidak di isi
atau kosong
kemudian
klik tombol
login
Id user:
NLA
Password:
(kosong)
Sistem akan
menolak
akses dan
menampilkan
pesan
“Password
harus diisi“
Sesuai
harapan
Valid
3 Id user tidak
di isi
(kosong)
dan
password di
isi kemudian
klik tombol
login
Nama id
user:
(kosong)
Password:
123
Sistem akan
menolak
akses dan
menampilkan
pesan
“Username
harus diisi“
Sesuai
harapan
Valid
4 Mengetikkan
id user dan
password
dengan data
yang benar
kemudian
klik tombol
login
Nama id
user:
NLA
(benar)
Password:
123
(benar)
Sistem akan
menerima
akses login
Sesuai
harapan
Valid
106
Tabel III.20.
Hasil Pengujian Blackbox Testing Form Transaksi Bendahara
No Skenario
Pengujian
Test Case Hasil yang
diharapkan
Hasil
penguji
an
Kesimpulan
1 Klik Tombol
Tambah kemudian
No.slip, id
karyawan,tidak
hadir, potongan,
gaji pokok, dan
Total tidak di isi
kemudian klik
tombol Simpan
No Slip :
(kosong)
Id
Karyawan:
(kososng)
Tidak hadir:
Potongan:
(kosong)
Gaji pokok:
(kosong)
Total:
(kosong)
Sistem akan
menolak akses
dan
menampilkan
pesan
“lengkapi data
terlebih dahulu
“
Sesuai
harapan
Valid
2 Klik Tombol
Tambah Kemudian
Mengisi No. slip,
id kayawan, tidak
hadir, potongan,
gaji pokok, Total,
tidak diisi
kemudian klik
tombol Simpan
No Slip :
(SLP0001)
Id
Karyawan:
(kosong)
Tidak hadir:
Potongan:
(kosong)
Gaji pokok:
(kosong)
Total:
(kosong)
Sistem akan
menolak akses
dan
menampilkan
pesan
“lengkapi data
terlebih dahulu
“
Sesuai
harapan
Valid
3 Klik Tombol
Tambah Kemudian
Mengisi No. slip,
id kayawan, tidak
hadir, potongan,
gaji pokok, Total,
kemudian klik
tombol Simpan
No Slip :
(SLP0001)
Id
Karyawan:
(ID001)
Tidak hadir:
(2)
Potongan:
(40000)
Gaji pokok:
(2000000)
Total:
(1960000)
Sistem Akan
Menghasilkan
Pesan“Data
berhasil
disimpan”
Sesuai
harapan
Valid
107
3.5.3. Spesifikasi Hardware dan Software
Tabel III.21.
Spesifikasi Hardware dan Software
Kebutuhan Keterangan
Sistem Windows 7 Ultimate 32 –bit
Processor Intel (R) Core(TM) i5-3337U CPU @1.80GHz
RAM 4 GB
Hardisk 500 GB
Monitor 14 inch
Keyboard 101 –or 102 key
Printer Canon E410
Mouse Standard
Software
Kebutuhan menjalankan aplikasi secara lokal:
Bahasa script programming : JAVA 8.1
Web Server : XAMPP
Control Panel
v.3.1.0.3.1.0
DBSM : MySQL