2
1. Latar Belakang
Permasalahan utama dari aktifitas belajar, latihan, dan pengujian kemampuan matematika adalah kebutuhan akan tersedianya koleksi soal dalam
jumlah yang besar dengan beragam variasi soal. Pengembangan bank soal matematika, tidak jarang harus melibatkan tim kerja yang besar dan jam kerja
yang relatif panjang untuk menghasilkan soal yang valid dalam jumlah besar. Program aplikasi generator soal matematika telah banyak dikembangkan
dan bisa didapatkan dengan mudah, akan tetapi generator soal yang tersedia tersebut memiliki beberapa permasalahan, antara lain:
1. Software generator soal umumnya dikembangkan oleh pengembang software,
research team, task force, atau perorangan, yang fokus pada satu bidang atau cabang matematika tertentu, dan generator soal yang dibangun akan
menghasilkan koleksi soal yang terbatas hanya dalam domain cabang matematika tersebut. Sehingga untuk keperluan pembelajaran atau pengujian
kemampuan matematika yang lebih luas, bisa jadi dibutuhkan lebih dari satu generator soal dari pengembang yang berbeda dengan kebijakan penggunaan
yang berbeda pula, terkait dengan harga software, lisensi, limitasi, dan sebagainya.
2. Untuk dapat meng-generate soal, generator soal memiliki sejumlah rule sesuai
dengan formulasi matematika dari soal-soal yang akan dibentuk. Tetapi rule ini merupakan algoritma yang sudah dituliskan sebagai kode program yang
built-in di dalam program aplikasi generator soal, sehingga sulit untuk
3 melakukan modifikasi atau penambahan rule baru untuk kasus atau formula
matematika yang berbeda. 3.
Untuk dapat mengembangkan software generator soal sendiri yang sesuai dengan kebutuhan, dibutuhkan kemampuan sebagai seorang programer
komputer yang umumnya tidak selalu dimiliki oleh guru atau dosen yang mengajarkan matematika
Dari permasalahan yang telah diuraikan di atas, maka perlu dipikirkan untuk merancang dan mengembangkan suatu bahasa pemrograman khusus yang
mudah dipahami dan digunakan, atau bahasa pemrograman tingkat tinggi yang bersifat deklaratif untuk mendefinisikan rule atau formula matematika.
Selanjutnya sejumlah rule yang telah dituliskan dalam bahasa yang dirancang dapat dikoleksi sebagai sebuah library untuk digunakan oleh generator
soal yang untuk menghasilkan soal-soal berdasarkan koleksi rule yang tersedia.
2. Permasalahan