2.5 Analisis Proses Penjadwalan
3.3.1 Batasan – batasan constraints dalam Penjadwalan
Permasalahan yang muncul dalam penjadwalan kegiatan belajar mengajar dalam studi kasus ini adalah konflik yang terjadi antara guru, ruangan yang tersedia, dan jumlah
waktu yang dapat digunakan. Konflik yang terjadi pada guru antara lain terjadi ketika seorang guru mengajar yang berbeda dalam dua ruangan atau lebih yang berbeda
dalam suatu waktu tertentu, jumlah waktu mengajar seorang guru yang tidak dapat dialokasikan dengan tepat sesuai dengan jumlah waktu mengajar yang ditetapkan,
serta adanya guru yang tidak dapat mengajar pada waktu tertentu. Konflik pada tingkat mata pelajaran antara lain terjadi ketika suatu mata pelajaran memiliki jumlah
pertemuan berturut sebanyak lebih dari waktu yang telah ditetapkan dalam sehari, serta jumlah mata pelajaran yang tidak teralokasikan dengan tepat dalam seminggu.
Sedangkan pada kriteria waktu,yang harus diperhatikan adalah bagaimana menyusun jadwal sesuai dengan
slot waktu yang tersedia. Pada konflik waktu yang terjadi ketika tidak adanya waktu yang sesuai untuk seorang guru dikarenakan waktu tersebut sudah
digunakan oleh guru yang lain.
Oleh karena itu, dibutuhkan batasan-batasan constraints untuk mengatasi dan
menghindari masalah penjadwalan kegiatan belajar mengajar tersebut. Sehingga dalam proses penjadwalan sejumlah mata pelajaran serta guru pengampu dapat
dialokasikan kedalam slot waktu yang tersedia sesuai dengan constraints yang telah
ditentukan. Pada penjadwalan kegiatan belajar ini ada dua batasan yang digunakan dalam proses penjadwalan, antara lain:
a. Batasan keras hard constraints
Hard constraints dalam penjadwalan adalah batasan yang harus dipenuhi dan tidak boleh dilanggar dalam penyusunan sebuah jadwal kegiatan belajar mengajar. Berikut
adalah batasan-batasan keras yang digunakan dalam kasus penjadwalan ini antara lain: 1. Tidak adanya bentrok guru, yaitu seorang guru hanya dapat mengajar pada
satu ruangan dan waktu tertentu.
Universitas Sumatera Utara
2. Tidak adanya bentrok ruangan, yaitu sebuah ruangan hanya dapat digunakan untuk proses belajar mengajar untuk suatu mata pelajaran dan waktu tertentu.
3. Jumlah waktu mengajar untuk setiap guru yang telah ditentukan harus tepat dialokasikan dalam setiap minggunya. Misalnya guru A mendapat jam
mengajar 23 jam dalam seminggu. Maka 23 jam waktu mengajar tersebut harus dialokasikan dengan tepat dalam seminggu;
4. Jumlah mata pelajaran untuk setiap kelas telah ditentukan dan harus tepat dialokasikan dalam setiap minggunya. Misalnya mata pelajaran matematika
untuk kelas 1A memiliki jumlah pertemuan 7 kali setiap minggu. Maka 7 kali pertemuan tersebut harus dialokasikan dengan tepat dalam seminggu pada
kelas 1A. 5. Seorang guru mengajar sesuai dengan mata pelajaran yang telah ditentukan.
6. Kegiatan belajar mengajar berlangsung dari hari Senin s.d Sabtu. Dan masing masing kelas terdiri dari jumlah pertemuan yang telah ditentutkan.
7. Periode waktu kegiatan belajar mengajar satu pertemuan adalah 40 menit.
b. Batasan lunak soft constraint
Berbeda dengan hard constraint, batasan dalam soft constraint adalah kendala yang
tidak selalu dapat terpenuhi dalam proses penyusunan jadwal kegiatan belajar mengajar. Walaupun tidak harus terpenuhi tetapi jadwal kegiatan belajar mengajar
yang dihasilkan harus semaksimal mungkin berusaha memenuhi ketentuan soft
constraint ini. Berikut ini beberapa contoh soft constraint dalam kasus penjadwalan kegiatan belajar mengajar di sekolah:
1. Preferensi jadwal pengajar; misal pengajar A bisa mengajar hari apa saja asalkan pada pukul 09.00-13.00. Pengajar B bisa mengajar hanya pada hari
Senin-Kamis pada pukul 07.30-10.00. 2. Seorang guru tidak boleh mendapatkan jadwal mengajar dengan mata
pelajaran yang sama lebih dari tiga pertemuan dalam sehari pada kelas yang sama.
Universitas Sumatera Utara
3.3.2 Perancangan Flowchart Sistem
Sistem yang dirancang adalah penjadwalan mata pelajaran dengan algoritma Ant
Colony System ACS dapat dilihat pada Gambar 3.1.
Mulai
Data Akademik, Parameter Semut
Constraint Penjadwalan
Probabilitas
ACS
Optimasi Daftar Jadwal
Mata pelajaran Selesai
Gambar 3.1 Flowchart sistem
Pada Gambar 3.1 di atas proses awal adalah pemasukan data akademik dan data parameter semut untuk diolah pada proses
constraint penjadwalan. Hasil constraint penjadwalan berupa estimasi jadwal mata pelajaran yang diolah selanjutnya untuk
mendapatkan probabilitas jadwal yang memungkinkan. Probabilitas jadwal yang dihasilkan diolah dengan algoritma ACS untuk mendapatkan daftar jadwal mata
pelajaran yang sesuai dengan constraint penjadwalan.
Universitas Sumatera Utara
3.3.3 Penerapan Algoritma Ant Colony System dalam Penjadwalan
Algoritma Ant Colony System merupakan teknik probabilistik untuk menyelesaikan
masalah komputasi dengan menemukan rute terpendek dari suatu graf. Dalam mencari rute terpendek dalam algoritma semut, ‘semut-semut tiruan’ akan bertindak seperti
agen, dimana setiap semut memiliki rute masing-masing dari titik awal menuju titik tujuan dengan tidak mengunjungi suatu titik lebih dari satu kali untuk mendapatkan
hasil terbaik.
3.3.3.1 Karakteristik Algoritma Ant Colony System
Terdapat tiga karakteristik utama dari algoritma semut, yaitu aturan transisi status,
aturan pembaruan feromon lokal, dan aturan pembaruan feromon global. Untuk
mencapai penjadwalan yang optimal semut harus melakukan beberapa tahap diantaranya:
Tahap I: Inisialisasi Parameter. Tahap awal dari proses penjadwalan ini adalah inisialisasi parameter. Parameter-
parameter yang digunakan dalam proses ini antara lain: a.
Seed sequence adalah kumpulan dari mata pelajaran tawar yang ditempatkan pada sejumlah waktu dan ruang berdasarkan ketersediaan waktu mengajar
guru berdasarkan pada constraint yang ada.
b. α, β merupakan parameter-parameter lain yang mengontrol bobot relatif antara
jejak feromon dan nilai heuristik. Jika
α=0, maka pencarian akan berdasarkan nilai heuristik semata. Jika sebaliknya
β=0, maka pencarian hanya dituntun oleh informasi jejak
feromon. c.
ρ adalah sebuah koefisien dimana 1-ρ menunjukkan tingkat evaporasi feromon.
ρ memiliki nilai yang sama untuk semua iterasi yaitu 0.01. d.
Zbest adalah besarnya jumlah data seed sequence dalam enam hari aktif belajar. Nilai
Zbest akan diperbarui pada setiap iterasi. e.
Tmax dan Tmin adalah batas maksimum dan minimum dari nilai intensitas elemen
feromon. Tmax dan Tmin diperoleh dari Zbest dengan formula sebagai berikut:
Universitas Sumatera Utara
Tmax= 11- ρZbest
Tmin = Tmax 5 t ij adalah intensitas jejak feromon mata pelajaran i diposisi k. Pada iterasi awal t
ij yaitu Tmax.
Tahap II: Iterasi Suatu iterasi akan menghasilkan sebuah solusi yaitu jadwal dari urutan sejumlah mata
pelajaran yang ditawarkan. Solusi dari setiap iterasi dioptimalkan lagi dalam iterasi selanjutnya berdasarkan jejak
feromon yang nilainya berubah-ubah tergantung pada solusi yang dihasilkan pada iterasi sebelumnya. Iterasi pada penjadwalan ini
menggunakan sejumlah semut dalam beberapa siklus untuk mencari nilai probabilitas setiap jadwal yang ditawarkan dalam 1 minggu. Dari hasil probabilitas, diperoleh nilai
probabilitas yang tertinggi yang merupakan solusi jadwal. Setiap semut yang telah menyelesaikan 1 iterasi dilakukan
update feromon untuk menempatkan semut yang selanjut pada siklus berikutnya.
Update global dilakukan setelah semua semut melakukan iterasi untuk memperoleh nilai probabilitas.
a. Update Local Feromon
Setiap semut setelah selesai menghitung probabilitas setiap jadwal yang ditawarkan dilakukan
update local feromon.
b. Aturan Update Global Feromon
Update global feromon hanya dilakukan oleh semut yang membuat jadwal yang memungkinkan sejak awal iterasi. Pada akhir sebuah siklus, setelah semua semut
menyelesaikan perjalanan mereka, intensitas feromon diperbaharui pada sisi-sisi yang dilewati oleh seekor semut yang telah menemukan jadwal yang optimum. Tingkat
feromon diperbarui dengan menerapkan aturan pembaruan feromon global yang
ditunjukkan oleh persamaan 4. ,
. ,
. 1
, v
t v
t v
t
τ α
τ α
τ
∆ +
− ←
................................persamaan 4
∈ =
∆
−
, ,
1
terbaik rute
v t
jika L
v t
gb
τ
Universitas Sumatera Utara
dimana: τt,v : nilai feromon akhir setelah mengalami pembaruan lokal
L
gb
: banyaknya matapelajaran pada akhir siklus.
α : tetapan pengendali feromon.
∆τ :
perubahan intensitas feromon.
3.3.3.2 Parameter Algoritma Ant Colony System
Parameter algoritma Ant Colony System dalam mencapai solusi penjadwalan adalah
dengan menginisialisasi harga parameter: 1. Intensitas feromon
τ
ij
. 2. Tetapan siklus semut
q .
3. Tetapan pengendali intensitas visibilitas β, nilai β ≥ 0.
4. Tetapan pengendali feromon α, nilai α ≥ 0.
5. Jumlah semut m.
6. Tetapan penguapan feromon ρ, nilai ρ harus 0 dan 1.
7. Jumlah siklus maksimum NC
max .
3.3.3.3 Pembentukan Solusi
Proses pembentukan solusi dilakukan dengan menambahkan mata pelajaran satu persatu ke dalam solusi jadwal. Untuk memilih mata pelajaran
i yang belum terjadwal untuk dijadwalkan pada posisi
k dalam jadwal adalah sebagai berikut: 1. Pembentukan solusi sementara dengan melakukan
hard constraint untuk setiap slot jadwal terhadap guru dan pelajaran.
2. Tentukan nilai produk feromon A
ij
�
��=
��
��
��
| �
�
|: �
��
�
= ��
��
��
�
��
��
�
�
. 3. Tentukan nilai
Tik yaitu akumulasi dari produk feromon T
ik
= ∑ ���.
4. Hitung Visiabiltas Maksimun dan minimum untuk setiap jadwal Tmax,Tmin. 5. Hitung Probabilitas setiap jadwal mata pelajaran Probabilitask=
ProbabilitasMax.
Universitas Sumatera Utara
3.3.3.4 Flowchart Penjadwalan Ant Colony System ACS
Berdasarkan penjelasan sebelumnya, maka dapatlah digambarkan flowchart
Penjadwalan ACS seperti Gambar 3.2 dibawah ini:
Mulai Input data kelas , jam , hari , mata pelajaran,
ampu, ketersedian guru Inisialisasi Paramater
Inisialisasi Jadwal Siklus = Siklus -1
Semut = Semut -1 Hitung Constraint Jadwal k
Bangkitkan Bil.Random Hitung Produk Feromon
Hitung u = Bilangan random x Jumlah Semut
Semut = 0
Siklus = 0
Jadwal mata pelajaran No
Yes
Yes
Selesai No
No
ij
A
ik ij
T A
=
∑
Hitung Probabilitas Jadwal k Pkik = Jadwal k
Hitung Probabilitas jadwal k Tik Maks = Jadwalk
Yes
Jadwal k = Jadwal ik u = Jumlah Mata Pelajaran
Gambar 3.2 Flowchart penjadwalan ACS
Universitas Sumatera Utara
1. Menginisialisasi parameter algoritma semut: a. Intensitas Feromon:
τ
ij
= 0,01 b. Tetapan siklus semut:
q = 0,1
c. Pengendalian Feromon: α = 0,1
d. Pengendalian Visibilitas: β = 1
e. Banyak semut: m = 2
f. Penguapan Feromon:
ρ = 0,5 g. Banyak Siklus:
NCmax = 2
Dari nilai parameter diatas nilai α dan β harus lebih besar atau sama dengan 0
sementara nilai ρ harus diantara 0 dan 1.
2. Inisialisasi jadwal
Data jadwal yang akan diinisialisasi adalah kelas, hari dan jam yang berfungsi sebagai data awal untuk proses penjadwalan. Inisialisasi jadwal dapat dilihat pada Tabel 3.5.
Tabel 3.5 Inisialisasi jadwal
No. Urut Jadwal Kelas
Hari Jam
1 1
1 1
2 2
1 2
3 3
1 3
4 4
1 4
5 5
1 5
Keterangan: Semua data inisialisasi memiliki tipe integer antara lain: Nomor Urut Jadwal : IDJadwal
Hari : IDHari
Jam : IDJam
Kelas : IDKelas
3. Inisialisasi Constraint Jumlah Jam Mata pelajaran
Jumlah jam mata pelajaran maksimum dalam 1 hari dan yang harus terpenuhi dalam 1 minggu dimasukkan ke dalam
Constraint jumlah jam mata pelajaran seperti pada Tabel 3.6.
Universitas Sumatera Utara
Tabel 3.6. Constraint jumlah jam mata pelajaran
Mata pelajaran Maksimun 1 hari
1 Minggu Matematika
3 8
Bahasa Indonesia 3
8 IPA
3 3
IPS 3
3 Bahasa Inggris
2 2
4. Penjadwalan Dengan ACS Untuk memasukkan setiap mata pelajaran ke dalam jadwal, dilakukan aturan seperti
constraint ketersediaan guru dan jumlah jam mata pelajaran Tabel 3.5 dan 3.6 diatas. Pertama-tama dilakukan penghitungan jumlah jadwal setiap kelas dalam 1 minggu
lalu hitung produk pheromone untuk semua jadwal diatas dengan persamaan berikut:
�
��=
��
��
��
| �
�
|: �
��
�
= ��
��
��
�
��
��
�
�
.
2.6 Spesifikasi Keperluaan Sistem
Dalam skripsi ini, dibangun sebuah sistem penjadwalan kegiatan belajar mengajar yang mengimplementasikan algoritma
ant colony system. Sistem ini dirancang menggunakan metode pendekatan atas-bawah
Top-Down Approach sehingga perancangan dimulai dari bentuk yang paling umum, kemudian diturunkan secara
bertahap menjadi bentuk yang lebih detail. Spesifikasi umum kebutuhan sistem menjelaskan dasar pembuatan rancangan sistem yang terdiri dari fungsi sistem, tujuan
sistem, masukan dan keluaran sistem.
3.4.1 Fungsi Sistem
Sistem yang akan dibangun memiliki fungsi sebagai berikut: 1. Mengelola semua data yang berhubungan dengan penjadwalan kegiatan belajar
mengajar di sekolah dasar mata pelajaran, waktu kegiatan belajar mengajar, guru, ruangan, jumlah waktu per ruangan, mata pelajaran yang diampu oleh
setiap guru, dan ketersedian waktu guru. 2. Mengisi slot jadwal secara otomatis.
3. Membuat laporan jadwal per guru dan per ruangan.
Universitas Sumatera Utara
3.4.2 Masukan Sistem
Input atau masukan dari aplikasi penjadwalan ini adalah: 1. Data guru, pelajaran, kelas, hari, jam, ampu, ketersediaan guru.
2. Parameter-parameter yang diperlukan dalam perhitungan algoritma ACS, yaitu: a. Intensitas feromon antar titik
τ
ij
. b. Tetapan siklus semut
q .
c. Tetapan pengendali intensitas visibilitas β.
d. Tetapan pengendali feromon α.
e. Jumlah semut m.
f. Tetapan penguapan feromon
ρ. g. Jumlah siklus maksimum
NC
max .
3.4.3 Keluaran Sistem
Keluaran output sistem adalah daftar penjadwalan yang dikelompokkan berdasarkan
nama guru serta kelas.
2.7
Perancangan Sistem Penjadwalan Kegiatan Belajar Mengajar
Tujuan dari perancangan sistem adalah untuk menentukan hasil akhir dari aplikasi yang akan dibangun dengan melakukan beberapa proses untuk memperoleh hasil
tersebut. Metode perancangan yang digunakan dalam pembuatan penjadwalan kegiatan belajar mengajar di sekolah dasar menggunakan algoritma
ant colony system dan menggunakan alat-alat pengembangan dalam bentuk DFD
Data Flow Diagram, diagram relasi antar tabel dan rancangan antarmuka
interface.
3.5.1 Perancangan DFD Data Flow Diagram
3.5.1.1 Diagram Konteks DFD Level 0
Diagram konteks adalah diagram yang terdiri dari suatu proses dan menggambarkan ruang lingkup suatu sistem. Dalam aplikasi ini pengguna sebagai admin akan
Universitas Sumatera Utara
memasukkan data berupa data mata pelajaran, guru, kelas, hari, jam, ketersediaan guru, parameter semut, serta admin yang akan digunakan dalam proses penjadwalan
dengan menggunakan algoritma ACS. Diagram konteks perancangan aplikasi penjadwalan kegiatan belajar mengajar dengan algoritma ACS dapat dilihat pada
gambar 3.3 dibawah ini.
Admin Penjadwalan
Kegiatan Belajar Mengajar dengan
Algoritma ACS Data hari, jam, guru, kelas, jumlah les per kelas,
mata pelajaran, pengampu mata pelajaran, ketersedian guru dan data admin
Jadwal Kegiatan Belajar Mengajar
Gambar 3.3 Diagram konteks
Tabel 3.7 Spesifikasi proses diagram konteks
PROSES
Penjadwalan Kegiatan Belajar Mengajar dengan Algoritma Ant Colony System
Input Input Data Penjadwalan
Proses Dalam proses ini, admin akan melakukan penginputan data berupa data hari,
data jam, data guru,data kelas, data jumlah per kelas, data mata pelajaran, data pengampu mata pelajaran, data ketersedian guru dan data admin yang akan
diproses dengan menggunakan algoritma ant colony system. Selanjutnya sistem akan memberikan hasil output berupa jadwal kegiatan belajar
mengajar.
Output Jadwal Kegiatan Belajar Mengajar
3.5.1.2 DFD Data Flow Diagram Level 1
Setelah dibuat diagram konteks, langkah selanjutnya adalah menurunkan diagram konteks menjadi bentuk yang lebih detail, yaitu DFD
Data Flow Diagram level 1.DFD
Data Flow Diagram level 1 mengilustrasikan bagaimana data diproses oleh sistem,dalam hal ini inputdan output dari sistem. Berdasarkan diagram konteks pada
Gambar 3.3 diatas, DFD level 1 memiliki empat proses yaitu proses Verifikasi Otoritas, Login, Input Data serta Penjadwalan. DFD level 1 dapat dilihat seperti pada
Gambar 3.4.
Universitas Sumatera Utara
Admin 1.1
Login
1.2 Input Data
1.3 Proses Penjadwalan
dengan ACS User
User Id, Password Status
Data Guru Data Pelajaran
Data Kelas Data Hari
Data Jam Data Parameter
Data Les per Kelas Data Ampu
Data Ketersediaan Input data guru
Input data pelajaran Input data kelas
Input data hari Input data jam
Input data les Input data ampu
Output data guru Output data pelajaran
Output data kelas Output data hari
Output data jam Output data parameter
Output data les per kelas Output data les per ampu
Output data ketersediaan
Input User Id, Password Login unvalid
Login Valid
Jadwal Mata pelajaran
Input data parameter
Input data ketersediaan mengajar guru
Gambar 3.4 DFD level 1
Pada proses Login, sistem membutuhkan data masukan berupa UserID dan Password,
kemudian proses akan memberikan otoritas dengan cara membandingkan ke data User. Proses-proses yang terjadi pada DFD Level 1 proses 1 diuraikan pada Tabel 3.8
di bawah ini.
Tabel 3.8 Spesifikasi proses DFD level 1 proses 1 PROSES
P1.1 Proses Login
Input
UserID Password
Proses
Dalam proses ini, admin login dengan mengisi user ID dan
password
Output
Login Valid dan Login Invalid
Universitas Sumatera Utara
Masing-masing entitas data yang tercantum pada DFD level 1 proses 1 ditampilkan pada tabel 3.9 di bawah ini.
Tabel 3.9 Kamus data pada DFD level 1 proses 1 Nama
Keterangan
UserID Nama Penguna
Password Kata sandi
Pada proses Input Data, dilakukan penginputan data awal yang akan diproses menjadi data jadwal pelajaran oleh
user. Proses-proses yang terjadi pada DFD Level 1 proses 2 diuraikan pada Tabel 3.10 di bawah ini.
Tabel 3.10 Spesifikasi proses DFD level 1 proses 2
PROSES
P1.2 Proses Input Data
Input
Data Guru, Kelas,Pelajaran,Hari,Jam,Ampu,Parameter,Ketersediaan
Proses Proses Penginputan data.
Output
Data Guru, Kelas,Pelajaran,Hari,Jam,Ampu,Parameter,Ketersediaan
Masing-masing entitas data yang tercantum pada DFD level 1 proses 2 ditampilkan
pada Tabel 3.11 di bawah ini.
Tabel 3.11 Kamus data pada DFD level 1 proses 2 Nama
Keterangan
Data Guru Terdiri dari IDGuru, Nama Guru, Jumlah pertemuan
dalam seminggu. Data Ruangan
Terdiri dari IDRuangan, Nama Ruangan Data Pelajaran
Terdiri dari IDPelajaran, Nama Pelajaran, Ruangan, Alokasi waktu minggu.
Data Hari Terdiri dari IDHari, Nama Hari dalam seminggu
Data Jam Terdiri dari IDJam, Nama Jam dalam seminggu
Data Ampu Terdiri dari mata pelajaran yang diampu setiap guru
Data Parameter Parameter Semut yang akan digunakan dalam proses
penjadwalan Data Ketersediaan
Data Ketersediaan Guru mengajar dalam setiap minggu
Universitas Sumatera Utara
3.5.2 Basis Data
Pembuatan aplikasi ini membutuhkan database yang akan digunakan untuk menyimpan data-data. Data-data tersebut disimpan kedalam tabel-tabel tertentu.
Berikut tabel-tabel yang digunakan dalam aplikasi penjadwalan kegiatan belajar mengajar antara lain :
3.5.2.1 Tabel Guru
Tabel ini digunakan untuk menyimpan data seluruh pengajar, terdiri dari : IDGuru, NmGuru, JumlahLes, Status, StatusSedia mengajar setiap guru dalam seminggu.
Tabel guru dapat dilihat pada Tabel 3.12.
Tabel 3.12 Tabel guru
Nama Field Data Type
Length Keterangan
IDGuru PK smallint
2 ID Guru
NmGuru nchar
50 Nama Guru
JmlLes smallint
2 Jumlah pertemuan dalam seminggu
Status char
1 Status yang digunakan untuk ampu
StatusSedia char
1 Status yang digunakan untuk
ketersediaan waktu mengajar
3.5.2.2 Tabel Kelas
Tabel ini digunakan untuk menyimpan seluruh data kelas , terdiri dari : IDKelas dan NmKelas. Tabel Kelas dapat dilihat pada Tabel 3.13.
Tabel 3.13 Tabel Kelas
Nama Field Data Type
Length Keterangan
IDKelas PK smallint
2 ID Kelas
NmKelas nchar
50 Nama Kelas
Universitas Sumatera Utara
3.5.2.3 Tabel Jam
Tabel ini digunakan untuk menyimpan data jam belajar mengajar, terdiri dari : IDJam dan NmJam. Tabel Jam dapat dilihat pada Tabel 3.14.
Tabel 3.14 Tabel Jam
Nama Field Data Type
Length Keterangan
IDJam PK smallint
2 ID Jam
NmJam nchar
50 Nama Jam
3.5.2.4 Tabel Hari
Tabel ini digunakan untuk menyimpan data hari belajar mengajar, terdiri dari : IDHari dan NmHari. Tabel Hari dapat dilihat pada Tabel 3.15.
Tabel 3.15 Tabel Hari
Nama Field Data Type
Length Keterangan
IDHari PK smallint
2 ID Hari
NmHari nchar
50 Nama Hari
3.5.2.5 Tabel Pelajaran
Tabel ini digunakan untuk menyimpan seluruh data mata pelajaran yang diajarkan, terdiri dari : IDPel, NmPelajaran, Jumlah, dan Status. Tabel Pelajaran dapat dilihat
pada Tabel 3.16.
Tabel 3.16 Tabel Pelajaran
Nama Field Data Type
Length Keterangan
IDPel PK smallint
2 ID Pelajaran
IDKelas FK1 smallint
2 ID Kelas
NmPelajaran nchar
35 Nama Pelajaran
Jumlah smallint
2 Jumlah pertemuan tiap minggu setiap mata
pelajaran Status
char 1
Status yang digunakan pada saat penyimpanan data.
Universitas Sumatera Utara
3.5.2.6 Tabel Ampu
Tabel ini digunakan untuk menyimpan seluruh data id ampu yang diambil oleh setiap guru, terdiri dari : IDampu dan IDGuru. Tabel Ampu dapat dilihat pada Tabel 3.17.
Tabel 3.17 Tabel Ampu
Nama Field Data Type
Length Keterangan
IDAmpu PK smallint
2 ID Ampu
IDGuru FK1 smallint
2 ID Guru
3.5.2.7 Tabel DAmpu
Tabel ini digunakan untuk menyimpan data detail ampu setiap mata pelajaran yang diampu oleh setiap guru, terdiri dari : IDDampu, IDAmpu, dan IDPel. Tabel DAmpu
dapat dilihat pada Tabel 3.18.
Tabel 3.18 Tabel DAmpu
Nama Field Data Type
Length Keterangan
IDDAmpu PK smallint
2 ID Detail Ampu
IDAmpu FK1 smallint
2 ID Ampu
IDPel FK2 smallint
2 ID Pelajaran
Status char
1 status data ID detail Ampu telah
digunakan.
3.5.2.8 Tabel
User
Tabel ini digunakan untuk menyimpan data user dari sistem, terdiri dari : UserID, dan
Passwd. Tabel User dapat dilihat pada Tabel 3.19.
Tabel 3.19 Tabel User
Nama Field Jenis Field
Ukuran Field Keterangan
UserID PK char
20 User ID
Passwd char
20 Password
Universitas Sumatera Utara
3.5.2.9 Tabel Ketersedian Hari
Tabel ini digunakan untuk menyimpan data ketersedian hari dan jam mengajar oleh setiap guru, terdiri dari : IDSediahari, IDGuru, IDHari, dan IDJam. Tabel Ketersedian
Hari dapat dilihat pada Tabel 3.20.
Tabel 3.20 Tabel Ketersediaan Hari
Nama Field Data Type
Length Keterangan
IDSediaHari PK smallint
2 ID Sedia Guru
IDGuru FK1 smallint
2 ID Guru
IDJam FK2 smallint
2 ID Jam
IDHari FK3 smallint
2 ID Hari
Status char
1 Status yang digunakan saat
penyimpanan data ketersediaan hari.
3.5.2.10 Tabel Jumlah Pertemuan
Tabel ini digunakan untuk menyimpan data jumlah pertemuan setiap kelas dalam satu hari pertemuan, terdiri dari : IDLes, IDKelas, IDHari, JumlahLes. Tabel Jumlah Les
dapat dilihat pada Tabel 3.21.
Tabel 3.21 Tabel Jumlah Pertemuan
Nama Field Data Type
Length Keterangan
IDLes PK smallint
2 ID Pertemuan
IDKelas FK1 smallint
2 ID Kelas
IDHari FK2 smallint
2 ID Hari
JumlahLes smallint
2 Jumlah waktu pertemuan setiap
kelas dalam seminggu
3.5.2.11 Tabel Jadwal Guru
Tabel ini digunakan untuk menyimpan daftar jadwal guru yang telah berhasil dijadwalkan, terdiri dari IDJadwalGuru, IDJadwal, IDKelas, IDHari, IDJam, IDGuru,
IDPel, Ket. Tabel Jadwal Guru dapat dilihat Tabel 3.22.
Universitas Sumatera Utara
Tabel 3.22 Tabel Jadwal Guru
Nama Field Jenis Field
Ukuran Field Keterangan
IDJadwalGuru PK smallint
2 ID Jadwal Guru
IDJadwal FK1 smallint
2 ID Jadwal
IDKelas FK2 smallint
2 ID Kelas
IDHari FK3 smallint
2 ID Hari
IDJam FK4 smallint
2 ID Jam
IDGuru FK5 smallint
2 ID Guru
IDPel FK6 smallint
2 ID Pelajaran
3.5.3 Relasi Tabel
Hari
PK IDHari
nmHari Jam
PK IDJam
NmJam Guru
PK IDGuru
NmGuru JmlPertemuan
Status StatusSedia
Kelas
PK IDKelas
NmKelas JumlahLes
PK IDLes
FK1 IDKelas
FK2 IDHari
JumlahLes
Pelajaran
PK IDPel
FK1 IDKelas
NmPelajaran Jumlah
Status StatusPel
Ampu
PK IDAmpu
FK1 IDGuru
DAmpu
PK IDDAmpu
FK1 IDAmpu
FK2 IDPel
Status KetersediaanHari
PK IDSediaHari
FK1 IDGuru
FK3 IDHari
FK2 IDJam
Status Bebas
JadwalGuru
PK IDJadwalGuru
FK1 IDJadwal
FK2 IDKelas
FK3 IDHari
FK4 IDJam
FK5 IDGuru
FK6 IDPel
Jadwal
PK IDJadwal
FK1 IDKelas
FK2 IDJam
FK3 IDHari
Status
Gambar 3.5 Skema relasi antar tabel
Universitas Sumatera Utara
3.5.4 Perancangan Antar Muka
3.5.4.1 Perancangan Form Menu Utama
Perancangan antar muka menu utama berfungsi sebagai form awal ketika menjalankan
program.
Gambar 3.6 Perancangan form menu utama
3.5.4.2 Perancangan Form Data Hari
Perancangan antar muka data hari berfungsi sebagai form untuk mengisi data hari
yang digunakan dalam proses kegiatan belajar mengajar.
Gambar 3.7 Perancangan form data hari
TambahSimpan
Cari Ubah
Hapus Batal
Keluar Tombol
Data Hari ID Hari
Nama Hari
ID Hari Nama Hari
LogIn LogOut
File Proses
Hasil Bantuan
Keluar
Gambar Pembuka
NamaNim Penulis Logo USU
Universitas Sumatera Utara
3.5.4.3 Perancangan Form Data Jam
Perancangan antar muka data jam berfungsi sebagai form untuk mengisi data jam yang
digunakan dalam proses kegiatan belajar mengajar.
Gambar 3.8 Perancangan form data jam pelajaran
3.5.4.4 Perancangan Form Data Guru
Perancangan antar muka data guru berfungsi sebagai form untuk mengisi data guru
yang mengajar dalam proses kegiatan belajar mengajar.
Gambar 3.9 Perancangan form data guru
TambahSimpan
Cari Ubah
Hapus Batal
Keluar Tombol
Data Jam ID Jam
Nama Jam
ID Jam Nama Jam
TambahSimpan
Cari Ubah
Hapus Batal
Keluar Tombol
Data Guru
ID Guru Nama Guru
Jumlah Pertemuan
Jumlah
Pertemuan
Nama Guru ID Guru
Universitas Sumatera Utara
3.5.4.5 Perancangan Form Data Ruangan
Perancangan antar muka data kelas berfungsi sebagai form untuk mengisi data
ruangan yang digunakan dalam proses kegiatan belajar mengajar.
Gambar 3.10 Perancangan form data ruangan
3.5.4.6 Perancangan Form Data Jumlah Jam Pertemuan per Ruangan
Perancangan antar muka data jumlah jam pertemuan per ruangan berfungsi sebagai form untuk mengisi data jumlah pertemuan dalam setiap hari yang digunakan dalam
setiap ruangan.
Gambar 3.11 Perancangan form data jumlah pertemuan per ruangan
TambahSimpan
Cari Ubah
Hapus Batal
Keluar Tombol
Data Jumlah Pertemuan per ruangan
Jumlah Nama Hari
Nama Ruangan ID
Nama Hari Jumlah
ID Nama Ruangan
TambahSimpan
Cari Ubah
Hapus Batal
Keluar Tombol
Data Ruangan
ID Ruangan Nama Ruangan
Nama Ruangan
Universitas Sumatera Utara
3.5.4.7 Perancangan Form Data Mata Pelajaran
Perancangan antar muka data mata pelajaran berfungsi sebagai form untuk mengisi
data mata pelajaran yang digunakan dalam proses kegiatan belajar mengajar.
Gambar 3.12 Perancangan form data mata pelajaran
3.5.4.8 Perancangan Form Data Pengampu Mata Pelajaran
Perancangan antar muka data pengampu mata pelajaran berfungsi sebagai form untuk
mengisi seluruh data mata pelajaran yang diajarkan oleh setiap guru.
Gambar 3.13 Perancangan form data pengampu mata pelajaran
Data Pengampu Mata Pelajaran Nama Guru
Alokasi waktu mengajar
Nama
Jumlah ID Pel
Daftar Mata Pelajaran
Nama
Jumlah ID Pel
Daftar Guru Pengampu Mata Pelajaran
TambahSimpan
Cari Hapus Batal Keluar
Tombol
Nama
Jumlah ID Pel
Mata Pelajaran yang Diampu
Total jumlah waktu mengajar minggu
TambahSimpan
Cari Ubah
Hapus Batal
Keluar Tombol
ID Mata Pelajaran Nama Pelajaran
Alokasi Minggu Data Mata Pelajaran
Alokasi Minggu Nama Pelajaran
ID Mata Pelajaran
Universitas Sumatera Utara
3.5.4.9 Perancangan Form Data Ketersedian Guru Mengajar
Perancangan antar muka data ketersedian guru mengajar berfungsi sebagai form untuk
mengisi waktu seluruh waktu yang dapat digunakan oleh guru untuk mengajar.
Gambar 3.14 Perancangan form ketersediaan guru mengajar
3.5.4.10 Perancangan Form Data User
Perancangan antar muka data user berfungsi sebagai form untuk mengisi data
pengguna dari sistem.
Gambar 3.15 Perancangan form data user
Data Ketersedian Guru Mengajar Nama Guru
TambahSimpan
Cari Hapus Batal Keluar
Tombol Hari
ID Jam Nama Jam
Ketersedian Guru Mengajar
Nama Pelajaran
Jumlah ID Pel
Daftar Guru ID Sedia
Nama Guru
TambahSimpan
Cari Ubah
Hapus Batal
Keluar Tombol
Data User ID Kelas
Nama Kelas
Universitas Sumatera Utara
3.5.4.11 Perancangan Form Proses Penjadwalan
Perancangan antar muka proses penjadwalan berfungsi sebagai form untuk melakukan
proses penjadwalan kegiatan belajar mengajar dengan menggunakan algoritma ant
colony system.
Gambar 3.16 Perancangan form proses penjadwalan
3.5.4.12 Perancangan Menu About
Perancangan antar muka about berfungsi untuk menampilkan nama judul skripsi,
nama pembuat program dan juga studi kasus dari penelitian.
Gambar 3.17 Perancangan form menu abou
About
Gambar tampilan awal program
Judul Skripsi Nama Pembuat Program
Studi Kasus Penelitian
Ok Proses Penjadwalan
Parameter Intensitas Feromon
Pengendali Feromon Tetapan Siklus
Pengendali Penguapan Feromon
Banyak Semut Banyak Siklus
TMax TMin
Proses Tombol
Clear Keluar
Daftar Pelajaran yang sudah terjadwal Daftar Pelajaran yang belum terjadwal
Proses Constraint
Proses Iterasi
Universitas Sumatera Utara
BAB IV
IMPLEMENTASI DAN PENGUJIAN SISTEM
2.8 Implementasi Sistem