## Bulletin of Information Technology (BIT)
Vol 3, No 4, Desember 2022, Hal 294 - 300 ISSN 2722-0524 (media online) DOI 10.47065/ bit.v3i1. 383 https://journal.fkpt.org/index.php/BIT

## Pengacakan Soal Ujian Online Berbasis Web Menggunakan Algoritma Knuth Shuffle Pada SMK Gelora Jaya Nusantara Medan
Muhammad Irfan Pohan, Eko Hariyanto, Fahmi Izhari
Fakultas Sains dan Teknologi, Program Studi Sistem Komputer, Universitas Pembangunan Panca Budi, Medan, Indonesia Email: 1 mirfanpohan42@gmail.com, 2 eko_hariyanto_mdn@yahoo.co.id, 3 fahmi_izhari@dosen.pancabudi.ac.id Email Penulis Korespondensi: mirfanpohan42@gmail.com
Abstrak − Ujian  merupakan  bentuk  evaluasi  proses  belajar  dalam  rangka  mengukur  taraf  pencapaian  keahlian,  karakter  serta intelegensi siswa, sehingga menjadikan ujian sebagai tahapan penting dalam proses belajar mengajar. Dalam proses penerimaan siswa baru, SMK Gelora Jaya Nusantara Medan masih menerapkan ujian penerimaan secara manual dengan sistem tertulis. Ujian yang  konvensional  ini  mengakibatkan  anggaran  yang  dibutuhkan  cukup  besar  dan  waktu  pengoreksian  hasil  ujian  juga membutuhkan waktu yang relative lama. Pemanfaatan teknologi komputer atau perangkat gadget dapat mendukung pelaksanaan ujian bagi calon siswa dimana menjadi salah satu kebutuhan di masa saat ini untuk meningkatkan pelayanan kepada calon siswa dan meningkatkan kredibilitas sekolah sendiri. Meskipun proses ujian menggunakan perangkat komputer, dari segi validitas hasil ujian, praktek kecurangan  masih sering terjadi selama  proses ujian berlangsung dikarenakan  urutan soal ujian yang tampil atau muncul  antara  satu  peserta  ujian  dengan  peserta  ujian  lainnya  masih  sama  sehingga  peserta  ujian  masih  dapat  saling  melihat jawaban.  Tujuan  penelitian  ini  adalah  merancang  dan  membangun  sebuah  aplikasi  ujian  online  serta  menganalisis  proses pengacakan urutan soal ujian dengan pendekatan algoritma Knuth Suffle pada aplikasi ujian masuk di SMK Gelora Jaya Nusantara Medan berbasis web. Hasil dan pembahasan penelitian ini menyimpulkan bahwa aplikasi ujian online penerimaan siswa baru ini, dapat membantu dan mempermudah kerja panitia pelaksana ujian dalam penyelenggaraan ujian serta pengkoreksian hasil ujian dan proses pengawasan ujian menjadi lebih mudah karena urutan soal yang tampil sudah teracak
Kata Kunci : Pengacakan; Ujian Online; Knuth Shuffle; Berbasis Web
Abstract − The  exam  is  an  evaluation  of  the  learning  process  in  order  to  measure  the  level  of  achievement  of  students'  skills, character and intelligence, thus making the exam an important stage in the teaching and learning process. In the process of admitting new students, SMK Gelora Jaya Nusantara Medan still applies manual admission exams with a written system. This conventional exam results in a large enough budget required and the time for correcting exam results also takes a relatively long time. Utilization of computer technology or gadgets can support the implementation of exams for prospective students which is one of the needs at this time to improve services to prospective students and increase the credibility of the school itself. Although the exam process uses a computer device, in terms of the validity of the exam results, cheating practices still often occur during the exam process because the sequence of exam questions that appear or appear between one examinee and other examinees is still the same so that examinees can still see each other's answers. The purpose of this study is to design and build an online exam application and analyze the process of randomizing the order of exam questions with the Knuth Suffle algorithm approach on the web-based entrance exam application at SMK Gelora Jaya Nusantara Medan. The results and discussion of this study conclude that the online test application for new student admissions can help and facilitate the work of the exam executive committee in administering the exam as well as correcting  exam  results  and  the  exam  monitoring  process  becomes  easier  because  the  order  of  the  questions  that  appear  are randomized.
Keywords : Shuffle; Online Examination; Knuth Shuffle; Web Based.

## 1. PENDAHULUAN
Teknologi informasi juga mempunyai peran penting untuk mempermudah dan mempercepat kegiatan operasional pada sebuah perusahaan[1]. Menyikapi kemajuan teknologi yang terus berkembang, sebuah sistem informasi dapat dirancang untuk mempermudah aktivitas sekolah [2].
Ujian  merupakan  bentuk  evaluasi  proses  belajar  dalam  rangka  mengukur  taraf  pencapaian  keahlian,  karakter  serta intelegensi  siswa, sehingga  menjadikan ujian sebagai tahapan penting dalam proses  belajar  mengajar[2].  Evaluasi hasil  belajar  dalam  dunia  pendidikan  dilakukan  terhadap  anak  didik  untuk  mengetahui  tingkat  kemampuan  atau keberhasilan  selama  menjalani  proses  pendidikan,  untuk  tingkat  sekolah  proses  evaluasi  hasil  belajar  dilakukan melalui pengamatan langsung oleh guru yang terlihat dalam proses pendidikan terhadap siswa dan dilakukan penilaian melalui tes atau disebut juga ujian[3].
Dalam proses penerimaan siswa baru, SMK Gelora Jaya Nusantara Medan masih menerapkan ujian penerimaan secara manual dengan sistem tertulis. Ujian yang konvensional ini mengakibatkan anggaran yang dibutuhkan cukup besar dan waktu pengoreksian hasil ujian juga membutuhkan waktu yang relative lama[3].
Model  sistem  ujian  secara  online  dapat  diartikan  sebagai  upaya  menyusun  suatu  sistem  baru  untuk  menggantikan sistem lama dengan sasaran keseluruhan atau perbaikan sistem yang sudah ada agar berjalan dengan baik. Perangkat lunak  sistem  ujian  online  yang  memanfaatkan  kemajuan  Teknologi  Informasi  dan  Komunikasi  (TIK)  di  bidang komputer memiliki tujuan untuk memberikan ruang,  manfaat dan kemudahan bagi peserta ujian maupun pelaksana ujian. Pemanfaatan teknologi komputer atau perangkat gadget dapat mendukung pelaksanaan ujian bagi calon siswa dimana  menjadi  salah  satu  kebutuhan  di  masa  saat  ini  untuk  meningkatkan  pelayanan  kepada  calon  siswa  dan meningkatkan kredibilitas sekolah sendiri.

## Bulletin of Information Technology (BIT)
Vol 3, No 4, Desember 2022, Hal 294 - 300 ISSN 2722-0524 (media online) DOI 10.47065/ bit.v3i1. 383 https://journal.fkpt.org/index.php/BIT
Meskipun proses ujian menggunakan perangkat komputer, dari segi validitas hasil ujian, praktek kecurangan masih sering terjadi selama proses ujian berlangsung. Hal ini dikarenakan urutan soal ujian yang tampil atau muncul antara satu peserta ujian dengan peserta ujian lainnya masih sama sehingga peserta ujian masih dapat melihat jawaban ujian dari peserta ujian yang lain karena persamaan urutan soal yang tampil. Oleh karena itu, diperlukan suatu pendekatan untuk melakukan pengacakan urutan soal ujian agar nantinya urutan soal ujian yang tampil atau muncul dapat berbeda antara satu peserta ujian dengan peserta ujian lainnya. Tujuan penelitian ini adalah merancang dan membangun sebuah aplikasi  ujian  online  serta  menganalisis  proses  pengacakan  urutan  soal  ujian  dengan  pendekatan  algoritma  Knuth Suffle pada aplikasi ujian masuk di SMK Gelora Jaya Nusantara Medan berbasis web

## 2. METODOLOGI PENELITIAN

## 2.1 Pendekatan yang digunakan
Dalam penelitian ini, penulis menggunakan pendekatan algoritma Knuth Shuffle. Algoritma Knuth Shuffle adalah sebuah algoritma untuk menghasilkan suatu permutasi acak dari suatu himpunan terhingga. Permutasi yang dihasilkan oleh algoritma ini muncul dengan probabilitas yang sama. Algoritma dinyatakan tidak bias, karena permutasi yang dihasilkan oleh algoritma ini muncul dengan probabilitas yang sama[4]. Algoritma Knuth Shuffle juga disebut dengan algoritma Fisher-Yates yang diambil dari nama penemunya yaitu Ronal Fisher dan Frank Yates adalah algoritma yang menghasilkan  permutasi  acak  dari  suatu  himpunan  terhingga,  dengan  kata  lain  untuk  mengacak  suatu  himpunan tersebut[5]. Algoritma digunakan untuk mendapat hasil pengacakan yang cepat dan juga menghasilkan output yang bervariatif sehingga dapat mengacak data tanpa pengacakan berulang [6][7].

## 2.3 Perancangan
Platform  yang  digunakan  dalam  perancangan  penelitian  ini  adalah  aplikasi  berbasis  web.  Menurut  Pontoh  dan Lumenta,  website  adalah  sering  juga  disebut  web,  dapat  diartikan  suatu  kumpulan-kumpulan  halaman  yang menampilkan berbagai macam informasi teks, data, gambar diam ataupun bergerak, data animasi, suara, video maupun gabungan dari semuanya, baik itu yang bersifat statis maupun yang dinamis, yang dimana membentuk satu rangkaian bangunan yang saling berkaitan dimana masing-masing dihubungkan dengan jaringan halaman atau hyperlink[8]. Diagram  yang  digunakan  dalam  perancangan  penelitian  ini  adalah flowchart dan Unified  Modelling  Languange (UML).  Flowchart  merupakan  penyajian  yang  sistematis  tentang  proses  dan  logika  dari  kegiatan  penanganan informasi atau penggambaran secara grafik dari  langkah-  langkah dan urut-urutan prosedur dari suatu program  [9] [10]. Berikut flowchart implementasi algoritma Knuth Shuffle dalam perancangan aplikasi ujian online.
1. Aplikasi menjalankan query untuk mengambil jumlah soal ujian (n).
2. Jika jumlah soal ujian ada, aplikasi membuat array yang berisi deret angka 1 sampai n (m). Aplikasi juga membuat array yang akan digunakan untuk menampung urutan nomor soal yang sudah teracak (x).
3. Aplikasi mengacak angka pada array m dan hasilnya (y) dimasukkan kedalam elemen array x.
4. Aplikasi menghapus elemen ke y-1 dari array m.
5. Jika elemen pada array m sudah habis maka proses algoritma Knuth Shuffle selesai.
Menurut Windu Gata, Grace, UML adalah bahasa spesifikasi standar yang dipergunakan untuk mendokumentasikan, menspesifikasikan dan membanngun perangkat lunak. UML merupakan metodologi dalam mengembangkan system berorientasi  objek  dan  juga  merupakan  alat  untuk  mendukung  pengembangan  sistem[11].  Berikut  perancangan aplikasi menggunakan UML.

## 1. Use Case Diagram
Perancangan use case diagram dalam penelitian ini (gambar 2) menjelaskan bahwa pengguna aplikasi hanya ada 2  yaitu admin dan siswa.  Admin dapat mengolah data (tambah, edit, hapus) pendaftaran ujian oleh siswa, soal ujian,  pelaksanaan  ujian,  dan  hasil  ujian  sedangkan  siswa  dapat  melakukan  registrasi,  melakukan  pendaftaran ujian, mengikuti ujian, dan melihat hasil ujian.
2. Activity Diagram
Perancangan  activity  diagram  dalam  penelitian  ini  dibagi  menjadi  dua  diagram  yaitu  activity  diagram  sebagai admin dan activity diagram sebagai siswa seperti pada gambar 3 (a) dan gambar 3 (b).

## Bulletin of Information Technology (BIT)
Vol 3, No 4, Desember 2022, Hal 294 - 300 ISSN 2722-0524 (media online) DOI 10.47065/ bit.v3i1. 383 https://journal.fkpt.org/index.php/BIT
Gambar 1. Flowchart Implementasi Algoritma Knuth Shuffle
Gambar 2. Flowchart Implementasi Algoritma Knuth Shuffle

## 3. Class Diagram
Perancangan class  diagram dalam  penelitian  ini  (gambar  4)  menunjukkan  diagram  kelas  yang  dirancang. Diagram  kelas  ini  merupakan  representasi  rancangan  basis  data  yang  digunakan  dalam  pengembangan aplikasi  ini.  Basis  data  adalah  wadah  penyimpanan  data  yang  diolah  melalui  aplikasi.  Dari  diagram  kelas tersebut terlihat ada 5 entitas yang digunakan dimana entitas merupakan tabel-tabel yang menjadi penyusus basis  data.  Kelima  entitas  tersebut  adalah  admin,  siswa,  pengaturan,  penilaian,  dan  soal.  Masing-masing entitas ini memiliki hubungan atau relasi yang saling berkaitan.
4. Sequence Diagram
Perancangan sequence  diagram dalam  penelitian  ini  pada  gambar  5(a)  dan  gambar  5(b)  menggambarkan diagram yang dirancang baik dari sisi pengguna admin maupun dari sisi pengguna siswa. Sequence diagram admin  menunjukkan  urutan  proses  kerja  yang  menjadi  hak  akses  mulai  dari  data  soal,  data  siswa,  dan

## Bulletin of Information Technology (BIT)
Vol 3, No 4, Desember 2022, Hal 294 - 300 ISSN 2722-0524 (media online) DOI 10.47065/ bit.v3i1. 383 https://journal.fkpt.org/index.php/BIT
pengaturan. Sequence  diagram siswa  menunjukkan  urutan  proses  kerja  yang  menjadi  hak  akses  yaitu pelaksanaan ujian, hasil ujian dan kontak admin.
(a) (b)
Gambar 3. (a) Perancangan Activity Diagram Admin; (b) Perancangan Activity Diagram Siswa
Gambar 4. Perancangan Class Diagram

## Bulletin of Information Technology (BIT)
Vol 3, No 4, Desember 2022, Hal 294 - 300 ISSN 2722-0524 (media online) DOI 10.47065/ bit.v3i1. 383 https://journal.fkpt.org/index.php/BIT
(a) (b)
Gambar 5. (a) Perancangan Sequence Diagram Admin; (b) Perancangan Sequence Diagram Siswa

## 3. HASIL DAN PEMBAHASAN

## 3.1 Halaman Login Aplikasi
Halaman login (gambar 6) berfungsi untuk melakukan otentikasi penggunaan aplikasi. Adapun level akses penggunaan aplikasi ujian online ini terbagi dalam dua bentuk yaitu admin dan siswa.

## Gambar 6. Tampilan Halaman Login

## 3.2 Halaman Data Siswa
Halaman data siswa (gambar 7) berfungsi untuk mengelola seluruh data siswa yaitu merubah dan menghapus data siswa yang telah melakukan registrasi. Halaman ini hanya dapat diakses oleh admin.

## Gambar 7. Tampilan Data Siswa

## 3.3 Halaman List Data Ujian
Halaman List data ujian berfungsi untuk mengelola data ujian yang berisi nama mata pelajaran, lama ujian, dan status ujian. Data pada halaman  ini  juga akan tampil pada  login siswa. Untuk proses tambah, edit, dan hapus data hanya dapat dilakukan oleh login admin (gambar 8). Untuk login siswa, halaman data ujian hanya menampilkan data ujian dan lama ujian yang telah dimasukkan oleh admin dan tersedia tombol kerjakan untuk mulai mengerjakan soal ujian (gambar 9).

## Bulletin of Information Technology (BIT)
Vol 3, No 4, Desember 2022, Hal 294 - 300 ISSN 2722-0524 (media online) DOI 10.47065/ bit.v3i1. 383 https://journal.fkpt.org/index.php/BIT
Gambar 8. Tampilan Halaman Data Ujian Untuk Login Admin
Gambar 9. Tampilan Halaman Data Ujian Untuk Login Siswa

## 3.4 Halaman Soal Ujian
Halaman soal ujian berfungsi untuk mengelola soal-soal ujian yaitu soal ujian, jawaban untuk opsi A, B, C, D, E dan opsi jawaban  yang benar. Untuk  proses tambah, edit, dan hapus data hanya dapat  dilakukan oleh  login admin. Sebelum membuka halaman ini, admin memilih salah satu data ujian pada halaman data ujian (gambar 10).
Gambar 10. Tampilan Halaman Soal Ujian Untuk Login Admin
Untuk login  siswa, setelah siswa  memilih tombol kerjakan (gambar 11)  maka akan tampil pesan konfirmasi untuk memulai ujian seperti gambar 12. Jika siswa menekan tombol “OK” maka akan dilakukan proses pengacakan nomor urut  soal ujian sehingga urutan soal ujian  yang tampil akan teracak seperti gambar 11. Pada halaman pelaksanaan ujian terdapat informasi  mengenai  jumlah  soal dan waktu pengerjaan dan  juga dilengkapi dengan pewaktu (timer) yang dapat memberikan informasi sisa waktu pengerjaan soal.
Gambar 11. Tampilan Halaman Soal Ujian Untuk Login Admin
Gambar 12. Tampilan Halaman Pelaksanaan Ujian Pada Login Siswa

## Bulletin of Information Technology (BIT)
Vol 3, No 4, Desember 2022, Hal 294 - 300 ISSN 2722-0524 (media online) DOI 10.47065/ bit.v3i1. 383 https://journal.fkpt.org/index.php/BIT
Gambar 13. Tampilan Pesan Konfirmasi Selesai Ujian

## 4. KESIMPULAN
Berdasarkan hasil dan pembahasan di atas, maka dapat diambil beberapa kesimpulan dalam penelitian ini antara lain 1. Dengan adanya aplikasi ujian online penerimaan siswa baru ini, dapat membantu dan mempermudah kerja panitia pelaksana  ujian  dalam  penyelenggaraan  ujian  serta  pengkoreksian  hasil  ujian,  karena  aplikasi  ujian  online penerimaan siswa baru ini dapat digunakan dengan mudah dan tidak perlu menggunakan kertas lagi.
2. Tidak membutuhkan petugas pengawas ujian yang banyak karena urutan soal ujian telah teracak sehingga proses pengawasan menjadi lebih mudah.
3. Dengan adanya aplikasi ujian online penerimaan siswa baru ini, penyelenggaraan ujian penerimaan siswa baru akan diadakan secara terstruktur dan dengan jadwal yang jelas.
4. Sistem bangun aplikasi ujian online penerimaan siswa baru di SMK Gelora Jaya Nusantara Medan berbasis web dan mobile ini memberikan kemudahan terhadap siswa baru dalam mengikuti ujian penerimaan siswa baru karena siswa dapat menyelesaikan ujian dengan mudah serta bersifat portable

## UCAPAN TERIMAKASIH
Terimakasih disampaikan kepada seluruh pihak yang telah mendukung terlaksananya penelitian dan membantu dalam penyusunan penelitian ini mulai dari awal hingga selesai.

## REFERENCES
[1] H. Prasetyo and R. Komarudin, “Perancangan Sistem Informasi Absensi Dan Cuti Karyawan Pada PT. Pinus Merah Abadi,” Jutis (Jurnal Teknik Informatika), vol. 9, no. 2, pp. 136–145, 2021.
[2] A. B. Sidiq and D. Kurniadi, “Perancangan Sistem Informasi Ujian Online Berbasis Web pada SMK N 1  Solok,” Jurnal Vocational  Teknik  Elektronika  dan  Informatika,  vol.  9,  no.  2,  pp.  44–54,  2021,  [Online].  Available: http://ejournal.unp.ac.id/index.php/voteknika/
[3] A. Riyadi, E. H. Hermaliani, and D. Y. Utami, “Pembuatan Aplikasi Sistem Ujian Online Pada SMK Garuda Nusantara Bekasi,” Jurnal Ilmiah SINUS, vol. 17, no. 1, pp. 23–36, Jan. 2019, doi: 10.30646/sinus.v17i1.383.
[4] V. Asih, A. Saputra, and R. T. Subagio, “Penerapan Algoritma Fisher Yates Shuffle Untuk Aplikasi Ujian Berbasis Android,” Jurnal DIGIT, vol. 10, no. 1, pp. 59–70, 2020.
[5] S. Agarwal, “A fractal based image cipher using  Knuth shuffle  method and dynamic diffusion,”  International Journal  of Computer Networks and Communications, vol. 11, no. 4, pp. 81–100, 2019, doi: 10.5121/ijcnc.2019.11405.
[6] A. Ramadhan and R. T. K. Sari, “Algoritma Fisher-Yates Shuffle Pada Game Edukasi Jumble Hijaiyah,” Jurnal Teknologi Informatika dan Komputer, vol. 8, no. 1, pp. 94–106, Mar. 2022, doi: 10.37012/jtik.v8i1.759.
[7] M.  A.  Hasan,  S.  Supriadi,  and  Z.  Zamzami,  “Implementasi  Algoritma  Fisher-Yates  Untuk  Mengacak  Soal  Ujian  Online Penerimaan  Mahasiswa  Baru  (Studi  Kasus :  Universitas  Lancang  Kuning  Riau),”  Jurnal  Nasional  Teknologi  dan  Sistem Informasi, vol. 3, no. 2, pp. 291–298, Sep. 2017, doi: 10.25077/teknosi.v3i2.2017.291-298.
[8] D. D. J. T. Sitinjak, Maman, and J. Suwita, “Analisa Dan Perancangan Sistem Informasi Administrasi Kursus Bahasa Inggris Pada Intensive English Course di Ciledug Tangerang,” Jurnal IPSIKOM, vol. 8, no. 1, 2020.
[9] Santosa, M. H. Saputra, and A. Setiadi, “Analisis Dan Perancangan Aplikasi Bel Otomatis Berbasis Mikrokontroler Di SMA Unggul Sakti Jambi,” Jurnal Sains dan Informatika, vol. 5, no. 2, pp. 122–128, 2019.
[10]  R.  Irviani  and  R.  Oktaviana,  “Aplikasi  Perpustakaan  Pada  SMAN1  Kelumbayan  Barat  Menggunakan  Visual  Basic,” Technology Acceptance Model, vol. 8, no. 1, pp. 63–69, 2017, [Online]. Available: www.stmikpringsewu.ac.id
[11]  A. Widarma and S. Rahayu, “Perancangan Aplikasi Gaji Karyawan Pada PT. PP London Sumatera Indonesia Tbk. Gunung Malayu Estate-Kabupaten Asahan,” Jurnal Teknologi Informasi), vol. 1, no. 2, pp. 166–173, 2017.