-
BAB II
LANDASAN TEORI
2.1. Konsep Dasar Program
World Wide Web (WWW) atau sering disingkat Web merupakan
jaringan yang
menghubungkan jaringan-jaringan lokal ke dalam suatu jaringan
global, di mana satu
komputer di tempat tertentu dapat secara langsung berkomunikasi
dengan komputer
lain di tempat lain.
2.1.1. Sistem Informasi
1. Sistem
Menurut (Maniah & Hamidin, 2017, p. 1), “Sistem dapat
didefinisikan sebagai
kumpulan dari elemen-elemen berupa data, jaringan kerja dari
prosedur-prosedur
yang saling berhubungan, sumber daya manusia, teknologi baik
hardware maupun
software yang saling berinteraksi sebagai satu kesatuan untuk
mencapai
tujuan/sasaran tertentu yang sama.”
Sedangkan menurut (Anggraeni & Irviani, 2017, p. 1), “Sistem
adalah
kumpulan orang yang saling bekerja sama dengan
ketentuan-ketentuan aturan yang
sistematis dan terstruktur untuk membentuksatu kesatuan yang
melaksanakan suatu
fungsi untuk mencapai tujuan”.
2. Informasi
Menurut (Anggraeni & Irviani, 2017, p. 1), “Informasi adalah
data yang diolah
menjadu lebih berguna dan berarti bagi penerimanya, serta untuk
mengurangi
ketidakpastian dalam proses pengambilan keputusan mengenai suatu
keadaan.”
-
3. Sistem Informasi
Menurut (Anggraeni & Irviani, 2017, p. 2), “Sistem Informasi
merupakan suatu
kombinasi teratur dari orang-orang, hardware, software, jaringan
komunikasi dan
sumber daya data yang mengumpulkan, mengubah, dan menyebarkan
informasi
dalam sebuah organisasi.”
2.1.2. Pengajar
Pengajar berasal dari kata dasar ajar, dalam Kamus Besar Bahasa
Indonesia
(KBBI, 2016) artinya petunjuk yang diberikan kepada orang supaya
diketahui. Salah
satu kata turunan dari ajar yaitu mengajar yang memiliki arti
suatu tindakan untuk
menjadikan orang lain mengerti atau paham akan sesuatu. Dari
pengertian-pengertian
tersebut, dapat disimpulkan bahwa pengajar memiliki kewajiban
untuk membuat
orang lain mengerti atau paham akan hal yang dijelaskan oleh
seorang pengajar.
Dalam lingkungan sekolah, yang memiliki peran sebagai seorang
pengajar
adalah guru. Guru melakukan kegiatan mengajar kepada para
muridnya dengan
bertujuan untuk memenuhi kewajiban tugas profesi yang diwajibkan
kepadanya.
Beberapa kewajiban guru dalam melaksanakan peran peranannya
:
1. Merencanakan pembelajaran, melaksanakan proses pembelajaran
yang
bermutu, serta menilai dan mengevaluasi hasil pembelajaran.
2. Meningkatkan dan mengembangkan kualifikasi akademik dan
kompetensi
secara berkelanjutan sejalan dengan perkembangan ilmu
pengetahuan,
teknologi, dan seni.
3. Bertindak objektif dan tidak diskriminatif atas dasar
pertimbangan jenis
kelamin, agama, suku, ras, dan kondisi fisik tertentu, atau
latar belakang
keluarga, dan status sosial ekonomi peserta didik dalam
pembelajaran.
-
4. Menjunjung tinggi peraturan perundang-undangan, hukum, dan
kode etik guru,
serta nilai-nilai agama dan etika.
5. Memelihara dan memupuk persatuan dan kesatuan bangsa.
2.1.3. Internet
Menurut Irawan dalam (Sagita & Sugiarto, 2016), “Internet
atau yang awalnya
disebut dengan internet network, memiliki arti rangkaian
sejumlah komputer yang
saling terhubung menjadi beberapa rangkaian, dimana sistem
komputer tersebut
terhubung secara global dan protocol yang digunakan berupa
TCP/IP.”
1. Website
Menurut Puspitosari dalam (Imaniawan & Elsa, 2016), “Website
merupakan
sebuah halaman informasi yang disediakan melalui jaringan
internet sehingga dapat
diakses oleh semua orang dimanapun berada selama perangkat yang
digunakan
terkoneksi dengan jaringan internet.”
2. Web Browser
Web browser merupakan aplikasi yang digunakan untuk menampilkan
website
yang telah dibuat oleh pengembang website. Web browser yang
beredar di internet
sangat banyak, namun yang paling sering digunakan antara lain
Mozilla Firefox,
Google Chrome, Internet Explorer, Opera, dan Safari. (Abdulloh,
2016).
Dalam pembangunan sistem yang nantinya akan digunakan oleh
pengguna
dengan berbagai macam web browser, akan lebih disarankan apabila
menggunakan
lebih dari satu web browser untuk memastikan desain website yang
telah dibuat
dapat tampil sesuai dengan keinginan di berbagai web browser
untuk menghindari
beberapa macam bug yang bisa muncul pada saat sistem telah
digunakan oleh
pengguna.
-
Sumber : Aplikasi Google Chrome
Gambar II.1. Aplikasi Google Chrome
3. Web Server
Web server merupakan sebuah perangkat lunak yang memiliki fungsi
khusus
untuk meneruma permintaan http maupun https dari web browser
yang digunakan
oleh pengguna atau bisa disebut client dan mengirimkan hasil
permintaan tersebut
dalam bentuk halaman-halaman website berbentuk dokumen html. Web
server yang
biasa digunakan dan sudah tidak asing antara lain adalah
Microsoft Internet
Information Service dan Apache. (Sagita & Sugiarto,
2016).
4. Web Domain
Menurut (MADCOMS, 2016, p. 6) :
Web domain adalah nama pengganti dari IP address yang menuju
pada server
tertentu dan biasanya diwakili oleh adanya website. Domain
berfungsi untuk
mempermudah pengguna mengakses informasi yang tersedia pada
server
komputer pada jaringan internet dan biasanya berupa nama unik.
Sebelum
muncul domain, untuk memperoleh informasi yang terdapat pada
server
komputer menggunakan alamat IP address berupa sederetan
kombinasi angka
yang panjang. Untuk mempermudah pengguna mengakses informasi
pada
server komputer dan mengingat alamat website dengan mudah,
maka
diciptakanlah domain.
-
5. Web Hosting
Web hosting secara umum yaitu suatu bentuk layanan jasa
penyewaan tempat
untuk menyimpan berkas/file pada jaringan internet. Berkas yang
nantinya akan
dapat diakses oleh pengguna jaringan internet berupa file
situs/website, email, atau
file-file lainnya. Hosting berbentuk data center atau rak-rak
komputer dengan
kapasitas penyimpanan yang besar dan menyala selama 24 jam
non-stop. Faktor
yang membuat adanya perbedaan harga pada hosting yaitu
ditentukan oleh ukuran
kapasitas hardisk yang disediakan dan fasilitas yang terdapat
pada hosting tersebut.
(MADCOMS, 2016, p. 7).
2.1.4. Bahasa Pemrograman
Bahasa pemrograman adalah dari kumpulan instruksi standar
untuk
memerintah komputer, Bahasa pemrograman yang digunakan untuk
membangun
website antara lain :
1. PHP (Hypertext Preprocessor)
PHP (Hypertext Preprocessor) adalaha bahasa script yang
digunakan untuk
membuat aplikasi berbasis web (website, blog, atau aplikasi
web). Untuk membuat
aplikasi berbasis web, penggunaan bahasa PHP ditanamkan atau
disisipkan ke dalam
HTML. (Nugroho, 2014, p. 153).
PHP adalah bahasa pemrograman script server-side yang didesain
untuk
pengembangan website. Disebut bahasa pemrograman server-side
karena PHP
diproses pada komputer server. Tidak sepeerti bahasa pemrograman
lainnya seperti
JavaScript yang menggunakan client-side dan diproses pada web
browser. Bahasa
pemrograman PHP bersifat Open Source sehingga dapat digunakan
secara gratis oleh
-
siapapun. PHP dirilis dalam lisensi PHP License, sedikit berbeda
lisensi GNU
General Public License (GPL) yang biasa digunakan untuk proyek
Open Source.
2. HTML (Hypertext Markup Language)
Hypertext Markup Language (HTML) adalah sebuah bahasa markup
yang
digunakan untuk membuat sebuah halaman pada website, menampilkan
berbagai
informasi di dalam sebuah penjelajahan website internet dan
formating hypertext
sederhana yang ditulis dalam berkas format ASCII agar dapat
menghasilkan wujud
yang terintegrasi. Berkas yang dibuat dalam perangkat lunak
pengolah kata dan
disimpan dalam format ASCII normal sehingga menjadi homepage
dengan perintah-
perintah HTML. (Suryana & Koesheryatin, 2014, p. 29).
Segala ketentuan dalam pemrograman HTML diatur oleh W3C (World
Wide
Web Consortium). W3C mendefinisikan HTML sebagai aplikasi dari
SGML
(Standard Generalized Markup Language). SGML adalah bahasa
untuk
mendefinisikan bahasa lain dengan menentukan struktur file dalam
bentuk DTD
(Document Type Definition) , yang merupakan sintaks dari
berbagai elemen dan
berbagai bahasa yang salah satunya adalah HTML.
Bahasa HTML ditulis menggunakan text editor. Pada sistem operasi
Windows,
dapat menggunakan Notepad atau text editor lainnya yang memiliki
kelebihan
menyediakan fitur syntax highlightning seperti Notepad++, Atom,
Sublime Text 3,
dan Visual Studio Code. Semua file HTML harus disimpan dengan
ekstensi *.html
agar script yang ditulis bisa dijalankan.
Suatu dokumen HTML yang paling sederhana, setidak-tidaknya
mempunyai
struktur atau elemen berikut.
-
3. CSS (Cascading Style Sheet)
CSS (Cascading Style Sheet) merupakan salah satu bahasa
pemrograman
website untuk mengendalikan komponen-komponen dalam sebuah
website sehingga
lebih terstruktur dan seragam. CSS digunakan untuk memformat
tampilan halaman
website yang dibuat dengan bahasa HTML dan XHTML. (Suryana &
Koesheryatin,
2014, p. 101)
CSS dapat mengendalikan ukuran gambar, warna bagian tubuh pada
teks,
warna tabel, ukuran border, warna border, warna hyperlink, warna
mouse over, spasi
antar paragraf, spasi antar teks, margin kiri, kanan, atas,
bawah, dan banyak lagi
parameter lainnya. CSS adalah bahasa style sheet yang digunakan
untuk mengatur
tampilan dokumen. Dengan adanya CSS memungkinkan pengguna
untuk
menampikan halaman yang sama dengan format yang berbeda.
Ada 3 cara untuk menambahkan CSS kedalam sebuah website yang
akan
dibangun, yaitu :
a. CSS Internal
Kode CSS Internal diletakan dalam bagian pada halaman. Class
dan
ID dapat digunakan untuk merujuk hpada kode CSS, namun hanya
akan aktif
pada halaman tersebut. Style CSS yang dipasang dengan metode ini
akan di-
download setiap kali halaman dipanggil, jadi ini akan
meningkatkan kecepatan
akses. Namun ada beberapa kasus dimana penggunaan internal
stylsheet justru
-
berguna. Contohnya adalah untuk mengirimkan template halaman
kepada
seseoran karena semuanya bisa terlihat dalam 1 halaman, maka
akan lebih
mudah untuk melihat previewnya. CSS Internal diletakan dalam
tag
. Untuk contoh penulisan CSS Internal sebagai berikut :
p{color:white; font-size: 12px;}
.center{display: block; margin:auto;}
#button-go, #button-back{border: solid 2px black;}
b. CSS External
CSS Eksternal memungkinkan untuk memisahkan file HTML dan CSS
dengan
tetap menghubungkan kedua file. Dengan cara ini, perubahan
apapun yang
dibuat pada file CSS akan tampil pada website secara
keseluruhan. File CSS
Eksternal biasanya diletakan setelah bagian pada file HTML
seperti
berikut :
Kemudian CSS Eksternal yang telah diberi nama style.css
diletakan pada file
lain dengan berisikan semua rule yang dibutuhkan seperti berikut
:
p{color:white; font-size: 12px;}
.center{display: block; margin:auto;}
#button-go, #button-back{border: solid 2px black;}
c. CSS Inline
CSS Inline digunakan untuk beberapa tag HTML tertentu dan
mewajibkan
untuk menggunakan atribut . Cara ini kurang direkomendasikan
karena
setiap tag HTML harus diberikan style masing-masing. Namun dalam
beberapa
situasi CSS Inline akan menjadi berguna, contohnya apabila tidak
memiliki
-
akses ke file CSS atau harus mengubah style untuk satu elemen
saja. Contoh
halaman HTML menggunakan CSS Inline sebagai berikut :
Heading 1
Paragraph
4. JavaScript
Menurut (Suryana & Koesheryatin, 2014, p. 181) mengemukakan
:
JavaScript adalah bahasa script berorientasi objek yang
memperbolehkan
pemakai untuk mengendalikan banyak aspek interaksi pemakai pada
suatu
dokumen HTML. Di mana objek tersebut dapat berupa suatu window,
frame,
URL, dokumen, form, button, atau komponen yang lain. Semuanya
mempunyai
properti yang saling berhubungan dan masing-masing memiliki
nama, lokasi,
warna nilai dan atribut lain.
Untuk dapat mempelajari pemrograman JavaScript, ada dua piranti
yang
diperlukan, yaitu browser dan text editor. Text editor adalah
sebuah pengolah kata
(word processor) menghasilkan file dalam format ASCII murni.
Jika pada Windows
bisa menggunakan Notepad, Wordpad, atau Ultraedit Text Editor.
Selain itu, browser
website yang akan digunakan harus mendukung JavaScript. Jadi,
dapat
menggunakan Internet Explorer, Opera, Firefox, dan lainnya.
Kode program JavaScript dapat dituliskan langsung pada file
HTML
menggunakan tag kontainer dan tidak perlu menuliskan program
JavaScript pada file terpisah. Yang dimaksud dengan tag
kontainer adalah tag yang
diawali dengan dan diakhiri dengan .
Contoh :
-
Tag kontainer mempunyai dua atribut, tetapi yang harus Anda
isikan hanya satu atribut, yaitu Language. Istilah atribut
Language dengan
“JavaScript”. Hal ini digunakan untuk memberitahukan pada proses
bahwa yang
akan anda tulis adalah JavaScript.
Contoh :
//isi program
2.1.5. Framework
Framework atau kerangka kerja pengembangan aplikasi adalah suatu
standar
yang harus diikuti untuk melakukan pengembangan aplikasi oleh
pemrogram.
Standar ini mengatur banyak hal, mulai dari nama file,
direktori, dan cara
memprogramnya. Framework memberikan kerangka program, kumpulan
librari dan
fungsi yang bisa langusng digunakan, serta aturan untuk
menggunakannya. (Sidik,
2018, p. 1).
1. CodeIgniter 3
Menurut (Sidik, 2018, p. 2) “CodeIgniter 3 adalah framework
pengembangan
aplikasi (Application Development Framework) dengan menggunakan
bahasa
pemrograman PHP yang lebih sistematis”.
Pembuat sistem atau pengembang dapat langsung menghasilkan
program
dengan cepat dengan mengikuti aturan yang disiapkan oleh
framework CI ini.
Pemrogram juga tidak perlu membuat program dari awal (from
scratch), karena CI
menyediakan sekumpulan librari dan fungsi yang banyak, yang
diperlukan untuk
menyelesaikan pekerjaan umum dengan menggunakan antarmuka dan
struktur logika
-
untuk mengakses librari. Hal ini menjadikan pemrogram untuk
dapat memfokuskan
diri pada kode yang harus dibuat untuk menyelesaikan suatu
pekerjaan.
2. Bootstrap
Menurut (Sulistiono, 2018, p. 17) mengemukakan bahwa :
Bootstrap adalah sebuah pustaka open source yang merupakan
framework CSS
dan JavaScript untuk membuat website yang responsif. Karena
merupakan
framework yang bersifat open source dengan lisensi MIT,
perkembangan
bootstrap dapat dipantau melalui website resminya di
getbootstrap.com dan
Githubnya.
Kerangka kerja ini akan selalu memunculkan fitur-fitur baru yang
disesuaikan
dengan kebutuhan pemrogram, pada saat Laporan Tugas Akhir ini
dibuat, bootstrap
sudah mencapai bootstrap 4.
2.1.6. Basis Data
Menurut (Nurdin & Darwati, 2017), “Basis data dapat
didefinisikan sebagai
himpunan kelompok data yang saling berhubungan yang
diorganisasikan sedemikian
rupa agar kelak dapat dimanfaatkan kembali dengan cepat dan
mudah.”
Basis data atau bisa disebut dengan database adalah sebuah
sistem yang dibuat
untuk mengorganisasi, menyimpan dan menarik data dengan mudah.
Database
terdiri dari kumpulan data yang terorganisir untuk satu atau
lebih penggunaan, dalam
bentuk digital. Database digital di manage menggunakan Database
Management
System (DBMS), yang menyimpan isi database, mengijinkan
pembuatan,
maintenance data dan pencarian dan akses yang lain. Beberapa
DBMS yang ada saat
ini antara lain MySQL, SQL Server, Ms.Access, Oracle, dan
PostgreSQL.
1. MySQL
MySql adalah salah satu jenis database server yang sering
digunakan. MySQL
menggunakan bahasa SQL untuk mengakses database-nya. Lisensi
MySQL adalah
-
FOSS License Exception dan ada juga yang versi komersial. MySQL
tersedia dalam
platform untuk versi windows dan linux. Untuk melakukan
administrasi secara lebih
mudah terhadap MySQL, dapat digunakan software berupa phpMyAdmin
dan
MySQL. Sistem database MySQL mendukung beberapa fitur seperti
multithreaded,
multi-user, dan SQL Database Management System (DBMS).
2. PhpMyAdmin
Menurut Abdulloh dalam (Wijianto & Anggoro, 2018)
mendefinisikan
“PhpMyAdmin merupakan aplikasi berbasis web yang digunakan untuk
membuat
database MySQL sebagai tempat untuk menyimpan data-data.”
PhpMyAdmin adalah tools MySQL Clinet berlisensi Freeware yang
berjalan
pada server-side dan berfungsi untuk memudahkan manajemen MySQL.
Dengan
menggunakan phpMyAdmin, pembuatan database, pembuatan tabel,
menambahkan,
menghapus, dan meng-update data dilakukan dengan GUI dan akan
terasa lebih
mudah tanpa harus mengetikkan perintah SQL secara manual.
(Nugroho, 2014, p.
71).
Sumber : Aplikasi PhpMyAdmin
Gambar II.2. Aplikasi PhpMyAdmin
-
2.1.7. Perangkat Lunak Pendukung
1. Atom
Menurut (Ramadhani & Nugraha, 2018), Atom merupakan sebuah
teks editor
yang memiliki lisensi open source yang tersedia untuk MacOS,
Linux, dan Windows
dengan dukungan plug-in yang ditulis di Node.js, dan embedded
Git Control yang
dikembangkan oleh GitHub. Atom adalah aplikasi desktop yang
diciptakan
menggunakan teknologi website.
Kelebihan Aplikasi Atom :
a. Aplikasi bersifat gratis, tanpa harus membeli aplikasi dapat
menggunakan
semua fitur dan memodifikasi aplikasi.
b. Split mode, memungkinkan untuk membuka dua atau lebih
workfield tanpa
harus berpindah-pindah tab.
c. Command pallete, dapat mengakses file shortcut dari Atom.
d. Multi platform, sudah mendukung banyak platform sistem
operasi seperti
Linux, MacOs, dan Windows.
e. Multi language, mendukung banyak bahasa pemrograman.
f. Memiliki banyak plugin, berguna untuk memudahkan penggunaan
dalam
melakukan aktifitas dan memperindah penampilan aplikasi.
g. Mudah untuk didapatkan dan menginstalnya.
-
Sumber : Aplikasi Atom
Gambar II.3. Tampilan Aplikasi Atom
2. XAMPP
Menurut, XAMPP adalah paket program web dengan kumpulan software
yang
terdiri dari Apache, MySQL, PhpMyAdmin, PHP, Perl, Filezilla,
dan lain-lain.
XAMPP berfungsi untuk memudahkan instalasi lingkungan PHP dimana
biasanya
lingkungan pengembangan website memerlukan PHP, Apache, MySQL
dan
PhpMyAdmin serta software lainnya yang terkait dengan
perkembangan website.
(Nugroho, 2014, p. 1).
Kelebihan XAMPP :
a. Kapasitas yang cukup besar, mempunyai kapasitas sekitar
60.000 tabel
dengan jumlah record mencapai 5.000.000.000.
b. Aplikasi bersifat gratis, tanpa harus membeli aplikasi dapat
menggunakan
semua fitur.
c. Tingkat keamanan data cukup aman.
d. Memiliki engine yang multi platform sehingga mampu
diaplikasikan dalam
berbagai sistem operasi.
-
e. Memiliki tingkat kecepatan pemrosesan data yang cepat.
Sumber : Aplikasi XAMPP
Gambar II.4. Tampilan Aplikasi XAMPP
3. CorelDRAW
CorelDRAW merupakan aplikasi desain grafis yang dikembangkan
dan
diterbitkan oleh Corel Corporation, yang berguna sebagai ide
pada sebuah
karyagrafis, seperti pembuatan buku, poster, pengeditan foto,
dan sebagainya.
CorelDRAW adalah aplikasi desain grafis yang sangat terkenal
dikalangan seniman
ataupun ilustrator, yang dibuat untuk memnuhi permmintaan pasar
profesional di
bidang grafis. CorelDRAW menawarkan berbagai tool yang
dibutuhkan untuk
membuat sebuah ilsutrasi vektor yang akurat dan kreatif.
(Wahana, 2015, p. 2).
Kelebihan CorelDRAW menurut (Irvandi, 2017) sebagai berikut
:
a. Dukungan format Import / Export yang banyak
b. Hasil gambar berbasis vektor berkualitas baik
c. Menjadi standar industri dan perusahaan
-
d. Tersedianya banyak tool seperto selection, editing, dan
pemberian efek
e. Mudah dalam penggunaan
Dalam pembuatan sistem yang akan dibangun dalam penyusunan
Laporan
Tugas Akhir, CorelDRAW digunakan untuk membuat logo, mengedit
background
tampilan website yang akan dibangun, merancang tampilan website,
dan pekerjaan
lainnya yang berhubungan dengan pembuatan atau pengeditan
gambar.
Sumber : Aplikasi CorelDRAW X7
Gambar II.5. Tampilan CorelDRAW X7
4. CKEditor
Menurut (Bustan, 2017) mengemukakan bahwa :
CKEditor merupakan salah satu text editor WYSIWYG yang biasa
digunakan
dalam aplikasi berbasis web. CKEditor memiliki fasilitas yang
hampir sama
dengan Microsoft Office sehingga penggunaanya begitu mudah.
CKEditor
akan sangat berguna ketika kita akan menulis artikel pada
web/blog, cukup
dengan mengetik artikel seperti kita mengetik pada Microsoft
Word tanpa perlu
menggunakan tag HTML. Salah satu kelebihan CKEditor adalah
tersedia versi
free dengan fasilitas yang lengkap serta memiliki banyak plugin
gratis yang
dapat dimanfaatkan.
Menurut (Panugali, 2017), “CKEditor adalah teks editor yang
digunakan di
lingkungan web. CKEditor adalah sebuah WYSIWYG (What You See Is
What You
Get) editor, yang berarti teks yang di-edit akan sama dengan
yang akan tampil.”
-
Kelebihan CKEditor :
a. Penyimpanan text dengan tag HTML menjadi lebih teratur.
b. Memudahkan pengguna awam yang tidak mengetahui struktur HTML
dalam
melakukan inputan data.
c. Kemudahan dalam mengimpor data berbentuk gambar dengan jenis
.jpg,
.jpeg, .png, .gif.
d. Terdapat tiga package yang bisa digunakan secara gratis yaitu
basic package,
standard package, full package.
Sumber : (Bustan, 2017)
Gambar II.6. Tampilan CKEditor
2.1.6. Model View Controller
Menurut (Sidik, 2018, p. 39) teknik pemrograman MVC (Model
View
Controller) merupakan teknik pemrograman yang mengharapkan
pemrogram secara
disiplin untuk membagi program menjadi bagian model, view,
controller, seperti
gambar berikut :
-
Sunber : (Sidik, 2018, p. 39)
Gambar II.7. Model View Controller
1. Model
Bagian dari aplikasi yang mengimplementasi logika untuk domain
data
aplikasi. Umumnya, objek model digunakan untuk mengambil data
dari database
atau menyimpan data ke dalam database.
2. View
Menampilkan antarmuka untuk pengguna (user interface, UI)
aplikasi.
Antarmuka ini dibuat berdasarkan data dari model.
3. Controller
Komponen yang digunakan untuk menangani interaksi pengguna,
bekerja
dengan model, dan memilih view mana yang digunakan untuk
memproses data.
2.1.7. Model Pengembangan Perangkat Lunak
Dalam penyusunan Laporan Tugas Akhir digunakan metode waterfall
dalam
proses pengembangan perangkat lunak. Menurut (Pressman, 2014)
waterfall model
terdiri dari 5 tahapan sebagai berikut :
1. Communication (Project Initiation & Requirements
Gathering)
Sebelum memulai pekerjaan yang bersifat teknis, sangat
diperlukan adanya
komunikasi dengan customer demi memahami dan mencapai tujuan
yang ingin
-
dicapai. Hasil dari komunikasi tersebut adalah inisialisasi
proyek seperti
menganalisis permasalahan yang dihadapai dan mengumpulkan
data-data yang
diperlukan, serta membantu dalam mendefinisikan fitur dan fungsi
dari sistem.
Pengumpulan data-data tambahan bisa juga diambil dari jurnal,
artikel, paper
dan internet. Data-data yang dikumpulkan antara lain mengenai
informasi data
guru, siswa dan kegiatan yang dilakukan oleh guru SMA/MA
sederajat.
2. Planning (Estimating, Scheduling, Tracking)
Tahapan perencanaan yang menjelaskan tentang estimasi
tugas-tugas teknis
yang akan dilakukan, resiko-resiko yang dapat terjadi, sumber
daya yang
diperlukan dalam membuat sistem, produk kerja yang ingin
dihasilkan,
penjadwalan kerja yang akan dilaksanakan, dan tracking proses
pengerjaan
sistem.
3. Modeling (Analysis and Design)
Tahap perancangan dan pemodelan arsitektur sistem yang berfokus
pada
perancangan struktur data, arsitektur software, tampilan
interface, dan
algoritma program. Tujuannya untuk lebih memahami gambaran besar
dari apa
yang akan dikerjakan. Struktur data yang digunakan untuk membuat
sistem ini
adalah ERD dan LRS.
4. Construction (Code and Test)
Proses penerjemahan bentuk desain menjadi kode atau bentuk
bahasa yang
dapat dibaca oleh mesin. Setelah pengkodean selesai, dilakukan
pengujian
terhadap sistem dan juga kode yang sudah dibuat. Tujuannya
untuk
menemukan kesalahan yang mungkin terjadi untuk nantinya
diperbaiki.
Pengujian yang digunakan untuk menguji sistem yang akan
dibangun
menggunakan metode Blackbox Test
-
5. Deployment (Delivery, Support, Feedback)
Tahapan implementasi software kepada user, perbaikan software,
evaluasi
software, dan pengembangan software berdasarkan umpan balik
yang
diberikan agar sistem dapat tetap berjalan dan berkembang sesuai
dengan
fungsinya.
Sumber : (Pressman, 2014)
Gambar II.8. Tahapan Metode Waterfall
2.2. Teori Pendukung
Dalam pembangunan dan pengembangan website diperlukan teori
pendukung
agar website yang akan dibangun atau sedang dikembangkan dapat
menjadi website
yang lebih sempurna. Teori pendukung digunakan untuk
menggambarkan bentuk
logical model dari perancangan sistem informasi dimana simbol
dan diagram dapat
menunjukan lebih jelas bagaimana sistem berjalan. Logical model
dapat
digambarkan dengan struktur navigasi, Entity Relationship
Diagram (ERD), Logical
Record Structure (LRS), dan pengujian website.
2.2.1. Struktur Navigasi
Struktur navigasi merupakan komponen yang berfungsi
memperlihatkan
tentang sistem menu pilihan apabila website dijalankan untuk
mempermudah
-
pengguna untuk melihat semua fasilitas atau pilihan yang
tersedia dalam website.
(Supriyanta & Nussy, 2016).
Terdapat 4 struktur dasar navigasi yang digunakan menurut
Binanto dalam
(Afifah & Supriyanta, 2018) yaitu :
1. Linear Model
Pengguna akan melakukan navigasi secara berurutan, dari frame
atau byte dari
informasi yang pertama diakses hingga informasi yang
lainnya.
Sumber : (BBC News, 2018)
Gambar II.9. Linear Model
2. Hierarchical Model
Struktur dasar hierarchical disebut juga linear dengan
percabangan karena
pengguna melakukan navigasi pada sepanjang cabang pohon struktur
yang terbentuk.
Sumber : (BBC News, 2018)
Gambar II.10. Hierarchial Model
3. Nonlinier Model
Pengguna memiliki kebebasan dalam melakukan navigasi melalui isi
proyek
dengan tidak berkaitan dengan langkah yang sudah ditetapkan
sebelumnya.
-
Sumber : (BBC News, 2018)
Gambar II.11. Nonlinier Model
4. Composite Model
Pengguna memiliki kebebasan dalam melakukan navigasi seperti
pada
nonlinier, tetapi terkadang dibatasi presentasi linier film atau
informasi penting
dan/atau pada data yang paling terorganisasi secara logis pada
suatu hierarki.
Sumber : (BBC News, 2018)
Gambar II.12. Composite Model
-
2.2.2. Kardinalitas Relasi
Kardinalitas relasi adalah komponen yang berfungsi untuk
menunjukan jumlah
maksimum entitas yang dapat berelasi dengan entitas pada
himpunan entitas yang
lain dan begitu juga sebaliknya. (Rahmayu, 2015).
Kardinalitas yang terjadi antara dua himpunan entitas ada 4
menurut
(Fridayanthie & Mahdiati, 2016), yaitu :
1. One to One
Setiap atribut yang terdapat pada entitas A berelasi paling
banyak dengan satu
atribut pada entitas B. Berlaku juga sebaliknya, setiap atribut
B berelasi paling
banyak dengan satu atribut A.
2. One to Many
Setiap atribut dari entitas A dapat berelasi dengan banyak
(lebih dari satu)
atribut pada entitas B. Sebaliknya, setiap atribut dari entitas
B berelasi dengan paling
banyak satu atribut pada entitas A.
3. Many to One
Setiap atribut dari entitas A berhubungan paling banyak dengan
satu atribut
pada entitas B. Sebaliknya, setiap atribut dari entitas B dapat
berelasi dengan banyak
(lebih dari satu) atribut pada entitas A.
4. Many to Many
Setiap atribut dari Entitas A berelasi dengan banyak (lebih dari
satu) atribut
pada entitas B demikian sebaliknya.
-
2.2.3. Entity Relationship Diagram (ERD)
Entity Relationship Diagram (ERD) merupakan gabungan konsep dari
entity,
attribute, dan entity relationship, dan entity dalam ERD
menggambarkan sesuatu
(things) atau benda dalam dunia nyata. (Adi & Kristin,
2014).
Sedangkam menurut Rosa dan Shalahuddin dalam (Imaniawan &
Wati, 2017)
mengemukakan bahwa “Entity Relationship Diagram (ERD) adalah
model yang
banyak digunakan dalam pemodelan basis data, ERD dikembangkan
berdasarkan
teori himpunan dalam bidang matematika”.
Beberapa deskripsi mengenai komponen yang terdapat pada
Entity
Relationship Diagram (ERD) menurut (Fridayanthie & Mahdiati,
2016), sebagai
berikut :
1. Entitas (Entity)
Sesuatu yang nyata atau abstrak yang mempunyai karakteristik
dimana kita
akan menyimpan data.
2. Atribut (Attribute)
Ciri umum semua atau sebagian besar instansi pada entitas
tertentu.
3. Relasi (Relation)
Hubungan alamiah yang terjadi antara satu atau lebih
entitas.
4. Asosiasi (Association)
Garis penghubung atribut dengan kumpulan entitas dan kumpulan
entitas
dengan relasi.
-
2.2.4. Logical Record Structure (LRS)
Menurut Andriansyah dalam (Irnawati & Listianto, 2018) “LRS
merupakan
transformasi dari penggambaran ERD dalam bentuk yang paling
jelas dan mudah
untuk dipahami”.
Ada cara untuk membentuk skema database atau Logical Record
Structure
(LRS) berdasarkan Entity Relationship Diagram (ERD) :
1. Jika relasinya one to one, maka foreign key ditetapkan pada
salah satu dari
kedua entity yang ada atau meggabungkan kedua entitas
tersebut.
2. Jika relasinya one to many atau many to one, maka foreign key
ditetapkan pada
entity many.
3. Jika relasinya many to many, maka perlu adanya file connector
yang berisi dua
foreign key yang berasal dari kedua entity tersebut.
2.2.5. Implementasi dan Pengujian Website
Pengujian website bertujuan untuk mengukur sistem yang dibangun
dapat
berinteraksi dengan pengguna (user) yang mengoperasikan sistem
tersebut dengan
baik atau tidak. Metode pengujian website yang digunakan untuk
menguji sistem
yang dibangun dalam penyusunan Laporan Tugas Akhir ini adalah
Black Box Testing
(pengujian kotak hitam).
Menurut Rosa dan Salahuddin dalam (Rahmayu, 2015) mengemukakan
bahwa
“Black Box Testing (pengujian kotak hitam) yaitu menguji
perangkat lunak dari segi
spesifikasi fungsional tanpa menguji desain dan kode
program”.
Black Box Testing dilakukan dengan membuat kasus uji dengan
mencoba
semua fungsi dengan memakai perangkat lunak apakah sesuai dengan
spesifikasi
-
yang dibutuhkan. Penggunaan Black Box Testing pada sistem yang
dibangun
berusaha untuk menemukan kesalahan dalam kategori sebagai
berikut :
1. Kesalahan dalam struktur data atau akses basis data
eksternal.
2. Fungsi yang tidak benar atau hilang.
3. Inisialisasi dan kesalahan terminasi.
4. Kesalahan interface (antarmuka).
5. Kesalahan kinerja.
Langkah-langkah yang dilakukan dalam melakukan black box testing
menurut
(Khaira, 2016) sebagai berikut :
1. Menganalisis kebutuhan dan spesifikasi dari perangkat
lunak.
2. Pemilihan jenis input yang memungkinkan menghasilkan output
benar serta
jenis input yang memungkinkan output salah pada perangkatlunak
yang sedang
diuji.
3. Menentukan output untuk suatu jenis input.
4. Pengujian dilakukan dengan input-input yang telah
benar-benardiseleksi.
5. Melakukan pengujian.
6. Pembandingan output yang dihasilkan dengan output yang
diharapkan.
7. Menentukan fungsionalitas yang seharusnya ada pada perangkat
lunak yang
sedang diuji.
-
Kelebihan black box testing menurut (Sigalingging &
Budiarti, 2016) sebagai
berikut :
1. Berfokus pada logika internal perangkat lunak untuk menemukan
kesalahan
dan memastikan program dapat berjalan dengan baik.
2. Berfokus pada keperluan fungsional dan aplikasi.
3. Pengembang software dapat membuat himpunan kondisi input yang
akan
melatih seluruh syarat fungsional aplikasi tersebut.