LANDASAN TEORI
2.1. Sistem Informasi Akuntansi
2.1.1. Pengertian Sistem Informasi Akuntasi
Menurut Joseph W.Wilkinson, Michael J.Cerullo, Vasant Raval, dan Bernard Wong-On-Wing (2000,p5-6), “Information is intelligence that is meaningful and useful to persons for whom it is intended.” dan “System is a unified group of interacting part that function together to achieve its purposes.” Sedangkan menurut James A.O’Brien (2001,p7), “Information System can be any organized combination of people, hardware, software, communication network, and data resource that collects, transforms, and disseminates information in an organization.” Pengertian ini menjelaskan bahwa Sistem Informasi akan mengintegrasikan seluruh manusia, hardware, software, jaringan komunikasi, dan sumber data yang ada pada sebuah organisasi untuk diproses sedemikian rupa. Proses tersebut akan menghasilkan suatu informasi yang dibutuhkan oleh organisasi tersebut dalam menjalankan proses bisnisnya. Informasi tersebut juga diperlukan dalam usaha untuk mencapai tujuan organisasi.
Menurut Charles T.Horngren, Walter T.Harrison Jr., dan Linda Smith Bamber (1999,p6), “Accounting is the information system that measures business activities, processes, that information into report, and communicates the result to decision makers.” Pengertian ini menjelaskan bahwa akuntansi merupakan suatu sistem informasi yang digunakan untuk melakukan penilaian atas suatu proses bisnis,
menyampaikan dalam sebuah laporan untuk dapat dikomunikasikan kepada pihak- pihak yang berkepentingan dalam melakukan pengambilan keputusan atas suatu perusahaan. Kompetensi dari akuntansi adalah untuk melakukan kontrol atas aktivitas yang dilakukan perusahaan.
Dari pengertian-pengertian diatas maka dapat disimpulkan pengertian dari Sistem Informasi Akuntansi. Menurut Wilkinson et al. (2000,p7)
“Accounting Information System is a unified structure within an entity, such as a business firm, that employs physical resources and other components to transform economic data into accounting information, with the purpose of satisfying the information needs of a variety of users.”
Sistem Informasi Akutansi akan mengintegrasikan seluruh sumber daya yang ada pada organisasi/perusahaan dan mengubah seluruh data transaksi yang terjadi menjadi suatu informasi yang diperlukan baik oleh pihak internal maupun pihak eksternal pada sebuah organisasi/perusahaan.
Sistem Informasi Akuntansi memiliki lima komponen utama (Romney, Marshall B. dan Paul John Steinbart, 2006), yaitu:
a. Manusia yang menjalankan sistem dan berkerja dalam fungsi tertentu.
b. Prosedur yang terdiri dari pengumpulan, pemrosesan, dan penyimpanan data yang berhubungan dengan aktivitas yang dilakukan perusahaan, baik yang dilakukan secara manual maupun otomatis.
c. Data mengenai proses bisnis perusahaan
d. Software yang digunakan untuk memproses data perusahaan e. Infrastruktur dari Teknologi Informasi
2.1.2. Tujuan dan Kegunaan Sistem Informasi Akuntansi
Sistem Informasi Akuntansi memiliki tujuan (Wilkinson et al., 2000) sebagai berikut:
1. Sebagai pendukung kegiatan operasional sehari-hari perusahaan.
2. Sebagai pendukung pihak manajemen dalam membuat keputusan.
3. Sebagai suatu acuan oleh pihak eksternal untuk mengetahui keadaan perusahaan.
Sistem Informasi Akuntansi memiliki lima kegunaan (Rama, Dasaratha V dan Frederick L.Jones, 2006), yaitu:
a. Membuat laporan mengenai informasi yang dibutuhkan oleh pihak eksternal perusahaan.
b. Membantu manajer dalam menangani aktivitas operasional yang rutin dilakukan dalam suatu siklus operasi suatu perusahaan.
c. Mendukung dalam pengambilan keputusan pada semua tingkat manajemen dalam perusahaan, baik yang dilakukan secara rutin maupun ad hoc.
d. Membantu dalam membuat suatu perencanaan dan juga dalam melakukan kontrol atas setiap aktivitas yang dilakukan.
e. Melaksanakan pengendalian intern, dimana termasuk aturan-aturan, prosedur, dan sistem informasi yang digunakan untuk melindungi kekayaan perusahaan dan menjaga keakuratan data keuangan perusahaan.
Penerapan Sistem Informasi Akuntansi yang efektif memiliki peranan yang sangat penting bagi kesuksesan sebuah perusahaan di masa mendatang. Tanpa adanya monitor dari setiap peristiwa yang terjadi pada perusahaan, maka perusahaan tidak dapat menentukan seberapa baik kinerja yang telah dilakukan perusahaan.
2.1.3. Siklus Pemrosesan Transaksi pada Sistem
Proses bisnis pada perusahaan merupakan suatu rangkaian aktivitas yang dilakukan perusahaan dalam melakukan bisnisnya, mulai dari proses pembelian, produksi, hingga penjualan barang atau jasa. Siklus transaksi pada perusahaan dapat dibagi kedalam lima subsistem (Romney et al , 2006), yaitu:
a. Revenue Cycle (Siklus Pendapatan), yang terdiri dari peristiwa penjualan dan penerimaan kas.
b. Expenditure Cycle (Siklus Pengeluaran), yang terdiri dari peristiwa pembelian dan pengeluaran kas.
c. Human resource cycle (Siklus Sumber Daya Manusia), terdiri peristiwa yang berhubungan perekrutan dan pembayaran atas tenaga kerja.
d. Production cycle (Siklus Produksi), terdiri dari peristiwa yang berhubungan dalam pengubahan bahan mentah menjadi produk/jasa yang siap dipasarkan.
e. Financing cycle (Siklus Keuangan Perusahaan), terdiri dari peristiwa yang berhubungan dengan penerimaan modal dari investor dan kreditor.
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.
Get cash
General Ledger & Reporting System Give cash
Get finish goods Give
labor Give raw materials
Financing Cycle
Give cash
Get labor Human
Resouces Cycle
Give cash
Get goods Expenditure Cycle
Give goods
Get cash Revenue Cycle
Production Cycle
Funds Funds
Funds
Data Data
Data
Data
Data
Labor Raw
materials
Finished goods
Information for both internal and
external users
Gambar 2.1. Subsistem dalam Sistem Informasi Akuntansi.
Sumber: Romney (2006, p30)
2.2. Sistem Informasi Akuntansi: Siklus Pendapatan 2.2.1. Pengertian Penjualan dan Penerimaan Kas
Menurut Ikatan Akuntan Indonesia (2004,PSAK No.23):
“Penjualan barang meliputi barang yang diproduksi perusahaan untuk dijual dan barang yang dibeli untuk dijual kembali seperti barang dagang yang dibeli pengecer atau tanah properti lain yang dibeli untuk dijual kembali. Dan penjualan jasa biasanya menyangkut tugas yang secara kontraktual telah disepakati oleh perusahaan, jasa tersebut dapat diserahkan selam satu periode atau secara lebih dari satu periode.”
Dapat disimpulkan bahwa penjualan merupakan suatu proses dimana perusahaan melakukan suatu transaksi, baik dengan menyerahkan barang atau memberikan jasa kepada konsumen untuk mendatangkan pendapatan bagi perusahaan tersebut. Penjualan dapat terjadi baik secara tunai maupun kredit. Pada penjualan tunai, mewajibkan konsumen melakukan pembayaran atas barang atau jasa terlebih dahulu sebelum barang diserahkan kepada pembeli dan transaksi penjualan tunai kemudian dicatat oleh perusahaan. Sedangkan pada penjualan kredit, perusahaan mengirimkan barang atau menyerahkan jasa terlebih dahulu kepada konsumen dan untuk jangka waktu tertentu perusahaan memiliki piutang terhadap konsumen tersebut.
Sedangkan penerimaan kas merupakan suatu proses dimana perusahaan memperoleh kas yang didapat dari hasil penjualan atas barang atau jasa perusahaan.
Kas dapat diterima baik dari penjualan tunai maupun dari pembayaran piutang pelanggan dari hasil penjualan kredit. Penjualan dan penerimaan kas merupakan aktivitas yang saling terkait dalam suatu siklus pendapatan yang ada pada perusahaan.
2.2.2. Tujuan Sistem Informasi Akuntansi pada Siklus Pendapatan
Sistem Informasi Akuntansi untuk siklus pendapatan memiliki tujuan sebagai berikut (Wilkinson et al., 2000):
1. Mencatat pesanan penjualan secara tepat dan akurat.
2. Memeriksa apakah konsumen layak untuk diberikan kredit.
3. Mengirim barang atau memberikan pelayanan sesuai dengan waktu yang telah disepakati.
4. Melakukan penagihan atas barang atau jasa yang diberikan tepat waktu kepada konsumen.
5. Mencatat dan mengklasifikasikan kas yang diterima secara tepat dan akurat.
6. Melakukan posting atas penjualan dan penerimaan kas kepada akun konsumen yang sesuai dalam jurnal piutang usaha.
7. Menjaga barang sampai dilakukan pengiriman.
8. Menjaga kas sampai disimpan ke bank.
2.2.3. Dokumen - Dokumen yang Berhubungan dengan Siklus Pendapatan Dalam siklus pendapatan, dokumen-dokumen yang digunakan dalam sistem penjualan dan sistem penerimaan kas (Wilkinson et al., 2000) adalah sebagai berikut:
a. Customer order
Adalah permintaan pembelian dari konsumen atas produk yang dijual perusahaan.
b. Sales order
Adalah formulir yang disiapkan secara formal mengenai pesanan konsumen.
Biasanya terdiri dari beberapa rangkap.
c. Order Acknowledgment
Merupakan salinan dari sales order yang diberikan kepada konsumen sebagai bukti pemesanan barang.
d. Picking list
Merupakan salinan dari sales order yang diberikan kepada bagian gudang sebagai bukti pemesanan barang konsumen.
e. Packing slip
Salinan dari sales order atau picking list yang diletakkan pada produk yang terjual saat akan diserahkan.
f. Billing of lading
Dokumen yang diberikan kepada kurir untuk mengirim barang.
g. Shipping notice
Salinan dari sales order yang diberikan sebagai tanda bahwa barang telah dikirim.
h. Sales invoice
Dokumen yang mencatat jumlah yang harus dibayar pelanggan atas produk yang dibeli.
i. Remittance advice
Dokumen yang memperlihatkan jumlah yang diterima dari pelanggan.
j. Deposit slip
Dokumen mengenai jumlah kas yang tersimpan pada bank.
k. Back order
Dokumen yang disediakan saat persediaan yang ada di gudang tidak memenuhi permintaan barang.
l. Credit Memo
Dokumen yang mengijinkan konsumen mengembalikan barang yang telah dikirim karena mengalami kerusakan.
m. Credit application
Formulr mengenai permintaan kredit dari konsumen.
n. Salesperson call report
Formulir mengenai laporan kinerja karyawan dan konsumen yang memiliki prospek yang baik.
o. Deliquent notice
Surat peringatan tenggat waktu pembayaran kredit kepada konsumen.
p. Write-off notice
Dokumen yang disiapkan jika kredit yang diberikan kepada konsumen tidak dapat ditagih.
q. Cash register receipt
Formulir yang digunakan untuk melihat jumlah kas yang diterima.
2.2.4. Fungsi - Fungsi yang Terkait
Terdapat dua unit organisasi utama yang berhubungan dalam sebuah sistem penjualan (Wilkinson et al., 2000). Fungsi yang pertama adalah fungsi Pemasaran/Distribusi, yang bertujuan untuk menentukan dan melayani kebutuhan konsumen dan mengatur pendapatan yang diterima untuk menutupi harga pokok dan beban yang terjadi pada transaksi penjualan. Sedangkan yang kedua adalah fungsi Keuangan/Akuntansi, yang bertujuan untuk merencanakan dan mengontrol kas serta mengontrol akun-akun lainnya yang berhubungan dengan sistem.
2.2.5. Prosedur – Prosedur dalam Siklus Pendapatan
Dalam siklus pendapatan terdapat empat aktivitas utama (Romney et al., 2006), yaitu:
1. Prosedur Penerimaan Pesanan Penjualan
Siklus penjualan dimulai dengan penerimaan pesanan dari konsumen. Bagian penjualan melakukan pencatatan atas pesanan yang diterima. Proses pencatatan pesanan terdiri dari beberapa tahapan, yaitu:
Menerima pesanan dari konsumen.
Memeriksa dan menyetujui kredit yang diberikan kepada konsumen.
Memeriksa jumlah persediaan yang ada di gudang.
2. Prosedur Pengiriman Barang
Setelah barang tersedia, bagian gudang melakukan tahapannya sebagai berikut:
Mengepak barang sesuai pesanan dalam sales order.
Mengiriman barang ke alamat yang dituju.
3. Prosedur Penagihan
Setelah barang yang dipesan sampai ke alamat yang dituju, maka bagian akuntasi melakukan tahapan berikut:
Melakukan penagihan.
Mencatat piutang yang terjadi atas penjualan.
4. Prosedur Penerimaan Kas
Proses akhir dalam siklus penjualan adalah penerimaan kas atas penjualan.
Penerimaan kas dilakukan oleh bagian kasir, yang selanjutnya kas yang diterima akan disimpan ke bank.
2.2.6. Manajemen Data
Pengelolaan data perusahaan memiliki empat fungsi utama (Wilkinson et al., 2000), yaitu:
a. Membuat tempat dimana data disimpan.
b. Memelihara data selama proses bisnis dilakukan, seperti menambah data baru atau mengubah data yang telah ada.
c. Mengambil data yang telah disimpan.
d. Menghapus data.
Struktur dari model data dibedakan kedalam dua pendekatan, yaitu File orientation dan Data-base orientation, sebagaimana ditunjukkan pada gambar 2.2 berikut ini:
Gambar 2.2. Pengorganisasian Data Sumber: Wilkinson (2000, p105) DATA MODELS
Data set (Data Segment
or Tables) Data base
Record
Data Element Data Element Record File
File Orientation Data-base Orientation
2.2.7. Resiko dan Pengendalian Intern
Pengendalian intern merupakan suatu perencanaan yang dibuat mengenai metode bisnis yang akan dilakukan dalam usaha menjaga aktiva perusahaan, menyediakan informasi yang akurat dan terpercaya, meningkatkan efisiensi operasional, dan mendorong terlaksanakannya kebijakan manajemen perusahaan (Romney et al., 2006). Tujuan yang ingin dicapai dari pengendalian intern atas Sistem Informasi Akuntansi Penjualan adalah sebagai berikut:
1. Seluruh transaksi telah diotorisasi secara tepat.
2. Seluruh transaksi yang dicatat memang benar-benar terjadi.
3. Seluruh transaksi yang terjadi dan telah dilakukan otorisasi telah dicatat.
4. Seluruh transaksi dicatat secara tepat dan akurat.
5. Seluruh aktiva yang dimiliki perusahaan terjaga dari kehilangan dan pencurian.
6. Seluruh aktivitas bisnis dilakukan secara efektif dan efisien.
Pengendalian intern dapat dibagi menjadi empat kategori (Rama et al., 2006), yaitu:
a. Workflow control, yang digunakan untuk mengendalikan proses-proses yang terjadi dalam suatu siklus. Pengendalian ini berfokus pada tanggung jawab dari setiap proses yang dilakukan, urutan antar proses yang terjadi, dan aliran informasi antara setiap proses yang saling berhubungan.
b. Input control, yang digunakan untuk mengendalikan data yang masuk kedalam sistem perusahaan.
c. General control, sebagai pengendali agar workflow control dan input control dapat berjalan dengan efektif.
d. Performance review, merupakan aktivitas untuk menganalisa kinerja perusahaan.
Terdapat lima prosedur atas pengendalian intern (Gondodiyoto, Sanyoto dan Henny Hendarti, 2006), 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 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:
Diberikan nomor urut tercetak, agar dapat memudahkan dalam pelacakan dimasa depan.
Dokumen dibuat sederhana agar dapat mudah dimengerti.
Memuat data yang lengkap sesuai kebutuhan
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 pertimbangan- pertimbangan sistem pengendalian intern 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 dilakukan pihak lain.
2.2.8. Laporan yang Dihasilkan
Laporan operasional yang dihasilkan (Wilkinson et al., 2000) 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.3.Perusahaan Operator Telekomunikasi Selular 2.3.1. Pengertian Telekomunikasi Selular
Menurut Undang-Undang pertelekomunikasian, “Telekomunikasi adalah setiap pemancar, pengiriman, dan atau penerimaan dari setiap informasi dalam bentuk tanda-tanda, isyarat, tulisan, gambar, suara, dan bunyi melalui sistem kawat, optik, radio, atau sistem elektromanetik lainnya.” Sedangkan menurut Febrian, Jack
”Selular adalah pembagian daerah berdasarkan jangkauan sinyal dari stasiun pemancar ke pesawat penerima.” Dapat disimpulkan bahwa telekomunikasi selular adalah suatu sistem komunikasi jarak jauh yang memancarkan, mengirim, dan atau menerima setiap informasi dalam bentuk suara melalui sistem elektromagnetik, sehingga tidak diperlukan adanya kabel penghubung.
2.3.2. Perusahaan yang Bergerak sebagai Operator Telekomunikasi Selular Perusahaan operator telekomunikasi selular adalah perusahaan yang dalam operasinya melakukan kegiatan (1) Menjual dan mengaktifkan pesawat telepon selular baik langsung maupun tidak langsung dan (2) mengaktifkan pesawat telepon selular yang dibawa sendiri oleh calon pelanggan.
(http://www.pajak.go.id/peraturan/view_doc?docid=2829&searchterm=None) Beberapa perusahaan yang bergerak sebagai operator telekomunikasi selular:
Telkomsel, yang memiliki produk seperti Kartu Halo, Simpati, dan Kartu As.
Indosat, yang memiliki produk seperti Mentari, IM3, Matrix, dan Star One.
XL, yang memiliki produk seperti Bebas, Jempol, dan Xplor.
Mobile-8, yang memiliki produk seperti Fren.
Bakrie Telecom, yang memiliki produk seperti Esia.
2.4. Metode Analisa dan Perancangan Berorientasi Object
2.4.1. Pendekatan dalam Analisis dan Perancangan Terstruktur dan Berorientasi Object
Berbeda dengan dekomposisi tunggal, suatu analisis dan perancangan berorientasi object melihat suatu permasalahan yang kompleks sebagai suatu kumpulan object yang mempunyai arti dan saling bekerja sama satu sama lain untuk mencapai higher level behaviour. Dalam tahap analisis, ditekankan pada investigasi dari suatu permasalahan daripada mendefinisikan solusi dari permasalahan. Jadi, dalam analisis berorientasi object kegiatan ditekankan untuk menemukan dan menggambarkan object-object dalam sebuah problem domain. Sedangkan dalam tahap perancangan, ditekankan pada suatu logical solution dan bagaimana suatu sistem akan memenuhi kebutuhan yang ada. Jadi, dalam perancangan berorientasi object kegiatan ditekankan pada pendefinisian suatu logical software yang pada akhirnya akan diimplementasikan dalam sebuah bahasa pemrograman berorientasi object.
2.4.2. Konsep Object dan Class 2.4.2.1. Pengertian Object
Menurut Mathiassen,Lars dan Andreas Munk-Madsen (2000,p4),
“Object is an entity with identity, state, and behaviour.” Pengertian ini menjelaskan bahwa sesuatu dapat dikatakan sebagai object jika memiliki identitas, kondisi, dan tingkah laku yang jelas. Dalam suatu analisis, object adalah sebuah abstraksi dalam suatu fenomena yang terjadi dalam sistem.
Jadi, object merupakan salah satu bagian didalam suatu sistem. Seperti dalam sebuah sistem penjualan, salah satu yang dapat dijadikan object adalah konsumen. Setiap konsumen memiliki identitas diri, memiliki kondisi, dan tingkah laku yang jelas dan berbeda satu dengan lainnya.
2.4.2.2. Pengertian Class
Menurut Mathiassen et al. (2000,p4), “Class is a description of a collection of objects sharing structure, behavioral pattern, and attributes.”
Pengertian ini menjelaskan bahwa setiap object yang memiliki struktur, tingkah laku, dan atribut yang sama maka dapat dikumpulkan kedalam suatu class. Class yang ada dalam suatu sistem digunakan untuk memberikan kemudahan dalam memahami suatu object.
2.4.3. Pre-Analysis
2.4.3.1. Pengertian Rich Picture
Menurut Mathiassen et al. (2000,p26), “Rich picture is an informal drawing that presents the illustrator’s understanding of a situation.” Dengan dibuatnya sebuah rich picture, dapat dilihat bagaimana keadaan sebuah sistem dari sudut pandang user. Rich picture berfokus pada aspek-aspek penting dalam sebuah situasi dimana ditentukan oleh seorang illustrator. Disamping itu, rich picture dapat memberikan gambaran umum mengenai suatu situasi yang akan memudahkan dalam membentuk interpretasi alternatif.
Gambar 2.3. Contoh Simbol dalam Rich Picture.
2.4.3.2. Pengertian System Definition
Menurut Mathiassen et al. (2000,p24), “System definition is a concise description of a computerized system expressed in natural language.”
Pengertian ini menjelaskan bahwa system definition merupakan gambaran menyeluruh mengenai sebuah sistem komputer yang dinyatakan kedalam sebuah bahasa umum. Aktivitas yang dilakukan dalam system definition pertama kali adalah menggambarkan situasi dari sistem yang ada, yaitu mengenai proses, struktur, dan masalah yang berhubungan dengan pengembangan sistem dalam perusahaan. Setelah itu, ciptakan ide-ide baru untuk pengembangan. Dan, gambarkan kemungkinan-kemungkinan yang terjadi dari rencana tersebut untuk dapat memilih sebuah rencana akhir.
2.4.3.3. Kriteria FACTOR
Kriteria FACTOR (Mathiassen et al., 2000) adalah sebagai berikut:
Functionality Fungsi dari suatu sistem yang mendukung tugas-tugas dalam application domain.
Application Domain
Bagian dalam sebuah organisasi yang diadministrasikan, dimonitor, atau dikontrol dalam problem domain.
Conditions Kondisi dimana sistem akan dikembangkan dan digunakan.
Technology Teknologi yang digunakan baik untuk mengembangkan sistem maupun teknologi untuk menjalankan sistem tersebut.
Object Object utama dalam problem domain.
Responsibility Tanggung jawab sistem secara keseluruhan sesuai dengan konteks.
Tabel 2.1. Kriteria FACTOR
2.4.4. Analysis
2.4.4.1. Problem Domain Analysis
Problem domain analysis berfokus pada informasi apa yang seharusnya sistem dapat lakukan. Model yang dibuat dalam problem domain menyediakan sebuah bahasa yang digunakan untuk mengungkapkan syarat- syarat yang ada dalam sistem. Dalam perancangan, model diubah kedalam suatu komponen yang memperlihatkan problem domain yang telah terjadi.
Problem domain analysis dibagi menjadi tiga aktivitas. Berikut ini dijelaskan setiap aktivitas yang dilakukan.
2.4.4.1.1. Class
Aktivitas yang dilakukan dalam tahap ini adalah menggambarkan pendekatan yang dilakukan dalam mendefinisikan tugas dari informasi yang didapat dalam sistem. Problem domain didefinisikan dan dibuat karakteristiknya dengan melakukan seleksi atas class dan event. Class merupakan gambaran dari sekumpulan object yang memiliki persamaan dalam structure, behavioral pattern, dan attribute. Sedangkan event dilihat sebagai elemen dasar dari perilaku suatu object. Gambar 2.4 menjelaskan langkah-langkah dalam menentukan class dan event. Penentuan class dan event diawali dengan dibuatnya class candidates dan event candidates.
Class candidates diambil dari seluruh kata benda yang terdapat pada process description dan system definition. Sedangkan event candidates diambil dari seluruh kata kerja yang terdapat pada process
description dan system definition. Setelah dibuat class dan event candidates, selanjutnya dilakukan evaluasi untuk dapat ditentukan class dan event yang sesungguhnya.
Gambar 2.4. Sub aktivitas dalam menentukan class dan event.
Sumber: Mathiassen (2000, p55)
Class candidates akan menjadi class jika dapat memenuhi pertanyaan-pertanyaan berikut ini (Mathiassen et al., 2000):
1. Apakah object dapat ditentukan dari class tersebut?
2. Apakah class terdiri dari informasi yang unik?
3. Apakah class meliputi banyak object?
4. Apakah class sesuai atau dapat dikelola dengan adanya event?
Sedangkan event candidates akan menjadi event jika dapat memenuhi pertanyaan-pertanyaan berikut ini (Mathiassen et al., 2000):
1. Apakah event bersifat instantaneous?
2. Apakah event bersifat atomic (tidak dapat dibagi lagi)?
3. Dapatkah event diidentifikasi saat terjadi?
Hasil dari aktivitas ini adalah sebuah event table yang memuat seluruh class yang terpilih berikut event yang berhubungan, seperti yang ada pada tabel 2.2.
Evaluate and select systematically Find candidates
for classses
Find candidates for event
Event table
Event table
Tabel 2.2. Contoh Event Table.
Sumber: Mathiassen (2000, p50)
2.4.4.1.2. Structure
Aktivitas ini berkaitan dengan hubungan yang terstruktur antara class dan object. Pada kegiatan ini digambarkan hubungan dalam problem domain baik secara statis (antara abstract structure dengan class) maupun dinamis (antara concrete structure dengan object).
Gambar 2.5. Sub aktivitas dalam menentukan structure.
Sumber: Mathiassen (2000, p72) Class
Event
Customer Assistant Apprentice Appointment Plan
reserved * +
cancelled +
treated +
employed + +
resigned *
graduated * *
agreed
Event Table
Class diagram Find candidates for
structure
Evaluate systematically Explore
Pattern
Hasil dari aktivitas ini adalah sebuah class diagram yang menyajikan class yang terpilih dan hubungan terstruktur yang relevan antara class dan object.
Customer
Appointment
Employee
Time Period
Other Work
Apprentice
Day Schedule
Free Assistant
1
0..*
0..*
1
1
1
1 1..*
1 1..*
Gambar 2.6. Contoh Class Diagram Sumber: Mathiassen (2000, p70)
2.4.4.1.3. Behaviour
Aktivitas ini berkaitan dengan perilaku object dan interaksi yang dilakukan. Pada aktivitas ini digambarkan property dan attribute yang bersifat dinamis dalam setiap class yang ada.
Gambaran dari behaviour dan attribute diciptakan dengan karakteristik yang lebih tepat dari setiap object yang ada dalam problem domain. Behavioral Pattern adalah gambaran dari event yang meliputi suatu object tertentu dalam sebuah class.
Gambar 2.7. Sub aktivitas dalam membuat model object behaviour.
Sumber: Mathiassen (2000, p92)
Hasil dari aktivitas ini adalah sebuah state diagram yang menggambarkan behaviour dan attribute secara umum dari setiap class.
Active
/ account opened / account closed
/ account opened / account closed
/ amount withdrawn / amount deposited
Gambar 2.8. Contoh Statechart Diagram Sumber: Mathiassen (2000, p109)
2.4.4.2. Application Domain Analysis
Application Domain Analysis berfokus pada bagaimana suatu sistem target akan digunakan. Hal ini bertujuan untuk menentukan syarat-syarat yang diperlukan dalam membuat function dan interface suatu sistem. Model suatu sistem bersifat lebih stabil, sehingga jika dilakukan perubahan pada model maka akan menyebabkan perubahan pada function dan interface sistem.
Explore patterns
Describe behavioral patterns
Behavioral pattern with attributes Event table and
class diagram
Consider structures and classes Describe
attributes
Namun, jika function dan interface yang dilakukan perubahan, maka model tidak perlu dirubah. Application domain analysis dibagi menjadi tiga aktivitas.
Berikut ini dijelaskan setiap aktivitas yang dilakukan.
2.4.4.2.1. Usage
Aktivitas ini berkaitan pada menentukan sistem target yang digunakan dalam aplikasi dengan mengidentifikasi dan memberi struktur pada actor dan use case. Actor adalah seseorang/sistem yang melakukan pekerjaan pada sistem. Sedangkan Use case adalah proses sistem dan actor melakukan interaksi dalam application domain.
Gambar 2.9. Sub aktivitas dalam usage.
Sumber: Mathiassen (2000, p120)
Hasil dari aktivitas ini adalah use case diagram yang menggambarkan use case beserta actor yang melakukannya, seperti yang ada pada gambar 2.10 berikut ini:
Find actors and use cases
Evaluate systematically
Explore Pattern System definition
Use cases and actors
Automatic Payment System
Account Owner
Payment
Account Inform Money Transfer
Cash withdrawal
Gambar 2.10. Contoh Use Case Diagram.
Sumber: Mathiassen (2000, p122)
2.4.4.2.2. Function
Function merupakan suatu fasilitas dalam membuat model dapat digunakan oleh actor. Dalam aktivitas ini dilakukan tahap bagaimana memformulasikan syarat-syarat fungsional dari suatu sistem. Pada tahap ini diperlukan suatu catatan fungsi yang disajikan secara lengkap untuk melihat gambaran umum secara fungsional dan fungsi-fungsi kompleks yang spesifik menjadi lebih detil.
Gambar 2.11. Sub aktivitas dalam function.
Sumber: Mathiassen (2000, p139)
Function memiliki empat tipe, yaitu:
a. Update, yaitu function diaktifkan dalam event dari problem domain dan menghasilkan suatu perubahan dalam kondisi dari sebuah model.
b. Signal, yaitu function diaktifkan dengan mengubah kondisi dari model dan menghasilkan suatu reaksi dalam sebuah konteks model.
Pada tipe ini, function dapat bekerja tanpa adanya drive.
Contohnya adalah pada jam yang berjalan pada layar komputer.
c. Read, yaitu function diaktifkan berdasarkan atas permintaan informasi dari tugas actor, dan model akan menampilkan hasil dari informasi tersebut dalam sebuah bagian dari model.
d. Compute, yaitu function diaktifkan berdasarkan permintaan informasi dari tugas actor, disertai dengan adanya perhitungan atas informasi yang disediakan oleh actor atau model. Hasil akan menampilkan hasil dari penghitungan tersebut.
Find functions
Specify complex functions
Evaluate critically System definition
Function list and specification Use cases
2.4.4.2.3. User Interface
Interface merupakan fasilitas yang membuat model dan function dari sistem tersedia bagi actor. Aktivitas ini berkaitan dalam pembuatan kerangka dari syarat-syarat pembuatan tampilan suatu sistem, atau disebut user interface. User interface didefinisikan dengan melakukan pemilihan gaya bahasa, bentuk formulir, dan elemen-elemen pembentuk interface lainnya.
Gambar 2.12. Sub aktivitas dalam menganalisa interface.
Sumber: Mathiassen (2000, p153)
Setiap user interface terdiri dari beberapa dialog pattern yang dapat digunakan agar tampilan lebih dapat lebih berkarakter, disamping juga Dialog pattern yang biasa digunakan seperti:
Menu-selection pattern
Form fill-in
Command- language pattern
Direct-manipulation pattern
Determine interface elements
Evaluate interface elements
Discribe interface elements Function list
Description of interface Use cases
Class diagram
Explore patterns
Hasil dari aktivitas ini adalah gambaran dari interface yang disajikan dalam sequence diagram dan navigation diagram. Dalam sequence diagram, digambarkan interaksi yang terjadi antara bagian-bagian dari interface yang berhubungan secara langsung dengan use case.
Sedangkan navigation diagram menggambarkan tampilan-tampilan yang ada pada interface dan bagaimana cara mengaplikasikan interface tersebut.
Initial window
Amount window
Accept window
System Interface
card inserted() pin code()
refusal()
check pin code
register withdrwal
amount()
approve()
card rejected() payment()
Gambar 2.13. Contoh Sequence Diagram Sumber: Mathiassen (2000, p157)
2.4.5. Design
2.4.5.1. Architecture Design
Architecture design berfokus pada rancang bangun dari sistem yang akan dikembangkan. Sistem yang telah dianalisa, selanjutnya dibuat kedalam sebuah rancangan sistem yang baru. Terdapat dua aktivitas penting dalam tahap ini, yaitu component architecture dan process architecture sebagaimana dijelaskan berikut ini:
2.4.5.1.1. Criteria
Sebelum dilakukan perancangan sistem yang baru, terlebih dahulu dibuat criteria yang penting untuk kondisi yang sesuai dengan sistem yang akan dibangun. Criteria ini dibuat agar sistem yang akan dibangun dapat berfungsi baik dan sebagaimana mestinya.
Gambar 2.14. Sub aktivitas dalam menentukan criteria.
Sumber: Mathiassen (2000, p179)
Sebuah rancangan dapat dikatakan baik jika pada rancangan tersebut tidak memiliki kelemahan. Mathiassen et al. (2000,p178) menjelaskan beberapa criteria dasar yang harus diperhatikan dalam membuat sebuah rancangan yang baik.
Analyze specific condition
Prioritize
Criteria for design System definition
Consider general criteria
Criterion Measure of Usable The system’s adaptability to the organizational, work-related, and
technical context.
Secure The precautions againts unauthorized access to data and facilities.
Efficient The economical exploitation of the technical platform’s facilities.
Correct The fulfillment of requirements.
Reliable The fulfillment of the required precision in function execution.
Maintainable The cost of locating and fixing system defects.
Testable The cost of ensuring that the deployed system performs its intended function.
Flexible The cost of modifying the deployed system.
Comprehensible The effort needed to obtain a coherent understanding of the system.
Reusable The potential for using system parts in other related systems.
Portable The cost of moving the system to another technical platform.
Interoperable The cost of coupling the system to other systems.
Tabel 2.3. Criteria untuk menggambarkan kualitas software.
Sumber: Mathiassen (2000, p178)
Beberapa criteria yang ada, diurutkan berdasarkan prioritas yang dibutuhkan dalam sistem. Setelah criteria didapatkan, maka selanjutnya criteria tersebut dihubungkan dengan technical platform agar dapat bekerja secara efektif dan efisien.
2.4.5.1.2. Component Architecture
Pada aktivitas ini, difokuskan pada bagaimana sistem dapat dipecah kedalam bagian-bagian yang lebih spesifik. Component adalah kumpulan dari bagian program yang terdapat sejumlah tanggung jawab yang dirumuskan dengan baik. Tujuan utama dari component architecture adalah membuat agar sistem tersebut dapat bersifat umum dan fleksibel. Hal ini sangat penting, karena sebuah sistem pasti akan selalu berkembang. Sehingga, jika sistem akan dikembangkan, perubahan yang terjadi menjadi tidak terlalu signifikan.
Gambar 2.15. Sub aktivitas dalam perancangan component architecture.
Sumber: Mathiassen (2000, p192)
Dalam merancang component architecture, pattern merupakan sebuah sumber yang sangat diperlukan sebagai inspirasi.
Ada tiga pattern yang lazim digunakan, yaitu:
a. Layered architecture pattern
Merupakan pola dasar dalam software. Pattern ini terdiri dari beberapa component, dimana setiap component tersebut dirancang sebagai layer yang menggambarkan tanggung jawabnya masing- masing.
b. Generic architecture pattern
Pattern ini digunakan untuk menggabungkan sebuah sistem dasar yang terdiri dari interface, function, dan model component. Dan pada banyak kasus, ditambahkan pula dengan technical platform component.
Criteria
Component specification Define subsystems
Specify complex components
Identify components Explore architectural
patterns
Class diagram
c. Client-Server architecture pattern
Pattern ini dibangun untuk menangani distribusi sistem yang tersebar dibeberapa daerah geografis. Biasanya digunakan dalam software bagi kepentingan industri. Pattern ini terdiri dari sebuah server dan beberapa client.
2.4.5.1.3. Process Architecture
Process architecture adalah struktur sistem eksekusi yang dibuat dalam proses yang saling bergantung. Dua tahap yang dilakukan adalah (1) menentukan distribusi dari component program dalam prosesor sistem yang ada dan (2) mengkolaborasikan struktur diantara object yang ada selama eksekusi.
Gambar 2.16. Sub aktivitas dalam perancangan process architecture.
Sumber: Mathiassen (2000, p212)
Distribute program components
Explore distribution patterns
Select coordination mechanisms Identify shared
resources
Deployment diagram Class diagram and
component specification
Explore coordination patterns
Terdapat tiga pattern dalam membangun distribusi, yaitu:
Centralized Pattern
Distributed Pattern
Decentralized Pattern
Hasil dari aktivitas ini adalah sebuah deployment diagram yang menggambarkan distribusi dan kolaborasi antara komponen program dengan object dalam suatu prosesor.
2.4.5.2. Component Design
Tahap akhir dari sebuah perancangan sistem adalah component design. Tahap ini berfokus pada dua komponen sistem, yaitu:
2.4.5.2.1. Model Component
Aktivitas yang dilakukan adalah bagaimana cara menerapkan problem domain model kedalam sebuah object-oriented platform. Tujuannya adalah untuk menyampaikan data-data pada masa lalu dan saat ini kedalam sebuah fungsi, tampilan, dan akhirnya dapat diterima oleh user atau sistem lainnya. Hasil dari aktivitas ini adalah sebuah class diagram dari aktivitas yang dianalisis.
Gambar 2.17. Sub aktivitas dalam perancangan model component.
Sumber: Mathiassen (2000, p239)
Represent private event
Restructure class diagram
Model Component specification Represent common
event Class diagram, behavioral patterns, component specifications
2.4.5.2.2. Function Component
Aktifitas yang dilakukan adalah bagaimana menerapkan syarat-syarat fungsional, yang berfokus pada organisasi suatu perusahaan diantara operasi-operasi pada bagian yang berbeda.
Tujuannya adalah untuk memberikan tampilan dan sistem lain akses ke model. Hasil dari tahap ini adalah sebuah class diagram untuk function component dan juga perpanjangan dari class diagram yang ada pada model component.
Gambar 2.18. Sub aktivitas dalam perancangan function component.
Sumber: Mathiassen (2000, p252)
2.4.6. Implementation
Tahap akhir dalam perancangan sebuah sistem adalah pembangunan prototipe dari sistem tersebut. Prototipe dibangun dengan menggunakan sebuah program berorientasi object. Program yang sering digunakan saat ini adalah dengan menggunakan Visual Basic .Net atau yang dikenal dengan istilah VB.Net.
Design functions as operations
Explore pattern
Function component specification Function list,
class diagram, component specification
Specify complex operations
Model component specification
VB.Net merupakan versi terbaru dari Visual Basic yang dapat digunakan untuk membuat sebagian besar aplikasi yang berbasiskan windows.
Beberapa alasan dalam penggunaan VB .Net (Kusumo, Ario.S, 2004) adalah sebagai berikut:
a. Penyederhanaan deployment dari aplikasi berbasis windows.
b. Menyederhanakan pengembangan perangkat lunak.
c. Mendukung penuh pendekatan berorientasi object.
d. Mempermudah pengembangan aplikasi berbasis web.