BAB II
LANDASAN TEORI
2.1. Konsep Dasar Web
2.1.1. Website
1. Pengertian Website
Menurut Gregorius (2000:30) Website adalah kumpulan halaman web yang saling terhubung dan file-file-nya saling terkait. Web terdiri dari page atau halaman, dan kumpulan halaman yang dinamakan home page. Home page berada pada posisi teratas, dengan halaman-halaman terkait berada di bawahnya. Biasanya setiap halaman di bawah home page disebut child page, yang berisi hyperlink ke halaman lain dalam web.
2. Internet
Menurut Allan (2005, p12) internet adalah sekumpulan jaringan komputer yang saling terhubung secara fisik dan memiliki kemampuan untuk membaca dan menguraikan protokol komunikasi tertentu yang disebut Internet Protocol (IP) dan
Transmission Control Protocol (TCP). Protokol adalah spesifikasi sederhana mengenai bagaimana komputer saling bertukar informasi.
3. Web Browser
Menurut Sibero (2011b:12) “Web browser adalah aplikasi perangkat lunak yang digunakan untuk mengambil dan menyajikan sumber informasi web”. Sumber informasi web di identifikasi dengan Uniform Resource Identifier (URL) yang dapat
7
8
terdiri dari halaman web, video, gambar, ataupun konten lainya. Sejarah web browser dimulai pada tahun 1991 saat tim Berners-Lee membuat aplikasi web browser pertama pada komputer NeXT dengan nama World Wide Web Browser, kemudian pada tahun 1993 NCSA (National Center Supercomputing Application) mengembangkan web browser grafis bernama NCSA Mosaic, yang kemudian dilanjutkan pada tahun 1994 merilis Netscape Navigator dan pada tahun 1998 berubah menjadi Mozilla Firefox.
4. Web Server
Menurut Sibero (2011c:11), “Web Server adalah sebuah komputer yang terdiri dari perangkat keras dan perangkat lunak, secara bentuk fisik dan cara kerjanya, perangkat keras web server tidak berbeda dengan komputer rumah atau PC, yang membedakan adalah kapasitas dan kapabilitasnya”.
2.1.2. Bahasa Pemrograman
1. PHP (Personal Home Page)
Menurut Aditya (2011a:1) PHP adalah bahasa skrip yang dapat ditanamkan atau disisipkan ke dalam HTML. PHP banyak dipakai untuk memprogram situs web dinamis.
Beberapa kelebihan PHP menurut Aditya (2011b:2):
a. Bahasa pemrograman PHP adalah sebuah bahasa script yang tidak melakukan
sebuah kompilasi dalam penggunaannya.
b. Web Server yang mendukung PHP dapat ditemukan dimana-mana dari
mulai Apache, IIS, Lighttpd, hingga Xitami dengan konfigurasi yang relatif
mudah. 9
c. Dalam sisi pengembangan lebih mudah, karena banyaknya milis-milis dan
developer yang siap membantu dalam pengembangan.
d. Dalam sisi pemahaman, PHP adalah bahasa scripting yang paling mudah
karena memiliki referensi yang banyak.
e. PHP adalah bahasa open source yang dapat digunakan diberbagai mesin
(Linux, Unix, Macintosh, Windows) dan dapat dijalankan secara runtime
melalui console serta juga dapat menjalankan perintah-perintah sistem.
f. PHP bersifat bebas dipakai (free).
2. HTML (Hyper Text Markup Language)
Menurut Jasmadi (2004) HTML merupakan singkatan dari Hypertext Markup
Language, yang memiliki arti bahasa atau kode program yang digunakan untuk mengolah serangkaian data dan informasi sehingga suatu dokumen dapat diakses dan ditampilkan di internet melalui layanan web sehingga HTML dapat memberikan beberapa kemungkinan kepada klien untuk melakukan interaksi dengan server menggunakan hyperlink dan tombol yang dapat di klik pada dokumen HTML.
3. CSS (Cascading Style Sheets)
Menurut Astamal (2006:42) CSS (Cascading Style Sheet) adalah suatu teknologi yang digunakan untuk mempermudah pembuatan suatu tampilan sebuah website.
4. Javascript
Menurut Sibero (2011d:150) “Javascript adalah bahasa skrip (Scripting
Language) yaitu kumpulan instruksi perintah yang digunakan untuk mengendalikan 10
beberapa bagian dari sistem operasi. Bentuk bahasa skrip dari javascript mengambil model penulisan pada pemograman C dan java, yang terdiri dari variabel dan fungsi
5. Jquery
Menurut Saputra dan Feni Agustin (2012b:7) mengemukakan bahwa “Jquery merupakan salah satu teknik atau kumpulan library javascript yang sangat terkenal dengan animasinya. Dengan sedikit sentuhan, animasi dalam website mudah kita ciptakan. Jquery dapat dianggap sebagai framework dari javascipt”.
6. Software Yang Digunakan
a. Macromedia Dreamweaver 8
Menurut Chosmin S. Wododo (2008:281) “Macromedia
Dreamweaver adalah program editor html yang sangat andal dan banyak
dinikmati oleh para web desainer”. Para versi terbarunya, program ini telah
diakuisisi oleh adobe corporation sehingga namanya berubah menjadi adobe
dreamwever yang dikemas dalam paket adobe CS3 (creative suite seri ke-3).
Adapun versi yang anda gunakan, langkah-langkahnya tidak jauh berbeda
kompilasi bahan ajar ini tidak banyak memanfaatkan fasilitas-fasilitas yang
ada di dreamweaver.
b. XAMPP
Menurut Yogi Wicaksono (2008:7) XAMPP adalah sebuah software
yang berfungsi untuk menjalankan website berbasis PHP dan menggunakan
pengolahan data MySQL sikomputer local. XAMPP berperan sebagai server
web pada komputer anda. XAMPP juga dapat disebut sebuah CPanel server 11
virtual, yang dapat membantu anda melakukan preview sehingga dapat
memodifikasi website tanpa harus online atau terakses dengan internet.
c.
2.1.3. Basis Data
1. Definisi Basis Data
Menurut Stephens dan Plew (2000) adalah mekanisme yang digunakan untuk menyimpan informasi atau data. Informasi adalah sesuatu yang kita gunakan sehari- hari untuk berbagai alasan. Dengan basis data, pengguna dapat menyimpan data secara terorganisasi. Setelah data disimpan, informasi harus mudah diambil. Kriteria dapat digunakan untuk mengambil informasi. Cara data disimpan dalam basis data menentukan seberapa mudah mencari informasi berdasarkan banyak kriteria. Data pun harus mudah ditambahkan ke dalam basis data, dimodifikasi, dan dihapus.
2. Aplikasi Basis Data Yang Digunakan
Aplikasi database yang digunakan oleh penulis untuk membangun website pada tugas akhir ini adalah MySQL. Menurut raharjo (2011:21) mysql yang mengimplementasikan model database relasional maka disebut sebagai Relational
Database Management System/RDMS. MySQL singkatan dari Strcture Query
Language dan sering disebut sequel saja. SQL mulai dikembangkan pada akhir tahin
70-an di laboratorium IBM, San Jose California. Untuk mengakses sebuah file database, salah satu server database yang kecil dan mudah digunakan namun memiliki kehandalan dan performa tinggi.
12
2.1.4. Model Pengembangan Perangkat Lunak
1. Pengenalan Model Waterfall
Menurut Rosa A.S. dan M.Shalahudin (2013:28) “Model SDLC (Software
Development Life Cycle) air terjun (Waterfall) sering juga disebut model sekuensi linier (Sequential liniar) atau alur hidup klasik (classic life cycle)”. Model air terjun menyediakan pendekatan alur hidup perangkat lunak secara sekuensial atau terurut dimulai dari analisis, desain, pengkodean, pengujian, dan tahap pendukung (support).
Penjelasan dari tahap-tahap model waterfall adalah sebagai berikut :
a. Analisis kebutuhan perangkat lunak
Proses pengumpulan kebutuhan dilakukan secara intensif untuk
menspesifikasikan kebutuhan perangkat lunak agar dapat dipahami perangkat
lunak seperti apa yang dibutuhkan oleh user. Spesifikasi kebutuhan perangkat
lunak pada tahap ini perlu di dokumentasikan.
b. Desain
Desain perangkat lunak adalah proses multi langkah yang fokus pada desain
pembuatan program perangkat lunak termasuk struktur data, arsitektur
perangkat lunak, representasi antar muka dan prosedur pengkodean. Tahap ini
mentranslasi kebutuhan perangkat lunak dari tahap analisis kebutuhan ke
representasi desain agar dapat di implementasikan program pada tahap
selanjutnya. Desain perangkat lunak yang dihasilkan pada tahap ini juga perlu
di dokumentasikan.
c. Pembuatan kode program 13
Desain harus ditranslasikan kedalam program perangkat lunak. Hasil dari
tahap ini adalah program komputer sesuai dengan desain yang telah dibuat
pada tahap desain.
d. Pengujian
Pengujian fokus pada perangkat lunak dari segi logik dan fungsional serta
memastikan bahwa semua bagian sudah diuji. Hal ini dilakukan untuk
meminimalisir kesalahan (error) dan memastikan keluaran yang dihasilkan
sesuai dengan yang di inginkan.
2.2. Teori Pendukung
2.2.1. Struktur Navigasi
Menurut Binanto (2010a:268) ”Struktur navigasi adalah gabungan dari struktur referensi informasi situs web dan mekanisme link yang mendukung pengunjung untuk melakukan penjelajahan situs”. Ada empat macam bentuk dasar dari struktur navigasi yang biasa digunakan yaitu:
1. Struktur Navigasi Linear
Pengguna akan melakukan navigasi secara berurutan, dari frame atau byte
informasi ke informasi lainnya.
Sumber: (Binanto, 2010:269)
Gambar II.1. Struktur Navigasi Linear 14
2. Struktur Navigasi Hirarki
Struktur dasar ini disebut juga struktur “Linier dengan percabangan” karena
pengguna melakukan navigasi di sepanjang cabang pohon struktur yang terbentuk
oleh logika isi.
Sumber: (Binanto, 2010:269)
Gambar II.2. Struktur Navigasi Hirarki
3. Struktur Navigasi Non Linear
Pengguna akan melakukan navigasi dengan bebas melalui isi proyek dengan tidak
terkait dengan jalur yang sudah ditentukan sebelumnya.
Sumber: (Binanto, 2010:269)
Gambar II.3. Struktur Navigasi Non Linear 15
4. Struktur Navigasi Campuran (Composite)
Pengguna akan melakukan navigasi dengan bebas (Secara non linier), tetapi
terkadang dibatasi presentasi linier film atau informasi penting dan atau pada data
yang paling terorganisasi secara logis pada suatu hirarki.
Sumber: (Binanto, 2010:269)
Gambar II.4. Struktur Navigasi Campuran (composite)
2.2.2. Entity Relationship Diagram
1. Definisi ERD (Entity Relationship Diagram)
Menurut Sutanta (2011a:91) “Entity Relationship Diagram (ERD) merupakan suatu model data yang dikembangkan berdasarkan objek.” Entity Relationship
Diagram (ERD) digunakan untuk menjelaskan hubungan antar data dalam basis data kepada pengguna secara logis. Entity Relationship Diagram (ERD) didasarkan pada suatu persepsi bahwa real world terdiri atas obyek-obyek dasar tersebut. Penggunaan
Entity Relationship Diagram (ERD) relatif mudah dipahami, bahkan oleh para pengguna yang awam. Bagi perancang atau analis sistem, Entity Relationship 16
Diagram (ERD) berguna untuk memodelkan sistem yang nantinya, basis data akan di kembangkan. Model ini juga membantu perancang atau analis sistem pada saat melakukan analis dan perancangan basis data karena model ini dapat menunjukkan macam data yang dibutuhkan dan kerelasian antar data didalamnya.
2. Komponen ERD (Entity Relationship Diagram)
Komponen Entity Relationship Diagram (ERD) menurut Sutanta (2011b:91) adalah sebagai berikut :
a. Entitas
Entitas merupakan suatu objek yang dapat dibedakan dari lainnya yang dapat
diwujudkan dalam basis data. Objek dasar dapat berupa orang, benda, atau hal
yang keterangannya perlu disimpan didalam basis data. Untuk
menggambarkan sebuah entitas digunakan aturan sebagai berikut:
1) Entitas dinyatakan dengan simbol persegi panjang.
2) Nama entitas dituliskan didalam simbol persegi panjang.
3) Nama entitas berupa kata benda, tunggal.
4) Nama entitas sedapat mungkin menggunakan nama yang mudah dipahami
dan dapat menyatakan maknanya dengan jelas.
b. Atribut
Atribut merupakan keterangan-keterangan yang terkait pada sebuah entitas
yang perlu disimpan dalam basis data. Atribut berfungsi sebagai penjelas pada
sebuah entitas. Untuk menggambarkan atribut digunakan aturan sebagai
berikut:
1) Atribut digambarkan dengan simbol ellips. 17
2) Nama atribut dituliskan didalam simbol ellips.
3) Nama atribut merupakan kata benda, tunggal.
4) Nama atribut sedapat mungkin menggunakan nama yang mudah dipahami
dan dapat menyatakan maknanya dengan jelas.
c. Relasi
Relasi merupakan hubungan antara sejumlah entitas yang berasal dari
himpunan entitas yang berbeda. Aturan penggambaran relasi adalah sebagai
berikut :
1) Relasi dinyatakan dengan simbol belah ketupat.
2) Nama relasi dituliskan didalam simbol belah ketupat.
3) Nama relasi berupa kata kerja aktif.
4) Nama relasi sedapat mungkin menggunakan nama yang mudah dipahami
dan dapat menyatakan maknanya dengan jelas.
3. LRS (Logical Record Structure)
Menurut Simarmata (2007:115) “Logical Record Structure adalah resperentasi dari struktur record-record pada tabel-tabel yang terbentuk dari hasil relasi antar himpunan entitas”. Beberapa tipe record digambarkan oleh kotak empat persegi panjang dan dengan nama yang unik. Beda LRS dengan diagram entity relationship diagram nama tipe record berada diluar kotak field tipe record ditempatkan. LRS terdiri dari link-link diantara tipe record.Link ini menunjukkan arah dari satu tipe record lainnya. Banyak link dari LRS yang diberi tanda field-field yang kelihatan pada kedua linktipe record.
18
2.2.3. Pengujian Web
Pada proses pengujian web diharapkan program dapat berjalan sebagaimana mestinya yaitu apakah program tersebut dapat berinteraksi dengan user yang mengoperasikan program tersebut atau tidak. Dalam melakukan pengujian website ada dua metode yang biasa digunakan yaitu:
1. Pengujian White Box Testing
Menurut Rizky (2011a:261) White box testing secara umum merupakan jenis testing yang lebih berkonsentrasi terhadap isi dari perangkat lunak itu sendiri. Jenis ini banyak berkonsentrasi kepada source code dari perangkat lunak yang dibuat sehingga membutuhkan proses testing yang jauh lebih lama dan lebih mahal dikarenakan membutuhkan ketelitan dari para tester serta kemampuan teknis pemrograman bagi para testernya.
Beberapa teknik yang terdapat dalam white box testing Menurut Rizky
(2011b:261) adalah:
a. Decision (Branch) Coverage
Sesuai dengan namanya, teknik testing ini fokus terhadap hasil dari tiap
skenario yang dijalankan terhadap bagian perangkat lunak yang mengandung
percabangan (if...then...else).
b. Condition Coverage
Teknik ini hampir mirip dengan teknik yang pertama, tetapi dijalankan
terhadap percabangan yang dianggap kompleks atau percabangan majemuk.
Hal ini biasanya dilakukan jika dalam sebuah perangkat lunak memiliki
banyak kondisi yang dijalankan dalam satu proses sekaligus. 19
c. Path Analysis
Merupakan teknik testing yang berusaha menjalankan kondisi yang ada dalam
perangkat lunak serta berusaha mengoreksi apakah kondisi yang dijalankan
telah sesuai dengan alur diagram yang terdapat dalam proses perancangan.
d. Executive Time
Pada teknik ini, perangkat lunak berusaha dijalankan atau dieksekusi
kemudian dilakukan pengukuran waktu pada saat input dimasukkan hingga
output dikeluarkan. Waktu eksekusi yang dihasilkan kemudian dijadikan
bahan evaluasi dan dianalisa lebih lanjut untuk melihat apakah perangkat
lunak telah berjalan sesuai dengan kondisi yang dimaksud oleh tester.
e. Algorithm Analysis
Teknik ini umumnya jarang dilakukan jika perangkat lunak yang dibuat
berjenis sistem informasi. Sebab teknik ini membutuhkan kemampuan
matematis yang cukup tinggi dari para tester, karena di dalamnya berusaha
melakukan analisa terhadap algoritma yang diimplementasikan pada
perangkat lunak tersebut.
2. Pengujian Black Box Testing
Menurut Rizky (2011c:264) “Black box testing adalah tipe testing yang memerlukan 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 dikenali proses testing dibagian luar”.
Teknik testing yang tergolong dalam tipe black box testing menurut Rizky
(2011d:265) antara lain : 20
a. Equivalence Partitioning
Pada teknik ini, tiap inputan data dikelompokkan ke dalam grup tertentu, yang
kemudian dibandingkan output-nya. b. Boundary Value Analysis
Pada teknik Boundary Value Analysis, dilakukan inputan yang melebihi
batasan sebuah data, contohnya untuk sebuah inputan harga barang, maka
dapat dilakukan testing dengan menggunakan angka negatif yang tidak
diperbolehkan dalam sebuah harga. Jika perangkat lunak berhasil mengatasi
inputan yang salah tersebut, maka dapat dikatakan teknik ini telah selesai
dilakukan. c. Cause Effect Graph
Dalam teknik ini, dilakukan proses testing yang menghubungkan sebab dari
sebuah inputan dan akibatnya pada output yang dihasilkan. d. Random Data Selection
Seperti namanya, teknik ini berusaha melakukan proses inputan data dengan
menggunakan nilai acak. Dari hasil inputan tersebut kemudian dibuat sebuah
tabel yang menyatakan validitas dari output yang dihaslikan. e. Feature Test
Pada teknik ini, dilakukan proses testing terhadap spesifikasi dari perangkat
lunak yang telah selesai dikerjakan. Misalkan, pada perangkat lunak sistem
informasi akademik. Dapat di cek apakah fitur untuk melakukan entri nilai
telah tersedia, begitu juga dengan fitur entri data siswa maupun entri data guru
yang akan melakukan entri nilai.