bab 2 landasan teori 2.1 sistem informasi akuntansi 2.1.1...
TRANSCRIPT
BAB 2
LANDASAN TEORI
2.1 Sistem Informasi Akuntansi
2.1.1 Pengertian Sistem Informasi Akuntansi
Menurut Jones dan Rama (2006, p13), “Accounting Information System is a
subsystem of a management information system (MIS) that provides accounting and
financial information as well as other information obtained in the routine
processing of accounting transactions.” Dapat diterjemahkan sebagai berikut :
Sistem Informasi Akuntansi adalah sebuah subsistem dari Sistem Informasi
Manajemen (SIM) yang menyediakan informasi akuntansi dan keuangan sebaik
informasi lain yang diperoleh dari proses rutin transaksi akuntansi.
Romney dan Steinbart berpendapat (2006, p6), “Accounting information
system is a system that collects, records, stores, and processes data to produce
information for decision makers.” Yang diterjemahkan sebagai : sistem informasi
akuntansi adalah sistem yang mengumpulkan, mencatat, menyimpan, dan mengolah
data untuk menghasilkan informasi yang berguna untuk pembuat keputusan.
Menurut Ulric dan Richard (2009, p14), “The purpose of this separate AIS
was to collect, process, and report information related to financial aspects of
business events.” Sistem informasi akuntansi dibuat bertujuan untuk
mengumpulkan, mengolah, dan melaporkan informasi yang berkaitan dengan aspek
keuangan bisnis.
10
Berdasarkan pengertian-pengertian di atas, dapat disimpulkan bahwa sistem
informasi akuntansi adalah sistem yang mengumpulkan, mencatat, menyimpan, dan
mengolah data transaksi akuntansi menjadi informasi dalam bentuk laporan yang
akan membantu dalam pembuatan keputusan.
2.1.2 Kerangka Sistem Informasi Akuntansi
Menurut Hall (2008, p7), “A framework for information system.” Kerangka
sistem informasi dapat digambarkan sebagai berikut
Gambar 2.1 Kerangka sistem informasi akuntansi
11
2.1.3 Subsistem pada Sistem Informasi Akuntansi.
Menurut Hall (2008, p8), “The AIS is composed of three major subsystems (1)
the transaction processing system (TPS), which supports daily business operations
with numerous reports, documents, and messages for users throughout the
organization; (2) the general ledger / financial reporting system (GL/FRS), which
produces the traditional financial statements, such as the income statement, balance
sheet, statement of cash flows, tax returns, and other reports required by law; and
(3) the management reporting system (MRS), which provides internal management
with special-purpose financial reports and information needed for decision making
such as budgets, variance reports, and responsibility reports.” Sistem Informasi
Akuntansi terdiri dari tiga subsistem utama, yaitu:
1. Transaction Processing System (TPS) yang mendukung operasi bisnis
sehari-hari.
2. General Ledger / Financial Reporting System (GL/FRS) yang
menghasilkan laporan keuangan misalnya laporan arus kas dan laporan lain
yang berhubungan dengan hukum yang berlaku, misalnya pajak.
3. Management Reporting System (MRS) yang menghasilkan laporan
keuangan khusus untuk manajemen internal. Contohnya laporan anggaran dan
varians.
12
2.1.4 Komponen Sistem Informasi Akuntansi
Menurut Romney dan Steinbart (2006, p.2), “An AIS consists of five
components:
1. The people who operates the system and perform various functions.
2. The procedures, both manual and automated, involved in collecting,
processing, and storing data about the organization’s activities.
3. The data about the organization’s business processes.
4. The software used to process the organization’s data.
5. The information technology infrastructure, including computers,
peripheral devices, and network communications devices.
Dapat diterjemahkan menjadi “Sebuah SIA terdiri dari lima komponen:
1. People, yang mengoperasikan sistem dan melakukan berbagai fungsi.
2. Procedures, baik yang manual maupun yang otomatis termasuk dalam
kegiatan pengumpulan, pemrosesan, dan penyimpanan data tentang kegiatan
organisasi.
3. Data, tentang kegiatan / proses bisnis organisasi.
4. Software, digunakan untuk memroses data organisasi.
5. Information Technology Infrastructure, termasuk di dalamnya komputer
serta peralatan komunikasi jaringan.”
13
2.2 Pengendalian Internal
2.2.1 Pengertian Pengendalian Internal
Menurut Ulric dan Richard berdasarkan Committee of Sponsoring
Organization (COSO) Report, “Internal control is a process – effected by an
entity’s board of directors, management, and other personnel – designed to provide
reasonable assurance regarding the achievement of objectives in the following
categories :
• Effectiveness and efficiency of operations
• Reliability of financial reporting
• Compliance with applicable laws and regulations”.
Diterjemahkan menjadi “Pengendalian internal adalah suatu proses yang
diimplementasikan oleh entitas dewan direksi, manajemen perusahaan dan personel
lainnya yang dikhususkan untuk menyediakan jaminan terhadap pencapaian tujuan
pengendalian berikut ini :
• Efektivitas dan efisiensi operasional.
• Kehandalan dari pelaporan keuangan.
• Kepatuhan terhadap hukum dan peraturan yang berlaku.”
2.2.2 Unsur Pengendalian Internal
Menurut Romney dan Steinbart (2006, p.196) “Five Interrelated Components
of COSO’s Internal Control Model : control environment, control activities, risk
assessment, information and communication, monitoring.” Lima komponen yang
berhubungan pada pengendalian internal menurut COSO: control environment,
control activities, risk assessment, information and communication, dan monitoring.
14
2.3 Penggajian dan Pengupahan
2.3.1 Pengertian Gaji dan Upah
Menurut Warren et al. (2008, p489) “In accounting, payroll refers to the
amount paid employees for services they provided during the period.” Dapat
diterjemahkan menjadi “Dalam akuntansi, istilah gaji diartikan sebagai jumlah
tertentu yang dibayarkan kepada karyawan untuk jasa yang diberikan selama
periode tertentu.”
Menurut Niswonger, Waren dan Fess yang diterjemahkan oleh Sirait dan
Gunawan (2000, p.446), “Gaji biasanya digunakan untuk pembayaran atas jasa
manajerial, administratif dan jasa-jasa yang sama. Tarif gaji biasanya diekspresikan
dalam periode bulan atau tahunan.
Istilah upah biasanya digunakan untuk pembayaran kepada karyawan
lapangan (pekerja kasar) yang terlibat dalam proses produksi, baik yang terdidik
maupun tidak terdidik. Tarif upah biasanya diekspresikan secara harian atau bahkan
perjam.”
2.3.2 Fungsi yang Terkait
Berdasarkan pendapat Romney dan Steinbart (2006, p.516) “A second major
function of the AIS in the HRM/payroll cycle is to provide adequate internal
controls to ensure meeting the following objectives :
1. All payroll transactions are properly authorized.
2. All recorded payroll transactions are valid.
3. All valid, authorized payroll transactions are accurately recorded.
4. All payroll transactions are accurately recorded.
15
5. Aplicable government regulations regarding remittance of taxes and filing
of payroll and HRM reports are met.
6. Assests (both cash and data) are safeguarded from loss or theft.
7. HRM/payroll cycle activities are performed efficiently and effectively.”
Dapat diterjemahkan menjadi, fungsi utama kedua dari SIA pada siklus HRM
/ penggajian untuk menghasilkan pengendalian internal yang memadai pada tujuan
berikut :
1. Semua transaksi penggajian harus diotorisasi.
2. Semua transaksi penggajian yang disimpan harus benar.
3. Semua transaksi penggajian yang benar dan diotorisasi harus disimpan.
4. Semua transaksi penggajian disimpan secara akurat.
5. Laporan penggajian harus sesuai dengan ketentuan pajak yang berlaku.
6. Aset (kas dan data) harus disimpan secara aman dari kehilangan dan
pencuri.
7. Aktivitas siklus penggajian / HRM harus effisien dan efektif.
2.3.3 Tujuan Evaluasi Performance Karyawan
Menurut John M. Ivanchevich (2002, p.230), tujuan mengevaluasi
performance karyawan yaitu :
• Pengembangan (Development)
Sehingga dapat menentukan karyawan yang membutuhkan training atau
tidak.
16
• Motivasi (Motivation)
Sehingga dapat menimbulkan inisiatif, mengembangkan rasa tanggung
jawab, dan meningkatkan usaha untuk bekerja lebih baik.
• Human resource and employment planning
Evaluasi ini dapat dijadikan sebagai masukan bagi perencanaan yang
dilakukan oleh bagian personalia.
• Komunikasi (Communications)
Dapat menjalin hubungan yang lebih erat antara supervisor dengan
bawahannya.
• Keadilan (Fairness)
Sehingga dapat membantu memberi informasi bila akan dilakukan promosi,
mutasi, penghargaan, atau pemberhentian.
• Validasi (Validation)
Dapat digunakan dalam validasi pengukuran terhadap alat seleksi untuk calon
karyawan.
2.3.4 Proses Evaluasi / Pengukuran Prestasi Karyawan.
Fred Steingold berpendapat (2009, p49), “To keep the evaluation process as
consistent and objective as possible, devise an evaluation form that you can use
with all employees in the same job category. The form should focus on how well the
employee has performed the various duties of the job. Fill in the form before you
meet with the employee.” Yang dapat diterjemahkan sebagai “Untuk menjaga agar
proses evaluasi sekonsisten dan seobjektif mungkin, rencanakan form penilaian
17
(evaluasi) yang dapat digunakan untuk seluruh pekerja dalam kategori pekerjaan
yang sama. Form tersubut harus diisi sebelum menemui pekerja yang bersangkutan.
Menurut Donald Kirkpatrick (2006, p17), “This is the evaluation or
judgement of how well the job has been done. It is always done by supervisor with
or without input from other people.” Diterjemahkan sebagai “Penilaian ini
digunakan untuk mengevaluasi seberapa baik suatu pekerjaan dilakukan. Hal ini
biasanya dilakukan oleh supervisor dengan atau tanpa masukan dari orang lain.
Menurut George dan Scott (2009, p370), pengukuran prestasi (performance)
dapat dilakukan oleh, manager/supervisor appraisal, peer appraisal, ataupun team
appraisal.
Jadi dapat disimpulkan bahwa formulir evaluasi harus terlebih dahulu dibuat
secara konsisten sehingga dapat digunakan oleh semua karyawan pada kategori
pekerjaan yang sama dan akan diisi oleh supervisor atau oleh masing-masing
karyawan. Namun biasanya penentuan prestasi (performance) karyawan dilakukan
oleh supervisor atau manajer.
2.4 Pajak Penghasilan
2.4.1 Pengertian Pajak Penghasilan
Menurut Muhammad Rusjdi (2006, p.2) “Pajak Penghasilan adalah :
1. Pajak sebagai Pajak Subjektif
Pajak Penghasilan (PPh) tergolong sebagai Pajak Subjektif yaitu pajak
yang mempertimbangkan keadaan pribadi Wajib Pajak sebagai faktor
utama dalam pengenaan pajak.
18
2. PPh sebagai Pajak Langsung
Pajak langsung adalah pajak yang dikenakan terhadap orang yang harus
menanggung dan membayarnya.
3. PPh sebagai Pajak Pusat atau Pajak Negara
Menurut Undang-Undang 1945 pasal 23A ditentukan bahwa : “Pajak dan
pungutan lain yang bersifat memaksa untuk keperluan negara diatur dengan
Undang-Undang.”
2.4.2 PPh Pasal 21
Berdasarkan UU RI No. 36 tentang Pajak Penghasilan, Ketentuan Pasal 21
ayat (1) sampai ayat (5), dan ayat (8) diubah, serta di antara ayat (5) dan ayat (6)
disisipkan 1 (satu) ayat, yakni ayat (5a) sehingga Pasal 21 berbunyi sebagai berikut :
(1) Berdasarkan pajak atas penghasilan sehubungan dengan pekerjaan, jasa,
atau kegiatan dengan nama dan bentuk apa pun yang diterima atau diperoleh
Wajib Pajak orang pribadi dalam negeri wajib dilakukan oleh :
a. Pemberi kerja yang membayar gaji, upah, honorarium, tunjangan, dan
pembayaran lain sebagai imbalan sehubungan dengan pekerjaan yang
dilakukan oleh pegawai atau bukan pegawai.
b. Bendaharawan pemerintah yang membayar gaji, upah, honorarium,
tunjangan, dan pembayaran lain, sehubungan dengan pekerjaan, jasa, atau
kegiatan.
c. Dana pensiun atau badan lain yang membayarkan uang pensiun dan
pembayaran lain dengan nama apapun dalam rangka pensiun.
19
d. Badan yang membayar honorarium atau pembayaran lain sebagai
imbalan sehubungan dengan jasa termasuk jasa tenaga ahli yang melakukan
pekerjaan bebas.
e. Penyelenggara kegiatan yang melakukan pembayaran sehubungan
dengan pelaksanaan suatu kegiatan.
(2) Tidak termasuk sebagai pemberi kerja yang wajib melakukan
pemotongan pajak sebagaimana dimaksud pada ayat (1) huruf a adalah badan
perwakilan negara asing dan organisasi-organisasi internasional.
(3) Penghasilan pegawai tetap atau pensiunan yang dipotong pajak untuk
setiap bulan adalah jumlah penghasilan bruto setelah dikurangi dengan biaya
jabatan atau biaya pensiun yang besarnya ditetapkan dengan Peratutan
Menteri Keuangan, iuran pensiun, dan Penghasilan Tidak Kena Pajak.
(4) Penghasilan pegawai harian, mingguan, serta pegawai tidak tetap lainnya
yang dipotong pajak adalah jumlah penghasilan bruto setelah dikurangi bagian
penghasilan yang tidak dikenakan pemotongan yang besarnya ditetapkan
dengan Peraturan Menteri Keuangan.
(5) Tarif pemotongan atas penghasilan sebagaimana dimaksud dalam ayat (1)
adalah tarif pajak sebagaimana dimaksud dalam Pasal 17 ayat (1) kecuali
ditetapkan lain dengan Peraturan Pemerintah.
(5a) Besarnya tarif sebagaimana dimaksud pada ayat (5) yang diterapkan
terhadap Wajib Pajak yang tidak memiliki Nomor Pokok Wajib Pajak lebih
tinggi 20% (dua puluh persen) daripada tarif yang diterapkan terhadap Wajib
Pajak yang dapat menunjukkan Nomor Pokok Wajib Pajak.
20
(6) Dihapus
(7) Dihapus
(8) Ketentuan mengenai petunjuk pelaksanaan pemotongan pajak atas
penghasilan sehubungan dengan pekerjaan, jasa, atau kegiatan diatur dengan
atau berdasarkan Peraturan Menteri Keuangan.
2.4.3 Penerima penghasilan yang tidak dipotong PPh Pasal 21
Penerima penghasilan yang tidak dipotong PPh Pasal 21 adalah sebagai
berikut:
1. Pejabat perwakilan diplomatic dan konsulat atau pejabat lain dari negara
asing, dan orang-orang yang diperbantukan kepada mereka yang bekerja
pada dan bertempat tinggal bersama mereka, dengan syarat:
- Bukan warga begara Indonesia dan
- Tidak menerima atau memperoleh penghasilan lain di luar jabatannya di
Indonesia.
2. Pejabat pewakilan organisasi internasional sebagaimana dimaksud dalam
Keputusan Menteri Keuangan Nomor: 611/KMK.04/1994 tanggal 23
Desember 1994 sepanjang bukan warga negara Indonesia dan tidak
menjalankan usaha atau melakukan kegiatan atau pekerjaan lain untuk
memperoleh penghasilan di Indonesia.
2.4.4 Penghasilan yang Dipotong PPh Pasal 21
Penghasilan yang dikenakan pemotongan PPh Pasal 21 yaotu sebagai berikut:
1. Penghasilan yang diterima atau diperoleh pegawai atau penerima pension
sevara teratur berupa gaji, uang pension bulanan, upah, honorium
21
(termasuk honorium anggota dewan komisaris atau anggota dewan
pengawas), premi bulanan, uang lembur, uang tunggu, uang ganti rugi,
tunjangan isteri, tunjangan anak, tunjangan pajak, tunjangan iuran pension,
tunjangan pendidikan anak, beasiswa, premi asuransi yang dibayar pemberi
kerja dan penghasilan teratur lainnya dengan nama apapun.
2. Penghasilan yang diterima atau diperoleh pegawai, penerima pension atau
mantan pegawai secara tidak teratur berupa jasa produksi, tantiem
gratifikasi, tunjangan cuti, tunjangan hari raya, tunjangan tahun baru,
bonus, premi tahunan, dan penghasilan sejenis lainnya yang sifatnya tidak
tetap.
3. Upah harian, upah mingguan, upah satuan dan upah borongan yang
diterima atau diperoleh pegawai tidak tetap atau tenaga kerja lepas, serta
uang saku harian mingguan yang diterima peserta pendidikan, pelatihan
atau pemagangan yang mrupakan calon pegawai.
4. Uang tebusan pensiun, uang Tabungan Hari Tua atau Jaminan Hari Tua,
uang pesangon dan pembayaran lain sejenis sehubungan dengan pemutusan
hubungan kerja.
5. Honorium uang saku, hadiah atau penghargaan dengan nama dan dalam
bentuk apapun komisi, beasiswa, dan pembayaran lain sebagai imbalan
sehubungan dengan pekerjaan, jasa, dan kegiatan yang dilakukan oleh
Wajib Pajak orang pribadi dalam negeri.
6. Gaji, gaji kehormatan, tunjangan-tunjangan lain yang terkait dengan gaji
dan honorium atau imbalan lain yang bersifat tidak tetap yang diterima
22
oleh Pejabat Negara, Pegawai Negeri Sipil serta uang pension dan
tunjangan-tunjangan lain yang sifatnya terkait dengan uang pensiun yang
diterima oleh pensiunan termasuk janda atau duda atau anak-anaknya.
2.4.5 Penghasilan yang Tidak Dipotong PPh Pasal 21
Yang tidak termasuk penghasilan yang dipotong PPh pasal 21 yaitu:
1. Pembayaran asuransi pada asuransi kecelakaan, asuransi kesehatan,
asuransi jiwa, asuransi beasiswa, dan asuransi dwiguna.
2. Iuran pensiun yang dibayar kepada dana pensiun yang pendiriannya telah
dilakukan oleh Menteri Keuangan dan Iuran Jaminan Hari Tua kepada
badan penyelenggara Jamsostek yang dibayarkan oleh pemberi kerja.
3. Penerima dalam bentuk natura dan kenikmatan kecuali bentuk natura yang
diatur dalam Keputusan Dirjen Pajak.
4. Penerimaan dalam bentuk natura dan kenikmatan lain dengan nama apapun
yang diberikan oleh pemerintah.
5. Pajak yang ditanggung oleh pemberi kerja.
6. Zakat yang diterima oleh orang pribadi yang berhak dari lembaga atau
badan amil zakat yang dibentuk atau disahkan oleh pemerintah.
2.4.6 Kewajiban Pemotong Pajak PPh Pasal 21
Kewajiban daripada pemotong pajak PPh Pasal 21 yaitu:
1. Pemotong pajak pasal 21 wajib memberikan Bukti Pemotongan PPh Pasal
21 (KP.PPh.2.1/BP-95) baik diminta maupun tidak pada saat dilakukannya
pemotongan pajak kepada orang pribadi bukan sebagai pegawai tetap,
23
penerima uang tebusan pensiun, penerima THT, penerima pesangon, dan
penerima dana pensiun iuran pasti.
2. Pemotong Pajak PPh Pasal 21 wajib memberikan Bukti Pemotongan PPh
Pasal 21 tahunan (form 1721-A1 atau 1721-A2) kepada pegawai tetap,
termasuk penerima pensiun bulanan dalam waktu dua bulan setelah tahun
takwim berakhir.
3. Apabila pegawai tetap berhenti bekerja atau pensiun pada bagian tahun
takwim, maka Bukti Pemotongan (form 1721-A1 atau 1721-A2_ diberikan
oleh pemberi kerja selambat-lambatnya satu bulan setelah pegawai yang
bersangkutan berhenti bekerja atau pensiun.
4. Penerima penghasilan wajib menyerahkan surat pernyataan kepada
Pemotong Pajak Pasal 21 yang menyatakan jumlah tanggungan keluarga
pada permulaan tahun takwim atau pada permulaan menjadi Subyek Pajak
dalam negeri.
5. Untuk melaksanakan kewajiban PPh Pasal 21, Pemotong Pajak PPh Pasal
21/pemberi kerja agar menggunakan Buku Petunjuk Pemotongan PPh
Pasal 21.
2.4.7 Penghasilan Tidak Kena Pajak
Untuk menghitung besarnya Penghasilan Kena Pajak dari Wajib Pajak orang
pribadi dalam negeri, penghasilan netonya dikurangi dengan jumlah Penghasilan
Tidak Kena Pajak. Di samping untuk dirinya, kepada Wajib Pajak yang sudah
kawin diberikan tambahan Penghasilan idak Kena Pajak per tahun sesuai dengan
pasal 7 ayat (1) UU RI No 36 tahun 2008, diberikan paling sedikit sebesar:
24
1. Rp 15.840.000,00 (lima belas juta delapan ratus empat puluh ribu rupiah)
untuk diri Wajib Pajak orang pribadi.
2. Rp 1.320.000,00 (satu juta tiga ratus dua puluh ribu rupiah) tambahan
untuk Wajib Pajak yang kawin.
3. Rp 15.840.000,00 (lima belas juta delapan ratus empat puluh ribu rupiah)
tambahan untuk seorang istri yang penghasilannya digabung dengan
penghasilan suami.
4. Rp 1.320.000,00 (satu juta tiga ratus dua puluh 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.
Penetapan ketentuan sebagaimana dimaksud pada ayat 1 ditentukan oleh
keadaan pada awal tahun pajak atau awal bagian tahun pajak.
2.4.8 Tarif Pajak Penghasilan
Sesuai dengan pasal 17 ayat (1) huruf a Undang-Undang Nomor 36 tentang
Pajak Penghasilan, besarnya tarif pajak yang ditetapkan atas Penghasilan Kena
Pajak bagi Wajib Pajak orang pribadi dalam negeri disajikan dalam tabel berikut:
Tabel 2.1 Tarif pajak penghasilan pasal 21
Lapisan Penghasilan Kena Pajak Tarif Pajak
Sampai dengan Rp. 50.000.000,00 (lima puluh
juta rupiah) 5 % (lima persen)
25
Diatas Rp. 50.000.000,00 (lima puluh juta
rupiah) sampai dengan Rp. 250.000.000,00
(dua ratus lima puluh juta rupiah)
15 % (lima belas persen)
Diatas Rp. 250.000.000,00 (dua ratus lima
puluh juta rupiah) sampai dengan Rp.
500.000.000,00 (lima ratus juta rupiah)
25 % (dua puluh lima
persen)
Diatas Rp. 500.000.000,00 (lima ratus juta
rupiah) 30 (tiga puluh persen)
2.5 Object Oriented Analysis and Design
2.5.1 Pengertian Objek dan Class
Menurut Mathiassen et al. (2000, p.4), “Object : an entity with identity, state,
and behavior.” Objek adalah sebuah entitas yang memiliki identitas, status dan
behavior. Sedangkan “ Class : a description of a collection of objects sharing
structure, behavioral pattern, and attribute”, yang diartikan sebagai sebuah
gambaran dari sekelompok objek yang memiliki sturcture, behavioral pattern, dan
attributes.
Menurut Simon Bennett et al. (2006, p71), “Objects that are sufficiently similar
to each other are said to belong the same class. Instance is another word for a single
object, but it also carries connotations of the class to which that object belongs. So
like an object, an instance represents a single person, thing or concept in the
application domain.” Class adalah sebuah konsep yang menggambarkan sekumpulan
objek yang dispesifikasikan dengan cara yang sama. Sebuah objek dapat disebut
26
sebagai instance. Instance akan merepresentasikan seseorang, benda atau konsep
pada application domain.
Menurut Kathy dan Bert (2005, p35), “A class is not an object. (but it’s used to
construct them). A class is a blueprint for an object.” Class bukan sebuah objek
(namun untuk membuatnya). Class adalah rincian detil untuk sebuah objek.
Jadi dapat disimpulkan bahwa sebuah class dapat dijadikan sebagai beberapa
objek, karena sebuah objek dibentuk berdasarkan class. Class perlu dibuat terlebih
dahulu sebelum membuat objek.
Dalam melakukan analisis sistem, objek digunakan untuk membantu
pemahaman akan konteks sistem (system’s context). Sedangkan dalam melakukan
perancangan sistem, objek digunakan untuk membantu pemahaman dan
penggambaran sistem itu sendiri.
2.5.2 Aktivitas Orientasi Objek
Berdasarkan pendapat Lars Mathiassen et al. (2000, p.14) “OOA&D covers the
four main activities”. Analisa dan perancangan berorientasi objek meliputi empat
pandangan melalui empat kegiatan utama yang terdiri dari dua tahap analisa dan dua
tahap perancangan.
27
Gambar 2.2 Aktivitas orientasi objek
Keuntungan aktivitas berorientasi objek yaitu: abstraksi dan reusable. Aktivitas
ini memperhatikan / berorientasi kepada objek, bukan class. Sehingga hanya yang
dianggap penting yang diperhatikan. Yang dianggap tidak penting, untuk sementara
boleh diabaikan. Objek dibentuk dari class, dan objek tersebut dapat digunakan
berulang-ulang, yang disebut reusable.
Dalam analisis dan perancangan berorientasi objek, dikenal istilah
encapsulation, polymorphism, dan inheritance.
Menurut Brett, Gary, dan David (2006, p.28), “Encapsulation allows you to
hide the inner workings of your application’s part.” Enkapsulasi mengijinkan untuk
menyembunyikan pekerjaan dalam dari bagian aplikasi.
28
Menurut Simon Bennett et al. (2006, p.81), “Polymorphism literally means, an
ability to appear as many forms.” Maka polymorphism adalah kemampuan untuk
memiliki banyak bentuk.
Menurut Matt Weisfeld (2004, p.27), “Polymorphism means that similar
objects can respond to the same message in different manners.” Diterjemahkan
menjadi polymorphism dapat diartikan beberapa objek merespon pesan yang sama
dengan cara yang berbeda.
Menurut Matt Weisfeld (2004, p.21), “Inheritance allows a class to inherit the
attributes and methods of another class.” Inheritance digunakan untuk menurunkan
sifat (attributes dan methods) suatu class ke class lain. Class yang menurunkan sifat
disebut superclass, sedangkan class yang menerima sifat disebut subclasses.
2.5.3 System Definition
Menurut Mathiassen et al. (2000, p.24), “System definition is a concise
description of a computerized system expressed in natural language.” Dapat
diartikan sebagai gambaran atau penjelasan deskripsi singkat dari sistem yang
terkomputerisasi dengan penggunaan bahasa sehari-hari.
2.5.3.1 Rich Picture
Berdasarkan pendapat Lars Mathiassen et al. (2000, p.26), “A rich
picture is an informal drawing that presents the illustrator’s understanding of
a situation”. Dapat diterjemahkan sebagai, rich picture adalah gambaran yang
menunjukkan pemahaman tentang sebuah situasi. Biasanya digunakan untuk
menggambarkan proses bisnis suatu perusahaan.
29
2.5.3.2 FACTOR
Lars Mathiassen et al berpendapat (2000, p.39), “The FACTOR
criterion consists of six elements:
1. Functionality : the system functions that support the application
demand tasks.
2. Application domain : those parts of an organization that
administrate, monitor, or control a problem domain.
3. Conditions : the conditions under which the system will be
developed and used.
4. Technology : both technology used to develop the system and the
technology on which the system will run.
5. Objects : the main objects in the problem domain.
6. Responsibility : the sytem’s overall responsibility in relation to its
context.”
Kriteria FACTOR terdiri dari enam elemen, yaitu :
7. Functionality : fungsi dari system yang mendukung tugas-tugas
dari application domain.
8. Application domain : bagian dari organisasi yang
mengadministrasi, mengawasi, dan mengontrol problem domain.
9. Conditions : kondisi dimana system dikembangkan dan
digunakan.
30
10. Technology : teknologi yang digunakan untuk mengembangkan
sistem dan teknologi yang digunakan untuk menjalankan sistem.
11. Objects : objek utama dalam problem domain.
12. Responsibility : tanggung jawab sistem secara keseluruhan
terhadap konteks dari sistem tersebut.
2.5.4 Problem Domain Analysis
2.5.4.1 Pengertian Problem Domain
Berdasarkan pendapat Lars Mathiassen et al. (2000,p.6) “Problem
domain : that part of a context that is administrated, monitored or controlled
by a system.” Yang dapat diterjemahkan sebagai “Problem domain adalah
keadaan nyata yang dapat dilakukan, dipantau atau dikendalikan oleh sistem.
Analisa Problem domain dapat membantu dalam mengidentifikasi dan
membuat model atau tiruan dari problem domain yang digambarkan dalam
bentuk event table, class diagram, dan statechart diagram.”
2.5.4.2 Pengertian Class, Event, dan Behavior
Menurut Atul Kahate (2004, p.262), “A class is a representation of a
real-world object. A class consists of attributes and methods.” Yang dapat
diterjemahkan sebagai “Class merupakan representasi dari objek. Sebuah class
memiliki atribut dan method.”
Menurut Lars Mathiassen et al. (2000, p.53) “Class is a description of
a collection of objects sharing structure, behavioural pattern and attributes.”
31
Jadi class adalah gambaran dari sekumpulan objek yang memiliki sturcture,
behavioral pattern, dan attributes.
Lars Mathiassen et al. berpendapat (2000, p.74) “A cluster is a
collection of classes that helps us achieve and provide a problem-domain
overview. Classes within a cluster are usually connected by either a
generalization structure or an aggregation structure.” Jadi cluster merupakan
sekumpulan class untuk menggambarkan garis besar problem domain. Class
pada sebuah cluster biasanya dihubungkan dengan struktur generalisasi atau
agregasi.
Menurut Lars Mathiassen et al. (2000, p.51) “Event is an
instantaneous incident involving one or more objects.” Yang diterjemahkan
sebagai “Event adalah kejadian seketika yang melibatkan satu atau lebih objek.
Menurut Mathiassen et al. (2000, p.90, p.93), “Behavioral pattern : A
description of possible event traces for all objects in a class. Sequence : Events
in a set occur one by one. Selection : Exactly one out a set of events occurs.
Iteration : An event oocurs zero or more times.” Dalam aktivitas behavior,
class yang digambarkan dalam class diagram, diperluas dengan menambahkan
behavioral pattern dan attribute dari masing-masing class. Terdapat 3 (tiga)
jenis notasi behavioural pattern yaitu: Sequence, Selection, dan Iteration.
32
Gambar 2.3 Contoh statechart diagram
2.5.5 Application Domain Analysis
2.5.5.1 Pengertian Application Domain
Menurut Lars Mathiassen et al. (2000, p.6) “Application domain : The
organization that administrates, monitors, or controls a problem domain.”
Yang dapat diterjemahkan sebagai “Application domain adalah organisasi yang
mengatur, mengawasi atau mengendalikan sebuah problem domain. Hasil dari
analisa application domain dibuat dalam bentuk usecase, sequence diagram,
function list, dan interface.”
2.5.5.2 Pengertian Usage, Function dan Interface
Menurut Lars Mathiassen et al. (2000, p.119), “Analyzing an existing
application domain can create a huge amount of detailed information that has
little value to the development process. For efficiency, you must maintain a
relevant level of abstraction and focus on the interaction between users and the
system.” Menganalisis application domain yang ada dapat menghasilkan
rincian informasi yang sangat banyak, dimana informasi-informasi tersebut
33
hanya memberikan sedikit bantuan terhadap proses pengembangan. Untuk itu,
tingkat abstaksi haruslah ditentukan dan fokus terhadap interkasi antara sistem
dan penggunanya.
Lars Mathiassen et al. berpendapat (2000, p.120), “Use case : A
pattern for interaction between the system and actors in the application
domain.” Use case merupakan sebuah pola interaksi antara sistem dengan
aktor pada application domain.
Berdasarkan pendapat Deacon John (2009, p.73), “A use case scenario
describes an example of the system-to-be in action.” Penggunaan use case
dapat membantu mengatasi masalah tersebut. Dimana use case diartikan
sebagai pola interaksi antara sistem dan aktor dalam application domain.
Menurut Simon Bennett (2006, p.145), “Use cases are descriptions of
the functionality of the system from the users’ prespective.” Dapat
diterjemahkan menjadi, use case adalah gambaran fungsi sistem dari sudut
pandang pengguna sistem. Use case juga akan menggambarkan pengguna mana
yang akan berkomunikasi dengan sistem untuk menjalankan fungsi yang ada.
Mathiassen et al. (2000, p.138) berpendapat ”Function is a facility for
making a model useful for actor”. Diterjemahkan menjadi : function adalah
fasilitas yang membuat model berguna bagi actor. Tipe-tipe function yaitu :
update, signal, read dan compute.
Mathiassen et al. (2000, p.151) menyatakan, ”Interface is a facilities
that make a system’s model and functions available to actor”. Dapat diartikan
sebagai berikut: Interface yaitu suatu fasilitas untuk membuat suatu sistem
34
model dan fungsi-fungsi yang tersedia bagi aktor. Sedangkan menurut Atul
Kahate (2004, p.264), sebuah interface berfungsi untuk merepresentasikan
class pada lingkungan eksternal (user).
2.5.5.3 Sequence Diagram
Menurut Simon Bennet et al. (2006, p252), “An interaction sequence
diagram (or simply a sequence diagram) is one of several kinds of UML
interaction diagram which is semantically equivalent to a communication
diagram for simple interactions.” Dapat diterjemahkan menjadi sequence
diagram adalah salah satu jenis diagram interaksi pada UML yang juga
merupakan diagram komunikasi untuk interaksi sedarhana. Sequence diagram
menggambarkan interaksi antara objek yang sesuai dengan alur waktu.
2.5.6 Architectural Design
2.5.6.1 Pengertian Architectural Design
Lars Mathiassen et al. menyatakan (2000, p173), “Successful system
are distinguished from less successful ones by a powerful architectural design.
The architecture structures a system according to parts and satisfies certain
design criteria.” Kesuksesan suatu sistem ditentukan dari kekokohan desain
arsitekturnya. Arsitektur membuat sistem berdasarkan kebutuhan dan kriteria
desain sistem tersebut. Architectural design terdiri dari 3 (tiga) aktivitas yaitu :
Criteria, Components, dan Processes.
35
Gambar 2.4 Aktivitas architectural design
2.5.6.2 Pengertian Criteria
Mathiassen et al. (2000, p.177) menyatakan, “Result : A collection of
prioritized criteria. A good design has no major weaknesses. A good design
balances several criteria. A good design is usable, flexible, and
comprehensible.” Tujuan dari sebuah criteria adalah untuk mempersiapkan
prioritas dari sebuah perancangan. Sebuah perancangan yang baik harus tidak
memiliki kelemahan yang besar, keseimbangan antar kriteria, dan harus usable,
flexible, dan comprehensible.
2.5.6.3 Pengertian Component Architecture
Lars Mathiassen et al. berpendapat (2000, p.190), “ Component : A
collection of program parts that constitutes a whole and has well-defined
responsibilities. ” Sedangkan Component Architecture diartikan sebagai
struktur sistem yang terbentuk dari komponen yang saling berhubungan.
36
Menurut Atul Kahate (2004, p.269), “Class represents a logical view.
Component represents a physical view e.g. document, executable file, source
file, data file, table. Location, library file.” Jadi class lebih bersifat logis
sedangkan component lebih bersifat fisik (komputerisasi)
Menurut pendapat Mathiassen et al. (2000, p.189), “Reduce
complexity by separating concerns. Reflect stable context structures. Reuse
existing components.” Suatu component architecture yang baik menunjukkan
beberapa prinsip, yaitu mengurangi kompleksitas dengan membagi menjadi
beberapa tugas, menggambarkan stabilitas dari konteks sistem, dan
memungkinkan suatu komponen dapat digunakan pada bagian lain.
Uraian umum dan solusi yang dapat dilakukan dalam component
architecture yaitu : Layered, Generic, dan Client-Server Architecture Pattern.
Layered Architecture Pattern merupakan bentuk arsitektur yang paling
sederhana. Component hanya bertanggung jawab secara upward atau
downward.
Gambar 2.5 Layered architecture pattern
37
Pada generic architecture pattern, model component terletak pada
lapisan (layer) bawah, kemudian function component terletak di atasnya, dan
interface terletak pada lapisan teratas. Biasanya lapisan paling bawah pada
generic architecture pattern yaitu technical platform component.
Gambar 2.6 Generic architecture pattern
Client server architecture pattern digunakan apabila prosesor terpisah
secara geografis. Pattern ini terdiri dari server dan beberapa client.
Gambar 2.7 Client-server architecture pattern
38
Tabel 2.2 Bentuk distribusi client-server architecture.
Client Server Architecture U U+F+M Distributed presentation U F+M Local presentation U+F F+M Distributed functionality U+F M Centralized data U+F+M M Distributed data Sumber : Lars Mathiassen et al. (2000, p.200) 2.5.6.4 Pengertian Process Architecture
Menurut Lars Mathiassen et al. (2000, p.211) “Process architecture is
a system execution structure composed of interdependent processes.” Process
architecture lebih dekat dengan perangkat keras (hardware). Hasil dari proses
ini yaitu deployment diagram yang mendeskripsikan distribusi dan kolaborasi
komponen-komponen program dan active objects pada prosesor.
Menurut Simon Bennett (2006, p.558), “Deployment diagrams are
used to show the configuration of run-time processing elements and the
software components, artefacts and processes that are located on them.”
Terdapat tiga jenis pola distribution pattern, yaitu : the centralized
pattern, the distributed pattern, dan the decentralized pattern. Kelebihan
centralized pattern yaitu biaya yang rendah untuk client, data lebih konsisten,
dan jaringan yang digunakan cukup sederhana. Namun kekurangannya yaitu
rendahnya robustness, waktu akses lebih tinggi karena data digunakan
bersama, serta tidak memiliki backup.
Kelebihan distributed pattern yaitu waktu akses lebih sedikit,
tingginya robustness, dan memiliki backup. Kelemahan decentralized pattern
39
yaitu penggandaan data, lalu lintas pada jaringan menjadi lebih tinggi, biaya
untuk client lebih tinggi, dan arsitektur bersifat lebih rumit.
Kelebihan decentralized pattern yaitu data yang konsisten dan waktu
akses lebih rendah. Sedangkan kelemahannya yaitu biaya untuk prosesor /
perangkat keras lebih besar.
2.5.7 Component Design
Perancangan komponen dilakukan untuk menentukan keperluan-keperluan
yang berhubungan dengan pengimplementasian pada kerangka arsitektur. Terdiri
dari tiga aktivitas, yaitu : model component, function component, dan connecting
component.
2.5.7.1 Pengertian Model Component
Menurut Lars Mathiassen et al. (2000, p.236) “Model component is a
part of a system that implements the problem domain model” yang diartikan
sebagai “Model component adalah bagian dari sistem yang
mengimplementasikan model problem domain.” Tujuan dari model component
yaitu menyampaikan data sekarang dan data historis kepada function, interface,
dan kepada para pengguna sistem maupun kepada sistem lain. Hasil dari
aktivitas model component yaitu class diagram yang direvisi. Revisi terdiri
dari penambahan class, attributes, dan structure yang merepresentasikan event.
Event yang hanya terlibat dalam sebuah objek disebut private event.
Sedangkan event yang terlibat dalam beberapa objek disebut common events.
40
Pengubahan (revisi) class dapat dilakukan dengan cara: generalization,
association, dan embedded iterations.
2.5.7.2 Pengertian Function Component
Menurut Lars Mathiassen et al. (2000, p.252) “Function component is
a part of a system that implements functional requirements” yang diartikan
sebagai “Function component yaitu bagian dari sistem yang
mengimplementasikan kebutuhan fungsional.” Tujuan dari function component
yaitu menghubungkan pengguna sistem atau sistem lain dengan model.
Function dapat dirancang sebagai operasi, yaitu : update, read, compute, dan
signal.
Function dirancang dan diimplementasikan menggunakan operation
dalam class. Operation dapat diartikan sebagai behavior yang dapat diaktifkan
melalui sebuah objek. Operation juga dapat diartikan sebagai prosedur.
2.5.7.3 Pengertian Connecting Components
Aktivitas ini bertujuan untuk menghubungan komponen-komponen
sistem. Coupling dan cohesion adalah standard kualitas yang diukur dengan
mengevaluasi class diagram komponen yang bersangkutan. Coupling adalah
ukuran seberapa erat hubungan antara dua class atau komponen. Sedangkan
cohesion adalah ukuran seberapa erat hubungan dalam sebuah class atau
komponen.
Menurut Simon Bennett (2006, p.382), “Interaction coupling should
be kept to a minimum to reduce the possibility of changes rippling through the
interfaces and to make reuse easier. Good design produces highly cohesive
41
operations, each of which deals with a single functional requirement.” Sebuah
sistem yang baik, hendaknya memiliki coupling yang rendah dan cohesion yang
tinggi.
Menurut Lars Mathiassen et al. (2000, p.275), “There are three forms
of connection. Aggregating another component’s classes. Specializing another
component’s public class. Calling public operations in another component’s
objects.” terdapat tiga bentuk hubungan antar komponen, yaitu :
• Mengaggregasikan class component lain.
• Mengspesialisasikan class component public lain..
• Memanggil public operation dari komponen objek lain..
2.5.8 Pengertian Dokumentasi
Berdasarkan pendapat Lars Mathiassen et al. (2000, p.300), “In system
development, documents play central role and serve different needs, acting as : work
tools that collect and structure subresults as they are produced. Control tools to
measure work progress, and tools that retain agreements about system requirements
and design.” Dokumentasi dibuat dalam bentuk dokumen analisis dan dokumen
perancangan. Dokumen analisis membentuk dasar dari requirement specification,
yang merupakan kesepakatan / persetujuan antara user dengan pengembang sistem.
Sedangkan dokumen perancangan berperan sebagai kerangka referensi bagi
programer.
Dokumentasi dilakukan dengan tujuan sebagai alat kerja yang mengumpulkan
dan menyusun apa yang telah dihasilkan, sebagai alat untuk mengukur kemajuan
42
kerja, dan sebagai alat untuk menyimpan kesepakatan / persetujuan mengenai system
requirement dan perancangan.