7 BAB II
LANDASAN TEORI
2.1 Konsep Dasar Web
Secara terminologi website adalah Kumpulan dari halaman-halaman situs, yang biasanya terangkum dalam sebuah domain atau subdomain, yang tempatnya berada didalam world wide web (www) di internet. WWW terdiri dari seluruh situs web yang tersedia kepada publik. Halaman-halaman sebuah situs web (webpage) diakses dari sebuah URL yang menjadi “akar” (root), yang disebut homepage (halaman muka) atau sering diterjemahkan menjadi beranda. URL ini mengatur webpage untuk menjadi sebuah hirarki, meskipun hyperlink–hyperlink yang ada dihalaman tersebut mengatur para pembaca dan memberitahu mereka susunan keseluruhan dan bagaimana arus informasi ini berjalan.
2.1.1 Teori Konsep Dasar Program
a. Website
Menurut Hidayat (2010:12):
Website atau situs dapat diartikan sebagai kumpulan halaman-halaman yang digunakan untuk menampilkan informasi teks, gambar diam atau gerak, animasi, suara dan gabungan dari semuanya, baik yang bersifat statis maupun dinamis yang membentuk satu rangkaian bangunan yang saling terkait, yang masing-masing dihubungkan dengan jaringan-jaringan halaman.
Menurut Ardhana (2012:3),”Web adalah suatu layanan sajian informasi yang menggunakan konsep hyperlink (tautan), yang memudahkan surfer (sebutan para
pemakai komputer yang melakukan browsing atau penelusuran informasi melalui internet)”.
Dapat disimpulkan website adalah sebuah tempat di internet yang menyajikan informasi dengan berbagai macam format data seperti text, image, bahkan video dan dapat diakses menggunakan berbagai aplikasi klien, sehingga memungkinkan penyajian informasi yang lebih menarik dan dinamis dengan pengelolaan yang terorganisasi
1) Web Browser
Menurut Kustiyahningsih (2011a:8) menyimpulkan bahwa,“Web Browser adalah software yang digunakan untuk menampilkan informasi dari server web”. Software ini telah dikembangkan dengan menggunakan user interface grafis, sehingga pemakai dapat melakukan ’point and click’ untuk pindah antar dokumen.
2) Web Server
Menurut Kustiyahninsih (2011b:8) menyimpulkan bahwa,”Web Server adalah komputer yang digunakan untuk menyimpan dokumen-dokumen web”, komputer ini akan melayani permintaan dokumen web dari kliennya.
3) Internet
Menurut Sibero (2013:10),“interconnected network (internet) adalah jaringn komputer yang menghubungkan antar jaringan secara global, internet dapat juga disebut jaringan dalam suatu jaringan yang luas”. Internet juga menggunakan
protokol komunikasi yaitu Transmission Control Protocol/Internet Protocol (TCP/IP). Protocol adalah spesifikasi sederhana mengenai bagaimana komputer saling bertukar informasi. Transmission control protocol bertugas untuk memastikan bahwa semua hubungan bekerja dengan benar, sedangkan internet protocol yang mentransmisikan data dari satu komputer ke komputer lain. TCP/IP menjadi satu nama karena fungsinya selalu bergandengan satu sama lain dalam komunikasi data.
Berikut ini beberapa istilah yang pada umumnya sering digunakan dalam hubungan dengan internet, antara lain :
1) World Wide Web (WWW) adalah istilah yang digunakan untuk menggambarkan jaringan berbasis teks pada halaman web yang saling terkait.
2) Hypertext Transfer Protocol (HTTP) adalah sebuah protocol yang menentukan aturan web browser dan web server dalam penyediaan dokumen yang diminta browser.
3) File Transfer Protocol (FTP) adalah proses mengirim file dari satu komputer ke komputer lainnya.
4) Uniform Resource Locator (URL) adalah suatu alamat dari dokumen dan sumber daya di web.
b. Bahasa Pemrograman
Bahasa pemrograman ini merupakan suatu himpunan dari aturan sintaks dan semantik yang dipakai untuk mendefinisikan program komputer. Bahasa ini memungkinkan seorang programmer dapat menentukan secara persis data mana yang akan diolah oleh komputer, bagaimana data ini akan disimpan atau diteruskan, dan jenis langkah apa secara persis yang akan diambil dalam berbagai situasi.
1) JavaScript
Menurut Sunarto (2009:122), “JavaScript adalah bahasa scripting handal yang berjalan pada sisi client. JavaScript adalah bahasa scripting yang dikembangkan oleh Netscape. Ini adalah bahasa script yang popular di internet dan dapat bekerja di sebagian besar penjelajah web popular seperti Internet Explorer (IE), Mozilla Firefox, Netscape dan Opera”. Kode JavaScipt dapat disisipkan dalam halaman web menggunakan tag script, biasanya dituliskan dalam bentuk fungsi yang ditaruh di tag<head> yang dibuka dengan tag<script type=”text/javascript” src=”file.js”></script>.
2) Personal Home Page (PHP)
Menurut Winarno, dkk (2013:59), ”PHP atau hypertext preprocessor adalah sebuah bahasa pemograman web berbasis server (server-side)”. Artinya, kode ini dijalankan di server, kalau tidak ada server, maka kode php tidak bisa dijalankan.
Dari pendapat yang dikemukakan diatas dapat disimpulkan bahwa PHP adalah akronim dari hypertext preprocessor yaitu suatu bahasa pemograman berbasiskan kode-kode (script) yang digunakan untuk mengolah suatu data dan bersifat server-side yang ditambahkan kedalam HTML.
3) Hypertext Markup Language (HTML)
Menurut Winarno, dkk (2013 : 1), “HTML adalah bahasa pemograman yang bebas, dan tidak dimiliki oleh siapapun, pengembangan dilakukan banyak orang, banyak pihak diseluruh dunia dan bisa dikatakan sebagai sebuah bahasa yang dikembangkan bersama-sama secara global”. Karenanya hal ini berkonsekuensi bahwa platform web adalah platform yang bebas.
Menurut Sutarman (2012:163), “HTML adalah bahasa standar yg digunakan untuk pembuatan halaman web atau world wide web, dengan hypertext dan informasi lain yang akan ditampilkan pada halaman web”. Dokumen hypertext bisa berisi teks, gambar dan tipe informasi lain seperti data file, audio, video, dan program executeable.
Berdasarkan pendapat para ahli yang di kemukakan di atas dapat di tarik kesimpulan bahwa HTML adalah bahasa yang sangat tepat dipakai untuk menampilkan informasi pada halaman web, karena HTML menampilkan informasi dalam bentuk hypertext dan juga mendukung sekumpulan perintah yang dapat digunakan untuk mengatur tampilanya informasi tersebut. Sesuai dengan namanya, bahasa ini menggunakan tanda mark up untuk menandai perintah.
4) XAMPP
Menurut Nugroho (2013:1), ”XAMPP adalah paket program web lengkap yang dapat anda pakai untuk belajar pemograman web, khususnya php dan mysql, paket ini dapat didowloand secara gratis dan legal”.
Penulis memakai XAMPP sebagai database karena xampp menyediakan aplikasi database mysql dengan interface lebih mudah dalam pengoperasiannya, tool yang disediakan cukup lengkap dan memenuhi kebutuhan perancangan database.
5) J - Query
Menurut Sigit (2011:11) mengemukakan bahwa, “J-Query adalah Library atau kumpulan kode javascript yang siap dipakai”. Keunggulan menggunakan jquery dibandingkan dengan javascript standar, yaitu menyederhanakan kode javascript dengan cara memanggil fungsi-fungsi yang disediakan oleh jquery.
6) MySQL
Menurut Raharjo (2011:21) mengemukakan bahwa,“MySQL merupakan software RDBMS (atau server database) yang mengelola database dengan cepat menampung dalam jumlah sangat besar dan dapat diakses oleh banyak user, dan dapat melakukan suatu proses secara berbarengan”.
Berdasarkan pendapat yang dikemukakan diatas dapat disimpulkan bahwa MySQL merupakan salah satu relational database management system yang banyak digunakan oleh para pengembang aplikasi database, baik untuk aplikasi desktop
maupun aplikasi web, untuk menyimpan, mengatur, dan mengelola data pada aplikasi tersebut.
7) CascadingStyle Sheet (CSS)
Menurut Ardhana (2012:108) mengemukakan bahwa, “Cascading Style Sheet (CSS) merupakansalah satu bahasa pemograman web untuk mengendalikan beberapa komponen dalam sebuah web sehingga akan lebih terstruktur dan seragam”. Sama halnya style dalam aplikasi pengolahan kata seperti Microsotf Word yang dapat mengatur beberapa style, misalnya heading, subbad, bodytext, footer, images, dan style lainnya untuk dapat digunakan bersama-sama dalam beberapa berkas (file). Pada umunya CSS dipakai untuk memformat tampilan halaman web yang dibuat dengan bahasa HTML dan XHTML.
8) Sublime Text 3
Menurut Guilermono (2015:4) dalam bukunya yang berjudul Sublime Text Unofficial Documentation menyatakan bahwa, “Sublime text merupakan text editor serbaguna dan menyenankan untuk melakukan pembuatan kode dan prosa yang mengotomatisasi tugas yang berulang sehingga dapat fokus hal-hal yang penting. Editor ini dapat bekerja pada OS X, Windows, dan Linux”.
c. Basis Data
1) Definisi Basisdata
Menurut Rosa dan Shalahuddin (2013:43) mengemukakan bahwa,“Sistem Basis data adalah sistem terkomputerisasi yang tujuan utamanya 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.
2) Definisi Database Management System (DBMS)
Menurut Rosa dan Shalahuddin (2012:44) menyimpulkan bahwa,“DBMS atau dalam bahasa indonesia sering disebut Sistem Manajemen Basis Data adalah suatu sistem aplikasi yang digunakan untuk menyimpan, mengelola, dan menampilkan data”. Suatu sistem aplikasi disebut DBMS jika memenuhi persyaratan minimal sebagai berikut :
a) Menyediakan fasilitas untuk mengelola akses data b) Mampu menangani integritas data
c) Mampu menangani akses data yang dilakukan secara detail d) Mampu menangani backup data
d. Model Pengembangan Perangkat Lunak
Menurut Shalahuddin dan Rosa (2013:28), ”Model Waterfall adalah model air terjun yang menyediakan pendekatan alur hidup perangkat lunak secara sekuensial atau terurut dimulai dari analisis, desain, pengodean, pengujian, dan tahap pendukung (support)”.
Sumber : Rosa dan Shalahuddin (2013:29)
Gambar II.I Model Waterfall
Berdasarkan Model Waterfall diatas, berikut penjelasannya :
1) Analisis Kebutuhan Perangkat Lunak
Proses pengumpulan kebutuhan dilakukan secara intensif untuk mespesifikasikan kebutuhan perangkat lunak agar dapat dipahami perangkat lunak seperti apa yang dibutuhkan oleh user. Spesifikasi kebutuhan perangkat lunak pada tahap ini perlu untuk didokumentasikan
Sistem/Rekayasa Informasi
2) Desain
Desain perangkat lunak adalah proses multi langkah yang focus pada desain pembuatan program perangkat lunak termasuk struktur data, arsitektur perangkat lunak, representasu antarmuka, dan prosedur pengodean. Tahap ini mentranslasi kebutuhan perangkat lunak dari tahap amalisis kebutuhan ke representasi desain agar dapat diimplementasikan menjadi program pada tahap selanjutnya.Desain perangkat lunak yang dihasilkan pada tahap ini juga perlu didokumentasikan.
3) Pembuatan Kode Program
Desain harus ditranslasikan kedalam program perangkat lunak. Hasil dari tahap ini adalah program computer sesuai dengan desain yang telah dibuat pada tahap desain..
4) Pengujian
Pengujian fokus pada perangkat lunak secara dari segi lojik dan fungsional dan memastikan bahwa semua bagian sudah diuji.Hal ini dilakukan untuk meminimalisir kesalahan (error) dan memastikan keluaran yang dihasilkan sesuai dengan yang diinginkan.
5) Pendukung (Support) atau Pemelihharaan (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 mengurangi proses pengembangan mulai dari analisis spesifikais untuk perubahan perangkat lunak yang sudah ada, tapi tidak untuk membuat perangkat lunak baru.
2.2 Teori Pendukung
Teori pendukung atau landasan teori dalam penyusunan tugas akhir ini sangat diperlukan karena sebagai referensi untuk menunjang atau memperdalam pemahaman terhadap informasi-informasi yang disajikan.
2.2.1 Struktur Navigasi
Menurut Suyanto (2008:87), “Struktur Navigasi adalah struktur atau alur dari suatu program. Struktur navigasi termasuk struktur terpentung dalam pmbuatan suatu multimedia dari gambarnya harus sudah ada pada tahap perencanaan”.
Peta navigasi merupakan rancangan hubungan dan rantai kerja dari beberapa area yang berbeda dan dapat membantu mengorganisasikan seluruh elemen multimedia dengan pemberian perintah dan pesan.Peta navigasi juga memberikan kemudahan dalam menganalisa keinteraktifan seluruh objek dalam multimedia dan bagaimana pengaruh keinteraktifan terhadap pengguna.
Peta navigasi mempunyai ciri khas yang dapat digolongkan menurut kebutuhan akan objek, kemudahan membuat yang berpengaruh terhadap waktu pembuatan suatu multimedia. Beberapa dasar struktur pembuatan multimedia adalah :
a. Struktur Navigasi Linear
Linear merupakan struktur yang hanya mempunyai satu rangkaian cerita yang berurutan.Tampilan yang dapat ditampilkan pada struktur jenis ini adalah satu halaman sesudahnya tidak dapat dua halaman sesudahnya.Pada struktur navigasi ini tidak diperkenankan adanya percabangan.
Sumber :Suyanto (2008: 87)
Gambar II . 2 Struktur Navigasi Linear
b. Struktur Navigasi Non Linear
Merupakan pengembangan dari struktur navigasi linear. Pada struktur ini di perkenankan membuat navigasi bercabang. Percabangan yang dibuat pada struktur non linear ini berbeda dengan percabangan pada hirerarchial, karena pada percabangan non linear ini walaupun terdapat percabangan, tiap-tiap tampilan mempunyai kedudukan yang sama, tidak ada master page dan slave page.
Sumber : Suyanto ( 2008:88)
Gambar II. 3
Struktur Navigasi Non Linear c. Stuktur Navigasi Hireachical
Struktur hirarki (bercabang) merupakan suatu yang mengandalkan percabangan untuk menampilkan data berdasarkan kriteria tertentu.Tampilan pada menu pertama akan disebut sebagai master page (halaman utama kesatu), halaman utama ini akan mempunyai halaman percabangan yang dikatakan slave pag (halaman pendukung). Jika salah satu halaman pendukung dipilih atau diaktifkan, maka tampilan tersebut akan bernama halaman utama kedua (master page), dan seterusnya. Pada struktur navigasi ini tidak diperkenankan adanya tampilan linear.
Sumber : Suyanto ( 2008:89)
Gambar II. 4
Struktur Navigasi Hirearchical
d. Struktur Navigasi Composite
Struktur navigasi campuran (Composite) merupakan gabungan dari ketiga struktur sebelumnya yaitu, linear, non linear, hierarchical. Struktur navigasi ini juga biasa disebut struktur navigasi bebas. Jika suatu tampilan membutuhkan percabangan, maka dapat dibuat percabangan dan bila dalam percabangan terdapat suatu tampilan yang sama kedudukannya maka dapat dibuat struktur linear dalam percabangan tersebut. Struktur navigasi ini banyak digunakan dalam pembuatan website, sebab struktur peta navigasi memberikan keinteraksian yang lebih tinggi. Setiap struktur peta navigasi bergantung pada kebutuhan dan tujuan dari aplikasi multimedia yang hendak dibuat. Semakin kompleks peta navigasi yang digunakan, maka semakin sulit pembuatan aplikasi multimedia dari peta navigasi tersebut.
Sumber :Suyanto(2008:90)
Gambar II . 5
Struktur NavigasiComposite
2.2.2 Enterprise Relations Diagram
a. Definisi Enterprise Relations Diagram (ERD)
Menurut Simarmata (2010:69) mengemukakan bahwa, “ERD adalah alat pemodelan data utama dan akan membantu mengorganisasi data dalam suatu proyek kedalam entitas–entitas dan menentukan hubungan antar entitas”. Proses memungkinkan analis menghasilkan struktur basis data yang baik sehingga data dapat disimpan dan diambil secara efisien.
b. Komponen ERD
Komponen dalam entity relationship diagram adalah sebagai berikut :
1) Entitas (entity) adalah sesuatu yang nyata atau abstrak dimana kita akan menyimpan data. Entitas digambarkan dengan persegi panjang.
2) Atribut adalah ciri umum semua atau sebagian besar instansi pada entitas tertentu. Sebutan lain atribut adalah property, elemen data, dan field. Atribut digambarkan dalam bentuk lingkaran atau elips. Atribut yang menjadi kunci entitas atau key diberi garis bawah.
3) Relasi (relationship) adalah hubungan alamiah yang terjadi antara satu atau lebih entitas. Dalam hal ini digambarkan dengan garis lurus.
Sumber : Simarmata (2010:70)
Gambar II. 6 Contoh Relationship
c. Derajat Relationship
Derajat relationship yang menjelaskan jumlah entity yang berpartisipasi dalam suatu relationship. Dalam derajat relationship terbagi 3 tingkatan yaitu :
1) Unary Degree (Derajat Satu)
adalah satu buah relationship menghubungkan satu buah entity Contoh :
Sumber : Simarmata (2010 : 83a)
Gambar II. 7 Contoh Unary Degree
Manusia menikah dengan manusia, relationship menikah hanya menghubungkan entity manusia.
2) Binary Degree (Derajat Dua)
adalah satu buah relationship yang menghubungkan dua buah entity Contoh :
Sumber : Simarmata (2010 : 83b)
Gambar II .8 Contoh Binary Degree
Pegawai memiliki kendaraan, relationship kendaraan hanya menghubungkan entity pegawai
MANUSIA MENIKAH
PEGAWAI MEMILIK
I
3) Ternary Degree ( Derajat Tiga )
Adalah satu buah relationship menghubungkan tiga buah entity. Contoh :
Sumber : Simarmata (2010 : 83c)
Gambar II. 9 Contoh Ternary Degree
Pegawai Pada Kota Tertentu Mempunyai Suatu Proyek Entity Bekerja Menghubungkan Entity Pegawai, Proyek dan Kota.
d. Cardinality Ratio Constraint
Menunjukkan jumlah maksimum entitas yang dapat berelasi dengan entitas pada himpunan entitas lain.
Jenis-jenis Cardinality: 1) One To One (1:1)
yaitu perbandingan antara entity pertama dengan entity kedua berbanding satu berbanding satu Contoh: PEGAWAI BEKERJA A PROYEK KOTA
1 1
Sumber : Simarmata (2010 : 84a)
Gambar II.10
Contoh Cardinality One To One 2) One To Many (1:M)
yaitu perbandingan antara entity pertama dengan entity kedua berbanding satu berbanding banyak.
Contoh :
1 M
Sumber : Simarmata (2010 : 84b)
Gambar II. 11
Contoh Cardinality One To Many 3) Many To One (M:1)
Yaitu perbandingan antara entity pertama dengan entity kedua berbanding banyak berbanding satu.
PEGAWAI MEMILIKI KENDARAAN
Contoh :
M 1
Sumber : Simarmata (2010 : 84c)
Gambar II. 12
Contoh Cardinality Many To One
4) Many To Many (M:M)
Yaitu perbandingan antara entity pertama dengan entity kedua berbanding banyak .
Contoh:
M M
Sumber : Simarmata (2010 : 85)
Gambar II. 13
Contoh Cardinality Many To Many
e. Logical Record Structure (LRS)
Menurut Frieyadie (2007:13),”Logical Relationship Structure (LRS) merupakan suatu bentuk relational model yang dibuat secara logic (level external)
MAHASISWA DIAJARKAN DOSEN
dan konsep yang dibuat sebelum table dibentuk dari field atau atribut entitas secara fisik (level internal).
LRS merupakan hasil dari pemodelan Entity Relationship (ER) beserta atributnya sehingga bisa terlihat hubungan-hubungan antar entitas.
<Nama Table>
Sumber : Frieyadie (2007:14)
Gambar II.14 Logical Relationship Structure (LRS)
Sebagai contoh pada gambar II.15, yang menunjukan dua buah entitas. Pada entitas MOBIL, sebagai primary key adalah NO_POLISI, sedangkan entitas STNK sebagai primary key adalah NO_STNK. Pada saat bersamaan NO_POLISI menjadi foreign key pada entitas STNK
<Nama Field Kunci Utama> <Nama Field 2> <Nama Field 3> ……… ……….. <Nama Field N> NO_POLISI NO_RANGKA NO_MESIN WARNA ………… …………. NO_STNK NAMA_PEMILIK AlAMAT KODE_POS …………. NO_POLISI MOBIL STNK
Sumber: Frieyadie (2007:14)
Gambar II.15 Entitas Mobil dan STNK
Dalam pembuatan lrs terdapat tiga hal yang dapat mempengaruhi yaitu:
1) Jika tingkat hubungan (cardinality) satu pada satu (one-to-one), maka digabung dengan entitas yang lebih kuat (strong entity), atau digabungkan dengan entitas yang memiliki atribut yang lebih sedikit.
2) Jika tingkat hubungan (cardinality) satu pada banyak (one-to-many), maka hubungan relasi atau digabungkan dengan entitas yang tingkat hubungan banyak.
3) Jika tingkat hubungan (cardinality) banyak pada banyak (many-to-many), maka hubungan relasi tidak akan digabungkan dengan entitas manapun, nelainkan menjadi sebuah LRS.
2.2.3 Pengujian Web
a. Pengujian Kotak Hitam (Black Box Testing)
Menurut Rosa dan Shalahuddin (2013:275), “Black Box Testing adalah menguji perangkat lunak dari segi spesifikasi fungsional tanpa menguji desain dan kode program”.Pengujian dimaksudkan untuk mengetahui apakah fungsi-fungsi, masukan, dan keluaran dari perangkat lunak sesuai dengan spesifikasi yang dibutuhkan.
Pengujian kotak hitam dilakukan dengan membuat kasus uji yang bersifat mencoba semua fungsi dengan memakai perangkat lunak apakah sesuai dengan
spesifikasi yang dibutuhkan. Kasus uji yang dibuat untuk melakukan pengujian kotak hitam harus dibuat dengan kasus benar dan kasus salah, misalkan untuk kasus proses login maka kasus uji yang dibuat adalah:
1) Jika user memasukkan nama pemakai (username) dan kata sandi (password) yang benar.
2) Jika user memasukkan nama pemakai (username) dan kata sandi (password) yang salah, misalnya nama pemakai benar tapi kata sandi salah, atau sebaliknya, atau keduanya salah.
Menurut Simarmata (2010:192) Kelebihan black box testing : a) Dapat memilih subset test secara efektif dan efesien b) Dapat menemukan cacat
c) Memaksimalkan testing investmen
Kelemahan yang akan diketahui melalui black box testing: a) Fungsi yang hilang atau tak benar
b) Error dari antar muka
c) Error dari struktur data atau akses eksternal database d) Error dari kinerja atau tingkah laku
e) Error dari inisialisasi dan terminasi
Pada black box testing terdapat jenis teknik disain tes yang dapat dipilih berdasarkan pada tipe testing yang akan digunakan, diantaranya:
Sumber : Simarmata (2010:192)
Gambar II.16 Black Box Testing
b. Pengujian Kotak Putih (White Box Testing)
Menurut Rosa dan Shalahuddin (2013:276), ”White Box Testing adalah menguji perangkat lunak dari segi desain dan kode program apakah mampu menghasilkan fungsi-fungsi, masukan, dan keluaran yang sesuai dengan spesifikasi kebutuhan.” Pengujian kotak putih dilakukan dengan memeriksa lojik dari kode program. Pembuatan kasus uji bisa mengikuti standar pengujian dari standar pemrograman yang seharusnya.
Black Box Testing Equivalance Class Partitioning Boundary Value Analysis Cause- Effect Graphing Techniques Comparison Testing