Fakultas Ilmu Komputer
611
Pengembangan Sistem Informasi Bimbingan Konseling Siswa pada SMP
Negeri 1 Panarukan
Ahmad Taufiq Hidayatullah1, Fajar Pradana2, Mochammad Chandra Saputra3
Program Studi Sistem Informasi, Fakultas Ilmu Komputer, Universitas Brawijaya Email: 1[email protected] , 2[email protected] , 3[email protected]
Abstrak
SMP Negeri 1 Panarukan memiliki salah satu tujuan yaitu pembentukan pribadi siswa yang berakhlak mulia. Untuk meraih tujuan tersebut, maka dibentuklah tata tertib dan layanan bimbingan konseling. Berdasarkan hasil wawancara, terdapat beberapa masalah pada layanan bimbingan konseling. Pertama, banyak poin pelanggaran yang tidak terakumulasi karena pencatatan masih manual, sehingga sanksi tidak sesuai. Ini berdampak pada hasil nilai akhlak dan kepribadian yang memerlukan total poin pelanggaran sebagai salah satu indikatornya. Kedua, kurang efektifnya fungsi surat panggilan orang tua yang jarang disampaikan oleh siswa yang bersangkutan. Dan terakhir, proses input bimbingan konseling yang terkesan terlalu banyak menggunakan kertas. Berdasarkan masalah-masalah tersebut, maka dapat diberikan solusi untuk mengembangkan suatu sistem informasi yang mempunyai fungsi untuk dapat mengatasi masalah-masalah tersebut. Metode yang digunakan dalam pengembangan sistem adalah metode waterfall yang meliputi analisis kebutuhan, desain, implementasi, pengujian dan pemeliharaan. Sedangkan pada proses pengujian menggunakan metode basis patch testing, validation testing, dan compatibility testing. Hasil dari basis path testing adalah 2 fungsi memiliki struktur yang mudah dipahami dan mudah diimplementasi, dan 1 fungsi memiliki struktur yang lebih kompleks. Hasil dari validation testing adalah fungsi perangkat lunak dapat berjalan sesuai dengan fungsionalitasnya. Hasil dari compatibility testing adalah perangkat lunak dapat digunakan di 10 macam jenis browser.
Kata kunci: Bimbingan Konseling Siswa, Sistem Informasi, Pengembangan.
Abstract
SMP Negeri 1 Panarukan has one goal, namely the establishment of a students’ noble character. To achieve this objective, the codes of conduct and counseling services were established. Based on the interview, there are some problems in the counseling services. Firstly, many violation points are not accumulated because the point record is still manual, so the sanctions given are not appropriate. This affects the results of student character values that require the total violation points as the indicator. Secondly, the ineffectiveness of parent notification letter which is rarely given by students to their parents.Lastly, the input process of the counseling services that seems to use too much paper. Based on these problems, it can be given a solution to develop an information system that has the function to overcome these problems.The method used in the development of the system is the waterfall method which includes needs analysis, design, implementation, testing, and maintenance. While in the testing process, basis path testing, validation testing, and testing compatibility are used. The results of basic path testing are the two functions having a structure that is easy to understand and easy to implement and 1 function having a more complex structure. The result of the validation testing is a software function that can be run in accordance with its functionality.The results of the compatibility testing is the software that can be used in 10 different types of browsers.
Keywords: Student Counseling Services, Information System, Development
1. PENDAHULUAN
SMP Negeri 1 Panarukan merupakan sekolah menengah pertama yang memiliki visi
sekolah yaitu “Maju Ceria” Mandiri, Jujur,
sekolah adalah pembentukan pribadi siswa yang berakhlak mulia. Untuk dapat menciptakan tujuan tersebut, maka dibentuklah tata tertib peserta didik yang mengatur segala aturan terkait cara berseragam, cara bersikap, kewajiban peserta didik, dan sanksi yang didapat. Selain tata tertib, layanan bimbingan
konseling juga ikut andil dalam
menyelenggarakan dan menegakkan visi tersebut.
Berdasarkan hasil wawancara, terdapat beberapa masalah pada layanan bimbingan konseling. Pertama, banyak poin pelanggaran yang tidak terakumulasi karena pencatatan masih manual, sehingga sanksi tidak sesuai. Ini berdampak pada hasil nilai akhlak dan kepribadian yang memerlukan total poin pelanggaran sebagai salah satu indikatornya. Kedua, kurang efektifnya fungsi surat panggilan orang tua yang jarang disampaikan oleh siswa yang bersangkutan. Dan terakhir, proses input bimbingan konseling yang terkesan terlalu banyak menggunakan kertas.
Berdasarkan masalah-masalah yang telah diuraikan di atas, maka dapat diberikan solusi untuk mengembangkan suatu sistem informasi yang mempunyai manfaat untuk dapat mengatasinya, sehingga tercipta beberapa ruang lingkup yang mencakup pencatatan poin pelanggaran agar poin pelanggaran dapat terakumulasi dengan tepat, penentuan sanksi poin pelanggaran yang memiliki fungsi notifikasi untuk dapat menyempurnakan peran dari surat panggilan orang tua, bimbingan konseling untuk dapat mengurangi peranan kertas, dan analisa rekomendasi kenaikan kelas dengan nilai akhlak dari pihak BK.
2. METODE
Metode pengambilan data terkait dengan kebutuhan-kebutuhan dan permasalahan sistem dilakukan dengan metode observasi, wawancara dan studi pustaka. Pada metode obervasi yaitu dengan pengamatan langsung mengenai proses kegiatan konseling. Untuk metode wawancara yaitu dengan melakukan diskusi dengan pihak-pihak yang berkaitan langsung. Sedangkan untuk studi pustaka yaitu dengan mempelajari teori-teori pengembangan sistem melalui buku, dan jurnal. Dari pengambilan data dan analisa permasalahan dibuat analisa kebutuhan sistem yang akan dibangun.
Sedangkan untuk pengembangan sistem menggunakan metode waterfall yang meliputi analisis kebutuhan, desain, implementasi, pengujian dan pemeliharaan (Sommerville, 2011). Untuk pengujian melalui 3 metode yaitu
basis path testing, validation testing, dan compatibility tetsing. Basis path testing merupakan pengujian yang memiliki tujuan untuk mengetahui kompleksitas logika (cyclomatic complexity) dalam sebuah program (Pressman, 2010). Cyclomatic complexity
didapatkan berdasarkan flow graph suatu kode atau algoritma. Cyclomatic complexity
digunakan sebagai dasar dalam membuat independent path, sehingga dapat dihasilkan beberapa test case. Pengujian validasi menggunakan metode pengujian Black Box, karena tidak memerlukan untuk berkonsentrasi terhadap alur jalannya algoritma program dan
lebih ditekankan untuk menemukan
konformitas antara kinerja sistem dengan daftar kebutuhan (Indriati, 2010). Compatibility testing berfokus terhadap pesyaratan non-fungsional, pengujian ini bertujuan memastikan perangkat lunak yang telah dibangun mampu berjalan dengan baik pada lingkungan yang berbeda.
3. HASIL DAN PEMBAHASAN
Pada bagian bab ini dibahas mengenai
tahapan-tahapan pengembangan sistem
menggunakan metode waterfall yaitu analisis kebutuhan, perancangan sistem, implementasi sistem, dan pengujian sistem.
3.1. Analisis Kebutuhan
Dengan melakukan observasi dan
wawancara diperoleh informasi mengenai permasalahan-permasalahan yang terjadi pada proses penanganan pelanggaran dan bimbingan
konseling SMP Negeri 1 Panarukan.
Berdasarkan permasalahan tersebut maka dibuat beberapa kebutuhan fungsional dan non-fungsional yang harus dapat dilakukan sistem, sehingga terbentuk suatu use case diagram
Gambar 1. Use Case Diagram
Use case diagram tersebut merepresentasikan aktor yang terlibat serta peran-perannya. Peran masing-masing aktor telah disesuaikan dengan masalah yang diobservasi sebelumnya. Masalah-masalah tersebut antara lain banyak poin pelanggaran yang tidak terakumulasi karena pencatatan masih manual, sehingga sanksi tidak sesuai. Ini berdampak pada hasil nilai akhlak dan kepribadian yang memerlukan total poin pelanggaran sebagai salah satu indikatornya. Masalah selanjutnya adalah kurang efektifnya fungsi surat panggilan orang tua yang jarang disampaikan oleh siswa yang bersangkutan. Dan masalah terakhir adalah proses input bimbingan konseling yang terkesan terlalu banyak menggunakan kertas.
Selain use case diagram, dibentuk pula
activity diagram yang menggambarkan hubungan aktivitas antara sistem dengan aktor (A.S & shalahuddin, 2011). Gambar 2 merupakan activity diagram mengelola pelanggaran.
Gambar 2. Activity Diagram Mengelola Pelanggaran
Pada gambar 3 di bawah ini merupakan
activity diagram untuk mengelola poin pelanggaran. Aktor dapat mengelola poin pelanggaran dengan memilih sub-menu poin pelanggaran, lalu sama halnya dengan mengelola pelanggaran, aktor dapat memilih salah satu diantara fungsi kelola, seperti menambah, memperbarui, atau menghapus poin pelanggaran.
Gambar 3. Activity Diagram Mengelola Poin Pelanggaran
3.2. Perancangan
Pada perancangan sistem ini perlu dilakukan agar sistem yang dibangun sesuai dengan kebutuhan user. Perancangan sistem dianalisa dari requirement sistem kemudian digambarkan dalam diagram. Pada tahap perancangan sistem ini menggambarkan alur
dari sistem yang akan dibangun. Perancangan sistem ini dimodelkan menggunakan bahasa pemodelan sistem yaitu UML (Unified Modelling Language), seperti sequence diagram.
3.2.1 Sequence Diagram
Sequence diagram tambah pelanggaran dimulai ketika BK berada dalam menu pelanggaran, dan sistem akan menampilkan daftar pelanggaran dalam tab daftar pelanggaran, sistem juga menyediakan tab
tambah pelanggaran untuk menambah
pelanggaran. BK memilih tab tambah
pelanggaran, lalu mengisi form tambah pelanggaran. Lalu dilanjutkan pada controller
pelanggaran, dan model_pelanggaran. Berikut ini merupakan sequence diagram tambah pelanggaran yang ditunjukkan pada gambar 4.
Gambar 4. Sequence Diagram Tambah Pelanggaran
Sequence diagram tambah poin pelanggaran dimulai ketika BK berada dalam menu klasifikasi pelanggaran, dan sistem akan menampilkan daftar poin pelanggaran dalam
tab daftar klasifikasi poin dan fungsi untuk menambah poin dalam tab tambah klasifikasi poin. BK memilih tab tambah klasifikasi poin, kemudian sistem akan menampilkan form untuk tambah poin yang harus diisi. Kemudian akan dilanjutkan ke controller pelanggaran dan model_pelanggaran. Berikut ini merupakan
Gambar 5. Sequence Diagram Tambah Poin Pelanggaran
3.2.2 Physical Data Model
Physical data model digunakan untuk merepresentasikan rancangan basis data.
Physical data model mendefinsikan semua struktur tabel, termasuk nama kolom, tipe data kolom, primary key, foreign key, dan relasi antar tabel. Gambar 6 merupakan potongan rancangan physical data model sistem informasi bimbingan konseling siswa.
Gambar 6. Physical Data Model
3.2.3 Perancangan Komponen
Perancangan komponen mendefinisikan struktur data atau algoritma yang digunakan dalam suatu komponen perangkat lunak. Di dalam perancangan komponen ini hanya mencantumkan algoritma penambahan data pelanggaran sehingga tidak semua algoritma dicantumkan. Algoritma penambahan data pelanggaran ini akan diletakkan pada controller
pelanggaran dan model model_pelanggaran.
a. Controller Pelanggaran
Perancangan komponen fungsi
tambah_pelanggaran() merupakan algoritma
dari fungsi sistem untuk menambah
pelanggaran. Fungsi tambah_pelanggaran() merupakan bagian dari controller Pelanggaran. Pada tabel 1 merupakan algoritma dari fungsi tambah_surat_masuk().
Tabel 1. Algoritma Fungsi tambah_pelanggaran()
1 Mulai
2 Menyimpan data formulir tambah
pelanggaran ke dalam variabel
3 Melakukan kontak dengan model
untuk mengambil total poin pelanggaran seorang siswa pada tahun ajaran tertentu
4 Menghitung total poin
pelanggaran siswa pada tahun ajaran tertentu
5 Jika total poin pelanggaran
lebih dari 15
6 Deklarasi variabel status
dengan nilai ‘Sanksi belum diberikan 2’
7 Lainnya
8 Deklarasi variabel status
dengan nilai ‘Sanksi belum diberikan’
9 Mengambil sanksi yang cocok
dengan poin pelanggaran dari database dan menyimpannya dalam variabel
10 Menyimpan variabel-variabel
pelanggaran ke dalam array
11 Melakukan kontak dengan model
untuk menyimpan variabel array pelanggaran ke dalam database sistem
12 Deklarasi variabel array yang
berisi keterangan tahap penanganan pertama pada pelanggaran
13 Melakukan kontak dengan model
untuk menyimpan variabel array tahap penanganan pertama pelanggaran ke dalam database sistem
14 Jika total poin pelanggaran
kurang dari 16
15 Deklarasi variabel array yang
berisi tahap penanganan kedua pada pelanggaran
17 Deklarasi variabel array yang berisi tahap penanganan kedua pada pelanggaran
18 Melakukan kontak dengan model
untuk menyimpan variabel array tahap penanganan kedua
pelanggaran ke dalam database sistem
19 Menampilkan halaman daftar
pelanggaran
20 Selesai
b. Model model_pelanggaran (Fungsi ambil_total_ poin())
Perancangan komponen fungsi
ambil_total_poin() merupakan algoritma dari fungsi sistem untuk mengambil total poin seorang siswa pada tahun ajaran tertentu. Fungsi ambil_total_poin() merupakan bagian dari model model_pelanggaran. Pada tabel 2
merupakan algoritma dari fungsi
ambil_total_poin().
Tabel 2. Algoritma Fungsi ambil_total_poin()
1 Mulai
2 Mengambil total poin pelanggaran
seorang siswa pada tahun ajaran tertentu dari dalam database sistem
3 Menyimpan total poin pelanggaran
ke dalam variabel
4 Mengembalikan variabel berisi
total poin pelanggaran
5 Selesai
c. Model model_pelanggaran (Fungsi ambil_sanksi_ poin())
Perancangan komponen fungsi
ambil_sanski_poin() merupakan algoritma dari fungsi sistem untuk mengambil sanksi pelanggaran yang cocok dengan total poin
pelanggaran seorang siswa. Fungsi
ambil_sanksi_poin() merupakan bagian dari
model model_pelanggaran. Pada tabel 3
merupakan algoritma dari fungsi
ambil_sanksi_poin().
Tabel 3. Algoritma Fungsi ambil_sanksi_poin()
1 Mulai
2 Mengambil sanski pelanggaran
yang cocok dengan total poin pelanggaran dari dalam database sistem
3 Mengembalikan variabel array
yang berisi sanksi pelanggaran
4 Selesai
d. Model model_pelanggaran (Fungsi tambah_pelanggaran())
Perancangan komponen fungsi
tambah_pelanggaran() merupakan algoritma dari fungsi sistem untuk menambahkan data pelanggaran ke dalam database sistem. Fungsi tambah_ pelanggaran() merupakan bagian dari
model model_pelanggaran. Pada tabel 4
merupakan algoritma dari fungsi
tambah_pelanggaran().
Tabel 4. Algoritma Fungsi tambah_pelanggaran()
1 Mulai
2 Menyimpan data array ke dalam
tabel pelanggaran di dalam database sistem
3 Selesai
3.2.4 Perancangan Antar Muka
Pada bagian ini akan menjelaskan tentang perancangan antarmuka dari sistem informasi bimbingan konseling siswa.
a. Halaman Login
Halaman login merupakan halaman untuk masuk ke dalam sistem, guest harus memasukkan username dan password untuk masuk ke dalam sistem. Berikut ini merupakan rancangan antarmuka login pada gambar 7.
Gambar 7. Perancangan Antarmuka Login
b. Halaman Daftar Data Siswa
misalnya daftar data guru, daftar data wali kelas, dan lain-lain. Berikut ini merupakan rancangan antarmuka daftar data siswa pada gambar 8.
Gambar 8. Perancangan Antarmuka Daftar Data Siswa
3.3. Implementasi
Setelah tahapan perancangan selesai proses selanjutnya adalah proses implementasi. Pada proses implementasi sistem ini, menggunakan bahasa pemrograman PHP untuk membuat fungsi-fungsi didalamnya. Tampilan pada halaman sistem menggunakan HTML dan
Bootstrap, sedangkan untuk database menggunakan MySQL.
3.3.1 Implementasi Algoritma
Di dalam implementasi algoritma ini hanya mencantumkan proses penambahan data
pelanggaran yang telah dicantumkan
algoritmanya pada sub-bab perancangan komponen sehingga tidak semua fungsi dicantumkan. Proses penambahan data pelanggaran ini terletak pada controller pelanggaran, dan model model_pelanggaran untuk memasukkan data pelanggaran ke dalam basis data.
a. Model Model_pelanggaran (Fungsi ambil_total_poin())
Fungsi ambil_total_poin() berisi query
untuk mengambil jumlah poin pelanggaran seorang siswa pada tahun ajaran tertentu, fungsi ini ditunjukkan dalam tabel 5.
Tabel 5. Implementasi Algoritma ambil_total_poin()
1 public function
ambil_total_poin($nis,$tahun) {
2 $query = $this->db->query("SELECT SUM(poin) as total from
pelanggaran where nis = $nis and tahun_ajaran = '$tahun'");
3 $rows = $query->row();
4 $total = $rows->total;
5 return $total;
b. Model model_pelanggaran (Fungsi ambil_sanksi_ poin())
Funsgi ambil_sanksi_poin() berisi query
untuk mengambil sanksi pelanggaran yang cocok dengan total poin tertentu, fungsi ini ditunjukkan dalam tabel 6.
Tabel 6. Implementasi Algoritma ambil_sanksi_poin()
1 public function
ambil_sanksi_poin($poin) {
2 $query = $this->db->query("SELECT id, sanksi from sanksi_pelanggaran where poin_min <= $poin and
poin_maks >= $poin");
3 return $query;
4 }
d. Model model_pelanggaran (Fungsi tambah_pelanggaran())
Fungsi tambah_pelanggaran() berisi query
untuk memasukkan data pelanggaran yang telah diproses sedemikian rupa ke dalam basis data, fungsiini ditunjukkan dalam tabel 7.
Tabel 7. Implementasi Algoritma tambah_pelanggaran ()
1 public function
tambah_pelanggaran($data) {
2 $this->db->insert('pelanggaran', $data);
3 }
3.3.1 Implementasi Prototipe
Berikut ini merupakan hasil implementasi prototipe dari sistem informasi bimbingan konseling siswa.
a. Halaman Kelola Data Pelanggaran (BK)
Halaman kelola data pelanggaran
meliputi menambah, memperbarui, dan menghapus data. Berikut ini merupakan halaman kelola data pelanggaran yang ditunjukkan pada gambar 9.
Gambar 9. Halaman Kelola Data Pelanggaran
b. Halaman Detail Data Pelanggaran (BK)
Halaman detail data pelanggaran
merupakan halaman yang dapat diakses oleh BK untuk dapat melihat secara detail data pelanggaran seorang siswa. Di halaman ini pula tersedia fungsi untuk memperbarui data pelanggaran, pembaruan yang dimaksud adalah telah diterima atau tidaknya suatu sanksi, sehingga pengguna dapat membedakan antara pelanggaran yang telah diberi sanksi dan belum diberi sanksi. Berikut ini merupakan halaman detail data pelanggaran yang ditunjukkan pada gambar 10.
Gambar 10. Halaman Detail Data Pelanggaran
3.4. Pengujian
Setelah dilakukan implementasi sistem, tahap selanjutnya adalah proses pengujian sistem. Pengujian menggunakan 3 metode yaitu menggunakan metode basis path testing, validation testing, dan compatibility testing.
3.4.1. Basis Path Testing
Tabel 8 merupakan hasil basis path testing
yang dilakukan untuk mengetahui cyclomatic complexity. Fungsi menambah pemberian sanksi memiliki jumlah cyclomatic complexity
yaitu 6. Fungsi menambah kehadiran memiliki jumlah cyclomatic complexity yaitu 5. Serta
fungsi menambah membuat nilai akhlak dan kepribadian memiliki jumlah cyclomatic complexity yaitu 14. Hal ini menunjukkan bahwa 2 fungsi sistem memiliki struktur yang mudah dipahami, mudah dilakukan pengujian dan dapat mudah dilakukan implementasi atau perbaikan. Sedangkan 1 fungsi memiliki struktur yang lebih kompleks, sehingga akan lebih sulit untuk dilakukan pengujian.
Tabel 8. Hasil Basis Path Testing
Fungsi Jumlah
3.4.2. Validation Testing
Validation testing dilakukan pada beberapa fungsi dalam sistem informasi bimbingan konseling siswa. Berdasarkan hasil pengujian, fungsi yang diujikan dapat bekerja dengan baik dan memiliki status valid. Sehingga dapat disimpulkan fungsi dalam sistem informasi bimbignan konseling siswa dapat berjalan sesuai dengan fungsionalitasnya.
3.4.1. Compatibility Testing
Hasil compatibility testing menggunakan SortSite dibagi menjadi tiga kategori yaitu
critical issues, major issues, dan minor issues. Pengujian yang telah dilakukan menunjukkan bahwa sistem dapat berjalan pada sepuluh macam versi browser sesuai pada gambar 11 tanpa mengalami masalah critical issues, dan
major issues. Sehingga sistem informasi bimbingan konseling siswa dapat berjalan dengan baik di sepuluh macam versi browser
(kecuali Internet Explorer versi 8).
4. KESIMPULAN
Berdasarkan penelitian yang telah dilakukan, maka dapat diambil kesimpulan sebagai berikut:
1. Proses perancangan sistem pada penelitian ini menghasilkan class diagram, sequence diagram, physical data model, perancangan komponen, dan perancangan antarmuka. Terdapat 3 class diagram, dan 12 sequence diagram yang didokumentasikan. Perancangan sistem merupakan dasar dalam implementasi sistem.
2. Proses implementasi sistem dilakukan berdasarkan perancangan sistem yang telah didefinisikan. Sistem dibangun dengan menggunakan Bootstrap sebagai framework
HTML dan CSS, Codeigniter sebagai
framework PHP dan MySQL sebagai database sistem.
3. Proses pengujian dilakukan dengan menggunakan basis path testing, validation testing, dan compatibility testing. Berdasarkan hasil basis path testing, 2 fungsi sistem mempunyai nilai cyclomatic complexity 6 dan 5, yang berarti jika dilakukan pengujian akan mudah dipahami, dapat dengan mudah dilakukan pengujian. Dan terdapat 1 fungsi sistem yang memiliki struktur yang lebih kompleks yang mempunyai nilai cyclomatic complexity 14, sehingga akan lebih sulit untuk dilakukan pengujian. Berdasarkan hasil 14 tabel
validation testing, fungsi yang ada di dalam sistem bimbingan konseling siswa berjalan dengan baik. Berdasarkan hasil compatibility testing, sistem bimbingan konseling siswa dapat digunakan dengan baik pada 10 macam jenis browser.
5. SARAN
1. Untuk pengembangan berikutnya, fitur sistem untuk mengirim notifikasi dapat ditingkatkan dengan menambahkan
SMS Gateway.
2. Pada pengembangan berikutnya dapat dilakukan integrasi antara sistem informasi bimbingan konseling siswa dengan sistem informasi akademik siswa yang telah ada, sehingga diharapkan data-data siswa, wali murid, dan guru yang terdapat di sistem informasi bimbingan konseling siswa dapat berjalan beriringan dengan data di sistem informasi akademik siswa yang telah ada.
6. DAFTAR PUSTAKA
A.S, Rosa, dan M. Shalahudin. 2015. Rekayasa Perangkat Lunak Terstruktur dan
Berorientasi Objek. Bandung:
Informatika.
Indriati. 2010. Pengujian Validasi. [Online]
Tersedia di: <
http://indryz.lecture.ub.ac.id/files/2010/ 11/Pengujian-Validasi.docx> [Diakses 14 November 2016].
Sommerville, Ian. 2011. Software Engeneering, Ninth Edition. New York: Addison-Wesley.