bab ii landasan teori...7 bab ii landasan teori 2.1. konsep dasar web sebuah situs web biasanya...
TRANSCRIPT
7
BAB II
LANDASAN TEORI
2.1. Konsep Dasar Web
Sebuah situs web biasanya ditempatkan setidaknya pada sebuah server web
yang dapat diakses melalui jaringan seperti internet, ataupun jaringan wilayah
lokal melalui alamat internet yang dikenali sebagai url. Gabungan atas semua
situs yang dapat diakses public di internet disebut juga sebagai world wide web
atau lebih tepatnya dikenal dengan singkatan www. Pada bab ini diuraikan
beberapa konsep dasar web, diantaranya adalah sebagai berikut:
A. Pengenalan Internet
Menurut Sibero (2011:10) ”Internet (Interconnected Network) adalah jaringan
komputer yang menghubungkan antar jaringan secara global, internet dapat juga
disebut jaringan dalam suatu jaringan yang luas”.
Seperti halnya jaringan komputer lokal maupun jaringan komputer area,
internet juga menggunakan protokol komunikasi yang sama yaitu TCP/IP
(Transmission Control Protocol/Internet Protocol). Struktur protokol Internet RFC-
1122 terdiri dari 4 lapisan (layer) yaitu, menurut (Sibero, 2011:10)
a. Application Layer
Lapisan aplikasi (Aplication Layer) adalah lapisan yang berisi semua protokol dan
metode yang mengatur komunikasi antar proses layanan komunikasi. Lapisan
8
Aplikasi terdiri dari: BGP, DHCP, FTP, IMAP, LDAP, IRC, POP, RPC, SMTP,
dll.
b. Transport Layer
Lapisan Transport (Transport Layer) adalah lapisan yang mengatur lalu lintas
pengiriman maupun penerimaan data. Lapisan Transport terdiri dari: TCP, UDP.
c. Internet Layer
Lapisan Internet (Internet Layer) adalah lapisan yang berfungsi mengatur proses
fragmentasi dan defragmentasi paket bergantung dari jenis protokol lapisan
internet. Lapisan Internet terdiri dari; IP (Ipv4, Ipv6), ICMP, IPSec.
d. Link Layer
Lapisan Penghubung (Link Layer) adalah lapisan yang mengatur hubungan antara
host dengan node. Host sebagai pengirim dari node adalah lokasi tujuan dari host.
Lapisan Penghubung terdiri dari: ARP, Tunnel (L2TP), PPP, Media Access
Control (Ethernet, DSL, ISDN).
Istilah-istilah yang umum dikenal di Internet antara lain :
1. Website (Situs web)
Menurut Bowo (2014:2) ”Website adalah halaman informasi yang disediakan
melalui jalur internet sehingga bisa diakses di seluruh dunia selama terkoneksi
dengan jaringan internet”.
2. WWW (World Wide Web)
Menurut Bowo (2014:2) ”WWW merupakan singkatan dari World Wide Web,
atau yang lebih sering kita dengar dengan sebuah website atau banyak yang
menyebutnya dengan kata web saja”.
9
3. Home page
Menurut Yuhefizar (2009:2) “home page adalah halaman awal sebuah
domain”.
4. Web Browser
Menurut Sibero (2011:12) ”Web Browser adalah aplikasi perangkat lunak
yang digunakan untuk mengambil dan menyajikan sumber informasi web”.
5. Universal Resource Locator (URL)
Menurut Bowo (2014:13) ”URL merupakan suatu rangkaian karakter dengan
format dan standar tertentu yang digunakan untuk menunjukkan alamat suatu
sumber seperti dokumen dan gambar di internet”.
6. Hypertext Transfer Protocol (HTTP)
Menurut Simarmata (2010:52) “HTTP adalah protokol komunikasi stateless
yang berbasiskan pada TCP yang awalnya digunakan untuk mengambil
kembali file-file HTML dari server Web ketika dicancang pada tahun 1991”.
7. Hypertext Markup Language (HTML)
Menurut Sibero (2011:19) ”HyperText Markup Language atau HTML adalah
bahasa yang digunakan pada dokumen web sebagai bahasa untuk pertukaran
dokumen web”.
Struktur dokumen HTML terdiri tag pembuka dan tag penutup. HTML
versi 1.0 dibangun oleh W3C, dan terus mengalami perkembangan. Sampai
saat ini HTML terakhir adalah versi 5.0. struktur dokumen HTML sebagai
berikut, menurut Sibero (2011:19).
10
<html>
<head>
<tittle></tittle>
</head>
<body></body>
</html>
8. Domain Name Service (DNS)
Menurut Syafrizal (2005:213) ”Domain Name System (DNS) adalah
Distribute database System yang digunakan untuk pencarian nama komputer
(name resolution) di jaringan yang menggunakan TCP/IP (Transmission
Control Protocol/Internet Protocol)”.
9. Web Server
Menurut Sibero (2011:11) ”Web server adalah sebuah komputer yang terdiri
dari perangkat keras dan perangkat lunak”.
B. Bahasa Pemrograman
Menurut Simarmata (2006:15) “bahasa komputer atau bahasa pemrograman
komputer, adalah instruksi standar untuk memerintah komputer”. Bahasa ini
memungkinkan seorang pemrograman dapat menentukan secara persis data nama
yang akan diolah komputer, bagaimana data ini akan disimpan atau diteruskan.
Berikut adalah jenis-jenis bahasa pemrograman yang digunakan yaitu:
11
1. Personal Home Pages (PHP)
Menurut Saputra (2013:2) menyimpulkan bahwa: “PHP memiliki
kepanjangan PHP Hypertext Preprocessor, merupakan suatu bahasa
pemrograman yang difungsikan untuk membangun suatu website dinamis”.
PHP menyatu dengan kode HTML tetapi beda kondisi. HTML digunakan
sebagai pembangun atau pondasi dari kerangka layout web, sedangkan PHP
difungsikan sebangai prosesnya, sehingga dengan adanya PHP tersebut,
sebuah web akan sangat mudah di-maintenance. PHP berjalan pada sisi
server, sehingga PHP disebut juga sebagai bahasa Server Side Scripting,
artinya bahwa dalam setiap/untuk menjalankan PHP, wajib membutuhlan web
server dalam menjalankannya. PHP ini bersifat open source, sehingga dapat
dipakai secara Cuma-cuma, dan mampu lintas platform, yaitu dapat berjalan
pada system operasi Windows maupun Linux. PHP juga dibangun sebagai
modul pada web server apache dan sebagai binary dapat berjalan sebagai
CGI.
Beberapa alasan yang menjadi dasar pertimbangan mengapa penulis
menggunakan bahasa pemrograman PHP, menurut Saputra (2013:2) :
1. Mudah dipelajari, alas an tersebut menjadi salah satu alasan utama untuk
menggunakan PHP, karena baik pemula pun akan mampu untuk menjadi
web master PHP.
2. Mampu lintas platform, artinya PHP dapat/mudah diaplikasikan ke
berbagai platform OS (Operating System) dan hamper semua browser juga
mendukung PHP.
12
3. Free alias gratis, bersifat open source.
4. PHP memiliki tingkat akses yang cepat.
5. Didukung oleh beberapa macam web server, PHP mendukung web server,
seperti Apache, IIS, Lighttpd, Xitami.
6. Mendukung database, PHP mendukung beberapa database, baik yang
gratis maupun yang bebrayar, seperti MYSQL, PostgreSQL, mSQL,
Informix, SQL Server, Oracle.
Secara prinsip, server akan bekerja apabila ada permintaan dari client, yaitu
kode-kode PHP. Client tersebut akan dikirimkan ke server, kemudian server
akan mengembalikan pada halaman sesuai istruksi yang diminta.
a. Server membaca permintaan dari client/browser.
b. Kemudian dilanjutkan untuk mencari halaman/page pada server.
c. Server melakukan instruksi yang diberikan oleh PHP untuk melakukan
modifikasi pada halaman/page.
d. Selanjutnya hasil modifikasi tersebut akan dikembalikan kepada
client/browser.
13
permintaan URL
Tanggapan GTTP(URL)
Sumber : Saputra (2013:2)
Gambar II.1. Cara Kerja PHP
2. Hypertext Markup Language (HTML)
Menurut Saputra (2013:1) ”HTML mempunyai kepanjangan Hyper Text
Markup Language, yaitu suatu bahasa pemrograman hyper text. Html ini
memiliki fungsi untuk membangun kerangka ataupun format web berbasis
html”.
3. Cascading Style Sheets (CSS)
Menurut Saputra (2013:6) “Cascading style sheets (CSS) merupakan suatu
bahasa pemrograman web yang digunakan untuk mengendalikan dan
membangun berbagai komponen dalam web sehingga tampilan web akan
lebih rapi, terstruktur, dan seragam”.
4. JQuery ( Javascript Library )
Menurut Sibero (2011:21) “JQuery adalah salah satu javascript framework
terbaik saat ini, jQuery (Javascript Library) dikembangkan John Resig pada
tahun 2008 di Bar Camp NYC. Pada awal perkembangannya, jQuery
(Javascript Library) pertama dibuat untuk meringkas penggunaan CSS
Selector dalam suatu pustaka fungsi. JQuery (Javascript Library) memiliki
WEB SERVER
KODE HTML
BROWSER
14
ciri khas pada penggunaan perintahnya prefix untuk jQuery (Javascript
Library) dengan tanda $ kemudian dilanjutkan dengan fungsi dan perintah”.
5. Macromedia Dreamweaver 8.0
Menurut Akbar (2006:11) “Macromedia dreamweaver adalah sebuah editor
HTML profesional untuk perancangan (design), pengkodean (coding), dan
pengembangan situs web, halaman web dan aplikasi web. Bekerja pada
lingkungan visual editing, Dreamweaver menyediakan suatu tool yang sangat
membantu untuk pembuatan web”.
C. Basis Data
Menurut Rossa dan Shalahuddin (2013:43) “Sistem basis data adalah system
terkomputerisasi yang tujuan utamanya adalah memelihara data yang sudah diolah
atau informasi dan membuat informasi tersedia saat dbutuhkan”.
1. MySQL (My Structure Query Languavge)
Menurut Sibero (2011:97) “MySQL (My Structure Query Language) adalah
suatu RDBMS (Relation Database Management System) yaitu aplikasi sistem
yang menjalankan fungsi pengolahan data”.
Berikut beberapa fungsi MySQL yang sering digunakan beserta deskripsi
singkat masing-masing fungsi tersebut, menurut Sibero (2011:71):
a) mysql_affected_rows()
Digunakan mengambil jumlah record hasil eksekusi. Berlaku untuk
query, INSERT, UPDATE, REPLACE, DELETE.
15
b) mysql_close()
Digunakan menutup koneksi database.
c) mysql_connect()
Digunakan membuka koneksi database.
d) mysql_create_db()
Digunakan membuka koneksi database.
e) mysql_db_name()
Digunakan mengambil nama database hasil dari mysql_list_dbs()
f) mysql_drop_db()
Digunakan menghapus suatu database.
g) mysql_errno()
Digunakan mengambil nomor index pesan kesalahan.
h) mysql_error()
Digunakan mengambil pesan kesalahan.
i) mysql_fetch_array()
Digunakan mengambil hasil record dan mendefinisikan dalam bentuk
array.
j) mysql_fetch_assoc ()
Digunakan mengambil hasil record seperti mysql_fetch_array dengan
tipe MYSQL_ASSOC.
k) mysql_free_result()
Digunakan mengosongkan memory hasil proses.
16
l) mysql_insert_id()
Digunakan mengambil nomor ID terakhir setelah eksekusi.
m) mysql_list_dbs()
Digunakan mengambil daftar database aktif pada server.
n) mysql_num_rows()
Digunakan mengambil jumlah baris database hasil query.
o) mysql_pconnect()
Digunakan membuka koneksi persisten database.
p) mysql_ping()
Digunakan untuk menguji respon server atau membuka kembali
koneksi database yang terputus. Fungsi ini berlaku untuk koneksi
database menggunakan mysql_connect().
q) mysql_query()
Digunakan untuk mengirimkan perintah query pada server.
r) mysql_real_escape_string()
Digunakan untuk mengubah karakter tanda baca menjadi bentuk yang
aman pada database.
s) mysql_ result()
Digunakan untuk mengambil data hasil.
t) mysql_select_db()
Digunakan untuk memilih dan mengaktifkan database.
u) mysql_unbuffered_query()
Digunakan untuk mengirimkan perintah pada server dan hasilnya
17
tidak disimpan dalam buffery memory.
2. SQL (Structured Query Language)
Menurut Rossa dan Shalahuddin (2013:46) “SQL (Structured Query
Language) adalah bahasa yang digunakan untuk mengelola data pada
RDBMS. SQL awalnya dikembangkan berdasarkan teori aljabar relasional dan
kalkulus”.
3. PhpMyAdmin
Menurut Sibero (2011:376) menyimpulkan bahwa:
PhpMyAdmin adalah aplikasi web yang dibuat oleh phpmyadmin.net.
phpMyadmin digunakan untuk administrasi database MySQL.
4. Apache2Triad
Menurut Saropi (2008:8) “Apache adalah aplikasi yang berfungsi sebagai
webserver sehingga memungkinkan user internet dapat mengakses suatu
website di dalam suatu mesin server komputer atau juga disebut Web Hosting.
D. Model Pengembangan Perangkat Lunak
Metode yang digunakan pada pengembangan perangkat lunak ini
menggunakan model waterfall. Tahap pengembangan perangkat lunak menggunakan
metode waterfall sering juga disebut model sekuensial linier (sequential linear) atau
alur hidup klasik (classic life cycle). Model waterfall menyediakan pendekatan alur
hidup perangkat lunak secara sequensial atau terurut dimulai dari analisis, desain,
pengkodean, pengujian dan tahap pendukung (support) (Rossa dan Shalahuddin,
2013:28), yaitu:
18
1. Analisis Kebutuhan Perangkat Lunak
Proses pengumpulan kebutuhan dilakukan secara intensif untuk
mespesifikasikan kebutuhan perangkat lunak agar dapat dipahami perangkat
lunak seperti apa yang dibutuhkan oleh user.
2. Perancangan Sistem (Design)
Desain perangkat lunak adalah proses multi langkah yang fokus pada desain
pembuatan program perangkat lunak termasuk struktur data, arsitektur
perangkat lunak, representasi antarmuka, dan prosedur pengodean
3. Pembuatan Kode Program
Desain harus translasikan ke dalam program perangkat lunak. Hasil dari tahap
ini adalah program komputer sesuai dengan desain yang telah dibuat pada
tahap desain.
4. Pengujian
Pengujian fokus pada perangkat lunak secara dari segi lojik dan fungsional
dan memastikan bahwa semua bagian sudah diuji. Untuk meminimaisir dan
memastikan keluaran yang dihasilkan sesuai dengan keinginan.
5. Pendukung atau pemeliharaan (Maintenance)
Tidak menutup kemungkinan sebuah perangkat lunak mengalami perubahan,
bisa terjadi kesalahan karena tidak terdeteksi saat pengujian. Tahap
pendukung dapat mengulangi proses pengembangan mulai dari analisa
spesifikasi untuk perubahan perangkat bukan untuk membuat perangkat lunak
baru.
19
Sistem/ rekayasa informasi
Sumber : Shalahuddin (2013:28)
Gambar II.2. Ilustrasi Model Waterfall
2.2. Teori Pendukung
A. Pengertian Struktur Navigasi
Menurut Purnama (2006:12) menjelaskan “Struktur Navigasi adalah struktur
atau alur cerita dari sebuah program yang biasanya digunakan untuk menghubungkan
hal-hal web berdasarkan elemen-elemen yang digunakan aplikasi web”.
Bentuk dasar dari peta navigasi adalah sebagai berikut:
1. Struktur Navigasi Linier
Pengguna akan melakukan navigasi secara berurutan, dari frame atau bye
informasi yang satu ke yang lainnya.
Sumber: Binanto (2010:269)
Gambar II.3. Struktur Navigasi Linear
Pengujian Pengodean Desain Analisis
20
2. Struktur Navigasi Hirarki
Struktur dasar ini disebut juga struktur “linier dengan percabangan” karena
pengguna melakukan navigasi disepanjang cabang pohon struktur yang terbentuk
oleh logika.
Sumber: Binanto (2010:269)
Gambar II.4. Struktur Navigasi Hirarki
3. Struktur Navigasi Non Linier
Pengguna akan melakukan navigasi dengan bebas melalui isi proyek dengan
tidak terikat dengan jalur yang sudah ditentukan sebelumnya.
Sumber: Binanto (2010:270)
Gambar II.5. Struktur Navigasi Non Linier
21
4. Struktur Navigasi Campuran
Pengguna ini akan melakukan navigasi dengan bebas (secara non linier),
tetapi terkadang dibatasi presentasi linier film atau informasi penting atau data yang
paling terorganisasi secara logis pada suatu hirarki.
Sumber: Binanto (2010:270)
Gambar II.6 Struktur Navigasi Composite
B. ERD (Entity Relationship Diagram)
1. Entity Relationship Diagram
Menurut Simarmata (2006:4) “Entity Relationship Diagram adalah alat
pemodelan data utama dan akan membantu mengorganisasikan data dalam suatu
proyek kedalam entitas-entitas dan menentukan hubungan antar entitas”.
22
2. Elemen-elemen Diagram Hubungan Entitas, (Frieyadie, 2007:10-12) :
a . Entitas (Entity)
Entitas adalah suatu data yang dapat disimpan dan berguna bagi badan atau
perusahaan, dengan kata lain, suatu objek yang dapat dibedakan dengan objek
lainnya. Entitas digambarkan dengan kotak persegi panjang.
Sumber: Frieyadie (2007:10)
Gambar II.7.
Entitas
b. Atribut (Attribute)
Atribut menunjukkan karakteristik dari tiap-tiap entitas. Atribut digambarkan
dengan bentuk oval.
Sumber: Frieyadie (2007:10)
Gambar II.8.
Atribut
c. Relasi (Relationship)
Relasi menunjukkan hubungan yang terjadi antar entitas. Relasi digambarkan
dengan bentuk belah ketupat atau diamond.
Nama Entitas
Nama Atribut
23
Sumber: Frieyadie (2007:10)
Gambar II.9. Relasi
d. Line Connector
Line Connector digambarkan dengan bentuk garis tunggal
Sumber: Frieyadie (2007:10)
Gambar II.10. Line Connector
e. Atribut Utama
Atribut digambarkan dengan bentuk oval, dengan keterangan diberi garis
bawah absolut.
Sumber: Frieyadie (2007:10)
Gambar II.11. Atribut Utama
f. Atribut Pilihan
Atribut digambarkan dengan bentuk oval dengan keterangan diberi garis
bawah putus-putus.
nomor
24
Sumber: Frieyadie (2007:10)
Gambar II.12. Atribut Pilihan
3. Istilah yang harus dipahami sebelum merancang basis data dengan
menggunakan model entity relationship diagram, yaitu. Menurut Kusrini
(2007:24):
a. Superkey
Satu atau lebih atribut (kump atribut) yang dapat dibedakan setiap baris data
dalam table secara unik.
b. Kandidat Key
Merupakan kumpulan atribut minimal yang membedakan setiap baris data
dalam tabel secara unik. Untuk bias menjadi kandidat key, suatu atribut harus
memenuhi persyaratan sebagai berikut, (Kusrini, 2007:24):
1. Untuk satu nilai hanya mengidentifikasikan satu baris dalam satu relasi
(unik).
2. Tidak memiliki subset yang juga merupakan kunci relasi.
3. Tidak dapat bernilai null.
c. Kunci Relasi (Relation Keys)/Kunci Utama (Primary Key)
Kunci relasi terdiri dari satu atau lebih atribut-atribut relasi. Agar bisa menjadi
sebuah primary key, sebuah atribut haruslah memenuhi persyaratan sebagai
kandidat key.
nomor
25
d. Kunci Alternatif (Alternate Key)
Kunci alternative dibuat ketika tidak ada satu pun atribut dalam sebuah relasi
yang bisa mewakili relasi tersebut, atau ada yang bisa menjadi kandidat key
tetapi tidak cukup efektif untuk digunakan sebagai primary key.
e. Komposit Key
Primary key yang terdiri dari lebih dari 1 atribut.
f. Foreign Key (FK)
istilah FK juga banyak digunakan dalam perancangan. Sebuah FK adalah
sekumpulan atribut dalam suatu relasi (misal A) sedemikian sehingga
kumpulan atribut ini bukan kunci relasi A tetapi merupakan kunci dari relasi
lain.
g. Kardinalitas Pemetaan
Kardinalitas pemetaan atau rasio kardinalitas menunjukkan jumlah entity yang
dihubungkan ke satu entity lain dengan suatu relationship sets. Kardinalitas
pemetaan meliputi:
a. Hubungan satu ke satu (one to one).
Yaitu satu entity dalam A dihubungkan dengan `maksimum satu entity.
b. Hubungan satu ke banyak (one to many).
Yaitu satu entity dalam A dihubungkan dengan sejumlah entity dalam
entity dalam B dihubungkan dengan maksimum satu entity dalam A.
c. Hubungan banyak ke satu (many to one).
Yaitu satu entity dalam A dihubungkan dengan maksimum satu entity B.
Satu entity dalam B dapat dihubungkan dengan sejumlah entity dalam A.
26
d. Hubungan banyak ke banyak (many to many).
Satu entity dalam A dihubungkan dengan sejumlah entity dalam entity
dalam B dihubungkan dengan sejumlah entity dalam A.
2. LRS (Logical Record Structure)
Menurut Wulandari (2013:17), “Logical Record Structure dibentuk dengan
nomor tipe record”. Beberapa tipe record digambarkan oleh kotak empat persegi
panjang dan dengan nama yang unik. Beda LRS (logical record structure) dengan
diagram entity reletionship diagram nama tipe record berada diluar kotak field tipe
record ditempatkan. LRS (logical record structure) terdiri dari link-link tentara tipe
record. Link ini menunjukan arah dari satu tipe record lainnya. Banyak link dari LRS
(logical record structure) yang diberi tanda field-field yang kelihatan pada kedua link
tipe record. Pengambaran LRS (logical record structure) mulai dengan menggunakan
model yang dimengerti. Dua metode yang dapat digunakan, dimulai dengan
hubungan kedua model yang dapat dikonversikan ke LRS (logical record structure).
Metode lain dimulai dengan Entity Relationship Diagram dan langsung
dikonversikan ke LRS (logical record structure).
1. Konversi ERD (Entity Relationship Diagram) ke LRS (Logical Record
Structure), Diagram Entity Relationship harus diubah kebentuk LRS (struktur
record secara logika). Dari bentuk LRS (logical record structure) inilah yang
nantinya dapat ditransformasikan ke bentuk relasi (tabel).
2. Konversi ERD (Entity Relationship Diagram) ke LRS (logical record structure)
sebuah model sistem yang digambarkan dengan sebuah ERD (Entity
Relationship Diagram) akan mengikuti pola pemodelan tertentu. Dalam
27
kaitannya dengan konversi ke LRS (logical record structure), untuk perubahan
yang terjadi adalah mengikuti aturan-aturan berikut:
a. Setiap entitas diubah kebentuk kotak dengan nama entitas, berada diluar kotak
dan atribut berada di dalam kotak.
b. Sebuah relationship kadang disatukan, dalam sebuah kotak bersama entitas,
kadang sebuah kotak bersama-sama dengan entitas, kadang disatukan dalam
sebuah kotak tersendiri.
3. Konversi LRS (logical record structure).ke relasi (tabel) relasi atau tabel adalah
bentuk pernyataan data secara grafis 2 (dua) dimensi, yang terdiri dari kolom dari
baris. Relasi adalah bentuk visual dari sebuah file, dan tiap tuple dalam sebuah
field atau yang dalam bentuk lingkaran Diagram entity relationship dikenal
dengan sebutan atribut. Konversi dari LRS (logical record structure).
Dilakukan dengan cara:
a. Nama LRS (logical record structure) menjadi nama relasi.
b. Tiap atribut menjadi sebuah kolom di dalam relasi.
C. Pengujian Web
Menurut Shalahuddin (2013:272) “Pengujian adalah satu set aktifitas yang
direncanakan dan sistematis untuk menguji atau mengevaluasi kebenaran yang
diinginkan”.
28
Pengujian untuk validasi memiliki beberapa pendekatan sebagai berikut,
menurut Shalahuddin (2013:275):
1. Black Box Testing
“Black box testing (Pengujian kotak hitam) adalah menguji perangkat lunak
dari segi spesifikasi fungsional tanpa menguji desain dan kode program”.
Pengujian berfungsi untuk mengetahui apakah fungsi , masukan, dan keluaran
perangkat sesuai dengan yang dibutuhkan. Pengujian kotak hitam bersifat
mencoba semua fungsi dengan perangkat lunak apakah sesuai dengan
spesifikasi yang dibutuhkan.