Download - Catur Cina Peraturan

Transcript
Page 1: Catur Cina Peraturan

37  

BAB 3

ANALISIS DAN PERANCANGAN SISTEM

3.1. Peraturan Catur China

Catur China merupakan permainan yang cukup terkenal dan dimainkan oleh berbagai

komunitas pencinta catur china. Berikut adalah peraturan catur china yang dibuat oleh

Club Xiang Qi (CXQ):

Peraturan Catur China CXQ terdiri dari tiga (3) bagian:

1. Peraturan dasar mengenai langkah-langkah yang diperbolehkan.

2. Peraturan lanjutan yang melarang beberapa langkah tertentu demi permainan

yang adil.

3. Peraturan undi untuk mencegah permainan yang terlalu lama.

Gambar 3.1. Papan Catur China

Page 2: Catur Cina Peraturan

38  

  

3.1.1. Peraturan Dasar Catur China CXQ

Langkah-langkah yang diperbolehkan dalam catur china:

1. Raja (King) bergerak hanya satu (1) kotak tiap giliran, secara horizontal atau

vertikal. Bidak Raja harus selalu berada di “istana”, yang ditandai dengan

tanda silang (X).

2. Penjaga (Guard) hanya bergerak satu (1) kotak tiap giliran secara diagonal.

Bidak Penjaga juga harus selalu berada di “istana”, seperti bidak Raja.

3. Mentri (Minister) dapat bergerak dua kotak tiap giliran secara diagonal

(contoh, 2 kotak ke kiri/kanan, dan dua kotak ke atas/bawah dalam satu

gerakan). Mereka harus berada di sisi sungai tempat mereka berada. Jika ada

bidak yang berada di tengah posisi awal dan posisi tujuan bidak Mentri, maka

bidak Mentri tidak dapat mengambil langkah tersebut.

4. Benteng (Rook) dapat bergerak satu (1) atau lebih langkah secara horizontal

atau vertikal, selama diantara posisi awal dan tujuan tidak ada bidak yang

menghalangi.

5. Ksatria (Knight) dapat bergerak dua (2) kotak secara horizontal dan satu (1)

kotak secara vertikal (atau dua (2) kotak vertikal dan satu (1) kotak

horizontal). Jika ada bidak lain yang berada di sebelah bidak Kuda secara

Page 3: Catur Cina Peraturan

39  

  

horizontal atau vertikal, maka bidak Kuda tidak dapat mengambil langkah

tersebut.

6. Meriam (Cannon) dapat bergerak satu (1) atau lebih kotak secara horizontal

atau vertikal seperti bidak Benteng. Tetapi, dalam gerakan menangkap, harus

ada tepat satu kotak yang tidak kosong di antara posisi awal dan posisi akhir.

Dalam gerakan biasa, kotak di antara posisi awal dengan posisi tujuan harus

kosong.

7. Pion (Pawn) dapat bergerak satu (1) kotak tiap giliran. Jika sebuah pion

belum melewati sungai, ia hanya dapat bergerak maju secara vertikal. Setelah

ia melewati sungai, pion juga dapat bergerak secara horizontal.

8. Menangkap: Ketika satu bidak bergerak ke kotak yang sedang dikuasai oleh

bidak lawan, ia dapat menangkap bidak lawan tersebut. Bidak yang

ditangkap tersebut akan dikeluarkan dari papan.

9. Ruang gerak Raja: Kedua raja di atas papan tidak boleh berada di satu garis

vertikal yang sama tanpa ada bidak lain di antara mereka. Sebuah gerakan

yang membuat kedua raja pada posisi tersebut merupakan gerakan yang

ilegal/dilarang.

Page 4: Catur Cina Peraturan

40  

  

10. Keamanan Raja: Pemain tidak boleh membiarkan Raja ditangkap oleh

lawan pada gerakan selanjutnya. Gerakan yang secara sengaja membuat

bidak Raja pada posisi tersebut merupakan gerakan yang ilegal/dilarang.

Kondisi permainan berakhir: Permainan selesai ketika salah satu dari

situasi ini terjadi:

• Checkmate: Jika salah satu bidak dapat menangkap bidak Raja lawan dan

lawannya tersebut tidak dapat menghindarinya, maka pemilik bidak

pertamalah yang menang.

• Stalemate: Jika salah satu dari pemain tidak memiliki langkah yang valid,

maka pemain tersebut kalah.

• Jika salah satu pihak atau kedua pihak melanggar Aturan Lanjutan

(Advanced Rules).

3.1.2. Aturan Lanjutan Catur China CXQ

Sejumlah pola langkah tidak diperbolehkan untuk memastikan

permainan berlangsung dengan adil. Singkatnya, peraturan CXQ melarang

seorang pemain untuk mengancam bidak lawan dengan menggunakan

bidaknya secara terus-menerus. Gerakan seperti itu merupakan perpetual

checks (jika bidak Raja yang terancam) atau perpetual chases (jika bidak

yang tidak dilindungi selain bidak Raja, yang terancam).

Terminologi: untuk membuat peraturannya jelas, istilah-istilah berikut ini

digunakan:

Page 5: Catur Cina Peraturan

41  

  

1. Check: sebuah gerakan dari bidak manapun yang menyebabkan bidak Raja

pihak lawan terancam untuk ditangkap pada gerakan berikutnya.

2. Same type sacrifice/trade: sebuah bidak bergerak pada posisi dimana ia

dapat menangkap bidak lawan yang tipenya sama dan pada giliran

berikutnya, bidak lawan yang lain dapat menangkap bidak tersebut.

3. Chase: sebuah bidak bergerak pada posisi dimana ia dapat menangkap bidak

lawan, yang bukan bidak Raja, pada gerakan berikutnya. Sebuah bidak

bergerak dan menyebabkan sebuah bidak meriam menyerang bidak lawan

juga disebut chase. Ada beberapa pengecualian:

• apabila bidak Raja atau bidak Pion yang mengancam posisi bidak lain

tidak disebut chase.

• apabila salah satu bidak mengancam untuk menangkap sebuah bidak Pion

sebelum bidak tersebut menyeberangi sungai tidak disebut chase.

• same type sacrifice/trade bukanlah sebuah chase.

4. Protected: sebuah bidak terlindungi apabila ada sebuah bidak yang dapat

menangkap bidak apapun, menangkap bidak yang dilindungi tersebut. Ada

pengecualian ketika bidak Benteng tidak pernah dianggap terlindungi ketika

bidak tersebut terancam oleh bidak meriam atau ksatria milik lawan.

Semua gerakan yang mengikuti aturan dasar diperbolehkan kecuali:

1. Perpetual Check: melakukan check secara terus-menerus pada bidak lawan

dengan menggunakan satu atau lebih bidak.

Page 6: Catur Cina Peraturan

42  

  

2. Perpetual Chase: mengejar satu bidak lawan yang tidak dilindungi secara

terus-menerus dengan menggunakan satu atau lebih bidak.

Pemain yang melanggar Aturan Lanjutan akan dianggap kalah. Jika kedua

pemain melakukan perpetual check atau perpetual chase, maka permainan

dianggap seri. Jika salah satu pemain melakukan perpetual check, sedangkan

lawannnya melakukan perpetual chases, maka pemain yang melakukan

perpetual check-lah yang kalah.

CXQ membatasi seorang pemain untuk melakukan check/chase sebanyak

enam (6) kali dengan menggunakan satu bidak, dua belas (12) kali

menggunakan dua (2) bidak, dan delapan belas (18) kali jika menggunakan

tiga (3) bidak, sebelum gerakan tersebut dianggap sebagai perpetual

check/chase.

3.2. Analisa Game Sejenis

Sebagai perbandingan dan referensi untuk pembuatan game catur china,

maka diperlukan analisa dari game-game yang sejenis, sehingga aplikasi yang

dibuat pada akhirnya dapat menjadi aplikasi game yang sama baiknya atau lebih

baik dari game-game sejenis yang sudah ada di pasaran. Berikut adalah analisa

game sejenis yang sudah ada:

Page 7: Catur Cina Peraturan

43  

  

3.2.1. Xiang Qi Training (www.games.co.id)

• Visual/Interface

o Tampilan Awal

Gambar 3.2. Tampilan Awal – Xiang Qi Training

Kesan pertama yang diciptakan game ini adalah klasik dan

sederhana. Kesan klasik dimunculkan oleh desain bidak-bidaknya

yang tampak seperti bidak batu dan juga papannya yang nampak

seperti papan batu, seperti yang tampak pada Gambar 3.2. Kesan

sederhana dimunculkan oleh warna yang dipilih pembuat game ini

tidak banyak. Hanya warna abu-abu untuk backgroundnya, warna

light black untuk bidak di sisi kiri, warna coklat kayu untuk bidak di

sisi kanan, dan warna stone white untuk papan caturnya. Posisi

papan juga sengaja ditaruh miring agar pemain dapat melihat semua

Page 8: Catur Cina Peraturan

44  

  

bidak yang ada di atas papan dengan jelas. Di sebelah kiri atas

terdapat panel-panel menu, dan di sebelah bawah window juga

terdapat note mengenai keadaan akhir permainan atau disebut

checkmate.

o Melakukan move

Gambar 3.3. Tampilan ketika melakukan move – Xiang Qi

Training

Pemain harus melakukan single click pada bidak yang ingin

digerakkan untuk melakukan suatu move. Pada saat mouse on pada

salah satu bidak, bidak akan berubah warna. Jika itu bidak kiri,

maka bidak akan berubah warna menjadi warna biru, dan jika bidak

kanan, maka bidak akan berubah menjadi warna merah. Setelah

Page 9: Catur Cina Peraturan

45  

  

click, akan muncul possible move yang dapat dilakukan bidak

tersebut, tergantung pada posisi awal bidak tersebut. Possible move

akan ditunjukkan dengan perubahan warna pada kotak papan yang

dapat dilewati bidak. Klik pada satu kotak untuk menentukan kotak

tujuan dan maka akan ada efek fade-in dan fade-out pada bidak

tersebut, dari kotak awal ke kotak tujuan.

o Melakukan penyerangan

Gambar 3.4. Tampilan setelah menyerang bidak lawan –

Xiang Qi Training

Efek fade-in dan fade-out juga digunakan pada saat pemain

melakukan gerakan menyerang. Bidak yang menyerang akan fade-

out dari posisi awalnya, kemudian bidak yang diserang akan fade-

Page 10: Catur Cina Peraturan

46  

  

out dari posisinya dan digantikan oleh bidak yang menyerang,

dengan efek fade-in.

• Fungsionalitas

Sisi fungsionalitas permainan catur china di website

www.games.co.id tergolong buruk karena hampir semua panel menu

yang ada di permainan ini tidak dapat digunakan atau diakses. Hanya

panel reset board dan pengatur ukuran yang berfungsi pada game ini.

Panel-panel lain yang terdiri dari multiplayer version, news update,

about, instructions, rules, dan feedback tidak dapat berfungsi. Panel-

panel tersebut merupakan hyperlink menuju halaman web yang lain.

Fungsi-fungsi dasar dalam permainan dapat berfungsi dengan

baik. Fungsi-fungsi tersebut antara lain fungsi untuk menggerakkan

bidak, melihat possible move, dan menyerang bidak lawan.

• Sound

Dari pemilihan panel menu, event pada bidak sampai akhir

permainan, tidak ada sound effect yang diberikan pada permainan ini.

Ini mengakibatkan permainan menjadi lebih membosankan.

• Community & Multiplayer function

Permainan ini merupakan bagian dari suatu portal game yang

memiliki ratusan mini-games yang lain dan memiliki komunitas web.

Page 11: Catur Cina Peraturan

47  

  

Untuk memainkan permainan ini tidak harus menjadi anggota

(member) dari website ini, tetapi jika ingin berkomentar, user harus

menjadi member dari komunitas website ini.

Pada permainan ini juga, dalam satu game hanya bisa melibatkan

satu (1) pemain, yang dapat menggerakkan kedua sisi bidak secara

bergantian. Fungsi multiplayer sebenarnya tersedia pada game ini, tetapi

sangat disayangkan fungsi tersebut tidak dapat dijalankan. Selain itu

juga tidak ada tanda seperti username untuk menunjukkan identitas dari

pemain yang sedang bermain di board tersebut. Seluruh permainan

bersifat independent dan tidak dapat disaksikan oleh orang lain melalui

koneksi jaringan internet.

• Addictive Elements

Addictive Elements adalah elemen-elemen pada game yang dapat

membuat pemain game tersebut ingin terus memainkan game. Elemen

tersebut dapat berupa leveling, pengumpulan item, tabel high score, dan

mini-games. Xiang Qi Training tidak memiliki elemen-elemen yang

dapat membuat pemainnya akan memainkannya secara terus-menerus.

Permainan yang ditampilkan hanya permainan catur china biasa tanpa

added value yang dapat meningkatkan daya tarik permainan, seperti

tabel high score.

Page 12: Catur Cina Peraturan

48  

  

3.2.2. Xiang Qi Online (http://www.xiangqionline.com/cotuong/)

Web ini dibuat oleh VietSon, sebuah perusahaan Vietnam yang

khusus membuat website permainan kartu dan catur china. Pada saat

membuka web ini pertama kali, user akan dapat melihat daftar high scores,

new levels dan completed quests. Kemudian di sebelah kiri akan ada pilihan

PLAY. Ada dua jenis pilihan PLAY disini: PLAY biasa dan PLAY Full

Screen. Jika user melakukan klik pada pilihan PLAY biasa, maka halaman

web akan berpindah ke http://www.xiangqionline.com/vscc/play.cfm, seperti

yang tampak pada Gambar 3.5, sedangkan jika melakukan klik pada PLAY

Full Screen, maka halaman web akan men-generate suatu page baru,

seperti pada Gambar 3.6.

• Tampilan Awal

Gambar 3.5. Halaman login Xiang Qi online – window mode

Page 13: Catur Cina Peraturan

49  

  

Gambar 3.6. Halaman login Xiang Qi online – full screen mode

Dalam tampilan permainan Xiang Qi online, terdapat papan catur china

beserta bidak-bidaknya di sebelah kiri, sedangkan di sebelah kanan terdapat

papan skor permainan, news, daftar penonton (spectators), dan tab-tab untuk

fungsi chat, profile dan settings. Di bagian bawah halaman permainan, terdapat

tombol untuk restart, resign, dan undo. Bagian paling bawah window terdapat

informasi mengenai channel dan room dimana user sekarang berada. Terakhir,

terdapat tombol change channels untuk pindah ke channel yang lain dan change

rooms untuk pindah ke room yang lain (Gambar 3.7 dan Gambar 3.8).

Bidak dua sisi dibedakan oleh dua warna yang berbeda, warna merah

untuk bidak yang berada di sisi bawah papan, dan warna hitam untuk bidak yang

berada di sisi atas papan. Nama user yang sedang bermain di room tersebut akan

ditampilkan pada room information panel yang terletak di bagian tengah atas.

Page 14: Catur Cina Peraturan

50  

  

User tidak harus memiliki account membership di VietSon untuk bisa

bermain. User dapat meng-klik tombol guest pada halaman login untuk

memainkan permainan. Tetapi dengan menggunakan fasilitas guest, score yang

dicetak user tidak akan tercatat di papan high scores.

Gambar 3.7. Halaman permainan Xiang Qi online – window mode

 

 

 

 

 

 

 

Gambar 3.8. Halaman permainan Xiang Qi online – full screen mode

Page 15: Catur Cina Peraturan

51  

  

• Mengambil move

Lakukan klik pada bidak yang ingin dipindahkan untuk

melakukan move. Bidak yang di-klik akan memunculkan animasi

seperti berdetak. Kemudian arahkan kursor ke titik tujuan bidak

tersebut. Berbeda dengan Xiang Qi Training, Xiang Qi Online tidak

memberikan penanda possible move dengan perubahan warna pada arah

legal move. Pada Xiang Qi Online, legal move ditandai dengan

perubahan titik tujuan menjadi lingkaran-lingkaran berwarna merah

yang memiliki efek animasi seperti radar militer (Gambar 3.9).

Gambar 3.9. Halaman permainan Xiang Qi online pada saat melakukan move

Page 16: Catur Cina Peraturan

52  

  

Lakukan klik sekali lagi pada titik tujuan untuk mengkonfirmasi

gerakan. Setelah itu bidak akan bergeser (sliding) ke titik tujuan dan

mengeluarkan efek animasi seperti radar juga (Gambar 3.10 dan 3.11).

Gambar 3.10. Halaman permainan Xiang Qi online setelah melakukan move (1)

Gambar 3.11. Halaman permainan Xiang Qi online setelah melakukan move (2)

Page 17: Catur Cina Peraturan

53  

  

• Gerakan menyerang bidak lawan

Klik pada bidak yang menjadi penyerang, lalu klik bidak lawan

yang ingin diserang. Bidak penyerang akan bergeser menuju posisi

bidak yang diserang dan kemudian akan ada efek animasi bidak yang

hancur seperti ledakan seperti yang tampak pada Gambar 3.12, yang

disertai dengan efek suara ledakan.

Gambar 3.12. Tampilan bidak menyerang – Xiang Qi online

• Keadaan skak adalah ketika bidak Raja pemain berada dalam

jangkauan serang bidak lawan. Pada keadaan ini, bidak Raja akan

mengeluarkan warna merah jingga di sekitarnya, sedangkan bidak

lawan yang dapat melakukan skak mate akan mengeluarkan lingkaran

merah jingga di sekitarnya, seperti yang tampak pada Gambar 3.13.

Page 18: Catur Cina Peraturan

54  

  

Gambar 3.13. Tampilan keadaan skak (check) – Xiang Qi online

3.2.3. Analisa Perbandingan Game Sejenis

Game Xiang Qi Training pada www.games.co.id dan Xiang Qi

Online pada www.xiangqionline.com pada dasarnya memiliki perbedaan

yang cukup jelas. Pertama adalah pada bentuk bidak yang digunakan pada

kedua game tersebut. Pada Xiang Qi Training, bentuk bidak dibuat seperti

fungsi bidak tersebut. Contoh, untuk bidak benteng, maka bidak pada Xiang

Qi Training akan berbentuk seperti benteng atau dinding benteng, sama

bentuknya dengan pion catur konvensional, sedangkan pada Xiang Qi Online,

semua bidak memiliki bentuk yang sama yaitu bulat seperti koin. Untuk

membedakan sisi, tulisan yang diberikan di atas bidak memiliki warna yang

berbeda, dan untuk menentukan fungsi, setiap bidak diberikan tulisan

namanya di atas bidak. Permainan Catur china pada umumnya menggunakan

bidak yang bulat dan memiliki tulisan di atasnya.

Page 19: Catur Cina Peraturan

55  

  

Tabel 3.1. Tabel Perbandingan Xiang Qi Training dengan Xiang Qi Online

Xiang Qi Training Xiang Qi Online

Interface 3D, sederhana, skala dapat diperbesar atau diperkecil

2D, cukup rumit karena banyak fungsi

Fungsionalitas hanya fungsi single player yang dapat dijalankan

fungsi play, spectator, channel, invite challenger, dan lainnya dapat dijalankan dengan baik

Sound tidak ada sound

terdapat sound untuk tiap move, gerakan menyerang, dan ketika diserang

Community & Multiplayer

function terdapat menu multiplayer tetapi tidak dapat dijalankan

terdapat fungsi invite yang memungkinkan user untuk menantang user lain dalam satu game

Addictive Elements tidak terdapat addictive

element

ada tabel high score yang membuat user berusaha untuk mencatatkan username-nya disana

Accessibility

relatif cepat, namun harus melakukan search dengan keyword “chinese chess” dari website sumber (www.games.co.id), dan kemudian melakukan klik pada game chinese chess yang muncul dalam pilihan

relatif cepat dan terdapat link langsung dari webpage sumber. Hanya memerlukan dua (2) klik dari website sumber

3.3. Analisa Kuesioner

Dalam merancang aplikasi, informasi dari calon user sangat penting agar

aplikasi yang dibuat pada akhirnya dapat memenuhi kebutuhan user sehingga

dapat digunakan oleh banyak user. Kuesioner dibagikan kepada 30 responden

yang merupakan pemain catur china aktif. Berikut ini adalah isi kuesioner beserta

hasil analisis kuesioner yang dikelompokkan berdasarkan pertanyaan yang ada.

Page 20: Catur Cina Peraturan

56  

  

Pertanyaan pertama :

1. Seberapa lama Bapak/Ibu/Saudara/Saudari menggunakan komputer?

a. < 5 jam/minggu

b. 5 - 10 jam/minggu

c. > 10 jam/minggu

d. Tidak pernah

Tabel 3.2. Tabel Hasil Kuesioner Pertanyaan No. 1

Durasi Penggunaan  Komputer  Jumlah  Persentase 

< 5 jam/minggu  2 orang  6% 

5 ‐ 10 jam/minggu  ‐  0% > 10 jam/minggu  2 orang  7% 

tidak pernah  26 orang  87% 

TOTAL   30 orang  100% 

Gambar 3.14. Grafik Hasil Kuesioner Pertanyaan No. 1

Analisis: Hasil dari kuesioner yang menunjukkan hanya 13% calon user saja

yang pernah menggunakan komputer membuktikan bahwa sebagian besar dari

calon user memiliki kemampuan menggunakan komputer yang lemah. Di sisi

6%

0%

7%

87%

< 5 jam/minggu

5‐10 jam/minggu

> 10 jam/minggu

tidak pernah

Page 21: Catur Cina Peraturan

57  

  

positifnya, statistik ini menunjukkan besarnya pangsa pasar yang dimiliki oleh

permainan catur china online di masyarakat. Hobby bermain catur china dapat

menjadi motivasi calon user untuk belajar menggunakan komputer. User-

friendly interface akan mempermudah calon user dalam belajar menggunakan

komputer secara umum, dan website catur china secara khususnya.

Pertanyaan kedua :

2. Seberapa lama Bapak/Ibu/Saudara/Saudari menggunakan teknologi internet?

a. < 5 jam/minggu

b. 5 - 10 jam/minggu

c. > 10 jam/minggu

d. Tidak pernah

Tabel 3.3. Tabel Hasil Kuesioner Pertanyaan No. 2

Durasi Penggunaan  Internet  Jumlah  Persentase 

< 5 jam/minggu  2 orang  6% 5 ‐ 10 jam/minggu  ‐  0% 

> 10 jam/minggu  2 orang  7% tidak pernah  26 orang  87% 

TOTAL   30 orang  100% 

Page 22: Catur Cina Peraturan

58  

  

Gambar 3.15. Grafik Hasil Kuesioner Pertanyaan No. 2

Analisis: Hasil dari pertanyaan nomor dua berbanding lurus dengan hasil dari

pertanyaan nomor satu. Ini menunjukkan bahwa penggunaan komputer saat

ini hampir selalu diikuti oleh penggunaan internet oleh user. Seseorang yang

menggunakan komputer hampir bisa dipastikan juga merupakan pengguna

internet. Durasi penggunaan internet pun dapat disimpulkan bervariasi,

dengan seimbangnya jumlah responden yang memilih pilihan a dan c. Hasil

ini menunjukkan potensi yang besar untuk meningkatkan durasi penggunaan

internet oleh user, yang digunakan untuk bermain catur china online.

Pertanyaan ketiga :

3. Seberapa lama Bapak/Ibu/Saudara/Saudari bermain Xiang Qi?

a. < 7 jam/minggu

b. 7 - 14 jam/minggu

c. 14 - 20 jam/minggu

6%

0%

7%

87%

< 5 jam/minggu

5‐10 jam/minggu

> 10 jam/minggu

tidak pernah

Page 23: Catur Cina Peraturan

59  

  

d. > 20 jam/minggu

Tabel 3.4. Tabel Hasil Kuesioner Pertanyaan No. 3

Durasi Permainan Xiang  Qi Per Minggu  Jumlah  Persentase 

< 7 jam/minggu  7 orang  24% 

7 ‐ 14 jam/minggu  7 orang  23% 14 ‐ 20 jam/minggu  9 orang  30% 

> 20 jam/minggu  7 orang  23% 

TOTAL   30 orang  100% 

Gambar 3.16. Grafik Hasil Kuesioner Pertanyaan No. 3

Analisa: Hasil dari pertanyaan nomor tiga menunjukkan jawaban yang cukup

seimbang dari keempat pilihan yang ada. Hasil ini menunjukkan keberagaman

tingkat adiktif permainan catur china terhadap setiap orang dan alokasi waktu

yang mereka berikan untuk bermain catur china. Berdasarkan hasil ini, dapat

diperkirakan bahwa website permainan catur china yang dikembangkan pada

akhirnya dapat memiliki tingkat akses yang beragam dari user, dan juga

hampir dapat dipastikan dikunjungi oleh user minimal satu (1) kali dalam satu

(1) minggu untuk melakukan hobi bermain catur chinanya dari mana saja

dengan koneksi internet.

24%

23%30%

23%< 7 jam/minggu

7‐14 jam/minggu

14‐20 jam/minggu

> 20 jam/minggu

Page 24: Catur Cina Peraturan

60  

  

Pertanyaan keempat :

4. Sudah berapa lama Bapak/Ibu/Saudara/Saudari memainkan Xiang Qi?

a. < 1 tahun

b. 1 – 5 tahun

c. 5 – 7 tahun

d. > 7 tahun

Tabel 3.5. Hasil Kuesioner Pertanyaan No. 4

Lama Mengenal dan Memainkan Xiang Qi  Jumlah  Persentase 

< 1 tahun  6 orang  20% 1 ‐ 5 tahun  7 orang  23% 

5 ‐ 7 tahun  3 orang  10% > 7 tahun  14 orang  47% 

TOTAL   30 orang  100% 

Gambar 3.17. Grafik Hasil Kuesioner Pertanyaan No. 4

Analisa: Hasil pertanyaan nomor empat menunjukkan hampir setengah dari

responden memiliki pengalaman bermain catur china yang sudah lebih dari

20%

23%

10%

47%

< 1 tahun

1‐5 tahun

5‐7 tahun

> 7 tahun

Page 25: Catur Cina Peraturan

61  

  

tujuh (7) tahun. Kesimpulan yang dapat diambil dari statistik ini adalah

tingkat kesetiaan pemain catur china yang sangat tinggi, serta tingkat adiktif

permainan catur china yang kuat sehingga dapat membuat pemainnya terus

bermain hingga bertahun-tahun. Ini tentu saja merupakan informasi

menunjukkan bahwa website catur china dapat memiliki user yang stabil dan

loyal, sehingga penurunan jumlah member website akan relatif jarang terjadi.

Pertanyaan kelima :

5. Apakah Bapak/Ibu/Saudara/Saudari sering memainkan Xiang Qi di komputer

(offline atau online)?

a. Sangat sering (> 14 game/minggu)

b. Lama (< 14 game/minggu)

c. Cukup (< 8 game/minggu)

d. Kurang (< 3 game/minggu)

e. Tidak pernah

Tabel 3.6. Tabel Hasil Kuesioner Pertanyaan No. 5

Durasi Memainkan Xiang  Qi di Komputer  Jumlah  Persentase 

sangat sering ( > 14 game/minggu)  3 orang  10% sering ( < 14 game/minggu)  ‐  0% 

cukup ( < 8 game/minggu)  ‐  0% kurang ( < 3 game/minggu)  1 orang  3% 

tidak pernah  26 orang  87% 

TOTAL   30 orang  100% 

Page 26: Catur Cina Peraturan

62  

  

Gambar 3.18. Grafik Hasil Kuesioner Pertanyaan No. 5

Analisis: Hasil dari pertanyaan nomor lima menunjukkan hampir semua

pemain catur china tidak pernah memainkan permainan catur china melalui

komputer. Kesimpulan yang dapat diambil adalah permainan catur china yang

sudah ada saat ini belum dapat menarik perhatian para pemain catur china

untuk memainkannya dengan media komputer. Kurangnya kemampuan

pemain catur china untuk mengoperasikan komputer juga menjadi salah satu

penyebab rendahnya durasi permainan catur china melalui media komputer.

Pertanyaan keenam :

6. Apa yang Bapak/Ibu/Saudara/Saudari harapkan dari permainan Xiang Qi

berbasis web?

Pertanyaan nomor enam bersifat optional, yang berarti responden dapat

mengosongkan kolom jawaban pertanyaan nomor enam. Dari 30 responden

yang mengisi kuesioner, hanya ada satu responden yang mengisi kolom

10%0%

0%

3%

87%

sangat sering (> 14 game/minggu)

Sering (< 14 game/minggu

Cukup (< 8 game/minggu)

Kurang (< 3 game/minggu)

Tidak pernah

Page 27: Catur Cina Peraturan

63  

  

jawaban nomor enam. Harapan dari responden itu adalah kecepatan akses

yang baik, kemudahan untuk sign-up, murah (volume-based), memiliki history

langkah permainan, dapat memilih bahasa tertentu, dapat meng-upload foto,

dan ada fasilitas set-up.

Setelah lima (5) pertanyaan pilihan ganda dan satu (1) pertanyaan

optional di atas, responden diminta untuk mengisi tabel prioritas elemen

permainan catur china. Berikut adalah tabelnya dan hasil statistik yang

didapatkan dari 30 responden.

Tabel 3.7. Tabel Prioritas Elemen Permainan Catur China

Unsur/Elemen Aplikasi Permainan Catur China

Skala prioritas (5 = paling penting, 1 = tidak penting)

Design Interface

Komunitas

Accessibility

Sound Effect

Visual Effect

Penghitungan statistik untuk tabel prioritas dilakukan dengan cara

mengkalikan jumlah orang yang memilih elemen tersebut dengan bobot yang

diberikan (dari satu sampai lima). Berikut adalah statistik yang didapatkan

dari penghitungan hasil kuesioner.

Page 28: Catur Cina Peraturan

64  

  

Tingkat prioritas unsur/elemen aplikasi permainan catur china

Unsur/Elemen Prioritas (Bobot) 1 2 3 4 5 Total

Design Interface 1 0 5 18 6 118 Komunitas 0 1 0 9 20 138 Accessibility 0 3 22 2 3 95 Sound effect 18 10 1 0 1 46 Visual effect 11 16 2 1 0 53

Tabel 3.8. Tabel Penghitungan Bobot Prioritas Elemen Permainan Catur China

Gambar 3.19. Grafik Hasil Penghitungan Tabel Prioritas Elemen Game

Grafik di atas menunjukkan bahwa responden merasa elemen

komunitas merupakan elemen yang paling penting di dalam suatu aplikasi

permainan catur china. Elemen penting yang kedua adalah design interface,

kemudian yang ketiga adalah elemen accessibility. Elemen visual effect dan

118138

95

46 53

0

20

40

60

80

100

120

140

160

Design Interface

Komunitas Accessibility Sound effect Visual effect

Series1

Page 29: Catur Cina Peraturan

65  

  

sound effect menempati prioritas yang keempat dan kelima, yang merupakan

dua urutan terakhir dalam prioritas elemen aplikasi permainan catur china. Ini

menunjukkan ketiadaan unsur sound effect dan visual effect pada aplikasi

permainan catur china tidak akan mempengaruhi keinginan responden untuk

menggunakan aplikasi permainan.

3.4. Rancangan Aplikasi

Rancangan aplikasi dibuat berdasarkan analisa terhadap kebutuhan user

yang diketahui melalui kuesioner dan analisa terhadap aplikasi sejenis yang sudah

beredar di masyarakat. Rancangan aplikasi terbagi menjadi tiga bagian, yaitu

rancangan layar, rancangan database, dan aliran aplikasi (application flow) .

Rancangan layar merupakan rancangan awal dari desain antar muka (interface)

yang akan digunakan pada aplikasi. Rancangan layar akan meliputi semua

halaman yang akan ada pada aplikasi, baik antar muka sebelum user login, dan

setelah user login. Rancangan database merupakan rancangan awal database yang

meliputi primary key tiap tabel database dan relasinya secara logical, physical,

dan conceptual. Aliran aplikasi (application flow) adalah rancangan awal peta

aplikasi. Rancangan ini akan menggambarkan dengan jelas hubungan antara tiap

halaman dan fungsi di dalam aplikasi.

Page 30: Catur Cina Peraturan

66  

  

3.4.1. Rancangan Layar

3.4.1.1. Sebelum Login

1. Halaman Index

Gambar 3.20. Rancangan Layar - Halaman Index

Halaman index adalah halaman pertama yang akan muncul ketika user

mengakses web (Gambar 3.20). Halaman ini dibuat sederhana, dengan hanya memiliki

header yang berisi gambar logo web dan nama website. Bagian tengah akan diisi dengan

gambar-gambar yang dapat diisi berita, pengumuman atau promosi, yang ditampilkan

secara bergiliran. Bagian kanan akan berisi textbox user login, yang terdiri dari

username dan password, serta button login. User belum terdaftar sebagai member dapat

melakukan registrasi dengan melakukan klik pada hyperlink yang tersedia di bawah

textbox user login.

Page 31: Catur Cina Peraturan

67  

  

2. Halaman Index - Register

Gambar 3.21. Rancangan Layar - Halaman Index Register

Hyperlink dari halaman index akan mengubah bagian kanan halaman index

menjadi sebuah form registrasi yang akan terdiri dari textbox username, password,

confirm password, e-mail, dan button register (Gambar 3.21). Hyperlink back terletak di

sebelah kanan bawah, berfungsi untuk membawa user kembali ke halaman index.

Bagian lain dari halaman index register ini sama seperti halaman index, antara lain

memiliki header yang memiliki logo web dan nama website, serta bagian gambar di

sebelah kiri form registrasi.

Page 32: Catur Cina Peraturan

68  

  

3.4.1.2. Setelah Login

1. Halaman Home

Gambar 3.22. Rancangan Layar - Halaman Home

Halaman Home adalah halaman pertama yang akan muncul setelah user

melakukan proses login (Gambar 3.22). Halaman ini memiliki header yang memiliki

gambar logo dan nama website. Tab-tab pilihan menuju halaman home, play, profile,

Page 33: Catur Cina Peraturan

69  

  

dan untuk logout berada di sebelah kanan bawah header. Kata sambutan “welcome” dan

username akan muncul di sebelah kanan tab logout.

Bagian tengah atas berisi profil singkat dari Top Champion dan Player of the

day, yang terdiri dari foto user, username, dan skor akumulatif tertinggi yang dimiliki

Top Champion dan Player of the day. Tabel high scorer di bagian tengah bawah akan

menampilkan sepuluh (10) user dengan high score tertinggi sejak web mulai digunakan.

Tabel tersebut menampilkan username dan skor akumulatif user tersebut. Bagian kiri

atas terdapat informasi umum dari user seperti username dan foto user. Fasilitas

message dan tombol quickplay diletakkan tepat di bawah bagian informasi umum user.

2. Halaman Server

Gambar 3.23. Rancangan Layar - Halaman Server

Page 34: Catur Cina Peraturan

70  

  

Halaman server akan muncul ketika user melakukan klik pada tab play. Halaman

server ini ditujukan untuk menampilkan pilihan server yang tersedia kepada user. User

diminta untuk memilih server yang ingin dikunjungi dari daftar yang ada. Logo dan

nama aplikasi pada halaman ini terletak pada bagian header, seperti yang tampak pada

Gambar 3.23. Tab-tab home, profile, play dan logout terletak di bagian kanan bawah

header. Di bagian tengah akan ada daftar server yang tersedia. Copyright akan menjadi

footer pada halaman server ini.

3. Halaman Lobby

Gambar 3.24. Rancangan Layar - Halaman Lobby

Page 35: Catur Cina Peraturan

71  

  

Halaman lobby akan muncul apabila user telah memilih server di halaman server

(Gambar 3.24). Header di halaman ini serupa dengan header yang ada di halaman lain,

tetap memiliki dua bagian yaitu bagian satu adalah gambar logo web dan bagian kedua

adalah nama website. Bagian ketiga dari halaman ini adalah Room List yang merupakan

daftar ruang permainan yang available dan yang sudah penuh. Bagian keempat adalah

chat room yang merupakan tempat user untuk melakukan chat dengan user lain di

server yang sama. Bagian kelima adalah server information yang memberikan informasi

mengenai server yang sedang digunakan. Bagian keenam adalah online player list, yang

merupakan daftar user yang sedang online di server yang sama. Bagian ketujuh adalah

bagian general info player, yang berisi informasi umum mengenai user, antara lain

username, foto user, high score user, dan jumlah game yang sudah dimainkan. Bagian

kedelapan adalah online friend list yang merupakan bagian yang berisi daftar dari user

lain yang telah berstatus friend dengan user utama. Bagian kesembilan adalah

commercial space, dimana iklan-iklan yang bersifat komersial dapat ditampilkan.

Bagian iklan ditampilkan di halaman ini karena user akan banyak melakukan aktivitas di

halaman lobby ini, seperti chatting, memilih server, dan edit profile.

Page 36: Catur Cina Peraturan

72  

  

4. Halaman Room

Gambar 3.25. Rancangan Layar – Halaman Room

Halaman Room didominasi oleh papan permainan catur china yang berada di

sebelah kiri rancangan tampilan. Bagian atas merupakan tempat bidak-bidak berwarna

hitam, sedangkan bagian bawah adalah tempat bidak-bidak berwarna merah. Di bagian

kanan rancangan tampilan seperti pada Gambar 3.25, terdapat info umum seperti

username dan foto dari pemain di ruangan tersebut, bagian kiri untuk pemain yang

memainkan bidak merah, dan sebelah kanan untuk pemain yang memainkan bidak

hitam. Informasi mengenai waktu yang sudah berjalan dan giliran permainan

Page 37: Catur Cina Peraturan

73  

  

ditampilkan tepat di bawah informasi pemain. Bagian berikutnya adalah kotak chat yang

terletak di bawah informasi waktu dan giliran. Pemain atau penonton dapat keluar dari

ruangan dengan melakukan klik pada tombol exit yang diletakkan di bawah kotak chat.

Commercial space disediakan di sudut kanan bawah pada halaman room ini.

5. Halaman Profile

Gambar 3.26. Rancangan Layar – Halaman Profile

Page 38: Catur Cina Peraturan

74  

  

Halaman profile akan muncul ketika user melakukan klik pada tab Profile di

sudut kanan atas setiap halaman. Header yang dimiliki halaman profile sama dengan

header di halaman-halaman yang sebelumnya. Foto user ditampilkan di sebelah kiri

atas, dan informasi umum serta catatan permainan user ditampilkan tepat di sebelah

kanan foto user. Daftar teman yang dimiliki user berada di bawah foto dan bagian

informasi umum user. Footer berada di baris paling bawah di halaman profile, sama

seperti footer yang ada di halaman lain.

3.4.2. Rancangan Database

Perancangan database pada aplikasi permainan catur china berbasis web ini

dibagi menjadi tiga (3) tahap, yaitu:

1. Perancangan basis data konseptual

2. Perancangan basis data logikal

3. Perancangan basis data fisikal

3.4.2.1. Perancangan Basis Data Konseptual

Perancangan basis data konseptual merupakan suatu proses perancangan

model informasi yang akan digunakan aplikasi permainan catur china berbasis

web ini. Pertama-tama yang dilakukan adalah menentukan kelas yang ada di

dalam database. Berdasarkan hasil analisa awal terhadap kebutuhan web, maka

terdapat empat (4) macam kelas yang diperlukan di dalam database, antara lain:

Page 39: Catur Cina Peraturan

75  

  

1. msUser

Kelas ini merupakan kelas yang menyimpan informasi lengkap mengenai

user. Kelas ini berisi sembilan (9) entiti yang merupakan informasi mengenai

user, diantaranya adalah:

a. serverName

Entiti ini digunakan untuk menyimpan informasi mengenai server yang

ditempati oleh user selama permainan. Entiti ini dapat berubah nilainya

apabila user melakukan perpindahan server tempat user bermain.

b. password

Entiti ini digunakan untuk menyimpan informasi mengenai kata sandi

yang digunakan user untuk mengkonfirmasi proses login. Password harus

berisi angka [0-9] dan/atau huruf [A-Z, a-z] dan tidak boleh berisi spasi [

] dan tidak boleh dikosongkan.

c. fullName

Entiti ini digunakan untuk menyimpan informasi mengenai nama lengkap

user.

d. email

Entiti ini digunakan untuk menyimpan informasi mengenai alamat e-mail

yang dimiliki user. Alamat e-mail user harus mengandung karakter [@]

untuk menjadikannya alamat e-mail yang valid.

e. gender

Entiti ini digunakan untuk menyimpan informasi mengenai jenis kelamin

user. Entiti ini dapat diisi oleh dua jenis nilai, yaitu “male” dan

“female”.

Page 40: Catur Cina Peraturan

76  

  

f. server

Entiti ini digunakan untuk menyimpan informasi mengenai server yang

ditempati oleh user.

g. room

Entiti ini digunakan untuk menyimpan informasi mengenai ruangan

permainan catur china yang sedang ditempati oleh user, baik sebagai

viewer ataupun player.

h. score

Entiti ini digunakan untuk menyimpan informasi mengenai skor yang

berhasil didapatkan user pada langkah terakhirnya di permainan catur

china terakhir yang user mainkan.

i. dailyScore

Entiti ini digunakan untuk menyimpan informasi mengenai jumlah skor

yang telah didapatkan user dari semua permainannya dalam rentang

waktu satu (1) hari. Entiti ini akan berubah nilainya apabila user bermain

pada hari setelahnya. Nilainya akan digantikan oleh skor yang didapatkan

user pada hari yang baru itu.

2. msRoom

Kelas ini merupakan kelas yang digunakan untuk menyimpan informasi

mengenai ruangan permainan catur china. Semua informasi yang digunakan

di dalam permainan disimpan pada kelas database ini. Entiti yang dimiliki

oleh kelas ini ada lima (5) entiti, antara lain:

Page 41: Catur Cina Peraturan

77  

  

a. room

Entiti ini digunakan untuk menyimpan informasi mengenai kode ruangan

permainan catur china. Setiap ruangan permainan memiliki kode yang

berbeda-beda (unik).

b. server

Entiti ini digunakan untuk menyimpan informasi mengenai server tempat

ruangan catur china yang sedang ditempati user.

c. player1

Entiti ini digunakan untuk menyimpan informasi mengenai user yang

menjadi player 1 di ruangan permainan.

d. player2

Entiti ini digunakan untuk menyimpan informasi mengenai user yang

menjadi player 2 di ruangan permainan.

e. viewer

Entiti ini digunakan untuk menyimpan informasi mengenai user yang

menjadi viewer (penonton) di ruangan permainan.

3. msServer

Kelas ini merupakan kelas yang digunakan untuk menyimpan informasi

mengenai server. Kelas msServer memiliki dua (2) entiti, yaitu:

a. server

Entiti ini digunakan untuk menyimpan informasi mengenai lokasi server

tersebut.

Page 42: Catur Cina Peraturan

78  

  

b. userOnline

Entiti ini digunakan untuk menyimpan informasi mengenai jumlah user

yang online di dalam setiap server yang aktif.

4. msHistory

Kelas ini merupakan kelas yang digunakan untuk menyimpan informasi

mengenai histori permainan. Kelas ini akan sangat berguna terutama untuk

kejadian-kejadian yang tidak diinginkan seperti koneksi internet yang putus

pada saat permainan sedang berjalan. Kelas ini memiliki 7 (tujuh) entiti di

dalamnya, antara lain:

a. room

Entiti ini digunakan untuk menyimpan informasi mengenai ruangan yang

sebelumnya digunakan oleh user.

b. server

Entiti ini digunakan untuk menyimpan informasi mengenai server yang

sebelumnya digunakan oleh user.

c. player

Entiti ini digunakan untuk menyimpan informasi mengenai username

player yang bermain di dalam ruangan permainan.

d. movingPawn

Entiti ini digunakan untuk menyimpan informasi mengenai bidak catur

china yang hendak digerakkan oleh player.

Page 43: Catur Cina Peraturan

79  

  

e. pawnFrom

Entiti ini digunakan untuk menyimpan informasi mengenai koordinat

awal bidak catur china yang hendak digerakkan oleh player.

f. destination

Entiti ini digunakan untuk menyimpan informasi mengenai koordinat

tujuan bidak catur china yang hendak digerakkan oleh player.

g. grid

Entiti ini digunakan untuk menyimpan informasi mengenai koordinat

setiap bidak catur china yang ada di papan permainan ruangan tersebut.

Hubungan relasional antar kelas ditunjukkan oleh diagram konseptual berikut ini:

Gambar 3.27. Diagram Konseptual – Hubungan Relasional antar Entiti

Page 44: Catur Cina Peraturan

80  

  

3.4.2.2. Perancangan Basis Data Logikal

Perancangan basis data logikal adalah perancangan database yang

menunjukkan hubungan relasional antar kelas, multiplicity dari tiap hubungan

relasional, serta tipe data dan length dari tiap entiti yang ada. Pertama-tama yang

dilakukan adalah menganalisa fungsionalitas entiti pada rancangan database

konseptual. Pada rancangan konseptual, terdapat empat buah entiti besar, yaitu

msUser, msRoom, msServer dan msHistory. Keempat entiti tersebut merupakan

entiti pokok dalam menjalankan fungsi game di dalam website. Menurut

rancangan awal, website tidak hanya memiliki fungsi bermain game saja, tetapi

juga terdapat fungsi-fungsi pendukung lainnya, seperti send message, chat, add

friend, edit profile. Rancangan database konseptual yang telah dibuat tidak

memfasilitasi fungsi-fungsi pendukung tersebut, sehingga perlu dilakukan

perubahan dan perluasan pada database. Berikut adalah daftar fungsi-fungsi yang

belum difasilitasi pada rancangan konseptual dan perlu untuk ditambahkan dalam

rancangan logikal:

1. Send message

2. Chat

3. Add and Delete Friend

4. Edit profile

5. High score

6. Player of the Day

Page 45: Catur Cina Peraturan

81  

  

Fungsi-fungsi pendukung di atas memerlukan entiti dan atribut yang

dapat menyimpan informasi yang dibutuhkan fungsi-fungsi tersebut.

Penambahan entiti dan atribut diperlukan untuk memfasilitasi fungsi-fungs i

tersebut. Berikut adalah entiti-entiti yang ditambahkan di dalam rancangan

database:

1. trMemberActi vity : untuk menyimpan data aktivitas user, seperti status

online user, keberadaannya di dalam website, dan waktu login dan logout

user.

2. trGame : untuk menyimpan data permainan dan proses yang terjadi di

dalam permainan, seperti record score user, perpindahan bidak, informasi

server dan room yang digunakan untuk permainan.

3. trFriend : untuk menyimpan data pertemanan user. Entiti ini akan

memfasilitasi fungsi yang berkaitan dengan pertemanan, seperti add friend

dan unfriend.

4. trMessage : untuk menyimpan data mengenai pesan pribadi. Entiti ini

memungkinkan user menggunakan fasilitas pesan pribadi di dalam website.

5. trChat : untuk menyimpan data aktivitas chat. Entiti ini memungkinan user

untuk menggunakan fasilitas chat.

Kedua adalah menentukan data atribut dari tiap entiti. Data atribut yang

dimaksud antara lain berupa deskripsi fungsi atribut, tipe data atribut, length, dan

status null atribut. Tipe data yang biasa digunakan antara lain tipe data character

(char, varchar) dan numeric (int, bigint, float). Length menunjukkan banyaknya

Page 46: Catur Cina Peraturan

82  

  

digit angka yang mampu ditampung oleh atribut tersebut. Status null

menunjukkan apakah atribut tersebut dapat diberikan nilai null atau tidak.

Berikut adalah kamus data atribut dari entiti yang telah didefinisikan:

3.4.2.2.1. Kamus Data Atribut

Tabel 3.9. Tabel Kamus Data Atribut

Nama Entiti Atribut Deskripsi Tipe Data dan Length Nulls

trGame gameID

atribut yang digunakan untuk membuat setiap transaksi unik int(255) No

roomID kode ruangan yang digunakan untuk permainan int(3) No

serverID kode server yang digunakan untuk permainan varchar(15) No

userID kode unik identitas user bigint No

move history langkah user dalam permainan int(3) No

grid koordinat bidak catur cina varchar(255) No

movingPawn bidak catur cina yang sedang digerakkan varchar(15) No

destination koordinat posisi akhir bidak yang dituju varchar(15) No

score skor yang didapat player dalam langkah terakhir int(10) No

auditor user yang mengeksekusi data varchar(20) No

trType

informasi mengenai tipe data yang dieksekusi (insert, update, delete) varchar(1) No

lastModified waktu terakhir data dieksekusi varchar(20) No

trMemberActivity memberActivityID kode unik untuk setiap transaksi int(255) No

serverName nama server yang digunakan user varchar(20) No

Page 47: Catur Cina Peraturan

83  

  

roomName nama ruangan yang digunakan user varchar(20) No

serverID kode server yang digunakan untuk permainan varchar(20) Yes

status keadaan user pada saat itu (offline atau online) varchar(3) No

room kode ruangan yang digunakan untuk permainan varchar(3) Yes

loginTime waktu terakhir user melakukan aktifitas login varchar(20) No

logoutTime waktu terakhir user melakukan aktifitas logout varchar(20) No

auditor user yang mengeksekusi data varchar(20) No

trType

informasi mengenai tipe data yang dieksekusi (insert, update, delete) varchar(1) No

lastModified waktu terakhir data dieksekusi varchar(20) No

trFriend friendID kode unik user yang ada di dalam daftar teman varchar(255) No

userID1 kode user yang mengirimkan friend request varchar(20) No

userID2 kode user yang merespon friend request varchar(20) No

status

keadaan friend request dari teman (request atau approve) varchar(20) No

auditor user yang mengeksekusi data varchar(20) No

trType

informasi mengenai tipe data yang dieksekusi (insert, update, delete) varchar(1) No

lastModified waktu terakhir data dieksekusi varchar(20) No

trMessage messageID kode unik yang dimiliki setiap pesan pribadi varchar(255) No

userID1 kode user yang mengirimkan pesan pribadi varchar(20) No

userID2 kode user yang menjadi penerima pesan pribadi varchar(20) No

messageText isi pesan pribadi yang dikirimkan varchar(500) No

Page 48: Catur Cina Peraturan

84  

  

messageTime waktu pesan pribadi dikirimkan oleh user varchar(20) No

auditor user yang mengeksekusi data varchar(20) No

trType

informasi mengenai tipe data yang dieksekusi (insert, update, delete) varchar(1) No

lastModified waktu terakhir data dieksekusi varchar(20) No

trChat chatID kode unik untuk setiap chat int(255) No

userID kode user yang terlibat di dalam chat bigint No

type jenis chat (server chat atau room chat varchar(10) No

text isi pesan yang diketik di dalam window chat varchar(50) No

time waktu pesan dikirimkan lewat window chat varchar(20) No

auditor user yang mengeksekusi data varchar(20) No

trType

informasi mengenai tipe data yang dieksekusi (insert, update, delete) varchar(1) No

lastModified waktu terakhir data dieksekusi varchar(20) No

trRoom roomID kode unik setiap ruangan int(255) No roomName nama ruangan permainan int(3) No

serverID kode server yang digunakan untuk permainan int(20) No

userID1 kode unik identitas user pemain pertama varchar(20) No

userID2 kode unik identitas user pemain kedua varchar(20) No

viewer

kode user yang menjadi penonton di ruangan permainan varchar(255) No

status keadaan ruangan pada saat itu (waiting dan playing) varchar(10) No

auditor user yang mengeksekusi data varchar(20) No

trType

informasi mengenai tipe data yang dieksekusi (insert, update, delete) varchar(1) No

Page 49: Catur Cina Peraturan

85  

  

lastModified waktu terakhir data dieksekusi varchar(20) No

msServer serverID kode server yang dapat digunakan varchar(20) No

auditor user yang mengeksekusi data varchar(20) No

msType

informasi mengenai tipe data yang dieksekusi (insert, update, delete) varchar(1) No

lastModified waktu terakhir data dieksekusi varchar(20) No

msUser userID

kode unik yang digunakan untuk membedakan setiap user bigint No

password kode rahasia yang digunakan user untuk login varchar(20) No

fullName nama lengkap user varchar(30) No email alamat email user varchar(30) No

birthDate tanggal lahir user (dd-mm-yyyy) varchar(20) No

gender jenis kelamin user varchar(20) No location lokasi user varchar(20) Yes profilePicture gambar profil user varchar(50) Yes

auditor user yang mengeksekusi data varchar(20) No

msType

informasi mengenai tipe data yang dieksekusi (insert, update, delete) varchar(1) No

lastModified waktu terakhir data dieksekusi varchar(20) No

3.4.2.2.2. Mengidentifikasi candidate key dan primary key

Langkah berikutnya adalah mengidentifikasi candidate key

dan primary key dari tiap entiti. Candidate key adalah atribut yang

berpotensi untuk menjadi primary key, sedangkan primary key adalah

atribut unik yang digunakan sebagai pembeda tiap proses di entiti

tersebut. Identifikasi dilakukan terhadap kamus data atribut yang

terdapat pada bagian 3.4.2.2.1.

Page 50: Catur Cina Peraturan

86  

  

Tabel 3.10. Tabel Candidate Key dan Primary Key

Nama Entiti Candidate Key Primary Key msUser userID, email, profilePicture userID trMemberActivity memberActivityID memberLogID msServer serverID serverID trRoom roomID roomID trGame gameID, roomID gameID trFriend friendID friendID trMessage messageID messageID trChat chatID chatID historyLog historyID historyID

Beberapa entiti yang hanya memiliki satu candidate key

sehingga candidate key tersebut secara otomatis menjadi primary key

entiti tersebut. Entiti yang hanya memiliki satu candidate key antara lain

trMemberActivity, msServer, trRoom, trFriend, trMessage, trChat dan

historyLog. Terdapat dua (2) entiti lain yang memiliki lebih dari satu

candidate key. Entiti tersebut adalah msUser dan trGame. Pemilihan

primary key berdasarkan dari dua kriteria, yaitu atribut harus unik dan

tidak null.

Page 51: Catur Cina Peraturan

87  

  

Berikut adalah analisa pemilihan primary key dari sejumlah candidate

key:

1. Entiti: msUser

Candidate Key: userID, email, profilePicture

Analisa:

Atribut email merupakan atribut yang berasal dari luar website.

Email dibuat di website lain sehingga otoritas email tidak terdapat

di dalam website catur china. Atribut yang berada di luar otoritas

website akan sulit untuk dikendalikan apabila ada sesuatu yang

terjadi, misalnya penghapusan email. Primary key yang ideal adalah

primary key yang berasal dari internal website, karena primary key

itu dapat dikontrol lebih mudah dan apabila ada error yang terjadi,

error handling dapat dilakukan langsung dari dalam website.

Atribut profilePicture merupakan atribut yang menyimpan

foto user. Atribut ini dapat berisi null atau tidak diisi oleh user,

sehingga atribut ini tidak dapat dijadikan primary key , walaupun

atribut ini termasuk atribut yang unik.

Atribut userID merupakan atribut yang berisi kode unik

untuk membedakan tiap user. Atribut ini akan digunakan sebagai

nama user selama di dalam website. Setiap user harus

menggunakan userID yang berbeda dengan user yang lain. Atribut

ini juga dibuat oleh user di dalam website pada saat mereka

mendaftarkan diri sebagai member¸ sehingga atribut ini merupakan

Page 52: Catur Cina Peraturan

88  

  

atribut yang berasal dari dalam website dan hanya terpengaruh oleh

faktor-faktor internal website. Ini membuat atribut userID akan

lebih mudah untuk diatur dan dijamin ketersediaannya, dan

menjadikannya atribut yang paling cocok untuk menjadi primary

key dari entiti msUser.

2. Entiti: trGame

Candidate Key: gameID, roomID

Analisa:

Atribut roomID merupakan atribut yang menjadi primary key di

dalam entiti trRoom, sehingga menjadikan atribut ini berperan

sebagai foreign key di dalam entiti trGame. Atribut gameID juga

merupakan atribut yang unik di dalam entiti trGame, karena

fungsinya yang membedakan setiap game yang ada. Atribut

gameID belum primary key di entiti yang lain, sehingga atribut ini

dapat dijadikan primary key entiti trGame.

3.4.2.2.3. Menentukan hubungan relasional antar entiti

Hubungan relasional antar entiti penting untuk diidentifikasi

sebelum kita membuat diagram hubungan database logikal. Jenis-jenis

hubungan relasional antar entiti ada empat (4), yaitu one-to-one (1..1),

one-to-many (1..*), zero-to-many (0..*), dan many-to-many (*..*).

Berikut adalah tabel hubungan relasional antar entiti yang terjadi di

dalam database:

Page 53: Catur Cina Peraturan

89  

  

Tabel 3.11. Tabel Hubungan Relasional Antar Entiti

Entiti 1 Entiti 2 Hubungan Relasional Keterangan

msUser

trMemberActivity 1..1 terdapat hanya satu memberlog pada satu user trFriend 1..* terdapat satu atau lebih teman pada satu user trMessage 1..* terdapat satu atau lebih pesan pada satu user trChat 1..* terdapat satu atau lebih chat pada satu user

trRoom 1..1 terdapat hanya satu ruangan yang ditempati satu user

trMemberActivity msUser 1..1

terdapat hanya satu user dalam setiap memberactivity

msServer trGame 1..*

terdapat satu atau lebih game di dalam satu server

trRoom 1..* terdapat satu atau lebih ruangan di dalam satu server

trRoom

trGame 1..1 terdapat hanya satu game di dalam satu ruangan

msServer 1..1 terdapat hanya satu server di dalam satu ruangan

msUser 1..* terdapat satu atau lebih user di dalam satu ruangan

trGame trRoom 1..1

terdapat hanya satu ruangan di dalam satu game

msServer 1..1 terdapat hanya satu server di dalam satu keseluruhan game

trFriend msUser 1..1

komunikasi satu orang teman dapat dilakukan kepada satu user (one-to-one communication)

trMessage msUser 1..* terdapat satu atau lebih user di dalam satu pesan

trChat msUser 1..* terdapat satu atau lebih user di dalam satu chat

Dari analisa terhadap rancangan database konseptual di atas, maka didapatkan

rancangan database logikal seperti diagram di bawah ini:

Page 54: Catur Cina Peraturan

90  

  

Gambar 3.28. Diagram Database - Logikal

Page 55: Catur Cina Peraturan

91  

  

3.4.2.3.Perancangan Basis Data Fisikal

Gambar 3.29. Entity Relationship Diagram

Tabel database fisikal ini merupakan tabel database yang akan

digunakan untuk menjalankan fungsi-fungsi di dalam website. Penambahan entiti

historyLog dan penghilangan hubungan relasional dari entiti trFriend menuju

msUser merupakan perubahan yang dilakukan dari tabel database logikal menuju

Page 56: Catur Cina Peraturan

92  

  

tabel database fisikal. Berikut merupakan penjelasan terjadinya kedua perubahan

tersebut:

1. Penambahan entiti historyLog

Pada tabel database logikal, tidak terdapat entiti yang menyimpan data

histori transaksi aktivitas yang dilakukan oleh user. Entiti yang menyimpan

data histori tersebut sangat penting untuk mencari tahu aktivitas para user,

waktu aktivitas dilakukan, dan apakah aktivitas tersebut dilakukan atas

otorisasi user sendiri. Data histori ini dapat digunakan untuk melakukan

cross-check apabila ada perubahan data pada user yang nampak

mencurigakan, seperti yang mungkin terjadi ketika akun user dibajak

(hacked).

2. Penghilangan hubungan relasional dari trFriend ke msUser

Penghilangan hubungan relasional dari trFriend ke msUser karena

hubungan antara trFriend ke msUser hanya bersifat satu arah, yaitu dari

msUser ke trFriend. Hubungan satu arah ini terjadi karena user dapat melihat

siapa saja friend yang mereka miliki, tetapi sebaliknya friend dalam hal ini

bukanlah aktor aktif yang dapat melihat user, melainkan berperan sebagai

objek. Friend dari user di proses yang terpisah akan berperan sebagai user

untuk melihat friend yang mereka miliki.

Page 57: Catur Cina Peraturan

93  

  

3.4.3. Aliran Aplikasi (Application Flow)

Pada subbab ini, akan digambarkan State Transition Diagram (STD)

untuk sistem rancangan yang dibuat.

3.4.3.1. State Transition Diagram – Index

Gambar 3.30. State Transition Diagram - Index

Page 58: Catur Cina Peraturan

94  

  

3.4.3.2. State Transition Diagram – Home

Gambar 3.31. State Transition Diagram - Home

Page 59: Catur Cina Peraturan

95  

  

3.4.3.3.State Transition Diagram – Server

Gambar 3.32. State Transition Diagram - Server

Page 60: Catur Cina Peraturan

96  

  

3.4.3.4.State Transition Diagram – Lobby

Gambar 3.33. State Transition Diagram - Lobby

Page 61: Catur Cina Peraturan

97  

  

3.4.3.5.State Transition Diagram – Room

Gambar 3.34. State Transition Diagram - Room

Page 62: Catur Cina Peraturan

98  

  

3.4.3.6.State Transition Diagram – Profile

Gambar 3.35. State Transition Diagram - Profile