1 BAB 2 TINJAUAN PUSTAKA 2.1 Teori Umum 2.1.1 PHP Hypertext

advertisement
BAB 2
TINJAUAN PUSTAKA
2.1 Teori Umum
2.1.1 PHP Hypertext Preprocessor
PHP Hypertext Preprocessor (PHP) merupakan salah satu yang banyak
digunakan sebagai server-side scripting language untuk mengembangkan
aplikasi berbasis web. PHP adalah backbone dari aplikasi seperti Facebook,
Flickr, dan Yahoo. Ada beberapa server-side scripting language yang tersedia
untuk mengembangkan aplikasi web, tetapi PHP lebih mudah digunakan bagi
pemula
karena
menyediakan
kemudahan
dalam
banyak
hal
untuk
mengembangkan sebuah web (Lengstorf & Hansen, 2014:xxi).
2.1.2 PHP Framework
Framework adalah sekumpulan potongan dari potongan code yang
disimpan dalam file terpisah untuk menyederhanakan operasi coding berulang.
Dengan kata lain framework merupakan suatu kerangka kerja dimana dapat
memudahkan suatu pekerjaan. Jika dihubungkan dengan PHP, maka PHP
Framework dapat diartikan sebagai kerangka kerja yang telah terpola dan
memberikan kemudahan dalam pembuatan website yang menggunakan script
PHP (Upton, 2007:12-13).
2.1.3 Model-View-Controller
Model-View-Controller (MVC) adalah metode pengorganisasian file
yang dapat membuat sebuah website dengan cara membagi website menjadi
bagian-bagian fungsi yang terpisah. Bagian yang dipisahkan meliputi
data (model), tampilan (view), dan cara bagaimana memprosesnya (controller)
(Upton, 2007:27-28).
Arsitektur MVC (Model-View-Controller) digunakan untuk membuat
aplikasi yang menargetkan pada perkembangan sistem yang lebih mudah untuk
5
6
di maintainance dan perbaikan yang lebih baik serta memberikan pilihan untuk
menambahkan(additional) atau mengurangi (reducing) code. (Utpatadevi,
Sudana, & Cahyawan, 2012:1-2).
2.1.4 Code Igniter
Code Igniter (CI) merupakan sebuah alat yang dirancang untuk
membuat bahasa pemrograman PHP lebih mudah digunakan. Jika kita telah
menulis code dalam PHP, Code Igniter akan mengurangi jumlah code yang
anda ketik, script akan lebih mudah dibaca, dan di update. Selain itu Code
Igniter akan membantu kita untuk membuat sebuah website yang besar dengan
struktur yang koheren (Upton, 2007:7).
2.1.5 JavaScript
JavaScript adalah bahasa pemrograman yang digunakan dalam
pengembangan web browser. JavaScript merupakan bahasa pemrograman yang
penting karena bahasa pemrograman ini yang paling populer di dunia. Pada
bahasa pemrograman JavaScript, seorang programmer dapat menyelesaikan
pekerjaan yang dilakukan tanpa harus mempelajarai atau mengetahui lebih
dalam mengenai JavaScript (Crockford, 2008:2).
2.1.6 jQuery
jQuery merupakan open source JavaScript library yang digunakan
untuk mempermudah interaksi di antara dokumen HyperText Markup
Language (HTML). Secara khusus, jQuery dapat mempermudah manipulasi
dokumen HTML, browser event handling, DOM animations, Ajax interactions,
dan cross-browser JavaScript development (Lindley, 2009:1-2).
7
2.1.7 Asynchronous Javascript And XML
Asynchronous
Javascript
And
XML
(AJAX)
adalah
bahasa
pemrograman yang lebih dari seperangkat teknologi. Ajax berperan dalam
pembuatan serta pengembangan halaman web dan aplikasi ke arah yang lebih
baru. Ajax juga merupakan istilah yang digunakan untuk mencakup
seperangkat teknologi termasuk HTML, XHTML, SVG, JavaScript, CSS,
XSLT, browser objects, dan teknologi lain (Powers, 2007:ix).
AJAX merupakan aplikasi web yang digunakan untuk mengambil data
dari server secara asynchronous tanpa mengganggu tampilan dan perilaku dari
halaman yang ada (Kumar & Aravazhi, 2013:563-568).
2.1.8 JavaScript Object Notation
JavaScript Object Notation (JSON) adalah format penukaran data yang
ringan. Hal ini berdasarkan pada objek notasi literal JavaScript (JavaScript’s
object literal notation) yang merupakan salah satu bagian terbaik dari
JavaScript. JSON merupakan bahasa yang berdiri sendiri (independen)
meskipun JSON adalah bagian dari JavaScript itu sendiri (Crockford,
2008:136).
2.1.9 HyperText Markup Language
HyperText Markup Language (HTML) adalah bahasa pemgrograman
yang relative tidak terstruktur (unstructured language) untuk membuat sebuah
halaman website. HTML merupakan suatu basis untuk menampilkan sebuah
halaman website dengan menggunakan tag-tag atau suatu tanda yang memiliki
fungsi tertentu (Robson & Freeman, 2005:x-xv).
2.1.10 eXtensible Markup Language
eXtensible Markup Language (XML) merupakan suatu bahasa yang
dapat digunakan untuk menggambarkan dan mengelola data dalam berbagai
struktur untuk maksud serta tujuan yang diinginkan. Ini merupakan tingkat
lanjut dari Hypertext Markup Language (HTML) yaitu bahasa standar untuk
8
internet. XML terletak pada inti web service, yang digunakan untuk
mendeskripsikan data. Fungsi utama dari XML adalah komunikasi antar
aplikasi, integrasi data, dan komunikasi aplikasi eksternal dengan partner
luaran (Fawcett, Quin, & Ayers, 2012:xxvii).
2.1.11 Document Object Model
Document Object Model (DOM) merupakan sebuah pohon atau hirarki
JavaScript Node Objects. DOM menyediakan Application Programming
Interface (API) untuk dokumen eXtensible Markup Language (XML) dan
HyperText Markup Language (HTML). DOM bertujuan untuk menyediakan
antarmuka program (programmatic interface) untuk scripting (mendefinsikan
struktur logika, cara mengakses, menghapus, menambah, mengganti, eventing,
dan modifikasi) live document menggunakan JavaScript (Lindley, DOM
Enlightenment, 2013:1-2).
2.1.12 Cascading Style Sheets
Cascading Style Sheets (CSS) adalah bahasa yang mendefinisikan style
constructs seperti ukuran, warna dan posisi yang digunakan untuk
menggambarkan informasi pada sebuah format dan tampilan halaman website.
Selain itu style sheets berisi style rules yang menerapkan styles untuk elemen
dari jenis yang diberikan.
Ketika CSS digunakan secara eksternal, style sheet rules ditempatkan
dalam sebuah style sheet dokumen eksternal dengan ekstensi “.css”. Style rule
merupakan suatu format instruksi yang diterapkan ke sebuah elemen pada
halaman website, seperti teks atau link. Style rule terdiri dari satu atau lebih
style properties dan nilai-nilai yang terkait. Jika menggunakan internal style
sheet, maka ditempatkan langsung dalam halaman website, sedangkan style
sheet eksternal terletak dalam dokumen yang terpisah dan secara mudah dapat
dihubungkan ke halaman website melalui special tag (Meloni & Morrison,
2009:48).
9
2.1.13 Bootstrap
Twitter Bootstrap merupakan CSS framework yang menyediakan
banyak elemen user interface, layouts, dan jQuery plugins. Bootstrap bersifat
open source dan salah satu proyek yang paling populer di Github. Bootstrap
berisi sebuah top-notch, responsive mobile-first grid yang memungkinkan kita
untuk menerapkan desain pada sebuah breeze.
Selain itu Bootstrap menyediakan styles untuk typography, navigation,
tables, forms, buttons dan lainnya. Bootstrap menyediakan beberapa jQuery
plugins, seperti Modal, Dropdown, Tooltip, dan Carousel yang sering berguna
ketika mendesain sebuah website. Maka dari itu Bootstrap sangat umum dan
bermanfaat untuk mendesain halaman sebuah website (Niska, 2014:5-6).
2.1.14 Extreme Programming (XP)
Extreme Programming (XP) adalah metodologi berulang, berfokus
pada kerja antar tim yang membutuhkan kolaborasi antara pelanggan dan
pengembang, dengan adanya umpan balik dari pelanggan didalam siklus akan
mendukung dalam pengembangan software lebih cepat (Sohaib & Khan,
2011:51).
Pressman (2010:72-77) mengemukakan extreme programming (XP)
menggunakan pendekatan berorientasi objek sebagai paradigma pengembangan
yang lebih disukai dan mencakup seperangkat aturan dan praktek-praktek yang
hadir dengan empat kerangka kerja, yaitu:
Gambar 2.1 The XP Process (Pressman 2010:73)
10
1.
Planning
Planning merupakan tahap mendengarkan dan mengumpulkan
kebutuhan untuk perangkat lunak.
2.
Design
Design merupakan tahap perancangan yang mengikuti prinsip keep it
simple. Design yang sederhana lebih dipilih daripada design yang
kompleks. Selain itu, design memberikan panduan implementasi
rencana yang tidak lebih dan juga tidak kurang.
3.
Coding
Coding merupakan tahap mengembangkan serangkaian unit tests yang
akan melaksanakan setiap rencana yang akan disertakan dalam rilis
(software increment). Setelah kode selesai dibuat, kode dapat diuji
sehingga memberikan umpan balik kepada para pengembang.
4.
Testing
Testing merupakan tahap integrasi dan validasi pengujian sistem yang
dapat terjadi setiap hari. Pada tahap ini dilakukan customer test yang
berfokus pada keseluruhan fitur dan fungsi yang dapat ditinjau oleh
customer. Selain itu terdapat acceptance test yang berasal dari umpan
balik dari customer yang telah dilakukan sebagai bagian dari software
release.
2.1.15 Alpha Testing
Alpha Testing merupakan suatu pengujian perangkat lunak (software)
oleh beberapa perwakilan dari pengguna akhir (end users). Pengujian
dilakukan oleh pengguna yang ahli dalam bidang terkait bersama dengan
pengembang (developer) untuk mencatat kesalahan dan masalah pengguna
(Pressman, 2010:469).
2.1.16 Beta Testing
Beta Testing merupakan suatu pengujian perangkat lunak (software)
oleh lebih banyak perwakilan dari pengguna akhir (end users). Pengujian
11
dilakukan oleh end user tanpa didampingi oleh pengembang (developer). End
users yang akan mencatat kesalahan yang ditemui sehingga dapat dilaporkan
kepada developer secara berkala untuk dilakukan revisi atau perbaikan lebih
lanjut (Pressman, 2010:469).
2.1.17 The Eight Golden Rules of Interface Design
Shneiderman dan Plaisant (2010:88) mengemukakan delapan aturan
emas untuk merancang desain antarmuka (the eight golden rules of interface
design) adalah prinsip dasar untuk mendesain suatu pengguna antarmuka (user
interface). Prinsip dasar untuk mendesain user interface adalah sebagai berikut:
1.
Strive for Consistency
Strive for consistency merupakan prinsip dasar agar desain user
interface dapat konsisten. Prinsip konsistensi ini dapat digunakan pada
prompt, menus, help screens, warna, tata letak, kapitalisasi, ukuran,
dan pada hal lain yang dianggap perlu.
2.
Cater to Universal Usability
Cater to universal usability merupakan prinsip dasar untuk
memfasilitasi user dengan informasi yang dibutuhkan melalui shortcut
agar meningkatkan kecepatan interaksi.
3.
Offer Informative Feedback
Offer
informative
feedback
merupakan
prinsip
dasar
untuk
memberikan umpan balik (feedback) pada setiap tindakan user.
4.
Design Dialogs to Yield Closure
Design dialogs to yield closure merupakan prinsip dasar untuk
menghasilkan penutupan akhir dari suatu urutan tindakan.
5.
Prevent Errors
Prevent errors merupakan prinsip dasar untuk merancang sistem agar
user tidak membuat kesalahan yang fatal dan menyediakan
penanganan kesalahan yang sederhana.
12
6.
Permit Easy Reversal of Actions
Permit easy reversal of actions merupakan prinsip dasar untuk
menyediakan dan memudahkan user untuk kembali ke tindakan
sebelumnya.
7.
Support Internal Locus of Control
Support internal locus of control merupakan prinsip dasar untuk
memudahkan user untuk bernavigasi dengan bebas.
8.
Reduce Short-Term Memory Load
Reduce short-term memory load merupakan prinsip dasar untuk
menyediakan interface yang mudah dipahami dan diingat sehingga
mengurangi beban ingatan jangka pendek user.
2.1.18 Responsive Web Design
Responsive Web Design merupakan suatu cara untuk menyampaikan
pengalaman pengguna (user experience) ke seluruh perangkat (device) secara
optimal, termasuk tablets, smartphones, feature phones, laptops, dan large
screens. Responsive web digunakan untuk membuat sebuah desain yang
dioptimalkan untuk menyesuaikan ukuran layar dan kemampuan dari device.
Responsive web design memungkinkan kita menampilkan website yang baik
untuk seluruh user, terlepas dari device yang mereka gunakan (Peterson,
2014:x).
2.1.19 Object-Oriented Programming
Object-Oriented
Programming
(OOP)
merupakan
pelaksanaan
pemrograman yang baik untuk membuat proyek agar dapat dikelola dengan
lebih mudah. OOP menyediakan fasilitas untuk membuat obyek yang dapat
digunakan kembali oleh pembuat obyek atau pengembang lain tanpa membuat
ulang obyek. OOP dapat mengurangi kesulitan dalam menulis dan mengelola
aplikasi besar (Hayder, 2007:9).
13
2.1.20 Unified Modeling Language
Whitten dan Bentley (2007:371) mengemukakan unified modeling
language (UML) merupakan seperangkat ketentuan yang digunakan untuk
merincikan atau menggambarkan suatu sistem perangkat lunak (software
system) dalam obyek-obyek.
2.1.21 Use-Case Diagram
Whitten dan Bentley (2007:246) mengemukakan use-case diagram
merupakan diagram yang menggambarkan interaksi antara sistem, eksternal
sistem dan pengguna. Use-case narrative merupakan deskripsi secara teks dari
proses bisnis dan bagaimana pengguna (user) akan berinteraksi dengan sistem
untuk menyelesaikan tugas.
Gambar 2.2 Contoh Use-Case Diagram (Whitten & Bentley 2007:246)
Use-Case Diagram diawali oleh pengguna eksternal (external users)
yang disebut dengan aktor (actors). Terdapat empat tipe aktor yang utama,
yaitu:
14
1. Primary business actor
Merupakan
stakeholder
yang mendapatkan
keuntungan
dari
pelaksanaan use-case.
2. Primary system actor
Merupakan stakeholder yang berhubungan langsung dengan suatu
sistem dalam memulai suatu use-case.
3. External server actor
Merupakan
stakeholder
yang
menanggapi
kebutuhan
atau
permintaan dari use-case.
4. External receiver actor
Merupakan stakeholder yang bukan aktor utama, tetapi menerima
sesuatu yang bernilai dari use-case.
Gambar 2.3 Actor Symbol (Whitten & Bentley 2007:247)
Hubungan (relationship) dalam sebuah use-case digambarkan sebagai
sebuah garis antara dua simbol pada use-case diagram. Terdapat lima jenis
relationship, yaitu:
1. Associations
Merupakan relationship yang terjadi antara suatu actor dan use-case
yang menggambarkan terjadinya interaksi di antara keduanya.
15
Gambar 2.4 Contoh Association Relationship
(Whitten & Bentley 2007:248)
2. Extends
Merupakan relationship yang menggambarkan langkah use-case
yang lebih kompleks yang bertujuan untuk menyederhanakan
masalah asli (original case) dan memperluas fungsionalitasnya.
Gambar 2.5 Contoh Extends Relationship
(Whitten & Bentley 2007:249)
3. Uses (or Includes)
Merupakan relationship yang mengurangi pengulangan (redudancy)
di antara dua atau lebih use-case lain dengan menggabungkan
beberapa langkah umum yang ditemukan dalam kasus.
16
Gambar 2.6 Contoh Uses Relationship
(Whitten & Bentley 2007:249)
4. Depends On
Merupakan relationship yang menspesifikasikan suatu use-case lain
harus dilakukan sebelum use-case tertentu dilakukan.
Gambar 2.7 Contoh Depends Relationship
(Whitten & Bentley 2007:250)
5. Inheritance
Merupakan
relationship
yang
digunakan
untuk
mengurangi
pengulangan di antara aktor yang memiliki sifat umum yang sama
sehingga terlihat lebih sederhana.
17
Gambar 2.8 Contoh Inheritance Relationship
(Whitten & Bentley 2007:250)
2.1.22 Class Diagram
Whitten dan Bentley (2007:400) mengemukakan class diagram
merupakan diagram yang menggambarkan struktur obyek sistem dan
menampilkan beberapa kelas obyek (object classes) yang terdiri dari hubungan
(relationship) di antara object classes.
18
Gambar 2.9 Contoh Class Diagram (Whitten & Bentley 2007:406)
Terdapat beberapa komponen penyusun dari class diagram, yaitu:
1. Dependency Relationships
Komponen yang digunakan untuk menggambarkan asosiasi antara
dua kelas dalam dua kejadian. (1) untuk menunjukkan ketika suatu
perubahan terjadi di dalam satu kelas yang mungkin akan
19
mempengaruhi kelas lainnya, dan (2) untuk menunjukkan asosiasi
antara kelas tetap (persistent class) dan kelas sementara (transient
class).
Gambar 2.10 Contoh Dependency Relationships
(Whitten & Bentley 2007:650)
2. Navigability
Komponen yang digunakan untuk menggambarkan asosiasi antara
dua kelas dan disimbolkan dengan panah yang menunjuk langsung
ke arah pesan yang dikirim.
Gambar 2.11 Contoh Navigability (Whitten & Bentley 2007:650)
3. Visibility
Komponen yang digunakan untuk menggambarkan tingkat akses
suatu obyek eksternal yang memiliki sebuah atribut atau metode.
Terdapat tiga tingkat (level) dari visibility, yaitu:
1. Public – disimbolkan dengan “+”.
2. Protected – disimbolkan dengan “#”.
3. Private – disimbolkan dengan “__”.
20
Gambar 2.12 Contoh Visibility (Whitten & Bentley 2007:651)
3. Inheritance
Merupakan konsep yang mendefinisikan metode atau atribut dalam
sebuah kelas obyek yang dapat diturunkan atau dapat digunakan
kembali oleh kelas obyek yang lain.
Gambar 2.13 Contoh Inheritance (Whitten & Bentley 2007:375)
4. Generalization / Specialization
Merupakan teknik atau cara mengelompokkan (atau memisahkan)
atribut dan tindakan yang umum dalam beberapa jenis dari kelas
obyek ke dalam kelasnya masing-masing yang disebut supertype.
21
Gambar 2.14 Contoh Generalization / Specialization
(Whitten & Bentley 2007:376)
5. Aggregation
Merupakan suatu hubungan (realtionship) suatu kelas besar
“keseluruhan” yang memuat beberapa bagian dari kelas kecil.
Gambar 2.15 Contoh Aggregation (Whitten & Bentley 2007:379)
6. Multiplicity
Merupakan nilai minimal atau maksimal kejadian dari sebuah kelas
obyek untuk setiap satu kejadian dari kelas obyek yang saling
berhubungan atau terkait.
22
Gambar 2.16 Contoh Multiplicity (Whitten & Bentley 2007:377)
7. Composition
Merupakan sebuah hubungan kesatuan (aggregation relationship)
yang “keseluruhan” bertanggung jawab untuk menciptakan dan
menghancurkan dari “bagian-bagiannya”.
23
Gambar 2.17 Contoh Composition (Whitten & Bentley 2007:379)
2.1.23 Sequence Diagram
Whitten dan Bentley (2007:394) mengemukakan sequence diagram
merupakan diagram yang menggambarkan interaksi antara suatu aktor dan
sistem untuk sebuah skenario use-case.
24
Gambar 2.18 Contoh Sequence Diagram
(Whitten & Bentley 2007:395)
Terdapat beberapa notasi dalam sequence diagram, yaitu:
1. Actor
Menggambarkan simbol yang digunakan untuk insialisasi pada usecase actor.
2. System
Suatu kotak yang mengindikasikan sistem sebagai “kotak hitam”
atau sebagai suatu keseluruhan. Simbol titk dua “:” atau colon
merupakan
suatu
standar
notasi
sequence
mengindikasikan suatu sistem yang sedang berjalan.
diagram
untuk
25
3. Lifelines
Merupakan garis vertikal putus-putus yang memanjang kebawah dari
pelaku (actor) dan beberapa simbol sistem (system symbols) yang
mengindikasikan urutan hidup.
4. Activation bars
Merupakan kotak (bar) yang diletakkan di atas garis hidup (lifelines)
untuk mengindikasikan periode waktu peserta yang sedang aktif di
dalam interaksi.
5. Input messages
Merupakan panah mendatar (horisontal) dari aktor ke sistem untuk
mengindikasikan pesan yang masuk.
6. Output messages
Merupakan panah mendatar (horisontal) dari sistem ke aktor yang
digambarkan dengan garis putus-putus.
7. Reciever Actor
Merupakan beberapa pelaku lain atau sistem luar (external systems)
yang menerima beberapa pesan dari sistem termasuk di dalamnya.
8. Frame
Merupakan sebuah kotak (box) yang berisi satu atau lebih pesan
untuk membagi bagian (fragment) secara berurutan.
2.1.24 Activity Diagram
Whitten dan Bentley (2007:390) mengemukakan activity diagram
merupakan diagram yang menggambarkan aliran atau arus dari suatu proses
bisnis. Merupakan beberapa langkah dari suatu use-case atau logika dari
sebuah tindakan obyek (method).
26
Gambar 2.19 Contoh Activity Diagram
(Whitten & Bentley 2007:392)
27
Terdapat beberapa notasi pada class diagram, yaitu:
1. Initial node
Merupakan simbol lingkaran penuh yang menggambarkan tahap
awal dari sebuah proses.
2. Actions
Merupakan simbol elips yang menggambarkan tahapan-tahapan
individual.
3. Flow
Merupakan simbol panah yang menggambarkan proses dari suatu
aksi ke aksi lainnya.
4. Decision
Merupakan simbol belah ketupat (diamond shape) dengan satu aliran
yang masuk dan dua atau lebih aliran yang keluar. Aliran yang
keluar ditandai sebagai untuk mengindikasikan beberapa kondisi.
5. Merge
Merupakan simbol belah ketupat (diamond shape) dengan dua atau
lebih aliran yang masuk dan satu aliran yang keluar. Merge bertujuan
untuk menggabungkan aliran yang sebelumnya dipisahkan oleh
decision.
6. Fork
Merupakan simbol kotak hitam (black bar) dengan satu aliran yang
masuk dan dua atau lebih aliran yang keluar. Action pada garis
sejajar berjalan di bawah fork dapat terjadi secara bersamaan.
7. Join
Merupakan simbol kotak hitam (black bar) dengan dua atau lebih
aliran yang masuk dan satu aliran yang keluar. Sebelum melanjutkan
proses, semua action yang masuk ke dalam join harus selesai.
8. Activity final
Merupakan simbol lingkaran penuh yang terdapat di dalam lubang
lingkaran. Activity final menggambarkan akhir dari proses.
28
2.2.25 Natural Language Processing
Natural Language Processing (NLP) merupakan suatu cabang ilmu
komputer yang berfokus pada interaksi komputer dengan bahasa manusia
(Suhartono, 2013).
NLP dapat digunakan untuk memanipulasi bahasa alami (Natural
Language). Teknologi NLP kini menjadi semakin luas. Misalnya saja telepon
dan laptop sudah mendukung pengenalan tulisan tangan, web search engine
memberikan akses ke informasi kunci dalam unstructured text (Bird, Klein, &
Loper, 2009:ix).
2.1.26 Frequency Distribution
Frequency Distribution adalah teknik menghitung jumlah kata yang
muncul dalam sebuah teks kemudian dapat ditandai dengan grammar tagset
(Bird, Klein, & Loper, 2009:181-189).
2.1.27 Algoritma Nazief dan Adriani
Algoritma Nazief dan Adriani dikembangkan oleh Bobby Nazief dan
Mirna Adriani pada tahun 1996 sebagai hasil penelitian internal Universitas
Indonesia. Algoritma ini menggunakan metode pemotongan imbuhan serta
pencarian kamus yang terdiri atas kata dasar. Algoritma ini memiliki tingkat
akurasi stemming pada teks Bahasa Indonesia yang lebih baik dibandingkan
dengan algoritma Porter.
Proses stemming pada algoritma ini dilakukan dengan cara memotong
imbuhan yang dilakukan secara rekursif. Serta mencari kata didalam kamus
yang dilakukan sebelum tahap pemotongan (Telkom University, 2013).
2.1.28 Rocchio Relevance Feedback
Metode Rocchio relevance feedback adalah strategi reformulasi query
paling populer karena sering digunakan untuk membantu user pemula suatu
information retrieval systems. Dalam siklus relevance feedback, kepada user
disajikan hasil pencarian dokumen, setelah itu user dapat memeriksa dan
29
menandai dokumen yang benar-benar relevan (Yugianus, Dachlan, & Hasanah,
2013:48).
Langkah-langkah dalam pengolahan query adalah sebagai berikut:
1) Tokenizing
Tokenizing adalah tahap pemrosesan sebuah kata kunci menjadi unit kecil yang
disebut token. Unit tersebut dapat berupa suatu kata, suatu angka, atau suatu
tanda baca.
2) Filtering
Tahap filtering adalah tahap mengambil kata-kata penting dari hasil tokenizing.
Pada tahap ini kata-kata yang tidak deskriptif akan dibuang, misalnya “yang”,
“dan”, “di”, “dari”.
3) Stemming
Tahap stemming adalah tahap mencari kata dasar dari tiap kata hasil filtering.
Pada tahap ini dilakukan proses pengembalian berbagai bentukan kata ke
dalam suatu representasi yang sama, misalnya kata “menghasilkan” akan
menjadi “hasil”.
4) Term Weighting
Pada tahap ini akan dilakukan penghitungan bobot tiap term yang dicari pada
setiap dokumen sehingga dapat diketahui ketersediaan dan kemiripan suatu
term di dalam dokumen.
2.1.29 Stop Word
Stop word merupakan kata-kata yang sering muncul dalam dokumen
tetapi tidak mempunyai keterkaitan dengan tema tertentu seperti di, oleh, pada,
sebuah, dsb (Mustaqhfir, Abidin, & Kusumawati, 2011:137).
2.2 Teori Khusus
2.2.1 Undang-Undang
Undang-Undang (UU) adalah Peraturan Perundang-undangan yang
dibentuk oleh Dewan Perwakilan Rakyat dengan persetujuan bersama
30
Presiden. Undang-undang memiliki kedudukan sebagai aturan main bagi rakyat
untuk konsolidasi posisi politik dan hukum, untuk mengatur kehidupan
bersama dalam rangka mewujudkan tujuan dalam bentuk Negara (Kementerian
Komunikasi dan Informatika Republik Indonesia, 2012).
2.2.2 Struktur UU (dibaca : UU no 12 tahun 2011)
Undang-Undang No 12 Tahun 2011 (UU 12/2011) merupakan hasil
penyempurnaan dari Undang-Undang no 10 tahun 2004 tentang pembentukan
peraturan perundang-undangan yang telah dinyatakan tidak berlaku. Selain
perubahan struktur kalimat dan sistematika, tidak banyak materi muatan baru
dalam UU 12/2011 ini.
Satu yang paling menarik perhatian adalah
pencantuman kembali Ketetapan Majelis Pemusyawaratan Rakyat (TAP MPR)
sebagai salah satu sumber hukum di Indonesia. Pasal 7 ayat (1) UU 12/2011
mengatur bahwa TAP MPR memiliki hierarki satu tingkat di bawah UndangUndang
Dasar
dan
di
atas
peraturan
perundang-undangan
lainnya
(Cahyaningrat, 2013). Dengan susunan sebagai berikut:
1. Undang-Undang Dasar Negara Republik Indonesia 1945
2. Ketetapan Majelis Permusyawaratan Rakyat
3. Undang -Undang / Perautran Pemerintahan Pengganti Undang-Undang
(Perppu)
4. Peraturan Pemerintah
5. Peraturan Presiden
6. Peraturan Daerah Provinsi
7. Peraturan Daerah Kabupaten / Kota
Download