commit to user 17
BAB III ANALISIS KEBUTUHAN DAN PERANCANGAN
3.1 Lingkungan Implementasi
Dalam pengembangan Sistem Penjadwalan Mata Kuliah lingkungan implementasi yang digunakan selama melakukan pengembangan antara lain ada
perangkat keras dan perangkat lunak, adapun rinciannya antara lain adalah sebagai berikut :
1. Perangkat Keras
Processore
: AMD Dual-Core C-50 1.0 GHz
MemoryRAM
: 2,00 GB 2.
Perangkat Lunak
Operating System
: Windows 7 Ultimate
Script Language
: PHP OOP Pemodelan
: StarUML
Framework
: YII Framework
Web server
: XAMPP
Editor
: Notepad++
Database server
: PostgreSQL
3.2 Deskripsi Sistem
Aplikasi merupakan suatu sistem berita elektronik yang dirancang untuk memudahkan proses pemberitahuan secara elektronik, baik pada proses output
input, maupun update. Mahasiswa dapat mengetahui jadwal kuliah dengan masuk ke dalam sistem dan melihat jadwal kuliah, yang menggantikan kertas-kertas
jadwal. Proses input jadwal hanya bisa dilakukan oleh pihak yang memiliki otoritas, yaitu pihak pendidikan sebagai admin dan sekretariat jurusan serta dosen
untuk melengkapi data yang di inputkan. Setelah itu admin melakukan
generate
agar tercipta jadwal yang sesuai.
commit to user
18
3.3 Analisis Kebutuhan
3.3.1 Kebutuhan Fungsional
Tabel 3.1 Kebutuhan fungsional sistem
Kode Nama Kebutuhan
Level
FRSS-01 Sistem harus menyediakan fungsi login
sebagai otoritas hak akses pengguna sistem Admin
FRSS-02 Sistem harus harus dapat digunakan untuk
melihat data mata kuliah yang tayang Admin
FRSS-03 Sistem harus dapat digunakan untuk melihat
data ruangan kelas Admin
FRSS-04 Sistem harus dapat digunakan untuk melihat
jadwal Admin, User
FRSS-05 Sistem harus dapat digunakan untuk melihat
data dosen Admin
FRSS-06 Sistem harus dapat digunakan untuk
mengupdate data mata kuliah tayang Admin
FRSS-07 Sistem harus dapat digunakan untuk
menambah data ruangan kelas Admin
FRSS-08 Sistem harus dapat digunakan untuk
mengupdate data ruangan kelas Admin
FRSS-09 Sistem harus dapat digunakan untuk melihat
data hari dan waktu kuliah Admin
FRSS-10 Sistem
harus dapt
digunakan untuk
mengupdate data hari dan waktu kuliah Admin
FRSS-11 Sistem harus dapat digunakan untuk
menyusun jadwal
Admin
FRSS-12 Sistem harus dapat digunakan untuk
mengupdate data dosen Admin
commit to user
19
FRSS-13 Sistem harus dapat digunakan untuk melihat
data penugasan dosen terhadap mata kuliah tayang
Admin
FRSS-14 Sistem harus dapat digunakan untuk
mengupdate data penugasan dosen terhadap mata kuliah tayang
Admin
FRSS-15 Sistem harus dapat digunakan untuk melihat
data waktu dosen berhalangan Admin
FRSS-16 Sistem harus menyediakan data jadwal
untuk sistem lain
3.3.2 Kebutuhan Non Fungsional
Tabel 3.2 Kebutuhan non fungsional sistem NFRSS-01
Sistem harus dapat mengurangi penjadwalan secara manual NFRSS-02
Sistem harus dapat digunakan di berbagai jurusan NFRSS-03
Sistem hanya dapat melakukan penyusunan jadwal satu kali setiap semester
3.4 Perancangan Sistem
3.4.1 Pemodelan
Use Case
1. Deskripsi Aktor
Tabel 3.3 Deskripsi Aktor
Nama Deskripsi
Admin Adalah orang yang bertanggung jawab mengelola
dan melakukan generate jadwal setiap awal semester. User
Adalah orang yang melihat jadwal. Sistem Penilaian
Adalah sistem external yang bertugas memberikan data dosen.
commit to user
20
2. Hak dan Kewajiban Aktor
Tabel 3.4 Hak dan Kewajiban Aktor
Nama Deskripsi
Bag. Pendidikan Admin -
Mengelola keseluruhan sistem. Mendaftarkan dosen yang akan di
jadwalkan. -
Melengkapi data dosen yang telah di inputkan,
- Mengisi ketersediaan waktu dosen.
- Mendaftarkan mata kuliah yang aktif.
- Mendaftarkan ruang dan kelas.
- Melakukan
generate
jadwal. User
- Melihat jadwal yang telah di
generate.
Sistem Penilaian -
Memberikan data dosen.
3. Deskripsi
Use Case
Tabel 3.5 Deskripsi
Use Case
Nama Deskripsi
Login Fungsi yang digunakan sebagai autentikasi
untuk memberikan hak akses sesuai yang dimiliki masing-masing user agar dapat
menggunakan fungsi-fungsi lain di dalam sistem.
Kelola Mata Kuliah Fungsi yang digunakan untuk mengelola
Mata Kuliah, baik penambahan ataupun menonaktifkan.
Kelola Ruangan Fungsi yang digunakan untuk mengelola
Ruangan, baik
penambahan, mengedit
ataupun menghapus. Kelola Waktu Kuliah
Fungsi yang digunakan untuk mengelola waktu kuliah meliputi hari dan jam.
commit to user
21
Kelola Dosen Fungsi yang digunakan untuk mengelola Data
dosen yang didapat dari sistem penilaian. Kelola Penugasan Dosen
Fungsi yang digunakan untuk mengelola data dosen dan mata kuliah yang akan diampu.
Kelola Waktu Dosen Fungsi yang digunakan untuk mengelola
waktu dosen yang berhalangan pada hari tertentu.
Kelola Jadwal Fungsi yang digunakan untuk mengelola
Jadwal berdasarkan waktu perkuliahan, mata kuliah tayang, ruang kuliah, dosen dan juga
waktu dosen yang berhalangan
4. Diagram
Use Case
Gambar 3.1
Use Case Diagram
Aplikasi Penjadwalan Mata Kuliah
Bag. PendidikanAdmin Memasukkan Data Dosen
Memasukkan Data Mata Kuliah Melihat Jadwal
Memasukkan ketersediaan waktu dosen
Generate Jadwal Memasukkan Hari Jam Kuliah
Melihat Daftar Dosen Melihat Daftar Mata Kuliah
Melihat Daftar Mahasiswa
Melihat Daftar Ruang Menerima Data Dosen
Menerima Data Mahasiswa Sistem Penilaian
include
Validasi Mahasiswa
include include
include include
include include
include
Memasukkan Data Tugas
include
include
Memasukkan Data Ruang Login
include
include include
include include
include include
include include
include include
include include
include
User
commit to user
22
3.4.2 Activity Diagram
a.
Activity Diagram Authentication User
Form Login
Masukkan Username
Masukkan Password cocok dbPass
Ya Valid ?
Tidak
Gambar 3.2
Activity Diagram Authentication User
b.
Activity Diagram Input
Mata Kuliah
Masukkan Kode Mata Kuliah
Masukkan Nama Mata Kuliah
Masukkan Semester Masukkan Jumlah SKS
Cek Kode Mata Kuliah Belum
Sudah
Simpan
Gambar 3.3
Activity Diagram Input
Mata Kuliah
commit to user
23
c.
Activity Diagram Input
Ruang Kuliah
Masukkan Nama Ruang Masukkan Kapasitas Ruangan
Simpan
Gambar 3.4
Activity Diagram Input
Ruang Kuliah d.
Activity Diagram Input
Hari dan Slot Waktu
Masukkan Hari
Masukkan Slot Waktu
Simpan Cek Hari
Ya
Cek Slot Waktu Ya
Tidak
Tidak
Gambar 3.5
Activity Diagram Input
Hari dan Slot Waktu
commit to user
24
e.
Activity Diagram Input
Dosen
Masukkan Kode Dosen Masukkan Nama Dosen
Simpan Periksa kode dosen apakah sudah ada ?
Belum Sudah
Gambar 3.6
Activity Diagram Input
Dosen f.
Activity Diagram
Penugasan Dosen Terhadap Mata Kuliah
Pilih Mata Kuliah Pilih Dosen yang di tugasi mengajar
Masukkan Kelas Masukkan Jumlah Mahasiswa
Simpan
Gambar 3.7
Activity Diagram
Penugasan Dosen Terhadap Mata Kuliah
commit to user
25
g.
Activity Diagram Input
Waktu Dosen
Pilih nama dosen Masukkan hari dan waktu berhalangan mengajar
simpan
Gambar 3.8
Activity Diagram Input
Waktu Dosen h.
Activity Diagram
Alur Algoritma
Data Penjadwalan Mengambil data Penugasan
Mengambil data Mata kuliah Mengambil data dosen
Mengambil data Ruang Mengambil data waktu
Statement Jadwal Mata Kuliah
Simpan Ya
Belum
Gambar 3.9
Activity Diagram
Alur Algoritma i.
Activity Diagram
Lihat Jadwal
Pilih Jadwal Tampilkan Jadwal
Gambar 3.10
Activity Diagram
Lihat Jadwal
commit to user
26
3.4.3
Class Diagram
Tahap Analisis
Class Diagram
tahap analisis merupakan
diagram
yang menjelaskan hubungan antar class secara sederhana.
a. Login
Login Login view
Session Control Admin
User
Gambar 3.11
Class Diagram
Login b.
Kelola Mata Kuliah
Input MK
Edit MK
Lihat MK ControlMK
MK Bag. PendidikanAdmin
Gambar 3.12
Class Diagram
Kelola Mata Kuliah c.
Kelola Ruangan
Input Ruangan
Edit Ruangan
Lihat Ruangan ControlRuangan
Ruangan Bag. PendidikanAdmin
Gambar 3.13
Class Diagram
Kelola Ruangan
commit to user
27
d. Kelola Waktu Kuliah
Hari Waktu
Input Hari
Edit Hari
Input Waktu Lihat hari
Edit waktu Lihat Waktu
ControlHariWaktu
Bag. PendidikanAdmin Admin
Gambar 3.14
Class Diagram
Kelola Waktu Kuliah
e. Kelola Dosen
ControlDosen Dosen
Lihat Dosen
Edit Dosen Bag. PendidikanAdmin
Input Dosen
Gambar 3.15
Class Diagram
Kelola Dosen
commit to user
28
f. Kelola Penugasan Dosen
Dosen Lihat Dosen
Edit Dosen
Edit MK Lihat MK
MK
Penugasan ControlTugas
Bag. PendidikanAdmin
Gambar 3.16
Class Diagram
Kelola Penugasan Dosen
g. Kelola Waktu Dosen
Dosen Lihat Dosen
Edit Dosen Hari
Waktu WaktuDosen
ControlWaktuDosen Input Hari Waktu
Edit Hari Waktu Lihat Hari Waktu
Bag. PendidikanAdmin
Gambar 3.17
Class Diagram
Kelola Waktu Dosen
commit to user
29
h. Kelola Jadwal
Hari Waktu
Dosen MK
Ruangan Penugasan
WaktuDosen ControlJadwal
Jadwal Lihat Dosen
Lihat Hari Waktu Lihat MK
Lihat Ruangan Lihat MK
Bag. PendidikanAdmin
Gambar 3.18
Class Diagram
Kelola Jadwal
3.4.4
Sequence Diagram
a. Login
: Login view boundary
: Login control
: User : User
entity : Session Control
control 1 : setUsername
2 : setPassword 3 : getUsername
4 : getPassword 5 : cekFormat
6 : displayPesan 7 : getUsername
8 : getPassword 9 : getLevel
10 : getUsername 11 : cekDatabase
12 : displayPesan 13 : koneksi
Gambar 3.19
Sequence Diagram
Kelola Jadwal
commit to user
30
b. Kelola Mata Kuliah
: Bag. PendidikanAdmin
: Input MK boundary
: Edit MK boundary
: Lihat MK boundary
: Session Control control
: ControlMK control
: MK entity
1 : initKoneksi 2 : getKodeMK
3 : setNamaMK 4 : setSKSMK
5 : setSemesterMK
6 : setKodeMK 7 : setNamaMK
8 : setSKSMK 9 : setSemesterMK
10 : getKodeMK 11 : getNamaMK
12 : getSKSMK 13 : getSemesterMK
14 : cekKodeMK 15 : pesan
16 : setKodeMK 17 : setNamaMK
18 : setKodeMK 19 : setSKSMK
20 : setNamaMK 21 : SetSemesterMK
22 : setSKSMK 23 : getKodeMK
24 : setSemesterMK 25 : getNamaMK
26 : getSKSMK 27 : getSemesterMK
28 : setKodeMK 29 : setNamaMK
30 : setSKSMK 31 : setSemesterMK
32 : pesansukses
Gambar 3.20
Sequence Diagram
Kelola Mata Kuliah
commit to user
31
c. Kelola Ruangan
Gambar 3.21
Sequence Diagram
Kelola Ruangan
: Input Ruangan boundary
: Edit Ruangan boundary
: Lihat Ruangan boundary
: ControlRuangan control
: Session Control control
: Bag. PendidikanAdmin : Ruangan
entity 1 : initKoneksi
2 : getIdRuang 3 : setNamaRuang
4 : setNamaRuang
5 : getNamaRuang6 : cekKodeRuang 7 : PesanSukses
8 : autoKodeRuang 9 : getNamaRuang
10 : getNamaRuang 11 : setNamaRuang
12 : cekKodeRuang 13 : getNamaRuang
14 : pesanSukses
commit to user
32
: Bag. PendidikanAdmin : Lihat Hari Waktu
boundary : Session Control
control
: Edit Hari Waktu boundary
: Input Hari Waktu boundary
: Hari entity
: Waktu entity
: ControlHariWaktu control
1 : initKoneksi 2 : getKodeHari
3 : getKodeWaktu 4 : setNamaHari
5 : setWaktuMulai 6 : setWaktuSelesai
7 : setNamaHari 8 : setWaktuMulai
9 : setWaktuSelesai 10 : getNamaHari
11 : getWaktuMulai 12 : getWaktuSelesai13 : getNamaHari
14 : getWaktuMulai 15 : setNamaHari
16 : getWaktuSelesai 17 : setWaktuMulai
18 : cekKode 19 : setWaktuSelesai
20 : PesanSukses 21 : getNamaHari
22 : getWaktuMulai 23 : getWaktuSelesai
24 : getNamaHari 25 : getWaktuMulai
26 : getWaktuSelesai 27 : cekKode
28 : pesanSukses
d. Kelola Waktu Kuliah
Gambar 3.22
Sequence Diagram
Kelola Waktu Kuliah
commit to user
33
e. Kelola Dosen
Gambar 3.23
Sequence Diagram
Kelola Dosen
: Bag. PendidikanAdmin : Lihat Hari Waktu
boundary : Session Control
control
: Edit Hari Waktu boundary
: Input Hari Waktu boundary
: Hari entity
: Waktu entity
: ControlHariWaktu control
1 : initKoneksi 2 : getKodeHari
3 : getKodeWaktu 4 : setNamaHari
5 : setWaktuMulai 6 : setWaktuSelesai
7 : setNamaHari 8 : setWaktuMulai
9 : setWaktuSelesai 10 : getNamaHari
11 : getWaktuMulai 12 : getWaktuSelesai13 : getNamaHari
14 : getWaktuMulai 15 : setNamaHari
16 : getWaktuSelesai 17 : setWaktuMulai
18 : cekKode 19 : setWaktuSelesai
20 : PesanSukses 21 : getNamaHari
22 : getWaktuMulai 23 : getWaktuSelesai
24 : getNamaHari 25 : getWaktuMulai
26 : getWaktuSelesai 27 : cekKode
28 : pesanSukses
commit to user
34
3.4.5
Class Diagram
a. Login
User Login view
boundary +setUsername
+setPassword +getUsername
+getPassword +displayMessage
User
entity +getUsername
+getPassword +getLevel
Session Control
control +koneksi
Gambar 3.24
Class Diagram
Login
b. Kelola Mata Kuliah
Bag. PendidikanAdmin
Edit MK
boundary +setKodeMK
+getKodeMK +setUpdateDataMK
+getUpdateDataMK +displayMessage
Input MK
boundary +setKodeMK
+getKodeMK +setDataMK
+getDataMK +displayMessage
Lihat MK
boundary +getKodeMK
+getNamaMK +getSKSMK
+getSemesterMK
ControlMK
control +cekKode
+initKoneksi
MK
entity +kodeMK
+namaMK +SKSMK
+semesterMK +setKodeMK
+setDataMK +setUpdateDataMK
Gambar 3.25
Class Diagram
Kelola Mata Kuliah
commit to user
35
a. Kelola Ruangan
Bag. PendidikanAdmin Edit Ruangan
boundary +setIdRuangan
+setUpdateNamaRuangan +getIdRuangan
+getUpdateNamaRuangan +DisplayMessage
Input Ruangan
boundary +setIdRuangan
+setNamaRuangan +getIdRuangan
+getNamaRuangan +DisplayMessage
Lihat Ruangan
boundary +getIdRuangan
+getNamaRuangan
ControlRuangan
control +cekIdRuangan
+initKoneksi
Ruangan
entity +IdRuangan
+NamaRuangan +setIdRuangan
+setNamaRuangan +setUpdateNamaRuangan
Gambar 3.26
Class Diagram
Kelola Ruangan
b. Kelola Waktu Kuliah
Bag. PendidikanAdmin Input Hari Waktu
boundary +setHariWaktu
+getHariWaktu +displayMessage
Edit Hari Waktu
boundary +setUpdateHariWaktu
+getUpdateHariwaktu
Lihat Hari Waktu
boundary +getIdHari
+getNamaHari +getIdWaktu
+getWaktuMulai +getWaktuSelesai
ControlHariWaktu
control +cekIdHari
+cekIdWaktu +initKoneksi
Hari
entity +IdHari
+NamaHari +setIdHari
+setNamaHari
Waktu
entity +IdWaktu
+WaktuMulai +WaktuSelesai
+setIdWaktu +setWaktuMulai
+setWaktuSelesai
Gambar 3.27
Class Diagram
Kelola Waktu Kuliah
commit to user
36
c. Kelola Dosen
Dosen
entity +IdDosen
+NamaDosen +NIPDosen
+TelpDosen +setIdDosen
+setUpdateDataDosen
Lihat Dosen
boundary +getDataDosen
Edit Dosen
boundary +setIdDosen
+setUpdateDataDosen +getIdDosen
+getUpdateDataDosen +DisplayMessage
ControlDosen
control +cekId
+initKoneksi
Bag. PendidikanAdmin
Gambar 3.28
Class Diagram
Kelola Dosen
3.4.6
F lowchart
Proses Penjadwalan
Mulai Jumlah Tugas = n
i = 1
i = Jumlah Tugas
Pilih Random cell
a = random cell
status a = sudah Cell [ i ] = a
i = i++ Cetak
kelas [ i ]
Selesai
Gambar 3.29
Flowchart
Proses Penjadwalan Cell merupakan suatu blok atau bagian yang meliputi waktu, hari dan
ruangan. Pilih Random cell merupakan pemilihan secara acak dari cell tersebut.
commit to user
37
3.5 Desain
Interface
Interface
yang disediakan meliputi dua halaman diantaranya adalah halaman login dan halaman utama.
1. Halaman Login
Gambar 3.30 Halaman Login Untuk admin, jurusan, dosen, maupun mahasiswa semuanya
menggunakan halaman login yang sama, yang akan membedakan untuk menuju halaman utama admin, jurusan, dosen, maupun mahasiswa adalah
proses redirecting untuk memposisikan pada tugasnya masing-masing.
2. Halaman Utama
Gambar 3.31 Halaman Utama
Konten
Username : Password :
Header
Footer
Login
Header
Footer Menu Navigasi
commit to user
38
Halaman utama untuk admin, jurusan, dosen, maupun mahasiswa semuanya adalah sama, yang akan membedakan fungsionalitasnya adalah
komponen-komponen halaman yang berbeda. Jadi untuk admin sistematau bagian pendidikan akan disediakan halaman untuk mengelola sistem,
sedangkan jurusan akan disediakan halaman untuk menambah nama dosen dan penugasan dosen, dan untuk halaman dosen akan disediakan halaman
untuk memasukkan ketersediaan waktu dosen.
commit to user
39
BAB IV IMPLEMENTASI
4.1 Implementasi Sistem
Sesuai dengan perancangan sistem yang telah dikemukakan sebelumnya, pada aplikasi penjadwalan mata kuliah terdapat 4 macam
User
yaitu Bag.Pendidikanadmin, Jurusan, Dosen dan Mahasiswa. Berikut ini merupakan
implementasi halaman yang dapat diakses oleh masing-masing
User
. 4.1.1
Tampilan Halaman Login
Gambar 4.1 Halaman Login Halaman ini adalah halaman
login
user yang sudah terdaftar dan admin akan
login
pada halaman ini, karena data bersifat pribadi maka selain user yang sudah terdaftar dan admin, tidak akan bisa mengakses halaman ini.
4.1.2 Halaman Input Mata Kuliah
Gambar 4.2 Halaman Tambah Mata Kuliah Halaman ini merupakan halaman yang dapat diakses oleh admin. Untuk
memasukan mata kuliah perlu memasukkan kode mata kuliah, dan di cek terlebih dahulu. Admin dapat menginputkan Mata Kuliah, maupun mengedit Mata Kuliah.