1 BAB 2 LANDASAN TEORI

advertisement
BAB 2
LANDAS AN TEORI
1
L1
ultimedia
1.1
Multimedia
M enurut Tay Vaughan (2006), multimedia adalah kombinasi dari teks, foto,
seni grafis, suara, animasi, dan elemen – elemen video yang dimanipulasi secara
digital.
Elemen-elemen yang terdapat di dalam multimedia adalah sebagai berikut:
1. Teks
Teks merupakan media dasar dalam sistem multimedia. Dalam
aspek kehidupan, teks digunakan untuk bertukar pikiran, ide, dan fakta.
Sebuah teks dapat ditafsirkan menjadi beberapa arti, karenanya
keakuratan dan kepadatan dalam teks yang dipilih sangatlah penting.
Dalam multimedia, teks dapat digunakan pada judul, menu, navigasi,
dan isi dari multimedia.
2. Suara
Audio digital dibuat saat mengkonversikan sebuah gelombang
suara ke dalam angka, dimana proses ini disebut digitizing
(mendigitalkan). Suara digital merupakan sampel suara. Setiap fraksi n
dalam satu detik, sampel suara diambil dan disimpan sebagai informasi
digital dalam bit dan byte. Kualitas dari recording digital tergantung
pada seberapa sering sampel diambil (angka sampling atau frekuensi,
dihitung dalam kilohertz, atau seribu sampel per detik) dan berapa
banyak angka yang digunakan untuk mereprentasikan nilai dari tiap
sampel (bitdepth, ukuran sampel, resolusi, range dinamis). Semakin
sering sampel diambil dan semakin banyak data yang disimpan
L2
mengenai sampel, semakin bagus resolusi dan kualitas suara yang
ditangkap ketika diputar.
3. Gambar
Gambar adalah representasi grafik dan visual dari informasi yang
dapat ditampilkan pada layar komputer atau tercetak. Gambar
mempunyai peran penting dalam multimedia untuk alat navigasi,
komponen user interface, sistem help, dan clip-art. Secara umum,
image dapat dibagi dalam dua format, yaitu Bitmap dan gambar Vektor.
Bitmap atau Raster Images disimpan dalam array of pixel yang
merepresentasikan gambar sebagai array of dots (pixel). Sebuah pixel
merupakan elemen terkecil dalam resolusi layar komputer (screen
resolution) dan setiap pixel mewakili suatu warna yang spesifik namun
dapat memiliki 2 atau lebih range warna (color depth).
Gambar Vektor disimpan sebagai bentuk geometri (set grafik
primitif) yang didefinisikan secara matematika untuk menampilkan
gambar. Gambar Vektor dapat diubah ukurannya tanpa kehilangan
integritas dari image aslinya.
4. Animasi
Animasi adalah membuat presentasi statis menjadi hidup.
Animasi merupakan perubahan visual sepanjang waktu dan memberi
kekuatan besar pada proyek multimedia dan halaman web. Video
televisi terdiri atas 30 frame atau gambar tiap detiknya, kecepatan di
mana setiap frame digantikan oleh frame lain membuat gambar tampak
L3
bergerak dengan halus. Gambar hidup dalam film biasanya diambil
dengan angka 24 frame per detik.
5. Video
Video adalah gambar “bergerak” yang ditangkap menggunakan
movie camera atau video camera yang kemudian disimpan di dalam
suatu format khusus.
1.2
Interaksi Manusia dan Komputer
M enurut Ben Shneiderman (2010), interaksi manusia dan komputer (IM K)
adalah disiplin ilmu yang berhubungan dengan perancangan, evaluasi, dan
implementasi sistem komputer interaktif untuk digunakan oleh manusia, serta studi
fenomena-fenomena besar yang berhubungan dengannya.
Sebuah sistem dapat diartikan interaktif apabila sistem tersebut dapat
berkomunikasi dengan penggunanya, sehingga sistem tersebut dapat berguna bagi
pengguna tersebut.
Dalam perancangan desain antarmuka (interface) terdapat delapan aturan emas
(Eight Golden Rules) yang harus diperhatikan, yaitu:
1. Berusaha untuk konsisten
Tindakan yang konsisten diperlukan dalam situasi yang serupa.
Konsistensi juga harus diterapkan pada prompt, menu, layar help,
warna tampilan, kapitalisasi, huruf, dan sebagainya.
L4
2. M endukung kegunaan secara universal
Diharapkan terdapat bantuan untuk user pemula untuk menguasai
beberapa fitur dasar .Selain itu, seiring meningkatnya frekuensi
penggunaan, pengguna juga ingin mengurangi jumlah interaksi dan
meningkatkan laju dari interaksi tersebut. singkatan, tombol fungsi,
perintah tersembunyi, dan fasilitas makro sangat membantu expert user.
3. M enawarkan umpan balik yang informatif
Diharapkan
dari
setiap
tindakan
yang
dilakukan,
user
mendapatkan umpan balik (feedback) yang informatif dari sistem.
Untuk tindakan-tindakan yang sering terjadi, umpan balik yang
diberikan dapat dibuat secara sederhana, sedangkan untuk tindakan
yang jarang dilakukan dan penting harus menampilkan umpan balik
secara detail.
4. M erancang dialog yang memberikan penutupan (keadaan akhir)
Urutan tindakan harus dikelompokkan ke dalam bagian awal,
tengah, dan akhir. Suatu umpan balik yang informatif seharusnya
memberikan
kepuasan
penyelesaian,
rasa
lega,
tanda
untuk
menghentikan suatu rencana dan pilihan dari pikiran mereka, dan
indikasi bahwa caranya jelas untuk mempersiapkan tindakan-tindakan
berikutnya.
5. M enawarkan penanganan kesalahan yang sederhana
Sistem yang dibuat diharapkan tidak menghasilkan kesalahan
yang serius jika digunakan oleh pengguna. Jika pengguna melakukan
L5
kesalahan, s istem diharapkan mendeteksi kesalahan tersebut dan
memberikan solusi pemecahan masalah yang baik dan sederhana.
6. M emungkinkan pembalikan aksi yang mudah
Diharapkan adanya feature untuk kembali (back) ke aktivitas
sebelumnya. Hal ini bertujuan agar pengguna dapat kembali ke aktivitas
sebelumnya jika ternyata pengguna melakukan suatu kesalahan
sehingga pengguna dapat memperbaikinya dan mendorong pengguna
dalam mencoba pilihan-pilihan tindakan yang belum mereka kenali.
7. M endukung pusat kendali internal
M enjadikan
pengguna yang menggunakan
sistem sebagai
pemegang kendali, bukan sebagai yang dikendalikan.
8. M engurangi beban ingatan jangka pendek
M engingat keterbatasan manusia dalam pemrosesan informasi
dalam jangka pendek, sebuah sistem diharapkan dibuat dengan
tampilan sesederhana mungkin, frekuensi pergerakan window dikurangi
dan hal-hal lain yang dapat membebani ingatan pengguna. Informasi
seperti singkatan atau kode sebaiknya juga disediakan.
Selain terdapat 8 aturan emas (Eight Golden Rules) yang harus diperhatikan
dalam perancangan desain antarmuka, terdapat juga 5 faktor manusia terukur yang
digunakan untuk mengevaluasi perancangan desain antarmuka, yaitu :
1. Waktu Belajar
Lama waktu yang dibutuhkan oleh orang biasa untuk mempelajari cara
untuk melakukan suatu tugas yang relevan.
L6
2. Kecepatan Kinerja
Lama waktu yang dibutuhkan untuk melakukan suatu tugas.
3. Tingkat Kesalahan
Banyaknya kesalahan dan kesalahan-kesalahan apa saja yang dibuat oleh
pemakai.
4. Daya Ingat
Kemampuan pemakai mempertahankan pengetahuannya setelah jangka
waktu tertentu.
5. Kepuasan Subjektif
Kepuasan pemakai terhadap berbagai aspek sistem, termasuk kesempatan
pengguna untuk memberikan umpan balik.
1.3
Kebudayaan Indonesia
M enurut M udjahirin Thohir (2009) pengertian kebudayaan Indonesia adalah :
a. Pertama, kebudayaan (Indonesia) adalah kebudayaan yang sudah terbentuk.
Definisi ini mengarah kepada pengertian bahwa kebudayaan Indonesia
adalah keseluruhan pengetahuan yang tersosialisasi/internalisasi dari
generasi-generasi sebelumnya, yang kemudian digunakan oleh umumnya
masyarakat Indonesia sebagai pedoman hidup. Jika dilacak, kebudayaan ini
terdokumentasi dalam artefak/atau teks. M elihat kebudayaan dari sisi ini,
kita akan mudah terjebak kepada dua hal. Pertama, apa yang sudah ada itu
diterima sebagai sesuatu yang sudah baik bahkan paripurna. Ungkapan
seperti kebudayaan Jawa adalah kebudayaan yang adiluhung, merupakan
contoh terbaiknya. Di sini, apa yang disebut kebudayaan adalah dokumen
L7
text (Jawa termasuk sastra-sastra lisan) yang harus dijadikan pedoman kalau
kita tidak ingin kehilangan ke-jawa-annya. Ungkapan: “ora Jawa” atau
“durung Jawa” adalah ungkapan untuk menilai laku (orang Jawa) yang
sudah bergeser dari text tersebut.
b. Kedua,
kebudayaan
(Indonesia)
adalah
kebudayaan
yang
sedang
membentuk. Pada definisi kedua ini menjelaskan adanya kesadaran bahwa
sebetulnya, tidak pernah (baca: terlalu sedikit) ada masyarakat manapun di
dunia ini yang tidak bersentuhan dengan kebudayaan dan peradaban lain,
termasuk kebudayaan Indonesia atau kebudayaan Jawa. Hanya saja ada
pertanyaan serius untuk memilih definisi kedua ini, yaitu bagaimana lalu
kebudayaan kita berdiri tegak untuk mampu menyortir berbagai elemen
kebudayaan asing yang cenderung capitalism yang notabene, dalam batasbatas tertentu, negative (baca: tidak cocok)? Pada saat yang sama,
kebudayaan global yang kapitalistik itu, telah masuk ke berbagai relungrelung kehidupan masyarakat “tanpa” bisa dicegah. Kalau begitu,
pertanyaannya ialah: membatasi, menolak, atau mengambil alih nilai-nilai
positif yang ditawarkan. Persoalan seperti ini dulu sudah pernah menjadi
perdebatan para ahli kebudayaan, sebagaimana yang dilakukan oleh Armen
Pane dkk versus Sutan Takdir Alisyahbana (Lihat pada buku Polemik
Kebudayaan), dan sampai sekarang pun sikap kita tidak jelas juntrungnya.
c. Ketiga,
adalah
kebudayaan
(Indonesia)
adalah
kebudayaan
yang
direncanakan untuk dibentuk. Ini adalah definisi yang futuristic, yang perlu
hadir dan dihadirkan oleh warga bangsa yang menginginkan Indonesia ke
depan HARUS LEBIH BAIK. Inilah yang seharusnya menjadi focus kajian
L8
serius bagi pemerhati Indonesia, wa bil khusus para mahasiswa dan dosendosen ilmu budaya.
1.4
Game
M enurut Ernest Adams (2010), game adalah jenis kegiatan bermain yang
dilakukan dalam konteks berpura-pura dalam dunia nyata, dimana para peserta berusaha
untuk mencapai suatu tujuan yang dilakukan sesuai dengan aturan yang ada. Sedangkan
menurut Jesse Schell (2008), game adalah sebuah aktifitas pemecahan masalah, dengan
pendekatan yang bersifat menyenangkan.
Terdapat empat elemen dasar yang membentuk sebuah game (elemental tetrad),
yaitu Mechanics, Story, Aesthetics, dan Technology.
1. Mechanics
Mechanics merupakan prosedur dan peraturan yang berlaku di dalam suatu
game. Mechanics menjelaskan tujuan dari game tersebut, bagaimana pemain
dapat mencoba untuk mencapai tujuan yang ada, dan apa yang akan terjadi jika
mereka mencoba melakukan hal tersebut.
2. Story
Story merupakan urutan kejadian yang terjadi dalam suatu game, story dapat
berjalan secara linier dan pre-scripted atau dapat juga bercabang dan muncul
secara tiba-tiba.
3. Aesthetics
L9
Aesthetics adalah bagaimana penampilan, suara, dan rasa yang ada di dalam
game tersebut. Aesthetics merupakan aspek yang sangat penting dalam game
design karena langsung mempengaruhi pengalaman bermain.
4. Technology
Technology pada dasarnya merupakan
media dimana Aesthetics
akan
berlangsung, dimana Mechanics akan terjadi, dan bagaimana Story akan
disampaikan pada game tersebut.
Gambar 2.1 Elemental tetrad (Ernest Adams, 2010)
1.5
Gameplay
M enurut Earnests Adams (2010), gameplay terdiri dari tantangan-tantangan yang
pemain harus hadapi untuk mencapai tujuan dari game tersebut dan tindakan-tindakan
yang diperbolehkan untuk menghadapi tantangan-tantangan yang ada.
L10
M enurut Lindsay Grace (2005), genre pada gameplay dibedakan menjadi
beberapa jenis, yaitu:
1. Action
Action game adalah game yang menawarkan banyak aksi sebagai daya tarik
utama. Keterampilan yang paling dibutuhkan untuk memainkan game ini
dengan baik adalah respon reflek dari pemain.
2. Adventure
Adventure game adalah game yang menawarkan eksplorasi area dan
memecahkan teka-teki sebagai daya tarik utama. Dilihat dari game-game
yang sudah ada, game dengan genre Adventure menawarkan cerita yang
paling menarik dibandingkan game dengan genre lain. Penalaran, kreatifitas,
dan rasa ingin tahu adalah keterampilan yang paling dibutuhkan untuk
memainkan game ini dengan baik.
3. Puzzle
Puzzle game adalah game yang menawarkan puzzle sebagai daya tarik
utamanya.
Game-game ini biasanya dirilis melalui web dan memiliki anggaran yang
rendah dalam pembuatannya.
4. Role Playing
Role Playing game (RPG) adalah game yang menawarkan pemain sebuah
peluang untuk merasakan dirinya menjadi seorang karakter dari game
tersebut. Role Playing game biasanya menawarkan banyak karakter, durasi
permainan yang panjang, dan mengatur karakter secara teknis.
L11
5. Simulation
Simulation game adalah game yang memiliki elemen utama berupa
kemampuan untuk menyajikan situasi yang sama dengan dunia nyata.
Simulation game menyediakan kesenangan memalui pemeragaan.
6. Strategy
Strategy game adalah game yang menghibur melalui proses penalaran dan
pemecahan masalah.
1.6
Tactical Role Playing Game (TRPG)
Tactical RPG atau sering dikenal dengan Strategy RPG, merupakan percampuran
antara elemen game turn-based strategy pada PC dengan proses perkembangan karakter
RPG pada konsol. Contoh yang paling dikenal adalah Final Fantasy Tactics, sampai
dengan genre ini sering didefinisikan sebagai “game yang mirip dengan Final Fantasy
Tactics” (Ini ironis karena FFT disorot di Jepang karena terlalu mirip dengan judul
sebelumnya, Tactics Ogre, namun ini adalah kisah yang lain). (Everything2, 2003)
Tactical RPG adalah sebuah game peperangan dimana setiap unit dikembangkan
seperti karakter RPG pada konsol. Umumnya, hanya game yang menyeimbangkan
pentingnya dua elemen tersebut yang dianggap sebagai Tactical RPG. Elemen-elemen
umum dari Tactical RPG antara lain:
•
M edan perang seperti papan catur, sering digambarkan dengan kotak
yang jelas.
•
Pandangan kamera secara isometrik.
L12
•
Banyak kelas untuk karakter, didapatkan dengan menaikkan level atau
sejenis dengan experience point.
•
Kompleks, cerita politik yang berat, tidak terlalu bergantung dengan
suatu periode sejarah.
•
Fantastis, biasanya mengandung fantasi tinggi tapi kadang-kadang
menggunakan latar science fiction.
•
Penekanan
pada cerita yang telah
ditentukan,
bukan random,
pertempuran, dengan story yang diceritakan selama pertempuran itu
sendiri.
•
Abstrak, bukan pertarungan yang realistik. Karena kebanyakan Tactical
RPG adalah RPG pada konsol dan juga mengandung tingkat fantasi yang
tinggi, pertempuran umumnya akan mencakup abstraksi seperti giliran
yang bergantian dan hit points.
•
Tingkat kesulitan yang sangat tinggi, terutama berkaitan dengan
kematian. Kematian cenderung permanen, atau setidaknya sangat sulit
untuk dihidupkan kembali.
Tidak semua elemen-elemen ini selalu dibutuhakan untuk hadir, tapi game yang
tidak memasukkan sebagian besar elemen tersebut akan dianggap menggunakan genre
yang lain.
L13
1.7
Game Design
M enurut Jesse Schell (2008) game design adalah aksi yang menentukan
bagaimana seharusnya sebuah game. M enurut Andrew Rollings dan Ernest Adams
(2003), game design adalah proses dari membayangkan sebuah game, mendefinisikan
cara kerjanya, menggambarkan elemen-elemen yang membuat game tersebut
(konseptual, fungsional, artistik, dan lainnya), dan kemudian menyampaikan informasi
tersebut kepada tim yang membangun game tersebut.
M enurut Bob Gates (2004), pembuatan game akan dimulai dari pembuatan game
document. Game document digunakan untuk menjadi landasan pengembangan game
tersebut, dan menarik minat pembaca serta menginformasikan gambaran keseluruhan
game yang akan dibuat.
Berikut ini merupakan elemen di dalam game document:
1. High Concept
High Concept adalah gambaran umum mengenai game tersebut, tentang apa
game tersebut, biasanya ditampilkan dalam satu atau dua kalimat.
2. Genre
M enjelaskan genre apakah yang akan digunakan pada game tersebut.
3. Gameplay
Bagian merangkum aksi yang akan dilakukan pemain ketika pemain
memainkan game tersebut. Biasanya, bagian ini dimulai dari menentukan
genre dari game dan kemudian menjelaskan cara yang kreatif dan menghibur.
L14
4. Features
Bagian ini menampilkan kumpulan nilai jual utama dari game tersebut, yang
dapat membantu mengidentifikasi kemampuan dari game tersebut.
5. Setting
Bagian ini merangkum dunia dalam game dan isinya secara menarik dan unik
dalam beberapa paragraf
6. Story
Jika game tersebut mempunyai story, maka pada bagian ini memberikan
sinopsis pendek tentang story pada game tersebut.
7. Target Market
Bagian ini menjelaskan target pasar yang akan dituju game tersebut.
8. Target Hardware Platform
Bagian ini mengidentifikasi platform game apakah yang akan digunakan
untuk memainkan game tersebut.
9. Estimated schedule and budget
Bagian ini memperkirakan jadwal dan dana yang dibutuhkan untuk membuat
game tersebut.
10. Competitive analysis
Bagian ini membandingkan game yang akan dibuat dengan pesaing di pasar
yang mempunyai genre serupa.
11. The team
Bagian ini menampilkan kumpulan informasi dari tim pembuat game beserta
peran yang akan mereka lakukan pada pembuatan game tersebut.
12. Document summary
L15
Bagian ini berguna untuk menyakinkan publisher bahwa game ini akan
berhasil di pasar.
1.8
Rational Unified Process (RUP)
M enurut Scott W. Ambler (2005) Rational Unified Process (RUP) adalah sebuah
proses pengembangan sistem yang preskriptif dan terdefinisi dengan baik yang sering
digunakan untuk mengembangakan sistem berbasis obyek atau komponen berbasis
teknologi. RUP didasarkan pada prinsip-prinsip rekayasa perangkat lunak seperti
iterative, requirements-driven, dan architecture-centric pada pendekatan pengembangan
perangkat lunak.
Gambar 2.2 RUP life cycle (S cott W. Ambler, 2005)
Gambar diatas menggambarkan RUP life-cycle atau yang sering juga disebut
“diagram gundukan”. Gundukan horizontal untuk tiap bagian memberikan perkiraan
L16
kasar untuk setiap daya yang dibutuhkan untuk tiap fase. Sebagai contoh dapat dilihat
sebagian besar proses Business Modelling berlangsung pada fase Inception, meskipun
akan terus berlangsung hingga awal fase Transition. Fase-fase yang terdapat pada RUP
adalah sebagai berikut :
• The Inception Phase
Fase Inception bertujuan untuk menyakinkan stakeholder terhadap
tujuan proyek tersebut. Karenanya dibutuhkan porsi requirement untuk
menentukan batas dari proyek tersebut.
• The Elaboration Phase
Pada fase Elaboration, requirements akan lebih dijelaskan secara detail
dan menentukan arsitektur dari sistem.
• The Construction Phase
Fase Construction berfokus pada pembuatan sistem sampai titik dimana
sistem tersebut sudah siap untuk disebarkan.
• The Transition Phase
Fase Transition berfokus pada mengantarkan sistem ke dalam tahap
produksi. Akan ada pengujian oleh sistem tester dan end-user serta
terdapat pengerjaan ulang dan penyesuaian sistem.
L17
1.9
Java
Java dikembangkan oleh sebuah tim yang dipimpin oleh James Gosling di Sun
M icrosystems. Pada awalnya bernama Oak, didesain pada 1991 untuk digunakan pada
chip peralatan rumah tangga. Pada 1995, namanya diubah menjadi Java dan didesain
ulang untuk mendukung aplikasi internet. (Y. Daniel Liang, 2011)
Java adalah bahasa pemrograman dengan fitur lengkap dan digunakan untuk
berbagai tujuan yang dapat digunakan untuk membangun aplikasi-aplikasi penting
dengan baik. Karakteristik dari Java adalah :
1. Java is Simple
Tidak ada bahasa yang mudah, namun Java sedikit lebih mudah dari bahasa
pemrograman berorientasi obyek C++ yang populer dan sudah menjadi
bahasa yang dominan sebelum Java muncul. Sebagian dari Java dimodelkan
berdasarkan C++, namun dipermudah dan fitur-fitur yang ada sudah
ditingkatkan. Java mengganti multiple inheritance pada C++ dengan
interface dan menghilangkan fitur pointer. Java juga menggunakan memori
alokasi secara otomatis dan menyediakan garbage collector, sedangkan pada
C++ programmer harus mengalokasi dan mendealokasi memori yang
digunakan.
2. Java is Object-Oriented
Java sejak awal sudah dirancang sebagai sebuah bahasa pemrograman
berorientasi obyek.
Pemrograman
berorientasi obyek
pendekatan pada pemrograman yang menggantikan
pada teknik pemrograman.
adalah
proses
prosedur tradisional
L18
3. Java is Distributed
Distributed computing melibatkan beberapa komputer yang bekerja bersama
dalam suatu jaringan. Java dirancang untuk membuat distributed computing
menjadi lebih mudah. Dikarenakan kemampuan jaringan terintegrasi pada
Java, menulis program jaringan seperti mengirim dan menerima data ke dan
dari file.
4. Java is Interpreted
Program pada Java di-compile menjadi Java Virtual Machine code yang
disebut dengan bytecode. Bytecode tidak terikat pada suatu mesin tertentu
dan dapat berjalan pada semua mesin yang memiliki java interpreter, yang
merupakan bagian dari Java Virtual Machine (JVM ).
5. Java is Robust
Robust berarti dapat diandalkan. Java menekankan pada pengecekan awal
untuk kesalahan yang mungkin terjadi, dikarenakan Java compiler dapat
mendeteksi kesalahan-kesalahan yang muncul pertama kali pada waktu
eksekusi. Java juga memiliki fitur runtime exception handling untuk
membantu programmer.
6. Java is Secure
Sebagai internet programming language, Java digunakan di dalam sebuah
jaringan dan lingkungan terdistribusi. Saat menjalankan sebuah program
Java,
program
tersebut
tidak
akan
merusak
sistem karena Java
mengimplementasikan beberapa mekanisme keamanan untuk melindungi
sistem dari ancaman.
L19
7. Java is Architecture-Neutral
Dikarenakan Java yang interpreted, memungkinkan Java untuk menjadi
architecture-neutral atau platform-independent. Dengan adanya Java Virtual
Machine (JVM ), program yang dibuat dapat dijalankan pada platform
apapun.
8. Java is Portable
Dikarenakan Java yang architecure-neural, program Java bersifat portable.
Program tersebut dapat dijalankan pada berbagai platform tanpa perlu dicompile ulang. Lingkungan Java juga portable untuk hardware dan sistem
operasi yang baru, Java compiler sendiri juga ditulis menggunakan Java.
9. Java’s Performance
Kemampuan dari Java kadang dikritik, eksekusi dari bytecode tidak secepat
pada compiled language seperti C++. Dikarenakan Java yang interpreted,
bytecode tidak secara langsung dieksekusi oleh sistem tapi dijalankan melalui
interpreter. Namun, kecepatan tersebut sudah lebih dari cukup untuk
sebagian besar aplikasi interaktif.
10. Java is Multithread
Multithreading adalah suatu kemampuan dari suatu program untuk
menjalankan
beberapa
tugas
secara
bersama-sama.
Multithreaded
programming sudah diintegrasikan secara bagus dalam Java, sedangkan pada
bahasa lain harus memanggil prosedur yang spesifik pada sistem operasi
untuk mengaktifkan multithreading.
11. Java is Dynamic
L20
Java dirancang untuk beradaptasi oada lingkungan yang berkembang. Class
baru dapat dibuka tanpa melakukan compile ulang. Tidak diperlukan
developer untuk membuat, dan pengguna untuk meng-install versi terbaru
dari software.
1.10 Android
M enurut Ed Brunete (2011), Android adalah sebuah open source software toolkit
untuk telepon genggam yang dibuat oleh Google dan Open Handset Alliance. Android
sudah digunakan jutaan telepon genggam dan perangkat genggam lainnya, yang
membuat Android menjadi sebuah platform besar untuk pembuat aplikasi. Walaupun
beberapa fitur telah muncul pada sistem operasi yang lain, namun Android adalah sistem
operasi pertama yang menggabungkan fitur-fitur berikut:
• Development platform yang benar-benar terbuka dan gratis berbasis linux
dan open source. Para pembuat perangkat genggam menyukai hal ini
karena mereka dapat menggunakan dan mengubah platform tersebut
tanpa perlu membayar royalti. Developer menyukai hal ini karena mereka
mengetahui bahwa platform tersebut mempunyai pilihan dan tidak khusus
untuk satu vendor saja.
• Arsitektur berbasis komponen yang diinspirasi oleh internet mashup.
Bagian dari sebuah aplikasi dapat digunakan dalam cara yang berbeda.
Bahkan komponen bawaan dapat diganti dengan komponen buatan
sendiri.
L21
• Banyak layanan service bawaan. Servis berbasis lokasi menggunakan
GPS yang dapat digunakan untuk membuat aplikasi berbasis lokasi.
Database SQL yang dapat digunakan untuk penyimpanan data secara
lokal. Browser dan map views yang dapat digunakan pada aplikasi.
• Life cycle dari aplikasi yang dikelola secara otomatis. Aplikasi dipisahkan
dengan aplikasi yang lain dengan beberapa lapisan keamanan, yang akan
menyediakan stabilitas sistem yang tidak pernah ditemukan pada
smartphone
sebelumnya.
Sehingga
sebuah
aplikasi
tidak
bisa
mengaktifkan atau menutup aplikasi lain.
• Grafik dan suara berkualitas tinggi. Gabungan grafik 2D vector,
animation berdasarkan Flash, dengan grafik 3D menggunakan OpenGL
untuk memungkin berbagai game dan aplikasi bisnis untuk dapat berjalan
dengan baik. Android menyediakan codec untuk standar format suara dan
video yang umum.
• Portabilitas untuk berbagai hardware masa kini maupun masa yang akan
datang. Semua program ditulis dalam Java dan dieksekusi oleh Android
Dalvik Virtual Machine sehingga code dapat dijalankan di berbagai
arsitektur hardware. M endukung berbagai metode input seperti keyboard,
touchscreen, dan trackball. Tampilan antarmuka dapat menyesuaikan
sesuai resolusi dan orientasi layar.
Berikut ini adalah tampilan sistem arsitektur dari Android :
L22
Gambar 2.3 Android S ystem Architecture (Ed Brunete, 2011)
•
Linux Kernel
Android dibangun diatas pondasi yang kuat dan sudah terbukti : Linux
Kernel. Android menggunakan Linux untuk manajemen memori,
manajemen proses, jaringan dan servis sistem operasi lainnya.
•
Native Libraries
Lapisan di atas kernel adalah library bawaan dari Android. Library ini
ditulis dalam bahasa C atau C++, digunakan untuk arsitektur hardware
tertentu yang digunakan untuk perangkat, dan sudah di-instal oleh vendor
perangkat. Beberapa native library antara lain : surface manager, grafik
2D dan 3D, media codec, database SQL, dan browser.
L23
•
Android Runtime
Juga diatas kernel terdapat Android runtime, terdiri dari Dalvik Virtual
Machine (D VM ) dan core libraries dari Java. DVM adalah implementasi
Java yang dilakukan oleh Google, dioptimalkan untuk perangkat
genggam. Semua kode aplikasi akan ditulis dalam Java dan akan
dijalankan oleh DVM .
•
Application Framework
Diatas native libraries dan runtime terdapat lapisan Application
Framework, yang menyediakan komponen-komponen tingkat tinggi yang
akan
digunakan
untuk
membuat
aplikasi.
Beberapa application
framework antara lain : activity manager, content provider, resource
manager, location manager, notification manager.
•
Applications and Widgets
Lapisan tertinggi dari arsitektur Android adalah Application dan Widgets.
Pengguna hanya akan melihat bagian ini, dan tidak mengetahui apa yang
terjadi pada layer yang lain. Application adalah program yang dapat
mengambil alih seluruh layar dan berinteraksi dengan pengguna.
Sedangkan, widget (seringkali disebut gadget) hanya berjalan pada
sebagian ruang kecil layar home.
L24
1.11 XML
XM L berisi, membentuk, melabel, menyusun dan melindungi informasi. XM L
melakukannya dengan simbol yang tertanam pada teks yang disebut markup. M arkup
meningkatkan arti dari informasi dalam cara tertentu, mengidentifikasi bagian-bagian
dan bagaimana mereka berhubungan satu sama lain. Sebagai contoh, ketika Anda
membaca koran, Anda dapat membedakan artikel yang terpisah oleh jarak dan posisi
mereka pada halaman serta penggunaan font yang berbeda untuk judul dan heading.
M arkup bekerja dengan cara yang sama, kecuali alih-alih menggunakan jarak dan garis,
XM L menggunakan simbol.
Gambar 2.4 Contoh sebuah file XML
1.12 UML (Unified Modeling Language)
M enurut Jeffrey L. Whitten dan Lonnie D. Bentley (2007), Unified Modeling
Language (UM L) adalah sebuah kumpulan ketentuan modelling yang digunakan untuk
menspesifikasi atau mendeskripsikan sebuah sistem software dalam dalam konteks
obyek. UM L dibagi menjadi beberapa komponen:
L25
1. Use Case Diagram
Use Case Diagram menggambarkan fungsi dari sistem dari sudut pandang
pengguna eksternal dan dari materi dan terminologi yang mereka pahami.
Untuk menyelesaikan permintaan yang membutuhkan interaksi dengan
pengguna atau ahli secara akurat dan sepenuhnya.
Gambar 2.5 Contoh Use Case Diagram (Jeffrey L. Whitten dan Lonnie D.
Bentley, 2007)
Use Case Diagram memiliki komponen sebagai berikut:
a. Actor
Actor adalah pelaku yang memulai aktivitas sistem, use case, dengan
tujuan menyelesaikan beberapa tugas bisnis yang menghasilkan
sesuatu yang dapat diukur.
L26
b. Relationship
Relationship digambarkan dengan sebuah garis diantara dua simbol
yang menjelaskan hubungan antara kedua simbol tersebut.
2. Activity Diagram
Activity Diagram menggambarkan alur yang berurutan dari aktifitas use case
atau proses bisnis. Diagram ini juga dapat digunakan untuk memodelkan
logika dengan suatu sistem.
Activity diagram memiliki komponen sebagai berikut :
a. Titik Solid
Pada activty diagram, titik solid menggambarkan awal sebuah proses
b. Segi empat dengan sudut tumpul
Pada activity diagram, segi empat dengan sudut tumpul
menggambarkan tugas yang perlu dilakukan
c. Panah
Pada activity diagram, panah menggambarkan sasaran yang
mengawali suatu kegiatan
d. Diamond
Pada activity diagram, diamond menggambarkan sebuah kegiatan yang
menyangkut sebuah keputusan
e. Titik solid di dalam lingkaran
Pada activitydiagram, titik solid di dalam lingkaran menggambarkan
akhir sebuah proses
L27
f. Synchronization Bar
Sebuah simbol yang dapat memisahkan serta menggabungkan aktifitas
yang berjalan secara bersamaan
3. Sequence Diagram
Sequence Diagram menggambarkan bagaimana obyek berinteraksi satu sama
lain melalui pesan dalam eksekusi use case atau operasi. Diagram ini
menggambarkan langkah-langkah pesan dikirim dan diterima antara obyek.
4. Class Diagram
Class Diagram menggambarkan struktur obyek dan struktur sistemnya. Pada
diagram ini juga terdapat multiplicity, relasi generalisasi/spesialisasi, dan
relasi agresi.
Gambar 2.6 Contoh class Diagram (Jeffrey L. Whitten dan Lonnie D.
Bentley, 2007)
L28
Struktur antar class terdiri dari:
1. Generalization
M erupakan
suatu
class
umum
(super
class)
yang
mendeskripsikan properti-properti umum dari class khusus (sub class).
Kata “adalah” menunjukkan class khusus pada hubungan generalisasi
ini. Semua properti yang berada pada class umum akan dimiliki juga
oleh semua class khusus (inheritance) namun class khusus juga dapat
memiliki propertinya sendiri.
Gambar 2.1 Generalization
2. Aggregation
M erupakan suatu objek superior (the whole) yang terdiri dari
sejumlah objek (the parts)
1..*
1..2
Gambar 2.2 Aggregation
L29
3. Association
M erupakan suatu relasi berarti antara sejumlah objek. Suatu
relasi berarti dapat diartikan mejadisebuah kelas memiliki instansi dari
kelas lainnya. Kata “memiliki” mencirikan hubungan asosiasi
Gambar 2.3 Association
Di dalam class diagram, hubungan antar class-class yang ada juga
digambarkan melalui multiplicity. Setiap multiplicity yang digunakan
memiliki arti tersendiri, berikut penjelasan mengenai multiplicity yang dapat
digunakan di dalam class diagram :
Tabel 1.1 Multiplicity Class Diagram
Multiplicity
Arti
*
Banyak
0
Nol
1
Satu, bisa ditulis bisa tidak
0..*
Antara Nol sampai banyak
1..*
Antara Satu sampai banyak
0..1
Nol atau Satu
1..1
Tepat Satu
L30
1.13 AndEngine
AndEngine adalah sebuah 2D OpenGL Game Engine untuk platform Android
yang diciptakan oleh Nicolas Gramlich pada pertengahan 2010. Nicolas Gramlich
menciptakan AndEngine untuk memenuhi kebutuhan akan sebuah game development
framework yang gratis dan mudah digunakan. Lebih dari 2000 game yang menggunakan
framework AndEngine telah dipasarkan, dan code dari AndEngine telah dieksekusi lebih
dari satu juta kali.
Berikut
adalah
fitur-fitur
yang
ditawarkan
oleh
AndEngine:
(http://code.google.com, 2010)
•
Android-Optimized
AndEngine dioptimasikan untuk menjadi sebuah framework yang bekerja
pada platform Android.
•
Android 1.6 Compatibility
AndEngine dapat digunakan mulai dari Android versi 1.6 (Donut).
•
SplitiScreen
AndEngine mendukung fasilitas membagi layar pada perangkat Android.
•
Network Multiplayer
AndEngine mendukung fasilitas untuk bermain multiplayer.
•
Live-Wallpapers
AndEngine mendukung pembuatan wallpaper hidup yang bergerak.
•
MultiTouch
AndEngine mendukung penggunaan teknologi multitouch pada perangkat
yang mendukung multitouch.
L31
•
Physics-Engine (Box2D)
AndEngine mendukung perhitungan fisika dalam pembuatan aplikasi
menggunakan teknologi Box2D.
Download