9
BAB 2
LANDASAN TEORI
2.1 Pendekatan Basis data
2.1.1 Pengertian Basis Data
Menurut Navathe dan Elmasri (2000, p4), basis data adalah kumpulan file yang
saling berhubungan, basis data memiliki  beberapa sumber dimana data tersebut
diturunkan, beberapa berasal dari interaksi dengan dunia nyata, dan pengguna yang
secara aktif tertarik pada isi dari basis data itu sendiri.
Menurut Connolly dan Begg (2010, p65), basis data adalah sekumpulan data
yang terhubung secara logikal yang dipakai bersama dan deskripsi
dari data ini
dirancang untuk menemukan informasi-informasi yang dibutuhkan oleh sebuah
organisasi.
2.1.2 Sistem Manajemen Basis data (DBMS)
Menurut Connolly dan Begg (2010, p66), sistem manajemen basis data adalah
sistem perangkat lunak yang memungkinakan pengguna untuk mendefinisikan,
membuat, memelihara, dan mengontrol akses menuju basis data. 
2.1.2.1 Keuntungan Sistem Manajemen Basis data
Menurut Connolly dan Begg (2010, p77), keuntungan-keuntungan sistem
manajemen basis data yaitu :
  
10
1. Mengontrol duplikasi data
Basis data dapat mengurangi duplikasi data yang terjadi, tetapi tidak
semua duplikasi data dapat dihilangkan, melainkan hanya dapat dikontrol. Hal
ini dikarenakan terkadang duplikasi data tetap dibutuhkan meningkatkan
kemampuan.
2. Data yang konsisten
Basis data dengan menghilangkan atau mengontrol duplikasi data yang
akan mengurangi resiko tidak konsistennya dari data yang mungkin terjadi.
3. Data yang sama lebih memiliki banyak informasi
Basis data dengan adanya integrasi data operasional maka
memungkinkan bagi sebuah organisasi mendapatkan tambahan informasi data
yang sama. 
4. Penggunaan data bersama-sama
Biasanya file dimiliki oleh seseorang atau departemen yang
menggunakannya. Sebaliknya, suatu basis data dimiliki oleh organisasi secara
keseluruhan dan dapat diakses kepada pengguna yang memiliki hak akses.
5. Integritas data telah dikembangkan
Integritas data memiliki arti dari konsisten dan keabsahan dari data yang
disimpan. Integritas biasanya menegaskan arti dari kata constraint, yang
merupakan aturan yang tidak dapat dilanggar oleh pemakai basis data.
  
11
2.1.2.2 Kerugian Sistem Manajemen Basis data
Menurut Conolly dan Begg (2010, p80-81) kerugian sistem manajemen basis
data yaitu:
1. Kompleksitas
Fungsionalitas yang diharapkan dari sistem manajemen basis data yaitu membuat
sistem manajemen basis data menjadi software yang sangat kompleks. Pengguna sistem
manajemen basis data harus memahami dengan baik setiap fungsi dari sistem
manajemen basis data untuk mendapatkan keuntungan maksimum dari sistem
manajemen basis data tersebut. Ketidakpahaman atas sistem dapat menyebabkan
pengambilan keputusan perancangan yang buruk akan mengakibatkan dampak serius
pada organisasi.
2. Ukuran
Kompleksitas dan fungsional yang baik membuat sistem manajemen basis data
menjadi sebuah software
yang berukuran sangat besar dan membutuhkan disk space
yang sangat besar serta jumlah memori yang besar agar dapat dijalankan se-efisien
mungkin.
3. Harga sistem manajemen basis data
Harga sistem manajemen basis data sangat bervariasi tergantung dari lingkungan
dan fungsi yang disediakan termasuk biaya pemeliharaan.
  
12
4. Biaya perangkat keras tambahan
Kebutuhan disk storage untuk sistem manajemen basis data dan database
menyebabkan kemungkinan untuk membeli storage tambahan. Selain itu, untuk
mendapatkan kemampuan yang diinginkan, dibutuhkan perangkat keras yang cepat dan
baik tapi mahal.
5. Biaya konversi
Pada beberapa situasi, biaya yang dibutuhkan untuk mengubah aplikasi agar
dapat berjalan pada sistem menejemen basis data yang baru dapat jauh lebih mahal dari
biaya perangkat keras tambahan. Biaya tersebut juga termasuk biaya latihan pegawai
untuk menggunakan sistem yang baru, dan mungkin juga biaya pegawai spesialis untuk
membantu konversi dan pelaksanaan sistem.
2.1.3
Database Language
Menurut  Connolly  dan  Begg  (2010,  p91),  pengertian  dari  Database System 
adalah  sebuah  data sublanguage  yang  terdiri atas dua komponen : Data Definition
Language (DDL) dan Data Manipulation Language
(DML). DDL digunakan untuk
skema database yang spesifik dan DML digunakan untuk membaca dan mengupdate
database. Disebut data sublanguage karena konsep bahasa ini tidak mengandung semua
kebutuhan komputasi, seperti conditional statement atau perulangan, dimana konsep
bahasa tersebut hanya digunakan pada bahasa pemograman tingkat tinggi.
  
13
2.1.3.1 Data Definition Language (DDL)
Menurut Connolly dn Begg (2010, p92), Data Definition Language adalah suatu
bahasa yang mengizinkan Database Adminstrator
(DBA) atau pengguna untuk
menjelaskan dan member nama suatu entitas, atribut, dan relasi data yang dibutuhkan
untuk aplikasi, bersama dengan beberapa intergritas data yang diasosiasikan dan batasan
keamanan data.
2.1.3.2 Data Manipulation Language (DML)
Menurut Connolly dan Begg (2010, p92), Data Manipulation Language adalah
suatu bahasa yang menyediakan seperangkat operasi untuk mendukung manipulasi data
yang berada pada basis data.
Pengoperasian data yang akan dimanipulasi biasanya meliputi:
a) Penambahan data yang baru ke dalam basis data.
b) Modifikasi data yang disimpan ke dalam basis data.
c) Memperbaiki data yang terdapat dalam basis data.
d) Menghapus data dari basis data.
2.1.3.3 Fourth-Generation Language (4GLs)
Menurut Connolly dan Begg (2010, p94), Fourth-Generation Language (4GLs)
adalah bahasa pemrograman yang lebih cepat atau lebih pendek. Sebuah operasi data
yang  membutuhkan ratusan baris kode dalam bahasa generasi ketiga (Third-Generation
Language (3GL)), contohnya yaitu COBOL, dibuat dalam baris yang lebih singkat pada
4GL.
  
14
2.1.4 Program Aplikasi
Menurut Connolly dan Begg (2010, p67), program aplikasi adalah sebuah
program komputer yang berinteraksi dengan database sesuai dengan permintaan ke
sistem menejemen basis data. 
2.1.5 Fungsi DBMS
Menurut Connolly dan Begg (2010, p99-104), fungsi DBMS terdiri dari:
1. Penyimpanan, pengembalian,
update
data merupakan kemampuan untuk
menyimpan, restore dan update data di dalam basis data.
2. Katalog yang dapat diakses oleh pengguna, dimana deskripsi data disimpan
dan dapat diakses oleh pengguna.
3. Pendukung transaksi, merupakan sebuah mekanisme dimana dapat
memastikan bahwa semua update
yang dibuat oleh transaksi yang telah
dibuat.
4. Layanan control
concurrency,
merupakan sebuah mekanisme untuk
memastikan bahwa basis data di-update secara benar ketika banyak pengguna
telah meng-update basis data pada saat yang bersamaan.
5. Layanan perbaikan, merupakan sebuah mekanisme untuk memperbaiki basis
data yang apabila dalam sebuah kejadian rusak dengan berbagai cara.
6. Layanan autorisasi, merupakan sebuah mekanisme untuk memastikan bahwa
hanya pengguna yang memiliki izin, dapat mengakses basis data.
7. Pendukung komunikasi data, kemampuan berintegrasi dengan perangkat lunak
komunikasi.
  
15
8. Integrity service, sebuah DBMS harus menjamin bahwa baik data didalam
database dan perubahan data tersebut mengikuti aturan yang ada.
9. Layanan untuk menciptakan data yang mandiri, sebuah DBMS harus
menyediakan fasilitas untuk mendukung kemandirian dari program dari
struktur basis data yang sebenarnya.
10. Layanan utilitas, sebuah DBMS harus menyediakan suatu set dari layanan
utilitas.
 
2.1.6 Siklus Hidup Aplikasi Basis Data (Database Lifecycle)
Untuk merancang aplikasi basis data diperlukan tahapan-tahapan terstruktur yang
dinamakan dengan Siklus Hidup Aplikasi Basis Data (Databse Application Lifecycle).
Perlu digarisbawahi bahwa tahapan-tahapan dalam siklus ini tidak harus berurutan,
namun juga melibatkan beberapa pengulangan ke tahapan sebelumnya melalui putaran
balik (feedback loops). Tahapan tersebut dapat dilihat pada Gambar 2.1 (Connolly dan
Begg (2010, p314)).
  
16
Gambar 2.1 Diagram Sistem Database Lifecycle (Connolly dan Begg, 2010, p314)
 
Perancangan Basis Data
Definisi Sistem
Analisa dan Pengumpulan
Kebutuhan
Perancangan Database
Konseptual
Perancangan
Aplikasi
Pemilihan DBMS
Perancangan Database
Logikal
Perancangan Database
Fisikal
Prototyping
Implementasi
Konversi Data dan
Loading
Testing
Operational
Maintenance
  
17
2.1.6.1 Perancangan Basis Data (Database Planning)
Menurut Connolly dan Begg (2010, p313), perancangan basis data adalah
kegiatan pengaturan yang memungkinkan tahap-tahap dalam aplikasi basis data dapat
diwujudkan secara efisien dan seefektif mungkin. Tahap-tahap perancangan basis data
juga harus menjelaskan :
1.
Mission Statement dari proyek basis data. Mission statement ini menjelaskan
tujuan utama basis data, juga membantu menjelaskan tujuan proyek basis
data, dan menyediakan maksud yang lebih jelas dalam pembuatan aplikasi
basis data secara efektif dan menjadi tujuan dari proyek basis data ini
diharapkan dapat lebih memfokuskan pekerjaan pada tahap selanjutnya
(Connolly dan Begg, 2010, p313).
2.
Mission Objective. Selain merumuskan tujuan dari sebuah proyek basis data,
harus diperhatikan juga mengenai tugas apa saja yang harus didukung oleh
basis data tersebut. Setiap mission objective akan menjelaskan tugas tertentu
yang harus didukung oleh basis data, dengan asumsi jika basis data
mendukung mission objective,
maka mission statement
juga akan sesuai
(Connolly dan Begg, 2010, p315). 
2.1.6.2 Definisi Sistem
Menurut Connolly (2010, p316), pendefinisian sistem (system definition)
menggambarkan ruang lingkup dan batasan aplikasi basis data dan kebanyakan
pandangan pengguna (major user view). Hal ini sangat penting dilakukan dalam proses
perancangan basis data agar lebih terfokus pada proyek basis data yang dibuat.
  
18
2.1.6.3 Analisa dan Pengumpulan Kebutuhan
Menurut Connolly dan Begg (2010, p316), dalam tahap ini dilakukan proses
pengumpulan dan analisa informasi tentang bagian organisasi yang akan didukung oleh
aplikasi basis data, dan menggunakan informasi ini untuk mendefinisikan kebutuhan
pengguna terhadap sistem yang baru.
Menurut Connolly dan Begg (2010, p344), suatu proses resmi dalam
menggunakan teknik-teknik sepeti wawancara atau kuisioner untuk mengumpulkan
fakta-fakta tentang sistem dan kebutuhan-kebutuhannya dengan teknik fact-finding. Ada
lima kegiatan yang dipakai dalam teknik ini, yaitu :
a.
Pengkajian terhadap dokumentasi
Pengkajian terhadap dokumen seperti laporan, dokumen penting, faktur,
dan berbagai data yang berkaitan dengan sistem. Kajian tersebut akan sangat
berguna dalam menentukan kebutuhan dari basis data yang akan dibangun.
b.
Wawancara 
Digunakan untuk mengumpulkan informasi secara langsung melalui tatap
muka dengan individu yang berkaitan. Beberapa tujuan dari teknik ini adalah
mengumpulkan fakta-fakta, memeriksa kebenaran fakta yang ada dan
mengklarifikasinya, membangkitkan semangat, melibatkan pengguna
akhir,
mengidentifikasikan kebutuhan-kebutuhan, dan mengumpulkan ide-ide pendapat.
c.
Observasi 
Sangat berguna apabila kita menemukan kejanggalan analisa data dari
metode yang telah dilakukan sebelumnya dengan berpartisipasi secara langsung
untuk mendapatkan gambaran langsung dari sistem yang berjalan.
  
19
d.
Penelitian
Mencari referensi seperti jurnal, buku, dan melalui internet yang memiliki
pemecah atas masalah serupa dengan masalah yang sedang dihadapi.
e.
Kuisioner
Menyebarkan survey
melalui kusioner yang berisikan dokumen yang
telah dirangkum sedemikian rupa demi mendapatkan informasi dari sekumpulan
orang dalam skala besar. 
2.1.6.4
Database Design
Menurut Connolly dan Begg (2010, p320), Database Design
adalah proses
pembuatan design
untuk database
yang akan membantu operasional perusahaan dan
target tujuannya.
2.1.6.4.1 Pendekatan Database Design 
Pendekatan yang digunakan dalam merancang basis data adalah sebagai berikut :
Pendekatan Bottom-Up, bottom-up
dimulai dari level atribut pokok
bagian dari
entity
dan relasi melalui analisa persamaan antara entity.
Pendekatan ini digunakan untuk merancang
database
simple yang
memilikiatribut relatif kecil.
Pendekatan Top-Down, top-down
untuk mengidentifikasikan sebuah
kumpulan dari superclass dan hubunganya dengan subclassnya, dimana
kumpulan subclass dibasiskan pada beberapa perbedaaan karakteristik.
Pendekatan Inside-Out, inside-out memiliki kesamaan dengan pendekatan
bottom-up tetapi berbeda dengan identifikasi pertama dari entity utama,
  
20
lalu menyebarkan dan mempertimbangkan entity yang lain, relasi, dan
hubungan antara atribut pada pengidentifikasian pertama tersebut.
Pendekatan Mixed Strategy, mixed strategy
adalah pendekatan yang
menggunakan gabungan anatara bottom-up
dan top-down
untuk
memperoleh bagian variasi dari model sebelum menggabungkan setiap
bagian menjadi satu.
2.1.6.4.2  Data Modelling
Menurut Connoly dan Begg (2010, p322), sebuah model data membuat
kemudahan dalam memahami :
Setiap pandangan user mengenai data.
Sifat dasar dari data itu sendiri.
Penggunaan data melalui user view.
Kriteria dari model data adalah :
Structural validity
adalah ketetapan mengenai cara definisi perusahaan
dan informasi organisasi.
Simplicity
adalah mendorong pemahaman dengan profesional
Information System dan pengguna non-teknis.
Expressibility adalah kemampuan untuk membedakan antara perbedaan
data, relasi antara data, dan batasan.
Non-Redudancy
adalah pengeluaran terhadap informasi yang tidak
berhubungan. Umumnya, penampilan terhadap suatu bagian informasi
cukup satu kali.
  
21
Shareability
adalah tidak spesifik terhadap beberapa aplikasi atau
teknologi sehingga dapatdigunakan oleh banyak aplikasi atau teknologi.
Extensibility
adalah kemampuan untuk berkembang dalam membantu
kebutuhan yang baru dengan dampak sekecil mungkin dari pengguna.
Integrity adalah ketetapan dengan cara perusahaan menggunakan dan
mengelola informasi.
Diagrammatic representation adalah keahlian untuk menampilkan model
menggunakan notasi diagram yang mudah dimengerti.
2.1.6.4.3
Fase Database Design
Dalam merancang basis data dilakukan dengan tiga tahap, yaitu konseptual,
logikal, dan fisikal.
Perancangan Database Konseptual
Perancanagn database konseptual adalah proses membangun model
informasi yang digunakan di dalam perusahaan, bebas dari semua
pertimbangan fisikal. 
Perancangan Database Logikal
Perancangan database logikal adalah proses membangun model informasi
yang digunakan perusahaan berdasarkan dari beberapa model data yang
spesifik, tetapi bebas dari fakta DBMS dan pertimbangan fisikal lainnya.
  
22
Perancangan Database Fisikal
Perancangan database
fisikal adalah proses memproduksi sebuah
deskripsi mengenai implementasi dari simpanan kedua database
mendeskripsikan relasi dasar, organisasi file, dan index yang digunakan
untuk pengaksesan data yang efisien dan penggabungan beberapa batasan
dan sistem keamanan.
2.1.6.5
DBMS Selection
Menurut Connolly dan Begg (2010, p325), pemilihan DBMS
merupakan
pemilihan sebuah DBMs
yang
sesuai untuk mendukung sistem basis data. Pemilihan
DBMS sangatlah 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
biaya pembelian produk DBMS, berbagai software/hardware tambahan yang diperlukan
untuk mendukung sistem database, dan biaya yang berhubungan dengan perubahan dan
pelatihan staff.
Berikut adalah langkah-langkah untuk memilih DBMS yang baik:
1.
Menjelaskan istilah referensi pembelajaran.
2.
Mendaftarkan dua atau tiga produk.
3.
Mengevaluasi produk.
  
23
4.
Merekomendasikan pilihan dan membuat laporan.
2.1.6.6 Application Design 
Menurut Connolly dan Begg (2010, p329), Application Design adalah proses
merancang user interface
atau antarmuka pengguna dengan program aplikasi yang
menggunakan dan memproses database. Terdapat dua aspek dalam perancangan aplikasi
yaitu:
1)
Perancangan Transaksi
Tujuan utama dari perancangan transaksi adalah untuk menetapkan dan
mendokumentasikan karakterisitik tingkat tinggi dari transaksi yang
dibutuhkan pada database, meliputi:
1.
Data yang digunakan dalam transaksi.
2.
Karakteristik fungsional dari transaksi.
3.
Keluaran (output) dari transaksi.
4.
Kepentingan pengguna
5.
Rata-rata pengguna yang diharapkan
  
24
Ada tiga tipe transaksi:
1.
Retrival transaction
digunakan untuk mengambil
data untuk ditampilkan di layar atau untuk
pembuatan laporan.
2.
Update transaction digunakan untuk memasukkan
data baru, menghapus data lama, atau
memodifikasi data yang ada pada database.
3.
Mixed transaction campuran yang melibatkan
pengambilan data dan pembaharuan data
(penggabungan antara retrieval transaction
dan
update transaction). Contohnya, operasi mencari
dan menampilkan detail sebuah property (diberikan
nilai property) dan kemudian mengupdate nilai
sewa bulanan.
2)
Perancangan User Interface
Menurut Connolly dan
Begg (2010, p331), terdapat beberapa langkah
dalam membuat rancangan anatarmuka yang baik bagi aplikasi yaitu:
1.
Judul yang berarti.
2.
Instruksi yang konprehensif.
3.
Pengelompokan logikal dan urutan fields.
  
25
4.
Rancangan laporan.
5.
Label field yang dikenal.
6.
Singkatan dan istilah yang konsisten.
7.
Penggunaan warna yang konsisten.
8.
Batasan dan ruang yang terlihat bagi field data-entry.
9.
Pergerakan kursor yang baik.
10.
Perbaikan kesalahan bagi karakter individu dan keseluruhan field.
11.
Pesan kesalahan bagi nilai yang tidak sesuai.
12.
Penandaan field optional yang jelas.
13.
Pesan penjelasan bagi field.
14.
Sinyal penyelesaian.
2.1.6.7 Prototyping
Langkah ini mengizinkan perancang dan user
untuk memvisualisasikan dan
mengetahui gambaran sistem secara menyeluruh. Seperti yang kita ketahui, tujuan utama
dalam mengembangkan suatu aplikasi basis data prototype adalah untuk mengizinkan
para pemakai untuk menggunakan prototype,
sehingga pemakai dapat
mengidentifikasikan fitus sistem, apakah sistem sudah bekerja dengan baik atau belum.
Jika memungkinkan, pemakai dapat memberikan saran untuk mengadakan perbaikan
  
26
atau bahkan fitur baru dalam aplikasi basis data tersebut. Keuntungan prototype adalah
relative murah dan proses pembuatannya yang cepat.
Terdapat dua macam strategi prototyping yang digunakan saat ini, yaitu:
Requirements Prototyping, menggunakan prototype untuk
menentukan kebutuhan dari usulan sistem basis data yang
diinginkan dan ketika kebutuhan itu terpenuhi maka prototype
akan dibuang.
Evolutionary Prototyping
digunakan untuk tujuan yang sama.
Perbedaannya, prototype tidak dibuang tetapi dengan
pengembangan lanjutan menjadi aplikasi basis data yang
digunakan.
2.1.6.8 Implementasi
  Dalam tahap ini kita menggunakan Data Definition Language
(DDL) dari
pemilihan DBMS atau sebuah graphical user interface (GUI), yang menyediakan fungsi
sama ketika menyembunyikan low-level pernyataan DDL. DDL statement (pernyataan
DDL) digunakan untukmembuat struktur basis data dan file basis data yang kosong. Dari
user view, security
(keamanan), dan control intergritas untuk aplikasi juga
diimplementasikan pada tahap ini. Dapat disampaikan bahwa tahap implementasi adalah
membuat definisi basis data eksternal konseptual, dan internal dan program aplikasinya.
  
27
2.1.6.9 Data Conversion dan Loading
Memindahkan data dari sistem yang lama ke sistem yang baru. Langkah ini
dibutuhkan hanya pada waktu sistem basis data yang lama digantikan dengan sistem
basis data yang baru. Suatu DBMS mempunyai kegunaan memasukkan file ke dalam
basis data yang baru dan kemudian secara otomatis mengubah data ke dalam format
yang diperlukan oleh file basis data yang baru. Jika bisa diterapkan, pengembang dapat
mengubah dan menggunakan program aplikasi dari sistem yang lama untuk digunakan
oleh sistem yang baru.
2.1.6.10 Testing
Proses  menjalankan program aplikasi dengan bertujuan menemukan kesalahan.
Sebelum program digunakan, kita harus melakukan tes. Untuk mencapai tes yang
sempurna, digunakan strategi dan data yang realistis, jadi seluruh proses testing
dilakukan secara metodis dan ketat. 
2.1.6.11 Operational Maintenance
Sebuah aplikasi basis data diimplementasikan, tentunya sistem ini akan terus
dimonitor dan diperlihara.
Memonitor daya guna (performance) sistem. Jika daya guna
berkurang dibawah level yang sudah ditetapkan, maka perlu
dilakukan mengorganisasi basis data.
Merawat dan mengubah (menambahkan) aplikasi basis data pada
saat dibutuhkan. Apabila ada kebutuhan baru maka harus
  
28
dimasukan kedalam aplikasi basis data melalui tahapan-tahapan
proses yang ada dalam siklus hidup.
2.1.7 Entity-Relationship Modelling (E-R Modelling)
Menurut Connolly dan Begg (2010, p371), Model Entity Relationship merupakan
salah satu model yang dapat memastikan pemahaman yang tepat terhadap data dan
bagaimana penggunaannya di dalam suatu organisasi. Model ini dimulai dengan
identifikasi entitas dan relationship antar data yang harus direpresentasikan di dalam
model, dan kemudian ditambahkan atribut dan setiap constraint
pada entitas,
relationship, dan atributnya.
2.1.7.1 Tipe Entitas
Menurut Connolly dan Begg (2010, p372), tipe entitas adalah sekumpulan objek
yang memiliki properti yang sama, yang diidentifikasikan di dalam organisasi karena
keberadaannya yang bebas (independent existence). Sedangkan entity occurrence adalah
sebuah objek dari satu tipe entitas yang dapat diidentifikasikan secara unik (Connolly,
2010, p373). Keberadaan objek-objeknya secara fisik/nyata (physical existence), seperti
entitas Pegawai, Rumah, dan Pelanggan, atau secara konseptual/abstrak (conceptual
existence),seperti Inspeksi, Penjualan, dan Peninjauan.
Setiap tipe entitas dilambangkan dengan sebuah persegi panjang yang diberi
nama dari entitas tersebut. Nama tipe entitas biasanya adalah kata benda tunggal. Huruf
pertama dari setiap kata pada nama tipe entitas ditulis dengan huruf besar. Representasi
diagram tipe entitas terlihat pada gambar 2.2 (Connolly dan Begg, 2010, p384).
  
29
Gambar 2.2 Diagram Entitas Kuat dan Entitas Lemah (Connolly dan Begg,
2010, p384)
Dari Gambar 2.2 tipe entitas dapat diklasifikasikan menjadi :
Tipe Entitas Kuat (Strong Entity), yaitu tipe entitas yang keberadaannya tidak
bergantung pada tipe entitas lainnya (Connolly, 2010, p383)
Tipe Entitas Lemah (Weak Entity), yaitu tipe entitas yang keberadaannya
bergantung pada tipe entitas lainnya (Connolly, 2010, p383)
2.1.7.2 Tipe Relationship
Tipe relationship adalah sekumpulan hubungan antartipe entitas yang memiliki
arti (Connolly, 2010, p374). Sedangkan relationship occurrence adalah sebuah
Entitas Lemah
Entitas Kuat
Client
clientNO {PK}
name
fName
lName
telNo
eMail
Preference
prefType
maxRent
  
30
hubungan yang dapat diidentifikasikan secara unik, yang meliputi sebuah kejadian
(occurrence) dari setiap tipe entitas yang berpartisipasi (Connolly, 2010, p375).
Tipe relationship digambarkan dengan sebuah garis yang menghubungkan tipe-
tipe entitas yang saling berhubungan. Garis tersebut diberi nama sesuai dengan nama
hubungannya dan diberi tanda panah satu arah di samping nama hubungannya.
Biasanya sebuah
relationship
dinamakan dengan menggunakan kata kerja,
seperti Memilih, atau dengan sebuah frase singkat yang meliputi sebuah kata kerja,
seperti DipilihOleh. Sedangkan tanda panah ditempatkan disamping nama relationship
yang mengindikasikan arah bagi pembaca untuk mengartikan nama dari suatu
relationship. Huruf pertama dari setiap kata pada nama relationship ditulis dengan huruf
besar. Representasi diagram dari suatu relationship terlihat pada gambar 2.3 (Connolly
dan Begg, 2010, p377).
«
Staff meregister client di branch »
Gambar 2.3 Diagram Representasi Suatu Relationship (Connolly dan Begg, 2010,
p377)
Staff
Branch
Registers
Client
  
31
2.1.7.3 Attributes
Menurut Connolly dan Begg (2010, p379), atribut adalah property dari entitas
atau tipe relasi. Attributes domain merupakan sekumpulan nilai yang diperbolehkan bagi
satu atau lebih atribut.
«
Koran mengiklankan sewa rumah »
Gambar 2.4 Contoh Dari Attribute Domain
Menurut Connolly dan Begg (2010, p379), macam-macam atribut yaitu:
1)
Simple and composite attribute
 
Simple attribute
adalah atribut yang terdiri dari satu komponen
tunggal yang independent
dan tidak dapat dibagi menjadi bagian yang
lebih kecil lagi, contohnya seperti, jenis kelamin dan gaji.
Koran
namaKoran
SewaRumah
NomorSewaRumah
Tanggaliklanbiaya
  
32
 
Sedangkan composite attribute
adalah atribut yang terdiri dari
beberapa komponen, dimana masing-masing komponen memiliki
keberadaan yang independent, contohnya alamat dapat bercabang menjadi
namaJalan, namaKota, KodePos.
2)
Single-valued and multi-valued attribute
Single-valued attribute adalah atribut yang memiliki nilai tunggal
untuk setiap kejadian. Sedangkan multi-valued attribute adalah atribut yang
memiliki beberapa nilai untuk setiap kejadian.
3)
Derivied attribute
Derivied attribute
adalah atribut yang memiliki nilai yang
dihasilkan dari satu atau beberapa atribut lainnya, dan tidak harus berasal
dari satu entitas.
4)
Keys
Menurut Connolly dan Begg (2010, p381), ada tiga jenis kunci yaitu:
a) 
Candidate Key adalah minimal atribut-atribut yang secara unik
    
mengidentifikasikan setiap kejadian dari tipe entitas.
b)
Primary Key
adalah kunci kandidat yang dipilih untuk
mengidentifikasikan setiap kejadian dari suatu tipe entitas secara
unik. 
c)
Composite Key adalah kunci kandidat yang terdiri dari dua atribut
atau lebih
  
33
2.1.7.4 Structural Constraints
Menurut Connolly dan
Begg (2010, p385), Structural Constraints
berisikan
pembatasan (restriction) dari relasi entitas di “dunia nyata”. Tipe utama dari constraints
di dalam relationship disebut multiplicity.
Multiplicity adalah jumlah (jangkauan) dari kemungkinan kehadiran tunggal dari
suatu entity yang berasosiasi melalui relationship tertentu. Multiplicity menentukan cara
entity dihubungkan, yang merupakan representasi dari aturan bisnis yang ditetapkan oleh
user di dalam perusahaan.
Relasi umum adalah binary relationship. Macam-macam binary relationship
yaitu:
a)
One to one (1:1)
Gambar 2.5 Relationship one to one
?
?
?
?
?
?
?
  
34
Gambar 2.6 Contoh dari Relationship one to one
Berdasarkan hubungan manager, dimana hubungan staff dengan cabang.
Berdasarkan gambar diatas kita dapat melihat bahwa tipe hubungannya menggunakan
sebuah semantic net dimana setiap hubungan menghubungkan cabang dengan setiap
staff.
b) 
One to many (1:*)
Gambar 2.7 Relationship one to many
?
?
?
?
?
?
?
?
?
  
35
Gambar 2.8 Contoh dari relationship one to many
Hubungan ini didasarkan seperti hubungan antara staff dengan properti yang
akan disewakan. Dimana satu staff bisa saja menyewakan beberapa properti sekaligus.
c)
Many to many (*:*)
Gambar 2.9 Relationship many to many
?
?
?
?
?
?
?
?
?
?
?
  
36
Gambar 2.10 Contoh relationship many to many
Sama halnya dengan hubungan iklan dengan surat kabar. Dimana setiap surat
kabar akan memuat minimal satu iklan atau lebih di dalamnya dan sebaliknya iklan
tersebut juga di tampilkan di minimal satu surat kabar atau lebih. 
d)
Multiplicity ()
Menurut Connolly and Begg (2010, p390), multiplicity dibentuk dari dua
macam buatan pada relationship, yaitu:
a)
Cardinality
yaitu batasan yang menjelaskan jumlah maksimum dari
kejadian relasi yang mungkin untuk entitas yang berpartisipasi di dalam
relasi tersebut.
b)
Participation yaitu batasan yang menetapkan apakah seluruh atau hanya
sebagian entitas yang berpartisipasi dalam suatu relasi.
  
37
2.1.8 Metodologi Perancangan Basisdata
Menurut Connolly and Begg (2010, p466), metodologi perancangan basis data
merupakan pendekatan terstruktur yang menggunakan bantuan prosedur, teknik, tools,
dan dokumentasi untuk mendukung dan memfasilitasi proses perancangan basis data.
Metodologi perancangan basis data terbagi atas tiga tahap perancangan yaitu
perancangan konseptual, perancangan logikal, dan perancangan fisikal.
2.1.8.1 Perancangan Konseptual
Menurut Connolly and Begg (2010, p467), perancangan konseptual merupakan
proses membangun model data yang digunakan oleh suatu perusahaan, bebas dari segala
pertimbangan.
Menurut Connolly and Begg (2010, p471-p485), langkah-langkah dalam
membangun model data konseptual yaitu:
Langkah 1 Membangun Model Data Konseptual
Langkah 1.1 Identifikasi entitas
Langkah pertama dalam membangun model data konseptual lokal adalah
menentukan objek-objek utama atau mengidentifikasikan entitas-entitas yang
diperlukan pengguna.
Langkah 1.2 Identifikasi hubungan (relationship)
Mengidentifikasi hubungan-hubungan (relationship) yang penting antara entitas-
entitas yang ditemukan pada tahap sebelumnya. Entity-relationship Modelling
digunakan untuk menggambarkan entitas dan hubungannya. Dalam tahap ini juga
  
38
ditentukan batasan multiplicity dari relationship tersebut dan pengecekan adanya
fan atau chasm traps dalam model tersebut. Setelah itu dilakukan dokumentasi
relationship.
a.
Fan Traps terjadi dimana model yang merepresentasikan suatu hubungan
antar entitas, tetapi alur relasinya memperlihatkan ambiguitas.
b.
Chasm Traps
terjadi dimana model menggambarkan keadaan dari
hubungan antara entitas yang satu dengan yang lainnya, tetapi tidak ada
hubungan antara kedua emitas yang utama.
Langkah 1.3 Identifikasi dan hubungkan atribut-atribut dengan entitas atau
hubungan (relationship)
Menghubungkan atribut-atribut dengan entitas atau relationship yang tepat.
Mengidentifikasikan simple/composite attributes, single valued/multi-valued
attributes, dan derivied attributes.
Langkah 1.4 Menentukan wilayah atribut
Menentukan wilayah atribut dalam model konseptual. Yang dimaksud wilayah
adalah sekumpulan nilai-nilai dimana suatu atribut menggambarkan nilainya.
Contoh nilai yang mungkin untuk atribut Jenis Kelamin dari entitas Karyawan
adalah ‘M’ atau ‘F’, wilayah dari atribut ini adalah single character string yang
berisi nilai ‘M’ atau ‘F’. Setelah itu, dilakukan dokumentasi domain atribut.
  
39
Langkah 1.5 Menentukan atribut candidate, primary, dan alternate key
Mengidentifikasi candidate key untuk tiap-tiap entitas dan jika ada lebih dari
suatu candidate key, pilih salah satu untuk menjadi primary key
dan lainnya
menjadi alternate key.
Langkah 1.6 Mempertimbangkan penggunaan Enchanced Modelling
Concept  (langkah opsional)
Mempertimbangkan penggunaan konsep permodelan, seperti
specialization/generalization, aggregation dan composition
a.
Specialization, adalah proses memaksimalkan perbedaan antara anggota
entitas dengan mengidentifikasi karakteristik yang membedakan seluruh
entitas.
b.
Generalization, adalah proses  meminimalkan perbedaan antara entitas
dengan mengidentifikasi karakteristik yang sama dari masing-masing
entitas.
c.
Aggregation,
adalah mempresentasikan hubungan ‘has-a’ atau ‘is-part-
of’ antara tipe-tipe entitas, dimana salah satu adalah sebagai ‘whole’ dan
yang lainnya sebagai ‘part’.
Langkah 1.7 Memeriksa model akan adanya redudansi
Memeriksa keberadaan redudansi dalam model. Dilakukan pemeriksaan secara
spesifik terhadap hubungan one-to-one
(1:1), menghilangkan hubungan
(relationship)
yang redundan, dan mempertimbangkan penggunaan dimensi
waktu.
  
40
Langkah 1.8 Validasi model konseptual terhadap transaksi pengguna
Memastikan bahwa konseptual data telah mendukung transaksi yang dibutuhkan.
Dapat dilakukan dua cara yaitu:
a.  Mendeskripsikan transaksi secara detail, dengan pendekatan ini berarti
akan diperiksa semua informasi (entitas, relationship, dan atribut) yang
dibutuhkan oleh setiap transaksi apakah telah disediakan dalam model,
dengan mendokumentasikan setiap kebutuhan transaksi.
b. Menggunakan jalur transaksi (transaction pathways), pendekatan ini
untuk validasi model atau data terhadap transaksi yang dibutuhkan
termasuk representasi diagram jalur yang digunakan oleh setiap
transaksi langsung pada diagaram ER.
Langkah 1.9 Review model data konseptual dengan pengguna
Memeriksa model data konseptual dengan pengguna sistem untuk  memastikan
bahwa model data tersebut secara tepat menggambarkan transaksi dan kebutuhan
data secara nyata dalam perusahaan.
2.1.8.2 Perancangan Logikal
Menurut Connolly and Begg (2010, p467), perancangan logikal merupakan
proses membangun model data yang digunakan oleh suatu
perusahaan berdasarkan
model data spesifik, namun bebas dari penggunaan DBMS dan segala pertimbangan
fisik.
Menurut Connolly and Begg (2010, p490-p518), langkah-langkah dalam
membangun model data logikal yaitu:
  
41
Langkah 2 Membangun Model Data Logikal 
Langkah 2.1 Menurunkan relasi untuk model data logikal
Membuat relasi dari model data konseptual untuk mempresentasikan entitas,
relationship, dan atribut-atribut yang telah teridentifikasi. Tabel dibawah ini
menunjukkan bagaimana memetakan entitas, hubungan (relationship) dan atribut
sebuah relasi. Dokumentasikan relasi dan atribut foreign key. Dan juga
dokumentasikan primary key atau alternate key baru yang muncul dari hasil
proses penurunan relasi.
Tabel 2.1 Pemetaan Entitas, Relationship, dan Atribut Sebuah Relasi
Entitas relationship/ atribut
Pemetaan relasi
Strong entity
Membuat relasi yang menyertakan
semua atribut simple
Weak entity
Membuat relasi yang menyertakan
semua atribut simple (primary key
masih harus ditentukan setelah
relasi dengan tiap-tiap owner entity
yang telah dipetakan)
1:* (one to many) binary
relationship
Menyertakan primary key entitas
pada sisi ‘one’ sebagai foreign key
pada relasi yang menggambarkan
entitas ‘many’ juga disertakan pada
entitas ‘many’
  
42
1:1 (one to one) binary relationship
a) Kewajiban partisipasi di dua sisi
b) Kewajiban partisipasi di satu sisi
c) Pilihan partisipasi di dua sisi
Mengkombinasikan entitas-entitas
menjadi satu relasi.
Menyertakan primary key
entitas
pada sisi ‘optional’
pada relasi
yang menggambarkan entitas pada
sisi ‘mandatory’.
Berubah-ubah tergantung informasi
lebih lanjut mengenai partisipasi
entitas
Superclass/Subclass relationship
Lihat tabel 2.2
*
:* (many to many) binary
relationship, complex relationship
Membuat relasi untuk
menggambarkan relationship
tersebut. Sertakan duplikat primary
key dari masing-masing owner
entitas ke dalam relasi baru untuk
berperan sebagai foreign key
Multi-valued attribute
Membuat relasi untuk
menggambarkan atribut multi-
valued dan menyertakan duplikat
primary key
dari masing-masing
owner entitas kedalam relasi baru
untuk berperan sebagai foreign key
  
43
Tabel 2.2 Representasi Dari Superclass/valueclass Relationship
Berdasarkan Pada Partisipasi dan Disjoint Constraints
Batasan Partisipasi
Disjoint constraint
Pemetaan Relasi
Mandatory 
Nondisjoint{And}
Relasi tunggal (dengan satu
atau lebih diskriminator
untuk membedakan tipe
relasi)
Optional
Nondisjoint{And}
Dua relasi: satu relasi untuk
superclass (dengan satu atau
lebih) subclass (dengan satu
atau lebih diskriminatif
untuk membedakan tipe
relasi)
Mandatory
Disjoint{or}
Banyak relasi: satu relasi
untuk tiap-tiap kombinasi
Superclass/subclass
Optional 
Disjoint{or}
Banyak relasi: satu relasi
untuk superclass dan satu
untuk tiap subclass
  
44
Langkah 2.2 Validasi relasi menggunakan normalisasi
Validasi relasi pada model data logikal menggunakan teknik normalisasi. Tujuan
langkah ini adalah untuk memastikan tiap-tiap relasi setidaknya beradadalam
3NF (Third Normal Form).
Langkah 2.3 Validasi relasi terhadap transaksi pengguna
Memastikan bahwa relasi yang ada dalam model data logikal telah mendukung
transaksi-transaksi yang diperlukan.
Langkah 2.4 Memeriksa batasan-batasan intergritas (integrity constraints)
Menentukan batasan-batasan integritas (integrity constraints), dimana mencakup
pemeriksaan lengkap :
a.
Data yang dibutuhkan
Beberapa atribut harus mempunyai nilai yang valid,
atau dengan kata lain tidak boleh null.
b.
Batasan domain atribut
Setiap atribut mempunyai domain, yaitu kumpulan dari
nilai-nilai yang memenuhi persyaratan.
c.
Multiplicity
Merupakan batasan jumlah yang ditempatkan pada
hubungan antar data di dalam basis data.
d.
Integritas entitas (entity integrity)
Primary key dari sebuah identitas tidak boleh bernilai
null.
  
45
e.
Referential integrity
Sebuah foreign key menghubungkan setiap tuple pada
relasi chils ke tuple pada relasi parent candidate key
yang merupakan nilai yang sama.
f.
Batasan umum (general constraint)
Batasan yang berasal dari persyaratan-persyaratan
bisnis perusahaan. Kemudian dokumentasi semua
batasan-batasan integritas (integrity constraint).
Langkah 2.5 Review model data logikal dengan pengguna
Review model data logikal dengan pengguna untuk memastikan bahwa pengguna
menyetujui model data logikal merupakan reprensentasi nyata terhadap
persyaratan data perusahaan.
Langkah 2.6
Gabungan model data logikal menjadi model data global
(optional)
Metodologi perancangan logikal memudahkan perancangan basis data yang
sederhana maupun basis data kompleks. Untuk membuat basis data dengan
multiple user view, digunakan pendekatan integrasi view. Pada tahap ini, model
data-model data ini digabungkan menjadi satu. Kegiatan-kegiatan yang biasanya
dilaksanakan dalam langkah ini antara lain :
a.
Review nama dan isi entitas/relasi dan candidate keys mereka.
b.
Review nama dan isi dari relationship/foreign keys.
c.
Menggabungkan entiras/relasi dari model data lokal.
  
46
d.
Menyertakan (tanpa menggabungkan) entitas/relasi yang untuk dari
masing-masing model data lokal.
e.
menggabungkan relationship/foreign keys dari model data lokal.
f.
Menyertakan (tanpa menggabungkan) relationship/foreign keys yang unik
dari masing-masing model data lokal.
g.
Memeriksa adanya entitas/relasi dan relationship/foreign keys
yang
hilang.
h.
Memeriksa foreign keys.
i.
Memeriksa batasan integritas (integrity constraint).
j.
Menggambarkan diagram ER global.
k.
Update dokumentasi.
Langkah 2.7 Memeriksa perkembangan dimasa yang akan datang
Menentukan apakah akan ada perubahan penting yang mungkin dapat muncul
terjadi dimasa yang akan datang dan untuk menilai apakah model data logikal
dapat menyesuaikan diri dengan perubahan tersebut.
2.1.8.3  Perancangan Fisikal
Menurut Connolly dan Begg (2010, p467), perancangan fisikal basis data
merupakan proses menghasilkan deskripsi basis data pada secondary storage. Deskripsi
yang menghasilkan meliputi relasi utama, organisasi file,
dan index
yang digunakan
untuk mencapai akses yang efisien terhadap data, dan segala batasan integritas dan
aturan keamanan yang digunakan.
  
47
Menurut Connolly dan Begg (2010, p525-p528), langkah-langkah dalam
membangun model data fisikal yaitu :
Langkah 3 Menerjemahkan Model Data Logikal untuk DBMS yang Ditargetkan
Langkah 3.1 Merancang relasi dasar
Menentukan bagaimana representasi relasi dasar yang telah diidentifikasi pada
model data logikal global, agar dapat diimplementasikan pada DBMS tujuan.
Informasi yang dibutuhkan dapat diperoleh dari kamus data dan definisi dari
relasi dideskripsikan menggunakan database design language (DBDL).
Langkah 3.2 Merancang representasi derived data
Menentukan bagaimana representasi data turunan yang ada pada model data
logikal global, agar dapat diimplementasikan pada DBMS tujuan. Atribut yang
mana nilainya didapatkan dari mengkaji nilai atribut lain dinamakan derives atau
calculated attributes. Contohnya jumlah karyawan yang bekerja pada suatu
cabang perusahaan atau total gaji semua karyawan. Untuk setiap derives attribute
yang ada. Tanda “i” digunakan untuk menandakan atribut tersebut adalah derives
attribute.
Langkah 3.3 Merancang batasan-batasan umum (general constraint)
Merancang batasan-batasan umum untuk DBMS yang akan digunakan.
  
48
Langkah 3.4 Merancang organisasi data dan indeks
Menentukan organisasi file yang optimal untuk menyimpan hubungan dasar dan
indeks yang diperlukan untuk mencapai kinerja agar dapat diterima. Itu adalah
cara di mana hubungan dan tupel akan dioperasikan pada penyimpanan sekunder.
Langkah 4 (Connolly dan Begg, 2010, p529-p541)
Langkah 4.1 Menganalisa transaksi
Memahami fungsionalitas transaksi yang dijalankan pada basis data dan
menganalisa transaksi-transaksi yang penting.
Langkah 4.2 Memilih organisasi file
Tujuan langkah ini adalah menentukan organisasi file yang efisien untuk tiap-tiap
relasi dasar jika diperoleh DBMS yang akan digunakan.
 
Langkah 4.3 Memilih organisasi index
Tujuan langkah ini untuk menentukan apakah kegunaan index akan
meningkatkan kinerja sistem. Ada tiga jenis index yaitu :
a)
Primary index, pengindexan dilakukan pada kolom kunci (key field), yang
diurutkan terlebih dahulu secara sekuensial (Connolly dan Begg, 2010,
p535).
b)
Clustering index, pengindeksan dilakukan pada kolom bukan kunci (non-
key field), yang sudah diurutkan terlebih dahulu secara sekuensial. Kolom
bukan kunci itu disebut juga dengan clustering attribute (Connolly dan
Begg, 2010, p535).
  
49
c)
Secondary index, pengindeksan dilakukan pada kolom yang tidak terurut
didalam file data (Connolly dan Begg, 2010, p536).
Langkah 4.4 Memperkirakan kebutuhan kapasitas disk
Memperkirakan besarnya ruang
disk
(disk space) yang dibutuhkan untuk
mendukung implementasi basis data. Estimasi pemakaian disk tergantung pada
DBMS dan perangkat keras yang digunakan untuk mendukung basis data.
Perkiraan ukuran dapat dilakukan dengan mengukur besar data tiap baris dan
jumlah baris pada setiap relasi.
Langkah 5 Merancang View Pengguna
Merancang view
pengguna yang telah diidentifikasi selama tahap pengumpulan
kebutuhan dan tahap analisa pada Daur Hidup Pengembangan Sistem Basis data
Relasional (System Development Lifecycle).
Langkah 6 Merancang Mekanisme Keamanan
Merancang mekanisme keamanan untuk sistem basis data, sesuai yang dibutuhkan
pengguna, ada dua macam keamanan sistem mencakup akses dan penggunaan basis data
pada level sistem seperti username dan password.
Keamanan bagi sistem basis data
sangat diperlukan karena basis data merupakan sumber daya perusahaan yang penting.
  
50
2.1.9 Normalisasi
Menurut Connolly dan Begg (2010, p416), normalisasi adalah sebuah teknik
untuk menghasilkan sebuah kumpulan dari relasi-relasi dengan atribut-atribut yang
diinginkan, yang berdasarkan kebutuhan-kebutuhan data sebuah perusahaan.
2.1.9.1 Tujuan Normalisasi
Tujuan normalisasi yaitu untuk meminimalisasikan adanya redudancy.
Jika dapat
tercapai, keuntungan potensial yang dapat diimplentasikan dalam database termasuk :
Mengupdate data store
dalam database yang dapat diterima dengan sebuah
minimal operasi.
Pengurangan dalam penyimpanan file
yang kosong dari relasi dasar yang
meminimalisasi biaya.
2.1.9.2 Proses Normalisasi
Tahapan normalisasi menurut Connolly dan Begg (2010, p430), adalah sebagai berikut:
1. Unnormalized Form (UNF)
Sebuah table yang berisi satu atau lebih grup yang berulang. Yang
dimaksud berulang itu adalah atribut-atribut yang multivalued.
2. First Normal Form (INF)
Sebuah relasi dimana setiap baris dan kolom hanya berisi satu nilai saja.
Bentuk normal pertama ini, dicapai apabila setiap nilai atribut adalah tunggal.
Kondisi ini dapat diperoleh dengan melakukan eliminasi terhadap terjadinya
  
51
data ganda (repeating groups). Pada kondisi normal pertama ini
memungkinkan masih terjadinya data rangkap.
3.
Second Normal Form (2NF)
Suatu relasi yang terdapat dalam 1NF dan setiap atribut yang bukan
merupakan primary key bergantung sepenuhnya secara fungsional terhadap
primary key.
4. Third Normal Form (3NF)
Sebuah relasi dalam bentuk normal pertama dan kedua serta setiap atribut
bukan key yang bergantung secara transitif kepada bukan key
juga. Bentuk
normal ketiga adalah berdasarkan pada konsep peralihan ketergantungan
(transitive dependency).
5. Boyce-Codd Normal Form (BCNF)
Sebuah relasi dimana dalam setiap determinan adalah sebuah candidate key.
2.2 Tools yang Digunakan
2.2.1 Diagram Aliran Dokumen (DAD)
Diagram aliran dokumen adalah simbol-simbol standar yang digunakan oleh
bagian analisa sistem untuk membuat diagram aliran dokumen yang menggambarkan
sistem tertentu (Mulyadi, 1993, p60). Sebenarnya, banyak cara untuk mengembangkan
diagram aliran dokumen suatu sistem, namun diagram aliran dokumen merupakan suatu
alat yang digunakan secara luas untuk menggambarkan aliran dokumen suatu sistem.
Adapun simbol yang digunakan di dalam diagram aliran dokumen yaitu :
  
52
1.
Simbol Proses
Menunjukan kegiatan proses dari operasi program komputer.
2.
Simbol Dokumen
Menunjukan dokumen masukan dan keluaran, baik untuk proses manual,
mekanik, atau komputer.
3.
Simbol Kegiatan Manual
Menunjukan kegiatan manual.
4.
Simbol Penghubung
Menunjuakan penghubung ke halaman yang sama dan ke halaman yang lain.
  
53
5.
Simbol Catatan
Menunjukan catatan data yang direkam sebelumnya di dalam dokumen.
6.
Simbol Garis Alur
Menunjukan arus pada proses.
7.
Simbol Terminal
Menunjukan sumber atau tujuan dari dokumen.
8.
Simbol Percabangan
Simbol ini digunakan untuk melambangkan percabangan, yaitu pemeriksaan
terhadap suatu kondisi.
  
54
9.
Arsip Sementara
Arsip sementara merupakan tempat penyimpanan dokumen yang dokumennya
akan diambil kembali dari arsip tersebut dimasa akan datang untuk keperluan
pengolahan lebih lanjut terhadap dokumen tersebut. Untuk mewujudkan urutan
pengarsipan dokumen digunakan simbol berikut ini :
A = menurut abjad
T = menurut tanggal
N = menurut nomor urut
2.2.2  State Transition Diagram
State Transition Digram adalah suatu diagram yang menggambarkan bagaimana
suatu proses dihubungkan satu sama lain dalam waktu yang bersamaan. State
Transaction Diagram digambarkan dengan sebuah state
yang merupakan komponen
sistem yang menunjukan bagaimana kejadian-kejadian tersebut dari satu state ke state
lain (Jeffrey A et al, 1996, p364).
State Transition Diagram
adalah sebuah perlengkapan yang digunakan untuk
menggambarkan urutan dan variasi dari layar yang terjadi menurut sesi pengguna
(Whitten, Bentley, dan Dittman, 2004, p673).
Ada dua macam simbol yang digunakan untuk menggambarkan proses dalam
State Transition Diagram, yaitu :
  
55
1.
Gambar persegi panjang yang menunjukan state dari sistem.
Gambar 2.11 Simbol State dalam STD
2.
Gambar panah menunjukan transisi antar state. Tiap panah diberi label dengan
ekspresi aturan. Label yang diatas menunjukan kejadian yang menyebabkan
transisi yang terjadi. Label yang dibawah menunjukan aksi yang terjadi akibat
kejadian tadi.
Gambar 2.12 Simbol Transisi dalam STD
2.2.3 
Data Flow Diagram (DFD)
Menurut Whitten et al (2004, p326), Data Flow Diagram adalah sebuah model
proses yang digunakan untuk menggambarkan aliran data melalui sebuah sistem dan
tugas atau pengelolaan yang dilakukan oleh sistem.
2.2.3.1 Diagram Konteks
Diagram konteks adalah diagram yang terdiri dari suatu proses dan
menggambarkan ruang lingkup suatu sistem. Diagram konteks merupakan level tertinggi
dari DFD yang menggambarkan seluruh input ke sistem atau output dari sistem.
  
56
Diagram konteks berisi gambaran umum (secara garis besar) sistem yang akan
dibuat. Secara kalimat, dapat dikatakan bahwa diagram konteks ini berisi “siapa saja
yang memberi data (dan data apa saja) ke sistem, serta kepada siapa saja informasi (dan
informasi apa saja) yang harus dihasilkan sistem.”
Simbol dalam konteks diagram antara lain:
1.
Terminator, dilambangkan dengan persegi. Pihak-pihak yang berada diluar
sistem, tetapi secara langsung berhubungan dengan sistem dalam hal memberi
data atau menerima informasi.
2.
Proses, dilambangkan dengan lingkaran yang berisi mengenai sistem yang akan
dibuat.
3.
Data flow,
dilambangkan dengan panah yang berisi data atau informasi yang
mengalir dari satu pihak ke sistem dan sebaliknya.
data flow
Terminator
Proses
  
57
2.2.3.2 Diagram Nol
Diagarm nol merupakan hasil pengembangan dari Context Diagram ke dalam
komponen yang lebih detail tersebut disebut dengan top-down partitioning.
Setiap penurunan ke level yang
lebih rendah harus mampu merepresentasikan
proses tersebut dalam sepesifikasi proses yang jelas. Sehingga  seandainya belum cukup
jelas  maka seharusnya diturunkan ke level yang lebih rendah.
2.2.4 
Entity Relationship Diagram (ERD)
Menurut Whitten (2007, p381), ERD adalah model data yang menggunakan
beberapa notasi untuk menggambarkan data dalam konteks entitas dan hubungan yang
dideskripsikan oleh data tersebut.
Menurut Connolly dan Begg (2010, p371-395), Entity Relationship Diagram
digunakan untuk menggambarkan struktur logical database dalam bentuk diagram ERD,
serta menyediakan cara yang sederhana dan mudah untuk memahami bagian berbagai
komponen dalam database design.
ERD memiliki 3 komponen yaitu :
1.
Entity
Entity
adalah benda yang memiliki identifikasi yang berbeda. Entity
dapat
digambarkan sebagai persegi yang berisi nama dari entity tersebut.
  
58
2.
Relationship
Relationship adalah hubungan antara entity. Entity merupakan pengikut dari
relationship. Relationship
dapat digambarkan dalam bentuk belah ketupat
yang mana berisi nama dari relasi tersebut.
Relationship dapat berupa hubungan one-to-one, one-to-many, atau many-to-
many.
a.
Hubungan one-to-one (1 atau 1...1)
Gambar 2.13 Entity relationship one-to-one
Hubungan dimana setiap
entity
yang ada hanya dapat mempunyai
maksimal satu hubungan dengan entity yang lain.
  
59
b.
Hubungan one-to-many (1...*)
Gambar 2.14 Entity relationship one-to-many
Hubungan dimana setiap entity yang dapat mempunyai satu atau lebih
dari satu hubungan dengan entity yang lain.
c.
Hubungan many-to-many (*...*)
Gambar 2.15 Entity relationship many-to-many
Hubungan dimana setiap
entity dapat mempunyai lebih dari satu relasi
dengan entity lainnya.
3.
Property atau atribut
Property atau atribut adalah sifat atau karakteristik deskriptif suatu entitas.
Setiap property atau atribut mempunyai key
diantaranya primary key (PK)
  
60
dan foreign key
(FK), yang bertujuan untuk menunjukan hubungan antara
kedua entitas.
2.2.5
XAMPP
XAMPP adalah perangkat lunak bebas, yang mendukung banyak sistem operasi,
merupakan kompilasi dari beberapa program.
Fungsinya adalah sebagai
yang
berdiri sendiri (localhost), yang terdiri atas program Apache HTTP Server, MySQL
database, dan penerjemah bahasa yang ditulis dengan bahasa pemrograman PHP dan
Perl. Nama XAMPP merupakan singkatan dari X (empat sistem operasi apapun),
ini tersedia dalam GNU General Public
License dan bebas, merupakan web server yang mudah digunakan yang dapat melayani
tampilan halaman web
yang dinamis. Untuk mendapatkanya dapat mendownload
langsung dari web resminya. 
2.2.5.1 Apache
Apache merupakan aplikasi web server yang bersifat open source, artinya setiap
orang boleh menggunakannya, mengambil, bahkan mengubah kode programnya. Tugas
utama apache adalah menghasilkan halaman web
yang benar kepada peminta,
berdasarkan kode PHP yang dituliskan oleh pembuat halaman web. Jika diperlukan juga
berdasarkan kode PHP yang dituliskan,maka dapat saja suatu database diakses terlebih
dahulu (misalnya dalam MySQL) untuk mendukung halaman web yang dihasilkan.
  
61
2.2.5.2 MySQL
MySQL adalah salah satu jenis basis data server yang sangat terkenal.
Kepopulerannya disebabkan karena bersifat free
pada berbagai platform.
Perangkat
lunak ini juga dapat di download sendiri.
MySQL termasuk jenis RDMS (Relational Database Management Systems).
Itulah sebabnya istilah seperti tabel, baris, dan kolom digunakan pada MySQL. Pada
MySQL, sebuah basis data mengandung satu atau sejumlah tabel. Tabel terdiri atas
sejumlah baris dan setiap baris mengandung satu atau beberapa kolom.
MySQL adalah perangkat lunak sistem management basis data SQL atau DBMS
yang multithread, multiuser, dengan
sekitar 6 juta instalasi di seluruh dunia. MySQL
dimiliki dan disponsori oleh sebuah perusahaan komersial Swedia MySQL AB, dimana
memegang hak cipta hampir atas semua kode sumbernya. Kedua orang Swedia dan satu
orang Finlandia yang mendirikan MySQL AB adalah David Axmark, Allan Larsson, dan
Michael “Monty” Windenius.
Untuk melakukan administrasi dalam basis data MySQL, dapat menggunakan
modul yang sudah termasuk yaitu command-line (perintah : mysql dan mysqladmin).
Juga dapat di download dari situs MySQL yaitu sebuah modul berbasis grafik (GUI) :
MySQL Administrator dan MySQL Query Browser. Selain itu, terdapat juga perangkat
lunak gratis untuk administrasi basis data MySQL berbasis web
yang sangat populer
yaitu phpMyAdmin. Dalam pengerjaan ini kami menggunakan phpMyAdmin.
  
62
2.2.5.3 PhpMyAdmin
Pada dasarnya, mengelola basis data dengan MySQL harus dilakukan dengan
cara mengetikkan baris-baris perintah yang sesuai (command line) untuk setiap maksud
tertentu. Jika seseorang ingin membuat basis data (database), ketikkan baris perintah
yang sesuai untuk membuat basis data. Jika seseorang menghapus tabel, ketikkan baris
perintah yang sesuai untuk menghapus tabel. Hal tersebut tentu saja sangat menyulitkan
karena seseorang harus hafal dan mengetikkan perintahnya satu per satu.
Saat ini banyak sekali perangkat lunak yang dapat dimanfaatkan untuk
mengelola basis data dalam MySQL, salah satunya adalah phpMyAdmin. Dengan
phpMyAdmin, seseorang dapat membuat database,
membuat tabel, mengisi data, dan
lain-lain dengan mudah, tanpa harus menghafal baris perintahnya.
PhpMyAdmin merupakan bagian untuk mengelola basis data MySQL yang ada
di komputer. Untuk membukanya, buka
browser lalu ketikkan alamat
http://localhost/phpmyadmin, maka akan muncul halaman phpMyAdmin. Di situ
nantinya seseorang bisa membuat (create) basis data baru, dan mengelolanya.
Mendukung fitur MySQL:
menelusuri dan drop basisdata (database), tabel, pandangan (view), bidang (fields)
dan indeks.
membuat, menyalin, drop, dan mengubah nama basis data, tabel, kolom dan
indeks.
pemeliharaan server, basis data dan tabel, dengan server konfigurasi.
  
63
melaksanakan, mengedit dan penunjuk pernyataan-SQL, bahkan batch-queries
mengelola pengguna MySQL dan hak istimewa.
mengelola prosedur penyimpanan.
2.2.6 Dreamweaver
Adobe Dreamweaver adalah aplikasi desain dan pengembangan web yang
menyediakan editor WYSIWYG visual (bahasa sehari-hari yang disebut sebagai Design
view) dan kode editor dengan fitur standar seperti syntax highlighting, code completion,
dan code collapsing serta fitur lebih canggih seperti real-time syntax checking dan code
introspection
untuk menghasilkan petunjuk kode untuk membantu pengguna dalam
menulis kode. Tata letak tampilan Design memfasilitasi desain cepat dan pembuatan
kode seperti memungkinkan pengguna dengan cepat membuat tata letak dan manipulasi
elemen HTML. Dreamweaver memiliki fitur
browser
yang terintegrasi untuk melihat
halaman web
yang dikembangkan di jendela pratinjau program sendiri agar konten
memungkinkan untuk terbuka di web browser
yang telah terinstall. Aplikasi ini
menyediakan transfer dan fitur sinkronisasi, kemampuan untuk mencari dan mengganti
baris teks atau kode untuk mencari kata atau kalimat biasa di seluruh situs, dan
templating feature
yang memungkinkan untuk berbagi satu sumber kode atau
memperbarui tata letak di seluruh situs tanpa server side includes
atau scripting.
Behavior Panel
juga memungkinkan penggunaan JavaScript dasar tanpa pengetahuan
coding, dan integrasi dengan Adobe Spry Ajax framework menawarkan akses mudah ke
konten yang dibuat secara dinamis dan interface.
  
64
Dreamweaver dapat menggunakan ekstensi dari pihak ketiga untuk
memperpanjang fungsionalitas inti dari aplikasi, yang setiap pengembang web bisa
menulis (sebagian besar dalam HTML
dan JavaScript). Dreamweaver didukung oleh
komunitas besar pengembang ekstensi yang membuat ekstensi yang tersedia (baik
komersial maupun yang gratis) untuk pengembangan web dari efek rollover sederhana
sampai full-featured shopping cart.
Dreamweaver, seperti editor HTML lainnya, edit file secara lokal kemudian di
upload ke web server remote
menggunakan FTP, SFTP, atau WebDAV. Dreamweaver
CS4 sekarang mendukung sistem kontrol versi Subversion (SVN).
2.3 Pemahaman Objek Studi
2.3.1 Pengertian Internet
Menurut Turban et al (2003,p200), internet yang merupakan jaringan komputer
terbesar di dunia, sebenarnya adalah sebuah jarigan dalam jaringan-jaringan. Internet
merupakan koleksi lebih dari 200.000 jaringan komputer individual yang dimiliki oleh
pemerintah-pemerintah, universitas-universitas kelompok nonprofit, dan perusahaan-
perusahaan. Jaringan-jaringan interconnected ini mengubah informasi tanpa halangan
dengan menggunakan kemampuan yang sama, standar yang bukan merupakan hak
milik, dan protokol-protokol. Kesemuanya itu dihubungkan melalui jaringan
berkecepatan tinggi dan jarak jauh.
Dari pengertian di atas dapat diambil kesimpulan, internet sangat tidak terpusat,
tidak dikendalikan secara mutlak oleh suatu perusahaan apapun maupun satu
  
65
pemerintah. Internet merupakan suatu jaringan komputer yang saling terhubung satu
sama lain dan tidak terpusat.
2.3.2 Pengertian Layanan
Menurut Kamus Besar Bahasa Indonesia (Kamus Besar Bahasa Indonesia, 2002),
layan adalah membantu menyiapkan (mengurus) apa-apa yg diperlukan seseorang;
meladeni. Layanan adalah perihal atau cara melayani.
2.3.3 Pengertian Online
Kata ‘online’ berasal dari Bahasa Inggris adalah keadaan saat sesuatu terhubung
dalam suatu jaringan atau sistem (umumnya internet). 
2.3.4 Pengertian Sekolah 
Sekolah adalah bangunan atau lembaga untuk belajar dan mengajar serta tempat
menerima dan memberi pelajaran menurut tingkatannya (Kamus Besar Bahasa
Indonesia, 2002).
2.3.5 Pengertian Rapor
Rapor adalah buku yang berisi nilai kepandaian dan prestasi belajar murid di
sekolah, berfungsi sebagai laporan guru kepada orangtua atau wali murid (Kamus Besar
Bahasa Indonesia, 2002).
2.3.6 Pengertian Absen
  
66
Dalam setiap organisasi
atau perusahaan, daftar hadir dianggaplah penting
karena hal tersebut akan melaporkan kepada pemilik atau kepada para pemimpin
bagaimana kurang lebih kinerja orang tersebut. Dalam dunia pendidikan, daftar hadir
juga tidak kalah pentingnya. Dengan daftar hadir, pihak sekolah dapat meningkatkan
kedisiplinan para siswa, serta data-data absensi tersebut berguna untuk perencanaan,
bimbingan dan pengarahan, koordinasi dan komunikasi. Absen adalah tidak hadir atau
tidak masuk (sekolah, kerja, dan sebagainya) (Kamus Besar Bahasa Indonesia, 2002).
2.3.7 Pengertian Jadwal
Jadwal adalah pembagian waktu berdasarkan rencana pengaturan urutan kerja;
daftar atau tabel kegiatan atau rencana kegiatan dng pembagian waktu pelaksanaan yg
terperinci
(Kamus Besar Bahasa Indonesia, 2002). Penjadwalan digunakan untuk
mengatur kegiatan dalam suatu badan.
2.3.8 Pengertian Penilaian
Penilaian adalah proses, cara, perbuatan menilai; pemberian nilai (biji, kadar
mutu, harga) (Kamus Besar Bahasa Indonesia, 2002). Penilaian menjawab pertanyaan
tentang sebaik apa hasil atau pretasi belajar seorang peserta didik. Hasil penilaian dapat
berupa nilai kualitatif (pernyataan naratif dalam kata-kata) dan nilai kuantitatif (berupa
angka).
2.3.9 Pengertian Administrasi
Dalam setiap organisasi atau perusahaan, keuangan akan diatur oleh bidang
administrasi yang mencatat pembukuan yang bersifat teknis ketatausahaan. Administrasi
  
67
adalah usaha dan kegiatan yang berkaitan dengan kantor dan tata usaha (Kamus Besar
Bahasa Indonesia, 2002).