• Tidak ada hasil yang ditemukan

BAB III ANALISIS DAN DESAIN SISTEM. Tabu Search ini menggunakan metode System Development Life Cycle (SDLC).

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB III ANALISIS DAN DESAIN SISTEM. Tabu Search ini menggunakan metode System Development Life Cycle (SDLC)."

Copied!
45
0
0

Teks penuh

(1)

BAB III

ANALISIS DAN DESAIN SISTEM

Langkah-langkah yang dilakukan dalam pelaksanaan analisis dan perancangan sistem aplikasi penjadwalahan pada SMPN 2 Waru dengan menggunakan metode Tabu Search ini menggunakan metode System Development Life Cycle (SDLC). Tahapan tersebut dapat dilihat pada gambar 3.1. tahapan dilakukan tidak membahas tentang kebijakan dan perencanaan sistem sampai dengan implementasi, sedangkan tahap maintenance tidak dimasukkan ke dalam langkah pelaksanaan analisis dan perancangan.

Gambar 3.1 Systems Development Life Cycle Waterfall Model

Kebijakan dan perencanaan sistem

Analisis Sistem

Desain (perancangan) Sistem Secara Umum

Desain (perancangan) Sistem Secara Terinci

Seleksi Sistem

Implementasi (penerapan) sistem

Perawatan Sistem

Awal Proyek Sistem

Manajemen Sistem

(2)

3.1 Analisis Sistem

Terdapat beberapa langkah analisis sistem dibagi dalam 3 tahap, yaitu:

1. Identify (Mengidentifikasi masalah)

2. Understant (Memahami kerja dari sistem yang ada) 3. Analyze (Menganalisis sistem)

3.1.1 Mengidentifikasi masalah

Pada tahap analisis sistem langkah pertama yang dilakukan ialah mengidentifikasi masalah terlebih dahulu. Dalam langkah mengidentifikasi masalah terbagi atas beberapa bagian, yaitu:

1. Mengidentifikasi penyebab masalah

Penjadwalan mata pelajaran yang terjadi di SMPN 2 Waru dilakukan disetiap awal tahun ajaran. Penjadwalan dilakukan oleh bagian kurikulum dan dibantu oleh bagian tata usaha. Pihak tata usaha menerima data dari pihak kurikulum yang dibutuhkan untuk melakukan penjadwalan mata pelajaran. Data tersebut akan diolah untuk dilakukan penjadwalan mata pelajaran.

Proses penjadwalan dimulai dengan menjadwalakan matapelajaran terlebih dahulu ditiap kelasnya. Setelah mata pelajaran sudah dijadwalkan, kemudian melakukan plotting mengajar guru sesuai dengan mata pelajaran yang diajarkan. Setelah melakukan plotting, pihak tata usaha akan mencocokan kembali dengan jadwal MGMP guru, jika ada yang bertabrakan dengan jadwal MGMP, maka pihak tata usaha akan melakukan plotting kembali jadwal mengajar guru.

(3)

Setelah proses pengolahan data menjadi jadwal pelajaran selesai, hasil berupa draft jadwal pelajaran kemudian diserahkan kembali kepada kurikulum untuk persetujuan. Ketika draft sudah disetujui maka jadwal pelajaran sudah fix, jika belum pihak tata usaha akan kembali melakukan kegiatan penjadwalan mata pelajaran.

Gambar 3.2 Dokumen Flow Penjadwalan Mata Pelajaran .

Document Flow Penjadwalan Mata Pelajaran

Tata Usaha Kurikulum Ph as e Jadwal MGMP Melakukan penjadwalan matapelajaran Struktur Organisasi

Data Mata Pelajaran

Data Guru Data Kelas Draft Jadwal Pelajaran Disetujui? Menyetujui Jadwal Tidak Jadwal Pelajaran Ya Mencocokan dengan jadwal MGMP Menjadwalkan jadwal mengajar guru Jadwal Crash? 18

(4)

Terdapat beberapa masalah yang terjadi pada SMPN 2 Waru dengan penjadwalan mata pelajaran saat ini antara lain

a. Tidak meratanya jam mengajar guru antara guru yang memiliki jabatan struktural atau tidak ditiap minggunya.

b. Penjadwalan yang dilakukan menimbulkan tidak meratanya jam mengajar guru perharinya dalam satu minggu.

c. Jadwal yang dihasilkan tidak memperhatikan beban/kompetensi mata pelajaran.

2. Mengidentifikasi titik keputusan

Titik keputusan menunjukkan suatu kondisi yang menyebabkan suatu masalah terjadi. Dalam proses penjadwalan mata pelajaran di SMPN 2 Waru titik keputusan berada pada:

a. Penjadwalan yang dilakukan kurang memperhatikan jam mengajar tambahan untuk guru yang memiliki jabatan struktural.

b. Penjadwalan hanya dilakukan dengan memperhatikan jam mengajar guru, dan penjadwalan yang dilakukan tidak memperhatikan dari sisi komposisi matapelajaran di tiap kelasnya. 3. Mengidentifikasi personil-personil kunci

Personil kunci merupakan personil atau bagian yang bertanggung jawab atas penjadwalan mata pelajaran. Dalam hal ini yang bertanggung jawab dalam proses penjadwalan mata pelajaran di SMPN 2 Waru adalah bagian kurikulum.

(5)

3.1.2 Memahami kerja dari sistem yang ada

Langkah kedua dari tahap analisis sistem adalah memahami kerja dari sistem yang ada. Langkah kedua dari analisis sistem dapat terdiri dari beberapa tugas yang perlu dilakukan, yaitu :

a. Menentukan jenis penelitian

Dalam penelitian ini jenis penelitian yang dipilih adalah wawancara dan obeservasi untuk mendapatkan data-data yang diperlukan untuk membangun aplikasi penjadwalan mata pelajaran pada SMPN 2 Waru.

b. Merencanakan jadwal penelitian

Perencanaan jadwal penelitian bertujuan agar penelitian dapat dilakukan secara efektif dan efisian, maka jadwal dari penelitian harus direncanakan terlebih dahulu yang meliputi:

- Dimana penelitian akan dilakukan - Apa dan siapa yang akan diteliti - Siapa yang akan meneliti - Kapan penelitian dilakukan c. Membuat penugasan penelitian

Dalam penyelesaian tugas akhir ini tidak dilakukan secara berkelompok, jadi tugas seluruhnya diambil oleh penulis.

d. Membuat agenda wawancara

Sebelum suatu wawancara dilakukan, agenda wawancara sebaiknya disusun terlebih dahulu. Hal ini dilakukan agar data yang dibutuhkan dari wawancara yang dilakukan di SMPN 2 Waru mengenai penjadwalan mata pelajaran dapat terpenuhi seluruhnya.

(6)

e. Mengumpulkan hasil penelitian

Terdapat beberapa fakta yang ditemukan antara lain mata pelajaran yang diajarkan (Lampiran 4), jumlah guru yang ada (lampiran 3) serta beberapa constraint yang akan digunakan dalam melakukan penjadwalan, seperti:

1. Jadwal MGMP guru

Constraint jadwal MGMP guru berfungsi untuk melihat kegiatan guru yang memiliki kegiatan MGMP, sehingga penjadwalan yang dihasilkan dari guru yang memiliki jadwal MGMP tidak mengganggu kegiatan belajar mengajar.

Tabel 3.1 Jadwal MGMP Guru

Nama Guru Nama Mata Pelajaran Jadwal MGMP Dra. NANIK SRI HARIANI. MM ILMU PENGETAHUAN

ALAM Selasa

WAHYU RATNA DWI.A.S.Pd,MM

ILMU PENGETAHUAN

SOSIAL Kamis

Drs. SUGONO, MM BAHASA INDONESIA Senin

Dra. HUBIBAH BAHASA INGGRIS Rabu

ASMA',S.Pd MATEMATIKA Sabtu

Dra. SRI TAHAN UJININGTYAS BP / BK Rabu

KARTONO,S.Pd PEND JASMANI DAN

KESEHATAN Jumat

Drs. ASMUNI PENDIDIKAN AGAMA

ISLAM Senin

Dra. Rr.DUDUN HARIYATI,MM PPKn Selasa

SITI MARLIYAH PRAKARYA Kamis

SUNARYO,S.Pd. MM SENI BUDAYA Rabu

(7)

2. Jam tambahan jabatan struktural

Constraint jam tambahan jabatan struktural dipehatikan guna mengurangi beban mengajar guru yang memiliki jabatan struktural. Sehingga guru dapat mengerjakan tugas sebagai pengemban jabatan struktural dengan baik tanpa mengganggu kegiatan mengajar. Dapat diihat pada tabel 1.1.

3. Maksimal jam mengajar perhari

Constraint maksimal jam mengajar perhari berfungsi untuk membatasi jam mengajar guru perharinya.

Tabel 3.2 Jam Maksimal Perhari

Hari Jam Maksimal

Senin – Kamis 9 Jam

Jumat 6 Jam

Sabtu 2 Jam

4. Maksimal jam berurutan

Constraint maksimal jam berurutan berfungsi untuk membatasi maksimal jam berurutan pada suatu pelajaran. Hal ini di perhatikan berkaitan dengan maksimal jam perminggu mata pelajaran yang telah ditentukan. Maksimal jam berurutan yang diterapkan pada contoh kasus ini adalah 3 jam secara berurutan

5. Maksimal bobot mata pelajaran perhari

Constraint maksimal bobot mata pelajaran perhari berfungsi untuk menghindari terjadwalkan nya mat apelajaran dengan kompetensi pelajaran yang tidak mudah dalam satu hari di setiap kelasnya. Pada

(8)

contoh kasus ini maksimal bobot perhari adalah 25 rincian bobot matpel dapat dilihat pada tabel dibawah ini.

3.1.3 Menganalisis Sistem

Langkah ini dilakukan berdasarkan data yang telah diperoleh dari hasil penelitian uang telah dilakukan, analisis yang harus dilakukan ialah:

1. Menganalisis kelemahan sistem

Dari hasil wawancara dan observasi yang dilakukan terhadap sistem penjadwalan mata pelajaran yang terjadi di SMPN 2 Waru yang berjalan, ditemukan beberapa kelemahan sistem. Diantaranya adalah:

a. Penjadwalan mata pelajaran memakan waktu yang cukup lama, yaitu tiga sampai lima hari untuk menghasilkan draft mata pelajaran

b. Penjadwalan kurang memperhatikan jam tambahan guru yang memiliki jabatan struktural.

c. Penjadwalan yang dilakukan tidak memperhatikan komposisi matapelajaran perharinya.

d. Penjadwalan tidak memperhatikan jam maksimal mengajar guru perhari.

e. Penjadwalan yang dilakukan tidak memperhatikan jadwal MGMP guru.

2. Menganalisis kebutuhan informasi pengguna

Tabel 3.3 Kebutuhan Informasi Pengguna

No User Tugas User Requirement

1 Bagian a. Memasukkan data guru, a. Data guru, jabatan, kelas

(9)

Kurikulum jabatan, kelas dan mata pelajaran

b. Memasukkan Constraint-constraint yang harus diperhatikan

c. Melakukan proses penjadwalan

dan mata pelajaran yang dimasukkan kedalam sistem harus lengkap dan valid.

b. Constraint yang di masukkan harus sesuai dengan ketentuan yang berlaku.

c. Proses penjadwalan di

lakukan dengan menggunakan metode Tabu Search

2 Guru a. Melihat jadwal mengajar guru

a. Jadwal mengajar berdasarkan hasil dari

penjadwalan yang dilakukan

Pada aplikasi penjadwalan mata pelajaran ini terdapat dua user yaitu Bagian Kurikulum dan Guru serta memiliki peran yang berbeda sesuai dengan tugas dan wewenangnya.

3. Menganalisis Kebutuhan Data

Dari analisis kebutuhan pengguna yang telah dibuat, maka dibutuhkan data-data yang nantinya akan menunjang aplikasi yang akan dirancang, data-data-data-data tersebut meliputi:

(10)

a. Data Jabatan

Data jabatan adalah data yang dimasukkan berdasarkan jabatan struktur organisasi yang masih berlaku.

b. Data Guru

Data guru diperoleh dari bagian kurikulum. Dalam aplikasi penjadwalan ini data guru digunakan sebagai data master yang berfungsi sebagai data yang mendukung proses penjadwalan.

c. Data Mata Pelajaran

Data mata pelajaran yang dimasukkan ialah mata pelajaran yang ada pada SMPN 2 Waru.

d. Data Kelas

Data kelas diperoleh dari kelas-kelas yang ada di SMPN 2 Waru di tahun ajaran tersebut.

e. Data Jadwal MGMP

Data jadwal MGMP didapat dari jadwal yang ditentukan oleh PGRI Ranting Waru.

f. Data Batas Maksimal Jam Mengajar Guru Perhari

Batas mengajar dimasukkan berdasarkan ketentuan yang berlaku di SMPN 2 Waru.

g. Data Maksimal Bobot Mata Pelajaran Perhari

Bobot Mata Pelajaran dimasukkan berdasarkan tingkat kesulitan atau kompetensi mata pelajaran.

h. Data Maksimal Mata Pelajaran perhari

Data maksimal mata pelajaran perhari dimasukkan berdasarkan hari dan ketentuan dari dinas pendidikan setempat.

(11)

3.2 Desain Sistem

3.2.1 Desain Sistem Secara Umum

Pada penelitian ini pendekatan yang dilakukan bukanlah pendekatan terstruktur, melainkan berbasis objek. Hal ini dikarenakan proses penjadwalan adalah bagian dari proses yang besar dari suatu kegiatan akademik di SMPN 2 Waru. Oleh sebab itu desain yang digunakan untuk menggambarkan adalah Use Case Diagram, Activity Diagram dan Sequance Diagram. Dalam desain system secara umum juga berisi tentang gambaran blok diagram yang berfungsi untuk menggambarkan dengan jelas mengenai proses input proses output dari tiap-tiap fungsi sehingga mempermudah dalam pengerjaaan pembuatan perangkat lunak.

Gambar 3.3 Boxplot Penjadwalan Mata Pelajaran

Penjadwalan Mata Pelajaran

Proses Input Output Ph as e Penjadwalan Mata Pelajaran dengan Metode

Tabu Search

Jadwal Pelajaran Siswa

Membuat Laporan Jam Mengajar

Laporan Jam mengajar per minggu Batas Matpel perhari

tiap kelas

Batas maksimal jam mengaajar guru per hari

Batas bobot MatPel perhari

Data Jadwal MGMP

Jadwal Mengajar Guru Mengelola Data Constraint

Data Constraint

Data Jadwal MGMP

Data Guru

Data Kelas

Data Mata Pelajaran

Data Jabatan

(12)

Proses mengelola data constraint mendapat masukkan dari kondisi-kondisi yang harus diperhatikan ketika melakukan penjadwalan. Seperti batas maksimal jam pada satu mata pelajaran di satu kelas per hari, batas jam mengajar guru perhari, jadwal MGMP dan batas matpel dengan bobot yang sama berat perhari. Proses ini akan menghasilkan data constraint dan data jadwal MGMP.

Proses kedua adalah menjadwalkan dengan menggunakan metode tabu search dimana proses ini mendapat masukkan dari data master guru, kelas, mata pelajaran dan jabatan serta mendapat masukkan dari proses sebelumnya. Proses penerapan tabu search dapat dilihat pada gambar 3.4 yaitu flowchart penerapan tabu search.

(13)

Gambar 3.4 flowchart penerapan metode tabu search

Pertama mengambil data guru yang diletakkan di sebuah array untuk dilakukan perulangan sebanyak jumlah guru yang ada. Kemudian mengambil data kelas dan dimasukkan kedalam array untuk dilakukan perulangan sebanyak

Start

$guru[] = data guru

$kelas[] = data kelas

$hari = 1;

$jam = 1;

mengambil data constraint

Constraint1 sesuai? Constraint2 sesuai? Constraint3 sesuai? Simpan kedalam tabulist $jam = $jam + 1; $jam > 9? Y Y Y Tidak Tidak $hari = $hari + 1; $hari > 6? $kelas[] last record? $guru[] last record? End Y Y Y 1 1 2 3 4 2 3 4 28

(14)

jumlah kelas juga. Setelah itu melakukan perulangan sebanyak hari aktif sekolah, dalam sekolah ini menerapkan enam hari aktif sekolah. Kemudian melakukan perulangan sebanyak jam pelajaran yang berlaku disekolah. Selanjutnya mengambil semua data constraint yang dibutuhkan. Untuk dilakukan pengecekan apakah data memenuhi constraint yang diinginkan atau tidak. Jika memenuhi maka akan disimpan kedalam tabu list. Jumlah constraint dapat bertambah sesuai dengan kebutuhan dalam penjadwalan mata pelajaran. Proses ini diulang hingga data guru yang terakhir.

Proses berikutnya adalah pembuatan laporan, dimana mendapat masukan (input) berupa hasil dari proses penjadwalan mata pelajaran. Dan akan menghasilkan laporan jam mengajar perminggu

a. Use Case System Penjadwalan

Gambar 3.5 Use Case System Penjadwalan Mata Pelajaran

Pada gambar 3.3 dijelaskan tentang siapa aktor yang akan terlibat di sistem penjadwalan mata pelajaran ini. Pada sistem ini memiliki dua aktor yaitu Bagian Kurikulum selaku business aktor dan guru, bagian kurikulum dapat melakukan 29

(15)

penjadwalan mata pelajaran sedangkan guru hanya melihat hasil penjadwalan mata pelajaran.

b. Activity Diagram

Activity diagram digunakan untuk menggambarkan workflow (aliran kerja) dari sebuah sistem. Dalam aplikasi penjadwalan mata pelajaran ini terdapat tiga aktivity diagram yaitu activity diagram memasukkan constraint, menjadwalkan mata pelajaran dan melihat jadwal mata pelajaran.

1. Activity Diagram Memasukkan Constraint

Gambar 3.6 Activity Diagram menyimpan constraint

Pada gambar 3.4 menjelaskan tentang activity diagram menyimpan constraint. Dimulai dari bagian kurikulum membuka aplikasi dan system akan menampilkan halaman utama, setelah itu bagian kurikulum memilih halaman 30

(16)

memasukkan constraint yang dibutuhkan untuk melakukan penjadwalan. Setelah itu bagian kurikulum memasukkan constraint kemudian menyimpannya.

2. Activity Diagram Menjadwalkan Mata Pelajaran

Gambar 3.7 Activity Diagram Menjadwalkan Mata Pelajaran

Pada gambar 3.5 menjelaskan mengenai activity diagram menjadwalkan mata pelajaran. Dimulai dari membuka halaman utama, kemudian membuka halaman penjadwalan mata pelajaran. Setelah itu bagian kurikulum menekan tombol proses. Setelah itu system akan menjadwalkan secara otomatis dengan menggunakan metode tabu search. Hasil penjadwalan akan ditampilkan sebelum disimpan oleh bagian kurikulum.

(17)

3. Activity Diagram Melihat Jadwal Mata Pelajaran

Gambar 3.8 Activity Diagram Bag. Kurikulum Melihat Jadwal

Pada gambar 3.6 menjelaskan tentang activity diagram melihat jadwal. Bagian kurikulum atau pun guru dapat melihat hasil dari penjadwalan yang telah dilakukan.

c. Flow Of Event

Flow of event digunakan untuk menjelaskan kondisi apa yang harus terpenuhi agar sistem dapat berjalan serta kondisi akhir atau hasil dari aplikasi, dan menerangkan tentang bagaimana reaksi antar aktor dan sistem.

(18)

1. Flow Of Event Memasukkan Constraint

Tabel 3.4 Flow of Event Memasukkan Constraint

Nama Use Case Fungsi Memasukkan Constraint

Actor Bagian Kurikulum

Deskripsi Fungsi ini merupakan suatu alur proses yang dilakukan untuk memasukkan constraint yang akan menjadi acuan dari aplikasi

Kondisi Awal 1. User Sudah Login

2. Data Batas Maksimal Jam Mengajar Guru Perhari

3. Data Maksimal Bobot Mata Pelajaran Perhari

4. Data Maksimal Mata Pelajaran Perhari

Kondisi Akhir Constraint yang telah disimpan

Alur Normal

Aksi Stake Holder Respon Sistem Memasukkan Data Jabatan

1. Bagian kurikulum memilih menu setting

Sistem menampilkan menu home untuk user, setelah memilih menu settings maka sistem akan menampilkan halaman settings

2. Bagian kurikulum memasukkan dan menyimpan

Sistem akan menyimpan constraint yang telah dimasukkan oleh user ke dalam database

(19)

2. Flow Of Event Menjadwalkan Mata Pelajaran

Tabel 3.5 Flow of Event Menjadwalkan Pelajaran

Nama Use Case Fungsi Menjadwalkan Mata Pelajaran

Actor Bagian Kurikulum

Deskripsi Fungsi ini merupakan suatu alur proses yang dilakukan untuk menjadwalkan mata pelajaran

Kondisi Awal 1. User Sudah Login 2. Data Jabatan

3. Data Guru

4. Data Mata Pelajaran

5. Data Kelas

6. Data Jadwal MGMP

Kondisi Akhir Jadwal Mata pelajaran dan daftar mengajar guru

Aksi Stake Holder Respon Sistem Memasukkan Data Jabatan

1. Bagian kurikulum memilih penjadwalan mata pelajaran

Sistem menampilkan menu home untuk user, setelah memilih penjadwalan mata pelajaran maka sistem akan menampilkan halaman penjadwalan mata pelajaran.

(20)

2. Bagian kurikulum akan memasukkan jam maksimal perhari guru dan kemudian

menekan tombol proses.

Sistem akan melakukan penjadwalan mata pelajaran secara otomatis dengan algoritma Tabu Search dengan memperhatikan ketentuan atau constraint yang harus di ikuti.

Penerapan Tabu Search:

Function proses() {

Mengambil data guru;

Menampung data guru kedalam array; Melakukan perulangan sebanyak data guru; Foreach($dataguru)

{

Mengambil data kelas;

Menampung data kelas kedalam array; Melakukan perulangan sebanyak data kelas; Foreach($datakelas)

{

For($hari=1;$hari<=6;h++) {

//menentukan ketika hari jumat dan sabtu jam pelajaran berkurang

//$variable = jam maksimal perhari

If (hari = 5){

//untuk membatasi jam maksimal perhari

Mengambil constraint jam mata pelajaran perhari;

$maxjamperhari = data jam maksimal perhari berdasarkan hari;

$variable = $maxjamperhari;

}else if (hari = 6) {

//untuk membatasi jam maksimal perhari

Mengambil constraint jam mata pelajaran perhari;

$maxjamperhari = data jam maksimal perhari berdasarkan hari;

$variable = $maxjamperhari;

}else {

//untuk membatasi jam maksimal perhari

Mengambil constraint jam mata pelajaran perhari;

(21)

$maxjamperhari = data jam maksimal perhari berdasarkan hari;

$variable = $maxjamperhari;

}

For($jam=1;$jam<=$variable;$jam++) {

//untuk mencocokan apakah jadwal masih kosong Mengambil data jadwal;

$jamjadwal= jam data jadwal; $harijadwal= hari data jadwal;

//untuk membatasi jam maksimal perhari

$jammaksimal = Mengambil jam maksimal guru;

//untuk mengosongkan jadwal di jam dan guru yang punya rapat MGMP Mengambil jadwal MGMP;

$hariMGMP = hari data jadwal MGMP;

//untuk membatasi jam perminggu tiap matpel Mengambil jam maksimal matpel;

$maxjammatpel = data jam maksimal matpel;

//untuk membatasi satu matpel jam berturut Mengambil constraint batas berturut;

*$maxjammatpelberturut = data jam maksimal matpel berturut;

If( $jam == $jamjadwal and $hari == $harijadwal){ Tidak cocok

}elseif(total maksimal jam perminggu == $maxjammatpel){ Tidak cocok }elseif($hari == $hariMGMP){ Tidak cocok }elseif(totaljammengajar == $jammaksimal){ Tidak cocok }else{ Simpan Jadwal; } } } } } } 36

(22)

3. Flow Of Event Melihat Jadwal Mata Pelajaran

Tabel 3.6 Flow of Event Melihat Jadwal Pelajaran

Nama Use Case Fungsi Melihat Jadwal Mata Pelajaran

Actor Bagian Kurikulum atau Guru

Deskripsi Fungsi ini merupakan suatu alur proses yang dilakukan untuk melihat jadwal mata pelajaran

Kondisi Awal 1. Data User (Username dan Password) 2. Data Mata Pelajaran

Kondisi Akhir Hasil mata pelajaran yang telah disimpan

Alur Normal

Aksi Stake Holder Respon Sistem Memasukkan Data Jabatan

1. Bagian kurikulum atau guru memilih lihat jadwal mata pelajaran

Sistem menampilkan menu home untuk user, setelah memilih penjadwalan mata pelajaran maka sistem akan menampilkan halaman lihat jadwal mata pelajaran.

2. Bagian kurikulum atau guru memilih tahun ajaran yang akan

Sistem akan menampilkan jadwal mata pelajaran sesuai dengan tahun ajaran yang dipilih.

(23)

d. Sequence Diagram

Sequence diagram digunakan untuk menggambarkan detail dari use case diagram yang telah dibuat. Sequence diagram berisi perilaku dari system yang akan dibuat nantinya. Terdapat tiga Sequence diagram diataranya:

1. Sequence Diagram Memasukkan Constraint

Gambar 3.9 Sequence Diagram Memasukkan Constraint

(24)

2. Sequence Diagram Menjadwalkan Mata Pelajaran

Gambar 3.10 Sequence Diagram Menjadwalkan Mata Pelajaran

(25)

3. Sequence Diagram Melihat Jadwal Mata Pelajaran

Gambar 3.11 Sequence Diagram Melihat Jadwal Mata Pelajaran

(26)

3.2.2 Desain Sistem Terinci

Desain sistem terinci adalah suatu penggambaran yang bertujuan untuk mengetahui data apa sajan yang digunakan untuk membangun sistem. Desain sistem terinci pada umumnya digambarkan dengan ERD (Entitiy Relationship Diagram), tetapi pada penelitian ini menggunakan Class Diagram dikarenakan pendekatan yang dilakukan merupakan pendekatan berbasis objek.

a. Class Diagram

Class diagram berfungsi untuk menjelaskan hubungan antar class dalam sebuah sistem yang sedang dibuat dan bagaimana caranya agar mereka saling berkolaborasi untuk mencapai sebuah tujuan. Class diagram penjadwalan mata pelajaran dapat dilihat pada gambar 3.10.

Gambar 3.12 Class Diagram

(27)

b. Statechart Diagram

Statechart Diagram adalah teknik yang umum digunakan untuk menggambarkan behaviour sebuah sistem. Hal ini digunakan untuk membantu analis, perancang dan pengembang untuk memahami perilaku obyek pada sistem. Bagaimana system bertransisi dan apa trigger yang menyebabkan terjadinya transisi digambarkan pada statechart diagram.

1. State Chart Diagram Memasukkan Constraint

Gambar 3.13 Statechart Diagram Memasukkan Constraint

Pada gambar 3.11 digambarkan statechart diagram memasukkan constraint, dimana system dapat memasukkan constraint baru atau merubah constraint yang sudah ada. System menerima masukkan constraint dan akan selesai setelah constraint disimpan.

(28)

2. State Chart Diagram Menjadwalkan Mata Pelajaran

Gambar 3.14 Statechart Diagram Menjadwalkan Mata Pelajaran

Pada gambar 3.12 digambarkan statechart diagram menjadwalkan mata pelajaran dimana merupakan gambaran dari algoritma tabu search yang diterapkan. Sistem kan dimulai dengan mendapatkan trigger berupa menjadwalkan mata pelajaran dari user dan akan di akhiri dengan menyimpan jadwal pelajaran yang telah dijadwalkan menggunakan metode tabu search.

(29)

3. State Chart Diagram Melihat Jadwal Mata Pelajaran

Gambar 3.15 Statechart Diagram Melihat Mata Pelajaran

Pada gambar 3.13 digambarkan statechart diagram melihat jadwal mata pelajaran dimana berfungsi untuk melihat jadwal mata pelajaran yang telah disimpan. Dengan mendapatkan masuukkan tahun ajaran, maka system akan menampilkan jadwal sesuai dengan thaun ajaran yang dipilih.

3.2.3 Seleksi Sistem

Berdasarkan hasil survei dan wawancara diperoleh hasil dari kebutuhan sistem penjadwalan mata pelajaran sebagai berikut:

1. Sekolah telah memiliki server dan jaringan intra network yang bisa dimanfaatkan, karena itu sistem yang dibuat berbasis website.

(30)

2. Output yang dihasilkan yaitu jadwal mata pelajaran yang dapat memperhatikan constraint yang ditentukan.

3. Sistem operasi yang disarankan adalah Windows 7, 8, 10 Server 2012. 4. Database yang digunakan adalah MySql.

3.2.4 Implementasi Sistem

Sistem yang telah dianalisis dan didesain selanjutnya akan dilaksanakan implementasi sistem, tahap ini termasuk juga kegiatan menulis kode program jika tidak digunakan paket perangkat lunak aplikasi. Langkah – langkah dari tahap implementasi sistem terdiri dari:

1. Menerapkan rencana implementasi

Rencana implementasi yang telah disusun diterapkan pada tahap ini berisi desain input output. Desain Inpult Output merupakan perencanaan dari desain interface yang akan dibuat pada program agar pengguna dapat membayangkan apakah sistem yang akan dibuat sesuai dengan kebutuhan sistem pengguna

a. Desain Login

Form Login digunakan untuk masuk kedalam aplikasi penjadwalan mata pelajaran. Pengguna dapat memasukkan NIP dan Password yang telah ditentukan. Pada form ini juga akan ditentukan hak akses pada masing-masing pengguna, sehingga tidak sembarang pengguna dapat mengakses, mengubah atau menghapus data-data yang terdapat pada sistem. Desain login form terlihat pada gambar 3.14.

(31)

Login

NIP/NIS Password

Login

LOGO

Gambar 3. 16 Login Form b. Menginputkan Constraint

Halaman memasukkan constraint ini dugunakan untuk menyimpan constraint atau aturan yang harus diperhatikan ketika penjadwalan dilakukan. Terdiri dari beberapa constraint, antara lain:

1. Jam maksimal mengajar per hari guru 2. Jam maksimal satu mata pelajaran beruntun 3. Maksimal bobot mata pelajaran

Desain halaman memasukkan constraint ini juga terdapat maksimal jam perharinya. Seperti terlihat pada gambar 3.15

(32)

Gambar 3. 17 Form Memasukkan Constraint c. Menjadwalkan Mata Pelajaran

Halaman menjawalkan mata pelajaran berfungsi untuk menjadwalkan matapelajaran dengan menggunakan metode Tabu Search. Pada form menjadwalkan dapat melihat hasil dari penjadwalan, jam mata pelajaran yang kurang, serta distribusi guru dari tiap jam nya. Seperti yang terlihat pada gambar 3.16 berikut

Menginputkan Constraint

Maksimal Jam Perhari

Enter Text Enter Text Enter Text Enter Text Enter Text Enter Text Senin Selasa Rabu Kamis Jumat Sabtu SIMPAN Constraint Enter Text Enter Text Enter Text SIMPAN Maksimal Mengajar Perhari

Bobot Maksimal MatPel Max In a Row

(33)

Gambar 3.18 Halaman Menjadwalkan Mata Pelajaran d. Melihat Jadwal Mata Pelajaran

Halaman melihat jadwal ini berfungsi agar guru dapat melihat jadwal mengajar tiap hari nya. Seperti terlihat pada gambar 3.17

Gambar 3.19 Melihat Jadwal Mata Pelajaran

Menjadwalkan Mata Pelajaran

Jadwalkan Kosongkan Simpan Distribusi Guru Jadwal Mata Pelajaran Kekurangan Jam

Penjadwalan membutuhkan waktu cukup lama!

Lihat Jadwal Mengajar

Enter Text

Hari Cari

(34)

e. Laporan Jadwal Mata Pelajaran

Desain dari laporan jadwal mengajar dapat dilihat pada lampiran 11. Laporan ini berfungsi untuk mencetak jadwal yang telah dihasilkan dari aplikasi penjadwalan mata pelajaran dengan menggunakan metode tabu search.

f. Laporan Distribusi Guru

Desain dari laporan distribusi guru dapat dilihat pada lampiran 12. Laporan ini berfungsi untuk melihat distribusi jam mengajar guru perminggunya.

g. Laporan Jadwal Mengajar guru

Desain dari laporan jadwal mengajar guru dapat dilihat pada lampiran 13. Laporan ini berfungsi untuk melihat jam mengajar guru setiap minggunya.

2. Melakukan kegiatan implementasi

Mengenai jaringan dan teknologi arsitektur yang akan di desain untuk mendukung aplikasi penjadwalan yang akan dibuat. Seperti ditunjukkan pada gambar 3.18

(35)

Gambar 3.20 Desain Arsitektur Teknologi

3. Tindak lanjut implementasi

Tahap selanjutnya adalah tindak lanjut implementasi yang bertujuan untuk menguji sistem apakah sudah bekerja sesuai dengan yang didesainkan sebelumnya dengan menggunakan data sesungguhnya. Pengujian sistem ini menggunakan metode black box. Berikut perancangan uji coba pada aplikasi pemasaran yang akan digunakan untuk mengetahui hasil yang diharapkan

a. Memasukkan Constraint

Pada tabel 3.5 merupakan data perancangan ujicoba yang digunakan untuk memasukkan constraint. Halaman memasukkan constraint meliputi insert dan update Server Router firewall Switch Kurikulum User user Proxy firewall 50

(36)

Tabel 3.7 Data Desain Uji Coba Memasukkan Constraint MaxInRow MaxTeaching MaxWeight

3 9 27

Tabel 3.8 Desain Uji Coba Memasukkan Constraint

Fungsi Memasukkan Constraint

Skenario Percobaan Hasil yang diharapkan

1 Proses simpan dengan semua kolom pada form di halaman constraint diisi

Data Constraint dapat tersimpan kedalam database dan dapat ditampilkan kembali ke aplikasi.

2 Texbox pada form memasukkan constraint hanya di isi angka.

Data yang akan dimasukkan kedalam database harus berupa angka

b. Menjadwalkan Mata Pelajaran

Pada tahap menjadwalkan mata pelajaran melibatkan banyak tabel, seperti tabel user, tabel kelas, tabel matpel, tabel jadwal mgmp, tabel jabatan, tabel constraint. Halaman menjadwalkan teridiri dari insert, update dan delete.

(37)

Tabel 3.9 Data Desain Uji Coba User

id_user user_name role_id password nama matpel_id

2 196007151986031000 6 $2y$10$uxFtsACXHn/6IXeZZAnKTO Drs. HARIONO, MM 9 3 196007301990031000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO Drs. SUGONO, MM 5 4 196010081992032000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO Dra. RETNO WIDARTI, M.Pd 5 5 196101011989032000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO Dra. SUMINEM, MM 12 6 196104121990031000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO Drs. M. YUSUF 10 7 195804181979032000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO TATI KURNIATI,S.Pd 7 8 196403181987032000 9 $2y$10$uxFtsACXHn/6IXeZZAnKTO WAHYU RATNA

DWI.A.S.Pd,MM 9

9 196106301988032000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO Dra. Rr.DUDUN

HARIYATI,MM 4

10 195809041984031000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO KARTONO,S.Pd 10 11 196102161989032000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO Dra. NURLAILI 9 12 195612231978022000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO ENDANG SUMARTINI,S.Pd 5

(38)

id_user user_name role_id password nama matpel_id 13 196110031984032000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO SITI NURYATI,S.Pd 5

14 195903131982022000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO FATMAWATI,S.Pd.MM 8 15 195802191992032000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO Dra. SRI TAHAN

UJININGTYAS 14

16 195704241988032000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO ASRI KUNTARI,S.Pd 8 17 196012141983022000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO ENDANG HERLINA,S.Pd. MM 9 18 196110311983032000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO SITI FARIDA,S.Pd 5 19 196402021989011000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO SUNARYO,S.Pd. MM 11 20 196005021981032000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO INDRA NURTJAHJANI,S.Pd.

MM 6

21 196010181986032000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO Rr. INDAH

SOESETYOWATI,S.Pd 14 22 196306201989032000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO Dra. HUBIBAH 6 23 196201241981112000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO PUDJI MUHARTATI,S.Pd 5 24 196411051990031000 5 $2y$10$uxFtsACXHn/6IXeZZAnKTO SUGIYONO,S.Pd 11 25 196408061988032000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO SRI LESTARI,S.Pd. MM 6

(39)

id_user user_name role_id password nama matpel_id 26 195903111981012000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO PURWANTINI,S.Pd 9

27 195911261981031000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO ABDUL QODIR,S.Pd. MM 7 28 196305311985022000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO DEDEH KURNIASIH,S.Pd 8 29 196109221995121000 8 $2y$10$uxFtsACXHn/6IXeZZAnKTO Drs. SUKRISNO. MM 8 30 196208191994031000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO Drs. ASMUNI 1 31 196912311999032000 4 $2y$10$uxFtsACXHn/6IXeZZAnKTO Dra. NANIK SRI HARIANI.

MM 8

32 197110081998022000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO INA ARIANTANTI,S.Pd 8 33 196104041989032000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO SULI HARTATIK, S.Pd 7 34 195905131984122000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO SITI MARLIYAH 13 35 196009261987031000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO SUGENG MURTADJI,S.Pd 7 36 195709031986032000 7 $2y$10$uxFtsACXHn/6IXeZZAnKTO ENNY SUDARWATI,S.Pd 5 37 196711132005012000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO Dra. SRI SAYEKTI, M.Psi 14 38 197103062006041000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO SUJONO, S.Pd 6

(40)

id_user user_name role_id password nama matpel_id 39 196209112007011000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO Drs. SUMITO 7

40 196909152007011000 10 $2y$10$uxFtsACXHn/6IXeZZAnKTO Drs. JAKA MARTANA 11 41 196710262008011000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO NUR KOLIS,S.Pd 8 42 196710241989032000 10 $2y$10$uxFtsACXHn/6IXeZZAnKTO SETYORINI, S.Pd 4 43 198409122009022000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO ALFIYAH

ALHAMIDIYAH,S.Pd 1

44 198209112009022000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO MULINTANG

KENANGA,S.Pd 14

45 198306102010012000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO DIAN IRAWATI,S.Pd 14 46 196206252007011000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO Drs. MASYKUR 10 47 20161101 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO MUCHAMMAD QOLBIR

ROHMAN, S.Pd 1

48 20161102 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO PUSPITA APRILIANI, S.Pd 12

49 20161103 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO BAYU WASKITO 2

50 20161104 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO MOGA SETIAWAN, S.Pd 4 51 20161105 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO MOCHAMAD HAMDAN A.

S.Pd 6

(41)

id_user user_name role_id password nama matpel_id 53 196711081991011000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO ASMA',S.Pd 7

56 195610101982031000 2 $2y$10$uxFtsACXHn/6IXeZZAnKTO SYAIFUDIN MUKTI,S.Pd 13

(42)

Tabel 3.10 Data Desain Uji Coba Kelas id_kelas nama_kelas 2 7A 3 7B 4 7C 5 7D 6 7E 7 7F 8 7G 9 7H 10 7I 11 7J 12 7K 13 8A 14 8B 15 8C 16 8D 17 8E 18 8F 19 8G 20 8H 21 8I 22 8J 24 9A 25 9B 26 9C 27 9D 28 9E 29 9F 30 9G 31 9H 32 9I 33 9J 57

(43)

Tabel 3.11 Data Desain Uji Coba Mata Pelajaran

matpel_id matpel_nm max_perminggu bobot

1 PENDIDIKAN AGAMA ISLAM 3 2

2 PENDIDIKAN AGAMA KRISTEN 3 2

3 PENDIDIKAN AGAMA KATHOLIK 3 2

4 PPKn 3 2

5 BAHASA INDONESIA 6 3

6 BAHASA INGGRIS 4 3

7 MATEMATIKA 5 3

8 ILMU PENGETAHUAN ALAM 5 3

9 ILMU PENGETAHUAN SOSIAL 4 3

10 PEND JASMANI DAN KESEHATAN 3 2

11 SENI BUDAYA 3 1 12 BAHASA JAWA 2 1 13 PRAKARYA 2 1 14 BP / BK 1 1 16 none 0 0 17 UPACARA 1 0 18 KEGIATAN SISWA 2 0

Tabel 3.12 Data Desain Uji Coba Jabatan

role_id role_nm jam_tambahan

1 Administrator 0 2 Guru 0 3 Siswa 0 4 Waka Kurikulum 12 5 Waka Kesiswaan 12 6 Kepala Sekolah 24 7 Kepala Perpustakaan 12 8 Kepala Laboratorium 12 9 Waka Humas 12 10 Pembina Pramuka 2 58

(44)

Tabel 3.13 Data Desain Uji Coba Jadwal MGMP

Id_jadwal User_id hari

1 31 2

4 8 4

5 3 1

6 22 3

7 53 6

Tabel 3.14 Data Desain Uji Coba Constraint

MaxInRow MaxTeaching MaxWeight

3 9 27

Tabel 3.15 Desain Uji Coba Menjadwalkan Mata Pelajaran

Fungsi Memasukkan Menjadwalkan Mata Pelajaran

Skenario Percobaan Hasil yang diharapkan

1

Menekan tombol jadwalkan pada halaman menjadwalkan mata pelajaran. Seluruh data digunakan

Aplikasi akan menjadwalkan mata pelajaran

2

Menekan tombol kosongkan pada halaman menjadwalkan mata pelajaran. Seluruh data digunakan

Aplikasi akan menghapus jadwal yang telah ada

3 Menampilkan jadwal mata pelajaran tiap kelas secara merata.

Aplikasi menampilkan jadwal di tiap kelasnya secara merata

4 Memperhatikan constraint jadwal MGMP guru

Aplikasi dapat

menjadwalkan dengan memperhatikan constraint jadwal MGMP guru

5 Memperhatikan constraint maksimal bobot perhari

Aplikasi dapat

menjadwalkan dengan memperhatikan maksimal bobot perhati

6 Memperhatikan constraint maksimal jadwal berurutan Aplikasi dapat menjadwalkan dengan memperhatikan constraint maksimal jadwal berurutan 59

(45)

Fungsi Memasukkan Menjadwalkan Mata Pelajaran

Skenario Percobaan Hasil yang diharapkan

7 Memperhatikan constraint maksimal mengajar perhari Aplikasi dapat menjadwalkan dengan memperhatikan constraint maksimal mengajar perhari 8

Menekan tombol simpan pada halaman menjadwalkan mata pelajaran. Hasil dari proses penjadwalan

Aplikasi akan menyimpan data penjadwalan. c. Melihat Jadwal Mata Pelajaran

Pada tabel 3.14 merupakan data perancangan uji coba yang digunakan untuk melihat jadwal mata pelajaran. Halaman melihat jadwal mata pelajaran hanya untuk melihat mata pelajaran saja

Tabel 3.16 Data Desain Uji Coba Jadwal Mata Pelajaran

Id_jadwal User_id Matpel_id Kelas_id Hari Jam Id_tahunajaran

1 0 17 2 1 1 1

2 47 1 2 1 2 1

3 11 9 2 1 3 1

4 38 6 2 1 4 1

5 38 6 2 1 5 1

Tabel 3.17 Desain Uji Coba Melihat Jadwal Mata Pelajaran

Fungsi Memasukkan Melihat Jadwal Mata Pelajaran

Skenario Percobaan Hasil yang diharapkan

1

Menekan cari pada halaman melihat jadwal mata pelajaran. Data pada tabel jadwal mata pelajaran

Aplikasi akan

menjadwalkan jadwal sesuai dengan tahun ajaran yang dipilih

Gambar

Gambar 3.1 Systems Development Life Cycle Waterfall Model
Gambar 3.3 Boxplot Penjadwalan Mata Pelajaran
Gambar 3.4 flowchart penerapan metode tabu search
Gambar 3.5 Use Case System Penjadwalan Mata Pelajaran
+7

Referensi

Dokumen terkait

Hasil penelitian ini sesuai dengan landasan teori penelitian yang menyatakan bahwa pada infeksi dengue terjadi perubahan kadar lipid, sehingga kadar lipid juga

(bersara pada 1 November 2008) Objektif Jawatankuasa Pelaburan termasuk memberikan pendapat ke atas polisi pelaburan strategik jangka masa panjang termasuk hartanah, iaitu

Susunan Menu : makanan pokok, lauk hewani, lauk nabati, sayur, buah, dan minuman... Memasukkan Jenis Bahan Makanan secara

Catatan akuntansi hendaknya ada yang bertanggung jawab Yaitu terkait dokumen dan kewajiban meliputi sebagai

organisasi harus memperhatikan pengupahan untuk pegawai sesuai dengan. pekerjaan maupun prestasi yang dicapai

1. Antena yang digunakan sebaiknya menggunakan antena microstrip yang dimensinya lebih kecil sehingga penggunaan radar untuk aplikasi embedded lebih bisa diandalkan. Metode

S1 Ekonomi Akuntansi III/a 1 Layanan Khusus Pendidikan Menengah, Direktorat Jenderal Pendidikan Menengah Pengumpul dan Pengolah Data Program dan Anggaran Pembinaan Pendidik dan

Sehingga dapat ditarik kesimpulan bahwa variabel religiusitas, sikap, norma subjektif dan kontrol perilaku secara simultan atau bersama-sama mempunyai pengaruh