Sistem Peringkas Berita Online Otomatis Menggunakan Algoritma Textteaser

1

Lampiran A
CONTOH BERITA

ID: 3530
Judul: Sate Maranggi Cibungur: Manis Gurih Sate Daging yang Bikin Ketagihan
Ringkasan menggunakan TextTeaser:
Bisa pilih sate kambing, sate sapi atau sate ayam. Sate ini berbeda dengan sate yang
umumnya berupa potongan daging yang dibakar langsung. Sate tanpa bumbu kacang dan
direndam bumbu sebelum dibakar merupakan ciri khas sate maranggi. Konon nama maranggi
diberikan oleh pelanggannya karena 25 tahun silam saat ia membuka warung sate, sate
racikannya tak punya nama. Rasa sate yang khas ini membuat banyak orang menjual sate
yang mirip dengan sate Cibungur.
Ringkasan menggunakan TextRank:
Bisa pilih sate kambing, sate sapi atau sate ayam. Sate ini berbeda dengan sate yang
umumnya berupa potongan daging yang dibakar langsung. Sate tanpa bumbu kacang dan
direndam bumbu sebelum dibakar merupakan ciri khas sate maranggi. Konon nama maranggi
diberikan oleh pelanggannya karena 25 tahun silam saat ia membuka warung sate, sate
racikannya tak punya nama. Rasa sate yang khas ini membuat banyak orang menjual sate
yang mirip dengan sate Cibungur.

Teks asli:
Dagingnya empuk dengan bumbu gurih manis yang meresap. Dinikmati hangat dengan irisan
tomat yang dicampur dengan gerusan cabai rawit hijau. Ah, sedapnya! Ya, sekali mencicipi
sate ini dijamin pasti ketagihan. Sate khas Purwakarta ini pun disukai banyak orang. Sangat
populer di saat mudik karena lokasinya tak jauh dari pintu tol Cikampek. Tampilan warung
sate maranggi Cibungur ini agak berubah dibandingkan beberapa tahun silam. Tempat makan
yang berupa bangku-bangku dan meja makan panjang ditata di tempat lebih luas. Tempat
membakar sate dan parkir juga lebih lebar. Aroma wangi semerbak sate yang sedang dibakar
langsung terendus saat kami duduk di meja. Beberapa panggangan berisi arang batok kelapa
tak henti-henti mengepulkan asap wangi. Ada beberapa baskom berisi puluhan sate yang siap
dipanggang. Bisa pilih sate kambing, sate sapi atau sate ayam. Selain sate bisa memesan
menu lain. Ada ayam bakar, ikan bakar, pepes ati ampela, sup kambing, soto daging, gadogado, karedok hingga siomay. Belum lama duduk menunggu sate disajikan. Ada pramusaji
menawarkan tutut (kerang sawah), asinan sayuran, buah potong segar hingga tahu dan tempe
goreng. Kalau berminat bisa langsung diambil. Harganya berkisar Rp. 15. 000 per porsi.
Sepuluh tusuk sate daging (Rp. 40. 000) disajikan dengan irisan tomat yang dicampur dengan
gerusan cabai rawit hijau. Aromanya wangi dengan segar aroma tomat. Dagingnya dipotong
kecil dengan selingan potongan lemak. Per tusuk ada sekitar 4 potong. Tusuk satenya juga
tak terlalu padat berisi daging. Warnanya kecokelatan sedikit berminyak. Rasanya manis
gurih dengan aksen ketumbar yang renyah dan bawang yang wangi. Sate ini berbeda dengan
sate yang umumnya berupa potongan daging yang dibakar langsung. Potongan dagingnya

dibumbui dan direndam bumbu selama beberapa saat. Rasa bawang merah, bawang putih,
ketumbar dan manis gula merah terasa meresap ke dalam daging. Mirip dengan bumbu
empal. Hanya saja ada sedikit jejak rasa asam Jawa yang kecut enak. Tekstur dagingnya
empuk, ini karena direndam bumbu dalam waktu lama. Pemakaian asam Jawa membuat
tekstur daging lunak dan rasanya enak. Juga karena pemakaian daging sapi muda sehingga
lemaknya lembut juicy. Sate ayam dan kambing tak jauh beda rasanya. Hanya saja sate
ayamnya terasa lebih ringan bumbunya. Jodoh sate yang gurih ini adalah racikan 'salsa' khas
warung Cibingur. Tomat merah segar setengah masak diiris tipis dan diaduk dengan cabai
rawit merah dan bawang putih. Rasanya renyah asam segar sekaligus pedas. Kontras rasanya
dengan rasa sate. Tetapi justru terasa enak di mulut. Sate tanpa bumbu kacang dan direndam
bumbu sebelum dibakar merupakan ciri khas sate maranggi. Sate yang dirintis oleh Hajjah

Universitas Sumatera Utara

2

Yeti ini tak punya cabang di lokasi lain. Konon nama maranggi diberikan oleh pelanggannya
karena 25 tahun silam saat ia membuka warung sate, sate racikannya tak punya nama. Disebut
maranggi karena mirip dengan sate dari Eretan, Kedunghaur, Indramayu. Kalau suka, bisa
disantap dengan nasi hangat yang disajikan dalam bungkusan daun pisang (Rp. 6. 000).

Beberapa orang suka menambahkan kecap manis. Namun, jika disantap begitu saja rasa
manisnya sudah pas. Jodoh paling pas buat mengiringi santapan sate ini adalah es kelapa
muda (Rp. 15. 000) yang disajikan dalam gelas stainless steel. Kelapa muda yang dikeruk
halus diberi sirop vanili yang wangi dan es batu. Sebagai pendamping tutut yang direbus
dengan bumbu gurih pedas juga enak. Disedot-sedot sambil mencungkili dagingnya yang
kenyal. Sebagai pencuci mulut bisa memilih potongan buah segar atau colenak. Tape bakar
yang diberi siraman sirop gula merah dan taburan kelapa parut. Rasa sate yang khas ini
membuat banyak orang menjual sate yang mirip dengan sate Cibungur. Karenanya hampir di
seluruh pelosok Purwakarta mudah ditemui sate ini. Namun, kalau mau yang asli Anda harus
ke Cibungur. Lokasinya mudah dicari. Kalau dari arah Jakarta, keluar tol Cikampek, belok
ke kanan, dan sekitar 3,3 km warung sate yang tak pernah sepi ini ada di sisi kiri. Ke
Purwakarta, jangan lupa mampir ke sate maranggi ini!
ID: 5898
Judul: 2016, Komisi VIII Targetkan Pengesahan Dua RUU
Ringkasan menggunakan TextTeaser:
Komisi VIII DPR RI menargetkan pembahasan dua Rancangan Undang-Undang (RUU)
selesai pada 2016. Dua RUU itu adalah RUU Penyandang Disabilitas dan RUU
Penyelenggaraan Haji dan Umroh, "Sampai masa akhir persidangan 2015, pembahasan
kedua RUU sudah selesai dilaksanakan pada tingkat komisi," ujar Ketua Komisi VIII DPR
Saleh Partaonan Daulay di Jakarta, Jumat (1/1/2016). Politisi Partai Amanat Nasional (PAN)

itu mengatakan, Komisi VIII tinggal menunggu hasil pembahasan RUU Penyandang
Disabilitas yang dilakukan pemerintah untuk selanjutnya dibahas lagi bersama DPR.
"Sepanjang 2015, Komisi VIII fokus untuk menyelesaikan pembahasan dua RUU yang telah
diamanatkan dalam Program Legislasi Nasional (Prolegnas) 2015 tersebut," tuturnya. Baleg
DPR juga telah menyetujui dua RUU dalam Prolegnas 2016 yang akan dibahas Komisi VIII
yaitu RUU Tanggung Jawab Sosial Perusahaan dan RUU Pekerja Sosial.
Ringkasan menggunakan TextRank:
Komisi VIII DPR RI menargetkan pembahasan dua Rancangan Undang-Undang (RUU)
selesai pada 2016. Dua RUU itu adalah RUU Penyandang Disabilitas dan RUU
Penyelenggaraan Haji dan Umroh, "Sampai masa akhir persidangan 2015, pembahasan
kedua RUU sudah selesai dilaksanakan pada tingkat komisi," ujar Ketua Komisi VIII DPR
Saleh Partaonan Daulay di Jakarta, Jumat (1/1/2016). Politisi Partai Amanat Nasional (PAN)
itu mengatakan, Komisi VIII tinggal menunggu hasil pembahasan RUU Penyandang
Disabilitas yang dilakukan pemerintah untuk selanjutnya dibahas lagi bersama DPR. Baleg
DPR juga telah menyetujui dua RUU dalam Prolegnas 2016 yang akan dibahas Komisi VIII
yaitu RUU Tanggung Jawab Sosial Perusahaan dan RUU Pekerja Sosial.
Teks asli:
Komisi VIII DPR RI menargetkan pembahasan dua Rancangan Undang-Undang (RUU)
selesai pada 2016. Dua RUU itu adalah RUU Penyandang Disabilitas dan RUU
Penyelenggaraan Haji dan Umroh, "Sampai masa akhir persidangan 2015, pembahasan

kedua RUU sudah selesai dilaksanakan pada tingkat komisi," ujar Ketua Komisi VIII DPR
Saleh Partaonan Daulay di Jakarta, Jumat (1/1/2016). "Bahkan, untuk RUU Penyandang
Disabilitas telah disetujui oleh paripurna untuk menjadi inisiatif DPR," kata dia. Politisi
Partai Amanat Nasional (PAN) itu mengatakan, Komisi VIII tinggal menunggu hasil
pembahasan RUU Penyandang Disabilitas yang dilakukan pemerintah untuk selanjutnya
dibahas lagi bersama DPR. Sedangkan RUU Penyelenggaraan Haji dan Umroh, saat ini
sudah berada di Badan Legislasi (Baleg) untuk tahap sinkronisasi dan harmonisasi. Dia
berharap pada awal masa persidangan 2016, RUU tersebut sudah bisa disahkan di paripurna

Universitas Sumatera Utara

3

untuk selanjutnya dikirimkan ke pemerintah. "Sepanjang 2015, Komisi VIII fokus untuk
menyelesaikan pembahasan dua RUU yang telah diamanatkan dalam Program Legislasi
Nasional (Prolegnas) 2015 tersebut," tuturnya. Baleg DPR juga telah menyetujui dua RUU
dalam Prolegnas 2016 yang akan dibahas Komisi VIII yaitu RUU Tanggung Jawab Sosial
Perusahaan dan RUU Pekerja Sosial. Sepanjang 2015, Komisi VIII juga banyak menerima
masukan untuk merevisi undang-undang. Misalnya, Undang-Undang Perlindungan Anak dan
Undang-Undang Penanggulangan Bencana. Komisi VIII juga menerima masukan untuk

menginisiasi undang-undang, misalnya Undang-Undang Kesetaraan Gender, UndangUndang Perlindungan Umat Beragama, Undang-Undang Penghapusan Kekerasan Seksual
dan lain-lain. "Usulan-usulan tersebut akan menjadi perhatian Komisi VIII. Bila
memungkinkan, usulan itu akan dibicarakan dalam masa-masa persidangan berikutnya," kata
Saleh.

Universitas Sumatera Utara

64

DAFTAR PUSTAKA

Aristoteles. 2011. Pembobotan fitur teks pada peringkasan teks bahasa Indonesia
menggunakan algoritme genetika. Tesis. Institut Pertanian Bogor.
Aristoteles. 2014. Text Feature Weighting for Summarization of Documents Bahasa
Indonesia by Using Binary Logistic Regression Algorithm. International
Journal of Computer Science and Telecommunications 5(7): 29-33.
Balabantaray, R. C., Sahoo, B., & Sahoo, D. K. 2012. Odia text summarization using
stemmer. International Journal of Applied Information Systems (IJAIS) 1(3):
21-24.
Balbin, J. P. 2011. Automatic summarization of senate bills for dissemination in a social

network environment. Master Thesis. De La Salle University.
Belica, M. 2015. Sumy 0.4.0: Module for automatic summarization of text documents
and HTML pages. https://pypi.python.org/pypi/sumy. (diakses 11 Januari
2016).
Bird, S., Loper, E., & Klien, E. 2009. Natural Language Processing with Python.
California: O'Reilly Media Inc.
Deshpande, A. R., & Lobo, L. M. 2013. Text Summarization using Clustering
Technique. International Journal of Engineering Trends and Technology
(IJETT) 4(8): 3348-3351.
Erkan, G., & Radev, D. R. 2004. LexRank: Graph-based lexical centrality as salience
in text summarization. Journal of Artificial Intelligence Research: 457-479.
Fachrurrozi, M., Yusliani, N., & Yoanita, R. U. 2013. Frequent Term based Text
Summarization for Bahasa Indonesia. International Conference on Innovations
in Engineering and Technology: 30-32.
Google

Developers.
2015.
Google
Cloud

Messaging:
Overview.
https://developers.google.com/cloud-messaging/gcm (diakses 1 Desember
2015).

Hu, M., Sun, A., & Lim, E.-P. 2007. Comments-oriented blog summarization by
sentence extraction. Proceedings of the sixteenth ACM conference on
Conference on information and knowledge management, pp. 901-904.
Kalita, C., Saharia, N., & Sharma, U. 2012. An Extractive Approach of Text
Summarization of Assamese using WordNet. GWC 2012 6th International
Global Wordnet Conference, pp. 149-154.

Universitas Sumatera Utara

65

Mihalcea, R., & Tarau, P. 2004. TextRank: Bringing order into texts. Association for
Computational
Linguistics.
(Online)

https://web.eecs.umich.edu%2F~mihalcea%2Fpapers%2Fmihalcea.emnlp04.p
df (2 Desember 2015).
Mustaqhfiri, M., Abidin, Z., & Kusumawati, R. 2012. Peringkasan Teks Otomatis
Berita Berbahasa Indonesia Menggunakan Metode Maximum Marginal
Relevance. MATICS.
Pfeiffer,
J.
2014.
Home
·
GravityLabs/goose
Wiki
·
GitHub.
https://github.com/GravityLabs/goose/wiki (diakses 22 Desember 2015).
PhoneArena. 2013. Android's Google Play beats App Store with over 1 billion apps,
now officially largest. http://www.phonearena.com/news/Androids-GooglePlay-beats-App-Store-with-over-1-million-apps-now-officiallylargest_id45680 (diakses 22Desember 2015).
Riandayani, D., Putra, I., & Buana, P. 2014. Comparing fuzzy logics and fuzzy c-means
(FCM) on summarizing indonesian language document. Journal of Theoretical
and Applied Information Technology 59(3): 718-724.

Ridha, A. 2002. Pengindeksan otomatis dengan istilah tunggal untuk dokumen
berbahasa indonesia. Tesis. Institut Pertanian Bogor.
Ridok, A. 2014. Peringkasan dokumen bahasa Indonesia berbasis non-negative matrix
factorization (NMF). Jurnal Teknologi Informasi dan Ilmu Komputer: 39-44.
Saxena, S. 2013. 5 Characteristics of a Good News Report.
http://www.easymedia.in/5-characteristics-good-news-report/ (diakses 27
Nepember 2015)
Setiawan, D. T. 2014. Peringkasan Teks Berita Secara Otomatis Menggunakan Term
Frequency Inverse Document Frequency (TF-IDF). Skripsi. Universitas
Sumatera Utara.
Smith, C. 2014. Introduction to Celery. http://pyvideo.org/speaker/1340/caleb-smith
(diakses 30 Desember 2015).
Solem,

A.
2015.
Periodic
Tasks.
http://docs.celeryproject.org/en/latest/userguide/periodic-tasks.html (diakses 29
Desember 2015).


Steinberger, J., & Ježek, K. 2012. Evaluation measures for text summarization.
Computing and Informatics 28(2): 251-275.
Tala, F. Z. 2003. A Study of Stemming Effects on Information Retrieval in Bahasa
Indonesia. Institute for Logic, Language and Computation Universeit Van
Amsterdam.

Universitas Sumatera Utara

66

Torres-Moreno, J. 2014. Automatic Text Summarization. USA: John Wiley & Sons, Inc.
Valstar, M., Mehu, M., Jiang, B., Pantic, M., & Scherer, K. 2012. Meta-Analysis of the
First Facial Expression Recognition Challenge. Systems, Man, and Cybernetics,
Part B: Cybernetics, IEEE Transactions on 42(4): 966-979.
Zaman, B., & Winarko, E. 2011. Analisis Fitur Kalimat untuk Peringkas Teks Otomatis
pada Bahasa Indonesia. IJCCS-Indonesian Journal of Computing and
Cybernetics Systems 5(2).
Zhang, X. 2007. The Origins of the Modern Chinese Press: The influence of the
Protestant misionary press in late Qing China. Abingdon, UK: Rouledge.

Universitas Sumatera Utara

BAB 3
ANALISIS DAN PERANCANGAN SISTEM

Bab ini akan menjelaskan beberapa hal di antaranya arsitektur umum sistem, sumber
data yang digunakan, tampilan aplikasi serta analisis perancangan yang bertujuan untuk
mengidentifikasi permasalahan yang ada pada sistem tersebut. Analisis ini diperlukan
sebagai dasar perancangan sistem untuk mengimplementasikan algoritma TextTeaser
dalam meringkas teks berita.
Arsitektur Umum
Pada awalnya sistem menyediakan konten (teks utuh berita, teks ringkasan, URL berita
asli, URL gambar berita) dengan mengambil data berita dari situs berita (di internet)
secara berkala menggunakan celery periodic tasks. Pada proses tersebut terdapat
beberapa tahap antara lain yang pertama web data extraction untuk mengambil URL
dari sebuah halaman yang diberikan, selanjutnya menggunakan URL berita yang
didapatkan diproses lagi menggunakan web data extraction untuk mengambil isi berita
(teks isi berita dan URL gambar terkait untuk keperluan penyajian aplikasi Android).
Kemudian tahap yang kedua adalah melakukan pembersihan teks berita sehingga teks
berita siap untuk memulai proses algoritma (TextTeaser dan TextRank). Seterusnya
tahap ketiga setelah ringkasan teks baik menggunakan TextTeaser maupun TextRank
diperoleh adalah mengevaluasi hasil ringkasan kedua algoritma, dan yang terakhir
menyimpan data dalam database.
Aplikasi yang terpasang pada perangkat Android berguna membaca konten
yang sudah disediakan oleh sistem. Pengguna aplikasi dapat memilih dan mendapatkan
berita melalui kategori default yang sudah ada. Kategori default yang diberikan
merupakan kategori umum yang biasa ada pada situs berita online misalnya kategori
Economy, National, Technology, dan sebagainya. Kemudian pengguna bisa
mendapatkan berita yang sesuai kebutuhan melalui fitur pencarian yang diberikan.
Query yang didapatkan dari aplikasi kemudian dikirim server lokal. Kemudian pada

Universitas Sumatera Utara

30

server akan dicari judul berita berdasarkan query yang dikirim. Berita yang didapatkan
kemudian diubah dalam bentuk string JSON. Terakhir aplikasi akan mengolah data
JSON dari server untuk ditampilkan. Berikut pada gambar 3.1 arsitektur umum sistem
peringkas berita online yang akan dibuat.

Gambar 3.1 Arsitektur umum sistem peringkas berita
Analisis Data
Secara umum penelitian ini menggunakan dua jenis data yaitu data berita dan data
stopword.

Universitas Sumatera Utara

31

Data Berita
Data berita seperti judul, berita dan teks berita diperoleh dari situs berita online. Data
berita diambil menggunakan teknik web data extraction halaman berita. Beberapa
contoh daftar halaman berita yang akan diproses dapat dilihat pada tabel 3.1. Terdapat
dua kriteria data yang akan diambil melalui teknik web data extraction seperti data URL
berita dan data berita.
Tabel 3.1 Contoh URL situs berita
No.
1.
2.
3.
4.
5

Kategori Berita
Gaya Hidup
Teknologi
Ekonomi
Internasional
Otomotif

Sumber Berita
Liputan6.com
Liputan6.com
Kompas
Kompas
Kompas

URL
http://lifestyle.liputan6.com
http://tekno.liputan6.com
http://ekonomi.kompas.com
http://internasional.kompas.com
http://otomotif.kompas.com

Web data extraction merupakan teknik untuk mengambil data tertentu dari
sebuah halaman website di internet untuk kemudian disimpan pada media penyimpan
lokal atau database. Pada penelitian ini, web data extraction bekerja dengan dua tujuan
yaitu yang pertama mengambil semua URL pada halaman target seperti
“http://otomotif.kompas.com”. Pada halaman tersebut akan diambil semua URL dengan
domain yang sama untuk menghindari pengambilan URL yang tidak relevan dengan
halaman seperti URL iklan atau media sosial. Kemudian tujuan kedua adalah untuk
mengambil isi berita baik teks berita maupun gambar berita.
Kemudian hasil dari pengambilan data melalui web data extraction berupa URL
berita. Diproses lagi untuk untuk memperoleh judul dan teks berita. Namun masalah
terjadi ketika sebuah URL berita yang berisi hanya sebagian isi berita keseluruhan.
Untuk itu dokumen HTML yang diperoleh dari Python Goose terlebih dahulu
ditentukan lokasi indikator berita bersambung. Pada berita kompas.com ditemukan
lokasi indikator berita bersambung dengan tampilan seperti gambar 3.2. Kemudian pada
dokumen HTML, secara manual lokasi indikator tersebut dicari sehingga ditemukan
pada tag "div" dengan class "kcm-read-paging mt2". Berita bersambung pada
kompas.com memiliki opsi untuk membuka halaman berita utuh berdasarkan berita
bersambung yang dideteksi.
Misalnya pada halaman berita bersambung kompas.com:
“http://tekno.kompas.com/read/2015/07/26/11120087/Ini.5.Aplikasi.yang.Wajib.Diha
pus.dari.Android”,

Universitas Sumatera Utara

32

jika ditelusuri halaman satu per satu diperoleh URL:
“http://tekno.kompas.com/read/2015/07/26/11120087/Ini.5.Aplikasi.yang.Wajib.Diha
pus.dari.Android?page=2”
untuk

menuju

halaman

kedua

berita

(ditandai

dengan

akhiran

“?page=nomor_halaman”). Karena berita kompas.com menyediakan URL untuk
menuju halaman utuh berita tersebut yaitu:
“http://tekno.kompas.com/read/2015/07/26/11120087/Ini.5.Aplikasi.yang.Wajib.Diha
pus.dari.Android?page=all”.
Maka selanjutnya dari URL berita utuh (dengan akhiran “?page=all”) yang didapatkan
diproses sehingga isi berita utuh berhasil didapatkan.

Gambar 3.2 Indikasi berita bersambung tekno.kompas.com
Selanjutnya untuk berita liputan6.com, lokasi indikator berita bersambung
ditemukan pada tampilan seperti gambar 3.3 dengan tag “section” ber-class “readpage--multi-page--pagination”.

Universitas Sumatera Utara

33

Gambar 3.3 Indikasi berita bersambung health.liputan6.com
Berbeda dengan berita kompas.com, berita liputan6.com tidak menyediakan
opsi untuk membuka berita utuh. Sehingga, tahapan yang dilakukan setelah URL
dideteksi sebagai berita bersambung adalah mengambil URL dari indikator. Misalnya
untuk berita bersambung dengan URL:
“http://health.liputan6.com/read/2396905/13-cara-sayangi-jantung”
Pada indikator akan ditemukan URL untuk menuju halaman selanjutnya seperti:
“http://health.liputan6.com/read/2396905/13-cara-sayangi-jantung?p=0”,
“http://health.liputan6.com/read/2396905/13-cara-sayangi-jantung?p=1”,
dan seterusnya dengan indikator halaman berupa akhiran “?p=nomor_halaman”.
Selanjutnya semua URL diproses dengan dengan menggunakan web data extraction,
kemudian hasil dari masing-masing URL disatukan.
Untuk berita detik.com, proses yang dilakukan sedikit berbeda. Pada indikator
berita bersambung yang dideteksi, detik.com tidak menyediakan daftar URL berita
lainnya. Sehingga URL akan dibuat sendiri pada sistem. URL yang dibuat berjumlah
sesuai jumlah halaman berita yang ada. Misalnya dideteksi sebuah URL berita
detik.com bersambung:
“http://health.detik.com/read/2015/12/23/201611/3103649/766/5-alasan-tidurkelamaan-tidak-lebih-baik-dari-kurang-tidur”.
Alamat URL kemudian dipotong menjadi dua bagian:
1. “http://health.detik.com/read/2015/12/23/201611/3103649/766”
2. “5-alasan-tidur-kelamaan-tidak-lebih-baik-dari-kurang-tidur”

Universitas Sumatera Utara

34

Setelah lokasi indikator pada tampilan ditemukan terlebih dahulu, kemudian
mencari lokasi kode program tampilan tersebut. Sehingga dari indikator yang
ditemukan tag “div” per-class “multipage multipage2” seperti gambar 3.4. Di dalam
kode tersebut terdapat tag “span” dengan nilai jumlah berita keseluruhan. Misalnya
pada gambar 3.4, tag “span” terdapat teks “1 dari 6”, berarti halaman berita terdiri dari
6 halaman. Selanjutnya pada sistem kedua URL hasil pemotongan sebelumnya
disatukan dengan penambahan indikasi halaman berita selanjutnya di tengah, misalnya
dengan potongan pertama:
“http://health.detik.com/read/2015/12/23/201611/3103649/766”,
kemudian disambung dengan nomor_halaman misalnya “/2/”, seterusnya disambung
dengan potongan kedua sehingga akan diperoleh beberapa alamat URL seperti:



“http://health.detik.com/read/2015/12/23/201611/3103649/766/2/5-alasantidur-kelamaan-tidak-lebih-baik-dari-kurang-tidur”
“http://health.detik.com/read/2015/12/23/201611/3103649/766/3/5-alasantidur-kelamaan-tidak-lebih-baik-dari-kurang-tidur”, dan seterusnya.
Dari URL yang dibuat terdapat indikasi halaman berita (cetak tebal, miring, dan

garis bawah).

...
1 dari 6
...



Gambar 3.4 Indikasi berita bersambung health.detik.com
Setelah semua alamat URL berhasil dibuat, langkah selanjutnya memproses
alamat URL untuk memperoleh isi berita kemudian isi berita dari masing-masing alamat
URL disatukan untuk disimpan ke dalam database.
Data stopword
Kata-kata umum (common word) yang yang tidak bermakna (stopword) berguna untuk
mengurangi kompleksitas kalkulasi penghitungan skor fitur teks (text feature)..
Stopword yang digunakan berasal dari penelitian (Tala, 2003). Pada penelitian tersebut
daftar stopword ditentukan berdasarkan hasil analisis frekuensi kata pada total 3160
dokumen berita berbahasa Indonesia. Dari dokumen tersebut, setelah nama orang, nama

Universitas Sumatera Utara

35

kota, nama organisasi, nama negara, dan sebagainya dihilangkan, diperoleh 50000 (lima
puluh ribu) kata unik.
Pada penelitian yang dilakukan Tala (2003), terbukti dengan menghilangkan
stopword dari dokumen yang akan diteliti akan meningkatkan nilai Precision dan
R-Precision (indikator pengukuran kualitas hasil). Contoh kata-kata tersebut dapat
dilihat pada tabel 3.2. Daftar kata stopword disimpan dalam file teks (*.txt).
Tabel 3.2 Contoh stopword
No.
1
2
3
4
5

Kata
akan
di
dengan
pada
yang

Analisis Sistem
Setiap pembangunan sebuah sistem aplikasi diperlukan perancangan tahap-tahap (alur)
bagaimana sistem bekerja. Salah satunya adalah identifikasi masalah. Identifikasi
permasalahan yang ada pada sistem mencakup software, user, hingga output yang
dihasilkan sistem (Setiawan, 2014).
Penelitian ini memiliki tiga proses utama yaitu ekstraksi isi berita, pembersihan
isi berita, peringkasan isi berita.
Ekstraksi isi berita
URL berita yang diperoleh akan diproses lagi untuk mendapatkan teks berita. Untuk
mendapatkannya digunakan Python Newspaper dan Python Goose yang secara otomatis
menentukan bagian halaman berita yang merupakan teks berita. Karena pada umumnya
halaman berita memiliki bagian-bagian yang bukan isi berita seperti navigasi halaman,
kumpulan link berita terkait, hingga banner iklan. Kemudian pada tahap ini berita
berpotong-potong juga akan ditangani.
Pada tahap ini akan dihasilkan data antara lain judul berita, teks isi berita yang
akan digunakan pada proses peringkasan. Selain itu data lain yang diperoleh adalah
tanggal publikasi berita, gambar utama berita yang digunakan untuk keperluan tampilan
aplikasi end-user.

Universitas Sumatera Utara

36

Pembersihan teks berita
Untuk menghindari mengolah data yang bukan merupakan isi berita. Hasil ekstraksi isi
berita terlebih dahulu dibersihkan. Beberapa data yang perlu dibersihkan meliputi judul
atau keterangan di bawah gambar (caption gambar), selipan link berita terkait, inisial
penulis, inisial sumber berita yang biasanya berada pada awal kalimat, hingga
penyelipan inisial sumber berita pada judul berita. Karena setiap sumber berita memiliki
kriteria data yang berbeda, maka masing-masing sumber berita akan dibersihkan cara
yang berbeda pula.
Persiapan proses peringkasan
Setelah isi berita dibersihkan tahap selanjutnya adalah mempersiapkan teks untuk
proses peringkasan (text preprocessing).
Pada tahap text preprocessing, teks berita terlebih dahulu dipotong menjadi kalimat.
Pemotongan ini disebut sentence tokenizing yang menggunakan NLTK sentence
tokenizer. Tujuan menggunakan NLTK sentence tokenizer adalah untuk memastikan
deteksi pembatas kalimat yang lebih baik. Hal ini tentu jauh lebih efektif daripada
memotong kalimat hanya berdasarkan pembatas (delimiter) seperti titik, tanda seru,
tanda tanya. Contoh sentence tokenizing ini adalah:
“Saya bertemu dengan Prof. Robert, MD, dan Dr. Abdullah tadi pagi di laboratorium”
Kalimat tersebut jika menggunakan pemotongan menggunakan tanda baca
(contohnya tanda titik) sebagai indikator pemotongan, maka hasilnya terdapat tiga
kalimat: “Saya bertemu dengan Prof”, “Robert, MD, dan Dr”, “Abdullah tadi pagi di
laboratorium”. Berbeda jika menggunakan NTLK sentence tokenizer, hasil yang
didapatkan hanya ada satu kalimat: “Saya bertemu dengan Prof. Robert, MD, dan
Dr. Abdullah tadi pagi di laboratorium”.
Dari kalimat-kalimat hasil pemotongan, selanjutnya tanda baca seperti tanda
seru (!), tanda tanya (?), tanda titik (.), dan karakter lainnya yang bukan merupakan
huruf abjad dihilangkan. Untuk menghilangkan semua tanda baca yang bukan abjad
tersebut digunakan fungsi pemeriksa karakter “isalnum”. Setiap karakter yang diperiksa
dengan fungsi ini dan ternyata bukan huruf abjad, akan dihapus.
Tahap selanjutnya adalah pemotongan kalimat menjadi kata. Karena
sebelumnya semua pungtuasi pada kalimat sudah dihilangkan, maka proses
pemotongan menjadi kata hanya dilakukan berdasarkan karakter pembatas (delimiter)

Universitas Sumatera Utara

37

berupa spasi. Setelah itu semua huruf dalam kata diubah menjadi huruf kecil dengan
menggunakan fungsi “lower”. Kemudian yang terakhir adalah menghilangkan
stopword dengan mencocokkan setiap kata dalam teks berita dengan daftar kata
stopword yang sudah disediakan. Setiap kata yang ada pada daftar stopword akan
dihapus.
Proses text preprocessing dapat digambarkan dalam gambar 3.5 :

Mulai

Berhenti

Judul dan isi
berita

Pemotongan teks
menjadi kalimat

Menghilangkan
stopword

Mengubah kalimat
menjadi kata

Menghilangkan
pungtuasi pada
teks

Gambar 3.5 Flowchart text preprocessing
Contoh bagaimana penerapan text preprocessing, misalkan sebuah kalimat seperti pada
gambar 3.6.
Saya bertemu dengan Prof. Robert, MD, dan Dr. Abdullah tadi pagi di laboratorium.
Setelah itu saya masuk ke kelas Interaksi Manusia dan Komputer (IMK).

Gambar 3.6 Contoh input teks
Kalimat pada gambar 3.6, setelah melalui proses pemotongan kalimat (sentence
tokenizing) akan menghasilkan dua kalimat:
i. “Saya bertemu dengan Prof. Robert, MD dan Dr. Abdullah tadi pagi di
laboratorium”,
ii. “Setelah itu saya masuk ke kelas Interaksi Manusia dan Komputer (IMK)”.
Proses selanjutnya adalah menghilangkan tanda baca pada teks hingga
menghasilkan seperti gambar 3.7.
Saya bertemu dengan Prof Robert MD dan Dr Abdullah tadi pagi di laboratorium Setelah
itu saya masuk ke kelas Interaksi Manusia dan Komputer IMK

Gambar 3.7 Teks setelah menghilangkan tanda baca

Universitas Sumatera Utara

38

Teks pada gambar 3.7 selanjutnya dipisahkan menjadi kata dengan
menggunakan pemisahan berupa tanda spasi sehingga menghasilkan 24 kata. Kata-kata
tersebut kemudian diubah menjadi huruf kecil. Sehingga menghasilkan kumpulan kata
seperti gambar 3.8.
"saya", "bertemu", "dengan", "prof", "robert", "md", "dan", "dr", "abdullah", "tadi",
"pagi", "di", "laboratorium", "setelah", "itu", "saya", "masuk", "ke", "kelas", "interaksi",
"manusia", "dan", "komputer", "imk"

Gambar 3.8 Hasil penguraian kata dari teks dan huruf kecil
Proses text preprocessing yang terakhir adalah menghilangkan stopword. Hal
ini dilakukan dengan cara membandingkan ke koleksi stopword dari penelitian Tala
(2003). Setiap kata pada gambar 3.8 yang sama dengan koleksi stopword (Tala, 2003)
akan dihapus sehingga kata yang tersisa adalah kata yang ada pada gambar 3.9.

“bertemu”, “prof”, “robert”, “md”, “dr”, “abdullah”, “pagi”, “laboratorium”, “setelah”,
“masuk”, “kelas”, “interaksi”, “manusia”, “komputer”, “imk”

Gambar 3.9 Kata-kata setelah penghapusan stopword
Menentukan frekuensi keyword
Sebelum memulai proses peringkasan, keyword atau kata yang sering muncul pada teks
didapatkan terlebih dahulu. Untuk mendapatkannya, seluruh kata berulang dalam teks
hasil text preprocessing dijadikan satu. Seterusnya setiap kata dihitung jumlah
kemunculannya pada teks asli sehingga dihasilkan kata unik dan berapa kali kata
tersebut muncul. Misalkan input teks berita seperti gambar 3.10.
Judul: Kapolri Bela Anak Buah di Kerusuhan Banyuwangi
Teks: Kapolri Jenderal Badrodin Haiti tak menyoalkan tembakan yang dilepaskan anak
buahnya saat kerusuhan anti tambang di Kabupaten Banyuwangi, Jawa Timur. Insiden
melukai tiga warga, satu di antaranya bocah. "Boleh-boleh saja (menembak)", kata Badrodin
di Mabes Polri, Jalan Trunojoyo, Kebayoran Baru, Jakarta Selatan. Kapolri mengatakan,
seharusnya warga tak berlaku anarkis. Apalagi, penambangan di sana berizin. Resmi.
Menurut Badrodin, saat kerusuhan posisi anak buahnya melindungi dan menjaga agar tak ada
perusakan. "Siapa yang melanggar hukum harus ditindak tegas" ujar Kapolri.

Gambar 3.10 Input judul dan teks berita

Universitas Sumatera Utara

39

Dari teks yang diberikan akan diperoleh tujuh kalimat yaitu:
K.1.

Kapolri Jenderal Badrodin Haiti tak menyoalkan tembakan yang dilepaskan
anak buahnya saat kerusuhan antitambang di Kabupaten Banyuwangi, Jawa
Timur.

K.2.

Insiden melukai tiga warga, satu di antaranya bocah.

K.3.

"Boleh-boleh saja (menembak)," kata Badrodin di Mabes Polri, Jalan
Trunojoyo, Kebayoran Baru, Jakarta Selatan.

K.4.

Kapolri mengatakan, seharusnya warga tak berlaku anarkis.

K.5.

Apalagi, penambangan di sana berizin resmi.

K.6.

Menurut Badrodin, saat kerusuhan posisi anak buahnya melindungi dan
menjaga agar tak ada perusakan.

K.7.

"Siapa yang melanggar hukum harus ditindak tegas," ujar Kapolri.
Dari teks berita juga diperoleh total 48 kata dan 40 kata unik (kata tanpa

perulangan). Selanjutnya 40 kata unik diurutkan dari terbesar ke terkecil, sepuluh dari
kata unik diambil seperti tabel 3.3.
Tabel 3.3 Contoh top keyword
Kata
kapolri
badrodin
buahnya
warga
kerusuhan
anak
posisi
kabupaten
mabes
ditindak

Frekuensi
3
3
2
2
2
2
1
1
1
1

Kemudian dari top keyword yang diperoleh dihitung skor masing-masing kata
menggunakan persamaan (4) dan variabel total kata unik dalam teks (|�|) bernilai 48
sehingga dihasilkan seperti tabel 3.4.

Universitas Sumatera Utara

40

Tabel 3.4 Skor keyword
Kata
kapolri
badrodin
buahnya
warga
kerusuhan
anak
posisi
kabupaten
mabes
ditindak

Frekuensi
3
3
2
2
2
2
1
1
1
1

Skor
0.09375
0.09375
0.0625
0.0625
0.0625
0.0625
0.03125
0.03125
0.03125
0.03125

Top keyword sudah diperoleh, proses selanjutnya adalah menghitung skor fitur
teks density-based selection (DBS) dan summation-based selection (SBS). Langkah
pertama menghitung skor fitur DBS pada setiap kalimat dalam teks. Misalkan untuk
mencari skor DBS untuk kalimat pertama (K1) teks berita pada gambar 3.10, “Kapolri
Jenderal Badrodin Haiti tak menyoalkan tembakan yang dilepaskan anak buahnya saat
kerusuhan antitambang di Kabupaten Banyuwangi, Jawa Timur”. Kalimat tersebut di
ubah ke huruf kecil dan dipilah menjadi kata. Kemudian setiap kata dalam kalimat
dibandingkan dengan kata yang ada dalam top keyword. Total kata yang ada pada
kalimat dan top keyword merupakan nilai

pada persamaan (5). Proses tersebut dapat

diilustrasikan pada tabel 3.5.

Tabel 3.5 Menghitung nilai variabel DBS
i
0
1
2

Kata
kapolri
jenderal
badrodin

K
kapolri

Skor
0.09375

Distance
-

Sum
-

badrodin

0.09375

2-0=2

Skor i0 ×i2 /Distance2 2
= 0.002197

3
4
5
6
7
8
9

haiti
tak
menyoalkan
tembakan
yang
dilepaskan
anak

anak

0.0625

9-2=7

10

buahnya

buahnya

0.0625

10-9=1

Skor i2 ×i9 /Distance9 2
= 0.000120
Skor i9 ×i10 /Distance10 2
= 0.003906

11

saat

Universitas Sumatera Utara

41

Tabel 3.5 Menghitung nilai variabel DBS (lanjutan)
i
12

Kata
kerusuhan

K
kerusuhan

Skor
0.0625

Distance
12-10=2

Sum
Skor i10 ×i12 /Distance12 2
= 0.000977

13
14
15

antitambang
di
kabupaten

kabupaten

0.03125

15-12=3

Skor i12 ×i15 /Distance15 2
= 0.000217

16
17
18

banyuwangi
jawa
timur
Total K

6+1 = 7

Total = 0.007417

Pada tabel 3.5, Skor diperoleh dari top keyword sesuai dengan kata terkait
misalnya pada baris pertama tabel (kata “kapolri”), pada top keyword memiliki skor
0.09375. Distance mengacu pada indeks kata sekarang (misalnya kata “badrodin” pada
indeks ke 2, i2) di kurang indeks kata bagian dari K sebelumnya (misalnya kata
“kapolri” pada indeks pertama, i0). Kemudian kolom Sum adalah hasil perhitungan Skor
indeks sekarang (misalnya indeks ke-15 atau i15) dikalikan dengan Skor indeks bagian
dari K sebelumnya (indeks ke-12 atau i12), hasilnya dibagi Distance indeks sekarang
pangkat dua.
Contoh menghitung skor pada indeks ke-15 (i15) kata “kabupaten”:
Diketahui, Skor i12 (sebelumnya) = 0.0625, Skor i15 (sekarang) = 0.03125, Distance
i15 = 3, jadi 0.0625 × 0.03125 ÷ 32 = 0.000217.

Langkah selanjutnya adalah menghitung skor DBS dengan nilai total K dan total
skor (Sum) didapatkan.
Diketahui,
Total K: 7
Total Sum: 0.007417
Jadi,
=

=

×

+

× +
= 0.008476

×

× .

Universitas Sumatera Utara

42

Nilai yang diperoleh merupakan hasil akhir skor fitur DBS kalimat pertama
input teks pada gambar 3.10. Begitu juga seterusnya untuk kalimat-kalimat lain dalam
teks.
Fitur teks selanjutnya yang akan dihitung adalah SBS. Menggunakan kalimat
yang sama (kalimat K1) seperti pada penghitungan DBS. Setelah kalimat diubah
menjadi huruf kecil dan dipilah menjadi kata-kata. Setiap kata pada kalimat yang juga
berada pada top keyword akan diambil skornya untuk selanjutnya ditotalkan. Hal ini
dapat dilihat pada tabel 3.6.
Tabel 3.6 Skor total SBS
i
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

Kata
kapolri
jenderal
badrodin
haiti
tak
menyoalkan
tembakan
yang
dilepaskan
anak
buahnya
saat
kerusuhan
antitambang
di
kabupaten
banyuwangi
jawa
timur
Banyak kata: 19

K
kapolri

Skor
0.09375

badrodin

0.09375

anak
buahnya

0.0625
0.0625

kerusuhan

0.0625

kabupaten

0.03125

Skor total: 0.406250

K pada tabel 3.6 memiliki keterangan yang sama seperti yang ada pada tabel 3.5
yaitu kata-kata pada kalimat yang juga ada dalam top keyword. Kemudian skor total
dan banyak kata yang diperoleh seperti pada tabel 3.6 dihitung dengan:
Diketahui,
Banyak kata (| |): 19
Skor total: 0.406250
Jadi,
=

=

| |

×

× .

= 0.021382

Universitas Sumatera Utara

43

Sehingga diperoleh skor SBS yaitu 0.021382. Begitu juga selanjutnya untuk
kalimat-kalimat lainnya dalam teks berita.
Skor fitur DBS dan fitur SBS sudah diperoleh, langkah berikutnya adalah
menghitung fitur frekuensi keyword menggunakan persamaan (7) seperti:
=

.

= 0.149289

+ .
×

Sehingga

diperoleh

skor

elemen

frekuensi

keyword

=

0.149289.

Kesimpulannya, untuk memperoleh skor frekuensi keyword, yang pertama dicari adalah
top keyword pada teks, kemudian skor fitur DBS dan SBS setiap kalimat dalam teks.
Menentukan skor judul teks
Untuk mendapatkan skor judul teks, setiap kalimat dalam teks dipilah menjadi kata
Contohnya pada kalimat K.1, stopword pada kata-kata yang dihasilkan dihilangkan,
hasilnya dibandingkan lagi dengan kata-kata dalam judul teks seperti tabel 3.7.

Tabel 3.7 Hitung fitur judul berita
No
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

K
kapolri
jenderal
badrodin
haiti
tak
menyoalkan
tembakan
yang
dilepaskan
anak
buahnya
saat
kerusuhan
antitambang
di
kabupaten
banyuwangi
jawa
timur

Total:
19 kata

Stopword?
0
0
0
0
1
0
0
1
0
0
0
1
0
0
1
0
0
0
0
Total
stopword:
4 kata

Sisa kata K1
kapolri
jenderal
badrodin
haiti
menyoalkan
tembakan

T
kapolri
bela
anak
buah
di
kerusuhan
banyuwangi

dilepaskan
anak
buahnya

anak

kerusuhan
antitambang
kabupaten
banyuwangi
jawa
timur
Total nonstopword:
15 kata

K∩T
kapolri

kerusuhan

banyuwangi

Total:
6 kata

Total:
4 kata

Universitas Sumatera Utara

44

Dari tabel K merupakan semua kata (termasuk stopword) yang ada pada kalimat
K1, T adalah setiap kata (bukan stopword) yang terdapat pada judul, kemudian K∩T
adalah setiap kata pada K yang juga ada pada T.
Untuk memperoleh skor judul teks pada kalimat K1, digunakan persamaan (1).
Substitusi nilai yang didapat dari tabel 3.7 ke dalam persamaan (1) adalah
=

4

×

, sehingga diperoleh nilai 0,666667. Begitu juga seterusnya untuk kalimat-kalimat

lainnya dalam teks berita.
Menentukan skor panjang kalimat

Untuk mendapatkan skor panjang kalimat, digunakan nilai ideal 20 (Balbin, 2011) dan
jumlah semua kata pada kalimat (termasuk stopword). Misalkan kalimat yang akan
dipakai adalah kalimat K1, berdasarkan tabel 3.7 diketahui jumlah semua kata pada
kalimat | | adalah 19. Selanjutnya nilai dapat dihitung menggunakan persamaan (3),


− 9

. Jadi, skor panjang kalimat untuk kalimat K1 adalah 0,950000.

Menentukan skor posisi kalimat
Dalam proses text preprocessing, terdapat sentence tokenizing yang akan menghasilkan
list kalimat dari teks yang diberikan. Dalam list, setiap kalimat memiliki nomor indeks
yang dimulai dari nol (zero-based numbering). Misalkan dari teks dalam gambar 3.10,
kalimat yang akan diringkas adalah kalimat pertama (K.1). Indeks kalimat tersebut
dalam list adalah 0. Berdasarkan persamaan (2), maka nilai o adalah 0 (nol),
dan nilai S (jumlah kalimat dalam teks) adalah 7 sehingga dari

×

didapat 0.

Kemudian nilai sentence position tersebut dibandingkan pada tabel 2.1 dan diperoleh
distributed probability yang bernilai 0 (nilai skor posisi kalimat).
Menentukan skor total
Setelah semua skor dari kalimat K.1 sudah didapatkan, maka skor tersebut dihitung
menggunakan persamaan (8) seperti:
Diketahui,
Skor judul teks (TS): 0,666667
Skor frekuensi keyword (KF): 0,149289
Skor panjang kalimat (SL): 0,950000
Skor posisi kalimat (SP): 0,000000

Universitas Sumatera Utara

45

Jadi,
=

=

+ . + �∙ . +
.
,
+ . + ,

∙ . + �∙ .

× . + ,
.

× . + × .

=

,

Jadi, total skor untuk kalimat K.1 adalah 0,443394. Selanjutnya skor, kalimat
yang diproses, dan indeks kalimat disimpan dalam list untuk diproses. Kemudian untuk
kalimat K.2 sampai K.7, proses penghitungan skor sama seperti kalimat K.1.
Langkah terakhir untuk memperoleh ringkasan adalah dengan mengurutkan list
berdasarkan skor total secara descending (dari besar ke kecil). Kemudian lima kalimat
pertama diambil untuk disimpan dalam database.
Setelah hasil ringkasan menggunakan TextTeaser didapatkan, selanjutnya
meringkas teks menggunakan TextRank. Untuk hal tersebut digunakan Sumy, library
Python untuk meringkas teks. Teks asli berita yang diperoleh seperti pada gambar 3.9,
selanjutnya

diproses

menggunakan

class

“TextRankSummarizer”

sehingga

menghasilkan teks ringkasan untuk selanjutnya disimpan dalam database.
Perancangan Sistem
Penelitian ini mencakup pembuatan sebuah sistem peringkas berita online yang terdiri
dari server dan aplikasi untuk end-user. Server pada sistem bekerja untuk mengambil
berita dari internet, kemudian meringkasnya. Kemudian aplikasi Android untuk
end-user yang secara umum berguna untuk menyaji hasil ringkasan.
Perancangan antarmuka sistem
Sistem peringkas berita yang akan dibangun terdiri dari server dan aplikasi klien
(aplikasi Android). Tampilan aplikasi server hanya berupa console yang menampilkan
proses request atau logging seperti gambar 3.11.

(1) ũGET /peber_api/news/7540/ HTTP/1.1Ū 200 2534
(2) ũGET /peber_api/news/?news_category=Lifestyle HTTP/1.1Ū 200 40656
(3) ũPATCH /peber_api/update_user_desc/15/ HTTP/1.1Ū 200 124
(4) ũPOST /peber_api/user/ HTTP/1.1Ū 201 210

Gambar 3.11 Tampilan console server sistem peringkas

Universitas Sumatera Utara

46

Pada gambar 3.11, terdapat empat jenis tampilan untuk setiap metode akses
server (GET, POST, PATCH) di mana masing-masing memiliki bagian (misalnya untuk
jenis pertama (1)) yang dapat diuraikan menjadi seperti tabel 3.8.
Tabel 3.8 Keterangan bagian-bagian tampilan server
GET
Metode akses

/peber_api/news/7540/
Alamat yang diakses

HTTP/1.1
Protokol yang
digunakan

200
2534
Kode respons Ukuran data
dari server
respons
(Byte)

Kemudian aplikasi klien berupa aplikasi Android memiliki beberapa halaman
aplikasi yaitu halaman sign in, sign up, home, news details, settings, choose news
source.
1. Sign In
Halaman sign in terbuka ketika aplikasi dibuka untuk yang pertama kalinya. Rancangan
halaman sign in terlihat pada gambar 3.12 (1) terdapat dua text box dan dua tombol.
Dua text box berfungsi untuk input username dan password pengguna. Kemudian dua
tombol masing-masing berfungsi untuk lanjut proses sign in dan sign up jika belum ada
username dan password.

Gambar 3.12 Rancangan (1) halaman sign in dan (2) halaman sign up

Universitas Sumatera Utara

47

2. Sign Up
Halaman sign up berguna untuk mendaftar dalam sistem. Rancangan halaman sign up
dapat lihat pada gambar 3.12 (2), memiliki empat text box untuk username, full name,
password, dan confirm password kemudian terdapat satu tombol untuk lanjut proses.
3. Home
Halaman home merupakan halaman utama penyajian daftar berita pada aplikasi. Pada
halaman ini terdapat bagian logo aplikasi, judul aplikasi, dan daftar berita. Pada gambar
3.13, tanda merah dengan label (D) merupakan bagian daftar (list) berita. List berita
yang disajikan terdiri dari judul berita, sumber berita, dan tanggal publikasi berita.

Gambar 3.13 Rancangan halaman home
4. News Details
Halaman news details menampilkan sebuah data berita yang lebih lengkap seperti teks
ringkasan, gambar berita bersangkutan. Perancangan untuk halaman ini dapat dilihat
pada gambar 3.14. Rancangan halaman news details terdapat 6 objek berita yang akan
ditampilkan yaitu (1) gambar untuk ilustrasi berita, (2) judul berita, (3) sumber berita
diperoleh beserta kategorinya, (4) tanggal berita dipublikasikan, (5) hasil ringkasan oleh
sistem, (6) tombol untuk buka situs berita terkait.

Universitas Sumatera Utara

48

Gambar 3.14 Rancangan halaman news details
5. Settings
Halaman settings berisi informasi user dan kategori-kategori berita yang dipilihnya.
Perancangan antarmuka untuk halaman settings dapat dilihat pada gambar 3.15. Pada
rancangan yang dibuat, terdapat dua bagian yaitu bagian untuk informasi user (1),
kemudian daftar kategori berita yang dipilih (2). Pada bagian daftar kategori terpilih
terdapat sebuah tombol yang berfungsi untuk membuka halaman untuk memilih
kategori berita.

Gambar 3.15 Rancangan halaman Settings

Universitas Sumatera Utara

49

6. Choose News Source
Halaman choose news source merupakan halaman untuk memilih kategori berita yang
akan ditampilkan di halaman home. Perancangan halaman choose news source berdapat
dua objek, daftar kategori dan tombol untuk konfirmasi pilihan. Objek daftar kategori
menampilkan semua kategori berita yang ada pada sistem. Kemudian objek tombol
Choose untuk mengirim kategori berita yang dipilih. Rancangan choose news source
dapat dilihat pada

Gambar 3.16 Rancangan halaman Choose News Source

Universitas Sumatera Utara

BAB 4
IMPLEMENTASI DAN PENGUJIAN SISTEM

Pada bab ini akan dijelaskan tentang proses implementasi algoritma TextTeaser, sesuai
perancangan sistem yang telah dilakukan di bab 3 serta melakukan pengujian sistem
yang telah dibangun.
Implementasi Sistem
Berdasarkan hasil analisis dan perancangan sistem yang telah dilakukan, maka
dilakukan implementasi sistem peringkasan teks berita secara otomatis menggunakan
algoritma TextTeaser ke dalam bentuk program komputer.
Spesifikasi perangkat keras yang digunakan
Dalam membangun sistem peringkasan berita, penelitian ini menggunakan dua jenis
perangkat, komputer laptop dan Android Smartphone. Komputer laptop bertindak
sebagai pemroses keseluruhan sistem seperti ekstraksi isi berita, jalankan algoritma,
kelola database, hingga untuk menyediakan RESTful API untuk digunakan aplikasi
klien (aplikasi Android). Spesifikasi perangkat keras komputer terdiri dari:
1. Prosesor AMD A6-4455M APU with Radeon™ HD Graphics 2.1GHz
2. Kapasitas Hardisk 500GB
3. Memori RAM 4GB
Selain komputer laptop, pada penelitian ini juga digunakan perangkat keras untuk uji
aplikasi Android berupa Smartphone Android dengan spesifikasi:
1. CPU Qualcomm MSM8625 Dual Core 1GHz ARMv7
2. Memori RAM 512MB

Universitas Sumatera Utara

51

Spesifikasi perangkat lunak yang digunakan
Pada penelitian ini digunakan spesifikasi perangkat lunak seperti:
1. Microsoft Windows™ 8.1 Pro
2. Python 2.7.10
3. Android OS, v4.1 (Jelly Bean)
4. Eclipse IDE (Luna)
5. JetBrains PyCharm (4.5.4)
Implementasi Perancangan Antarmuka
Tampilan halaman sign in
Halaman ini merupakan halaman pertama yang ditampilkan kepada pengguna sebelum
masuk ke dalam sistem. Pengguna dapat memasukkan username dan password pada
kotak teks yang tersedia. Tampilan sign in dapat dilihat di gambar 4.1, bagian nomor
(1) merupakan formulir untuk memasukkan username dan password kemudian bagian
nomor (2) terdapat dua tombol yaitu sign in dan sign up. Tombol sign in berfungsi untuk
melanjutkan proses pemeriksaan autentikasi data pengguna. Tombol berikutnya yaitu
sign up yang berguna untuk mendaftarkan akun baru jika pengguna belum terdaftar
dalam sistem.

Gambar 4.1 Tampilan halaman sign in
Tampilan halaman sign up
Halaman ini tujukan untuk pengguna yang belum terdaftar dalam sistem. Implementasi
rancangan halaman sign up dapat dilihat pada gambar 4.2. Pada halaman terdapat dua

Universitas Sumatera Utara

52

bagian yaitu (1) formulir untuk mengisi data pengguna kemudian (2) tombol untuk
melanjut proses pendaftaran.

Gambar 4.2 Tampilan halaman sign up
Tampilan halaman home
Halaman ini merupakan halaman utama untuk menampilkan daftar judul berita yang
baru diproses. Berita yang ditampilkan merupakan berita dengan kategori yang telah
dipilih oleh user. Tampilan halaman home dapat dilihat pada gambar 4.3. Pada halaman
ini terdapat tiga bagian utama seperti (1) daftar berita, (2) tombol pencarian berita, dan
(3) tombol settings. Bagian daftar berita berisi beberapa informasi tentang berita seperti
judul berita, gambar cuplikan berita, penerbit/kategori berita, serta tanggal publikasi
berita. Kemudian bagian tombol pencarian berita berfungsi untuk mencari berita dalam
database. Terakhir bagian tombol untuk membuka halaman settings.

Gambar 4.3 Tampilan halaman home

Universitas Sumatera Utara

53

Tampilan halaman news details
Halaman news details pada gambar 4.4 ditujukan untuk menampilkan informasi lebih
rinci tentang berita yang dipilih user. Informasi yang terdiri dari (1) gambar berita
terkait, (2) judul berita/sumber berita/tanggal dipublikasikan, kemudian (3) hasil
ringkasan berita.

Gambar 4.4 Tampilan halaman news details
Tampilan halaman settings
Halaman settings berguna untuk melihat informasi user seperti username dan kategori
berita yang dipilih. Seperti pada gambar 4.5, halaman settings terdapat dua bagian yaitu
(1) bagian informasi user, dan (2) kategori berita yang dipilih pengguna.

Gambar 4.5 Tampilan halaman settings

Universitas Sumatera Utara

54

Tampilan halaman choose news source
Halaman ini menyediakan fitur untuk pengguna supaya bisa memilih kategori berita
yang diminatinya. Kategori berita pilihan akan menentukan berita apa saja yang akan
ditampilkan pada halaman Home. Halaman choose news source seperti pada gambar
4.6., memiliki dua bagian yaitu (1) daftar pilihan kategori berita dan (2) tombol
“Choose” untuk konfirmasi pilihan.

Gambar 4.6 Tampilan halaman choose news source

Hasil Ringkasan
Pada bagian ini akan diberikan beberapa contoh hasil ringkasan yang dihasilkan oleh
sistem. Di antara contoh tersebut adalah:
1. Judul: Microsoft Kritik Internet Gratis Facebook
Ringkasan TextTeaser:
Bos Microsoft India Bashkar Pramanik mengkritik layanan internet gratis yang
diberikan Facebook. "Saya pikir tindakan Facebook tidak berkaitan dengan net
neutrality. Net neutrality sendiri berarti prinsip yang meminta penyedia akses internet
dan pemerintah untuk memperlakuan semua data setara dan tanpa diskriminasi.
Penyedia layanan internet serta pemeintah, menurut konsep ini, mesti memberikan tarif

Universitas Sumatera Utara

55

seragam, bukan berdasarkan konten, pengguna atau aplikasi yang digunakan. Layanan
internet gratis Facebook di India bernama Free Basics.
Teks asli:
Bos Microsoft India Bashkar Pramanik mengkritik layanan internet gratis yang
diberikan

Facebook. Menurutnya, raksasa media sosial itu tak semestinya

menyejajarkan layanan mereka dengan net neutrality. "Saya pikir tindakan Facebook
tidak berkaitan dengan net neutrality. Mereka cuma membantu first time user untuk
mengenal internet dan mesti menyebutnya seperti itu," terangnya. Net neutrality
sendiri berar