8
BAB II
LANDASAN TEORI
2.1. Konsep Dasar Web A. Website
Menurut simarmata (2010:47) mengemukakan bahwa:
Web adalah sebuah sistem dengan informasi yang disajikan dalam bentuk
teks, gambar, suara, dan lain-lain yang tersimpan dalam sebuah server web
internet yang disajikan dalam bentuk hyperteks. Informasi web dalam
bentuk teks umumnya adalah Hypertext Markup Language (HTML). Informasi lainnya yang disajikan dalam bentuk grafis (dalam format GIF, JPG, PNG, dll), suara (dalam format AU, WAV, dll), dan objek multimedia lainnya (seperti MIDI, Shockwave, Quicktime, Movie, 3D
World).
Pada dasarnya website merupakan suatu kumpulan hyperlink yang menuju dari alamat satu ke alamat lainnya dengan bahasa Hyperteks Markup Language (HTML). Seiring perkembangannya website tidak lagi berbentuk statis yang hanya menampilkan informasi teks dan gambar saja, tetapi sudah menjadi 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
B. Internet
Menurut Simarmata (2010a:47) menyimpulkan 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 menetapkan bagaimana suatu informasi dapat dikirim dan diterima.
Internet pertama kali ditemui kan oleh Advanced Reaserch Project Agency
(ARPA) Department of Defence (DOD) di Amerika Serikat. Pada dasarnya
internet digunakan untuk menghubungkan komputer. Versi yang pertama disebut
ARPANET. Pada tahun 1972, ARPA berubah menjadi DARPA dengan tetap mempromosikan proyek ARPANET. Pada tahun 1937-1974, peneliti merancang sebuah Transmission Control Protocol/Internet Protokol (TCP/IP). Pada awalnya,
TCP/IP dimaksudkan untuk menyediakan dukungan untuk kebutuhan sebagai
berikut:
1. Interoperabilitas antar sistem heterogen.
2. Komunikasi end-to-end berbagai jaringan yang berbeda, dan
3. Operasi otomatis dan sempurna didalam menghadapi terjadinya kegagalan hubungan data.
Pada saat itu, aplikasi yang digunakan masih sangat sederhana dengan yang digunakan saat ini. Aplikasi yang digunakan masih sangat sederhana dengan yang digunakan saat ini. Aplikasi yang paling banyak digunakan adalah Telnet untuk login remote dan File Transfer Protocol (FTP) untuk perpindahan file dan
Karena pertimbangan keamanan pada awal 1980 ARPANET di pecah menjadi dua bagian, yaitu MILNET dan ARPANET. Pada pertengahan tahun 1980 National Science Foundation (NSF) di Washington, D.C. Mendistribusikan teknologi Internet kepada beberapa universitas (Barkeley, MIT, Stanford, dan UCLA). Setelah itu Internet pun mulai menyebar di dunia. Pada tahun 1990, DOD memutuskan untuk membubarkan ARPANET dan menggantikannya dengan pendukung (backbone) NSFNET, bekerja sama dengan agen jaringan lain. Hal inilah yang kemudian menjadi prinsip pendukung jaringan internet, Simarmata (2010a,50).
C. Web Browser
Menurut Irawan (2011:3) web browser adalah “aplikasi yang digunakan pada jaringan internet untuk mengakses informasi, berbagi pakai, berkomunikasi, dan sebagainya”. Penjelajah web yang popular adalah Microsoft Internet Explorer,
Mozilla Firefox, Safari, UC Browser, Opera dan Google Chrome. Web Browser
atau browser merupakan aplikasi penting saat ini guna berselancar di internet, baik ketika ketika menggunakan komputer maupun telepon genggam. Tentu saja semua memiliki kelemahan dan kelebihan masing-masing. Banyak hal yang menjadi pertimbangan dalam memilih browser, antara lain: kenyamanan, fitur yang ditawarkan, terlebih lagi performa komputer atau telepon genggam yang digunakan, semakin optimal dalam menggunakan sumber daya (resource) maka performa (performance) akan semakin baik.
D. Web Server
Menurut supardi (2010) menyatakan “Web Server” merupakan perangkat lunak yang mengelola (mengatur) permintaan user dari browser dan hasilnya dikembalikan kembali ke browser”. Contoh web server adalah Internet
Information Services (IIS) produk Microsoft Corp, Apache untuk server HTTP, Apache Tomcat untuk server Java Server Page (JSP). Web Server inilah yang
berperan penting dalam mengeksekusi perintah yang dikirimkan melalui skrip-skrip yang dibuat untuk disampaikan kembali pada pengguna melalui sebuah protokol.
E. Basis Data (Database)
Menurut Kursini (2007:2) membatasi basis data sebagai “sekumpulan data yang saling berelasi. Dia sendiri merupakan fakta mengenai obyek, orang, dan lain-lain”, sedangkan menurut Yuhefizar (2008:2) memberikan pengertian bahwa “Secara konseptual database diartikan sebagai sebuah koleksi atau kumpulan data yang saling berhubungan (relation)”. Database disusun menurut aturan tertentu secara logis, sehingga menghasilkan informasi. Sebuah informasi yang berdiri sendiri tidaklah dikatakan database. Dari pengertian di atas dapat disimpulkan bahwa basis data adalah kumpulan data yang saling berhubungan satu sama lain dan membentuk satu kesatuan yang utuh.
F. X-Apache, MySQL, PHP and PERL (XAMPP)
Menurut Wicaksono (2008:7) “XAMPP adalah sebuah software yang berfungsi untuk menjalankan website berbasis PHP dan menggunakan pengolah data MySQL dikomputer lokal”. XAMPP juga dapat disebut sebuah CPanel virtual
server. XAMPP adalah singkatan dari X-Apache, MySQL, PHP, and PERL, di
mana “X” merupakan inisial dari 4 sistem operasi yang di dukung oleh aplikasi ini. Keempat sistem operasi tersebut antara lain: Windows, Linux, McOS, dan
Solaris. Di dalam XAMPP terdapat beberapa package yang disertakan, antara lain: Apache sebagai server Hypertext Transfer Protocol (HTTP), MySQL sebagai Database Management System (DBMS), Partical Extraction and Report Language (PERL) sebagai bahasa pemrograman pendukung, Filezilla, Mercury,
dan Apache Tomcat sebagai server Java Server Page (JSP).
Sumber : Wicaksono (2008:7)
Gambar II.1
G. My Structure Query Language (MySQL)
Menurut Saputra dan Feni Agustin (2012:8) menyatakan bahwa “My
Structure Query Language (MySQL) bukan termasuk bahasa pemrograman, My Structure Query Language (MySQL) merupakan salah satu database populer dan
mendunia”.
Menurut Raharjo (2011:22) “My Structure Query Language (MySQL) merupakan software server yang dapat mengelola database dengan cepat dan dapat menampung data dalam jumlah yang sangat besar”.
Menurut Anhar (2010:21) mengemukakan bahwa:
My Structure Query Language (MySQL) adalah sebuah perangkat lunak
sistem basis data SQL Database Management System atau DBMS dari sekian banyak DBMS, seperti Oracle, MS SQL, Postagre SQL dan lain-lain. MySQL merupakan DBMS yang multi thread, mult user yang bersifat gratis di bawah lisensi GNU General Public Licence (GPL).
My Structure Query Language (MySQL) merupakan Database Management System (DBMS) dengan server, sehingga My Structure Query Language (MySQL) dapat diakses oleh banyak pengguna dan dapat melakukan
suatu proses secara bersamaan (multi thread). Selain mendukung bahasa query standard, My Structure Query Language (MySQL) juga dapat menjalankan prosedur atau perintah dengan stored procedure, serta trigger.
H. Cascading Style Sheet (CSS)
Menurut Saputra dan Feni Agustin (2012:5) mengemukakan “CSS atau yang memiliki kepanjangan Cascading Style Sheet, merupakan suatu bahasa pemrograman website yang digunakan untuk mengendalikan dan membangun berbagai komponen dalam website sehingga tampilan website akan lebih rapi, terstruktur, dan seragam”, sedangkan menurut Yuhefizar (2008:165) memberi batasan Cascading Style Sheet (CSS) adalah “Mekanisme sederhana untuk memberikan style (seperti font, warna, jarak, spasi, dan lain-lain) kepada dokumen
website yang ditulis dalam Hyper Text Markup Language (HTML) atau Extended Markup Language (XML)”. Cascading Style Sheet (CSS) digunakan dalam
pembuatan halaman website sebagai pelengkap guna mempercantik tampilan.
Cascading Style Sheet (CSS) adalah menjadi bahasa standard yang digunakan baik
oleh web designer maupun web programmer dalam hal mengatur tampilan keluaran (layout) dari halaman web agar terlihat lebih menarik, sebab tampilan adalah hal yang pertama dan utama dalam pembuatan web itu sendiri. Saat ini
Cascading Style Sheet (CSS) dikembangkan oleh World Wide Web Consortium
(W3C) dan telah mencapai versi ketiga dalam pengembangannya. Permasalahan yang seringkali dihadapi oleh pembuat website dalam menggunakan Cascading
Style Sheet (CSS) adalah kompatibilitas antar web browser, hal disebabkan setiap web browser terkadang menerapkan standardisasi berbeda satu sama lain sehingga layout yang diinginkan tidak sesuai.
Sumber : Yuhefizar (2008:165)
Gambar II.2
Cascading Style Sheet (CSS)
I. JavaScript
Menurut Hernita (2010:1) memberikan batasan bahwa “JavaScript merupakan bahasa yang berbentuk 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 Hyper Text Markup Language (HTML) dengan mengizinkan pengeksekusian perintah-perintah pada sisi client, bukan sisi server dokumen website.
JavaScript diperkenalkan pertama kali oleh Netscape pada tahun 1995.
Live Script dan berfungsi sebagai bahasa sederhana untuk browser Netscape Navigator 2, kemudian melalui kerjasama antara Netscape dan Sun, Netscape
memberikan nama JavaScript kepada bahasa tersebut pada tanggal 4 Desember 1995. JavaScript sendiri merupakan client side script, dimana skripnya akan terlebih dahulu diunduh pada komputer client, kemudian dieksekusi. Kelemahannya adalah jika browser menonaktifkan layanan JavaScript, maka skrip tidak dapat dieksekusi.
Gambar II.3 JavaScript
J. JQuery
Menurut Sigit Wicaksono (2011:1) menerangkan bahwa “JQuery adalah
library atau kumpulan kode JavaScript siap pakai”, Sedangkan menurut Saputra
dan Feni Agustin (2012:7) menyatakan bahwa “JQuery itu merupakan salah satu teknik atau kumpulan library JavaScript yang sangat terkenal dengan animasinya. Dengan sedikit sentuhan, animasi keren akan dengan mudah kita ciptakan”.
JQuery pertama kali dibuat oleh John Resig pada tahun 2005, dan pertama
kali dirilis pada tanggal 14 Januari 2006. JQuery pasti erat hubungannya dengan
Asynchronous JavaScript and XMLHTTP (AJAX). AJAX adalah suatu teknik
pemrograman dimana dalam membuat aplikasi website lebih responsive layaknya aplikasi desktop. Asynchronous JavaScript and XMLHTTP (AJAX) merupakan salah satu tanda lahirnya pemrograman website generasi baru, atau lebih dikenal dengan sebutan web 2.0.
K. Hyper Text Markup Languange (HTML)
Menurut Sibero (2011:19), “Hyper Text Markup Languange (HTML) adalah bahasa yang digunakan pada dokumen website sebagai bahasa untuk pertukaran dokumen website”.
Menurut Kustiyahningsing (2011:13), “HTML kependekan Hyper Text
Markup Languange. Dokumen HTML adalah text file murni yang dapat dibuat
dengan editor teks sembarang. Dokumen ini dikenal sebagai web page. File Hyper
Text Markup Languange (HTML) ini berisi instruksi-instruksi yang kemudian
diterjemahkan oleh browser yang ada di komputer client (user) sehingga isi informasi dapat ditampilkan secara visual di komputer pengguna”.
Hyper Text Markup Languange (HTML) merupakan standard web page
untuk membuat website static. Pada dasarnya Hyper Text Markup Languange (HTML) dapat berdiri sendiri tanpa dukungan bahasa pemrograman lain, namun, akan hanya dapat menampilkan informasi di website tanpa dapat memproses apapun sehingga menjadi statis, untuk itulah HTML harus dikombinasikan dengan bahasa pemrograman lain seperti JavaScript, Hypertext Prepocessor (PHP), Java
Server Page (JSP), atau Active Server Page (ASP) agar menjadi dinamis.
Gambar II.4
L. Hypertext Prepocessor (PHP)
Menurut situs resmi Hypertext Prepocessor (PHP) di php.net menerangkan “PHP (recursive acronym for PHP: Hypertext Preprocessor) is a
widely-used open source general-purpose scripting language that is especially suited for web development and can be embedded into HTML.” (PHP Official Website, http://php.net/manual/en/intro-whatis.php, 2015). Dalam bahasa Indonesia dapat diartikan Hypertext Prepocessor (PHP) merupakan singkatan dari
Hypertext Preprocessor, sebuah aplikasi open source yang banyak digunakan
khususnya untuk pembuatan web dan dapat ditanamkan dalam Hyper Text
Markup Language (HTML).
Menurut Anhar (2010:3) memberikan pengertian web server-side yang bersifat open source”. perbedaan Hypertext Prepocessor (PHP) dan JavaScript adalah dari sisi eksekusi kode program, dimana Hypertext Prepocessor (PHP) dijalankan pada server, dalam artian semua kode yang ditulis akan dikirimkan terlebih dahulu ke server untuk diproses kemudian hasilnya dibuat dalam format
Hyper Text Markup Language (HTML) dan dikirim kembali ke komputer client,
sedangkan, JavaScript menjalankan semua kode program dengan terlebih dahulu mengunduh script pada server ke komputer client kemudian menjalankannya.
Gambar II.5
Hypertext Prepocessor (PHP)
M. Adobe Dreamweaver CS5
Menurut Sigit (2010:1) mengemukakan bahwa:
“Macromedia Dreamweaver CS5 adalah sebuah Hyper Text Markup Language (HTML) editor profesional untuk mendesain web secara visual
dan mengelola situs atau halaman web. Saat ini terdapat software dari kelompok Adobe yang belakangan banyak digunakan untuk mendesain suatu web. Versi terbaru dari Adobe Dreamweaver CS5 memiliki beberapa kemampuan bukan hanya sebagai software untuk desain web saja, tetapi juga menyunting kode serta pembuatan aplikasi web diantaranya: JSP,
PHP, ASP, XML, and Coldfusion”.
Adobe Dreamweaver awalnya bernama Macromedia Dreamweaver,
namun, sejak Macromedia diakui oleh Adobe kemudian berganti nama menjadi
Adobe Dreamwever. Adobe Dreamweaver atau sering disingkat Dreamweaver
merupakan sebuah editor yang populer dikalangan web designer maupun web programmer karena kemudahan yang diberikan. Fitur baru yang semakin handal untuk versi terbaru ini dimunculkan, diantaranya adalah Integrated Content
Hinting, dan Site-Specific Code Hinting. Semua fitur baru tersebut semakin
memantapkan pengguna Adobe Dreamweaver CS5 untuk semakin Mengeksplorasi dan mengeksploitasi ide kreasi pengolahan website.
Sumber : Sigir, Christianus. 2010
Gambar II.6 Dreamweaver CS5
N. Adobe Photoshop
Menurut Santoso (2008:3) menyatakan bahwa “Photoshop adalah software yang digunakan untuk memodifikasi gambar atau foto secara profesional baik meliputi modifikasi objek yang sederhana maupun yang sulit sekalipun”.
Photoshop menjadi salah satu perangkat lunak yang populer untuk
memanipulasi gambar saat ini, selain itu, aplikasi ini juga dapat digunakan untuk membuat desain halaman website. Dengan fitur-fitur yang memadai aplikasi ini sangat cocok digunakan oleh profesional maupun amatir untuk mengolah foto atau gambar.
Sumber : Santoso, 2008
Gambar II.7 Adobe Photoshop CS3
2.2. Teori Pendukung A. Struktur Navigasi
Menurut Simarmata (2010a:309) menyatakan bahwa “Struktur Navigasi adalah alur dari suatu program yang merupakan rancangan hubungan dan rantai kerja dari beberapa area yang berbeda, juga dapat membantu mengorganisasikan seluruh elemen pembuatan website dengan memberikan perintah atau pesan”.
Ada empat macam bentuk dasar struktur navigasi, yaitu: Struktur Navigasi
Linear, Struktur Navigasi Non Linear, Struktur Navigasi Hirarki, dan Struktur
Navigasi Composite
1. Struktur Navigasi Satu Arah (Linear)
Struktur navigasi linear merupakan struktur yang mempunyai satu rangkaian cerita berurutan. Struktur ini menampilkan satu demi satu tampilan layer secara berurutan menurut aturannya
Sumber: Mahendra (2009:1)
Gambar II.8 Struktur Navigasi Linear
2. Struktur Navigas Tidak Terurut (Non Linear)
Struktur navigasi non linear (tidak terurut) merupakan pengembangan dari struktur navigasi linear, hanya saja pada struktur ini diperkenalkan untuk membuat percabangan. Percabangan pada struktur non liniear berbeda dengan percabangan pada struktur hierarchy, pada struktur ini kedudukan semua page sama, sehingga tidak dikenal adanya master atau slave page
Sumber: Mahendra (2009:2)
Gambar II.9
3. Struktur Navigasi Bercabang (Hirarki)
Struktur navigasi hirarki sering disebut struktur navigasi bercabang, merupakan suatu struktur yang mengandalkan percabangan menampilkan data atau gambar pada layer dengan kriteria tertentu. Tampilan pada menu utama disebut master page atau halaman utama satu, halaman tersebut mempunyai halaman percabangan yang disebut slave page atau halaman pendukung dan jika dipilih akan menjadi halaman kedua, begitu seterusnya.
Sumber: Mahendra (2009:3)
Gambar II.10 Struktur Navigasi Hirarki
4. Struktur Navigas Campuran (Composite)
Struktur navigasi Composite (Campuran) merupakan gabungan dari struktur sebelumnya dan disebut juga struktur navigasi bebas, maksudnya adalah jika suatu tampilan membutuhkan percabangan maka dibuat percabangan. Struktur ini paling banyak digunakan dalam pembuatan aplikasi multimedia.
Sumber: Mahendra (2009:4)
Gambar II.11
Struktur Navigasi Composite
B. Entity Relationship Diagram (ERD)
Menurut Fathansyah (2012:81) menerangkan “Model-Entity Relationship yang berisi komponen-komponen Himpunan Entitas dan Himpunan Relasi yang masing-masing yang dilengkapi dengan atribut-atribut yang merepresentasikan seluruh fakta dari “dunia nyata” yang kita tinjau”.
1. Notasi Simbolik pada Diagram E-R a. Persegi Panjang
Berfungsi untuk menyatakan himpunan entitas, berikut ini adalah simbol entitas:
Sumber : Fathansyah (2012:82)
Gambar II.12 Simbol Entitas
b. Lingkaran atau Elips
Berfungsi untuk menyatakan atribut. Atribut yang berfungsi sebagai key atau kunci yang digaris bawahi, simbol atribut adalah sebagai berikut:
Sumber : Fathansyah (2012:82)
Gambar II.13 Simbol Atribut
c. Belah Ketupat
Menyatakan himpunan relasi, berikut ini adalah simbol himpunan relasi:
Sumber : Fathansyah (2012:82)
Gambar II.14 Simbol Himpunan Relasi
d. Garis
Sebagai penghubung antara Himpunan Relasi dengan Himpunan Entitas dan Himpunan Entitas dengan Atributnya, simpbol penghubung adalah sebagai berikut :
Sumber : Fathansyah (2012:82)
Gambar II.15 Simbol Penghubung
2. Kardinalitas atau Derajat Relasi
Menurut Fathansyah (2007:77) adalah “Menunjukan jumlah maksimum entitas yang dapat berelasi dengan entitas pada himpunan entitas yang lain”. Kardinalitas relasi dibagi menjadi beberapa bagian yaitu :
a. Satu ke Satu (One to One) 1:1
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) 1:M
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) M:1
Setiap entitas pada himpunan entitas A berhubungan dengan paling banyak dengan satu entitas pada himpunan entitas B, tetapi tidak sebaliknya, dimana setiap entitas pada himpunan entitas A berhubungan dengan paling banyak satu entitas pada himpunan entitas B.
d. Banyak ke Banyak (Many to Many) N:M
Setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B, dan demikian juga sebaliknya, di mana setiap pada himpunan entitas B dapat berhubungan dengan banyak entitas pada himpunan entitas A.
C. Logical Record Structure (LRS)
Menurut Shelly dan Harry J.Rosenblatt dalam Iskandar dan A. Haris Rangkuti (2008:126) mengemukakan bahwa:
A logical record is a set of field values that describes a single person, place, thing or event. For example, a logical customer record contains spesific filed values for a single customer, including the customer number, name, address, telephone number, credit limit, and so on. Application programs see a logical record as a group of related fields, regard less of ho or where the data is stored physically.
Dapat diartikan bahwa logical record adalah satu set dari field yang berisi deskripsi dari seseorang, benda, tempat, atau kejadian. Sebagai contoh, sebuah
logical record pelanggan berisi spesifikasi isi field untuk seorang pelanggan,
termasuk nomor pelanggan, nama, alamat nomor telepon, batas kredit dan lainnya. Program aplikasi melihat logical record sebagai kesatuan dari field yang saling berelasi, tanpa memperhatikan bagaimana atau dimana data disimpan secara fisik.
Logical Record Stucture menurut Iskandar dan A. Haris Rangkuti
(2008:126) menerangkan bahwa “Logical Record Structure terdiri dari link-link diantaranya tipe record. Link ini menunjukan arah dari satu tipe record lainnya”.
D. Pengembangan Perangkat Lunak Dengan Model Waterfall
Menurut Sukamto dan M. Shalaluddin (2013: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 pemliharaan.
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 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 (Maintenanance)
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.
Sistem/Rekayasa Informasi
Analisa Analisa Analisa Analisa
Sumber : Sukamto dan M. Shalahuddin (2013:29) Gambar II.16 Model Waterfall
Kemunculan model air terjun adalah untuk membantu mengatasi kerumitan yang terjadi dari proyek-proyek pengembangan perangkat lunak, sebuah model air terjun untuk memperinci apa yang seharusnya perangkat lunak lakukan (mengumpulkan dan menentukan kebutuhan sistem) sebelum sistem dikembangkan. Model ini memungkinkan pemecahan misi pengembangan yang rumit menjadi beberapa langkah logis dengan beberapa langkah yang ada akhirnya akan menjadi produk akhir yang siap pakai. (Simarmata, 2010:54).
E. Black Box Testing
Menurut Rizky (2011:264) menerangkan “black box testing adalah tipe
testing yang memperlakukan perangkat lunak yang tidak diketahui kinerja
internalnya”. Sehingga para tester memandang perangkat lunak seperti layaknya sebuah “kotak hitam” yang tidak penting dilihat isinya, tapi cukup dikenai proses
testing di bagian luar. 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 intergrasi. 2. Pengujian Tegangan (Stress Testing)
3. Pengujian Beban (Load Testing)
Pada pengujian beban, aplikasi akan diuji dengan beban berat atau masukan, seperti yang terjadi pada pengujian situ 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.
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 celah 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 subjek dari pengujian.
10. Pengujian Domain (Domain TestingI)
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.
13. Penerimaan Pengguna (User Acceptance)
Pada jenis pengujian ini, perangkat lunak akan diserahkan kepada pengguna untuk mengetahui apakah perangkat lunak memenuhi harapan pengguna dan bekerja seperti yang diharapkan.
14. Pengujian Alfa (Alpha Testing)
Pada jenis pengujian ini, pengguna akan diundang ke pusat pengembangan. Pengguna akan menggunakan aplikasi dan pengembangan mencatat setiap masukan atau tindakan yang dilakukan oleh pengguna.
15. Pengujian Beta (Beta Testing)
Pada jenis pengujian ini, perangkat lunak didistribusikan sebagai sebuah versi beta dengan pengguna yang menguji aplikasi disitu mereka. Pengecualian/cacat yang terjadi akan dilaporkan kepada pengembang.