BAB 2 LANDASAN TEORI (2005, p38), data adalah ( 2004, p38...
Transcript of BAB 2 LANDASAN TEORI (2005, p38), data adalah ( 2004, p38...
7
BAB 2
LANDASAN TEORI
2.1 Teori – teori Dasar / Umum
2.1.1 Data
Menurut Turban, Efraim, Rainer, and Pother (2005, p38), data adalah
deskripsi dasar tentang suatu kejadian, kegiatan dan transaksi yang direkam,
disimpan, dan diklasifikasikan tetapi tidak terorganisir untuk menyampaikan
suatu arti khusus. Sedangkan menurut O’ Brien ( 2004, p38), data adalah fakta
yang biasanya mengenai fisik atau transaksi bisnis.
Jadi kesimpulan yang didapat, data merupakan fakta yang ada di
lapangan dan gambaran mentah tentang kejadian, kegiatan dan transaksi yang
sudah disimpan tetapi tidak terorganisir sehingga belum mempunyai makna
apapun.
2.1.2 Database
Menurut Connoly & Begg (2005, p15), Database atau Basis data
merupakan suatu kumpulan relasi-relasi logikal dari data dan deskripsi dari suatu
data yang dirancang untuk memenuhi kebutuhan informasi suatu organisasi.
Database merupakan sebuah tempat penyimpanan tunggal yang besar bagi data
yang dapat digunakan secara serentak oleh banyak departemen dan pengguna.
Database merupakan sebuah komponen yang tidak dimiliki sendiri tetapi
merupakan sebuah sumber daya yang terbagi dalam perusahaan.
8
Menurut McLeod & Schell (2007, p181), Database adalah kumpulan dari
semua sumber daya berbasis organisasi komputer dan database, hubungan antara
data dalam database dan juga form dan laporan yang bersinggungan dengan
database.
Jadi kesimpulan yang didapat, sistem basis data adalah suatu kumpulan
data yang saling berhubungan satu sama lain dan menggambarkan aktifitas dari
satu atau lebih organisasi yang saling terkait.
2.1.3 Database Management System
Menurut Connoly & Begg (2005, p16), Database Management System
(DBMS) merupakan sebuah program yang memperbolehkan pengguna untuk
mengontrol dan mengatur pengorganisasian, penyimpanan dan pengambilan data
dalam suatu basis data. DBMS menyediakan fasilitas-fasilitas sebagai berikut:
a. Memungkinkan pengguna untuk mendefinisikan basis data, melalui Data
Definition Language (DDL). DDL memungkinkan pengguna untuk
menentukan struktur dan jenis data serta batasan pada data yang disimpan
dalam basis data.
b. Mengijinkan pengguna untuk melakukan manipulasi data menggunakan Data
Manipulation Language (DML). DML menyediakan fasilitas pemeriksaan
umum yang disebut query language.
c. Menyediakan akses kendali pada basis data seperti :
- Security system, yang mencegah pengguna yang tak memiliki otorisasi
untuk mengakses basis data.
- Integrity system, yang memelihara konsistensi data.
9
- Concurency control system, yang memungkinkan pembagian akses
terhadap basis data.
- Recovery control system, yang menyimpan basis data kembali pada
keadaan konsisten sebelumnya.
- User-accessible catalog, yang berisi deskripsi data dalam basis data.
Jadi kesimpulan yang didapat, Data Base Management System / DBMS
adalah tipe partikuler dari program komputer yang digunakan oleh program
aplikasi untuk mengatur dan menyediakan akses untuk data yang telah disimpan.
Menurut Hoffer, Presscott, & Topi (2009, P.49), DBMS merupakan
sebuah piranti lunak yang menggunakan metode sistematis untuk menciptakan,
memperbaharui, menyimpan dan mengambil data dalam database.
2.1.4 Komponen Database Management System
Menurut pendapat Connoly & Begg (2005, p19-21) ada lima komponen
utama dalam ruang lingkup Database Management System (DBMS) yaitu :
a. Hardware
Hardware dapat berkisar dari komputer tunggal, mainframe tunggal, hingga
jaringan komputer. Penggunaan hardware tergantung pada kebutuhan suatu
organisasi dan DBMS yang akan digunakan.
b. Software
Komponen ini terdiri dari DBMS dan program aplikasi bersama sistem
operasi dan software jaringan, jika DBMS digunakan melalui jaringan.
10
c. Data
Merupakan komponen yang terpenting dalam suatu DBMS, dimana data
berfungsi sebagai jembatan antara komponen mesin dan komponen manusia.
Basis data berisi data operasional dan metadata.
d. Procedures
Mengacu pada instruksi-instruksi dan aturan-aturan yang memerintahkan
perancangan dan penggunaan basis data. Pengguna sistem dan petugas yang
mengatur basis data memerlukan dokumentasi prosedur bagaimana cara
untuk menggunakan dan menjalankan sistem. Instruksi tersebut seperti :
- Bagaimana cara masuk ke dalam DBMS
- Bagaimana menggunakan fasilitas DBMS tertentu
- Membuat backup pada basis data
- Memulai dan menghentikan DBMS
- Bagaimana menangani kesalahan hardware dan software tertentu
e. People
Komponen terakhir adalah manusia, yang terdiri dari :
- Data Administrator : Orang yang bertanggung jawab terhadap pengelolaan
sumber daya data termasuk perencanaan basis data, pembangunan dan
pemeliharaan standard, kebijakan serta prosedur yang berlaku.
- Database Administrator (DBA) : Orang yang menyediakan dukungan
teknis ntuk implementasi keputusan tersebut, dan bertanggung jawab atas
keseluruhan kendali sistem pada tingkat teknis.
11
- Pemrogram Aplikasi : Orang yang bertanggung jawab untuk membuat
aplikasi basis data yang berisikan fungsi-fungsi yang dibutuhkan pemakai
akhir.
- End User atau Pemakai Akhir : Siapapun yang mendapatkan informasi dari
basis data yang sudah didesain, diimplementasikan dan dirawat.
2.1.5 Keuntungan dan Kerugian DBMS
Menurut pendapat Connoly & Begg (2005, p26-p29), DBMS memiliki
keuntungan dan kerugian
DBMS memiliki beberapa keuntungan sebagai berikut :
a. Kontrol terhadap pengulangan data
Basis data berusaha untuk menghilangkan pengulangan dengan
mengintegrasikan file sehingga berbagai copy dari data yang sama
tidak tersimpan. Bagaimanapun juga pendekatan ini tidak
menghilangkan pengulangan secara menyeluruh, tetapi
mengendalikan jumlah pengulangan dalam basis data.
b. Data yang konsisten
Dengan menghilangkan atau mengendalikan pengulangan, kita telah
mengurangi resiko ketidakkonsistenan yang terjadi. Jika item data
disimpan hanya sekali di dalam basis data, maka berbagai update
bagi nilai data tersebut harus dibuat hanya sekali dan nilai baru
tersebut hanya tersedia dengan segera kepada semua pengguna.
12
c. Semakin banyak informasi didapat dengan data yang sama
Dengan data operasional yang terintegrasi, hal ini memungkinkan
bagi organisasi untuk mendapatkan informasi tambahan dari data
yang sama.
d. Pembagian data
Basis data termasuk bagian dari keseluruhan organisasi dan dapat
dibagikan oleh semua pengguna yang berotoritas.
e. Meningkatkan integritas data
Integritas basis data mengacu pada validitas dan konsistensi data
yang disimpan. Integritas biasanya diekspresikan dalam istilah
batasan, yang berupa aturan konsisten yang tidak boleh dilanggar
oleh basis data. Integritas memungkinkan Database Administrator
(DBA) untuk menjelaskan dan memungkinkan DBMS untuk
membuat batasan integritas.
f. Meningkatkan keamanan data
Keamanan basis data adalah melindungi basis data dari pengguna
yang tidak berotoritas. Hal ini dapat dilakukan dengan menggunakan
sistem username dan password untuk mengidentifikasi orang yang
berotoritas untuk menggunakan basis data. Akses pengguna yang
berotoritas pada basis data mungkin dibatasi oleh jenis operasi seperti
insert, update, dan delete data.
g. Penetapan standarisasi
Integrasi memungkinkan DBA untuk mendefinisikan dan membuat
standard yang diperlukan. Standard ini termasuk standard
13
departemen, organisasi, nasional, atau internasional dalam hal format
data, untuk memfasilitasi pertukaran data antara sistem, ketetapan
penamaan, standard dokumentasi, prosedur update, dan aturan akses.
h. Pengurangan biaya
Dengan menyatukan semua data operasional organisasi ke dalam satu
basis data dan pembuatan sekelompok aplikasi yang bekerja pada
satu sumber data dapat menghasilkan pengurangan biaya. Penyatuan
biaya pengembanan dan pemeliharaan sistem pada setiap departemen
akan menghasilkan total biaya yang lebih rendah. Sehingga biaya
lainnya dapat digunakan untuk membeli konfigurasi sistem yang
sesuai bagi kebutuhan organisasi.
i. Menyeimbangkan konflik kebutuhan
Setiap pengguna mempunyai kebutuhan yang mungkin bertentangan
dengan kebutuhan pengguna lain. Sejak basis data dikendalikan oleh
DBA, DBA dapat membuat keputusan berkaitan dengan perancangan
dan penggunaan operasional basis data yang menyediakan
penggunaan terbaik dari sumber daya bagi keseluruhan organisasi.
j. Meningkatkan kemampuan akses dan respon pada data
Dengan pengintegrasian data yang melintasi batasan departemen
dapat secara langsung diakses pada pengguna akhir. Hal ini dapat
menyediakan sebuah sistem dengan lebih banyak fungsi seperti
fungsi untuk menyediakan layanan yang lebih baik pada pengguna
akhir atau klien organisasi.
14
DBMS memiliki beberapa kerugian sebagai berikut :
a. Kompleksitas
Ketentuan dari fungsi yang kita harapkan dari DBMS yang baik
membuat DBMS menjadi perangkat lunak yang sangat kompleks.
Perancang dan pengembang basis data, Data Administrator, dan
Database Administrator, serta pengguna akhir harus memahami
fungsi tersebut agar bisa mendapatkan banyak keuntungan dari
DBMS ini.
b. Ukuran
Fungsi yang kompleks dan luas membuat DBMS menjadi perangkat
lunak yang sangat besar, memerlukan banyak ruang harddisk dan
jumlah memory yang besar untuk bisa berjalan dengan efisien.
c. Biaya dari suatu DBMS
Biaya dari suatu DBMS bervariasi, tergantung pada lingkungan dan
fungsi yang disediakan. Di situ juga terdapat biaya pemeliharaan
tahunan yang juga dimasukkan dalam daftar harga DBMS.
d. Biaya penambahan perangkat keras
Kebutuhan tempat penyimpanan bagi DBMS dan basis data amat
memerlukan pembelian tempat penyimpanan tambahan. Lebih lanjut,
untuk mencapai performa yang dibutuhkan, mungkin memerlukan
mesin yang lebih besar dan lain-lain. Hal ini tentu memerlukan
tambahan biaya yang tidak sedikit, tergantung pada spesifikasi
perangkat keras yang diperlukan.
15
2.1.6 Pemilihan DBMS (DBMS Selection)
Berdasarkan pendapat Connoly & Begg (2005, p295), pemilihan DBMS
dilakukan untuk memilih DBMS yang sesuai untuk mendukung aplikasi basis
data. Pemilihan DBMS amatlah diperlukan ketika sebuah perusahaan ingin
mengembangkan atau mengganti sistem yang sudah ada, proses ini digunakan
untuk mengevaluasi produk DBMS. Tujuan dari pemilihan DBMS adalah untuk
memilih sebuah sistem yang sesuai dengan kebutuhan saat ini dan yang akan
datang pada perusahaan, menyeimbangkan biasa pembelian produk DBMS,
berbagai software / hardware tambahan yang diperlukan untuk mendukung
sistem basis data, dan biaya yang berhubungan dengan perubahan dan pelatihan
staf.
Langkah-langkah utama dalam pemilihan DBMS (Connoly & Begg, 2005 , p296)
:
- Menggambarkan cangkupan tugas berdasarkan kebutuhan perusahaan.
- Membuat perbandingan mengenai dua atau tiga produk DBMS.
- Mengevaluasi produk-produk DBMS tersebut.
- Merekomendasikan pemilihan DBMS dan membuat laporan hasil dari evaluasi
produk DBMS tersebut.
16
2.1.7 Data Definition Language
Menurut pendapat Connoly & Begg (2005, p40), Data Definition Language
(DDL) adalah suatu bahasa yang memperbolehkan Database Administrator atau
pengguna untuk mendeskripsikan dan memberi nama entitas, atribut dan
relationship yang diperlukan untuk aplikasi. DDL berfungsi untuk mengubah
suatu data menjadi data yang berguna bagi pengguna. Beberapa statement DDL
berdasarkan pendapat Connoly & Begg (2005,p169-176) adalah :
1. Create Table
Untuk membuat table dengan mengidentifikasikan tipe data untuk tiap kolom.
2. Alter Table
Untuk menambah atau membuang kolom dan konstrain.
3. Drop Table
Untuk membuang atau menghapus table beserta semua data yang terkait
didalamnya.
4. Create Index
Untuk membuat index pada suatu table.
5. Drop Index
Untuk membuang atau menghapus index atau menghapus index yang sudah
dibuat sebelumnya.
17
2.1.8 Data Manipulation Language
Menurut pendapat Connoly & Begg (2005, p40), Data Manipulation
Language (DML) adalah suatu bahasa yang menyediakan sekumpulan operasi
yang diinginkan untuk mendukung operasi manipulasi data utama pada data yang
diperoleh dalam basis data. DML menyediakan operasi dasar manipulasi data
pada data yang ada dalam basis data, yaitu :
- Penyisipan data baru ke dalam basis data (insertion).
- Mengubah atau memodifikasi data yang disimpan dalam basis data (modify).
- Pemanggilan data yang ada di dalam basis data (retrieve).
- Menghapus data dari basis data (delete).
DML dapat dibedakan menjadi 2 tipe yang berbeda, yaitu :
a. Prosedural DML
Prosedural DML adalah suatu bahasa yang memungkinkan pengguna untuk
memberi instruksi ke sistem mengenai data apa yang dibutuhkan dan
bagaimana cara pemanggilannya (retrieve). Artinya pengguna harus
menjelaskan operasi pengaksesan data yang akan digunakan dengan
menggunakan prosedur yang ada untuk mendapatkan informasi yang
dibutuhkan.
b. Non prosedural DML
Non prosedural DML adalah suatu bahasa yang memungkinkan pengguna
untuk menentukan data apa yang dibutuhkan dengan menyebutkan
spesifikasinya tanpa menspesifikasikan bagaimana cara mendapatkannya.
18
2.1.9 Fungsi DBMS
Berdasarkan pendapat Connoly & Begg. (2005, p48-52), fungsi DBMS
sebagai berikut :
1. Data storage, retrieval and update
DBMS harus melengkapi pengguna dengan kemampuan menyimpan,
mengambil, dan mengubah data dalam basis data.
2. User accessible catalog
DBMS harus menyediakan sebuah katalog dimana deskripsi dari data item
yang disimpan dan dapat diakses pengguna.
3. Transaction support
DBMS harus menyediakan suatu mekanisme yang akan menjamin bahwa
semua kegiatan update sesuai dengan transaksi yang dilakukan atau tidak
sama sekali dilakukan.
4. Concurrency control services
DBMS harus menyediakan mekanisme yang menjamin bahwa basis data di-
update dengan benar ketika lebih dari satu pemakai meng-update basis data
secara bersama.
5. Recovery service
DBMS harus menyediakan mekanisme untuk memperbaiki basis data disaat
mengalami kerusakan dalam berbagai cara.
6. Authorization services
DBMS harus menyediakan mekanisme untuk menjamin bahwa hanya
pengguna yang berotoritas yang bisa mengakses basis data.
19
7. Support for data communication
DBMS harus mampu berintegrasi dengan perangkat lunak komunikasi.
8. Integrity services
DBMS harus menyediakan cara untuk menjamin bahwa data dalam basis
data dan perubahan pada data mengikuti aturan yang telah ditetapkan
sebelumnya.
9. Service to promote database independence
DBMS harus mencakup fasilitas yang mendukung independensi program
dari struktur aktual basis data.
10. Utility service
DBMS harus menyediakan seperangkat layanan utilitas. Program utilitas
membantu Database Administrator mengelola basis data secara efektif.
2.1.10 Struktur Data Relasional
Berdasarkan pendapat Connoly & Begg (2005,p72-p74), berikut adalah
struktur dan terminologi dari model relasional :
1. Relasi : Merupakan sebuah tabel dengan baris dan kolom. Digunakan untuk
menyimpan informasi tentang objek yang digambarkan dalam basis data.
2. Atribut : Merupakan nama kolom dari relasi. Atribut dapat ditampilkan dalam
berbagai perintah dan dalama relasi yang sama sehingga menyampaikan arti
yang sama.
3. Domain : Merupakan sekelompok nilai yang diizinkan bagi satu atau lebih
atribut. Setiap artibut dalam relasi didefinisikan pada sebuah domain. Domain
dapat berbeda bagi setiap atribut, dua atau lebih atribut dapat didefinisikan
20
pada domain yang sama. Konsep domain sangat penting karena
memungkinkan pengguna menjelaskan arti dan sumber nilai yang ada pada
atribut.
4. Tuple : merupakan baris dari sebuah relasi. Tuple dapat disebut intention jika
struktur relasi, domain serta batasan-batasan yang lainnya pada nilai yang
mungkin bersifat tetap, namun sebaliknya jika relasi berubah setiap waktu ini
disebut extension.
5. Degree : Merupakan jumlah atribut yang terdapat dalam relasi. Jika relasi
mempunyai satu atribut akan mempunyai derajat satu yang disebut relasi
unary atau satu tuple. Jika relasi mempunyai dua atribut akan mempunyai
derajat dua yang disebut binary. Dan begitu juga seterusnya dengan
menggunakan istilah nary.
6. Cardinality : Merupakan jumlah tuple yang terdapat dalam relasi. Merupakan
properti dari extension relasi dan ditentukan dari instance tertentu.
7. Basis Data Relasional : Merupakan kumpulan dari relasi yang ternormalisasi
dengan nama relasi yang berbeda.
2.1.11 Sifat-Sifat Relasi
Berdasarkan pendapat Connoly & Begg (2005, p77), relasi mempunyai
sifat-sifat sebagai berikut :
- Nama relasi berbeda satu sama lain dalam skema relasional.
- Setiap sel dari relasi satu nilai atomik.
- Setiap atribut memiliki nama berbeda.
- Nilai satu atribut berasal dari domain yang sama.
21
- Setiap tuple berbeda, dan tidak ada duplikasi tuple.
2.1.12 Relational Keys
Berdasarkan pendapat Connoly & Begg (2005, p78-p79), relational key
dibagi menjadi beberapa jenis yaitu :
1. Superkey : Merupakan sebuah atribut atau sekelompok atribut yang
mengidentifikasi secara unik tuple dalam relasi. Superkey yang mudah
diidentifikasi adalah yang hanya berisi jumlah minimum atribut yang
diperlukan.
2. Candidate Key : merupakan superkey dalam relasi. Candidate key (K), bagi
sebuah relasi (R) mempunyai dua sifat yaitu :
a. Keunikan : Dalam setiap tuple dari R, nilai dari K secara unik
mengidentifikasi tuple tersebut.
b. Irreducibility : Tidak ada subset yang sesuai dari K yang mempunyai
keunikan sifat ketika sebuah key terdiri dari lebih dari satu atribut kita sebut
ini sebagai Composite key.
3. Primary Key : Merupakan candidate key yang terpilih untuk identifikasi tuple
secara unik dalam satu relasi. Sementara candidate key yang tidak terpilih
sebagai primary key disebut Alternative key.
4. Foreign Key : Merupakan sebuah atribut atau sekelompok atribut dalam relasi
yang dibandingkan dengan candidate key pada beberapa relasi.
22
2.1.13 Integrity Constraint (Batasan Integritas)
Berdasarkan pendapat Connoly & Begg (2005, p81-p83) batasan integritas
terbagi menjadi beberapa jenis yaitu :
- Null
Merupakan gambaran sebuah nilai bagi sebuah atribut yang tidak diketahui
atau tidak digunakan bagi tuple tersebut. Null tidak sama dengan nilai
numerik nol atau spasi, tetapi null menggambarkan ketidakadaan nilai.
- Integritas Entitas
Pada relasi dasar, tidak ada atribut primary key yang bernilai null.
Berdasarkan definisi di atas, primary key minimal berperan sebagai identifier
yang digunakan untuk mengidentifikasi tuple secara unik. Ini berarti tidak ada
subset dari primary key yang cukup untuk menyediakan pengidentifikasian
tuple yang unik.
- Integritas Referential
Jika terdapat foreign key dalam relasi, maka nilai foreign tersebut akan
dibandingkan dengan nilai candidate key dari beberapa tuple pada relasi itu
sendiri atau nilai foreign key harus null semuanya.
- General Constraint / Batasan Umum
Peraturan tambahan yang ditentukan oleh users atau database administrators
dari suatu basis data yang menjelaskan atau membatasi beberapa aspek
perusahaan.
23
2.1.14 Entity Relationship Model
Berdasarkan pendapat Connoly & Begg (2005, p343) Entity Relationship
Model terdiri dari :
2.1.15 Entitas
Entitas adalah sekumpulan objek yang diidentifikasi oleh sebuah
perusahaan atau perorangan yang mempunyai sifat-sifat yang sama dan
mempunyai keberadaan yang independen. Sebuah entitas memiliki
keberadaannya yang bebas dan bisa menjadi objek dengan fisik (atau ‘real’) atau
menjadi objek dengan keberadaan konseptual (atau ‘abstrak’). Artinya perancang
yang berbeda mungkin mengidentifikasikan entitas yang berbeda pula. Sebuah
basis data biasanya berisi banyak tipe entitas yang berbeda pula. Dalam UML,
huruf pertama dari entitas diawali dengan huruf kapital.
Entity occurence adalah sebuah objek unik yang dapat diidentifikasikan
dari sebuah tipe entitas. Berikut adalah contoh entitas : staf, cabang, property,
pemilik. Entity dapat diklasifikasikan atas strong entity dan weak entity.
2.1.16 Strong Entity
Berdasarkan pendapat Connoly & Begg (2005, p354) strong entity adalah
entitas yang keberadaannya tidak bergantung pada beberapa entitas yang lain.
Karakter dari entitas ini adalah bahwa setiap kejadian entitas teridentifikasi
secara unik menggunakan atribut primary key. Sebagai contoh, kita dapat
mengidentifikasi secara unik setiap anggota staf dengan menggunakan atribut
staffno.
24
2.1.17 Weak Entity
Weak entity adalah entitas yang keberadaannya tergantung pada beberapa
entitas yang lain. Karakteristik dari entitas ini bahwa setiap kejadian entitas tidak
dapat teridentifikasi secara unik hanya dengan menggunakan atribut yang
berhubungan dengan entitas tersebut. Sebagai contoh, kita tidak dapat
mengidentifikasi setiap kejadian dari entitas kesukaan hanya dengan
menggunakan atribut entitas tersebut. Kita hanya dapat mengidentifikasi secara
unik entitas kesukaan melalui relationship yang entitas kesukaan miliki dengan
entitas klien yang secara unik teridentifikasi menggunakan primary key bagi
entitas klien
2.1.18 Composition
Berdasarkan pendapat Connoly & Begg (2005, p384), composition
merupakan sebuah bentuk tertentu dari agregasi yang menggambarkan hubungan
antara entitas, dimana disana terdapat kepemilikan yang kuat antara
‘keseluruhan’ dan ‘bagian’. Disini objek hanya menjadi bagian satu composite
pada waktu itu.
Gambar 2.1 Composition
25
2.1.19 Relationship
Berdasarkan pendapat Connoly & Begg (2005, p346) relationship adalah
sekumpulan hubungan yang berarti antara satu atau lebih entitas, dimana setiap
tipe relationship diberi nama yang menggambarkan fungsinya.
Relationship occurence adalah hubungan yang dapat diidentifikasi secara
unik, yang termasuk satu kejadian dari setiap entitas yang berpartisipasi.
2.1.20 Relationship Recursive
Berdasarkan pendapat Connoly & Begg (2005, p349) relationship
recursive adalah jenis relationship dimana entitas yang sama berpartisipasi lebih
dari satu di dalam peran yang berbeda. Sebagai contoh, entitas staf berpartisipasi
dua kali di dalam relationship supervises. Partisipasi pertama sebagai supervisor
dan partisipasi kedua sebagai anggota dari staf yang diawasi. Relationship
mungkin diberikan nama peran untuk mengidikasikan tujuan yang setiap entitas
yang berpartisipasi. Di sini penting untuk menentikan fungsi setiap partisipan.
2.1.21 Atribut
Berdasarkan pendapat Connoly & Begg (2005, p350) atribut adalah
sebuah properti atau sifat dari entitas atau relationship. Sebagai contoh, entitas
staf mungkin dapat menjelaskan atribut sebagai berikut : nostaf, nama, posisi,
dan gaji. Setiap atribut menyimpan nilai yang menjelaskan setiap entity
occurrence dan menggambarkan bagian utama dari data yang disimpan di dalam
basis data.
26
Domain atribut adalah sekelompok nilai yang diperbolehkan bagi satu
atau lebih atribut. Domain mendefinisikan nilai potensi yang dimiliki atribut.
Sebagai contoh ruangan berhubungan dengan properti antara 1-15 untuk setiap
entity occurrence. Oleh karena itu mendefinisikan sekelompok nilai bagi nomor
ruangan atau atribut rooms dari entitas properti sebagai sekelompok nilai integer
antara 1-15.
Domain Atribut bertujuan untuk menentukan domain bagi atribut di
dalam model data. Domain merupakan sebuah kolom nilai dari satu atau lebih
atribut yang menggambarkan nilai mereka. Pengembangan model data yang utuh
menentukan domain bagi setiap atribut termasuk :
- Sekelompok nilai yang diperbolehkan untuk dijadikan atribut.
- Ukuran dan format atribut
2.1.22 Atribut Simple dan Composite
Berdasarkan pendapat Connoly & Begg (2005, p351) atribut simple
adalah sebuah atribut yang terdiri dari komponen tunggal dengan keberadaannya
yang bebas. Atribut ini tidak dapat dibagi kedalam komponen yang lebih kecil
lagi. Sebagai contoh adalah atribut posisi dan gaji pada entitas staf.
Atribut composite adalah sebuah atribut yang terdiri dari berbagai
komponen, dengan keberadaannya yang bebas. Atribut ini dapat dibagi ke dalam
komponen yang lebih kecil lagi. Sebagai contoh atribut alamat pada entitas
cabang dengan nilai 163 Main St, Glasgow, G119QX yang kemudian dibagi ke
dalam komponen jalan : 163 Main St, Kota : Glasgow, Kodepos : G119QX.
27
2.1.23 Atribut Single Valued dan Multi Valued
Berdasarkan pendapat Connoly & Begg (2005, p351) atribut single value
adalah atribut yang berisi nilai tunggal bagi setiap kejadian dari setiap entitas.
Sebagai contoh, setiap kejadian dari entitas cabang mempunyai nilai tunggal bagi
nomor cabang atau atribut branchNo = B003. Oleh karena itu atribut branchNo
mengacu pada nilai tunggal.
Berdasarkan pendapat Connoly & Begg (2005, p352) atribut multi-valued
adalah atribut yang berisi berbagai nilai bagi setiap kejadian dari setiap entitas.
Sebagai contoh, setiap kejadian dari entitas cabang dapat mempunyai berbagai
nilai bagi atribut telno = 0141-339-2178, 0141-339-4439. Oleh karena itu atribut
telno merupakan atribut multi-value.
2.1.24 Derived Atribut
Berdasarkan pendapat Connoly & Begg (2005, p352) atribut derived
adalah atribut yang menggambarkan sebuah nilai yang dapat diperoleh dari nilai
atribut yang berhubungan atau sekelompok atribut, tidak perlu dalam entitas yang
sama. Sebagai contoh, nilai bagi atribut durasi dari entitas pelepasan dihitugn
dari atribut rentstart dan rentfinisih yang juga dari entitas pelepasan. Oleh karena
itu atribut durasi dianggap sebagai atribut derived.
28
2.1.25 Fan Traps
Menurut Connoly & Begg (2005, p364-p365), Fan Trap muncul dimana
ada suatu model yang merepresentasikan hubungan / relationship antara tipe
entitas, tetapi ambigu. Fan trap dapat muncul ketika dua atau lebih hubungan 1 :
* dari entitas yang sama.
2.1.26 Chasm Traps
Menurut Connoly & Begg (2005, p365-p366), Chasm Trap muncul
dimana ada suatu model yang menyarankan keberadaan dari hubungan antara
tipe entitas. Chasm Trap mungkin muncul dimana ada satu atau lebih hubungan /
relationship dengan minimum multiplicity dari zero antara entitas yang
berhubungan.
2.1.27 Structural Constraint
Berdasarkan pendapat Connoly & Begg (2005, p356), constraints
mencerminkan batasan dari hubungan sebagai suatu tanggapan dalam dunia
nyata. Tipe utama constraints dalam hubungan disebut multiplicity. Multiplicity
adalah jumlah kejadian yang mungkin dari entitas yang berhubungan pada
kejadian tunggal dari sebuah hubungan entitas melalui relationship tertentu. Ini
merupakan gambaran dari kebijakan atau aturan bisnis yang dibuat oleh
perusahaan. Memastikan bahwa semua batasan perusahaan yang sesuai
teridentifikasi dan tergambarkan merupakan bagian penting dari pemodelan
perusahaan. Terdapat tiga jenis relationship sesuai dengan batasan perusahaan
yaitu :
29
a. Relationship One To One (1:1)
Gambar 2.2 Hubungan one to one
b. Relationship One to Many (1:*)
Gambar 2.3 Hubungan one to many
c. Relationship Many to Many (*:*)
Gambar 2.4 Hubungan many to many
30
2.1.28 Tahap Perancangan Basis Data
Menurut Connoly & Begg (2005,p439-516), metodologi perancangan
basis data ada 3 tahapan, perancangan basis data fisikal, perancangan basis data
logikal dan perancangan basis data konseptual adalah sebagai berikut :
a. Perancangan Basis Data Fisikal
Perancangan basis data fisikal adalah sebuah pembuatan model dari
informasi yang digunakan dari dokumen-dokumen fisik dalam perusahaan.
b. Perancangan Basis Data Logikal
Perancangan basis data logikal merupakan sebuah proses perancangan dari
hasil normalisasi yang dilakukan pada perancangan basis data fisikal.
c. Perancangan Basis Data Konseptual
Perancangan basis data konseptual merupakan sebuah proses dari
perancangan basis data logikal untuk pembuatan tampilan / view yang
diinginkan oleh user.
2.1.29 Normalisasi
Menurut Connoly & Begg (2005,p376) normalisasi adalah sebuah teknik
untuk membuat sebuah set relasi dengan properti yang diinginkan, dengan
kebutuhan data perusahaan. Sebuah tabel yang belum dinormalisasi disebut
dengan Unnormalize form (UNF). UNF adalah sebuah tabel yang memiliki satu
atau lebih repeating groups.
1. Bentuk normal pertama (First Normal Form / 1NF)
Aturan bentuk normal pertama (1NF), sebuah relasi dimana tiap baris dan
kolom hanya berisi satu nilai. Bentuk normal pertama dicapai apabila tiap
31
nilai atributnya adalah tunggal. Kondisi ini dapat diperoleh dengan melakukan
eliminasi terjadinya data ganda (repeating groups). Pada kondisi normal
pertama ini kemungkinan masih terjadi adanya data rangkap.
2. Bentuk normal kedua (Second Normal Form / 2NF)
Aturan bentuk normal kedua (2NF), sebuah relasi dalam bentuk normal
pertama dan setiap atribut bukan primary key yang bergantung secara
fungsional kepada primary key. Bentuk normal kedua berdasarkan konsep
ketergantungan fungsional penuh (full functional dependency).
3. Bentuk normal ketiga (Third Normal Form / 3NF)
Aturan bentuk normal ketiga (3NF), sebuah relasi dalam bentuk normal
pertama dan kedua serta setiap atribut bukan primary key yang bergantung
secara transitif kepada primary key. Bentuk normal ketiga adalah berdasarkan
pada konsep peralihan ketergantungan (transitive dependency).
4. Bentuk normal Boyce-Codd (Boyce-Codd Normal Form / BCNF)
Aturan bentuk normal BNCF, sebuah relasi disebut BCNF, jika dan hanya
setiap determinannya adalah sebuah candidate key. Untuk menguji apakah
suatu relasi sudah dalam BNCF, dilakukan identifikasi semua determinan dan
memastikan bahwa determinan tersebut adalah candidate key. Determinan
adalah sebuah atribut, atau kumpulan atribut, dimana beberapa atribut lain
masih bergantung secara fungsional penuh.
5. Bentuk normal keempat (Fourth Normal Form / 4NF)
Aturan bentuk normal keempat (4NF), sebuah relasi di BNCF dan tidak
mengandung ketergantungan multivalued nontrivial. Bentuk normal keempat
merupakan bentuk yang lebih kuat dari BNCF dimana 4 NF mencegah relasi
32
dari nontrivial multivalued depedency. Normalisasi dari BNCF ke 4 NF
meliputi pemindahan multi-valued depedency dari relasi dengan menempatkan
atribut dalam sebuah relasi baru bersama dengan determinan. Multi-valued
dependency menggambarkan ketergantungan antara atribut-atribut dalam
suatu relasi.
6. Bentuk normal kelima (Fifth Normal Form / 5NF)
Aturan bentuk normal kelima (5NF), sebuah relasi yang tidak mempunyai
ketergantungan gabungan (join dependency). Join dependency
menggambarkan sebuah tipe ketergantungan.
2.1.30 Merancang Relasi Dasar
Bertujuan untuk memutuskan bagaimana menggambarkan relasi dasar
yang telah teridentifikasi di dalam model data logikal global dalam target DBMS.
Dalam tahap ini, kita pertama kali menyusun dan memahami informasi tentang
relasi yang dibuat selama perancangan basis data logikal. Informasi yang
diperlukan dapat diperoleh dari kamus data dan definisi relasi yang dijelaskan
menggunakan DDL.
Definisi relasi terdiri dari :
- Nama Relasi.
- Daftar atribut sederhana di dalam tanda kurung.
- Primary key, alternate key, dan foreign key.
- Daftar berbagai derive atribut dan bagaimana mereka seharusnya dihitung.
- Batasan integritas referensial bagi berbagai foreign key yang teridentifikasi.
Dari kamus data mempunyai definisi bagi setiap atribut yaitu :
33
- Domain-nya, terdiri dari jenis data, panjang, dan berbagai batasan pada
domain.
- Nilai default opsional bagi atribut.
- Apakah atribut dapat menyimpan nilai null.
2.1.31 Index
Menurut Connoly & Begg (2005, p175-p176), Index adalah struktur yang
menyediakan akses pada baris dalam tabel berdasarkan value dari satu atau lebih
kolom. Keberadaan index dapat ditingkatkan secara signifikan performa
querynya. Namun sejak index diupdate oleh sistem setiap kali tabel yang
mendasari diupdate, overhead tambahan mungkin terjadi. Index biasanya dibuat
untuk memenuhi kriteria pencarian tertentu setelah tabel digunakan selama
beberapa waktu dan telah tumbuh dalam ukuran
2.1.32 User View
Menurut Connoly & Begg (2005,p287-p288), User view mendefinisikan
apa yang dibutuhkan oleh sistem database dari perspektif pekerjaan tertentu
seperti Manager, Supervisor atau area enterprise seperti marketing, stock control.
Menurut Stair (2010, p.634), user interface adalah bagian dari sistem
operasi yang memungkinkan pengguna untuk mengakses dan memberikan
perintah ke sistem.
Sistem database dapat memiliki satu atau lebih user view. Mendefinisikan
user view adalah aspek yang penting dalam mengembangkan sistem database
karena sangat membantu pada setiap user tidak ada yang terlupakan ketika
34
mengembangkan requirement untuk database baru. User view juga sangat
membantu dalam pengembangan sistem database yang kompleks.
2.1.33 Flow Chart
Menurut Mulyadi (2001:64) Flowchart adalah aliran dokumen dalam
sistem tertentu, digunakan simbol-simbol dalam suatu bagan aliran dokumen
(flowchat). Dalam bagan alir, arus dokumen ini dapat diikuti dengan melihat
nomor dalam simbol dalam simbol penghubung pada halaman yang sama
(onpage connector) atau nomor dalam simbol penghubung pada halaman yang
berbeda (off-page connector).
Penggunaan bagan alir lebih bermanfaat dibandingkan dengan uraian
tertulis dalam mengambarkan suatu sistem. Manfaat tersebut sebagai berikut :
1. Gambaran sistem menyeluruh lebih mudah diperoleh dengan menggunakan
bagan alir.
2. Perubahan sistem lebih mudah digambarkan dengan menggunakan bagan
alir.
3. Kelemahan-kelemahan dalam sistem dan identifikasi bidang-bidang yang
melakukan perbaikan lebih mudah ditemukan dengan bagan alir.
4. Dokumentasi sistem akuntansi dilakukan dengan menggunakan bagan alir.
2.1.34 Data Flow Diagram ( DFD )
Menurut O’ Brien (2004,p117) Data Flow Diagram (DFD) adalah sebuah
gambaran grafis yang menggambarkan urutan dari proses – proses dan fungsi –
fungsi yang terkandung di dalam sebuah batasan spesifikasi sistem serta aliran
35
data yang melewati sistem tersebut. Dengan menggunakan 4 simbol dasar,
analisis dapat menggambarkan aliran data, penampungan data, proses dan
fungsinya serta pihak luar yang berinteraksi dengan sistem namun yang masih
berada dalam batasan sistem.
Menurut Whitten & Bentley (2007, p. 319), DFD (Data Flow Diagram)
adalah model yang digunakan untuk menggambarkan aliran data melalui
sistem dan pekerjaan atau proses yang dilakukan oleh sistem.
2.1.35 Siklus Hidup Aplikasi Database (The Database Application Lifecycle)
Menurut Connoly & Begg (2005, p283), sistem database adalah
komponen pokok dari sistem informasi organisasi yang besar, siklus hidup
aplikasi database diturunkan terkait dengan siklus hidup informasi sistem. Hal
yang terpenting adalah bahwa dalam tahap-tahap yang terdapat dalam siklus
hidup aplikasi database (database application lifecycle) tidak harus disusun
secara berurutan, tetapi melibatkan beberapa repetisi dari tahap-tahap
sebelumnya yang diperkirakan melalui pengulangan umpan balik (feed-back
loops). Contohnya adalah masalah yang ditemui selama perancangan database
(database design) yang mungkin memerlukan syarat tambahan dalam
pengumpulan kebutuhan dan analisis. Untuk aplikasi database yang kecil dengan
jumlah pengguna yang sedikit, tidak memerlukan siklus hidup aplikasi database
(database application lifecycle) yang kompleks, namun ketika merancang
aplikasi database dari tingkat menengah ke atas yang memiliki jumlah pengguna
yang berkisar dari puluhan sampai dengan ribuan, serta menggunakan ratusan
query dan program aplikasi, siklus hidup (lifecycle) dapat menjadi sangat
36
kompleks. Menurut Connoly & Begg (2005, p284), tahapan database application
lifecycle dapat dilihat seperti gambar berikut:
Gambar 2.5 Database Application Life Cyle
a. Perencanaan Basis Data
Menurut Connoly & Begg (2005, p285), perencanaan basis data adalah
mengelola aktivitas yang mengizinkan tahaptahap lifecycle aplikasi basis data
untuk di realisasikan se-efisien dan se-efektif mungkin. Kegiatan utama dari
perencanaan basis data adalah merencanakan agar tingkat daur hidup dapat
menjadi efisien dan efektif. Hal pertama yang harus dilakukan adalah menentukan
tugas (mission statement) dari proyek basis data. Dengan tujuan untuk
memperjelas maksud dari proyek basis data yang dibutuhkan. Kemudian tahap
37
selanjutnya adalah mengidentifikasi sasaran (mission Objective) dimana setiap
sasaran harus mengenal tugasnya masing-masing dan mendukung basis data.
b. Definisi Sistem
Menurut Connoly & Begg (2005, p286), sistem adalahmenggambarkan
lingkup dan batasan-batasan dari aplikasi basis data dan userview yang utama.
sebelum mencoba merancang suatu aplikasi basis data diperlukan untuk mengenali
batasan sistem dan bagaimana antarmuka dengan bagian sistem informasi lainnya
dalam organisasi. Hal penting yang harus diperhatikan adalah batasan pemakai dan
aplikasi mendatang. Basis data agar dapat memastikan tidak ada pemakaian utama
yang terlupakan ketika mengembangkan keperluan untuk apikasi baru.
c. Perancangan Aplikasi
Menurut Connoly & Begg (2005,p299), pengertian perancangan aplikasi
adalah merancang antarmuka pemakai dan program aplikasi, yang akan
memproses basis data.perancangan basis data dan aplikasi merupakan aktivitas
yang dilakukan secara bersamaan pada database application lifecycle.
d. Prototyping
Menurut Connoly & Begg (2005,p303), pengertian prototyping adalah
membuat model kerja dari apikasi basis data, yang memungkinkan perancangan
atau pemakai untuk mengevaluasi hasil akhir sistem, baik dari segi tampilan
maupun fungsi yang dimiliki sistem. Tujuanya adalah untuk memungkinkan
pemakai menggunakan prototype untuk mengidentifikasikan fitur-fitur sistem
berjalan dengan baik atau tidak, dan bila memungkinkan untuk menyarankan
peningkatan atau bahkan penambahan fitur-fitur baru ke dalam sistem database.
38
e. Implementasi
Menurut Connoly & Begg (2005,p304), pengertian implementasi adalah
realisasi fisik suatu basis data dan perancangan aplikasi. Implementasi basis data
dapat dicapai menggunakan Data Definitioan Language (DDL) dari DBMS yang
dipilih atau Graphical User Interface(GUI). Pernyataan DDL digunakan untuk
menciptakan strukturstruktur basis data dan file-file basis data yang kosong.
Semua spesifikasi user view juga diimplementasikan pada tahap ini.
f. Data Conversion And Loading
Data conversion and loading adalah suatu proses mentransfer data yang ada
ke dalam basis data baru dan mengubah aplikasi yang ada untuk dijalankan dalam
basis data baru (Connoly & Begg ,2005, p305). Tahap ini hanya dibutuhkan ketika
sistem basis data baru menggantikan sistem yang lama.
g. Testing
Testing adalah suatu proses mengeksekusi sistem basis data dengan tujuan
untuk menemukan kesalahan (Connoly & Begg ,2005, p305)
h. Operational dan Pemeliharaan
Menurut Connoly & Begg (2005, p306), pengertian operasional dan
pemeliharaan adalah proses memonitor dan memelihara sistem yang telah di-
install.
39
2.1.36 Arsitektur Basis Data (ANSI-SPARC)
Tingkatan arsitektur ANSI-SPARC dalam arsitektur basis data yang
bertujuan membedakan cara pandang pemakai terhadap basis data dan cara
pembuatan basis data secara fisik. Ada 3 tingkatan arsitektur basis data :
1. Tingkat Eksternal (External Level)
Tingkat eksternal merupakan cara pandang pemakai terhadap basis
data. Pada tingkat ini menggambarkan bagian basis data yang
relevan bagi seorang pemakai tertentu. Tingkat eksternal terdiri dari
sejumlah cara pandang yang berbeda dari sebuah basis data. Masing-
masing pemakai merepresentasikan dalam bentuk yang sudah
dikenalnya. Cara pandang secara eksternal hanya terbatas pada
entitas, atribut dan hubungan antar entitas (relationship) yang
diperlukan saja.
2. Tingkat Konseptual (Conseptual Level)
Tingkat konseptual merupakan kumpulan cara pandang terhadap
basis data. Pada tingkat ini menggambarkan data yang disimpan
dalam basis data dan hubungan antara datanya.
3. Tingkat Internal ( Internal Level)
Tingkat internal merupakan perwujudan basis data dalam komputer.
Pada tingkat ini menggambarkan bagaimana basis data disimpan
40
secara fisik di dalam peralatan storage yang berkaitan erat dengan
tempat penyimpanan / physical storage.
2.2 Teori–Teori Khusus yang berhubungan dengan Topik yang Dibahas
2.2.1 Pengertian Penjualan
Menurut Mulyadi (2001, p202), sistem penjualan adalah sistem yang
melibatkan sumber daya dalam suatu organisasi, prosedur, data serta sarana
pendukung untuk mengoperasikan sistem penjualan sehingga menghasilkan
informasi yang bermanfaat bagi pihak manajemen dalam pengambilan
keputusan.
Jadi pengertian penjualan secara umum adalah suatu sistem informasi
yang mengorganisirkan serangkaian prosedur dan metode yang dirancang untuk
menghasilkan, menganalisa, menyebarkan dan memperoleh informasi guna
mendukung pengambilan keputusan mengenai penjualan.
2.2.2 Pengertian Pembelian
Menurut Mulyadi (2001, p299), sistem pembelian digunakan dalam
perusahaan untuk pengadaan barang yang diperlukan oleh perusahaan. Fungsi
pembelian pada sistem pembelian bertanggung jawab untuk memperoleh
informasi mengenai harga barang, menentukan pemasok yang dipilih dalam
pengadaan barang, dan mengeluarkan order pembelian kepada pemasok yang
dipilih.
41
2.2.3 Pengertian Persediaan
Menurut Mulyadi (2001, p18), sistem persediaan dirancang untuk
menangani transaksi yang bersangkutan dengan mutasi persediaan yang
disimpan di gudang. Persediaan barang pada perusahaan dagang adalah
persediaan barang dagang yang dibeli dengan tujuan untuk dijual kembali.
2.2.4 Problem
Menurut McLeod & Schell (2007, p.111) problem adalah the condition
that has the potential to cause exceptional harm or produce exceptional benefit.
Kesimpulannya, problem adalah suatu kondisi yang memiliki potensi untuk
menimbulkan kerugian atau keuntungan yang tidak terduga.
2.2.5 Problem Solving
Menurut McLeod & Schell (2007, p.111) problem solving adalah the act
of responding to problems so as to suppress their harmful effects or capitalize on
the opportunity for benefit. Kesimpulannya problem solving adalah suatu kondisi
yang dilakukan untuk mengatasi masalah – masalah yang terjadi dengan cara
meminimalisir efek yang merugikan atau memaksimalkan kesempatan untuk
menciptakan keuntungan.
2.2.6 Decision
Menurut McLeod & Schell (2007, p.111), decision is the selection of a
strategy or action. Kesimpulannya decision adalah pemilihan strategi atau
tindakan yang bertujuan untuk mencapai keuntungan dan mengurangi kerugian.
42
2.2.7 Decision Making
Menurut McLeod & Schell (2007, p.111), Decision Making adalah the act
of selecting the strategy or action that the manager believes will offer the best
solution to the problem.
Kesimpulannya decision making adalah strategi atau tindakan yang
dipillih oleh manager yang dipercaya dalam memberikan solusi yang paling baik
untuk menyelesaikan masalah yang terjadi di dalam perusahaan.