sistem informasi akademik berbasis web menggunakan sms
TRANSCRIPT
Sistem Informasi Akademik Berbasis Web
Menggunakan SMS Gateway
(Studi Kasus : Sekolah Menengah Kejuruan Pelita Salatiga)
Artikel Ilmiah
Peneliti:
Taufiqur Rahman (672014723)
Prof.Dr.Ir. Wiranto H. Utomo, M.Kom.
Program Studi Teknik Informatika
Fakultas Teknologi Informasi
Universitas Kristen SatyaWacana
Salatiga
September 2015
i
Sistem Informasi Akademik Berbasis Web
Menggunakan SMS Gateway
(Studi Kasus : Sekolah Menengah Kejuruan Pelita Salatiga)
Artikel Ilmiah
Diajukan kepada
Fakultas Teknologi Informasi
untuk memperoleh gelar Sarjana Komputer
Oleh:
Taufiqur Rahman
NIM : 672014723
Program Studi Teknik Informatika
Fakultas Teknologi Informasi
Universitas Kristen Satya Wacana
Salatiga
September
2015
ii
iii
iv
v
vi
vii
i
Sistem Informasi Akademik Berbasis Web
Menggunakan SMS Gateway
(Studi Kasus : Sekolah Menengah Kejuruan Pelita Salatiga)
1)
Taufiqur Rahman, 2)
Wiranto Herry Utomo
Fakultas teknologi Informasi
Universitas Kristen Satya Wacana
Jl. Diponegoro 52-60 Salatiga 50711, Indonesia
Email: 1)
Abstract
Growing of web development make data storage and data processing switch from
desktop based to web based. Reference with case studies on SMK Pelita Salatiga, show
the problems how to delivery and management of academic information on online based
application. The purpose of researcher is build a web-based academic information
system and using SMS gateway as information media. OOAD method used as software
development life cycles. The result of the implementation is all software system
can work perfectly and simplify the delivery and management of academic information
on SMK Salatiga either through website or SMS.
Keywords: Academic Information Systems, SMS Gateway, OOAD
Abstrak
Perkembangan teknologi web membuat proses penyimpanan dan pengolahan data
beralih dari berbasis desktop menjadi berbasis online. Studi kasus yang digunakan adalah
di SMK Pelita Salatiga, di mana permasalahan yang muncul adalah bagaimana
melakukan penyampaian dan pengolahan informasi akademik berbasis web. Melihat
kondisi ini peneliti bertujuan merancang sistem informasi akademik berbasis web dan
menggunakan SMS gateway sebagai media penyampaian informasi. Metode
pengembangan sistem yang digunakan adalah metode OOAD. Hasil implementasi
perangkat lunak menggunakan metode tersebut dapat berjalan dengan baik dan
mempermudah penyampaian dan pengelolaan informasi akademik pada Sekolah
Menengah Kejuruan Pelita Salatiga baik melalui website ataupun SMS.
Kata Kunci : Sistem Informasi Akademik, SMS Gateway, OOAD
1)
Mahasiswa Program Studi Teknik Informatika, Fakultas Teknologi Informasi, Universitas
Kristen Satya Wacana Salatiga 2)
Staff Pengajar Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana Salatiga
1
1. Pendahuluan
Globalisasi dunia pendidikan menuntut institusi pendidikan untuk dapat
mengelola informasi dengan baik, sehingga kebutuhan informasi masing–masing
pihak yang berkepentingan dapat terpenuhi dengan cepat dan tepat. Data-data
siswa, guru maupun karyawan pada sebuah institusi pendidikan yang berjumlah
banyak membuat kebutuhan akan pengolahan dan penyimpanan data yang tertata
merupakan hal yang penting. Akibat dari kebutuan tersebut maka muncul
permasalahan-permasalahan yang berkaitan dengan sistem informasi akademik
dan penyampaian informasi pada institusi pendidikan.
Berdasarkan studi awal dan wawancara tentang pengelolaan data siswa,
diskusi antara guru dan siswa serta penyampaian pengumuman akademik di
Sekolah Menengah Kejuruan Pelita Salatiga diketahui bahwa permasalahan yang
dihadapi yaitu pihak sekolah dalam menyimpan data siswa masih dalam bentuk
word processor untuk masing-masing siswa dan bentuk excel untuk siswa tiap
kelas. Data pada bentuk word processor merupakan data profil dan data nilai yang
dikemas dalam bentuk rapor siswa, untuk data excel berisi data absensi siswa
dalam tiap kelas. Proses tersebut jelas memerlukan waktu yang lama melihat
banyaknya data profil maupun data nilai siswa tiap sekolah. Permasalahan kedua
terkait diskusi atapun pertanyaan siswa kepada guru setelah kegiatan belajar
mengajar selesai dilakukan. Siswa yang mempunyai pertanyaan dalam pelajaran
sulit menemui guru untuk melakukan diskusi mengingat sebagian besar siswa
tidak mengetahui rumah maupun kediaman guru-guru yang terkait. Selain itu
membutuhkan waktu dan tenaga tambahan untuk menemui guru tersebut,
sehingga para siswa memilih melakukan bimbingan belajar yang membutuhkan
biaya ekstra dalam pelaksanaannya. Permasalahan selanjutnya terkait
penyampaian informasi kegiatan maupun pengumuman bagi guru, siswa dan
karyawan sekolah. Penyampaian informasi masih menggunakan papan
pengumuman sekolah, menyebabkan siswa maupun guru harus datang ke sekolah
untuk mengetahui pengumuman maupun jadwal kegiatan sekolah, sehingga
pengumuman yang bersifat mendesak tidak tersampaikan tepat pada waktunya
Berdasarkan latar belakang tersebut, maka dirancanglah sistem informasi
akademik berbasis web untuk melakukan pengelolaan data dan tempat diskusi
antara siswa dan guru yang terintegrasi dengan SMS gateway sebagai media
penyampaian informasi seputar kegiatan dan pengumuman melalui SMS.
Demikian diharapkan dapat tercipta suatu aplikasi yang terintegrasi dengan
memanfaatkan SMS gateway yang memberikan kemudahan dalam penyampaian
dan pengelolaan informasi akademik pada Sekolah Menengah Kejuruan Pelita
Salatiga baik melalui website ataupun SMS.
2. Tinjauan Pustaka
Penelitian mengenai implementasi SMS gateway dalam pengembangan
sistem informasi akademik sudah cukup banyak digunakan, antara lain dapat
dilihat pada Tabel 1.
2
Tabel 1 Penelitian Sebelumnya
No. Penulis Judul Deskripsi
1. Efendi,
Andriansyah
Pengembangan Sistem
Informasi Akademik
Berbasis SMS Pada
Fakultas Teknik
Universitas Bengkulu[1].
Penelitian ini membahas
tentang pengembangan
sistem informasi berbasis
SMS untuk mempermudah
bagi mahasiswa teknik
Universitas Bengkulu
maupun orang tua dalam
mendapatkan informasi
seputar kegiatan
akademik.
2. Amborowati Aplikasi Sistem Quick-
Count Pemilihan Kepala
Daerah Studi Kasus :
Pemilihan Kepala Daerah
DIY[2].
Penelitian ini bertujuan
untuk membantu
mempercepat perhitungan
suara pada pemilihan
umum atau pemilihan
kepala daerah berbasis
SMS sehingga hasil
pengolahan data dapat
dipublikasikan secara
langsung dalam sebuah
aplikasi web.
Perbedaan dan persamaan antara penelitian-penelitian sebelumnya dengan
laporan penelitian yang dirancang dengan judul “Sistem Informasi Akademik
Berbasis Web Menggunakan SMS Gateway (Studi Kasus : Sekolah Menengah
Kejuruan Pelita - Salatiga)” dapat diuraikan sesuai proses masing-masing
penelitian. Perbedaannya dengan penelitian pertama adalah pada proses akademik dan
pemanfaatan SMS gateway. Penelitian pertama proses akademik setingkat
universitas sedangkan penelitian ini setingkat sekolah menengah atas, dengan
perbedaan terletak pada mata pelajaran dan penilaian kemudian tidak terdapat
pemanfaatan SMS gateway pada sistem. Persamaan dengan penelitian pertama
terletak pada manfaat aplikasi yang membantu mempermudah pengguna aplikasi
mengetahui informasi kegiatan akademik dan laporan penilaian.
Perbedaan dengan penelitian kedua terletak pada proses dan tujuan
aplikasi. Penelitian kedua proses dan tujuan aplikasi untuk membantu
mempercepat perhitungan suara pada pemilihan umum atau pemilihan kepala
daerah, sedangakan penelitian ini bertujuan untuk mempermudah siswa dan guru
melakukan proses dan kegiatan akademik sekolah menengah atas. Persamaan
dengan penelitian kedua terletak pada pemanfaatan SMS gateway untuk
mempermudah penyampaian informasi melalui SMS.
Landasan teori yang diambil merupakan peran masing-masing komponen
pada arsitektur sistem. Untuk arsitektur sistem penulis mengacu pada “Pemodelan
Integrasi Data Penerimaan Siswa Baru Sekolah Menengah Pertama (SMP)
3
Berbasis XML Web Service (Studi Kasus: Sistem Penerimaan Siswa Baru SMP
Negeri di Salatiga)” [3].
Gambar 1 Model arsitektur sistem penerimaan siswa baru SMP berbasis XML web service [3]
Komponen-komponen dalam arsitektur Gambar 1:
1. Pendaftar yang merupakan siswa lulusan sekolah dasar yang ingin melakukan
pendaftaran.
2. Admin masing-masing sekolah, bertugas mengolah dan memproses data
penerimaan siswa baru.
3. HTTP port 80, berperan sebagai penghubung antara admin dan pendaftar
dengan website pendaftaran.
4. Website pendaftaran, berperan sebagai tempat request yang dilakukan oleh
pendaftar.
5. Database server, berperan untuk merespon data yang tersimpan yang telah di-
request oleh website pendaftaran.
6. XML web service, berperan untuk memparsing data dari bentuk string ke
bentuk XML dan juga sebaliknya.
7. Interface masing-masing sekolah, berperan sebagai tempat request yang
dilakukan oleh admin.
Hubungan arsitektur Gambar 1 dengan arsitektur sistem adalah informasi
sistem merupakan data akademik siswa berupa biodata dan nilai siswa. Admin
pada sistem sama-sama dari pihak sekolah yaitu karyawan masing-masing sekolah
yang bertugas mengelola data kebutuhan sistem. Pengambilan data dalam sistem
sama-sama menggunakan parsing XML dengan fungsi request data pada
database server.
3. Metodologi Perancangan Sistem
Metode penelitian yang digunakan adalah metode Object Oriented
Analysis and Design (OOAD). OOAD mencakup analisis dan desain sebuah
sistem dengan pendekatan objek [4]. Analisis berorientasi objek adalah metode
analisis yang memeriksa requirement yaitu syarat atau keperluan yang harus
dipenuhi sebuah sistem dari sudut pandang kelas-kelas dan objek-objek yang
ditemui dalam ruang lingkup perusahaan [4].
4
Sedangkan desain berorientasi objek adalah metode untuk mengarahkan
arsitektur software yang didasarkan pada manipulasi objek-objek sistem atau
subsistem [4].
Tahap-tahap dari proses OOAD yang dihubungkan ke dalam lima aktifitas
utama yaitu [4]:
1. Problem Domain Analysis adalah aktifitas dalam mengidentifikasi dan
memodelkan suatu problem domain . Hasil dari aktifitas ini adalah model
dari problem domain. Output problem domain merupakan perancangan use
case diagram sistem.
Gambar 2 User Case Diagram
2. Application Domain Analysis adalah suatu aktifitas yang menentukan
requirement dari sistem. Hasil dari aktifitas ini adalah keseluruhan
requirement dari sistem.
Tabel 2 Requirement actor dan use case
No Requirement Actor Use case
1.
2.
3.
4.
5.
Admin melakukan pendataan
login user yaitu admin, siswa
dan guru Sekolah Menengah
Pelita Salatiga.
Admin melakukan pendataan
contact berupa nomor telepon
siswa, guru dan karyawan
Sekolah Menegah Kejuruan
Pelita Salatiga.
Admin dapat melihat data
report yang berisi laporan
pelajaran, laporan profile, dan
laporan comment.
Guru melakukan pendataan
pelajaran dan nilai masing-
masing siswa.
Guru melakukan broadcast
Admin, siswa
dan guru
Admin
Admin dan
siswa
Guru
Manage User
Manage Contact
Manage Report
Manage Pelajaran
5
6.
SMS pada siswa, guru dan
karyawan Sekolah Menengah
Kejuruan Pelita Salatiga.
Guru dan siswa melakukan
diskusi dan tanya jawab
melalui chat room.
Guru
Guru
Manage SMS
Chat Room
3. Component Design adalah suatu aktifitas mendesain seluruh komponen yang
dibutuhkan oleh sistem. Hasil dari aktifitas ini adalah spesifikasi dari
komponen. Tabel 3 Komponen Hardware
Komponen Spesifikasi
Processor Intel(R) Core(TM) i3-2310M CPU @2.30 GHz
Harddisk 500 GB
RAM 2 GB
Modem Huawei
Tabel 4 Komponen Software
Komponen Spesifikasi
Operating System Microsoft Windows 7 Ultimate
Web Server Apache
Script HTML, PHP, XML dan Java script
Web Browser Mozilla
Tools Editor Notepad ++
Database MySQL
UML Designer Rational Rose Enterpreise Edition
4. Persistence Design adalah suatu aktifitas mendesain seluruh transient object
untuk menjadi persistence object ketika proses komputasi berlangsung. Hasil
dari aktifitas ini adalah spesifikasi dari persistensi (specification of
persistence).
header
menu
menu
content
content
footer
Gambar 2 Persistensi Halaman Awal
6
header
login username
password
admin
guru
siswa
content
footer Gambar 3 Persistensi Halaman Login
header
menu
content
content
menu
footer Gambar 4 Persistensi Halaman Utama
5. Architecture Design adalah suatu aktifitas dalam menjabarkan keseluruhan
sistem dan hubungan antar komponen-komponen dari sistem dan
interaksinya. Hasil dari aktifitas ini adalah spesifikasi dari arsitektur.
Gambar 5 Desain Arsitektur Sistem
7
Perancangan proses pada penelitian ini dilakukan menggunakan UML
(Unified Modeling Language) dengan beberapa proses. Use case diagram
memperlihatkan himpunan use case dan aktor-aktor (suatu jenis khusus dari
kelas). Use case diagram sangat penting untuk mengorganisasi dan memodelkan
perilaku dari suatu sistem yang dibutuhkan serta diharapkan pengguna [5].
Gambar 6 User Case Diagram
Terdapat tiga pengguna yakni, admin, guru dan siswa. Untuk masuk ke
dalam sistem, pengguna harus login terlebih dahulu. Admin pada sistem ini
merupakan guru laboran pada SMK Pelita Salatiga yang dapat melakukan manage
user, manage report/laporan dan manage contact.
Aktor guru adalah semua guru SMK Pelita Salatiga yang telah diregistrasi
oleh admin, guru dapat melakukan manage nilai, manage SMS dan melakukan
komunikasi dengan siswa. Penggguna terakhir adalah siswa SMK Pelita Salatiga
yang telah diregistrasi oleh admin, siswa dapat melihat data dan nilai siswa dan
melakukan komunikasi antara siswa lain dan guru. Secara umum, use case
diagram untuk sistem ini ditunjukkan pada Gambar 1.
Activity diagram adalah tipe khusus dari diagram state yang
memperlihatkan aliran dari suatu aktifitas ke aktifitas lainnya dari suatu sistem.
Diagram ini terutama penting dalam pemodelan fungsi-fungsi dalam suatu sistem
dan memberi tekanan pada aliran kendali antar objek [5].
Gambar 7 Activity Diagram Sistem
8
Activity diagram sistem terdapat siswa, guru, dan admin Sekolah
Menengah Kejuruan Pelita Salatiga. Siswa pertama memulai dengan melakukan
login dengan memasukan NIS dan password yang telah diregistrasi oleh admin.
Setelah data valid siswa masuk pada menu siswa untuk selanjutnya memilih menu
data siswa dan menu nilai siswa. Untuk nilai siswa sebelumnya telah diinputkan
oleh guru sesuai mata pelajaran dan kelas masing-masing siswa.
Sequence Diagram merupakan diagram interaksi yang menekankan pada
pengiriman pesan (message) dalam suatu waktu tertentu [5].
Gambar 8 Sequence Diagram Admin Insert Data User
Alur pada gambar 8 menjelaskan aktifitas admin untuk melakukan insert
data user. Pertama admin melakukan input data user pada boundary, kemudian
boundary mengirim data input pada controller, yang selanjutnya dengan fungsi
InsertDataUser melakukan penyimpanan data pada entity. Setelah data tersimpan
laporan tambah data akan dikirim kembali ke boundary.
Class diagram memperlihatkan himpunan kelas-kelas, interface,
kolaborasi-kolaborasi serta relasi [5].
Gambar 9 Class Diagram Sistem
9
Class diagram sistem terdiri dari entity class, boundary class dan
controller class. Setiap entity class dapat mengakses controller class dan masing-
masing controller class berelasi dengan boundary class. Terdapat lima entity
dalam class diagram sistem yaitu entity user, nilai, contact, SMS dan pelajaran.
Setiap entity berhubungan langsung dengan controller class yaitu fungsi yang
dilakukan terhadap entity yang merupakan implementasi dari usecase yang telah
dibuat.
Entity user berhubungan dengan manage data user controller, entity nilai
berhubungan dengan manage data nilai controller, entity contact berhubungan
manage data contact controller. Entity SMS berhubungan manage data SMS
controller dan entity pelajaran berhubungan dengan manage data pelajaran
controller. Masing-masing controller berhubungan dengan boundary dengan
nama yang sama. Sebagai contoh ManageDataUser_Controller berhubungan
dengan ManageDataUser_Boundary.
4. Hasil dan Pembahasan
Hasil penelitian merupakan aplikasi sistem informasi akademik berbasis
web menggunakan SMS gateway pada Sekolah Menengah Kejuruan Pelita
Salatiga. Permasalahan yang dihadapi dalam pendataan biodata siswa dan nilai
siswa telah teratasi oleh sistem informasi akademik menggunakan fungsi add
profile siswa yang dilakukan oleh admin dan add nilai siswa yang dilakukan oleh
guru. Pendataan biodata siswa dan nilai siswa terdapat pada halaman report menu
admin.
Gambar 12 Menu Admin Report
Gambar 12 merupakan halaman report menu admin berisi tabel-tabel
laporan data akademik sistem. Terdapat tabel laporan nilai yang berisi NIS, kelas,
mapel (mata pelajaran), nilai, grade dan aksi. Terdapat tabel laporan profile yang
berisi NIS, nama, TTL (tempat, tanggal lahir), jenkel (jenis kelamin), alamat dan
agama.
10
1. <h3>Laporan Nilai</h3>
2. <?php
3. $query = mysql_query("SELECT * FROM nilai order by nama");
4. $total = mysql_num_rows($query);
5. echo "<table border=10>
6. <tr>
7. <th>NIS</th>
8. <th>Kelas</th>
9. <th>Mapel</th>
10. th>Nilai</th> 11. <th>Grade</th> 12. <th>Aksi</th> 13. </tr>"; 14. while ($result = mysql_fetch_array($query)) 15. { 16. echo "<tr><td>$result[nama]</td>"; 17. echo "<td>$result[sem]</td>"; 18. echo "<td>$result[mapel]</td>"; 19. echo "<td>$result[nilai]</td>"; 20. echo "<td>$result[grade]</td>"; 21. echo "<td><font size=2> <i> <a 22. 23. href='hapusnilai.php?nama=".$result['nama']."'> <img src=delete.png
width=25 height=25> </a> </i></td></tr>";
24. } 25. echo "</table>"; 26. echo "<p>Jumlah Total nilai : <b>$total</b>"; 27. ?><br> 28. <h3>Laporan Profile</h3> 29. <?php 30. $query = mysql_query("SELECT * FROM $table2 order by nis"); 31. $total = mysql_num_rows($query); 32. echo "<table border=10> 33. <tr> 34. <th>NIS</th> 35. <th>Nama</th> 36. <th>TTL</th> 37. <th>Jenkel</th> 38. <th>Alamat</th> 39. <th>Agama</th> 40. </tr>";
41. 42. while ($result = mysql_fetch_array($query))
43. {
44. echo "<tr><td>$result[nis]</td>";
45. echo "<td>$result[nama]</td>";
46. echo "<td>$result[ttl]</td>";
47. echo "<td>$result[kelamin]</td>";
48. echo "<td>$result[alamat]</td>";
49. echo "<td>$result[agama]</td></tr>";
50. }
51. echo "</table>";
52. echo "<p>Jumlah Total murid : <b>$total</b>";
53. ?>
Kode Program 5 Halaman Report Admin.
Kode Program 5 merupakan fungsi halaman report admin. Terdapat fungsi
mengambil data nilai siswa dari database dengan pengurutan sesuai nama.
Terdapat fungsi membuat tabel dengan kolom NIS, Kelas, Mapel, Nilai, Grade
dan Aksi. Terdapat fungsi penempatan data nilai dalam kolom-kolom tabel yang
sesuai. Terdapat fungsi hapus nilai dengan kode mengambil fungsi delete pada file
hapusnilai.php.
Permasalahan yang dihadapi dalam diskusi siswa dan guru maupun
sebaliknya telah teratasi oleh sistem informasi akademik menggunakan fungsi
chat room yang dilakukan oleh siswa maupun guru. Fungsi chat room terdapat
pada halaman chat room menu siswa dan halaman chat room menu guru.
Gambar 13 Menu Siswa Chatroom
Gambar 13 merupakan halaman chat room menu siswa berisi fungsi chat
room antara siswa dengan siswa, siswa dengan guru maupun guru dengan guru.
Siswa melakukan login dengan data NIS (Nomor Induk Siswa), guru melakukan
login dengan data username. System otomatis mengambil data login siswa dan
guru dari database.
Implementasi SMS gateway dalam server hosting tidak dapat langsung
diterapkan dibutuhkan integrasi sistem dalam local sever yang telah terpasang
SMS gateway dengan menggunakan Gammu. Format database pada server
hosting harus sama dengan database local server, terdapat juga file php untuk
11
1. <?php
2. include "sms_admin/koneksi/koneksi_hosting.php";
3. header('Content-Type: text/xml');
4. echo "<?xml version='1.0'?>";
5. echo "<outbox>";
6. $query = "SELECT * FROM outbox ORDER BY id";
7. $hasil = mysql_query($query);
8. while ($data = mysql_fetch_array($hasil))
9. {
10. echo "<data>"; 11. echo "<id>".$data['id']."</id>"; 12. echo
"<destination>".$data['DestinationNumber']."</destination>";
13. echo "<sms>".$data['TextDecoded']."</sms>"; 14. echo "</data>"; 15. } 16. echo "</outbox>"; 17. ?>
1. <?php
2. include "sms_admin/koneksi/koneksi.php";
3. $dataxml = simplexml_load_file('http://www.smkpelitasalatiga.com/data.php');
4. foreach($dataxml->data as $data)
5. { $id = $data->id;
6. $destination = $data->destination;
7. $sms = $data->sms;
8. $query = "INSERT INTO outbox (DestinationNumber, TextDecoded) VALUES
('$destination', '$sms')";
9. mysql_query($query);
10. $curlHandle = curl_init(); 11. curl_setopt($curlHandle, CURLOPT_URL,
'http://www.smkpelitasalatiga.com/hapus.php');
12. curl_setopt($curlHandle, CURLOPT_POSTFIELDS, 'id='.$id); 13. curl_setopt($curlHandle, CURLOPT_HEADER, 0); 14. curl_setopt($curlHandle, CURLOPT_RETURNTRANSFER, 1); 15. curl_setopt($curlHandle, CURLOPT_TIMEOUT,30); 16. curl_setopt($curlHandle, CURLOPT_POST, 1); 17. curl_exec($curlHandle); 18. curl_close($curlHandle);}?>
mengambil data SMS dari table outbox server hosting untuk diinputkan pada table
outbox pada database local server.
Kode Program 6 Mengubah Data Outbox ke dalam bentuk XML.
Kode program 6 merupakan fungsi mengubah data outbox dalam server
hosting ke dalam format XML. Terdapat kode pengecekan koneksi database pada
server hosting melalui file koneksi_hosting.php. Terdapat kode pengambilan data
dati table outbox pada database server hosting dengan menggunakan SQL script
SELECT. Data yang diambil diantaranya data ID, data destination number dan
data text decode. Data outbox kemudian ditulis dalam format XML sesuai ID pada
table outbox database server hosting.
Local server dibutuhkan fungsi mengambil data XML pada server hosting
yang telah diambil pada file data.php. Pada pengambilan data ini dibutuhkan
koneksi database dalam local server dan URL website tempat file data.php
berada. Dibutuhkan juga fungsi remote server pada server hosting untuk
menghapus data SMS pada table outbox database server hosting untuk
menghindari data SMS ganda.
Kode Program 7 Membaca Data XML dari Server Hosting
12
1. < <?php 2. include "sms_admin/koneksi/koneksi_hosting.php";
3. $hp = $_POST['hp'];
4. $isi_pesan = $_POST['isi_pesan'];
5. $masuk = mysql_query("insert into outbox
6. (InsertIntoDB,SendingDateTime,DestinationNumber,TextDecoded,SendingTi
7. meOut,DeliveryReport,CreatorID)value(sysdate(),sysdate(),'$hp','$isi_
8. pesan',sysdate(),'yes','system')");
9. if ($masuk){
10. echo "<h4> Pesan Dikirim </h4>";
11. echo "<meta http-equiv='refresh' content='1;
12. url=master.php?module=inbox'>"; 13. } 14. else { 15. echo "<h4> Pesan gagal dikirim </h4>";
16. echo "<meta http-equiv='refresh' content='2;
17. url=master.php?module=inbox'>"; 18. } 19. ?>
Kode program 7 merupakan fungsi mengambil data XML dari table
outbox database server hosting untuk diinputkan pada database local server.
Terdapat kode pengecekan koneksi database pada local server melalui file
koneksi.php. Terdapat fungsi mengambil data XML pada URL tempat file
data.php berada. Data XML yang telah diambil diinputkan pada table outbox
database local server dengan menggunakan SQL script INSERT. Kode remote
server untuk menghapus data SMS pada server hosting menggunakan CURL
dengan memasukan URL tempat file hapus.php.
Permasalahan yang dihadapi dalam penyampaian pengumuman melalui
SMS telah teratasi oleh sistem informasi akademik menggunakan SMS gateway
dengan fungsi compose message yang dilakukan oleh guru. Fungsi compose
message terdapat pada halaman SMS menu guru.
Gambar 14 Menu Guru Compose Message
Terdapat form compose message pada tampilan menu guru. Form compose
message menampilkan item-item membutuhkan pengisian oleh guru yang terdiri
dari Nomer tujuan dan Isi pesan. Pada field Isi pesan dibatasi maximum 160
karakter, apabila lebih akan muncul pemberitahuan “Jumlah Maksimum Karakter
: 160”. Dan berikut ini akan ditunjukkan kode program 8 untuk menampilakan
fungsi compose message.
Kode Program 8 Kode Program Compose Message.
Baris (2) digunakan untuk mengambil konfigurasi database pada file
koneksi_hosting.php. Baris (3) sampai dengan baris (4) digunakan untuk
13
mengambil nilai dari masing_masing field yang telah diinputkan sebelumnya pada
form compose message. Pada baris (5) sampai (8) data akan disimpan dalam
database. Kemudian baris (9) sampai (18) merupakan condition, dimana jika data
berhasil disimpan akan muncul pemberitahuan “Pesan Dikirim”, apabila tidak
maka akan muncul pemberitahuan “Pesan gagal dikirim”.
Permasalahan yang dihadapi dalam penyampaian informasi secara online
telah teratasi oleh sistem informasi akademik menggunakan website pada server
hosting www.smkpelitasalatiga.com. Halaman website yang berisi hal-hal seputar
Sekolah Menengah Kejuruan Pelita Salatiga.
Gambar 15 Halaman Website
Gambar 15 merupakan halaman awal website Sekolah Menengah
Kejuruan Pelita Salatiga. Terdapat foto-foto seputar Sekolah Menengah Kejuruan
Pelita Salatiga dari kegiatan guru, kegiatan luar sekolah, dan kegiatan belajar
mengajar. Terdapat menu-menu berupa Home yang menuju halaman awal
Sekolah Menengah Kejuruan Pelita Salatiga, menu Login yang menuju halaman
login user. Terdapat menu Akademik yang menunjukan visi dan misi Sekolah
Menengah Kejuruan Pelita Salatiga. Menu Fasilitas yang menunjukan kelebihan
fasilitas-fasilitas yang terdapat di Sekolah Menengah Kejuruan Pelita Salatiga
sesuai dengan jurusan akademik. Menu gallery yang menuju halaman gallery
yang berisi foto-foto seputar Sekolah Menengah Kejuruan Pelita Salatiga. Menu
Pendaftaran Online yang berisi form pendaftaran secara online yang dapat
digunakan oleh siswa baru Sekolah Menengah Kejuruan Pelita Salatiga.
Pembahasan penelitian berupa desain arsitektur sistem, konfigurasi
Gammu SMS gateway, tiga tabel utama dalam Gammu SMS gateway, pengujian
blackbox dan pengujian SMS dengan Gammu. Dalam implementasi sistem, dibuat
sebuah arsitektur untuk menjelaskan alur kerja dari aplikasi yang telah dibuat.
Gambar 10 menggambarkan mekanisme sistem dalam melakukan pengiriman dan
penerimaan data pada website maupun SMS gateway.
14
Gambar 10 Arsitektur Sistem
Komponen-komponen dalam arsitektur sistem terdiri dari user yaitu guru
dan siswa SMK Pelita Salatiga, admin yaitu staff tata usaha SMK Pelita Salatiga,
http port 80 sebagai penghubung untuk melakukan request response, web server
menggunakan apache, database server menggunakan MySQL, telepon seluler
user dan telepon seluler admin untuk melakukan send and receive data SMS dan
gammu SMS gateway sebagai penghubung aplikasi dan telepon seluler, gammu
mendukung berbagai macam model telepon seluler dengan berbagai jenis koneksi
dan tipe [6]. SMS Gateway atau dapat disebut SMS Broadcast adalah jenis layanan
SMS yang bersifat satu arah yang dikirim kebanyak nomor tujuan[7]. Alur proses
arsitektur sistem tergantung pada request response user dan admin pada web
server dan database server.
Admin melakukan request pada web server dengan http port 80 sebagai
penghubung untuk melakukan login data admin. Web server melakukan request
data admin pada database server untuk melakukan pengecekan data login. Data
login valid, database server memberikan response pada web server kemudian
diteruskan pada admin bahwa request login data admin sukses. Admin melakukan
request registrasi data user pada web server kemudian web server melakukan
request data user pada database server. Web server melakukan response pada
admin setelah berhasil tersimpan data registrasi user pada database server. User
yang telah terdaftar melakukan request pada web server dengan http port 80
sebagai penghubung untuk melakukan login data user. Web server melakukan
request data user pada database server untuk melakukan pengecekan data login.
Data login valid database server memberikan response pada web server kemudian
diteruskan pada admin bahwa request login data admin sukses.
Proses send and receive data SMS menggunakan gammu SMS gateway
sebagai penghubung database sever dan telepon seluler user. Admin melakukan
request send data SMS pada web server, kemudian web server melakukan request
data SMS pada database server. Web server melakukan response pada admin
15
setelah berhasil tersimpan data SMS pada table outbox database server. Data SMS
pada table outbox akan otomatis dikirim ke telepon seluler user, apabila
pengiriman SMS berhasil data SMS akan tersimpan pada table sent item database
server.
Membangun integrasi SMS gateway dan sistem informasi akademik
dibutuhkan konfigurasi antara database dengan gammu untuk memproses
pengumuman oleh guru. Dalam konfigurasi gammu terdapat beberapa file yang
harus disesuaikan agar terkoneksi dengan database dan modem yang digunakan.
File tersebut diantaranya gammurc digunakan untuk koneksi dengan
modem, kemudian SMSdrc untuk konfigurasi dengan database. Setelah semua file
terkoneksi dibutuhkan instalasi service agar Gammu dapat berjalan secara
otomatis. Agar Gammu dapat mengidentifikasi modem yang terhubung dengan
komputer, perlu dilakukan konfigurasi file gammurc sebagai berikut.
Kode Program 1 Konfigurasi file gammurc [gammu]
port = com7:
connection = at115200
Perintah pada Kode Program 1 digunakan untuk menghubungkan Gammu
ke modem menggunakan port = com7; dengan setting koneksi at115200. Untuk
melakukan uji koneksi modem yang sudah terpasang dengan PC, digunakan
perintah seperti pada Kode Program 2
Kode Program 2 Identifikasi Modem C:\xampp\htdocs\Gammu\bin>gammu identify
Hasil yang akan ditampilkan dari perintah pada Kode Program 2 akan
menampilkan identitas modem seperti pada Gambar 11.
Gambar 11 Hasil Identifikasi
Gammu membutuhkan sebuah database sebagai penyimpanan setiap data
SMS masuk maupun sebagai pengiriman data SMS, perlu dilakukan konfigurasi
file SMSdrc pada Kode Program 3.
Kode Program 3 Konfigurasi File SMSdrc
[gammu]
port = com7:
connection = at115200
service = sql
driver = native_mysql
user = root
password =
pc = localhost
database = sms
Pada Kode Program 3 menunjukkan konfigurasi file SMSdrc agar Gammu
dapat terkoneksi dengan database MySQL yang digunakan pada aplikasi ini.
16
Setelah konfigurasi dengan database selesai, langkah selanjunya adalah membuat
Gammu service.
Kode Program 4 Instal Gammu Service C:\xampp\htdocs\Gammu\bin>gammu-smsd -c smsdrc -i
Pada kode program 4 bertujuan untuk membuat service Gammu di
Windows. Dengan dibuatnya service pada Windows Gammu bisa lebih mudah
dijalankan tanpa menggunakan perintah tertentu di command prompt.
Database Gammu terdapat beberapa tabel, tetapi dalam proses pengiriman
dan penerimaan SMS membutuhkan tiga tabel utama yaitu tabel inbox, tabel
outbox dan tabel sent item.
Tabel 5 Struktur Tabel Inbox
Field Type Null Default
UpdatedInDB Timestamp No CURRENT_TI
MESTAMP
ReceivingDateTime Timestamp No 0000-00-00
00:00:00
Text Text No
SenderNumber varchar(20) No
Coding enum('Default_No_Compression'
, 'Unicode_No_Compression',
'8bit', 'Default_Compression',
'Unicode_Compression')
No Default_No_C
ompression
UDH Text No
SMSCNumber varchar(20) No
Class int(11) No -1
TextDecoded Text No
ID int(10) No
RecipientID Text No
Processed enum('false', 'true') No false
Tabel inbox merupakan tempat data SMS masuk yang diterima modem.
Struktur tabel inbox mempunyai dua belas kolom, kolom utama yang dibutuhkan
aplikasi yaitu kolom ReceivingDateTime sebagai penanda waktu diterima SMS,
kolom SenderNumber sebagai nomor pengirim SMS dan kolom TextDecoded
sebagai isi SMS.
Tabel 6 Struktur Tabel Outbox
Field Type Null Default
UpdatedInDB Timestamp No CURRENT_TI
MESTAMP
InsertIntoDB Timestamp No 0000-00-00
00:00:00
SendingDateTime Timestamp No 0000-00-00
00:00:00
SendBefore Time No 23:59:59
17
SendAfter Time No 00:00:00
Text Text Yes NULL
DestinationNumber varchar(20) No
Coding enum('Default_No_Compression',
'Unicode_No_Compression',
'8bit', 'Default_Compression',
'Unicode_Compression')
No Default_No_C
ompression
UDH text Yes NULL
Class int(11) Yes -1
TextDecoded text No
ID int(10) No
MultiPart enum('false', 'true') Yes false
RelativeValidity int(11) Yes -1
SenderID varchar(255) Yes NULL
SendingTimeOut timestamp Yes 0000-00-00
00:00:00
DeliveryReport enum('default', 'yes', 'no') Yes default
CreatorID text No
Tabel outbox merupakan tempat data SMS yang dikirim aplikasi. Struktur
tabel inbox mempunyai delapan belas kolom, kolom utama yang dibutuhkan
aplikasi yaitu kolom SendingDateTime sebagai penanda waktu pengiriman SMS,
kolom DestinationNumber sebagai nomor penerima SMS dan kolom TextDecoded
sebagai isi SMS.
Tabel 7 Struktur Tabel Sent Item
Field Type Null Default
UpdatedInDB timestamp No CURRENT_TI
MESTAMP
InsertIntoDB timestamp No 0000-00-00
00:00:00
SendingDateTime timestamp No 0000-00-00
00:00:00
DeliveryDateTime timestamp Yes NULL
Text text No
DestinationNumber varchar(20) No
Coding enum('Default_No_Compression',
'Unicode_No_Compression',
'8bit', 'Default_Compression',
'Unicode_Compression')
No Default_No_Co
mpression
UDH Text No
SMSCNumber varchar(20) No
Class int(11) No -1
TextDecoded Text No
ID int(10) No 0
SenderID varchar(255) No
SequencePosition int(11) No 1
18
Status enum('SendingOK',
'SendingOKNoReport',
'SendingError', 'DeliveryOK',
'DeliveryFailed',
'DeliveryPending',
'DeliveryUnknown', 'Error')
No SendingOK
StatusError int(11) No -1
TPMR int(11) No -1
RelativeValidity int(11) No -1
CreatorID Text No
Tabel sent item merupakan tempat data SMS yang telah dikirim aplikasi.
Struktur tabel inbox mempunyai delapan belas kolom, kolom utama yang
dibutuhkan aplikasi yaitu kolom SendingDateTime sebagai penanda waktu
pengiriman SMS, kolom DestinationNumber sebagai nomor penerima SMS, kolom
TextDecoded sebagai isi SMS dan kolom status sebagai penanda keberhasilan
pengiriman SMS.
Pengujian sistem menggunakan blackbox testing.Pengujian ini dilakukan
untuk mengetahui seberapa baik aplikasi yang dibuat.
Tabel 8 Hasil Blackbox Testing
2.
Manage nilai
Insert
Menginputkan data
nilai kemudian
menekan tombol
register.
Sistem menerima data
nilai kemudian data
diinputkan dalam
database.
Ok
3. Manage
chatroom
Insert
Menginputkan data
chatroom kemudian
menekan tombol
kirim.
Sistem menerima data
chatroom kemudian data
diinputkan dalam
database.
Ok
4. Manage SMS
Insert
Menginputkan data
SMS kemudian
menekan tombol
kirim pesan.
Sistem menerima data
SMS kemudian data
diinputkan dalam table
outbox database.
Ok
5. Manage nilai
View
Melihat data nilai
dengan menekan
Sistem menampilkan
semua data nilai dari
Ok
No. Fungsi Pengujian Hasil yang diharapkan Hasil
1. Manage user
Insert
Menginputkan data
user kemudian
menekan tombol
register.
Sistem menerima data
user kemudian data
diinputkan dalam
database.
Ok
19
tombol nilai. database.
6. Manage report
View profile
View
comment
Melihat data profile
user dengan
menekan tombol
profile.
Melihat data
comment dengan
menekan tombol
comment.
Sistem menampilkan
semua data profile user
dari database.
Sistem menampilkan
semua data comment
dari database.
Ok
Ok
Pengujian hasil pengiriman SMS oleh Gammu SMS Gateway dilakukan
untuk mengetahui kecepatan pengiriman SMS dan keberhasilan pengiriman SMS.
Tabel 9 Hasil Pengujian SMS dengan Gammu
Jumlah
SMS
Waktu
broadcast SMS
Waktu Terkirim
SMS
Status
1 17:03:07 17:03:14 SendingOKNoReport
2 17:03:07 17:03:20 SendingOKNoReport
3 17:03:07 17:03:26 SendingOKNoReport
4 17:03:07 17:03:34 SendingOKNoReport
5 17:03:07 17:03:41 SendingOKNoReport
6 17:03:07 17:03:47 SendingOKNoReport
7 17:03:07 17:03:53 SendingOKNoReport
8 17:03:07 17:04:00 SendingOKNoReport
9 17:03:07 17:04:06 SendingOKNoReport
10 17:03:07 17:04:12 SendingOKNoReport
11 17:03:07 17:04:18 SendingOKNoReport
12 17:03:07 17:04:25 SendingOKNoReport
13 17:03:07 17:04:31 SendingOKNoReport
14 17:03:07 17:04:37 SendingOKNoReport
15 17:03:07 17:04:44 SendingOKNoReport
16 17:03:07 17:04:50 SendingOKNoReport
17 17:03:07 17:04:58 SendingOKNoReport
18 17:03:07 17:05:04 SendingOKNoReport
19 17:03:07 17:05:10 SendingOKNoReport
20 17:03:07 17:05:16 SendingOKNoReport
21 17:03:07 17:05:23 SendingOKNoReport
22 17:03:07 17:05:29 SendingOKNoReport
23 17:03:07 17:05:35 SendingOKNoReport
24 17:03:07 17:05:41 SendingOKNoReport
25 17:03:07 17:05:47 SendingOKNoReport
26 17:03:07 17:05:53 SendingOKNoReport
27 17:03:07 17:05:59 SendingOKNoReport
28 17:03:07 17:06:05 SendingOKNoReport
20
29 17:03:07 17:06:11 SendingOKNoReport
30 17:03:07 17:06:19 SendingOKNoReport
Pengujian pengiriman SMS oleh Gammu SMS Gateway dilakukan dengan
mengirim broadcast SMS secara bersamaan pada pukul 17:03:07 sebanyak 30
SMS dan selesai pada pukul 17:06:19 dengan status semua data SMS terkirim
dengan baik. Sehingga untuk pengiriman sebanyak 30 SMS memerlukan waktu 3
menit 12 detik.
5. Simpulan
Dari analisis dan perancangan sistem, dapat dikemukakan kesimpulan-
kesimpulan sebagai berikut, 1) Aplikasi sistem informasi akademik ini mencakup
pengelolaan dan penyimpanan data siswa maupun guru dapat berjalan dengan
baik. 2) Aplikasi sistem informasi akademik ini dapat mengurangi usaha yang
dilakukan siswa dalam melakukan bimbingan belajar karena merupakan tempat
diskusi antara siswa dan guru. 3) Aplikasi sistem informasi akademik ini mampu
menyampaikan informasi berupa kegiatan maupun pengumunan secara online
dapat berjalan dengan baik. 4) Penggunaan metode OOAD sebagai metode
pengembangan sistem dapat berfungsi secara baik. 5) Penggunan SMS gateway
sebagai media penyampaian informasi melalui SMS pada telepon seluler siswa
maupun guru berjalan dengan baik. Berdasarkan kesimpulan-kesimpulan tersebut
maka tujuan penelitian untuk mempermudah penyampaian dan pengelolaan
informasi akademik pada Sekolah Menengah Kejuruan Pelita Salatiga baik
melalui website ataupun SMS tercapai.
6. Daftar Pustaka
[1] Efendi, andriansyah, 2006, Pengembangan Sistem Informasi Akademik
Berbasis SMS pada Fakultas Teknik Universitas Bengkulu,
http://journal.uii.ac.id/index.php/. Diakses tanggal 13 Februari 2015.
[2] Amborowati, 2009, Aplikasi Sistem Quick Count (Si-Q-Cup) Pilkada
Pemilihan Kepala Daerah Studi Kasus Pilkada Provinsi DIY,
http://p3m.amikom.ac.id. Diakses tanggal 24 Februari 2015. [3] Shintya, Deviana, 2013, Pemodelan Integrasi Data Penerimaan Siswa Baru
Sekolah Menengah Pertama (SMP) Berbasis XML Web Service, Salatiga:
Universitas Kristen Satya Wacana. [4] Fransiska, S.Kom, Detra dkk, 2012, Sistem Informasi Persediaan Barang
Pada PT. Daya Maha Berkarya Palembang Menggunakan Metode FIFO,
Palembang: Sistem Informasi, Fakultas Komputer, Universitas Bina Darma.
[5] Prastuti, Sulistyorini, 2009, Pemodelan Visual dengan Menggunakan UML
dan Rational Rose, Pekalongan : STMIK Widya Pratama Pekalongan.
[6] Gammu, 2009, http://www.gammu.org. Diakses tanggal 22 Februari 2015. [7] Mukhlady, 2007, SMS Gateway menggunakan Gammu,
http://ilmukomputer.org/wp-content/uploads/2007/09/acho-smsgammu.pdf.
Diakses tangaal 23 Februari 2015.