bab 2 landasan teori 2.1 sistem informasi akuntansithesis.binus.ac.id/doc/bab2/2008-1-00013-aksi bab...
Post on 10-Mar-2019
215 Views
Preview:
TRANSCRIPT
8
BAB 2
LANDASAN TEORI
2.1 Sistem Informasi Akuntansi
2.1.1 Pengertian Sistem Informasi Akuntansi
Menurut Bodnar et al. (2001, p.1) “Sistem Informasi Akuntansi adalah
sebuah kumpulan sumber daya, seperti peralatan dan orang, yang dirancang untuk
mengubah data keuangan dan data lainnya menjadi informasi. Informasi ini
kemudian dikomunikasikan kepada berbagai pengambil keputusan. Sistem
Informasi Akuntansi menampilkan perubahan ini apakah secara manual atau
terkomputerisasi.”
Menurut Romney et al. (2006, p.6) “Sistem Informasi Akuntansi adalah
sebuah sistem yang mengumpulkan, mencatat, menyimpan dan memproses data
untuk menghasilkan informasi bagi para pengambil keputusan.”
Sedangkan menurut Wilkinson et al. (2000, p.7) “Sistem Informasi
Akuntansi adalah struktur terpadu dalam sebuah entitas, seperti perusahaan bisnis,
yang mempekerjakan sumber daya fisik dan komponen lainnya untuk
mentransformasikan data ekonomi ke dalam informasi akuntansi, dengan tujuan
untuk memuaskan kebutuhan informasi dari berbagai user yang bervariasi.”
Jadi dapat disimpulkan bahwa Sistem Informasi Akuntansi adalah
subsistem informasi dalam sebuah organisasi yang mengumpulkan informasi dari
berbagai subsistem dengan menggunakan sumber daya yang ada dalam perusahaan
kemudian mengkomunikasikannya kepada subsistem pengolah informasi
9
organisasi agar menjadi informasi akuntansi yang berguna bagi para pengambil
keputusan.
2.1.2 Komponen Sistem Informasi Akuntansi
Menurut Romney et al. (2006, p.6) , ada 6 (enam) komponen dari sistem
informasi akuntansi, yaitu :
a) People yang mengoperasikan sistem dan menjalankan fungsi yang
bervariasi.
b) Procedures dan instructions, baik manual maupun otomatis terlibat
dalam mengumpulkan, memproses, dan menyimpan data tentang
aktivitas organisasi.
c) Data tentang organisasi beserta proses bisnisnya.
d) Software yang digunakan untuk memproses data organisasi.
e) Information technology infrastructure, termasuk komputer beserta alat-
alat disekelilingnya, dan alat jaringan komunikasi yang digunakan
untuk mengumpulkan, menyimpan, memproses, dan mengirimkan data
serta informasi.
f) Internal control dan security measures yang menjaga keamanan data
dalam sistem informasi akuntansi
2.2 Sistem Informasi Akuntansi Penggajian
2.2.1 Pengertian Gaji
Menurut Warren et al. (2005, p. 552) “Dalam akuntansi, istilah gaji
diartikan sebagai jumlah total yang dibayarkan kepada karyawan atas jasa-jasa
yang merek berikan selama suatu periode tertentu.”
10
Menurut Horngren et al. (2002, p. 430) “Gaji merupakan pendapatan yang
jumlahnya dihitung per tahun, per bulan, atau per minggu, sedangkan upah
merupakan pendapatan yang dihitung berdasarkan tarif per jam.”
2.2.2 Tujuan Sistem Informasi Akuntansi Penggajian
Menurut Wilkinson et al. (2000, CD p.109), “Tujuan utama dari human
resource management cycle adalah untuk memfasilitasi pertukaran kas dengan
pegawai untuk jasa yang telah diberikan. Tujuan ini mempunyai sasaran khusus,
seperti :
1. Untuk memastikan status, tarif pembayaran gaji, dan membayar pengurangan
dari gaji pegawai yang diotorisasi.
2. Untuk membayar jasa aktual yang telah dilakukan.
3. Untuk mencatat, mengklasifikasikan, mendistribusikan, dan membuat laporan
biaya yang berhubungan dengan pegawai secara tepat dan akurat.
2.2.3 Fungsi Terkait
Wilkinson et al. (2000, CD p.110) mengemukakan bahwa fungsi-fungsi
yang terkait dalam Human Resource Management Cycle adalah sebagai berikut :
1. Fungsi Personalia
Bagian ini mempunyai tujuan utama untuk merencanakan, mengatur, dan
mengkoordinasikan pegawai dalam organisasi. Fungsi personalia berada di
bawah arahan Wakil Presiden bagian personalia. Bagian dari fungsi personalia
ini ada :
a. Perencanaan Personalia dan Kepegawaian (Employment and Personnel
Planning) :
11
Unit perencanaan personalia dan kepegawaian berhubungan dengan
rekruitmen dan pengujian karyawan yang prospektif, mempekerjakan
karyawan terpilih, memastikan prosedur promosi dan pemecatan berjalan
dengan baik, dan menentukan kebutuhan personalia di masa depan (baik
dalam keahlian ataupun tingkatan).
b. Keamanan dan Keuntungan (Safety and Benefits) :
Unit ini bertanggung jawab atas keamanan dan kesehatan para pegawai,
seperti halnya juga menyediakan lingkungan kerja yang nyaman bagi para
pegawai.
c. Hubungan Industrial (Industrial Relations) :
Unit hubungan industrial bertanggung jawab dengan hubungan dengan
serikat buruh dan organisasi yang berhubungan dengan pekerja lainnya.
d. Pengembangan Pegawai (Employee Development) :
Unit ini berhubungan dengan masalah pelatihan para pegawai dan
pengembangan keahlian eksekutif para manajer.
e. Administrasi Sumber Daya Manusia (Human Resources Administration) :
Unit ini bertanggung jawab terhadap perencanaan kompensasi (gaji),
asuransi grup, serta program lain yang relevan. Selain itu juga sebagai
administrator dan mengatur data semua pegawai dan segala tindakan yang
berhubungan dengan personalia lainnya. Karena itu unit administrasi
sumber daya manusia (disebut juga administrasi personalia) adalah unit
yang paling dekat dengan aktivitas penggajian.
12
2. Fungsi Keuangan / Akuntansi
Tujuan dari manajemen keuangan dan akuntansi adalah yang berhubungan
dengan pendanaan, data, informasi, perencanaan, dan mengatur sumber daya.
Yang termasuk dalan fungsi ini antara lain :
Timekeeping : berfungsi untuk mengatur waktu dan mencatat kedatangan
dari para pegawai.
Payroll : bertugas menyiapkan cek pembayaran, mengatur data penggajian,
dan membuat laporan dan pernyataan yang berhubungan dengan
penggajian.
Accounts payable : bertugas untuk membuat persetujuan terhadap
disbursement voucher yang berhubungan dengan jasa karyawan.
Cash disbursements : bersama dengan kasir, bagian ini bertugas
menandatangani dan mendistribusikan cek pembayaran.
Cost distribution : bertugas mengurus data yang menggambarkan detail
biaya dari suatu produk.
General Ledger : bertugas mengatur semua assets, modal, biaya, dan akun
pendapatan.
Sebagai catatan, unit timekeeping dan cost distribution biasanya ditemukan
dalam perusahaan manufaktur.
13
2.2.4 Formulir Input untuk Sistem Informasi Akuntansi Penggajian
2.2.4.1 Forms of Input
Menurut Wilkinson et al (2000, CD p.111), dokumen sumber
yang biasanya digunakan pada manajemen jasa kepegawaian sebagai
berikut :
1. Personnel action form
Formulir ini untuk memberitahukan pihak-pihak yang terkait dengan
kegiatan yang berhubungan dengan pegawai. Kegiatan ini termasuk
keputusan pengangkatan karyawan baru, perubahan status, evaluasi
performa kerja, dan masih banyak lagi. Formulir ini yang
memberitahukan departemen penggajian mengenai situasi atau
perubahan yang mempengaruhi status pembayaran pegawai. Kategori
lainnya dari tindakan personalia mengenai pengurangan. Beberapa
formulir tersebut dibuat oleh perusahaan dan beberapa oleh pihak
pemerintah. Misalnya, Employee Withholding Allowance Certificate
yang disediakan oleh Internal Revenue Service. Formulir ini
menspesifikasikan perusahaan dengan nomor wajib pajak. Formulir ini
untuk menghitung pajak penghasilan pegawai di perusahaan tersebut.
2. Time card (clock card)
Kartu ini mencatat waktu aktual yang digunakan oleh karyawan pada
lokasi kerja mereka. Pada formulir ini terdapat nama dan nomer
karyawan, berikut dengan tanggal dari periode pembayaran yang
diaplikasikan. Setiap kali pegawai masuk atau pulang, ia memasukkan
kartu ke dalam time clock. Pada bagian bawah kartu terdapat
14
tandatangan supervisor. Formulir kehadiran lainnya termasuk time
sheet yang digunakan oleh karyawan bulanan.
3. Job-time ticket
Berbeda dengan time card, yang berfokus pada kehadiran di tempat
kerja, job-time ticket berfokus pada pesanan kerja atau pada pekerjaan
tertentu. Setiap kali karyawan upahan seperti buruh produksi, memulai
dan mengakhiri pekerjaan, dia mencatat waktu pada kartu untuk
pekerjaan tertentu. Seperti time card, kartu tersebut dimasukkan ke
dalam time clock. Jika sesuai dengan tugas pegawai, ruang yang
disediakan untuk memasukkan produktivitas dalam artian bagian yang
diselesaikan selama waktu yang berlangsung.
4. Paycheck
Bersama dengan voucher stub, merupakan dokumen akhir pada siklus
manajemen sumber daya manusia. Paycheck yang pada umumnya
disiapkan oleh komputer. Stub menunjukkan semua detail yang
diperlukan, termasuk pembayaran uang lembur berikut dengan
pengurangan dari gaji karyawan.
Pertimbangan Desain Files dan Records
Menurut Wilkinson (2000, p.110) dalam mendesain files dan
records, beberapa pertanyaan mengenai manajemen data harus diajukan.
Seperti misalnya, siapa yang menggunakan files tersebut dan untuk
kepentingan apa, bagaimana files harus diatur dan diakses, dan berapa lama
harusnya isi files ditahan. Jawaban dari pertanyaan-pertanyaan ini
tergantung dari bagian mana yang membutuhkan aplikasi tersebut untuk
15
didesain. Mereka juga dipengaruhi oleh permintaan penyimpanan, efisiensi
dalam maintenance file, dan aksesbilitas dalam penyimpanan data.
2.2.5 Aktivitas Sistem Informasi Akuntansi Penggajian
Berdasarkan Romney et al. (2006, p. 495) ada tujuh aktivitas utama dalam
sistem informasi penggajian, yaitu :
1. Meng-update master file penggajian
Aktivitas pertama dalam proses penggajian ini meliputi peng-update-an master
file penggajian untuk merefleksikan tipe variasi dari perubahan penggajian,
apakah ada pegawai baru dipekerjakan, pemecatan, perubahan dalam tarif
pembayaran, atau perubahan dalam pemotongan gaji. Departemen Sumber
Daya Manusia (SDM) menyediakan informasi ini. Departemen SDM
mempunyai akses online untuk melakukan perubahan terhadap master file
penggajian. Pengecekan perubahan yang diperbolehkan, seperti pengecekan
validitas pada angka karyawan dan tes yang layak untuk perubahan dilakukan,
kemudian diaplikasikan ke seluruh transaksi perubahan penggajian. Catatan
tentang pegawai yang berhenti atau dipecat harusnya tidak langsung dihapus
saat itu juga, karena bagaimanapun juga untuk beberapa laporan akhir tahun,
dibutuhkan data tentang semua karyawan yang bekerja pada saat tahun
berjalan.
2. Meng-update tarif pajak dan pengurangan
Aktivitas kedua adalah meng-update informasi mengenai tarif pajak dan
pemotongan lainnya. Departemen penggajian membuat perubahan ini, tetapi
perubahan ini biasanya jarang terjadi. Hal tersebut terjadi ketika departemen
16
penggajian menerima pemberitahuan perubahan dalam tarif pajak dan
pengurangan lainnya dari kantor pajak dan perusahaan asuransi.
3. Memvalidasikan data waktu dan kehadiran
Langkah ketiga adalah memvalidasikan data waktu dan kehadiran setiap
karyawannya. Informasi ini datang dalam berbagai bentuk tergantung dari
status pembayaran karyawan itu sendiri. Beberapa perusahaan menggunakan
time card untuk mencatat waktu kedatangan dan kehadiran, time card ini juga
meliputi total jam kerja dalam periode pembayaran. Beberapa perusahaan telah
menggantikan time card kertas dengan electronic time clocks, karyawan tinggal
menggesekkan kartu identitas pegawai melalui reader ketika mereka tiba dan
pulang. Para supervisor juga mengawasi keterlibatan mereka dalam pekerjaan.
Menggunakan insentif, komisi, bonus harus berhubungan dengan sistem
penggajian dan sistem informasi penjualan dan siklus lainnya untuk
mengumpulkan data yang digunakan untuk menghitung bonus. Skema
bonus/insentif harus didesain secara realistis, sehingga tujuan bisa dicapai.
Tujuan ini haruslah sejalan dengan tujuan perusahaan dan manajer harus
mengawasi tujuan ini untuk memastikan bahwa tujuan tersebut pantas.
4. Menyiapkan gaji
Departemen dimana pegawai bekerja menyiapkan data mengenai jam kerja dan
masing-masing supervisor biasanya mengkonfirmasikan data tersebut. Pertama
file transaksi penggajian diatur berdasarkan nomer karyawan. File yang telah
diatur ini kemudian digunakan untuk menyiapkan cek pembayaran karyawan.
Untuk setiap karyawan, catatan master file penggajian dan catatan korespoden
transaksi terbaca dan pembayaran kotor dihitung, pembayaran kotor
17
merupakan fraksi dari pembayaran tahunan, dimana fraksi merefleksikan
panjang dari periode pembayaran. Contoh, jika pembayaran dilakukan setiap
bulan maka karyawan akan menerima seperduabelas (1/12) dari gaji tahunan
mereka untuk setiap periode pembayarannya.
Kemudian, semua pengurangan terhadap gaji dijumlahkan dan dikurangkan
dari pembayaran kotor untuk mendapatkan jumlah pembayaran bersih.
Pengurangan gaji ini biasanya terbagi dalam dua kategori yaitu pemotongan
pajak dan pengurangan sukarela. Pemotongan Pajak meliputi pajak pendapatan
yang dipotong dari jumlah gaji yang diterima, sedangkan pengurangan sukarela
meliputi dana pensiun, asuransi kesehatan, dan kontribusi untuk amal.
Ketika pembayaran bersih telah diperoleh, maka fields untuk pembayaran
kotor, pengurangan dan pembayaran bersih untuk setiap catatan karyawan ter-
update. Mengurus catatan pendapatan kumulatif yang akurat penting, karena
pemotongan pajak penghasilan dan pemotongan lainnya diberhentikan maka
perusahaan harus tahu kapan dan apa pemotongan untuk setiap karyawannya
serta informasi ini dibutuhkan untuk memastikan jumlah pajak dan
pengurangan lainnya telah dilaporkan ke kantor pajak, asuransi perusahaan dan
organisasi lainnya. Informasi ini juga termasuk laporan bervariasi mengenai
agensi-agensi yang berkepentingan. Akhirnya payroll register dan cek
pembayaran karyawan dicetak.
5. Membayarkan gaji
Setelah cek pembayaran disiapkan, payroll register dikirimkan ke departemen
utang untuk di-review dan disetujui. Voucher pembayaran kemudian disiapkan
untuk mengotorisasikan transfer dana dari akun perusahaan ke akun bank
18
penggajian. Cek gaji harus tidak disamakan dengan akun bank perusahaan
yang reguler. Selain untuk kontrol, batas ancaman kerugian perusahaan
berkurang dengan menggunakan akun penggajian yang terpisah. Hal ini juga
memudahkan untuk merekonsiliasi penggajian dan mendeteksi masalah pada
cek pembayaran.
Voucher pembayaran dan payroll register kemudian dikirimkan ke kasir. Kasir
akan me-review voucher pembayaran dan payroll register dan menyiapkan dan
menandatangani cek untuk mentransfer dana ke dalam akun bank penggajian
perusahaan. Kasir juga me-review, menandatangani dan mendistribusikan cek
pembayaran karyawan. Kasir akan mengambil kembali cek pembayaran yang
tidak di-klaim dari akun bank perusahaan. Hal ini untuk mencegah pembuatan
dan distribusi cek pembayaran palsu. Daftar dari cek pembayaran yang tidak
di-klaim dikirim ke departemen audit internal untuk investigasi lebih lanjut.
Kemudian payroll register dikembalikan ke departemen penggajian, yang akan
disimpan berdasarkan tanggal dengan time cards dan job-time tickets. Voucher
pembayaran kemudian dikirimkan ke bagian akuntansi untuk meng-update
jurnal umum.
6. Menghitung pajak dan keuntungan yang telah dibayar karyawan
Karyawan membayar pajak penghasilan dan keuntungan untuk pegawai secara
langsung. Hukum federal dan Negara bagian memerlukan agar pegawai
memberikan kontribusi dari persentase tertentu dari gaji kotor setiap karyawan
yang dipergunakan untuk dana asuransi kompensasi pengangguran. Selain itu,
karyawan juga memberikan kontribusi untuk kesehatan, cacat, dan premi
asuransi lainnya. Beberapa perusahaan menawarkan karyawan mereka rencana
19
keuntungan yang fleksibel, dimana karyawan akan ditanggung sebagian kecil
asuransi kesehatan dan kontribusi pensiun, ditambah kredit keuntungan yang
bisa digunakan untuk waktu liburan tambahan atau asuransi kesehatan
tambahan. Menyediakan jasa tambahan ini tentunya akan menambah
permintaan dari sistem penggajian itu sendiri.
7. Membayarkan pajak penghasilan dan pengurangan lain-lain
Aktivitas terakhir adalah membayar kewajiban pajak penghasilan dan
pengurangan sukarela untuk setiap karyawannya. Perusahaan harus secara
periodik menyiapkan cek atau menggunakan transfer dana elektronik untuk
membayar kewajiban pajak yang ada. Kantor pajak telah memberitahukan
kapan waktu-waktu untuk pajak-pajak tertentu. Dana sukarela dari setiap
karyawan digunakan untuk berbagai macam keuntungan, seperti rencana
simpanan gaji, yang harus dibayarkan ke organisasi yang berwenang.
2.2.6 Information Output
Berdasarkan Wilkinson et al. (2000, CD p.122), hasil informasi keluaran
dari siklus manajemen sumber daya manusia ini ada 3 (tiga), yaitu :
1. Operational Listings, Statements, and Required Reports
Salah satu dari output yang sering digunakan adalah payroll register. Berisikan
data yang berhubungan dengan setiap karyawan untuk setiap periode
pembayaran, tersusun dari pembayaran kotor hingga pembayaran bersih.
Output yang berhubungan lainnya adalah deduction register, yang
menyediakan detail potongan dari setiap pegawai. Sedangkan cumulative
earnings register menunjukkan saldo yang diperoleh hingga saat ini, dan bisa
dalam tri wulan, untuk setiap pegawainya dan untuk keseluruhan karyawan.
20
Laporan kontrol yang bervariasi juga diperlukan. Contohnya adalah laporan
yang menunjukkan nomer dari cek yang telah dicetak dan total saldo dari cek
tersebut.
Dibutuhkan juga laporan untuk pemerintah meliputi Jamsostek dan pajak
penghasilan, ditambah variasi dari lainnya. Beberapa jatuh tempo setiap tiga
bulan sekali, sementara lainnya setiap akhir tahun.
2. Inquiry Screens
Sistem on-line memungkinkan personnel clerks dan lainnya untuk melihat
data dalam catatan gaji pegawai secara individual maupun data personal.
Pegawai juga dapat mengakses data mereka sendiri. Akses lainnya
berhubungan dengan penggajian per departemen atau pendapatan kumulatif per
departemen.
3. Managerial Reports
Analisa yang bervariasi dari manajer yang berhubungan, seperti misalnya
mengenai absensi, pembayaran lembur, turn over, komisi penjualan, dan biaya
tenaga kerja tidak langsung. Salah satu analisa yang berguna adalah proyeksi
gaji setiap bulan untuk tahun depan. Laporan lainnya yang sering membantu,
antara lain :
a. Survei tarif pembayaran rata-rata untuk setiap kategori pekerjaan, bila
dibandingkan dengan perusahaan serupa.
b. Laporan kekuatan personalia, menunjukkan tingkat jumlah pegawai dan
perubahannya selama beberapa bulan terakhir.
Labor distribution summary bisa disajikan dengan dua tujuan, yaitu sebagai
dasar entry bagian akuntansi dan sebagai analisa untuk pihak manajemen.
21
Laporan tersebut menunjukkan saldo dari biaya jasa pegawai yang dikenakan
dalam beberapa akun. Bagaimanapun juga, hal tersebut bisa termasuk detail
biaya yang ditimbulkan setiap pegawai dan departemen dalam berbagai tugas.
Laporan ini juga memisahkan antara biaya tenaga kerja langsung dan tidak
langsung.
2.2.7 Data Management
Menurut Wilkinson et al. (2000, CD p. 122) files yang dibutuhkan dalam
menangani sumber daya manusia ini adalah :
1. Employee Payroll Master File
File ini menunjukkan catatan atribut dan pendapatan dari karyawan. Hasil
update-nya menunjukkan jumlah yang diterima dari cek pembayaran pada
setiap akhir periode pembayaran. Umumnya, primary dan sorting key adalah
nomer karyawan. Elemen data tambahan terdiri dari nama karyawan, nomer
jamsostek, kode departemen, klasifikasi pembayaran, tarif gaji, tarif kerja
lembur, status perkawinan, data mengenai pengurangan terhadap gaji,
pendapatan yang diterima selama setahun, gaji kotor sampai tahun berjalan,
dan gaji bersih hingga tahun berjalan.
Sangat penting untuk menjaga catatan ini dan update-nya. Ketika pegawai
menikah dan mengganti nama belakang mereka, seharusnya secara cepat hal
ini muncul dalam catatannya. Ketika pegawai baru dipekerjakan, catatan
mengenai pegawai baru sudah harus ada sebelum akhir periode pembayaran.
Selain itu, jika seorang pegawai dipecat, catatan harus tidak dihapus dahulu
hingga akhir tahun. Karena laporan akhir tahun terkadang membutuhkan data
semua karyawan yang aktif selama tahun berjalan.
22
2. Personnel Reference and History File
Sebagai sumber utama untuk data personalia dalam perusahaan, file ini
melengkapi payroll master file. File ini berisikan data nonfinansial mengenai
setiap karyawan. Seperti alamat karyawan, keahlian, jabatan pekerjaan, sejarah
pendidikan, evaluasi performa, dan bahkan status keluarga.
3. Skills File
File ini berisikan daftar persediaan keahlian yang dibutuhkan perusahaan, dan
karyawan yang memiliki keahlian tersebut. Tipe file ini membuat perusahaan
dapat mengalokasikan kandidat yang berkualitas ketika ada permintaan yang
meningkat.
4. Time Record Transaction File
Terdiri dari kopi semua time cards untuk setiap periode pembayaran. Dalam
sistem berbasis komputer file ini disimpan dalam media magnetic untuk
digunakan dalam proses penggajian.
5. Payroll Transaction File
Dalam sistem manual file ini terdiri dari kopi setiap cek pembayaran, yang
diatur menurut nomer order cek. Dalam sistem berbasis komputer file ini
disimpan dalam media magnetic mirip dengan catatan dalam file transaksi
pengeluaran cek.
6. Compensation Reference File
Berisikan daftar tarif pembayaran dan level gaji untuk berbagai macam
deskripsi pekerjaan.
23
7. Personnel Planning File
Untuk menyediakan dasar bagi perencanaan kebutuhan masa depan personalia,
perusahaan harus mengatur kumpulan informasi yang berhubungan dengan tren
masa kini dan masa lalu dan juga proyeksi. File ini menunjukkan jumlah
karyawan di setiap departemen selama 10 tahun terakhir, dan juga turnover
untuk setiap departemennya.
2.2.8 Kesempatan Penggunaan Teknologi Informasi dalam Sistem Informasi
Akuntansi Penggajian
Dalam Romney et al. (2006, p. 498) dijelaskan bahwa “proses penggajian
bisa dibuat lebih efisien dengam mengumpulkan data waktu dan kehadiran
karyawan secara elektronik dibandingkan dengan menggunakan dokumen kertas.
Hal ini dapat mengurangi waktu dan kesalahan yang potensial dalam pencatatan
manual, memverifikasi, dan pada akhirnya memasukkan data waktu dan kehadiran
karyawan. Contohnya, badge readers yang digunakan untuk mengumpulkan data
job-time untuk karyawan produksi. Data ini kemudian secara otomatis masuk ke
dalam sistem proses penggajian. Jam waktu elektronik bisa mengirimkan data
waktu dan kehadiran langsung ke dalam program proses penggajian.”
Selain itu James H. Hall (2004, p. 307) mengatakan bahwa “bentuk sistem
pembayaran gaji dengan elemen-elemen real-time memberikan banyak keuntungan
operasional, termasuk pengurangan jeda waktu antara terjadinya peristiwa dan
pencatatan, kertas kerja, dan tenaga kerja klerikal. Bentuk ini juga membawa
implikasi kontrol. Banyak pekerjaan yang dulunya dilakukan oleh tenaga manusia,
sekarang dilakukan oleh komputer harus menghasilkan catatan yang memadai
untuk verifikasi independen dan tujuan audit. Pada akhirnya, kontrol harus
24
didesain untuk melindungi akses yang tidak terotorisasi kepada data dan program
komputer.”
2.2.9 Penggunaan Outsource
Dalam Romney et al. (2006, p.503) dikatakan bahwa, “salah satu upaya
untuk mengurangi biaya, beberapa perusahaan menggunakan biro jasa penggajian
dan organisasi kepegawaian yang profesional. Biro jasa penggajian mengatur
master file penggajian untuk setiap kliennya dan melakukan aktivitas penggajian.
Sedangkan organisasi kepegawaian profesional tidak hanya melakukan proses
penggajian tetapi juga menyediakan jasa manajemen sumber daya manusia seperti
untuk administrasi kepegawaian. Ketika perusahaan menggunakan outsource,
perusahaan mengirimkan data waktu dan kehadiran bersama dengan informasi
mengenai perubahan yang ada kepada biro jasa penggajian atau organisasi
kepegawaian profesional setiap akhir periode pembayaran. Kemudian data tersebut
digunakan untuk menyiapkan cek pembayaran, laporan pendapatan, dan laporan
penggajian.
Biro jasa penggajian dan organisasi kepegawaian profesional biasanya
disenangi oleh bisnis kecil dan menengah untuk beberapa alasan :
Mengurangi biaya. Keuntungannya adalah dari skala ekonomi yang
berhubungan dengan menyiapkan cek pembayaran untuk perusahaan besar.
Mereka mengenakan biaya yang kurang dari biaya apabila penggajian
dilakukan sendiri oleh perusahaan. Biro jasa penggajian juga memberikan
keuntungan dengan mengeliminasi kebutuhan untuk mengembangkan dan
mengurus keahlian yang dibutuhkan dengan perubahan hukum pajak yang
berubah terus-menerus.
25
Memperluas keuntungan. Organisasi kepegawaian profesional memberikan
keuntungan mengurus administrasi semua klien mereka. Sehingga
perusahaan kecil dapat memiliki keuntungan yang sama dengan perusahaan
besar.
Membebaskan sumber daya komputer. Dengan menggunakan biro jasa
penggajian atau organisasi kepegawaian profesional dapat mengurangi satu
atau lebih aplikasi sistem informasi akuntasi (manajemen keuntungan dan
penggajian). Sumber daya komputer yang ada dapat digunakan untuk
meningkatkan jasa dalam area lain seperti order penjualan.
Ketika kompetisi meningkat khususnya pada keahlian dan pengetahuan
karyawan, maka efektivitas dan efisiensi dari manajemen penggajian dan fungsi
manajemen sumber daya manusia menjadi sangat penting. Outsource bisa saja
mengurangi biaya perusahaan, tetapi bagaimanapun juga perusahaan harus
mengawasi secara hati-hati, untuk memastikan bahwa sistem dari outsource telah
terintegrasi dengan data penggajian dan data pada bagian HRD untuk mendukung
manajemen efektivitas dari karyawan. “
Tetapi menurut Cushing dan Romney (1998, p.949), “ada beberapa
kerugian karena menggunakan biro jasa penggajian. Pertama, karena data
penggajian secara fisik diurus oleh biro, klien mempunyai kontrol yang lemah
terhadap data gaji tersebut, sehingga akan meningkatkan perhatian pada keamanan
dari data itu sendiri. Kedua, jika permintaan klien adalah laporan spesial,
contohnya permintaan untuk menyediakan informasi karyawan untuk kepentingan
kontrol manajemen, biro jasa akan mengenakan biaya yang terpisah untuk jasa ini.
26
Ketiga, biro jasa ini bisa lambat dalam merespon permintaan klien akan laporan
khusus atau jasa lainnya yang berbeda.”
2.3 Sistem Pengendalian Internal
2.3.1 Pengertian Sistem Pengendalian Internal
Menurut Gelinas et al. (2005, p. 237) “Pengendalian Internal adalah suatu
sistem dengan elemen terintegrasi – orang, struktur, proses, dan prosedur – yang
bertindak untuk menyediakan jaminan yang masuk akal bahwa perusahaan akan
mencapai tujuan proses bisnisnya.”
Sedangkan menurut Romney et al (2006, p. 192) “Pengendalian Internal
adalah suatu proses yang diimplementasikan oleh para direksi perusahaan,
manajemen, dan mereka yang berada di bawah arahan untuk menyediakan jaminan
yang masuk akal bahwa sasaran kontrol dari perusahaan akan tercapai.”
Menurut Bodnar et al. (2004, p. 182) “Pengendalian Internal adalah sebuah
proses – dipengaruhi oleh lingkungan direksi perusahaan, manajemen, dan
personel lainnya – yang didesain untuk menyediakan jaminan yang masuk akal
tergantung dari pencapaian tujuan dari kategori : (a) reliabilitas dari pelaporan
keuangan, (b) efektivitas dan efisiensi dari operasi, dan (c) pemenuhan hukum dan
aturan yang berlaku.”
2.3.2 Komponen Sistem Pengendalian Internal
Berdasarkan Wilkinson et al. (2000, p. 235) ada lima komponen dalam
sistem pengendalian intern antara lain sebagai berikut :
27
1. Control Environment
Inti dari semua bisnis adalah orangnya – sifat masing-masing individu,
termasuk integritas, nilai etika, dan kemampuan – lingkungan dimana mereka
beroperasi. Mereka adalah alat yang mengendalikan organisasi dan merupakan
dasar dari segala sesuatu.
2. Control Activities
Prosedur dan kebijakan pengendalian harus ditetapkan dan dijalankan untuk
membantu meyakinkan bahwa tindakan yang dilakukan oleh pihak manajemen
untuk menanggulangi resiko dan untuk mencapai tujuan organisasi terlihat
efektif.
3. Risk Assessment
Perusahaan harus berhati-hati terhadap resiko yang dihadapi. Perusahaan harus
membentuk suatu tujuan, yang digabungkan dengan penjualan, produksi,
pemasaran, keuangan, dan aktivitas lainnya sehingga perusahaan dapat
beroperasi dengan baik. Perusahaan juga harus menyusun sebuah mekanisme
untuk mengidentifikasi, menganalisis dan mengatur resiko-resiko yang
berhubungan dengan masing-masing bagian.
4. Information and Communication
Yang mengelilingi aktivitas pengendalian adalah sistem informasi dan
komunikasi. Mereka memungkinkan orang-orang dari perusahaan menerima
dan saling bertukar informasi yang dibutuhkan untuk memimpin, mengatur,
dan mengontrol operasi yang ada.
28
5. Monitoring
Tujuan dari monitoring ini adalah untuk menilai kualitas Internal Control
Structure overtime dengan memperhatikan aktivitas yang terus-menerus terjadi
dan evaluasi terpisah yang dilakukan. Memonitor aktivitas yang terus-menerus
terjadi meliputi supervision untuk karyawan dilakukan setiap hari, dan aktivitas
memonitor terpisah meliputi audit Internal Control Structure dan accounting
records dilakukan secara periodik.
2.3.3 Sistem Pengendalian Internal Penggajian
2.3.3.1 Tujuan Sistem Pengendalian Internal Penggajian
Menurut Wilkinson et al. (2000, CD p. 126) tujuan dari sistem
pengendalian internal penggajian adalah untuk memastikan bahwa :
a. Semua jasa yang telah dilakukan oleh karyawan, termasuk jam kerja
pada tugas tertentu seperti pekerjaan produksi, dicatat secara akurat dan
tepat waktu.
b. Semua karyawan dibayar berdasarkan kontrak kerja atau kebijakan
lainnya.
c. Semua cek pembayaran dihitung secara tepat, dengan tunjangan dan
potongan gaji yang terotorisasi.
d. Semua biaya untuk jasa karyawan didistribusikan ke akun yang sesuai
dengan kebijakan akuntansi.
e. Semua laporan yang dibutuhkan disiapkan secara lengkap dan akurat
sesuai dengan hukum dan aturan yang berlaku serta diserahkan tepat
waktu.
29
2.3.3.2 Ancaman dalam Sistem Pengendalian Internal Penggajian
Menurut Romney et al. (2006, p.504) ada setidaknya 8 (delapan)
ancaman dalam sistem informasi penggajian itu sendiri, yaitu :
1. Mempekerjakan karyawan yang tidak berkualitas dan suka mencuri
Mempekerjakan karyawan yang tidak berkualitas bisa meningkatkan
biaya produksi, dan mempekerjaan karyawan yang suka mencuri dapat
menyebabkan pencurian terhadap aset. Kedua masalah ini dapat diatasi
dengan melakukan prosedur mempekerjakan karyawan yang tepat.
2. Pelanggaran terhadap hukum tenaga kerja
Pemerintah akan mengenakan hukuman pada perusahaan yang
melanggar ketetapan hukum tenaga kerja. Organisasi bisa menjadi
subjek dari tuntutan sipil karena diskriminasi tenaga kerja. Untuk kasus
ini, prosedur kontrol yang tepat adalah mendokumentasikan semua
tindakan secara hati-hati dalam mengiklankan, merekrut, dan
mempekerjakan pegawai baru dan pemecatan karyawan yang dapat
digunakan sebagai bukti terhadap aturan pemerintah.
3. Perubahan yang tidak terotorisasi terhadap master file penggajian
Perubahan yang tidak terotorisasi dapat menyebabkan peningkatan
biaya jika gaji, komisi, dan tarif lainnya digunakan untuk menentukan
kompensasi karyawan disalahgunakan. Masalah ini akan menghasilkan
laporan yang tidak akurat pada biaya tenaga kerja, yang akan membawa
kita untuk mengambil keputusan yang salah. Pembagian tugas yang
tepat adalah kunci prosedur kontrol yang tepat untuk mengatasi
masalah ini.
30
4. Ketidak akuratan data waktu
Ketidak akuratan dari catatan waktu dan kehadiran bisa menimbulkan
meningkatnya biaya tenaga kerja dan membuat laporan biaya tenaga
kerja yang salah. Lebih dari itu, ketidak akuratan bisa menyakiti moral
karyawan (jika cek pembayaran terlambat atau hilang) atau hasil
pembayaran untuk jasa tenaga kerja tidak dibuat. Otomatisasi bisa
mengurangi masalah ketidak akuratan dalam data waktu. Badge readers
dan barcode scanners bisa digunakan untuk mengumpulkan data waktu
kehadiran.
Pembagian tugas yang tepat bisa mengurangi ketidak akuratan yang
disengaja. Semua perubahan harus mendapat persetujuan supervisor
yang tepat. Data time clock, bisa juga digunakan untuk merekonsiliasi
data job-time ticket untuk kepentingan manajerial dan pembiayaan.
5. Ketidak akuratan proses penggajian
Kompleksitas proses penggajian, khususnya kepentingan berbagai
macam pajak membuat proses ini mudah terjadi kesalahan. Kesalahan
dapat menyakiti moral karyawan, khususnya jika cek pembayaran
terlambat. Memproses laporan dan catatan biaya gaji yang salah dapat
mengakibatkan kegagalan untuk mengirimkan jumlah pajak
penghasilan yang tepat kepada pemerintah. Kegagalan dalam
menghitung secara tepat tunjangan-tunjangan dan potongan gaji dan
membayarkan ke pihak yang berwenang juga dapat memberikan
hukuman bagi perusahaan.
31
6. Pencurian atau Kecurangan distribusi cek pembayaran
Ancaman lainnya adalah pencurian cek pembayaran atau penerbitan cek
pembayaran untuk karyawan yang sudah tidak bekerja lagi dalam
perusahaan. Hal ini dapat menimbulkan peningkatan biaya dan
kerugian terhadap kas. Hal ini dapat diatasi dengan prosedur kontrol
sebagai berikut :
- Akses ke cek penggajian kosong dan ke mesin penanda tangan
harus terbatas.
- Semua cek pembayaran harus diberi nomer urut dan secara periodic
harus dicek.
- Kasir harus menandatangani semua cek pembayaran hanya ketika
cek tersebut didukung dengan dokumentasi yang tepat (payroll
register dan disbursement voucher).
- Seseorang yang independen dari proses penggajian harus
merekonsiliasi akun bank penggajian.
7. Kerugian, Perubahan, dan Pengungkapan yang tidak terotorisasi
terhadap data
Database penggajian adalah sumber daya yang berharga yang harus
dilindungi dari kerugian maupun perusakan. Prosedur back-up dan
disaster-recovery menyediakan kontrol terbaik untuk mengurangi
resiko dari kerugian data penggajian. File labels untuk internal dan
eksternal harus digunakan untuk memastikan bahwa database tidak
dengan sengaja dihapus atau diproses dengan program yang salah. Dua
32
kopi back-up dari master file penggajian dan files transaksi sekarang
harus dibuat.
8. Performa yang jelek
Hal yang dimaksud disini adalah tidak efisiennya dan tidak efektifnya
performa dari karyawan. Menyiapkan dan me-review laporan performa
dapat mengatasi masalah ini. Mengawasi secara seksama produktivitas
karyawan adalah penting untuk memastikan bahwa mereka benar-benar
bekerja pada saat jam kerja. Dan memastikan bahwa karyawan tidak
menggunakan sumber daya komputer perusahaan untuk hal-hal lain.
2.3.3.3 Kontrol dalam Sistem Pengendalian Internal Penggajian
Menurut James H. Hall (2004, p.302) dalam sistem pengendalian
internal penggajian mempunyai kontrol meliputi :
1. Otorisasi Transaksi
Formulir tindakan personel adalah untuk menyediakan kontrol otorisasi
yang penting dalam sistem penggajian. Dokumen ini penting untuk
mencegah penipuan penggajian dengan mengidentifikasi karyawan
yang terotorisasi. Bentuk penipuan yang umum adalah memasukkan
time cards ke gaji karyawan yang sudah tidak bekerja lagi dalam
perusahaan. Formulir tindakan personel ini mengizinkan departemen
penggajian untuk mengatur daftar karyawan, yang kemudian
dicocokkan dengan time card.
2. Pembagian Tugas
Fungsi timekeeping harus terpisah dari fungsi personalia. Departemen
personalia menyediakan gaji dengan informasi tarif gaji. Mungkin saja
33
terdapat range antar tarif gaji tergantung dari pengalaman, klasifikasi
pekerjaan, senioritas, jasa. Untuk mencegah penipuan informasi ini
harus dihasilkan dari sumber yang independent yaitu departemen
personalia.
3. Supervisi
Area lain yang beresiko adalah timekeeping. Terkadang beberapa
karyawan akan “clock in” untuk karyawan lain yang datang terlambat
atau bahkan tidak datang. Supervisor harus mengobservasi proses
clocking dan merekonsiliasi time cards dengan kehadiran aktual.
4. Catatan akuntansi
Jejak audit untuk penggajian meliputi dokumen beikut :
a. Time cards, job tickets, dan disbursement vouchers.
b. Informasi jurnal, yang datang dari ringkasan distribusi tenaga kerja
dan payroll register.
c. Akun buku besar pembantu, yang mengandung catatan karyawan
dan akun biaya yang bervariasi.
d. Akun jurnal umum : kontrol penggajian, kas, payroll clearing
(imprest account).
5. Kontrol akses
Aset yang berhubungan dengan penggajian adalah tenaga kerja dan kas.
Keduanya bisa disalahgunakan melalui akses yang tidak tepat ke dalam
catatan akuntansi. Individu yang tidak jujur dapat menyalahgunakan
total time cards yang telah terjadi dan kemudian menggelapkan kas.
34
Mengontrol akses ke sumber dokumen dan catatan dalam sistem
penggajian adalah penting.
6. Verifikasi independen
Beberapa contoh verifikasi independent dalam sistem penggajian :
a. Verifikasi waktu : sebelum mengirimkan time cards ke bagian
penggajian, supervisor harus memverifikasi keakuratan dan
menandatanganinya.
b. Paymaster : menggunakan paymaster untuk mendistribusikan cek
pembayaran membantu memverifikasi karyawan yang masih ada.
c. Utang dagang : bagian utang dagang memverifikasi ketepatan
payroll register sebelum membuat disbursement voucher untuk
mengirimkan dana ke dalam imprest account.
7. Jurnal umum : departemen jurnal umum menyediakan verifikasi untuk
semua proses dengan merekonsiliasi laporan distribusi tenaga kerja dan
disbursement voucher penggajian.
2.3.3.4 Kontrol Aplikasi dalam Sistem Pengendalian Internal
Penggajian
Menurut Wilkinson et al (2000, CD p.127) terdapat beberapa
prosedur kontrol yang dapat digunakan dalam transaksi jasa dan catatan
karyawan :
1. Menyiapkan dokumen yang diberi nomer dan dirancang dengan baik
yang berhubungan dengan pembayaran gaji dan pengeluaran kas. Juga,
mencetak ulang time cards, dan job time tickets yang dapat digunakan,
dengan nama dan nomer karyawan.
35
2. Memvalidasikan data pada catatan waktu ketika mereka dimasukkan ke
dalam proses dengan melakukan cek seperti cek validitas pada nomer
karyawan, cek limit dalam waktu bekerja, cek field pada kunci
identifikasi dan data saldo, dan cek hubungan nomer karyawan dengan
departemen yang berhubungan.
3. Memvalidasi hasil data yang diproses dengan pengecekan seperti sign
check dan cross-foot balance check. Field net pay untuk setiap cek
pembayaran harus diverifikasi dengan pengecekan sebelumnya untuk
melihat tanda positif dan dengan pengecekan selanjutnya untuk melihat
saldo sama dengan gross pay dikurangi semua pengurangan yang ada.
4. Memperbaiki error yang terdeteksi selama meng-entry data atau proses
secepatnya dengan menggunakan prosedur perbaikan error. Bagian dari
prosedur ini melibatkan pencetakan pengecualian yang sesuai dan
laporan ringkasan selama perbaikan berjalan. Proses cek pembayaran
menjadi tertunda hingga semua data transaksi yang error dan
ketidaksesuaian telah diperbaiki.
5. Menerbitkan formulir aksi personalia untuk karyawan baru dan
perubahan tarif gaji sebagai dasar otorisasi yang valid.
6. Merekonsiliasi jam yang direfleksikan dari job-time tickets (ketika
digunakan) dengan waktu yang ditunjukkan pada kartu waktu
kehadiran.
7. Menghitung dahulu total batch control dalam jam kerja, yang
direfleksikan dalam time cards dan dengan saldo net pay, yang terdapat
dalam payroll register. Membandingkan total batch ini dengan total
36
yang terkomputerisasi selama persiapan cek pembayaran dan selama
meng-entry pada employee payroll master file.
8. Membuat cek pembayaran pada account bank yang berbeda dari
account bank perusahaan.
9. Menahan cek pembayaran yang kosong untuk mencatat semua nomer
cek pembayaran.
10. Melacak cek pembayaran yang tidak diklaim untuk memverifikasi
pemilik sebenarnya dari cek pembayaran tersebut.
11. Me-review preliminary payroll register sebelum cek pembayaran
dicetak untuk menentukan bahwa semua error telah diperbaiki.
12. Mencetak laporan rangkuman gaji periodic untuk meningkatkan jejak
audit.
Sebagai tambahan, semua kontrol yang berlaku untuk pengeluaran kas juga
berlaku untuk penerbitan cek pembayaran.
2.4 Pajak Penghasilan Pasal 21
Undang-undang No. 7 Tahun 1984 tentang Pajak Penghasilan (PPh)
berlaku sejak 1 Januari 1984. Undang-undang ini telah beberapa kali mengalami
perubahan dan terakhir kali diubah dengan Undang-undang No. 17 Tahun 2000.
Ketentuan Pasal 21 UU PPh mengatur tentang pembayaran pajak dalam tahun
berjalan melalui pemotongan pajak atas penghasilan yang diterima atau diperoleh
oleh Wajib Pajak orang pribadi dalam negeri sehubungan dengan pekerjaan,
jasa, dan kegiatan.
37
2.4.1 Wajib Pajak Penghasilan Pasal 21
Penerima penghasilan yang dipotong PPh pasal 21 adalah :
1. Pejabat Negara
2. Pegawai Negeri Sipil (PNS)
3. Pegawai
4. Pegawai Tetap
5. Pegawai dengan status Wajib Pajak Luar Negeri
6. Pegawai Lepas
7. Penerima Pensiun
8. Penerima Honorarium
9. Penerima Upah
2.4.2 Objek Pajak Pajak Penghasilan Pasal 21
Penghasilan yang dikenakan pemotongan PPh pasal 21 adalah :
a. Penghasilan yang diterima atau diperoleh pegawai atau penerima pensiun
secara teratur berupa gaji, uang pensiun bulanan, upah, honorarium
(termasuk honorarium anggota dewan komisaris atau anggota dewan
pengawas), premi bulanan, uang lembur, uang sokongan, uang tunggu,
uang ganti rugi, tunjangan isteri, tunjangan anak, tunjangan kemahalan,
tunjangan jabatan, tunjangan khusus, tunjangan transpot, tunjangan pajak,
tunjangan iuran pensiun, tunjangan pendidikan anak, bea siswa, premi
asuransi yang dibayar pemberi kerja, dan penghasilan teratur lainnya
dengan nama apapun.
b. Penghasilan yang diterima atau diperoleh pegawai, penerima pensiun atau
mantan pegawai secara tidak teratur berupa jasa produksi, tantiem,
38
gratifikasi, tunjangan cuti, tunjangan hari raya, tunjangan tahun baru,
bonus, premi tahunan, dan penghasilan sejenis lainnya yang sifatnya tidak
tetap.
c. Upah harian, upah mingguan, upah satuan, dan upah borongan yang
diterima atau diperoleh pegawai tidak tetap atau tenaga kerja lepas, serta
uang saku harian atau mingguan yang diterima peserta pendidikan,
pelatihan atau pemagangan yang merupakan calon pegawai.
d. Uang tebusan pensiun, uang Tabungan Hari Tua atau Jaminan Hari Tua,
uang pesangon dan pembayaran lain sejenis sehubungan dengan pemutusan
hubungan kerja.
e. Honorarium, uang saku, hadiah atau penghargaan dengan nama dan dalam
bentuk apapun, komisi, bea siswa, dan pembayaran lain sebagai imbalan
sehubungan dengan pekerjaan, jasa, dan kegiatan yang dilakukan oleh
Wajib Pajak orang pribadi dalam negeri.
f. Gaji, gaji kehormatan, tunjangan-tunjangan lain yang terkait dengan gaji
dan honorarium atau imbalan lain yang bersifat tidak tetap yang diterima
oleh Pejabat Negara, Pegawai Negeri Sipil serta uang pensiun dan
tunjangan-tunjangan lain yang sifatnya terkait dengan uang pensiun yang
diterima oleh pensiunan termasuk janda atau duda dan atau anak-anaknya.
2.4.3 Pemotong Pajak Penghasilan Pasal 21
Menurut Mardiasmo (2003, p. 144) berikut ini adalah termasuk pemotong
pajak PPh pasal 21 :
39
1. Pemberi kerja yang membayar gaji, upah, honorarium, tunjangan, dan
pembayaran lain dengan nama apapun, sebagai imbalan sehubungan dengan
pekerjaan atau jasa yang dilakukan oleh pegawai atau bukan pegawai.
2. Bendaharawan Pemerintah yang membayarkan gaji, upah, honorarium,
tunjangan, dan pembayaran lain dengan nama apapun, sebagai imbalan
sehubungan dengan pekerjaan atau jabatan, jasa, dan kegiatan.
3. Dana pensiun, PT Taspen, PT Jamsostek, badan penyelenggara jaminan social
tenaga kerja lainnya, serta badan-badan lain yang membayar uang pensiun,
Tabungan Hari Tua atau Tunjangan Hari Tua (THT).
4. Perusahaan, badan dan bentuk usaha tetap yang membayar honorarium atau
pembayaran lain sebagai imbalan sehubungan dengan kegiatan dan jasa,
termasuk jasa tenaga ahli dengan status Wajib Pajak dalam negeri yang
melakukan pekerjaan bebas dan bertindak untuk dan atas namanya sendiri,
bukan atas nama persekutuannya.
5. Perusahaan, badan dan bentuk usaha tetap yang membayar honorarium atau
pembayaran lain sebagai imbalan sehubungan dengan kegiatan dan jasa yang
dilakukan oleh orang pribadi dengan status Wajib Pajak Luar Negeri.
6. Yayasan (termasuk yayasan yang bergerak di bidang kesejahteraan, rumah
sakit, pendidikan, kesenian, olahraga, kebudayaan), lembaga, kepanitian,
asosiasi, perkumpulan, dan organisasi dalam bentuk apapun dalam segala
kegiatan sebagai pembayar gaji, upah, honorarium, atau imbalan dengan nama
apapun sehubungan dengan pekerjaan, jasa, dan kegiatan yang dilakukan oleh
orang pribadi.
40
7. Perusahaan, badan, dan bentuk usaha tetap, yang membayarkan honorarium
atau imbalan lain kepada peserta pendidikan, pelatihan, dan pemagangan.
8. Penyelenggara kegiatan (termasuk badan pemerintah, organisasi termasuk
organisasi internasional, perkumpulan, orang pribadi serta lembaga lainnya
yang menyelenggarakan kegiatan) yang membayar honorarium, hadiah atau
penghargaan dalam bentuk apapun kepada Wajib Pajak orang pribadi dalam
negeri berkenaan dengan suatu kegiatan.
2.4.4 Penghasilan Tidak Kena Pajak
Besarnya Penghasilan Kena Pajak dari seorang pegawai dihitung
berdasarkan penghasilan netonya dikurangin dengan Penghasilan Tidak Kena
Pajak (PTKP). Berdasarkan Peraturan Menteri Keuangan Nomor
137/PMK03/2005 tanggal 30 Desember 2005, pemerintah melakukan penyesuaian
besarnya PTKP yang diberlakukan sejak tahun pajak 2006 menjadi :
1. Rp. 13.200.000,00 (tiga belas juta dua ratus ribu rupiah) untuk diri Wajib Pajak
Orang Pribadi.
2. Rp. 1.200.000,00 (satu juta dua ratus ribu rupiah) tambahan untuk Wajib Pajak
yang kawin.
3. Rp. 13.200.000,00 (tiga belas juta dua ratus ribu rupiah) tambahan untuk
seorang istri yang penghasilannya digabung dengan penghasilan suami.
4. Rp. 1.200.000,00 (satu juta dua ratus ribu rupiah) tambahan untuk setiap
anggota keluarga sedarah dan keluarga semenda dalam garis keturunan lurus
serta anak angkat yang menjadi tanggungan sepenuhnya, paling banyak 3 (tiga)
orang untuk setiap keluarga.
41
2.4.5 Biaya Jabatan dan Biaya Pensiun
Biaya jabatan adalah biaya untuk mendapatkan, menagih, dan memelihara
penghasilan yang besarnya 5% dari penghasilan bruto, setinggi-tingginya Rp.
1.296.000,- setahun atau Rp. 108.000,- sebulan.
Biaya pensiun adalah biaya untuk mendapatkan, menagih, dan memelihara
uang pensiun yang besarnya 5% dari penghasilan bruto berupa uang pensiun
setinggi-tingginya Rp. 432.000,- setahun atau Rp. 36.000,- sebulan.
2.4.6 Tarif Pajak Penghasilan Pasal 21
Sesuai dengan pasal 17 Undang-undang PPh, besarnya tarif pajak
penghasilan bagi Wajib Pajak orang pribadi dalam negeri dapat dilihat dalam tabel
2.1 berikut ini :
Tabel 2.1 Tarif Pajak Penghasilan Pasal 21
Lapisan Penghasilan Kena Pajak Tarif Pajak
Sampai dengan Rp. 25.000.000,00 5 %(lima persen)
Diatas Rp. 25.000.000,00 s.d. Rp. 50.000.000,00 10 %(sepuluh persen)
Diatas Rp. 50.000.000,00 s.d. Rp. 100.000.000,00 15 %(lima belas persen)
Diatas Rp. 100.000.000,00 s.d. Rp. Rp. 200.000.000,00 25 %(dua puluh lima persen)
Diatas Rp. 200.000.000,00 35 %(tiga puluh lima persen)
42
2.4.7 Cara Menghitung Pajak Penghasilan Pasal 21
Cara Menghitung PPh Pasal 21 atas Penghasilan Teratur Pegawai
Tetap
1. a. Untuk menghitung PPh Pasal 21 atas penghasilan pegawai tetap, terlebih
dahulu dicari seluruh penghasilan bruto yang diterima atau diperoleh
selama sebulan, yang meliputi seluruh gaji, segala jenis tunjangan dan
pembayaran teratur lainnya, termasuk uang lembur (overtime) dan
pernbayaran sejenisnya.
b. Untuk perusahaan yang masuk program Jamsostek, premi Jaminan
Kecelakaan Kerja (JKK), premi Jaminan Kematian (JK) dan premi Jaminan
Kecelakaan (JPK) yang dibayar oleh pemberi kerja penghasilan bagi
pegawai. Ketentuan yang sama diberlakukan juga bagi premi asuransi
kesehatan, asuransi kecelakaan kerja, asuransi jiwa, asuransi dwiguna, dan
asuransi bea siswa yang dibayarkan oleh pemberi kerja untuk pegawai
kepada perusahaan asuransi lainnya. Dalam menghitung PPh Pasal 21,
premi tersebut digabungkan dengan penghasilan bruto yang dibayarkan
oleh pemberi kerja kepada pegawai.
c. Selanjutnya dihitung jumlah penghasilan neto sebulan yang diperoleh
dengan cara mengurangi penghasilan bruto sebulan dengan biaya jabatan,
iuran pensiun, iuran Jaminan Hari Tua, iuran Tunjangan Hari Tua yang
dibayar sendiri oleh pegawai yang bersangkutan melalui pemberi kerja
kepada Dana Pensiun yang pendiriannya telah disahkan oleh Menteri
Keuangan atau kepada Badan Penyelenggara Program Jamsostek.
43
2. a. Selanjutnya dihitung penghasilan neto setahun, yaitu jumlah penghasilan
neto setulan dikalikan 12.
b. Dalam hal seorang pegawai tetap dengan kewajiban pajak subjektifnya
sebagai Wajib Pajak dalam negeri sudah ada sejak awal tahun, tetapi mulai
bekerja setelah bulan Januari, maka penghasilan neto setahun dihitung
dengan mengalikan penghasilan neto sebulan dengan banyaknya bulan
sejak pegawai yang bersangkutan mulai bekerja sampai dengan bulan
Desember dan menambahkan hasilnya dengan penghasilan neto yang
diperoleh dalam masa-masa sefcelumnya dalam tahun yang sama yang
diperoleh dari pemberi kerja sebelumnya sesuai dengan yang tercantum
dalam bukti pemotongan PPh Pasal 21 (Form 1721 - A1), jika pegawai
yang bersangkutan sebelumnya bekerja pada pemberi kerja lain.
c. Selanjutnya dihitung Penghasilan Kena Pajak sebagai dasar penerapan tarif
Pasal 17 UU PPh, yaitu sebesar Penghasilan neto setahun pada huruf a atau
b di atas, dikurangi dengan PTKP.
d. Setelah diperoleh PPn terutang dengan menerapkan tarif Pasal 17 UU PPh
terhadap Penghasilan Kena Pajak sebagaimana dimaksud pada huruf c,
selanjutnya dihitung PPh Pasal 21 sebulan, yang harus dipotong dan atau
disetor ke kas negara, yaitu sebesar :
- jumlah PPh Pasal 21 setahun atas penghasilan sebagaimana dimaksud
pada huruf a dibagi dengan 12; atau
- jumlah PPh Pasal 21 setahun setelah dikurangi dengan PPh yang
terutang dan telah diperhitungkan pada pemberi kerja sebelumnya
sesuai yang tercantum dalam bukti pemotongan PPh Pasal 21, jika
44
pegawai yang bersangkutan sebelumnya bekerja pada pemberi kerja
lain, dibagi dengan banyaknya bulan pegawai yang bersangkutan
bekerja, atas penghasilan sebagaimana dimaksud dalam huruf b.
3. a. Apabila pajak yang terutang oleh pemberi kerja tidak didasarkan atas
masa gaji sebulan, maka untuk penghitungan PPh Pasal 21, jumlah
penghasilan tersebut terlebih dahulu dijadiken penghasilan bulanan
dengan mempergunakan faktor perkalian sebagai berikut :
1. Gaji untuk masa seminggu dikalikan dengan 4;
2. Gaji untuk masa sehari dikalikan dengan 26.
b. Selanjutnya dilakukan penghitungan PPh Pasal 21 sebulan dengan cara
seperti dalam angka 2 di atas.
c. PPh Pasal 21 atas penghasilan seminggu dihitung berdasarkan PPh
Pasal 21 sebulan dalam huruf b dibagi 4, sedangkan PPh Pasal 21 atas
penghasilan sehari dihitung berpasarksn PPh Pasal 21 sebulan dalam
huruf b dibagi 26.
4. Jika kepada pegawai di samping dibayar gaji bulanan juga dibayar
kenaikan gaji yang berlaku surut (rapel), misalnya untuk 5 (lima) bulan,
maka penghitungan PPh Pasal 21 atas rapel tersebut adalah sebagai berikut
:
a. rapel dibagi dengan banyaknya bulan perolehan rapel tersebut (dalam
hal ini 5 bulan);
b. hasil pembagian rapel tersebut ditambahkan pada gaji setiap bulan
sebelum adanya kenaikan gaji, yang sudah dikenakan pemotongan PPh
Pasal 21;
45
c. PPh Pasal 21 atas gaji urtuk bulan-bulan setelah ada kenaikan, dihitung
kembali atas dasar gaji baru setelah ada kenaikan;
d. PPh Pasal 21 terutang atas tambahan gaji untuk bulan-bulan dimaksud
adalah selisih antara jurHah pajak yang dihitung berdasarkan huruf c
dikurangi jumlah pajak yang telah dipotong sebagaimana disebut pada
huruf b.
5. Apabila kepada pegawai di samping dibayar gaji yang didasarkan masa gaji
kurang dari satu bulan juga dibayar gaji lain mengenai masa yang tebih
lama dari satu bulan (rapel) seperti tersebut dalam angka 4, maka cara
penghitungan PPh Pasal 21 nya adalah sesuai dengan yang telah ditetapkan
datam angka 4 dengan memperhatikan ketentuan dalam angka 3.
Cara Menghitung PPh Pasal 21 atas Penghasilan Tidak Teratur
1. Apabila kepada pegawai tetap diberikan jasa produksi, tantiem, gratifikasi,
bonus, premi, tunjangan hari raya, dan penghasilan lain semacam itu yang
sifatnya tidak tetap dan biasanya dibayarkan sekali setahun, maka PPh
Pasal 21 dihitljng dan dipotong dengan cara sebagai berikut :
a. dihitung PPh Pasal 21 atas penghasilan teratur yang disetahunkan
ditambah dengan penghasilan tidak teratur berupa tantiem, jasa
produksi, dan sebagainya.
b. dihitung PPh Pasal 21 atas penghasilan teratur yang disetahunkan tanpa
tantiem, jasa produksi, dan sebagainya.
46
c. selisih antara PPh Pasal 21 menurut penghitungan huruf a dan huruf b
adalah PPh Pasal 21 atas penghasilan tidak teratur berupa tantiem, jasa
produksi, dan sebagainya.
2. Dalam hal pegawai tetap yang kewajiban pajak subyektifnya sudah ada
sejak awal tahun, namun baru mulai bekerja setelah bulan Januari, maka
PPh Pasal 21 atas penghasilan yang tidak teratur tersebut dihitung dengan
cara sebagaimana pada butir 1 dengan memperhatikan ketentuan mengenai
Penghitungan PPh Pasal 21 Bulanan atas Penghasilan Teratur pada butir
A.1. angka 2 huruf b, c dan d di atas.
2.5 Object Oriented Analysis and Design
2.5.1 Object
Berdasarkan Mathiassen et al. (2000, p. 4) pengertian object adalah suatu
entitas yang memiliki identity, state, dan behavior.
Sedangkan menurut Lau (2001, p.1) object merupakan abstraksi baik untuk
hal-hal konseptual maupun fisik. Objek memiliki keadaan dan identitas yang
melekat. Objek mencapai tingkah laku tertentu melalui suatu kumpulan operasi
yang didefinisikan diawal, yang mana dapat masuk atau merubah keadaannya.
2.5.2 System Definition
Menurut Mathiassen et al. (2000, p.24), “System definition adalah
merupakan suatu gambaran secara umum dari sistem yang berjalan dalam
perusahaan tersebut. Dan yang kita bahas dalam skripsi ini adalah sistem
penggajian.
47
2.5.3 Pengertian Object Oriented Analysis and Design
Mathiassen et al. (2000, p.9) menyatakan bahwa Object Oriented Analysis
and Design merupakan suatu metode yang berguna untuk mengembangkan sistem
yang mempunyai model problem domain dinamis seperti sebuah elemen kunci dan
kemudian mencari pemecahan masalah yang logical yang berbasiskan objek.
2.5.4 Pengertian Object Oriented Analysis
Berdasarkan Mathiassen et al. (2000, p. 8) mengemukan bahwa Object
Oriented Analysis merupakan perpaduan antara fungsi dan orientasi data yang
meliputi sebuah analisis dari entitas state untuk merubah hasil dari event di
application domain yang lebih berfokus pada object, state, dan behavioral pattern
yang dideskripsikan secara logis Object Oriented Analysis dibagi menjadi 3, yaitu :
2.5.4.1 System Choice
Yaitu sebuah proyek perkembangan yang bermula dari
sekumpulan ide-ide tentang sistem yang diinginkan, analisis awal atau
urutan-urutan keputusan yang sudah dibuat menjadi langkah pertama untuk
mendapatkan sistem yang diinginkan. Meneliti kembali dan menimbang-
nimbang adalah pekerjaan utama dalam pengembangan sistem.
Mengacu pada Mathiassen et al. (2000, p.25) rich picture adalah
sebuah gambaran informal yang digunakan oleh pengembang sistem untuk
menyatakan pemahaman mereka terhadap situasi dari sistem sedang
berlangsung. Rich picture juga dapat digunakan sebagai alat yang berguna
untuk memfasilitasi komunikasi yang baik antara pengguna dalam sistem.
Rich picture difokuskan pada aspek-aspek penting dari sistem
tersebut, yang ditentukan sendiri oleh pengembang sistem dengan
48
mengunjungi perusahaan untuk melihat bagaimana perusahaan tersebut
beroperasi, berbicara, dengan banyak orang untuk mengetahui apa yang
harus terjadi atau seharusnya terjadi, dan mungkin melakukan beberapa
wawancara formal.
Kriteria FACTOR terdiri dari 6 elemen yaitu :
Functionality : fungsi dari suatu sistem yang mendukung fokus
application domain.
Application domain : bagian dari organisasi yang mengadministrasi,
memonitor atau mengontrol problem domain.
Condition : dalam kondisi seperti apa sistem akan dibangun dan
digunakan.
Technology : teknologi yang digunakan untuk menghasilkan sistem dan
dengan teknologi seperti apa sistem akan berjalan.
Objects : objek utama dalam problem domain.
Responsibility : tanggung jawab keseluruhan sistem yang berhubungan
dengan konteks.
2.5.4.2 Problem Domain Analysis
Mengacu pada Mathiassen et al. (2000, p.45), problem domain
adalah bagian dari konteks yang diatur, dimonitor atau dikendalikan oleh
sistem. Tujuan dari problem domain analisis adalah untuk
mengidentifikasikan dan membuat model dari problem domain. Tujuan dari
aktivitas ini adalah membangun sebuah model yang dapat digunakan untuk
merancang dan mengimplementasikan sebuah sistem yang dapat
49
memproses, berkomunikasi dan menyajikan informasi mengenai problem
domain. Hasil dari problem domain analysis adalah membuat class
diagram. Gambar 2.1 berikut ini adalah contoh class diagram.
-Kd_karyawan : String-Nama : String-Alamat : String-No_telp : String
Karyawan
-Kd_Staff_Penjualan : String
Staff Penjualan-Kd_Staff_Keuangan : String
Staff Keuangan
-Kd_Staff_Pembelian : String
Staff Pembelian-Kd_Staff_Produksi : String
Staff Produksi
-Tanggal : Date-No_Faktur_Pemesanan : String-Kd_Staff_Penjualan : String-Kd_Pelanggan : String-Nama_Pelanggan : String-Kd_Barang : String-Nama_Barang : String-Kuantitas : Long-Harga_Barang : Long
Faktur Pemesanan
1
1..*
-Kd_Barang : String-Nama_Barang : String-Harga_Barang : Long-Jumlah : Long
Barang
1
1..*-Kd_Pelanggan : String-Nama_Pelanggan : String-Alamat_Pelanggan : String-Telp_Pelanggan : String-No_Kartu_Kredit : String-Sisa_Utang : Long
Pelanggan
1..*
1
-Tanggal : Date-No_Faktur_Penjualan : String-Kd_Staff_Keuangan : String-No_Faktur_Pemesanan : String-Kd_Pelanggan : String-Nama_Pelanggan : String-Kd_Barang : String-Nama_Barang : String-Kuantitas : Long-Harga_Barang : Long-Total : Long-Jumlah_Bayar : Long-No_KartuKredit : Long-Sisa_Utang : Long
Faktur Penjualan
1
1..*
1
1
1..*
1
-Tanggal : Date-Nomer_surat : String-Kd_Staff_Pembelian : String-Email_Supplier : String-Nama_Supllier : String-Alamat_Supplier : String-Telp_Supplier : String-Nama_Bahan_Baku : String-Jumlah_pesan : Long
Surat Order
1
1..*
-Kd_Bahan_Baku : String-Nama_Bahan_Baku : String-Harga_Bahan_Baku : String-Jumlah_Bahan_baku : Long-Nama_Supplier : String-Email_Supplier : String-Alamat_Supplier : String-Telp_Supplier : String
Bahan Baku
1
1
-Tanggal : Date-No_Tanda_Terima : String-Kd_Staff_Pembelian : String-Kd_Staff_Produksi : String-Nama_Staff_Produksi : String-No_Nota : String-Kd_Bahan_Baku : String-Nama_Bahan_Baku : String-Jumlah_Bahan_Baku : Long
Tanda Terima
1
1
1
1..*
1
1..*
-Tanggal : Date-No_Surat_Permintaan_Produksi : String-Kd_Staff_Pembelian : String-Kd_Barang : String-Nama_Barang : String-Jumlah_Produksi : Long
SuratPermintaanProduksi
1
1..*1
1
-Tanggal : Date-No_Surat_Permintaan_Barang : String-Kd_Staff_Penjualan : String-Kd_Barang : String-Nama_Barang : String-Jumlah : Long
SuratPermintaanBarang
1
1..*
1
1
Gambar 2.1 Contoh Class Diagram
50
Analisis problem domain memfokuskan pada informasi apa yang
harus ditangani oleh sistem dan menghasilkan sebuah model yang
merupakan gambaran dari kelas-kelas, object-object, struktur dan perilaku
(behavior yang ada dalam problem domain). Dalam tabel 2.2 berikut ini
dapat dilihat aktivitas pada Problem Domain Analysis.
Tabel 2.2 Aktivitas pada Problem Domain Analysis
Aktivitas Isi Konsep
Classes Objek dan event yang mana yang
merupakan bagian dari problem
domain?
Class, object dan event
Structure Bagaimana kelas dan objek secara
konseptual digabungkan bersama?
Generalization,
aggregation,
association dan cluster
Behavior Properti-properti dinamik yang
mana yang seharusnya dimiliki
objek?
Event trace, behavioral
pattern dan attribute
2.5.4.2.1 Class
Istilah class digunakan untuk menggambarkan kumpulan objek-
objek. Menurut Mathiassen et al. (2000, p. 53), class adalah gambaran atau
definisi dari kumpulan objek yang mempunyai structure, behavior pattern,
dan atribut yang bersamaan.
Menurut Bennet et al. (2002, p.591) class adalah deskripsi dari
kumpulan objek yang secara logis serupa sehubungan dengan behavior dan
struktur datanya.
51
Mengacu pada Mathiassen et al. (2000), kegiatan class merupakan
kegiatan pertama dalam analisis problem domain. Ada beberapa tugas
dalam kegiatan ini, yaitu : abstraksi fenomena problem domain dengan
melihatnya sebagai objek dan event, klasifikasi objek dan event tersebut,
dan memilih kelas dan event dari sistem yang akan dipelihara informasinya.
Classes merupakan kegiatan utama untuk mendefinisikan dan membatasi
problem domain.
Classes bertujuan untuk memilih elemen-elemen dari suatu
problem domain. Classes terdiri dari tiga bagian, yaitu :
1. Nama Class, setiap class harus mempunyai nama untuk dibedakan dari
suatu class yang lain.
2. Attribute, merupakan kepemilikan deskriptif dari class atau event.
Setiap class boleh memiliki beberapa attribute atau sebagian saja.
3. Operation, merupakan proses kepemilikan yang spesifik di dalam class
dan diaktifkan melalui class object.
Kegiatan class akan menghasilkan suatu event table. Dimensi
horizontal dari event table menggambarkan class yang akan dipilih,
sedangkan dimensi vertikal menggambarkan event yang terpilih, tanda cek
digunakan untuk mengindikasikan objek dari kelas yang berhubungan
dalam event tertentu.
2.5.4.2.2 Structure
Menurut Mathiassen et al. (2000, p. 69), structure merupakan
kegiatan kedua dalam problem domain. Tujuan dari structure adalah untuk
mencari hubungan structural antara kelas-kelas dan objek-objek dalam
52
problem domain. Hasil dari kegiatan structure adalah membuat class
diagram. Menurut Mathiassen et al. (2000, p.336), class diagram
menggambarkan kumpulan dari kelas-kelas dan merupakan hubungan yang
terstruktur.
Menurut Mathiassen et al. (2000, p. 73-77), tipe dari Object
Oriented Structure terdiri dari dua bagian, yaitu :
1. Class structure, mengekspresikan hubungan konseptual yang statis
antar class. Class structure dibagi menjadi dua bagian yang meliputi :
a) Generalization : sebuah kelas umum (super class) yang
menjelaskan property pada suatu kelompok kelas khusus
(subclasses). Hubungan dalam generalization dapat dikatakan
sebagai hubungan “is-a”, yang artinya subclass akan mempunyai
attribute dan operation yang sama dengan superclasses.
b) Cluster : sebuah kumpulan dari kelas-kelas yang saling
berhubungan. Cluster digambarkan dengan notasi file forder yang
di dalamnya terdapat kumpulan class yang berkaitan. Class-class
yang ada pada cluster yang berbeda dihubungkan dengan hubungan
association.
2. Object Structure menggambarkan hubungan yang dinamik dan konkret
antara objek-objek dalam problem domain. Hubungan ini berubah
secara dinamis tanpa mempengaruhi perubahan pada class description.
Object structures terdiri dari dua bagian, yaitu :
53
a) Aggregation : objek superior (keseluruhan) yang terdiri dari
sejumlah objek inferior (sebagian). Hubungan aggregation
dirumuskan sebagai hubungan ”has-a” atau “is-part-of”.
b) Association : hubungan yang penting antara sejumlah objek-objek.
Hubungan association digambarkan sebagai garis yang
menghubungkan class-class yang relevan. Association structure
mendefinisikan hubungan antara dua buah objek atau lebih. Hasil
dari aktivitas ini adalah membuat class diagram yang berisi class
dengan hubungan struktur dengan class lainnya.
2.5.4.2.3 Behavior
Menurut Mathiassen et al. (2000, p.90), kegiatan ketiga adalah
kegiatan behavior yang bertujuan untuk memodelkan apa yang terjadi
dalam sistem problem domain sepanjang waktu. Behavior bertujuan untuk
membuat model yang dinamis dari problem domain. Hasil dari kegiatan
behavior adalah membuat statechart diagram yang contohnya dapat dilihat
dalam gambar 2.2 berikut ini.
Proses/ diproduksi
/ dipesan
/ dicek
/ dibeli
Gambar 2.2 Contoh Statechart Diagram
Perilaku dari suatu objek ditentukan oleh urutan event (event
trace) yang harus dilewati oleh objek tertentu sepanjang waktu. Contoh :
54
kelas nasabah harus melalui event trace sepanjang hidupnya yaitu : account
opened – amount deposited – amount withdrawn – amount deposited –
account closed.
Mengacu pada pendapat Mathiassen et al. (2000, p. 93), ada tiga
jenis notasi dalam behavioral pattern, yaitu :
1) Sequence : sekumpulan event muncul satu per satu.
2) Selection : terjadi pemilihan satu event dari sekumpulan event yang
muncul .
3) Iteration : sebuah event muncul sebanyak nol atau beberapa kali.
2.5.4.3 Application Domain Analysis
Menurut Mathiassen et al. (2000, p. 117), application domain
adalah organisasi yang mengatur, memonitor, atau mengendalikan problem
domain. Analisis application domain memiliki tiga kegiatan yang dapat
dilihat dalam tabel 2.3 berikut ini :
Tabel 2.3 Aktivitas pada Application Domain
Aktivitas Isi Konsep
Usage Bagaimana sistem berinteraksi dengan
orang dan sistem dalam konteks?
Use case dan actor
Functions Apa kemampuan sistem dalam
memproses informasi?
Function
Interfaces Apa kebutuhan-kebutuhan tampilan
layar yang sistem targetkan?
Interface, user interface,
dan system interface
55
2.5.4.3.1 Usage
Menurut Mathiassen et al. (2000, p.118), kegiatan usage
merupakan kegiatan pertama dalam application domain analysis yang
bertujuan untuk menentukan bagaimana aktor-aktor yang merupakan
pengguna atau sistem lain berinteraksi dengan sistem yang dituju. Interaksi
antara aktor dengan sistem tersebut dinyatakan dalam use case. Mathiassen
et al. (2000, p.120) menyatakan bahwa, “use case adalah pola sistem untuk
berinteraksi dengan aktor dalam application domain.”, sedangkan “actor
adalah abstraksi dari pengguna atau sistem lain yang berinteraksi dengan
sistem target. Tujuan dari application domain analysis adalah untuk
menganalisis kebutuhan dari pengguna sistem. Prinsip dari aktivitas ini
adalah :
- Menentukan application domain dengan use case.
- Mengevaluasi use case dalam kerjasama dengan user.
Hasil dari usage adalah deskripsi lengkap dari semua use case dan
actor yang ada, yang digambarkan dalam actor table dan use case diagram.
Use case diagram adalah diagram yang menggambarkan fungsi dari sebuah
sistem dan berbagai macam pengguna yang akan berinteraksi dengan
sistem.
Untuk mengidentifikasikan actor adalah dengan menentukan
bagian dan tugas dari bagian apa saja yang berhubungan atau terlibat
langsung dengan konteks sistem yang dituju. Masing-masing actor
memiliki peranan yang berbeda. Actor yang digambarkan dalam actor
specification yang memiliki tiga bagian, yaitu tujuan, karakteristik, dan
56
contoh. Tujuan menunjukkan peranan dari actor dalam sistem target,
sedangkan karakteristik menggambarkan aspek-aspek yang penting dari
actor.
Use case dapat dikatakan gambaran suatu interaksi antara sistem
dengan actor. Untuk menggambarkan suatu use case dapat menggunakan
statechart diagram, use case specification atau keduanya. Use case
specification terdiri dari tiga bagian, yaitu use case, objects dan function.
Use case menjalankan urutan dari sistem yang berjalan, objects
menunjukkan actor apa saja yang berhubungan dengan aktivitas use case
tersebut, dan function akan dijelaskan setelah usage. Dibawah ini adalah
contoh use case diagram dapat dilihat pada gambar 2.3.
57
Sistem Penjualan Barang danPemesanan Bahan Baku
PT. XYZ
Login Karyawan
Pendaftaran Pelanggan
Staff_Penjualan
Staff_Keuangan
Staff_Pembelian
Penjualan Barang
Pembayaran Barang
Pengecekan BarangGudang Produksi
Pembelian BahanBaku
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
Pengecekan BarangGudang Penjualan
*
*
Gambar 2.3 Contoh Use Case Diagram
Sequence Diagram
Menurut Bennet et al., sequence diagram membantu seorang
analis untuk mengidentifikasikan rincian dari kegiatan yang dibutuhkan
untuk menjalankan fungsi dari sebuah use case. Tidak ada suatu sequence
diagram yang tepat untuk use case tertentu, melainkan ada beberapa
kemungkinan sequence diagram yang masing-masing dari diagram tersebut
dapat lebih atau kurang dalam memenuhi kebutuhan dari use case. Gambar
2.4 berikut ini memperlihatkan contoh sequence diagram.
58
Staff_Penjualan
Faktur Pemesanan
1.memasukkanKodePelanggan()
2.getDataPelanggan()
Pelanggan Barang
5.memasukkanKodeBarang()
4.DataPelanggan()
6.getDataBarang()
8.DataBarang()
9.mencetakFakturPemesanan()
10.()
3.checking()
7.checking()
Gambar 2.4 Contoh Sequence Diagram
2.5.4.3.2 Function
Menurut Mathiassen et al. (2000, p.138) kegiatan function
memfokuskan pada bagaimana cara sebuah sistem dapat membantu aktor
dalam melaksanakan pekerjaan mereka. Function memiliki 4 tipe yang
berbeda, yaitu :
1. Update, function ini disebabkan oleh event problem domain dan
menghasilkan perubahan dalam state atau keadaan dari model tersebut.
2. Signal, function ini disebabkan oleh perubahan keadaan atau state dari
model yang dapat menghasilkan reaksi pada konteks. Reaksi ini dapat
berupa tampilan bagi aktor dalam application domain, atau intervensi
langsung dalam problem domain.
59
3. Read, function ini disebabkan oleh kebutuhan informasi dalam
pekerjaan aktor dan mengakibatkan sistem menampilkan bagian yang
berhubungan dengan informasi dalam model.
4. Compute, function ini disebabkan oleh kebutuhan informasi dalam
pekerjaan aktor dan berisi perhitungan yang melibatkan informasi yang
disediakan oleh aktor atau model, hasil dari function ini adalah tampilan
dari hasil komputasi.
Hasil dari kegiatan function adalah function list yang lengkap,
yang merinci function yang kompleks. Function list dibuat berdasarkan use
case description. Kompleksitas function list dimulai dari yang simple
hingga very complex. Untuk mengidentifikasikan function adalah dengan
melihat deskripsi problem domain yang dinyatakan dalam kelas dan event
yang dapat menyebabkan munculnya function read dan update, dan melihat
deskripsi application domain yang dinyatakan use case yang dapat
menimbulkan segala macam tipe function.
2.5.4.3.3 User Interface
Menurut Mathiassen et al. (2000, p.151) interface
menghubungkan sistem dengan semua aktor yang berhubungan dalam
konteks. Terdapat dua jenis interface, yaitu user interface yang
menghubungkan pengguna (user) dengan sistem dan system interface yang
menghubungkan sistem dengan sistem lainnya.
Sebuah user interface yang baik, harus dapat beradaptasi dengan
pekerjaan dan pemahaman user terhadap sistem. Kualitas user interface
ditentukan oleh kegunaan atau usability interface tersebut bagi pengguna.
60
Usability tergantung pada siapa yang menggunakan dan situasi pada saat
sistem tersebut digunakan. Oleh sebab itu usability bukan sebuah ukuran
yang pasti dan objektif.
Suatu user interface harus dapat menangani berbagai macam
pengguna yang memiliki kemampuan dan kapabilitas yang berbeda. User
interface sangat sulit untuk dikembangkan apabila tidak menerima umpan
balik berupa ide yang berarti dari pengguna. Suatu system interface tidak
hanya dapat digunakan untuk sistem administrasi tetapi dapat digunakan
pada sistem-sistem lainnya. System interface lebih banyak digunakan pada
monitoring system dan control system.
Ada empat jenis dialog penting dalam menentukan user interface,
yaitu :
a) Menu-selection. Suatu jenis dialog yang terdiri dari daftar pilihan-
pilihan yang dapat atau mungkin dilakukan dalam user interface.
b) Form filling. Merupakan pola klasik yang digunakan untuk mengentri
data.
c) Command Language. Merupakan suatu jenis dialog yang
memungkinkan pengguna memasukkan dan memulai format perintah
sendiri.
d) Direct Manipulation. Pengguna memilih objek dan melaksanakan
function atas objek dan melihat hasil interaksi mereka tersebut.
Kegiatan dari interface didasarkan atas hasil dari kegiatan-
kegiatan sebelumnya yang dilakukan, problem domain, function dan use
case. Hasil dari kegiatan ini adalah sebuah deskripsi dari elemen-elemen
61
user interface maupun system interface yang lengkap. Interface element
harus juga dilengkapi dengan suatu navigation diagram yang menyediakan
sebuah ringkasan dari elemen-elemen user interface dan perubahan antara
elemen-elemen tersebut.
2.5.5 Pengertian Object Oriented Design
Berdasarkan Mathiassen et al. (2000, p. 6) object oriented design
menekankan pada pendefinisian software object yang diimplementasikan pada
bahasa pemrograman.
2.5.5.1 Architecture Design
Menurut Mathiassen et al. (2000, p. 175) Architecture design
adalah merancang arsitektur secara garis besar yang terdiri dari komponen
dan proses. Kegiatan architecture design bertujuan untuk membangun
sistem yang terkomputerisasi. Arsitektur membentuk sistem sesuai dengan
fungsi sistem tersebut dan dapat memenuhi criteria desain tertentu.
Kegiatan-kegiatan yang dilakukan di dalam desain arsitektur dapat dilihat
pada tabel 2.4 di bawah ini.
Tabel 2.4 Kegiatan Architecture Design
Kegiatan Isi Kondisi
Criteria Kondisi dan criteria untuk
pendesainan.
Criterion
Component Bagaimana sistem dibentuk menjadi
komponen-komponen.
Architecture component
Process Bagaimana process sistem
didistribusikan dan dikoordinasi.
Architecture process
62
2.5.5.1.1 Criteria
Mathiassen et al. (2000) menyatakan bahwa tujuan dari sebuah
criteria adalah untuk mempersiapkan prioritas dari sebuah perancangan.
Konsep utama pada aktivitas criteria, yaitu :
Criteria : menentukan property yang diinginkan dari sebuah arsitektur.
Condition : hal-hal yang bersifat teknis, organisasional, kelebihan dan
keterbatasan manusia yang terlibat dalam tugas.
Criteria adalah suatu sifat istimewa dari sebuah arsitektur.
Aktivitas ini bertujuan untuk membuat desain. Desain yang bagus bukan
hanya dinilai dari sifatnya, tetapi apabila terdapat kekurangan dapat
menjadi tidakk berguna dalam prakteknya. Secara umum, desain yang
bagus itu berguna, fleksibel, dan mudah dimengerti. Hasil dari kegiatan
criteria adalah collection prioritized criteria.
Desain yang baik tidak memiliki kelemahan
Prinsip ini memperlihatkan tujuan utama dari object criteria design.
Prinsip ini menimbulkan penekanan pada evaluasi kualitas berdasarkan
review dan eksperimen dan membantu dalam menentukan prioritas dari
kriteria. Ada beberapa kriteria umum yang digunakan dalam kegiatan
desain yang berorientasi objek, yang ditunjukkan dalam tabel 2.5 dibawah
ini.
Tabel 2.5 Criteria
Criterion Measure of
Usable Kemampuan sistem untuk menyesuaikan diri dalam konteks,
organisasi yang berhubungan dengan pekerjaan dan teknis.
63
Secure Ukuran keamanan sistem dalam menghadapi akses yang tidak
terotorisasi terhadap data dan fasilitas.
Efficient Eksploitasi ekonomis terhadap fasilitas platform teknis.
Correct Pemenuhan dari kebutuhan.
Reliable Pemenuhan ketepatan yang dibutuhkan dalam melaksanakan fungsi.
Maintainable Biaya untuk menemukan dan memperbaiki kerusakan.
Testable Biaya untuk memastikan bahwa sistem yang dibentuk dapat
melaksanakan fungsi yang diinginkan.
Flexible Biaya untuk mengubah sistem yang dibentuk.
Comprehensible Usaha yang diperlukan untuk mendapatkan pemahaman terhadap
sistem.
Reusable Kemungkinan untuk menggunakan bagian sistem pada sistem lain
yang berhubungan.
Portable Biaya untuk memindahkan sistem ke platform teknis yang berbeda.
Interoperable Biaya untuk menggabungkan sistem ke sistem yang lain.
Desain yang baik mempunyai criteria yang seimbang
Tidak semua kriteria memiliki prioritas. Beberapa kriteria dapat
menunjukkan objektivitas secara keseluruhan, sehingga dapat mewakili
beberapa kriteria lainnya.
Desain yang baik adalah usable, flexibility dan comprehensibility
Kriteria ini bersifat universal dan dapat digunakan pada hamper setiap
proyek pengembangan sistem, bagaimanapun mengorganisasikannya,
menunjukkan tiga kriteria ideal pada proyek pengembangan sistem.
Usable menspesifikasikan kualitas pada sistem yang pokok tergantung
bagaimana cara kerjanya. Flexibility memuat sistem arsitektur merubah
organisasi dan kondisi teknik. Sedangkan comprehensibility memberikan
64
peningkatan pada sistem terkomputerisasi, model dan deskripsi harus
mudah untuk dipahami.
2.5.5.1.2 Component Architecture
Menurut Mathiasssen (2000, p.191) component architecture
adalah suatu struktur sistem yang terdiri dari komponen yang saling
berhubungan sehingga sistem menjadi lebih mudah dimengerti,
menyederhanakan desain dan mencerminkan kestabilan sistem. Komponen
merupakan kumpulan bagian-bagian program yang membentuk suatu
kesatuan dan memiliki fungsi yang jelas.
Tujuan dari component architecture ini adalah untuk membuat
struktur sistem yang komprehensif dan fleksibel. Dengan aktivitas awalnya
adalah dengan mengurangi tingkat kompleksitas dengan pemisahan fokus
sistem, kemudian merefleksikan struktur konteks yang stabil, dan
menggunakan komponen yang telah ada. Sedangkan hasil dari kegiatan ini
adalah class diagram dengan spesifikasi dari komponen yang kompleks.
Beberapa pola yang dapat digunakan untuk merancang
Component Architecture adalah sebagai berikut :
1) Layered architecture pattern
Bentuk yang paling umum dalam software, yaitu terdiri dari beberapa
komponen yang dibentuk menjadi beberapa lapisan-lapisan yang mirip
dengan prinsip OSI Layer pada model jaringan, dimana lapisan yang
berada di atas tergantung pada lapisan yang berada dibawahnya, begitu
pula sebaliknya. Arsitektur ini sangat berguna untuk memecah sistem
menjadi komponen-komponen.
65
2) Generic architecture pattern
Pattern ini dapat digunakan untuk menguraikan sistem dasar yang
terdiri dari interface, function, dan model component. Model component
berada di layer yang paling bawah kemudian dilanjutkan oleh function
layer dan yang paling atas adalah interface layer.
3) Client server architecture pattern
Pattern ini dibangun untuk mengatasi sistem yang terdistribusi di
beberapa proses yang tersebar. Arsitektur ini terdiri dari sebuah server
dan beberapa client. Server memiliki kumpulan operation yang dapat
digunakan oleh client. Client menggunakan server secara independent.
Bentuk distribusi dari bagian sistem harus diputuskan antara client dan
server. Identifikasi komponen, di dalam perancangan sistem atau
subsistem, pada umumnya dimulai dengan layer architecture yang
menggunakan interface, function dan model component.
Berikut ini adalah beberapa jenis distribusi dalam arsitektur client-
server dimana U adalah user interface, F adalah function, dan M adalah
Model, yang dapat dilihat dalam tabel 2.6.
Tabel 2.6 Jenis Arsitektur client-server
Client Server ArchitectureU
U
U+F
U+F
U+F+M
U+F+M
F+M
F+M
M
M
Distributed presentation
Local presentation
Distributed functionality
Centralized data
Distributed data
66
Hasil dari suatu component architecture adalah component diagram
yang menunjukkan hubungan antara komponen (dalam hal ini adalah
server dan beberapa client).
2.5.5.1.3 Process Architecture
Process Architecture adalah struktur eksekusi sistem yang terdiri
dari proses yang saling bergantungan. Tujuan dari aktivitas ini adalah untuk
mendefinisikan struktur sistem. Menurut Mathiassen et al. (2000, p. 209)
ada empat konsep yang harus diketahui diantaranya adalah :
1) Process architecture adalah struktur eksekusi sistem yang tersususn
dari proses yang saling bergantungan.
2) Processor adalah sebuah peralatan yang dapat mengeksekusi sebuah
program.
3) Program component adalah modul fisik dari kode program.
4) Active object adalah sebuah objek yang telah ditugaskan oleh sebuah
proses.
Pada process architecture, sumber daya yang digunakan secara
bersama perlu diidentifikasikan untuk mencari bottleneck. Bottleneck
artinya kemacetan yang terjadi pada proses. Seperti yang telah disebutkan
bahwa untuk mencari bottleneck, kita perlu memperhatikan penggunaan
processor, external device, tempat penyimpanan data atau juga sistem
koneksi. Hasil dari process architecture adalah membuat deployment
diagram.
Menurut Mathiassen et al. (2000. p.220), sumber daya yang ada
pada umumnya digunakan secara bersama adalah :
67
a) Processor. Penggunaan processor secara bersamaan terjadi apabila dua
atau lebih proses yang dieksekusi secara bersamaan pada satu
processor.
b) Program component. Program component digunakan secara bersamaan
apabila dua atau lebih proses yang secara bersamaan memanggil
operasi pada komponen.
c) External device. External device digunakan secara bersamaan pada saat
terjadi pemrosesan dua atau lebih pada suatu peralatan. Contoh :
penggunaan printer yang terhubung melalui jaringan.
2.5.5.2 Component Design
Menurut Mathiassen (2000, p. 231) component design adalah
menentukan implementasi kebutuhan dalam kerangka arsitektural.
Kegiatan desain komponen berawal dari spesifikasi arsitektural dan
kebutuhan sistem, sedangkan hasil dari kegiatan ini adalah spesifikasi dari
komponen yang saling berhubungan. Berikut ini adalah beberapa kegiatan
dari desain komponen dapat dilihat pada tabel 2.7 :
Tabel 2.7 Design Component
Kegiatan Konteks Konsep
Model component Bagaimana suatu model
digambarkan sebagai class
dalam sebuah sistem.
Model component dan
attribute.
Function component Bagaimana suatu function
diimplementasikan.
Function component dan
operation
68
Connecting
component
Bagaimana komponen-
komponen dihubungkan
Component dan connection
2.5.5.2.1 Model Component
Berdasarkan Mathiassen (2000, p. 235) model component adalah
bagian dari sistem yang mengimplementasikan model problem domain.
Tujuan dari kegiatan ini adalah untuk mengantarkan data historis dan
sekarang ini kepada fungsi, interface dan kepada user dan sistem lainnya.
Terdapat dua aktivitas utama dalam kegiatan model component ini adalah :
1) Merepresentasikan event sebagai classes, structures, dan attributes
Class diagram dari aktivitas analisis direvisi dengan merepresentasikan
secara sistematis event dari objek-objek dalam classes, structures, dan
attributes yang baru.
2) Memilih representasi yang paling mudah dari events
Jika common event hanya terlibat dalam iterasi saja, kita mungkin harus
menguraikan dan membandingkan alternatif desain yang mendasar.
Terdapat dua jenis events yang harus direpresentasikan, yaitu
private events dan common events. Private events adalah events yang hanya
terlibat dalam objek problem domain. Panduan untuk merepresentasikan
private events :
Event yang muncul dalam sequence dan selection :
a) Merepresentasikan event ini sebagai atribut state dalam class yang
dideskripsikan dalam statechart diagram. Setiap satu event muncul,
sistem akan memberikan nilai baru dari atribut state tersebut.
69
b) Mengintegrasikan atribut yang dari events yang terlibat dengan
class.
Event yang muncul dalam iterasi :
a) Merepresentasikan event ini sebagai class baru, mengikatkan
mereka dengan class yang dideksripsikan dengan statechart
diagram dengan menggunakan struktur agregasi. Untuk setiap
iterasi, sistem akan menghasilkan objek baru dari class.
b) Mengintegrasikan atribut event ke dalam class baru.
Common events adalah events yang melibatkan beberapa objek.
Maka panduan untuk merepresentasikan common events adalah :
Jika events terlibat dalam statechart diagram dalam cara yang berbeda,
representasikan hal tersebut dalam relasinya dengan class yang
menawarkan presentasi yang paling sederhana.
Jika events terlibat dalam statechart diagram dalam cara yang sama,
kita harus mempertimbangkan kemungkinan representasi yang
berlawanan satu sama lain.
Hasil dari aktivitas model component ini adalah versi revisi dari
class diagram dari aktivitas analisis. Revisi ini biasanya terdiri dari
penambahan class, atribut dan struktur baru untuk merepresentasikan
events.
2.5.5.2.2 Function Component
Menurut Mathiassen (2000, p. 252) function component adalah
bagian dari sistem yang mengimplementasikan kebutuhan fungsional.
Aktivitasi ini bertujuan untuk memberikan user interface dan komponen
70
sistem lainnya mengakses model dan menentukan implementasi dari
fungsi. Terdapat dua aktivitas utama dalam function component ini, yaitu :
1. Membuat desain dari tipe-tipe fungsi
Desain dari implementasi fungsi individual bisa berdasarkan dari
pertanyaan dasar dari desain untuk setiap masing-masing tipe fungsi.
Tabel 2.8 Pertanyaan utama berdasarkan desain tipe fungsi
Tipe Fungsi Pertanyaan Utama
Untuk semua tipe Bagaimana seharusnya fungsi diimplementasikan
sebagai operasi di class yang berbeda?
Bagaimana operasi utama aktif dan apa input data yang
digunakan?
Objek dan koneksi apa yang terlibat dalam menampilkan
operasi, dan bagaimana mereka diidentifikasikan?
Apa feedback dari operasi utama?
Update Bagaimana kita menentukan jika suatu update adalah
legal?
Read Atribut dan koneksi mana yang harus dibaca, dan
bagaimana mereka ditemukan?
Compute Algoritma mana yang harus digunakan?
Signal Aturan apa yang digunakan dalam signal?
2. Menspesifikasikan operasi yang kompleks
Fungsi harus didesain, bukan di-program. Selama desain function
component, semua ketidakpastian yang penting tentang desain harus
dihilangkan, tetapi detail yang lebih lanjut harus dihindarkan.
71
Hasil utama dari aktivitas ini adalah class diagram untuk function
component dan ekstensi dari model’s component class diagram. Hasil
kedua dari aktivitas ini adalah spesifikasi untuk setiap operasi yang
kompleks.
2.5.5.2.3 Connecting Components
Berdasarkan Mathiassen (2000, p. 271) connecting components
adalah menyambungkan antar komponen yang ada dalam sistem. Dalam
aktivitas yang lain, kita memodelkan hubungan antar komponen sebagai
dependencies. Dependencies ini bisa direalisasikan dalam beberapa cara.
Dalam aktivitas ini, kita mendesain koneksi antar komponen untuk
mendapatkan desain yang komprehensif dan fleksibel.
Prinsip dalam aktivitas ini adalah menghasilkan hubungan
komponen dengan cohesion yang tinggi dan coupling yang rendah, dimana
kita harus menukarkan untuk mendapatkan class dan komponen dimana
keduanya kohesif dan mempunyai coupling yang rendah diantara mereka.
Menurut Mathiassen (2000, p.272) coupling adalah ukuran
seberapa dekat sebuah class atau component mengharuskan perubahan
dalam class atau component lainnya. Terdapat empat bentuk dari coupling,
yaitu :
a) Outside coupling : sebuah class atau component yang berhubungan
langsung dengan properti publik dari class atau component lainnya.
b) Inside coupling : sebuah operasi yang berhubungan langsung dengan
operasi lainnya, properti private dalam class yang sama.
72
c) Coupling from below : class spesialisasi yang berhubungan langsung
dengan properti private dalam super class.
d) Sideways coupling : class yang berhubungan langsung dengan properti
private dalam class yang berbeda.
Sedangkan cohesion adalah ukuran seberapa baik sebuah class atau
component disatukan bersama. Hasil dari aktivitas connecting components
ini adalah sebuah class diagram dengan komponen yang terlibat di dalam
class diagram tersebut.
top related