154 1. STD untuk login admin dan Super admin
Gambar 4. 18 STD Login admin dan super admin
2. STD untuk login user (pelatih)
Gambar 4. 19 STD login user
155 3. STD untuk Pertandingan admin dan super admin
Gambar 4. 20 STD Pertandingan admin dan super admin
4. STD Konfirmasi Super admin
Gambar 4. 21 STD Konfirmasi Super admin
156 4.1.4 Perancangan Layar Perancangan layar menggambarkan tentang rancangan aplikasi yang akan diterapkan dalam aplikasi yang digunakan. Berikut ini akan ditampilkan beberapa rancangan layar yang kemudian akan diterapkan dalam p embuatan aplikasi :
4.1.4.1 Halaman Pelatih (User) 4.1.4.1.1 Rancangan Layar Login
Gambar 4. 22 Rancangan Layar Login
157 4.1.4.1.2 Rancangan Layar Home
Gambar 4. 23 Rancangan Layar Home
4.1.4.1.3 Rancangan Layar Sejarah LEMKARI
Gambar 4. 24 Rancangan layar sejarah LEMKARI
158 4.1.4.1.4 Rancangan Layar Visi dan Misi
Gambar 4. 25 Rancangan Layar Visi dan Misi
4.1.4.1.5 Rancangan Layar Struktur Organisasi
Gambar 4. 26 Rancangan Layar Struktur Organisasi
159 4.1.4.1.6 Rancangan Layar Berita Terkini
Gambar 4. 27 Rancangan Layar Berita Terkini
4.1.4.1.7 Rancangan Layar Pertandingan
Gambar 4. 28 Rancangan Layar Pertandingan
160 4.1.4.1.8 Rancangan Layar Pertandingan Terbaru
Gambar 4. 29 Rancangan Layar Pertandingan Terbaru
4.1.4.1.9 Rancangan Layar Jadwal
Gambar 4. 28 Rancangan Layar Jadwal
161 4.1.4.1.10 Rancangan Layar Hasil Pertandingan
Gambar 4. 29 Rancangan Layar Hasil Pertandingan
162 4.1.4.1.11 Rancangan Layar Pendaftaran
Gambar 4. 30 Rancangan Layar Pendaftaran
163 4.1.4.1.12 Rancangan Layar Tambah Karateka
Gambar 4. 31 Rancangan Layar Tambah Karateka
164 4.1.4.1.13 Rancangan Layar Contacts
Gambar 4. 32 Rancangan Layar Contacts
165 4.1.4.2 Halaman Sekretariat Lemkari 4.1.4.2.1 Rancangan Layar Login
Gambar 4. 33 Rancangan Layar Login
4.1.4.2.2 Rancangan Layar home
Gambar 4. 34 Rancangan Layar home
166 4.1.4.2.3 Rancangan Layar Sejarah LEMKARI
Gambar 4. 35 Rancangan Layar Sejarah LEMKARI
4.1.4.2.4 Rancangan Layar Visi dan Misi
Gambar 4. 38 Rancangan Layar Visi dan Misi
167 4.1.4.2.5 Rancangan Layar Struktur Organisasi
Gambar 4. 39 Rancangan Layar Struktur Organisasi
4.1.4.2.6 Rancangan Layar Berita
Gambar 4. 36 Rancangan Layar Berita
168 4.1.4.2.7 Rancangan Layar Pertandingan
Gambar 4. 37 Rancangan Layar Pertandingan
169 4.1.4.2.8 Rancangan Layar Verifikasi Registrasi
Gambar 4. 38 Rancangan Layar Verifikasi Registrasi
170 4.1.4.2.9 Rancangan Layar Verifikasi Fisik
Gambar 4. 39 Rancangan Layar Verifikasi Fisik
171 4.1.4.2.10 Rancangan Layar Generate Bagan Pertandingan
Gambar 4. 40 Rancangan Layar Generate Bagan Pertandingan
172 4.1.4.2.11 Rancangan Layar Lihat Bagan Pertandingan
Gambar 4. 41 Rancangan Layar Lihat Bagan Pertandingan
173 4.1.4.2.12 Rancangan Layar Generate Jadwal Pertandingan
Gambar 4. 42 Rancangan Layar Generate Jadwal Pertandingan
4.1.4.2.13 Rancangan Layar Lihat Jadwal Pertandingan
Gambar 4. 43 Rancangan Layar Lihat Jadwal Pertandingan
174 4.1.4.2.14 Rancangan Layar Hasil Pertandingan
Gambar 4. 44 Rancangan Layar Hasil Pertandingan
4.1.4.2.15 Rancangan Layar Konfirmasi
Gambar 4. 45 Rancangan Layar Konfirmasi
175 4.1.4.2.16 Rancangan Layar Kejuaraan
Gambar 4. 46 Rancangan Layar Kejuaraan
4.1.4.2.17 Rancangan Layar Tambah Kejuaraan
Gambar 4. 47 Rancangan Layar Tambah Kejuaraan
176 4.1.4.2.18 Rancangan Layar Kontingen
Gambar 4. 48 Rancangan Layar Kontingen
4.1.4.2.19 Rancangan Layar Tambah Kontingen
Gambar 4. 49 Rancangan Layar Tambah Kontingen
177 4.1.4.2.20 Rancangan Layar Dojo
Gambar 4. 50 Rancangan Layar Dojo
4.1.4.2.21 Rancangan Layar Tambah Dojo
Gambar 4. 51 Rancangan Layar Tambah Dojo
178 4.1.4.2.22 Rancangan Layar Pelatih
Gambar 4. 52 Rancangan Layar Pelatih
4.1.4.2.23 Rancangan Layar Tambah Pelatih
Gambar 4. 53 Rancangan Layar Tambah Pelatih
179 4.1.4.2.24 Rancangan Layar Karateka
Gambar 4. 54 Rancangan Layar Karateka
4.1.4.2.25 Rancangan Layar Admin (hanya dapat diakses oleh super admin atau ketua)
Gambar 4. 55 Rancangan Layar Admin
180 4.1.4.2.26 Rancangan Layar Tambah Admin (hanya dapat diakses oleh super admin atau ketua)
Gambar 4. 56 Rancangan Layar Tambah Admin
4.1.4.2.27 Rancangan Layar Contacts
Gambar 4. 57 Rancangan Layar Contacts
181 4.1.5 Spesifikasi Modul Spesifikasi proses berfungsi untuk mengarahkan aliran input menjadi aliran output melalui modul dalam bagan terstruktur. Penggunaan spesifikasi proses untuk merancang dan menulis program secara terstruktur dalam Sistem adminstrasi kejuaraan karate adalah :
4.1.5.1 Modul Login BEGIN INPUT username, password IF tekan tombol Submit THEN IF username = "" THEN PRINT "Username must be filled" ELSE IF password = "" THEN PRINT "Password must be filled" ELSE IF username, password tidak ada di Database THEN PRINT "UserName dan password tidak valid" ELSE REGISTER Session REDIRECT TO Home Page END IF ELSE IF tekan tombol Cancel THEN REDIRECT TO Home Page END IF END
182 4.1.5.2 Modul Tambah Karateka BEGIN INPUT username, password IF tekan tombol Submit THEN IF username = "" THEN PRINT "Username must be filled" ELSE IF password = "" THEN PRINT "Password must be filled" ELSE IF username, password tidak ada di Database THEN PRINT "UserName dan password tidak valid" ELSE REGISTER Session REDIRECT TO Home Page END IF ELSE IF tekan tombol Cancel THEN REDIRECT TO Home Page END IF END
183 4.1.5.3 Modul Daftar Pertandingan BEGIN PRINT namapelatih, kodepelatih SELECT namakejuaraan dari Database WHERE tanggalregistrasi >= CURRENT TIME WHILE NOT EOF DO sisipkan namakejuaraan ke field input nama kejuaraan END DO WHILE INPUT namakejuaraan DO SELECT kategoriusia dari Database WHERE kejuaraan = namakejuaraan yang diinput user CLEAR field input kategori usia WHILE NOT EOF DO sisipkan kategoriusia ke field input kategori usia END DO WHILE INPUT kategoriusia DO SELECT
jenispertandingan
dari
Database
WHERE
kejuaraan
namakejuaraan AND kategoriusia = kategoriusia yang diinput CLEAR field input kategori usia WHILE NOT EOF DO sisipkan jenispertandingan ke field input jenis pertandingan END DO WHILE INPUT jenispertandingan DO SELECT namakarateka dari Database WHERE pelatih = kodepelatih
=
184 CLEAR field input karateka WHILE NOT EOF DO sisipkan namakarateka ke field input karateka IF usia karateka diluar range kategoriusia OR jenis kelamin != jeniskelamin di jenispertandingan THEN DISABLE pilihan karateka yang terakhir disisipkan END IF END DO END DO END DO END DO IF klik link Tambah Karateka THEN REDIRECT TO Tambah Karateka RETURN ELSE IF tekan tombol Daftarkan Pertandingan THEN SHOW Confirmation Box "Anda yakin?" IF tekan tombol Yes THEN IF karateka = NULL THEN SHOW Message Box "Silakan pilih karateka." RETURN END IF FOR EACH karateka DO
185 SELECT karateka dari Database WHERE kejuaraan = kejuaraan yang diinput AND kategoriusia = kategoriusia yang diinput AND jenispertandingan = jenispertandingan yang diinput AND IF COUNT > 0 THEN SHOW Message Box "Karateka sudah terdaftar pada pertandingan ini" RETURN END IF END FOR SORT karateka last karateka = NULL FOR EACH karateka DO IF last karateka = karateka THEN SHOW Message Box "Karateka yang sama tidak boleh dipilih lebih dari sekali." RETURN END IF END FOR GENERATE nomorregistrasi INSERT data pendaftaran ke Database PRINT "Pendaftaran berhasil." PRINT nomorregistrasi, namakejuaraan, kategoriusia, jenispertandingan, karateka END IF END IF
186 END
4.1.5.4 Modul Lihat Jadwal BEGIN INPUT field kejuaraan SELECT data jadwal dari Database WHERE kejuaraan = kejuaraan yang diinput ORDER BY waktu WHILE NOT EOF DO PRINT jenispertandingan, kategoriusia, waktu, tempat END DO END
4.1.5.5 Modul Lihat Hasil Pertandingan BEGIN INPUT field kejuaraan IF tekan tombol Download Hasil Pertandingan THEN PRINT Judul SELECT data kejuaraan dari Database WHERE kejuaraan = kejuaraan yang diinput ORDER BY kategoriusia, jeniskelamin, jenispertandingan last kategoriusia = NULL WHILE NOT EOF DO IF kategoriusia != last kategoriusia THEN PRINT kategoriusia last kategoriusia = kategoriusia
187 last jeniskelamin = NULL END IF PRINT "Pertandingan", "Juara 1", "Juara 2", "Juara 3.1", "Juara 3.2" IF jeniskelamin != last jeniskelamin THEN PRINT jeniskelamin last jeniskelamin = jeniskelamin END IF PRINT jenispertandingan SELECT juara1, juara2, juara31, juara32 dari Database PRINT juara1, juara2, juara31, juara 32 END DO PRINT "File digenerate pada tanggal", CURRENT TIME END IF END
4.1.5.6 Modul Verifikasi Registrasi BEGIN IF belum login THEN REDIRECT TO Halaman Login ELSE INPUT namakejuaraan, kategoriusia, jenispertandingan SELECT data peserta dari Database PRINT data peserta INPUT field verifikasi masing-masing peserta
188 IF tekan tombol Update Data THEN FOR EACH field verifikasi DO UPDATE statusverifikasi = field verifikasi END FOR END IF END IF END
4.1.5.7 Modul Verifikasi Fisik BEGIN IF belum login THEN REDIRECT TO Halaman Login ELSE INPUT namakejuaraan, kategoriusia, jenispertandingan SELECT data peserta dari Database WHERE statusverifikasi = 1 PRINT data peserta INPUT field verifikasi usia,berat masing-masing peserta IF tekan tombol Update Data THEN FOR EACH field verifikasi DO INSERT verifikasi usia, berat ke Database verifikasi fisik END FOR END IF END IF END
189 4.1.5.8 Modul Generate Bagan MODUL NextPosisi(count, posisi) BEGIN IF count = 0 THEN RETURN -1 ELSE IF posisi < count / 2 THEN RETURN posisi + (count / 2) ELSE IF posisi - FLOOR(count / 4) < count / 2 THEN RETURN posisi - CEIL(count / 4) ELSE RETURN NextPosisi(FLOOR(count / 4), posisi MOD CEIL(count / 4)) END IF END IF END
MODUL GenerateBagan BEGIN IF belum login THEN REDIRECT TO Halaman Login ELSE INPUT namakejuaraan IF tekan tombol Generate Bagan THEN DELETE data bagan dari Database WHERE kejuaraan = namakejuaraan
190 FOR EACH kategoriusia DO FOR EACH jenispertandingan DO SELECT data peserta dari Database WHERE statusverifikasi = 1 AND statusverifikasifisik = 1 ORDER BY unggulan jumlahpeserta = COUNT data peserta tipebagan = 8 WHILE tipebagan < jumlahpeserta DO tipebagan = tipebagan * 2 END DO posisi = 0 FOR EACH peserta DO INSERT peserta, posisi ke Database posisi = CALL NextPosisi(tipebagan, posisi) END FOR END FOR END FOR PRINT "Bagan pertandingan berhasil di-generate." END IF END IF END
191 4.1.5.9 Modul Generate Jadwal BEGIN IF belum login THEN REDIRECT TO Halaman Login ELSE INPUT namakejuaraan, tanggalmulai, tanggalselesai, jumlahlapangan FOR i = 1 TO (tanggalselesai - tanggalmulai + 1) DO INPUT jammulai[i], jamselesai[i] END FOR IF tekan tombol Generate Jadwal THEN jumlahhari = tanggalselesai - tanggalmulai + 1 lamatiaptanding = 3 menit tambahanwaktu = 5 menit DELETE data jadwal lama dari Database SELECT data peserta dari Database WHERE kejuaraan = namakejuaraan yang dipilih jumlahpeserta = COUNT data peserta SELECT data pertandingan dari Database WHERE kejuaraan = namakejuaraan yang dipilih jumlahpertandingan = COUNT data pertandingan durasi = 0 FOR i = 0 TO jumlahhari-1 DO durasi = durasi + (jamselesai[i] - jammulai[i]) FOR j = 0 TO jumlahlapangan-1 DO
192 lasttime[i][j] = jammulai[i] END FOR END FOR IF durasi * jumlahlapangan < ((jumlahpeserta + jumlahpertandingan) * lamatiaptanding) + (jumlahpertandingan * tambahanwaktu) THEN PRINT "Jadwal pertandingan tidak dapat dibuat untuk durasi waktu dan jumlah lapangan tersebut." ELSE FOR EACH pertandingan DO SELECT data peserta dari Database WHERE statusverifikasi = 1 and statusverifikasifisik = 1 jumlahpesertatanding = COUNT data peserta IF jumlahpesertatanding > 0 THEN durasitanding = (jumlahpesertatanding + 1) * lamatiaptanding + tambahanwaktu INSERT pertandingan, tempat = lastlapangan + 1, waktu = lasttime[lasthari][lastlapangan] ke Database jadwal pertandingan lasttime[lasthari][lastlapangan] += durasitanding lastlapangan = (lastlapangan + 1) MOD jumlahlapangan IF lastlapangan = 0 THEN lasthari = (lasthari + 1) MOD jumlahhari END IF END IF END FOR
193 PRINT "Jadwal pertandingan berhasil di-generate." END IF END IF ENDIF END
4.1.5.10 Modul Lihat dan Update Bagan BEGIN INPUT namakejuaraan, kategoriusia, jenispertandingan IF tekan tombol Lihat THEN PRINT namakejuaraan, kategoriusia, jenispertandingan SELECT jadwal dari Database where namakejuaraan = namakejuaraan yang diinput AND kategoriusia = kategoriusia yang diinput AND jenispertandingan = jenispertandingan yang diinput PRINT "Waktu dan Tempat: ", waktu, tempat SELECT data bagan dari Database ORDER BY posisi jumlahlevel = LOG(tipebagan, 2) + 1 jumlahnode = POW(2, jumlahlevel) - 1 FOR i = 0 TO tipebagan DO SELECT data peserta dari Database where noregistrasi = noregistrasi di posisi PRINT noregistrasi, namakarateka IF
peserta[jumlahnode
-
((jumlahnode
-
i)
*
peserta[jumlahnode - ((jumlahnode - i) * 2 + 1)] != "" THEN
2)]
!=
""
OR
194 PRINT field peserta yang dapat diinput END IF END FOR INPUT field peserta IF tekan tombol Update Bagan THEN FOR EACH field peserta DO INSERT posisi, peserta ke Database Bagan END FOR END IF END IF END
4.2 Implementasi 4.2.1 Spesifikasi Perangkat Keras Spesifikasi perangkat keras yang dibutuhkan untuk implementasi sistem basis data adalah sebagai berikut : Table 4. 1 Spesifikasi perangkat keras Hardware
Server
Client
Proccessor
Pentium 4 2GHz
Pentium 4 2GHz
Memory RAM
512 MB
256 MB
VGA Card
16 MB
16 MB
Harddisk
80 GB
40GB
Monitor
Ya
Ya
195 Hardware
Server
Client
CD-ROM
Ya
Ya
Keyboard
Ya
Ya
Mouse
Ya
Ya
4.2.2 Spesifikasi Perangkat Lunak Spesifikasi perangkat lunak yang dibutuhkan untuk implementasi sistem basis data adalah sebagai ber ikut : Table 4. 2 Spesifikasi perangkat lunak Server Software
Client
Macromedia Dreamweaver CS3, XAMPP 1.7.2
Sistem Operasi
Microsoft Windows XP
DBMS
MySQL 5.1.30
Browser
Mozilla Firefox 3.5.6
Microsoft Windows XP
Mozilla Firefox 3.5.6
4.2.3 Jadwal Implementasi Berikut ini adalah jadwal implementasi sistem yang dimulai dari pembentukan tim, pengadaan S/W dan H/W, instalasi S/W, instalasi H/W, uji cob a sistem baru, pelatihan user, evalu asi p elatihan, dan evaluasi sistem berjalan.
196 Table 4. 3 Jadwal Implementasi Sistem Minggu No Kegiatan Implementasi
1
Pengadaan HW & SW
2
Instalasi HW&SW
3
Uji coba sistem
4
Pelatihan user
5
Evaluasi Pelatihan
6
Evaluasi sistem
1
2
x
x
1 3
4
5
1
x
x
x
x
2
2 3
x
x
4
5
1
x
x
x
2
3 3
x
x
4
5
x
x
4.2.4 Instalasi Aplikasi Berikut ini adalah isi paket XAMPP versi 1.7.2 untuk windows yaitu sebagai berikut : •
Apache 2.2.12 (IPv6 enabled) + OpenSSL 0.9.8k
•
MySQL 5.1.37 + PBXT engine
•
PHP 5.3.0
•
phpMyAdmin 3.2.0.1
•
Webalizer 2.21-02 + GeoIP lite
•
FileZilla FTP Server 0.9.32
•
msmtp 1.4.17
Panduan instalasi XAMPP Sesuai anjuran penyedia XAMPP, untuk pengguna baru disarankan memakai XAMPP basis package. Saya pilihkan yang .EXE karena ini paket yang paling mudah untuk dinstall, Anda tinggal menjalankan file .EXE tersebut. Langkah instalasi :
197
Gambar 4. 58 Ganbar layar bahasa
Setelah menjalankan file xampp-win32-1.7.2.exe, pilih bahasa yang ingin dipakai.
Gambar 4. 59 Layar utama proses instalasi
Langkah kedua akan muncul tampilan meminta menutup semua aplikasi lain sebelum menginstall XAMPP.
198
Gambar 4. 60 Pemilihasn folder instalasi
Jendela berikutnya yang muncul adalah pemilihan tempat/lokasi file XAMPP. Pilih sesuai default di c:\xampp. Jangan dimasukkan ke folder "Program Files" ("C:\Program Files"), dikarenakan akan adanya masalah permission folder.
199
Gambar 4. 61 Pemilihan sub folder instalasi
Jendela selanjutnya akan memunculkan setting instalasi.
200 Create a XAMPP dekstop icon untuk menampilkan icon XAMPP di halaman dekstop komputer Anda Create an Apache Friends XAMPP folder in the start menu untuk membuat folder XAMPP bisa diakses dari menu start windows Anda Service section akan menginstall untuk ketiga layanan / service yang dibutuhkan, silakan centang semua.
Gambar 4. 62 Pilihan dalam instalasi
201
Gambar 4. 63 Proses instalasi
Proses intalasi sedang berjalan, tunggu sampai selesai. Sebagai catatan, gambar yang saya pakai adalah XAMPP versi 1.7.0, tetapi pada kenyataannya proses instalasi tidaklah jauh berbeda dikarenakan masih versi yang cukup dekat.
202
Gambar 4. 64 Proses instalasi telah selesai
203 Instalasi awal selesai, tekan tombol Finish. Tunggu langkah selanjutnya.
Instalasi file selesai, silakan pilih tombol Yes untuk memulai XAMPP Control Panel