BAB II LANDASAN TEORI · komputer di tempat tertentu dapat secara langsung berkomunikasi dengan...
Transcript of BAB II LANDASAN TEORI · komputer di tempat tertentu dapat secara langsung berkomunikasi dengan...
-
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.