8
BAB II
LANDASAN TEORI
2.1. Konsep Dasar Program
Penggunaan internet saat ini sudah menjadi suatu kebutuhan bagi masyarakat.
Berbagai macam penggunaan internet diantaranya untuk pendukung dalam bidang pendidikan, mencari informasi, hiburan dan lain sebagainya. Dalam kegiatan berselancar di dunia maya tersebut, para pengguna internet pasti sudah tidak asing lagi dengan istilah website.
A. Website
Menurut Abdulloh (2018 : 1) mengemukan bahwa, “website adalah sekumpulan halaman yang berisi informasi data digital baik teks, gambar, animasi, suara dan video atau gabungan dari semuanya yang disediakan melalui jalur koneksi internet sehingga dapat diakses dan dilihat oleh semua orang diseluruh dunia”.
Menurut Batubara (2018 : 1) menjelaskan bahwa “web atau website adalah kumpulan dari halaman situs dan dokumen yang tersebar di beberapa komputer server yang berada di seluruh penjuru dunia dan terhubung menjadi satu jaringan melalui jaringan yang disebut internet”.
Dari pengertian – pengertian diatas dapat disimpulkan bahwa website atau
web merupakan sekumpulan halaman yang berisikan informasi dalam bentuk digital
yang tersebar dalam beberapa komputer server yang saling terhubung di seluruh penjuru dunia melalui jaringan internet.
Jenis Website berdasarkan sifatnya menurut Sumaryadi (2014 : 4) : 1. Website Dinamis
Website dinamis merupakan website yang contentnya dapat berubah setiap saat, faktor utama yang membuat sebuah web menjadi dinamis adalah Content Management System. Dengan adanya CMS ini, siapapun yang memiliki akses ke administrator website dapat mengupdate contentnya dengan sangat mudah.
2. Website Statis
Website Statis merupakan website yang jarang sekali dirubah karena memang tidak diperlukan perubahan yang sangat sering.
Dalam pengembangan aplikasi web dibutuhkan aplikasi yang membantu untuk merancang sebuah website. Diantaranya adalah text editor, web server dan web browser.
1. Web Browser
Menurut Enterprise (2016 : 7) mengatakan bahwa “Di dunia website, kita mengenal istilah browser yang mengacu pada sebuah software yang dipakai untuk mengakses informasi – informasi berbasis website yang ada di internet”.
Menurut Sulistiono (2018 : 1) menyimpulkan bahwa “Browser web mengambil sebuah halaman dari server, kemudian memproses kode yang disematkan di halaman web dan menampilkan konten halaman yang diambil ke pengguna”.
2. Web Server
Menurut Abdulloh (2018 : 4) mengatakan bahwa “Web server merupakan
perangkat lunak yang berfungsi untuk menerima permintaan (request) melalui
protocol HTTP atau HTTPS dari client kemudian mengirimkan kembali dalam
bentuk halaman – halaman web.
Sedangkan menurut Roihan (2018 : 91) mengartikan bahwa:
Web Server adalah layanan server yang berfungsi menerima layanan HTTP atau HTTPS dari klien dengan menggunakan web browser dan mengirimkan kembali hasilnya dalam bentuk halaman – halaman web yang umumnya berbentuk dokumen HTML dan format dokumen web lainnya.
Dari pengertian di atas dapat disimpulkan bahwa web server adalah perangkat lunak yang berfungsi menerima layanan HTTP atau HTTPS melalui web browser dan menampilkan hasil berupa halaman – halaman web.
B. Bahasa Pemograman
1. PHP (PHP Hypertext Preprocessor)
Menurut Abdulloh (2018 : 7) menjelaskan bahwa “PHP yaitu Hypertext Preprocessor adalah bahasa pemograman web yang dapat disisipkan dalam skrip HTML dan bekerja di server. Tujuannya adalah membantu para pengembang web untuk membuat web dinamis dengan cepat”.
Menurut Winarno, Zaky, & Community (2014 : 49) menyimpulkan bahwa
“PHP atau PHP Hypertext Preprocessor, adalah sebuah pemrograman web berbasis server (server-side) yang mampu memparsing kode PHP dari kode web dengan ekstensi .php, sehingga menghasilkan tampilan website yang dinamis di sisi client (browser)”.
2. HTML (Hypertext Markup Language )
Menurut Abdulloh (2018 : 7) Menjelaskan bahwa “HTML (Hypertext
Markup Languange) yaitu bahasa standar web yang dikelola penggunanya oleh W3C
(World Wide Web Consortium) berupa tag – tag yang menyusun setiap elemen dari
website”.
Menurut Marisa (2017 : 4) menyimpulkan bahwa “HTML dapat dimengerti sebagai sebuah kumpulan perintah – perintah untuk web browser tentang bagaimana menampilkan isi ke user”.
3. JQuery
Menurut Abdulloh (2018 : 233) menjelaskan bahwa “JQuery merupakan salah satu dari banyak javascript library yang fungsi JavaScript sudah siap pakai.
Sehingga mempermudah dan mempercepat dalam membuat kode JavaScript.
Dengan menggunakan JQuery skrip yang panjang dapat diangkat menjadi beberapa baris kode saja”.
Menurut Supardi & Hermawan (2018 : 63) “JQuery merupakan library Javascript yang siap dipakai dalam membuat program web sehingga memudahkan pengembang (programmer) dalam membuat program web”.
4. Javascript
Menurut Suryana & Koesheryatin (2014 : 181) mengatakan bahwa
“JavaScript adalah bahasa script berdasar pada objek yang memperbolehkan pemakai untuk mengendalikan banyak aspek interaksi pemakai pada suatu dokumen HTML”.
5. CSS (Cascading Style Sheet)
Menurut Jumardi (2019 : 80) mengatakan bahwa ”Cascading Style Sheet (CSS) adalah suatu teknologi yang digunakan untuk memperindah tampilan halaman website”.
Menurut Krause (2016:65) CSS (Cascading Style Sheet) mendefinisikan
bahwa “CSS (Cascading Style Sheet) adalah tata letak dan format bahasa yang
memungkinkan anda untuk memformat bahasa markah seperti HTML.”
6. Bootstrap
Menurut Sulistiono (2018 : 17) mengartikan bahwa “bootstrap sebuah pustakan open source yang merupakan framework CSS dan javascript untuk membuat website yang responsif”.
Menurut Enterprise (2016 : 1) mengatakan bahwa “bootstrap adalah framework front-end yang intuitif dan powerful untuk pengembangan aplikasi web yang lebih cepat dan mudah”.
7. MySQL
Menurut Masruri (2015 : 54) mendefinisikan bahwa “MySQL adalah sebuah implementasi dari sistem manajemen basis data relasional (RDBMS) yang didistribusikan secara gratis”.
Menurut Rusmawan (2019 : 97) mengartikan bahwa “MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL (Database Management System) atau DBMS yang multithread, multi-user, dengan sekitar 6 juta instalasi di seluruh dunia”.
8. Localhost
Menurut Rahman (2018 : 55) mengemukakan bahwa “Localhost adalah host yang berada di dalam komputer, di mana bisa di jalankan aneka scripting di dalam komputer”.
9. PHPMyadmin
Menurut Masruri (2015:53) menjelaskan bahwa “Phpmyadmin adalah sebuah
aplikasi/ perangkat lunak bebas (open source) yang ditulis dalam bahasa
pemrograman PHP yang digunakan untuk menangani administrasi database SQL”.
C. Basis Data
Menurut Nugraha (2017 : 18) Basis data adalah sekumpulan fakta berupa tabel yang saling berhubungan dan disimpan dalam media penyimpanan secara digital.
Atau basis data adalah sekumpulan tabel yang saling berelasi yang mendukung fungsi dari suatu sistem.
Menurut Pamungkas (2017 : 2) mengatakan bahwa “Basis Data merupakan suatu kumpulan data terhubung yang disimpan secara bersama – sama pada suatu media yang diorganisasikan berdasarkan sebuah skema atau struktur tertentu, dan dengan software untuk melakukan manipulasi untuk kegunaan tertentu”.
Menurut Nugoroho (2017:20-26) menjelaskan bahwa : 1. Relasi
Relasi adalah suatu struktur tabel berserta data yang muncul pada struktur data yang memiliki kolom terdefinisi dan baris-baris datanya. Istilah lain untuk relasi adalah entitiy/ entitas. Entitas ini merupakan representasi objek dunia nyata.
Misalnya di sebuah perusahaan ada sebuah departemen, departemen ini sebagai entitas rancangan logis kemudian di entitaskan menjadi relasi departemen.
2. Atribut dan domain
Atribut adalah sebutan teoritis untuk kolom pada suatu relasi. Suatu relasi yang memiliki satu atau lebih atribut/ kolom. Nama atribut/ kolom harus khas, tidak boleh memiliki nama yang sama. Setiap atribut memiliki domain, yaitu nilai/
tipe data pada suatu kolom.
3. Record/ tuple
Record/ tuple adalah nilai dari atribut yang sudah didefinisikan pada relasi pada sebuah objek/ item dari relasi.
4. Primary key
Primary key adalah relasi yang harus memiliki minimal satu atribut sebagai
pembeda antara satu record dan record lain. Nilai/ isi harus khas (unik).
5. Secondary key/ foreign key
Ketika nilai atribut primary key (PK) muncul pd relasi/ tabel lain nilai atribut tersebut menjadi secondary key atau foreign key (FK), ketika FK muncul pada sebuah relasi/ tabel maka relasi/ tabel tersebut sudah memiliki relationship.
6. Relationship dan cardinality
Relationship adalah hubungan antar dua atau lebih reaksi/ tabel melalui penggunaan PK dan FK. Dan hubungan relasi dengan relasi lain yang nampak di sebut cardinality. Cardinality ada tiga jenis yaitu :
a. One to one (1:1)
Kondisi di saat PK pada sebuah relasi/ tabel muncul hanya satu kali sebagai FK pada relasi/ tabel lain.
b. One to many (1:N)
Kondisi ketika PK sebuah relasi/ tabel muncul lebih dari satu kali sebagai FK.
c. Many to many (N:N)
Kondisi ketika PK pada sebuah relasi/ tabel muncul lebih dari satu kali sebagai FK, sedangkan PK yang berhubungan juga dapat muncul lebih dari satu kali sebagai FK. Dan hubungan ini di sebut relasi penghubung yang memegang FK jadi kedua relasi/ tabel yangg saling berhubungan disebut weak relation/ weak entity.
D. Model Pengembangan Perangkat Lunak
Model pengembangan perangkat lunak merupakan suatu gambaran dalam proses perancangan suatu website. Salah satu model pengembangan perangkat lunak ialah Waterfall atau Model Air Terjun.
Menurut Sukamto & Shalahuddin (2015:28-30) Model air terjun menyediakan pendekatan alur hidup perangkat lunak secara sekuensial atau terurut dimulai dari beberapa tahapan 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 dibutuhkan oleh user.
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 prosedur pengodean. Tahap ini mentranslasi kebutuhan perangkat lunak dari tahap analisis kebutuhan ke representasi desain agar dapat diimplementasikan menjadi program pada tahap selanjutnya.
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 logic dan fungsional dan memastikan bahwa semua bagian sudah diuji.
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 membuat perangkat lunak yang baru.
Berikut adalah gambar model air terjun:
Sumber Rossa A. S & M. Shalahudin
Gambar II.1 Ilustrasi Model Waterfall
Pengujian Pengodean
Sistem rekayasa informasi
Analisa Desain
2.2. Tools Program
Adapun teori dan tools program yang mendukung kemudahan dalam memepelajari dan merancang program aplikasi ini sebagai berikut :
A. Struktur Navigasi
Menurut Dennis, Wixom, & Tegarden (2015:375) Struktur navigasi merupakan komponen dasar antarmuka dan bagaimana mereka bekerja bersama – sama menyediakan fungsionalitas untuk pengguna.
Menurut Dennis (2015 : 383) Komponen navigasi menyajikan pesan kepada pengguna tentang keberhasilan, kegagalan atau tindakannya. Tujuan sistem navigasi adalah membuat sistem sesederhana mungkin. Komponen navigasi yang baik adalah yang tidak pernah diketahui oleh pengguna.
1. Basic Principles (prinsip dasar)
Di basic principles menjelaskan kontrol navigasi harus jelas dan dapat dimengerti dan harus sederhana. Contohnya program yang dirancang dengan instalasi biasa, pengguna hanya cukup menekan tombol next.
2. Prevent Mistakes (mencegah kesalahan)
Prinsip pertama merancang kontrol navigasi adalah mencegah pengguna dari membuat kesalahan. Serangkaian kesalahan dapat menyebabkan pengguna tidak memakai sistem. Kesalahan lainpun dapat dikurangi dengan memberi label perintah dan tindakan secara tepat dan dengan membatasi pilihan. Tetapi jangan pernah tampilkan perintah yang tidak bisa digunakan.
3. Simplify Recovery from Mistakes (pembaharuan sederhana dari kesalahan) Sistem harus membuatnya semudah mungkin untuk memperbaiki kesalahan dan biasanya sistem memiliki tombol batalkan.
4. Use Consistent Grammar Order (menggunakan tata bahasa yang konsisten)
Tatanan tata bahasa harus konsisten di seluruh sistem, baik pada elemen data
level dan pada level menu keseluruhan. Sebagian besar perintah mengharuskan
pengguna untuk menentukan objek (misalnya copy, delete). Atau dengan
memilih objek dan kemudian tindakan (object–action order)/ memilih tindakan
kemudian objek (action–object order).
Jenis – jenis menu :
a. Menu Bar : Daftar perintah di bagian atas layar (selalu di layar), diigunakan sebagai menu utama pada sistem,
b. Drop-down Menu : Menu yang turun langsung di bawah menu lain (menghilang setelah satu penggunaan), digunakan sebagai menu tingkat kedua,
c. Pop-up Menu : Menu yang muncul dan mengapung diatas layar (menghilang setelah digunakan), digunakan sebagai jalan pintas ke perintah untuk pengguna berpengalaman,
d. Tab Menu : Menu multipage dengan satu tab untuk setiap halaman yang muncul dan mengapung di atas layar (sisa di layar sampai ditutup), digunakan ketika pengguna perlu mengubah beberapa pengaturan atau melakukan beberapa perintah,
e. Tool Bar : Menu tombol (seringkali dengan ikon) yang tertinggal di layar sampai ditutup, digunakan sebagai jalan pintas ke perintah untuk pengguna,
f. Image Map : Gambar grafis di mana area tertentu terhubung ke tindakan atau menu lainnya, digunakan hanya ketika gambar grafis menambahkan makna ke menu.
Menurut Penelitian yang di lakukan oleh (Fabriyan Fandi Dwi Imaniawan
dkk 2017 ) dengan judul “Sistem Informasi Administrasi Kependudukan Berbasis
Web Pada Desa Bogangin Sumpiuh” menjelaskan dari Ardiansyah (R: 61) “struktur
navigasi dapat diartikan sebagai alur dari suatu program yang menggambarkan
rancangan hubungan antara area yang berbeda sehingga memudahkan proses
pengorganisasian seluruh elemen-elemen website”.
Index
Home
Berita Pendudukan
Pengajuan Profil Syarat
logout Ganti pass Testimoni
Slide
Sumber : Jurnal Fabriyan Fandi Dwi Imaniawan dkk 2017
Gambar II.2 Struktur Navigasi
B. Enterprise Relationship Diagram (ERD)
Menurut Raharjo (2015:47) Entity Relationship Diagram merupakan salah satu alat bantu (berupa gambar) dalam model database relasional yang berguna untuk menjelaskan hubungan atau relasi antar tabel yang terdapat di dalam database”.
Menurut (Priyadi, 2014) menjelaskan bahawa “notasi ERD dipergunakan untuk
relasi pemodelan basis data, notasi yang umum digunakan oleh analisis sistem yaitu
simbol entitas, relasi, atribut dan garis penghubung”. Tujuannya agar menerapkan
dan memberikan gambaran notasi diagram secara fungsional, sehingga tahapan
prmbuatan diagram E-R secara lengkap dapat dicapai.
Menurut Priyadi (2014:20-21) terdapat suatu simbol/ notasi dasar yang digunakan pada Diagram E-R sebagai berikut :
Entitas
dokter menangani penyakit
almt_dok
nidok nm_dok
jm_prtek ruang
nidok kode_pkt jenis_pkt
kode_pkt
nm_pkt
Sumber : Priyadi (2014:20-21)
Gambar II.3
Konversi Kardinalitas Satu Ke Banyak
Berikut contoh ERD berdasarkan jurnal Sandra J Kuryanti (2016 : 89) dengan judul “Rancang Bangun Sistem E-learning Sebagai Sarana Pembelajaran :
Entitas merupakan notasi untuk mewakili suatu objek dengan karakteristik sama
Relasi merupakan notasi yang digunakan untuk menghubungkan beberapa entitas Relasi
Atribut Atribut merupakan notasi yang menjelaskan karakteristik suatu entitas dan juga relasi
Garis penghubung merupakan notasi untuk merangkaikan keterkaitan antara notasi – notasi yang digunakan dalam diagram E-R
Yang digunakan dalam
Garis Penghubung
Id_pengguna Memiliki Tb_pengguna Memiliki Id_pengguna
Id_pengguna Nm_pengguna Kata sandi Nm_lengkap status level Login terakhir
Tb_pengguna
Memiliki
Tb_materi
Memiliki
Tb_matapeljran Id_nilai
Id_siswa
nilai Tgl_ujian Id_materi
status Id_materi Id_materi Jdl_materi Id_mtpljran
file
status Id_pengguna
keterangan
Id_kelas Id_mtpljran
matapeljran Id_mtapljran
Memiliki Id_mtapljran
Memiliki
Tb_matapeljran
matapeljran Id_mtapljran
Tb_soal
Id_soal Id_materi
Jawaban_a Jawaban_b soal
Jawaban_c Jawaban_d Kunci_jwbn Id_pengguna
Memiliki Id_pengguna
Tb_guru
Id_giri nik
jabatan alamat nama
kontak Id_pengguna
Tgl_lahir Tgl_input Pddkan_terakhir Memiliki
Id_kelas
Memiliki Tb_siswa
Id_pengguna
Id_siswa nis
kelas Tgl_lahir
nama
alamat
Id_pen gguna Tgl_input
1 1
M
1
M
M 1 1
M
1 M
1 1 M M
M
1 1