BAB 2 - BINA NUSANTARA | Library & Knowledge...
Transcript of BAB 2 - BINA NUSANTARA | Library & Knowledge...
BAB 2
LANDASAN TEORI
2.1 Teori Dasar Umum
Dalam teori umum membahas secara ringkas tentang teori-teori yang
berhubungan dengan Data, Basis Data, Sistem Basis Data, Sistem Manajemen
Basis Data, Bahasa Basis Data, Siklus Hidup Pengembangan Sistem Basis Data,
Normalisasi, dan Pemodelan Hubungan Entitas.
2.1.1 Data
Definisi data menurut Connolly dan Begg (2010) adalah kumpulan kolom
yang mengandung data yang saling berhubungan secara logis.
Sesuai pendapat yang dikemukakan oleh Whitten dan Bentley (2007),
data adalah fakta mentah mengenai orang, tempat, kejadian, dan hal-hal yang
penting dalam suatu organisasi.
Menurut Turban (2005), data merupakan fakta mentah atau deskripsi
dasar dari suatu kejadian, aktivitas, dan transaksi yang didapat, dicari, disimpan,
dan dikelompokkan, namun tidak diorganisir sehingga tidak memberikan suatu
arti yang spesifik. Data dapat berupa numerik, alfanumerik, figur, suara, atau
gambar.
2.1.2 Basis Data
Berdasarkan Connolly dan Begg (2010), basis data (database) adalah
kumpulan data yang saling berhubungan secara logis dan deskripsi dari data
tersebut dirancang untuk memenuhi kebutuhan informasi suatu organisasi.6
7
Menurut Gerald V. Post (2005), basis data (database) adalah kumpulan
data yang disimpan dalam format standard dan dirancang untuk digunakan oleh
banyak user.
Definisi basis data (database) menurut Whitten dan Bentley (2007)
merupakan kumpulan file yang saling berhubungan. File adalah kumpulan baris
(records). Records yang terdapat dalam setiap file harus mempunyai relasi
(relationship) untuk berhubungan dengan record lain dalam file lain.
2.1.3 Sistem Basis Data
Mengacu pada Connolly dan Begg (2010), sistem basis data (database
system) adalah koleksi dari program aplikasi yang berinteraksi dengan basis data
itu sendiri.
Menurut Date (2004), sistem basis data (database system) merupakan
sistem yang terkomputerisasi untuk memelihara suatu records. User pada sistem
dapat melakukan beberapa operasi dalam mengolah suatu file, misalnya
menambah file ke basis data, memasukkan data ke dalam file yang telah tersedia,
menampilkan, menghapus, dan merubah data yang tersedia.
Menurut Putra (2010), sistem basis data (database system) adalah suatu
informasi yang mengintegrasikan kumpulan data yang saling berhubungan
dengan lainnya dan dapat digunakan untuk beberapa aplikasi dalam suatu
instansi.
2.1.4 Sistem Manajemen Basis Data (Database Management System-DBMS)
Mengacu pada Connolly dan Begg (2010), sistem manajemen basis data
(Database Management System-DBMS) merupakan sistem perangkat lunak yang
8
memungkinkan users untuk menentukan, membuat, memelihara, dan mengontrol
akses ke suatu basis data.
Menurut Connolly dan Begg (2010), DBMS menyediakan beberapa
kemudahan, diantaranya :
1. Memungkinkan users untuk mendefinisikan basis data melalui Data Definition
Language (DDL). DDL memungkinkan users untuk menentukan tipe data,
struktur, dan constraints terhadap data yang disimpan dalam basis data.
2. Memungkinkan users untuk memasukkan, mengubah, menghapus, dan
menampilkan data dari suatu basis data atau dikenal dengan Data Manipulation
Language (DML).
3. Menyediakan akses kontrol pada suatu basis data.
Berdasarkan Connolly dan Begg (2010), terdapat 5 komponen utama
pada DBMS, diantaranya :
1. Perangkat Keras (Hardware)
Hardware diperlukan untuk menjalankan aplikasi dan DBMS. Contoh
dari hardware yang digunakan adalah a single personal computer, single
mainframe, dan jaringan komputer. Beberapa hardware bekerja dengan
bergantung pada kebutuhan organisasi dan pengguna DBMS. Beberapa
DBMS hanya dapat bekerja pada hardware atau sistem operasi tertentu,
sementara yang lainnya bekerja di berbagai hardware dan sistem operasi yang
lebih luas cakupannya.
9
2. Perangkat Lunak (Software)
Komponen dari software dapat terdiri dari DBMS itu sendiri, program
aplikasi dan sistem operasi, termasuk juga software jaringan yang digunakan
jika DBMS sedang dijalankan melalui jaringan.
3. Data
Data merupakan komponen terpenting DBMS karena sebagai
penghubung antara komponen mesin (perangkat keras dan perangkat lunak)
dan komponen human (prosedur dan orang).
4. Prosedur (Procedures)
Prosedur merupakan instruksi dan aturan untuk menentukan perancangan
dan penggunaan suatu basis data. Pengguna sistem dan staff yang mengatur
basis data membutuhkan prosedur yang terdokumentasi dalam menjalankan
suatu sistem. Prosedur dapat berisi instruksi-instruksi berupa: login ke basis
data, penggunaaan fasilitas DBMS tertentu atau program aplikasi, langkah
memulai dan mengakhiri suatu DBMS, melakukan backup copies terhadap
basis data, mengatasi masalah pada hardware dan software, mengubah
struktur basis data, meningkatkan performa, dan membuat arsip penyimpanan
data sekunder.
5. Manusia (People)
Manusia merupakan komponen terakhir yang terlibat sebagai pengguna
sistem tersebut.
Terdapat 4 tipe komponen manusia yang berkaitan dalam DBMS
menurut Connolly dan Begg (2010) :
10
1. Data dan Database Administrators
Data dan database administrators bertanggung jawab untuk
manajemen dan kontrol basis data. Data Administrator (DA) bertanggung
jawab untuk manajemen sumber daya data termasuk perencanaan basis
data, pengembangan, pemeliharaan, kebijakan, prosedur, dan desain basis
data secara konseptual/logikal. Database Administrator (DBA)
bertanggung jawab untuk realisasi fisik basis data yang mencakup desain
fisik basis data, implementasi, keamanan, pengendalian integritas,
pemeliharaan sistem operasi, dan memastikan kepuasan user terhadap
performa aplikasi.
2. Database Designer
Database designer dibagi menjadi perancang basis data logikal
dan fisik. Perancangan basis data logikal berkaitan dengan identifikasi
data seperti entitas dan atribut, hubungan antar data, dan batasan–batasan
pada basis data. Perancangan basis data fisik berkaitan dengan cara
realisasi desain basis data. Misalnya, memetakan rancangan basis data
logikal ke dalam sebuah tabel dan terintegritas dengan batasan
(constraint), pemilihan spesifikasi struktur penyimpanan dan pemilihan
metode akses untuk performa yang lebih baik, serta merancang beberapa
ukuran keamanan yang diperlukan oleh data.
3. Application Developers
Application Developers bertanggung jawab membuat dan
mengembangkan program-program aplikasi yang sudah
diimplementasikan, sehingga dapat digunakan oleh end-users.
11
4. End-Users
End-users merupakan pengguna akhir basis data yang telah
dirancang, diimplementasikan, dan sedang dipelihara untuk melayani
kebutuhan-kebutuhan informasi mereka.
Menurut Connolly dan Begg (2010), terdapat beberapa
keuntungan dan kerugian DBMS.
Tabel 2.1 Keuntungan dan Kerugian DBMS
No. Keuntungan DBMS Kerugian DBMS
1. Mengontrol redudansi data. Kompleksitas.
2. Konsistensi data. Ukuran software pendukung dan memori penyimpanan.
3. Mendapatkan lebih informasi dari sejumlah data yang sama.
Harga DBMS yang mahal.
4. Penggunaan data bersama. Biaya tambahan perangkat keras.
5. Meningkatkan integritas data. Biaya konversi.
6. Meningkatkan keamanan basis data.
Performa sistem yang lambat.
7. Meningkatkan standardisasi. Pengaruh kegagalan lebih tinggi.
8. Meningkatkan skala ekonomi.
9. Menyeimbangkan kebutuhan-kebutuhan yang tidak sama.
10. Meningkatkan akses dan respon data.
11. Meningkatkan produktivitas.
12. Meningkatkan pemeliharaan terhadap independensi data.
12
13. Meningkatkan pengaturan akses data yang dilakukan secara bersamaan (concurrency).
14. Mengingkatkan layanan backup dan recovery.
Ada 10 fungsi DBMS menurut Connolly dan Begg (2010), yaitu :
1. Data storage, retrieval, and update
DBMS pasti menyediakan users dengan kemampuan menyimpan,
mengambil, dan mengubah data dalam suatu basis data.
2. A user-accessible catalog
DBMS pasti menyediakan katalog berisi deskripsi item data yang
disimpan dan yang dapat diakses oleh users.
3. Transactional support
DBMS pasti menyediakan mekanisme yang dapat memastikan
semua perubahan baik yang berhubungan dengan transaksi yang dibuat
atau tidak sama sekali dibuat.
4. Concurrency control services
DBMS pasti menyediakan mekanisme untuk menjamin suatu
basis data diperbaharui secara benar ketika beberapa users sedang
melakukan perubahan basis data secara bersamaan.
5. Recovery services
DBMS pasti menyediakan mekanisme untuk perbaikan basis data
apabila terjadi kerusakan.
13
6. Authorization services
DBMS pasti menyediakan mekanisme untuk menjamin hak
otoritas users dalam mengakses suatu basis data.
7. Support for data communication
DBMS dapat terintegrasi dengan perangkat lunak komunikasi,
misalnya dapat mengirim permintaan sebagai pesan dan tanggapan.
8. Integrity services
DBMS pasti menjamin data dalam basis data dan perubahan data
sesuai dengan aturan tertentu.
9. Services to promote data independence
DBMS pasti mencakup fasilitas untuk mendukung program-
program yang tidak tergantung dari struktur basis data yang sebenarnya.
10. Utility services
DBMS menyediakan seperangkat layanan kegunaan. Misalnya,
analisis program statistik, menjaga penggunaan dan operasi suatu basis
data, dan lain-lain.
2.1.5 Bahasa Basis Data
Bahasa basis data dibagi dalam dua jenis, yaitu Data Definition Language
(DDL) dan Data Manipulation Language (DML). Menurut pendapat Connolly
dan Begg (2010), DDL digunakan dalam menentukan schema basis data
sedangkan DML digunakan untuk membaca dan mengubah basis data.
14
2.1.5.1 DML
Menurut Connolly dan Begg (2010), Data Manipulation Language
(DML) adalah suatu bahasa yang menyediakan suatu set operasi untuk
mendukung manipulasi data yang ada di dalam basis data. Data manipulasi
terdiri atas:
1. Insert, menambahkan data baru ke dalam basis data
2. Update, merubah data yang ada di dalam basis data
3. Delete, menghapus data yang ada di dalam basis data
4. Retrieve, mengambil data yang ada di dalam basis data
2.1.5.2 DDL
Menurut Connolly dan Begg (2010), Data Definition Language (DDL)
adalah suatu bahasa yang memperbolehkan DBA atau pengguna untuk
menspesifikasi tipe data dan struktur dan membatasi data yang akan di simpan
di dalam basis data.
2.1.6 Siklus Hidup Pengembangan Sistem Basis Data (Database Application
Lifecycle)
Mengacu pada Connolly dan Begg (2010), database application lifecycle
merupakan sebuah organisasi besar membutuhkan suatu sistem basis data sebagai
komponen dasar dalam sistem informasinya. Dalam membangun sebuah siklus
hidup pengembangan sistem basis data bergantung pada siklus hidup sistem
informasinya. Oleh karena itu, dibutuhkan beberapa tahapan dalam membangun
siklus hidup pengembangan sistem basis data tersebut.
15
Gambar berikut merupakan tahapan-tahapan dalam siklus hidup
pengembangan sistem basis data menurut Connolly dan Begg (2010).
Gambar 2.1 Siklus Hidup Pengembangan Aplikasi Basis Data
16
2.1.6.1 Perencanaan Basis Data
Menurut Connolly dan Begg (2010), perencanaan basis data merupakan
manajemen aktivitas yang memungkinkan tahapan Database Application
Lifecycle direalisasikan seefisien dan seefektif mungkin. Perencanaan basis data
juga mencakup cara pengumpulan data, menetapkan format data, dokumentasi
yang dibutuhkan, desain, dan implementasi.
Tahapan dalam perencanaan basis data berdasarkan Connolly dan Begg
(2010) :
- Mission Statement
Mendefinisikan tujuan utama pembuatan basis data, membantu
menjelaskan tujuan tersebut, dan memberikan tahap yang efisien dan
efektif dari kebutuhan basis data.
- Mission Objectives
Setiap tujuan objek mengidentifikasikan kembali tugas-tugas yang
mendukung basis data.
2.1.6.2 Definisi Sistem
Menurut Connolly dan Begg (2010), definisi sistem menjelaskan ruang
lingkup dan batasan-batasan dari aplikasi basis data dan user views utama. User
View mendefinisikan apa yang dibutuhkan sistem basis data berdasarkan peranan
pekerjaan (misalnya, manajer atau supervisor) atau area aplikasi perusahaan
(pemasaran, personalia atau pengendalian stock) dan mendefinisikan transaksi-
transaksi apa saja yang dilakukan.
17
Aplikasi basis data seharusnya memiliki satu atau lebih user view karena
dapat membantu untuk memastikan tidak ada users yang terlupakan ketika
mengembangkan aplikasi basis data.
2.1.6.3 Pengumpulan Kebutuhan dan Analisis
Menurut Connolly dan Begg (2010), pengumpulan kebutuhan dan
analisis merupakan proses pengumpulan dan analisis informasi mengenai
organisasi yang didukung dengan aplikasi basis data dan menggunakan informasi
tersebut untuk mengidentifikasikan kebutuhan terhadap sistem baru.
Informasi yang dikumpulkan dapat berupa deskripsi data yang digunakan,
detail bagaimana data digunakan, dan tambahan informasi kebutuhan untuk
sistem basis data baru.
Terdapat tiga pendekatan untuk mengelola kebutuhan sistem basis data
dengan multiple user views, yaitu :
1. Terpusat (Centralized Approach)
Kebutuhan setiap user view digabung menjadi satu set kebutuhan sistem
basis data.
2. Tinjauan terintegrasi (View Integration Approach)
Kebutuhan setiap user view dibuat dalam model terpisah kemudian
digabung selama tahap perancangan basis data berlangsung.
3. Kombinasi terpusat dan tinjauan terintegrasi
Kebutuhan dari dua atau lebih user view digabung menggunakan
pendekatan terpusat untuk membuat model data logikal. Kemudian model
data logikal ini digabung dengan model data logikal lain menggunakan
18
pendekatan tinjauan teritegrasi untuk menghasilkan model data logical secara
global.
2.1.6.4 Perancangan Basis Data
Mengacu pada Connolly dan Begg (2010), perancangan basis data
merupakan proses membuat rancangan yang mendukung operasional dan tujuan
perusahaan untuk kebutuhan sistem basis data.
Berdasarkan Connolly dan Begg (2010) terdapat beberapa pendekatan
dalam merancang basis data, yaitu :
1. Bottom-up
Dimulai dari level dasar atribut (entity dan relationship) dimana melalui
analisis hubungan antar atribut, kemudian dikumpulkan menjadi relasi yang
merepresentasikan tipe dari entitas-entitas dan relasi antar entitas tersebut.
Pendekatan ini tepat digunakan untuk perancangan basis data yang
mempunyai sedikit jumlah entitasnya.
2. Top-down
Dimulai dengan pengembangan data model yang berisi sedikit high-
level entities dan relationship, kemudian mengidentifikasi lower-level entities,
relationship. Pendekatan ini tepat digunakan untuk perancangan basis data
yang kompleks.
3. Inside-out
Berhubungan dengan pendekatan bottom-up, tetapi pada pendekatan
ini dilakukan identifikasi pertama kali pada entitas utama, kemudian diuraikan
19
menjadi entitas, relasi dan atribut lain yang berhubungan dengan semua
entitas utamanya.
4. Mixed
Pendekatan yang mengggunakan kedua pendekatan bottom-up dan top-
down untuk bermacam-macam bagian model sebelum akhirnya semua
dikombinasikan.
Mengacu pada Connolly dan Begg (2010) untuk merancang basis data,
digunakan 3 langkah :
1. Perancangan basis data konseptual
Perancangan basis data konseptual merupakan proses
pembangunan model dari data yang digunakan oleh perusahaan, terlepas
dari semua pertimbangan fisik (contohnya, DBMS, bahasa
pemrograman, dan platform perangkat keras).
Langkah 1: Membuat data model konseptual
Bertujuan untuk membangun data model konseptual untuk data
yang diperlukan oleh perusahaan.
1.1 Mengidentifikasi tipe-tipe entitas
Bertujuan untuk mengidentifikasi tipe-tipe entitas yang
diperlukan.
1.2 Mengidentifikasi tipe-tipe relasi
Bertujuan untuk mengidentifikasi relasi yang penting yang
ada di antara tipe-tipe entitas.
20
1.3 Mengidentifikasi dan menghubungkan atribut dengan tipe-
tipe entitas atau relasi
Bertujuan untuk menghubungkan atribut dengan tipe-tipe
entitas atau relasi yang sesuai.
1.4 Menentukan domain atribut
Bertujuan untuk menentukan domain untuk atribut di
dalam data model konseptual.
1.5 Menentukan atribut candidate, primary, dan alternate key
Bertujuan untuk mengidentifikasi candidate key(s) untuk
setiap tipe entitas, dan apabila terdapat lebih dari satu candidate
key, maka pilih satu sebagai primary key dan sisanya sebagai
alternate keys.
1.6 Mempertimbangkan penggunaan konsep pemodelan yang
ditingkatkan (langkah pilihan)
Bertujuan untuk mempertimbangkan penggunaan dari
konsep pemodelan yang ditingkatkan, seperti
spesialisasi/generalisasi, agregasi, dan komposisi.
1.7 Mengecek redudansi pada model
Bertujuan untuk mengecek apakah terdapat redudansi di
dalam model.
1.8 Memvalidasi model data konseptual dengan transaksi
pengguna
Bertujuan untuk memastikan bahwa model konseptual
telah mendukung transaksi yang diperlukan.
21
1.9 Meninjau model data konseptual dengan pengguna
Bertujuan untuk meninjau model data konseptual dengan
pengguna untuk memastikan bahwa mereka memandang
modelnya sebagai representasi yang sudah nyata dari kebutuhan
data perusahaan.
2. Perancangan basis data logikal
Perancangan basis data logikal merupakan proses pembangunan
model dari data yang digunakan perusahaan berdasarkan model data yang
spesifik, tetapi tetap terlepas dari pertimbangan fisik tertentu. Pada
dasarnya, perancangan basis data logikal merupakan pemetaan dari
konseptual yang bergantung pada model data yang diinginkan
(contohnya, model relasional), juga merupakan sumber informasi untuk
perancangan basis data fisik.
Langkah 2: Membuat dan memvalidasi data model logikal
Bertujuan untuk menerjemahkan data model konseptual menjadi
data model logikal dan kemudian memvalidasi modelnya untuk
mengecek apakah telah benar secara struktur dan dapat mendukung
transaksi yang diperlukan.
2.1 Mengambil relasi untuk model data logikal
Bertujuan untuk membentuk relasi untuk model data
logikal yang menunjukkan entitas, relasi, dan atribut yang telah di
identifikasi.
22
2.2 Memvalidasi relasi menggunakan normalisasi
Bertujuan untuk memvalidasi relasi di model data logikal
menggunakan normalisasi
2.3 Memvalidasi relasi terhadap transaksi pengguna
Bertujuan untuk memastikan bahwa relasi di model data
logical dapat mendukung transaksi yang diperlukan oleh
pengguna.
2.4 Mengecek batasan integritas
Bertujuan untuk mengecek batasan integritas apakah
sudah diwakili di dalam model data logikal.
2.5 Meninjau data model logikal dengan pengguna
Bertujuan untuk meninjau data model logikal dengan
pengguna untuk memastikan bahwa mereka memandang
modelnya sebagai representasi yang sudah real dari kebutuhan
data perusahaan.
2.6 Menggabungkan model data logikal ke dalam model global
(langkah pilihan)
Bertujuan untuk menggabungkan model data logikal ke
dalam model data logikal global yang tunggal yang
menggambarkan semua tampilah pengguna dari basis data.
2.7 Mengecek kemungkinan pertumbuhan masa depan
Bertujuan untuk menentukan apakah akan ada perubahan
yang signifikan pada masa depan dan menilai apakah model data
logikal dapat menampung perubahan tersebut.
23
3. Perancangan basis data fisik
Perancangan basis data fisik merupakan proses yang
menghasilkan deskripsi dari implementasi basis data pada penyimpanan
kedua, menjelaskan basis dari relasi, organisasi file, dan index yang
digunakan untuk mengakses data dengan efisien, serta batasan integritas
yang terkait dan tingkat keamanan.
Langkah 3: Menerjemahkan data model logikal untuk target DBMS
Bertujuan untuk menghasilkan skema relasi basis data dari model
data logikal yang dapat di implementasikan ke dalam target DBMS.
3.1 Merancang relasi dasar
Bertujuan untuk menentukan bagaimana cara
menunjukkan relasi dasar yang sudah diidentifikasi di dalam
model data logikal di dalam target DBMS.
3.2 Merancang representasi dari data yang diturunkan
Bertujuan untuk menentukan bagaimana cara
menunjukkan setiap data yang diturunkan ada di dalam model
data logikal di dalam target DBMS.
3.3 Merancang constraint umum
Bertujuan untuk merancang constraint umum untuk target
DBMS.
Langkah 4: Merancang organisasi file dan index
Bertujuan untuk menentukan organisasi file yang optimal untuk
menempatkan relasi dasar dan index yang dibutukan untuk mencapai
24
performa yang dapat diterima, yaitu cara dimana relasi (relationship) dan
tuples akan disimpan di penyimpanan sekunder.
4.1 Menganalisis transaksi
Bertujuan untuk mengerti akan fungsi dari transaksi yang
akan dijalankan di basis data dan untuk menganalisa transaksi
yang penting.
4.2 Memilih organisasi file
Bertujuan untuk menentukan organisasi file yang efisien
untuk setiap relasi dasar.
4.3 Memilih index
Bertujuan untuk menentukan apakah dengan menambah
index dapat meningkatkan performa dari sistem.
Index digunakan untuk mempercepat proses pencarian.
Namun, untuk relasi-relasi kecil sebaiknya tidak dibuat indeksnya
karena dapat menambah kapasitas penyimpanan.
Petunjuk dalam pembuatan index :
1. Jika tipe data field-nya adalah text, number atau datetime.
2. Jika user ingin melakukan pencarian untuk nilai yang
disimpan dalam field.
3. Jika user ingin mengantisipasi penyimpanan nilai yang
berbeda-beda dalam field.
4.4 Mengestimasi kebutuhan disk space
Bertujuan untuk mengestimasi berapa banyak disk space
yang diperlukan oleh basis data.
25
Langkah 5: Merancang tampilan pengguna
Bertujuan untuk merancang tampilan pengguna yang telah
diidentifikasi ketika pengumpulan kebutuhan dan menganalisis tahap dari
siklus hidup pengembangan sistem basis data.
Langkah 6: Merancang mekanisme sekuritas
Bertujuan untuk merancang mekanisme sekuritas untuk basis data
seperti yang telah dispesifikasikan oleh pengguna ketika tahap
pengumpulan kebutuhan dari siklus hidup pengembangan basis data.
Langkah 7: Mempertimbangkan pengenalan redudansi terkontrol
Bertujuan untuk menentukan apakah memperkenalkan redudansi
di dalam cara yang terkontrol dengan mengendurkan aturan normalisasi
akan meningkatkan performa dari system.
Langkah 8: Memantau dan menyempurnakan sistem operasional
Bertujuan untuk memantau sistem operasional dan meningkatkan
performa dari sistem untuk memperbaiki keputusan perancangan yang
tidak baik atau yang mencerminkan kebutuhan yang berubah.
2.1.6.5 Pemilihan DBMS
Menurut Connolly dan Begg (2010), pemilihan DBMS merupakan
pemilihan yang tepat pada DBMS untuk mendukung sistem basis data.
Ada beberapa tahapan utama dalam melakukan pemilihan DBMS
berdasarkan Connolly dan Begg (2010), yaitu :
a. Mendefinisikan waktu untuk melakukan studi referensi.
26
b. Membuat daftar pendek mengenai perbedaan dua atau tiga produk yang akan
digunakan.
c. Mengevaluasi produk DBMS yang dipilih.
d. Merekomendasikan pemilihan DBMS dan membuat laporan hasil evaluasi
tersebut.
2.1.6.6 Desain Aplikasi
Berdasarkan Connolly dan Begg (2010), desain aplikasi merupakan
perancangan user interface dan program aplikasi yang menggunakan dan
memproses basis data.
Terdapat 2 aspek dalam perancangan desain aplikasi menurut Connolly
dan Begg (2010), yaitu :
- Desain transaksi
Merupakan tindakan atau serangkaian aksi yang dilakukan oleh single
user atau program aplikasi yang mengakses atau merubah isi basis data.
Tujuan dalam desain transaksi ini adalah mendefinisikan dan
mendokumentasikan high-level character dari kebutuhan transaksi pada basis
data, seperti data yang digunakan dalam transaksi, karakteristik fungsional
transaksi, output transaksi, kepentingan users, dan tingkat penggunaan yang
diharapkan.
- Desain user interface
Sebelum membentuk form atau report, ada beberapa tahapan untuk
merancang desain layout tersebut, seperti memberikan nama judul yang jelas,
instruksi yang mudah dipahami, field yang saling berhubungan dan berurutan,
27
tampilan yang menarik, penggunaan nama field yang umum dikenal,
penggunaan singkatan dan istilah yang konsisten, penggunaan warna yang
konsisten, jarak dan batasan yang tampak untuk data-entry fields, pergerakan
kursor yang nyaman, menampilkan pesan kesalahan jika data-entry salah,
perbaikan kesalahan dan mudah melakukan perubahan nilai field, menjelaskan
pesan pada saat kursos diletakkan di suatu field, dan dapat memberikan
petunjuk tanda atau isyarat.
2.1.6.7 Prototyping
Menurut Connolly dan Begg (2010), prototyping adalah membuat model
kerja suatu sistem basis data. Tujuan utama dalam membangun prototype adalah
mengidentifikasi feature sistem yang sedang berjalan, memberikan saran dalam
perbaikan atau pembuatan feature baru pada sistem basis data, menjelaskan
kebutuhan users, dan mengevaluasi kemungkinan yang terjadi dalam
perancangan sistem.
Berdasarkan Connolly dan Begg (2010), terdapat dua strategi prototyping
yang umum digunakan, yaitu :
a. Requirements prototyping
Menggunakan prototype untuk menentukan kebutuhan dari tujuan sistem
basis data dan saat kebutuhan-kebutuhan tersebut telah terpenuhi, maka
prototype tersebut akan dibuang.
28
b. Evolutionary prototyping
Digunakan untuk tujuan yang sama. Perbedaannya adalah prototype
tidak dibuang, tetapi dikembangkan menjadi sistem basis data yang dapat
digunakan.
2.1.6.8 Implementasi
Menurut Connolly dan Begg (2010), implementasi merupakan realisasi
fisik dari basis data dan aplikasi desain. Implementasi basis data dicapai dengan
menggunakan DDL pada pemilihan DBMS atau Graphical User Inteface (GUI),
dimana menyediakan fungsi yang sama ketika menyembunyikan pertanyaan
low-level pada DDL. Pernyataan DDL digunakan untuk membuat struktur basis
data dan mengosongkan file pada basis data. Pada tahap ini juga dapat membuat
user views yang diinginkan serta menggunakan 3GL atau 4GL untuk membuat
program aplikasi pada transaksi basis data, yaitu menggunakan DML atau bahasa
pemrograman lain.
2.1.6.9 Konversi dan Loading Data
Menurut Connolly dan Begg (2010), konversi dan loading data
merupakan proses pemindahan data yang ada ke dalam basis data baru dan
melakukan konversi beberapa aplikasi yang ada untuk dijalankan pada basis data
baru. Tahapan ini dibutuhkan hanya ketika sistem basis data baru akan
menggantikan sistem basis data lama.
29
2.1.6.10 Testing
Menurut Connolly dan Begg (2010), testing atau pengujian merupakan
proses menjalankan sistem basis data dengan tujuan untuk menemukan
kesalahan-kesalahan. Situasi yang ideal dalam melakukan testing adalah
menggunakan basis data ada perangkat keras yang berbeda, tetapi jika
tersedia. Jika data yang real sedang digunakan, penting untuk melakukan
backup.
2.1.6.11 Pemeliharaan Operasional
Mengacu pada Connolly dan Begg (2010), pemeliharaan operasional
merupakan proses pengawasan dan pemeliharaan sistem instalasi selanjutnya.
Ada beberapa aktivitas yang perlu dilakukan saat berada di tahap ini,
yaitu :
- Mengawasi performa sistem. Jika performa berada di bawah level yang
wajar, maka diperlukan perbaikan atau pengaturan ulang basis data.
- Pemeliharaan dan peningkatan sistem basis data. Kebutuhan-kebutuhan
baru digabungkan menjadi sistem basis data yang terlebih dahulu melalui
tahap lifecycle.
2.1.7 Normalisasi
Menurut Connolly dan Begg (2010), tujuan utama dalam merancang
suatu basis data di sebuah perusahaan adalah membuat gambaran suatu data yang
akurat, hubungan antara data, dan batasan-batasan pada data yang berhubungan
dengan perusahaan tersebut. Ada satu atau lebih teknik yang dapat digunakan
untuk mencapai tujuan tersebut, salah satunya adalah normalisasi.
30
Berdasarkan Connolly dan Begg (2010) normalisasi merupakan teknik
perancangan basis data yang diawali dengan menguji hubungan antara atribut.
Pengertian lain normalisasi adalah suatu teknik yang menghasilkan
sekumpulan hubungan dengan sifat-sifat yang diinginkan dan memenuhi
kebutuhan data pada perusahaan.
Berdasarkan Whitten dan Bentley (2007), normalisasi adalah teknik
analisis data yang mengatur data menjadi kelompok-kelompok entitas yang
non redundant, stabil, fleksibel, dan adaptif.
Menurut Connolly dan Begg (2010) terdapat 6 proses normalisasi, yaitu
First Normal Form (1NF), Second Normal Form (2NF), Third Normal Form
(3NF), Boyce-Codd Normal Form (BCNF), Fourth Normal Form (4NF), Fifth
Normal Form (5NF).
1. UNF
UNF merupakan bentuk form dimana sebuah tabel yang berisi
satu atau lebih grup yang berulang. Grup yang berulang adalah atribut
atau grup dari atribut di dalam tabel yang mempunyai banyak nilai.
2. 1NF
1NF merupakan bentuk form dimana sebuah relasi yang setiap
titik temu baris dan kolom nya berisi satu dan hanya satu nilai. Suatu
relasi akan berada dalam bentuk 1NF jika sudah menghilangkan grup
yang berulang. Terdapat 2 pendekatan untuk menghilangkan grup yang
berulang dari UNF, yaitu :
1. Flattening the table, yaitu memasukkan data yang tepat ke dalam
kolom kosong pada baris yang berisi data yang berulang.
31
2. Mengganti data yang berulang dengan menulis ulang atribut key
yang sebenarnya ke dalam relasi yang terpisah.
3. 2NF
2NF merupakan bentuk form dimana sebuah relasi di 1NF dan
setiap atribut bukan primary key adalah sepenuhnya bergantung dengan
primary key (fully functional dependent).
Mengacu pada Indrajani (2011), sebuah relasi mempunyai atribut
A dan B terjadi fully functional dependent jika B bergantung penuh pada
A tetapi bukan pada subset dari A.
Tahap normalisasi dari 1NF ke 2NF menurut Connolly dan Begg
(2010) adalah dengan menghilangkan partial dependencies dan
menggantinya dalam suatu relasi baru dengan salinan determinannya.
4. 3NF
3NF merupakan bentuk form dimana sebuah relasi pada 1NF,
2NF, dan bukan atribut primary key bergantung secara transitif pada
primary key.
Mengacu pada Indrajani (2011), suatu relasi bergantung secara
transitif (transitive dependency) jika suatu relasi pada atribut A, B, dan C
adalah A→B dan B→C maka C merupakan atribut yang bergantung
secara transitif terhadap A melalui B (A tidak functionally dependent
terhadap B atau C).
5. BCNF
Menurut Connolly dan Begg (2010), BCNF adalah suatu relasi
dimana jika dan hanya jika setiap determinan adalah candidate key.
32
Perbedaan antara 3NF dan BCNF, yaitu untuk functional
dependency A→B, 3NF mengikuti dependency jika dalam suatu relasi B
merupakan primary key dan A bukan candidate key. Sedangkan BCNF,
menetapkan A harus primary key. Setiap relasi pada BCNF juga
merupakan relasi pada 3NF, tetapi pada 3NF belum tentu merupakan
relasi pada BCNF.
Pada BCNF jarang sekali terjadi kesalahan, tetapi ada
kemungkinan gangguan yang terjadi pada BCNF seperti relasi yang berisi
gabungan dua atau lebih composite candidate key dan terjadi overlap
pada candidate key, sedikitnya satu atribut.
6. 4NF
4NF merupakan relasi dalam BCNF dan tidak memiliki nontrivial
multi-valued dependencies.
Multi-valued dependencies (MVD) merepresentasikan
ketergantungan antara atribut (misalnya, A, B, dan C) dalam suatu relasi
dimana setiap nilai A berada dalam kumpulan nilai B dan kumpulan nilai
C. Kumpulan nilai B dan kumpulan nilai C adalah independen satu sama
lain. Bentuk notasi :
A→>B
A→>C
7. 5NF
5NF merupakan relasi yang tidak mempunyai join dependency
atau disebut Project-Join Normal Form (PJNF).
33
Join dependency menjelaskan tipe ketergantungan. Misalnya,
pada relasi R dengan subsets R yang dinotasikan sebagai A, B, . . . , Z.
Relasi R dikatakan join dependency jika dan hanya jika setiap nilai sah
pada R sama dengan ketergantungan proyeksi pada A, B, . . . , Z.
2.1.8 Entity-Relationship Modelling
Menurut Connolly dan Begg (2010), Entity-Relationship Modelling
adalah suatu pendekatan top-down untuk merancang basis data dimulai
dengan mengidentifikasi data-data penting yang disebut entitas-entitas dan
relationship antar data yang direpresentasikan dalam sebuah model.
2.1.8.1 Entity Types
Menurut Connolly dan Begg (2010), entity types adalah kumpulan objek
dengan sifat yang sama yang diidentifikasikan oleh perusahaan yang
mempunyai eksistensi yang independen. Entity occurence merupakan entity
type yang dapat mengidentifikasikan objek secara unik.
Cara merepresentasikan diagram entity types berdasarkan Connolly dan
Begg (2010), yaitu:
1. Setiap entity type digambarkan dengan persegi panjang dengan nama
entity di dalamnya, dimana pada umumnya menggunakan kata benda
singular.
2. Huruf pertama setiap kata pada entity name diawali dengan huruf
kapital. Misalnya, Karyawan atau Cabang.
Contoh diagram yang merepresentasikan entity types menurut Connolly
dan Begg (2010).
34
Gambar 2.2 Diagram Representasi Tipe Entitas Karyawan dan Cabang
2.1.8.2 Relationship Types
Menurut Connolly dan Begg (2010), relationship types adalah
sekumpulan hubungan yang mempunyai arti diantara entity types. Relationship
occurrence adalah hubungan yang mengidentifikasi secara unik, dimana
mengandung satu peristiwa dari setiap entity type yang berpartisipasi.
Cara merepresentasikan diagram relationship types berdasarkan Connolly
dan Begg (2010), yaitu :
1. Setiap relationship type ditunjukkan dengan garis yang menghubungkan
dengan entity types, kemudian relationship tersebut diberi nama.
2. Relationship dinamakan menggunakan kata kerja (verb), misalnya
Mengawasi atau Mengatur atau gabungan kata (seperti DisewakanOleh).
3. Huruf pertama pada setiap kata dalam relationship diawali dengan
huruf kapital.
4. Nama relationship harus unik.
5. Relationship hanya dinamakan dalam satu arah, dimana pada umumnya
berarti nama relationship tersebut hanya make sense untuk satu arah,
misalnya, Cabang Memiliki Karyawan lebih make sense daripada
Karyawan Memiliki Cabang.
Nama entitas
Karyawan Cabang
35
2.1.8.2.1 Derajat Relationship
Pengertian derajat relationship menurut Connolly dan Begg (2010) adalah
jumlah entity type yang berpartisipasi dalam relationship.
Berdasarkan pada pendapat Connolly dan Begg (2010) terdapat dua
macam derajat relationship, yaitu :
1. Derajat dua atau binary, merupakan suatu pasangan relationship yang
mempunyai dua entity types yang berpartisipasi. Misalnya, entity types
Karyawan dan Cabang yang mempunyai relationship Memiliki.
Memiliki
Gambar 2.3 Contoh Binary Relationship
2. Derajat tiga atau ternary, merupakan relationship yang mempunyai tiga
entity types. Misalnya, suatu relationship Daftar dengan tiga entity types
yang berpartisipasi Karyawan, Cabang, dan Pelanggan merepresentasikan
suatu pendaftaran pelanggan oleh Karyawan di Cabang.
Gambar 2.4 Contoh Ternary Relationship
3. Derajat empat atau quarternary, merupakan relationship yang
mempunyai empat entity types.
CabangKaryawan
CabangKaryawan Daftar
Pelanggan
36
2.1.8.2.2 Recursive Relationship
Pengertian recursive relationship atau unary relationship menurut
Connolly dan Begg (2010) adalah relationship dengan entity type yang sama
mengambil bagian lebih dari satu peran atau role yang berbeda.
Supervises
Gambar 2.5 Contoh Recursive Relationship
2.1.8.3 Attributes
Menurut Connolly dan Begg (2010), attributes merupakan sifat suatu
entity type atau relationship type. Contohnya pada entity Karyawan yang
memiliki attributes NomorKaryawan, Nama, Jabatan, dan Gaji.
Pengertian attribute domain mengacu pada Connolly dan Begg (2010)
adalah sekumpulan nilai yang diizinkan untuk satu atau lebih attributes.
Contohnya pada attribute Alamat mempunyai entity types Cabang,
PemilikPribadi, dan PemilikPerusahaan memungkinkan mempunyai domain
yang sama pada Alamat.
Cara merepresentasikan attribute menurut Connolly dan Begg (2010)
adalah menghubungkannya dengan garis putus-putus. Contohnya
relationship Advertises mempunyai attribute dateAdvert dan Cost.
Staff
Supervisor
Supervisee
37
Menurut Connolly dan Begg (2010), terdapat beberapa klasifikasi
attributes, diantaranya :
a. Simple Attribute
Simple attribute atau atomic attribute merupakan attribute yang
mempunyai komponen tunggal dengan eksistensi yang independen dan
tidak dapat dibagi-bagi menjadi komponen yang lebih kecil, misalnya
attribute Jabatan dan Gaji pada entity Karyawan.
b. Composite Attribute
Composite attribute merupakan attribute yang mempunyai
banyak komponen dimana tiap-tiap attribute memiliki eksistensi yang
independen dan dapat dibagi-bagi menjadi komponen yang lebih kecil.
Contohnya, attribute Alamat terdiri atas attribute Jalan, Kota, dan
KodePos.
c. Single-Valued Attribute
Single-valued attribute merupakan attribute yang mempunyai
nilai tunggal dalam setiap peristiwa pada entity type. Contohnya pada
entity type Cabang mempunyai nilai tunggal untuk attribute
NomorCabang (misalnya B003).
d. Multi-Valued Attribute
Multi-valued attribute merupakan attribute yang mempunyai
banyak nilai dalam setiap peristiwa pada entity type. Contohnya pada
entity type Cabang mempunyai beberapa nilai untuk attribute
NomorTelepon (misalnya NomorCabang B003 mempunyai nomor
telepon lebih dari satu).
38
e. Derived Attribute
Derived attribute merupakan atribute yang menggambarkan nilai
yang diperoleh dari satu atau lebih attribute dan tidak selalu pada entity
yang sama. Contohnya attribute LamaPinjam pada entity Sewa diperoleh
dari hasil perhitungan attribute MulaiPinjam dan SelesaiPinjam, dimana
juga berada pada entity yang sama.
2.1.8.4 Keys
1. Candidate Key
Menurut Connolly dan Begg (2010), Candidate Key adalah satu
set kecil atribut yang mengidentifikasi secara unik setiap kejadian dari
entitas tersebut.
2. Primary Key
Menurut Connolly dan Begg (2010), Primary Key adalah
candidate key yang dipilih secara unik untuk mengidentifikasi setiap
kejadian dari entitas tersebut.
3. Composite Key
Menurut Connolly dan Begg (2010), Composite Key adalah key
yang mengandung dua atau lebih atribut.
4. Foreign Key
Menurut Connolly dan Begg (2010), Foreign Key adalah satu atau
set atribut yang berada di dalam relasi yang sama dengan candidate key
dari beberapa relasi lainnya.
39
5. Alternate Key
Menurut Connolly dan Begg (2010), Alternate Key adalah sebuah
candidate key yang tidak terpilih untuk menjadi primary key.
2.1.8.5 Strong and Weak Entity Types
Menurut Connolly dan Begg (2010), Strong entity type merupakan entity
type yang keberadaannya tidak bergantung pada entity lain dan dapat
diidentifikasikan secara unik menggunakan primary key.
Menurut Connolly dan Begg (2010), Weak entity type merupakan entity
type yang keberadaannya bergantung pada entity lain dan dapat diidentifikasikan
secara unik menggunakan primary key.
2.1.8.6 Structural Constraint
Batasan (constraint) yang ditempatkan pada entity types yang
berpartisipasi dalam suatu relationship. Batasan utama dalam suatu relationship
tersebut disebut multiplicity. Menurut Connolly dan Begg (2010), multiplicity
adalah jumlah peristiwa yang mungkin dari entity type yang terhubung dengan
peristiwa dari entity type lain yang terhubung melalui relationship.
Derajat relationship yang umum digunakan adalah binary relationship
dan terbagi atas :
40
1. One-to-One (1:1) Relationship
Mengelola
1..1 1..1 0..1
Gambar 2.6 Contoh Multiplicity One-to-One (1:1) Relationship
Pada gambar 2.6, dapat dilihat bahwa entity type Manajer dapat
mengelola zero atau one cabang, kemudian tempatkan 0..1 disamping
entity type Cabang. Cabang direpresentasikan mempunyai one manajer,
kemudian tempatkan 1..1 disamping entity type Manajer.
2. One-to-Many (1:*) Relationship
Mengawasi
0..1 0..1 0..*
Gambar 2.7 Contoh Multiplicity One-to-Many (1:*) Relationship
Pada gambar 2.7, dapat dilihat bahwa entity type Manajer dapat
mengawasi zero atau many barang sewaan, kemudian tempatkan 0..*
disamping entity type BarangSewa. BarangSewa direpresentasikan dapat
Cabang
NomorCabang
Manajer
NomorManajer
multiplicity
BarangSewa
NomorBarang
Manajer
NomorManajer
multiplicity
41
diawasi oleh one manajer, kemudian tempatkan 0..1 disamping entity type
Manajer.
3. Many-to-Many (*:*) Relationship
Mengiklankan
0..* 1..*
Gambar 2.8 Contoh Multiplicity Many-to-Many (*:*) Relationship
Pada gambar 2.8, dapat dilihat bahwa entity type SuratKabar dapat
mengiklankan one atau many barang sewaan, kemudian tempatkan 1..*
disamping entity type BarangSewa. BarangSewa direpresentasikan dapat
diiklankan oleh many SuratKabar, kemudian tempatkan 0..* disamping
entity type SuratKabar.
Menurut Connolly dan Begg (2010), multiplicity terbentuk dari
dua constraint yang berbeda, yaitu :
a. Cardinality
Cardinality menggambarkan jumlah maksimum suatu
relationship occurences yang memungkinkan entity dapat
berpartisipasi.
b. Participation
Participation menetapkan apakah semua atau beberapa entity
occurences dapat berpartisipasi dalam suatu relationship.
BarangSewa
NomorBarang
SuratKabar
NamaSuratKabar
multiplicity
42
2.2 Teori Dasar Khusus
Berikut ini merupakan teori-teori khusus yang berkaitan dengan topik,
meliputi Help Desk, Peminjaman, Goods Receive, Checklist, Projects, dan alat
bantu yang digunakan, misal: Internet, Intranet, World Wide Web, URL,
Protocol, HTML, PHP, Interaksi Manusia dan Komputer, dan Microsoft SQL
Server, Data Flow Diagram, Flowchart, dan State Transition Diagram (STD).
2.2.1 Help Desk
Menurut Harisno dan Jingga (2011), help desk pada dasarnya adalah
sebuah center point dimana masalah dilaporkan dan diatur secara terurut dan
diorganisasikan. Umumnya, help desk merupakan bagian pelengkap dari sebuah
fungsi pelayanan, dan bertanggung jawab sebagai sumber dari pemecahan
masalah lainnya.
Berdasarkan pendapat Tarmuji (2008), help desk adalah seseorang yang
melayani pengguna sistem serta teknologi informasi di suatu institusi tertentu.
Adapun tujuan help desk menurut Tarmuji (2008), yaitu:
1. Mampu memberikan solusi pemecahan masalah (troubleshooting) terhadap
berbagai permasalahan yang dihadapi oleh pengguna.
2. Mengurus setiap keluhan/permintaan pengguna dan tindak lanjutnya.
3. Mengetahui setiap permasalahan yang sedang/masih dalam proses perbaikan
dan memastikan tidak ada yang terlewat dalam penelusuran masalah.
4. Meningkatkan respon terhadap permintaan pengguna dalam
menyempurnakan dan menciptakan aplikasi.
43
5. Memperoleh basis data permasalahan dan solusinya yang dapat digunakan
sebagai acuan dalam menyelesaikan setiap permasalahan.
Harisno dan Jingga (2011) menyatakan bahwa help desk bekerja dimulai
dengan sistem back end help desk yang menerima trouble ticket. Trouble ticket
sendiri merupakan sebuah request yang sudah diinisialisasi atau permintaan
tanggapan terhadap keluhan atau pertanyaan yang diajukan oleh para pengguna.
Setelah menerima trouble ticket, proses penanganan terjadi melalui tahapan
admin help desk dan tahapan teknisi.
2.2.2 Peminjaman
Menurut Kamus Besar Bahasa Indonesia (2004), peminjaman merupakan
salah satu unsur dari tiga unsur transaksi. Peminjaman berasal dari kata pinjam
yang artinya memakai barang (uang dan sebagainya) milik orang lain untuk
waktu tertentu. Maka, peminjaman adalah suatu proses memberikan sesuatu
kepada seseorang dan harus dikembalikan lagi kepada yang memberikan.
2.2.3 Goods Receive
Menurut Behera (2007), Goods Receive (GR) merupakan proses
penerimaan barang yang kemudian disimpan di gudang. Barang yang diterima
mengacu dari Purchase Order (PO) yang dibuat oleh bagian produksi. Ketika
barang diterima, persediaan akan meningkan dan dokumen lainnya yang
berkaitan akan disesuaikan.
44
2.2.4 Checklist
Menurut Prytherch (2005) dalam buku kumpulan glossary Harrods,
checklist merupakan sebuah catatan yang terdiri dari daftar atas pekerjaan yang
sedang dilakukan setelah diterima.
2.2.5 Projects
Menurut Lewis (2007), project merupakan suatu pekerjaan yang bersifat
sementara yang dilakukan untuk menghasilkan produk, layanan, ataupun hasil
yang unik. Hal ini memiliki makna bahwa sebuah project dilakukan hanya sekali,
jika terjadi secara terus menerus, maka itu bukanlah sebuah project. Sebuah
project harus mempunyai waktu awal, waktu akhir, anggaran, dan cakupan yang
jelas agar pekerjaan dapat selesai, serta persyaratan kinerja spesifik yang harus
dipenuhi.
2.2.6 Internet
Menurut Fiati (2005), Internet berasal dari kata Interconnection
Networking yang artinya adalah hubungan dari beberapa komputer dengan
berbagai macam tipe yang membentuk sistem jaringan yang mencakup seluruh
dunia melalui jalur komunikasi seperti telepon.
Menurut Tanenbaum (2003), Internet merupakan kumpulan dari beberapa
jaringan yang berbeda yang menggunakan protokol tertentu dan menyediakan
pelayanan tertentu.
2.2.7 Intranet
Menurut pendapat Connolly dan Begg (2010), Intranet merupakan sebuah
Web site atau kelompok situs yang tergabung ke dalam sebuah organisasi, hanya
45
dapat di akses oleh anggota dari organisasi tersebut. Intranet terhubung ke
internet publik yang lebih luas melalui firewall dengan batasan yang tergantung
pada tipe informasi yang dapat masuk dan keluar intranet.
Menurut Connolly dan Begg (2010), Firewall sendiri merupakan sebuah
sistem yang didesain untuk mencegah pihak yang tidak berwenang untuk
mengakses jaringan pribadi.
2.2.8 World Wide Web
Menurut Connolly dan Begg (2010), World Wide Web, yang biasa disebut
Web, merupakan sistem berbasis hypermedia (tambahan dari hypertext yang
menyediakan fasilitas multimedia, seperti suara dan video –
www.oxforddictionaries.com) yang menyediakan sarana untuk mencari
informasi di internet dengan cara non-sekuensial menggunakan hyperlinks
(tautan dari sebuah dokumen hypertext ke dokumen lainnya, biasanya teraktivasi
dengan mengklik sebuah kata – www.oxforddictionary.com). Informasi dalam
web dapat berupa sekumpulan teks, grafik, gambar, suara, dan video.
Web sendiri memiliki dua peran, yaitu sebagai clients dan sebagai
servers.
2.2.8.1 Web Clients
Web clients biasa juga disebut sebagai Web browsers, yang berperan
sebagai peminta informasi. Beberapa contohnya yaitu Microsoft Internet
Explorer, Firefox, Opera, dan Safari.
Langkah-langkah yang dilakukan oleh Web browsers menurut
Tanenbaum (2003) yaitu:
46
1. Menentukan URL yang dipilih oleh pengguna
2. Meminta IP address kepada DNS
3. Membuat koneksi TCP ke server
4. Meminta file tersebut
5. Menampilkan isi file yang telah diterima
2.2.8.2 Web Server
Web servers berperan sebagai penyedia informasi. Beberapa contohnya
yaitu Apache HTTP Server, Microsoft Internet Information Server (IIS), dan
Google Web Server (GWS).
Langkah-langkah yang dilakukan oleh Web server menurut Tanenbaum
(2003) yaitu:
1. Menerima koneksi TCP dari client
2. Menerima nama dari file yang diminta
3. Mengambil file dari disk
4. Memberikan file ke client
5. Melepaskan koneksi TCP
2.2.9 URL
Menurut Tanenbaum (2003), URL merupakan singkatan dari Uniform
Resource Locators. URL berfungsi sebagai nama dari keseluruhan sebuah
halaman web yang mempunyai tiga bagian, yaitu protokol, nama DNS dari mesin
yang menyimpan halaman tersebut, dan nama unik dari halaman itu sendiri.
Seperti misalnya http://www.cs.vu.nl/video/index-en.html. Protokolnya adalah
47
http, nama DNS-nya adalah www.cs.vu.nl (sebuah universitas yang terletak di
kota Amsterdam, Belanda), dan nama file-nya adalah video/index-en.html.
2.2.10 Protocol
Tanenbaum (2003) menyatakan bahwa protocol merupakan persetujuan
tentang bagaimana komunikasi akan dijalankan antara pihak-pihak yang saling
berkomunikasi.
2.2.10.1 TCP/IP
Menurut Connolly dan Begg (2010), TCP/IP merupakan singkatan dari
Transmission Control Protocol/Internet Protocol. TCP bertanggung jawab untuk
memastikan pengiriman pesan yang benar dari satu komputer ke komputer
lainnya, sementara IP mengatur proses mengirim dan menerima paket data antara
mesin berdasarkan alamat tujuan 4-bit yaitu IP address.
2.2.10.2 HTTP
Mengacu pada pendapat Connolly dan Begg (2010) menyatakan bahwa
HTTP merupakan singkatan dari HyperText Transfer Protocol. Protokol ini
digunakan untuk mentransfer halaman Web melalui internet. HTTP menjelaskan
bagaimana client dan server berhubungan.
Transaksi dalam HTTP terdiri dari:
1. Koneksi: client membuat koneksi dengan Web server.
2. Permintaan: client mengirimkan pesan permintaan kepada Web server.
3. Tanggapan: Web server mengirimkan tanggapan atas permintaan client
(contoh: dokumen HTML)
48
4. Tutup: koneksi ditutup oleh Web server.
2.2.11 HTML
Menurut Tanenbaum (2003), HTML merupakan singkatan dari
HyperText Markup Language. Halaman-halaman pada web ditulis menggunakan
HTML yang memperbolehkan pengguna untuk membuat halaman web
mengandung teks, grafik, dan petunjuk ke halaman web lainnya. HTML
merupakan markup language yang berarti bahasa untuk mendeskripsikan
bagaimana bentuk format dokumen, seperti penggunaan <b> dan </b> untuk
membuat tulisan menjadi tebal (bold).
2.2.12 PHP
Menurut Ullman (2012), PHP merupakan singkatan dari PHP: Hypertext
Preprocessor. PHP merupakan scripting language yang berarti PHP didesain
untuk melakukan sesuatu hanya ketika suatu peristiwa terjadi, contohnya ketika
user menyerahkan formulir. PHP sendiri tertanam di dalam HTML dan
merupakan teknologi server-side. Hal ini memiliki makna bahwa semua yang
dilakukan oleh PHP terjadi di dalam server (berkebalikan dengan client yang
berarti komputer digunakan oleh orang yang melihat web site-nya).
Berdasarkan pendapat Connolly dan Begg (2010) mengatakan bahwa
salah satu keuntungan dalam menggunakan PHP yaitu kemampuan ekstensinya,
dan sejumlah modul ekstensinya telah dipersiapkan untuk mendukung hal-hal
seperti konektivitas basis data, mail, dan XML.
49
2.2.13 Interaksi Manusia dan Komputer
Menurut Karray, Alemzadeh, Saleh et al (2008), interaksi manusia dan
komputer merupakan sebuah perancangan yang harus menghasilkan kecocokan
antara pengguna, mesin, dan layanan yang dibutuhkan, agar mencapai layanan
yang berkualitas dan optimal.
2.2.13.1 Delapan Aturan Emas
Menurut Shneiderman dan Plaisant (2010), terdapat delapan aturan emas
dalam merancang sebuah user interface, yaitu:
1. Berusaha untuk konsisten
2. Memenuhi kegunaan secara universal
3. Memberikan umpan balik yang informatif
4. Merancang dialog yang memberikan penutupan (keadaan akhir)
5. Memberikan pencegahan kesalahan dan penanganan kesalahan yang
sederhana
6. Memungkinkan pembalikan aksi yang mudah
7. Mendukung pusat kendali internal
8. Mengurangi beban memori jangka pendek
2.2.13.2 Lima Faktor Manusia Terukur
Berdasarkan pendapat Shneiderman dan Plaisant (2010), selain delapan
aturan emas ada baiknya juga memperhatikan lima faktor manusia terukur,
yaitu:
1. Waktu untuk mempelajari
50
2. Kecepatan performa
3. Tingkat rata-rata kesalahan yang dilakukan pengguna
4. Retensi dari waktu ke waktu
5. Kepuasan subjektif
2.2.14 MySQL
Ullman (2012) menyatakan bahwa MySQL merupakan basis data open-
source yang paling terkenal, yang dikutip dari www.mysql.com. MySQL biasa
digunakan bersama dengan PHP, dan perangkat lunak MySQL sendiri dilengkapi
dengan database server yang menyimpan data sebenarnya, aplikasi client yang
berbeda untuk berinteraksi dengan database server tersebut, dan beberapa
perangkat lainnya.
2.2.15 Data Flow Diagram
Menurut Whitten dan Bentley (2007), Data Flow Diagram (DFD) adalah
model proses yang digunakan untuk menggambarkan aliran data pada suatu
sistem dan memproses suatu tugas dalam sebuah sistem.
Menurut Pressman (2010), Data Flow Diagram (DFD)
merepresentasikan bagaimana data object ditransformasikan bergerak dalam
suatu sistem. Data object digambarkan dengan tanda panah yang menunjukkan
aliran suatu proses input-process-output dalam suatu sistem.
Tujuan penggunaan DFD menurut Pressman (2010) adalah media
penghubung antara users dan pengembang sistem.
51
Menurut pendapat Whitten dan Bentley (2007), ada 4 simbol dalam DFD.
1. Proses
Gambar 2.9 Simbol Proses Pada DFD Menurut Gane dan Sarson
Gane dan Sarson menggambarkan simbol proses dengan rounded
rectangles. Proses menggambarkan pekerjaan yang dilakukan oleh sistem
sebagai respon terhadap aliran data yang masuk dan menghasilkan keluaran
yang diinginkan.
2. External Agents
Gambar 2.10 Simbol External Agent Pada DFD Menurut Gane dan
Sarson
Gambar 2.11 Simbol External Agent Pada DFD Menurut
DeMarco/Yourdo
External agent atau external entity merupakan simbol orang luar,
kesatuan organisasi, sistem yang berinteraksi dengan sistem.
52
3. Data Store
Gambar 2.12 Simbol Data Store Pada DFD Menurut Gane dan
Sarson
Gambar 2.13 Simbol Data Store Pada DFD Menurut DeMarco/Yourdo
Data store menggambarkan tempat penyimpanan data yang dapat
digunakan untuk penggunaan selanjutnya. Sinonimnya adalah file atau basis
data.
4. Arrow
Gambar 2.14 Simbol Arrow pada DFD
Arrow menggambarkan arah aliran data berupa masukan data ke proses
dan keluaran data dari proses.
2.2.16 Flowchart
Menurut Whitten dan Bentley (2007), flowchart merupakan tipe dari proses
model dalam bagian programming yang menunjukkan tahapan-tahapan dalam suatu
sistem. Beberapa perbedaan antara DFD dan flowchart, yaitu :
1. Proses pada DFD dioperasikan secara bersamaan (parallel) dalam waktu yang sama,
sedangkan flowchart hanya hanya terjadi sekali proses eksekusi.
53
2. DFD menunjukkan aliran data yang melalui sebuah sistem, sedangkan flowchart
menunjukkan aliran data yang berurutan dan perpindahan suatu proses.
3. Proses pada DFD dapat terjadi dalam waktu yang berbeda-beda, sedangkan
flowchart merupakan bagian dari program tunggal dengan waktu yang sama.
Tabel 2.2 Simbol-Simbol Dalam Flowchart
Simbol Nama Keterangan
Terminal Menyatakan permulaan atau akhir suatu program
Manual Menyatakan suatu tindakan (process) yang tidak dilakukan oleh komputer
Process Menyatakan suatu tindakan (process) yang dilakukan oleh komputer
Document Mencetak keluaran dalam bentuk dokumen melalui printer
Decision Menunjukkan suatu kondisi tertentu yang akan menghasilkan dua kemungkinan jawaban : ya / tidak
Connector Menyatakan sambungan dari proses ke proses lainnya dalam halaman yang sama
Offline connector Menyatakan sambungan dari proses ke proses lainnya dalam halaman yang berbeda
54
Flow Menyatakan jalannya arus suatu proses
Manual input Memasukkan data secara manual menggunakan online keyboard
Display Mencetak keluaran dalam layar monitor
Input/output Menyatakan proses input atau output tanpa tergantung jenis peralatannya
2.2.17 State Transition Diagram (STD)
Menurut pendapat Whitten dan Bentley (2007), State Transition Diagram
(STD) merupakan alat untuk menggambarkan urutan dan variasi layar yang
dapat terjadi selama user session berjalan.
Berdasarkan pendapat Whitten dan Bentley (2007) ada 2 simbol dalam
State Transition Diagram (STD), yaitu :
1. State, digambarkan dengan persegi panjang yang merepresentasikan state
atau kondisi suatu sistem.
Gambar 2.15 Simbol State Pada STD
55
2. Transition, digambarkan dengan tanda panah yang merepresentasikan aliran
atau transisi suatu kondisi terjadi. Tiap panah diberi label sebagai ekspresi
aturan. Label yang di atas tanda panah menunjukkan kejadian yang
menyebabkan suatu transisi terjadi. Label yang di bawah tanda panah
menunjukkan aksi yang mengakibatkan suatu kejadian dapat terjadi.
Gambar 2.16 Simbol Transition Pada STD