Otomatisasi Sistem Pendaftaran dan Penjadwalan Ujian
Skripsi Fakultas Teknologi Informasi Universitas Kristen
Satya Wacana
Artikel Ilmiah
Diajukan kepada Fakultas Teknologi Informasi
untuk memperoleh Gelar Sarjana Komputer
Peneliti:
Thomas Adhi Nugroho (672012053)
Christine Dewi, S.Kom., M.Cs.
Program Studi Teknik Informatika
Fakultas Teknologi Informasi
Universitas Kristen Satya Wacana
1
Otomatisasi Sistem Pendaftaran dan Penjadwalan Ujian
Skripsi Fakultas Teknologi Informasi Universitas Kristen
Satya Wacana
1) Thomas Adhi Nugroho, 2) Christine Dewi Fakultas Teknologi Informasi
Universitas Kristen Satya Wacana Jl. Diponegoro 52-60, Salatiga 50771, Indonesia
Email: 1) [email protected], 2) [email protected]
Abstract
TA FTI UKSW division is one of the divisions that exist in the FTI UKSW charge of handling the administration of the final project (TA). TA FTI UKSW division is still not have a system for data processing mainly on the enrollment and exam scheduling. Processing examinees data is still done using excel file, so prone to error. Scheduling the exam itself is still done by checking the data one by one, so it takes a longer time about 2-3 days. In this research, registration and scheduling system will be built. The system is made base on web applications with CodeIgniter framework. This system is developed using prototyping methods with twice the evaluation process. The test results show that the system of registration and scheduling system may help TA FTI UKSW division in data processing and can speed up the scheduling process from 2-3 days to 1-2 minutes.
Keywords: Examination Scheduling, Examination Registration, CodeIgniter Framework, FTI UKSW
Abstrak
Bagian TA FTI UKSW merupakan salah satu dari divisi yang ada di FTI UKSW yang bertugas menangani administrasi tugas akhir (TA). Bagian TA FTI UKSW saat ini masih belum memiliki sistem untuk pengolahan data skripsi terutama pada bagian pendaftaran dan penjadwalan ujian. Pengolahan data peserta ujian selama ini masih dilakukan dengan menggunakan file excel, sehingga rawan terjadi kesalahan. Penjadwalan ujian sendiri masih dilakukan dengan cara memeriksa data satu-persatu, sehingga membutuhkan waktu yang lebih lama sekitar 2-3 hari. Pada penelitian ini dilakukan pengembangan sistem untuk pendaftaran dan penjadwalan ujian. Sistem yang dikembangankan berupa aplikasi berbasis web dengan Codeigniter sebagai framework. Sistem ini dikembangakan menggunakan metode prototyping dengan dua kali proses evaluasi. Hasil pengujian sistem menunjukan bahwa pengembangan sistem pendaftaran dan penjadwalan ini dapat membantu bagian TA FTI UKSW dalam pengolahan data peserta ujian dan dapat mempercepat proses penjadwalan dari 2-3 hari menjadi 1-2 menit.
Kata Kunci: Penjadwalan Ujian, Pendaftaran Ujian, Framework CodeIgniter, FTI UKSW.
1) Mahasiswa Fakultas Teknologi Informasi Jurusan Teknik Informatika, Universitas Kristen Satya
Wacana Salatiga.
2
1. Pendahuluan
Fakultas Teknologi Informasi Universitas Kristen Satya Wacana (FTI UKSW) merupakan salah satu fakultas yang selalu dinamis dan berkembang. FTI UKSW telah memiliki 10 program studi dengan 4000 mahasiswa dan 70 dosen [1]. Untuk memaksimalkan pelayangan kepada mahasiswa, FTI UKSW memiliki beberapa bagian, salah satunya bagian Tugas Akhir. Kewajiban dari bagian Tugas Akhir Fakultas Teknologi Informasi Universitas Kristen Satya Wacana (TA FTI UKSW) adalah membantu administrasi mahasiswa skripsi, mulai dari pendaftaran hingga yang terakhir yudisium.
Tugas Akhir (TA) merupakan syarat kelulusan bagi mahasiswa di FTI UKSW. TA sendiri memiliki proses yang panjang, dan salah satu proses yang penting di dalamnya adalah ujian. Tahap awal ujian TA dimulai dari pendaftaran ujian, pembuatan jadwal hingga pengumuman jadwal ujian. Pendaftaran ujian di FTI UKSW masih mengandalkan google form, kemudian data disimpan dalam bentuk fileexcel. Data yang dihasilkan akan divalidasi terlebih dahulu oleh TA FTI UKSW berdasarkan syarat yang sudah ditentukan. Data yang sudah tervalidasi akan dikirimkan ke tiap progdi untuk kemudian ditentukan penguji untuk masing-masing peserta ujian. Kemudian data tersebut dikembalikan lagi ke TA FTI UKSW untuk pembuatan jadwal. Proses pembuatan jadwal dilakukan dengan mencocokan satu persatu data dosen penguji dan pembimbing dengan jadwal mengajar dosen, selain itu perlu juga memperhatikan data lain seperti data ketersediaan ruangan ujian. Jadwal yang sudah dibuat akan diumumkan kepada mahasiswa peserta ujian dan dosen.
Berdasarkan analisis yang dilakukan terhadap TA FTI UKSW pada proses pendaftaran dan penjadwalan ujian didapatkan beberapa kekurangan. Pendaftaran ujian masih belum memiliki sistem yang dapat mempermudah staff bagian TA FTI UKSW untuk mengolah data, karena selama ini data tersimpan dalam bentuk file
excel,Sehingga pengolahan data akan menjadi lebih sulit dan rawan akan
kesalahan oleh karena itu diperlukan aplikasi yang dapat mempermudah pengolahan data. Kemudian untuk proses penjadwalan ujian masih dilakukan dengan mencocokan satu-persatu dari data yang ada, dengan pendaftar ujian tiap periode rata-rata 150 mahasiswa dan hanya ditangani oleh 3 orang staff, membuat proses penjadwalan menjadi lebih lama sekitar 2-3 hari untuk proses pengerjaannya, hal ini mengakibatkan terjadi keterlambatan pengumuman kepada peserta ujian. Perlu sebuah sistem yang dapat menghasilkan jadwal yang sesuai dengan kriteria yang ada di TA FTI UKSW secara cepat dan tepat.
3
web dan menggunakan framework Codeigniter (CI) sebagai kerangka kerjanya, untuk tampilan menggunakan Materialize CSS, untuk kalender menggunakan
library fullCalendar.js, dan yang terakhir database yang digunakan adalah
MySQL. CI dipilih karena CI tergolong sebagai framework yang ringan jadi tidak
memberikan beban berlebih pada server. CI juga sudah mendukung Model View
Controller (MVC), sehingga pengembangan aplikasi menjadi lebih terstruktur.
Framework CodeIgniter juga memiliki keunggulan dibanding
framework-framework lainnya seperti mudah dimodifikasi dan beradaptasi,
dokumentasi lengkap dan jelas, serta learning curve rendah [3].
Berdasarkan latar belakang yang telah dijelaskan, didapatkan rumusan masalah dari penelitian ini yaitu bagaimana membuat sistem yang dapat membantu bagian TA FTI UKSW dalam mengolah data peserta ujian, terutama pada bagian pendaftaran dan penjadwalan ujian. Fokus dari penelitian ini sendiri adalah menyelesaikan permaslahan yang dihadapi oleh bagian TA FTI UKSW, sehingga penelitian ini sendiri memiliki batasan dalam pembahasan. Batasan tersebut antara lain, proses penjadwalan tidak menggunakan algoritma tertentu, tidak membahas mengenai keamanan data dan aplikasi yang dikembangkan digunakan untuk menyelesaikan permasalahan yang terjadi di bagian TA FTI UKSW.
2. Kajian Pustaka
Penelitian mengenai sistem informasi Tugas Akhir (TA) telah dilakukan sebelumnya. Salah satunya adalah penelitian mengenai pengembangan sistem informasi kerja praktek dan tugas akhir yang diimplementasikan di fakultas sistem komputer. Penelitian ini membahas mengenai pengembangan sistem informasi yang dapat memudahkan staff administrasi kerja praktek dan tugas akhir dalam mengolah data. Hasil dari penelitian ini sistem informasi yang dikembangkan dapat bekerja dengan baik sehingga proses administrasi kerja praktek dan tugas akhir dapat dilakukan dengan lebih mudah [4].
Penelitian kedua adalah penelitian yang membahas mengenai penjadwalan. Penelitian ini membahas mengenai penyelesaian masalah penjadwalan dengan menerapan Constraint Satisfaction Problem sebagai pendekatan solusi. Hasil dari penelitian ini menujukan bahwa hasil dari jadwal yang dibuat dapat digunakan untuk jadwal jaga staff laboratorium [5].
Penelitian ketiga adalah penelitian mengenai pengembangan sistem penjadwalan yang digunakan untuk menjadwalkan ujian pascasarjana di Universitas Diponegoro. Penelitian ini memiliki tujuan untuk mempermudah pengolahan data sehingga lebih efisien. Hasil dari penelitian ini adalah sistem yang diimplementasikan dapat membantu pekerjaan dari staff yang memiliki tugas untuk membuat jadwal ujian [6].
4 lebih optimal.
Web application adalah software yang dijalankan melalaui web server. Tidak
seperti aplikasi desktop yang dapat dijalankan secara langsung melalui sistem operasi, web application hanya bisa diakses melalui web browser. Web
application ini meiliki beberapa keuntungan dibandingkan dengan aplikasi
desktop, yaitu dia bisa dijalan kan dimapun tidak peduli apapun sistem operasi
yang menjalankannya, asalkan terdapat web browser aplikasi ini dapat berjalan dengan baik [7].
PHP pertama kali dibuat oleh Rasmus Lerdorf pada tahun 1995. Pada saat tersebut PHP adalah sekumpulan script yang digunakan untuk mengulah data dari
form dari suatu web. Berbeda dengan javascript yang eksekusinya dilakukan di
browser (client) PHP dijalankan di dalam server. Karena berjalan di server maka
PHP biasanya digunakan sebagai back-end untuk mengakses data yang ada dalam
database seperti MySQL, Oracle, dan lain sebgainya [8].
MySQL adalah sebuah implementasi dari sistem manajemen basis data
relasional (RDBMS) yang didistribusikan secara gratis dibawah lisensi GPL
(General Public License). Setiap pengguna dapat secara bebas menggunakan
MySQL, namun dengan batasan perangkat lunak tersebut tidak boleh dijadikan produk turunan yang bersifat komersial. MySQL sebenarnya merupakan turunan salah satu konsep utama dalam basis data yang telah ada sebelumnya;
SQL(Structured Query Language). SQL adalah sebuah konsep pengoperasian
basis data, terutama untuk pemilihan atau seleksi dan pemasukan data, yang memungkinkan pengoperasian data dikerjakan dengan mudah secara otomatis [9].
Framework dapat diartikan sebagai alat yang digunakan untuk membantu
dan memudahkan dalam pembuatan aplikasi dalam konteks ini adalah aplikasi
web. Framework juga dapat didefinisikan sebagai kumpulan script (terutama class
dan function) yang dapat membantu developer dalam menangani berbagai masalah
dalam pemrograman seperti koneksi ke database, pemanggilan variable dan fungsi-fungsi lainnya sehingga developer dapat lebih fokus dan lebih cepat membangun aplikasi [10]. Sebuah framework umumnya telah menyertakan perintah-perintah siap pakai yang dibutuhkan dalam membuat suatu aplikasi, namun pihak developer tetap harus menulis kode sendiri dan harus menyesuaikan dengan lingkungan framework yang digunakan.
CodeIgniter (CI) adalah salah satu framework PHP yang tangguh dan popular. CodeIgniter tergolong framework dengan ukuran kecil dan cukup mudah dikuasai. CI juga datang dengan manual yang tergolong lengkap. CodeIgniter merupakan aplikasi sumber terbuka yang berupa framework PHP dengan model
MVC (Model, View, Controller) untuk membangun website dinamis dengan
menggunakan PHP. CodeIgniter memudahkan developer untuk membuat aplikasi
5
3. Metode dan Perancangan Sistem
Penelitian ini dilakukan dan diselesaikan melaui 5 tahapan penelitian yaitu : 1) Analisis Kebutuhan dan pengumpulan data. 2) Perancangan sistem. 3) Perancangan aplikasi / program. 4) Implementasi dan pengujian sistem serta analisis hasil pengujian. 5) Penulisan laporan hasil penelitian [12]. Tahapan-tahapan yang dilakukan dalam penelitian ini dapat dilihat pada Gambar 1.
Gambar 1. Tahapan Penelitian
Berdasarkan bagan pada Gambar 1 dapat dijelaskan bahwa tahapan penelitian yang dilakukan adalah sebagai berikut: Tahap pertama analisis kebutuhan dan pengumpulan data, dimana pihak pengembang mencari informasi mengenai kebutuhan dari pengguna yang berhubungan dengan pembuatan aplikasi. Pencarian informasi dilakukan dengan cara wawancara secara langsung kepada staff TA FTI UKSW. Berdasarkan hasil dari wawancara yang dilakukan didapatkan informasi bahwa saat ini masih belum ada sistem yang digunakan untuk mengelola data ujian. Selain itu sistem untuk melakukan penjadwalan ujian juga belum ada, sehingga proses pembuatan jadwal memakan waktu yang cukup lama sekitar 2-3 hari. Untuk tahap kedua, ketiga dan keempat dilakukan perancangan sistem pendaftaran dan penjadwalan ujian menggunakan metode pengembangan sistem Prototype. Untuk tahap kelima dilakukan penulisan laporan ilmiah dan artikel ilmiah.
Metode pengembangan sistem yang digunakan pada penelitian ini adalah metode Prototyping, karena selama proses pengembangan dilakukan komunikasi secara intensif antara pengembang dengan pengguna. Metode ini membantu proses pengembangan suatu perangkat lunak dengan cara membuat model dari perangkat lunak yang akan dibuat. Pengembagan perangkat lunak dengan metode ini dilakukan secara bertahap, yaitu dengan membuat prototype yang sederhana terlebih dahulu, setelah itu prototype akan dikembangkan dari waktu ke waktu hingga perangkat lunak selesai dikembangkan atau sudah sesuai dengan kebutuhan dari pengguna [13]. Tahap-tahap yang dilakukan pada metode prototype
6
Gambar 2 Metode Prototype [13]
Tahap pertada dalam metode Prototype adalah listen to customer, tahap ini dilakukan untuk mengetahui informasi mengenai kebutuhan pengguna yang perlu ada dalam sistem yang akan dikembangkan. Kemudian informasi yang sudah didapatkan dianalisa dan diterjemahkan ke dalam bentuk yang lebih mudah untuk diimplementasikan kedalam sistem.
Bedasarkan informasi yang telah diperoleh dari wawancara dengan staff TA FTI UKSW didapatkan beberapa informasi salah satunya adalah rule atau aturan yang harus dipenuhi untuk membuat jadwal ujian. Aturan itu antara lain : a. Semua peserta ujian harus di jadwalkan, b. dosen baik pembimbing maupun penguji harus hadir pada saat ujian berlangsung, c. terdapat ruang yang dapat digunakan. Berdasarkan rule yang sudah didapatkan dapat dibuat Flowchart untuk penjadwalan ujian seperti yang terlihat pada Gambar 3
START
Gambar 3 Flowchart Penjadwalan Ujian
7
data tersebut kosong maka proses akan dihentikan secara langsung. jika tidak proses akan berlanjut ke pemeriksaan jadwal ruangan. Pemeriksaan ini untuk melihat apakah ada jam tersebut ruangan sedang dipakai atau tidak. Proses pengecekan di lakukan dengan memeriksa tiap jam yang tersedia mulai dari jam 08:00 sampai pukul 16:00 dan tiap ujian dilakukan selama 90 menit. Jika terjadi bentrok antara waktu pelaksanaan dengan jadwal ruang maka akan dilakukan pengecekan pada jam berikutnya dengan menambah 1 jam. Jika tidak ada masalah maka dilakukan langkah selanjutnya yaitu pengecekan jadwal dosen baik pembimbing (1 & 2) juga penguji (1, 2 & cadangan), proses pengecekan dilakukan secara menyeluruh dari data peserta ujian hingga mendapat data yang sesuai. Kemudian data yang sesuai akan dimasukan ke jadwal ujian, jika tidak ditemukan maka akan mencari lagi di jam yang berbeda.
Analisis kebutuhan perangkat keras dan spesifikasi perangkat lunak yang digunakan dalam membangun jurnal elektronik ini yaitu: analisis perangkat keras yang akan digunakan adalah Processor AMD A10, 1.90 GHz, RAM 8 GB dan Hardisk 1 TB. Sedangkan perangkat lunak yang digunakan adalah sistem operasi Linux Ubuntu 16.04, Sublime Text 3, LAMP Server (Apache, MySQL, PHP), Web browser (dalam penelitian ini digunakan Opera) dan Rational Rose untuk membuat UML dan Microsoft Visio 2010 untuk pembuatan flowchart.
Perancangan sistem dalam penelitian ini dibuat dalam bentuk diagram UML. Diagram UML meliputi use case diagram, activity diagram dan class diagram. Berikut ini akan dijelaskan masing-masing diagram yang telah dibuat.
Gambar 4 Use Case Diagram
8
melihat jadwal ujian yang sudah selesai dibuat. Selanjutnya administrator (TA FTI UKSW), disini administrator memiliki hak akses paling tinggi, sehingga dapat melakukan pengelolaan data peserta, jadwal dosen, ruangan, dan membuat jadwal ujian. Aktor terakhir adalah progdi yang memiliki hak akses untuk menentukan penguji.
Gambar 5 Activity Diagram Pendaftaran Ujian
Gambar 5 merupakan activity diagram yang menggambarkan proses pendaftaran ujian yang dilakukan oleh mahasiswa. Aktivitas dimulai dari mahasiswa login kedalam sistem terlebih dahulu, jika user sudah terdaftar maka akan menampilan tampilan utama jika tidak maka akan dikembalikan ke tampilan
login. Kemudian user masuk ke menu daftar ujian dan mengklik tombol Daftar,
maka secara otomatis aplikasi akan mengambil data dari user kemudian menyimpannya kedalam data peserta ujian.
Gambar 6 Activity Diagram Validasi Pendaftaran
9
menampilkan data pendaftar ujian yang sudah masuk, jika user memilih salah satu data maka akan ditampilkan daftar persyaratan yang harus dikumpulkan. Selanjutnya user memasukan data persyaratan, jika sudah klik simpan maka data akan disimpan dalan sistem.
Gambar 7 Activity Diagram Penentuan Penguji
Gambar 7 merupakan activity diagram untuk mententukan dosen penguji yang dilakukan oleh progdi. Aktivitas dimulai dengan login ke aplikasi yang kemudian di verifikasi oleh sistem. Kemudian aplikasi akan menampilkan data peserta ujian yang sudah tervalidasi sebelumnya. Penentuan penguji dilakukan dengan memilih salah satu data, kemudian aplikasi akan memunculkan form untuk memasukan nama penguji yang sesuai. Setelah selesai sistem akan menyimpan perubahan yang sudah dilakukan.
Gambar 8 Activity Diagram Penjadwalan Ujain
10
berhasil maka akan memunculkan tampilan utama aplikasi. Administrator
selanjunya memilih menu penjadwalan ujian. Kemudian administrator menekan tombol generate, secara otomatis sistem akan membuat jadwal ujian. Jadwal ujian yang sudah di generate akan di tampilkan ke halaman aplikasi.
Gambar 9 Class Diagram
Gambar 9 merupakan penggambaran dari class-class yang ada di dalam aplikasi yang akan dikembangkan. Berdasarkan pada Gambar 9 terdapat 2 jenis
class yang digunakan yaitu class model dan class controller. Class model
digunakan untuk melakukan komunikasi antara aplikasi dengan database,
sedangkan class controller digunakan untuk mengolah data dari model dan menampilkannya pada user interface. Class model dalam aplikasi ini memiliki 5
class yaitu : ModelUjian, ModelJadwalMengajar, ModelJadwalRuang,
ModelJadwalDosen dan ModelJadwalUjian. Untuk class controller terdiri dari 6
class yaitu controller_JadwalRuang, controller_JadwalKuliah,
controller_JadwalUJian, controller_ujian_mhs, controller_ujian_TA dan controller_ujian_progdi. Class-class tersebut mengikuti struktur dari Codeigniter
(CI) yang menerapkan MVC (Model View Control), untuk bagian view tidak
dimasukan kedalam class diagram karena view disini tidak memiliki class dan hanya berisi tag HTML.
4. Hasil Implementasi dan Pembahasan
User yang digunakan ada tiga yaitu administrator (bagian TA), mahasiswa
dan progdi (Program Studi) dengan hak akses yang berbeda. Administrator dapat melakukan validasi pendaftaran dan pembuatan jadwal ujian. Mahasiswa hanya dapat mendaftar dan progdi dapat menentukan penguji.
11
pada jurnal ini. Data yang sudah disimpan dapat dilihat oleh administrator atau Bagian TA FTI UKSW seperti pada Gambar 11.
Gambar 10 Pendaftaran Ujian
Gambar 11 Halaman List Calon Peserta Ujian
Gambar 11 merupakan halaman yang menampilkan daftar dari calon peserta ujian yang sudah mendaftar. Daftar didunakan untuk melakukan validasi pendaftaran, jika pendaftar sudah melakukan verifikasi maka kolom status akan diisi valid, jika tidak akan berisi invalid.
Gambar 12 FormVerifikasi Pendaftaran Ujian
12
Gambar 13 Form Penentuan Penguji
Gambar 13 merupakan tampilan dari form penentuan penguji bagi tiap peserta ujian. Penguji sendiri terdiri dari tiga orang yaitu penguji 1, penguji 2 dan penguji cadangan. Untuk penguji cadangan bersifat optional, bisa diisi atau juga boleh dikosongkan.
Gambar 14 Jadwal Mengajar Dosen
Gambar 14 merupakan tampilan dari Jadwal mengajar Dosen, data yang ditampilkan disajikan mirip dengan tampilan google calendar menggunakan
library javascript fullcalendar.js. Jadwal yang ditampilkan sesuai dengan jadwal
dosen yang dipilih pada bagian combo box diatasnya. Kode Program 1 Memasukan Data ke Kalender
Kode Program 1 merupakan script yang digunakan untuk memasukan jadwal ke dalam kalender. Variabel dataUrl pada baris 1merupakan alamat dari controller
untuk mengambil data. Alamat url memiliki tambahan variable dengan nama data yang berisi nip dari dosen yang dipilih, sehingga data yang dikembalikan oleh
controller sesuai dengan data yang diminta. Sedangakan pada baris 2 adalah fungsi
dari fullcaledar untuk memasukan event ke dalam kalender.
13
Gambar 15 FormTambah Jadwal Mengajar
Gambar 16 Tambah Jadwal Mengajar dari File Excel
Terdapat dua buah cara yang dapat dilakukan untuk memasukan jadwal mengajar dosen. Cara pertama yaitu memasukan jadwal satu-persatu melalui form
seperti pada Gambar 15. Cara yang kedua adalah dengan mengimport data dari file
excel (.xls,xlsx) seperti pada Gambar 16.
Gambar 17 Halaman Pengelolaan Ruang
Proses pengelolaan ruang memiliki tampilan yang sama dengan pengelolaan jadwal mengajar dosen seperti yang ditunjukan pada Gambar 17. Pengelolaan ruangan terdiri dari dua buah fungsi utama yaitu tambah ruangan dan tambah jadwal ruangan.
14
Gambar 19 merupakan form untuk menambahkan jadwal penggunaan ruangan. Data penggunaan ruang berisikan nama kegiatan, ruangan yang dipakai, dan jadwal mulai penggunaan dan akhir baik jam maupun tanggal pemakaian. Kemudian data tersebut akan ditampilkan seperti yang terlihat pada Gambar 17.
Gambar 20 Halaman Jadwal UJian
Gambar 20 merupakan tampilan dari halaman penjadwalan ujian. Proses penjadwalan dilakukan secara otomatis atau dibuat oleh aplikasi dengan cara menekan tombol Generate Jadwal, sehingga TA FTI UKSW tidak perlu lagi memeriksa dan mencocokan jadwal dosen dan ruangan satu-persatu. Kemudain jadwal yang sudah dibuat oleh aplikasi akan ditampilkan dalam kalender di bawahnya.
Kode Program 2 Perulangan Mengambil Data Peserta
Perulangan yang diakukan pada Kode Program 2 dilakukan untuk memastikan semua mahasiswa peserta ujian dijadwalkan. Variable $dow merupakan representasi dari hari dalam minggu, dengan asumsi bahwa hari minggu adalah 0 dan sabtu adalah 6. Setiap satu perulangan berlangsung akan dilihat apakah sesuai dengan kondisi, jika dow<=5 maka dia akan ditambah 1, jika tidak maka nilai dow dijadikan 0. Nilai dow ini digunakan untuk menentukan tanggal selanjutnya jika dow sama dengan 5 maka hari akan bertambah 3, jika tidak hari akan bertambah 1. Hal ini dilakukan agar hari ujian dimulai hari senin dan berakhir pada hari jumat.
1.while ($dataPeserta != null) { 2. if ($dow<=5) {$dow++;} 3. else{$dow=0;}
4. if ($dow==5){$day=$day+3;} 5. else { $day++;}
15 Kode Program 3 Perulangan Mengambil Data Ruang
Kode Program 3 merupakan script untuk mengambil semua data ruangan yang tersedia. Salah satu data yang diambil adalah jadwal penggunaan ruang dan disimpan kedalam variable $jdw.
Kode Program 4 Membuat Perkiraan Waktu Ujian
Kode Program 4 merupakan script yang digunakan untuk membangkitkan kemungkinan waktu ujian. Perulangan pada baris 3 digunakan untuk memberi batas waktu, dengan asumsi ujian dimulai jam 08:00 sampai jam 16:00, jika waktu ujian adalah 90 menit maka kemungkinan ujian terakhir dilakukan adalah pada pukul 14:30. Waktu mulai ujian di inisialisasi sebagai $j_start dan waktu selesai adalah $j_end, dimana $j_end = $j_start + 90 min. Kemudian variable $buz merupakan penanda kesalahan yang terjadi, jika tidak terjadi kesalahan ($buz=0) maka waktu akan bertambah 90 menit ke jadwal selanjutnya, jika tidak maka waktu hanya bertambah 60 min. Artinya pada proses ini akan memeriksa tiap jam hingga didapat jadwal yang sesuai.
Kode Program 5 Untuk Memeriksa Data Peserta Ujian
1.$idx = 0;
2.$jadwalDosen = array();
3.while ($idx < count($dataPeserta)) { 4. if (isset($dataPeserta[$idx])) { 5. $pemb1 =
$this->cekDosen($dataPeserta[$idx]->pemb_1,$dow,$tgl,$j_start,$j_end); 6. if ($pemb1==0){
7. $temp = $this->setJadwalDosen(); 8. array_push($jadwalDosen, $temp); 9. $pemb2 =
$this->cekDosen($dataPeserta[$idx]->pemb_2,$dow,$tgl,$j_start,$j_end); 10. if ($pemb2==0){
11. $temp = $this->setJadwalDosen(); 12. array_push($jadwalDosen, $temp); 13. $peng1 =
$this->cekDosen($dataPeserta[$idx]->peng_1,$dow,$tgl,$j_start,$j_end);
14. if ($peng1==0){
15. $temp = $this->setJadwalDosen(); 16. array_push($jadwalDosen, $temp); 17. $peng2 =
$this->cekDosen($dataPeserta[$idx]->peng_2,$dow,$tgl,$j_start,$j_end);
1.foreach ($listRuang as $ruang) {
2. $jdw = $this->getJadwalRuang($ruang->id_ruang,$tgl); 3. ....
4.}
1.$c = strtotime("08:00"); 2.$j = date("H:i",$c);
3.while ($j <= date("H:i",strtotime("14:30")) ) { 4. $buz=0;
5. $j_start = $j;
16
Kode Program 5 digunakan untuk memeriksa jadwal dosen, agar dapat hadir pada saat ujian. Proses dimulai dengan memanggil satu-persatu semua data peserta ujian dan memeriksa tiap dosen yang ada baik penmbimbing 1,2 maupun penguji 1,2 dan cadangan. Jika pada saat pengecekan terjadi bentrok jadwal anta dosen dengan waktu ujian maka proses akan berlanjut ke peserta berikutnya, hingga mendapat data yang sesuai. Setiap data jadwal akan ditambahkan ke jadwal tiap dosen yang hadir pada saat ujian agar tidak terjadi bentrok dengan jadwal lain. Data jadwal juga di gunakan untuk memperbaharui data ujian.
Kode Program 6 Untuk Memeriksa Jadwal Dosen
Kode Program 6 merupakan bagian dari Kode Program yang digunakan untuk memriksa apakah jadwal dosen pada saat itu kosong. Baris 5 dan 6
18. if ($peng2==0){
19. $temp = $this->setJadwalDosen(); 20. array_push($jadwalDosen, $temp); 21. $peng3 =
$this->cekDosen($dataPeserta[$idx]->peng_c,$dow,$tgl,$j_start,$j_end); 22. if ($peng3==0){
23. $temp = $this->setJadwalDosen(); 24. array_push($jadwalDosen, $temp); 25. $jdwUjian = array(
26. 'waktu' => $j_start."-".$j_end, 27. 'tanggal' => $tgl,
28. 'tempat' => $ruang->nama_ruang 29. );
30. $this->db->insert_batch('tb_jadwal_dosen', $jadwalDosen); 31.
$this->ModelJadwal->saveJadwalUJian($jdwUjian,$dataPeserta[$idx]->id); 32.
33. unset($dataPeserta[$idx]);
34. $dataPeserta=array_values($dataPeserta);
35. break;
5. $data1 = $this->ModelJadwal->getJadwalMengajar($nip,$dow); 6. $data2 = $this->ModelJadwal->getJadwalDosen($nip,$tgl); 7.
8. $data = array_merge($data1,$data2); 9.
10. foreach ($data as $key) {
17
digunakan untuk mengambil jadwal dosen baik megajar ataupun jadwal lain. Proses pencocokan dilakukan dengan membandingkan jadwal dosen dengan waktu yang dibangkitkan sebagai perkiraan waktu ujian. Jika data terjadi bentrok antara jadwal dosen dengan waktu ujian maka nilai pinalti akan bertambah jika tidak nilai pinalti akan tetap. Nilai pinalti sendiri di representasikan pada variabel $res.
Pengujian aplikasi dilakukan dengan menguji fungsi-fungsi dari aplikasi yang telah dibuat untuk mencari kesalahan/bug pada sistem. Pengujian aplikasi dilakukan agar sistem yang dibuat berjalan sesuai dengan yang diharapkan dan dapat memenuhi kebutuhan pengguna. Pengujian aplikasi ini menggunakan dua teknik pengujian yaitu pengujian alpha dan pengujian beta.
Pengujian alpha menggunakan metode blackbox yaitu pengujian fungsi-fungsi aplikasi secara langsung tanpa memperhatikan alur eksekusi program. Pengujian ini dilakukan dengan memperhatikan apakah fungsi telah berjalan sesuai rancangan dan sesuai yang diharapkan. Tabel 1 adalah hasil pengujian dari aplikasi yang telah dilakukan.
Tabel 1 Hasil Pengujian Blackbox
Fungsi yang diuji Kondisi Output yang diharapkan
Output yang dihasilkan sistem
Status Pengujian
Login Username dan password
benar
Pendaftaran Ujian Click Button Daftar Sukses tambah data Sukses tambah data Valid
Menampilkan data pendaftar
Membuka halaman ujian oleh KPTA
Sukses tampilkan data Sukses tampilkan data
Valid
Validasi Pendaftaran Mengisi Checklist yang ada di form
Sukses ubah data Sukses ubah data Valid
Menampilkan data
Penentuan Penguji Memilih Penguji Pada tiap peserta
Menambah data ruang Mamasukan nama Raungan Sukses tambah Data ruang
Generate Jadwal Ujian Memasukan tanggal mulai Sukses mengenerate Jadwal
18
bagian TA FTI UKSW didapatkan beberapa hal. Menurut user, aplikasi yang dikembangkan mudah untuk digunakan dan sesuai dengan kebutuhan dari user.
Tampilan dari aplikasi juga tidak terlalu rumit dan mudah dipahami. Kemudian pengelolaan data pendaftaran ujian juga menjadi lebih mudah. Terakhir dengan adanya fitur penjadwalan otomatis, proses penjadwalkan ujian menjadi lebih cepat, dari yang biasanya membutuhkan waktu antara 2-3 hari dengan sistem ini hanya diperlukan waktu kurang lebih 1-2 menit saja, fitur ini sangat membantu bagian TA FTI UKSW. Berdasarkan hasil tersebut dapat disimpulkan bahwa aplikasi yang dihasilkan dapat memenuhi kebutuhan dan membantu bagian TA FTI UKSW pada proses pengolahan data peserta ujian.
5. Simpulan
Berdasarkan penelitian yang telah dilakukan maka dapat disimpulkan bahwa dengan menggunakan otomatisasi sistem dapat mempercepat dan mempermudah kerja bagian TA FTI UKSW khususnya dalam mengolah data peserta ujian, mulai dari pendaftaran hingga pengumuman jadwal ujian. Sistem juga dapat mempermudah bagian TA FTI UKSW dalam pengolahan data saat pembuatan Jadwal ujian. Selain itu penggunaan framework CodeIgniter sangat bermanfaat dalam pengembangan sistem dengan menggukan arsitektur Model View Controller
(MVC), karena proses pembuatan sistem menjadi lebih cepat.
Hasil dari pengujian juga menunjukan bahwa dengan adanya otomatisasi sistem pendaftaran dan penjadwalan dapat meningkatkan kinerja dari bagian TA FTI UKSW, terutama pada proses pembuatan jadwal ujian. Fitur pembuatan jadwal ujian yang ada dalam sistem dapat mempercepat pekerjaan Bagian TA FTI UKSW, dari yang sebelumnya 2-3 hari menjadi 1-2 menit.
6. Pustaka
[1] http://ftiuksw.org/gedung-fti, diakses tanggal 29 Juni 2016.
[2] Putra, Ferdian Sukarno, Purnama, Bambang Eka, Wardati, Indah Uly . 2013.
Pembangunan Sistem Informasi Pendaftaran Mahasiswa Baru Pada
Universitas Terbuka Pacitan, Indonesian Journal on Networking and
Security.
[3] Daqiqil, Ibnu. 2011. Framework CodeIgniter Sebuah Panduan dan Best
Practice.
[4] Kusumaningrum, Karlina, Fatchur Rochim, Adian & Kridalukmana, Rinta. 2013. Sistem Informasi Kerja Praktek dan Tugas Akhir Program Studi
Sistem Komputer, Jurnal Teknologi dan Sistem Komputer.
[5] Gunawan, Chandra Ari, & Toba, Hapnes. 2016. Pembangkitan Solusi Penjadwalan Berprioritas Melalui Penerapan Constraint Satisfaction Problem (Studi Kasus: Laboratorium Fakultas Teknologi Informasi
Universitas XXX). Jurnal Teknik Informatika dan Sistem Informasi.
[6] Setyani, Rizka Ella & Endah, Sukmawati Nur. 2014. Sistem Penjadwalan
Ujian Doktor pada Pascasarjana Universitas Diponegoro. Jurnal
19
[7] techterms.com,2014, Web Application, available :
http://techterms.com/definition/web_application, diakses pada 26 Maret
2016
[8] Kadir, Abdul, 2003, Pemrograman Web Mencakup: HTML, CSS, Javascript,
& PHP, Yogyakarta: Penerbit Andi
[9] Saputra, Agus, 2010, Step By Step Membangun Aplikasi dengan PHP dan
MySQL, Jakarta : elex media komputindo
[10] Isaknudin, Muhammad Surya. 2009. Apa dan mengapa Harus Framework, http://www.kuliah-informatika.com/2009/10/framework -apa-dan-mengapa-harus.html. Diakses tanggal 5 Januari 2015.
[11] Sofwan, Akhmad. 2007. Belajar PHP dengan Framework CodeIgniter. Ilmu Komputer,
http://mcd.bis.telkomuniversity.ac.id/file/CodeIgniter/belajar-php-dengan-fr amework-code-igniter.pdf. Diakses tanggal 1 Maret 2016.
[12] Hasibuan, Zainal A. 2007. Metodologi Penelitian Pada Bidang Ilmu Komputer dan Teknologi Informasi : Konsep, Teknik, dan Aplikasi. Jakarta : Ilmu Komputer Univesitas Indonesia.