bab ii landasan teori - repository.bsi.ac.id · dunia maya atau disebut dunia berita dalam internet...
TRANSCRIPT
7
BAB II
LANDASAN TEORI
2.1. Konsep Dasar Web
Web memiliki konsep-konsep dasar yang menjadi acuan dalam memperlajari suatu web.
Pada bab ini penulis akan membahas beberapa teori, adapun beberapa teori yang akan jelaskan
untuk membantu dalam pembuatan web sebagai berikut:
2.1.1. Website
Dalam dunia teknologi yang pesat ini diperlukan suatu jaringan yang bisa
mempermudahkan serta mempercepat penyampaian informasi secara luas, dan dapat dengan
mudah dan cepat oleh siapapun yang mendapatkan akses internet.
Menurut (Abdulloh, 2018:1) “Website dapat diartikan sebagai kumpulan halaman yang berisi
informasi data digital baik berupa teks, gambar, animasi, suara dan video atau gabungan dari
semuanya yang disediakan melalui jalur koneksi internet sehingga dapat diakses dan dilihat
oleh semua orang di seluruh dunia”.
Dalam website dikenal dengan sebutan website dinamis dan website statis.
1. Website statis
Website statis adalah website yang mempunyai halaman konten yang tidak berubah-ubah.
2. Website dinamis
Website dinamis merupakan website yang secara struktur ditujukan untuk update sesering
mungkin.
Dari uraian teori diatas penulis menarik kesimpulan website adalah kumpulan halaman-halaman
8
yang dapat menampilkan teks, gambar, animasi, video, suara yang masing-masing dihubungkan
dengan jaringan-jaringan halaman. Website dibagi menjadi dua golongan yaitu website statis
dan website dinamis.
1. Internet
Internet sebagai jaringan terbesar sebagai sumber informasi yang telah menjadi
kebutuhan banyak orang Internet menyimpan berbagai jenis informasi yang tidak terbatas.
Internet berperan sebagai sarana komunikasi, publikasi, serta sarana untuk mendapatkan
berbagai informasi yang dibutuhkan.
Menurut (Mulyani & Fadilah, 2017) “Internet adalah salah satu jembatan untuk menghantarkan
penerima informasi baik berbentuk teks, gambar, video, suara, atau gambar bergerak, dengan
dunia maya atau disebut dunia berita dalam internet melainkan dapat diakses dan dimanfaatkan
untuk berbagai kepentingan oleh siapa saja, dimana saja, dan kapan saja”.
Sedangkan menurut (Nugroho, 2019:3) “Internet adalah sebuah solusi jaringan yang dapat
menghubungkan beberapa jaringan lokal yang ada pada suatu daerah, kota, atau bahkan pada
sebuah negara. Dengan adanya internet kita dapat menghubungkan beberapa jaringan lokal
yang ada pada setiap tempat”.
Berdasarkan pendapat para ahli, penulis dapat menyimpulkan internet adalah kumpulan dari
jutaan komputer yang terhubung melalui jaringan global untuk membagi informasi secara
bersama dengan mencangkup suatu jaringan yang sangat luas.
2. Web Server
Pada umumnya web server berperan sebagai server yang memberikan layanan kepada
komponen yang meminta informasi berkaitan dengan web, dalam web yang telah dirancang
9
dalam internet.
Menurut (Abdulloh, 2018:4) “Web Server merupakan perangkat lunak yang berfungsi untuk
menerima permintaan (request) melalui protokol HTTP atau HTTPS dari client kemudian
mengirim kembali dalam bentuk halaman-halaman web. Contoh yang termasuk web server
adalah Apache. Dalam penggunaannya, biasanya sudah menjadi satu paket dengan PHP dan
MySQL”.
Dari penjelasan teori diatas, penulis menyimpulkan web server adalah komputer yang
digunakan untuk menyimpan dokumen dengan mengakses dan menampilkan halaman web
tersebut dari komputer client.
3. Web browser
Hampir setiap peralatan elektronik saat ini dilengkapi oleh web browser, mulai dari
komputer, handphone ataupun gadget telah dilengkapi web browser yang biasa digunakan
untuk menjelajah internet.
Menurut (Abdulloh, 2018:4) ”Web Browser merupakan sebuah aplikasi yang digunakan untuk
menampilkan dan mengetes program. Beberapa skrip CSS3 dan HTML5 ada yang hanya
support pada web browser tertentu dan tidak support pada yang lain, sehingga menggunakan
lebih dari satu web browser akan lebih baik”.
Sejalan dengan teori diatas, penulis menyimpulkan web browser adalah sebuah aplikasi atau
software yang digunakan untuk menampilkan sumber informasi yang disajikan dari web server.
2.1.2. Bahasa Pemrograman
Dalam penulisan tugas akhir ini penulis menggunakan bahasa pemrograman. bahasa
pemrograman ini akan menunjang dan dapat menentukan secara persis data apa saja yang akan
diolah oleh komputer. Terdapat lima bahasa pemrograman yang sering digunakan dalam
10
pembuatan website dimana pada setiap bahasa mempunyai kelebihan masing-masing, yaitu
sebagai berikut:
1. PHP
Menurut (Setiawan, 2017:54) “PHP atau Hypertext Preprocessor merupakan sebuah
bahasa scripting tingkat tinggi yang dipasang pada dokumen HTML, penggunaan bahasa ini
adalah untuk memungkinkan perancangan web yang dinamis dan dapat bekerja secara
otomatis”.
2. HTML
Menurut (Setiawan, 2017:16) “HTML atau Hyper Text Markup Language merupakan
sebuah bahasa pemrograman terstruktur yang dikembangkan untuk membuat halaman website
yang dapat diakses atau ditampilkan menggunakan web browser”.
3. CSS
Menurut (Setiawan, 2017:116) “CSS merupakan salah satu kode pemrograman yang
bertujuan untuk menghias dan mengatur gaya tampilan atau layout halaman web agar lebih
elegan dan menarik”.
4. Javascript
Menurut (Subagia, 2018:14) “Javascript merupakan bahasa pemrograman web yang
bersifat client side programming, artinya pemrosesan dilakukan di sisi klien. Berbeda dengan
PHP yang langsung diproses pada sisi server dimana browser akan melakukan loading ketika
program sedang diproses server, pada pemrosesan javascript, browser tidak perlu melakukan
refresh atau loading.”
5. SQL
11
Menurut (Sukamto & Shalahuddin, 2016:46) “SQL (Structured Query Language) adalah
bahasa yang digunakan untuk mengelola data pada RDBMS”. SQL awalnya dikembangkan
berdasarkan teori aljabar relasional dan kalkulus. SQL mulai berkembang pada tahun 1970an.
SQL mulai digunakan sebagai standar yang resmi pada tahun 1976 oleh ANSI (American
National Standards Institute) dan pada tahun 1987 oleh ISO (International Organization For
Standardization) dan disebut sebagai SQL-86. Pada perkembangannya, SQL
beberapa kali dilakukan revisi.
Berikut ini sejarah perkembangan SQL sampai saat ini :
Tabel II.1
Perkembangan SQL
Sumber : Sukamto & Shalahuddin (2016:46)
2.1.3. Basis Data
Menurut (Sukamto & Shalahuddin, 2016:43) “Basis data adalah sistem terkomputersasi yang
tujuan utamanya adalah memelihara data yang sudah diolah atau informasi dan membuat
informasi tersedia saat dibutuhkan. Pada intinya basis data adalah media untuk menyimpan data
agar dapat diakses dengan mudah dan cepat”.
12
Sumber : Sukamto & Shalahuddin (2016:44)
Gambar II.1
Ilustrasi Basis Data
Adapun aplikasi yang digunakan dalam pengolahan database yaitu XAMPP, sebagai
berikut:
Menurut (Sugiarto, Linarta, & Sofiyan, 2017) menjelaskan bahwa “Xampp merupakan
singkatan dari X (empat sistem operasi apapun), Apache, Mysql, PHP, dan Perl. Xampp adalah
tool yang menyediakan paket perangkat lunak dalam satu buah paket. Dalam paket Xampp
sudah terdapat Apache (web server), Mysql (database), PHP (server side scripting), Perl ,FTP
server, PhpMyAdmin dan berbagai pustaka bantu lainya.”
2.1.4 Model Pengembangan Perangkat Lunak
Metode yang digunakan pada pengembangan perangkat lunak ini menggunakan model
air terjun (waterfall) yang memiliki lima tahapan menurut (Sukamto & Shalahuddin, 2016:29),
yaitu :
1. Analisis kebutuhan perangkat lunak
Proses pengumpulan kebutuhan dilakukan secara intensif untuk menspesifikasikan
kebutuhan perangkat lunak agar dapat dipahami perangkat lunak seperti apa yang dbutuhkan
13
oleh user. Spesifikasi kebutuhan perangkat lunak pada tahap ini perlukan untuk
didokumentasikan.
2. Desain
Desain perangkat lunak adalah proses multi langkah yang fokus pada desain pembuatan
program perangkat lunak, representasi antarmuka, dan prosedur pengkodean, tahap ini
mentranslasi kebutuhan perangkat lunak dari tahap analisis kebutuhan ke representasi desain
agar dapat diimplementasikan menjadi program pada tahap selanjutnya. Desain perangkat lunak
yang dihasilkan pada tahap ini juga diperlu didokumentasikan.
3. Pembuatan kode program
Desain harus ditranslasikan 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 logik dan fungsional dan
memastikan bahwa semua bagian sudah diuji. Hal ini dilakukan untuk meminimalisir kesalahan
(error) dan memastikan keluaran yang dihasilkan sesuai dengan 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 pengembangan mulai dari
analisis spesifikasi untuk perubahan perangkat lunak yang sudah ada, tapi tidak untuk memuat
perangkat lunak baru.
Berikut adalah gambar model air terjun:
14
Sumber : Sukamto & Shalahuddin (2016:29)
Gambar II.2
Ilustrasi Model Waterfall
2.2. Tools Program
2.2.1. Struktur Navigasi
Menurut (Andriansyah, 2016:61) menyimpulkan bahwa “Struktur navigasi dapat
diartikan sebagai alur dari suatu program yang menggambarkan rancangan hubungan antar area
yang berbeda sehingga memudahkan proses pengorganisasian seluruh elemen website”.
Ada empat bentuk dasar dalam struktur navigasi sebagai berikut:
1. Struktur Navigasi Linier
Struktur navigasi linier hanya mempunyai satu rangkaian cerita yang berurut yang
menampilkan satu demi satu tampilan layar secara berurut menurut urutannya.
Sumber : Doni Andriansyah (2016:62)
Gambar II.3
Struktur Navigasi Linier
2. Struktur Navigasi Hierarki
15
Struktur dasar ini disebut juga struktur linier dengan percabangan karena pengguna
melakukan navigasi disepanjang cabang pohon struktur yang terbentuk oleh logika isi.
Sumber : Doni Andriansyah (2016:62)
Gambar II.4
Struktur Navigasi Hirarki
3. Struktur Navigasi Non-Linier
Struktur navigasi non-linier merupakan pengembangan dari struktur navigasi linier.
Pada struktur ini diperkenankan membuat navigasi bercabang
Sumber : Doni Andriansyah (2016:62)
Gambar II.5
Struktur Navigasi Non-Linier
4. Struktur Navigasi Composite
Struktur navigasi jenis ini pengguna akan melakukan navigasi dengan bebas (secara
non-linier), tetapi terkadang dibatasi presentasi linier film atau informasi penting dan pada data
yang paling terorganisasi secara logis pada suatu hirarki.
16
Sumber : Doni Andriansyah (2016:63)
Gambar II.6
Struktur Navigasi Composite
2.2.2. ERD (Entity Relationship Diagram)
Menurut (Sukamaindrayana & Rahman Sidik, 2017) menjelaskan bahwa Diagram
hubungan entitas atau lebih dikenal dengan Entity Relationship Diagram merupakan suatu
model jaringan yang menggambarkan rancangan atau susunan data store dari sistem pada level
yang tinggi. Jadi didalamnya terdapat informasi apa saja yang terkandung didalam data store
dan juga hubungan apa yang ada diantara data store.
Dalam sistem Entity Relationship Diagram (ERD), terdapat beberapa istilah penting
diantaranya:
1. Entitas (Entity)
Suatu entitas yang dapat berupa orang, tempat, obyek, atau kejadian yang dianggap
penting bagi perusahaan, sehingga segala atributnya harus dicatat dan disimpan dalam basis
data.
2. Atribut (Atribute)
Setiap entitas mempunyai karakterisik tertentu yang dinamakan dengan atribut.
3. Relasi (relationship)
Hubungan antara dua atau lebih entitas yang saling berkaitan.
17
Terdapat tiga tipe relasi (relationship), yaitu:
a. One-to-one relationship (1:1) Dimana maximum cardinality setiap entity adalah 1.
Contoh: Satu nasabah bank hanya memiliki satu account.
b. One-to-many relationship (1:N). Dimana maximum cardinality dari suatu entity adalah
1 dan maximum cardinality dari entity lain adalah N.
Contoh: Satu nasabah bank dapat memiliki lebih dari satu account.
c. Many-to-many relationship (M:N). Dimana maximum cardinality kedua entity yang
berhubungan adalah N.
Contoh : Satu nasabah dapat memilliki beberapa account dan satu account dapat dimiliki
oleh beberapa nasabah (rekening bersama).
4. Identifier
Merupakan nama atribute yang digunakan untuk mengidentifikasi suatu entitas, Ada
tiga jenis identifier diantaranya Primary Key, Secondary Key, dan Foreign Key. Dalam
penulisan tugas akhir ini hanya menggunakan Primary Key dan Foreign Key, berikut ini
penjelasan dari Primary Key dan Foreign Key:
a. Primary Key merupakan suatu kode identifikasi yang bersifat unik yang
ditunjukkan oleh masing-masing record dalam sistem. Tujuan dari Primary key adalah
untuk menunjukkan lokasi tiap catatan di dalam suatu file mengenai catatan-catatan
serupa.
b. Foreign Key merupakan atribute yang merupakan Primary key dari relasi lain yang
ditarik/dihubungkan ke suatu relasi.
5. Kardinalitas (Cardinality)
Merupakan kendala-kendala yang timbul dalam hubungan antar entitas.
18
2.2.3. LRS (Logical Record Structure)
Menurut (Andriansyah, 2016:53) menjelaskan bahwa “LRS merupakan transformasi dari
penggambaran ERD dalam bentuk yang lebih jelas dan mudah untuk dipahami”. Penggambaran
LRS hampir mirip dengan penggambaran normalisasi file, hanya saja tidak digambarkan simbol
asterix (*) sebagai simbol primary key (kunci utama) dan foreign key (kunci tamu). Terdiri dari
3 kardinalitas yaitu sebagai berikut:
1. One to One
Yaitu proses kardinalitas yang panahnya lebih diarahkan di entity dengan jumlah atribut yang
lebih sedikit.
2. One to Many
Relasi harus digabungkan dengan entity pada pihak many, dan tidak perlu melihat banyak
sedikitnya atribut pada entity tersebut.
3. Many to Many
Yaitu proses kardinalitas pada relationship berubah status menjadi file konektor, sehingga baik
entity maupun relasi akan menjadi struktur record sendiri.
2.2.4. Implementasi dan Pengujian Unit
Implementasi perangkat lunak adalah melaksanakan, eksekusi, atau praktek dari
rencana, metode, atau perancangan dalam pengembangan perangkat lunak. Pada tahap ini
dilakukan kerja untuk membangun perangkat lunak berdasarkan analisa dan pemodelan yang
telah dilakukan dengan hasil basis data dan sourcecode perangkat lunak (Patria, R, &
Komarudin, 2015).
Metode pengujian yang digunakan pada pengembangan aplikasi ini menggunakan metode
Blackbox testing dan Whitebox testing. Blackbox testing memperlakukan pengujian perangkat
19
lunak sebagai kotak hitam tanpa pengetahuan tentang pelaksanaan internal. Sedangkan
Whitebox testing memperlakukan pengujian perangkat lunak mengenai struktur data internal.
Pada pengujian kali ini akan dilakukan pengujian berdasarkan processing time dari aplikasi
berbasis web yang telah dibuat (Patria et al., 2015).