View
215
Download
0
Category
Preview:
Citation preview
8
BAB 2
LANDASAN TEORI
2.1. Teori Umum
2.1.1. Data
Data merupakan komponen terpenting di dalam basis data. Data
juga digunakan sebagai sumber daya pada suatu perusahaan atau
organisasi.
Menurut Hoffer (2009, p46), data adalah representasi objek dan
kejadian yang tersimpan dan mempunyai arti dan kepentingan kepada
lingkungan pengguna.
Menurut Frost (2006, p6), data merupakan sesuatu yang mengacu
pada nilai yang tersimpan dalam basis data.
Menurut Connolly and Begg (2010, p70), data merupakan bagian
terpenting dari komponen suatu basis data.
Jadi, data adalah komponen terpenting dalam basis data yang
merepresentasikan objek dan kejadian serta nilai yang tersimpan sehingga
mempunyai arti dan kepentingan kepada penggunanya.
2.1.2. Informasi
Informasi merupakan pengolahan dari data-data yang terkumpul
dan dapat digunakan sebagai referensi perusahaan atau organisasi di dalam
pengambilan keputusan.
9
Menurut Hoffer (2009, p47), data yang telah diproses sedemikian
rupa sehingga meningkatkan pengetahuan dari orang yang menggunakan
tersebut dinamakan Informasi.
Menurut Kronke (2010, p5), Informasi adalah pengetahuan yang
berasal dari data, atau dalam definisi lain dapat disebut presentasi dari data
yang mempunyai arti.
Gelinas (2008, p17), Informasi adalah data yang disajikan dalam
bentuk yang berguna dalam kegiatan pembuatan keputusan. Informasi
memiliki nilai bagi pembuat keputusan karena mengurangi ketidakpastian
dan meningkatkan pengetahuan tentang beberapa hal yang diinginkan.
Jadi informasi adalah sebuah pengetahuan yang didapat dari
pemrosesan lebih lanjut terhadap data yang dimiliki.
2.1.3. Sistem
Sistem adalah komponen yang saling terhubung satu dengan
lainnya, sehingga menjadi suatu kesatuan yang utuh. Sistem juga
diperlukan untuk memberdayakan penggunaan informasi.
Menurut Gelinas (2008, p11), menjelaskan bahwa sistem adalah
kumpulan dari elemen yang berdiri sendiri yang secara bersamaan untuk
mencapai tujuan tertentu. Sistem harus memiliki organisasi, hubungan,
integrasi, dan tujuan utama.
Hall (2011, p5), secara umum sistem dapat dikatakan sebagai hasil
penggambaran dari komputer dan pemrograman. Sistem adalah kumpulan
dari dua atau lebih komponen atau subsistem yang saling terkait untuk
tujuan tertentu.Sistem harus menyediakan setidaknya satu tujuan, tapi
10
dapat juga menyediakan lebih dari satu tujuan. Saat sistem tidak memiliki
tujuan lagi, maka sistem tersebut harus digantikan.
Jadi sistem adalah suatu kumpulan dari komponen yang saling
terkait dan mempunyai tujuan tertentu.
2.1.4. Sistem Informasi
Sistem Informasi dapat berguna untuk perusahaan atau organisasi
dalam menunjang kegiatan sehari-harinya. Sistem Informasi juga
memberikan kemudahan di dalam menghasilkan laporan yang dibutuhkan.
Gelinas (2008, p13), Sistem Informasi adalah sistem yang dibuat
oleh manusia yang secara umum mengandung kumpulan dari komponen
berbasis komputer yang terintegrasi dan komponen manual yang dibuat
untuk mengumpulkan, menyimpan, mengelola data dan untuk
menyediakan informasi kepada pengguna.
Hall (2011, p7), menyatakan bahwa sistem informasi adalah
kumpulan dari prosedur formal dimana data dikumpulkan, diproses
menjadi informasi dan didistribusikan kepada pengguna.
Jadi, Sistem Informasi adalah proses dimana data-data
dikumpulkan, diproses menjadi informasi dan didistribusikan kepada
pengguna yang membutuhkannya.
11 2.2. Teori Khusus
2.2.1. Basis Data
Basis data merupakan komponen terpenting dalam sistem basis
data. Basis data juga terdiri atas tabel-tabel yang saling terhubung satu
sama lain.
Menurut Connolly and Begg (2010, p65), basis data adalah
kumpulan data yang saling terkait yang terbagi secara logikal (dan
deskripsi dari data tersebut), dirancang untuk memenuhi informasi yang
dibutuhkan oleh suatu organisasi.
Menurut Frost (2006, p6), basis data adalah kumpulan data yang
digunakan oleh sebuah sistem.
Jadi, Basis data adalah kumpulan data yang saling terkait dan
digunakan oleh sistem untuk memenuhi kebutuhan informasi suatu
organisasi.
2.2.1.1. Perancangan Basis Data
Perancangan basis data merupakan kegiatan yang
terpenting di dalam membangun suatu Sistem Informasi.
Perancangan ini dibutuhkan juga untuk mendefinisikan data-data
yang ada pada proses bisnis suatu perusahaan.
Menurut Connolly and Begg and Begg (2010, p71), untuk
menyusun suatu struktur data yang diidentifikasikan dalam tabel-
tabel diperlukan suatu metode dalam perancangan basis data.
Bagaimanapun juga dalam melakukan perancangan basis data
dapat menjadi sangat kompleks. Untuk menghasilkan sistem yang
12
memenuhi kebutuhan informasi suatu organisasi diperlukan
berbagai pendekatan dan metodologi yang berbeda agar basis data
yang dihasilkan menjadi baik.
Menurut Hoffer (2009, p37) Perancangan basis data yang
baik adalah perancangan basis data yang dibuat bersamaan
dengan pembangunan sistem informasi dengan terlebih dahulu
dimulai dengan enterprise data modeling, dimana hal tersebut
membatasi ruang lingkup atau cakupan dan konten umum dari
basis data keseluruhan organisasi atau perusahaan.
Menurut Kronke (2010, p13), merancang basis data
adalah hal yang sulit tetapi penting. Dalam melakukan
perancangan harus mendeskripsikan dengan baik struktur tabel,
relasi antar tabel dan memperkirakan batasan data yang ada, dan
juga memperhatikan komponen struktur lainnya.
Jadi, Perancangan basis data adalah kegiatan untuk
merancang tabel terkait, hubungan antara tabel dalam perusahaan
atau organisasi.
2.2.1.1.1. Basis Data Konseptual
Di dalam merancang Basis Data, melalui tahap
perancangan Basis Data Konseptual. Basis Data
Konseptual diperlukan untuk mengetahui basis data
secara konsep yaitu mengetahui entitas-entitas apa yang
terdapat di dalam proses bisnis suatu organisasi.
13
Menurut Frost (2006, p29) Basis Data
Konseptual dirancang dengan membuat Entity
Relationship Diagram (ERD). ERD harus dibangun
menggunakan proses yang sistematis. Perancangan
harus dimulai dengan big-picture view dan rincian yang
harus secara progresif ditambahkan untuk persiapan
implementasi.
Connolly and Begg (2010, p465) dalam
bukunya menjelaskan bahwa Basis Data Konseptual
adalah membuat representasi konseptual dari basis data
yang meliputi identifikasi entitas-entitas yang penting,
hubungan dan atributnya.
Menurut Hoffer (2009, p54) dalam bukunya
menjelaskan bahwa konseptual basis data adalah rincian
spesifikasi dari keseluruhan struktur data organisasi
yang terbebas dari basis data lainnya. Berikut adalah
design kontemporer untuk merancang suatu basis data
konseptual :
- Memberikan ruang lingkup terhadap organiasi
- Semua jenis entitas dan subentitas diperlukan
- Semua relasi harus di dokumentasikan
- Model memiliki seluruh atribut seperti primary keys
dan secondary keys.
14
- Seluruh tipe data dan format, atribut, dan peraturan
bisnis harus dirinci dan disimpan dalam tempat
penyimpanan.
- Idealnya, konseptual basis data harus di normalisasi.
Jadi, Basis Data Konseptual adalah Basis Data yang
dirancang mewakili entitas-entitas pada proses
bisnis untuk menjelaskan entitias beserta
hubungannya yang digambarkan ke dalam ER
Diagram.
2.2.1.1.2. Basis Data Logikal
Di dalam merancang Basis Data, juga melalui
tahap perancangan Basis Data Logikal. Basis Data
Logikal diperlukan untuk mengetahui basis data secara
struktur logikal yaitu menterjemahkan konseptual yang
ada ke dalam pembangunan suatu model informasi.
Menurut Connolly and Begg (2010, p465),
untuk menterjemahkan representasi konseptual ke
dalam struktur logikal dari basis data yang meliputi
perancangan hubungan-hubungannya diperlukan
perancangan basis data logikal. Selain itu, dalam proses
membangun sebuah model informasi yang digunakan
dalam model informasi enterprise berdasarkan satu
model data. Tetapi terbebas dari DBMS dan aspek
15
fisikal lainnya. Tahapan pada pembuatan basis data
logikal adalah :
- Memperoleh hubungan logikal data model
Pada tahap ini harus memperoleh hubungan untuk
merepresentasikan entitas, hubungannya, dan
atributnya. Lalu mendeskripsikan bagaimana
hubungan diperoleh pada struktur tertentu yang
terjadi didalam konseptual data model:
1. Tipe entitas kuat
2. Tipe entitas lemah
3. Tipe hubungan satu-ke-banyak (1:*)
4. Tipe hubungan satu-ke-satu (1:1)
5. Tipe hubungan satu-ke-satu (1:1) rekursif
6. Tipe hubungan superclass/subclass
7. Tipe hubungan banyak-ke-banyak (*:*)
rekursif
8. Tipe hubungan yang kompleks
9. Atribut multi-valued
- Memvalidasi hubungan menggunakan normalisasi
Pada tahap ini akan dilakukan validasi terhadap
pengelompokan atribut pada tiap hubungan. Tujuan
dari normalisasi ini adalah untuk memastikan
bahwa relasi tersebut memiliki nilai minimal yang
cukup dari atribut yang dibutuhkan untuk
16
mendukung kebutuhan data pada suatu perusahaan
atau organisasi. Hal ini juga dapat dilakukan untuk
mengurangi redundansi.
- Memvalidasi hubungan terhadap transaksi
pengguna
Tujuan utama dari tahap ini adalah untuk
memvalidasi logikal data model dan memastikan
bahwa model mendukung transaksi yang
dibutuhkan pengguna, seperti yang sudah dirinci
dalam user requirements. Disini harus diperiksa
apakah terjadi error saat membuat relasi yang
berkaitan dengan hubungan antar entitas.
- Mengecek integritas constraints
Pada tahap ini kita membuat constraint atau batasan
pada database untuk menghindari terjadinya
pemasukan data dengan format yang berbeda, salah,
atau tidak lengkap.
- Mengulas logical data model dengan pengguna
Setelah seluruh tahapan tersebut selesai dibuat,
maka sekarang kita harus mengulas kembali logikal
data model yang telah kita buat dengan pengguna.
Apakah sesuai dengan kebutuhan user atau tidak.
- Menggabungkan logikal data model kedalam global
model (opsional)
17
Tahap ini menggabungkan logikal model menjadi
global model yang merepresentasikan seluruh
pandangan user terhadap database. Jadi tidak hanya
dari salah satu sisi pengguna saja.
- Mengecek perkembangan ke masa depan
Kita harus mempertimbangkan bagaimana
kedepannya database yang dirancang. Apakah
mampu untuk mendukung kebutuhan perusahaan
kedepannya.
Jadi, Basis Data Logikal adalah Basis Data yang
dirancang untuk menterjemahkan entitias konseptual
beserta hubungannya menjadi suatu model informasi
yang berguna dengan membangun struktur logikalnya.
2.2.1.1.3. Basis Data Fisikal
Di dalam merancang Basis Data, juga melalui
tahap akhir perancangan yakni pada Basis Data Fisikal.
Basis Data Fisikal diperlukan untuk
mengimplementasikan langsung secara fisik ke dalam
Database Management System dan mendeskripsikan
tempat penyimpanan data-data tersebut.
Menurut Connolly and Begg (2010, p465),
Basis Data Fisikal adalah menentukan bagaimana
struktur logikal diimplementasi secara fisik (sebagai
base relation) ke dalam target DBMS. Proses yang
18
dihasilkan adalah deskripsi dari implementasi suatu
basis data pada penyimpanan kedua. Hal ini
mendeskripsikan struktur penyimpanan dan metode
akses yang digunakan untuk mengakses data secara
efektif.
Tahapan-tahapan yang ada dalam perancangan
basis data fisikal yaitu sebagai berikut:
- Langkah 1 Menterjemahkan model data untuk
target DBMS
o Langkah 1.1 Mendesain relasi basenya
o Langkah 1.2 Mendesain representasi dari
derrived data.
o Langkah 1.3 Mendesain batasan umum
- Langkah 2 Mendesain File organisasi dan indeks
o Langkah 2.1 Menganalisis Transaksi
o Langkah 2.2 Memilih file organisasi
o Langkah 2.3 Memilih indeks
o Langkah 2.4 Mengeliminasi
- Langkah 3 Mendesain tampilan pengguna
- Langkah 4 Mendesain mekanisme keamanan
Jadi, Basis Data Fisikal adalah basis data yang
secara fisik di dalam Database Management System
sebagai base relation yang mendeskripsikan tempat
penyimpanan data-data tersebut.
19
2.2.2. Entity Relationship Modelling (ER Modelling)
Entity Relationship Modelling adalah sebuah pemodelan entitas
yang saling berhubungan. Hal ini dibuat untuk melihat secara keseluruhan
apa saja entitas yang ada di dalam perancangan basis data dan kemana saja
hubungan entitas itu.
Menurut Connolly and Begg (2010, p371), Entity Relationship
Modelling adalah pendekatan top-down untuk merancang basis data yang
dimulai dengan mengidentifikasi data-data penting yang disebut dengan
entitas dan hubungannya di dalam pemodelan suatu data.
2.2.2.1. Entity Type
Entitas memiliki tipe tersendiri untuk
mendeskripsikannya. Ada entitas yang lemah dan adapula entitas
yang kuat, hal itu terlihat dari seberapa independen entitas
tersebut.
Menurut Connolly and Begg (2010, p372), jenis Entitas
adalah sekumpulan objek dengan properties yang sama dan
diidentifikasikan oleh perusahaan yang keberadaannya diakui
secara independen.
Menurut Connolly and Begg (2010, p383), jenis Entitas
atau Entity Type dibagi menjadi 2 (dua) jenis yaitu :
1. Strong Entity Type
Entitas yang tidak bergantung pada entitas lain.
2. Weak Entity Type
Entitas yang bergantung pada entitas lain.
20
2.2.2.2. Relationship
Salah satu hal penting dalam penggambaran ER
Modelling adalah harus menggambarkan hubungan antar entitas.
Tipe dari hubungan yang terjadi antar entitas pun ada banyak
macamnya.
Menurut Connolly and Begg (2010, p 374) Hubungan
Entitas adalah sekumpulan asosiasi yang memiliki arti di antara
jenis entitas-entitas.
Hubungan antar entitas dibagi menjadi 2 (dua) jenis
yaitu:
1. Hubungan berdasarkan tingkatannya
Jumlah partisipan jenis entitas di dalam hubungan
antar entitas.
2. Hubungan Rekursif
Hubungan yang entitasnya sama tetapi peran yang
berbeda.
2.2.2.3. Attribute
Attribute adalah sifat atau properti yang dimiliki oleh
sebuah entitas. Attribute ini berisi catatan-catatan yang disimpan
dalam sebuah entitas.
Menurut Connolly and Begg (2010, p379) Attribute
merupakan properties dari entitas atau hubungannya. Di dalam
Attribute ada yang disebut dengan Attribute Domain. Attribute
21
Domain adalah sekumpulan nilai yang diperbolehkan untuk satu
atau lebih Attribute.
Klasifikasi Attribute dibagi menjadi 3 (tiga) yaitu :
1. Simple and Composite Attribute
Simple Attribute adalah yang dibentuk dari
komponen tunggal dengan komponen independen
yang ada.
Composite Attribute adalah Attribute yang
dibentuk dari komponen jamak dan masing-masing
komponennya independen.
2. Single-valued and Multi-valued Attribute
Single-valued adalah Attribute yang memiliki nilai
tunggal untuk setiap kejadian dari tipe entitas yang
ada.
Multi-valued Attribute adalah Attribute yang
memiliki banyak nilai untuk setiap kejadian dari
tipe entitas yang ada.
Di dalam Attribute ada yang dipakai menjadi key yang
terdiri dari :
1. Candidate Key
Attribute yang bersifat unik mengidentifikasikan
setiap kejadian yang terjadi pada entitas.
22
2. Primary Key
Candidate Key yang telah dipilih untuk dijadikan
key utama di dalam entitas yang
mengidentifikasikan kejadian yang terjadi pada
entitas.
3. Composite Key
Candidate Key yang terdiri dari dua atau lebih
attribute.
2.2.3. Normalisasi
Normalisasi sangat penting di dalam perancangan basis data. Hal
tersebut karena Normalisasi membuat record table menjadi normal
sehingga mencegah timbulnya redundansi data.
Menurut Connolly and Begg (2010, p416), Normalisasi adalah
suatu teknik untuk menghasilkan suatu relasi dengan properties yang
diinginkan untuk menyajikan kebutuhan data perusahaan. Tujuan utama
Normalisasi adalah untuk mengidentifikasikan kumpulan relasi yang
cocok untuk mendukung kebutuhan data perusahaan.
Normalisasi melalui beberapa proses, yang terdiri atas :
1. First Normal Form (1NF)
Sebelum melakukan proses 1NF, bentuk tabel
dalam keadaan tidak normal (Unnormalize Form/UNF).
1NF adalah keadaan table yang membagi setiap baris dan
kolom menjadi hanya satu nilai.
23
2. Second Normal Form (2NF)
Relasi yang ada pada bentuk normal pertama dan
setiap Attribute yang bukan kunci bergantung penuh
secara fungsional kepada primary key.
3. Third Normal Form (3NF)
Relasi yang ada pada bentuk normal kedua dan
setiap Attribute yang bukan kunci bergantung secara
transitif kepada primary key.
2.2.4. Flowchart
Flowchart adalah penggambaran secara grafik dari langkah-langkah
dan urut-urutan prosedur dari suatu program. Flowchart menolong analyst
dan programmer untuk memecahkan masalah kedalam segmen-segmen
yang lebih kecil dan menolong dalam menganalisis alternatif-alternatif
lain dalam pengoperasian.
Menurut Anharku (2009, p1) Flowchart adalah penyajian yang
sistematis tentang proses dan logika dari kegiatan penanganan informasi
atau penggambaran secara grafik dari langkah-langkah dan urut-urutan
prosedur dari suatu program. Flowchart menolong analyst dan
programmer untuk memecahkan masalah kedalam segmen-segmen yang
lebih kecil dan menolong dalam menganalisis alternatif-alternatif lain
dalam pengoperasian. System flowchart adalah urutan proses dalam
system dengan menunjukkan alat media input, output serta jenis media
penyimpanan dalam proses pengolahan data. Program flowchart adalah
suatu bagan dengan simbol-simbol tertentu yang menggambarkan urutan
24
proses secara mendetail dan hubungan antara suatu proses (instruksi)
dengan proses lainnya dalam suatu program.
Adapun simbol-simbol dari Flowchart adalah sebagai berikut :
Tabel 2.1 Tabel Simbol-simbol Flowchart
(Sumber : http://www.smartdraw.com/resources/tutorials/Data-Flow-
Diagram-Notations)
25
2.2.5. Data Flow Diagram (DFD)
Data Flow Diagram (DFD) adalah alat pembuatan model yang
memungkinkan profesional sistem untuk menggambarkan sistem sebagai
suatu jaringan proses fungsional yang dihubungkan satu sama lain dengan
alur data, baik secara manual maupun komputerisasi. DFD ini sering
disebut juga dengan nama Bubble chart, Bubble diagram, model proses,
diagram alur kerja, atau model fungsi.
Menurut Yourdon (2011), Data Flow Diagram merupakan diagram
yang mengilustrasikan bagaimana diproses oleh system dalam hal input
dan output.
Gambar 2.1 Notasi Data Flow Diagram
(Sumber : http://www.smartdraw.com/resources/tutorials/Data-
Flow-Diagram-Notations)
26
2.2.6. State Transition Diagram
State Transition Diagram atau biasa disingkat STD merupakan
suatu alat bantu modelling yang menggambarkan sifat ketergantungan
pada waktu dari suatu sistem.
Menurut Harel and Moore (2011), State Transition Diagram
digunakan untuk membuat pemodelan berorientasi objek. Hal yang
mendasarinya adalah untuk mendefinisikan suatu sistem yang memiliki
sejumlah states. Suatu sistem menerima kejadian dari interaksi yang ada di
luar, dan masing-masing kejadian tersebut menyebabkan perpindahan dari
satu state ke state lainnya.
State Transition Diagram juga memiliki arah yang mengelilingi
dalam pemodelan berorientasi objek. Hal tersebut menjelaskan behavior
suatu sistem. Ini berarti mengharuskan analyst untuk mendefinisikan
semua state yang mungkin terjadi dan ada pada suatu sistem. Baik pada
sistem yang kecil, maupun sistem yang besar. Hal ini juga dapat terjadi
dengan peningkatan jumlah state yang ada di dalam analisis suatu sistem.
Metode berorientasi objek juga mendefinisikan state transition diagram
yang terpisah pada masing-masing classnya.
Ada 2 (dua) jenis State Transition Diagram, yaitu : model Harel dan
model Moore. Sebagai gambaran, dapat dilihat pada gambar di bawah ini :
27
a. State Transition Diagram model Harel
Gambar 2.2 Contoh State Transistion Diagram model Harel
(Sumber : Harel and Moore, 2011,
http://www.cs.unc.edu/~stotts/145/CRC/state.html)
28
b. State Transition Diagram model Moore
Gambar 2.3 Contoh State Transistion Diagram model Moore
(Sumber : Harel and Moore, 2011,
http://www.cs.unc.edu/~stotts/145/CRC/state.html)
Jenis State Transition Diagram yang paling banyak digunakan
adalah yang model Harel, yang terlihat pada Gambar 2.3 dibandingkan
model Moore, yang terlihat pada Gambar 2.4. Model ini diadaptasikan
dari Unified Modelling Language (UML) sehingga mudah dimengerti alur
sistemnya. Hal ini sangat berguna untuk menganalisis sistem beserta alur
prosesnya dan menggunakan pendekatan yang dapat menangani proses
sistem.
29
Menurut Leoni (2011), State Transition Diagram adalah diagram
yang merepresentasikan serangkaian states dan aktivitas yang berkaitan di
dalam hubungan suatu sistem. Diagram ini menggambarkan hubungan
antar state dengan state yang lainnya, dan juga menjelaskan perpindahan
alur suatu sistem sesuai waktu dan prioritas mana yang lebih diutamakan.
State Transition Diagram digunakan untuk mengembangkan analyst
dalam merangkai suatu sistem secara real-time dan berorientasi objek.
Berikut ini adalah contoh gambar dari State Transition Diagram :
Gambar 2.4 Contoh State Transistion Diagram
(Sumber : Leoni, 2011,
http://www.hit.ac.il/staff/leonidm/information-systems/ch30.html)
Berikut ini adalah istilah-istilah yang merupakan bagian dari State
Transition Diagram :
30
1. Activity (function)
Sebuah proses atau kejadian yang berpindah pada suatu sistem,
dari state satu ke state lainnya.
2. Deterministic state transition diagram
Sebuah State Transition Diagram yang memberikan fungsi yang
diasosiasikan input yang paling sering dilakukan.
3. Feedback
Kembalinya bagian output sistem ke dalam input sehingga
memberikan umpan balik secara berkelanjutan.
4. Fence diagram
Sebuah Transition Diagram yang menggambarkan state secara
garis vertical dan aktivitas secara garis horizontal.
5. Node
Sebuah simbol (biasanya berbentuk lingkaran) pada State
Transition Diagram yang merepresentasikan sebuah state.
6. Non-deterministic state transition diagram
Sebuah State Transition Diagram yang memberikan fungsi input
lalu diasosiasikan dengan lebih dari sebuah transisi.
7. Real-time system
Sebuah sistem yang dirancang untuk menanggapi kejadian nyata
dalam waktu yang berjalan (real time).
8. Recursion
Kemampuan untuk memanggil state-nya sendiri.
31
9. State
Sebuah kondisi yang menggambarkan suatu phase, bentuk dan
struktur alur sistem yang berjalan.
10. Transition
Perpindahan dari bagian state yang satu ke bagian state yang
lainnya.
Jadi, State Transition Diagram adalah diagram yang
merepresentasikan serangkaian states dan aktivitas yang berkaitan di
dalam hubungan suatu sistem dan sangat berguna untuk menganalisis
sistem beserta alur prosesnya karena menggunakan pendekatan yang dapat
menangani proses sistem secara berorientasi objek.
2.2.7. Database Management System (DBMS)
Database Management System atau biasa disebut DBMS
merupakan perangkat lunak yang digunakan untuk mengatur basis data.
Contoh DBMS yang banyak dipakai saat ini adalah Oracle, SQL server,
ataupun mySQL.
Menurut Connolly and Begg (2010, p16), DBMS adalah perangkat
lunak sistem yang memungkinkan pengguna untuk mendefinisikan,
membuat dan merawat basis data dan yang menyediakan akses kendali
kepada basis data tersebut.
Kroenke (2010, p11) menyatakan DBMS (Database Management
System) membuat, memproses dan mengadministrasikan basis data. Selain
untuk membuat basis data, DBMS juga bisa digunakan untuk membuat
tabel dan struktur pendukung lainnya yang ada pada basis data.
32
Di dalam bukunya, Hoffer (2009, p49) menyatakan bahwa DBMS
adalah sebuah sistem perangkat lunak yang digunakan untuk membuat,
memelihara dan menyediakan akses kendali pengguna dalam basis data.
DBMS menyediakan metode sistematis dalam membuat, pembaharuan,
menyimpan dan menerima data dalam basis data.
Hal tersebut memungkinkan pengguna dan program untuk bertukar
data dan data tersebut dapat dibagi kepada banyak aplikasi daripada harus
menyimpan file baru untuk setiap aplikasi baru. Database Management
System (DBMS) juga menyediakan fasilitas untuk mengontrol akses data,
membuat data terintegrasi, mengelola concurency control dan
mengembalikan basis data.
Jadi, Database Management System (DBMS) DBMS adalah suatu
perangkat lunak yang dapat membuat, mengelola, memperbarui, dan
menyedian akses kontrol untuk user ke dalam basis data.
2.2.7.1. Fungsi Database Management System (DBMS)
Fungsi yang ditawarkan oleh DBMS sangatlah banyak.
Hal ini membuat pengguna dapat dengan mudahnya mengakses
dan mengelola basis data yang ada.
Di dalam bukunya, Kronke (2010, p11) menjelaskan
bahwa fungsi DBMS terdiri atas :
- Membuat basis data
- Membuat tabel
- Membuat struktur pendukung (contoh : pemberian indeks)
- Membaca data pada basis data
33
- Memanipulasi data pada basis data (insert, update, delete)
- Mengelola struktur basis data
- Membuat aturan
- Control Concurrency
- Memfasilitasi keamanan, melakukan backup dan recovery
2.2.7.2. Komponen Database Management System (DBMS)
Untuk menjalankan Database Management System
(DBMS), dibutuhkan beberapa komponen yang mendukungnya.
Karena DBMS adalah sebuah perangkat lunak, maka dia tidak
akan bisa bekerja tanpa adanya perangkat keras dan pengguna
yang mendukungnya.
Pada bukunya, Connolly and Begg (2010, p68)
komponen-komponen basis data terdiri atas :
- Perangkat Keras
Database Management System (DBMS) dan aplikasi
memerlukan perangkat keras untuk menjalankannya agar
sistem dapat berjalan dengan baik.
- Perangkat Lunak
Perangkat lunak yang menghubungkan Database
Management System (DBMS) bersama sistem operasi juga
dengan jaringan berjalan bersama melalui bahasa yang
digunakan seperti Third Generation Programming
Language (C , C#, C++, Java)
34
- Data
Data merupakan bagian terpenting dalam Database
Management System (DBMS). Pada struktur basis data ada
yang dinamakan skema, meta data, dan struktur data.
- Prosedur
Prosedur merupakan instruksi dan aturan yang diberikan
dalam merancang basis data. Hal ini bertujuan untuk
mengelola basis data untuk dijalankan pada sistem.
- Orang
Komponen terakhir adalah orang yang dapat
mempengaruhi sistem yang berjalan.
Gambar 2.5 Komponen Database Management System (DBMS)
(Sumber : Connolly and Begg, 2010, p68)
2.2.7.3. Keunggulan Database Management System (DBMS)
Database Management System (DBMS) memiliki
beberapa keunggulan dibanding dengan tidak memakai DBMS.
Hal paling berguna pada DBMS adalah pengguna mampu
mengelola dan mengamankan data yang ada pada basis data
secara lebih mudah.
35
Menurut Connolly and Begg (2010, p77) keunggulan
dalam Database Management System (DBMS) adalah sebagai
berikut :
- Mengendalikan redundansi data
Di dalam pengelolaan data diperlukan pengendalian data
untuk menghilangkan redundansi dengan
mengintegrasikan file-file yang ada pada berbagai tempat
dan yang sama tidak disimpan.
- Data menjadi konsisten
Dengan menghilangkan redundansi maka data akan
menjadi konsisten sehingga nilai baru dapat segera
dipastikan keakuratannya.
- Informasi mengenai data menjadi banyak
Dengan mengintegrasikan data-data operasional maka
dimungkinkan suatu organisasi mengendalikan informasi
dari sumber yang sama sehingga informasi lain dapat
diperoleh untuk organisasi.
- Dapat berbagi data
Secara umum file-file yang disimpan dalam departemen
yang berbeda dapat dilakukan pertukaran data.
- Meningkatkan integritas
Integritas basis data bertujuan untuk mencapai validitas
dan konsistensi dalam penyimpanan data, integritas juga
digunakan untuk membuat suatu batasan atau constraints.
36
- Meningkatkan keamanan
Keamanan basis data diperlukan untuk menjaga keamanan
data agar tidak dapat disalahgunakan.
- Memberlakukan standard
Integrasi diperbolehkan oleh Database Administrator
(DBA) untuk menentukan standar-standar yang berlaku
dan bersifat penting pada Database Management System
(DBMS).
- Skala ekonomi
Dengan menggabungkan data-data operasional organisasi
ke dalam basis data membuat satu sumber penyimpanan
data sehingga hemat dalam cost.
- Menyesuaikan kebutuhan yang bertentangan
Setiap pengguna pada departemen membutuhkan data
akan mengalami pertentangan dalam penggunaannya,
untuk itu diperlukan pengelolaan untuk mengatasi
perbedaan tersebut.
- Meningkatkan aksesibilitas dan respon
Hasil dari integrasi meningkatkan aksesibilitas dan daya
respon yang cepat di dalam menangani permintaan
pengguna.
37
- Meningkatkan produktivitas
DBMS menyediakan banyak standar dan fungsi agar dapat
meningkatkan produktifitas dalam penggunaan,
penyimpanan dan pengelolaan data.
- Meningkatkan pemeliharaan atas data yang independen
Akses data yang telah ditentukan bertujuan untuk
penyimpanan data yang efektif sehingga pemeliharaan
data dapat berjalan secara independen.
- Meningkatkan Concurency
Dalam mengakses data secara bersamaan harus dapat
dikendalikan agar tidak terjadi kehilangan integritas data.
- Meningkatkan pelayanan Backup & Recovery
Tanggung jawab pengguna untuk menyediakan ukuran
dalam menjaga data dari kehilangan, ditentukan oleh
program aplikasi dengan membuat backup dan recovery
setiap pengguna.
2.2.7.4. Kelemahan Database Management System (DBMS)
Dengan banyaknya keunggulan yang ditawarkan oleh
DBMS bukan berarti Database Management System (DBMS)
tidak mempunyai kelemahan. Ada beberapa hal yang membuat
perusahaan atau organisasi tidak menerapkannya.
Menurut Connolly and Begg (2010, p80) kelemahan
dalam DBMS adalah sebagai berikut :
38
- Kompleksitas
Fungsi dari Database Management System (DBMS) yang
baik menghasilkan kompleksitas struktur data dan
perancang basis data harus menyesuaikan
kekompleksitasan tersebut.
- Ukuran
Kompleksitas menyebabkan ukuran data menjadi besar
sehingga membutuhkan media penyimpanan yang besar
pula.
- Biaya
Biaya yang dibutuhkan untuk implementasi DBMS serta
pemeliharaannya tidak sedikit.
- Biaya tambahan hardware
Biaya hardware tambahan untuk pengimplementasian
DBMS tergolong besar.
- Biaya konversi
Biaya untuk DBMS, tambahan hardware dari yang lama
menuju implementasi baru (konversi) besar.
- Performa
Secara umum memang baik tetapi dibuutuhkan berbagai
aplikasi untuk mendukungnya.
39
- Dampak kegagalan
Pemusatan sumber data untuk semua pengguna yang
tersedia pada DBMS dapat menyebabkan kegagalan yang
besar apabila pengelolaannya tidak tepat.
2.2.8. Perencanaan, Desain, dan Administrasi Basis Data
Didalam merancang basis data, diperlukan perencanaan
dan desain yang sempurna untuk menjadi landasan dalam
pembuatan basis data. Perencanaan dan desain yang bagus akan
menghasilkan basis data yang bagus pula.
2.2.8.1. Database Application Life Cycle
Pada Aplikasi Basis Data diperlukan acuan untuk
melakukan perancangan tersebut. Acuan yang dimaksud tersebut
adalah Siklus Hidup Aplikasi Basis Data atau dikenal dengan
istilah Database Application Life Cycle.
Menurut Connolly and Begg (2010, p313), Database Life
Cycle adalah komponen dasar didalam sistem informasi suatu
organisasi yang bertujuan untuk merencanakan dan merancang
basis data dari tingkatan awal sampai akhir.
Jadi, Siklus Hidup Aplikasi Basis Data atau dikenal
dengan istilah Database Application Life Cycle adalah siklus
hidup yang menggambarkan tahapan-tahapan di dalam melakukan
perancangan apliakasi basis data yang baik.
40
Untuk mengetahui tahapan-tahapan yang ada pada Siklus
Hidup Aplikasi Basis Data (Database Application Life Cylce)
dapat dilihat pada gambar berikut ini :
Gambar 2.6 Database Application Life Cylce
(Sumber : Connolly and Begg, 2010, p314)
41
2.2.8.2. Tahapan Database Application Life Cycle
Menurut Connolly and Begg (2010, p315) tingkatan
siklus hidup aplikasi basis data terdiri atas :
- Database Planning
Merencanakan bagaimana basis data dibuat.
- System Definition
Mendefinisikan ruang lingkup dan batasan sistem.
- Requirements Collection and Analysis
Mengumpulkan dan menganalisis kebutuhan untuk sistem
basis data yang baru.
- Database Design
Merancang basis data, konseptual, logikal, fisikal.
- DBMS Selection
Pemilihan DBMS yang tepat sesuai dengan kebutuhan.
- Application Design
Merancang antar muka program aplikasi serta proses basis
data.
- Prototyping
Membangun pemodelan suatu pekerjaan sistem yang baru
agar sesuai dengan yang diinginkan
- Implementation
Membuat aplikasi basis data secara fisik berserta prorgram
aplikasinya.
42
- Data Conversion & Loading
Memuat data dari sistem yang lama menuju sistem yang
baru kemudian dilakukan konversi.
- Testing
Menguji sistem basis data agar valid dan sesuai dengan
kebutuhan persyaratan yang digunakan oleh pengguna.
- Operational & Maintenance
Ketika sistem basis data diimplementasikan sepenuhnya,
maka dilakukan pengawasan dan pemeliharaan sehingga
kebutuhan basis data sesuai dengan tingkatan siklus hidup.
2.2.8.3. Database Planning
Di dalam bukunya, Connolly and Begg (2010, p313)
menyatakan, untuk merencanakan basis data harus terintegrasi
dengan seluruh strategi SI yang ada pada organisasi. Ada 3 (tiga)
masalah utama dalam memformulasikan strategi SI, diantaranya:
- Mengidentifikasi rencana perusahaan dan tujuannya
untuk disesuaikan dengan strategi sistem informasi.
- Mengevaluasi sistem informasi yang ada dengan
mengamati kelemahan dan kekurangannya.
- Penilaian terhadap kesempatan IT untuk mencapai
keunggulan kompetitif.
2.2.8.4. Mission Statement
Mission Statement diperlukan untuk mengetahui uraian
singkat secara deskripsi mengenai perancangan basis data yang
43
akan dilakukan. Mission Statement dibuat sebelum menentukan
Mission Objective.
Menurut Connolly and Begg (2010, p313), mission
statement merupakan suatu langkah penting yang menjelaskan
secara deskripsi di dalam merencanakan pembangunan basis data.
Mission statement juga menentukan tujuan secara umum dalam
perencanaan basis data.
Jadi, Mission Statement adalah uraian singkat secara
deskripsi mengenai perancangan basis data yang akan dilakukan
agar mengetahui gambaran secara umum apa yang dibutuhkan.
2.2.8.5. Mission Objective
Mission Objective diperlukan untuk mengetahui tujuan
dan sasaran mengenai perancangan basis data yang akan
dilakukan. Mission Statement dibuat setelah menentukan Mission
Statement..
Menurut pernyataan Connolly and Begg (2010, p315)
pada bukunya, mission objective adalah tujuan dan sasaran yang
ingin dicapai di dalam merencanakan perancangan basis data agar
sesuai dengan kebutuhan dan yang diinginkan perusahaan.
Jadi, Mission Objective adalah tujuan dan sasaran yang
ingin dicapai di dalam merencanakan perancangan basis data agar
sesuai dengan kebutuhan.
44
2.2.9. Fact-Finding Technique
Untuk mencari sebuah fakta di dalam sebuah permasalahan di
lapangan, maka diperlukan berbagai teknik tertentu. Fact-Finding
Technique adalah teknik pencarian fakta yang dapat digunakan dalam
mencari fakta tersebut.
Menurut Connolly and Begg (2010, p317), di dalam mengumpulkan
dan menganalisis informasi dibutuhkan suatu teknik yang disebut dengan
Fact-Finding Technique. Fact-Finding Technique adalah suatu teknik
untuk mencari fakta guna mendukung informasi yang dikumpulkan.
Ada 5 (lima) teknik dalam Fact-Finding Technique yang biasa
dipakai untuk mencari fakta, kelima teknik itu adalah :
- Examining Document
Dalam proses ini anayst mencari informasi tentang
seberapa pentingkah kebutuhan akan basis data di
dalam perusahaan atau organisasi. Proses mempelajari
dokumentasi juga dapat mendukung dalam merespon
kebutuhan untuk perbaikan dari sistem yang sudah
berjalan. Dalam fase ini, dibutuhkan dokumentasi
sistem yang sudah ada, surat-surat dalam proses bisnis,
serta bentuk laporan yang sudah digunakan.
- Interviewing
Proses ini biasanya menutupi semua aspek pertanyaan
yang perlu diajukan kepada responden. Wawancara
adalah teknik paling umum dan paling berguna dalam
45
pencarian fakta kepada perusahaan atau organisasi.
Tetapi untuk melakukan wawancara yang baik dan
mendapatkan hasil yang baik pula, dibutuhkan
kemampuan komunikasi yang baik agar hasil dari
pertanyaan yang diberikan kepada responden dapat
diterima dengan jelas dan dapat dijawab dengan baik
pula dan tepat sasaran. Saat melakukan wawancara,
dapat mengetahui tingkat kebenaran atau ketepatan
informasi yang diberikan kepada responden dengan
melihat bahasa tubuh dari responden saat melakukan
wawancara.
- Observing the enterprise in operation
Dengan teknik ini, pengumpulan data dapat dilakukan
dengan mengamati dan berbaur dengan para pelaku
bisnis serta mengikuti proses bisnis yang berjalan pada
perusahaan tersebut. Pengalaman yang didapatkan di
lapangan berbeda dengan yang di informasikan oleh
responded sehingga akan lebih mengerti mengenai
proses bisnis dan masalah yang ada padanya.
- Research
Teknik ini dapat membantu dalam bagaimana
pengaplikasian sistem yang akan dibuat, dan
menemukan solusi dari permasalahan yang ada. Riset
dilakukan dengan mencari informasi dalam buku
46
referensi ataupun jurnal. Dari sumber tersebut
mungkin dapat ditemukan bagaimana suatu masalah
yang sama diselesaikan, dan bisa dijadikan referensi
dalam analisis dan perancangan yang akan dilakukan.
- Questionnaires
Teknik ini biasanya digunakan untuk mengumpulkan
fakta dari responden yang jumlah nya banyak. Teknik
ini akan lebih menghemat waktu dan uang daripada
harus mewawancara seluruh responden satu per satu.
Tetapi ada kekurangan yang signifikan dibandingkan
dengan wawancara yaitu tingkat kebenaran dari
informasi yang didapat hanya tertulis dan bisa saja
responden menutupi informasi yang dianggap sensitif.
2.2.10. Arsitektur ANSI-SPARC
Menurut Connolly and Begg (2010, p86), ANSI-SPARC
merupakan singkatan dari The American National Standards Institute -
Standard Planning And Recuirment Committee. Arsitektur tersebut
dikenal dengan tiga level pendekatan dengan sistem katalog. 3 (tiga) level
tersebut adalah :
- Level Eksternal
Eksternal adalah cara pengguna menerima data. Level ini juga
mendeskripsikan bagian dari basis data yang relevan dari setiap
pengguna.
47
- Level Konseptual
menyediakan pemetaan dan ketidaktergantungan yang diinginkan di
antara level eksternal dan internal. Level ini mendeskripsikan data
apa yang disimpan ke dalam basis data dan hubungan antar data.
- Level Internal
Internal adalah cara DBMS dan sistem operasi menerima data. Level
ini mendeskripsikan bagaimana data disimpan dalam basis data.
Berikut adalah gambar yang menjelaskan ketiga level arsitektur tersebut :
Gambar 2.7 ANSI-SPARC Architecture
(Sumber : Connolly and Begg, 2010, p86)
48
2.2.11. Database Language
Seperti halnya bahasa pemrograman, basis data memiliki bahasa
tersendiri. Database Language adalah bahasa yang digunakan dalam
membuat ataupun mengelola basis data.
Menurut Connolly and Begg (2010, p91), Database Language
terdiri atas 2 (dua) bagian yaitu:
- Data Definition Language (DDL)
- Data Manipulation Language (DML)
Bahasa tersebut biasa disebut dengan data sublanguages karena
tidak bisa membangun semua kebutuhan komputer, seperti memberikan
pernyataan kondisi atau perulangan yang mana hal tersebut difasilitasi
pada bahasa pemrograman tingkat tinggi (fortran, pascal, C, C#, Java).
Dalam hal ini bahasa pemrograman tingkat tinggi biasa disebut host
language.
Jadi, bahasa pemrograman adalah bahasa yang digunakan dalam
membuat ataupun mengelola sistem basis data. Selain itu juga dapat
menghubungkan pada platform program aplikasi sehingga dapat
memproses input dan suatu perintah serta menghasilkan keluaran yang
baik.
2.2.11.1. Data Definition Language
Sebuah bahasa yang digunakan untuk mendefinisikan data
disebut juga Data Definition Language. Umumnya sintaks Create
adalah bahasa yang digunakan untuk mendefinisikan data.
49
Di dalam bukunya, Connolly and Begg (2010, p92)
menyatakan bahwa Data Definition Language adalah bahasa yang
memperbolehkan Database Administrator (DBA) atau pengguna
untuk mendeskripsikan dan menamai entitas, atribut, dan
hubungan yang dibutuhkan untuk aplikasi bersamaan degan
asosiasi integritas dan batasan keamanan lainnya.
Pada level teoritikal, kita dapat mendefinisikan DDL yang
berbeda pada setiap skema yang ada pada three-level architecture.
Dari hasil kompilasi pernyataan DDL adalah sebuah tabel yang
tersimpan dalam file khusus yang dikumpulkan dan dikenal
dengan System Catalog.
System Catalog mengintegrasikan metadata dimana data
yang mendeskripsikan objek pada basis data dan memudahkannya
untuk mengakses dan memanipulasi objek tersebut. Metadata
mengandung definisi dari record data item dan objek lainnya yang
menarik bagi pengguna dan dibutuhkan oleh DBMS.
Data Dictionary dan Data Directory juga digunakan
untuk mendeskripsikan System Catalog walaupun penggunaan
Data Dictionary biasanya mengacu pada Sistem Perangkat Lunak
secara umum daripada catalog untuk DBMS.
Berikut ini adalah contoh syntax yang digunakan untuk
membuat basis data, dikutip pada jurnal MSDN (2011) :
50
Create a database snapshot
CREATE DATABASE database_snapshot_name
ON
( NAME = logical_file_name,
FILENAME = ‘os_file_name’
)[,…n]
AS SNAPSHOT OF source_database_name
2.2.11.2. Data Manipulation Language
Untuk memanipulasi data dibutuhkan bahasa yang
dimengerti oleh data tersebut. Data Manipulation Language
menyediakan sintaks dimana pengguna dapat memanipulasi data
yang ada. Contoh sintaks yang sering digunakan adalah Select,
Update, Insert, dan Delete.
Di dalam bukunya, Connolly and Begg (2010, p92)
menjelaskan bahwa Data Manipulation Language adalah suatu
bahasa yang menyediakan kumpulan operasi untuk mendukung
manipulasi basic data pada data yang ada di basis data. DML
terbagi ke dalam 2 (dua) jenis, yaitu sebagai berikut :
- Procedural DML
Bahasa yang memperbolehkan pengguna untuk
memberitahukan pengguna mengenai data apa saja yang
dibutuhkan dan bagaimana mengambil data tersebut.
51
- Nonprocedural DML
Bahasa yang memperbolehkan pengguna untuk menyatakan
data apa yang dibutuhkan dibandingkan dengan bagaimana
untuk mengambilnya.
Di dalam pengelolaan basis data yerdapat operasi-operasi untuk
Manipulasi Data. Operasi-operasi tersebut terdiri atas :
- Insertion
Insertion adalah memasukkan data baru ke dalam basis data.
Berikut ini adalah contoh syntax yang digunakan untuk
melakukan insertion, dikutip pada jurnal MSDN (2011) :
INSERT INTO Cities (Location)
VALUES (CONVERT(Point,;12.3:46.2’)
- Modification
Modification adalah memodifikasi data yang tersimpan di
dalam basis data. Berikut ini adalah contoh syntax yang
digunakan untuk melakukan modification, dikutip pada jurnal
MSDN (2011) :
USE AdventureWorks2008R2;
GO
UPDATE Production.Product
SET ListPrice = ListPrice*2;
GO
52
- Retrieval
Retrieval adalah pengambilan data yang terkandung di dalam
basis data. Berikut ini adalah contoh syntax yang digunakan
untuk melakukan retrieval, dikutip pada jurnal MSDN (2011):
SELECT (ALL | DISTINCT)
[TOP(expression)[PERCENT][WITH TIES]]
<select_list>
[into_new_table]
[FROM{table_source>}[,...n]]
[WHERE<search_condition>]
[GROUP BY>]
HAVING<search_condition>]
- Delete
Delete adalah menghapuskan data dari basis data. Berikut ini
adalah contoh syntax yang digunakan untuk melakukan delete,
dikutip pada jurnal MSDN (2011) :
USE AdventureWorks2008R2;
GO
DELETE FROM
Production.ProductCostHistory
WHERE StandardCost > 1000.00;
GO
Recommended