PENGEMBANGAN APLIKASI BERBASIS WEB YANG INTERAKTIF UNTUK BELAJAR BAHASA PEMROGRAMAN JAVA SECARA ONLINE (STUDI KASUS JURUSAN SISTEM INFORMASI ITS SURABAYA) Irfan Satria S. 5208100101
Latar Belakang Proses belajar melalui e-learning masih banyak yang kurang maksimal dikarenakan e-learning tersebut hanya mengandung konten materi yang nantinya diunduh dan kemudian dipelajari secara individu oleh pengguna. E-learning yang interaktif dibutuhkan untuk menciptakan proses belajar yang efektif dan efisien. Keberadaan website e-learning untuk mempelajari bahasa pemrograman java yang interaktif masih sedikit.
Perumusan Masalah Bagaimana membangun website untuk belajar bahasa pemrograman Java yang interaktif Bagaimana membangun sebuah sistem yang dapat menarik user untuk terus menggunakannya
Batasan Masalah Materi Java yang dipelajari berdasarkan kurikulum mata kuliah Algoritma dan Pemrograman 1 di Jurusan Sistem Informasi. Aplikasi yang dikembangkan tidak membahas masalah keamanan
Tujuan Memahami bagaimana membangun e-learning untuk mempelajari bahasa pemrograman Java dan mengimplementasikannya.
Manfaat Mempermudah masyarakat dalam mempelajari dasar dari bahasa pemrograman Java. Melalui internet, masyarakat dapat belajar bahasa pemrograman Java kapan saja.
Materi Java Pengenalan Algoritma. mencetak kalimat operasi matematika variabel tipe data Konsep Percabangan. operator pembanding if if-else switch Konsep Perulangan. for while do-while
Konsep Rekursif. Menjelaskan rekursif dalam Java menggunakan studi kasus seperti faktorial dan fibonacci. Konsep Sorting Mengetahui bagaimana melakukan sorting dalam Java. Konsep Searching. Mengetahui bagaimana melakukan searching dalam Java. Array. Belajar apa itu array dan aplikasinya dalam Java. Pemrograman Berorientasi Obyek. Perkenalan objek dengan beberapa istilah seperti: Class, Method, Property, Attribute, Accessor, Mutator.
Achievement Partisipan Tiga Terbaik per Quiz Terbaik di Kelas
Pengguna Aplikasi Pengguna (User biasa) Teacher (Pengisi Materi)
Fungsi Utama Akun Pengguna Fungsi untuk menyimpan profil pengguna. Nantinya juga digunakan untuk login aplikasi dan menyimpan progres. Tutorial Fungsi yang bertujuan untuk mengajarkan Java kepada pengguna dengan cara praktek langsung. Quiz Fungsi untuk mengukur pemahaman pengguna dengan memberikan soal yang harus dikerjakan dalam waktu tertentu. Achievement Sebuah penghargaan khusus yang diberikan kepada pengguna ketika telah meraih pencapaian tertentu.
Alur Pengerjaan Tutorial
Proses Compile
Domain Model class Domain Model Progres Akun Pengguna Pengguna Achievement Tutorial Teacher Materi Soal
Use Case uc Materi uc Akun Pengguna Membuat Akun Menampilkan Daftar Materi Membuat Materi Baru Edit Profil Pengguna (from Actors) Login Pengguna (from Actors) Teacher (from Actors) Mengedit Materi Menampilkan Profil, Progres Tutorial, Progres Soal, dan Achievement Logout Menampilkan Daftar Tutorial dan Soal Menghapus Materi
Use Case uc Tutorial uc Quiz Mengerjakan Tutorial Mengerjakan Quiz Membuat Quiz Pengguna (from Actors) Mendow nload File History Tutorial Mengedit Quiz dan Menampilkan Daftar Pertanyaan Membuat Tutorial Pengguna (from Actors) Menghapus Pertanyaan Teacher (from Actors) Menghapus Quiz Teacher Mengedit Tutorial (from Actors) Mendow nload File History Quiz Mengedit Pertanyaan Membuat Pertanyaan Menghapus Tutorial
Use Case uc Report Melihat Report per Quiz Melihat Report Summary Teacher (from Actors) Memberi Achievement Tiga Terbaik per Quiz Memberi Achievement Terbaik di Kelas
Database
Hasil Implementasi No. Use Case Hasil 1. Use Case Membuat Akun Terpenuhi 2. Use Case Login Terpenuhi 3. Use Case Logout Terpenuhi 4. Use Case Menampilkan Profil, Progres Tutorial, Progres Quiz Terpenuhi dan Achievement 5. Use Case Edit Profil Terpenuhi 6. Use Case Menampilkan Daftar Materi Terpenuhi 7. Use Case Mengedit Materi Terpenuhi 8. Use Case Menghapus Materi Terpenuhi 9. Use Case Menampilkan Daftar Tutorial dan Quiz Terpenuhi 10. Use Case Membuat Tutorial Terpenuhi 11. Use Case Mengedit Tutorial Terpenuhi 12. Use Case Menghapus Tutorial Terpenuhi 13. Use Case Mengerjakan Tutorial Belum Terpenuhi No. Use Case Hasil 14. Use Case Mendownload File History Tutorial Terpenuhi 15. Use Case Membuat Quiz Terpenuhi 16. Use Case Mengedit Quiz dan Menampilkan Daftar Pertanyaan Terpenuhi 17. Use Case Menghapus Quiz Terpenuhi 18. Use Case Mengerjakan Quiz Belum Terpenuhi 19. Use Case Mendownload File History Quiz Terpenuhi 20. Use Case Membuat Pertanyaan Terpenuhi 21. Use Case Mengedit Pertanyaan Terpenuhi 22. Use Case Menghapus Pertanyaan Terpenuhi 23. Use Case Melihat Report per Quiz Terpenuhi 24. Use Case Melihat Report Summary Terpenuhi 25. Use Case Memberi Achievement Tiga Terbaik per Quiz Terpenuhi 26. Use Case Memberi Achievement Terbaik di Kelas Terpenuhi
Permasalahan Workspace akan menghasilkan output error ketika menghandle proses input, contohnya pada penggunaan scanner. Ketika pengguna menulis sebuah code yang menghasilkan infinite loop. Sistem melakukan running program non-stop yang menyebabkan pengguna tidak dapat mengakses aplikasi.
Kesimpulan Aplikasi untuk belajar java secara interaktif dapat dibangun menggunakan bahasa pemrograman PHP dan memanfaatkan Java sebagai external program yang dipanggil oleh PHP. Pada aplikasi ini telah diterapkan fitur progres dan achievement sehingga dapat menarik user untuk terus menggunakan aplikasi. Minimum requirement untuk dapat menerapkan aplikasi adalah terinstallnya JDK pada komputer server. JDK merupakan program utama pada komputer server yang digunakan untuk melakukan proses compile. Aplikasi ini memiliki beberapa kekurangan sebagai berikut: Tidak dapat mengatasi kasus infinite loop yang menyebabkan pengguna tidak dapat mengakses aplikasi kembali. Tidak efektif dalam memeriksa jawaban quiz yang tidak berfokus pada output, contohnya pada kasus kondisional.
Saran Dapat mendeteksi infinite loop yang pada aplikasi sekarang belum dapat dideteksi. Dapat menciptakan proses pengecekan quiz yang lebih efektif. Memberikan achievement yang lebih variatif. Membuat aplikasi dapat meng-handle input tanpa JNLP. Dapat membuat program Java menggunakan GUI. Menambah fitur syntax checker pada editor.