BAB 2
LANDASAN TEORI
2.1
Teori Umum Teori umum adalah teori-teori umum yang biasa digunakan sebagai landasan
pembuatan skripsi. Berikut teori yang terkait, yaitu: 2.1.1
Rekayasa Piranti Lunak Menurut Sommerville (2011:7-9), rekayasa piranti lunak atau software
engineering adalah sebuah prinsip teknik yang berpusat dengan semua aspek dari produksi software dari beberapa tingkatan sistem spesifikasi. Hal ini dapat digunakan untuk menjaga sistem setelah sistem tersebut sudah mulai digunakan dipakai. Alasan mengapa software engineering penting karena: -
Semakin banyak orang dan lingkungan yang mengandalkan sistem software yang canggih. Karena itu, software engineering dibutuhkan untuk memproduksi sistem yang dapat dipercaya dan dapat diandalkan secara ekonomis dan cepat.
-
Software engineering akan lebih murah untuk dapat digunakan pada waktu yang lama. Untuk menggunakan metode dan teknik software engineering untuk sistem software bukan hanya membuat program dimana kita mengerjakannya sendiri. Kebanyakan sistem, biaya yang dikeluarkan ada biaya yang digunakan untuk mengganti software setelah software sudah mulai digunakan.
6
7 Pendekatan sistematis yang digunakan dalam software engineering disebut proses software. Proses software adalah sebuah urutan aktivitas yang mengarah pada produksi suatu software. Terdapat 4 prinsip aktivitas yang umum untuk semua proses software, yaitu: 1.
Software specification, dimana pengguna dan pembuat software mendefinisikan software yang akan dibuat dan membuat batasan dalam pengerjaannya.
2.
Software development, dimana software tersebut didesain dan diprogram.
3.
Software validation, dimana software tersebut diperiksa kembali untuk memastikan kebutuhan pengguna.
4.
Software evolution, dimana software tersebut dimodifikasi untuk menggambarkan perubahan kebutuhan pengguna dan pasar.
2.1.1.1 Waterfall Model Menurut Sommerville(2011:29-30), waterfall model adalah sebuah contoh dari proses perencanaan, dimana semua proses kegiatan harus terlebih dulu direncanakan dan dijadwalkan sebelum dikerjakan. Berikut merupakan beberapa tahapan perencanaan waterfall model :
8
Gambar 2.1 Waterfall Model ( Sumber : Sommerville, 2011:29 ) 1.
Requirements Definition Pada tahapan ini, mendapatkan data mengenai service,
pembatas dan tujuan dari sistem dengan cara melakukan konsultasi dengan pengguna sistem. Kemudian akan ditunjukan dengan sebuah spesifikasi sistem dengan detail. 2.
System and Sofware Design Pada tahapan ini, membentuk arsitektur dari sistem secara
keseluruhan dengan cara membuat desain dari alokasi spesifikasi sistem untuk hardware maupun software. 3.
Implementation and Unit Testing Pada tahapan ini, desain dari software direalisasikan dalam
sejumlah set program atau unit program. Pengujian dilakukan untuk memverifikasi dari setiap unit agar memenuhi spesifikasi.
9 4.
Integration and System Testing Program akan diintegrasikan dan diuji sebagai sebuah
sistem yang lengkap untuk memastikan bahwa spesifikasi software yang diinginkan telah dipenuhi. setelah melakukan pengujian, maka sistem software akan dikirimkan kepada konsumen. 5.
Operation and Maintenance Tahapan ini biasanya merupakan fase yang paling lama.
Sistem sudah berjalan dan sudah dapat digunakan. Pemeliharaan mencakup adanya koreksi pada kesalahan yang tidak ditemukan pada tahap awal. Meningkatkan kemampuan sistem dengan menambahkan beberapa kriteria yang baru ditemukan.
2.1.1.2 Object Oriented Programming Menurut Whitten (2007:370), bahasa Java dan .NET adalah bahasa
pemograman
yang
sudah
menggunakan
object-oriented
programming yang sudah berkembang pesat dijaman sekarang ini. Hal ini disebabkan karena object-oriented programming dapat mengembangkan code yang lebih baik untuk digunakan untuk menekan biaya programming. Pendekatan object-oriented ini juga lebih cocok untuk proyek yang mempunyai kelompok programmer yang berbeda tempat yang digabungkan untuk menghasilkan sistem yang utuh. Setiap kelompok memegang tanggung jawab untuk mengembangkan code programming yang akan diimplementasikan oleh satu atau beberapa
10 objek dengan interface yang sudah ditentukan. Pendekatan objectoriented ini memerlukan 2 teknik, yaitu object-oriented analysis(OOA) dan object-oriented design(OOD).
2.1.1.3 UML (Unified Modeling Languange) Menurut Whitten dan Bentley (2007:371), UML (Unified Modeling Language) adalah sebuah bahasa modeling tertentu yang digunakan untuk menentukan atau mendeskripsikan sebuah sistem software yang dipakai dalam suatu objek. Menurut Whitten dan Bentley(2007:382), UML diagram dibagi menjadi beberapa diagram, yaitu: 1.
Use case Diagram Menurut Whitten dan Bentley (2007:246), use case
diagram adalah diagram yang menggambarkan interaksi antara eksternal user, sistem, dan eksternal sistem itu sendiri. Use case juga mendeskripsikan siapa yang akan menggunakan sistem dan dengan cara apa user dapat berinteraksi dengan sistem. Use case narrative diperlukan untuk mendeskripsikan urutan langkah dari setiap interaksi.
11
Gambar 2.2 Use case Diagram ( Sumber : Whitten and Bentley, 2007:246) Menurut Whitten dan Bentley(2007:247), untuk membuat sebuah use case terdapat 2 hal-hal penting yang harus diperhatikan, yaitu: a. Actor
Gambar 2.3 Simbol Actor ( Sumber : Whitten and Bentley, 2007:247 ) Actor pada use case digunakan sebagai orang yang memulai aktivitas sistem yang yang bertujuan untuk melakukan tugas yang dapat menghasilkan nilai yang dapat diukur. Terdapat 4 macam actor pada umumnya: - Primary Bussiness Actor Aktor utama yang secara langsung berpengaruh dalam pengeksekusian use case dengan cara menerima suatu nilai yang dapat diukur atau diteliti. Aktor utama ini dapat
12 mengerjakan tugas, dapat pula tidak. Contohnya seorang pegawai yang menerima tagihan dari sebuah sistem bank setiap hari Jumat. Pegawai tersebut tidak memulai event tersebut tetapi pegawai itu menerima sesuatu yang bernilai. - Primary System Actor Aktor utama yang secara langsung berhubungan dengan sistem yang ada. Actor utama ini dapat pula berinteraksi dengan primary bussiness actor sebagai perantara dengan sistem. Contohnya seseorang yang memesan rental mobil dari website. Dalam sistem tersebut pasti terdapat seorang admin yang menjadi perantara antara pemesan rental dengan pemilik rental tersebut. - External Server Actor Aktor yang merespon sebuah permintaan dari use case. Contohnya Biro kredit akan mengotorisasi pengisian melalui kartu kredit. - External Receiver Actor Aktor yang bukan merupakan aktor utama tetapi menerima suatu nilai yang dapat dinilai dan diukur dari use case. Contohnya sebuah gudang menerima pesanan yang sudah dibungkus untuk menyiapkan pengiriman setelah pembeli memesan.
13 b. Relationship Menurut
Whitten
dan
Bentley
(2007:248),
relationship
menggambarkan garis antara dua simbol yang terdapat pada use case. Arti dari relationship mungkin berbeda tergantung pada bagaimana garis tersebut digambar dan simbol tipe apa yang menyambungkan. Terdapat 5 tipe dari Relationship, yaitu: - Association Suatu hubungan antara seorang aktor dan sebuah use case yang menggambarkan interaksi yang terjadi diantara mereka. Terdapat 2 jenis garis yang termasuk association, yaitu garis yang memiliki ujung panah dan tidak memiliki ujung panah. Garis yan memiliki ujung panah memberikan arti bahwa use case tersebut dapat dilakukan langsung oleh seorang aktor. Sedangkan garis yang tidak memiliki panah memiliki arti bahwa terjadi interaksi antara use case dan seorang aktor external server atau receiver.
Gambar 2.4 Hubungan Association ( Sumber : Whitten and Bentley, 2007:248 )
14 - Extends Sebuah use case yang terdiri dari fungsional yang kompleks dari beberapa langkah untuk membuat use case yang secara logika dapat dimengerti. Setiap garis yang memiliki
relationship
extends
harus
diberi
label
“<<extends>>”.
Gambar 2.5 Hubungan Extends ( Sumber : Whitten and Bentley, 2007:249 ) - Uses (atau Includes) Use case abstrak adalah dua atau lebih use case yang menampilkan Sedangkan
beberapa uses
langkah
atau
yang
includes
fungsional. relationship
menghubungkan antara use case abstrak dengan use case itu sendiri. Setiap garis yang memiliki relationship uses harus diberi label “<<uses>>”.
15
Gambar 2.6 Hubungan Uses ( Sumber : Whitten and Bentley, 2007:249 ) - Depends On Suatu
hubungan
antara
use
case
yang
saling
mempengaruhi use case lain. Suatu use case tidak dapat dijalankan jika use case lain belum dijalankan juga. Setiap garis yang memiliki relationship depends on harus diberi label “<<depends on>>”.
Gambar 2.7 Hubungan Depends On ( Sumber : Whitten and Bentley, 2007,p250 )
16 - Inheritance Hubungan ini dibuat jika terdapat dua atau lebih aktor yang mempunyai tugas yang sama dan aktor abstrak dibuat untuk menyatukan aktor-aktor tersebut. Garis yang menandakan relationship inheritance ini sama seperti association, yaitu garis dengan anak panah diujungnya.
Gambar 2.8 Hubungan Inheritance ( Sumber : Whitten and Bentley, 2007:250 ) 2.
Class Diagram Menurut Whitten dan Bentley (2007:400), class diagram
adalah diagram yang menampilkan sistem dalam bentuk yang statis di level kelas. Diagram ini digunakan untuk menjelaskan hubungan kelas untuk sebuah use case tertentu. Terdapat 3 pendekatan yang dapat kita gunakan untuk menggambar dan menafsirkan class diagram, yaitu:
17 a. Pendekatan Konseptual Pada pendekatan ini diagram akan digambar sesuai dengan aturan yang menggambarkan konsep dalam tahap pembelajaran. b. Pendekatan Spesifikasi Pada pendekatan ini, tidak hanya software yang dilihat, melainkan interface dari software tersebut dibanding implementasinya. c. Pendekatan Implementasi Pada pendekatan ini sudah terdapat beberapa kelas dan memulai implementasi yang paling sederhana. Komponen dari class diagram terdiri dari 4 bagian utama, yaitu: a. Class Name : nama dari kelas itu sendiri b. Attribute : keadaan suatu sistem yang dibutuhkan dalam suatu kelas c. Method : metode yang akan dipakai dalam kelas tersebut, sehingga dapat diolah. Atribut dan metode memiliki 3 tingkat keamanan, yaitu: - Public Atribut dan metode ini dapat diakses dan dapat digunakan oleh beberapa metode dan beberapa kelas. Dinotasikan dengan simbol “+”.
18 - Private Atribut dan metode ini dapat diakses dan digunakan hanya oleh beberapa metode di dalam kelas dimana atribut dan metode disebutkan. Dinotasikan dengan simbol “-”. - Protected Atribut dan metode ini hanya dapat didiakses dan digunakan oleh metode yang berada di class tersebut dan subclass yang ada didalamnya. Dinotasikan dengan simbol “#”.
Gambar 2.9 Class Diagram ( Sumber : Whitten and Bentley, 2007:401 ) 3.
Activity Diagram Menurut Whitten dan Bentley (2007:390), activity
diagram adalah diagram yang menggambarkan tentang urutan interaksi atau aktivitas dari sebuah proses use case. Diagram ini juga dapat digunakan sebagai contoh permodelan suatu sistem, serta dapat diterima oleh logika manusia.
19
Notasi-notasi yang digunakan dalam activity diagram, yaitu: Tabel 2.1 Notasi Activity Diagram ( Sumber : Whitten and Bentley, 2007:391 ) Nama
Deskripsi
a. Initial
Notasi yang
Node
digunakan untuk
Bentuk Notasi
memulai dan sebuah urutan proses interaksi. Notasi yang digunakan berbentuk lingkaran berisi warna hitam untuk node. b. Actions
Notasi ini digunakan untuk Actions menjelaskan satu per satu langkah untuk suatu proses interaksi. Notasi ini dapat dihubungkan dan harus berurutan
20 satu dengan yang lain. Notasi ini dilambangkan dengan bangun segiempat yang tumpul. c. Flow
Notasi ini digunakan untuk pergerakan melalui actions. Beberapa flow tidak harus menggunakan katakata untuk mendeskripsikanny a, kecuali flow yang keluar dari decision. Notasi ini berbentuk anak panah.
d. Decision
Notasi ini digunakan jika terdapat dua atau lebih kondisi. Notasi ini berbentuk
21 seperti belah ketupat yang terdiri atas satu flow yang masuk dan terdapat dua atau lebih flow yang keluar dari notasi tersebut. e. Fork
Sebuah notasi yang berbentuk batang hitam dengan satu flow yang masuk dan dua atau lebih flow yang keluar. Actions yang dapat dikerjakan secara bersama-sama dalam sekali waktu dapat menggunakan fork ini.
f. Join
Sebuah notasi yang berbentuk batang hitam dengan dua atau lebih flow yang
22 masuk dan satu flow yang keluar. Semua action yang akan melalui notasi join, harus selesai sebelum melanjutkan ke proses selanjutnya. g. Activity
Notasi yang
Final
digunakan untuk mengakhiri sebuah proses. Notasi ini di gambarkan melalui lingkaran penuh pada bagian dalam dan berongga pada bagian luar.
2.1.2
Database Perkembangan jaman sekarang ini diperlukan aplikasi database untuk
membantu sebuah perusahaan atau organisasi dalam menyimpan data-data yang cukup besar jumlah dan kapasitasnya. Menurut Connolly dan Begg (2010:65), database adalah sebuah kumpulan dari data yang berhubungan secara logis dan
23 merupakan gambaran dari data yang akan dibuat agar memenuhi kebutuhan dari organisasi. Mempunyai database juga memberikan keuntungan, diantaranya: - Kemampuan untuk memakai data yang dibanyak aplikasi dan sistem. - Penyimpanan data dalam bentuk yang fleksibel. Hal ini karena database diartikan berbeda dengan sistem informasi dan program aplikasi yang menggunakan database. - Teknologi database memberikan skalabilitas yang besar. Artinya database dan sistem yang digunakan dapat dikembangkan untuk menyediakan perubahan pada sebuah organisasi. - Peningkatan independensi data yang mengurangi redundansi data dan dapat meningkatkan fleksibilitas.
2.1.3
Multimedia Menurut Vaughan (2011:xiv), multimedia adalah kombinasi dari
beberapa media, seperti teks, gambar, suara, animasi dan video yang ditampilkan melalui komputer atau peralatan elektronik dan dapat dimanipulasi secara digital. Suatu multimedia dapat dikatakan interaktif jika suatu multimedia dimana user dapat mengontrol jenis elemen dan kapan elemen multimedia tersebut dapat disampaikan. Ketika interaktif multimedia itu, menyediakan sebuah struktur elemen yang saling terhubung, dimana user dapat bernavigasi, interaktif multimedia tersebut menjadi hypermedia. Menurut
Vaughan
(2011:18-190),
multimedia adalah sebagai berikut:
elemen-elemen
utama
dalam
24 1. Teks Teks merupakan salah satu media yang penting dan paling sederhana yang digunakan untuk menyampaikan informasi. Pada multimedia, teks digunakan untuk membantu user dalam penyampaian materi dengan menggunakan kata-kata tertentu yang telah dipilih. Salah satu keuntungan dalam menggunakan teks adalah teks tidak memerlukan tempat penyimpanan yang besar. Disamping hal itu, penggunaan teks yang terlalu banyak juga dapat membuat user merasa bosan dan membuat mata lelah. Teks yang terdapat dalam komputer memiliki style yang berbedabeda. Menurut Vaughan (2011:25), Serif dan Sans Serif merupakan cara yang paling sederhana dalam mengelompokan sebuah typeface. Serif mempunyai dekorasi kecil berupa coretan di akhir huruf. Times New Roman, New Century Schoolbook, Bookman, dan Palatino adalah contoh dari font serif. Sedangkan Helvetica, Verdana, Arial, Optima dan Avant Garde merupakan contoh dari font sans serif. Penggunaan font serif dan sans serif pun harus dilihat dari media yang digunakan. Pada media cetak, font serif lebih cocok untuk digunakan sebagai isi dari media karena font serif dapat membantu mata pembaca dalam melihat baris-baris teks. Sedangkan pada font sans serif biasanya digunakan untuk Judul dan pernyataan yang dicetak tebal. Pada media elektronik seperti komputer, sans serif jauh lebih terbaca dan menarik jika dipakai untuk teks yang berukuran kecil. Sedangkan untuk font serif digunakan untuk judul yang memberikan pesan yang berkarakter pada layout layar.
25 2. Gambar Gambar merupakan sarana penyampaian informasi yang unik. Hal ini disebabkan karena sebuah gambar dapat memiliki banyak arti sesuai dengan sudut pandang user. Gambar juga dapat dikelompokkan menjadi 2 bentuk, yaitu bitmap dan vector. Gambar bitmap biasanya merupakan gambar yang terbentuk dari titik kecil pada sebuah matriks sederhana, sedangkan gambar vector adalah gambar yang terdiri dari bentuk sederhana seperti titik, garis, kurva, dan poligon. Menurut Vaughan (2011:82), perbedaan antara bitmap dan vector adalah cara gambar tersebut ditampilkan pada layar komputer. Pada gambar bitmap, gambar yang sudah dibuat akan langsung ditampilkan sesuai dengan resolusi gambar pada saat dibuat. Hal ini dapat menyebabkan menurunnya kualitas gambar saat ditampilkan pada resolusi lain. Sedangkan untuk vector, gambar yang akan ditampilkan berdasarkan instruksi matematika, sehingga apabila gambar tersebut diperbesar atau diperkecil, gambar yang akan ditampilkan akan memiliki kualitas yang sama seperti gambar aslinya. 3. Suara Suara merupakan elemen multimedia yang dapat membantu user memahami isi dari multimedia. Suara juga dapat memberikan kepuasaan dalam mengdengarkan musik, serta aksen dari efek khusus yang dapat mempengaruhi suasana hati user.
26 Menurut Vaughan (2011:124-125), dalam memasukkan elemen suara ke multimedia, terdapat beberapa hal yang harus diperhatikan, yaitu: a. Menentukan format file yang sesuai dengan media yang akan dipakai untuk pengirimannya b. Menentukan kapabilitas pemutaran suara dari permintaan sistem user c. Memutuskan jenis suara yang diperlukan dan kapan suara tersebut akan muncul didalam multimedia d. Menentukan kapan dan dimana suara akan dipakai, apakah menggunakan suara digital atau data MIDI e. Mencari bahan sumber suara dengan cara membuat sendiri atau dengan membelinya f. Mengubah suara yang sesuai dengan kebutuhan multimedia g. Menguji suara agar cocok dengan multimedia yang akan dibuat 4. Animasi Berdasarkan definisinya, animasi merupakan elemen multimedia yang dapat membuat presentasi yang statis menjadi lebih hidup. Animasi terdiri dari beberapa frame gambar yang tesusun sedemikian rupa dan berurutan secara berulang-ulang, dalam waktu yang cepat, sehingga menghasilkan kesan bergerak. Menurut Vaughan (2011:142-143), terdapat beberapa jenis animasi seperti:
27 a. Animasi 2D Animasi yang paling sederhana. Animasi ini hanya bergerak pada bidang x dan y pada layar. Pada animasi 2D memungkinkan kita untuk menggerakan warna pada kata ataupun menggerakan media lain dengan menggunakan mouse pada layar komputer. b. Animasi 2½ D Pada animasi ini, kita berpikir bahwa disana terdapat ilusi mengenai kedalaman yang ditambahkan melalui bayangan, tetapi gambar tersebut masih berada pada 2 dimensi, yaitu pada sumbu x dan y. Contoh animasinya yaitu emboss, shadow, bevel, highlight. c. Animasi 3D Animasi yang paling realitas. Hal ini disebabkan karena adanya penciptaan ruang virtual dalam 3 dimensi dan perubahan dihitung dari sumbu x,y, dan z. 5. Video Menurut Vaughan (2011:165), video merupakan perpaduan dari elemen-elemen multimedia yang lain. Selain itu video juga dapat membuat user lebih dekat dengan dunia nyata. Dengan adanya video pada multimedia, pesan yang akan lebih efektif dalam penyampaiannya kepada user dan memperkuat cerita, serta lebih mengerti dengan apa yang dilihatnya.
28 2.1.4
Interaksi Manusia dan Komputer Menurut Shneiderman(2010:113), Interaksi manusia dan komputer atau
Human Computer Interaction (HCI) adalah ilmu yang berpusat pada desain, evaluasi dan implementasi dari sistem komputer yang interaktif yang dapat digunakan dan dipahami dengan mudah oleh manusia. Menurut Shneiderman (2010:32), terdapat lima faktor manusia terukur yang digunakan untuk merancang user interface, yaitu: 1. Waktu belajar Seberapa lama waktu yang diperlukan user untuk mempelajari bagaimana menggunakan perintah yang yang berhubungan terhadap suatu tugas. 2. Kecepatan Kinerja Seberapa lama waktu yang diperlukan user untuk mengerjakan suatu tugas. 3. Tingkat kesalahan user Seberapa banyak kesalahan dan jenis kesalahan yang dilakukan user dapat mengerjakan suatu tugas. 4. Daya ingat Seberapa baik kemampuan user dalam menginat sesuatu setelah jangka waktu tertentu. Daya ingat ini juga dipengaruhi oleh waktu belajar dan frekuensi penggunaan user.
29 5. Kepuasan subjektif Seberapa besar kepuasan user terhadap user interface yang beragam. Biasanya hal ini dapat diketahui dengan cara melakukan wawancara atau kuesioner kepada user.
Menurut Shneiderman (2010:88-89), dalam merancang sebuah interface terdapat delapan aturan emas yang digunakan sebagai pedoman untuk merancang user interface yang baik. Hal-hal yang perlu diperhatikan, yaitu: 1. Berusaha untuk Konsisten Seluruh desain antarmuka harus konsisten mulai dari jenis tulisan, warna tulisan, bentuk menu yang digunakan, peletakan menu dalam aplikasi dan sebagainya. Terminologi yang ada dalam prompt, menu dan layar bantuan harus identik. 2. Memberikan penggunaan yang universal Mengingat kebutuhan user yang beragam, maka dalam merancang user interface harus mempertimbangkan hal-hal berikut meliputi perbedaan umur, hambatan fisik dan keberagaman teknologi. 3. Memberikan feedback yang informatif Untuk setiap aksi yang dilakukan, seharusnya ada suatu sistem yang memberikan umpan balik yang interaktif kepada user. Tujuan dari umpan balik tersebut juga berfungsi agar user mengetahui apakah aksi yang diberikan sudah benar dan diterima dengan baik oleh sistem.
30 4. Merancang dialog untuk menghasilkan keadaan akhir Dalam merancang komunikasi yang baik dengan pengguna, urutan tindakan harus diatur menjadi bagian awal, tengah dan akhir. Feedback yang informatif dapat memberikan kepuasan kepada user dan memberikan suatu indikasi untuk mempersiapkan aksi selanjutnya. 5. Menyediakan pencegahan kesalahan Perancangan sistem dapat mencegah penggunanya melakukan kesalahan yang fatal yang dilakukan oleh user. Apabila user melakukan kesalahan, user interface harus mendeteksi kesalahan dan memberikan instruksi yang sederhana dan spesifik kepada user bagaimana memperbaikinya. 6. Memungkinkan pembalikan aksi yang mudah Sistem
perancancangan
user
interface
harus
dapat
mengembalikan aksi yang dilakukan sebelumnya. Aksi ini dapat menghilangkan kekhawatiran user. Contohnya user tidak sengaja melakukan aksi yang tidak diinginkan, maka user dapat melakukan pembatalan aksi dengan mengembalikan user interface sebelumnya. Selain itu, aksi ini dapat mendorong user untuk melakukan aksi-aksi yang belum pernah dijelajahi. 7. Menyediakan internal locus of control User mempunyai kuasa untuk mengatur program yang ada di dalam sistem atau user interface yang ada.
31 8. Mengurangi beban ingatan jangka pendek Karena keterbatasan manusia dalam mengingat informasi dalam jangka pendek, maka user interface harus dibuat sederhana. Hal ini dapat membuat user tidak perlu banyak mengingat dalam penggunaanya.
2.2
Teori Khusus Teori khusus adalah teori-teori khusus yang biasa digunakan sebagai landasan
pembuatan skripsi. Berikut teori yang terkait, yaitu: 2.2.1
Game Menurut Adams (2010:3), sebuah game adalah sejenis aktivitas bermain
yang dilakukan dalam keadaan nyata yang abstrak dimana pemain mencoba untuk mendapatkan setidaknya tujuan yang sesuai dengan keinginannya dengan bertindak sesuai dengan aturan yang ada. Menurut Adams (2010:4-8) terdapat 4 elemen penting dalam game, yaitu play, pretending, a goal, dan rules. 1. Play Play adalah sebagian bentuk dari hiburan, dimana buku, film, dan teater adalah bentuk presentasinya. Ketika kita membaca buku, pengarang akan menghibur pembaca, tapi ketika bermain, kita akan menghibur diri sendiri. Sebuah buku tidak bisa diubah, seberapa sering pun dibaca, tetapi ketika bermain game, kita bisa membuat pilihan yang dapat menentukan langkah selanjutnya. Setiap kali bermain game, kita dapat membuat pilihan berbeda dan mempunyai pengalaman yang baru. Play juga berisi kebebasan dalam
32 bertindak dan kebebasan untuk memilih bagaimana kita bertindak. Kebebasan ini tentu saja terbatas, selama kebebasan tersebut ada didalam rules (aturan) 2. Pretending Pretending adalah tindakan membuat kenyataan abstrak di dalam pikiran, seperti yang sudah dijelaskan dalam definisi game. Nama lain dari kenyataan abstrak itu adalah magic circle. Magic circle berkaitan dengan konsep dunia imajinasi fiksi dan drama. Pemain akan dapat menampilkan sesuatu yang tidak mungkin di dunia nyata, contohnya pemain dapat bergerak dengan kecepatan cahaya. 3. Goal Sebuah game harus memiliki goal atau tujuan dan tujuan itu boleh lebih dari satu. Tujuan dari game tersebut ditentukan dengan adanya rules atau aturan yang dibuat sesuai dengan keinginan perancang game tersebut. Disamping itu aturan dan tujuan dari game tersebut sepenuhnya terdiri dari magic circle tetapi konsep menang dan kalah dapat berpengaruh pada dunia nyata. 4. Rules Rules adalah definisi dan instruksi kepada pemain yang setuju untuk menerima lamanya game tersebut. Setiap game mempunyai aturan, meskipun aturan itu tertulis atau dijelaskan secara langsung pada game. Rules mempunyai beberapa fungsi, yaitu rules dapat membangun suatu objek dan arti objek tersebut didalam game yang berada pada magic circle. Selain itu rules juga dapat membuat contextual framework yang
33 memungkinkan pemain mengetahui aktivitas apa yang diijinkan dan untuk mengevaluasi aksi apa yang paling dapat membantunya dalam mendapatkan goal.
2.2.2 Genre Game Menurut Adams (2010:392-590), genre – genre pada game meliputi: 1. Action Game, biasanya kebanyakan tantangan yang dicobakan untuk kemampuan pemain dan koordinasi. Genre game ini juga membutuhkan koordinasi tangan dan mata yang baik dan cepat. Beberapa orang yang lain membutuhkan kemampuan fisik lain seperti ketepatan menembak, waktu, irama atau kemampuan untuk mengeksekusi kumpulan perintah yang sulit. 2. Strategy Game, biasanya mengandung unsur strategi, taktikal dan logika dalam tantangannya dan sebagai tambahan juga ada tantangan ekonomi. 3. Role-playing Game, memiliki unsur taktikal, logika dan eksplorasi di dalam tantangannya. Genre ini juga memasukkan unsur ekonomi karena biasanya game dengan genre ini harus mengumpulkan barang-barang dan kemudian menukarkannya dengan senjata yang lebih baik. Kadang-kadang juga dimasukkan puzzle di dalamnya namun jarang sekali ada tantangan fisik. 4. Vechicle Simulations, mencakup beberapa lingkungan dan mekanisme game termasuk pertandingan melawan pemain lain atau lawan virtual. Pada game ini juga akan melibatkan eksplorasi atau hanya pengalaman dalam menggunakan kendaraan.
34 5. Sports Game, termasuk di dalamnya game olahraga, simulasi kendaraan dan kehidupan maya. Memiliki tantangan fisikal dan taktikal tetapi tidak memasukkan tantangan eksplorasi, ekonomi dan konseptual di dalamnya. 6. Construction and Management Game merupakan salah satu game yang kebanyakan tantangannya menyangkut dengan tantangan ekonomi dan kegiatan pertumbuhan konstruksi. Game ini juga menghindari koordinasi fisik dan tantangan konflik. 7. Adventure Game, bukanlah sebuah kompetisi atau simulasi. Akan tetapi, sebuah adventure game adalah sebuah game yang memakai cerita yang interaktif mengenai karakter yang dimainkan oleh user. Adventure game adalah text–only game. Gameplay-nya sederhana tetapi seutuhnya novel. Ini adalah genre pertama game yang memberikan pemain kebebasan untuk berkhayal, dan ini masih menjadi kualitas yang penting dari adventure game sekarang. Sangat jarang memasukkan unsur konseptual dan tantangan fisik. 8. Artificial and Puzzle Game, Game ini memiliki jenis tantangan yang sama, yaitu mengandalkan logika. Artificial game lebih berpusat pada menjaga dan menumbuhkan sebuah populasi yang dapat diatur dan dengan gameplay yang unik. Sedangkan untuk puzzle game lebih berpusat pada mengenali pola, membuat keputusan yang menggunakan logika dan dapat dimengerti. Genre yang ada di atas juga dapat digabungkan untuk mendapatkan gameplay yang lebih variatif dan menantang.
35 2.2.3
Casual Gamers Menurut Adams (2010:75), Casual gamers biasa memainkan game hanya
sekedar untuk mencari kesenangan saja. Apabila saat game yang dimainkan sudah tidak menyenangkan untuk dimainkan bahkan sampai membuat frustrasi, biasanya casual gamers akan berhenti bermain. Bagi para casual gamers, permainan yang dimainkan harus menghibur. Casual gamers tidak akan menghabiskan waktu berjam-jam hanya untuk mempelajari hal yang kompleks dalam bermain, bahkan mati berulang kali hanya untuk mecari titik kelemahan musuh. Bila ingin mendesain game untuk casual gamers, setidaknya harus dibuat tantangan yang melibatkan pikiran, bahkan gerakan tubuh.
2.2.4
Game Design Menurut Adams (2010:44-52), suatu game harus dirancang dan dibuat
dengan melakukan beberapa kali percobaan, pengaturan pada game, dan perbaikan pada desain setelah dikembangkan. Tidak semua bagian dari proses perancangan dapat direvisi. Seperti pemilihan konsep, target user, dan genre harus ditentukan pada awalnya dan tidak bisa diganti setelahnya. Proses itu dibagi menjadi 3 bagian utama, yaitu:
Gam bar 2.10 Gambar Game Design ( Sumber : Adams, 2010,p44 )
36 1.
Concept Stage Didalam proses ini akan membahas beberapa pokok bahasan
seperti bagaimana konsep game, menetapkan pemain, dan menentukan peran pemain dalam game. Hasil dari proses ini tidak dapat diubah atau direvisi. 2.
Elaboration Stage Pada proses ini akan dibahas beberapa hal pokok seperti
menentukan gameplay, menentukan karakter utama, game world, core mechanic, mendesain level yang ada pada game tersebut, menentukan story pada game. Selain itu pada proses ini juga, programmer akan membuat prototype game yang akan dicoba dan diperbaiki secara berulang-ulang hingga sesuai dengan konsep game yang diinginkan. 3.
Tuning Stage Proses ini merupakan proses yang paling akhir dalam merancang
suatu game. Pada proses ini game akan dilakukan pemeliharaan, perbaikan bug, dan penyempurnaan game yang dibuat.
2.2.5 Game Balancing Menurut Adams (2010:324), terdapat beberapa hal yang mempengaruhi perancangan
game balancing. Hal ini berguna agar game yang akan dibuat
menjadi seimbang dan menarik untuk dimainkan. Hal-hal tersebut adalah: 1.
Menyediakan pilihan yang memiliki fungsi Bila dalam game diberikan beberapa pilihan strategi, tidak boleh
ada strategi yang paling dominan. Kalau ada strategi yang dominan maka
37 strategi lainnya akan tertutup oleh strategi tersebut, dan tidak ada artinya menyediakan beberapa pilihan strategi. 2.
Jangan menonjolkan kesempatan yang bisa membuat skill tidak
berfungsi Dengan tidak menonjolkan kesempatan, maka pemain yang memang memiliki skill akan lebih berhasil dibandingkan dengan yang tidak memiliki skill. 3.
Pemain harus berpikir bahwa game bersikap adil Kesulitan dalam tantangan tidak boleh dibuat meningkat banyak
seperti tiba-tiba menjadi sangat sulit. Game yang membuat pemain belajar melalui kekalahan juga dianggap tidak adil. 4.
Tingkat kesulitan permainan harus konsisten Kesulitan yang dibuat untuk setiap level harus dibuat dengan
rentang yang masuk akal. Bila memang game dibuat dengan kesulitan yang rendah, maka peningkatan kesulitan juga harus rendah, dan sebaliknya.
2.2.6
Storyboard Menurut Vaughan (2011:295), Storyboard dapat menggambarkan proyek
dengan detail menggunakan tulisan dan sketsa gambar yang digunakan untuk pilihan layar gambar, suara, dan navigasi setiap layarnya. Selain itu di dalam storyboard juga dapat mengatur warna dan corak, isi teks, atribut, font dan bentuk tombol, style, tanggapan serta perubahan suara. Metode yang akan digunakan tergantung pada apakah orang yang sama akan mengerjakan semua nya atau apakah implementasi akan ditugaskan dan dikerjakan oleh tim baru yang akan
38 membutuhkan spesifikasi secara detail seperti storyboard dan sketsa. Disamping itu, semakin banyak rencana yang ada dikertas, semakin baik dan mudah dalam mengerjakan suatu proyek. Berikut contoh storyboard:
Gambar 2.11 Contoh Storyboard ( Sumber : Vaughan, 2011:301)
2.2.7
PHP Menurut Davis dan Philips (2007:3), PHP merupakan suatu bahasa
pemrograman yang didesain untuk menerjemahkan halaman web secara interaktif pada komputer, sering disebut juga sebagai web server. Tidak seperti HTML, dimana web browser masih menggunakan tags dan markup, PHP bekerja diantara requested page dan web server.
39 Pengembangan suatu web dengan PHP akan lebih mudah karena semua kode yang diperlukan sudah disediakan didalam PHP Framework. PHP tidak menyimpan informasi data dengan sendirinya, maka dari itu diperlukan sebuah database.
2.2.8
Facebook Apps Membuat sebuah aplikasi di facebook memberikan sebuah kesempatan
untuk terintegrasi dengan pengalaman inti facebook. Aplikasi yang ada dapat terintegrasi dengan banyak aspek dari facebook.com, termasuk news feed dan notifications. Ada yang perlu diperhatikan dalam membuat aplikasi di facebook (developers.facebook.com), yaitu: a.
Canvas Page Aplikasi facebook akan dimuat ke Canvas Page. Canvas Page
adalah kanvas kosong dalam Facebook yang menjadi tempat aplikasi tersebut dapat berjalan. Jika terdapat pemain yang menggunakan aplikasi facebook ini, maka Facebook akan membuat bookmark untuk pemain agar mudah mengakses aplikasi itu lagi. b.
Social Channels Untuk mengendalikan banyak aplikasi yang ada di facebook,
maka harus diadakannya beberapa saluran yang memberikan pemain baru untuk menemukan aplikasi yang telah dibuat. Setiap saluran didesain untuk membantu pemain yang terlibat dan algoritma yang membantu membuat konten terbaik untuk setiap pemain. Saluran yang sedang berjalan adalah:
40 -
Bookmarks Hal ini memungkinkan pemain untuk mendapatkan
bookmark setelah menggunakan suatu aplikasi. -
Notifications Saluran ini digunakan untuk mengingatkan pemain dalam
mengirimkan
pemberitahuan
tentang
aplikasi
yang
telah
dimainkan atau hanya sekedar mengundang untuk memainkan suatu aplikasi. -
Newsfeed Stories Aplikasi dapat membagikan cerita dalam menggunakan
aplikasi dengan orang lain. Dengan cara itu kita dapat mudah mengetahui siapa sajakah yang bermain aplikasi yang sama dengan yang sedang dimainkan. Pemain juga dapat mengontrol aplikasi apakah aplikasi tersebut ingin ditampilkan atau tidak. -
Timelines Pada timeline yang dimiliki pemain, akan muncul aplikasi
apa saja yang telah dimainkan. c.
Analytics Fungsi digunakan untuk seberapa puas atau seberapa banyak user
yang menikmati aplikasi yang dibuat. Hal itu dapat diukur dengan berapa pemain yang aktif, berapa banyak like yang telah didapat, dsb.
41 2.2.9
Internet Menurut Gary dan Misty (2011:74), Internet adalah alat untuk menjelajah
yang digunakan secara luas, menyediakan akses ke informasi secara global serta komunikasi secara instan. Akses ke internet dapat dilakukan dimana saja dari sebuah komputer, seperti di sekolah, di rumah, di kantor, di restoran, dan sebagainya. Internet atau yang sering disebut net adalah suatu jaringan luas yang menghubungkan jutaan bisnis, agensi pemerintahan, institusi edukasional, dan individu.
2.2.10
World Wide Web (WWW) Menurut Gary dan Misty (2011:80-81), World Wide Web terdiri dari
dokumen-dokumen elektronik yang merupakan koleksi dunia. Masing-masing dokumen elektronik disebut Web page. Didalamnya terdapat teks, gambar, animasi, audio, dan video. Beberapa web page ada yang statis (tetap), ada juga yang dinamis (berubah). Orang yang mengakses web page yang statis dapat mengakses konten yang sama. Sedangkan dengan web page yang dinamis, orang yang mengakses web tersebut dapat mengatur sebagian atau semua konten yang ada.
2.2.11
Web Browser Menurut Shelly dan Vermaat (2011:81), Web Browser adalah sebuah
aplikasi software yang memungkinkan penggunanya untuk mengakses dan melihat halaman web. Web browser yang paling banyak digunakan untuk PC adalah
42 Internet Explorer, Firefox, Opera, Safari, dan Google Chrome. Untuk menelusuri web dengan web browser, diperlukan komputer atau ponsel yang terhubung ke internet. Saat web browser pertama kali dibuka akan tampil halaman utama web browser atau yang disebut homepage.
2.2.12
Web Hosting Menurut Suryana (2008:13), Web hosting adalah jasa penyedia hosting di
internet. Mereka bertugas untuk menyediakan dan mengatur ruang harddisk yang akan disewa oleh pemilik suatu domain untuk menyimpan file agar dapat ditampilkan di browser internet. Pada dasarnya perusahaan web hosting adalah organisasi bisnis yang menyediakan computer server yang melayani banyak pemilik domain.
2.2.13
Domain Name Menurut Suryana (2008:9), domain pada umumnya dikenal dengan
definisi dengan alamat url atau website. Secara teoritis, domain dapat berupa nama host, subdomain, atau top level domain. Pemberian nama host (komputer yang terhubung ke jaringan) memiliki format dan aturan sendiri untuk mendefinisikan suatu hierarki, kumpulan hierarki ini disebut domain name space.
43
Gambar 2.12 Domain Name ( Sumber : Suryana, 2008:9)
Dari gambar diatas, domain paling atas tingkatannya adalah root domain. Semua titik dibawah root domain, disebut top level domain atau sering dikenal dengan istilah TLD. Top level domain digunakan untuk menunjukkan jenis perusahan, lembaga atau negara tempat server berada. Untuk memperoleh domain bisa dilakukan melalui pendaftaran domain melalui pejual domain yang ada.
2.2.14
ActionScript 3.0 Menurut Rosenzweig (2008:2), ActionScript pertama kali muncul pada
tahun 1996 bersamaan dengan hadirnya Flash 4, dimana pada saat itu belum disebut dengan ActionScript, bahkan code belum dapat diketik. Statements dipilih dari rangkaian-rangkaian dropdown menus. ActionScript 1.0 hadir pada tahun 2000 seiring dengan berkembangnya Flash 5. Tidak lama kemudian, munculah Flash MX 2004 yang sering kita ketahui juga sebagai Flash 7 yang memiliki fitur ActionScript 2.0 didalamnya.
44 ActionScript 2.0 merupakan bahasa scripting yang sangat powerful sehingga dapat membuat OOP (Object Oriented Programs) dengan mudah. Dan yang terakhir ActionScript 3.0 diperkenalkan pada tahun 2006 dan telah menjadi bahasa pemrograman utama bagi Flash saat ini.
2.2.15
Authoring Tools Menurut Lambert (2010:2), authoring tool merupakan kumpulan
software yang digunakan developer untuk memuat dan menyatukan konten yang dapat disampaikan kepada user. Karena authoring tool mempunyai batasan dalam menggunakannya, biasanya authoring tool digunakan untuk membuat modul elearning. 2.2.15.1 Adobe Flash Professional CS6 Adobe Flash Professional CS6 adalah sebuah authoring tool untuk merancang tampilan animasi dan konten multimedia. Design yang menarik dan interaktif dirancang secara konsisten dan digunakan dalam berbagai aplikasi desktop, dan perangkat lainnya seperti tablet, smartphone, dan televisi. Peningkatan versi ke Flash Professional CS6 memungkinkan user untuk menggabungkan beberapa simbol dan urutan animasi ke dalam sebuah sprite sheet. Sprite sheet itu digunakan untuk membuat urutan yang lebih baik dan membuat konten yang lebih menarik menggunakan native extension untuk mengakses kapabilitas dan suatu perangkat yang spesifik, serta membuat asset dan animasi untuk digunakan dalam HTML5. (www.adobe.com)
45 2.2.15.2 Flashdevelop Flashdevelop adalah sebuah aplikasi open source. Flashdevelop dibuat pada tahun 2005 oleh Flash developers yang memiliki motivasi yang baik. Didalamnya kita dapat mendapatkan banyak sekali fitur, menyelesaikan bug dan fitur lainnya. Selain itu Flashdevelop juga mendukung Actionscript 2.0 dan 3.0 dan perkembangan HaXe. Aplikasi ini sangat membantu untuk pada Flash programmer untuk generalisasi kode atau sintaks yang dapat digunakan dalam suatu proyek. (www.flashdevelop.org ) 2.2.15.3 MySQL Database MySQL adalah database open source yang paling populer karena performa, daya tahan tinggi dan penggunaannya yang mudah. MySQL juga menjadi pilihan database untuk aplikasi yang dibangun dengan LAMP (Linux, Apache, MySQL, PHP/Perl/Phyton). Sebagian besar dari organisasi terbesar di dunia, termasuk Facebook, Google, Adobe, Alcatel Lucent dan Zappos bergantung pada MySQL untuk menghemat waktu dan biaya dalam menangani website nya. MySQL dapat beroperasi di lebih dari 20 platform, termasuk Linux, Windows, Mac OS, Solaris, IBM AIX, memberikan kontrol fleksibilitas pada user. MySQL menawarkan tools database, bantuan, training dan konsultasi kepada user, baik kepada user yang baru mengenal teknologi database maupun user yang sudah berpengalaman. (www.myql.com, akses: 27 September 2012)
46 Menurut Andi (2008:87), pemilihan MySQL sebagai database tidak hanya berdasarkan sifatnya yang open source ataupun gratis tetapi ada beberapa keuntungan lainnya, yaitu: •
Terintegrasi dengan baik dengan PHP dan beberapa pemrograman lain, sehingga memudahkan programer untuk membangun aplikasi.
•
Dapat digunakan pada berbagai jenis platform.
•
Mempunyai mekanisme keamanan yang baik.