bab ii landasan teori · “microsoft office access atau lebih popular dengan sebutan microsoft...
TRANSCRIPT
6
BAB II
LANDASAN TEORI
2.1. Konsep Dasar
Sebelum mengupas lebih dalam tugas akhir ini, alangkah baiknya apabila
diketahui terlebih dahulu definisi serta uraian singkat mengenai konsep dasar dari
aplikasi sistem informasi akuntansi pendapatan jasa yang berhubungan dengan tugas
akhir.
2.1.1. Konsep Dasar Sistem Informasi Akuntansi
Menurut George H. Bodnar dan William S. Hopwood dalam Rizki Ahmad
Fauzi (2017:25) mendefinisikan bahwa “Sistem Informasi Akuntansi adalah
kumpulan sumber daya seperti manusia dan peralatan yang diatur untuk mengubah
data ekonomi menjadi informasi yang berguna”.
Menurut Barry E. Cushing dalam Rizki Ahmad Fauzi (2017:25)
mendefinisikan bahwa “SIA adalah kumpulan dari manusia dan sumber-sumber daya
modal dalam suatu organisasi yang bertanggung jawab untuk menyediakan
menyediakan informasi keuangan dan juga informasi yang didapat dari pengumpulan
dan pengolahan data transaksi”.
Menurut John F. Nash dan Martin B. Roberts dalam Rizki Ahmad Fauzi
(2017:25) mendefinisikan bahwa “SIA adalah suatu subsistem dari sistem informasi
bisnis yang dihubungkan dengan tipe suatu informasi dan pengolahan informasi yang
termasuk di dalam bagian fungsi akuntansi”.
Menurut Stephen A. Moscove dan Mark G. Simkin dalam Rizki Ahmad
Fauzi (2017:25) mendefinisikan bahwa “SIA adalah suatu komponen organisasi yang
mengumpulkan, mengklasifikasikan, memproses, menganalisis, mengomukasikan
7
informasi pengambilan keputusan dengan orientasi finansial yang relevan bagi pihak-
pihak luar dan pihak-pihak dalam perusahaan”.
Menurut Marshal B. Romney dan Paul John Steinbart SIA terdiri dari 5
komponen (Rizki, 2017:26):
1. Orang-orang yang mengoperasikan sistem tersebut dan melaksanakan berbagai
fungsi.
2. Prosedur-prosedur baik manual maupun terotomasi yang dilibatkan dalam
mengumpulkan, memproses dan menyimpan data tentang aktivitas-aktivitas
organisasi.
3. Data tentang proses-proses bisnis organisasi.
4. Software yang dipakai untuk memproses data organisasi.
5. Infrastruktur teknologi informasi termasuk komputer, peralatan pendukung dan
peralatan untuk komunikasi jaringan.
2.1.2. Konsep Dasar Program Aplikasi Desktop
Menurut Ibnu Rasyid Munthe dan Sudi Suryadi (2018:2) mendefinisikan
bahwa “Program adalah kumpulan instruksi atau perintah berdasarkan suatu aturan
yang berdasarkan algoritma tertentu atau algoritma yang telah dirancang
sebelumnya”.
Menurut Pasal 1 butir 9 UU No. 28 Tahun 2014 tentang Hak Cipta (UUHC
2014) dalam Edi Santoso (2018:108) menjelaskan bahwa “Makna program komputer
adalah seperangkat instruksi yang diekspresikan dalam bentuk bahasa, kode, skema
atau dalam bentuk apa pun yang ditujukan agar komputer bekerja melakukan fungsi
tertentu atau untuk mencapai hasil tertentu”.
8
Aplikasi menurut Syahrial Chan (2017:4) mendefinisikan bahwa “Aplikasi
adalah koleksi windows dan objek-objek yang menyediakan fungsi untuk aktivitas
user, seperti pemasukan data, proses dan pelaporan”.
Aplikasi desktop menurut Jubilee Enterprise (2015:2) mendefinisikan bahwa
“Aplikasi desktop adalah aplikasi yang teristal di dalam operating sistem, dalam hal
ini microsoft windows”.
Membangun sebuah program atau aplikasi pada dasarnya adalah membuat
alat bantu untuk menyelesaikan suatu masalah. Maka untuk menghasilkan program
atau aplikasi tersebut memerlukan 3 tahapan pokok menurut Lamhout Sitorus
(2015:2), adalah:
1. Memahami permasalahan dan tujuan sebuah program dibuat. Pada tahap ini kita
harus mampu mengindentifikasi jenis, bentuk dan karakteristik input serta output
yang diharapkan. Tetapi untuk skala permasalahan yang besar, selain jenis,
bentuk dan karakteristik, kita juga perlu mengetahui dengan pasti asal, frekuensi
dan volume data input serta tujuan, frekuensi dan volume data output yang
diharapkan.
2. Mampu menyusun konsep atau rancangan atau desain penyelesaian dari masalah
yang akan kita selesaikan. Dari hasil pemahaman kita terhadap permasalahan
diatas, kita harus mampu merancang sebuah alur proses untuk mengolah data
input dan menghasilkan data output dengan jenis, bentuk dan karakteristik seperti
yang diharapkan.
3. Mampu mengimplementasikan hasil rancangan kita dalam bentuk program yang
terstruktur. Program tersebut dapat kita buat dengan menggunakan sembarang
bahasa pemrograman. Untuk itulah kita diharuskan memahami dan menguasai
komponen bahasa pemrograman dan teknik pemrograman dengan baik.
9
2.1.3. Konsep Dasar Bahasa Pemrograman
Menurut Ibnu Rasyid Munthe dan Sudi Suryadi (2018:2) mendefinisikan
bahwa “Bahasa pemrograman yaitu bahasa komputer yang digunakan dalam menulis
program”.
Secara umum bahasa pemrograman terbagi menjadi 4 kelompok, yaitu:
1. Object Oriented Language (Visual dBase, Visual FoxPro, Delphi, Visual DC).
2. High Level Language (seperti Pascal dan Basic)
3. Middle Level Language (seperti bahasa C)
4. Low Level language (seperti bahasa Assembly)
Bahasa pemrograman yang umum digunakan antara lain:
1. HTML atau CSS
2. JavaScript
3. PHP
4. C++
5. C#
6. C
7. Phyton
8. Java
9. Ruby
10. Visual Basic
Menurut Edy Winarno, Ali Zaki dan SmitDev Community (2018:1)
menjelaskan bahwa “Pemrograman Visual Basic.NET atau disingkat VB.NET adalah
bahasa pemrograman terpopuler. Ini merupakan pemrograman yang berjalan di atas
platfon NET Framework”.
10
Microsoft Visual Studio 2008 diluncurkan pada tanggal 19 November 2007
oleh Microsoft yang ditujukan untuk flatform .Net Framework 3.5. Dan merupakan
evolusi dari versi terdahulu, yakni Microsoft Visual Studio 6.0 (VS 1998). Untuk
versi paling baru adalah Microsoft Visual Studio 2019 yang telah diluncurkan pada
tanggal 04 Desember 2018.
Komponen dasar pada Microsoft Visual Studio 2008 terdiri dari Menu Bar,
Toolbar Standar, Toolbox, Form Design, Solution Explorer, Properties dan Error
List.
Gambar II.1.
Komponen Dasar Microsoft Visual Studio 2008
Komponen dasar Microsoft visual studio 2008, terdiri dari:
a. Menu Bar merupakan suatu menu yang terdiri dari 11 menu utama, masing-
masing memiliki submenu dan perintah lengkap dengan shortcut key.
b. Toolbar Standar merupakan suatu baris menu yang mempunyai fungsi sama pada
setiap tool standard pada umumnya, seperti fungsi untuk menyimpan, mengkopi,
menambah project baru, mengatur tampilan program dan masih banyak lagi.
11
c. Form Design merupakan suatu lembar form yang berfungsi untuk merancang
tampilan aplikasi secara visual dengan menempatkan kontrol-kontrol yang
dipergunakan.
d. Toolbox merupakan suatu jendela yang berfungsi untuk menampung komponen-
komponen standard.
e. Solution Explorer merupakan suatu jendela yang berfungsi untuk menampilkan
object yang digunakan untuk membuat aplikasi seperti: form, class dan object
lainnya.
f. Properties Windows merupakan suatu jendela yang berfungsi untuk mengatur
nilai properties dari masing-masing komponen yang digunakan.
g. Error List merupakan suatu jendela yang berfungsi untuk menampilkan setiap
kesalahan dari pembuatan kode program suatu aplikasi.
2.1.4. Konsep Dasar Basis Data atau Database
Menurut Canggih Ajika Pamungkas (2017:2) Berpendapat bahwa:
Basis data merupakan suatu kumpulan data terhubung yang disimpan secara
bersama-sama pada suatu media, yang diorganisasikan berdasarkan sebuah
skema atau struktur tertentu, dan dengan software untuk melakukan
manipulasi untuk kegunaan tertentu. Basis data bisa diartikan juga sebagai
sekumpulan data yang disusun dalam bentuk beberapa tabel yang saling
memiliki relasi maupun berdiri sendiri.
Pemanfaatan basis data menurut Canggih Ajika Pamungkas (2017:3) sebagai
berikut:
1. Salah satu komponen penting dalam sistem informasi, karena merupakan dasar
dalam menyediakan informasi.
2. Menentukan kualitas informasi: akurat, tepat waktu dan relevan.
3. Mengurangi duplikasi data (data redundancy).
4. Hubungan data dapat ditingkatkan.
12
5. Manipulasi terhadap data dengan cepat dan mudah.
6. Efisiensi penggunaan ruang penyimpanan.
Beberapa contoh software basis data antara lain:
1. Manage Engine Aplications Manager.
2. Zoho Creator.
3. DB Rover.
4. Very Connect.
5. SQL Server.
6. MySQL.
7. PostgreSQL.
8. Microsoft Access, dll.
Menurut Sarwandi dan Cyber Creative (2017:1) menerangkan bahwa
“Microsoft office access atau lebih popular dengan sebutan Microsoft access adalah
sebuah program aplikasi basis data komputer relasional yang ditujukan untuk
kalangan rumahan dan perusahaan kecil hingga menengah”.
Microsoft Access 2010 sendiri adalah revolusi dari Microsoft Access
sebelumnya yakni Microsoft Access 2007. Microsoft pertama kali merilis Microsoft
Access 1.0 pada bulan November 1992 kemudian dilanjutkan Microsoft Access 2.0
pada tahun berikutnya yakni pada tahun 1993. Microsoft terus mengupayakan
pengembangan fitur Microsoft Access sampai dengan tahun 2010 Microsoft sudah
merilis Microsoft access 2010 dan merupakan versi ke-14.
Dalam pemakaianya Microsoft access relatif cepat karena semua tabel basis
data, queri, form, dan report disimpan di dalam satu berkas basis data. Dan
kemudahan lainnya adalah Microsoft Access menggunakan Query Design Grid
untuk membuat query, sebuah program berbasis grafis yang mengizinkan para
13
penggunanya untuk membuat query tanpa harus mengetahui bahasa pemrograman
SQL.
Gambar II.2.
Tampilan Start Page Microsoft Access 2010
Pada Microsoft Access terdapat 5 buah object database yang dapat dibuat,
diantaranya:
1. Tabel
Merupakan object utama dalam database yang digunakan untuk menyimpan
sekumpulan data sejenis dalam sebuah object. Tabel juga merupakan kumpulan
dari beberapa record dan field.
2. Field
Merupakan atribut dari sebuat tabel yang menempati bagian kolom.
3. Record
Merupakan isi dari field yang menempati bagian baris.
14
4. Query
Merupakan bahasa untuk melakukan manipulasi terhadap database. Digunakan
untuk menampilkan, mengubah, dan menganalisa sekumpulan data.
5. Form
Mengontrol proses masukan data (input), menampilkan data (output) memeriksa
dan memperbaharui data.
2.1.5. Konsep Dasar Crystal Report
Menurut Nur Aminudin (2016:158) menjelaskan bahwa ”Crystal Report
adalah suatu form khusus berbentuk seperti lembaran format naskah yang ingin
dicetak”.
Beberapa kelebihan dari crystal report:
1. Pembuatan laporanya tidak terlalu rumit sehingga memungkinkan pemrogram
pemula sekalipun untuk membuat laporan tanpa harus melibatkan banyak kode
pemrograman.
2. Terintegrasi dengan berbagai bahasa pemrograman lain sehingga memungkinkan
pemrogram memanfaatkannya dengan keahliannya sendiri-sendiri.
3. Fasilitas impor hasil laporan yang mendukung format yang popular seperti
Microsoft Word, Excel, Acces, Adobe Acrobat Reader, HTML dan sebagainya.
Elemen layar Crystal Report tidak jauh dengan elemen layar Data Report
(salah satu fasilitas default yang disediakan Visual Basic untuk membuat laporan).
Hanya saja Crystal Report dilengkapi dengan fasilitas yang lebih banyak untuk
mengembangkan berbagai jenis laporan.
15
Gambar II.3.
Tampilan Section Page Crystal Report
Pada umumnya sebuah laporan sedikitnya terdiri dari 5 (lima) bagian
(section) utama, yaitu:
1. Report Header yang berisi informasi yang hanya akan terlihat sekali pada awal
laporan, misalnya judul dan tanggal laporan.
2. Page Header yang berisi informasi yang akan terlihat di atas setiap halaman
laporan, seperti label heading kolom.
3. Group header yang berisi informasi dari kelompok baru.
4. Details yang berisi informasi yang akan terlihat satu kali setiap record dalam
table atau query yang terkait dengan laporan.
5. Group Footer yang berisi informasi setelah seluruh record dari kelompok
dicetak.
16
2.1.6. Konsep Dasar Pengujian
Menurut Feri Hari Utami dan Asnawati (2015:34) menjelaskan bahwa
“Pengujian software adalah proses untuk memastikan apakah fungsi sistem bekerja
dengan baik, dan mencari apakah masih ada kesalahan pada sistem”.
Pengujian atau testing software sangat penting untuk dilakukan. Pengujian ini
bertujuan untuk menjamin kualitas software, dan juga menjadi peninjauan terakhir
terhadap spesifikasi, disain dan pengkodean.
Terdapat dua pendekatan dalam melakukan pengujian software menurut Feri
Hari Utami dan Asnawati (2015:34), yaitu:
1. Black Box Testing
Pendekatan black box testing, pendekatan ini melakukan pengujian terhadap
fungsi operasional software. Pendekatan ini biasanya dilakukan oleh penguji yang
tidak ikut serta dalam pengkodean software.
a. Black box testing berfokus pada kebutuhan fungsional pada software,
berdasarkan pada spesifikasi kebutuhan dari software.
b. Black box testing bukan teknik alternatif daripada white box testing. Lebih
daripada itu, ia merupakan pendekatan pelengkap dalam mencakup error dengan
kelas yang berbeda dari metode white box testing.
c. Black box testing melakukan pengujian tanpa pengetahuan detil struktur internal
dari sistem atau komponen yang dites, juga disebut sebagai behavioral testing,
specification based testing, input atau output testing atau functional testing.
d. Pada blackbox testing terdapat jenis teknik desain tes yang dapat dipilih
berdasarkan pada tipe testing yang akan digunakan, yang diantaranya:
1) Equivalence Class Partitioning
2) Boundary Value Analysis
17
3) State Transitions Testing
4) Cause Effect Graphing
Kategori error yang diketahui melalui pengujian black box testing adalah:
a. Fungsi yang hilang atau tak benar.
b. Error dari antar muka.
c. Error dari struktur data atau akses aksternal database.
d. Error dari kinerja atau tingkah laku.
e. Error dari inisialisasi dan terminasi.
2. White Box Testing
White box testing adalah pengujian yang didasarkan pada pengecekan
terhadap detail perancangan, menggunakan struktur control dari desain program
secara procedural untuk membagi pengujian kedalam beberapa kasus pengujian.
Secara sekilas dapat diambil kesimpulan white box testing merupakan petunjuk untuk
mendapatkan program yang benar secara 100%.
Pengujian white box:
a. Untuk mengetahui cara kerja suatu perangkat lunak secara internal.
b. Untuk menjamin operasi-operasi internal sesuai dengan spesifikasi yang telah
ditetapkan dengan menggunakan struktur kendali dari prosedur yang dirancang.
Tahapan pelaksanaan pengujian white box:
a. Menjamin seluruh independent path dieksekusi paling sedikit satu kali.
Independent path adalah jalur dalam program yang menunjukkan paling sedikit
satu kumpulan proses ataupun kondisi baru.
b. Menjalankan logical decision pada sisi dan false.
c. Mengeksekusi pengulangan (looping) dalam batas-batas yang ditentukan.
d. Menguji struktur data internal.
18
2.2. Peralatan Pendukung
Untuk lebih memahami isi dari tugas akhir ini, maka dibutuhkan beberapa
pengetahuan mengenai definisi serta uraian yang berkaitan dengan teori pendukung,
sebagai berikut:
2.2.1. Entity Relationship Diagram
Menurut Bagui dan Erap dalam Sri Mulyani (2016:100) mendefinisikan
bahwa “ERD adalah tools yang digunakan untuk melakukan pemodelan data secara
abstrak dengan tujuan untuk mendeskripsikan atau menggambarkan struktur dari
data yang akan digunakan.
Entity Relationship Diagram (ERD) merupakan representasi data sebagai
entitas, atribut dan relasi. Entitas menggambarkan kumpulan dari segala data, lalu
Atribut atau elemen data merupakan unit terkecil dari data yang dapat menjelaskan
apa yang dimiliki oleh suatu entitas (karakteristik dari entitas), sedangkan relasi
menjelaskan keterkaitan di antara dua entitas yang berbeda.
Entity Relationship Diagram digunakan untuk mempermudah dalam
perancangan database yang mengutamakan untuk permodelan desain konseptual.
Karena Entity Relationship Diagram menggambarkan struktur dan keterkaitan tabel-
tabel data yang menyusun database secara detail.
Sifat hubungan atau relasi antar entitas dapat dibedakan menjadi 3 (tiga) jenis
sebagai berikut:
1. Hubungan Satu-ke-Satu (One-to-One Relationship)
Akan terjadi jika setiap entitas dalam suatu himpunan entitas hanya berhubungan
dengan satu entitas pada himpunan entitas lain dan sebaliknya.
19
2. Hubungan Satu-ke-Banyak (One-to-Many-Relationship)
Terjadi jika setiap entitas dalam suatu himpunan entitas dapat berhubungan
dengan beberapa entitas pada himpunan entitas lain, tetapi tidak sebaliknya
3. Hubungan Banyak-ke-Banyak (Many-to-Many-Relationship)
Terjadi jika setiap entitas dalam suatu himpunan entitas dapat berhubungan
dengan beberapa entitas pada himpunan entitas lain, demikian juga sebaliknya.
2.2.2. Unified Modelling Language
Menurut Sri Mulyani (2016:35) menerangkan bahwa “Unified Modelling
Language (UML) adalah sebuah teknik pengembangan sistem yang menggunakan
bahasa grafis sebagai alat untuk pendokumentasian dan melakukan spesifikasi pada
sistem”.
UML merupakan salah satu alat bantu yang sangat handal di dunia
pengembangan sistem yang berorientasi obyek. Karena UML menyediakan bahasa
permodelan visual berupa grafik atau gambar yang mudah dimengerti.
Beberapa diagram yang ada pada UML, diantaranya:
1. Use Case Diagram
Sebuah use case merepresentasikan sebuah interaksi antara aktor dengan sistem.
Use case merupakan sebuah pekerjaan tertentu, misalnya login ke sistem,
membuat sebuah daftar belanja, dan sebagainya. Seorang aktor adalah sebuah
entitas manusia atau mesin yang berinteraksi dengan sistem untuk melakukan
pekerjaan-pekerjaan tertentu.
2. Class Diagram
Class Digram adalah sebuah spesifikasi yang jika diinstansiasi akan
menghasilkan sebuah objek dan merupakan inti dari pengembangan dan desain
berorientasi objek.
20
3. Statechart Diagram
Statechart diagram menggambarkan transisi dan perubahan keadaan (dari satu
state ke state lainnya) suatu objek pada sistem sebagai akibat dari stimuli yang
diterima. Pada umumnya statechart diagram menggambarkan class tertentu (satu
class dapat memiliki lebih dari satu statechart diagram).
4. Activity Diagram
Activity diagram menggambarkan berbagai alir aktivitas dalam sistem yang
sedang dirancang, bagaimana masing-masing alir berawal, decision yang
mungkin terjadi, dan bagaimana mereka berakhir. Activity diagram juga dapat
menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi.
5. Sequence Diagram
Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar
sistem (termasuk pengguna, display, dan sebagainya) berupa message yang
digambarkan terhadap waktu. Sequence diagram terdiri atar dimensi vertikal
(waktu) dan dimensi horizontal (objek-objek yang terkait). Sequence diagram
biasa digunakan untuk menggambarkan skenario atau rangkaian langkah-langkah
yang dilakukan sebagai respons dari sebuah event untuk menghasilkan output
tertentu.
6. Collaboration Diagram
Collaboration diagram juga menggambarkan interaksi antar objek seperti
sequence diagram, tetapi lebih menekankan pada peran masing-masing objek dan
bukan pada waktu penyampaian message. Setiap message memiliki sequence
number, di mana message dari level tertinggi memiliki nomor 1. Messages dari
level yang sama memiliki prefiks yang sama.
21
7. Component Diagram
Component diagram menggambarkan struktur dan hubungan antar komponen
piranti lunak, termasuk ketergantungan (dependency) di antaranya. Komponen
piranti lunak adalah modul berisi code, baik berisi source code maupun binary
code, baik library maupun executable, baik yang muncul pada compile time, link
time, maupun run time. Umumnya komponen terbentuk dari beberapa class atau
package, tapi dapat juga dari komponen-komponen yang lebih kecil. Komponen
dapat juga berupa interface, yaitu kumpulan layanan yang disediakan sebuah
komponen untuk komponen lain.
8. Deployment Diagram
Deployment atau physical diagram menggambarkan detail bagaimana komponen
di-deploy dalam infrastruktur sistem, dimana komponen akan terletak (pada
mesin, server atau piranti keras apa), bagaimana kemampuan jaringan pada lokasi
tersebut, spesifikasi server, dan hal-hal lain yang bersifat fisikal Sebuah node
adalah server, work station, atau piranti keras lain yang digunakan untuk men-
deploy komponen dalam lingkungan sebenarnya. Hubungan antar node (misalnya
TCP atau IP) dan requirement dapat juga didefinisikan dalam diagram ini.
Berikut ini adalah tips pengembangan perangkat lunak dengan menggunakan
Unified Modelling Language (UML):
1. Buat daftar business process dari level tertinggi untuk mendefinisikan aktivitas
dan proses yang mungkin muncul.
2. Petakan use case untuk tiap business process untuk mendefinisikan dengan tepat
fungsionalitas yang harus disediakan oleh sistem. Kemudian perhalus use case
diagram dan lengkapi dengan requirement, constraints dan catatan-catatan lain.
22
3. Buat deployment diagram secara kasar untuk mendefinisikan arsitektur fisik
sistem.
4. Definisikan requirement lain (non-fungsional, security dan sebagainya) yang juga
harus disediakan oleh sistem.
5. Berdasarkan use case diagram, mulai membuat activity diagram.
6. Definisikan objek-objek level atas (package atau domain) dan buat sequence atau
collaboration diagram untuk tiap alir pekerjaan. Jika sebuah use case memiliki
kemungkinan alir normal dan error, buat satu diagram untuk masing-masing alir.
7. Buat rancangan user interface model yang menyediakan antarmuka bagi
pengguna untuk menjalankan skenario use case.
8. Berdasarkan model-model yang sudah ada, buat class diagram. Setiap package
atau domain dipecah menjadi hirarki class lengkap dengan atribut dan
metodanya. Akan lebih baik jika untuk setiap class dibuat unit test untuk menguji
fungsionalitas class dan interaksi dengan class lain.
9. Setelah class diagram dibuat, dapat dilihat kemungkinan pengelompokan class
menjadi komponen-komponen. Karena itu buat component diagram pada tahap
ini, juga definisikan tes integrasi untuk setiap komponen meyakinkan komponen
berinteraksi dengan baik.
10. Perhalus deployment diagram yang sudah dibuat. Detilkan kemampuan dan
requirement piranti lunak, sistem operasi, jaringan, dan sebagainya. Petakan
komponen ke dalam node.
11. Mulai membangun sistem. Ada dua pendekatan yang dapat digunakan:
a. Pendekatan use case, dengan meng-assign setiap use case kepada tim
pengembang tertentu untuk mengembangkan unit code yang lengkap dengan
tes.
23
b. Pendekatan komponen, yaitu meng-assign setiap komponen kepada tim
pengembang tertentu.