Pengembangan Sistem Peminjaman dan Rekomendasi Buku di UPT. Perpustakaan Politeknik Negeri Lhokseumawe dengan Menggunakan Algoritma CT-PRO
Amirullah 1 , Muhammad Rizky Fahlevi 2* , Azhar 3
1, 2, 3 Jurusan Teknologi Informasi dan Komputer Politeknik Negeri Lhokseumawe
1 amir@pnl.ac.id, 2* muhammadrizkyfahlevi0@gmail.com, 3 azhar.tik@pnl.ac.id
Abstrak — UPT. Perpustakaan Politeknik Negeri Lhokseumawe menyimpan puluhan ribu koleksi buku lintas ilmu. Namun, proses pencarian dan  peminjaman  buku  masih  bersifat  konvensional  dan  terbatas  pada  keberadaan  fisik  di  perpustakaan.  Keterbatasan  ini  menyulitkan peminjam  yang  tidak  berada  di  lokasi  perpustakaan.  Sebagai  solusi,  sistem  peminjaman  buku  online  dirancang  untuk  mempermudah pencarian dan pemesanan buku. Sistem ini dilengkapi dengan fitur rekomendasi berdasarkan algoritma Ct-Pro, yang diterapkan menggunakan data  peminjaman  buku  2020  dan  mencapai  efektivitas  sebesar  7.27%.  Pengujian  sistem,  baik  black  box  maupun  white  box,  menunjukkan tingkat  keberhasilan  89.13%.  Oleh  karena  itu,  algoritma  Ct-Pro  efektif  untuk  analisis  data  transaksi  dan  memberikan  rekomendasi  buku, sedangkan sistem yang dikembangkan memudahkan proses peminjaman bagi pengguna.
Kata kunci — Algoritma Ct-Pro, Sistem Peminjaman Buku, Calon Peminjam, UPT. Perpustakaan Politeknik Negeri Lhokseumawe
Abstract— The UPT. Library of Lhokseumawe State Polytechnic houses tens of thousands of book collections spanning various disciplines. However, the book search and borrowing process remains conventional and is limited to the physical presence in the library. This limitation poses challenges for borrowers not present at the library's location. As a solution, an online book borrowing system was designed to simplify book search and ordering. This system is equipped with a recommendation feature based on the Ct-Pro algorithm, which, when applied using 2020 book borrowing data, achieved an effectiveness of 7.27%. System tests, both black box and white box, showed a success rate of 89.13%. Therefore, the Ct-Pro algorithm is effective for transaction data analysis and providing book recommendations, while the developed system eases the borrowing process for users.
Keywords — Ct-Pro Algorithm, Book Borrowing System, Prospective Borrowers, UPT. Library of Lhokseumawe State Polytechnic

## I. P ENDAHULUAN
Perpustakaan  merupakan  salah  satu  fasilitas  yang menyediakan  berbagai  macam  bahan  pustaka  seperti  buku pelajaran,  buku  teks,  literature  untuk  praktikum  kejurusan, majalah  umum  dan  berbagai  macam  koleksi  lainnya  [1]. Perpustakaan  dapat  berupa  perpustakaan  umum  yang  terbuka untuk  umum,  perpustakaan  sekolah,  perpustakaan  universitas dan perpustakaan khusus untuk bidang-bidang tertentu seperti perpustakaan  medis  atau  perpustakaan  hukum.  Koleksi  buku dan  referensi  yang  disimpan  di  perpustakaan  dapat memberikan  informasi  yang  dibutuhkan  serta  membantu pengembangan kreativitas dan imajinasi. Selain itu, perpustakaan  juga  menyediakan  layanan  seperti  peminjaman buku.
Perpustakaan  memiliki  peran  penting  bagi  peradaban kampus  dan  membentuk  mahasiswa  berintegritas,  yakni dengan mengoptimalkan perannya dan berupaya meningkatkan minat dan budaya baca di perguruan tinggi [2]. Politeknik Negeri Lhokseumawe (PNL) merupakan perguruan tinggi yang berada di Provinsi Aceh dengan menyelenggarakan  pendidikan  vokasi  dalam  sejumlah  bidang pengetahuan  khusus.  Politeknik  Negeri  Lhokseumawe memiliki  gedung  perpustakaan  sebagai  fasilitas  publik  untuk membantu  para  mahasiswa  dan  pengunjung  lainnya  dalam mencari  ilmu  pengetahuan  serta  membantu  kegiatan  kuliah mahasiswa.
UPT.  Perpustakaan  Politeknik  Negeri  Lhokseumawe memiliki koleksi buku yang banyak dari berbagai bidang ilmu pengetahuan  dan  juga  memiliki  pengunjung  yang  banyak. Dengan koleksi buku yang banyak tentunya akan banyak juga
para calon peminjam yang ingin melakukan peminjaman buku, akan  tetapi  peminjaman  pada  UPT.  Perpustakaan  Politeknik Negeri  Lhokseumawe  masih  dilakukan  di  perpustakaan  serta pencarian  buku  yang  dilakukan  juga  masih  di  perpustakaan dengan  mencari  buku  pada  rak  buku  dan  jumlah  buku  yang tersedia  juga  masih  terbatas.  Hal  tersebut  menjadi  sebuah masalah  dimana  pencarian  buku  yang  dilakukan  masih memakan  waktu  yang  lama  dan  jumlah  buku  yang  masih terbatas  juga  akan  menyulitkan  para  calon  peminjam  yang ingin melakukan peminjaman buku tetapi sedang tidak berada di tempat.
Untuk  mengatasi  masalah  tersebut  diberikan  solusi  dengan dibuatkan  sistem  yang  dapat  melakukan  peminjaman  buku secara  online  untuk  memudahkan  calon  peminjam  dalam mengatasi  masalah  yang  dihadapi.  Pada  sistem  peminjaman buku  ini,  calon  peminjam  dapat  melakukan  order  buku  yang diinginkan  dan  mencari  buku  dengan  mudah  tanpa  memakan waktu yang lama. Selain itu, sistem peminjaman buku ini juga memberikan  fitur  rekomendasi  yang  dapat  digunakan  untuk melihat  rekomendasi  buku  terbaik  yang  diperoleh  dari algoritma Ct-Pro.
Telah  ada  beberapa  penelitian  serupa  sebelumnya  yang meneliti sistem rekomendasi seperti penelitian yang dilakukan oleh  Saefudin  yang  menggunakan  algoritma  Apriori  dengan hasil  yang  diperoleh  berupa  pemberian  rekomendasi  buku berdasarkan  itemset  buku  yang  sering  dipinjam  sehingga petugas  perpustakaan  bisa  menentukan  buku  apa  saja  yang bisa  dijadikan  rekomendasi  [3].  Terdapat  pula  penelitian  lain yang dilakukan oleh Tia Monisya Afriyanti yang menggunakan  algoritma  Fp-Growth  dengan  hasil  yang
diperoleh  merekomendasikan  buku  dengan  hasil  keluaran berupa rekomendasi buku sejenis dan rekomendasi buku yang paling sering dipinjam [4]. Pada penelitian sebelumnya masih terdapat  kelemahan  karena  masih  menggunakan  algoritma lama.  Kelemahan  tersebut  berupa  pengurangan  perfoma algoritma ketika pola bertambah panjang sehingga membutuhkan  waktu  yang  lebih  banyak  dan  memori  yang cukup besar  [5]. Berbeda dengan algoritma Ct-Pro, algoritma tersebut membutuhkan lebih sedikit ruang memori dan proses algoritma  relatif  lebih  cepat  dalam  eksekusi  dibandingkan dengan  algoritma  sebelumnya  karena  algoritma  Ct-Pro menggunakan  teknik  mining  yang  berbeda  [6].  Oleh  karena itu,  dalam  penelitian  ini  akan  membuat  sistem  peminjaman buku  secara  online  dan  fitur  rekomendasi  buku  dengan menggunakan algoritma Ct-Pro.
Hasil  yang  diharapkan  dengan  adanya  sistem  ini  adalah dapat  membantu  calon  peminjam  dalam  memudahkan peminjaman  buku  dan  juga  memudahkan  calon  peminjam melakukan pencarian buku tanpa memakan waktu yang lama. Fitur rekomendasi buku yang diberikan diharapkan juga dapat membantu  calon  peminjam  dalam  melihat  rekomendasi  buku terbaik.
A. Tinjauan Pustaka
1. Algoritma Compact Tree-Apriori (Ct-Pro)
Algoritma ini adalah evolusi dari algoritma FP-GROWTH dengan  perubahan  pada  struktur  pohon  yang  digunakan. Menggunakan  struktur  Compressed  FP-Tree  (CFP-Tree), informasi  dari  FP-Tree  disederhanakan  menjadi  struktur yang  lebih  ringkas,  yang  menghasilkan  pembuatan  pohon dan  penambangan  itemset  yang  sering  muncul  menjadi lebih efisien[7].
Langkah-langkah algoritma CT-PRO yaitu[8]:
1. Menemukan item-item yang frequent.
2. Membuat  Global  CFP-Tree  dimulai  dari  jumlah frequent terbesar ke frequent terkecil pada Global item table.  Setelah  terurut  kemudian  dibuat  Global  CFP- Tree.
3. Melakukan mining
a. Dimulai  dari  mengurutkan  Global  item  table mulai  dari  item  berfrekuensi  terkecil  hingga terbesar.
b. Untuk setiap item yang terdaftar pada Global item tabel  yang  telah  diurutkan,  dilakukan  pencarian node  yang  berkaitan  dengan  item  tersebut  pada Global  CFP-Tree.  Dari  semua  node  yang ditemukan  untuk  setiap  item  inilah  yang  disebut dengan Local Frequent item dan digunakan untuk membuat  Local  item  table  yang  pembuatannya dilakukan  berdasarkan  jumlah  minimum  support yang telah ditentukan.
c. Setelah  itu,  dibuat  Local  CFP-Tree  berdasarkan Local item table yang terbentuk.
d. Dari  Local  CFP-Tree  dibentuk  frequent  pattern sesuai dengan item yang di-mining. Dari frequent pattern  dihitung  masing-masing  item  yang memenuhi  dihitung  confidence-nya.  Apabila memenuhi  minimum  confidence,  maka  masing- masing item yang bersangkutan dijadikan sebagai knowledge.

## II. M ETODOLOGI P ENELITIAN
A. Persiapan Penelitian
1. Identifikasi masalah
Pada tahap ini merupakan proses mencari sebuah masalah yang  terdapat  pada  UPT.  Perpustakaan  Politeknik  Negeri Lhokseumawe  dan  juga  mencari  solusi  untuk  mengatasi masalah tersebut.
2. Latar belakang masalah
Pada  tahap  ini  melakukan  pendekatan  terhadap  masalah yang  sedang  dihadapi  oleh  UPT.  Perpustakaan  Politeknik Negeri  Lhokseumawe  untuk  mendapatkan  penyebab  dari masalah yang akan diteliti.
3. Rumusan masalah
Pada  tahap  ini  merumuskan  masalah  peminjaman  buku menjadi  beberapa  masalah  yang  lebih  spesifik  untuk diteliti lebih lanjut.
4. Tujuan penelitian
Pada  tahap  ini  memberikan  solusi  dari  masalah peminjaman  buku  yang  terjadi  pada  UPT.  Perpustakaan Politeknik  Negeri  Lhokseumawe  dengan  sebuah  sistem peminjaman dengan fitur rekomendasi buku menggunakan algoritma ct-pro.
5. Mencari referensi dari studi pustaka
Pada  tahap  ini  mencari  referensi  dan  materi  yang  terkait dengan sistem peminjaman dan rekomendasi melalui buku, jurnal, prosiding dan internet.
B. Alur Penelitian
1. Pengumpulan Data
Pada  tahap  ini  melakukan  wawancara  kepada  ketua  UPT. Perpustakaan  Politeknik  Negeri  Lhokseumawe  berkenaan dengan masalah yang dihadapi dan bagaimana peminjaman  buku  dilakukan  selama  ini.  Tahap  ini  juga dilakukan  untuk  mengumpulkan  data  buku  dan  data transaksi  peminjaman  buku  yang  terdapat  pada  UPT. Perpustakaan Politeknik Negeri Lhokseumawe.
2. Pengolahan Data
Pada  tahap  ini  menentukan  data  buku  dan  data  transaksi peminjaman buku untuk pengolahan algoritma ct-pro.
3. Perancangan
Pada  tahap  ini  merancang  kebutuhan  dan  alur  proses  dari sistem  dengan  menggunakan  perancangan  dari  use  case diagram,  activity  diagram,  sequence  diagram,  entity relationship  diagram  dan  perancangan  tabel  database. Perancangan user interface dilakukan untuk memperlihatkan  perancangan  dari  tampilan  sistem  dan perancangan  metode  dilakukan  untuk  memperlihatkan langkah-langkah dari algoritma yang dipakai.
4. Pembuatan Sistem
Pada  tahap  ini  membuat  sistem  peminjaman  dan rekomendasi  buku  dengan  program  PHP  menggunakan framework Laravel.
5. Pengujian
Pada  tahap  ini  melakukan  pengujian  dengan  black-box untuk  mengetahui  keberhasilan  dari  fitur-fitur  sistem  dan pengujian  white-box  untuk  mengetahui  proses  algoritma berjalan dengan sesuai.
6. Penutup
Memberikan  kesimpulan  dari  hasil  penelitian  dan  saran kepada  pengembang  yang  ingin  mengembangkan  sistem ini ke depannya.

## C. Analisis Kebutuhan Fungsional Sistem
Sistem  ini  memiliki  beberapa  kebutuhan  fungsional  yang harus  dipenuhi  untuk  memastikan  pengguna  dapat  mencapai tujuan  yang  diinginkan.  Pertama,  terdapat  fitur  login  yang memungkinkan tiga jenis pengguna, yaitu admin, petugas, dan peminjam,  untuk  mengakses  sistem.  Kedua,  terdapat  fitur registrasi  yang  memungkinkan  calon  peminjam  untuk membuat  akun  mereka  sehingga  dapat  mengakses  sistem. Selanjutnya,  setiap  pengguna  memiliki  akses  ke  fitur  logout untuk  dengan  mudah  keluar  dari  sistem  setelah  selesai menggunakan.  Keempat,  sistem  ini  menyediakan  operasi
CRUD  (Create,  Read,  Update,  Delete)  yang  memungkinkan admin  dan petugas  untuk  menambahkan,  melihat,  mengubah, dan menghapus data dalam sistem. Kelima, output dari sistem mencakup dua hal utama. Admin dan petugas akan menerima hasil  dari  transaksi  peminjaman  yang  dilakukan  oleh peminjam,  serta  dapat  melihat  rekomendasi  buku  yang dihasilkan  melalui  algoritma  ct-pro.  Di  sisi  lain,  peminjam dapat  mengunduh  bukti  transaksi  peminjaman  mereka  dan melihat  rekomendasi  buku  yang  disusun  oleh  algoritma  yang sama,  memastikan  pengalaman  yang  komprehensif  bagi semua pengguna.

## D. Activity  Diagram  Sistem  Peminjaman  dan  Rekomendasi Buku
Pembuatan  rancangan  sistem  ini  menggunakan  Unified Modeling  Language  (UML)  yang  memuat  use  case  diagram, activity  diagram  dan  sequence  diagram  sebagai  awal  dari proses pengerjaan Rancang Bangun Sistem Peminjaman Buku Dengan  Rekomendasi  Menggunakan  Algoritma  Ct-Pro  Pada UPT. Perpustakaan Politeknik Negeri Lhokseumawe.
Perancangan dapat dilihat pada Gambar 1.
Gambar 1 Use Case Diagram Sistem Peminjaman dan Rekomendasi Buku
Pada  sistem  ini  memiliki  tiga  role  pengguna  yaitu  admin, petugas  dan peminjam.  Ketiga  role  tersebut  dapat  melakukan login  dan  logout  dari  sistem.  Admin  mempunyai  hak  akses untuk  melakukan  input,  edit,  delete  data  buku,  data  rak,  data kategori  dan  data  anggota.  Admin  juga  dapat  manipulasi transaksi  peminjaman,  view  grafik  peminjaman  dan  melihat rekomendasi  buku  yang  dihasilkan  dari  algoritma  ct-pro. Petugas  mempunyai  hak  akses  yang  sama  dengan  admin, kecuali petugas tidak mempunyai hak akses untuk manipulasi data  anggota.  Peminjam  mempunyai  hak  akses  untuk melakukan  peminjaman  buku,  unduh  bukti  transaksi peminjaman  buku,  melakukan  pencarian  buku  dan  melihat rekomendasi buku yang telah dihasilkan.
E. Entity  Relationship  Diagram  (ERD)  Sistem  Peminjaman dan Rekomendasi Buku
Entity  relationship  diagram  (ERD)  berfungsi  untuk menggambarkan hubungan antar pasangan entitas menggunakan  matriks  relasi,  entitas  digambarkan  dengan kotak dan relasi digambarkan dengan garis. Pada Gambar 3.43 merupakan ERD sistem peminjaman dan rekomendasi buku.
Pada Gambar 2 terdapat sembilan tabel (kategori, rak, buku, peminjaman, detal_peminjaman, users, support, pengujian dan nilai  kombinasi).  Tabel  buku  memiliki  kategori  dan  rak dengan relasi many to one, tabel users melakukan peminjaman dengan  relasi  one  to  many,  tabel  peminjaman  memiliki  buku dengan  relasi  one  to  many  dan  detail_peminjaman  dengan relasi many to many. Tabel detail_peminjaman memiliki buku dengan relasi one to many dan support dengan relasi many to many.  Tabel  support  memiliki  pengujian  dengan  relasi  many to  one  dan  nilai_kombinasi  memiliki  pengujian  dengan  relasi many to one serta memiliki buku dengan relasi many to many.
Gambar 2 Entity Relationship Diagram (ERD) Sistem Peminjaman dan Rekomendasi Buku
F. Perancangan Metode CT-Pro pada Sistem
Perancangan  Metode  CT-Pro  pada  Sistem  merupakan rancangan untuk mengetahui hasil dari pengujian metode yang digunakan pada sistem yang akan dibuat. Perancangan Metode CT-Pro  pada  Sistem  dapat  dilihat  pada  Gambar  3  yang merupakan tahapan metode dalam menentukan rekomendasi.
Gambar 3 Metode CT-Pro pada Sistem
Adapun penjelasan dari Gambar 3.62 : 1. Menentukan minimum support dan minimum confidence Menentukan  minimum  support  sebagai  batasan  itemset.  Jika minimum support yang dimasukkan adalah 3, maka item yang equal  atau  di  atas  nilai  3  saja  akan  muncul.  Minimum confidence ditentukan sebagai batasan kuatnya aturan asosiasi yang dihasilkan.
Gambar  4  merupakan  fungsi  untuk  memasukkan  data pengujian  ke  dalam  database.  Pada  saat  pengguna memasukkan  nama,  minimum  support,  minimum  confidence, sistem  akan  memperoleh  nilai  support  dan  confidence  dari permintaan HTTP, kemudian sistem membuat data pengujian. Selanjutnya,  sistem  akan  menghitung  total  jumlah  buku  yang ada.  Setelah  itu,  sistem  akan  memanggil  fungsi  lainnya  yang akan  membuat  frequent  itemset,  membangun  CFP-Tree kemudian  mengurutkan  item  dari  terbesar  hingga  terkecil, kombinasi dua itemset, dan memperoleh hasil rekomendasi.
Gambar 4 Kode Memasukkan Data Pengujian
2. Membentuk frequent itemset dan membentuk global item table
Data yang telah diseleksi berdasarkan minimum support akan membentuk  frequent  itemset  dan  frequent  itemset  tersebut akan  dihitung  kemunculan  setiap  item¬-nya  sehingga  akan menghasilkan  global  item  table  (item  yang  memenuhi  nilai minimum support).
Gambar 5 Kode Membuat Frequent Itemset
Gambar 5 merupakan fungsi untuk membuat frequent itemset. Sistem  akan  mengambil  semua  data  buku  terlebih  dahulu, kemudian semua total transaksi setiap buku akan dihitung dan untuk  mendapatkan  nilai  support,  total  data  transaksi peminjaman  dengan  total  jumlah  data  buku  akan  dibagikan kemudian  dikalikan  dengan  100  sehingga  setiap  frequent itemset  menghasilkan  nilai  support.  Data  support  tersebut kemudian akan disimpan ke dalam database.
melalui nilai kombinasi yang didapatkan. Setelah data support dimasukkan  ke  dalam  CFP-Tree,  maka  dilakukan  panggilan fungsi  mineAssociationRules()  dari  objek  CFP-Tree  yang telah  dibuat.  Setelah  fungsi  runCFPTree  dijalankan,  maka sistem  akan  memulai  mengurutkan  semua  itemset  yang  ada dari nilai terbesar ke terkecil.
3. Kombinasi dua itemset
Setiap  item  pada  global  item  table  akan  dikombinasikan  satu sama lain untuk menemukan item yang sering dipinjam secara bersamaan kemudian item tersebut akan diseleksi berdasarkan minimum support yang telah ditentukan.
Gambar 6 merupakan fungsi untuk membuat kombinasi antara dua itemset. Sistem akan mengambil data support untuk item A  dari  tabel  ‘Support’  berdasarkan  minimum  support  yang telah  dimasukkan.  Pada  iterasi  item  A,  untuk  setiap  item  A mengambil  data  support  untuk  item  B  kemudian  dilakukan lagi  iterasi  untuk  item  B  yang  dimana  untuk  setiap  item  B akan  memeriksa  apakah  item  A  dan  B  memiliki  nilai  yang sama.  Jika  sama,  maka  dilakukan  continue  ke  iterasi berikutnya  karena  kombinasi  itemset  tidak  perlu  dibuat  lagi untuk item yang sama
Gambar 6 Kode Kombinasi Itemset
4. Mendapatkan nilai confidence
Dari kombinasi item akan ditentukan minimal confidence-nya dengan minimal confidence yang telah ditentukan sebelumnya. Apabila confidence-nya 3, maka item dengan nilai setara atau di  atas  3  yang  akan  lulus  dan  item  yang  lulus  tersebut  akan dijadikan sebagai rekomendasi buku.
5. Hasil rekomendasi
Pada  halaman  rekomendasi,  item  yang  dijadikan  sebagai rekomendasi    akan  ditampilkan  dalam  bentuk  card  kepada user  role  peminjam  dan  ditampilkan  dalam  bentuk  tabel kepada role admin atau petugas.
Gambar 7 Kode Menghasilkan Rekomendasi
Gambar 7 merupakan fungsi untuk menghasilkan rekomendasi buku.  Dari  kombinasi  itemset  pada  kode  sebelumnya  akan dilakukan  lagi  kombinasi  itemset  pada  kode  ini  yang merupakan  kombinasi  itemset  yang  telah  memenuhi  nilai minimum  support  yang  ditentukan.  Sistem  akan  mengambil data  nilai  kombinasi  itemset  dari  tabel  Nilai_Kombinasi kemudian  pada  iterasi  sistem  akan  mengambil  nilai  atribut dari $kdKombinasi, $kdBarangA, dan $kdBarangB dari setiap data nilai kombinasi itemset. Selanjutnya dilakukan pencarian total  transaksi  dengan  mengambil  data  pinjaman  berdasarkan atribut  kode_pinjam.  Variabel  $fnTransaksi  diinisialisasi sebagai  counter  untuk  jumlah  transaksi  yang  memenuhi kondisi dan pada iterasi $dataPinjam akan memeriksa jumlah item A dan B yang ada pada data  di tabel detail peminjaman. Jika  jumlah  item  A  dan  B  masing-masing  sama  dengan  1, maka meningkatkan nilai $fnTransaksi dengan 1. Selanjutnya, menghitung  nilai  support  dengan  rumus  (fnTransaksi  / totalBuku) * 100 sehingga menghasilkan rekomendasi buku.

## III. H ASIL DAN P EMBAHASAN
A. Implementasi User Interface Implementasi  user  interface  bertujuan  untuk  memenuhi kebutuhan pengguna agar mudah berinteraksi dengan sistem.
1. Halaman Login
Halaman  Login  merupakan  halaman  yang  berfungsi sebagai  akses  awal  bagi  user  untuk  masuk  ke  dalam  sistem. Implementasi  halaman  login  dapat  dilihat  pada  Gambar  8. Halaman Login.
2. Halaman Register Calon  peminjam yang  ingin melakukan  peminjaman  buku. Calon  peminjam  harus  melakukan  pendaftaran  akun  terlebih dahulu untuk dapat melakukan peminjaman.

## Gambar 9 Halaman Register
3. Halaman Home
Halaman  home  merupakan  halaman  yang  memuat informasi  tentang  UPT.  Perpustakaan  Politeknik  Negeri Lhokseumawe.  Pada  halaman  ini  calon  peminjam  dapat menekan tombol login untuk masuk ke dalam sistem. Apabila belum  ada  akun,  calon  peminjam  dapat  menekan  tombol register  untuk  membuat  sebuah  akun  untuk  melakukan peminjaman buku.
4. Halaman Buku
Halaman buku merupakan halaman yang memuat informasi tentang  semua  buku  yang  tersedia  untuk  dipinjamkan  oleh calon peminjam. Pada halaman ini calon peminjam juga dapat mencari  buku  yang  ingin  dicari  dengan  mengetikkan  nama buku pada search bar.

## Gambar 41 Halaman Buku
5. Halaman Detail Buku
Halaman  detail  buku  merupakan  halaman  yang  memuat informasi lengkap tentang buku yang dipilih. Calon peminjam dapat  menekan  buku  yang  ingin  dilihat  pada  halaman  buku kemudian  sistem  akan  menampilkan  halaman  detail  buku kepada calon peminjam.

## Gambar 52 Halaman Detail Buku
6. Halaman Keranjang Peminjaman
Halaman  keranjang  peminjaman  merupakan  halaman  yang memuat informasi peminjaman. Dapat dilihat pada Gambar 14 bahwa permintaan peminjaman telah dibuat.

## Gambar 63 Halaman Keranjang Peminjaman
7. Halaman Daftar Rekomendasi
Halaman  daftar  rekomendasi  merupakan  halaman  yang memuat  beberapa  daftar  rekomendasi  yang  telah  disediakan.
Pengguna  role  peminjam  dapat  memilih  salah  satu  daftar rekomendasi  yang  telah  disediakan  dengan  menekan  tombol lihat  kemudian  sistem  akan  menampilkan  rekomendasi  buku kepada peminjam.

## Gambar 74 Halaman Daftar Rekomendasi
8. Halaman Dashboard Admin
Halaman  dashboard  admin  merupakan  halaman  yang  akan memuat semua informasi jumlah buku, akun user, permintaan peminjaman, buku sedang dipinjam dan buku selesai dipinjam. Pada halaman ini juga ditampilkan informasi buku yang baru saja  dimasukkan  ke  dalam  sistem  serta  dengan  waktu dimasukkannya.  Begitu  juga  sama  dengan  user,  jika  terdapat pengguna yang baru  saja  mendaftarkan  akun  pada  sistem  ini, maka  akan  ditampilkan  nama  user  tersebut  dengan  waktu akunnya terdaftar.

## Gambar 85 Halaman Dashboard Admin
9. Halaman Dashboard Buku Admin
Halaman  dashboard  buku  merupakan  halaman  yang memuat semua informasi data buku yang tersedia pada sistem ini.  Admin  atau  petugas  dapat  melakukan  penambahan  buku dengan  menekan  tombol  tambah  buku.  Admin  atau  petugas juga  dapat  melakukan  perubahan  data  buku  dengan  menekan tombol  edit  dan  menghapus  data  buku  dengan  menekan tombol  hapus.  Selain  itu,  admin  atau  petugas  juga  dapat melihat  informasi  lengkap  tentang  buku  yang  ingin  dilihat dengan menekan tombol view, sebuah form akan muncul pada halaman ini yang berisi detail buku tersebut. Pada halaman ini
admin  atau  petugas  juga  dapat  melakukan  export  semua  data buku ke dalam file excel dengan menekan tombol export excel.

## Gambar 96 Halaman Dashboard Buku
10. Halaman Rekomendasi Admin
Halaman rekomendasi merupakan halaman yang dapat menampilkan rekomendasi  buku.  Pada  halaman  ini,  admin atau petugas dapat memasukkan nilai minimum support dan minimum  confidence  untuk  memulai  rekomendasi.  Kedua nilai  ini  digunakan  untuk  mengidentifikasi  buku  apa  saja yang  sering  dipinjamkan.  Nilai  minimum  support menentukan seberapa banyak buku tertentu telah dipinjamkan,  dari  banyaknya  pinjaman  buku  tersebut  akan diperoleh  frekuensi  kemunculan  yang  cukup  tinggi sehingga  dapat  dijadikan  sebagai  rekomendasi.  Nilai minimum  confidence  sebagai  pengukuran  keyakinan apakah  buku  tersebut dapat  dijadikan  sebagai  rekomendasi atau tidak

## Gambar 107 Halaman Rekomendasi Admin
11. Halaman Hasil Rekomendasi Admin
Halaman  hasil  rekomendasi  merupakan  halaman  yang memuat  informasi  hasil  rekomendasi  buku  yang  telah dibuat  oleh  akun  role  admin  atau  petugas.  Nilai  minimal support yang telah dimasukkan pada halaman rekomendasi adalah tiga, maka hanya terdapat dua item saja yang lewat dari nilai tersebut dan kedua item yang lewat nilai minimal support  merupakan  global  item  table.  Selanjutnya,  setiap item  akan  dikombinasikan  satu  sama  lain  untuk mendapatkan  nilai  support  terbaru.  Nilai  confidence  yang dimasukkan  adalah  3,  maka  hanya  item  dengan  nilai support 3 atau lebih yang dapat dianggap penting dan dapat dijadikan sebagai rekomendasi
Gambar 18 Halaman Hasil Rekomendasi Admin
12. Halaman Daftar Rekomendasi Admin Halaman daftar rekomendasi merupakan halaman yang menyimpan hasil rekomendasi yang telah dibuat sebelumnya.  Pada  halaman  ini  akan  memuat  daftar rekomendasi  yang  telah  dilakukan  serta  dengan  nama pembuat  rekomendasi,  waktu  dibuat,  nilai  minimum support, nilai minimum confidence dan jumlah rekomendasi  buku  yang  dihasilkan.  Admin  atau  petugas dapat menekan tombol lihat pada salah satu daftar yang ada jika  ingin  melihat  kembali  hasil  rekomendasi  buku  yeng telah  dibuat.  Admin  atau  petugas  juga  dapat  melakukan penghapusan  hasil  rekomendasi  dengan  menekan  tombol delete  dan  pada  user  view  hasil  rekomendasi  buku  yang telah dihapus juga akan terhapus dari halaman user

## Gambar 11 Halaman Daftar Rekomendasi
B. Pengujian Black Box
Berikut  adalah  penjelasan  lebih  lanjut  mengenai  hasil perhitungan  pengujian  black  box  pada  Rancang  Bangun Sistem Peminjaman Buku Dengan Rekomendasi
Menggunakan  Algoritma  Ct-Pro  di  UPT.  Politeknik  Negeri Lhokseumawe:
Dalam  pengujian  black  box,  dua  kategori  utama  yang dianalisis adalah kelulusan dan ketidaklulusan dari serangkaian  test  case  yang  telah  dilakukan.  Test  case  yang "lulus"  mengindikasikan  bahwa  sistem  berhasil  menjalankan fungsi-fungsi  yang  diuji  dengan  benar,  sedangkan  test  case yang  "tidak  lulus"  menunjukkan  adanya  masalah  atau kesalahan dalam fungsionalitas sistem.
1. Kelulusan (%):
Persentase kelulusan dihitung dengan membagi jumlah test case  yang  lulus  dengan  jumlah  total  test  case,  kemudian hasilnya  dikalikan  dengan  100%.  Dalam  kasus  ini,  dari  total
46  test  case,  sebanyak  41  test  case  lulus.  Maka perhitungannya adalah sebagai berikut:
Kelulusan (%) = (jumlah test case lulus / jumlah total test case) x 100%
= (41 / 46) x 100% = 89.13%
Hasil  ini  menunjukkan  bahwa  sebanyak  89.13%  dari  test case  berhasil  lulus,  artinya  sistem  mampu  menjalankan sebagian besar fungsi-fungsi yang diuji.
2. Tidak Lulus (%): Persentase ketidaklulusan dihitung dengan membagi jumlah test  case  yang  tidak  lulus  dengan  jumlah  total  test  case, kemudian  hasilnya dikalikan dengan  100%.  Dalam  kasus  ini, terdapat  5  test  case  yang  tidak  lulus.  Maka  perhitungannya adalah sebagai berikut:
Tidak  lulus  (%)  =  (jumlah  test  case  tidak  lulus  /  jumlah total test case) x 100%
= (5 / 46) x 100% = 10.86%
Hasil  ini  mengindikasikan  bahwa  sebanyak  10.86%  dari test  case  mengalami  ketidaklulusan,  yang  mengimplikasikan adanya  beberapa  aspek  sistem  yang  perlu  diperbaiki  atau ditingkatkan agar dapat berfungsi secara optimal.
Dengan  mempertimbangkan  hasil  perhitungan  tersebut, dapat  disimpulkan bahwa pengujian  black  box pada  Rancang Bangun  Sistem  Peminjaman  Buku  Dengan  Rekomendasi Menggunakan  Algoritma  Ct-Pro  di  UPT.  Politeknik  Negeri Lhokseumawe  telah  menghasilkan  persentase  kelulusan sebesar 89.13% dan persentase ketidaklulusan sebesar 10.86%. Meskipun  mayoritas  fungsi  berhasil  dijalankan  dengan  baik, masih  ada  beberapa  area  yang  perlu  diperbaiki  guna meningkatkan kualitas dan kinerja keseluruhan sistem.
C. Pengujian White Box Pengujian  white-box  adalah  jenis  pengujian  perangkat  lunak dimana  penguji  memiliki  akses  dan  pemahaman  penuh terhadap  struktur  internal,  kode  sumber  dan  logika  aplikasi yang  diuji.  Tujuan  dari  pengujian  white-box  untuk mengidentifikasi  kelemahan  dalam  kode  sumber,  alur eksekusi  dan  logika  aplikasi  yang  mungkin  tidak  terdeteksi oleh  pengujian  black-box  karena  pada  pengujian  black-box penguji  hanya  melihat  input  dan  output  tanpa  pengetahuan tentang  bagaimana  sistem  bekerja  di  dalamnya.  Pengujian white box dapat dilihat pada Gambar 20
Jalur 1: 1-2-3-5-6-7-8-9-11-12 Jalur 2: 1-2-3-4-12 Jalur 3: 1-2-3-5-6-7-8-9-10-12
Case Rekomendasi : Path: 1
Jalur: 1-2-3-5-6-7-8-9-11-12
Skenario:
1. Start 2. Input min. support dan min.  confidence
3. Supp = equal or higher
5. Membuat frequent itemset dan global item table
6. Membentuk CFP-Tree
7. Pengurutan itemset dari nilai terbesar ke terkecil
8. Membuat kombinasi dua item
9. Mencapai min. confidence?
11. Hasil rekomendasi 12. Selesai Hasil Pengujian : Berhasil Path: 2 Jalur: 1-2-3-4-12 Skenario: 1. Start
2. Input min. support dan min.  confidence
3. Supp = equal or higher
4. Item kosong
12. Selesai Hasil Pengujian : Berhasil Path: 3 Jalur: 1-2-3-5-6-7-8-9-10-12 Skenario: 1. Start
2. Input min. support dan min.  confidence
3. Supp = equal or higher
5. Membuat frequent itemset dan global item table
6. Membentuk CFP-Tree
7. Pengurutan itemset dari nilai terbesar ke terkecil
8. Membuat kombinasi dua item
9. Mencapai min. confidence?
10. Item kosong
12. Selesai
Hasil Pengujian : Berhasil
Gambar 12 Flowchart dan Flowgraph White Box Dari hasil pengujian yang telah dilakukan, dapat diketahui bahwa  pengujian  pada  algoritma  ct-pro  berhasil  melalui
beberapa alur, sehingga algoritma tersebut dapat disimpulkan menyesuaikan  arah  atau  alur  sesuai  dengan  data  yang didapatkan.  Adapun  hasil  keseluruhan  dari  pengujian algoritma ct-pro adaalah berhasil

## IV. K ESIMPULAN
Dari  hasil  pengujian  sistem  yang  telah  dilakukan  dengan menggunakan  pengujian  black  box  dapat  disimpulkan  bahwa 89.13%  fungsi  dari  sistem  tersebut  berjalan  sesuai  dengan perancangan sistem dan 10.86% dari fungsi sistem yang tidak berjalan  dengan  baik,  sehingga  dapat  disimpulkan  bahwa perancangan  sistem  peminjaman  buku  yang  telah  dilakukan berhasil.  Dari  pengujian  white  box  yang  telah  dilakukan memperlihatkan  hasil  bahwa  algoritma  yang  dipakai  berjalan sesuai  dengan  perancangan  algoritma,  sehingga  dapat disimpulkan  bahwa  algoritma  ct-pro  dapat  memberikan rekomendasi buku terbaik berdasarkan data buku yang paling banyak dipinjam. Kuantitas data peminjaman juga mempengaruhi  rekomendasi  buku  yang  dihasilkan,  semakin banyak  data  peminjaman  buku  akan  semakin  banyak  juga rekomendasi yang dihasilkan.
R EFERENSI
[1] S. Pracoyo and E. Seniwati, “Algoritma Apriori Untuk Penempatan Buku  Di  Perpustakaan  Smk  Ma’Arif  1  Wates,” Inf.  Syst. Journal(INFOS) , vol. 1, no. 2, pp. 1–6, 2019.
[2]
S.  Fa’atin,  “Meningkatkan  Peran  Perpustakaan  Perguruan  Tinggi Dalam  Membentuk  Integritas  Mahasiswa  Menuju  Kampus Berperadaban,” Libraria , vol. 5, no. 2, pp. 306–320, 2017.
[3] S.  Saefudin  and  D.  Fernando,  “Penerapan  Data  Mining Rekomendasi Buku Menggunakan Algoritma Apriori,” JSiI (Jurnal
Sist. Informasi) , vol. 7, no. 1, p. 50, 2020, doi: 10.30656/jsii.v7i1.1899.
[4] E.  Retnoningsih  and  T.  M.  Afriyanti,  “Sistem  Rekomendasi  Buku Perpustakaan  Menggunakan  Algoritma  Frequent  Pattern  Growth,” Techno.Com ,  vol.  21,  no.  2,  pp.  292–310,  2022,  doi: 10.33633/tc.v21i2.5789.
[5] E. H. S. Atmaja, R. Simaremare, and P. H. P. Rosa, “Application of CT-Pro  Algorithm  For  Crime  Analysis,” Conf.  Senat.  STT Adisutjipto  Yogyakarta ,  vol.  5,  pp.  435–444,  2019,  doi: 10.28989/senatik.v5i0.360.
[6] B.  Gupta,  “FP-Tree  Based  Algorithms  Analysis :  FP-Growth, COFI-Tree  and  CT-PRO,” Int.  J.  Comput.  Sci.  Eng. ,  vol.  3,  no.  7, pp. 2691–2699, 2011.
[7] Rohmania Nurlaili Putri, Sihwi Sari Widya, Sulistyo Meiyanto Eko, “Implementasi  Algoritma  Ct-Pro  Untuk  Menemukan  Pola  Pada Data  Siswa  Sma  (  Studi  Kasus :  Madrasah  Aliyah  Negeri  (  Man  ) Karanganon Klaten ),” pp. 392–398.
[8] S.  I.  Sudarsono,  S.  W.  Sihwi,  and  M.  E.  Sulistyo,  “MEMILIH RUMAH  MAKAN  DENGAN  MENGGUNAKAN  ALGORITMA CT-PRO Abstrak,” pp. 51–64, 2013.