SKRIPSI
Diajukan untuk Menempuh Ujian Akhir Sarjana Program Strata Satu Jurusan Teknik Informatika
Fakultas Teknik dan Ilmu Komputer Universitas Komputer Indonesia
Oleh :
AYU AFRIANA SARI
10108850
PROGRAM STUDI S1
JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNIK DAN ILMU KOMPUTER
UNIVERSITAS KOMPUTER INDONESIA
i
ALGORITMA BACKTRACK AKADEMIK DI SMA NEGERI 2 PURWAKARTA
Oleh Ayu Afriana Sari
10108850
Informasi penjadwalan pengajar dalam suatu sekolah merupakan sebuah hal yang sangat penting agar terwujudnya sebuah kegiatan belajar mengajar yang efektif dan memenuhi target dari ketentuan kurikulum yang telah ditentukan SMAN 2 Purwakarta. Adapun prinsip dari penjadwalan sendiri pada umumnya adalah bagaimana menempatkan sejumlah kejadian atau event kedalam slot waktu yang ada atau time slot, sehingga tidak ada sumber daya yang tersisa.
ii
ACADEMIC BACKTRACK SMAN 2 PURWAKARTA
By Ayu Afriana Sari
10108850
In a school the teacher scheduling information is very important thing so that an effective learn-teach activities are happened and it is to fulfill a curriculum provision target which is determined by SMAN 2 Purwakarta. In generally, the scheduling principle is how to put some events into available time slot, and then there are not rest resources.
For scheduling, in SMAN 2 Purwakarta is how to put some teachers into available teaching time at all classrooms are fulfilled without same schedule among teachers. While about work mechanism of this application is to do an input parameter as used parameter to determine a schedule and available criterions in SMA 2 Purwakarta, relate to this scheduling information system teaching method is used an “Algorithm Backtrack”. It is caused that algorithm can to use to seeking for solution with already data numbers.
In this case is needed a solution that is how to put the teachers schedule into already slots with to do a testing to all already criterions, and from side result this information system is not having accurate level yet as in manual system, but the purpose to make a system is to easily curriculum section to determine a schedule in quick and precise ways with use an automatic counting so the output this information system could be used as media to compose a teach schedule.
iv
Assalamualaikum, Wr.Wb
Puji syukur penulis ucapkan ke hadirat Allah SWT, yang masih
memberikan kesempatan dan kesehatan sehingga berkat dan anugerah-nya penulis
dapat menyelesaikan laporan skripsi dalam waktu yang telah ditetapkan dengan
v
3. Ibu Utami Dewi W, S.Kom. selaku dosen reviewer dan penguji I.
4. Bapak Galih Hermawan, S.Kom., M.T. selaku dosen reviewer dan penguji
III.
5. Ibu Mira Kania Saariah, S.T.M.T., selaku Ketua Jurusan Teknik Informatika
Universitas Komputer Indonesia.
6. Bapak dan Ibu dosen Jurusan Teknik Informatika yang telah mendidik dan
mengajar penulis selama kuliah di Universitas Komputer Indonesia.
7. Seluruh staff dan karyawan, sekretariat Jurusan Teknik Informatika, terima
kasih juga atas bantuannya.
8. Kepada kepala sekolah, jajaran guru dan staf SMAN 2 PWK yang telah
mengijinkan penulis melakukan penelitia di SMAN 2 PWK.
9. Kakak-kakak ku dan adik-adik ku tercinta yang selalu memberikan semangat
dan doanya.
10. Buat Azis Bahari yang selalu menyemangati dalam pembuatan skripsi ini.
11. Teman-teman Siti Habibah, Dera Cyndraillah, T.iqbal F, Ade Zulfajri, Shinta
Ningtyas dan lainnya yang selalu menyemangati dalam membuat tugas akhir
dan skripsi ini.
12. Teman-temen seperjuangan yang telah memberikan support dan dukungan
vi
Penulis menyadari masih terdapat banyak kekurangan didalam penulisan
skripsi ini karena keterbatasan pengetahuan penulis. Oleh karena itu saran dan
kritik yang membangun sangat penulis harapkan. Semoga laporan skripsi ini dapat
bermanfaat bagi semua pihak yang memerlukan.
Wassalamualaikum Wr. Wb
Bandung, Agustus 2012
vi DAFTAR ISI
LEMBAR JUDUL
LEMBAR PENGESAHAN
ABSTRAK ... i
ABSTRACT ... ii
KATA PENGANTAR ... iii
DAFTAR ISI ... iv
DAFTAR TABEL ... xii
DAFTAR GAMBAR ... xv
DAFTAR SIMBOL ... xxiii
DAFTAR LAMPIRAN ...xxix
BAB I ... 1
1.1 Latar Belakang Masalah...1
1.2 Rumusan Masalah ...2
1.3 Maksud dan Tujuan ... 2
1.3.1 Maksud ... 2
1.3.2 Tujuan ... 2
1.4 Batasan Masalah ... 3
1.5 Metodologi Penelitia ...5
vii
2.1.1. Struktur Organisasi SMA N 2 Purwakarta ... 11
Gambar 2. 1 Struktur Organisasi SMA N 2 Purwakarta ... 11
2.2 Penjadwalan ... 15
2.3 Algoritma Dalam Penjadwalan ... 16
a) Algoritma Semut ... 16
b) Algoritma Genetika ... 16
c) Algoritma Backtrack ... 17
2.4 Alat Bantu Pemodelan ... 20
2.4.1 Perancangan Berorientasi Objek ... 20
2.4.2.1 Use Case Diagram ... 23
2.4.2.2 Class Diagram ... 23
2.4.2.3 Activity Diagram ... 24
2.4.2.4 Sequence Diagram ... 24
2.4.2.5 Component Diagram ... 25
2.4.2.6 Deployment Diagram ... 25
2.5 Pengertian Sitem Informasi ... 26
viii
BAB III ...29
3.1 Analisis Sistem ...29
3.1.1 Analisis Masalah ...29
3.1.2 Analisis Sistem Yang Berjalan ...30
3.1.3 Analisis Metode Algoritma Backtrack Terhadap Kasus Penjadwalan... 31
3.1.4 Analisis Kebutuhan non Fungsional ...35
3.1.4.1 Analisis kebutuhan Perangkat keras ...35
3.1.4.2 Analisis Kebutuhan Perangkat Lunak ...36
3.1.4.3 Analisis Jaringan ... 37
3.1.4.4 Analisis Pengguna ... 38
3.1.5 Analisis Kebutuhan Fungsional ... 39
3.1.5.1 Use Case ... ...40
3.1.5.2 Deskripsi Use Case Admin ... 42
3.1.5.3 Class Diagram ... .. 79
3.1.5.4 State Diagram ... ..81
3.1.5.5 Activity Diagram ... 82
3.1.5.6 Sequence Diagram ... 100
ix
3.2.1. Perancangan Data Base ... 141
3.2.1.1. Skema Relasi ... 141
3.2.1.2. Perancangan Strukur Tabel ... 142
3.2.2. Perancangan Struktur Menu ... 146
3.2.3. Perancangan Antar Muka ...148
3.2.4. Jaringan Semantik ... 184
BAB IV ... 190
4.1 Implementas ... 190
4.1.1 Implementasi Perangkat Keras ... 190
4.1.2 Implementasi Perangkat Lunak ... 191
4.1.3 Implementasi Database ... 191
4.1.4 Implementasi Antar Muka ... 195
4.2 Pengujian Alpha ... 201
4.2.1 Pengujian Alpha ... 201
4.2.1.1 Rencana Pengujian ... 201
2. Pengujian White-Box ... 204
x
4.2.1.2.2 Kasus dan Hasil Pengujian Guru ... 233
4.2.1.4 Kesimpulan Hasil Pengujian Alpha ... 234
4.2.2 Pengujian Beta ... 235
4.2.2.1 Pengujian beta terhadap kasus penjadwalan ... 235
4.2.2.2 Kesimpulan Hasil Pengujian Beta ... 244
BAB V ...... 245
KESIMPULAN DAN SARAN ... 245
5.1 Kesimpulan ... 245
5.2 Saran ... 245
1 BAB I PENDAHULUAN
1.1Latar Belakang Masalah
Sekolah Menengah Atas Negeri 2 Purwakarta adalah salah satu Sekolah
Menengah Atas yang berada di wilayah Kabupaten Purwakarta. Seiring dengan
berkembangnya teknologi informasi ini maka Diknas Kabupaten Purwakarta
Berdasarkan uraian masalah maka diperlukan pembangunan suatu sistem
informasi penjadwalan di SMA 2 Purwakarta, yang dapat menyusun jadwal secara
cepat dan akurat sehingga memudahkan bagian kurikulum dalam menyusun
jadwal karena semua perhitungan dilakukan secara otomatis dengan menggunakan
aplikasi penjadwalan yang menggunakan algoritma backtrack dalam penyusunan
jadwal.
1.2Rumusan Masalah
Berdasarkan latar belakang yang telah dikemukakan, maka perumusan
masalah dalam aplikasi penjadwalan akademik di SMAN2 Purwakarta adalah
3. Mengatasi masalah dalam penjadwalan yaitu menghindari jadwal guru
yang sama pada satu kelas dan pada jam yang sama.
1.4Batasan Masalah
Dalam penyelesaian tugas akhir ini diberikan batasan masalah agar tujuan dan
sasaran yang diinginkan dapat tercapai. Adapun batasan masalah sebagai berikut :
1. Data yang diolah dalam penjadwalan ini yaitu data guru, data mata
pelajaran, data hari dan jam, dan data kelas.
2. Informasi yang dihasilkan yaitu berupa informasi karyawan, informasi
guru, dan informasi jadwal.
3. Aplikasi yang dibuat merupakan desktop application, yang terkoneksi
dalam jaringan lokal.
4. Aplikasi penjadwalan menggunakaan algoritma backtrack untuk
mendetiksi penjadwalan yang sama.
5. Aplikasi ini menggunakan bahasa pemrograman Java dan MYSQL
sebagai database-nya.
6. Hasil print penjadwalan berbentuk pdf.
7. Aplikasi ini menggunakan jude dan Microsoft office visio 2007 sebagai
pembuatan UML.
1.5Metodologi Penelitian
Metodologi yang digunakan dalam penulisan tugas akhir ini adalah sebagai
berikut :
Metode pengumpulan data yang digunakan dalam penelitian ini adalah
sebagai berikut :
a. Studi Literatur.
Metode pengumpulan data dengan cara mengumpulkan literatur, dokumen,
dan bacaan-bacaan untuk mendapatkan gambaran yang menyeluruh tentang
masalah yang diteliti di Sekolah Menengah Atas Negeri 2 Purwakarta.
b. Observasi.
Metode pengumpulan data dengan cara datang secara langsung untuk
melakukan penelitian di Sekolah Menengah Atas Negeri 2 Purwakarta yang
berlokasi di Jalan Raya Sadang No.17 Purwakarta.
c. Interview
Metode pengumpulan data dengan mengadakan komunikasi atau tanya jawab
secara langsung dengan sumber data dengan Bagian Kurikulum SMAN 2
Purwakarta yaitu Bapak Wawan Rahwan S.pd.
2. Metode pembuatan perangkat lunak.
Teknik analisis data dalam pembangunan perangkat lunak menggunakan
paradigma perangkat lunak secara waterfall. Waterfall adalah sebuah
pengembangan model perangkat lunak yang dilakukan secara berurutan atau
Gambar1.1 Metode Waterfall
a. System engineering
Merupakan tahapan yang pertama kali dilakukan yaitu merumuskan sistem
yang akan kita bangun. Hal ini bertujuan agar pengembang benar-benar
memahami sistem yang akan kita bangun dan langkah-langkah serta kebijakan apa
saja yang berkaitan dengan pengembangan sistem tersebut.
b. Analysis
Pada tahap ini dilakukan pengumpulan kebutuhan untuk sistem informasi
perangkat lunak yang berupa data input, proses yang terjadi dan output yang
diharapkan dengan melakukan wawancara dan observasi, hasilnya berupa diagram
yang dapat berupa diagram pemodelan yaitu Use case, class diagram, state
diagram, activity diagram, sequence diagram, component diagram dan
c. Design
Menterjemahkan analisa kebutuhan ke dalam bentuk rancangan sebelum
penulisan program yang berupa perancangan antarmuka (input dan output),
perancangan file-file atau basis data dan merancang prosedur (algoritma).
d. Coding (implementasi)
Pengkodean yang mengimplementasikan hasil desain ke dalam kode atau
bahasa yang dimengerti oleh mesin komputer dengan menggunakan bahasa
pemrograman java.
e. Testing (pengujian)
Program yang telah dibuat harus diuji, proses pengujian difokuskan pada
kebenaran logika internal perangkat lunak dan fungsional sistem serta interaksi
antara sistem dan pemakai.
f. Maintenance (perawatan)
Sistem yang telah diuji kemudian diserahkan ke petugas untuk diinstall dan
dioperasikan sesuai kebutuhannya, tahapan perawatan dibutuhkan dalam masa itu
dengan dilakukan pengecekan kesalahan operasionalnya atau perubahan yang
diinginkan petugas.
1.6Sistematika Penulisan
Sistematika penulisan penelitian ini disusun untuk memberikan gambaran
umum tentang penelitian yang dijalankan. Sistematika penulisan tugas akhir ini
BAB I PENDAHULUAN
Latar belakang masalah, rumusan masalah, maksud dan tujuan, maksud, tujuan,
batasan masalah, metodologi penelitian, sistematika penulisan.
BAB II. TINJAUAN PUSTAKA
Bab ini berisi tentang sejarah instansi dan organisasi, visi misi, dan teori sistem
yang akan dirancang, yaitu sistem penjadwalan dengan menggunakan algoritma
backtrack.
BAB III. ANALISIS MASALAH DAN PERANCANGAN
Bab ini berisikan uraian mengenai analisis dari rancangan pembuatan sistem
aplikasi. Lingkup pembahasan meliputi analisis sistem, analisis masalah, analisis
sistem berjalan, analisis metode penjadwalan, analisis kebutuhan fungsional,
analisis non fungsional, perancangan menu, perancangan antarmuka dan
perancangan semantik.
BAB IV IMPLEMENTASI DAN PENGUJIAN
Bab ini menjelaskan tentang pembuatan modul program, spesifikasi perangkat
lunak dan perangkat keras, uji coba program dan analisis terhadap hasil uji coba
program.
BAB V. KESIMPULAN DAN SARAN
Bab ini berisi tentang kesimpulan dan saran-saran yang didapat dari pembahasan
8
BAB II
TINJAUAN PUSTAKA
2.1
Sekolah Menengah Atas Negeri 2 Purwakarta
Sekolah Menengah Atas Negeri 2 Purwakarta berdiri pada tanggal 3 September
1979 berdasarkan SK pendirian Menteri Pendidikan dan Kebudayaan RI dengan No
Statistik Sekolah (NISS) :3010220001002, dalam kurun waktu 29 tahun SMAN 2
Purwakarta telah dipimin oleh 11 orang Kepala Sekolah, yaitu
1.
Bpk. M. Masri (Alm),
2.
Bpk DRS. Akhmad Subarkah,
3.
Bpk Drs. H. Machmud Radi,
4.
Bpk. H. Waryo Sukanda, BA
5.
Ibu Dra. Hj. R. Atty Ruchyati
6.
Bpk. Drs. Iri Setiadi,
7.
Bpk Drs. Jumdiat Marzuki, MM
8.
Ibu Dra. Iis Sri Sugiharti
9.
Bpk. Drs Asep Saepudin
10.
Plt. Kepala Bpk. Drs. Rudiana, MM
11.
BPK. Drs. Marseno
12.
dan sekarang dipimpin oleh BPK. Drs. H. Gaos Suherman, M.Pd
SMAN 2 Purwakarta memiliki tujuan, yaitu dalam Mewujudkan iklim belajar yang
pengembangan ruangan belajar,meningkatkan partisipasi orang tua untuk
terlaksananya program sekolah, melaksanakan pembelajaran team teaching untuk
meningkatkan mutu pembelajaran, membekali keterampilan komputer bagi siswa
untuk menunjang mata pelajaran dan mengahadapi perkemabangan IPTEK, dan
Mengembangkan pembelajaran yang berorientasi kepada KTSP ( Kurikulum Tingkat
Satuan Pendidikan ).
Adapun Visi dan Misi SMA Negeri 2 Purwakarta, Visi SMA Negeri 2 Purwakarta :
1. Membangun Generasi Kreatif, Inovatif dan Tangguh yang dilandasi oleh keimanan
dan ketaqwaan.
Misi SMA Negeri 2 Purwakarta :
1. Meningkatkan kepribadian dan kemadirian yang dilandasi iman dan taqwa.
2. Meningkatkan prestasi akademik dan non akademik agar tercapai mutu lulusan
yang berkualitas.
3. Meningkatkan profesionalisme Guru dan TU, membina semangat kerjasama yang
dilandasi kekeluargaan.
4. Menciptakan suasanan yang kondusif bagi terwujudnya harmonisasi civitas
sekolah.
5. Meningkatkan Wawasan Wiyata Mandala untuk mendukung kegiatan belajar
Tujuan SMA Negeri 2 Purwakarta :
1. Mewujudkan iklim belajar yang kondusif.
2. Melengkapi srana prasarana khususnya sarana prasarana pengembangan ruangan
belajar.
3. Meningkatkan partisipasi orang tua untuk terlaksananya program sekolah.
4. Melaksanakan pembelajaran team teaching untuk meningkatkan mutu
pembelajaran.
5. Membekali keterampilan komputer bagi siswa untuk menunjang mata pelajaran
dan mengahadapi perkemabangan IPTEK.
6. Mengembangkan pembelajaran yang berorientasi KTSP (kurikulum 2006) dan
2.1.1.
Struktur Organisasi SMA N 2 Purwakarta
PEMBAGIAN TUGAS KEPSEK, WAKASEK , PKS, PJP, KOORDINATOR,
PEMBINA , DAN WALI KELAS TAHUN PELAJARAN 2011
–
2012
A.
KEPSEK, WAKASEK DAN PEMBINA PROFESI
No Nama / NIP Pangkat /
Golongan Tugas
1.
Drs. H. Gaos Suherman, M.Pd
10560619 198103 1 012
Pembina Tk.I (IV-b) Kepala Sekolah
2. Drs.H. Sanib Abidin
19550608 198003 1 007 Pembina TK. I (IV/b)
Wakasek Umum / Koordinator 3. Wawan Rahwan, S.Pd.
19651105 199002 1 001 Pembina (IV/a)
Wakasek. Urusan. Kurikulum
4. Samsuri, S.Pd
19630505 198803 1 011 Pembina (IV/a)
Wakasek Urusan. Kesiswaan 5. Asep Arifin
19581004 198903 1 003 Pembina (IV/a)
Wakasek Urusan Sarana Prasarana
6. Euis Suryawati, M.Pd
19630912 198903 1 015 Pembina (IV/b) Wakasek Humas 7. Dra. Yayah Haeriah
19641216 199103 2 008 Pembina (IV/a)
Wakasek Urusan PM SSN & Personil
8.
Dra.Hj. Euis Suwartini Y,M.M
19600929 198403 2 004
Pembina (IV/a) Wakasek Urusan Pelatihan/Diklat 9. Drs. Anwar Khusnansyah
19511215 198003 1 005 GTT Pembina Profesi Guru
B. PKS
No Nama / NIP Pangkat / Golongan Tugas
1. H O N O, S.Pd
19630912 198903 1 015 Pembina (IV/a) PKS Urusan Kurikulum 2. Reni Nuraeni, S.Pd.
19620702 198512 2 001 Pembina (IV/a)
3. Drs. Tikno Slamet
19591014 198709 1 001 Pembina (IV/a)
PKS Urusan Kesiswaan /Pembina Non OSIS 4. Lasman, S.Ag
150 269 980 Penata Tk.I (III-d)
PKS Urusan Sarana dan Prasarana
5. Hj.Latifah Nudin, S.Pd
19570707 198303 2 011 Pembina (IV/a) PKS Urusan Humas 6. Kasidi, S.Pd.Fis
19690410 199201 1 001 Pembina (IV/a) PKS Urusan PM SSN 7. Dra. Iis Aisyah
19600620 198803 2 003 Pembina (IV/b) PKS Urusan Pelatihan
C. PEMBAGIAN TUGAS PENANGGUNG JAWAB PROGRAM
(PJP),KOORDINATOR,DAN , PEMBINA DIBAWAH KOORDINASI WAKASEK
1. Penanggung Jawab Program (PJP)
No Nama / NIP / NUPTK Pangkat /
Golongan Tugas
1. Mokh. Adnan, S.Sos
8354 7536 5620 0003 - PJP Guru Piket
2. A N I S A, S.Pd
19790209 200801 2 001
Penata Muda
(III-a) PJP Lab.Biologi 3. Drs. Tarsudin 19581111 198403 1 008 Pembina ( IV/a) PJP Lab.Kimia 4. Atih Kuswati 19650221 198902 2 001 Pembina ( IV/a) PJP Lab.Fisika 5. R. Hasanah, S.Pd.
19540606 198003 2 007 Pembina ( IV/a) PJP Lab.Bahasa 6. Dida Nurhuda, A.Md
5433 7596 6020 0062 - PJP Lab.Komputer
7. Heti Meidiati, S.Pd
19610514 198403 2 004 Pembina ( IV/a) PJP Perpustakaan 8. Nandang, S.Ag
0834 7476 5120 0022
- PJP Baca Al-Qur’an dan Tafsir
2. Koordinator BP/BK
No Nama / NIP /NUPTK Pangkat / Gol Tugas
19631012 198703 2 006
3. Pembina
No Nama / NIP /NUPTK Pangkat / Gol Tugas
1. Rd. Rubbin Kalagan, S.Pd
7163 7606 6220 0013 GTT Pembina Paskibra
2. Dra. Tien Martini
19630516 198305 2 004 Pembina ( IV/a)
Pembina PMR / UKS dan Seksi 7 OSIS
3. Zulhelma, S.Ag
150 190 248 Pembina ( IV/a) Pembina DKM & Seksi 1 OSIS 4.
Hj. Dedeh Komariah W, S.Pd.I
19620331 198403 2 003
Pembina ( IV/a) Pembina BKK
5. Drs. Ade Surachman
9844 7446 4720 0042 GTT Pembina Pramuka Putra
6. Surtinah Taviatun, S.Pd.
19650309 198703 2 004 Pembina (IV/a)
Pembina Pramuka Putri & Seksi 3 OSIS
7. Masriyah, S.Ag
19710305 200801 2 004 Penata Muda (III/a)
Pembina Keputrian &Seksi 2 OSIS
8. Dedi Sugianto, S.Pd.
19780829 200801 1 002 Penata Muda (III/a)
Pembina Olahraga & Seksi 4 OSIS
9. Anggie Nugeraha, S.Sn GTT Pembina Seni
10. Rd. Rakhmatika S.H., S.Pd.
19660717 198903 2 005 Pembina (IV/a)
Pembina Olimpiade Mata Pelajaran
11. Dra. Iis Noor Rosidah
19651006 199512 2 001 Pembina (IV/a) Pembina K3 12. Iis Mulyawati, S.Pd
19700708 200701 2 004
PenataMudaTk.I (III/b)
Pembina Majalah Dinding & Majalah Sekolah & Seksi 8 OSIS
13.
Santi Lidiani, ST
19840401 200902 2 006 Pembina (IV/a) Pembina KIR/Sains dan Teknologi
14. Dra. Siti Jufriyah
19620630 200604 2 001
PenataMudaTk.I (III/b)
Pembina Koperasi Siswa dan Seksi 6 OSIS
15. Dyah Kartikasari, S.Pd 3644762663300062
GTT Pembina Pencinta Alam / Adiwiyata & Seksi 5 Osis 16. Mokh. Adnan , S,Sos
8354 7536 5620 0003
17. Yayan Sopian, S.Pd 6839 7606 6120 0030
- Pembina Klub Bahasa Inggris dan Seksi 10 OSIS
2.2
Penjadwalan
2.3
Algoritma Dalam Penjadwalan
a)
Algoritma Semut
Perilaku sekumpulan semut dalam mencari atau menemukan sumber makanan
dari sarangnya yang kemudian kembali lagi kesarangnya, merupakan inspirator
ditemukannya algoritma semut[10]. Kemampuannya dalam menemukan solusi yang
baik dari sekian solusi yang ada dikarenakan penggunaan informasi lokal berupa
pheromone yang ditinggalkan setiap kali semut melewati suatu jalur. Semakin banyak
semut yang melalui jalur tersebut maka pheromone yang ditinggalkan semakin
banyak sehingga semut untuk menemukan jalur selanjutnya dengan menggunakan
pemilihan acak yang disesuikan berdasarkan besarnya pheromone yang dimiliki oleh
jalur tersebut. Implementasi algoritma semut telah banyak dilakukan seperti pada
permasalahan TSP, Spanning tree dan penjadwalan. Pada permasalahan penjadwalan
produksi jobshop, dalam penerapannya diperlukan teknik pendekatan graph yang
akan menjadikan sebuah representasi dari urutan joboperasi dari kasus penjadwalan
yang diberikan.
Ada tiga jenis algoritma semut yaitu : ant cycle, ant-density dan ant-quantity.
membedakan antara ketiga jenis algoritma semut tersebut adalah pada proses
pembarharuan pheromone semut. Pada penelitian ini pendekatan algoritma semut
yang digunakan adalah ant cycle untuk menemukan waktu penyelesaian keseluruhan
job yang paling optimal.
Algoritma genetika adalah suatu algoritma pencarian yang meniru mekanisme
dari genetika alam. Algoritma Genetika banyak dipakai pada aplikasi bisnis, teknik
maupun pada bidang keilmuan lainnya. Algoritma ini dimulai dengan kumpulan
solusi yang disebut dengan populasi[9]. Solusi-solusi dari sebuah populasi diambil
dan digunakan untuk membentuk populasi yang baru. Hal ini dimotivasi dengan
harapan bahwa populasi yang baru dibentuk tersebut akan lebih baik daripada yang
lama. Solusi-solusi yang dipilih untuk membentuk solusisolusi yang baru dipilih
sesuai dengan fitness mereka masing-masing.
Di dalam proses tersebut dapat terjadi variasi yang disebabkan karena adanya
mutasi, sehingga keturunan yang dihasilkan dapat mempunyai kelebihan bahkan tidak
memiliki kekurangan dari orangtuanya. Setiap makhluk hidup akan mengalami
seleksi alam, sehingga makhluk hidup yang mempunyai kemampuan untuk
beradaptasi dengan lingkungan sekitarnya dapat bertahan sampai generasi
selanjutnya. Semakin bagus atau sesuai fitness dari sebuah solusi maka solusi tersebut
mempunyai peluang besar untuk dipilih. Proses ini dilakukan berulang sampai
kondisi tertentu dipenuhi.
c)
Algoritma Backtrack
Backtrack adalah algoritma berbasis DFS untuk mencari solusi persoalan.
Backtracking merupakan algoritma perbaikan dari
brute-force
, yang secara sistematis
hanya mencari solusi yang mungkin. Umumnya algoritma
Backtrack
bersifat rekursif,
Algoritma runut balik pertama kali diperkenalkan oleh D.H Lehmer pada
tahun 1950. Algoritma ini cukup mangkus untuk digunakan dalam beberapa
penyelesaian masalah dan juga untuk memberikan kecerdasan buatan dalam
game
.
Beberapa
game
populer semisal Sudoku, Labirin, Catur juga bisa diimplementasikan
dengan menggunakan algoritma runut balik.
Algoritma runut balik (
backtrack
) merupakan algoritma yang digunakan
untuk mencari solusi persoalan secara lebih mangkus dari pada menggunakan
algoritma
brute force.
Algoritma ini akan mencari solusi berdasarkan ruang solusi
yang ada secara sistematis namun tidak semua ruang solusi akan diperiksa, hanya
pencarian yang mengarah kepada solusi yang akan diproses.
Algoritma runut balik berbasis pada DFS (
Depth First Search
) sehingga
aturan pencariannya akan mengikut kepada aturan pencarian DFS yaitu dengan
mencari solusi dari akar ke daun (dalam pohon ruang solusi) dengan pencarian
mendalam. Simpul-simpul yang sudah dilahirkan (diperiksa) dinamakan simpul hidup
(
live node
). Simpul hidup yang sedang diperluas dinamakan simpul-E atau
Expand
Node.
Depth-first search
atau DFS adalah sebuah algoritma untuk melakukan
penelusuran atau pencarian pada pohon, struktur pohon, atau graf. Penelusuran atau
pencarian ini dimulai pada simpul akar dan menelusuri sejauh mungkin sepanjang
cabang yang ada.
Depth-first search
ini pertama kali ditemukan pada abad ke-19 oleh
ahli matematika dari Prancis bernama Charles Pierre Trémaux. Secara formal, DFS
dengan penelusuran yang dimulai dari simpul anak pertama sebuah pohon dan terus
masuk hingga simpul yang diinginkan ditemukan, atau hingga mencapai simpul yang
tidak mempunyai anak. Setelah itu, terjadi
backtracking
sehingga penelusurannya
kembali ke simpul terdekat yang belum dikunjungi. Biasanya, pada implementasi
yang tidak rekursif, semua simpul yang telah ditelusuri dengan DFS ini dimasukkan
ke dalam sebuah
stack.
Algoritma
backtrack
mempunyai prinsip dasar yang sama seperti
brute-force
yaitu mencoba segala kemungkinan solusi. Perbedaan utamanya adalah pada ide
dasarnya, semua solusi dibuat dalam bentuk pohon solusi (pohon ini tentunya
berbentuk abstrak) dan algoritma akan menelusuri pohon tersebut secara
DFS
(
depth
field search)
sampai ditemukan solusi yang layak. Agar lebih jelas bisa dilihat pada
[image:33.612.91.500.444.658.2]pohon solusi berikut:
Keterangan Gambar Pohon Solusi :
Misalkan pohon diatas menggambarkan solusi dari suatu permasalahan. Untuk
mecapai solusi (5), maka jalan yang ditempuh adalah (1,2,5), demikian juga dengan
solusi-solusi yang lain. Algoritma backtrack akan memeriksa mulai dari solusi yang
pertama yaitu solusi (5). Jika ternyata solusi (5) bukan solusi yang layak maka
algoritma akan melanjutkan ke
solusi (6). Jalan yang ditempuh ke solusi (5) adalah (1,2,5) dan jalan untuk ke solusi
(6) adalah (1,2,6). Kedua solusi ini memiliki jalan awal yang sama yaitu (1,2). Jadi
daripada memeriksa ulang dari (1) kemudian (2) maka hasil (1,2) disimpan dan
langsung memeriksa solusi (6). Pada pohon yang lebih rumit, cara ini akan jauh lebih
efisien daripada brute-force.
2.4
Alat Bantu Pemodelan
2.4.1
Perancangan Berorientasi Objek
Rekayasa adalah bentuk upaya manusia untuk mencari atau merancang produk
yang berkualitas. Produk dapat berupa sistem atau perangkat lunak yang sedang atau
akan dibangun dengan satu model pengembangan. Orientasi objek adalah cara
pandang algoritma yang di implementasikan pada bahasa pemrograman berorientasi
objek.
OOA adalah teknik yang model driven yang mengintegrasikan data dan proses
yang disebut objek. Model OOA adalah gambar-gambar yang mengilustrasikan
antar objek. Contoh yang paling terkenal adalah UML (Unified Modelling
Language).
Cara berpikir orienasi objek adalah segala sesuatu dipandang dengan objek.
Objek dapat berupa konsep, abstraksi, atau sesuatu dengan batas-batas tegas dan
mempunyai arti untuk persoalan yang ditangani. Objek mempunyai identitas dan
dapat dibedakan. Ada dua kegunaan objek yaitu : untuk meningkatkan pemahaman
dunia nyata dan menyediakan dasar pengetahuan praktis untuk implementasi
komputer.
Perangkat lunak masih seperti model yang digunakan dalam metodologi
konvensional, yaitu dapat menggunakan model
waterfall
. Dalam model
waterfall
terdapat lima tahapan proses, yaitu : tahap rekayasa sistem, analisis perancangan,
pemrograman, pengujian dan pemeliharaan. Dengan menggunakan
waterfall
,
memungkinkan adanya pengembangan aplikasi dikemudian hari, sehingga aplikasi
yang dibangun dapat bertahan dalam jangka waktu yang panjang.
2.4.2
UML (
Unified Modeling Language
)
UML Singkatan
dari Unified Modeling Language
yang berarti bahasa pemodelan
standar [3]. mengatakan sebagai bahasa, berarti
UML
memiliki sintak dan semantic.
Ketika kita membuat model menggunakan konsep
UML
ada aturan-aturan yang harus
diikuti. Bagaimana elemen pada model-model yang kita buat berhubungan satu
dengan lainnya harus mengikuti standar yang ada.
UML
bukan hanya sekedar
diagram, tetapi juga menceritakan konteksnya. Ketika pelanggan memesan sesuatu
Bagaimana keamanan terhadap sistem yang kita buat? Dan sebagainya dapat dijawab
dengan
UML
. UML diaplikasikan untuk maksud tertentu, biasanya antara lain untuk :
1.
Merancang perangkat lunak
2.
Sarana komunikasi antara perangkat lunak dengan proses bisnis.
3.
Menjabarkan sistem secara rinci untuk analisa dan mencari apa yang diperlukan
sistem.
4.
Mendokumentasikan sistem yang ada, proses-proses dan organisasinya.
UML
telah diaplikasikan dalam bidang investasi perbankan, lembaga kesehatan,
departemen pertahanan, sistem terdistribusi, sistem pendukung alat kerja, retail, sales
dan supplier.
Blok pembangunan utama
UML
adalah diagram. Beberapa diagram ada yang rinci
(jenis timing diagram) dan lainnya ada yang bersifat umum (misalnya diagram kelas).
Para pengembang sistem berorientasi objek menggunakan bahasa model untuk
menggambarkan, membangun dan mendokumentasikan sistem yang mereka rancang.
UML
memungkinkan para anggota team untuk bekerja sama dengan bahasa model
yang sama dalam mengaplikasikan beragam sistem. Intinya,
UML
merupakan alat
komunikasi yang konsisten dalam mensuport para pengembang sistem saat ini.
Sebagai perancangan sistem, maua tidak mau pasti akan menjumapai
UML,
baik kita
2.4.2.1
Use Case Diagram
Use case diagram menggambarkan fungsionalitas yang diharapkan dari sebuah
Class diagram menggambarkan struktur dan deskripsi
class
,
package
dan objek
beserta hubungan satu sama lain seperti
containment
, pewarisan, asosiasi, dan
lain-lain.
Class memiliki tiga area pokok :
1. Nama (dan stereotype)
2. Atribut
3. Metoda
2.4.2.3
Activity Diagram
Activity diagram menggambarkan berbagai alir aktivitas dalam sistem yang
sedang dirancang, bagaimana masing-masing alir berawal,
decision
yang mungkin
terjadi dan bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan
proses paralel yang mungkin terjadi pada beberapa eksekusi.
Activity diagram merupakan state diagram khusus, di mana sebagian besar
state
adalah
action
dan sebagian besar transisi di-
trigger
oleh selesainya state sebelumnya
(
internal processing
). Oleh karena itu activity diagram tidak menggambarkan
behaviour internal sebuah sistem (dan interaksi antar subsistem) secara eksak, tetapi
lebih menggambarkan proses-proses dan jalur-jalur aktivitas dari level atas secara
umum [2].
2.4.2.4
Sequence Diagram
Sequence Diagram adalah suatu diagram yang memperlihatkan atau
sebuah urutan atau rangkaian waktu. Interaksi antar objek tersebut termasuk
workstation
, atau piranti keras lain yang digunakan untuk men-
deploy
komponen
dalam lingkungan sebenarnya. Hubungan antar node (misalnya TCP/IP) dan
requirement
dapat juga didefinisikan dalam diagram ini [2].
2.5
Pengertian Sitem Informasi
Informasi merupakan salah satu sumber daya penting dalam suatu organisasi;
digunakan sebagai bahan pengambilan keputusan. Sehubungan dengan hal itu,
informasi haruslah berkualitas [6]. Kualitas informasi ditentukan oleh tiga faktor,
yaitu :
1.
Relevasi,
2.
Tepat waktu, dan
3.
Akurasi.
Sistem informasi dapat dikatakan sebagai suatu sistem yang dibuat oleh
manusia yang terdiri dari komponen-komponen dalam suatu sistem organisasi untuk
mencapai suatu tujuan yaitu menyajikan informasi. Kegiatan sistem informasi
mencakup :
1.
Input
, menggambarkan kegiatan untuk menyediakan data untu diproses.
2.
Proses
,
menggambarkan bagaimana suatu data diproses untuk mengasilkan
suatu informasi yang bernilai tambah.
3.
Output
, suatu kegiatan untuk menghasilkan laporan proses diatas tersebut.
4.
Penyimpanan, suatu kegiatan untuk memelihara dan menyajikan data.
5.
Kontrol, suatu aktifitas untuk menjamin bahwa sistem informasi tersebut
2.6
Jaringan yang ada di SMAN 2 Purwakarta
Client / Server
merupakan sebuah paradigma dalam teknologi informasi yang
merujuk kepada cara untuk mendistribusikan aplikasi ke dalam dua pihak yaitu
client
dan
server
.
Server
adalah komputer yang dapat
member
ikan
service
ke
client
,
sedangkan
client
adalah komputer yang mengakses beberapa
service
yang ada di
server
. Ketika
client
membutuhkan suatu
service
yang ada di
server
, dia akan
mengirim
request
kepada
server
lewat jaringan. Jika
request
tersebut dapat
dilaksanakan, maka
server
akan mengirim balasan berupa
service
yang dibutuhkan
untuk saling berhubungan menggunakan
Socket
.
1.
Karakteristik
Server
a.
Pasif
b.
Menunggu
request
c.
Menerima
request
, memproses mereka dan mengirimkan balasan berupa
service
2.
Karakteristik
Client
a.
Aktif
b.
Mengirim
request
c.
Menunggu dan menerima balasan dari
server
Socket
adalah sebuah endpoint untuk komunikasi didalam jaringan. Sepasang proses
atau thread berkomunikasi dengan membangun sepasang socket, yang masing-masing
proses memilikinya.
Socket
dibuat dengan menyambungkan dua buah alamat IP
dimana sebuah
server
akan menunggu
client
pada
port
tertentu. Begitu ada
client
yang menghubungi
server
maka
server
akan menyetujui komunikasi dengan
client
melalui
socket
yang dibangun.
Gambar 2. 2 Jaringan yang ada di SMAN 2 Purwakarta
2.7
Java
Java adalah bahasa pemrograman serbaguna. Java dapat digunakan untuk
membuat suatu program sebagaimana anda membuatnya dengan bahasa seperti
pascal atau C++. Yang lebih menarik, java juga mendukung sumber daya
Internetyang saat ini popular, yaitu World Wide Web atau yang sering disebut
Web saja. Java juga mendukung aplikasi klien/server, baik dalam jaringan local
(LAN) maupun jaringan beskala luas (WAN).
Dalam sejumalah literature disebutkan bahwa Java merupakan hasil
perpaduan sifat dari sejumlah bahasa pemograman, yaitu C, C++, Objek-C,
keamanan. Yang tak kalah penting adalah bahwa Java menambahkan paradigma
pemograman yang sederhana. Jika Anda telah mengenal C atau C++, yang
mengandalkan pointer dan Anda dapat merasakan keruwetannya, Java justru
meninggalkannya
sehingga
Anda akan
memperoleh kemudahan saat
menggunakannya [8].
2.8
My SQL
MySQL
adalah multi user database yang menggunakan bahasa
Strucktured
Query Language
(
SQL
).
MySQL
merupakan
database server multi user
dan
multi
threaded
yang tangguh. Dengan memiliki banyak
feature
MySQL
bisa bersaing
dengan
database
komersial sekalipun. Tidak mengejutkan
MySQL
menjadi database
pilihan untuk banyak pengguna Delphi 6.
MySQL
termasuk jenis
RDBMS
(
Relational
Database Management System
) itulah sebabnya istilah seperti tabel, baris dan kolom
digunakan pada
MySQL
. Pada
MySQL
sebuah
database
mengandung satu atau
sejumlah tabel. Tabel terdiri dari sejumlah baris dan setiap baris mengandung satu
atau beberapa kolom[7].
MySQL
mampu menangani data yang cukup besar. Perusahaan yang
mengembangkan
MySQL
yaitu TcX, mengaku menyimpan data lebih dari 40
database
, 10-000 tabel dan sekitar 7 juta baris, totalnya kurang lebih 100
Gigabyte
data. SQL adalah bahasa standar yang digunakan untuk mengakses
database
server
.
Bahasa ini pada awalnya dikembangkan oleh IBM, namun telah diadopsi 25 dan
29 BAB III
ANALISIS DAN PERANCANGAN
3.1Analisis Sistem
Sistem adalah sekumpulan unsur atau elemen yang saling berkaitan dan
saling mempengaruhi dalam melakukan kegiatan bersama untuk mencapai suatu
tujuan. Sedangkan analisis sistem adalah penguraian dari suatu sistem informasi
yang utuh ke dalam bagian-bagian komponennya dengan maksud untuk
mengidentifikasikan dan mengevaluasi permasalahan, kesempatan, hambatan
yang terjadi dan kebutuhan yang diharapkan sehingga dapat diusulkan perbaikan.
Tahap analisis dilakukan setelah tahap perencanaan sistem dan sebelum tahap
desain sistem. Tahap ini merupakan tahap yang kritis dan sangat penting, karena
kesalahan dalam tahap ini menyebabkan kesalahan pada tahap selanjutnya.
3.1.1 Analisis Masalah
Adapun masalah sistem yang berjalan di SMAN 2 PWK adalah sebagai berikut :
1. Untuk menyusun jadwal pelajaran membutuhkan waktu yang cukup lama.
2. Saat ini jadwal yang di berikan kepada guru melalui kertas di sekolah yang
dapat mengakibatkan jadwal dapat terkena air, sobek, dan hilang.
3. Perhitungan masih manual untuk menyusun jadwal sehingga bagian
kurikulum harus menghitung jumlah guru, ketersedian kelas, dan waktu
4. Sering terjadinya waktu yang bersamaan sehingga dilakukan perhitungan
ulang sampai mendapatkan jadwal yang benar.
3.1.2 Analisis Sistem Yang Berjalan
Prosedur pembuatan penjadwalan yang berjalan di SMAN2 Purwakarta
saat ini berupa proses penjadwalan secara manual, dimana proses-proses tersebut
sebagai berikut :
1. Masing-masing guru pelajaran harus mengisikan formulir jadwal
mengajar, lalu memberikan formulir jadwal mengajar tersebut ke bagian
kurikulum.
2. Guru kurikulum memproses Data formulir jadwal guru untuk membuat
jadwal kurikulum baru.
3. Jika ada jadwal mengajar yang bentrok maka bagian kurikulum diskusi
dengan guru bersangkutan dan jika tidak ada jadwal bentrok maka
mendapatksn hasil jadwal mengajar.
4. Guru kurikulum memberikan jadwal guru semester terbaru keseluruh guru.
Dari penjabaran di atas dapat di simpulkan bahwa, sistem pembuatan jadwal
masih manual, sehingga tabrakan waktu antara guru yang mempunyai proses
pembajalaran di luar masih membutuhkan pencocokan waktu, sehingga
Gambar 3. 1 Prosedur pembuatan jadwal.
3.1.3 Analisis Metode Algoritma Backtrack Terhadap Kasus Penjadwalan Dalam menyelesaikan masalah pada penjadwalan maka dibuat suatu sistem
informasi penjadwalan mengajar yang terkomputerisasi dimana dalam melakukan
proses penjadwalan pihak yang berwenang (guru kurikulum) tinggal memasukkan
parameter input yang dibutuhkan sehingga dapat menghasilkan output
penjadwalan pelajaran SMAN 2 yang diinginkan dengan berbasis destop aplikasi.
Dan diharapkan juga dengan adanya proyek akhir ini nantinya dalam menyusun
jadwal belajar SMA yang meliputi jadwal pelajaran SMA disertai dengan guru
Adapun aturan-aturan dalam membuat Algoritma backtrack yaitu :
1. Satu guru hanya mengajar satu mata pelajaran.
2. Guru yang memiliki jabatan di sekolah memiliki jam pelajaran khusus.
3. Guru tetap mengajar 24 jam pelajaran dalam seminggu.
4. Guru honorer bisa mengajar melebihi 24 jam dalam seminggu.
5. Guru yang memiliki keperluan khusus di luar sekolah harus
mengisikan formulir yang sudah disediakan.
Berikut adalah tahapan membuat jadwal :
Gambar 3. 2 Tahapan membuat jadwal
Keterangan Gambar Pohon Solusi :
Misalkan pohon diatas menggambarkan solusi dari suatu permasalahan. Untuk
mecapai solusi (5), maka jalan yang ditempuh adalah (1,2,5), demikian juga
dengan solusi-solusi yang lain. Algoritma backtrack akan memeriksa mulai dari
layak maka algoritma akan melanjutkan ke solusi (6). Jalan yang ditempuh ke
solusi (5) adalah (1,2,5) dan jalan untuk ke solusi (6) adalah (1,2,6). Kedua solusi
ini memiliki jalan awal yang sama yaitu (1,2). Jadi daripada memeriksa ulang dari
(1) kemudian (2) maka hasil (1,2) disimpan dan langsung memeriksa solusi (6).
Pada pohon yang lebih rumit, cara ini akan jauh lebih efisien daripada brute-force.
Gambar 3.2 merupakan tahapan yang terjadi dalam Sistem Informasi
kondisi yang ada.
Berikut ini sampel hasil perhitungan algoritma backtrack yang diterapkan pada
Gambar 3. 4 Hasil Perhitungan algoritma backtrack
Untuk mencari jadwal lengkap diperlukan pencarian dengan 1 base , 2 3 4
sebagai pohon solusi langkah pertama untuk mencari jam pelajaran, hari, dan
kelas pencarian dilakukan dengan menelusuri dari base ke node 2 setelah
mendapatkan solusi di node 2 maka jalur yang ditempuh dari base 1 ke 2 yaitu 1,
2 dibalikan menjadi 2, 1 sehingga pencarian kembali ke base 1, karena di node 3,
ke node 5 sehingga terdapat track 1, 3, 5 jika mendapakan solusi balik ke 5, 3, 1
1. Processor dengan Core i3 Duo atau lebih
2. RAM dengan kapasitas 2 GB atau lebih
3. HardDisk dengan kapasitas 10 GB atau lebih
4. Monitor
5. Keyboard
6. Mouse
Sedangkan perangkat keras yang dibutuhkan sebagai komputer client
setelah dianalisis sebagai berikut :
1. Processor dengan Core i3 Duo atau lebih
2. RAM dengan kapasitas 2 GB atau lebih
3. HardDisk dengan kapasitas 10 GB atau lebih
4. Monitor
5. Keyboard
6. Mouse
3.1.4.2Analisis Kebutuhan Perangkat Lunak
Kebutuhan perangkat lunak (software) yang dimaksud adalah program yang
dibuat dengan menggunakan bahasa pemrograman dan akan dianalisis pada
sebuah sistem operasi. Dari hasil analisis ternyata perangkat lunak yang gunakan
adalah :
Perangkat lunak yang ada saat ini adalah sebagai berikut :
a. Windows XP
b. Microsoft Office
2. Client
a. Windows XP
b. Microsoft Office
Perangkat lunak yang dibutuhkan adalah sebagai berikut :
1. Server
a. Windows 7
b. My SQL 5.0
c. Perangkat lunak aplikasi dengan menggunakan bahasa
pemrograman (JRE) Java Runtime Environment.
2. Client
a. Windows 7
b. (JRE) Java Runtime Environment.
3.1.4.3 Analisis Jaringan
Analisis jaringan yang ada saat ini di SMAN 2 Purwakarta adalah topologi
jaringan dibuat dengan menggunakan Hub dan kabel jaringan. Dari hasil analisis
Gambar 3. 5 Arsitektur Jaringan
3.1.4.4Analisis Pengguna
Penulis menganalisis dalam sistem yang terlibat dalam sistem penjadwalan
ini terbagi menjadi 2 user, yaitu :
a. Adapun karakteristik dari masing-masing pengguna Lama dalam tabel
sebagai berikut :
Tabel 3. 1 Karakteristik Pengguna Lama
Pengguna
Karakteristik Latar
belakang pendidikan
Usia Jabatan Tugas
Guru
Guru kurikulum : S1
Guru : S1
Guru kurikulum : 37
Guru : 29
Guru kurikulum : Wakasek dan urusan-urasan kurikulum. Guru : Mengajar
Guru kurikulum : bebertugas membuat jadwal .
b. Adapun karakteristik dari masing-masing pengguna lama dalam tabel
sebagai berikut :
Tabel 3. 2 Karakteristik Pengguna Baru
User Karakteristik
Admin (guru
kurikulum)
Admin adalah orang yang dapat mengoperasikan komputer dengan
baik
Admin yang ahli dalam bidang komputerisasi
Guru Guru memiliki dasar-dasar pengoperasian komputer dengan baik
3.1.5 Analisis Kebutuhan Fungsional
Kebutuhan dalam pembangunan aplikasi ini menyangkup beberapa diagram
UML, dimana diagram-diagram tersebut masing-masing menggambarkan
proses-proses yang berjalan pada aplikasi penjadwalan ini. Berikut diagram-diagram
yang dipakai dalam menganalisis program :
1. Use case diagram
2. Class diagram
3. Sequence diagram
4. State diagram
5. Activity diagram
6. Component diagram
Fungsionalitas dari Sistem Informasi Penjadwalan Mengajar adalah
sebagai berikut :
a. Login/Logout : terdapat 3 tipe user yaitu admin, wakasek, dan guru.
b. Manajemen data kelas : melakukan pengaturan penginputan maupun
3.1.5.2 Deskripsi Use Case Admin
Pada bagian ini akan dijelaskan masing-masing deskripsi dari Use Case
Diagram yang dilakukan oleh Admin per use case-nya, mulai dari manage data
induk, manage data accesable induk, manage data user rule, manage data user
login, manage data guru, manage data kelas, manage data mata pelajaran, generate
jadwal, view jadwal, login information, pencarian, bantuan, dan information
developer.
a. Login Admin
Nama : Login Admin
Aktor : Admin
Deskripsi : Admin memasukkan username dan password untuk mengakses halaman utama admin.
Kondisi Sebelum : Tampilan login admin
Kondisi Sesudah : Admin masuk ke form utama aplikasi Tabel 3. 3 Deskripsi Use Case Login
AKTOR SISTEM
1. Admin menjalankan aplikasi
2. Tampilkan halaman login 3. Memasukan user name dan
password
3. Memeriksa kecocokan username dan password.
1. jika cocok akan memeriksa user rule dan akan muncul form dengan menu yang ada user rule.
2. jika tidak akan muncul notifikasi username dan password salah.
a. Mengelola Data Module
1. Menambah Data Module
Nama : Menambah Data module
Aktor : Admin
Deskripsi : Admin dapat menambah data module. Kondisi Sebelum : Tampil Form utama
Kondisi Sesudah : Admin masuk ke form modul
Tabel 3. 4 Deskripsi Use Case Menambah Data Module
AKTOR SISTEM
1. Admin login
2. Login berhasil
3. Menampilkan form utama aplikasi
4. Memilih user
5. Memilih Module
6. Menampilkan data module 7. Mengisikan data module
8. Jika ada data yang belum di isikan klik save.
9. Informasi data yang di masukan tidak boleh kosong
10. Jika data sudah di isikan pilih save.
2. Mengubah Data Module
Nama : Mengubah Data module
Aktor : Admin
Deskripsi : Admin dapat mengubah data module.
Kondisi Sebelum : Tampil Form utama
Kondisi Sesudah : Admin masuk ke form module
Tabel 3. 5 Deskripsi Use Case Mengubah Data Module
AKTOR SISTEM
1. Admin login
2. Login berhasil
3. Menampilkan form utama aplikasi 4. Memilih User
5. Memilih Module
6. Menampilkan form data module 7.Memilih data yang akan di edit
atau di ubah
8. Menampilkan form data module yang akan di edit atau di ubah 9.Mengisikan form data yang akan di
ubah, lalu klik update
10. Muncul informasi data module berhasil diupdate
11. Jika form data yang akan di ubah, lalu klik cancel
3. Menghapus Data Module
Nama : Menghapus Data module
Aktor : Admin
Deskripsi : Admin dapat menghapus data module.
Kondisi Sebelum : Tampil Form utama
Kondisi Sesudah : Admin masuk ke form module
Tabel 3. 6 Deskripsi Use Case Menghapus Data Module
AKTOR SISTEM
1. Admin login
2. Login berhasil
3. Menampilkan form utama aplikasi 4. Memilih user
5. Memilih Module
6. Tampilkan data module
7. Menampilkan form berisi data module 8. Memilih data yang akan di
delete
9. Konfirmasi, anda yakin menghapus data module???
1. Yes, maka akan ada informasi data module berhasil di hapus
b. Mengelola Data User Login
1. Menambah Data User Login
Nama : Menambah Data User Login
Aktor : Admin
Deskripsi : Admin menambah data user login
Kondisi Sebelum : Tampil Form utama
Kondisi Sesudah : Admin masuk ke form user login
Tabel 3. 7 Deskripsi Use Case Menambah Data User Login
AKTOR SISTEM
1. login
2. Login berhasil
3. Menampilkan form utama aplikasi
4. Memilih user
5. Memilih User Login
6. Menampilkan data user login 7. Mengisikan data user login
8. Jika ada data yang belum di isikan klik save.
9. Informasi data yang di masukan tidak boleh kosong
10. Jika data sudah di isikan pilih save.
2. Mengubah Data User Login
Nama : Mengubah Data User Login
Aktor : Admin
Deskripsi : Admin mengubah data user login
Kondisi Sebelum : Tampil Form utama
[image:64.612.85.503.266.692.2]Kondisi Sesudah : Admin masuk ke form user login
Tabel 3. 8 Deskripsi Use Case Mengubah Data User Login
AKTOR SISTEM
1. login
2. login berhasil
3. Tampilkan form utama aplikasi 4. Memilih user
5. Memilih User Login
6. Tampilkan form data hak akses pengguna
7. Memilih data yang akan di edit atau di ubah
8. Menampilkan form data hak akses pengguna
9. Mengisikan data yang akan di ubah , jika klik update
10.Menampilkan form data hak akses pengguna yang sudah diupdate, mka akan muncul informasi data user login berhasil diupdate
11.Mengisikan data yang akan diubah, jika klik cancel
3. Menghapus Data User Login
Nama : Menghapus Data User Login
Aktor : Admin
Deskripsi : Admin menghapus data user login
Kondisi Sebelum : Tampil Form utama
Kondisi Sesudah : Admin masuk ke form user login
Tabel 3. 9 3 Menghapus Data User Login
AKTOR SISTEM
1. login
2. login berhasil
3. Menampilkan form utama aplikasi
4. Memilih User 5. Memilih User Login
6. Menampilkan form data hak akses pengguna
7. Memilih data yang akan di delete atau di hapus
8. Konfirmasi, anda yakin akan menghapus data login??
1. Ya, maka akan muncul informasi data user login berhasil di hapus
c. Mengelola Data Guru
1. Menambah Data Guru
Nama : Mengubah Mengelola Data Guru
Aktor : Admin
Deskripsi : Admin dapat menambah data guru
Kondisi sebelum : Tampil Form utama
Kondisi Sesudah : Admin masuk ke form menambah data guru
Tabel 3. 10 1.Deskripsi use case Menambah Data Guru
AKTOR SISTEM
1. login
2. login berhasil
3. Menampilkan form utama aplikasi
4. Memilih data guru
5. Menampilkan form data guru 6. Memilih data guru yang akan di
masukan, lalu klik save
2. Mengubah Data Guru
Nama : Mengubah Mengelola Data Guru
Aktor : Admin
Deskripsi : Admin dapat mengubah data guru
Kondisi Sebelum : Tampil Form utama
Kondisi Sesudah : Admin masuk ke form mengubah data guru
Tabel 3. 11 Deskripsi Use Case Mengubah Data Guru
AKTOR SISTEM
1. login
2. login berhasil
3. Menampilkan form utama aplikasi 4. Memilih data guru
5. Menampilkan form data guru 6. Memilih data guru yg akan di
ubah, jika klik update
7. maka akan muncul iformasi data guru berhasil diupdate
8. Memilih data guru yang akan di ubah, jika klik cancel
3. Mengahapus Data Guru
Nama : Menghapus Mengelola Data Guru
Aktor : Admin
Deskripsi : Admin dapat menghapus data guru
Kondisi Sebelum : Tampil Form utama
Kondisi Sesudah : Admin masuk ke form mengelola data guru
Tabel 3. 12 Deskripsi Use Case Menghapus Data Guru
AKTOR SISTEM
1. login
2. login berhasil
3. Menampilkan form utama aplikasi 4. Memilih data guru
5.Menampilkan form data guru 6. Memilih data yang akan di delete atau
dihapus
7.Konfirmasi, ada yakin akan menghapus data guru ??? 1.Ya, maka akan muncul informasi
data user login berhasil dihapus 2.No, maka kan kembali ke form
e. Mengelola Data Kelas
1. Menambah Data Kelas
Nama : Menambah Mengelola Data Kelas
Aktor : Admin
Deskripsi : Admin dapat menambah data kelas
Kondisi Sebelum : Tampil Form utama
Kondisi Sesudah : Admin masuk ke form mengelola data kelas
Tabel 3. 13 Deskripsi Use Case Mengubah Data Pengguna Login
AKTOR SISTEM
1. Login
2. Login Berhasil 3. Memilih data kelas
4.Menampilkan form data kelas 5. Mengisikan form data kelas
6. Jika ada data yang belum di isikan klik save.
7.Informasi data yang di masukan tidak boleh kosong
8. Jika data sudah di isikan pilih save
2. Mengubah Data Kelas
Nama : Mengubah Mengelola Data Kelas
Aktor : Admin
Deskripsi : Admin dapat mengubah data kelas
Kondisi Sebelum : Tampil Form utama
Kondisi Sesudah : Admin masuk ke form mengelola data kelas
Tabel 3. 14 Deskripsi Use Case Mengubah Data Pengguna Login
AKTOR SISTEM
1. Login
2. Login berhasil
3. Menampilkan form utama aplikasi
4. Memilih data kelas
5. Menampilkan form data kelas 6. Memilih data yang akan di edit
atau di ubah
7. Menampilkan form data kelas yang akan di edit atau di ubah
8. Mengisikan form data yang akan di ubah, lalu klik update
9. Muncul informasi data kelas berhasil diupdate
10. Jika form data yang akan di ubah, lalu klik cancel
3. Menghapus Data Kelas
Nama : Menghapus Mengelola Data Kelas
Aktor : Admin
Deskripsi : Admin dapat menghapus data kelas
Kondisi Sebelum : Tampil Form utama
Kondisi Sesudah : Admin masuk ke form mengelola data kelas
Tabel 3. 15 Deskripsi Use Case Mengubah Data Pengguna Login
AKTOR SISTEM
1. login
2. Login berhasil 3. Memilih user
4. Memilih Kelas
5. Tampilkan data kelas 6. Tampilkan data kelas 7. Memilih data yang akan di delete
8. Konfirmasi, anda yakin menghapus data kelas ???
1. Yes, maka akan ada informasi data module berhasil di hapus
f. Mengelola Data Mata Pelajaran
1. Menambah Data Mata Pelajaran
Nama : Menambah Mengelola Data Mata Pelajaran
Aktor : Admin
Deskripsi : Admin dapat menambah data mata pelajaran
Kondisi Sebelum : Tampil Form utama
Kondisi Sesudah : Admin masuk ke form mengelola data mata pelajaran
Tabel 3. 16 Deskripsi Use Case Menambah Data Mata Pelajaran
AKTOR SISTEM
1. login
2. Login berhasil
3. Menampilkan form utama aplikasi 4. Memilih Mata pelajaran
5. Menampilkan data mata pelajaran 6. Mengisikan data mata
pelajaran
7. Jika ada data yang belum di isikan klik save.
8. Informasi data yang di masukan tidak boleh kosong
9. Jika data sudah di isikan pilih save.
2. Mengubah Data Mata Pelajaran
Nama : Mengubah Mengelola Data Mata Pelajaran
Aktor : Admin
Deskripsi : Admin dapat mengubah data mata pelajaran Kondisi Sebelum : Tampil Form utama
[image:73.612.122.518.270.688.2]Kondisi Sesudah : Admin masuk ke form mengelola data mata pelajaran
Tabel 3. 17 Deskripsi Use Case Mengubah Data Pengguna Login
AKTOR SISTEM
1. login
2. Login berhasil
3. Menampilkan form utama aplikasi
4. Memilih Data Mata Pelajaran
5. Menampilkan form data mata pelajaran
6. Memilih data yang akan di edit atau di ubah
7. Menampilkan form data mata pelajaran yang akan di edit atau di ubah
8. Mengisikan form data yang akan di ubah, lalu klik update
9. Muncul informasi data mata pelajaran berhasil diupdate
10. Jika form data yang akan di ubah, lalu klik cancel
3. Menghapus Data Mata Pelajaran
Nama : Menghapus Mengelola Mata Pelajaran
Aktor : Admin
Deskripsi : Admin dapat menghapus mata pelajaran
Kondisi Sebelum : Tampil Form utama
[image:74.612.99.509.271.576.2]Kondisi Sesudah : Admin masuk ke form mengelola data mata pelajaran
Tabel 3. 18 Deskripsi Use Case Mengubah Data Pengguna Login
AKTOR SISTEM
1. login
2. Login berhasil 3. Memilih Data Mata Pelajaran
4. Tampilkan data mata pelajaran 5. Menampilkan form berisi data mata
pelajaran 6. Memilih data yang akan di
hapus
7. Konfirmasi, anda yakin menghapus data mata pelajaran???
1. Yes, maka akan ada informasi data mata pelajaran berhasil di hapus 2. No, maka akan kembali ke form
g. Mengelola Data Jadwal 1. Generate Data Jadwal
Nama : Generate Data Jadwal
Aktor : Admin
Deskripsi : Admin dapat Generate data jadwal
Kondisi Sebelum : Tampil Form utama
[image:75.612.111.529.274.511.2]Kondisi Sesudah : Admin masuk ke form Generate data jadwal
Tabel 3. 19 Deskripsi Use Case Generate Data Jadwal
AKTOR SISTEM
1. login
2. Login berhasil
3. Menampilkan form utama aplikasi 4. Memilih tombol generate
5. Jika sudah di generate dengan tahun yang sama, maka akan keluar pesan. Data jadwal sudah ada!!
2. Menghapus Data Jadwal
Nama : Menghapus Mengelola Data Jadwal
Aktor : Admin
Deskripsi : Admin dapat menghapus data jadwal
Kondisi Sebelum : Tampil Form utama
Kondisi Sesudah : Admin masuk ke form mengelola data jadwal Tabel 3. 20 Deskripsi Menghapus Data Jadwal
AKTOR SISTEM
1.login
2. Login berhasil
3. Menampilkan form utama aplikasi
4. Memilih tombol kosongkan
5. Konfirmasi, anda yakin menghapus data jadwal ???
1. Yes, maka akan ada informasi data jadwal berhasil di
hapus
h. Mengelola Data Accessable Module
1. Mengubah Data Accessable Module
Nama : Mengubah Data Accessable modul
Aktor : Admin
Deskripsi : Admin dapat mengubah data accessble modul. Kondisi Sebelum : Tampil Form utama
[image:77.612.113.528.276.522.2]Kondisi Sesudah : Admin masuk ke form accessable modul
Tabel 3. 21 Deskripsi Use Case Mengubah Data accesable Modul
AKTOR SISTEM
1. login
2. Login berhasil
3. Menampilkan form utama aplikasi 4. Memilih user
5. Memilih accessable module
6. Menampilkan data accessable module
7. Memilih data accessable module yang akan di ubah dan pilih save
i. Mengelola Data Karyawan
1. Menambah Data Karyawan
Nama : Menambah Mengelola Data Karyawan
Aktor : Admin
Deskripsi : Admin dapat menambah data karyawan
Kondisi Sebelum : Tampil Form utama
[image:78.612.90.499.303.634.2]Kondisi Sesudah : Admin masuk ke form mengelola data karyawan
Tabel 3. 22 Deskripsi Use Case Menambah Data karyawan
AKTOR SISTEM
1. login
2. Login berhasil
3. Menampilkan form utama aplikasi
4. Memilih User
5. Memilih Data Karyawan
6. Menampilkan data karyawan 7. Mengisikan data karyawan
8. Jika ada data yang belum di isikan klik save.
9. Informasi data yang di masukan tidak boleh kosong
10. Jika data sudah di isikan pilih save.
2. Mengubah Data Karyawan
Nama : Mengubah Mengelola Data karyawan
Aktor : Admin
Deskripsi : Admin dapat mengubah data karyawan
Kondisi Sebelum : Tampil Form utama
[image:79.612.118.520.290.689.2]Kondisi Sesudah : Admin masuk ke form mengelola data karyaw