Anda di halaman 1dari 249

Pengembangan Aplikasi SMS Reminder

dalam Kalender Akademik UIN Syarif Hidyatullah Jakarta


Studi Kasus : Pusat Komunikasi (PUSKOM)
UIN Syarif Hidyatullah Jakarta
Skripsi
Sebagai Salah Satu Syarat untuk Memperoleh Gelar
Sarjana Komputer
Fakultas Sains dan Teknologi
Universitas Islam Negeri Syarif Hidayatullah Jakarta

Oleh :
Muhammad Akmal
106091002949

PROGRAM STUDI TEKNIK INFORMATIKA


FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH
JAKARTA
2011 M/ 1432 H

Pengembangan Aplikasi SMS Reminder


dalam Kalender Akademik UIN Syarif Hidyatullah
Jakarta

Skripsi
Sebagai Salah Satu Syarat untuk Memperoleh Gelar
Sarjana Komputer
Fakultas Sains dan Teknologi
Universitas Islam Negeri Syarif Hidayatullah Jakarta

Oleh :
Muhammad Akmal
106091002949

PROGRAM STUDI TEKNIK INFORMATIKA


FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH
JAKARTA
2011 M/ 1432 H
ii

Pengambangan Aplikasi SMS Reminder


dalam Kalender Akademik UIN Syarif Hidyatullah Jakarta
Studi Kasus: Academic Information System (AIS)
UIN Syarif Hidayatullah Jakarta

Skripsi
Sebagai Salah Satu Syarat untuk Memperoleh Gelar
Sarjana Komputer
Fakultas Sains dan Teknologi
Universitas Islam Negeri Syarif Hidayatullah Jakarta
Oleh:
Muhammad Akmal
106091002949
Menyetujui,

Pembimbing I

Pembimbing II

Yusuf Durachman M.Sc, MIT

Husni Teja Sukmana, Ph.D

NIP. 19710522 200604 1 002

NIP. 19771030 200112 1 003

Mengetahui,
Ketua Program Studi Teknik Informatika,

Yusuf Durrachman, M.sc., M.I.T.


NIP.197110522 200604 1 002
iii

PENGESAHAN UJIAN
Skripsi yang berjudul Pengembangan Aplikasi SMS Reminder dalam
Kalender Akademik UIN Syarif Hidyatullah Jakarta (Studi Kasus : Pusat
Komunikasi (PUSKOM) UIN Syarif Hidayatullah Jakarta), telah diuji dan
dinyatakan lulus dalam Sidang Munaqosah Fakultas Sains dan Teknologi
Universitas Islam Negeri Syarif Hidayatullah Jakarta, pada hari Senin tanggal 13
Juni 2011. Skripsi ini telah diterima sebagai salah satu syarat untuk memperoleh
gelar Sarjana Komputer pada Program Teknik Informatika
Jakarta, 13 Maret 2011
Tim Penguji,
Penguji I

Penguji II

DR. Syopiansyah Jaya Putra, M.Sis


NIP. 19680117 200112 1 001

Andrew Fiade, M.Kom


NIP. 19820811 2009121 1 004

Tim Pembimbing,
Pembimbing I

Pembimbing II

Yusuf Durrachman M.Sc, MIT


NIP. 19710522 200604 1 002

Husni Teja Sukmana, Ph.D


NIP. 19771030 200112 1 003
Mengetahui,

Dekan
Fakultas Sains Dan Teknologi

Ketua Program Studi


Teknik Informatika

DR. Syopiansyah Jaya Putra, M.Sis


NIP. 19680117 200112 1 001

Yusuf Durrachman M.Sc, M.I.T.


NIP. 19710522 200604 1 002

iv

PERNYATAAN

DENGAN INI SAYA MENYATAKAN BAHWA SKRIPSI INI BENAR-BENAR


HASIL KARYA SENDIRI YANG BELUM PERNAH DIAJUKAN SEBAGAI SKRIPSI
ATAU KARYA ILMIAH PADA PERGURUAN TINGGI ATAU LEMBAGA
MANAPUN.

Jakarta, Juni 2011

Muhammad Akmal

ABSTRAK

Muhammad Akmal, Pengembangan Aplikasi SMS Reminder dalam


Kalender Akademik UIN Syarif Hidyatullah Jakarta Studi Kasus: PUSKOM
(Pusat Komunikasi) UIN Syarif Hidayatullah Jakarta dibawah bimbingan
Yusuf Durrachman Msc. MT dan Husni Teja Sukmana, Ph.D.
Adanya jadwal kegiatan akademik dikampus serta kegiatan yang
berhubungan dengan aparatur penyelenggara perkuliahan merupakan suatu hal
yang sangat penting. Dengan adanya suatu penjadwalan (schedule), suatu program
kerja atau perencanaan kegiatan akan dapat dilaksanakan dan diselesaikan dengan
baik pada waktu yang telah ditetapkan. Aliran informasi penjadwalan kegiatan
akademik harus dapat disampaikan dengan baik kepada pihak penerima informasi.
Sebagai contoh pada universitas, Mahasiswa dapat mengetahui waktu tenggat
pembayaran, jadwal perkuliahan dan ujian, jadwal rapat dosen dan karyawan, dan
kegiatan lain yang dirancang melalui agenda kegiatan akademik agar rencana
kedepan kampus dapat terlaksana dengan baik.
Berdasarkan hal tersebut, penulis mencoba membangun suatu sistem
penjadwalan kegiatan akademik (berupa kalender akademik) dengan penyampaian
informasi yang cepat memanfaatkan teknologi Short Massage Service (SMS)
sebagai bentuk model pengingat agar dapat membantu mahasiswa dan aparatur
penyelenggara perkuliahan dalam menjalankan kegiatan yang telah dijadwalkan.
Aplikasi ini dibuat dari gabungan framework supercali calendar dan
aplikasi Gammu (SMS Gateway). framework supercali calendar digunakan untuk
merancang aplikasi kalender untuk kegiatan akademik UIN Syarif Hidyatullah.
Sedangkan aplikasi Gammu dirancang untuk dapat melakukan pengiriman SMS
kepada pihak yang akan menerima informasi dalam bentuk pengingat kegiatan.
Dalam pembangunan sistem ini, penulis menggunakan metode Rapid
Application Development (RAD). Secara garis besar sistem aplikasi ini berbentuk
aplikasi kalender akademik dengan sistem reminder (pengingat). Proses input data
berupa tanggal, jam, subjek, dan tujuan dari diadakannya kegiatan. Aplikasi ini
memiliki kerangka pengguna/user dengan hak pengguna yang terstruktur sehingga
sangat cocok digunakan dalam suatu organisasi atau instansi. Proses pengingat
menggunakan teknologi SMS diharapkan dapat membantu aparatur
penyelenggara perkuliahan dan mahasiswa dalam meningkatkan kedisiplinan dan
taraf penyelenggaran kegiatan perkuliahan kearah yang lebih baik.

Kata kunci : Short Massage Service (SMS), framework, aparatur penyelenggara


perkuliahan, informasi, user, reminder, Gammu, agenda.

vi

KATA PENGANTAR
Bismillaahirrahmaanirrahiim
Segala puji dan syukur penulis panjatkan kehadirat Allah SWT atas segala
karunia, rahmat dan kekuatan, juga segala petunjuk dan kemudahan sehingga
penulis dapat menyelesaikan penulisan skripsi ini dengan judul Pengembangan
Aplikasi SMS Reminder dalam Kalender Akademik UIN Syarif Hidyatullah
Jakarta Studi Kasus: Pusat Komunikasi (PUSKOM) UIN Syarif Hidayatullah
Jakarta. Shalawat serta salam selalu kita haturkan kepada junjungan kita Nabi
besar Muhammad SAW, beserta keluarganya, para sahabatnya, dan para
pengikutnya.
Skripsi ini berjudul Pengembangan Aplikasi SMS Reminder dalam
Kalender Akademik UIN Syarif Hidyatullah Jakarta Studi Kasus: Pusat
Komunikasi (PUSKOM) UIN Syarif Hidayatullah Jakarta, yang disusun untuk
memenuhi salah satu syarat dalam menyelesaikan program S1 pada Program Studi
Teknik Informatika di Universitas Islam Negeri Syarif Hidayatullah Jakarta.
Pada kesempatan yang berbahagia ini, penulis mengucapkan terima kasih
kepada pihak-pihak yang telah membantu dalam menyelesaikan skripsi ini.
Mereka yang berdedikasi tinggi diantaranya:

1.

Bapak DR. Syopiansyah Jaya Putra, M.Sis., selaku Dekan Fakultas


Sains dan Teknologi, Universitas Islam Negeri Syarif Hidayatullah
Jakarta.

vii

2.

Bapak Yusuf Durrachman, M.Sc., M.I.T., selaku Ketua Program Studi


Teknik Informatika, Fakultas Sains dan Teknologi, Universitas Islam
Negeri Syarif Hidayatullah Jakarta.

3.

Ibu Viva Arifin, MMSI., selaku Sekretaris Program Studi Teknik


Informatika, Fakultas Sains dan Teknologi, Universitas Islam Negeri
Syarif Hidayatullah Jakarta.

4.

Yusuf Durachman M.Sc, MIT, Husni Teja Sukmana, Ph.D, selaku


dosen pembimbing yang senantiasa sabar dan selalu meluangkan
waktunya

di

tengah-tengah

berbagai

kesibukannya

untuk

membimbing penulis dalam proses penyusunan skripsi ini.


5.

Seluruh Dosen Program Studi Teknik Informatika yang tidak mungkin


penulis sebutkan satu persatu.

6.

Staff karyawan Fakultas Sains dan Teknologi dan Prodi TI (Ibu


Fitroh, Ibu Tari, Pak Amin, Pak Tommy, Niki, dan semuanya).

7.

Karib kerabat yang selalu memberikan semangat kepada penulis.

Akhirnya, penulis berharap semoga skripsi ini dapat bermanfaat. Saran


dan kritik untuk kesempurnaan skripsi ini sangat penulis harapkan.

Jakarta, Mei 2011


Penulis

Muhammad Akmal
viii

Teruntuk
Skripsi ini terkhusus penulis persembahkan kepada mereka yang telah
mendukung, baik moril maupun materil, baik melalui doa ataupun sua dalam
menyelesaikan skripsi ini.
1. Teruntuk Keluarga. Semoga Allah SWT selalu melimpahkan rahmat,
rahim dan ampunan-Nya kepada mereka. Amin.
2. Teruntuk teman-teman satu perjuangan, Wahyudianto, Zickra Auliya,
Dodi Susanto, Wawan Irwanuddin, Trie Harie Haziz, Muhammad
Iqbal, Yudha Perwira, Sarifuddin Dayani, Iche Berlianty, Finna, Selvy,
Wulan, Cherry, Eva, dan Imam Dwijosyahputo. Terima kasih atas
segala bantuan dan semangatnya.
3. Teman-teman seperjuangan Teknik Informatika dan Sistem Informasi
UIN angkatan 2006. Terima kasih untuk semua kenangan terindahnya.
4. Dan seluruh pihak yang telah membantu penulis, baik langsung
maupun tidak langsung dalam menyelesaikan skripsi ini.

ix

DAFTAR ISI
Halaman
Halaman Judul .................. .............................................................................. ii
Lembar Persetujuan Pembimbing .................................................................... iii
Lembar Persetujuan Penguji ............................................................................ iv
Lembar Pernyataan .......................................................................................... v
Abstrak ............................................................................................................ vi
Kata Pengantar ................................................................................................ vii
Lembar Persembahan ....................................................................................... ix
Daftar Isi ......................................................................................................... x
Daftar Gambar. ................................................................................................ xvi
Daftar Tabel ..................................................................................................... xix
Daftar Simbol ................................................................................................... xxi
Daftar Istilah .................................................................................................... xxv

BAB I PENDAHULUAN .............................................................................. 1


1.1. Latar Belakang .................................................................................. 1
1.2. Perumusan Masalah .......................................................................... 3
1.3. Pembatasan Masalah ......................................................................... 4
1.4. Tujuan Penelitian dan Manfaat Penelitian ........................................ 4
1.4.1. Tujuan Penelitian......................................................... 4
1.4.2. Manfaat Penelitian .................................................................. 4
1.5. Metodologi Penelitian ....................................................................... 5

1.5.1. Metode Pengumpulan Data .................................................... 5


1.5.2. Metode Analisis Perencanaan Sistem ..................................... 6
1.6. Sistematika Penulisan ....................................................................... 7

BAB II LANDASAN TEORI ........................................................................ 9


2.1. Teknologi Short Message Service (SMS) ......................................... 9
2.1.1. Gambaran Umum SMS............................................................ 9
2.1.2. SMS Gateway.................................................................. 12
2.1.3. AT Command ......................................................................... 14
2.1.4. Global System for Mobile Communication (GSM)................. 15
2.2. Konsep Dasar Sistem Informasi ....................................................... 15
2.2.1. Pengertian Sistem.................................................................... 15
2.2.2. Pengertian Informasi .............................................................. 16
2.2.3. Pengertian Sistem Informasi................................................... 17
2.3. Konsep Dasar Sistem Informasi Akademik dan Kalender
Akademik.. ............................................................................ 18
2.3.1. Deskripsi Umum Sistem Informasi Akademik....................... 20
2.3.2. Deskripsi Umum Kalender Akademik ................................... 21
2.4. Konsep Basis Data ............................................................................ 21
2.4.1. Pengertian Basis Data ............................................................. 21
2.4.1.1. Peranan Basis Data ........................................................... 22
2.4.1.2. Abstraksi Data .................................................................. 24
2.4.2. Database Management System (DBMS) ............................... 24

xi

2.5. Konsep Metodologi Pengembangan Sistem ..................................... 26


2.5.1. Metodologi Pengumpulan Data .............................................. 26
2.5.2. Metodologi Pengembangan Sistem ........................................ 27
2.5.2.1. Rapid Aplication Development (RAD) ............................. 27
2.5.2.2. Flowchart (Bagan Alir)..................................................... 31
2.5.3. Tool Perancangan Sistem ....................................................... 31
2.5.3.1. Data Dictionary (Kamus Data) ......................................... 31
2.5.3.2. Data Flow Diagram (DFD) .............................................. 32
2.5.3.3. Entity Relational Diagram (ERD) .................................... 32
2.5.3.4. State Transition Diagram (STD) ...................................... 33
2.6. Desain Perancangan Sistem .............................................................. 33
2.6.1. Desain Data ............................................................................ 33
2.6.2. Desain Arsitektur .................................................................... 34
2.6.3. Desain Prosedural ................................................................... 34
2.7. Internet .............................................................................................. 34
2.7.1. Transmision Control Protocol/Internet Protocol (TCP/IP) ... 34
2.7.2. Interconnected Network (Internet) ......................................... 35
2.7.3. Web Server ............................................................................. 35
2.8. Perangkat Lunak Pengembangan Sistem .......................................... 35
2.8.1. Apache/Xampp ....................................................................... 35
2.8.2. PHP. .................................................................................... 36
2.8.3. MySQL............................................................ 37
2.8.4. Supercali Calender.............................................................. 38

xii

2.8.5. Gammu .................................................................................. 38


2.9. Studi Sejenis...................................................................................... 39

BAB III METODOLOGI PENELITIAN .................................................... 41


3.1. Metode Pengummpulan Data ............................................................ 41
3.2. Metode Pengembangan Sistem ......................................................... 42
3.2.1. Fase Perencanaan Syarat-syarat ................................................. 42
3.2.2. Fase Perancangan ....................................................................... 43
3.2.3. Fase Konstruksi .......................................................................... 44
3.2.4. Fase Pelaksanaan ....................................................................... 45

BAB IV HASIL DAN PEMBAHASAN ...................................................... 46


4.1. Latar Belakang Academic Information System (AIS) ....................... 46
4.2. Analisa Hasil Pengumpulan Data ..................................................... 47
4.2.1. Wawancara ................................................................................. 48
4.2.2. Observasi.................................................................................... 49
4.3. Fase Perencanaan Syarat-syarat ....................................................... 49
4.3.1. Definisi Lingkup Kegiatan ..................................................... 49
4.3.2. Analisa Sistem yang Sedang Berjalan ................................... 51
4.3.3. Kelemahan Sistem yang Sedang Berjalan ............................. 55
4.3.4. Tujuan ..................................................................................... 55
4.3.5. Syarat-syarat ........................................................................... 56
4.3.6. Analisa Permasalahan ............................................................. 57

xiii

4.3.7. Solusi Permasalahan ............................................................... 58


4.3.8. Analisa Kebutuhan ................................................................. 59
4.3.9. Konfigurasi Komputer yang Diusulkan.................................. 60
4.4. Fase Perancangan .............................................................................. 65
4.4.1. Desain Alur Sistem yang Diusulkan....................................... 65
4.4.2. DFD. 68
4.4.2.1. Terminator/Entitas Luar 69
4.4.2.2. Komponen Proses.. 70
4.4.2.3. Komponen Data Store70
4.4.2.4. Komponen Alur Data 71
4.4.2.5. Penggambaran DFD.. 79
4.4.2.5.1. Diagram Context...79
4.4.2.5.2. Diagram Level Zero..81
4.4.2.5.3. Diagram Level Satu..82
4.4.3. ERD 83
4.4.3.1. Entity.86
4.4.3.2. Normalisasi Database... 92
4.4.3.3. Relationship ..... 97
4.4.4. Rancangan Layer antar muka (Interface) ............................... 104
4.4.4.1. Rancangan interface menu login ...................................... 104
4.4.4.2. Rancangan interface Menu Utama ................................... 105
4.4.5. Rancangan STD (State Transition Diagram) ......................... 116
4.4.5.1. Rancangan STD Menu Utama...........................................116

xiv

4.5. Fase Konstruksi ................................................................................. 121


4.5.1. XAMPP-WIN32 ..................................................................... 121
4.5.2. Gammu-win32 ....................................................................... 121
4.5.3. Pengkodean............................................................................. 122
4.5.4. Tahapan Aplikasi SMS Reminder dalam Kalender
Akademik... 123
4.6. Fase Pelaksanaan .............................................................................. 123
BAB V KESIMPULAN DAN SARAN ......................................................... 135
5.1. Kesimpulan ....................................................................................... 135
5.2. Saran ................................................................................................. 136
DAFTAR PUSTAKA .................................................................................... 138
LAMPIRAN-LAMPIRAN

xv

DAFTAR GAMBAR

Halaman
Gambar 2.1. Mekanisme store dan forward pada pengiriman pesan SMS ................. 10
Gambar 2.2. SMS Gateway .................................................................................. 12
Gambar 2.3. Arsitektur DBMS.............................................................................. 26
Gambar 2.4. Tahapan RAD .................................................................................. 28
Gambar 2.5. Struktur Model Analisis .................................................................... 31
Gambar 2.6. Desain Perancangan Sistem ............................................................... 33
Gambar 3.1. Tahapan RAD .................................................................................. 42
Gambar 3.2. Ilustrasi Metodologi Penelitian Pengembangan Aplikasi SMS Reminder
dalam Kalender Akademik UIN Syarif Hidyatullah Jakarta ................. 45

Gambar 4.1. Ilustrasi Pengembangan Aplikasi SMS Reminder................................ 50


Gambar 4.2. Contoh Kalender Akademik .............................................................. 52
Gambar 4.3. Bagan alir (Flowchart) sistem yang sedang berjalan ..................... 53
Gambar 4.4. Alur Proses Bisnis Setting User Oleh Admin PUSKOM .............. 65
Gambar 4.5. Alur Proses Bisnis Input Jadwal Akademik yang diusulkan ........ 66
Gambar 4.6. Alur Data Proses Login .................................................................. 72
Gambar 4.7. Alur Data Proses Pengaturan Admin/User ..................................... 72
Gambar 4.8. Alur Data Proses Pengaturan Module ............................................ 74
Gambar 4.9. Alur Data Proses Aksi Events ........................................................ 74
Gambar 4.10. Alur Data Proses Aksi Group....................................................... 75
Gambar 4.11. Alur Data Proses Aksi Categories ................................................ 75
xvi

Gambar 4.12. Alur Data Proses Aksi Member ................................................... 76


Gambar 4.13. Alur Data Proses Aksi mengirim pesan dan melihat stutus pesan 77
Gambar 4.14. Alur Data Proses Aplikasi Gammu .............................................. 78
Gambar 4.15. Diagram Context .......................................................................... 80
Gambar 4.16. Diagram Level Zero ..................................................................... 81
Gambar 4.17. Diagram Level Satu ..................................................................... 83
Gambar 4.18. Conceptual Data Model (CDM) ERD .......................................... 84
Gambar 4.19. Relational Database...................................................................... 98
Gambar 4.20. Layar Login .................................................................................. 104
Gambar 4.21. Layar Module Year ...................................................................... 105
Gambar 4.22. Layar Module Month ................................................................... 105
Gambar 4.23. Layar Module Week..................................................................... 106
Gambar 4.24. Layar Module Day ....................................................................... 106
Gambar 4.25. Layar Module Upcoming ............................................................. 107
Gambar 4.26. Layar Kalender Post Event........................................................... 107
Gambar 4.27. Layar Setelah Send Reminder ...................................................... 108
Gambar 4.28. Layar Kalender Propose Event..................................................... 108
Gambar 4.29. Layar Add/Edit Event .................................................................. 109
Gambar 4.30. Layar Send Reminder................................................................... 110
Gambar 4.31. Layar View Member .................................................................... 110
Gambar 4.32. Layar View User .......................................................................... 111
Gambar 4.33. Layar Add/Edit User .................................................................... 111
Gambar 4.34. Layar Instalasi Module................................................................. 112
xvii

Gambar 4.35. Layar Groups................................................................................ 112


Gambar 4.36. Layar Add/Edit Groups ................................................................ 113
Gambar 4.37. Layar Categories .......................................................................... 113
Gambar 4.38. Layar Add/Edit Categories........................................................... 114
Gambar 4.39. Layar Member .............................................................................. 114
Gambar 4.40. Layar Add/Edit Member .............................................................. 115
Gambar 4.41. Layar Not Authorized To Calender.............................................. 115
Gambar 4.42. STD Menu Utama ........................................................................ 116
Gambar 4.43. STD Menu Login ......................................................................... 117
Gambar 4.44. STD Menu Menu Users Utama .................................................... 117
Gambar 4.45. STD Menu Action Users .............................................................. 117
Gambar 4.46. STD Menu Modules ..................................................................... 118
Gambar 4.47. STD Menu Groups ....................................................................... 118
Gambar 4.48. STD Menu Categories .................................................................. 119
Gambar 4.49. STD Menu Member ..................................................................... 119
Gambar 4.50. STD Menu Aksi Event ................................................................. 120
Gambar 4.51. STD Menu Send Reminder .......................................................... 120

xviii

DAFTAR TABEL
Halaman
Tabel 2.1. Perbandingan Metode Pengembangan Sistem .................................. .. 30
Tabel 4.1. Cause-and-Effect Analysis ................................................................ .. 57
Tabel 4.2. Data Pengiriman Pesan ..................................................................... .. 93
Tabel 4.3. Data Pengiriman Pesan II ................................................................. .. 94
Tabel 4.4. Data Events ....................................................................................... .. 95
Tabel 4.5. Data Outbox ...................................................................................... .. 96
Tabel 4.6. Data Member .................................................................................... .. 96
Tabel 4.7. User ................................................................................................... .. 99
Tabel 4.9. User To Groups ................................................................................. .. 99
Tabel 4.9. User To Category .............................................................................. .. 99
Tabel 4.10. Modules .......................................................................................... 100
Tabel 4.11. Groups ............................................................................................. 100
Tabel 4.12. Categories ....................................................................................... 101
Tabel 4.13. Member ........................................................................................... 101
Tabel 4.14. Events.............................................................................................. 102
Tabel 4.15. Dates ............................................................................................... 102
Tabel 4.16. Outbox ............................................................................................ 103
Tabel 4.17. Sentitems ......................................................................................... 103
Tabel 4.18. Gammu............................................................................................ 104
Tabel 4.19. Testing Admin PUSKOM ............................................................. . 126
Tabel 4.20. Testing Admin Pusat ..................................................................... ..110
xix

Tabel 4.21. Testing Admin Fakultas ................................................................ ..129


Tabel 4.22. Testing Admin Jurusan ................................................................. ..131
Tabel 4.23. Testing Mahasiswa, Dosen, Pegawai ............................................ ..133
Tabel 4.24. Pengujian Penerimaan Sistem ....................................................... ..134

xx

Simbol Bagan Alir (Flowchart)


Menurut Jogiyanto (1999 : 796)
Simbol

Nama
Alternate Symbol

Fungsi
Simbol yang menunjukkan
pergantian proses
awal/akhir

Process Symbol

Menunjukkan kegiatan
proses dari operasi
computer

Data

Penjelasan tentang Data

Multi document

Dokumen yang diolah


computer

Data Flow

Simpanan data dalam


database

Display

menghubungkan use case


dasar ke use case tambahan

Arus Data

Menjelaskan Aliran Data

xxi

DFD (Data Flow Diagram)


Menurut De Marco
(Pressman, 2002 : 365)
Simbol

Nama
Process

Fungsi
Menunjukkan
kegiatan proses
operasi dari sistem

Entitas Luar

Entitas yang
memberi dan
menerima data

Data Storage

Tempat
penyimpanan dan
pengambilan file
data
Menunjukkan
arah/arus dari data
yang diproses

Arus Data

xxii

ERD (Entity Relationship Diagram)


Menurut Abdul Kadir (1965 : 51)
Simbol

Nama
Entity

Relasi

Atribut

Notasi

Fungsi
Komponen yang
berupa file-file dan
untuk diproses oleh
sistem
Penghubung antara
entitas lain

Atribut dari entitas


yang tersedia

Derajat Relasi Minimum dan Maksimum

1:1

1:M

M:N

xxiii

Simbol State Transition Diagram (STD)


Menurut Roger, S Pressman
Simbol

Nama
Tindakan

Tampilan

xxiv

Fungsi
Menggambarkan
Tindakan yang diambil
jika suatu event terjadi
Menggambarkan
tayangan atau layer yang
tampil

DAFTAR ISTILAH

SMS

Short Massage Service. Layanan pesan singkat


antar pengguna handphone/pelanggan.

Gateway

Pintu gerbang penyebaran informasi.

Handphone

Telepon genggam

GSM

Global System for Mobile Communication.


Standar komunikasi global untuk komunikasi
global selular digital.

Broadcast

Pengiriman pesan secara satu arah.

Customizable

Penyesuaian penggunaan

Reminder

Hal Pengingat kondisi.

Input

Pemasukkan data kedalam penyimpanan data.

Output

Keluaran data

User

Pengguna dari sistem

RAD

Rapid Aplication Development. Pengembangan


aplikasi secara cepat

xxv

Testing

Tahapan

dimana

pengembangan

software

melakukan uji coba terhadap aplikasi.


Programmer

Orang yang ahli dalam membuat suatu aplikasi


program.

User Friendly

Bersahabat untuk digunakan, sehingga user


mudah untuk menggunakan.

Design

Tahapan

dimana

pengembangan

software

melakukan perancangan.
Coding

Tahapan

dimana

pengembangan

software

melakukan pembangunan aplikasi.


Blackbox

Suatu

jenis

pengujian

perangkat

lunak

berdasarkan dengan input, output pemakai.


open source

Sumber yang dapat digunakan. Aplikasi yang


dapat digunakan secara bebas oleh pengguna.

Knowledge Based System

Pengetahuan mendasar seseorang terhadap sistem

Internet

Jaringan yang saling behubungan. istilah umum


yang dipakai untuk menunjukkan network tingkat
dunia yang terdiri dari komputer dan layanan
service atau sekitar 30 sampai 50 juta pemakai

xxvi

komputer
Electronic Mail (Email)

Surat elektronik. Pengiriman pesan melalui


jaringan komputer.

World Wide Web

Jaringan Internet seluruh dunia

xxvii

DAFTAR PUSTAKA

Kendall, Kenneth E. dan Kendall, Julie E. 2003. Analisis dan Perancangan


Sistem. Jakarta : Pearson Education Asia Pte. Ltd dan PT. Prenhallindo.
Bodic, Gwanal Le. 2005. Mobile Messaging Technologies and Services : SMS,
EMS and MMS. Second Edition. Chichester : John Wiley & Sons.
Rosidi, Romzi Imron. 2004. Membuat sendiri SMS Gateway (ESME) Berbasis
Protokol SMPP. Yogyakarta : ANDI.
Wahana Komputer. 2005. Pengembangan Aplikasi Sistem Informasi Akademik
Berbasis SMS dengan Java. Jakarta : Salemba.
Jogiyanto, H.M. 2005. Analisis & Desain Sistem Informasi: Pendekatan
Terstruktur Teory dan Praktek Aplikasi Bisnis. Yogyakarta: ANDI
Ladjamudin, Albahra. 2005. Analisis dan Desain Sistem Informasi. Yogyakarta
Graha Ilmu.
Supriyanto, Aji. 2005. Pengantar Teknologi Informasi Jakarta : Salemba
INFOTEK.
B, Gordon. 1990. Gordon Mccombs Gatgatters Goldmine : Chichester : Mcgrow
Hill.
OBrien, James A. 2005. Pengantar Sistem Informasi. Jakarta : Salemba Empat
Arifin, Johar. 2002. Manajemen Koperasi Berbasis Komputer. PT. Elex Media
Komputindo.
Pressman, S, Roger. 2002. Rekayasa Perangkat Lunak Pendekatan Praktis (Buku
Satu). Yogyakarta : ANDI.
138

Pressman, S, Roger. 2005. Software Engineering Apractitioners Approch: Sixth


Edition. New York : Mc Graw Hill.
Misky, Dudi. 2005. Kamus Informasi dan Teknologi. Edsa Mahkota.
Kadir, Abdul. 2003. Pengenalan Sistem Informasi. Yogyakarta: Andi.
Whitten L, Jeffrey. 2007. System Analysis and Design Methods E. 7th.
Yogyakarta: McGraw-Hill.
Hariyanto, Bambang. 2005. Rational Rose untuk Pemodelan Berorientasi Objek
Informatika:Bandung.

139

BAB I
PENDAHULUAN

1.1. Latar Belakang


Pembuatan jadwal kegiatan digunakan untuk merencanakan kegiatan apa
saja yang akan dilakukan baik kegiatan dalam waktu jangka pendek maupun
jangka panjang. Gambaran schedule kegiatan berisi tentang jenis kegiatan
yang akan dilaksanakan pada waktu dalam bentuk jam, tanggal, tempat, dan
tujuan kegiatan.

Schedule kegiatan berhubungan dengan penanggalan

kalender. Didalam suatu perusahaan atau instansi, schedule kegiatan sangat


dibutuhkan untuk mendisiplinkan pelaksanaan kegiatan sehingga dapat
memaksimalkan kinerja dan meningkatkan keberhasilan suatu perusahaan
atau instansi.
Seiring dengan perkembangan zaman, perkembangan sistem informasi
dan teknologi informasi juga semakin meningkat. SI/TI digunakan untuk
memudahkan aliran informasi bagi pengguna/user dalam kegiatan yang
berbasis informasi. Oleh karena itu, banyak perusahaan atau instansi
berlomba-lomba melakukan pengembangan SI/TI dalam operasional berbasis
informasi

demi

mendapatkan

efisiensi

kinerja

untuk

memperoleh

peningkatan keberhasilan perusahaan.


Pembuatan sistem informasi penjadwalan dalam suatu perusahaan atau
instansi sebaiknya dilakukan untuk memenuhi manfaat yang telah diuraikan
diatas. Sistem informasi penjadwalan memiliki kelender penanggalan

kegiatan dengan waktu, jenis kegiatan dan tujuan kegiatan. Dengan adanya
sistem informasi penjadwalan ini diharapkan suatu perusahaan atau instansi
dapat merencanakan dengan baik kegiatan-kegiatan apa yang akan dilakukan
sehingga tujuan keberhasilan dapat terlaksana dengan efisien dan baik.
Teknologi reminder atau teknologi pengingat sangat bermanfaat apabila
dikoneksikan dengan sistem informasi penjadwalan. Teknologi reminder
membantu pegawai atau pekerja untuk lebih disiplin dalam melakukan
kegiatan yang telah direncanakan perusahaan atau instansi. Teknologi
reminder ini dapat dijalankan pada email pegawai, teknologi handphone, atau
teknologi lain yang sering digunakan oleh pegawai.
Universitas Islam Negeri Syarif Hidayatullah Jakarta memiliki kalender
akademik untuk mengatur jadwal kegiatan Universitas baik dalam jangka
waktu

panjang

maupun

pendek. Kelender

akademik

ini

memiliki

penjadwalan administrasi akademik, administrasi keuangan, rapat kerja


Universitas, kegiatan akademik, skripsi, magang, dan penjadwalan kegiatan
lain. Pengumuman penjadwalan kegiatan menggunakan papan pengumuman
atau white board. Penempatan teknologi reminder pada kalender akademik
akan sangat baik dilakukan untuk meningkatkan keefektifitasan kegiatan.
Kelender akademik dengan teknologi reminder sebaiknya dibuat sesuai
dengan teknologi apa yang sesuai dan banyak digunakan oleh pegawai atau
pihak terkait sehingga sangat mudah untuk digunakan. Teknologi reminder
yang biasa digunakan seperti email, handphone, dan teknologi lain. Dengan

adanya aplikasi ini, penulis berharap pelaksanaan kegiatan akademik dapat


berjalan lebih efektif dan lebih baik.
Berdasarkan latar belakang di atas, penulis tertarik melakukan penelitian
sekaligus

sebagai

bahan

dalam

penyusunan

skripsi

dengan

judul

Pengembangan Aplikasi SMS Reminder dalam Kalender Akademik


UIN Syarif Hidyatullah Jakarta.

1.2. Perumusan Masalah


Berdasarkan latar belakang di atas dapat diambil rumusan masalahnya
sebagai berikut :
1. Bagaimana merancang Sistem Kalender Akademik untuk kegiatan
akademik UIN Syarif Hidyatullah Jakarta?
2. Bagaimana merancang Sistem Kalender Akademik dengan tingkatan
penggunaan user yang sesuai dengan strata tingkatan jabatan pada
sistem keorganisasian Universitas?
3. Bagaimana merancang sistem penjadwalan pengingat (reminder)
pada Sistem Kalender Akademik?
4. Bagaimana merancang Aplikasi SMS yang akan digunakan sebagai
teknologi reminder pada Sistem Kalender Akademik?
5. Bagaimana penerapan sistem ini pada aparatur penyelenggara
kegiatan akademik dan pihak yang diberikan informasi atau
pengingat?

1.3. Batasan Masalah


Agar penyusunan dan penulisan skripsi ini lebih terarah, maka ruang
lingkup pembahasan skripsi ini akan dibatasi pada permasalahan sebagai
berikut :
1.

Aplikasi ini hanya dibatasi pada sistem Kalender Akademik UIN


Syarif Hidyatullah Jakarta.

2.

Aplikasi ini menggunakan framework Supercali Calender sebagai


kalender akademik dan software Gammu sebagai teknologi
pengiriman SMS pengingat.

3.

Pengembangan Sistem Kalender Akademik ini berbasis web dengan


menggunakan apache web server, bahasa pemrograman PHP,
database MySQL.

1.4. Tujuan dan Manfaat Penelitian


1.4.1. Tujuan Penelitian
Berdasarkan dari permasalahan diatas, maka tujuan dari
penelitian

yang

dilakukan

adalah

untuk

membuat

usulan

Pengembangan Aplikasi SMS Reminder dalam Kalender Akademik


untuk diterapkan didalam kegiatan akademik Universitas Islam
Negeri Syarif Hidayatullah Jakarta.
1.4.2. Manfaat Penelitian
Manfaat yang dapat diperoleh dari penelitian ini adalah :

1. Bagi Universitas
Sebagai bahan masukan Universitas Islam Negeri Syarif
Hidyatullah Jakarta dalam memanfaatkan Sistem Informasi dan
Teknologi

Informasi

lain

yang

dapat

memberikan

suatu

kemudahan bagi terlaksananya kegiatan pada fakultas.


2. Bagi Akademik
Dapat dijadikan bahan masukan atau sumbang saran
pemikiran

yang

konstruktif

dalam

rangka

pengembangan

penggunaan teknologi yang dapat membantu kegiatan dan dapat


menjadi referensi bagi penulisan skripsi yang berkaitan dengan
topik ini.

1.5. Metodologi Penelitian


Dalam menyusun skripsi ini, penulis menerapkan beberapa metode
untuk memperoleh data yang diperlukan, sebagai berikut :
1.5.1. Metode Pengumpulan Data
1. Wawancara
Penulis melakukan wawancara langsung kepada pihak terkait yang
berwenang dan bertanggung jawab atas kegiatan akademik.
2. Metode Studi Pustaka
Penulis mengumpulkan bahan-bahan yang berkaitan dengan judul
skripsi dan cara pengembangan sistem melalui membaca buku-buku
dari perpustakaan dan mencari referensi artikel dari internet.

3. Observasi
Penulis mengamati langsung sistem yang sedang berjalan.
1.5.2. Metode Analisis Perencanaan Sistem
Metode Perencanaan Aplikasi SMS Reminder dalam Kalender
Akademik UIN Syarif Hidyatullah Jakarta ini menggunakan metode
Rapid Application Development (RAD), yang memiliki tahapan
sebagai berikut (Kendall & Kendall, 2003 : 327) :
1. Fase Perancanaan Syarat-syarat
Dalam tahap ini menentukan tujuan dan syarat-syarat
informasi. Orientasi dalam tahap ini adalah menggambarkan
permasalahan sistem yang berjalan dengan melakukan analisa
terhadap sistem dan melakukan pendekatan terhadap kebutuhan
sistem yang diusulkan.
2. Fase Perancangan
Dalam tahap ini dilakukan desain terhadap sistem yang
diusulkan dengan tahap : Pembuatan contex diagram, Data Flow
Diagram (DFD), Entity Relationship Diagram (ERD), perancangan
antar muka berupa perancangan input dan output sistem.
3. Fase Konstruksi
Pada tahap ini dilakukan penyusunan pengkodean terhadap
rancangan sistem yang telah didefinisikan.

4. Fase Pelaksanaan
Pada tahap ini dilakukan pengujian sistem dan pengenalan
kinerja sistem kepada pihak pengguna (user).

1.6. Sistematika Penulisan


Dalam penulisan laporan ini, penulis akan melakukan pembahasan
dengan membagi kedalam 5 bab, yaitu :
BAB I

PENDAHULUAN
Dalam bab ini dibahas secara singkat latar belakang masalah
untuk penentuan judul, identifikasi masalah, pembatasan
masalah, perumusan masalah, metode pembahasan, dan
sistematika penulisan.

BAB II

LANDASAN TEORI
Dalam bab ini berisi tentang penjelasan teori- teori yang
diperlukan dalam penulisan.

BAB III

METODOLOGI PENELITIAN
Dalam bab ini membahas tentang metodelogi yang
digunakan, dimulai dengan metode pengumpulan data dan
tahapan-tahapan analisa dan perancangan yang digunakan
dalam membuat Aplikasi SMS Reminder dalam Kalender
Akademik UIN Syarif Hidyatullah Jakarta.

BAB IV

PEMBAHASAN
Dalam bab ini menguraikan tentang latar belakang instansi
dan menjelaskan perancangan program dan implementasinya
yang menggunakan beberapa tahap perancangan sistem
Rapid Application Development (RAD).

BAB V

PENUTUP
Dalam bab ini menguraikan tentang kesimpulan dan saran
atas hasil penelitian yang telah dilakukan.

BAB II
LANDASAN TEORI

2.1. Teknologi Short Message Service (SMS)


2.1.1. Gambaran Umum SMS
Short Message Service (SMS) adalah dasar layanan yang
menyediakan pertukaran pesan singkat antar pelanggan. Pesan singkat
yang pertama telah digunakan pada tahun 1992 melalui saluran sinyal
komunikasi pada jaringan GSM Eropa. Semenjak percobaan yang
berhasil ini, penggunaan SMS telah menjadi suatu pokok persoalan
yang tumbuh dengan sukses. Data Mobile Association melaporkan
bahwa jumlah total pengiriman pesan orang ke orang melalui empat
jaringan GSM UK pada tahun 2003 mencapai 20,5 milyar (Gwenal
Le Bodic, 2005 : 47).
Short Message Service (SMS) adalah suatu fasilitas dari teknologi
GSM yang memungkinkan mengirim dan menerima pesan-pesan
singkat berupa text dengan kapasitas maksimal 160 karakter dari
Mobile Station (MS). Kapasitas maksimal ini tergantung dari alphabet
yang digunakan, untuk alphabet latin maksimal 160 karakter, dan non
Latin misalnya alphabet Arab atau China maksimal 70 karakter
(Sugiono, 2007 : 10).
Berikut akan dijelaskan cara kerja dan kelebihan utama SMS :

1. Cara kerja SMS


SMS

merupakan

suatu

metode

store

dan

forward.

Keuntungan yang didapat dari metode ini adalah pada saat telepon
selular penerima tidak dapat dijangkau, dalam arti tidak aktif atau
diluar service area, penerima tetap dapat menerima SMS-nya
apabila telepon selular tersebut sudah aktif kembali. SMS
menyediakan mekanisme untuk mengirimkan (storage) pesan
singkat

dari

dan

menuju

media-media

wireless

dengan

menggunakan sebuah Short Messaging Service Center (SMSC),


yang bertindak sebagai sistem yang berfungsi menyimpan dan
mengirimkan (forward) kembali pesan -pesan singkat. Jaringan
wireless menyediakan mekanisme untuk menemukan station yang
dituju dan mengirimkan pesan singkat antara SMSC dengan
wireless station. SMS mendukung banyak mekanisme input
sehingga memungkinkan adanya interkoneksi dengan berbagai
sumber dan tujuan pengiriman pesan yang berbeda (Romzi 2004 :
2).

Gambar 2.1 Mekanisme store dan forward pada


pengiriman pesan SMS (Ray, 2001)
(http://satriyantono.net/blogs2.php?id=2&parameter=1)

10

Keuntungan lain dari SMS yaitu memiliki biaya penggunaan


yang murah. Beban biaya dihitung dari penggunaan satu frame
melalui kanal frekuensi. Ukuran frame pada sistem GSM adalah
1250 bit (kurang lebih 160 byte). SMS dikirim menggunakan
signalling frame pada kanal frekuensi atau time slot frame GSM
yang biasanya digunakan untuk mengirimkan pesan untuk kontrol
dan sinyal setup panggilan telepon, seperti pesan singkat tentang
kesibukan jaringan atau pesan CLI (Caller Line Identification).
Frame ini bersifat khusus dan ada pada setiap panggilan telepon
serta tidak dapat digunakan untuk membawa voice atau data dari
pelanggan.
2. Kelebihan Utama SMS
Kelebihan utama dari SMS ini antara lain adalah sebagai
berikut (Lekkad : 2008, 2):
a. Pengriman pesan antara mobile-phone, adalah fungsi umum
dari SMS.
b. Mengurangi

kemungkinan

miss

dalam

pengiriman

informasi.
c. SMS dapat diterima secara langsung, yang menjadikan
SMS solusi yang ideal untuk menyebarkan informasi.
d. 94% SMS dibaca oleh para penerima.
e. Pengiriman pesan ke beberapa orang secara bersamaan.
f. Pengiriman pesan yang cepat, kurang dari 1 menit.

11

g. Layanan Informasi.
h. Sebagai pemberitahuan dan iklan, seperti informasi cuaca,
pembukaan outlet baru, kurs mata uang, ataupun horoskop.
2.1.2. SMS Gateway
SMS Gateway dibuat dari beberapa perangkat yang minimal
terdiri dari PC dan Modem GSM/CDMA. Sebuah kartu GSM/CDMA
dengan nomor direct/premium, dan sebuah program aplikasi yang
berfungsi untuk menerima atau mengirim sms secara bersamaan.
Aplikasi SMS Gateway mampu mengintegrasikan antara teknologi
ponsel dengan komputer atau PC (Rozidi, 2004 : 35).

Gambar 2.2 SMS Gateway


(http://www.gecko.web.id/)
SMS Gateway merupakan pintu gerbang bagi penyebaran
informasi dengan menggunakan SMS, anda dapat menyebarkan pesan
ke ratusan nomor secara cepat yang langsung terhubung dengan
database nomor-nomor ponsel saja tanpa harus mengetik ratusan

12

nomor dan pesan diponsel anda karena semua nomor akan diambil
secara otomatis dari database tersebut.
Berikut dijelaskan fungsi-fungsi SMS Gateway :
1. Massage management dan Delivery
a. Pengaturan pesan yang meliputi manajemen prioritas
pesan, manajemen pengiriman pesan, dan manajemen
antrian.
b. Pesan yang dilakukan harus sedapat mungkin fail safe.
Artinya,

jika

terdapat

gangguan

pada

jaringan

telekomunikasi, maka sistem secara otomatis melakukan


pengiriman ulang.
2. Korelasi
Berfungsi untuk melakukan korelasi data untuk
menghasilkan data baru hasil korelasi. Pada sistem yang
terpasang saat ini, arsitektur lalu lintas data melalui SMS
sudah terjalin cukup baik. Hanya saja, keterbatasan akses
data dan tujuan informasi SMS yang belum terfokus
menyebabkan banyaknya jawaban standar (default replies)
masih banyak terjadi. SMS Gateway banyak digunakan
dalam berbagai proses bisnis dan usaha. Proses bisnis dan
bidang layanan yang bisa ditangani oleh aplikasi SMS
Gateway.

Fitur-fitur

standar

SMS

Gateway,

yaitu

komunikasi SMS interaktif dua arah, SMS info on demand,

13

SMS service settings, SMS Automatic Registration, polling


SMS, pengiriman SMS Broadcast, pengiriman SMS ke Call
Group, pengiriman SMS terjadwal, personalisasi SMS,
antarmuka aplikasi berbasis web, buku alamat dan call
group, manajemen pengguna, sistem security access, serta
sistem parameter. Fitur-fitur advance SMS Gateway, yaitu
antarmuka dinamis untuk integrasi ke database perusahaan,
SMS Remote Control, E-mail to SMS, SMS to Email,
ekspansi modem GSM, dan koneksi langsung ke SMSC via
SMPP.

2.1.3. AT Command
AT Command adalah perintah-perintah yang digunakan dalam
komunikasi dengan Serial Port (Wahana Komputer, 2005 : 26). AT
Command digunakan pada handphone server untuk mengetahui vendor
atau perusahaan pembuat handphone yang digunakan, kekuatan sinyal,
membaca pesan yang ada pada SIM Card, mengirim pesan,
mendeteksi pesan baru yang masuk secara otomatis, menghapus pesan
pada SIM Card dan masih banyak lagi. Pada software gammu,
handphone-handphone yang sudah menggunakan USB pada umumnya
menggunakan AT Command sebagai pembentuk gateway.

14

2.1.4. Global System for Mobile Communication (GSM)


Global System for Mobile Communication (GSM) merupakan
standar yang diterima secara global untuk komunikasi selular digital.
GSM adalah nama group standardisasi yang di mapankan pada tahun
1982 untuk menghasilkan standar telepon bergerak di eropa,
digunakan sebagai formula spesifikasi untuk pan-eropa sistem selular
radio bergerak yang bekerja pada frekuensi 900 MHz. Dan
diperkirakan banyak negara lainnya diluar eropa akan turut
menggunakan teknologi GSM (faiz, 2005 : 1).

2.2. Konsep Dasar Sistem Informasi


2.2.1. Pengertian Sistem
Suatu sistem adalah suatu jaringan kerja dari prosedur-prosedur
yang saling berhubungan, berkumpul bersama-sama untuk melakukan
suatu kegiatan atau untuk menyelesaikan suatu sasaran yang tertentu
(Jogiyanto, 2005 : 1).
Sistem adalah kumpulan elemen, komponen, atau subsistem yang
saling berintegrasi dan berinteraksi untuk mencapai tujuan tertentu.
Jadi setiap sistem memiliki subsistem-subsistem, dan subsistem terdiri
atas komponen-komponen atau elemen-elemen (Aji Supriyanto, 2005 :
238).
Dari beberapa pengertian diatas penulis dapat memahami bahwa
sistem merupakan suatu rangkaian proses yang saling berhubungan

15

atau berinteraksi antara satu elemen dengan elemen lain dengan tujuan
yang telah ditentukan.

2.2.2. Pengertian Informasi


Informasi adalah data yang diolah menjadi bentuk yang lebih
berguna dan lebih berarti bagi yang menerimanya (Jogiyanto, 2005 :
8).
Informasi adalah data yang telah diolah menjadi bentuk yang
berarti bagi penerimanya dan bermanfaat dalam mengambil keputusan
saat ini atau mendatang (Aji Supriyanto, 2005 : 243).
Informasi berasal dari kumpulan data. Data adalah kenyataan yang
menggambarkan suatu kejadian-kejadian dan kesatuan nyata. Kesatuan
nyata adalah berupa suatu objek nyata seperti tempat, benda dan orang
yang betul-betul ada dan terjadi. Untuk pengambilan keputusan bagi
manajemen, maka faktor-faktor tersebut harus diolah lebih lanjut untuk
menjadi suatu informasi (Ladjamudin, 2005).
Kualitas suatu informasi tergantung dari tiga hal (Aji Supriyanto,
2005 : 245):
1. Akurat yaitu informasi harus tidak bias atau menyesatkan dan
bebas dari kesalahan.
2. Tepat waktu yaitu informasi yang datang pada penerima tidak
boleh

terlambat

karena

informasi

yang

usang

tidak

mempunyai nilai lagi.

16

3. Relevan yaitu informasi tersebut mempunyai manfaat untuk


pemakainya.
Menurut Gordon B. Davis nilai informasi dikatakan sempurna
apabila perbedaan antara kebijakan optimal, tanpa informasi yang
sempurna dan kebijakan optimal menggunakan informasi yang
sempurna dapat dinyatakan jelas.
Nilai suatu informasi dapat ukur berdasarkan :
1. Kemudahan dalam memperoleh.
2. Sifat yang luas dan ukuran yang lengkap.
3. Ketelitian (accuracy).
4. Kecocokan dengan pengguna (relevance).
5. Ketepatan waktu.
6. Kejelasan (clarity).
7. Fleksibilitas.
8. Dapat dibuktikan.
9. Tidak ada prasangka.

2.2.3. Pengertian Sistem Informasi


Menurut O Brien ( 2005), sistem informasi merupakan kombinasi
teratur apapun dari orang-orang, hardware, software, jaringan
komunikasi dan sumber daya data yang mengumpulkan, mengubah
dan menyebarkan informasi dalam sebuah organisasi.

17

Sistem informasi adalah suatu sistem didalam suatu organisai,


yang mempertemukan kebutuhan pengolahan transaksi harian,
mendukung operasi, bersifat manajerial dan kegiatan strategi dari suatu
organisasi dan menyediakan pihak luar tertentu dengan laporan
laposan yang ditentukan (Aji Supriyanto, 2005 : 243).
Jadi dapat disimpulkan definisi Sistem informasi adalah suatu
proses pengolahan data menjadi informasi oleh sekumpulan organisasi
sumberdaya yang saling berhubungan atau berinteraksi secara integral
dengan tujuan untuk mengambil keputusan dalam hal pemecahan suatu
masalah.

2.3. Konsep Dasar Sistem Informasi Akademik dan Kalender Akademik


2.3.1. Deskripsi umum Sistem Informasi Akademik
Kata akademik berasal dari bahasa Yunani yakni academos yang
berarti sebuah taman umum (plasa) di sebelah barat laut kota Athena.
Nama Academos adalah nama seorang pahlawan yang terbunuh pada
saat perang legendaris Troya. Pada plasa inilah filosof Socrates
berpidato dan membuka arena perdebatan tentang berbagai hal.
Tempat ini juga menjadi tempat Plato melakukan dialog dan
mengajarkan pikiran-pikiran filosofisnya kepada orang-orang yang
datang. Sesudah itu, kata acadomos berubah menjadi akademik, yaitu
semacam tempat perguruan. Para pengikut perguruan tersebut disebut
academist, sedangkan perguruan semacam itu disebut academia.

18

Berdasarkan hal ini, inti dari pengertian akademik adalah keadaan


orang-orang bisa menyampaikan dan menerima gagasan, pemikiran,
ilmu pengetahuan, dan sekaligus dapat mengujinya secara jujur,
terbuka, dan leluasa (Fadjar, 2002 : 5).
Sistem Informasi Akademik adalah sebuah sistem khusus untuk
keperluan

pengeloaan

data-data

Akademik

dengan

penerapan

teknologi komputer baik hardware maupun software. Sistem Informasi


Akademik merupakan pemanfaatan sumber daya yang saling
berinteraksi dalam pengolahan informasi yang berkaitan dengan
masalah-masalah akademik Universitas.
Sistem Informasi Akademik berbasis web bertujuan untuk
membentuk Knowledge Based System yang dapat diakses internet,
sebagai contoh macam informasi yang ada didalamnya adalah :
(Arifin, 2002)

a. Berita, berisi informasi terbaru yang diterbitkan oleh lembaga


pendidikan maupun informasi teknologi dari berbagai sumber
berita.
b. Pendidikan,

berisi

informasi

yang

berkaitan

dengan

perkuliahan yang terdapat dilembaga pendidikan, misalnya


kurikulum, Satuan Acara Perkuliahan(SAP), dosen, materi
kuliah, Kerja Praktek, tugas akhir dan penelitian.
c. Komunitas, berisi tentang komunitas yang ada di lembaga
pendidikan yang akan menginformasikan tentang Civitas

19

Akademika misalnya Staff, mahasiswa, Alumni, bulletin dan


lain-lain.
d. Data Personal, berisi Informasi yang berrhubungan dengan
mahasiswa diantaranya:
1) Kartu Rencana Studi (KRS) sesuai dengan mata kuliah
yang telah diprogramkan dalam satu semester
2) Kartu Hasil Studi(KHS) unruk mengetahui hasil yang telah
dicapai selama mengikuti perkuliahan dan hasil evaluasi
studi, sekaligus mengetahui indeks prestasinya
e. Jadwal Perkuliahan, yang berisi tentang jadwal kuliah, kegiatan
mahasiswa, memonitor jadwal perkuliahan dosen, jumlah
kehadiran dalam mengikuti perkuliahan
f. Perpustakaan, berisi tentang informasi buku melalui catalog
online Electronic Mail (Email), fasilitas ini untuk mengirim
dan menerima surat/pesan sekaligus dapat dijadikan sebagai
sarana atau alat diskusi antar mahasiswa, dosen bahkan
karyawan dalam lembaga pendidikan.

Data yang dikelola dalam sistem informasi akademik :


1. Data Mahasiswa
2. Data dosen
3. Data Mata Kuliah.
4. Data Nilai Akademik.
5. Data Wisudawan / Alumni

20

6. Data Keuangan
7. Data Jadwal Kegiatan Akadeik

2.3.2. Deskripsi Umum Kalender Akademik


Kalender

Akademik

adalah

jadwal

kegiatan

akademik

diperguruan tinggi untuk merencanakan kegiatan dalam menjalankan


kegiatan akademik dalam jangka waktu yang telah ditentukan.
Biasanya jangka waktu pembuatan kalender adalah dalam waktu satu
tahun atau dua semester yaitu semester ganjil dan semester genap. Isi
kalender akademik ialah kegiatan akademik seperti registrasi
mahasiswa, kegiatan perkuliahan, ujian tengah semester, ujian
semester, ujian skripsi, praktek kerja lapangan, kuliah kerja nyata,
upacara wisuda dan kegiatan akademik lainnya.

2.4. Konsep Basis data


2.4.1. Pengertian Basis data
Menurut Chow, basis data adalah kumpulan informasi yang
bermanfaat untuk diorganisasikan ke dalam tatacara yang khusus.
Menurut fabbri dan schwab, basis data adalah sistem berkas terpadu
yang

dirancang

terutama

untuk

meminimalkan

pengulangan

(redudancy) data. Sedangkan menurut Date, basis data dapat dianggap


sebagai tempat untuk sekumpulan berkas dan terkomputerisasi, jadi
sestem basis data menurut Date pada dasarnya adalah sistem

21

terkomputerisasi

yang

tujuan

utamanya

adalah

melakukan

pemeliharaan terhadap informasi dan membuat informasi tersebut


tersedia saat dibutuhkan.
Jadi konsep basis data atau database adalah kumpulan dari data
data yang membentuk suatu berkas (file) yang saling berhubungan
(relation) dengan tatacara yang tertentu untuk membentuk data baru
atau informasi (Aji Supriyanto 2005 : 190).

2.4.1.1. Peranan Basis data


Penyusunan suatu database digunakan untuk mengatasi
masalah-masalah pada penyusunan data. Manfaat yang
diperoleh dari penyusunan database yaitu untuk (Aji
Supriyanto 2005 : 190) :
1. Mengatasi
Digunakan

kerangkapan
untuk

(redudancy)

mendeteksi

dan

data.

menghindari

terjadinya kerangkapan data.


2. Menghindari

terjadinya

inkonsistensi

data.

Digunakan untuk menyesuaikan terhadap data yang


sama jika terjadi perubahan, jadi semua data akan
selalu ter-update.
3. Mengatasi

kesulitan

dalam

mengakses

data.

Digunakan untuk memudahkan jika suatu saat akan


diambil atau dicetak data yang memiliki kriteria

22

tertentu, misalnya pada tanggal tertentu, alamat


tertentu, jumlah tertentu, dan sebagainya.
4. Menyusun format yang standar dari sebuah data.
Digunakan untuk menyamakan format data berupa
tipe data dan jangkauannya pada data yang sama pada
file yang berbeda.
5. Penggunaan oleh banyak pemakai (multiple user).
Sebuah database bisa dimanfaatkan sekaligus secara
bersama oleh banyak pengguna (multiuser).
6. Melakukan perlindungan dan pengamanan data
(data security). Setiap data hanya bisa diakses atau
dimanipulasi oleh pihak yang diberi otoritas dengan
memberikan login atau password terhadap masingmasing data.
7. Menyusun

integritas

dan

inpendensi

data.

Digunakan untuk mengintegrasikan data, sehingga


kita bisa memanipulasi untuk mendapatkan berbagai
bentuk lembar kerja dan laporan yang diinginkan.

23

2.4.1.2. Abstraksi Data


Ketika

menmandang

dikelompokkan

menjadi

basis

data,

tingkatan

pemakai

(level)

yaitu

dapat
(Aji

Supriyanto 2005 : 195) :


1. Level Fisik (physical view/interval view). Merupakan
tingkatan

terendah

dalam abstraksi

data

yang

menunjukkan bagaimana data disimpan daam kondisi


sebenarnya.
2. Level

Konseptual.

Merupakan

level

yang

menggambarkan data apa yang sebenarnya (secara


fungsional) disimpan di dalam basis data, beserta
relasi yang terjadi antara data.
3. Level Pandangan Pemakai. Merupakan level dengan
tingkatan tertinggi, yang menggambarkan hanya satu
bagian dari keseluruhan data base.

2.4.2. Database Management System (DBMS)


Database management system (DBMS) adalah sekumpulan
program yang didesain untuk mendeskripsikan, melindungi, dan
mengakses basis data serta mengakhiri keterbatasan pemrosesan file
tradisional.
DBMS memiliki dua komponen software utama :
1. Sistem Kontrol Basis Data (SKDB), software antaramuka
program aplikasi user untuk mengambila data dari database. Isi

24

dalam software ini adalah bahasa manipulasi data (Data


Manipulation

Language-DML).

Misalnya

Insert,

Select,

Update, dan Delete.


2. Sistem Penyimpanan Basis Data (SPBD), software ini
memanipulasi file file data yang diperlukan untuk data yang
akan dimasukkan dalam database. Isi dalam software ini adalah
bahasa pendefinisian data (Data Definition Language-DDL).

Arsitektur DBMS mengacu pada teknologi database yang


mencakup database engine, utilitas database, alat CASE database
untuk menganalisis dan mendesain data, dan alat pengembangan
aplikasi database (Aji Supriyanto 2005 : 197).

25

Gambar 2.3 Arsitektur DBMS


(Aji Supriyanto 2005 : 196)

2.5. Konsep Metodologi Pengembangan sistem


2.5.1. Metodologi Pengumpulan data
Metodologi pengumpulan data pada pengembangan sistem ini
meliputi 3 aspek :
1. Wawancara
Yaitu komunikasi dua arah untuk mendapatkan data dari
responden. (Jogiyanto, 2008).

26

2. Metode Studi Pustaka


Merupakan pengumpulan bahan-bahan yang berkaitan dengan
judul skripsi melalui membaca buku-buku dari perpustakaan
dan mencari referensi artikel dari internet. (Jogiyanto, 2008).
3. Observasi
Yaitu teknik mendapatkan data primer dengan cara mengamati
langsung obyek datanya. (Jogiyanto, 2008).

2.5.2. Metodologi Pengembangan Sistem


2.5.2.1. Rapid Aplication Development (RAD)
Rapid Aplication Development (RAD) adalah proses model
perangkat

lunak

tambahan

yang

menekankan

siklus

pengembangan yang singkat. model RAD adalah adaptasi "HighSpeed"

dari

model

pengembangan

waterfall,

di

mana

perkembangan dicapai dengan cepat menggunakan pendekatan


proses konstruksi berbasis komponen. jika persyaratan dipahami
dengan baik dan cakupan proyek dibatasi, proses RAD
memungkinkan tim pengembangan untuk menciptakan sebuah
sistem yang berfungsi penuh "dalam jangka waktu yang sangat
singkat (misalnya, 60 sampai 90 hari) (Pressman, 2005 : 81).
Metode perencanaan SMS Reminder pada Sistem Informasi
Penjadawalan Akademik Universitas ini menggunakan metode

27

Rapid Application Development (RAD), yang memiliki tahapan


sebagai berikut :

Gambar 2.4 Tahapan RAD


(Kendall & Kendall, 2003: 238)
Model Pengembangan RAD memiliki empat fase, yaitu fase
perencanaan syarat-syarat, fase perancangan, fase konstruksi, dan
fase pelaksanaan. Berikut dijelaskan masing-masing fase dalam
penelitian ini.
1. Fase Perencanaan Syarat-syarat
Pada tahap ini dilakukan pengidentifikasian tujuan aplikasi
atau sistem serta mengidentifikasi syarat-syarat informasi
yang ditimbulkan dari tujuan-tujuan tersebut. Pada tahap
ini penulis melakukan analisa kebutuhan.

28

2. Fase Perancangan
Pada tahap ini dilakukan proses desain dan melakukan
perbaikan-perbaikan

apabila

masih

terdapat

ketidaksesuaian desain antara user dan analysist. Untuk


tahap ini keaktifan user yang terlibat sangat menentukan
untuk mencapai tujuan, karena user bisa langsung
memberikan komentar apabila terdapat ketidaksesuaian.
3. Fase Konstruksi
Setelah desain dari sistem yang akan dibuat sudah
disetujui baik oleh user dan analyst. Maka pada tahap ini
programmer melakukan pengembangan desain menjadi
suatu program aplikasi. Hal terpenting adalah keterlibatan
user sangat diperlukan supaya sistem yang dikembangkan
dapat bekerja dengan baik.
4. Fase Pelaksanaan
Pada tahap ini dilakukan pengujian aplikasi, dengan
menggunakan pengujian black-box yaitu sebuah pengujian
dengan menjalankan setiap fungsi dari aplikasi.

29

Perbandingan Metode Pengembangan Sistem


Table 2.1. Perbandingan Metode Pengembangan Sistem
Metodologi

Kelebihan

Kelemahan

The Waterfall Model

Contoh pendekatan
pembangunan software dengan
permulaan kebutuhan
spesifikasi customer dan
kemajuan yang akan diraih
(Pressman, 2005: 79).

Jarang sekali proyek nyata


mengikuti aliran sekuensial
yang dianjurkan oleh model.
(Pressman, 2005: 80).

Merupakan kombinasi
model waterfal dengan gaya
pengulangan untuk
meningkatkan kinerja software
(Pressman, 2005: 81).

Penekanan pada kecepatan


dapat berdanpak buruk
terhadap kualitas yang
disebabkan jalan pintas yang
disarankan dengan buruk
melalui metodologi ini
(Pressman, 2005: 83).

Kesulitan untuk
mengakomodasi kebutuhan
Telah banyak dipakai dalam yang ada pada bagian awal
dua dekade terakhir (Pressman, proyek (Pressman, 2005: 80).
2005: 79).
Dibutuhkan kesabaran
customer karena kinerja versi
program akan selesai selama
keterlambatan jangka waktu
proyek (Pressman, 2005: 80).
Incremental Process
Model
(The Incremental
Model, RAD)

Pembagian kerja dapat


dilakukan dalam bentuk team
untuk lebih mempercepat
pembangunan sistem
(Pressman, 2005: 81).
Peningkatan software
terutama dilakukan ketika
customer telah menggunakan
software (Pressman, 2005: 81).

Bagi proyek yang berskala


besar, RAD memerlukan
sumber daya yang memadai
untuk menciptakan jumlah tim
RAD yang baik (Pressman,
2005: 83).

30

2.5.2.2. Flowchart (Bagan Alir)


Flowchart merupakan teknik analitik yang digunakan untuk
mendeskripsikan beberapa aspek dari sistem informasi dalam
wujud yang lebih jelas, ringkas, dan secara logika. Flowchart
menggunakan serangkaian simbol standar untuk mendeskripsikan
dalam gambar, prosedur pemrosesan transaksi yang digunakan
oleh perusahaan dan aliran data dalam suatu sistem. Menunjukkan
apa yang dikerjakan di sistem (Jogiyanto, 2005 : 795).
2.5.3. Tool Perancangan Sistem

Gambar 2.5 Struktur Model Analisis


(pressman, 2002 : 534)

2.5.3.1. Data dictionary (Kamus Data)


Penyimpanan yang berisi deskripsi dari semua objek data
yang dikonsumsi atau diproduksi oleh perangkat lunak (Pressman,
2005 : 353)

31

2.5.3.2. Data Flow Diagram (DFD)


Data Flow Diagram (DFD) adalah sebuah teknik grafis yang
menggambarkan

aliran

informasi

dan

transformasi

yang

diaplikasikan pada saat data bergerak dari input menjadi output


(Pressman, 2002 : 364).
Data Flow Diagram (DFD) adalah representasi grafik dari
sebuah sistem. DFD menggambarkan komponen-komponen
sebuah sistem, aliran-aliran data di mana komponen-komponen
tersebut, dan asal, tujuan, dan penyimpanan dari data tersebut.
Kita dapat menggunakan DFD untuk dua hal utama, yaitu
untuk membuat dokumentasi dari sistem informasi yang ada, atau
untuk menyusun dokumentasi untuk sistem informasi yang baru.

2.5.3.3. Entity Relational Diagram (ERD)


Entity Relationship Diagram (ERD) adalah suatu data
perencanaan dan merupakan alat pengembangan sistem yang
model hubungannya berada diantara satu kesatuan dalam suatu
proses bisnis(OBrein, 2005 : G-7)
Entity Relational Diagram (ERD) merupakan notasi grafis
dalam

pemodelan

hubungan

antara

data

konseptual

penyimpanan.

yang

ERD

mendeskripsikan
digunakan

untuk

memodelkan struktur data dengan hubungan antar data, karena hal


ini relatif kompleks (Aji Supriyanto 2005 : 207).

32

2.5.3.4. State Transition Diagram (STD)


STD merepresentasikan tingkah laku dari suatu sistem
dengan

menggambarkan

keadaannya

dan

kejadian

yang

menyebabkan sistem mengubah keadaan (Pressman, 2002 : 373)

2.6. Desain Perancangan Sistem

Gambar 2.6 Desain Perancangan Sistem


(pressman, 2002 : 401)
2.6.1. Desain Data
Desain data mentransformasi model domain informasi yang
dibuat selama analisis ke dalam struktur data yang akan diperlukan
untuk mengimplementasi perangkat lunak. Objek dan hubungan data
yang ditetapkan dalam diagram hubungan entitas (ERD) dan isi data
detail yang digambarkan di dalam kamus data, menjadi basis bagi
aktivitas desain data (Pressman, 2002 : 400).

33

2.6.2. Desain Arsitektur


Desain arsitektur menentukan hubungan di antara elemen-elemen
struktural utama dari program. Representasi desain tersebut kerangka
kerja modural dari sebuah program komputer dapat diperoleh dari
modelmodel analisis dan interaksi subsistem yang ditentukan dalam
model analisis (Pressman, 2002 : 400).

2.6.3. Desain Prosedural


Desain prosedural mentransformasi elemen-elemen struktural dari
arsitektur program ke dalam suatu deskripsi prosedural dari
komponen-komponen perangkat lunak. Informasi yang diperoleh dari
STD berfungsi sebagai dasar bagi desain prosedural (Pressman, 2002 :
400).

2.7. Internet
2.7.1. Transmision Control Protocol/Internet Protocol (TCP/IP)
Transmision Control Protocol/Internet Protocol (TCP/IP) adalah
sekelompok protokol yang mengatur komunikasi data komputer di
internet.

Komputer-komputer

yang

terhubung

ke

internet

berkomunikasi dengan protokol ini.

34

2.7.2. Interconnected Network (Internet)


Interconnected Network (Internet) istilah umum yang dipakai
untuk menunjukkan network tingkat dunia yang terdiri dari komputer
dan layanan service atau sekitar 30 sampai 50 juta pemakai komputer
dan puluhan sistem informasi termasuk e-mail, gopher, FTP dan
World Wide Web (Misky, 2005 : 157).

2.7.3. Web Server


Perangkat keras dan perangkat lunak yang dipakai untuk
menyimpan dan mengirim dokumen HTML untuk digunakan dalam
World Wide Web (Misky, 2005 : 228).

2.8. Perangkat Lunak Pengembangan Sistem


2.8.1. Apache/Xampp
Apache merupakan web server yang saat ini telah digunakan
hampir dari 60% oleh server dunia. Banyak server yang memanfaatkan
Apache sebagai web server-nya disebabkan karena sifat software ini
sangat fleksibel dan dapat digunakan pada berbagai platform seperti
Linux dan Windows. Web server ini mampu mendukung berbagai
bahasa pemrograman yang sifatnya server side seperti : PHP, Perl,
CGI, Java, WML dan lain sebagainya.

35

2.8.2. PHP
PHP adalah bahasa pemrograman multi purpose yang open source
dan digunakan secara luas. PHP pada dasarnya didesain untuk
digunakan dalam pengembangan web site. PHP pertama kali dikenal
sebagai Personal Home Page tools yang diperkenalkan oleh Rasmus
Lerdorf pada tahun 1995. Saat ini PHP lebih dikenal sebagai Hypertext
Preprocessor sesuai kemampuannya untuk memproses halaman web
sebelum halaman tersebut ditampilkan (Valade, 2004 : 9).
Maksud severside scripting adalah sintaks dan perintah-perintah
yang kita berikan akan sepenuhnya dijalankan di server tetapi
disertakan pada dokumen HTML. PHP merupakan software open
source dan mampu lintas platform. PHP dapat dibangun sebagai modul
pada web server Apache dan sebagai binary yang dapat berjalan
sebagai CGI.
PHP memiliki beberapa keunggulan diantara bahasa server-side
scripting yang banyak digunakan sekarang ini. Beberapa kelebihan
PHP (Valade, 2004 : 10) :
1. Cepat, karena dapat terintegrasi dengan HTML membuat waktu
untuk loading dan proses halaman web menjadi singkat.
2. Gratis, PHP didistribusikan secara open source dan tidak
bersifat komersial.
3. Mudah digunakan dan dipelajari, sintaksnya sederhana dan
cukup mudah untuk dimengerti dan digunakan, bahkan oleh

36

orang awam sekalipun. Kode PHP didesain untuk dapat dengan


mudah disisipkan kedalam file HTML.
4. Multi Platform, PHP dapat berjalan di berbagai macam Sistem
Operasi seperti Windows, Linux, Mac OS dan berbagai Sistem
Operasi berbasis UNIX.
5. Dukungan penuh dari para pengembang di seluruh dunia,
karena bersifat open source membuat PHP dikembangkan
secara bersama-sama oleh semua programmer di seluruh dunia,
sehingga kita dapat dengan mudah menemukan solusi apabila
menemui kesulitan.
6. Customizable, karena PHP bersifat open source, programmer
dapat dengan leluasa untuk memodifikasi, menambah dan
mengurangi fitur-fitur yang ada pada PHP sesuai dengan
keinginan.
7. PHP mendukung komunikasi dengan layanan melalui protokol
FTP, IMAP, SNMP, POP3, dan lain-lain.

2.8.3. MySQL
MySQL adalah multi user database yang menggunakan bahasa
Structured Query Language (SQL) (Nanang, 2004 : 81). MySQL
mampu untuk menangani data yang cukup besar. Perusahaan yang
mengembangkan MySQL yaitu TeX, mengaku mampu menyimpan

37

data lebih dari 40 database, 10.000 tabel dan sekitar 7 juta baris,
totalnya kurang lebih 100 Gigabytes data.
Database

MySQL

banyak

digunakan

di

internet

karena

kehandalannya. MySQL tidak membutuhkan ruang harddisk yang


besar untuk aplikasinya, dan mudah digunakan pada database server,
sangat ideal untuk aplikasi yang kecil dan menengah (Onno, Ridwan,
2001: 23).

2.8.4. Supercali Calender


Supercali adalah suatu skrip penanggalan peristiwa yang
mendukung pembagian kategori pada peristiwa dan penggunaan oleh
banyak moderator, dan merupakan pilihan tepat untuk digunakan pada
suatu organisasi yang mengatur kegiatan dalam ukuran besar.
Supercali didisain untuk membuat data lebih mudah dan
kemungkinan terjadi kesalahan dapat dilihat dengan kerangka modular
framework dalam menampilkan informasi kesalahan. Supercali bekerja
dengan PHP dan MYSQL. Supercali bersifat open source dan dirilis
dibawah GNU General Public License. (Hak Cipta 2006 Dana C.
Hutchins)

2.8.5. Gammu
Gammu merupakan aplikasi open source untuk keperluan SMS
gateway dan me-manage handphone.

38

2.9. Studi Sejenis


Sebagai perbandingan dengan penelitian sebelumnya, diantaranya
dikemukakan oleh Wibowo, Dwi Putra (2010) Jurusan Teknik Informatika
UIN Syarif Hidyatullah Jakarta dengan judul Perancangan Sistem Informasi
Kegiatan Belajar Siswa Menggunakan Short Massage Service (SMS)
Gateway. pada sistem ini siswa diharapkan aktif dalam melakukan
hubungan terhadap sistem ini. Sistem ini dianggap kurang dapat membantu
memudahkan kinerja siswa dalam menjalankan kegiatan belajar.
Penelitian literatur sejenis dari skripsi yang disusun oleh Rusdiantoro
(2010) dengan judul Pembuatan Aplikasi Penyebaran Informasi Berbasis
Short Massage Service (SMS) dilingkungan Program Studi Teknik
Informatika. Pada aplikasi ini jadwal pengiriman informasi dilakukan secara
manual. Dianggap kurang efisien dalam hal user friendly-nya karena belum
adanya form untuk melihat penjadwalan pengirman secara keseluruhan.
Penelitian yang dikemukakan oleh Wahyuningrum (2005), hasil
penelitiannya adalah sebuah aplikasi permintaan untuk nilai akademik. Pada
aplikasi ini tidak memberikan laporan pengiriman sewaktu-waktu dibutuhkan
akan keberhasilan pengiriman informasi permintaan nilai.
Ramdani (2006) menghasilkan penelitian sebuah sistem informasi
jadwal bioskop berbasis teknologi SMS. Sama seperti penelitian yang
dilakukan wahyuningrum, sistem ini belum memiliki laporan tentang
informasi pengiriman SMS.

39

Lutfi (2008) menghasilkan penelitian aplikasi rute angkutan umum


berbasis SMS. Aplikasi ini tidak memiliki penjadwalan kegiatan rute
angkutan valid. Diperlukan suatu pembuatan penjadwalan untuk meyakinkan
pengguna menggunakan sistem ini untuk keperluan informasi rute angkutan
umum.
Aplikasi SMS Reminder dalam Kalender Akademik UIN Syarif
Hidyatullah Jakarta bersifat sms info. Aplikasi pengiriman sms info
berbentuk pengingat (remind). Pengiriman pesan dapat dilakukan secara
berulang sehingga akan terlihat manfaat remindernya. Pihak yang diberikan
informasi pengingat bersifat pasif dan diharapkan dapat lebih disiplin dalam
menjalankan kegiatan yang akan dilakukan.

40

BAB III
METODOLOGI PENELITIAN

Dalam melakukan Pengembangan Aplikasi SMS Reminder dalam Kalender


Akademik UIN Syarif Hidyatullah Jakarta, penulis menggunakan metode penelitian
sebagai berikut :
3.1. Metode Pengumpulan Data
Metode pengumpulan data dalam pengembangan aplikasi ini terbagi
menjadi beberapa tahap sebagai berikut :
1. Wawancara
Dalam hal ini, penulis melakukan wawancara (interview) langsung dengan
pihak PUSKOM (Pusat Komunikasi) yang mengatur kegiatan akademik UIN
Syarif Hidyatullah.
2. Observasi
Dalam hal ini, penulis melakukan pengamatan langsung kegiatan akademik
yang sedang berjalan di PUSKOM (Pusat Komunikasi) berupa sistem AIS
(Academic Information System), Kantor di lantai dasar Fakultas Syariah.
Penulis mengamati bagaimana Sistem penjadwalan kegiatan akademik UIN
Syarif Hidyatullah Jakarta dan cara penyampaian informasi kepada pihak
yang diberikan informasi.

41

3. Studi Pustaka
Dalam hal ini, penulis melakukan penelaahan atas buku-buku yang
berhubungan dengan judul penulisan skripsi.

3.2. Metode Pengembangan Sistem


Seperti yang disebutkan dalam bab sebelumnya, metode pengembangan
sistem yang digunakan penulis adalah metode RAD dengan proses tahapan fase
perencanaan syarat-syarat, fase perancangan, fase konstruksi, dan fase
pelaksanaan, seperti digambarkan kembali pada Gambar 3.1.

Gambar 3.1 Tahapan RAD


(Kendall & Kendall, 2003: 238)

3.2.1. Fase Perencanaan Syarat-syarat


Menggabungkan laporan hasil metode pengumpulan data berupa
ringkasan kebijakan pemakai menjadi spesifikasi yang terstruktur dengan
menggunakan pemodelan yang berfungsi untuk mengetahui kebutuhan
pemakai, kekurangan-kekurangan dalam sistem yang sedang berjalan
seperti kinerja sistem yang masih manual sehingga aliran data kurang
baik. Dari hasil pengumpulan data terhadap cutomer/user dapat ditetapkan

42

tujuan perancangan, pengajuan usulan otomasi apa yang sebaiknya


dilakukan dalam pengembangan sistem SMS Reminder dalam Kalender
Akademik Universitas. Tahap yang dilakukan antara lain :
1. Gambaran Umum Organisasi, yang bertujuan untuk mempelajari
uraian dari tugas-tugas masing-masing jabatan yang berkaitan
dengan sistem yang akan diusulkan.
2. Diagram Alir Data (flowchart) sistem yang sedang berjalan pada
PUSKOM berupa AIS (Academic Information System), bertujuan
untuk lebih mudah mengetahui kekurangan atau kendala-kendala
dari sistem yang ada atau sistem yang berjalan tersebut.
3. Identifikasi Masalah / Analisa masalah
Identifikasi masalah atau analisa masalah bertujuan untuk
mengetahui masalah-masalah yang ada, yang berkaitan dengan
sistem yang diusulkan.
4. Pemecahan Masalah
Merupakan usulan penyelesaian dari permasalahan-permasalahan
yang ditemukan pada sistem AIS.

3.2.2. Fase Perancangan


Setelah didapat laporan dan gambaran tentang kekurangan dan
penyelesaian masalah pada sistem yang sedang berjalan, tahap selanjutnya

43

adalah mendesain sistem yang diusulkan agar dapat berjalan lebih baik
dan diharapkan dapat mengatasi permasalahan yang ada.
Penerapan model yang diinginkan pemakai. Tahapan yang dilakukan
adalah :
1. Tahap analisis sistem dengan menggunakan Data Flow Diagram
(DFD), alasannya adalah untuk lebih memahami langkah awal
membangun sistem secara fisik.
2. Tahap perancangan Basis Data dilakukan menggunakan Entity
Relationship Diagram (ERD) yang menggambarkan hubungan
antar entity yang ada pada DFD, dan spesifikasi tabel.
3. Tahap perancangan Input-Output, dengan membuat rancangan
layar tampilan. Setelah rancangan layar tampilan terbentuk maka
dilakukan tahap konstruksi.
4. Sebagaimana format yang disetujui oleh user pembuat diagram
dengan Stade Transition Diagram (STD)

3.2.3. Fase Konstruksi


Tahap mempresentasikan hasil perancangan kedalam program. Tahap
ini penulis mengimplmentasikan rancangan basis data ke bahasa komputer
yaitu MYSQL dan koding program PHP.

44

3.2.4. Fase Pelaksanaan


Pada tahap ini dilakukan pengujian aplikasi dengan menggunakan
pengujian black-box.

Gambar 3.2 Ilustrasi Metodologi Penelitian Pengembangan


Aplikasi SMS Reminder dalam Kalender Akademik UIN Syarif
Hidyatullah Jakarta

45

BAB IV
HASIL DAN PEMBAHASAN

4.1. Latar Belakang PUSKOM (Pusat Komunikasi) UIN Syarif Hidyatullah


Jakarta
Kehadiran sistem informasi akademik diperguruan tinggi merupakan
suatu hal yang sangat diperlukan, terlebih pada era teknologi informasi dan
perkembangan informasi saat ini. PUSKOM berdiri untuk menangani
kegiatan akadmik UIN Syarif Hidyatullah Jakarta. Pada tahun 2006,
Universitas Islam Negeri Syarif Hidyatullah Jakarta melalui PUSKOM
secara efektif telah memiliki dan mengaplikasikan teknologi informasi
melalui sistem jaringan yang disebut sistem informasi perguruan tinggi atau
simperti. Namun, dalam perkembangannya sistem tersebut belum berjalan
optimal. Pada tahun 2009, simperti diubah menjadi Sistem Informasi
Akademik (Academic Information System/AIS).
a. Visi dan Misi PUSKOM
Berikut dijelaskan Visi dan Misi dari PUSKOM :
(http://www.uinjkt.ac.id/index.php/categoryblog/1843pengembangan -ais-perlu-dukungan-semua-pihak-.html).
Visi
Visi dibentuknya Sistem Informasi Akademik UIN Syarif
Hidyatullah Jakarta adalah membentuk suatu sistem informasi

akademik yang tertata dengan baik untuk menghasilkan kegiatan


akademik yang cepat dan fleksibel. Memanfaatkan perkembangan
teknologi informasi untuk lebih meningkatkan waktu kinerja dan
memberikan kemudahan dalam penggunaan, sehingga dapat
membantu mahasiswa dan aparatur akademik dalam menjalankan
kegiatannya.
Misi
Misi dari PUSKOM adalah :
1. Membentuk

Sistem

Informasi

Akademik

dengan

memanfaatkan perkembangan teknologi informasi kearah yang


positif.
2. Menjadikan mahasiswa lebih peka terhadap kegiatan akademik
kampus dengan pemberian informasi baik yang ditempel
dimading maupun pada website.
3. Memberikan kemudahan bagi mahasiswa, dosen dan aparatur
kegiatan perkuliahan dalam menjalankan kegiatan perkuliahan.
4. Sistem AIS memiliki Motto SMILE (Smart, Innovation,
Learning, Education) sebagai Center Live Operational.

4.2. Analisa Hasil Pengumpulan Data


Pengumpulan data yang penulis lakukan dalam penulisan skripsi ini
diperoleh melalui wawancara, observasi dan studi pustaka. Setelah

mendapatkan data, maka dilakukan analisis atas wawancara dan observasi.


Berikut ini adalah penjelasan hasil pengumpulan data tersebut :
4.2.1. Wawancara
Wawancara dilakukan dengan pegawai PUSKOM, sebagai unit
yang menangani bidang teknologi informasi di Universitas Islam
Negeri Syarif Hidyatullah Jakarta pada tanggal 21 september 2010
kantor Pusat Komunikasi (PUSKOM) bertepat dilantai dasar fakultas
syariah. Tujuan penulis melakukan wawancara adalah untuk
mendapatkan gambaran umum sistem yang sedang berjalan dan
mengambil kesimpulan atas kinerja sistem. Berikut kesimpulan
wawancara yang dilakukan :
1. PUSKOM melalui AIS telah memiliki Sistem Informasi
Penjadwalan Akademik sudah berjalan dengan baik. Masukkan
data jadwal dari para admin tiap fakultas mudah dilakukan.
Akan tetapi pembagian kalender untuk tiap fakultas dan jurusan
masih kurang baik. data kadang terkumpul pada satu kalender,
sehingga terlihat kurang rapih karena kurangnya pembeda
antara kalender setiap fakultas dan jurusan.
2. Penyampaian informasi dilakukan melalui jaringan internet
(situs AIS sendiri) dan email apabila diinginkan oleh pihak
pembuat jadwal.

4.2.2. Observasi
Observasi dilaksanakan oleh penulis menggunakan pengamatan
secara langsung, berlokasi dilantai dasar Fakultas Syariah, kantor Pusat
Komunikasi (PUSKOM) UIN Syarif Hidyatullah. Observasi dilakukan
pada penggunaan sistem penjadwalan akademik pada AIS.
Hasil yang didapat dari observasi antara lain :
a. Inputan data jadwal kegiatan dilakukan oleh admin setiap
fakultas, dan jurusan. Data

diinput

melalui

sistem

informasi AIS, dengan proses login, menu pendataan dan


utility, dan menu pendataan pengumuman akademis.
b. Pengumuman

jadwal

kegiatan

dilakukan

melalui

pengumuman dari situs AIS di internet, dan melalui email


pihak yang akan diberikan pengumuman.

4.3. Fase Perancanaan Syarat-syarat


4.3.1. Definisi Lingkup Kegiatan
Dalam pengamatan yang penulis lakukan dilapangan didapatkan
bahwa sistem yang penulis buat ini masih dalam masa pengembangan
pada AIS. Berdasarkan hasil wawancara dengan Kepala Bagian
PUSKOM, berikut scope kegiatan yang coba penulis gambarkan pada
ilustrasi berikut :

Gambar 4.1. Ilustrasi Pengembangan Aplikasi SMS Reminder


Keterangan Ilustrasi Pengembangan Aplikasi SMS Reminder :
a. Keterangan warna
: Pemberitahuan informasi yang telah tersedia
: Pemberitahuan informasi yang belum tersedia
b. Keterangan angka
1

: Website AIS

: Email

: Teknologi SMS yang diusulkan

Penelitian pengembangan sistem yang dilakukan lebih difokuskan


kepada pembuatan Kalender Akademik yang lebih dinamis dan
pengiriman informasi melalui SMS yang diusulkan. Pengembangan
sistem ini mengatur struktur penggunaan kalender yang lebih dinamis
dalam proses pengolahan data dan strata user yang dapat mengelola

kalender. Aplikasi kalender dirancang sedemikian rupa untuk dapat


menampung banyak user dengan pembagian kalender yang dapat
dibedakan user pengelolanya. Aktivitas bagi kalender dapat dilakukan
sehingga tampilan kalender dapat dilihat secara baik dan terstruktur.
Usulan cara penyampaian informasi melalui teknologi SMS
diharapkan dapat menyampaikan informasi kesemua pihak terutama
mahasiswa yang masih dianggap kurang memperoleh informasi terbaru
dari pihak akademik.

4.3.2. Analisa Sistem yang sedang berjalan


Analisa yang dilakukan pada Sistem AIS (Academic Information
System) yang sedang berjalan. Alur kerja dari sistem yang sedang
berjalan dilakukan dengan tahap sebagai berikut (lihat Gambar 4.2) :
1. Bentuk kalender akademik Universitas Islam Negeri Syarif
Hidyatullah Jakarta diambil contoh Fakultas Kedokteran.

Gambar 4.2. Contoh Kalender Akademik


2. Data yang dikelola berupa data jadwal kegiatan yang berisi
tema kegiatan, jadwal waktu dan tempat kegiatan, pembagian
jenis kegiatan baik berupa subjek (pihak yang melakukan)
maupun objek (jenis kegiatan berdasarkan pihak yang
melakukan).
3. Admin Pusat, Fakultas dan jurusannya melakukan input data
jadwal kegaitan akademik dan perkuliahan.

4. Admin PUSKOM menerima data dan menampilkannya pada


website AIS atau data akan dikirim melalui email kepada pihak
yang dikenai pekerjaan atau memiliki kepentingan terhadap
jadwal kegiatan yang telah dibuat.
5. Dosen, mahasiswa dan karyawan dapat melihat informasi
jadwal kegiatan melalui website AIS, atau menerima informasi
melalui email yang dikirim oleh pihak PUSKOM.

Berikut dijelaskan Bagan alir (Flowchart) alur sistem yang sedang


berjalan.

Gambar 4.3. Bagan alir (Flowchart) sistem yang sedang


berjalan

Setiap bagian memiliki masing-masing aktivitas. Untuk admin


pusat, admin fakultas dan jurusan melakukan aksi input data jadwal
kegiatan yang diprogramkan baik selama satu semester maupun jangka
satu tahun atau dua semester. Jadwal kegiatan berbentuk jangka waktu
jalannya kegiatan, keterangan kegiatan, dan ditujukan kepada pihak
siapa saja yang dikenai kegiatan. Input data dilakukan dengan cara
admin fakultas melakukan proses login dalam website AIS, masuk
kebagian pendataan dan utility, pendataan pengumuman akademis.
Disana sudah disediakan kalender kegiatan yang dapat di-input oleh
admin fakultas dan jurusan.
Admin PUSKOM melakukan proses data dalam hal penyimpanan
data, upload data ke website AIS, atau pengiriman data ke pihak yang
dikenai kegiatan melalui email pihak yang bersangkutan.
Dosen, mahasiswa, karyawan atau pegawai dapat melihat
pengumuman kegiatan yang telah tertera di website AIS. Dalam lain
hal, dosen atau karyawan dapat dikirim informasi jadwal kegiatan
apabila diminta oleh pihak admin fakultas atau jurusan. Sebagai
contoh, dalam pengiriman informasi rapat dosen, rapat karyawan dan
kegiatan lain sebagainya.

4.3.3. Kelemahan Sistem yang sedang berjalan


Berdasarkan flowchart sistem yang sedang berjalan, didapat
kelemahan dari sistem yang sedang berjalan. Kelemahannya sebagai
berikut :
1. Saat ini layanan yang diberikan oleh AIS yaitu layanan
kalender akademik dengan proses tingkatan user yang belum
terstruktur. Belum adanya pembagian kemampuan pengelolaan
kalender dalam setiap admin peng-input data. Hal ini dianggap
kurang efektif digunakan dalam bentuk keorganisasian kampus.
2. Informasi jadwal kegiatan dilakukan melalui website dan
pengiriman informasi dilakukan melalui electronic mail atau
email. Hal ini dianggap kurang efektif karena belum tentu
setiap pihak yang akan diinformasikan memiliki akses internet
yang baik. Jadi akan sulit untuk mengalirkan informasi jika
setiap pihak penerima informasi kurang aktif dalam mencari
informasi wacana kegiatan.
3. Masih adanya pihak yang buta akan teknologi informasi
menjadi kendala sistem informasi jadwal akademik ini.

4.3.4. Tujuan
Merancang aplikasi kalender kegiatan dengan menyertakan
tingkat

kemampuan

pengelolaan

tiap

admin/user

yang

dapat

dibedakan. Memberikan aplikasi pengingat (reminder) via sms yang

dianggap sesuai dalam mengalirkan informasi kepada pihak penerima


informasi.

4.3.5. Syarat-syarat
Syarat-syarat dalam pengembangan aplikasi SMS Reminder
dalam Kalender Akademik Kampus meliputi hal-hal sebagai berikut :
a. Web server
Web server merupakan syarat mutlak suatu aplikasi berbasis
web. Web server merupakan platform untuk menjalankan suatu
aplikasi berbasis web. Dalam pengembangan aplikasi ini
penulis menggunakan Web server Apache.
b. Bahasa pemrograman PHP
Pemrograman web juga dibutuhkan untuk dapat membangun
sebuah aplikasi berbasis web, untuk bisa melakukan berbagai
operasi dan fungsi pada halaman web maka dibutuhkan suatu
bahasa pemrograman web dinamis yang berupa server-side
programming. Bahasa pemrograman yang digunakan oleh
penulis adalah PHP dan untuk mengolah databasenya
menggunakan MySQL.
c. Supercali Calender
Supercali Calender merupakan framework yang dibutuhkan
dalam pembuatan struktur kalender dengan strata penggunaan
user yang dimilikinya. Supercali Calender juga sesuai dengan

bentuk kalender organisasi sehingga sangat tepat apabila


digunakan untuk membentuk kalender akademik Universitas.
Penulis Menggunakan framework Supercali Calender update
terbaru yaitu supercali-1.0.7.
d. Aplikasi Gammu
Aplikasi Gammu akan membentuk gateway mengirim pesan
kepada pihak yang akan diberikan informasi dengan perintah
AT Command untuk menjalankan komunikasi serial port pada
handphone yang akan dijadikan server. Penulis menggunakan
Gammu-win32 dan handphone Nokia Seri 6630.

4.3.6. Analisa Permasalahan


Setelah melakukan survey dan observasi pada AIS maka dapat
diidentifikasi

kekurangan

sistem

yang

sedang

berjalan

yang

digambarkan dalam tabel Cause and Effect sebagai berikut:


Tabel 4.1 Cause-and-Effect Analysis
Cause and Effect
Permasalahan

Cause and Effect

Sistem informasi jadwal tiap fakultas


masih bersifat manual.

Pengumuman kegiatan di fakultas masih


dalam bentuk papan pengumuman yang
dianggap kurang efektif bagi pihak
penerima informasi.

Tingatan hak pengelolaan kalender AIS


belum tertata dengan baik.

Tiap fakultas dan jurusan memiliki hak


yang sama dalam membentuk jadwal
kegiatan sendiri tanpa ada strata keorganisasian kampus.

Proses pengiriman informasi masih


bersifat manual.

Pengiriman informasi jadwal kegiatan


dilakukan melalui jaringan web dan email

yang dianggap kurang efektif untuk


menjangkau setiap pihak penerima
infromasi.
Aliran informasi kurang efektif untuk
mencapai keseluruhan pihak penerima
infromasi.

Belum semua pihak penerima informasi


yang memiliki pengetahuan tentang
teknologi informasi.

4.3.7. Solusi Permasalahan


Dengan melihat kendala pada sistem yang telah ada, maka
dibutuhkan suatu media yang dapat mengurangi permasalahan tersebut
dan menjadikan kinerja Sistem AIS dapat berjalan lebih baik dan
bermanfaat. Oleh karena itu penulis mengusulkan perancangan suatu
Sistem Kalender Akademik dengan penggunaan teknologi Reminder
(pengingat) yang ditopang dengan bentuk Aplikasi Kalender
Universitas dengan strata ke-organisaisan untuk lebih menguatkan
sistem kalender kegiatan akademik Universitas. Pengiriman informasi
dalam bentuk pengingat dilakukan melalui jaringan selular via SMS,
karena dilihat dari penggunaan telepon selular yang sudah merambah
keseluruh pihak penerima informasi, sehingga aliran informasi dapat
berjalan dengan baik dan menghasilkan kegiatan yang baik pula.
Pembuatan

Aplikasi

Kalender

Kampus

dibentuk

berdasarkan

klasifikasi user pengguna sistem, klasifikasi pihak penerima informasi,


dan setting module kalender yang menjadikan penggunaan kalender
lebih dinamis.

4.3.8. Analisa Kebutuhan


Analisa Kebutuhan Aplikasi SMS Reminder ini adalah :
1. Bagi pihak PUSKOM.
Aplikasi ini diharapkan dapat memberikan kemudahan bagi
administrator

sistem

AIS

dalam

hal

pembagian

hak

penggunaan aplikasi dan mengurangi permasalahan yang


dihadapi pada sistem penjadwalan akademik.
2. Akademik Pusat, Fakultas, Jurusan.
Aplikasi ini dapat memberikan kemudahan kepada pihak
akademik Pusat, Fakultas, dan Jurusan untuk memasukkan
jadwal kegiatan yang terintegrasi sehingga dapat menghindari
tabrakan jadwal kegiatan antara akademik Pusat, Fakultas, dan
Jurusan.
3. Pihak diberikan pengingat (Dosen, Mahasiswa, Pegawai
kampus dan pihak akademik).
Aplikasi ini diharapkan dapat melakukan pengiriman informasi
secara cepat dan tepat mengenai jadwal kegiatan, tempat,
tujuan, dan pihak siapa saja yang menjalankan kegiatan. Dan
aplikasi ini diharapkan dapat membantu pihak yang diberikan
pengingat untuk lebih meningkatkan kedisiplinan dengan
informasi berbentuk pengingat ini.

4.3.9. Konfigurasi Komputer yang Diusulkan


Dalam

perancangan

aplikasi

multiuser

yang

terintegrasi

diperlukan dua komponen utama, diantaranya :


1. Software, meliputi pemilihan aplikasi perangkat lunak yang
digunakan dalam pengembangan sistem yaitu diantaranya :
a. Web

browser

digunakan

sebagai

antarmuka

dalam

pengembangan aplikasi berbasis web.


b. Web server digunakan untuk pengembangan aplikasi
berbasis web yang dapat melayani permintaan dari klien
melalui web browser.
c. Database digunakan sebagai tempat penyimpanan data.
d. Bahasa pemrograman yang dapat menghubungkan aplikasi
database dengan server.
e. Framework pembentuk aplikasi kalender.
f. Bahasa pemrograman untuk menjalankan aplikasi gammu
untuk sms Gateway.
Spesifikasi untuk perangkat lunak diantaranya :
a. Sistem Operasi Windows XP/7.
b. Apache HTTP Server Versi 1.6.4.
c. PHP versi 3 sampai 5.0.2.
d. MySQL versi 1.3 sampai dengan 5.0
e. Web browser Mozilla firefox.
f. Supercali-1.0.7.

g. Gammu win32 for windows.

2. Hardware, meliputi pemilihan perangkat keras yang digunakan


sebagai alat pendukung pengembangan aplikasi diantaranya :
a. Bentuk fisik komputer digunakan sebagai alat input/output
dalam pengembangan aplikasi.
b. Topologi

dan

arsitektur

jaringan

digunakan

untuk

mengintegrasikan data dalam pengembangan aplikasi.

Spesifikasi untuk perangkat keras diantaranya sebagai berikut :


a. Processor minimal Pentium II 233 Mhz keatas .
b. RAM/Memory minimal 64 Mb.
c. Monitor dengan resolusi sampai 800 x 600.
d. Keyboard dan mouse sejenis serial, PS/2, maupun USB.
e. Modem Handphone GSM, peneliti menggunakan nokia
6630.
f. Teknologi jaringan berupa internet atau LAN.

Menu aplikasi yang ditawarkan yaitu :


a. Menu Add event : menu yang digunakan untuk menmbah
jadwal kegiatan dengan input-an tema kegiatan, group,
bentuk input-an (post (langsung ditempatkan)/propose

(hanya diajukan)), kategori (jabatan), waktu kegiatan, dan


keterangan kegiatan.
b. Menu User : menu yang digunakan untuk mengatur hak
akses user.
c. Menu Profil : merupakan perkembangan dari pengaturan
menu user. Apabila user yang dibuat diberi hak untuk dapat
melakukan aksi user, maka user ini memiliki menu User.
Apabila tidak, user akan diberikan menu profil untuk
mengetahui hak akses terhadap dirinya sendiri.
d. Menu Modules : menu untuk menggunakan modul kalender
(year, month, week, day, quarter, upcoming)
e. Menu Groups : menu yang digunakan untuk melakukan aksi
pada group.
f. Menu Categories : menu yang digunakan untuk melakukan
aksi pada categories.
g. Menu member : menu yang digunakan untuk melakukan
aksi pada user.
Dalam pengaturan user, Aplikasi Kalender Akademik memiliki
hak akses untuk; view calender, input event, edit categories/member,
edit groups, edit user. Dalam kategori akses memiliki pengaturan
untuk view, post, dan moderate (kemampuan pemilihan kategori pada
kalender lain) pada kategori. Dalam group akses memiliki pengaturan
untuk view, propose (kemampuan pengajuan jadwal kegiatan), dan full

access (untuk kemampuan penuh)

terhadap group. Category dan

member berupa data kategory jabatan dan data lengkap pihak atau
anggota penerima informasi. Groups berupa data fakultas dan jurusan.
Berikut dijelaskan strata user yang dirancang atau diatur oleh
penulis untuk disesuaikan dalam keorganisasian Universitas Islam
Negeri Syarif Hidyatullah Jakarta :
1. Admin PUSKOM
a. Memiliki

menu

add

event,

module,

users,

groups,

categories, member.
b. View, Input, edit dan delete jadwal event ke kalender
akademik Pusat, semua fakultas dan jurusannya.
c. View, Input, edit, delete, dan setting data user yang akan
mengelola kalender. Hal ini berdasarkan strata kedudukan
organisasi UIN Syarif Hidyatullah.
d. View, Input, edit dan delete semua group (groups).
e. View, Input, edit dan delete semua kategori (categories).
f. View, Input, edit dan delete semua anggota (member)
berdasarkan group (groups).

2. Admin Pusat
a. Memiliki menu add event, profil, groups, categories,
member.

b. View, Input, edit dan delete jadwal event ke kalender


akademik Pusat, semua fakultas dan jurusannya.
c. View, Input, edit dan delete semua group (groups).
d. View, Input, edit dan delete semua kategori (categories).
e. View, Input, edit dan delete semua anggota (member)
berdasarkan group (groups).
3. Admin Fakultas
a. Memiliki menu add event, profil, categories, member.
b. View, Input, edit dan delete jadwal event ke kalender
fakultas dan jurusannya.
c. Propose event ke kalender akademik pusat.
d. View, Input, edit dan delete semua kategori (categories).
e. View, Input, edit dan delete anggota (member) berdasarkan
fakultasnya.
4. Admin Jurusan
a. Memiliki menu add event, profil, categories, member.
b. View, Input, edit dan delete jadwal event ke kalender
jurusannya.
c. Propose event ke kalender akademik fakultas.
d. View, Input, edit dan delete semua kategori (categories).
e. View anggota (member) berdasarkan fakultasnya.

5. Public User (dosen, mahasiswa, dan pegawai atau karyawan


kampus)
a. View semua jadwal kegiatan pada kalender akademik pusat,
fakultas dan jurusan.

4.4. Fase Perancangan


4.4.1. Desain alur Sistem yang Diusulkan
Desain alur sistem yang diusulkan dijelaskan pada gambar 4.3.
dan 4.4. dibawah ini :

Gambar 4.4. Alur Proses Bisnis Setting User Oleh Admin


PUSKOM yang diusulkan

Gambar 4.5. Alur Proses Bisnis Input Jadwal Akademik yang


diusulkan
Dari alur sistem yang diusulkan dapat dijelaskan sebagai berikut :
1. Gambar 4.3.
Karena sistem yang dikembangkan digunakan untuk aktifitas
akademik Universitas, maka diperlukan strata keorganisasian
dengan membuat pengaturan untuk pengguna.
Super Admin (admin yang dapat mengelola penuh sistem)
mengatur (setting) hak aksi Sub Admin atau User
Akun User (Username/Pasword) : berdasarkan permintaan
admin pusat, fakultas dan jurusannya.

Hak istimewa (privilege) : view kalender, post events, edit


category/member, edit groups.
Akses kategori (Category Access) : view, post events,
moderate (jangkauan kategori), pada setiap kategori.
Kategori berupa pegawai akademik, mahasiswa, dosen, dan
aparatur perkuliahan.
Akses group (Groups Access) : view, propose (pengajuan)
events, full access (akses penuh), pada setiap group. Group
berupa akademik pusat, semua fakultas kampus beserta
jurusannya.
Data user disimpan kedalam database sistem. Perancangan sistem
seperti ini diharapkan dapat menggambarkan secara garis besar
kegiatan struktur keorganisasian yang sesuai dengan penggunaan
sistem secara tingkatan/strata jabatan dalam suatu organisasi.
2. Gambar 4.4.
Sistem dirancang dengan menggabungkan sistem kalender
(framework supercali calendar) dan SMS Gateway (sebagai sms
reminder).
a. Sistem kalender memvalidasi kemampuan admin/user
dalam pengelolaan kalender
b. Admin secara garis besar dapat melakukan
View, input, delete, edit , approve (penerimaan)/propose
(mengajukan) event kegiatan akademik (dapat dilakukan

pada semua kategori dan group kalender, sesuai


pengaturan super admin).
View, input, delete, edit dan setting group kalender
(admin memiliki menu group, sesuai pengaturan super
admin).
View, input, delete, edit dan setting kategori dan member
kalender (dapat dilakukan pada semua kategori akan
tetapi hanya dapat dilakukan pada member kategori
tertentu yang diatur oleh super admin).
Sending (mengirim) data jadwal kegiatan kepada pihak
penerima informasi berupa member atau data subjek
yang telah di-input kedalam struktur kategori dan
groupnya (dalam kalender dan member tertentu sesuai
pengaturan super admin).
Pembuatan rancangan aplikasi seperti yang dijelaskan pada gambar
4.3. dan 4.4. bertujuan agar sistem informasi ini dapat memiliki strata
ke-organisasian sehingga kegiatan akedemik universitas dapat berjalan
sesuai bentuk organisasi universitas biasanya.

4.4.2.

DFD
Data flow diagram (DFD) merupakan alat perancangan sistem yang
berorientasi pada alur data dengan konsep dekomposisi dapat digunakan
untuk penggambaran analisa maupun rancangan sistem yang mudah

dikomunikasikan oleh profesional sistem kepada pemakai maupun


pembuat program. Perancangan sistem dikembangkan dari framework
supercali calendar dan aplikasi gammu.
4.4.2.1. Terminator/Entitas Luar
Terminator

adalah

entitas

diluar

sistem

yang

berkomunikasi atau berhubungan langsung dengan sistem.


Berikut dijelaskan terminator atau entitas luar dari
pengembangan Aplikasi SMS Reminder dalam Kalender
Akademik UIN Syarif Hidyatullah Jakarta :
1. Super Admin. Dalam aplikasi ini pegawai PUSKOM
menjadi super admin yang mengatur semua kegiatan
kalender akademik dan pengaturan user pengguna
dalam keorgannisasian universitas.
2. Sub Admin. Dalam aplikasi ini pegawai akademik
pusat, fakultas dan jurusan menjadi sub admin yang
mengatur

dan

mengelola

kegiatan

akademik

universitas dan setiap fakultas beserta jurusannya.


3. Public Access (akses publik). Dalam aplikasi ini
disediakan akses publik yang hanya dapat melihat
kegiatan

akademik

universitas.

Akses

publik

disediakan bagi dosen, mahasiswa, dan pegawai atau


karyawan universitas.

4. Customer/pihak penerima informasi berupa pengingat.


Dalam aplikasi ini dosen, mahasiswa dan pegawai
universitas

menjadi

pihak

penerima

informasi

pengingat kegiatan akademik universitas.


4.4.2.2. Komponen Proses
Komponen proses menggambarkan transformasi input
menjadi output. Penamaan proses disesuaikan dengan proses
atau kegiatan yang sedang dilakukan.
Berikut

dijelaskan

proses

yang

dirancang

dari

Pengembangan Aplikasi SMS Reminder dalam Kalender


Akademik UIN Syarif Hidyatullah Jakarta :
1. Proses login.
2. Proses pengaturan admin/user.
3. Proses pengaturan modul.
4. Proses aksi event.
5. Proses aksi group.
6. Proses aksi categories (kategori).
7. Proses aksi member (pihak penerima informasi).
8. Proses pengiriman pesan oleh gammu.
4.4.2.3. Komponen Data Store
Komponen

ini

digunakan

untuk

membuat

model

sekumpulan paket data dan diberi nama dengan kata benda

bersifat jamak. Data store dapat berupa file/database yang


tersimpan dalam disket, hard disk atau bersifat manual.
Berikut dijelaskan Komponen Data Store yang dirancang
dari Pengembangan Aplikasi SMS Reminder dalam Kalender
Akademik UIN Syarif Hidyatullah Jakarta :
1. Data user/admin (data status admin).
2. Data event (tema kegiatan).
3. Data dates (jadwal waktu kegiatan).
4. Data group (data status group).
5. Data categories (data status kategori).
6. Data user_to_groups (hak akses user dalam group)
7. Data

user_to_categoies

(hak

akses

user

dalam

kategori).
8. Data modules (modul kalender).
9. Data member (pihak penerima informasi).
10. Data Outbox (jadwal pengiriman SMS reminder).
11. Data sentitem (laporan pengiriman SMS).
4.4.2.4. Komponen Alur Data
Alur data digunakan untuk menerangkan perpindahan data
atau paket data dari satu bagian ke bagian lainnya.
Berikut dijelaskan Komponen alur Data yang dirancang
dari Pengembangan Aplikasi SMS Reminder dalam Kalender
Akademik UIN Syarif Hidyatullah Jakarta :

1. Alur data pada proses login.

Gambar 4.6. Alur Data Proses Login


Penjelasan :
1. Admin/User melakukan login melalui form
login yang telah disediakan sistem.
2. Sistem cek validasi atas admin/user dengan
mengambil data dari table user (data username
dan password).
3. Sistem cek hak akses user terhadap group dan
kategori

dengan

mengambil

data

user_to_groups dan user_to_category.

2. Alur data pada proses pengaturan admin/user.

Gambar 4.7. Alur Data Proses Pengaturan


Admin/User

dari

Penjelasan :
1. Super Admin melakukan pengaturan user
melalui form setting admin/user.
2. Pengaturan username (nama user), password
(password

user),

view

calendar

(melihat

kalender), post events (memasukkan jadwal),


edit groups, edit categories/links, edit users
akan disimpan kedalam data user.
3. Pengaturan akses terhadap group, seperti view
(dapat melihat group yang ada), propose (dapat
mengajukan jadwal ke kalender tetangga), full
access (akses penuh terhadap group yang ada).
Pengaturan

akan

disimpan

ke

data

user_to_groups.
4. Pengaturan akses terhadap kategori, seperti view
(dapat melihat kategori yang ada), post (dapat
memasukkan data kedalam kategori yang ada),
moderate (kemampuan masukkan data/pilihan
kategori dalam form event). Pengaturan akan
disimpan kedalam data user_to_categories.

3. Alur data pada proses pengaturan modul.

Gambar 4.8. Alur Data Proses Pengaturan Module


Penjelasan :
1. Super Admin mengatur penggunaan modul
kalender melalui form module.
2. Data pengaturan modul disimpan ke dalam data
module.

4. Alur data pada proses aksi event (penjadwalan


kalender).

Gambar 4.9. Alur Data Proses Aksi Events


Penjelasan :
1. Admin/user memasukkan data jadwal kegiatan
melalui form add event.

2. Form event menyediakan pilihan data group dan


kategori dengan mengambil data yang sudah ada
dalam data groups dan data categories yang.
3. data seluruh events/jadwal kegiatan (tema,
waktu dan keterangan kegiatan) ditampung
kedalam data events dan data dates.

5. Alur data pada proses aksi group.

Gambar 4.10. Alur Data Proses Aksi Group


Penjelasan :
1. Admin/User memasukkan data group melalui
form groups yang telah disediakan sistem.
2. Data masukkan group akan disimpan kedalam
data groups.

6. Alur data pada proses aksi categories (kategori).

Gambar 4.11. Alur Data Proses Aksi Categories

Penjelasan :
1. Admin/User memasukkan data kategori melalui
form categories yang telah disediakan sistem.
2. Data masukkan kategori akan disimpan kedalam
data categories.

7. Alur data pada proses aksi member (pihak penerima


informasi).

Gambar 4.12. Alur Data Proses Aksi Member


Penjelasan :
1. Admin/User memasukkan data anggota melalui
form members yang telah disediakan sistem.
2. Form members menyediakan data group dan
kategori yang akan dimasukkan pembeda antara
setiap anggota agar dapat mudah diakses.
3. Data anggota yang dimasukkan akan disimpan
kedalam data members.

8. Alur data pada proses aksi mengirim pesan dan melihat


status pesan (send to member/view sending).

Gambar 4.13. Alur Data Proses Aksi mengirim


pesan dan melihat stutus pesan
Penjelasan :
1. Admin/User mengisi form pengiriman pesan
reminder yang telah disediakan sistem.
2. Form sending to member berisi data keterangan
kegiatan

(tema,

jadwal

dan

keterangan

kegiatan), keterangan anggota yang akan dikirim


pesan

pengingat,

serta

jadwal

pengiriman

pengingat. Keterangan kegiatan diambil dari


data events dan data dates, serta data member.
3. Data

jadwal

pengiriman

pesan

pengingat

(reminder) disimpan kedalam data outbox.


4. Admin/User dapat melihat status pengiriman
melalui menu view status send.

5. Form status send berisi data keterangan kegiatan


dan jadwal pengiriman pesan yang diambil dari
tabel sentitem. Status send menunjukkan telah
terkirim apabila data telah masuk ke tabel
sentitem (bekerja dari aplikasi gammu).

9. Alur data pada proses Aplikasi Gammu.

Gambar 4.14. Alur Data Proses Aplikasi Gammu


Penjelasan :
1. Customer (Mahasiswa, Dosen dan Pegawai)
menerima pesan pengingat berupa keterangan
kegaitan yang diambil dari data outbox oleh
aplikasi gammu.
2. Aplikasi Gammu mengirim pesan yang ada pada
data outbox.
3. Data keterangan kegiatan akan disimpan ke data
sentitem

oleh

aplikasi

gammu,

menunjukkan status pengiriman pesan.


Keterangan :

Aliran Data

dengan

Admin/User : merupakan Super Admin dan Sub


Admin.
4.4.2.5. Pengambaran DFD
Data Flow Diagram (DFD) adalah alat pembuatan model
yang

memungkinkan

menggambarkan

sistem

profesional
sebagai

suatu

sistem

untuk

jaringan

proses

fungsional yang dihubungkan satu sama lain dengan alur data,


baik secara manual maupun komputerisasi.
Tidak ada aturan baku dalam penggambaran DFD. Tapi
dari

referensi

yang

ada

secara

garis

besar

langkah

penggambaran DFD sebagai berikut :


4.4.2.5.1. Diagram Context
Diagram ini adalah diagram level tertinggi dari
DFD yang menggambarkan hubungan sistem
dengan lingkungan luarnya. Berikut digambarkan
diagram context sistem yang akan dikembangkan :

Gambar 4.15. Diagram Context


Penjelasan :
1. Terminator atau entitas luar berupa Super
Admin (admin PUSKOM), Sub Admin
(Admin pusat, fakultas, dan jurusan) dan
customer (mahasiswa, dosen, dan karyawan).
2. Admin Pusat dapat mengelola keseluruhan
fungsi kalender dan melakukan pengaturan
penggunaan kalender bagi sub admin.
3. Sub Admin melakukan aksi penjadwalan
kalender

sesuai

hak

akses

yang

telah

diberikan.
4. Customer

menerima

informasi

berupa

pengingat dari admin-admin yang melakukan


pengiriman pesan pengingat dari sistem.

Customer juga dapat melihat isi seluruh


kalender sesuai kebutuhan. Akan tetapi
customer tidak diberi hak untuk melakukan
aksi ke kalender (hanya sebagai public
access).
4.4.2.5.2. Diagram Level Zero
Diagram ini adalah dekomposisi dari diagram
context. Berikut digambarkan diagram level zero
pengembangan Aplikasi SMS Reminder dalam
Akademik yang akan dikembangkan pada diagram
context :

Gambar 4.16. Diagram Level Zero

Penjelasan :
Proses

Aplikasi

SMS

Reminder

dalam

Akademik dibagi kedalam tiga garis besar :


1. Proses Login Admin/User sebagai proses
keamanan sistem.
2. Proses aksi Admin/User terhadap kalender
(aksi insert, update, delete terhadap akses
menu yang diberikan pada sistem).
3. Proses pengiriman SMS pengingat kepada
customer oleh aplikasi gammu.
4.4.2.5.3. Diagram Level Satu
Diagram ini merupakan dekomposisi dari
diagram level zero, dekomposisi dari proses
Aplikasi

SMS

Reminder

dalam

Kalender

Akademik. Berikut digambarkan diagram level satu


pengembangan dari proses aksi kalender sistem
yang akan dikembangkan :

Gambar 4.17. Diagram Level Satu


Penjelasan :
1. Gambar 4.16. merupakan pengembangan dari
proses aksi ke kalender pada gambar 4.15..
2. Penggambaran menjelaskan penyimpulan dari
komponen proses, komponen data store dan
komponen alur data yang telah dijelaskan
sebelumnya.

4.4.3.

ERD
Entity Relationship Diagram (ERD) adalah suatu penyajian data
dengan menggunakan Entity dan Relationship. Berikut akan
digambarkan bentuk Conceptual Data Model (CDM) ERD Aplikasi
SMS Reminder dalam Kalender Akademik Universitas :

Gambar 4.18. Conceptual Data Model (CDM) ERD


Pengembangan sistem dilakukan dengan menggabungkan Sistem
kalender dan aplikasi gammu (SMS Gateway).
Penjelasan :
1. Kegiatan

dalam

Sistem

kalender

(pengembangan

dari

framework supercali calender).


a. Admin/User (dalam hal ini Super Admin) mengontrol
admin-admin lain dalam hal (view calendar, post event, edit
groups, edit categories/member, dan edit user).
b. Admin/User (dalam hal ini Super Admin atau Sub Admin
yang telah diatur oleh Super Admin) melakukan proses aksi
terhadap data user, group, categories, members, events, dan
send massage (reminder) to member.

c. Super Admin (admin yang diberi hak melakukan aksi


terhadap Admin/User) mengatur hak akses admin/user.
Data pengaturan disimpan kedalam data user_to_groups
(pengaturan

akses

setiap

group),

dan

data

user_to_categories (pengaturan akses kategori).


d. Data user_to_groups mempunyai banyak data user, group
dan hak akses terhadap group (propose).
e. Data user_to_categoris mempunyai banyak data user,
categories dan hak akses terhadap kategori (moderate).
f. Untuk aksi terhadap event, dibutuhkan data groups dan
categories

untuk

memudahkan

pengguna

dalam

mengelompokkan event pada kalender.


g. Untuk aksi terhadap member, dibutuhkan data groups dan
categories

untuk

memudahkan

pengguna

dalam

mengelompokkan member.
h. Untuk

aksi

terhadap

pengiriman

pesan

pengingat,

dibutuhkan data event dan member untuk memudahkan


pengguna dalam menetapkan jadwal pengiriman pesan
pengingat dan kepada anggota mana saja.

2. Kegiatan dalam Aplikasi Gammu.


Gammu merupakan aplikasi SMS Gateway dapat digabungkan
dengan bahasa pemrograman apapun sebagai interface

penggunaanya. Gammu telah menyediakan database sendiri


yang dapat digunakan untuk melakukan proses SMS Gateway.
penulis menggunakan aplikasi ini untuk pengiriman pesan.
Berikut dijelaskan hubungan aplikasi gammu dengan sistem
kalender :
a. Data sending massage to member melalui sistem kalender
akan disimpan kedalam salah satu database gammu yaitu
data outbox yang akan diproses untuk dikirim melalui SMS
ke pihak penerima informasi/customer.
b. Gammu secara otomatis melakukan back up data kedalam
data sentitem. Penulis menggunakan data sentitem sebagai
status pengiriman pesan.

4.4.3.1. Entity
Berikut dijelaskan Entitas dan atributnya dalam Aplikasi
SMS Reminder dalam Kalender Akademik Universitas
sebagai pengembangan komponen data store pada DFD dan
pembentuk

database

sistem.

Penulis

menggabungkan

database supercali calendar dengan database gammu.


Entity supercali calendar.
1. Data Admin/User.
a. user_id (primary_key tabel user).
b. password (password user).

c. temp_password (password yang telah dienkripsi untuk


keamanan user).
d. email (alamat email user).
e. view (id hak akses user untuk melihat isi kalender).
f. post (id hak akses user untuk memasukkan data
penjadwalan kalender).
g. add_user (id hak akses user untuk menambah user
dalam pengelolaan kalender).
h. add_categories (id hak akses user untuk menambah
kategori dalam kalender).
i. add_groups (id hak akses user untuk menambah group
dalam kalender).

2. Data events (data keterangan kegiatan).


a. event_id (primary_key tabel event).
b. Title (tema kegaitan).
c. Description (keterangan kegiatan).
d. category_id (foreign key category_id dari tabel
categories, penunjuk kategori posisi kegiatan).
e. user_id (foreign key user_id dari tabel user, penunjuk
subjek pembuat kegiatan).
f. group_id (foreign key group_id dari tabel groups,
penunjuk group posisi kegiatan).

g. status_id (id status masukkan, berupa masukkan


secara langsung (post), atau masukkan secara
pengajuan (propose) ke kalender tetangga).
h. stamp (jadwal inputan data terkini pada database
dalam bentuk tanggal dan jam).
i. quick_approve

(waktu

penerimaan

penjadwalan

kegiatan dalam bentuk pengajuan (propose)).

3. Data dates (jadwal kegiatan).


a. event_id (foreign key dari data events).
b. date (jadwal mulai kegiatan yang dibuat, dalam
bentuk tanggal dan jam kegiatan).
c. end_date (jadwal berakhir kegiatan, dalam bentuk
tanggal dan jam kegaitan)

4. Data groups.
a. group_id (primary key dari data group).
b. name (nama group).
c. sub_of (relasi ke tabel user_to_groups, digunakan
untuk hak akses group oleh user).
d. sequence (posisi group pada tampilan data group).

5. Data categories (kategori).


a. category_id (primary key dari data kategori).
b. name (nama kategori).
c. sub_of (relasi ke tabel user_to_categories, digunakan
untuk hak akses kategori oleh user).
d. sequence (posisi kategori pada tampilan data kategori)
e. description (penjelasan kategori).
f. color (warna tulisan pembeda kategori pada kalender).
g. background (background pembeda kategori pada
kelender).

6. Data user_to_groups (hak user dalam group)


a. user_id (foreign key dari data user)
b. group_id (id group yang berhak diakses. foreign key
dari data group).
c. Moderate (id akses untuk view, post, dan full access
terhadap group).

7. Data user_to_categoies (hak user dalam kategori).


a. user_id (foreign key dari data user).
b. category_id (id kategori yang berhak diakses. foreign
key dari data kategori).

c. Moderate (id akses untuk view, post, dan moderate


(kemampuan masukkan data/pilihan kategori dalam
form event ) terhadap kategori).

8. Data modules (modul kalender).


a. module_id (id modul tampilan kalender (year, month,
week, day).
b. link_name (nama tampilan modul).
c. active (tanda aktif penggunaan modul).
d. sequence (posisi modul terhadap modul lain pada
tampilan data modul).
e. script (script php pembentuk modul).
f. year (posisi modul year pada kalender)
g. month (posisi modul month pada kalender).
h. week (posisi modul week pada kalender).
i. day (posisi modul day pada kalender).

Entity Gammu.
1. Data Outbox (data pengiriman SMS reminder melalui
aplikasi gammu).
a. ID (primary key outbox)
b. UpdateInDB (jadwal update data)

c. InsertIntoOutbox (jadwal terkini masukkan data ke


data outbox, dalam bentuk tanggal dan jam).
d. SendingDateTime (jadwal pengiriman pesan, dalam
bentuk tanggal dan jam).
e. DestinationNumber (nomor phone anggota).
f. TextDecoded (diambil dari data description pada
data event/penjelasan kegiatan).
g. Coding (coding pengiriman sms).
h. SenderID

(foreign

key

id_member

dari

data

member).
i. SendingTimeOut (batas akhir pengiriman, dalam
bentuk tanggal dan jam).
j. CreatorID (foreign key dari id_event).

2. Data sentitem (laporan pengiriman SMS).


a. ID (foreign key dati data outbox)
b. UpdateInDB (jadwal update data)
c. InsertIntoOutbox (jadwal terkini masukkan data ke
data sentitem, dalam bentuk tanggal dan jam).
d. SendingDateTime (jadwal pengiriman pesan, dalam
bentuk tanggal dan jam).
e. DestinationNumber (nomor phone member)

f. TextDecoded (diambil dari data description pada


data outbox/penjelasan kegiatan).
g. Coding (coding pengiriman sms oleh gammu).
h. SenderID

(foreign

key

id_member

dari

data

member).
i. SendingTimeOut (batas akhir pengiriman).
j. Status (status pengiriman).
k. StatusError (status gagal pengiriman).
l. CreatorID (foreign key dari id_event).

3. Data Gammu (aplikasi gammu).


a. Version (versi gammu).

4.4.3.2. Normalisasi Database


Normalisasi merupakan teknik analisis data yang
mengorganisasikan

atribut-atribut

data

dengan

cara

mengelompokkan sehingga terbentuk entitas yang nonredudant, stabil, dan fleksibel.


Karena penulis menggabungkan Sistem Kalender
(supercali calendar) dengan aplikasi Gammu, penulis
mengembangkan sistem aplikasi SMS Reminder dalam
Kalender Akademik dengan membuat data member/anggota

yang digunakan untuk pengiriman pesan kepada member


yang terdaftar.
Normalisasi dilakukan pada data untuk pengiriman
pesan yang berasal dari data events dan outbox (jadwal
pengiriman). Berikut dijelaskan normalisasi data untuk
pengiriman pesan disertai dengan contoh :
1. Bentuk Normal ke Satu (1NF).
Berikut bentuk awal data yang diperlukan dalam
pengiriman

pesan

reminder

kepada

member

(anggota) :
Tabel 4.2. Data Pengiriman Pesan

Penjelasan :
Didalam pengiriman SMS reminder diperlukan
data event (event_id, title, group_id, category_id, dan
description)

dan

data

outbox

(ID

Send,

SendingDateTime, SendingTimeOut, member_id,


nama (member), phone (nomor telepon member).

Didalam tabel masih terdapat redudansi (data


ganda).

2. Bentuk Normal ke Dua (2NF).


Dalam bentuk Normal ke Dua (2NF), data
pengiriman pesan dipersempit dengan mengurangi
data event yang tidak diperlukan. Data dibagi
kedalam dua tabel yaitu tabel pengembangan data
pengiriman

pesan

dan

data

events.

Bentuk

pengembangan ditunjukkan pada tabel kjahda berikut


Tabel 4.3. Data Pengiriman Pesan II

Penjelasan :
Pengurangan data event (title event) dilakukan
untuk menghilangkan penggunaan data yang tidak
terlalu dibutuhkan, sehingga data pengiriman dapat
lebih

fleksibel.

Penggunaan

dimaksimalkan pada tabel events.

data

title

event

Tabel 4.4. Data Events

Penjelasan :
Tabel events dibuat secara lebih detil. Penjelasan
Entitas

dapat

dilihat

pada

penjelasan

entitas

sebelumnya. Stamp merupakan jadwal inputan data


kedalam

database.

status_id

merupakan

status

penerimaan jadwal kegiatan kedalam kelender (untuk


id 1 data telah diposting langsung, untuk id 4 data
dalam bentuk pengajuan jadwal kegiatan, untuk id 2
data telah diterima dari pengajuan data sebelumnya).
quick_approve merupakan waktu penerimaan jadwal
kegiatan yang telah dienkripsi.

3. Bentuk Normal ke Tiga (3NF).


Bentuk Normal ke Tiga (3NF) memaparkan
tabel pengembangan pengiriman pesan menjadi lebih
kompleks. Dari proses normal 3NF terbentuk tabel
outbox dan tabel member.

Tabel 4.5. Data Outbox

Penjelasan :
tabel outbox merupakan tabel yang dikelola oleh
gammu

untuk

melakukan

pengiriman

pesan.

Penjelasan entitas dapat dilihat dari penjelasan


entitas outbox sebelumnya.
Tabel 4.6. Data Member

Penjelasan :
Dari pengembangan tabel Data Pengiriman Pesan
II diperoleh data member yang akan digunakan
dalam operasi sistem kalender dan aplikasi gammu.
Berikut dijelaskan data Member yang lebih
Kompleks dengan entitas sebagai berikut :
a. member_id (primary key member).

b. name (nama anggota).


c. address (alamat anggota).
d. city (alamat kota anggota).
e. gender (jenis kelamin anggota).
f. State (status perkawinan anggota).
g. Email (alamat email anggota).
h. Phone (nomor telepon anggota).
i. group_id (penunjuk posisi group anggota.
Foreign key dari group_id pada data group.
Memiliki kedudukan diatas group_id_child).
j. group_id_child

(penunjuk

posisi

group

anggota. Foreign key dari sub_of data group.


Memiliki kedudukan dibawah group_id).
k. category_id (penunjuk posisi kategori anggota.
Foreign key dari category_id data categories).
l. Description (keterangan lain anggota).

4.4.3.3. Relationship
Relationship adalah hubungan yang terjadi antara satu
atau lebih entity. Berikut digambarkan gambar relasi entity
Aplikasi SMS Reminder dalam Kalender Akademik
Kampus :

Kalender Akademik

Gammu
Gambar 4.19. Relational Database
Berikut dijelaskan masing relasi tabel dengan data
dictionary (kamus data) setiap tabel.
1. Tabel Admin/User
Nama Tabel : users
Primary Key : user_id
Foreign key : user_id

Tabel 4.7. User

2. Tabel User To Groups


Nama Tabel : user_to_groups
Primary key : Foreign key : user_id, group_id.
Tabel 4.8. User To Groups

3. Tabel User To Categories


Nama Tabel : user_to_categories
Primary key : Foreign key : user_id, category_id
Tabel 4.9. User To Category

4. Tabel Modul
Nama Tabel : module
Primary key : module_id
Foreign key : Tabel 4.10. Modules

5. Tabel Group
Nama Tabel : groups
Primary key : group_id
Foreign key : group_id, sub_of (khusus untuk sub_of
yang digunakan pada tabel member menjadi identitas
group_id_child)
Tabel 4.11. Groups

6. Tabel Kategori
Nama Tabel : cetegories
Primary key : category_id
Foreign key : category_id, sub_of
Tabel 4.12. Categories

7. Tabel Member (anggota)


Nama Tabel : members
Primary key : member_id.
Foreign key : member_id (digunakan pada tabel outbox
dalam bentuk SenderID), phone (digunakan pada tabel
outbox dalam bentuk DestinationNumber)
Tabel 4.13. Member

8. Tabel Events (kegiatan)


Nama Tabel : events
Primary key : event_id.
Foreign key : event_id (digunakan dalam tabel outbox
dalam bentuk CreatorID), description (digunakan dalam
tabel outbox dalam bentuk TextDecoded).
Tabel 4.14. Events

9. Tabel Dates
Nama Tabel : dates
Primary key : Foreign key : event_id.
Tabel 4.15. Dates

10. Tabel Outbox


Nama Tabel : outbox
Primary key : ID
Foreign key : SendingDateTime, Text, Coding,
CreatorID,

TextDecoded,

ID,

SendingTimeOut, DestinationNumber.
Tabel 4.16. outbox

11. Tabel Sentitem


Nama Tabel : sentitem
Primary key : Foreign key : Tabel 4.17. Sentitems

SenderID,

12. Tabel Gammu


Nama Tabel : gammu
Primary key : Foreign key : Tabel 4.18. Gammu

4.4.4.

Rancangan layer antarmuka (interface)


Rancangan antarmuka (interface) dibuat untuk memudahkan user

dalam menggunakan aplikasi.


4.4.4.1. Rancangan interface menu login

Gambar 4.20. Layar Login


Halaman Login untuk Admin-admin dalam kampus.

4.4.4.2. Rancangan interface Menu Utama


Tampilan layar kalender dibagi dalam bentuk 5 module. Terdiri
module sebagai berikut :
Module Year :

Gambar 4.21. Layar Module Year


Module Month :

Gambar 4.22. Layar Module Month

Module Week :

Gambar 4.23. Layar Module Week


Module Day :

Gambar 4.24. Layar Module Day

Module Upcoming :

Gambar 4.25. Layar Module Upcoming


Tampilan untuk event dalam bentuk telah diposting, event yang
diajukan/propose, dan event setelah dilakukan sending reminder.
Event setelah diposting :

Gambar 4.26. Layar Kalender Post Event

Event Setelah Sending Reminder :

Gambar 4.27. Layar Setelah Send Reminder

Event yang diajukan/propose :

Gambar 4.28. Layar Kalender Propose Event


Halaman Utama admin. Memiliki beberapa sub menu, antara lain
add event, users, modules, groups, categories, member dan logout.

Untuk admin AIS memiliki semua sub menu. Admin pusat diatur tidak
memiliki menu users. Admin fakultas tidak memiliki menu users dan
groups. Admin jurusan tidak memiliki menu users, groups, dan
category/member. Berikut dijelaskan tampilan layar masing-masing
menu :
1. Add/Edit Events, Send massage, View Member : halaman
untuk melakukan proses input dan edit kegiatan, menerima
pengajuan jadwal kegiatan, dan melihat jadwal reminder serta
member yang akan dikirim pesan. Halaman bentuk small
window.

Gambar 4.29. Layar Add/Edit Event


Post/propose menandai bahwa jadwal kegiatan yang diinput
bersifat posting langsung atau hanya pengajuan jadwal saja.
Recurring adalah bentuk berapa kali pengulangan program
inputan pada hari yang berbeda.
Halaman untuk send reminder/massage :

Gambar 4.30. Layar Send Reminder


Input nomor telepon member dan info kegiatan untuk dikirim
secara reminder.
Halaman view member untuk melihat jadwal reminder kepada
member yang bersangkutan :

Gambar 4.31. Layar View Member

Status send yaitu sebagai penunjuk sms reminder telah terkirim


apa belum.
2. Users dan Add/Edit Users : Halaman untuk pengaturan user
(admin terkait).

Gambar 4.32. Layar View User


Menunjukkan aktifasi askses user yang telah diatur.
Edit User/Add User :

Gambar 4.33. Layar Add/Edit User

3. Modules : Halaman instalasi penggunaan module

Gambar 4.34. Layar Instalasi Module


Digunakan untuk instalasi module yang akan digunakan,
dengan mengaktifkan module yang dipilih.
4. Groups dan Add/Edit Groups : Halaman aksi untuk group

Gambar 4.35. Layar Groups


Menampilkan group-group dengan parent groups (keluarga
groupnya) dengan urutannya.

Add/Edit groups :

Gambar 4.36. Layar Add/Edit Groups


Parent group yaitu hubungan (sub-of) group dengan group lain.
5. Categories dan Add/Edit Category : Halaman aksi untuk
kategori.

Gambar 4.37. Layar Categories


Menampilkan nama-nama ketegori.

Add/Edit Category :

Gambar 4.38. Layar Add/Edit Category


Parent category menunjukkan hubungan (sub-of) dengan
kategroi lain. Text color dan background untuk membedakan
kategori dengan kategori lain pada kalender.
6. Member dan Add/Edit Member : Halaman aksi untuk member.

Gambar 4.39. Layar Member

Layar diawali dengan tampilan group untuk membedakan


posisi kategori.
Add/Edit Member :

Gambar 4.40. Layar Add/Edit Member


Group child merupakan parent group yang menunjukkan
hubungan (sub-of) group dengan group yang lebih tinggi.
7. Halaman apabila user tidak memiliki hak akses untuk tiap
previlige kalender, dalam bentuk small windows :

Gambar 4.41. Layar Not Authorized To Calender

4.4.5. Rancangan STD (State Transition Diagram)


4.4.5.1. Rancangan STD Menu Utama
Rancangan menu utama berfungsi memanggil sub menu lain untuk
dijalankan. Rancangan STD menu utama dapat digambarkan
sebagai berikut :
1. State Transition Diagram (STD) Menu Utama

Gambar 4.42. STD Menu Utama

2. State Transition Diagram (STD) Menu Login


Rancangan proses login dilakukan agar tingkat keakuratan data
benar dan dapat dimengerti oleh pengguna aplikasi. Rancangan
proses login dapat dijelaskan sebagai berikut :

Gambar 4.43. STD Menu Login


3. State Transition Diagram (STD) Menu Users
Rancangan Menu Users menjelaskan proses tambah, edit,
hapus, serta setting konfigurasi user. Proses dijelaskan dalam
gambar sebagai berikut :
Menu Users Utama

Gambar 4.44. STD Menu Users Utama


Menu Add/Edit dan Delete User

Gambar 4.45. STD Menu Action Users

4.

State Transition Diagram (STD) Menu Modules


Rancangan menu modules dilakukan untuk memudahkan
dalam pengaplikasian module-module yang digunakan dalam
kalender.

Gambar 4.46. STD Menu Modules

5. State Transition Diagram (STD) Menu Groups


Rancangan menu groups dilakukan untuk merancang akses
group pada kalender agar lebih jelas dalam pengaplikasiannya
oleh pengguna.

Gambar 4.47. STD Menu Groups

6. State Transition Diagram (STD) Menu Categories


Rancangan menu categories dilakukan untuk merancang akses
kategori pada kalender agar lebih jelas dalam pengaplikasianya
oleh pengguna.

Gambar 4.48. STD Menu Categories

7. State Transition Diagram (STD) Menu Member


Rancangan menu member dilakukan untuk menjelaskan
pembagian data member yang lebih baik, serta akses member
untuk membedakan kepentingan tiap user dalam melakukan
aksi pada member.

Gambar 4.49. STD Menu Member

8. State Transition Diagram (STD) Menu Untuk Event


Rancangan menu event dibedakan menjadi rancangan untuk
menu add/edit/delete event dan aksi pengiriman reminder

kepada

member-member

yang

ingin

diberi

informasi

pengingat.
State Transition Diagram (STD) Menu Add/Edit/Hapus
Event

Gambar 4.50. STD Menu Aksi Event


State Transition Diagram (STD) Menu Send Massage/View
Member

Gambar 4.51. STD Menu Send Reminder

4.5. Fase Konstruksi


Pada tahap ini, design diterjemahkan kedalam bahasa pemrograman agar
dapat menghasilkan satu tampilan aplikasi yang telah dirancang pada tahap
analisa dan design. Penulis menggunakan xampp-win32 yang mendukung
dalam implementasi rancangan aplikasi bahasa pemrograman PHP dan
MySQL sebagai database. Sedangkan untuk pengiriman pengingat (reminder)
penulis menggunakan aplikasi gammu win-32 yang open source.
4.5.1. XAMPP-WIN32
versi xampp-win32 yang

penulis gunakan adalah versi 1.6.4

menyertakan paket-paket diantaranya, Apache web server (2.0.54),


MySQL (5.0.45), dan PHP (5.2.4) untuk windows. Selain itu, telah
disediakan XAMPP Control Panel Version 2.5 (9 May, 2007)
Windows 5.1 Build 2600 Platform 2 Service Pack 2 untuk mengatur
instalasi Apache, MySql, FileZilla, dan mail server mercury. Sehingga
implementasi dapat dilakukan dengan mudah untuk melakukan setting
atau konfigurasi komponen pembangun localhost web server.

4.5.2. Gammu-win32
Gammu digunakan untuk melakukan pengiriman sms dengan
inputan melalui computer. Gammu bukanlah suatu aplikasi jadi. Tapi
merupakan suatu module yang dapat digabungkan dengan bahasa
pemrograman apa saja.
Kelebihan Gammu dari tool sms gateway lainnya adalah :

1. Gammu bisa di jalankan di Windows maupun Linux


2. Banyak device yang kompatibel oleh gammu
3. Gammu menggunakan database MySql
4. Baik kabel data USB maupun SERIAL, semuanya kompatibel
di Gammu
Penulis mencoba menggunakan Gammu dengan Handphone
Nokia 6630 menggunakan kabel data USB. Perangkat keras yang
digunakan untuk menggunakan Gammu :
1. Gammu for windows, download di
http://dl.cihar.com/MIRROR/gammu
2. HP atau Modem GSM + Kabel Data (penulis menggunakan
Nokia 6630)
3. Driver HP/Modem

4.5.3. Pengkodean
Setelah melakukan intalasi maka tahap selanjutnya adalah
pembuatan program. Dalam membuat program (coding) dapat
mempermudah penulisan kode program khususnya yang berbasis web
(hypertext), aplikasi tersebut diantaranya : Notepad, wordpad,
Dreamweaver, ultraedit, Frontpage, dan lain sebagainya. Pada tahap ini
dapat dilihat pada lampiran C.

4.5.4. Tahapan Aplikasi SMS Reminder dalam Kalender Akademik


Pada tahap ini diimplementasikan antar muka yang telah dirancang
pada fase perancangan diatas dimana hasil rancangannya akan
dijalankan menggunakan kode yang telah didefinisikan, yang dapat
dilihat pada lampiran B.

4.6. Fase Pelaksanaan


Pengujian pada dasarnya adalah menemukan serta menghilangkan bug
(kesalahan-kesalahan) yang ada di sistem atau perangkat lunak itu. Adapun
pengujian terhadap sistem yang dilakukan adalah bertujuan untuk menemukan
kesalahan yang masih ada pada sistem. Pengujian dilakukan dengan
menggunakan

pendekatan

black-box

testing.

Dengan

menggunakan

pendekatan black-box testing kita dapat mengetahui apakah sistem dapat


memberikan keluaran seperti yang kita harapkan.
Berikut dipaparkan hasil pengujian black-box testing secara mandiri,
dijelaskan berdasarkan pembagian user yang telah penulis lakukan :
1. Admin PUSKOM

No. Modul
1.

Tambah User

Tabel 4.19. Testing Admin PUSKOM


Hasil yang
Prasyarat
Diharapkan
Login sebagai admin

Dapat Menambah User

Hasil Uji
Coba
OK

dan konfigurasi hak


akses, kategori akses,
dan group akses
2.

Edit User

Login sebagai admin,

Admin PUSKOM dapat

OK

data sudah ada dalam

menambah ataupun

database

mengganti data User


dan konfigurasi hak
akses, kategori akses,
dan group akses

3.

Hapus User

Login sebagai admin,

Admin PUSKOM dapat

data sudah ada dalam

menghapus data User

OK

database
4.

Melihat User

Login sebagai admin,

Admin PUSKOM dapat

data sudah ada dalam

melihat/view

database

User yang telah

OK

terdaftar dalam sistem


beserta data-datanya
5.

6.

Update

Login sebagai admin,

Admin PUSKOM dapat

Module

data module sudah

meng-update module

ada dalam database

yang telah tersedia

Login sebagai admin

Admin PUSKOM dapat

Hapus Module

OK

OK

menghapus data module


yang disediakan
7.

Tambah

Login sebagai admin

Groups
8.

Hapus Groups

Admin PUSKOM dapat

OK

menambah data group


Login sebagai admin,

Admin PUSKOM dapat

data sudah ada dalam

menghapus data groups

OK

database
9.

Edit Groups

Login sebagai admin,

Admin PUSKOM dapat

data sudah ada dalam

mengubah data group

OK

database
10.

Melihat

Login sebagai admin,

Admin PUSKOM dapat

Groups

data sudah ada dalam

melihat data groups

database

OK

11.

Tambah

Login sebagai admin

Categories
12.

13.

14.

Admin PUSKOM

OK

menambah Categories

Edit

Login sebagai admin,

Admin PUSKOM dapat

Categories

data sudah ada dalam

mengubah data

database

Categories

Hapus

Login sebagai admin,

Admin PUSKOM dapat

Categories

data sudah ada dalam

menghapus data

database

Categories

Melihat

Login sebagai admin,

Admin PUSKOM dapat

Categories

data sudah ada dalam

melihat data Categories

OK

OK

OK

database
15.

Tambah Links

Login sebagai admin

Admin PUSKOM dapat

OK

menambah Data Links


16.

Edit Links

Login sebagai admin,

Admin PUSKOM dapat

data sudah ada dalam

mengubah data Links

OK

database
17.

Hapus Links

Login sebagai admin,

Admin PUSKOM dapat

data sudah ada dalam

menghapus data Links

OK

database
18.

Melihat Links

Login sebagai admin,

Admin PUSKOM dapat

data sudah ada dalam

melihat data Links

OK

database
19.

Tambah Event

Login sebagai admin

Admin PUSKOM dapat

OK

menambah data jadwal


Kegiatan
20.

Edit Event

Login sebagai admin,

Admin PUSKOM dapat

data sudah ada dalam

merubah data jadwal

database, dan sesuai

Kegiatan

OK

konfigurasi user
21.

Hapus Event

Login sebagai admin,

Admin PUSKOM dapat

OK

data sudah ada dalam

menghapus data jadwal

database, dan sesuai

Kegiatan

konfigurasi user
22.

Send Message

Login sebagai admin,

Admin PUSKOM dapat

OK

data jadwal sudah ada memasukkan data

23.

24.

dalam database, dan

pengiriman pengingat

sesuai konfigurasi

kepada link yang

user

tersedia

Hapus Data

Login sebagai admin,

Admin PUSKOM dapat

Sending

data jadwal sudah ada menghapus data


dalam database, dan

pengiriman pengingat

sesuai konfigurasi

kepada link yang

user

tersedia

Melihat Data

Login sebagai admin,

Admin PUSKOM dapat

Send

data jadwal sudah ada melihat data pengiriman


dalam database, dan

pengingat kepada link

sesuai konfigurasi

yang tersedia

OK

OK

user

2. Admin Pusat
Tabel 4.20. Testing Admin Pusat
No. Modul

Prasyarat

1.

Login sebagai admin

Melihat Profil

Hasil yang

Hasil Uji

Diharapkan

Coba

Admin Pusat dapat

OK

melihat profil
konfigurasi
2.

Tambah
Groups

Login sebagai admin

Admin Pusat dapat


menambah data group

OK

3.

Hapus Groups

Login sebagai admin,

Admin Pusat dapat

data sudah ada dalam

menghapus data groups

OK

database
4.

Edit Groups

Login sebagai admin,

Admin Pusat dapat

data sudah ada dalam

mengubah data group

OK

database
5.

Melihat

Login sebagai admin,

Admin Pusat dapat

Groups

data sudah ada dalam

melihat data groups

OK

database
6.

Tambah

Login sebagai admin

Categories
7.

8.

9.

Admin Pusat

OK

menambah Categories

Edit

Login sebagai admin,

Admin Pusat dapat

Categories

data sudah ada dalam

mengubah data

database

Categories

Hapus

Login sebagai admin,

Admin Pusat dapat

Categories

data sudah ada dalam

menghapus data

database

Categories

Melihat

Login sebagai admin,

Admin Pusat dapat

Categories

data sudah ada dalam

melihat data Categories

OK

OK

OK

database
10.

Tambah Links

Login sebagai admin

Admin Pusat dapat

OK

menambah Data Links


11.

Edit Links

Login sebagai admin,

Admin Pusat dapat

data sudah ada dalam

mengubah data Links

OK

database
12.

Hapus Links

Login sebagai admin,

Admin Pusat dapat

data sudah ada dalam

menghapus data Links

OK

database
13.

Melihat Links

Login sebagai admin,

Admin Pusat dapat

data sudah ada dalam

melihat data Links

OK

database
14.

Tambah Event

Login sebagai admin

Admin Pusat dapat

OK

menambah data jadwal


Kegiatan
15.

Edit Event

Login sebagai admin,

Admin Pusat dapat

data sudah ada dalam

merubah data jadwal

database, dan sesuai

Kegiatan

OK

konfigurasi user
16.

Hapus Event

Login sebagai admin,

Admin Pusat dapat

data sudah ada dalam

menghapus data jadwal

database, dan sesuai

Kegiatan

OK

konfigurasi user
17.

Send Message

Login sebagai admin,

Admin Pusat dapat

OK

data jadwal sudah ada memasukkan data

18.

19.

dalam database, dan

pengiriman pengingat

sesuai konfigurasi

kepada link yang

user

tersedia

Hapus Data

Login sebagai admin,

Admin Pusat dapat

Sending

data jadwal sudah ada menghapus data


dalam database, dan

pengiriman pengingat

sesuai konfigurasi

kepada link yang

user

tersedia

Melihat Data

Login sebagai admin,

Admin Pusat dapat

Send

data jadwal sudah ada melihat data pengiriman


dalam database, dan

pengingat kepada link

sesuai konfigurasi

yang tersedia

user

OK

OK

3. Admin Fakultas
a. Admin Tarbiyah
b. Admin Adab
c. Admin Ushuluddin
d. Admin Syariah
e. Admin Dakwah
f. Admin Dirasat
g. Admin Psikologi
h. Admin Ekonomi
i. Admin Saintek
j. Admin Kedokteran
k. Admin Pasca
Tabel 4.21. Gammu Testing Admin Fakultas
No. Modul
1

Melihat Profil

Prasyarat
Login sebagai admin

Hasil yang

Hasil Uji

Diharapkan

Coba

Admin Fakultas dapat

OK

melihat profil
konfigurasi
2

Tambah

Login sebagai admin

Categories
3

Admin Fakultas dapat

OK

menambah Categories

Edit

Login sebagai admin,

Admin Fakultas dapat

Categories

data sudah ada dalam

mengubah data

database

Categories

Hapus

Login sebagai admin,

Admin Fakultas dapat

Categories

data sudah ada dalam

menghapus data

database

Categories

OK

OK

Melihat

Login sebagai admin,

Admin Fakultas dapat

Categories

data sudah ada dalam

melihat data Categories

OK

database
6

Tambah Links

Login sebagai admin,

Admin Fakultas dapat

dan sesuai

menambah Data Links

OK

konfigurasi user
7

Edit Links

Login sebagai admin,

Admin Fakultas dapat

data sudah ada dalam

mengubah data Links

OK

database, dan sesuai


konfigurasi user
8

Hapus Links

Login sebagai admin,

Admin Fakultas dapat

data sudah ada dalam

menghapus data Links

OK

database, dan sesuai


konfigurasi user
9

Melihat Links

Login sebagai admin,

Admin Fakultas dapat

data sudah ada dalam

melihat data Links

OK

database, dan sesuai


konfigurasi user
10

Tambah Event

Login sebagai admin

Admin Fakultas dapat

OK

menambah data jadwal


Kegiatan
11

Edit Event

Login sebagai admin,

Admin Fakultas dapat

data sudah ada dalam

merubah data jadwal

database, dan sesuai

Kegiatan

OK

konfigurasi user
12

Hapus Event

Login sebagai admin,

Admin Fakultas dapat

data sudah ada dalam

menghapus data jadwal

database, dan sesuai

Kegiatan

OK

konfigurasi user
13

Send Message

Login sebagai admin,

Admin Fakultas dapat

OK

data jadwal sudah ada memasukkan data

14

15

dalam database, dan

pengiriman pengingat

sesuai konfigurasi

kepada link yang

user

tersedia

Hapus Data

Login sebagai admin,

Admin Fakultas dapat

Sending

data jadwal sudah ada menghapus data


dalam database, dan

pengiriman pengingat

sesuai konfigurasi

kepada link yang

user

tersedia

Melihat Data

Login sebagai admin,

Admin Fakultas dapat

Send

data jadwal sudah ada melihat data pengiriman


dalam database, dan

pengingat kepada link

sesuai konfigurasi

yang tersedia

OK

OK

user

4. Admin Jurusan
User yang digunakan oleh penulis berupa user jurusan Bahasa Arab,
fakultas Adab.
Tabel 4.22. Admin Jurusan
No. Modul
1.

Melihat Profil

Prasyarat
Login sebagai admin

Hasil yang

Hasil Uji

Diharapkan

Coba

Admin Jurusan dapat

OK

melihat profil
konfigurasi
2.

Tambah

Login sebagai admin

Categories
3.

Admin Jurusan dapat

OK

menambah Categories

Edit

Login sebagai admin,

Admin Jurusan dapat

Categories

data sudah ada dalam

mengubah data

database

Categories

OK

4.

5.

Hapus

Login sebagai admin,

Admin Jurusan dapat

Categories

data sudah ada dalam

menghapus data

database

Categories

Melihat

Login sebagai admin,

Admin Jurusan dapat

Categories

data sudah ada dalam

melihat data Categories

OK

OK

database
6.

Melihat Links

Login sebagai admin,

Admin Jurusan dapat

data sudah ada dalam

melihat data Links

OK

database, dan sesuai


konfigurasi user
7.

Tambah Event

Login sebagai admin

Admin Jurusan dapat

OK

menambah data jadwal


Kegiatan
8.

Edit Event

Login sebagai admin,

Admin Jurusan dapat

data sudah ada dalam

merubah data jadwal

database, dan sesuai

Kegiatan

OK

konfigurasi user
9.

Hapus Event

Login sebagai admin,

Admin Jurusan dapat

data sudah ada dalam

menghapus data jadwal

database, dan sesuai

Kegiatan

OK

konfigurasi user
10.

Send Message

Login sebagai admin,

Admin Jurusan dapat

OK

data jadwal sudah ada memasukkan data

11.

dalam database, dan

pengiriman pengingat

sesuai konfigurasi

kepada link yang

user

tersedia

Hapus Data

Login sebagai admin,

Admin Jurusan dapat

Sending

data jadwal sudah ada menghapus data


dalam database, dan

pengiriman pengingat

sesuai konfigurasi

kepada link yang

OK

12.

user

tersedia

Melihat Data

Login sebagai admin,

Admin Jurusan dapat

Send

data jadwal sudah ada melihat data pengiriman


dalam database, dan

pengingat kepada link

sesuai konfigurasi

yang tersedia

OK

user

4. Testing Mahasiswa, Dosen, Pegawai


Tabel 4.23. Testing Mahasiswa, Dosen, Pegawai
No. Modul
1.

Melihat

Prasyarat
-

Hasil yang

Hasil Uji

Diharapkan

Coba

Mahasiswa, Dosen, dan

OK

Jadwal

pegawai dapat

Kalender

mengetahui jadwal
kegiatan

2.

Menerima

Terdaftar sebagai

Mahasiswa, Dosen, dan

Informasi

member

pegawai dapat

Akademik

mengetahui jadwal

dalam bentuk

kegiatan tanpa harus

pengingat

melihat jadwal kegiatan

OK

Acceptance Testing (Pengujian Penerimaan)


Pengujian penerimaan sistem dilakukan oleh Bapak Husni Tedja
Sukmana, Ph.D dan staff

atas nama Muhandis.

Pengujian dilakukan

dengan menggunakan metode blackbox testing. Bukti terlampir uji coba


yang dilakukan dapat dilihat pada bagian lampiran. Secara ringkas, hasil
pengujian yang dapat penulis simpulkan adalah sebagai berikut :
Tabel 4.24. Pengujian Penerimaan Sistem
No

Pengujian

Penilaian

1.

Fitur aplikasi secara keseluruhan

Baik

2.

Fitur untuk admin

Baik

3.

Fitur untuk Entry Data SK

Baik

4.

Tampilan aplikasi

Baik

5.

Kestabilan aplikasi

Baik

6.

Keamanan aplikasi

Baik

7.

Kesesuaian dengan kebutuhan

Baik

8.

Kemudahan penggunaan aplikasi

Baik

BAB V
KESIMPULAN DAN SARAN

Pengembangan Aplikasi SMS Reminder dalam Kalender Akademik UIN


Syarif Hidyatullah Jakarta ini diharapkan dapat mengurangi permasalahanpermasalahan yang berhubungan dengan pengolahan jadwal kegiatan dalam
bentuk suatu kalender akademik pada sistem Academic Information System (AIS)
di PUSKOM (Pusat Komunikasi) UIN Syarif Hidayatullah Jakarta.
Setelah melakukan serangkaian penelitian, maka pada bab ini penulis akan
menguraikan kesimpulan dan saran yang dapat diambil dari rangkaian penelitian
tersebut. Saran yang diberikan diharapkan dapat bermanfaat bagi pihak-pihak
yang akan melanjutkan pengembangan penelitian ini.
5.1.

Kesimpulan
Dari penelitian dan penulis yang telah penulis uraikan, maka dapat
ditarik kesimpulan sebagai berikut:
1. Aplikasi SMS Reminder dalam Kalender Akademik UIN Syarif
Hidyatullah merupakan pengembangan dari framework supercali
calendar sebagai pembentuk tampilan utama kalender, dan aplikasi
gammu sebagai SMS Gateway untuk pengiriman SMS informasi
pengingat.
2. Sistem penjadwalan yang dibuat dapat menjadi pertimbangan untuk
digunakan di PUSKOM untuk membantu sistem akademik yang sudah
ada, yaitu Academic System Information (AIS).

135

3. Sistem Kalender yang dibuat memberikan fungsi pembagian strata


pengguna kalender dengan baik pada suatu sistem akademik terpusat
dalam keorganisasian UIN Syarif Hidyatullah Jakarta.
4. Memberikan suatu sistem pengingat dalam bentuk SMS kepada pihak
yang akan diberikan informasi, sehingga kegiatan dapat dilaksanakan
tepat waktu sebagai peningkatan disiplin para aparatur kampus dan
mahasiswa.

5.2.

Saran
Sistem ini tentu saja masih belum sempurna. Masih banyak hal yang
dapat dilakukan untuk mengembangkan sistem ini agar menjadi lebih baik
lagi, antara lain:
1. Diharapkan sistem ini dapat dikembangkan pihak PUSKOM bukan
hanya sebatas informasi pengingat, akan tetapi dapat dikembangkan
menajadi informasi melalui saluran telepon (Information Call) untuk
lebih membantu kinerja dalam kegiatan akademik UIN Syarif
Hidyatullah.
2. Diharapkan pengembangan sistem menggunakan aplikasi Gammu yang
dirancang sendiri dan terintegrasi didalam sistem kalender, sehingga
dapat lebih mudah digunakan oleh user apabila sistem berjalan dimulai
dari awal kembali, tanpa adanya pengaturan awal aplikasi Gammu lagi.
3. Diharapkan skripsi ini dapat digunakan sebagai bahan masukan dan
saran pemikiran yang konstruktif bagi penulis skripsi yang lain dalam

136

merancang sistem yang berhubungan dengan kegiatan penjadwalan


serta penggunaan perangkat teknologi baru pendukung sistem demi
meningkatkan kualitas sistem dan mempermudah pihak pengguna.

137

LAMPIRAN-LAMPIRAN
1. LAMPIRAN A : HASIL WAWANCARA
2. LAMPIRAN B : HASIL TAMPILAN ANTARMUKA
3. LAMPIRAN C : SOURCE CODE
4. LAMPIRAN D : INSTALASI SOFTWARE
5. LAMPIRAN E : PENGUJIAN PENERIMAAN SISTEM

LAMPIRAN A
HASIL WAWANCARA

LAMPIRAN B
HASIL TAMPILAN ANTARMUKA

LAMPIRAN C
SOURCE CODE

LAMPIRAN D
INSTALASI SOFTWARE

LAMPIRAN E
PENGUJIAN PENERIMAAN SISTEM

Dalam pengumpulan data (Collecting Data), penulis melakukan wawancara


dengan Finna Astari S.Kom salah satu staff Academic Information System (AIS).
Berikut beberapa petikan hasil wawancara yang dilakukan oleh penulis:
1. Bagaimana menurut Ibu tentang Sistem Informasi Akademik yang
sudah ada dan berjalan di UIN Jakarta sampai saat ini, khususnya pada
sistem penjadwalan kegiatan akademik (Kalender Akademik)?
2. Bagaiman cara penyampaian informasi oleh sistem informasi
penjadwalan akademik yang sedang berjalan?
3. Menurut Ibu apa saja yang harus dilakukan untuk mengembangkan
Sistem Informasi Akademik ini, khususnya pada sistem informasi
penjadwalan akademik (Kalender Akademik)?
Jawaban :
1. Menurut Saya sistem informasi penjadwalan sudah berjalan dengan
baik. Masukkan data jadwal dari para admin tiap fakultas mudah
dilakukan. Akan tetapi pembagian kalender untuk tiap fakultas dan
jurusan masih kurang baik. data kadang terkumpul pada satu kalender,
sehingga terlihat kurang rapih karena kurangnya pembeda antara
kalender setiap fakultas dan jurusan.
2. Penyampaian informasi dilakukan melalui jaringan internet (situs AIS
sendiri) dan email apabila diinginkan oleh pihak pembuat jadwal.
Akan tetapi dalam hal penyampaian informasi melalui internet,
penyampaian informasi masih belum mencapai kesemua pihak,
terutama mahasiswa kita sendiri. Masih banyak mahasiswa, maupun

dosen atau pegawai yang gagap teknologi (gaptek). Hal ini berakibat
aliran informasi kurang berjalan dengan baik.
3. Menurut Saya sebaiknya sistem ini memiliki sistem penyampaian
informasi yang baik dan dapat disampaikan secara menyeluruh
kesemua pihak yang dikenai kegiatan atau yang memiliki kepentingan
dengan penjadwalan akademik ini.

1. Tampilan Tahun pada Public Access

2. Tampilan Module

3. Tampilan Navigasi

4. Tampilan Bulan pada Public Access

5. Tampilan Minggu pada Public Access

6. Tampilan Hari pada Public Access

7. Tampilan Login

8. Tampilan Menu Users (View User)

9. Tampilan Add/Edit Users

10. Tampilan Konfigurasi User


a. Username/Password

b. Previliges (Hak Akses)

c. Category Access (Akses terhadap kategori kalender)

d. Groups Access (Akses terhadap Group kalender)

11. Tampilan Hapus Users

12. Tampilan Menu Modules

13. Tampilan Menu Groups (View Groups)

14. Tampilan Add/Edit Groups

15. Tampilan Delete Groups

16. Tampilan Menu Categories (View Categories)

17. Tampilan Add/Edit Categories

18. Tampilan Delete Categories

19. Tampilan Links (View Links/berdasarkan Group)

20. Tampilan Detail Links

21. Tampilan Add/Edit Links

22. Tampilan Delete Links

23. Tampilan Add Event (Tambah Jadwal/small windows)

24. Tampilan Edit Event

25. Tampilan Hapus Event

26. Tampilan Show Event

27. Tampilan Send Message (Pengingat kepada link yang tersedia)

28. Tampilan view links (melihat data jadwal pengingat)

29. Tampilan Menu Untuk Tiap Admin


a. Admin AIS (Super Admin)

b. Admin Pusat (Akademik Pusat)

c. Admin Fakultas (diambil sampel admin Adab)

d. Admin Jurusan (diambil sampel admin Bahasa Arab)

Config.php
<?php
$h = "localhost";
$d = "kalender_uin";
$u = "root";
$calendar_title = "Kalender UIN Syahid";
$calendar_email = "akmal";
$calendar_url = "http://localhost";

$week_titles_s[] = "Fri";
$week_titles_s[] = "Sat";
//view year
$week_titles_ss[] = "S";
$week_titles_ss[] = "M";
$week_titles_ss[] = "T";
$week_titles_ss[] = "W";
$week_titles_ss[] = "T";
$week_titles_ss[] = "F";
$week_titles_ss[] = "S";

$table_prefix = "";
$default_module = 2;
// menayangkan peristiwa kategori sub seiring
dengan peristiwa pada kategori terpilih

// Editor FCK dapat dipergunakan untuk


HTML dari teks peristiwa
$fck_editor_path = "";
$fck_editor_toolbar = "Basic"; // Basic or
Default

$include_child_categories = true;
// tayangkan peristiwa di kategori induk seiring
dengan peristiwa pada kategori terpilih
$include_parent_categories = true;
// Bagaimana caranya menayangkan judul pada
header dari kalender
$week_titles[] = "Sunday";
$week_titles[] = "Monday";
$week_titles[] = "Tuesday";
$week_titles[] = "Wednesday";
$week_titles[] = "Thursday";
$week_titles[] = "Friday";
$week_titles[] = "Saturday";
//view quarter
$week_titles_s[] = "Sun";
$week_titles_s[] = "Mon";
$week_titles_s[] = "Tue";
$week_titles_s[] = "Wed";
$week_titles_s[] = "Thu";

// kategori default untuk kalender peristiwa


$start_category_id = 1;
// bahasa
$language = "lang/en_us.php";
// tampilan start jam hari/minggu
$day_week_start_hour = 8;
?>
Index.php
<?php
/*
Supercali Event Calendar
Copyright 2006 Dana C. Hutchins
This program is free software; you can
redistribute it and/or
modify it under the terms of the GNU General
Public License as published by the Free
Software Foundation; either version 2

of the License, or (at your option) any later


version.
This program is distributed in the hope that it
will be useful,
but WITHOUT ANY WARRANTY; without
even the implied warranty of
MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU
General Public License
along with this program; if not, write to the
Free Software
Foundation, Inc., 51 Franklin Street, Fifth
Floor, Boston, MA 02110-1301, USA.
For further information visit:
http://supercali.inforest.com/
*/

function
grabDates($start,$end,$category_array) {
$cats = implode(",",$category_array);
global $table_prefix, $supergroup;
global $title, $niceday, $start_time,
$end_time, $venue, $city, $state, $cat,$ed,
$usr, $color, $background,$lang, $w, $ap,
$status, $send;
/* peroleh peristiwa bisa diterapkan */
$superedit = false;
if (!$supergroup) {
$q = "select moderate from
".$table_prefix."users_to_groups where
group_id = ".$w." and user_id =
".$_SESSION["user_id"];
$query = mysql_query($q);
if (mysql_num_rows($query)
> 0) {

$mod =
mysql_result($query,0,0);
if ($mod > 2) {
$superedit = true;
}
}
} else {
$superedit = true;
}
if (($mod > 0) || ($superedit)) {
$q = "select
DATE_FORMAT(".$table_prefix."dat
es.date, '%Y%m%d'),
DATE_FORMAT(".$table_prefix."dat
es.date, '%H%i'),
".$table_prefix."events.event_id,
".$table_prefix."events.title,
DATE_FORMAT(".$table_prefix."dat
es.date, '%W, %M %e, %Y'),
DATE_FORMAT(".$table_prefix."dat
es.date, '%l:%i %p'),
DATE_FORMAT(".$table_prefix."dat
es.end_date, '%l:%i %p'),
".$table_prefix."links.name,
".$table_prefix."links.city,
".$table_prefix."links.state,
".$table_prefix."events.category_id,
".$table_prefix."events.user_id,
".$table_prefix."dates.date,
".$table_prefix."categories.color,
".$table_prefix."categories.background,

".$table_prefix."events.status_id,
".$table_prefix."events.send_id
from
".$table_prefix."events,
".$table_prefix."dates,
".$table_prefix."links,
".$table_prefix."categories,
".$table_prefix."groups
where
".$table_prefix."dates.date >= '$start'
and
".$table_prefix."dates.date < '$end'
and
".$table_prefix."dates.event_id =
".$table_prefix."events.event_id
and
".$table_prefix."events.category_id in
(".$cats.")
and
".$table_prefix."events.category_id =
".$table_prefix."categories.category_id
and
".$table_prefix."events.group_id =
".$table_prefix."groups.group_id
and
".$table_prefix."events.group_id = ".$w."
order by
".$table_prefix."dates.date";
$query = mysql_query($q);
//echo $q."<br>";
while ($row =
mysql_fetch_row($query)) {
$edit = false;
if ($row[11] ==
$_SESSION["user_id"]) {
$edit =
true;
} elseif ($superedit)
{

$edit =
true;
}
if ($edit==true)
$ed[$row[2]]=true;
if ($superedit==true)
$ap[$row[2]]=true;
$title[$row[2]]=strip_tags($row[3]);
$niceday[$row[0]][$row[12]][$row[2]
]=$row[4];
if (($row[5] ==
"12:00 AM") && ($row[6] == "11:59 PM")) {
$start_time[$row[0]][$row[12]][$row[
2]]=$lang["all_day"];
} elseif (($row[5]
== "12:00 AM") && ($row[6] == "12:00
AM")) {
$start_time[$row[0]][$row[12]][$row[
2]]=$lang["tba"];
} else {
$start_time[$row[0]][$row[12]][$row[
2]]=$row[5];
if ($row[6])
$end_time[$row[0]][$row[12]][$row[2]]=$row
[6];
}
if ($row[7])
$venue[$row[2]]=$row[7];
if ($row[7] &&
$row[8]) $city[$row[2]]=$row[8];
if ($row[7] &&
$row[8] && $row[9])
$state[$row[2]]=$row[9];
$cat[$row[2]]=$row[10];

//echo $q."<br>";
$query =

$usr[$row[2]]=$row[11];
mysql_query($q);
$color[$row[2]]=$row[13];

if
(mysql_num_rows($query) > 0) {

$background[$row[2]]=$row[14];

while
($row = mysql_fetch_row($query)) {

$status[$row[2]]=$row[15];
$category_permissions[] = $row[0];
$send[$row[2]]=$row[16];
}
}
}
function grab($start,$end,$category) {
global $include_child_categories,
$include_parent_categories,
$category_array,$supercategory,$supergroup,$
category_permissions,$w,$table_prefix;
$canview = false;
$groupview = false;
if (!$supergroup) {
$q = "SELECT * from
".$table_prefix."users_to_groups where
group_id = ".$w." and user_id =
".$_SESSION["user_id"];
$query = mysql_query($q);
if (mysql_num_rows($query)
> 0) $groupview = true;
} else {
$groupview = true;
}
if ($groupview) {
if (!$supercategory) {
//build permission
array
$q = "SELECT
category_id from
".$table_prefix."users_to_categories where
user_id = ".$_SESSION["user_id"];

}
}
if
(in_array($category,$category_permissions))
$canview = true;
} else {
$canview = true;
}
if ($canview) {
$category_array[] =
$category;
if
($include_child_categories)
grab_child($start,$end,$category,true);
if
($include_parent_categories)
grab_parent($start,$end,$category,true);

global $table_prefix,
$category_array,$supercategory,$category_per
missions;
$canview = false;
if (!$supercategory) {
if ($category_permissions) {
if
(in_array($category,$category_permissions))
$canview = true;
}
} else {
$canview = true;
}
if ($canview) {
if (!$starter)
$category_array[] = $category;
$q = "select category_id from
".$table_prefix."categories where sub_of =
".$category;
$query = mysql_query($q);
if (!$query) $msg =
"Database Error : ".$q;
else {
while ($row =
mysql_fetch_row($query)) {
grab_child($start,$end,$row[0],false);
}
}
}

grabDates($start,$end,$category_array
);
}
}
}
}
function
grab_child($start,$end,$category,$starter=false
){

function
grab_parent($start,$end,$category,$starter=fals
e) {
global $table_prefix, $category_array,
$supercategory,$category_permissions;
$canview = false;
if (!$supercategory) {
if ($category_permissions) {

if
(in_array($category,$category_permissions))
$canview = true;
}
} else {
$canview = true;
}
if ($canview) {
if (!$starter)
$category_array[] = $category;
$q = "select sub_of from
".$table_prefix."categories where category_id =
".$category;
//echo $q."<br>";
$query = mysql_query($q);
if (!$query) $msg =
"Database Error : ".$q;
else {
while ($row =
mysql_fetch_row($query)) {

$canview = true;
if ($supergroup) {
$canview = true;
}
if ($supercategory) {
$canview = true;
}

}
}

if (!$supercategory) {
$canview = false;
$q = "select * from
".$table_prefix."users_to_categories where
category_id = ".$c." and user_id =
".$_SESSION["user_id"];
//echo $q;
$qu = mysql_query($q);
if (mysql_num_rows($qu) >
0) {
$canview = true;
} else {

$msg .=
"<p>".$lang["no_permission_to_view_categor
y"]."</p>";
$canview = false;

include "includes/start.php";
$canview = false;
//if no access, then kick them out!
if (!$superview) {
mysql_close($link);
$msg = $lang["must_log_in"];
header("Location:
login.php?msg=".$msg."&".$common_get);
}

}
}
if ((!$supergroup) && $canview) {
$q = "select * from
".$table_prefix."users_to_groups where
group_id = ".$w." and user_id =
".$_SESSION["user_id"];
//echo $q;
$qu = mysql_query($q);
if (mysql_num_rows($qu) >
0) {

}
}

$msg .=
"<p>".$lang["no_permission_to_view_group"].
"</p>";
$canview = false;

else {

grab_parent($start,$end,$row[0],false)
;

} else {

}
if (($canview == true)&& $script) {
include "modules/".$script;
} else {
include "includes/header.php";
include "includes/footer.php";
}
?>

start.php
<?
if (!file_exists("config.php"))
header("Location: install.php");
error_reporting(E_ALL & ~E_NOTICE );
include "config.php";
include "includes/session_start.php";
include $language;
$msg = $_REQUEST["msg"];
if (!$_SESSION['user_id'])
$_SESSION['user_id'] = 1;
// establish database connection
$link = mysql_connect ($h, $u, $p) or die
("Could not connect to database, try again
later");
mysql_select_db($d,$link);

//
this area to set superpermission levels
$query = mysql_query("SELECT view, post,
add_categories, add_groups, add_users, email
from ".$table_prefix."users where user_id =
".$_SESSION["user_id"]." limit 1");
$row = mysql_fetch_row($query);
$supergroup = false;
$supercategory = false;
$email = $row[5];
if ($row[4]) $supergroup = true;
if ($row[4]) $supercategory = true;
if ($row[4]) $superpost = true;
if ($row[4]) $superview = true;
if ($row[3]) $supergroup = true;
if ($row[3]) $superpost = true;
if ($row[3]) $superview = true;
if ($row[2]) $supercategory = true;
if ($row[2]) $superpost = true;
if ($row[2]) $superview = true;
if ($row[1]) $superpost = true;
if ($row[1]) $superview = true;
if ($row[0]) $superview = true;

if (!$calendar_title) $calendar_title = "SMS


Reminder";
if ((is_numeric($_REQUEST["m"]))&&
($_REQUEST["m"]!= 0)) {
$_SESSION["m"] =
$_REQUEST["m"];
$m = $_REQUEST["m"];
} elseif ($_SESSION["m"]) {
$m = $_SESSION["m"];
} else {
$m = date(m);

}
if (strlen($m) == 1) $m = "0".$m;

}
}

if ((is_numeric($_REQUEST["a"]))&&
($_REQUEST["a"]!= 0)) {
$_SESSION["a"] =
$_REQUEST["a"];
$a = $_REQUEST["a"];
} elseif ($_SESSION["a"]) {
$a = $_SESSION["a"];
} else {
$a = date(d);
}
if (strlen($a) == 1) $a = "0".$a;
if ((is_numeric($_REQUEST["y"]))&&
($_REQUEST["y"]!= 0)) {
$_SESSION["y"] =
$_REQUEST["y"];
$y = $_REQUEST["y"];
} elseif ($_SESSION["y"]) {
$y = $_SESSION["y"];
} else {
$y = date(Y);
}

if ($_POST["godate"]) {
if (ereg ("([0-9]{1,2})[\/-]+([09]{1,2})[\/-]+([09]{4})",$_POST["godate"],$dater)) {
$_SESSION["m"] =
$dater[1];
$_SESSION["a"] = $dater[2];
$_SESSION["y"] =
$dater[3];
$m = $dater[1];
$a = $dater[2];
$y = $dater[3];

$day_of_week = date("w", mktime( 0, 0, 0, $m,


$a, $y ) );
$wa = $a-$day_of_week;
for($wacount=0;$wacount < 7;$wacount++) {
$now["week"]["a"][$wacount] = date(
"d", mktime( 0, 0, 0, $m, $wa+$wacount, $y )
);
$now["week"]["m"][$wacount] =
date( "m", mktime( 0, 0, 0, $m, $wa+$wacount,
$y ) );
$now["week"]["y"][$wacount] = date(
"Y", mktime( 0, 0, 0, $m, $wa+$wacount, $y )
);
}
$next["week"]["a"] = date( "d", mktime( 0, 0,
0, $m, $wa+7, $y ) );
$next["week"]["m"] = date( "m", mktime( 0, 0,
0, $m, $wa+7, $y ) );
$next["week"]["y"] = date( "Y", mktime( 0, 0,
0, $m, $wa+7, $y ) );
$prev["week"]["a"] = date( "d", mktime( 0, 0,
0, $m, $wa-7, $y ) );
$prev["week"]["m"] = date( "m", mktime( 0, 0,
0, $m, $wa-7, $y ) );
$prev["week"]["y"] = date( "Y", mktime( 0, 0,
0, $m, $wa-7, $y ) );
$next["day"]["a"] = date( "d", mktime( 0, 0, 0,
$m, $a+1, $y ) );
$next["day"]["m"] = date( "m", mktime( 0, 0,
0, $m, $a+1, $y ) );
$next["day"]["y"] = date( "Y", mktime( 0, 0, 0,
$m, $a+1, $y ) );

$next["month"]["m"] = date( "m", mktime( 0,


0, 0, $m+1, 1, $y ) );
$next["month"]["y"] = date( "Y", mktime( 0, 0,
0, $m+1, 1, $y ) );
$next["year"]["y"] = date( "Y", mktime( 0, 0, 0,
1, 1, $y+1 ) );
$prev["day"]["a"] = date( "d", mktime( 0, 0, 0,
$m, $a-1, $y ) );
$prev["day"]["m"] = date( "m", mktime( 0, 0,
0, $m, $a-1, $y ) );
$prev["day"]["y"] = date( "Y", mktime( 0, 0, 0,
$m, $a-1, $y ) );
$prev["month"]["m"] = date( "m", mktime( 0,
0, 0, $m-1, 1, $y ) );
$prev["month"]["y"] = date( "Y", mktime( 0, 0,
0, $m-1, 1, $y ) );
$prev["year"]["y"] = date( "Y", mktime( 0, 0,
0, 1, 1, $y-1 ) );
if ((is_numeric($_REQUEST["c"]))&&
($_REQUEST["c"]!= 0)) {
$_SESSION["c"] =
$_REQUEST["c"];
$c = $_REQUEST["c"];
} elseif ($_SESSION["c"]) {
$c = $_SESSION["c"];
} else {
$c = 1;
}
if ((is_numeric($_REQUEST["w"]))&&
($_REQUEST["w"]!= 0)) {
$_SESSION["w"] =
$_REQUEST["w"];
$w = $_REQUEST["w"];
} elseif ($_SESSION["w"]) {
$w = $_SESSION["w"];
} else {
$w = 1;

if ((is_numeric($_REQUEST["o"]))&&
($_REQUEST["o"]!= 0)) {
$_SESSION["o"] =
$_REQUEST["o"];
$o = $_REQUEST["o"];
} elseif ($_SESSION["o"]) {
$o = $_SESSION["o"];
} elseif ($default_module) {
$o = $default_module;
} else {
$o =
mysql_result(mysql_query("SELECT
module_id from ".$table_prefix."modules
where active = 1 order by sequence limit
1"),0,0);
}
if (!$o) {
$msg .= "<p
class=\"warning\">".$lang["no_modules_install
ed"]."</p>\n";
} else {
$q = "SELECT * from
".$table_prefix."modules where module_id =
".$o;
$query = mysql_query($q);
if (!$query) $msg = "Database Error :
".$q;
else {
$row =
mysql_fetch_array($query);
if (!$page_title) $page_title =
$row["name"];
$script = $row["script"];
$ly = $row["year"];
$lm = $row["month"];
$la = $row["day"];

$le = $row["week"];

}
}
$common_get =
"o=".$o."&c=".$c."&m=".$m."&a=".$a."&y=".
$y."&w=".$w;
?>

day_weak_function.php
<?
function showGrid($date) {
global $title, $niceday, $start_time,
$end_time, $venue, $city, $state, $cat, $color,
$background, $ed, $usr, $o, $c, $m, $a, $y, $w,
$lang,$scale,$ap,$status,$send,$day_week_star
t_hour, $day_week_end_hour;
$threshold_hour =
$day_week_start_hour ? $day_week_start_hour
: 0;
$threshold_min =
$day_week_start_hour ? 0 : 30;
$txi = ($threshold_hour * 60) +
$threshold_min;
if ($start_time[$date]) {
ksort($start_time[$date]);
$scale = 1;
$wait = 1;
while (list($t) =
each($start_time[$date])) {
//filter string
$value,$parse_start_time
while
(list($id,$value) = each($start_time[$date][$t]))
{

if (eregi
("([0-9]{1,2}):([0-9]{2})[
]?([a|p]m)",$value,$parse_start_time)) {

$parse_end_time[1] = "00";
}

if
((eregi("am",$parse_start_time[3])) &&
($parse_start_time[1] == 12))
$parse_start_time[1] = $parse_start_time[1] 12;
if
((eregi("pm",$parse_start_time[3])) &&
($parse_start_time[1] < 12))
$parse_start_time[1] = $parse_start_time[1] +
12;

$parse_end_time[2] = "30";
else {
}
$parse_end_time[1] =
$parse_start_time[1] + 1;

$event_id[]
= $id;

if ($parse_end_time[1] > 24)


$parse_end_time[1] = 24;

$sxi =
($parse_start_time[1] * 60) +
$parse_start_time[2];

if ($parse_end_time[1] == 24)
$parse_end_time[2] = "00";

$exi =
($parse_end_time[1] * 60) +
$parse_end_time[2];

if
(strlen($parse_start_time[1]) == 1)
$parse_start_time[1] =
"0".$parse_start_time[1];

if ($sxi <
}

$txi) {

$sxi = 0;
if

if

($exi <= $txi) {

($end_time[$date][$t][$id]) {

elseif($value == "All Day") {

eregi ("([0-9]{1,2}):([0-9]{2})[
]?([a|p]m)",$end_time[$date][$t][$id],$parse_e
nd_time);

$parse_start_time[1] = "00";

if ((eregi("am",$parse_end_time[3]))
&& ($parse_end_time[1] == 12))
$parse_end_time[1] = $parse_end_time[1] - 12;

$parse_end_time[1] = "24";

$exi = 30;
}
else {
$parse_start_time[2] = "00";
$exi = $exi - $txi + 30;
}
}
$parse_end_time[2] = "00";
else {
if ((eregi("pm",$parse_end_time[3]))
&& ($parse_end_time[1] < 12))
$parse_end_time[1] = $parse_end_time[1] +
12;

}
$sxi = $sxi - $txi + 30;
elseif($value == "TBA") {

$exi = $exi - $txi + 30;


}

$parse_start_time[1] = "00";
if (strlen($parse_end_time[1]) == 1)
$parse_end_time[1] = "0".$parse_end_time[1];

$parse_start_time[2] = "00";

$sh[] =
$exi - $sxi - 2;

$sx[] =
$sxi;

$start_fill[$r][] = $sx[$k];

$start_event[$indent][0] =
$event_id[$k];

$ex[] =
$exi;

$end_fill[$r][] = $ex[$k];
$len = $exi

- $sxi;

$event_length[$indent][0] = $v;
$start_event[$r][] = $event_id[$k];

$sta[] =

$sta_e[$indent][0] = $sta[$k];

$value;

$sta_e[$r][] = $sta[$k];
$end[] =

$end_time[$date][$t][$id];

$end_e[$r][] = $end[$k];
}

$event_length[$r][] = $v;

}
$found = true;
arsort($sh);
$start_empty[0][0] = 0;
$end_empty[0][0] = 1440;
$indent = 0;
while (list($k,$v) =

break 2;

each($sh)) {
$found = false;
reset($start_empty);
while (list($r) =
each($start_empty)) {

}
}
}
if (!$found) {
$indent++;

reset($start_empty[$r]);
while
(list($kk,$vv) = each($start_empty[$r])) {

$start_empty[$indent][0] = 0;
if

(($sx[$k] >= $vv) && ($ex[$k] <=


$end_empty[$r][$kk])) {

$end_empty[$indent][0] = $sx[$k];
$start_empty[$indent][1] = $ex[$k];

$end_empty[$r][] =
$end_empty[$r][$kk];

$end_empty[$indent][1] = 1440;

$end_empty[$r][$kk] = $sx[$k];

$start_fill[$indent][0] = $sx[$k];

$start_empty[$r][] = $ex[$k];

$end_fill[$indent][0] = $ex[$k];

$end_e[$indent][0] = $end[$k];
}
}
$columns = $indent+1;;
$per = 100 / $columns;
$wide =
number_format($per,0);
$notsowide = $wide-1;
reset($start_fill);
while (list($r) =
each($start_fill)) {
while (list($k,$v) =
each($start_fill[$r])) {
$v =
$v+30;
$left =
$wide * $r;
// wrap fix
from Vepr
echo "<div
class=\"wrap\"><div class=\"date\" style=\"";
echo
"height: ".$event_length[$r][$k]."px; top:
".$v."px; width: ".$notsowide."%;
left:".$left."%;";
//background category propose
if
($color[$start_event[$r][$k]]) echo "color:
".$color[$start_event[$r][$k]]."; background:
".$background[$start_event[$r][$k]].";";

//tampilan
border propose

echo

"</span>\n";

if
(($status[$start_event[$r][$k]] == 2) ||
($status[$start_event[$r][$k]] == 3))
echo "
filter:alpha(opacity=80); opacity:.80; -mozopacity:.80; zoom: 1; border: 1px dashed
".$color[$start_event[$r][$k]].";";
echo "\">

//tampilan
border setelah approve
if
($ed[$start_event[$r][$k]]==true) {
echo
"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&
nbsp;&nbsp;<span class=\"edit\">";

<div
class=\"inner\">";

if
echo "<div

class=\"title\"><a
href=\"show_event.php?id=".$start_event[$r][$
k]."&o=".$o."&c=".$c."&m=".$m."&a=".$a."
&y=".$y."&w=".$w."\"
onClick=\"openPic('show_event.php?id=".$star
t_event[$r][$k].$status2[$start_event[$r][$k]]."
&size=small','pop','600','400');
window.newWindow.focus(); return false\"";
//background category
if
($color[$start_event[$r][$k]])
echo "
style=\"color: ".$color[$start_event[$r][$k]].";
background:
".$background[$start_event[$r][$k]].";\"";
echo
">".$title[$start_event[$r][$k]]."</a>
</div>\n";

echo
"<span class=\"time\">".$sta_e[$r][$k];
if
($end_e[$r][$k]) echo " - ".$end_e[$r][$k];

elseif
(($ap[$start_event[$r][$k]]==true) &&
($send[$start_event[$r][$k]] == 6)) {

(($ap[$start_event[$r][$k]]==true) &&
(($status[$start_event[$r][$k]] == 2) ||
($status[$start_event[$r][$k]] == 3))) {
echo "<img src='./images/Insert
Record.gif' />&nbsp;<a
href=\"admin_actions.php?id=".$start_event[$r
][$k]."&o=".$o."&c=".$c."&m=".$m."&a=".$a
."&y=".$y."&w=".$w."&mode=".approve."\">"
.$lang["approve"]."</a>&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;";
}
if
(($ap[$start_event[$r][$k]]==true) &&
($send[$start_event[$r][$k]] == 1)) {
echo "<img src='./images/massage.gif'
/>&nbsp;<a
href=\"send.php?id=".$start_event[$r][$k]."&o
=".$o."&c=".$c."&m=".$m."&a=".$a."&y=".$y
."&w=".$w."\"
onClick=\"openPic('send.php?id=".$start_event
[$r][$k]."&size=small','pop','650','600');
window.newWindow.focus(); return
false\">".$lang["send massage to
member"]."</a>&nbsp;&nbsp;&nbsp;&nbsp;&
nbsp;&nbsp;";

echo "<img
src='./images/massage.GIF' />&nbsp;<a
href=\"send.php?id=".$start_event[$r][$k]."&o
=".$o."&c=".$c."&m=".$m."&a=".$a."&y=".$y
."&w=".$w."\"
onClick=\"openPic('view_link.php?id=".$start_
event[$r][$k]."&size=small','pop','650','600');
window.newWindow.focus(); return
false\">".$lang["view_link"]."</a>&nbsp;&nbs
p;&nbsp;&nbsp;&nbsp;&nbsp;";
}

echo "<img
src='./images/ctxwiz_cls.gif' />&nbsp;<a
href=\"edit_event.php?id=".$start_event[$r][$k
]."&o=".$o."&c=".$c."&m=".$m."&a=".$a."&
y=".$y."&w=".$w."\"
onClick=\"openPic('edit_event.php?id=".$start
_event[$r][$k]."&size=small','pop','650','600');
window.newWindow.focus(); return
false\">".$lang["edit"].
"</a>&nbsp;&nbsp;&nbsp;&nbsp;&n
bsp;&nbsp;<img src='./images/DELETE.gif'
/>&nbsp;<a
href=\"delete_event.php?id=".$start_event[$r][
$k]."&o=".$o."&c=".$c."&m=".$m."&a=".$a."
&y=".$y."&w=".$w."\">".$lang["delete"]."</a
></span>\n";
}

echo

$h = $i;
$ap = "am";

"</div></div></div>\n";
}
}
}
}

function showHours() {
global $day_week_start_hour,
$day_week_end_hour;
// build day
echo "<td class=\"timex\"><table
class=\"day\"><tr><td width=\"100%\"><div
class=\"time_frame\">\n";
echo "<div
class=\"cell_top\">Time</div>\n";
echo "<div class=\"cell\">12:00 am
".$day_week_start_min."</div>\n";
$i = $day_week_start_hour ?
$day_week_start_hour : 0;
$j = $day_week_start_hour ? 0 : 30;
$max = $day_week_end_hour ?
$day_week_end_hour : 24;
while ($i < $max) {
if ($j < 10) {
$j = "0".$j;
}
if ($i == 0) {
$h = 12;
$ap = "am";
} elseif ($i == 12) {
$h = $i;
$ap = "pm";
} elseif ($i > 12) {
$h = $i - 12;
$ap = "pm";
} else {

}
echo "<div
class=\"cell\">".$h.":".$j." ".$ap."</div>\n";
$j = $j+30;
if ($j >= 60) {
$j = "0";
$i++;
}
}
echo
"</div></td></tr></table></td>";
}
function showDay($dy,$dm,$da,$caption="") {
global $la, $w, $c,
$day_week_start_hour, $day_week_end_hour;
// build day
echo "<div
class=\"single_day_frame\">";
echo "<div class=\"cell_top\">";
if($caption) echo $caption;
else {
echo '<a
href="index.php?o=',$la,'&w=',$w,'&c=',$c,'&
m=',$dm,'&a=',$da,'&y=',$dy,'">';
echo date('l, F j',
mktime(0,0,0,$dm,$da,$dy));
echo '</a>';
}
echo "</div>";
echo "<div class=\"cell\"
id=\"0:00:".$dm."/".$da."/".$dy."\"></div>\n";
$i = $day_week_start_hour ?
$day_week_start_hour : 0;
$j = $day_week_start_hour ? 0 : 30;
$max = $day_week_end_hour ?
$day_week_end_hour : 24;

while ($i < $max) {


if ($j < 10) {
$j = "0".$j;
if ($i < 10) $i = $i;
}
if ($i == 0) {
$h = 12;
$ap = "am";
} elseif ($i == 12) {
$h = $i;
$ap = "pm";
} elseif ($i > 12) {
$h = $i - 12;
$ap = "pm";
} else {
$h = $i;
$ap = "am";
}
if ($i < 10) $i = $i;
//echo "<div class=\"cell\"
id=\"".$i.":".$j."\">".$h.":".$j."
".$ap."</div>\n";
echo "<div class=\"cell\"
id=\"".$i.":".$j.":".$dm."/".$da."/".$dy."\"></di
v>\n";
$j = $j+30;
if ($j >= 60) {
$j = "0";
$i++;
}
}

$sdate = $dy.$dm.$da;
echo "<div id=\"dates\">\n";
showGrid($sdate);
echo "</div>";
echo "</div>";

if ($superpost) {
$javascript = '<script type="text/javascript">
function getElementsByClassName(oElm,
strTagName, strClassName){
var arrElements = (strTagName ==
"*" && oElm.all)? oElm.all :
oElm.getElementsByTagName(strTagName);
var arrReturnElements = new Array();
strClassName =
strClassName.replace(/-/g, "\-");
var oRegExp = new RegExp("(^|\s)" +
strClassName + "(\s|$)");
var oElement;
for(var i=0; i<arrElements.length;
i++){
oElement = arrElements[i];
if(oRegExp.test(oElement.className)
){
arrReturnElements.push(oElement);
}
}
return (arrReturnElements)
}
var start;
var end;
var flagged = Array();
window.onload = function () {
var x = getElementsByClassName(document,
"div", "cell")
for (var i=0;i<x.length;i++) {

//x[i].onmousedown = function ()
{this.style.backgroundColor="#cccccc"}
x[i].onmousedown = startup
x[i].onmouseout = flag
x[i].onmouseover = whatadrag
x[i].onmouseup = endup
//x[i].onmouseout = function ()
{this.style.backgroundColor="#ffffff"}
//x[i].onclick = function ()
{this.innerHTML = this.id}
//x[i].onclick = click
}
/*
var x = getElementsByClassName(document,
"div", "date")
for (var i=0;i<x.length;i++) {
x[i].onmouseout = contract
x[i].onmouseover = expand
}
function expand () {
this.oldheight = this.style.height
this.style.height ="auto"
this.style.zIndex = 2
}
function contract () {
this.style.height = this.oldheight
this.style.zIndex = 1
}
*/
}
function startup () {
start = this.id
end = this.id
this.style.backgroundColor="#cccccc"
}

function flag() {
var next = Math.abs(start - end)
var cur = Math.abs(start - this.id)
}
function whatadrag() {
if (start) {
this.style.backgroundColor="#cccccc"
var cur = Math.abs(start this.id)
var next = Math.abs(start end)
if (cur < next) {
document.getElementById(end).style.
backgroundColor="#ffffff";
}
end = this.id;
}
}
function getdatestring(i,j) {
var h
var ap
if (i == 0) {
h = 12;
ap = "am";
} else if (i == 12) {
h = i;
ap = "pm";
} else if (i > 12) {
h = i - 12;
ap = "pm";
} else {
h = i;
ap = "am";

}
if (j < 30) j = "00";
var stringy = h + ":" + j + " " + ap;
return(stringy);
}
function endup() {
end = this.id
if (start.substring(2,3) == ":") {
var i = start.substring(0,2)
var j = start.substring(3,5)
var ddate = start.substring(6)
} else {
var i = start.substring(0,1)
var j = start.substring(2,4)
var ddate = start.substring(5)
}
j = parseInt(j);
i = parseInt(i);
var sstart = getdatestring(i,j);
if (end.substring(2,3) == ":") {
var i = end.substring(0,2)
var j = end.substring(3,5)
} else {
var i = end.substring(0,1)
var j = end.substring(2,4)
}
j = parseInt(j);
i = parseInt(i);
j = j + 30;
if (j == 60) {
j = "00";
i++;
}
var eend = getdatestring(i,j);

var adfield =
"add_event.php?size=small&next_date=" +
ddate + "&next_start=" + sstart +
"&next_end=" + eend;
x=openPic(adfield,"pop","650","600")
x.focus();
start = null;
end = null;
flagged = Array()
var x =
getElementsByClassName(document, "div",
"cell")
for (var i=0;i<x.length;i++) {
x[i].style.backgroundColor="#ffffff"
//x[i].blur()
}
}
</script>';
}
?>
day.php
<?php
include "modules/day_week_functions.php";
include "includes/header.php";
?>
<?php
$thisday = $y."-".$m."-".$a;
$nextday = $next["day"]["y"]."".$next["day"]["m"]."-".$next["day"]["a"];
grab($thisday,$nextday,$c);
echo "<div class=\"frame\">\n";
echo '<div class="cal_top"><a
href="',$PHP_SELF,'?o=',$o,'&w=',$w,'&c=',$
c,'&m=',$prev["day"]["m"],'&a=',$prev["day"][
"a"],'&y=',$prev["day"]["y"],'">

<img src="images/prev.png" border="0"


height="20"/></a> ',date('l, F j, Y',
mktime(0,0,0,$m,$a,$y)),' <a
href="',$PHP_SELF,'?o=',$o,'&w=',$w,'&c=',$
c,'&m=',$next["day"]["m"],'&a=',$next["day"][
"a"],'&y=',$next["day"]["y"],'"><img
src="images/next.png" border="0"
height="20"/></a></div>'."\n";
echo "<table class=\"day\"><tr>";
showHours();
echo "<td><table class=\"day\"><tr>";
echo "<td width=\"100%\"
class=\"single_day\">\n";
showDay($y,$m,$a,"Events");
echo "</td>";
echo "</tr></table></td></tr></table>";
echo "</div>\n";
include "includes/footer.php";
?>
add_event.php
<?php
$javascript = '<script language="JavaScript">
var cal = new
CalendarPopup("testdiv1");
cal.offsetX=-20;
cal.offsetY=20;
var testpopup5 = new
PopupWindow("timelayer");
testpopup5.offsetX=-20;
testpopup5.offsetY=20;
testpopup5.autoHide();
var testpopup5input=null;
function test5popupactivate(obj,anchor) {
testpopup5input=obj;
testpopup5.showPopup(anchor);
}
function testpopup5pick(val) {
testpopup5input.value = val;

testpopup5.hidePopup();
}
function null_out(t,i) {
if ((t.value == "all") || (t.value ==
"tba")){
eval("t.form.start_time_" + i
+".disabled=true");
eval("t.form.end_time_" + i
+".disabled=true");

eval("t.form.start_time_" + i
+".value=\'12:00 am\'");
if (t.value == "all") {
eval("t.form.end_time_" + i
+".value=\'11:59 pm\'");
} else {
eval("t.form.end_time_" + i
+".value=\'12:00 am\'");
}
eval("turn_off(\'anchor_time_start_" +
i +"\')");
eval("turn_off(\'anchor_time_end_" +
i +"\')");
} else {
eval("t.form.start_time_" + i
+".disabled=false");
eval("t.form.end_time_" + i
+".disabled=false");

eval("turn_on(\'anchor_time_start_" +
i +"\')");
eval("turn_on(\'anchor_time_end_" + i
+"\')");

}
}
function turn_on(whichLayer) {
if (document.getElementById) {
// this is the way the
standards work
var style2 =
document.getElementById(whichLayer).style;
style2.visibility = "visible";
} else if (document.all) {
// this is the way old msie
versions work
var style2 =
document.all[whichLayer].style;
style2.visibility = "visible";
} else if (document.layers) {
// this is the way nn4 works
var style2 =
document.layers[whichLayer].style;
style2.visibility = "show";
}
}
function turn_off(whichLayer) {
if (document.getElementById) {
// this is the way the
standards work
var style2 =
document.getElementById(whichLayer).style;
style2.visibility = "hidden";
} else if (document.all) {
// this is the way old msie
versions work
var style2 =
document.all[whichLayer].style;
style2.visibility = "hidden";
} else if (document.layers) {
// this is the way nn4 works
var style2 =
document.layers[whichLayer].style;
style2.visibility = "hide";

}
}
</script>';
include "includes/start.php";
$page_title = $lang["title_add_event"];

function category_tree($category_id) {
global $table_prefix, $indent,
$supercategory, $scategory;
$q = "SELECT category_id, name
from ".$table_prefix."categories where sub_of
= ".$category_id." order by name";
$query = mysql_query($q);
if (!$query) echo "Database Error :
".$q;
else {
while
($row=mysql_fetch_row($query)) {
$mod = 0;
if (!$supercategory)
{
$q = "select
moderate from
".$table_prefix."users_to_categories where
category_id = ".$row[0]." and user_id =
".$_SESSION["user_id"];
$qu =
mysql_query($q);
if
(mysql_num_rows($qu) > 0) $mod =
mysql_result($qu,0,0);
}
else {
$mod = 3;
}
if ($mod > 0) {

echo
"<option value=\"".$row[0]."\"";
if($mod <=
2) echo " disabled";
if
($scategory == $row[0]) echo " SELECTED";
echo
">".$indent.$row[1]."</option>\n";
}

$indent .= "__";
category_tree($row[0]);
$indent =
substr($indent, 2);
}
}
}

function group_tree($group_id) {
global $table_prefix, $indent,
$supergroup, $sgroup;
$q = "SELECT group_id, name from
".$table_prefix."groups where sub_of =
".$group_id." order by name";
$query = mysql_query($q);
if (!$query) echo "Database Error :
".$q;
else {
while
($row=mysql_fetch_row($query)) {
$mod = 0;
if (!$supergroup) {
$q = "select
moderate from
".$table_prefix."users_to_groups where

group_id = ".$row[0]." and user_id =


".$_SESSION["user_id"];
$qu =
mysql_query($q);
if
(mysql_num_rows($qu) > 0) $mod =
mysql_result($qu,0,0);
}
else {
$mod = 3;
}
if ($mod > 0) {
echo
"<option value=\"".$row[0]."\"";
if($mod <
2) echo " disabled";
if ($sgroup
== $row[0]) echo " SELECTED";
echo
">".$indent.$row[1]."</option>\n";
}

$indent .= "__";
group_tree($row[0]);
$indent =
substr($indent, 2);
}

echo "<p
class=\"warning\">".$lang["not_authorized_ev
ents"]."</p>\n";
}
else {
if ($_POST["mode"]
== $lang["add_event"]) {
if(get_magic_quotes_gpc()) {
$title =
mysql_real_escape_string(stripslashes($_POST
["title"]));
$description =
mysql_real_escape_string(stripslashes($_POST
["description"]));
$category_id =
mysql_real_escape_string(stripslashes($_POST
["category"]));
$group_id =
mysql_real_escape_string(stripslashes($_POST
["group"]));
$propose =
mysql_real_escape_string(stripslashes($_POST
["propose"]));
}

}
}
if (!$superview) {
header("Location:
".$path."login.php?return_to=".$PHP_SELF);
}
elseif (!$superpost) {
include
"includes/header.php";

else {
$title =
mysql_real_escape_string($_POST["title"]);
$description =
mysql_real_escape_string($_POST["descriptio
n"]);
$category_id =

mysql_real_escape_string($_POST["category"]
);

$group_id =
mysql_real_escape_string($_POST["group"]);

else {

$propose =
mysql_real_escape_string($_POST["propose"])
;
}
if

if
($propose == "propose") $status_id = 2;
else
$status_id = 1;

header("Location:
".$path."add_event.php?msg=".$lang["not_auth
orized_events_group"]."&size=".$_REQUEST[
"size"]);

}
if ($group_id) {

$gmod =
mysql_result(mysql_query($q),0,0);

$send_id =
1; //sending massage to member
$q =
"INSERT into ".$table_prefix."events (title,
category_id, description, user_id, group_id,
status_id, send_id, quick_approve) values
('".$title."', ".$category_id.", '".$description."',
".$_SESSION["user_id"].", ".$group_id.",
".$status_id.", ".$send_id.", '".$sauce."')";

(!$supergroup) {

$q = "select moderate from


".$table_prefix."users_to_groups where
group_id = ".$group_id." and user_id =
".$_SESSION["user_id"];

$sauce =
md5(time());

if

$query =

(!$supercategory) {

mysql_query($q);

$q
= "select moderate from
".$table_prefix."users_to_categories where
category_id = ".$category_id." and user_id =
".$_SESSION["user_id"];

$event_id =
mysql_insert_id();
if (!$query)
$msg .= "Database Error : ".$q;
else {

if ($gmod < 2) {
header("Location:
".$path."add_event.php?msg=".$lang["not_auth
orized_events_group"]."&size=".$_REQUEST[
"size"]);
}
else {
if ($gmod == 2)
$propose = "propose";
}

$j
$mod =
mysql_result(mysql_query($q),0,0);

= 0;
while ($_POST["date_".$j]) {
if

($mod < 2) {
header("Location:
".$path."add_event.php?msg=".$lang["not_auth
orized_events_category"]."&size=".$_REQUE
ST["size"]);
}
}

if (!$_POST["delete_".$j]) {
if ($_POST["all_day_".$j] ==
"all") {

$_POST["start_time_".$j] = "12:00
am";

$_POST["end_time_".$j] = "11:59
pm";

}
if ((eregi("pm",$start_time[3])) &&
($start_time[1] < 12)) $start_time[1] =
$start_time[1] + 12;

}
else if
($_POST["all_day_".$j] == "tba") {

$_POST["start_time_".$j] = "12:00
am";

else {
if
(($_POST["end_time_".$j])&&(!eregi ("([09]{1,2}):([0-9]{2})[
]?([a|p]m)",$_POST["end_time_".$j],$end_tim
e))) {

$_POST["end_time_".$j] = "12:00
am";

if ((eregi("pm",$end_time[3])) &&
($end_time[1] < 12)) $end_time[1] =
$end_time[1] + 12;

if (strlen($start_time[1]) == 1)
$start_time[1] = "0".$start_time[1];

$msg2 .= "Bad End Time :


".$_POST["end_time_".$j];
}
}

if (!ereg ("([0-9]{1,2})[\/-]+([09]{1,2})[\/-]+([09]{4})",$_POST["date_".$j],$date)) {

if (strlen($end_time[1]) == 1)
$end_time[1] = "0".$end_time[1];

else {
$msg2 .= "Bad Date
: ".$_POST["date_".$j];
if (strlen($date[1]) == 1) $date[1] =
"0".$date[1];

$start_date = $date[3]."-".$date[1]."".$date[2]." ".$start_time[1].":".$start_time[2];

if (strlen($date[2]) == 1) $date[2] =
"0".$date[2];

else {

if (!eregi ("([09]{1,2}):([0-9]{2})[
]?([a|p]m)",$_POST["start_time_".$j],$start_ti
me)) {
$msg2 .=
"Bad Start Time : ".$_POST["start_time_".$j];

if ((eregi("am",$start_time[3])) &&
($start_time[1] == 12)) $start_time[1] =
$start_time[1] - 12;

if ((eregi("am",$end_time[3])) &&
($end_time[1] == 12)) $end_time[1] =
$end_time[1] - 12;

if ($_POST["end_time_".$j]) {

$end_date = $date[3]."".$date[1]."-".$date[2]."
".$end_time[1].":".$end_time[2];

$_POST["end_time_add"] = "12:00
if
(($end_time[1].$end_time[2]) >=
($start_time[1].$start_time[2])) {

$q = "INSERT into
".$table_prefix."dates (event_id, date,
end_date) values (".$event_id.",
'".$start_date."', '".$end_date."')";

am";

$query =

}
if
(!ereg ("([0-9]{1,2})[\/-]+([0-9]{1,2})[\/-]+([09]{4})",$_POST["date_add"],$date)) {

if (!$query)

$msg2 .= "Bad Date :


".$_POST["date_add"];

mysql_query($q);

$msg2 .= "Database Error : ".$q;

}
}

else {

}
}
else {

if (!eregi ("([0-9]{1,2}):([0-9]{2})[
]?([a|p]m)",$_POST["start_time_add"],$start_ti
me)) {

}
}

$q = "INSERT into
".$table_prefix."dates (event_id, date) values
(".$event_id.", '".$start_date."')";

$msg2 .= "Bad Start Time :


".$_POST["start_time_add"];

$j++;
}

}
if

else {

($_POST["date_add"]) {
if
($_POST["all_day_add"] == "all") {

}
$_POST["start_time_add"] = "12:00
am";
$_POST["end_time_add"] = "11:59

if
(($_POST["end_time_add"])&&(!eregi ("([09]{1,2}):([0-9]{2})[
]?([a|p]m)",$_POST["end_time_add"],$end_ti
me))) {
$msg2 .= "Bad End
Time : ".$_POST["end_time_add"];

pm";
}
else {

}
else if ($_POST["all_day_add"] ==
"tba") {

$q = "INSERT into
".$table_prefix."dates (event_id, date) values
(".$event_id.", '".$start_date."')";

$_POST["start_time_add"] = "12:00
am";

else {

if (strlen($date[1]) == 1)
$date[1] = "0".$date[1];
if (strlen($date[2]) == 1)
$date[2] = "0".$date[2];

//loop through recurring

$q

events

= "INSERT into ".$table_prefix."dates


(event_id, date) values (".$event_id.",
DATE_ADD('".$start_date."', INTERVAL
".$next." DAY))";

$juno = 0;
$r = $_POST["recurring"];

if
((eregi("am",$start_time[3])) &&
($start_time[1] == 12)) $start_time[1] =
$start_time[1] - 12;
if
((eregi("am",$end_time[3])) && ($end_time[1]
== 12)) $end_time[1] = $end_time[1] - 12;

}
if (!$r) $r = 0;
}
$int = $_POST["interval"];

while ($juno <= $r) {

else {

if
((eregi("pm",$start_time[3])) &&
($start_time[1] < 12)) $start_time[1] =
$start_time[1] + 12;

($_POST["end_time_add"]) {

if
((eregi("pm",$end_time[3])) && ($end_time[1]
< 12)) $end_time[1] = $end_time[1] + 12;

$end_date
= $date[3]."-".$date[1]."-".$date[2]."
".$end_time[1].":".$end_time[2];

if (strlen($start_time[1]) ==
1) $start_time[1] = "0".$start_time[1];
if (strlen($end_time[1]) == 1)
$end_time[1] = "0".$end_time[1];

$start_date = $date[3]."".$date[1]."-".$date[2]."
".$start_time[1].":".$start_time[2];

$next = $juno * $int;


if

$q =
"INSERT into ".$table_prefix."dates (event_id,
date) values (".$event_id.",
DATE_ADD('".$start_date."', INTERVAL
".$next." DAY))";
}

if
(($end_time[1].$end_time[2]) >=
($start_time[1].$start_time[2])) {

$query =
mysql_query($q);

$q
= "INSERT into ".$table_prefix."dates
(event_id, date, end_date) values
(".$event_id.", DATE_ADD('".$start_date."',
INTERVAL ".$next." DAY),
DATE_ADD('".$end_date."', INTERVAL
".$next." DAY))";

if (!$query) $msg2
.= "Database Error : ".$q;
$juno++;
}
}

}
}

else {

<input type="hidden" name="size"


value="<?php echo $_REQUEST["size"]; ?>">

<?php
category_tree(0); ?>

if($msg2){

</select>
$query =

</td>

mysql_query("DELETE from
".$table_prefix."events where event_id =
".$event_id);
$javascript
.= "\n<script language=\"JavaScript\"
type=\"text/javascript\">
<!--\n
alert('$msg2 Please Try Again');\n
// ->\n</script>\n";
}
else{
$msg =
$lang["add_event"];
}

}
}

include "includes/header.php";
$scategory = $_POST["category"] ?
$_POST["category"] : $c;
$sgroup = $_POST["group"] ?
$_POST["group"] : $w;
?>
<form action="add_event.php" id="event"
name="event" method="post">
<?php include "includes/hidden_fields.php"; ?>

<table>

</tr>
<tr>

<td><?php echo
$lang["title"];?>:</td>
<td>:</td>
<td><input type="text"
name="title" id="title" value="<?php echo
$_POST["title"]; ?>" size="40"></td>
</tr>
<tr>
<td><?php echo
$lang["group"];?>:</td>
<td>:</td>
<td>
<select
name="group" id="group">
<?php
group_tree(0); ?>
</select>
<select
name="propose" id="propose"><option
value="post"<? if ($_POST["propose"] ==
"post") echo " selected"; ?>><?php echo
$lang["post"];?></option><option
value="propose"<? if ($_POST["propose"] ==
"propose") echo " selected"; ?>><?php echo
$lang["propose"];?></option></select>
</td>
</tr>
<tr>
<td><?php echo
$lang["category"];?>:</td>
<td>:</td>
<td>
<select
name="category" id="category">

</table>
<table>
<tr>
<th><?php echo
$lang["delete?"];?></th>
<th><?php echo
$lang["date"];?></th><th><?php echo
$lang["all_day"];?> / <?php echo
$lang["tba"];?> / <?php echo
$lang["enter_time"];?></th><th><?php echo
$lang["start_time"];?></th>
<th><?php echo
$lang["end_time"];?></th>
</tr>
<?php
$i = 0;
$j = 0;
while ($_REQUEST["date_".$j]) {
if (!$_REQUEST["delete_".$j]) {
$disabled = "";
$hidden = "";
$checked= "";
$checked_tba= "";
$checked_enter= " checked";
if
($_REQUEST["all_day_".$j] == "all") {
$_REQUEST["start_time_".$j] =
"12:00 am";

$disabled = "
$_REQUEST["end_time_".$j] =
"11:59 pm";
$disabled = "
disabled";
$hidden = "
style=\"visibility: hidden;\"";
$checked= "
checked";
$checked_enter= "";
} elseif
(($_REQUEST["start_time_".$j] == "12:00
am") && ($_REQUEST["end_time_".$j] ==
"11:59 pm")) {
$disabled = "
disabled";
$hidden = "
style=\"visibility: hidden;\"";
$checked= "
checked";
$checked_enter= "";
} elseif
($_REQUEST["all_day_".$j] == "tba") {
$_POST["start_time_".$j] = "12:00
am";
$_POST["end_time_".$j] = "12:00
am";
$disabled = "
disabled";
$hidden = "
style=\"visibility: hidden;\"";
$checked_tba = "
checked";
$checked_enter= "";
} elseif
(($_REQUEST["start_time_".$j] == "12:00
am") && ($_REQUEST["end_time_".$j] ==
"12:00 am")) {

disabled";
$hidden = "
style=\"visibility: hidden;\"";
$checked_tba= "
checked";
$checked_enter= "";
}
?>
<tr>
<td><input type="checkbox"
name="delete_<?php echo $i; ?>"
id="delete_<?php echo $i; ?>" value="yes"
/></td>
<td><input type="text"
name="date_<?php echo $i; ?>"
id="date_<?php echo $i; ?>" value="<?php
echo $_REQUEST["date_".$j]; ?>"size="10">
<a href="#"
onclick="cal.select(document.event.date_<?ph
p echo $i; ?>,this.name,'MM/dd/yyyy'); return
false;" NAME="anchor_date_<?php echo $i;
?>" ID="anchor_date_<?php echo $i;
?>"><img src="images/calendar.png"
border="0" /></a></td>
<td><input type="radio"
onClick="null_out(this,<?php echo $i; ?>);"
name="all_day_<?php echo $i; ?>"
id="all_day_<?php echo $i; ?>"
value="all"<?php echo $checked; ?>/> / <input
type="radio" onClick="null_out(this,<?php
echo $i; ?>);" name="all_day_<?php echo $i;
?>" id="all_day_<?php echo $i; ?>"
value="tba"<?php echo $checked_tba; ?>/> /
<input type="radio"
onClick="null_out(this,<?php echo $i; ?>);"
name="all_day_<?php echo $i; ?>"
id="all_day_<?php echo $i; ?>" value=""<?php
echo $checked_enter; ?>/></td>

<td><input type="text"
name="start_time_<?php echo $i; ?>"
id="start_time_<?php echo $i; ?>"
value="<?php echo
$_REQUEST["start_time_".$j]; ?>"
size="10"<?php echo $disabled; ?>/> <a
href="#"
onclick="test5popupactivate(document.event.st
art_time_<?php echo $i; ?>,this.name);return
false;" NAME="anchor_time_start_<?php echo
$i; ?>" ID="anchor_time_start_<?php echo $i;
?>"<?php echo $hidden; ?>><img
src="images/time.png" border="0" /></a></td>
<td><input type="text"
name="end_time_<?php echo $i; ?>"
id="end_time_<?php echo $i; ?>"
value="<?php echo
$_REQUEST["end_time_".$j]; ?>"
size="10"<?php echo $disabled; ?>/> <a
href="#"
onclick="test5popupactivate(document.event.e
nd_time_0,this.name);return false;"
NAME="anchor_time_end_<?php echo $i; ?>"
ID="anchor_time_end_<?php echo $i;
?>"<?php echo $hidden; ?>><img
src="images/time.png" border="0" /></a></td>
</tr>
<?php
$i++;
}
$j++;
}
if ($_POST["date_add"]) {
$disabled = "";
$hidden = "";
$checked= "";
$checked_tba= "";

$checked_enter= " checked";


if ($_POST["all_day_add"]) {
$_POST["start_time_add"] =
"12:00 am";
$_POST["end_time_add"] =
"11:59 pm";
$disabled = " disabled";
$hidden = " style=\"visibility:
hidden;\"";
$checked= " checked";
$checked_enter= "";
} elseif (($_POST["start_time_add"]
== "12:00 am") &&
($_POST["end_time_add"] == "11:59 pm")) {
$disabled = " disabled";
$hidden = " style=\"visibility:
hidden;\"";
$checked= " checked";
$checked_enter= "";
} elseif ($_POST["all_day_".$j] ==
"tba") {
$_POST["start_time_".$j] =
"12:00 am";
$_POST["end_time_".$j] =
"12:00 am";
$disabled = " disabled";
$hidden = " style=\"visibility:
hidden;\"";
$checked_tba = " checked";
$checked_enter= "";
} elseif (($_POST["start_time_".$j]
== "12:00 am") && ($_POST["end_time_".$j]
== "12:00 am")) {
$disabled = " disabled";
$hidden = " style=\"visibility:
hidden;\"";
$checked_tba= " checked";
$checked_enter= "";
}
//loop through recurring events

ereg ("([0-9]{1,2})[\/-]+([09]{1,2})[\/-]+([09]{4})",$_POST["date_add"],$date);
$juno = 0;
$r = $_POST["recurring"];
if (!$r) $r = 0;
$int = $_POST["interval"];
while ($juno <= $r) {
$next = $juno * $int;
$show_date = date( "m/d/Y",
mktime( 0, 0, 0, $date[1], $date[2]+$next,
$date[3] ) );
?>
<tr>
<td><input type="checkbox"
name="delete_<?php echo $i; ?>"
id="delete_<?php echo $i; ?>" value="yes"
/></td>
<td><input type="text"
name="date_<?php echo $i; ?>"
id="date_<?php echo $i; ?>" value="<?php
echo $show_date; ?>"size="10"> <a href="#"
onclick="cal.select(document.event.date_<?ph
p echo $i; ?>,this.name,'MM/dd/yyyy'); return
false;" NAME="anchor_date_<?php echo $i;
?>" ID="anchor_date_<?php echo $i;
?>"><img src="images/calendar.png"
border="0" /></a></td>
<td><input type="radio"
onClick="null_out(this,<?php echo $i; ?>);"
name="all_day_<?php echo $i; ?>"
id="all_day_<?php echo $i; ?>"
value="all"<?php echo $checked; ?>/> / <input
type="radio" onClick="null_out(this,<?php
echo $i; ?>);" name="all_day_<?php echo $i;
?>" id="all_day_<?php echo $i; ?>"
value="tba"<?php echo $checked_tba; ?>/> /
<input type="radio"
onClick="null_out(this,<?php echo $i; ?>);"
name="all_day_<?php echo $i; ?>"

id="all_day_<?php echo $i; ?>" value=""<?php


echo $checked_enter; ?>/></td>
<td><input type="text"
name="start_time_<?php echo $i; ?>"
id="start_time_<?php echo $i; ?>"
value="<?php echo $_POST["start_time_add"];
?>" size="10"<?php echo $disabled; ?>/> <a
href="#"
onclick="test5popupactivate(document.event.st
art_time_<?php echo $i; ?>,this.name);return
false;" NAME="anchor_time_start_<?php echo
$i; ?>" ID="anchor_time_start_<?php echo $i;
?>"<?php echo $hidden; ?>><img
src="images/time.png" border="0" /></a></td>
<td><input type="text"
name="end_time_<?php echo $i; ?>"
id="end_time_<?php echo $i; ?>"
value="<?php echo $_POST["end_time_add"];
?>" size="10"<?php echo $disabled; ?>/> <a
href="#"
onclick="test5popupactivate(document.event.e
nd_time_0,this.name);return false;"
NAME="anchor_time_end_<?php echo $i; ?>"
ID="anchor_time_end_<?php echo $i;
?>"<?php echo $hidden; ?>><img
src="images/time.png" border="0" /></a></td>
</tr>

<?php
$juno++;
$i++;
}
}
?>

<tr>
<td><?php echo
$lang["add"];?> =>></td>
<td>
<input type="text"
name="date_add" id="date_add" value="<?php
echo $_REQUEST["next_date"]; ?>"
size="10"> <a href="#"
onclick="cal.select(document.event.date_add,th
is.name,'MM/dd/yyyy'); return false;"
NAME="anchor_date_add"
ID="anchor_date_add"><img
src="images/calendar.png" border="add"
/></a></td>
<td><input type="radio"
onClick="null_out(this,'add');"
name="all_day_add" id="all_day_add"
value="all" /> / <input type="radio"
onClick="null_out(this,'add');"
name="all_day_add" id="all_day_add"
value="tba" /> / <input type="radio"
onClick="null_out(this,'add');"
name="all_day_add" id="all_day_add"
value="" checked /></td>
<td><input type="text" name="start_time_add"
id="start_time_add" value="<?php echo
$_REQUEST["next_start"]; ?>" size="10"> <a
href="#"
onclick="test5popupactivate(document.event.st
art_time_add,this.name);return false;"
NAME="anchor_time_start_add"
ID="anchor_time_start_add""><img
src="images/time.png" border="add" /></a>
</td>
<td><input type="text"
name="end_time_add" id="end_time_add"
value="<?php echo $_REQUEST["next_end"];
?>" size="10"> <a href="#"
onclick="test5popupactivate(document.event.e

nd_time_add,this.name);return false;"
NAME="anchor_time_end_add"
ID="anchor_time_end_add""><img
src="images/time.png" border="add" /></a>
</td>
</tr>
<tr>
<td colspan="4"><?php echo
$lang["recurring"];?> <input type="text"
name="recurring" size="3"> X <select
name="interval"><option
value="1">1</option><option
value="7">7</option></select> <?php echo
$lang["days"];?></td>
</tr>
</table>

<p><input type="submit" name="mode"


id="mode" value="<?php echo
$lang["add_edit_dates"];?>"></p>
<p><?php echo $lang["description"];?>:<br />
<?php if ($fck_editor_path) {
include($fck_editor_path."fckeditor.p
hp") ;
$oFCKeditor = new
FCKeditor('description') ;
$oFCKeditor->BasePath =
$calendar_url.$fck_editor_path ;
$oFCKeditor->Value
=
$_POST["description"] ;
$oFCKeditor->Height
=
400;
$oFCKeditor->ToolbarSet =
$fck_editor_toolbar;
$oFCKeditor->Create() ;
} else {

echo "<textarea cols=\"60\"


rows=\"10\" name=\"description\"
id=\"description\">".$_POST["description"]."<
/textarea>\n";
}
?>
</p>
<p><input type="submit" name="mode"
id="mode" value="<?php echo
$lang["add_event"];?>"></p>
</form>

<div id="timelayer"
STYLE="position:absolute;visibility:hidden;ba
ckground-color:white;layer-backgroundcolor:white;top:0px;z-index: 1;">
<form id="time" name="time">
<select id="hour" size="18"
onChange="testpopup5pick(this.options[this.se
lectedIndex].value);">
<option value="12:00 am"
class="midnight">Midnight</option>
<option value="01:00 am"
class="evening">01:00 am</option>
<option value="02:00 am"
class="evening">02:00 am</option>
<option value="03:00 am"
class="evening">03:00 am</option>
<option value="04:00 am"
class="evening">04:00 am</option>
<option value="05:00 am"
class="evening">05:00 am</option>
<option value="06:00 am"
class="morning">06:00 am</option>
<option value="07:00 am"
class="morning">07:00 am</option>
<option value="07:30 am"
class="morning">07:30 am</option>

<option value="08:00 am"


class="morning" selected>08:00 am</option>
<option value="08:30 am"
class="morning">08:30 am</option>
<option value="09:00 am"
class="morning">09:00 am</option>
<option value="09:30 am"
class="morning">09:30 am</option>
<option value="10:00 am"
class="morning">10:00 am</option>
<option value="10:30 am"
class="morning">10:30 am</option>
<option value="11:00 am"
class="morning">11:00 am</option>
<option value="11:30 am"
class="morning">11:30 am</option>
<option value="12:00 pm"
class="noon">Noon</option>
<option value="12:30 pm"
class="afternoon">12:30 pm</option>
<option value="01:00 pm"
class="afternoon">01:00 pm</option>
<option value="01:30 pm"
class="afternoon">01:30 pm</option>
<option value="02:00 pm"
class="afternoon">02:00 pm</option>
<option value="02:30 pm"
class="afternoon">02:30 pm</option>
<option value="03:00 pm"
class="afternoon">03:00 pm</option>
<option value="03:30 pm"
class="afternoon">03:30 pm</option>
<option value="04:00 pm"
class="afternoon">04:00 pm</option>
<option value="04:30 pm"
class="afternoon">04:30 pm</option>
<option value="05:00 pm"
class="afternoon">05:00 pm</option>
<option value="05:30 pm"
class="afternoon">05:30 pm</option>

<option value="06:00 pm"


class="evening">06:00 pm</option>
<option value="06:30 pm"
class="evening">06:30 pm</option>
<option value="07:00 pm"
class="evening">07:00 pm</option>
<option value="07:30 pm"
class="evening">07:30 pm</option>
<option value="08:00 pm"
class="evening">08:00 pm</option>
<option value="08:30 pm"
class="evening">08:30 pm</option>
<option value="09:00 pm"
class="evening">09:00 pm</option>
<option value="09:30 pm"
class="evening">09:30 pm</option>
<option value="10:00 pm"
class="evening">10:00 pm</option>
<option value="10:30 pm"
class="evening">10:30 pm</option>
<option value="11:00 pm"
class="evening">11:00 pm</option>
<option value="11:30 pm"
class="evening">11:30 pm</option>
</select>
</form>
</div>
<DIV ID="testdiv1"
STYLE="position:absolute;visibility:hidden;ba
ckground-color:white;layer-backgroundcolor:white;"></DIV>
<?php
}
include ("includes/footer.php");
?>

1. XAMPP-WIN32
versi xampp-win32 yang penulis

gunakan

adalah

versi

1.6.4

menyertakan paket-paket diantaranya, Apache web server (2.0.54),


MySQL (5.0.45), dan PHP (5.2.4) untuk windows. Selain itu, telah
disediakan XAMPP Control Panel Version 2.5 (9 May, 2007) Windows
5.1 Build 2600 Platform 2 Service Pack 2 untuk mengatur instalasi
Apache,

MySql,

FileZilla,

dan

mail

server

mercury.

Sehingga

implementasi dapat dilakukan dengan mudah untuk melakukan setting


atau konfigurasi komponen pembangun localhost web server.
1.1.Instalasi XAMPP-WIN32
Langkah langkah dalam proses instalasi xampp-win32 versi
1.6.4 sebagai berikut :
1. Download file installer dari http://www.apachefriends.org.
Setelah download file tersebut, klik dua kali icon setup xamppwin32 untuk menjalankan installer, seperti terlihat pada gambar
4.42. sebagai berikut :

Gambar 4.42. Tampilan file xampp-win32-1.6.4-installer.exe.


2. Kemudian tekan next untuk melanjutkan rekomendasi istallasi

Gambar 4.43. Tampilan recommendation Setup xampp-win32

3. Klik install xampp for windows NT/2000/XP

Gambar 4.44. Tampilan Setup xampp-win32


4. Installer akan mengekstrak file hingga selesai

Gambar 4.45. Tampilan Extrak File

Gambar 4.46. Tampilan Instalasi Complete


5. Apabila penginstalan telah berhasil dilakukan maka instalasi
yang telah dilakukan tersebut akan mengekstrak file-file ke
suatu direktori khusus, yaitu c:\xampp.

Gambar 4.47. Tampilan folder xampp


6. Berikut tampilan xampp control panel, xampp for windows,
dan phpMyAdmin untuk administrasi database setelah xampp
terinstall.

Gambar 4.48. Tampilan xampp control panel

Gambar 4.49. Tampilan xampp

Gambar 4.50. Tampilan phpMyAdmin

2. Gammu-win32
Gammu digunakan untuk melakukan pengiriman sms dengan
inputan melalui computer. Gammu bukanlah suatu aplikasi jadi. Tapi
merupakan suatu module yang dapat digabungkan dengan bahasa
pemrograman apa saja.
Kelebihan Gammu dari tool sms gateway lainnya adalah :
1. Gammu bisa di jalankan di Windows maupun Linux
2. Banyak device yang kompatibel oleh gammu
3. Gammu menggunakan database MySql
4. Baik kabel data USB maupun SERIAL, semuanya kompatibel
di Gammu
Penulis mencoba menggunakan Gammu dengan Handphone
Nokia 6630 menggunakan kabel data USB. Perangkat keras yang
digunakan untuk menggunakan Gammu :
1. Gammu for windows, download di
http://dl.cihar.com/MIRROR/gammu
2. HP atau Modem GSM + Kabel Data (penulis menggunakan
Nokia 6630)
3. Driver HP/Modem
Setelah mendapatkan file gammu_win32, ekstrak semua file
kedalam c:\gammu. Buka file gammurc, edit file menggunkan
software editor. Ubah port=com.. sesuai nama port yang digunakan

modem pada computer. Ubah connection=at115200 sebagai at


command untuk gammu.
File kedua yang diedit adalah file smsdrc. Edit baris user = root
(Jika tidak merubah settingan default Mysqlnya), password =
(kosongkan kalau anda tidak menggunakan password di mysqlnya), pc
= localhost, database = (sesuai database sistem dan database gammu
yang disatukan/penulis menggunakan database smsd).
Setelah selesai edit file, kompilasi gammu dilakukan. Buka
command prompt dan masuk ke c:\win32 lalu ketik perintah seperti
gambar dibawah ini :

Gambar 4.51. perintah gammu


Lalu aktifkan sms service dengan mengetik

Gambar 4.52. perintah sms service

HASIL TESTING APLIKASI


.......................... 2011,

wib, Pusat Komunikasi (PUSKOM) UIN Syarif


Hidayatullah Jakarta

Peserta :
No.
1 . Admin PUSKOM

No. Modul

Prasyarat

Hasil yang Diharapkan

1.

Login sebagai

Dapat Menambah User dan

admin

konfigurasi hak akses, kategori

Tambah User

akses, dan group akses


2.

Edit User

Login sebagai

Admin PUSKOM dapat

admin, data sudah

menambah ataupun mengganti

ada dalam

data User dan konfigurasi hak

database

akses, kategori akses, dan group


akses

3.

Hapus User

Login sebagai

Admin PUSKOM dapat

admin, data sudah

menghapus data User

ada dalam
database
4.

5.

Melihat User

Update Module

Login sebagai

Admin PUSKOM dapat

admin, data sudah

melihat/view

ada dalam

User yang telah terdaftar dalam

database

sistem beserta data-datanya

Login sebagai

Admin PUSKOM dapat meng-

admin, data

update module yang telah

module sudah ada

tersedia

Hasil Uji
Coba

dalam database
6.

Hapus Module

Login sebagai

Admin PUSKOM dapat

admin

menghapus data module yang


disediakan

7.

8.

Tambah Groups Login sebagai

Hapus Groups

Admin PUSKOM dapat

admin

menambah data group

Login sebagai

Admin PUSKOM dapat

admin, data sudah

menghapus data groups

ada dalam
database
9.

Edit Groups

Login sebagai

Admin PUSKOM dapat

admin, data sudah

mengubah data group

ada dalam
database
10.

Melihat Groups

Login sebagai

Admin PUSKOM dapat melihat

admin, data sudah

data groups

ada dalam
database
11.

12.

Tambah

Login sebagai

Admin PUSKOM menambah

Categories

admin

Categories

Edit Categories

Login sebagai

Admin PUSKOM dapat

admin, data sudah

mengubah data Categories

ada dalam
database
13.

Hapus

Login sebagai

Admin PUSKOM dapat

Categories

admin, data sudah

menghapus data Categories

ada dalam

database
14.

Melihat

Login sebagai

Admin PUSKOM dapat melihat

Categories

admin, data sudah

data Categories

ada dalam
database
15.

16.

Tambah

Login sebagai

Admin PUSKOM dapat

Member

admin

menambah Data Member

Edit Member

Login sebagai

Admin PUSKOM dapat

admin, data sudah

mengubah data Member

ada dalam
database
17.

Hapus Member

Login sebagai

Admin PUSKOM dapat

admin, data sudah

menghapus data Member

ada dalam
database
18.

Melihat

Login sebagai

Admin PUSKOM dapat melihat

Member

admin, data sudah

data Member

ada dalam
database
19.

20.

Tambah Event

Edit Event

Login sebagai

Admin PUSKOM dapat

admin

menambah data jadwal Kegiatan

Login sebagai

Admin PUSKOM dapat

admin, data sudah

merubah data jadwal Kegiatan

ada dalam
database, dan
sesuai konfigurasi
user
21.

Hapus Event

Login sebagai

Admin PUSKOM dapat

admin, data sudah

menghapus data jadwal Kegiatan

ada dalam
database, dan
sesuai konfigurasi
user
22.

Send Message

Login sebagai

Admin PUSKOM dapat

admin, data

memasukkan data pengiriman

jadwal sudah ada

pengingat kepada link yang

dalam database,

tersedia

dan sesuai
konfigurasi user
23.

Hapus Data

Login sebagai

Admin PUSKOM dapat

Sending

admin, data

menghapus data pengiriman

jadwal sudah ada

pengingat kepada link yang

dalam database,

tersedia

dan sesuai
konfigurasi user
24.

Melihat Data

Login sebagai

Admin PUSKOM dapat melihat

Send

admin, data

data pengiriman pengingat

jadwal sudah ada

kepada link yang tersedia

dalam database,
dan sesuai
konfigurasi user

ACCEPTANCE TESTING
Pengujian Penerimaan Sistem

Nama User Penguji

Jabatan

1.

Menurut anda, apakah sistem ini mudah dijalankan (user friendly) ?


a. Mudah
b. Cukup mudah, karena .............................................................................
................................. .............................................................................
c. Kurang mudang, karena .........................................................................
................................. .............................................................................

2.

Menurut anda bila dilihat dari segi pemilihan warna Layout, jenis, maupun
ukuran Font, bagaimana tampilan sistem ini secara keseluruhan?
a. Bagus
b. Cukup bagus, karena ..............................................................................
..................... .........................................................................................
c. Kurang bagus, karena .............................................................................
..................... .........................................................................................

3.

Apa pendapat anda setelah melihat sistem ini secara keseluruhan?


a. Bagus
b. Cukup bagus, karena .............................................................................
................................. .............................................................................
c. Kurang bagus, karena .............................................................................
................................. .............................................................................

4.

Menurut anda, apakah sistem ini telah cukup baik dalam menjawab
permasalahan yang ada khususnya mengenai Manajemen Penjadwalan Kegiatan
Akademik?
a. Baik
b. Cukup baik, karena ................................................................................
.............................. ................................................................................
c. Kurang baik, karena ...............................................................................
.............................. ................................................................................

5.

Apakah sudah cukup membantu dalam proses percepatan Pembuatan Jadwal


Kegiatan?
a. Ya
b. Kurang, karena .......................................................................................
....................... .......................................................................................
c. Tidak, karena .. .......................................................................................
....................... .......................................................................................

6.

Menurut anda, apakah sistem ini bila dikembangkan akan lebih membantu anda?
a. Sangat membantu
b. Kurang membantu, karena .....................................................................
....................... .......................................................................................
c. Tidak membantu, karena ........................................................................
....................... .......................................................................................

Keterangan Penilaian:
Sangat Baik : 80-100
Baik

: 70-80

Cukup

: 60-70

Buruk

: 50-60

Sangat Buruk : <50


Jakarta, ..........................2011

HASIL TESTING APLIKASI


.......................... 2011,

wib, Pusat Komunikasi (PUSKOM) UIN Syarif


Hidayatullah Jakarta

Peserta :
No.
2. Admin Pusat

No. Modul

Prasyarat

1.

Login sebagai admin

Melihat Profil

Hasil yang

Hasil Uji

Diharapkan

Coba

Admin Pusat dapat


melihat profil
konfigurasi

2.

Tambah

Login sebagai admin

Groups
3.

Hapus Groups

Admin Pusat dapat


menambah data group

Login sebagai admin,

Admin Pusat dapat

data sudah ada dalam

menghapus data groups

database
4.

Edit Groups

Login sebagai admin,

Admin Pusat dapat

data sudah ada dalam

mengubah data group

database
5.

Melihat

Login sebagai admin,

Admin Pusat dapat

Groups

data sudah ada dalam

melihat data groups

database
6.

Tambah

Login sebagai admin

Categories
7.

Edit

Admin Pusat
menambah Categories

Login sebagai admin,

Admin Pusat dapat

Categories

8.

9.

data sudah ada dalam

mengubah data

database

Categories

Hapus

Login sebagai admin,

Admin Pusat dapat

Categories

data sudah ada dalam

menghapus data

database

Categories

Melihat

Login sebagai admin,

Admin Pusat dapat

Categories

data sudah ada dalam

melihat data Categories

database
10.

Tambah

Login sebagai admin

Member

Admin Pusat dapat


menambah Data
Member

11.

Edit Member

Login sebagai admin,

Admin Pusat dapat

data sudah ada dalam

mengubah data Member

database
12.

13.

Hapus

Login sebagai admin,

Admin Pusat dapat

Member

data sudah ada dalam

menghapus data

database

Member

Melihat

Login sebagai admin,

Admin Pusat dapat

Member

data sudah ada dalam

melihat data Member

database
14.

Tambah Event

Login sebagai admin

Admin Pusat dapat


menambah data jadwal
Kegiatan

15.

Edit Event

Login sebagai admin,

Admin Pusat dapat

data sudah ada dalam

merubah data jadwal

database, dan sesuai

Kegiatan

konfigurasi user
16.

Hapus Event

Login sebagai admin,

Admin Pusat dapat

data sudah ada dalam

menghapus data jadwal

database, dan sesuai

Kegiatan

konfigurasi user
17.

Send Message

Login sebagai admin,

Admin Pusat dapat

data jadwal sudah ada memasukkan data

18.

19.

dalam database, dan

pengiriman pengingat

sesuai konfigurasi

kepada link yang

user

tersedia

Hapus Data

Login sebagai admin,

Admin Pusat dapat

Sending

data jadwal sudah ada menghapus data


dalam database, dan

pengiriman pengingat

sesuai konfigurasi

kepada link yang

user

tersedia

Melihat Data

Login sebagai admin,

Admin Pusat dapat

Send

data jadwal sudah ada melihat data pengiriman


dalam database, dan

pengingat kepada link

sesuai konfigurasi

yang tersedia

user

ACCEPTANCE TESTING
Pengujian Penerimaan Sistem

Nama User Penguji

Jabatan

1.

Menurut anda, apakah sistem ini mudah dijalankan (user friendly) ?


a. Mudah
b. Cukup mudah, karena .............................................................................
................................. .............................................................................
c. Kurang mudang, karena .........................................................................
................................. .............................................................................

2.

Menurut anda bila dilihat dari segi pemilihan warna Layout, jenis, maupun
ukuran Font, bagaimana tampilan sistem ini secara keseluruhan?
a. Bagus
b. Cukup bagus, karena ..............................................................................
..................... .........................................................................................
c. Kurang bagus, karena .............................................................................
..................... .........................................................................................

3.

Apa pendapat anda setelah melihat sistem ini secara keseluruhan?


a. Bagus
b. Cukup bagus, karena .............................................................................
................................. .............................................................................
c. Kurang bagus, karena .............................................................................
................................. .............................................................................

4.

Menurut anda, apakah sistem ini telah cukup baik dalam menjawab
permasalahan yang ada khususnya mengenai Manajemen Penjadwalan Kegiatan
Akademik?
a. Baik
b. Cukup baik, karena ................................................................................
.............................. ................................................................................
c. Kurang baik, karena ...............................................................................
.............................. ................................................................................

5.

Apakah sudah cukup membantu dalam proses percepatan Pembuatan Jadwal


Kegiatan?
a. Ya
b. Kurang, karena .......................................................................................
....................... .......................................................................................
c. Tidak, karena .. .......................................................................................
....................... .......................................................................................

6.

Menurut anda, apakah sistem ini bila dikembangkan akan lebih membantu anda?
a. Sangat membantu
b. Kurang membantu, karena .....................................................................
....................... .......................................................................................
c. Tidak membantu, karena ........................................................................
....................... .......................................................................................

Keterangan Penilaian:
Sangat Baik : 80-100
Baik

: 70-80

Cukup

: 60-70

Buruk

: 50-60

Sangat Buruk : <50


Jakarta, ..........................2011

HASIL TESTING APLIKASI


.......................... 2011,

wib, Pusat Komunikasi (PUSKOM) UIN Syarif


Hidayatullah Jakarta

Peserta :
No.
3. Admin Fakultas Saintek

No. Modul

Prasyarat

Hasil yang Diharapkan

1.

Login sebagai

Admin Fakultas dapat

admin

melihat profil

Melihat Profil

konfigurasi
2.

3.

Tambah

Login sebagai

Admin Fakultas dapat

Categories

admin

menambah Categories

Edit

Login sebagai

Admin Fakultas dapat

Categories

admin, data sudah

mengubah data

ada dalam

Categories

database
4.

Hapus

Login sebagai

Admin Fakultas dapat

Categories

admin, data sudah

menghapus data

ada dalam

Categories

database
5.

Melihat

Login sebagai

Admin Fakultas dapat

Categories

admin, data sudah

melihat data Categories

ada dalam
database

Hasil Uji
Coba

6.

Tambah Links

Login sebagai

Admin Fakultas dapat

admin, dan sesuai

menambah Data Links

konfigurasi user
7.

Edit Links

Login sebagai

Admin Fakultas dapat

admin, data sudah

mengubah data Links

ada dalam
database, dan
sesuai konfigurasi
user
8.

Hapus Links

Login sebagai

Admin Fakultas dapat

admin, data sudah

menghapus data Links

ada dalam
database, dan
sesuai konfigurasi
user
9.

Melihat Links

Login sebagai

Admin Fakultas dapat

admin, data sudah

melihat data Links

ada dalam
database, dan
sesuai konfigurasi
user
10.

Tambah Event

Login sebagai

Admin Fakultas dapat

admin

menambah data jadwal


Kegiatan

11

Edit Event

Login sebagai

Admin Fakultas dapat

admin, data sudah

merubah data jadwal

ada dalam

Kegiatan

database, dan

sesuai konfigurasi
user
12

Hapus Event

Login sebagai

Admin Fakultas dapat

admin, data sudah

menghapus data jadwal

ada dalam

Kegiatan

database, dan
sesuai konfigurasi
user
13

Send Message

Login sebagai

Admin Fakultas dapat

admin, data jadwal

memasukkan data

sudah ada dalam

pengiriman pengingat

database, dan

kepada link yang

sesuai konfigurasi

tersedia

user
14

Hapus Data

Login sebagai

Admin Fakultas dapat

Sending

admin, data jadwal

menghapus data

sudah ada dalam

pengiriman pengingat

database, dan

kepada link yang

sesuai konfigurasi

tersedia

user
15

Melihat Data

Login sebagai

Admin Fakultas dapat

Send

admin, data jadwal

melihat data pengiriman

sudah ada dalam

pengingat kepada link

database, dan

yang tersedia

sesuai konfigurasi
user

ACCEPTANCE TESTING
Pengujian Penerimaan Sistem

Nama User Penguji

Jabatan

1.

Menurut anda, apakah sistem ini mudah dijalankan (user friendly) ?


a. Mudah
b. Cukup mudah, karena .............................................................................
................................. .............................................................................
c. Kurang mudang, karena .........................................................................
................................. .............................................................................

2.

Menurut anda bila dilihat dari segi pemilihan warna Layout, jenis, maupun
ukuran Font, bagaimana tampilan sistem ini secara keseluruhan?
a. Bagus
b. Cukup bagus, karena ..............................................................................
..................... .........................................................................................
c. Kurang bagus, karena .............................................................................
..................... .........................................................................................

3.

Apa pendapat anda setelah melihat sistem ini secara keseluruhan?


a. Bagus
b. Cukup bagus, karena .............................................................................
................................. .............................................................................
c. Kurang bagus, karena .............................................................................
................................. .............................................................................

4.

Menurut anda, apakah sistem ini telah cukup baik dalam menjawab
permasalahan yang ada khususnya mengenai Manajemen Penjadwalan Kegiatan
Akademik?
a. Baik
b. Cukup baik, karena ................................................................................
.............................. ................................................................................
c. Kurang baik, karena ...............................................................................
.............................. ................................................................................

5.

Apakah sudah cukup membantu dalam proses percepatan Pembuatan Jadwal


Kegiatan?
a. Ya
b. Kurang, karena .......................................................................................
....................... .......................................................................................
c. Tidak, karena .. .......................................................................................
....................... .......................................................................................

6.

Menurut anda, apakah sistem ini bila dikembangkan akan lebih membantu anda?
a. Sangat membantu
b. Kurang membantu, karena .....................................................................
....................... .......................................................................................
c. Tidak membantu, karena ........................................................................
....................... .......................................................................................

Keterangan Penilaian:
Sangat Baik : 80-100
Baik

: 70-80

Cukup

: 60-70

Buruk

: 50-60

Sangat Buruk : <50


Jakarta, ..........................2011

HASIL TESTING APLIKASI


.......................... 2011,

wib, Pusat Komunikasi (PUSKOM) UIN Syarif


Hidayatullah Jakarta

Peserta :
No.
4. Admin Jurusan TI

Hasil yang

Hasil Uji

Diharapkan

Coba

No.

Modul

Prasyarat

1.

Melihat Profil

Login sebagai

Admin Jurusan dapat

admin

melihat profil
konfigurasi

2.

Tambah

Login sebagai

Admin Jurusan dapat

Categories

admin

menambah
Categories

3.

Edit Categories Login sebagai

Admin Jurusan dapat

admin, data sudah

mengubah data

ada dalam

Categories

database
4.

Hapus

Login sebagai

Admin Jurusan dapat

Categories

admin, data sudah

menghapus data

ada dalam

Categories

database
5.

Melihat

Login sebagai

Admin Jurusan dapat

Categories

admin, data sudah

melihat data

ada dalam

Categories

database

6.

Melihat Links

Login sebagai

Admin Jurusan dapat

admin, data sudah

melihat data Links

ada dalam
database, dan
sesuai konfigurasi
user
7.

Tambah Event

Login sebagai

Admin Jurusan dapat

admin

menambah data
jadwal Kegiatan

8.

Edit Event

Login sebagai

Admin Jurusan dapat

admin, data sudah

merubah data jadwal

ada dalam

Kegiatan

database, dan
sesuai konfigurasi
user
9.

Hapus Event

Login sebagai

Admin Jurusan dapat

admin, data sudah

menghapus data

ada dalam

jadwal Kegiatan

database, dan
sesuai konfigurasi
user
10.

Send Message

Login sebagai

Admin Jurusan dapat

admin, data jadwal

memasukkan data

sudah ada dalam

pengiriman

database, dan

pengingat kepada

sesuai konfigurasi

link yang tersedia

user
11.

Hapus Data

Login sebagai

Admin Jurusan dapat

Sending

admin, data jadwal

menghapus data

sudah ada dalam

pengiriman

database, dan

pengingat kepada

sesuai konfigurasi

link yang tersedia

user
12.

Melihat Data

Login sebagai

Admin Jurusan dapat

Send

admin, data jadwal

melihat data

sudah ada dalam

pengiriman

database, dan

pengingat kepada

sesuai konfigurasi

link yang tersedia

user

ACCEPTANCE TESTING
Pengujian Penerimaan Sistem

Nama User Penguji

Jabatan

1.

Menurut anda, apakah sistem ini mudah dijalankan (user friendly) ?


a. Mudah
b. Cukup mudah, karena .............................................................................
................................. .............................................................................
c. Kurang mudang, karena .........................................................................
................................. .............................................................................

2.

Menurut anda bila dilihat dari segi pemilihan warna Layout, jenis, maupun
ukuran Font, bagaimana tampilan sistem ini secara keseluruhan?
a. Bagus
b. Cukup bagus, karena ..............................................................................
..................... .........................................................................................
c. Kurang bagus, karena .............................................................................
..................... .........................................................................................

3.

Apa pendapat anda setelah melihat sistem ini secara keseluruhan?


a. Bagus
b. Cukup bagus, karena .............................................................................
................................. .............................................................................
c. Kurang bagus, karena .............................................................................
................................. .............................................................................

4.

Menurut anda, apakah sistem ini telah cukup baik dalam menjawab
permasalahan yang ada khususnya mengenai Manajemen Penjadwalan Kegiatan
Akademik?
a. Baik
b. Cukup baik, karena ................................................................................
.............................. ................................................................................
c. Kurang baik, karena ...............................................................................
.............................. ................................................................................

5.

Apakah sudah cukup membantu dalam proses percepatan Pembuatan Jadwal


Kegiatan?
a. Ya
b. Kurang, karena .......................................................................................
....................... .......................................................................................
c. Tidak, karena .. .......................................................................................
....................... .......................................................................................

6.

Menurut anda, apakah sistem ini bila dikembangkan akan lebih membantu anda?
a. Sangat membantu
b. Kurang membantu, karena .....................................................................
....................... .......................................................................................
c. Tidak membantu, karena ........................................................................
....................... .......................................................................................

Keterangan Penilaian:
Sangat Baik : 80-100
Baik

: 70-80

Cukup

: 60-70

Buruk

: 50-60

Sangat Buruk : <50


Jakarta, ..........................2011

HASIL TESTING APLIKASI


.......................... 2011,

wib, Pusat Komunikasi (PUSKOM) UIN Syarif


Hidayatullah Jakarta

Peserta :
No.
5.

Mahasiswa/Dosen/Pegawai

Prasyarat

Hasil yang

Hasil Uji

Diharapkan

Coba

No.

Modul

1.

Melihat Jadwal -

Mahasiswa, Dosen,

Kalender

dan pegawai dapat


mengetahui jadwal
kegiatan

2.

Menerima

Terdaftar sebagai

Mahasiswa, Dosen,

Informasi

member

dan pegawai dapat

Akademik

mengetahui jadwal

dalam bentuk

kegiatan tanpa harus

pengingat

melihat jadwal
kegiatan

ACCEPTANCE TESTING
Pengujian Penerimaan Sistem

Nama User Penguji

Jabatan

1.

Menurut anda, apakah sistem ini mudah dijalankan (user friendly) ?


a. Mudah
b. Cukup mudah, karena .............................................................................
................................. .............................................................................
c. Kurang mudang, karena .........................................................................
................................. .............................................................................

2.

Menurut anda bila dilihat dari segi pemilihan warna Layout, jenis, maupun
ukuran Font, bagaimana tampilan sistem ini secara keseluruhan?
a. Bagus
b. Cukup bagus, karena ..............................................................................
..................... .........................................................................................
c. Kurang bagus, karena .............................................................................
..................... .........................................................................................

3.

Apa pendapat anda setelah melihat sistem ini secara keseluruhan?


a. Bagus
b. Cukup bagus, karena .............................................................................
................................. .............................................................................
c. Kurang bagus, karena .............................................................................
................................. .............................................................................

4.

Menurut anda, apakah sistem ini telah cukup baik dalam menjawab
permasalahan yang ada khususnya mengenai informasi Akademik?
a. Baik
b. Cukup baik, karena ................................................................................
.............................. ................................................................................
c. Kurang baik, karena ...............................................................................
.............................. ................................................................................

5.

Menurut anda, Bagaimana kecepatan informasi yang diterima?


a. Ya
b. Kurang, karena .......................................................................................
....................... .......................................................................................
c. Tidak, karena .. .......................................................................................
....................... .......................................................................................

Keterangan Penilaian:
Sangat Baik : 80-100
Baik

: 70-80

Cukup

: 60-70

Buruk

: 50-60

Sangat Buruk : <50


Jakarta, ..........................2011

Anda mungkin juga menyukai