OPTIMALISASI PENYUSUNAN JADWAL KULIAH DENGAN FILTERISASI MENGGUNAKAN SQL (Studi kasus: Penjadwalan Mata Kuliah di UNISMA BEKASI) MALIKUS SUMADYO Jurusan Teknik Komputer Unisma 45 Bekasi ABSTRACT Scheduling courses in general is an activity of the preparation of schedule of activities with several constraints. Because the preparation of the schedule will involve lecture time, class room and the lecturers, into three main elementsis a constraint that must be resolved. If there are two courses followed by the same number of students, there will be a conflict if both courses are scheduled simultaneously. Scheduling must determine that each course is placed at a certain time period every week, scheduling the courses must also calculate other restrictions that prevent conflict situations among subjects. Two subjects considered having a conflict if the implementation is same and involve the same faculty, or the same room, or at least involve a number of students is same. The above problem can be solved by uniting all the schedules in a database table that has relationships with several others, then when the inclusion of a constraint is filtering to avoid conflict on these constraints. This is also applicable to the next constraint so that it can be determined candidate optimal solution in schedulling a class. Implementation of courses scheduling at the University of Islamic '45' (UNISMA) Bekasi use Relationship Data Base MySQL. SQL commands are arranged in PHP programming and deployed in Apache server.
Keywords: courses scheduling, MySQL, filtration I PENDAHULUAN 1.1 LatarBelakang Penjadwalan matakuliah secara umum adalah sebuah aktifitas penyusunan jadwal kegiatan dengan beberapa konstrain (kendala). Karena penyusunan jadwal akan melibatkan waktu perkuliahan, tempat (ruang kuliah), dan kesediaan dosen pengampu, maka ketiga unsur utama tersebut merupakan konstrain yang harus diselesaikan. Menurut Scharef (1999) masalah penjadwalan kuliah adalah penjadwalan sejumlah mata kuliah dimana untuk setiap mata kuliah diberikan sejumlah ruangan dan jadwal atau periode waktu penyelenggaraan. Jika ada dua mata kuliah diikuti oleh sejumlah mahasiswa yang sama, maka akan terjadi konflik jika kedua mata kuliah tersebut dijadwalkan bersamaan. Sedangkan, penjadwalan selain harus menentukan bahwa setiap mata kuliah diletakkan pada periode waktu tertentu setiap minggunya, penjadwalan mata kuliah juga harus menghitung batasan lain yang menghindarkan konflik situasi antar mata kuliah. Dua mata kuliah dianggap memiliki konflik apabila penyelenggaraannya bersamaan dan melibatkan dosen yang sama, atau ruangan yang sama, atau minimal melibatkan sejumlah mahasiswa yang sama.
11
Terdapat berbagai aspek yang berkaitan dalam penjadwalan mata kuliah yang harus dilibatkan dalam pertimbangan, diantaranya: 1.
Terdapat jadwal-jadwal dimana dosen yang bersangkutan tidak bisa mengajar baik karena sedang tugas rutin maupun karena sudah memiliki jadwal mengajar di jurusan lain.
2.
Terdapat jadwal-jadwal yang telah ditentukan oleh pihak laboratorium untuk kelas-kelas tertentu.
3.
Tidak boleh adanya jadwal kuliah yang beririsan dengan jadwal kuliah angkatan sebelumnya maupun sesudahnya, sehingga mahasiswa dapat mengambil mata kuliah angkatan sebelumnya maupun sesudahnya.
4.
Distribusi jadwal perkuliahan diharapkan dapat merata tiap harinya untuk setiap kelas. Di Universitas Islam ‘45’ (UNISMA) Bekasi, bagian yang menangani masalah administrasi
dan layanan akademik terpusat dalam satu direktorat yaitu Direktorat Administrasi Layanan Akademik (DALA), salah satu tugas yang dilakukan oleh direktorat ini adalah menyusun penjadwalan mata kuliah seluruh fakultas. Direktorat Administrasi Layanan Akademik (DALA) UNISMA Bekasi mempunyai prosedur pembuatan jadwal perkuliahan sebagai berikut: 1.
Petugas DALA memberikan form data mata kuliah dan dosen kepada setiap KAJUR (kepala jurusan)
2.
KAJUR mengisi form, kemudian menyerahkannya kembali form yang sudah isi kepada petugas DALA
3.
Petugas DALA melakukan penginputan jadwal perkuliahan dan membuat reportnya
4.
Report jadwal diberikan ke setiap pihak TU(tata usaha) Fakultas dan kemudian diberikan kesetiap dosen yang mengajar
5.
Report jadwal juga diberikan kepada mahasiswa pada saat pembagian KHS (Kartu Hasil Study) Terdapat kelemahan dalam prosedur yang diterapkan di DALA selama ini diantaranya adalah:
1.
Pihak DALA tidak dapat mengetahui apabila terjadi perubahan jadwal yang dilakukan tiap-tiap TU (tata usaha) fakultas
2.
Proses penginputan jadwal perkuliahan dan pembuatan reportnya lambat sehingga menimbulkan proses dan waktu yang tidak efisien
3.
Data sewaktu-waktu bisa saja hilang karena tidak tersimpan dalam sebuah database
4.
Pihak TU fakultas membuat sendiri sistem jadwal perkuliahan untuk kebutuhan fakultasnya masing-masing.
1.2 Identifikasi Masalah Penyusunan jadwal perkuliahan yang sementara ini dilakukan oleh Direktorat Administrasi Layanan Akademik dapat diidentifikasi sebagai berikut :
12
1)
Sistem informasi jadwal perkuliahan yang ada hanya bisa diakses oleh pihak Direktorat Administrasi Layanan Akademik (DALA) saja, sedangkan pihak fakultas hanya mendapatkan hasil print out dan membuat sendiri sistem informasi jadwal perkulihan untuk kepentingan fakultas
2)
Dengan sistem yang ada sering terjadi permasalahan pemakaian ruangan secara bersamaan pada dua mata kuliah atau lebih yang berbeda di waktu yang sama begitupun dengan dosen Oleh sebab itu perlu dioptimalisasi dengan penyusunan sistem sebagai berikut :
1)
Sistem Jadwal Perkuliahan di Direktorat Administrasi Layanan Akademik (DALA) Universitas Islam “45” Bekasi adalah sistem yang terpusat pengelolaannya dan dapat diakses oleh mahasiswa dosen dan karyawan se UNISMA?
2)
Sistem dengan penyajian informasi jadwal perkuliahan dari mulai mata kuliah, pemakaian ruangan dan dosen yang mengajar dapat diakses oleh pihak Direktorat Administrasi Layanan Akademik (DALA), semua tata usaha fakultas, kajur, dosen dan mahasiswa ?
3)
Sistem yang dapat mengatasi permasalahan terjadinya jadwal dua mata kuliah atau lebih yang bersamaan dalam satu ruang serta dosen yang mengajar dua mata kuliah atau lebih yang berbeda di waktu yang bersamaan ?
1.3 Perumusan Masalah Berdasarkan latar belakang masalah diatas maka permasalahan dalam penelitian ini adalah bagaimana menghasilkan jadwal mata kuliah di UNISMA Bekasi secara optimal yang menyangkut mata kuliah dan dosen pengajar secara keseluruhan serta ketersediaan ruang yang cukup dan sesuai dengan fasilitas untuk seluruh mata kuliah yang ada dengan tidak melanggar aturan yang telah ditentukan. 1.4 Pembatasan Masalah Dalam penelitian ini terdapat beberapa batasan masalah yaitu: 1.
Jadwal yang dibuat merupakan simulasi penjadwalan kuliah
2.
Setiap dosen bersedia mengajar kapan saja di ruangan manapun.
3.
Pemecahan permasalahan menggunakan filterisasi dengan SQL
4.
Kasus yang diteliti spesifik untuk prosedur yang diberlakukan di UNISMA.
1.5 Tujuan Penelitian Tujuan penelitian ini adalah untuk mendapatkan jadwal kuliah yang optimal dengan filterisasi menggunakan SQL.
13
II METODE PENELITIAN Langkah-langkah yang ditempuh dalam penelitian ini adalah sebagai berikut: 1.
Studi liteatur tentang Database SQL dan filterisasi
2.
Mengidentifikasi permasalahan yang dihadapi dalam penjadwalan mata kuliah
3.
Merepresentasikan penyelesaian masalah dengan merancang basis data relasional.
4.
Mengimplementasikan hasil penyelesaiannya dengan pemrograman sehingga tersusun sistem yang dapat mensimulasikan pembuatan jadwal mata kuliah III TINJAUAN PUSTAKA
3.1 SQL, MySQL dan Filterisasi Komponen SQL terdiri dari tiga bagian yaitu pendefinisian data (DDL), manipulasi data (DML) dan control data (DCL). DDL atau Data Definition Language adalah kegiatan yang meliputi pembentukan database, pembuatan tabel, pembuatan indeks, mengubah struktur tabel, menghapus tabel dan membuat domain. Domain adalah kemampuan database untuk membentuk type baru yang pada dasarnya mengacu pada tipe dasar. Sedangkan DML atau Data Manipulation Language adalah kegiatan operasi terhadap database seperti, input data, update data, delete data, dan seleksi data. DCL atau Data Control Language adalah kegiatan yang memberi otoritas konfirmasi penyimpanan database, menunda perubahan dan menghapus otoritas yang telah diberikan. Dalam modul ini DCL tidak dibahas. Bahasa SQL pada umumnya informasi tersimpan dalam tabel-tabel yang secara logik merupakan struktur dua dimensi terdiri dari baris (row atau record) dan kolom(column atau field). Kolom mewakili atribut table. Setiap item informasi ditempatkan sesuai dengan atribut yang tepat. Sedangkan baris mewakili satu record / rekaman informasi yang dipisahkan sesuai kolom yang telah ditentukan. Tabel-tabel yang telah dicreate, terkumpul dalam suatu kumpulan yang disebut Database. MySQL adalah Relational Database Management System (RDBMS) yang didistribusikan secara gratis dibawah lisensi GPL (General Public License). Dimana setiap orang bebas untuk menggunakan MySQL, namun tidak boleh dijadikan produk turunan yang bersifat komersial. MySQL sebenarnya merupakan turunan salah satu konsep utama dalam database sejak lama, yaitu SQL (Structured Query Language). SQL adalah sebuah konsep pengoperasian database, terutama untuk pemilihan atau seleksi dan pemasukan data, yang memungkinkan pengoperasian data dikerjakan dengan mudah secara otomatis. Keandalan suatu sistem database (DBMS) dapat diketahui dari cara
14
kerja optimizer-nya dalam melakukan proses perintah-perintah SQL, yang dibuat oleh user maupun program-program aplikasinya. 3.1.1 Filterisasi dengan SQL Dengan menggunakan SQL, data dalam tabel pada database dapat difilter sesuai dengan kebutuhan atau permintaan pengguna. Dalam penyusunan jadwal kuliah, jika suatu ruangan pada hari dan jam tertentu sudah tempati oleh dosen dengan mata kuliah tertentu, maka mestinya ruang pada waktu tersebut tidak bisa diisi lagi oleh dosen dengan mata kuliah yang lain. Untuk itu perlu data pada jadwal difilter untuk ruangan pada waktu tertentu yang sudah terisi agar tidak aktif (disable) dalam pengisian jadwal berikutnya, sehingga tidak terjadi bentrok (konflik). Karena jumlah konstrain yang dijadikan kendala tidak terlalu banyak, yaitu mata kuliah, ruang, dan dosen maka filterisasi pada SQL ini menjadi lebih sederhana, karena hanya mengandalkan akurasi input dengan memastikan bahwa input yang dimasukkan tidak konflik dengan kegiatan lain. Dan oleh karena sistem yang dibangun ini adalah sistem yang disusun untuk membuat jadwal matakuliah, ruang dan dosen maka disingkat menjadi SIJAMRUD. 3.1.2 Professional Home Page (PHP) PHP adalah bahasa pemrograman script yang paling banyak dipakai saat ini. PHP banyak dipakai untuk memrogram situs web dinamis, walaupun tidak tertutup kemungkinan digunakan untuk pemakaian lain. PHP dapat digunakan bersama dengan HTML sehingga memudahkan
dalam
membangun aplikasi web dengan cepat. PHP juga dapat digunakan untuk meng-update database, menciptakan database dan mengerjakan perhitungan matematika yang kompleks. Selain itu PHP juga dapat digunakan untuk menghapus file-file secara acak di suatu sistem komputer, tergantung pada level keamanan yang menjalankan PHP. PHP dapat membuat koneksi jaringan internet dan melayani koneksi tersebut. Karena kehandalannya, cepat, kuat, stabil dan mudah berinteraksi dengan berbagai aplikasi pendukung lainnya seperti MySQL, PostgressSQL, Interbase, ODBC, mSQL, Oracle, Sybase maka PHP menjadi pilihan untuk digunakan dalam implementasi penyusunan jadwal.mata kuliah ini. 3.1.3 Unified Modelling Language (UML) UML adalah sebuah "bahasa" yang telah menjadi standar dalam industri untuk visualisasi, merancang dan mendokumentasikan sistem piranti lunak. UML menawarkan sebuah standar untuk merancang model sebuah sistem. Dengan menggunakan UML kita dapat membuat model untuk semua jenis aplikasi piranti lunak, dimana aplikasi tersebut dapat berjalan pada piranti keras, sistem operasi dan jaringan apapun,
15
serta ditulis dalam bahasa pemrograman apapun. Tetapi karena UML juga menggunakan class dan operation dalam konsep dasarnya, maka ia lebih cocok untuk penulisan piranti lunak dalam bahasabahasa berorientasi objek. Seperti bahasa-bahasa lainnya, UML mendefinisikan notasi dan syntax/semantik. Notasi UML merupakan sekumpulan bentuk khusus untuk menggambarkan berbagai diagram piranti lunak. Terdapat beberapa diagram dalam UML, namun hanya satu diagram yang dugunakan dalam penulisan ini yaitu : 3.1.4 Use Case Diagram Use case diagram menggambarkan fungsionalitas yang diharapkan dari sebuah sistem. Yang ditekankan adalah “apa” yang diperbuat sistem, dan bukan “bagaimana”. Sebuah use case merepresentasikan sebuah interaksi antara aktor dengan sistem. Use case merupakan sebuah pekerjaan tertentu, misalnya login ke sistem, meng-create sebuah daftar belanja, dan sebagainya. Seorang/sebuah aktor adalah sebuah entitas manusia atau mesin yang berinteraksi dengan sistem untuk melakukan pekerjaan-pekerjaan tertentu.
IV PERANCANGAN BASIS DATA Langkah–langkah dalam perancangan database adalah menentukan entity, attribut pada setiap entity, menentukan primary key dan foreign key untuk mengetahui relasi antar entity serta normalisasi untuk mengurangi redundansi database. Dalam perancangan sistem jadwal perkuliahan entity yang dibutuhkan adalah: a.
dosen, berfungsi untuk menyimpan data dosen yang mengajar
b.
mk, berfungsi untuk menyimpan data mata kuliah
c.
waktu, berfungsi untuk menyimpan data jam dan hari yang berlaku dalam pelaksanaan perkuliahan di UNISMA
d.
fakultas, berfungsi untuk menyimpan data fakultas yang ada di UNISMA
e.
prodi, berfungsi untuk menyimpan data program study yang ada di UNISMA
f.
kajur, berfungsi untuk menyimpan data kepala jurusan dari setiap jurusan yang ada di UNISMA
g.
ruang, berfungsi untuk menyimpan data ruang kuliah yang dipergunakan dalam pelaksanaan perkuliahan
h.
jadwal, berfungsi untuk menyimpan data jadwal perkuliahan yang telah dibuat oleh petugas DALA
16
1)
Bentuk Normal Pertama (1NF) Bentuk normal pertama dikenakan pada entity yang belum normal (Unnormalized Form).
Bentuk tidak normal merupakan kumpulan data yang tidak harus mengikuti suatu format tertentu, dapat saja data tersebut tidak lengkap atau terduplikasi, untuk selanjutnya dapat dilihat pad Tabel 1 dan 2. 2)
Bentuk Normal Kedua (2NF) Pada Tabel 3 terlihat ada enam entity yang memiliki kunci utama (entity yang bergaris
bawah), sehingga atribut-atribut yang lainnya mempunyai ketergantungan fungsional terhadapnya. Pada tabel diatas terlihat, ada enam entity yang memiliki kunci utama (atribut yang bercetak tebal), sehingga attribut-attribut yang lainnya mempunyai ketergantungan fungsional terhadapnya. Ternyata rancangan entity baru diatas masih belum benar, khususnya pada entity jadwal, karena adanya data yang berulang yaitu wkt_slsy dan ta. Kalau seandainya salah mengentrikan data wkt_slsy dan ta. Dapat mengakibatkan data tidak konsisten lagi. 3)
Bentuk Normal Ketiga (3NF) Suatu relasi dikatakan dalam bentuk normal ketiga jika:
a) Berada dalam bentuk normal kedua b) Setiap attribut bukan kunci tidak memiliki ketergantungan transitif (dependensi transitif) terhadap kunci utama (primary key)
V PERANCANGAN DAN IMPLEMENTASI SISTEM 5.1 Perancangan Model Sistem Pada tahap perancangan sistem yang akan dikembangkan ini, penulis menguraikan ke dalam bentuk use case diagram dan activity diagram. 5.1.1.Use case diagram Diagram use case menggambarkan fungsionalitas yang diharapkan dari sebuah sistem. Yang ditekankan adalah ”apa” yang diperbuat sistem, dan bukan ”bagaimana”. Sebuah use case mempresentasikan sebuah interaksi antara aktor (pelaku) dan sistem (use case). Gambar 2 adalah use case diagram dari sistem informasi jadwal perkuliahan berbasis intranet di Direktorat Administrasi Layanan Akademik (DALA) UNISMA Bekasi yang melibatkan lima aktor yaitu petugas DALA, petugas tata usaha fakultas, kajur, dosen dan mahasiswa.
17
Tabel 1 Data Jadwal Perkuliahan tidak Normal Id_wkt 1
Jam 07.30
20 46
09.10 18.10
Kd-dosen Tkk0079 Tkk0208 Tke0324 Ekm0046 Tks0122
Wkt_slsy 09.10 09.10 10.50 19.50 19.50
Nm_dosen Malikus rahmadya H.sugeng Maman Eko darma
Hari Senin
Kd_ruang Lab.software Lab.sipil F104 F102 F107
Selasa Rabu
Pangkat Dosen
Status DTY
Pend_ahir S1 S1 S2 S2 S2
Kapasitas 40 30 30 40 30 Alamat Bekasi
Gedung F
Tlp 0815*** 0219** 0815*** 0815*** 0813***
Kd_mk Tk171 Tk146 Tm99 Tes24 Ts155
Nm_mk Teknik simulasi Firewall Dasar-dasar PLC Kewirausahaan Analisa struktur
Id_fak Ft
Nm_fak FT
Kd_mk Tk171 Tk146 Tm99 Tes24 Ts155
Nm_mk Teknik simulasi Firewall Dasar-dasar PLC Kewirausahaan Analisa struktur
Sks 2 2 3 2 3
Id_prodi Tkk Tkk Tkm Tkes Tks
semester 4 6 6 2 4
Ket_mk Genap
Nm_prodi Komputer D3 Komputer D3 Mesin D3 Elektro S1 Sipil S1
Ket -
ta 2009/2010
Sks 2 2 3 2 3
Ket_mk Genap Genap Genap Genap Genap
Tabel 2 Data Jadwal Perkuliahan Normal Pertama (1NF) Id_wkt 1 1 20 46 46 Kd-dosen Tkk0079 Tkk0208 Tke0324 Ekm0046 Tks0122
Jam 07.30 07.30 09.10 18.10 18.10
Wkt_slsy 09.10 09.10 10.50 19.50 19.50
Nm_dosen Malikus Rahmadya H.sugeng Maman Eko darma
Pangkat Dosen Dosen Dosen Dosen Dosen
Hari Senin Senin Selasa Rabu Rabu Status DTY DTY DTY DTY DTY
Kd_ruang Lab.software Lab.sipil F104 F102 F107 Pend_ahir S1 S1 S2 S2 S2
Kapasitas 40 30 30 40 30
Alamat Bekasi Bekasi Bekasi Bekasi Bekasi
Gedung F F F F F
Tlp 0815*** 0813** 0815*** 0815*** 0813***
Id_fak ft ft ft ft ft
18
Nm_fak FT FT FT FT FT
Id_prodi Tkk Tkk Tkm Tkes Tks
semester 4 6 6 2 4
Nm_prodi Komputer D3 Komputer D3 Mesin D3 Elektro S1 Sipil S1
Ket -
ta 2009/2010 2009/2010 2009/2010 2009/2010 2009/2010
Tabel 3 Data Jadwal Perkuliahan Normal Kedua (2NF) id_wkt 1 3 20 35 46
jam 07.30 09.10 09.10 09.10 18.10
hari Senin Senin Selasa Rabu Rabu
kd_ruang Lab.software Lab.sipil F104 F102 F107
kapasitas 40 30 30 40 30
kd_mk Tk171 Tk146 Tm99 Tes24 Ts155
Gedung F F F F F
nm_mk Teknik simulasi Firewall Dasar-dasar PLC Kewirausahaan Analisa struktur
sks 2 2 3 2 3
id_fak ft fai fe fkip fisip id_wkt
1 1 20 46 46
wkt_slsy
kd_ruang
09.10 09.10 10.50 19.50 19.50
Lab.software Lab.sipil F104 F102 F107
kd-dosen Tkk0079 Tkk0208 Tke0324 Ekm0046 Tks0122
nm_dosen Malikus Rahmadya H.sugeng Maman Eko darma
kd_mk
Tk171 Tk146 Tm99 Tes24 Ts155 Pangkat Dosen Dosen Dosen Dosen Dosen
kd-dosen Tkk0207 Tke2013 Tkk0635 Tkm3022 Tkm1102
Status DTY DTY DTY DTY DTY
id_fak Ft Ft Ft Ft Ft
pend_ahir S1 S1 S2 S2 S2
nm_fak FT FAI FE FKIP FISIP
id_prodi
Tkk Tkk Tkm Tkes Tks alamat Bekasi Bekasi Bekasi Bekasi Bekasi
tlp 0815*** 0813** 0815*** 0815*** 0813***
Ket -
semester 4 6 6 2 4
ket_mk Genap Genap Genap Genap Genap
id_prodi Tkk Tkes Ekm Tkm Tks
id_fak ft ft ft ft ft
nm_prodi Komputer D3 Elektro S1 Manajemen S1 Mesin D3 Sipil S1
id_fak Ft Ft Fe Ft Ft
ta 2009/2010 2009/2010 2009/2010 2009/2010 2009/2010
id_kajur 1 2 3 4 5
kd-dosen Tkk0207 Tke0144 Tkk0410 Tkm0272 Aip0026
id_prodi Tkk Tke Tkes Tkm Aip
Tabel Jadwal 3NF id* 1 2 4 8 9
id_ wkt** 1 1 20 46 46
wkt_slsy
kd_ruang**
09.10 09.10 10.50 19.50 19.50
Lab.software Lab.sipil F104 F102 F107
kd_ mk** Tk171 Tk146 Tm99 Tes24 Ts155
kddosen** Tkk0207 Tke2013 Tkk0635 Tkm3022 Tkm1102
id_ fak** ft ft ft ft ft
id_ prodi** Tkk Tkk Tkm Tkes Tks
ket
ta
-
2009/2010 2009/2010 2009/2010 2009/2010 2009/2010
Tabel Waktu id_wkt* 1 3 20 35 46
jam 07.30 09.10 09.10 09.10 18.10
hari Senin Senin Selasa Rabu Rabu
Tabel Ruang kapasitas 40 30 30 40 30
kd_ruang* Lab.software Lab.sipil F104 F102 F107
gedung F F F F F
Tabel Mata Kuliah kd_mk* Tk171 Tk146 Tm99 Tes24 Ts155
nm_mk Teknik simulasi Firewall Dasar-dasar PLC Kewirausahaan Analisa struktur
sks 2
semester 4
ket_mk Genap
id_fak** ft
2 3
6 6
Genap Genap
ft ft
2 3
2 4
Genap Genap
ft ft
status DTY DTY DTY DTY DTY
pend_ahir S1 S1 S2 S2 S2
Tabel Dosen kd_dosen* Tkk0079 Tkk0208 Tke0324 Ekm0046 Tks0122
nm_dosen Malikus Rahmadya H.sugeng Maman Eko darma
pangkat Dosen Dosen Dosen Dosen Dosen
20
alamat Bekasi Bekasi Bekasi Bekasi Bekasi
tlp 0815*** 0813** 0815*** 0815*** 0813***
Tabel Fakultas nm_fak FT FAI FE FKIP FISIP
id_fak* Ft Fai Fe Fkip Fisip
Tabel Prodi id_prodi* Tkk Tkes Ekm Tkm Tks
nm_prodi Komputer D3 Elektro S1 Manajemen S1 Mesin D3 Sipil S1
Tabel Kajur id_kajur* 1 2 3 4 5
kd_dosen ** Tkk0207 Tke0144 Tkk0410 Tkm0272 Aip0026
id_prodi ** Tkk Tke Tkes Tkm Aip
Keterangan : * primary key ** foreign key
21
waktu id_wkt * jam Hari
ruang kd_ruang * kapasitas gedung
1
1
jdwl id * m id_wkt ** wkt_slsy m kd_ruang ** kd_mk ** m kd_dosen ** id_fak ** id_prodi ** ket ta
Mk kd_mk * nm_mk Sks Semester ket_mk m id_fak **
1
m m m
1 1
dosen kd_dosen * nm_dosen pangkat status pend_ahir alamat tlp
fakultas id_fak * Nm_fak
1
1 1
m
kajur id_kajur * kd_dosen ** id_prodi **
1 1 1
Prodi id_prodi * nm_prodi id_fak **
m
Gambar 1 ERD Sistem Jadwal Perkuliahan 5.1.2. Activity diagram Diagram aktivitas (activity) digunakan untuk menggambarkan alir aktivitas yang terjadi dalam sebuah sistem, bagaimana masing-masing alir berawal, keputusan (decision) yang mungkin terjadi dan bagaimana aktivitas itu berakhir. Untuk menjelaskan aktivitas pada sistem jadwal perkuliahan ini penulis akan menggambarkannya dalam activity diagram yang terbagi menjadi tiga diagram diantaranya Activity diagram petugas DALA, Activity diagram tata usaha fakultas dan Activity diagram kajur,dosen & mahasiswa. Gambaran aktivitasnya dapat dilihat pada Gambar 3.
22
Sistem Jadwal Perkuliahan Petugas DALA
Kajur
Menyediakan form data mk & dosen
Menerima isian data mk & dosen yg telah diisi
Menerima masukan jadwal perkuliahan
Mahasiswa
<<extend> Menampilkan jadwal perkuliahan
Dosen
<<extend> Edit,hapus jadwal perkuliahan
TU Fakultas
Membuat report jadwal perkuliahan
Gambar 2 Use Case Diagram Sistem Informasi Jadwal Perkuliahan Berbasis Intranet
Gambar 3. Activity diagram Kajur, Dosen & Mahasiswa
23
5.2 Implementasi Sistem Dalam proses penginputan jadwal perkuliahan harus melalui dua tahapan form input jadwal perkuliahan. Tahap pertama harus menentukan fakultas, hari dan jam perkuliahan, gedung yang akan digunakan serta keterangan gabung atau tidak, lihat Gambar 4. Setelah tahap pertama selesai diisi maka akan masuk ke tahap yang kedua, harus mengisi ruang, mata kuliah, dosen, prodi dan keterangan. Pada saat penginputan di form yang kedua akan diketahui ruangan mana yang telah digunakan dan ruang mana yang belum digunakan pada hari dan jam yang telah ditentukan pada tahap sebelumnya, untuk ruangan yang telah digunakan untuk jadwal mata kuliah lain akan terlihat ter-disable yang menandakan bahwa ruangan tersebut sudah terisi dan tidak dapat dipilih lagi untuk jadwal perkuliahan di hari dan jam yang sama, lihat Gambar 5. Begitupun halnya dengan data dosen, lihat Gambar 6. Dengan demikian permasalahan terjadinya jadwal dua mata kuliah atau lebih dalam satu ruangan atau jadwal dua mata kuliah atau lebih yang diajar oleh satu dosen di waktu yang bersamaan dapat teratasi. Artinya tidak akan ada lagi permasalahan seperti yang telah dijelaskan, hasil dari input dapat dilihat pada Gambar 7.
Gambar 4 Form Pertama Input Jadwal Perkuliahan
24
Tampilan data ruang yang ter-disable (sudah terpakai) dan yang tidak ter-disable (belum terpakai)
Gambar 5 Form Kedua Input Jadwal Perkuliahan
Tampilan data dosen yang ter-disable (sudah mengajar) dan yang tidak ter-disable (belum
Gambar 6 Form Kedua Input Jadwal Perkuliahan
Gambar 7 Tampilan Hasil Penyusunan Jadwal
25
VI KESIMPULAN DAN SARAN 4.1 Kesimpulan 1. Dengan filterisasi menggunakan SQL pada saat input jadwal mata kuliah, konstrain mata kuliah, ruang, dan dosen dapat dipastikan tidak konflik atau bentrok karena setelah dilakukan filterisasi pada tabel yang bersangkutan, data dalam konstrain tersebut tidak aktif untuk menjadi pilihan 2. Penggunaan PHP dalam implementasi sistem, memungkinkan sistem untuk dikelola oleh Direktorat Administrasi dan Layanan Akademik dan diakses oleh Mahasiswa, Dosen dan Karyawan di Fakultas 3. Dengan filterisasi pula setiap program studi di seluruh UNISMA dapat mengakses per program studi per hari per angkatan, dan memungkinkan pula untuk meminta report jadwal mata kuliah secara lengkap dan spesifik. 4.2 Saran 1. Sangat perlu sekali disusun sebuah sistem lengkap berbasis web mengenai jadwal mata kuliah yang melibatkan ruang dan dosen yang dikelola oleh Direktorat Administrasi dan Layanan Akademik sebagai sistem administrator sehingga menjadi jadwal mata kuliah yang holistik dan lengkap mencakup seluruh fakultas dan program studi. 2. Perlu dikembangkan dalam konstrain yang lain seperti adanya kelas paralel dan kelas gabungan antar program studi.
DAFTAR PUSTAKA Kusumadewi, Sri dan Purnomo Hari, Penyelesaian Masalah Optimasi dengan Teknik-teknik Heuristik : Graha Ilmu, 2005. Sumadyo, Malikus, 2005, Modul Pemrograman Web. Riswansyah, 2005. Aplikasi Perencanaan Jadwal Perkuliahan Menggunakan Algoritma Genetika (Studi Kasus di Fakultas Teknologi Industri UII), Yogyakarta: Jurusan Teknik Informatika FTI – UII. Scharef, Andrea. 1999. A Survey of Automated Timetabling.
26