BAB 2. LANDASAN TEORI 2.1. Aplikasi Web Aplikasi merupakan sekumpulan program komputer yang dibuat untuk menolong manusia dalam melakukan tugas tertentu. Dengan kata lain, aplikasi bisa disebut juga dengan sebuah software yang berfungsi untuk melakukan berbagai bentuk pekerjaan atau tugas-tugas tertentu seperti penerapan, penggunaan, dan penambahan data (Anisyah 2000). Sedangkan aplikasi web adalah suatu aplikasi yang sejak awal dirancang untuk dieksekusi di dalam lingkungan berbasis web. Artinya segala aspek-aspek hipermedia dalam kaitan-kaitannya dengan hiperteks dan multimedia dikombinasikan dengan logika aplikasi tradisional dan harus diperhitungkan di seluruh siklus hidup aplikasi, yang membuatnya berbeda dengan aplikasi konvensional (Simarmata 2010). 2.2. Bahasa Pemrograman PHP PHP (PHP Hypertext Processing) merupakan bahasa pemrograman berbasis web yang memiliki kemampuan untuk memproses data secara dinamis (Riyanto 2012). PHP juga merupakan salah satu jenis dari server-side scripting yang dirancang untuk membangun situs web dinamis dan sudah digunakan secara luas oleh para developer dalam membuat aplikasi berbasis web. Seperti dalam survei W3Techs, 82,2% dari semua sistus web menggunakan server-side programming yang dikembangkan melalui PHP (Sahu 2015). Dalam pembangunan aplikasi ini, bersamaan dengan bahasa pemrograman HTML yang telah dibuat sebelumnya, skrip PHP ditanamkan yang selanjutnya akan dieksekusi setiap kali halaman dimuat atau dikunjungi. Skrip PHP yang telah dieksekusi akan menampilkan keluaran berupa halaman HTML yang dituju atau bagian dari proses selanjutnya. 2.3. Bahasa Pemrograman HTML HTML (Hyper Text Markup Language) adalah format hypertext yang dipakai di sebuah web. HTML merupakan sebuah standar yang didefiniskan oleh W3C (World Wide Web Consortium), yaitu badan yang mengontrol internet (Martina 2002). Standar terbaru yang ditetapkan oleh W3C adalah HTML versi 5. 5
Standar HTML versi 5 menyempurnakan elemen-elemen lama yang terdapat pada standar sebelumnya, menambahkan fitur-fitur baru untuk mendukung pembuatan aplikasi web yang lebih kompleks (Mavrody 2012). 2.4. Cascading Style Sheet (CSS) Cascading Style Sheet (CSS) memiliki arti gaya menata halaman bertingkat, yang berarti satu elemen yang telah diformat dan memiliki dan telah diformat, maka anak dari elemen tersebut otomatis mengikuti format induknya (Sibero 2013). 2.5. JavaScript JavaScript adalah gaya bahasa skrip yaitu kumpulan instruksi yang digunakan untuk mengendalikan beberapa bagian dari sistem operasi. Bentuk bahasa skrip dari javascript mengambil dari penulisan pemrograman C dan Java, yang terdiri dari variabel, fungsi, dan lainnya. Seperti bahasa skrip yang berjalan pada web browser atau sisi klien, javscript tidak memiliki fungsi untuk menjalankan perintah pada server atau sisi server. Dengan keterbatasan itu para pengembang javascript kemudian menambahkan satu mekanisme agar javascript dapat berinteraksi dengan server. Mekanisme tersebut adalah Asynchronous Javascript and XML (AJAX) (Sibero 2013). 2.6. My Structure Query Language (MySQL) MySQL merupakan sebuah perangkat lunak sistem manajemen basis data SQL atau lebih dikenal dengan DBMS (Database Management System). MySQL adalah RDBMS (Relational Database Management System) yang didistribusikan secara gratis di bahwa lisensi GPL (General Public License). Dimana setiap orang bebas untuk menggunakan MySQL, namun tidak diperbolehkan menjadikannya sebagai produk turunan yang bersifat komersial. MySQL merupakan salah satu konsep utama dalam database yaitu SQL. SQL merupakan sebuah konsep dalam pengoperasian database, terutama untuk pemilihan atau penyeleksian dan pemasukan data, yang memungkinkan pemrosesan data dikerjakan dengan mudah dan otomatis (Huda 2010). 6
2.7. Algoritma First In First Out (FIFO) Algorima FIFO adalah algoritma yang paling sederhana. Algoritma ini membuat penjadwalan pada task-task berdasarkan urutan task tersebut masuk ke dalam antrian. Task yang pertama masuk pada antrian akan di proses terlebih dahulu. Tidak ada konsep prioritas karena semua task memiliki kesempatan yang sama untuk diproses. Task diurutkan pada sebuah antrian melingkar, dimana task yang baru masuk akan diletakkan di bagian paling belakang antrian. Jika tidak ada antrian, maka processor akan berada pada mode sleep secara otomatis (V.Borges 2012). 2.8. UML (Unified Modeling Language) Unified Modeling Language adalah sebuah bahasa yang telah menjadi standar dalam industri untuk visualisasi, merancang, dan mendokumentasikan sistem perankat lunak. UML menawarkan sebuah standar untuk merancang model suatu sistem (Yasin 2012). UML juga memiliki beberapa diagram, diantaranya:. 2.8.1 Use Case Diagram Use Case Diagram merupakan pemodelan untuk menggambarkan kelakukan (behavior) sistem yang akan dibuat. Use case diagram mendeskripsikan sebuah interaksi antara satu atau lebih aktor dengan sistem yang akan dibuat. Terdapat beberapa simbol yang menggambarkan use case diagram, yaitu use case, aktor, dan relasi (Sugiarti 2013). 7
2.8.2 Activity Diagram Activity Diagram menggambarkan workflow (aliran kerja) atau aktifitas dari sebuah sistem atau proses bisnis. Yang perlu diperhatikan adalah bahwa activity diagram menggambarkan aktivitas sistem bukan apa yang dilakukan aktor, jadi aktivitas yang dapat dilakukan oleh sistem. Activity diagram mendukung prilaku paralel (Sugiarti 2013). 2.8.3 Sequence Diagram Sequence Diagram menggambarkan perilaku objek pada use case dengan mendeskripsikan waktu hidup objek dan message yang dikirimkan dan diterima objek. Sequence diagram menggambarkan urutan even dan waktu dari suatu pesan yang terjadi antar objek dalam sebuah use case. Banyaknya sequence diagram yang harus digambar adalah sebanyak pendefinisian use case yang memiliki proses sendiri atau yang penting semua use case yang telah didefinisikan interaksi jalannya pesan sudah dicakup pada sequence diagram sehingga semakin banyak use case yang didefinisikan maka sequence diagram yang harus dibuat juga semakin banyak (Sugiarti 2013). 2.8.4 Class Diagram Class diagram menggambarkan struktur sistem dari segi pendefinisian kelas-kelas yang akan dibuat untuk membangun sistem. Kelas 8
memiliki apa yang disebut dengan atribut dan metode atau operasi. Class diagram mendeskripsikan jenis-jenis objek dalam sistem dan berbagai hubungan statis yang terdapat di antara mereka. Class diagram juga menunjukkan properti dan operasi sebuah kelas dan batasan-batasan yang terdapat dalam hubungan-hubungan objek tertentu 2.9. Metodologi Penelitian 2.9.1 Jenis Pendekatan Dalam penelitian ini pendekatan yang dilakukan adalah pendekatan kualitatif. Artinya data yang dikumpulkan bukan berupa angka-angka, melainkan data tersebut didapatkan dari naskah wawancara, catatan lapangan, dokumen pribadi, catatan, memo, dan dokumen resmi lainnya. Sehingga yang menjadi tujuan dari penelitian kualitatif adalah ingin menggambarkan realita di balik fenomena secara mendalam, rinci, dan tuntas. Oleh karena itu penggunaan pendekatan kualitatif dalam menyelesaikan penelitian ini adalah dengan mencocokkan antara realita dengan teori yang berlaku dengan metode deskriptif (Moleong 2004). Penelitian kualitatif terbagi atas tujuh jenis, yaitu penelitian fenomenologi, penelitian grounded, penelitian etnografi, penelitian historis, penelitian kasus, inquiry filosofis (inkuiry fundasional, inkuiri filosofis, analisis etik), dan metodologi teori kritik sosial (Danim 2002). 9
2.9.2 Pengumpulan Data Pengumpulan data adalah prosedur yang sistematis dan standar untuk memperoleh data yang diperlukan (Nazir 2009). a) Observasi Obserbasi atau pengamatan langsung adalah cara pengambilan data dengan mata tanpa pertolongan alat standar lain untuk keperluan tersebut (Nazir 2009). b) Wawancara Wawancara adalah proses memperoleh keterangan tujuan penelitian dengan cara tanya-jawab, sambil bertatap muka antara pewawancara dengan responden dengan menggunakan alat tulis yang dinamakan interview guide (Moleong 2004). c) Studi Pustaka Di dalam studi pustaka peneliti mengidentifikasi secara sistematis, penemuan, analisis dokumen-dokumen yang memuat informasi berkaitan dengan masalah penelitian (Kadir 2009). 2.10. Pengujian Black Box Pengujian Black Box berfokus pada persyaratan fungsional perangkat lunak. Dengan demikian, pengujian black-box memungkinkan perekayasa perangkat lunak mendapatkan serangkaian kondisi input yang sepenuhnya menggunakan semua persyaratan fungsional untuk suatu program. Pengujian black-box bukan alternatif dari teknik white-box, tetapi merupakan pendekatan komplementer yang kemungkinan besar mampu mengungkap kesalahan dari pada metode white-box (Khan 2013). Black-box itu sendiri dapat menemukan beberapa kesalahan dalam kategori seperti berikut : 1. Fungsi-fungsi yang tidak benar atau hilang. 2. Kesalahan interface. 3. Kesalahan dalam struktur data atau akses basis data eksternal. 4. Inisialisasi dari kesalahan transmisi. 5. Validitas fungsional. 10