BAB 2
LANDASAN TEORI
1.1
Data
Menurut
Atzeni
(2003,
p2),
data
adalah
informasi
mentah
terekam
yang
dapat menyediakan informasi lainnya. Data informasi mentah dapat tidak berarti
jika tidak digabungkan dengan data yang lain.
Menurut
Hoffer
(2009,
p46),
data
adalah sebuah
fakta
yang
menjelaskan
objek atau kejadian yang dapat disimpan pada media komputer. Contohnya adalah
sebuah data sales person yang berisi nama
pelanggan, alamat dan telepon
dikualifikasikan sebagai suatu struktur data.
Jadi, dapat disimpulkan di sini
bahwa data merupakan sebuah fakta yang
dapat mendukung informasi lain dan menjadikannya sebuah informasi yang lebih
berarti.
1.2
Basis Data
Menurut Connolly dan Begg (2010, p65), basis data adalah sekumpulan data
yang
saling terhubung secara
logikal dan dirancang
untuk
memenuhi
kebutuhan
informasi pada suatu organisasi.
Definisi basis data menurut Ramakrishnan (2003, p4), adalah koleksi data
yang   menjelaskan   aktifitas   dari   satu   atau   lebih   organisasi   yang   berelasi.
  
2
Menurut
Date
(2004,
p10),
basis
data
merupakan
kumpulan
data persistent
yang
digunakan          pada          sistem          aplikasi          pada          beberapa          organisasi.
Sehingga dapat dikatakan basis data itu merupakan sekumpulan data yang saling
berhubungan untuk menjelaskan kegiatan yang ada di dalam suatu organisasi atau lebih
yang saling berhubungan dan biasa digunakan di dalam sistem aplikasi.
1.3
DBMS
Menurut Connolly (2010, p66), DBMS adalah sebuah piranti lunak yang
memungkinkan user untuk mendefinisikan, membuat,
merawat dan mengontrol akses ke
dalam database. Dengan dibantu Data Definition Language (DDL) dan Data Manipulation
Language
(DML), DBMS sangat memungkinkan bagi
user
untuk memanipulasi data
dengan fleksible. Penggunaan DBMS dapat menjamin
keamanan, kesatuan serta
ketersediaan data dalam proses penyimpanannya.
DBMS memiliki beberapa fasilitas, yaitu :
1.
Fasilitas untuk mendefinisikan basis data yang biasanya menggunakan suatu Data
Definition Language (DDL). Suatu DDL memberikan fasilitas kepada user untuk
dapat menspesifikasikan tipe, struktur serta batasan aturan mengenai data yang
akan disimpan ke dalam basis data tersebut.
2.
Fasilitas yang memperbolehkan user untuk menambah, mengedit, menghapus data
dan   mendapatkan   kembali   data   yang   biasanya   menggunakan   suatu   Data
  
3
Manipulation Language (DML). Ada suatu fasilitas yang melayani pengaksesan
data yang disebut
Query Language. Bahasa query
yang paling diakui adalah
Structured Query Language (SQL)
yang secara de facto merupakan
standar bagi
DBMS.
3.
Fasilitas  untuk  melakukan  akses  yang  terkontrol  terhadap  basis  data,  sebagai
contoh :
a.
Suatu
sistem keamanan
yang
mencegah user
yang tidak
memiliki otoritas
untuk mengakses data.
b.
Suatu   sistem   yang   terintegrasi   dimana   berguna   untuk   memelihara
konsistensi penyimpanan data.
c.
Suatu
sistem kontrol
yang
memperbolehkan
sharing akses ke dalam basis
data.
d.
Suatu  sistem  kontrol  pengembalian  data  dimana  dapat  mengembalikan
data ke keadaan sebelumnya apabila terjadi kegagalan perangkat keras atau
perangkat lunak.
e.
Terdapat    suatu    katalog    yang    dapat    diakses    oleh    user   untuk
mendeskripsikan data di dalam basis data tersebut.
  
4
DBMS 
memiliki  komponen  utama  dalam  lingkungannya,  komponen-komponen
tersebut adalah :
1.
Hardware
Dibutuhkan
untuk
menjalankan DBMS dan juga aplikasi-aplikasinya.
Hardware
mencakup
mini computer, network computer, personal computer
dan
mainframe.
2.
Software
Meliputi software aplikasi, software DBMS, operating
systems dan software
network (apabila dalam penggunaannya menggunakan network).
3.
Data
Merupakan komponen yang terpenting dan juga merupakan komponen
penghubung antara komponen mesin (perangkat keras dan lunak) dan manusia.
4.
Prosedur
Prosedur merupakan instruksi-instruksi dan aturan-aturan yang mengatur
desain dan penggunaan basis data.
5.
People
Merupakan  komponen  yang 
juga 
terlibat  dalam  sistem. 
Komponen 
ini
meliputi data, database administrator, database designer, application developer
dan end users.
  
5
DBMS juga memiliki beberapa keuntungan dan kerugian :
1.
Keuntungan DBMS yaitu :
a.
Terdapat kontrol terhadap pengulangan data
b.
Konsistensi data
c.
Semakin banyak informasi yang didapat dari data yang sama
d.
Dapat melakukan share data
e.
Menambah intergritas data
f.  Menambah keamanan data
g.
Mempermudah pengolahan data
1.
Meningkatkan produktivitas
2.
Kerugian DBMS  yaitu :
a.
Kompleks
b.
Ukuran / size DBMS
c.
Biaya
d.
Memungkinkan adanya penambahan perangkat keras lainnya
Dari  penjelasan  di  atas,  dapat  disimpulkan  kembali  bahwa  DBMS  merupakan  sebuah
piranti lunak yang dapat membantu penggunanya
untuk
memanajemen,
mengontrol
dan
juga
membuat sebuah database sendiri dimana DBMS tersebut memiliki karakteristik dan peraturan
penggunaan tersendiri yang harus dimengerti oleh penggunanya.
  
6
1.4
DDL
Menurut Connolly (2010, p92) DDL adalah sebuah bahasa yang memungkinkan bagi
user
untuk
mendeskripsikan
/
memberikan
nama
pada suatu database, table, atribut dan
hubungan
yang diperlukan
pada
suatu
aplikasi.
Penggunaan
DDL
menjamin
segala
hal
yang menyangkut intergritas data dan juga kendala keamanan. DDL tidak dapat digunakan
untuk memanipulasi data yang ada pada database. Secara teori, definisi DDL untuk setiap
skema dalam 3 level arsitektur :
1.
DDL untuk skema eksternal
2.
DDL untuk skema konseptual
3.
DDL untuk skema internal
1.5
DML
Menurut   Connolly   (2010,   p92)   DML   adalah   bahasa   yang   menyediakan
sekumpulan operasi untuk mendukung operasi dasar manipulasi data dalam database :
1.
Memasukkan data baru (insert)
2.
Mengubah data (update)
3.
Menghapus data (delete)
4.
Melihat data yang ada (select)
  
7
DML ada 2 macam, yaitu :
1.
Procedural DML
Merupakan sebuah bahasa yang memungkinkan user untuk dapat
memberitahukan kepada sistem data apa yang sedang dibutuhkan dan bagaimana
cara untuk memperoleh data tersebut.
2.
Non Procedural DML
Merupakan sebuah bahasa
yang
memungkinkan user untuk dapat
memberitahukan
kepada
sistem data apa
yang
sedang dibutuhkan
namun
tidak
mempedulikan bagaimana data tersebut dapat diperoleh.
1.6
UML (Unified Modeling Language)
Menurut Bentley dan Whitten (2007, p371), UML adalah satu set dari ketentuan
modeling yang digunakan untuk menspesifikasi atau mendeskripsikan sebuah sistem
software dalam suatu kondisi dari objek. UML dibagi menjadi beberapa komponen :
1.6.1
Class Diagram
Menurut Bentley
dan
Whitten
(2007,
p400), class
diagram
menggambarkan
struktur
sistem
suatu
objek.
Diagram
ini
menampilkan
class-class
objek yang
sistemnya tersusun seperti hubungan antara class-class  objek.
Menurut Mathiassen (2009,
p336) menyatakan bahwa class diagram
mendeskripsikan kumpulan dari class dan hubungan strukturalnya. Sedangkan objek
adalah   suatu   entitas   yang   memiliki   identitas,   kondisi   dan   perilaku.   Event
didefinisikan  sebagai  suatu  kejadian  langsung  yang  melibatkan  suatu  objek  atau
  
8
lebih. Class didefinisikan sebagai suatu deskripsi dari kumpulan objek yang memiliki
struktur, perilaku, pola perilaku dan atribut yang serupa.
Class  diagram  terdiri dari elemen-elemen
yang 
menggambarkan  struktur
sebuah
sistem
dengan
menunjukkan
kelas-kelas
yang
membentuk
sistem dan
bagaimana  kelas-kelas  tersebut  berhubungan  satu  sama  lain  secara  statis.  Kelas
adalah kumpulan atribut dan operasi.
Di dalam class diagram, class digambarkan dengan sebuah kotak yang terdiri
dari tiga bagian seperti pada gambar berikut:
Nama
Atribut
Operasi
Contoh Class :
Buku
+judul : String
+pengarang : String
+idJenis : byte
+ambilJenis (String)
+ambilHalaman () : int
Secara umum, struktur kelas adalah nama kelas, atribut kelas dan operasi kelas.
Tanda plus (+) dan minus (-) yang ada di dalam kelas menggambarkan ruang lingkup
dari atribut atau operasi. Tanda plus berarti public (boleh di akses oleh semua kelas)
dan minus berarti private (akses terbatas hanya untuk class itu sendiri). Tanda ketiga
adalah tanda pagar (#) yang berarti protected (hanya bis diakses oleh subclass nya).
  
9
Kata  setelah
tanda
titik  dua  (:)  menyatakan
tipe  atribut
atau  tipe  pengembalian
operasi.
Menurut Mathiassen (2000, p72), struktur antar class terdiri dari:
1.
Generalization
Merupakan  suatu
properti-properti
umum
class 
umum
dari
class
(super class
yang
khusus
(sub
class).
mendeskripsikan
Kata
“adalah”
menunjukkan
class
khusus
pada
hubungan
generalisasi
ini.
Semua
properti
yang
berada
pada
class
umum akan dimiliki
juga oleh
semua
class
khusus
(inheritance) namun class khusus juga dapat memiliki propertinya sendiri.
Gambar 2.1 Generalization
2.
Cluster
Merupakan suatu kumpulan class yang saling berhubungan
  
10
Gambar 2.2  Cluster
Menurut Mathiassen (2000, p75), struktur antar object terdiri dari:
1.
Aggregation
Merupakan suatu objek superior
(the whole)
yang terdiri dari sejumlah
objek (the parts)
1..*
1..2
2.
Association
Gambar 2.3  Aggregation
Merupakan suatu relasi berarti antara sejumlah objek. Suatu relasi berarti
dapat diartikan mejadi sebuah kelas memiliki instansi dari kelas lainnya. Kata
“memiliki” mencirikan hubungan asosiasi
  
11
Gambar 2.4  Association
Di
dalam
class
diagram,
hubungan
antar
class-class
yang
ada
juga
digambarkan melalui multiplicity. Setiap multiplicity yang digunakan memiliki arti
tersendiri, berikut penjelasan mengenai multiplicity yang dapat digunakan di dalam
class diagram :
Tabel 1.1   Multiplicity Class Diagram
Multiplicity
Arti
*
Banyak
0
Nol
1
Satu, bisa ditulis bisa tidak
0..*
Antara Nol sampai banyak
1..*
Antara Satu sampai banyak
0..1
Nol atau Satu
1..1
Tepat Satu
1.6.2
Use Case Diagram
Menurut
Bentley
dan
Whitten
(2007,
p246-250),
use
case
diagram
menggambarkan interaksi antara user dan sistem eksternal. Dengan kata lain, secara
grafikal
mendeskripsikan siapa
yang
akan
menggunakan
sistem
dan
dengan
cara
seperti apa sesuai dengan yang diharapkan user untuk berinteraksi dengan sistem.
  
12
Gambar 2.5  Contoh Use Case Diagram
Use case diagram memiliki komponen sebagai berikut :
a.
Pelaku
Pada  use
case 
diagram,  pelaku 
adalah 
sebuah 
peran 
dari  seorang
pengguna
yang
perlu
berinteraksi
dengan sistem untuk
pertukaran
informasi.
Pelaku
di
dalam use case
tidak
harus
seorang
manusia, pelaku dapat berupa
sebuah organisasi, sistem informasi ataupun peralatan luar seperti sensor panas.
Berikut lambang yang digunakan untuk merepresentasikan pelaku di dalam use
case
  
13
Gambar 2.6  Pelaku Use Case
b.
Relationship (Hubungan)
Pada
use
case
diagram,
hubungan
digambarkan
dalam sebuah
garis
di
antara dua simbol. Pengertian hubungan antara 2 simbol ini dapat berbeda-beda
tergantung dari bagaimana
garis
tersebut digambar.
Relationship di dalam use
case ada beberapa macam, yaitu :
1.
Associations
Merupakan  sebuah
hubungan  antara  pelaku  dengan  use case di
mana sebuah interaksi terjadi di antara mereka. Ada 2 macam hubungan
associations di dalam use case yaitu unidirectional dan bidirectional.
Unidirectional merupakan suatu hubungan dimana terjadi interaksi
satu  arah  saja,  sedangkan  bidirectional
merupakan  suatu 
hubungan
dimana terjadi interaksi 2 arah baik dari pelaku maupun dari use case.
  
14
2.
Extends
Di dalam suatu use case terkadang ada sebuah fungsionalitas yang
sangat
kompleks
di
dalamnya
dimana dapat
berisi
beberapa
langkah
sehingga membuat use case tersebut menjadi susah dimengerti. Use case
yang kompleks tersebut dapat dibuatkan sebuah use case tersendiri untuk
dijabarkan dengan lebih detail dan jelas sehingga dapat lebih mudah
dimengerti.
Berikut adalah contoh extension use case :
Extension Use Case
Generate Warehouse
Packing Order
Calculate Oder
Sintotal & Sales Tax
<<extends>>
<<extends>>
Place New Member
Order
3.
Uses (or includes)
Merupakan
sebuah
use
case yang
dapat
mengurangi
redudansi
dikarenakan memiliki
langkah-langkah
yang
sama
atau
hampir
sama
namun dari action yang berbeda. Berikut adalah contoh penggunaan dari
uses :
  
15
Place New Member
Order
Submit Change of
Postal Address
<<uses>>
<<uses>>
Revise Postal
Address
Abstract
Use Case
4.
Depends On
Merupakan 
sebuah 
use 
case 
yang  bergantung 
pada 
use  case
lainnya.  Jika ada use case a bergantung pada use case b, maka use case a
tidak akan dapat dilakukan sebelum use case b dilakukan terlebih dahulu.
Berikut contoh ketergantungan use case :
Establish
Bank Account
<<depends on>>
Make a Deposit
<<depends on>>
Make a
Withdrawal
5.
Inheritance
Ketika
beberapa
pelaku
menggunakan use case yang
sama,
maka
dapat dibuat
sebuah pelaku abstrak untuk mengurangi komunikasi
yang
redudansi dengan sistem. Contoh inheritance di dalam use case :
  
16
Gambar 2.7  Contoh Inheritance Dalam Use Case
1.6.3
Sequence Diagram
Bennett,  McRobb,  dan  Farmer  (2010,  p.  479) 
menggambarkan  sequence
diagram untuk use case Check campaign budget” pada gambar di bawah ini.
Gambar 2.8  Sequence Diagram untuk Use Case "Check Campaign Budget"
  
17
Kelas pengendalian yang utama
dapat mengaktifkan kelas pembatas,
memperbolehkan
user
untuk
memilih
klien tertentu.
Ditampilkan
pada gambar
di
bawah ini.
Gambar 2.9  Bagian Pertama Use Case "Check Campaign Budget"
Kembali ke sequence diagram untuk kolaborasi ini, event berikutnya yang akan
berlangsung adalah bahwa pengguna akan
memilih klien dari dropdown
yang telah
diisi dengan klien dengan proses yang telah dijelaskan. Ketika seorang klien tertentu
telah dipilih,
maka
daftar
promosi
di
kelas
perbatasan harus
diisi
dengan
hanya
promosi dalam database milik klien.
1.6.4
Activity Diagram
Menurut Satzinger,
Jackson &
Burd ( 2008,
p141),
Activity diagram
adalah
sebuah jenis dari workflow diagram yang mudah yang menggambarkan kegiatan dari
beberapa user atau sistem, orang
yang
melakukan setiap proses dan alur kerja dari
setiap aktifitas.
  
18
Gambar 2.10 Activity Diagram
Activity diagram memiliki komponen sebagai berikut :
a.
Titik Solid
Pada activty diagram, titik solid menggambarkan awal sebuah proses
b.
Segi empat dengan sudut tumpul
Pada activity diagram, segi empat dengan sudut tumpul menggambarkan tugas
yang perlu dilakukan
c.
Panah
Pada activity diagram, panah
menggambarkan sasaran
yang mengawali suatu
kegiatan
d.
Diamond
Pada 
activity 
diagram,
diamond 
menggambarkan 
sebuah 
kegiatan 
yang
menyangkut sebuah keputusan
  
19
e.
Titik solid di dalam lingkaran
Pada
activity diagram,
titik
solid
di
dalam
lingkaran
menggambarkan
akhir
sebuah proses
f.
Synchronization Bar
Sebuah simbol yang dapat
memisahkan serta
menggabungkan   aktifitas
yang
berjalan secara bersamaan
1.7
Piranti Lunak
Menurut Pressman (2005, p34-36),  perangkat lunak didefinisikan sebagai berikut :
1.   Perintah
(program
komputer)
yang
bertujuan
untuk
menjalankan
suatu
fungsi
yang
diinginkan saat eksekusi
2.   Struktur data yang memungkinkan program memanipulasi informasi
3.   Dokumen yang menggambarkan bagaimana suatu program bekerja dan kegunaan
dari program tersebut
Piranti lunak berfungsi untuk mentransformasikan informasi –
informasi penting
termasuk data-data personal seperti transaksi keuangan pribadi ke dalam bentuk yang lebih
sederhana
sehingga
informasi
tersebut
dapat lebih
mudah
diakses,
diatur,
ditampilkan
maupun di manage dari peralatan apapun termasuk telepon selular sekalipun.
Ada  beberapa  karakteristik  dari  piranti 
lunak  yang 
harus  dimengerti 
menurut
Pressman (2005, p37), yaitu :
1.   Piranti
lunak
itu
adalah
sesuatu
yang
dikembangkan
bukan
diproduksi
dalam
bentuk klasik
2.   Piranti lunak bukanlah sesuatu yang dapat habis dalam jangka waktu tertentu
  
20
3.   Pengembangan piranti lunak dilakukan secara custom
1.8
Rekayasa Piranti Lunak
Menurut Pressman (2005, p53) Rekayasa piranti lunak adalah penggunaan prinsip-
prinsip pengembangan yang tepat untuk menghasilkan piranti lunak yang dapat diandalkan,
dapat bekerja dengan baik pada mesin nyata dan juga ekonomis.
Rekayasa piranti lunak dikategorikan atas tiga fase, yaitu :
1.
Fase pendefinisian.
Fokus pada fase ini adalah  :
a.   Apa informasi yang harus diproses ?
b.   Fungsi dan performan apa dikehendaki ?
c.   Perilaku sistem apa yang diharapkan?
d.   Antarmuka apa yang akan dibentuk ?
e.   Batasan perancangan apa yang ada ?
f.
Kriteria
validasi apa
yang diperlukan
untuk mendefinisikan kesuksesan satu
sistem ?
2.
Fase pengembangan.
Fokus pada fase ini adalah  :
a.   Bagaimana data distrukturkan?
b.   Bagaimana
mengimplementasikan
satu
fungsi
didalam   satu
arsitektur
perangkat lunak?
c.   Bagaimana mengimplementasikan satu prosedur detail?
d.   Bagaimana mengkarakteristikkan antarmuka?
  
21
e.   Bagaimana mentranslasikan perancangan ke dalam satu bahasa pemograman
dan bagaimana satu pengujian akan dilakukan ?
3.   Fase dukungan.
Fokus pada fase ini adalah  :
a.   Koreksi
b.   Adaptasi
c.   Peningkatan
d.   Pencegahan
1.9
Feature Driven Development (FDD)
Menurut Abrahamsson, Salo,
&
Rokainen (2002, p47)
yang disadur dari Palmer
&
Felsing
(2002), Feature
Driven Development
(FDD) adalah pendekatan
yang cepat dan
adaptif
dalam pengembangan
sebuah
aplikasi.
Pendekatan  
FDD
tidak
membahas
pengembangan software secara keseluruhan
tetapi lebih berfokus kepada
fase desain dan
pembuatan program. FDD terdiri dari 5 tahapan proses.
Pada bagian yang terus berulang di FDD
(desain
dan
pembuatan
sistem)
yang
mendukung
agile
development
dengan
adaptasi
yang
cepat
untuk
memenuhi
perubahan
pada proses bisnis.
  
22
v
a
s
e
r
r
Gambar 2.11 Feature Driven Development
Berikut adalah tahapan dari metodologi ini :
1.
Develop an overall model
Pada
tahap
awal
ini,
client
memberikan
gambaran
secara
garis
besar
mengenai program yang akan dibuat dan fitur – fitur yang perlu dibuat.
2.
Build a feature list
Fitur – fitur besar dibagi kembali menjadi fitur –
fitur yang lebih kecil.
Fitur – fitur ini menjelaskan lebih spesifik tentang sistem di suatu tempat. List
fitur
ini
kemudian
dilihat
oleh
client
untuk
diperiksa
validitas
dan
kelengkapannya.
3.
Pl
n
By Feature
Merencanakan mulai pembuatan
fitur –
fitur secara sequential menurut
prioritasnya dan ketergantungannya kepada fitur – fitur lain.
4.
Design by Feature and Build by Feature
  
23
Tahapan
ini
adalah
pembuatan
program sesuai
fitur
fitur
yang
telah
disusun.  Proses  design by feature dan  build by feature  ada  proses  yang
prosedur
yang
berulang
selama
sebuah
fitur
ini
dibuat.
Setelah
sebuah
fitur
telah selesai dibuat,
maka
fitur
tersebut akan dipindahkan kepada
fitur utama
dalam program untuk dijadikan satu kesatuan.
1.10  Internet
Menurut
Turban
Rainer
dan
Potter
(2001,
p208), Internet
adalah
jaringan
telekomunikasi dan elektronik raksasa terbesar di dunia. Internet tidak
hanya
merupakan
kumpulan   dari   jaringan   komunikasi   elektronik   antara   komputer-komputer   bisnis,
konsumen, pemerintahan, sekolah-sekolah dan organisasi-organisasi lainnya tetapi juga
telah
membuka
kemungkinan-kemungkinan
baru
yang
menantang
cara
tradisional dari
interaksi, berkomunikasi, dan melakukan bisnis.
1.11  World Wide Web
World
Wide Web
atau
WWW
adalah
kumpulan dari
sejumlah
dokumen
hypertext
yang
saling
berkaitan
dan
ditempatkan
pada
server
khusus,
yang
disebut
dengan
Web
Server atau server HTTP di seluruh dunia. (Hoffer et al, 2009, p470).
Sedangkan
menurut Kadir (2003, p4), World Wide Web (WWW) atau biasa disebut
dengan Web
merupakan salah satu sumber daya Internet yang berkembang dengan pesat.
Informasi Web
didistribusikan
melalui
pendekatan hypertext,
yang
memungkinkan suatu
teks 
pendek 
menjadi 
acuan 
untuk 
membuka  dokumen 
yang 
lain. 
Dengan 
adanya
  
24
pendekatan hypertext
ini,
seseorang
dapat
memperoleh informasi dengan
meloncat dari
suatu  dokumen  ke  dokumen  yang  lain.  Dokumen-dokumen  yang  diakses  pun  dapat
tersebar di berbagai mesin dan di berbagai negara.
1.12  Web Server
Web
server adalah server
yang
melayani
permintaan klien terhadap
halaman
web.
Apache, IIS (Internet Information Server), dan Xitami merupakan contoh perangkat lunak
Web Server. (Kadir, 2003, p6).
Cara
kerja
web
melibatkan
komunikasi
antar
dua
komputer, satu
server,
dan
satu
client. Server akan mengirimkan file ketika client memintanya. Vaughan ( 2006, pg294).
Menurut 
Hoffer  et  al 
(2009,  p479),  web server
yang  digunakan 
harus  dapat
menangani banyak pengguna pada suatu waktu. Hal ini dimungkinkan dengan adanya
kemampuan multiprocessing, di mana beberapa processor
akan
bekerja
bersama-sama
untuk mempercepat pemrosesan.
Kegiatan pada web server akan dibagi menjadi empat langkah dasar, dan ada dua
komponen yang terlibat, yaitu sebuah web browser dan web server.
Langkah-langkah tersebut adalah sebagai berikut :
1.
Komputer
klien
menggunakan
web
browser  untuk
berhubungan
dengan
web
server dan meminta sebuah halaman web.
2.
Selama menerima permintaan, web server menempatkan file atau program yang
sesuai di dalam file sistem.
  
25
3.
Setelah mengalokasikan file, web server mengambil file dari file sistem.
4.
Web  server  kemudian mengirim file 
tersebut  ke  web browserFile hasil
permintaan diterima web browser dan di-render pada komputer klien.
1.13  Web Browser
Browser atau web browser adalah perangkat lunak di sisi klien yang digunakan untuk
mengakses
informasi
web.
Internet Explorer,
Netscape
dan Mozilla
merupakan
contoh-
contoh browser yang ada. (Kadir, 2003, p6).
Pada awalnya web hanya berupa tulisan
saja. Kemudian pada tahun 1992, peneliti
dari National Center Supercomputing Application di University of Illinois mengembangkan
Mosaic, yaitu web browser pertama yang menampilkan gambar. Penggunaan Web Browser
kemudian menjadi sangat universal, karena web browser dapat memberikan interface yang
sama pada sistem
operasi
yang berbeda.
Browser mampu berkomunikasi
melalui HTTP,
mengatur
HTML,
dan
menampilkan
tipe data tertentu seperti GIF (Graphic Interchange
Format) dan JPEG (Joint Photographic Expert Group) untuk grafik dan Microsoft
Windows WAV untuk suara. (Turban, Rainer dan Potter, 2001, p224).
1.14  Istilah-istilah yang Berhubungan dengan Internet dan Web
Berikut ini merupakan istilah-istilah yang berhubungan dengan internet dan web :
1.
Hypermedia
Struktur dari elemen yang ditautkan, di mana pengguna dapat menavigasi
suatu media atau informasi yang disimpan pada web. (Vaughan, 2006, p449)
2.
URL
  
26
Alamat dokumen atau file dalam internet. (Vaughan, 2006, p458)
3.
Hypertext Markup Language (HTML)
HTML
merupakan
bahasa
standar
bagi
web
yang
memformat
dokumen
dan menyatukan
link
dynamic hypertext
ke penyimpanan dokumen lain pada
komputer yang sama ataupun berbeda. (Turban, Rainer dan Potter, 2001, pg223)
4.
Hypertext Transfer Protocol (HTTP)
HTTP
menjelaskan
bagaimana
klien
dan server
berkomunikasi.
HTTP
merupakan
sebuah
protokol
yang
digunakan
untuk
mentransfer
halaman web
melalui internet. (Connolly dan Begg, 2010, pg1029).
1.15
Bahasa Pemrogramman Internet
Dalam proses
pengembangan aplikasi
yang
berkaitan
dengan
internet,
penggunaan
scripting language merupakan salah satu hal pendukung utama yang menentukan dinamis
dan statisnya sebuah aplikasi tersebut. Scripting language adalah sebuah bahasa yang dapat
menambah fitur – fitur tambahan pada HTML. Bahasa scripting ini dibagi ke dalam 2 jenis
yaitu client-side scripting dan server-side scripting.
1.15.1
Client Side Scripting
Client-side scripting adalah scripting yang berjalan di sisi client, dalam hal
ini
yaitu web
browser.
Client-side scripting
ini
biasa
digunakan
untuk
fungsi
fungsi standar yang tidak berkaitan dengan basis data. Dua contoh client-side
scripting yang paling banyak digunakan adalah Javascript dan VB Script.
  
27
1.15.2
Javascript
Menurut Eaglestone dan Ridley (2001, p242), javascript merupakan sebuah
cross
platform
scripting
language
dengan
fitur
object
oriented yang
dapat
menyediakan programming interface pada DOM. 
Javascript
menawarkan
pada
penggunanya untuk membuat sebuah halaman web yang bersifat dinamis.
Javascript   ini  dapat  dikombinasi  dengan  HTML  yang  dibatasi  oleh  tag
<script></script> ketika akan digunakan.
1.15.3
Server Side Scripting
Server-side scripting adalah scripting
yang dieksekusi
melalui web
server
seperti Apache, IIS dan yang lainnya. Server-side scripting sangat berguna ketika
dibutuhkan
suatu
fungsi
ataupun
validasi yang
terhubung
dengan
basis
data,
keamanan   server,   ataupun   proses   melalui   server.  Penggunaan   server-side
scripting biasanya
merupakan
indikasi
bahwa
aplikasi
web
tersebut bersifat
dinamis.
Cara kerja server-side scripting dapat diibaratkan sebagai satu set instruksi
yang diproses oleh server, dan menghasilkan HTML. HTML yang dihasillkan
dikirim sebagai
bagian
dari
tanggapan
HTTP
ke
browser.
Browser
kemudian
menampilkan HTML tersebut.
  
28
1.16  PHP
PHP
merupakan html-embedded scripting language, atau
maksudnya adalah sebuah
bahasa
pemprograman
yang
penggunaannya dimasukkan
ke
dalam html.
PHP
mudah
digunakan, dan juga merupakan alat yang multiguna.
Dengan menggunakan PHP maka maintenance suatu situs web menjadi lebih mudah.
Proses
update data dapat dilakukan dengan menggunakan aplikasi yang dibuat dengan
menggunakan script PHP.
PHP dapat berjalan pada semua jenis
sistem operasi, antara
lain pada
LINUX dan
varian UNIX, Microsoft Windows, MAC OS X, serta RISC OS. Selain itu PHP juga dapat
berjalan 
pada 
beberapa 
jenis 
web 
server,
antara 
lain 
Apache, 
Microsoft 
Internet
Information,  Services,  Personal  web server,  Netscape,  dan  Iplanet  server,  Caudium,
Xitami, OmniHTTPd, dan masih banyak lagi.
PHP juga memiliki banyak basis data populer yang sering digunakan dalam beberapa
web
server, antara
lain Adabas
D, Ingres, Oracle,
dBase,
InterBase,
Ovrimos,
Empress,
FrontBase, PostgreSQL,
mSQL, Solid, HyperWave, Direct MS-SQL, Sybase, IBM DB2,
MySQL, Velocis, Informix, ODBC, dan Unix dbm.
1.17  Keunggulan PHP
Berikut adalah beberapa keunggulan dari PHP :
1.
PHP
mampu
berjalan
di
beberapa
server,
misalnya
Apache,
Microsoft,
IIS,
PHTTPD, FHTTPD dan yang lainnya.
  
29
2.
PHP
mendukung akses kebeberapa basis data
yang sudah ada, seperti MySQL,
mSQL, dBase, Unix dan yang lainnya.
3.
PHP mampu berjalan di LINUX sebagai platform sistem operasi, windows, dan
yang lainnya.
4.
PHP merupakan salah satu scripting language yang termudah untuk dipelajari.
5.
PHP
merupakan
program
open
source
atau
gratis,
serta
mudah
di-share
dan
diubah di antara komunitas pengembangan web.
1.18  MySQL
MySQL adalah sebuah sistem manajemen relasi basis data yang bersifat open source,
memiliki level
enterprise, dan multithreaded. Maksudnya adalah selain bebas digunakan
karena bersifat
open
source,
MySQL
juga
dapat
digunakan pada
aplikasi
yang
berbeda
pada waktu yang bersamaan. (Maslakowski, 2000, p10).
1.19  Keunggulan MySQL
MySQL 
adalah 
sistem 
manajemen 
relasi 
basis 
data  (Relational
Database
Management
System
/
RDBMS)
yang
bersifat
free
dan
termasuk
dalam kategori
open
source. Selain karena sifatnya yang free, adapun kelebihan MySQL adalah sebagai berikut:
1.
Open source software, MySQL dilengkapi dengan source code yang lengkap. Ini
berarti
kita
bisa
mempelajari source
code
tersebut
dan
mengubahnya
sesuai
dengan   kebutuhan   kita.   Karena   merupakan   open   source   software,   bisa
ditemukan banyak support dari software lain.
  
30
2.
SQL
Support,
karena
seperti
yang
bisa
dilihat,
terdapat
kata
'SQL'
di
dalam
MySQL, hal ini dikarenakan MySQL men-support SQL, yaitu sebuah bahasa
yang digunakan untuk membuat query data dari sebuah basis data.
3.
Superb
performance
and
reliability,
MySQL
memiliki
performa
yang
sangat
cepat dan terpercaya, bahkan di lingkungan
yang
memiliki
kebutuhan
yang
kompleks.
4.
Ease  of  use, MySQL merupakan sebuah manajemen relasi basis data yang
sederhana namun
memiliki fitur-fitur yang kuat. MySQL juga mudah untuk di-
install
dan
digunakan,
dilengkapi
dengan
aplikasi client atau
server,
serta
dilengkapi
dengan
tools
lain
yang
berfungsi
memudahkan
administrasi
basis
data.
1.20  Interaksi Manusia dan Komputer (IMK)
Menurut
Shneiderman
(2010,
p58-p59)
tujuan penting bagi desainer adalah user
interface
yang konsisten.
Bagaimanapun definisi dari konsistensi sendiri susah dipahami
dan
memiliki
banyak
tingkatan
yang
terkadang
saling
bertabrakan. Argumen
untuk
konsistensi adalah bahwa bahasa perintah atau serangkaian tindakan harus terurut, dapat
diprediksi dan dapat dideskripsikan oleh beberapa aturan sehingga mudah untuk dipelajari
dan dikuasai.
Menurut Shneiderman (2010, p5), ada delapan hal yang perlu diperhatikan dalam
membuat desain yang dinamakan dengan istilah 8 aturan emas. Menurut Shneiderman
(2010,  p74-p75),  terdapat  delapan  aturan  emas  dalam  merancang  antarmuka  /  user
interface :
  
31
1.
Berusaha untuk konsisten
Tindakan konsisten diperlukan dalam situasi yang serupa. Hal ini biasa
digunakan
dalam pembuatan
prompt,
menu
dan
help
screens.
Begitu
juga
dengan pembuatan command user.
2.
Menyediakan sebuah fungsional yang bersifat universal
Ketika pertama kali menggunakan sistem, pengguna yang masih baru
dan masih tidak familiar dapat dibantu melalui sebuah prosedur yang bersifat
dasar sehingga dapat dengan lebih mudah dimengerti. Seiring
meningkatnya
frekuensi penggunaan, pengguna juga ingin mengurangi jumlah interaksi dan
meningkatkan laju dari interaksi tersebut. Singkatan, tombol
fungsi, perintah
tersembunyi dan fasilitas makro sangat membantu expert users
3.
Memberikan umpan balik yang informatif
Untuk
setiap
tindakan
dari
operator,
harus
ada
sistem umpan
balik.
Untuk tindakan-tindakan sering dan kecil, tanggapan dapat bersifat sederhana
sedangkan  untuk  tindakan  jarang  dan  utama,  respon  harus  bersifat  lebih
detail.
4.
Merancang dialog untuk menghasilkan suatu penutupan
Urutan – urutan dari tindakan-tindakan yang ada harus diatur menjadi
bagian awal, tengah dan akhir. Umpan
balik
informatif
pada
sekumpulan
tindakan-tindakan
yang ada
memberikan kepuasan penyelesaian, rasa lega,
tanda untuk menghentikan suatu rencana serta pilihan dari pikiran mereka dan
indikasi
bahwa
caranya
jelas
yaitu untuk mempersiapkan sekelompok
tindakan-tindakan yang ada berikutnya
  
32
5.
Memberikan penanganan kesalahan yang sederhana
Sebisa
mungkin desain
yang dibuat berasal dari sistem
yang ada agar
pengguna tidak berbuat kesalahan yang serius. Namun, jika ada kesalahan
yang dibuat oleh user maka sistem harus dapat mendeteksi kesalahan tersebut
dan  melakukan  sebuah  mekanisme  yang  mudah  dipahami  sebagai
penanganan kesalahan.
6.
Memperbolehkan user untuk kembali ke tindakan yang sebelumnya
Fitur ini bertujuan untuk mengurangi kecemasan, karena pengguna tahu
bahwa kesalahan dapat dibatalkan.
Sehingga
mendorong
pengguna
dalam
mejelajah pilihan-pilihan tindakan yang tidak biasanya dilakukan. Bentuk dari
pembalikan tindakan dapat berupa satu tindakan, entri data atau sekelompok
lengkap dari tindakan-tindakan yang ada
7.
Mendukung tempat pengendali internal (Internal Locus of Control)
Pengguna
juga
ingin
menjadi
pengontrol
sistem dan
berharap
sistem
tersebut   akan   merespon   tindakan   yang   dilakukan   pengguna   daripada
pengguna hanya merasa seperti seseorang yang dikontrol oleh sistem.
Sebaiknya
sistem dirancang
sedemikian
rupa
sehingga
pengguna
menjadi
inisiator daripada responden
8.
Mengurangi beban ingatan jangka pendek
Keterbatasan ingatan manusia dalam mengolah informasi dalam jangka
waktu
pendek
memerlukan sesuatu
yang
dapat 
ditampilan
namun
diberikan
dalam bentuk yang sederhana. Halaman-halaman ganda diperketat, diberikan
  
33
cukup  waktu  untuk  dapat  berlatih  mengenai  kode,  mnemonic  dan  urutan
tindakan
Menurut Shneiderman (2010, p32), terdapat lima faktor manusia terukur yang dapat
dijadikan sebagai pusat evaluasi, yaitu :
1.
Waktu belajar, berapa
lama
waktu
yang diperlukan user
untuk
mempelajari
cara yang relevan untuk melakukan suatu tugas?
2.
Kecepatan   kinerja,   berapa   lama   waktu   yang   diperlukan   user  untuk
mengerjakan suatu tugas?
3.
Tingkat  kesalahan  user,  berapa  banyak  kesalahan  dan  jenis  kesalahan
apakah yang bisa terjadi saat user mengerjakan tugas tersebut?
4.
Daya
ingat, bagaimana
user
melakukan
manajemen   pengetahuan setelah
beberapa waktu? Ingatan mungin dapat dihubungkan dengan waktu belajar
dan frekuensi penggunaan yang dilakukan.
5.
Kepuasan  yang  subjektif,  seberapa  banyak  user menyukai  penggunaan
bermacam aspek
dalam antarmuka?
Jawaban
dapat
dipastikan
melalui
wawancara
atau
melakukan
survey, termasuk
skala
kepuasan
dan
tempat
untuk komentar bebas dari user.
1.21  Sepuluh  Kesalahan Utama Pada Design Web
Menurut Nielsen
(2000), dalam
membuat
sebuah
design
untuk
website
yang akan
dibangun terdapat beberapa kesalahan dan kesalahan tersebut terus terulang tanpa ada yang
  
34
mengetahui.
Sehingga
Nielsen
merumuskan 10
kesalahan
yang paling
sering
dilakukan.
Kesalahan-kesalahan tersebut diantaranya adalah :
1.
Proses pencarian yang tidak baik
Secara keseluruhan sebuah mesin pencari dapat mengurangi kegunaan
ketika
tidak bisa
mengantisipasi
kesalahan
tulis,
kata
jamak
dan
beberapa
macam kesalahan lainnya.
2.
PDF sebagai bacaan online
Banyak pengguna tidak suka membuka file PDF ketika sedang browsing
karena untuk melakukan pekerjaan mudah seperti mencetak dan menyimpan
dokumen  menjadi  sulit  karena  untuk  standar  command  di  browser  tidak
berlaku.
3.
Tidak mengubah warna dari tautan yang pernah dikunjungi
Pengetahuan tentang halaman sebelumnya dapat membantu mengerti
lokasi
tempat
sekarang
berada.
Mengetahui
keadaan
sebelum dan
keadaan
sekarang akan membuat lebih mudah ketika menentukan langkah selanjutnya.
4.
Tulisan yang sulit dibaca
Kumpulan tulisan adalah sebuah kesalahan yang fatal untuk interaksi
karena membosankan, dan cukup melelahkan untuk dibaca. Tulislah di web
untuk online bukan untuk hal akan dicetak.
5.
Ukuran tulisan yang statis
  
35
CSS stylesheets kadang membuat website tidak bisa diubah ukuran
tulisannya
melalui
web
browser. Tulisan
yang
kecil
akan
mengurangi
kemampuan membaca untuk sebagian besar orang yang diatas umur 40 tahun.
6.
Judul dari halaman tidak jelas dalam pencarian search engine
Pencarian adalah hal yang paling penting untuk pengguna dalam
menemukan sebuah website. Pencarian juga merupakan hal yang penting untuk
pengguna dalam pencarian mereka
untuk
website pribadi. Judul dari halaman
website merupakan salah satu
alat
utama
untuk
menarik pengunjung
dari
list
pencarian dan membantu pengguna yang sudah ada
untuk mencari halaman –
halaman khusus yang mereka butuhkan
7.
Semua yang kelihatan seperti iklan
Pengguna web sudah belajar untuk berhenti untuk memperhatikan semua
iklan
yang
menghalangi dari
tujuan utama
mereka. Secara
garis besar, ketika
mengabaikan
sesuatu,
pengguna
tidak
akan
melihat
lagi
secara
lebih
detail
untuk mengetahui apa itu.
8.
Melanggar konvensi desain
Konsistensi adalah aturan utama yang paling besar. Ketika sebuah hal
selalu berlaku
sama, pengguna tidak perlu khawatir akan selanjutnya terjadi.
Sebaliknya,
pengguna
akan
tahu
apa
yang akan
terjadi
dari
pengalaman
sebelumnya.
9.
Membuka halaman browser baru
  
36
Para  desainer  membuka  sebuah  halaman  browser baru  dengan  teori
bahwa  untuk  membuat  user  tetap  berada  di  website  mereka.  Akan  tetapi,
strategi ini mempunyai umpan balik yang kurang baik karena hal ini
menyebabkan tombol back tidak dapat digunakan yang biasanya pengguna
menggunakan untuk kembali ke website sebelumnya.
10.
Tidak menjawab pertanyaan dari user
Seorang user
mempunyai sebuah tujuan ketika berkunjung ke sebuah
website.
Mereka
berkunjung
karena
ingin mencapai
suatu
pencapaian.
Kesalahan
utama
dari
sebuah
website
adalah
gagal
dalam menyediakan
informasi yang dicari oleh user.