Bandung, 13 Februari 2013
Perihal: Plagiat Skripsi
Saya yang bertandatangan dibawah ini:
Nama : Muhammad Ilham Rizqyawan
NIM : 10108428
Judul Skripsi :Pembangunan Game Edukasi Adventure Untuk Pengenalan Teori Musik Berbasis Desktop
Menyatakan bahwa saya tidak melakukan tindakan meniru, menyalin atau menjiplak skripsi/karya ilmiah yang telah ada. Apabila saya terbukti melakukan kegiatan tersebut, maka saya bersedia menerima sanksi yang diberikan sesuai dengan ketentuan yang ditetapkan dan berlaku di Program Studi Teknik Informatika Universitas Komputer Indonesia.
Mengetahui,
Yang memberi pernyataan
Jenis kelamin : Laki-laki
Tempat, tanggal lahir : Bandung, 10 Desember 1990
Agama : Islam
Kewarganegaraan : Indonesia
Status : Belum kawin
Anak ke : Pertama dari tiga bersaudara
Alamat : Jl. Dewi Sartika no.61 Kecamatan Cicalengka
Kabupaten Bandung-40395
telepon : +628996823604
e-mail : email.ilham@gmail.com
2. RIWAYAT PENDIDIKAN
1. Sekolah Dasar : SD Negeri Cicalengka XV tahun ajaran
1996 - 2002
2. Sekolah Menengah Pertama : SMP Negeri 1 Cicalengka tahun ajaran 2002 - 2005
3. Sekolah Menengah Kejuruan : SMA Negeri 1 Cicalengka tahun ajaran 2005 - 2008
4. Perguruan Tinggi : FTIK Unikom Bandung tahun ajaran
2008-2013
Demikian riwayat hidup ini saya buat dengan sebenar-benarnya dalam keadaan sadar dan tanpa paksaan.
Bandung, Februari 2013
PEMBANGUNAN GAME EDUKASI ADVENTURE UNTUK
PENGENALAN TEORI MUSIK BERBASIS DESKTOP
SKRIPSI
Diajukan untuk Menempuh Ujian Akhir Sarjana Program Studi S1 Teknik Informatika
Fakultas Teknik dan Ilmu Komputer
MUHAMMAD ILHAM RIZQYAWAN
10108428
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS TEKNIK DAN ILMU KOMPUTER
iii
Puji dan syukur penulis panjatkan kehadirat Allah SWT yang telah memberikan rahmat serta hidayah-Nyasehingga penulis dapat menyelesaikan
penulisan skripsi dengan judul “PEMBANGUNAN GAME EDUKASI
ADVENTURE UNTUK PENGENALAN TEORI MUSIK BERBASIS
DESKTOP” sebagai salah satu syarat kelulusan pada Program Strata 1 Jurusan
Teknik Informatika Fakultas Ilmu dan Teknik Komputer di Universitas Komputer Indonesia.
Dengan selesainya penyusunan laporan tugas akhir ini penulis banyak memperoleh dukungan, masukan dan bimbingan yang sangat bermanfaat dari berbagai pihak selama penulisan laporan tugas akhir ini, oleh karena itu penulis mengucapkan terima kasih kepada :
1. Allah SWT atas rahmat, berkah dan izin-Nya saya bisa menyelesaikan penulisan skripsi ini
2. Ibu Rini Agustiani dan Bapak Eman Sulaeman sebagai orangtua serta Nenek, Wildan, dan Salsa yang telah memberikan dukungan baik secara moril maupun materil dan doa yang tiada hentinya sehingga penulis bisa bertahan dan berpijak hingga saat ini
3. Bapak Galih Hermawan, S.Kom., M.T. selaku pembimbing, yang telah membimbing penulis dalam menyelesaikan tugas akhir
4. Ibu Ednawati Rainarli, S.Si., M.Si. selaku reviewer yang telah banyak memberikan masukan dan arahan
5. Ibu Mira Kania Sabariah, S.T., M.T. selaku penguji sidang yang telah banyak memberikan masukan dan arahan
6. Bapak Andri Heryandi, S.T., M.T., selaku dosen wali IF-9 2008 selama penulis menempuh pendidikan di UNIKOM
iv
8. Ryan, Daday, Aang, Eko, Dadang, Rudy, Aceh, Imam, Elvack, Rikha, Syifa, Ghea, dan Qoi yang selalu ada di samping memberikan dukungan 9. RM Member & Crew, Neng Fany, Uzy, IU yang selalu memberi
semangat.
10. A Sandi, Yasser, Bang Deris, Ui, Teh Selly, Neng Desti dan keluarga lain yang selalu memberikan dukungan.
11. Untuk teman-teman IF-9 seperjuangan dan semua pihak yang membantu dalam menyelesaikan tugas akhir ini yang tidak dapat penulis sebutkan satu per satu, terima kasih banyak atas semua dukungan dan bantuannya hingga skripsi ini dapat terselesaikan dengan baik.
Penulis sangat menyadari dalam penulisan skripsi ini masih banyak terdapat kekurangan. Penulis juga berharap agar skripsi ini dapat bermanfaat bagi semua pihak khusunya bagi penulis dan umumnya bagi pembaca.
Bandung, Februari 2013
v
KATA PENGANTAR...iii
DAFTAR ISI ... v
DAFTAR GAMBAR...viii
DAFTAR TABEL ... xi
DAFTAR SIMBOL...xii
DAFTAR SUMBER... xvi
DAFTAR LAMPIRAN ... xvii
BAB I PENDAHULUAN ... 1
1.1 Latar Belakang Masalah... 1
1.2 Perumusan Masalah ... 2
1.3 Maksud dan Tujuan... 2
1.4 Batasan Masalah ... 2
1.5 Metodologi Penelitian ... 3
1.6 Sistematika Penulisan... 5
BAB II LANDASAN TEORI... 7
2.1 Musik... 7
2.1.1 Pengertian Musik ... 7
2.1.2 Interval ... 7
2.1.3 Ear Training ... 8
2.2 Edukasi ... 9
2.2.1 Unsur–unsur Edukasi ... 9
2.2.2 Faktor–faktor yang membatasi kemampuan edukasi ... 10
2.3 Game ... 10
2.3.1 Pengertian Game ... 10
2.3.2 Klasifikasi Game... 10
vi
2.4 Fisher-Yates Shuffle... 16
2.5 Tools... 17
2.5.1 Object Oriented Paradigm... 17
2.5.2 Unified Modelling Language(UML)... 18
2.5.3 ActionScript 3.0 ... 19
2.5.4 Flixel ... 20
2.5.5 Extensible Markup Language(XML) ... 21
BAB III ANALISIS DAN PERANCANGAN ... 23
3.1 Analisis Sistem ... 23
3.1.1 Analisis Game Sejenis yang Sudah Ada ... 23
3.1.2 Analisis game yang akan dibangun... 24
3.1.3 Analisis Algoritma ... 31
3.1.4 AnalisisEar Training... 32
3.1.5 Spesifikasi Kebutuhan Perangkat Lunak (SKPL)... 35
3.1.6 Analisis Kebutuhan Non-Fungsional ... 36
3.1.7 Analisis Kebutuhan Fungsional ... 39
3.2 Perancangan Sistem ... 61
3.2.1 Perancangan Komponen Permainan ... 61
3.2.2 Perancangan Struktur Menu ... 63
3.2.3 Perancangan Antarmuka... 64
3.2.4 Perancangan Pesan... 68
3.2.5 Jaringan Semantik ... 72
3.2.6 Perancangan Metode ... 72
BAB IV IMPLEMENTASI DAN PENGUJIAN... 79
4.1 Implementasi... 79
4.1.1 Implementasi Perangkat Keras ... 79
4.1.2 Implementasi Perangkat Lunak ... 79
4.1.3 Implementasi Class ... 79
4.1.5 Implementasi Pesan... 84
4.2 Pengujian Sistem... 87
4.2.1 Rencana Pengujian... 87
4.2.2 PengujianAlpha... 88
4.2.3 PengujianBeta... 94
BAB V KESIMPULAN DAN SARAN ... 103
5.1 Kesimpulan... 103
5.2 Saran... 103
104
DAFTAR PUSTAKA
[1] Kim Hamilton and Russell Miles,Learning UML 2.0.: O'Reilly, 2006. [2] Howard Gardner, Intelligence Reframed: Multiple Intelligences for the 21st
Century. New York: Basic Book, 1999.
[3] K. Garret. Music Tech Teacher. [Online]. Diakses 22 Oktober 2012.
http://www.musictechteacher.com/music_quizzes/cg_quiz_fling_teacher_interva ls.htm
[4] Ricci Adam. 8notes. [Online]. Diakses 22 Oktober 2012.
http://www.8notes.com/school/theory/musictheory/files/trainers/html/id90_en.ht ml
[5] GuitarGames.net. GuitarGames.net. [Online]. Diakses 22 Oktober 2012.
http://www.guitargames.net/games/theoryAdventure/index.php
[6] Ian Sommerville,Software Engineering, 8th ed.: Addison-Wesley Publishers, 2007.
[7] Philip Alperson,What Is Music?: An Introduction to the Philosophy of Music. Pennsylvania: Haven Publication, Inc., 1987.
[8] Harry Susantianto and dkk.,Seni dan Budaya. Bandung: Grafindo Media Pratama, 2007.
[9] Gary Willis,Ultimate Ear Training for Guitar and Bass. Milwaukee: Hal Leonard Corporation, 1998.
[10] Michael Pilhore and Holly Day,Music Theory For Dummies. Indianapolis: Wiley Publishing, Inc., 2007.
[11] Timothy Crist. Arkansas State University. [Online]. Diakses 22 Oktober 2012.
http://www.clt.astate.edu/tcrist/eartraining.htm
[12] Karen Evans Moratz,Flute For Dummies. New Jersey: John Wiley and Sons, Inc., 2009.
[14] Media edukasi. [Online]. Diakses 22 Oktober 2012. http://www.m-edukasi.web.id/2012/06/unsur-unsur-pendidikan.html
[15] Heather Maxwell Chandler and Rafael Chandler,Fundamentals of Game Development.: Jones & Barlett Learning, LLC, 2011.
[16] Ernest Adams,Fundamentals of Game Design, 2nd ed. Berkeley: New Rider, 2010.
[17] Yudi Wibisono. Blog Yudi Wibisono. [Online]. Diakses 22 Oktober 2012.
http://yudiwbs.wordpress.com/2011/01/02/educational-game-game-edukasi/
[18] Algoritmy.net. Algoritmy.net. [Online]. Diakses 22 Oktober 2012.
http://en.algoritmy.net/article/43676/Fisher-Yates-shuffle
[19] Jeff Atwood. Coding Horror. [Online]. Diakses 22 Oktober 2012.
http://www.codinghorror.com/blog/2007/12/the-danger-of-naivete.html
[20] Mike Bostock. [Online]. Diakses 22 Oktober 2012.
http://bost.ocks.org/mike/shuffle/
[21] Mike O'Docherty, Object-Oriented Analysis and Design Understanding System Development with UML 2.0. England: Wiley, 2005.
[22] Colin Moock,Essential ActionScript 3.0, First Edition ed. Sebastopol, CA: O'Reilly Media, Inc., 2007.
[23] Flixel.org. Flixel. [Online]. Diakses 22 Oktober 2012.flixel.org/about.html
[24] Joe Fawcett, Liam R.E. Quin, and Danny Ayers,Beginning XML. Indianapolis: John Wiley & Sons, Inc., 2012.
1
BAB I
PENDAHULUAN
1.1 Latar Belakang Masalah
Pendidikan musik cukup penting bagi anak. Banyak orang tua yang menilai anaknya pintar hanya jika mereka pintar di bidang matematika atau bahasa, padahal menurut teori multiple intelligences ada kecerdasan lain salah satunya adalah kecerdasan musikal [2]. Salah satu indikator kecerdasan musikal seseorang adalah bisa memainkan alat musik (performance) [2]. Masalahnya, dibutuhkan teori musik dan sensitivitas pendengaran yang baik untuk mendukung seseorang agar bisa memainkan alat musik dengan baik. Salah satu teori musik yang dibutuhkan adalah interval.
Masalah yang terjadi dalam pendidikan teori musik adalah media pembelajaran yang kurang menarik. Media pembelajaran konvensional untuk mempelajari musik adalah textbook. Textbook cenderung membosankan karena hanya menggunakan text dan gambar partitur saja, sedangkan musik adalah seni tentang suara. Oleh karena itu textbook kurang efektif sebagai media pembelajaran teori musik.
Salah satu solusinya adalah dengan mencoba menerapkan game edukasi sebagai media pembelajaran teori musik. Game edukasi teori musik khususnya interval sudah ada beberapa, diantaranya“Intervals Music Quiz by Ms. Garrett“
[3],“8notes Interval Ear Trainer“[4], danWoody’s Music Theory Adventure[5]. Tetapi masalahnya pada game – game tersebut teori dan ear training tidak terintegrasi. Menurut observasi yang dilakukan, game tersebut fokus hanya ke teori atauear training-nya saja. Masalah lain yang ditemui adalah rata–rata game tersebut adalah mini game, mereka tidak memiliki jalan cerita sehingga kurang menarik bagi anak.
begitu, diharapkan hasil penelitian ini menjadi media pembelajaran baru yang lebih menarik, dan bisa membantu meningkatkan kemampuan pengguna dari sisi teori maupun sensitivitas pendengarannya.
1.2 Perumusan Masalah
Berdasarkan latar belakang masalah yang telah diuraikan di atas, yang menjadi permasalahan dalam penelitian ini adalah:
1. Bagaimana meningkatkan pengetahuan teori musik pengguna tentang interval nada.
2. Bagaimana meningkatkan sensitivitas pendengaran pengguna terhadap interval nada.
3. Bagaimana membuat sarana belajar alternatif yang lebih menantang dan lebih menyenangkan.
1.3 Maksud dan Tujuan
Berdasarkan masalah yang telah dikemukakan di atas, maka maksud dari penelitian ini adalah untuk menerapkan game edukasi teori musik sebagai media pembelajaran alternatif dalam mempelajari teori musik.
Adapun tujuan yang ingin dicapai antara lain :
1. Membantu meningkatkan pengetahuan teori musik pengguna tentang interval nada.
2. Melatih sensitivitas pendengaran pengguna terhadap interval nada.
3. Sebagai sarana alternatif agar pembelajaran lebih menantang dan lebih menyenangkan.
1.4 Batasan Masalah
Agar penelitian fokus, permasalahan yang ditinjau tidak terlalu luas dan sesuai dengan maksud dan tujuan yang ingin dicapai, maka perlu dibuat batasan masalah. Batasan masalah penelitian ini antara lain :
1. Game yang dibuat berbasisdesktop. 2. Grafis game berupa 2D.
3
4. Game berupaofflinegame.
5. Target pengguna adalah usia 9–12 tahun.
6. Materi teori musik yang dibahas adalah pengenalan interval nada dan jenis
–jenis interval.
7. Game terdiri dari 5 stage, dan di setiap stage dilakukan tes untuk mengetahui pemahaman teori (Quiz) dan sensitivitas pengguna terhadap interval (Relative Pitch Test).
8. Shuffling urutan pertanyaan dan jawaban menggunakan Fisher-Yates Shuffle.
9. Bahasa pemrograman yang digunakan untuk membangun game edukasi ini adalah ActionScript 3.0 dan menggunakanframeworkflixel.
10. Pemodelan perancangan sistem menggunakan Object Oriented Analysis Design(OOAD) dengantools Unified Modelling Language(UML).
11. Pertanyaan / Soal Quiz disimpan di dalam file XML.
1.5 Metodologi Penelitian
Metode penelitian yang digunakan dalam penulisan skripsi ini adalah Pre-Experimental Design dengan jenis One Group Pretest – Posttest Design dan dengan tahapan sebagai berikut :
1. Tahap pengumpulan data
Metode pengumpulan data yang dilakukan adalah : a. Studi literatur
Studi literatur dilakukan dengan cara mengumpulkan literatur, jurnal, paper, buku dan bacaan – bacaan yang ada kaitannya dengan latar belakang dan materi penelitian, khususnya tentang game, game edukasi, dan teori musik.
b. Observasi
c. Pretest - Posttest
Pretestdan Posttest dilakukan sebelum dan sesudah anak memainkan game yang dibangun untuk mengetahui seberapa besar peningkatan yang terjadi setelah anak memainkan game ini.
d. Kuisioner
Pembagian kuisioner dilakukan pada tahap pengujian kepada anak usia 6-12 tahun dan hasilnya akan menjadi kesimpulan dari penelitian ini. 2. Tahap pengembangan perangkat lunak
Teknik analisis data dalam pembuatan perangkat lunak menggunakan paradigma perangkat lunak secarawaterfall, yang meliputi beberapa proses yaitu [6] :
a. Requirements Definition
System services, kendala dan tujuan, dibentuk oleh konsultasi dengan pengguna sistem. Mereka kemudian didefinisikan secara rinci dan berfungsi sebagai spesifikasi sistem.
b. System and Software Design
System design process mempartisi requirements untuk baik perangkat keras maupun perangkat lunak sistem. Ini menetapkan arsitektur sistem secara keseluruhan. Desain perangkat lunak melibatkan mengidentifikasi dan menggambarkan abstraksi sistem perangkat lunak yang mendasar dan hubungan mereka.
c. Implementation and Unit Testing
Selama tahap ini, desain perangkat lunak direalisasikan sebagai serangkaian program atau unit program. Unit pengujian melibatkan verifikasi bahwa setiap unit memenuhi spesifikasinya.
d. Integration and System Testing
5
e. Operation and Maintenance
Biasanya ini adalah fase siklus hidup terpanjang. Sistem ini diinstal dan dimasukkan ke dalam penggunaan praktis. Pemeliharaan melibatkan mengoreksi kesalahan yang tidak ditemukan pada tahap-tahap awal dari siklus hidup, meningkatkan implementasi unit sistem dan meningkatkan layanan sistem sebagai persyaratan baru ditemukan. Untuk lebih jelasnya gambar model waterfall dapat dilihat pada gambar I.1.
Gambar I.1Waterfall[6]
1.6 Sistematika Penulisan
Sistematika penulisan penelitian ini disusun untuk memberikan gambaran umum tentang penelitian yang dijalankan. Sistematika penulisan skripsi ini adalah sebagai berikut :
BAB I PENDAHULUAN
BAB II LANDASAN TEORI
Bab ini membahas landasan teori tentang musik, game, edukasi, algoritma Fisher-Yates Shuffle, serta tools yang digunakan seperti OOP, UML, ActionScript 3.0, dan XML.
BAB III ANALISIS DAN PERANCANGAN
Bab ini membahas analisis sistem, analisis kebutuhan non-fungsional, analisis kebutuhan fungsional, dan perancangan sistem.
BAB IV IMPLEMENTASI DAN PENGUJIAN
Bab ini membahas implementasi, terdiri atas implementasi perangkat keras, implementasi perangkat lunak, implementasi aplikasi; dan pengujian, yang terdiri atas pengujian alpha, pengujian beta, serta kesimpulan hasil pengujian.
BAB V KESIMPULAN DAN SARAN
7
BAB II
LANDASAN TEORI
2.1 Musik
Dalam bagian ini akan dibahas tentang pengertian musik, interval, jenis-jenis interval, identitas interval danear training.
2.1.1 Pengertian Musik
Dalam Kamus Besar Bahasa Indonesia, musik berarti nada atau suara yg disusun demikian rupa sehingga mengandung irama, lagu, dan keharmonisan. Musik juga diartikan sebagai bahasa emosi di mana perasaan komposer dikomunikasikan kepada pendengar [7]. Sedangkan menurut buku Seni dan Budayakarya Harry Susantio, dkk., Musik adalah bunyi yang diatur menjadi pola yang dapat menyenangkan telinga atau dapat mengkomunikasikan telinga, perasaan, dan suasana hati. Musik memiliki ritme, melodi, dan harmoni yang memberikan kedalaman dan memungkinkan penggunaan beberapa instrumen atau bunyi-bunyian. Apabila instrumen atau suara dimainkan atau dinyanyikan bersama pada nada yang berbeda, instrumen dan suara itu tampil dalam harmoni [8].
2.1.2 Interval
Interval merupakan dasar dari teori musik. Sebelum mempelajari teori lain seperti scales, chords, dll., seseorang harus terlebih dahulu memahami interval. Interval adalah jarak antar dua nada musik. Baik itu jarak ke atas maupun jarak ke bawah. Ketika seseorang mendengar musik, maka ia mendengar interval.
Sistem pelabelan interval adalah bagian dari sejarah musik yang telah ada selama lebih dari 300 tahun. Satuan terkecil interval adalah 1/2 atau semitone.1 oktaf intervalnya adalah 6 atau 12semitone[9].
1. Harmonic : Interval yang didapat ketika dua nada dimainkan secara bersamaan.
2. Melodic : Interval yang didapat ketika memainkan dua nada secara terpisah, satu setelah yang lain.
Interval juga memiliki dua jenis identitas yang berlaku untuk kedua tipe di atas. Identitas interval ditentukan olehQuantity, danQuality.
Interval Quantity didasarkan pada jumlah garis dan spasi yang terkandung oleh interval pada staf musik.Interval Quantityterdiri atas :
1. Unison 2. Second 3. Third 4. Fourth 5. Fifth 6. Sixth 7. Seventh 8. Octave
Interval Quality adalah apa yang memberikan interval suara yang berbeda. Interval Quality didasarkan pada jumlah setengah step dari satu not ke not yang lain.Interval Qualityterdiri atas :
1. Major 2. Minor 3. Perfect 4. Diminished 5. Augmented
2.1.3 Ear Training
9
Kemampuan seseorang dalam membedakan nada dibagi dalam dua jenis, yaitu Perfect Pitch dan Relative Pitch. Perfect pitch merupakan kemampuan untuk menamai atau menyanyikan suatu not secara tiba-tiba, tanpa ada not lain sebagai referensi. Sedangkan Relative Pitchmerupakan kemampuan untuk menamai atau menyanyikan suatu not dengan menggunakan not yang telah dimainkan atau diingat sebelumnya sebagai referensi. Relative pitch lebih berkaitan dengan mengetahui jarak antar not [12].
2.2 Edukasi
Edukasi atau pendidikan ialah suatu usaha yang sadar yang teratur dan sitematis, yang dilakukan oleh orang –orang yang diserahi tanggung jawab untuk mempengaruhi anak agar mempunyai sifat dan tabiat yang sesuai dengan cita –
cita pendidikan. Edukasi juga bisa diartikan sebagai bantuan yang diberikan secara sengaja kepada anak dalam pertumbuhan jasmani maupun rohani.
Secara teoritis pengertian mendidik dan mengajar tidaklah sama. Mengajar berarti menyerahkan atau manyampaikan ilmu pengetahuan atau keterampilan dan lain sebagainya kepada orang lain, dengan menggunakan cara – cara tertentu sehingga ilmu–ilmu tersebut bisa menjadi milik orang lain.
Lain halnya mendidik, bahwa mendidik tidak hanya cukup dengan hanya memberikan ilmu pengetahuan ataupun keterampilan, melainkan juga harus ditanamkan pada anak didik nilai – nilai dan norma – norma susila yang tinggi dan luhur. Dari pengertian di atas diketahui bahwa mendidik lebih luas dari pada mengajar. Mengajar hanyalah alat atau sarana dalam mendidik .dan mendidik harus mempunyai tujuan dan nilai–nilai yang tinggi [13].
2.2.1 Unsur–unsur Edukasi Unsur–unsur edukasi adalah [14]:
1. Anak didik, yaitu pihak yang menjadi objek utama edukasi.
2. Pendidik, yaitu pihak yang menjadi subjek dari pelaksanaan edukasi. 3. Materi, yaitu bahan atau pengalaman belajar yang disusun menjadi
kurikulum.
5. Lingkungan, yaitu keadaan yang berpengaruh terhadap hasil edukasi. 6. Dasar dan landasan edukasi, yaitu landasan yang menjadi fundamental
dari segala kegiatan edukasi.
2.2.2 Faktor–faktor yang membatasi kemampuan edukasi
Adapun faktor-faktor yang membatasi kemampuan edukasi diantaranya [14]: 1. Faktor anak
Di dalam anak didik terdapat potensi-potensi yang butuh edukasi dari luar
2. Faktor pendidik
Guru mempunyai metode penyampaian yang berbeda dan beragam 3. Faktor lingkungan
Lingkungan sangat berpengaruh baik positif maupun negatif
2.3 Game
Dalam bagian ini akan dibahas pengertian game, klasifikasi game berdasarkan platform maupun berdasarkan genre, serta game edukasi.
2.3.1 Pengertian Game
Istilah “video game” awalnya mengacu pada jenis spesifik perangkat, yaitu sebuah sistem komputer yang menciptakan sinyal tampilan video untuk televisi, tapi kini istilah tersebut telah menjadi istilah yang mencakup segala jenis perangkat [15].
Video game dikendalikan oleh komputer melalui interaksi pengguna dan imersi audio-visual,video gamememungkinkan pemain untuk menanggapi situasi yang menantang dalam dunia fantasi. Sangat penting untuk dicatat bahwa
“fantasi” merujuk pada fakta bahwa dunia yang dimaksud adalah maya, dan tidak nyata, misalnya pemain dapat menjelajahi fantasi bermain di liga utama bisbol.
2.3.2 Klasifikasi Game
11
2.3.2.1 Berdasarkan Platform
Tiga kategori utama platform pada game adalah personal computer (PC), console, danmobile[15].
1. Personal Computer (PC)
PC game adalah game yang dibuat untuk computer baik berbasis Windows, Mac, ataupun Linux. PCmenyediakan kekuatan grafis dan pemrosesan yang kuat yang memungkinkan pengembang untuk membuat game yang mutakhir. Tetapi kelemahan game PC adalah mahal karena pengguna harus menggunakan hardware yang up-to-date untuk memainkan game PC dengan baik. Selain itu, kelemahan gamePC bagi pengembang adalah banyaknya varian dari konfigurasi PC membuat sulit bagi pengembang untuk memastikan game tersebut berjalan dengan benar pada semuasetup PC.
2. Console
Console adalah hardware yang dibuat oleh pihak ketiga seperti Sony, Microsoft, dan Nintendo. Console terhubung ke televisi dan tujuan utamanya adalah untuk bermain game. Game Console sangat menarik bagi game pengembang karena mereka hanya perlu memikirkan satu konfigurasi hardware ketika membuatsoftware untuk konsol. Sangat kontras denganPCyang memiliki opsi konfigurasi yang tak terbatas.
3. Mobile
Mobile platform terdiri atas sesuatu yang portable dan bisa digenggam, termasuk ponsel, PDA, iPods, danhandheld gameseperti Nintendo DSi atau Sony PSP.Game mobile memiliki kontrol yang sederhana (terutama jika dibandingkan denganPC).
2.3.2.2 Berdasarkan Genre
Menurut buku “Fundamentals of Game Design” [16], genre game bisa dibagi menjadi 9, yaitu:
1. Action
action gameadalahshooters game, baik yang 2D maupun 3D sepertiFirst Person Shooters(FPS).
2. Strategy
Strategy game menantang pemain untuk mencapai kemenangan dengan perencanaan, khususnya melalui perencanaan serangkaian tindakan yang dilakukan melawan satu lawan atau lebih. Kemenangan diraih dengan perencanaan matang dan pengambilan keputusan yang optimal.
3. Role Playing Game (RPG)
RPG adalah game dimana pemain mengontrol satu atau lebih karakter yang biasanya di desain oleh pemain itu sendiri, dan memandu mereka melewati berbagai rintangan yang diatur oleh komputer. Perkembangan karakter dalam hal kekuatan dan kemampuannya adalah kunci dari game jenis ini.
4. Sports
Sports game mensimulasikan berbagai aspek dari olahraga atletik nyata maupun imajiner, apakah itu memainkan pertandingan, me-manage tim dan karir, atau keduanya. Salah satu contoh game jenis ini adalah Pro Evolution Soccer 2012(PES 2012), dimana pemain bisa memainkan pertandingan, menjadi manajer tim, maupun menjadi pemain dan mengembangkan karirnya sendiri.
5. Vechicle Simulation
Vechicle simulationmembuat feeling mengendarai kendaraan, baik kendaraan nyata maupun kendaraan imajiner. Performa dan karakteristik kasar mesin harus menyerupai kenyataan, kecuali jika yang didesain adalah kendaraan imajiner.
6. Construction and Management Simulation
13
7. Adventure
Adventure game adalah cerita interaktif tentang karakter protagonis yang dimainkan oleh pemain. Penyampaian cerita dan eksplorasi adalah elemen inti dari game ini. Penyelesaian teka-teki dan tantangan konseptual adalah bagian besar dari permainan.
8. Artificial Life and Puzzle Game
Artificial Life game adalah game yang membuat tiruan dari kehidupan sebenarnya. Biasanya ada dua jenis game ini, tiruan kehidupan manusia, contohnya The SIMS, dan tiruan kehidupan binatang, contohnya Tamagochi.
9. Online Game
Istilah online game disini mengacu kepada multiplayer game dimana mesin dari para pemain terhubung dengan jaringan.
2.3.3 Game Edukasi
Game edukasi adalah game digital yang dirancang untuk pengayaan pendidikan (mendukung pengajaran dan pembelajaran), menggunakan teknologi multimedia interaktif [17].
Kriteria perancangan game edukasi yang ideal dibagi menjadi enam point, yaitu :
1. Rasa ingin tahu, fantasi dan kontrol
a. Motivasi intrinsik, menyenangkan untuk digunakan. Pengguna memiliki kontrol terhadap permainan.
b. Integrasi antara materi edukasi dan aspek fantasi serta permainan c. Pengguna memegang kendali permainan dan dapat mengatur
kecepatan bermain.
d. Mendorong keingintahuan, pengguna dapat melakukan eksplorasi bebas. Permainan mengandung rahasia tersembunyi.
e. Pengguna dapat menyimpan kemajuan permainan.
g. Pengguna dapat melakukan trial-error untuk menyelesaikan permainan.
h. Keberhasilan ditentukan oleh pengetahuan, bukan kebetulan. i. Task disajikan secaraincrementaldan bertahap.
j. Simulasi realistik dunia.
k. Materi edukasi disesuaikan dengan materi dunia nyata.
l. Personalisasi, yaitu pengguna dapat mengubah karakter dan objek-objek.
m. Menyediakan banyak pilihan dan tema. n. Hindari pengulangan, hindaridrill-practice. o. Sediakan elemen tidak terduga dan kejutan. p. Poin tidak hilang saat menjawab pertanyaan. 2. Tantangan
a. Kinerja pemain terukur dan didefinisikan dengan baik.
b. Tantangan diberikan secara terus menerus
tapi disesuaikan dengan tingkat pemahaman pemain.
c. Kompleksitas semakin berkembang sejalan dengan kemampuan pengguna. Tersedia banyak level.
d. Memonitor kinerja pengguna, berdasarkan hasil monitoring ini kesulitan kemudian disesuaikan.
e. Pengguna dapat melihatprogressnya setiap saat.
f. Menyediakanhintdan instruksi untuk membantu pengguna.
g. Bantuk pengguna menemukan ‘flow state’ yaitu keseimbangan antara tantangan dengan kemampuan untuk menghadapi tantangan. 3. Sosialisasi
a. Pemain dapat berkolaborasi bersama. b. Pemain dapat saling berkompetisi.
15
4. Pedegogi
a. Menyebutkan secara eksplisit target umur dan menyesuaikan rancangan permainan sesuai umur tersebut.
b. Aktivitas pembelajaran dilaksanaan bersamaan dengan permainan. c. Objektif pembelajaran jelas.
d. Memberi kesempatan kepada guru dan orangtua untuk ikut berperan.
e. Memberikan petunjuk yang jelas sehingga pemain dapat berkonsentrasi kepada isi permainan, bukan bagaimana cara menggunakan permainan.
f. Menyediakan tutorial sehingga pemain tidak perlu membaca manual.
5. Teknologi
a. Menggunakan teknologi yang tersedia di sekolah dan masyarakat umum (tidak membutuhkanhardwareyang terlalu tinggi)
b. Memberikan lisensi yang terjangkau sekolah. c. Menggunakan antarmuka yang intuitif. 6. Pengguna anak-anak dan yang berkebutuhan khusus
a. Memberikan petunjuk yang dibacakan selain petunjuk tertulis. b. Gambar, objek, layar tertata rapi.
c. Permainannya sendiri merupakan aktivitas yang penting (play for the sake of play)
d. Transformasi terlihat. Saat anak melakukan interaksi, ada instant feedback.
e. Inputdanoutputyang mudah terlihat. f. Tantangan diberikan secaragradual.
g. Permainan menyenangkan untuk diulang, beberapa karakter, musik mudah teringat oleh anak.
h. Objek dan suara diambil dari kehidupan sehari-hari yang mudah dikenali.
2.4 Fisher-Yates Shuffle
Fisher-Yates Shuffle (dinamai berdasarkan penemunya, Ronald Fisher dan Frank Yates) digunakan untuk mengubah urutan masukan yang diberikan secara acak. Permutasi yang dihasilkan oleh algoritma ini muncul dengan probabilitas yang sama [18].
[image:30.595.164.416.301.587.2]Algoritma ini dinyatakan bias karena permutasi yang dihasilkan oleh algoritma ini muncul dengan probabilitas yang sama, hal ini dibuktikan dengan percobaan mengacak suatu set kartu yang dilakukan berulang–ulang seperti yang bisa dilihat pada gambar II.1.
Gambar II.1 Hasil perbandingan algoritma shuffle [19]
17
menghasilkan nilai yang hampir sama untuk setiap kemungkinan kombinasi kartu, sedangkan pada algoritma Naïve kombinasi kartu tertentu muncul jauh lebih sering dan sebagian lagi muncul lebih sedikit dibanding kombinasi kartu lain.
Metode Fisher-Yates secara umum adalah :
1. Ketika masih ada elemen tersisa untuk diacak 2. Ambil elemen secara acak dari elemen yang tersisa 3. Kemudian tukar dengan elemen saat ini.
Gambar II.2 menunjukkan algoritma fisher – yates shuffle yang ditulis dalam bahasa javascript.
Gambar II.2 Algoritma Fisher-Yates Shuffle [20]
2.5 Tools
Pada sub bab ini akan dijelaskan tools yang digunakan dalam pembangunan game edukasiadventureteori musik ini.
2.5.1 Object Oriented Paradigm
Pendekatan berorientasi objek diciptakan (atau lebih tepatnya, berkembang) karena kesulitan orang – orang yang telah berusaha untuk mendapatkan sistem berkualitas baik, dihasilkan tepat waktu, dan sesuai anggaran, terutama untuk sistem yang besar dengan banyak orang yang terlibat.
Beberapa justifikasi yang biasanya diberikan kepada orientasi objek : 1. Objek lebih mudah dipahami masyarakat
2. Spesialis dapat berkomunikasi lebih baik.
3. Data dan proses tidak dipisahkan secara artifisial. 4. Kode dapat digunakan kembali lebih mudah. 5. Orientasi Obyek matang dan terbukti dengan baik.
2.5.2 Unified Modelling Language (UML)
Pada pertengahan 1990-an, metodologi yang paling terkenal adalah yang ditemukan oleh Ivar Jacobson, James dan Grady Booch. Masing-masing memiliki perusahaan konsultan sendiri, menggunakan metodologi sendiri dan notasi sendiri. Pada tahun 1996, Jacobson dan Rumbaugh bergabung Rasional Corporation (didirikan oleh Booch), dan mereka mengembangkan satu set notasi yang dikenal sebagai Unified Modeling Language (UML) [21].
UML memiliki 13 jenis diagram. Spesifikasi UML tidak mengatakan di mana diagram harus digunakan dalam metodologi tertentu.
1. Use Case Diagram mengkategorikan cara di mana sistem yang digunakan.
2. Class Diagram menunjukkan kelas dan bagaimana mereka dapat dipasang bersama-sama (mereka juga dapat menunjukkanobject). 3. Object Diagram memperlihatkan obyek saja dan bagaimana mereka
dapat dipasang bersama-sama.
4. Activity Diagram menunjukkan aktivitas oleh manusia atau objek dalam cara yang mirip denganFlow Chart.
19
6. Communication Diagram menunjukkan pesan yang dikirim antara objek dalam skenario tertentu.
7. Sequence Diagram menunjukkan informasi yang sama dengan communication diagram, tetapi menekankan urutan daripada koneksi. 8. Package Diagram menunjukkan bagaimana kelas terkait
dikelompokkan bersama-sama, untuk kepentingan pengembang.
9. Deployment Diagram menunjukkan mesin, proses dan artefak dikerahkan untuk jadi seorang sistem.
10.Component Diagram menunjukkan komponen dapat digunakan kembali (benda atau subsistem) daninterfacemereka.
11.Interaction Overview Diagram menunjukkan langkah-langkah individu dari suatu kegiatan menggunakansequence diagram.
12.Timing Diagram menunjukkan kendala waktu yang tepat untuk pesan dan menyatakan objek.
13.Composite Structure Diagram menunjukkan bagaimana benda cocok bersama dalam suatu agregasi atau komposisi, menampilkan antarmuka dan berkolaborasi benda.
2.5.3 ActionScript 3.0
ActionScript 3.0 adalah adalah bahasa berorientasi objek untuk membuat aplikasi dan konten multimedia ber-scriptuntuk pemutaran diruntimeFlashclient (seperti Flash Player dan Adobe AIR). Dengan sintaks yang mirip dengan Java dan C#, bahasa ActionScript seharusnya akrab bagi programmer berpengalaman [22].
Beberapa fitur kunci dari bahasa ActionScript 3.0 adalah :
1. First-class support untuk constructs berorientasi objek umum, seperti kelas, objek, dan interface
2. Single-threaded execution model 3. Runtime type-checking
5. Fitur dinamis seperti runtime pembuatan fungsi konstruktor baru dan variable
6. Runtime exceptions
7. Direct supportuntuk CML sebagai tipe databuilt-in 8. Packageuntuk pengorganisasiancode libraries 9. Namespaces untuk kualifikasi identifier
10. Regular expressions
2.5.4 Flixel
Flixel merupakanlibrary game-making open source yang benar–benar gratis untuk penggunaan pribadi atau komersial. Flixel ditulis seluruhnya dalam ActionScript 3 oleh Adam Saltsman "Atom", dan dirancang untuk bisa digunakan dengan development tools gratis. Flixel mudah dipelajari, diperluas dan disesuaikan. Flixel telah digunakan dalam ratusan game, termasuk nominasi IGF, game “Adult Swim”, dan “avant-garde experiment”. Banyak pengguna Flixel membuat game pertamanya di Flixel [23]. Logo flixel dapat dilihat pada gambar II.3.
Gambar II.3 Logo Flixel
Fitur dasar flixel antara lain :
1. Menampilkan ribuan benda bergerak 2. Basic collision antar objek
3. Pengelompokan objek bersama untuk menyederhanakan. 4. Mudah menghasilkan dan memancarkan partikel
21
7. Input mouse & keyboard 8. Utilitas matematika & warna Sedangkan fituradvance-nya antara lain :
1. Merekam dan memutar kembali replay 2. Powerful interactive debugger
3. Sistem kamera untuk layarsplit 4. Pathfindingdan mengikuti
5. Mudah untuk mendaur-ulang objek.
2.5.5 Extensible Markup Language (XML)
XML merupakan singkatan dariExtensible Markup Language. Pengembangan dan penggunaannya telah mengikuti jalur umum dalam perangkat lunak dan dunia IT. Ini dimulai lebih dari sepuluh tahun yang lalu dan pada awalnya sangat sedikit yang menggunakannya, tetapi kemudian menarik perhatian publik dan mulai merasuki dunia pertukaran data. Setelah itu, utilitas yang tersedia untuk memproses dan mengelola XML menjadi lebih canggih, sedemikian rupa sehingga banyak orang mulai menggunakannya tanpa benar-benar menyadari keberadaannya. Akhir-akhir ini telah terjadi sedikit reaksi di tempat tertentu atas kegagalan yang dirasakan dan titik lemah, yang telah menyebabkan alternatif yang diusulkan berbagai perbaikan.
Namun demikian, XML sekarang memiliki tempat permanen di sistem TI dan sulit untuk membayangkan aplikasi non-sepele yang tidak menggunakan XML baik untuk konfigurasi atau data sampai tingkat tertentu. Untuk alasan ini sangat penting bahwa pengembang perangkat lunak modern memiliki pemahaman menyeluruh tentang prinsip-prinsipnya, apa yang ia mampu, dan bagaimana menggunakannya untuk keuntungan mereka.
23
BAB III
ANALISIS DAN PERANCANGAN
3.1 Analisis Sistem
Analisis sistem dapat didefinisikan sebagai penguraian dari suatu sistem yang utuh kedalam bagian-bagian komponennya dengan maksud untuk mengidentifikasi dan mengevaluasi kebutuhan-kebutuhan yang diharapkan sehingga dapat diusulkan perbaikan - perbaikannya.
3.1.1 Analisis Game Sejenis yang Sudah Ada
Sebelum merancang game yang akan dibuat, terlebih dahulu dilakukan analisis pada game sejenis yang sudah ada. Ini bertujuan agar game yang sudah dibuat nanti memiliki solusi dari permasalahan game yang sudah ada.
Game edukasi teori musik khususnya interval sudah ada beberapa, diantaranya Intervals Music Quiz by Ms. Garrett [3], 8notes Interval Ear Trainer [4] dan
Woody’s Music Theory Adventure [5]. Setelah melakukan observasi terhadap tiga game tersebut, didapat kesimpulan seperti yang bisa dilihat pada tabel III.1
Tabel III.1 Analisis Game yang Sudah Ada
Nama Game Jenis Game Kelebihan Kekurangan
Intervals Music Quiz
by Ms. Garrett Quiz Quiz
Gameplay hanya quiz saja, tidak ada cerita
8notes Interval Ear
Trainer Ear Training Ear Training
Gameplay hanya ear training saja, tidak ada cerita
Woody’s Music Theory
Adventure Adventure + Quiz
Penggabungan antara quiz dengan adventure game
Tidak ada ear
3.1.2 Analisis game yang akan dibangun
Game yang akan dibangun berupa game adventure yang dipadukan dengan quiz dan ear training. Game ini dibangun sebagai media pembelajaran alternatif yang lebih interaktif dan menyenangkan untuk mempelajari teori musik. Materi teori musik yang akan ditampilkan dalam game ini adalah tentang interval. Dengan adanya jalan cerita, gameplay adventure, serta memadukan quiz dan ear training sebagai unsur edukasi musiknya, diharapkan dapat menjadi alternatif solusi dari permasalahan yang ada di game sejenis yang sudah ada.
Fitur–fitur yang akan dibuat pada game ini adalah: 1. Pemberian materi
2. Game petualangan 3. Quiz
4. Ear training
3.1.2.1 Storyline
Putri diculik oleh monster. Untuk menyelamatkannya, Pangeran harus mendapat ilmu tentang interval dari 5 guru sebelum melawan monster.
1. Level 1
Pemain akan mendapatkan teori dasar interval dari guru 1. Kemudian pemain melakukan perjalanan untuk menemukan guru 2. Sebelum bisa belajar kepada guru 2, pemain akan diuji terlebih dahulu tentang teori yang diajarkan guru 1.
2. Level 2
Pemain akan mendapatkan ilmu tentang identitas interval bagian ke-1 dari guru 2. Kemudian pemain melakukan perjalanan untuk menemukan guru 3. Sebelum bisa belajar kepada guru 3, pemain akan diuji terlebih dahulu tentang teori yang diajarkan guru 2.
3. Level 3
25
4. Level 4
Pemain akan mendapatkan ilmu tentang identitas interval bagian ke-3 dari guru 4. Kemudian pemain melakukan perjalanan untuk menemukan guru 5. Sebelum bisa belajar kepada guru 5, pemain akan diuji terlebih dahulu tentang teori yang diajarkan guru 4.
5. Level 5
Pemain akan mendapatkan ilmu tentang identitas interval bagian ke-4 dari guru 5. Kemudian pemain melakukan perjalanan untuk melawan monster dan menyelamatkan putri.
3.1.2.2 Storyboard
Storyboard adalah sketsa gambar yang disusun berurutan sesuai dengan naskah, denganstoryboardide cerita dapat disampaikan kepada orang lain dengan lebih mudah, karena dapat menggiring khayalan seseorang mengikuti gambar-gambar yang tersaji sehingga menghasilkan persepsi yang sama.
Pada bagian ini akan dijelaskan storyboard adventure game dan pemberian materi,storyboardquiz, sertastoryboard ear training.
1. Storyboard adventure game dan pemberian materi
Gambar III.1Storyboard adventure gamedan pemberian materi
2. Storyboard quiz
Berikut ini adalah storyboard dari gameplay quiz yang dapat dilihat pada gambar III.2:
27
3. Storyboard ear training
Berikut ini adalah storyboard dari gameplay ear training yang dapat dilihat pada gambar III.3:
Gambar III.3Storyboard ear training
3.1.2.3 Pelevelan
Dalam game ini terdapat 5 level, yang pada setiap levelnya mempunyai gameplayyang sama. Yang membedakan pada setiap levelnya yaitu :
1. Materi
Materi yang diberikan akan berbeda – beda sesuai level yang dimainkan. Materi yang diberikan diambil dari buku Music Theory For Dummies[10].Materi
–materi yang akan diberikan pada tiap level adalah: a. Level 1
b. Level 2
Tambahan materi yang diberikan di level ini adalah Major 2nd, Minor 2nd, dan Perfect 5th.
c. Level 3
Tambahan materi yang diberikan di level ini adalah Major 3rd, dan Minor 3rd.
d. Level 4
Tambahan materi yang diberikan di level ini adalah Perfect 4th, Major 6th, dan Minor 6th.
e. Level 5
Tambahan materi yang diberikan di level ini adalah Augmented 4th / Diminished 5th, Major 7th, dan Minor 7th.
2. Musuh
Semakin tinggi level, maka jenis musuh akan bertambah sehingga permainan menjadi lebih sulit. Jenis–jenis musuh yang terdapat dalam game ini adalah:
a. Monster Jelly b. Monster Fly
Kemunculan monster–monster tersebut pada tiap level bisa dilihat pada tabel III.2 berikut :
Tabel III.2 Jumlah Musuh Tiap Level
Level Monster
Jelly Monster Fly
1 3 0
2 5 0
3 4 2
4 3 3
5 3 4
29
Tabel III.3Level Balancing
Level Monster
Jelly Monster Fly
Skor
1 3 x 1 = 3 0 x 2 = 0 3
2 5 x 1 = 5 0 x 2 = 0 5
3 4 x 1 = 4 2 x 2 = 4 8
4 3 x 1 = 3 3 x 2 = 6 9
5 3 x 1 = 3 4 x 2 = 8 11
Dari tabel tersebut bisa dilihat bahwa skor masing – masing level meningkat dari level sebelumnya. Ini berarti bahwa terjadi peningkatan kesulitan pada tiap level.
3. Materi yang dijadikan soal quiz danear training
Materi yang dijadikan soal quiz dan ear training bertambah sesuai materi yang diberikan pada adventure game. Selain itu, materi yang dijadikan soal pada level sebelumnya akan tetap muncul di level tersebut sehinggarangemateri yang ditanyakan akan menjadi lebih banyak.
4. Kesempatan replay pada ear training
Pada gameplay ear training disediakan tombol replay untuk memainkan kembali interval soal, tetapi kesempatan untuk replaytersebut terbatas dan semakin tinggi level, maka semakin sedikit kesempatan replay yang diberikan. Pada level 1, kesempatan replay yang diberikan adalah 10 kali. Pada level 2, kesempatan replay yang diberikan adalah 8 kali. Pada level 3, kesempatan replay yang diberikan adalah 6 kali. Pada level 4, kesempatan replay yang diberikan adalah 4 kali. Sedangkan pada level 5, kesempatanreplayyang diberikan adalah 2 kali.
3.1.2.4 Gameplay
Secara umum terdapat 4 bagian dalam tiap level pada game ini, yaitu : 1. Pemberian Materi
2. Platform / Adventure Game
Pada bagian ini pemain harus mencarimateriBox. Pemberian materi dilakukan jika pemain mendapatkan materiBox tersebut. Jika semua materiBox di level tersebut telah berhasil didapatkan, maka pintu keluar level akan terbuka. Karakter dalam permainan digerakkan oleh pemain dengan keyboard untuk bergerak ke kiri, kanan, dan meloncat.
3. Quiz
Pada bagian ini pemain harus menjawab pertanyaan berupa teori tertulis yang teorinya telah dijelaskan sebelumnya pada bagian pemberian materi. Bentuk pertanyaan diibaratkan dengan mengisi password, jika salah satu jawaban salah atau urutannya tidak sesuai, maka semua jawaban dianggap salah.Gameplayquiz ini adalah dengan mencocokkan pertanyaan dengan pilihan jawaban yang disediakan.
4. Ear Training
Pada bagian ini, pemain akan dihadapkan rintangan yaitu dinding yang memiliki banyak pintu. Di pintu tersebut terdapat label berupa nama – nama interval. Game akan membunyikan dua buah nada yang intervalnya akan menjadi cluepintu mana yang harus dipilih pemain. Pertanyaan yang diberikan sebanyak 5 pertanyaan, dan pemain bisa memainkan kembali interval tersebut dengan menekan tombol replay. Jumlah kesalahan yang dibolehkan adalah 1 dari 5 pertanyaan dan akan dilihat dari skornya.
3.1.2.5 Scoring
31
3.1.3 Analisis Algoritma
Misalkan dalam ear training ada 10 soal yang akan diacak, maka array-nya adalah urutanSoal = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]. Array tersebut dimasukkan kedalam prosedur shuffle dimana proses pengacakan terjadi. Dari array tersebut didapat panjang array yang kemudian dimasukkan ke dalam variabel m (m = 10).
Langkah – langkah pengacakan soal dengan Fisher-Yates Shuffle adalah sebagai berikut :
1. Ambil satu elemen secara acak dari elemen yang tersisa.
Pengambilan elemen acak adalah berdasarkan elemen yang tersisa. Misalkan jika m = 9, maka elemen acak yang boleh diambil adalah 9
(array[0…8]).
2. Tukar dengan elemen saat ini.
Penukaran dilakukan dengan memasukkan elemen saat ini (array[m]) ke dalam suatu variabel baru bernama t. Kemudian elemen saat ini (array[m]) diisi nilai dari elemen acak tadi (array[i]). Dan elemen acak (array[i]) diisi nilai dari variabelt.
3. Ulangi selama masih ada elemen yang tersisa
Selanjutnya dilakukan pengulangan sebanyak 10 kali untuk mengacak urutan soal tersebut. Iterasinya bisa dilihat pada tabel III.4.
Tabel III.4 Tabel iterasi Fisher-Yates Shuffle
m i array[i] t /
array[m] Array yang sudah fix Isi array setelah di swap
10 6 6 9 6 0, 1, 2, 3, 4, 5, 9, 7, 8, 6
9 0 0 8 0, 6 8, 1, 2, 3, 4, 5, 9, 7, 0, 6
8 1 1 7 1, 0, 6 8, 7, 2, 3, 4, 5, 9, 1, 0, 6
7 2 2 9 2, 1, 0, 6 8, 7, 9, 3, 4, 5, 2, 1, 0, 6
6 2 9 5 9, 2, 1, 0, 6 8, 7, 5, 3, 4, 9, 2, 1, 0, 6
5 1 7 4 7, 9, 2, 1, 0, 6 8, 4, 5, 3, 7, 9, 2, 1, 0, 6
4 1 4 3 4, 7, 9, 2, 1, 0, 6 8, 3, 5, 4, 7, 9, 2, 1, 0, 6
3 1 3 5 3, 4, 7, 9, 2, 1, 0, 6 8, 5, 3, 4, 7, 9, 2, 1, 0, 6
2 1 5 5 5, 3, 4, 7, 9, 2, 1, 0, 6 8, 5, 3, 4, 7, 9, 2, 1, 0, 6
Kolom m menunjukkan index elemen saat ini. Kolom i menunjukkan index dari elemen yang akan ditukar, nilaiitersebut diambil secara acak dari range yang diperbolehkan (m). Kolom array[i] menunjukkan nilai yang terdapat pada array ke-i. Kolom t menunjukkan nilai yang terdapat pada array ke-m (elemen saat ini). Array yang sudahfix menunjukkan array yang sudah tidak boleh ditukar kembali nilainya, jumlahnya bertambah seiring bertambahnya iterasi. Kemudian kolom array yang sudah diswapmenunjukkan isi array setelah elemennya ditukar /swap pada setiap iterasi.
Tabel III.5 berikut adalah tahapan dan langkah algoritma Fisher-Yates Shuffle dan dimasukkan ke dalampseudocode.
Tabel III.5 Tahapan dan langkah algoritma Fisher-Yates Shuffle
No Algoritma Pseudocode
1 Ketika masih ada elemen
tersisa untuk diacak
while (m){
2 Ambil elemen secara acak dari elemen yang tersisa
i = Math.floor(Math.random() * m--);
3 Kemudian tukar dengan
elemen saat ini
t = array[m]; array[m] = array[i]; array[i] = t;
} 3.1.4 Analisis Ear Training
Pada bagian ini akan dibahas bagaimana analisis ear training dalam aspek psikologis, teknis, dan pembagian interval ke dalam tiap level ditinjau dari sisiear training.
3.1.4.1 Psikologis
Pada bagian ini akan dibahas apakah ear training dapat dilakukan kepada rentang usia target pengguna yaitu 9 –12 tahun. Setelah dilakukan studi literatur tentang perkembangan kemampuan musikal pada anak [25], didapat data sebagai berikut :
33
semakin stabil. Pada usia ini informasi melodi disimpan dan diproses sesuai dengan referensi tonal bukan oleh skema kontur”[25].
2. Davidson, McKernon, dan Gardner (1981) menemukan bahwa anak berusia 5 tahun belajar bernyanyi baik dalam kunci yang sama atau mengubah kunci secara tiba-tiba dan kemudian tetap didalamnya [25]. 3. Imberty (1969) menyimpulkan dari penelitiannya tentang cadencesbahwa
sampai usia 5 tahun, anak mempersepsikan bahwa lagu selesai ketika musik berhenti. Pada usia 8 tahun anak telah merasakan efek dari perfect cadence(V ke I), dan pada usia 10 tahun anak sudah mengerti perfectdan imperfect cadences[25].
Dari data tersebut bisa dilihat bahwa pada usia 5 tahun, kemampuan musikal anak sudah terlihat tetapi masih belum pada tahap yang stabil. Baru pada usia 8 tahun kemampuan musikal anak sudah mencapai tahap yang stabil dan mulai matang. Oleh karena itu dapat disimpulkan bahwa ear training bisa dilakukan pada rentang usia target pengguna yaitu 9–12 tahun.
3.1.4.2 Teknis
Ear training dilakukan dengan membunyikan dua buah nada yang kemudian harus dijawab intervalnya. Nada pertama (root) yang dibunyikan adalah nada acak, tetapi nada kedua diambil sesuai interval yang ingin dimainkan. Satuan jarak interval dari nadarootke nada kedua bisa dilihat pada tabel III.6.
Tabel III.6 Satuan Jarak Interval
Nama Interval Interval Interval (dalam
satuan semitone) Keterangan
Unison 0 0 root+ 0
Minor 2nd ½ 1 root+ 1
Major 2nd 1 2 root+ 2
Minor 3rd 1 ½ 3 root+ 3
Major 3rd 2 4 root+ 4
Perfect 4th 2 ½ 5 root+ 5
Augmented 4th / Dim 5th 3 6 root+ 6
Perfect 5th 3 ½ 7 root+ 7
Minor 6th 4 8 root+ 8
Major 6th 4 ½ 9 root+ 9
Nama Interval Interval Interval (dalam
satuan semitone) Keterangan
Major 7th 5 ½ 11 root+ 11
Perfect 8th/ Octave 6 12 root+ 12
Range nada yang disediakan adalah 2 oktaf, diurutkan dari C1 (dengan kode 1) sampai B2 (dengan kode 24) seperti yang bisa dilihat pada tabel III.7.
Tabel III.7 Pengkodean Nada
Nada Kode C1 1 C#1 2 D1 3 D#1 4 E1 5 F1 6 F#1 7 G1 8 G#1 9 A1 10 A#1 11 B1 12 C2 13 C#2 14 D2 15 D#2 16 E2 17 F2 18 F#2 19 G2 20 G#2 21 A2 22 A#2 23 B2 24
Jadi jika pertanyaan adalah Augmented 4th dengan root hasil random adalah C1, maka nada dua-nya adalah 1 + 6 = 7 atau F#1.
3.1.4.3 Pembagian Level Interval
35
suara dari tiap interval. Sebelumnya, interval – interval tersebut dibagi menjadi dua kelompok berdasarkan interval quality-nya. Kelompok pertama adalah kelompok Major – Minor. Yang kedua adalah special case interval yang terdiri atas Unison, Perfect, Augmented dan Diminished. Kelompok Major – Minor disusun berdasarkan interval quantity-nya, dari 2nd, 3rd, sampai 7th. Sedangkan special case interval disusun berdasarkan kemiripan suaranya dari Unison, Octave, Perfect 5th, Perfect 4th, sampai Augmented 4th. Penyusunan tersebut didasari oleh perbandingan frekuensi dari masing – masing interval, dimana Unison memiliki perbandingan 1:1, Octave 2:1, Perfect 5th 3:2, Perfect 4th 4:3, dan Augmented 4th 45:32. Setelah itu kelompok tersebut dikombinasikan dalam satu level, dan hasil pembagiannya bisa dilihat pada tabel III.8.
Tabel III.8 Pembagian Level Interval
Level Interval
1 Unison, Octave
2 Perfect 5th, Major 2nd, Minor 2nd
3 Major 3rd, Minor 3rd
4 Perfect 4th, Major 6th, Minor 6th
5 Augmented 4th/ Dim 5th, Major 7th, Minor 7th
3.1.5 Spesifikasi Kebutuhan Perangkat Lunak (SKPL)
Spesifikasi kebutuhan perangkat lunak berisi deskripsi dari kebutuhan perangkat lunak yang akan dibangun. SKPL dari game edukasi adventure teori musik bisa dilihat pada tabel III.9.
Tabel III.9 Spesifikasi Kebutuhan Perangkat Lunak (SKPL)
Kode Kebutuhan Kebutuhan
SKPL-F-1 Sistem dapat menampilkan materi
SKPL-F-2 Sistem dapat menampilkanadventure game
SKPL-F-3 Sistem dapat menampilkan quiz
SKPL-F-4 Sistem dapat menampilkanear training
3.1.6 Analisis Kebutuhan Non-Fungsional
Analisis non-fungsional merupakan analisis yang dibutuhkan untuk menentukan spesifikasi kebutuhan sistem. Spesifikasi ini juga meliputi elemen atau komponen-komponen apa saja yang dibutuhkan untuk sistem yang akan dibangun sampai dengan sistem tersebut diimplementasikan. Analisis kebutuhan ini juga menentukan spesifikasi masukan yang diperlukan sistem keluaran yang akan dihasilkan sistem dan proses yang dibutuhkan untuk mengolah masukan sehingga menghasilkan suatu keluaran yang diinginkan.
Pada analisis kebutuhan sistem non-fungsional ini dijelaskan analisis kebutuhan perangkat lunak, analisis kebutuhan perangkat keras, dan analisis pengguna.
3.1.6.1 Analisis Kebutuhan Perangkat Keras
Agar aplikasi dapat berjalan dengan baik, maka dibutuhkan perangkat keras yang sesuai dengan kebutuhan aplikasi. Di bagian ini akan dijelaskan analisis kebutuhan perangkat keras dari sisi pengembang dan dari sisi pemain.
1. Dari sisi pengembang
Perangkat keras yang digunakan untuk membangun game ini adalah sebagai berikut:
1. Prosesor 2 GHz 2. Memori 1 GB
3. Spacekosong diharddisk5 GB 4. VGA card 256 MB
5. Monitor 1280 x 900 6. Mouse dan keyboard 7. Speaker
2. Dari sisi pemain
Spesifikasi minimum perangkat keras yang dibutuhkan agar dapat menjalankan game edukasi teori musik ini adalah sebagai berikut:
37
3. Spacekosong diharddisk15 MB 4. VGA card
5. Monitor
6. Mouse dan keyboard 7. Speaker
3.1.6.2 Analisis Kebutuhan Perangkat Lunak
Perangkat keras komputer tidak berarti tanpa perangkat lunak, begitu juga sebaliknya. Jadi perangkat lunak dan perangkat keras saling mendukung satu sama lain. Perangkat keras hanya berfungsi jika diberikan instruksi - intruksi kepadanya. Instruksi - instruksi inilah yang disebut dengan perangkat lunak. 1. Dari sisi pengembang
Perangkat lunak yang digunakan untuk mengembangkan game ini adalah sebagai berikut:
1. Sistem operasi Windows XP SP3, Vista SP1, Windows 7, Mac OSX 10.5.7, Mac OSX 10.6.3
2. FlashBuilder 4.5 sebagai Integrated Development Environment (IDE)-nya
3. Flex SDK 4.6 4. Flash Debugger 11
5. Aplikasi pengolahan grafis menggunakan Adobe Illustrator CS5 dan Adobe Fireworks CS5
6. Aplikasi pengolahan suara menggunakan Apple Garage Band 7. Aplikasi pembuatanmap adventure gamemenggunakan DAME 2. Dari sisi pemain
Untuk menjalankan game edukasi teori musik ini dibutuhkan perangkat lunak, antara lain:
3.1.6.3 Analisis Pengguna
Analisis pengguna merupakan analisis terhadap pengguna yang akan menggunakan aplikasi yang telah dibangun. Perangkat keras dan perangkat lunak yang ada tidak akan berguna apabila tidak ada pengguna yang mengoperasikannya. Oleh karena itu dibuatlah analisis pengguna yang berdasarkan pada user profilenya, yakni berdasarkan user knowledge & experience, user job, task & needs, user physicological characteristic, dan user physical characteristicseperti yang bisa dilihat pada tabel III.10.
Tabel III.10 Analisis Pengguna
KNOWLEDGE AND EXPERIENCE
Computer Literacy Rendah, minimal bisa menggunakan komputer
Pengalaman Sistem Sedang, minimal biasa menggunakan sistem
operasi Windows
Pengalaman Aplikasi Sedang, minimal pernah memainkan game
adventuresejenis seperti Super Mario Bros
Penggunaan Sistem Lain Jarang
Edukasi Sekolah Dasar
Kemampuan Membaca Bisa membaca dengan lancar. Setara dengan
kemampuan membaca anak kelas 3 SD.
Kemampuan Mengetik “Hunt and Peck”(10 WPM).
Bahasa / Kultur Bahasa Indonesia
JOB / TASK / NEED
Frekuensi Penggunaan Occasional
Tingkat KepentinganTask Lemah
Interaksi Sosial Tidak diperlukan
PSYCHOLOGICAL CHARACTERISTICS
Attitude Positif
Motivasi Tinggi
39
PHYSICAL CHARACTERISTICS
Umur 9–12 tahun
Jenis Kelamin Laki–laki dan Perempuan
Handedness Kanan, Kidal, dan Keduanya
Disabilities Tidak ada masalah pendengaran.
3.1.7 Analisis Kebutuhan Fungsional
Analisis kebutuhan fungsional menggambarkan proses kegiatan yang akan diterapkan dalam sebuah sistem dan menjelaskan kebutuhan yang diperlukan sistem agar sistem dapat berjalan dengan baik sesuai kebutuhan. Pada bagian ini akan dibahas tentang use case diagram, activity diagram, class diagram, dan sequence diagram.
3.1.7.1 Use Case Diagram
Gambar III.4 Use Case Diagram
1. Actor Definition
Actor Definition berfungsi untuk menjelaskan Actor yang terdapat pada Use Case Diagram.Actor Definitionditerangkan pada tabel III.11.
Tabel III.11Actor Definition
No Actor Deskripsi
1 Pemain Orang yang memainkan game
2. Use Case Definition
Use Case Definition berfungsi untuk menjelaskan fungsi Use Case yang terdapat pada Use Case Diagram. Use Case Definition diterangkan pada tabel III.12 di bawah ini.
Tabel III.12Use Case Definition
No Use Case Deskripsi
1 Memainkanfull game Proses untuk memainkan permainan utama
2 Menampilkan menuabout Proses untuk menampilkan menuabout
3 Memainkanmini game Proses untuk memainkanmini game
41
game adventure game
5 Menjawab quiz Proses untuk melakukan quiz berupa soal
tertulis
6 Menjawab ear training Proses untuk melakukan ear training berupa interval nada yang dimainkan
7 Menampilkan materi Proses untuk menampilkan materi edukasi
8 Memainkan interval Proses untuk memainkan interval
3. Use Case Descriptions
Sebuah diagram yang menunjukkan use case dan aktor mungkin menjadi titik awal yang baik, tetapi tidak memberikan detail yang cukup untuk desainer sistem untuk benar-benar memahami persis bagaimana kebutuhan sistem akan dipenuhi. Cara terbaik untuk mengungkapkan informasi penting ini adalah dalam bentuk penjelasan berbasis teks [1].
a. Use Case Description Memainkan Full Game
Use Case Description dari Use Case Memainkan Full Game dijelaskan pada tabel III.13 berikut :
Tabel III.13Use Case DescriptionMemainkanFull Game
Nama Use Case Memainkan Full Game
Tujuan Untuk memainkan permainan utama Kondisi Awal Pemain berada di menu utama Kondisi Akhir Permainan selesai dilakukan Pemicu Pemain memilih menu mainkan
Aliran Utama Step Aksi
1. Pemilih memilih menu mainkan
2 Sistem menampilkan menu pilih level
3. Include::Memainkan Adventure Game
Sistem menampilkanadventure game
4. Include::Menjawab Quiz Sistem menampilkan quiz 5. Include::Menjawab Ear
Training
Sistem menampilkanear training
b. Use Case Description Menampilkan Menu About
Tabel III.14Use Case DescriptionMenampilkan MenuAbout
Nama Use Case Menampilkan Menu About Tujuan Untuk menampilkan menuabout Kondisi Awal Pemain berada di menu utama Kondisi Akhir Sistem menampilkan menuabout Pemicu Pemain memilih menuabout
Aliran Utama Step Aksi
1. Pemain memilih menuabout
2. Sistem menampilkan menuabout
c. Use Case Description Memainkan Mini Game
Use Case Description dariUse Case MemainkanMini Game dijelaskan pada tabel III.15 berikut :
Tabel III.15Use Case DescriptionMemainkanMini Game
Nama Use Case Memainkan Mini Game Tujuan Untuk memainkanmini game Kondisi Awal Pemain berada di menu utama
Kondisi Akhir Sistem menampilkanmini gamequiz atauear training Pemicu Pemain memilih menumini game
Aliran Utama Step Aksi
1. Pemain memilih menumini game
2. Sistem menampilkan menumini game
3. Pemain memilihmini gamequiz
4. Sistem menampilkan menu pilih level
5. Pemain memilih level
6. Extends::Menjawab Quiz
Sistem menampilkan quiz
Ekstensi Step Aksi Cabang
3.1 Pemain memilih mini game ear training 3.2 Include::Memilih
Level
Sistem menampilkan menu pilih level
3.3 Pemain memilih level
3.4 Extends::Menjawab Ear Training
Sistem menampilkanear training
d. Use Case Description Memainkan Adventure Game
43
Tabel III.16Use Case DescriptionMemainkanAdventure Game
Nama Use Case Memainkan Adventure Game
Tujuan Untuk melakukan permainan berupaadventure game Kondisi Awal Pemain sudah memilih level
Kondisi Akhir Menampilkan quiz
Pemicu Pemain sudah memilih level
Aliran Utama Step Aksi
1. Sistem mengambil peta sesuai level
yang dipilih
2. Sistem menampilkan peta permainan
3. Pemain menggerakkan karakter
permainan
4. Sistem menggerakkan pemain sesuai
input pemain
5. Cekcollisiondengan musuh
6. Cekcollisiondengan ranjau / rintangan 7. Include::Menampilkan
materi
Jika pemain mendapatkanmateriBox, sistem menampilkan materi
8. Jika semuamateriBoxsudah
didapatkan, sistem memunculkanexit level
Ekstensi Step Aksi Cabang
5.1 Jika bertabrakan dengan musuh, cek
posisi pemain dan musuh
5.1.1 Jika posisi pemain lebih tinggi dari musuh, maka musuh mati
5.1.2 Jika posisi pemain lebih rendah atau sama dengan musuh, maka pemain mati danresetposisi pemain
6.1 Jika bertabrakan dengan ranjau maka
pemain mati danresetposisi pemain
e. Use Case Description Menjawab Quiz
Use Case Description dari Use Case Menjawab Quiz dijelaskan pada tabel III.17 berikut :
Tabel III.17Use Case DescriptionMenjawab Quiz
Nama Use Case Menjawab Quiz
Tujuan Untuk melakukan quiz berupa soal tertulis Kondisi Awal Pemain sudah menyelesaikanadventure game Kondisi Akhir MenampilkanEar Training
Pemicu Pemain sudah menyelesaikanadventure game
Aliran Utama Step Aksi
2. Sistem mengacak soal
3. Sistem menampilkan soal
4. Pemain menjawab soal
5. Sistem mengecek jawaban
6. Sistem menampilkan hasil quiz
Ekstensi Step Aksi Cabang
5.1 Jawaban salah
5.2 Sistem menampilkan jawaban yang
benar
f. Use Case Description Menjawab Ear Training
Use Case Description dariUse Case MenjawabEar Trainingdijelaskan pada tabel III.18 berikut :
Tabel III.18Use Case DescriptionMenjawabEar Training
Nama Use Case Menjawab Ear Training
Tujuan Untuk melakukanear trainingberupa interval nada yang dimainkan Kondisi Awal Pemain sudah menyelesaikan quiz
Kondisi Akhir Menampilkan hasilear training Pemicu Pemain sudah menyelesaikan quiz
Aliran Utama Step Aksi
1. Sistem mengambil soal daristorage
2. Sistem mengacak soal
3. Sistem menampilkan soal
4. Include::Memainkan Interval
Sistem memainkan interval soal
5. Pemain menjawab soal
6. Sistem mengecek jawaban
7. Sistem melakukan proses rekam jumlah
jawaban benar
8. Mengecek jumlah soal yang sudah
dijawab
9. Sistem menampilkan hasil ear training
Ekstensi Step Aksi Cabang
4.1 Pemain menekan tombolreplay
4.2 Kurangi satu kesempatanreplay
4.2.3 Jika kesempatan replay habis, set tombol
‘replay’inactive
4.3 Sistem memainkan kembali interval soal
6.1 Jawaban salah
45
g. Use Case Description Menampilkan Materi
Use Case Description dari Use Case Menampilkan Materi dijelaskan pada tabel III.19 berikut :
Tabel III.19Use Case DescriptionMenampilkan Materi
Nama Use Case Menampilkan Materi
Tujuan Untuk menampilkan materi edukasi
Kondisi Awal JumlahmateriBoxyang sudah didapat belum bertambah Kondisi Akhir JumlahmateriBoxyang sudah didapat bertambah satu Pemicu Pemain mendapatkanmateriBox
Aliran Utama Step Aksi
1. Sistem mengambil materi daristorage
2. Sistem menampilkan materi
3. Sistem menambah jumlahmateriBox
yang sudah didapat
4. Sistem menutup dialog materi
Ekstensi Step Aksi Cabang
2.1 Pemain memainkan contoh
2.2 Extends::Memainkan Interval
Sistem memainkan contoh interval
h. Use Case Description Memainkan Interval
Use Case Description dari Use Case Memainkan Interval dijelaskan pada tabel III.20 berikut :
Tabel III.20Use Case DescriptionMemainkan Interval
Nama Use Case Memainkan Interval Tujuan Untuk memainkan interval Kondisi Awal Jenis interval sudah terdefinisi Kondisi Akhir Sistem memainkan interval nada
Pemicu Sistem membuat instansi objek dari kelas interval
Aliran Utama Step Aksi
1. Sistem mendapat input nama interval
2. Sistem mengacak nadaroot
3. Sistem mengisi interval sesuai dengan
nama interval
4. Sistem membuat nada kedua dari nama
pertama ditambah interval
3.1.7.2 Activity Diagram
Activity Diagram menunjukkan aktivitas oleh manusia atau objek dalam cara yang mirip denganFlow Chart.
1. Activity Diagram Memainkan Full Game
Berikut ini adalah diagram yang menunjukan alur aksi pada aktivitas MemainkanFull Gameyang dapat dilihat pada gambar III.5.
Gambar III.5Activity DiagramMemainkanFull Game
2. Activity Diagram Menampilkan Menu About
47
Gambar III.6Activity DiagramMenampilkan MenuAbout
3. Activity Diagram Memainkan Mini Game
Berikut ini adalah diagram yang menunjukan alur aksi pada aktivitas MemainkanMini Gameyang dapat dilihat pada gambar III.7.
4. Activity Diagram Memainkan Adventure Game
Berikut ini adalah diagram yang menunjukan alur aksi pada aktivitas MemainkanAdventure Gameyang dapat dilihat pada gambar III.8.
49
5. Activity Diagram Menjawab Quiz
Berikut ini adalah diagram yang menunjukan alur aksi pada aktivitas Menjawab Quiz yang dapat dilihat pada gambar III.9.
6. Activity Diagram Menjawab Ear Training
[image:64.595.134.433.175.708.2]Berikut ini adalah diagram yang menunjukan alur aksi pada aktivitas MenjawabEar Trainingyang dapat dilihat pada gambar III.10.
51
7. Activity DiagramMenampilkan Materi
[image:65.595.266.465.168.686.2]Berikut ini adalah diagram yang menunjukan alur aksi pada aktivitas Menampilkan Materi ya