Buat metod dengan nama BantuSimpanFungBiaya_currentState, tipe Metod menghitung terjadi bentrok dosen Algoritma 3.10. Metod menghitung terjadi bentrok rombongan belajar Algoritma 11.

3.2.4. Perhitungan Fungsi biaya Jumlah Pelanggaran dari Hard Constraints

dan Soft Constraints. Sebuah jadwal dikatakan belum optimal jika masih terdapat pelanggaran. Pelanggaran didapati dari bobot constraints yang ditetapkan Hard Constraints maupun Soft Constraints. Setiap terjadi pelanggaran 1. Mulai.

2. Buat metod dengan nama BantuSimpanFungBiaya_currentState, tipe

pengembalian static ListPelanggaran. 3. Buat variable baru untuk menyimpan data pelanggaran ListPelanggaran pelanggaran = new ArrayList; 4. Untuk i=0 sampai i sebanyak “fungsiBiaya_jadwal_sekarang”, lakukan langkah berikut: Set semua attribute pelanggaran ke i. Pelanggaran p=new Pelanggaran; pelanggaran.addp; 5. Untuk i=0 sampai i sebanyak “pelanggaran”, lakukan langkah berikut:  Untuk j=i+1 sampai j sebanyak “pelanggaran”, l - Jika kode jadwal ke 1 dan ke j sama. Maka hapus dari tampungan pelanggaran. 5. Kembalikan pelanggaran. 6. Selesai. maka akan diberi nilai dengan bobot 1. Berikut adalah analisa menghitung jumlah pelanggaran dari constraints yang ditetapkan. A. Batasan yang tidak boleh dilanggar Hard Constraints. 1. Metod menghitung terjadi bentrok ruang kelas Algoritma 3.9.

2. Metod menghitung terjadi bentrok dosen Algoritma 3.10.

1. Mulai 2. Buat metod Bentrok_Ruang_KelasMatakuliah_JdwlBaru, tipe pengembalian static int. 3. Buat variable pelanggaran =0. 4. Untuk i=0 sampai i sebanyak “jadwal_baru”, lakukan langkah berikut. Buat variable cek=1; 1. Untuk j=i+1 sampai j se banyak “jadwal_baru”, lakukan langkah berikut. - Cek apakah ada timeslot pada jadwal_baru ke j = timeslot pada jadwal_baru ke i dan ruang pada jadwal_baru ke j = ruang pada jadwal_baru ke i. Ya, cek=cek+1;  Jika cek=2, pelanggaran = pelanggaran + 1; ya, Set attribut pelanggaran ke j. Pelanggaran p = new Pelanggaran; fungsiBiaya_ jadwal_baru.addp; 5. Selesai. 3. Metod menghitung terjadi bentrok rombongan belajar Algoritma 3.11. 1. Mulai 2. Buat metod Bentrok_Dosen_ JdwlBaru, tipe pengembalian static int. 3. Buat variable pelanggaran =0. 4. Untuk i=0 sampai i sebanyak “jadwal_baru”, lakukan langkah berikut. Buat variable cek=1; 5. Untuk j=i+1 sampai j se banyak “jadwal_baru”, lakukan langkah berikut. - Cek apakah ada timeslot pada jadwal_baru ke j = timeslot pada jadwal_baru ke i, dan dosen pada jadwal_baru ke j=dosen pada jadwal_baru ke i. ya, cek=cek+1; a. Jika cek=2, - Pelanggaran p = new Pelanggaran; - Ya, Set attribut pelanggaran ke j. 1. Untuk k=0,sampai k sebanyak permintaan, lakukan berikut:  Jika kode jadwal ke j sama dengan permintaan ke k. Set atrribut pelanggaran ke i. - pelanggaran = pelanggaran + 1; - fungsiBiaya_ jadwal_baru.addp; 6. Selesai. 1. Mulai 2. Buat metod Bentrok_Rombongan_Belajar_ JdwlBaru, tipe pengembalian static int. 3. Buat variable pelanggaran =0. 4. Untuk i=0 sampai i sebanyak “jadwal_baru”, lakukan langkah berikut. Buat variable cek=1; 5. Untuk j=i+1 sampai j se banyak “jadwal_baru”, lakukan langkah berikut. 1. Cek apakah ada timeslot pada jadwal_baru ke j = timeslot pada jadwal_baru ke i, dan semester pada jadwal_baru ke j = semester pada jadwal_baru ke i, dan kelas pada jadwal_baru ke j = kelas pada jadwal_baru ke i. ya, cek=cek+1; a. Jika cek=2, - Pelanggaran p = new Pelanggaran; - Ya, Set attribut pelanggaran ke j. 1. Untuk k=0,sampai k sebanyak permintaan, lakukan berikut:  Jika kode jadwal ke j sama dengan permintaan ke k. Set atrribut pelanggaran ke i. - pelanggaran = pelanggaran + 1; - fungsiBiaya_ jadwal_baru.addp; 4. Dosen luar mendapatkan prioritas dibandingkan dengan dosen tetap dalam waktu dan hari mengajar. Jadi dosen luar bisa menentukan hari dan jam mengajar. Pada hard constraint ini, tindakan ini dilakukan sebelum proses pembuatan jadwal, jadi langsung memilih penempatan jadwal. Proses akan ada pada proses permintaan jadwal jadwal permintaan . 5. Dosen tidak boleh mengajar lebih dari 20 sks, ini juga dilakukan diawal, yaitu pada proses pengisian dosen pegampu. Akan dihitung jumlah sks yang sudah diampu. Jika sudah 20 sks maka tidak dipilih lagi. 6. Dalam 1 hari, dosen mengajar tidak melebihi dari 3 kali pertemuan Algoritma 3.12 . 1. Mulai 2. Buat metod Bentrok_Dosen_mengajar_dlm_1hari_dijadwal_lbh_dr_3_ JdwlBaru, tipe pengembalian static int. 3. Buat variable pelanggran=0. 4. Buat variable objek baru untuk menyimpan sementara kode jadwal dalam list. ListString simpan3 = new ArrayList; 5. Untuk i=0 sampai i sebanyak “jadwal_baru”, lakukan langkah berikut. Buat variable cek=1; B. Batasan yang sebaiknya tidak dilanggar Soft Constraints. 1. Dalam 1 hari, mahasiswa tidak boleh dijadwalkan lebih dari 3 kali perkuliahan Algoritma 3.13. 6. Untuk j=i+1 sampai j se banyak “jadwal_baru”, lakukan langkah berikut. 1. Cek apakah ada hari pada jadwal_baru ke j = hari pada jadwal_baru ke i, dan kelas pada jadwal_baru ke j = kelas pada jadwal_baru ke i, dan semester pada jadwal_baru ke j = semester pada jadwal_baru ke i. ya, simpan kode jadwal ke j dan index j kedalam simpan3 dan cek=cek+1; a. Jika cek=4, - Pelanggaran p = new Pelanggaran; - ya, Set attribut pelanggaran ke j. 1. Untuk k=0,sampai k sebanyak permintaan, lakukan berikut:  Jika kode jadwal ke j sama dengan permintaan. a. Untuk L=0 sampai L sebanyak simpan3, - Jika kode jadwal k tidak = kode jadwal simpan3. Set atrribut pelanggaran ke L. - pelanggaran = pelanggaran + 1; - fungsiBiaya_ jadwal_baru.addp; Metod untuk menghitung fungsiBiaya jadwal awal sama dengan fungsiBiaya jadwal_baru, Perbedaan hanya terletak di pengecekan pada jadwal_baru dan jadwal_Awal dan penyimpanan pelanggaran. Jika jadwal_baru pelanggaran disimpan pada fungsiBiaya_jadwal_baru dan jadwal_awal pada fungsiBiaya_jadwal_awal. 1. Mulai 2. Buat metod Bentrok_Rombongan_1hari_dijadwal_lbh_dr_3_JdwlBaru, tipe pengembalian static int. 3. Buat variable pelanggran=0. 4. Buat variable objek baru menyimpan sementara kode jadwal dalam list. ListString simpan3 = new ArrayList; 5. Untuk i=0 sampai i sebanyak “jadwal_baru”, lakukan langkah berikut. Buat variable cek=1; 6. Untuk j=i+1 sampai j se banyak “jadwal_baru, lakukan langkah berikut. 1. Cek apakah ada hari pada jadwal_baru ke j = hari pada jadwal_baru ke i, dan dosen pada jadwal_baru ke j = dosen pada jadwal_baru ke i. ya, simpan kode jadwal ke j dan index j kedalam simpan3 dan cek=cek+1; a. Jika cek=4, - Pelanggaran p = new Pelanggaran; - ya, Set attribut pelanggaran ke j. 1. Untuk k=0,sampai k sebanyak permintaan, lakukan berikut:  Jika kode jadwal ke j sama dengan permintaan. a. Untuk L=0 sampai L sebanyak simpan3, - Jika kode jadwal k tidak = kode jadwal simpan3. Set atrribut pelanggaran ke L. - pelanggaran = pelanggaran + 1; - fungsiBiaya_jadwal_baru.addp; 7. Selesai. 3.3 Perangkat Keras dan Perangkat Lunak Perangkat Keras dan Perangkat Lunak yang digunakan agar sistem ni dapat berjalan adalah : 1. Perangkat Keras Spesifikasi Minimum 1 Processor : Intel R Core TM i3, 2.20 GHz. 2 Memori RAM : 2 GB 3 Hardisk : 320 GB 2. Perangkat Lunak Perangkat lunak atau sistem operasi yang harus tersedia dalam sebuah computer untuk mendukung kerja sistem ini adalah Minimal Sistem Operasi Window Xp. Jika menggunakan sistem operasi yang diatasnya tidak menjadi permasalahan selama tidak dibawah Window Xp.

3.4 Perancangan Sistem

Tahap-tahap yang terdapat dalam perancangan dalam sistem ini adalah sebagai berikut :

3.4.1 Diagram Use Case

Pengguna Lihat Mata Kuliah Edit Mata Kuliah Hapus Mata Kuliah Lihat Kelas Lihat Dosen Edit Dosen Hapus Dosen Buat Jadwal Kuliah Lihat Jadwal Kuliah Menu Bantuan «extends» «extends» «extends» «extends» «extends» «extends» «extends» Tambah Matakuliah Tambah Dosen Tambah Ruang Edit Ruang Hapus Ruang Lihat Waktu dan Hari Gambar 3. 3 Diagram Use Case

3.4.2 Narasi Use Case

Nama use case Tambah Mata Kuliah Aktor Pengguna Diskripsi Pengguna memasukkan data matakuliah Prakondisi Mengaktifkan aplikasi Langkah kerja Aksi aktor Reaksi sistem 1. Memasukkan data matakuliah dan mengklik tombol simpan. 2. Sistem mengecek setiap data yang dimasukan. 3. Jika lengkap, sistem menyimpan kedalam database matakuliah. Alternate 3. Jika tidak lengkap, sistem akan memberitahu untuk melengkapi. Nama use case Edit Mata Kuliah Aktor Pengguna Diskripsi Pengguna mengedit data matakuliah Prakondisi Mengaktifkan aplikasi Langkah kerja Aksi aktor Reaksi sistem 1. Memilih matakuliah yang ingin diedit. 2. Sistem menampilkan data matakuliah tersebut. 3. Mengedit matakuliah. 4. Jika lengkap, sistem menyimpan kedalam database matakuliah. Alternate 4. Jika tidak lengkap, sistem akan memberitahu untuk melengkapi. Nama use case Hapus Mata Kuliah Aktor Pengguna Diskripsi Pengguna menghapus data matakuliah Prakondisi Mengaktifkan aplikasi Langkah kerja Aksi aktor Reaksi sistem 1. Memilih data matakuliah yang ingin dihapus dan mengklik tombol hapus. 2. Sistem menghapus data matakuliah tersebut dari database matakuliah. Alternate Nama use case Lihat Mata Kuliah Aktor Pengguna Diskripsi Pengguna melihat data matakuliah Prakondisi Mengaktifkan aplikasi Langkah kerja Aksi aktor Reaksi sistem 1. Memilih tombol melihat data matakuliah. 2. Sistem menampilkan data matakuliah. Alternate Nama use case Tambah Dosen Aktor Pengguna Diskripsi Pengguna memasukkan data Dosen Prakondisi Mengaktifkan aplikasi Langkah kerja Aksi aktor Reaksi sistem 1. Memasukkan data Dosen dan mengklik tombol simpan. 2. Sistem mengecek setiap data yang dimasukan. 3. Jika lengkap, sistem menyimpan kedalam database Dosen. Alternate 3. Jika tidak lengkap, sistem akan memberitahu untuk melengkapi. Nama use case Edit Dosen Aktor Pengguna Diskripsi Pengguna mengedit data Dosen Prakondisi Mengaktifkan aplikasi Langkah kerja Aksi aktor Reaksi sistem 1. Memilih Dosen yang ingin diedit. 2. Sistem menampilkan data Dosen tersebut. 3. Mengedit Dosen. 4. Jika lengkap, sistem menyimpan kedalam database Dosen. Alternate 4. Jika tidak lengkap, sistem akan memberitahu untuk melengkapi. Nama use case Hapus Dosen Aktor Pengguna Diskripsi Pengguna menghapus data Dosen Prakondisi Mengaktifkan aplikasi Langkah kerja Aksi aktor Reaksi sistem 1. Memilih data Dosen yang ingin dihapus dan mengklik tombol hapus. 2. Sistem menghapus data dosen tersebut dari database Dosen. Alternate Nama use case Lihat Dosen Aktor Pengguna Diskripsi Pengguna melihat data Dosen Prakondisi Mengaktifkan aplikasi Langkah kerja Aksi aktor Reaksi sistem 1. Memilih tombol melihat data Dosen. 2. Sistem menampilkan data Dosen. Alternate Nama use case Tambah Ruang Aktor Pengguna Diskripsi Pengguna memasukkan data Ruang Prakondisi Mengaktifkan aplikasi Langkah kerja Aksi aktor Reaksi sistem 1. Memasukkan data Ruang dan mengklik tombol simpan. 2. Sistem mengecek setiap data yang dimasukan. 3. Jika lengkap, sistem menyimpan kedalam database Ruang. Alternate 3. Jika tidak lengkap, sistem akan memberitahu untuk melengkapi. Nama use case Edit Ruang Aktor Pengguna Diskripsi Pengguna mengedit data Ruang Prakondisi Mengaktifkan aplikasi Langkah kerja Aksi aktor Reaksi sistem 1. Memilih Ruang yang ingin diedit. 3. Mengedit Ruang. 2. Sistem menampilkan data ruang tersebut. 4. Jika lengkap, sistem menyimpan kedalam database Ruang. Alternate 4. Jika tidak lengkap, sistem akan memberitahu untuk melengkapi. Nama use case Hapus Ruang Aktor Pengguna Diskripsi Pengguna menghapus data Ruang Prakondisi Mengaktifkan aplikasi Langkah kerja Aksi aktor Reaksi sistem 1. Memilih data Ruang yang ingin dihapus dan mengklik tombol hapus. 2. Sistem menghapus data ruang tersebut dari database Ruang. Alternate Nama use case Lihat Ruang Aktor Pengguna Diskripsi Pengguna melihat data Ruang Prakondisi Mengaktifkan aplikasi Langkah kerja Aksi aktor Reaksi sistem 1. Memilih tombol melihat data Ruang. 2. Sistem menampilkan data Ruang. Alternate Nama use case Lihat Waktu dan Hari Aktor Pengguna Diskripsi Pengguna melihat data Waktu dan Hari Prakondisi Mengaktifkan aplikasi Langkah kerja Aksi aktor Reaksi sistem 1. Memilih tombol melihat data Waktu dan Hari. 2. Sistem menampilkan data Waktu dan Hari. Alternate Nama use case Buat jadwal Kuliah Aktor Pengguna Diskripsi Pengguna membuat jadwal perkuliahan 1 semester Prakondisi Mengaktifkan aplikasi Langkah kerja Aksi aktor Reaksi sistem 1. Mengklik tombol buat jadwal. 2. Sistem menampilkan halaman untuk memilih semester dan tahun ajaran. 3. Memilih semester GasalGenap dan tahun ajaran, klik tombol selanjutnya. 4. Sistem menampilkan halaman data matakuliah semester 1 jika gasal,2 jika genap. 5. Memilih matakuliah yang digunakan pada semester 1 atau 2 dan membagi kedalam berapa kelas. 6. Sistem menampilkan data matakuliah yang telah dibagi kedalam beberapa kelas dan meminta untuk mengisi dosen pegampu. 7. Mengisi dosen pegampu untuk kelas matakuliah semester 1 atau 2. 8. Sistem menyimpan data tersebut ke database kelasmatakuliah dan selanjutnya menampilkan data matakuliah semester 3 atau 4. 9. Memilih matakuliah yang digunakan pada semester 3 atau 4 dan membagi kedalam berapa kelas. 10. Sistem menampilkan data matakuliah yang telah dibagi kedalam beberapa kelas dan meminta untuk mengisi dosen pegampu. 11. Mengisi dosen pegampu untuk kelas matakuliah semester 3 atau 4. 12. Sistem menyimpan data tersebut ke database kelasmatakuliah dan selanjutnya menampilkan data matakuliah semester 5 atau 6. 13. Memilih matakuliah yang digunakan pada semester 5 atau 6 dan membagi kedalam berapa kelas. 14. Sistem menampilkan data matakuliah yang telah dibagi kedalam beberapa kelas dan meminta untuk mengisi dosen pegampu. 15. Mengisi dosen pegampu untuk kelas matakuliah semester 5 atau 6. 16. Sistem menyimpan data tersebut ke database kelasmatakuliah dan selanjutnya menampilkan data matakuliah semester 7 atau 8. 17. Memilih matakuliah yang digunakan pada semester 7 atau 8 dan membagi kedalam berapa kelas. 18. Sistem menampilkan data matakuliah yang telah dibagi kedalam beberapa kelas dan meminta untuk mengisi dosen pegampu. 19. Mengisi dosen pegampu untuk kelas matakuliah semester 7 atau 8. 20. Sistem menyimpan data tersebut ke database kelasmatakuliah dan selanjutnya menampilkan halaman untuk mengisi jadwal permintaan. 21. Mengisi jadwal permintaan. 22. Sistem menyimpan jadwal permintaan kedalam database permintaan, selanjut menampilkan halaman untuk buat jadwal. 23. Mengklik tombol buat jadwal. 24. Sistem memproses pembuatan jadwal kelas matakuliah sesuai algoritma SA yang dibuat, setelah selesai akan menampilkan proses selesai dan kemudian menyimpan hasil kedalam database solusi. Alternate 8. Jika ada kelas matakuliah yang belum terisi dosen pegampu sistem akan menampilkan pemberitahuan untuk mengisi. 12. Jika ada kelas matakuliah yang belum terisi dosen pegampu sistem akan menampilkan pemberitahuan untuk mengisi. 16. Jika ada kelas matakuliah yang belum terisi dosen pegampu sistem akan menampilkan pemberitahuan untuk mengisi. 20. Jika ada kelas matakuliah yang belum terisi dosen pegampu sistem akan menampilkan pemberitahuan untuk mengisi. Nama use case Lihat Jadwal Kuliah Aktor Pengguna Diskripsi Pengguna melihat Jadwal Kuliah Prakondisi Mengaktifkan aplikasi Langkah kerja Aksi aktor Reaksi sistem 1. Memilih tombol melihat Jadwal Kuliah. 2. Sistem menampilkan Jadwal Kuliah. Alternate 2. Menu Bantuan Jika jadwal masih kosong sistem akan menampilkan pemberitahuan jadwal matakuliah tidak tersedia. Nama use case Lihat Menu Bantuan Aktor Pengguna Diskripsi Pengguna melihat Menu Bantuan Prakondisi Mengaktifkan aplikasi Langkah kerja Aksi aktor Reaksi sistem 1. Memilih tombol melihat menu bantuan. 2. Sistem menampilkan menu bantuan dalam bentuk pdf file. Alternate

3.4.3 Diagram Aktivitas untuk setiap use case

1. Case : tambah matakuliah. Aktor Sistem 2. Case : edit matakuliah. Aktor Sistem Masukkan data matakuliah Sistem mengecek data Sistem menyimpan data ke database matakuliah lengkap Tidak lengkap 3. Case : hapus matakuliah. Aktor Sistem 4. Case : lihat matakuliah. Aktor Sistem Mengedit data matakuliah Sistem mengecek data Sistem menyimpan data ke database matakuliah lengkap Tidak lengkap Memilih matakuliah yang dihapus Sistem mengecek data Sistem menghapus data matakuliah tersebut dari database 5. Case : tambah dosen. Aktor Sistem 6. Case : edit dosen. Aktor Sistem Melihat data matakuliah Sistem menampilkan data matakuliah Menu utama Masukkan data dosen Sistem mengecek data Sistem menyimpan data ke database dosen lengkap Tidak lengkap 7. Case : hapus dosen. Aktor Sistem 8. Case : lihat dosen. Aktor Sistem Mengedit data dosen Sistem mengecek data Sistem menyimpan data ke database dosen lengkap Tidak lengkap Memilih matakuliah yang dihapus Sistem mengecek data Sistem menghapus data dosen tersebut dari database 9. Case : tambah ruang. Aktor Sistem 10. Case : edit ruang. Aktor Sistem Melihat data dosen Sistem menampilkan data dosen Menu utama Masukkan data ruang Sistem mengecek data Sistem menyimpan data ke database ruang lengkap Tidak lengkap 11. Case : hapus ruang. Aktor Sistem 12. Case : lihat ruang. Aktor Sistem Mengedit data ruang Sistem mengecek data Sistem menyimpan data ke database ruang lengkap Tidak lengkap Memilih matakuliah yang dihapus Sistem mengecek data Sistem menghapus data ruang tersebut dari database 13. Case : lihat waktu dan hari. Aktor Sistem Melihat data ruang Sistem menampilkan data ruang Menu utama Melihat data waktu dan hari Sistem menampilkan data ruang Menu utama 14. Case : buat jadwal kuliah. Aktor Sistem Sistem menyimpan data ke database kelasmatakuliah dan Sistem menampilkan matakuliah semester 3 atau 4 Memilih matakuliah yang dipakai disemester 3 atau 4 dan membagi kedalam beberapa kelas Tidak Mengisi dosen pegampu Sistem mengecek apakah semua kelas matakuliah sudah memiliki dosen pegampu Sistem menampilkan matakuliah semester 1 atau 2 Memilih matakuliah yang dipakai disemester 1 atau 2 dan membagi kedalam beberapa kelas Sistem menampilkan matakuliah yang sudah dibagi dalam beberapa kelas dan meminta mengisikan dosen pegampu Buat jadwal kuliah Sistem menampilkan halaman untuk mengisi semester dan tahun ajaran Mengisi semester dan tahun ajaran Ya Sistem menyimpan data ke database kelasmatakuliah dan Sistem menampilkan matakuliah semester 5 atau 6 Ya Sistem menampilkan matakuliah yang sudah dibagi dalam beberapa kelas dan meminta mengisikan dosen pegampu Mengisi dosen pegampu Sistem mengecek apakah semua kelas matakuliah sudah memiliki dosen pegampu Tidak Memilih matakuliah yang dipakai disemester 5 atau 6 dan membagi kedalam beberapa kelas Sistem mengecek apakah semua kelas matakuliah sudah memiliki dosen pegampu Sistem menampilkan matakuliah yang sudah dibagi dalam beberapa kelas dan meminta mengisikan dosen pegampu Mengisi dosen pegampu Ya Tidak Ya Sistem menyimpan data ke database kelasmatakuliah Ya Tidak Mengisi dosen pegampu Sistem mengecek apakah semua kelas matakuliah sudah memiliki dosen pegampu Sistem menyimpan data ke database kelasmatakuliah dan Sistem menampilkan matakuliah semester 7 atau 8 Sistem menampilkan matakuliah yang sudah dibagi dalam beberapa kelas dan meminta mengisikan dosen pegampu Memilih matakuliah yang dipakai disemester 7 atau 8 dan membagi kedalam beberapa kelas Memilihmengisi jadwal permintaan Sistem menyimpan data ke database permintaan Mengklik tombol buat jadwal Sistem membuat jadwal menggunakan algoritma Simulated annealing Jadwal kelasmatakuliah satu semester tersimpan dalam table solusi 15. Case : Lihat Jadwal Kuliah. Aktor Sistem 16. Case : lihat menu bantuan. Aktor Sistem Melihat data menu bantuan Sistem menampilkan file pdf Melihat jadwal kuliah Sistem menampilkan jadwal kuliah

3.4.4 Model Kelas Analisis.

Pengguna Tambah matakuliah KontrolMatakuliah Matakuliah Edit matakuliah Hapus matakuliah Lihat matakuliah Tambah Dosen KontrolDosen Dosen Edit Dosen Hapus Dosen Lihat Dosen Pengguna Tambah Ruang KontrolRuang Ruang Edit Ruang Hapus Ruang Lihat Ruang Lihat waktu dan Hari KontrolWaktu Waktu KontrolHari Hari Lihat Bantuan KontrolMenuBantuan PDF File Buat Jadwal Kuliah Lihat Jadwal Kuliah KontrolJadwal Jadwal 3.4.5 Diagram Kelas. 1. Kelas Dosen. 2. Kelas Hari.

3. Kelas Waktu. 4. Kelas Ruang.