bab ii landasan teori - repository bsi
TRANSCRIPT
9
BAB II
LANDASAN TEORI
2.1. Konsep Dasar Website
Pada pembuatan tugas akhir ini penulis menggunakan beberapa landasan teori
pendukung yang dapat digunakan sebagai dasar pembuatan rancangan website.
Landasan ini diharapkan dapat membantu dalam memahami suatu masalah dan
memperkecil kemungkinan terjadinya kesalahan yang dilakukan oleh pengguna.
2.1.1. Website
Menurut Hidayat (2010:2) mengemukakan bahwa:
Web adalah kumpulan halaman-halaman yang digunakan untuk
menampilkan informasi teks, gambar diam atau gerak, animasi, suara, dan
atau 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.
Hubungan antara satu halaman web dengan halaman web yang lainnya
disebut Hyperlink, sedangkan teks yang dijadikan media penghubung
disebut Hypertext.
Hal ini dapat dimungkinkan dengan adanya teknologi World Wide Web
(WWW) fasilitas hypertext guna menampilkan data berupa teks, gambar, animasi,
suara dan multimedia lainnya. Data tersebut dapat saling terhubung pada web
server untuk dapat diakses melalui jaringan internet. Agar data dapat web dapat
dibaca kita harus menggunakan web browser terlebih dahulu seperti Mozilla
Firefox, Internet Explorer, Google Chrome, Opera Mini atau yang lainnya.
10
2.1.2. Internet
Menurut Simarmata (2010:47) mengemukakan bahwa:
Internet adalah kelompok atau kumpulan dari jutaan komputer.
Penggunaan internet memungkinkan kita untuk mendapatkan informasi
dari komputer yang ada di dalam kelompok tersebut dengan asumsi bahwa
pemilik komputer memberikan izin akses. Untuk mendapatkan sebuah
informasi, sekumpulan protokol yang harus digunakan, yaitu sekumpulan
aturan yang menentapkan bagaimana suatu informasi dapat di kirim dan
diterima.
Pada dasarnya website merupakan suatu kumpulan hyperlinkyang menuju
dari alamat satu ke alamat lainnya dengan bahasa Hypertext Markup Language
(HTML). Seiring perkembangannya website tidak lagi berbentuk statis yang
hanya menampilkan informasi teks dan gambar saja, tetapi sudah berbentuk
dinamis, dimana informasi yang ditampilkan bisa diperbaharui secara berkala
tanpa harus membuat halaman baru dengan adanya dukungan dari basis data, juga
bahasa pemrograman berbasis website yang semakin berkembang seperti: Active
Server Pages (ASP), Java Server Pages (JSP), dan lain sebagainya.
2.1.3. Web Browser
Menurut Limantara (2009:1) “Web browser adalah aplikasi perangkat
lunak yang memungkinkan penggunanya untuk berinteraksi dengan text, image,
video, garners, dan informasi lainnya yang berlokasi pada halaman web pada
world wide web (www) atau Local Area Network (LAN) ”
Text dan image pada halaman web dapat berisikan hyperlink ke halaman
web lain pada website yang sama maupun yang berbeda. Dengan web browser
seorang pengguna bisa mengakses informasi yang disediakan pada banyak
website secara cepat dan mudah. Meskipun web browser pada umumnya
11
digunakan untuk mengakses world wide web, web browser juga digunakan untuk
mengakses informasi yang disediakan web browser secara privat atau pada sistem
file.
Contoh dan beberapa web browser diantaranya:
1. Opera
Opera sekarang adalah browser yang penuh internet suite, dengan web, email,
news (usenet dan RSS) dan chat dengan kekayaan fitur untuk pengguna baru
ataupun power user.
2. Firefox
Firefòx telah menjadi web browser alternatif paling sukses setelah berakhirnya
perang browser pertama (antara IE dan netscape navigator). Produk unggulan
mozila foundation ini adalah turunan dan netscape navigator. Firefox didesain
untuk simplicity, security dan extensibility (tersedia ratusan extension).
3. Flock
Flock adalah “social browser” yang dibangun berdasarkan core firefox yang
berintegrasi dengan layanan web untuk bloging, photo sharing, dan bookmark
sharing.
4. K-meleon
Bertahun-tahun sebelum firefox, K-meleon sudah diluncurkan untuk
menciptakan web browser yang ringan untuk windows menggunakan core
mozila. Kekuatan K- meleon adalah kecepatan dan kemampuan untuk
dikustomasi.
12
2.1.4. Web Server
Menurut Simarmata (2010:88) menyatakan bahwa “Web Server adalah
potongan perangkat lunak yang mendukung berbagai protokol web seperti HTTP,
HTTPS dan lain-lain untuk memproses permintaan client”.
Mode operasi dasar web server antara lain adalah menunggu untuk
koneksi dan client web dan untuk setiap perrnintaan, menempatkan koresponden
dokumen pada sistem file dan mengirimkannya ke browser jika muncul
permintaan untuk halaman statis. Setiap pembuatan aplikasi berbasis web akan
membutuhkan web server untuk meletakkan aplikasi tersebut sehingga bisa
diakses rnenggunakan protokol HTTP.
2.1.5. Basis Data (Database)
Menurut Lubis (2016:3) menyatakan bahwa “Basis Data adalah Tempat
berkumpulnya data yang saling berhubungan dalam suatu wadah
(organisasi/perusahaan) bertujuan agar dapat mempermudah dan mempercepat
untuk pemanggilan atau pemanfaatan kembali data tersebut”.
Database berfungsi sebagai untuk menyimpan informasi atau data. Untuk
mengelola database diperlukan software yang sering disebut dengan DBMS
(Database Manajement Sistem). Dengan DBMS pengguna atau user dapat
membuat, mengelola, mengontrol, dan mengakses database dengan mudah,
praktis dan efesien. Database terdiri dari tabel yang didalamnya terdapat field-
field, dan sebuah database bisa terdiri dari beberapa tabel. Dalam pembuatan
database, Anda perhatikan hal-hal berikut:
13
1. Setiap tabel dalam database, harus memiliki field (kolom) yang unik yang
disebut primary key.
2. Tabel dalam database tidak boleh ada redudancy data yaitu mengandung
record ganda. Jika terdapat data yang sama, maka perlu dilihat kembali
kerancagan tabelnya. Pilih tipe data yang tepat, shingga ukuran database
seminimal mungkin.
2.1.6. Hyper Text Transfer Protocol (HTTP)
Menurut Simarmata (2010:52) memberikan pengertian bahwa “Hyper Text
Transfer Protocol (HTTP) adalah protocol komunikasi stateless yang berbasiskan
pada TCP yang awalnya digunakan untuk mengambil kembali file-file HTML dan
server web ketika dirancang pada tahun 1991”. Versi 1.1 (ditetapkan di RFC2616)
telah mengalami peningkatan. Versi ini mengijinkan client dan server
menggunakan banyak headers untuk menyaammpaikan status informasi dan
deskripsi agen pengguna (user-agent) dan bertindak sebagai alat yang bersifat
elementer untuk autentikasi pengguna.
Fungsi dan protokol http adalah sebagai media komunikasi antara browser
dan server. Http disebut juga protokol client atau server. Dengan arti bahwa
browser adalah client dan server web adalah server. Pada http, sebuah server
biasanya menunggu permintaan client. Contoh sederhana permintaan client:
14
Sumber: Simarmata (2010:54)
Gambar II.1.
Permintaan Client
Keterangan:
1. GET adalah metode http yang digunakan untuk mengambil kembali halaman
(retrieve).
2. /index.php adalah file yang diambil kembali.
3. HTTP/1.1 adalah versi dan protokol, yaitu browser yang digunakan.
4. www.goog1e.com adalah host yang digunakan.
2.1.7. Hyper Text Markup Language (HTML)
Menurut Simarmata (2010:52) mengemukakan bahwa “HTML adalah
bahasa markup untuk menyebarkan informasi pada web”.
Ketika merancang HTML, ide ini diambil dari Standart Generalized
Markup Language (SGML). SGML adalah cara yang terstandarisasi dari
pengorganisasian dan informasi yang terstruktur di dalam dokumen atau
sekumpulan dokumen. Walaupun HTML tidak dengan mudah dapat dipahami
kebanyakan orang, ketika diterbitkan penggunaannya menjadi jelas.
GET/ index.php http/l.1
host: www. google. com
15
Sebagai sebuah bahasa markup, HTML membutuhkan cara untuk
memberitahu web browser untuk apa fungsi sebuah text. Apakah text itu ditulis
sebagai sebuah paragraf, list, atau sebagai link. Dalam HTML, tanda ini dikenal
dengan istilah tag.
2.1.8. Hyper Text Preprocessor (PHP)
Menurut Oktavian (2010:31) memberikan pengertian bahwa “Suatu
bahasa pemrograman berbasiskan kode-kode (script) yang digunakan untuk
mengolah suatu data dan mengirimkannya kembali ke web browser menjadi kode
HTML”.
Kode PHP mempunyai cirri-ciri khusus, yaitu:
a. Hanya dapat digunakan menggunakan web server, missal: Apache.
b. Kode PHP diletakkan dan dijalankan di web server.
c. Kode PHP dapat digunakan untuk mengakses database, seperti: MySQL,
PostgreSQL, Oracle, dan lain-lain.
d. Menggunakan software yang bersifat open source.
e. Gratis untuk di-download dan digunakan.
f. Memiliki sifat multiplatform, artinya dapat dijalankan menggunakan sistem
operasi apapun, seperti: Linux, Unix, Windows, dan lain-lain.
2.1.9. Cascading Style Sheet (CSS)
Menurut Kun (2010:1) menjelaskan bahwa “CSS merupakan salah
komponen untuk memperindah website yang anda buat, tetapi hanya sebatas
16
mengganti tampilan luarnya saja dan sama sekali tidak menimbulkan animasi
yang menakjubkan”.
Ada dua jenis CSS yang dapat gunakan yaitu CSS yang bersifat internal
dan eksternal. CSS eksternal lebih mudah digunakan, karena script CSS akan
tersimpan berupa file CSS tersendiri, jadi akan lebih mudah melakukan
pengeditan, karena biasanya dihubungkan dengan link. Jika melakukan perubahan
format, cukup melakukan perubahan pada file CSS, maka halaman yang
terhubung dengan file CSS tersebut akan ikut berubah. Jika menggunakan CSS
bersifat internal pada halaman, maka bila ada perubahan format harus melakukan
banyak pengeditan pada semua file.
2.1.10. My Structured Query Language (MySQL)
Menurut Wahana Komputer (2010:5) “MySQL adalah program database
yang mampu mengirim dan menerima data dengan sangat cepat dan multiuser ”.
Beberapa kelebihan MySQL, antara lain:
1. Banyak ahli berpendapat MySQL merupakan server tercepat.
2. MySQL merupakan sistem manajemen database yang Open Source (kode
sumbernya terbuka), yaitu software ini bersifat free atau bebas digunakan oleh
perseorangan ataupun instansi tanpa harus membeli atau membayar kepada
pembuatnya.
3. MySQL mempunya performa yang tinggi tapi simple.
4. Database MySQL mengerti bahasa SQL (Stuctured Query Language).
17
5. MySQL dapat diakses melalui protokol ODBC (Open Database Connectivity)
buatan Microsoft. Ini menyebabkan MySQL dapat diakses oleh banyak
software.
6. Semua klien dapat mengakses server dalam satu waktu, tanpa harus menunggu
yang lain untuk mengakses database.
7. Database MySQL dapat diakses dari semua tempat di internet dengan hak
akses tertentu.
8. MySQL merupakan database yang mampu menyimpan data berkapasitas
besar sampai berukuran GigaByte.
9. MySQL dapat berjalan di berbagai operating system seperti Linux, Windows,
Solaris, dan lain-lain.
2.1.11. XAMPP
Menurut Wicaksono (2008:7) “XAMPP adalah sebuah software yang
berfungsi untuk menjalankan website berbasis PHP dan menggunakan pengolah
data MySQL di komputer lokal”. XAMPP berperan sebagai server web pada
kornputer Anda. XAMPP juga dapat disebut sebuah CPanel server virtual. yang
dapat membantu Anda melakukan preview sehingga dapat mernodifikasi website
tanpa harus online atau terakses dengan internet.
XAMPP merupakan sebuah software web server apache yang didalamnya
sudah tersedia database server mysql dan support php programming. XAMPP
yaitu software yang mudah digunakan, gratis dan mendukung instalasi di Linux
dan Windows. Keuntungan lainnya adalah hanya menginstal satu kali sudah
tersedia Apache Web Server, MySQL database Server, PHP Support (PHP 4 dan
18
PHP 5) dan beberapa module lainnya. Hanya bedanya kalau yang versi untuk
Windows sudah dalam bentuk instalasi gratis dan yang Linux dalam bentuk file
terkompresi tar.gz Kelebihan lain yang berbeda dari versi untuk Windows adalah
memiliki fitur untuk mengaktitkan sebuah server secara gratis, sedangkan Linux
masih berupa perintah-perintah di dalam console. Oleh karena itu yang Versi
untuk Linux sulit untuk dioperasikan.
2.1.12. Adobe Dreamweaver CS6
Menurut Supono (2016:14) menjelaskan bahwa “Dreamweaver
merupakan perangkat lunak yang digunakan untuk membuat atau meng—edit
halaman web ”.
Dreamweaver sangat cocok untuk pengguna pemula atau pengguna yang
sedang belajar membuat halaman web. Dreamweaver menyediakan fitur-fitur
untuk mempermudah pembuatan halaman web, sehingga tampilan web yang
dibuat nanti akan sama dengan tampilan pada saat proses perancangan halaman
web. Dreamweaver mendukung beberapa bahasa pemrograman, antara lain:
HTML, PHP, CSS, javascript, dan sebagainya.
2.1.13. Adobe Photoshop
Menurut Permana (2008:2) menjelaskan bahwa “Adobe photoshop CS3
adalah merupakan pengembangan dari Adobe Photoshop versi sebelumnya yang
dikosentrasikan agar program aplikasi ini lebih mudah di pakai, lengkap,andal,
fleksibel dan lebih efisien”.
19
Adobe Photoshop CS3 yang untuk selanjutnya disingkat Photoshop CS3
merupakan program aplikasi pengolah image atau gambar bitmap. Image atau
gambar bitmap yang disebut gambar raster, merupakan gambar yang dibentuk dari
grid-grid warna. Grid ini adalah elemen dasar dari sebuah image atau gambar
yang biasa disebut pixel (picture elements) atau piksel.
2.1.14. JavaScript
Menurut Wahana Komputer (2010:1) “JavaSript merupakan bahasa yang
berbentuk kumpulan skrip yang berfungsi untuk memberikan tampilan yang
tampak lebih interaktif pada dokumen web”.
Dengan kata lain, bahasa ini adalah bahasa pemrograman untuk
memberikan kemampuan tambahan ke dalam bahasa pemrograman HTML
(Hyper Text Markup Language) dengan mengijinkan pengeksekusian perintah-
perintah pada sisi client, dan bukan sisi server dokumen web. Pada hakikatnya,
bahasa pemrograman JavaScript berisi skrip yang pemasangannya terselip di
sebuah dokumen HTML. Sehingga bahasa JavaScript ini tidaklah memerlukan
sebuah kompilator atau penerjemah khusus untuk mengeksekusinya. Hal tersebut
juga bergantung pada navigator yang terdapat di setiap browser.
2.1.15. JQuery
Menurut Sigit (2011:1) mengemukakan bahwa “Jquery adalah library atau
kumpulan kode javascrit siap pakai”.
Keunggulan menggunakan jquery dibandingkan dengan javascript standar
yaitu menyederhanakan kode javascript dengan cara memanggil fungsi-fungsi
20
yang disediakan oleh jquery. Javascript sendiri merupakan bahasa scripting yang
bekerja disisi client/browser sehingga website bisa lebih interaktif.
Jquery pertama kali dirilis tahun 2006 oleh John Resig. Jquery menjadi
sangat Populer hingga telah banyak digunakan pada website terrnasuk website
kelas dunia seperti google, amazone, twitter, dan lain-lain.
Kelebihan-kelebihan jQuery antara lain:
1. Jquery kompatibel dengan banyak browser.
2. Jquery mendukung semua versi CSS
3. Ukuran Jquery sangat kecil, sekita 20kb
4. Dokumentasi Jquery yang lengkap
5. Dukungan komunitas terhadap Jquery
6. Tersedianya plugin Jquery yang sangat beragam
2.1.16. Angularjs
Menurut JUD (2017:2) mengemukakan bahwa “AngularJS merupakan
framework javascript berbasis open-source yang dirilis oleh Google pada tahun
2009”
Framework javascript sebenarny banyak. HTML pun terus berkembang
sehingga muncul pertanyaan, mengapa kita perlu mempelajari AngularJS. Untuk
menjawab pertanyaan ini, maka penting untuk mengenal berbagai kelebihan
AngularJS.
21
Berikut ini beberapa hal dan alasan kenapa Anda perlu mempelajari
AngularJS:
1. AngularJS dikembangkan oleh Google
2. Menggunakan template HTML
3. Lengkap
2.2. Peralatan Pendukung (Tools Program)
2.2.1. Struktur Navigasi
Menurut Binanto (2010:268) mengemukakan bahwa:
Struktur Navigasi adalah Setiap rencana akan dibuatkan desainnya dan
kemudian diproduksi menjadi produk jadi yang bersifat sementara. Di
samping itu tahap ini mencakup perencanaan struktur navigasi yang baik
untuk antarmuka penggunanya. Ada 4 struktur dasar yang digunakan
yaitu linier, non linier, hirarki dan komposit.
Struktur Navigasi digunakan sebagai penuntun alur sebuah aplikasi
multimedia atau dapat pula dianalogikan sebagai diagram alur dalam perancangan
bahasa pemrograman. Struktur navigasi berfungsi untuk menggambarkan dengan
jelas hubungan dan rantai kerja seluruh elemen yang akan digunakan dalam
aplikasi, ada empat macam bentuk dasar struktur navigasi, yaitu: Struktur
Navigasi Liniear, Struktur Navigasi Non Linear, Struktur Navigasi Hierarchical
dan Struktur Navigasi Composite.
1. Struktur Navigasi Tersusun atau Terurut (Linear)
Pengguna akan melakukan navigasi secara berurutan, dari frame atau byte
informasi yang satu ke yang lainnya seperti yang terlihat pada gambar .
22
Sumber : Binanto (2010:269)
Gambar II.2.
Struktur Navigasi Terurut (Linear)
2. Struktur Navigasi Tidak Berurut (Non Linier)
Pengguna akan melakukan navigasi dengan bebas melalui isi proyek dengan
tidak terikat dengan penyalur yang sudah ditemukan sebelumnya, seperti yang
terlihat pada gambar.
Sumber : Binanto (2010:270)
Gambar II.3.
Struktur Navigasi Tidak Tersusun (Non Linear)
3. Struktur Navigasi Bercabang (Hierarchi)
Struktur cabang ini disebut juga struktur “linier dengan percabangan” karena
pengguna melakukan navigasi di sepanjang cabang pohon struktur yang
terbentuk oleh logika isi,seperti yang terlihat pada gambar.
23
Sumber : Binanto (2010:269)
Gambar II.4.
Struktur Navigasi Bercabang (Hierarchi)
4. Struktur Navigasi Campuran (Composite)
Pengguna akan melakukan navigasi dengan bebas (secara non-linier), tetapi
terkadang dibatasi presentasi linier film atau informasi penting dan/atau pada
data yang paling terorganisasi secara logis pada suatu hierarki,seperti yang
terlihat pada gambar.
Sumber :Binanto (2010:270)
Gambar II.5.
Struktur Navigasi Campuran (Composite)
24
2.2.2. Entity Relationship Diagram (ERD)
Menurut Simarmata dan Paryudi (2010:67) mengemukakan bahwa “Alat
pemodelan data utama dan akan membantu mengorganisasi data dalam suatu
proyek ke dalam entitas-entitas dan menentukan hubungan antar entitas ”. Simbol-
simbol yang digunakan adalah:
1. Persegi panjang
Berfungsi untuk menyatakan suatu entitas.
2. Elips
Berfungsi untuk menyatakan atribut, jika diberi garis bawah menandakan
bahwa atribut tersebut merupakan atribut.
3. Belah ketupat
Menyatakan jenis relasi.
4. Garis
Penghubung antara relasi dengan entitas dan antara entitas dengan atribut.
Ada beberapa istilah yang harus dipahami sebelum merancang basis data
dengan menggunakan model entity relationship diagram yaitu:
1. Super key
Satu atau lebih atribut yang dapat membedakan setiap bans data dalam tabel
secara unik.
2. Kandidat key (kunci kandidat)
Merupakan kumpulan atribut minimal yang membedakan setiap baris data
dalam tabel secara unik. untuk bisa menjadi kandidat key, atribut harus
memiliki beberapa syarat yaitu:
a. Untuk satu nilal hanya mengidentifkasi satu baris dalam satu relasi (unik)
25
b. Tidak memiliki subset yang juga merupakan kunci relasi
c. Tidak dapat bernilai null.
3. Kunci relasi atau kunci utama (primary key)
Nilai dan kunci relasi harus sebuah bans yang unik didalam sebuah relasi.
relasi terdiri dari satu atau lebih atribut-atribut relasi. Agar bisa menjadi
sebuah primary key sebuah atribut harus memenuhi persyaratan sehagai
kandidat key.
4. Kunci alternative
Kunci yang tidak ada didunia nyata, tetapi diadakan dan dijadikan primary
key. Kunci alternatif dibuat ketika tidak ada satupun atribut dalam sebuah
relasi yang mewakili relasi tersebut. Atau ada yang bisa menjadi kandidat key
tetapi tidak cukup efektif untuk digunakan sebagai primary key.
5. Komposit key
Primary key yang terdiri dan lebih dan I (satu) atribut.
6. Foreign key (FK)
Istilah FK juga banyak digunakan dalam perancangan. Sebuah FK adalah
sekumpulan atribut dalam suatu relasi (misal A) sedemikian sehingga
kumpulan atribut ini bukan kunci relasi A tetapi merupakan kunci dan relasi
lain.
7. Kardinalitas pemetaan
Kardinalitas pemetaan menunjukan jumlah entity yang dihubungkan ke satu
entity lain dengan suatu relationship set Kardinalitas pemetaan meliputi:
26
a. Hubungan Satu ke Satu (One to One 1:1 )
Sebuah entitas pada A berhubungan dengan paling banyak satu entitas
pada B dan sebuah entitas pada B berhubungan dengan paling banyak satu
entitas pada A.
b. Hubungan Satu ke Banyak (One to Many 1:M)
Sebuah entitas pada A berhubungan dengan nol atau lebih entitas pada B.
sebuah entitas pada B dapat dihubungkan dengan paling banyak satu
entitas pada A.
c. Hubungan Banyak ke Satu (Many to One M:1)
Sebuah entitas pada A berhubungan dengan paling banyak satu entitas
pada B. sebuah entitas pada B dapat dihubungkan dengan noll atau lebih
entitas A.
d. Banyak ke Banyak (Many to Many M:M)
Sebuah entitas pada A berhubungan dengan nol atau lebih entitas pada B
dan ssebuah entitas pada B dapat dihubungkan nol atau lebih entitas pada
A.
2.2.3. Logical Relationship Structure (LRS)
Menurut Frieyadie (2007:13) “Logical Record Structure adalah
merupakan hasil dari pemodelan Entity Relational (ER) beserta atributnya
sehingga bisa terlihat hubungan-hubungan antar entitas”.
Dalam pembuatan LRS terdapat tiga hal yang mempengaruhi, yaitu:
1. Jika tingkat hubungan (cardinality) satu pada satu (one-to-one), maka
digabungkan dengan entitas yang lebih kuat (strong entity), atau digabungkan
dengan entitas yang memiliki atribut yang lebih sedikit.
27
2. Jika tingkat hubungan (cardinality) satu pada banyak (one-to-many) maka
hubungan relasi atau digabungkan dengan entitas yang tingkat hubungannya
banyak.
3. Jika tingkat hubungan (cardinality) banyak pada banyak (many-to-many)
maka hubungan relasi tidak akan digabungkan dengan entitas manapun,
menjadi sebuah LRS.
2.2.4. Pengembangan Perangkat Lunak Dengan Model Waterfall
Menurut Rosa dan M. Shalaluddin (2015:28) menjelaskan bahwa “model
SDLC air terjun (waterfall) sering juga disebut model sekuensial linier (sequential
linear) atau alur hidup klasik (classic life cycle)”. Terdapat 5 tahapan dalam
metode ini yaitu: analisis, desain, pembuatan kode program, pengujian, dan
pemeliharaan.
Berikut adalah tahapan dalam mengembangkan perangkat lunak dengan
metode waterfall:
1. Analisis
Proses pengumpulan kebutuhan dilakukan secara intensif untuk
mespesifikasikan kebutuhan perangkat lunak agar dapat dipahami perangkat
lunak seperti apa yang dibutuhkan oleh pengguna atau user. Spesifikasi
kebutuhan perangkat lunak pada tahapan ini perlu untuk didokumentasikan.
2. Desain
Desain perangkat lunak adalah proses multi langkah yang fokus pada desain
pembuatan program perangkat lunak termasuk struktur data, arsitektur
perangkat lunak, representasi antarmuka, dan prosedur pengkodean. Tahap ini
28
mentranslasi kebutuhan perangkat lunak dari tahap analisis kebutuhan ke
representasi desai 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 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 segi lojik dan fungsional dan
memastikan bahwa semua bagian sudah diuji. Hal ini dilakukan untuk
meminimalisir kesalahan (error) dan memastikan keluaran yang dihasilkan
sesuai yang diinginkan.
5. Pemeliharaan (Maintenance)
Tidak menutup kemungkinan sebuah perangkat lunak mengalami perubahan
ketika sudah dikirimkan ke user. Perubahan bisa terjadi karena adanya
kesalahan yang muncul dan tidak terdeteksi saat pengujian atau perangkat
lunak harus beradaptasi dengan lingkungan baru. Tahap pendukung atau
pemeliharaan dapat mengulangi proses pengembangan mulai dari tahap
analisis spesifikasi untuk perubahan perangkat lunak baru.
29
Sumber : Rosa dan Shalahuddin (2013:29)
Gambar II.6.
Model Waterfall
2.2.5. Black Box Testing
Menurut Simarmata (2010:323) mengemukakan bahwa “Black box testing
adalah Pengujian proses terhadap aplikasi/program untuk menemukan segala
kesalahan dan segala kemungkinan yang akan menimbulkan kesalahan sesuai
dengan spesifikasi perangkat lunak yang telah ditentukan sebelum aplikasi
tersebut diserahkan kepada pelanggan”.
Klasifikasi black box testing menurut Simarmata (2010:316) adalah
sebagai berikut:
1. Pengujian Fungsional (Functional Testing)
Pengujian dilakukan dalam bentuk tertulis untuk memeriksa apakah
aplikasi berjalan seperti yang diharapkan. Pengujian fungsional meliputi
seberapa baik sistem melaksanakan fungsinya, termasuk perintah-perintah
pengguna, manipulasi data, pencarian dan proses bisnis, pengguna layar,
dan integrasi.
30
2. Pengujian Tegangan (Stress Testing)
Pengujian tegangan berkaitan dengan kualitas aplikasi didalam
lingkungan.
3. Pengujian Beban (Load Testing)
Pada pengujian beban, aplikasi akan diuji dengan beban berat atau
masukan, seperti yang terjadi pada pengujian situs web, untuk mengetahui
apakah aplikasi/situs gagal atau kinerjanya menurun.
4. Pengujian Khusus (Ad-Hoc Testing)
Jenis pengujian ini dilakukan tanpa penciptaan rencana pengujian atau
kasus pengujian. Salah satu penggunaan terbaik dari pengujian khusus
adalah untuk penemuan. Pengujian ini membaca persyaratan atau
spesifikasi (jika ada) jarang memberikan panduan yang jelas mengenai
bagaimana sebuah program benar-benar bertindak, bahkan dokumentasi
pengguna tidak menangkap “look and feel” dari sebuah program.
5. Pengujian Penyelidikan (Exploratory Testing)
Pengujian penyelidikan mirip dengan pengujian khusus dan dilakukan
untuk mempelajari/mencari aplikasi.
6. Pengujian Usability (Usability Testing)
Pengujian usabilitas adalah proses yang bekerja dengan pengguna akhir
secara langsung maupun tidak langsung untuk menilai bagaimana
pengguna merasakan paket perangkat lunak dan bagaimana mereka
berinteraksi dengannya.
31
7. “Pengujian Asap” (Smoke Testing)
Pengujian ini dilakukan untuk memeriksa apakah aplikasi tersebut sudah
siap untuk pengujian yang lebih besar dan bekerja dengan baik tanpa cela
sampai tingkat yang paling diharapkan.
8. Pengujian Pemulihan (Recovery Testing)
Pada dasarnya dilakukan untuk memeriksa seberapa cepat dan baiknya
aplikasi bisa pulih terhadap semua jenis crash atau kegagalan hardware,
masalah bencana, dan lain-lain.
9. Pengujian Volume (Volume Testing)
Pengujian volume adalah pengujian sebuah sistem (baik perangkat keras
dan perangkat lunak) untuk serangkaian pengujian dengan volume data
yang diproses adalah sebjek dari pengujian.
10. Pengujian Domain (Domain Testing)
Pengujian domain merupakan penjelasan yang paling sering menjelaskan
teknik pengujian.
11. Pengujian Skenario (Scenario Testing)
Pengujian skenario adalah pengujian yang realistis, kredibel dan
memotivasi stakeholder, tantangan untuk program dan mempermudah
penguji untuk melakukan evaluasi.
12. Pengujian Regresi (Regression Testing)
Pengujian regresi adalah gaya pengujian yang berfokus pada pengujian
ulang setelah ada perubahan. Pada pengujian regresi berorientasi risiko.