Upload
others
View
16
Download
0
Embed Size (px)
Citation preview
Perancangan Sistem Informasi Pengolahan Nilai Siswa
Menggunakan Java Spring RESTful Web Service
Artikel Ilmiah
Peneliti:
Muhammad Lutfi Ismail (672015146)
Yeremia Alfa Susetyo, S.Kom, M.Cs.
Program Studi Teknik Informatika
Fakultas Teknologi Informasi
Universitas Kristen Satya Wacana
Salatiga
2019
Perancangan Sistem Informasi Pengolahan Nilai Siswa
Menggunakan Java Spring RESTful Web Service
Artikel Ilmiah
Diajukan kepada
Fakultas Teknologi Informasi
untuk memperoleh Gelar Sarjana Komputer
Peneliti:
Muhammad Lutfi Ismail (672015146)
Yeremia Alfa Susetyo, S.Kom, M.Cs.
Program Studi Teknik Informatika
Fakultas Teknologi Informasi
Universitas Kristen Satya Wacana
Salatiga
2019
1. Pendahuluan
Sekolah adalah salah satu sarana organisasi dalam memberikan pelayanan
kepada masyarakat dalam bidang pendidikan yang berbeda-beda. Penilaian
merupakan bagian penting yang tidak dapat dipisahkan dalam suatu proses
pembelajaran. Penilaian dibutuhkan untuk mengetahui sejauh mana siswa dapat
menerima hasil pembelajaran yang telah di sampaikan. Peningkatan atau penurunan
kualitas pendidikan dapat dilihat dari nilai-nilai yang diperoleh oleh siswa. Tak
jarang penyimpanan nilai siswa dicatat dan disimpan suatu tempat sehingga
membutuhkan waktu yang sangat lama dalam pengerjaanya. Sedangkan hasil dari
pengolahan data nilai siswa hanya bisa dilihat, baik oleh siswa maupun orang tua
siswa hanya pada buku rapor [1].
Sistem pengolahan data nilai siswa SMP Islam Sudirman Ampel belum
sepenuhnya terkomputerisasi, adapun prosedur yang dilakukan adalah menerima
berkas penilaian siswa dari setiap guru mata pelajaran setelah itu dicatat dalam buku
kumpulan nilai atau leger dan menyalinya kembali dalam satu buku yang disebut
dengan rapor. Kemudian siswa dan wali siswa hanya bisa melihat hasil penilaian
siswa tersebut pada akhir masa pembelajaran atau yang dikenal dengan istilah
pembagian rapor siswa [1].
Web Service merupakan suatu bentuk perkembangan dari teknologi saat ini
yang dapat digunakan untuk integrasi sistem, terutama dalam lingkungan bisnis.
Manfaat dari membangun sebuah Web Service untuk kebutuhan bisnis yang
berkembang dari waktu ke waktu yaitu peningkatan jumlah integrasi dan
fleksibilitas untuk pengembangan demi kepentingan dalam mengintegrasikan
service ke dalam pendekatan manajemen dan proses bisnis yang ada. Bentuk nyata
dari perkembangan Web Service saat ini yaitu dengan hadirnya Web Service
berbasis RESTful [2]. RESTful web service sangat baik dalam mengoptimalkan
kinerja. Ketika server RESTful web service diakses dalam skala besar dan secara
bersamaan dalam sistem terdistribusi di internet, karena memiliki kinerja tinggi dan
stabil [3].
Berdasarkan permasalahan tersebut, maka rumusan masalah dari penelitian ini
adalah belum adanya aplikasi atau sistem yang dapat membantu guru dalam
melakukan penilaian dan wali kelas dalam mengelola nilai siswa atau rapor siswa.
Oleh karena itu dalam penilitian ini akan dilakukan perancangan sistem informasi
pengolahan nilai siswa menggunakan java spring RESTful web service yang dapat
mempercepat dan mempermudah dalam mengelola penilaian dan absensi atau
pembuatan rapor atau laporan nilai siswa.
Tujuan penelitian ini untuk merancang sebuah sistem informasi nilai siswa
menggunakan Java Spring RESTful Web Service.
2. Tinjauan Pustaka
Sistem Informasi Pengolahan Nilai Rapor Pada Siswa SMP Negeri 1
Yogyakarta Berbasis Web. Sistem ini dapat mempermudah siswa dan wali murid
untuk melihat data nilai tanpa ada batasan waktu. Dengan adanya sistem informasi
pengolahan nilai rapor berbasis website maka keseluruhan proses manual dalam
melakukan input data dan nilai menjadi lebih efisien waktu dan biaya. Sistem
pengolahan nilai rapor ini mencakup data dan nilai siswa, data wali murid dan data
guru. Sistem login pengolahan nilai rapor ini menggunakan login admin sebagai
hak akses keseluruan, hak akses login guru untuk melakukan input nilai dan melihat
nilai, sedangkan siswa dan wali murid hanya bisa melihat nilai[4]. Berbeda dengan
penelitian sebelumnya yang hanya memiliki dua user yaitu admin dan guru.
Penelitian ini memiliki tiga user yaitu admin, guru mata pelajaran dan wali kelas.
Wali kelas yang berguna untuk mencatat absensi dan mencetak raport siswa.
Sistem Informasi Pengolahan Data Nilai Siswa Berbasis Web Pada Sekolah
Menengah Atas SMA Muhammadiyah Pacitan membantu menyajikan informasi
pengolahan nilai, yang akurat dan relevan. Dapat menghemat waktu untuk
pencatatan nilai dalam rapor, laporan nilai, rekap nilai siswa dan data presensi siswa
dan guru akan lebih mudah dalam menginformasikanya. Hasil laporan nilai setiap
anak, laporan rekap nilai dan presensi bulanan yang dibutuhkan akan dapat dengan
mudah diperoleh tepat waktu. Dapat meninjau data yang sedang diproses atau data
yang sudah lama dievaluasi dari komputer ataupun dari kertas. Tampilan nilai
disamakan dengan rapor yang ada agar dapat dengan mudah dimengerti oleh
pemakai [5]. Berbeda dengan penelitian sebelumnya, penelitian ini berbasis pada
web yang mempunyai web service. Pembahasan RESTful web service bertipe data
JSON yang memungkinkan penambahan resource menjadi lebih mudah, ringan dan
cepat. RESTful web service juga berperan sebagai suatu standarisasi yang mengatur
bagaimana permintaan dan layanan hasil olah data akan diproses.
Integrasi informasi akademik dengan sistem monitoring prestasi akademik
untuk pengelolaan sekolah menggunakan RESTful web dapat membuat Integrasi
Sistem monitoring akademik Yayasan Taqwal Ilah dengan sistem informasi
akademik MTs TaqwalIlah dapat dilakukan dengan terlebih dahulu membangun
web service layer, menggunakan RESTful web service pada sistem informasi
akademik. Sistem monitoring akademik kemudian dibangun berdasarkan service
yang diberikan oleh web service layer pada sistem informasi akademik [6].
Penelitian sebelumnya yang menggunakan RESTful web yang diterapkan pada
memonitoring prestasi akademik, pada penelitian ini menggunkan RESTful web
service yang digunakan pada pengolahan nilai siswa atau rapor siswa.
RESTful Web Service untuk sistem pencatatan Transaksi Studi kasus PT. XYZ
menghasilka sebuah arsitektur RESTful Web Service yang aman bagi PT. XYZ
adapun RESTful Web Service yang dibangun menggunkan JSON Web Token dalam
mengamankan komunikasi yang terjadi. Dengan demikian dapat disimpulkan
bahwa sangat memungkinkan bagi PT. XYZ dalam mengintegrasikan sumberdaya
dari sistem dengan menggunkan aplikasi yang berbeda dan dapat diintegrasikan
dengan jalur komunikasi yang dibangun dalam RESTful yaitu setiap mekakukan
request client harus menyatakan token yang didapat hasil login untuk divalidasi
sebelum request client di proses [7]. Perbedaan dengan penelitian sebelumnya,
penelitian ini sama-sama menggunkan RESTful Web Service berbeda pada
pembangunan sistem yang belum menggunakan JSON web token yang digunakan
dalam mengamankan komunikasi.
Penerapan RESTful Web Service dan JSON pada aplikasi program interface (API) Sistem informasi perkembangan ayam broiler berbasis kemitraan dalam
penelitian ini disimpulkan bahwa RESTful web service dan JSON pada aplikasi
program Interface (API) dapat digunakan untuk membuat suatu sistem yang
terintegrasi dan realtime. Teknologi ini dapat diterapkan pada sistem informasi
perkembangan ayam broiler berbasis kemitraan. Adapun keunggulan dari
pembahasan RESTful web service dan JSON adalah integrasi dapat dilakukan
melalui internet secara aman, simpel, mudah digunakan dan human readable [8].
Pada penelitian sebelumnya menerapkan Restful web service untuk untuk membuat
suatu sistem informasi pada perkembanagan ayam broiler, Penelitian menggunakan
RESTful web service untuk mengolah nilai siswa.
Spring merupakan open source framework yang diciptakan pada akhir tahun
1996 menerbitkan spesifikasi Java Beans 1.00A. Spesifikasi ini menjelaskan
tentang peraturan – peraturan koding java yang memperbolehkan suatu objek yang
bisa menjadi komponen dan dapat dipakai berulang-ulang ke dalam suatu aplikasi
java yang lebih kompleks. Spring merupakan sebuah framework (kerangka kerja)
yang digunakan untuk membangun sebuah aplikasi Enterprise. Spring termasuk
framework yang ringan untuk mendukung secara penuh dalam pengembangan
aplikasi Enterprise siap pakai [4].
Gambar 1 Bagan Spring MVC
Pada gambar 1 view, model dan controller adalah pola desain yang terkenal
untuk merancang aplikasi berbasis GUI. Terutama peran model, tampilan, dan
controller dalam aplikasi. Pola ini membagi aplikasi menjadi tiga komponen untuk
memisahkan representasi internal dari informasi dari cara penyajianya kepada
pengguna. Model berguna untuk mengelola data aplikasi dan merangkum data
aplikasi yang diberikan oleh controller. View berguna untuk merepresentasi output
dari informasi, seperti menampilkan informasi atau laporan kepada pengguna baik
sebagai bentuk teks atau grafik. Tampilan biasanya adalah template JSP. Controller
berguna untuk meminta model untuk menjalankan logika bisnis dan kemudian
memperbaharui tampilan berdasarkan keluaran model [4].
View
Model Controller
REST menentukan sekumpulan prinsip arsitektur yang mana dapat digunakan
untuk merancang web service yang berfokus pada sumber daya sistem, termasuk
bagaimana sumber daya yang dialamatkan dan ditransfer melalui HTTP oleh
berbagai klien yang ditulis dalam bahasa pemrograman yang berbeda. Dengan
demikian REST dapat mengoperasikan operasi CRUD (create, read, update dan
delete) yang dapat dilakuan dengan memanfaatkan metode HTTP antara lain POST,
GET, PUT dan DELETE. Tabel 1 menyajikan pemetaan operasi CRUD ke dalam
permohonan HTTP.
Rest Web Service
Server
Client
Gambar 2 Bagan Restful Web Service
Pada Gambar 2 RESTful web service menggunakan metode HTTP (Hypertext
Transfer Protocol) secara eksplisit. Sebagai contoh HTTP DELETE digunakan oleh
klien sebagai metode untuk menghapus sebuah resource. Dalam setiap metode
HTTP yang digunakan, baik itu POST, GET, PUT atau DELETE selalu akan
menimbulkan kode status HTTP. Sebagai contoh bila suatu permohonan berhasil
atau sukses dieksekusi, maka protokol akan menampilkan kode respon 200 yang
berarti OK atau Succesfull [4].
JSON (Javascript Object Nation) adalah suatu format data ringan yang dapat
mempermudah Programmer dalam melakukan pertukaran data dan format ini juga
sangat mudah diolah oleh mesin untuk diurai. JSON adalah format teks yang benar-
benar merupakan bahasa bahasa independen tetapi menggunakan konvensi yang
akrab dengan programmer. Properti ini membuat JSON merupakan format bahasa
pertukaran data yang ideal [9].
HTTP
Response HTTP
Request
3. Perancangan Sistem
Perancangan Sistem yang akan dilakukan dalam merancang sistem informasi
pengolahan nilai siswa menggunakan java Spring RESTful Web Service dapat
dilihat pada Gambar 3.
Gambar 3 Perancangan Sistem
Tahapan penelitian dapat dilihat pada Gambar 3. Tahap Pertama adalah
perancangan sistem, pada tahap ini melakukan perancangan sistem menggunakan
Unified Modeling Language (UML) meliputi perancangan use case diagram, class
diagram dan activity diagram mengenai sistem yang akan dibangun. Selain itu
dilakukan pula perancangan pada user interface berupa prototype sistem.
Gambar 4 Use Case Diagram
Pada Gambar 4 use case diagram sistem aplikasi melibatkan admin, guru dan
wali kelas. Admin dapat mengakses dan mengelola data siswa, data guru, data
kelas,data semester, data mata pelajaran. Admin hanya bisa melihat data nilai dan
data absen. Sedangkan Guru mata pelajaran dapat mengakses data nilai sesuai
dengan kelas dan mata pelajaran yang sudah ditentukan oleh admin. Sedangkan
wali kelas dapat mengakses data absen sesuai kelas yang ditentukan oleh admin dan
dapat mengelola rapor siswa.
Gambar 5 Class Diagram
Pada gambar 5 merupakan relasi antar class diagram yang digunakan dalam
pembuatan aplikasi. Relasi antar class diatas akan digunakan untuk pembuatan
relasi antar tabel pada database. Pada class diagram terdapat relasi empat relasi
one to many yaitu antara class semester dan class nilai, class guru dan class mata
pelajaran, class kelas dan class siswa, class kelas dan class Mata pelajaran, class
nilai dan class kelas, class siswa dan class nilai. Dan terdapat tiga relasi one to one
antara class nilai dan class mata pelajaran, class kelas dan class guru, class absen
dan class siswa.
Gambar 6 Activity Diagram Admin
Gambar 6 merupakan diagram alur proses aplikasi pada user admin, pada
diagram diatas dijelaskan bahwa admin harus login terlebih dahulu agar dapat
mengakses sistem. Kemudian setelah berhasil login sistem akan menampilkan
menu-menu yang ada pada user admin. Dan setiap menu terdapat empat aksi yaitu
input, edit, delete dan view.
Gambar 7 Activity Diagram Guru
Gambar 7 merupakan diagram alur proses aplikasi pada user guru mata
pelajaran saat mengelola data nilai, pada diagram diatas dijelaskan bahwa guru
mata pelajaran harus login terlebih dahulu agar dapat mengelola data nilai sesuai
kelas dan mata pelajaran yang sudah ditentukan oleh admin. Setelah berhasil login
sistem akan menampilkan menu nilai. Kemudian sistem akan menampilkan data
kelas berdasarkan mata pelajaran yang ditentukan oleh admin, dan nama siswa yang
berada pada kelas yang telah ditentukan. Menu nilai digunakan untuk mengelola
data nilai yang memiliki empat aksi yaitu input, edit, delete dan view.
Gambar 8 Activity Diagram Wali Kelas Cetak Rapor
Gambar 8 merupakan diagram alur proses aplikasi pada user wali kelas saat
mencetak rapor, pada diagram diatas dijelaskan bahwa wali kelas harus login
terlebih dahulu agar dapat mencetak rapor siswa. Kemudian setelah berhasil login
sistem akan menampilkan menu rapor. Kemudian sistem akan menampilkan data
kelas berdasarkan kelas yang ditentukan oleh admin, dan nama siswa yang berada
pada kelas yang telah ditentukan, kemudian wali kelas hanya klik cetak pada kolom
siswa yang dipilih.
Tahap kedua adalah membuat skema database menggunakan database MySQL,
yang dimulai dengan pembuatan tabel dan atributnya. Kemudian mengidentifikasi
relasi yang menunjukan bagaimana hubungan antar tabel yang akan digunakan.
Kemudian menentukan primary key, primary key adalah satu atribut yang
mengidentifikasi tabel secara unik atau disebut dengan atribut yang unik, isi dari
atribut tersebut tidak boleh sama, dan primary key berguna untuk mebangun relasi
antar tabel. Dan skema database pada pembuatan aplikasi ini sama seperti desain
class diagram pada gambar 5 yang sudah di buat pada tahap pertama.
Tahap ketiga adalah membuat user interface mockup dan pebulisan kode
program. Pembuatan user interface mockup merupakan solusi untuk sinkronisasi
pemahaman user tentang aplikasi yang akan dibuat. Dan mendesain tampilan
aplikasi dan menentukan form dan menu sesuai dengan skema database yang sudah
dibuat. Dalam tahap ini bertujuan untuk melihat gambaran aplikasi yang akan
dibuat sebelum membuat kode programnya. Penulisan kode program merupakan
tahap penerjemahan desain sistem yang telah dibuat ke dalam bentuk perintah-
perintah yang dimengerti komputer dengan mempergunakan bahasa pemrograman.
Tahapan ini merupakan tahapan secara nyata dalam mengerjakan suatu sistem.
Tahap terakhir adalah pengujian sistem, pada tahap ini akan dilakukan
pembahasan hasil penelitian dan proses pengujian terhadap sistem. Sistem akan di
uji terkait setiap fungsi yang digunakan dan daya efektifitas. Selanjutnya akan di
analisis dan penentuan kelayakan sistem. Dalam proses pengujian sistem juga
melibatkan user dan admin yang akan meggunakan, hal ini untuk menunjang
kebutuhan admin yang diperlukan.
4. Hasil dan Pembahasan
Dalam penerapan REST lebih banyak digunakan untuk web service yang
berorientasi pada resource. Orientasi pada sumber daya adalah orientasi yang
menyediakan sumber daya sebagai layanannya dan bukan kumpulan-kumpulan dari
aktifitas yang mengolah sumber daya. Bentuk web service menggunakan REST
sangat cocok digunakan sebagai backend dari aplikasi berbasis web karena cara
aksesnya yang mudah dan hasil data yang dikirimkan berformat JSON sehingga
ukuran file menjadi lebih kecil, sehingga RESTful web service sangat baik dalam
mengoptimalkan kinerja ketika server RESTful web service diakses dalam skala
besar dan secara bersamaan dalam sistem terdistribusi di internet [10].
Gambar 9 Arsitektur RESTful Web Service
Pada Gambar 9 terdapat sebuah aplikasi atau client mengirimkan sebuah
request ke dalam web service. Komponen dari HTTP request yang digunakan
adalah method GET, PUT, POST, DELETE. Kemudian web service melakukan
query command ke database. Kemudian database akan mengolah query yang sudah
dikirimkan, database mengembalikan query result ke web service. Lalu web service
melukan response data berupa JSON yang dikirimkan ke client.
Penerapan RESTful web service pada sistem informasi nilai siswa pada bagian
controller mendefinisikan metode yang akan digunakan untuk pemanggilan web
service tersebut. Controller disini berperan untuk menentukan informasi apa yang
akan dikirimkan ketika pengguna mengakses web service yang telah dibuat
menggunakan arsitektur REST maka method yang dapat digunakan adalah method
yang didukung oleh protokol HTTP seperti method GET, POST, DELETE, dan
PUT. Method GET yang berguna untuk menyediakan hanya akses baca pada
resource. Method POST yang beguna untuk menciptakan resource baru. Mehod
DELETE yang berguna untuk menghapus resource. Method PUT yang berguna
untuk memperbaharui resource yang sudah ada atau membuat resource baru.
Berikut adalah penerapan RESTful web service pada sistem informasi nilai
siswa pada bagian login dan kelas siswa.
Gambar 10 Halaman Login
Gambar 10 adalah tampilan login. Saat aplikasi dijalankan yang pertama
muncul adalah halaman login dan dibalik dari halaman login terdapat Login
Controlle, Login Controller adalah class pertama yang menjalankan method-
method sesuai dengan mapping yang dijalankan.
Kode program 1 Login Controller
Kode program 1 adalah kode untuk proses login. Pada baris 1 menjalankan
mapping “/login1” dengan menggunakan method POST. Pada baris 2 menjelaskan
bahwa pada tampilan login.jsp terdapat dua textbox yaitu username dan password
untuk dapat menangkap dua nilai dari textbox tersebut pada controller digunakan
fungsi RequestParam. Pada baris 4-5 pemanggilan fungsi login1 (username,
password) yang berada dalam class login service yang dideklarasikan dengan nama
String value. Kemudian pada baris 6-20 menjelaskan tentang validasi dari login.
Jika nilai yang dimasukkan tidak terdapat di dalam database maka akan
mengeluarkan pemberitahuan bahwa “Username and Password is Invalid” dengan
menggunakan sebuah model untuk dapat dilempar ke dalam kelas JSP. Jika gagal
login maka akan dilempar ke kelas IndexLogin, dan jika berhasil login maka akan
dilempar ke kelas Example.
1. @RequestMapping(value = "/login1", method = RequestMethod.POST)
2. public String listAllLogins( @RequestParam(name = "username", required =
true, defaultValue = "") String username, @RequestParam(name = "password",
required = true, defaultValue = "") String password, Model model) {
3. model.addAttribute("message", "Enter Your Username and Password");
4. String value = loginService.login1(username, password);
5. String value2 = loginService.loginadmin(username, password);
6. tampungValue = value;
7. if (value2.equals("admin")) {
8. return "Example";// You many decide to return
9. }else if (value.equals("a")) {
10. model.addAttribute("message", 11. "Your username and password is invalid"); 12. String result = ""; 13. model.addAttribute("facilityid", result); 14. System.out.println(model); 15. return "IndexLogin";// You many decide to return } 16. return "ExampleGuru";}
Gambar 11 Tampilan Kelas Siswa
Pada Gambar 11 terdapat sebuah form yang berguna untuk melakukan tambah
data, edit data dan hapus data, dan juga terdapat sebuah tabel yang berguna untuk
melihat data yang sudah dimasukkan. Dan dibalik tampilan tersebut terdapat kode
program atau controller yang berguna untuk menentukan informasi apa yang akan
dikirimkan ketika pengguna mengakses aplikasi.
Kode program 2 Controller GET
Kode Program 2 menjelaskan tentang bagaimana menampilkan data dari
database. Untuk menampilkan data dari database digunakan method GET. Method
GET menyediakan hanya akses baca pada resource. Fungsi yang diakses atau
dijalankan adalah fungsi listAllSiswa() yang terdapat di dalam kelas Siswa. Di
dalam fungsi tersebut dihubungkan dengan kelas JdbcRepository dimana query
untuk menampilkan data dideklarasikan. Jika data tidak ada maka pada browser
akan menampilkan pemberitahuan “NO_CONTENT”. Dan jika data ada maka akan
mengembalikan nilai berupa JSON.
1. @ApiOperation(value = "GET LIST SISWA DATA", response = Siswa.class)
2. @RequestMapping(value = "/siswa", method = RequestMethod.GET)
3. public ResponseEntity<List<Siswa>> listAllSiswa(Model model) {
4. System.out.println("masuk mapping siswa");
5. List<Siswa> master = siswaService.getAllSiswa();
6. if (master.isEmpty()) {
7. return new ResponseEntity<List<Siswa>>(HttpStatus.NO_CONTENT);
8. }
9. return new ResponseEntity<List<Siswa>>(master, HttpStatus.OK);
10. }
Kode program 3 Controller POST
Kode Program 3 menjelaskan tentang bagaimana menambah data ke dalam
database. Untuk menambah data ke database atau menambah resource baru
digunakan method POST. Pada baris 1 fungsi ini menjalankan response dari kelas
model yang bernama kelas siswa. baris 2 menjalankan sebuah mapping “/siswa”
dengan menggunakan method POST dan baris 3-4 menjelaskan tentang
penggunaan @RequestBody yaitu fungsi yang dapat menerima request berupa
JSON dari client berdasakan kelas model. Berikutnya adalah baris 5-13 yaitu untuk
menjalankan fungsi createSiswa() dari kelas siswa dimana di dalam kelas tersebut
akan dihubungkan dengan kelas JdbcRepository yang mendeklarasikan tentang
query insert.
Kode program 4 Controller PUT
Kode program 4 menjelaskan tentang bagaimana memperbaharui resource.
Untuk memperbaharui resource digunakan method PUT. baris 1 menjalankan
sebuah mapping “/siswa/{id}” dengan menggunakan method PUT. Selanjutnya
adalah baris 2-4 menjelaskan tentang pendeklarasian @PathVariable,
@PathVariable untuk mengambil nilai variable id. Berikutnya adalah baris 5-7
yaitu untuk menjalankan fungsi updateSiswa() dari kelas siswa dimana di dalam
kelas tersebut akan dihubungkan dengan kelas JdbcRepository yang
mendeklarasikan tentang query update.
Kode program 5 Controller DELETE
1. @ApiOperation(value = "CREATE NEW SISWA DATA", response = Siswa.class)
2. @RequestMapping(value = "/siswa", method = RequestMethod.POST)
3. public ResponseEntity<Void> createSiswa(@RequestBody Siswa mfc,
4. UriComponentsBuilder ucBuilder) {
5. System.out.println("Creating SISWA Card with Name : " +mfc.getNama());
6. System.out.println("marker");
7. siswaService.saveSiswa(mfc);
8. HttpHeaders headers = new HttpHeaders();
9. headers.setLocation(ucBuilder.path("/mfc/{id}").buildAndExpand(mfc.getID()
10. ). 11. toUri()); 12. return new ResponseEntity<Void>(headers, HttpStatus.CREATED); 13. }
1. @RequestMapping(value = "/siswa/{id}", method = RequestMethod.PUT)
2. public ResponseEntity<Siswa> updateSiswa(@PathVariable("id") long id,
3. @RequestBody Siswa mfc) {
4. System.out.println("Updating MasterFacilityCard wit ID : " + id);
5. siswaService.editSiswa(mfc);
6. return new ResponseEntity<Siswa>(HttpStatus.OK);
7. }
1. @RequestMapping(value="/siswa/{nis}", method = RequestMethod.DELETE)
2. public ResponseEntity<List<Siswa>>deleteSiswa(@PathVariable("nis") String
3. NIS){
4. System.out.println("Delete Siswa with NIS : "+NIS);
5. siswaService.deleteSiswaByNIS(NIS);
6. return new ResponseEntity<List<Siswa>>(HttpStatus.OK);
7. }
Kode program 5 menjelaskan tentang bagaimana menghapus data dari
database. Pada baris 1 menjalankan sebuah maping “/siwa/{nis}” dengan
menggunkan method DELETE. Selanjutnya adalah baris 2-3 menjelaskan
pendeklarasian @PathVariable, @PathVariable untuk mengambil nilai variable
nis. Berikutnya baris 4-7 berguna untuk menjalankan fungsi deleteSiswa() dari
kelas Siswa dimana di dalam kelas tersebut akan dihubungkan dengan kelas
JdbcRepository yang mendeklarasikan tentang query delete.
Pengujian sistem ini dilakukan dengan menggunakan teknik pengujian Black
Box Testing dan pengujian beta. Fungsi dari pengujian black-box testing adalah
untuk mengetahui kesalahan dalam interface yang terjadi saat software dijalankan
dan untuk mengetahui kesalahan dalam struktur data atau akses database eksternal
di dalam suatu aplikasi [11]. Untuk menemukan masalah (error) atau ketidak
sesuaian pada fungsi-fungsi yang ada dalam sistem aplikasi. Untuk rincian
pengujian dapat dilihat pada tabel berikut:
a. Pengujian untuk bagian yang dapat diakses oleh user admin pada sistem
informasi nilai siswa dapat dilihat pada Tabel 1.
Tabel 1 Pengujian Black Box Admin
Aktivitas
dan
Event
Input Output yang diharapkan Output Status
Pengujian
Admin
login
username
dan password
a. Jika berhasil akan masuk ke
menu utama b. jika gagal akan menampilkan
notifikasi bahwa username
atau pasword tidak sesuai.
Admin berhasil
login sistem dengan username
dan password
yang benar
Valid
Admin
tambah
data siswa
NIS,
Nama,
Alamat,
Tanggal
lahir,
Agama,
Jenis
Kelamin,
No
telepon,Kelas
a. Jika data siswa baru berhasil
atau valid dimasukkan maka
akan dilakukan proses
penambahan data pada daftar
siswa
b. jika data baru tidak valid maka
tombol add pada sistem akan
disable.
Admin berhasil
menambahkan data
siswa dengan data
yang valid
Valid
Admin
tambah
data guru
NIP,
Password
, Nama ,
Jenis
Kelamin,
No
Telepon,
Alamat
a. Jika data guru baru berhasil
atau valid dimasukkan maka
akan dilakukan proses
penambahan data pada daftar
guru
b. jika data guru baru tidak valid
maka tombol add pada sistem
akan disable.
Admin berhasil
menambahkan data
Guru dengan data
yang valid
Valid
Admin
tambah
data
Kelas dan menentuk
an wali
kelas
Kode
kelas,
nama
kelas, wali
kelas
a. Jika data kelas baru berhasil
atau valid dimasukkan maka
akan dilakukan proses
penambahan data pada daftar kelas
Admin berhasil
menambahkan data
kelas dan
menentukan wali kelas dengan data
yang valid
Valid
b. jika data kelas baru tidak valid
maka tombol add pada sistem
akan disable.
Admin
tambah
data
Mata
Pelajaran
dan
menentuk
an guru
mata
pelajaran
Kode
mata
pelajaran
, nama
mata
pelajaran
, guru
mengam
pu, kelas
a. Jika data mata pelajaran baru
berhasil atau valid dimasukkan
maka akan dilakukan proses
penambahan data pada daftar
mata pelajaran
b. jika data mata pelajaran baru
tidak valid maka tombol add
pada sistem akan disable.
Admin berhasil
menambahkan data
Pelajaran dan
menentukan Guru
Mata Pelajaran
dengan data yang
valid
Valid
Admin tambah
data
Semester
Kode Semester
,
Semester
a. Jika data semester baru berhasil atau valid
dimasukkan maka akan
dilakukan proses penambahan
data pada daftar mata
semester
b. jika data semester baru tidak
valid maka tombol add pada
sistem akan disable.
Admin berhasil tambah data
semester dengan
data yang valid
Valid
b. Pengujian untuk bagian yang dapat diakses user Guru mata pelajaran pada
sistem informasi nilai siswa dapat dilihat pada Tabel 2.
Tabel 2 Pengujian Black Box Guru Mata Pelajaran Aktivitas
dan
Event
Input Output yang diharapakan Output Status
Penguji
an
login NIP
dan
Password
a. Jika berhasil akan masuk ke
menu utama
b. jika gagal akan menampilkan
notifikasi bahwa NIP atau
password tidak sesuai.
Guru berhail login
dengan username dan
password yang valid
Valid
Guru
tambah
nilai siswa sesuai
mata
pelajaran
yang di
tentukan
oleh
admin
Nilai a. Jika data nilai baru berhasil atau
valid dimasukkan maka akan
dilakukan proses penambahan data pada daftar nilai sesuai
siswa yang dipilih
b. jika data nilai baru tidak valid
maka tombol add pada sistem
akan disable.
Guru berhasil
menambahkan data nilai
sesuai pelajaran yang sudah ditentukan oleh
admin
Valid
c. Pengujian untuk bagian yang dapat diakses user wali kelas pada sistem
informasi nilai siswa dapat dilihat pada Tabel 3.
Tabel 3 Pengujian Black Box Wali Kelas
Aktivitas
dan
Event
Input Output yang diharapkan Output Status
Pengujia
n
login NIP
dan
Password
a. Jika berhasil akan masuk ke
menu utama
b. jika gagal akan menampilkan
notifikasi bahwa nis atau
pasword tidak sesuai.
Wali kelas berhail
login dengan
username dan
password yang
valid
Valid
Wali kelas
tambah
absen siswa
sesuai kelas
yang sudah ditentukan
oleh admin
Alfa, Izin,
Sakit,
Keterangan
a. Jika data absen baru berhasil
atau valid dimasukkan maka
akan dilakukan proses
penambahan data pada daftar
absen sesuai siswa yang dipilih b. Jika data nilai baru tidak valid
maka tombol add pada sistem
akan disable.
Guru berhasil
menambahkan
data basen siswa
sesuai kelas yang
sudah ditentukan oleh admin
Valid
Wali kelas
cetak rapor
siswa
sesuai
kelas
Menampilkan data nilai siswa
sesuai dengan kelas yang sudah
ditentukan dan siswa yang dipilih
Wali kelas
berhasil mencetak
rapor siswa sesuai
kelas yang sudah
ditentukan oleh
admin
Valid
Berdasarkan hasil pengujian yang dilakukan diperoleh hasil bahwa masing –
masing fungsi pada aplikasi sistem informasi nilai siswa sudah sesuai dengan yang
diharapkan. Pengujian beta merupakan pengujian yang dilakukan oleh suatu
kelompok yang tidak terlibat dalam pembuatan sistem, pengujian ini bertujuan
untuk mengetahui apakah sistem telah memenuhi kebutuhan pengguna. Untuk
mengetahui hasil dari pengujian beta digunakan kuesioner yang diberikan kepada
pengguna sistem. Tanggapan dari masing-masing responden yang telah mengisi
kuesioner kemudian dihitung dengan menggunakan skala likert dengan pilihan
jawaban Tidak Setuju bernilai 1, Kurang Setuju bernilai 2, Setuju bernilai 3, dan
Sangat Setuju bernilai 4. Skala likert merupakan skala yang digunakan untuk
mengukur pendapat atau persepsi seseorang maupun kelompok mengenai sebuah
peristiwa atau fenomena sosial [5]. Pertanyaan dalam kuesioner dapat dilihat pada
Tabel 4. Tabel 4 Tabel Daftar Pertanyaan Kuesioner
Nomor Pertanyaan
1 Website sistem informasi nilai siswa mudah digunakan?
2 Pada saat pengoperasian sistem aplikasi apakah mudah dipahami?
3 Website sistem informasi nilai siswa berjalan sesuai dengan kebutuhan, yakni
menghasilkan output berupa sistem penilaian yang lebih efisien?
4 Website Sistem informasi nilai siswa membantu proses pengolahan data nilai
siswa?
5 Penggunaan sistem berbasis web ini mempermudah proses penilaian siswa?
Jawaban kuesioner dihutung menggunakan persamaan skala likert dengan
tujuan untuk mengetahui persentase dari masing – masing jawaban kuesioner.
Berdasarkan hasil pengujian yang telah dilakukan sehingga dapat disimpulkan
bahwa pertanyaan pertama 86% responden memberi pendapat aplikasi ini mudah
digunakan. Sedangkan berdasarkan pertanyaan ke dua 84% responden berpendapat
aplikasi mudah dipahami. Berdasarkan pertanyaan ketiga 78% responden
mengatakan aplikasi ini berjalan sesuai dengan kebutuhan. sebanyak 82%
responden berpendapat bahwa aplikasi membantu proses pengolahan data nilai
siswa. Berdasarkan pertanyaan terakhir 77% responden berpendapat bahwa aplikasi
mempermudah proses penilaian siswa.
5. Simpulan
Berdasarkan pengujian aplikasi yang telah dilakukan, maka dapat diambil
kesimpulan bahwa semua fungsi dari aplikasi berjalan sesuai dengan rancangan
yang telah dibuat. Dalam membangun sistem informasi nilai siswa menggunakan
RESTful web service sebagai backend, sangat baik dalam mengoptimalkan kinerja
ketika sistem diakses dalam skala besar dan secara bersamaan dalam sistem
terdistribusi di internet, karena cara aksesnya yang mudah dan hasil data yang
dikirimkan berformat JSON sehingga ukuran file menjadi lebih kecil, maka proses
pertukaran data akan lebih cepat.
Sistem masih dapat dikembangkan dengan menambah beberapa tools yang
dapat membantu pengguna dalam megelola sistem informasi nilai siswa yaitu
dengan penambah tools seperti perincian nilai ulangan harian, nilai rata-rata,
menentukan nilai kriteria ketuntasan minimal (KKM) dan peningkatan prestasi
yang dicapai.
Daftar Pustaka
[1] Sefrika, Apriyani, H., & Alawiah, E. T. (2017). Perancangan Sistem Informasi Pengolahan
Nilai Berbasis Web pada MTs Al-Ghozaly Bogor. Jurnal Mantik Penusa, 1(2), 38–47.
[2] R. Sommermeier, A. Heil, and M. Gaedke, “Lightweight Data Integration using
the WebComposition Data Grid Service,” in Proceedings of the First International
Workshop on Lightweight Integration on the Web (ComposableWeb’09), 2009, pp. 30–38.
[3] J. Meng, S. Mei, and Z. Yan, “RESTful Web Services: A Solution for Distributed Data
Integration,” Comput. Intell. Softw. Eng. 2009. CiSE 2009. Int. Conf., vol. 6, no. 4, pp. 1–4,
2009.
[4] Putri, N. A. A., & Hartanto, A. D. (2009). SISTEM INFORMASI PENGOLAHAN NILAI RAPOR PADA SISWA SMP NEGERI 1 YOGYAKARTA BERBASIS WEB No Title.
Journal Speed – Sentra Penelitian Engineering Dan Edukasi, Volume 1 N, 5–15.
[5] Wardani, S. K. (2013). Sistem Informasi Pengolahan Data Nilai Siswa Berbasis Web Pada
Sekolah Menengah Kejuruan (Smk) Pgri 1 Pacitan. Indonesian Jurnal on Networking and
Security, 2(2), 2302–5700.
[6] Wirawan, P. Wi., Saputra, R., & Adhy, S. (2016). Integrasi Sistem Informasi Akademik
Dengan Sistem Monitoring Prestasi Akademik Untuk Pengelolaan Sekolah (Studi Kasus : Mts
Taqwal Ilah Dan Yayasan Taqwal Ilah Semarang). Jurnal Ekonomi Manajemen Akuntansi,
24(40), 1–13. Retrieved from http://ejurnal.stiedharmaputra-
smg.ac.id/index.php/JEMA/article/view/225
[7] Tanaem, P. F., Danny, M., & Ade, I. (2016). RESTFul Web Service Untuk Sistem Pencatatan
Transaksi Studi Kasus PT. XYZ. Jurnal Teknik Informatika Dan Sistem Informasi, 2(April), 2443–2229.
[8] Saputro, D. A., Purnomo, H. D., & Somya, R. (2015). Penerapan RESTful Web Service dan
JSON pada Application Programming Interface ( API ) Sistem Informasi Perkembangan
Ayam Broiler Berbasis Kemitraan Artikel Ilmiah Program Studi Teknik Informatika Fakultas
Teknologi Informasi Universitas Kristen Satya Waca.
[9] Narendra, J., Suprihadi, Beeh, Yos R. 2011. Layanan Service Aplikasi smsCAPTCHA pada
Web PHP Berbasis URL dengan Menggunakan JSON Format . Jurnal Teknologi Infromasi –
Aiti, Vol.8.No.1, pp. 42-60
[10] Kurniawan, E. (2014). Implementasi REST Web Service untuk Sales Order Dan Sales
Tracking Berbasis Mobile. Jurnal EKSIS, Vol 07 No.
[11] GREENIT. (2018). PENGERTIAN DAN FUNGSI DARI BLACK BOX TESTING. Retrieved from https://bierpinter.com/pengetahuan/pengertian-dan-fungsi-dari-black-box-testing/