BAB 2 LANDASAN TEORI
2.1 Interaksi Manusia dan Komputer (Human Computer Interaction) Menurut Dix dan Finlay (2002, p12), sebuah sistem berbasis komputer selalu memiliki elemen manusia didalamnya. Elemen manusia ini berinteraksi langsung dengan perangkat keras dan perangkat lunak melalui suatu perangkat antarmuka, yang berarti terdapat hubungan antara manusia dan komputer melalui suatu perantara. Suatu interaksi manusia dan komputer dimulai dengan mengkombinasikan metode pengumpulan data dan psikologi yang dikembangkan dengan teknologi informasi, tambah Shneiderman (2010, p22). Dalam HCI, tidak berarti bahwa hanya 1 (satu) pengguna yang dapat terhubung dengan komputer desktop. Pengguna dapat berupa siapapun yang menyelesaikan tugas menggunakan teknologi. Komputer berarti semua teknologi, mulai dari personal computer secara umum hingga sistem komputer dalam skala besar, sebuah sistem proses, atau sistem yang langsung diintegrasikan. Sistem dapat memasukkan bagian yang tidak terkomputerisasi, misalnya orang dan komputer, baik secara langsung maupun tidak langsung. Hal penting lainnya adalah pengguna berinteraksi untuk mencapai atau menyelesaikan sesuatu.
7
8
2.1.1 Faktor-faktor Antarmuka Pemakai Sasaran kegunaan dan pengukuran dapat diciptakan dengan mempertimbangkan dan menentukan suatu komunitas pengguna serta tolak ukur sekumpulan tugas yang digunakan secara intensif. Untuk setiap pengguna dan tugas, tujuan pengukuran yang tepat membimbing desainer, penilai, pembeli, atau manager. Menurut Shneiderman (2010, p32), terdapat 5 (lima) faktor manusia terukur yang dapat dijadikan pusat evaluasi kebutuhan pengguna dalam perancangan suatu antarmuka, yaitu : 1. Waktu pembelajaran (time to learn) Mengetahui waktu yang dibutuhkan oleh anggota suatu sekelompok komunitas pengguna untuk mempelajari suatu aksi dalam menggunakan perintah-perintah yang berhubungan dengan tugas-tugas yang ada. 2. Kecepatan kinerja (speed of performance) Mempelajari waktu yang diperlukan oleh seorang pengguna untuk mengerjakan suatu tugas. Maksudnya, mungkin saja antara satu pengguna dengan pengguna lainnya memiliki tingkat kecepatan (refleks) dalam bekerja menggunakan suatu antarmuka tertentu secara berbeda. 3. Tingkat kesalahan pengguna (rate of errors by user) Mempelajari kesalahan dan jenis kesalahan yang sering dilakukan oleh pengguna dalam mengerjakan suatu tugas, walaupun waktu untuk membuat dan memperbaiki kesalahan mungkin tidak berkaitan dengan kecepatan performa. Penanganan kesalahan sangat penting dalam merancang aspek kegunaan pada tampilan sehingga membutuhkan studi lebih lanjut.
9
4. Daya ingat jangka panjang (retention over time) Mengetahui
seberapa
baik
pengguna
dapat
mempertahankan
pengetahuan yang didapat dari penggunaan antarmuka setelah jangka waktu tertentu dan melihat intensitas penggunaan antarmuka. 5. Kepuasan subjektif (subjective satisfication) Mengukur seberapa jauh pengguna akan menyukai berbagai aspek antarmuka pengguna. Jawaban ini dapat diperjelas melalui wawancara ataupun pemantauan tertulis yang memasukkan skala kepuasan dan ruang untuk komentar yang bebas.
Inti dari kelima faktor tersebut bahwa kunci penentu kesuksesan suatu antarmuka harus disesuaikan pada masing-masing antarmuka, ketika satu faktor ditonjolkan pada suatu antarmuka, maka ada kemungkinan faktor lainnya akan dikorbankan.
2.1.2 Aspek Perancangan Antarmuka Pemakai Di dalam interaksi manusia dan komputer, dipelajari bahwa untuk merancang suatu tampilan antarmuka (interface) yang baik, aspek-aspek yang dapat mempengaruhi tampilan tersebut harus dipertimbangkan. Menurut Shneiderman (2010, p87-88) terdapat delapan aturan emas (eight golden rules) yang biasa digunakan dalam perancangan antarmuka pemakai, yaitu : 1. Berusaha untuk konsisten (strive for consistency) Konsistensi harus dilakukan pada setiap tindakan, perintah dan istilah yang digunakan pada prompt, menu, layar bantu, warna tampilan,
10
kapitalisasi, huruf, dan sebagainya. Pengecualian untuk perintah konfirmasi delete yang dibutuhkan, ataupun tidak adanya pemunculan kata sandi, harus mudah dipahami dan jumlahnya terbatas. 2. Menyediakan usability universal (cater to universal usability) Menambahkan
fitur
seperti
tombol
cepat
(shortcuts)
untuk
memudahkan pengguna, khususnya bagi pengguna yang sudah terbiasa atau ahli untuk meningkatkan kualitas sistem. Perbedaan antara pemula dan ahli, rentang umur, ketidakmampuan, serta perbedaan teknologi yang dimiliki masing-masing memperkaya tingkat kebutuhan yang mengarahkan proses desain. 3. Memberikan umpan balik yang informatif (offer information feedback) Suatu sistem umpan balik (feedback) harus diperhitungkan untuk tiap tindakan dari operator. Untuk tindakan yang sering dilakukan tetapi tidak terlalu penting sifatnya dapat diberikan umpan balik yang sederhana. Tetapi jika hal tersebut merupakan hal yang penting, maka umpan balik diharapkan lebih substansial. 4. Merancang dialog yang memberikan penutupan (let the user know when they have completed the task) Urutan aksi harus disusun kedalam kelompok awal, tengah dan akhir. Suatu umpan balik yang informatif sebaiknya dibuat pada akhir pekerjaan untuk mengindikasikan bahwa pekerjaan tersebut telah selesai dan siap untuk melanjutkan ke aksi berikutnya. 5. Memberikan pencegahan kesalahan dan penanganan kesalahan yang sederhana (offer simple error handling)
11
Sistem yang dibuat diharapkan tidak menghasilkan kesalahan yang serius jika digunakan oleh pengguna. Jika pengguna melakukan kesalahan, sistem diharapkan dapat
mendeteksi kesalahan dengan cepat
dan
memberikan solusi pemecahan masalah yang baik, sederhana dan mudah dipahami oleh pengguna. 6. Memungkinkan pembalikan aksi yang mudah (permit to easy undo) Diharapkan adanya
fitur
untuk kembali (back)
ke aktivitas
sebelumnya. Fitur ini bertujuan agar pengguna dapat kembali ke aktivitas sebelumnya jika ternyata terdapat suatu kesalahan yang disebabkan pengguna, sehingga kesalahan dapat diperbaiki. Hal ini dapat membantu mengurangi kekhawatiran pengguna. 7. Mendukung pusat kendali internal (provide a sense of user control) Menjadikan pengguna sebagai pemegang kendali, bukan yang dikendalikan oleh sistem. Umumnya, pengguna ingin menjadi pengontrol sistem, maka selayaknya sistem harus dapat merespon tindakan yang dilakukan pengguna dengan baik. Sebaiknya sistem dirancang sedemikan rupa sehingga pengguna menjadi inisiator daripada responden. 8. Mengurangi beban ingatan jangka pendek (reduce short term memory load ) Mengingat keterbatasan ingatan manusia dalam memproses informasi dalam jangka pendek, maka sebuah sistem diharapkan dapat ditampilkan sesederhana mungkin atau banyak tampilan halaman yang sebaiknya disatukan, serta diberikan cukup waktu dalam mempelajari kode, singkatan, dan urutan tindakan.
12
2.2 Multimedia 2.2.1 Pengertian Multimedia Menurut Dastbaz (2003, p7), multimedia dapat didefinisikan sebagai penggunaan komputer yang memiliki kapabilitas untuk menggabungkan dan merepresentasikan suara, video, grafik, teks dan animasi. Multimedia adalah penggunaan sebuah komputer untuk merepresentasikan dan menggabungkan teks, gambar, suara dan video dengan koneksi dan alat bantu yang memungkinkan pengguna untuk melakukan navigasi, interaksi dan komunikasi, menurut Hofstetter (2001, p2). Definisi multimedia ini terkait dengan empat komponen dasar seperti : adanya komputer untuk mengkoordinasikan apa yang terlihat, terdengar, dan berisi interaksi dengan manusia, harus adanya koneksi (link) yang dapat menghubungkan interaksi, terdapat alat navigasi yang memungkinkan web terhubung dengan informasi, serta terdapat jalan untuk berbagi, memproses dan mengkomunikasikan informasi dan ide. Pendapat lainnya datang dari Vaughan (2008, p1), menurutnya multimedia adalah kombinasi dari teks, seni (art), suara, animasi, dan video yang dikirimkan lewat komputer atau perangkat elektronik lainnya yang dimanipulasi secara digital.
2.2.2 Elemen Penyusun Multimedia Multimedia dan elemen penyusunnya memiliki hubungan yang sangat erat. Elemen-elemen yang menyusun multimedia dapat dijelaskan secara rinci sebagai berikut :
13
2.2.2.1 Teks Menurut Vaughan (2008, p50), sebuah kata dapat memiliki banyak arti, sama seperti teks yang sangat penting untuk mengolah ketepatan dan kejelasan dalam setiap kata tertentu. Kata-kata inilah yang akan muncul di judul, menu, bantuan navigasi, narasi atau isi multimedia. Kata dan simbol dalam bentuk terucap atau tertulis merupakan cara komunikasi sistem yang paling banyak dijumpai, yang memberikan pengertian makna yang paling luas bagi banyak orang dengan tingkat keakuratan dan kedetailan yang tinggi. Hofstetter (2001, p12-14) menambahkan, terdapat beberapa jenis teks sebagai berikut : 1. Printed text Teks harus diubah kedalam bentuk yang dapat dibaca oleh mesin (machine-readable). Cara yang sering dilakukan adalah dengan penggunaan word processor atau text editor, tetapi cara yang lebih cepat adalah dengan melakukan scanning teks. 2. Scanned text Melakukan scan pada kertas merupakan cara yang murah untuk membaca dan mengkonvert teks kedalam bentuk yang dapat dibaca mesin. Ada tiga macam bentuk scanner yaitu : flatbed, handheld, dan shetfed. Tipe flatbed merupakan tipe yang lebih mahal dikarenakan mesin dan pulleys yang menggerakkan scanner kepada kertas secara manual dibandingkan sengan handheld, sedangkan sheet-fed scanner memiliki banyak slot untuk memasukkan apa yang akan di scan kedalamnya.
14
3. Electonic text Electonic text merupakan jenis teks yang dapat dibaca oleh komputer dan ditransmisikan secara elektrik lewat jaringan. 4. Hypertext Pengertian hypertext mengarah kepada teks yang telah terhubung, sehingga
ketika
pengguna
melakukan
klik,
pengguna
yang
telah
dihubungkan komputer akan launches objek yang ada di dalam koneksi (link) tersebut.
2.2.2.2 Suara Menurut Vaughan (2008, p96-115), suara adalah elemen multimedia yang paling sensitif bagi panca indera. Suara dapat memberikan kesenangan untuk mendengar musik dan efek tertentu yang bisa membangkitkan mood, sehingga memperngaruhi cara pandang seseorang terhadap sebuah presentasi. Dastbaz (2003, p60-61) menambahkan, ada 2 (dua) tipe data suara yang biasa digunakan dalam aplikasi multimedia, yaitu : a. MIDI file (musical instrument digital interface) MIDI merupakan sekumpulan aturan komunikasi yang memungkinkan proses sintesis suara dan musik dari berbagai manufaktur bisa saling berkomunikasi. Terlepas dari manufakturnya,
MIDI
memungkinkan
instrumen dengan lima pin socket yang tepat untuk saling berkomunikasi. File berjenis MIDI tidak berisi suara, namun menyediakan aturan untuk mengantarkan deksripsi detail dari musik, seperti not balok dan
15
instrumen apa yang akan memainkan not itu. Ukuran MIDI bisa 1000 kali lebih kecil dibandingkan file yang menyimpan data audio. b. Suara digital Suara digital diciptakan dari mikrofon, hasil sintesis suara, ataupun dari pemutar CD dan siaran televisi. Sama seperti data MIDI, digital audio adalah representasi sebenarnya dari suara, yang disimpan dalam bentuk ribuan angka yang disebut dengan sampel. Menurut Vaughan (2008, p115), penggunaan suara digital dapat dipakai ketika : Pengguna tidak mempunyai kuasa atas hardware pemutar suara, Pengguna punya sumber daya komputasi dan bandwith untuk menangani file-file digital, Pengguna membutuhkan percakapan atau dialog.
2.2.2.3 Grafik Menurut Vaughan (2008, p132), elemen grafik merupakan elemen yang biasanya dapat di atur ukurannya, diberi warna, diberi pola, dibuat transparan, diletakkan di depan atau di belakang objek, atau dibuat tampak atau tak tampak berdasarkan perintah tertentu. Sebuah gambar dapat disajikan sebagai icon, dipadukan dengan teks, mempresentasikan pilihan yang dapat dipilih, atau gambar yang dapat menampilkan tampilan layar penuh di tempat teks tersebut yang merupakan bagian dari gambar yang disajikan sebagai trigger, menurut Hofstetter (2001, p18).
16
2.2.2.3.1 Jenis-jenis Gambar Menurut Vaughan (2008, p133-145), terdapat 2 jenis gambar dalam pembuatan grafik komputer yaitu : a. Gambar Bitmaps Bitmap
merupakan
matriks
data
yang
menggambarkan
karakteristik semua piksel yang membentuk gambar. Ketika sudah terbentuk, bitmap dapat digandakan, diedit, di-email, ataupun bisa diatur dengan berbagai kreasi. Bitmap digunakan untuk gambar yang photo-realistic dan untuk gambar-gambar yang bersifat kompleks. Biasanya, file gambar dikompresi untuk menyimpan memori dan kapasitas disk , kebanyakan format gambar jenis bitmap sudah menggunakan kompresi di dalam file, contoh : GIF , JPEG dan PNG. b. Gambar Vector Vektor adalah sebuah garis yang dideskripsikan oleh dua titik. Objek yang digambar secara vektor dideskripsikan dan digambar ke layar
komputer
menggunakan
sebagian
memory
space
yang
dibutuhkan untuk mendeskripsikan serta menyimpan objek yang sama dalam bentuk bitmap. Objek yang diciptakan secara vektor biasanya digambar dengan istruksi yang diberikan pada komputer, bukan dengan menampilkan gambarnya. Dengan kata lain, objek vektor mudah diubah skalanya tanpa mengurangi resolusi dan kualitas gambar.
17
2.2.2.3.2 Metode Penciptaan Warna Menurut Vaughan (2008, p153-154), ada 2 macam cara untuk menciptakan warna (computerized colour) sebagai berikut : a. Additive Colour Warna ini diciptakan dengan menggabungkan sumber cahaya yang berwarna dengan tiga warna primer, yaitu: merah, hijau, dan biru. Proses ini digunakan pada televisi dan video komputer. b. Substractive colour Warna ini diciptakan dengan menggabungkan media berwarna seperti cat atau tinta yang menyerap atau mengurangi sebagian spektrum warna dari cahaya dan merefleksikan sisanya kembali ke mata. Proses ini biasa digunakan dalam pembuatan lukisan.
2.2.2.4 Animasi Menurut Vaughan (2008, p170), animasi membuat presentasi statis menjadi lebih hidup. Perubahan visual dari waktu ke waktu dapat menambahkan sebuah kekuatan ke dalam proyek multimedia dan web. Animasi dapat berupa sebuah objek yang tampak bergerak ke luar masuk layar, seperti : globe bumi kita yang berputar, atau sebuah mobil yang berjalan menyusuri jalan.
2.2.2.4.1 Ruang Lingkup Animasi Menurut Vaughan (2008, p172-173), terdapat 3 macam ruang lingkup animasi yang dapat diciptakan di dalam komputer yaitu sebagai berikut :
18
a. Animasi 2d Pada animasi 2D, perubahan visual yang terjadi terdapat di bidang cartesian x dan y di layar (frame). Contoh dari animasi 2D : logo yang berganti warna, animasi sel, tombol yang berubah ketika disorot. Animasi path dalam 2d meningkatkan kompleksitas animasi, menyediakan gerakan-gerakan, serta mengubah lokasi gambar selama di jalur dan waktu tertentu. b. Animasi 2 ½ D Pada animasi 2 ½ D, terdapat ilusi kedalaman yaitu sumbu z yang
ditambahkan
kedalam
gambar
melalui
shadowing
dan
highlighting tetapi gambarnya sendiri masih berada di bidang datar x dan y. Embossing, shadowing, beveling dan highlighting menyediakan kesan kedalaman dengan membuat objek timbul atau memotongnya di dalam background. c. Animasi 3d Dalam animasi 3d software, virtual world dan perubahan dikalkulasikan di tiga sumbu yaitu x,y dan z sehingga memungkinkan gambar atau objek diciptakan dengan sisi depan, belakang, atas, bawah, kiri, kanan untuk bergerak mendekati dan menjauhi pengamat atau memungkinkan pengamat untuk mengelilingi objek dan melihatnya dari segala sudut.
19
2.2.2.4.2 Teknik Animasi Menurut Vaughan (2008, p174-177), terdapat beberapa teknik animasi yang sering kita jumpai yaitu : a. Cel animation Animasi sel membuat objek bergerak dengan menampilkan sejumlah seri gambar yang disebut dengan frame, dimana objek akan diletakkan dalam lokasi yang disebut dengan layer dan seolah tampak bergerak. Animasi sel dimulai dengan keyframe (frame pertama dan terakhir dari sebuah aksi). Satu menit animasi membutuhkan kurang lebih 1440 frame. Sekumpulan frame diantara keyframe digambarkan dengan tweening. Tweening merupakan
tindakan yang membutuhkan
kalkulasi jumlah frame diantara keyframe dan jalur dimana aksi akan terjadi, dan menggambarkan sekumpulan garis besar perubahan yang terjadi dengan pensil. b. Computer animation Program animasi komputer menggunakan logika yang sama bentuk dan prosedural dengan animasi sel dan menggunakan istilah klasik animasi sel seperti layer, keyframe, dan tweening. Perbedaan mendasar antara software animasi adalah seberapa besar peran animator dalam membuat animasi dan seberapa besar yang bisa langsung dihasilkan komputer secara otomatis.
20
c. Kinematics Kinematics adalah studi yang mempelajari pergerakan struktur yang
memiliki
sambungan,
misalnya
orang
yang
berjalan,
menganimasikan orang yang berjalan cukup sulit sebab perhitungan tentang posisi, rotasi, kecepatan, akselerasi dari bagian-bagian yang terlibat misalnya tekukan lutut, goyangan pinggul, ayunan bahu, anggukan kepala. d. Morphing Morphing merupakan efek dimana sebuah gambar berubah menjadi gambar yang lain. Aplikasi morphing dan alat pemodelan lain yang memberikan efek ini dapat merubah tidak hanya gambar yang diam tetapi juga gambar yang bergerak.
2.2.5 Video Menurut Hofstetter (2001, p24-25), video merupakan unsur yang paling lengkap untuk aplikasi multimedia. Video adalah elemen multimedia yang paling kompleks sebab terdapat unsur-unsur multimedia lain seperti teks, suara, gambar dan animasi di dalamnya. Vaughan (2008, p172) menambahkan, video digital adalah bagian multimedia yang paling menantang dan merupakan sarana yang paling kuat untuk membawa komputer lebih dekat ke dunia nyata. Video menghadirkan pesan di dalam cerita atau isi dari video itu sendiri, dan biasanya penonton video cenderung untuk memiliki persepsi masingmasing tentang apa yang dilihat. Video membutuhkan performa tinggi pada
21
komputer di sisi memori dan penyimpanan. Satuan pengukuran resolusi untuk pengukuran video adalah pixel. Arsitektur video digital dibuat dari format encoding dan pemutaran kembali video oleh komputer dan mengikutsertakan pemutar yang bisa mengenali dan memutar file yang diciptakan untuk format tersebut. Contoh arsitektur yang ada yaitu : Apple’s QuickTime, Microsoft’s Windows Media Format dan Real-Network’s RealMedia.
2.2.2 Pengertian Multimedia Interaktif Terdapat sebuah perbedaan yang seringkali sulit dibedakan oleh banyak orang ketika mendengar kata mulimedia interaktif. Seringkali dari mereka menyamakan makna dari multimedia dengan multimedia interaktif yang sebenarnya kurang tepat penggunaannya. Menurut Vauhgan (2008, p79), suatu aplikasi dari multimedia dapat dikatakan sebagai multimedia interaktif ketika aplikasi tersebut mengizinkan pengguna akhir dari sebuah aplikasi multimedia untuk mengontrol apa dan kapan saja informasi ditampilkan. Dapat disederhanakan bahwa perbedaan antara kedua makna terletak pada sisi pengguna, dimana pengguna diposisikan sebagai pusat kontrol suatu aplikasi. Menurut Dastbaz (2003, p130-132), terdapat 4 langkah dalam upaya merancang multimedia interaktif dengan metode IMSDD (interactive multimedia system design and development) :
22
1. Kebutuhan sistem (system requirement) Tahapan ini hampir sama dengan tahapan analisa kebutuhan pada waterfall model, dan di dalamnya terdapat elemen kelayakan dan seleksi hardware, fungsi dari tahapan ini : a. Menyediakan definisi sistem yang menggaris bawahi tujuan dan sasaran sistem, b. Memperjelas pengguna yang potensial bagi sistem dan kebutuhan khusus yang harus dipertimbangkan, c. Mengevaluasi hardware yang dibutuhkan beserta platform software, authoring tools secara kritis, d. Untuk mempertimbangkan delivery platform bagi sistem. 2. Pertimbangan perancangan (design consideration) Tujuan tahap ini adalah untuk memperjelas pedoman tentang detail dari desain.Tahapan ini dapat disamakan dengan tahapan desain arsitektural dan desain mendetail pada waterfall model dan juga tahapan desain dari desain antarmuka yang diperkenalkan oleh Preece ( 1993 ). Tujuan tahapan ini : a. Mendesain metafora, yaitu apa yang mewakili sistem dari dunia nyata, b. Mendefinisikan tipe informasi dan format yang harus diintegrasikan di dalam sistem, apakah teks, grafik, sound, animation, grafik, c. Struktur navigasional yang mengatur strategi yang menghubungkan hubungan antar-struktur dan fitur untuk menghindari masalah-masalah yang terkait dengan sistem hypermedia,
23
d. Sistem kontrol yang memperjelas tipe dan fitur tools yang dibutuhkan sistem, apakah kontrol animasi, fitur bookmarking, tools untuk suara dan video,dan lain-lain. 3. Implementasi (implementation) Tahapan ini dilakukan menggunakan authoring tools untuk menciptakan prototype sistem dan juga untuk melakukan beta testing untuk mengidentifikasi masalah desain dan kontrol yang ada. Tahapan ini dapat dibandingkan dengan tahapan koding, integration, dan unit testing pada waterfall. 4. Evaluasi (evaluation) Sistem dievaluasi terhadap tujuan penciptaan sistem. Tahapan desain dan perancangan multimedia interaktif dapat digambarkan secara rinci sebagai berikut : Hardware and Software Consideration
Delivery Consideration
System Definition
User Profile and Needs
System Requirements
Design Metaphor System Requirements
Evaluation
Implementation
Beta Testing
Prototyping
Implementation Types
Navigational Structures
Media Preparation and Integration
Gambar 2.1 Interactive Multimedia System Design and Development (IMSDD) (Sumber : Daztbas, 2003, p131)
24
2.3 Proses Pemodelan Air Terjun (Waterfall Model) Menurut Pressman (2005, p79), waterfall model atau yang kadang disebut dengan siklus hidup klasik, merupakan pendekatan yang sequential dan sistematik dalam pengembangan software yang dimulai dari spesifikasi kebutuhan customer dan perkembangannya melalui perencanaan, pemodelan, pembangunan dan deployment, yang berakhir pada support yang berkelanjutan dari sebuah software yang telah selesai. Waterfall model adalah pola pikir yang paling tua dalam rekayasa perangkat lunak (software). Menurut Dastbaz (2003, p110-111), waterfall model terdiri dari 5 tahapan yang dapat dijelaskan sebagai berikut : 1. Menspesifikasi kebutuhan (specifying the requirement) Tahap ini merupakan tahap awal dalam pengembangan produk software dan klien, dimana perancang dan klien mendefinisikan uraian sebuah sistem, serta menentukan kelayakan sistem yang dibuat. 2. Tahap desain (design stage) Ada 2 macam bagian dalam tahap ini, yaitu : - Desain
arsitektur
(architectural
design),
dimana
para
designer
menentukan ketersediaan layanan yang diharapkan dari sebuah sistem. - Desain rinci (detailed design), berisi deskripsi detail dari sebuah sistem dimana proyek dipecah menjadi komponen-komponen yang dapat dikelola sehingga dapat diimplementasikan ke bahasa pemrograman. 3. Koding dan pembangunan (coding and construction) Implementasi sistem berperan dalam penggunaan bahasa pemrograman, untuk itu dilakukan test untuk mendeteksi kemungkinan kesalahan yang ada.
25
4. Instalasi, operasi dan pemeliharaan (installation, operation and maintenance) Begitu sistem telah diimplementasikan, sistem tersebut akan terhubung sebagai gambaran di dalam desain arsitektur dan dikelola.
Tahapan pada proses pemodelan air terjun dapat digambarkan sebagai berikut : Requirements specification Design stage
Coding and Consideration
Testing
Installation
Maintenance Gambar 2.2 Proses Waterfall Model (Sumber : Dastbaz , 2003 , p111)
26
2.4 Game 2.4.1 Pengertian Game Menurut Rollings dan Adams (2003, p34), game merupakan bentuk suatu partisipasi atau interaksi dengan hiburan. Ketika game dimainkan, pemain diberikan hiburan dengan ikut berpastisipasi di dalamnya. Game juga dapat diartikan sebagai sebuah aktivitas pemecahan masalah (problem–solving) dengan pendekatan sikap untuk bermain yang berlandaskan kesenangan, menurut Schell (2008, p37). Menurut Rollings dan Adams (2003, p42-43), game-game tersebut bisa dikategorikan dalam beberapa kelompok sebagai berikut : 1. Action games Umumnya game jenis ini memiliki tantangan fisik, teka-teki (puzzle), perlombaan (challange), variasi konflik, dan biasanya terdapat tantangan ekonomis yang melibatkan pengumpulan objek. Di dalam game jenis ini jarang terdapat tantangan strategis atau konseptual. 2. Strategy games Game jenis ini cenderung untuk memiliki unsur tantangan strategis, taktis dan logis serta terkadang melibatkan tantangan ekonomis, sesekali dalam game seperti ini terdapat tantangan konflik untuk individu sehingga mengganggu pemain yang berpikir strategis. 3. Role-playing games Game jenis ini melibatkan tantangan taktis, logis dan eksplorasi (exploration), juga terdapat tantangan ekonomis karena biasanya di dalam
27
game ini player dapat mengumpulkan barang, jual beli untuk mendapatkan item yang lebih baik, teka-teki (puzzle) dan tantangan konseptual. 4. Real world simulations Melibatkan simulasi termasuk olahraga, kendaraan serta kendaraan militer yang didalamnya terdapat tantangan taktis dan fisik tetap yang bersifat penjelajahan ekonomis atau konseptual. 5. Construction dan management game Game jenis ini berisi tentang tantangan ekonomis dan konseptual. Pada game jenis ini jarang yang melibatkan konflik (exploration) dan hampir tak pernah terdapat tantangan fisik di dalamnya. 6. Puzzle game Isi dari game jenis ini dapat bervariasi, contohnya game Sekoban, yaitu game yang bertujuan mendorong kotak-kotak ke dalam tempatnya. 7. Adventures game Game jenis ini berisi tentang penjelajahan dan pemecahan teka-teki (puzzle solving), kadang-kadang terdapat tantangan konseptual dan fisik.
2.4.2 Video game Game semakin berkembang dari tahun ke tahun sesuai dengan era perkembangan teknologi yang ada. Game yang telah berkembang sebagaimana mestinya menghasilkan suatu terobosan baru di dunia dimana orang-orang mencoba menciptakan game yang bukan sekedar alat-alat yang tampak di mata lalu dimainkan, melainkan menggabungkan ide game ke dalam dunia komputer dan elektronik yang menciptakan suatu terobosan yang disebut video game.
28
Game style ada dan dikontrol dengan software, dijlankan dengan konsole game video atau komputer dan dimainkan di terminal video atau layar. Video game yang ideal biasanya tersusun atas : 1. Gabungan elemen-elemen multimedia, yang terdiri dari teks, image, musik dan audio, animasi serta video, 2. Memiliki suatu interaksi antara manusia dan komputer sehingga manusia dan komputer dapat saling berkomunikasi, 3. Memiliki jaringan yang menyusun game tersebut, 4. Tercipta dari logika berpikir yang menciptakan game tersebut menjadi lebih menantang dan menarik (terdapat challange), 5. Memiliki model fisik yang nyata, 6. Serta terdapat cerita yang menyusun bagaimana permasalahan game tersebut bisa dikatakan ada dan terdapat sejarah dari beberapa karakter yang mendukung alur cerita.
2.4.3 Jenis- jenis Gamers Menurut Rollings dan Adams (2003, p41), terdapat 2 (dua) kelompok pemain (gamers) yang akan memainkan sebuah game, yaitu : 1. Core Gamers Tipe pemain yang sering bermain game. Game bukan dianggap hanya sekedar hiburan, tetapi game tersebut membutuhkan uang dan waktu. Ciri-ciri gamers jenis ini : - Rajin membeli majalah game, - Senang chatting di forum-forum game,
29
- Membuat forum atau website yang membahas mengenai game kesukaan masing-masing. 2. Casual Gamers Tipe pemain yang bermain game hanya untuk kesenangan, akan berhenti bermain jika game tersebut tidak lagi menarik, mulai terasa menyusahkan atau menyulitkan. Ciri-ciri gamers jenis ini : -
Berpandangan bahwa bagian terpenting dari sebuah game adalah menarik untuk dimainkan, tidak peduli apakah menantang atau tidak,
-
Tidak mau menghabiskan waktu untuk game yang butuh banyak pembelajaran sebelum memainkannya.
2.4.4 Action Game Kunci skill yang dibutuhkan dalam game aksi (action game) adalah waktu reaksi dan koordinasi mata serta tangan di dalam tekanan. Action game merupakan jenis genre game yang paling sederhana dan lama yang ada, sebab tidak banyak informasi yang disajikan serta kompleksitas yang diolah oleh otak, serta game jenis ini sudah banyak dimainkan dari jaman dahulu. Game jenis ini juga tidak membutuhkan mesin yang canggih untuk memainkannya. Action game ini kemudian dibagi lagi menjadi 2 bagian, yaitu : 1. Shooting Pada game jenis ini, tidak semua isinya murni menggunakan senjata dalam bermain, namun game berisi tentang perkelahian juga dapat dikatakan sebagai game shooting. Misal : Street Fighter.
30
2. Non-Shooting Game non-shooting merupakan game action yang di dalamnya tidak terdapat unsur kekerasan. Misal : Super Mario Bros, Pacman, Donkey Kong.
Menurut Rollings dan Adams (2003, p299-311), terdapat 18 (delapan belas) elemen yang harus ada di dalam suatu game dapat dijelaskan sebagai berikut : 1. Level Game action dibagi menjadi beberapa level yang menunjukkan area dari game yang harus diselesaikan oleh pemain. Jika tugas tersebut selesai, maka level dikatakan selesai (complete) dan pemain dapat lanjut kembali ke level selanjutnya. 2. Checkpoint Fitur ini harus ada jika pemain mati (dead) dan terjadi kejadian dimana pemain harus mengulang permainannya, maka pemain tidak perlu mengulang permainan dari awal level melainkan hanya mengulang dari posisi mati (dead) saja. 3. Life Biasanya karakter memiliki nyawa (life) dan nyawa (life) didapat dengan mengambil power up atau mencapai titik-titik tertentu. Dapat dianggap life merupakan kesempatan dalam bermain game. Jika nyawa (life) habis maka game akan selesai (game over). 4. Energy Energi (energy) disini dapat dikatakan sebagai health point (HP), dimana HP akan berkurang ketika kekuatan pemain berkurang. Jika energi
31
habis nilainya maka life akan berkurang sebesar 1 (satu) poin. Jika energy dan life hilang maka pemain akan game over. 5. Time limit Pada suatu game, biasanya ada batas waktu untuk menyelesaikan tiap level. Jika waktu tersebut habis, akan ada kemungkinan bagi pemain game over dan pemain harus mengulang lagi dari awal permainan. Hal demikian biasanya diikuti dengan hilangnya nyawa (life). Kasus lain, mungkin jika waktu habis dan pemain belum menyelesaikan level maka tugas-tugas di level tersebut menjadi makin sulit. 6. Score Score merupakan indikator proses dari sebuah game untuk melihat sejauh mana pemain telah menjelajahi game. Score ini dapat dijadikan sebagai standar kesuksesan pemain dalam bermain suatu game. 7. Power up Power up dapat berbentuk hadiah-hadiah tambahan dari game, dimana pemain diberi kesempatan untuk meningkatkan kemampuan karakter game dimana terdapat 2 (dua) kategori power up, yaitu : 1. Permanen : biasanya selalu mengikuti pemain disepanjang game, 2. Sementara : bersifat sementara (dapat saja ada dalam kurun waktu beberapa menit atau detik saja). 8. Collectibles Collectibles merupakan objek-objek pilihan untuk menambah skor pemain. Fungsinya hanya untuk menambah skor pemain. Dalam kasus
32
tertentu, collectibles ini dapat membuka level rahasia atau menimbulkan kejadian-kejadian rahasia. 9. Smart Bombs Smart bombs merupakan fitur yang tidak dimiliki semua game. Intinya fitur ini hadir untuk membantu pemain keluar dari situasi sulit dimana pemain tidak memiliki pilihan lain. Di dalam game dengan fitur seperti ini, biasanya jumlah smart bombs dibatasi. 10. Hyperspace Hyperspace ini sesungguhnya mirip dengan smart bombs, tetapi tujuan dibuat hyperspace pada dasarnya untuk membantu pemain keluar dari posisi atau situasi sulit dengan cara perpindahan lokasi ke lokasi yang aman. Fitur ini digunakan di istilah game asteroid dimana asteroid diserang oleh meteor.Pemain dapat menggunakan fitur ini untuk memindahkan lokasi pesawatnya ke tempat yang lebih aman. 11. Wave Wave merupakan situasi dimana musuh muncul dan berhadapan dengan pemain. Ada 2 (dua) metode dalam menggunakan wave : 1. Wave yang telah di script (code) atau dijadwalkan dari awal, maksudnya ketika pemain sampai ke titik tertentu maka pemain pasti akan bertemu musuh, 2. Wave dimana musuh dimunculkan benar-benar secara acak.
33
12. Big boss Pada setiap game akan ada tantangan dimana musuh yang benar-benar kuat sebagai penjaga level dimana ketika musuh tersebut berhasil dikalahkan, pemain akan naik level. 13. Wild card enemies Wild card enemies adalah musuh unik yang dikeluarkan secara random, tetapi bukan big boss. Tujuannya agar game lebih menantang atau menarik. 14. Lock door and key Pada level-level tertentu, pemain akan menemukan pintu yang tidak dapat dibuka tanpa adanya kunci. Maka pemain harus mencari kunci yang dapat ditemukan di dalam game. 15. Monster generation Monster generation merupakan istilah yang digunakan untuk menyebut suatu objek atau musuh di dalam game yang dapat menghasilkan musuh lainnya. Maka pemain harus menemukan pintu (door) yang menghasilkan musuh tersebut untuk dihancurkan agar musuh berhenti dihasilkan. 16. Dugeon exit dan level wrap Dugeon exit merupakan posisi yang menjadi transisi dalam game yang merupakan pertanda akhir level ini dan menjadi awal dari level baru, umumnya dijaga oleh boss. Level wrap merupakan dugeon exit yang sifatnya rahasia dimana pemain dapat melangkah beberapa level ketika memasuki level wrap.
34
17. Minimaps Minimaps merupakan fitur yang ada untuk membantu pemain melihat ke daerah yang tidak dapat dilihat atau tidak tampak di layarnya. 18. Victory conditions Posisi kemenangan dimana akan terlihat di akhir permainan atau akhir level.
2.5 Game Design 2.5.1 Pengertian Game Design Menurut Rollings dan Adams (2003, p4), game design adalah proses mengimajinasikan sebuah game, mendeskripsikan cara kerja game, mendeskripsikan elemen-elemen yang terdapat pada game tersebut dan mentransmisikan informasi tersebut kepada tim yang akan merancang dan membangun game tersebut. Game design juga dapat diartikan sebagai segala sesuatu yang meliputi perencanaan terhadap apa yang harus diimplementasikan oleh programmer game, menurut Zerbs et al (2004, p14). Schell (2008, p10) menambahkan mengenai tujuan dari game designer, menurutnya tugas tidak sederhana dan hanya terbatas pada sebatas merancang sebuah game. Game hanyalah sebuah hasil akhir. Ketika seseorang bermain game, mereka akan mendapatkan sebuah experience. Experience inilah yang harus dirancang dan diperhatikan bagi seluruh game designer. Di dalam mendesain sebuah game, peranan game design documentation mengambil peranan cukup besar. Game design documentation memaparkan tentang
35
segala detail yang terdapat dalam game yang harus diperhatikan dalam tahap pembuatan game selanjutnya.
2.5.2 Aturan Dasar Game Design Rollings dan Adam (2003 , p9), kemudian membagi aturan dasar dari game design sebagai berikut : 1. Core Mechanics Core mechanics berisi peraturan-peraturan yang mendefinisikan bagaimana cara kerja sebuah game dan merupakan penerjemahan dari visi seorang desainer game ke dalam kumpulan peraturan yang konsisten yang dapat ditafsirkan oleh komputer atau lebih tepatnya sekumpulan aturan aturan yang dapat dimengerti oleh orang orang yang akan menulis perangkat lunak yang ditafsirkan komputer. 2. Storytelling dan Narrative Sebuah game menceritakan sebuah cerita. Kompleksitas dan kedalaman cerita bergantung pada jenis game tersebut juga. Rollings dan Morris (2004, p152) menambahkan, merupakan suatu pengertian yang buruk apabila cerita yang dibuat ulang pada game menjadi lebih buruk daripada cerita yang telah dibuat sebelumnya oleh perancang game. Game harus interaktif dan tidak mengarahkan pemain menjadi penonton yang pasif. Sebuah game yang baik harus mempunyai cerita dan tujuan akhir yang jelas sehingga alasan dari seorang pemain untuk bermain dan menyelesaikan
36
permainan nya adalah karena ketertarikan akan cerita serta tujuan bermain game tersebut. 3. Interactivity Interactivity memaparkan mengenai cara melihat, mendengar, dan aksi dari seorang pemain di dalam dunia game. Interactivity dapat memperjelas cara pemain dalam memainkan sebuah game. Aturan dasar yang diterapkan pada game design ini dapat digambarkan sebagai berikut :
Gambar 2.3 Aturan Dasar Game Design (Sumber : Rollings and Adams, 2003, p9)
2.6 Analisis dan Desain Berorientasi Objek (Object Oriented Analysis and Design) Pendekatan berorientasi objek (object oriented) untuk programming membutuhkan teknik analisis beorientasi objek (OOA) dan desain berorientasi objek (OOD). Analisis berorientasi objek (object oriented analysis) atau OOA adalah pendekatan yang digunakan untuk :
37
1. Mempelajari objek yang sudah ada untuk melihat apakah objek-objek tersebut dapat digunakan ulang atau diadaptasikan untuk pengguna baru, 2. Mendefinisikan objek
baru atau objek yang dimodifikasi yang akan
digabungkan dengan objek lain yang sudah ada menjadi sebuah aplikasi bisnis yang terkomputasi.
Pendekatan berorientasi objek berpusat pada sebuah teknik yang disebut dengan pemodelan objek, yaitu sebuah
teknik untuk mengidentifikasi objek di dalam
lingkungan sistem dan mengidentifikasi hubungan satu sama lain. Analisis
berorientasi
objek
(OOA)
mengharuskan
kita
mengidentifikasi
fungsionalitas sistem yang dibutuhkan dari perpektif sistem dan mengidentifikasi objek bersamaan dengan atribut, behaviour, serta relasinya. Desain berorientasi objek (OOD) adalah pendekatan yang digunakan untuk menspesifikasikan solusi software berkaitan dengan kolaborasi objek, atribut dan metodenya.
Proses desain berorientasi objek dapat dipaparkan sebagai berikut : 1. Membuat model use case untuk mengimplementasikan lingkungan sistem, 2. Membuat pemodelan antara kelas, behaviour dan state yang mendukung skenario use case, 3. Memperbaharui class diagram untuk merefleksikan implementasi lingkungan sistem.
38
2.7 Pengertian Unified Modelling Language (UML) Menurut Whiten dan Bentley (2007, p371), unified modelling language (UML) adalah
sekumpulan
kesepakatan
tentang
pemodelan
yang
digunakan
untuk
menspesifikasi atau menjelaskan objek-objek di dalam sistem software. Downing (2009, p499) menambahkan, UML (unified modeling language) adalah bahasa yang digunakan untuk representasi visual sistem perangkat lunak dan jenis-jenis sistem. Sedangkan menurut Bruegge dan Dutoit (2010 , p30), UML adalah suatu notasi yang dihasilkan dari OMT (object modeling techinique), Booch dan OOSE (objectoriented software enginnering). UML dirancang untuk aplikasi skala luas, maka UML menyediakan konstruksi untuk sistem berskala luas dan aktivitas-aktivitas yang terkait didalamnya seperti real-time, sistem distribusi , sistem analisis, sistem perancangan dan penyebaran sistem. Spesifikasi UML
dianggap
sebagai panutan
standar,
sebab
sebelum
kemunculannya, terdapat berbagai macam spesifikasi yang pada akhirnya menyulitkan komunikasi antara para pengembang software. Maka akhirnya UML diadopsi oleh Group Object Management (OMG) sejak tahun 1997. Menurut Whiten dan Bentley (2007, p392), diagram di dalam UML dapat dibagi menjadi 13 (tiga belas) jenis yaitu : 1. Diagram kebutuhan pengguna (use case diagram) Menggambarkan pengenalan sistem, eksternal sistem dan pengguna. Dengan kata lain use case menggambarkan siapa yang akan menggunakan sistem dan bagaimana cara pengguna berintaraksi dengan sistem. Sebagai
39
tambahan ada narasi use case yang menggambarkan tahapan-tahapan setiap interaksi. 2. Diagram aktivitas (activity diagram) Menampilkan alur bertahap dari aktivitas atau use case atau proses bisnis yang biasanya digunakan untuk merancang logika dari sistem. 3. Diagram kelas (class diagram) Menampilkan struktur objek dari sistem. Diagram ini memperlihatkan kelas objek yang membentuk sistem serta hubungan antarkelas. 4. Diagram objek (object diagram) Mirip class diagram, tapi yang ditampilkan bukan kelas objek, melainkan instance objek sebenarnya dengan nilai atribut saat itu. Diagram ini menunjukkan pada pengembang situasi objek dalam sistem dalam suatu saat tertentu. 5. Diagram state machine (state machine diagram) Menunjukkan bagaimana suatu kejadian dapat mengubah kondisi suatu objek semasa hidup objek tersebut, menunjukkan berbagai kondisi yang bisa dicapai objek serta transisi antar kondisi-kondisi itu. 6. Diagram struktur komposisi (composite structure diagram) Menjabarkan struktur internal dalam dari kelas, komponen, atau use case. 7. Diagram sekuen (sequences diagram) Menampilkan bagaimana objek berinteraksi dengan satu sama lain lewat pesan dalam suatu operasi atau eksekusi use case. Diagram ini menampilkan bagaimana pesan dikirimkan, diterima, dan alurnya.
40
8. Diagram komunikasi (communication diagram) Dalam UML versi lama, diagram ini disebut dengan diagram kolaborasi. Diagram ini menampilkan interaksi antar objek lewat pesan. Mirip sequence diagram, namun lebih fokus pada struktur organisasi objek dalam format jaringan. 9. Diagram garis besar interaksi (interaction overview diagram) Menggabungkan
fitur dari sequence dan activity diagram untuk
menampilkan bagaimana setiap objek berinteraksi dengan setiap aktivitas dari use case. 10. Diagram waktu (timing diagram) Diagram yang fokus kepada batasan waktu dalam perubahan kondisi dari satu atau beberapa objek. Diagram ini sangat berguna dalam mendesain embedded software. 11. Diagram komponen (component diagram) Menampilkan susunan kode program yang dipecah menjadi berbagai komponen dan bagaimana masing-masing berinteraksi. 12. Diagram deployment (deployment diagram) Menampilkan konfigurasi komponen software dalam arsitektur fisik dari node system hardware. 13. Diagram paket (package diagram) Menampilkan bagaimana kelas dan UML lainnya tersusun menjadi paketpaket dan ketergantungan dari paket-paket tersebut.
41
2.7.1 Use Case Model Diagram Menurut Whitten dan Bentley (2007, p245), pemodelan use case merupakan proses pemodelan fungsi sistem yang berkaitan dengan kejadian bisnis, siapa yang melakukan dan bagaimana sistem dapat merespon kejadian tersebut. Dalam analisa berorientasi objek, kita melibatkan kebutuhan model use case ke dalam analisa use case model melalui tahapan-tahapan berikut : 1. Mengidentifikasi, mendefinisikan dan mendokumentasikan aktor baru, 2. Mengidentifikasi, mendefinisikan dan mendokumentasikan use case baru, 3. Mengidentifikasikan kemungkinan penggunaan ulang, 4. Merancang model diagram use case (jika memungkinkan), 5. Mendokumentasikan analisis sistem di dalam narasi use case.
Bentuk dari use case diagram dapat digambarkan sebagai berikut :
42
Gambar 2.4 Use Case Diagram (Sumber : Whitten dan Bentley, 2007, p384)
2.7.2 Activity Diagram Diagram
aktivitas
menggambarkan
tahapan
use
case,
namun
tidak
menspesifikasi siapa yang melakukan tahapan ini. Hal ini tidak menjadi masalah, namun jika ingin melihat apa yang dilakukan dan siapa yang melakukan, diagram aktivitas ini bisa dipartisi untuk melihat aksi yang dilakukan class tertentu atau aktor tertentu.
43
Bruegge dan Dutoit (2010, p33) menambahkan, activity diagram merupakan diagram yang menggambarkan aktivitas-aktivitas di dalam sistem. Aktivitas dapat diartikan sebagai state yang merepresentasikan pengeksekusian dari suatu operasi dan hasil akhir dari suatu operasi akan saling berpengaruh terhadap aktivitas lain. Bentuk dari activity diagram dapat digambarkan sebagai berikut :
44
Gambar 2.5 Activity Diagram (Sumber : Whitten dan Bentley, 2007, p392)
45
2.7.3 Sequence Diagram Penulisan sistem sequence diagram dapat dipaparkan sebagai berikut : a. Aktor (actors) : Aktor atau pelaku use case ditunjukkan melalui simbol aktor use case. b. Sistem (system) : kotak ini menggambarkan sistem sebagai sebuah black box, atau sebagai sebuah keseluruhan. Simbol titik dua (:) melambangkan instance dari sistem yang berjalan. c. Lifelines : garis vertikal putus-putus yang turun dari aktor dan sistem yang melambangkan masa hidup dari sekuen. d. Activation bars : batang yang di set sepanjang lifelines mengindikasikan masa dimana ada partisipan yang aktif dalam interaksi. e. Pesan masukan (input messages) : Panah horisontal dari aktor ke sistem mengidentifikasikan input dari pesan. Berdasarkan konvensi UML, pesan yang dikirim harus dimulai dengan huruf kecil, untuk kata selanjutnya dimulai dengan huruf besar, dan antara kedua kata ini tidak dipisahkan spasi. Kemudian, diikuti dengan tanda kurung yang di dalamnya berisi parameter yang akan dikirim. f. Pesan keluaran (output messages) : Panah horisontal yang putus-putus dari sistem ke aktor. Dan 2 macam penulisan lagi untuk validasi login : g. Aktor penerima (receiver actors) : Aktor lain atau sistem eksternal yang menerima pesan dari sistem.
46
h. Layar (frame) : Sebuah kotak yang menutup satu atau lebih pesan untuk membagi sequence aksi. Kotak ini bisa menunjukkan mengenai pengulangan, fragment lain, atau tahapan opsional.
Bentuk dari activity diagram dapat digambarkan sebagai berikut :
Gambar 2.6 Sequences Diagram (Sumber : Whitten dan Bentley, 2007, p395)
47
2.7.4 Class Diagram Class diagram merupakan penggambaran secara grafik dari sistem statis dari objek yang terstruktur, yang menunjukkan object classes yang disusun sistem sebagaimana hubungan antara objek kelas ini. Langkah-langkah yang harus dilakukan untuk membangun class diagram dapat dijabarkan sebagai berikut : a. Mengidentifikasikan association dan multiplicity Dalam association ditampilkan derajat dari setiap association, yang disebut sebagai multiplicity, yaitu nilai minimum dan maksimum keberadaan objek/class untuk sebuah keberadaan objek/class yang terhubung. b. Mengidentifikasikan hubungan umum dan spesial Saat
mengidentifikasikan
association
dasar
dan
multiplicity,
pemberitahuan akan kejelasan hubungan spesial dan umum (general) harus dilakukan. Disebut juga dengan pengelompokan hirarki kelas (class hirarhies), terdiri dari kelas supertype (parent) dan kelas subtype (child). c. Mengidentifikasikan hubungan aggregation atau composition Agregation merupakan tipe hubungan yang unik dimana salah satu objeknya merupakan bagian dari objek lainnya. Hal ini sering dikaitkan dengan hubungan sebagian atau keseluruhan. Composition merupakan hubungan aggregation dimana suatu kelas utuh bertanggung jawab atas pembuatan dan penghancuran kelas bagian. Jika kelas induk hancur, maka kelas bagian akan ikut hancur juga. d. Mempersiapkan class diagram
48
Gambar 2.7 Class Diagram (Sumber : Whitten dan Bentley, 2007, p406)
49
2.8 File Based Systems Menurut Connoly dan Begg (2005, p7), file based system merupakan koleksi dari program aplikasi yang menunjukkan layanan (services) untuk pengguna akhir (end user), dimana setiap program dapat mendefinisikan dan mengatur datanya sendiri. Demi alasan keamanan, banyak data diberi nama dan disimpan di satu atau lebih tempat penyimpanan. Alasan perlindungan (security) juga memperkuat kenyataan bahwa tempat penyimpanan tersebut mungkin dikunci atau ditempatkan di area terlindungi dari sebuah gedung. Ketika data hendak dicari, dapat dilakukan pencarian secara manual. Tetapi akan sulit bila data tersebut begitu besar atau banyak serta bila dilakukan menggabungkan referensi atau memproses informasi pada suatu file.
2.9 Storyboard Menurut Kristof dan Satran (2001, p58), storyboard adalah sebuah alat komunikasi yang digunakan untuk menstrukturisasi dan mengarahkan seseorang dari illustrators ke narrators lalu ke perekayasa (enginner), sekaligus alat pemasaran yang digunakan untuk menarik orang yang akan menyetujui, mendanai dan mempromosikan sebuah proyek. Storyboard merupakan dokumen dinamis yang dapat dimodifikasi dan diperbaharui sejalan dengan proses desain. Dix dan Finlay (2002, p208) menambahkan, storyboard merupakan gambaran grafis dari sistem yang diinginkan tanpa adanya fungsionalitas sistem yang tidak membutuhkan banyak kemampuan komputasi dalam pengerjaannya dan dapat dibuat tanpa bantuan komputer untuk mendesain sistem yang interaktif. Storyboard
50
menyediakan gambaran (snapshots) dari tampilan antarmuka di titik tertentu sebagai pada tahap interaksi. Evaluasi kepuasan pengguna dapat menentukan dengan cepat arah kebenaran suatu desain. Paket desain grafis modern memungkinkan membuat storyboard dengan bantuan komputer dengan bantuan komputer, tidak dengan tangan lagi. Salah satu keterbatasan dari storyboard modern yaitu hasil yang didapat mungkin tidak sebagus desain grafis yang dapat dibuat oleh seorang profesional, walaupun demikian hasil yang didapat lebih realistis dan dapat ditampilkan di layar komputer. Hal ini mendukung animasi yang terurut secara otomatis melalui kumpulan snapshots. Animasi mengilustrasikan aspek dinamis dari interaksi antara pengguna dan sistem yang diinginkan yang mungkin tidak bisa dilakukan oleh storyboard tradisional lewat kertas.