BAB 2 LANDASAN TEORI
2.1
Sistem Informasi Akuntansi
2.1.1
Pengertian Sistem Informasi Akuntansi Menurut Bodnar dan Hopwood (2001,p1), sistem informasi akuntansi adalah
kumpulan sumber daya seperti manusia dan peralatan yang diatur untuk mengubah data menjadi informasi. Informasi ini dikomunikasikan kepada beragam pengambil keputusan. Sistem informasi akuntansi mewujudkan perubahan ini apakah secara manual atau terkomputerisasi. Menurut Jones dan Rama (2006,p4), sistem informasi akuntansi adalah sebuah subsistem dari sistem informasi manajemen yang menyediakan informasi seperti fungsi dari produksi, pemasaran, sumber daya manusia, akuntansi, dan keuangan. Menurut Wilkinson, Joseph, Cerullo, Vasant dan Wong-on-Wing (2000,p7), sistem
informasi akuntansi adalah kesatuan struktur organisasi, yang menyediakan
sumber daya fisik, dan komponen-komponen lainnya untuk mengubah data ekonomi menjadi informasi akuntansi, dengan tujuan menciptakan kepuasan terhadap kebutuhan informasi untuk berbagai macam penggunanya. Dapat disimpulkan bahwa Sistem Informasi Akuntansi adalah sistem berbasis komputer yang dirancang untuk menyediakan informasi akuntansi keuangan atau informasi lain yang diperoleh dari pengumpulan dan pemrosesan berbagai transaksi perusahaan.
9 2.1.2
Tujuan Sistem Informasi Akuntansi Menurut Wilkinson et al (2000, p8), tujuan utama dari sistem informasi
akuntansi adalah : a. Untuk mendukung operasi perusahaan sehari-harinya. b. Untuk mendukung pihak manajemen didalam proses pengambilan keputusan. c. Untuk memenuhi
kewajiban
yang
berhubungan
dengan
kepemilikan
perusahaan, misalnya menyediakan informasi bagi para stakeholders.
2.1.3
Komponen Sistem Informasi Akuntansi Menurut Romney dan Steinbart (2003, p2),sistem informasi akuntansi memiliki 5
(lima) komponen utama yang terdiri dari : 1. Manusia, yang mengoperasikan dan menggunakan berbagai macam fungsi-fungsi. 2. Prosedur, kegiatan yang berhubungan dengan mengumpulkan, memproses, dan menyimpan data mengenai kegiatan organisasi, baik manual ataupun otomatis. 3. Data, mengenai proses bisnis yang dijalankan organisasi. 4. Software, digunakan untuk memproses data organisasi. 5. Information technology infrastructure, meliputi komputer, peralatan, dan peralatan jaringan komunikasi.
2.2
Sistem Informasi Akuntansi Penjualan
2.2.1
Pengertian Penjualan Menurut Standar Akuntansi Keuangan (2004,PSAK no23.2) “….Penjualan
barang...Barang meliputi barang yang diproduksi perusahaan untuk dijual dan barang
10 yang dibeli untuk dijual kembali seperti barang dagang yang dibeli oleh pengecer atau tanah dan property lain yang dibeli untuk dijual kembali.” Menurut Horngren, Harrison dan Bamber (2002, p168), Penjualan adalah “the amount that a merchandiser earns from selling its inventory.” Menurut Warren, Reeve dan Fee (2002, p231),
Pendapatan dari penjualan
barang dagang biasanya diidentifikasi pada buku besar sebagai penjualan. Jadi dapat ditarik kesimpulan penjualan adalah kegiatan operasi perusahaan didalam menjual produk yang dihasilkan ataupun produk yang dibeli perusahaan untuk dijual kembali.
2.2.2
Proses Bisnis Proses bisnis pada perusahaan merupakan suatu rangkaian aktivitas yang
dilakukan perusahaan dalam melakukan bisnisnya, mulai dari proses pembelian, produksi, hingga penjualan barang atau jasa. Menurut Romney dan Steinbart (2003, p23), siklus transaksi pada perusahaan terdiri dari lima subsistem, yaitu : a. Siklus pendapatan; berhubungan dengan kegiatan penjualan dan penerimaan kas. b. Siklus pengeluaran; berhubungan dengan kegiatan pembelian dan pembayaran c. Siklus sumber daya manusia; berhubungan dengan kegiatan merekrut dan membayar gaji karyawan. d. Siklus produksi; berhubungan dengan kegiatan mengolah bahan mentah menjadi bahan jadi (produk). e. Siklus keuangan; berhubungan dengan kegiatan mendapatkan dana dari investor dan kreditor dan membayarnya kembali.
11 Pada gambar 2.1, dilihat hubungan antara setiap subsistem yang ada pada perusahaan, dimana masing-masing subsistem akan terhubung dengan sebuah sistem pelaporan yang digunakan untuk menyampaikan informasi baik kepada pihak manajemen maupun pihak luar perusahaan. Financing Cycle Get cash
Give cash
Funds
Funds
Funds Human Resouces Cycle Give cash
Expenditure Cycle Get labor
Give cash
Data
Data
Get goods
Data Information for both internal and external users
General Ledger & Reporting System Data Data Raw materials
Labor Production Cycle Give labor Give raw materials
Get finish goods
Finished goods Revenue Cycle Give goods
Get cash
Gambar 2.1 Subsistem dalam Sistem Informasi Akuntansi Sumber Romney dan Steinbart (2003, p25)
12 2.2.3
Tujuan Sistem Informasi Akuntansi pada Siklus Pendapatan Menurut Wilkinson et al (2000, p416-417), tujuan utama dari sistem informasi
akuntansi penjualan adalah untuk menfasilitasi pertukaran barang atau jasa dengan sejumlah uang tertentu milik pelanggan. Berikut adalah sasaran dari siklus pendapatan secara umum : 1. Untuk mencatat pesanan pelanggan secara cepat dan tepat. 2. Untuk memverifikasi bahwa pelanggan layak mendapatkan kredit. 3. Untuk mengirimkan produk pada tanggal yang telah disetujui. 4. Untuk melakukan penagihan atas produk atau jasa secara tepat pada waktunya dan dengan prosedur yang benar. 5. Untuk mencatat dan mengklasifikasikan penerimaan kas secara cepat dan tepat. 6. Untuk posting penjualan dan penerimaan kas ke akun pelangan yang tepat dalam jurnal khusus penjualan dan penerimaan kas. 7. Untuk mengamankan produk sampai dikirim. 8. Untuk mengamankan kas sampai disetor
2.2.4 Dokumen yang berhubungan dengan siklus pendapatan Mengacu pada Wilkinson et al (2000, p419) berikut adalah dokumen-dokumen yang dibutuhkan dalam siklus pendapatan perusahaan dagang. 1. Customer order Dokumen yang berisikan pesanan dari pelanggan yang ditujukan ke perusahaan. 2. Sales order Dokumen yang diterbitkan perusahaan berdasarkan customer order.
13 3. Order acknowledgment Surat pemberitahuan kepada pelanggan bahwa pesanan telah diterima. 4. Picking list Daftar yang dikirim ke bagian gudang untuk mempersiapkan barang yang dipesan. 5. Packing slip Daftar yang berisi barang ketika dikemas untuk dikirimkan. 6. Bill of lading Dokumen pengapalan. 7. Shipping notice Dokumen yang digunakan sebagai bukti bahwa barang telah dikirim. 8. Sales invoice Merupakan dokumen yang dikirimkan kepada pelanggan yang berisikan jumlah penjualan. 9. Remittance advice Dokumen yang berisikan jumlah kas yang diterima dari pelanggan. 10. Deposit slip Dokumen penyerta ketika kas dideposit ke bank. 11. Back order Dokumen yang disiapkan ketika jumlah persediaan tidak sesuai dengan sales order. 12. Credit memo Dokumen untuk retur penjualan yang terjadi. 13. Credit application Form yang digunakan untuk memasukkan data konsumen yang menerima kredit.
14 14. Sales person call report Form yang digunakan untuk menjelaskan salesperson mana yang melakukan panggilan kepada pelanggan. 15. Delinquent notice Surat pemberitahuan ke pelanggan bahwa tanggal jatuh tempo kredit telah lewat. 16. Write-off notice Dokumen yang disiapkan oleh manajer kredit ketika sebuah akun akan dipertimbangkan tidak tertagih. 17. Cash register receipts Form yang digunakan untuk menggambarkan kas yang diterima.
2.2.5
Fungsi yang terkait dalam siklus pendapatan Menurut Wilkinson (2000, p417), fungsi yang terkait dalam siklus penjualan
adalah sebagai berikut : a. Market research. Berfokus pada pencarian pangsa pasar yang sesuai dengan produk atau jasa yang dihasilkan perusahaan dengan mempelajari tingkah laku pelanggan, pilihan pelanggan dan kekuatan membeli pelanggan. b. Promotion and Advertising. Merencanakan dan menjalankan strategi promosi untuk produk dan jasa perusahaan. c. Customer Service. Menangani permintaan dan keluhan pelanggan mengenai produk dan jasa perusahaan.
15 d. Product development and planning. Berfokus pada lini produksi (styling, packaging and performance) e. Sales concentrates. Membuat perencanaan penjualan dan mengevaluasi kinerja penjualan. f. Shipping and transportation. Menyediakan sarana pendistribusian untuk memastikan bahwa barang yang dipesan pelanggan akan diterima tepat waktu. g. Treasurer. Bertanggung jawab untuk membuat anggaran dan perencanaan kas, kredit dan penagihan, dan penerimaan kas. h. Controller. Bertanggung jawab didalam area akuntansi seperti penangihan, pengontrolan persediaan, piutang dan buku besar.
2.2.6 Prosedur dalam siklus pendapatan Menurut Romney dan Steinbart (2003, p360), prosedur-prosedur yang terjadi didalam siklus pendapatan meliputi : a. Prosedur penerimaan pesanan penjualan. Adalah kegiatan penerimaan pesanan dari pelanggan, baik pesanan yang diterima ditempat usaha, melalui email, telepon ataupun melalui website, atau melalui salesperson, kegiatan pengecekan kredit untuk penjualan kredit, kegiatan pengecekan ketersediaan persediaan di gudang, dan kegiatan didalam menanggapi permintaan pelanggan.
16 b. Prosedur pengiriman barang. Adalah kegiatan memilih dan menyiapkan pesanan dan kegiatan pengiriman barang kepada pelanggan.Pada prosedur ini haruslah dipastikan ketepatan pengiriman barang dengan membandingkan perhitungan fisik antara barang yang dikeluarkan dari gudang dengan jumlah pesanan yang ada dalam pesanan pembelian. c. Prosedur penagihan. Adalah kegiatan pencatatan atas pesanan dan pengiriman barang kepada pelanggan sehingga menghasilkan sales invoice,serta kegiatan pencatatan dan pembayaran piutang. d. Prosedur penerimaan kas Adalah kegiatan yang menangani pembayaran pelanggan, menyimpan uang di bank dan membuat laporan untuk diserahkan ke treasurer.
2.3
Sistem Informasi Akuntansi Persediaan
2.3.1
Pengertian Persediaan Menurut Horngren et al (2002, p167), Persediaan adalah barang yang dimiliki
untuk dijual dalam kegiatan normal perusahaan. Menurut
Warren
et
al
(2002,
p350),
Persediaan
digunakan
untuk
mengidentifikasi (1) barang dagang yang disimpan untuk kemudian dijual dalam operasi normal perusahaan dan (2) bahan yang terdapat dalam proses produksi atau yang disimpan untuk tujuan itu Menurut Assauri (2004,p176), Persediaan adalah “ suatu aktiva yang meliputi barang-barang milik perusahaan dengan maksud untuk dijual dalam suatu periode usaha yang normal, atau persediaan barang-barang yang masih dalam pengerjaan atau proses
17 produksi, ataupun persediaan barang baku yang menunggu penggunanya dalam proses produksi”. Menurut Standar Akuntansi Keuangan (2004): Persediaan adalah “ aktiva: tersedia untuk dijual dalam kegiatan usaha normal; dalam proses produksi dan atau dalam perjalanan; atau dalam bentuk bahan atau perlengkapan (supplier) untuk digunakan dalam proses produksi atau pemberian jasa. … Persediaan meliputi barang yang dibeli dan disimpan untuk dijual kembali … Persediaan juga mencakup barang jadi yang telah diproduksi, atau barang dalam penyelesaian yang sedang diproduksi perusahaan, dan termasuk bahan serta perlengkapan yang digunakan dalam proses produksi.” (SAK No. 14.1). Jadi dapat ditarik kesimpulan persediaan adalah semua barang yang dimiliki perusahaan dan diharapkan dapat dijual kembali dalam kegiatan operasi perusahaan dan sebagai bahan yang disimpan atau digunakan untuk proses produksi.
2.3.2
Catatan Akuntansi Yang Digunakan Menurut Assauri (2004) pencatatan dalam pengawasan persediaan adalah semua
pencatatan atau pembukuan mengenai penerimaan, persediaan di gudang dan pengeluaran bahan baku dan bahan-bahan lainnya serta hasil produksi dalam suatu perusahaan. Pencatatan-pencatatan tersebut diperlukan untuk menjamin bahan-bahan atau barang-barang dipergunakan secara efisien dan perusahaan dapat mengikuti perkembangan persediaannya dengan baik. Menurut Assauri (2004, p214) pada dasarnya terdapat lima catatan yang paling penting atau utama dalam sistem pengawasan persediaan:
18 1. Permintaan Untuk Dibeli (purchase requisition) Dokumen permintaan pembelian bahan-bahan atau barang-barang dalam jumlah tertentu yang ditujukan kepada bagian pembelian. Permintaan tersebut diadakan dengan tujuan untuk menjamin tersedianya persediaan yang cukup dari bahan-bahan atau barang-barang tersebut atau mengisi kembali persediaan bila persediaan bahanbahan tertentu yang ada akan mendekati titik yang terandah atau minimum yang telah ditentukan lebih dahulu. 2. Laporan Penerimaan (receiving report) Dokumen yang memberikan informasi mengenai penerimaan atas barang yang telah dipesan. 3. Catatan Persediaan (balance of stores record) Merupakan istilah lain dari: perpetual inventory card, stock record card, stored ledger sheet, balance of stores form, stores balance sheet, dan material ledger sheet. Informasi yang terdapat dalam “balance of stores card” berbeda-beda tergantung dari perusahaan pabrik yang menggunakannya. Akan tetapi data-data yang biasanya terdapat dalam daftar ini adalah: a. Gambaran atau deskripsi lengkap dari bahan-bahan tersebut b. Jumlah dari bahan-bahan yang tersedia di gudang, yang dipesan dan yang dialokasikan untuk prouksi c. Jumlah bahan-bahan yang akan atau harus dibeli bila waktunya telah tiba untuk mengadakan pemesanan baru. d. Harga bahan-bahan per unit e. Jumlah yang dipakai selama suatu periode atau jangka waktu tertentu f. Nilai dari persediaan yang ada
19 4. Daftar Permintaan Bahan (material requisition form) Formulir yang dibuat oleh petugas gudang untuk dipergunakan oleh bagian pembelian dalam mengadakan pemesanan bahan-bahan yang perlu dibeli kembali. 5. Perkiraan Pengawasan (control accounting) Catatan yang digunakan oleh Bagian Akuntansi untuk mengawasi setiap pencatatan mutasi persediaan yang dilakukan oleh bagian gudang. Semua pembelian akan didebit dan semua pemakaian akan dikredit dalam perkiraan ini. Saldo perkiraan pengawasan harus sama dengan saldo yang terdapat pada “perpetual inventory cards”. Tidak sesuainya saldo antara keduanya, mengharuskan diadakannya penyelidikan selanjutnya.
2.3.3
Metode Pencatatan Persediaan Menurut Mulyadi (2001) terdapat dua macam metode pencatatan persediaan:
a. Mutasi Persediaan (perpetual inventory method) Metode pencatatan persediaan dimana setiap mutasi persediaan dicatat dalam kartu persediaan. b. Persediaan fisik (physical inventory method) Metode pencatatan persediaan yang dilakukan atas penambahan persediaan dari pembelian, sedangkan mutasi berkurangnya persediaan karena pemakaian tidak dicatat dalam kartu persediaan. Harga pokok kemudian diperoleh dengan menjumlahkan persediaan pada awal periode dengan pembelian dan mengurangkan hasil penjumlahan tersebut dengan hasil perhitungan fisik sisa persediaan yang masih ada di gudang pada akhir periode akuntansi.
20 2.3.4
Metode Penilaian Persediaan Menurut Assauri (2004,p182) ada beberapa cara yang dapat digunakan untuk
menilai suatu persediaan, diantaranya dengan: •
First-In, First-Out (FIFO Method) Penilaian persediaan yang berdasarkan atas asumsi bahwa harga barang yang sudah terjual dinilai menurut harga pembelian barang yang terdahulu masuk.
•
Rata-rata tertimbang (Weighted Average Method) Cara penilaian persediaan yang berdasarkan atas harga rata-rata dimana harga tersebut dipengaruhi oleh jumlah barang yang diperoleh pada masing-masing harganya.
•
Last-In, First-Out (LIFO Method) Cara penilaian persediaan berdasarkan atas asumsi bahwa barang yang telah terjual dinilai menurut harga pembelian barang yang terakhir masuk.
2.3.5
Perencanaan Persediaan Mengacu pada Keown, Martin, Petty dan Scott (2000, p736), persediaan sangat
penting karena tanpa adanya persediaan para pengusaha akan dihadapkan pada resiko bahwa perusahaannya pada suatu waktu tidak dapat memenuhi keinginan pelanggan yang memerlukan atau meminta barang atau jasa yang dihasilkan. Persediaan dikatakan sangat penting bagi perusahaan karena persediaan berguna untuk : 1. Menghilangkan resiko keterlambatan datangnya barang. 2. Menghilangkan resiko dari produk yang dipesan tidak bagus atau rusak.
21 3. Mempertahankan stabilitas operasi perusahaan atau menjamin kelancaran arus produksi. 4. Untuk menumpuk bahan-bahan yang dihasilkan secara minimum sehingga dapat dipergunakan bila bahan itu tidak ada dalam pasaran. 5. Memberikan pelayanan kepada pelanggan dengan sebaik-baiknya, dimana keinginan pelanggan pada setiap waktu terpenuhi atau memberikan jaminan tetap tersedianya barang tersebut.
2.3.6
Manajemen Persediaan Mengacu pada Keown et al (2000, p748), manajemen persediaan melibatkan
kontrol aset yang digunakan dalam proses produksi atau diproduksi untuk dijual dalam kegiatan bisnis perusahaan biasa. Kategori umum persediaan termasuk dalam persediaan bahan baku, persediaan barang dalam proses dan persediaan barang jadi. Pentingnya manajemen persediaan bagi perusahaan tergantung investasi persediaan. Tujuan penyimpanan persediaan adalah untuk memisahkan operasi perusahaan artinya membuat masing-masing fungsi bisnis independen dari fungsi bisnis lain agar penundaan atau penghentian dalam suatu area tidak mempengaruhi produksi dan penjualan produk akhir. Tipe –tipe persediaan meliputi : 1. Persediaan bahan baku Persediaan bahan baku terdiri atas bahan baku dasar yang dibeli dari perusahaan lain untuk digunakan dalam operasi produksi perusahaan. Tanpa memperinci bentuk persediaan bahan baku, semua perusahaan manufaktur secara definisi menyimpan persediaan bahan baku dengan tujuan memisahkan fungsi produksi dari fungsi
22 pembelian, artinya membuat kedua fungsi independen satu sama lain agar penundaan pengiriman bahan baku tidak menyebabkan penundaan produksi. 2. Persediaan barang dalam proses Persediaan bahan dalam proses terdiri dari atas barang setengah jadi yang membutuhkan tambahan pekerjaan sebelum menjadi barang jadi. Tujuan persediaan barang dalam proses adalah memisahkan berbagai operasi dalam proses produksi agar kegagalan mesin dan penghentian pekerjaan dalam satu operasi tidak akan mempengaruhi operasi lain. 3. Persediaan barang jadi Persediaan barang jadi terdiri atas barang yang telah selesai produksinya setiap belum dijual. Tujuan persediaan barang jadi adalah memisahkan fungsi produksi dan penjualan agar tidak perlu memproduksi barang sebelum penjualan terjadi, penjualan dapat dilakukan langsung dari persediaan itu.
2.3.7
Pengawasan Persediaan Menurut Assauri (2004. p184) “…suatu sistem pengawasan persediaan harus
memenuhi persyaratan-persyaratan sebagai berikut: a. Terdapatnya gudang yang cukup luas dan teratur dengan pengaturan tempat bahan atau barang yang tetap dan identifikasi bahan atau barang tertentu b. Sentralisasi kekuasaan dan tanggung jawab pada satu orang orang yang dapat dipercaya, terutama penjaga gudang c. Suatu sistem pencatatan dan pemeriksaan atas penerimaan bahan atau barang d. Pengawasan mutlak atas pengeluaran bahan atau barang
23 e. Pencatatan yang cukup teliti yang menunjukkan jumlah yang dipesan, yang dibagikan atau dikeluarkan dan yang tersedia di dalam gudang f. Pemeriksaan fisik bahan atau barang yang ada dalam persediaam secara langsung g. Perencanaan untuk menggantikan barang-barang yang telah dikeluarkan, barangbarang yang telah lama dalam gudang, dan barang-barang yang sudah usang dan ketinggalan zaman. h. Pengecekan untuk menjamin dapat efektifnya kegiatan rutin.”
2.4
Sistem Pengendalian Internal.
2.4.1
Pengertian. Mengacu pada Romney dan Steinbart (2003, p195), pengendalian internal adalah
suatu rencana organisasi dan metode bisnis yang digunakan untuk menyelamatkan aset, menyediakan informasi yang akurat dan terpercaya, meningkatkan efisiensi operasional dan untuk memenuhi ketaatan terhadap kebijakan manajemen. Tujuan yang ingin dicapai dari pengendalian intern atas Sistem Informasi Akuntansi Penjualan adalah sebagai berikut: a. Seluruh transaksi telah diotorisasi secara tepat. b. Seluruh transaksi yang dicatat memang benar-benar terjadi. c. Seluruh transaksi yang terjadi dan telah dilakukan otorisasi telah dicatat. d. Seluruh transaksi dicatat secara tepat dan akurat. e. Seluruh aktiva yang dimiliki perusahaan terjaga dari kehilangan dan pencurian. f. Seluruh aktivitas bisnis dilakukan secara efektif dan efisien. Jadi dapat ditarik kesimpulan bahwa pengendalian internal adalah aturan, kebijakan, prosedur dan sistem informasi yang dirancang untuk memastikan data
24 keuangan perusahaan tepat dan dapat diandalkan, untuk meningkatkan efisiensi dan efektifitas operasional dan untuk memenuhi ketaatan terhadap hukum dan peraturan yang berlaku.
2.4.2
Komponen Sistem Pengendalian Internal. Mengacu pada Jones dan Rama (2006, p105), komponen sistem pengendalian
internal terdiri dari : 1. Control environment Berhubungan dengan beberapa faktor yang disusun organisasi untuk mengontrol kesadaran para karyawannya. Faktor tersebut berhubungan dengan integritas, nilainilai etika dan filsafat perusahaan dan cara operasi perusahaan. Hal ini juga termasuk cara managemen menetapkan otoritas dan tanggung jawab, mengatur dan mengembangkan sumber daya manusia, dan perhatian dan petunjuk terhadap struktur organisasi. 2. Risk assessment Adalah proses identifikasi dan analisis terhadap resiko yang dapat mengganggu pencapaian tujuan pengendalian internal. 3. Control activities Adalah kebijakan dan prosedur yang dikembangkan organisasi untuk menangani resiko-resiko. Control activities terdiri dari : A. Performance review; adalah kegiatan yang berhubungan dengan analisis terhadap kinerja, contohnya adalah dengan membandingkan hasil yang didapat dengan anggaran, standar perhitungan dan data pada periode sebelumnya.
25 B. Segregation of duties; terdiri dari penetapan tanggung jawab untuk mengotorisasi transaksi, melakukan transaksi, mencatat transaksi, dan menjaga aset terhadap karyawan. C. Application controls; berhubungan dengan aplikasi sistem informasi akuntansi. D. General control; pengawasan yang lebih luas yang berhubungan dengan berbagai aplikasi. 4. Information and communication Sistem informasi dalam perusahaan adalah kumpulan prosedur (atomatis dan manual) dan pencatatan dalam memulai, mencatat, memproses dan melaporkan kejadian dalam proses-proses yang terjadi dalam organisasi. Komunikasi berhubungan dengan menyediakan dan memahami peraturan dan tanggung jawab individu. 5. Monitoring. Managemen harus mengawasi pengendalian internal untuk memastikan bahwa pengawasan terhadap organisasi berjalan sesuai tujuan yang telah ditetapkan.
Menurut Gondodiyoto, Sanyoto dan Henny Hendarti (2006) terdapat lima prosedur atas pengendalian internal, yaitu: 1. Otorisasi Setiap transaksi pada sistem harus diotorisasi dengan semestinya untuk mengurangi resiko penyalahgunaan. Otorisasi dapat diberikan dalam bentuk umum dan khusus. Secara umum, otorisasi dilakukan misalnya dengan membuat kebijaksanaan mengenai harga barang yang akan dijual dan berapa maksimum jumlah kredit yang diberikan. Sedangkan pada otorisasi khusus biasanya diberikan manajemen pada
26 beberapa transaksi tertentu. Pihak yang memiliki wewenang dalam memberikan otorisasi adalah pejabat yang memiliki posisi berhubungan dengan sifat maupun makna transaksi yang bersangkutan. 2. Dokumentasi yang memadai Dokumen berfungsi sebagai penerus informasi di lingkungan organisasi atau diantara organisasi yang berbeda. Beberapa prinsip dalam penggunaan dokumen adalah sebagai berikut: a. Diberikan nomor urut tercetak, agar dapat memudahkan dalam pelacakan dimasa depan. b. Dokumen dibuat sederhana agar dapat mudah dimengerti. c. Memuat data yang lengkap sesuai kebutuhan d. Dibuat pada saat transaksi tertentu 3. Pengamanan fisik Pengamanan fisik sangat penting, terutama dalam hal pengamanan harta perusahaan. 4. Pemisahan tugas dan fungsi Dalam merancang organisasi perusahaan, perlu diperhatikan pertimbanganpertimbangan sistem pengendalian internal sebagai berikut: a. Struktur organisasi yang memisahkan tanggung jawab fungsional secara tegas. b. Sistem wewenang dan prosedur pencatatan yang memberikan perlindungan yang cukup terhadap kekayaan, utang, pendapatan, dan biaya. c. Praktik yang sehat dalam melaksanakan tugas dan fungsi tiap unit organisasi. d. Karyawan yang mutunya sesuai dengan tanggung jawab. 5. Verifikasi secara independen Merupakan pengujian kecermatan data transaksi dengan pengecakan ulang yang
27 dilakukan pihak lain.
2.4.3
Ancaman dalam Sistem Informasi Akuntansi Penjualan Menurut Romney dan Steinbart (2003, p318), beberapa ancaman yang sering
ditemui dalam sistem informasi akuntansi penjualan adalah pesanan penjualan yang tidak lengkap atau tepat, kegagalan dalam menagih kepada pelanggan, dan lain-lain. Beberapa prosedur pengendalian yang dapat diterapkan untuk mengatasi ancaman tersebut adalah pemeriksaan input data, pemisahan fungsi pengiriman dan penagihan persetujuan kredit oleh manajer kredit bukan oleh fungsi penjualan, dll. Untuk lebih jelasnya, beberapa ancaman dan prosedur pengendalian untuk mengatasi ancamanancaman dalam kegiatan penjualan dapat dilihat pada tabel berikut ini : Proses Ancaman Entry pesanan 1. Order penjualan yang penjualan tidak lengkap atau tidak pasti. 2. Memberikan kredit kepada pelanggan yang memiliki catatan kredit yang tidak baik. 3.
4.
Pengiriman
5.
6.
Prosedur Pengendalian Pemisahan data entry.
Persetujuan kredit oleh manajer kredit, bukan dari fungsi penjualan, catatan saldo pelanggan yang tepat. Otorisasi pesanan Tanda tangan pada kertas dokumen, tanda tangan digital dan sertifikat digital untuk ebusiness. Kehabisan stok, Sistem pengendalian carrying costs, dan persediaan. markdown. Kesalahan pengiriman Rekonsilasi antara order : salah jenis barang, penjualan dengan picking salah jumlah kuantitas ticket dan picking slip, bar salah alamat. code scanner, pengendali an aplikasi pencatatan data. Ancaman persediaan Membatasi akses fisik dengan persediaan;
28
Penagihan Piutang
dan 7. Gagal untuk menagih pelanggan.
8. Kesalahan dalam penagihan. 9. Kesalahan posting didalam meng-update piutang
Penagihan kas
10. Pencurian kas
Isu-isu pengendalian 11. Kehilangan data umum
12. Kinerja yang buruk
mendokumentasikan semua perpindahan internal persediaan, pemeriksaan fisik secara periodik dengan jumlah catatan. Pemisahan fungsi pengiriman dan penagihan; semuadokumen pengiriman bernomer urut tercetak dan rekonsiliasi secara periodik dengan faktur; merekonsili asi picking ticket dan surat jalan dengan order penjualan. Pengendalian pemeriksaan entry data daftar harga. Rekonsiliasi jurnal pembantu piutang dengan jurnal umum; mengirimkan laporan bulanan kepada pelanggan. Pemisahan tugas; meminimalkan penanganan kas; pengaturan lockbox; persetujuan tepat waktu dan menyimpan setiap penerimaan. Secara periodik merekonsi liasi rekening koran dengan catatan yang dibuat oleh pihak yang tidak terlibat dalam pemrosesan penerimaan kas. Prosedur back-up dan pemulihan terhadap bencana, pengendalian akses (secara fisik dan logik). Mempersiapkan dan mengkaji ulang laporan kinerja.
Tabel 2.1 Ancaman didalam proses siklus pendapatan (Sumber Bodnar dan Hopwood, 2003,p318)
29 2.4.4 Laporan yang dihasilkan Menurut Wilkinson et al (2000), Laporan operasional yang dihasilkan adalah sebagai berikut: a. Open order report, yaitu laporan yang mencatat pesanan penjualan yang belum dikirim atau ditagih. b. Sales invoice register, yaitu laporan mengenai seluruh penagihan atas penjualan. c. Shipping register, yaitu laporan mengenai barang yang telah dikirim. d. Cash receipts journal, yaitu laporan mengenai jumlah kas yang telah diterima perusahaan dari hasil penjualan. e. Credit memo register, yaitu laporan mengenai pengembalian barang karena terjadi kerusakan.
2.5
Tinjauan Umum Pengendalian Persediaan dan Harga Pokok Makanan dan Minuman pada hotel dan restaurant.
2.5.1
Pendahuluan Menurut I.B.M Wiyasha (2006, p2), hotel sebagai salah satu unit bisnis
menawarkan jasa kamar, makanan, minuman, serta berbagai jasa lainnya yang kesemuanya dimaksudkan untuk melayani tamu. Pendapatan dari jasa kamar memberikan kontribusi kurang lebih 65% dari total pendapatan hotel. Pendapatan kedua terbesar adalah pendapatan dari makanan dan minuman yang memberikan kontribusi kurang lebih sebesar 30% dari total pendapatan hotel. Untuk dapat mencapai sasaran pendapatan maka hotel dan restaurant memerlukan sistem pengendalian persediaan dan harga pokok makanan dan minuman yang berfungsi sebagai panduan bagi manajemen dalam mengendalikan harga pokok
30 makanan dan minuman yang dijual dan juga didapatkannya konsistensi dalam cita rasa, takaran, penampilan, dan mutu bahan baku yang digunakan untuk memproduksi makanan dan minuman yang dipesan oleh tamu.
2.5.2 Tujuan Menurut I.B.M Wiyasha (2006, p3), sistem pengendalian persediaan dan harga pokok makanan dan minuman dimaksudkan untuk : a. Mengendalikan mutu produk makanan dan minuman yang ditawarkan. b. Mengendalikan harga pokok makanan dan minuman. c. Mencapai target laba yang ditentukan. d. Melakukan tindakan koreksi yang diperlukan. e. Meningkatkan efisiensi operasional bagian makanan dan minuman.
2.5.3
Fungsi-fungsi yang terlibat Menurut I.B.M Wiyasha (2006, p4), beberapa fungsi atau bagian hotel dan
restaurant terlibat dalam pengendalian persediaan dan harga pokok makanan dan minuman. Target harga pokok makanan dan minuman hanya akan dapat dicapai apabila ada koordinasi yang baik diantara fungsi pembelian, penerimaan bahan baku, penyiapan dan pengeluaran bahan baku, prapenyiapan dan fungsi penjualan. Semua aktivitas pada fungsi diatas harus dikendalikan sesuai dengan standar ataupun ukuran baku yang sudah ditetapkan. Aktivitas fungsi penerimaan juga harus dikendalikan dengan prosedur baku penerimaan bahan makanan dan minuman. Demikian pula dengan aktivitas dari fungsi penyimpanan dan pengeluaran barang digudang, pra-penyimpanan, proses produksi, hingga pada fungsi penjualan makanan dan minuman.
31 2.6
Pengertian Analisis dan Perancangan Sistem Menurut Bodnar dan Hopwood (2003,p21), analisis sistem meliputi formulasi
dan evaluasi solusi - solusi masalah sistem. Penekanan dalam analisis sistem adalah tujuan keseluruhan sistem. Dasar semua ini adalah analisis untung - rugi diantara tujuan - tujuan sistem. Menurut Bodnar dan Hopwood (2003,p21), perancangan sistem adalah proses menspesifikasikan rincian solusi yang dipilih oleh proses analisis sistem. Perancangan sistem termasuk evaluasi efektifitas dan efisiensi relatif dalam perancangan sistem dalam lingkup kebutuhan keseluruhan sistem.
2.7
Pengertian Metode Analisis dan Desain Berorientasi Object Mengacu pada Mathiassen, Munk-Madsen dan Nielsen (2000, p14), dalam
analisis dan perancangan berorientasi object terdapat empat aktivitas utama seperti yang meliputi : problem domain analysis, application domain analysis, architectural design, dan component design.
Requirements for use
Problemdomain analysis
Model
Applicationdomain analysis
Component design Specifications of component
Specification of architecture
Architectural design
32 Gambar 2.2 Object-oriented analysis and design (Sumber Mathiassen et al, 2000, p15)
2.7.1
Object dan Class. Menurut Mathiassen et al. (2000, p4), object adalah sebuah entity dengan
identitas, state dan behavior. Setiap object tidak digambarkan secara sendiri - sendiri, melainkan istilah class digunakan untuk menggambarkan kumpulan-kumpulan objectobject. Menurut Mathiassen et al. (2000,p4), class adalah sebuah deskripsi dari kumpulan object yang terstruktur, behavioral pattern, dan atribut. Keuntungan dari OOAD adalah: a. menyediakan info yang jelas mengenai konteks sistem. b. ada kaitan yang erat antara object-oriented analysis, object-oriented design, objectoriented user interface dan object-oriented programming. Notasi standar yang digunakan dalam OOAD adalah UML (Unified Modeling Languange). UML digunakan hanya sebagai notasi dan bukan sebagai metode dalam melakukan modeling.
2.7.2
System Choice. Pemilihan sistem dilakukan untuk menghasilkan system definition yang
memenuhi kriteria FACTOR. Mengacu pada
Mathiassen et al. (2000,p24), system
defenition adalah sebuah deskripsi teratur dari sistem yang terkomputerisasi yang dijelaskan dalam bahasa natural.Dengan melakukan pendeskripsian terhadap sistem
33 maka akan diperoleh pandangan secara menyeluruh terhadap situasi dan berbagai cara organisasi untuk menginterpretasikannya. Rich picture adalah sebuah gambaran informal yang digunakan oleh pengembang sistem untuk menyatakan pemahaman mereka terhadap situasi dari sistem yang sedang berlangsung. Rich picture juga dapat digunakan sebagai alat yang berguna untuk memfasilitasi komunikasi yang baik antara pengguna dalam sistem.
Gambar 2.3. Contoh Simbol dalam Rich Picture.
Mengacu pada Mathiassen et al. (2000,p39), FACTOR terdiri dari 6 elemen: Functionality
: Fungsi sistem yang mendukung application domain.
Application domain
: Bagian dari organisasi, administrasi, monitor, atau kontrol problem domain.
Conditions
: Kondisi setelah sistem akan dikembangkan dan digunakan.
Technology
: Teknologi yang digunakan dalam pengembangan sistem dan teknologi yang akan menjalankan sistem.
Objects
: Object utama dalam problem domain.
Responsibility
: Tanggung jawab keseluruhan sistem dalam hubungannya dengan context.
34 2.7.3
Analisis Problem Domain. Mengacu pada Mathiassen L. et al. (2000,p45), problem domain adalah bagian
dari konteks yang diatur, dimonitor, atau dikendalikan oleh sistem. Analisis problemdomain memfokuskan pada informasi apa yang harus ditangani oleh sistem dan menghasilkan sebuah model yang merupakan gambaran dari class-class, object-object, struktur dan perilaku (behaviour) yang ada dalam problem domain. System definition
Behaviour Classes
Model Structure
Gambar 2.4 Problem-domain analysis (Sumber Mathiassen et al, 2000, p46)
Untuk lebih jelasnya kegiatan-kegiatan yang dilakukan dalam analisis problemdomain dapat dilihat pada tabel berikut ini. Kegiatan Class Struktur Behaviour
Isi Konsep Object dan event yang merupakan Class, object, event bagian dari problem domain Bagaimana class dan object Generalisasi, agregasi, asosiasi, saling berkaitan dan cluster Property dinamik yang dimiliki Event trace, behavioural pattern, dan attribute object Tabel 2.2 Kegiatan Problem-domain analysis (Sumber Mathiassen et al, 2000, p48)
35 2.7.3.1 Class Mengacu pada Mathiassen et al. (2000, p49-65), kegiatan class merupakan kegiatan pertama dalam analisis problem domain. Ada beberapa tugas utama dalam kegiatan ini, yaitu abstraksi fenomena dari problem domain dalam object dan event; klasifikasi object dan event; pemilihan class-class dan event-event yang akan dipelihara informasinya oleh sistem. Object adalah sebuah entity dengan identitas, state dan behavior. Event adalah kejadian yang meliputi satu atau lebih object. Class adalah deskripsi dari kumpulan object yang termasuk structure, behavioral pattern, dan attributes. Pemilihan class akan ditemukan pada saat awal dan pada dasarnya yang membangun model dari problem domain. Class biasanya merupakan kata benda dan bermakna tunggal. Pemilihan kumpulan event yang dialami atau dilakukan oleh satu atau lebih object bertujuan untuk membedakan tiap-tiap class dalam problem domain. Event merupakan kata kerja dan mengindikasikan kejadian tunggal. Pemilihan class tersebut bertujuan untuk mendefinisikan dan membatasi problem domain. Kegiatan class tersebut akan menghasilkan table event. Dimensi horizontal dari tabel event berisi class-class yang terpilih, sementara dimensi vertikal berisi event-event terpilih dan tanda cek digunakan untuk mengindikasikan object-object dari class yang berhubungan dalam event tertentu. Table event dapat dilihat pada tabel berikut ini. Class Events
Customer
Assistant
Apprentice Appointment
Reserved
√
√
√
Cancelled
√
√
√
Treated
√
√
Plan √
36 Employed
√
√
Resigned
√
√ √
Graduated Agreed
√
√
√
Tabel 2.3 Contoh Table Event (Sumber Mathiassen et al, 2000, p50)
2.7.3.2
Structure Mengacu pada Mathiassen et al. (2000, p69-86), struktur bertujuan untuk
mencari hubungan struktural yang abstrak dan umum antara class-class dan mencari hubungan yang konkrit dan spesifik antara object-object dalam problem-domain. Struktur terdiri struktur object-oriented, class dan object. Hasil dari kegiatan struktur ini adalah class diagram. Class diagram menghasilkan ringkasan model problem-domain yang jelas dengan menggambarakan semua struktur hubungan statik antar class dan object yang ada dalam model dari sistem yang berubah-ubah.
2.7.3.3 Behavior Mengacu pada Mathiassen et al. (2000,p89-p110), kegiatan behaviour adalah kegiatan terakhir dalam analisa problem-domain, bertujuan untuk memodelkan apa yang terjadi (perilaku dinamis) dalam problem-domain sistem sepanjang waktu. Tugas utama dalam kegiatan ini adalah menggambarkan pola perilaku dan atribut dari setiap class melalui event trace, yaitu urutan event yang meliputi satu object yang spesifik dan
37 behavioral pattern,yaitu: deskripsi urutan event yang memungkinkan untuk semua object dalam sebuah class. Hasil dari kegiatan ini adalah statechart diagram.
2.7.4
Analisis Application Domain. Mengacu pada Mathiassen et al. (2000,p115), application domain adalah
organisasi yang mengatur, mengawasi, atau mengendalikan problem domain. Analisis application-domain memfokuskan pada bagaimana target sistem akan digunakan dengan menentukan kebutuhan function dan antarmuka sistem. System definition
Interface Usage
Requirements Function
Gambar 2.5 Application-domain analysis (Sumber Mathiassen et al, 2000, p117)
Untuk lebih jelasnya kegiatan-kegiatan yang dilakukan dalam analisis application-domain dapat dilihat pada tabel berikut ini. Kegiatan Usage Function Interface
Isi Konsep Bagaimana sistem berinteraksi dengan Use case dan actor orang lain dan sistem lain dalam konteks Bagaimana kemampuan sistem dalam Function memproses informasi Kebutuhan antarmuka dari sistem target Interface, user interface dan system interface Tabel 2.4 Kegiatan Application domain analysis (Sumber Mathiassen et al, 2000, p117)
38 2.7.4.1 Usage Mengacu pada Mathiassen et al. (2000,p119-134), kegiatan usage merupakan kegiatan pertama dalam analisis application domain yang bertujuan untuk menentukan bagaimana aktor-aktor yang merupakan pengguna atau sistem lain berinteraksi dengan sistem yang dituju. Interaksi antara aktor dengan sistem tersebut dinyatakan dalam use case. Use case dapat digambarkan dengan menggunakan spesifikasi use case, dimana use case dijelaskan secara singkat namun jelas dan dapat disertai dengan keterangan object sistem yang terlibat dan function dari use case tersebut atau dengan diagram statechart karena use case adalah sebuah fenomena yang dinamik. Actor adalah abstraksi dari user atau sistem lain yang berinteraksi dengan target sistem. Cara untuk mengidentifikasi actor adalah dengan mengetahui alasan actor menggunakan sistem.
Sequence diagram Mengacu pada Bennet Et al. (2003) sequence diagram membantu seorang analis mengidentifikasikan kebutuhan rincian dari kegiatan yang dibutuhkan untuk menjalankan fungsi dari sebuah use case. tidak ada suatu sequence diagram yang benar untuk use case tertentu, melainkan ada sejumlah sequence diagram yang masing-masing diagram tersebut dapat lebih atau kurang memenuhi kebutuhan dari use case.
2.7.4.2 Functions. Mengacu pada Mathiassen et al. (2000, p137-146) kegiatan function memfokuskan pada bagaimana cara sebuah sistem dapat membantu aktor dalam melaksanakan pekerjaan mereka. Tujuan dari kegiatan function adalah untuk
39 menentukan kemampuan sistem memproses informasi. Hasil dari kegiatan ini adalah sebuah daftar function-function yang merinci function-function yang kompleks. Daftar function harus lengkap, menyatakan kebutuhan kolektif dari pelanggan dan actor dan harus konsisten dengan use case.
a. System functions. Function memiliki empat tipe yang berbeda yaitu : 1. Update, function ini disebabkan oleh event problem-domain dan menghasilkan perubahan dalam state atau keadaan dari model tersebut. 2. Signal, function ini disebabkan oleh perubahan keadaan atau state dari model yang dapat menghasilkan reaksi pada konteks. 3. Read, function ini disebabkan oleh kebutuhan informasi dalam pekerjaan actor dan mengakibatkan sistem menampilkan bagian yang berhubungan dengan informasi dalam model. 4. Compute, function ini disebabkan oleh kebutuhan informasi dalam pekerjaan actor dan berisi perhitungan yang melibatkan informasi yang disediakan oleh actor atau model, hasil dari function ini adalah tampilan dari hasil komputasi. b. Menentukan functions. Cara untuk mengidentifikasikan function adalah dengan melihat deskripsi problem domain yang dinyatakan dalam class dan event, dan melihat deskripsi application domain yang dinyatakan dalam use case. Class dapat menyebabkan munculnya function baca dan update. Event memungkinkan munculnya kebutuhan terhadap function update. Sementara use case dapat menyebabkan munculnya segala macam tipe function.
40 2.7.4.3 Interfaces. Mengacu pada Mathiassen et al. (2000, p152-170) interface menghubungkan sistem dengan semua actor yang berhubungan dalam konteks. Ada dua jenis dari interface atau antar muka yaitu : antar muka pengguna yang menghubungkan pengguna dengan sistem (user interface) dan antar muka sistem yang menghubungkan sistem dengan sistem yang lainnya (system interface). Terdapat empat jenis pola dialog yang penting dalam menentukan interface pengguna yaitu : 1. pola menu-selection yang terdiri dari daftar pilihan yang mungkin dalam interface pengguna. 2. pola fill in yang merupakan pola klasik untuk entry data 3. pola command-language dimana user memasukkan dan memulai format perintah sendiri. 4. pola direct manipulation dimana user memilih object dan melaksanakan function atas object dan melihat hasil dari interkasi mereka tersebut. Kegiatan analisis user interface ini berdasarkan pada hasil dari kegiatan analisis lainnya yaitu model problem domain, kebutuhan functional dan use case. Hasil dari kegiatan ini adalah sebuah deskripsi elemen-elemen interface pengguna dan interface system yang lengkap, dimana kelengkapan menunjukkan pemenuhan kebutuhan pengguna. Hasil ini harus dilengkapi dengan sebuah diagram navigasi yang menyediakan sebuah ringkasan dari elemen-elemen user interface dan perubahan antara elemen-elemen tersebut.
41 2.7.5
Architecture Design Mengacu pada Mathiassen et al. (2000, p173), arsitektur desain adalah suatu
kegiatan arsitektur yang membentuk sistem sesuai dengan fungsi sistem tersebut dan dengan memenuhi kriteria desain tertentu. Arsitektur juga berfungsi sebagai kerangka untuk kegiatan pengembangan yang selanjutnya. Analysis document
Component architecture Criteria
Process architecture
Architectural specification
Gambar 2.6 Architectural desain (Sumber Mathiassen et al, 2000, p176) Untuk lebih jelasnya, kegiatan-kegiatan yang dilakukan selama tahap desain arsitektur dapat dilihat pada tabel berikut ini. Kegiatan Kriteria Komponen Proses
Isi Kondisi Kondisi dan criteria untuk pendesainan Criterion Bagaimana sistem dibentuk menjadi Arsitektur komponen komponen-komponen Bagaimana proses sistem didistribusikan dan Arsitektur proses dikoordinasi Tabel 2.5 Kegiatan Architectural desain (Sumber Mathiassen et al, 2000, p176)
2.7.5.1 Criteria Mengacu pada Mathiassen et al. (2000, p177-186), tujuan dari sebuah criteria adalah untuk mempersiapkan prioritas sebuah perancangan. Konsep utama pada
42 aktivitas criteria , yaitu criteria:menentukan properti yang diinginkan dari sebuah arsitektur dan condition yaitu hal-hal yang bersifat teknis, organisasional, kelebihan dan keterbatasan manusia yang terlibat dalam tugas. Dalam menciptakan sebuah desain yang baik diperlukan pertimbangan mengenai kondisi-kondisi dari setiap proyek yang dapat mempengaruhi kegiatan desain yang meliputi technical, conceptual dan human. Sebuah desain yang baik memiliki tiga ciriciri yaitu tidak memiliki kelemahan, menyeimbangkan beberapa criteria dan usable, flexible, dan comprehensible. Tabel dibawah ini adalah beberapa criteria umum yang digunakan dalam kegiatan desain yang berorientasi object : Criterion Usable
Ukuran dari Kemampuan sistem untuk menyesuaikan diri dengan konteks, organisasi yang berhubungan dengan pekerjaan dan teknis. Ukuran keamanan sistem dalam menghadapi akses Secure yang tidak terotorisasi terhadap data dan fasilitas. Eksploitasi ekonomis terhadap fasilitas platform Efficient teknis. Pemenuhan dari kebutuhan. Correct Pemenuhan ketepatan yang dibutuhkan untuk Reliable melaksanakan fungsi. Biaya untuk menemukan dan memperbaiki Maintainable kerusakan. Biaya untuk memastikan bahwa sistem yang Testable dibentuk dapat melaksanakan fungsi yang diinginkan. Biaya untuk mengubah sistem yang dibentuk. Fleksible Usaha yang diperlukan untuk mendapatkan Comprehensible pemahaman terhadap sistem. Kemungkinan untuk menggunakan bagian sistem Reusable pada sistem lain yang berhubungan. Biaya untuk memindahkan sistem ke platform Portable teknis yang berbeda. Biaya untuk menggabungkan sistem ke sistem yang Interoperable lain. Tabel 2.6 Beberapa criteria dalam perancangan (Sumber Mathiassen et al, 2000, p178)
43 2.7.5.2 Component Architecture Mengacu pada Mathiassen et al. (2000, p189-206), arsitektur komponen adalah sebuah struktur sistem yang terdiri dari komponen-komponen yang saling berhubungan. Komponen merupakan kumpulan dari bagian-bagian program yang membentuk suatu kesatuan dan memiliki fungsi yang jelas. Sebuah arsitektur komponen yang baik membuat sistem menjadi lebih mudah untuk dipahami, mengorganisasikan pekerjaan desain, menggambarkan stabilitas dari konteks sistem dan mengubah tugas desain menjadi beberapa tugas yang lebih tidak kompleks. Beberapa pola umum dalam desain komponen arsitektur : a. Layer architecture pattern. Merupakan bentuk yang paling umum dalam software. Sebuah arsitektur layered terdiri dari beberapa komponen yang dibentuk menjadi lapisan-lapisan dimana lapisan yang berada di atas bergantung kepada lapisan yang ada dibawahnya. Perubahan yang terjadi pada suatu lapisan akan mempengaruhi lapisan diatasnya. b. Generic architecture pattern. Pola ini digunakan untuk merinci sistem dasar yang terdiri dari antar muka, function, dan komponen-komponen model. Dimana komponen model terletak pada lapisan yang paling bawah, diikuti dengan function system dan komponen interface diatasnya. c. Client-server architecture pattern. Pola ini awalnya dikembangkan untuk mengatasi masalah distribusi sistem di antara beberapa processor yang tersebar secara geografis. Komponen pada arsitektur ini adalah sebuah server dan beberapa client. Tanggung jawab daripada server adalah untuk menyediakan database dan resources yang dapat disebarkan kepada client
44 melalui jaringan. Sementara client memiliki tanggung jawab untuk menyediakan antarmuka lokal untuk setiap penggunanya. Ada 2 macam metode berbeda dalam membagi komponen client & server yaitu: 1. Client & Server dianggap sebagai subsistem tunggal yang masing-masing memiliki komponen, yaitu: User Interface (UI), Function (F), dan Model (M). 2. Atau masing-masing dapat dianggap sebagai layer berbeda dalam sistem yang sama. Client
Server U+F+M F+M F+M M M
U U U+F U+F U+F+M
Architecture Distributed presentation Local presentation Distributed functionality Centralized data Distributed data
Tabel 2.7 Beberapa criteria dalam perancangan (Sumber Mathiassen et al, 2000, p200)
2.7.5.3 Process Architecture Mengacu pada Mathiassen et al. (2000, p209-227), proses arsitektur adalah struktur dari eksekusi sistem yang terdiri dari proses-proses yang saling tergantung. Hasilnya berupa sebuah deployment diagram. Pada aktivitas ini, terdapat 3 (tiga) jenis pola distribusi, yaitu : 1. Centralized Pattern. Pola ini menyimpan semua data pada server pusat dan user hanya bisa melihat User Interface (UI) saja. Keuntungan dari pola ini adalah dapat diimplementasikan pada client secara murah, semua data konsisten karena hanya berada di satu tempat saja, strukturnya mudah dimengerti dan diimplementasikan, kemacetan jaringannya moderat.
45 2. Distributed Pattern. Pada pola ini, semua terdistribusi ke user atau client & server hanya menyebarkan model yang telah diupdate diantara client. Keuntungan utama dari pola ini adalah waktu akses yang rendah, sehingga tidak terjadi kemacetan jaringan, kinerja lebih maksimum, dan backup data banyak. Kerugiannya adalah banyaknya data yang redundant sehingga konsistensi data terancam, kemacetan jaringan yang tinggi karena semua update harus disebar kepada semua client, kebutuhan teknis yang canggih, arsitekturnya lebih sulit dimengerti dan diimplementasikan. 3. Decentralized Pattern. Pola ini berada diantara kedua pola diatas. Pada pola ini client memiliki data tersendiri sehingga data umum hanya berada pada server. Server menyimpan data umum dan function atas data-data tersebut, sedangkan client menyimpan data yang merupakan milik bagian application domain client tersebut. Keuntungannya adalah konsistensi data, karena tidak ada duplikasi data antara client dengan client lain ataupun dengan server, lalulintas jaringan jarang karena jaringan hanya digunakan ketika data umum di server diupdate. Kekurangannya adalah bahwa semua processor harus mampu melakukan fungsi yang kompleks dan memelihara model dalam jumlah yang besar, sehingga akan meningkatkan biaya hardware. 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.
46 2.7.6
Component Design Mengacu pada Mathiassen et al. (2000, p231-233), desain komponen bertujuan
untuk menentukan kebutuhan implementasi dalam rangka kerangka arsitektural. Kegiatan desain komponen bermula dari spesifikasi arsitektural dan kebutuhan system, sedangkan hasil dari kegiatan ini adalah spesifikasi dari komponen yang saling berhubungan. Architectural specification Design of component
Design of component connections
Component specification
Gambar 2.7 Architectural desain (Sumber Mathiassen et al, 2000, p232) Untuk lebih jelasnya, kegiatan-kegiatan yang dilakukan selama tahap desain komponen dapat dilihat pada tabel berikut ini. Kegiatan Model component
Function component
Connecting component
Konteks Bagaimana suatu model digambarkan sebagai class dalam sebuah sistem Bagaimana suatu function diimplementasikan
Konsep Model component and attribute
Function component operation Bagaimana komponen-komponen Component dihubungkan connection Tabel 2.8 Kegiatan Component desain (Sumber Mathiassen et al, 2000, p232)
and and
47 2.7.6.1 Model Component Mengacu pada Mathiassen et al. (2000, p235-p248), model analisis problem domain
menggambarkan
kebutuhan
sistem.
Kebutuhan
sistem
kemudian
diimplementasikan dalam komponen model. Oleh karena itu dapat disimpulkan bahwa komponen model adalah bagian dari sistem yang mengimplementasikan model problem domain. Tujuan dari komponen model adalah untuk mengirimkan data sekarang dan historical ke function, interface dan pengguna dan sistem yang lain. Konsep utama dalam desain komponen model adalah struktur. Hasil dari kegiatan komponen model adalah restrukturisasi dari class diagram dari kegiatan analisis. Kegiatan restrukturisasi biasanya terdiri dari kegiatan menambahkan class, atribut dan struktur baru yang mewakili event. Restrukturisasi class dapat terjadi pada generalization, association (many-to-many) dan embedded iterations.
2.7.6.2 Function Component Mengacu pada Mathiassen et al. (2000, p251-p268), komponen function adalah bagian dari sistem yang mengimplementasikan kebutuhan fungsional. Tujuan dari komponen function adalah untuk memberikan akses bagi user interface dan komponen sistem lainnya ke model, oleh karena itu komponen function adalah penghubung antara model dan usage. Hasilnya berupa class diagram dengan operations dan specification dari operation yang kompleks.
2.7.7
Implementation Tahap akhir dalam perancangan sebuah sistem adalah pembangunan prototipe
dari sistem tersebut. Prototipe dibangun dengan menggunakan sebuah program
48 berorientasi object.
2.7.7.1 Borland Delphi 7th Edition Borland Delphi 7 merupakan program aplikasi database berbasis Object Pascal dari Borland. Disamping itu, Delphi juga memberikan fasilitas pembuatan aplikasi visual seperti Visual Basic.(Martina, I. 2006). Menggunakan Delphi adalah cara yang paling sederhana untuk membangun aplikasi berbasis windows selain itu produktifitas dari pengembangan perangkat lunak dengan Delphi memiliki 5 atribut penting, yaitu : 1. Kualitas lingkungan pengembangan visual. 2. Kecepatan compiler dibandingkan dengan kompleksitasnya. 3. Kekuatan bahasa pemograman dibandingkan dengan kompleksitasnya. 4. Fleksibilitas arsitektur basis data. 5. Pola desain dan pemakaian yang diwujudkan oleh frameworknya.