Anda di halaman 1dari 19

2.

LANDASAN TEORI

2.1. Teori Probabilitas


Probabilitas adalah suatu nilai yang digunakan untuk mengukur tingkat
terjadinya suatu kejadian yang acak. Kata probabilitas itu sendiri sering disebut
dengan peluang atau kemungkinan. Probabilitas secara umum merupakan peluang
bahwa sesuatu akan terjadi (Susanti, 2014).
Konsep probabilitas memiliki peranan yang penting dalam kehidupan
sehari-hari, mulai dari bidang ilmiah, bidang pemerintahan, bidang usaha atau
industri, sampai pada masalah-masalah kecil seperti masuk kantor atau tidak
karena awan tebal yang kemungkinan akan hujan deras dan banjir.
Dalam mempelajari probabilitas, ada tiga kata kunci yang harus diketahui
yaitu eksperimen, hasil (outcome) dan kejadian atau peristiwa (event). Sebagai
contoh, sebuah eksperimen dilakukan dengan menanyakan kepada 100 orang
pembaca, apakah mereka akan mengambil mata kuliah statistik atau kalkulus.
Dari eksperimen ini akan terdapat beberapa kemungkinan hasil. Contohnya,
kemungkinan hasil pertama ialah sebanyak 58 orang akan mengambil mata kuliah
apapun. Kemungkinan hasil lain adalah bahwa 75 orang mengambil mata kuliah
kalkulus dan sisanya mengambil mata kuliah statistik. Contoh lain dari
eksperimen adalah pelemparan sebuah dadu. Hasil (outcome) dari pelemparan
sebuah dadu tersebut kemungkian akan keluar biji satu atau biji dua atau biji tiga
dan seterusnya. Kumpulan dari beberapa hasil tersebut dikenal sebagai kejadian
(event).
Probabilitas biasanya dinyatakan dengan bilangan desimal (seperti 0,50,
0,20 atau 0,89) atau bilangan pecahan seperti 5/100, 20/100, 75/100. Nilai dari
probabilitas berkisar antara 0 sampai dengan 1. Jika semakin dekat nilai
probabilitas ke nilai 0, maka semakin kecil juga kemungkinan suatu kejadian akan
terjadi. Jika semakin dekat nilai probabilitas ke nilai 1, maka semakin besar
peluang suatu kejadian akan terjadi.

6
Universitas Kristen Petra
Terdapat dua prosedur penting untuk menentukan probabilitas dari suatu
kejadian (Spiegel, Schiller, & Srinivasan, 2004).
1. Metode Klasik
Jika suatu kejadian dapat terjadi dalam h cara yang berbeda dari total n cara
yang mungkin, maka probabilitas dari kejadian tersebut adalah h/n.
Contoh: Probabilitas munculnya kepala ketika sebuah koin dilemparkan sekali.
Koin mempunyai dua kemungkinan sama besar, yaitu kepala dan ekor (dengan
asumsi koin ideal, koin tidak menggelinding atau berdiri tegak). Maka
probabilitas dari munculnya kepala adalah satu cara dari dua cara tersebut
adalah ½.
2. Metode Frekuensi
Jika setelah suatu eksperimen diulang n kali, dimana n sangat besar, terlihat
bahwa suatu kejadian terjadi sebanyak h kali, maka probabilitas dari kejadian
tersebut adalah h/n. Ini juga disebut sebagai probabilitas empiris dari kejadian
tersebut.
Contoh: Jika kita melempar sebuah koin sebanyak 1000 kali dan kepala
muncul sebanyak 532 kali, maka probabilitas kemunculan kepala adalah
532/1000 = 0,532.
Baik metode klasik maupun metode frekuensi, keduanya memiliki
kelemahan besar, yang pertama karena kata-kata “kemungkinan yang sama besar”
dan yang kedua kata-kata “yang sangat besar” memiliki arti yang tidak jelas.
Karena kesulitan-kesulitan ini, para ahli matematika terpaksa menggunakan
pendekatan aksiomatik dalam menghitung probabilitas.

2.1.1. Distribusi Probabilitas Binomial


Distribusi probabilitas Binomial adalah distribusi probabilitas diskret yang
sering terjadi. Salah satu ciri distribusi binomial adalah hanya memiliki dua hasil
yang mungkin terjadi dalam sebuah percobaan dari satu eksperimen. Sebagai
contoh, pernyataan dari pertanyaan benar/salah hanya dapat berupa “benar” atau
“salah”. Hasil-hasilnya tidak terikat satu sama lain, yang artinya jawaban untuk

7
Universitas Kristen Petra
sebuah pernyataan benar/salah tidak mungkin sekaligus “benar” dan “salah”. Ciri-
ciri (Lind, Marchal, & Wathen, 2007):
1. Variabel acak merupakan hasil dari perhitungannya. Artinya, kita menghitung
jumlah kejadian sukses dari sejumlah percobaan. Misal, kita melempar
sekeping koin sebanyak lima kali dan menghitung jumlah kepala yang muncul.
2. Probabilitas dari suatu kejadian untuk sukses tetap sama meskipun
percobaannya diulang beberapa kali. Misal, Probabilitas sukses dari percobaan
menebak pertanyaan benar/salah yang pertama adalah setengah. Probabilitas
sukses dari percobaan menebak pertanyaan benar/salah yang kedua adalah
setengah, dan seterusnya.
3. Setiap percobaan saling bebas dari percobaan yang lain. Saling bebas berarti
tidak ada pola pada percobaan-percobaan itu. Hasil dari sebuah percobaan
tidak mempengaruhi hasil dari percobaan yang lain.
Untuk membuat suatu probabilitas binomial, kita menggunakan (1) jumlah
percobaan dan (2) probabilitas sukses pada setiap percobaan. Probabilitas
distribusi Binomial dihitung dengan rumus:
𝑃(𝑥) = 𝑛𝐶𝑥 𝜋 𝑥 (1 − 𝜋)𝑛−𝑥 (2.1)
C = suatu kombinasi
n = jumlah percobaan
x = variabel acak yang menyatakan jumlah sukses
π = probabilitas sukses untuk setiap percobaan
Kita menggunakan huruf Yunani π (pi) untuk menunjukkan sebuah
parameter dari populasi Binomial. Jangan menyamakan pi disini dengan konstanta
Matematika π = 3,1416.
Apabila n pada distribusi Binomial mendekati tak terhingga atau jumlah
yang sangat besar, maka distribusi Binomial tidak dapat dihitung lagi
menggunakan kombinasi, melainkan harus menggunakan distribusi Poisson
dengan konstanta e (2,71828) yang merupakan bilangan natural.

8
Universitas Kristen Petra
2.1.2. Distribusi Probabilitas Poisson
Distribusi probabilitas Poisson menjelaskan berapa kali sebuah kejadian
terjadi selama interval tertentu. Interval tersebut dapat berupa waktu, jarak, luas,
atau volume. Distribusi probabilitas Poisson memiliki tiga ciri-ciri (Lind,
Marchal, & Wathen, 2007):
1. Variabel acaknya adalah berapa banyak sebuah kejadian terjadi selama interval
yang ditentukan.
2. Probabilitas kejadian tersebut proporsional dengan ukuran interval.
3. Tidak ada pengulangan interval dan interval-interval lainnya saling bebas.
Distribusi Poisson dapat dijelaskan secara matematis dengan rumus:
μ𝑥 𝑒 −𝜇
𝑃(𝑥) = , 𝑥 = 0,1,2, … (2.2)
𝑥!

e = konstanta, yaitu 2,71828 (basis dari sistem logaritmis Napier)


μ = nilai rata-rata dari kejadian (sukses) dalam suatu interval
x = jumlah kejadian (sukses)
P(x) = probabilitas untuk sebuah nilai x tertentu
Nilai rata-rata sukses, μ, dapat dihitung dengan n adalah jumlah total percobaan
dan π probabilitas sukses. Rata-rata suatu distribusi Poisson:
μ=nπ (2.3)
Nilai variansi dari Poisson juga sama dengan nilai rata-ratanya. Jika
sebagai contoh, probabilitas selembar cek yang diuangkan oleh sebuah bank akan
dikembalikan adalah 0,0003, dan 10.000 cek diuangkan, rata-rata dan variansi
untuk jumlah cek yang tidak dapat diuangkan adalah 3, dihitung dari μ = n π =
10.000(0,0003) = 3,0.
Jumlah percobaan untuk sebuah distribusi binomial adalah tertentu
tertentu. Sebagai contoh, untuk sebuah tes pilihan ganda yang memiliki empat
pertanyaan, hanya akan ada nol, satu, dua, tiga atau empat kejadian sukses
(jawaban yang benar). Tetapi variabel acak, x, untuk sebuah distribusi Poisson
dapat mengambil nilai yang tak hingga, yaitu 0, 1, 2, 3, 4, 5, ... Namun,
probabilitasnya menjadi sangat kecil setelah beberapa kejadian (sukses) pertama.

9
Universitas Kristen Petra
2.2. Teori Antrian (Queueing Theory)
Dalam kehidupan sehari-hari, antrian, queueing atau waiting line, sangat
sering dijumpai. Mengantri kadang memang harus dilakukan bilamana sedang
menunggu giliran, misalnya untuk membeli karcis bioskop, membayar tol,
mengambil atau menyetor uang pada bank, dan lainnya. Antrian dapat juga terjadi
pada barang, misalnya antrian bahan mentah yang akan diproses untuk dijadikan
suatu produk tertentu, komoditi ekspor yang akan dimuat ke kapal laut, ataupun
data yang akan diolah di pusat komputer, dan lain sebagainya.
Teori antrian dikemukakan dan dikembangkan oleh AK. Erlang, seorang
insinyur Denmark, pada tahun 1910. Disiplin antrian tampak pada pelanggan
(entah barang ataupun orang) akan dilayani berdasarkan yang lebih dahulu datang.
Pelanggan dapat datang dalam jarak waktu kedatangan yang sama atau dapat pula
secara random, dengan jarak waktu kedatangan yang tidak sama. Keadaan yang
kedua ini lazim terjadi dan banyak dijumpai.
Rata-rata waktu menunggu sangat tergantung pada rata-rata kecepatan
pelayanan. Rata-rata kedatangan merupakan jumlah kedatangan pelanggan ke
tempat pelayanan per satuan waktu, misalnya dalam menit, hari, minggu, bulan,
dan seterusnya.
Rata-rata pelayanan merupakan jumlah pelayanan yang dapat diberikan
dalam waktu tertentu. Lamanya waktu pelayanan dapat bersifat acak ataupun
seragam. Umumnya, waktu pelayanan dalam dunia usaha dinyatakan dalam
bentuk seragam. Satuan penerima pelayanan sering juga disebut customer atau
pelanggan. Karena pelanggan tidak datang pada waktu yang sama, demikian juga
dengan waktu pelayanannya, maka kemudian digunakan teori probabilitas untuk
memperkirakan kapan pelanggan berikutnya akan datang.
Proses antrian merupakan suatu proses yang berhubungan dengan
kedatangan pelanggan pada suatu fasilitas pelayanan, menunggu dalam baris
antrian jika belum dapat pelayanan, dilayani, dan akhirnya meninggalkan fasilitas
tersebut sesudah dilayani.
Sistem antrian adalah suatu himpunan pelanggan, pelayan, dan suatu
aturan yang mengatur pelayanan kepada pelanggan. Sedangkan keadaan sistem

10
Universitas Kristen Petra
menunjuk pada jumlah pelanggan yang berada dalam suatu fasilitas pelayanan,
termasuk dalam antriannya. Salah satu populasi adalah jumlah pelanggan yang
datang pada fasilitas pelayanan. Besarnya populasi merupakan jumlah pelanggan
yang memerlukan pelayanan (Kakiay, 2004).
Sistem antrian memiliki beberapa komponen seperti berikut:
1. Populasi masukan (input population)
Berapa banyak pelanggan potensial yang dapat memasuki sistem antrian,
dibagi menjadi dua, yaitu:
- Populasi input terbatas, yaitu jumlah kedatangan pelanggan potensial
terbatas.
- Populasi input tak terbatas, yaitu jumlah kedatangan pelanggan potensial
tak terbatas.
2. Bentuk kedatangan
Bentuk kedatangan para pelanggan biasanya diperhitungkan melalui waktu
antarkedatangan, yaitu waktu antara kedatangan dua pelanggan yang
berurutan pada suatu fasilitas pelayanan. Bentuk ini dapat bergantung pada
jumlah pelanggan yang berada dalam sistem ataupun tidak bergantung pada
keadaan sistem tersebut. Bila bentuk kedatangan ini tidak disebut secara
khusus, maka dianggap bahwa pelanggan tiba satu per satu (constant arrival
distribution). Asumsinya ialah kedatangan pelanggan mengikuti suatu proses
dengan distribusi probabilitas tertentu. Distribusi probabilitas yang paling
sering digunakan adalah distribusi Poisson, dimana kedatangan bersifat
bebas, tidak terpengaruh oleh kedatangan sebelum ataupun sesudahnya.
Asumsi distribusi Poisson menunjukkan bahwa kedatangan pelanggan
sifatnya acak (arrival pattern random) dan mempunyai rata-rata kedatangan
sebesar lambda (λ). Dengan demikian, terdapat dua pola kedatangan (arrival
pattern) yaitu : (1) menggambarkan tingkat kedatangan per unit waktu, atau
(2) menggambarkan jumlah kedatangan dalam periode waktu tertentu secara
berturut-turut dalam waktu yang berbeda.
3. Bentuk pelayanan

11
Universitas Kristen Petra
Bentuk pelayanan ditentukan oleh waktu pelayanan, yaitu waktu yang
dibutuhkan untuk melayani pelanggan pada fasilitas pelayanan. Besaran ini
dapat bergantung pada jumlah pelanggan yang telah berada di dalam fasilitas
pelayanan ataupun tidak bergantung pada keadaan tersebut.
Pada suatu fasilitas pelayanan, pelanggan akan masuk dalam suatu tempat
pelayanan dan menerima pelayanan secara tuntas oleh server (fasilitas
pelayanan). Bila tidak disebutkan secara khusus pada bentuk pelayanan ini,
maka dianggap bahwa satu pelayan dapat melayani secara tuntas satu
pelanggan. Bentuk pelayanan dapat konstan dari waktu ke waktu. Rata-rata
pelayanan (mean serving rate) diberi simbol µ (mu) merupakan jumlah
pelanggan yang dapat dilayani dalam satuan waktu, sedangkan waktu rata-
rata yang dipergunakan untuk melayani setiap pelanggan diberi simbol 1/µ
unit (satuan). Jadi, 1/µ adalah waktu rata-rata yang dibutuhkan untuk suatu
pelayanan.
4. Fasilitas pelayanan
Fasilitas pelayanan berkaitan erat dengan baris antrian yang akan dibentuk.
Desain fasilitas pelayanan ini dapat dibagi dalam tiga bentuk, yaitu:
b. Bentuk seri, dalam satu garis lurus ataupun garis melingkar.
c. Bentuk paralel, dalam beberapa garis lurus antara satu dengan yang lain
paralel.
d. Bentuk network station, yang dapat didesain secara seri dengan pelayanan
lebih dari satu pada setiap stasiun. Bentuk ini dapat juga dilakukan secara
paralel dengan stasiun yang berbeda-beda.
Fasilitas pelayanan dikelompokkan berdasarkan jumlah yang tersedia, yaitu:
a. Fasilitas pelayanan tunggal (single-channel/server), hanya satu fasilitas
pelayanan.
b. Fasilitas pelayanan majemuk (multiple-channel/server), terdapat beberapa
fasilitas pelayanan.
5. Distribusi pelayanan
Distribusi pelayanan dapat ditetapkan berdasarkan salah satu dari dua cara
berikut:

12
Universitas Kristen Petra
b. Berapa banyak pelanggan yang dapat dilayani per satuan waktu, atau
c. Berapa lama pelanggan dapat dilayani.
Proses pelayanan pada umumnya menggunakan distribusi peluang tertentu,
seperti distribusi eksponensial negatif ataupun menggunakan parameter
distribusi Poisson.
6. Disiplin antrian
Disiplin antrian adalah aturan dimana para pelanggan dilayani atau disiplin
pelayanan (service discipline) yang memuat urutan (order) para pelanggan
menerima layanan. Aturan pelayanan menurut urutan kedatangan ini dapat
didasarkan pada:
a. FIFO (First In First Out) atau FCFS (First Come First Served), dimana
pelanggan yang akan dilayani terlebih dahulu adalah pelanggan yang
datang lebih dahulu. Contohnya pada antrian di loket penjualan karcis
kereta api.
b. LIFO (Last In First Out) atau LCFS (Last Come First Served), dimana
pelanggan yang terakhir datang adalah pelanggan yang dilayani
pertama/lebih dahulu. Contohnya pada sistem bongkar muat barang dalam
truk, dimana barang yang terakhir masuk justru akan keluar terlebih
dahulu.
c. SIRO (Service In Random Order), dimana pelayanan dilakukan secara
acak. Sering juga dikenal dengan RSS (Random Selection for Service).
Contohnya pada arisan, dimana pelayanan dilakukan berdasarkan undian
(random).
d. Pelayanan berdasarkan prioritas, dimana pelayanan didasarkan pada
prioritas khusus. Misalnya, dalam suatu pesta, tamu-tamu yang
dikategorikan VIP akan dilayani lebih dahulu.
7. Kapasitas sistem pelayanan
Kapasitas sistem pelayanan adalah jumlah maksimum pelanggan, mencakup
yang sedang dilayani dan yang berada dalam antrian, yang dapat ditampung
oleh fasilitas pelayanan pada saat yang sama. Sebuah sistem yang tidak
membatasi jumlah pelanggan di dalam fasilitas pelayanannya dikatakan

13
Universitas Kristen Petra
memiliki kapasitas tak terhingga, sedangkan suatu sistem yang membatasi
jumlah pelanggan yang ada di dalam fasilitas pelayanannya dikatakan
memiliki kapasitas yang terbatas.
8. Karakteristik sistem lainnya
Dalam praktek sistem antrian mungkin pelanggan tidak akan memasuki
sistem antrian jika mengetahui sudah banyak pelanggan yang menunggu, atau
dengan kata lain mungkin pelanggan meninggalkan antrian dan tidak
kembali. Ada juga pelanggan yang berpindah-pindah dari satu antrian ke
antrian lainnya, karena mengetahui ada barisan lain yang lebih pendek.
Keterangan variabel (Hartanto, 2005):
n = Jumlah pelanggan dalam sistem
Pn = Probabilitas kepastian n pelanggan dalam sistem
λ = Jumlah rata-rata pelanggan yang datang per satuan waktu
μ = Jumlah rata-rata pelanggan yang dilayani per satuan waktu
ρ = Tingkat intensitas (kegunaan) pelayanan
Po = Probabiltas tidak ada pelanggan dalam sistem
P = Tingkat intensitas fasilitas pelanggan
L = Jumlah rata-rata pelanggan yang diharapkan dalam sistem
Lq = Jumlah pelanggan yang diharapkan menunggu dalam antrian
W = Waktu yang diharapkan oleh pelanggan selama dalam sistem
Wq = Waktu yang diharapkan pelanggan selama menunggu dalam antrian
1/μ = Waktu rata-rata pelayanan
1/λ = Waktu rata-rata antar kedatangan
s = Jumlah fasilitas pelayanan

2.2.1. Single Channel Model (M/M/1)

Gambar 2.1. Sistem Antrian Single Channel


Sumber: Hartanto (2005)

14
Universitas Kristen Petra
Salah satu model paling sederhana adalah model saluran tunggal (single-
channel model) yang ditulis dengan notasi “sistem M/M/1” seperti terlihat pada
Gambar 2.1. Komponen dari sistem ini adalah (Hartanto, 2005) :
1. Populasi input tak terbatas, yaitu jumlah kedatangan pelanggan potensial tak
terbatas.
2. Distribusi kedatangan pelanggan potensial mengikuti distribusi Poisson. Rata-
rata kedatangan pelanggan per satuan waktu adalah variabel random suatu
distribusi probabilitas Poisson. Dalam notasi (M/M/1), tanda M pertama
menunjukkan rata-rata kedatangan yang mengikuti distribusi probabilitas
Poisson. Sedangkan arti M kedua adalah tingkat pelayanan yang mengikuti
distribusi probabilitas Poisson. Angka satu menunjukkan jumlah fasilitas
pelayanan dalam sistem atau satu saluran (one channel).
3. Disiplin pelayanan mengikuti pedoman FCFS.
4. Fasilitas pelayanan terdiri dari saluran tunggal.
5. Distribusi pelayanan mengikuti distribusi Poisson. Diasumsikan bahwa lambda
lebih kecil dari mu (λ < μ) yaitu rata-rata jumlah kedatangan pelanggan per
satuan waktu lebih kecil dari rata-rata jumlah pelanggan yang dapat dilayani
per satuan waktu dalam sistem.
6. Kapasitas sistem diasumsikan tak terbatas.
7. Tidak ada penolakan maupun pengingkaran.
Persamaan yang digunakan dalam sistem (M/M/1) adalah sebagai berikut :
λ
ρ=μ (2.4)

Pn = ρn (1 − ρ) (2.5)
ρ λ
L = 1−ρ = μ−λ (2.6)
λ2 ρ2
Lq = μ(μ−λ) = 1−ρ (2.7)
1
W = μ−λ (2.8)
λ
Wq = μ(μ−λ) (2.9)

15
Universitas Kristen Petra
Dalam setiap sistem antrian distribusi Poisson, akan selalu terjadi hubungan yang
berkait antara L, Lq, W dan Wq. Hubungan tersebut dapat dinyatakan dalam
persamaan berikut (Hartanto, 2005):
L=λW (2.10)
Lq = λ Wq (2.11)
1
W = Wq + μ (2.12)

2.2.2. Multiple Channel Model (M/M/s)


Perbedaan dengan single channel model terletak pada jumlah pelayanan.
Fasilitas pelayanan yang dimiliki model (M/M/s) lebih dari satu. Huruf (s) yang
terdapat pada (M/M/s) menyatakan jumlah fasilitas pelayanan (Hartanto, 2005).

Gambar 2.2. Sistem Antrian Multiple Channel


Sumber: Hartanto (2005)
Gambar 2.2 menunjukkan struktur umum dari model antrian yang
memiliki dua komponen utama yaitu: (1) Garis tunggu atau sering disebut antrian
(queue), dan (2) Fasilitas pelayanan (service facility). Pelanggan atau konsumen
menunggu untuk mendapatkan jasa pelayanan. Setiap pelanggan menunggu
giliran untuk memasuki fasilitas pelayanan, menerima pelayanan, dan akhirnya
keluar dari sistem pelayanan.
Notasi yang digunakan dalam multiple-channel model, pada dasarnya
sama dengan single-channel model, kecuali untuk dua persamaan berikut ini
(Hartanto, 2005):

16
Universitas Kristen Petra
μ = rata-rata tingkat pelayanan untuk setiap fasilitas pelayanan
λ
ρ = μs (2.13)

λ < μ s atau (ρ < 1) (2.14)


Jika λ ≥ μ s, maka jumlah pelanggan dalam sistem akan menjadi tak terbatas.
Oleh karena itu, jika kita berpegang pada persamaan (2.14) maka persamaan yang
digunakan dalam sistem (M/M/s) adalah sebagai berikut (Hartanto, 2005):
(λ/μ)n (λ/μ)s 1 −1
P0 = [∑s−1
n=0 + ] (2.15)
n! s! 1−(λ/sμ)

λ s
p0 (μ ) ρ
Lq = (2.16)
s!(1−ρ)2
Lq
Wq = (2.17)
λ
1
W = Wq + μ (2.18)
λ
L = λW = Lq + μ (2.19)

2.3. PHP
PHP adalah bahasa pemrograman open source yang paling banyak
digunakan untuk membangun website. PHP disediakan secara gratis dan memiliki
komunitas yang mendukung pengembangannya.
PHP dapat digunakan dalam tiga cara utama (Tatroe, MacIntyre, &
Lerdorf, 2013) :
- Server-side scripting
PHP pada awalnya dirancang untuk membuat konten web yang dinamis, dan
masih paling cocok untuk tugas tersebut. Untuk menghasilkan HTML,
diperlukan PHP parser dan server web yang akan digunakan untuk mengirim
dokumen berkode. PHP juga telah menjadi populer untuk menghasilkan
dokumen XML, grafis, animasi Flash, file PDF, dan banyak lagi.
- Command-line scripting
PHP dapat menjalankan script dari command-line, seperti Perl, awk, atau Unix
shell. Biasanya menggunakan script baris perintah untuk tugas-tugas

17
Universitas Kristen Petra
administrasi sistem, seperti backup dan log parsing; bahkan beberapa CRON
job type script dapat dilakukan dengan cara ini (tugas PHP nonvisual).
- Client-side GUI applications
Menggunakan PHP-GTK, kita dapat menulis, aplikasi cross-platform GUI di
PHP.
Menurut Beighley & Morisson (2009), PHP merupakan sebuah bahasa
pemrograman sisi server yang berjalan pada sebuah web server. Kode PHP
berjalan pada sisi server dan disimpan di dalam skrip PHP yang biasanya
memiliki ekstensi .php. Skrip PHP kebanyakan terlihat seperti halaman web
HTML normal karena dapat berisi kode HTML dan kode CSS. Kenyataannya,
ketika server menjalankan sebuah skrip PHP, hasil akhirnya selalu HTML murni
dan CSS. Jadi, setiap skrip PHP akhirnya akan berubah menjadi kode HTML dan
CSS, yang telah berakhir berjalan pada server.
Beberapa keuntungan yang dimiliki PHP (Valade, 2004):
- Cepat. Karena sudah disematkan di dalam kode HTML, sehingga memiliki
response time yang singkat.
- Biaya tidak mahal, faktanya gratis. PHP membuktikan bahwa gratis memang
ada dan kita bisa mendapatkan lebih banyak dari yang dibayarkan untuknya.
- Mudah digunakan. PHP memiliki banyak fitur khusus dan fungsi yang
diperlukan untuk membuat halaman website dinamis. Bahasa PHP didesain
supaya mudah dimasukkan dalam sebuah file HTML. Contoh bahasa PHP:
<?php
$a=0;
$b=5;
echo $a+$b;
?>
- Dapat berjalan pada banyak sistem operasi. PHP dapat berjalan pada berbagai
macam operasi sistem, seperti Windows, Linux, Mac OS, dan banyak varian
Unix.
- Dukungan teknis tersedia secara luas. Basis besar pengguna menyediakan
dukungan gratis melalui email discussion lists.

18
Universitas Kristen Petra
- Aman. Pengguna tidak bisa melihat kode PHP dari source code pada browser.
- Didesain untuk mendukung banyak database. PHP menyertakan fungsi yang
didesain untuk dapat berinteraksi dengan database tertentu. Hal tersebut
meringankan kita dari kebutuhan untuk mengetahui detail teknis yang diminta
untuk berkomunikasi dengan sebuah database.
- Mudah dikustomisasi. Open source license memungkinkan para programmer
untuk memodifikasi software PHP, menambah atau mengubah fitur-fitur
sebagaimana yang diperlukan untuk disesuaikan dengan kebutuhan secara
spesifik.

2.4. AJAX
Awal dari AJAX seperti yang digunakan saat ini dimulai dengan rilis dari
Internet Explorer 5 pada tahun 1999, yang memperkenalkan objek ActiveX baru,
yaitu XMLHttpRequest. ActiveX adalah teknologi Microsoft untuk
menandatangani plug-in yang menambahkan perangkat lunak tambahan untuk
komputer pengguna. pengembang browser lainnya kemudian mengikuti, tapi
daripada menggunakan ActiveX, mereka semua menerapkan fitur sebagai bagian
asli dari interpreter JavaScript. Namun, bahkan sebelum itu, bentuk awal dari
AJAX sudah muncul yang menggunakan frame tersembunyi pada halaman yang
berinteraksi dengan server di latar belakang. Chat room pengadopsi awal
teknologi ini, menggunakannya untuk polling dan menampilkan posting pesan
baru tanpa memerlukan page reload. (Nixon, 2012)
AJAX, singkatan dari “Asynchronous JavaScript and XML“, merupakan
metode suatu laman web menggunakan JavaScript untuk mengirim dan menerima
data dari server tanpa harus menyegarkan (refresh) laman itu. XML adalah sejenis
markup language – seperti HTML, yang kerap dipakai untuk mengirimkan data
melalui internet. Belakangan ini, JSON (JavaScript Object Notation) lebih
populer dan bisa dibaca – secara bawaan (native) – oleh JavaScript (Saputra,
2014).

19
Universitas Kristen Petra
Berikut uraian yang lebih ringkas (Saputra, 2014):
AJAX: Asynchronous JavaScript and XML. Sebuah sistem untuk mengirim dan
menerima data dari server tanpa penyegaran laman (page refresh).
XML: eXtensible Markup Language. Sebuah bahasa untuk mengorganisir data
arbitrer. Menggunakan banyak sekali kurung sudut (angle brackets): “<>”.
HTML: HyperText Markup Language. Sebuah subset XML yang khususnya
berfungsi untuk menjelaskan dan mengorganisir laman web.
JSON: JavaScript Object Notation. Metode yang lebih modern untuk
memindahkan paket data yang sering dipakai bersama dengan AJAX. Bisa dibaca
secara bawaan oleh JavaScript.

2.5. jQuery
jQuery adalah sebuah library yang dibangun dengan menggunakan
JavaScript untuk mengautomasi dan menyederhanakan perintah-perintah umum.
Meskipun ada banyak library lain semacamnya, namun jQuery jauh lebih populer
karena kemampuannya untuk menjalankan perintah pada peramban lama. jQuery
berjalan pada browser bersamaan dengan JavaScript biasa, terutama dipergunakan
untuk animasi dan AJAX, yang cukup sulit untuk diprogramkan dengan Vanilla
JavaScript, namun bisa diketik dalam beberapa baris singkat dengan jQuery.
jQuery dimasukkan dalam sebuah laman web dengan tag <script>, contohnya:
<script src="./path/to/jquery.js"></script>. jQuery juga memiliki banyak sekali
plugin yang memperluas fungsionalitasnya melalui berbagai metode (Saputra,
2014).
Dengan jQuery, kita tidak hanya mendapatkan tingkat kompatibilitas
cross-browser yang sangat tinggi (ya, bahkan termasuk Internet Explorer), namun
kita juga memiliki akses cepat dan mudah untuk manipulasi HTML dan DOM,
fungsi khusus untuk berinteraksi langsung dengan CSS, kemampuan untuk
control events, sebuah tools yang kuat untuk menciptakan efek profesional dan
animasi, dan fungsi untuk melakukan komunikasi AJAX dengan web server.
jQuery juga merupakan dasar untuk berbagai plug-in dan utilitas lainnya juga
(Nixon, 2014).

20
Universitas Kristen Petra
2.6. JavaScript
JavaScript, diciptakan untuk memungkinkan akses scripting untuk semua
elemen dari sebuah dokumen HTML. Dengan kata lain, JavaScript menyediakan
sarana untuk interaksi pengguna dinamis seperti memeriksa validitas alamat email
dalam bentuk input, menampilkan prompt seperti "Apakah Anda benar-benar
yakin?" dan sebagainya (meskipun tidak bisa diandalkan untuk keamanan yang
harus selalu dilakukan pada web server). Jika dikombinasikan dengan CSS,
JavaScript adalah kekuatan dibalik halaman web dinamis yang berubah dan
terlihat mata, daripada ketika server mengembalikan sebuah halaman baru (Nixon,
2012).
JavaScript adalah sebuah bahasa pemrograman yang dirancang untuk
penggunaan pada browser web. JavaScript bukan scripting language, juga sama
sekali tidak berhubungan dengan platform software Java milik Oracle (Saputra,
2014). Kita bisa menulis kode dalam JavaScript sebagai bahasa full feature yang –
dengan satu pengecualian – mampu berjalan dalam sebuah web browser, seperti
Chrome, Firefox, atau Internet Explorer. Secara umum dipergunakan untuk
memanipulasi “Document Object Model” (DOM), yang meliputi elemen-elemen
pada sebuah halaman web. JavaScript dieksekusi pada client-side (komputer
pengguna): Sebuah server website mengirim JavaScript ke peramban milik
pengguna, dan browser tersebut menginterpretasikan dan menjalankan kodenya.
Semua ini terjadi dalam sebuah security sandbox, yang menjaga agar JavaScript
tidak menyentuh internal sistem, sehingga mencegah malicious code (kode jahat)
menginfeksi komputer pengguna.

2.7. MySQL
MySQL adalah Relational Database Management System (RDBMS) yang
bersifat open source. MySQL server dapat mengelola banyak database pada
waktu yang sama. Bahkan, banyak orang mungkin memiliki database berbeda
yang dikelola oleh server tunggal MySQL. Setiap database terdiri dari struktur
untuk menyimpan data dan data itu sendiri. MySQL merupakan database yang

21
Universitas Kristen Petra
paling populer untuk digunakan dalam website, dikembangkan untuk menjadi
cepat dan berukuran kecil, khusus untuk situs web. MySQL sangat populer untuk
digunakan dengan situs web yang ditulis dalam PHP, perlu diketahui bahwa PHP
dan MySQL dapat bekerjasama dengan baik (Suehring & Valade, 2013).
Beberapa keuntungan yang dimiliki MySQL (Valade, 2004):
- Cepat. Tujuan utama dari para developer MySQL adalah hal kecepatan.
- Biaya tidak mahal. MySQL gratis karena berada di bawah open source GPL
license dan biaya untuk sebuah lisensi komersial sangat wajar, sehingga tidak
memberatkan.
- Mudah digunakan. Kita dapat membangun dan berinteraksi dengan sebuah
database MySQL dengan menggunakan beberapa pernyataan sederhana dalam
bahasa SQL, yang merupakan bahasa standar untuk komunikasi dengan
RDBMS. Contoh query untuk menampilkan semua data yang tersimpan dalam
sebuah tabel customer: SELECT * FROM customer.
- Dapat berjalan pada banyak sistem operasi. MySQL dapat berjalan pada
berbagai macam operasi sistem, seperti Windows, Linux, Mac OS, Unix
(termasuk Solaris, AIX, dan DEC Unix), FreeBSD, OS/2, Irix, dan lainnya.
- Dukungan teknis tersedia secara luas. Basis besar pengguna memberikan
dukungan gratis melalui milis. Para developer juga berpartisipasi dalam milis.
Kita juga dapat membeli jasa dukungan teknis dari MySQL AB dengan biaya
yang sangat ringan.
- Aman. Sistem fleksibel MySQL untuk otorisasi memungkinkan sebagian atau
seluruh database memiliki hak khusus (misalnya, hak khusus untuk membuat
sebuah database atau menghapus data) untuk pengguna tertentu atau grup dari
pengguna. Kata sandi atau password yang dibuat akan dienkripsi oleh MySQL.
- Mendukung database besar. MySQL sanggup menangani database hingga 50
juta baris lebih. Batas ukuran file standar untuk sebuah tabel adalah 4GB, tetapi
kita dapat meningkatkannya (jika sistem operasi mampu menangani) hingga
batas teoritis 8 juta terabytes (TB).

22
Universitas Kristen Petra
- Mudah dikustomisasi. Open source GPL license memungkinkan para
programmer untuk memodifikasi software MySQL sehingga dapat disesuaikan
dengan kebutuhan secara spesifik.

2.8. Android Studio


Android Studio merupakan IDE resmi untuk pengembangan aplikasi
Android berdasarkan IntelliJ IDEA. Android Studio menawarkan (Android
Developers, n.d.):
- Flexible Gradle-based build system.
- Membangun varian dan multiple file .apk.
- Code templates untuk membangun fitur aplikasi umum.
- Layout editor yang kaya dengan dukungan untuk drag and drop theme editing.
- lint untuk menangkap performa, kegunaan, kompatibilitas versi, dan lainnya.
- ProGuard and app-signing capabilities.
- Built-in mendukung untuk Google Cloud Platform, sehingga mudah untuk
mengintegrasikan Google Cloud Messaging dan App Engine.

2.9. Google Cloud Messaging


Google Cloud Messaging (GCM) adalah layanan gratis yang
memungkinkan developers untuk mengirim pesan antara server dan aplikasi klien.
Ini termasuk downstream messages dari server ke aplikasi klien, dan upstream
messages dari aplikasi klien ke server. Misalnya, downstream messages yang
ringan bisa menginformasikan aplikasi klien bahwa ada data baru yang akan
diambil dari server, seperti dalam kasus notifikasi "new email". Untuk kasus
penggunaan seperti instant messaging, pesan GCM dapat mentransfer hingga 4KB
payload ke aplikasi klien. Layanan GCM menangani semua aspek antrian pesan
dan pengiriman ke dan dari aplikasi sasaran klien. Tiga komponen dalam interaksi
GCM, yaitu GCM Connection Servers, App Server, Client App. Berikut proses
yang terjadi ketika aplikasi server mengirim pesan ke aplikasi klien (Google
Developers, 2016):
1. App Server mengirim sebuah pesan ke GCM Connection Servers.

23
Universitas Kristen Petra
2. GCM Connection Servers akan mengantrikan dan menyimpankan pesan jika
device dalam keadaan offline.
3. Ketika device terhubung (online), server koneksi GCM mengirimkan pesan ke
device.
4. Pada device, aplikasi klien menerima pesan sesuai implementasi spesifik
platform.

2.10. Push Notification


Push Notification, juga disebut Server Push Notification, adalah
penyampaian informasi dari aplikasi perangkat lunak untuk sebuah perangkat
komputasi tanpa permintaan khusus dari klien. Keuntungan penting dari push
notifications dalam komputasi mobile adalah bahwa teknologi tersebut tidak
memerlukan aplikasi khusus yang terbuka atau aktif pada sebuah perangkat
mobile agar pesan dapat diterima. Hal ini memungkinkan smartphone untuk
menerima dan menampilkan media sosial atau peringatan pesan teks, bahkan
ketika layar perangkat terkunci dan media sosial yang mengirimkan notifikasi
dalam kondisi tertutup sekalipun (Rouse, n.d.).

2.11. SMS Gateway


SMS Gateway adalah sebuah jembatan yang menghubungkan antara
sistem dan user melalui jalur Short Message Service (SMS). SMS merupakan
sebuah layanan yang banyak diaplikasikan pada sistem komunikasi tanpa kabel,
memungkinkan dilakukannya pengiriman pesan dalam bentuk alphanumeric
antara terminal pelanggan atau antara terminal pelanggan dengan sistem eksternal
seperti email, paging, voice mail, dan lain-lain. SMS Gateway memiliki SMS
Center yang merupakan sebuah entitas yang bertanggungjawab untuk
menyimpan, routing, dan meneruskan short message dari satu titik ke titik lain
yang merupakan tujuan, misalnya dari suatu Short Message Entity (SME) ke
perangkat telepon bergerak (Rosidi, 2004).

24
Universitas Kristen Petra

Anda mungkin juga menyukai