BAB 2 LANDASAN TEORI
2.1 Teori Umum Teori umum adalah teori – teori pokok yang dijadikan sebagai landasan dari teori teori yang dipakai dalam penulisan skripsi ini.
2.1.1 Multimedia Menurut Vaughan (2004, p1), multimedia merupakan kombinasi teks ,seni, suara, animasi, dan video yang disampaikan kepada anda melalui komputer atau peralatan manipulasi elektronik dan digital yang lain. Multimedia dapat menimbulkan sensasi dahsyat. Ketika anda menggabungkan semua elemen sensual multimedia – menggabungkan gambar dan animasi, mempercantik suara, membuat video klip, dan informasi tekstual mentah – anda dapat menanamkan pemikiran dan aksi dalam pikiran orang. Ketika anda memberi mereka kontrol interaktif dari proses, mereka akan terpikat. Multimedia adalah, seperti yang dijelaskan diatas, kombinasi dari teks, foto, seni grafis, suara, animasi, dan elemen-elemen video yang dimanipulasi secara digital. Ketika anda mengizinkan pengguna akhir pemirsa dari proyek multimedia – mengontrol apa dan kapan elemen-elemen tersebut akan dikirimkan, multimedia disebut multimedia interaktif. Ketika anda menyediakan suatu struktur dari elemen-elemen yang terkait dimana pengguna dapat mengarahkannya, multimedia interaktif berubah menjadi hypermedia
7
8
Menurut England dan Finney (2002, pp6-7), multimedia memiliki kemampuan seperti bunglon untuk berpura-pura menjadi banyak hal. Di dalam mendesain sebuah aplikasi, Anda memiliki kebebasan untuk menggunakan banyak jenis media dan teknik yang berbeda yang dapat menjadi suatu tantangan untuk memahami mana yang relevant dari proyek untuk jenis tertentu. Pada satu sisi, animasi, suara, dan gambar dapat membantu menarik penonton ke layar Anda dan pada sisi lain, membuat layar bantuan yang paling membosankan menjadi menarik. Disiplin - disiplin multimedia beragam seperti jenis-jenis media. Pengetahuan dan keahlian dibutuhkan di semua segi produksi media maupun fasilitas dengan perangkat lunak komputer dan bahkan keterampilan jurnalistik. Untuk end-user, apakah mereka di dalam kelas, di lingkungan rumah atau kerja, multimedia meningkatkan aliran gagasan – gagasan dan informasi. Multimedia adalah sebuah kanvas yang kaya untuk berkomunikasi, tapi kekayaan ini membawa serta kompleksitas dan tantangan – tantangan, dan cukup sering jalan satu – satunya untuk mengerti apa yang harus dilakukan adalah dengan mencobanya. Menurut Elsom-Cook (2000, p7) multimedia adalah kombinasi dari berbagai saluran komunikasi menjadi sebuah pengalaman komunikatif yang terkoordinasi untuk penafsiran lintas bahasa yang tidak ada.
2.1.1.1 Elemen – elemen Multimedia 1.
Teks Menurut Hofstetter (2001, p16), meskipun mungkin untuk mempunyai multimedia tanpa teks, kebanyakan sistem multimedia menggunakan teks karena teks merupakan sebuah jalan yang efektif
9
untuk mengkomunikasikan ide–ide dan menyediakan petunjuk–petunjuk untuk pengguna (users). 2.
Suara Menurut Elsom–Cook (2000, p201) suara adalah hasil dari perubahan tekanan udara di luar telinga kita. Menurut Hofstetter (2001, pp22 - 23) ada empat tipe obyek suara yang dapat digunakan dalam produksi multimedia : waveform audio, IDI sound tracks, compact disc (CD) audio, dan MP3 files. a.
Waveform audio. Setiap suara mempunyai gelombang yang mendeskripsikan frekuensi, amplitudo dan harmoni dari suara.
b.
MIDI Singkatan dari Musical Instrumental Digital Interface. Menyediakan sebuah cara yang efisien dalam merekam musik. MIDI merekam informasi kinerja yang dibutuhkan chip suara komputer untuk memainkan musik.
c.
Audio CD Audio CD dapat menampung sampai 75 menit dengan ketepatan tinggi suara yang direkam. Sampling rate sebesar 44.100 samples per detik.
d.
MP3 files. MP3 adalah sebuah format file audio yang menggunakan MPEG audio codec untuk melakukan encode/ compress (pemampatan) dan decode / decompress musik yang direkam.
10
3.
Grafis. Menurut Hofstetter (2001, p18), grafis sering muncul sebagai latar di belakang teks untuk menciptakan sebuah kerangka kerja bergambar untuk teks. Gambar juga dapat berfungsi sebagai ikon, tercampur dengan teks, mewakili menu yang dapat dipilih; atau gambar dapat muncul layar penuh di tempat teks, dengan bagian – bagian dari gambar yang berfungsi sebagai pemicu yang saat dipilih, meluncurkan obyek – obyek atau peristiwa – peristiwa multimedia lain.
4.
Animasi. Menurut Hofstetter(2001, p26), di dalam multimedia, animasi merupakan penggunaan komputer untuk menciptakan perpindahan pada layar. Ada empat macam animasi : frame, vector, computational, dan morph. a. Frame Animation Frame animations membuat obyek berpindah dengan menampilkan serangkaian predrawn picture, memanggil frame, dimana obyek muncul di lokasi yang berbeda pada layar. b. Vector Animation Sebuah vektor adalah sebuah garis yang mempunyai awal, tujuan dan panjang. Animasi vektor membuat obyek berpindah dengan memvariasikan tiga parameter ini untuk segmen garis yang mendefinisikan obyek. c. Computational Animation
11
Di dalam computational animation, memindahkan obyek melewati layar secara sederhana dengan memvariasikan koordinat x dan y. Koordinat y mendefinisikan posisi horisontal obyek, seberapa jauh obyek melewati layar. Koordinat y menspesifikasikan posisi vertikal, seberapa jauh ke bawah layar. d. Morphing Morphing berarti transisi sebuah bentuk ke bentuk lain dengan menampilkan serangkaian frame yang membuat gerakan hal sebagai bentuk pertama mengubah dirinya ke dalam bentuk lain. 5.
Video Video menyediakan sumber daya yang kaya dan hidup untuk aplikasi multimedia. Ada empat macam video yang dapat digunakan sebagai obyek dari link aplikasi multimedia : live video feeds, videotape, videodisc, dan digital video.
2.1.1.2 Interactive Multimedia Menurut Vaughan (2008, p1) multimedia interaktif adalah ketika anda mengijinkan end user – diketahui juga sebagai penonton dari sebuah proyek multimedia – untuk mengontrol apa dan kapan elemen – elemen diantarkan. Menurut Dastbaz (2003, p130) sistem multimedia interaktif membutuhkan sebuah pendekatan yang rinci dan terencana terhadap isu – isu integrasi media. Penanganan campuran berbagai media seperti audio, video, teks, animasi, dan grafis menyajikan desainer berupa tantangan dalam hal video dan manajemen aset audio serta manajemen sinkronisasi dalam desain.
12
2.1.2
Interaksi Manusia dan Komputer (IMK) Menurut Shneiderman (1998, p5), kinerja manusia dalam penggunaan sistem
komputer dan informasi akan tetap menjadi topik penelitian dan pengembangan yang berkembang pesat dalam beberapa tahun mendatang. Perjalanan penemuan multidisiplin ini menggabungkan metode pengumpulan data dan eksperimental kerangka intelektual dengan alat yang kuat dan banyak digunakan yang dikembangkan dari ilmu komputer. Lima faktor manusia terukur yang menjadi pusat pengevaluasian (Shneiderman, 1998, p15) : 1. Waktu untuk belajar . Berapa
lama
waktu
yang
dibutuhkan
untuk
mempelajari
bagaimana
menggunakan perintah yang relevan terhadap suatu set tugas? 2. Kecepatan kinerja. Berapa lama waktu yang diperlukan untuk melakukan suatu tugas? 3. Tingkat kesalahan oleh user. Berapa banyak kesalahan yang dibuat dalam suatu tugas? 4. Daya ingat dari waktu ke waktu. Seberapa baik user mempertahankan pengetahuannya setelah jangka waktu tertentu? Daya ingat bisa dikaitkan dengan waktu pembelajaran, dan frekuensi pemakaian memegang peranan penting. 5. Kepuasan subjektif. Bagaimana kepuasan pemakai terhadap berbagai aspek sistem? Jawaban bisa didapatkan dengan interview atau dengan survey tertulis yang mengandung skala kepuasan dan tempat kosong untuk komentar.
13
2.1.2.1 Konsep Perancangan Antarmuka Pemakai Delapan aturan emas perancangan antarmuka (Shneiderman, 1998, p74 – 75 ) : a.
Berusaha untuk konsisten Aturan ini yang paling sering dilanggar, namun mengikutinya bisa menjadi salah karena ada banyak bentuk konsistensi. Urutan tindakan konsisten diperlukan dalam kondisi serupa; terminologi yang mirip sebaiknya digunakan dalam prompts, menus dan help screen; warna, layout, kapitalisasi, huruf, dan sebagainya harus diterapkan secara konsisten.
b.
Memungkinkan penggunaan shortcut bagi pengguna yang berpengalaman. Seiring dengan bertambahnya frekuensi penggunaan, bertambah pula keinginan user untuk mengurangi jumlah interaksi dan menambah kecepatan interaksi. Tingkatan, tombol khusus, perintah tersembunyi, dan fasilitas pengatur biasanya sering digunakan oleh pengguna yang berpengalaman.
c.
Memberikan umpan balik yang informatif Untuk setiap aksi pengguna, harus ada umpan balik sistem. Untuk aksi kecil dan sering terjadi, respon boleh sederhana, namun untuk aksi yang besar dan jarang terjadi, responnya harus lebih besar.
d.
Merancang dialog yang memberikan penutupan (keadaan akhir) Urutan aksi harus diatur menjadi kelompok dengan sebuah permulaan, pertengahan, dan akhir. Umpan balik yang informatif pada kelompok aksi memberikan penguna kepuasan penyelesaian, rasa lega, tanda untuk menghentikan rencana darurat dan pilihan dari pikiran mereka, dan
14
sebuah indikasi bahwa cara tersebut jelas untuk mempersiapkan aksi berikutnya. e.
Memberikan pencegahan kesalahan dan penanganan kesalahan yang sederhana Sebisa mungkin, rancang sistem yang tidak memungkinkan pengguna membuat sebuah kesalahan serius. Jika pengguna melakukan kesalahan, sistem harus dapat mendeteksi kesalahan dan memberikan petunjuk yang sederhana, berguna, dan spesifik untuk pemulihan.
f.
Memungkinkan pembalikan aksi yang mudah Sebisa mungkin, aksi harus dapat dibalikkan. Fitur ini akan mengurangi kecemasan, karena pengguna tahu bahwa kesalahan dapat di batalkan / dikembalikan seperti semula, sehingga mendorong penjelajahan options yang tidak biasa.
g.
Menunjang pusat kendali internal. Pengguna yang berpengalaman menginginkan perasaan mengontrol sistem yang kuat dan sistem merespon tindakan mereka.
h.
Mengurangi beban ingatan jangka pendek Keterbatasan pengolahan informasi manusia dalam ingatan jangka pendek memerlukan tampilan yang sederhana, tampilan beberapa halaman dapat digabung, frekuensi gerakan window dikurangi, dan waktu latihan yang cukup dialokasikan untuk kode, mnemonic dan urutan aksi.
15
2.1.2.2 Storyboard Menurut Hofstetter (2001, p296), storyboard merupakan serangkaian sketsa yang mendeskripsikan setiap konten dari urutan layar multimedia. Menurut Dastbaz (2003, p134), storyboard adalah sebuah teknik yang berguna untuk memvisualisasikan antarmuka pengguna dalam IMS, sebelum implementasi sistem yang lengkap dimulai.
Gambar 2.1 Storyboard
2.1.3
Action Script 2 Menurut Moock (2004, pp3 – 5 ), Action Script 2.0 adalah sebuah perbaikan
tata bahasa utama seperti yang ada di Flash 5 dan Flash MX. Action Scripts 2.0 menambahkan sedikit fungsi runtime baru ke bahasa tapi secara radikal meningkatkan pengembangan object oriented di dalam Flash dengan meresmikan sintak dan metodologi Object - Oriented Programming. AS 1.0 dapat digunakan dalam OOP, namun dia kekurangan official vocab (perbendaharaan kata yang resmi) yang tradisional
Comment [A1]: Belum dikasi halaman
16
untuk membuat kelas dan objek. Action Script 2 menambahkan syntactic pendukung untuk fitur – fitur tradisional. Sebagian besar sintaks baru dalam ActionScript 2.0 berdasarkan pada standar ECMA Script 4. Berikut adalah beberapa fitur kunci yang diperkenalkan di Action Script 2.0 : 1.
The class statement, digunakan untuk membuat kelas formal.
2.
The extent keyword, digunakan untuk membentuk inheritance.
3.
The interface statement, digunakan untuk membuat java – style interfaces.
4.
Extention file resmi untuk file kelas adalah .as. Sebelumnya, kelas dapat didefinisikan di timeline code atau di luar file .as. Action Script 2.0 sekarang memerlukan kelas dapat didefinisikan di luar kelas file.
5.
Formal method-definition syntax, digunakan untuk membuat instance methods dan class methods di dalam sebuah class body.
6.
Formal getter and setter method syntax, yang menggantikan metode Object.addProperty() pada Action Script 1.0
7.
Formal property-definition syntax, digunakan untuk membuat instance properties dan class properties di dalam sebuah class body.
8.
The private and public keywords, digunakan untuk mencegah data dan metode tertentu diakses dari luar kelas.
9.
Static typing for variables, properties, parameters, dan return values, digunakan untuk mendeklarasikan tipe data dari setiap item.
10. Type casting, digunakan untuk memberitahu compiler untuk memperlakukan objek seperti sebuah instance dari tipe data lain. 11. Classpaths, digunakan untuk mendefinisikan satu atau lebih kelas penyimpanan pusat.
17
12. Exception handling – termasuk the throw and try/ catch/ finally statements –, digunakan untuk menghasilkan dan merespon program errors. 13. Easy linking diantara simbol – simbol movie clips dan kelas Action Script 2.0 melalui property simbol Linkage.
2.1.4 Filebased Menurut Connolly (2005, p7),
file based system merupakan sekumpulan
program aplikasi yang melakukan layanan ke pengguna akhir seperti laporan produksi. Setiap program mendefinisikan dan mengatur datanya sendiri. File based system adalah upaya awal untuk komputerisasi sistem pengarsipan manual yang kita kenal. Menurut Ray (2009, p1), dalam pendekatan berbasis file tradisional, data dan program yang mengakses data bergantung pada satu sama lain, dengan demikian, perubahan satu mempengaruhi yang lain.
2.1.4.1 Shared Object Menurut Cheng F et al. (2005, ISBN: 0321384040), SharedObject class digunakan untuk membaca dan menyimpan data dengan jumlah terbatas pada komputer pemakai. SharedObject menawarkan real-time data sharing diantara objek yang ada di komputer pengguna. Local shared objects mirip dengan browser cookies. Berikut adalah tiga kemungkinan penggunaan dari shared objects : 1.
Sebuah game yang menyimpan nilai tertinggi dari si pemain. Permainan dapat memberikan data pribadi untuk pengguna, seperti nama pengguna dan skor tinggi, tanpa mendedikasikan penyimpanan pada server.
18
2.
Sebuah buku telepon aplikasi yang dapat bekerja baik secara online atau offline. Buku telepon, disampaikan sebagai aplikasi proyektor, bisa mengandung cache data lokal dengan daftar nama dan nomor telepon dimasukkan oleh pengguna. Ketika sebuah koneksi internet tersedia, aplikasi akan mengambil informasi up-to-date dari server. Ketika tidak ada koneksi tersedia, aplikasi akan menggunakan data terbaru yang tersimpan dalam shared object.
3.
Preferensi pengguna atau data pelacakan untuk situs website yang kompleks, seperti catatan pengguna yang membaca artikel di situs berita. Pelacakan informasi ini akan memungkinkan Anda untuk menampilkan artikel yang telah dibaca berbeda dari yang baru, artikel belum dibaca. Penyimpanan informasi ini di komputer pengguna mengurangi beban server.
Local shared object memelihara local persistence. Sebagai contoh, Anda dapat memanggil SharedObject.getLocal() untuk membuat shared object yang mengandung nilai tertinggi di dalam permainan. Karena shared object menetap secara lokal, Flash menyimpan data atribut di komputer pengguna pada saat permainan ditutup. Ketika game dibuka lagi, nilai tertinggi dari sesi sebelumnya akan ditampilkan. Atau Anda dapat mengatur properti shared object menjadi null sebelum permainan ditutup. Pada waktu berikutnya SWF dijalankan, permainan terbuka tanpa nilai tertinggi. Untuk membuat sebuah shared object local, gunakan sintak di bawah : var so:SharedObject = SharedObject.getLocal("userHighScore"); so.data.highScore = new Number(); so.flush();
19
Dalam contoh ini, shared object terbagi secara eksplisit, atau ditulis di disk. Ketika sebuah aplikasi ditutup, shared object tersebut secara otomatis terbagi; bagaimanapun, shared object ditampilkan untuk mendemostrasikan langkah – langkah penulisan data ke disk. Pertimbangan ruang local disk : Local shared object dapat sangat berguna, tetapi mereka memliki beberapa batasan yang perlu diperhatikan ketika anda mendesain aplikasi anda. Terkadang file SWF anda mungkin tidak diperbolehkan untuk menulis local shared object dan terkadang data yang disimpan di local shared object dapat terhapus tanpa sepengetahuan anda. Pengguna Flash Player dapat mengelola ruang disk yang tersedia untuk domain individu atau untuk semua domain. Ketika user menurunkan jumlah ruang disk yang tersedia, beberapa local shared object mungkin dihapus. Pengguna Flash Player juga memiliki kontrol privasi yang dapat mencegah domain pihak ketiga (domain selain domain di address bar browser saat ini) dari membaca atau menulis local shared object. Konten lokal selalu dapat menulis objek – objek pihak ketiga ke disk, bahkan jika penulisan objek-objek ke disk oleh domain pihak ketiga dilarang.
2.1.5 Rekayasa Piranti Lunak Menurut Pressman (2005, p34), rekayasa piranti lunak adalah kerangka kerja yang meliputi sebuah proses, sekumpulan metode – metode, dan susunan dari alat – alat.
2.1.5.1 Waterfall Model Menurut Pressman (2005, pp79 – 80), waterfall model terkadang dipanggil classic life cicle, mengusulkan secara teratur, pendekatan sequential untuk
20
pengembangan piranti lunak yang mulai dengan spesifikasi persyaratan dan perkembangan pelanggan melalui perencanaan, permodelan, pembangunan, penyebaran, mencapai puncaknya mendukung melengkapkan piranti lunak. Masalah-masalah yang ditemui ketika model waterfall diterapkan diantaranya adalah : 1. Proyek nyata jarang mengikuti alur sequential yang diusulkan model. Meskipun model liner dapat mengakomodasi iterasi, ini berlangsung secara tidak langsung. Sebagai hasilnya, perubahan dapat menyebabkan kebingungan ketika proyek tim dilanjutkan. 2. Sulit bagi pelanggan untuk menyatakan semua persyaratan secara eksplisit. Model
air
terjun
membutuhkan
ini
dan
kesulitan
mengakomodasi
ketidakpastian alam yang ada sejak awal pada banyak proyek. 3. Pelanggan harus memiliki kesabaran. Versi kerja program tidak akan tersedia sampai akhir jangka waktu proyek. Kesalahan utama, jika tidak terdeteksi sampai akhir program , dapat berbahaya.
Gambar 2.2 Waterfall Model
21
Menurut Pressman (2005, pp423 – 424), setiap produk rekayasa dapat dites melalui dua cara : 1. Mengetahui fungsi tertentu bahwa produk didesain untuk melakukannya. Tes
yang
dapat
dilakukan
menunjukkan
setiap
fungsi
sepenuhnya
beroperasional sementara pada saat yang sama mencari kesalahan dalam setiap fungsi. 2. Mengetahui pekerjaan internal produk. Tes dapat dilakukan untuk memastikan bahwa “semua gigi (perkakas) bertautan”; bahwa operasi internal ditampilkan menurut spesifikasi, dan semua komponen internal dilaksanakan secara memadai. Tes pendekatan pertama disebut black box testing dan yang kedua disebut white box testing.
Gambar 2.3 Kesalahan merupakan bentuk yang dibangun di luar kebiasaan Menurut Flynt dan Salem (2005, pp381 – 386), Gambar 2.3 mengilustrasikan tiga konsep yang menjadi pusat pengujian. Meskipun pengujian melibatkan banyak hal lain, pengharusan pemahaman tentang verifikasi, validasi, dan eksplorasi membantu Anda memahami alasan dasar yang memotivasi pengembangan pendekatan yang berbeda untuk pengujian. 1.
Verifikasi
22
Sebelum pengembang merencanakan sebuah produk software game - mereka menetapkannya dalam satu bentuk atau lain. Apakah game telah dibuat seperti yang direncanakan. 2.
Validasi Meskipun pengembang mengembangkan permainan sehingga seolah – olah itu tampak seperti memenuhi persyaratan, namun bisa saja tidak. Apakah game sudah berjalan sesuai dengan yang seharusnya?
3.
Eksplorasi Upaya pengujian untuk menemukan adanya kesalahan proses pembangunan dalam produk perangkat lunak. Validasi dan verifikasi menawarkan cara yang langsung untuk menemukan kesalahan, tetapi penguji memiliki pendekatan lain untuk pengujian.
4.
Kegiatan pengujian Menurut Flynt dan Salem (2005, pp413 – 414), saat menjalankan kegiatan pengujian, ada sebuah pepatah bahwa kau harus menguji sebanyak mungkin.
5.
Uji Kasus dan Prosedur Prosedur didefinisikan sebagai kumpulan kasus uji. Dalam prakteknya, bagaimanapun, suatu prosedur dapat terdiri dari uji kasus, sebaliknya uji kasus dapat terdiri dari prosedur. Meskipun istilah tertentu yang berlaku untuk pengujian mungkin terbuka untuk interpretasi, beberapa rekomendasi dari IEEE harus diikuti dengan cukup ketat : 1.
Identifikasi keadaan awal
2.
Prosedur yang dapat diulang
3.
Identifikasi keadaan akhir
23
6.
Mengkonversi use case untuk menguji kasus Hal ini terjadi karena use case anda berkembang selama persyaratan dan tahap desain Anda usaha pengembangan dapat mengantisipasi hampir setiap skenario perilaku dari produk software.
7.
Using Outlines Pendekatan untuk pengujian ini mendahului pemrograman berorientasi obyek, namun tetap merupakan bagian penting dari upaya banyak pengujian.
8.
Test Suites Test suites adalah sekelompok prosedur tes untuk menyelidiki apa yang Anda anggap sebagai area dari perilaku yang merupakan alamat dari prosedur tes.
9.
Testing Roles Menurut Flynt dan Salem (2005, p427), sepanjang garis yang sama, setiap tester diberikan kemungkinan untuk mengambil peran pengujian yang berbeda pada waktu yang berbeda selama proyek. Peran ini, mengambil definisi sesuai dengan alat dan teknik yang dikembangkan dan diperoleh selama pelaksanaan pekerjaan.
Beberapa peran yang lebih umum adalah sebagai berikut: 1.
Integrasi Ketika Anda melakukan pekerjaan ini, Anda umumnya orang di tim yang mengambil
tampilan
tingkat
tinggi.
Merakit
potongan
yang
memungkinkan Anda untuk memahami permasalahan kinerja yang lain, yang bekerja pada komponen tertentu, yang mungkin tidak melihat.
24
2.
System Ketika Anda bekerja dengan sistem, Anda dilemparkan ke dalam bidang konsumen karena Anda melihat produk secara keseluruhan, yang harus terinstal dan beroperasi dengan benar. Masalah ukuran, kelengkapan, dan permukaan operabilitas.
3.
Manager Sebagai manajer, tugas kunci melibatkan pemahaman ruang lingkup permainan, menilai tingkat yang sesuai cakupan tes, dan assigning enough orang untuk bekerja untuk memastikan bahwa hal itu selesai.
4.
Structural Ini adalah syarat umum untuk pengujian yang menembus ke dalam sistem dan melibatkan pembedahan berkelanjutan dan pemeriksaan aspek menit kode.
5.
Player Pemain ahli tidak perlu menjadi penguji perangkat lunak atau programmer, tetapi mereka perlu tahu urusan mereka sebagai pemain game. Penguji tersebut adalah sumber yang sangat baik pada semua tahap dari upaya pengembangan selama Anda menstruktur aktivitas mereka sehingga informasi yang mereka berikan dapat digunakan secara efektif.
2.1.6
UNIFIED MODELING LANGUAGE Menurut Booch et al (1998, p13, pp24-25), The Unified Modeling Language
(UML) adalah sebuah bahasa standard untuk menulis blueprint perangkat lunak. UML digunakan untuk membayangkan, merinci, membangun, dan mendokumentasikan
25
perangkat lunak – sistem intensif. UML hanya sebuah bahasa dan hanya menjadi bagian dari metode pengembangan perangkat lunak. UML adalah sebuah proses independent, meskipun secara optimal UML harus digunakan dalam sebuah proses yang menggunakan case driven, architecture – centric, iterative, dan incremental.
a. Diagram dalam UML. Menurut Booch et al (1998, pp24 – 25), sebuah diagram merupakan presentasi grafis dari satu set elemen, paling sering diterjemahkan sebagai graph terhubung dari simpul (benda) dan lengkungan (hubungan).
UML terdiri dari sembilan diagram, seperti : 1.
Class diagram Sebuah class diagram menunjukkan sekumpulan kelas, antarmuka, kolaborasi dan hubungannya.
2.
Object diagram Sebuah object diagram menunjukkan sekumpulan objek dan hubungannya.
3.
Use case diagram Sebuah use case diagram menunjukkan sekumpulan use cases dan actors (kelas jenis khusus) dan hubungannya.
4.
Sequence diagram Sebuah sequence diagram adalah sebuah diagram interaksi yang menekankan pada waktu pemesanan pesan.
5.
Collaboration diagram
26
Sebuah collaboration diagram adalah sebuah diagram interaksi yang menekankan pada struktur organisasi dari obyek yang mengirim dan menerima pesan 6.
Statechart diagram Sebuah statechart diagram menunjukkan keadaan mesin, consisting of state, transisi, events, dan aktivitas.
7.
Activity diagram Sebuah activity diagram merupakan jenis khusus dari statechart diagram yang menunjukkan alur aktivitas di dalam sistem.
8.
Component diagram Sebuah component diagram menunjukkan organisasi dan ketergantungan di antara sekumpulan komponen.
9.
Deployment diagram Sebuah deployment diagram menunjukkan konfigurasi dari proses run-time node dan komponen – komponen yang hidup di dalamnya.
2.1.6.1
Class diagram Menurut Booch et al (1998, p25), sebuah class diagram menunjukkan
sekumpulan kelas, antarmuka, dan kolaborasi dan hubungan-hubungan mereka. Diagram ini merupakan diagram yang paling umum ditemukan dalan permodelan sistem object oriented. Class diagram mencakup tampilan desain statis dari sistem. Class diagram mencakup alamat kelas aktif proses tampilan sistem statis dari sistem.
27
Menurut
Fowler
dan
Scott
(2000,
p49),
sebuah
class
diagram
mendeskripsikan tipe – tipe obyek dalam sistem dan berbagai macam hubungan statik yang ada di antara mereka. Ada dua macam pokok utama dalam hubungan statik : 1.
Asosiasi ( sebagai contoh : seorang pelanggan meminjam sejumlah video)
2.
Sub tipe ( seorang suster merupakan tipe dari seseorang)
Class diagram juga menunjukkan atribut dan operasi dari suatu kelas dan kendala yang berlaku untuk objek yang berkaitan. Gambar 2.4 menunjukkan tipe class diagram.
Gambar 2.4 Class Diagram Asosiasi mewakilkan hubungan diantara kejadian – kejadian dalam kelas (seseorang bekerja dalam sebuah perusahaan, sebuah perusahaan mempunyai beberapa kantor). Setiap asosiasi mempunyai dua akhir asosiasi. Setiap akhir diikatkan pada salah
28
satu kelas dalam asosiasi. Sebuah akhir dapat secara eksplisit dinamai dengan sebuah label. Label ini disebut role name. (Akhir asosiasi sering disebut roles). Sebuah asosiasi akhir juga mempunyai multiplicity, yang mengindikasikan berapa banyak objek yang dapat turut serta dalam hubungan yang diberikan. Atribut hampir sama dengan asosiasi. Dari pandangan konseptual, tidak ada perbedaan antara atribut dan asosiasi. Perbedaan terjadi pada level spesifikasi dan implementasi. Operation adalah sesuatu yang dipanggil pada sebuah obyek, sementara method adalah kumpulan prosedur. Di dalam spesifikasi model, generalization berarti bahwa antarmuka subtype harus termasuk semua element dari antarmuka supertype.
2.1.6.2 Use Case Diagram Sebuah use case diagram menunjukkan sekumpulan use cases dan actor (jenis khusus dari kelas) dan hubungan - hubungan mereka. Use case diagram mencakup tampilan use case static dari sistem. Diagram – diagram ini khususnya penting mengatur dan memodelkan kebiasaan sistem.
Gambar 2.5 Use Case Diagram
29
Menurut Fowler dan Scott (2000, p42), actor merupakan sebuah peran yang dimainkan oleh pengguna terhadap sistem. Gambar 2.5 menunjukkan beberapa use case untuk sistem perdagangan keuangan.
2.1.6.3 Activity Diagram Activity diagram merupakan jenis khusus dari statechart diagram yang menunjukkan alur dari aktivitas yang satu ke aktivitas yang lain dalam sistem.
Gambar 2.6 Activity Diagram Menurut
Fowler
dan
Scott
(2002,
pp130–131),
activity
diagram
mendeskripsikan urutan dari aktivitas - aktivitas, yang didukung oleh conditional behavior dan parallel behavior. Conditional behavior digambarkan oleh branches dan merges. Parallel behavior digambarkan oleh forks dan joins (Gambar 2.6). Sebuah fork mempunyai satu transisi yang datang dan beberapa transisi yang keluar.
30
2.2 Teori Khusus 2.2.1 Game Menurut Rollings and Adams (2003, p34), Game
merupakan sebuah bentuk
hiburan partisipatif atau interaktif. Menonton televisi, membaca, dan menonton bioskop merupakan bentuk hiburan pasif. Sebuah game adalah hal yang jauh lebih rumit. Ketika seseorang memainkan game, mereka terhibur dengan berpartisipasi secara aktif. Bentuk hiburan aktif perlahan – lahan mendapatkan lahan lebih dari hiburan pasif, orang – orang mulai memainkan game role-playing online daripada menonton televisi. Orang – orang menyukai perasaan keterlibatan dan pemberdayaan yang diberikan oleh sebuah permainan. Sebuah game berlangsung di alam maya yang diatur oleh peraturan – peraturan. Peraturan – peraturan mendefinisikan aksi – aksi atau perpindahan yang pemain ciptakan di dalam game dan juga aksi yang mungkin tidak mereka ciptakan.
2.2.2 Genre games Menurut Saltzman (2000, pp1 - 4), ada beberapa genre games : 1.
Action Secara umum lebih bergantung pada koordinasi tangan / mata dibandingkan cerita atau strategi. Pada umumnya mengandalkan ketangkasan dan reflek.
2.
Strategy Menekankan
pada
pemikiran
dan
perancangan
logis.
Cenderung
menitikberatkan pada manajemen sumber daya dan waktu yang biasanya didahulukan sebelum respon cepat dan keterlibatan karakter. Perancangan dan
31
eksekusi sangat penting dan pencipta game biasanya menempatkan kemampuan pembuatan keputusan dan pengiriman perintah ke tangan pemain. 3.
Adventure Adventure game melibatkan perjalanan dan ekspedisi dari sebuah eksplorasi dan pemecahan teka – teki. Game seperti ini biasanya mempunyai jalan cerita yang linier dimana pemain sebagai protagonis harus menyelesaikan sebuah tujuan utama melewati interaksi karakter dan manipulasi inventaris.
4.
Role Playing Games (RPG) Role Playing Games mirip dengan adventure game, tetapi lebih bergantung pada pembangunan dan pengembangan karakter (biasanya disertai dengan karakteristik pemain), percakapan dan strategi bertempur dibandingkan pemecahan teka – teki. Dunia fantasi yang luas dan epic quest dengan NPC (non player characters) merupakan sesuatu yang umum, dan jalan cerita tidak selalu linier seperti adventure game tradisional. Side quest merupakan sesuatu yang tidak langka bagi RPGs.
5.
Sports Sports game menstimulasi sebuah permainan perorangan atau kelompok dari sudut pandang instruksional atau pemain. Realita merupakan sesuatu yang paling penting, sama seperti ketangkasan dan strategi.
6.
Simulations / sims Sims secara nyata menstimulasi sebuah objek atau proses yang dianimasikan maupun tidak. Sebagian besar, sims menempatkan pemain pada sudut pandang 3D orang pertama, atau menciptakan kembali mesin – mesin seperti pesawat, tank, helikopter , dan kapal selam.
32
7.
Puzzle atau “Classic games” Puzzle atau “classic” games mencakup permainan – permainan yang lebih tua, bersejarah seperti kartu, permainan papan, trivia, atau kata-kata.
.2.2.3
Strategy games Menurut Rollings dan Adams (2003, p323), strategy games, apakah turn – based
atau real – time, semua fitur merupakan sebuah inti pengelolaan mekanik. Faktor – faktor utama yang mempengaruhi apakah sebuah strategy games menarik tercantum di bawah ini : 1.
Tema. Strategy games cenderung memiliki tema dengan kepentingan luas seperti penaklukan, eksplorasi atau perdagangan.
2.
Layar presentasi. Secara alami, strategy games sering memiliki dasar mekanik yang sangat rumit. Akibatnya, desain antarmuka pemain untuk permainan kritis. Antar muka dapat mengatur dan menyederhanakan kerumitan ini untuk seorang pemain, atau jika tidak ditangani dengan baik, dapat membuat game melimpah dan membingungkan.
3.
Perspective. Strategy game secara tradisional hanya menggunakan sedikit perspektif untuk pemain dalam pengalaman dunia game.
33
2.2.4 Game Design Menurut Rollings and Adams (2003, p4), merancang game adalah proses dari : a.
Membayangkan permainan.
b.
Menentukan cara permainan tersebut bekerja.
c.
Menjelaskan unsur – unsur yang membentuk permainan tersebut.
d.
Mengirimkan informasi kepada kelompok yang akan membuat game tersebut.
Menurut Rollings and Adams (2003, pp8 – 13) game design dipecah menjadi 3 bagian, yaitu : core mechanics, cerita, dan interaktivitas. 1.
Core Mechanics Aturan yang mendefinisikan operasi dari dunia permainan membentuk mekanisme inti permainan, atau dasar gameplay. Mekanisme inti merupakan terjemahan dari visi perancang ke dalam sekumpulan peraturan yang konsisten yang dapat diinterprestasikan oleh komputer – atau lebih tepatnya, aturan – aturan yang dapat diinterprestasikan oleh orang yang menulis software yang diinterprestasikan oleh komputer.
2. Cerita dan Narasi Semua permainan menceritakan cerita. Kompleksitas dan kedalaman dari cerita tersebut tergantung dari permainannya. Narasi berarti bagian dari cerita yang diceritakan. Narasi tidak bersifat interaktif, merupakan bagian presentasi dari cerita. Tanpa cerita, atau beberapa cara bagi pemain untuk secara implisit membentuk ceritanya sendiri, permainan sederhana tidak akan menarik bagi user. Narasi di dalam permainan sering kali cukup linear,
34
tidak terpengaruh oleh tindakan - tindakan pemain dan tidak berubah dari satu permainan ke permainan berikutnya. 3.
Interaktivitas Interaktivitas adalah cara bagi pemain untuk melihat, mendengar dan beraksi di dalam dunia permainan. Interaktivitas mencakup banyak topik berbeda : grafis, suara, antarmuka pengguna – segala sesuatu yang datang bersama–sama untuk mempresentasikan pengalaman bermain. Interaktivitas telah menjadi kata kunci yang berhubungan dengan komputer dan game untuk beberapa waktu. Interaktivitas yang buruk menghancurkan banyak produk.