BAB 2 LANDASAN TEORI
2.1
Sistem Informasi Sistem informasi merupakan sistem yang berperan dalam mendukung
keperluan perusahaan akan informasi di dalam menjalankan proses bisnisnya. Menurut Gelinas (2008: p13), sistem informasi adalah sistem yang dibuat oleh manusia yang secara umum terdiri dari sekumpulan komponen-komponen berbasis komputer yang terintegrasi dan juga komponen-komponen manual yang dibentuk untuk mengumpulkan, menyimpan, dan mengatur data serta menyediakan output informasi untuk para penggunanya. Menurut Laudon (2009, p8), sistem informasi didefinisikan sebagai serangkaian mengumpulkan,
memproses,
secara teknikal dapat
komponen yang saling berhubungan untuk
menyimpan
danmenyebarkan
informasi
untuk
mendukung pengambilan keputusan dan mengendalikan organisasi. Dalam jurnalnya yang berjudul The Usefulness of an Accounting Information System for Effective Organizational Performance, Siamak Nejadhosseini Soudani (2012) mengemukakan bahwa system informasi akuntansi adalah alat-alat yang, ketika di hubungkan dengan informasi dan TI, di desain untuk membantu manajemen dan pengendalian atas hal-hal yang berhubungan dengan area ekonomis dan keuangan organisasi. Jadi, sistem informasi adalah komponen- komponen berbasis komputer perusahaan yang saling berinteraksi untuk mendukung rutinitas operasi perusahaan, menyediakan informasi yang dibutuhkan dan mendukung proses pengambilan keputusan perusahaan dalam usahanya untuk pencapaian suatu tujuan tertentu.
7
8
2.1.1 Sistem Peranan sebuah sistem adalah sebagai cara dan proses yang dilakukan untuk menyelesaikan suatu tujuan Menurut Gelinas (2008: p11), sistem adalah kumpulan dari elemen yang saling tergantung satu sama lain dimana mereka bersama-sama menyelesaikan sasaran yang spesifik. Menurut O’Brien (2006: p29), sistem adalah sekelompok komponen yang saling berhubungan, bekerja bersama untuk mencapai tujuan bersama dengan menerima input serta menghasilkan output dalam proses transformasi yang teratur. Jadi, sistem merupakan serangkaian komponen atau elemen yang saling berkaitan dan terintegrasi serta bekerja sama untuk mencapai suatu tujuan dengan menerima input dan menghasilkan output melalui sebuah proses transformasi yang teratur.
2.1.2 Informasi Informasi merupakan sebuah kebutuhan yang penting bagi perusahaan dalam proses pembuatan keputusan. Menurut
Gelinas
(2008:
p17),
informasi
adalah
data
yang
dipresentasikan dalam bentuk yang berguna untuk aktivitas pengambilan keputusan. Menurut Romney dan Steinbart (2008: p5), informasi adalah data yang telah diatur dan diproses untuk memberikan arti. Jadi, informasi adalah data yang telah diolah sehingga memiliki arti dan
berguna
bagi
pemakai.
Contohnya
adalah
informasi mengenai
keuntungan yang dihasilkan oleh sebuah perusahaan pada sebuah periode tertentu.
9
2.2
Sistem Informasi Akutansi Sistem informasi akuntansi memberikan perusahaan informasi yang relevan mengenai keuangan dan akuntansi yang terdapat di dalam perusahaan. 2.2.1 Pengertian Sistem Informasi Akuntansi Menurut Dasaratha V. Rama dan Frederick L. Jones yang diterjemahkan oleh M. Slamet Wibowo (2008: p5), sistem informasi akuntansi dipandang sebagai bagian dari Sistem Informasi Manajemen. Sistem Informasi Manajemen adalah suatu sistem yang merangkap data tentang satu organisasi, menyimpan dan memelihara data, serta menyediakan informasi yang berguna bagi manajemen. Menurut Gelinas (2008: p14), sistem informasi akuntansi adalah sebuah spesifikasi subsistem dari sistem informasi yang bertujuan untuk mengumpulkan, memproses, dan melaporkan informasi yang berkaitan terhadap aspek keuangan dari kegiatan bisnis, yang terintegrasi dengan sistem informasi dan tidak dapat dibedakan sebagai pemisah subsistem. Jadi dapat ditarik kesimpulan bahwa sistem informasi akuntansi adalah suatu sistem berbasis komputer yang mengumpulkan, mencatat, menyimpan, dan memproses data dengan tujuan untuk menghasilkan informasi keuangan yang berguna bagi pemakai didalam dan diluar perusahaan.
2.2.2 Tujuan dan Kegunaan Sistem Informasi Akuntansi Menurut Romney (2006: p7), tujuan sistem informasi akuntansi adalah mengumpulkan, menyimpan dan mengubah data menjadi informasi yang berguna bagi pengambilan keputusan, serta menyediakan pengendalian yang memadai untuk menjaga asset organisasi. Menurut
Rama,
Dasaratha
V
dan
Frederick
L.Jones
yang
diterjemahkan oleh M. Slamet Wibowo (2008: p9), Lima kegunaan Sistem informasi akuntansi yaitu : a. Menyusun laporan eksternal perusahaan. Bisnis menggunakan sistem informasi akuntansi untuk menghasilkan laporan- laporan khusus untuk memenuhi kebutuhan informasi investor, kreditor, petugas pajak, agen pengatur dan lain-lain.
10
b. Menangani transaksi rutin. Manajer membutuhkan sistem informasi akuntansi untuk menangani aktivitas operasional yang rutin dalam siklus operasi perusahaan. Contohnya meliputi : melayani pemesanan pelanggan, pengiriman barang dan jasa, penagihan kepada pelanggan, dan penerimaan kas. c. Membantu para manajer membuat keputusan baik rutin maupun tidak rutin. Informasi juga dibutuhkan untuk pengambilan keputusan tidak rutin pada semua level dari organisasi. Contohnya meliputi : mengetahui barang yang penjualannya baik dan pelanggan yang paling banyak melakukan pembelian. d. Membantu perencanaan dan pengendalian. Sebuah sistem informasi dibutuhkan untuk aktivitas perencanaan dan pengendalian. e. Memelihara pengendalian intern. Pengendalian internal meliputi kebijakan, prosedur dan sistem informasi yang digunakan untuk melindungi harta (asset) perusahaan dari kerugian atau pencurian dan untuk memelihara keakuratan data keuangan.
2.2.3 Komponen Sistem Informasi Akuntansi Menurut Hall (2011: p13-p18), elemen-elemen dari sistem informasi akutansi adalah sebagai berikut. 1. Pemakai akhir Dibagi dalam dua kelompok umum : eksternal dan internal. Pemakai eksternal meliputi para kreditur, para pemegang saham, para investor potensial, agen-agen pemuat peraturan, otoritas pajak, para pemasok, dan pelanggan. Para pemakai internal adalah pihak manajemen di setiap tingkat organisasi, juga personel operasi. Berlawanan dengan pelaporan eksternal,
organisasi
memiliki
cukup
kebebasan dalam memenuhi
kebutuhan pemakai internal. 2. Sumber data Sumber data adalah transaksi keuangan yang memasuki sistem informasi dari sumber internal dan eksternal. Transaksi keuangan eksternal merupakan sumber data yang umum bagi kebanyakan organisasi.
11
Termasuk dalam transaksi ini adalah pertukaran ekonomis dengan entitas bisnis lainnya dan individu dari luar perusahaan. Misalnya, penjualan barang-barang dan jasa, pembelian persediaan, penerimaan kas, dan pengeluaran kas (termasuk gaji). Transaksi keuangan internal melibatkan pertukaran dan pergerakan sumber daya dalam organisasi. 3. Pengumpulan data Pengumpulan data merupakan tahap operasional pertama dalam sistem informasi. Tujuannya adalah untuk memastikan bahwa data-data peristiwa yang memasuki sistem itu sah (valid), lengkap dan bebas dari kesalahan material. Jika transaksi yang salah memasuki pengumpulan data tanpa terdeteksi, system mungkin akan memproses kesalahan dan menghasilkan output yang keliru dan tidak dapat diandalkan. 4. Pemrosesan data Tugas dari pemrosesan data bervariasi dari yang sederhana sampai kompleks. Misalnya adalah prosedur-prosedur untuk memposkan dan merangkumkan yang digunakan dalam aplikasi akuntansi. 5. Manajemen database Database organisasi merupakan tempat penyimpanan fisik data keuangan dan non- keuangan. Manajemen database memiliki tiga tugas mendasar, yaitu penyimpanan, perbaikan (retrieval), dan penghapusan. 6. Penghasil informasi Penghasil
informasi
merupakan
proses
mengumpulkan,
mengatur,
menformat, dan menyajikan informasi untuk para pemakai. Tanpa memperhatikan bentuk fisiknya, informsi yang berguna memiliki karakteristik berikut ini : a. Relevan Isi sebuah laporan atau dokumen harus melayani suatu tujuan. b. Tepat Waktu Informasi harus tidak lebih tua dari periode waktu tindakan yang didukungnya. c. Akurat Informasi harus bebas dari kesalahan yang sifatnya material.
12
d. Lengkap Tidak
boleh
ada
bagian
informasi
yang
esensial
bagi
pengambilan keputusan atau pelaksanaan tugas yang hilang. e. Rangkuman Informasi harus diagregasi agar sesuai dengan kebutuhan pemakai. 7. Umpan balik Umpan balik adalah suatu bentuk output yang dikirimkan kembali ke sistem sebagai suatu sumber data. Umpan balik dapat bersifat internal atau eksternal dan digunakan untuk memulai atau mengubah suatu proses.
2.2.4 Siklus Transaksi Pada Sistem Informasi Akuntansi Menurut Romney dan Steinbart (2006: p30), siklus pemrosesan transaksi pada sistem adalah suatu rangkaian aktivitas yang dilakukan perusahaan dalam melakukan bisnisnya, mulai dari proses pembelian, produksi, hingga penjualan barang dan jasa. Siklus transaksi pada perusahaan dapat dibagi kedalam lima subsistem, yaitu: 1. Revenue cycle, yang terjadi dari transaksi pembelian dan penerimaan kas. 2. Expenditure cycle, yang terdiri dari peristiwa pembelian dan pengeluaran kas. 3. Human Resource/ Payroll cycle, yang terdiri dari peristiwa yang berhubungan dengan perekrutan dan pembayaran atas tenaga kerja. 4. Production cycle, yang terdiri dari peristiwa yang berhubungan dengan pengubahan bahan mentah menjadi produk/ jasa yang siap dipasarkan. 5. Financing cycle, yang terdiri dari peristiwa yang berhubungan dengan penerimaan modal dari investor dan kreditor.
13
2.3
Teori Siklus Pendapatan Siklus pendapatan mencakup proses penjualan dan penyelesaian penjualan tersebut, penerimaan kas, hingga pembukuan transaksi yang terjadi 2.3.1 Pendapatan Pendapatan
mempengaruhi
kemungkinan
perusahaan
untuk
membiayai operasi dan administrasi nya serta untuk lebih lanjut melakukan pengembangan bisnis. Menurut Jones dan Rama yang diterjemahkan oleh Wibowo (2008:p23), pendapatan adalah suatu proses kegiatan untuk menyediakan baik barang maupun jasa untuk pelanggan. Menurut Godfrey, Hodgson, Traca, Hamilton dan Holmes (2010:292) pengertian pendapatan menururt IAS 18/AASB 118, paragraph 7 pendapatan diartikan sebagai pemasukan kotor dari keuntungan ekonomis selama periode munculnya aktifitas dari sebauh entitas ketika pemasukkan itu berdampak pada peningkatan ekuitas, selain yang berkaitan dengan kontribusi dari perserta ekuitas. Kesimpulannya pendapatan adalah hasil atas kegiatan menyediakan barang ataupun jasa dalam periode tertentu kepada pelanggan. 2.3.2 Penjualan Penjualan merupakan proses yang dilakukan oleh perusahaan untuk mendapatkan pendapatan. Menurut Warren, Reeve, Duchac (2014:p271), penjualan adalah total biaya yang dibebankan kepada pelanggan atas barang yang telah dijual oleh perusahaan, baik penjualan tunai maupun kredit. 2.3.3 Piutang Usaha Atas penjualan yang dilakukan perusahaan kepada pelanggan, maka perusahaan memiliki hak untuk menagih piutang usaha. Menurut Reeve, Warren, Duchac (2012:p256) piutang usaha adalah tagihan terhadap kosumen yang muncul karena adanya penjualan barang atau jasa secara kredit. Menurut Wibowo dan Arif (2008:p133), piutang usaha adalah sebuah nilai yang akan dilaporkan sebesar jumlah nilai kas yang diharapkan akan
14
diperoleh dalam masa mendatang. Terdapat dua metode dalam menentukan penghapusan piutang, yaitu: 1.
Metode penghapusan langsung (Direct write off method) Jumlah piutang merupakan bagian yang relatif kecil dari total aktiva lancar. Dengan pertimbangan tersebut, maka lebih baik menangguhkan pengakuan atas ketidaktertagihan sampai periode dimana jumlah tersebut dapat dianggap tidak berharga dan kemudian dihapuskan sebagai beban.
2.
Metode penyisihan (Allowance for doubtful Account) Nilai yang dapat direalisasi merupakan nilai piutang dikurangi dengan estimasi penyisihan piutang tak tertagih (allowance for doubtful accounts). Allowance for doubtful accounts dapat ditentukan dengan dua pendekatan, seperti berikut : a. Pendekatan laba rugi (income statement approach) Estimasi penyisihan piutang tak tertagih dihitung dengan cara mengalikan persentase tertentu dengan penjualan kredit tahun berjalan. b. Pendekatan neraca (balance sheet approach) Estimasi penyisihan piutang tak tertagih dihitung berdasarkan saldo piutang berdasarkan analisis umur piutang (aging schedule analysis). Kesimpulannya piutang usaha adalah tagihan yang diberikan oleh
perusahaan kepada pelanggan atas penjualan barang atau jasa
2.3.4 Penerimaan Kas Menurut Hall (2008:p173), menyebutkan ada 5 prosedur yang terlibat dalam sistem penerimaan kas, yang meliputi : 1.
Remittance entry Pada tahap ini, kasir akan mengumpulkan semua cek dan
mencocokan denganremittance advice yang diterima, kemudian menjumlahkan semua cek yang diterima. Kemudian remittance list, yang berisi daftar remittance advice secara keseluruhan dibuat. 2.
Depositing receipts Salah satu salinan dari remittance list dikirimkan ke kasir yang
akan membandingkan dan merekonsiliasi. Kemudian, kasir ini akan
15
membuat deposit slip dan cash receipt transaction listing (jurnal). Setelah itu, barulah semua cek disetorkan ke bank. 3.
Update Accounts Receivable Remittance advice digunakan untuk mengirim ke rekening
nasabah dalam buku besar pembantu piutang. Secara berkala, perubahan saldo rekening dirangkum dan diteruskan kefungsi buku besar. 4.
Update General Ledger Setelah menerima voucher jurnal dan ringkasa akun, fungsi
buku besar umum dituliskan ke rekening kas dan rekening kendali piutang dan flie voucher jurnal. 5.
Reconcile Cash Receipts and Deposits Secara berkala (mingguan atau bulanan), seorang pegawai dari
kantor pengawas (atau karyawan tidak terlibat dengan prosedur penerimaan
kas)
menyatukan
penerimaan
kas
dengan
membandingkan dokumen-dokumen berikut: -
Salinan prelist yang terkait.
-
Slip penyetoran yang diterima dari bank.
-
Jurnal voucher yang terkait.
2.3.5 Jurnal Menurut Kieso, Weygandt dan Kimmel (2010:55), jurnal disebut sebagai buku entri asli. untuk setiap transaksi jurnal menunjukan efek debet dan kredit pada akun tertentu. Dengan kata lain, jurnal merupakan catatan yang timbul sebagai efek dari transaksi yang terjadi dimana terdapat debit dan kredit untuk mencatatnya dengan akun spesifik. Jurnal-jurnal yang berhubungan dengna transaksi penjualan,piutang usaha dan peneriman kas adalah sebagai berikut : a. Jurnal penjualan tunai Dr. Kas
xxxxx
Cr. Penjualan
xxxxx
b. Jurnal penjualan kredit Dr. Piutang usaha Cr. Penjualan
xxxxx xxxxxx
16
c. Jurnal penerimaan kas Dr. Kas
xxxxxx
Cr. Piutang usaha
2.4
xxxxxx
Analisis dan Perancangan Berorientasi Obyek (OOAD) Analisis dan perancangan sistem berorientasi obyek merupakan metode perancangan sistem yang umum digunakan dalam mengembangkan sistem informasi. Satzinger, Jackson, dan Burd (2010: p60) object oriented analysis mendefinisikan
semua tipe obyek yang melakukan pekerjaan di dalam
sistem dan menunjukkan apa saja interaksi pengguna yang dibutuhkan untuk menyelesaikan tugas-tugas tersebut. Object oriented design mendefinisikan semua tipe obyek yang dibutuhkan untuk berkomunikasi dengan orang-orang dan alat-alat didalam system serta menunjukkan bagaimana obyek-obyek tersebut berinteraksi untuk menyelesaikan tugas dan menyempurnakan definisi dari masing-masing obyek agar dapat diimplementasikan dengan bahasa atau lingkungan tertentu. 2.4.1 Konsep Pengembangan Sistem Dalam suatu pengembangan sistem diperlukan panduan dalam mengembangkan sistem dengan memerlukan metode-metode tertentu, dimana metode pengembangan sistem tersebut menurut Satzinger, Jackson, dan Burd (2010: p49) merupakan suatu acuan yang dapat digunakan untuk menyelesaikan setiap aktivitas dalam pengembangan sistem, di antaranya termasuk models, tools, dan teknik-teknik tertentu lainnya. Definisi Models dalam hal ini adalah perumpamaan dari suatu aspek yang ada di dalam dunia nyata, sedangkan tools merupakan perangkat lunak pendukung dalam pembuatan model atau komponen lain yang dibutuhkan dalam suatu proyek. 2.4.1.1 Unified Modeling Language (UML) Satzinger,Jackson, mendefinisikan
Unified
dan
Burd
Modeling
(2005:
Language
p48) sebagai
seperangkat model konstruksi dan notasi yang dibentuk khusus
17
untuk pengembangan berorientasi obyek. Model yang dicakup dalam metode pengembangan sistem adalah perumpamaan input, output, proses, data, obyek, interaksi antar obyek, lokasi, jaringan, dan peralatan Adapun model komponen sistem yang menggunakan Unified Modeling Language terdiri dari tujuh diagram, yaitu: 1. Use Case diagram 2. Class diagram 3. Activity diagram 4. Sequence diagram 5. Communication diagram 6. Package diagram 7. Deployment diagram
2.4.1.2 Activity Diagram Menurut Satzinger, Jackson, dan Burd (2010: p141), activity diagram merupakan diagram alur kerja sederhana yang menggambarkan aktivitas dari user (atau sistem) yang berbeda-beda, pihak yang melakukan tiap aktivitas, dan aliran yang berurutan dari aktivitas-aktivitas tersebut. Adapun beberapa simbol yang digunakan dalam mendesain activity diagram, yaitu: 1. Swimlane Merupakan suatu bentuk persegi yang merepresentasikan aktivitas-aktivitas yang diselesaikan setiap agen. 2. Synchronization bar Merupakan notasi yang berfungsi memisahkan (split) atau menyatukan (join) urutan jalur aktivitas . 3. Starting activity (Pseudo) Merupakan notasi yang menunjukkan dimulainya suatu aktivitas. 4. Transition arrow
18
Merupakan
notasi
berupa
anak
panah
yang
mendeskripsikan arah perpindahan dari suatu aktivitas. 5. Activity Merupakan notasi yang mendeskripsikan aktivitasaktivitas. 6. Ending Activity (Pseudo) Merupakan notasi yang menunjukkan diakhirinya suatu aktivitas. 7. Decision Activity Merupakan notasi yang mendeskripsikan kondisi dari suatu aktivitas.
Gambar 2.1 : Activity Diagram Symbols Sumber: Satzinger, Jackson, dan Burd (20010: p142)
19
Gambar 2.2 : Activity Diagram Sumber: Satzinger, Jackson, dan Burd (2010: p143)
2.4.1.3 Event Table Event menurut Satzinger, Jackson, dan Burd (2010: p162) adalah sesuatu yang terjadi pada waktu dan tempat tertentu yang dapat digambarkan dan berharga untuk diingat. Event terbagi dalam 3 tipe, yaitu: 1. External event Event yang terjadi diluar sistem, biasanya dimulai oleh external agent. External agent adalah orang atau unit organisasi yang menyediakan atau menerima data dari sistem, tetapi belum tentu mereka adalah pengguna sistem. Contoh dari external event adalah “pelanggan melakukan pemesanan”. Pelanggan menggambarkan external agent, dan melakukan pemesanan adalah kegiatan yang mempengaruhi sistem.
20
2. Temporal event Event yang terjadi akibat dari tercapainya suatu titik waktu tertentu. Sistem akan menghasilkan output yang dibutuhkan tanpa harus diperintah. Dengan kata lain, external agent tidak membuat permintaan, tetapi sistem harus
menghasilkan
informasi
atau
output
yang
dibutuhkan ketika informasi tersebut dibutuhkan. Contoh dari temporal event adalah sistem penjualan yang menghasilkan laporan penjualan bulanan, dengan event berupa “saat untuk menghasilkan laporan penjualan.” 3. State event Event yang terjadi ketika sesuatu terjadi di dalam sistem sehingga memicu adanya kebutuhan untuk pemrosesan. Sebagai contoh, jika stok persediaan berada dibawah reorder point, maka state event yang dihasilkan dapat berupa “telah mencapai reorder point.”' Dalam pengembangan sistem, event-event yang ada di dalam sistem perlu diketahui dalam rangka merespon permintaan pengguna. Menurut Satzinger, Jackson, dan Burd (2010: p168), event table merupakan katalog dari use case yang mendaftar event-event ke dalam baris-baris dan informasi mengenai setiap event ke dalam kolom-kolom. Informasi yang ditampilkan dalam event table terdiri dari: 1. Event: peristiwa yang menyebabkan sistem melakukan sesuatu. 2. Trigger: sinyal yang memberitahu sistem bahwa peristiwa telah terjadi karena adanya data yang harus diproses atau karena suatu titik waktu tertentu. 3. Source: pihak external agent memberikan data ke dalam sistem. 4. Use Case: apa yang dilakukan sistem ketika peristiwa terjadi. 5. Response: output yang dihasilkan sistem.
21
6. Destination: external agent menerima data dari sistem.
Gambar 2.3: Event Table Sumber: Satzinger, Jackson, dan Burd (2010: p169) 2.4.1.4 Use Case Diagram Use case menurut Satzinger, Jackson, dan Burd (2010: p160) adalah aktivitas yang dilakukan oleh sistem berupa respon terhadap permintaan pengguna. Use case merepresentasikan pendekatan visual yang dapat digunakan dalam proses pemodelan dalam pengembangan sistem.
Gambar 2.4: Use Case Notation Sumber: Satzinger, Jackson, dan Burd (2010: p243)
22
Gambar 2.5: Use Case Diagram Sumber: Satzinger, Jackson, dan Burd (2010: p244) Penggambaran use case diagram menggunakan beberapa simbol atau lambang untuk melambangkan setiap pengguna dan hal-hal yang dilakukan sistem untuk merespon permintaan pengguna atas sistem. 2.4.1.5 Use Case Description Satzinger,
Jackson,
dan
Burd
(2010:p171)
menjelaskan Use Case Description sebagai penjelasan secara terperinci mengenai proses dari suatu use case. Perbedaan Use Case Description terbagi menjadi 3 bagian, yaitu: 1. Brief Description Penggunaan brief description diperuntukkan bagi use case
yang
sangat
sederhana
dikembangkan berskala kecil.
dan
sistem
yang
23
Gambar 2.6: Brief Description Use Case Sumber: Satzinger, Jackson, dan Burd (2010: p172) 2. Intermediate Description Merupakan pengembangan dari brief description untuk menggambarkan aliran aktivitas internal dari sebuah use case.
Penggunaan
eksepsi
atau
exception
dapat
didokumentansi bila dibutuhkan.
Gambar 2.7: Intermediate Description Use Case Sumber: Satzinger, Jackson, dan Burd (2010: p172) 3. Fully Developed Description Merupakan metode formal yang dapat digunakan dalam mendokumentasikan suatu use case.
24
Gambar 2.8: Fully Developed Description Use Case Sumber: Satzinger, Jackson, dan Burd (2010: p174)
2.4.1.6 Domain Model Class Diagram Domain model class diagram menurut Satzinger, Jackson, dan Burd (2010: p187) adalah sebuah diagram UML yang merepresentasikan semua pekerjaan user, kelaskelas problem domain, atribut, serta hubungan antar kelas. Dalam suatu class diagram, sebuah class digambarkan berbentuk kotak. Kotak tersebut terdiri dari dua bagian, yaitu pada bagian atas diberi nama kelas, pada bagian tengah diberi atribut-atribut dari kelas, dan pada bagian bawah
25
diberi
method.
Hubungan
atau
asosiasi
antar
class
digambarkan dengan garis penghubung antar class.
Gambar 2.9: UML Domain Class Symbol with names and attributes Sumber: Satzinger, Jackson, dan Burd (2010: p187)
Gambar 2.10: Domain Model Class Diagram Sumber: Satzinger, Jackson, dan Burd (2010: p188) Hubungan antar class yang digambarkan dengan garis penghubung yang disebut multiplicity of association, yang dapat dibedakan menjadi enam jenis dalam gambar sebagai berikut:
26
Gambar 2.11: Multiplicity of Association Sumber: Satzinger, Jackson, dan Burd (2010: p188) Dalam class diagram, Satzinger, Jackson, dan Burd (2010: p189) menjelaskan apabila terdapat karakteristik class yang sama digunakan hierarki yang berguna untuk menyusun class dimulai dari karakteristik umum sampai dengan khusus. Class yang memiliki karakteristik umum dikenal sebagai superclass, sedangkan class yang memiliki karakteristik khusus
dikenal
sebagai
subclass.
Adapun
penurunan
karakteristik atau inheritance dapat diterapkan apabila karakteristik suatu superclass dimiliki oleh suatu subclass. Ada dua hierarki dalam notasi class diagram, yaitu: 1. Generalization/specialization notation Generalization adalah pengelompokan hal-hal dengan jenis yang sama, contohnya ada banyak jenis kendaraan seperti mobil, motor, sepeda, pesawat, dan sebagainya. Sedangkan specialization adalah pengkategorian jenisjenis hal yang berbeda, sebagai contoh jenis khusus dari mobil adalah mobil sport, sedan, jeep, dan sebagainya. Generalization/specialization hierarchy digunakan untuk mengurutkan hal-hal umum menjadi khusus.
27
Gambar 2.12: Generalization/Specialization Hierarchy Sumber: Satzinger, Jackson, dan Burd (2010: p190) 2. Whole-part hierarchy notation Whole-part
hierarchies
menggambarkan
hubungan
keterkaitan antara sebuah obyek dengan komponennya. Ada dua jenis whole-part hierarchies, yaitu: a. Aggregation Aggregation
digunakan
untuk
menggambarkan
sebuah hubungan antara agregat (keseluruhan) dan komponennya (bagian-bagian) dimana bagian-bagian tersebut dapat berdiri sendiri secara terpisah.
28
Gambar 2.13: Whole-part Hierarchy (Aggregation) Sumber: Satzinger, Jackson, dan Burd (2010: p191) b. Composition Composition
digunakan
untuk
menggambarkan
hubungan keterikatan yang lebih kuat, dimana tiaptiap bagian tidak dapat berdiri sendiri secara terpisah. 2.4.1.7 System Sequence Diagram System
Sequence
diagram
menurut
Satzinger,
Jackson, dan Burd (2010: p242) adalah suatu diagram yang menggambarkan interaksi antara sistem dengan dunia luar yang direpresentsikan oleh actor. Sistem itu sendiri diperlakukan sebagai object tunggal yang dinamakan dengan :System. System sequence diagram digunakan untuk mendokumentasikan masukan dan keluaran sistem untuk use case tunggal atau scenario.
29
Penggunaan notasi dalam sequence diagram terdiri dari: 1. Lifeline Merupakan
garis
vertical
yang
dibentuk
untuk
menunjukkan waktu hidup dari sebuah obyek. 2. Object Merupakan simbol yang merepresentasikan pengguna sistem atau sistem yang telah terotomatisasi. 3. Input message Merupakan garis horizontal yang menunjukkan pesan masuk dari pengguna. 4. Output message Merupakan
garis
putus-putus
horizontal
yang
menunjukkan hasil dari pesan yang dimasukkan oleh pengguna.
Gambar 2.14: System Sequence Diagram Sumber: Satzinger, Jackson, dan Burd (2010: p253)
30
Gambar 2.15: System Sequence Diagram for Repeating message Sumber: Satzinger, Jackson, dan Burd (2010:p 254)
2.4.1.8 State Machine Diagram State Machine Diagram merupakan dokumentasi atas state dan transition. State menurut Satzinger, Jackson, dan Burd (2010, p260) merupakan sebuah kondisi dalam masa aktif sebuah objek ketika objek tersebut memenuhi sebuah kriteria, melakukan sebuah aksi atau menunggu sebuah event. Transition menurut Satzinger, Jackson, dan Burd (2010, p260) merupakan perubahan sebuah state objek ke state lain.
31
Notasi dalam State Machine Diagram: 1. Pseudostate Merupakan awal dari State Machine Diagram berbentuk titik hitam 2. Origin State Merupakan state awal dari sebuah objek 3.
Destination State Merupakan state yang dituju dari sebuah objek
4. Message Event Merupakan trigger dari sebuah transition
Gambar 2.16: Simple State Machine Diagram untuk printer Sumber: Satzinger, Jackson, dan Burd (2010:p 261)
2.4.1.9 First-Cut Design Class Diagram Menurut Satzinger, Jackson, dan Burd (2010 : p413), First-cut class diagram adalah perkembangan dari domain class
diagram
melalui
dua
tahap,
yaitu
dengan
mendeskripsikan atribut dengan tipe dan nilai awal dan menambahkan navigation visibility arrows, yang merupakan arah untuk menunjukkan kemampuan suatu obyek yang dapat berinteraksi dengan obyek lain.
32
Gambar 2.17: First-cut class diagram Sumber: Satzinger, Jackson, dan Burd (2010: p413) Dalam proses mendesain, penggunaan navigation visibility terbagi menjadi dua bagian, yaitu: 1. Attribute navigation visibility Terbentuk
ketika
class
mereferensikan obyek lain.
mempunyai
atribut
yang
33
Gambar 2.18 : Attribute Navigation Visibility Sumber: Satzinger, Jackson, dan Burd (2010: p414) 2.
Parameter navigation visibility Terbentuk ketika class sesuai dengan parameter yang mereferensikan obyek lain. Parameter tersebut diteruskan melalui method call.
Beberapa petunjuk mengenai penetapan navigation visibility adalah: 1. Hubungan One-to-many yang menandakan adanya superior/subordinate relationship. Nagivasi berarah dari superior ke subordinate. Contohnya: dari
Order ke
OrderItem. 2. Mandatory relationships, dimana obyek di suatu class tidak dapat berdiri tanpa obyek dari class lain. Navigasi berarah dari independen class ke dependen class. Contohnya: dari Inventory ke Inventory Requisition 3. Saat suatu obyek membutuhkan informasi dari obyek lain, maka panah navigasi mengarah kepada obyek yang membutuhkan informasi. 4. Navigation arrows mungkin mengarah kepada dua arah.
2.4.1.10
Completed Three-Layer Design Sequence Diagram Menurut Satzinger, Jackson, dan Burd (2010: p451), completed three-layer design sequence diagram merupakan pengembangan dari first-cut sequence diagram dengan menambahkan data access layer.
34
Gambar 2.19: Completed Three-Layer Design Sequence Diagram Sumber: Satzinger, Jackson, dan Burd (2010: p451)
2.4.1.11
Updated Design Class Diagram Pengembangan
design
class
diagram
menurut
Satzinger, Jackson, dan Burd (2010: p457) dapat dilakukan pada setiap layer, dimana dalam view dan data access layer dilakukan penentuan beberapa class baru. Pada domain layer, class baru yang ditambahkan berfungsi sebagai use case controller. Penambahan method untuk setiap class dalam updated class diagram dapat dilakukan, dimana method tersebut terdiri dari 3 jenis, yaitu:
35
1. Constructor methods Merupakan method yang membentuk instance dari suatu obyek. 2. Data get and set methods Merupakan method yang mengambil dan mengubah nilai atribut. 3. Use case specific methods Merupakan method yang mewakili use case yang ada.
Gambar 2.20: Updated Design Class Diagram Sumber: Satzinger, Jackson, dan Burd (2010: p458)
36
2.4.1.12
Package Diagram Package diagram menurut Satzinger, Jackson, dan Burd
(2010:
p459)
merupakan
diagram
yang
mengasosiasikan class-class dari suatu kelompok yang terkait. Di dalam diagram tersebut terbagi menjadi tiga layer, yaitu view layer, domain layer, dan data access layer. Package
yang
digunakan
dalam
diagram
ini
digambarkan dengan persegi panjang, sedangkan hubungan antar package digambarkan dengan anak panah bergaris putus-putus (dashed arrow), yang mewakili dependency relationship. Buntut panah terhubung dengan dependent package, sedangkan kepala panah terhubung dengan independent package. Dependency relationship sendiri menggambarkan suatu hubungan antar elemen dalam package diagram, dimana jika terjadi perubahan pada suatu elemen (elemen yang independent), maka elemen lainnya (elemen yang dependent) juga dapat berubah.
37
Gambar 2.21: Package Diagram Sumber: Satzinger, Jackson, dan Burd (2010: p459)
2.4.1.13
User Interface User interface Menurut Satzinger, Jackson, dan Burd (2010: p531) pada dasarnya memiliki input dan output serta melibatkan pengguna sistem secara langsung. Aspek-aspek yang terkait dengan user interface meliputi semua hal yang digunakan pengguna saat menggunakan sistem tersebut, baik dari segi fisik, persepsi, maupun konseptual. Berikut adalah penjelasan aspek-aspek tersebut:
38
1. Aspek fisik Meliputi perangkat-perangkat yang dapat disentuh oleh pengguna seperti keyboard, mouse, touch screen, dan lain sebagainya. 2. Aspek persepsi Meliputi hal-hal yang dapat dicakup oleh indera manusia seperti penglihatan (garis, angka, kata-kata, bentuk), pendengaran
(suara
notifikasi
dari
sistem),
atau
penyentuhan oleh pengguna (menggunakan mouse untuk mengakses tombol-tombol di layar). 3. Aspek konseptual Meliputi hal-hal yang diketahui pengguna mengenai penggunaan sistem, operasi yang dapat dilaksanakan, serta prosedur yang diikuti agar operasi yang dilakukan berjalan dengan baik. Beberapa
organisasi
pengembangan
sistem
menggunakan interface design standards, yaitu aturan dan prinsip-prinsip
umum
yang
harus
diikuti
dalam
mengembangkan sistem. Standar perancangan membantu untuk memastikan bahwa semua user interface berjalan dengan baik dan semua sistem yang dikembangkan oleh organisasi memiliki rasa dan tampilan yang sama. Dalam
jurnalnya
yang
berjudul
The
SCUFF
Principles for Developing User Interface for Ambient Computer System Rich Picking mengemukakan Delapan prinsip yang dapat diterapkan pada interactive system yang disebut dengan “Eight Golden Rules” menurut Ben Shneiderman yaitu: 1. Usahakan untuk konsisten (strive for consistency). Sistem harus konsisten dalam menentukan nama dan letak menu items, ukuran dan bentuk icon, urutan tugas, serta bagaimana informasi diatur dalam suatu form.
39
2. Memungkinkan pengguna untuk menggunakan shortcut (enable frequent users to use shortcuts). Shortcut digunakan untuk mengurangi jumlah interaksi untuk tugas yang dijalankan, sehingga pengguna dapat menghemat
waktu.
Selain
itu,
perancang
harus
menyediakan fasilitas macro bagi pengguna untuk membuat shortcut mereka sendiri. 3. Memberikan umpan
balik
yang informatif (offer
informative feedback). Umpan balik yang berupa konfirmasi dari sistem sangat penting bagi pengguna sistem, terutama bagi mereka yang bekerja dengan menggunakan sistem sepanjang hari. Contohnya, ketika pengguna ingin menghapus suatu data makan akan muncul dialog box untuk memastikan apakah pengguna sudah yakin data tersebut benar-benar ingin dihapus atau tidak. Akan tetapi, sebaiknya sistem juga tidak memperlambat pekerjaan pengguna sistem dengan menampilkan terlalu banyak dialog box, dimana pengguna harus merespon tiap dialog box. 4. Merancang dialog untuk
menghasilkan
penutupan
(design dialogs to yield closure). Untuk setiap dialog dengan sistem harus diorganisasikan dengan urutan yang jelas, yaitu dari awal, tengah, dan akhir agar pengguna dapat mempersiapkan dirinya untuk fokus ke tindakan berikutnya. 5. Memberikan penanganan kesalahan yang sederhana (offer simple error handling). Saat sistem menemukan sebuah kesalahan, pesan kesalahan harus menegaskan secara spesifik apa yang salah
dan
menjelaskan
bagaimana
cara
untuk
menanganinya. Pesan kesalahan juga tidak boleh menghakimi pengguna. Selain itu sistem harus bisa
40
mengatasi kesalahan dengan mudah, contohnya jika pengguna memasukkan ID pelanggan yang salah, maka sistem akan memberitahukan kepada pengguna dan meletakkan kursor pada textbox ID pelanggan yang berisi angka yang telah dimasukkan sebelumnya dan siap untuk diubah. 6. Memungkinkan untuk kembali ke tindakan sebelumnya dengan mudah (permit easy reversal of actions). Salah
satu
cara
untuk
menghindari
kesalahan,
sebagaimana user menyadari telah melakukan kesalahan, user
dapat
membatalkan
tindakan
yang
sedang
dijalankan dan kembali ke tindakan sebelumya. 7. Mendukung tempat pengendalian internal (support internal locus of control). Sistem harus membuat user merasa bahwa mereka yang memutuskan apa yang harus dilakukan dan bukan sistem yang mengontrol mereka. 8. Mengurangi muatan memori jangka pendek (reducing short-term memory load). Rancangan yang terlalu rumit dan terlalu banyaknya form dapat menjadi beban bagi ingatan pengguna.
2.4.1.14
Deployment Environment and Application Architecture Deployment environment mempunyai komponen hardware, software, dan networking yang membuat suatu sistem dapat berjalan. Satzinger, Jackson, dan Burd (2010: p291) membagi deployment environment tersebut terbagi menjadi dua bagian, yaitu: 1. Single Computer Architecture Merupakan sistem komputer yang menjalankan software secara tunggal. Adapun sistem informai yang dijalankan
41
pada
arsitektur
ini
mudah
dirancang,
dibangun,
dioperasikan dan dikelola.
Gambar 2.22: Single Computer Architecture Sumber: Satzinger, Jackson, dan Burd (2010:p 341) 2. Multitier Computer Architecture Merupakan tipe arsitektur yang mengeksekusi suatu proses dalam beberapa komputer. Arsitektur ini terbagi menjadi dua bagian, yaitu : a. Clustered Architecture Merupakan arsitektur yang menggunakan beberapa computer dengan model dan produksi yang sama. b. Multicomputer Architecture Merupakan arsitektur yang menggunakan beberapa computer dengan spesifikasi yang berbeda-beda. Deployment architecture terbagi menjadi dua bagian menurut Satzinger, Jackson, dan Burd (2010: p341), yaitu: 1. Centralized Architecture Merupakan arsitektur yang mendeskripsikan penyebaran sistem komputer pada suatu lokasi. Arsitektur ini umumnya digunakan untuk proses aplikasi berskala besar, seperti real-time application. 2. Distributed Architecture
42
Merupakan arsitektur yang mendeskripsikan penyebaran sistem
komputer
pada
beberapa
lokasi
dengan
menggunakan jaringan komputer.
Satzinger, Jackson, dan Burd (2010: p342) membagi software architecture ke dalam dua bagian, yaitu: 1. Client/server architecture Arsitektur ini membagi software ke dalam dua bagian, yaitu client dan server. Server berfungsi sebagai alat untuk mengolah sumber informasi, sedangkan client berfungsi sebagai alat untuk berkomunikasi dengan server untuk memenuhi permintaan sumber daya. 2. Three-layer client/server architecture Arsitektur ini merupakan pengembangan dari arsitektur client/server yang terbagi menjadi 3 lapisan, yaitu: a. Data layer Merupakan lapisan untuk mengatur penyimpanan data pada suatu database. b. Business logic layer Merupakan
lapisan
yang
mengimplementasikan
aturan dan prosedur dari suatu proses bisnis. c. View layer Merupakan lapisan yang menerima input dan menampilkan output sebagai hasil dari proses yang berjalan.
Gambar 2.23: Three-layer architecture Sumber: Satzinger, Jackson, dan Burd (2010: p345)
43
2.5
Kerangka Berpikir Setelah melakukan analisis yang sedang berjalan, namun ditemukan masalah.
Untuk mengatasi masalah tersebut maka diperlukan solusi penyelesaian dengan cara membuat perancangan sistem baru dan kerangka konsep pemecahan masalah yang telah diidentifikasi atau dirumuskan. Dalam menentukan langkah-langkah tersebut, maka dibuat kerangka berpikir dalam bentuk bagan sebagai berikut :
44
KERANGKA BERPIKIR FASE PERANCANGAN Penentuan Awal: 1. Latar Belakang 2. Rumusan Masalah 3. Ruang Lingkup 4. Tujuan dan Manfaat Penelitian 5. Metodologi Penelitian 6. Sistematika Penulisan
Metodologi Penelitian: 1. Studi Lapangan, terdiri dari: - Wawancara - Observasi - Prosedur Analitis 2. Studi Kepustakaan 3. Metode Analisis dan Perancangan
FASE ANALISIS YANG BERJALAN Teori yang digunakan: Data-data yang dibutuhkan dalam 1. Sistem Informasi Akuntansi Siklus melakukan analisis: Pendapatan 1. Profil perushaan 2. Object-Oriented Analysis and 2. Struktur organisasi beserta tugas Design atau OOAD dan wewenang 3. Prosedur sistem yang sedang berjalan
Metode Analisa dengan menggunakan Activity Diagram
Identifikasi masalah pada sistem yang berjalan Rekomendasi solusi terhadap permasalahan yang ditemukan
FASE DESAIN YANG DIUSULKAN Analisis dan identifikasi kebutuhan untuk sistem yang baru Peracangan dengan OOAD berdasarkan dengan pendekatan Modelling and Requirements Discipline dan Design discipline: 1. Inception : Package Diagram - Tahap awal 2. Elaboration : 3. Construction : - Activity Diagram Data Structure - Use Case Diagram User Interface - Use Case Description - Domain Class Diagram - First-Cut Class Diagram - Multilayer Sequence Diagram - Updated Class Diagram Pembuatan sistem dengan bahasa pemrograman dan Database SQL Server
SIMPULAN DAN SARAN
Gambar 2.24 : Kerangka Berpikir