BAB II
LANDASAN TEORI
2.1 Konsep Dasar Web
Pada bab ini penulis akan menjelaskan teori yang berhubungan dengan perancangan sistem informasi berbasis web, mulai dari pengertian website, bahasa pemograman yang digunakan, basis data, sampai model pengembangan perangkat lunak.
2.1.1 Website
Menurut Yuhefizar (2009:2) menjelaskan bahwa “website adalah keseluruhan halaman-halaman web yang terdapat dalam sebuah domain yang mengandung informasi”.
Yuhefizer (2009:2) juga menjelaskan “Worl Wide Web atau yang sering disebut sebagai web adalah sistem penyebaran informasi melalui internet. Informasi yang dikirim dapat berupa teks, suara (audio), animasi, gambar dan bahkan dalam format video yang dapat diakses melalui sebuah software yang disebut browser”.
Terdapat beberapa hal yang terkait dengan website, yaitu:
1. Internet
Menurut Yuhefizar (2008:2) mengatakan bahwa “ internet adalah rangkaian hubungan jaringan komputer yang dapat diakses secara umum doiseluruh dunia, yang mengirimkan data dalam bentuk paket data berdasarkan standar internet
8
protocol(IP). Lebih dalam lagi internet adalah kumpulan jaringan dari jaringan- jaringan komputer didunia yang terdiri dari jutaan unit-unit kecil seperti jaringan pendidikan , jaringan bisnis, jaringan pemerintah dan lain nya , yang bersama menyediakan layanan informasi seperti online chat, e-mail, transfer file dan saling keterhubungan antara satu halaman web dengan sumber halaman web yang lainnya”.
2. Web Server
Yuniar supardi (2010:2) menyimpulkan bahwa “ web server adalah perangkat lunak yang mengelola (mengatur) permintaan user dari browser dan hasil nya dikembalikan ke browser contoh web server adalah IIS (Internet Information Services) produk microsoft corp”.
3. Web Browser
Menurut Yuniar Supardi (2010:2) mengatakan bahwa “web browser merupakan perangkat lunak untuk menjalankan program atau script web contoh browser adalah Internet Explorer, Opera, Mozilla Firefox dan lainnya”.
4. XAMPP
Menurut Madcoms (2016 : 148) menyatakan bahwa “XAMPP adalah paket kumpulan software yang terdiri dari Apache, MySQL, PhpMyAdmin, PHP, Perl, Filezilla, dan lain-lain”.
Fungsinya XAMPP adalah sebagai server yang berdiri sendiri (localhost), yang terdiri atas Program ini tersedia dalam GNU General Public License dan bebas, merupakan web server yang mudah digunakan yang dapat melayani tampilan halaman web yang dinamis.program Apche HTTP Server, MySQL database, dan penerjemah bahasa yang ditulis dengan bahasa pemrograman PHP dan Perl.
Nama XAMPP merupakan singkatan dari X (empat sistem operasi apapun), Apache, MySQL, PHP dan Perl.
2.1.2 Bahasa Pemograman
Dalam merancang sistem informasi perpustakan berbasis web , penulis menggunakan beberapa program pendukung diantaranya
1. PHP (PHP Hypertext Processor)
Menurut Anhar (2010:3) menyimpulkan bahwa “PHP singkatan dari PHP Hypertext Processor merupakan script yang terintegrasi dengan HTML dan berada pada server (server side HTML embedded scripting )”.
PHP adalah script yang digunakan untuk membuat halaman web yang dinamis. Dinamis berarti halaman yang akan ditampilkan dibuat saat halamn itu diminta oleh client. Mekanisme ini menyebabkan informasi yand diterima oleh client selalu yang ter up to date. Semua script php di eksekusi pada server dimana script itu dijalankan.
2. HTML (Hyper Text Markup Languange)
Anhar (2010:3) menyimpulkan bahwa “ HTML (Hyper Text Markup Languange) merupakan bahasa pemograman web yang memiliki sintaks atau aturan tertentu dalam menuliskan script kode-kode sehingga browser dapat menampilkan informasi dengan membaca kode-kode HTML”.
Dengan kata lain HTML adalah sekumpulan simbol-simbol atau tag-tag yang dituliskan dalam sebuah file yang digunakan untuk menampilkan halaman pada web browser.
3. JavaScript
Menurut Hernita (2010:1) mengatakan bahwa “ javaScript merupakan bahasa yang berbentuk kumpulan script yang berfungsi untuk memberikan tampilan yang tampak lebih interaktif pada dokument web”.
4. Jquery
Menurut kun (2010:1) mengatakan bahwa “ Jquery merupakan salah satu library javascript”.
Dengan jquery kita dapat melakukan banyak hal yang tidak bisa dilakukan oleh HTML ataupun CSS misal nya menampilkan halaman tanpa mereload halaman , memunculkan pop-up ditengah – tengah halaman , menyembunyikan artikel ketika diklik dan lain sebagainya”.
5. CSS
Sulistyawan(2008:33) menjelaskan bahwa “ CSS adalah dokumen yang bediri sendiri dan dapat dimasukan kedalam kode HTML atau sekedar menjadi rujukan oleh HTML dalam pendefinisian style. CSS mengunakan kode-kode yang tersusun untuk menetapkan style pada element HTML atau dapat juga digunakan untuk membuat style baru yang biasa di sebut class”.
6. Dreamweaver
Menurut Hikmah (2015:1-2) mengatakan bahwa “ Adobe dreamweaver adalah salah satu tool untuk mendesain halaman website yang merupakan tool keluaran adobe yang dahulunya merupakan macromedia”.
Adobe Dreamweaver merupakan merupakan salah satu tool yang banyak digunakan pengembang web dikarenakan halaman nya berbasis GUI
(Grafical user interface) sehingga memudahkan pengembang untuk mengembangkan website tidak terpake konsep tekstual.
2.1.3 Basis Data
Menurut kusrini (2007:2) mengatakan bahwa “Basis data adalah kumpulan data yang saling berelasi “.
Aplikasi basis data yang penulis gunakan untuk membangun webite antara lain :
1. Database
Menurut Anhar (2010:45) menjelaskan bahwa “Database adalah sekumpulan tabel-tabel yang berisi data dan merupakan sekumpulan dari field atau kolom.
Struktur file yang menyusun sebuah database adalah record dan field”.
2. MYSQL
Menurut Anhar (2010;45) menjelaskan bahwa “MYSQL adalah salah satu database management system (DbMS) dari sekian banyak DBMS seperti oracle, MS SQL, Postagre SQL, dan lainnya”.
MYSQL berfungsi untuk mengolah database menggunakan bahsa SQL.
MYSQL bersifat open source sehingga kita bisa menggunakan nya secara gratis.
2.1.4 Model Pengembangan Perangkat Lunak
Menurut Sukamto dan M.Shalahuddin (2014:28) model SDLC air terjun (waterfall) sering disebut juga model sekuensial linier (sequential linier) atau alur hidup klasik (classic life cycle). Model air terjun menyediakan pendeketan alur hidup perangkat lunak secara sekuensial atau terurut dimulai dari analisi, desain,
pengodean, pengujian, dan tahap pendukung (support). Berikut adalah gambar model air terjun:
Sumber: Sukamto dan M.shalahuddin (2014:29)
Gambar II.I Gambar Model Pengembangan Perangkat Lunak
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. Spesifikasi kebutuhan perangkat lunak pada tahap ini perlu untuk didokumentasikan.
2. Desain
Desain perangkat lunak adalah proses multi langkah yang fokus pada desain pembuatan program perangkat lunak termasuk struktur data, struktur perangkat lunak, representasi antarmuka, dan prosedur pengodean. Tahap ini mentranslasi kebutuhan perangkat lunak dari tahap analisis kebutuhan ke representasi desain agar dapat diimplementasiakan kedalam bentuk program dalam tahap selanjutnya. Desain perangkap lunak yang dihasilkan pada tahap ini juga perlu didokumentasikan.
3. Pembuatan Kode Program
Desain harus ditranslasikan ke dalam program perangkat lunak. Hasil dari tahap ini adalah program komputer sesuai dengan desain yang telah dibuat pada tahap desain.
4. Pengujian
Pengujian fokus pada perangkat lunak secara dari segi lojik dan fungsional dan memastikan semua bagian sudah diuji . hal ini dilakukan untuk meminimalisir kesalahan (error) dan memastikan keluaran yang dihasilkan sesuai dengan yang diinginkan.
5. Pendukung (support) atau Pemeliharaan (maintenance)
Tidak menutup kemungkinan sebuah perangkat lunak mengalamin perubahan ketika sedang dikirim ke user. Perubahan bisa terjadi karena kesalahan yang muncul dan tidak terdeteksi saat pengujian atau saat perangkat lunak harus beradaptasi pada lingkungan baru. Tahap pendukung atau pemeliharaan dapat mengulangi proses pengembangan mulai dari analisi spesifikasi untuk perubahan perangkat lunak yang sudah ada, tapi tidak untuk membuat perangkat lunak baru.
Dari kenyataan yang terjadi sangat jarang model air terjun dapat dilakukan sesuai alur nya karena sebab berikut :
1. Perubahan spesifikasi perangkat lunak terjadi ditengah alur pengembangan 2. sangat sulit lagi pelanggan untuk mendefinisikan semua spesifikasi diawal alur pembangunan. Pelanggan sering kali butuh contoh (prototype) untuk menjabarkan spesifikasi kebutuhan sistem berjalan.
3. Pelanggan tidak mungkin bersabar untuk mengaakomodasi perubahan yang dilakukan diakhir alur pengembangan
Dengan berbagai kelemahan yang dimiliki oleh air terjun(waterfall) tapi model ini telah menjadi dasar model-model yang lain dalam melakukan perbaikan model perkembangan perangkat lunak.
Model air terjun (waterfall) sangat cocok digunakan kebutuhan pelanggan adalah sangat dipahami dan kemungkinan terjadinya perubahan kebutuhan selama perkembangan perangkat lunak kecil. Hal positif dari model air terjun (waterfall) struktur tahap pengembangan sistem jelas, dokumentasi dihasilkan disetiap tahap pengembangan dan sebuah tahap dijalankan setelah tahap sebelumnya selesai dijalankan (tidak ada tumpang tindih pelaksanaan).
Model waterfall adalah model SDLC yang paling sederhana. Model ini hanya cocok untuk pengembangan perangkat lunak dengan spesifikasi yang tidak berubah-ubah.
2.2 Teori Pendukung
Berikut ini adalah teori pendukung dalam perancangan sisitem informasi perpustakaan berbasis web yaitu:
2.2.1 Struktur Navigasi
Menurut Suyanto (2008:62) “Struktur navigasi dalam situs web melibatkan sistem navigasi situs web secara keseluruhan dan desain interface situs web tersebut, navigasi memudahkan jalan yang mudah ketika menjelajahi situs web”.
Struktur navigasi juga dapat diartikan sebagai struktur alur dari suatu program yang merupakan rancangan hubungan dan rantai kerja dari beberapa area yang berbeda
dan dapat membantu mengorganisasikan seluruh elemen pembuatan website.
Menurut Binanto (2010:269) ada empat macam bentuk dasar struktur navigasi yang biasa digunakan yaitu :
1. Struktur Navigasi Linear
Pengguna akan menggunakan navigasi secara beruntun dari frame atau byte informasi yang satu ke yang lainnya.
Sumber : Bintato (2010:269)
Gambar II.1 Gambar Struktur Navigasi Linear
2. Struktur Navigasi Hirarki
Struktur dasar ini disebut juga dengan struktur linear dengan percabangan karena pengguna melakukan navigasui disetiap cabang pohon struktuk yang terbentuk oleh logika isi .
Sumber : Bintato (2010:269)
Gambar II.2 Gambar Struktur Navigasi Hirarki
3. Struktur Navigasi Nonlinear
Pengguna akan melakukan navigasi dengan bebas melalui isi proyek dengan tidak terikat dengan jalur yang mudah ditentukan sebelum nya
Sumber : Bintato (2010:269)
Gambar II.3 Gambar Struktur Navigasi Nonlinear 4. Struktur Navigasi Komposit
Pengguna akan melakukan navigasi dengan bebas (secara nonlinear) tapi terkadang dibatasi presentasi linear film atau informasi penting dan/atau pada data yang paling terorganisir secara logis pada suatu hirarki.
Sumber : Bintato (2010:269)
Gambar II.4 Gambar Struktur Navigasi Komposit
2.2.2. Pengertian ERD (Entity Relationship Diagram) Menurut Fatansyah (2012:81) menyimpulkan bahwa :
Model Entity Realtionship yang berisi komponen-komponen Himpunan Entitas dan Himpunan Relasi yang masing-masing dilegkapi dengan atribut- atribut yang mempersentasikan seluruh fakta dari ‘dunia nyata’ yang kita tinjau, dapat digambarkan dengan lebih sistematis dengan menggunakan Diagram Entity-Relationship (Diagram E-R).
Notasi-notasi simbolik di dalam Diagram E-R yang dapat kita gunakan adalah :
1. Persegi panjang menyatakan himpunan Entitas.
2. Lingkaran atau Elip, menyatakan Atribut (Atribut yang befungsi sebagai key digarisbawahi).
3. Belah Ketupat, menyatakan Himpunan Relasi.
4. Garis, sebagai penghubung antara Himpunan Relasi dengan Himpunan Entitas dan Himpunan Entitas dengan Atributnya.
5. Kardinalitas Relasi dapat dinyatakan dengan banyaknya garis cabang atau dengan pemakaian angka (1 dan 1 untuk relasi satu-ke-satu, dan N untuk relasai satu-ke-banyak, atau N dan N untuk relasi banyak-ke-banyak).
Pemakaian istilah ‘Model Keterhubungan-Entitas’ dalam bahasa indonesia dapat digunakan sebagai padanan dari istilah asing : Entity Relationship Model (E- R Model). Akan tetapi, istilah Model Entity Relationship telah demikian populer/umum digunakan dalam berbagai pembahasan tentang analisis/perancangan Basis Data. Karena itu, agar tidak menimbulkan kebingungan yang tidak perlu, di dalam pembahasan berikutnya kita gunakan saja istilah asing tersebut.
Pada Model Entity-Relationship, semesta data yang ada di ‘dunia nyata diterjemahkan dengan memanfaatkan sejumlah perangkat konseptual menjadi
sebuah diagram data, yang umum disebut sebagai Diagram Entity-Relationship (Diagram E-R). Sebelum kita membahas lebih jauh tentang bagaimana Diagram E- R tersebut dapat kita gambarkan, maka yang harus lebih dulu diketahui adalah komponen-komponen pembentuk Model Entity-Relationship. Sesuai namanya, ada 2 (dua) komponen utama pembentuk Model Entity-Relationship, yaitu Entitas (Entity) dan Relasi (Relation). Kedua komponen ini dideskripsikan lebih jauh melalui sejumlah Atribut/Properti.
1. Entitas (Entity) dan Himpunan Entitas (Entity Set)
Entitas merupakan individu yang mewakili sesuatu yang nyata (eksistensinya) dan dapat dibedakan dari sesuatu yang lain. Sebuah kursi yang kita duduki, seseorang yang menjadi pegawai di sebuah perusahaan dan sebuah mobil yang melintas di depan kita adalah Entitas. Sekelompok Entitas yang sejenis dan berada dalam lingkup yang sama membentuk sebuah Himpunan Entitas (Entity Set).
2. Atribut (Attributesl Properties)
Setiap Entitas pasti memiliki Atribut yang mendeskripsikan karakteristik (properti) dari Entitas tersebut.
3. Relasi (Relationship) dan Himpunan Relasi (Relationship Sets)
Relasi menunjukan adanya hubungan d antara sejumlah entitas yang berasal dari himpunan entitas yang berbeda.
4. Kardinalitas/Derajat Relasi
Kardinalitas Relasi menunjukan jumlah maksimum entitas yang dapat berelasi dengan entitas yang lain. Kardinalitas Relasi yang terjadi di antara dua himpunan entitas (misalnya A dan B) dapat berupa :
a. Satu ke Satu (One to One),
Yang berarti setiap entitas pada himpunan entitas A berhubungan dengan paling banyak dengan satu entitas pada himpunan entitas B, dan begitu juga sebaliknya setiap entitas pada himpunan entitas B berhubungan dengan paling banyak dengan satu entitas pada himpunan entitas A.
b. Satu ke Banyak (One to Many),
Yang berarti setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B, tetapi tidak sebaliknya, di mana setiap entitas pada himpunan entitas B berhubungan dengan paling banyak dengan satu entitas pada himpunan entitas A.
c. Banyak ke Satu (Many to One),
Yang berarti setiap entitas pada himpunan entitas A berhubungan dengan paling banyak dengan satu entitas pada himpunan entitas B, tetapi tidak sebaliknya, di mana setiap entitas pada himpunan entitas A berhubungan dengan paling banyak satu entitas pada himpunan entitas B.
d. Banyak ke Banyak (Many to Many),
Yang berarti setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B, dan demikian juga sebaliknya, di mana setiap entitas pada himpunan entitas B dapat berhubungan dengan banyak entitas pada himpunan entitas A.
2.2.3. Pengertian LRS (Logical Record Structure)
Menurut Frieyadie (2007:13) “LRS merupakan hasil dari pemodelan Entity Relational Ship (ER) beserta atributnya sehingga bisa terlihat hubungan-hubungan antar entitas”.
Dalam pembuatan LRS terdapat 3 hal yang dapat mempengaruhi (Frieyadie, 2007:13) yaitu :
A. Jika tingkat hubungan (cardinality) satu pada satu (one-to-one), maka di gabungkan dengan entitas yang lebih kuat (strong entity), atau digabungkan dengan entitas yang memiliki atribut yang lebih sedikit.
B. Jika tingkat hubungan (cardinality) satu pada banyak (one-to-many), maka hubungan relasi atau digabungkan dengan entitas yang tingkat hubungannya banyak.
C. Jika tingkat hubungan (cardinality) banyak pada banyak (many-to-many), maka hubungan relasi tidak akan digabungkan dengan entitas manapun, melainkan menjadi sebuah LRS.
2.2.4. Pengujian Web Black-Box Testing
Menurut Sukamto dan M. Shalahuddin (2014:275) menyatakan “Black-Box Testing adalah perangkat lunak dari segi spesifikasi fungsional tanpa menguji desain dan kode program. Penguji 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 :
a. Jika user memasukan nama pemakai (username) dan kata sandi (password) yang benar.
b. Jika user memasukan nama pemakai (username) dan kata sandi (password) yang salah, misalnya nama pemakai benar tapi kata sandi salah, atau sebaliknya, atau keduanya salah.