commit to user 20
3.4. Schema Diagram
Schema Diagram menggambarkan relasi antar tabel yang ada dalam Sistem Informasi Registrasi dan SMS Reminder. Relationship Diagram
digambarkan pada Gambar 3.8.
pendonor
PK IDPendonor
NamaPendonor Sex
FK1 IDGol
TempatLahir TglLahir
Alamat Telp
Agama Pekerjaan
tglDaftar goldarah
PK IDGol
GolDarah Rhesus
penghargaan
PK KodeAward
JenisAward JmlAward
sms
PK KodeFormat
Format award
PK no
FK2 IDPendonor
FK1 KodeAward
donordarah
PK KodeDonor
FK1 IDPendonor
tglDonor message
PK no_message
FK1 IDPendonor
FK2 KodeFormat
tglTerima login
PK no_log
Username Password
Gambar 3.8. Schema Diagram
3.5. Rancangan Database
Membuat sebuah database dengan nama smsd dengan 17 tabel dimana 9 tabel berasal dari tabel default Gammu dan 8 tabel merupakan tabel utama
sistem. Berikut adalah tabel yang telah disediakan Gammu sebagai sistem SMS
Gateway. 1. Tabel daemons
Tabel daemons adalah tabel yang dipakai oleh SMS Gateway sebagai SMS Service. Isi field dari tabel daemons digambarkan pada Tabel 3.1.
commit to user 21
Tabel 3.1. Tabel Daemons Nama Field
Tipe Data Keterangan
Start Text
Info Text
2. Tabel gammu Tabel gammu adalah tabel yang menyimpan informasi tentang versi
Gammu. Isi field dari tabel gammu digambarkan pada Tabel 3.2. Tabel 3.2. Tabel Gammu
Nama Field Tipe Data
Keterangan Version
Tinyint4 Berisi versi gammu
3. Tabel inbox Tabel inbox adalah tabel yang digunakan untuk menyimpan informasi SMS
yang diterima dari SMSC. Isi field dari tabel inbox digambarkan pada Tabel 3.3.
Tabel 3.3. Tabel Inbox Nama Field
Tipe Data Keterangan
UpdatedInDB Timestamp
Menyimpan informasi waktu input data
ReceivingDateTime Timestamp
Informasi waktu penerimaan SMS
Text Text
Isi SMS dalam format PDU SenderNumber
Varchar20 Informasi nomor pengirim
SMS Coding
Enum Tipe Encoding
UDH Text
SMSCNumber Varchar20
Nomor SMSCenter
commit to user 22
Class Int11
TextDecoded Varchar160 Isi SMS dalam format yang
dibaca ID
int11 ID SMS dalam inbox
RecipientID Text
ID penerima Processed
Enum
4. Tabel outbox Tabel outbox adalah tabel yang selalu dicek oleh SMS Gateway. Jika ada
record baru pada tabel ini, maka akan diambil dan dikirim sebagai SMS dan data SMS tersebut dipindahkan ke tabel sentitems. Isi field dari tabel outbox
digambarkan pada Tabel 3.4. Tabel 3.4. Tabel Outbox
Nama Field Tipe Data
Keterangan UpdatedInDB
Timestamp Menyimpan informasi waktu
input data InsertIntoDB
Timestamp Memasukkan
informasi waktu input data
SendingDateTime Timestamp
Informasi waktu pengiriman Text
Text Isi SMS dalam format PDU
DestinationNumber Varchar20
Nomor tujuan pengiriman Coding
Enum Tipe Encoding
UDH Text
Class Int11
TextDecoded text
Isi SMS dalam format yang dibaca
ID int11
Kunci primer dalam tabel outbox
commit to user 23
MultiPart Enum
RelativeValidity Int11
Validasi pesan SenderID
Text SendingTimeOut
Timestamp DeliveryReport
Enum Laporan pengiriman
CreatorID Text
5. Tabel outbox_multipart Tabel outbox_multipart adalah tabel yang memuat informasi tentang bagian
dari SMS yang lain. Tabel ini akan terisi record baru jika terjadi sebuah pengiriman SMS dibagi menjadi dua bagian karena melebihi kuota karakter
per SMS. Isi field dari tabel outbox_multipart digambarkan pada Tabel 3.5. Tabel 3.5. Tabel Outbox_multipart
Nama Field Tipe Data
Keterangan Text
Text Isi SMS dalam format PDU
Coding Enum
Tipe Encoding UDH
Text Class
Int11 TextDecoded
text Isi SMS dalam format yang
dibaca ID
int11 ID SMS
SequencePosition Text
Nomor urut antrian SMS
6. Tabel pbk Tabel pbk adalah tabel yang berisi nomor telepon dan nama seperti halnya
pada phonebook pada sebuah handphone. Isi field dari tabel pbk digambarkan pada Tabel 3.6.
commit to user 24
Tabel 3.6. Tabel Pbk Nama Field
Tipe Data Keterangan
GroupID Int11
ID grup Name
Text Nama user
Number Text
Nomor telepon user
7. Tabel pbk_groups Tabel pbk_groups adalah tabel yang berisi nama-nama yang telah
dimasukkan dalam sebuah grup telepon. Isi field dari tabel pbk_groups digambarkan pada Tabel 3.7.
Tabel 3.7. Tabel Pbk_groups Nama Field
Tipe Data Keterangan
Name Text
Nama user ID
Int11 ID grup yang dibuat
8. Tabel phones Tabel ini menyimpan tentang informasi handphone modem yang dipakai.
Tabel ini akan diinputkan gammu pada saat daemon dijalankan. Isi field dari tabel phones digambarkan pada Tabel 3.8.
Tabel 3.8. Tabel Phones Nama Field
Tipe Data Keterangan
ID Text
ID Hardware UpdatedInDB
Timestamp Menyimpan informasi waktu
input data InsertIntoDB
Timestamp Memasukkan informasi waktu
input data TimeOut
Timestamp Waktu maksimal melakukan
koneksi sebelum memberikan
commit to user 25
laporan status koneksi Send
Enum Nilai enum Yes menyatakan
device untuk
mengirimkan SMS dan No jika device tidak
untuk mengirimkan SMS Receive
Enum Nilai enum Yes jika digunakan
untuk menerima dan No jika tidak untuk menerima SMS
IMEI Text
Informasi IMEI handphone modem
Client Text
Informasi sistem
operasi tempat
SMS Gateway
dijalankan
9. Tabel sentitems Tabel sentitems adalah tempat tampungnya semua SMS yang telah dikirim.
Isi field dari tabel sentitems digambarkan pada Tabel 3.9. Tabel 3.9. Tabel Sentitems
Nama Field Tipe Data
Keterangan UpdatedInDB
Timestamp Menyimpan informasi waktu
input data InsertIntoDB
Timestamp Memasukkan
informasi waktu input data
SendingDateTime Timestamp
Informasi waktu pengiriman DeliveryDateTime
Timestamp Informasi waktu terkirim
Text Text
Isi SMS dalam format PDU DestinationNumber
Varchar20 Nomor tujuan pengiriman
Coding Enum
Tipe Encoding
commit to user 26
UDH Text
SMSCNumber Varchar20
Class Int11
TextDecoded Text
Isi SMS dalam format yang dibaca
ID int11
ID SMS SenderID
Text ID pengirim
SequencePosition Timestamp
Nomor urut SMS Status
Enum Status pengiriman SMS
StatusError Int11
Status error bila terjadi kesalahan
TPMR Int11
RelativeValidity Int11
Validasi pesan CreatorID
Text
Berikut adalah tabel utama Sistem Informasi Registry and SMS Reminder.
1. Tabel login Tabel login berisi data username dan password yang digunakan admin untuk
melakukan login dalam sistem. Isi field dari tabel login digambarkan pada Tabel 3.10.
Tabel 3.10. Tabel Login Nama Field
Tipe Data Keterangan
no_log int
Auto increment primary key username
Varchar8 Username untuk admin
password Varchar8
Password untuk admin
commit to user 27
2. Tabel pendonor Tabel pendonor berisi data-data pendonor yang diperlukan untuk proses
registrasi dan pengiriman SMS. Isi field dari tabel pendonor digambarkan pada Tabel 3.11.
Tabel 3.11. Tabel Pendonor Nama Field
Tipe Data Keterangan
IDPendonor Varchar8
ID dari tiap pendonor NamaPendonor
Varchar25 Nama pendonor
Sex Varchar10
Jenis kelamin pendonor IDGol
Varchar1 ID Golongan darah yang
ditetapkan TempatLahir
Varchar15 Tempat lahir pendonor
TglLahir Date
Tanggal lahir pendonor Alamat
Varchar50 Alamat pendonor
Telp Varchar15
Nomor telepon pendonor Agama
Varchar10 Agama pendonor
Pekerjaan Varchar15
Pekerjaan pendonor tglDaftar
Date Waktu pendonor mendaftar
3. Tabel goldarah Tabel goldarah berisi tentang data-data jenis golongan darah dengan rhesus
nya. Isi field dari tabel goldarah digambarkan pada Tabel 3.12. Tabel 3.12. Tabel Goldarah
Nama Field Tipe Data
Keterangan IDGol
Varchar1 ID
Golongan darah
yang ditetapkan
GolDarah Varchar2
Golongan darah
commit to user 28
Rhesus Varchar1
Rhesus golongan darah 4. Tabel donordarah
Tabel donordarah berisi tentang data-data waktu pendonor telah melakukan kegiatan donor. Isi field dari tabel donordarah digambarkan pada Tabel 3.13.
Tabel 3.13. Tabel Donordarah Nama Field
Tipe Data Keterangan
KodeDonor Int11
Kode saat mendonorkan darah IDPendonor
Varchar8 ID pendonor
tglDonor Date
Tanggal mendonor
5. Tabel sms Tabel sms berisi tentang data-data berupa format SMS yang akan dikirimkan
kepada pendonor. Isi field dari tabel sms digambarkan pada Tabel 3.14. Tabel 3.14. Tabel Sms
Nama Field Tipe Data
Keterangan KodeFormat
Int11 Kode format yang dimasukkan
sebagai format SMS Jenis
Varchar25 Jenis format
Tanggal Date
Tanggal membuat format Format
Varchar160 Isi format SMS
6. Tabel penghargaan Tabel penghargaan berisi data-data jenis penghargaan dan angka sebagai
syarat untuk mendapatkan penghargaan. Isi field dari tabel penghargaan digambarkan pada Tabel 3.15.
Tabel 3.15. Tabel Penghargaan Nama Field
Tipe Data Keterangan
KodeAward Int11
Kode award yang diisikan
commit to user 29
JenisAward Varchar50
Jenis penghargaan
yang diberikan
JmlAward Int11
Angka kumulatif dari kegiatan donor
7. Tabel award Tabel award berisi tentang data-data pendonor yang mendapatkan
penghargaan. Isi field dari tabel mendapat digambarkan pada Tabel 3.16. Tabel 3.16. Tabel Award
Nama Field Tipe Data
Keterangan no
int Auto increment primary key
IDPendonor Varchar8
ID pendonor KodeAward
Int11 Kode
award pada
tabel penghargaan
tglTerima Date
Tanggal terima penghargaan
8. Tabel message Tabel message berisi data-data pendonor yang mendapatkan SMS sesuai
dengan format yang telah ditentukan. Isi field dari tabel menerima digambarkan pada Tabel 3.17.
Tabel 3.17. Tabel Message Nama Field
Tipe Data Keterangan
no_message int
Auto increment primary key IDPendonor
Varchar8 ID pendonor
KodeFormat Int11
Kode format pada tabel sms tglKirim
Date Tanggal sms dikirim
commit to user 30
3.6. Rancangan Desain Interface