• Tidak ada hasil yang ditemukan

BAB IV IMPLEMENTASI DAN PENGUJIAN

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB IV IMPLEMENTASI DAN PENGUJIAN"

Copied!
15
0
0

Teks penuh

(1)

57

IMPLEMENTASI DAN PENGUJIAN

4.1 Implementasi

Setelah melakukan analisis dan perancangan terhadap aplikasi yang akan

dibangun, tahapan selanjutnya adalah implementasi dan pengujian. Untuk

mengimplementasikan pengembangan aplikasi perangkat lunak game Battleship

sesuai dengan analisis dan perancangan, berikut spesifikasi komputer dimana

sistem diimplementasikan dan diujikan.

Pada tahapan implementasi terdapat dua cakupan yaitu spesifikasi

kebutuhan sistem yang meliputi perangkat keras (hardware), perangkat lunak

(software), implementasi yang meliputi proses pengkodean, desain antarmuka dan

hal-hal yang berhubungan dengan pengujian aplikasi.

4.1.1 Implementasi Aplikasi

Pada bab ini diterangkan secara rinci mengenai tahapan-tahapan

implementasi aplikasi perangkat lunak game Battleship yang meliputi proses

pengkodean, dan bentuk tampilan layar.

4.1.1.1 Pengkodean

Pada proses pengkodean aplikasi ini, perlu terlebih dahulu dibuat

modul-modul. Modularisasi merupakan pembuatan program berdasarkan modul-modul-modul.

Modul dapat berupa fungsi atau prosedur. Statement yang digunakan penulis

untuk modularisasi adalah function.

(2)

Dalam pemrograman pengembangan aplikasi perangkat lunak game

Battleship, terdapat beberapa perintah yang akan dijelaskan diantaranya adalah :

1. setting koneksi, didalamnya terdapat pilihan permainan antara jaringan atau

permainan dengan komputer. Bahasa pemprogramannya adalah sebagai

berikut :

If Option2.Value Then

'2 orang - Sebagai server Winsock.Close

Winsock.LocalPort = 1234 Winsock.Listen

mess = " Sedang menunggu computer client ..." ElseIf Option3.Value Then

'2 orang - Sebagai klien Winsock.Close

If txtServer.Text <> "" Then

Winsock.Connect txtServer.Text, 1234

mess = " Menunggu balasan dari server ..." Else

MsgBox "Masukkan IP Server !", vbCritical Exit Sub

End If

ElseIf Option1.Value Then '3 Lawan Komputer

drawField 'gambar daerah kosong drawFieldcom 'gambar daerah kosong CreateComShip

End If

Perintah di atas merupakan pilihan ketika pertama kali aplikasi Battleship

dijalankan, pada pilihan pemainan antar jaringan terdapat 2 pilihan yang harus di

pilih oleh pemain. Apakah pemain sebagai server atau client, apabila pemain

memilih sebagai server maka pemain akan menunggu pemain lain sebagai client

untuk dapat bermain secara bersamaan melalui jaringan LAN. Berikut ini

merupakan perintah ketika pemain sebagai server akan membuka koneksi untuk

memberikan jalan kepada client.

Winsock.Close

Winsock.LocalPort = 1234

Winsock.Listen

(3)

Ketika server telah membuka koneksinya dengan nilai port 1234, maka

server akan menunggu koneksi dari client. Dengan perintah koneksi pada client

sebagai berikut :

Winsock.Connect txtServer.Text, 1234

mess = " Menunggu balasan dari server ..."

Setelah client membuka port 1234 dan memasukkan IP Server, maka

koneksi antara client dan server akan secara langsung terhubung secara bersamaan

pada jaringan LAN yang dapat digunakan pada aplikasi game Battleship dan

fasilitas chatting yang terdapat didalamnya.

Lalu pada pengembangan aplikasi permainan Battleship ini ditambahkan

fasilitas agar pemain dapat bermain dengan komputer, untuk menjalankan

perintah komputer dalam permainan Battleship ini, yang dilakukan oleh komputer

adalah menggunakan fungsi acak variabel ketika menembak kapal pemain.

Diantaranya pada saat pemain memilih untuk bermain bersama komputer, maka

dijalankan perintah fungsi drawField dan drawFieldcom,

perintah /

scriptnya

adalah sebagai berikut :

Sub drawField()

Dim i As Integer 'counter Dim j As Integer 'counter For i = 0 To max - 1

For j = 0 To max - 1

BitBlt field1.hDC, i * 30, j * 30, tile.ScaleWidth, tile.ScaleHeight, tile.hDC, 0, 0, vbSrcCopy

Next j Next i End Sub

Sub drawFieldcom()

Dim i As Integer 'counter Dim j As Integer 'counter For i = 0 To max - 1

For j = 0 To max - 1

BitBlt field2.hDC, i * 30, j * 30, tile.ScaleWidth, tile.ScaleHeight, tile.hDC, 0, 0, vbSrcCopy

Next j Next i End Sub

(4)

Fungsi drawfield() pada perintah diatas digunakan untuk membuat

kotak-kotak kosong 21x21 untuk wilayah strategi pemain, sedangkan untuk fungsi

drawfieldcom() digunakan untuk membuat kota-kotak kosong 21x21 untuk

wilayah strategi komputer secara otomatis dan bersamaan.

2. Susun kapal, dilakukan secara manual pada pemain client dan server pada

permainan antar jaringan, sedangkan untuk permainan lawan komputer

menggunakan fungsi random/acak untuk menyusun kapal.

Peletakan kapal pada komputer dilakukan secara acak dengan

menggunakan fungsi CreateComShip(), perintah/scriptnya adalah sebagai berikut:

Sub CreateComShip()

Dim pB As Integer, pX As Single, pY As Single Dim bStat As Boolean

Do

Randomize

pB = Int(Rnd() * (3 - 1) + 1)

pX = (Int(Rnd() * (16 - 1) + 1) * 30) - 15 pY = (Int(Rnd() * (16 - 1) + 1) * 30) - 15 'Set box visible

If Not box.Visible Then box.Visible = True End If

'Cursor di tengah kotak

box.Left = pX - box.Width / 2 box.Top = pY - box.Height / 2 'Kotak tetap di dalam box If box.Left < 0 Then box.Left = 0 End If If box.Top < 0 Then box.Top = 0 End If

If box.Left + box.Width > 2100 Then box.Left = 2100 - box.Width End If

If box.Top + box.Height > 2100 Then box.Top = 2100 - box.Height End If

compShipSet pB, pX, pY bStat = allSetcom() Loop Until bStat = True End Sub

(5)

fungsi CreateComShip() tersebut digunakan untuk meletakkan posisi kapal

yang diletakkan pada wilayah strategi komputer secara acak dengan perintah

Rnd() untuk mendapatkan nilai acak, sehingga posisi kapal tidak diketahui oleh

pemain, karena posisinya berubah-ubah setiap kali melakukan permainan dengan

komputer. Setelah mendapatkan nilai untuk posisi x,y dan b sebagai panjang

kapal, kemudian dilanjutkan dengan memanggil fungsi compshipset(), seperti

pada perintah script dibawah ini :

Sub compShipSet(btnSet As Integer, X As Single, Y As Single) If btnSet = 1 Then

'Cari tempat yang masih bisa ditempati kapal di ship array For curShip = 1 To 19

If shipscom(curShip) Is Nothing Then Exit For

End If Next

If checkValiditycom(Int(X / 30), Int((box.Top + 10) / 30), vbKeyDown, mark) Then

'Tandai petak di sekeliling kapal

For i = Int((box.Top + 10) / 30) To Int((box.Top + 10) / 30) + mark - 1

zone3(Int(X / 30), i) = mark Next i

'Set kapal baru

Set shipscom(curShip) = New shipClass shipscom(curShip).setValues Int(X / 30), Else Exit Sub End If End If End If Exit Sub End Sub

fungsi compshipset() digunakan untuk meletakkan kapal-kapal di wilayah

strategi komputer, didalamnya terdapat fungsi checkvalidtycomp untuk mencegah

peletakan kapal-kapal di kotak yang sudah terisi kapal di kotak tersebut.

3. Medan Perang, pada masing-masing wilayah strategi ditentukan dengan

ukuran 21x21 kotak yang dapat diletakkan 20 kapal pada masing-masing

pemain. Sedangkan untuk ukuran kapal dapat ditentukan sesuai keinginan

pemain sebagai strategi permainan.

(6)

Agar masing-masing pemain dapat melakukan tembakan ke arah lawan

digunakan perintah fungsi parseCom(), Perintah/scriptnya adalah sebagai berikut :

Sub parseCom(info As String)

msgtype = Left(info, InStr(1, info, ":") - 1) P_Score = InStr(1, info, ";")

If P_Score > 0 Then

msg = Mid(info, InStr(1, info, ":") + 1, P_Score - (InStr(1, info, ":") + 1))

cNilai = Mid(info, InStr(1, info, ";") + 1) lblScore = cNilai

Label27.Caption = cNilai Else

msg = Mid(info, InStr(1, info, ":") + 1) End If

'Proses pesan

If msgtype = "User" Then

MsgBox (msg & " telah bergabung !") user = msg

drawField

ElseIf msgtype = "Shot" Then 'MsgBox "tes" 'Tembak di posisi x, y cX = Left(msg, InStr(1, msg, ",") - 1) cY = Mid(msg, InStr(1, msg, ",") + 1) 'Koordinat_Temp tempX = cX tempY = cY

'zone3(x,y) < 5 - kena tembak

If zone3(cX, cY) > 0 And zone3(cX, cY) < 5 Then zone3(cX, cY) = zone3(cX, cY) + 4

'Cari head_x kapal Do

tempX = tempX - 1 If tempX < 0 Then Exit Do

End If

Loop Until zone3(tempX, cY) = 0 headX = tempX + 1

end if end if End Sub

Pada fungsi parsecomp() terdapat beberapa perintah yang digunakan untuk

arah tembakan kepada lawan dengan kondisi ketika kena tembak atau tidak kena

tembak, kemudian terdapat juga penentuan nilai score pada masing-masing

pemain untuk menetukan menang atau kalah dalam permainan.

(7)

4.1.1.2 Tampilan Layar

Tampilan layar merupakan tampilan yang akan digunakan oleh pengguna

sehingga dapat dirasakan manfaatnya. Beberapa tampilannya adalah sebagai

berikut :

1. Tampilan Form Splash

Berikut ini adalah gambar form splash pada Gambar 4.1

Gambar 4.1 Tampilan Form Splash

2. Tampilan Form Utama pengembangan aplikasi permainan Battleship

Berikut ini adalah gambar form utama pengembangan aplikasi permainan

Battleship pada Gambar 4.2

(8)

Pada Tampilan layar form utama pengembangan aplikasi permainan

Battleship, pemain akan melihat tampilan untuk pilihan permainan antar jaringan

atau permainan lawan komputer. Lihat Gambar 4.3

3. Tampilan Form Wilayah Strategi Kapal

Berikut ini adalah gambar form wilayah strategi kapal pada Gambar 4.4

Gambar 4.4 Tampilan Form Utama Wilayah Strategi Kapal

Gambar 4.3 Pilih Jenis Permainan

(9)

Pada Tampilan layar form wilayah strategi kapal, pemain akan melihat

tampilan untuk menentukan jenis kapal yang akan diletakkan sebanyak 20 kapal.

Tampilannya adalah sebagai berikut : Lihat Gambar 4.5

4. Tampilan Form Medan Perang

Berikut ini adalah gambar form medan perang pada Gambar 4.6

Gambar 4.6 Tampilan Form Medan Perang

Gambar 4.5 Tampilan Form Wilayah Strategi Kapal

(10)

4.2 Pengujian

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 skenario pengujian, hasil pengujian, dan analisis hasil

pengujian.

4.2.1 Lingkup Pengujian

Berikut ini merupakan spesifikasi kebutuhan sistem, dimana sistem dibuat

dan dijalankan.

1. Perangkat keras (hardware):

a. Prosesor Intel Pentium IV 1.80 GHz

b. RAM 512 MB

c. Harddisk

2. Perangkat lunak (software):

a. Visual Basic 6.0 merupakan bahasa pemrograman yang digunakan

untuk pengembangan dan implementasi pengembangan aplikasi

permainan Battleship.

(11)

4.2.2 Skenario Pengujian BlackBox

Sebelum pengujian pengembangan aplikasi permainan Battleship akan

dijelaskan pada Tabel 4.1 tentang skenario normal dan tidak normal yang terjadi.

Skenario yang dijelaskan antara lain skenario Setting Koneksi, Susun Kapal dan

Medan Perang.

Tabel 4.1 Skenario Normal dan Tidak Normal.

Skenario Sifat Kondisi Awal Hasil yang diinginkan Setting

Koneksi Multi Player

Normal Terdapat 2 pilihan

permainan diantaranya antar jaringan

Permainan antar jaringan dapat saling terhubung dengan 2 pemain Tidak

Normal

Tidak ada pemain lain untuk permainan antar jaringan

Tetap menunggu pemain lain untuk permainan antar jaringan

Setting Koneksi

Single Player

Normal Terdapat 2 pilihan

permainan diantaranya antar jaringan dan lawan komputer

permainan lawan komputer dapat langsung bermain tanpa pemain lain

Tidak Normal

Memilih koneksi lawan komputer

Tetap menunggu

Susun Kapal

Normal Terdapat kotak 21x21

untuk penyusunan kapal

Kapal-kapal dapat disusun pada wilayah strategi pemain dengan jumlah kapal sebanyak 20 kapal dan jenis kapal dapat ditentukan oleh pemain

Tidak Normal

Tidak ada kotak ukuran 21x21

Masing-masing pemain belum menekan tombol mulai

Medan Perang

Normal Terdapat 21x21 kotak

yang ditutupi oleh animasi air

Animasi air bergerak dan pemain dapat menembak ke arah wilayah strategi lawan untuk tengelamkan seluruh kapal lawan

Tidak Normal

Tidak ada animasi air dan kapal yang tersusun

Masing-masing pemain harus sudah siap bermain

Score Nilai

Normal Masing-masing pemain

memiliki nilai score 0

Setiap pemain akan bertambah nilai score+10 apabila

meneggelamkan kapal lawannya Tidak

Normal

Score tidak nol Nilai score tidak bertambah

walaupun kapal lawan sudah ditenggelamkan

Chatting Kirim Pesan

Normal Pesan belum di

masukkan

Pemain 1 dan pemain 2 dapat saling berkirim pesan Tidak

Normal

(12)

4.2.3 Hasil Pengujian BlackBox

Pada Tabel 4.2 akan dijelaskan hasil pengujian dari skenario Setting

Koneksi, Susun Kapal dan Medan Perang.

Tabel 4.2 Hasil Pengujian Blackbox.

Skenario Sifat Kondisi Awal Hasil yang diinginkan Hasil Pengujian Status Akhir Setting Koneksi Multi Player Normal Terdapat 2 pilihan permainan diantaranya antar jaringan Permainan antar jaringan dapat saling terhubung dengan 2 pemain

Permainan antar jaringan dapat saling terhubung dengan 2 pemain Sukses Tidak Normal Tidak ada pemain lain untuk permainan antar jaringan Tetap menunggu pemain lain untuk permainan antar jaringan

Tetap menunggu pemain lain untuk permainan antar jaringan Setting Koneksi Single Player Normal Terdapat 2 pilihan permainan diantaranya antar jaringan dan lawan komputer permainan lawan komputer dapat langsung bermain tanpa pemain lain

permainan lawan komputer dapat langsung bermain tanpa pemain lain

Sukses Tidak Normal Memilih koneksi lawan komputer

Tetap menunggu Tetap menunggu

Susun Kapal

Normal Terdapat kotak

21x21 untuk penyusunan kapal Kapal-kapal dapat disusun pada wilayah strategi pemain dengan jumlah kapal sebanyak 20 kapal dan jenis kapal dapat ditentukan oleh pemain

Kapal-kapal dapat disusun pada wilayah strategi pemain dengan jumlah kapal sebanyak 20 kapal dan jenis kapal dapat ditentukan oleh pemain Sukses Tidak Normal Tidak ada kotak ukuran 21x21 Masing-masing pemain belum menekan tombol mulai Masing-masing pemain belum menekan tombol mulai Medan Perang Normal Terdapat 21x21 kotak yang ditutupi oleh animasi air Animasi air bergerak dan pemain dapat menembak ke arah wilayah strategi lawan untuk tengelamkan seluruh kapal lawan

Animasi air bergerak dan pemain dapat menembak ke arah wilayah strategi lawan untuk tengelamkan seluruh kapal lawan Sukses Tidak Normal Tidak ada animasi air dan kapal yang tersusun

Masing-masing pemain harus sudah siap bermain

Masing-masing pemain harus sudah siap bermain

(13)

Score Nilai Normal Masing-masing pemain memiliki nilai score 0

Setiap pemain akan bertambah nilai score+10 apabila meneggelamkan kapal lawannya

Setiap pemain akan bertambah nilai score+10 apabila meneggelamkan kapal lawannya Sukses Tidak Normal

Score tidak nol Nilai score tidak bertambah walaupun kapal lawan sudah ditenggelamkan

Nilai score tidak bertambah walaupun kapal lawan sudah ditenggelamkan Chatting

Kirim Pesan

Normal Pesan belum di

masukkan

Pemain 1 dan pemain 2 dapat saling berkirim pesan

Pemain 1 dan pemain 2 dapat saling berkirim pesan Sukses Tidak Normal Pesan tetap kosong

Pesan tidak ada response

Pesan tidak ada response

4.2.4 Pengujian Whitebox

Whitebox adalah cara pengujian dengan melihat ke dalam modul untuk

meneliti kode-kode program yang ada, dan menganalisis apakah ada kesalahan

atau tidak. Jika ada modul yang menghasilkan output yang tidak sesuai dengan

proses bisnis yang dilakukan, maka baris program, variable, dan parameter yang

terlibat pada unit tersebut diperbaiki. Lihat Gambar 4.7 dan Gambar 4.8

1 2 3 4 5 6 8 7

1. Splash Screen Game Battleship 2. Pilih Permainan Lawan Komputer 3. Mulai Membuat Strategi

4. Tersusun 21x21 kotak

5. pengulangan variabel i = 0 to 20 dan j=0 to 20, untuk menghasilkan kotak 21x21 . dan komputer menyusun kapal-kapalnya sebanyak 20 kapal secara otomatis 6. Pemain menyusun strategi Kapal 7. Kapal sudah diletakkan

8. Pengulangan varibel untuk status kapal sudah diletakkan, tidak boleh melewati batas area 21x21 kotak yang disediakan 9. Memulai Permainan

10. Animasi air

11. Pengulangan variabel untuk menghasilkan animasi air

12. Menembak ke arah lawan 13. Pergantian menembak

14. Pengulangan varibel untuk menentukan suara tidak kena tembak, kapal yang tertembak sebagiannya, meneggelamkan kapal yang tertembak dan menghasilkan score nilai 11 10 14 13 9 12

(14)

Tabel 4.3 Tabel Matrix Pengujian Whitebox

1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 1 2 1 3 1 1 4 1 5 1 1 6 1 7 1 1 8 1 9 1 1 10 1 11 12 13 14

Gambar 4.8 Pengujian Whitebox aplikasi game Battleship Multiplayer

1. Splash Screen Game Battleship 2. Pilih Koneksi Server/Client 3. Menunggu Koneksi Server/Client

menggunakan winsock 4. Tersusun 21x21 kotak

5. Pengulangan variabel i = 0 to 20 dan j=0 to 20, untuk menghasilkan kotak 21x21

6. Pemain 1 dan pemain 2 menyusun strategi Kapal

7. Kapal sudah diletakkan

8. Pengulangan varibel untuk status kapal sudah diletakkan, tidak boleh melewati batas area 21x21 kotak yang disediakan

9. Mulai Permainan 10. Animasi air

11. Pengulangan variabel untuk menghasilkan animasi air 12. Menunggu komputer lawan

meletakkan 20 kapalnya 13. Menembak ke arah lawan 14. Pengulangan varibel untuk

menentukan suara tidak kena tembak, kapal yang tertembak sebagiannya, meneggelamkan kapal yang tertembak dan menghasilkan score nilai 1 2 3 4 5 6 8 7 11 10 14 13 9 12

(15)

4.2.5 Analisis Hasil Pengujian

Setelah tahap pengujian maka dapat dianalisa bahwa:

1. Setting Koneksi untuk permainan antar jaringan dapat berjalan dengan baik,

ketika ada 2 pemain diantaranya sebagai client dan server.

2. Susun Kapal dapat dilakukan dengan meletakkan kapal-kapal yang di sediakan

dengan menetukan jenis kapal sesuai keinginan pemain dengan jumlah kapal

yang ditentukan sebanyak 20 kapal.

3. Medan Perang ditentukan pada posisinya masing-masing, di sebelah kiri

merupakan medan pemain dan sebelah kanan adalah medan lawan. Pada

pengembangan aplikasi Battleship ini juga terdapat animasi air yang bergerak

dengan tampilan seperti medan perang di lautan lepas. Pada saat pemain

menembak ke arah wilayah strategi lawan maka secara otomatis pemain lawan

diberikan waktu untuk menembak kembali secara bergantian.

Gambar

Gambar 4.2 Form Utama pengembangan aplikasi permainan Battleship
Gambar 4.4 Tampilan Form Utama Wilayah Strategi Kapal Gambar 4.3 Pilih Jenis Permainan
Gambar 4.6 Tampilan Form Medan Perang  Gambar 4.5 Tampilan Form Wilayah Strategi Kapal
Tabel 4.1 Skenario Normal dan Tidak Normal.
+4

Referensi

Dokumen terkait

Pemain harus mengambil kartu yang ada di kotak kartu pertanyaan, kemudian membaca dan menjawab pertanyaan tersebut .Jika pemain berhasil, pemain akan mendapatkan

Dari hasil pengujian load test , diketahui pula bahwa pertambahan jumlah gen dan relasi tidak berpengaruh pada kebutuhan memori algoritma likelihood weighting dan Markov

Pada BAB ini akan dibahas mengenai Implementasi aplikasi informasi perguruan tinggi untuk program studi teknik informatika di wilayah jabodetabek beserta

Ketika pemain menjalankan aplikasibelajar tajwid, yang pertama kali ditampilkan kepada user adalah jendela inisialisasi dan pemain dapat memilih menu aplikasi dengan menekan

Pengujian terhadap aplikasi server, untuk memastikan objek balasan hasil keluaran dari server telah sesuai dengan jenis objek permintaan yang di masukan melalui

Layout ini untuk user menginput mencari bus yang aktif yang akan dimasukan, tanggal keberangkatan. Gambar 4.6 Aktifkan Bus.. g) Antarmuka Jumlah Total Penumpang. Layout

Tampilan halaman member kritik dan saran Menguji tombol kirim dan batal Form member kotak kritik dan saran Input data- data sesuai dengan form Data berhasil

Tidak Normal : gagal menampilkan halaman jenjang pendidikan Menu jenjang pendidikan tidak tampil Tidak dapat menampilkan halaman jenjang pendidikan 3 Menu Pengaturan