APLIKASI PENJADWALAN MATA PELAJARAN PADA SDN 28 PANGKALPINANG MENGGUNAKAN ALGORITMA GENETIKA
BERBASIS ANDROID SKRIPSI
ZHOMY DHOLLAS RAMADHAN 1411500050
PROGRAM STUDI TEKNIK INFORMATIKA
SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER ATMA LUHUR PANGKALPINANG
2018
APLIKASI PENJADWALAN MATA PELAJARAN PADA SDN 28 PANGKALPINANG MENGGUNAKAN ALGORITMA GENETIKA
BERBASIS ANDROID
SKRIPSI
Diajukan Untuk Melengkapi Salah Satu Syarat Memperoleh Gelar Sarjana Komputer
Oleh :
ZHOMY DHOLLAS RAMADHAN 1411500050
PROGRAM STUDI TEKNIK INFORMATIKA
SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER ATMA LUHUR PANGKALPINANG
2018
ii
iii
KATA PENGANTAR
Alhamdulillah, Puji Syukur penulis panjatkan kehadirat Allah SWT yang telah melimpahkan segala rahmat dan karuniaNya, sehingga penulis dapat menyelesaikan laporan skripsi yang merupakan salah satu persyaratan untuk menyelesaikan program studi strata satu (S1) pada Jurusan Teknik Informatika STMIK ATMA LUHUR.
Dengan segala keterbatasan, penulis menyadari pula bahwa laporan skripsi ini takkan terwujud tanpa bantuan, bimbingan, dan dorongan dari berbagai pihak.
Untuk itu, dengan segala kerendahan hati, penulis menyampaikan ucapan terima kasih kepada:
1. Allah SWT yang telah menciptakan dan memberikan kehidupan di dunia.
2. Bapak Drs. Djaetun Hs yang telah mendirikan Atma Luhur.
3. Bapak Dr. Husni Teja Sukmana, ST., M.Sc selaku Ketua STMIK Atma Luhur.
4. Bapak R.Burham Isnanto Farid, S.Si., M.Kom selaku Kaprodi Teknik Informatika.
5. Bapak Ari Amir Alkodri, M.Kom selaku Dosen Pembimbing yang tidak mengenal waktu Sehingga Selesai Penyelesaian Tepat Waktu.
6. Ibu Sudharti, S.Pd selaku Kepala Sekolah SDN 28 Pangkalpinang.
7. Keluarga yang telah memberikan dukungan kepada penulis baik secara moril maupun materil.
8. Teman – teman seperjuangan dalam mengerjakan skripsi.
Diharapkan kiranya skripsi ini dapat bermanfaat bagi SDN 28 Pangkalpinang dan mereka yang nantinya akan menulis skripsi dengan topik yang sama.
Pangkalpinang ,
Penulis
iv ABSTRACT
Less effective process of scheduling subjects that still use Microsoft Excel at the elementary level and equivalent makes the time efficiency in the scheduling process reduced. For this reason, a more effective and optimal subject scheduling system is needed, one of which is by creating a subject scheduling system using an android- based genetic algorithm. Inside this application will load a web system and android system. Where on the web system is used as a medium to randomize subject schedules while the android system is used as a medium so that parents or students can see the results of the schedule of subjects that have been made. In the application created using the waterfall method, with the OOP system development method and UML system development tools. There are several scheduling algorithms that can be used, one of which is a genetic algorithm. Based on the results of the study, this algorithm is quite optimal in making subject scheduling more efficient in terms of manufacturing time.
Key Words : Scheduling, Android, Web, Algorithm, Genetics
v ABSTRAK
Kurang efektifnya proses penjadwalan mata pelajaran yang masih menggunakan Microsoft Excel pada tingkat SD dan sederajat membuat efisiensi waktu dalam proses penjadwalan berkurang. Untuk itu diperlukan sebuah sistem penjadwalan mata pelajaran yang lebih efektif dan optimal, salah satunya dengan membuat sistem penjadwalan mata pelajaran menggunakan algoritma genetika berbasis android. Di dalam aplikasi ini akan memuat sistem web dan sistem android.
Dimana pada sistem web digunakan sebagai media pengacakan jadwal mata pelajaran sedangkan pada sistem android digunakan sebagai media agar orang tua siswa ataupun siswa dapat melihat hasil dari jadwal mata pelajaran yang sudah dibuat. Pada aplikasi yang dibuat menggunakan metode waterfall, dengan metode pengembangan sistem OOP dan tools pengembangan sistem UML. Ada beberapa algoritma penjadwalan yang dapat dipakai, salah satunya adalah algoritma genetika.
Berdasarkan hasil penelitian, algoritma ini cukup optimal dalam membuat penjadwalan mata pelajaran agar lebih efisien dalam hal waktu pembuatan.
Kata Kunci : Penjadwalan, Android, Web, Algoritma, Genetika
vi DAFTAR ISI
Halaman
LEMBAR PERNYATAAN ...i
LEMBAR PENGESAHAN ...ii
KATA PENGANTAR ...iii
ABSTRACT ...iv
ABSTRAK ...v
DAFTAR ISI ...vi
DAFTAR GAMBAR ...ix
DAFTAR TABEL ...xi
DAFTAR SIMBOL ...xii
DAFTAR ISTILAH ...xv
DAFTAR LAMPIRAN ...xvi
BAB I PENDAHULUAN 1.1 Latar Belakang ...1
1.2 Rumusan Masalah ...3
1.3 Batasan Masalah ...3
1.4 Manfaaat dan Tujuan Penelitiian ...3
1.5 Sistematika Penulisan ...4
BAB II LANDASAN TEORI 2.1 Model Waterfall ...5
2.1.1 Tahapan Waterfall ...5
2.2 Metode Object Oriented Programming (OOP) ...7
2.3 Tools (Unified ModellingLanguage) ...7
2.4 BlackBox Testing ...10
2.5 Aplikasi ...11
2.6 Penjadwalan ...12
2.7 Kecerdasan Buatan ...12
vii
2.8 Algoritma Genetika ...13
2.8.1 Istilah Algoritma Genetika ...14
2.8.2 Komponen-Komponen Dalam Algoritma Genetika ...15
2.8.3 Alur Diagram Genetika ...19
2.9 Penelitian Terdahulu ...20
BAB III METODOLOGI PENELITIAN 3.1 Model Waterfall Pengembangan Sistem ...23
3.2 Metode Pengembangan Sistem ...24
3.3 Algoritma Genetika ...24
3.4 Tools Pengembangan Sistem ...25
BAB IV HASIL DAN PEMBAHASAAN 4.1 Organisasi ...28
4.1.1 Struktur Organisasi ...29
4.1.2 Jabaran Tugas dan Wewenang ...30
4.2 Analisa ...35
4.2.1 Analisisa Masalah Pada Sistem Berjalan...35
4.2.2 Perancangan Sistem ...36
4.2.3 Analisa Kebutuhan ...51
4.3 Rancangan Antar Muka ...52
4.3.1 Rancangan Layar Aplikasi Web ...53
4.3.2 Rancangan Layar Aplikasi Android ...59
4.4 Implementasi ...65
4.4.1 ScreenShot Aplikasi Web ...65
4.4.2 ScreenShot Aplikasi Android ...70
4.5 Penerapan Algoritma Genetika ...76
4.6 Pengujian BlackBox ...82
viii BAB V PENUTUP
5.1 Kesimpulan ...84
5.2 Saran ...84
DAFTAR PUSTAKA ...85
LAMPIRAN ...87
ix
DAFTAR GAMBAR
Halaman
Gambar 2.1 Model Waterfall ...5
Gambar 2.2 Penerapan Konsep Kecerdasan buatan di Komputer ...13
Gambar 4.1 Struktur Organisasi SDN 28 Pangkalpinang ...29
Gambar 4.2 Activity Diagram Sistem Berjalan ...35
Gambar 4.3 Use Case Diagram Sistem Web ...36
Gambar 4.4 Use Case Diagram Sistem Android ...40
Gambar 4.5 Activity Diagram Sistem Usulan ...42
Gambar 4.6 Activity Diagram Masuk ...43
Gambar 4.7 Activity Diagram Masukkan Data ...44
Gambar 4.8 Activity Diagram Proses Penjadwalan ...44
Gambar 4.9 Activity Diagram Keluar ...45
Gambar 4.10 Activity Diagram Lihat Jadwal Mata Pelajaran...45
Gambar 4.11 Activity Diagram Lihat Tentang Sekolah ...46
Gambar 4.12 Activity Diagram Lihat Pengumuman ...46
Gambar 4.13 Class Diagram...47
Gambar 4.14 Sequence Diagram Masuk ...48
Gambar 4.15 Sequence Diagram Masukkan Data ...48
Gambar 4.16 Sequence Diagram Proses Penjadwalan ...49
Gambar 4.17 Sequence Diagram Keluar ...49
Gambar 4.18 Sequence Diagram Lihat Jadwal Mata Pelajaran ...50
Gambar 4.19 Sequence Diagram Lihat Tentang Sekolah ...50
Gambar 4.20 Sequence Diagram Lihat Pengumuman ...51
Gambar 4.21 Rancangan Struktur Aplikasi Web ...52
Gambar 4.22 Rancangan Struktur Aplikasi Android ...52
Gambar 4.23 Rancangan Layar Form Masuk ...53
Gambar 4.24 Rancangan Layar Form Beranda...54
Gambar 4.25 Rancangan Layar Form Pengajar ...54
Gambar 4.26 Rancangan Layar Form Mata Pelajaran ...55
Gambar 4.27 Rancangan Layar Form Pengampu ...55
x
Gambar 4.28 Rancangan Layar Form Ruang ...56
Gambar 4.29 Rancangan Layar Form Jam ...56
Gambar 4.30 Rancangan Layar Form Hari ...57
Gambar 4.31 Rancangan Layar Form Batasan Waktu...57
Gambar 4.32 Rancangan Layar Form Proses Penjadwalan ...58
Gambar 4.33 Rancangan Layar Form Keluar ...58
Gambar 4.34 Rancangan Layar SplashScreen ...59
Gambar 4.35 Rancangan Layar Menu Utama ...60
Gambar 4.36 Rancangan Layar Mata Pelajaran ...61
Gambar 4.37 Rancangan Layar Mata Pelajaran Kelas ...62
Gambar 4.38 Rancangan Layar Tentang SDN 28 ...63
Gambar 4.39 Rancangan Layar Pengumuman ...64
Gambar 4.40 Tampilan Masuk ...65
Gambar 4.41 Tampilan Beranda ...65
Gambar 4.42 Tampilan Pengajar...66
Gambar 4.43 Tampilan Pelajaran ...66
Gambar 4.44 Tampilan Pengampu ...67
Gambar 4.45 Tampilan Ruang ...67
Gambar 4.46 Tampilan Jam ...68
Gambar 4.47 Tampilan Hari ...68
Gambar 4.48 Tampilan Batasan Waktu ...69
Gambar 4.49 Tampilan Proses Penjadwalan ...69
Gambar 4.50 Tampilan SplashScreen ...70
Gambar 4.51 Tampilan Menu Utama...71
Gambar 4.52 Tampilan Mata Pelajaran ...72
Gambar 4.54 Tampilan Pengumuman...74
Gambar 4.55 Tampilan Tentang SDN 28 ...75
Gambar 4.56 Flowchart Pembentukan Kromosom ...76
Gambar 4.57 Potongan Coding ...77
Gambar 4.58 Potongan Coding Mutasi ...79
Gambar 4.59 Potongan Coding CrossOver ...80
xi
DAFTAR TABEL
Halaman
Tabel 2.1 Pindah Silang (Crossover) ...17
Tabel 3.1 Istilah-istilah dalam Algoritma Genetika ...23
Tabel 4.1 Tugas dan Wewenang Setiap Bagian Organisasi ...30
Tabel 4.2 Deskripsi Use Case Diagram Masuk ...37
Tabel 4.3 Deskripsi Use Case Diagram Masukkan Data ...38
Tabel 4.4 Deskripsi Use Case Diagram Proses Penjadwalan ...38
Tabel 4.5 Deskripsi Use Case Diagram Keluar ...39
Tabel 4.6 Deskripsi Use Case Diagram Lihat Jadwal Mata Pelajaran ...40
Tabel 4.7 Deskripsi Use Case Diagram Lihat Tentang Sekolah ...41
Tabel 4.8 Deskripsi Use Case Diagram Lihat Pengumuman ...41
Tabel 4.9 Tabel Kebutuhan Perangkat Keras ...51
Tabel 4.10 Tabel Kebutuhan Perangkat Lunak ...52
Tabel 4.11 Representasi Kromosom ...76
Tabel 4.12 Parameter Penyusun Fungsi Objektif ...78
Tabel 4.13 Desain Database ...81
Tabel 4.14 Pengujian BlackBox ...82
xii
DAFTAR SIMBOL 1. Simbol Activity Diagram Diagram
Start Point
Menggambarkan kegiatan awal dari aktivitas.
End Point
Menggambarkan kegiatan akhir dari aktivitas.
Activity Diagram
Menggambarkan suatu proses atau kegiatan bisnis.
Swame Line
Sebagai Pemisah Aktivitas yang terjadi
Percabangan
Pilihan Aktivitas jika lebih dari satu
2. Simbol Use Case Diagram Actor
Menggambarkan orang atau sistem yang menyediakan atau menerima informasi dari sistem atau menggambarkan pengguna software aplikasi (user).
Use case
Menggambarkan fungsionalitas dari suatu sistem, sehingga pengguna sistem paham dan mengerti mengenai kegunaan sistem yang akan dibangun.
Association
Menggambarkan hubungan antara actordengan use case.
<<include>> Include
Menspesifikasikan bahwa use case sumber secara eksplesit
Ajukan permohonan usulan kenaikan pangkat PNS
Buat surat pengantar usulan kenaikan pangkat PNS
Serahkan surat pengantar usulan kenaikan pangkat PNS
Terima surat pengantar usulan kenaikan pangkat PNS yang ditandatangani
Serahkan surat pengantar usulan kenaikan pangkat PNS yang ditandatangani
Terima surat keputusan kenaikan pangkat
Memberikan surat keputusan kenaikan pangkat
Terima konfirmasi agar dapat melengkapi persyaratan
Terima surat pengantar usulan kenaikan pangkat PNS
Tandatangani surat pengantar usulan kenaikan pangkat PNS
Serah surat pengantar usulan kenaikan pangkat PNS yang ditandatangani
Terima srt pengantar usulan kenaikan pangkat PNS
Melakukan pengecekan kelengkapan persyaratan
Konfirmasi agar dapat melengkapi persyaratan
Buat surat keputusan kenaikan pangkat
Serahkan surat keputusan kenaikan pangkat [Belum Lengkap] [Lengkap]
Terima srt keputusan kenaikan pangkat
Pegaw ai Negeri Sipil (PNS) Bagian Kepegaw aian Daerah (BKD)
Kepala Dinas Bagian Kepegaw aian
xiii 3. Sequence Diagram
Actor
Menggambarkan seseorang atau sesuatu (seperti perangkat, sistem lain) yang berinteraksi dengan sistem.
Boundary
Mengambarkan interaksi antara satu atau lebih actor dengan sistem, memodelkan bagian dari sistem yang bergantung pada pihak lain disekitarnya dan merupakan pembatas sistem dengan dunia luar.
Control
Menggambarkan “perilaku untuk
mengatur atau kegiatan
mengontrol”, mengkoordinasikan perilaku sistem dan dinamika dari suatu sistem, menangani tugas utama dan mengontrol alur kerja suatu sistem.
Entity
Menggambarkan informasi yang harus disimpan oleh sistem (struktur data dari sebuah sistem).
Message
Menggambarkan pesan/hubungan antar objek yang menunjukkan urutan kejadian yang terjadi.
Self Message
Pesan yang dikirim untuk dirinya sendiri.
xiv
Loop Message
Menggambarkan dengan sebuah frame dengan label loop dan sebuah kalimat yang mengindikasikan pengulangan.
4. Simbol Class Diagram
No Simbol Keterangan
1 Class
Himpunan dari object yang berbagi atribut dan operasi yang sama.
2 Association
Merupakan abtraksi berupa garis tanpa panah yang menghubung antara class.
xv
DAFTAR ISTILAH
OOP : Object Oriented Programming RUP : Rational Unified Process UML : Unified Modeling Language OS : system operasi
GSM : Google Mail Services OH : Open Hanset Distribution SDK : Software Development Kit ADT : Android Developer Tools JDK : Java Development Kit
xvi
DAFTAR LAMPIRAN
Halaman
Lampiran 1 Kartu Bimbingan Skripsi ...87
Lampiran 2 Surat Selesai Melaksanakan Riset Skripsi ...88
Lampiran 3 Surat Pengantar dari Kampus ...89
Lampiran 4 Surat Balasan dari Tempat Riset ...90
Lampiran 5 Biodata Penulis Skripsi ...91