BAB 2 LANDASAN TEORI 2.1 Pendekatan Basis Data 2.1.1

advertisement
BAB 2
LANDASAN TEORI
2.1
Pendekatan Basis Data
2.1.1
Pengertian Basis Data
Basis data adalah sekumpulan relasi data logika dan deskripsi dari data,
dirancang untuk memenuhi kebutuhan organisasi. (Connolly dan Begg, 2005).
Sedangkan sistem basis data adalah sekumpulan aplikasi progam yang berinteraksi
dengan database melalui DBMS dan basis data itu sendiri. (Connolly dan Begg,
2005).
Menurut Michael V. Manino (2001), basis data adalah sekumpulan data
persisten yang bisa di bagi (shared) dan saling berhubungan (interrelated).
Persisten dalam arti data disimpan pada media penyimpanan yang stabil, contoh :
Magnetic Disk. Dapat di bagi (shared) berarti basis data memiliki banyak
kegunaan dan banyak pengguna sekaligus. Sedangkan saling berhubungan
(interralated) berarti data yang disimpan dalam unit-unit terpisah bisa saling
berhubungan untuk menyediakan data yang utuh.
Dari berbagai sumber definisi di atas, maka dapat disimpulkan bahwa basis
data adalah sekumpulan relasi data persisten yang terhubung secara logika dimana
data tersebut merupakan deskripsi dari satu atau lebih aktivitas dari organisasi
yang bersangkutan yang digunakan oleh aplikasi sistem perusahaan yang bisa
dibagi (shared) dan saling berhubungan (interrelated) serta dirancang untuk
memenuhi kebutuhan organisasi. Sedangkan sistem basis data dapat disimpulkan
7 8 sebagai sekumpulan aplikasi progam yang berinteraksi dengan basis data melalui
DBMS dan basis data itu sendiri serta merupakan suatu sistem penyimpanan
record yang terkomputerisasi.
2.1.2 Database Management System (DBMS)
2.1.2.1 Pengertian Database Management System
Database Management System atau Sistem Manajemen Basis Data
adalah suatu sistem perangkat lunak yang memungkinkan user untuk
mendefinisikan, merawat, dan mengatur pengaksesan terhadap basis data
(Connolly, 2005).
DBMS mempunyai tiga fasilitas utama yaitu:
a. Data Definition Languages (DDL)
Memperbolehkan user untuk mendefinisikan basis data, membuat
spesifikasi basis data, struktur data, dan constraint data untuk disimpan
dalam bentuk basis data.
b. Data Manipulation Languages (DML)
Memperbolehkan
pengguna
untuk
memasukkan,
memperbaharui,
menghapus, dan mengirim data dari suatu basis data.
c. Data Control Languages (DCL)
Memperbolehkan pengguna untuk menjaga agar hanya user yang memiliki
hak akses yang dapat melakukan suatu aksi.
9 2.1.2.2 Komponen Database Management System
Terdapat lima komponen DBMS yaitu:
a. Hardware (Perangkat Keras)
Perangkat Keras digunakan untuk menjalankan DBMS dan
aplikasi. Contoh : Single Personal Computer, Single Main Frame.
b.
Software (Perangkat Lunak)
Komponen perangkat lunak yang terdiri dari perangkat lunak
DBMS itu sendiri dan program-program aplikasi, bersamaan
dengan sistem operasi, termasuk perangkat lunak jaringan jika
DBMS tersebut menggunakan jaringan.
c. Data
Merupakan komponen yang paling penting dalam DBMS,
khususnya dari sudut pandang end user mengenai data. Data
merupakan komponen yang merupakan inti dari DBMS itu
sendiri.
d. Prosedur
Merupakan cara untuk menjalankan sistem, seperti bagaimana
masuk ke dalam DBMS, memulai dan menghentikan DBMS, dan
juga bagaimana cara untuk membuat backup data dari suatu basis
data.
10 e. Manusia
Komponen terakhir dalam DBMS adalah manusia. Manusia yang
terlibat dengan sistem DBMS adalah Database Administrator
(DBA), perancang basis data, pengembang aplikasi, dan end user.
Gambar 2.1 : Gambar Komponen Database Management System
2.1.3 Database System Development Lifecycle (DSDLC)
Terdapat tahapan–tahapan yang dilalui dalam merancang sebuah sistem
basis data yang disebut dengan Database System Development Lifecycle atau
disingkat dengan DSDLC. Untuk sistem basis data yang kecil, maka lifecycle yang
terjadi tidaklah terlalu kompleks, sedangkan untuk sistem basis data yang besar,
lifecycle yang terjadi bisa menjadi sangat kompleks.
Berikut ini adalah gambar dari siklus hidup sebuah aplikasi basis data
(Connolly dan Begg 2005) :
11 Gambar 2.2 : Gambar Database System Development Lifecycle (DSDLC)
a. Database Planning
Tujuan dari tahap ini adalah merencanakan agar tahap–tahap dari
aplikasi basis data dapat direalisasikan secara efektif dan efisien. Pada tahap
ini, penentuan misi dari proyek basis data sangatlah penting untuk
menentukan tujuan utama dari aplikasi basis data.
12 b. System Definition
Menggambarkan ruang lingkup dan batasan dari aplikasi basis data,
pandangan user, dan daerah aplikasi basis data. Pandangan user
mendefinisikan apa yang dibutuhkan pada sebuah aplikasi basis data dari
sudut pandang sebuah jabatan tertentu atau daerah aplikasi basis data.
Sebuah aplikasi basis data dapat memiliki satu atau lebih pandangan user.
c. Requirement Collection and Analysis
Proses pengumpulan dan analisis informasi mengenai bagianbagian dari
sebuah organisasi yang didukung oleh aplikasi basis data, dan menggunakan
informasi tersebut untuk mengidentifikasikan kebutuhan user akan sistem
yang baru.
Ada 3 (tiga) pendekatan untuk mengatur kebutuhan dari sebuah aplikasi
basis data dengan banyak pandangan user yaitu :
1. The Centralized approach
Kebutuhan akan setiap user dikumpulkan menjadi satu kesatuan
kebutuhan untuk aplikasi basis data yang baru.
2. The view integration approach
Kebutuhan akan setiap user digunakan untuk membangun model data
yang terpisah, yang kemudian hasil dari model data tersebut digabung di
dalam tahapan database design.
3. A combination of both approach
Pendekatan yang merupakan gabungan dari kedua pendekatan diatas.
13 d. Database Design
Suatu proses diperlukan bagi perancangan basis data yang dibagi
menjadi tiga tahap utama, yaitu perancangan basis data konseptual,
perancangan basis data logikal, dan perancangan basis data fisikal (Connolly
dan Begg, 2005).
Dalam tahap ini, akan dilakukan peninjauan ulang dari pendekatan
utama ke desain basis data. Kemudian akan dibahas tujuan dan kegunaan
dari model data dalam desain basis data. Pada perancangan basis data
terdapat tiga tahap utama yaitu :
1.
Perancangan Basis Data Konseptual
Tahap - tahap dalam perancangan konseptual basis data :
Tahap 1: Membangun Model Data Konseptual Lokal untuk setiap
View
•
Tahap 1.1 : Mengidentifikasikan entitas.
•
Tahap 1.2 : Mengidentifikasikan hubungan.
•
Tahap 1.3 : Mengidentifikasikan dan Menghubungkan
Atribut dengan Entitas atau Relasinya.
•
Tahap 1.4 : Menentukan Domain Atribut.
•
Tahap 1.5 : Menentukan Atribut-Atribut Candidate,
Primary, dan Alternate Key.
•
Tahap 1.6 (optional step) : Mempertimbangkan Penggunaan
dari Konsep Permodelan Enhanced.
•
Tahap 1.7 : Memerikasa Model untuk Redudansi
14 •
Tahap 1.8 : Melakukan Validasi Model Konseptual Lokal
terhadap Transaksi User.
•
Tahap 1.9 : Meninjau Ulang Model Data Konseptual dengan
User.
2. Perancangan Basis Data Logikal
Tahap - tahap dalam perancangan logikal basis data :
Tahap 2 : Membangun dan Memvalidasi Model Data Logikal Global
untuk Setiap Sudut Pandang.
•
Tahap 2.1 (optional): Menghilangkan bagian yang tidak
sesuai dengan model relasi.
•
Tahap 2.2 : Validasi Relasi dengan Menggunakan Teknik
Normalisasi.
•
Tahap 2.3 : Validasi Relasi dengan Transaksi-Transaksi
yang Sesuai dengan Kebutuhan User.
•
Tahap 2.4 : Menentukan Batasan-Batasan Integritas.
•
Tahap 2.5 : Meninjau Ulang Model Data Logikal Lokal
terhadap Kebutuhan User.
•
Tahap 2.6 (optional) : Menggabungkan model data logikal
lokal ke dalam model data logikal global.
9 Tahap 2.6.1 : Menggabungkan Model Data Logikal
Lokal ke dalam Model Data Logikal Global.
9 Tahap 2.6.2 : Memvalidasi Model Data Logikal Global.
15 9 Tahap 2.6.3 : Meninjau Ulang Model Data Logika
Global Terhadap Kebutuhan User.
•
Tahap 2.7 : Memeriksa Model Data untuk Kebutuhan Masa
Depan.
3. Perancangan Basis Data Fisikal
Tahap - tahap dalam perancangan fisikal basis data :
Tahap 3 : Menerjemahkan Model Data Logikal Global untuk DBMS
yang Digunakan.
•
Tahap 3.1 : Merancang Relasi Dasar
•
Tahap 3.2 : Merancang Representasi dari Derived Data.
•
Tahap 3.3 : Merancang Batasan Umum.
Tahap 4 : Merancang Representasi Fisikal
•
Tahap 4.1 : Menganalisa Transaksi.
•
Tahap 4.2 : Memilih Organisasi file.
•
Tahap 4.3: Memilih Indeks.
•
Tahap 4.4 : Memperkirakan Kebutuhan Disk Space.
Tahap 5 : Perancangan User Views.
Tahap 6 : Perancangan Mekanisme Keamanan.
Tahap 7 : Mempertimbangkan Kemunculan Redudansi Terkontrol.
•
Tahap 7.1 : Menggabungkan relasi 1:1
•
Tahap 7.2 : Melakukan duplikasi pada atribut non key pada
relasi 1:* untuk mengurangi penggunaan joins.
16 •
Tahap 7.3 : Melakukan duplikasi pada atribut foreign key
pada relasi 1:* untuk mengurangi penggunaan joins.
•
Tahap 7.4 : Melakukan duplikasi pada atribut pada relasi *:*
untuk mengurangi penggunaan joins.
•
Tahap 7.5 : Mengenali repeating groups.
•
Tahap 7.6 : Menggabungkan lookup tables dengan relasi
dasar.
•
Tahap 7.7 : Membuat tabel ekstraksi.
Tahap 8 : Memonitor Sistem Operasional.
e. DBMS Selection (optional)
Pada tahap ini dilakukan pemilihan DBMS yang sesuai dan
mendukung aplikasi basis data.
Tahapan dalam memilih DBMS yang tepat antara lain :
1.
Mendefinisikan syarat-syarat sebagai referensi.
Untuk menentukan tujuan dan ruang lingkup dari pembelajaran
dan tugas yang harus dikerjakan.
2.
Daftar singkat dari dua atau tiga produk.
Kriteria yang diperlukan untuk keberhasilan implementasi untuk
menghasilkan produk DBMS seperti dana yang tersedia, tingkat
dukungan vendor, kecocokan dengan perangkat lunak lainnya, dan
apakah produk berjalan pada perangkat keras tertentu.
17 3.
Mengevaluasi produk–produk.
Terdapat beberapa fitur yang digunakan untuk mengevaluasi
produk-produk DBMS. Untuk tujuan dari evaluasi, fitur-fitur ini
dapat digabung menjadi sebuah kelompok.
4.
Merekomendasikan pilihan dan membuat laporan.
Tahap
terakhir
dari
pemilihan
DBMS
ini
adalah
mendokumentasikan proses dan menghasilkan pernyataan akan
penemuan dan rekomendasi dari produk DBMS tertentu.
f. Application Design
Merancang desain untuk user interface dan program aplikasi yang
menggunakan dan memproses basis data.
Terdapat 2 (dua) aspek penting dalam mendesain aplikasi, yaitu :
1.
Transaction Design
Suatu aksi yang dilakukan oleh seorang user atau program aplikasi
untuk mengakses atau mengubah isi dari basis data. Transaksi
mempresentasikan keadaan sesungguhnya seperti : registrasi klien,
peminjaman alat-alat. Transaksi semacam ini harus dimasukkan
kedalam basis data untuk menjamin data yang berada di basis data
tetap dalam terkini dan mendukung informasi yang dibutuhkan
oleh user.
18 Terdapat 3 (tiga) jenis transaksi antara lain :
a.
Retrieval transaction : Digunakan untuk mendapatkan data
untuk diperlihatkan di monitor atau di dalam pembuatan
laporan.
b.
Update transaction : Digunakan untuk memasukkan record
baru, menghapus record lama, ataupun mengubah record
yang ada.
c.
Mixed transaction : Melibatkan kedua jenis transaksi yaitu
mendapatkan dan mengupdate data.
2.
User Interface Design
Sebelum mengimplementasikan sebuah laporan, penting sekali
untuk membuat sebuah layout.
Beberapa petunjuk penting untuk membuat report antara lain :
a.
Penetapan judul yang bermakna
Informasi yang disampaikan dalam judul harus jelas.
b.
Instruksi yang dapat dipahami
Menggunakan istilah yang mudah dimengerti dan seharusnya
dapat menyampaikan instruksi kepada user.
c.
Pengelompokan logika dan urutan kolom
Kolom yang saling berhubungan seharusnya diurutkan
bersamaan dalam laporan.
d.
Tampilan form yang menarik
Laporan yang dibuat harus dapat menarik bagi user.
19 e.
Penggunaan judul kolom yang jelas
Judul kolom haruslah mudah diketahui.
f.
Penggunaan istilah dan singkatan yang konsisten
g.
Penggunaan warna yang konsisten
Warna digunakan untuk tampilan dan memperjelas pesan
yang penting.
h.
Ruang dan batasan harus terlihat untuk mengisi kolom
Seorang user seharusnya dapat melihat ruang yang tersedia
untuk setiap kolomnya.
i.
Pergerakan kursor yang baik
j.
Perbaikan kesalahan untuk satu huruf dan semua kolom
k.
Pesan error pada nilai yang tidak dapat diterima
Pesan error harus muncul jika user melakukan suatu
kesalahan.
l.
Kolom pilihan harus terlihat dengan jelas
m. Terdapat kolom untuk pesan penjelasan
n.
Pemberian tanda selesai
Harus jelas bagi user ketika proses pengisian laporan selesai.
g. Prototyping (optional)
Proses membangun sebuah model kerja dari aplikasi basis data. Tujuan
utama dari tahap ini adalah untuk member izin user menggunakan prototype
untuk mengidentifikasikan fitur dalam sistem berjalan baik, dan jika
20 memungkinkan dapat memberi saran perbaikan atau menambah fitur baru ke
dalam aplikasi basis data.
h. Implementation
Proses realisasi fisikal dari pembuatan basis data yang baru dan desain
aplikasi. Implementasi basis data menggunakan DDL (Data Definition
Language) dari DBMS yang terpilih, sedangkan program aplikasi di
implementasikan dengan 3GL atau 4GL (Third or Fourth Generation
Language).
i. Data Conversion and Loading
Mengirim data ke basis data yang baru dan mengubah aplikasi yang berjalan
ke basis data yang baru. Tahap ini dilakukan hanya jika sistem basis data
yang baru menggantikan sistem basis data yang lama.
j. Testing
Suatu proses mengeksekusi program aplikasi dengan menemukan kesalahan
apa saja yang terjadi. Sebelum program aplikasi dipakai, sistem basis data
yang dibuat harus benar-benar dilakukan uji coba. Sebaiknya menggunakan
perencanaan testing dan menggunakan data yang realistis, sehingga
keseluruhan sistem dapat diuji coba.
k. Operational Maintainance
Suatu proses memantau dan memelihara sistem dan diikuti dengan instalasi
pada sistem yang berjalan. Proses pemantauan sangat penting untuk menjaga
kelangsungan sistem dapat berjalan dengan baik atau tidak.
21 2.1.4 Entitiy Relationship Modeling (ER Modeling)
2.1.4.1 Definisi ER Modeling
ER Modelling adalah sebuah pendekatan top-down untuk
merancang basis data yang dimulai dengan mengidentifikasi data yang
penting yang disebut entitas dan relationship antar data harus
dipresentasikan dalam model (Connoly, 2005).
2.1.4.2 Konsep ER Modeling
Beberapa konsep dasar dalam model E-R yaitu :
•
Entitas (Entity)
Entity adalah sekumpulan objek yang memiliki property yang
sama,
yang
diidentifikasikan
di
dalam
organisasi
karena
keberadaannya yang bebas (independent existence) (Connolly, 2005).
Sedangkan entity occurence adalah sebuah objek dari satu entity yang
dapat diidentifikasikan secara unik (Connolly, 2005).
Setiap entity dilambangkan dengan sebuah persegi panjang yang
diberi nama dari entity tersebut. Nama entity biasanya adalah kata
benda tunggal. Representasi diagram entity terlihat pada gambar 2.3.
22 Entity
Staff
Branch
Gambar 2.3 : Gambar Representasi Diagram dari Tipe Entity
Pegawai dan Cabang (Connolly, 2005)
Entity dapat diklasifikasikan menjadi :
•
Entity Kuat, yaitu tipe entity yang keberadaannya tidak
bergantung pada tipe entity lainnya (Connolly, 2005).
•
Entity Lemah, yaitu tipe entity yang keberadaannya
bergantung pada tipe entity lainnya (Connolly, 2005).
Strong
Client
ClientNo {PK} Name fName lName telNo Weak
States ►
Preference
prefType maxRent Gambar 2.4 : Gambar Representasi Diagram Entity Kuat dan
Entity Lemah (Connolly, 2005)
23 •
Relationship
Relationship adalah hubungan antar entity yang memiliki arti
(Connolly, 2005). Sedangkan relationship occurence adalah sebuah
hubungan yang dapat diidentifikasikan secara unik, yang meliputi
sebuah kejadian (occurrence) dari setiap entity di dalam relationship
(Connolly, 2005).
Relationship
digambarkan
dengan
sebuah
garis
yang
menghubungkan entity – entity 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 frase singkat yang meliputi sebuah kata kerja seperti
DisewaOleh. Sedangkan tanda panah ditempatkan di samping nama
relationship yang mengindikasikan arah bagi pembaca untuk
mengartikan nama dari suatu relationship ditulis dengan huruf besar.
Representasi diagram dari suatu tipe relationship terlihat pada gambar
2.5.
Relationship
name
Staff
◄Has
Branch
Branch has Staff
Gambar 2.5 : Gambar Representasi Diagram Relationship
(Connolly, 2005)
24 •
Atribut
Atribut adalah property sebuah entity atau relationship
(Connolly, 2005).
a.
Domain Attribute
Domain attribute merupakan kumpulan dari nilai – nilai yang
diperbolehkan untuk satu atau lebih atribut, misalnya untuk
atribut NIM harus diisi nilai antara 1 sampai 20.
b. Simple and Composite Attributes
i. Simple attribute adalah atribut yang terdiri dari komponen
tunggal dengan keberadaannya yang bebas (Connolly, 2005).
Misalnya adalah jabatan, gaji pada entity staff.
ii. Composite attribute adalah atribut yang terdiri dari beberapa
komponen, dan keberadaan komponen tersebut adalah bebas
(Connolly, 2005).
c. Single – Value and Multi – Value Attributes
i. Single - value attribute adalah atribut yang hanya memiliki
sebuah nilai untuk setiap tipe entity (Connolly, 2005, p351p352). Sebagian besar atribut merupakan single – value,
contohnya pada entity
ii. Derived Attributes
Derived
attributes
merupakan
sebuah
atribut
yang
merepresentasikan sebuah nilai yang berasal dari nilai sebuah
atribut yang berhubungan atau set atribut, dan tidak harus
berada dalam tipe entity yang sama (Connolly,
25 2005).
•
Keys
Candidate key adalah himpunan atribut yg minimal yang secara
unik mengidentifikasikan setiap occurence dari sebuah entity
(Connolly, 2005).
Composite key adalah sebuah candidate key yang terdiri atas dua
atau lebih atribut (Connolly, 2005).
Primary key adalah candidate key yang terpilih untuk
mengidentifikasikan secara unik setiap occurence dari sebuah entity
(Connolly, 2005). Pada setiap entity biasanya terdapat lebih dari satu
candidate key yang kemudian akan dipilih salah satu untuk dijadikan
primary key. Pemilihan primary key berdasarkan panjang atribut,
jumlah minimal atribut, dan keunikannya.
Alternate key adalah setiap candidate key yang tidak terpilih
menjadi primary key, atau biasa disebut dengan secondary key
(Connolly, 2005)
26 Gambar 2.6 : Gambar Representasi Diagram Entity Pegawai
dan Cabang Beserta Atribut dan Primary Key-nya (Connolly,
2005)
•
Batasan Struktural (Structural Constraints)
Batasan–batasan
yang
menggambarkan
pembatasan
pada
relationship seperti yang ada pada “real world” harus diterapkan pada
entity yang ikut serta pada sebuah relationship dinamakan multiplicity
(Connolly, 2005).
Multiplicity merupakan sejumlah kemunculan (occurence) yang
mungkin dari sebuah tipe entity yang berhubungan dengan kemunculan
tunggal dari sebuah tipe entity yang berhubungan melalui relasi
tertentu (Connolly, 2005).
Derajat yang umum pada suatu relationship adalah binary
relationship, yang terdiri atas :
27 •
-
One-to-one (1:1) Relationship
-
One-to-many (1:*) Relationship
-
Many-to-many (*:*) Relationship
Cardinality dan Participation Constraints
Multiplicity terdiri dari dua batasan yaitu cardinality dan
participation. Cardinality menggambarkan jumlah maksimum relasi
yang mungkin terjadi dari sebuah entity yang berpartisipasi dalam tipe
relasi. One-to-one (1:1), one-to-many (1:*), dan many-to-many (*:*)
merupakan cardinality dari relasi binary, participation menentukan
apakah semua atau hanya sebagian dari entity yang berpartisipasi
dalam relasi.
Gambar 2.7 : Gambar Cardinality dan Participation antara Branch dan
Staff
28 2.1.5 Normalisasi
Normalisasi adalah suatu teknik yang bertujuan untuk menghasilkan
himpunan relasi dengan property yang diinginkan berdasarkan kebutuhankebutuhan data suatu perusahaan (Connolly dan Begg, 2005).
Tujuan dari normalisasi adalah untuk menghilangkan data yang berulang
(redudansi) sehingga mengurangi kompleksitas data, dan untuk memudahkan
dalam modifikasi data.
Manfaat dari normalisasi adalah sebagai berikut :
a.
Meminimalkan jumlah storage space yang digunakan untuk menyimpan data.
b.
Meminimalkan resiko data yang tidak konsisten dalam suatu basis data.
c.
Meminimalkan kemungkinan update and delete anomaly.
d.
Mengoptimalkan stabilitas dari struktur data.
Pada saat suatu data belum dilakukan normalisasi, maka bentuk tersebut
dikenal sebagai Unnormalized Form (UNF) adalah suatu relasi yang terdiri dari
satu atau lebih kelompok yang berulang (repeating group). Repeating group
adalah suatu atribut atau kumpulan atribut dalam suatu tabel yang memiliki lebih
dari satu nilai untuk satu buah primary key pada tabel yang sama.
Normalisasi terdiri dari 3 tahapan yaitu :
a.
First Normal Form (1NF)
Suatu relasi dapat dikatakan 1NF jika titik temu setiap baris dan kolom
pada relasi tersebut mengandung hanya satu nilai (Connolly dan Begg,
2005). Sebuah relasi akan berada dalam keadaan 1NF jika repeating
29 groupnya sudah hilang. Terdapat dua pendekatan untuk menghilangkan
repeating group pada tabel yang tidak normal (unnormalized table), yaitu :
a. Dengan memasukkan data yang sesuai ke dalam kolom yang kosong dari
baris yang mengandung data yang berulang.
b. Dengan menempatkan data yang berulang bersama salinan dari atribut
kunci pada relasi yang terpisah.
b.
Second Normal Form (2NF)
Suatu relasi dikatakan dalam bentuk 2NF jika relasi tersebut telah
berada pada keadaan 1NF dan setiap atribut yang bukan primary key
bergantung sepenuhnya (fully functionally dependent) terhadap primary key
(Connolly dan Begg, 2005).
Full funtional dependency terjadi jika A dan B merupakan atribut dari
suatu relasi, dan B bisa dikatakan bergantung terhadap A, namun bukan
subset dari A (Connolly dan Begg, 2005).
c.
Third Normal Form (3NF)
Suatu relasi dikatakan 3NF jika relasi tersebut telah berada dalam
keadaan 1NF dan 2NF, dan tidak ada atribut yang bukan primary key
bergantung secara transitif (transitively dependent) terhadap primary key
(Connolly dan Begg, 2005).
Transitive dependency adalah sebuah kondisi dimana A, B, dan C
merupakan atribut dari relasi yang jika B bergantung pada A dan C
bergantung pada B maka dapat dikatakan bahwa C disebut bergantung
secara transitif (transitively dependent) terhadap A melalui B (A tidak
functionally dependent terhadap B dan C (Connolly dan Begg, 2005).
30 2.2
Pemahaman Sistem Berbasis Web
2.2.1 Internet
Internet adalah sebuah jaringan dari kumpulan jaringan, yang bertukar
informasi tanpa terlihat, dengan menggunakan standarisasi dan protokol yang
terbuka dan tanpa pemilik. Internet merupakan kumpulan dari banyak jaringan
komputer tunggal yang dimiliki oleh pemerintah, universitas, grup nonprofit, dan
perusahaan. Internet juga merupakan sebuah jaringan packet-switched yang
menggunakan Transmission Control Protocol/Internet Protocol (TCP/IP). User
dapat terkoneksi ke Internet melalui sebuah server LAN, SLIP/PPP, atau melalui
sebuah layanan online (Internet Service Provider).
Internet menyediakan tiga tipe layanan utama: komunikasi, information
retrieval, dan layanan Web. Layanan komunikasi meliputi electronic mail (email),
USENET newsgroup, LISTSERV, chatting, Telnet, Internet telephony, dan
Internet fax. Layanan Information Retrieval meliputi gophers, Archie, WAIS, File
Transfer Protocol (FTP), dan Veronica. Sedangkan layanan Web adalah aplikasi
perangkat lunak yang dikirim sebagai layanan melalui Internet. (Turban, Rainer,
dan Potter, 2003).
2.2.2 Intranet
Menurut Turban, Rainer, dan Potter (2003), intranet adalah jaringan privat
yang menggunakan perangkat lunak Internet dan protokol TCP/IP. Intinya,
intranet adalah Internet privat, atau grup dari segmen privat dari jaringan Internet
publik, digunakan oleh orang-orang yang diberikan otorisasi untuk menggunakan
jaringan tersebut.
31 Keamanan intranet merupakan suatu hal yang penting. Perusahaan dapat
mencegah gangguan yang tidak diinginkan dengan berbagai cara. Public key
security digunakan sebagai perantara otorisasi untuk masuk ke dalam intranet. Ada
dua bagian di dalamnya, yaitu enkripsi dan digital certificate. Enkripsi
mengacaukan data yang keluar, sementara digital certificate seperti kartu identitas
elektronik yang memastikan bahwa orang yang mengakses intranet adalah user
yang valid. Cara lain yang digunakan perusahaan untuk melindungi intranet adalah
dengan menggunakan firewall. Firewall merupakan sebuah alat yang ditempatkan
di antara jaringan internal perusahaan (intranet) dan jaringan eksternal (Internet).
Gambar 2.8 : Gambar Diagram Intranet
2.2.3
World Wide Web (WWW)
WWW merupakan singkatan dari World Wide Web adalah sistem berbasis
hypermedia yang menyediakan layanan browsing informasi di internet dengan
menggunakan hyperlink yang tidak berurutan (Connolly dan Begg, 2005).
32 Web adalah aplikasi internet yang mampu menyimpan sejumlah besar
informasi dan jasa yang diakses melalui internet (Eaglestone dan Ridley, 2001).
Berdasarkan definisi-definisi diatas, maka dapat disimpulkan bahwa web
adalah aplikasi sistem berbasis hypermedia yang menyediakan layanan browsing
informasi di internet dengan menggunakan hyperlink yang tidak berurutan serta
mampu menyimpan sejumlah besar informasi dan jasa yang diakses melalui
internet.
2.2.4
Internet Service Provider
Seringkali disebut Internet Access Provide (IAP) adalah perusahaan yang
menawarkan jasa internet kepada customer-nya melalui teknologi transmisi data
seperti dial up, DSL, wireless, dan sebagainya.
2.2.5
Web Statis dan Web Dinamis
Menurut Connolly dan Begg (2005, p1004), dokumen HTML yang disimpan
dalam file merupakan halaman web statis, isinya tidak akan pernah berubah kecuali
file tersebut diubah, sedangkan isi dari halaman web dinamis dibangun setiap kali
akses. Halaman web dinamis memiliki beberapa fitur yang dimiliki oleh web statis,
yakni sebagai berikut :
• Respon terhadap input yang diberikan oleh pelanggan melalui browser.
• Dapat diubah sesuai keinginan oleh dan untuk setiap pengguna
33 Halaman web dinamis memerlukan hypertext yang harus dibangun oleh
server serta membutuhkan script yang menampilkan konversi dari format data yang
berbeda ke HTML
2.2.6
Web Database
2.2.6.1 Definisi Web Database
Web database merupakan aplikasi penggunaan web sebagai
platform yang menghubungkan pengguna dengan antarmuka satu atau
lebih basis data (Connolly dan Begg, 2005).
Web database merupakan suatu sistem yang bisa di bangun dengan
menggabungkan teknologi basis data dan web (Eaglestone dan Ridley,
2001).
Berdasarkan
disimpulkan
web
sumber-sumber
database
definisi
diatas,
maka
dapat
suatu
sistem
aplikasi
yang
adalah
menggabungkan teknologi basis data dan web serta dapat berinteraksi
dengan pengguna.
2.2.6.2 Syarat-syarat Integrasi Web Database
Berikut adalah daftar dari beberapa syarat-syarat penting untuk
mengintegrasikan aplikasi basis data dengan web, yaitu (Conolly dan
Begg, 2005) :
•
Kemampuan untuk mengakses data perusahaan yang berharga
dengan cara yang aman
34 •
Data dan vendor tidak saling bergantung sehingga memungkinkan
kebebasan untuk memilih DBMS.
•
Kemampuan untuk berinteraksi dengan basis data, tidak bergantung
pada browser atau web server tertentu.
•
Solusi keterhubungan yang memberikan keuntungan dari seluruh
fitur DBMS organisasi.
•
Arsitektur terbuka memungkinkan kemampuan untuk diganti
dengan sistem dan teknologi yang bervariasi.
•
Solusi
efektivitas
biaya
yang
memungkinkan
scalability,
pertumbuhan, dan perubahan dalam petunjuk strategis, dan
membantu mengurangi biaya pembuatan aplikasi.
•
Dukungan untuk transaksi yang menjangkau permintaan multiple
HTTP.
•
Dukungan untuk session dan aplikasi berdasarkan autentifikasi.
•
Performa yang dapat diterima
•
Pengeluaran tambahan (overhead) administrasi yang minimal
•
Penentuan
perangkat
produktivitas
level
tinggi
sehingga
memungkinkan aplikasi untuk dibangun, dipelihara, dan disebarkan
dengan relatif mudah dan cepat.
35 2.3
Perangkat (Tools) yang Digunakan
2.3.1 Definisi Flowchart
Flowchart adalah penggambaran secara grafik dari langkah-langkah
dan urutan-urutan prosedur dari suatu progam. Flowchart menolong analis
dan programmer untuk memecahkan lain masalah ke dalam segmen-segmen
yang lebih kecil dan menolong dalam menganalisis alternatif-alternatif lain
dalam pengoperasian.
Simbol-simbol yang terdapat dalam flowchart :
Tabel 2.1 : Tabel Simbol Flowchart
Nama
input/output
Simbol
Arti
Merepresentasikan input
data yang diproses dan
ouput data yang telah di
proses
Proses (proccess)
Merepresentasikan
operasi
Anak panah (arrow)
Merepresentasikan alur
kerja
Keputusan (decision)
Keputusan dalam progam
Sub progam
Rincian operasi berada di
(predefined proccess)
tempat lain
36 Persiapan
Pemberian harga awal
(Preparation)
Titik Terminal
Awal atau akhir flow
(Terminal Point)
chart
Dokumen (Document)
Input dan output dalam
format yang dicetak
Tampilan (Display)
Input atau output yang di
tampilkan di monitor
Penghubung
Penghubung
(Connector)
bagianbagian
flowchart di
halaman lain
Manual Input
Input yang dimasukkan
secara manual dari
keyboard
Operasi Manual
Operasi secara manual
(Manual Operation)
Punched Tape
Input atau output yang
menggunakan pita kertas
berlubang
.
37 2.3.2
State Transition Diagram (STD)
STD (State Transition Diagram) menunjukkan bagaimana sistem
bertingkah laku sebagai akibat dari kejadian eksternal. Menurut Pressman
(2005) STD (State Transition Diagram) dapat mengindikasikan bagaimana
perilaku (behavior) suatu sistem terhadap suatu tindakan (event). STD
menunjukkan berbagai model tingkah laku (state) sistem dan cara dimana
transisi dibuat dari state satu ke state lainnya.
STD
ini
sendiri
merupakan
suatu
Modelling
Tool
yang
menggambarkan suatu sifat ketergantungan akan waktu yang terdapat di
sistem. Pada STD ini terdapat 2 macam cara kerja, yaitu :
1. Pasif
Disini sifatnya lebih kepada menerima data saja dalam melakukan
kontrol terhadap lingkungan. Contoh : sistem yang bertugas menerima
sinyal yang dikirim satelit.
2. Aktif
Untuk sistem ini kontrol dilakukan secara aktif sehingga selain
menerima data, sistem ini juga memberikan suatu respon terhadap
lingkungannya. Contoh : sistem yang digunakan untuk proses kontrol.
Penyajian STD merupakan dasar untuk pembentukan perilaku, STD
disajikan dengan menggunakan notasi-notasi berikut :
38 • State
Merupakan suatu kumpulan model dari tingkah laku yang dapat
diobservasi.
Simbol state :
Gambar 2.9 : Gambar State pada STD
• Transisi
Merupakan simbol yang menyatakan perubahan dari satu
keadaan ke keadaan yang lain.
Simbol transisi :
Gambar 2.10 : Transisi pada STD
• Kondisi
Adalah kejadian pada lingkungan eksternal yang dideteksi oleh
sistem. Hal tersebut menyebabkan terjadinya perubahan dari
suatu ke state ke state lainnya.
• Aksi
Adalah hal yang dilakukan sistem bila terjadi perubahan state.
Aksi menghasilkan keluaran seperti tampilan pesan, cetakan
pada printer atau alat output lainnya.
39 Kondisi Aksi
State 1 State 2 Gambar 2.11 : Gambar STD (State Transition Diagram)
2.3.3 Perangkat Lunak yang Digunakan
2.3.3.1 PHP
PHP adalah bahasa script open source HTML embedded yang
mendukung banyak web server dengan tujuan memampukan web
developer untuk mampu menulis banyak halaman dinamis secara cepat
(Connoly dan Begg, 2005).
PHP adalah bahasa script open source yang tersedia untuk
banyak platforms. PHP sering di hubungkan dengan MySQL atau
PostgreSQL karena kombinasi secara bebas dari basis data yang
tersedia dan bahasa script yang menyediakan paket lengkap untuk
membangun aplikasi web database. (Eaglestone dan Ridley, 2001).
Berdasarkan sumber-sumber definisi diatas maka dapat di
simpulkan PHP adalah bahasa script server side yang open source
yang tesedia untuk banyak platform yang bisa disisipkan pada HTML
sehingga dapat menghasilkan halaman web yang dinamis sehingga
perawatan menjadi lebih mudah dan efisien.
Kelebihan menggunakan PHP :
40 PHP memiliki banyak kelebihan yang tidak dimiliki oleh bahasa script
sejenis. Kelebihan itu antara lain sebagai berikut (Kasiman
Peranginangin,2006) :
•
PHP difokuskan pada pembuatan script server side, yang bisa
melakukan apa saja yang dapat dilakukan oleh CGI, seperti
mengumpulkan data dari form, menghasilkan isi halaman web
dinamis, dan kemampuan mengirim serta menerima cookies,
bahkan daripada kemampuan CGI.
•
PHP dapat digunakan pada semua sistem operasi, bahkan PHP
dapat bekerja sebagai CGI processor.
•
PHP tidak terbatas pada hasil keluaran HTML. PHP juga memiliki
kemampuan untuk mengolah keluaran gambar, file PDF, dan
animasi Flash. PHP juga dapat menghasilkan teks seperti XHTML
dan file XML lainnya.
•
PHP dapat mendukung banyak sistem basis data.
2.3.3.2 MySQL
MySQL adalah sebuah perangkat lunak sistem manajemen basis
data (DBMS) yang multithread dan multiuser. Konsep dari MySQL
sendiri adalah pengoperasian basis data baik dalam hal pemilihan atau
seleksi dan pemasukkan data, yang memungkinkan pengoperasikan
data dilakukan dengan mudah secara otomatis.
Kelebihan menggunakan MySQL sebagai database server:
41 1. MySQL didistribusikan dibawah lisensi GPL (General Public
License) sehingga dapat dipakai secara gratis (Open Source).
2. MySQL dapat digunakan secara stabil di berbagai sistem operasi
(Linux, Mac OS, Windows) sehingga bersifat Portability.
3. Multiuser, sebab dapat digunakan oleh beberapa user dalam waktu
yang bersamaan tanpa bermasalah.
4. MySQL dapat menangani database dalam skala yang besar dengan
jumlah record lebih dari 50 juta dan 60 ribu tabel serta 5 milyar
baris
5. Performance tuning dimana MySQL memiliki kecepatan dalam
menangani query sederhana, dengan kata lain dapat memproses
lebih banyak SQL per satuan waktu.
6. MySQL memiliki tingkat security atau keamanan yang tinggi
seperti level subnet mask, nama host, dan izin akses user dengan
sistem perizinan yang mendetail serta password terenkripsi.
2.3.3.3 CodeIgniter Framework
2.3.3.3.1
Framework
Software framework adalah suatu desain untuk sistem piranti lunak
yang dapat digunakan secara berulang-ulang (reusable). Software
framework terkadang meliputi kumpulan kode, skrip, dan piranti lunak
lainnya dalam mendukung pengembangan dan kompatibilitas terhadap
komponen-komponen lainnya dalam suatu proyek piranti lunak.
42 2.3.3.3.2
Pengertian CodeIgniter Framework
CodeIgniter Framework merupakan framework open source untuk
PHP 5 yang dirancang khusus untuk mempersingkat pengkodean dan
bertujuan agar penggunanya dapat fokus pada gambaran-gambaran
aplikasi. CodeIgniter adalah sebuah PHP library yang digunakan untuk
membangun aplikasi web dengan menggunakan PHP. CodeIgniter telah
menyediakan komponen-komponen agar memudahkan penggunanya
dalam membangun aplikasi dengan PHP lebih mudah. CodeIgniter juga
memberikan kemudahan dalam perawatan dan penggunaan ulang aplikasi
yang dibangun dengan menggunakan framework CodeIgniter.
2.3.3.3.3
Pengertian Model View Controller (MVC)
Menurut Rob Allen (2008), MVC adalah suatu pola rancangan
dalam sebuah arsitektur piranti lunak. MVC memisahkan arsitektur suatu
piranti lunak menjadi tiga bagian, yaitu :
• Model
Adalah bagian yang menentukan bagaimana data terstruktur.
Merepresentasikan data yang aktual dan logika yang digunakan.
•
View
Adalah bagian dimana terjadi interaksi langsung dengan pengguna.
Merepresentasikan
bagaimana
data
ditampilkan.
View
tidak
menitikberatkan pada bagaimana data tersebut ditampilkan, melainkan
seperti apa data tersebut ditampilkan.
43 •
Controller
Adalah bagian dimana semua proses suatu aksi dijalankan.
Merepresentasikan bagaimana data tersebut ditampilkan. Aksi-aksi
yang dijalankan, memanggil data yang diminta oleh model (dalam
bentuk sistem basis data, variabel), lalu mengirimkan hasilnya kepada
view dan kemudian ditampilkan pada browser oleh view.
HTML Header
PHP Db
HTML Start of
PHP Db Query
HTML & PHP
HTML Footer
Gambar 2.12 : Gambar Struktur non-MVC
Antara Database, logika bisnis, dan logika presentasi masih sulit untuk
dipecahkan menjadi modul-modul dalam aplikasi sehingga akan
mempersulit dalam maintenance aplikasi yang sudah besar atau
kompleks karena jika kita merubah satu kode saja akan merubah
keseluruhan dari struktur kode itu.
44 Bootstrap File: index.php
(database connection)
Controller File (application
logic)
Model File
(database query)
View Template File (HTML)
Gambar 2.13 : Gambar Struktur MVC
CodeIgniter framework yang berinteraksi dengan database apapun
dengan satu bahasa tunggal. Controller file yang berperan sebagai
pengatur data yang didapat dari class-class model yang dibuat tersebut
untuk diarahkan ke view sebagai layout nya, controller file mengatur
proses request untuk diarahkan ke fungsi pada suatu mode sesuai
request. Alur request tersebut kemudian dimunculkan kedalam view
atau layout. Model file merupakan class class yang dibuat sebagai
tempat code-code, manipulasi data induk yang dijadikan sumber acuan
pada model. View file membuat tempat layout untuk tampilan ke
publik.
2.3.3.4 Extensible Markup Language (XML)
Extensible Markup Language atau sering kali disebut XML
merupakan suatu bahasa pemrograman yang digunakan untuk
menyimpan data dan tidak tergantung dengan tools tertentu (DBMS,
compiler, dan sebagainya).
45 XML tidak sama dengan HTML, sebab XML berfungsi
menyimpan dan membawa data sedangkan HTML berfungsi untuk
menampilkan data. Dengan kata lain, HTML adalah bagaimana
menampilkan
suatu
informasi
dan
XML
adalah
bagaimana
mendeskripsikan informasi.
Keuntungan menggunakan XML:
a. Ekstensibilitas karena dapat ditukar atau digabungkan dengan
dokumen XML lain.
b. Plain text disebabkan sintaks XML yang sederhana dan terbatas
c. XML dapat digunakan oleh banyak orang sebab sifatnya yang
independent dan cross platform memungkinkan XML dapat
diakses pada banyak browser.
d. XML dapat memisahkan data dari HTML, sebab dengan XML
user dapat lebih berkonsentrasi pada perancangan suatu layout
tanpa perlu khawatir jika data berubah akan mengubah HTML.
e. XML dapat digunakan untuk pertukaran data antara sistem yang
tidak kompatibel.
2.3.3.5 Asynchronous JavaScript and XML (Ajax)
Ajax adalah singkatan dari Asynchronous JavaScript and XML
adalah sebuah teknologi berbasis client-side yang menggunakan 2
komponen utama, yakni Javascript dan XML. Penggunaan teknologi
ini dapat meningkatkan kinerja suatu aplikasi web karena Ajax hanya
46 mempertukarkan data antara client dan server bukan suatu halaman
web secara keseluruhan.
Kelebihan Ajax adalah objek XML HTTP Request karena
dengan menggunakan objek javascript ini, maka request data ke server
dapat dilakukan tanpa mengirimkan keseluruhan halaman
2.3.3.6 Jquery
Adalah library dari Javascript yang membuat suatu aplikasi web
menjadi lebih baik, dalam hal interface, proses maupun interaktivitas.
2.3.3.7 Cascading Style Sheet (CSS)
Cascading Style Sheet atau CSS adalah suatu bahasa stylesheet
yang digunakan untuk mengatur tampilan suatu halaman web.
Penggunaan paling umum adalah untuk memformat halaman web yang
ditulis dengan HTML dan XHTML. CSS dapat digunakan untuk
mengatur besar kecilnya text, warna dan style font, mengatur warna
atau gambar background, dan berbagai manfaat lainnya. (Schengili dan
Roberts, 2000)
2.3.3.8 Web Server
Adalah suatu komputer yang digunakan untuk menyimpan data
suatu website dan tentu saja komputer tersebut harus 24 jam menyala,
sehingga data dari suatu website dapat diakses oleh pengunjung.
47 Web server memiliki arti sebuah sebuah software server yang
menerima permintaan HTTP/HTTPS dari komputer client (meminta
informasi) melalui web browser dan mengirimkannya kembali dalam
bentuk halaman web yang berbentuk dokumen HTML.
2.3.3.9
Web Browser
Dikenal juga dengan istilah browser atau internet browser.
Browser adalah software aplikasi yang memperbolehkan user dalam
menampilkan dan berinteraksi dengan teks, gambar, video, musik, dan
informasi lainnya yang terdapat di halaman web.
Teks dan gambar di halaman web bisa merupakan hyperlink yang
mengarah ke halaman lain. Web browser menjadikan user lebih cepat
dan mudah mengakses informasi. Dua program web browser yang
cukup popular saat ini adalah Google Chrome dan Mozilla Firefox.
2.3.3.10 Elemen dan Aplikasi Internet
2.3.3.10.1
Protokol Utama Internet
Protokol utama internet menggunakan TCP/IP (Transmission
Control Protocol / Internet Protocol) yang memungkinkan proses
pertukaran data dari satu komputer dengan komputer yang lain.
TCP/IP merupakan sebuah jaringan terbuka yang independen terhadap
mekanisme transpor jaringan fisik yang digunakan sehingga dapat
digunakan di mana saja. Protokol ini menggunakan alamat IP sehingga
48 beberapa ratus komputer dapat berhubungan satu sama lain melalui
internet. (Ellsworth, 1997)
2.3.3.10.2
Protokol Transfer
Seringkali disebut dengan File Transfer Protocol (FTP)
merupakan protokol yang paling awal dikembangkan dan sampai saat
ini digunakan untuk mendownload meng-upload berkas – berkas
komputer antar klien FTP dengan server FTP. Klien FTP dapat
mengakses server FTP menggunakan URL (Universal Resource
Locator) dengan format ftp://namaserver.
2.3.3.10.3
Uniform Resource Locator (URL)
URL merupakan rangkaian karakter sesuai dengan format
standar tertentu yang menunjuk suatu alamat sebuah halaman web
(homepage) yang ingin ditampilkan.
URL mempunyai 2 macam tipe :
a.
URL Absolute merupakan alamat URL yang berisi domain,
direktori pada domain dan file pada direktori tersebut.
Contoh : <img src="http://u.kaskus.us/24/gczaklue.jpg">
b.
URL Relative menentukan suatu alamat berdasarkan URL yang
aktif pada saat itu.
Contoh : <img src ="gczaklue.jpg">
Suatu format URL adalah http://server/path yang berarti :
49 a.
“http” merupakan protokol yang menunjukkan dimana
sumber web yang diakses melalui URL.
b.
“server” merupakan nama web server yang dapat di akses.
c.
“path” merupakan lokasi dari sumber di server. Contoh :
photos/img23092010004.jpg, yang menunjukkan path dari
dokumen utama melalui struktur direktori Web Server
menuju file tertentu.
2.3.3.10.4
Hyper Text Markup Language (HTML)
HTML
sebenarnya
bukan
merupakan
suatu
bahasa
pemrograman tetapi lebih tepatnya merupakan bahasa markup yang
terdiri dari serangkaian tag markup yang mampu untuk membuat suatu
halaman web.
Tag markup atau sering disebut tag HTML ini biasanya kata
kunci yang diapit oleh tanda sudut kurung dan berpasangan biasanya
disebut sebagai tag awal/pembuka dan tag akhir/penutup seperti
<namatag> dan diakhiri oleh </namatag>, contoh : <HTML>
</HTML>.
Format dari suatu dokumen HTML adalah sebagai berikut:
<HTML>
<HEAD>
<TITLE>Judul Web</TITLE>
</HEAD>
<BODY>
50 Isi dokumen
</BODY>
</HTML>
Tag <HTML> dan </HTML> berfungsi menandai suatu awal dan akhir
dari sebuah dokumen HTML. Tag <HEAD>dan </HEAD> berfungsi
memberikan informasi umum dari sebuah halaman web dan di dalam
tag ini terdapat tag <TITLE> dan </TITLE> yang berfungsi
memberikan judul halaman web. Dan tag <BODY>dan </BODY> berisi
isi dari dokumen dalam halaman web tersebut.
2.4
Delapan Aturan Emas dalam Perancangan
Terdapat delapan aturan emas dalam merancang sebuah user interface yaitu :
(Shneiderman, 1998)
a. Konsisten
Konsisten dalam kesamaan terminology dalam membuat menu, tampilan, font, dan
help screen. Selain itu, konsisten dalam warna, kapitalitas, dan tampilan juga
merupakan hal yang penting.
b. Memungkinkan user untuk menggunakan shortcut
Setelah user mulai tanggap dalam mengakses sebuah website, maka user akan
menginginkan shortcut yang akan mempercepat navigasi dalam menelusuri
website tersebut.
c. Memberikan umpan balik yang informatif
Untuk setiap tindakan operator, sebaiknya disertakan suatu sistem umpan balik.
Untuk tindakan yang sering dilakukan dan sederhana, dapat diberikan umpan balik
51 yang sederhana. Tetapi ketika tindakan merupakan hal yang penting, maka umpan
balik sebaiknya lebih substansial. Misalnya muncul suatu suara ketika salah
menekan tombol pada waktu input data atau muncul pesan kesalahannya.
d. Merancang dialog untuk menghasilkan keadaan akhir
Bertujuan untuk membuat user merasa yakin dan tenang dalam melakukan suatu
tindakan dengan memberikan gambaran hasil akhir dari suatu pilihan, serta
memberikan banyak option kepada user sehingga bisa ikut mempengaruhi hasil
akhir.
e. Memberikan penanganan kesalahan yang sederhana
Sedapat mungkin suatu website harus dirancang agar user tidak melakukan
kesalahan yang fatal, dan pesan kesalahan yang dimunculkan harus mudah
dimengerti oleh user.
f. Memungkinkan pembalikan aksi yang mudah
Tindakan yang dilakukan oleh user harus dapat dikembalikan pada kondisi
sebelumnya sehingga user merasa aman untuk mengeksplorasi website karena ia
tahu bahwa kesalahan yang ia lakukan dapat diperbaiki.
g. Mendukung internal locus of control (tempat pemakaian internal)
Sistem harus dibuat agar user merasa memegang kendali atas suatu website.
Kesulitan user dalam melakukan navigasi website atau dalam menampilkan data
dapat membuat user menjadi tidak puas.
h. Mengurangi beban ingatan jangka pendek
Manusia tidak dapat mengingat banyak info pada suatu waktu yang bersamaan.
Oleh karena itu, suatu website harus dibuat sesederhana mungkin sehingga tidak
membuat user bingung karena terlalu banyak info yang harus diingat.
Download