bab 2 landasan teori
TRANSCRIPT
BAB 2
LANDASAN TEORI
2.1 Teori Umum
2.1.1 Data
Menurut Connolly dan Begg (2010, p70), data
adalah komponen yang paling penting dalam DBMS,
berasal dari sudut pandang end-user. Data bertindak
sebagai jembatan yang menghubungkan antara mesin
dengan pengguna.
Menurut Indrajani (2011, p2), data adalah fakta
atau observasi mentah yang biasanya mengenai
fenomena fisik atau transaksi bisnis atau secara
lebih khusus lagi data adalah ukuran obyektif dari
atribut (karakteristik) dari entitas seperti
orang, tempat, benda atau kejadian.
2.1.2 Basis Data
Basis data menurut Connolly dan Begg (2010,
p65), adalah sekumpulan data yang berhubungan
6
7
secara logikal dan menjelaskan mengenai sekumpulan
data tersebut yang dirancang untuk memenuhi
kebutuhan informasi suatu organisasi.
Menurut Indrajani (2011, p2), basis data
merupakan suatu kumpulan data yang berhubungan
secara logis dan deskriptif data tersebut, yang
dirancang untuk memenuhi informasi yang dibutuhkan
oleh suatu organisasi.
Artinya, basis data merupakan tempat
penyimpanan data yang berkapasitas besar dan dapat
digunakan oleh banyak pengguna. Seluruh item yang
terdapat dalam suatu basis data tidak hanya
dimiliki oleh suatu divisi, tetapi menjadi sumber
daya perusahaan secara keseluruhan yang dapat
digunakan bersama.
2.1.3 Database Management System (DBMS)
Menurut Connolly dan Begg (2010, p66), Database
Management System atau DBMS adalah suatu sistem
software yang memungkinkan pengguna untuk
8
mendefinisikan, membuat, memelihara dan mengontrol
akses ke basis data.
Menurut Inmon (2002, p388), DBMS adalah suatu
sistem perangkat lunak yang digunakan untuk
menampilkan dan mengukur data.
2.1.3.1 Komponen DBMS
Menurut Connolly dan Begg (2010, p68-71),
terdapat 5 komponen DBMS yaitu : hardware,
software, data, procedure dan people.
1. Hardware
a. Meliputi Personal Computer (PC) sampai
dengan jaringan komputer.
a. Tempat penyimpanan secondary (magnetic
disk), I/O device ex : disk drives, device
controller, I/O channels dan lainnya.
2. Software
9
Sistem Operasi dari DBMS tersebut,
perangkat lunak jaringan (jika diperlukan)
dan program aplikasi pendukung lainnya.
3. Data
Data pada sebuah sistem basis data baik itu
sistem pengguna tunggal maupun sistem
banyak pengguna yang harus terintegrasi
dan dapat digunakan bersamaan.
4. Procedure
Instruksi dan aturan yang harus disertakan
dalam merancang dan menggunakan basis data
dan DBMS tersebut.
5. People
a. DA (Data Administrator), orang yang
berwenang untuk membuat keputusan
strategis dan kebijaksanaan mengenai
data yang ada.
10
b. DBA (Database Administrator), menyediakan
dukungan teknis untuk implementasi suatu
keputusan dan bertanggung jawab atas
keseluruhan control sistem pada level
teknis.
c. Database Designer (Logical and Physical)
d. Aplication Programmers, bertanggung jawab
untuk membuat aplikasi basis data dengan
menggunakan bahasa pemrograman yang ada
seperti: C++, Java dan lain -lain.
e. End User, siapapun yang berinteraksi
dengan sistem secara online melalui
workstation/terminal.
11
2.1.4 Siklus Aplikasi Basis Data
Siklus Aplikasi Basis Data menurut Connolly dan
Begg (2010, p313-314), adalah suatu aplikasi basis
data yang dianalisis dan dirancang dalam tahapan-
tahapan yang meliputi :
12
Gambar 2.1 Tahapan Perencanaan Basis Data
A. Database Planning (Perencanaan Basis Data)
Menurut Connolly dan Begg (2010, p313),
database planning atau perencanaan basis data
merupakan aktivitas manajemen yang memungkinkan
13
tahapan-tahapan dari Database Application Lifecycle
dapat direalisasikan seefektif dan seefisien
mungkin.
B. System Definition (Definisi Sistem)
Menurut Connolly (2010, p316), system definition
atau definisi sistem yaitu menjelaskan jangkauan
dan batasan dari aplikasi basis data dan sudut
pandangan utama dari para pengguna.
C. Requirement Collection and Analysis (Analisis dan
Pengumpulan Kebutuhan)
Menurut Connolly dan Begg (2010, p316),
requirement collection and analysis atau analisis dan
pengumpulan kebutuhan merupakan proses
mengumpulkan dan menganalisis informasi tentang
organisasi yang akan didukung oleh aplikasi
basis data dan menggunakan informasi tersebut
untuk mengidentifikasikan kebutuhan-kebutuhan
terhadap sistem yang baru.
14
Terdapat tiga pendekatan yang bisa digunakan
dalam satu menganalisis dan pengumpulan
kebutuhan yaitu :
1. Centralized Approach
Kebutuhan-kebutuhan untuk setiap pengguna
dibuat dalam satu set requirement untuk sistem
basis data yang baru.
Setiap user view memiliki kebutuhan-
kebutuhan yang berbeda-beda dimana seluruh
kebutuhan tersebut akan dikumpulkan dan
dibuat menjadi suatu global data model
yang nantinya akan diperlukan dalam
pembuatan basis data.
2. View Integration Approach
Kebutuhan untuk setiap user view dibuat
dalam model data yang terpisah. Model data
yang menggambarkan single user view disebut
model data lokal, disusun dalam bentuk
diagram dan dokumentasi yang
mendeskripsikan kebutuhan user view basis
data. Model data lokal ini kemudian
15
digabungkan untuk menghasilkan model data
global yang menggambarkan seluruh user view
untuk basis data.
3. Gabungan antara kedua pendekatan
tersebut.
D. Database Design (Desain Basis Data)
Menurut Indrajani (2011, p59), database design
atau desain basis data merupakan proses
pembuatan rancangan sebuah basis data yang dapat
mendukung kegiatan operasional dan tujuan
perusahaan.
Terdapat tiga pendekatan yang digunakan
untuk merancang sebuah basis data yaitu :
1. Top Down
Diawali dengan membuat data model.
Pendekatan top-down dapat di ilustrasikan
menggunakan entity-relationship (ER) model yang
high level, kemudian mengidentifikasian entity
dan relationship antar entity organisasi.
16
Pendekatan ini sesuai bagi basis data yang
kompleks.
2. Bottom-Up
Dimulai dari level dasar attribute (property
entity dan relationship), menganalisi hubungan
antar-attribute, mengelompokkannya ke dalam
suatu relasi yang menggambarkan tipe entity
dan relasi antara entity. Pendekatan bottom-
up ini sesuai bagi basis data dengan
jumlah attribute yang sedikit.
3. Inside-Out
Mirip seperti pendekatan bottom-up.
Perbedaannya adalah pada tahap awal
mengidentifikasi major entity, lalu
menguraikannya menjadi entity relasi-relasi
dan attribute-attribute yang berhubungan dengah
major entity.
4. Mixed
Menggunakan pendekatan bottom-up dan top-
down.
17
E. DBMS Selection (Pemilihan DBMS)
Menurut Indrajani (2011, p61), DBMS selection
atau pemilihan DBMS adalah kegiatan memilih
DBMS yang akan digunakan dalam pembuatan basis
data. Pemilihan DBMS yang tepat sangat
mendukung aplikasi basis data.
Langkah utama dalam pemilihan DBMS adalah :
1. Definisikan waktu untuk melakukan studi
referensi.
2. Catat dua atau tiga produk yang akan
dievaluasi untuk digunakan.
3. Evaluasi produk tersebut.
4. Rekomendasikan produk yang dipilih dan
buat laporan yang mendukung.
F. Application Design (Perancangan Aplikasi)
Menurut Connolly (2010,p329), application design
atau perancangan aplikasi merupakan proses
perancangan antar muka pengguna dan program-
program aplikasi yang akan menggunakan serta
18
memproses basis data. Basis data diciptakan
untuk mendukung aplikasi, sehingga harus ada
arus informasi antara perancangan aplikasi
dengan perancangan basis data.
G. Prototyping
Menurut Indrajani (2011, p63), fungsi dari
prototype adalah membuat model kerja suatu
aplikasi basis data dan bersifat opsional.
Tujuan utama dari tahapan prototype ini
adalah :
1. Untuk mengidentifikasi sistem fitur
yang sedang berjalan.
2. Untuk memberikan penambahan fitur
atau perbaikan fitur baru.
3. Untuk klarifikasi kebutuhan user.
4. Untuk evaluasi kelayakan dan
kemungkinan apa yang terjadi dari desain
sistem.
19
Terdapat 2 macam prototype yang digunakan
pada saat ini yaitu :
1. Requirements Prototyping
Menggunakan prototype yang menentukan
kebutuhan dari aplikasi basis data yang
diinginkan dan ketika kebutuhan tersebut
terpenuhi maka prototype akan dibuang.
2. Evolutionary Prototyping
Digunakan untuk tujuan yang sama.
Perbedaannya adalah prototype ini tidak
dibuang, tetapi dikembangkan lebih lanjut
menjadi aplikasi basis data yang
digunakan.
H. Implementation (Implementasi)
Implementasi menurut Connolly (2010,p333), adalah
realisasi fisik dari proses perancangan basis data dan
perancangan aplikasi. Sedangkan pengertian
Implementasi menurut Indrajani (2011,p63), merupakan
realisasi fisik dari basis data dan desain aplikasi.
20
Implementasi basis data dicapai dengan menggunakan :
1. DDL untuk membuat skema basis data dan database files
yang kosong.
2. DDL untuk membuat user view yang diinginkan.
3. 3GL atau 4GL untuk membuat program aplikasi.
Termasuk transaksi basis data yang menggunakan DML
atau ditambahkan pada bahasa pemrogaman.
I. Data Conversion and Loading (Konversi Data dan
Loading)
Data conversion and loading atau Konversi data dan
loading menurut Indrajani (2011, p64), adalah
sebuah tahap pemindahan data yang ada ke dalam
basis data yang baru dan mengkonversikan
aplikasi yang ada agar dapat menggunakan basis
data yang baru. Tahapan ini dibutuhkan ketika
sistem basis data baru menggantikan yang lama.
Database Management System biasanya memiliki fitur
21
untuk memanggil ulang file yang telah ada ke dalam
basis data baru. Dapat juga mengkonversi dan
menggunakan program aplikasi dari system yang
lama untuk digunakan oleh sistem yang baru.
J. Testing
Menurut Indrajani (2011,p64), testing adalah
suatu proses eksekusi program aplikasi dengan
tujuan untuk menemukan kesalahan dengan skenario
tes yang direncanakan dan data yang
sesungguhnya.
K. Operational Maintenance
Menurut Indrajani (2011, p64), operational
maintenance adalah suatu proses pengawasan dan
pemeliharaan sistem setelah instalasi, yang
mencakup :
1. Pengawasan kinerja sistem. Jika kinerja
menurun, diperlukan perbaikan atau
pengaturan ulang basis data.
22
2. Pemeliharaan dan pembaharuan aplikasi
basis data jika dibutuhkan.
3. Penggabungan kebutuhan baru ke dalam
aplikasi basis data.
2.1.5. Normalisasi
Menurut Indrajani (2011, p77), normalisasi
adalah suatu teknik dengan pendekatan bottom-up
yang digunakan untuk membantu mengidentifikasikan
hubungan, dimulai dengan menguji hubungan, yaitu
Functional Dependencies antara atribut.
Hal ini dijelaskan oleh Connolly dan Begg
(2010,p416) normalisasi adalah sebuah teknik untuk
menghasilkan sekumpulan relasi dengan banyak
properti yang sesuai dengan persyaratan data yang
diberikan sebuah perusahaan. Tujuan dari
dilakukannya normalisasi adalah untuk
mengidentifikasikan sekumpulan relasi yang
mendukung persyaratan data sebuah perusahaan.
Menurut Indrajani (2011,p84), ada beberapa hal
yang perlu diperhatikan dalam proses normalisasi
diantaranya adalah :
23
a. Suatu teknik formal untuk menganalisis
relasi berdasarkan primary key dan functional
dependencies antar atribut.
b. Dieksekusi dalam beberapa langkah. Setiap
langkah mengacu kebentuk normal tertentu
sesuai dengan sifat yang dimilikinya.
c. Setelah normalisasi diproses, relasi secara
bertahap menjadi lebih terbatas atau kuat
bentuk formatnya dan juga mengurangi
tindakan update yang teranomali.
Sedangkan tahapan dari normalisasi yang sering
digunakan adalah :
1. Unnormalized Form (UNF)
Unnormalized Form adalah tahapan dimana tabel
masih memiliki satu atau lebih grup yang
berulang.
2. First Normal Form (1NF)
First Normal Form adalah tahapan dimana sebuah
relasi dari setiap baris dan kolom hanya berisi
satu buah nilai. Dan cara melakukan normalisasi
24
pada tahap pertama ini adalah dengan cara
menghilangkan perulangan yang ada. Pada
tahapan ini, primary key harus ditentukan. Suatu
primay key dipilih dari himpunan candidate key
untuk kemudian digunakan pada index untuk
relasi yang bersangkutan. Keuntungan dari 1NF
dibandingkan dengan Unnormalized relation (UNRs)
adalah pada bentuk penyederhanaan representasi
dan kemudahan dalam pengembangan menggunakan
query language.
3. Second Normal Form (2NF)
Second Normal Form adalah tahapan yang sesuai
dengan konsep ketergantungan fungsional
menyeluruh. Untuk mengubah 1NF menjadi 2NF
dapat dilakukan dengan mengidentifikasi setiap
primary key dan relasinya kemudian menghilangkan
ketergantungan pada primary key dengan cara
membuat relasi baru.
4. Third Normal Form (3NF)
Third Normal Form adalah sebuah relasi dalam
bentuk 1NF dan 2NF dimana tidak ada atribut
25
non primary key yang bergantung secara transitif
terhadap primary key. Untuk mengubah bentuk 2NF
menjadi 3NF dapat dilakukan dengan
mengidentifikasi primary key pada 2NF dan
ketergantungan transitif kemudian
menghilangkan atribut yang bergantung dengan
cara membuat relasi baru.
2.1.6. Metodologi Perancangan
2.1.6.1 Conceptual Database Design
Conceptual Database Design menurut Connolly-
Begg (2010,p467), adalah suatu proses
membangun sebuah model dari informasi
perusahaan dan bersifat independent dari
segala pertimbangan physical. Sedangkan menurut
Indrajani (2011, p60), Conceptual Database Design
adalah proses pembentukan model yang berasal
dari informasi yang digunakan dalam
perusahaan yang bersifat independent dari
keseluruhan aspek fisik. Model data tersebut
dibangun dengan menggunakan informasi dalam
26
spesifikasi kebutuhan dan merupakan sumber
informasi untuk fase desain logical.
Langkah – langkah dalam merancang basis
data konseptual adalah sebagai berikut :
1. Membangun model data konseptual lokal
untuk setiap view
i. Mengidentifikasi tipe entitas.
Mengidentifikasi tipe entitas utama
yang menjadi kebutuhan dan akan
dibangun.
ii. Mengidentifikasi tipe relationship.
Mengidentifikasi tipe relationship yang ada
di antara tipe entitas yang telah
diidentifikasi.
iii. Mengidentifikasi dan mengasosiasikan
atribut dengan tipe entitas atau
relationship.
Menghubungkan atribut – atribut yang
dimiliki oleh entitas maupun relasi.
Menentukan domain atribut.
27
Menentukan domain untuk atribut pada
model data konseptual lokal.
iv. Menentukan atribut dari candidate key dan
primary key.
Mengidentifikasi candidate key untuk setiap
tipe entitas dan jika lebih dari satu
candidate key, pilih salah satu untuk
menjadi primary key.
v. Mempertimbangkan penggunaan dari
enhanced modeling concept (optional).
Mempertimbangkan kegunaan dari enhanced
modeling concept, seperti specialization,
generalization, aggregation dan composition.
vi. Memeriksa redundansi dari model.
Memeriksa ada atau tidaknya redundansi
dari model.
vii. Memvalidasikan model konseptual lokal
terhadap transaksi pengguna.
Memastikan bahwa model konseptual
lokal mendukung transaksi yang
dibutuhkan.
28
viii. Meninjau kembali model konseptual data
lokal terhadap kebutuhan penggunaan.
Meninjau kembali model yang telah di
bangun guna memastikan bahwa model
tersebut merupakan representasi yang
sesuai.
2.1.6.2 Logical Database Design
Logical Database Design menurut Indrajani
(2011, p60) adalah suatu proses pembentukan
model yang berasal dari informasi yang
digunakan dalam perusahaan yang berdasarkan
model data tertentu, namun independent terhadap
DBMS tertentu dan aspek fisik lainnya. Model
data konseptual yang telah di buat sebelumnya
diperbaiki dan dipetakan kembali dalam model
data logikal.
Langkah-langkah dalam merancang logikal
basis data adalah sebagai berikut :
1. Membangun dan memvalidasikan model data
29
logikal untuk setiap view.
i. Menghilangkan fitur-fitur yang tidak
cocok dengan model relasional
(opsional).
Menyaring model data konseptual lokal
agar fitur-fitur yang tidak cocok dengan
model relasional dapat dihilangkan.
ii. Menentukan relasi untuk model logikal
data lokal.
Membuat relasi untuk model data logikal
lokal untuk menggambarkan entitas,
relationship, dan atribut yang
diidentifikasikan.
iii. Memvalidasikan relasi dengan menggunakan
normalisasi.
Memvalidasi relasi dalam model data
logikal lokal menggunakan teknik
normalisasi.
iv. Memvalidasikan relasi terhadap transaksi
pengguna.
30
Memastikan bahwa relasi dalam model data
logikal lokal mendukung transaksi.
v. Menentukan kendala integrity.
Mendefinisikan batasan-batasan yang
meliputi required data, attribute domain
constraints, entity integrity, referential integrity,
serta enterprise constraints.
vi. Meninjau ulang model data logikal lokal
terhadap kebutuhan pengguna
Memastikan bahwa model data logikal
lokal mendukung dokumentasi yang
menjelaskan bahwa model data yang
digambarkan adalah benar.
2. Membangun dan mevalidasikan model data
logikal global.
i. Menggabungkan model data logikal lokal
kedalam model data logikal global.
Menggabungkan model data logikal lokal
perorangan menjadi model data logikal
lokal perusahaan.
31
ii. Memvalidasikan model data logikal
global.
Memvalidasikan relasi yang dibuat
dari model data logikal global
menggunakan teknik normalisasi dan
memastikan model tersebut mendukung
kebutuhan transaksi.
iii. Memeriksa untuk perkembangan dimasa
yang akan datang.
Menentukan apakah telah terjadi
perubahan yang penting dan yang terduga
dimasa yang akan datang dan untuk
dinilai apakah model data logikal global
dapat menampung perubahan tersebut.
iv. Meninjau kembali model data logikal
global terhadap
kebutuhan pengguna.
Memastikan bahwa model data logikal
global menggambarkan perusahaan dengan
benar.
32
2.1.6.3. Physical Database Design
Menurut Indrajani (2011, p61), Physical
Database Design adalah suatu proses yang
menghasilkan deskripsi implementasi basis
data pada penyimpanan sekunder. Menggambarkan
struktur penyimpanan dan metode akses yang
digunakan untuk mencapai akses yang efisien
terhadap data. Dapat juga dikatakan bahwa
design fisik merupakan cara pembuatan menuju
DBMS tertentu.
1. Menerjemahkan model data logikal global
untuk menjadi target DBMS
i. Merancang basis relasi.
Memutuskan bagaimana relasi dasar
akan direpresentasikan pada DBMS
target.
ii. Merancang representasi dari data
turunan.
Memutuskan bagaimana
merepresentasikan data-data turunan
33
yang terdapat pada model dan
menganalisis transaksi yang penting.
iii. Merancang entreprise constraint.
Merancang entreprise constraints terhadap
DBMS target.
2. Merancang representasi fisik.
i. Analisa transaksi
Agar dapat memahami fungsionalitas
dari transaksi akan berjalan di dalam
basis data serta menganalisa
transaksi yang penting.
ii. Memilih organisasi file.
Menentukan organisasi file yang
efisien untuk setiap basis relasi.
iii. Memilih indeks.
Menentukan apakah penambahan indeks
dapat meningkatkan kinerja dari
sistem.
iv. Memperkirakan kebutuhan disk space.
Memperkirakan kapasitas disk space yang
akan dibutuhkan oleh basis data.
34
3. Merancang user views.
Merancang user views yang telah
diidentifikasi pada tahap pengumpulan
kebutuhan dan analisis pada daur
hidup aplikasi basis data.
4. Merancang tingkat pengamanan.
Merancang tingkat pengamanan basis
data agar dapat diakses oleh pengguna
tertentu.
5. Mempertimbangkan penggunaan redundansi.
Menentukan apakah pengguna menggunakan
redundansi yang dapat meningkatkan
kinerja sistem.
6. Mengawasi dan memelihara sistem
operasional.
Mengawasi sistem operasional dan
meningkatkan kinerja sistem guna
memperbaiki rancangan-rancangan yang
kurang sesuai atau sebagai refleksi
adanya perubahan kebutuhan.
35
2.1.7. Entity Relationship Modelling (ER Model)
2.1.7.1 Entity Type
Entity type merupakan kumpulan obyek-obyek
dengan sifat (property) sama yang
diidentifikasi oleh entreprise yang mempunyai
eksistensi independen. Keberadaanya dapat
berupa fisik ataupun abstrak Indrajani
(2011, p109). Menurut Connolly dan Begg
(2010, p373), entity occurrence adalah sebuah
obyek dari suatu tipe entity yang dapat
diidentifikasi secara unique.
Gambar 2.2 Entity Type
Entity type bisa dikelompokkan menjadi :
1. Strong Entity
36
Entity yang keberadaanya tidak tergantung
pada entity lain. Terkadang disebut parent,
owner dominant.
2. Weak Entity
Entity yang keberadaanya bergantung pada
entity lain. Disebut juga child dependent,
subordinate
Gambar 2.3 Strong dan Weak entity
2.1.7.2. Relationship Type
Menurut Indrajani (2011, p110), relationship
type adalah kumpulan keterhubungan yang
mempunyai arti tipe entitas yang ada.
37
Menurut Indrajani (2011, p110), relationship
occurrence merupakan keterhubungan yang
diidentifikasikan secara unik yang meliputi
keberadaan tipe-tipe entitas yang
berpartisipasi.
Menurut Indrajani (2011, p110), relationship
type memiliki derajat, yaitu jumlah entitas
yang berpartisipasi dalam suatu hubungan.
Derajat relationship terdiri dari :
1.1. Binary Relationship, merupakan keterhubungan
antara dua tipe entity.
Gambar 2.4 contoh binary relationship
1.2. Ternary Relationship, merupakan keterhubungan
antara tiga tipe entity.
38
Gambar 2.5 contoh ternary relationship
1.3. Quartenary Relationship, merupakan
keterhubungan antara
empat tipe entity.
Gambar 2.6 contoh quartenary relationship
1.4. Unary Relationship, merupakan keterhubungan
antara satu tipe entity, dimana tipe entity
tersebut berpartisipasi lebih dari satu
kali dengan peran yang berbeda. Kadang-
kadang disebut sebagai recursive relationship,
Relationship dapat diberi role names untuk
mengidentifikasikan keterkaitan tipe
entity dalam relationship
Financial
Institution
Buyer Bid
Solicitor
Regi
ster
39
2.1.7.3 Atribut
Menurut Indrajani (2011, p111), atribut
merupakan sifat-sifat dari sebuah entity atau
tipe relationship. Selain itu atribut domain
adalah himpunan nilai yang diperbolehkan
untuk satu atau lebih atribut.
Atribut domain terdiri dari :
1. Simple Attribute : atribut yang terdiri atas
satu komponen tunggal dengan
keterbatasan yang independen dan tidak
dapat dibagi menjadi bagian yang lebih
kecil lagi. Dikenal dengan nama Atomic
Attribute.
2. Composite Attribute : atribut yang terdiri
dari beberapa komponen, dimana masing-
masing komponen memiliki keberadaan
yang independen.
3. Single – Valued Attribute : atribut yang
mempunyai nilai tunggal untuk setiap
kejadian.
4. Multi – Valued Attribute : atribut yang
40
mempunyai beberapa nilai untuk setiap
kejadian
5. Derived Attribute : atribut yang memiliki
nilai yang dihasilkan dari satu atau
beberapa atribut lainnya dan tidak
harus berasal dari satu entity.
Sedangkan key pada sistem basis data
meliputi :
1. Candidate Key : jumlah minimal atribut-
atribut yang dapat mengidentifikasikan
setiap kejadian atau record secara unik
(Indrajani, 2011, p112).
2. Primary Key : candidate key yang dipilih
untuk mengidentifikasikan setiap
kejadiaan atau record dari suatu entity
secara unik (Indrajani, 2011, p112).
3. Composite Key : candidate key yang
terdiri atas dua atau lebih atribut
(Indrajani, 2011, p112).
4. Alternate Key : candidate key yang tidak
terpilih menjadi primary key atau biasa
41
disebut secondary key (Connolly,
2010,p151).
5. Foreign Key : sebuah primary key pada suatu
entity yang digunakan pada entity
lainnya untuk mengidentifikasikan
sebuah relationship (Connolly, 2010,
p151).
2.1.7.4 Structural Constraint
Menurut Connolly dan Begg (2010,p385),
jenis utama dari batasan pada suatu relasi
dinamakan multiplicity. Menurut Indrajani (2011,
p114), Multiplicity yaitu jumlah atau range dari
kejadian yang mungkin terjadi pada suatu
entitas yang terhubung ke satu kejadian
dari entittas lain yang berhubungan melalui
relationship. Menurut Connolly dan Begg
(2010,p385), Multiplicity adalah jumlah occurence
atau kejadian yang mungkin terjadi pada
sebuah tipe entity dimana memungkinkan
berhubungan dengan satu kejadian lain yang
42
bergantung pada sebuah tipe entity melalui
hubungan yang nyata. multiplicity membatasi
setiap entity-entity yang berhubungan.
Hubungan yang biasa digunakan pada suatu
relasi adalah binary relationship yang terdiri
atas :
1. One to One (1 :1) : Relationship, terjadi
bila setiap anggota entity A hanya
boleh berpasangan dengan satu anggota
dari entity anggota B, dan sebaliknya.
2. One to Many (1 : *) : Relationship, terjadi
bila setiap anggota entity A boleh
berpasangan dengan lebih dari satu
anggota dari entity B. Sebaliknya,
Tiap anggota entity B hanya boleh
berpasangan dengan satu anggota entity
A.
3. Many to Many (* : *) : Relationship,
terjadi bila tiap anggota entity A
boleh berpasangan dengan lebih dari
43
satu anggota dari entity B. Dan begitu
juga sebaliknya.
2.1.8 Object Oriented Programming (OOP)
Menurut Grady (2007,p41), Object Oriented
Programming (OOP) adalah metode implementasi dimana
program diatur sebagai koleksi sebuah obyek
kooperatif yang masing-masingnya mewakili instance
suatu kelas.
Metodologi pengembangan sistem berorientasi
obyek mempunyai tiga karakteristik utama yaitu:
1. Encapsulation
Encapsulation merupakan dasar untuk
pembatasan ruang lingkup program terhadap
data yang diproses. Data dan prosedur atau
44
fungsi dikemas bersama-sama dalam suatu
obyek, sehingga prosedur atau fungsi lain
dari luar tidak dapat mengaksesnya. Data
terlindung dari prosedur atau obyek lain,
kecuali prosedur yang berada dalam obyek itu
sendiri.
2. Inheritance
Merupakan teknik yang menyatakan bahwa
anak (subclass) dari obyek akan mewarisi
data/atribut dan metode dari induknya
(superclass) langsung. Atribut dan metode dari
obyek induk diturunkan kepada anak obyek,
demikian seterusnya.
Inheritance mempunyai arti bahwa atribut dan
operasi yang dimiliki bersama di antara kelas
yang mempunyai hubungan secara hirarki.
Suatu kelas dapat ditentukan secara umum,
kemudian ditentukan spesifik menjadi subclass.
Setiap subclass mempunyai hubungan atau
mewarisi semua sifat yang dimiliki oleh kelas
45
induknya, dan ditambah dengan sifat unik yang
dimilikinya, Kelas obyek dapat didefinisikan
atribut dan service dari kelas obyek lainnya.
3. Polymorphism
Polymorphism yaitu konsep yang menyatakan
bahwa sesuatu yang sama dapat mempunyai
bentuk dan perilaku berbeda. Polymorphism
mempunyai arti bahwa operasi yang sama
mungkin mempunyai perbedaan dalam kelas yang
berbeda.
2.1.9 Structured Query Language (SQL)
Menurut Connolly dan Begg (2010, p185), SQL
merupakan bahasa basis data yang mengijinkan
pengguna untuk membuat basis data dan struktur
hubungan dalam basis data, menampilkan tugas
pengelolaan basis data dan menyediakan query yang
sederhana ataupun kompleks. SQL merupakan bahasa
yang dirancang untuk mengubah data masukan
menjadi data keluaran yang dibutuhkan.
46
2.1.9.1 Data Definition Language (DDL)
DDL adalah sebuah bahasa yang
memungkinkan pengguna untuk dapat
mendefinisikan suatu entitas, atribut, dan
hubungan yang dibutuhkan aplikasi. DDL
tidak dapat digunakan untuk melakukan
manipulasi data. (Connolly dan Begg, 2010,
p92)
Beberapa sintaks dasar dari DDL (Connolly
dan Begg, 2010, p237) :
a. Create table, berguna untuk membuat table dan
mengidentifikasi tipe data pada tiap
kolom.
b. Alter table, berguna untuk menambah atau
membuang kolom dan constraint.
c. Drop table, berguna untuk menghapus table
beserta data yang ada di dalam nya.
d. Create index, Berguna untuk membuat index
pada suatu table.
e. Drop index, Berguna untuk membuang atau
menghapus index yang dibuat sebelumnya.
47
2.1.9.2 Data Manipulation Language (DML)
DML adalah sebuah bahasa yang menyediakan
sekumpulan operasi untuk mendukung operasi
manipulasi data terhadap data yang disimpan
dalam basis data. (Connolly dan Begg, 2010,
p92)
2.1.10 Data Flow Diagram ( DFD )
Menurut Indrajani (2011, p11), Data Flow Diagram
adalah sebuah alat yang menggambarkan aliran data
sampai sebuah system selesai, dan kerja atau
proses dilakukan dalam sistem tersebut.
Dalam DFD ada 4 komponen utama, yaitu :
1. External Agent
External Agent mendefinisikan orang atau sebuah
unit organisasi, sistem lain, atau
48
organisasi yang berada di luar sistem proyek
tapi dapat mempengaruhi sistem kerja.
2. Proses
Proses adalah penyelenggaraan kerja atau
jawaban, datangnya aliran data atau
kondisinya.
3. Data Flow
Mempresentasikan sebuah input data ke dalam
sebuah proses atau output dari data (atau
informasi) pada sebuah proses. Data flow juga
digunakan untuk pembuatan, pembacaan,
penghapusan, atau pembaruan data dalam file
atau database.
4. Data Store
Suatu penyimpanan data yang ditujukan untuk
pengguna selanjutnya. Sinonimnya adalah file
dan database.
49
Jenis-jenis DFD adalah sebagai berikut :
1. Level 0 ( Diagram konteks)
Level ini merupakan sebuah proses yang
berada di posisi pusat.
2. Level 1 (Diagram Nol)
Level ini merupakan sebuah proses di level
0 yang dipecahkan
menjadi beberapa proses lainnya
3. Level 2 (Diagram Rinci)
Level ini merupakan perincian dari diagram
level 1.
2.1.11 State Transition Diagram
Menurut Pressman (2005, p302) STD (State Transition
Diagram) dapat mengindikasikan bagaimana perilaku
(behavior) suatu sistem terhadap suatu tindakan
(event). Jadi State Transition Diagram adalah sebuah
modeling tool yang menggambarkan ketergantungan
waktu pada sistem real time dan human interface pada
sistem online.
50
Notasi yang paling penting dari STD, sebagi
berikut :
1. State
Merupakan kumpulan keadaan atau atribut –
atribut yang
mencirikan benda atau orang pada waktu,
keadaan, dan kondisi
tertentu.
2. Transisi
Perubahan state ditandakan dengan tanda panah
3. Kondisi
Keadaan lingkuan luar yang dapat dideteksi
oleh sistem dan
menyebabkan perubahan state. Kondisi dapat
berupa sinyal,
gangguan, dan lainya.
4. Aksi
Adalah apa yang dilakukan sistem jika ada
perubahan state. Aksi
51
dapat menghasilkan keluaran, tampilan pesan
pada layar
pengguna, membuat kalkulasi, dan lainnya.
2.2. Teori Khusus
2.2.1 Java
Menurut Gosling et al. (2005, p1), Java
adalah bahasa yang konkuren, berbasis kelas,
dan bahasa yang berorinteasi obyek, yang
dirancang sederhana yang banyak programmer
dapat mencapai kefasihan dalam bahasa
pemograman.
2.2.2 Adobe Dreamweaver CS6
Adobe Dreamweaver adalah aplikasi web
yang dikembangkan oleh Adobe Systems yang
awalnya dikembangkan oleh Macromedia pada tahun
1997, sampai Macromedia diakuisisi oleh Adobe
Systems pada tahun 2005. Adobe Dreamweaver
tersedia untuk Mac dan sistem operasi Windows.
Versi terbaru telah ditingkatkan untuk
52
mendukung teknologi web seperti CSS, JavaScript,
dan berbagai bahasa scripting seperti server-side
dan kerangka kerja termasuk ASP, ColdFusion,
Scriptlet, dan PHP.
2.2.3 Intellij IDEA
Intellij IDEA adalah aplikasi Java IDEA yang
dikembangkan oleh JetBrains. Versi pertama
dari Intellij IDEA dirilis pada Januari 2001,
dan pada saat yang salah satu Java IDEA pertama
tersedia dengan kode navigasi dan kode refactoring
yang terintegrasi dan didukung dengan dua versi
terbaru, Intellij IDEA Community edition dan
Intellij IDEA Ultimate edition.
2.2.4 MySQL
Menurut Peranginangin (2006, p389), MySQL
adalah sebuah basis data yang dapat digunakan
baik secara client maupun server. MySQL
menggunakan suatu format pada standar SQL.
MySQL bekerja pada berbagai macam sistem
53
operasi dan bahasa pemrograman. MySQL memiliki
dua bentuk lisensi, yaitu freesoftware dan
shareware. MySQL yang banyak digunakan adalah
MySQL freesoftware yang berada di bawah lisensi
GNU/GPL(General Public Licence).
2.2.5 Media Sosial
Media sosial adalah sebuah media online,
dengan para penggunanya bisa dengan mudah
berpartisipasi, berbagi, dan menciptakan isi
meliputi blog, jejaring sosial, wiki, forum
dan dunia virtual. Blog, jejaring sosial dan
wiki merupakan bentuk media sosial yang paling
umum digunakan oleh masyarakat di seluruh
dunia.