• Tidak ada hasil yang ditemukan

BAB IV IMPLEMENTASI DAN PENGUJIAN

N/A
N/A
Protected

Academic year: 2022

Membagikan "BAB IV IMPLEMENTASI DAN PENGUJIAN"

Copied!
11
0
0

Teks penuh

(1)

48 4.1 Implementasi

Setelah melakukan analisis dan perancangan terhadap aplikasi permainan Koneksi-4 yang akan dikembangkan, tahapan selanjutnya adalah implementasi dan pengujian. Pada tahapan implementasi terdapat dua cakupan yaitu spesifikasi kebutuhan sistem yang meliputi emulator J2ME dan telepon genggam, implementasi yang meliputi proses pengkodean, desain antarmuka dan hal-hal yang berhubungan dengan pengujian aplikasi.

4.1.1 Pembatasan Implementasi

Pembatasan implementasi dilakukan agar ruang lingkup implementasi menjadi lebih jelas. Batasan implementasi dari aplikasi permainan Koneksi-4 adalah sebagai berikut :

 Aplikasi yang dikembangkan berbasis jaringan client-server dengan metode peer to peer namun tidak di implementasikan secara multiplayer, hanya melibatkan 2 pemain.

 Proses yang dijelaskan lebih terfokus pada pemrograman.

(2)

4.1.2 Pengkodean

Pada subbab ini penulis akan menjelaskan potongan-potongan dari kode sumber (source code) aplikasi permainan Koneksi-4. Potongan-potongan program yang akan dijelaskan mengacu pada analisa bab sebelumnya dimana penulis mengembangkan kode sumber yang ada sebagai berikut:

if (isServer) {

server = new C4Server(this);

server.start();

}else {

client = new C4Client(this);

client.start();

}

Pada kode sumber diatas terdapat kondisi if (isServer) artinya apabila dalam proses pemilihan status pemain memilih pilihan sebagai server, maka sistem akan membuat objek berupa status server (server=new C4Server(this)). Apabila kondisi sebaliknya yaitu pemain memilih sebagai client, maka sistem akan membuat objek client pada kelas client (client = new C4Client(this)).

public void run () { try {

canvas.setStatus("Tunggu client...");

dc = null;

while (dc == null)

dc = (DatagramConnection)Connector.open("datagram://:5555");

Pada kode sumber diatas terdapat kode while (dc == null) artinya selama kondisi varibel dc yang diinisialisasi (dc = null) sama dengan null artinya tidak ada, maka sistem akan melakukan atau membuka koneksi jaringan

DatagramConnection)Connector.open("datagram://:5555"). Kode sumber ini merupakan kode untuk terhubung ke client.

(3)

public void run() { try {

canvas.setStatus("Koneksi ke server...");

dc = null;

while (dc == null) dc

(DatagramConnection)Connector.open("datagram://localhost:5555";

Pada kode sumber diatas terdapat kode while (dc == null) artinya selama kondisi variabel dc yang diinisialisasi (dc = null) sama dengan null artinya tidak ada, maka sistem akan melakukan atau membuka koneksi jaringan

DatagramConnection)Connector.open("datagram://localhost:5555").

localhost merupakan nama server lokal, sedangkan 5555 adalah port jaringan yang digunakan. Kode sumber ini merupakan kode untuk terhubung ke server.

private void update() {

if (gameOver) {

int keyState = getKeyStates();

if ((keyState & FIRE_PRESSED) !=0) { newGame();

if (isServer)

server.sendMessage("newGame");

else

client.sendMessage("newGame");

}

return;

Pada kode sumber diatas terdapat fungsi private void update()

artinya untuk proses dimana proses baru akan dilakukan baik oleh server maupun client jika kondisi permainan sudah dalam keadaan berakhir (if (gameOver)).

Pada kondisi ini salah satu pemain dapat mengirimkan pesan untuk memulai permainan dengan yang baru . return berfungsi untuk mengembalikan nilai.

if (!connected)

sendMessage("Client");

public void sendMessage(String message) { try {

byte[] bytes = message.getBytes();

(4)

Datagram dg = null;

dg = dc.newDatagram(bytes, bytes.length);

dc.send(dg);

}

catch (Exception e) { }

}

Pada kode sumber diatas merupakan kode program untuk mengirimkan pesan koneksi apabila kondisi belum ada koneksi pada client (sendMessage("Client")). Pengiriman pesan bertujuan untuk menandakan bahwa client sudah terhubung dengan server. Exception digunakan untuk menangani permasalahan apabila proses pengiriman pesan tidak terhubung.

private void updateScore(int player, int x, int y) { for (int i = 0; i < winPlaces; i++)

if (map[x][y][i]) {

score[player][i] <<=1;

score[1 - player][i] = 0;

} }

Pada kode sumber diatas terdapat fungsi score dengan status private(private void updateScore) artinya nilai atau score akan bertambah dan bersifat dinamik pada masing-masing kelas pemain yaitu client dan server.

4.1.3 Antarmuka Pemain

Pada subbab berikut akan dijelaskan implementasi Antarmuka permainan Koneksi-4 yang telah dibangun tersebut dengan menggunakan emulator J2ME.

4.1.4.1 Jendela Inisialisasi

Ketika pemain akan menjalankan aplikasi permainan Koneksi-4 yang telah penulis kembangkan, yang pertama kali ditampilkan kepada pemain adalah

(5)

jendela inisialisasi. Pada jendela tersebut pemain dapat memulai memilih status dengan terlebih dahulu menekan tombol keypad navigasi setelah itu baru dilanjutkan menekan tombol bertuliskan ”Play” seperti pada gambar berikut ini.

Gambar 4.1. Jendela Inisialisasi

4.1.4.2 Jendela Permainan

Setelah pemain memasuki jendela inisialisasi, pemain akan dibawa ke jendela awal permainan. Pada jendela awal permainan, pemain yang berstatus server menunggu respon koneksi pemain yang berstatus client untuk memulai permainan. Lihat Gambar 4.2.

Gambar 4.2. Jendela awal permainan.

(6)

4.1.4.3 Jendela Setelah Client Terhubung

Setelah client terhubung, server menunggu aktifitas client untuk melangkah atau mengisi pin terlebih dahulu. Lihat Gambar 4.3.

Gambar 4.3. Jendela setelah client terhubung

4.1.4.4 Jendela Mengisi Papan Permainan

Pemain memainkan permainan Koneksi-4 ini dengan mengisi papan dengan pin dengan cara mengontrol arah kolom papan menggunakan keypad navigasi yang akan diisi dengan pin. Lihat Gambar 4.4.

Gambar 4.5. Jendela mengisi papan dengan pin

(7)

4.1.4.5 Jendela Permainan berakhir

Permainan Koneksi-4 berakhir jika salah satu pemain telah berhasil menghubungkan pin sebanyak 4 dan terdapat kalimat bertuliskan ”kamu menang”. Lihat Gambar 4.6.

4.2 Pengujian Aplikasi

Dalam perancangan sistem perlu dilakukan pengujian sistem sebagai verifikasi atas sistem yang telah dirancang. Verifikasi dilakukan untuk mengetahui kemungkinan terjadinya kesalahan dan untuk memastikan fungsi- fungsi yang terdapat dalam modul-modul sistem berjalan dengan baik. Tahapan pengujian ini meliputi spesifikasi kebutuhan sistem, skenario pengujian, hasil pengujian, dan analisis hasi pengujian, yang akan dijelaskan pada sub bab berikut.

4.2.1 Spesifikasi Kebutuhan Sistem

Berikut spesifikasi kebutuhan sistem dimana sistem dikembangkan dan diimplementasikan pada emulator J2ME dan telepon genggam :

Gambar 4.6. Jendela permainan berakhir

(8)

1. Komputer Desktop (hardware) : a. Prosesor Intel Pentium 4 2.4 GHz b. RAM 378 MB

c. Harddisk Maxtor 40 GB 7200 RPM 2. Perangkat Lunak (software) :

a. Microsoft Windows XP Professional Service Pack 3

b. Java Development Kit (JDK) 6 dan Java Runtime Environment 6 (virtual machine java)

c. Java2ME Wireless Toolkit 2.5 (emulator J2ME) 3. Emulator Telepon Genggam (Server-Client) a. Default ( wireless toolkit 2.5)

b. Ukuran layer: 176 x 208 pixel

4.2.2 Metode Black Box Testing

Pengujian dengan metode Black Box Testing dilakukan dengan menjalankan aplikasi permainan Koneksi-4 terlebih dahulu. Kemudian dilakukan pengujian dengan menekan tombol-tombol yang terdapat pada jendela-jendela dari aplikasi permainan tersebut apakah sesuai dengan yang diharapkan.

Selanjutnya pengujian dilakukan ketika permainan sedang berlangsung.

Adapun tahapan pengujian meliputi skenario pengujian, hasil pengujian, dan analisis hasil pengujian.

4.2.2.1 Skenario Pengujian

Pengujian aplikasi permainan meliputi :

(9)

1. Proses Pemilihan Status a. Pilih status.

b. Proses validasi pilih status pemain.

Aplikasi akan diuji apakah pilih status pemain berjalan dengan baik.

2. Proses Koneksitifitas jaringan

a. Pembuatan koneksi (Datagram Connection)

Aplikasi akan diuji apakah pemain dapat membuat koneksi untuk kemudian akan dihubungkan dengan pemain lain.

b. Respon koneksi (Connected)

Aplikasi akan diuji apakah pemain dapat melakukan respon koneksi dan sistem juga dapat mendeteksi respon koneksi yang telah dibuat oleh pemain lain sebelumnya.

c. Memainkan permainan

Aplikasi akan diuji apakah user dapat memainkan permainan yang telah berhasil dibuat sebelumnya.

3. Proses Permainan Yang Sedang Berjalan a. Logika permainan

Akan diuji apakah logika permainan berjalan dengan baik.

b. Sinkronisasi

4. Proses Permainan Berakhir

a. Logika kondisi akhir permainan

Akan diuji apakah logika kondisi akhir permainan berjalan dengan baik.

5. Proses Pengulangan Permainan a. Mengulang permainan

(10)

Aplikasi akan diuji apakah proses permainan dapat diulang setelah kondisi permainan berakhir.

Tabel 4.1 Hasil Pengujian Aplikasi

Skenario Kelas

Skenario Tindakan Pengujian

Hasil Yang Diharapkan

Hasil Pengujian Pemilihan

Status

Pilih Status Pilih List Exclusive, Pilih status pemain, kemudian play.

Tampilan konfirmasi keberhasilan pilih status

OK

Koneksi Datagram

Klik perintah “yes”, untuk membuat koneksi jaringan.

Tampilan konfirmasi keberhasilan

Koneksi Datagram Koneksifitas OK

Jaringan

Memainkan Permainan

Tunggu respon koneksi, lalu sudah terdeteksi koneksi, kemudian mulai bermain dengan

mengarahkan keypad navigasi ke kolom papan yang akan diisi pin.

Tampilan Papan Permainan

OK

Arahkan keypad navigasi pada kolom pada papan permainan, lalu isi dengan pin pada papan pin yang kosong .

Tampilan Papan Permainan, piece user tersusun mengisi papan permainan.

OK

Isi dengan pin lagi pada box yang terisi.

Tampilan Alert:

Kesalahan perpindahan piece.

OK Logika

Permainan

Isi dengan pin pada papan permainan, lalu koneksikan pin berjumlah 4 dengan posisi pin horisontal, vertikal, dan diagonal.

Tampilan Alert &

konfirmasi: user menang, game over.

OK

Arahkan pada kolom papan permainan dengan kondisi aktif, lalu isi lagi dengan pin pada papan pin yang kosong.

Tampilan Papan Permainan berubah, pin menjadi

bertumpuk/tersusun .

OK Permainan

Sedang Berjalan

Sinkronisasi

Isi dengan pin pada papan permainan yang terisi pin.

Tampilan Papan Permainan tidak berubah (idle)

OK

Pengujian black box berusaha menemukan kesalahan dalam kategori : (1) fungsi-fungsi yang tidak benar atau hilang.

(2) kesalahan interface.

(3) kesalahan dalam struktur data.

(11)

(4) kesalahan kinerja.

(5) inisialisasi dan kesalahan terminasi.

4.2.2.2 Analisis Hasil Pengujian

Setelah tahap pengujian maka dapat dianalisa bahwa :

1. Adanya perbedaan tampilan pada kedua alat penguji tersebut (emulator J2ME dengan telepon genggam) jika pada telepon genggam pemain tidak ada halaman memilih menggunakan service jaringan atau tidak tetapi langsung dihadapkan pada halaman awal permainan maka pada emulator pemain harus memilih terlebih dahulu apakah akan menggunakan service jaringan atau tidak baru permainan akan dimulai.

2. Selama pengujian tombol-tombol yang ada pada emulator J2ME dan telepon genggam berfungsi dengan baik

3. Pengujian pada koneksi jaringan bekerja dengan baik dengan sinkronisasi yang teratur.

4. Skenario pilih status berjalan dengan baik. Proses konfirmasi pilih status juga berjalan dengan baik.

5 Skenario koneksifitas jaringan berjalan dengan baik, proses koneksi datagram, alert konfirmasi, memainkan permainan dapat dijalankan sesuai prosedur.

6. Skenario permainan berjalan dengan baik, logika dan sinkronisasi permainan dapat dijalankan sesuai aturan permainan, validasi posisi menang (final position) juga berjalan dengan baik.

Gambar

Gambar 4.3. Jendela setelah client terhubung
Tabel 4.1 Hasil Pengujian Aplikasi

Referensi

Dokumen terkait

Berdasarkan hasil wawancara di atas, penulis menyimpulkan bahwa koordinasi yang dilakukan dalam penanganan tindak kejahatan geng motor yang sering terjadi di

Pengaruh positif ini memberikan makna bahwa semakin baik persepsi pengguna e- commerce (UKM) tentang kemudahan (perceived ease of use) yang terbentuk maka semakin yakin pula

Berdasarkan hasil uji t independent skor N-gain eksperimen - skor N-gain kontrol diperoleh thitung&gt;ttabel sehingga kesimpulan analisisnya tolak Ho yang artinya

Pada Gambar 1.8 terdapat keluhan dari konsumen dengan akun @revixvals mengenai informasi barang yang ada di website Zalora yang tidak sesuai yaitu konsumen

Seseorang pada penelitian ini akan dinyatakan memiliki problematic internet use jika mengalami perubahan mood (menggunakan internet untuk memfasilitasi beberapa perubahan pada

Tesis berjudul “KAJIAN KINERJA PERANSERTA PETANI PEMAKAI AIR DALAM UPAYA PENINGKATAN OPERASI DAN PEMELIHARAAN JARINGAN IRIGASI NOKAN RAMA AGUNG KABUPATEN BENGKULU UTARA ”

Finally, Pierre Cardin Indonesia has violeted the terms of article 4 jo article 6 paragraph (1) letter b of Trademark Law because he has a bad faith and had imitated the

[r]