bab iii pembahasan · 18 bab iii pembahasan 3.1. tinjauan perusahaan pt. ardina mahida empat...
Post on 20-Nov-2020
14 Views
Preview:
TRANSCRIPT
18
BAB III
PEMBAHASAN
3.1. Tinjauan Perusahaan
PT. Ardina Mahida Empat merupakan salah satu perusahaan swasta yang
bekerja sama dengan PT. Pertamina untuk menyalurkan Bahan Bakar Minyak
(BBM) kepada masyarakat di Indonesia. PT. Ardina Mahida Empat yang teregistrasi
dengan nomor SPBU 3417143, berlokasi di Jl. Cikunir Raya RT.001/RW.15 Kel.
Jakamulya, Kec. Bekasi Selatan, Kota Bekasi ini menyediakan 4 macam jenis bahan
bakar minyak, yaitu : Dexlite, Pertamax, Pertamax Turbo, Pertalite.
3.1.1. Sejarah Perusahaan
PT. Ardina Mahida Empat pertama kali didirikan pada tahun 2009 dan
mendapat nomor registrasi bangunan dan operasi dari PT. Pertamina dengan nomor
3417143 ini dipimpin oleh Bpk. Adi Surya Agung selaku direktur utama dengan
nomor izin usaha 510/1731-BPPT/PM/X/2012.
Pada umumnya SPBU menjual bahan bakar jenis Dexlite, Pertamax, Pertamax
Turbo, Pertalite, Solar dan Premium. Seiring berjalannya waktu pengiriman bahan
bakar premium dan solar mulai dibatasi mengingat program pemerintah yang akan
menghapuskan bahan bakar tersebut. Sehingga pihak manajemen SPBU 341743
memutuskan untuk tidak menjual lagi bahan bakar premium dan solar sejak
penghujung tahun 2016. Untuk menjamin ketetapan takaran, SPBU melakukan test
ketetapan volume secara rutin dengan batas toleransi akurasi yang ketat.
19
3.1.2. Struktur Organisasi dan Fungsi
STRUKTUR ORGANISASI PT. ARDINA MAHIDA EMPAT
(SPBU 3417143)
Sumber : PT. Ardina Mahida Empat (SPBU 3417143)
Gambar III.1.
Struktur Organisasi PT. Ardina Mahida Empat
Adapun pembagian tugas dan tanggung jawab masing-masing bagian pada
SPBU 3417143 sebagai berikut :
1. Direktur
a. Memimpin dan mengendalikan semua kegiatan di Perusahaan.
b. Melakukan pengawasan terhadap perkembangan Perusahaan.
c. Mengelola kekayaan Perusahaan.
d. Merencanakan dan mengembangkan sumber-sumber pendapatan serta
pembelanjaan dan kekayaan perusahaan
2. Head Manager
a. Membina staf dalam kepemimpinan profesinya.
20
b. Bertanggung jawab atas terselenggaranya pelayanan penjualan sesuai dengan
Visi dan Misi Perusahaan.
c. Menyusun organisasi di Perusahaan.
d. Mewakili SPBU dihadapan PERTAMINA.
e. Menetapkan keputusan-keputusan internal SPBU.
f. Melakukan proses pengadaan BBM.
g. Melaksanakan manajemen personalia SPBU.
3. HRD
a. Merekrut karyawan untuk posisi yang dibutuhkan perusahaan.
b. Melakukan pengawasan kinerja dari setiap karyawan.
c. Mengawasi perlengkapan kesehatan dan keselamatan bagi karyawan.
d. Pembimbingan dan pemecahan masalah bagi karyawan.
e. Menjaga solidaritas semua karyawan.
f. Merekap Absensi Karyawan.
g. Melakukan perhitungan Gaji Karyawan.
4. Manager Keuangan
a. Menyusun, menyiapkan dan menafsirkan laporan, anggaran dan laporan
keuangan.
b. Mengesahkan dan menyetujui laporan gaji.
c. Mengelola anggaran.
d. Memproduksi rencana bisnis jangka panjang.
e. Melakukan penilaian risiko bisnis.
f. sebagai penghubung dengan auditor untuk memastikan pengawasan tahunan
telah dilakukan.
g. Mengaudit hasil kerja admin keuangan dan admin data.
21
5. Admin Data
a. Melakukan pencatatan dan perekapan data BBM masuk dan keluar.
b. Membuat pesanan atau permohonan pengisian BBM ke pertamina.
c. Mencatat segala pemasukan dan pengeluaran keuangan di SPBU.
d. Menyusun bukti-bukti transaksi dengan baik dan benar.
6. Admin
a. Melakukan penyetoran keuangan ke Bank.
b. Melakukan pemesanan Produk Bahan Bakar Minyak.
c. Mendistribusikan gaji karyawan.
7. Manager Operasional
a. Bertanggung jawab mengawasi kegiatan di lapangan yang berkaitan dengan
operasional.
b. Membuat jadwal kerja operator dan pengawas.
c. Membuat atau merencanakan pengembangan operasi dalam jangka pendek
maupun panjang.
8. Pengawas
a. Bertanggung jawab atas kegiatan perawatan alat dan fasilitas di SPBU.
b. Mengawasi operator di lapangan.
c. Melakukan pembongkaran BBM ketika tangki datang.
d. Bertanggung jawab atas perhitungan uang atas penjualan harian sebelum
diserahkan ke admin keuangan.
9. OB
a. Bertanggung jawab atas kebersihan lingkungan SPBU.
b. Melakukan pembersihan rutin seluruh fasilitas di lingkungan SPBU.
10. Operator
22
a. Melayani konsumen dalam pengisian BBM.
b. Melakukan kegiatan perawatan harian pompa.
c. Bertanggung jawab atas penyerahan uang hasil penjualan kepada pengawas.
11. Security
a. Bertanggung jawab atas keamanan di lingkungan SPBU.
b. Mengatur ketertiban lalu lintas kendaraan konsumen di lingkungan SPBU.
c. Menutup jalur masuk keluar kendaraan bila SPBU tidak beroperasi.
d. Mengatur area parkir mobil tangki ketika bongkar.
3.2. Tinjauan Kasus
Prosedur penggajian di PT. Ardina Mahida Empat SPBU 34.1743 saat ini masih
diproses secara manual sehingga memerlukan adanya sistem yang terkomputerisasi
agar berjalan efektif dan efisien dalam proses penggajiannya.
3.2.1. Proses Bisnis Sistem Berjalan
a. Prosedur Rekap Kehadiran
Staf HRD mengumpulkan hasil absen dari mesin finger print lalu staf HRD
melakukan pemisahan data mesin finger print per unit kerja.
b. Prosedur Perhitungan Gaji
Setelah merekap data kehadiran dan data lembur karyawan, bagian admin HRD
akan melakukan perhitungan gaji berdasarkan gaji pokok karyawan, beserta jam
overtime dan tunjangan – tunjangan lainnya dan status pegawai sakit, cuti atau
urusan pribadi. Bagian admin HRD akan menyerahkan laporan perhitungan gaji
tersebut kepada Manager Keuangan setelah ditanda tangani.
23
c. Prosedur Pembayaran Gaji
Setelah HRD memberikan laporan gaji yang sudah ditanda tangani oleh Manager
keuangan, lalu HRD menyerahkan laporan gaji ke admin keuangan untuk
diproses keuangannya, setelah itu slip gaji diserahkan ke karyawan masing –
masing
3.2.2. Activity Diagram
Gambar III.2.
Activity Diagram Sistem Penggajian Pada PT. Ardina Mahida Empat
24
3.2.3. Dokumen Masukan
Bentuk dokumen masukan dalam sistem penggajian pada PT. Ardina Mahida
Empat :
a. Data Absen
Nama Dokumen : Data Finger print
Fungsi : Sebagai bukti kehadiran karyawan
Sumber : karyawan
Tujuan : admin data
Media : kertas
Jumlah : 1 rangkap
Frekuensi : harian
Format : Lampiran A.1
b. Data Karyawan
Nama Dokumen : Data karyawan
Fungsi : informasi data karyawan di perusahaan
Sumber : karyawan
Tujuan : admin data
Media : kertas
Jumlah : 1 rangkap
Frekuensi : Setiap ada perubahan data dan karyawan baru
Format : Lampiran A.2
c. Tanda terima
Nama Dokumen : Tanda terima Gaji
Fungsi : Sebagai bukti laporan diterimanya gaji oleh karyawan
Sumber : admin keuangan
25
Tujuan : karyawan
Media : kertas
Jumlah : 1 rangkap
Frekuensi : setiap bulan
Format : Lampiran A.3
3.2.4. Dokumen Keluaran
Bentuk dokumen keluaran selama sistem penggajian pada PT. Ardina Mahida
Empat :
a. Slip Gaji
Nama Dokumen : slip gaji
Fungsi : Sebagai bukti rincian gaji
Sumber : admin keuangan
Tujuan : karyawan
Media : kertas
Jumlah : 1 rangkap
Frekuensi : setiap bulan
Format : Lampiran B.1
b. Laporan Gaji
Nama Dokumen : laporan gaji
Fungsi : perekapan pengeluaran biaya gaji di perusahaan
Sumber : admin keuangan
Tujuan : pimpinan
Media : kertas
Jumlah : 1 rangkap
26
Frekuensi : setiap bulan
Format : Lampiran B.2
3.2.5. Permasalahan Pokok
Bentuk sistem yang baik akan sangat dibutuhkan untuk memudahkan dalam
pengelolaan data penggajian. Setelah mengamati sistem penggajian pada PT. Ardina
Mahida Empat, beberapa permasalahan yang menghambat dalam pengolahan
penggajian :
1. Terdapat data pegawai yang tidak sesuai pada dokumen yang ada pada
pengolahan penggajian.
2. Tidak efisien adanya keterlambatan informasi dalam pembuatan laporan sehinga
penyajian data memerlukan waktu yang lama.
3. Tidak akuratnya pelaporan data, terutama dalam menghitung penggajian
sehingga sering terjadi kesalahan menghitung.
4. Pengarsipan secara manual menyebabkan banyak resiko karena memungkinkan
ada arsip data yang hilang dan rusak.
3.2.6. Pemecahan Masalah
Dengan melihat berbagai permasalahan yang ada pada sistem penggajian
berjalan, maka penulis menganjurkan alternatif pemecahan masalah berupa
pengembangan sistem penggajian pada PT. Ardina Mahida Empat antara lain :
1. Dibuatkannya program yang dapat mengatasi penyimpanan data pegawai secara
akurat.
2. Dibuatkannnya program yang terkomputerisasi sehingga dalam pencatatan lebih
cepat dan mudah.
27
3. Dengan menggunakan program dalam pembuatan laporan lebih efektif sehingga
meminimalisir kesalahan.
4. Dalam pengarsipan data tidak hanya dilakukan dengan pengarsipan berbentuk
kertas, dapat juga dalam bentuk soft file dengan database virtual maupun
harddisk.
3.3. Analisis Kebutuhan Software
3.3.1. Analisis Kebutuhan
Berikut ini spesifikasi kebutuhan (System Requirement) dari sistem penggajian
di PT. Ardina Mahida Empat.
A.1. Melakukan Log In
A.1.1. Menginput User Name
A.1.2. Menginput Password
A.2. Mengakses Menu Utama
A.2.1. Mengakses Menu Karyawan
A.2.2. Mengakses Menu Jabatan
A.2.3. Mengakses Menu User
A.2.4. Mengakses Menu Gaji
A.2.5. Mengakses Menu Laporan
A.2.6. Mengakses Logout
A.2.7. Mengakses Menu Ubah Password
A.2.1. Mengakses Menu Karyawan
A.2.1.1. Mengakses Form Data Nomor Induk Karyawan
A.2.1.2. Mengakses Form Data Nama Karyawan
A.2.1.3. Mengakses Form Data Kode Jabatan
28
A.2.1.4. Mengakses Form Data Pendidikan
A.2.1.5. Mengakses Form Data Tanggal Bergabung
A.2.1.6. Mengakses Form Data Agama
A.2.1.7. Mengakses Form Data Tanggal Lahir
A.2.1.8. Mengakses Form Data Jenis Kelamin
A.2.1.9. Mengakses Form Data Alamat
A.2.1.10. Mengakses Form Data Tanggal Masa Kerja
A.2.2. Mengakses Menu Jabatan
A.2.2.1. Mengakses Form Data Kode Jabatan
A.2.2.2. Mengakses Form Data Nama Jabatan
A.2.2.3. Mengakses Form Data Gaji Pokok
A.2.2.4. Mengakses Form Data Bonus
A.2.2.5. Mengakses Form Data Tunjangan Makan
A.2.2.6. Mengakses Form Data Tunjangan Transport
A.2.2.7. Mengakses Form Data Tunjangan Kesehatan
A.2.2.8. Mengakses Form Data Tunjangan Hari Raya
A.2.3. Mengakses Menu User
A.2.3.1. Mengakses Form Data Kode Pengguna
A.2.3.2. Mengakses Form Data Nama Pengguna
A.2.3.3. Mengakses Form Data Username
A.2.3.4. Mengakses Form Data Password
A.2.3.5. Mengakses Form Data Hak Akses
A.2.4. Mengakses Menu Gaji
A.2.4.1. Mengakses Data Form Nomor Induk Karyawan
29
A.2.4.2. Mengakses Data Form Nama Jabatan
A.2.4.3. Mengakses Data Form Gaji Bersih
A.2.4.4. Mengakses Data Form Potongan
A.2.5. Mengakses Menu Laporan
A.2.5.1. Mengakses Data Form Laporan Gaji Menyeluruh
A.2.5.2. Mengakses Data Form Laporan Berdasarkan Per-Bulan
A.2.5.3. Mengakses Data Form Laporan Pegawai
A.2.6. Mengakses Ubah Password
A.2.6.1. Mengakses Data Form Ubah Password
A.2.7. Mengakses Menu Logout
3.3.2. Use Case Diagram
1. Use Case Diagram Form Log In
Gambar III.3.
Use Case Diagram Form Login
30
Tabel III.1.
Deskripsi Use Case Diagram Form Login
Use Case Narrative Login
Tujuan Melakukan login dan masuk kedalam
aplikasi penggajian.
Deskripsi
Sistem ini memungkinkan actor
untuk mengakses aplikasi
penggajian.
Skenario Utama
Aktor Admin
Kondisi Awal Aktor membuka aplikasi penggajian
Aksi Aktor Reaksi Sistem
1. Aktor memilih tombol Login
Sistem akan menampilkan textbox
untuk mengisi username dan
password
2. Aktor memilih tombol Cancel Sistem akan membatalkan proses dan
keluar dari aktivitas
Kondisi Akhir
Jika login berhasil, maka sistem akan
masuk ke dalam aplikasi penggajian
dan aktor dapat melakukan aktivitas
di dalam aplikasi.
31
2. Use Case Diagram Form Menu Utama
Gambar III.4.
Use Case Diagram Form Menu Utama
32
Tabel III.2.
Deskripsi Use Case Diagram Mengakses Menu Utama
Use Case Narrative Mengakses Menu Utama
Tujuan
Aktor dapat melakukan pengolahan data
yang ada di menu side bar,menampilkan
laporan dan mengubah password.
Deskripsi
Sistem ini memungkinkan actor untuk
mengelola aplikasi penggajian mulai
dari input data sampai dengan
pembuatan laporan.
Skenario Utama
Aktor Admin
Kondisi Awal Aktor membuka aplikasi penggajian
Aksi Aktor Reaksi Sistem
1. Aktor memilih Menu Jabatan Sistem akan menampilkan Form Data
jabatan
2. Aktor memilih Menu Pegawai Sistem akan menampilkan Form data
pegawai
3. Aktor memilih Menu User Sistem akan menampilkan Form Data
User
4. Aktor memilih Menu Gaji Sistem akan menampilkan Form
Transaksi Gaji
5. Aktor memilih Menu Laporan Sistem akan menampilkan Form
Laporan Transaksi Penggajian
6. Aktor memilih Menu Ubah
password
Sistem akan menampilkan Form ubah
Password
Kondisi Akhir
Jika perintah sesuai maka sistem akan
menampilkan seperti apa yang
diinginkan oleh aktor.
33
3. Use Case Diagram Form Menu Jabatan
Gambar III.5.
Use Case Diagram Form Menu Jabatan
Tabel III.3. Deskripsi Use Case Mengakses Menu Jabatan
Use Case Narrative Mengakses Menu Jabatan
Tujuan Aktor dapat menambah atau mengubah
serta menyimpan data jabatan.
Deskripsi Meliputi proses penginputan data
jabatan atau pencarian data jabatan.
Skenario Utama
Aktor Admin
Kondisi Awal Aktor membuka Menu Data Jabatan
Aksi Aktor Reaksi Sistem
1. Aktor memilih Tombol Simpan Sistem menampilkan informasi data
jabatan
2. Aktor memilih Tombol Edit Sistem menampilkan informasi data
jabatan
34
3. Aktor memilih Tombol Hapus Sistem menampilkan informasi data
jabatan
4. Aktor memilih Tombol Batal Sistem akan membersihkan layar data
jabatan
Kondisi Akhir Jika perintah sesuai maka sistem akan
menampilkan apa yang diinginkan
4. Use Case Diagram Form Menu Pegawai
Gambar III.6.
Use Case Diagram Form Menu Pegawai
Tabel III.4. Deskripsi Use Case Mengelola Menu Pegawai
Use Case Narrative Mengelola Menu Pegawai
Tujuan Menambah atau mengubah serta
menyimpan data pegawai.
Deskripsi Meliputi proses penginputan Data
pegawai atau pencarian data pegawai.
35
Skenario Utama
Aktor Admin
Kondisi Awal Aktor membuka Menu Data Pegawai
Aksi Aktor Reaksi Sistem
1. Aktor memilih Tombol Simpan Sistem akan menyimpan data pegawai
2. Aktor memilih Tombol Edit Sistem akan mengubah data pegawai
3. Aktor memilih Tombol Hapus Sistem akan menghapus data pegawai
yang di pilih actor
4. Aktor memilih Tombol Batal Sistem akan membersihkan layar data
pegawai
Kondisi Akhir Jika perintah sesuai maka sistem akan
menampilkan apa yang diinginkan
5. Use Case Diagram Form Menu Pengguna
Gambar III.7.
Use Case Diagram Form Menu Pengguna
36
Tabel III.5. Deskripsi Use Case Mengakses Menu Pengguna
Use Case Narrative Mengakses Menu Pengguna
Tujuan Menambah atau mengubah serta
menyimpan data pengguna.
Deskripsi
Meliputi proses penginputan Data
pengguna atau pencarian data
pengguna.
Skenario Utama
Aktor Admin
Kondisi Awal Aktor membuka Menu Data Pengguna
Aksi Aktor Reaksi Sistem
1. Aktor memilih Tombol Simpan Sistem akan menyimpan data pengguna
2. Aktor memilih Tombol Edit Sistem akan mengubah data pengguna
3. Aktor memilih Tombol Hapus Sistem akan menghapus data pengguna
yang di pilih actor
4. Aktor memilih Tombol Batal Sistem akan membersihkan layar data
pengguna
Kondisi Akhir Jika perintah sesuai maka sistem akan
menampilkan apa yang diinginkan
6. Use Case Diagram Form Menu Gaji
Gambar III.8.
Use Case Diagram Form Menu Gaji
Tabel III.6.
37
Deskripsi Use Case Mengakses Menu Gaji
Use Case Narrative Mengakses Menu Gaji
Tujuan Mengolah dan menyimpan Data Gaji.
Deskripsi Meliputi proses penginputan Data Gaji
Skenario Utama
Aktor Admin
Kondisi Awal Aktor membuka Menu Transaksi
Aksi Aktor Reaksi Sistem
1. Aktor memilih Tombol Proses Sistem akan menghitung jumlah
transaksi gaji.
2. Aktor memilih Tombol Simpan Sistem akan menyimpan data gaji
3. Aktor memilih Tombol Batal Sistem akan membersihkan layar data
Pengguna
Kondisi Akhir Jika perintah sesuai maka sistem akan
menampilkan apa yang diinginkan
7. Use Case Diagram Form Menu Laporan
Gambar III.9.
Use Case Diagram Form Menu Laporan
38
Tabel III.7. Deskripsi Use Case Mengakses Menu Laporan
Use Case Narrative Mengakses Menu Laporan
Tujuan Aktor dapat melihat data gaji dan dapat
membuat laporan.
Deskripsi Sistem ini memungkinkan aktor untuk
mengelola laporan data gaji.
Skenario Utama
Aktor Admin
Kondisi Awal Aktor membuka Menu Laporan
Aksi Aktor Reaksi Sistem
1. Aktor memilih Tombol Cetak
Data Karyawan
Sistem akan menyetak Laporan data
pegawai.
2. Aktor memilih Tombol Cetak
Laporan penggajian
Sistem akan menyetak Laporan data
seluruh gaji.
3. Aktor memilih Tombol Cetak
per-periode
Sistem akan menyetak Laporan Gaji
berdasarkan per-periode yang dipilih
actor
Kondisi Akhir Jika perintah sesuai maka sistem akan
menampilkan apa yang diinginkan
8. Use Case Diagram Form Menu Ubah Password
Gambar III.10.
Use Case Diagram Form Ubah Password
39
Tabel III.8. Deskripsi Use Case Mengakses Menu Ubah Password
Use Case Narrative Mengakses Menu Ubah Password
Tujuan Mengubah password pengguna.
Deskripsi Meliputi proses mengubah password
pengguna.
Skenario Utama
Aktor Admin, pimpinan
Kondisi Awal Aktor membuka Form ubah password
Aksi Aktor Reaksi Sistem
1. Aktor memilih Tombol Update Sistem akan mengubah password lama
2. Aktor memilih Tombol Exit Sistem akan keluar dari Form ubah
password
Kondisi Akhir Jika perintah sesuai maka sistem akan
menampilkan apa yang diinginkan
3.3.3. Activity Diagram
1. Activity Diagram Halaman Login
Gambar III.11.
Activity Diagram Halaman Login
40
2. Activity Diagram Halaman Menu Jabatan
Gambar III.12.
Activity Diagram Halaman Menu Jabatan
3. Activity Diagram Halaman Menu Karyawan
Gambar III.13.
Activity Diagram Halaman Menu Karyawan
41
4. Activity Diagram Halaman Menu Pengguna
Gambar III.14.
Activity Diagram Halaman Menu Pengguna
5. Activity Diagram Halaman Menu Gaji
Gambar III.15.
Activity Diagram Halaman Menu Gaji
42
6. Activity Diagram Halaman Menu Laporan Gaji
Gambar III.16.
Activity Diagram Halaman Menu Laporan Gaji
7. Activity Diagram Halaman Menu Ubah Password
Gambar III.17.
Activity Diagram Halaman Menu Ubah Password
43
3.4. Desain
3.4.1. Entity Relationship Diagam (ERD)
Gambar III.18.
Entity Relationship Diagram (ERD)
44
3.4.2. Logical Record Structure (LRS)
Gambar III.19.
Logical Record Structure (LRS)
45
3.4.3. Spesifikasi File
Menjelaskan tentang file – file yang digunakan dalam pengolahan database
pada sistem sebagai media penyimpanan data dalam prosedur penggajian, sebagai
berikut :
1. File Data karyawan
Nama File : Karyawan
Nama Database : pertamina.sql
Fungsi : Menyimpan Data Karyawan
Tipe File : Data Master
Akses file : Random
Panjang record : 135 byte
Field Key : no_pegawai
Tabel III.9.
Spesifikasi File Data Pegawai
No. Elemen Data Akronim Tipe Panjang Keterangan
1. Nomor Induk Karyawan Nik Varchar 15 Primary key
2. Nama Karyawan Nama_karyawan Varchar 25
3. Kode Jabatan Kode_jabatan Varchar 15 Foreign key
4. Pendidikan pendidikan Varchar 15
5. Tanggal Bergabung Tgl_bergabung date
6. Agama agama Varchar 15
7. Tanggal Lahir Tgl_lahir date
8. Jenis Kelamin Jenis_kelamin Varchar 15
9. Alamat alamat Varchar 50
46
2. File Data Jabatan
Nama File : jabatan
Nama Database : pertamina.sql
Fungsi : Menyimpan Data Jabatan
Tipe File : Data Master
Akses file : Random
Panjang record : 175 byte
Field Key : kode_jabatan
Tabel III.10.
Spesifikasi File Data Jabatan
9. Tanggal Masa Kerja Tgl_masa_kerja date
No. Elemen Data Akronim Tipe Panjang Keterangan
1. Kode Jabatan Kode_Jabatan Varchar 15 Primary key
2. Nama Jabatan Nama_jabatan Varchar 25
3. Gaji Pokok Gaji_pokok Double -
4. Bonus bonus Integer 25
5. Tunjangan Makan T_makan Integer 25
6. Tunjangan Transport T_transport Integer 25
7. Tunjangan Kesehatan T_kesehatan Integer 25
8. Tunjangan Hari Raya T_hari_raya Integer 25
9. Tunjangan Kontrakan T_kontrakan Integer 25
47
3. File Data Pengguna
Nama File : Pengguna
Nama Database : pertamina.sql
Fungsi : Menyimpan data Pengguna
Tipe File : Data Master
Akses file : Random
Panjang record : 55 Byte
Field Kunci : username
Tabel III.11.
Spesifikasi File Data Pengguna
4. File Data Gaji
Nama File : gaji
Nama Database : pertamina.sql
Fungsi : Menyimpan data Transaksi
Tipe File : Transaksi
Akses file : Random
No. Elemen Data Akronim Tipe Panjang Keterangan
1. Kode Pengguna Kode_pengguna Varchar 15 Primary key
2. Nama Pengguna Nama_pengguna Varchar 25
3. Username username Varchar 25
4. Password password Varchar 15
5. Hak Akses Hak_akses Varchar 30
48
Panjang record : 115 Byte
Field Kunci : no_gaji
Tabel III.12.
Spesifikasi File Data Gaji
5. File Data Laporan
Nama File : Detail Gaji
Nama Database : pertamina.sql
Fungsi : Menyimpan Detail Transaksi
Tipe File : Transaksi
Akses file : Random
Panjang record : 85 Byte
Field Kunci : no_gaji
No. Elemen Data Akronim Tipe Panjang Keterangan
1. Nomor Gaji No_gaji Varchar 25 Primary key
2. Tanggal Gaji Tanggal_gaji date -
3. Kode Pengguna Kode_pengguna Varchar 15 Foreign Key
4. No Induk Karyawan Nik Varchar 25 Foreign Key
5. Bulan bulan Varchar 15
6. Tahun tahun Varchar 15
7. Gaji Bersih Gaji__bersih Double
49
Tabel III.13.
Spesifikasi File Data Gaji(Rincian)
No. Elemen Data Akronim Tipe Panjang Keterangan
1. Nomor Gaji No_gaji Varchar 35 Foreign key
2. Gaji pokok Gaji_pokok Double -
3. Jumlah Lembur lembur Integer 10
4. Total Uang Lembur Ttl_lembur Integer 25
5. Bonus bonus Integer 25
6. Tunjangan Makan T_makan Integer 25
7. Tunjangan Kontrakan T_kontrakan Integer 25
8. Tunjangan Transport T_transport Integer 25
9. Tunjangan Kesehatan T_kesehatan Integer 25
10. Tunjangan Hari Raya T_hari_raya Integer 25
11. Jumlah Absen absen Integer 10
12. Total Potongan Absen Ttl_absen Integer 25
13. Potongan Jaminan Pot_Jaminan Integer 25
14 Gaji Kotor Gaji_kotor Integer 25
50
3.4.4. Sequence Diagram
Gambar III.20.
Sequence Diagram
51
3.4.5. Deployment Diagram
Gambar III.21.
Deployment Diagram Sistem Penggajian
3.4.6. User Interface
Gambar III.22.
User Interface Login
52
Gambar III.23.
User Interface Menu Utama
Gambar III.24.
User Interface Menu Jabatan
53
Gambar III.25.
User Interface Menu Karyawan
Gambar III.26.
User Interface Menu Pengguna
54
Gambar III.27.
User Interface Menu Gaji
Gambar III.28.
User Interface Menu Laporan
55
Gambar III.29.
User Interface Menu Ubah Password
3.5. Implementasi
3.5.1. Code Generation
public String nik;
public String getNik() {
return nik;
}
public void setnik() {
try {
String sql = "SELECT jabatan.kode_jabatan, jabatan.nama_jabatan,
jabatan.gaji_pokok,
jabatan.bonus,jabatan.t_makan,jabatan.t_kontrakan,jabatan.t_transport,jabat
an.t_kesehatan,jabatan.t_hari_raya,karyawan.nik,karyawan.nama_karyawan,k
aryawan.kode_jabatan,jabatan.nama_jabatan FROM karyawan INNER JOIN
jabatan ON jabatan.kode_jabatan = karyawan.kode_jabatan WHERE
karyawan.nik ='" + tnik.getText() + "'";
kon.rs = kon.st.executeQuery(sql);
if (kon.rs.next()) {
String nik_col = kon.rs.getString("karyawan.nik");
String nama = kon.rs.getString("nama_karyawan");
String jab = kon.rs.getString("nama_jabatan");
56
String gapok = kon.rs.getString("gaji_pokok");
String bonus = kon.rs.getString("bonus");
String t1 = kon.rs.getString("t_makan");
String t2 = kon.rs.getString("t_kontrakan");
String t3 = kon.rs.getString("t_transport");
String t4 = kon.rs.getString("t_kesehatan");
String t5 = kon.rs.getString("t_hari_raya");
//String stat = kon.rs.getString("tunjangan_status");
tnama.setText(nama);
tjabatan.setText(jab);
tgapok.setText(gapok);
ttunjab.setText(bonus);
ttunkel.setText(t1);
ttransport.setText(t2);
tmakan.setText(t3);
tulembur.setText(t4);
tulembur1.setText(t5);
//tstatus.setText(gol);
thadir.setEnabled(true);
thadir.requestFocus();
tnik.setEnabled(false);
bcari.setEnabled(false);
} else {
JOptionPane.showMessageDialog(this, "NIK tidak terdaftar",
"Informasi", JOptionPane.INFORMATION_MESSAGE);
tnik.setText("");
tnama.setText("");
tjabatan.setText("");
tmakan.setText("");
ttransport.setText("");
ttunjab.setText("");
tulembur.setText("");
tulembur1.setText("");
tnik.requestFocus();
}
} catch (SQLException error) {
JOptionPane.showMessageDialog(null, error);
}
}
void bersih() {
//idUser.setText("");
//tTanggal.setText("");
tnama.setText("");
//tUsername.setText("");
tnik.setText("");
tjabatan.setText("");
tbulan.setText("");
ttahun.setText("");
57
thadir.setText("0");
tlembur.setText("");
tgapok.setText("0");
ttunjab.setText("0");
ttunkel.setText("0");
ttransport.setText("0");
tmakan.setText("0");
tulembur.setText("0");
tulembur1.setText("0");
tulembur2.setText("");
lgajikotor.setText("0");
talpa.setText("0");
tpph.setText("");
ltotpot.setText("0");
lgaji.setText("0");
}
private void BacaTabelUser() {
try {
String sql = "Select * From gaji inner join karyawan on gaji.nik =
karyawan.nik inner join jabatan on karyawan.kode_jabatan =
jabatan.kode_jabatan";
kon.rs = kon.st.executeQuery(sql);
ResultSetMetaData m = kon.rs.getMetaData();
int kolom = m.getColumnCount();
int baris = 0;
while (kon.rs.next()) {
baris = kon.rs.getRow();
}
datauser = new Object[baris][kolom];
int x = 0;
kon.rs.beforeFirst();
while (kon.rs.next()) {
datauser[x][0] = kon.rs.getString("no_gaji");
datauser[x][1] = kon.rs.getString("tanggal_gaji");
datauser[x][2] = kon.rs.getString("nama_karyawan");
datauser[x][3] = kon.rs.getString("nama_jabatan");
datauser[x][4] = kon.rs.getString("gaji_bersih");
x++;
}
tblUser.setModel(new DefaultTableModel(datauser, label));
} catch (SQLException e) {
JOptionPane.showMessageDialog(null, e);
58
}
}
public java.util.Date date = new java.util.Date();
public SimpleDateFormat noformat = new SimpleDateFormat("MMddyy");
public String nomor() {
String urutan = null;
try {
kon.rs = kon.st.executeQuery("select right(no_gaji,3)+1 from gaji as
Nomor order by no_gaji desc");
if (kon.rs.next()) {
urutan = kon.rs.getString(1);
while (urutan.length() < 3) {
urutan = "0" + urutan;
}
urutan = "GJ-" + noformat.format(date) + urutan;
} else {
urutan = "GJ-" + noformat.format(date) + "001";
}
} catch (Exception e) {
JOptionPane.showMessageDialog(null, e);
}
return urutan;
}
59
3.5.2. Blackbox Testing
Tabel III.14. Hasil Pengujian Blackbox Testing Form Login
No Skenario
Pengujian Test Case
Hasil yang
diharapkan
Hasil
pengujian Kesimpulan
1. Username dan
password tidak
diisi kemudian
klik tombol
Login
Username :
(kosong)
Password :
(kosong)
Tombol
“Login” tidak
berfungsi
Sesuai
harapan
Valid
2. Username diisi
dan password
tidak diisi
kemudian klik
tombol Login
Username :
(rkl)
Password :
(kosong)
Tombol
“Login” tidak
berfungsi
Sesuai
harapan
Valid
3. Username tidak
diisi dan
password diisi
kemudian klik
Login
Username :
(kosong)
Password :
(tidak aktif)
Jika username
tidak diisi
maka textbox
Password
tidak aktif
dan tombol
login tidak
berfungsi.
Sesuai
harapan
Valid
4. Username dan
password
dengan data
yang tidak
benar
kemudian klik
tombol Login
Username :
(xxx)
(salah)
Password :
(xxx)
(salah)
Menampilkan
“Kode user
salah”
Sesuai
harapan
Valid
5. Nama user dan
password
dengan data
yang benar
kemudian klik
tombol Login
Username :
rkl
(benar)
Password :
123
(benar)
Menampilkan
tampilan
menu utama
sistem
Sesuai
harapan
Valid
60
Tabel III.15. Hasil Pengujian Blackbox Testing Form Data Jabatan
No Skenario
Pengujian Test Case
Hasil yang
diharapkan
Hasil
pengujian Kesimpulan
1. Seluruh data di
tabel data
barang diisi
lengkap dan
klik Simpan
Kode
Jabatan :
(JAB-001)
Nama
Jabatan :
(OB)
Gaji Pokok :
(60000)
Bonus :
(9000)
Tunjangan :
(900000)
Lembur :
(90000)
Penyimpanan
data berhasil,
sistem
menampilkan
“Data berhasil
disimpan”
Sesuai
harapan
Valid
2. Salah satu data
di tabel data
barang tidak
diisi dan klik
Simpan
Kode
barang :
(JAB-001)
Kode
Jabatan :
(Kosong)
Bonus :
(kosong)
Tunjangan:
(Kosong)
Lembur:
(Bonus)
Sistem
menampilkan
“Lengkapi
Semua Data”
Sesuai
harapan
Valid
61
Tabel III.16. Hasil Pengujian Blackbox Testing Form Data Pengguna
No Skenario
Pengujian Test Case
Hasil yang
diharapkan
Hasil
pengujian Kesimpulan
1. Seluruh data di
tabel data
barang tidak
diisi dan klik
Simpan
ID
Pengguna :
(ADM-001)
Nama
Pengguna :
(Feby)
Password :
(123)
Hak Akses :
(Admin)
Penyimpanan
data berhasil,
sistem
menampilkan
“Data berhasil
disimpan”
Sesuai
harapan
Valid
2. Salah satu data
di tabel data
customer tidak
diisi dan klik
Simpan
ID
Pengguna :
(ADM-001)
Nama
Pengguna :
(Feby)
Passowrd :
(123)
Hak Akses :
(kosong)
Sistem
menampilkan
“Lengkapi
Semua Data”
Sesuai
harapan
Valid
62
Tabel III.17. Hasil Pengujian Blackbox Testing Form Menu Gaji
No. Skenario
pengujian Test Case
Hasil yang
diharapkan
Hasil
pengujian Kesimpulan
1. Klik tombol
cari “ID
Customer”
No Gaji :
(GJ12345)
Sistem
menampilkan
data customer
yang ada di
basis data
Sesuai
harapan
Valid
2. Klik tombol
cari “ID
Customer” dan
Klik salah satu
ID Customer
yang
ditampilkan
NIK:
(SPBU1234)
Sistem akan
menerima dan
secara
otomatis
menampilkan
isian data
customer
Sesuai
harapan
Valid
3. Klik tombol
cari “Kode
Barang”
Kode
Jabatan :
(kosong)
Sistem
menampilkan
data barang
yang ada di
basis data
Sesuai
harapan
Valid
4. Klik tombol
cari “Kode
Barang” dan
Klik salah satu
kode barang
yang ada di
basis data
Gaji Pokok :
90000
Sistem akan
menerima dan
secara
otomatis
menampilkan
isian data
barang
Sesuai
harapan
Valid
5. Mengisikan
jumlah beli
pada kolom
“Jumlah Beli”
Potongan
Gaji :
“0”
Sistem akan
langsung
menghitung
otomatis
Subtotal harga
dikalikan
Jumlah beli
Sesuai
harapan
Valid
6. Tidak
mengisikan
jumlah beli
pada kolom
“Jumlah Beli”
Gaji Bersih :
“0”
Subtotal
menunjukkan
“0” dan ketika
akan
menyimpan
data
pemesanan,
sistem akan
menampilkan
“Lengkapi
Data”
Sesuai
harapan
Valid
63
3.5.3. Spesifikasi Hardware dan Software
1. Perangkat Keras (Hardware)
Processor : Intel Pentium
RAM : 2 GB
Harddisk : 150 GB
Flashdisk : 4 GB
Monitor : SVGA 14,1”
Keyboard : Standart Keyboard
Mouse : Standart Mouse
Printer : Inkjet
2. Perangkat Lunak (Software)
Sistem Operasi : Windows 8.1 Pro
Database : MySQL
Bahasa Pemrograman : Java
Tools : Netbeans 8.2, i-report
top related