BAB 2 LANDASAN TEORI 2.1 Teori- Teori Dasar/Umum Teori-teori ini diperlukan untuk mendukung penulisan laporan tugas akhir yang dibuat sebagai landasan dan acuan melakukan perancangan pada database. 2.1.1 Data Data merupakan komponen terpenting yang ada di dalam database. Data juga digunakan untuk sumber daya pada suatu perusahaan atau organisasi untuk membuat suatu database pada aplikasi yang memerlukan data untuk di olah agar dapat menjadi informasi yang berguna. Menurut Connolly & Begg (2010, p70), data merupakan bagian terpenting dari komponen suatu basis data. Menurut Hoffer, Prescott & Topi (2009, p46), data adalah representasi objek dan kejadian yang tersimpan dan mempunyai arti dan kepentingan kepada lingkungan pengguna. Jadi, data adalah komponen penting dalam suatu basis data yang mem-presentasikan objek dan kejadian yang tersimpan sehingga memiliki arti dan kepentingan untuk penggunanya. 8
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
BAB 2
LANDASAN TEORI
2.1 Teori- Teori Dasar/Umum
Teori-teori ini diperlukan untuk mendukung penulisan laporan tugas
akhir yang dibuat sebagai landasan dan acuan melakukan perancangan pada
database.
2.1.1 Data
Data merupakan komponen terpenting yang ada di dalam
database. Data juga digunakan untuk sumber daya pada suatu
perusahaan atau organisasi untuk membuat suatu database pada
aplikasi yang memerlukan data untuk di olah agar dapat menjadi
informasi yang berguna.
Menurut Connolly & Begg (2010, p70), data merupakan
bagian terpenting dari komponen suatu basis data.
Menurut Hoffer, Prescott & Topi (2009, p46), data adalah
representasi objek dan kejadian yang tersimpan dan mempunyai arti
dan kepentingan kepada lingkungan pengguna.
Jadi, data adalah komponen penting dalam suatu basis data
yang mem-presentasikan objek dan kejadian yang tersimpan sehingga
memiliki arti dan kepentingan untuk penggunanya.
2.1.2 Sistem
Sistem adalah komponen yang saling terhubung satu dengan
lainnya, sehingga menjadi suatu kesatuan yang utuh. Sistem juga
diperlukan untuk memberdayakan penggunaan informasi. Sistem
digunakan untuk mengintegrasikan data yang ada pada aplikasi.
Menurut Gelinas & Dull (2008, p11), sistem adalah kumpulan
dari elemen yang berdiri sendiri yang secara bersamaan untuk
mencapai tujuan tertentu. Sistem harus memiliki organisasi,
hubungan, integrasi, dan tujuan utama.
8
9
Menurut 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, tetapi dapat juga menyediakan lebih dari satu
tujuan. Saat sistem tidak memiliki tujuan lagi, maka sistem tersebut
harus digantikan.
Jadi, sistem adalah kumpulan dari dua atau lebih komponen
yang berdiri sendiri dan saling terkait untuk mencapai tujuan tertentu.
2.1.3 Informasi
Informasi merupakan pengolahan dari data yang terkumpul
dan dapat digunakan sebagai referensi perusahaan atau organisasi di
dalam pengambilan keputusan. Tidak hanya untuk perusahaan,
bahkan dunia maya juga dapat memberikan ataupun menyebarkan
informasi.
Menurut Gelle & Karhu (2010) dalam jurnalnya yang berjudul
“Information Quality for Strategic Technology Planning”, informasi
menjadi lebih global dari sebelumnya, dengan mengikuti
perkembangan pasar dan teknologi. Orang-orang harus
memperhatikan seluruh dunia, informasi yang tersebar diterima dari
distribusi sumber-sumber yang sudah ada.
Menurut Hoffer, Prescott & Topi (2009, p47), data yang telah
diproses sedemikian rupa sehingga meningkatkan pengetahuan dari
orang yang menggunakan tersebut dinamakan informasi.
Menurut Rainer (2007, p5), informasi mengacu pada data yang
telah terorganisir sehingga data memiliki makna dan nilai kepada
penerima.
Jadi, informasi adalah sebuah pengetahuan yang telah diproses
lebih lanjut terhadap data yang dimiliki sehingga data tersebut
memiliki makna dan nilai kepada penerima.
10
2.1.4 Database (Basis Data)
Database terdiri dari tabel-tabel yang saling terhubung satu
sama lain. Basis data ini memungkinkan untuk melakukan
penyimpanan data di internet sehingga tidak perlu memiliki database
dalam yang berbentuk fisik.
Menurut Connolly & Begg (2010, p65), database adalah
kumpulan dari relasi data logikal yang saling terkait (dan deskripsi
data), dirancang untuk memenuhi informasi yang dibutuhkan oleh
organisasi.
Pada buku karangan (Kusrini, 2007, p. 5) memuat beberapa
pengertian database, antara lain:
Himpunan kelompok data yang saling berhubungan yang telah
diorganisasi sedemikian rupa agar dapat dimanfaatkan dengan
cepat dan mudah.
Kumpulan data yang saling terintegrasi yang digunakan untuk
memenuhi kebutuhan akan data dengan cepat.
Kumpulan data yang saling berhubungan yang disimpan
secara bersama dan tidak ada pengulangan pada masing-
masing datanya.
Kumpulan arsip yang saling berhubungan dan disimpan dalam
media penyimpanan elektronik.
Dari pengertian di atas dapat ditarik kesimpulan bahwa
database adalah kumpulan dari data – data yang saling berkaitan
secara logis yang berguna untuk memenuhi kebutuhan pengguna.
Menurut Kroenke (2010, p12), database adalah kumpulan
tabel-tabel yang terintegrasi yang menjelaskan dirinya sendiri.
Sedangkan tabel terintegrasi itu sendiri adalah tabel-tabel yang
menyimpan seluruh data dan hubungan diantara data.
Menurut Liping Lu (2011), dalam jurnalnya yang berjudul
“Database Design Base on GIS Gas Management Network”, database
yang dikombinasikan dengan sistem pengelolaan model dan analisis
yang baik dapat menyediakan informasi berguna untuk perencanaan,
manajemen, dan pengambilan keputusan.
11
Jadi, database adalah suatu kumpulan data yang saling terkait
dan dirancang untuk memenuhi kebutuhan informasi bagi organisasi.
2.1.5 Database Management System (DBMS)
Dalam penggunaannya, DBMS berguna untuk meningkatkan
kualitas suatu perusahaan dengan mengatur proses bisnis perusahaan.
Menurut Hoffer, Prescott & Topi (2009, p49), DBMS adalah
sebuah sistem perangkat lunak yang digunakan untuk membuat,
memelihara, dan menyediakan akses kontrol untuk pengguna basis
data. Sebuah DBMS menyediakan metode sistematik untuk membuat,
memperbarui, menyimpan, mengambil data di databse.
Menurut Connolly & Begg (2010, p66), DBMS adalah sebuah
sistem perangkat lunak yang mampu mendefinisikan, membuat,
memelihara, dan mengatur akses ke databse.
Menurut Kroenke (2010, p11), DBMS digunakan untuk
membuat sebuah basis data dan untuk membuat tabel dan sebagai
struktur lain yang membantu di dalam databse.
Jadi, DBMS adalah sistem perangkat lunak yang mempunyai
kemampuan untuk membuat, menyimpan, memelihara, mengelola,
mengambil data dan mengatur akses ke databse.
2.1.5.1 Fungsi Database Management System (DBMS)
DBMS sangat berguna bagi perusahaan dalam
menjalankan proses bisnisnya agar dapat bersaing dengan
perusahaan lain. Menurut Connolly & Begg (2010, p99),
fungsi DBMS terdiri dari:
1. Data Storage, Retrieval, and Update
Sebuah DBMS harus menyediakan kemampuan untuk
menyimpan, mengambil, dan memperbaharui data
dalam database.
2. A User-Accessible Catalog
12
Sebuah DBMS harus menyediakan sebuah katalog
yang menggambarkan item data yang tersimpan dan
dapat diakses oleh pengguna.
3. Transaction Support
Sebuah DBMS harus menyediakan mekanisme yang
akan memastikan semua kegiatan update yang
berhubungan dengan transaksi maupun tidak.
4. Concurrency Control Service
Sebuah DBMS harus menyediakan mekanisme untuk
memastikan database diperbaharui dengan benar
ketika banyak pengguna melakukan update data pada
basis data secara bersamaan.
5. Recovery Services
Sebuah DBMS harus menyediakan mekanisme untuk
memperbaiki database jika terjadi kerusakan pada
basis data.
6. Authorization Services
Sebuah DBMS harus menyediakan mekanisme untuk
memastikan bahwa hanya pengguna yang diizinkan
dapat mengakses database
7. Support for Data Communication
Sebuah DBMS harus dapat berintegrasi dengan
perangkat lunak komunikasi.
8. Integrity Services
Sebuah DBMS harus menyediakan sebuah cara untuk
memastikan bahwa data dalam database dan
perubahan pada data, keduanya mengikuti aturan-
aturan yang ada.
9. Services to Promote Data Independence
Sebuah DBMS harus memiliki fasilitas untuk
mendukung kebebasan program dari struktur basis data
yang sebenarnya.
10. Utility Services
13
Sebuah DBMS harus menyediakan berbagai layanan
kegunaan.
2.1.5.2 Komponen Database Management System (DBMS)
Untuk menjalankan DBMS, dibutuhkan beberapa
komponen yang mendukungnya agar menjadi satu kesatuan di
dalam sistem.
Menurut Connolly & Begg (2010, p68), komponen-
komponen lingkungan DBMS terdiri dari:
1. Hardware (Perangkat Keras)
DBMS dan aplikasi memerlukan perangkat keras untuk
menjalankan agar sistem dapat berjalan dengan baik.
2. Software (Perangkat Lunak)
Perangkat lunak yang menghubungkan DBMS bersama
sistem operasi juga dengan jaringan berjalan bersama
melalui bahasa pemrograman Third-Generation
Programming Language seperti C , C#, C++, Java,
Visual Basic, COBOL, Fortran, Ada, atau Pascal atau
Fourth-Generation language seperti SQL.
3. Data
Data merupakan bagian terpenting dalam DBMS. Pada
struktur database ada yang dinamakan skema,
metadata, dan struktur data.
4. Procedure (Prosedur)
Prosedur merupakan instruksi dan aturan yang
diberikan dalam merancang basis data. Hal ini
bertujuan untuk mengelola basis data untuk dijalankan
pada sistem.
5. People (Orang)
Komponen terakhir adalah orang yang dapat
mempengaruhi sistem yang berjalan.
14
Gambar 2.1 Komponen DBMS Environment
(Sumber : Connolly, 2010, p68)
2.1.5.3 Keunggulan Database Management System (DBMS)
DBMS memiliki beberapa keunggulan, hal paling
berguna pada DBMS adalah pengguna mampu mengelola dan
mengamankan data yang ada pada databse secara mudah.
Menurut Connolly & Begg (2010, p77), keunggulan
dalam 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
menjadi konsisten sehingga nilai baru dapat
segera dipastikan keakuratannya.
Informasi mengenai data menjadi banyak
Dengan mengintegrasikan data operasional
maka memungkinkan suatu organisasi
mengendalikan informasi dari sumber yang
sama sehingga informasi lain dapat diperoleh
untuk organisasi.
Dapat berbagi data
15
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.
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 DBMS.
Skala ekonomi
Dengan menggabungkan data operasional
organisasi ke dalam basis data membuat satu
sumber penyimpanan data sehingga hemat
dalam biaya.
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.
Meningkatkan produktivitas
16
DBMS menyediakan standar dan fungsi agar
dapat meningkatkan produktivitas 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 dan recovery
Tanggung jawab pengguna untuk menyediakan
ukuran dalam menjaga data dari kehilangan,
ditentukan oleh program aplikasi dengan
membuat backup dan recovery setiap
pengguna.
2.1.5.4 Kelemahan Database Management System (DBMS)
Adapun kelemahan yang dimiliki DBMS setelah
mengetahui keuntungan yang dimiliki. Menurut Connolly
(2010, p80), kelemahan dalam DBMS adalah sebagai berikut:
Kompleksitas
Fungsi dari DBMS yang baik menghasilkan
kompleksitas struktur data dan perancang
database harus menyesuaikan
kekompleksitasan tersebut.
Ukuran
17
Kompleksitas menyebabkan ukuran data
menjadi besar sehingga membutuhkan media
penyimpanan yang besar.
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 perangkat keras
dari yang lama menuju implementasi baru
(konversi) besar.
Performa
Secara umum memang baik tetapi dibuutuhkan
berbagai aplikasi untuk mendukungnya.
Dampak kegagalan
Pemusatan sumber data untuk semua pengguna
yang tersedia pada DBMS dapat menyebabkan
kegagalan yang besar apabila pengelolaannya
tidak tepat.
2.1.6 Entity Relationship Diagram (ERD)
ERD digunakan untuk menggambarkan entitas yang ada di
dalam perancangan database dan hubungan entitas pada sebuah
perusahaan. Menurut Connolly & Begg (2010, p371), ERD adalah
pendekatan top-down untuk merancang basis data yang dimulai
dengan melakukan identifikasi data penting yang biasa disebut entitas
dan hubungan antara data yang direpresentasikan dalam model.
Menurut Hoffer, Prescott & Topi (2011, p59), ERD adalah
representasi grafik dari data untuk organisasi atau untuk area bisnis,
menggunakan entitas sebagai kategori data dan hubungan untuk
asosiasi antar entitas.
18
Jadi, ERD adalah model yang menggambarkan data dalam
bentuk entitas dan hubungan antar entitas yang akan digunakan untuk
merancang basis data perusahaan.
2.1.6.1 Entity Type
Entitas memiliki tipe tersendiri untuk
mendeskripsikannya. Ada entitas yang lemah dan entitas yang
kuat, hal itu terlihat dari seberapa independen entitas tersebut.
Menurut Connolly & Begg (2010, p372), tipe entitas
adalah sekumpulan objek dengan properties yang sama dan di
identifikasikan oleh perusahaan yang keberadannya diakui
secara independen. Tipe entitas dibagi menjadi 2 (dua), yaitu:
Strong Entity Type
Suatu tipe entitas yang dapat berdiri sendiri dan
tidak bergantung pada beberapa entitas lain.
Weak Entity Type
Suatu tipe entitas yang tidak dapat berdiri
sendiri dan bergantung pada beberapa entitas
lain.
19
Gambar 2.2 Contoh Strong Entity Type and Weak Entity Type
(Sumber : Connolly & Begg, 2010, p383)
2.1.6.2 Relationship Types
Salah satu hal penting dalam penggambaran ERD
harus menggambarkan hubungan antar entitas. Menurut
Connolly & Begg (2010, p374), tipe hubungan adalah asosiasi
yang memiliki arti diantara tipe entitas.
Gambar 2.3 Contoh Relationship Type
(Sumber : Connolly & Begg, 2010, p376)
2.1.6.3 Attribute (Atribut)
Attribute adalah sifat yang dimiliki oleh sebuah entitas.
Atribute berisi catatan-catatan yang disimpan dalam sebuah
entitas. Menurut Connolly & Begg (2010, p379), atribute
merupakan properties dari entitas atau tipe hubungan. Di
dalam atribut ada yang disebut dengan Attribute Domain.
Attribute Domain adalah sekumpulan nilai yang diperbolehkan
untuk 1 (satu) atau lebih atribut. Klasifikasi atribut dibagi
menjadi 3 (tiga), yaitu:
1. Simple and Composite Attribute
Simple Attribute adalah yang atribut yang
terdiri dari komponen tunggal dengan
keberadaan independen. Simple attribute tidak
20
bisa dibagi ke dalam komponen yang lebih
kecil. Simple attribute biasanya disebut dengan
atomic attribute.
Composite Attribute adalah atribut yang terdiri
dari beberapa komponen, masing-masing
dengan keberadaan independen. Beberapa
atribut dapat dibagi ke dalam komponen yang
lebih kecil.
2. Single-valued and Multi-valued Attribute
Single-valued Attribute adalah atribut yang
memiliki nilai tunggal untuk setiap kejadian
dari tipe entitas.
Multi-valued Attribute adalah atribut yang
memiliki beberapa nilai untuk setiap kejadian
dari tipe entitas.
3. Derived Attribute
Sebuah atribut yang memberikan sebuah nilai yang
dapat diturunkan dari nilai sebuah atribut yang terkait.
Gambar 2.4 Contoh Attribute Domain
(Sumber : Connolly & Begg, 2010, p379)
21
2.1.6.3.1 Keys
Menurut Connolly & Begg (2010, p381), di
dalam atribut ada yang dipakai menjadi key, terdiri
dari:
Candidate Key
Atribut yang secara unik
mengidentifikasikan setiap kejadian yang
terjadi pada entitas.
Primary Key
Candidate Key yang telah dipilih secara
unik untuk mengidentifikasikan kejadian
yang terjadi pada entitas.
Composite Key
Candidate Key yang terdiri dari 2 (dua)
atau lebih atribut.
2.1.6.4 Structural Constraints
Batasan ini menempatkan tipe-tipe entitas yang
berpartisipasi dalam sebuah hubungan. Tipe utama dari
batasan pada sebuah hubungan disebut dengan multiplicity.
Multiplicity merupakan jumlah kejadian yang mungkin
dari suatu entitas yang berhubungan dengan kejadian tunggal
dari entitas lain yang terkait melalui hubungan tertentu.
Multiplicity dibagi menjadi 3 (tiga) jenis, yaitu:
1. One-to-one (1:1) relationship
22
Gambar 2.5 Contoh Multiplicity one-to-one (1:1)
(Sumber : Connolly & Begg, 2010, p385)
2. One-to-many (1:*) relationship
Gambar 2.6 Contoh Multiplicity one-to-many (1:*)
(Sumber : Connolly & Begg, 2010, p385)
3. Many to many (*:*) relationship
23
Gambar 2.7 Contoh Multiplicity many-to-many (*:*)
(Sumber : Connolly & Begg, 2010, p385)
2.1.7 Database Application Life Cycle
Dalam merancang database diperlukan acuan untuk
melakukan perancangan tersebut. Acuan tersebut adalah Siklus Hidup
Aplikasi Basis Data (Database Application Life Cycle).
Menurut Connolly & Begg (2010, p313), Database
Application Life Cycle adalah komponen dasar didalam sistem
informasi suatu organisasi yang bertujuan untuk merencanakan dan
merancang database dari tingkatan awal sampai akhir. Untuk
mengetahui tahapan-tahapan yang ada pada Database Application Life
Cylce dapat dilihat pada gambar dibawah ini:
24
Gambar 2.8 The Stage of the Database Application Lifecycle
(Sumber : Connolly & Begg, 2010, p314)
2.1.7.1 Database Planning
Merancang sebuah database pada sebuah perusahaan
diperlukan ketelitian yang sangat baik agar dapat
menyelesaikan masalah yang dihadapi dan dapat
menghasilkan sistem untuk mengatasi masalah tersebut.
Menurut Connolly & Begg (2010, p313), database
planning merupakan suatu kegiatan pengaturan yang
memungkinkan tahapan dari siklus hidup pengembangan
aplikasi database untuk direalisasikan seefisien dan seefektif
mungkin. Tahapan dalam Database Planning juga harus
menjelaskan:
Mission Statement
25
Mission Statement diperlukan untuk
mengetahui uraian singkat secara deskripsi
mengenai perancangan database yang akan
dilakukan. Menurut Connolly & Begg (2010,
p313), mission statement merupakan suatu
langkah penting yang menjelaskan secara jelas
di dalam merencanakan perancangan database.
Mission Statement juga menentukan tujuan
secara umum dalam perencanaan database.
Mission Objective
Mission Objective diperlukan untuk mengetahui
tujuan dan sasaran mengenai perancangan
database yang akan dilakukan. Menurut
Connolly & Begg (2010, p315), mission
objective adalah tujuan dan sasaran yang ingin
dicapai di dalam merencanakan perancangan
database agar sesuai dengan kebutuhan dan
yang diinginkan perusahaan.
2.1.7.2 System Definition
Sistem database yang dihasilkan seorang perancang
tentunya harus dapat memenuhi kebutuhan-kebutuhan
pengguna, namun dibalik itu tentunya sebuah aplikasi
memiliki batasan-batasan akan sebuah hal yang tidak dapat
dipenuhi.
Menurut Connolly & Begg (2010, p316), system
definition merupakan suatu penjelasan terhadap ruang lingkup
dan batasan dari sistem basis data serta pandangan pengguna
(user view) akhir secara garis besar.
User view mendefinisikan apa yang dibutuhkan dari
sistem database untuk perspektif peran pekerjaan tertentu
(seperti manajer atau supervisor) atau area aplikasi perusahaan
(seperti marketing, personalia, dan bagian gudang).
26
2.1.7.3 Requirements Collection and Analysis
Dalam membuat sebuah sistem baru harus mampu
untuk menjawab tantangan kebutuhan yang diperlukan dengan
cara mengumpulkan dan menganalisis informasi pada
organisasi yang ingin dibuatkan sistemnya.
Menurut Connolly & Begg (2010, p316), requirements
collection and analysis merupakan proses dari mengumpulkan
dan menganalisis informasi tentang bagian-bagian dari
perusahaan yang harus didukung oleh sistem basis data dan
menggunakan informasi yang didapat untuk lebih mengetahui
kebutuhan sistem yang akan dibuat, dengan tujuan untuk
menggantikan sistem yang lama.
2.1.7.4 Database Design
Perusahaan besar sekarang bersaing dalam
menggunakan sistem dengan tujuan memajukan usahanya dan
juga untuk bersaing dengan perusahaan lain. Perusahaan harus
mempunyai sistem yang digunakan untuk membantu
pekerjaan sehari-harinya, oleh karena itu perusahaan perlu
dibuatkan sebuah rancangan database yang baik untuk
penyimpanan data penting perusahaan.
Menurut Connolly & Begg (2010, p320), database
design adalah proses membuat rancangan yang akan
membantu mission statement dan mission objective perusahaan
untuk database yang dibutuhkan. Proses perancangan basis
data dibagi menjadi 3 (tiga), yaitu:
2.1.7.4.1 Conceptual Database Design
Menurut Connolly & Begg (2010, p465),
perancangan database konseptual adalah suatu proses
membuat representasi konseptual dari basis data, yang
27
meliputi identifikasi entitas-entitas yang penting,
hubungan dan atributnya.
Tahapan yang ada dalam perancangan basis
data konseptual yaitu sebagai berikut (p471-p485):
1. Identify entity types
Tahap ini bertujuan untuk
mengidentifikasi entitas utama yang
dibutuhkan. Sebuah metode untuk
mengidentifikasi entitas adalah dengan
memeriksa spesifikasi kebutuhan
pengguna. Dari spesifikasi ini, akan
dapat diindentifikasi kata bendanya.
Selain itu, tujuan dari tahap ini juga
untuk mencari objek utama, seperti
orang, tempat, atau konsep yang
penting.
2. Identify relationship types
Tahap ini bertujuan untuk
mengidentifikasi hubungan penting
yang terdapat diantara tipe entitas yang
telah diidentifikasi. Secara khusus,
hubungan ditandai dengan kata kerja.
3. Identify and associate attributes with
entity or relationship types
Tahap ini bertujuan untuk
menghubungkan atribut dengan tipe
entitas atau tipe hubungan yang sesuai.
Atribut dapat diidentifikasi dimana kata
benda merupakan sebuah sifat
(property), kualitas, identifier, atau
karakteristik dari entitas atau hubungan.
4. Determine attribute domains
28
Tahap ini bertujuan untuk menentukan
domain bagi atribut di dalam model data
konseptual. Domain merupakan sebuah
kolom nilai dari 1 (satu) atau lebih
atribut yang menggambarkan nilai dari
masing-masing atribut.
5. Determine candidate, primary, and
alternate key attributes
Tahap ini bertujuan untuk
mengidentifikasi candidate key bagi
setiap entitas dan jika terdapat lebih dari
satu candidate key, pilih salah satu yang
akan dijadikan primary key dan yang
lain sebagai alternate key.
6. Consider use of enhanced modeling
concepts (optional step)
Tahap ini bertujuan untuk
mempertimbangkan penggunaan konsep
pemodelan lebih lanjut, seperti
spesialisasi atau generalisasi, agregasi,
dan komposisi (composition).
7. Check model for redundancy
Tahap ini bertujuan untuk memeriksa
keberadaan berbagai redudansi dalam
model. Pada tahap ini berfungsi untuk
memeriksa kembali hubungan one-to-
one dan menghilangkan hubungan yang
berulang, dan mempertimbangkan
dimensi waktu.
8. Validate conceptual model against user
transactions
Tahap ini bertujuan untuk memastikan
bahwa model konseptual mendukung
29
transaksi yang diperlukan oleh
pengguna.
9. Review conceptual data model with user
Tahap ini bertujuan untuk meninjau
kembali model data konseptual dengan
pengguna untuk memastikan bahwa
model tersebut merupakan gambaran
data yang sebenarnya (sesuai dengan
kebutuhan pengguna).
2.1.7.4.2 Logical Database Design
Menurut Connolly & Begg (2010, p489),
perancangan databse logikal adalah untuk
menerjemahkan representasi konseptual ke dalam
struktur logikal dari databse, yang meliputi
perancangan hubungan-hubungannya.
Tahapan yang ada dalam perancangan basis
data logikal yaitu sebagai berikut (p490-p517):
1. Derive relations for logical data model
Tahap ini bertujuan untuk membuat
hubungan untuk merepresentasikan
entitas, hubungan, dan atribut. Lalu
mendeskripsikan bagaimana hubungan
diperoleh pada struktur yang terjadi
didalam model data konseptual:
stong entity types (tipe entitas
kuat);
weak entity types (tipe entitas
lemah);
one-to-many (1:*) binary
relationship types (tipe
hubungan satu-ke-banyak);
30
one-to-one (1:1) binary
relationship types (tipe
hubungan satu-ke-satu);
one-to-one (1:1) recursive
relationship types (tipe
hubungan satu-ke-satu rekursif);
superclasss / subclass
relationship types (tipe
hubungan superclass / subclass);
many-to-many (*:*) binary
relationship types (tipe
hubungan banyak-ke-banyak
rekursif);
complex relationship types (tipe
hubungan kompleks);
multi-valued attributes (atribut
multi-valued).
2. Validate relations using normalization
Tahap ini bertujuan untuk memvalidasi
pengelompokan atribut pada setiap
hubungan menggunakan aturan dari
normalisasi. Tujuan dari normalisasi ini
adalah untuk memastikan bahwa
hubungan tersebut memiliki nilai
minimal yang cukup dari atribut yang
dibutuhkan untuk mendukung
kebutuhan data pada suatu perusahaan.
Hal ini juga dapat dilakukan untuk
mengurangi redudansi.
3. Validate relations against user
transactions
Tahap ini bertujuan untuk memvalidasi
model data logikal dan memastikan
31
bahwa model mendukung transaksi
yang dibutuhkan pengguna, seperti yang
sudah dirinci dalam spesifikasi user
requirenments. Di tahap ini harus
diperiksa apakah terjadi kesalahan
(error) saat membuat hubungan yang
berkaitan dengan hubungan antar
entitas.
4. Check integrity constraints
Tahap ini bertujuan untuk memastikan
bahwa hubungan dalam model data
logikal mendukung transaksi yang
dibutuhkan. Pada tahap ini akan
membuat constraint atau batasan pada
database untuk menghindari terjadinya
pemasukan data yang tidak lengkap,
tidak akurat, dan tidak konsisten.
5. Review logical data model with user
Tahap ini bertujuan untuk meninjau
kembali model data logikal dengan
pengguna untuk memastikan bahwa
model tersebut merupakan gambaran
data yang sebenarnya (sesuai dengan
kebutuhan pengguna).
6. Merge logical data models into global
model (optional step)
Tahap ini bertujuan untuk
menggabungkan model data logikal
menjadi model global yang
merepresentasikan seluruh pandangan
pengguna terhadap basis data.
7. Check for future growth
32
Tahap ini bertujuan untuk menentukan
apakah ada kemungkinan perubahan
yang signifikan di masa mendatang dan
untuk menilai apakah model data
logikal dapat memuat perubahan.
2.1.7.4.3 Physical Database Design
Menurut Connolly & Begg (2010, p521),
perancangan basis data fisikal adalah menentukan
bagaimana struktur logikal diimplementasi secara fisik
(sebagai base relation) ke dalam target DBMS.
Tahapan yang ada dalam perancangan basis
data fisikal yaitu sebagai berikut (p524-p561):
1. Translate logical data model for target
DBMS
Langkah 1.1 Design base relations
Tahap ini bertujuan untuk memutuskan
bagaimana merepresentasikan relasi
dasar yang diidentifikasikan dalam
model data logikal pada DBMS yang
dipakai.
Langkah 1.2 Design representation of
derived data
Tahap ini bertujuan untuk memutuskan
bagaimana merepresentasikan suatu
data turunan (derived) pada model data
logikal pada DBMS yang dipakai.
Langkah 1.3 Design general constraint
Tahap ini bertujuan untuk merancang
batasan dalam pengaksesan DBMS
yang dipakai.
2. Design file organizations and indexes
Langkah 2.1 Analyze transactions
33
Tahap ini bertujuan untuk menganalisis
setiap transaksi agar dapat mengetahui
setiap fungsi dari suatu transaksi yang
dijalankan pada database dan untuk
menganalisis transaksi penting.
Langkah 2.2 Choose file organizations
Tahap ini bertujuan untuk menentukan
organisasi file yang efisien untuk setiap
relasional data.
Langkah 2.3 Choose indexes
Tahap ini bertujuan untuk menentukan
apakah penambahan indeks akan
meningkatkan kinerja dari suatu sistem.
Langkah 2.4 Estimate disk space
requirements
Tahap ini bertujuan untuk mengestimasi
jumlah besarnya ukuran kapasitas
penyimpanan yang diperlukan untuk
database.
3. Design user views
Tahap ini bertujuan untuk merancang
tampilan antarmuka pengguna yang
diidentifikasi dan dianalisis dari siklus
hidup aplikasi database.
4. Design security mechanisms
Tahap ini bertujuan untuk merancang
ukuran keamanan untuk database yang
telah ditentukan oleh pengguna.
2.1.7.5 DBMS Selection
Menurut Connolly & Begg (2010, p325), pemilihan
DBMS yang sesuai untuk mendukung sistem database yang
mencakup:
34
1. Define Terms of Reference of study
Kerangka acuan untuk pemilihan DBMS didefinisikan
dengan menyatakan tujuan dan ruang lingkup studi dan
tugas-tugas yang perlu dilakukan.
2. Shortlist two or three products
Kriteria yang dianggap ‘penting’ untuk implementasi
yang sukses dapat digunakan untuk menghasilkan
daftar awal DBMS untuk evaluasi.
3. Evaluate products
Ada berbagai fitur yang digunakan untuk mengevaluasi
produk DBMS. Untuk tujuan evaluasi, fitur ini dapat
dinilai sebagai kelompok atau individu.
4. Recommend selection and produce report
Mendokumentasikan proses dan menyediakan
pernyataan mengenai kesimpulan dan rekomendasi
terhadap salah satu produk DBMS.
2.1.7.6 Application Design
Menurut Connolly & Begg (2010, p329), application
design adalah merancang tampilan antarmuka pengguna dan
program aplikasi yang akan memproses sistem database.
Dalam merancang sistem harus memastikan semua pernyataan
fungsional dari spesifikasi kebutuhan pengguna (user
requirement specification) yang menyangkut perancangan
aplikasi program yang mengakses database dan merancang
transaksi yaitu cara akses ke database dan perubahan terhadap
isi database (retrieve, update dan kegiatan keduanya).
2.1.7.7 Prototyping
Prototyping ini mengizinkan perancang dan pengguna
untuk memvisualisasikan dan mengevaluasi gambaran sistem
secara menyeluruh.
35
Menurut Connolly & Begg (2010, p333), prototyping
adalah membuat model kerja dari sistem database, yang
mengizinkan perancang atau user untuk mengevaluasi hasil
akhir sistem, baik dari segi tampilan maupun fungsi yang
dimiliki sistem.
Tujuan utama dari pembuatan suatu prototipe adalah
mengizinkan pengguna menggunakan prototipe untuk
mengidentifikasikan fitur-fitur dari sistem apakah bekerja
dengan baik dan jika terdapat kemungkinan untuk
meningkatkan fitur baru bagi sistem database. Dengan cara
ini, kebutuhan dari pengguna dan pengembang sistem dalam
mengevaluasi kelayakan rancangan sistem akan semakin jelas
sehingga kelebihan atau kekurangan sistem dapat ditangani
dengan baik.
Strategi prototyping yang umum digunakan ada 2
(dua), yaitu:
1. Requirement prototyping adalah menggunakan
prototipe untuk menetapkan kebutuhan dari tujuan
sistem database dan ketika kebutuhan sudah terpenuhi,
prototipe tidak digunakan lagi atau dibuang.
2. Evolutionary prototyping menggunakan tujuan yang
sama, tetapi perbedaaan pentingnya adalah prototipe
tetap digunakan untuk selanjutnya dikembangkan
menjadi sistem database yang lengkap.
2.1.7.8 Implementation
Sebuah sistem database setelah dirancang harus
diimplementasikan agar mengetahui kekurangan dan kelebihan
dari aplikasi yang dibuat.
Menurut Connolly & Begg (2010, p333),
implementation merupakan realisasi secara fisik dari sistem
database dan rancangan aplikasi. Pada tahap implementasi
database menggunakan Data Definition Language (DDL) dari
36
DBMS yang terpilih atau dengan menggunakan Graphical
User Interface (GUI), yang menyediakan fungsional yang
sama dengan pernyataan DDL. Pernyataan DDL digunakan
untuk membuat struktur database dan mengosongkan file yang
terdapat dalam database tersebut.
Pandangan pengguna lainnya juga diimplementasikan
dalam tahapan ini. Data Manipulation Language (DML)
digunakan untuk mengimplementasikan transaksi database di
dalam bagian aplikasi program dari sasaran DBMS.
2.1.7.9 Data Conversion and Loading
Langkah ini diperlukan pada saat pemindahan data dari
sistem lama ke sistem baru. Menurut Connolly & Begg (2010,
p334), data conversion and loading adalah memindahkan data
yang ada ke dalam database baru dan mengkonversi setiap
aplikasi yang ada untuk dijalankan pada database yang baru.
Tahap ini dibutuhkan ketika suatu sistem database baru akan
menggantikan sistem yang lama.
Saat ini, adalah hal yang biasa bagi DBMS untuk
memiliki utilitas yang memuat file yang ada ke dalam
database yang baru. Utilitas biasanya membutuhkan
spesifikasi dari sumber file dan target database dan secara
otomatis mengkonversi data ke format yang dibutuhkan oleh
database yang baru.
2.1.7.10 Testing
Sebelum diterapkan dalam suatu sistem, database
harus dilakukan pengujian terlebih dahulu supaya kesalahan
yang ada dapat diperbaiki dan menjadi lebih sempurna.
Menurut Connolly & Begg (2010, p334), testing adalah
suatu proses menjalankan sistem database dengan tujuan
menemukan kesalahan (error) yang ada. Terdapat beberapa
kriteria selama melakukan pengujian sistem ini, yaitu:
37
1. Learnability Seberapa lama waktu yang dibutuhkan
pengguna baru untuk bisa berproduktif dengan sistem
baru tersebut?
2. Performance Seberapa baik tanggapan sistem
terhadap pengguna?
3. Robustness Seberapa toleransi sistem terhadap
kesalahan pengguna?
4. Recoverability Seberapa baik sistem dapat
mengaktifkan sistem recover dari kesalahan pengguna?
5. Adaptability Seberapa dekat sistem dengan model