1.
Pendahuluan Perkembangan teknologi informasi aplikasi berbasis web saat ini berkembang dengan cepat. Perkembangan arus informasi aplikasi berbasis web, digunakan untuk mencari informasi dimana user bisa menemukan informasi-informasi yang lebih mudah. Salah satu bahasa pemrograman yang cukup terkenal dan banyak digunakan oleh para pembuat aplikasi web adalah PHP. PHP merupakan sebuah bahasa pemrograman yang memungkinkan seorang developer mengembangkan sebuah aplikasi berbasis web yang powerful. Seiring dengan berkembangnya kebutuhan akan aplikasi berbasis PHP dan semakin kompleksnya pengembangan aplikasi, maka diperlukanlah sebuah kerangka kerja (framework) yang dapat membantu menyelesaikan hal tersebut. Selama ini pemahaman yang diperoleh tentang aplikasi web berbasis PHP adalah sebuah aplikasi yang terdiri dari file-file yang berisi kode-kode dan tag HTML yang dicampur dengan tag PHP. Pengembangan aplikasi berbasis konvensional seperti itu tidaklah keliru, namun akan menjadi masalah besar apabila aplikasi tersebut membutuhkan banyak fitur dan pengembangan di kemudian hari. Framework-framework yang bermunculan tersebut kebanyakan juga telah mendukung pengembangan web untuk membuat sebuah aplikasi dengan karakter pengembangan Rapid Application Development (RAD), yang memungkinkan untuk digunakan dan dikembangkan menjadi aplikasi lain yang lebih sempurna. Berdasarkan uraian latar belakang tersebut, maka munculah sebuah keinginan untuk menerapkan dan meneliti salah satu framework PHP yaitu Code igniter yang merupakan sebuah rapid development framework yang bersifat open source untuk PHP, serta mendukung pengembangan web untuk membuat sebuah aplikasi dengan karakter pengembangan Rapid Application Development (RAD), yang memungkinkan untuk digunakan dan dikembangkan menjadi aplikasi lain yang lebih sempurna. Framework Code Igniter adalah framework yang bekerja menggunakan konsep Model View Controller (MVC). MVC merupakan suatu konsep yang memungkinkan pengerjaan web antara logika dan presentasi tampilan web dilakukan secara terpisah. Framework Code Igniter akan digunakan untuk mempermudah programmer berkerja secara terstruktur dan cepat tanpa kehilangan fleksibilitas (flexibility), yang berarti kemampuan untuk beradaptasi dan bekerja dengan efektif dalam situasi yang berbeda, dan dengan berbagai individu atau kelompok. Pengolahan data serta penyampaian informasi yang harus dilakukan dengan format digital menjadi alasan utama dalam pembuatan sistem informasi akademik berbasis web menggunakan MVC, sehingga penyampaian informasi ke dinas pendidikan masih dilakukan dengan cara pembukuan. Kurang akurat serta lamanya waktu yang dibutuhkan dalam melakukan pengolahan data menjadi salah satu kendala utama sehingga seringkali menjadi salah satu faktor penghambat kelancaran sistem pengolahan data di SMP Negeri 3 Bawen. Belum lagi, tidak adanya sistem komputer yang dibangun, sehingga sebagian besar aktifitas administrasi dan akademik masih terganggu. Sehingga penulis berkeinginan untuk berpartisipasi dalam mengembangkan aplikasi Sistem Informasi Akademik pada SMP Negeri 3 Bawen menggunakan arsitektur MVC (Model View Controller) sebagai salah satu media sistem informasi yang dapat memberikan manfaat dalam hal peningkatan mutu pendidikan itu sendiri. Dalam hal ini, aplikasi yang akan dibangun nantinya akan lebih mengutamakan pada hal pengelolaan nilai siswa, serta beberapa aspek pendukung lainnya yang mencakup kebutuhan Sistem Informasi Akademik itu sendiri. 4
Perancangan aplikasi Sistem Informasi Akademik menggunakan arsitektur MVC ini bertujuan untuk dapat memberikan kemudahan bagi setiap penggunanya baik itu siswa, staff guru serta pegawai SMP Negeri 3 Bawen dalam mengakses informasi dan mengolah data sekolah itu sendiri. Tujuan dari penelitian ini menerapkan framework code igniter pada aplikasi Sistem Informasi Akademik berbasis web di SMP Negeri 3 Bawen. . Manfaat penelitian yang dilakukan adalah sebagai berikut : dengan diterapkannya Framework Code Igniter dalam aplikasi sistem informasi akademik berbasis web ini dapat memudahkan proses akademik pada SMP Negeri 3 Bawen, juga dapat mengetahui kelebihan dari penggunaan Model View Controller (MVC) dalam pengembangan aplikasi sistem informasi akademik. Perancangan dan Implementasi Sistem Informasi Akademik pada SMP Negeri 3 Bawen memiliki beberapa batasan masalah, yaitu: Perancangan sistem yang dibangun bersifat “Sistem Informasi” yaitu proses penyampaian informasi serta pengelolaan informasi, yang mana sistem yang dibangun nantinya mencakup informasi seputar: absensi siswa, data nilai siswa, info pegawai, info sekolah, sarana prasarana, info materi pembelajaran, profil sekolah, dan laporan. : Sistem yang dibangun akan membahas implementasi arsitektur Model View Controller (MVC) menggunakan PHP Framework Code Igneter pada pembuatan Sistem Informasi. . Sehingga penulis berkeinginan untuk berpartisipasi dalam mengembangkan aplikasi Sistem Informasi Akademik pada SMP Negeri 3 Bawen sebagai salah satu media sistem informasi yang dapat memberikan manfaat berupa kemudahan dalam pengelolaan nilai siswa, info pegawai, info sekolah, sarana prasarana, profil sekolah, serta beberapa aspek pendukung lainnya yang mencakup kebutuhan Sistem Informasi Akademik berupa data guru, data siswa, dan data pegawai. 2. Kajian Pustaka Metode MVC sudah banyak diterapkan dan digunakan dalam aplikasi yang mendukung sistem, salah satu di antaranya adalah Perancangan dan Implementasi Perangkat Lunak dengan menerapkan Arsitektur MVC (Model View Controller) Studi Kasus: Sistem Informasi KP/TA FTI UKSW, menyatakan bahwa penggunaan arsitektur MVC dapat mempermudah dalam pembuatan aplikasi berskala besar, mudah dalam pengembangan, kode program aplikasi yang dibuat menjadi lebih terstruktur dan rapi, lebih mudah dibaca dan dipahami serta mempermudah perawatan aplikasi. Aplikasi ini menghasilkan sebuah program (Sistem Informasi berupa aplikasi desktop) yang bisa mengelola mahasiswa-mahasiswa FTI UKSW yang sudah pada tahap kerja praktek maupun penelitian [1]. Penelitian yang berjudul Sistem Informasi Manajemen Jemaat Gereja Kristen Jawa Sidomukti Salatiga Menggunakan Konsep MVC (Model View Controller). Aplikasi ini menghasilkan sebuah informasi berbasis web (dibangun dengan menggunakan PHP) yang bisa mengelola manajemen jemaat berupa kegiatan jemaat [2]. Penelitian lain, yaitu membahas tentang Perancangan dan Implementasi Sistem Informasi Administrasi dan Akademik Bebasis Web dengan Teknologi Model View Controller dan Ajax pada Fakultas Teknologi Informasi yang memberikan sarana bagi administrator FTI dalam pengelolaan informasi data perpustakaan, pengelolaan informasi praktikum berupa absen dan asisten yang mendaftar, pengelolaan data inventaris, pengelolaan informasi data dosen berupa biodata, pendidikan dan training, pengolaan informasi. Menyatakan bahwa penggunaan arsitektur Model View Controller (MVC) membuat perancangan sistem dapat lebih teratur [3]. 5
Berdasarkan penelitian-penelitian yang pernah dilakukan, maka akan dilakukan penelitian tentang Perancangan dan Implementasi Sistem Informasi Akademik di SMP Negeri 3 Bawen menggunakan arsitektur MVC (Model View Controller). Pembuatan aplikasi sistem informasi akademik berbasis web pada SMP Negeri 3 Bawen diharapkan dapat membantu setiap pengguna untuk mendapatkan informasi-informasi yang dibutuhkan. Website ini dibuat dengan menggunakan PHP dan MySQL dengan Framework Code igniter berfungsi untuk menyimpan data yang akan ditampilkan pada halaman website, sehingga informasi yang diberikan pada halaman web ini lebih optimal dan akurat. Berbeda dengan penelitian sebelumnya, sistem informasi akademik yang dibuat ini menggunakan Framework Code igniter dengan menerapkan sistem penghitungan nilai berbasis poin. Sistem informasi akademik ini sendiri memiliki beberapa keuntungan diantaranya ialah data laporan hanya bisa dilihat oleh kepala sekolah. Sistem Informasi Akademik Sistem informasi akademik adalah sistem yang dibangun dalam satu kesatuan yang saling terintegrasi dan memiliki hubungan saling keterkaitan antara satu sama lain. Dalam hal ini semua yang berhubungan dengan akademik merupakan hubungan yang berfokus pada aktivitas akademik itu sendiri, baik itu pengolahan data siswa, guru dan pegawai serta aktivitas lainnya yang terhubung dalam satu jaringan yang saling terintegrasi, dan data dikelola oleh database sebagai media penyimpanan data terpusat [4]. Framework Code Igniter Code igniter menjadi pilihan karena beberapa kelebihannya, antara lain : Open Source, ini adalah salah satu syarat untuk berkembangnya sebuah framework yang baik, Dokumentasi yang lengkap. Framework yang baik harus mempunyai dokumentasi yang lengkap, karena sekumpulan class tanpa dokumentasi tidak lebih dari setumpuk file yang asing dan menambah masalah developer, OOP dan yang lebih penting lagi adalah MVC. MVC singkatan dari Model, View, Controller. Gambar 1 menunjukkan mekanisme atau struktur kerja Code Igniter, yang dapat dijelaskan sebagai berikut. Pertama kali, user melakukan request, yang akan ditangani oleh Controller. Controller memiliki banyak metode yang akan menangani request. Controller akan mengambil data pada database melalui Model. Model memberikan data yang relevan kepada Controller. Controller akan mengolah data dan memberikannya pada View (tampilan) yang dipilih. Tampilan inilah yang akan dilihat oleh user pada browser.
Gambar 1 Struktur Kerja Code Igniter
6
Model View Controller (MVC) Model-View-Controller (MVC) merupakan sebuah pola membangun proyek secara lebih efektif yang dilakukan dengan cara memilah komponen Model, View dan Controller pada bagian-bagian proyek, sehingga pada proyek besar, penggunaan MVC akan membuat program lebih terstruktur dengan rapi. Arsitektur metode MVC dipisahkan dalam layer Model, View, dan Controller, dapat dilihat pada Gambar 2.
Gambar 2 Arsitektur Model View Controller [5]
Gambar 2 menunjukkan tiga komponen yang terdapat dalam pola MVC dan interaksi yang terjadi. Model mempresentasikan data yang digunakan oleh aplikasi sebagaimana proses bisnis yang diasosiasikan terhadapnya dan mengatur respon terhadap permintaan, serta memberi hak akses untuk manipulasi data. Beberapa kelebihan menggunakan Model, yaitu dalam proses perawatan aplikasi yang lebih menguntungkan, karena detail dari data dan operasinya dapat ditempatkan pada area yang ditentukan oleh Model. Keuntungan lainnya komponen Model dapat digunakan kembali oleh aplikasi lain yang memiliki kegunaan yang hampir sama, karena telah dipisahkan secara total antara data dan antarmukanya. View merupakan bagian yang menangani presentation logic. Pada suatu aplikasi web bagian ini biasanya berupa file template HTML, yang diatur oleh Controller. View berfungsi untuk menerima dan mempresentasikan data kepada user. Bagian ini tidak memiliki akses langsung terhadap bagian Model. Controller merupakan bagian yang mengatur hubungan antara bagian Model dan bagian View, Controller berfungsi untuk menerima request dan data dari user kemudian menentukan apa yang akan diproses oleh aplikasi. Controller akan melakukan segala aktivitas proses bisnis dan aktivitas control lainnya seperti mengelolah data dari Model, menyimpannya dalam variabel-variabel (manipulasi data) lalu menampilkan pada View, benar atau tidaknya hasil olahan tergantung dari logika kerja aplikasi yang tersusun pada bagian Controller ini. Controller menyediakan detail alur program dan bertanggung jawab menampung events dari user melalui View dan melakukan update komponen Model menggunakan data yang dimasukkan oleh user. 3. Metode dan Perancangan Sistem Metode pengembangan sistem yang digunakan pada perancangan dan implementasi Sistem Informasi Akademik SMP Negeri 3 Bawen adalah metode waterfall. Secara umum tahapan pada metode waterfall ditunjukkan pada Gambar 3.
7
Requirements definition System and Software design Implementation and unit testing Integration and system testing Operation and Maintenance Gambar 3 Metode Waterfall [6]
Keuntungan dari Model waterfall ini, yaitu setiap tahapan akan dievaluasi secara teliti untuk mendapatkan hasil yang maksimal. Tahap-tahap yang dilakukan dalam pengembangan sistem berdasarkan metode waterfall, dijelaskan sebagai berikut: Pada tahap analisis kebutuhan dilakukan dengan pengumpulan data melalui pengamatan secara langsung terhadap objek yang diteliti yaitu Proses Sistem Informasi Akademik SMP Negeri 3 Bawen. Kegiatan pengumpulan data dalam penelitian melalui proses wawancara yaitu dengan melakukan tanya jawab dengan Ibu Ambar Sari, S. Pd. selaku staff Tata Usaha di SMP Negeri 3 Bawen adapun hasil yang didapatkan yaitu berupa data mata pelajaran, data kelas, data sarana prasarana mengenai Sistem Informasi Akademik; dan pengumpulan data pada kegiatan dokumentasi dilakukan dengan melihat data-data atau catatan-catatan dan dokumen yang terkait dengan Sistem Informasi Akademik yang terdapat pada SMP Negeri 3 Bawen, seperti data guru, data siswa, data pegawai, data jadwal pelajaran, data nilai, data absensi, dan data materi pelajaran. Pada tahap system and software design, yang dilakukan adalah merancang aplikasi sistem informasi akademik dengan arsitektur MVC(Model View Controller), yang meliputi perancangan desain dan perancangan database. Pada tahap implementation system, dilakukan penerapan Aplikasi Sistem Informasi Akademik yang telah dirancang untuk mengetahui apakah yang ada pada sistem telah berjalan dengan baik dan dapat digunakan oleh staff bagian akademik, guru dan siswa. Pada tahap testing / verification, dilakukan untuk dapat mengetahui kondisi sistem (aplikasi) yang dibangun apakah telah berjalan sesuai dengan rancangan sistem yang telah ditentukan sebelumnya, dengan cara memberikan quisioner kepada pengguna. Pengujian dilakukan untuk mendapatkan hasil atau report yang mana hasil ini sebagai bahan evaluasi untuk memperbaharui sistem jika terdapat kekurangan atau error pada sistem. Selanjutnya pada tahap terakhir, yaitu tahap maintenance dilakukan kontrol pada aplikasi yang dibangun untuk memantau perkembangan aplikasi ataupun sistem yang sedang berjalan. Apakah aplikasi yang diterapkan telah berjalan dengan optimal, dan jika terdapat kendala dapat segera diatasi. Perancangan untuk Model View Controller yang dibuat menggunakan Arsitektur MVC dilakukan dengan memilah bagian aplikasi yang tergolong komponen Model, View, dan Controller. Dalam sebuah aplikasi, perubahan pada suatu komponen mungkin saja terjadi. Misalnya perubahan dalam bagian tampilan yang merupakan bagian yang berinteraksi langsung dengan pengguna. Perubahan pada satu bagian memiliki potensi keterkaitan dengan keseluruhan aplikasi. Namun dengan digunakannya arsitektur MVC, permasalahan ini dapat diatasi. 8
Perancangan Model Model merupakan bagian yang bertugas merepresentasikan data yang digunakan oleh aplikasi sebagaimana proses bisnis yang diasosiasikan terhadapnya. Bagian Model yang dibangun berhubungan langsung dengan basis data dan menangani validasi dari bagian Controller, namun tidak berhubungan langsung dengan View. Berikut ini merupakan Model yang dibuat dalam aplikasi ini : Package Db Table : berisikan class-class yang berhubungan dengan database. Perancangan View View merupakan bagian yang menangani presentation logic. Pada aplikasi web bagian ini biasanya berisi file template HTML yang diatur oleh Controller. View berfungsi untuk menerima dan merepresentasikan data kepada user. Bagian ini tidak memiliki akses langsung terhadap bagian Model. Pada aplikasi ini bagian View berisi file template HTML. Desain yang dilakukan pada bagian View dikelompokkan dalam package- package untuk lebih memudahkan lagi daalam pengembangan, yaitu: (1) Package View default : berisikan file default yang memuat halaman awal, (2) Package View Master Page : berisikan file MasterPage yang memuat halaman master untuk semua halaman yang akan di load, dan (3) Package View Admin MasterPage : berisikan file Admin MasterPage yang akan menjadi halaman master untuk halaman administrasi. Perancangan Controller Controller merupakan bagian yang mengatur hubungan antara bagian Model dan bagian View. Controller berfungsi untuk menerima request dan data dari user kemudian menentukan apa yang akan diproses oleh aplikasi. Dengan menggunakan prinsipMVC suatu aplikasi dapat dikembangkan sesuai dengan kemampuan developer-nya, yaitu programmer yang menangani bagian Model dan Controller, sedangkan designer yang menangani bagian View, sehingga penggunaan arsitektur MVC dapat meningkatkan maintainability dan organisasi kode. Walaupun demikian dibutuhkan komunikasi yang baik antara programmer dan designer dalam menangani variable-variabel yang akan ditampilkan. Controller yang dibuat dalam aplikasi ini yaitu: Absensi, Index, Admin, Jadwal, Aspek, Kelas, Back, Laporan, Daftar_aspek, Materi, Guru, Nilai, Home, Pegawai, Pelajaran, Siswa, Sarpa, dan User. Gambar 4 menunjukkan use case diagram yang dilakukan oleh siswa, yang dapat dijelaskan sebagai berikut. Pertama–tama setiap siswa harus mengakses halaman website. Ketika halaman website telah ditampilkan, siswa harus melakukan proses login pada sistem. Jika proses login berhasil, maka akan tampil informasi menu siswa, dimana terdapat berbagai tools akses yang dapat digunakan untuk mengakses informasi lainnya, seperti akses biodata (siswa, pegawai, dan pengajar), lihat nilai, lihat absensi, lihat jadwal belajar, lihat aspek penilaian, lihat sarana dan prasarana, unduh materi pelajaran dan mencetak laporan (jadwal belajar dan data nilai).
9
M engedit Biodata pri badi
extend Meli hat Data Nil ai M encetak Laporan
M engakses Biodata
Siswa / Si swi
Meli ihat Sarana Prasarana
Meli hat Absensi
Meli hat Jadual Belaj ar Mengunduh M ateri Pelajaran Meli hat Aspek Peni laian
Gambar 4 Use Case Diagram Siswa/Siswi
Gambar 5 menunjukkan use case diagram yang dilakukan oleh pengajar, yang dapat dijelaskan sebagai berikut. Pertama–tama setiap pengajar harus mengakses halaman website. Ketika halaman website telah ditampilkan, para pengajar harus melakukan proses login pada sistem. Jika proses login berhasil maka akan tampil informasi menu pengajar dimana terdapat berbagai tools akses yang dapat digunakan untuk mengakses informasi lainnya, seperti akses biodata (pribadi, siswa, dan pegawai), input nilai siswa, input absensi, input aspek penilaian, lihat sarana dan prasarana cek jadwal mengajar, input materi pelajaran, dan mencetak laporan (data nilai kelas, jadwal pelajaran, absensi, dan data siswa).
Mengedit Biodata extend Meliihat sarana prasarana Menginput Materi Pelajaran Mengakses Biodata
Menginput aspek penilaian
Pengajar
Menginput Nilai Siswa
Mencetak Laporan
Menginput Absensi Melihat Jadual
Gambar 5 Use Case Diagram Pengajar
Gambar 6 menunjukkan use case diagram yang dilakukan oleh pegawai, yang dapat dijelaskan sebagai berikut. Pertama–tama setiap karyawan atau pegawai tata usaha harus mengakses halaman website. Ketika halaman website telah ditampilkan, karyawan harus melakukan proses login pada sistem. Jika proses login berhasil, maka akan tampil informasi menu karyawan yang mana pada menu karyawan terdapat berbagai tools akses yang dapat digunakan untuk mengakses informasi lainnya, seperti akses biodata (pribadi, pengajar, siswa), input data (pengajar, pegawai, siswa, mapel, jadwal pelajaran, sarana dan prasarana, dan kelas baru), dan mencetak laporan (data siswa, data guru, data pegawai, data jadwal pelajaran, data sarana prasarana, dan data absensi).
10
Mengedit Bi odata
extend
Menginput Data Pengaj ar
Mengakses Biodata
Menginput Kelas Baru
Menginput Data Pegawai
Menginput Mata Pel aj aran Mencetak Laporan Pegawai Menginput Jadual Pel aj aran
Menginput sarana prasarana
Menginput Absensi Mel i hat Aspek Peni laian Menginput Data Si swa
Gambar 6 Use Case Diagram Pegawai
Gambar 7 menunjukkan use case diagram yang dilakukan oleh admin, dijelaskan sebagai berikut. Pertama–tama setiap admin harus mengakses halaman website. Ketika halaman website ditampilkan, admin harus melakukan proses login pada sistem. Jika proses login berhasil, maka akan tampil informasi menu admin, dimana terdapat berbagai tools akses yang dapat digunakan untuk mengakses informasi lainnya, akses biodata (pribadi, pegawai, pengajar, siswa), input data (admin, pengajar, pegawai, siswa, mapel, jadwal pelajaran, sarana dan prasarana, dan kelas baru), dan mencetak laporan (data admin, data siswa, data guru, data pegawai, data jadwal pelajaran, data sarana prasarana, dan data absensi). Mengi nput data Pegawai
Mengedit Biodata
extend Mengi nput data Siswa
Mengakses Biodata
Mengi nput data Pengajar
Mengi nput sarana prasarana
Meli hat data nilai
Mengi nput data Admin
Mengi nput Kel as baru
Mengi nput mata pelajaran
Admin
Mengi nput Siswa baru
Mencetak laporan Meli hat aspek penil ai an Mengi nput jadwal pelajaran Mengi nput Absensi
Gambar 7 Use Case Diagram Admin
11
tbl_pegawai id_pegawai : varchar nama_pegawai alamat_pegawai jenkel_pegawai tgl_lhr_pegawai agama_pegawai telepon_pegawai photo_pegawai
tbl_user_level id_level nama_level
tbl_user u_id u_username u_password u_level
tbl_jadual id_jadual id_kelas id_pelajaran id_pegawai mulai_jadual akhir_jadual urutan_jadual
tbl_materi id_materi id_pelajaran judul_materi link_materi
tbl_siswa
tbl_riwayat_siswa
id_siswa nama_siswa jenkel_siswa alamat_siswa telp_siswa tgl_lahir_siswa agama_siswa foto_siswa tgl_input_riwayat
id_riwayat id_siswa id_kelas tgl_input_riwayat
tbl_artikel id_artikel judul_artikel teks_artikel
tbl_absensi id_absen id_siswa id_pelajaran tgl_input_absen keterangan_absen
tbl_fasilitas id_fasilitas nama_fasilitas keterangan_fasilitas
tbl_nilai tbl_kelas id_kelas nama_kelas
tbl_pelajaran
id_nilai id_siswa id_daftar jumlah_nilai tgl_input_nilai
tbl_menu_list list_id menu_parrent menu_id menu_order menu_level
id_pelajaran nama_pelajaran
tbl_menu_link menu_id menu_nama menu_link
tbl_daftar_aspek id_daftar id_aspek id_pelajaran presentase_daftar
tbl_aspek id_aspek nama_aspek
Gambar 8 Class Diagram Sistem Form Rencana Studi
Class Diagram yang ditunjukkan pada Gambar 8 mendeskripsikan objekobjek yang terlibat dalam sistem dan hubungan-hubungan di antara class. Adapun tabel yang terdapat pada perancangan database, Sistem Informasi Akademik di SMP Negeri 3 Bawen, diantaranya terlihat pada Tabel 1. Tabel 1 Perancangan Database Fungsi untuk menampilkan data Artikel yang terkait dengan SMP Negeri 3 Bawen, Tabel Aspek untuk menampilkan data aspek yang berlaku di SMP Negeri 3 Bawen, Tabel Absensi untuk menampilkan data kehadiran siswa Tabel Kelas untuk menampilkan daftar kelas yang ada di SMP Negeri 3 Bawen Tabel Pegawai untuk menampilkan data pegawai yang ada di SMP Negeri 3 Bawen Tabel Fasilitas untuk menampilkan data Fasilitas apa saja yang terdapat di SMP Nengeri 3 Bawen Tabel Nilai untuk menampilkan data tingkatan nilai atau ranking tiap semester Tabel Pelajaran untuk menampilkan data mata pelajaran Tabel Jadwal untuk menampilkan data jadwal mata pelajaran Tabel Siswa untuk menampilkan data siswa Tabel User untuk menampilkan data pengguna tabel User Level untuk menampilkan data level pengguna Tabel Riwayat Siswa untuk menampilkan data riwayat selama siswa belajar Tabel Materi untuk menampilkan data daftar materi pelajaran Tabel Menu List untuk menampilkan data sub menu aplikasi Tabel Menu Link untuk menghubungkan alamat yang dituju Tabel Daftar Aspek untuk menampilkan data Aspek penilaian terhadap siswa
Nama Tabel Tabel Artikel
12
4.
Hasil dan Pembahasan Pada uji coba aplikasi yang dibuat, dilihat kemampuan aplikasi dalam melakukan layanan yang baik dan tepat, pada user maupun administrator. Untuk memulai proses yang ada di dalam aplikasi, maka masing-masing user (user maupun admin) harus melakukan login terlebih dahulu.
Gambar 9 Form Login User
Gambar 9 merupakan halaman login yang berfungsi untuk melakukan verifikasi user sebelum masuk ke dalam sistem. Apabila username dan password yang dimasukkan sesuai dengan yang tersimpan di dalam database, maka user dapat masuk ke dalam sistem, Hasil implementasi sistem diuji dengan menggunakan metode pengujian blackbox digunakan untuk mengetahui sejauh mana keberhasilan dari sistem yang telah implementasi melalui pengujian fungsi-fungsi khusus dari perangkat lunak yang dirancang. Ada 3 cara yang digunakan dalam pengujian sistem ini yaitu validasi, performance analysis dan kuisioner sebagai pengujian sistemnya. Dengan adanya pengujian ini dapat dipastikan bahwa proses sistem berjalan sesuai yang diharapkan. Dalam menguji validitas proses bisnis suatu sistem, diperlukan pengujian sistem dengan cara memasukkan sejumlah data pada unit sistem yang utama, yang telah diintegrasikan menjadi satu kesatuan dalam sistem ini, yaitu pengujian pada unit sistem login, pencarian dan mengunggah informasi. Sehingga dengan menguji tiap unit sistem, secara tidak langsung pengujian sistem keseluruhan juga telah dilakukan karena semua unit sistem tersebut memiliki output yang saling terkait satu sama lain.
Gambar 10 Form Pengajar
Gambar 10 merupakan implementasi form pengajar, yang memberikan informasi tentang data guru. Form pengajar berguna untuk menambah data guru. Bag. pegawai mengisi data berupa nama guru, NIP guru, alamat guru, tgl. lahir, jenis kelamin, agama, telpon, photo, username, dan password. Apabila salah satu data belum diisikan, maka akan keluar peringatan bahwa data harus diisi, setelah data semua diisi dengan lengkap, data tersebut akan disimpan ke dalam database dan kemudian ditampilkan dalam daftar guru/pengajar. Jika data sudah ditampilkan di daftar guru/pengajar, maka data tersebut dapat diubah maupun dihapus.
13
Gambar 11 Form Siswa
Gambar 11 merupakan implementasi form siswa, yang memberikan informasi tentang data siswa. Form siswa berguna untuk menambah data siswa. Bag. Pegawai mengisi data berupa nama siswa, NIS siswa, kelas, alamat siswa, tgl. lahir, jenis kelamin, agama, telpon, foto, username, dan password. Apabila salah satu data belum diisikan, maka akan keluar peringatan bahwa data harus diisi, setelah semua data diisi dengan lengkap, data tersebut akan disimpan ke dalam database, dan kemudian ditampilkan dalam daftar siswa. Jika data sudah ditampilkan di daftar siswa, maka data tersebut dapat diubah maupun dihapus.
Gambar 12 Form Jadwal
Gambar 12 merupakan implementasi form jadwal, yang memberikan informasi tentang data jadwal. Form jadwal berguna untuk menambah data jadwal. Bag. Pegawai mengisi mata pelajaran, guru pengampu, jadwal hari, waktu mulai mulai, waktu selesai. Apabila salah satu data belum diisikan maka akan keluar peringatan bahwa data harus diisi, setelah data semua diisi dengan lengkap, data tersebut akan disimpan ke dalam database, dan kemudian ditampilkan dalam daftar jadwal pelajaran. Jika data sudah ditampilkan di daftar jadwal pelajaran, maka data tersebut dapat diubah maupun dihapus. Model, View, dan Controller merupakan bagian terpenting dalam perancangan aplikasi dengan menggunakan code igniter. Pada bagian inilah, seluruh struktur perancangan aplikasi dibuat. Contoh penggunaan MVC pada aplikasi sistem informasi akademik yang dibuat, dijelaskan sebagai berikut. Kode Program 1 merupakan perintah untuk penerapan Model data sarana prasarana. Perintah baris (1) merupakan deklarasi nama kelas untuk Model sarana. Perintah baris (2) sampai baris (4) merupakan deklarasi variabel yang digunakan pada Model sarana. Perintah baris (5) sampai baris (28) merupakan validasi data dari input data yang dilakukan oleh user.
14
Kode Program 1 Perintah Untuk Model Data Sarana Prasarana 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28.
class m_sarana extends CI_Model { var $id_fasilitas; var $nama_fasilitas; var $keterangan_fasilitas; function get_all(){ $query = "select * from ans_fasilitas"; $rs = $this->db->query($query); if($rs->num_rows() !=0){ return $rs->result(); }else{ return null; } } function get_sarana(){ $query = "select * from ans_fasilitas where id_fasilitas='".$this->id_fasilitas."'"; $rs = $this->db->query($query); if($rs->num_rows() !=0){ return $rs->result(); }else{ return null; } } function insert(){ $data["nama_fasilitas"]= $this->nama_fasilitas; $data["keterangan_fasilitas"] = $this->keterangan_fasilitas; $this->db->insert('ans_fasilitas', $data); }
Kode Program 2 merupakan perintah untuk penerapan Controller delete data sarana prasarana. Perintah Baris (1) merupakan deklarasi fungsi hapus sarana dengan menggunakan kode sarana sebagai parameter. Perintah Baris (2) sampai dengan baris (6) merupakan fungsi yang digunakan untuk menghapus barang sesuai dengan paramater kode sarana yang dikirim ke fungsi. Perintah Baris (7) sampai dengan baris (13) merupakan fungsi yang digunakan untuk konfirmasi hapus data sarana. Apabila proses penghapusan data sarana berhasil, maka akan muncul pesan seperti pada perintah baris (14). Perintah baris (15) merupakan fungsi yang digunakan untuk melakukan refresh data dan halaman web. Kode Program 2 Perintah Untuk Controller Delete Data Sarana 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.
function delete($id = "", $param = ""){ $prev_link = "sarpa/get_all"; $delete_link = "sarpa/delete/".$id."/do"; $user_level = $this->session>userdata("user_level"); $data["top_menu"] = $this->m_ansys >get_menu($user_level, 1); $data["contents"] = "back/includes/confirm"; $data["tittle"] = "Hapus Data Sarana prasarana"; $data["messages"] = show_warning("Yakin akan dihapus ?"); $data["prev_link"] = base_url().$prev_link; $data["delete_link"]= base_url().$delete_link; if($param != "" && $param == "do"){ $this->m_sarana->id_fasilitas = $id; $this->m_sarana->delete(); $this->session->set_flashdata('message', show_info("Data sarana pasarana telah dihapus ...")); redirect($prev_link); }
Kode Program 3 merupakan perintah untuk Controller update data sarana. Perintah baris (1) merupakan nama fungsi yang digunakan untuk mengubah data sarana dengan paramater kode sarana. Baris (2) sampai dengan baris (13) merupakan perintah yang digunakan untuk mengubah data sesuai dengan parameter yang dikirim ke fungsi. Apabila proses update berhasil, maka akan muncul pesan seperti pada 15
perintah baris (5), dan apabila proses update gagal maka akan muncul pesan seperti pada perintah baris (14). Perintah baris (15) sampai dengan baris (20) merupakan proses menampilkan data yang telah di-update ke menu sarana. Kode Program 3 Perintah Untuk Controller Update Data Sarana 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20.
function update($id= ""){ $user_level = $this->session>userdata("user_level"); $data["top_menu"] = $this->m_ansys->get_menu($user_level, 4); $this->m_sarana->id_fasilitas = $id; $data["id"] = $id; $data["result"] = $this->m_sarana->get_sarana(); $this->form_validation->set_rules('a_name', 'Nama Sarana/Prasarana', 'required'); $this->form_validation->set_rules('a_keterangan', 'Keterangan', 'required'); $this->form_validation->set_message('required', '%s harus diisi !'); if($this->form_validation->run()){ $this->m_sarana->nama_fasilitas = $this->input>post('a_name'); $this->m_sarana->keterangan_fasilitas = $this->input>post('a_keterangan'); $this->m_sarana->update(); $this->session->set_flashdata('message', show_info('Data baru telah tersimpan !')); redirect('sarpa/get_all'); } $data["tittle"] = "Edit Sarana Prasarana"; $data["contents"] = "back/update/update_sarpa"; $this->load->view('home', $data); }
Kode Program 4 merupakan perintah untuk Controller insert data sarana. Perintah baris (1) merupakan deklarasi nama fungsi tambah. Perintah baris (2) sampai dengan baris (10) merupakan fungsi yang digunakan untuk menambahkan data sarana ke dalam sistem. Apabila proses berhasil maka akan muncul informasi seperti pada perintah baris (11). Perintah baris (12) sampai dengan baris (17) merupakan fungsi yang digunakan untuk melakukan proses refresh halaman web, dan menampilkan data yang baru dimasukkan oleh user. Kode Program 4 Perintah Untuk Controller Insert Data sarana 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
function insert(){ $user_level = $this->session->userdata("user_level"); $data["top_menu"] = $this->m_ansys->get_menu($user_level, 4); $this->form_validation->set_rules('a_name', 'Nama Sarana/Prasarana', 'required'); $this->form_validation->set_rules('a_keterangan', 'Keterangan', 'required'); $this->form_validation->set_message('required', '%s harus diisi !'); if($this->form_validation->run()){ $this->m_sarana->nama_fasilitas = $this->input>post('a_name'); $this->m_sarana->keterangan_fasilitas = $this->input>post('a_keterangan'); $this->m_sarana->insert(); $this->session->set_flashdata('message', show_info('Data baru telah tersimpan !')); redirect('sarpa/get_all'); } $data["tittle"] = "Input Sarana Prasarana";
16
Kode Program 5 merupakan perintah untuk View data sarana. Perintah baris (1) dan baris (20) merupakan perintah HTML yang digunakan untuk membuat tabel. Semua komponen untuk data barang akan diatur ke dalam tabel. Perintah baris (2) sampai dengan baris (21) merupakan perintah HTML untuk membuat label dan textbox yang dibutuhkan dalam menampilkan informasi data sarana yang harus dimasukkan oleh user. Perintah baris (21) sampai dengan baris (34) merupakan perintah HTML yang digunakan untuk menampilkan tombol browse image dan simpan data sarana yang telah dimasukkan oleh user. Kode Program 5 Perintah Untuk View Data Sarana 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34.
Daftar Sarana & Prasarana