Bab 4 Hasil Dan Pembahasan Setelah melakukan tahap perancangan tabel dan interface yang
ada
pada
bab
3,
langkah
selanjutnya
adalah
mengimplementasikannya. Dari hasil tahap implementasi dihasilkan sebuah aplikasi yaitu Sistem Informasi Akademik Penilaian Hasil Studi Siswa. Pada aplikasi ini dirancang meliputi data karyawan maupun siswa masing-masing Sekolah. Selain itu terdapat data mengenai hasil studi siswa di beberapa Sekolah Dasar pada Yayasan Pangudi Luhur Semarang.
4.1.
Implementasi dan Pembahasan Aplikasi
4.1.1
Implementasi Sistem Untuk pengaturan awal pada framework Codeigniter yaitu
mengunduh plugin Codeigniter dari codeigniter.com, kemudian mengganti nama folder dengan pangudiluhur dan meletakannya pada directory XAMPP/htdocs/. Selanjutnya keluarkan folder application dari
folder
system
pada
XAMPP/htdocs/pangudiluhur/system/application.
47
directory
48
Gambar 4.1 Susunan Folder Dalam Aplikasi yang Akan Dibuat
Pengaturan kedua adalah pengaturan base_url, yang terletak pada directory application/config/config.PHP, arahkan agar file utama root kita adalah http://localhost/pangudiluhur, seperti terlihat pada Kode Program 4.1. Kode Program 4.1 Perintah Pengaturan Base_url 1.
$config['base_url']= "http://localhost/pangudiluhur/";
Untuk menentukan halaman pertama yang akan terbuka saat aplikasi dijalankan maka perlu pengaturan controller utama yang akan dipanggil. Pengaturan tersebut terletak pada directory application/config/routes.PHP,
arahkan
agar
adalah site, seperti terlihat pada Kode Program 4.2. Kode Program 4.2 Perintah Pengaturan Default_controller 1.
$route['default_controller'] = 'welcome';
default_controller
49 Library yang otomatis dipanggil ketika aplikasi dijalankan adalah library database. Pengaturannya adalah pada file autoload yang terletak pada directory application/config/autoload.PHP, seperti pada Kode Program 4.3. Kode Program 4.3 Perintah Pengaturan Library Utama 1.
$autoload['libraries'] = array('database');
4.1.2 Implementasi Basis Data Untuk menghubungkan basis data yang sudah dibuat dengan aplikasi yang dibuat dibutuhkan beberapa pengaturan. Pengaturan ini dilakukan
pada
file
database.PHP
yang
terdapat
dalam
application/config/database.PHP. Pengaturan untuk database dapat dilihat pada Kode Program 4.4. Kode Program 4.4 Perintah Pengaturan Database 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
4.1.3
$db['default']['hostname'] $db['default']['username'] $db['default']['password'] $db['default']['database'] $db['default']['dbdriver'] $db['default']['dbprefix'] $db['default']['pconnect'] $db['default']['db_debug'] $db['default']['cache_on'] $db['default']['cachedir'] $db['default']['char_set'] $db['default']['dbcollat']
= = = = = = = = = = = =
"localhost"; "ngudi"; "pangudiluhur"; "santoyusup"; "mysql"; ""; TRUE; TRUE; FALSE; ""; "utf8"; "utf8_general_ci";
Pengaturan Model View Controller (MVC) Penerapan konsep MVC pada sistem yang dibuat terlihat pada
Gambar 4.2 :
50
Gambar 4.2 Penerepan MVC Pada Aplikasi yang Dibuat
Gambar 4.3 Cara Kerja MVC Pada Aplikasi yang Dibuat
Mekanisme kinerja MVC pada aplikasi yang dibuat, terlilhat pada Gambar 4.3 Ketika suatu alamat URL dibuka maka mengakses controller (yang ada dalam folder controllers) untuk menjalankan fungsi. Beberapa controller dan fungsi yang dibuat untuk sistem ini dapat dilihat pada Tabel 4.1
51 Tabel 4.1 Tabel Controller No
Class
1
admin
Keterangan Berisi segala macam fungsi yang bisa diakses admin, misalnya login dan logout admin, manage data siswa dan guru.
2
akademik
Fungsi-fungsi yang dapat dilakukan guest Pangudi Luhur
3
akademik1
Fungsi-fungsi yang dapat dilakukan guest Santo Yusup
4
akademik2
5
autentifikasi
6
cetak
Fungsi-fungsi yang dapat dilakukan guest Don Bosco Cek validasi password yang dimasukkan pada saat login pada saat login Membuat file pdf dari data-data nilai yang ada (selain data rapor siswa)
7
fdpf
8
guru
9
nilai_harian
10
nilai_harian2
11
nilai_mid
12
nilai_sem
13
nilai_tugas
14
nilai_tugas2
15
niswa
16
site
Library yang berisi fungsi-fungsi membantu cetak file pdf Berisi segala macam fungsi yang bisa diakses guru, misalnya manage nilai Manage nilai harian, seperti tambah nilai dan remidi, menampilkan nilai , dll Manage nilai harian2, seperti tambah nilai dan remidi, menampilkan nilai , dll Manage nilai mid, seperti tambah nilai dan remidi, menampilkan nilai , dll Manage nilai semester, seperti tambah nilai dan remidi, menampilkan nilai , dll Manage nilai tugas, seperti tambah nilai dan remidi, menampilkan nilai , dll Manage nilai tugas2, seperti tambah nilai dan remidi, menampilkan nilai , dll Berisi segala macam fungsi yang bisa diakses guru, misalnya manage nilai, melihat nilai, ganti password, lihat rapor Mengarahlan guest ke halaman-halaman yang dapat diakses
Dalam aplikasi yang dibuat, secara langsung jika tidak menuliskan nama controller yang dituju, maka akan dianggap mengakses controller utama yaitu controller site. Begitu pula jika tidak menuliskan fungsinya, maka dianggap fungsi index pada controller site. Setelah itu fungsi index dalam controller site akan memanggil view dengan nama home.php untuk ditampilkan.
52 Namun, jika diketahui nama Controller, fungsi dan ada variabel yang dikirimkan, maka akan dilakukan proses pengolahan data yang berupa
variabel
yang
dikirim dalam fungsi dalam
Controller yang dituju. Adapula pengolahan data yang berhubungan dengan data dalam basis data maka controller akan memanggil model (terletak pada folder models) yang terkait. Untuk model atau media penyimpanan entity beserta fungsi dapat dilihat pada Tabel 4.2. Tabel 4.2 Tabel Model No
Class
Keterangan Data yang dibutuhkan oleh admin diambil melalui query-query yang ada di kelas ini Data yang dibutuhkan oleh guru diambil melalui query-query yang ada di kelas ini
1
admin_model
2
guru_model
3
kelas_model
4
matpel_model
Query-query untuk mengambil data kelas Query-query untuk mengambil data pelajaran
5
nilai_harian_model
Query-query untuk mengambil data nilai harian
6
nilai_harian2_model
Query-query untuk mengambil data nilai harian2
7
nilai_mid_model
8
nilai_model
Query-query untuk mengambil data nilai mid Gateway antar pelaki akademik dengan jenis nilai yang ada
9
nilai_semester_model
Query-query untuk mengambil data nilai semester
10
nilai_tugas
Query-query untuk mengambil data nilai tugas
11
nilai_tugas2
12
siswa_model
Query-query untuk mengambil data nilai tugas2 Data yang dibutuhkan oleh siswa diambil melalui query-query yang ada di kelas ini
mata
Dalam controller tidak boleh mengandung Kode Program untuk mengakses basis data, controller melalui fungsinya akan memanggil model karena di dalam model terdapat fungsi-fungsi khusus untuk penanganan basis data. Dari mekanisme kinerja MVC ini, suatu fungsi dari controller mempunyai memiliki tampilan sendiri yang diletakkan dalam folder view. Folder view beserta masing-masing fungsinya dapat dilihat pada Tabel 4.3.
53 Tabel 4.3 Tabel View No
Class
Keterangan
1
admin
Semua halaman yang dapat dilihat oleh admin
2
akademik
3
nilai_harian
4
nilai_mid
5
nilai_sem
6
nilai_tugas
7
halaman_utama
8
siswa
Semua halaman yang dapat dilihat oleh guest Semua halaman yang dapat menampilkan nilai harian untuk guru Semua halaman yang dapat menampilkan nilai mid untuk guru Semua halaman yang dapat menampilkan nilai semester untuk guru Semua halaman yang dapat menampilkan nilai tugas untuk guru Semua halaman yang menampilkan profil yayasan dan masing-masing sekolah tanpa proses login terlebih dahulu Semua halaman yang dapat menampilkan menu untuk siswa
4.1.4
Implementasi Sistem Penilaian Hasil Studi Siswa Sekolah Dasar Yayasan Pangudi Luhur Semarang Dalam sistem yang dibuat, terdapat 2 sekolah yaitu Sekolah
Dasar Santo Yusup dan Sekolah Dasar Don Bosco yang merupakan bagian dari Yayasan Pangudi Luhur Semarang. Sistem ini terdapat 3 jenis user yaitu siswa atau wali siswa, guru matpel atau karyawan dan Admin. Ketika aplikasi dijalankan maka akan muncul halaman utama yaitu Home. Halaman home menampilkan halaman pilih sekolah, dimana pada sistem ini terdapat 2 (dua) sekolah, yaitu Sekolah Dasar Santo Yusup dan Sekolah Dasar Don Bosco.
54
Gambar 4.4 Halaman Utama Sistem Informasi Akademik Penilaian Yayasan
Gambar 4.4 merupakan halaman utama Sistem Informasi Akademik Penilaian Hasil Studi Siswa Sekolah Dasar Yayasan Pangudi Luhur Semarang. Langkah selanjutnya adalah memilih sekolah sesuai hak akses masing-masing user. Untuk halaman Informasi Penilaian Umum Yayasan Pangudi Luhur tidak membutuhkan akses data dari basis data. Sehingga untuk membuat tiap halaman tersebut hanya dibutuhkan sebuah fungsi pada class home dalam package controllers dan sebuah file dalam package view untuk tampilan masing-masing halaman yang diletakkan dalam package views/halaman_utama/home. Kode Program 4.5 Perintah Controller Untuk Menu Profil Yayasan 1. 2. 3. 4. 5. 6. 7. 8.
class Site extends Controller { function index() { $data['template'] = 'template/html/'; $data['siswas'] = $this->Siswa_model->getSiswas(); $data['user'] = 'halaman_utama/data_user_view'; $data['konten'] = 'halaman_utama/home'; $data['leftmenu'] = 'halaman_utama/menu_utama_view'; $this->load->view($data['template'] . 'index.php', $data);
55 Pengaturan Controller untuk halaman Home adalah dengan membuat fungsi bernama index pada class Site. Dalam fungsi ini terdapat beberapa variabel array yaitu template, siswas, user, konten, leftmenu. Variabel tersebut berisi nilai yang akan diolah dalam view. Pada sistem penilaian ini ada beberapa user yaitu siswa, guru mapel, wali kelas, dan admin User yang pertama adalah siswa. Hak akses siswa dalam sistem penilaian ini adalah melihat beberapa nilai, diantaranya nilai harian, nilai harian2, nilai tugas, nilai tugas2, nilai mid, nilai semester, dan rapor. Selain itu siswa juga memiliki hak akses untuk setting yaitu fungsi untuk mengganti password. Sebagai contoh, akan dijelaskan mengenai beberapa fungsi untuk siswa. Untuk dapat masuk dalam sistem penilaian hasil studi ini maka langkah pertama yang harus dilakukan siswa adalah login, dimana username dan password diisi dengan Nomor Induk Siswa. Selanjutnya menu hasil studi siswa yang merupakan halaman yang memerlukan pengambilan data dari basis data yaitu untuk mengetahui data hasil studi siswa. Jadi diperlukan sebuah model untuk mengakses data dari basis data dan sebuah controller untuk mengatur aksi apa yang akan ditampilkan dalam view. Setelah proses login berhasil, maka siswa akan masuk ke halaman berikutnya yang disesuaikan dengan basis data masingmasing siswa. Setiap siswa ataupun user lainnya telah diberi password standar oleh admin, untuk keamanan dan kenyamanan user maka ada menu setting yang berguna untuk mengganti password . Gambar 4.5 merupakan halaman ganti password untuk siswa.
56
Gambar 4.5 Halaman ganti password siswa
Pada Gambar 4.5 menjelaskan halaman ganti password siswa dimana terdapat 3 filed yang harus diisi yaitu password lama, password baru dan konfirmasi password baru. Selain menu setting password, siswa dapat melihat nilai diantaranya nilai harian, nilai harian2, nilai tugas, nilai tugas2, nilai mid, nilai rapor, dan lihat rapor. Perbedaan dari nilai harian dan nilai harian2 hanyalah tingkatan waktu kegiatan belajar mengajar. Dalam satu semester ada dua kali mid atau yang juga disebut tengah semester, dalam tengah semester itu dibagi lagi menjadi dua tingkatan waktu yaitu nilai harian dan nilai tugas untuk tengah semester awal dan tengah semester akhir dengan nilai harian2 dan nilai tugas2. Sebagai contoh dari beberapa jenis nilai, diambil salah satu contoh halaman dari nilai tugas karena hampir seluruh tampilan nilai siswa sama. Gambar 4.6 merupakan halaman nilai tugas siswa.
57
Gambar 4.6 Halaman Nilai Tugas Siswa
Guru mata pelajaran adalah user kedua yang memiliki hak akses dalam penilaian dengan memasukkan hasil studi siswa sesuai mata pelajaran yang diampu, diantaranya nilai harian, nilai tugas, nilai mid, dan nilai semester. Sebagian dari guru mata pelajaran juga merupakan wali kelas, dimana wali kelas mempunyai hak akses untuk membuat nilai rapor dari seluruh nilai yang telah diinputkan oleh guru mata pelajaran. Sebelum memasukkan data nilai siswa, guru matpel juga harus melakukan proses login seperti siswa. Setelah proses login berhasil, maka guru mata pelajaran masuk
dalam
halaman
yang
terdapat
pada
folder
view/guru/home_view. Langkah selanjutnya adalah memilih menu untuk input KKM, halaman input KKM dapat dilihat pada Gambar 4.7
58
Gambar 4.7 Halaman Input KKM
Setelah KKM dimasukkan dan tersimpan pada field kkm yang terdapat pada tabel guru_matpel. Hubungan antara guru mata pelajaran dengan kkm terdapat pada guru_model, seperti pada Kode Program 4.6 berikut ini. Kode Program 4.6 Perintah Model Untuk Update Kkm Pada guru_model 1. function updateKkm($data, $kode) { 2. $this->db->where('kode_guru_matpel', $kode); 3. if ($this->db->update('guru_matpel', $data)) { 4. return true; 5. } contoh input nilai harian yang dapat dilihat 6. sebagai return false; 7. }
pada
Basis data KKM ini berhubungan dengan tabel semua jenis nilai, sebagai patokan batas tuntas hasil studi yang diperoleh oleh masing-masing siswa. Jika nilai yang dimasukkan belum mencapai KKM yang telah dimasukkan sebelumnya oleh guru mata pelajaran,
59 maka nilai tersebut dapat diganti dengan remidi, tetapi nilai maksimal yang masuk adalah KKM. Setelah proses input KKM selesai maka langkah selanjutnya yang dilakukan oleh guru mata pelajaran yaitu memasukkan nilai, sebagai salah satu contoh yaitu nilai harian, karena proses input semua nilai sama. Halaman input nilai harian dapat dilihat pada Gambar 4.8 berikut ini.
Gambar 4.8 Halaman Input nilai harian
Dari controller memanggil fungsi nilai_mapel dari class nilai_harian_model pada model untuk mengambil data-data dari tabel nilai_harian. Kode Program untuk model terlihat pada Kode Program 4.7, terlihat pada baris kedua variabel $id digunakan untuk
60 mengambil data dari tabel nilai_harian dalam basis data. Kode ”get” berarti kita mengambil semua row dari basis data. Kode Program 4.7 Peintah Model Untuk Lihat Data Nilai Harian Siswa 1. 2. 3. 4. 5.
function getNilaiHarianbyId($id) { $this->db->where('id', $id); $nilais = $this->db->get('nilai_harian'); return $nilais; }
Untuk
view-nya,
dibuat
satu
file
.php
bernama
tabel_nilai_harian.php. Didalamnya terdapat beberapa field yang masing-masing berisi jenis-jenis nilai yang ada dalam setengah semester dan nilai remidi, batas maksimal remidi sebanyak dua kali. Nilai remidi bukan merupakan nilai wajib, namun nilai ini dapat membantu siswa yang belum tuntas dalam pencapaian batas minimum atau KKM masing-masing jenis nilai dan mata pelajaran. Kode Program 4.8 Perintah Model Untuk Remidi Dari Nilai Harian 1. 2. 3. 4. 5. 6.
function getRemidiHarianbyId($id) { $this->db->select('r1a', 'r1b'); $this->db->where('id', $id); $nilais = $this->db->get('nilai_harian'); return $nilais; }
Terlihat pada baris kedua pada Kode Program 4.8 terdapat r1a dan r1b yang berarti r1a merupakan remidi yang pertama, jika nilai remidi pertama belum memenuhi KKM maka dapat menggunakan nilai r1b yaitu nilai remidi kedua pada nilai harian yang diambil dari basis
data
pada
tabel
nilai_harian
dengan
fungsi
getRemidiHarianbyId. Setelah seluruh nilai harian dijumlah maka langkah selanjutnya adalah rata-rata nilai, dimana hasil rata-rata nilai tersebut yang akan digunakan sebagai nilai akhir dari nilai harian. Nilai-nilai tersebut diambil dari tabel nilai_harian.
61 Setelah proses memasukkan nilai selesai maka nilai yang telah dimasukkan akan tersimpan pada basis data tabel nilai_harian atau sesuai jenis nilai yang dimasukkan jika itu merupakan jenis nilai selain nilai_harian. Sebagai contoh lain adalah nilai mid. Nilai mid merupakan salah satu nilai yang wajib untuk semua siswa pada masing-masing mata pelajaran untuk setiap semester, berupa tes tengah semester, untuk tahap selanjutnya untuk rapor mid. Rapor mid merupakan hasil dari rata-rata jumlah dari rata-rata nilai harian, rata-rata nilai tugas dan nilai final mid. Nilai semester terdiri dari nilai ulangan semester, seperti jenis nilai lainnya, bila nilai kurang dari KKM nilai semester maka fungsi remidi akan berfungsi. Pada Kode Program 4.8 terdapat fungsi untuk mendapatkan nilai maksimal. Pada baris pertama Kode Program 4.9 dijelaskan bahwa untuk pencarian nilai maksimal didapat dari $n1, $2, dan $n3. Kode Program 4.9 Perintah Model Untuk Nilai Maksimal Nilai Semester 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
function getMax($n1, $n2, $n3) { $data[0]=$n1; $data[1]=$n2; $data[2]=$n3; $temp=0; for($i=0;$i<3;$i++){ if($data[$i]>$temp){ $temp=$data[$i]; } } return $temp;
12.
}
Final nilai semester merupakan nilai akhir dalam satu semester, terdiri dari rata-rata nilai harian, rata-rata nilai harian2, rata-rata nilai tugas, rata-rata nilai tugas2, nilai final mid, dan nilai final semester.
62 Untuk wali kelas nilai yang didapat langsung nilai yang sebelumnya sudah dimasukkan oleh guru masing-masing mata pelajaran. Seperti yang terdapat pada Kode Program 4.9 berikut. Kode Program 4.10 Perintah Model Untuk Mendapatkan Data Nilai Rapor Oleh Wali Kelas 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.
function getDataRaport($semester, $tahun_ajaran, $nis, $jenis){ if($semester == '1'){ if($jenis == 'Mid'){ $tabel = 'nilai_mid '; $kkm = 'kkm_mid1'; }else{ $tabel = 'nilai_sem '; $kkm = 'kkm_sem1'; } }else{ if($jenis == 'Mid'){ $tabel = 'nilai_mid '; $kkm = 'kkm_mid2'; }else{ $tabel = 'nilai_sem '; $kkm = 'kkm_sem2'; } }
Beberapa baris pada Kode Program 4.10 jelas bahwa nilai yang diambil didapat dari dua tabel yaitu tabel nilai_mid dan tabel nilai_sem
dengan
beberapa
variabel
diantaranya
kkm_mid1,
kkm_sem1, kkm_mid2, kkm_sem2. Terdapat fungsi lihat_rapot pada controller dan untuk tampilan halaman nilai rapor semester dibuat satu file.php yang bernama lihat_nilai_rapot_view.php.
63
Gambar 4.9 Halaman Lihat Rapor oleh wali kelas
User terakhir adalah admin. Admin memiliki hak akses penuh atas aplikasi ini, di antaranya adalah registrasi siswa dan guru ataupun karyawan, manage
guru mata pelajaran dan wali kelas,
manage data kelas dan mata pelajaran, lihat leger serta laporan dinas. Dikatakan memiliki hak akses penuh dikarenakan admin memiliki hak-hak yang dimiliki siswa dan guru mata pelajaran dan yang tidak dimiliki user lain seperti yang telah disebutkan. 1. Halaman Tambah Guru Halaman ini merupakan hak akses admin di mana untuk registrasi guru atau karyawan. admin akan mengisikan beberapa data yang dianggap perlu dalam basis data sekolah sebagai identitas karyawan. Data yang perlu di isi di antaranya NIP sebagai primary
64 key, nama lengkap, tempat lahir, tanggal lahir, jenis kelamin, agama, alamat, kota, Nomor telepon, status guru, pendidikan terakhir, tanggal masuk, masa kerja, dan password. Sebagai contoh pada Gambar 4.10 adalah halaman untuk input data guru atau karyawan.
Gambar 4.10 Halaman Input data guru atau karyawan oleh admin
2. Halaman Daftarkan Mapel Setelah guru atau karyawan dan siswa terdaftar, langkah selanjutnya yang dilakukan admin adalah manage guru yaitu mendaftarkan beberapa guru sebagai guru mata pelajaran. Dengan fungsi do_reg_guru_mapel pada controller dan halaman tampilan regist atau daftar guru mata pelajaran maka dibuat satu file.php bernama resit_guru_mapel_view.php dengan beberapa inputan yaitu NIP, nama, mata pelajaran, kelas, paralel, semester dan tahun ajaran. Setalah proses regist guru mata pelajaran berhasil, maka data akan disimpan
pada
tabel
gutu_matpel.
Dengan
perintah
pada
admin_model.php dengan fungsi regist_guru_mapel seperti yang ada
65 pada Kode Program 4.11 dimana data dari semua field pada regist guru matpel akan disimpan pada tabel guru_matpel. Kode Program 4.11 Perintah Model Untuk Regist Guru Mata Pelajaran 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21.
function regist_guru_mapel($nip, $mapel, $kelas, $paralel, $semester, $thn_ajaran){ $query_str = "SELECT MAX( CAST( SUBSTRING( kode_guru_matpel, ) AS UNSIGNED ) ) AS maxkode FROM guru_matpel"; $resMaxKode = $this->db->query($query_str); $maxKode = $resMaxKode->result(); $newMaxKode = $maxKode[0]->maxkode + 1; $newKode = 'mp' . $newMaxKode; $data['newKode']=$newKode; $data['nip']=$nip; $data['mapel']=$mapel; $data['kelas']=$kelas; $data['paralel']=$paralel; $data['semester']=$semester; $data['tahun']=$thn_ajaran; $query_str = "INSERT INTO guru_matpel(kode_guru_matpel, nip, kode_matpel,kelas, paralel, semester, tahun_pelajaran) VALUES(?, ?, ?, ?, ?, ?, ?)"; $this->db->query($query_str, array($newKode, $nip, $mapel,$kelas, $paralel, $semester, $thn_ajaran)); }
3. Halaman Lihat Guru Menu lihat guru merupakan menu yang berfungsi untuk melihat semua guru atau karyawan yang sudah di registrasi sebelumnya oleh admin. Menu lainnya adalah edit guru yaitu menu yang berfungsi untuk mengganti beberapa data atau update data jika dibutuhkan. 4. Halaman Wali Kelas Halaman
Wali
kelas,
menu
ini
difungsikan
untuk
mendaftarkan beberapa guru untuk menjadi wali kelas setelah berhasil terdaftar maka akan muncul nama wali kelas beserta kelas yang diampu. Kode Program 4.12 Perintah Model Untuk Manage Wali Kelas Oleh Admin 1. 2. 3. 4. 5. 6.
function addWaliKelas($kls, $wali){ $query_str = "INSERT INTO guru_wali(nip, kelas, paralel) VALUES(?, ?, ?)"; list($kelas, $paralel) = explode(' ', $kls); $this->db->query($query_str, array($wali, $kelas, $paralel)); }
66 Pada baris kedua dijelaskan bahwa data yang diambil dan disimpan pada tabel guru_wali. Dengan fungsi manage_wali pada controller dan tambah_wali_view.php sebagai halaman atau view.
Gambar 4.11 Halaman lihat dan daftarkan wali kelas oleh admin
Gambar 4.11 merupakan halaman di mana terdapat data guru wali kelas. Halaman ini didapat dari lihat_wali_view.php dimana data guru wali didapat dari tabel guru_wali. Satu kelas hanya memiliki satu wali kelas, bila akan menambahkan wali kelas dalam satu kelas maka akan muncul peringatan bahwa kelas tersebut sudah didampingi guru tertentu. Jika menekan tombol OKE maka wali kelas akan update dengan wali kelas yang baru. Kode Program 4.13 Perintah Model Untuk Update Wali Kelas Oleh Admin 1. 2. 3. 4. 5.
function updateWaliKelas($kls, $wali){ $query_str = "UPDATE guru_wali SET nip=? WHERE kelas=? AND paralel=?"; list($kelas, $paralel) = explode(' ', $kls); $this->db->query($query_str, array($wali, $kelas, $paralel));
67 5. Halaman Lihat Guru Mapel Lihat Guru Mapel merupakan halaman untuk melihat seluruh mata pelajaran yang diampu oleh seorang guru. Di mana memiliki fungsi dari menu yang juga sudah ada pada menu Lihat Guru yaitu pada field Mapel, apabila tombol mapel ditekan maka akan muncul halaman do_cari_guru_html yang menampilkan NIP dan nama guru beserta tombol lihat data kelas yang berfungsi untuk menampilkan mata pelajaran apa saja yang sudah diampu oleh guru yang bersangkutan. 6. Halaman Tambah Siswa Menu Tambah Siswa merupakan menu yang wajib diolah oleh admin terlebih dahulu dari awal setelah tambah guru atau karyawan. Karena menu ini berhunbungan dengan data siswa beserta seluruh atribut siswa yang ada. Dengan menggunakan
fungsi basis
manage
data
pada
siswa
pada
controller
tabel
siswa
dengan
dan fungsi
tambahSiswa pada file admin_model.php. Untuk view dari halaman ini
dibuat satu file.php bernama tambah_siswa_view.php. Dalam
Halaman ini yang data semua wajib dimasukkan. Setelah seluru data siswa dimasukkan, tekan tombol tambah untuk menyimpan data tersebut. Dari awal Tahun Pelajaran baru data siswa harus langsung dimasukkan karena untuk menyimpan data siswa di kelas mana siswa akan belajar. Untuk langkah selanjutnya bila siswa pindah kelas atau naik kelas data siswa diedit pada tabel siswa field kelas dan paralel.
68 7. Halaman Lihat Nilai Halaman Lihat Nilai, pada menu ini hak akses admin sama dengan guru mata pelajaran namu perbedaannya admin dapat melihat semua nilai mata pelajaran yang dimasukkan oleh masing-masing guru mata pelajaran. Untuk penerapan model, view, controller pada menu ini, sama dengan guru mata pelajaran, untuk membedakan dibuat file.php dengan nama yang berbeda sebagai parameter user, file-filenya diantaranya adalah fungsi lihat_nilai pada admin.php untuk controllernya,
fungsi
getKelasMapelByGuru
untuk
pada
admin_model untuk modelnya, dan lihat_nilai_mapel_view untuk viewnya. 8. Halaman Lihat Kelas Menu Lihat Kelas merupakan menu dimana admin dapat melihat seluruh data kelas yang berisikan No, NIS, Nama, Jenis kelamin, tempat lahir, tanggal lahir dan field edit dengan tombol Go untuk mengedit data siswa yang bersangkutan. Kode Program 4.14 Perintah Model Untuk Lihat Data Kelas Oleh Admin 1. 2. 3. 4. 5. 6. 7. 8.
function getSiswaByKelas($kelas, $paralel){ $query_str = "SELECT nis, nisn, nama, jk, tempat, tanggal_lahir FROM siswa WHERE kelas = ? AND paralel = ? ORDER BY nama ASC"; $dataSiswa = $this->db->query($query_str, array($kelas, $paralel)); return $dataSiswa; }
Pada Kode Program 4.14 baris ketiga dijelaskan bahwa data yang ditampilkan diambil dari tabel siswa. Dimana sebagai atributnya terdapat kelas dan paralel sebagai parameter kelas dengan fungsi lihat_perkelas pada controller dan kelas_view.php pada view sebagai halaman. Gambar 4.12 merupakan halaman di mana admin dapat melihat data per kelas.
69
Gambar 4.12 Halaman lihat data kelas oleh admin
Gambar 4.12 merupakan halaman lihat data per kelas oleh admin,
dengan
file
bernama
kelas_view.php
dan
alamat
http://localhost/pangudiluhur/index.php/admin/do_lihat_perkelas.htm l 9. Halaman Lihat Leger Halaman lihat leger ini berfungsi untuk menampilkan nilai dari seluruh mata pelajaran dalam satu kelas dengan parameter kelas, paralel, semester, jenis nilai, tahun ajaran. Setelah mengisi seluruh parameter maka data leger dapat ditampilkan.
70 Kode Program 4.15 Model untuk lihat leger oleh admin 1. 2. 3. 4. 5. 6. 7.
function getLegerByKelas($kelas, $paralel, $semester, $thn_ajaran, $nis, $jenis){ if($jenis == 'mid'){ $jenis = 'nilai_mid'; }else{ $jenis = 'nilai_sem'; }
Sebagai pasangan dari Kode Program 4.15 di atas terdapat fungsi lihat_leger pada admin.php sebagai controller dan untuk view dibuat satu file lihat_leger_view.php oleh admin. 10.
Halaman Laporan Dinas Selain menu lihat leger terdapat pula menu laporan dinas,
dimana isi dari kedua ini hampir sama. Perbedaannya terletak pada waktu, untuk laporan dinas sama dengan rapor satu semester per kelas. Untuk halaman laporan dinas dapat dilihat pada Gambar 4.13 .
Gambar 4.13 Halaman lihat laporan dinas oleh admin
71 Gambar 4.13 merupakan halaman laporan dinas yang hanya dapat diakses oleh admin, dalam laporan dinas selama satu tahun ajaran terbagi menjadi 2 semester. Menu terakhir adalah logout, menu ini dapat diakses oleh seluruh user apabila sudah melakukan proses login terlebih dahulu.
4.2 Pengujian Sistem Untuk pengujian
aplikasi Sistem Informasi Akademik
Penilaian hasil studi siswa sekolah dasar yayasan Pangudi Luhur Semarang dengan metode blackbox. Pengujian dilakukan oleh karyawan Yayasan Pangudi Luhur Semarang Jawa Tengah bagian Teknologi Informasi sebagai admin, serta 10 guru sebagai guru mata pelajaran sekaligus siswa. Untuk rincian pengujian dapat dilihat pada Table 4.1 berikut : a. Pengujian Login yaitu untuk mengecek apakah fungsional dari form login telah berjalan dengan baik. Dari pengujian yang dilakukan didapatkan kesimpulan bahwa form login telah berfungsi dengan baik. Tabel 4.4 Pengujian Black Box Untuk Form Login
Aktivitas dan Event Input Output Login siswa Username a. Jika berhasil maka dengan klik dan masuk halaman web tombol login password dengan hak akses member b. Jika username dan password salah maka akan kembali ke menu utama
Status Pengujian Valid
72 Login guru Username a. Jika berhasil maka dengan klik dan masuk halaman web tombol login password dengan hak akses guru mata pelajaran b. Jika username dan password salah maka akan kembali ke menu utama Login admin Username a. Jika berhasil maka dengan klik dan masuk halaman admin tombol login password b. Jika username dan
Valid
Valid
password salah maka akan kembali ke menu utama b. Pengujian untuk menu-menu yang dapat diakses guru atau wali kelas meliputi form KKM dan dan form nilai siswa. Dari pengujian yang dilakukan didapatkan kesimpulan bahwa form KKM dan form nilai siswa telah berfungsi dengan baik. Tabel 4.5 Pengujian Black Box Untuk Form KKM Dan Nilai Oleh Guru
Aktivitas dan
Input
Event Menginput Memasuk-kan KKM seluruh KKM pada semua jenis nilai yang ada Guru mata Memasuk-kan pelajaran nilai sesuai menginput jenis nilai : nilai nilai harian, nilai tugas,
Output
Status Pengujian
Jika sudah menginputkan KKM maka ada alert : berhasil diubah
valid
a. Jika nilai sudah dimasukkan dengan menekan tombol post maka akan tampil pada halaman nilai
valid
73 nilai mid, nilai semester sesuai mata pelajaran yang diampu.
Wali kelas Lihat Leger
Wali kelas Lihat Rapor
Wali kelas Cetak Rapor dan klik tombol cetak pdf Setting
Pilih semester, jenis nilai, tahun ajaran lalu tekan tombol lihat Pilih nama siswa, semester, tahun ajaran lalu tekan tombol lihat data rapor
Memasuk-kan password lama dan dua kali password baru
b. Jika nilai belum memenuhi KKM, maka fungsi tombol remidi pada tabel nilai akan berfungsi, nilai maksimal remidi adalah KKM Nilai akhir seluruh mata pelajaran per satu kelas dalam satu semester
valid
Rapor siswa dengan inputan tambahan berupa ketidakhadiran, sikap, dan ekstrakulikuler
valid
Jika guru mapel merupakan wali kelas, maka dapat mencetak rapor dalam bentuk pdf
valid
a. Jika password lama salah maka muncul peringatan password salah b. Jika password yang dimasukkan benar,maka muncul alert : berhasil
valid
c. Pengujian untuk menu-menu yang dapat diakses siswa. Dari
pengujian yang dilakukan didapatkan kesimpulan halaman semua nilai siswa telah berfungsi dengan baik.
bahwa
74
Tabel 4.6 Pengujian Black Box Untuk Lihat Nilai Siswa
Aktivitas dan
Input
Output
Event Siswa Lihat masukkan semester nilai harian I dan tahun ajaran dan Pilih yang dikehendaki menu Nilai Ulangan I
Status Pengujian
Seluruh nilai harian atau nilai ulangan harian dalam periode setengah semester I awal Siswa Lihat masukkan semester Seluruh nilai nilai tugas I dan tahun ajaran tugas dalam dan Pilih yang dikehendaki periode setengah menu Nilai semester I awal Tugas I
valid
Siswa lihat nilai MID dan Pilih menu Nilai Tugas I
valid
masukkan semester Nilai Mid dan tahun ajaran didapat dari ratayang dikehendaki rata nilai harian I dan nilai tugas I serta final nilai ulangan MID dalam periode setengah semester I awal
Siswa Lihat masukkan semester nilai harian II dan tahun ajaran dan Pilih yang dikehendaki menu Nilai Ulangan II
Seluruh nilai harian atau nilai ulangan harian dalam periode setengah semester I akhir Siswa Lihat masukkan semester Seluruh nilai nilai tugas II dan tahun ajaran tugas dalam dan Pilih yang dikehendaki periode setengah menu Nilai semester akhir I Tugas II
valid
valid
valid
75 Siswa nilai dan menu Rapor
Lihat masukkan semester Nilai Rapor rapor dan tahun ajaran didapat dari rataPilih yang dikehendaki rata nilai harian , Nilai nilai tugas, final nilai ulangan MID dan final nilai ulangan semester dalam periode 1 semester
Logout dan pilih menu logout
Jika siswa, guru dan admin memilih menu logout maka mereka akan keluar dari sesi
valid
valid
d. Pengujian untuk menu-menu yang dapat diakses admin
didapatkan kesimpulan bahwa telah berfungsi dengan baik. Tabel 4.7 Pengujian Black Box Untuk Lihat Nilai Siswa
Aktivitas dan Event Admin tambah guru dan pilih menu tambah guru Admin lihat guru dan pilih menu Lihat guru
Input
Output
Status Pengujian
Memasukkan data guru atau karyawan secara lengkap
Jika masih terdapat field belum diisi lengkap, maka muncul alert : Terdapat field inputan yang kosong Silakan kembali cek inputan anda Seluruh guru atau karyawan yang sudah didaftarkan sebelumnya pada menu tambah guru
valid
valid
76 Admin daftarkan guru matapelajaran dan pilih menu daftarkan mapel
Pilih nama Jika ada mata pelajaran guru yang pada kelas, paralel, akan semester dan tahun ajaran didaftarkan sudah dipasangkan dengan guru mapel, akan muncul alert :Mata pelajaran di kelas ini telah diampu oleh guru tertentu Apakah akan menggantinya?
valid
Admin kelas, daftarkan paralel, dan wali kelas nama guru dan pilih menu wali kelas
Jika ada mata pelajaran pada kelas, paralel, semester dan tahun ajaran sudah dipasangkan dengan guru mapel, akan muncul alert :Mata pelajaran di kelas ini telah diampu oleh guru tertentu Apakah akan menggantinya?
valid
Admin lihat Pilih nama mapel dan guru yang pilih menu akan lihat guru didaftarkan mapel
Guru dengan pasangan mata pelajaran yang telah didaftarkan sebelumnya pada menu daftarkan guru mapel
valid
Admin tambah siswa dan pilih menu tambah siswa
Memasukkan Jika masih terdapat field data siswa belum diisi lengkap, maka secara muncul alert : Terdapat lengkapn field inputan yang kosong Silakan kembali cek inputan anda
valid
Admin lihat nilai dan pilih menu lihat nilai
nama guru nilai yang tampil sesuai mapel, mata dengan inputan yang pelajaran, dipilih kelas, paralel, semester, tahun ajaran, dan jenis nilai
valid
77 Admin lihat data kelas dan pilih menu lihat data kelas Admin lihat leger dan pilih menu lihat leger Admin lihat laporan dinas dan pilih menu laporan dinas
kelas paralel
dan
seluruh siswa satu kelas sesuai kelas yang dipilih
valid
kelas, Nilai akhir seluruh mata paralel, pelajaran per satu kelas semester, dalam satu semester jenis nilai, tahun ajaran,
valid
kelas, paralel, semester, tahun ajaran,
valid
Nilai akhir seluruh mata pelajaran per satu kelas dalam satu semester
Berdasarkan pengujian yang dilakukan didapatkan hasil bahwa
aplikasi ini sudah berjalan secara fungsional dan
mengeluarkan informasi sesuai dengan yang diharapkan.