bab ii landasan teori - repository.bsi.ac.id · 7 bab ii landasan teori 2.1. konsep dasar web...

16
7 BAB II LANDASAN TEORI 2.1. Konsep Dasar Web 2.1.1. Website Menurut Arief (2011:8) Pengertian website adalah ”kumpulan dari halaman web yang sudah dipublikasikan di jaringan internet dan memiliki domain/URL (Uniform Resource Locator) yang dapat di akses semua pengguna internet dengan cara mengetikan alamatnya. Hal ini dimungkinkan dengan adanya teknologi World Wide Web (WWW) fasilitas hypertext guna menampilkan data berupa teks, gambar, animasi, suara dan multimedia lainnya data tersebut dapat saling berhubungan pada web server untuk dapat di akses melalui jaringan internet. Agar data pada web dapat di baca kita harus menggunakan web server terlebih dahulu seperti Mozilla Firefox, Internet Explorer, Opera Mini atau yang lainnya. Situs website di kategorikan menjadi 2 yaitu website statis dan website dinamis, website statis adalah website yang berisi atau menampilkan informasi informasi yang sifatnya tetap (statis), sedangkan website dinamis adalah website yang menampilkan informasi serta dapat berinteraksi dengan user. 2.1.2. Internet Menurut Sukamto dan Shalahuddin (2008:3) internet atau internetwork adalah sekumpulan jaringan berbeda yang saling terhubung bersama sebagai satu kesatuan dengan menggunakan berbagai macam protocol, salah saatunya adalah protocol TCP/IP (Transmission Control Protokol / Internet Protokol.

Upload: others

Post on 17-Jan-2020

7 views

Category:

Documents


0 download

TRANSCRIPT

7

BAB II

LANDASAN TEORI

2.1. Konsep Dasar Web

2.1.1. Website

Menurut Arief (2011:8) Pengertian website adalah ”kumpulan dari halaman

web yang sudah dipublikasikan di jaringan internet dan memiliki domain/URL

(Uniform Resource Locator) yang dapat di akses semua pengguna internet dengan

cara mengetikan alamatnya”. Hal ini dimungkinkan dengan adanya teknologi

World Wide Web (WWW) fasilitas hypertext guna menampilkan data berupa teks,

gambar, animasi, suara dan multimedia lainnya data tersebut dapat saling

berhubungan pada web server untuk dapat di akses melalui jaringan internet.

Agar data pada web dapat di baca kita harus menggunakan web server terlebih

dahulu seperti Mozilla Firefox, Internet Explorer, Opera Mini atau yang lainnya.

Situs website di kategorikan menjadi 2 yaitu website statis dan website dinamis,

website statis adalah website yang berisi atau menampilkan informasi – informasi

yang sifatnya tetap (statis), sedangkan website dinamis adalah website yang

menampilkan informasi serta dapat berinteraksi dengan user.

2.1.2. Internet

Menurut Sukamto dan Shalahuddin (2008:3) internet atau internetwork

adalah “sekumpulan jaringan berbeda yang saling terhubung bersama sebagai satu

kesatuan dengan menggunakan berbagai macam protocol, salah saatunya adalah

protocol TCP/IP (Transmission Control Protokol / Internet Protokol”.

8

TCP/IP adalah protocol yang paling banyak digunakan di internet. Protokol

TCP/IP merupakan cara standar untuk memaketkan dan mengalmatkan data

komputer (sinyal elektronik) sehingga data tersebut dapat dikirim ke komputer

terdekat atau keliling dunia dan tiba dalam waktu yang cepat tanpa rusak atau

hilang.

Internet memiliki layanan-layanan (service) yang telah banyak digunakan

pada saat ini antara lain :

a. Layanan Informasi dengan menggunakan World Wide Web/WWW

menggunakan protocol HTTP (Hypertext Transfer Protocol).

b. Layanan e-mail menggunakan protocol POP (Post Office Protocol), SMTP

(Simple Mail Transfer Protocol), dan IMAP (Internet Message Acces

Protocol).

c. Layanan chatting dengan menggunakan IRC (Internet Relay Chat).

d. Layanan pertukaran file dengan menggunakan FTP (File Transfer

Protocol).

e. Layanan akses komputer jarak jauh (telnet).

f. Layanan akses direktori dengan menggunakan LDAP (Lightweight

Directory Acces Protocol).

g. Layanan monitoring jaringan dengan menggunakan NMAP (National

Maternity Action Plan).

h. Layanan pengiriman modul aplikasi dengan menggunakan SOAP (Simple

Object Acces Protocol).

i. Layanan pengiriman suara dengan menggunakan VoIP (Voice over IP).

9

2.1.3. Bahasa Pemrograman

Dalam pembangunan sebuah aplikasi berbasis web digunakan berbagai

macam bahasa pemrograman. Program dibuat untuk menangani sesuatu yang

secara terus-menerus dan berulang kali. Beberapa contoh bahasa pemrograman

yang biasa digunakan dalam pembuatan sebuah website, antara lain:

1. HTML (Hypertext Markup Language)

Menurut Sutisna (2007:28), mengemukakan: “HTML atau Hypertext

Markup Language adalah suatu format data yang digunakan untuk membuat

dokumen hypertext (teks pada komputer yang memungkinkan user saling

mengirimkan informasi), Dokumen HTML harus disimpan dengan ekstensi

.htm atau .html. HTML memiliki tag-tag yang telah didefinisikan untuk

membuat halaman web”.

2. PHP (Perl Hypertext Preprocessor)

Menurut Andi (2011:11) PHP (Protocol Hypertext Preprocessor) adalah

“bahasa pemrograman yang berjalan dalam sebuah web server dan berfungsi

sebagai pengolah data pada sebuah server”. Dengan menggunakan program

PHP, sebuah website akan lebih interaktif dan dinamis.

3. CSS (Cascading Style Sheets)

Menurut Sulistyawan dkk (2008:32), “cascading style sheet (CSS) adalah

suatu bahasa stylesheet yang digunakan untuk mengatur tampilan suatu

dokumen yang ditulis dala bahasa markup”.

4. Javascript

Menurut Simarmata (2010:67) “JavaScript adalah bahasa yang berbentuk

kumpulan skrip yang pada fungsinya berjalan pada suatu dokumen HTML”.

10

Javascript mempunyai kemampuan grafis yang lebih lemah (hanya dapat

mengendalikan penempatan dan penampilan unsur-unsur halaman), tetapi

menjadi lebih secara terintegrasi dengan browser dan mempunyai

kemampuan integritas pengguna yang lebih luas daripada applets.

5. XAMPP

Menurut Aditya (2011:16) XAMPP adalah “perangkat lunak bebas, yang

mendukung banyak sistem operasi, merupakan kompilasi dari beberapa

program”. Fungsinya adalah sebagai server yang berdiri sendiri (localhost),

yang terdiri atas program Apache HTTP Server, MySQL Database, dan

penerjemah bahasa yang ditulis dengan bahasa pemrograman PHP dan Perl.

Nama XAMPP merupakan singkatan dari X (empat sistem operasi apapun).

Apache, MySQL, PHP dan Perl. Program ini tersedia dalam GNU General

Public Licence dan bebas, merupakan web server yang mudah digunakan

yang dapat melayani tampilan halaman web yang dinamis.

6. MYSQL

Menurut Andi (2011:140) MYSQL adalah “salah satu program yang dapat

digunakan sebagai database, dan merupakan salah satu software untuk

database server yang banyak digunakan”. MYSQL bersifat Open Source dan

menggunakan SQL.

2.1.4. Basis Data

Menurut Kustiyahningsih dan Anamisa (2011:145) “Basis data adalah

sekumpulan informasi yang diatur agar mudah dicari. Dalam arti umum

basis data adalah sekumpulan data yang diproses dengan bantuan komputer

yang memungkinkan data dapat diakses dengan mudah dan tepat, yang

dapat digambarkan sebagai aktivitas dari satu atau lebih organisasi yang

berelasi”.

11

Menurut Kustiyahningsih dan Anamisa (2011:146) “MYSQL dapat

didefinisikan sebagai sistem manajemen database. Database sendiri

merupakan struktur penyimpanan data. Untuk menambah, mengakses dan

memproses data yang disimpan dalam sebuah database komputer,

diperlukan sistem manajemen database seperti MYSQL Server”.

MYSQL termasuk jenis RDBMS (Relational Database Management

System). Sedangkan RDBMS sendiri akan lebih banyak mengenal istilah seperti

tabel, baris dan kolom digunakan dalam perintah-perintah di MYSQL. MYSQL

merupakan sebuah basis data yang mengandung satu atau sejumlah tabel. Tabel

terdiri atas sejumlah baris dan setiap baris mengandung satu atau beberapa kolom.

Di dalam PHP telah menyediakan fungsi untuk koneksi ke basis data dengan

sejumlah fungsi untuk pengaturan baik menghubungkan maupun memutuskan

koneksi dengan server database MYSQL sebagai sarana untuk mengumpulkan

informasi (Kustiyahningsih dan Anamisa, 2011:46).

Xampp merupakan paket tool yang berisi konfigurasi web server Apache,

PHP dan MySQL. Dengan menginstall Xampp, kita tidak perlu lagi untuk

mengkonfigurasi Apache, PHP dan MySQL secara manual karena Xampp telah

mengkonfigurasikannya secara otomatis.

PhpMyAdmin merupakan aplikasi yang dibuat khusus untuk mengelola

database MySQL. PhpMyAdmin juga merupakan salah satu bagian terpenting

dari Xampp.

12

Sumber: Kustiyahningsih dan Anamisa (2011:145)

Gambar II.I

Tampilan PhpMyAdmin

Untuk membuka aplikasi PhpMyAdmin, kita harus menjalankan web server

Apache dan server database MySQL melalui Xampp Control Panel.

Sumber : Kustiyahningsih dan Anamisa (2011:145)

Gambar II.2

Tampilan Xampp Control Panel

13

2.1.5. Model Pengembangan Perangkat Lunak

Menurut Sukamto dan Shalahuddin (2013:28) menyimpulkan bahwa

“Model SDLC air terjun (waterfall) sering juga disebut model sekuensial linier

(sequential linear) atau hidup klasik (classic life cycle)”. Model air terjun

menyediakan pendekatan alur hidup perangkat lunak secara sekuensial atau

berurutan dimulai dari analisis, desain, pengkodean, pengujian dan tahap

pendukung (support). Berikut adalah gambar model air terjun :

Analisis Desain Pengkodean Pengujian

Sistem/Rekayasa Informasi

Sumber : Sukamto dan shalahudin (2013 :27)

Gambar II.3

Ilustrasi model waterfall

1. Analisa kebutuhan perangkat lunak

Proses pengumpulan kebutuhan dilakukan secara intensif untuk

menspesifikasikan kebutuhan perangkat lunak agar dapat dipahami, seperti:

data barang, data customer, data transaksi, keranjang, testimonial

2. Desain

Desain perangkat lunak adalah proses multi/langkah yang fokus pada desain

pembuatan program perangkat lunak termasuk struktur data, arsitektur

perangkat lunak, representasi antarmuka, dan produser pengkodean. Tahap

14

analisa ini menstranslasi ke representasi desain agar dapat

diimplementasikan menjadi program pada tahap selanjutnya. Desain

perangkat lunak yang dihasilkan ada tahap ini juga perlu didokumentasikan.

3. Pembuatan kode program

Desain harus ditranslasikan kedalam 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 di uji. Hal ini dilakukan untuk

meminimalisir kesalahan (error), dan memastikan keluaran yang dihasilkan

sesuai dengan yang diinginkan.

5. Pendukung (support) atau pemeliharaan (maintenance)

Tidak menutup kemungkinan sebuah perangkat lunak mengalami perubahan

ketika sudah dikirimkan ke user. Perubahan bisa terjadi karena adanya

kesalahan yang muncul dan tidak terdeteksi saat pengujian atau perangkat

lunak harus beradaptasi dengan lingkungan baru. Tahap pendukung atau

pemeliharaan dapat mengulangi proses pengembangn mulai dari analisis

spesifikasi untuk perubahan perangkat lunak yang sudah ada, tapi tidak

untuk membuat perangkat lunak baru.

Dari kenyataan yang terjadi sangat jarang model air terjun dapat dilakukan

sesuai alurnya karena sebab berikut:

1. Perubahan spesifikasi perangkat lunak terjadi di tengah alur

pengembangan.

15

2. Sangat sulit bagi pelanggan untuk mendefinisikan semua spesifikasi di

alur awal pengembangan. Pelanggan sering kali butuh contoh

(prototype) untuk menjabarkan spesifikasi kebutuhan sistem lebih

lanjut.

3. Pelanggan tidak mungkin bersabar mengakomodasi perubahan

perubahan yang diperlukan di akhir alur pengembangan.

Dengan berbagai kelemahan yang dimiliki model air terjun tapi model ini

telah menjadi dasar dari model-model yang lain dalam melakukan perbaikan

model pengembangan perangkat lunak. Hal positif dari model air terjun adalah

struktur tahap pengembangan, dan sebuah tahap dijalankan setiap tahap

sebelumnya selesai dijalankan (tidak ada tumpang tindih pelaksanaan tahap).

2.2 Teori Pendukung

2.2.1. Struktur Navigasi

Menurut Yuhefizar (2008:67), menyimpulkan bahwa: struktur navigasi

adalah “struktur alur cerita dari sebuah program”. Sebelumnya menyatukan

elemen-elemen yang digunakan dalam aplikasi multimedia, sebaiknya kita

mendefinisikan objek-objek dan merancang tampilan. Agar semua objek yang

termasuk didalam aplikasi tidak mengalami kekacauan informasi, dengan kata

lain semua tampilan harus dapat memberikan informasi yang bulat dan utuh,

sehingga dapat tercapai suatu pembentukan aplikasi multimedia. Dalam

pembuatan aplikasi multimedia ada empat macam struktur navigasi yang bisa

digunakan, antara lain:

16

1. Struktur Navigasi Linear

Struktur Navigasi Linear merupakan struktur yang hanya mempunyai suatu

rangkaian cerita yang berurutan. Struktur ini menampilkan satu demi satu

tampilan layer secara berurutan menurut aturannya. Tampilan yang dapat

ditampilkan pada struktur jenis ini adalah satu halaman sebelumnya atau

satu halaman sesudahnya tidak dapat dua halaman sebelumnya atau dua

halaman sesudahnya. Pada struktur navigasai ini tidak diperkenankan

adanya percabangan. Biasanya struktur ini digunakan untuk membuat

multimedia persentasi karena tidak terlalu menurut keinteraksian tetapi

hanya memerlukan keindahan dan kemudahan menampilkan data sebagai

informasi. Berikut ini gambar struktuer navigasi linear:

Sumber : Yuhefizar (2008:69)

Gambar II.4

Struktur Navigasi Linear

2. Struktur Navigasi Non Linear

Struktur navigasi Non Linear (tidak berurut) merupakan pengembangan dari

struktur navigasi linear. Pada struktur ini diperkenankan membuat navigasi

bercabarng. Percabangan yang dibuat pada struktur Non Linear ini

walaupun terdapat percabangan tetapi tiap-tiap tampilan mempunyai

kedudukan yang sama, tidak ada master page dan slave page.

17

Sumber : Yuhefizar (2008:70)

Gambar II.5

Struktur Navigasi Non Linear

3. Navigasi Hierarki

Struktur Navigasi Hierarki (bercabang) merupakan suatu struktur yang

mengandalkan percabangan untuk menampilkan data berdasarkan kriteria

tertentu. Tampilan pada menu pertama akan disebut sebagai master page

(halaman utama kesatu), halaman utama ini akan mempunyai halaman

percabangan yang dikatakan slave page (halaman pendukung). Jika salah

satu halaman pendukung dipilih atau diaktifkan, maka tampilan tersebut

akan bernama master page (halaman utama kedua), dan seterusnya. Pada

struktur navigasi ini tidak dapat diperkenankan adanya tampilan secara

linear.

Sumber : Yuhefizar (2008:69)

Gambar II.6

Struktur Navigasi Hierarki

4. Struktur Navigasi Composite

18

Struktur Navigasi Composite (campuran) merupakan gabungan dari ketiga

struktur sebelumnya yaitu Linear, Nonlinear, dan Hierarchy. Struktur

navigasi ini juga biasa disebut struktur navigasi bebas. Jika suatu tampilan

membutuhkan percabangan, maka dapat dibuat percabangan. Dan bila

dalam percabangan tersebut terdapat suatu tampilan yang sama

kedudukannya maka dapat dibuat struktur linear dalam percabangan

tersebut. Struktur navigasi ini banyak digunakan dalam pembuatan Website

sebab struktur ini dapat memberikan keinteraksian yang lebih tinggi. Setiap

struktur navigasi seperti yang baru dibahas mempunyai fungsi dan tujuan

masing-masing. Tidak ada yang lebih baik atau lebih buruk. Penggunaan

navigasi tergantung kepada kebutuhan dan tujuan dari aplikasi Website yang

hendak dibuat. Semakin kompleks navigasi yang digunakan, maka makin

sulit pada pembuatan aplikasi Website dari navigasi tersebut.

Sumber : Yuhefizar (2008:70)

Gambar II.7

Struktur Navigasi Composite

2.2.2. Entity Relationship Diagram

Menurut Ladjamudin (2008:189), “Entity Relationship Diagram (ERD)

Adalah suatu model jaringan yang menggunakan susunan data yang disimpan

dalam sistem secara abstrak”. Jadi jelaslah bahwa ERD ini berbeda dengan DFD

yang suatu model jaringan fungsi yang akan dilaksanakan oleh sistem, sedangkan

19

ERD merupakan model jaringan data yang menekankan pada struktur-struktur dan

relationship data.

Diagram hubungan entitas yang biasa lebih dikenal sebutan ER diagram,

adalah notasi grafik dari sebuah model yang data atau sebuah model jaringan yang

menjelaskan tentang data yang tersimpan (storage data) dalam sistem secara

abstrak. Diagram hubungan entitas tidak menyatakan bagaimana memanfaatkan

data, membuat data, mengubah data dan menghapus data. Adapun elemen-elemen

diagram hubungan entitas antara lain:

1. Entitas (entity)

Pada E-R diagram, entity digambarkan dalam sebuah bentuk persegi

panjang. Entity adalah sesuatu apa saja yang ada didalam sistem, nyata

maupun abstrak dimana data tersimpan atau dimana terdapat data. Entitas

diberi nama dengan kata benda dan dapat dikelompokan dalam empat jenis

nama yaitu: orang, benda, lokasi, kejadian (terdapat unsur waktu di

dalamnya).

2. Atribut Value

Atribut Value atau nilai attribute adalah suatu occurrence tertentu dari

sebuah attribute didalam suatu entity atau relationship. Ada dua jenis

attribute yaitu identifier (key) digunakan untuk menentukan suatu entity

secara unik (primary key) dan Descriptor (nonkey attribute) digunakan

untuk menspesifikasikan karakteristik dari suatu entity yang tidak unik.

3. Kardinalitas (Cardinality)

Kardinalitas relasi menunjukan jumlah maksimum tupel yang dapat berelasi

dengan entitas yang lain. Pada contoh sebelumnya dapat kita lihat bahwa

20

tupel-tupel pada entitas mahasiswa dapat berelasi dengan satu tupel, banyak

tupel atau bahkan tidak satupun tupel dari entitas kuliah. Begitu juga

sebaliknya, entitas-entitas pada entitas kuliah ada yang berelasi dengan

beberapa tupel pada entitas mahasiswa dan ada pula yang berelasi dengan

satu tupel pada entitas mahasiswa.

4. Relasi

Relasi adalah hubungan antara beberapa entitas sebagai contoh relasi antar

mahasiswa dengan mata kuliah dimana setiap mahasiswa bisa mengambil

beberapa mata kuliah dan setiap mata kuliah bisa diambil oleh lebih dari 1

mahasiswa. Relasi tersebut memiliki hubungan banyak ke banyak. Macam-

macam relasi antara lain:

a. One-to-one:

Sebuah entitas pada A berhubungan dengan entitas B paling banyak 1

contoh diatas relasi pegawai dan departemen dimana setiap pegawai

hanya bekerja pada 1 departemen.

b. One-to-many:

Sebuah entitas pada A berhubungan dengan entitas B lebih dari satu

contoh diatas adalah 1 departemen memiliki banyak pegawai.

c. Many-to-many:

Sebuah entitas pada A berhubungan dengan entitas B lebih dari satu dan

B berhubungan dengan A lebih dari satu juga contoh diatas adalah relasi

mahasiswa dengan mata kuliah.

21

2.2.3. Logical Relational Structure (LRS)

Membentuk skema database atau LRS (Logical Record Structure)

berdasarkan diagram ERD (Simarmarta, 2007:115).

1. Jika relasinya satu-ke-satu, maka foreign key diletakkan pada salah satu dari

dua entitas yang ada atau menyatukan kedua entitas tersebut.

2. Jika relasinya satu ke banyak, maka foreign key diletakkan pada entitas

many.

3. Jika relasinya banyak-ke-banyak, maka dibuat “file konektor” yang berisi

dua foreign key yang berasal dari kedua entitas.

Membentuk beberapa tabel berdasarkan primary key yang terpilih dengan

syarat sudah mencapai aturan normalisasi sekurang-kurangnya 3NF dari skema

DB atau LRS yang ada.

2.2.4. Pengujian Web

Proses yang harus dilakukan setelah selesai membangun sebuah website

ataupun perangkat lunak adalah proses pengujian (testing). Pengujian website

adalah suatu teknik yang digunakan menguji apakah sebuah website yang

dibangun telah memenuhi kebutuhan proses bisnis pengguna atau masih belum.

Salah satu metode pengujian website adalah Black-Bos Testing.

Menurut Rizky (2011:264), “Black Box Testing adalah tipe testing yang

memperlakukan perangkat lunak yang tidak diketahui kinerja internalnya”.

Sehingga para tester memandang perangkat lunak seperti layaknya sebuah “kotak

hitam” yang tidak penting dilihat isinya, tapi cukup dikenai proses testing

dibagian luar. Jenis testing ini hanya memandang perangkat lunak dari sisi

22

spesifikasi dan kebutuhan yang telah didefinisikan pada saat awal perancangan.

Sebagai contoh, jika terdapat sebuah perangkat lunak yang merupakan sebuah

sistem informasi inventory di sebuah perusahaan. Maka pada jenis white box

testing, perangkat lunak tersebut akan berusaha dibongkar listing programnya

untuk kemudian dites menggunakan teknik-teknik yang telah dijelas sebelumnya.

Sedangkan pada jenis black box testing, perangkat lunak tersebut akan dieksekusi

kemudian berusaha dites apakah telah memenuhi kebutuhan pengguna yang

didefinisikan pada saat awal tanpa harus membongkar listing programnya.

Beberapa keuntungan yang diperoleh dari jenis testing ini antara lain:

1. Anggota tim tester tidak harus dari seseorang yang memiliki kemampuan

teknis dibidang pemrograman.

2. Kesalahan dari perangkat lunak ataupun bug seringkali ditemukan oleh

komponen tester yang berasal dari pengguna.

3. Hasil dari black box testing dapat memperjelas kontradiksi ataupun

kerancuan yang mungkin timbul dari eksekusi sebuah perangkat lunak.

4. Proses testing dapat dilakukan lebih cepat dibandingkan white box testing.