9 BAB 2 LANDAS AN TEORI 2.1 Teori-teori Dasar / Umum 2.1.1 Pengertian Data Data merupakan jembatan yang menghubungkan komponen mes in dengan komponen manusia. (Connolly dan Begg, 2005, p20) 2.1.2 Pengertian Sistem Sistem adalah jangkauan dan batasan dari sebuah sistem database termasuk pandangan umum dari user, user itu sendiri, dan area aplikasi. (Connolly dan Begg, 2005, p285) 2.1.3 Pengertian Basis Data Basis data adalah sekumpulan relasi data logika, dan deskripsi dari data, didesain untuk memenuhi kebutuhan organisasi. (Connolly dan Begg, 2005, p15) 2.1.4 Pengertian Sistem Basis Data Sistem basis data adalah sekumpulan aplikasi program yang berinteraksi dengan database melalui DBM S dan database itu sendiri. (Connolly dan Begg, 2005, p4) 2.1.5 Entity Relationship Modelling (ER Modelling) ER Modelling adalah salah satu bentuk pendekatan top-down dalam perancangan basis data yang dimulai dengan mengidentifikasi datadata penting yang disebut entities dan hubungan (relationship) antara data-data tersebut harus direpresentasikan dalam sebuah model. (Connolly dan Begg, 2005, p342)
10 Berikut ini penjelasan konsep dasar dari ER Modelling, sebagai berikut : 2.1.5.1 Tipe Entiti Tipe entiti adalah sebuah kumpulan objek dalam “dunia nyata” yang memiliki properti yang sama. Sebuah entiti mempunyai keberadaan nyata (fisik) atau objek keberadaan yang tidak nyata (abstrak). 2.1.5.2 Tipe Relasi Tipe relasi adalah sekumpulan dari hubungan antar tipe entiti yang memiliki arti. (Connolly dan Begg, 2005, p346) Relationship occurence adalah sebuah hubungan yang dapat diidentifikasikan secara unik, yang meliputi sebuah kejadian dari setiap entitas di dalam relasi. (Connolly dan Begg, 2005, p346) Tipe relasi digambarkan dengan sebuah garis yang menghubungkan tipe entitas–tipe entitas yang saling berhubungan. Garis tersebut diberi nama sesuai dengan nama hubungannya dan diberi tanda panah satu arah disamping nama hubungannya. Biasanya sebuah relasi dinamakan dengan menggunakan kata kerja, seperti Mengatur, atau dengan sebuah frase singkat yang meliputi sebuah kata kerja, seperti DiSewaOleh. Sedangkan tanda
panah
ditempatkan
disamping
nama
relasi
yang
mengindikasikan arah bagi pembaca untuk mengartikan nama dari suatu relasi. Huruf pertama pada setiap kata pada nama relas i
11 ditulis dengan huruf besar. Representasi diagram dari suatu tipe relasi terlihat pada gambar 2.1.
Pegawai
Memiliki
Cabang
'Cabang memiliki pegawai'
Gambar 2.1 Representasi Diagram Dari Tipe Relasi (Connolly and Begg, 2005, p347) a. Degree of relationship type Derajat dari tipe relasi adalah jumlah tipe entitas yang ikut serta dalam sebuah relasi. (Connolly dan Begg, 2005, p347) Complex relationship types adalah sebuah relasi antar tiga atau lebih tipe entitas. (Connolly dan Begg, 2005, p470) Sebuah relasi yang memiliki derajat dua dinamakan binary. (Connolly dan Begg, 2005, p348) Gambar 2.1 juga mempresentasikan diagram relas i derajat dua. Sedangkan sebuah relasi derajat tiga dinamakan ternary, dan jika sebuah relasi memiliki derajat empat dinamakan quarternary. (Connolly dan Begg, 2005, p348) Suatu relasi dapat disebut relasi yang kompleks bila relas i tersebut mempunyai degree yang lebih dari dua (binary).
12 b. Recursive relationship Recursive
relationship
merupakan
sebuah
tipe
relationship dimana tipe entitas yang sama ikut serta lebih dari sekali pada peran yang berbeda. (Connolly dan Begg, 2005, p349) Relasi dapat diberikan nama peran untuk menentukan fungsi dari setiap entitas yang terlibat dalam relasi tersebut. Representasi diagram recursive relationship beserta nama perannya terlihat pada gambar 2.2.
Nama Peran ◄M engawasi
Pengawas Nama Peran
Orang yang diawasi
Pegawai
Gambar 2.2 Representasi Diagram Recursive Relationship dan Nama Peran (Connolly dan Begg, 2005, p349)
2.1.5.3 Atribut Atribut adalah properti sebuah entitas atau relationship. (Connolly dan Begg, 2005, p350)
13 a. Domain Attribute Domain attribute merupakan kumpulan dari nilai-nilai yang diperbolehkan untuk satu atau lebih atribut, misalnya untuk atribut noKamar harus diisi nilai antara 1 sampai 15. b. Simple and Composite Attributes i. Simple attribute adalah atribut yang terdiri dari komponen tunggal dengan keberadaannya yang bebas. (Connolly dan Begg, 2005, p351) Contoh nya adalah jabatan, gaji pada entity staff. ii. Composite attribute adalah atribut yang terdiri dari beberapa komponen, dan keberadaan setiap komponen tersebut bebas. (Connolly dan Begg, 2005, p351) dapat
Composite attribute komponen-komponen
dipecah
independen
yang
lagi lebih
menjadi kecil,
misalnya entity cabang dengan nilai (163 M ain St, Glas gow, G119QX) dapat dipecah menjadi atribut jalan (163 M ain St). Kota (Glasgow), kodePos(G11 9QX). c. Single-Value and Multi-Value Attributes i. Single-value
attribute
adalah
atribut
yang
hanya
mempunyai sebuah nilai untuk setiap tipe entiti. (Connolly dan Begg, 2005, p351) Hampir
sebagian
besar
atribut
adalah single-value,
misalnya pada entiti cabang mempunyai noCabang (B003), noCabang ini adalah single-value attribute.
14 ii. Multi-value attribute merupakan atribut yang mempunyai banyak nilai untuk setiap tipe entiti. (Connolly dan Begg, 2005, p352) M isalnya pada noCabang B003 mempunyai noTelp 0141339-2178 dan 0141-339-4439. Pada kasus ini, noTelp merupakan multi-value attribute. d. Derived Attributes Derived attributes merupakan sebuah atribut yang merepresentasikan sebuah nilai yang berasal dari nilai sebuah atribut yang berhubungan atau set atribut, dan tidak harus berada dalam tipe entiti yang sama. (Connolly dan Begg, 2005, p352) e. Keys i. Candidate key merupakan himpunan atribut yang minimal yang secara unik mengidentifikasikan setiap occurrence dari sebuah tipe entitas. (Connolly dan Begg, 2005, p352) ii. Primary key adalah candidate key yang terpilih untuk mengidentifikasikan secara unik setiap occurrence dari sebuah tipe entitas. (Connolly dan Begg, 2005, p353) Pada sebuah tipe entitas biasanya terdapat lebih dari satu candidate key yang salah satunya harus dipilih untuk menjadi primary key. Pemilihan primary key didasarkan pada panjang atribut, jumlah minimal atribut yang diperlukan, dan keunikannya.
15 iii. Composite key adalah candidate key yang terdiri dari dua atau lebih atribut. (Connolly dan Begg, 2005, p353)
2.1.5.4 Stuctural Constraints Multiplicity merupakan jumlah kemunculan (occurence) yang mungkin dari sebuah tipe entiti yang berhubungan dengan kemunculan tunggal dari sebuah tipe entiti yang berhubungan melalui relasi tertentu. (Connolly dan Begg, 2005, p356) Contohnya beberapa batasan (constraints) termasuk syarat bahwa sebuah properti sewa harus mempunyai seorang pemilik dan setiap cabang harus mempunyai staff. Tipe utama dari batasanbatasan
dalam relasi ini disebut
multiplicity.
Multiplicity
membatasi cara entiti-entiti saling terhubung. Batasan ini dapat dibuat oleh organisasi atau user. Tingkat relasi yang umum antar entiti adalah binary. Berikut ini adalah relasi binary yang sering terjadi : 1. Relasi One-to-One (1:1) Relasi dimana setiap entiti hanya dapat mempunyai maksimal 1 relasi dengan entiti yang lain.
16
Can
R1
A
R2
B
Dim Nes
Mengatur (tipe relasi)
Staff (Entiti)
Cabang (Entiti)
Gambar 2.3 Relasi One-to-One Antara Cabang dan S taff Pada gambar di atas relasi yang terjadi adalah relasi one-toone, dimana setiap staff yang ada hanya mengatur satu cabang. 2. Relasi One-to-Many (1:*) Relasi
dimana
setiap
entiti yang
ada
dapat
mempunyai satu relasi atau lebih dari satu relasi dengan entiti yang lain.
Can
R1
A
Dim
R2
B
Nes
R3
C
Staff (Entiti)
M elayani (tipe relasi)
Konsumen (Entiti)
Gambar 2.4 Relasi One-to-Many Antara Staff dan Konsumen
17 Pada gambar di atas, relasi yang terjadi adalah relasi one-tomany, dimana setiap staff dapat melayani lebih dari 1 konsumen. 3. Relasi Many-to-Many Relasi dimana setiap entiti dapat mempunyai lebih dari satu relasi dengan entiti lainnya.
Bola Kompas
R1 R2 R3 R4
Sindo
Koran (Entiti)
A B C
M engiklankan (tipe relasi)
Rumah (Entiti)
Gambar 2.5 Relasi Many-to-Many Antara Koran dan Iklan Pada gambar di atas relasi yang terjadi adalah relasi many-tomany, dimana setiap koran dapat mengiklankan lebih dari 1 rumah.
2.1.5.5 Cardinality dan Participation Constraints Multiplicity terdiri dari dua batasan yaitu cardinality dan participation. Cardinality menggambarkan jumlah maksimum relasi yang mungkin terjadi dari sebuah entiti yang berpartisipasi dalam tipe relasi. One-to-one (1:1), one-to-many (1:*), dan many-
18 to-many
(*:*)
merupakan
cardinality
dari
relasi
binary,
participation menentukan apakah semua atau hanya sebagian dari entiti yang berpartisipasi dalam relasi.
cardinality
Satu Branch diatur oleh 1 anggota dari Staff
Staff StaffNo
Satu Branch di atur oleh 1 anggota dari Staff
Manages 1..1
Semua Branch diatur oleh Staff
Branch 0..1
participation
BranchNo
Tidak semua Staff mengatur Branch
Gambar 2.6 Cardinality dan Participation antara Branch dan Staff
2.1.6 Normalisasi Normalisasi adalah suatu teknik untuk menghasilkan himpunan relasi dengan properti yang diinginkan berdasarkan kebutuhan-kebutuhan data suatu organisasi. (Connolly dan Begg, 2005, p388) Tingkatan normalisasi yang digunakan sebagai landasan penulisan skripsi ini ada beberapa tahap, yaitu : a. First Normal Form (1NF) Suatu kondisi sebelum masuk ke proses normalisasi adalah Unnormalized Form (UNF), yaitu kondisi dimana sebuah tabel
19 mengandung satu atau lebih repeating group. (Connolly dan Begg, 2005, p403) 1NF adalah relasi dimana gabungan dari tiap kolom dan baris mengandung satu dan hanya satu nilai. (Connolly dan Begg, 2005, p403) Ada dua pendekatan untuk menghilangkan repeating group pada tabel yang tidak normal, yaitu : 1. Dengan memasukkan data yang sesuai ke dalam kolom yang kosong dari baris yang mengandung data berulang. 2. Dengan menempatkan data yang berulang bersama salinan atribut kunci
pada
relasi
yang terpisah.
Sebuah
primary
key
diidentifikasikan ke dalam relasi yang baru. b. Second Normal Form (2NF) 2NF adalah sebuah relasi yang terdapat di dalam 1NF dan tiap atribut non-primary key bersifat bergantung fungsional penuh terhadap primary key. (Connolly dan Begg, 2005, p407) c. Third Normal Form (3NF) 3NF adalah suatu relasi yang terdapat pada 1NF dan 2NF, dimana tidak ada atribut non-primary key yang bergantung transitif terhadap primary key. (Connolly dan Begg, 2005, p409)
20 2.1.7 Siklus Hidup Aplikasi Basis Data
Perancangan Basi s Data
Defin isi Sistem
Analisa dan p engump ulan kebutuhan
Desain Basis data Desain Konseptu al ba si s data
Pemiliha n DBMS ( o ptio nal )
De sai n Apli kasi
Desai n Logi ka l ba si s data
Desain Fi si kal ba si s data
Prototyping
Imple mentasi
Konversi dan Loadi ng Data
T estin g
Perawata n operasion al
Gambar 2.7 S iklus Hidup S uatu Aplikasi Basis Data (Connolly dan Begg, 2005, p284)
21 Penjelasan dari daur hidup tersebut adalah sebagai berikut : 1. Perancangan Basis Data Aktivitas manajemen yang memungkinkan tahapan dari aplikasi basis data untuk dapat direlasikan seefisien dan seefektif mungkin. Perencanaan basis data juga meliputi pengembangan standar pengumpulan
data,
penetapan
format
dan
dokumentasi yang
diperlukan serta bagaimana desain dan implementasi diproses. 2. Definisi Sistem Definisi sistem menggambarkan lingkup (scope) dan batasan dari aplikasi database dan user view utama. User view mendefinisikan apa yang diperlukan dalam aplikasi basis data dari sudut pandang peran pekerjaan tertentu (misal manager atau supervisor) atau area aplikasi enterprise (misal marketing, personil, atau kontrol stok). (Connolly dan Begg, 2005, p287) 3. Analisa dan Pengumpulan Kebutuhan Proses mengumpulkan dan menganalisa informasi mengenai bagian dari organisasi yang akan didukung oleh aplikasi basis data, dan menggunakan informasi ini untuk mengidentifikasi kebutuhan sistem baru. (Connolly dan Begg, 2005, p288) Informasi tersebut diambil dari tiap user view yang penting, dimana di dalamnya termasuk : a. Deskripsi tentang bagaimana data digunakan atau dibuat. b. Detail dari bagaimana data akan digunakan atau dibuat. c. Kebutuhan tambahan untuk aplikasi basis data baru.
22 Ada 3 pendekatan utama untuk memenuhi kebutuhan informas i dari aplikasi sistem basis data, yaitu: 1. Terpusat Kebutuhan dari setiap pemakai digabung ke dalam satu set kebutuhan untuk aplikasi dari basis data. 2. Tinjauan terintegrasi Kebutuhan dari setiap pemakai akan digunakan untuk membangun model data yang terpisah untuk merepresentasikan pandangan dari pemakai. Hasil dari data model dapat digabungkan kemudian pada tahap perancangan basis data. 3. Kombinasi dari dua pendekatan Dalam hal ini ada beberapa teknik untuk mendapatkan analisis informasi yang dinamakan Fact Finding Techniques. Terdapat 5 teknik Fact Finding yang umum digunakan, antara lain : a. Pemeriksaan dokumentasi b. Wawancara c. M engobservasi jalannya kegiatan kerja perusahaan d. Penelitian e. Kuisioner 4. Desain Basis Data Desain
basis
data
merupakan
sebuah
proses
dalam
menciptakan rancangan desain untuk basis data yang akan mendukung operasi dan tujuan dari perusahaan.
23 Ada 3 fase utama dalam desain basis data, yaitu : a. Desain konseptual basis data Proses membangun model data (data model) dari informasi yang diperoleh dalam sebuah organisasi, tetapi terbebas dari semua pertimbangan fisik. b. Desain logikal basis data Proses membangun sebuah model informasi yang diperoleh dari sebuah organisasi berdasarkan model data yang khusus (specific data
model),
namun
terbebas
dari
DBM S tertentu
dan
pertimbangan fisik lainnya. c. Desain fisikal basis data Proses pembuatan deskripsi dari suatu implementasi database pada media penyimpanan (secondary storage). Hal ini, mendeskripsikan hubungan utama, organisasi file dan indeks yang digunakan untuk mencapai efisiensi akses ke dalam data, dan hubungan integritas constraint (asossiated integrity constraint) yang lainnya dan hal yang berkaitan dengan keamanan. 5. Penyeleksian DBMS Proses penyeleksian DBM S yang cocok untuk mendukung aplikasi basis data. (Connolly dan Begg, 2005, p295) Berikut ini adalah tahapan untuk menyeleksi basis data, yaitu : a. M embuat gambaran cakupan tugas berdasarkan perusahaan. b. M embuat perbandingan mengenai dua atau tiga produk.
kebutuhan
24 c. M embuat evaluasi produk-produk DBM S yang dipilih. d. M embuat rekomendasi pemilihan DBM S dan membuat laporan hasil evaluasi produk-produk DBM S tersebut. 6. Desain Aplikasi Pada tahap
ini dilakukan proses mendesain antarmuka
pengguna dan program aplikasi yang menggunakan dan memproses basis data. Desain aplikasi dibagi menjadi dua aspek, yaitu : a. Desain Transaksi Transaksi dapat juga diartikan sebagai sebuah atau serangkaian aksi, yang dilakukan oleh seorang user atau program aplikasi, yang mengakses atau mengubah isi dari basis data. (Connolly dan Begg, 2005, p300) Terdapat tiga tipe utama transaksi : 1. Retrieval Transaction, contohnya tampilan detil data properti (data ditampilkan dalam bentuk angka). 2. Update Transaction, contohnya operasi untuk memasukkan detil data properti baru ke dalam basis data. 3. Mixed Transaction, contohnya operasi untuk mencari detil data properti,
menampilkannya,
dan
nilainya. b. Panduan Desain Antarmuka Pengguna
kemudian
meng-update
25 7. Prototyping Prototyping adalah proses membangun model kerja (working model) dari aplikasi basis data, yang memperbolehkan perancang atau user untuk mengevaluasi hasil akhir dari sistem. (Connolly dan Begg, 2005, p304) Prototype aplikasi basis data bertujuan untuk memungkinkan pemakai
menggunakan
prototype
untuk
mengidentifikasikan
keistimewaan sistem atau kekurangannya dan apabila memungkinkan untuk dapat menyarankan improvisasi atau bahkan membuat fitur baru ke aplikasi basis data. 8. Implementasi Implementasi adalah membuat definisi database secara eksternal, konseptual, internal, dan program aplikasi. Implementasi basis data dilakukan dengan menggunakan Data Definition Language (DDL) dari DBM S yang dipilih, atau dengan menggunakan Graphical User Interface (GUI). (Connolly dan Begg, 2005, p304) Pandangan dari pemakai (user view) diterapkan juga pada tahapan ini. Bagian dari aplikasi program adalah transaksi basis data yang diimplementasikan dengan menggunakan Data Manipulation Language (DM L) dari sasaran DBM S, termasuk host programming language seperti, Visual Basic, Delphi, C, C++, JAVA, dan Pascal.
26 9. Loading dan Konversi Data Pada tahap ini dilakukan pengambilan data dari sistem yang lama untuk dipindahkan ke dalam sistem yang baru. (Connolly dan Begg, 2005, p305) 10. Testing Testing yaitu proses menjalankan program aplikasi dengan tujuan menemukan kesalahan-kesalahan. Beberapa keuntungan melakukan testing adalah sebagai berikut : a. M enemukan kesalahan (error) pada program aplikasi dan mungkin juga kesalahan struktur basis data. b. M endemonstrasikan bahwa program aplikasi dan basis data dapat berjalan sesuai dengan kebutuhan performa dan spesifikasi yang diinginkan atau tidak. 11. Perawatan Operasional Perawatan
operasional
adalah
proses
memantau
dan
memelihara sistem setelah melakukan proses instalasi. (Connolly dan Begg, 2005, p306) Pada tahap maintenance (perawatan) ini melibatkan beberapa aktivitas : a. M emantau kinerja sistem. Apabila performa berada di level bawah, maka dibutuhkan tunning atau reorganisasi basis data. b. M emelihara dan meng-upgrade aplikasi basis data (apabila dibutuhkan).
27 2.1.8 Desain Konseptual, Logikal dan Fisikal Basis Data Terdapat tiga tahapan atau fase utama dalam perancangan basis data (Connolly dan Begg, 2005, p439), yaitu : 1. Desain Konseptual Basis Data Desain konseptual basis data merupakan proses membangun model informasi yang digunakan dalam sebuah organisasi, bebas dari semua pertimbangan fisik. (Connolly dan Begg, 2005, p439) Pertimbangan fisik yang dimaksud meliputi DBM S yang akan digunakan,
program
aplikasi,
bahasa
pemrograman,
platform
perangkat keras, unjuk kerja, dan pertimbangan fisik lainnya. Langkah-langkah desain konseptual basis data adalah sebagai berikut : Langkah 1 : membangun model data konseptual lokal untuk setiap view. 1.1 M engidentifikasi tipe entiti Tipe entitas dapat dikenali dengan mengidentifikasikan kata benda atau frase kata benda pada spesifikasi kebutuhan pengguna, objek besar seperti orang (people), tempat (place), benda (thing) atau konsep (concept). Alternatif lain adalah dengan mencari obyek yang keberadaannya bebas. 1.2 M engidentifikasi tipe relasi Tahapan ini bertujuan untuk mengidentifikasi relasi yang penting yang ada antara tipe-tipe entitas yang telah diidentifikas i sebelumnya. Tipe relasi diidentifikasikan dengan mencari kata
28 kerja atau suatu kata yang berhubungan dengan kata kerja. M isalnya : a. Staff M engatur Property b. PrivateOwner M empunyai Property 1.3 M engidentifikasi dan menghubungkan atribut dengan entiti atau tipe entiti Tahapan ini bertujuan untuk menghubungkan atribut dengan entitas dan tipe relasi yang tepat. Atribut yang dimiliki oleh setiap entitas dan relasi harus memenuhi karakteristik atribut yaitu simple/composite attribute, single/multi-valued attribute, dan derived attribute. 1.4 M enentukan domain attribute Domain adalah sekumpulan nilai dimana satu atau lebih atribut memperoleh nilainya. (Connolly dan Begg, 2005, p450) Contoh menentukan domain pada atribut JenisKelamin di entitas pegawai adalah dengan ‘L’ atau ‘P’. 1.5 M enentukan candidate dan primary key dari atribut Candidate key adalah set atribut minimal dari sebuah entiti yang secara unik mengidentifikasi setiap kemunculan dari entiti tersebut. Candidate key dapat diidentifikasi lebih dari satu, tetapi harus dipilih satu sebagai primary key, sedangkan candidate key yang lain disebut alternate key.
29 Acuan dalam menentukan primary key dari candidate key dapat dilihat berikut ini : a. Candidate key dengan set atribut yang minimal b. Candidate key dengan nilai yang berubah paling sedikit c. Candidate key dengan karakter paling sedikit d. Candidate key dengan isi maksimum yang paling sedikit e. Candidate key dengan yang termudah digunakan dari sudut pandang user 1.6 M empertimbangkan penggunaan konsep model yang lebih tinggi (enhanced modelling concepts)/optional Tahap ini bersifat optional, apakah akan digunakan pengembangan dari entiti model dengan menggunakan enhanced modelling concept, seperti spesialisasi/generalisasi. 1.7 M emeriksa redudansi pada model Tahapan ini memeriksa model data konseptual lokal apakah terjadi duplikasi atau tidak dengan dua langkah yaitu : a. M emeriksa kembali one-to-one relationship (1:1) Kemungkinan ada dua entitas yang menggambarkan objek yang sama dalam organisasi. Oleh karena itu, kedua entitas tersebut harus digabungkan. b. M enghilangkan relasi yang redundan Suatu relasi menjadi redundan jika informasi yang sama dihasilkan melalu relasi yang lainnya. Relasi yang redundan harus dihilangkan untuk meminimalkan data model.
30 1.8 M emvalidasi model data konseptual lokal terhadap transaksi user Tahapan ini memeriksa model yang telah dihasilkan apakah mendukung transaksi pada view. (Connolly dan Begg, 2005, p456) Pemeriksaan ini dapat menggunakan dua langkah yaitu : a. M endeskripsikan transaksi b. M enggunakan jalur transaksi 1.9 M emeriksa data konseptual lokal dengan user Langkah ini dilakukan dengan tujuan untuk memastikan bahwa data model merupakan representasi yang benar bagi setiap pandangan. 2. Desain Logikal Basis Data Desain logikal basis data adalah proses membangun model informasi yang digunakan dalam sebuah enterprise yang didasarkan pada data model spesifik, dan terbebas dari DBM S dan semua pertimbangan fisik. Desain logikal basis data terdiri dari langkah-langkah sebagai berikut : Langkah 2 : M embangun dan memvalidasi model data logikal lokal untuk setiap view. Tahapan ini bertujuan untuk membangun sebuah local logical data model dari sebuah local conceptual data model yang mewakili pandangan tertentu dari organisasi dan kemudian memvalidasi model ini untuk memastikan bahwa strukturnya benar (dengan menggunakan
31 teknik normalisasi) dan untuk memastikan dukungannya terhadap transaksi-transaksi yang dibutuhkan. Kegiatan yang dilakukan pada langkah ini meliputi : 2.1 M enghilangkan hal-hal yang tidak sesuai dengan model relational (optional) M odel data konseptual lokal yang telah ada dapat mengandung struktur yang tidak dapat dimodelkan oleh DBM S konvensional, oleh karena itu pada tahap ini dilakukan perubahan menjadi bentuk yang lebih mudah ditangani oleh sistem ini. Langkah-langkahnya antara lain : a. M enghilangkan relasi binary many-to-many (*:*) b. M enghilangkan relasi rekursif many-to-many (*:*) c. M enghilangkan tipe relasi yang kompleks d. M enghilangkan atribut multi-valued 2.2 M endapatkan relasi untuk model data logikal Tahapan ini membentuk relasi dari model data logikal lokal untuk merepresentasikan relasi antar entiti dengan atribut yang telah diidentifikasikan. Untuk mendapatkan relasi dari data model yang ada, maka digunakan cara-cara berikut ini : a. Tipe entiti yang kuat b. Tipe entiti yang lemah c. Relasi binary one-to-many (1:*) d. Relasi binary one-to-one (1:1)
32 e. Relasi recursive f. Tipe relasi superclass/subclass 2.3 M emvalidasi relasi menggunakan normalisasi Normalisasi digunakan untuk meningkatkan model yang telah terbentuk agar duplikasi data yang tidak diperlukan dapat dihindari. 2.4 M emvalidasi relasi dengan transaksi user Tahapan ini bertujuan untuk memastikan bahwa relasirelasi pada local logical data model mendukung transaksitransaksi yang dibutuhkan oleh pengguna, seperti spesifikasi kebutuhan pengguna yang terperinci. 2.5 M endefinisikan integrity constraints Integrity constraints adalah batasan-batasan yang harus ditentukan untuk melindungi basis data agar tetap konsisten. (Connolly dan Begg, 2005, p474) Ada 5 tipe integrity constraints, yaitu : a. Required data (data/nilai yang valid) b. Batasan domain attribute c. Entity integrity (primary key tidak boleh null) d. Referential integrity (foreign key pada suatu entiti harus sesuai dengan candidate key pada entiti lain). e. Enterprise constraint (batasan pada organisasi)
33 2.6 M eninjau kembali model data logikal lokal dengan user Tahapan ini memastikan bahwa model data logikal lokal yang terbentuk merupakan representasi dari user view. Untuk memvalidasi model data logikal ini digunakan Data Flow Diagram (DFD). DFD dapat menunjukkan aliran data dari suatu organisasi. Langkah 3 : M embangun dan validasi model data logikal global. Bertujuan menggabungkan masing-masing local logical data model
menjadi
sebuah
global
logical
data
model
yang
menggambarkan organisasi dengan menyatukan masing-masing local logical data model bagi setiap pandangan pengguna. 3.1 M enggabungkan model data logikal lokal ke dalam model global M enggabungkan model data logikal individual ke dalam model data logikal global organisasi. 3.2 M emvalidasi model data logikal global M emvalidasi relasi yang telah dibuat dari model data global menggunakan teknik normalisasi dan memastikan relasi ini mendukung transaksi yang diperlukan. Langkah ini sama dengan langkah 2.3 dan 2.4 yang memvalidasi setiap model data logikal lokal. 3.3 M emeriksa perkembangan yang akan datang Langkah ini bertujuan untuk memastikan apakah ada perubahan memastikan
yang signifikan
yang
dapat
diperkirakan
dan
apakah model data logikal global ini dapat
mendukung perubahan-perubahan ini.
34 3.4 M emeriksa model data logikal global dengan user M emastikan bahwa model data logikal global merupakan representasi nyata dari organisasi. 3. Desain Fisikal Basis Data Desain fisikal basis data merupakan proses memproduksi sebuah deskripsi dari implementasi basis data dalam secondary storage, yang menjelaskan relasi dasar, organisasi file, dan membuat indeks untuk mendapatkan akses yang efisien ke data, serta setiap integrity constraints yang saling berhubungan dan juga pengukuran sekuriti. Desain fisikal basis data terdiri dari langkah sebagai berikut : Langkah 4 : M enjelaskan model data logikal global untuk DBM S yang akan digunakan. Tahap ini akan menghasilkan suatu skema basis data relasional dari model data logikal global yang dapat diimplementasikan ke dalam DBM S yang akan digunakan. 4.1 M endesain relasi dasar (base relations) Tahapan ini memutuskan bagaimana merepresentasikan relasi-relasi yang telah diidentifikasikan pada model data logikal global pada DBM S yang akan dipakai. 4.2 M endesain representasi dari data yang diturunkan Tahapan ini memutuskan bagaimana merepresentasikan derived attribute dalam model data logikal global pada DBM S yang akan dipakai.
35 4.3 M endesain enterprise constraints Tahapan ini menentukan enterprise constraint untuk target DBM S. Langkah 5 : M endesain gambaran fisik dari basis data. Tahapan ini menentukan organisasi file yang akan digunakan dan indeks untuk menghasilkan performa yang diinginkan serta menentukan apa saja yang akan disimpan dalam secondary storage. 5.1 M enganalisa transaksi Analisa transaksi berfungsi untuk memahami fungsi-fungs i dari transaksi yang akan dijalankan pada basis data dan menganalisa transaksi yang penting. 5.2 M emilih organisasi file yang akan digunakan Tahap ini bertujuan untuk menentukan organisasi file yang efisien. Ada 5 tipe organisasi file, antara lain : a.
Heap
b. Hash c. Indexed Sequential Access Method (ISAM ) d. B-tree e. Clusters 5.3 M emilih indeks yang digunakan M emutuskan apakah dengan menggunakan indeks akan meningkatkan performa dari sistem.
36 5.4 M emperkirakan disk space yang diperlukan M emperkirakan disk storage yang diperlukan untuk menggunakan sistem basis data. Disk storage yang dimaksud adalah secondary storage. Langkah 6 : M endesain user view. M endesain user view yang telah diindentifikasi. Langkah 7 : M endesain pengukuran keamanan (security). M embatasi pengaksesan basis data oleh users yang tidak berhak dan memspesifikasi basis data yang dapat diakses oleh user. Langkah 8 : M enentukan apakah redudansi data telah dapat dikontrol. M elakukan normalisasi agar dapat meningkatkan performa dari sistem dan menghilangkan redudansi. Langkah 9 : M emonitor Sistem Operasional M emonitor dan meningkatkan performa dari sistem dengan memperbaiki desain yang tidak sesuai atau perubahan kebutuhan.
2.1.9 State Transition Diagram State
transition
diagram
adalah
suatu
diagram
yang
menggambarkan bagaimana suatu proses dihubungkan satu sama lain dalam waktu yang bersamaan. State transition diagram digambarkan dengan sebuah state yang berupa komponen sistem yang menunjukan bagaimana kejadian-kejadian tersebut dari satu state ke state lain. (Jeffrey A., 2002, p364)
37 State transition diagram merupakan suatu modeling tool yang menggambarkan sifat ketergantungan pada waktu dari suatu sistem. State transition diagram adalah diagram yang terdiri dari : a. State (keadaan) b. Event atau tindakan yang menyebabkan perpindahan dari satu state ke state lainnya. Ada dua macam symbol yang menggambarkan proses dalam state transition diagram (STD) yaitu : a. Gambar persegi panjang menunjukkan state dari sistem. b. Gambar panah menunjukkan transisi antar state. Tiap panah diberi label dengan ekspresi aturan. Label yang di atas menunjukkan kejadian yang menyebabkan transisi terjadi. Label yang di bawah menunjukkan aksi yang terjadi akibat dari kejadian tadi.
Gambar 2.8 S imbol-simbol yang Digunakan pada State Transition Diagram
38 2.1.10 Diagram Aliran Dokumen (DAD) Sistem yang berdasarkan pada pemakaian teknologi komputer banyak terkait dengan desain, salah satunya implementasi pada alur (aliran) dokumen dimana diagram/bagan tersebut memperlihatkan input apa saja yang digunakan untuk menghasilkan output yang diinginkan berdasarkan pengolahan yang telah ditentukan. (Drs. Husein Umar, 2001, p98) Simbol-simbol pada Diagram Aliran Dokumen : Panah. Simbol arah arus proses. Dokumen.
Simbol
menggambarkan
ini
semua
digunakan
jenis
dokumen,
untuk yang
merupakan formulir yang digunakan untuk merekam data terjadinya suatu transaksi. Contoh dokumen yang digambarkan
dengan
simbol
ini
adalah:
faktur
penjualan, surat order pembelian, pengeluaran barang gudang, dll. 2
faktur
Dokumen dan tembusannya. Simbol ini digunakan untuk menggambarkan dokumen asli dan tembusannya. Nomor lembar dokumen dicantumkan di sudut kanan atas. Berbagai Dokumen. Simbol ini digunakan untuk
Surat Muat Srt. Order P enj. 13 Faktur
menggambarkan
berbagai
jenis
dokumen
yang
digabungkan bersama dalam satu paket. Simbol dalam
39 contoh tersebut menggambarkan faktur penjualan lembar ke-3 dilampiri dengan surat order penjualan lembar ke-1 dan surat muat. Catatan. Simbol ini digunakan untuk menggambarkan catatan akuntansi yang digunakan untuk mencatat data yang direkam sebelumnya dalam dokumen
atau
formulir. Catatan akuntansi yang digambarkan dengan simbol ini adalah : jurnal, buku pembantu, dan buku besar. Penghubung pada halaman yang sama (on-page connector). Karena keterbatasan ruang halaman kertas untuk
menggambar,
maka
diperlukan
simbol
penghubung untuk memungkinkan aliran dokumen berhenti di suatu lokasi pada halaman tertentu dan kembali berjalan di lokasi lain pada halaman yang sama. Akhir arus dokumen dan mengarahkan pembaca ke simbol penghubung halaman yang sama yang bernomor seperti yang tercantum dalam simbol tersebut. Penghubung pada halaman yang berbeda (off-page connector). Jika untuk menggambarkan bagan alir suatu sistem akuntansi diperlukan lebih dari satu halaman,
simbol
ini
harus
digunakan
untuk
40 menunjukkan ke mana dan bagaimana bagan alir terkait satu dengan lainnya. Kegiatan manual. Simbol ini digunakan untuk menggambarkan kegiatan manual seperti : menerima order dari pembeli, mengisi formulir, membandingkan, memeriksa, dan berbagai jenis kegiatan klerikal yang lain. Keterangan, komentar. Simbol ini memungkinkan ahli
sistem
menambahkan
keterangan
untuk
memperjelas pesan yang disampaikan dalam bagan alir. Arsip sementara.
Simbol ini digunakan
untuk
menggambarkan arsip sementara yang merupakan tempat penyimpanan dokumen yang dokumennya akan diambil kembali dari arsip tersebut di masa yang akan datang untuk keperluan pengolahan lebih
lanjut
terhadap dokumen tersebut. Untuk menunjukkan urutan pengarsipan dokumen digunakan simbol berikut ini :
Arsip
A
=
menurut abjad
N
=
menurut nomor urut
T
=
kronologis, menurut tanggal
permanen.
Simbol
ini digunakan
untuk
menggambarkan arsip permanen yang merupakan
41 tempat penyimpanan
dokumen
yang tidak
akan
diproses lagi dalam sistem akuntansi yang bersangkutan. Online computer process. Simbol ini menggambarkan pengolahan data dengan komputer secara online. Nama program ditulis di dalam simbol.
2.1.11 Teori-teori Web Database 2.1.11.1 Pengertian Web Web menggunakan internet dalam memberikan fasilitas
kepada penggunanya untuk
menyampaikan informasi,
informasi,
memasukkan
mencari dan
menyimpan dan
memanipulasi
dan
menemukan informas i.
(Eaglestone, 2001, p190)
2.1.11.2 Web Database Web database system adalah sistem dimana kedua teknologi web dan database digunakan (Eaglestone, 2001, p38). Web database dapat dilihat melalui dua persepsi : 1. Aplikasi Web a. E-commerce E-commerce adalah kegiatan menjual dan membeli barang yang dilakukan melalui internet.
42 b. Group Activities Kemampuan untuk memberikan dan memperbaharui informasi,
dengan
saling
berkomunikasi
dan
berdiskusi antara sesama anggota kelompok. c. Embedded System Embedded system yakni sistem komputer yang merupakan komponen-komponen dari pembangunan. M isalnya mobil, kapal, peralatan industri yang dapat menggunakan
internet
untuk
mengakses
dan
memperbaharui informasi seperti lokasi, keadaan cuaca. 2. M empertinggi Web Database System Internet dan web dapat memperluas kemampuan sistem dari database dalam dua hal : a. Akses luas Dengan menghubungkan sistem ke internet, populasi pengguna diperkirakan lebih banyak, karena dapat mencakup ke seluruh dunia. b. Fasilitas yang diberikan lebih banyak Internet dapat disambungkan bersamaan dengan sistem database yang berbeda untuk menghasilkan fasilitas baru.
43 Web database memberikan beberapa keuntungan, antara lain : 1. Database dapat diakses oleh pengguna secara luas di seluruh dunia 2. Sistem terdistribusi, sehingga data dapat diberikan dimana ia dibutuhkan dan aplikasi dapat diletakkan dimana
ada
aktivitas
yang
mendukung
dan
fasilitas
yang
membutuhkan aplikasi itu. 3. Web
database
memberikan
menguntungkan untuk query data, manipulasi data dan administrasi data. (Eaglestone, 2001, p36)
2.1.11.3 Perancangan Web Database Ada dua hal rumit yang harus dipertimbangkan dalam merancang
web
database
disamping
perancangan
konvensional database, antara lain : a. Perancangan web page 1. M enampilkan web data – mengambil dari database atau masukan dari user. 2. Kumpulan web data – perancangan hubungan untuk petunjuk di dalam maupun di antara web pages.
44 3. Perancangan web interface – perancangan web pages features. b. Perancangan hubungan antara web pages dan database 1. Web database logical mapping – definisi mapping antara data displayed dalam web pages dan data stored dalam database. 2. Web database physical mapping – implementasi mekanisme data yang dilakukan di antara web pages dan database. Kinerja cepat dan bebas kesalahan. (Eaglestone, 2001, p262)
2.1.11.4 Web Databases Connectivity Web
memiliki
fasilitas
untuk
menyimpan,
memberikan dan mengakses informasi. Informasi dapat diakses dari web menggunakan browser. (Eaglestone, 2001, p209) Sistem web database terbagi atas dua bagian, yakni: 1. Client Systems Sistem ini akan menampilkan halaman web dengan user interface ke sistem web database. Halaman web akan ditampilkan menggunakan browser. 2. Web Server Systems Sistem ini akan menyimpan dokumen-dokumen web, data-data, dan program. Pada sistem ini, data-data dan
45 dokumen-dokumen web dapat ditambah, diperbaharui, dan dimanipulasi ke dalam database. (Eaglestone, 2001, p349) Ada dua pendekatan dalam pembuatan web, yakni : a. Pendekatan Client Side Pendekatan ini dilihat dari sisi komputer yang digunakan oleh pengguna. (Eaglestone, 2001, p350) i. Browser Extension Browser
secara
luas
memberikan
fungsi-fungs i
tambahan dan dapat digunakan dengan plug-ins (pada Netscape dan Internet Explorer (IE)), ActiveX controls (pada IE), atau dapat juga menggunakan Java Applets dan Javascript. ii. External Applications External Applications adalah tipe yang ada di database client di dalam client system, dan ditampilkan oleh web browser untuk memberikan tambahan layanan. Aplikasi ini serupa dengan menggunakan jembatan server side untuk mengeksekusi program lain. b. Pendekatan Server Side Pendekatan ini digunakan untuk mengeksekusi prosesproses aplikasi di dalam sistem server komputer. M isalnya ketika kita ingin mengakses sistem database, harus dari server. (Eaglestone, 2001, p351)
46 Prosedur-prosedur
yang
harus
dilakukan
dalam
pendekatan ini : 1. Data (permintaan) harus dapat terkirim dari client ke server. 2. Data harus dapat diproses di server. 3. Hasilnya harus dapat dikirim dari server ke client. Pendekatan ini dapat dilakukan dengan menggunakan bahasa pemrograman seperti VBScript, Java. Pada sistem web database ini, apapun bahasa yang digunakan, koneksi database harus digunakan dari bahasa yang digunakan terlebih dahulu, misalnya menggunakan JDBC untuk menghubungkan Java ke database.
2.1.11.5 AS P.NET ASP.NET
adalah
kumpulan
teknologi
dalam
Framework .NET untuk membangun aplikasi web dinamik dan XML Web Services. Halaman ASP.NET dijalankan di server kemudian akan dibuat halaman markup seperti HTM L (Hypertext Markup Language), WM L (Wireless Markup Language), atau XM L (Extensible Markup Language) yang akan dikirim ke browser desktop atau mobile. Siklus hidup halaman ASP.NET dijabarkan sebagai berikut : 1. Client meminta file yang memiliki ekstensi .aspx.
47 2. ASP.NET membaca file dari file sistem server. 3. ASP.NET memeriksa tiap-tiap tag dalam file dan memuat ke dalam memory. 4. Setelah memuat semua tag ke dalam memory, ASP.NET menjalankan kode program dari tiap-tiap kontrol server. Kode ini akan mengakses sumber dari server web, kode dapat mengubah isi atau property dari kontrol server di halaman dan dapat juga menambah atau menghilangkan kontrol server. 5. Ketika semua kode dalam kontrol server selesai dijalankan, ASP.NET secara berurutan memberitahu tiap kontrol untuk me-render dirinya. 6. Sesudah halaman meninggalkan server, A SP.NET melepas kontrol server dan sumber lainnya yang sudah dibuat sebelumnya.
2.1.11.6 VIS UAL S TUDIO.NET 2005 M icrosoft
Visual Studio.NET
program aplikasi berteknologi terbaru
2005
merupakan
dari M icrosoft
Windows dan juga mendukung bahasa SQL (Structure Query Language) yang merupakan bahasa query yang sangat andal. Selain
itu,
M icrosoft
Visual Studio.NET
2005
juga
mempunyai beberapa jenis bahasa pemrograman yang mas ih terus dikembangkan oleh M icrosoft, yaitu bahasa BASIC,
48 bahasa C++, bahasa C#, dan bahasa J#. Untuk perkembangan dari M icrosoft Visual Studio ini dimulai dari M icrosoft Visual
Studio
6.0
(sekitar
tahun
1999).
Kemudian
dikembangkan lagi sampai pada tahun 2003, M icrosoft meluncurkan M icrosoft Visual Studio 2003 yang disertai juga dengan teknologi .NET, yang diciptakan oleh M icrosoft untuk membuat komputer client semakin thin/compact. Dengan hanya perlu instalasi dari .NET Framework versi 1.1, maka komputer client sudah bisa menjalankan aplikasi yang dibuat oleh M icrosoft Visual Studio 2003. Pada tahun 2005, M icrosoft meluncurkan kembali M icrosoft Visual Studio 2005 dengan kemampuan yang lebih ditingkatkan lagi sehingga komputer client bisa semakin thin/compact dengan didukung oleh .NET Framework 2.0. Selain itu, di dalam M icrosoft Visual Studio 2005 ini, seorang programmer akan semakin jarang mengetikkan code sehingga lebih banyak wizard dan automation dari Visual Studio dalam pengerjaan sehingga aplikasi menjadi lebih cepat dan juga handal. M enggunakan ASP.NET berarti bekerja dalam IDE (Integrated Development Environment) Visual Studio 2005. IDE Visual Studio 2005 berisi menu dan toolbar untuk mengakses perintah dan fitur-fitur, toolbox yang berisi kumpulan kontrol dan komponen yang akan digunakan dalam form, jendela dokumen yaitu jendela untuk desain
49 secara visual, jendela penyuntingan kode, dan jendelajendela yang menyediakan property dan informasi mengenai form, kontrol, proyek, dan solution.
2.2 Teori-teori Khusus yang Berhubungan dengan Topik Yang Dibahas 2.2.1 Pengertian Manajemen M anajemen
adalah
proses
merencanakan,
memimpin,
mengorganisir, dan mengontrol sesuatu dalam sebuah kesatuan untuk mencapai tujuan, juga digunakan untuk mengartikan sekelompok orang yang melakukan pekerjaan ini. (http://www.booksites.net/download/ chadwickbeech/Glossary.htm)
2.2.2 Inventaris Aset perusahaan terdiri atas aktiva lancar dan aktiva tetap yang dibedakan berdasarkan cara dan lama perputaran aktivanya. Aset merupakan kekayaan dari perusahaan yang menunjukkan ukuran dari perusahaan tersebut, yang di dalamnya termasuk inventaris perusahaan yang merupakan bagian dari aktiva tetap. (Triton P.B., 2005, p49)
2.2.3 Aktiva Tetap / Fixed Asset Suatu aset yang tidak ditujukan untuk diuangkan dan digunakan dalam aliran normal pada bisnis. (Houghton M ifflin, 2003) Fixed Asset adalah properti milik perusahaan yang bentuk fisiknya nyata dan dapat digunakan dalam jangka waktu yang lama,
50 berfungsi untuk membantu proses produksi yang merupakan sumber pemasukan, dan tidak dapat dihabiskan atau tidak untuk diuangkan setidaknya dalam jangka waktu minimal 1 tahun. (http://www. Investopedia.com /terms/f/fixedasset.asp)
2.2.4 Penyusutan / Depreciation Penyusutan adalah sistematika alokasi biaya modal aset selama umur ekonominya untuk tujuan laporan keuangan, tujuan pajak atau untuk keduanya, yang diperlukan sebagai pos biaya. (Sabardi, 1994)
2.2.5 Metode Penyusutan / Depreciation Methods Secara umum terdapat dua metode perhitungan penyusutan terhadap barang, antara lain metode penyusutan saldo menurun (declining balance depreciation method) dan metode penyusutan saldo berganda (double declining balance depreciation method). Pada beberapa organisasi bisnis dan perusahaan yang mempunyai penghasilan kena pajak cenderung menggunakan metode penyusutan yang dipercepat untuk tujuan laporan pajak. M etode penyusutan saldo menurun adalah salah satu bentuk dari metode penyusutan yang dipercepat. M etode ini dimulai antara lain dari nilai buku aset (biaya perolehan dikurangi akumulasi penyusutan) pada awal tahun dimana penyusutan dilakukan dan disusutkan menggunakan suatu persentase tetap. (Triton P.B., 2005, p68)