7
BAB II LANDASAN TEORI
2.1. PENDEKATAN BASIS DATA 2.1.1. Pengertian Basis Data Basis data adalah kumpulan berbagai data logika terkait dan deskripsi, yang dirancang untuk memenuhi kebutuhan informasi organisasi (Connolly dan Begg, 2010 : 65). Basis data adalah kumpulan data yang terorganisir dan secara logika berkaitan (Hoffer, 2009 : 46). Terorganisi rmaksudnya adalah data distrukturkan sehingga mudah untuk disimpan, dimanipulasi, dan diperoleh oleh pengguna. Data dapat menggambarkan daerah asal (domain) kepentingan tertentu bagi kelompok pengguna dan pengguna dapat menggunakan data tersebut untuk menjawab pertanyaan seputar domain tersebut. Sistem basis data adalah suatu sistem yang pada dasarnya menyimpan record-record didalam suatu sistem yang dilakukan secara komputerisasi yang tujuannya secara keseluruhan adalah untuk menyimpan informasi dan untuk membuat informasi tersebut tersedia berdasarkan permintaan (C.J Date, 2000 : 5). Berbeda dengan sistem yang menyimpan data secara terpisah, pada basis data, data tersimpan secara terintegrasi. Basis data bukan menjadi milik suatu departement, tetapi sebagai sumber daya perusahaan yang dapat digunakan bersama.
2.1.2. Sistem Manajemen Basis Data (DBMS) Sistem manajemen basis data adalah sebuah system perangkat lunak yang dapat memungkinkan pemakai untuk mendefinisikan, membuat, dan memelihara database dan menyediakan control akses untuk database tersebut (Connolly danBegg, 2010 : 66).
8 Sistem manajemen basis data adalah perangkat lunak khusus yang digunakan untuk membuat, mengontrol, dan mengelolah sebuah basis data (Jeffery L. Whitten, 2004 : 520). DBMS berinteraksi dengan program aplikasi pemakai dan basis data. Adapun komponen lingkungan DBMS menurut Connolly (2010 : 68), terdiri atas: 1.
Hardware Untuk menjalankan DBMS dan aplikasi. Berupa personal
komputer, mainframe, dan jaringan komputer. Untuk menjalankan DBMS memerlukan kecepatan memori dan kapasitas harddisk tertentu.
2.
Software Software mencakup DBMS, program aplikasi, dan sistem operasi.
3.
Data Penghubung antar komponen mesin (Hardware dan Software)
dengan komponen manusia (prosedur dan user).
4.
Prosedure Instruksi dan aturan yang mengatur perancangan dan penggunaan
basis data.
5.
User Ada beberapa jenis atau tipe pemakai pada sistem basis data,
berdasarkan cara mereka berinteraksi pada basis data, diantaranya adalah : •
Programmer aplikasi
Pemakai yang berinteraksi dengan basis data melalui DML (Data Manipulation Language), yang disertakan dalam
9 program yang ditulis dalam bahasa pemrograman induk (seperti pascal, cobol, clipper, foxpro, dan lainnya). •
User Mahir (Casual User)
Pemakai yang berinteraksi dengan sistem tanpa menulis modul program. Mereka menyatakan query (untuk akses data), dengan bahasa query yang telah disediakan oleh suatu DBMS. •
User Umum (End User)
Pemakai yang berinteraksi dengan sistem basis data melalui pemanggilan satu program aplikasi permanen, yang telah ditulis atau disediakan sebelumnya. •
User Khusus (Specialized User)
Pemakai yang menulis aplikasi basis data non konvensional untuk keperluan khusus, seperti untuk aplikasi AI, sistem pakar, pengolahan citra, dan lain-lain yang bisa saja mengakses basis data dengan atau tanpa DBMS.
2.1.1. Database Language 2.1.1.1. Data Definition Language (DDL) Data Definition Language adalah sebuah bahasa yang mengizinkan Database Administrator (DBA) atau pengguna untuk menjelaskan dan memberikan Deskripsi ke entitas-entitas, atributatribut dan relasi yang diperlukan untuk aplikasi, bersama pula dengan kendala keamanan dan integritas yang berhubungan.
2.1.1.2. Data Manipulation Language (DML) Data Manipulation Language adalah sebuah bahasa yang menyediakan
operasi-operasi
untuk
mendukung
operasi
pemanipulasian data pada data yang berada di basis data, diantaranya
10 yaitu, penyisipan data baru, pemodifikasian data, pemanggilan data dan penghapusan data dalam basis data. Terdapat dua tipe DML, yaitu: Procedural DML, dan NonProcedural DML. Secara garis besar perbedaan diantara dua tipe Data Manipulation
Language
tersebut
adalah,
Procedural
DML
menspesifikasikan bagaimana hasil dari sebuah pernyataan DML diperoleh, sedangkan Non-Procedural DML hanya menjelaskan hasil yang akan diperoleh.
2.1.2. Fourth Generation Language (4GL) Fourth Generation Language adalah bahasa pemrograman non procedural yang lebih sederhana dibandingkan bahasa pemrograman generasi ketiga (3GL). Beberapa jenis 4GL menurut Connolly (2010 : 42) :
1.
Forms Generators
Merupakan fasilitas interaktif untuk membuat form input data dan tampilannya. Mendefinisikan desain tampilan, informasi apa yang disajikan, komponen warna pada layar dan karakteristik lainnya.
2.
Report Generators
Membuat laporan
(report) yang datanya
diambil dari basis data.
Memungkinkan user untuk mengambil data yang diperlukan untuk laporan. Lebih menekankan pada rancangan output, yaitu bagaimana suatu laporan akan disajikan.
3.
Graphics Generators
Digunakan untuk mengambil data dari basis data, dan menampilkannya dalam bentuk grafik, seperti : bar chart, pie chart, line chart, dan lainnya.
11 4.
Application Generators
Fasilitas untuk menghasilkan program yang berhubungan dengan data, menentukan bagaimana menampilkan fungsi-fungsi.
2.1.5. Siklus Hidup Aplikasi Basis Data Untuk merancang aplikasi sistem basis data diperlukan beberapa tahapan terstruktur yang harus di ikuti dan di deskripsikan dengan siklus hidup aplikasi data atau database system development lifecycle. Atau di singkat dengan SDLC. Di karenakan sistem basis data adalah komponen dasar dalam sistem informasi organisasi yang lebih besar dan luas, daur hidup aplikasi basis data berkembang terhubung dengan daur hidup sistem informasi. Menurut Connolly dan Begg (2010 : p314), database system development lifecycle adalah:
12
Gambar 2.1. Database System Development Lifecycle (Sumber : Connolly dan Begg, 2010 : 314)
13 2.1.5.1. Database Planning Database
planning
adalah
aktifitas
manajemen
yang
memungkinkan tahap siklus hidup sistem aplikasi basis data yang akan direalisasikan secara se-efisien dan se-efektif mungkin (Conolly dan Begg, 2010 : 313). Terdapat 3 hal pokok yang berkaitan dengan strategi sistem informasi, yaitu: 1. Indentifikasi rencana dan sasaran dari enterprise termasuk mengenai sistem informasi yang di butuhkan. 2. Evaluasi sistem informasi yang ada untuk menetapkan kelebihan dan kekurangan yang dimiliki. 3. Penilaian kesempatan IT yang mungkin memberikan keuntungan kompetitif. Database
planning
harus
menyertakan
pengembangan
standar-standar yang menentukan bagaimana data dikumpulkan, bagaimana menspesifikasikan bentuk data, dokumentasi penting apakah yang akan di butuhkan dan bagaimana desain dan implementasi harus dilakukan.
2.1.5.2. System Definition System Definition adalah menentukan ruang lingkup dan batasan dari aplikasi basis data, termasuk pandangan user, dan daerah aplikasi basis data (Connolly dan Begg, 2010 : 316). Pandangan user mendefinisikan apa yang dibutuhkan pada sebuah aplikasi basis data dari sudut pandang sebuah jabatan tertentu atau daerah aplikasi basis data. Sebuah aplikasi basis data dapat memiliki satu atau lebih pandangan user.
2.1.5.3. Requirement Collection dan Analysis Requirement collection dan analysis yaitu sebuah proses mengumpulkan dan menganalsis informasi mengenai bagian-bagian dari sebuah organisasi yang di dukung oleh aplikasi basis data, dan
14 menggunakan informasi tersebut untuk medefinisikan kebutuhan user akan sistem yang baru (Connolly dan Begg, 2010 : 317). Ada 3 pendekatan untuk mengatur kebutuhan dari sebuah aplikasi basis data dengan banyak pandangan user, yaitu: 1. The Centralized Approach 2. The view integration Approach 3. A Combination Of Both Approach
Ada beberapa teknik untuk mengumpulkan informasi ini disebut Fact finding, (Connolly dan Begg, 2010 : 317), yaitu: a. Dokumentasi b. Interview c. Observasi d. Riset e. Kuisioner
2.1.5.4. Database Design Database design adalah suatu proses membuat suatu desain yang akan mendukung pernyataan misi perusahaan dan tujuan misi untuk sistem basis data yang diperlukan, (Connolly dan Begg, 2010 : 320). Ada 3 tahap utama perancangan basis data, yaitu: 1. Perancangan basis data konseptual 2. Perancangan basis data logikal 3. Perancangan basis data fisikal
2.1.5.5. DBMS Selection (Optional) Pada tahap ini dilakukan pemilihan DBMS yang sesuai dan mendukung aplikasi basis data. Tahapan dalam memilih DBMS yang tepat, (Connolly dan Begg, 2010:325), yaitu:
15 1. Mendefinisikan syarat-syarat sebagai referensi. Untuk menentukan tujuan dan ruang lingkup dari pembelajaran dan tugas yang harus di kerjakan.
2. Daftar singkat dari dua atau tiga produk. Kriteria
yang
di
perlukan
untuk
keberhasilan
dokumentasi menghasilkan produk DBMS seperti dana yang tersedia, tingkat dukungan vendor, dan lainnya.
3. Mengevaluasi produk-produk. Tujuan dari evaluasi, menggabungkan beberapa
fitur
menjadi sebuah kelompok.
4. Merekomendasikan pilihan dan membuat laporan. Mendokumentasikan
proses
dan
menghasilkan
pernyataan akan penemuan dan rekomendasi dari produk DBMS tertentu.
2.1.5.6. Application Design Application Design adalah desain user interface dan program aplikasi yang digunakan untuk memproses basis data, (Connolly dan Begg, 2010 : 329). Rancangan aplikasi dibagi menjadi 2 aspek yaitu: 1. Transaction design (Rancangan transaksi) Suatu tindakan, atau serangkaian tindakan yang dilakukan oleh singel user atau program aplikasi, yang mengakses atau merubah isi basis data. Ada 3 tipe transaksi, yaitu : -
Retrieval transactions
-
Update transactions
-
Mixed transactions
16 2. User interface design guidelines -
Meaningful tittle
-
Comprehensive instruction
-
Familiar field tables
-
Consistent use coler
-
Error message for fields
-
Completion signal
2.1.5.7. Prototyping (Optional) Prototyping adalah membangun suatu model kerja dari aplikasi basis data, (Connolly dan Begg, 2010 : 333). Langkah ini mengijinkan perancang dan user untuk memvisualisasikan dan mengevaluasi
gambaran
sistem
secara
menyeluruh.
Jika
memungkinkan user dapat memberikan saran untuk mengadakan perbaikan atau bahkan fitur baru dalam aplikasi data tersebut.
2.1.5.8. Implementation Implementasi merupakan relasi fisik dari basis data dan perancangan aplikasi (Connolly dan Begg, 2010 : 333). Implementasi basis data dilakukan dengan menggunakan data definition language (DDL) dari DBMS yang terpilih. Bagian dari program ini merupakan transaksi-transaksi
basis
data
yang
diimplementasikan
data
manipulation language (DML).
2.1.5.9. Data Conversion and Loading Data Conversion and Loading adalah mentransferkan beberapa data yang ada ke dalam basis data yang baru dan mengkonversikannya
ke
beberapa
aplikasi
yang
ada
untuk
menjalankannya pada basis data baru tersebut, (Connolly dan Begg, 2010 : 334). Langkah ini dibutuhkan hanya pada waktu sistem basis data yang lama diganti dengan sistem basis data yang baru. Jika bisa
17 diterapkan, pengembang dapat mengubah dan menggunakan program aplikasi dari sistem yang lama untuk digunakan oleh sistem yang baru.
2.1.5.10.Testing Testing adalah proses menjalankan sistem basis data dengan maksud menemukan kesalahan, (Connolly dan Begg, 2010 : 334). Pengujian juga harus mencakup kegunaan dari sistem basis data dan evaluasi harus di lakukan terhadap spesifikasi kegunaannya.
2.1.5.11.Operational Maintenance Operational maintanace adalah proses pemantauan dan pemelilharaan instalasi sistem basis data, (Connolly dan Begg, 2010 : 335). Tahap pemeliharaan ini melibatkan 2 kegiatan yaitu : 1. Me-monitor kemampuan dari sistem. Jika kemampuan berada di bawah tingkat standar, perbaikan basis data diperlukan. 2. Memelihara dan meningkatkan aplikasi basis data. Kebutuhan baru disatukan kedalam aplikasi basis data melalui tahap-tahap sebelumnya dari siklus hidup.
2.1.6. Entity Relationship Modeling (ER Model) ER Model adalah pendekatan top-down untuk merancang basis data yang diawali dengan mengidentifikasi data penting yang disebut entitas dan relasi antar data yang harus diwakili dalam model tersebut, (Connolly dan Begg, 2010 : 371).
2.1.6.1. Entity Types Sekelompok
objek
dengan
sifat
yang
sama,
yang
diidentifikasi oleh perusahaan memiliki eksistensi yang independen, (Connolly dan Begg, 2010 : 372). Konsep dasar ER Model adalah tipe
18 entitas, yang mewakili sekelompok ‘benda’ di ‘dunia nyata’ dengan sifat yang sama.
2.1.6.2. Relationship Types Sebuah set asosiasi yang bermakna antar jenis entitas, (Connolly dan Begg, 2010 : 374). Sebuah tipe relasi adalah set asosiasi antara satu atau lebih partisipasi tipe-tipe entitas. Seperti tipe-tipe entitas
dan
entitas-entitas,
perlu
membedakan
antara
istilah
“relationship type” dan “relationship occurance”.
Derajat dari tipe relasi terbagi tiga :
1. Binary Relasi berderajat dua
POwns
PrivateOwner
PropertyForRent
Gambar 2.2. Relasi Berderajat Dua (Sumber : Connolly dan Begg, 2010 : 374)
19 2. Ternary Relasi berderajat tiga
Register
Staff
Branch
Client
Gambar 2.3. Relasi Berderajat Tiga (Sumber : Connolly dan Begg, 2010 : 374)
3. Quartenary Relasi berderajat empat
Client
Staff
Register
Client
Gambar 2.4. Relasi Berderajat Empat (Sumber : Connolly dan Begg, 2010 : 375)
Branch
20 2.1.6.3. Attribut Attribut adalah sebuah properti dari entitas atau tipe relasi, (Connolly dan Begg, 2010 : 379). Atribut dapat diklasifikasi menjadi: 1. Simple and Composite Attributes Sebuah atribut yang terdiri dari komponen tunggal dengan keberadaan independen.
2. Single-Valued and Multi-Valued Attributes Sebuah atribut yang memegang nilai tunggal untuk setiap kemunculan suatu entitas.
3. Derived Attributes Sebuah atribut mewakili nilai yang diturunkan dari nilai atribut terkait atau sekumpulan atribut, belum tentu dalam tipe entitas yang sama.
2.1.6.4. Keys Menurut keys dibagi menjadi 5 jenis, (Connolly dan Begg, 2010 : 381), yaitu : 1. Candidate Keys Set atribut minimal yang secara unik mengidentifikasi setiap kemunculan dari tipe entitas.
2. Primary keys Sebuah candidate key yang dipilih untuk mengidentifikasi secara unik, tiap kejadian pada sebuah tipe entitas.
3. Composite keys Sebuah candidate key yang terdiri dari dua atau lebih atribut.
21 4. Alternate keys Candidate key yang tidak terpililh menjadi primary key, atau biasa disebut secondary key.
5. Foreign key Himpunan atribut dalam suatu relasi yang cocok dengan candidate key dari beberapa relasi lainnya.
2.1.6.5. Structural Constraints Structural
constrain
adalah
hambatan
yang
harus
mencerminkan pembatasan pada hubungan seperti yang dirasakan di ‘dunia nyata’, (Connolly dan Begg, 2010 : 385). Tipe utama dari constraints pada relasi disebut multiplicity. Multiplicity adalah jumlah dari kejadian yang mungkin, dari suatu entitas yang berelasi dengan suatu kejadian tunggal sebuah entitas dan terkait suatu relasi tertentu. Multiplicity terdiri atas 3 binary, yaitu: • Relasi 1 : 1 (one-to-one) yaitu relasi antar dua tipe entitas dimana satu tipe entitas berelasi tepat satu atau nol dengan tipe entitas lainnya. • Relasi 1 : * (one-to-many) yaitu relasi antar dua tipe entitas dimana satu tipe entitas berelasi nol, satu atau banyak dengan tipe entitas lainnya. • Relasi * : * (many-to-many) yaitu relasi antar dua tipe entitas dimana tipe entitasnya saling berelasi nol, satu atau banyak.
22
Gambar 2.5. Contoh Tipe Relationship pada Binary (Sumber : Connolly dan Begg, 2010:314)
4. Cardinality dan Participation Constraint -
Cardinality mendeskripsikan jumlah maksimum dari kemungkinan
kejadian-kejadian
yang
saling
berhubungan untuk sebuah partisipasi entitas dalam proses penentuan tipe relationship. -
Participation adalah menentukan apakah semua kejadian-kejadian entitas akan ikut berpartisipasi dalam sebuah relationship atau hanya beberapa saja yang ikut berpartisipasi.
23
Gambar 2.6. Cardinality dan Participation (Sumber : Connolly dan Begg, 2010:387)
24 2.1.7. Metodologi Perancangan Basis Data Perancangan basis data adalah proses membuat suatu desain yang akan mendukung pernyataan misi perubahan dan misi objek untuk kebutuhan sistem basis data, (Connolly dan Begg, 2010 : 320). Dalam perancangan basis data ada 3 tahapan yang diperlukan guna mendapatkan sebuah basis data yang diinginkan.
2.1.7.1. Perancangan Basis Data Konseptual Perancangan basis data konseptual adalah untuk memproses pembuatan suatu model dari informasi yang akan digunakan dalam suatu organisasi, yang tidak tergantung pada segala pertimbangan fisikal, (Connolly dan Begg, 2010 : 467). Langkah 1 : Membuat data konseptual lokal untuk setiap bagian. Tujuan dari langkah ini adalah untuk membangun suatumodel data konseptual dari perusahaan untuk setiap viewyang spesifik. 1.1. : Mengidentifikasi jenis entitas. Dalam membangun suatu model data konseptual lokal adalah untuk mendefinisikan objek utama di mana user memang membutuhkannya. 1.2. : Mengidentifikasi tipe relasi. Tujuan dari langkah ini mengidentifikasi relasi yang penting
antara
berbagai
tipe
entity
yang
telah
diidentifikasikan. 1.3. :Mengidentifikasi dan mengasosiasikan atribut suatu entity atau tipe relasi. Tujuannya
untuk
mengidentifikasikan
dan
mengasosiasikan atribut dari entity atau tipe relasi. 1.4. : Menentukan domain atribut. Tujuannya untuk menentukan domain dari atribut yang ada didalam model data konseptual lokal.
25 1.5. : Menentukan candidat key, primary key. Tujuannya untuk mengidentifikasikan candidat key dari setiap tipe entity, dan jika memang terdapat lebih dari satu candidat key, pilihlah salah satunya untuk menjadi primary key. 1.6. : Menggunakan enchanced modeling concepts (langkah optional) Tujuannya
untuk
mempertimbangkan
penggunaan
enchanced modeling concepts, seperti specialization, generalization, aggregation, dan composition. 1.7. : Memeriksa redudansi. Tujuannya untuk memeriksa apakah ada redundancy dalam model basis data. 1.8. : Validasi model konseptual lokal dengan transaksi user Tujuannya untuk memastikan model konseptual lokal mendukung permintaan transaksi oleh user. 1.9. : Memeriksa model data konseptual lokal dengan user Tujuannya untuk memeriksa model data konseptual lokal bersama user untuk memastikan bahwa model yang ada sudah sesuai dengan yang diminta.
26
Gambar 2.7. Contoh Perancangan Basis Data Konseptual (Sumber : Connolly dan Begg, 2010:480)
27 2.1.7.2. Perancangan Basis Data Logikal Perancangan basis data logikal adalah proses pembuatan suatu model informasi yang di gunakan dalam suatu organisasi berdasarkan model data yang spesifik tetapi tidak bergantung pada suatu DBMS, dan perangkat keras lainnya, (Conolly dan Begg, 2010 : 467). Langkah2: Membuat dan memvalidasi model data logikal lokal untuk setiap bagian. Tujuannya adalah untuk membangun suatu model data logikal
dari
suatu
mempresentasikan
model
data
perusahaan
konseptual dan
yang
kemudian
memvalidasi model ini untuk memastikan strukturnya benar,
dan
memastikan
bahwa
model
tersebut
mendukung transaksi yang di minta. 2.1.
: Menghilangkan fitur tidak kompatibel Tujuannya untuk membangun suatu relasi model data logikal yang mempresentasikan suatu entity, relasi, dan juga atribut yang telah diidentifikasi.
2.2.
: Validasi model menggunakan normalisasi Tujuannya untuk memvalidasi relasi dalam model data logikal dengan menggunakan teknik normalisasi.
2.3.
: Validasi relasi terhadap transaksi user Tujuannya untuk memastikan bahwa relasi di dalam model data logikal mendukung transaksi yang diminta user.
2.4.
: Mendefinisikan kendala Integrity Tujuannya adalah untuk mendefinisikan batasan-batasan integritas yang di perlihatkan kepada user, dimana kontrol integritas mengandung batasan-batasan yang dapat di terapkan untuk mencegah basis data menjadi tidak konsisten
2.5.
: Me-review model data logikal lokal dengan user
28 Tujuannya adalah untuk memastikan model data logikal dan dokumentasi yang mendeskripsikan model tersebut sebagai representasi yang sesuai dengan keadaan yang sebenarnya. 2.6.
: Menggabungkan model data logikal menjadi model global (Optional). Tujuannya untuk menggabungkan model-model data logikal lokal individual menjadi sebuah model data logikal global yang merepresentasikan perusahaan.
2.7.
: Memeriksa untuk pertumbuhan ke masa yang akan datang Tujuannya untuk menentukan apakah ada perubahan yang penting di masa yang akan datang dan untuk menilai apakah model data logikal global dapat mengakomodasi perubahan tersebut.
29
Gambar 2.8. Contoh Perancangan Basis Data Logikal (Sumber : Connolly dan Begg, 2010:516)
30 2.1.7.3. Perancangan Basis Data Fisikal Perancangan basis data fisikal adalah suatu proses untuk menghasilkan gambaran dari implementasi basis data pada tempat penyimpanan, menjelaskan dasar dari realasi, organisasi file, indeks yang di gunakan untuk efisiensi data, dan menghubungkan beberapa integrity constraints dan tindakan keamanan, (Conolly dan Begg, 2010 : 521). Langkah 3 : Menerjemahkan model data logikal ke DBMS (Database Management Sistem) Tujuannya untuk menghasilkan skema basis data relational dari model data logikal yang dapat di implementasikan pada DBMS pilihan. 3.1. : Mendesain relas dasar Tujuannya
untuk
merepresentasikan
relasi
memutuskan dasar
yang
bagaimana telah
di
identifikasikan dalam model data logikal pada DBMS pilihan. 3.2. : Merancang representasi derived data. Tujuannya memutuskan bagaimana merepresentasikan semua data turunan pada model data logikal DBMS pilihan. 3.3. : Merancang general constraints Tujuannya untuk merancang batasan umum pada DBMS pilihan.
Langkah 4 : Desain organisasi file dan index Tujuannya menentukan pengorganisasian file yang optimal untuk menyimpan relasi-relasi dasar dan indeksindeks yang diperlukan untuk mencapai performansi yang diinginkan, yaitu cara penyimpanan relasi-relasi dan tuples pada media penyimpanan sekunder.
31 4.1. : Menganalisis transaksi Tujuannya untuk mengerti fungsi dari suatu transaksi yang mana akan dijalankan pada basis data dan untuk menganalisis transaksi yang penting. 4.2. : Memilih organisasi file Tujuan dari langkah ini adalah untuk menentukan organisasi file yang efektif untuk setiap relational data. 4.3. : Memilih indeks Tujuan dari memilih indeks menentukan penambahan indeks yang akan meningkatkan performance dari suatu sistem. 4.4. : Memperkirakan kapasitas penyimpanan yang dibutuhkan Tujuannya untuk mengestimasi ukuran kapasitas disk yang di perlukan untuk basis data. Langkah 5 : Desain pandangan pengguna Tujuan dari langkah ini adalah untuk merancang user view yang diidentifikasi selama pengumpulan informasi dan analisis dari siklus hidup aplikasi basis data. Langkah 6 : Desain mekanisme keamanan Tujuannya adalah untuk merancang ukuran keamanan untuk basis data yang telah dispesifikasikan user.
2.1.8. Normalisasi Normalisasi adalah sebuah teknik untuk memproduksi sekumpulan relasi dengan sifat yang diinginkan yang diberikan persyaratan data dari suatu perusahaan, (Connolly dan Begg, 2010 : 416). Unnormalized Form (UNF) adalah suatu tabel yang terdiri dari satu atau lebih kelompok yang berulang (repeating group) (Connolly dan Begg, 2010:430). Repeating group adalah sebuah atribut atau himpunan atribut di dalam tabel yang memiliki lebih dari satu nilai untuk sebuah primary key pada tabel tersebut.
32 Proses normalisasi terdiri dari 3 tahap yaitu: 1.
First Normal Form (1NF) Dikatakan 1NF jika atribut setiap baris dan kolom mengandung
satu nilai. 1NF akan terjadi pada sebuah relasi repeating group-nya yang sudah hilang. Ada dua cara untuk menghilangkan repeating group pada tabel yang tidak normal, yaitu : -
Dengan memasukan data ke dalam kolom yang kosong dari baris yang mengandung data yang berulang.
-
Dengan menempatkan data yang berulang bersama dari atribut kunci pada relasi yang terpisah.
2.
Second Normal Form (2NF) Dikatakan 2NF jika relasi pada 1NF dan setiap atribut yang bukan
primary key fungsional sepenuhnya tergantung pada primary key. Normalisasi 1NF berhubungan dengan 2NF melibatkan penghapusan dependency parcial.
3.
Third Normal Form (3NF) Dikatakan 3NF jika relasi berada dalam bentuk 1NF dan 2NF serta
tidak ada atribut yang bukan primary key bergantung secara transitif terhadap primary key. Normalisasi 2NF berhubungan dengan 3NF melibatkan penghapusan dependency transitif.
33 2.2. TOOLS YANG DIGUNAKAN 2.2.1. Diagraming Tool 2.2.1.1.
Flowchart Flowchart adalah standar yang digunakan oleh analisis sistem
untuk memggambarkan suatu sistem tertentu (Mulyadi, 2001:60). Simbol-simbol yang terdapat dalam flowchart adalah :
Deskripsi Input / output
Simbol
Arti Mempresentasikan input data yang diproses dan output data yang telah diproses.
Proses (proccess)
Mempresentasikan operasi
Anak
Mempresentasikan alur kerja
panah
(arrow) Keputusan
Keputusan dalam program
(decision)
Sub
program
(Predefined
Rincian
operasi
berada
ditempat lain
Proccess) Persiapan
Pemberian harga awal
(Preparation) Titik
terminal
(Terminal point)
Awal atau akhir flowchart
34 Dokumen
Input
dan
(Document)
format yang dicetak
Tampilan
Input
(Display)
ditampilkan dimonitor
Penghubung
Penghubung
(Connector)
flowchart dihalaman lain
Manual input
Input yang dimasukkan secara
atau
output
dalam
output
yang
bagian-bagian
manual dari keyboard
Operasi
manual
Operasi secara manual
(manual operation) Punched tape
Input
atau
menggunakan
output
yang
pita
kertas
berlubang.
Table 2.1. Simbol Flowchart
2.2.1.2.
Data Flow Diagram (DFD) Data flow diagram adalah alat yang menggambarkan aliran
data melalui sistem dan kerja atau pengolaha yang dilakukan oleh sistem tersebut (Whitten dan Bentley, 2007:317). Terdapat 3 simbol dan satu koneksi DFD yaitu:
35
GAMBAR
DESKRIPSI
KETERANGAN Mendefinisikan
seseorang,
sebuah unit organisasi, sistem lain, atau organisasi lain yang Agen Eksternal
berada
di
proyek
luar
tetapi
jangkauan berinteraksi
dengan sistem yang sedang dipelajari.
Data Stores
Inventaris
dari
disimpan
untuk
data
yang
keperluan
mendatang. Sinonimnya adalah file dan database.
Pekerjaan yang dilakukan pada, atau sebagai respon kepada Proses
aliran data yang datang atau kondisi.
Sinonimnya
yaitu
transform. Mempresentasikan
sebuah
input data ke proses atau output data dari proses. Sebuah aliran Aliran Data
data juga digunakan
untuk
mempresentasikan pembuatan, penghapusan, atau update data pada file atau database.
Table 2.2. Simbol Data Flow Diagram (DFD)
36 DFD dibagi menjadi tiga yaitu : 1. Diagram Konteks Merupakan
tingkatan
paling
pertama
yang
menggambarkan ruang lingkup dari sistem yang akan dijalankan. Diagram ini hanya memiliki satu proses yang menggambarkan sistem secara keseluruhan dan hubungan antar sistem dengan unit-unit diluar sistem tersebut.
2. Diagram Nol Diagram yang menggambarkan proses-proses aliran data yang terjadi di dalam suatu sistem. Proses-proses ini dapat dipecah menjadi proses-proses dan aliran data yang lebih terperinci.
3. Diagram Rinci Diagram yang menggambarkan rincian proses-proses yang ada pada diagram nol dan proses-proses ini dapat dipecah lagi menjadi proses-proses yang lebih terperinci.
2.2.1.3.
Entity Relationship Diagram (ERD) Simbol-simbol
yang
terdapat
pada
kardinalitas
entity
relationship diagram (ERD) adalah :
Simbol
Arti Satu dan hanya satu (one and only one)
37 Satu atau lebih (one or more)
Tidak ada atau lebih (zero or more)
Tidak ada atau satu (zero or one)
Table 2.3. Simbol Entity Relationship Diagram (ERD)
2.2.1.4.
State Transition Diagram (STD) State transition diagram adalah suatu diagram yang
menggambarkan bagaimana suatu proses dihubungkan satu sama lain dalam waktu yang bersamaan, (Jeffery dan Lonnie, 2004:364). STD digambarkan dengan sebuah state yang merupakan komponen sistem yang menunjukan bagaimana kejadian-kejadian tersebut dari suatu state ke state lain. Ada
dua
macam
simbol
yang
digunakan
menggambarkan proses dalam STD yaitu :
1. Persegi panjang yang merupakan state dari sistem
untuk
38
Gambar 2.9. Simbol State Persegi Panjang dalam STD
2. Gambar panah menunjukan transisi antar state. Setiap panah diberi label dengan ekspresi aturan. Label yang diatas menunjukan kejadian yang menyebabkan transis terjadi. Label yang dibawah menunjukan aksi yang terjadi akibat kejadian tadi.
Gambar 2.10. Simbol State Panah dalam STD
2.2.1. Software Tool 2.2.1.5.
SQL Server Management Studio SQL server management studio adalah program yang dibuat
oleh mikrosoft untuk membantu pengguna maupun admin dalam melakukan tugas-tugas yang berhubungan dengan server basis data (Wahana Komputer, 2010:40). SQL server adalah sistem manajemen basis data relational (RDBMS) yang dirancang untuk aplikasi dengan arsitektur client/server. System client server dirancang untuk memisah layanan basis data dari client, dengan penghubungnya menggunakan jalur komunikasi data.
39
Gambar 2.11. SQL Server Management Studio
2.2.1.6.
Visual Basic .Net (VB .Net) VB .Net adalah berorientasi kepada objek bahasa dengan fitur
penting, (Schlesinger, 2008:2). Selain itu, VB .Net memiliki lingkungan pengembangan
interaktif
yang
menyederhanakan
pengembangan
bentuk-bentuk windows untuk ditampilkan dilayar. VB .Net adalah generasi selanjutnya dari Visual Basic. Visual Basic .Net memungkinkan kita untuk membangun aplikasi basis data client/server performance tinggi dan sangat cocok didampingkan dengan perangkat lunak SQL Server (Junindar, 2008:3).
40
Gambar 2.12. Visual Basic. Net
2.3. TERMINOLOGI DALAM SISTEM AKUTANSI 2.3.1. Akutansi Pengertian
akutansi
adalah
proses
pencatatan,
pengelompokan,
pengikhtisaran kejadian-kejadian ekonomi dalam bentuk yang teratur dan logis dengan tujuan menyajikan informasi keuangan yang dibutuhkan untuk pengambilan keputusan (Arens dan Loebbecke, 2003 : 3). Akuntansi adalah bahasa bisnis sementara pelaporan keuangan adalah media di mana bahasa tersebut dikomunikasikan. Akuntansi dan pelaporan keuangan yang diatur oleh Generally Accepted Accounting Principles (GAAP) terdiri dari standar akuntansi, hukum perusahaan, peraturan pasar modal, dan sebagainya (IKPEFAN, 2012). Kesenjangan antara pendidikan akuntansi dan praktik akuntansi tidak hanya ditemukan dalam Akuntansi Keuangan tetapi juga hadir dalam Akuntansi Manajemen. Akuntan manajemen modern perlu perencanaan yang lebih strategis dan berkesinambungan proses perbaikan keterampilan. Namun, kursus manajemen akuntansi yang paling terus berkonsentrasi pada proses biaya dan pelaporan varians. Ada sehingga kebutuhan untuk memanggil pendidik akuntansi untuk merestrukturisasi konten mereka untuk memastikan bahwa mereka menyediakan lulusan dengan keterampilan akuntansi manajemen yang relevan. (Ayeboafo, 2012).
2.3.2. Sistem Akutansi
41 Sistem akutansi adalah organisasi formulir, catatan, dan laporan yang dikoordinasi sedemikian rupa untuk menyediakan informasi keuangan yang dibutuhkan oleh manajemen guna memudahkan pengelolaan perusahaan (Mulyadi, 2001: 3). Akuntansi bertujuan, sebagai sistem informasi, untuk menyediakan berbagai pengguna dengan berbagai bentuk yang berguna informasi untuk memenuhi berbagai kebutuhan mereka. Oleh karena itu, akuntansi berusaha untuk
mengambil
keuntungan
dari
sekitarnya
situasi
dalam
rangka
meningkatkan kualitas dan kuantitas informasi dan mekanisme pengiriman ke pengguna. (Alzoubi, 2011). Mengenai e-akuntansi sistem informasi sangat penting untuk berbagai unit bisnis, terutama di masyarakat sektor. Seperti e-sistem yang digunakan dan diterapkan dalam unit ekonomi yang berbeda di seluruh dunia, sektor pemerintah, oleh karena itu, diperlukan untuk mengembangkan sistem akuntansi untuk menggunakan IT dan e-pemerintah untuk mengambil keuntungan dari elektronik sistem yang ditandai dalam kecepatan, akurasi, dan penyediaan informasi yang tepat bagi pemerintah manajemen keuangan. (alkasswna, 2012).
2.3.3. Sistem Informasi Akuntansi Sistem informasi akuntansi adalah suatu komponen organisasi yang mengumpulkan,
mengklasifikasikan,
mengolah,
menganalisa
dan
mengkomunikasikan informasi finansial dan pengambilan keputusan yang relevan bagi pihak luar perusahaan dan pihak ekstern. Menurut James A. Hall terdapat tiga tujuan utama yang umum bagi semua sistem (2001:18) : 1. Untuk mendukung fungsi kepengurusan (stewardship) manajemen. Kepengurusan
merujuk
ketanggungjawab
manajemen
untuk
mengatur sumber daya perusahaan secara benar. Sistem informasi menyediakan informasi tentang kegunaan sumber daya ke pemakai eksternal melalui laporan keuangan tradisional dan laporan-laporan
42 yang diminta lainnya. Secara internal, pihak manajemen menerima informasi kepengurusan dari berbagai laporan pertanggungjawaban. 2. Untuk mendukung pengambilan keputusan manajemen. Sistem informasi memberikan para manajer informasi yang mereka perlukan untuk melakukan tanggung jawab pengambilan keputusan. 3. Untuk
mendukung
kegiatan
operasi
perusahaan
hari
demi
hari. Sistem informasi menyediakan informasi bagi personel operasi untuk membantu mereka melakukan tugas mereka setiap hari dengan efisien dan efektif.
Fungsi penting yang dibentuk sistem informasi akuntansi pada sebuah organisasi atau perusahaan adalah mengumpulkan dan menyimpan data tentang aktivitas dan transaksi, memproses data menjadi informasi yang dapat digunakan dalam proses pengambilan keputusan, dan melakukan control secara tepat terhadap aset organisasi. Kejadia-kejadian
ini
menghasilkan
transaksi
yanng
dapat
dikelompokkan menjadi empat siklus aktifitas bisnis yang umum, yaitu : -
Siklus pendapatan
-
Siklus pengeluaran
-
Siklus produksi
-
Siklus keuangan
Fungsi penting yang dibentuk Sistem Informasi Akuntansi pada sebuah organisasi antara lain : •
Mengumpulkan dan menyimpan data tentang aktivitas dan transaksi.
•
Memproses data menjadi into informasi yang dapat digunakan dalam proses pengambilan keputusan.
•
Melakukan kontrol secara tepat terhadap aset organisasi.
43 •
Subsistem informasi akuntansi memproses berbagai transaksi keuangan dan transaksi nonkeuangan yang secara langsung memengaruhi pemrosesan transaksi keuangan.
Sistem Informasi Akuntansi terdiri dari 3 subsistem: •
Sistem pemrosesan transaksi mendukung proses operasi bisnis harian.
•
Sistem buku besar/ pelaporan keuangan menghasilkan laporan keuangan, seperti laporan laba/rugi, neraca, arus kas.
•
Sistem pelaporan manajemen.
Manfaat Sistem Informasi Akuntansi : •
Menyediakan informasi yang akurat dan tepat waktu sehingga dapat melakukan aktivitas utama pada value chain secara efektif dan efisien.
•
Meningkatkan kualitas dan mengurangi biaya produk dan jasa yang dihasilkan
•
Meningkatkan efisiensi
•
Meningkatkan kemampuan dalam pengambilan keputusan
•
Meningkatkan sharing knowledge.
•
Menambah efisiensi kerja pada bagian keuangan.
2.3.4. Fungsi-fungsi yang Terkait dalam Sistem Informasi Akutansi 2.3.4.1.
Jurnal Umum Jurnal merupakan akutansi pertama yang digunakan untuk
mencatat, mengklasifikasikan, dan meringkas data keuangan dan data lainnya (Mulyadi, 2001:4). Dalam jurnal ini data keuangan untuk
44 pertama kalinya diklasifikasikan menurut penggolongan yang sesuai dengan informasi yang akan disajikan dalam laporan keuangan.
2.3.4.2.
Buku Besar Buku besar (general ledger) terdiri dari rekening-rekening
yang digunakan untuk meringkas data keungan yang telah dicatat sebelumnya dalam jurnal (Mulyadi, 2001 : 4). Rekening-rekening dalam buku besar ini disediakan sesuai dengan unsur-unsur informasi yang akan disajikan dalam laporan keuangan. 2.3.4.3.
Neraca Saldo Sebelum di Sesuaikan Neraca Saldo adalah daftar yang berisi kumpulan seluruh
rekening atau perkiraan Buku Besar. Neraca Saldo biasanya disiapkan pada akhir periode atau dapat juga disiapkan kapan saja untuk memastikan keseimbangan Buku Besar. Untuk menyiapkan Neraca Saldo, saldo tiap perkiraan harus ditentukan terlebih dahulu. Neraca Saldo disusun untuk memastikan bahwa Buku Besar secara matematis akurat dengan pengertian bahwa jumlah saldo-saldo debet selalu sama dengan saldo-saldo kredit.
2.3.4.4.
Neraca Penyesuian Neraca penyesuaian adalah jurnal yang dibuat untuk
menyesuaikan saldo rekening-rekening ke saldo yang sebenarnya sampai dengan periode akuntansi, atau untuk memisahkan antara pendapatan dan beban dari suatu periode dengan periode yang lain. 2.3.4.5.
Neraca Lajur Neraca lajur adalah suatu kertas berkolom-kolom yang
dirancang untuk menghimpun semua data akuntansi yang dibutuhkan pada saat perusahaan akan menyusun laporan-laporan keuangan dengan cara yang sistematis.
45 2.3.4.6.
Report (Laporan Keuangan) Hasil akhir proses akuntansi adalah laporan keuangan yang
dapat berupa neraca, laporan rugi laba, laporan perubahan laba yang di tahan, laporan harga pokok produksi, laporan biaya pemasaran, laporan harga pokok penjualan, daftar umur Kas, daftar utang yang akan di bayar, daftar saldo persediaan yang lambat penjualannya (Mulyadi, 2001:5). Meningkatnya biaya dari masing-masing perusahaan yang pada gilirannya memiliki negatif berdampak pada keuntungan (indikator kinerja perusahaan). Internet informasi biaya penyebaran lebih murah daripada biaya yang terkait dengan dicetak laporan tahunan berbasis. (Agboola, 2012). Laporan berisi informasi yang merupakan keluaran sistem akuntansi. Laporan dapat berbentuk hasil cetak komputer dan tayangan pada layar monitor komputer.
2.3.5. Fitur yang Terdapat dalam Sistem Informasi Akutansi •
Daftar Akun
•
Jurnal Umum
•
Buku Besar
•
Neraca Saldo Sebelum di Sesuaikan
•
Neraca Penyesuaian
•
Neraca Lajur
•
Laporan Jurnal Umum
•
Laporan Neraca Saldo Sebelum di Sesuaikan
•
Laporan Neraca Lajur
•
Laporan Laba Rugi
2.3.6. Rumusan dalam Sistem Akutansi
46 Akuntansi yang kita kenal sekarang adalah akuntansi sistem berpasangan, yaitu setiap kali suatu sisi berubah, maka sisi lain juga berubah sebesar perubahan yang ada pada sisi lawannya. Rumus di bawah adalah rumus awal dan sekaligus rumus utama dalam akuntansi. Tanda “ = “ adalah pemisah sisi-sisi akuntansi. Sisi kiri disebut Debit, sisi Kanan disebut Kredit. Jika dinyatakan dalam Rumus akan seperti ini : Aset = Hutang + Modal Pendapatan dan Biaya adalah komponen yang mempengaruhi Modal. Jika Pendapatan lebih besar dari Biaya, maka kondisi ini disebut Laba. Jika kondisi sebaliknya yang terjadi, maka disebut Rugi. Laba atau rugi ini yang akan mempengaruhi Modal. Jika dinyatakan dalam rumus maka akan seperti ini: Aset = Hutang + Modal + Laba (Rugi) Sementara Laba (Rugi) diperoleh dari : Laba (Rugi) = Pendapatan – Biaya (Tanda Kurung menunjukkan Negatif) Jika rumus Laba (Rugi) dimasukkan dalam Persamaan Akuntansi, maka akan nampak seperti ini : Aset = Hutang + Modal + Pendapatan – Biaya ↔ Aset + Biaya = Hutang + Modal + Pendapatan Persamaan di atas inilah yang menjadi dasar semua pencatatan dalam ilmu akuntansi. Kelompok Aset dan Biaya ; bila terjadi penambahan pada kelompok ini, maka dicatat di sisi Debit dan sebaliknya jika terjadi pengurangan maka dicatat di sisi Kredit.
47 Kelompok Hutang, Modal, Pendapatan: Jika terjadi Penambahan pada kelompok ini, maka dicatat di sisi kredit dan sebaliknya jika terjadi pengurangan dicatat di sisi Debit. Persamaan ini juga memiliki arti sebagai berikut : - Jika salah satu komponen dalam sisi kiri (Debit) bertambah, maka kemungkinannya di sisi lain adalah : Ada komponen lain dalam sisi kanan (Kredit) juga bertambah, atau Ada komponen lain dalam sisi kiri (Debit) yang berkurang. - Hal di atas berlaku untuk kondisi sebaliknya. Persaman ini pula menunjukkan saldo normal dari sebuah akun. Jika rekening tersebut berada di sisi kiri, maka saldo rekening idealnya adalah Debit, begitupun sebaliknya. Berdasarkan rumusan di atas, maka rekening/akun dalam akuntansi dibagi dalam 5 kelompok besar, yaitu Aset, Hutang, Modal, Pendapatan, dan Biaya. Kelompok besar ini dibagi lagi dalam berbagai sub kelompok.