Perancangan aplikasi virtual reality pembelajaran pergerakan bumi dan bulan bagi siswa kelas 6 sekolah dasar (studi kasus: SDN Kebayoran Lama Selatan L3 Pagi)

(1)

PERANCANGAN APLIKASI VIRTUAL REALITY

PEMBELAJARAN PERGERAKAN BUMI DAN BULAN

BAGI SISWA KELAS 6 SEKOLAH DASAR

(Studi Kasus : SDN Kebayoran Lama Selatan 13 Pagi)

Dimas Sony Dewantara

106091003529

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS SAINS DAN TEKNOLOGI

UIN SYARIF HIDAYATULLAH

JAKARTA


(2)

PERANCANGAN APLIKASI VIRTUAL REALITY

PEMBELAJARAN PERGERAKAN BUMI DAN BULAN

BAGI SISWA KELAS 6 SEKOLAH DASAR

(Studi Kasus : SDN Kebayoran Lama Selatan 13 Pagi)

Skripsi

Sebagai Salah Satu Syarat Untuk Memperoleh Gelar Sarjana Komputer

Fakultas Sains dan Teknologi

Universitas Islam Negeri (UIN) Syarif Hidayatullah Jakarta

Oleh

Dimas Sony Dewantara 106091003529

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS SAINS DAN TEKNOLOGI

UIN SYARIF HIDAYATULLAH

JAKARTA


(3)

(4)

(5)

PERNYATAAN

DENGAN INI SAYA MENYATAKAN BAHWA SKRIPSI INI BENAR-BENAR HASIL KARYA SENDIRI YANG BELUM PERNAH DIAJUKAN SEBAGAI SKRIPSI ATAU KARYA ILMIAH PADA PERGURUAN TINGGI ATAU LEMBAGA MANAPUN

Jakarta, Juli 2011

Dimas Sony Dewantara


(6)

ABSTRAK

Dimas Sony Dewantara – 106091003529, Perancangan Aplikasi Virtual Reality Pembelajaran Pergerakan Bumi dan Bulan Bagi Siswa Kelas 6 Sekolah Dasar (Studi Kasus: SDN Kebayoran Lama Selatan 13 Pagi), dibimbing oleh Ibu Arini, MT, M.Eng dan Bapak DR. Rusdianto Rustam, M.Sc.

Pergerakan Bumi dan Bulan merupakan salah satu materi ilmu pengetahuan alam yang diberikan kepada siswa kelas 6 sekolah dasar. Sebagai suatu materi berisikan penggambaran mengenai pergerakan objek-objek tertentu, tentunya media yang digunakan haruslah mampu memvisualisasikan pergerakan objek-objek tersebut dalam hal ini Bumi serta Bulan secara baik, jelas serta interaktif agar materi yang disampaikan dapat lebih mudah dipahami serta diingat, terlebih jika ditujukan terhadap siswa sekolah dasar. Aplikasi virtual reality pembelajaran pergerakan bumi dan bulan dengan penyampaian informasi melalui visualisasi 3 dimensi akan dapat memberikan penggambaran yang jelas, lebih menarik serta interaktif. Ditambah dengan modul evaluasi yang dikemas dalam bentuk permainan. Pembuatan aplikasi ini menggunakan metode pengumpulan data berupa wawancara, observasi serta penyebaran kuesioner dan juga metode pengembangan sistem menggunakan Interactive Multimedia System Design and Development (IMSDD) yang meliputi 4 tahapan yaitu kebutuhan sistem, pertimbangan desain, implementasi dan evaluasi. Aplikasi ini dapat membantu serta lebih menarik minat pengguna dalam hal ini para siswa dalam mempelajari materi pergerakan bumi dan bulan. Aplikasi ini kedepannya masih memerlukan pengembangan lebih lanjut dalam hal teknik pendeteksi tumbukan, seperti pendeteksian tumbukan dalam sumbu z atau ground collision agar virtual reality yang dihasilkan lebih mendekati kenyataan serta teknik pemodelan 3 dimensi yang digunakan dapat beralih dari low poly modeling menjadi high poly modeling disesuaikan dengan kemajuan kemampuan sumber daya perangkat keras yang tersedia agar tampilan yang dihasilkan memiliki kualitas yang lebih baik..

Kata Kunci : Virtual reality, pembelajaran, pergerakan bumi dan bulan.

Jumlah Halaman : V Bab + xxii Halaman + 205 Halaman + 115 Gambar + 13 Tabel + Daftar Pustaka + Lampiran.


(7)

KATA PENGANTAR

Puji syukur kepada Allah SWT yang telah memberikan nikmat kesehatan dan panjang umur kepada penulis, karena penulis dapat menyelesaikan penyusunan penulisan laporan skripsi ini yang berjudul “Perancangan Aplikasi Virtual Reality Pembelajaran Pergerakan Bumi dan Bulan Bagi Siswa Kelas 6 Sekolah Dasar (Studi Kasus: SDN Kebayoran Lama Selatan 13 Pagi)”

Penulis juga telah berusaha sebaik-baiknya dalam menyusun laporan ini. Penulis juga menyadari bahwa skripsi ini tidak dapat terselesaikan dengan baik tanpa bantuan dari berbagai pihak. Untuk itu penulis ingin mengucapkan terima kasih yang sebesar-besarnya atas semua arahan, bimbingan, maupun bantuan dalam menyelesaikan laporan skripsi ini. Penulis mengucapkan terima kasih kepada:

1. Bapak DR. Syopiansyah Jaya Putra, M. Sis selaku Dekan Fakultas Sains dan Teknologi UIN Syarif Hidayatulah Jakarta.

2. Bapak Yusuf Durrachman, M.Sc , MIT selaku Ketua Program Studi Teknik Informatika dan Ibu Viva Arifin, M.MSi selaku Sekretaris Program Studi Teknik Informatika.

3. Ibu Arini, MT., M.Eng selaku Dosen Pembimbing I, dan Bapak DR. Rusdianto Rustam, M.Sc selaku Dosen Pembimbing II yang telah memberikan arahan serta masukan dalam menyelesaikan skripsi ini.


(8)

4. Seluruh Dosen Teknik Informatika yang tidak dapat penulis sebutkan satu persatu yang telah memberikan ilmu selama penulis menyelesaikan studi. 5. Seluruh Staff Jurusan TI/SI dan staff Akademik FST yang telah membantu

penulis dalam masa perkuliahan.

6. Kedua Orang Tua dan adikku yang tidak henti-hentinya memberikan dukungan, motivasi, dukungan dan doa kepada penulis sampai sekarang ini. 7. Luluk Mitasari, atas doa, dukungan, waktu serta perhatiannya selama ini

kepada penulis.

8. Teman-teman Teknik Informatika angkatan 2006, terutama Angga Saputra, Kartika Ika Sari Puteri, Dyah Astari Widyaningsih, Icheberlianti dan Wahyu Rifai yang selalu memberikan banyak dukungan serta doa kepada penulis. 9. Kepada semua pihak yang yang tidak dapat disebutkan satu-persatu terima

kasih atas bantuan serta semangat motivasi yang diberikan.

Penulis juga menyadari masih banyaknya kekurangan dalam pembuatan laporan ini, maka dari itu, penulis mengucapkan maaf yang sebesar-besarnya jika dalam proses pembuatan laporan skripsi ini ada hal-hal yang kurang berkenaan. Penulis juga mengharapkan saran serta kritik dari semua pihak agar laporan ini bisa menjadi lebih baik lagi.

Akhir kata, penulis berharap agar pembuatan laporan skripsi ini berguna bari penulis maupun bagi pembacanya. Amin.

Jakarta, Juli 2011


(9)

DAFTAR ISI

Halaman

Halaman Sampul ... i

Halaman Judul ... ii

Lembar Pengesahan Pembimbing ... iii

Lembar Pengesahan Ujian ... iv

Lembar Pernyataan ... v

Abstraksi ... vi

Kata Pengantar ... vii

Daftar Isi ... ix

Daftar Gambar ... xiv

Daftar Tabel ... xx

Daftar Lampiran ... xxi

BAB I PENDAHULUAN ... 1

1.1 Latar Belakang ... 1

1.2 Perumusan Masalah ... 5

1.3 Batasan Masalah ... 5

1.4 Tujuan Penemitian ... 7

1.5 Manfaat Penelitian ... 7

1.6 Metode Penelitian ... 9

1.6.1 Metode Pengumpulan Data ... 9

1.6.2 Metode Pengembangan Aplikasi ... 10

1.7 Sistematika Penulisan ... 11


(10)

2.1 Pengertian Aplikasi ... 13

2.2 Virtual Reality ... 14

2.2.1 Manfaat dan Tujuan Virtual Reality ... 14

2.2.2 Metode Penyajian Virtual Reality ... 15

2.2.3 Virtual Reality Berbasis Dekstop ... 16

2.3 Pengertian Pembelajaran ... 18

2.4 Pergerakan Bumi dan Bulan ... 18

2.5 Deteksi Tumbukan (Collision Detection) ... 21

2.6 Modelsunderray ... 22

2.7 2 Ray Wall Collision ... 23

2.8 Pemrograman Lingo ... 25

2.9 Konsep Pemrograman Beorientasi Objek ... 28

2.10 UML (Unified Modelling Language)... …..31

2.11 Object Oriented Analysis and Design (OOAD) ... 43

2.11.1 Pengertian Analisis dan Desain ... 43

2.11.2 Pengertian Object Oriented Analysis and Design ... 44

2.11.3 Tahapan Object Oriented Analysis and Design ... 45

2.12 Game ... 53

2.13 Teknik Pemodelan Low Poly ... 55

2.10.1 Manfaat Penggunaan Pemodelan Low Poly ... 56

2.10.2 Teknik-Teknik Pemodelan Low Poly ... 56

2.10.3 Texture Mapping ... 57


(11)

2.11.1 Pemodelan dengan Parametric Object ... 58

2.11.2 Animasi dengan Path Constraint ... 59

2.11.3 Efek Renderasi dengan Lens Effects Glow ... 60

2.12 Multimedia ... 61

2.12.1 Pengertian Multimedia ... 61

2.12.2 Elemen Multimedia ... 63

2.12.3 Penggunaan multimedia ... 66

2.13 Interaksi Manusia Komputer ... 69

2.13.1 Pengertian Interaksi Manusia Komputer ... 69

2.13.2 Fungsi Interaksi Manusia Komputer ... 70

2.13.3 Panduan Merancang Interaksi Manusia Komputer ... 70

2.14 Metode Pengembangan Aplikasi Multimedia ... 72

2.15 Perangkat Lunak Pengembangan Aplikasi ... 75

2.15.1 3D Studio Max ... 76

2.15.2 Macromedia Director ... 78

2.15.3 Adobe Photoshop ... 81

2.16 Perangkat Pengembangan Sistem ... 83

2.16.1 Flowchart ... 83

2.16.2 State Transition Diagram ... 89

2.16.3 Struktur Navigasi ... 91

BAB III METODOLOGI PENELITIAN ... 95

3.1 Metode Pengumpulan Data ... 95


(12)

3.1.2 Studi Pustaka ... 97

3.1.3 Studi Literatur ... 97

3.1.4 Studi Kelayakan ... 97

3.2 Metode Pengembangan Aplikasi Multimedia ... 98

3.2.1 Kebutuhan Sistem ... 99

3.2.2 Pertimbangan Desain ... 100

3.2.3 Implementasi ... 101

3.2.4 Evaluasi ... 102

BAB IV HASIL DAN PEMBAHASAN ... 103

4.1 Analisa Hasil Pengumpulan Data ... 103

4.1.1 Studi Lapangan ... 103

4.1.2 Observasi (pengamatan) ... 104

4.1.3 Studi Pustaka ... 105

4.1.4 Studi Literatur ... 105

4.1.5 Studi Kelayakan ... 107

4.2 Identifikasi Kebutuhan Pengguna ... 110

4.3 Tahapan Pengembangan Aplikasi ... 111

4.4 Kebutuhan Sistem ... 112

4.4.1 Mendefinisikan Sistem ... 112

4.4.2 Kebutuhan dan Profil Pengguna ... 113

4.4.3 Pertimbangan Perangkat Keras dan Perangkat Lunak . 114 4.4.4 Pertimbangan Penyebaran Sistem... 115


(13)

4.5.1 Metafora Desain ... 117

4.5.2 Tipe Informasi ... 117

4.5.3 Struktur Navigasi ... 118

4.5.4 Persiapan dan Integrasi Media ... 120

4.5.5 Perancangan Layar ... 121

4.5.6 Perancangan State Transition Diagram ... 134

4.5.7 Perancangan Flowchart ... 140

4.5.8 OOAD pada Implementasi 2 Ray Wall Collision ... 149

4.6 Implementasi ... 160

4.6.1 Prototyping ... 161

4.6.1.1 Pembangunan Visualisasi 3 Dimensi ... 161

4.6.1.2 Pembangunan Game Evaluasi ... 169

4.6.1.3 Pembangunan Menu Utama ... 182

4.6.2 Beta Testing ... 184

4.6.2.1 Pengujian Penerapan 2 Ray Wall Collision .. 184

4.6.2.2 Pengujian Penerapan Pemodelan Low Poly .. 185

4.6.2.3 Pengujian Black-Box Pada Aplikasi ... 186

4.6.2.4 Pengujian Dengan Skenario Pada Aplikasi .. 189

4.7 Evaluasi ... 197

BAB V KESIMPULAN DAN SARAN ... 203

5.1 Kesimpulan ... 203

5.2 Saran ... 204


(14)

DAFTAR GAMBAR

Halaman

Gambar 2.1 Contoh Penggunaan Virtual Reality ... 17

Gambar 2.2 Pergerakan Bumi dan Bulan ... 19

Gambar 2.3 Deteksi Tumbukan ... 22

Gambar 2.4 Penggunaan 2 Berkas Sinar Pendeteksi Tumbukan ... 24

Gambar 2.5 Penggunaan Seberkas Sinar Pendeteksi Tumbukan ... 25

Gambar 2.6 Contoh Use Case Diagram ... 33

Gambar 2.7 Contoh Class Diagram ... 35

Gambar 2.8 Contoh Statechart Diagram ... 36

Gambar 2.9 Contoh Activity Diagram ... 38

Gambar 2.10 Contoh Sequence Diagram ... 39

Gambar 2.11 Contoh Collaboration Diagram ... 40

Gambar 2.12 Contoh Component Diagram ... 42

Gambar 2.13 Contoh Deployment Diagram ... 43

Gambar 2.14 Pendekatan Representasi Objek dalam OOAD ... 45

Gambar 2.15 Tahapan dalam OOAD... 45

Gambar 2.16 Contoh Relasi antar Tahapan dalam OOAD ... 51

Gambar 2.17 Penerapan Low Poly Modelling ... 57

Gambar 2.18 Contoh Penerapan Texture Mapping ... 58

Gambar 2.19 Contoh Parametric Object ... 59


(15)

Gambar 2.21 Contoh Penggunaan Lens Effect Glow ... 61

Gambar 2.22 Siklus Pengembangan Aplikasi Multimedia ... 73

Gambar 2.23 Tampilan Kerja 3D Studio Max ... 77

Gambar 2.24 Tampilan Kerja Macromedia Director ... 80

Gambar 2.25 Tampilan kerja Adobe Photoshop ... 82

Gambar 2.26 Contoh Flowchart Sistem Alur ... 89

Gambar 2.27 Model Navigasi Linier ... 92

Gambar 2.28 Model Navigasi Hirarki ... 93

Gambar 2.29 Model Navigasi Spoke and Hub ... 94

Gambar 2.30 Model Navigasi Full Web ... 94

Gambar 4.1 Siklus Pengembangan Aplikasi Multimedia ... 111

Gambar 4.2 Struktur Navigasi Aplikasi ... 119

Gambar 4.3 Rancangan Layar Intro ... 121

Gambar 4.4 Rancangan Layar Menu Utama ... 122

Gambar 4.5 Rancangan Layar Menu Visualisasi ... 123

Gambar 4.6 Rancangan Layar Gerakan Bumi ... 124

Gambar 4.7 Rancangan Layar Gerakan Bulan ... 125

Gambar 4.8 Rancangan Layar Gerakan Bumi & Bulan ... 126

Gambar 4.9 Rancangan Layar Profil Creator ... 127

Gambar 4.10 Rancangan Layar Cerita Menggunakan Teks ... 128

Gambar 4.11 Rancangan Layar Cerita Menggunakan Video ... 129

Gambar 4.12 Rancangan Layar Cerita Virtual Reality ... 130


(16)

Gambar 4.14 Rancangan Layar Pertanyaan ... 132

Gambar 4.15 Rancangan Layar Permainan Puzzle ... 133

Gambar 4.16 Rancangan STD Tampilan Intro ... 134

Gambar 4.17 Rancangan STD Tampilan Menu Utama ... 134

Gambar 4.18 Rancangan STD Tampilan Menu Visualisasi ... 135

Gambar 4.19 Rancangan STD Tampilan Gerakan Bumi ... 136

Gambar 4.20 Rancangan STD Tampilan Gerakan Bulan ... 136

Gambar 4.21 Rancangan STD Tampilan Gerakan Bumi & Bulan ... 136

Gambar 4.22 Rancangan STD Tampilan Profil Creator ... 137

Gambar 4.23 Rancangan STD Tampilan Pengantar Permainan ... 137

Gambar 4.24 Rancangan STD Tampilan Permainan Labirin ... 138

Gambar 4.25 Rancangan STD Tampilan Permainan Puzzle ... 139

Gambar 4.26 Rancangan Flowchart Intro ... 140

Gambar 4.27 Rancangan Flowchart Menu Utam ... 141

Gambar 4.28 Rancangan Flowchart Menu Visualisasi ... 142

Gambar 4.29 Rancangan Flowchart Gerakan Bumi ... 143

Gambar 4.30 Rancangan Flowchart Gerakan Bulan ... 144

Gambar 4.31 Rancangan Flowchart Gerakan Bumi dan Bulan ... 144

Gambar 4.32 Rancangan Flowchart Profil Creator ... 145

Gambar 4.33 Rancangan Flowchart Cerita Pengantar Permainan ... 146

Gambar 4.34 Rancangan Flowchart Permainan Labirin ... 147

Gambar 4.35 Rancangan Flowchart Permainan Puzzle ... 148


(17)

Gambar 4.37 Tahapan dalam OOAD... 152

Gambar 4.38 Use Case Diagram Virtual Reality ... 154

Gambar 4.39 System Sequence Diagram Virtual Reality ... 155

Gambar 4.40 Conceptual Class Virtual Reality ... 156

Gambar 4.41 Conceptual Class dengan Asosiasi ... 156

Gambar 4.42 Conceptual Class dengan Asosiasi dan Atribut ... 157

Gambar 4.43 Interaction Diagram Sistem Virtual Reality ... 158

Gambar 4.44 Design Class Diagram Sistem Virtual Reality ... 159

Gambar 4.45 Perancangan Konten Video ... 161

Gambar 4.46 Penerapan Texture Mapping ... 162

Gambar 4.47 Perancangan Konten Shockwave 3D ... 163

Gambar 4.48 Perancangan Konten Panorama Quicktime ... 164

Gambar 4.49 Perancangan Background tampilan visualisasi ... 165

Gambar 4.50 Perancangan Tombol tampilan visualisasi ... 166

Gambar 4.51 Proses Perekaman Narasi ... 166

Gambar 4.52 Proses Penggabungan Visualisasi 3 Dimensi ... 168

Gambar 4.53 Perancangan Video Cerita Pengantar Permainan ... 171

Gambar 4.54 Perancangan Shockwave 3D Cerita Pengantar Permainan ... 172

Gambar 4.55 Desain Labirin ... 172

Gambar 4.56 Perancangan Shockwave 3D Permainan Labirin ... 173

Gambar 4.57 Perancangan konten grafis Permainan ... 174

Gambar 4.58 Perancangan Konten Permainan Puzzle ... 174


(18)

Gambar 4.60 Pengemasan Permainan Labirin ... 176

Gambar 4.61 Pengemasan Permainan Puzzle ... 177

Gambar 4.62 Pemodelan Video Pembuka Aplikasi... 183

Gambar 4.63 Pemodelan Virtual Reality Menu Utama ... 183

Gambar 4.64 Pengujian Deteksi Tumbukan 2 Ray Wall Collision ... 184

Gambar 4.65 Pengujian Aplikasi Virtual Reality Objek Low Poly ... 185

Gambar 4.66 Tampilan Video Pembuka ... 190

Gambar 4.67 Interaksi dengan Objek dalam Virtual Reality ... 190

Gambar 4.68 Visualisasi 3D dengan Konten ... 191

Gambar 4.69 Visualisasi 3D Gerakan Bumi ... 191

Gambar 4.70 Visualisasi 3D Gerakan Bulan... 192

Gambar 4.71 Visualisasi 3D Pergerakan Bumi dan Bulan ... 192

Gambar 4.72 Tampilan Awal Permainan Evaluasi ... 193

Gambar 4.73 Tampilan Pengantar Permainan ... 193

Gambar 4.74 Tampilan Awal Permainan Labirin... 194

Gambar 4.75 Tampilan Soal Permainan Labirin ... 194

Gambar 4.76 Tampilan Game Over Permainan Labirin ... 195

Gambar 4.77 Tampilan Permainan Puzzle ... 195

Gambar 4.78 Tampilan Berhasil Permainan Puzzle ... 196

Gambar 4.79 Tampilan Gagal Permainan Puzzle ... 196

Gambar 4.80 Perancangan Struktur Navigasi Permainan Ketangkasan ... 199

Gambar 4.81 Perancangan Layar Permainan Ketangkasan ... 200


(19)

Gambar 4.83 Perancangan flowchart Permainan Ketangkasan ... 201 Gambar 4.84 Pembuatan Permainan Ketangkasan ... 201


(20)

DAFTAR TABEL

Halaman

Tabel 2.1 Konsepsi Dasar UML ... 32

Tabel 2.2 GRASP ... 49

Tabel 2.3 Simbol Flowchart ... 86

Tabel 2.4 Notasi dalam State Transition Diagram ... 91

Tabel 4.1 Perbandingan Studi Literatur ... 106

Tabel 4.2 Kelebihan Serta Kekurangan Penelitian Yang Dilakukan ... 107

Tabel 4.3 Sumber Konten Aplikasi ... 109

Tabel 4.4 Kebutuhan Berdasarkan Pengguna ... 110

Tabel 4.5 Kebutuhan Minimum Perangkat Lunak ... 114

Tabel 4.6 Use Case Virtual Reality ... 153

Tabel 4.7 Pengujian Black-box Aplikasi Bagian Sistem Menu ... 186

Tabel 4.8 Pengujian Black-box Aplikasi Bagian Visualisai 3 Dimensi .... 186


(21)

DAFTAR LAMPIRAN

Halaman Lampiran 1. SK Dosen Pembimbing ... L1 – 1 Lampiran 2. Surat Keterangan Penerimaan Penelitian ... L2 - 1 Lampiran 3. Printscreen Hasil Pengujian Aplikasi ... L3 - 1 Lampiran 4. Hasil Wawancara Sebelum Penelitian ... L4 - 1 Lampiran 5. Hasil Wawancara Sesudah Penelitian ... L5 - 1 Lampiran 6. Kuisioner Sesudah Penelitian dan Hasilnya ... L6 - 1


(22)

BAB I

PENDAHULUAN

Bab ini merupakan tahapan perencanaan penelitian yang meliputi latar belakang diadakannya penelitian, perumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian serta metode penelitian yang akan digunakan. 1.1 Latar Belakang

Matahari adalah pusat tata surya. Sementara itu, Bumi merupakan planet anggota tata surya. Bumi memiliki satelit bernama Bulan. Bumi dan Bulan masing-masing berotasi pada porosnya. Selain itu, Bumi berevolusi mengelilingi Matahari. Pada saat yang sama, Bulan berevolusi mengelilingi Bumi. Revolusi Bumi dan Bulan menyebabkan terjadinya gerhana Matahari dan Bulan serta menyebabkan pengaruh tertentu terhadap Bumi seperti terjadinya siang dan malam, perbedaan waktu, serta terjadinya pergantian musim di Bumi.

Pergerakan Bumi dan Bulan merupakan salah satu materi ilmu pengetahuan alam yang diberikan kepada siswa kelas 6 sekolah dasar. Sebagai suatu materi berisikan penggambaran mengenai pergerakan objek-objek tertentu, tentunya media yang digunakan haruslah mampu memvisualisasikan pergerakan objek-objek tersebut dalam hal ini Bumi serta Bulan secara baik, jelas serta interaktif agar materi yang disampaikan dapat lebih mudah dipahami serta diingat, terlebih jika ditujukan terhadap siswa sekolah dasar. Media yang masih sering digunakan saat ini adalah buku


(23)

maupun alat peraga yang tentunya tergolong minim interaksi serta kurang dapat memberikan penggambaran yang jelas sehingga sulit untuk dipahami serta kurang menarik. Permasalahan tersebut seperti kurangnya alat peraga juga membuat staf pengajar kesulitan dalam memberikan gambaran mengenai pergerakan Bumi dan Bulan tersebut. Untuk itulah perlu dikembangkan suatu media penyampaian baru yang menarik serta interaktif sehingga tentunya dapat lebih membantu para siswa dalam memahami materi yang diberikan serta lebih menarik minat para siswa dalam mempelajari materi yang diberikan dalam hal ini mengenai pergerakan Bumi dan Bulan dan juga memudahkan staf pengajar dalam menerangkan materi tersebut.

Salah satu alternatif yang ditawarkan oleh teknologi saat ini yaitu menggunakan sarana multimedia untuk menyampaikan informasi. Informasi yang ingin disampaikan menjadi lebih menarik melalui multimedia yang interaktif. Kemampuan multimedia untuk menyampaikan informasi tidak hanya terbatas pada gambar dan teks saja, melainkan dapat menawarkan nilai lebih seperti animasi, audio, dan video. Virtual Reality merupakan salah satu alternatif media yang dapat dipilih khususnya untuk memberikan pengalaman virtual dalam mempelajari materi pergerakan bumi dan bulan yang disajikan melalui visualisasi yang dibuat secara 3 dimensi. Aplikasi pembelajaran berupa virtual reality serta penyajian materi dalam bentuk visualisasi 3 dimensi tentunya akan menambah daya tarik melalui interaktifitas yang ditawarkan serta mampu memberikan gambaran yang


(24)

jelas terkait materi-materi pergerakan bumi dan bulan. Selain itu untuk lebih menambah daya tarik serta interaktifitas, modul evaluasi dalam aplikasi pembelajaran akan dikemas dalam bentuk game (permainan) yang merupakan perpaduan game 2 dimensi dan 3 dimensi.

2 Ray Wall Collision merupakan salah satu teknik collision detection dalam pemrograman lingo yang digunakan untuk mendeteksi tumbukan dalam suatu lingkungan virtual (shockwave 3D). 2 ray wall collision memanfaatkan 2 buah berkas sinar dalam sumbu x dan y yang akan mendeteksi keberadaan objek 3 dimensi lainnya untuk selanjutnya dilakukan penanganan jika terjadi tumbukan. Deteksi tumbukan sendiri merupakan landasan dasar bagi suatu aplikasi virtual reality yang membuat objek-objek di dalam lingkungan virtual tidak saling menembus dan berpotongan.

Pemodelan dengan jumlah polygon yang rendah atau pemodelan low poly merupakan suatu teknik pemodelan yang mengorbankan suatu detail model 3 dimensi dengan tujuan efisiensi geometri yang dapat meringankan beban kerja sistem saat dilakukannya perancangan maupun pada saat renderasi. Karena hanya membutuhkan sedikit memori, maka akan lebih mudah pada saat dianimasikan serta lebih cepat saat dirender

Sekolah Dasar Negeri Kebayoran Lama Selatan 13 Pagi menilai pentingnya digunakan suatu media penyampaian materi pelajaran yang lebih interaktif serta menarik agar dapat lebih membantu para siswa dalam belajar. Dalam hal ini akan dikembangkan terhadap materi pergerakan Bumi dan Bulan yang memang dalam proses pembelajarannya mengalami kendala


(25)

terkait minimnya alat peraga yang tersedia. Melalui media digital yaitu multimedia dalam bentuk virtual reality dengan penyajian materi berupa visualisasi 3 Dimensi yang dibangun dengan menerapkan teknik pemodelan 3 dimensi low poly serta penyajian sistem menu dan modul evaluasi dalam bentuk game dengan pemanfaatan teknik 2 ray wall collision yang akan menghasilkan aplikasi virtual reality dengan performa yang baik serta akan memberikan pengalaman virtual dalam mempelajari materi pergerakan bumi dan bulan yang dihasilkan yang selanjutnya akan diimplementasikan terhadap sarana pengajaran berupa komputer yang telah tersedia di sekolah dasar tersebut.

Dari pemikiran-pemikiran tersebut maka dalam penelitian ini akan mengembangkan aplikasi virtual reality serta game evaluasi pembelajaran bumi dan bulan dengan pemanfaatan teknik 2 ray wall collision sebagai pendeteksi tumbukan serta teknik pemodelan 3 dimensi low poly dalam membangun visualisasi 3 dimensi. Aplikasi ini berfungsi sebagai penyampaian informasi yang dibutuhkan mengenai pergerakan Bumi dan Bulan yang diperuntukkan bagi siswa kelas 6 sekolah dasar. Adapun judul yang diangkat adalah “Perancangan Aplikasi Virtual Reality Pergerakan Bumi dan Bulan Bagi Siswa Kelas 6 Sekolah Dasar (Study Kasus : SDN Kebayoran Lama Selatan 13 Pagi).


(26)

1.2 Perumusan Masalah

Perumusan masalah dari penelitian ini adalah:

1. Bagaimana membuat aplikasi virtual reality pembelajaran pergerakan bumi dan bulan bagi siswa kelas 6 sekolah dasar?

2. Bagaimana menerapkan teknik 2 ray wall collision ke dalam lingkungan virtual 3 dimensi sebagai penunjang bagi aplikasi virtual reality?

3. Bagaimana menyajikan materi pembelajaran pergerakan bumi dan bulan dalam bentuk visualisasi 3 dimensi menggunakan teknik pemodelan low poly sehingga dapat memberikan penggambaran yang jelas mengenai peristiwa-peristiwa yang terkait pergerakan bumi dan bulan?

4. Bagaimana menyajikan modul evaluasi pembelajaran pergerakan bumi dan bulan dalam bentuk game sehingga lebih menambah daya tarik serta interaktifitas dari pengguna?

5. Bagaimana merancang suatu gameplay yang akan diterapkan dalam game evaluasi pembelajaran pergerakan bumi dan bulan?

1.3 Batasan Masalah

Berdasarkan perumusan masalah di atas, maka peneliti telah menetapkan batasan-batasan masalah, yaitu:

1. Aplikasi virtual reality serta game evaluasi pembelajaran pergerakan bumi dan bulan dibuat melalui pemanfaatan teknik 2 ray wall collision sebagai teknik collision detection (deteksi tumbukan) yang diimplementasikan ke dalam lingkungan 3 dimensi melalui pemrograman lingo. 2 Ray Wall


(27)

Collision menggunakan 2 berkas sinar yang digunakan untuk mendeteksi keberadaan objek lain sehingga dapat dilakukan penanganan jika terjadi tumbukan antar objek.

2. Implementasi 2 ray wall collision pada sistem dilakukan menggunakan analisis dan desain pemrograman berorientasi objek, karena bahasa pemrograman yang digunakan yaitu lingo merupakan bahasa pemrograman berorientasi objek.

3. Penyajian materi pergerakan bumi dan bulan dibuat dalam bentuk visualisasi 3 dimensi yang dibuat menggunakan teknik pemodelan 3 dimensi low poly dimana hanya digunakan sedikit polygon dalam perancangan model 3 dimensi yang digunakan serta pemanfaatan texture mapping.

4. Modul evaluasi pembelajaran dikemas dalam bentuk game interaktif yang merupakan perpaduan animasi 3 dimensi serta 2 dimensi.

5. Perancangan gameplay modul evaluasi dibuat melalui implementasi logika permainan ke dalam pemrograman lingo.

6. Hanya membahas materi pergerakan Bumi dan Bulan sesuai dengan materi yang terdapat dalam bidang studi ilmu pengetahuan alam bagi siswa kelas 6 sekolah dasar.

7. Penelitian serta ujicoba aplikasi dilakukan pada Sekolah Dasar Negeri Kebayoran Lama Selatan 13 Pagi, khususnya terhadap siswa serta staf pengajar kelas 6.


(28)

8. Teknik pendistribusian dilakukan melalui pemanfaatan media CD (Compact Disc) atau media sejenis seperti DVD dengan kapasitas yang lebih besar tergantung pada ukuran aplikasi yang dihasilkan.

1.4 Tujuan Penelitian

Tujuan dari penelitian ini adalah membuat suatu aplikasi virtual reality pembelajaran pergerakan bumi dan bulan bagi siswa kelas 6 sekolah dasar dengan memanfaatkan visualisasi 3 dimensi sebagai media penyajian informasi serta modul evaluasi yang dikemas dalam bentuk game. Aplikasi dibuat dalam bentuk virtual reality serta modul evaluasi dikemas dalam bentuk game bertujuan untuk menambah daya tarik serta interaktifitas dari pengguna.

1.5 Manfaat Penelitian

Manfaat dari penelitian yang dilakukan ini adalah: Bagi Peneliti:

1. Mengetahui penerapan pemodelan 3 dimensi dalam aplikasi virtual reality. 2. Mengetahui pemanfaatan teknik 2 ray wall collision sebagai deteksi

tumbukan yang digunakan dalam virtual reality.

3. Mengetahui pemanfaatan teknik pemodelan 3 dimensi low poly sebagai suatu teknik pemodelan 3 dimensi.


(29)

5. Mengetahui perancangan suatu lingkungan penyampaian informasi virtual mengenai pergerakan Bumi dan Bulan yang diperuntukkan bagi siswa kelas 6 sekolah dasar.

Bagi Pengguna:

- Bagi siswa kelas 6 sekolah dasar, mendapatkan informasi mengenai pergerakan Bumi dan Bulan melalui aplikasi virtual reality.

- Bagi staf pengajar kelas 6 sekolah dasar, yaitu mendapatkan kemudahan dalam menjelaskan materi dalam hal ini pergerakan Bumi dan Bulan melalui media bantu aplikasi virtual reality.

Bagi Universitas:

1. Mengetahui kemampuan mahasiswa dalam menguasai materi pelajaran yang diperoleh dibangku kuliah.

2. Mengetahui kemampuan mahasiswa dalam menerapkan ilmunya dan sebagai bahan evaluasi.

3. Memberikan gambaran tentang kesiapan mahasiswa dalam menghadapi dunia kerja yang sebenarnya

Bagi Pembaca atau pihak lain:

Semoga penelitian ini berguna bagi pembaca sebagai informasi, khususnya bagi para pembaca yang memiliki minat dan kepentingan yang sama dan juga dapat dijadikan sebagai pembelajaran untuk membandingkan dengan konsep atau metode yang lain dalam mengembangkan suatu aplikasi virtual reality.


(30)

1.6 Metode Penelitian

Metode penelitian yang peneliti gunakan dalam penelitian skripsi ini adalah sebagai berikut:

1.6.1 Metode Pengumpulan Data

Berikut beberapa proses yang dilalui peneliti dalam pengumpulan data guna membantu dalam penelitian ini, yaitu:

Studi Lapangan

Peneliti melakukan wawancara serta observasi sebagai bentuk dari studi lapangan pada tempat dilakukannya penelitian untuk mengumpulkan data-data yang diperlukan sebagai penunjang penelitian ini.

- Wawancara

Peneliti mengumpulkan data secara tatap muka langsung dengan pihak terkait guna mendapatkan data-data dan keterangan yang diperlukan.

- Observasi (Pengamatan)

Pengumpulan data dan informasi dengan cara meninjau dan melakukan pengamatan secara langsung ke objek penelitian guna memperoleh data atau gambaran serta keterangan terhadap sistem yang sedang berjalan.

Studi Pustaka

Penulis melakukan studi pustaka sebagai bahan utama dalam pembuatan skripsi ini. Pengumpulan data dengan cara


(31)

mengambil dari sumber-sumber media cetak maupun elektronik yang dapat dijadikan acuan penelitian dan penulisan skripsi ini.

Studi Literatur

Dalam penentuan penelitian skripsi ini, diperlukan sebuah perbandingan studi literatur sejenis yang erat hubungannya dengan tema penulisan skripsi ini. Perbandingan studi sejenis ini diperlukan agar nantinya penelitian ini dapat bermanfaat dan menjadi pelengkap dan penyempurna dari studi-studi literatur yang telah dilaksanakan sebelumnya.

Studi Kelayakan

Studi Kelayakan diperlukan untuk menilai apakah sistem yang dibuat ini layak untuk dikembangkan dengan mempertimbangkan beberapa aspek yang mencakup kelayakan teknis, kelayakan ekonomi, kelayakan hukum dan etika maupun kelayakan operasional.

1.6.2 Metode Pengembangan Aplikasi

Metode yang dipakai peneliti dalam membuat aplikasi ini adalah metode IMSDD (Interactive Multimedia System Design and Development) yang meliputi tahap-tahap berikut:


(32)

Mencakup definisi sistem, profil serta kebutuhan pengguna, hardware dan software dan pertimbangan pendistribusian.

2. Pertimbangan Perancangan (Design Consideration)

Mencakup pemilihan metafora desain, pendeskripsian tipe-tipe informasi, perancangan struktur navigasi dan persiapan serta kemungkinan integrasi media.

3. Implementasi (Implementation)

Tahap implementasi meliputi pembuatan purwarupa (prototyping) serta dilakukannya beta testing terhadap purwa rupa tersebut.

4. Evaluasi (Evalution)

Tahapan evaluasi merupakan tahap ujicoba terhadap aplikasi yang dihasilkan untuk mengetahui apakah telah sesuai dengan tujuan yang ditetapkan sebelumnya.

1.7 Sistematika penulisan

Sistematika penulisan laporan yang merupakan laporan analisa hasil penelitian terdiri atas :

BAB I PENDAHULUAN

Bab ini berisi pendahuluan yang terdiri dari latar belakang, perumusan masalah, batasan masalah, tujuan penulisan,


(33)

manfaat penulisan, metode penelitian, dan sistematika penulisan.

BAB II LANDASAN TEORI

Bab ini menguraikan berbagai teori yang mendukung dan mendasari penelitian skripsi ini, yakni menjelaskan pengertian-pengertian dari Virtual Reality, Teknik pemodelan 3 dimensi, Pergerakan bumi dan bulan, Game, metode serta teknik yang digunakan dalam pembangunan aplikasi.

BAB III METODOLOGI PENELITIAN

Pada bab ini berisi mengenai metode pengumpulan data dan metode yang digunakan dalam pengembangan aplikasi yang diajukan.

BAB IV ANALISA DAN PERANCANGAN

Pada Bab ini membahas mengenai tahapan pengembangan yang digunakan seperti kebutuhan sistem, pertimbangan perancangan, implementasi dan evaluasi.

BAB V PENUTUP

Bab ini adalah bab terakhir yang menyajikan kesimpulan-kesimpulan dari hasil penelitian yang telah dilaksanakan serta saran-saran untuk pengembangan sistem yang lebih baik lagi.


(34)

BAB II

LANDASAN TEORI

Bab ini merupakan pembahasan teori-teori yang menjadi landasan teori dari penelitian ini. Pembahasan tersebut meliputi pengertian-pengertian seperti pengertian aplikasi, pembelajaran serta evaluasi, selain itu juga dijabarkan teknik yang digunakan seperti virtual reality, collision detection, 2 ray wall collision serta teknik pemodelan 3 dimensi yang digunakan. Analisis dan desain berorientasi objek. Teori-teori penunjang seperti game, multimedia serta interaksi manusia dan komputer. Perangkat lunak serta alat bantu pengembangan aplikasi.

2.1 Pengertian Aplikasi

Aplikasi, dalam ilmu komputer, adalah sebuah program komputer yang dirancang untuk membantu orang-orang yang melakukan jenis pekerjaan tertentu. Sebuah aplikasi berbeda dari sebuah sistem operasi (yang menjalankan komputer), sebuah utilitas (yang melakukan pemeliharaan atau untuk tujuan tugas umum) dan bahasa pemrograman (yang membuat program komputer). Tergantung pada pekerjaan yang sudah dirancang, aplikasi dapat memanipulasi teks, angka, grafik atau gabungannya. Beberapa paket aplikasi menawarkan kemampuan komputasi yang baik dengan fokus pada satu tugas, seperti pengolah kata. Paket aplikasi lainnya adalah perangkat lunak yang terintegrasi menawarkan kemampuan komputasi yang kurang tetapi di dalamnya


(35)

terdapat beberapa aplikasi, seperti pengolah kata, spreadsheet dan program database (Microsoft Encarta: 2009).

2.2 Virtual Reality

Virtual reality adalah teknologi tampilan dan pengendalian yang dapat melingkupi seseorang dalam lingkungan maya yang dibangkitkan secara interaktif oleh komputer (Wexelbalt, 1993). Virtual reality adalah bidang studi yang bertujuan untuk menciptakan sebuah sistem yang menyediakan pengalaman buatan kepada pengguna (Kim, 2005). Tidak ada definisi standar tentang virtual reality. Definisi yang paling umum dari Virtual reality adalah lingkungan tiruan yang diciptakan dengan perangkat keras dan perangkat lunak komputer dan disajikan kepada pemakai sehingga pemakai tersebut merasakan seperti dalam lingkungan nyata (Suyanto, 2003).

2.2.1 Manfaat dan Tujuan Virtual Reality

Virtual reality memungkinkan orang untuk mendapatkan pengalaman akan hal-hal yang sangat sulit atau bahkan tidak mungkin dicapai dalam kehidupan yang nyata, seperti pergi ke kutub selatan atau ke bulan. Pengalaman virtual amat berguna untuk berbagai tujuan termasuk pelatihan, pendidikan dan hiburan (Kim, 2005). Beberapa implikasi positif dari virtual reality akan digunakan dengan tujuan untuk mencegah kesalahan atau latihan percobaan dan kesalahan. Sebagai contoh, dalam bidang medis simulasi pembedahan akan berguna dalam pelatihan dokter-dokter baru dan siswa-siswi medis. Percobaan dengan prosedur yang baru


(36)

terhadap simulasi pasien dapat dimungkinkan. Dalam militer penggunaan dari simulasi penerbangan telah menjadi sebuah latihan selama bertahun-tahun. Penggunaan dari virtual reality akan menyediakan kemajuan yang lebih, situasi realistik untuk pelatihan militer baik penerbangan juga dalam pertempuran.

2.2.2 Metode Penyajian Virtual Reality

Terdapat beberapa metode dalam menyajikan virtual reality (Ausburn, 2004), metode-metode tersebut yaitu :

1. Virtual reality berbasis simulasi, merupakan jenis virtual reality yang digunakan dalam suatu simulasi dimana pengguna akan mendapatkan output berupa visual, audio serta gerakan sesuai dengan input yang diberikan. Contohnya adalah simulasi mengemudi dimana pengguna akan mendapatkan pengalaman tiruan seakan sedang mengemudikan suatu kendaraan.

2. Virtual reality berbasis gambaran avatar, merupakan jenis virtual reality dimana pengguna dapat tergabung dalam suatu lingkungan virtual sebagai avatar dari dirinya sendiri dan berinteraksi dengan pengguna lainnya yang terhubung dalam suatu sistem jaringan yang sama.

3. Virtual reality berbasis proyektor, merupakan jenis virtual reality dimana pemodelan lingkungan nyata memainkan peran penting dalam berbagai aplikasi virtual reality, seperti navigasi robot, konstruksi pemodelan dan simulasi pesawat. Melalui penggunaan proyektor


(37)

sebagai penghasil gambar, maka akan dihasilkan suatu gambar realistik yang akan menyajikan pengalaman virtual yang cukup nyata. 4. Virtual reality berbasis desktop, merupakan jenis virtual reality yang

menyajikan sebuah dunia 3 dimensi virtual pada layar desktop biasa tanpa menggunakan peralatan khusus pelacak gerakan. Banyak permainan komputer modern dapat digunakan sebagai contoh, menggunakan berbagai pemicu, karakter responsif, dan perangkat interaktif seperti untuk membuat pengguna merasa seolah-olah mereka berada dalam dunia maya.

5. Virtual reality dengan kenyataan mendalam, merupakan jenis virtual reality dengan tingkat realitas virtual yang sangat mendekati kenyataan. Hal ini dimungkinkan dengan pemanfaatan sensor-sensor penunjang realitas virtual yang membuat pengguna merasakan pengalaman buatan sedekat mungkin dengan kenyataan.

Gambar 2.1 Contoh Penggunaan Virtual Reality 2.2.3 Virtual Reality Berbasis Desktop

Virtual reality berbasis desktop merupakan suatu bentuk aplikasi virtual reality yang tidak sepenuhnya menyediakan pengalaman buatan kepada penggunanya. Hal ini karena virtual reality jenis ini hanya


(38)

memanfaatkan screen dari suatu desktop dalam menyajikan pengalaman virtual dalam bentuk visual. Aplikasi virtual reality jenis ini cenderung lebih murah serta mudah dalam pembuatannya karena hanya memerlukan lebih sedikit perangkat keras serta pengolahan data yang lebih sedikit serta sederhana dibanding jenis virtual reality dengan banyak penggunaan sensor. Tambahan lain yang dapat digunakan dalam virtual reality jenis ini adalah pemakaian audio yang diintegrasikan dengan sistem virtual.

Seperti halnya sistem virtual reality lainnya, jenis virtual reality ini juga menyediakan lingkungan buatan (2D-3D) dimana pengguna dapat bergerak serta berinteraksi dengan lingungan tersebut melalui pemberian input terhadap sistem. Pemberian input biasanya dilakukan melalui keyboard atau mouse. Selanjutnya sistem akan mengolah input tersebut untuk menghasilkan output yang akan dikembalikan kepada pengguna melalui layar tampilan.

Virtual reality jenis ini biasa diaplikasikan pada industri video games serta pada bidang pendidikan karena dapat dengan mudah disebar luaskan baik melalui media web maupun CD/DVD. Selain itu virtual reality jenis ini juga cenderung lebih mudah digunakan karena sudah berupa aplikasi standar yang dapat dijalankan pada komputer kebanyakan pengguna (Ausburn, 2004).


(39)

Belajar adalah proses perubahan perilaku secara aktif, proses mereaksi terhadap semua situasi yang ada di sekitar individu, proses yang diarahkan pada suatu tujuan, proses berbuat melalui berbagai pengalaman, proses melihat, mengamati, dan memahami sesuatu yang dipelajari.

Pembelajaran yang diidentikkan dengan kata “mengajar” berasal dari kata dasar “ajar” yang berarti petunjuk yang diberikan kepada orang supaya diketahui (diturut) ditambah dengan awalan “pe” dan akhiran “an menjadi “pembelajaran”, yang berarti proses, perbuatan, cara mengajar atau mengajarkan sehingga anak didik mau belajar (KBBI, 2002).

2.4 Pergerakan Bumi dan Bulan

Pergerakan bumi dan bulan merupakan serangkaian peristiwa pergerakan yang melibatkan bumi, bulan serta matahari sebagai objeknya. Matahari adalah pusat tata surya, sementara itu bumi merupakan planet anggota tata surya. Bumi memiliki satelit yang bernama bulan. Bumi dan bulan masing-masing berotasi pada porosnya. Selain itu, bumi berevolusi mengelilingi matahari. Pada saat yang sama, bulan berevolusi mengelilingi bumi. Revolusi bumi dan bulan menyebabkan terjadinya gerhana matahari dan bulan (Suhartanti, Zulaikha & Suryani, 2008).


(40)

Gambar 2.2 Pergerakan Bumi dan Bulan

Bumi mempunyai 2 macam gerakan, yaitu rotasi dan revolusi. Perputaran Bumi pada porosnya disebut rotasi bumi. Untuk 1 kali rotasi, bumi memerlukan waktu sehari (24 jam). Gerak rotasi bumi menyebabkan berbagai peristiwa seperti pergantian siang dan malam, gerak semu harian matahari, perbedaan waktu di berbagai tempat di dunia, serta perbedaan percepatan gravitasi di permukaan bumi. Gerakan bumi mengelilingi matahari disebut revolusi bumi. Untuk 1 kali revolusi bumi membutuhkan waktu 1 tahun (365¼ hari). Revolusi bumi membawa beberapa pengaruh terhadap bumi seperti pergantian musim serta gerak semu tahunan matahari.

Bulan mempunyai 2 macam gerakan, yaitu rotasi dan revolusi. Perputaran bulan pada porosnya disebut rotasi bulan. Untuk 1 kali rotasi, bulan membutuhkan waktu sebulan (29½ hari). Rotasi bulan tidak memberikan pengaruh apapun terhadap bumi (Suhartanti, Zulaikha & Suryani, 2008). Bulan bergerak mengelilingi bumi. Gerakan bulan mengelilingi bumi disebut revolusi bulan. Waktu yang diperlukan bulan untuk 1 kali revolusi adalah sebulan (29½ hari).


(41)

Bulan bergerak mengelilingi bumi, bumi bersama bulan mengelilingi matahari. Gerakan bumi dan bulan tersebut dapat menyebabkan terjadinya gerhana. Gerhana diartikan sebagai peristiwa tertutupnya suatu benda langit oleh benda langit lainnya. Setiap benda di angkasa yang disinari matahari akan memiliki bayangan. Begitu pula dengan bumi dan bulan. Daerah bayangan bumi dan bulan yang gelap dinamakan umbra. Sementara itu, daerah bayangan yang samar dinamakan penumbra. Bayangan bumi dapat jatuh mengenai bulan, sebaliknya bayangan bulan juga dapat mengenai bumi (Suhartanti, Zulaikha & Suryani, 2008).

Gerakan bumi dan bulan juga mempengaruhi penampakan permukaan bumi. Sebagai contohnya adalah pasang naik dan pasang surut air laut. Peristiwa ini dipengaruhi oleh gaya gravitasi bulan dan matahari. Saat bulan purnama, bumi, bulan dan matahari berada pada 1 garis lurus. Begitu pula saat bulan baru, posisi ini menyebabkan terjadinya pasang purnama. Pasang purnama adalah terjadinya pasang naik dan pasang surut tertinggi. Pada saat bulan paruh, posisi bulan, bumi dan matahari dapat membentuk sudut siku-siku. Hal ini mengakibatkan terjadinya pasang perbani. Pasang perbani merupakan pasang naik dan pasang surut terendah (Suhartanti, Zulaikha & Suryani, 2008).


(42)

2.5 Deteksi Tumbukan (Collision Detection)

Collision detection adalah landasan dasar terhadap berbagai jenis aplikasi, termasuk diantaranya permainan komputer, simulasi fisikal seperti animasi komputer, robotik, virtual prototyping, dan simulasi engineering. Pada permainan komputer Collision detection memastikan bahwa ilusi akan dunia yang sebenarnya tetap terjaga dengan mencegah karakter pemain berjalan menembus tembok atau terjatuh dari lantai. Pada animasi komputer, collision detection digunakan sebagai contoh untuk menggambarkan simulasi fisikal dari pakaian, memastikan bahwa kondisi pakaian sesuai dengan kondisi di kehidupan nyata di mana pakaian tidak jatuh dari tubuh karakter saat karakter bergerak. Collision detection digunakan pada perencanaan jalur pada aplikasi robotik, membantu robot bergerak menghindari rintangan dan pada virtual prototyping memungkinkan penyempurnaan prototype tanpa harus memproduksinya dalam bentuk fisik (Ericson, 2005). Urutan proses dari simulasi collision detection adalah sebagai berikut (Kim, 2005):

1. Membaca setiap input eksternal.

2. Melakukan perhitungan simulasi dan memperbarui grafik objek dan scene.

3. Memeriksa jika terjadi tumbukan dan menghasilkan respon. 4. Memperbarui letak dan orientasi kamera

5. Menggambar ulang scene 6. Kembali ke proses awal


(43)

Gambar 2.3 Deteksi Tumbukan

Terdapat beberapa teknik untuk mendeteksi tumbukan, di antaranya adalah dengan menggunakan collision modifier yaitu menambahkan fungsi tumbukan pada setiap objek serta dengan menggunakan modelsunderray yaitu suatu fungsi yang akan mendeteksi keberadaan objek lain di sekitar avatar dan menyimpannya dalam suatu list yang kemudian akan diproses jika terjadi tumbukan. Penggunaan collision modifier hanya efektif jika digunakan pada aplikasi yang sederhana saja, karena pada aplikasi yang rumit dengan banyak objek, penggunaan teknik ini akan sangat membebani sistem. Untuk penggunaan pada aplikasi dengan banyak objek maka digunakan modelsunderray dimana hanya dibutuhkan sedikit fungsi dalam menangani pendeteksian tumbukan (deansdirectortutorials.com).

2.6 ModelsUnderRay

Merupakan perintah 3 dimensi dalam pemrograman lingo yang mengembalikan daftar dari model yang ditemukan dalam sinar yang dipancarkan dari posisi yang ditentukan oleh locationVector dan


(44)

mengarah sesuai dengan directionVector, yang kedua vector tersebut ditentukan dalam koordinat yang relatif.

Tambahan parameter maxNumberOfModels memberikan batasan dari daftar objek yang dikembalikan. Selain itu tambahan parameter levelOfDetail dapat menentukan tingkat kedetailan dari informasi yang dikembalikan.

Di dalam daftar objek yang dikembalikan, model pertama dalam daftar merupakan objek yang terdekat dengan posisi locationVector dan model terakhir dalam daftar merupakan objek terjauh dari posisi tersebut. Hanya 1 perpotongan (perpotongan terdekat) yang dikembalikan dari tiap model. ModelsUnderRay mengembalikan daftar kosong jika tidak ada objek yang terdeteksi oleh berkas sinar.

2.7 2 Ray Wall Collision

2 Ray Wall Collision merupakan teknik deteksi tumbukan pada lingkungan 3 dimensi yang memanfaatkan teknik modelsunderray untuk menghasilkan 2 berkas sinar yang dipancarkan dalam sumbu x dan y guna mendeteksi keberadaan objek lain dalam lingkungan tersebut. 2 Ray Wall Collision digunakan untuk mendeteksi tumbukan dalam bidang horizontal, 2 berkas sinar tersebut dipancarkan dari posisi avatar dalam hal ini kamera, yaitu pada sebelah kanan serta kiri avatar. Penggunaan 2 berkas sinar tersebut diposisikan diagonal hingga menyerupai huruf “V” serta arah penyinarannya berubah sesuai dengan pergerakan avatar, hal ini


(45)

dimaksudkan agar pendeteksian tumbukan dapat lebih optimal serta efisien mencakup seluruh objek yang berada pada arah pergerakan avatar.

ray_Left ray_Right

\ _A _/ | | | | |____|

Gambar 2.4 Penggunaan 2 Berkas Sinar Pendeteksi Tumbukan

ray_Left = vector(sin(motionAngle+rayAngle),cos(motionAngle+rayAngle),0) ray_Right = vector(sin(motionAngle-rayAngle),cos(motionAngle-rayAngle),0)

Penggunaan 2 berkas sinar dengan formasi penyinaran “V” dimaksudkan untuk memperbaiki kesalahan yang terjadi jika hanya menggunakan seberkas sinar saja (single ray). Pada penggunaan single ray collision detection objek yang berfungsi sebagai avatar pada posisi tertentu dapat sebagian menembus atau berpotongan dengan objek di depannya. Hal ini disebabkan arah sinar kurang akurat dalam mendeteksi keberadaan objek-objek dalam arah gerak avatar.

Wall

A

Wall Ray_single


(46)

Gambar 2.5 Penggunaan Seberkas Sinar Pendeteksi Tumbukan Penggunaan 2 Ray Wall Collision diawali dengan mendeklarasikan posisi awal dari avatar serta parameter pergerakannya. Kemudian mendeklarasikan variable radius tumbukan dari avatar tersebut. Selanjutnya adalah mendeklarasikan posisi awal sumber sinar serta arah penyinarannya dalam sumbu x dan y, untuk kemudian sinar tersebut ditembakkan hingga mendeteksi keberadaan objek lain. Keberadaan tersebut kemudian ditampung dalam sebuah daftar yang selanjutnya akan dibandingkan jarak objek tersebut dengan radius tumbukan yang telah ditentukan sebelumnya. Jika jarak objek lebih kecil dari pada radius tumbukan, maka akan dilakukan respon terhadap tumbukan berupa arah pergerakan baru dimana tidak terdapat objek lainnya (www.robotduck.com).

2.8 Pemrograman Lingo

Lingo adalah bahasa pemrograman Director yang berguna untuk menciptakan interaksi antara pemakai dengan movie yang istilah populernya disebut movie interaktif. Dengan Lingo dapat mengontrol movie agar memberikan respon dari suatu kondisi dan kejadian tertentu. Sebagai contoh, Lingo dapat membuat tombol navigasi untuk berpindah


(47)

antar halaman presentasi atau movie dengan mudah, menggerakkan objek, mengontrol volume suara, dan masih banyak lagi. Saat ini Director dan Lingo mulai banyak digunakan untuk keperluan multimedia interaktif seperti membuat CD Pembelajaran, Tutorial, game, presentasi produk, company profile sampai CD menu interaktif yang ada dalam bonus majalah dan buku komputer.

Script Lingo terbagi menjadi 4 tipe, yaitu behavior script, movie script, parent script dan yang terakhir adalah cast member script. Behavior, movie dan parent script akan tampil sebagai cast member yang ada di dalam cast window. Behavior script adalah script yang ditulis untuk mengontrol properties dan gerakan sprite. Tipe script ini memudahkan pemrograman yang berorientasi pada objek atau lebih dikenal dengan istilah OOP (Object Oriented Programming). Movie script adalah script yang tidak ditulis untuk sprite melainkan untuk mengontrol movie. Tipe script ini dapat digunakan untuk mengontrol berbagai aspek pada movie, khususnya ketika mulai dan akhir dari sebuah movie. Tipe script ini juga dapat disesuaikan dengan script lain untuk penggunaan handle pada instance. Parent script adalah script yang digunakan untuk membuat atau melahirkan sebuah objek ke dalam global variabel dengan perintah “new". Objek-objek ini nantinya dapat mengontrol sprite dan media kontrol lainnya tanpa dihubungkan langsung dengan sprite menggunakan script atau bahkan dapat digunakan untuk mengontrol data atau objek yang tidak terlihat. Untuk Behavior, Movie dan Parent script, cast member script


(48)

akan berdiri sendiri. Cast member script adalah script yang ditulis secara langsung pada cast member di dalam Cast window tanpa membuat cast member baru seperti tipe script lainnya. Ketika cast member ditempatkan pada stage dan berubah menjadi sprite, saat itu pula script yang ada pada cast member diaktilkan. Cast member yang diberi script akan menampilkan ikon script di pojok kiri bawah thumbnail cast member.

Dalam Lingo, parent scripts menyediakan keuntungan dalam pemrograman berorientasi objek. Parent scripts dapat digunakan untuk menghasilkan script objek yang berperilaku dan merespon tindakan secara serupa namun tetap dapat beroperasi secara independen.

Dalam Lingo terdapat beberapa istilah yang dapat dibandingkan dengan istilah-istilah dalam pemrograman berorientasi objek.

- Parent scripts dalam director merupakan class dalam pemrograman berorientasi objek.

- Child objects dalam director merupakan instances dalam pemrograman berorientasi objek.

- Property variables dalam director merupakan variable instances atau variable member dalam pemrograman berorientasi objek.

- Handlers dalam director merupakan metode dalam pemrograman berorientasi objek

- Ancestors scripts dalam director merupakan super class atau sub class dalam pemrograman berorientasi objek.


(49)

Pemrograman berorientasi objek (Object Oriented Programing/OOP) merupakan paradigma pemrograman menggunakan "objek" yaitu suatu struktur data yang terdiri dari bidang data dan metode bersama dengan interaksi antara struktur data tersebut untuk merancang aplikasi dan program komputer.

Pemrograman Berorientasi Objek merupakan cara pengembangan perangkat lunak berdasarkan abstraksi objek-objek yang ada di dunia nyata. Dasar pembuatannya adalah objek yang merupakan kombinasi antara struktur data dan perilaku dalam satu entitas.

Dalam pengembangan sistem berorientasi objek ini, konsep-konsep dan sifat-sifat berorientasi objek digunakan. Konsep-konsep tersebut adalah:

- Kelas

Kelas adalah konsep orientasi objek yang mengenkapsulasi/membungkus data dan abstraksi prosedural yang diperlukan untuk menggambarkan isi dan tingkah laku berbagai entitas. Abstraksi data yang menjelaskan suatu kelas “dibungkus” oleh abstraksi prosedural yang dapat memanipulasi data yang berada di dalamnya. Kelas juga merupakan deskripsi tergeneralisir (misal template, pola, cetak biru) yang menggambarkan kumpulan objek yang sama.


(50)

Objek digambarkan sebagai benda, orang, tempat dan sebagainya yang ada di dunia nyata yang penting bagi suatu aplikasi. Objek mempunyai atribut dan metoda.

- Atribut

Atribut menggambarkan data yang dapat memberikan informasi mengenai kelas atau objek dimana atribut tersebut berada.

- Metoda/Servis/Operator

Metoda adalah prosedur atau fungsi yang tergabung dalam suatu objek bersama dengan atribut. Metode ini digunakan untuk pengaksesan terhadap data yang terdapat dalam objek tersebut.

- Message

Message adalah alat komunikasi antar objek. Hubungan antar objek ditentukan oleh problem domain dan tanggung jawab sistem.

- Event

Event adalah suatu kejadian pada waktu yang terbatas yang menggambarkan rangsangan (stimulus) dari luar sistem.

- State

State adalah abstraksi dari nilai atribut dan link dalam sebuah objek. State merupakan tanggapan dari objek terhadap event-event masukan.


(51)

Skenario adalah urutan event yang terjadi sepanjang eksekusi sistem.

Karakteristik-karakteristik yang terdapat dalam metode pengembangan sistem berorientasi objek adalah:

- Encapsulation

Encapsulation merupakan dasar untuk membatasi ruang lingkup program terhadap data yang diproses. Data dan prosedur dikemas dalam suatu objek sehingga prosedur lain dari luar tidak dapat mengaksesnya. Data akan terlindungi dari prosedur atau objek lain (Information Hiding). - Inheritance

Inheritance (pewarisan) adalah teknik yang menyatakan bahwa anak dari objek akan mewarisi data/atribut dan metode dari induknya langsung. Suatu kelas dapat ditentukan secara umum, kemudian ditentukan secara spesifik menjadi subkelas. Setiap subkelas mempunyai hubungan atau mewarisi semua sifat yang dimiliki kelas induknya dan ditambah dengan sifat unik yang dimilikinya.

- Polymorphism

Polymorphism menyatakan bahwa sesuatu yang sama dapat mempunyai bentuk dan perilaku berbeda. Polimorfisme juga menyatakan bahwa operasi yang sama mungkin mempunyai perbedaan kelas.


(52)

Unified Modelling Language (UML) adalah sebuah "bahasa" yg telah menjadi standar dalam industri untuk visualisasi, merancang dan mendokumentasikan sistem piranti lunak. UML menawarkan sebuah standar untuk merancang model sebuah sistem (Pressman, 2010).

Dengan menggunakan UML kita dapat membuat model untuk semua jenis aplikasi piranti lunak, dimana aplikasi tersebut dapat berjalan pada piranti keras, sistem operasi dan jaringan apapun, serta ditulis dalam bahasa pemrograman apapun. Tetapi karena UML juga menggunakan class dan operation dalam konsep dasarnya, maka ia lebih cocok untuk penulisan piranti lunak dalam bahasa-bahasa berorientasi objek seperti C++, Java, C# atau VB.NET. Walaupun demikian, UML tetap dapat digunakan untuk modeling aplikasi prosedural dalam VB atau C.

Seperti bahasa-bahasa lainnya, UML mendefinisikan notasi dan syntax/semantik. Notasi UML merupakan sekumpulan bentuk khusus untuk menggambarkan berbagai diagram piranti lunak. Setiap bentuk memiliki makna tertentu, dan UML syntax mendefinisikan bagaimana bentuk-bentuk tersebut dapat dikombinasikan. Notasi UML terutama diturunkan dari 3 notasi yang telah ada sebelumnya: Grady Booch OOD (Object-Oriented Design), Jim Rumbaugh OMT (Object Modeling Technique), dan Ivar Jacobson OOSE (Object-Oriented Software Engineering).


(53)

Abstraksi konsep dasar UML yang terdiri dari structural classification, dynamic behavior, dan model management, bisa dipahami dengan mudah apabila melihat gambar diatas dari Diagrams. Main concepts bisa dipandang sebagai term yang akan muncul pada saat membuat diagram dan view adalah kategori dari diagram tersebut (Dharwiyanti, 2003).

UML mendefinisikan diagram-diagram sebagai berikut: • use case diagram

class diagram statechart diagram


(54)

activity diagram sequence diagram collaboration diagram component diagram deployment diagram - Use Case Diagram

Use case diagram menggambarkan fungsionalitas yang diharapkan dari sebuah sistem. Yang ditekankan adalah “apa” yang diperbuat sistem, dan bukan “bagaimana”. Sebuah use case merepresentasikan sebuah interaksi antara aktor dengan sistem (Booch, 1999).

Gambar 2.6 Contoh Use Case Diagram

Pada contoh use case diagram diatas merupakan gambaran fungsionalitas dari sistem bernama “Clinic” dimana di dalamnya terdapat 4 aktor dengan aktivitasnya masing-masing didalam sistem. Sebagai


(55)

contohnya adalah aktor pasien yang memiliki 4 buah use case dalam sistem yaitu membuat janji, membatalkan janji, meminta pengobatan serta membayar tagihan. Masing-masing use case tersebut selanjutnya dapat juga terhubung dengan use case lainnya ataupun juga melibatkan aktor lain dalam pelaksanaan aktivitas tersebut, seperti untuk use case membuat janji akan mengaktifkan use case lain yang termasuk dalam aktifitas pembuatan janji yaitu use case periksa catatan pasien. Use case membuat janji dan membatalkan janji juga akan melibatkan aktor pembuat jadwal, use case meminta pengobatan akan melibatkan aktor dokter serta use case membayar tagihan akan melibatkan aktor bagian administrasi serta melibatkan 2 use case lainnya yang terlibat ke dalam aktivitas pembayaran tagihan yaitu use case membayar asuransi dan mengangsur tagihan.

- Class Diagram

Class adalah sebuah spesifikasi yang jika diinstansiasi akan menghasilkan sebuah objek dan merupakan inti dari pengembangan dan desain berorientasi objek. Class menggambarkan keadaan (atribut/properti) suatu sistem, sekaligus menawarkan layanan untuk memanipulasi keadaan tersebut (metoda/fungsi) (Booch, 1999).

Class diagram menggambarkan struktur dan deskripsi class, package dan objek beserta hubungan satu sama lain seperti containment, pewarisan, asosiasi, dan lain-lain.


(56)

Class memiliki tiga area pokok : 1. Nama (dan stereotype)

2. Atribut 3. Metoda

Gambar 2.7 Contoh Class Diagram

Pada contoh class diagram di atas terdapat kelas-kelas yang saling berhubungan. Masing-masing kelas memiliki atribut serta metodenya masing yang digunakan untuk menyelesaikan fungsi masing-masing ataupun berfungsi sebagai referensi dari fungsi pada kelas lainnya. Selain atribut serta metode di dalam kelas, terdapat juga hubungan antar kelas yang terbangun karena kebutuhan untuk menyelesaikan suatu tugas yang harus dikerjakan oleh beberapa kelas sekaligus. Asosiasi dan generalisasi menyatakan hubungan antar kelas sedangkan multiplicity menyatakan banyaknya instance yang dapat dimiliki oleh kelas-kelas yang berinteraksi. Navigasi kelas menyatakan arah gerak proses antar kelas.


(57)

Contoh class diagram di atas merupakan contoh class diagram pada proses penjualan dimana terdapat kelas-kelas seperti customer, order, payment, credit, cash, check, order detail dan item. Kelas customer berhubungan dengan kelas order dalam bentuk asosiasi, begitu juga order dengan payment. Kelas payment memiliki hubungan generalisasi dengan 3 kelas lainnya yang merupakan detail dari kelas payment yaitu kelas credit, cash, dan check. Dalam class diagram tersebut multiplicity dapat digambarkan dalam interaksi kelas customer dengan order dimana seorang pelanggan dapat memiliki antara 0 sampai banyak pemesanan.

- Statechart Diagram

Statechart diagram menggambarkan transisi dan perubahan keadaan (dari satu state ke state lainnya) suatu objek pada sistem sebagai akibat dari stimuli yang diterima. Pada umumnya statechart diagram menggambarkan class tertentu (satu class dapat memiliki lebih dari satu statechart diagram) (Booch, 1999).

Gambar 2.8 Contoh Statechart Diagram

Dalam contoh diatas terlihat transisi atau perubahan keadaan suatu objek dalam hal ini seorang siswa. Diawali dengan proses pendaftaran


(58)

sekolah kemudian beralih pada keadaan pada saat diajarkan. Terdapat kondisi jika siswa dikeluarkan namun memiliki ukuran seminar lebih dari 0 maka siswa akan kembali ke keadaan saat ia akan diajarkan kembali. Jika siswa tidak dikeluarkan hingga kelas selesai maka siswa akan menghadapi ujian akhir untuk juga keluar dari sekolah tersebut. Garis berpanah menunjukkan alur perubahan keadaan objek sedangkan titik hitam menunjukkan akhir dari proses.

- Activity Diagram

Activity diagrams menggambarkan berbagai alir aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi (Booch, 1999).

Activity diagram merupakan state diagram khusus, di mana sebagian besar state adalah action dan sebagian besar transisi di-trigger oleh selesainya state sebelumnya (internal processing). Oleh karena itu activity diagram tidak menggambarkan behaviour internal sebuah sistem (dan interaksi antar subsistem) secara eksak, tetapi lebih menggambarkan proses-proses dan jalur-jalur aktivitas dari level atas secara umum.


(59)

Gambar 2.9 Contoh Activity Diagram

Pada contoh diatas merupakan contoh activity diagram yang menggambarkan proses penyajian minuman. Aktivitas pertama yaitu mencari minuman dalam hal ini kopi kemudian menghadapi decision jika menemukan kopi akan beralih ke aktivitas selanjutnya, jika tidak akan mencari minuman cola kalengan. Jika tidak juga menemukan kopi atau cola maka proses akan berakhir.

- Sequence Diagram

Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar sistem (termasuk pengguna, display, dan sebagainya) berupa message yang digambarkan terhadap waktu. Sequence diagram terdiri atar


(60)

dimensi vertikal (waktu) dan dimensi horizontal (objek-objek yang terkait) (Booch, 1999).

Sequence diagram biasa digunakan untuk menggambarkan skenario atau rangkaian langkah-langkah yang dilakukan sebagai respons dari sebuah event untuk menghasilkan output tertentu. Diawali dari apa yang men-trigger aktivitas tersebut, proses dan perubahan apa saja yang terjadi secara internal dan output apa yang dihasilkan.

Masing-masing objek, termasuk aktor, memiliki lifeline vertikal. Message digambarkan sebagai garis berpanah dari satu objek ke objek lainnya. Pada fase desain berikutnya, message akan dipetakan menjadi operasi/metoda dari class. Activation bar menunjukkan lamanya eksekusi sebuah proses, biasanya diawali dengan diterimanya sebuah message.


(61)

Pada contoh sequence diagram di atas terdapat urutan kejadian dari proses login. Pada diagram tersebut terlihat objek-objek seperti pengguna sebagai aktor, login sebagai interface, accountmanager sebagai objek pengendali dan lain-lain. Proses di awali dengan memasuki tampilan login kemudian input data berupa username dan password yang dilakukan antara pengguna dengan tampilan login. Kemudian jika data yang dimasukkan baru, maka tampilan login akan mengirim message menuju anewaccount, dilanjutkan dengan proses-proses selanjutnya.

- Collaboration Diagram

Collaboration diagram juga menggambarkan interaksi antar objek seperti sequence diagram, tetapi lebih menekankan pada peran masing-masing objek dan bukan pada waktu penyampaian message (Booch, 1999). Setiap message memiliki sequence number, di mana message dari level tertinggi memiliki nomor 1. Messages dari level yang sama memiliki prefiks yang sama.


(62)

Pada contoh collaboration diagram di atas terlihat gambaran proses reservasi hotel. Pada diagram di atas terlihat peran dari masing-masing objek yang saling mempengaruhi sehingga proses yang diinginkan dapat terjadi. Dimulai dari pengguna mengisi tampilan reservasi, kemudian tampilan tersebut mengirimkan pesan pada objek selanjutnya hingga tahap akhir yaitu konfirmasi pemesanan hotel kepada pengguna. - Component Diagram

Component diagram menggambarkan struktur dan hubungan antar komponen piranti lunak, termasuk ketergantungan (dependency) di antaranya (Booch, 1999). Komponen piranti lunak adalah modul berisi code, baik berisi source code maupun binary code, baik library maupun executable, baik yang muncul pada compile time, link time, maupun run time. Umumnya komponen terbentuk dari beberapa class dan/atau package, tapi dapat juga dari komponen-komponen yang lebih kecil. Komponen dapat juga berupa interface, yaitu kumpulan layanan yang disediakan sebuah komponen untuk komponen lain.


(63)

Gambar 2.12 Contoh Component Diagram

Pada contoh di atas terdapat component diagram yang menggambarkan komponen-komponen perangkat lunak berbasis web. Tiap komponen berisikan fungsi-fungsi yang berbeda dalam menunjang kinerja suatu perangkat lunak berbasis web, seperti komponen firewall, web server, database dan lain-lain.

- Deployment Diagram

Deployment/physical diagram menggambarkan detail bagaimana komponen di-deploy dalam infrastruktur sistem, di mana komponen akan terletak (pada mesin, server atau piranti keras apa), bagaimana


(64)

kemampuan jaringan pada lokasi tersebut, spesifikasi server, dan hal-hal lain yang bersifat fisikal (Booch, 1999). Sebuah node adalah server, workstation, atau piranti keras lain yang digunakan untuk men-deploy komponen dalam lingkungan sebenarnya. Hubungan antar node (misalnya TCP/IP) dan requirement dapat juga didefinisikan dalam diagram ini.

Gambar 2.13 Contoh Deployment Diagram

Pada contoh di atas merupakan contoh deployment diagran yang menggambarkan interaksi perangkat keras dari sebuah sistem. Pada contoh tersebut terdapat perangkat keras berupa main server serta workstation.

2.11 Object Oriented Analysis and Design (OOAD) 2.11.1 Pengertian Analisis dan Desain


(65)

Proses analisis lebih menekankan pada suatu penyelidikan terhadap suatu masalah dan kebutuhan dibandingkan penyelidikan untuk mendapatkan solusi dari permasalahan itu sendiri.

Proses desain lebih menekankan pada solusi secara konseptual untuk memenuhi suatu kebutuhan dibandingkan dengan penekanan pada implementasi dari desain itu sendiri (Larman, 2003).

2.11.2 Pengertian Object Oriented AnalysisandDesign

Object oriented analysis merupakan suatu pendekatan dalam menemukan dan menjelaskan suatu objek atau konsep dalam domain masalah. Sebagai contohnya, dalam suatu kasus sistem informasi perpustakaan, terdapat beberapa konsep seperti buku, perpustakaan dan lain sebagainya.

Object Oriented Design merupakan pendekatan dalam menentukan objek-objek dari suatu perangkat lunak, serta bagaimana objek-objek tersebut saling berkolaborasi dalam memenuhi suatu kebutuhan. Sebagai contohnya, dalam suatu sistem perpustakaan, objek buku dari perangkat lunak akan memiliki atribut berupa “judul” dan metode berupa “cari judul buku” (Larman, 2003).

Tahapan selanjutnya adalah tahap implementasi desain objek ke dalam pemrograman berorientasi objek.


(66)

Gambar 2.14 Pendekatan Representasi Objek dalam OOAD

2.11.3 Tahapan Object Oriented Analysis and Design

Terdapat beberapa tahap dalam analisis dan desain berorientasi objek (Larman, 2003), yaitu:

-

Gambar 2.15 Tahapan dalam OOAD

- Menetapkan Use Case Models

Analisa kebutuhan dapat berupa penjelasan domain proses yang saling berhubungan. Penjelasan tersebut dapat dituliskan dalam bentuk model use case. Terdapat beberapa tahap dalam menetapkan use case model yaitu : 1. Analisis kebutuhan dalam bentuk model use case (Skenario & Use

Case Diagram) Menetapkan Use

Case

Menetapkan Domain Models

Menetapkan Interaction

Diagrams

Menetapkan Desain Class


(67)

Pembuatan use case dalam bentuk skenario proses pada sistem dimana dilakukan identifikasi terhadap aktor utama pada sistem, keadaan sebelum dilakukannya proses (syarat proses), keadaan sesudah dilakukannya proses (tujuan), rangkaian kejadian proses secara global, alternative skenario serta teknologi/peralatan yang digunakan.

Pembuatan ini didasarkan pada EBP (Elementary Business Process) yaitu suatu tugas yang dilakukan oleh seseorang dalam satu tempat dan waktu sebagai respon terhadap suatu proses bisnis yang akan menghasilkan perubahan data dalam keadaan yang konsisten. EBP memfokuskan pembuatan use case sebagai tahapan mengidentifikasi proses bisnis sistem dalam level yang paling tinggi.

Selanjutnya adalah pembuatan use case diagram yang dilakukan untuk memberikan gambaran batasan sistem serta perilaku aktor terhadap sistem dalam bentuk gambaran visual.

2. Analisis perilaku sistem dalam bentuk system sequence diagram System Sequence Diagram (SSD) menunjukkan kejadian (event) dalam sistem berdasarkan skenario yang dilakukan aktor terhadap sistem dalam use case. SSD dihasilkan melalui pengidentifikasian terhadap interaksi aktor serta operasi yang disebabkan interaksi aktor tersebut dalam skenario pada use case. Dalam SSD, sistem diperlakukan secara black box, yaitu hanya mengidentifikasi apa saja yang dilakukan sistem tanpa mengikutsertakan cara atau proses dalam melakukan tindakan tersebut.


(68)

- Menetapkan Domain Models

Analisis berorientasi objek berfokus pada menciptakan suatu deskripsi permasalahan dari perspektif pengklasifikasian objek. Hal-hal terkait penguraian permasalahan seperti identifikasi konsep, atribut dan asosiasi yang dinilai penting. Hasil dari proses tersebut dapat diwujudkan dalam bentuk domain model yang terdiri dari susunan diagram yang menunjukkan domain konsep atau objek. Tahapan-tahapan dalam proses ini yaitu :

1. Visualisasi konsep dalam bentuk conceptual class

Visualisasi konsep dilakukan dengan menetapkan suatu conceptual class yang berisikan konsep-konsep yang ada dalam sistem beserta atribut dan asosiasi antar konsep tersebut. Conceptual class merupakan model permasalahan yang dibuat melalui sudut pandang ”dunia nyata” terhadap sistem.

Dalam mengidentifikasi konsep-konsep yang terdapat pada sistem dapat dilakukan melalui 2 pendekatan, yaitu melalui daftar kategori konseptual kelas serta identifikasi kata benda yang terdapat pada skenario dalam use case.

2. Menambahkan Asosiasi dalam conceptual class

Asosiasi atau relasi merupakan hubungan antar konsep pada suatu sistem. Hubungan tersebut antara lain seperti suatu konsep secara fisik maupun logika merupakan bagian dari konsep lain, suatu konsep


(69)

terdapat dalam konsep lain serta suatu konsep “terekam” dalam konsep lainnya.

Setiap asosiasi selanjutnya disebut sebagai role, suatu role akan memiliki nama, ekspresi multiplicity serta navigasi. Multiplicity menyatakan banyaknya instance yang dimiliki suatu kelas/konsep terhadap kelas/konsep lainnya.

3. Menambahkan Atribut dalam conceptual class

Atribut merupakan suatu nilai data logis dari suatu objek. Atribut merupakan nilai-nilai data yang dimiliki suatu objek atau dalam hal ini suatu konsep. Dalam identifikasi atribut pada conceptual class, atribut yang dihasilkan harus tetap sederhana serta mereflesikan nilai data yang mungkin dimiliki suatu konep dalam dunia nyata.

- Menetapkan Interaction Diagrams

Desain berorientasi obyek berkaitan dengan mendefinisikan objek perangkat lunak dan kolaborasinya. Notasi umum yang digunakan untuk menggambarkan kolaborasi ini adalah interaction diagrams (Sequence/Collaboration Diagram). Diagram ini menunjukkan aliran pesan antara objek perangkat lunak dalam bentuk metode. Tahapan yang harus dilakukan adalah melalui realisasi use case menggunakan pola GRASP (General Responsibilities Assignment Software Pattern).

GRASP merupakan pola-pola yang dapat digunakan untuk memberikan tanggung jawab (Responsibilities) suatu kelas terhadap kelas lainnya. Hal ini dilakukan untuk mengidentifikasi metode yang dimiliki


(70)

masing-masing kelas yang diperoleh melalui ekstraksi terhadap interaction diagram yang dihasilkan melalui implementasi pola GRASP.

Tabel 2.2 GRASP (General Responsibilities Assignment Software Pattern)

Pola Penjelasan

Information Expert Berikan tanggung jawab kepada kelas yang memiliki informasi untuk menyelesaikan suatu tugas.

Creator

Berikan tanggung jawab kepada kelas B untuk

menciptakan instance dari kelas A jika salah satu syarat ini terpenuhi :

- B memuat A - B kumpulan dari A

- B memiliki data inisialisasi untuk A - B me-record A

- B menggunakan A

Controller

Berikan tanggung jawab penanganan pesan dalam system event kepada kelas yang menggambarkan :

- Menggambarkan keseluruhan sistem, peralatan dan sub sistem.

- Menggambarkan scenario pada use case dimana terjadinya system event.

Low Coupling

Tetapkan tanggung jawab pada masing-masing kelas sehingga ketergantungan antar kelas yang tidak diperlukan berkurang.

High Cohesion Tetapkan tanggung jawab pada kelas-kelas sehingga kompleksitas sistem tetap terkontrol.

Polymorphism Tetapkan tanggung jawab pada behaviour-behaviour menggunakan operasi polymorph.

Pure Fabrication Berikan tanggung jawab pada behaviour class buatan yang tidak merepresentasikan domain proses dengan


(71)

tujuan mengurangi coupling dan mempertahankan cohesion antar kelas.

Indirection

Berikan tanggung jawab pada objek penengah untuk menghubungkan komponen-komponen sehingga komponen tersebut tidak langsung berkaitan.

Protected Variation

Berikan tanggung jawab pada interface yang stabil antar objek sehingga objek-objek tersebut tidak saling mempengaruhi.

- Menetapkan Design Class Diagrams

Sebagai tambahan bagi sudut pandang dinamis terhadap kolaborasi objek dalam diagram interaksi, akan sangat berguna untuk menciptakan suatu sudut pandang statis terhadap definisi kelas dalam bentuk design class diagrams (DCD). Diagram ini merepresentasikan atribut dan metode dari objek dalam sistem. DCD terdiri dari class beserta atribut serta asosiasi, interface, metode, tipe data atribut, navigasi serta dependencies (ketergantungan).

Class beserta atribut dan asosiasi diperoleh melalui conceptual class, sedangkan metode diperoleh melalui aktivitas yang tertera dalam interaction diagram. Navigasi diperoleh juga melalui interaction diagram sedangkan dependencies diperoleh melalui analisa pemenuhan fungsi, dimana pemenuhan fungsi suatu kelas bergantung pada parameter yang terdapat pada kelas lainnya.


(72)

- Implementasi Desain ke dalam bahasa pemrograman

Tahap akhir dalam proses pengembangan yaitu pengimplementasian desain yang telah dihasilkan ke dalam bahasa pemrograman. Pendefinisian kelas dalam perangkat lunak diperoleh dari design class diagram, sedangkan metode dari kelas-kelas tersebut dibuat berdasarkan rancangan dalam interaction diagrams.

Berikut ini merupakan contoh sampel artifak dalam OOAD pada proses penjualan suatu produk :


(73)

Pada gambar diatas terlihat urutan proses OOAD melaui artifak-artifak UML. Tahapan pertama yaitu pembuatan use case berupa skenario keseluruhan proses yang dapat juga di presentasikan dalam bentuk use case diagram. Kemudian diterjemahkan ke dalam system sequence diagram untuk mengetahui aktivitas apa saja yang terjadi antara aktor diluar sistem dengan sistem, selain itu juga untuk mengetahui batasan dari sistem yang akan dibuat. Tahap selanjutnya adalah pembuatan domain model berupa conceptual class yang berisikan objek/konsep yang terdapat dalam sistem beserta atribut dan asosiasi antar objek-objek tersebut. Tahap selanjutnya adalah realisasi use case ke dalam interaction diagram menggunakan pola GRASP. Pola GRASP digunakan untuk menetapkan tanggung jawab tiap kelas yang telah dihasilkan untuk kemudian tanggung jawab tersebut digunakan untuk menetapkan metode bagi masing-masing kelas. Tahap selanjutnya yaitu pembuatan design class diagram berdasarkan conceptual class serta interaction diagram yang telah dihasilkan. Entitas/ kelas beserta atribut dan asosiasinya diperoleh dari conceptual class sedangkan metode, navigasi serta dependencies diperoleh dari interaction diagram.

Tahap akhir adalah implementasi design class diagram yang telah ditetapkan ke dalam bahasa pemrograman. Desain kelas yang telah dihasilkan diimplementasikan ke dalam souce code pembangun sistem.


(1)

Lampiran 6


(2)

KUESIONER EVALUASI

APLIKASI VIRTUAL REALITY PEMBELAJARAN PERGERAKAN BUMI DAN BULANBAGI SISWA KELAS 6 SEKOLAH DASAR

(STUDI KASUS: SDN KEB.LAMA SELATAN 13 PAGI)

Untuk Kebutuhan Skripsi Pada Universitas Islam Negeri Syarif Hidayatullah Jakarta

Nama :

Umur :

Berilah tanda silang (x) pada jawaban yang disediakan!

1. Mengertikah Kamu dengan materi yang diberikan dalam aplikasi ini? a. Sangat mengerti c. Kurang mengerti

b. Cukup mengerti d. Tidak mengerti

2. Apakah aplikasi ini dapat memberikan gambaran yang jelas tentang pergerakan bumi dan bulan?

a. Sangat jelas b. Cukup jelas c. Kurang jelas d. Tidak jelas

3. Menarikah permainan tentang pergerakan bumi dan bulan dalam aplikasi ini?

a. Sangat menarik

b. Cukup menarik c. Kurang menarik d. Tidak menarik


(3)

4. Dari pilihan dibawah ini manakah yang menurut kamu perlu ditambahkan dalam aplikasi ini?

a. Permainan Ketangkasan c. Tampilan lebih menarik e. Animasi lebih menarik d. Suara lebih menarik


(4)

Lampiran 6. Hasil Evaluasi Aplikasi

1. Mengertikah Kamu dengan materi yang diberikan dalam aplikasi ini? c. Sangat mengerti c. Kurang mengerti

d. Cukup mengerti d. Tidak mengerti

Tabel Hasil Pendapat Responden Tentang Aplikasi Jawaban Responden Jumlah

Responden

Jumlah Penjawab

Presentase (%) a. Sangat mengerti 13 39

b. Cukup mengerti 33 20 61

e. Kurang mengerti 0 0

d. Tidak mengerti 0 0

Gambar Hasil Pendapat Responden Tentang Aplikasi 2. Apakah aplikasi ini dapat memberikan gambaran yang jelas tentang

pergerakan bumi dan bulan? e. Sangat jelas

f. Cukup jelas g. Kurang jelas h. Tidak jelas

Sangat mengerti Cukup mengerti

39% 61 %


(5)

Tabel Kejelasan Materi Aplikasi Jawaban Responden Jumlah

Responden

Jumlah Penjawab

Presentase (%) a. Sangat jelas

33

21 67

b. Cukup jelas 10 30

c. Kurang jelas 2 3

d. Tidak jelas 0 0

Sangat jelas Cukup jelas

Kurang jelas Tidak jelas

67% 30 %

3 %

Gambar Kejelasan Materi Aplikasi

3. Menarikah permainan tentang pergerakan bumi dan bulan dalam aplikasi ini?

a. Sangat menarik

b. Cukup menarik c. Kurang menarik d. Tidak menarik

Tabel Ketertarikan pengguna terhadap permainan pada aplikasi Jawaban Responden Jumlah

Responden

Jumlah Penjawab

Presentase (%) a. Sangat menarik

33

23 67

b. Cukup menarik 10 33

c. Kurang menarik 0 0


(6)

Sangat menarik Cukup menarik

Kurang menarik Tidak menarik

67% 33 %

Gambar Ketertarikan pengguna terhadap permainan pada aplikasi 4.Dari pilihan dibawah ini manakah yang menurut kamu perlu ditambahkan dalam aplikasi ini?

a. Permainan Ketangkasan c. Tampilan lebih menarik b. Animasi lebih menarik d. Suara lebih menarik

Tabel Kemudahan Pengunaan Aplikasi Jawaban Responden Jumlah

Responden

Jumlah Penjawab

Presentase (%)

a. P.Ketangkasan 25 76

b. Animasi 4 12

f. Tampilan 33 3 9

d. Suara 1 3

P.Ketangkasan Animasi

Tampilan suara

76% 12%

3 % 9%