BAB III LANDASAN TEORI
3.1 Web server Web layanan
server se erv rver r data da
adalah
yang
software
mempunyai mempunyai
yang
fungsi
memberikan
untuk unt n uk
menerima
permintaan HTTP(HyperText perminta taan HTT TP( (Hy HyperT Tex ext t Transfer Tran Tr nsf sfer er Protocol) atau HTTPS yang g
dikirim
oleh ole leh
klien
melalui melalu lui i
web b
browser brow wse s r
dan
mengirimkan me engirim mka kan n kembali kemb bal ali i hasilnya dalam dal lam bentuk bentu tuk k halaman h lama ha an web umumnya yang g u mumnya mu ya berbentuk dokumen HTML(HyperText HTML( (Hy Hype erT rTex ext t Markup Mark r up Language). Lang gua age). Web server r berguna sebagai tempat tem empat t aplikasi aplika ap asi s web client we eb dan n sebagai penerima request dari clie i nt t (Indra (Indra a Warman server Wa Warm r an n & Zahni, 2013). Pada umumnya web ser rver r telah tel e ah h dilengkapi di dilen ngkapi pula dengan mesin penerjemah bahasa baha asa skrip skr krip p yang memungkinkan web server r menyediakan layanan a situs sit tus web
dinamis
dengan
memanfaatkan
pustaka
tambahan tamba ahan n
seperti ASP(Active sepe per rti PHP(PHP:Hypertext PHP(PHP:Hyp ypertext Preprocessor) dan ASP SP( (Active ve Server Pages). Pages s ).
Gambar 3.1 Arsitektur A site Ar ektur Web server serv ver
Gambar 3.1 merupakan merup pakan arsitektur ar rsitektur dari web server. Client melakukan HTTP request reques st ke web server r dan web server r
akan
mengembali mengembalikan l kan
website
meliputi
HTML,
request
image, im mage,
CSS,
berupa dan
halaman
javascript.
Server r juga dapat melakukan melakuka kan query y atau request data ke database
jika
client
ingin
mengelola
data.
Database
akan mengembalikan request dari server berupa data dan server menampilkannya berupa halaman web ke client. Dua contoh web server yang sering digunakan adalah Apache 14
dan
IIS.
MySQL,
Sedangkan
MySQL
database
database
merupakan
(DBMS)
yang
yang
software sangat
digunakan sistem
populer
adalah
manajemen
atau
banyak
digunakan untuk membangun me emb mbangun aplikasi apli ika kasi s web sebagai sumber data.
MySQL
bersifat be
open
source,
mudah, m dah, mu
dan
cepat
dalam mengeksekusi meng geksekusi query. qu uery.
3.2 Situs Situs Berita ta Online O line On Situs website Si itu tus s berita beri ita online merupakan merupak akan a we ebs bsit ite penyedia pen nyedia informasi i nfo orm mas asi i
berupa be
berita.
Salah
satu sat atu u
yang yang
sering ser ring
diaplikasikan diap pli likasi ikan dalam praktik jurnalistik modern m de mo dern rn adalah adala lah situs si itus be berita
(Aswari, 2013). Perkembangan n teknologi tek ekn nologi gi
yang ya n menjadi menjadi penyebab banyaknya situs berita online onli line ne di i Indonesia. Indon In nesia. Situs berita termasuk dalam media a online. on nli line. . Portal Porta al
pada
pemberitaan pe p mbe eritaan
media yang
online
menarik
mempunyai dengan
variasi i
gambar
dan n
dalam dal lam video vi ideo o
(Astari, (A Ast sta ari, 2014). Variasi pemberitaan dan tampilan tampil lan yang yan ng menarik
membuat memb mbu uat t
pembaca pe emb mbac aca a
lebih le ebi bih h
senang senang g
membaca
berita berit ita a
pada p ada situs berita online.
Gambar 3.2 Contoh Situs Berita Online
Gambar 3.2 merupakan dua buah contoh situs berita online terbesar di Indonesia, yaitu : kompas dan detik.
15
Situs
berita
mempunyai
desain
yang
berbeda-beda.
Terdapat iklan di situs berita tersebut disamping kanan dan di atas. Selain iklan dalam bentuk banner, ada pula iklan
dalam
bentuk uk
pop
up
sehingga sehi se h ngga
pembaca
harus
mengklik tanda da close untuk menutup iklan. ikl k an. Slider r juga menjadi
pemanis pe
dalam dala l m
situs
berita
yang yang
biasanya
menampilkan menampil ilkan berita–berita be eri ita ta–ber rit ita a terbaru terb te rbar aru u yang y ng menjadi ya d trending topik. topi ik.
3.3 Service 3.3 Web Web S erv vic ice Web service adalah sistem yang dirancang di ira r nc can ang g untuk untu tuk mendukung me endukun ng interoperabilitas dan interaksi antar an r sistem sistem m pada pad
suatu
jaringan.
Web
service
mempublikasikan mempub blik kas sik i an
aplikasi aplika ap kasi dalam bentuk layanan dan mudah ditemukan ditem muka an dan n diakses diaks ses
oleh
aplikasi
lain
secara
online e
tanpa tan npa
tergantung terga antung pada platform m yang digunakan (Kuswandi, (Kuswa andi, , et t al., al l., , 2007). Secara a umum, web web service servi ice
dapat da t diidentifikasikan diid di identifikasika kan n
dengan d ngan menggunakan URL seperti de sep eperti hanya web pada umumnya. umum mny nya a. Namun Namu Na un
yang
umumnya umum um mny nya a
membedakan
adalah adal ad alah ah
web
interaksi int nter erak aksi s
service yang yan ang g
dengan
diberikan dibe iberi rika kan n
web web
pada pad ada
oleh oleh
web
service. se erv vic ice e. Web Web service se erv rvi ice bersifat bersi sif fat terbuka terbuk te uka a untuk untu un tuk k kepentingan kepe ke pent nti ingan integrasi integr ras asi i online
data
oleh
dimiliki
kolaborasi kolabor rasi
berbagai i
oleh
data
pihak k
masing–masing masing n –masin ng
yang
dengan
diakses diak di akse ses
secara
teknologi
yang
pengguna.(Sutanta
&
Mustofa, 2012). Web service se ervice e tidak mempunyai tampilan karena tier.
web Pada
service web
termasuk ter rma m suk
service
dalam
hubungan
Bussiness-Service antara
client
dan
server tidak terjadi secara langsung. Hubungan
antara
client
dan
server
dijembatani
oleh file web service dalam format tertentu. Sehingga 16
akses terhadap database akan ditanggani tidak secara langsung oleh server, melainkan melalui perantara yang disebut sebagai web service (Pattera, et al., 2014). Web service dibagi menjadi menjadi dua macam maca ma c m yaitu SOAP (Simple Object
Access s
Protocol)
dan
REST
(Representational
State Transfer). Tran nsfer). a. SOAP P SOAP merupakan SO merupak akan an singkatan dari Simple Simp Si m le Object t Access Protocol. Protoc ocol ol.
SOAP AP
adalah
protokol protok okol ol
untuk unt ntuk uk
pertukaran pertu tukaran
informasi i fo in form rmasi i dengan disentralisasi dan da an terdistribusi. te erd rdis istr t ibu usi. SOAP SOAP dibangun dib ibangun dengan menggunakan protokol protoko kol komunikasi komu ko munika asi HTTP, ,
sehingga
SOAP
dapat
berkomunikasi berkomunik kas a i
dengan dengan n
berbagai berb rbagai aplikasi meskipun terdapat perbedaan perbeda aan sistem si ist s em m operasi, op perasi, teknologi, dan bahasa pemrogramannya. pemrogramanny ya. Peran Per e an n SOAP SO OAP adalah sebagai protokol pemaketan untuk untu uk pesan pes san yang ya ang digunakan secara bersama oleh aplikasi-aplikasi aplikasi-a aplik kasi i penggunanya. pe dengan
Spesifikasi Spe p sifikasi
berbasis b erb er basis is
XML XML
yang yang g
digunakan
(Extensible (Ex Exte tens nsib ibl le
Markup Marku k p
adalah adalah ah
Language) Language ge) )
untuk informasi yang ditransfer, ditransfer, serta sekumpulan sekumpu pula lan aturan bagi translasi aplikasi dan tipe-tipe at tipe-ti tipe pe data dat ata platform plat pl atfo form rm m yang yan ang g spesifik spes sp esif ifik ik menjadi menj me njad adi i bentuk bent be ntuk uk XML. XML ML. . b. REST b REST REST ST merupakan merupakan singkatan singk kat a an dari dari Representational Representa tati tio onal State Transfer. REST adalah adal lah teknik tekn nik di arsitektur software untuk sistem terdistribusi terdi istribusi si seperti WWW(World Wide Web). REST tidak memerlukan me emerlu ukan parsing g XML dan tidak memerlukan
header r
pesan pesa an
ke
dan
dari
penyedia
layanan. Hal tersebut dapat mengurangi penggunaan bandwidth. REST bekerja degnan bernavigasi melalui link-link HTTP untuk melakukan aktivitas tertentu seakan-akan terjadi perpindahan state satu dengan 17
yang lain. Perintah HTTP yang biasa digunakan adalah fungsi
GET,
POST,
PUT,
atau
DELETE.
Pada
pengaplikasiannya, REST lebih banyak digunakan untuk web service yang ng berorientasi berorientasi i pada p da resource. pa
3.4 JSON (Java (Java Script t Object Notation) JSON JS SON merupakan merup upak akan singkatan sin ingk gkat atan an dari dar ari i Java Script Scr rip i t Object Notation. Nota ation. ringan ri ingan
JSON N
dan dan
adalah a alah ad
formatnya forma mat tnya
format
pertukaran p rt pe rtukar ran
sederhana.
JSON N
data dat ata
sangat san angat
yang mudah
dimengerti d ime eng ger ert ti dan dan diimplementasikan oleh manusia manusi ma sia a dan da mudah mu udah bagi i komputer kompu puter untuk melakukan parsing data. data a. Format Form Fo rmat a JSON JSO SON digunakan di igunaka an untuk mentransmisikan data yang terstruktur ters rstr truktur r melalui me mel lalui ui
koneksi
serialisasi se serial alisasi
jaringan
pada
proses
yang g
disebut dis seb e ut t
(Kusumawaty, 2012).
Gambar Gamb Ga mbar ar 3.3 3.3 Penggunaan Peng Pe ggu guna naan an JSON JSO SON N REST REST
Gambar Ga Gamb mbar ar
3.3 3
adalah ada ala l h
penggunaan penggu gunaan n
JSON JSO SON N
REST REST
dengan dengan
method d POST. POS OST. Data yang g dikirimkan diki irimkan oleh client clie cl ient adalah nama
:
wawan
menjalankan memasukkan
dan
nim ni im
:
fungsi data
Server r
kemudian
‘/service/mahasiswa’ ‘/se ervice/mahasiswa’
untuk
mahasiswa mahasi iswa
110706659. 11 10706659.
ke ke
dalam
database.
Fungsi
tersebut kemudian akan me-returnkan me e-re returnkan data msg : sukses.
3.5 Web scraping Web scraping sejumlah
informasi
merupakan proses untuk mendapatkan untuk
sebuah 18
situs
website.
Web
scraping yang
erat
kaitannya
merupakan
teknik
dengan
pengindeksan
pencarian
website
informasi
yang
mengadopsi teknik pada mesin pencarian. Fokus dari web eb scraping g adalah ada dalah pada transformasi data
yang
tidak ti ida dak
terstruktur
pada
website, w bsite, we
biasanya
dengan format for rmat HTML, menjadi m njadi data terstruktur me terstrukt ktur yang bisa database disimpan an dan dianalisa dia iana n lisa sa dalam dal alam am da data taba b se (Vargiu (Varg giu i & Urru, 2012). 2012 2). Metode pengambilan peng pe n ambilan konten n yang yan a g bisa b sa digunakan bi dig i unakan adalah ad dalah fetching fetc fe tching g dan dan cURL. cURL. Metode de cURL dapat dap apat a mengirim men ngirim informasi i nfo orm mas asi i lengkap le engkap seperti sebuah web browser brows wser er r sehingga sehin ngga membuat memb bua at web we server r menganggap permintaan dilakukan dil i ak akuk ukan a oleh ole leh pengguna pe engguna a
dengan
menggunakan
web
browser.
(Utomo, (Utomo, ,
2012). 20 2012 1 ).
Gambar 3.4 4 Proses s Web Scraping Scrap pin ing g
Gambar diatas merupakan mer rupakan contoh proses pengambilan data dengan web scraping. scrap ping. Langkah La angkah ke 1 adalah proses request dari aplikasi ke ke data a yang ingin di ambil yaitu dari sebuah website. Proses Prose Pr es ke 2 adalah mendapatkan data dari data source atau ata tau u proses response. Data yang didapatkan kemudian di ekstrak sehingga menjadi data terstruktur pada proses ke 3. Ekstraksi data tersebut kemudian disimpan ke dalam database pada proses ke 4.
19
3.6 Automatic Text Summarization Peringkasan teks otomatis adalah pembuatan bentuk yang lebih singkat dari sebuah teks secara otomatis dengan memanfaatkan memanfaatka an aplikasi. Peringkasan Peri Pe r ngkasan teks secara otomatis
sangat sanga gat t
membantu
dalam
mengetahui menge getahui
inti
dari
sebuah teks tek ks atau banyak banya y k teks. Ringkasan merupakan m rupakan teks me sebuah yang dihasilkan dih ihasilka an dari da seb ebua uah teks tek atau ata t u banyak k teks yang mengandung meng gandung g isi i informasi inf nformasi dari teks ks asli asli dan panjangnya pa anj n angnya tidak ti idak lebih lebi le bih h dari i setengah teks aslinya asl slinya
(Hovy & Lin, (H
2001). 2 001 1). .
3.7 3. .7 Metode Meto ode TF-IDF TF-IDF(Term TF-IDF(Term Frequency-Inverse Document Frequency) Frequ quen ency) merupakan merup me pakan metode yang digunakan untuk memberikan memberik kan nilai nil i ai i pada kalimat yang dianggap sebagai inti dokumen n
(Evan, (Eva an,
et
konsep kon nsep p
al., al.,
untuk untu tuk k
2014).
Metode
perhitungan
ini
bobot,
menggabungkan
yaitu
Term
dua a
Frequency Frequen ncy
(TF) F)
(t) merupakan frekuensi frek fr ekuensi i kemunculan kem ke muncul ulan an kata kata t (t) pada kalimat kalim mat (d). adalah banyaknya kalimat (d ( ). Document Frequency (DF) (D kali lima mat t dimana di dima ana
satu
kata
sebuah se sebu uah
kata kat ata a
dan dan
(t)
muncul.
sebuah sebu se buah ah
Bobot
dokumen dok okum umen en
akan aka kan n
hubungan n tinggi ting ti nggi gi
antara anta an tar ra apabila apa pabi bila
frekuensi fr frek ekue uens nsi i kata kata tersebut terse ebu b t tinggi ti gi di di dalam da ala lam m dokumen doku do kume men n dan frekuensi frekue ens nsi i
keseluruhan
dokumen doku umen
yang
mengandung men nga gand ndung
kata
tersebut rendah pada kumpulan kumpulan n dokumen (Intan & Defeng, 2006).
Langkah-langkah Langkah-langka ah
peringkasan peri ingkasan
Dokumen
dengan
sebagai Metode TF-IDF adalah seb ebagai berikut : 1. Dokumen
dipecah
menjadi menj me jadi
kalimat-kalimat
dan
menghilangkan tanda hubung hub bung yang terdapat di masingmasing kalimat, seperti : titik, koma, tanda seru, tanda petik dan sebagainya. Kalimat-kalimat tersebut kemudian diubah menjadi lowercase. 20
2. Masing-masing kata-kata.
kalimat
Proses
kemudian
dari
di
pemecahan
pecah
menjadi
kalimat
menjadi
kata diberikan filter kata sambung. Kemudian hitung nilai TF dari kata kata tersebut di dalam sebuah dokumen menggunakan n
persamaan
dimana
merupakan merupa aka kan frekuensi frekuens si sebuah se ebu buah kata kata dokumen doku kumen
,
sedangkan seda dang ngka kan
muncul mun uncul di dalam merupakan merupak kan
total
keseluruhan keseluru ruha h n kata yang yan ang g terdapat terd rdap apat a di dalam dala am dokumen dokume en
.
3. 3 . Setelah Sete tela lah h didapat di ida dapat nilai TF dari masing-masing ma asi s ng-ma masi s ng kata, kata, maka maka dapat dap apat dicari nilai IDF dari masing-masing masin ing-ma masi sing ng kata kat a a tersebut terseb te ebut dengan melihat pada seluruh dokumen dok okumen en dengan denga an menggunakan meng nggunakan
persamaan
dimana dim i an na
merupakan me erupakan jumlah dokumen yang ada di dalam koleksi, kol lek eksi i, sedangkan se edangkan muncul mu uncul
merupakan
dalam
IDF
jumlah
merupakan
dokumen
dimana dimana
Inverse
Document Docu cument t
Frequency. Frequenc cy. 4. Masing-masing kata dihitung dihi di hit tung nilai TF-IDFnya dengan den nga gan n menggunakan persamaan
. Dari Dar Da ri
hasil penghitungan TF-IDF hasi ha sil l pe peng nghi hitu tung ngan an T F IDF FF didapatkan dida di dapa patk tkan an kata-kata kat ataa-ka kata ta yang yang mempunyai mempunya me yai i nilai nila ni lai i berbeda, b rb be bed eda, a, tergantung ter erga gant n un ung g seringnya s ring se gny nya a kata tersebut ters te rsebut ut muncul di dokumen. dok o umen n. 5. Kemudian dokumen
lakukan dengan
sentence sentenc ce
menggunakan men nggunaka an
scoring nilai
TF
dari
sebuah
dari
masing-
masing kata. Kalimat t yang g mempunyai skor tertinggi dipilih
untuk
dijadikan dijadi d ka an
ringkasan
dari
sebuah
dokumen. 6. Ringkasan
dari
masing-masing
dokumen
tersebut
digabungkan menjadi satu. 7. Supaya
dapat
terbentuk
sebuah
ringkasan
akhir,
dilakukan pemilihan kalimat dengan metode TF-IDF dan 21
sentence scoring sama seperti memilih kalimat yang akan
digunakan
sebagai
ringkasan
pada
dokumen
tunggal.
3.8 Cron Job Cron n job adalah h sebuah software untuk unt tuk u penjadwalan yang memungkinkan me emungkin nka kan n mengatur meng ngat atur ur tugas tug ugas as secara secara terjadwal terj rjadwal dan berjalan berj jalan pada pada background bac ba ckground d Linux server serv se rver (digitalocean, (digit tal a ocean, 2013). 20 013).
Tugas Tuga Tu gas
adalah adal lah h
yang ya ang
biasanya
mengeksekusi menge geksekusi
dilakukan dila laku kukan
script
per
oleh oleh
waktu wak aktu t
cron on
yang yan ang g
job
telah te elah
ditentukan. dite ent ntukan n. Cron job akan berjalan secara otomatis o om ot omat atis i pada pad ada server se erver r berdasarkan berdasarkan pengaturannya dan dapat ditentukan dit iten entukan n interval in inte t rv val waktunya Cron berbasis berba asis
job
(IDWebhost, 2007).
mempunyai
GUI(Graphical
dua
User
macam
tampilan tampila an
Interface)
dan
yaitu ya u
berbasis berbasi sis s
Command d Line. Cron job job yang berbasis GUI(Graphical GUI(Graphic cal User User r Interface) sudah terdapat Inte ter rface) biasanya y terdapa p t di cpanel hosting hostin ho ng dan
tinggal l
digunakan diguna di naka kan n
dengan deng ngan an
pengaturan pengatu tur ran
waktu
dan dan
script s cript yang akan dijalankan. dijalanka kan. Salah satu contoh command comm mman and untuk un untu tuk k menjalankan script pada cron job adalah h sebagai seba se baga gai berikut be beri riku kut t :
Gambar 3.5 Contoh Operasi Cron Job
22
3.9 Aplikasi Mobile Aplikasi
mobile
adalah
perangkat
lunak
yang
didesain untuk dapat dijalankan pada device smartphone dan perangkat mobile mobi bil le yang lainnya. lain inny nya. Permintaan publik dan pertumbuhan pertumbuha han aplikasi mobile yang yan ng meningkat pesar membuat
cakupan ca
Menurut t
dari i
aplikasi
mobile
semakin semakin
luas.
(Lee e & Scheel, Sche heel el, 2004) 2004 20 0 ) Pengembangan Pe an aplikasi
mobile lebih mobi ile dianggap p lebih leb e ih mudah dan leb ebih ih cepat. cep pat. Aplikasi Ap pli lika kas si
mobile mo obi bile
dibagi
menjadi men nja jadi
3
yaitu yai aitu
native native
application, appl lic cat ati ion, , web application, dan hybrid hybr brid application. app ppli licati tion. Aplikasi Apli ika kasi native native dikembangkan dengan bahasa bahas sa pemrograman pemr pe mrograma man yang ya ang semestinya sem emestinya misalnya android menggunakan menggunaka an Java Java dan n SDK milik SDK mi ilik Android, dan iOS menggunakan Objective-C Object tivee C dan n iOS. SD i SDK OS. Aplikasi native tertanam atau diinstal diins stal l pada pada a device. devic ce. Mobile Web Application adalah aplikasi i mobile mobi ile yang y ng ya
dijalankan
menggunakan
browser r
yang
ada
di i
handphone, hand ndp phone, menggunakan mengg gunakan bahasa pemrograman p mrograman web. Hybrid pe Hybr rid Application adalah adal lah h aplikasi apli ap lika k si i mobile mobi mo bil le yang yan ng tertanam t rtanam atau te ata tau u diinstall di d install
pada
teknologi te tekn knol ologi
web
device
dan dan
digabung
dibuat dengan
application. ap appl plic icat atio ion n.
23
dengan
menggunakan menggun nak aka an
teknologi
native nati na tive