BAB II TINJAUAN PUSTAKA Bab tinjauan pustaka ini dipaparkan teori penunjang yang menjadi dasar dalam analisis hasil. Teori penunjang yang disertakan antara lain tentang Rindik, game, Android, Unity Game Engine, bahasa pemrograman yang digunakan, Adobe Audition, Adobe Illustrator, UML (Unified Modeling Language) dan multitouch. 2.1 State of the Art Perkembangan game yang menggunakan tema musik atau rhythm game sudah semakin maju dan berkembang. Baik itu secara teknologi pembuatan, teknologi penyampaian, maupun teknologi intensitas dan medianya. Game yang berjenis musik maupun aplikasi instrument alat musik dapat merangsang kemampuan seseorang dalam menggunakan pendekatan nada dan ritme dari suatu alat musik. Berikut merupakan beberapa penelitian yang menggambarkan game yang ber-genre musik dan aplikasi instrument alat musik. Pengembangan Game Jegog Berbasis Android dilakukan oleh I Gede Wija Antara dan I Gede Mahendra Darmawiguna. Aplikasi game yang dibuat mengadaptasi permainan musik tradisional Jegog. Game yang dibuat menggunakan multitouch pada metode inputnya. Not lagu diberikan saat game dimainkan. Score dihasilkan dari ketepatan jatuhnya not pada panel yang telah disediakan. Aplikasi ini juga terdapat fitur instrument Jegog, sehingga user dapat memainkan alat musik Jegog tanpa menggunakan not. Aplikasi Game Jegog bertujuan menanamkan ritme dari permainan musik Jegog kepada user. Rancang Bangun Aplikasi Android Instrument Gamelan Rindik Berbasis Multitouch dilakukan oleh I Gede Eddy Wiputra. Aplikasi instrument Gamelan Rindik menggunakan metode Multitouch, dimana pada aplikasi ini user dapat memainkan dengan dua tangan sehingga menyerupai permainan Rindik aslinya, selain itu aplikasi ini juga terdapat fitur record dan load yang memungkinkan user dapat merekam permainan Rindiknya dan disimpan pada device sehingga dapat dimainkan kembali dengan menggunakan fitur load. Aplikasi ini juga dilengkapi dengan informasi mengenai Instrument Rindik dari pengenalan instrument sampai 5 6 dengan cara memainkannya. Perbedaan dengan Game Rindik yang dibuat adalah pada Game Rindik terdapat not yang bergerak menuju bilah Rindik. Score yang diperoleh tergantung dari ketepatan ketukan, sehingga secara tidak langsung game ini mengajarkan Permainan Rindik kepada user dengan ketukan yang sebenarnya (real) sedangkan Aplikasi Instrument Rindik hanya menyediakan nada pada bilah Rindik tanpa memberikan not lagu yang membuat user akan kesulitan dalam mengingat ritme lagu Rindik yang dimainkan. 2.2 Rindik Ada beberapa jenis alat musik tradisional di Bali yang terkenal dan terus dilestarikan khususnya oleh Masyarakat Bali. Masyarakat Bali sendiri juga terkenal aktif dalam melestarikan peninggalan leluhur mereka, sehingga bisa terus ada dan dikenal sampai sekarang. Alat musik tradisional Bali terdiri dari Gamelan Bali, Rindik, Ceng-ceng dan Pereret Pengasih-asih. Gambar 2.1 Alat Musik Rindik (sumber : http://id.wikipedia.org/wiki/Rindik) Gambar 2.1 merupakan gambar alat musik Rindik. Mnurut sumber pribadi, Musik Tradisional Rindik Bali pada umunya digunakan pada upacara perkawinan untuk menyambut para undangan yang datang. Musik Tradisional Rindik Bali disandingkan dengan tarian yang bernama Joged Bumbung. Penari yang 7 memainkan tarian Jogged Bumbung adalah wanita. Ciri khas tarian Joged Bumbung adalah mengajak penonton untuk ikut menari dan setelah selesai menari penonton memberikan uang kepada penari Joged Bumbung. Musik Tradisional Rindik Bali juga digunakan untuk menyambut dan menghibur tamu di hotel-hotel yang ada di Bali (Komang Suarnaya, komunikasi personal, 2 Juni 2015). 2.2.1 Proses Pembuatan Bambu yang baru ditebang yang sudah cukup tua dikeringkan perlahan- lahan agar tidak pecah. Direndam dalam air selama beberapa hari agar tidak cepat lapuk dimakan ngengat atau serangga lainnya. Bambu yang kering barulah dipotong-potong sesuai dengan ukuran bilah yang kita inginkan. Tinggi rendah nadanya sesuai dengan tebal tipisnya bambu. Keadaan bambu dari pangkal batang ke ujung makin menipis. Nada-nada yang tinggi dipakai bambu di bagian pangkal, dan nada-nada rendah di bagian ujung. Hal lain yang perlu diperhatikan adalah waktu memotongnya harus masih tertinggal minimal dua buku dalam ruas-ruas potongannya, karena batas ujung bilahan harus terdiri dari buku atau ruas mata bambu. Buku yang ada pada bilahan tersebut tergantung pada panjang pendeknya mungkin terdiri dari satu, dua, atau tiga buku (Komang Suarnaya, komunikasi personal, 2 Juni 2015). 2.2.2 Nada Rindik Rindik terdiri dari sebuah badan (disebut dengan bumbung) dan sumber bunyinya berasal dari daun atau bilah bambu yang setengahnya berlubang biasanya berjumlah 11 hingga 12 bilah dalam satu bumbung. Paling kiri pada posisi kita memainkannya, bilah bambu terlihat sangat panjang dan besar, namun semakin ke kanan bilah bambu semakin pendek dan kecil. Berlaraskan nada slendro bila dipukul dari kiri ke kanan maka nada yang dihasilkan dari rendah semakin tinggi yaitu ndung, ndang, nding, ndong, ndeng, ndung, ndang, nding, ndong, ndeng dan ndung. Semakin panjang bilah Rindik maka frekuensi bunyi yang dihasilkan semakin rendah. Semakin pendek bilah Rindik maka frekuensi bunyi yang dihasilkan semakin tinggi. Bunyi yang nyaring dihasilkan berkat adanya kolom 8 udara pada masing-masing bilah. Kolom udara pada Rindik sudah menjadi satu dengan bilahnya dan oleh sebab itu desain bilah Rindik dibuat setengah berlubang. Konsep resonansi berperan dalam mewujudkan terjadinya bunyi yang nyaring pada Rindik terutama kolom udaranya (Komang Suarnaya, komunikasi personal, 2 Juni 2015). 2.3 Game Game adalah kata berbahasa Inggris yang berarti permainan atau pertandingan, dapat juga diartikan sebagai aktifitas terstruktur yang biasanya dilakukan untuk bersenang-senang (Putri, 2012). Game juga dapat dimanfaatkan sebagai media menarik untuk belajar tapa menghilangkan aspek-aspek bermain (Pranata, 2010). Dunia modern ini, game dapat diartikan sebagai sebuah permainan komputer interaktif yang di kendalikan oleh mikroprosesor. Komputer dapat menciptakan bahan-bahan maya untuk digunakan dalam sebuah permainan seperti kartu dan dadu. Permainan komputer atau video game menggunakan satu atau lebih alat input, seperti sebuah tombol atau kombinasi dari joystick, sebuah keyboard, mouse dan trackball atau sebuah controller ataupun sebuah alat yang mempunyai sensor gerak. Video game adalah permainan yang biasanya melibatkan player atau pemain berinteraksi dengan alat pengendali atau controller untuk menghasilkan umpan balik secara visual dalam sebuah layar video. Video game biasanya juga mempunyai sistem pemberian hadiah yang diberikan kepada pemain apabila menyelesaikan tugas-tugas tertentu yang berada didalam aturan atau rule set game tersebut. Tipe-tipe peralatan elektronik dimana video game dapat dimainkan disebut dengan platform dan contoh dari platform adalah PC (personal komputer) dan mesin video game (video game console). Video game juga hadir dalam semua tingkatan teknologi mulai dari komputer sampai dengan peralatan genggam seperti Handphone dan PDA. Video game menggunakan banyak sistem lain untuk menyediakan interaksi dan informasi kepada pemain, selain elemen dasar dari umpan balik berbasis video. Contoh umumnya adalah penggunaan sistem audio (speaker) dan peralatan interaktif seperti umpan balik dengan getaran. 9 2.3.1 Jenis-jenis Game Jenis game yang disebut genre game dapat dibagi menjadi beberapa bagian. Game dapat memiliki sebuah genre atau lebih dari satu genre (campuran). Game yang terdiri dari lebih dari 1 genre dapat menambah variasi dan tantangan dari game tersebut. Jenis-jenis game yang dimaksud adalah sebagai berikut: 1. Aksi Game dengan jenis aksi merupakan jenis game yang paling popular. Game jenis ini membutuhkan kelincahan pemain. Salah satu subgenre action yang popular adalah First Person Shooter (FPS). Game FPS memerlukan kecepatan berfikir. Game ini dibuat seolah-olah pemain yang berada dalam suasana tersebut. 2. Aksi Petualangan Jenis game ini memadukan game play aksi dan petualangan. Pemain diajak untuk menelusuri gua bawah tanah sambil mengalahkan musuh, dan mencari artefak kuno, atau menyeberangi sungai. Jenis game ini mengajak pemain untuk membuka wawasan bertualang. 3. Simulasi, Konstruksi dan Manajemen Jenis game ini memberikan keleluasaan bagi pemain untuk lebih kreatif dengan membangun suatu proyek tertentu dengan bahan yang telah disediakan. Game jenis ini juga mengajarkan pemain untuk dapat memanajemen bawahan atau pegawai agar suatu proyek yang dihasilkan maksimal. 4. Role Playing Game Game dengan jenis RPG memberikan pilihan untuk pemain, seperti memilih karakter maupun senjata yang digunakan. Karakter akan bertambah level sehingga kemampuannya bertambah dan kekuatan senjatanya juga bertambah. 5. Strategi Jenis game strategi menitikberatkan pada kemampuan pemain dalam menyusun strategi yaitu dengan berpikir dan merencanakan langkah yang akan diambil. Game dengan jenis strategi dibedakan menjadi dua, yaitu Turn Based Strategy dan Real Time Strategy. Real time strategy mengharuskan pemain membuat keputusan dan secara bersamaan pihak lawan juga beraksi hingga menimbulkan serangkaian kejadian dalam waktu yang sebenarnya. Turn based 10 strategy pemain bergantian menjalankan taktiknya, yaitu saat seorang pemain mengambil langkah pihak lawan menunggu giliran langkahnya. 6. Balapan Jenis game balapan berhubungan dengan kendaraan, seperti mobil maupun sepeda motor. Pemain mengakhiri game jenis ini dengan menyelesaikan balapan hingga garis finish. 7. Olahraga Game jenis olahraga mengajak pemain untuk bermain olahraga seperti dengan keadaan olahraga aslinya, seperti sepak bola, basket, tenis, ping pong dan sebagainya. 8. Puzzle Game jenis puzzle memberikan potongan-potongan gambar yang harus disusun oleh pemain sehingga mencapai suatu pola tertentu. Tujuan dari game ini adalah meningkatkan kreativitas pemain untuk mengenal huruf atau gambar dari game yang dimainkan. 9. Permainan Kata Permainan kata bertujuan untuk menguji kemampuan pemain untuk mengingat kata atau kalimat dari berbagai bahasa. Game jenis ini memberikan beberapa huruf atau kata yang disusun sehingga memberikan maksud dari suatu kata maupun kalimat. 2.3.2 Elemen Dasar Game Game memiliki elemen-elemen penting dalam perancangan dan pembuatannya. Genre setiap game dapat berbeda, namun elemen pada setiap game memiliki fungsi dan maksud yang sama. Elemen-elemen yang ada pada sebuah game adalah sebagai berikut: 1. Game Rule Game rule merupakan aturan perintah, cara menjalankan, fungsi objek dan karakter di dunia permainan Dunia Game. Dunia game bisa berupa pulau, dunia khayal, dan tempat-tempat lain yang sejenis yang dipakai sebagai setting tempat dalam permainan game. 11 2. Plot Plot biasanya berisi informasi tentang hal-hal yang akan dilakukan oleh player dalam game dan secara detail, perintah tentang hal yang harus dicapai dalam game. 3. Object Object merupakan sebuah hal yang penting dan biasanya digunakan pemain untuk memecahkan masalah, adakalanya pemain harus punya keahlian dan pengetahuan untuk bisa memaninkannya. 4. Text, grafik dan sound Game merupakan kombinasi dari media teks, grafik maupun suara, walaupun tidak harus semuanya ada dalam permainan game. 5. Animasi Animasi ini selalu melekat pada dunia game, khususnya untuk gerakan karakter-karakter yang ada dalam game dan properti dari objek. 6. User Interface User Interface merupakan fitur-fitur yang mengkomunikasikan user dengan game. 2.3.3 Game Edukasi Kamus besar bahasa Inggris kata education memiliki makna pendidikan, sedangkan dalam kamus besar Bahasa Indonesia pendidikan diartikan sebagai proses pengubahan sikap dan tata laku seseorang atau sekelompok orang dalam usaha mendewasakan manusia melalui upaya pengajaran dan pelatihan. Game edukasi adalah permainan yang dirancang atau dibuat untuk merangsang daya pikir termasuk meningkatkan konsentrasi dan memecahkan masalah (Handriyantini, 2009). Game edukasi adalah media pembelajaran dengan menggunakan permainan yang menghibur. Game edukasi memberikan pengajaran dan menambah pengetahuan pemain dengan media yang menarik. Contoh dari game edukasi adalah sebagai berikut. 12 Gambar 2.2 Game Edukasi JA-KO Implementasi Pembuatan Pizza (Sumber : JA-KO Balinese Pizza Game Edukasi Interaktif Jaringan Komputer, vol 3) Game Edukasi JA-KO ini akan mengajak pemain menyelesaikan misi sebagai pegawai pizza, dimana pemain dapat menyusun potongan-potongan gambar sehingga membentuk gambar dari suatu jenis pizza. Unsur edukasi yang dimaksud adalah mengajarkan kepada pemain cara membuat dan dapat mengetahui jenis-jenis dari pizza yang ada (Trisna, 2014). Kesimpulannya adalah game edukasi dapat memberikan proses belajar secara menyenangkan dan lebih kreatif. 2.4 Android Android adalah sebuah sistem operasi untuk berbagai perangkat mobile seperti handphone, netbook, dan komputer tablet. Sistem operasi ini dikembangkan oleh Google dengan berbasis kernel Linux versi 2.6 dan berbagai perangkat lunak dari GNU yang bersifat Open Source. Android dikembangkan oleh perusahaan Android Inc., namun kemudian perusahaan tersebut diakuisisi oleh Google sehingga menjadi produk Google. Sekarang ini pengembangan Android ditentukan oleh sebuah konsorsium bernama Open Handset Alliance (OHA) yang terdiri atas berbagai vendor perangkat mobile, komputer, dan telekomunikasi seperti Intel, Nvidia, Google, Samsung, Sprint, T-Mobile, Motorola, LG, Sony Ericsson, Toshiba, Vodafone, serta masih banyak yang lain dan anggotanya terus bertambah (Okto Hendrik Sinaga, 2011). Android bersifat Open Source dan mempunyai lisensi Apache yang sangat terbuka dan bebas, maka Android menjadi sistem operasi yang sangat populer bagi berbagai produsen perangkat mobile. Berdasarkan laporan dari NPD Group, penjualan perangkat smartphone berbasis Android berada di peringkat kedua di 13 seluruh Amerika pada kwartal pertama Tahun 2010. Laporan dari Nielson juga menunjukkan bahwa Android berada di posisi keempat dengan pangsa pasar sebesar 9% untuk smartphone di kwartal yang sama. Salah satu keunggulan Android adalah adanya komunitas para developer dan programmer yang luas untuk mengembangkan berbagai aplikasi yang berjalan di perangkat berbasis Android sehingga mampu memperluas fitur dan kemampuan perangkat tersebut. Saat ini sudah terdapat lebih dari 70000 aplikasi Android sehingga berada di peringkat kedua di dunia. Banyaknya aplikasi yang tersedia di Android dimungkinkan karena pengembangan di Android relatif mudah dan cepat karena menggunakan bahasa pemrograman Java dengan dukungan library Java yang dikembangkan oleh Google (Okto Hendrik Sinaga, 2011). Software stack untuk Android OS terdiri atas berbagai aplikasi Java yang berjalan di atas framework Java berorientasi obyek, yang kemudian berjalan di atas core library Java dari Dalvik Virtual Machine (DVM) melalui JIT compiler. Library yang kritis ditulis dengan bahasa C kinerjanya seperti surface manager pada dukungan touchpad/touchscreen, OpenCore Media Framework, SQLite database, OpenGL ES pada grafis 3D, FreeType untuk dukungan font, WebKit layout engine untuk user interface, SGL graphics engine untuk grafis 2D, SSL untuk koneksi yang aman dan Bionic libc. Saat ini Android OS terdiri dari 12 juta baris kode termasuk 3 juta baris kode XML, 2.8 juta baris kode dengan bahasa C, 2.1 juta baris kode dengan bahasa Java, dan 1.75 juta baris kode dengan bahasa C++. Pengembangan Android masih terus berlanjut dengan menambahkan berbagai fitur yang menarik, sehingga jumlah baris kode untuk Android terus bertambah dengan keluarnya versi-versi baru. Ada beberapa istilah yang perlu dipahami dalam Android sehingga kita mampu membangun aplikasi Android dengan baik dan benar, yaitu sebagai berikut: 1. Resource yaitu segala hal yang digunakan dalam aplikasi Android yang kita kembangkan seperti teks, gambar, video, audio, xml, layout, dan berbagai sumber lain yang digunakan dalam kode sumber aplikasi Android. Semua resource yang dapat diakses di suatu aplikasi secara otomatis akan 14 didaftarkan di dalam class khusus bernama R sehingga kita mampu mengaksesnya melalui R. 2. Activity yaitu merepresentasikan satu layar di Android dalam aplikasi. Sebuah activity mengendalikan semua kegiatan yang terjadi dalam satu layar yang tampil di perangkat berbasis Android. Paradigma MVC (ModelView Controller) activity mempunyai peran sebagai controller. Suatu aplikasi Android yang rumit, bisa terdapat banyak activity untuk berbagai fungsi yang disediakan aplikasi tersebut. 3. View yaitu komponen User Interface (UI) yang terdapat pada satu activity atau layar. Pengguna berinteraksi dengan layar melalui satu atau lebih view yang terdapat pada satu activity/layar. Suatu activity berisikan satu atau lebih view dan mengendalikan semua view dalam layar tersebut. 4. Intent yaitu kode yang bertanggung jawab untuk melakukan suatu proses dalam aplikasi Android, termasuk pergantian activity/layar atau pemanggilan aplikasi yang lain untuk interaksi antar aplikasi. 5. AndroidManifest.xml yaitu file yang berisikan deskripsi dan konfigurasi umum mengenai aplikasi Android yang kita buat. File ini bisa diibaratkan sebagai deployment descriptor untuk memberitahu kepada Android bagaimana cara memasang aplikasi ini di perangkat berbasis Android. Unit paling kecil dalam suatu aplikasi Android adalah activity. Satu activity merepresentasikan satu layar, dan dalam satu activity bisa terdapat beberapa view yang memungkinkan pengguna untuk berinteraksi dengan activity tersebut. View bisa menggunakan berbagai Resource. Jika suatu activity ingin mengakses activity, aplikasi, atau pelayanan yang lain, maka activity dapat melakukannya dengan menggunakan intent. Aplikasi bisa terdiri atas beberapa activity dan intent, dan semuanya terdeskripsi dalam AndroidManifest.xml. 15 Gambar 2.3 Logo Android (sumber : http://developer.android.com/index.html) Gambar 2.3 merupakan logo dari Android. Perkembangan Android semakin pesat seiring dengan perkembangan teknologi informasi, hingga versi terbaru saat ini adalah Android versi 4.4 (KitKat). Kehadiran Android kitkat merupakan pelucuran produk OS anyar yang dilucurkan pada 4 September 2013. Gambar 2.4 Logo Android versi 4.4 (sumber : http://www.nextpowerup.com/news/3580/android-4-4-kitkat-lg-nexus-5-lands-onoctober-14th-rumor.html) Gambar 2.4 merupakan logo Android versi 4.4 dimana sebelumnya banyak kabar beredar bahawa Android akan meluncurkan OS baru yang bernama Android Key Lime Pie namun setelah di analisa tidak sesuai dengan ejaan orang umum, sehingga namanya diganti dengan OS Android KitKat yang sebagian besar orang sudah familiar dengan itu seperti yang dilangsing BBC dalam wawancaranya dengan John Lagerling selaku perwakilan dari google. 2.5 Android SDK (Software Development Kit) Android SDK adalah tools API (Application Programming Interface) yang diperlukan untuk mulai mengembangkan aplikasi pada Platform Android menggunakan bahasa pemrograman Java. Android merupakan subset perangkat lunak untuk Handphone yang meliputi sistem operasi, middleware dan aplikasi kunci yang dikeluarkan oleh Google. Fungsi SDK salah satunya digunakan untuk 16 melakukan remote shell (command) terhadap handset Android kita dari PC, serta banyak lagi fungsi lainnya (Danni, 2014). 2.6 Android Development Tools (ADT) Android Development Tools (ADT) adalah plug-in untuk Eclipse IDE yang dirancang untuk memberikan environment yang terintegrasi dan kuat dalam membangun aplikasi Android. ADT memperluas kemampuan Eclipse untuk membiarkan programmer cepat membuat proyek baru Android, membuat aplikasi dengan user interface, menambahkan komponen berdasaran Android Framework API, melakukan debug aplikasi menggunakan Android SDK tools, dan bahkan mengekspor file.apk dalam rangka mendistribusikan aplikasi yang dibuat developer (Danni, 2014). 2.7 Unity Game Engine Unity Game Engine adalah software yang digunakan untuk membuat game berbasis dua atau tiga dimensi. Unity Game Engine juga dapat digunakan untuk membuat konten yang interaktif seperti visual arsitektur dan real-time 3D animasi. Unity juga dapat digunakan sebagai editor dari game yang telah ada (Yeti, 2012). Gambar 2.5 Logo Unity (sumber : http://unity3d.com/) Unity mendukung bahasa pemrograman JavaScript, C# dan Boo. Unity memiliki kemiripan dengan game engine lainnya seperti Blender Game Engine, Virtools, Gamestudio. Adapun kelebihan dari Unity Game Engine adalah dapat dioperasikan pada Platform Windows dan Mac Os. Unity dapat menghasilkan game untuk Windows, Mac, Linux, Wii, iPad, iPhone, Android dan Browser. Unity memiliki kerangka kerja (framework) lengkap untuk pengembangan professional. 17 Kelebihan dari software Unity Game Engine adalah sebagai berikut: 1. Mempunyai tools yang lengkap dalam pembuatan games. 2. Bisa digunakan pada komputer, smartphone Android, iPhone, PS3 dan XBOX. 3. Cocok untuk pemula atau yang sudah mahir. 4. Flexible dan easy moving, rotating dan scaling objects hanya perlu satu baris kode. Begitu juga dengan duplicating, removing dan changing properties. 5. Mendukung 3 bahasa pemrograman yaitu JavaScript, C# dan Boo. Kekurangan dari software Unity Game Engine adalah game engine ini mempunyai kapasitas memory yang sangat tinggi, bisa mencapai 500-600 MB sehingga dibutuhkan spesifikasi yang lumayan tinggi pada komputer untuk mengoperasikannya. 2.8 Bahasa Pemrograman JavaScript JavaScript adalah bahasa scripting yang populer di Internet dan dapat digunakan pada sebagian besar browser populer seperti Internet Explorer (IE), Mozilla FireFox, Netscape, dan Opera. Kode JavaScript dapat disisipkan dalam halaman web menggunakan tag SCRIPT (Sunyoto, 2007). JavaScript merupakan bahasa pemrograman yang paling banyak dipakai diseluruh dunia. JavaScript biasanya banya digunakan pada pemrograman web. JavaScript merupakan sebuah bahasa scripting yang dikembangkan oleh Netscape. JavaScript digolongkan sebagai bahasa scripting sisi klien (client side scripting) artinya bahwa script JavaScript tersebut dieksekusi atau dijalankan pada kita sendiri saat kita membuka suatu program yang berisi script JavaScript. JavaScript adalah nama implementasi Netscape Communications Corporation untuk ECMAScript standar, suatu bahasa pemrograman yang didasarkan pada konsep pemrograman berbasis prototype. JavaScript berhubungan dengan bahasa pemrograman Java, dengan kesamaan utamanya adalah penggunaan sintaks C. Beberapa hal penting tentang JavaScript adalah sebagai berikut ini: 1. JavaScript didesain untuk menambah interaktif suatu aplikasi. 18 2. JavaScript merupakan sebuah bahasa scripting. 3. Bahasa scripting merupakan bahasa pemrograman yang ringan. 4. JavaScript berisi baris kode yang dijalankan di aplikasi. 5. JavaScript adalah bahasa interpreter (yang berarti skrip dieksekusi tanpa proses kompilasi). 6. JavaScript dapat digunakan tanpa membayar suatu lisensi. Aturan penulisan JavaScript adalah sebagai berikut: 1. Perintah dalam JavaScript diakhiri dengan titik koma (“;”). 2. Komentar dalam JavaScript dapat menggunakan tanda “//” untuk satu baris perintah dan tanda “/*..*/” untuk kelompok program. JavaScript adalah bahasa yang berbentuk kumpulan script yang pada fungsinya berjalan pada suatu aplikasi, sepanjang sejarah Internet bahasa ini adalah bahasa script pertama untuk web dan baru dikembangkan untuk aplikasi mobile phone pada Tahun 1993. 2.9 Adobe Audition Software ini merupakan produk yang dapat memenuhi kebutuhan pengguna di bidang audio editing. Program ini dilengkapi dengan modul-modul efek suara, seperti Delay, Echo, Pereduksi Noise/Hiss, Reverb, Pengatur Tempo, Pitch, Graphic dan Parametric Equalizer (Eko, 2010). Adobe Audition memberikan fasilitas perekaman suara sampai dengan 128 track hanya dengan satu sound card, hal ini akan memberikan kemudahan bagi seorang sound editor untuk berekspresi lebih jauh. Pengeditan suara bisa dilakukan dalam bentuk .wav dan penyimpanan bisa diconvert dalam bentuk format seperti .wma, .mp3, mp3pro, dll. Arrangement sebuah musik bisa dilakukan dengan menambahkan beberapa alat musik dan dikoneksikan dengan line in atau microphone dari soundcard. Berikut adalah kelebihan dari Adobe Audition (http://www.adobe.com/): 1. Banyak software pendukung untuk melengkapi kebutuhan animasi, video editing, website dan grafis seperti Adobe After Effect, Primiere dan Photoshop. 2. Multitrack Editing dan Mixing sampai 128 track. 19 3. Lebih dari 40 data sound effect, mastering, perangkat analisa editing suara terdapat didalamnya, semua ini termasuk Echo, Reverb, Flanging, Chorusing,Compression, Limiting, Equalization, Noise Reduction, dan lainnya. 4. Teknik pengeditan audio sangat mudah, walaupun baru memakai software Adobe Audition. 5. Support untuk banyak format audio. 6. Visualisasi dari gelombang suara analisa dalam bentuk angka. 2.10 Adobe Illustrator Adobe Illustrator dikembangkan pertama kali oleh Adobe Inc pada bulan Desember 1986. Adobe Illustrator tidak terpisahkan dengan Adobe Photoshop. Photoshop dipersiapkan untuk manipulasi foto digital dan illustrasi komputer, sementara illustrator ditujukan untuk grafis dan desain logo. Peluncuran illustrator pada awalnya merupakan sebuah ketidakpastian, karena pada waktu itu Macintosh tidak memiliki pangsa pasar yang besar. Penyebabnya adalah diantaranya hanya ada satu printer yang dapat mencetak dokumen illustrator adalah Laser Writer, printer buatan Apple yang pada waktu itu tergolong baru dan masih sangat mahal, dan cara menggambar dengan Bezier tool merupakan paradigma baru bagi para desainer grafis pada saat itu. Macintosh sendiri pada saat itu baru dapat mengembangkan monitor built-in berukuran 9 inci dan pada akhirnya illustrator membantu Macintosh mengembangkan monitor yang berukuran lebih besar. Adobe Illustrator benar–benar produk yang andal, dan kurva–kurvanya yang relatif mudah dipelajari membuat para pengunanya dengan mudah menyadari bahwa tidak hanya lebih baik, namun Illustrator juga memecahkan masalah ketidakpresisian program grafis yang sudah ada, seperti MacDraw. Illustrator juga menyediakan peralatan baru bagi mereka yang tidak sanggup mempelajari program yang sulit seperti AutoCAD. Illustrator dengan cepat mengisi ruang antara program grafis dengan program arsitektur (CAD). Adobe memilih untuk mengambil resiko dengan mencoba tampilan (antarmuka pengguna) baru Illustrator. Bukannya mengikuti peraturan Apple tentang antarmuka pengguna, mereka malah membuat para pengguna Illustrator lebih mudah untuk mengganti antar peralatan dan 20 navigasi yang ada hanya dengan kombinasi tombol–tombol keyboard. Fitur yang paling menarik dalam Illustrator adalah Live Trace, Live Paint, Control Pallete dan Custom WorkSpaces. Live trace memungkinkan untuk mengubah gambar bitmap menjadi vektor dalam waktu sekejap. Live paint memungkinkan untuk mewarnai area dalam waktu singkat, khususnya bagi yang tidak beraturan. 2.11 UML (Unified Modeling Language) UML dimaksudkan untuk menjadi sebuah pemersatu bahasa yang memungkinkan para professional IT membuat model aplikasi. Penulis pertama adalah Jim Rumbaugh, Ivar Jacobson dan Grady Booch yang awalnya mereka memiliki metode sendiri (OMT, OOSE dan Booch). Mereka bergabung dan membawa standar yang bebas dan terbuka (fenomena yang menghasilkan J2EE, SOAP dan Linux). Salah satu alasan yang telah menjadi UML standar bahasa pemodelan adalah bahasa programming yang independen. Alat modeling UML berasal dari IBM Rational yang digunakan pada J2EE shops yang sama pada .Net shops. Notasi UML yang ditetapkan adalah bahasanya bukan metodologinya, hal ini penting karena bahasa adalah lawan dari metodologi yang dapat dengan mudah masuk ke setiap perusahaan-perusahaan bisnis tanpa melakukan perubahan (Donald Bell, 2003). UML bukan merupakan metodologi maka tidak memerlukan produk kerja formal (seperti artefak IBM Rational Unified Process Lingo). UML memberikan beberapa jenis diagram yang diguankan dalam metodologi tertentu, meningkatkan kemudahan dan memahami dalam pengembangan pemodelan aplikasi. Standar UML diagram menggunakan diagram khusus, yaitu diagram Use Case, diagram Class, diagram Sequence, diagram Statechart, diagram Activity, diagram Component, dan diagram Depleyment. Semakin kompleks bentukan sistem yang dibuat, maka semakin sulit komunikasi antara orang-orang yang saling terkait dalam pembuatan dan pengembangan software yang akan dibuat. UML pada masa lalu mempunyai peranan sebagai software blueprint (gambaran) language untuk analisis sistem, designer, dan programmer. UML pada saat ini merupakan bagian dari software 21 trade (bisnis software). UML memberikan jalur komunikasi dari sistem analis kemudian designer, lalu programmer mengenai rancangan software yang akan dikerjakan. 2.11.1 Diagram Use Case Diagram use case menggambarkan sebuah unit fungsionalitas yang disediakan oleh sistem. Tujuan utama dari pembangunan diagram use case adalah untuk membantu visualisasi persyaratan sistem yang berfungsi baik, termasuk hubungan antara user dan sistem. Diagram use case pada sebuah diagram menggambarkan oval di bagian tengah dari diagram menunjukkan sebuah sistem pada sebuah diagram use case pengguna (Donald Bell, 2003). Berikut adalah contoh diagram use case. Gambar 2.6 Contoh Diagram Use Case (Sumber : http://bronze.rational.com:8169/content/jun_03/f_UMLintro_db.jsp) Sebuah diagram use case biasanya digunakan untuk berkomunikasi highlevel fungsi suatu sistem aplikasi. Gambar 2.6 menunjukkan contoh sistem penjualan. Sistem ini memungkinkan para manager band melihat penjual dan laporan statistik Billboard 200. 22 2.11.2 Diagram Class Diagram Class memberikan pandangan secara luas dari suatu sistem dengan menunjukan kelas-kelasnya dan hubungan mereka. Diagram Class bersifat statis, “menggambarkan hubungan apa yang terjadi bukan apa yang terjadi jika mereka berhubungan” (Yoyon K.Suprapto, Sholeh Umar, 2013). Diagram Class mempunyai 3 macam relationships (hubungan), sebagai berikut. 1. Association Suatu hubungan antara bagian dari dua kelas. Terjadi association antara dua kelas jika salah satu bagian dari kelas mengetahui yang lainnya dalam melakukan suatu kegiatan. Association adalah penghubung yang menghubungkan dua kelas. 2. Aggregation Suatu association dimana salah satu kelasnya merupakan bagian dari suatu kumpulan. Aggregation memiliki titik pusat yang mencakup keseluruhan bagian. Sebagai contoh : OrderDetail merupakan kumpulan dari Order. 3. Generalization Suatu hubungan turunan dengan mengasumsikan satu kelas merupakan suatu superClass (kelas super) dari kelas yang lain. Generalization memiliki tingkatan yang berpusat pada superClass. Contoh : Payment adalah superClass dari Cash, Check, dan Credit. 2.11.3 Diagram Sequence Diagram Class dan diagram Object merupakan suatu gambaran model statis. Namun ada juga yang bersifat dinamis, seperti diagram Interaction. Diagram Sequence merupakan salah satu diagram Interaction yang menjelaskan bagaimana suatu operasi itu dilakukan, message (pesan) apa yang dikirim dan kapan pelaksanaannya. Diagram ini diatur berdasarkan waktu. Obyek-obyek yang berkaitan dengan proses berjalannya operasi diurutkan dari kiri ke kanan berdasarkan waktu terjadinya dalam pesan yang terurut (Dyas Yudi Priyanggodo, 2013). Berikut adalah contoh dari gambar diagram sequence. 23 Gambar 2.7 berikut adalah diagram Sequence untuk memilih alat musik dalam aplikasi "Perancangan dan Pembuatan Aplikasi Virtual Gamelan Jawa Berbasis Android". User Tampilan pilihan alat musik Tombol kendang Tombol saron Tombol kempur dan gong Main kendang selendro Main saron selendro Main gong selendro 1 : startActivity() 2 : Menekan tombol kendang() 3 : startActivity() 4 : Tekan tombol back() 5 : Menekan tombol saron() 6 : startActivity() 7 : Tekan tombol back() 8 : Tekan tombol gong() 9 : startActivity() 10 : Tekan tombol back() Gambar 2.7 Contoh Diagram Sequence Memilih Alat Musik Gambar 2.7 merupakan contoh dari diagram Sequence. User memilih alat musik yang dimainkan dengan cara menekan tombol alat musik seperti kendang, saron atau gong. Dilanjutkan dengan memainkan alat musik yang telah dipilih. 2.11.4 Diagram Diagram activity menunjukkan kegiatan procedural kontrol aliran antara dua atau lebih object kelas sementara kegiatan pengolahan. Diagram activity dapat digunakan untuk model higher-level proses bisnis di tingkat unit usaha atau untuk model internal tindakan kelas tingkat rendah. Diagram Activity sering digunakan oleh flowchart. Diagram ini berhubungan dengan diagram Statechart. Diagram Statechart berfokus pada obyek yang dalam suatu proses (atau proses menjadi suatu obyek), diagram Activity berfokus pada aktifitas-aktifitas yang terjadi yang terkait dalam suatu proses tunggal (Donald Bell, 2003). Contoh dari diagram activity dapat dilihat pada Gambar 2.8. 24 Gambar 2.8 Contoh Diagram Activity Laporan Penjualan (Sumber : http://bronze.rational.com:8169/content/jun_03/f_UMLintro_db.jsp) Gambar 2.8 merupakan contoh diagram activity gamelan composer berbasis Android. Contoh diagram activity tersebut memiliki dua swinlanes karena terdapat dua benda terpisah kegiatan yang menyangkut proses kegiatan yaitu user (band manager) dan sistem (reporting tool). Prosesnya dimulai dengan pemilihan manajer band untuk melihat laporan penjualan bands-nya, kemudian mengambil alat pelaporan dan menampilkan semua band yang mengelola dan meminta dia untuk memilih salah satu, setelah manajer band ini memilih sebuah band penjualan, tool report menampilkan informasi laporan. Kegiatan ini menampilkan diagram yang menunjukkan bahwa laporan penjualan ini adalah langkah terakhir dalam proses. 2.12 Multitouch Multitouch adalah pengembangan dari touchpad dan touchscreen agar pengguna lebih nyaman berinteraksi dengan komputer. Komponen dasar yang pasti dimiliki oleh alat input berbasis sentuh adalah sensor sentuh. Sensor sentuh adalah sebuah lapisan penerima input dari luar monitor dimana sangat tanggap dengan 25 sentuhan, maka dari itu sensornya juga merupakan sensor sentuh. Sensor sentuh berupa sebuah panel terbuat dari kaca yang permukaannya sangat responsif jika disentuh. Sensor sentuh ini diletakkan di permukaan paling depan dari sebuah layar touchscreen, dengan demikian area yang responsif terhadap sentuhan menutupi area pandang dari layar monitor (Juan Pablo, Sergi Jorda, 2011). Semua jenis sensor ini memiliki cara kerja yang sama, yaitu menangkap perubahan arus dan sinyal-sinyal listrik yang ada pada sensor tersebut, merekamnya dan mengubahnya menjadi titik-titik koordinat yang berada di atas layar, sehingga posisi tepat dari sebuah sentuhan dapat langsung diketahui dengan benar. Multitouch dapat dikatakan menggunakan media input yang sama dengan touchscreen, namun perbedaannya adalah dengan Multitouch, dapat menggunakan beberapa jari sekaligus untuk melakukan sesuatu seperti melakukan zoom in atau zoom out dan juga memutar (rotate) gambar.