BAB 2 LANDASAN TEORI
2.1 Teori – Teori Khusus Sub bab ini berisi teori-teori pendukung dalam penulisan skripsi Sistem Informasi Akuntansi Penerimaan dan Pengeluaran Kas untuk M enghasilkan Laporan keuangan partai politik. 2.1.1 Definisi Partai Politik dan Keuangan Partai Politik M enurut Bab I, Pasal 1, Ayat (1), UNDANG-UNDANG REPUBLIK INDONESIA NOMOR 2 TAHUN 2008 TENTANG PARTAI POLITIK, Partai Politik adalah organisasi yang bersifat nasional dan dibentuk oleh sekelompok warga negara Indonesia secara sukarela atas dasar kesamaan kehendak dan cita-cita untuk memperjuangkan dan membela kepentingan politik anggota, masyarakat, bangsa dan negara,
serta memelihara keutuhan
Negara Kesatuan
Republik
Indonesia
berdasarkan Pancasila dan Undang-Undang Dasar Negara Republik Indonesia Tahun 1945. M enurut Bab I, Pasal 1, Ayat (5), UNDANG-UNDANG REPUBLIK INDONESIA NOM OR 2 TAHUN 2008 TENTANG PARTAI POLITIK, Keuangan Partai Politik adalah semua hak dan kewajiban Partai Politik yang dapat dinilai dengan uang, berupa uang, atau barang serta segala bentuk kekayaan yang dimiliki dan menjadi tanggung jawab partai politik.
11 2.1.2 Keuangan Partai Politik Partai politik sebagai sebuah organisasi dengan aktivitas politik yang luas memerlukan dukungan dana yang cukup. Tanpa dukungan dana yang memadai, sulit diharapkan partai politik untuk dapat melaksanakan fungsinya secara efektif. Bab XV, Pasal 34, ayat (1) UNDANG-UNDANG REPUBLIK INDONESIA NOMOR 2 TAHUN 2008 TENTANG PARTAI POLITIK, Undang-undang menentukan keuangan partai politik bersumber dari : 1. Iuran anggota; 2. Sumbangan yang sah menurut hukum; dan 3. Bantuan keuangan dari Anggaran Pendapatan dan Belanja Negara / Anggaran Pendapatan dan Belanja Daerah. Selanjutnya pasal
35
Undang-undang
menentukan
batas
maksimum
sumbangan dapat diterima oleh partai politik sebagai berikut : 1. Perseorangan
bukan
anggota
Partai
Politik,
paling
banyak
senilai
Rp1.000.000.000,00 (satu miliar rupiah) per orang dalam waktu 1 (satu) tahun anggaran; dan 2. Perusahaan dan/atau badan usaha, paling banyak senilai Rp4.000.000.000,00 (empat miliar rupiah) per perusahaan dan/atau badan usaha dalam waktu 1 (satu) tahun anggaran. M enurut Bab II, Pasal 7, Keputusan Komisi Pemilihan Umum (KPU) Nomor 676 tahun 2003 tentang Tata Administrasi Keuangan dan Sistem Akuntansi Keuangan Partai Politik, Laporan keuangan tahunan partai politik, wajib diserahkan kepada Kantor Akuntan Publik (KAP) yang telah mendapat ijin dari Departemen Keuangan serta yang tidak berafiliasi kepada salah satu partai politik dan peserta
12 pemilihan umum selambat-lambatnya 3 (tiga) bulan setelah akhir tahun buku yang bersangkutan. Setelah itu, Kantor akuntan publik wajib menyelesaikan audit selambat-lambatnya 3 (tiga) bulan sejak diterimanya laporan. Kemudian, partai politik menyerahkan laporan keuangan tahunan yang telah diaudit kepada Komisi Pemilihan Umum selambat-lambatnya 7 (tujuh) hari setelah diterimanya laporan hasil audit dari kantor akuntan publik dan Kantor akuntan publik wajib menjelaskan hasil auditnya kepada Komisi Pemilihan Umum.
2.1.3 Pelaporan Keuangan Partai Politik 2.1.3.1 Tujuan Pelaporan Keuangan Tujuan Pelaporan Keuangan menurut KPU dan IAI (2003), antara lain: (p. 10). 1. Akuntabilitas M empertanggungjawabkan pengelolaan sumber daya keuangan serta pelaksanaan kebijakan yang dipercayakan kepada partai politik. 2. M anajerial M enyediakan informasi keuangan yang berguna untuk perencanaan dan pengelolaan keuangan partai serta memudahkan pengendalian yang efektif seluruh aktiva, kewajiban, dan aktiva bersih. 3. Transparansi M enyediakan informasi keuangan yang terbuka bagi Komisi Pemilihan Umum (KPU), pemerintah, masyarakat, dan pihak-pihak lain yang memiliki kepentingan terhadap informasi keuangan partai politik, guna memberdayakan keterbukaan politik pada publik.
13 2.1.3.2 Kriteria Laporan Keuangan M enurut KPU dan IAI (2003), laporan keuangan harus disajikan dengan memenuhi ketentuan sebagai berikut: (p. 30). 1. Komparatif (Comparable) Disajikan dengan menunjukkan perbandingan antara periode berjalan dengan periode sebelumnya. Agar perbandingan bermanfaat, maka informasi keuangan dari periode berjalan harus dilaporkan secara konsisten dengan informasi pada periode terdahulu. Apabila terjadi perubahan metode akuntansi, maka harus diungkapkan dalam laporan keuangan. 2. Tepat waktu (Timeliness) Agar informasi keuangan bermanfaat dan dapat memenuhi kewajiban sebagaimana disyaratkan dalam undang-undang, maka laporan keuangan diterbitkan tepat waktu setelah periode akuntansi berakhir. 3. Keandalan (Reliable) Laporan keuangan harus menyajikan transaksi-transaksi atau kejadiankejadian yang penting sehingga informasi yang disajikan dapat diandalkan dan pemakai laporan keuangan dapat mengambil keputusan atas transaksi dan
kejadian
yang penting berdasarkan
kondisi keuangan
yang
sesungguhnya. 4. Lengkap (Complete) Laporan keuangan yang dihasilkan harus mencakup laporan posisi keuangan, laporan aktivitas, laporan arus kas, dan catatan atas laporan keuangan.
14 2.1.3.3 Pemakai Laporan Keuangan M enurut KPU dan IAI (2003), Pemakai Laporan Keuangan Partai Politik adalah pihak-pihak yang memiliki kepentingan akan informasi keuangan partai politik, dan dibedakan menjadi dua, yaitu : (p. 10-11). 1. Pihak Internal, yaitu pihak pemakai informasi keuangan di dalam organisasi partai politik. Yang termasuk pihak internal adalah : a. Anggota Partai Politik, berkepentingan untuk mengetahui manajemen penggunaan dana yang telah mereka berikan melalui iuran maupun sumbangan, apakah telah digunakan sesuai dengan amanat partai dalam rangka kepentingan nasional dan menggunakan informasi dalam laporan keuangan untuk menilai kinerja kepengurusan partai. b. Pengurus, dalam rangka pengelolaan sumber daya partai politik. 2. Pihak Eksternal, yaitu para pemakai informasi keuangan di luar organisasi partai politik. Yang termasuk pihak eksternal adalah : a. Komisi Pemilihan Umum, mempunyai kepentingan untuk menilai ketaatan dan kepatuhan partai politik terhadap ketentuan perundangundangan yang berlaku. b. Pemerintah (pemberi subsidi), mempunyai kepentingan atas subsidi atau bantuan dari anggaran Negara yang diberikan pemerintah (pusat maupun daerah) mengenai restriksi / pembatasan misalnya dalam hal larangan bagi partai politik untuk menggunakan dana yang mereka peroleh dari pemerintah untuk mendanai kegiatan kampanye pemilu. c. M asyarakat,
termasuk
di
dalamnya
organisasi-organisasi
non
pemerintah (LSM -Lembaga Swadaya M asyarakat) yang secara luas
15 berkeinginan untuk mengetahui sejauh manakah cara partai politik mengelola keuangan, serta menilai apakah partai politik telah mampu menerapkan prinsip good political party governance. d. Penyumbang (donatur), memiliki kepentingan untuk menilai apakah sumbangan yang telah diberikan digunakan sebagaimana mestinya untuk kepentingan partai politik. e. Pihak-pihak lain yang mempunyai kepentingan akan informasi dalam laporan keuangan partai politik
2.1.4 Definisi, Fungsi, dan Format Laporan Keuangan M enurut
KPU dan
IAI
(2003), Laporan Keuangan
adalah
laporan
pertanggungjawaban partai politik dalam hal pengelolaan sumber daya keuangan yang menyediakan informasi yang relevan untuk memenuhi kepentingan para penyumbang, anggota partai politik, dan pihak lain yang menyediakan sumber daya, serta pihak lain yang berkepentingan (p. 11). Laporan Keuangan Partai Politik terdiri dari : Laporan Posisi Keuangan, Laporan Aktivitas, Laporan Arus Kas, dan Catatan atas Laporan Keuangan. 2.1.4.1 Laporan Posisi Keuangan M enurut KPU dan IAI (2003), Laporan Posisi Keuangan adalah laporan yang menyediakan informasi mengenai aktiva, kewajiban, dan aktiva bersih, serta informasi mengenai hubungan di antara unsur-unsur tersebut pada waktu tertentu (p. 11-12). Informasi dalam Laporan Posisi Keuangan dapat digunakan oleh para pemakai untuk menilai: (p. 12).
16 1. Kemampuan suatu partai politik untuk melakukan kegiatannya secara berkelanjutan. 2. Likuiditas,
fleksibilitas
keuangan,
kemampuan
untuk
memenuhi
kewajibannya dan kebutuhan akan pendanaan eksternal.
Berikut ini adalah Format Laporan Posisi Keuangan: (p. 23-24).
PARTAI PO LITIK XYZ LAPORAN POS IS I KEUANGAN 31 Desember 20x0 dan 20x1 AKTIVA Aktiva Lancar Kas dan setara kas Piutang Bunga Piutang Iuran Biaya dibayar di muka Investasi Lancar Perlengkapan Jumlah Aktiva Lancar Aktiva Tak Lancar Tanah Bangunan Kendaraan Peralatan Akumulasi Depresiasi Investasi jangka panjang Aktiva lain-lain Jumlah Aktiva Tak Lancar JUMLAH AKTIVA KEWAJIBAN DAN AKTIVA BERS IH
20X1
20X0
XXX XXX XXX XXX XXX XXX XXX
XXX XXX XXX XXX XXX XXX XXX
XXX XXX XXX XXX XXX XXX XXX XXX XXX
XXX XXX XXX XXX XXX XXX XXX XXX XXX
Utang ke pihak ketiga
XXX
XXX
Penghasilan diterima di muka
XXX
XXX
Utang Bank
XXX
XXX
KEWAJIBAN Kewajiban jangka pendek
17 Utang Bunga
XXX
XXX
Utang Pajak
XXX
XXX
Bagian lancar dari utang jangka panjang
XXX
XXX
Kewajiban jangka pendek lain-lain
XXX
XXX
XXX
XXX
Utang ke pihak ketiga
XXX
XXX
Utang Bank
XXX
XXX
Kewajiban jangka panjang lain-lain
XXX
XXX
Jumlah kewajiban jangka panjang:
XXX
XXX
Jumlah Kewajiban:
XXX
XXX
Tidak terikat
XXX
XXX
Terikat Temporer
XXX
XXX
Terikat Permanen
XXX
XXX
Jumlah aktiva bersih: XXX
XXX
Jumlah kewajiban jangka pendek: Kewajiban jangka panjang
AKTIVA BERS IH
JUMLAH KEWAJIBAN DAN AKTIVA BERS IH: XXX
XXX
2.1.4.2 Laporan Aktivitas M enurut KPU dan IAI (2003), Laporan aktivitas adalah laporan yang menyajikan perubahan aktiva bersih selama suatu periode. Laporan aktivitas menyediakan informasi mengenai: (p. 18). 1. Pengaruh transaksi dan peristiwa lain yang mengubah jumlah dan sifat aktiva bersih. 2. Hubungan antar transaksi dan peristiwa lain.
18 3. Bagaimana penggunaan sumber daya dalam pelaksanaan berbagai program dan kegiatan. Informasi dalam laporan aktivitas dapat digunakan oleh para pemakainya untuk: (p. 18). 1. M engevaluasi kinerja dalam suatu periode 2. M enilai upaya, kemampuan, dan kesinambungan partai politik dalam memperjuangkan kepentingan politiknya 3. M enilai pelaksanaan tanggung jawab dan kinerja pengurus.
Berikut ini adalah format Laporan Aktivitas: (p. 24-25).
PARTAI PO LITIK XYZ LAPORAN AKTIVITAS Untuk tahun berakhir pada tanggal 31 Desember 20xx ( dalam jutaan rupiah )
Perubahan Aktiva Bersih Tidak Terikat (A)
(B)
Penerimaan dan Penghasilan Iuran Anggota
Rp
XX
Sumbangan
XX
Bantuan pemerintah
XX
Penghasilan investasi
XX
Penghasilan lain-lain
XX
Jumlah Penerimaan dan Penghasilan Tidak Terikat
XX
Aktiva Bersih yang Berakhir Pembatasannya Pemenuhan program pembatasan
Rp
XX XX
19
(C)
Pemenuhan pembatasan perolehan aktiva tetap
XX
Berakhirnya pembatasan waktu
XX
Jumlah Aktiva yang telah Berakhir Pembatasannya
Rp
XX
Jumlah Penerimaan dan Penghasilan (C = A+B)
Rp
XX
Rp
XX
Beban dan Kerugian: (D)
Beban: Kampanye M unas / M ukenas / KLB
XX
Kaderisasi
XX
Bakti Sosial
XX
Penelitian dan pengembangan
XX
Kegiatan lain-lain
XX
Beban manajemen dan umum
XX
Jumlah Beban
Rp
XX
Rp
(E)
Kerugian:
(F )
Kerugian investasi Kerugian lain-lain Jumlah beban dan kerugian (F = D + E)
Rp
XX XX XX
(G)
Kenaikan / Penurunan Aktiva Bersih Tdk Terikat (G = C-F )Rp
XX
Perubahan Aktiva Bersih Terikat Temporer Sumbangan
(H)
Rp
XX
Penghasilan investasi
XX
Penghasilan lain-lain
XX
Beban M anajemen dan Umum
(XX)
Kerugian Lain-lain
(XX)
Aktiva Bersih yang Berakhir Pembatasannya
(XX)
Kenaikan / Penurunan Aktiva Bersih Terikat Temporer
Rp
XX
20 Perubahan Aktiva Bersih Terikat Permanen Sumbangan
(I)
Rp
XX
Penghasilan Investasi
XX
Penghasilan lain-lain
XX
Beban M anajemen dan Umum
(XX)
Kerugian lain-lain
(XX)
Kenaikan / Penurunan Aktiva Bersih Terikat Permanen
Kenaikan Aktiva Bersih ( G + H + I )
Rp
XX
Rp
XX
Aktiva Bersih Awal Tahun
XX
Aktiva Bersih Akhir Tahun
Rp
XX
2.1.4.3 Laporan Arus Kas M enurut KPU dan IAI (2003), Laporan arus kas adalah laporan yang menyajikan arus kas menurut aktivitas operasi, investasi, dan pendanaan selama periode tertentu (p. 20). Informasi dalam laporan arus kas berguna bagi para pemakai laporan keuangan untuk: (p. 20). 1. M enilai kemampuan partai politik dalam menghasilkan kas dan setara kas dan menilai kebutuhan partai politik untuk menggunakan arus kas tersebut. 2. Jika digunakan dalam kaitannya dengan laporan keuangan yang lain, dapat memberikan
informasi
yang
memungkinkan
untuk
mengevaluasi
perubahan dalam aktiva bersih partai politik, struktur keuangan ( likuiditas dan solvabilitas ) dan kemampuan untuk mempengaruhi jumlah serta waktu arus kas dalam rangka adaptasi dengan perubahan keadaan dan peluang.
21 Berikut ini adalah format Laporan Arus Kas: (p. 25-27). Metode Langsung PARTAI PO LITIK XYZ LAPORAN ARUS KAS Untuk Tahun yang Berakhir Pada Tanggal 31 Desember 20X1
Aliran Kas dari Aktivitas Operasi Penerimaan kas dari iuran anggota
Rp
XX.XXX,XX
Penerimaan kas dari sumbangan perorangan
XX.XXX,XX
Penerimaan kas dari sumbangan badan / perusahaan
XX.XXX,XX
Penerimaan kas dari sumbangan pemerintah
XX.XXX,XX
Penerimaan kas dari bunga yang diterima
XX.XXX,XX
Penerimaan kas lain-lain
XX.XXX,XX
Pengeluaran kas untuk bunga yang dibayar
(XX.XXX,XX)
Pengeluaran kas untuk pembayaran pengurus dan suplier (XX.XXX,XX) Pengeluaran kas untuk kegiatan rutin partai
(XX.XXX,XX)
Pelunasan utang lain-lain
(XX.XXX,XX)
Kas bersih yang diterima ( digunakan ) untuk aktivitas operasiRp XX.XXX,XX Aliran kas dari aktivitas investasi Penerimaan kas dari penjualan aktiva tetap
Rp
Penerimaan kas dari penjualan investasi
XX.XXX,XX XX.XXX,XX
Pembayaran kas untuk pembelian aktiva tetap
(XX.XXX,XX)
Pembayaran kas untuk pembelian investasi
(XX.XXX,XX)
Kas Bersih yang diterima ( digunakan ) untuk aktivitas investasi XX.XXX,XX Aliran kas dari aktivitas pendanaan Penerimaan hasil dana abadi Penerbitan utang jangka panjang
Rp
XX.XXX,XX XX.XXX,XX
22 Bunga berbatas untuk reinvestasi
XX.XXX,XX
Pembayaran kewajiban jangka panjang
(XX.XXX,XX)
Kas Bersih yang diterima ( digunakan ) untuk aktivitas pendanaanXX.XXX,XX
Kenaikan (Penurunan) bersih dalam kas dan setara kas Rp
XX.XXX,XX
Kas dan setara kas pada awal tahun
Rp
XX.XXX,XX
Kas dan setara kas pada akhir tahun
Rp
XX.XXX,XX
Rp
XX.XXX,XX
Rekonsiliasi perubahan dalam aktiva bersih menjadi Kas bersih yang digunakan untuk aktivitas operasi: Perubahan dalam aktiva bersih
Penyesuaian untuk rekonsiliasi perubahan dalam aktiva bersih M enjadi kas bersih yang digunakan untuk aktivitas operasi: Depresiasi
Rp
Kerugian akibat kebakaran
XX.XXX,XX XX.XXX,XX
Kenaikan Piutang bunga
(XX.XXX,XX)
Penurunan biaya dibayar di muka
XX.XXX,XX
Kenaikan dalam piutang lain-lain
(XX.XXX,XX)
Kenaikan dalam utang
XX.XXX,XX
Penurunan dalam penerimaan di muka
(XX.XXX,XX)
Penurunan dalam utang lain-lain
(XX.XXX,XX)
Sumbangan terikat untuk investasi jangka panjang (XX.XXX,XX) Penghasilan bersih untuk investasi jangka panjang
(XX.XXX,XX)
Kas Bersih diterima ( digunakan ) untuk aktivitas operasi Rp XX.XXX,XX Data tambahan untuk aktivitas investasi dan pendanaan nonkas: Peralatan yang diterima sebagai hibah
Rp
XX.XXX,XX
Pembebasan premi asuransi kematian, nilai kas yang diserahkan Rp XX.XXX,XX
23 2.1.4.4 Catatan Atas Laporan Keuangan M enurut KPU dan IAI (2003), Catatan atas laporan keuangan adalah penjelasan naratif atau rincian jumlah yang tertera dalam laporan posisi keuangan, laporan aktivitas dan laporan arus kas serta informasi tambahan lainnya yang diharuskan
dan
dianjurkan
untuk
diungkapkan
untuk
menghasilkan penyajian laporan keuangan secara wajar. Informasi yang tercantum dalam catatan atas laporan keuangan berguna bagi pemakai untuk mengetahui penjelasan naratif atau rincian jumlah yang tertera dalam laporan posisi keuangan, laporan aktivitas dan laporan arus kas dan informasi lain yang dipandang perlu dalam mengambil keputusan. (p. 21).
2.1.5 Sistem Informasi Akuntansi Partai Politik 2.1.5.1 Kerangka Umum S istem Akuntansi Keuangan Partai Politik
M enurut KPU dan IAI (2003), Sistem akuntansi keuangan partai politik merupakan suatu sistem dalam partai politik yang ada kaitannya dengan keuangan. Sistem akuntansi merupakan salah satu diantara berbagai sistem dalam partai politik yang digunakan pengurus dalam mengelola partai. Sistem ini terdiri dari berbagai prosedur yang membentuk suatu bangunan sistem akuntansi (p. 90). Beberapa jaringan fungsi yang membentuk sistem akuntansi adalah: (p. 90-91).
24 1. Fungsi Operasi
Yaitu fungsi yang berinteraksi secara langsung terhadap kegiatan transaksi. Dari fungsi ini, mekanisme dokumen sumber (faktur, kuitansi, surat perjanjian, dan lain-lain) berasal. Interaksi transaksi dengan pihakpihak ketiga juga banyak dilakukan oleh fungsi ini.
2. Fungsi Bendahara
Bendahara merupakan fungsi yang melaksanakan penyimpanan kas (kustodian) dan kepengurusan kas milik partai politik. Kas yang ada di tangan maupun yang berada di berbagai rekening bank akan berada di bawah kepengurusan bendahara. Bendahara harus membuat pembukuan atas kas baik dari segi penerimaannya maupun pengeluarannya agar diperoleh informasi yang andal untuk mendukung pembuatan keputusan berkaitan dengan kas.
3. Fungsi Akuntansi (Pembukuan)
Suatu fungsi yang bertugas mencatat dan membukukan semua jenis transaksi terkait uang dalam jurnal, register-register, buku besar, dan buku pembantu yang akhirnya akan menyajikan semua transaksi dalam laporan keuangan.
25 4. Fungsi Otorisasi
Adalah fungsi yang mempunyai wewenang untuk mengesahkan suatu transaksi, fungsi ini ada di tangan hierarki pengurus tingkat tinggi. Fungsi otorisasi juga harus menjalankan pengendalian atas semua transaksi dan kegiatan yang mempunyai dampak keuangan terhadap partai politik. Hal tersebut dilakukan agar laporan keuangan yang dihasilkan handal, aktiva milik partai politik terjaga keamanannya, terlaksananya efisiensi, ekonomi dan efektivitas operasi, serta mendorong dipatuhinya (compliance) terhadap kebijakan dan peraturan eksternal (Undang-undang, peraturan pemerintah, dan peraturan KPU) maupun peraturan internal yang ditetapkan oleh partai politik.
Dokumen yang digunakan dalam sistem informasi akuntansi partai politik, antara lain: (p. 91-92).
1. Formulir
Formulir merupakan dokumen yang menjadi media pencatatan transaksi. Contoh dari formulir adalah bukti kas keluar, bukti kas masuk, cek, bukti penerimaan non kas. Informasi yang tercantum dalam formulir akan digunakan sebagai dasar untuk melakukan pencatatan pada jurnal, buku besar, dan buku pembantu.
26 2. Jurnal
Jurnal merupakan catatan akuntansi pertama yang digunakan untuk mencatat, mengklasifikasikan, dan meringkas data keuangan dan data lainnya. Informasi dari formulir akan dijadikan sebagai dasar untuk mencatat dalam jurnal. Dalam jurnal ini, data keuangan untuk pertama kalinya diklasifikasikan menurut penggolongan yang sesuai dengan informasi yang akan disajikan dalam laporan keuangan. Dalam jurnal ini, dilakukan kegiatan peringkasan data yang hasil peringkasannya (dalam jumlah rupiah) lalu diposting ke rekening yang bersangkutan dalam buku besar. Partai Politik membuat suatu jurnal umum (general journal) yang menjadi media untuk menjurnal semua transaksi atau dapat juga membuat specialized journal, yaitu suatu jurnal khusus untuk mencatat transaksi yang frekuensi terjadinya sangat tinggi. M isalnya, jurnal penerimaan kas, jurnal pengeluaran kas, dan jurnal pembelian.
3. Buku Besar
Buku besar terdiri dari akun-akun (rekening) yang digunakan untuk meringkas data keuangan yang telah dicatat sebelumnya dalam jurnal. Buku-buku besar tersebut disediakan sesuai dengan unsur-unsur informasi yang akan disajikan dalam laporan keuangan. Buku besar dapat dipandang sebagai wadah untuk menggolongkan data keuangan, di pihak lain dapat dipandang pula sebagai sumber informasi keuangan untuk menyajikan laporan keuangan.
27 4. Buku pembantu
Data-data keuangan di buku besar perlu diperinci dalam buku pembantu. Buku pembantu ini terdiri dari sub-sub akun yang merinci akunakun di buku besar. Sebagai contoh, akun kas dan setara kas dalam buku besar akan diperinci lagi sub-sub akunnya dalam buku kas di bendahara, kas di bank, deposito dan sebagainya. Buku besar dan buku pembantu merupakan catatan akuntansi akhir (books of final entry), yang berarti tidak ada catatan akuntansi lain lagi sesudah data akuntansi diringkas dan digolongkan dalam akun di buku besar dan di buku pembantu.
5. Laporan
Hasil akhir proses akuntansi adalah laporan keuangan yang berupa laporan posisi keuangan (neraca), laporan aktivitas (perubahan aktiva bersih), laporan arus kas, dan catatan atas laporan keuangan.
28 Berikut ini merupakan diagram alir (Flow Charts) sistem akuntansi keuangan partai politik: (p. 89).
Gambar 2.1. Kerangka Umum Sistem Akuntansi Keuangan PARTAI POLITIK. (Sumber : KPU dan IAI (2003, p. 89))
29 2.1.5.2 Penerimaan Kas
M enurut KPU dan IAI (2003), Kas (berupa uang tunai) diperoleh oleh partai politik melalui kegiatan pengumpulan dana (fund raising) secara insidental maupun secara regular atau tetap. Dalam kegiatan pengumpulan dana yang bersifat insidental (berbentuk acara / kegiatan tertentu), bagian bendahara kasir (pemegang uang) harus melakukan pencatatan awal atas uang yang langsung dia terima. Bendahara dalam hal ini harus membuat bukti kas masuk (BKM ) kemudian mencatatnya dalam register kas dan copian kedua dari bukti kas masuk disampaikan ke bagian akuntansi untuk dijurnal. Penerimaan kas langsung harus dibuatkan rincian daftar penyumbang, yang nantinya copiannya disampaikan juga ke bagian akuntansi. Untuk penerimaan kas regular melalui penyetoran ke kas partai lewat sekretariat pengurus partai (seperti yang ditunjukan pada gambar 2.2).
Untuk sumbangan yang tidak diketahui identitas penyumbangnya yang biasanya pengumpulan dananya dimasukkan dalam kotak sumbangan, harus dicatat pula dalam bukti penerimaan kas serta dicatat dalam sumbangan tidak beridentitas. BKM dan daftar sumbangan tidak beridentitas dibuat rangkap dan copiannya disampaikan ke bagian akuntansi. (p. 96).
Rincian tugas tiap-tiap bagian dalam rangka penerimaan kas langsung adalah sebagai berikut: (p. 96-99).
30 1. Fungsi Sekretariat (Bagian Penerimaan)
Bagian penerimaan bertugas menerima semua surat yang masuk. Setiap hari, fungsi ini membuat Daftar Penerimaan Kas Harian (DPKH), yang berisi nama dan nominal penyumbang secara harian. Kemudian, membuat BKM dan mengumpulkan cek. Setelah daftar penerimaan uang dan bukti penerimaan uang dibuat, maka bukti tersebut didistribusikan kepada bendahara beserta uang tunai dan cek yang diterima.
Secara rinci, tugas dari bagian penerimaan adalah sebagai berikut:
a. M enerima dan membuka surat masuk, memisahkan surat-surat yang berkaitan dengan sumbangan dari surat lainnya. b. M enerima dan menggandakan nota pemberitahuan dari bank, ketika ada sumbangan dari simpatisan yang langsung masuk rekening bank milik partai. c. M endistribusikan nota pemberitahuan ke fungsi bendahara dan fungsi akuntansi. d. M enggandakan bukti setor dari penyumbang, lalu didistribusikan ke fungsi bendahara dan fungsi akuntansi. e. M engisi BKM . Data yang harus diisikan adalah asal kas (sumbangan / pinjaman / iuran/ subsidi pemerintah), jumlah nominal kas, mencap tanggal penerimaan ke BKM sementara. Kode di BKM adalah prenumbered.
31 f. M elekatkan dengan klip, amplop yang berisi kas dan cek dengan bukti penerimaan uang. g. M elakukan verifikasi antara cek yang diterima dengan bukti penerimaan uang mengenai nama penyumbang, jumlah, tanggal, dan nomor cek. h. M engisi DPKH. Data yang diisikan berasal dari BKM . i. M eneruskan cek dan BKM lembar kedua ke fungsi bendahara dan meminta tanda tangan fungsi bendahara sebagai tanda penerimaan cek/uang. j. M eneruskan BKM lembar ketiga ke Fungsi Akuntansi untuk dijurnal. k. M eneruskan BKM lembar pertama ke penyumbang atau pihak yang memberikan dana. 2. Fungsi Bendahara
Bendahara bertugas menerima uang/cek dan bukti penerimaan uang yang berasal dari surat masuk dan penyumbang langsung. Jika penyumbang secara langsung menyetorkan sumbangannya ke bendahara, maka bendahara harus membuat BKM . Setiap hari bendahara menyetorkan semua uang yang diterima
Slip setoran dari bank kemudian didistribusikan ke fungsi akuntansi. Berdasarkan data ini, maka fungsi akuntansi mencocokkan dengan BKM yang dibuat berdasarkan surat masuk (penerimaan). Bukti penerimaan uang dan bukti setor diberikan nomor urut (prenumbered). Secara detail uraian tugas dari bendahara adalah sebagai berikut :
32 a. M enerima cek dan uang tunai dalam amplop dari bagian penerimaan yang disertai BKM , melakukan verifikasi atas nama dan jumlah dalam bukti penerimaan uang dengan masing-masing cek dan uang tunai. b. M enerima uang tunai maupun cek langsung dari penyumbang (khusus jika ada penyumbang yang langsung setor ke partai). M enerima juga nota pemberitahuan dari bank akan adanya setoran dari penyumbang ke kas partai dari bank. c. M enyetorkan cek ke bank dan menyimpan serta menggandakan slip setoran dari bank rangkap. Slip setor pertama yang telah divalidasi bank disimpan fungsi bendahara, sementara slip setor kedua disampaikan ke fungsi akuntansi. d. M embuat BKM untuk uang tunai yang langsung disetor penyumbang ke bendahara. e. M elakukan verifikasi data-data antara jumlah uang dengan BKM dari bagian penerimaan. f. M encatat ke register bank untuk uang tunai dan cek yang disetorkan ke bank. g. M enyimpan slip setor yang telah divalidasi bank.
3. Fungsi Akuntansi
Pada dasarnya bagian akuntansi melakukan pencatatan atas seluruh transaksi yang berkaitan dengan penerimaan uang. Pencatatan itu meliputi jurnal,
posting,
summarizing,
dan
reporting.
Untuk
memudahkan
pengendalian maka bagian akuntansi membuat subsidiary account untuk
33 keperluan pengendalian terhadap kas dan setara kas, yang terdiri dari : kas bebas, rekening kas untuk investasi jangka panjang, kas untuk membeli aktiva tetap, dan kas yang harus terbatasi oleh waktu. Selain itu, pencatatan atas daftar sumbangan sangat mutlak untuk kebutuhan transparansi.
Pencatatan jurnal oleh bagian akuntansi menggunakan sistem batch processing, yang artinya bahwa bagian akuntansi mengumpulkan lebih dulu bukti-bukti transaksi secara periodik mingguan kemudian melakukan penjurnalan di akhir minggu.
Fungsi
akuntansi
mempertahankan
bukti-bukti
transaksi
yang
diperolehnya dari bagian lain dalam partai politik maupun bukti-bukti yang diperolehnya langsung dari pihak eksternal.
Dokumen
yang digunakan
dalam sistem
informasi
akuntansi
penerimaan kas, antara lain: (p. 99).
a. Formulir, meliputi : Bukti Kas M asuk (BKM ), Slip setor ke bank oleh bendahara, Bukti setor penyumbang, dan Nota pemberitahuan bank atau Rekening Koran bank. b. Catatan / Register, meliputi : Register bank, Register kas, dan Daftar Penerimaan Kas Harian (DPKH). c. Buku dan Laporan, meliputi : Buku dan Jurnal Umum, Buku Besar Kas, Daftar Sumbangan, dan Daftar Sumbangan Tidak Beridentitas.
34 Berikut ini adalah bagan alir (Flow Chart) dalam sistem penerimaan kas partai politik: (p. 93-95).
Gambar 2.2 Prosedur Penerimaan Kas (Sumber : KPU dan IAI (2003, p. 93))
35
Gambar 2.3 Prosedur Penerimaan Sumbangan melalui Bank (Jika ada Bukti Setor) (Sumber : KPU dan IAI (2003, p. 94))
36
Gambar 2.4 Prosedur Penerimaan Sumbangan melalui Bank (Jika tidak ada Bukti Setor) (Sumber : KPU dan IAI (2003, p. 95))
37 2.1.5.3 Pengeluaran Kas
M enurut KPU dan IAI (2003), Sistem dan prosedur pengeluaran kas diawali dari Pengajuan Surat Permintaan Dana (SPD) sebanyak 2 (dua) rangkap oleh fungsi operasi, yaitu bagian yang relevan dengan penggunaan dana tersebut kepada bagian otorisasi untuk diteliti kelayakannya. Jika pengajuan dana tersebut disetujui, bagian otorisasi menandatangani SPD tersebut dan memberikannya ke bagian bendahara. Jika pengajuan dana tersebut tidak disetujui, bagian otorisasi membuat pernyataan penolakan atas SPD tersebut dan mengembalikannya ke bagian operasi.
Setelah menerima SPD yang telah diotorisasi, bendahara memverifikasi kebenaran data dalam dokumen tersebut dan membuat Bukti Kas Keluar (BKK) sebanyak 3 (tiga) rangkap. SPD lembar 1, BKK lembar 1 dan uang kas diserahkan oleh bendahara ke fungsi operasi, BKK lembar 2 diserahkan ke fungsi akuntansi, sedangkan SPD lembar 2 dan BKK lembar 3 diarsipkan menurut tanggal.
Fungsi operasi mengarsipkan SPD lembar 1 dan BKK lembar 1 menurut tanggal. Fungsi operasi membelanjakan uang yang diterima dan memberikan faktur-faktur pembeliannya ke fungsi akuntansi.
Setelah
menerima BKK lembar 2, fungsi akuntansi membuat jurnal pengeluaran kas. Faktur-faktur yang diterima dari fungsi operasi diteliti dan diperiksa kesesuaiannya dengan BKK. Fungsi akuntansi kemudian mengarsipkan BKK
38 menurut tanggal dan faktur-faktur menurut nomor. (p. 100-101). Adapun perincian tugas masing-masing fungsi adalah sebagai berikut: (p. 101-102).
1. Fungsi Operasi
a. M embuat Surat Permintaan Dana (SPD) sebanyak 2 rangkap b. M engajukan SPD ke bagian otorisasi. c. M enerima uang dari bendahara dan membelanjakannya sesuai anggaran. d. M engumpulkan faktur-faktur pembelian dan menyerahkannya ke fungsi akuntansi. e. M engarsipkan SPD lembar 1 dan BKK lembar 1 dari bendahara menurut tanggal. f. M engembalikan uang sisa kegiatan ke fungsi bendahara.
2. Fungsi Otorisasi
a. M enerima SPD dari bagian operasi dan meneliti kelayakannya. b. M emberikan persetujuan/penolakan atas SPD yang diajukan c. M emberikan SPD yang disetujui ke bendahara d. M enandatangani cek (mengesahkan cek yang dikeluarkan bendahara).
3. Fungsi Bendahara
a. M enerima SPD yang telah disetujui dari fungsi otorisasi sebanyak 2 rangkap. b. M emverifikasi kebenaran data dalam SPD.
39 c. M embuat BKK sebanyak 3 rangkap. d. M enyerahkan SPD lembar1, BKK lembar 1, berikut uang ke bagian operasi. e. M enyerahkan BKK lembar 2 ke fungsi akuntansi. f. M engarsipkan SPD lembar 2 dan BKK lembar 3 menurut tanggal. g. M enulis nilai nominal uang berdasarkan SPD dan menandatangani cek lalu menyampaikannya ke fungsi otorisasi untuk ditandatangani lagi. h. M enerima uang sisa kegiatan dan membuat BKM -nya untuk diteruskan ke fungsi akuntansi untuk dijurnal.
4. Fungsi Akuntansi
a. M enerima BKK lembar 2 dari bendahara. b. M embuat jurnal pengeluaran kas. c. M enerima faktur-faktur pembelian dari fungsi operasi. d. M emverifikasi dan membandingkan faktur-faktur tersebut dengan BKK. e. M engarsipkan BKK menurut tanggal dan faktur-faktur menurut nomor.
Dokumen
yang digunakan
dalam sistem
informasi
akuntansi
pengeluaran kas, antara lain : Surat Permintaan Dana (SPD), Bukti Kas Keluar (BKK), Jurnal Pengeluaran Kas (Buku Kas), Laporan Penggunaan Dana, Bukti Kas M asuk (BKM ).
40 Berikut ini merupakan bagan alir (Flow Chart) dari sistem informasi akuntansi pengeluaran kas partai politik: (p. 100).
Gambar 2.5 Prosedur Pengeluaran Kas (Sumber : KPU dan IAI (2003, p. 100))
41 2.2 Teori-Teori Dasar / Umum Sub bab ini berisi teori-teori yang menjadi landasan dasar pembuatan skripsi sistem informasi akuntansi dalam pelaporan keuangan partai politik dari sisi akuntansi dan sistem informasi. 2.2.1 Konsep S istem Informasi Akuntansi Sebuah organisasi nirlaba (termasuk partai politik) memerlukan suatu sistem yang baik dalam melakukan pengolahan data akuntansi guna mendapatkan informasi yang handal dan reliable. Untuk memahami sistem informasi akuntansi maka akan dibahas terlebih dahulu pengertian dan konsep dasar dari sistem informasi akuntansi. 2.2.1.1 Definisi Sistem Terdapat beberapa definisi sistem yang berbeda antara satu penulis dengan penulis yang lain. Berikut ini disajikan beberapa definisi sistem: Romney dan Steinbart (2006) mendefinisikan sistem sebagai suatu kumpulan dari dua atau lebih komponen yang saling ketergantungan dan berinteraksi untuk mencapai suatu tujuan. (p. 4). Sedangkan menurut Gelinas, Sutton, Hutton (2005), sistem merupakan suatu kumpulan dari elemen-elemen yang saling ketergantungan dan bersamasama menyelesaikan tujuan yang spesifik. (p. 13). Dari pengertian – pengertian di atas dapat diambil kesimpulan bahwa yang dimaksud dengan sistem secara umum adalah sekelompok unsur yang
42 saling berhubungan erat antara satu dengan yang lainnya dan berfungsi untuk mencapai tujuan tertentu. 2.2.1.2 Definisi Informasi Informasi harus dibedakan dari data. M enurut Wilkinson, Cerullo, Raval, dan Wong-on-wing (2000), Data merupakan fakta-fakta mentah dan gambaran bahkan simbol-simbol sebagai inputan dari sebuah sistem informasi. Sedangkan informasi adalah pengetahuan yang berarti dan berguna bagi orangorang yang terlibat dalam sebuah sistem informasi. (p. 5-6). Romney dan Steinbart (2006) mendefinisikan informasi sebagai data yang telah diorganisasikan dan diproses untuk menyediakan arti bagi pengguna.(p. 5). Bodnar dan Hopwood (2006) mendefinisikan informasi sebagai berikut : “Informasi merupakan suatu data yang diorganisasi yang dapat mendukung ketepatan pengambilan keputusan. (p. 3). Dari definisi – definisi diatas maka dapat ditarik kesimpulan bahwa data merupakan masukan (input) yang berupa fakta – fakta, atau keterangan – keterangan yang belum bisa dipakai dan dimengerti oleh para pemakai informasi sehingga belum dapat digunakan sebagai dasar dalam proses pengambilan keputusan oleh manajemen. Sedangkan, Informasi merupakan keluaran (output) dari suatu proses pengolahan data. Output ini biasanya sudah tersusun dengan baik dan mempunyai arti bagi yang menerimanya, sehingga
43 dapat digunakan sebagai dasar dalam pengambilan keputusan oleh pihak manajemen. M enurut Romney dan Steinbart (2006), Informasi yang berguna memiliki tujuh karakteristik, yaitu: (p. 6). 1. Relevan M enambah pengetahuan atau nilai bagi para pembuat keputusan, dengan cara
mengurangi
ketidakpastian,
menaikkan
kemampuan
untuk
memprediksi, atau menegaskan/ membenarkan ekspektasi semula. 2. Dapat dipercaya Bebas dari kesalahan atau bias dan secara akurat menggambarkan kejadian atau aktivitas organisasi. 3. Lengkap Tidak menghilangkan data penting yang dibutuhkan oleh para pemakai. 4. Tepat waktu Disajikan pada saat yang tepat untuk mempengaruhi proses pembuatan keputusan. 5. M udah dipahami Disajikan dalam format yang mudah dipahami. 6. Dapat diuji kebenarannya M emungkinkan dua orang yang kompeten untuk menghasilkan informasi yang sama secara independen. 7. M udah diperoleh Informasi yang diperlukan oleh para pemakai mudah didapat ketika dibutuhkan dan memiliki format yang sesuai.
44 2.2.1.3 Definisi Sistem Informasi Berdasarkan pendapat O’Brien (2003), sistem informasi dapat berupa berbagai kombinasi dari orang-orang, perangkat keras (hardware), perangkat lunak (software), jaringan komunikasi (communication networks), dan sumbersumber data (data resources) yang mengumpulkan, mentransformasikan, dan menyebarluaskan informas i dalam sebuah organisasi. Orang bergantung pada sistem informasi untuk saling berkomunikasi menggunakan berbagai macam perangkat fisik (hardware), instruksi dan prosedur pemrosesan informasi (software), saluran komunikasi (networks), dan penyimpanan data (data resources). (p.7). M enurut Turban, Rainer, Potter. (2000), suatu sistem informasi mengumpulkan,
memproses,
menyimpan,
menganalisis
data,
dan
menyebarluaskan informasi untuk suatu tujuan spesifik. Seperti berbagai sistem lainnya, suatu sistem informasi memasukkan input (data, instruksi) dan output (laporan,
kalkulasi).
Sistem informasi
memproses
input dan
menghasilkan output yang dikirimkan kepada pemakai atau kepada sistem lain. Suatu mekanisme umpan balik (feedback) yang mengendalikan (control) operasi dapat diikutsertakan. Seperti berbagai sistem lainnya, suatu sistem informasi beroperasi di dalam suatu lingkungan (environment). (p. 15). M enurut Hall (2001), sistem informasi adalah sebuah rangkaian prosedur formal dimana data dikumpulkan, diproses menjadi informasi, dan didistribusikan kepada pemakai. (p. 7).
45 Dengan
demikian,
dapat disimpulkan bahwa sistem informasi
merupakan kombinasi dari orang-orang, perangkat keras, perangkat lunak, jaringan komunikasi dan sumber-sumber data yang saling berinteraksi mengumpulkan,
memproses,
menyimpan,
menganalisis
data,
dan
menyebarluaskan informasi untuk menghasilkan informasi yang relevan, tepat waktu, dan akurat serta meliputi suatu mekanisme umpan balik (feedback) dalam rangka mendukung pemecahan masalah dan pembuatan keputusan oleh manajemen dan pengguna. 2.2.1.4 Definisi Akuntansi M enurut Horngren, Harrison, Bamber (2002), akuntansi merupakan sebuah sistem informasi yang mengukur aktivitas-aktivitas bisnis, kemudian memproses
informasi
tersebut
menjadi
laporan-laporan,
dan
mengkomunikasikan hasil-hasil tersebut kepada para pembuat keputusan. (p. 5). Kemudian, Wilkinson et al. (2000) berpendapat bahwa akuntansi memiliki beberapa segi. Pertama, akuntansi mencakup (1) pencatatan data ekonomi (koleksi data), (2) pemeliharaan data yang disimpan (manajemen data),
dan
(3)
presentasi
informasi
kuantitatif
dalam
istilah-istilah
keuangan/finansial (information generation). Kedua, akuntansi merupakan “bahasa bisnis” yang menyediakan arti mengenai peristiwa-peristiwa utama dari sebuah perusahaan bisnis yang dinyatakan dan diringkas. Terakhir, akuntansi dapat dipandang sebagai suatu informasi keuangan yang diperlukan
46 untuk keseluruhan fungsi dari suatu entitas (seperti business firm). Informasi keuangan utama tertentu, misalnya, merefleksikan hasil-hasil operasi selama periode akuntansi dan status harta/aset dan modal/ekuitas pada akhir periode akuntansi. Berbagai pemakai, beberapa dari mereka berada di dalam entitas dan beberapa lainnya berada di luar entitas, menggunakan informasi ini untuk tujuan-tujuan yang bervariasi. (p. 5). Sedangkan
menurut
Romney
dan
Steinbart
(2006),
akuntansi
merupakan proses identifikasi, pengembangan, pengukuran, dan komunikasi. (p. 7). Dengan demikian, dapat disimpulkan bahwa akuntansi merupakan sistem informasi yang mencakup pencatatan data ekonomi, manajemen data, serta presentasi informasi kuantitatif dalam istilah-istilah finansial yang kemudian
laporan-laporan
tersebut
diproses
dan
hasil-hasilnya
dikomunikasikan kepada berbagai pengguna untuk tujuan pembuatan keputusan. 2.2.1.5 Definisi Sistem Informasi Akuntansi Pengertian sistem informasi akuntansi dapat dilihat dari beberapa definisi yang diberikan oleh para ahli dalam bidang ini. Berdasarkan pendapat Jones dan Rama (2006), sistem informasi akuntansi merupakan suatu subsistem dari Sistem Informasi M anajemen (SIM ) yang menyediakan informasi keuangan dan akuntansi sebagaimana informasi
47 lain yang diperoleh di dalam pemrosesan rutin dari transaksi-transaksi akuntansi. (p. 13). M enurut Horngren et al. (2002), sistem informasi akuntansi adalah kombinasi dari personil, catatan-catatan, dan
prosedur-prosedur yang
digunakan oleh suatu bisnis untuk menyediakan data keuangan. (p. 227). M enurut Krismiaji (2005): “Sistem Informasi Akuntansi adalah sebuah sistem yang memproses data dan transaksi guna menghasilkan informasi yang bermanfaat untuk merencanakan, mengendalikan, dan mengoperasikan bisnis.” (p. 4). Wilkinson et al. (2000). mendefinisikan sistem informasi akuntansi sebagai sebuah struktur seragam dalam sebuah entitas, seperti lingkungan bisnis, yang mempekerjakan sumber daya fisik dan komponen-komponen lainnya untuk mentransformasikan data ekonomi menjadi informasi akuntansi, dengan tujuan memuaskan kebutuhan informasi dari pihak-pihak yang membutuhkan. (p. 7). M enurut Romney dan Steinbart (2006), Sistem informasi akuntansi adalah sebuah sistem yang mengumpulkan, merangkum, dan memproses data untuk menghasilkan informasi bagi pembuat keputusan. (p. 6) Dari beberapa definisi diatas dapat disimpulkan bahwa sistem informasi akuntansi merupakan kumpulan dari suatu aktivitas dan sumber daya yang mempunyai tujuan yaitu menyediakan informasi keuangan yang relevan dalam pengambilan keputusan, serta mempunyai fungsi untuk memastikan bahwa data yang diproses menjadi informasi, dilakukan secara konsisten dari transaksi
48 organisasi. Kemudian informasi yang dihasilkan ditujukan untuk laporan pihak intern / manajemen sebagai alat perencanaan dan pengendalian.
2.2.2 Komponen-komponen Sistem Informasi Akuntansi Berdasarkan pendapat Romney dan Steinbart (2006), terdapat enam komponen sistem informasi akuntansi (p. 6-7), yaitu: 1. Orang-orang yang mengoperasikan sistem dan melakukan berbagai fungsi. 2. Prosedur-prosedur dan instruksi-instruksi, baik manual maupun terotomatisasi, yang terlibat dalam mengumpulkan, memproses, dan menyimpan data mengenai aktivitas-aktivitas organisasi. 3. Data mengenai organisasi dan proses-proses bisnisnya. 4. Perangkat lunak yang digunakan untuk memproses data organisasi. 5. Infrastruktur teknologi informasi, termasuk komputer, perangkat pendukung, dan perangkat
komunikasi jaringan
yang digunakan
untuk
mengumpulkan,
menyimpan, memproses, serta mentransmisikan data dan informasi. 6. Pengukuran keamanan dan pengendalian internal yang mengamankan data dalam sistem informasi akuntansi.
2.2.3 Fungsi dan Tujuan Sistem Informasi Akuntansi M enurut Romney dan Steinbart (2006), Sistem Informasi Akuntansi memiliki tiga fungsi penting dalam organisasi, yaitu: (p. 7). 1. M engumpulkan dan menyimpan data tentang aktivitas - aktivitas yang dilaksanakan oleh organisasi, sumber daya yang dipengaruhi oleh aktivitas -
49 aktivitas tersebut, dan para pelaku yang terlibat dalam berbagai aktivitas tersebut, agar pihak internal dan pihak - pihak luar yang berkepentingan dapat meninjau ulang (review) hal - hal yang telah terjadi. 2. M engubah data menjadi informasi yang berguna bagi pihak internal untuk membuat keputusan dalam aktivitas perencanaan, pelaksanaan, dan pengawasan. 3. M enyediakan pengendalian yang memadai untuk menjaga aset – aset organisasi, termasuk data organisasi, untuk memastikan bahwa data tersebut tersedia saat dibutuhkan, akurat, dan handal. M enurut AICPA yang dikutip oleh Romney (2006), SIA memiliki lima tujuan utama, yaitu: (p. 219). 1. M engidentifikasi dan mencatat semua transaksi yang valid. 2. M engklasifikasi transaksi secara tepat. 3. M encatat transaksi pada nilai moneter yang tepat. 4. M encatat transaksi dalam periode akuntansi yang tepat. 5. M enampilkan secara tepat semua transaksi dan pengungkapan yang berkaitan dalam laporan keuangan.
2.2.4 Pengendalian Intern Pengendalian intern diperlukan oleh setiap organisasi untuk mencegah atau menjaga terjadinya hal-hal yang tidak diinginkan seperti kesalahan-kesalahan atau kecurangan-kecurangan dan dapat digunakan untuk mengawasi serta melakukan tindakan koreksi jika terjadi kesalahan – kesalahan.
50 2.2.4.1 Pengertian Pengendalian Intern Pengendalian Intern menurut Krismiaji (2005) adalah: “Rencana organisasi dan metode yang digunakan untuk menjaga atau melindungi aktiva, menghasilkan informasi yang akurat dan dapat dipercaya, memperbaiki
efisiensi,
dan
untuk
mendorong
ditaatinya
kebijakan
manajemen.”(p. 218). Boynton, Johnson, Kell (2001) mendefinisikan pengendalian intern sebagai sebuah proses, yang dibuat oleh jajaran direksi, pihak manajemen, dan pihak-pihak lain yang berkepentingan, yang dibuat untuk menyediakan pertanggungjawaban atas hal-hal berikut : keandalan laporan keuangan, kepatuhan terhadap hukum dan peraturan yang berlaku, serta efektivitas dan efisiensi operasi. (p. 325). Berdasarkan pendapat Horngren et al. (2002, p. 267), pengendalian internal merupakan rencana organisasi dan seluruh tindakan-tindakan yang berhubungan yang diadopsi oleh suatu entitas untuk: 1. M engamankan aset yang digunakan oleh suatu bisnis dalam operasioperasinya. 2. M endorong kesetiaan terhadap kebijakan-kebijakan perusahaan. 3. M eningkatkan efisiensi operasional (memperoleh hasil terbaik pada biaya terendah). 4. M emastikan catatan-catatan akuntansi yang akurat dan dapat diandalkan. Sedangkan menurut Jones dan Rama (2006), pengendalian internal (internal control) merupakan suatu proses, yang dipengaruhi oleh dewan
51 direksi entitas, manajemen, dan personil lain, yang dirancang untuk menyediakan kepastian yang layak dengan memperhatikan pencapaian tujuan dalam kategori-kategori berikut ini: efektivitas dan efisiensi operasi; keandalan pelaporan keuangan; dan kepatuhan terhadap peraturan-peraturan dan hukum yang dapat dipakai (applicable). (p. 103). Dengan demikian, dapat disimpulkan bahwa pengendalian internal merupakan kebijakan, praktek, dan prosedur yang diterapkan oleh suatu entitas untuk efektivitas dan efisiensi operasi, keandalan pelaporan keuangan, dan kepatuhan terhadap peraturan-peraturan dan hukum yang berlaku dari entitas tersebut. 2.2.4.2 Komponen – Komponen Model Pengendalian Intern Ada lima komponen model pengendalian intern yang dihasilkan oleh Comitee of Sponsoring Organization (COSO) menurut Romney dan Steinbart (2006), yaitu : (p. 196). 1. Lingkungan pengendalian (Control Environment) Inti dari semua organisasi adalah orangnya, yaitu sifat masing-masing individu, termasuk integritas, nilai etika, dan kemampuan, serta lingkungan yang dapat beroperasi. Itu adalah alat yang mengendalikan organisasi dan merupakan dasar dari segala sesuatu dalam organisasi. 2. Aktivitas pengendalian (Control Activities) M erupakan pengidentifikasian dan analisa oleh entitas atas resiko-resiko relevan untuk pencapaian tujuan-tujuannya, yang membentuk dasar untuk menentukan bagaimana resiko sebaiknya dikelola.
52 3. Perhitungan risiko (Risk Assessment) M erupakan kebijakan dan prosedur yang membantu dalam menjamin bahwa perintah manajemen telah dilaksanakan. 4. Informasi dan komunikasi (Information and Communication) M erupakan identifikasi, penangkapan, dan pertukaran informasi dalam suatu bentuk dan kerangka waktu yang memungkinkan orang-orang mampu melaksanakan tanggung jawabnya. 5. Pemantauan (Monitoring) M erupakan suatu proses untuk menilai kualitas kinerja pengendalian internal pada suatu waktu. Suatu proses harus diawasi dan melakukan perubahan bila diperlukan. Cara lainnya adalah sistem dapat bereaksi dengan lebih dinamis, berubah sesuai dengan kondisi yang ada. 2.2.4.3 Tujuan Pengendalian Intern Romney
dan
Steinbart
(2006)
menyatakan
ada tujuh
tujuan
pengendalian intern yang harus dicapai, yaitu: (p.192). 1. M engamankan harta organisasi, termasuk mencegah atau mendeteksi halhal seperti pencurian dan kerusakan. 2. M engurus pencatatan dengan akurat yang menggambarkan harta organisasi. 3. M enyediakan informasi yang akurat dan terpercaya 4. M enyediakan kepastian bahwa laporan keuangan disajikan sesuai dengan prinsip-prinsip akuntansi yang berlaku. 5. M eningkatkan efisiensi operasional termasuk memastikan penerimaan dan pengeluaran kas yang terjadi telah diotorisasi oleh pihak manajemen. 6. M eningkatkan kepatuhan terhadap kebijakan organisasi.
53 7. M engikuti aturan-aturan hukum yang berlaku. Berdasarkan pendapat Hall (2001), sistem pengendalian internal terdiri dari kebijakan, praktek, dan prosedur yang digunakan oleh organisasi untuk mencapai 4 (empat) tujuan umum, yaitu: (p. 138). 1. Untuk mengamankan aset organisasi. 2. Untuk menjamin keakuratan dan keandalan informasi dan catatan-catatan akuntansi. 3. Untuk meningkatkan efisiensi operasi-operasi organisasi. 4. Untuk mengukur kepatuhan manajemen terhadap prosedur-prosedur dan kebijakan-kebijakan yang telah ditetapkan. Sedangkan menurut Wilkinson et al. (2000), kebijakan dan prosedur sistem pengendalian internal digunakan untuk mempertahankan informasi yang akurat dan operasi yang handal. Pengendalian internal dimaksudkan untuk mencapai tujuan tertentu dari organisasi yang dikategorikan menjadi tiga, yaitu: (p. 235). 1. Efektivitas dan efisiensi operasi. 2. Keandalan pelaporan keuangan. 3. Kepatuhan terhadap hukum dan peraturan yang berlaku.
54 2.2.5 Konsep Analisis dan Perancangan M enurut M cLeod (2001), analisis sistem merupakan penelitian atas sistem yang telah ada dengan tujuan merancang sistem baru atau diperbaharui. Di dalam tahap analisis sistem, seorang sistem analis terus bekerja sama dengan manajer, dan komite pengarah SIM yang terlibat dalam titik-titik penting. (p. 190).
2.2.6 Analisis Sistem Analisis sistem bertanggung jawab atas pengembangan perancangan umum dari aplikasi sistem. Analisis sistem bekerja dengan para pengguna untuk mendefinisikan kebutuhan informasi spesifik mereka. Kemudian, kebutuhan ini dikomunikasikan kepada fungsi perancangan sistem. Berikut ini akan diuraikan mengenai pengertian analisis sistem oleh beberapa ahli serta tahapan-tahapan dalam analisis sistem. 2.2.6.1 Pengertian Analis Sistem Berdasarkan pendapat Bodnar dan Hopwood (2001), analisis sistem merupakan suatu tahapan dari pengembangan sistem yang bertanggung jawab untuk pengembangan perancangan umum dari aplikasi sistem komputer untuk menyelesaikan masalah-masalah para pengguna. (p. 484) Analisis sistem dimulai setelah perencanaan sistem mengidentifikasikan subsistem-subsistem untuk pengembangan. Tujuan utamanya adalah pemahaman sistem dan masalah-masalah yang ada, pendeskripsian kebutuhan-kebutuhan informasi, dan pembangunan prioritas-prioritas untuk sistem bekerja lebih jauh. (p. 497)
55 Kemudian, Whitten, Bentley, Dittman (2004) berpendapat bahwa analisis sistem merupakan pembelajaran dari sebuah problem domain bisnis untuk
merekomendasikan
perbaikan-perbaikan
dan
menspesifikasikan
kebutuhan-kebutuhan bisnis dan prioritas-prioritas bagi suatu solusi. (p. 38). Sedangkan menurut Romney dan Steinbart (2006), analisis sistem merupakan suatu pendekatan sistematis dan teliti bagi pembuatan keputusan, dikarakteristikan melalui definisi komprehensif dari alternatif-alternatif yang tersedia dan analisis mendalam dari tiap alternatif sebagai suatu dasar untuk pemilihan alternatif terbaik. (p. 792). Dengan demikian, dapat disimpulkan bahwa analisis sistem merupakan suatu tahapan dalam pengembangan sistem yang meliputi pembelajaran sistem yang ada untuk merancang sistem baru yang lebih baik. 2.2.6.2 Tahapan Analisis Sistem Berdasarkan pendapat Bodnar dan Hopwood (2001), tahapan dalam analisis sistem adalah sebagai berikut (p. 500-504) : 1. M elakukan survei terhadap sistem yang sedang berjalan sekarang. 2. M engidentifikasikan kebutuhan-kebutuhan informasi. 3. M engidentifikasikan kebutuhan-kebutuhan sistem (system requirements). 4. M engembangkan suatu laporan analisis sistem.
56 2.2.7 Perancangan Sistem Perancangan sistem merupakan tahapan setelah analisis sistem. Berikut ini akan diuraikan mengenai pengertian perancangan sistem oleh beberapa ahli serta tahapan-tahapan dalam perancangan sistem. 2.2.7.1 Pengertian Perancangan Sistem Berdasarkan pendapat Bodnar dan Hopwood (2001), perancangan sistem
merupakan
suatu
tahapan
dari
pengembangan
sistem
yang
memperhatikan formulasi dari spesifikasi-spesifikasi terperinci atas sistem yang diusulkan. (p. 484). M enurut Whitten et al. (2004), perancangan sistem merupakan spesifikasi atau konstruksi dari suatu solusi yang berbasis komputer dan teknis bagi kebutuhan-kebutuhan bisnis yang diidentifikasikan dalam analisis sistem.(p. 39) (Catatan: Rancangan mengambil bentuk dari sebuah working prototype.) Sedangkan, Romney
dan Steinbart (2006) berpendapat bahwa
perancangan sistem merupakan proses persiapan spesifikasi-spesifikasi terperinci untuk pengembangan sistem informasi yang baru. (p. 792). Dengan demikian, dapat disimpulkan bahwa perancangan sistem merupakan suatu tahapan dari pengembangan sistem yang meliputi proses persiapan spesifikasi-spesifikasi secara terperinci atas sistem yang diusulkan.
57 2.2.7.2 Tahapan Perancangan Sistem Berdasarkan pendapat Bodnar dan Hopwood (2001), tahapan dalam perancangan sistem adalah sebagai berikut: (p. 511-515). 1. M engevaluasi alternatif-alternatif perancangan. 2. M empersiapkan spesifikasi-spesifikasi perancangan. 3. M empersiapkan dan mengajukan spesifikasi-spesifikasi perancangan sistem. 4. Perencanaan (blueprinting) proses kegiatan.
2.2.8 Analisis dan Perancangan Berorientasi Objek Berdasarkan pendapat M athiassen, M unk-M adsen, Nielsen, dan Stage (2000), metode analisis dan perancangan berorientasi objek menggunakan objects dan classes sebagai konsep utama dan membangun empat prinsip-prinsip umum bagi analisis dan perancangan: pemodelan konteks sistem, penekanan pada pertimbanganpertimbangan arsitektural, penggunaan kembali pola-pola yang memperlihatkan ideide perancangan yang dibangun dengan baik, dan penyesuaian metode terhadap setiap situasi pengembangan. (p. 3-4). M etode analisis dan percancangan berorientasi objek (OOA&D) meliputi empat perspektif melalui empat aktivitas-aktivitas utama yang diperlihatkan pada
58 Gambar 2.6. Prioritas dan organisasi dari aktivitas-aktivitas utama OOA&D bergantung pada situasi. (p. 14-15)
Problem Domain Analysis
Application Domain Analysis Requirements for Use
Model
Component Design Specifications of Components Specifications of Architecture
Architectural Design
Gambar 2.6 Aktivitas Utama dan Hasil dari Analisis dan Perancangan Berorient asi Objek (Sumber: Mathiassen et al. (2000, p. 15))
Notasi standar yang digunakan dalam OOA&D adalah UM L (Unified Modeling Language). UM L hanya digunakan sebagai notasi dan bukan sebagai metode dalam melakukan pemodelan (modeling). (p. 17).
59 Berdasarkan pendapat Whitten et al. (2004), analisis dan perancangan berorientasi objek merupakan sekumpulan perangkat dan teknik bagi pengembangan sistem yang memanfaatkan teknologi-teknologi objek untuk membangun atau mengkonstruksi sebuah sistem dan software-software yang bersangkutan.(p. 31). 2.2.8.1 Objects Berdasarkan pendapat M athiassen et al. (2000), Object merupakan sebuah entitas dengan identitas, state, dan behavior. (p. 4). Berdasarkan pendapat Whitten et al. (2004), object merupakan enkapsulasi data (disebut properti) yang mendeskripsikan orang, tempat, kejadian, atau benda yang mempunyai ciri tersendiri, dengan seluruh prosesproses (disebut metode) yang memungkinkan untuk menggunakan atau mengupdate data dan propertinya. (p. 109). 2.2.8.2 Prinsip-Prinsip Analisis dan Perancangan Berorientasi Objek Berdasarkan pendapat M athiassen et al.
(2000), analisis dan
perancangan berorientasi objek membangun empat prinsip-prinsip analisis dan perancangan yang umum sebagai berikut: (p. 6-12). 1. Pemodelan Konteks (Model the Context) Konteks sistem dapat dilihat dari dua perspekif yang saling melengkapi problem domain dan application domain. Kesuksesan sistem bergantung pada seberapa baik problem domain dan application domain terhubung secara bersama-sama ke dalam keseluruhan fungsi (functioning whole).
60 2. Penekanan Arsitektur (Emphasize the Architecture) Analisis dan perancangan berorientasi objek menekankan arsitektur sistem sebagai sebuah
tantangan
utama,
memfokuskan
pada kemudahan
pemahaman, fleksibilitas, dan kegunaan sebagai kualitas perancangan yang penting. Terdapat tiga komponen arsitektur dasar: model component, function component, dan interface component. 3. Penggunaan Kembali Pola-Pola (Reuse Patterns) Pembangunan pada ide-ide yang telah dibuat dengan baik dan komponenkomponen yang telah teruji (pretested) memperbaiki kualitas sistem dan produktivitas proses pengembangan. 4. Penyesuaian M etode (Tailor the Method) Analisis dan perancangan berorientasi objek disesuaikan terhadap proyek dan organisasi yang merefleksikan empat perspektif sentral pada suatu sistem dan konteksnya, yaitu isi (contents) informasi dari sistem, bagaimana sistem akan digunakan, sistem sebagai keseluruhan, dan komponen-komponen dari sistem. Perspektif-perspektif tersebut terhubung dengan aktivitas-aktivitas utama dari analisis dan perancangan berorientasi objek, yaitu problem domain analysis, application domain analysis, architectural design, dan component design, secara berturut-turut.
61 2.2.9 System Definition Berdasarkan pendapat M athiassen et al. (2000), system definition merupakan suatu deskripsi singkat dari sistem yang terkomputerisasi yang diperlihatkan dalam bahasa natural. System definition seharusnya singkat dan tepat, dan berisikan keputusan yang paling utama (fundamental) mengenai sistem. (p. 24). Terdapat tiga subaktivitas yang harus dilakukan untuk membuat system definition, yaitu usaha untuk mendapatkan gambaran menyeluruh dari situasi, membuat dan mengevaluasi ide-ide untuk perancangan sistem, dan diakhiri dengan memformulasikan dan mengevaluasi system definition sesuai dengan situasi yang ada. System definition dihasilkan melalui iterasi pada tiga subaktivitas tersebut. (p. 25). 2.2.9.1 FACTOR Criterion Berdasarkan pendapat M athiassen et al. (2000), FACTOR criterion terdiri dari 6 elemen sebagai berikut: (p. 39-40). 1. Functionality: Fungsi-fungsi sistem yang mendukung
tugas-tugas
application domain. 2. Application
domain: Bagian-bagian
dari sebuah
organisasi yang
mengelola, mengawasi, atau mengendalikan problem domain. 3. Conditions: Kondisi-kondisi dimana sistem akan dikembangkan dan digunakan. 4. Technology: Baik teknologi yang digunakan untuk mengembangkan sistem dan teknologi dimana sistem akan berjalan.
62 5. Objects: Objek-objek utama di dalam problem domain. 6. Responsibility: Keseluruhan tanggung jawab sistem dalam hubungan dengan konteksnya. 2.2.9.2 Rich Picture Berdasarkan pendapat M athiassen et al. (2000), rich picture merupakan sebuah gambaran informal yang mempresentasikan pemahaman ilustrator dari suatu situasi. (p. 26). Dengan demikian, dapat digunakan untuk memfasilitasi komunikasi di antara pemakai dalam sistem dan mendapatkan sebuah gambaran dari situasi dengan cepat.
2.2.10 Problem Domain Analysis Berdasarkan pendapat M athiassen et al. (2000), problem domain merupakan bagian dari suatu konteks yang dikelola, diawasi, atau dikendalikan oleh sebuah sistem. (p. 6). Problem domain analysis memfokuskan pada pertanyaan inti mengenai informasi apa yang seharusnya berhubungan dengan sistem. Tujuan dari problem domain analysis adalah untuk mengidentifikasi dan memodelkan suatu problem domain. M odel sendiri didefinisikan sebagai suatu deskripsi dari kelas-kelas (classes), objek-objek (objects), struktur-struktur (structures), dan perilaku (behavior) dalam suatu problem domain. Prinsip-prinsip yang digunakan dalam problem domain analysis adalah memodelkan dunia nyata karena pemakai (users) di masa depan akan melihatnya, mendapatkan sebuah gambaran terlebih dahulu dan
63 kemudian menyediakan rincian-rincian. Hasil dari problem domain analysis adalah sebuah model yang bertalian secara logis (coherent) dari suatu problem domain. (p. 45). Problem domain analysis dibagi ke dalam tiga aktivitas sebagaimana diperlihatkan pada Tabel 2.1 dan Gambar 2.7. Pertama, memilih objects, classes, dan events yang akan menjadi elemen dari model problem domain. Kemudian, membangun model dengan memfokuskan pada hubungan struktural di antara classes dan objects yang telah dipilih. Terakhir, memfokuskan pada dynamic properties dari objects. (p. 46). Aktivitas Class
Isi Objek dan event mana yang merupakan bagian dari problem domain Structure Bagaimana class dan objek saling berkaitan satu sama lain secara konseptual Behaviour Properti dinamik mana yang dimiliki objek
Konsep Class, objek, dan event Generalization, aggregation, association, dan cluster Event trace, behavioural pattern, dan attribute
Tabel 2.1 Aktivitas dalam Analisa Problem Domain (Sumber : Mathiassen at al. (2000, p. 45))
64
System Definition
Behavior Classes
Structure
Model
Gambar 2.7 Aktivitas-Aktivitas dalam Pemodelan Problem Domain (Sumber: Mathiassen et al. (2000, p. 46))
2.2.10.1 Classes Berdasarkan pendapat M athiassen et al. (2000), Class merupakan suatu deskripsi dari sekumpulan objek-objek yang berbagi struktur, pola perilaku, dan atribut-atribut. (p. 53). Sedangkan event merupakan suatu peristiwa atau kejadian yang terjadi seketika yang melibatkan satu atau lebih objek. (p. 51). Untuk menjalankan aktivitas classes dapat dimulai dengan mengidentifikasikan kandidat atau calon yang mungkin untuk classes dan events dalam model Problem Domain. Setelah itu, evaluasi dan pilih secara
65 kritis classes dan events yang benar-benar relevan dengan konteks sistem. (p. 55). Aktivitas classes menghasilkan suatu event table dengan classes dan events yang berkaitan seperti terlihat pada Tabel 2.2. Dimensi horizontal terdiri dari classes yang terpilih, dimensi vertikal terdiri dari events yang terpilih, dan tanda cek mengindikasikan objects dari class yang terlibat dalam event spesifik. Abstraksi, klasifikasi, dan seleksi merupakan tugas-tugas utama dalam aktivitas class. Class merupakan kegiatan yang pertama dilakukan di dalam problem domain analysis. (p. 49-50). Events Reserved Cancelled Treated Employed Resigned Graduated Agreed
Customer * * *
Assistant * * + + *
Class Apprentice
Appointment + + +
+ + + *
Plan *
*
Tabel 2.2 Contoh Event Table untuk Sistem Hair Salon (Sumber: Mathiassen et al. (2000, p. 100))
2.2.10.2 Structure Berdasarkan pendapat M athiassen et al. (2000), structure bertujuan untuk mendeskripsikan hubungan struktural di antara classes dan objects dalam problem domain. Prinsip-prinsip yang digunakan dalam structure, yaitu pembelajaran abstrak, hubungan statis di antara classes; pembelajaran konkrit, hubungan dinamis di antara objects; pemodelan hanya hubungan-
66 hubungan struktural yang diperlukan. Hasil dari structure berupa sebuah class diagram dengan classes dan structures. (p. 69). Konsep structure menurut M athiassen (2000) bisa dibagi menjadi: 1. Class Structures Class structures memperlihatkan hubungan-hubungan konseptual yang statis di antara classes, terdiri dari: a.
Generalization Generalisasi merupakan suatu kelas yang umum (kelas super) yang mendeskripsikan sebuah grup dari kelas-kelas khusus (subkelas). Pada Gambar 2.8 memperlihatkan contoh dari struktur generalisasi.
Passenger Car
Taxi
Private Car
Gambar 2.8 Contoh Generalization Structure (Sumber: Mathiassen et al. (2000, p. 73))
b. Cluster Cluster merupakan sekumpulan dari classes yang berhubungan. Pada Gambar 2.9 memperlihatkan contoh cluster structure pada suatu automobile register.
67 <
>
<>
Cars
People Car
Owner
Engine
Passenger Car
Cylinder
Taxi
Clerk
Gambar 2.9 Contoh Cluster Structure (Sumber: Mathiassen et al. (2000, p. 75))
2. Object Structures Object structures menangkap hubungan-hubungan yang dinamis di antara objects dalam problem domain, terdiri dari: a. Aggregation Aggregation merupakan suatu objek superior (keseluruhan) yang terdiri dari sejumlah objek-objek inferior (bagian-bagian). Pada Gambar 2.10 memperlihatkan contoh dari struktur agregasi.
68
Car
1
1
1
1
1
4..*
Body
Engine
Wheel
1
1
1..*
2..*
Cam Shaft
Cylinder
Gambar 2.10 Contoh Aggregation Structure (Sumber: Mathiassen et al. (2000, p76))
Terdapat tiga tipe struktur agregasi, yaitu: 1) Whole-Part, dimana whole merupakan jumlah dari parts; jika menambahkan atau menghilangkan salah satu part, berarti mengubah keseluruhan secara mendasar (fundamental). 2) Container-Content, dimana whole merupakan wadah (container) untuk parts; jika menambahkan atau menghilangkan salah satu content, tidak akan mengubah properties dasar dari keseluruhan. 3) Union-Member, dimana whole merupakan sebuah gabungan (union) dari members yang terorganisasi. Penambahan atau pengurangan beberapa member tidak akan mengubah gabungan
69 secara mendasar. Terdapat batasan yang lebih rendah pada jumlah members karena tidak mungkin sebuah union tanpa members. b. Association Association merupakan suatu hubungan yang berarti di antara sejumlah objects. Pada Gambar 2.11 memperlihatkan contoh dari struktur asosiasi. Struktur asosiasi tersebut menunjukkan bahwa car dimiliki oleh satu atau lebih person dan satu person memiliki nol (tidak memiliki) atau lebih banyak car. (p. 71-79).
Car
0..*
1..*
Person
Gambar 2.11 Contoh Association Structure (Sumber: Mathiassen et al. (2000, p. 77)
Hasil akhir dari aktivitas structure ini adalah class diagram dengan class dan struktur – strukturnya.
2.2.10.3 Behaviour Berdasarkan pendapat M athiassen et al. (2000), aktivitas behavior adalah aktivitas terakhir dalam problem domain analysis, bertujuan untuk memodelkan apa yang terjadi (perilaku dinamis) dari suatu problem domain sistem sepanjang waktu. Tugas utama dalam aktivitas ini adalah menggambarkan pola perilaku (behavioral pattern) dan attribute dari setiap
70 class. Hasil dari aktivitas ini adalah sebuah pola perilaku (behavioral pattern) dengan attributes untuk setiap class dalam suatu class diagram, yang dikenal dengan state chart diagram, dapat dilihat pada Gambar 2.12.
/ account opened (date) / account closed Open
(date)
/ account deposited
/ account withdrawn
(date, amount)
(date, amount)
Gambar 2.12 Contoh Statechart Diagram untuk Class Customer (Sumber: Mathiassen et al. (2000, p. 90))
Event trace merupakan serangkaian events yang melibatkan sebuah object yang spesifik. Behavioral pattern merupakan suatu deskripsi dari event traces yang mungkin untuk seluruh objects dalam sebuah class. Terdapat tiga notasi untuk behavioral pattern, yaitu: 1. Sequence: events muncul satu per satu secara berurutan. Notasinya: “+”. 2. Selection: pemilihan satu event dari sekumpulan event yang muncul. Notasinya: “|”.
71 3. Iteration: sebuah event muncul sebanyak nol atau berulang kali. Notasinya: “*”. Behavior dari sebuah class customer dapat dideskripsikan melalui ekspresi yang teratur berikut ini: /account opened + (/amount deposited | /amount withdrawn)* + /account closed (p. 89-93). Terdapat tiga bentuk behavior patterns dasar, yaitu: 1. The Stepwise Relation Pattern The stepwise relation pattern digunakan ketika problem domain objects tertentu terhubung pada elemen-elemen dari suatu hirarki dengan cara bertahap atau berurutan. 2. The Stepwise Role Pattern The stepwise role pattern mendeskripsikan interaksi di antara beberapa objects dalam jangka waktu tertentu (over time), tetapi pola ini memfokuskan pada dimensi horisontal pada suatu class diagram daripada dimensi vertikal. Pola ini dapat digunakan untuk mendeskripsikan bagaimana behavior keseluruhan berubah karena bagian-bagiannya menjadi aktif. 3. The Composite Pattern The composite pattern menawarkan suatu cara untuk mendeskripsikan penciptaan dan penghancuran dari suatu hirarki menggunakan struktur
72 yang terperinci yang tidak diketahui pada saat pengembangan model. (p. 102-105). 2.2.11 Application Domain Analysis Berdasarkan pendapat M athiassen et al. (2000), Application domain : Organisasi yang mengadministrasi, memonitor, atau mengontrol sebuah problem domain. (p. 6). Tujuan dari application domain analysis adalah menentukan kebutuhan fungsi (functions) dan antarmuka (interfaces) sistem. Prinsip-prinsip yang digunakan dalam application domain analysis adalah dengan menentukan application domain dengan use cases dan mengkolaborasikan dengan para pemakai (users). (p. 115). Aktivitas dari application domain analysis terdiri dari usage, functions, dan interfaces sebagaimana dapat dilihat pada Tabel 2.3 dan Gambar 2.13. (p. 117). Kegiatan
Isi
Konsep
Usage
Bagaimana sistem berinteraksi dengan user dan dengan sistem lain dalam konteks? Bagaimana kemampuan sistem dalam memproses informasi? Apa kebutuhan atau persyaratan dari interface sistem yang ditargetkan?
Use case dan actor
Functions
Interface
Function
Interface, user interface, dan system interface
Tabel 2.3 Aktivitas dalam Application Domain Analysis (Sumber: Mathiassen et al. (2000, p. 117))
73 System Definition
Usage
Interfaces
Functions Requirements
Gambar 2.13 Application Domain Analysis (Sumber: Mathiassen et al. (2000, p117))
2.2.11.1 Usage Berdasarkan pendapat M athiassen et al. (2000), kegiatan use case merupakan kegiatan pertama dalam analisis application domain. Tujuan dari aktivitas usage adalah untuk menentukan bagaimana actors berinteraksi dengan sebuah sistem. Actors merupakan sebuah abstraksi dari orang (users) atau sistem-sistem lain yang berinteraksi dengan functions dari target system. Use case merupakan sebuah pola atau abstraksi untuk berinteraksi dengan sistem dan actors dalam application domain. Prinsip-prinsip yang digunakan adalah
dengan
menentukan application domain dengan use cases,
mengevaluasi use case dalam kolaborasi dengan use cases, menilai
74 perubahan-perubahan sosial dalam application domain. Hasil dari aktivitas usage ini adalah deskripsi dari seluruh use cases dan actors, yang digambarkan dengan use case diagram pada Gambar 2.14 berikut.
Gambar 2.14 Use Case Diagram for The Automatic Payment System (Sumber: Mathiassen et al. (2000, p122))
75 Use case dapat digambarkan dengan menggunakan spesifikasi use case dimana use case dijelaskan secara singkat, namun jelas dan dapat disertai dengan keterangan objek sistem yang terlibat dan function dari use case tersebut atau dengan diagram state chart karena use case adalah sebuah fenomena yang dinamik. Cara untuk mengidentifikasi actor adalah dengan mengetahui alasan actor menggunakan sistem. M asing-masing actor memiliki alasan yang berbeda untuk menggunakan sistem. Cara lainnya, yaitu dengan melihat peran dari actor seperti yang dinyatakan oleh use case ketika actor tersebut terlibat. M asing-masing actor memiliki peran yang berbeda-beda. Setiap actor akan berkorespondensi dengan kelas dalam problem domain yang berbeda karena mereka memiliki pola behavioural objek yang berbeda-beda. Actor dapat digambarkan dalam spesifikasi actor yang memiliki tiga bagian, yaitu tujuan, karakteristik, dan contoh dari actor tersebut. Tujuan merupakan peran
dari
actor
dalam
sistem
target,
sedangkan
karakteristik
menggambarkan aspek-aspek yang penting dari actor. Use case pattern yang dapat digunakan untuk mengidentifikasi dan menggambarkan use case terdiri dari: 1. The Procedural Pattern The procedural use case pattern merupakan solusi umum untuk memastikan bahwa seluruh peraturan-peraturan (rules) dijalankan (observed).
76 2. The Material Pattern The material use case sesuai untuk situasi-situasi ketika tidak terdapat peraturan-peraturan bisnis yang mengatur usage. Pola ini merupakan sebuah use case dengan sedikit general states, yang berarti bahwa kebanyakan tindakan-tindakan dapat dilaksanakan. (p. 119-134). Sequence diagram menjelaskan tentang interaksi di antara beberapa objek dalam jangka waktu tertentu. Sequence diagram melengkapi class diagram, yang menjelaskan situasi yang umum dan statis. Sebuah sequence diagram dapat mengumpulkan rincian situasi yang kompleks dan dinamis yang melibatkan beberapa dari kebanyakan object yang digeneralisasikan dari class pada class diagram. (p. 340). Berdasarkan pendapat Whitten et al. (2004), Sequence diagram memperlihatkan bagaimana objek-objek saling berinteraksi selama jangka waktu tertentu secara terperinci. (p. 687). Sequence diagram membantu analis untuk mengidentifikasi rincian dari aktivitas yang dibutuhkan untuk menjalankan fungsi dari sebuah use case. 2.2.11.2 Functions Berdasarkan pendapat M athiassen et al. (2000, p. 137-141), function merupakan suatu fasilitas untuk pembuatan sebuah model yang berguna bagi actors. Tujuan dari aktivitas function adalah untuk menentukan kemampuan pemrosesan informasi dari sebuah sistem. Prinsip-prinsip yang digunakan adalah dengan mengidentifikasikan seluruh functions, hanya
77 menspesifikasikan functions yang kompleks, memeriksa (check) konsistensi dengan use cases dan model. Function analysis terdiri dari tiga subaktivitassubaktivitas, yaitu menemukan functions, menspesifikasikan functions yang kompleks, dan mengevaluasi secara kritis. Hasil dari aktivitas ini berupa sebuah daftar yang lengkap dari functions dengan spesifikasi dari functions yang kompleks. Daftar function harus lengkap, menyatakan kebutuhan kolektif dari pelanggan dan aktor, serta harus konsisten dengan use case. Terdapat empat tipe functions, yaitu: 1. Update functions Diaktivasi oleh event dari problem domain dan menghasilkan suatu perubahan dalam state dari model. 2. Signal functions Diaktivasi oleh suatu perubahan pada state dari model dan menghasilkan reaksi pada context; reaksi ini dapat berupa sebuah tampilan bagi actors dalam application domain, atau sebuah intervensi petunjuk dalam problem domain. 3.
Read functions Diaktivasi oleh kebutuhan akan informasi dalam suatu tugas kerja dari actors dan menghasilkan sistem yang menampilkan bagian-bagian relevan dari model.
4.
Compute functions Diaktivasi oleh kebutuhan akan informasi dalam suatu tugas kerja dari actors dan terdiri dari perhitungan yang melibatkan informasi yang
78 disediakan oleh actors atau model; hasilnya berupa sebuah tampilan dari hasil perhitungan.
Cara untuk mengidentifikasikan function adalah dengan melihat deskripsi problem domain yang ditampilkan oleh class dan event, dan melihat deskripsi application domain yang ditampilkan dalam use case. Class dapat menyebabkan munculnya function read dan update.
Event
memungkinkan munculnya kebutuhan terhadap function update. Sementara use case dapat menyebabkan munculnya semua jenis function. Hasil akhir dari kegiatan functions adalah list of functions dengan spesifikasi atas complex functions. Contoh function list dapat dilihat pada tabel 2.4 berikut :
Function Make schedule Calculate schedule consequences Find working hours from previous period Enter contents into schedule Erase schedule Query earlier schedules Make appointment Cancellation Query possible appointments Register treatment Create customer Query customer information Employment Retirement Update apprentice information
Kompleksitas Very complex Complex Medium Complex Simple Medium Medium Simple Complex Simple Simple Medium Simple Simple Simple
Tabel 2.4 Function List (Sumber: Mathiassen et al. (2000, p145))
Tipe Update Signal Read Update Update Read Update Update Read Update Update Read Update Update Update
79 2.2.11.3 Interfaces Berdasarkan pendapat M athiassen et al. (2000), interface adalah bagian ketiga dalam application domain yang merupakan suatu fasilitas yang membuat sebuah model dan fungsi-fungsi dari sistem tersedia bagi actor. Tujuannya adalah untuk menentukan interfaces dari suatu sistem. Interface menghubungkan sistem dengan semua aktor yang berhubungan dalam konteks. Kualitas user interface ditentukan oleh kegunaan (usability) interface tersebut bagi pengguna. Hasil dari aktivitas interface adalah sebuah deskripsi elemen-elemen user interface dan system interface yang lengkap dan kelengkapan menunjukkan pemenuhan kebutuhan pengguna. Hasil ini dilengkapi dengan sebuah diagram navigasi (navigation diagram) yang menyediakan suatu ringkasan dari elemen-elemen user interface dan perubahan di antara elemen-elemen tersebut. (p. 151). Terdapat dua macam interface, yaitu: 1. User Interface M enghubungkan
manusia (human actor) dengan
sistem. Dalam
merancang user interface dibutuhkan umpan balik (feedback) dari pengguna. Terdapat empat user interface pattern, yaitu: menu selection (diperlihatkan sebagai daftar pilihan pada user interface), form filling (pola klasik untuk entri data), command language (dibutuhkan daya ingat user
untuk
mengoperasikan
sistem),
dan
direct
manipulation
(memungkinkan manipulasi langsung dengan representasi objects).
80 2. System Interface M enghubungkan sistem lain (system actor) dengan sistem yang sedang dikembangkan. Sistem lain tersebut dapat berupa external devices (misalnya sensor, switch, dll) dan sistem komputer yang kompleks sehingga dibutuhkan suatu protokol komunikasi. Pada umumnya, interface ini tidak digunakan untuk sistem administratif, tetapi lebih sering digunakan untuk pengawasan dan pengendalian sistem. (p.154164). Sebuah navigation diagram adalah sebuah jenis state chart diagram yang spesial yang berfokus pada kedinamisan user interface secara keseluruhan. Navigation diagram tidak terdapat di dalam UM L. Sebuah window merepresentasikan sebuah state dan state mempunyai nama dan berisikan icon (sebuah window miniatur). State transition berkoresponden pada sebuah switch di antara dua window. (p.344). Contoh Navigation Diagram ditunjukkan dalam gambar 2.15
Gambar 2.15 Navigation Diagram (Sumber: Mathiassen et al. (2000, p145))
81 2.2.12 Architectu ral Design Berdasarkan pendapat M athiassen et al. (2000, p. 173), tujuan dari architectural
design
adalah
untuk
menstrukturisasi
sebuah
sistem yang
terkomputerisasi. Prinsip-prinsip yang digunakan adalah mendefinisikan dan memprioritaskan criteria, menjembatani criter ia dengan technical platform, mengevaluasi perancangan sejak awal. Hasil yang diperoleh berupa struktur bagi komponen-komponen dan proses-proses sistem. Aktivitas-aktivitas yang dilakukan dalam architectural design diperlihatkan pada Tabel 2.5 dan Gambar 2.16. Aktivitas
Isi
Konsep
Criteria
Apa kondisi dan kriteria untuk design?
Criterion
Components Bagaimana sistem dibentuk komponen-komponen? Processes
menjadi Component architecture dan komponen
Bagaimana proses sistem didistribusikan Process architecture dan dan dikoordinasikan? process
Tabel 2.5 Aktivitas dalam Architectural Design (Sumber: Mathiassen et al. (2000, p176)) Analysis Document
Component Architecture Criteria
Process Architecture
Architectural Specification
Gambar 2.16 Aktivitas-Aktivitas dalam Architectural Design (Sumber: Mathiassen et al. (2000, p176))
82 2.2.12.1 Criteria Berdasarkan pendapat M athiassen et al. (2000), tujuan dari criteria adalah untuk mempersiapkan prioritas dari sebuah perancangan. Aktivitas ini bertujuan untuk membuat perancangan (design). Hasil dari aktivitas ini adalah sekumpulan criteria yang diprioritaskan. Suatu perancangan yang baik harus memperhatikan criteria-criteria yang dapat dilihat pada Tabel 2.6. (p. 178). Sebuah perancangan yang baik memiliki tiga ciri-ciri sebagai berikut: 1. Tidak M emiliki Kelemahan Utama Syarat ini menyebabkan adanya pendekatan pada evaluasi dari kualitas berdasarkan review atau eksperimen dan membantu dalam menentukan prioritas dari kriteria yang akan ditentukan dalam aktivitas perancangan. 2. M enyeimbangkan Beberapa Kriteria Konflik yang sering terjadi antar kriteria menyebabkan penentuan kriteria mana
yang
akan
diutamakan
dan
bagaimana
cara
untuk
menyeimbangkannya dengan kriteria-kriteria yang lain bergantung pada situasi sistem tertentu. 3. Usable, Flexible, dan Comprehensible Kriteria-kriteria ini bersifat universal dan digunakan pada hampir setiap proyek pengembangan sistem.
83 Hasil akhir
dari
aktivitas
ini
adalah
kumpulan
kriteria.
Beberapa kriteria umum yang digunakan dalam kegiatan desain yang berorientasi objek adalah seperti ditunjukkan dalam tabel 2.6:
Criteria Usable Secure Efficient Correct Reliable Maintainable Testable Flexible Comprehen sible Reusable Portable Interoperable
Ukuran dari Kemampuan sistem untuk beradaptasi dengan konteks organisasi, berhubungan dengan pekerjaan, dan teknis. Tindakan pencegahan dalam menghadapi akses yang tidak terotorisasi terhadap data dan fasilitas. Eksploitasi ekonomis dari fasilitas-fasilitas technical platform. Pemenuhan kebutuhan-kebutuhan. Pemenuhan ketepatan yang dibutuhkan dalam pengeksekusian atau pelaksanaan fungsi. Biaya untuk menemukan dan memperbaiki kerusakan-kerusakan sistem. Biaya untuk memastikan bahwa sistem yang dibentuk dapat melaksanakan fungsi yang diinginkan. Biaya untuk mengubah sistem yang dibentuk. Usaha yang diperlukan untuk mendapatkan pemahaman terhadap sistem. Kemungkinan atau potensi untuk menggunakan bagian sistem pada sistem lain yang berhubungan. Biaya untuk memindahkan sistem ke technical platform yang lain. Biaya untuk menggabungkan system ke sistem yang lain. Tabel 2.6 Kriteria-Kriteria Umum bagi Kualitas Software (Sumber: Mathiassen et al. (2000, p178))
2.2.12.2 Component Architecture M enurut M athiassen, et al. ( 2000 ) component architecture adalah sebuah struktur sistem yang terdiri dari komponen – komponen yang saling berhubungan.
Component adalah
sebuah
kumpulan
bagian
– bagian
program yang merupakan satu kesatuan dan memiliki tanggung jawab yang telah didefinisikan dengan baik.
84 Terdapat beberapa pola umum yang dapat digunakan untuk merancang suatu component architecture, yaitu: 1. The Layered Architecture Pattern Arsitektur ini terdiri dari beberapa component yang dirancang sebagai layers dan merupakan bentuk yang paling umum dalam software. Rancangan dari setiap component menggambarkan tanggung jawabnya masing-masing serta interface bagian atas maupun bagian bawah. Interface bagian atas akan menggambarkan operasi yang tersedia untuk layer di bawahnya. Pola ini diilustrasikan seperti pada Gambar 2.17 berikut.
<> Layeri+1 Upwards Interface <> Layeri Downwards Interface <> Layeri‐1 Gambar 2.17 Layered Architecture Pattern (Sumber: Mathiassen et al. (2000, p. 193)
85 2. The Generic Architecture Pattern Pola ini digunakan untuk memperinci sistem dasar yang terdiri dari interface,
function,
dan
model
components.
M odel
komponen
mengandung model dari sistem object, yang dapat berupa layer yang paling bawah, kemudian diikuti dengan layer sistem function, dan yang paling atas merupakan component interface. Layer interface dapat dibagi menjadi dua bagian, yaitu user interface dan system interface. Pola ini diilustrasikan seperti pada Gambar 2.18 berikut ini.
86
<> Interface <>
<>
User Interface
System Interface
<> Function
<> Technical Platform
<> Model
<> Technical Platform <>
<>
<>
UIS
DBS
NS
Gambar 2.18 Generic Architecture Pattern (Sumber: Mathiassen et al. (2000, p. 196)
87 3. The Client-Server Architecture Pattern Pola ini awalnya dikembangkan untuk mengatasi masalah distribusi sistem di antara beberapa processor yang tersebar secara geografis. Komponen dari arsitektur sebuah server dan beberapa clients. Server memiliki sekumpulan operasi yang tersedia bagi client. Server bertanggung jawab untuk menyediakan hal-hal yang umum bagi clientnya, seperti database atau sumber daya lain yang bisa digunakan bersama. Server menyediakan operasi bagi client melalui suatu jaringan. Client bertanggung jawab untuk menyediakan interface lokal bagi para user. Pola ini diilustrasikan seperti pada Gambar 2.19 berikut ini. (p. 197)
<>
<>
<>
Client1
Client2
Clientn
<> Server
Gambar 2.19 Client-Server Architecture Pattern (Sumber: Mathiassen et al. (2000, p. 197))
88 Tabel 2.7 berikut memperlihatkan beberapa jenis distribusi dalam arsitektur client-server berupa U (user), F (function), dan M (model). Client
Server U + F +M F +M F +M M M
U U U+ F U+ F U+ F+ M
Architectu re Distributed Presentation Local Presentation Distributed Functionality Centralized Data Distributed Data
Tabel 2.7 Bentuk-Bentuk Distribusi pada Client-Server Architecture (Sumber: Mathiassen et al. (2000, p. 200))
2.2.12.3 Process Architectu re Berdasarkan pendapat M athiassen et al. (2000), arsitektur proses adalah struktur dari eksekusi sistem yang terdiri dari proses-proses yang saling tergantung. Untuk mengeksekusi atau menjalankan sebuah sistem dibutuhkan processor. Sedangkan, external device adalah processor khusus yang tidak dapat menjalankan program. Arsitektur proses harus dapat memastikan bahwa sistem dapat dijalankan secara memuaskan dengan menggunakan processor yang telah tersedia. Active object merupakan sebuah objek yang telah ditugaskan atas suatu proses. Prinsip-prinsip yang digunakan
adalah
(bottlenecks),
fokus
pada arsitektur
mendistribusikan
components
tanpa adanya kemacetan pada
processors,
dan
mengkoordinasikan sharing sumber daya dengan active objects. Hasil dari aktivitas ini adalah deployment diagram yang menunjukkan processors (equipment yang dapat mengeksekusi program) dengan program components
89 (sebuah modul fisik dari kode program) dan active objects yang ditugaskan. (p. 209). Objek-objek yang terlibat dalam sistem berorientasi objek yang berjalan dapat dibagi menjadi dua, yaitu active object yang telah ditugaskan sebuah proses dan aktif selama sistem dijalankan; dan program component yang pasif selama eksekusi sistem, kecuali pada saat dipanggil sebagai bagian dari eksekusi proses sampai eksekusi proses tersebut selesai dijalankan. (p. 211-213). Terdapat tiga pola distribusi dalam aktivitas perancangan process architecture sebagai berikut: 1. The Centralized Pattern Pada pola ini, semua data ditempatkan pada server dan client hanya menangani user interface saja. Keseluruhan model dan semua fungsi bergantung pada server, dan client hanya berperan seperti terminal. Pola ini diilustrasikan seperti pada Gambar 2.20 berikut ini. (p. 215). 2. The Distributed Pattern Pola ini merupakan kebalikan dari centralized pattern, yaitu semua data didistribusikan kepada client dan server hanya diperlukan untuk melakukan update model di antara clients. Pola ini diilustrasikan seperti pada Gambar 2.21 berikut ini. (p. 217). 3. Decentralized pattern
90 Pola ini merupakan gabungan dari kedua pola sebelumnya. Pada pola ini, client mengimplementasikan model yang lokal, sedangkan server akan memakai model common (umum).
Dengan kata lain, client memiliki
data-nya sendiri sehingga hanya data yang bersifat umum yang terdapat pada server. Pola ini diilustrasikan seperti pada Gambar 2.22 berikut ini. (p. 218).
91
: Client
User More Interface
Clients
System
Interface
: Server
User
System
Interface
Interface
Function
Model
Gambar 2.20 Deployment Diagram untuk Centralized Pattern (Sumber: Mathiassen et al. (2000, p. 216))
92
: Client
User
System
Interface
Interface
More Clients
Function
Model
: Server System
Interface
Gambar 2.21 Deployment Diagram untuk Distributed Pattern (Sumber: Mathiassen et al. (2000, p. 217))
93
: Client
User
System
Interface
Interface
More
Function
Model
(Local)
: Server User
System
Interface
Interface
Function
Model (Common)
Gambar 2.22 Deployment Diagram untuk Decentralized Pattern (Sumber: Mathiassen et al. (2000, p. 219))
Clients
94 Deployment diagram menjelaskan tentang system configuration dalam bentuk processor dan object yang di-attach pada processor. (p. 340). 2.2.13 Component Design Berdasarkan pendapat M athiassen et al. (2000, p231), perancangan komponen bertujuan untuk menentukan implementasi kebutuhan dalam sebuah kerangka kerja arsitektural. Prinsip-prinsip yang digunakan adalah memperhatikan arsitektur komponen dan mengadaptasi rancangan-rancangan komponen terhadap kemungkinan-kemungkinan teknis. Hasil dari aktivitas ini adalah suatu deskripsi dari komponen-komponen sistem. Aktivitas-aktivitas yang dilakukan dalam component design diperlihatkan pada Tabel 2.8 dan Gambar 2.23.
Aktivitas Model Component Function Component Connecting Component
Isi Bagaimana suatu model digambarkan sebagai kelas dalam sebuah sistem? Bagaimana function diimplementasikan? Bagaimana komponen-komponen dihubungkan?
Konsep Model component dan attribute Function Component dan Operation saling Component dan connection
Tabel 2.8 Aktivitas dalam Component Design (Sumber: Mathiassen et al. (2000, p232)
95
Architectural Specifications Design of Components
Design of Component Connections Component Specification
Gambar 2.23 Component Design (Sumber: Mathiassen et al. (2000, p232)
2.2.13.1 Model Component Berdasarkan pendapat M athiassen et al. (2000), model component merupakan suatu bagian dari sistem yang mengimplementasikan problem domain. Tujuan dari aktivitas ini adalah untuk mengirimkan data sekarang dan histories ke function, interface, dan terutama kepada pengguna (user) dan sistem yang lain. Konsep utama dalam perancangan model component ini adalah struktur. Hasil dari aktivitas ini berupa revisi class diagram seperti yang ditunjukkan pada gambar 2.24 dari aktivitas analisis. Aktivitas revisi biasanya terdiri dari aktivitas menambahkan class, atribut dan atau struktur baru yang mewakili event. Bagi private event (event yang hanya melibatkan satu object dari problem domain) yang terjadi secara berulang, maka eventevent tersebut direpresentasikan sebagai class baru; dihubungkan agregasi
96 dengan class asal. Kemudian, atribut-atribut event diintegrasikan ke dalam class baru tersebut. (p. 235-236). Revisi class dapat terjadi pada: 1. Generalization, jika terdapat dua class dengan atribut yang sama, maka dapat dibentuk class baru (revised class). 2. Association, jika terdapat hubungan many-to-many. 3. Embedded Iterations, yang merupakan embedded di dalam state chart diagram. M isalnya, jika sebuah class terdapat state chart diagram yang mempunyai tiga iterated events sehingga dapat dibentuk tiga class di dalam perancangan model. (p. 243-246).
Customer -Creditapproval -Creditapprovaldate -Name
1 1..* Customer Address -Fromdate -Address
1..* Account -Accountnumber -Accountstate -Opendate -Closedate
1 0..* Transaction -Transtype -Date -Amount
Gambar 2.24 Revised Class Diagram (Sumber: Mathiassen et al. (2000, p. 236))
97 2.2.13.2 Function Component Berdasarkan pendapat M athiassen et al. (2000), function component adalah bagian sistem yang mengimplementasikan kebutuhan fungsional. Tujuannya adalah agar user interface dan komponen-komponen sistem lainnya dapat mengakses model, yang perancangannya untuk menentukan implementasi functions. Function component merupakan penghubung antara model dan usage. Hasil dari aktivitas ini adalah class diagram dengan operations dan spesifikasi dari operations yang kompleks. Subaktivitas dari function
component
menghasilkan
kumpulan
operasi
yang
dapat
mengimplementasikan fungsi sistem seperti ditentukan dalam analysis problem domain dan function list. (p. 251-252). Langkah pertama yang harus dilakukan adalah mendesain functions sebagai operations, yaitu mengidentifikasikan tipe utama dari functions tersebut. Terdapat empat tipe functions, yaitu update, read, compute, dan signal. (p. 255-260). Patterns (pola) dapat membantu memilih functional design mana yang dapat digunakan dari beberapa pilihan yang dapat membantu merealisasikan functions sebagai kumpulan operations. Terdapat empat pola sebagai berikut: 1.
Model Class Placement Pola ini menempatkan operation dalam model component class dan berguna ketika sebuah operation mengakses hanya sebuah object tunggal
98 (single) atau struktur aggregation yang sederhana. Pola ini juga dapat digunakan ketika beberapa object terlibat, namun hanya jika tanggung jawab operation tersebut dapat dengan jelas ditempatkan pada salah satu dari model class. 2.
Function Class Placement Pola ini digunakan ketika tanggung jawab operation tidak dapat dengan jelas ditempatkan dalam model class. Sebaliknya, satu atau lebih functional-component class dapat digambarkan dengan menempatkan operation yang merealisasikan function.
3. Strategy Pola ini digunakan untuk mendefinisikan sekumpulan operations yang umum terenkapsulasi dan dapat dipertukarkan. 4. Active Function Active signal function dapat direalisasikan sebagai operation yang secara permanen aktif dan berkala memberikan sinyal kepada interface. Active function ditempatkan sebagai active object dan performance-nya tergantung dari keadaan (state) pada model component. 2.2.14 Internet M enurut Andi (2003), Internet berasal dari kata interconnection networking merupakan dua komputer atau lebih yang saling berhubungan membentuk jaringan komputer hingga meliputi jutaan komputer di dunia yang saling berinteraksi dan bertukar informasi. (p. 1).
99 2.2.14.1 WWW (World-Wide-Web) M enurut Andi (2003), WWW adalah aplikasi paling menarik di internet dan seperti e-mail, aplikasi ini sangat penting dan banyak sekali digunakan. Dari WWW ini kita bisa mendapatkan informasi tidak hanya berupa teks tetapi juga gambar maupun multimedia. WWW juga merupakan suatu sistem yang menciptakan pertukaran data di internet dengan mudah dan efisien, yang terdiri dari dua bagian utama yaitu web server dan web browser. (p. 36). 2.2.14.2 Server dan Web S erver M enurut Nugroho (2004), secara global server dapat diartikan sebagai pusat dan difungsikan sebagai ”pelayan” yang berguna untuk pengiriman data dan / atau penerimaan data serta mengatur pengiriman dan penerimaan data di antara komputer-komputer yang tersambung atau dengan kata lain server berfungsi menyediakan pelayanan terhadap klien. (p5). Sedangkan web server menurut Nugroho (2004) adalah sebuah bentuk server yang khusus digunakan untuk menyimpan halaman website atau homepage. Komputer dapat dikatakan sebagai web server jika komputer tersebut memiliki suatu program server yang disebut Personal Web Server (PWS). PWS ini difungsikan agar halaman web yang ada di dalam sebuah komputer server dapat dipanggil oleh komputer klien. 2.2.14.3 Database M enurut M cLeod (2001, p258), database adalah suatu koleksi data komputer yang terintegrasi, diorganisasikan, dan disimpan dengan suatu cara yang memudahkan pengambilan kembali. Dua tujuan utama dari konsep
100 database
adalah
meminimumkan
pengulangan
data
dan
mencapai
independensi data. Pengulangan data (data redundancy) atau duplikasi data, artinya data yang sama disimpan dalam beberapa file. Sedangkan independensi data adalah kemampuan untuk membuat perubahan dalam struktur data tanpa membuat perubahan pada program yang memproses data. Independensi data dicapai dengan menempatkan spesifikasi data dalam table dan kamus yang terpisah secara fisik dari program. Program mengacu pada tabel untuk mengakses data. Perubahan pada struktur data hanya dilakukan sekali, yaitu dalam tabel. Ketika perusahaan mengadopsi konsep database, hirarki data menjadi: 1. Database 2. File 3. Catatan 4. Elemen Data File-file tersendiri dapat tetap ada, mewakili komponen-komponen utama dari database, namun organisasi fisik dari data tidak menghambat pemakai. Tersedia berbagai cara untuk mengintegrasikan isi dari file-file yang memiliki hubungan logis. Pemakai database dapat berupa orang atau program aplikasi. Orang biasanya menggunakan database dari terminal dan mengambil data dan informasi dengan menggunakan query language. Query adalah permintaan informasi dari database, dan query language adalah bahasa khusus yang user friendly yang memungkinkan computer menjawab query.
101 2.2.14.4 Pengertian HTML M enurut Hasyim (2003), Hypertext Markup Language merupakan standar bahasa yang digunakan untuk menampilkan dokumen web. Yang bisa dilakukan dengan HTM L diantaranya yaitu : (p. 2). 1. M engontrol tampilan dari web page dan contentnya. 2. M empublikasikan dokumen secara online sehingga bisa diakses dari seluruh dunia. 3. M embuat online form yang bisa digunakan untuk menangani pendaftaran dan transaksi secara online. 4. M enambahkan objek-objek seperti image, audio, video dan juga java applet dalam dokumen HTM L. 2.2.14.5 S truktur Penulisan HTML M enurut Hasyim (2003), dokumen HTM L bisa dibagi menjadi tiga bagian utama, yaitu : (p. 5-6). 1. HTM L Setiap
dokumen HTM L harus diawali dan ditutup
dengan tag
HTM L tag HTM L memberitahu browser bahwa yang di dalam kedua tag tersebut adalah dokumen HTM L. 2. HEAD Bagian header dari dokumen HTM L diapit oleh tag . Di dalam bagian ini biasanya dimuat tag TITLE yang menampilkan judul dari halaman pada titlenya browser. Selain itu bookmark juga menggunakan tag TITLE untuk memberi mark suatu website. Browser menyimpan title sebagai bookmark dan juga untuk keperluan pencarian
102 (searching) biasanya title digunakan sebagai keyword. Header juga memuat tag M ETA yang biasanya digunakan untuk menentukan informasi tertentu mengenai dokumen HTM L. Anda bisa menentukan author name, keywords, dan lainnya pada tag M ETA. Contoh <M ETAhttp-equif=”Expires” content=”Thursday, 26 February 2009 20:30:40 GMT”>. Tag tersebut akan menciptakan informasi HTTP Headers sebagai berikut : Expires : Thursday, 26 February 2009 20:30:40 GM T. Sehingga jika dokumen di cached, HTTP akan tahu kapan dokumen tersebut harus mengupdate pada cache. 3. BODY Tag ini berfungsi untuk menampilkan isi dari dokumen HTM L itu sendiri, baik berupa text, image, link dan semua yang ditampilkan pada halaman web.