Post on 29-Feb-2020
BAB 2
TINJAUAN PUSTAKA
2.1 Periklanan
Periklanan adalah komunikasi komersil dan non-personal tentang
sebuah organisasi dan produk – produknya yang ditransmisikan ke suatu
media yang bersifat massal, (Munandar & Priatna, 2007). Dalam menyusun
rancangan periklanan terdapat lima keputusan utama atau yang dikenal
dengan istilah “Lima M” yang harus dipertimbangkan. Kelima keputusan
utama itu antara lain, menetapkan tujuan iklan (Mission), memutuskan
anggaran iklan (Money), mengembangkan kampanye iklan (Message),
menetapkan media dan mengukur efektivitas (Media), mengevaluasi
efektivitas iklan (Measurement), (Molan, 2007). Di dalam dunia periklanan
juga terdapat beberapa istilah yang umum digunakan seperti TVR dan CPRP.
2.1.1 TVR
TVR (Television rating) merupakan rating dari suatu program
acara. Pada umumnya rating merupakan mata uang yang digunakan
pada stasiun TV untuk menentukan nilai dari suatu program acara,
(Drs. Andi Fachrudin, 2007).
2.1.2 CPRP
CPRP (cost per rating point) adalah biaya yang diperlukan
untuk menjangkau satu persen individu pada suatu target audience.
Dengan kata lain, CPRP merupakan biaya yang dikeluarkan tiap satu
rating pada suatu program acara. Dengan adanya CPRP, agensi
periklanan dapat mengetahui jumlah biaya yang dikeluarkan untuk
membeli setiap spot iklan di stasiun TV per satu penonton, (Drs. Andi
Fachrudin, 2007).
2.2 Scrum
Scrum adalah salah satu pendekatan dari model pengembangan
perangkat lunak agile. Prinsip pada scrum sesuai dengan prinsip agile yang
9
10
digunakan untuk mengembangkan framework yang terdiri dari requirements,
analysis, design, evolution, delivery, (Pressman, 2010, p.82). Dalam metode
scrum terdapat beberapa tahapan yaitu, backlog, sprints, scrum meeting,
demos, (Pressman, 2010, pp. 83-84).
2.2.1 Backlog
Backlog merupakan daftar kebutuhan berisi fitur-fitur
prioritas yang akan dibuat. Isi dari fitur tersebut dapat
ditambahkan kapan saja. Pada kegiatan ini manajer produk
dapat mengakses backlog dan dapat mengubah prioritas dari
kebutuhan jika diperlukan.
2.2.2 Sprint
Sprints merupakan aktivitas kerja yang dilakukan
untuk memenuhi kebutuhan yang didefinisikan pada backlog
yang harus diselesaikan dalam kurun waktu yang sudah
ditentukan.
2.2.3 Scrum Meeting
Scrum Meeting adalah pertemuan yang dilakukan
secara teratur, untuk membahas apa saja yang sudah
dikerjakan, membahas masalah yang ditemui dan
merencakanakan pekerjaan apa saja yang harus diselesaikan
pada pertemuan selanjutnya.
2.2.4 Demos
Demos adalah tahap ketika proses pengembangan
aplikasi telah selesai dibuat dan tim scrum menampilkan hasil
dari aplikasi kepada product owner.
2.3 Laravel
Laravel adalah framework PHP dengan kode terbuka (open source)
dengan desain MVC (Model-View-Controller) yang digunakan untuk
membangun aplikasi website. Framework ini pertama kali dibangun oleh
Taylor Otwell pada tanggal 22 Februari 2012 (laravel.com).
11
2.2.1 Tipologi Laravel
Laravel adalah salah satu dari PHP framework. Sama seperti
PHP framework lainnya seperti Phalcon, Zend, Symfony, atau Code
Igniter juga menggunakan pola desain MVC dalam melakukan
operasinya.
2.2.2 Kelebihan Laravel
Laravel adalah framework web dengan ekspresif syntax yang
elegan. Selain itu, laravel adalah framework yang clean dan classy
untuk pengembangan web dengan menggunakan PHP yang dimana
juga memiliki motto membebaskan programmer dari kode yang
rumit (Aminuddin, 2014).
2.4 MVC Method
Model View Controller adalah sebuah metode untuk membuat sebuah
aplikasi dengan memisahkan data (Model) dari tampilan (View) dan cara
bagaimana memprosesnya (Controller) (laravel.com). Sesuai dengan
namanya, MVC terdiri dari 3 komponen antara lain model, view, dan
controller. Model adalah bagian yang berperan menghubungkan controller
dengan database. Tugas dari model adalah melakukan manipulasi data ke
database seperti CRUD (create, read, update, delete). View mengatur
bagaimana data akan ditampilkan kepada user. Data yang didapat dari model
akan diproses oleh controller kemudian oleh view ditampilkan kepada user.
Controller merupakan bagian yang menjadi penghubung antara model dan
view. Controller berfungsi memproses fungsi atau perintah dari user
kemudian menentukan bagaimana aplikasi dijalankan.
2.5 Client Server
Client server adalah suatu aplikasi terstruktur yang bertugas mengatur
bagian penyedia sumber daya yang disebut server dan bagian pembuat
request yang disebut client. Pada saat sebuah server menerima sebuah request
dari sebuah halaman web, server membuat atau menerima halaman web lalu
mengembalikan halaman web beserta script yang berisi respon yang
diperlukan. Browser mengolah halaman web dan menerjemahkan script.
Proses ini dilakukan pada client-side. Browser lalu menampilkan halaman
web yang telah diprosesnya (Nasuto, 2011).
12
2.6 Javascript
Javascript adalah ada bahasa pemrograman di web. Javascript hampir
digunakan di seluruh website modern dan merupakan bahasa pemograman
web yang wajib dipelajari selain HTML dan CSS. Javascript adalah bahasa
pemrograman high-level yang dapat digunakan dalam pemrograman
berorientasi objek maupun fungsional (Flanagan, 2011). Javascript yang
digunakan pada web browser disebut sebagai client-side Javascript,
(Flanagan, 2011, p. 307).
2.7 JQuery
JQuery adalah sebuah Javascript library yang digunakan untuk
menyederhanakan fungsi – fungsi umum dalam penggunaan Javascript.
Tidak hanya menyederhanakan beberapa fungsi saja dalam Javascript,
JQuery juga menghilangkan perbedaan hasil dari penggunaan Javascript
pada browser yang berbeda. Sesuai dengan namanya, JQuery fokus pada
penggunaan query. Query ini menggunakan CSS selector untuk menemukan
sekumpulan dokumen dan mengembalikan objek yang mrepresentasikan
dokumen tersebut. Objek tersebut dapat menggunakan berbagai method yang
berguna untuk melakukan berbagai operasi seperti mengubah isi dokumen
dengan syarat jenis elemen yang direprsentasikan oleh objek dengan tipe
method yang digunakan tergolong sebagai satu grup (Flanagan, 2011).
2.8 PHP
PHP merupakan bahasa pemrograman scripting yang paling banyak
digunakan pada bagian server dalam pengembangan aplikasi web, yang
menampilkan informasi HTML secara dinamis (McIntyre, 2010, p. 2).
2.9 Bootstrap
Bootstrap adalah CSS framework yang menyediakan banyak elemen
user interface, layouts, dan jQuery plugins. Bootstrap adalah framework yang
bersifat open source dan juga salah satu proyek paling populer di GitHub.
Bootstrap berisi responsive mobilefirst grid, di mana ia mengizinkan
developer untuk mengimplementasikan web design dengan mudah. Bootstrap
juga berisi kumpulan styles untuk tipografi, navigasi, tabel, formulir, buttons,
dan masih banyak lagi. Selain itu, Bootstrap juga memiliki beberapa jQuery
13
plugins seperti Modal, Dropdown, Tooltip, dan Carousel yang sangat
memudahkan developer (Niska, 2014, p. 5).
2.10 My SQL
MySQL adalah salah satu database management system yang umum
digunakan saat ini. MySQL memiliki arsitektur yang berguna untuk
diaplikasikan di berbagai lingkungan aplikasi seperti web application,
embedded application, data warehouse, online transaction processing (oltp),
dan masih banyak lagi. Salah satu unggulan dari MySQL adalah banyaknya
variasi tipe data yang didukung oleh MySQL sehingga memungkin MySQL
dapat diaplikasikan di berbagai jenis aplikasi yang berbeda (Schwartz, 2012).
Gambar 2.1 Model Arsitektur MySQL (High Performance MySQl, 2009, p. 2)
Layer teratas dari MySQL adalah services yang umum digunakan di
berbagai network-based sofware atau pada client server tools. Layer kedua
dari MySQL adalah pusat logic dari MySQL dimana parsing, analisis,
optimasisasi, operasi aritmatika, dan operasi – operasi built-in lainnya. Layer
ketiga dari MySQL adalah storage engines yang bertanggung jawab dalam
penyimpanan data. Masing – masing storage engines memiliki karakteristik
masing – masing, namun bersifat transparan pada query layer sehingga
pengguna tidak dapat menemukan perbedaan antara storage engines
(Schwartz, 2012).
2.11 UML
UML (Unified Modelling Language) adalah sekumpulan tehnik
pembuatan diagram yang sesuai dan dikhususkan untuk pengembangan
14
object oriented yang telah menjadi model standar untuk sistem object
oriented (Britton, 2005).
2.11.1 Use case Diagram
Use case diagram adalah UML diagram yang menjelaskan
aktivitas sistem berdasarkan sudut pandang pengguna. Use case
diagram adalah pemetaan lengkap mengenai tugas – tugas yang dapat
dilakukan oleh pengguna di dalam sistem, (Britton & Doake, 2005).
Terdapat dua cara pendekatan untuk meranacang use case
diagram. Cara yang pertama adalah meneliti apa saja yang dapat
dilakukan aktor di dalam sistem. Pertama, kita menentukan jenis aktor
atau pengguna yang terlibat langsung kepada sistem. Lalu, dari
masing – masing aktor yang telah ditentukan, kita menentukan
bagaimana aktor menggunakan sistem dan tujuan apa yang ingin
dicapai dari menggunakan sistem. Cara yang kedua adalah meneliti
skenario dari proses kejadian yang terjadi di dalam sistem. Skenario
yang dibuat atau diberikan akan menghasilkan serangkaian kejadian.
Serangkaian kejadian ini akan menjelaskan interaksi antara pengguna
dengan sistem, (Britton & Doake, 2005).
Elemen – elemen dari use case diagram adalah :
1. Use Case
Use case digambarkan dengan sebuah lingkaran elips yang
mendatar (horizontal) dengan nama dari use case yang tertulis di atas,
di bawah, atau di dalam elips tersebut. Sebuah use case
menggambarkan suatu tujuan dari sistem dan menjelaskan rangkaian
aktivitas dan interaksi user ketika sedang mencapai tujuan itu
2. Actor
Actor digambarkan dengan sebuah manusia berbentuk
sederhana beserta dengan nama peran dari actor tersebut. Sebuah
15
actor menggambarkan suatu peran yang dijalankan oleh seorang user
yang berinteraksi dengan sistem untuk bertukar informasi
3. Relationship
Relationships menjelaskan hubungan antara actor dan use case
. Sebuah relationship digambarkan dengan sebuah garis antara dua
simbol dalam sebuah use case diagram. Bentuk dari tiap garis dapat
berbeda tergantung dengan jenis relationship. Jenisjenis relationship
tersebut adalah:
Associations
Sebuah relationship dengan jenis associations akan
terjadi apabila use case menjelaskan sebuah interaksi
antara actor dan use case.
Extends
Hubungan ini adalah sebuah relationship antara
extension use case dan use case cabangnya. Tujuan dari
extends relationship adalah untuk menyederhanakan
usecase yang mengandung beberapa fungsi yang
kompleks agar mudah untuk dibaca.
Includes
Hubungan yang terjadi pada relationship ini adalah
hubungan antara abstract use case dan use case yang
menggunakannya. Sebuah abstract use case adalah
sebuah use case yang disarikan dari use case yang lebih
kompleks karena langkah yang dilakukan oleh abstract
use case telah digunakan oleh use case lain.
Depends On
Hubungan yang terjadi pada relationship ini adalah
hubungan antara use case yang mengindikasikan
bahwa suatu use case tidak dapat dijalankan hingga use
case lain telah selesai dijalankan.
16
Inheritance
Pada use case, sebuah hubungan antara actor dibuat
untuk mempermudah penjelasan dengan gambar ketika
sebuah abstract actor mewarisi peran kepada beberapa
actor.
2.11.2 Use Case Narrative
Use case narrative adalah naratif dokumen yang menjelaskan
secara umum kebutuhan fungsional dari use case. Use case narrative
menjelaskan tujuan dari use case dan memberikan deskripsi umum
dari apa yang biasanya terjadi, urutan kejadian utama, dan kejadian
alternatif. Use case narrative ditulis dengan berdasarkan apa yang
sistem harus perbuat sehingga konteks – konteks seperti apa yang
terjadi di belakang layar pada proses coding, struktur data storage,
dan detail – detail implementasi lainnya tidak perlu dijelaskan di
dalam use case narrative. Yang dimaksud dengan apa yang sistem
harus perbuat adalah apa saja yang pengguna lihat pada saat
menggunakan sistem sehingga use case narrative dapat menjelaskan
kepada pengguna bagaimana aktivitas sistem dilihat oleh pengguna,
(Britton & Doake, 2005).
17
Gambar 2.2 Contoh Use Case Narrative, (Britton & Doake, 2005, p. 46)
2.11.3 Class Diagram
Class adalah sekumpulan objek yang memiliki sekumpulan
atribut yang sama, relasi yang sama, dan method yang sama. Pada
aplikasi berorientasi objek, semua fungsi aplikasi dihasilkan atau
dikumpulkan pada class yang sesuai sehingga penulisan kode yang
mengimplementasi sebuah operasi berdasarkan pada situasi kelas
yang berhubungan, (Britton & Doake, 2005). Class Diagram adalah
diagram yang menggambarkan relasi antara class yang digunakan
dalam suatu aplikasi atau sistem. Suatu class pada class diagram
digambarkan sebagai sebuah persegi panjang yang dibagi menjadi 3
bagian. Bagian teratas digunakan untuk nama class. Bagian tengah
merupakan atribut class. Bagian bawah merupakan method atau
operasi yang dapat dilakukan class. Nama class dimulai dengan huruf
besar. Jika nama class terdiri dari 2 kata atau lebih, maka semua kata
disambung tanpa spasi dan huruf pertama dari masing – masing kata
merupakan huruf kapital. Nama attribut dimulai dengan huruf kecil.
18
Jika nama atribut terdiri 2 kata atau lebih, maka semua kata
disambung tanpa spasi dan huruf pertama dari masing – masing kata
kecuali huruf pertama pada kata pertama adalah huruf capital, (Britton
& Doake, 2005).
Menurut Britton, (Britton & Doake, 2005, pp. 89-95), terdapat
3 jenis relasi pada class diagram antara lain:
1. association, yaitu relasi yang menunjukkan kerja sama antar class
untuk mencapai tujuan dari suatu fungsi,
2. aggregation, yaitu relasi antara class dengan sub-class dan juga
sebaliknya,
3. inheritance, yaitu relasi antar class yang memiliki sebagian atribut
dan/atau method yang sama dengan class induk.
Tabel 2.1. Komponen-komponen Class Diagram
No. Istilah Simbol Deskripsi
1. Consist of = Menjelaskan definisi dari data barang
2. And + Mengabungkan komponen
3. One or more { } Melakukan perulangan
4. Zero or one ( ) Menjelaskan atribut yang bersifat opsional
5. Alternatives [ ] Menjelaskan pemilihan atribut
6. Either .. or | Memisahkan tiap atribut yang terdapat dalam
alternative
7. Specific Value “ ” Mengindikasi nilai spesifik
2.11.4 Sequence Diagram
Sequence diagram adalah diagram yang menjelaskan aliran
atau tahap kendali antar objek untuk menjalankan suatu skenario.
Sebuah skenario menggambarkan urutan tahap dari suatu use case
berdasarkan sudut pandang pengguna. Sequence diagram
menunjukkan bagaimana tahap – tahap ini diterjemahkan menjadi
proses pengiriman pesan antar objek berdasarkan sudut pandang
sistem, (Britton & Doake, 2005).
19
Aktor di sequence diagram berbentuk sama seperti aktor pada
use case. Actor adalah gambaran mengenai orang yang bersangkut
paut dengan kegiatan pada sequence diagram. Objek di sequence
diagram berbentuk persegi panjang yang memiliki lifeline berupa
garis putus – putus. Object Lifeline ini merepresentasikan durasi hidup
dari satu object dari suatu scenario.
Gambar 2.3 Contoh Object lifeline (Britton & Doake, 2005,
p. 157)
Dalam sequence diagram terdapat Object Activation, object activation
berperan dalam merepresentasikan kegiatan aktif yang dilakukan object pada
lifeline object tersebut.
Gambar 2.4 Contoh Object Activation (Britton & Doake,
2005, p. 158)
Dalam sequence diagram terdapat Object Creation, object creation
berperan dalam merepresentasikan pembuatan object pada lifeline.
20
Gambar 2.5 Contoh Object Creation (Britton & Doake, 2005,
p. 160)
2.11.5 Activity Diagram
Activity diagram adalah diagram yang menunjukkan aliran
atau tahapan kendali pada suatu proses yang terjadi di dalam suatu use
case. Activity diagram dapat digunakan untuk mrepresentasikan
urutan kejadian, seleksi pilihan, dan iterasi kejadian.
Activity diagram dimulai dari sebuha titik hitam start dan
diakhiri dengan sebuah titik hitam end yang dikelilingi oleh satu
lingkungan luar. Setiap tahapan direpresentasikan oleh bentuk oval
panjang yang saling terhubung oleh sebuah anak panah. Seleksi
pilihan digambarkan dalam bentuk belah ketupat yang masing –
masing ujungnya mengarahkan pada aliran proses yang berbeda,
(Britton & Doake, 2005).
Tabel 2.2. Komponen-komponen Activity Diagram
No. Nama Simbol Deskripsi
21
1. Initial node Sebuah lingkaran yang utuh
untuk menandakan titik mula
dari diagram.
2. Actions Persegi dengan sudut yang
tumpul untuk
menggambarkan setiap
langkah-langkah dari
diagram.
3. Flow Sebuah anak panah untuk
menggambarkan alur dari
diagram.
4. Decision Sebuah belah ketupat dan
mempunyai setidaknya satu
flow masuk atau dua flow
keluar untuk menggambarkan
titik decision yang akan
membawa kepada flow yang
berbeda.
5. Merge Sebuah belah ketupat dan
mempunyai setidaknya dua
flow masuk dan satu flow
keluar untuk menggabungkan
semua flow tersebut yang
telah terpisah oleh decision.
22
6. Fork Sebuah sekat berbentuk
persegi panjang hitam yang
mempunyai satu flow masuk
dan setidaknya dua flow
keluar untuk menggambarkan
kapan flow menjadi terpisah
secara paralel satu sama lain.
7. Join Sebuah persegi panjang
berwarna hitam yang
mempunyai setidaknya dua
flow masuk dan satu flow
keluar untuk menggambarkan
penggabungan dari sebuah
flow yang telah dilakukan
fork.
8. Activity final Ssebuah lingkaran utuh yang
dikelilingi oleh lingkaran
berrongga untuk
menggambarkan titik akhir
dari diagram.
2.12 Interaksi Manusia Komputer
Interaksi manusia dan komputer adalah ilmu yang mempelajari
hubungan dan interaksi antara manusia dan komputer dalam perancangan dan
evaluasi antarmuka pengguna, (Shneiderman & Plaisant, 2010, p. 22).
2.12.1 Delapan Aturan Emas
Menurut Shneirderman & Plaisant, (Shneiderman & Plaisant,
2010, pp. 88-89), terdapat delapan aturan emas yang dapat dijadikan
pedoman dalam melakukan rancangan tampilan antarmuka, yaitu:
1. Konsistensi
23
Antarmuka yang ditampilkan harus konsisten dari aspek warna,
font dan tata letak. Tidak hanya antarmuka tetapi tindakan yang
dilakukan harus konsisten.
2. Memenuhi kebutuhan universal
Terdapat beberapa tipe pengguna dari yang pemula sampai yang
sudah ahli, sehingga harus mengenali kebutuhan pengguna.
Contohnya pengguna yang sudah ahli memerlukan kecepatan
interaksi, sehingga dibutuhkan tombol shortcut.
3. Memberikan umpan balik yang informatif
Untuk setiap tindakan yang dilakukan oleh pengguna, sebaiknya
diberikan umpan balik. Umpan balik yang sederhana digunakan
untuk tindakan yang sering dilakukan dan tindakan tidak penting,
sedangkan tindakan substansial digunakan untuk setiap tindakan
yang penting..
4. Mendesain dialog untuk penutupan
Urutan tindakan ketika melakukan suatu pekerjaan harus
terorganisir dari bagian awal, tengah, dan akhir serta terdapat
umpan balik yang informatif pada setiap tindakan yang dilakukan
oleh pengguna.
5. Mencegah terjadinya kesalahan
Sistem sebaiknya dirancang agar pengguna tidak melakukan
kesalahan yang fatal. Jika kesalahan terjadi, sistem dapat
mendeteksi kesalahan dengan cepat dan memberikan mekanisme
penanganan yang sederhana.
6. Memudahkan kembali ke proses sebelumnya
Pengguna dapat membatalkan proses yang telah dilakukan jika
terjadi kesalahan. Sistem yang dapat kembali ke proses
sebelumnya membuat pengguna tidak perlu merasa khawatir
untuk mengeksplorasi pilihan-pilihan yang belum biasa
digunakan.
7. Mendukung tempat pengendali internal (internal locus of
control)
Sistem yang dirancang harus dapat mendukung pengguna dalam
melakukan pengontrolan sistem seperti sistem dapat dengan cepat
24
menanggapi permintaan pengguna, sehingga pengguna tidak
merasa bahwa mereka dikontrol oleh sistem melainkan mereka
yang mengontrol sistem tersebut.
8. Mengurangi beban ingatan jangka pendek
Manusia memiliki keterbatasan ingatan, sehingga dibutuhkan
tampilan yang sederhana dan diberikan waktu yang cukup untuk
berlatih.
2.13 Black-box Testing
Black-box testing adalah data-driven atau input/output-driven-testing,
dimana tujuan dari testing ini adalah dengan sepenuhnya mengabaikan
kebiasaan internal dan struktur dari program, tetapi lebih memfokuskan pada
pencarian keadaan dimana keadaan tersebut tidak berjalan sesuai dengan
bagaimana program tersebut dirancang, (Myers, Badgett, & Sandler, 2012).
2.14 Entity Relationship Diagram
Entity Relationship Diagram adalah sebuah model yang menunjukan
entity dan relasinya dengan entity lain. Entity dan relasi nya merupakan
bentuk dari data modeling yang digunakan untuk mengoranisir data yang
terdapat di dalam sistem. Data modeling terkadang disebut sebagai basis data
modeling karena sebuah data model sebenarnya diimplementasikan sebagai
sebuah basis data.