perpustakaan.uns.ac.id digilib.uns.ac.id BAB III DESAIN DAN PERANCANGAN 3.1 Desain dan Perancangan Aplikasi Desain dan perancangan aplikasi merupakan langkah paling awal yang digunakan penulis untuk membuat aplikasi penjadwalan KBM SMP Negeri 3 Teras Boyolali. Seperti yang sudah dibahas pada bab sebelumnya, aplikasi ini digunakan untukmempercepat proses penyusunan kombinasi jadwal mata pelajaran yang efektif sebagai penunjang kegiatan belajar mengajar agar tidak terjadi bentrok guru mengajar dihari dan jam yang sama dibeda kelas. 3.2 Kebutuhan Aplikasi Dalam Perancangan aplikasi penjadwalan KBM, terdapat beberapa kebutuhan fungsional dan non-fungsionalyang digunakan dalam pembuatan serta kebutuhan daam perencanaan aplikasi, yaitu: 3.2.1 Kebutuhan NonFungsional Kebutuhan software untuk proses pembuatan aplikasi. a. Sistem Operasi. Pembuatan aplikasi ini memerlukan Sistem Operasi Windows karena aplikasi ini merupakan aplikasi yang berbasis Windows, disarankan minimal menggunakan Windows XP. Penulis menggunakan sistem operasi Windows 7. b. Web Browser Jenis aplikasi ini merupakan aplikasi web yang diakses melalui browser, misalnya Google Chrome dan Mozilla Firefox. Digunakan untuk menguji/ mengecek jalannya aplikasi sistem informasi tersebut. c. Web Server Disini web server yang penulis gunakan adalah Apache Yaitu server yang melayani permintaan aplikasi web. commit to user 14 15 digilib.uns.ac.id perpustakaan.uns.ac.id d. MySQL MySql merupakan software yang tergolong database server dan bersifat Open Source. Open Source menyatakan bahwa software ini dilengkapi dengan source code (kode yang dipakai untuk membuat MySql), selain tentu saja bentuk executable-nya atau kode yang dapat dijalankan secara langsung dalam sistem operasi , dan bisa. Database server adalah sebuah program yang bertugas melayani permintaan query database dari client diperoleh dengan cara mengunduh di Internet secara gratis. (Kadir, 2009) Hardware Yang digunakan untuk membuat aplikasi. 1. Processor. Processor yang digunakan untuk pembuatan aplikasi ini processor Intel Core i3dan untuk menjalankanminimal dengan Processor Intel Pentium . 2. Memory. Memory minimal yang digunakan dalam pembuatan aplikasi ini minimal menggunakan 4 Gb. Sedangkan memori yang digunakan dalam menjalankan aplikasi ini minimal dengan RAM 1 GB. 3. Harddisk. Spesifikasi harddisk yang digunakan dalam pembuatan dan untuk menjalankan aplikasi ini minimal 80 Gb. 3.2.2 Kebutuhan Fungsional Kebutuhan fungsional aplikasi ini adalah sebagai berikut : a. Mampu kombinasi jadwal KBM dari data guru, kelas, mata pelajaran, jam pelajaran yang ada. b. Mampu memberikan keluaran berupa informasi data jadwal KBM SMP Negeri 3 Teras Boyolali. commit to user 16 digilib.uns.ac.id perpustakaan.uns.ac.id 3.3 Perancangan 3.3.1 Diagram Konteks Diagram Konteks untuk sistem pembantu penentuan prioritas pemberian dana pinjaman ditunjukkan oleh Gambar 3.1: Gambar3.1. Diagram Konteks Keterangan : 1. a. Admin melakukan Login Pada aplikasi penjadwalan KBM SMP Negeri 3 Teras Boyolali. b. Admin melakukan manajemen jam pelajaran. c. Admin melakukan manajemen subkelas. d. Admin melakukan manajemenguru. e. Admin melakukan manajemen mata pelajaran. f. Admin melakukan manajemen ampu. g. Admin melakukan manajemen jadwal. h. Admin mendapatkan informasi data jam pelajaran. i. Admin mendapatkan informasi data subkelas. j. Admin mendapatkan informasi data guru. k. Admin mendapatkan informasi data mata pelajaran. l. Admin mendapatkan informasi data ampu. m. Admin mendapatkan informasi data jadwal. 2. a. Guest/tamumelihat jadwal KBM. b. Guest/tamu mendapatkan informasi jadwal KBM. commit to user 17 digilib.uns.ac.id perpustakaan.uns.ac.id 3.3.2 DFD Level 0 Penggambaran data flow diagram sistem secara global dapat di lihat pada gambar 3.2: Gambar3.2.DFD Level 0 commit to user 18 digilib.uns.ac.id perpustakaan.uns.ac.id 3.3.3 DFD Level 1 Proses 2 (ManagemenData) Pada proses manajemen Data terdapat enamsub proses yaitu manajemen data jam pelajaran, manajemen data subkelas, manajemen data guru, manajemen data mata pelajaran, manajemen data ampu dan manajemen jadwal. Pada manajemen data jam pelajaran, subkelas, guru, mata pelajaran, ampu, jadwal admin akan menginputkan, mengedit dan mendelete data jam pelajaran, subkelas, guru, mata pelajaran, ampu, jadwal seperti terlihat pada gambar 3.3: Gambar3.3.DFD Level 1 Management Data 3.3.4 DFD Level 2Proses 1(Manajemen Data Jam Pelajaran) Pada proses manajemen data jam pelajaran terdapat tiga proses yaitu input, edit dan delete jam pelajaran. Pada tambah jam pelajaran, commit user admin akan mengisi jam awaltodan jam akhir. Pada edit jam pelajaran, 19 digilib.uns.ac.id perpustakaan.uns.ac.id admin akan mengedit jamawal dan jam akhir. Pada delete jam pelajaran, admin akan menghapus data jam pelajaran. Untuk data yang telah ditambah, diedit maupun dihapus akan tersimpan di tabel jam pelajaranseperti terlihat pada gambar 3.4: Gambar 3.4. DFD Level 2Proses 1 (Management Data Jam Pelajaran) 3.3.5 DFD Level 2 Proses 2 (Management Data Subkelas) Pada proses manajemen data subkelas terdapat tiga proses yaitu input, edit dan delete subkelas. Pada tambah subkelas, admin akan mengisi id_subkelas. Pada edit subkelas, admin akan mengedit id_subkelas. Pada delete subkelas, admin akan menghapus data subkelas. Untuk data yang telah ditambah, diedit maupun dihapus akan tersimpan di tabel subkelasseperti terlihat pada gambar 3.5: commit to user 20 digilib.uns.ac.id perpustakaan.uns.ac.id Gambar 3.5. DFD Level 2Proses 2 (Management Data Subkelas) 3.3.6 DFD Level 2 Proses 3 (Management Data Guru) Pada proses manajemen data guru terdapat empat proses yaitu input, edit, delete dan cari data guru. Pada inputguru, admin akan mengisi nip, nama_guru, jeniskelamin, alamat_guru, telp_guru dan agama. Pada edit guru, admin akan mengedit nip, nama_guru, jeniskelamin, alamat_guru, telp_guru dan agama. Pada delete guru, admin akan menghapus data guru.Pada cari guru, admin akan mencari data guru berdasarkan nip dan nama. Untuk data yang telah diinput, diedit maupun dihapus akan tersimpan di tabel guruseperti terlihat pada gambar 3.6: commit to user 21 digilib.uns.ac.id perpustakaan.uns.ac.id 2.3.1 Input Data guru Data guru Data guru Admin Data guru Data guru Data guru Nip, nama Data guru 2.3.2 Edit Data guru Data guru Hasil Edit Data guru Edit Data guru 2.3.3 Delete Data guru 2.3.4 Cari Data guru guru Data Hapus guru Hasil data guru Nip, nama Data guru Gambar 3.6. DFD Level 2Proses 3(Management Data Guru) 3.3.7 DFD Level 2 Proses 4 (Management Data Mata Pelajaran) Pada proses manajemen data mata pelajaran terdapat tiga proses yaitu input, edit, delete data mata pelajaran. Pada inputmata pelajaran, admin akan mengisi nip, nama_guru, jeniskelamin, alamat_guru, telp_guru dan agama. Pada edit mata pelajaran, admin akan mengedit nip, nama_guru, jeniskelamin, alamat_guru, telp_guru dan agama. Pada delete mata pelajaran, admin akan menghapus data guruUntuk data yang telah diinput, diedit maupun dihapus akan tersimpan di tabel mata pelajaranseperti terlihat pada gambar 3.7: commit to user 22 digilib.uns.ac.id perpustakaan.uns.ac.id Gambar 3.7. DFD Level 2 Proses 4(Management Data Guru) 3.3.8 DFD Level 2 Proses 5 (Management Data Ampu) Pada proses manajemen data ampu terdapat empat proses yaitu input, edit, delete dan cari data ampu. Pada inputampu, admin akan mengisi nama_guru dan sub_kelas. Pada edit ampu, admin akan nama_guru dan sub_kelas. Pada delete ampu, admin akan menghapus data ampu. Pada cari data ampu, admin akan mencari berdasarkan nama_guru dan subkelas. Untuk data yang telah diinput, diedit maupun dihapus akan tersimpan di tabel ampuseperti terlihat pada gambar 3.8: commit to user 23 digilib.uns.ac.id perpustakaan.uns.ac.id Gambar 3.8. DFD Level 2 Proses 5(Management Data Ampu) commit to user 24 digilib.uns.ac.id perpustakaan.uns.ac.id 3.4 Flowchart Penjadwalan Berikut ini adalah flowchart untuk algoritma proses penjadwalan yang dapat dilihat pada gambar 3.9: Gambar 3.9. Flowchart Penjadwalan commit to user 25 digilib.uns.ac.id perpustakaan.uns.ac.id 3.5 Analisis Perancangan Basis Data 3.5.1 ERD ( Entity Relationship Diagram ) Entity Relationship Diagram, Penggambaran Relasi antar tabel dalam database dapat dilihat pada gambar 3.10: nip Nama_guru Jeniskelamin Alamat_guru Telp_guru agama Id_mapel Nama_mapel Guru Id_kelas N kkm Id_ampu durasi nip ampu N Mapel Sisajam Id_mapel sisajam Id_kelas Id_kelas Id_subkelas 1 Id_jadwal Id_ampu jadwal 1 mempunyai N Subkelas N mempunyai 1 Id_subkelas Id_hari Id_hari 1 Id_jampel mempunyai N Hari Nama_hari 1 Id_jampel mempunyai N jampel Jam_awal Jam_akhir Gambar 3.10. Entity Relationship Diagram commit to user Kelas 26 digilib.uns.ac.id perpustakaan.uns.ac.id 3.5.2 Relasi Antar Tabel Relasi Antar Tabel dapat dilihat pada gambar 3.11: Gambar 3.11. Relasi Antar Tabel 3.5.3 Desain Database Berikut ini adalah tabel- tabel yang digunakan dalam database aplikasi penjadwalan. 3.5.3.1 Tabel Admin Nama : Admin Deskripsi : Berisi data admin Primary Key : id_admin Tabel 3.1. Admin Nama Field Tipe data Size Keterangan Id_admin Int 4 Primary Key, Auto Increment Username Password Varchar Varchar 30 200 3.5.3.2 Tabel Ampu Nama : Ampu Deskripsi : Berisi data guru mengampu matapelajaran Primary Key : id_ampu Tabel 3.2.toAmpu commit user 27 digilib.uns.ac.id perpustakaan.uns.ac.id Nama Field Id_ampu Tipe data Int Size 4 Nip Id_mapel Sisajam Varchar Int Tinyint 30 4 1 3.5.3.3 Keterangan Primary Key, Auto Increment Foreign Key Foreign Key Tabel Guru Nama : Guru Deskripsi : Berisi data guru Primary Key : nip Tabel 3.3. Guru Nama Field Tipe data Size Keterangan Nip Varchar 30 Primary Key Nama_guru Jeniskelamin Varchar Enum Alamat_guru Telp_guru Agama Varchar Varchar Enum 50 Laki-laki Permpuan 200 12 Islam Kristen Protestan Hindu Budha 3.5.3.4 Tabel Hari Nama : Hari Deskripsi : Berisi data hari Primary Key : id_hari Tabel 3.4. Hari Nama Field Id_hari Tipe data Int Size 4 Nama_hari Varchar 20 commit to user Keterangan Auto increment, Primary Key 28 digilib.uns.ac.id perpustakaan.uns.ac.id 3.5.3.5 Tabel Jadwal Nama : Jadwal Deskripsi : Berisi data jadwal Primary Key : id_jadwal Tabel 3.5. Jadwal Nama Field Id_jadwal Tipe data Int Size 4 Id_ampu Id_subkelas Id_hari Id_jampel Int Varchar Int Int 4 4 4 4 3.5.3.6 Keterangan Primary Key, Auto increment Foreign Key Foreign Key Foreign Key Foreign Key Tabel Jam Pelajaran Nama : Jampel Deskripsi : Berisi data jam pelajaran Primary Key : id_jampel Tabel 3.6. Jampel Nama Field Id_jampel Tipe Data Int Jam_awal Jam_akhir Time Time 3.5.3.7 Size 4 Keterangan Primary Key,Auto Increment Tabel Kelas Nama : Kelas Deskripsi : Berisi data kelas Primary Key : id_kelas Tabel 3.7. Kelas Nama Field Id_kelas Tipe Data Tinyint commit to user Size 2 Keterangan Primarry Key 29 digilib.uns.ac.id perpustakaan.uns.ac.id 3.5.3.8 Tabel Mata Pelajaran Nama : mapel Deskripsi : Berisi data mata pelajaran Primary Key : id_mapel Tabel 3.8. Mapel Nama Field Id_mapel Tipe Data Int Size 4 Nama_mapel Id_kelas Kkm Durasi Sisajam Varchar Tinyint Int Tinyint Tinyint 50 2 2 1 1 3.5.3.9 Keterangan Primarry Key, Auto Increment Foreign Key Tabel Sub Kelas Nama : subkelas Deskripsi : Berisi data subkelas Primary Key : id_subkelas Tabel 3.9. subkelas Nama Field Id_subkelas Id_kelas Tipe Data Varchar Tinyint commit to user Size 4 2 Keterangan Primarry Key Foreign Key 30 digilib.uns.ac.id perpustakaan.uns.ac.id 3.5.4 Rancangan Interface Rancangan tampilan pada sistem (guest) dapat dilihat pada gambar 3.12: Gambar 3.12. Rancangan InterfaceGuest commit to user 31 digilib.uns.ac.id perpustakaan.uns.ac.id Rancangan tampilan pada sistem (admin) dapat dilihat pada gambar 3.13: Gambar 3.13. Rancangan Interface Admin commit to user