a. Uraikan SMS berdasarkan spasi dan masukkan ke dalam array, sehingga elemen ke-2 adalah NIM , elemen ke-3 adalah kode mata
kuliah b. Periksa NIM dan password ke dalam database
c. Jika NIM dan password benar, uraikan elemen ke-3 berdasarkan tanda pagar sehingga diperoleh kode mata kuliah yang ingin diganti dan kode
mata kuliah pengganti d. Periksa apakah kode mata kuliah pengganti boleh diambil atau tidak.
Jika tidak mata kuliah pengga nti tidak boleh diambil, kirim SMS balasan berupa pesan kesalahan
e. Jika NIM dan password salah, kirim balasan berupa pesan kesalahan login
4. Proses Panduan Proses ini bertujuan untuk memberikan panduan tentang format SMS yang
benar. Misalnya jika pengguna pengirim pesan “PAN KRS”, maka sistem akan mengirimkan SMS balasan berupa tata cara pengisian KRS
5. Proses Informasi mata kuliah Proses ini bertujuan untuk memberikan informasi tentang sebuah mata kuliah.
Format layanan ini adalah : infomkspasikode mata kuliah
3.4 Perancangan Pangkalan Data
Aplikasi yang akan dibuat, baik yang berbasis web, maupun yang berbasis SMS, menggunakan pangkalan data yang sama,sehingga ketika perubahan data KRS
dilakukan lewat SMS akan dapat langsung dilihat lewat web. Namun aplikasi berbasis SMS mempunyai pangkalan data tambahan yang mempunyai fungsi sebagai berikut :
1. Sebagai tempat penyimpanan SMS balasan sementara sebelum dikirim 2. Sebagai tempat penyimpanan SMS yang masuk sehingga memory kartu SIM
tidak akan penuh
Universitas Sumatera Utara
Struktur Tabel Mahasiswa
Pada tahap perancangan ini, tabel mahasiswa yang berguna untuk menyimpan data
mahasiswa dan diberi nama tblmhs. Field atau kolom yang dibuat hanya kolom yang
penting-penting saja, sedangkan kolom-kolom lainnya seperti nama ayah, nama ibu, tidak dimasukkan kedalam desain database dan strukturnya adalah sebagai berikut :
Tabel 3.1 Struktur Tabel Mahasiswa tblmhs
Field Type
Keterangan NIM
varchar9 NIM
Nama varchar30
Nama lengkap password
varchar20 Password
semester varchar4
Semester yang dijalani DosenID
char3 Kode Dosen wali
kelas char1
Kelas Alamat
varchar60 Alamat Mahasiswa
tempatlahir varchar30
Tempat lahir tgllahir
Date Tanggal lahir
Telepon varchar14
Nomor telepon Jk
Enum “L”,”P” Jenis kelamin
Struktur Tabel Mata Kuliah
Tabel untuk menyimpan kode mata kuliah diberi nama tblmk, dan mempunyai
struktur sebagai berikut :
Tabel 3.2 Struktur Tabel Mata Kuliah tblmk
Field Type
Keterangan Varchar6
KodeMK Kode Mata Kuliah
NamaMK Varchar40
Nama Mata Kuliah
Universitas Sumatera Utara
Field Type
Keterangan SKS
int1 Beban SKS
semester Char3
Semester DosenID
Char3 Dosen kelas A
DosenID2 Char3
Dosen kelas B
Struktur Tabel Dosen
Tabel untuk menyimpan data dosen diberi nama tbldosen, namun field-field yang
dirancang hanya field yang berhubungan dengan proses pengisian KRS dan KHS saja, sedangkan field untuk data pribadi seperti tempat tanggal lahir, nomor telepon, nama
ibu, tidak disertakan karena data tersebut bersifat rahasia. Struktur tabel dosen dapat dilihat pada tabel di bawah ini :
Tabel 3.3 Struktur Tabel Dosen tbldosen
Field Type
Keterangan KodeDosen
varchar6 Kode Dosen
NamaDosen varchar40
Nama Lengkap Alamat
Varchar50 Alamat
Int9 NIP
NIM Password
varchar20 Password
Struktur Tabel KRS dan KHS
Tabel untuk KRS dan KHS menggunakan tabel yang sama dan diberi nama tblkrs.
Tabel tersebut mempunyai struktur sebagai berikut :
Universitas Sumatera Utara
Tabel 3.4 Struktur Tabel untuk KRS dan KHS tblkrs
Field Type
Keterangan Int8
Id Nomor urut data
NIM varchar9
NIM mahasiswa KodeMK
Varchar6 Kode Mata Kuliah yang dimbil
Nilai Char2
Nilai yang diperoleh Tahun ajaran
varchar16 Tahun ajaran mata kuliah diambil
Kelas Char1
Kelas
Untuk membuat laporan KHS, sistem akan mengambil data berdasarkan field
tahunajaran. Misalnya jika mahasiswa 031401060 ingin melihat nilai KHS semester
ganjil 20052006, maka query yang dilakukan adalah: “select from tblkrs where NIM=’031401060’
and tahunajaran=’ganjil 20052006’ ”
Dalam proses pengisian KRS, aplikasi akan melakukan query insert penyisipan setelah terlebih dahulu dilakukan diperiksa apakah mata kuliah tersebut
boleh diambil atau tidak. Misalnya jika mahasiswa 031401060 mengambil mata kuliah KTL311, KTB414, KLC411, maka akan dilakukan 3 kali query insert.
Struktur Tabel Semester
Tabel semester berguna untuk menyimpan data semester I sampai dengan VIII. Tabel
ini diberi nama tblsemester dan mempunyai struktur sebagai berikut :
Tabel 3.5 Struktur Tabel Semester tblsemester
Field Type
Keterangan Char4
Semester Semester I s.d VIII
ganjilgenap Int1
0=genap, 1=ganjil
Universitas Sumatera Utara
Nilai 0 nol pada field ganjilgenap menandakan bahwa semester tersebut adalah semester genap, dan nilai 1 menandakan semester ganjil. Tabel ini sangat penting
untuk memastikan bahwa mata kuliah semester ganjil hanya boleh diambil di semester ganjil saja kecuali tugas akhir. Misalnya, pada saat tugas akhir ini disusun
semester genap 20062007 mahasiswa 031401060 mengambil mata kuliah KTD106 yaitu mata kuliah Pengantar Teknologi Informasi yang dijadwalkan pada semester III.
Hal ini tentunya tidak diizinkan karena mata kuliah KTD106 ini hanya boleh diambil pada semester ganjil saja. Untuk melakukan proses pengecekan ini, aplikasi akan
melakukan query sebagai berikut : “select tblsemester.ganjilgenap
from tblmk,tblsemester where
tblmk.semester=tblsemester.semester and
tblmk.KodeMK=KTD106 and
tblsemester.ganjilgenap=0
“. Query ini tidak akan mengembalikan sebuah row seperti yang terlihat pada gambar 3.9.
Gambar 3.9 Tampilan Query Pengecekan Semester untuk Mata Kuliah KTD106
Namun jika mata kuliah yang diambil adalah KTK 213 yaitu mata kuliah Jaringan Komputer yang dijadwalkan pada semester IV, maka query akan
mengembalikan sebuah row seperti yang terlihat pada gambar di bawah ini :
Gambar 3.10 Tampilan Query Pengecekan Semester Mata Kuliah KTK213
Universitas Sumatera Utara
Struktur Tabel Konfigurasi
Tabel ini bertujuan untuk menyimpan data konfigurasi seperti semester saat ini, dan batas akhir pengisian KRS. Tabel ini hanya boleh diupdate oleh administrator
aplikasi. Tabel ini diberi nama config dengan struktur sebagai berikut :
Tabel 3.6 Struktur Tabel Konfigurasi config
Field Type
Keterangan varchar16
Tahunjaran Semester I s.d VIII
Batas date
Batas akhir pengisian KRS
Struktur Tabel Administrator
Tabel ini bertujuan untuk menyimpan data administrator yang mempunyai hak akses
ke dalam halaman administrator. Tabel ini diberi nama admin dengan struktur
sebagai berikut :
Tabel 3.7 Struktur Tabel Administrator admin
Field Type
Keterangan Int11
Id Nomor urut
NamaAdmin Varchar20
Nama lengkap administrator User
Varchar10 User untuk login
Password Varchar10
Password untuk login
Struktur Tabel Session
Tabel ini bertujuan untuk menyimpan data session pengguna yang sedang login. Tabel ini menjaga agar tidak data tidak bisa injeksi dari pengguna yang lain dan juga untuk
menghitung lama waktu login. Jika pengguna login lebih dari 1 jam, maka dengan sendirinya sistem akan meminta untuk login kembali, dan jika pengguna lupa log-out,
maka dengan sessionnya akan kadaluarsa dengan sendirinya setelah 1 jam, sehingga
Universitas Sumatera Utara
sessionnya tidak akan bisa digunakan oleh orang yang tidak bertanggung jawab. Tabel
ini diberi nama tblsession dengan struktur sebagai berikut :
Tabel 3.8 Struktur Tabel Session tblsession
Field Type
Keterangan Int11
Session Session
User Varchar20
NIM pengguna Tanggal
datetime Waktu saat pengguna login
NIP varchar15
Untuk menyimpan NIP untuk dosen yang login
Nilai session diletakkan pada parameter URL setiap kali pengguna mengakses halaman-halaman aplikasi. Dan setiap kali halaman-halaman tersebut dibuka, maka
aplikasi terlebih dahulu akan melakukan pengecekan apakah nilai session yang dibawa oleh parameter URL tersebut sudah terdaftar pada tabel tblsession atau tidak.
Jika sudah terdaftar, maka pengguna diizinkan untuk membuka halaman yang akan diakses tadi. Namun jika ternyata tidak terdaftar, maka pengguna akan dialihkan ke
halaman login.
3.5 Diagram Pangkalan Data