LAPORAN PERENCANAAN PEMBUATAN GAME BERBASIS JAVA Dosen : Adam Mukharil B. S.Kom. Disusun oleh: Dani Sulaika : 10107221 Edgar P. Rahma : 10107228 Juniman Situngkir : 10107187 Muhamad Yasin : 10107201 Mulki Sulaiman : 10107209 Ridwan Hidayat : 10107213 Kelas : IF-5 JURUSAN TEKNIK INFORMATIKA FAKULTAS TEKNIK DAN ILMU KOMPUTER UNIVERSITAS KOMPUTER INDONESIA 2010
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
LAPORAN PERENCANAAN PEMBUATAN GAME BERBASIS
JAVA
Dosen : Adam Mukharil B. S.Kom.
Disusun oleh:
Dani Sulaika : 10107221
Edgar P. Rahma : 10107228
Juniman Situngkir : 10107187
Muhamad Yasin : 10107201
Mulki Sulaiman : 10107209
Ridwan Hidayat : 10107213
Kelas : IF-5
JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNIK DAN ILMU KOMPUTER
UNIVERSITAS KOMPUTER INDONESIA
2010
Jurusan Teknik InformatikaUnikom LAPORAN PERENCANAAN PEMBUATAN GAME BERBASIS JAVA Halaman 2 dari 22
Daftar Isi
KATA PENGANTAR .............................................................................................................. 3BAB I Pendahuluan.................................................................................................................. 4
1.1 Latar belakang ......................................................................................................................................... 41.2 Identifikasi Masalah................................................................................................................................. 41.3 Maksud dan Tujuan ................................................................................................................................. 5
1.4 Batasan Masalah ...................................................................................................................................... 51.5 Metodologi Penelitian.............................................................................................................................. 5
1.5.1 Tahap pengumpulan data ................................................................................................................. 61.5.2 Tahap pembuatan perangkat lunak .................................................................................................. 6
BAB II Landasan Teori............................................................................................................71.1 UML ........................................................................................................................................................ 71.2 IDE ........................................................................................................................................................ 121.3 Java dan Game...................................................................................................................................... 121.4 Lingkungan Java .................................................................................................................................... 13
1.4.1 Solusi dan Pengembangan Java ..................................................................................................... 141.4.2 Keuntungan.................................................................................................................................... 14
BAB III Analisis dan Perancangan..................................................................................... 183.1 Analisis Sistem yang Sedang Berjalan................................................................................................... 183.2 Analisis Kebutuhan Non Fungsional ..................................................................................................... 18
3.2.1 Analisis Kebutuhan Perangkat Keras............................................................................................. 183.2.2 Analisis Kebutuhan Perangkat Lunak ............................................................................................ 183.2.3 Analisis Kebutuhan Perangkat Pikir .............................................................................................. 18
3.3 Analisis Kebutuhan Fungsional ............................................................................................................. 193.3.1 Use Case Diagram ......................................................................................................................... 193.3.2 Use Case Skenario ......................................................................................................................... 193.3.3 Activity Diagram ........................................................................................................................... 203.3.4 Sequence Diagram......................................................................................................................... 213.3.5 Class Diagram (Mengacu pada seluruh sequence diagram tentukan mana class control, class
entity, dan class interface terlebih dahulu)..................................................................................... 213.3.6 State Diagram ................................................................................................................................ 213.3.7 Analisis Kode (jika kode sudah ada pada tempat studi kasus) ....................................................... 21
Jurusan Teknik InformatikaUnikom LAPORAN PERENCANAAN PEMBUATAN GAME BERBASIS JAVA Halaman 3 dari 22
KATA PENGANTAR
Puji dan syukur kami panjatkan kehadirat Allah SWT, karena atas berkat dan rahmat-
Nya, kami dapat menyelesaikan laporan tugas Pemrograman Berbasis Objek dengan tema
“PERANCANGAN PEMBUATAN GAME BERBASIS JAVA” ini dapat terselesaikan
tepat pada waktunya.
Penulisan laporan ini diajukan untuk memenuhi salah satu syarat menyelesaikan Mata
Kuliah Pemrograman Berbasis Objek Program Sarjana (S-I) Teknik Informatika Universitas
Komputer Indonesia.
Kami menyadari bahwa dalam penyusunan laporan ini mungkin masih terdapat banyak
kekurangan dan jauh dari kesempurnaan, namun berkat bantuan dan bimbingan dari banyak
pihak akhirnya laporan ini dapat diselesaikan dengan baik.
Pada kesempatan ini kami mengucapkan banyak terima kasih kepada semua pihak
yang telah membantu tersusunnya laporan ini, yaitu kepada :
1. Orang tua atas segala dukungannya.
2. Bapak Adam Mukharil B. S.Kom selaku Dosen mata kuliah Pemrograman
Berbasis Objek dan juga meluangkan waktunya untuk Responsi.
3. Teman – teman sekalian yang telah membantu.
Akhir kata semoga laporan ini dapat bermanfaat bagi kami khususnya dan bagi
mahasiswa-mahasiswi pada umumnya, serta bisa menambah wawasan dan pengetahuan di
bidang teknologi informasi.
Bandung, Maret 2010
Penyusun
Jurusan Teknik InformatikaUnikom LAPORAN PERENCANAAN PEMBUATAN GAME BERBASIS JAVA Halaman 4 dari 22
BAB I
Pendahuluan
1.1 Latar belakang
Saat ini telah banyak game-game yang tak terhitung jumlahnya, baik berupa game
online, game offline, dan game mobile. Dari segi jalan cerita dan kualitas gambar atau
grafik pun beragam mulai dari game-game kecil atau simpel hingga game-game besar
yang bercerita panjang dan rumit. Namun begitu, telah banyak pula orang yang
memainkannya, baik orang dewasa maupun anak-anak secara terus menerus tanpa
merasa jenuh sedikitpun dan merasa ingin memainkan lagi game-game yang di
anggapnya menarik untuk dimainkan.
Bagi beberapa orang mungkin tidak mempunyai waktu yang cukup atau berbagai
alasan lainnya untuk bermain game, baik berupa game online maupun game offline.
Khusus untuk game kecil seperti Java Game sangatlah memungkinkan dimainkan
karena game ini mudah dimainkan. Disela-sela rutinitas seseorang pastilah ada sedikit
waktu ruang seperti ketika menunggu dan waktu–waktu luang lainnya. Oleh karenanya
untuk mengisi waktu tersebut mereka mungkin akan memilih untuk bermain game.
Berdasarkan uraian dari latar belakang tersebut maka timbulah gagasan untuk
membuat sebuah game mobile berbasis java, yang diharapkan dapat memenuhi
kebutuhan akan game saat ini.
1.2 Identifikasi Masalah
Dari analisis yang telah dilakukan dapat di identifikasi beberapa permasalahan sebagai
berikut:
1. Game seperti apa yang akan dibuat.
2. Bagaimana pembuatan game berdasarkan object oriented.
3. Apa saja yang dibutuhkan dalam pembuatannya.
4. Batasan-batasan apa saja yang membatasi pembuatannya.
Jurusan Teknik InformatikaUnikom LAPORAN PERENCANAAN PEMBUATAN GAME BERBASIS JAVA Halaman 5 dari 22
1.3 Maksud dan Tujuan
1.3.1 Maksud
Maksud dari penelitian ini adalah membangun sebuah aplikasi berupa java game.
1.3.2 Tujuan
Tujuan yang ingin dicapai antara lain :
1. Memberikan sarana hiburan kepada para gamer melalui aplikasi game yang akan
dibangun.
2. Mengetahui cara pembuatan java game.
3. Mengetahui sejauh mana kemampuan pembangun aplikasi dalam membuat sebuah
aplikasi java game yang berorientasi objek.
1.4 Batasan Masalah
Dalam pembuatan aplikasi ini diperlukan batasan masalah, agar permasalahan
yang ditinjau tidak terlalu luas dan sesuai dengan maksud dan tujuan yang dicapai.
Adapun batasan-batasannya adalah sebagai berikut :
1. Hanya dapat dimainkan pada ponsel barbasis java.
2. Hanya dapat dimainkan oleh 1 player.
3. Tidak ada tingkatan permainan.
4. Tidak dibatasi waktu.
5. Tujuan akhir untuk mendapatkan skor tertinggi.
6. Hanya dapat menginput dari keypad.
7. Output berupa tampilan.
8. Jenis game ini adalah petualangan
9. Dibuat menggunakan NETBeans IDE 6.8
10. Dapat dimainkan oleh semua usia
11. Dimodelkan menggunakan UML
1.5 Metodologi Penelitian
Metodologi yang digunakan dalam penelitian tugas ini adalah sebagai berikut :
Jurusan Teknik InformatikaUnikom LAPORAN PERENCANAAN PEMBUATAN GAME BERBASIS JAVA Halaman 6 dari 22
1.5.1 Tahap pengumpulan data
1. Observasi
Pengamatan data secara langsung yang berkaitan dengan permasalahan yang
dibahas.
2. Studi literatur
Pengumpulan data dari berbagai sumber literatur,membawa catatan kuliah,buku-
buku perpustakaan,artikel dan hasil download di internet yang berhubungan dengan
pembuatan aplikasi game yang akan dibangun.
1.5.2 Tahap pembuatan perangkat lunak
Pembangunan apikasi ini menggunakan metodologi waterfall dengan gambar sebagi
berikut :
Gambar 1.5-1 Diagram Waterfall
Jurusan Teknik InformatikaUnikom LAPORAN PERENCANAAN PEMBUATAN GAME BERBASIS JAVA Halaman 7 dari 22
BAB II
Landasan Teori
1.1 UMLPemodelan (modeling) adalah proses merancang piranti lunak sebelum melakukan
pengkodean (coding). Model piranti lunak dapat dianalogikan seperti pembuatan
blueprint pada pembangunan gedung. Membuat model dari sebuah sistem yang
kompleks sangatlah penting karena kita tidak dapat memahami sistem semacam itu
secara menyeluruh. Semakin komplek sebuah sistem, semakin penting pula penggunaan
teknik pemodelan yang baik.
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 system.
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
arsitektur, akrab, berkinerja tinggi, multi jalinan (multithreaded) dan dinamis.
1.4.2 Keuntungan1. Sederhana
Inti dari ke-"sederhana"-an Java terutama terletak pada kemiripannya dengan C dan
C++. Karena programmer-programmer masa kini khususnya yang tertarik
menggunakan Java telah memiliki pengalaman setidaknya dengan C dan mungkin
dengan C++, Java tentu saja terlihat sederhana dan akrab bagi programmer-
programmer ini.
Java menyederhanakan bahasa C++ dengan menambahkan fitur-fitur pendukung
yang belum terdapat dalam C++ dan membuang beberapa fitur yang membuat C++
menjadi bahasa yang rumit dan sulit untuk dikuasai. Java sederhana karena hanya ia
Jurusan Teknik InformatikaUnikom LAPORAN PERENCANAAN PEMBUATAN GAME BERBASIS JAVA Halaman 15 dari 22
memiliki tiga tipe angka data primitif, tipe Boolean dan array. Selebihnya, semua
dalam Java adalah sebuah kelas. Salah satu fitur penting yang ditawarkan Java (yang
belum ada pada C++) adalah pengumpulan sampah (garbage collection). Dengan
mekanisme ini, user tidak perlu membebaskan memori yang dialokasikan, karena
semua dilakukan oleh Mesin Virtual Java. Java juga mendukung penulisan program
multi jalinan, yaitu suatu program yang dapat melakukan lebih dari satu pekerjaan
dalam waktu yang bersamaan.
2. Berorientasi Obyek
Dalam pendekatannya pada orientasi-obyek, Java lebih merujuk pada SmallTalk
daripada C++. Selain tipe data primitive-nya, semua yang ada pada Java adalah
kelas. Sebaliknya dalam C++ semuanya serba campur-aduk, dimana programmer
dapat secara bebas (benar-benar bebas)dalam mencampur kode-kode orientasi obyek
(kelas) (kelas) dengan kode prosedural (fungsi). Dalam Java semua ini tidak
diperbolehkan. Tidak ada fungsi global dalam Java, semua fungsi harus dipanggil
melalui.sebuah.obyek.
Dukungan Java terhadap orientasi-obyek tidak termasuk penurunan (inheritansi)
ganda. Para perancang Java merasa kerumitan yang dimunculkan inheritansi ganda
tidak sebanding dengan keuntungan yang dihasilkan. Sebagai ganti dari inheritansi
ganda, Java kemudian menyediakan antarmuka (interface).
3. Terdistribusi
Java memudahkan pembuatan aplikasi terdistribusi dengan sekumpulan kelas yang
digunakan pada aplikasi-aplikasi jaringan. Dengan menggunakan kelas URL
(Uniform Resource Locator) Java, suatu aplikasi dapat dengan mudah mengakses
server-jauh (remote server).
4. Terinterpretasi
Karena Java adalah bahasa interpretasi, sekali Interpreter Java terpasang, terinstal
pada suatu mesin tertentu, mesin tersebut dapat secara langsung menjalankan
aplikasi-aplikasi Java (tidak peduli platform atau sistem operasi apa yang terpasang
pada mesin tersebut). Ketika menggunakan bahasa interpreter, programmer juga
terbebas dari kekhawatiran berkaitan dengan ketergantungan antar modul.
Keuntungan lain adalah waktu yang digunakan untuk lingkaran edit-compile-link-
test dapat dipotong. Tanpa adanya langkah kompile dan link, maka bekerja dalam
Jurusan Teknik InformatikaUnikom LAPORAN PERENCANAAN PEMBUATAN GAME BERBASIS JAVA Halaman 16 dari 22
lingkungan interpreter lebih sederhana dan lebih hemat waktu karena hanya melalui
lingkaran edit-test.
5. Kokoh
Membuat suatu program yang terdistribusi, mendukung multi-jalinan yang dapat
dijalankan pada berbagai sistem operasi dan berbagai prosesor bukanlah suatu
pekerjaan yang mudah. Berdasarkan pemikiran ini, maka Java diciptakan sebagai
bahasa yang sangat ketat dalam penulisan (strongly typed language). Dalam Java
management memori telah disederhanakan dengan dua cara. Pertama Java tidak
mendukung manipulasi pointer atau aritmatik secara langsung, sehingga mustahil
bagi program Java untuk menumpuk (meng-overwrite) memori atau mengkorupsi
data. Kedua Java menggunakan mekanisme pengumpulan sampah saat program
berjalan (runtime) daripada pembebasan memori secara eksplisit.
6. Aman
Karena Java tidak menggunakan pointer yang secara langsung merujuk pada lokasi
memori seperti yang terdapat pada C atau C++, Java memiliki kendali penuh
terhadap semua kode yang ada pada lingkungan Java. Sebelumnya telah diantisipasi
bahwa aplikasi-aplikasi Java akan dijalankan di internet dan akan secara dinamis
dapat dijalankan bersama atau mengeksekusi program lain di tempat yang berlainan
melalui internet, maka para pengembang Java berpendapat tentang perlu adanya
kompiler Java yang akan menghasilkan kode bite Java yang akan melewati standar
keamanan runtime Java. Gagasan ini memunculkan ide tentang pemeriksa kode byte
yang akan memeriksa semua kode yang masuk dan memastikan bahwa semua kode
tersebut telah mematuhi serangkaian aturan yang telah ditentukan dan aman untuk
dijalankan.
7. Portable
Salah satu tujuan penting pembuatan Java adalah kode-kode Java haruslah Portable,
sehingga ketika arsitektur baru (baik itu perangkat keras ataupun sistem operasi atau
keduanya) berkembang, lingkungan Java dapat diterapkan dan
dipindahkan.pada.mereka. Pada Java, semua tipe data primitif (integer, long, float,
double dan sebagainya) memiliki ukuran tertentu, tidak bergantung pada mesin atau
sistem operasi dimana program Java dijalankan. Hal ini sangat berlawanan dengan
bahasa seperti C atau C++ yang menyerahkan ukuran tipe data primitif pada
Jurusan Teknik InformatikaUnikom LAPORAN PERENCANAAN PEMBUATAN GAME BERBASIS JAVA Halaman 17 dari 22
kompiler dan mesin (serta sistem operasi). Java portable karena kompiler Java
sendiri ditulis menggunakan Java.
Jurusan Teknik InformatikaUnikom LAPORAN PERENCANAAN PEMBUATAN GAME BERBASIS JAVA Halaman 18 dari 22
BAB III
Analisis dan Perancangan
3.1 Analisis Sistem yang Sedang Berjalan
Petualangan Mario merupakan game 2.5 dimensi (pergerakan 2 dimensi pada dunia 3
dimensi) yang bertipe action role playing game. Unsur action terdapat pada saat
melewati hadangan musuh. Pemain melawan musuh dengan cara menghindar
(melompat maupun bergerak menurun). Unsur role playing terdapat pada peningkatan
kemampuan secara bertahap apabila mendapatkan suatu item berupa peringan dan
pemberat. Game Petualangan Mario ini bertujuan untuk meraih score akhir tertinggi
3.2 Analisis Kebutuhan Non Fungsional
3.2.1 Analisis Kebutuhan Perangkat KerasPerangkat keras yang digunakan untuk mendukung aplikasi ini antara lain :
1. Perangkat PC (minimal Intel P4 2.4Ghz, Memori 256 MB).
2. Handphone berbasis Java sebagai perangkat pengguna aplikasi.
3.2.2 Analisis Kebutuhan Perangkat LunakPerangkat keras komputer tidak berarti tanpa perangkat lunak begitu juga sebaliknya.
Jadi perangkat lunak dan perangkat keras saling mendukung satu sama lain.Perangkat
keras hanya berfungsi jika diberikan instruksi-intruksi kepadanya. Instruksi-instruksi
inilah disebut dengan perangkat lunak. Dalam pembangun aplikasi ini diggunakan
beberapa perangkat lunak,antara lain :
1. Sistem operasi komputer Windows XP,Vista, Win 7
2. Netbeans IDE 6.8 sebagai software pembangun aplikasi
3. Perancangan UML menggunakan Rational Rose
3.2.3 Analisis Kebutuhan Perangkat Pikir
Jurusan Teknik InformatikaUnikom LAPORAN PERENCANAAN PEMBUATAN GAME BERBASIS JAVA Halaman 19 dari 22
3.3 Analisis Kebutuhan Fungsional
3.3.1 Use Case Diagram
Play
gameplay
exit
player highscore
<<extend>>
3.3.2 Use Case SkenarioUse Case Name GameArea Main menuActor PemainDeskripsi Pemain memainkan game ini untuk skor tertinggiAsumsi Pemain harus memilik gadget berbasis JAVA™Langkah langkah Informasi langkah
1. Pemain Memilih menu Terdapat beberapa pilihan2. Pemain memilih bermain Pemain langsung dapat memainkan game3. Pemain memilh highscore System menampilkan 5 skor pemain tertinggi4. Pemain memilih credit Maka akan menampilkan history dan pembuat dari pada
game ini
Jurusan Teknik InformatikaUnikom LAPORAN PERENCANAAN PEMBUATAN GAME BERBASIS JAVA Halaman 20 dari 22
3.3.3 Activity Diagram
start
menjalankangame
pilihan menupermainan
play highscore gameplay exit
tampilanpilihan menu
gameplayer
Jurusan Teknik InformatikaUnikom LAPORAN PERENCANAAN PEMBUATAN GAME BERBASIS JAVA Halaman 21 dari 22
3.3.4 Sequence Diagram
: player paly highsore gameplay exit
mulai permainan
tampilan permainan
isi nama pemain
lihat score
tampilan score
lihat gameplay
tampilan gameplay
keluar
respon permintaan
3.3.5 Class Diagram (Mengacu pada seluruh sequence diagram tentukanmana class control, class entity, dan class interface terlebih dahulu)
3.3.6 State Diagram
3.3.7 Analisis Kode (jika kode sudah ada pada tempat studi kasus)
Jurusan Teknik InformatikaUnikom LAPORAN PERENCANAAN PEMBUATAN GAME BERBASIS JAVA Halaman 22 dari 22