APLIKASI SISTEM INFORMASI AKADEMIK BERBASIS WAP...
Transcript of APLIKASI SISTEM INFORMASI AKADEMIK BERBASIS WAP...
APLIKASI SISTEM INFORMASI AKADEMIK BERBASIS
WAP PADA SMP PERWIRA JAKARTA
RIKI DANANG SURAHMAN
204091002547
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH
JAKARTA
2011 M / 1432 H
APLIKASI SISTEM INFORMASI AKADEMIK BERBASIS
WAP PADA SMP PERWIRA JAKARTA
SKRIPSI
Sebagai Salah Satu Syarat untuk Memperoleh Gelar Sarjana Komputer Fakultas
Sains dan Teknologi Universitas Islam Negeri Syarif Hidayatullah Jakarta
Oleh :
RIKI DANANG SURAHMAN
204091002547
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH
JAKARTA
2011 M / 1432 H
ii
APLIKASI SISTEM INFORMASI AKADEMIK BERBASIS WAP PADA
SMP PERWIRA JAKARTA
SKRIPSI
Sebagai Salah Satu Syarat Untuk Memperoleh Gelar Sarjana Komputer
Pada Fakultas Sains dan Teknologi
Universitas Islam Negeri Syarif Hidayatullah Jakarta
Oleh :
RIKI DANANG SURAHMAN
204091002547
Menyetujui,
Pembimbing I Pembimbing II
Nur Aeni Hidayah, MMSI Zulfiandri, MMSI
NIP. 19750818 200501 2 008 NIP. 19700130 200501 1 003
Mengetahui,
Ketua Program Studi Teknik Informatika
Yusuf Durachman, MIT
NIP. 19710522 200604 1 002
iii
PENGESAHAN UJIAN
Skripsi berjudul “APLIKASI SISTEM INFORMASI AKADEMIK BERBASIS
WAP PADA SMP PERWIRA JAKARTA” yang ditulis oleh Riki Danang
Surahman, NIM 204091002547 telah diuji dan dinyatakan lulus dalam sidang
Munaqosyah Fakultas Sains dan Teknologi, Universitas Islam Negeri Syarif
Hidayatullah Jakarta pada tanggal 3 Agustus 2011. Skripsi ini telah diterima
sebagai salah satu syarat untuk memperoleh gelar sarjana Strata Satu (S1)
Program Studi Teknik Informatika.
Menyetujui :
Penguji I Penguji II
Arini, MT., M.Eng. Anif Hanifa Setianigrum,M.Si
NIP. 19760131 200912 2 001 NIP.
Pembimbing I Pembimbing II
Nur Aeni Hidayah, MMSI. Zulfiandri, MMSI.
NIP. 19750818 200501 2 008 NIP. 19700130 200501 1 003
Mengetahui :
Dekan Ketua
Fakultas Sains dan Teknologi Program Studi Teknik Informatika
DR. Syopiansyah Jaya Putra, M.Sis Yusuf Durachman, MIT
NIP. 19680117 200112 1 001 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, Agustus 2011
Riki Danang Surahman
204091002547
v
ABSTRAK
RICKY DANANG SURAHMAN, Aplikasi Sistem Informasi Akademik
Berbasis WAP Pada SMP PERWIRA Jakarta. (dibawah bimbingan NUR AENI
HIDAYAH dan ZULFIANDRI).
Perkembangan teknologi informasi yang pesat sejalan dengan
meningkatnya kebutuhan akan informasi, salah satu teknologi tersebut yaitu WAP
(Wireless Application Protocol). WAP adalah protokol yang memungkinkan
piranti wireless melakukan komunikasi data seperti mengakses internet melalui
jaringan seluler digital. Pemberian Informasi Akademik di SMP Perwira belum
terkomputerisasi dan terpusat, dari data kuesioner yang dilakukan terhadap 100
orang tua siswa secara acak, ternyata pemberian informasi akademik yang
berjalan selama ini terkadang tidak tersampaikan kepada wali siswa, wali siswa
juga harus langsung datang ke sekolah dan mengantri untuk melihat nilai rapor,
informasi bayaran sekolah pun terkadang tidak tersampaikan kepada wali siswa.
Dengan menggunakan aplikasi sistem informasi akademik berbasis WAP yang
bersifat mobile membuat informasi akademik dapat dilihat kapanpun dan
dimanapun. Dalam metode pengembangan sistem penulis menggunakan RAD
(Rapid Application Development). Aplikasi ini dibuat menggunakan beberapa
bahasa pemrograman yaitu WML kemudian HTML dan PHP, menggunakan
database MySQL serta server Apache yang kesemuanya terintegrasi dalam
XAMPP. Dengan aplikasi ini dapat memudahkan orang tua siswa dan siswa untuk
dapat melihat informasi akademik sekolah seperti nilai uts, nilai uas, jumlah nilai
rapor dan rata-rata nilai rapor serta informasi-informasi akademik lainnya seperti
info terkini, info bayaran siswa, jadwal UAS & UTS, pelajaran yang bersifat
mobile sehingga dapat dilihat kapanpun dan dimanapun. Pengembangan aplikasi
ini dapat dilakukan penampilan nilai rapor secara keseluruhan dan penambahan
content di perangkat mobile dengan tampilan yang lebih menarik.
Kata Kunci : WAP, RAD, SMP Perwira, Akademik
lxxi halaman + 144 halaman + 4 tabel + 69 gambar + 3 daftar simbol + 5 lampiran
Daftar Pustaka : 26 (1997-2009)
vi
KATA PENGANTAR
Assalaamu’alaikum Wr. Wb.
Alhamdulillah, rasa syukur tiada terkira penulis panjatkan kepada Allah
Subhanahu Wata‟ala. Rahmat dan salam semoga tercurahkan selalu kepada
Rasulullah Muhammad SAW beserta keluarga, sahabat, dan pengikut-pengikut
beliau (amin). Hanya berkat petunjuk dan pertolongan Allah-lah penulis dapat
menyelesaikan skripsi yang berjudul : Aplikasi Sistem Informasi Akademik
Berbasis WAP pada SMP Perwira Jakarta.
Terwujudnya tulisan dalam bentuk skripsi ini, tentunya tidak terlepas dari
bantuan dan bimbingan dari berbagai pihak. Rasa terima kasih penulis ucapkan
kepada :
1. Bapak DR. Syopiansyah Jaya Putra, M.SIS, selaku Dekan Fakultas Sains
dan Teknologi.
2. Bapak Yusuf Durrachman, MIT, selaku Ketua Program Studi Teknik
Informatika.
3. Ibu Nur Aeni Hidayah, MMSI, selaku dosen pembimbing I, dan
4. Bapak Zulfiandri, MMSI, selaku dosen pembimbing II, yang telah yang
secara kooperatif memberikan bimbingan, saran, masukan dan segala
bantuan – bantuannya kepada saya dengan penuh kesabaran dan dedikasi
tinggi sehingga akhrinya skripsi ini dapat terselesaikan..
vii
5. Ibu Arini, MT., M.Eng, dan Ibu Anif Hanifa Setianingrum, M.Si, selaku
penguji I dan II, terima kasih atas segala masukan yang diberikan kepada
saya dalam pembuatan skripsi ini.
6. Bapak E.S. Sugianto, selaku kepala sekolah SMP PERWIRA Jakarta.
7. Bapak Sukiman dan Ibu Rini Supahdilawati, terima kasih yang tiada terkira
kepada kedua orang tua saya.
8. Seluruh Dosen dan staf karyawan Program Studi Teknik Informatika,
Fakultas Sains dan Teknologi, Universitas Islam Negeri Syarif Hidayatullah
Jakarta yang telah mengajar atau membantu penulis selama kuliah.
Dalam penyusunan skripsi ini, penulis juga tidak luput dari berbagai
masalah dan menyadari sepenuhnya bahwa penulisan ini masih jauh dari
sempurna dan tidak lepas dari kesalahan dan kekurangan, oleh karena itu dengan
senang hati penulis akan menerima semua saran dan kritik maupun ide-ide yang
membangun dari rekan-rekan pembaca. Akhir kata semoga Allah membalas
kebaikan mereka yang telah membimbing penulis dalam membuat skripsi ini.
Semoga skripsi ini berguna bagi penulis dan pada pembaca umumnya.
Wassalaamu’alaikum Wr. Wb.
Jakarta, Juni 2011
Penulis
Riki Danang S
NIM. 2040 9100 2547
viii
LEMBAR PERSEMBAHAN
1. Bapak Sukiman dan Ibu Rini Supahdilawati, terima kasih yang tiada terkira
kepada kedua orang tua saya. Bapak Sukiman, beliau merupakan sosok yang
bukan hanya menjadi orang tua, namun juga dapat menjadi teman dan guru
yang selalu ada, terima kasih yang sedalam – dalamnya untuk segala
support, motivasi, dan saran yang selalu diberikan. Ibu Rini Supahdilawati,
beliau merupakan sosok ibu yang tiada henti – hentinya berdo‟a dan
memberikan masukan – masukan positif yang sangat berguna bagi saya.
Tanpa segala bantuan dan dorongan Bapak dan Ibu mungkin skripsi ini
hanya akan menjadi mimpi bagi saya.
2. Tiwuk Sri Handayani dan Puput Sari Dewi, kedua adik kembar saya yang
mungkin tidak ikut andil dalam pembuatan skripsi ini, namun merekalah
salah satu motivator terbesar saya untuk dapat menyelesaikan pembuatan
skripsi ini.
3. Zaenal Muttaqin, S.Kom., sahabat saya sekaligus guru dan motivator bagi
saya, sahabat yang begitu besar andilnya dalam pembuatan skripsi ini,
sahabat yang rela meluangkan banyak waktu ditengah kesibukannya, tanpa
meminta sedikitpun balas jasa. Mungkin skripsi ini tidak akan pernah dibuat
dan tidak akan pernah selesai tanpa bantuan anda, tiada kata selain terima
kasih yang sedalam – dalamnya untuk anda karena begitu banyaknya
bantuan yang telah anda berikan kepada saya dalam proses pengerjaan
skripsi ini.
ix
4. Makhsus Fadly, sahabat saya yang akan selalu ada pada saat tersulit dalam
proses pengerjaan skripsi ini, sahabat yang selalu bersedia membantu
kapanpun pada saat saya membutuhkannya, sahabat yang tak pernah
berhenti memberikan dorongan moril dan materiil kepada saya, sampai
akhirnya skripsi ini dapat terselesaikan.
5. Ariyadi, S.Kom., sahabat saya yang membantu saya pada awal dibuatnya
skripsi ini, tanpa anda mungkin akan terlalu sulit bagi saya untuk
menyelesaikan pengerjaan skripsi ini.
6. Dawimah, S.Kom., sahabat saya yang juga besar andilnya dalam proses
pengerjaan skripsi ini, meski sempat terjadi kesalahpahaman yang dipicu
karena ketidaktahuan saya, namun anda tetap bersedia untuk membantu
saya, permohonan maaf dan terima kasih saya ucapkan atas segala
keikhlasan anda untuk membantu saya.
7. Hamimah, S.Kom., sahabat saya yang selalu memberikan motivasi pada saat
– saat tersulit saya dalam pengerjaan skripsi ini.
8. M. Abdul Rosid, sahabat saya yang selalu memberikan motivasi dan
keceriaan kepada saya pada saat – saat dimana saya merasa jenuh.
9. Bapak Saridin, sahabat saya yang selalu memberikan gelak tawa penghibur
disaat saya merasa jenuh.
10. Abi Nurcahyo, amd., dan Wibi Haryadi, S.Kom., yang selalu memberikan
motivasi dan kritikan – kritikan agar saya menjadi lebih bersemangat dalam
pengerjaan skripsi ini.
11. Bayu Irawan Rustam dan Muhammad Ripai, yang meskipun jauh dari
x
tempat saya berada, tak pernah mereka melupakan saya dan selalu
memberikan motivasi kepada saya.
12. Bapak Hartadi, Sepupu saya yang selalu menjadi tempat bercerita dan
berbagi dalam setiap kesempatan, beliau merupakan salah satu motivator
yang sangat berarti bagi saya.
13. Bapak Indrias, Sepupu saya yang ikut berjuang dalam membantu saya
menyelesaikan pengerjaan skripsi ini.
14. Sahabat – sahabat saya, Erry Handoyo, Sigit Prasetio, Fahrurozi (Semoga
dimudahkan segala urusan anda), Toni Kurniawan, Filla Anggraeny,
Muhamadsyah Reza, Maulidinita Perdanawati, Dimas Setiadji, Iyas, Umi
Sri Utami, Qoyyimah, Redika Wintana, Frieska N, Muis Rajab, Ulfa, Gresia
Anggelia, Titi Alida, M. Insan Hutomo, Assalamah, Waode Fitri, Arif
Pranata, Arif Rahman Hakim, Heru Priadi, Muammar Khadafi, Vina
Fitriyawati, Rizky Novianto, Ari Kristiyanto, M. Agus Saifuddin, Dewi
Novia Marwati, Ross Nelly Andriyani, serta semua sahabat seperjuangan TI
/ SI angkatan 2004.
xi
DAFTAR ISI
LEMBAR PENGESAHAN PEMBIMBING .......................................................... ii
PENGESAHAN UJIAN ........................................................................................ iii PERNYATAAN ..................................................................................................... iv ABSTRAK .............................................................................................................. v KATA PENGANTAR ........................................................................................... vi LEMBAR PERSEMBAHAN .............................................................................. viii DAFTAR ISI .......................................................................................................... xi DAFTAR TABEL ................................................................................................ xiv DAFTAR GAMBAR ............................................................................................ xv DAFTAR SIMBOL .............................................................................................. xix BAB I PENDAHULUAN ................................................................................... 1
1.1. Latar Belakang ............................................................................ 1
1.2. Rumusan Masalah ....................................................................... 3
1.3. Batasan Masalah ......................................................................... 4
1.4. Tujuan Penelitian ........................................................................ 5
1.5. Manfaat Penelitian ...................................................................... 5
1.6. Metodologi Penelitian ................................................................. 6
1.6.1. Metodologi Pengumpulan Data .................................... 6
1.6.2. Metodologi Pengembangan Sistem ............................. 7
1.7. Sistematika Penulisan ................................................................. 9
BAB II LANDASAN TEORI ............................................................................ 11
2.1. Aplikasi ..................................................................................... 11
2.2. Informasi Akademik ................................................................. 11
2.2.1. Konsep Dasar Informasi ............................................. 11
2.2.2. Konsep Dasar Akademik ............................................ 12
2.3. Perangkat Telepon Seluler Pendukung Aplikasi Internet Mobile
.................................................................................................. 14
2.3.1. GSM (Global System for Mobile Communication) .... 14
2.3.2. GPRS (General Packet Radio System) ....................... 15
2.3.3. CDMA (Code Division Multiple Access) .................. 15
2.3.4. J2ME (Java 2 Micro Edition) ..................................... 16
xii
2.3.5. MIDP (Mobile Information Device Profile) ............... 17
2.3.6. MIDlet ........................................................................ 18
2.4. WAP (Wireless Application Protocol) ..................................... 19
2.4.1. Perkembangan WAP (Wireless Application Protocol)19
2.4.2. Definisi WAP (Wireless Application Protocol) ......... 20
2.4.3. Arsitektur WAP .......................................................... 20
2.4.4. Komponen WAP......................................................... 22
2.4.5. Tipe MIME (Multipurpose Internet Mail Extensions)
pada WAP ................................................................... 27
2.5. Apache Web Server .................................................................. 28
2.6. WML (Wireless Markup Language) ........................................ 29
2.6.1. Perkembangan WML .................................................. 29
2.6.2. Definisi WML............................................................. 29
2.6.3. Struktur WML ............................................................ 30
2.6.4. WML Deck dan Card ................................................. 31
2.7. PHP ........................................................................................... 33
2.8. MySQL ..................................................................................... 34
2.9. Macromedia Dreamweaver 8 .................................................... 35
2.10. Perangkat Pengembangan Sistem ............................................. 35
2.10.1. Data Flow Diagram (DFD) ........................................ 35
2.10.2. Entity Relationship Digram (ERD) ............................ 38
2.10.3. Flowchart (Bagan Alir) .............................................. 40
2.10.4. Normalisasi ................................................................. 41
2.11. Sistem Basis Data ..................................................................... 45
2.12. Rapid Application Development (RAD) ................................... 46
BAB III METODOLOGI PENELITIAN ........................................................... 50
3.1. Metode Pengumpulan Data ....................................................... 50
3.1.1. Metode Observasi ....................................................... 50
3.1.2. Metode Kuesioner....................................................... 51
3.1.3. Metode Wawancara .................................................... 51
xiii
3.1.4. Studi Pustaka .............................................................. 51
3.1.5. Studi Literatur ............................................................. 52
3.2. Metode Pengembangan Sistem ................................................. 52
3.2.1. Fase Perencanaan Syarat-syarat .................................. 52
3.2.2. Fase Perancangan ....................................................... 57
3.2.3. Fase Konstruksi .......................................................... 57
3.2.4. Fase Pelaksanaan ........................................................ 58
BAB IV PEMBAHASAN DAN IMPLEMENTASI ............................................ 60
4.1. Metodologi Pengumpulan Data ................................................ 60
4.1.1. Observasi .................................................................... 60
4.1.2. Kuesioner .................................................................... 66
4.1.3. Wawancara ................................................................. 67
4.1.4. Studi Pustaka .............................................................. 67
4.1.5. Studi Literatur ............................................................. 68
4.2. Metodologi Pengembangan Sistem .......................................... 69
4.2.1. Fase Perencanaan Syarat – Syarat .............................. 69
4.2.2. Fase Perancangan (Workshop Design) ....................... 82
4.2.3. Fase Konstruksi ........................................................ 135
4.2.4. Fase Pelaksanaan (Implementasi) ............................. 135
BAB V PENUTUP ........................................................................................... 140
5.1. Kesimpulan ............................................................................. 140
5.2. Saran ....................................................................................... 140
DAFTAR PUSTAKA ......................................................................................... 142 LAMPIRAN I KODE SUMBER APLIKASI ................................................. xxii LAMPIRAN II BLACK BOX TESTING ............................................................. lx LAMPIRAN III TAMPILAN APLIKASI .......................................................... lxi LAMPIRAN IV WAWANCARA .................................................................. lxviii LAMPIRAN V KUESIONER .......................................................................... lxx
xiv
DAFTAR TABEL
Tabel 2.1. : Tipe MIME yang digunakan WAP ..................................................... 27
Tabel 2.2. : Perbandingan WML dan HTML ......................................................... 30
Tabel 2.3. : Deskripsi tag – tag dasar WML .......................................................... 32
Tabel 4.1. : Permasalahan dan solusi yang diusulkan ............................................ 76
xv
DAFTAR GAMBAR
Gambar 2.1. : Arsitektur WAP ............................................................................... 21
Gambar 2.2. : Komponen WAP ............................................................................. 26
Gambar 2.3. : WML deck dan card ....................................................................... 32
Gambar 2.4. : Tahapan – Tahapan RAD ................................................................ 48
Gambar 3.1. : Kerangka Berpikir Pembuatan Aplikasi Sistem Informasi Akademik
Berbasis WAP pada SMP PERWIRA Jakarta................................ 59
Gambar 4.1. : Struktur Organisasi SMP Perwira Jakarta ....................................... 64
Gambar 4.2. : Bagan Alir Sistem Akses Informasi yang Sedang Berjalan ............ 72
Gambar 4.3. : Bagan Alir Sistem Akses Informasi yang diusulkan....................... 78
Gambar 4.4. : Diagram Konteks Sistem yang Diusulkan ...................................... 82
Gambar 4.5. : Diagram Zero Sistem yang Diusulkan ............................................ 84
Gambar 4.6. : DFD Level Satu Proses 1.0 (login) ................................................. 86
Gambar 4.7. : DFD Level Satu Proses 2.0 (olah nilai) .......................................... 87
Gambar 4.8. : DFD Level Satu Proses 4.0 (olah rapor) ......................................... 88
Gambar 4.9. : DFD Level Satu Proses 6.0 (olah data) ........................................... 90
Gambar 4.10. : Flowchart Menu Login ................................................................. 91
Gambar 4.11. : Flowchart Menu Olah Nilai .......................................................... 92
Gambar 4.12. : Flowchart Menu Olah Rapor ........................................................ 93
Gambar 4.13. : Flowchart Menu Olah Data .......................................................... 94
Gambar 4.14. : Flowchart Menu Utama Lihat Nilai, Rapor, Data ........................ 95
Gambar 4.15. : Struktur Entity Relationship Diagram ........................................... 96
xvi
Gambar 4.16. : LRS dari ERD yang diusulkan ...................................................... 97
Gambar 4.17. : Relasi Tabel Dalam Bentuk 2 NF ............................................... 100
Gambar 4.18. : Relasi Tabel Dalam Bentuk 3 NF ............................................... 101
Gambar 4.19. : Relasi Tabel Dalam Bentuk BCNF ............................................. 103
Gambar 4.20. : State Transition Diagram Siswa .................................................. 110
Gambar 4.21. : State Transition Diagram Halaman Staf Tata Usaha .................. 112
Gambar 4.22. : State Transition Diagram Halaman Guru .................................... 113
Gambar 4.23. : State Transition Diagram Halaman Walikelas ............................ 114
Gambar 4.24. : Rancangan Halaman Menu Utama.............................................. 115
Gambar 4.25. : Rancangan Halaman Profil ......................................................... 116
Gambar 4.26. : Rancangan Halaman Berita ......................................................... 116
Gambar 4.27. : Rancangan Halaman Info ............................................................ 117
Gambar 4.28. : Rancangan Halaman Tentang Kami............................................ 117
Gambar 4.29. : Rancangan Halaman Login ......................................................... 118
Gambar 4.30. : Rancangan Halaman Konfirmasi ................................................ 118
Gambar 4.31. : Rancangan Halaman Login Sukses ............................................. 119
Gambar 4.32. : Rancangan Halaman Jadwal ....................................................... 119
Gambar 4.33. : Rancangan Halaman Nilai........................................................... 120
Gambar 4.34. : Rancangan Halaman Rapor ......................................................... 120
Gambar 4.35. : Rancangan Halaman Bayaran ..................................................... 121
Gambar 4.36. : Rancangan Halaman Index ......................................................... 121
Gambar 4.37. : Rancangan Halaman Login ......................................................... 122
Gambar 4.38. : Rancangan Halaman Menu Utama Tata Usaha .......................... 122
xvii
Gambar 4.39. : Rancangan Halaman Siswa ......................................................... 123
Gambar 4.40. : Rancangan Halaman Form Edit atau Tambah Siswa .................. 123
Gambar 4.41. : Rancangan Halaman Matapelajaran ............................................ 124
Gambar 4.42. : Rancangan Halaman Form Edit atau Tambah Matapelajaran..... 124
Gambar 4.43. : Rancangan Halaman Kelas ......................................................... 125
Gambar 4.44. : Rancangan Halaman Form Edit atau Tambah Kelas .................. 125
Gambar 4.45. : Rancangan Halaman Walikelas................................................... 126
Gambar 4.46. : Rancangan Halaman Form Edit atau Tambah Walikelas ........... 126
Gambar 4.47. : Rancangan Halaman Jadwal Pelajaran........................................ 127
Gambar 4.48. : Rancangan Halaman Form Edit atau Tambah Mata Pelajaran ... 127
Gambar 4.49. : Rancangan Halaman Jadwal UTS ............................................... 128
Gambar 4.50. : Rancangan Halaman Form Edit atau Tambah Jadwal UTS ........ 128
Gambar 4.51. : Rancangan Halaman Jadwal UAS .............................................. 129
Gambar 4.52. : Rancangan Halaman Form Edit atau Tambah Jadwal UAS ....... 129
Gambar 4.53. : Rancangan Halaman Guru .......................................................... 130
Gambar 4.54. : Rancangan Halaman Form Edit atau Tambah Guru ................... 130
Gambar 4.55. : Rancangan Halaman Berita ......................................................... 131
Gambar 4.56. : Rancangan Halaman Form Edit atau Tambah Berita .................. 131
Gambar 4.57. : Rancangan Halaman Bayaran ..................................................... 132
Gambar 4.58. : Rancangan Halaman Form Edit atau Tambah Bayaran .............. 132
Gambar 4.59. : Rancangan Halaman Utama Guru ............................................... 133
Gambar 4.60. : Rancangan Halaman Nilai........................................................... 133
Gambar 4.61. : Rancangan Halaman Form Edit atau Tambah Nilai ................... 133
xviii
Gambar 4.62. : Rancangan Halaman Utama Wali Kelas ..................................... 134
Gambar 4.63. : Rancangan Halaman Rapor ......................................................... 134
Gambar 4.64. : Rancangan Halaman Form Edit atau Tambah Rapor .................. 134
xix
DAFTAR SIMBOL
1. DFD (Data Flow Diagram)
2. ERD (Entity Relathionship Diagram)
xx
3. Flowchart
xxi
1
BAB I
PENDAHULUAN
1.1. Latar Belakang
Perkembangan teknologi informasi yang berkembang dengan pesat
sejalan dengan meningkatnya kebutuhan akan informasi, seperti dalam
bidang pendidikan, sosial, ekonomi, budaya dan sebagainya. Seiring
dengan pesatnya perkembangan teknologi informasi, telah bermunculan
pula berbagai media penyajian informasi yang dapat memberikan
kemudahan bagi pengguna untuk mengakses berbagai informasi yang
cepat dan akurat, salah satu teknologi tersebut yaitu WAP (Wireless
Application Protocol).
WAP (Wireless Application Protocol) adalah suatu protokol
komunikasi dan lingkungan aplikasi untuk pengembangan sumber daya
informasi (Simarmata, 2006:3), WAP adalah protokol yang
memungkinkan piranti wireless melakukan komunikasi data seperti
mengakses internet melalui jaringan seluler digital ( Fiati, 2005 : 60).
Dengan WAP, untuk mengakses informasi cukup dengan memiliki
sebuah telepon seluler yang dilengkapi fasilitas internet dan GPRS
(General Packet Radio System) enable, yang telah diaktifkan setting
GPRS-nya, setelah itu informasi – informasi dapat diakses dengan
mudah, dikatakan dengan mudah karena informasi dapat diakses
kapanpun dan dimanapun selama masih terjangkau oleh sinyal wireless
2
dari telepon selular tersebut.
SMP Perwira Jakarta Merupakan sebuah sekolah menengah
pertama swasta yang terletak di Jl H. Dilun No. 4, Pesanggrahan, Jakarta
selatan. Sekolah ini berdiri sejak tahun 1986. Dalam proses penyebaran
informasi akademik SMP perwira Jakarta belum memiliki suatu sistem
informasi akademik yang terkomputerisasi dan terpusat dimana informasi
– informasi akademik yang diberikan oleh sekolah kepada masyarakat
umum khususnya orang tua siswa dijalankan secara manual. Informasi
akademik yang diterima oleh wali siswa berupa buku rapor, selebaran,
bukti pembayaran yang dibagikan oleh sekolah secara berkala.
Dari hasil observasi yang telah dilakukan oleh peneliti di SMP
Perwira Jakarta, pada SMP Perwira Jakarta terdapat tiga tingkatan, yaitu
7, 8, 9, kemudian tiap tingkatan memiliki 9 kelas, setiap kelas terdapat
kurang lebih 40 murid. Berdasarkan data absensi siswa angkatan
2009/2010, jumlah siswa mencapai 1062 siswa, semua proses informasi
dikendalikan oleh tata usaha. Dokumen – dokumen yang digunakan pada
tata usaha berupa lembaran kertas yang mudah rusak dan hilang, hal ini
dapat menyebakan proses informasi menjadi terhambat bahkan mungkin
tidak tersampaikan karena begitu banyaknya dokumen yang berupa
kertas belum lagi dokumen yang di berikan kepada siswa untuk
disampaikan kepada orang tuanya.
Dengan melihat banyaknya siswa yang ditangani oleh SMP
Perwira menjadikan adanya suatu kebutuhan akan kemudahan untuk
3
akses informasi akademik, dengan menggunakan sebuah aplikasi yang
mudah digunakan dan menggunakan teknologi terkini. Sehingga proses
informasi akademik menjadi lebih mudah tersampaikan dan menjadikan
SMP Perwira lebih maju seiring dengan perkembangan teknologi.
Berdasarkan kuisioner yang telah dilakukan oleh penulis terhadap
100 wali siswa, didapatkan hasil yaitu : perlu dibangun sebuah aplikasi
yang dapat memudahkan akses terhadap informasi akademik, sebanyak
48% wali murid menjawab perlu, kemudian perlu dibuat sebuah aplikasi
sistem informasi akademik yang bisa diakses kapan saja dan dimana saja
dengan menggunakan sebuah telepon seluler, sebanyak 44% wali siswa
menjawab perlu (hasil selengkapnya dapat dilihat pada lampiran V).
Merujuk pada penelitian sebelumnya yang dilakukan oleh
(Dawimah, 2010) dan (Udin Suchaini, 2007), penulis berupaya
mewujudkan aplikasi untuk memberitahukan informasi akademik setiap
siswa kepada wali siswa dengan berbasis WAP menggunakan suatu
aplikasi yang mudah digunakan, dalam skripsi yang berjudul APLIKASI
SISTEM INFORMASI AKADEMIK BERBASIS WAP PADA SMP
PERWIRA JAKARTA.
1.2. Rumusan Masalah
1. Bagaimana memenuhi kebutuhan akses informasi akademik yang
dapat diakses kapanpun dan dimanapun pada SMP Perwira Jakarta?
2. Bagaimana membangun sebuah aplikasi untuk informasi akademik
4
berbasis WAP pada SMP Perwira Jakarta yang mudah digunakan
oleh siswa, orangtua atau wali siswa dan sekolah?
1.3. Batasan Masalah
Untuk menghindari meluasnya materi pembahasan tugas akhir ini,
maka penulis membatasi permasalahan hanya mencakup hal-hal berikut
dibawah ini:
1. Aplikasi ini dibuat dengan berbasis pada WAP 2.0.
2. Aplikasi ini membahas informasi mengenai profil sekolah, fasilitas,
ekstrakulikuler, contact us.
3. Aplikasi ini membahas informasi mengenai data guru, siswa,
jadwal pelajaran, UTS dan UAS.
4. Aplikasi ini membahas informasi mengenai nilai UAS, UTS, dan
Rapor.
5. Aplikasi dibuat menggunakan bahasa pemrograman WML, PHP
dengan meggunakan database MySQL, serta dijalankan
menggunakan web server Apache.
6. Aplikasi ini membahas informasi hanya pada semester yang
berjalan.
5
1.4. Tujuan Penelitian
1. Membuat sebuah aplikasi sistem informasi akademik sekolah pada
SMP Perwira guna memenuhi kebutuhan akan akses informasi
yang dapat diakses kapanpun dan dimanapun.
2. Membangun sebuah aplikasi berbasis WAP pada SMP Perwira
yang mudah digunakan oleh orang tua siswa dan sekolah.
1.5. Manfaat Penelitian
Manfaat yang didapat dalam menulis skripsi ini adalah :
1. Bagi Peneliti.
a. Dapat mempelajari lebih jauh mengenai aplikasi berbasis
WAP (Wireless Application Protocol).
b. Mengetahui secara langsung penggunaan atau peranan
teknologi informasi dan komunikasi di tempat penelitian.
c. Mengenal lebih jauh teknologi – teknologi informasi yang
sedang berkembang saat ini.
2. Bagi Pengguna
a. Memudahkan akses terhadap informasi akademik siswa,
karena dapat diakses kapanpun dan dimanapun.
b. Memiliki sebuah aplikasi berbasis WAP yang mudah
digunakan oleh sekolah dan orang tua siswa.
6
c. Menjadikan sekolah lebih maju sesuai dengan perkembangan
teknologi.
3. Bagi Universitas
a. Memberikan kemajuan ilmu pengetahuan dalam bidang
aplikasi berbasis WAP di lingkungan Fakultas Sains dan
Teknologi, UIN Syarif Hidayatullah Jakarta.
b. Memberi sumbangan ilmiah bagi perkembangan teknologi
WAP.
c. Sebagai bahan referensi dan masukan yang mungkin berguna.
1.6. Metodologi Penelitian
Pada penulisan tugas akhir ini, diperlukan data-data yang lengkap
sebagai bahan pendukung kebenaran materi uraian dan pembahasan.
Oleh karena itu diperlukan metodologi pengumpulan data dan metode
pengembangan sistem.
1.6.1. Metodologi Pengumpulan Data
Dalam rangka menyusun tugas akhir ini, diperlukan data
dan informasi yang lengkap. Metodologi pengumpulan data
yang penulis lakukan adalah dengan melakukan observasi,
kuesioner, wawancara, studi pustaka, studi literatur yang sesuai
dengan topik penelitian.
7
1.6.2. Metodologi Pengembangan Sistem
Metodologi pengembangan sistem yang digunakan dalam
penelitian ini adalah metode pengembangan model RAD (Rapid
Application Development), model ini dibuat oleh James Martin
untuk membuat sistem yang cepat tanpa harus mengorbankan
kualitas. Dan melingkupi fase-fase sebagai berikut (Kendall &
Kendall, 2003 : 237) :
1) Fase Perencanaan Syarat-Syarat
Pada tahap ini dilakukan penentuan tujuan dan syarat-
syarat informasi, yaitu dengan melakukan analisa
kebutuhan untuk pembuatan aplikasi berbasis WAP,
kemudian menentukan tujuan dibuatnya aplikasi tersebut,
lalu barulah menentukan syarat – syarat yang diperlukan
dalam proses pembuatan aplikasi. Untuk lebih lengkap
dapat dilihat pada subbab 3.2..
2) Fase Perancangan
Pada tahap ini dilakukan perancangan proses yaitu proses-
proses yang akan terjadi di dalam sistem, yang terdiri dari
perancangan proses dan perancangan antarmuka pemakai
(user interface).
Pada perancangan proses digunakan alat bantu DFD untuk
memudahkan peneliti dalam merancang sistem informasi
8
akademik yang akan dibuat, untuk melakukan normalisasi
pada perncangan database dilakukan sampai tahap Boyce
- Codd. Untuk lebih jelas dapat dilihat pada subbab 4.2.1. .
3) Fase Konstruksi
Pada fase ini dilakukan tahap pengkodean terhadap
rancangan-rancangan yang telah didefinisikan.
Peneliti menggunakan WML 1.0. dan PHP 5.2.5. untuk
bahasa pemrograman, Web Server Apache sebagai
platform untuk menjalankan aplikasi, kemudian
menggunakan MySQL 5.0.51. sebagai database. Untuk
lebih jelas dapat dilihat pada subbab 4.1.3. .
4) Fase Pelaksanaan
Pada fase ini dilakukan pengujian terhadap sistem dan
melakukan pengenalan sistem kepada pengguna.
Untuk uji aplikasi dilakukan dengan menggunakan metode
blackbox. Perangkat yang digunakan yaitu sebuah
komputer dan sebuah ponsel. Untuk lebih jelas dapat
diilhat pada subbab 4.4. .
9
1.7. Sistematika Penulisan
Dalam penyusunan skripsi ini penulis menyajikan tulisan ini
menjadi beberapa bab, yaitu :
BAB I PENDAHULUAN
Bab ini terdiri dari latar belakang masalah, rumusan masalah,
batasan masalah, tujuan, manfaat, metodologi penelitian dan
sistematika penulisan.
BAB II LANDASAN TEORI
Bab ini berisi uraian tentang landasan teori yang diperlukan
dalam pembuatan aplikasi berbasis WAP (Wireless
Application Protocol).
BAB III METODOLOGI PENELITIAN
Bab ini menguraikan secara rinci metodologi yang digunakan
dalam pembuatan sistem aplikasi.
BAB IV PEMBAHASAN DAN IMPLEMENTASI
Bab ini membahas mengenai analisa, perancangan,
implementasi dan pengujian sistem.
10
BAB V PENUTUP
Bab ini berisi kesimpulan dari seluruh bab dan saran-saran
untuk pengembangan sistem lebih lanjut
DAFTAR PUSTAKA
LAMPIRAN
11
BAB II
LANDASAN TEORI
2.1. Aplikasi
Menurut Supriyanto (2005:117) Aplikasi adalah program yang
memiliki aktivitas pemrosesan perintah yang diperlukan untuk
melaksanakan permintaan pengguna dengan tujuan tertentu.
Pawirosumarto (2008 : 39), Aplikasi merupakan bagian dari
perangkat lunak. Perangkat lunak dibagi menjadi 3 tingkatan : Tingkatan
program aplikasi (Application Program misalnya Microsoft Office),
Tingkatan sistem operasi (Operating System misalnya Microsoft
Windows), dan tingkatan bahasa pemrograman.
2.2. Informasi Akademik
2.2.1. Konsep Dasar Informasi
Sutanta (2004 : 31-32), Informasi merupakan hasil
pengolahan data sehingga menjadi bentuk yang penting bagi
penerimanya dan mempunyai kegunaan sebagai dasar dalam
pengambilan keputusan yang dapat dirasakan akibatnya secara
langsung saat itu juga atau secara tidak langsung pada saat
mendatang. Untuk memperoleh informasi, diperlukan adanya
data yang akan diolah dan unit pengolah.
12
Hartono (1999 : 692), Informasi ibarat darah yang
mengalir dalam tubuh satu organisasi, sehingga informasi ini
sangat penting didalam organisasi. Informasi dapat di
definisikan sebagai hasil dari pengolahan data dalam suatu
bentuk yang lebih berguna dan lebih berarti bagi penerimanya
yang menggambarkan suatu kejadian – kejadian (event) yang
nyata (fact) yang digunakan untuk pengambilan keputusan.
2.2.2. Konsep Dasar Akademik
Fadjar (2002 : 5), 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 academos berubah menjadi akademik, yaitu
semacam tempat perguruan. Para pengikut perguruan tersebut
disebut academist, sedangkan perguruan semacam itu disebut
academia. 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.
13
Sistem informasi akademik dalam bidang pendidikan yang
diberikan oleh sekolah tertuang dalam PERATURAN
PEMERINTAH REPUBLIK INDONESIA NOMOR 17
TAHUN 2010 TENTANG PENGELOLAAN DAN
PENYELENGGARAAN PENDIDIKAN Bagian Keenam
Tentang Pengelolaan Pendidikan oleh Satuan atau Program
Pendidikan pasal 59 yang berisi :
(1) Dalam menyelenggarakan dan mengelola pendidikan,
satuan dan atau program pendidikan mengembangkan dan
melaksanakan sistem informasi pendidikan berbasis
teknologi informasi dan komunikasi.
(2) Sistem informasi pendidikan satuan atau program
pendidikan sebagaimana dimaksud pada ayat (1)
merupakan subsistem dari sistem informasi pendidikan
nasional.
(3) Sistem informasi pendidikan sebagaimana dimaksud pada
ayat (1) dan ayat (2) memberikan akses informasi
administrasi pendidikan dan akses sumber pembelajaran
kepada pendidik, tenaga kependidikan, dan peserta didik.
14
2.3. Perangkat Telepon Seluler Pendukung Aplikasi Internet Mobile
2.3.1. GSM (Global System for Mobile Communication)
Prasetyo (40 : 2005), GSM adalah teknologi seluler
digital atau standar komunikasi yang digunakan di seluruh
dunia. GSM pertama kali diperkenalkan tahun 1991 dan pada
tahun 1997 sudah dipakai secara luas di lebih dari 100 negara,
dan telah menjadi suatu standar telekomunikasi seluler bagi Asia
dan Eropa. GSM menggunakan frekuensi radio 900 MHz dan
1800 MHz di Eropa, Asia dan Australia. Di Amerika Utara dan
Amerika latin, frekuensi yang digunakan adalah 1900 Mhz.
Teknologi GSM memungkinkan sampai dengan 8 (delapan)
panggilan secara simultan pada frekuensi yang sama dan
menggunakan jalur data narrowband Time Division Multiple
Access (TDMA). TDMA sendiri adalah teknologi yang
digunakan untuk mengelola transmisi digital seperti sinyal
bergerak pada mobile phone dan BTS (Base Transceiver
System). Dalam TDMA, sebuah pita frekuensi dipecah-pecah
menjadi beberapa channel, atau time slot, yang ditumpuk (stack)
menjadi beberapa unit waktu yang lebih pendek. Pemecahan ini
memungkinkan adanya pembagian sebuah channel dipakai oleh
beberapa panggilan (call).
15
2.3.2. GPRS (General Packet Radio System)
Oetomo (2003:98), GPRS (General Packet Radio System)
adalah teknologi yang menyediakan layanan paket radio untuk
mentransmisikan data berukuran besar secara efisien.
GPRS merupakan sistem transmisi berbasis paket untuk
GSM yang menggunakan prinsip 'tunnelling'. Ia menawarkan
laju data yang lebih tinggi. Laju datanya secara kasar sampai
160 kbps dibandingkan dengan 9,6 kbps yang dapat disediakan
oleh rangkaian tersakelar GSM.
Dalam teorinya GPRS menjanjikan kecepatan mulai dari
56 kbps sampai 115 kbps, sehingga memungkinkan akses
internet, pengiriman data multimedia ke komputer, notebook dan
handheld computer.
Suhendar (2003 : 44), GPRS merupakan teknologi yang
digunakan untuk pelayanan data melalui jaringan telepon
bergerak seperti internet nirkabel, intranet nirkabel, serta
layanan multimedia melalui perangkat bergerak.
2.3.3. CDMA (Code Division Multiple Access)
CDMA adalah sebuah metode transmisi wireless di mana
sinyal-sinyal dirubah menjadi kode menggunakan urutan yang
acak, untuk mendefinisikan sebuah channel. CDMA
memberikan efisiensi yang lebih baik pada transmisi sinyal
analog, karena memungkinkan lebih banyak penggunaan ulang
16
frekuensi. Karakteristik sistem CDMA antara lain mampu
mengurangi putusnya transmisi panggilan (call), lebih hemat
energi dan memberikan kemanana yang lebih baik. Teknologi
CDMA pada awalnya adalah oleh sebuah teknologi militer yang
digunakan pada masa perang dunia ke dua. Karena perusahaan
Qualcomm Inc. berhasil menciptakan chip komunikasi CDMA,
maka teknologi komunikasi ini menjadi paten dan hak privat
perusahaan Qualcomm dan telah dikomersialkan.
([email protected],2002)
(Qualcomm Inc, 2002), pengertian CDMA adalah sebgai
berikut “CDMA bekerja dengan cara mengkonversi suara
menjadi informasi digital, yang kemudian di transmisikan
sebagai sinyal radio pada jaringan nirkabel. Dengan
menggunakan kode yang unik untuk menutup setiap panggilan
yang berbeda. CDMA dapat melayani lebih banyak pengguna
untuk berbagi gelombang radio pada saat yang sama tanpa
saling ganggu dan kesalahan sambungan komunikasi.
2.3.4. J2ME (Java 2 Micro Edition)
Pada tahap perkembangan awal aplikasi pada ponsel,
masing – masing vendor menghasilkan platform, sistem operasi,
dan aplikasi sendiri. Hal ini tidak menguntungkan bagi pembuat
aplikasi dan perkembangan aplikasi tersebut.
17
Maka untuk alasan inilah maka standarisasi perlu
dilakukan. Disamping membuat forum yang merumuskan
standarisasi tersebut diperlukan sebuah bahasa pemrograman
yang dapat bekerja pada semua platform yang ada. Hal ini
dijawab dengan hadirnya J2ME. J2ME adalah platorm fleksibel
dan dapat berjalan pada berbagai macam perankat handheld. Hal
ini sesuai dengan tujuan pembuatan bahasa pemrograman Java,
yaitu ”Write Once Run Anywhere” .
(http://java.sun.com/j2mc/docs/KVMwp.pdf).
2.3.5. MIDP (Mobile Information Device Profile)
MIDP menyediakan fungsi utama dari aplikasi yang
dibutuhkan oleh aplikasi mobile, termasuk user interface,
konektivitas jaringan, penyimpanan data, dan manajemen
aplikasi. Spesifikasi dari MIDP dibentuk melalui JCP (Java
Community Process), sebuah grup yang terdiri atas pembuat
perangkat handheld dan software, yang mempunyai lebih dari
50 perusahaan. Jadi sekarang dengan MIDP, programer cukup
menulis aplikasi sekali dan dapat digunakan pada perangkat
handheld. MIDP dipakai secara luas sebagai platform untuk
aplikasi mobile. MIDP dikembangkan secara global pada ponsel
dan PDA, dan didukung oleh IDE (Integrated Development
Environment) dari teknologi Java. Hampir perusahaan diseluruh
18
dunia menggunakan MIDP untuk membuat aplikasi mobile yang
digunakan oleh konsumen luas dan perusahaan.
(http://java.sun.com/j2mc/docs/KVMwp.pdf).
2.3.6. MIDlet
MIDlet adalah aplikasi yang dibangun dengan
menggunakan platform J2ME dmprofile MIDP. Susunan layer
pada MIDlet adalah sebagai berikut :
1. MID layer adalah perangkat handheld yang digunakan
2. Native System Software Layer adalah sistem operasi dan
library yang digunakan perangkat.
3. MDP Applications Layer adalah aplikasi MIDP yang
dibangun.
4. OEM – Specific Layer adalah aplikasi OEM – Specific
yang bergantung pada kelas lain atau kelas yang tidak
terdapat pada MIDP.
5. Native Applications Layer adalah aplikasi yang tidak
ditulis dengan bahasa Java dan dibangun pada perangkat
yang ada atau dapat disebut software asli dari perangkat.
(http://java.sun.com/j2mc/docs/KVMwp.pdf).
19
2.4. WAP (Wireless Application Protocol)
2.4.1. Perkembangan WAP (Wireless Application Protocol)
Simarmata (2006 : 1), WAP kependekan dari Wireless
Application Protocol dan merupakan terminal wireless, yaitu
mobile devices, PDA, dan lain – lain. Lebih lanjut WAP
mendukung beberapa sistem wireless seperti GSM, IS-136,
CDMA, PDC, dan lain – lain serta didukung oleh semua sistem
operasi seperti palmOS, EPOC, windows CE, FLEXOS, OS/9,
dan JavaOS. WAP adalah sebuah jaringan arsitektur komunikasi
yang dirancang untuk jaringan wireless.
Dengan WAP, seseorang yang mempunyai mobile devices
dapat melakukan transaksi seperti belanja, operasi bank, dan
pemesanan di internet. WAP dikembangkan oleh sekelompok
pabrik telekomunikasi (Seperti Nokia, Ericson, Motorola, dan
lain – lain), operator telekomunikasi (seperti Deutche Telecom,
France Telecom, AT&T), serta perusahaan software dan
penyedia layanan (seperti microsoft, IBM, RSA, Unwired
Planet, Symbian).
Protokol WAP dikembangkan oleh WAP forum. WAP
forum merupakan suatu asosiasi yang mengembangkan standar
WAP. WAP forum mempunyai lebih dari 500 anggota di
seluruh dunia dan sasarannya mempromosikan standar WAP
dan membantu perusahaan mengadopsi standar.
20
2.4.2. Definisi WAP (Wireless Application Protocol)
Utomo (2006 : 1-2), WAP merupakan sebuah protokol
aplikasi komunikasi, digunakan sebagai media untuk mengakses
sebuah informasi dan sebagai biro jasa. dirancang untuk micro
browser, untuk menghandel sebuah mobile atau telepon seluler
yang dapat digunakan untuk menciptakan jaringan telepon
seluler.
Fiati (2005 : 60), WAP adalah protokol yang
memungkinkan piranti wireless melakukan komunikasi data
seperti mengakses internet melalui jaringan seluler digital.
WAP merupakan himpunan protokol yang didesain secara
khusus untuk komunikasi internet dengan divais bergerak yang
memiliki layar kecil dan bandwith yang rendah. WAP juga
dimaksudkan untuk meningkatkan fungsionalitas telpon
genggam untuk layanan real time, seperti informasi indeks
saham, lalu lintas dan cuaca. Dengan WAP kita diberi peluang
untuk membuat aplikasi dari layanan – layanan tersebut.
2.4.3. Arsitektur WAP
Agung (2001 : 31), Sistem WAP dibangun oleh beberapa
elemen tertentu dalam segi arsitektur yang khas seperti yang
ditunjukan pada gambar dibawah ini.
21
Gambar 2.1. Arsitektur WAP (Sumber : Agung, 2001:31)
Elemen yang pertama WAP client. Dalam sistem WAP,
Telepon seluler merupakan ujung dari mata rantai jaringan, yang
sekaligus berperan sebagai pelanggan sistem dan disebut WAP
client. Telepon seluler ini tersambung ke WAP Gateway
(elemen yang kedua) melalui gelombang radio frekuensi tinggi
900/1800/1900 MHz GSM (Global System For Mobile
Comunication). WAP Gateway hanya dapat dimiliki oleh badan
usaha yang memiliki lisensi. Funsi dari WAP Gateway berfungsi
untuk meneruskan permintaan informasi dari mobile device
menuju server (lewat HTTP Request) dan dari server menuju
ponsel (lewat HTTP Response). Elemen yang ketiga server.
Server merupakan tempat yang berisikan data – data yang
diakses oleh user atau client. Di server inilah, script „WML‟
ditempatkan.
22
2.4.4. Komponen WAP
Oetomo (2003 : 21), Secara teknis lapisan – lapisan WAP
mirip dengan lapisan protokol internet. Lapisan – lapisan WAP
dirancang agar dapat mendukung terjadinya hubungan
komunikasi.
Fiati (2005 : 63), WAP menjadi standar protokol
internasional untuk transfer data internet bergerak dan
dioperasikan di atas semua sistem jarigan wireless.
Fiati (2005 : 63-70), komponen WAP terdiri atas 5 layer
dan 1 layer bearer service, yaitu :
1. WAE (Wireless Application Environtment)
Wireless Application Environment (WAE) yaitu
layer aplikasi tempat aplikasi WAP bekerja. Layer ini
mendukung 3 aplikasi, yaitu Wireless Markup Language
(WML), WML – script, dan Wireless Telephony
Application (WTA).
WAE merupakan pemodelan WWW dimana semua
format konten sesuai standar internet karena didukung
Mobile Network Service seperti Call Control dan
Messaging. Disini gateway, berfungsi sebagai encoding
dan decoding (Encoder).
23
2. WSP (Wireless Session Protocol)
Wireless Session Protocol (WSP), yaitu layer
session yang mengontrol lalu lintas aplikasi sebelum
sampai ke layer WAE. WSP didesain untuk fungsi
transaction dan datagram service.
Fungsi WSP salah satunya adalah menghubungkan
client ke server. Fungsi lain adalah Capability Negotiation
yaitu kemampuan untuk persetujuan fungsionalitas session
dan pemilihan protokol sehingga menungkinkan aplikasi
pada server dapat didukung oleh client dengan
menggunakan konfigurasi dan protokol. WSP juga
menyediakan http, interupt transaction in process, push
content dari server ke client dengan cara unsynchronous.
WSP berfungsi unsynchronous transaction secara
simultan.
3. WTP (Wireless Transaction Protocol)
Wireless Transaction Protocol (WTP) adalah layer
transfer untuk mengetahui apakah data berhasil dikirim
atau belum dan melakukan pengiriman kembali sekiranya
data tidak terkirim.
Transaction protocol adalah protokol untuk
mengatur penukaran data dari suatu aplikasi, misalnya
pada saat browsing. Tujuan protokol ini adalah
24
memberikan sistem penyampaian transaksi secara reliabel
dengan kemampuan retransmit message yang mengalami
loss dan untuk menghindari duplikasi message. berfungsi
memeriksa format data, konversi data dan atau
pengkodean yang akan ditransmisikan.
4. WTSL (Wireless Transport Layer Security)
Wireless Transaction Protocol (WTLS), yaitu layer
keamanan (security) tempat dilakukan enkripsi data untuk
pengiriman data sensitif yang tidak dapat diketahui oleh
umum. Tujuan WTLS adalah:
a. Data integrity sehingga data yang terkirim antar
terminal tidak mengalami kerusakan.
b. Autentifikasi antara dua aplikasi yang sedang
berhubungan. Melakukan handshaking dengan
membuat jalur dua arah sebelum melakukan transfer
data.
c. Denial OF Service Protection untuk melakukan
deteksi data yang mengalami kerusakan serta untuk
melindungi pengaksesan layer protokol.
d. Penggunaan bearer dengan bandwith rendah
e. Compression untuk melakukan kompresi data dari
layer sehingga sesuai untuk pentransmisian pada
bearer yamg memiliki bandwith rendah.
25
WTSL conection management berfungsi untuk
mengatur koneksi antara client dan server dan penggunaan
protokol.
5. WDP (Wireless Diagram Protocol)
Wireless Diagram Protocol (WDP), yaitu layer
transport yang merupakan interface protokol aplikasi
dengen bearer service (jaringan wireless). Layer ini
melakukan kontrol transmisi data, apakah menggunakan
mekanisme UDP yang bersifat connectionies atau mobile
IP yang bersifat connection – oriented. WDP merupakan
transport layer yang beroperasi di atas bearer service
yang mendukung berbagai tipe network. Fungsi WDP
antara lain adalah pengalamatan aplikasi dengan port
number, optional SAR (Segmentation and Reassembly),
optional error detection, memberikan aplikasi yang
beroperasi melalui bearer service dan karakteristik yang
berbeda. merupakan kelanjutan dari WTLS yang mampu
berkomunikasi dengan bearer. Bertugas mentransmisikan
data dalam format biner melalui media gateway, serta
mendefinisikan pengalamatan jaringan yang akan dikenali
oleh bearer.
26
6. Bearer
Bearer terdiri dari data switch, short massage data,
paket data yang memiliki fungsi untuk melakukan transfer
data dari suatu unit informasi yang berisi alamat dan
melakukan pemeriksaan error dan penundaan transfer
hingga proses benar.
7. Others Service and Applications
Selain dari layer – layer diatas, pendukung aplikasi
lainnya merupakan program aplikasi jaringan, notepad,
phonebook, kalender, e-commerce, mobile banking, dan
lain – lain.
Gambar 2.2. Komponen WAP (Sumber : Fiati, 2005:59)
27
2.4.5. Tipe MIME (Multipurpose Internet Mail Extensions) pada
WAP
Agar Suatu aplikasi internet dapat berjalan pada web
server, maka tipe atau format data aplikasi tersebut harus
dikenal oleh web server. Format data yang dapat dilayani oleh
internet disebut MIME (Multipurpose Internet Mail Extensions).
Tipe MIME ini dikirim oleh server bersama data dan melalui
MIME ini maka browser mengetahui data apa yang dikirim.
WAP pun mempunyai tipe MIME yang khusus dan harus
ditambahkan dalam konfigurasi MIME agar ponsel dapat
mengakses dokumen WAP server. (Simarmata, 2006:15)
Tipe MIME yang digunakan oleh WAP dapat dilihat pada
tabel 2.1. berikut.
Tabel 2.1. Tipe MIME yang digunakan WAP
(Sumber : Simarmata, 2006 : 15)
Tipe MIME Ekstensi Tipe File
Text/vnd.wap.wml Wml WML Script Code
Application/vnd.wap.wml-
wbxml
Wmlc Compiled WML
Text/vnd.wap.wmlscript Wmls WML Script Code
Application/vnd.wap.wmls
criptc
Wmlsc Compiled WML Script
Image/vnd.wap.wbmp Wbmp WML Bitmap
Text/x-hdml Hdml HDML Script Code
28
2.5. Apache Web Server
Frans (2002 : 33), Web server bertugas untuk menangani setiap
request web yang ditujukan kepadanya. Apache merupakan salah satu
program web server diantara sekian banyak program web server lainnya.
Apache web server merupakan hasil dari Apache software foundation
dengan Apache project-nya.
Apache merupakan web server yang bersifat open source sehingga
menjadikan Apache sebagai server web alternatif dari Netscape
(sekarang Sun Java System Web Server). Asal mula nama Apache
terdapat dua versi istilah yang berbeda, yaitu : dari sebuah server web
NCSA dan suku asli Indian Amerika.
Dari sudut sebuah server web NCSA : Nama Apache berasal ketika
server web populer yang dikembangkan pada awal tahun 1995, yaitu
NCSA HTTPd 1.3 mengalami sejumlah perubahan besar terhadap kode
sumbernya (patch). Begitu banyak patch pada perangkat lunak tersebut
sehingga disebut server yang memiliki banyak patch (”a patchy”
server).
Dari sudut suku asli Indian Amerika : Menurut halaman FAQ yang
berasal dari situs resminya, bahwa nama Apache dipilih untuk
menghormati suku asli Indian Amerika Apache (Inde‟), yang dikenal
karena keahlian dan strategi perangnya.
Namun pada versi ke-2, Apache ditulis dari awal tanpa
mengandung kode sumber dari NCSA. Pada awalnya Apache digunakan
29
dalam operating system Linux, yang sering disebut LAMP (Linux-
Apache-MySQL-PHP/Perl/Phyton). Adapun yang merupakan kompetitor
utama Apache saat ini, yaitu : Internet Information Service (IIS) dari
Microsoft dan Sun Java Web Server dari Sun Microsystem.
2.6. WML (Wireless Markup Language)
2.6.1. Perkembangan WML
Simarmata (2006 : 5), XHTML merupakan dasar bagi
generasi mobile browsing berikutnya, XHTML Mobile profile
markup language bersama WAP CSS adalah sebagian besar
susunan WAP 2.0 dan menawarkan beberapa keuntungan atas
WML yang asli, terutama dalam area penyajian isi. Namun,
XHTML diatas pun meminjam sebagian besar tugas WAP,
contohnya scripting, push, dan pengintegrasian kemampuan
telepon, yang dipinjam dari spesifikasi WAP yang lebih awal.
2.6.2. Definisi WML
Simarmata (2006 : 10), Wireless Markup Language
adalah bahasa pendekripsi halaman yang menguraikan
bagaimana isi WAP disajikan kepada user. Dengan WML, dapat
menampilkan informasi pada telepon mobile, memberikan user
pilihan masukan, dan menetapkan bagaimana user agent dapat
merespon ketika user mengaktifkan fungsi interface atau
menekan key.
30
Peran WML pada aplikasi mobile internet sama seperti
HTML. Pada aplikasi web. WAP site ditulis dalam WML,
sedangkan website ditulis dalam HTML. Perbandingan antara
HTML dengan WML akan dijabarkan pada tabel 2.2 dibawah
ini.
Tabel. 2.2. Perbandingan WML dan HTML
(Sumber : Simarmata, 2006:07).
2.6.3. Struktur WML
Pada WML dibagi menjadi 2 bagian yaitu header dan
body. Bagian header terdapat dua hal yang dapat dideklarasikan,
yang pertama versi XML dan Document Type Definition (DTD).
Dalam deklarasi DTD berfungsi agar dokumen yang dibuat
dapat dikenali.
Script berikut tidak akan menampilkan apapun, tetapi
menunjukan elemen setiap halaman WML.
1. <?xml version=”1.0”?>
WML HTML
Bahasa markup untuk komunikasi
wireless
Bahasa Markup Untuk komunikasi yang
menggunakan tabel
Dibuat menggunakan variabel Tidak menggunakan variabel
WML script disimpan dalam file
terpisah
Javasript ditempelkan dalam file HTML
yang sama
Image disimpan sebagai WBMP Image disimpan sebagai GIF, JPEG, atau
JPG
Browser yang digunakan adalah
microbrowser
Browser yang digunakan adalah Netscape
navigator,IE dan Opera
Case Sensitive Tidak case sensitive
Mempunyai tag yang lebih sedikit Mempunyai tag yang lebih banyak
WML card membuat „Deck‟ Halaan HTML membuat „Situs‟
31
2. < !DOCTYPE wml PUBLIC
“-//WAPFORUM//DTD WML 1.1 / / EN”
“http://www.wapforum.org/DTD/wml1_1.1.xml>
3. <wml>
4. </wml>
Baris 1 dan 2 adalah header sedangkan baris 2 merupakan
body, Baris 1 mengidentifikasikan bahwa dokumen yang ditulis
adalah versi terakhir XML. Baris 2 menetapkan bahwa dokumen
adalah WML versi 1.1, yang merupakan standar dokumen
sekarang sampai versi terbaru dari WAP diperkenalkan. Baris 3
dan 4 berisi tag pembuka <wml> dan tag penutup </wml>.
2.6.4. WML Deck dan Card
Simarmata (2006 : 11), Perbedaan utama antara HTML
dan WML adalah unit dasar navigasi pada HTML adalah page
sedangkan pada WML adalah sebuah card. File WML dapat
berisi card yang membentuk sebuah deck. Dengan kata lain,
card dikelompokan bersama – sama di dalam deck. Ketika user
pergi ke WAP site, mobile browser memuat suatu file WML
yang berisi sebuah deck dan card server Hanya satu card yang
akan ditunjukan pada layar wireless device setiap waktu. Jika
user pergi ke card lain pada deck yang sama, mobile browser
tidak mengirimkan apapun atas permintaan server karena file
32
yang berisi deck telah disimpan di dalam wireless device.
Gambar 2.3. berikut adalah ilustrasi WML deck dan card.
Gambar 2.3. WML Deck dan Card
(Sumber : simarmata, 2006:11)
1. Deck
Simarmata (2006 : 12), Cara memulai penulisan
script WML adalah dengan membuat deck. Didalam satu
script WML aturannya hanya memiliki satu buah deck.
Berikut adalah tabel 2.3. yang membahas deskripsi tag –
tag dasar menyusun deck.
Tabel 2.3. Deskripsi tag – tag dasar WML
(Sumber : Simarmata, 2006 : 12-13)
33
2. Card
Simarmata (2006 : 13), Card dibentuk oleh
pasangan tag <card> dan </card>. Satu buah script
WML bisa membuat card. Untuk menulis card cukup
meletakan tag <card> dan </card> diantara deck, seperti
ini :
<?xml version=”1.0”?>
< !DOCTYPE wml PUBLIC
“-//WAPFORUM//DTD WML 1.1 / / EN”
“http://www.wapforum.org/DTD/wml1_1.1.xml>
<wml>
<card>
<p>Halo!<p>
</card>
</wml>
2.7. PHP
Kadir (2003 : 1), Menurut dokumen resmi PHP, PHP singkatan
dari PHP Hypertext Preporocessor. Ia merupakan bahasa berbetuk skrip
yang ditempatkan dalam server dan diproses di server. Hasilnyalah yang
dikirimkan ke klien, tempat pemakai menggunakan browser.
PHP merupakan software open source yang disebarkan dan
34
dilisensikan secara gratis serta dapat di-download bebas dari situs
resminya (http://www.php.net). Sintaks program atau script PHP ditulis
dalam apitan tanda khusus PHP.
2.8. MySQL
MySQL adalah multi user database yang menggunakan bahasa
Structured Query Language (SQL). MySQL dalam operasi client server
melibatkan server daemon MySQL di sisi server dan berbagai macam
program serta library yang berjalan di sisi client. MySQL mampu
menangani data yang cukup besar. Perusahaan yang menangani MySQL
yaitu TcX, mengaku mampu menyimpan data lebih dari 40 database,
10.000 tabel, dan sekitar 7 juta baris, totalnya kurang lebih 100
Gigabytes data (Nanang, 2004, Ch4).
SQL adalah bahasa standar yang digunakan untuk mengakses
server database. Bahasa ini pada awalnya dikembangkan oleh IBM,
namun telah diadopsi dan digunakan sebagai standar industri. Dengan
menggunakan SQL, proses akan database menjadi lebih user-friendly
dibandingkan dengan menggunakan dBASE atau clipper yang masih
menggunakan perintah-perintah pemrograman.
35
2.9. Macromedia Dreamweaver 8
Suyanto (2003 : 238), Macromedia Dreamweaver adalah software
web yang menawarkan cara mendesain website dengan dua langkah
sekaligus dalam satu waktu, yaitu mendesain dan memprogram.
Dreamweaver merupakan software utama yang digunakan oleh web
desainer maupun web programer dalam mengembangkan suatu situs
web. Hal ini disebabkan ruang kerja, fasilitas, dan kemampuan
Dreamweaver yang mampu meningkatkan produktivitas dan efektivitas
dalam desain maupun membangun suatu situs web. Dreamweaver juga
dilengkapi dengan fasilitas untuk manajemen situs yang cukup lengkap.
2.10. Perangkat Pengembangan Sistem
2.10.1. Data Flow Diagram (DFD)
Laudon (2003:471), DFD adalah peralatan utama dari
analisis terstruktur yang secara grafis mengilustrasikan proses-
proses komponen dari sistem dan aliran data di antara proses-
proses tersebut.
Ladjamudin, (2005:64), Diagram aliran data merupakan
model dari sistem untuk menggambarkan pembagian sistem ke
modul yang lebih kecil. Salah satu keuntungan menggunakan
diagram aliran data adalah memudahkan pemakai atau user yang
kurang menguasai bidang komputer untuk mengerti sistem yang
36
akan dikerjakan.
Ladjamudin, (2005 : 64) DFD terbagi menjadi beberapa
tingkatan antara lain adalah sbb :
1. Diagram Konteks
Diagram Konteks adalah diagram yang terdiri dari
suatu proses dan menggambarkan ruang lingkup sistem.
Diagram konteks merupakan level tertinggi dari DFD yang
menggambarkan seluruh input ke sistem.
2. Diagram Nol atau Zero (Overview Diagram)
Diagram nol adalah diagram yang yang
menggambarkan proses dari dataflow diagram. Diagram
nol memberikan pandangan secara menyeluruh mengenai
sistem yang ditangani, menunjukan tentang fungsi – fungsi
utama atau proses yang ada, aliran data, dan eksternal
entity.
3. Diagram Rinci (level diagram)
Diagram rinci adalah diagram yang menguraikan
proses apa yang ada dalam diagram zero atau diagram
level diatasnya.
37
Ladjamudin (2005 : 67-70) DFD memiliki beberapa
Elemen dasar antara lain sbb :
1. Kesatuan Luar (External Entity)
Sesuatu yang berada diluar sistem, tetrapi ia
memberikan data dari sistem disimbolkan dengan kotak
notasi.
2. Arus Data
Arus data merupakan tempat mengalirnya informasi
dan digambarkan dengan garis yang menghubungkan
komponen dari sistem.
3. Proses
Proses merupakan apa yang dikerjakan oleh sistem.
Proses dapat mengolah data atau aliran data masuk
menjadi aliran data ke luar. Proses berfungsi untuk
mentransformasikan satu atau beberapa data keluaran
sesuai dengan spesifikasi yang diinginkan.
4. Simpanan Data (Data Store)
Simpanan data merupakan tempat penyimpanan data
pengikat data yang ada dalam sistem.
5. Kamus Data
Kamus data berfungsi membantu pelaku sistem
untuk mengartikan aplikasi secara detail dan
mengorganisasikan semua elemen data yang digunakan
38
dalam sistem secara persis sehingga pemakai dan
penganalis sistem mempunyai dasar pengertian yang sama
tentang masukan, keluaran, penyimpanan, dan proses.
2.10.2. Entity Relationship Digram (ERD)
Ladjamudin (2005:142), Entity Relatioship Diagram
(ERD) adalah suatu model jaringan yang menggunakan susunan
data yang disimpan dalam sistem secara abstrak.
Ladjamudin (2005 : 143-147), ERD memiliki beberapa
elemen yaitu :
1. Entity
Entity adalah suatu apa saja yang disimpan dalam
sistem, nyata maupun abstrak dimana data tersimpan atau
dimana terdapat data.
2. Relatioship
Relatioship adalah hubungan alamiah yang terjadi
antara entitas.
3. Relationship degree
Relationship degree atau Derajat relationship adalah
jumlah entitas yang berpartisipasi dalam suatu
relationship.
4. Atribut
Secara umum atribut adalah sifat atau karakteristik
dari tiap entitas maupun relationship. Maksudnya, atribut
39
adalah suatu yang menjelaskan apa sebenarnya yang
dimaksudkan entitas maupun relationship, sehingga sering
dikatakan atribut adalah elemen dari setiap entitas dan
relationship.
5. Kardinalitas
Kardinalitas Relasi menunjukan jumlah maksimum
tupel yang dapat berelasi dengan entitas pada entitas yang
lain. Terdapat 3 macam kardinalitas relasi yaitu :
a. One to One
Tingkat hubungan satu ke satu, dinyatakan
dengan satu kejadian pada entitas pertama, hanya
mempunyai satu hubungan dengan satu kejadian
pada entitas yang kedua dan sebaliknya.
Yang berarti setiap tupel pada entitas A
berhubungan dengan paling banyak satu tupel pada
entitas B, dan juga begitu sebaliknya setiap tupel
pada entitas B berhubungan dengan paling banyak
satu tupel pada entitas A.
b. One to Many atau Many to One
Tingkat hubungan satu ke banyak adalah sama
dengan banyak ke satu. Tergantung arah dari mana
hubungan tersebut dilihat untuk satu kejadian pada
entitas yang pertama dapat mempunyai banyak
40
hubungan dengan kejadian pada entitas yang kedua,
sebaliknya satu kejadian entitas yang kedua hanya
dapat mempunyai satu hubungan dengan satu
kejadian pada entitas yang pertama.
c. Many to Many
Tingkat hubungan banyak ke banyak terjadi
jika tiap kejadian pada sebuah entitas akan
mempunyai banyak hubungan dengan kejadian pada
entitas lainnya. Baik dilihat dari sisi entitas yang
pertama, maupun dilihat dari sisi yang kedua.
Yang berarti setiap tupel pada entitas A dapat
berhubungan dengan banyak tupel pada entitas B.
2.10.3. Flowchart (Bagan Alir)
Hartono (2001:795), Bagan alir sistem (flowchart) adalah
bagan yang menunjukan alir didalam program atau prosedur
sistem secara logika. Bagan alir digunakan terutama untuk alat
bantu komunikasi dan dokumentasi.
Flowchart menolong analis dan programer untuk
memecahkan masalah kedalam segmen – segmen yang lebih
kecil dan menolong dalam menganalisis alternatif – alternatif
lain dalam pengoperasian. Flowchart biasanya mempermudah
masalah yang perlu dipelajari dan dievaluasi lebih lanjut.
41
2.10.4. Normalisasi
Ladjamudin (2005 : 169), Normalisasi adalah proses
pengelompokan data kedalam bentuk tabel atau relasi atau file
untuk menyatakan entitas dan hubungan mereka sehingga
terwujud satu bentuk database yang mudah dimodifikasi.
Sutanta (2004 : 173), Teori normalisasi dibangun menurut
konsep level normalisasi. Level normalisasi atau sering disebut
sebagai bentuk normal suatu relasi dijelaskan berdasarkan
kriteria tertentu pada bentuk normal. Bentuk normal yang
dikenal hingga saat ini meliputi bentuk 1NF, 2NF, 3NF, BCNF.
Sutanta ( 2004 : 173-177), Penjelasan tahap - tahap normalisasi
yang dimulai dari bentuk tidak normal yaitu :
1. Relasi bentuk tidak normal
Relasi – relasi yang dirancang tanpa mengindahkan
batasan dalam definisi basis data dan karakteristik RDBM
akan menghasilkan relasi UNF. Bentuk ini harus dihindari
dalam perancangan relasi dalam basis data. Relasi UNF
mempunyai kriteria sebagai berikut :
a. Jika relasi mempunyai bentuk non flat file (terjadi
akibat data disimpan sesuai dengan kedatangannya,
sehinga tidak memiliki struktur yang sama atau
tertentu, terjadilah duplikasi atau tidak lengkap)
42
b. Jika relasi memuat set atribut berulang (non single
value)
c. Jika relasi memuat atribut non atomic value
2. Relasi bentuk normal pertama (first norm form/1NF)
Relasi disebut sebagai 1NF jika memenuhi kriteria
sebagai berikut :
a. Jika seluruh atribut dalam relasi bernilai atomik
(atomic value)
b. Jika seluruh atribut dalam relasi bernilai tunggal
(single value).
c. Jika relasi tidak memuat set atribut berulang.
d. Jika semua record mempunyai sejumlah atribut yang
sama.
Permasalahan dalam 1 NF adalah sebagai berikut :
a. Tidak dapat menyisipkan informasi parsial.
b. Terhapusnya informasi ketika menghapus sebuah
record.
c. Pembaharuan atribut non kunci mengakibatkan
sejumlah record harus diperbaharui.
Untuk mengubah relasi UNF menjadi bentuk 1NF,
dapat dilakukan dengan cara sebagai berikut :
a. Melengkapi nilai–nilai dalam atribut.
43
b. Mengubah struktur relasi.
3. Bentuk normal kedua (second norm form/2NF)
Relasi disebut sebagai 2NF jika memenuhi kriteria
sebagai berikut :
a. Jika memenuhi kriteria 1NF.
b. Jika semua atribut non kunci FD (functional
Dependence) pada PK (Primary Key).
Permasalahan dalam 2NF adalah sebagai berikut :
a. Kerangkapan data (data redudancy).
b. Pembaharuan yang tidak benar dapat menimbulkan
inkonsistensi data (data inconsistency).
c. Proses pembaharuan tidak efesien.
d. Penyimpangan atau permasalahan pada saat
penyisipan, penghapusan dan pembaharuan.
Kriteria tersebut mengindetifikasikan bahwa diantara
atribut dalam 2NF masih mungkin mengalami TDF
(Transitive Dependency). Selain itu, relasi 2NF menuntut
telah didefinisikan atribut PK dalam relasi.
Untuk mengubah relasi 1NF menjadi bentuk 2NF,
dapat dilakukan dengan mengubah struktur relasi dengan
cara :
a. Identifikasikan FD relasi 1NF .
b. Berdasarkan informasi tersebut, dekomposisi relasi
44
1NF menjadi relasi – relasi baru sesuai FD-nya. Jika
menggunakan diagram, maka simpul-simpul yang
berada pada puncak diagram ketergantungan data
bertindak sebagai PK pada relasi baru.
4. Bentuk normal ketiga (third norm form/3NF)
Suatu relasi disebut sebagai 3NF jika memenuhi
kriteria sebagai berikut :
a. Jika memenuhi kriteria sebgai 2NF.
b. Jika setiap atribut non kunci tidak TDF terhadap PK
Permasalahan dalam 3NF adalah keberadaan.
penentu yang tidak merupakan bagian dari PK
menghasilkan duplikasi rinci data pada atribut yang
berfungsi sebagai FK.
Untuk mengubah relasi 2NF menjadi bentuk 3NF,
dapat dilakukan dengan mengubah struktur relasi dengan
cara :
a. Indentifikasikan TDF relasi 2NF
b. Berdasarkan informasi tersebut, dekomposisi relasi
2NF menjadi relasi – relasi baru sesuai TDF-nya.
Jika menggunakan diagram, maka simpul-simpul
yang berada pada puncak diagram ketergantungan
data bertindak sebagai PK pada relasi baru.
45
5. Bentuk normal Boyce-Cood (Boyce-Cood norm form atau
BCNF)
Bentuk normal BCNF di kemukakan oleh R.F.
Boyce dan E.F. Codd. Suatu relasi disebut sebgai BCNF
jika memenuhi kriteria sebagai berikut :
a. Jika memenuhi kriteria 3 NF
b. Jika semua atribut penentu (determinan) merupakan
CK (Candidate Key)
2.11. Sistem Basis Data
Sutanta (2004 : 18), Basis data adalah suatu kumpulan data
terhubung (interrlated data) yang disimpan secara bersama – sama pada
suatu media, tanpa mengatap satu sama lain atau tidak perlu suatu
kerangkapan data (kalaupun ada maka kerangkapan data tersebut harus
seminimal mungkin dan terkontrol (controlled redudancy)), data
disimpan dengan cara –cara tertentu sehingga mudah untuk digunakan
atau ditampilkan, data dapat digunakan oleh satu atau lebih program –
program aplikasi secara optimal, data disimpan tanpa mengalami
ketergantungan dengan program yang akan menggunakannya, data
disimpan sedemikian rupa sehingga proses penambahan, pengambilan
dan modifikasi data dapat di lakukan dengan mudah.
Sutanta (2004 : 21), Sistem basis data dapat didefinisikan sebagai
sekumpulan subsistem yang terdiri atas basis data dengan pemakai yang
46
menggunakan basis data secara bersama – sama, personal – personal
yang merancang dan mengelola basis data, teknik-teknik untuk
merancang dan mengelola basis data, serta sistem komputer untuk
mendukungnya.
Sutanta ( 2004:21 ), Sistem basis data mempunyai beberapa
elemen penting yaitu :
1. Basis data sebagai inti dari basis data
2. Perangkat Lunak (Software) untuk perancangan dan pengelolaan
basis data.
3. Perangkat keras (Hardware) sebagai pendukung operasi
pengelolaan data.
4. Manusia (Brainware) yang mempunyai peran penting dalam sistem
tersebut, yaitu : sebagai pemakai atau para spesialis informasi yang
mempunyai fungsi sebagai perancang atau pengelola.
2.12. Rapid Application Development (RAD)
Pressman (2003 : 42), RAD adalah sebuah model proses
perkembangan perangkat lunak sekuensial linier yang menekankan siklus
perkembangan yang sangat pendek. Model RAD ini merupakan sebuah
adaptasi “kecepatan tinggi” dari model sekuensial linier di mana
perkembangan cepat didapat dengan menggunakan pendekatan
konstruksi berbasis komponen. Jika kebutuhan dipahami dengan baik,
proses RAD memungkinkan tim pengembangan menciptakan “sistem
47
fungsional yang utuh” dalam periode waktu yang sangat pendek (kira-
kira 60 sampai 90 hari).
Karena dipakai terutama pada aplikasi sistem konstruksi. Kendall
& Kendall (2003 : 237), pendekatan RAD meliputi fase-fase sebagai
berikut :
1. Fase Perencanaan Syarat. Dalam hal ini pengguna dan penganalisis
bertemu untuk mengidentifikasi tujuan-tujuan aplikasi atau sistem
serta untuk mengidentifikasi syarat-syarat informasi yang
ditimbulkan dari tujuan-tujuan tersebut.
2. Workshop Desain RAD. Fase ini adalah fase untuk merancang dan
memperbaiki yang bisa digambarkan sebagai workshop. Terdiri
dari fase perancangan dan fase konstruksi.
3. Fase Implementasi. Fase ini adalah fase dimana penganalisis
bekerja dengan pengguna secara intens selama workshop untuk
meancang aspek-aspek ini disetujui dan sistem-sistem dibangun
dan disaring, sistem-sistem baru atau bagian dari sistem diuji coba
dan kemudian diperkenalkan kepada organisasi.
Model Rapid Application Development dapat dilihat pada gambar
2.9. berikut dibawah ini :
48
Gambar 2.4. Tahapan-Tahapan RAD
(Sumber : Kendall, 2003 : 237)
Syarat-syarat mengunakan RAD adalah pihak perekayasa
perangkat lunak telah mengetahui dengan jelas kebutuhan user
(pengguna) dengan tepat, mengetahui proses-proses apa saja yang ada
didalam perangkat lunak yang dibuat, dan input-output yang dihasilkan.
Kendall & Kendall (2003 : 239), proses RAD memiliki fase-fase seperti
dibawah ini :
1. Fase Perencanaan Syarat-Syarat
Pada tahap ini dilakukan pengidentifikasian tujuan-tujuan aplikasi
atau sistem serta untuk mengidentifikasi syarat-syarat informasi
yang ditimbulkan dari tujuan tersebut.
2. Fase Perancangan
Pada tahap ini dilakukan perancangan proses yaitu perancangan
proses-proses yang akan terjadi didalam sistem dan perancangan
antarmuka yaitu perancangan antarmuka masukkan dan antarmuka
keluaran.
49
3. Fase Konstruksi
Pada tahap ini dilakukan pengkodean terhadap rancangan-
rancangan yang telah didefinisikan.
4. Fase Pelaksanaan
Pada tahap ini dilakukan pengujian terhadap sistem dan melakukan
pengenalan terhadap sistem.
50
BAB III
METODOLOGI PENELITIAN
Pada penulisan tugas akhir ini, diperlukan data-data yang lengkap sebagai
bahan pendukung kebenaran materi uraian dan pembahasan. Oleh karena itu
diperlukan metodologi pengumpulan data dan metode pengembangan sistem.
3.1. Metode Pengumpulan Data
Penyusunan skripsi ini dilakukan dengan menggunakan beberapa
metode yang dapat mendukung penulisan, baik dalam pengumpulan data
maupun informasi yang diperlukan, untuk mendapatkan kebenaran
materi uraian pembahasan.
Adapun metode pengumpulan data primer yang digunakan dalam
pembahasan skripsi ini adalah dengan menggunakan :
3.1.1. Metode Observasi
Pada metode Observasi, peneliti melakukan pengamatan
langsung di lapangan untuk mengetahui secara langsung
keadaan objek penelitian yang sebenarnya. Hal ini bertujuan
untuk memperoleh penjelasan mengenai data-data dan informasi
yang dibutuhkan dalam penelitian pada sekolah SMP
PERWIRA Jakarta. Observasi ini dilaksanakan selama bulan
Januari 2010, bertempat di SMP PERWIRA Jakarta, JL. H.
Dilun No. 4, Pesanggrahan, Jakarta Selatan.
51
3.1.2. Metode Kuesioner
Kuesioner dilakukan pada tanggal 14 Februari sampai 20
Februari 2010. Metode ini bertujuan untuk mengetahui apakah
perlu dibuatnya sebuah aplikasi yang dapat mempermudah
penyebaran informasi pada sekolah SMP PERWIRA Jakarta.
Untuk lebih lengkap dapat dilihat pada sub bab 4.1.2. .
3.1.3. Metode Wawancara
Wawancara memperoleh keterangan untuk tujuan
penelitian dengan cara tanya jawab sambil bertatap muka antara
pewawancara dengan narasumber Wawancara telah dilakukan
pada tanggal 20 Januari 2010 dengan narasumber Bapak
Khaeroji (Koordinator Laboratorium Komputer SMP
PERWIRA Jakarta) di Laboratorium komputer Terpadu SMP
Perwira Jakarta. Untuk lebih lengkap dapat dilihat pada sub bab
4.1.3. .
3.1.4. Studi Pustaka
Studi pustaka digunakan dengan membaca dan
mempelajari referensi yang ada, e-book, serta mencari referensi
tambahan dari internet. Untuk lebih lengkap terdapat di dalam
sub bab 4.1.4. .
52
3.1.5. Studi Literatur
Studi literatur ini dilakukan dengan melihat penelitian dan
skripsi sejenis yang sudah ada. Merujuk pada penelitian yang
telah dilakukan oleh (Dawimah, Aplikasi pelayanan Informasi
Akademik Menggunakan Protokol WAP, 2010), dan (Udin
Suchaini, APLIKASI WAP PORTAL DALAM PEMBUATAN
SISTEM INFORMASI AKADEMIK DENGAN WML, PHP DAN
MYSQL, 2007), untuk lebih lengkap dapat dilihat pada sub bab
4.1.5. .
3.2. Metode Pengembangan Sistem
Penelitian dilakukan dengan menggunakan metode pengembangan
sistem model pendekatan RAD (Rapid Application Development).
Penulis menggunakan model RAD karena melihat dari aplikasi yang
dikembangkan adalah aplikasi yang sederhana dan tidak membutuhkan
waktu yang lama, metode RAD adalah metode yang diperuntukkan untuk
jangka pendek sesuai dengan aplikasi yang dikembangkan. Berikut
adalah penjelasan masing-masing fase RAD dalam penelitian ini.
3.2.1. Fase Perencanaan Syarat-syarat
1. Analisa Kebutuhan Masalah
Pada Analisis kebutuhan masalah, peneliti
melakukan analisa pada sistem yang berjalan kemudian
53
mencari identifikasi masalah yang terdapat pada sistem
informasi yang sudah berjalan baru kemudian peneliti
memberikan solusi pemecahan masalah pada sistem
informasi di SMP PERWIRA Jakarta.
Dari hasil observasi dan wawancara yang dilakukan
pada tahap sebelumnya, maka peneliti dapat menganalisis
bahwa dengan kapasitas siswa yang banyak, maka
pemberian informasi kepada siswa dan orang tua siswa
pada SMP PERWIRA Jakarta dengan menggunakan
metode manual seperti rapor, selebaran, bukti pembayaran
belum cukup mampu untuk memenuhi kebutuhan akan
akses informasi akademik, karena file – file yang berupa
kertas akan mudah rusak hilang ataupun tercecer, hal ini
dapat menyebabkan proses pemberian informasi menjadi
terhambat sehingga dapat menganggu jalannya kegiatan
belajar – mengajar. Oleh karena itu, diperlukan sebuah
aplikasi sistem informasi akademik yang dapat
memudahkan akses terhadap informasi akademik pada
SMP PERWIRA Jakarta.
2. Tujuan
Berdasarkan pada analisis kebutuhan di atas, maka
tujuan penelitian ini adalah untuk membuat suatu aplikasi
sistem informasi akademik berbasis WAP yang dapat
54
memenuhi kebutuhan akses infomasi yang mudah
digunakan baik oleh orang tua atau wali siswa maupun
sekolah.
3. Syarat-syarat
Untuk mewujudkan tujuan tersebut dibutuhkan
beberapa syarat minimum dalam pembuatan aplikasi
sistem informasi akademik berbasi WAP ini yaitu 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. Untuk
pengembangan aplikasi ini dibutuhkan minimum
Web Server Apache 2.2.8
b. Bahasa Pemrograman
Bahasa pemrograman dibutuhkan untuk dapat
membangun sebuah aplikasi, agar komputer dapat
melakukan berbagai operasi dan fungsi sesuai
dengan keinginan user. Untuk itu dibutuhkan suatu
bahasa pemrograman yang dapat digunakan untuk
membuat aplikasi client server. Bahasa
pemrograman minimum yang dibutuhkan dalam
55
pengembangan aplikasi ini adalah PHP 5.2.5., WML
1.0. .
c. Database
Perancangan tabel-tabel akan digunakan untuk
pelengkap program seperti proses login serta proses
penamaan dan penyimpanan file informasi
akademik. Database yang dibutuhkan adalah
database MySQL 5.0.51.
Spesifikasi perangkat lunak dan perangkat keras
minimum yang diperlukan dalam pembuatan aplikasi ini
adalah sebagai berikut :
a. Perangkat Lunak :
1. Paket web server
(Apache 2.2.8., PHP 5.2.5., WML 1.0.,
MySQL 5.0.51)
2. Macromedia Dreamweaver 8.
3. Mozilla Firefox 3.0.
4. Microsoft Windows 2000.
5. WAP 2.0.
b. Perangkat Keras :
1. Personal Komputer
a) Processor : Intel Pentium IV.
b) RAM : Memory 256 MB
56
c) Harddisk : 80 GB
d) VGA : 128 MB
2. Monitor dengan resolusi 800 x 600 pixel.
3. Ponsel Samsung G 150 dengan spesifikasi
sebagai berikut:
Fitur Umum Stereo FM radio with RDS Java MIDP 2.0
MP3/WMA/AAC player
H.263/H.264/MPEG4 player
Organizer
50 MB internal memory
Slot memory card untuk tambahan user memory dan
aplikasi
Mendukung aplikasi Java ™ MIDP 2.0
Sinkronisasi data dengan PC via PC Suite
Beroperasi pada jaringan GSM dengan frekuensi
E900/1800/1900
Ukuran Dimensi : 104 x 53 x 11.9 mm
Layar dan
Antarmuka Warna : TFT, 262K colors
Ukuran layar : 240 x 400 pixels, 3.0 inches
Integrated
VGA Digital
Camera
Kamera : 3.15 MP, 2048x1536 pixels
Video Recorder : QVGA@15fps
Koneksi Bluetooth wireless technology
Sinkronisasi local untuk alamat kontak dan kalender
menggunakan PC Suite
Baterai Standard battery, Li-Ion 1000 mAh
4. Data primer akademik sekolah tahun ajaran
2010/2011 di SMP PERWIRA Jakarta.
a) Data Absen Siswa
b) Data Guru
c) Data Mata Pelajaran
d) Data Nilai
e) Data Gambaran Umum Sekolah.
57
3.2.2. Fase Perancangan
Pada tahap ini dilakukan beberapa tahapan antara lain :
1. Perancangan proses-proses yang akan terjadi didalam
sistem informasi akademik pada SMP Perwira
menggunakan metode terstruktur yakni dengan membuat
Data Flow Diagram, Entity Relationship Diagram,
Flowchart, dan Normalisasi.
2. Perancangan Antar Muka
Antar muka pemakai memberikan fasilitas komunikasi
antar pemakai dan sistem, memberikan berbagai fasilitas
informasi dan berbagai keterangan yang bertujuan untuk
membantu mengarahkan alur penelusuran masalah sampai
ditemukan solusi. Merencanakan tampilan untuk tata letak
sesuai dengan fungsi aplikasi sistem informasi akademik
berbasis WAP.
3.2.3. Fase Konstruksi
Pada tahap ini dilakukan proses pengkodingan terhadap
rancangan-rancangan yang telah didefinisikan. Pembuatan
program yang dilakukan menggunakan bahasa pemrograman
PHP 5.2.5. dan WML 1.0. yang dibuat dengan menggunakan
Macromedia Dreamweaver 8.0.
58
3.2.4. Fase Pelaksanaan
Pada tahapan ini dilakukan pengujian terhadap aplikasi
sistem informasi akademik berbasis WAP pada SMP PERWIRA
yang telah dibuat, pada pengujian terhadap aplikasi ini, penulis
menggunakan pengujian black-box pada sisi server dan user
yaitu suatu pengujian yang berfokus pada persyaratan fungsional
perangkat lunak (Pressman, 2002: 551). Sebagai akhir dari fase
pelaksanaan, diminta tanggapan user tentang aplikasi ini untuk
bahan evaluasi.
Pada Gambar 3.1 di bawah ini digambarkan kerangka
berpikir dalam pembuatan aplikasi sistem informasi akademik
berbasis WAP pada SMP PERWIRA Jakarta, dengan
menggunakan metode RAD sebagai alat pengembangan sistem.
59
Gambar 3.1 Kerangka Berpikir Pembuatan Aplikasi Sistem Informasi Akademik Berbasis WAP pada SMP
PERWIRA Jakarta
60
BAB IV
PEMBAHASAN DAN IMPLEMENTASI
4.1. Metodologi Pengumpulan Data
Penyusunan skripsi ini dilakukan dengan menggunakan beberapa
metode yang dapat mendukung penulisan, baik dalam pengumpulan data
maupun informasi yang diperlukan, untuk mendapatkan kebenaran
materi uraian pembahasan.
4.1.1. Observasi
Pada metode Observasi, peneliti melakukan pengamatan
langsung di lapangan untuk mengetahui secara langsung
keadaan objek penelitian yang sebenarnya. Hal ini bertujuan
untuk memperoleh penjelasan mengenai data-data dan informasi
yang dibutuhkan dalam penelitian pada sekolah SMP
PERWIRA Jakarta.
1. Gambaran Umum SMP PERWIRA Jakarta
a. Sejarah singkat SMP PERWIRA Jakarta
SMP PERWIRA Jakarta didirikan pada tahun
1986, dimana yayasan pendidikan Putra Indonesia
membawahi dua sekolah yaitu :
61
1) SMP PERWIRA
2) SMK PERWIRA
Diantara sekolah tersebut yang pertama kali
berdiri adalah SMP PERWIRA Jakarta yang berada
dalam satu lokasi yaitu Jl. H. Dilun No. 4 Ulujami
Pesanggrahan Jakarta Selatan, dengan tetap
berpedomankan pada tujuan dan arah yang sama
yang hendak dicapai SMP PERWIRA Jakarta. Salah
satu kebijaksanaan SMP PERWIRA Jakarta yaitu
mengharapkan semua unsur atau fungsi
persekolahan di SMP PERWIRA bersama – sama
menciptakan derap langkah dalam meningkatkan
disiplin pengabdian dan kemampuan profesinya baik
perorangan maupun sekolah serta meningkatkan
mekanisme kerja dalam rangka peningkatan mutu
pendidikan untuk memenuhi harapantersebut diatas,
dengan didorongkan semangat juang kesadaran dan
tanggung jawab terhadap misi pendidikan.
(Sumber : SMP PERWIRA JAKARTA)
b. Visi SMP PERWIRA Jakarta
Visi SMP PERWIRA Jakarta yaitu :
1) Terwujudnya siswa siswi yang memiliki
manfaat bagi masyarakat luas
62
2) Menjadikan sekolah yang terbaik dengan mutu
lulusan yang dapat dibanggakan, sehingga
menghasilkan sumber daya manusia (SDM)
yang berkualitas dan berbudi pekerti luhur.
(Sumber : SMP PERWIRA JAKARTA)
c. Misi SMP PERWIRA Jakarta
Misi SMP PERWIRA Jakarta yaitu :
1) Mempersiapkan peserta didik untuk
melanjutkan sekolah ke jenjang pendidikan
yang lebih tinggi berbekal kemampuan dasar
intelektual sehingga dapat membanggakan diri
di masyarakat.
2) Memberdayakan sumber daya yang ada
seoptimal mungkin untuk membentuk manusia
yang cerdas, terampil dan takwa.
3) Meningkatkan disiplin warga sekolah,
mewujudkan lingkungan yang bersih, indah,
nyaman.
4) Membentuk siswa siswi yang memiliki
manfaat bagi masyarakat luas.
5) Memberikan teladan bagi masyarakat luas,
khususnya lingkungan sekitar.
(Sumber : SMP PERWIRA JAKARTA).
63
d. Struktur Organisasi SMP PERWIRA Jakarta
Struktur organisasi merupakan suatu gambar
yang menggambarkan tipe organisasi sekolah dan
jenis kewenangan, bidang dan hubungan pekerjaan,
garis perintah dan tanggung jawab, rentang kendali,
dan sistem pimpinan organisasi. Struktur organisasi
dibuat untuk meningkatkan efisiensi kerja dan
efektifitas kerja dalam manajemen sekolah dan
ditetapkan oleh Kepala yayasan sebagai kerangka
dalam melakukan kegiatan sekolah, sehingga
tercipta penempatan pegawai atau karyawan sesuai
dengan kemampuannya. Gambar 4.1 berikut
menunjukkan struktur organisasi SMP PERWIRA
Jakarta.
64
Gambar 4.1. Struktur Organisasi SMP PERWIRA Jakarta
(Sumber : SMP PERWIRA JAKARTA)
e. Sarana & Prasarana SMP PERWIRA Jakarta
Sarana dan prasarana untuk menunjang proses
pendidikan di SMP PERWIRA Jakarta antara lain :
1) Laboratorium Komputer.
2) Laboratorium IPA.
3) Lapangan Olahraga.
4) Perpustakaan.
5) Ruang Musik.
6) Ruang Kepala Sekolah.
7) Ruang Komite Sekolah.
8) Ruang Guru.
65
9) Ruang BP / BK.
10) Ruang Tata Usaha.
11) Ruang OSIS.
12) Ruang PMR.
13) Masjid.
14) Taman.
15) Koperasi.
16) Kantin.
(Sumber : SMP PERWIRA JAKARTA)
f. Ekstrakulikuler SMP PERWIRA Jakarta
Ekstrakurikuler yang ada di SMP PERWIRA
Jakarta antara lain :
1) Paskibra.
2) Pramuka.
3) Pencak Silat.
4) Rohis.
5) Band.
6) PMR.
7) Vocal Grup.
(Sumber : SMP PERWIRA JAKARTA)
66
2. Hasil Observasi
Observasi yang dilaksanakan selama bulan Januari
2010 di SMP Perwira Jakarta memberikan kesimpulan
bahwa dengan kapasitas murid yang banyak, maka
pemberian informasi kepada murid dan orang tua murid
dengan menggunakan metode manual seperti rapor,
selebaran, bukti pembayaran belum cukup mampu
memenuhi kebutuhan akan akses informasi, karena file –
file yang berupa kertas akan mudah rusak hilang ataupun
tercecer, hal ini dapat menyebabkan proses pemberian
informasi menjadi terhambat sehingga dapat menganggu
jalannya kegiatan belajar – mengajar, selain itu dibutuhkan
sebuah teknologi masa kini terbaru yang dapat membuat
SMP Perwira dapat bersaing dengan sekolah – sekolah
lain yang telah menggunakan teknologi masa kini. Oleh
karena itu diperlukan suatu aplikasi sistem informasi
akademik dengan sebuah teknologi masa kini yang dapat
memberikan kemudahan akses terhadap informasi
akademik.
4.1.2. Kuesioner
Disini peneliti melakukan pengumpulan data melalui
menyebarkan angket kepada 100 orang tua atau wali siswa SMP
PERWIRA Jakarta, dilakukan pada tanggal 14 Februari sampai
67
20 Februari 2010. Lalu menyimpulkan hasil dari angket yang
kemudian datanya dapat dijadikan acuan untuk pembuatan
aplikasi ini. Metode ini bertujuan untuk mengetahui apakah
perlu dibuatnya sebuah aplikasi yang dapat mempermudah
penyebaran informasi pada sekolah SMP PERWIRA Jakarta.
Hasil kuesioner secara lengkap dapat dilihat pada lampiran V.
4.1.3. Wawancara
Disini dilakukan tanya jawab oleh peneliti sambil bertatap
muka antara pewawancara dengan narasumber yang telah
diberikan kewenangan oleh kepala sekolah untuk mewakili.
Wawancara telah dilakukan pada tanggal 20 Januari 2010
dengan narasumber Bapak Khaeroji (Koordinator Laboratorium
Komputer SMP PERWIRA Jakarta) di Laboratorium komputer
Terpadu SMP Perwira Jakarta. Hasil wawancara dapat dilihat
pada lampiran IV.
4.1.4. Studi Pustaka
Studi pustaka digunakan dengan membaca dan
mempelajari referensi yang ada, e-book, serta mencari referensi
tambahan dari internet. Buku utama yang digunakan peneliti
yaitu : Pemrograman WAP dengan menggunakan WML
(Simarmata, 2006), Aplikasi WEB dengan PHP dan MySQL
(Kasiman, 2006), Pengembangan Pemrograman WAP dengan
68
WML dan PHP (Nugroho, 2007), Akses Internet via Ponsel
(Fiati, 2005) Dan buku-buku selengkapnya yang digunakan
dapat dilihat pada daftar pustaka.
4.1.5. Studi Literatur
Studi literatur ini dilakukan dengan melihat penelitian dan
skripsi sejenis yang sudah ada. Merujuk pada penelitian yang
telah dilakukan oleh (Dawimah, Apllikasi pelayanan Informasi
Akademik Menggunakan Protokol WAP, 2010), dan (Udin
Suchaini, APLIKASI WAP PORTAL DALAM PEMBUATAN
SISTEM INFORMASI AKADEMIK DENGAN WML, PHP DAN
MYSQL, 2007), kelebihan yang akan ditambahkan pada aplikasi
yang akan dibuat antara lain yaitu : menambahkan fitur untuk
dapat melihat daftar pembayaran siswa, penambahan fitur untuk
dapat melihat nilai rapor keseluruhan, penambahan fitur untuk
ubah password, desain tampilan yang dapat memudahkan Staf
TU dalam mengubah data, penyaringan karakter pada saat input
data oleh administrator sehingga data yang dimasukan sesuai
dengan kebutuhan.
69
4.2. Metodologi Pengembangan Sistem
4.2.1. Fase Perencanaan Syarat – Syarat
Pada tahap ini dilakukan pengidentifikasian tujuan-tujuan
aplikasi sistem informasi akademik berbasis WAP serta untuk
mengidentifikasi syarat-syarat informasi yang ditimbulkan dari
tujuan tersebut.
1. Analisa Kebutuhan Masalah
Pada Analisa kebutuhan masalah, peneliti
melakukan analisa pada sistem yang berjalan kemudian
mencari identifikasi masalah dari kelemahan – kelamahan
yang terdapat pada sistem informasi yang sudah berjalan
pada SMP PERWIRA Jakarta, baru kemudian peneliti
memberikan solusi pemecahan masalah pada sistem
informasi di SMP PERWIRA Jakarta, lalu mengusulkan
sebuah sistem informasi akademik berbasis WAP yang
dapat membantu permasalahan-permasalahan yang etlah di
analisa.
a. Analisa Sistem yang Sedang Berjalan
Sistem yang sedang berjalan di SMP
PERWIRA Jakarta dilakukan sebagai berikut :
1) Informasi tentang profil sekolah disebarkan
melalui pembagian selebaran atau brosur
70
kepada masyarakat umum.
2) Selebaran atau undangan rapat diberikan pihak
sekolah kepada orang tua atau wali siswa
dengan menitipkannya kepada siswa yang
bersangkutan.
3) Informasi tentang jadwal pelajaran yang telah
ditetapkan oleh Tata usaha dan dibuat oleh staf
pada selembar kertas yang ditempel pada
setiap kelas, atau bisa juga diberikan langsung
kepada wali kelas yang bersangkutan, setelah
itu barulah para siswa dapat melihat jadwal
mata pelajaran, informasi ini diberikan pada
saat awal masuk tahun ajaran baru.
4) Informasi tentang ruangan kelas disampaikan
pada awal masuk tahun ajaran baru, dengan
menggunakan selembar kertas yang ditempel
pada setiap kelas, berisi nama – nama para
siswa yang menempati kelas tersebut.
5) Informasi tentang nilai ujian seperti nilai uts,
uas dan rapor setiap pelajaran diberikan oleh
masing – masing guru pengajar kepada setiap
wali kelas, untuk uts diberikan setelah para
siswa selesai melaksanakan uts, nilai ini
71
langsung diberikan oleh guru pengajar
langsung yang datanya nanti akan diproses
sehingga menghasilkan nilai rapor, sedangkan
informasi nilai uas diberikan setelah
melaksanakan ujian akhir semester, nilai rapor
dapat dilihat oleh siswa setelah rapor diambil
oleh orang tua atau wali siswa dari wali kelas.
6) Orang tua atau wali siswa harus datang ke
sekolah untuk dapat melihat nilai rapor atau
untuk menghadiri rapat untuk membicarakan
mengenai hal – hal yang berhubungan dengan
kegiatan belajar – mengajar.
7) Informasi tentang pembayaran diberikan
melalui selembar kertas yang berisi bulan dan
keterangan pembayaran apakah murid tersebut
telah melakukan pembayaran atau belum,
proses pembayaran dilakukan di tatausaha
kemudian para staf di tata usaha akan
menandatangani kertas bayaran lalu
dikembalikan lagi kepada murid yang
bersangkutan.
Bagan alir sistem informasi yang sedang
berjalan digambarkan pada Gambar 4.2. dibawah ini.
72
Gambar 4.2. Bagan alir sistem akses informasi yang sedang berjalan
b. Kelemahan Sistem yang Sedang Berjalan
Sebelum menggambarkan sistem informasi
yang diinginkan diperlukan analisa terhadap masalah
73
yang diharapkan dapat memenuhi kebutuhan
informasi sesuai dengan yang diharapkan. Setelah
menganalisa didapatkan kelemahan dari sistem
informasi yang sedang berjalan tersebut, kelemahan
tersebut antara lain :
1) Pengelolaan sistem informasi akademik
bersifat manual, seperti brosur, undangan,
lembaran bukti pembayaran, buku rapor rentan
terhadap kerusakan dan kehilangan dokumen –
dokumen penting.
2) Informasi akademik hanya dapat dilihat dari
bagian akademik, papan pengumuman dan
guru yang bersedia menyampaikan.
3) Orang tua siswa harus datang ke sekolah untuk
pembagian rapor jika orang tua tidak datang
maka rapor tidak dapat diambil.
4) Pembayaran dilakukan oleh siswa dan bukti
pembayaran dipegang oleh siswa sehingga
memungkinkan terjadinya penyelewengan
oleh siswa.
74
c. Kelebihan Sistem yang Sedang Berjalan
1) Memiliki struktur dan prosedural yang jelas
dalam perancangan sistem informasi
akademik.
2) Setiap langkah dalam sistem informasi
pendidikan disesuaikan dengan prosedur yang
ada sehingga terdapat kontrol dalam sistem.
3) Informasi yang diberikan pihak sekolah cukup
jelas.
d. Permasalahan Sistem yang Sedang Berjalan
Dari kelemahan – kelemahan sistem informasi
yang sedang berjalan maka timbulah permasalahan –
permasalahan yang dihadapi oleh SMP PERWIRA
Jakarta, permasalahan tersebut antara lain :
1) Sistem informasi akademik yang digunakan
masih manual, yaitu berupa lembaran rapor,
buku bayaran, selebaran serta menggunakan
kertas-kertas yang banyak jumlahnya untuk
arsip dokumen, maka akan mengalami
kesulitan dalam mencarinya dan juga
membutuhkan waktu yang lama untuk mencari
data yang dibutuhkan.
75
2) Untuk melayani dan menyampaikan informasi
akademik dengan jumlah siswa yang banyak
diperlukan antrian yang panjang dan memakan
banyak waktu.
3) Untuk dapat melihat nilai rapor orang tua
siswa harus datang sendiri kesekolah, jika
tidak maka rapor tidak akan diberikan oleh
pihak sekolah. Hal ini tentu saja dapat menyita
waktu orang tua atau wali siswa dan siswa itu
sendiri.
4) Pernah juga beberapa kali terjadi
penyelewengan dalam pembayaran SPP, orang
tua siswa merasa sudah melunasi pembayaran
namun pada ketika akhir semester barulah
orang tua diberitahu oleh pihak sekolah jika
ternyata siswa tersebut belum melunasi
pembayaran SPP.
e. Solusi Pemecahan Masalah
Dari permasalahan yang ada peneliti
mengusulkan solusi untuk mengatasi permasalahan
pada sistem yang berjalan pada SMP PERWIRA
Jakarta, berikut adalah tabel permasalahan dan solusi
yang diusulkan oleh peneliti.
76
Tabel 4.1. Permasalahan dan solusi yang diusulkan
No. Permasalahan Solusi Permasalahan 1 Sistem informasi akademik yang
digunakan masih manual, yaitu berupa lembaran rapor, buku bayaran, selebaran serta menggunakan kertas – kertas yang banyak jumlahnya untuk arsip dokumen, maka akan mengalami kesulitan dalam mencarinya dan juga membutuhkan waktu yang lama untuk mencari data yang dibutuhkan.
Membuat sebuah aplikasi sistem informasi akademik berbasis WAP yang dapat mendukung akses terhadap informasi akademik secara cepat dan akurat, dapat dilihat kapan pun dan dimanapun, sehingga dapat memenuhi kebutuhan siswa, guru dan wali murid dalam mengakses informasi akademik.
2 Untuk melayani dan menyampaikan informasi akademik dengan jumlah siswa yang banyak diperlukan antrian yang panjang dan memakan banyak waktu.
Pada SMP PERWIRA Jakarta membutuhkan sebuah aplikasi berbasis WAP sehingga dapat memudahkan penyampaian informasi tanpa harus mengantri.
3 Untuk melihat nilai rapor orang tua siswa harus datang sendiri kesekolah, jika tidak maka rapor tidak akan diberikan oleh pihak sekolah. Hal ini tentu saja dapat menyita waktu orang tua atau wali siswa dan siswa itu sendiri
Membuat sebuah aplikasi sistem informasi akademik berbasis WAP yang dapat mendukung akses terhadap informasi rapor yang bisa diakses dimanapun yang dapat memudahkan orangtua wali murid untuk mendapatkan informasi mengenai hasil belajar anaknya
4 Pernah juga beberapa kali terjadi penyelewengan dalam pembayaran SPP, orang tua siswa merasa sudah melunasi pembayaran namun pada ketika akhir semester barulah orang tua diberitahu oleh pihak sekolah kalau ternyata siswa tersebut belum melunasi pembayaran SPP.
Membuat sebuah aplikasi sistem informasi akademik yang dapat membantu orang tua atau wali siswa untuk mengetahui apakah sudah melakukan pembayaran SPP atau belum, sehingga tidak terjadi lagi hal-hal yang tidak diinginkan
Setelah mendapatkan solusi pemecahan
masalah maka peneliti mencoba untuk membuat
sebuah aplikasi guna memudahkan proses
penyampaian informasi akademik SMP PERWIRA
Jakarta dengan berbasis WAP.
77
f. Analisa Sistem Yang Diusulkan
Dengan menggunakan aplikasi sistem
informasi akademik berbasis WAP, orang tua atau
wali siswa dapat langsung mengakses informasi –
informasi akademik dengan mudah, orang tua tidak
harus selalu datang kesekolah apabila membutuhkan
informasi akademik yang dibutuhkan, sehingga
memudahkan proses penyampaian informasi
akademik.
Berikut pada gambar 4.3. adalah bagan alir
dari sistem yang diusulkan.
78
Gambar 4.3. Bagan alir sistem akses informasi yang diusulkan
2. Tujuan
Peneliti bertujuan untuk membuat suatu aplikasi
sistem informasi akademik berbasis WAP yang dapat
diakses kapanpun dimanapun dengan mudah sehingga
79
proses penyampaian informasi akademik SMP PERWIRA
Jakarta kepada siswa dan orang tua atau wali murid
menjadi mudah.
3. Syarat-syarat
Untuk mewujudkan tujuan tersebut dibutuhkan
beberapa syarat minimum dalam pembuatan aplikasi
sistem informasi akademik berbasis WAP ini yaitu
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. Untuk pengembangan aplikasi ini dibutuhkan
minimum Web Server Apache 2.2.8
b. Bahasa Pemrograman
Bahasa pemrograman dibutuhkan untuk dapat
membangun sebuah aplikasi, agar komputer dapat
melakukan berbagai operasi dan fungsi sesuai
dengan keinginan user. Untuk itu dibutuhkan suatu
bahasa pemrograman yang dapat digunakan untuk
membuat aplikasi client server. Bahasa
pemrograman minimum yang dibutuhkan dalam
80
pengembangan aplikasi ini adalah PHP 5.2.5., WML
1.0. .
c. Database
Perancangan tabel-tabel akan digunakan untuk
pelengkap program seperti proses login serta proses
penamaan dan penyimpanan file informasi
akademik. Database yang dibutuhkan adalah
database MySQL 5.0.51.
Spesifikasi perangkat lunak dan perangkat keras
minimum yang diperlukan dalam pembuatan aplikasi ini
adalah sebagai berikut :
a. Perangkat Lunak :
1) Paket web server
(Apache 2.2.8., PHP 5.2.5., WML 1.0.,
MySQL 5.0.51)
2) Macromedia Dreamweaver 8.
3) Mozilla Firefox 3.0.
4) Microsoft Windows 2000.
5) WAP 2.0.
b. Perangkat Keras :
1) Personal Computer
1) Processor : Intel Pentium IV.
2) RAM : Memory 256 MB
81
3) Harddisk : 80 GB
4) VGA : 128 MB
2) Monitor dengan resolusi 800 x 600 pixel.
3) Ponsel Samsung G150 dengan spesifikasi
sebagai berikut:
Fitur Umum Stereo FM radio with RDS Java MIDP 2.0
MP3/WMA/AAC player
H.263/H.264/MPEG4 player
Organizer
50 MB internal memory
Slot memory card untuk tambahan user memory dan aplikasi
Mendukung aplikasi Java ™ MIDP 2.0
Sinkronisasi data dengan PC via PC Suite
Beroperasi pada jaringan GSM dengan frekuensi
E900/1800/1900
Ukuran Dimensi : 104 x 53 x 11.9 mm
Layar dan
Antarmuka Warna : TFT, 262K colors
Ukuran layar : 240 x 400 pixels, 3.0 inches
Integrated VGA
Digital Camera Kamera : 3.15 MP, 2048x1536 pixels
Video Recorder : QVGA@15fps
Koneksi Bluetooth wireless technology
Sinkronisasi local untuk alamat kontak dan kalender
menggunakan PC Suite
Baterai Standard battery, Li-Ion 1000 mAh
4) Data primer akademik sekolah tahun ajaran
2010/2011 di SMP PERWIRA Jakarta.
a) Data Absen Siswa
b) Data Guru
c) Data Mata Pelajaran
d) Data Nilai
e) Data Gambaran Umum Sekolah
82
4.2.2. Fase Perancangan (Workshop Design)
Pada tahap ini dilakukan perancangan, evaluasi dan
memperbaiki sistem sesuai dengan kebutuhan agar sistem yang
sedang dibuat dapat dimanfaatkan secara optimal.
1. Perancangan Proses
Pada perancangan proses peneliti menggunakan
DFD (Data Flow Diagram) sebagai alat bantu untuk
mengembangkan sistem.
a. Diagram konteks sistem yang diusulkan
Gambar 4.4. Diagram konteks sistem yang diusulkan
83
Dalam konteks diagram pada gambar 4.4
menggambarkan hubungan sistem dengan
lingkungannya yang terdiri dari Staf , Wali kelas,
Guru, Siswa, orang tua atau wali siswa dapat masuk
dengan nis yang dimiliki oleh siswa yang
bersangkutan.
b. Diagram zero sistem yang diusulkan
84
Gambar 4.5. Diagram zero sistem yang diusulkan
Terdapat 6 proses pada diagram zero diatas,
proses pertama diberi nama login. Proses
85
menunjukan setiap user harus melakukan login
terlebih dahulu untuk dapat masuk ke dalam sistem,
untuk siswa memasukan nis dan password, untuk
guru dan wali kelas harus memasukan nuptk dan
password, dan untuk staf harus memasukan user_id
dan password.
Pada proses kedua diberi nama olah nilai,
hanya guru yang berhak mengakses olah nilai, disini
guru yang berhak menginput nilai dan mendapatkan
output daftar nilai tiap siswa.
Pada proses ketiga diberi nama lihat nilai, pada
proses ini siswa dan guru dapat melihat nilai dari
database nilai.
Pada proses keempat diberi nama olah rapor,
hanya wali kelas yang berhak mengakses olah rapor,
disini wali kelas berhak menginput rapor dan
mendapatkan output nilai dari database nilai dan
rapor dari database rapor.
Pada proses kelima diberi nama lihat rapor,
pada proses ini siswa dan wali kelas dapat melihat
daftar rapor dari database rapor.
Pada proses keenam diberi nama olah olah
data, hanya staf yang berhak mengakses olah data,
86
disini staf dapat menginput data – data primer
sekolah.
Pada proses ketujuh diberi nama lihat data,
pada proses ini siswa mendapatkan output berupa
jadwal pelajaran, jadwal uts, jadwal uas, daftar
bayaran dan daftar berita.
c. Diagram level satu sistem yang diusulkan
1) Data Flow Diagram Level 1 Proses 1.0
(login)
Gambar 4.6. DFD level satu proses 1.0 (login)
Diagram pada gambar 4.6. diatas
menunjukan proses login dimulai dengan
87
melakukan input yang berbeda beda pada tiap
entitas, untuk Staf menginput username dan
password, untuk wali kelas dan guru
menginput nuptk dan password untuk siswa
menginput nis dan password baru kemudian
sistem akan mengecek ke database apakah
data yang telah dimasukan tiap user benar, jika
benar kemudian dilakukan verifikasi user dan
setiap user akan mendapatkan hak akses untuk
masuk ke dalam sistem.
2) Data Flow Diagram Level 1 Proses 2.0 (olah
nilai)
Gambar 4.7. DFD level satu proses 2.0 (olah nilai)
88
Diagram pada gambar 4.7. diatas
menunjukan proses olah nilai, dimana hak
akses olah nilai hanya dimiliki oleh guru,
terdapat 3 piihan apakah guru akan
menambah, menubah atau menghapus nilai.
Disini guru menginput nilai tiap siswa ke
dalam database nilai dan hasil outputnya
adalah nilai tiap siswa.
3) Data Flow Diagram Level 1 Proses 4.0 (olah
rapor)
Gambar 4.8. DFD level satu proses 4.0 (olah rapor)
Diagram pada gambar 4.8. diatas
menunjukan proses olah rapor, dimana hak
89
akses hanya dimiliki oleh wali kelas, terdapat
3 pilihan apakah wali kelas akan menambah
merubah, atau menghapus data rapor. Disini
wali kelas akan menginput data rapor ke dalam
database rapor yang akan menghasilkan
output data rapor.
4) Data Flow Diagram Level 1 Proses 6.0 (olah
data)
90
Gambar 4.9. DFD level satu proses 6.0 (olah data)
Diagram pada gambar 4.9. diatas
menunjukan proses olah data, dimana hak
akses hanya dimiliki oleh staf, terdapat 3
pilihan apakah staf akan menambah, merubah,
atau menghapus data – data primer. Disini staf
91
melakukan input data – data primer ke dalam
tiap – tiap database. Data primer yang
dimasukan yaitu data siswa, data guru, data
wali kelas, data mata pelajaran, data kelas,
data jadwal pelajaran, data jadwal uts, data
jadwal uas, data bayaran dan data berita.
2. Perancangan Flowchart program
a. Login
Gambar 4.10. Flowchart Menu login
92
b. Olah Nilai
Gambar 4.11. Flowchart Menu Utama Olah Nilai
93
c. Olah Rapor
Gambar 4.12. Flowchart Menu Utama Olah Rapor
94
d. Olah Data
Gambar 4.13. Flowchart Menu Utama Olah Data
95
e. Lihat Nilai, Rapor, Data
Gambar 4.14. Flowchart Menu Utama Lihat Nilai, Rapor,
Data.
3. Perancangan Basis Data
Pada pengembangan aplikasi sistem informasi
akademik ini ini digunakan database sebagai pelengkap
program seperti proses login dan proses penyimpanan data
96
– data . Database yang digunakan adalah database
MySQL.
a. Struktur Entity Relationship Diagram (ERD)
Gambar 4.15. Struktur Entity Relationship Diagram
97
b. ERD ke LRS
Gambar 4.16. LRS dari ERD yang diusulkan
c. Normalisasi
1) Bentuk Awal atau Bentuk Tidak Normal (Un
Normalized Form/UNF)
Bentuk ini merupakan data yang akan
disimpan, tidak ada aturan untuk mengikuti
format – format tertentu, data yang belum
normal ini boleh ada data yang tidak lengkap
atau bahkan ada data yang terduplikasi.
98
No NIS nama jenis_kelamin tempat_lahir
1 4094 Agnestasya Resta P Jakarta
2 4096 Agung Hartanto L Jakarta
tanggal_lahir bapak ibu alamat password
22/04/1997 Sutisna Reni Jl. KH Wahid H ****
24/11/1993 Suramin - Jl.Pabuaran ****
kd_kls nama_kelas nuptk_wali_kelas nama jml_siswa
72 7 - 2 2858723625200002 Sudarsono 39
72 7 - 2 2858723625200002 sudarsono 39
password semester jumlah_sakit jumlah_izin jumlah_alpa
************** 1 1 0 0
************** 1 0 0 0
kenaikan catatan_ortu nuptk_guru nama jenis_kelamin
naik giat belajar 0356740643200013 Nurzen Effendi L
naik giat belajar 1153740643300023 Debora Dameria P
tempat_lahir tanggal_lahir alamat telepon password
bogor 10/09/1960 Jl. Wr. Supratman 2137689021 **********
jakarta 21/06/1962 JL. Bambu 83877610945 **********
kd_mp nama_mp Nilai_uts nilai_uas nilai_rapor
ipa1 Ipa 1 7 7 7
mat1 Matematika 1 8 7 8
hari_belajar hari_uts hari_uas jam_belajar jam_uts
senin kamis rabu 07:00-08:30 07:30-09:00
selasa senin jum'at 08:30-10:00 09:30-12:00
jam_uas tanggal_uts tanggal_uas kd_smt
07:30-09:00 17/03/2011 19/06/2011 1
09:30-12:00 18/03/2011 20/06/2011 2
2) Bentuk Normal Pertama (First Normal Form
atau 1NF)
Pada tahap ini dilakukan penghilangan
beberapa grup elemen yang berulang agar
menjadi satu harga tunggal yang berinteraksi
diantara setiap baris pada suatu tabel, dan
setiap atribut harus mempunyai nilai data yang
99
atomic. Atom adalah zat terkecil yang masih
mempunyai sifat induknya, bila dipecah lagi
maka ia tidak memiliki sifat induknya.
No NIS nama jenis_kelamin tempat_lahir
1 4094 Agnestasya Resta P Jakarta
2 4096 Agung Hartanto L Jakarta
tanggal_lahir bapak ibu alamat password
22/04/1997 Sutisna Reni Jl. KH Wahid H ****
24/11/1993 Suramin Rani Jl.Pabuaran ****
kd_kls nama_kelas nuptk_wali_kelas nama jml_siswa
72 7 - 2 2858723625200002 Sudarsono 39
72 7 - 2 2858723625200002 sudarsono 39
password semester jumlah_sakit jumlah_izin jumlah_alpa
************** 1 1 0 0
************** 1 0 0 0
kenaikan catatan_ortu nuptk_guru nama jenis_kelamin
naik giat belajar 0356740643200013 Nurzen Effendi L
naik giat belajar 1153740643300023 Debora Dameria P
tempat_lahir tanggal_lahir alamat telepon password
bogor 10/09/1960 Jl. Wr. Supratman 2137689021 **********
jakarta 21/06/1962 JL. Bambu 83877610945 **********
kd_mp nama_mp Nilai_uts nilai_uas nilai_rapor
ipa1 Ipa 1 7 7 7
mat1 Matematika 1 8 7 8
hari_belajar hari_uts hari_uas jam_belajar jam_uts
senin kamis rabu 07:00-08:30 07:30-09:00
selasa senin jum'at 08:30-10:00 09:30-12:00
jam_uas tanggal_uts tanggal_uas kd_smt
07:30-09:00 17/03/2011 19/06/2011 1
09:30-12:00 18/03/2011 20/06/2011 2
3) Bentuk Normal Kedua (Second Normal Form
atau 2NF)
Syarat dari bentuk normal kedua adalah
bentuk data telah memenuhi kriteria, bentuk
100
normal kesatu, dan atribut bukan kunci (non-
key) haruslah memiliki ketergantungan
sepenuhnya pada kunci utama atau primary
key.
Gambar 4.17. Relasi tabel dalam bentuk 2 NF
101
4) Bentuk Normal Ketiga (Third Normal Form
atau 3NF)
Pada tahap ini, atribut bukan kunci
haruslah memiliki ketergantungan terhadap
atribut lainnya. Dengan kata lain, semua
atribut bukan kunci haruslah hanya memiliki
ketergantungan terhadap primary key pada
relasinya saja
Gambar 4.18. Relasi tabel dalam bentuk 3 NF
102
5) Bentuk Boyce Codd Normal Form (BCNF)
Boyce Codd Normal Form didasari pada
beberapa ketergantungan fungsional dalam
suatu relasi yang melibatkan seluruh candidate
key didalam relasi tersebut. Jika suatu relasi
hanya memiliki satu candidate key, maka
hasil uji normalisasi sampai bentuk normal
ketiga sudah cukup identik dengan Boyce –
Codd Normal Form.
103
Gambar 4.19. Relasi tabel dalam bentuk BCNF
104
d. Spesifikasi Tabel
Nama Database: sekolah
1. Nama Tabel: bayaran
Primary Key: kd_bln
Foreign Key: nis
Tipe File: File Master
No. Nama field Tipe Lebar Keterangan Null
1 nis Varchar 10 no. induk siswa tidak
2 bln_byr Varchar 10 bulan bayaran tidak
3 tgl_byr Timestamp tanggal pembayaran tidak
4 keterangan Varchar 20 keterangan bayaran tidak
2. Nama Tabel: guru
Primary Key: nuptk_guru
Foreign Key: -
Tipe File: File Master
No. Nama field Tipe Lebar Keterangan Null
1 Nuptk_guru Varchar 20 no. induk guru tidak
2 nama Varchar 40 nama guru tidak
3 alamat Varchar 50 alamat guru tidak
4 telepon Varchar 10 nomor telepon guru tidak
5 password Varchar 60 password guru tidak
105
3. Nama Tabel: jadwal
Primary Key: kode_mp
Foreign Key: kd_kls
Tipe File: File Master
No. Nama field Tipe Lebar Keterangan Null
1 kode_mp Varchar 10 kode mata pelajaran tidak
2 kd_kls Varchar 10 kode kelas tidak
3 hari_belajar Varchar 10 hari belajar tidak
4 jam_belajar Varchar 10 jam belajar tidak
4. Nama Tabel: jadwal_uas
Primary Key: kd_mp
Foreign Key: kd_kls
Tipe File: File Master
No. Nama field Tipe Lebar Keterangan Null
1 kode_mp Varchar 10 kode mata pelajaran tidak
2 kd_kls Varchar 10 kode kelas tidak
3 tgl_uas Varchar 10 tanggal UAS tidak
4 hari_uas Varchar 10 hari UAS tidak
5 jam_uas Varchar 10 jam UAS tidak
106
5. Nama Tabel: jadwal_uts
Primary Key: kd_mp
Foreign Key: kd_kls
Tipe File: File Master
No. Nama field Tipe Lebar Keterangan Null
1 kode_mp Varchar 10 kode mata pelajaran tidak
2 kd_kls Varchar 10 kode kelas tidak
3 tgl_uts Varchar 10 tanggal UAS tidak
4 hari_uts Varchar 10 hari UAS tidak
5 jam_uts Varchar 10 jam UAS tidak
6. Nama Tabel: kelas
Primary Key: kd_kls
Foreign Key: nuptk_wali_kelas
Tipe File: File Master
No. Nama field Tipe Lebar Keterangan Null
1 kode_kls varchar 10 kode kelas tidak
2 nama_kelas varchar 10 nama kelas tidak
3 nuptk_wali_kelas varchar 10 kode wali kelas tidak
107
7. Nama Tabel: mata_pelajaran
Primary Key: kode_mp
Foreign Key: nuptk_wali_kelas
Tipe File: File Master
No. Nama field Tipe Lebar Keterangan Null
1 kode_mp Varchar 10 kode mata pelajaran tidak
2 Nuptk_guru Varchar 20 nomer induk guru tidak
3 nama_mp Varchar 20 nama mata pelajaran tidak
8. Nama Tabel: nilai
Primary Key: nis
Foreign Key: nuptk_guru, kd_mp
Tipe File: File Master
No. Nama field Tipe Lebar Keterangan Null
1 nis Varchar 10 no. induk siswa tidak
2 nuptk_guru Varchar 10 no. induk guru tidak
3 kd_mp Varchar 10 kode mata pelajaran tidak
4 nilai_uts Int 10 nilai UTS tidak
5 nilai_uas Int 10 nilai UAS tidak
6 nilai_rapor Int 10 nilai Rapor tidak
108
9. Nama Tabel: rapor
Primary Key: nis
Foreign Key: nuptk_wali_kelas
Tipe File: File Master
No. Nama field Tipe Lebar Keterangan Null
1 nis varchar 10 no. induk siswa tidak
2 nuptk_wali_kelas varchar 10 kode wali kelas tidak
3 semester varchar 10 semester tidak
4 jml_sakit Int 10 jumlah sakit tidak
5 jml_izin Int 10 jumlah izin tidak
6 jml_alpa Int 10 jumlah alpa tidak
7 peringkat Int 10 peringkat tidak
8 catatan Text catatan wali kelas tidak
9 kenaikan varchar 10 keterangan naik kelas tidak
109
10. Nama Tabel: siswa
Primary Key: nis
Foreign Key: -
Tipe File: File Master
No. Nama field Tipe Lebar Keterangan Null
1 nis Varchar 10 no. induk siswa tidak
2 nama Varchar 30 kode wali kelas tidak
3 tanggal_lahir Varchar 10 semester tidak
4 tempat_lahir Varchar 20 jumlah sakit tidak
5 alamat Text jumlah izin tidak
6 jenis_kelamin Varchar 2 jumlah alpa tidak
7 password Varchar 50 peringkat tidak
8 kd_kls Varchar 5 keterangan kelas tidak
11. Nama Tabel: wali_kelas
Primary Key: nuptk_wali_kelas
Foreign Key: -
Tipe File: File Master
No. Nama field Tipe Lebar Keterangan Null
1 kd_wali_kelas Varchar 10 kode wali kelas tidak
2 nama Varchar 30 nama wali kelas tidak
3 password Varchar 70 password wali kelas tidak
110
4. Perancangan State Transition Diagram
a. State Transition Diagram Halaman Siswa
Gambar 4.20. State Transition Diagram Halaman Siswa
111
Siswa yang tidak melakukan login hanya dapat
melihat halaman menu utama yang berisi Profil
sekolah, Berita terkini, info – info tentang sekolah
yang disediakan untuk informasi umum, kemudian
siswa yang telah melakukan login maka akan dapat
melakukan proses untuk melihat jadwal mata
pelajaran, jadwal UAS dan UTS, daftar
nilai,pembayaran serta rapor.
112
b. State Transition Diagram Halaman Staf Tata usaha
Gambar 4.21. State Transition Diagram Halaman Staf Tata Usaha
113
Gambar diatas merupakan perancangan halaman Staf
yang berbasis web yang digunakan oleh Staf untuk
mengelola sistem, melakukan penambahan, perubahan, dan
penghapusan data – data informasi akademik pada database
yang akan digunakan user.
c. State Transition Diagram Halaman Guru
Gambar 4.22. State Transition Diagram Halaman Guru
Gambar diatas merupakan perancangan halaman Guru
yang berbasis web, berguna bagi Guru untuk melakukan
pengolahan data nilai yang dibutuhkan oleh siswa.
114
d. State Transition Diagram Halaman Walikelas
Gambar 4.23. State Transition Diagram Halaman Walikelas
Gambar diatas merupakan perancangan halaman Wali
kelas yang berbasis web, berguna bagi Wali kelas untuk
melakukan pengolahan data rapor yang dibutuhkan oleh
siswa.
5. Perancangan Antarmuka
Dalam perancangan antarmuka aplikasi sistem informasi
akademik yang berbasis WAP ini, dibuat beberapa form yang
akan ditampilkan, terdapat dua jenis form yang ditampilkan, yang
pertama berbasis WAP yang digunakan oleh muird dan orang tua
murid, kemudian dengan berbasis web yang akan digunakan oleh
Staf, Guru dan Wali kelas.
115
a. Desain Tampilan pada WAP
1) Halaman Menu Utama
Halaman menu utama merupakan tampilan dari
menu utama yang menghubungkan dengan halaman
informasi lainnya.
Gambar 4.24. Rancangan halaman menu utama
116
2) Halaman Profil
Halaman ini digunakan untuk menampilkan
profil singkat SMP PERWIRA Jakarta, terdapat juga
informasi mengenai sejarah singkat, visi dan misi, dan
fasilitas dan ekstrakulikuler. Halaman ini dapat
diakses oleh user yang tidak login.
Gambar 4.25. Rancangan halaman profil
3) Halaman Berita
Halaman berita terkini berisi tentang berita –
berita yang terbaru saat ini.
Gambar 4.26. Rancangan halaman berita
117
4) Halaman Info
Halaman info berisi tentang info yang ada
dilingkungan sekolah. Halaman ini dapat diakses oleh
user yang tidak login.
Gambar 4.27. Rancangan halaman info – info
5) Halaman Tentang Kami
Halaman tentang kami berisi tentang kontak
person dan alamat sekolah. Halaman ini dapat diakses
oleh user yang tidak login.
Gambar 4.28. Rancangan halaman Tentang kami
118
6) Halaman Login
Pada halaman ini bagi user, yaitu siswa dan
orang tua atau wali siswa harus memasukan NIS dan
password yang sesuai dengan miliknya, NIS dan
password akan diberikan kepada setiap siswa dan
orang tua atau wali siswa.
Gambar 4.29. Rancangan halaman login
7) Halaman konfirmasi
Apabila NIS dan password yang dimasukan
tidak sesuai atau salah maka akan dimunculkan
halaman konfirmasi, sebagai pemberitahuan proses
login telah gagal.
Gambar 4.30. Rancangan halaman konfirmasi
119
8) Halaman Login Sukses
Apabila NIS dan password yang dimasukan
sesuai maka user akan masuk ke halaman login
sukses.
Gambar 4.31. Rancangan halaman login sukses
9) Halaman Jadwal Pelajaran
Halaman jadwal pelajaran merupakan halaman
dimana user dapat melihat jadwal pelajaran yang
ingin ditampilkan sesuai hari yang diinginkan.
Gambar 4.32. Rancangan halaman jadwal
120
10) Halaman Nilai
Halaman nilai merupakan halaman dimana user
dapat melihat nilai yang telah diberikan oleh guru
sesuai dengan matapelajaran dan semester yang
diinginkan oleh user. Nilai yang ditampilkan terdiri
dari nilai UAS, UTS, Rapor.
Gambar 4.33. Rancangan halaman nilai
11) Halaman Rapor
Halaman rapor merupakan halaman dimana user
dapat melihat data rapor yang telah diisi oleh wali
kelas masing – masing sesuai dengan semester.
Gambar 4.34. Rancangan halaman rapor
121
12) Halaman Bayaran
Halaman bayaran menampilkan bulan beserta
keterangan pembayaran apakah telah lunas atau
belum.
Gambar 4.35. Rancangan halaman bayaran
b. Desain Tampilan pada Web
1) Halaman index User (Tata Usaha, Guru, Wali kelas)
Pada halaman ini akan menampilkan info
singkat untuk semua user, beserta form login untuk
masing masing user.
Gambar 4.36. Rancangan halaman index
122
2) Halaman login
Pada halaman ini, setelah pilihan login maka
user, akan masuk ke halaman login, disini user
diminta memasukan user_id dan password masing –
masing.
Gambar 4.37. Rancangan halaman login
3) Halaman Beranda Staf Tata Usaha
Halaman beranda staf tata usaha akan
menampilkan menu yang akan terhubung dengan data
siswa, mata pelajaran, kelas, wali kelas, jadwal
pelajaran, jadwal UTS, jadwal UAS, guru, berita,
bayaran.
Gambar 4.38. Rancangan halaman menu utama tata usaha
123
4) Halaman siswa
Pada halaman siswa akan menampilkan data
siswa yang ada di database, lalu ada pilihan menu
untuk menambah, menghapus atau merubah data
siswa.
Gambar 4.39. Rancangan halaman siswa
Pada halaman edit atau tambah siswa akan
tampil form untuk mengubah atau menambah data
siswa
Gambar 4.40. Rancangan halaman form edit atau tambah siswa
124
5) Halaman matapelajaran
Pada halaman mata pelajaran akan ditampilkan
data mata pelajaran yang akan digunakan disekolah
Gambar 4.41. Rancangan halaman mata pelajaran
Pada halaman edit atau tambah matapelajaran
tampil form untuk mengubah atau menambah data
mata pelajaran.
Gambar 4.42. Rancangan halaman form edit atau tambah mata
pelajaran.
125
6) Halaman kelas
Halaman kelas akan menampilkan daftar kelas
yang ada, lalu ada pilihan menu untuk menambah,
menghapus atau merubah data kelas.
Gambar 4.43. Rancangan halaman kelas
Halaman rubah atau tambah kelas menampilkan
form untuk merubah atau menambah data
Gambar 4.44. Rancangan form edit atau tambah kelas
126
7) Halaman wali kelas
Halaman wali kelas menampilkan data wali
kelas dari setiap kelas, lalu ada pilihan menu untuk
menambah. Menghapus atau merubah data.
Gambar 4.45. Rancangan halaman wali kelas
Halaman tambah atau rubah wali kelas
menampilkan form untuk menambah atau mengubah
data wali kelas.
Gambar 4.46. Rancangan halaman form edit atau tambah walikelas.
127
8) Halaman Jadwal Pelajaran
Halaman jadwal pelajaran menampilkan jadwal
pelajaran dari masing – masing kelas dengan memilih
terlebih dahulu kelas yang akan dilihat.
Gambar 4.47. Rancangan halaman jadwal pelajaran
Halaman tambah atau ubah jadwal pelajaran
menampilkan form untuk menambah atau mengubah
data jadwal pelajaran.
Gambar 4.48. Rancangan halaman form edit atau tambah jadwal
pelajaran.
128
9) Halaman jadwal UTS
Halaman jadwal menampilkan jadwal UTS dari
masing – masing kelas dengan memilih terlebih
dahulu kelas yang akan dilihat.
Gambar 4.49. Rancangan halaman jadwal UTS
Halaman tambah atau ubah jadwal UTS
menampilkan form untuk menambah atau mengubah
data jadwal UTS.
Gambar 4.50. Rancangan halaman form edit atau tambah
jadwal UTS
129
10) Halaman Jadwal UAS
Halaman jadwal menampilkan jadwal UAS dari
masing – masing kelas dengan memilih terlebih
dahulu kelas yang akan dilihat.
Gambar 4.51. Rancangan halaman jadwal UAS
Halaman tambah atau ubah jadwal UAS
menampilkan form untuk menambah atau mengubah
data jadwal UAS.
Gambar 4.52. Rancangan halaman form edit atau tambah
jadwal UAS
130
11) Halaman guru
Halaman guru menampilkan daftar guru yang
ada, lalu terdapat pilihan menu untuk hapus, tambah
atau ubah.
Gambar 4.53. Rancangan halaman guru
Halaman tambah atau ubah guru menampilkan
form untuk tambah dan rubah guru.
Gambar 4.54. Rancangan halaman form edit atau tambah guru
131
12) Halaman berita
Halaman berita menampilkan daftar berita yang
ada, kemudian terdapat menu pilihan untuk tambah,
hapus dan ubah.
Gambar 4.55. Rancangan halaman berita.
Halaman ubah atau tambah berita akan
menampilkan form untuk ubah dan tambah berita.
Gambar 4.56. Rancangan halaman form edit atau tambah berita.
132
13) Halaman bayaran
Halaman bayaran menampilkan daftar bayaran
tiap siswa dengan terlebih dahulu memilih kelas dan
siswa.
Gambar 4.57. Rancangan halaman bayaran.
Halaman rubah atau tambah berita akan
menampilkan form untuk rubah atau tambah data
bayaran.
Gambar 4.58. Rancangan halaman form edit atau tambah
bayaran.
133
14) Halaman beranda guru
Halaman beranda guru terhubung dengan data
nilai, jadwal pelajaran, uts dan uas untuk siswa. Disini
user memiliki hak untuk pengolahan nilai siswa.
Gambar 4.59. Rancangan halaman utama guru
15) Halaman nilai
Disini guru akan memilih siswa yang akan
diubah nilainya.
Gambar 4.60. Rancangan halaman nilai
Halaman tambah atau rubah nilai menampilkan
form untuk menambah atau merubah nilai pada siswa.
Gambar 4.61. Rancangan halaman form edit atau tambah nilai.
134
16) Halaman beranda wali kelas
Halaman beranda wali kelas terhubung dengan
data rapor untuk siswa. Disini user memiliki hak
untuk pengolahan rapor siswa.
Gambar 4.62. Rancangan halaman utama wali kelas
17) Halaman rapor
Halaman rapor akan menampilkan daftar rapor ,
nilai akhir dan rata – rata nilai dari tiap siswa
Gambar 4.63. Rancangan halaman rapor.
Halaman tambah atau rubah menampilkan form
untuk melakukan penambahan atau perubahan data
rapor.
Gambar 4.64. Rancangan halaman form edit atau tambah rapor.
135
4.2.3. Fase Konstruksi
Pada fase ini, dilakukan pengkodean terhadap rancangan-
rancangan yang telah didefinisikan sebelumnya menggunakan bahasa
pemrograman PHP 5.2.5 dan WML 1.0., MySQL 5.0.51.sebagai basis
datanya, Apache(win32) 2.2.8. sebagai web server, semua tergabung
dalam XAMPP 1.6.6a. Untuk pengolahan gambar digunakan photoshop
7.0. sedangkan untuk pengkodean aplikasi ini menggunakan software
Dreamweaver 8.0, untuk mengedit source code program, sebuah ponsel
dengan fitur WAP, mozzilla firefox sebagai microbrowsernya.
Adapun coding aplikasi WAP untuk layanan informasi akademik
ini, dapat dilihat pada lampiran I.
4.2.4. Fase Pelaksanaan (Implementasi)
Pengujian yang dilakukan terhadap aplikasi sistem informasi
akademik ini adalah pengujian dengan metode blackbox. Pengujian
dilakukan dengan menjalankan semua fungsi dan fitur yang ada dari
aplikasi ini dan kemudian dilihat apakah hasil dari fungsi-fungsi
tersebut sesuai dengan yang diharapkan. Untuk Aplikasi WAP dijalankan
dengan menggunakan sebuah ponsel yang dilengkapi fasilitas internet,
kemudian untuk aplikasi Web dijalankan dengan menggunakan web
browser di komputer, client dan user mencoba melakukan proses input dan
menghasilkan output sesuai dengan yang diharapkan.
136
1. Konfigurasi WAP server dan web server
Pada implementasi ini, peneliti melakukan konfigurasi
WAP server dan web server. Pada WAP server peniliti dapat
menggunakan sebuah ponsel atau microbrowser, untuk itu harus
memasukan beberapa parameter MIME type yang terdapat pada
file httpd.conf yang terletak pada webserver Apache, Parameter
itu antara lain :
AddType application/x-httpd-php .php
AddType application/x-httpd-php .php3
AddType application/x-httpd-php-source .phps
#Tambahan parameter untuk wap disini
AddType application/x-httpd-php .wml
AddType text/vnd.wap.wml .wml
AddType image/vnd.wap.wbp .wbmp
AddType text/vnd.wap.wmlscript .wmlsc
AddType text/vnd.wap.wmlscript .wmls
AddType application/vnd.wap.wmlc .wmlc
AddType application/vnd.wap .wmlscriptc
AddType text/vnd.wap .wmlscript
AddType text/vnd.wap .wmlscript
Lalu jika menggunakan add ons untuk wml browser pada
mozzila firefox tidak perlu memasukan parameter untuk MIME
type. sedangkan untuk web server dengan menggunakan Apache
137
sebagai web servernya, kofigurasi Apache cukup dengan
menginstall software Xampp 1.6.6a.
2. Prinsip Kerja Sistem yang dibuat
a. Aplikasi WAP ini hanya dapat diakses melalui ponsel yang
memiliki fasilitas WAP atau bisa juga dengan menggunakan
microbrowser.
b. Server menerima akses dan menjalankan program PHP
untuk melakukan query pada database server, serta
mengirimkan hasil query dalam format WML, sehingga
dapat diterima oleh user yang menggunakan ponsel.
c. Pengaksesan database server menggunakan PHP dan
MySQL sebagai database server, halaman – halaman WML
digenerate dengan menggunakan PHP pada server.
d. Pilihan menu yang dipilih oleh user akan diterima akan
diterima oleh server dan selanjutnya menampilkan
informasi yang telah dipilih oleh user.
e. Untuk melakukan update data dapat menggunakan aplikasi
lain yang dibuat dengan PHP, guna mempemudah proses
pengubahan, penambahan ataupun penghapusan data. User
yang dapat mengakses halaman ini terdiri dari Staf, Wali
kelas, dan guru.
138
3. Pengujian Aplikasi
Spesifikasi tools yang penulis gunakan dalam membangun
perangkat lunak ini antara lain :
a. Notebook
Notebook Desktop : PC Chip Intel Core 2 Duo Hyper
Threading 2,0 GHz, memori 2 GigaByte, Hard drive 160
GigaByte.
b. Handphone
Samsung G150. Berikut spesifikasi umum Samsung G150 :
Fitur Umum Stereo FM radio with RDS Java MIDP 2.0
MP3/WMA/AAC player
H.263/H.264/MPEG4 player
Organizer
50 MB internal memory
Slot memory card untuk tambahan user memory
dan aplikasi
Mendukung aplikasi Java ™ MIDP 2.0
Sinkronisasi data dengan PC via PC Suite
Beroperasi pada jaringan GSM dengan frekuensi
E900/1800/1900
Ukuran Dimensi : 104 x 53 x 11.9 mm
Layar dan
Antarmuka Warna : TFT, 262K colors
Ukuran layar : 240 x 400 pixels, 3.0 inches
Integrated VGA
Digital Camera Kamera : 3.15 MP, 2048x1536 pixels
Video Recorder : QVGA@15fps
Koneksi Bluetooth wireless technology
Sinkronisasi local untuk alamat kontak dan
kalender menggunakan PC Suite
Baterai Standard battery, Li-Ion 1000 mAh
c. Software
139
1) Sistem operasi : Microsoft Windows XP Service Pack
2.
2) Web editor : Dreamweaver 8
3) Web browser : Mozilla Firefox versi 3.0.6
4) Editor gambar : Adobe Photoshop 7
5) Web server : Apache versi 2.2.8 (XAMPP 1.6.6a)
6) Database : MySQL versi 5.0.51 (XAMPP 1.6.6a)
7) Bahasa pemorograman : PHP versi 5.2.5. (XAMPP
1.6.6a) dan WML 1.0
8) Konektor bahasa pemrograman dengan database :
phpMyAdmin versi 2.11.4. (XAMPP 1.6.6a)
Dalam penelitian ini peneliti melakukan pengujian sistem
yaitu dengan black box test hasil pengujian dapat dilihat pada
lampiran II.
Dengan menggunakan metode black box, pengujian dengan
melakukan testing tanpa melihat source code program dan
dijalankan oleh penguji maupun user untuk mengamati apakah
aplikasi tersebut telah menerima input yang diproses kemudian
menghasilkan output yang sesuai dengan request.
140
BAB V
PENUTUP
5.1. Kesimpulan
Berdasarkan uraian bab-bab sebelumnya, maka dapat diambil
kesimpulan dari penulisan skripsi ini sebagai berikut :
1. Aplikasi sistem informasi akademik berbasis WAP ini tidak
memerlukan proses instalasi aplikasi terlebih dahulu.
2. Aplikasi sistem informasi akademik berbasis WAP dapat diakses
dengan menggunakan ponsel. Sehingga dapat diakses kapan saja
dan dimana saja selama masih terjangkau oleh operator jaringan,
hasil uji tes dapat dilihat pada lampiran .II
3. Informasi – informasi yang akan diterima berguna bagi pihak
sekolah maupun pihak murid, karena orang tua murid dan sekolah
dapat berinteraksi melalui aplikasi sistem informasi akademik
berbasis WAP ini, hasil uji tes dapat dilihat pada lampiran II.
5.2. Saran
Berdasarkan penelitian yang diperoleh, ada beberapa saran untuk
pengembangan sistem lebih lanjut, saran-saran tersebut yaitu:
1. Mengembangkan aplikasi agar dapat menampilkan daftar nilai
rapor secara keseluruhan pada satu form tampilan sehingga
141
memudahkan user untuk melihat nilai.
2. Diharapkan adanya penambahan content menu atau fasilitas –
fasilitas lain pada aplikasi ini sehingga lebih interaktif dan
menarik.
3. Aplikasi sistem informasi akademik berbasis WAP ini
menggunakan bahasa pemrograman WML, alangkah baiknya
digunakan digunakan bahasa pemrograman yang lebih mutakhir
seperti java, xhtml dan lain sebagainya, agar aplikasi yang dimiliki
menjadi lebih modern dan maju.
4. Pihak sekolah agar mempekerjakan seorang admin khusus yang
bertugas memaintance aplikasi sistem informasi akademik ini,
sehingga akan terus dapat berjalan dengan baik.
5. Menggunakan spesifikasi komputer yang lebih tinggi agar proses
maintenance dapat berjalan dengan baik.
142
DAFTAR PUSTAKA
Agung, Gregorius. 2001. Wap Programming dengan WML. Yogyakarta : Andi.
Dwi Prasetyo, Didik. 2005. Aplikasi Web Mobile Menggunakan ASP.NET. Jakarta
: Elex Media Komputindo
Fadjar, Abdul Mukthie. 2002. Reformasi Konstitusi Dalam Masa Transisi
Paradigmatik, Konstitusi Baru Melalui Komisi Konstitusi Independen.
Jakarta : Pustaka Sinar Harapan.
Fiati, Rina. 2005. Akses Internet VIA Ponsel. Yogyakarta : Andi.
Frans Setiawan. 2002. Mengamankan Web server dari Serangan Hacker/
Cracker. Jakarta : PT. Elex Media Komputindo
Hartono, Jogiyanto. 1999. Pengenalan Komputer, Jogjakarta: Andi.
Hartono, Jogiyanto. 2001. Analisis & Disain Sistem Informasi: Pendekatan
Terstruktur Teori dan Praktek Aplikasi Bisnis. Yogyakarta: Andi.
Kadir, Abdul. 2003. Dasar Pemrograman Web Dinamis Menggunakan PHP.
Yogyakarta: Andi.
Kenneth E. Kendall., Jullie E. Kendall. 2003. Systems Analysis and Design. fifth
Edition. Dialihbahasakan oleh Thamir Abdul Hafed Al-Hamdany, B.Sc, M.Sc
dalam buku Analisa dan Perancangan Sistem Jilid 1. Jakarta : Prenhallindo.
Komputer, Wahana. 2006. Menguasai Pemrograman Web dengan PHP 5.
Yogyakarta : Andi.
Ladjamudin, Al-Bahra. 2005. Analisis dan Desain Sistem Informasi. Yogyakarta:
Graha Ilmu.
143
Laudon, Kenneth. C dan Laudon, Jane. P. 2004. Management Information System
: Managing the Digital Firm. New Jersey : Prentice Hall.
Nanang, Herlino. 2004. Web Programming. Jakarta : UIN Syarif Hidayatullah.
Nugroho, Bunafit. 2009. Pengembangan Program WAP dengan WML dan PHP.
Yogyakarta : Gava Media.
Oetomo, Budi. dkk. 2003. Jargon e-Bussines. Yoyakarta : Andi.
Pawirosumarto, Suharno. 2008. Aplikasi Komputer, Jakarta : Mitra Wacana
Media.
Peranginangin, Kasiman. 2006. Aplikasi WEB dengan PHP dan MySQL.
Yogyakarta : Andi.
Pressman, Roger E. 1997. Rekayasa Perangkat Lunak-Pendekatan Praktisi.
Yogyakarta: Andi.
Pressman, Roger E. 2002. Rekayasa Perangkat Lunak (Pendekatan Praktisi).
Yogyakarta : Andi.
Simarmata, Janner. 2006. Pemrograman WAP dengan Menggunakan WML.
Yogyakarta : Andi.
Stalling, William. Diterjemahkan oleh : Thamir Abdul Hafedh Al-Hamdany,
B.Sc., M.Sc. 2001. Komunikasi Data dan Komputer, Dasar - Dasar
Komunikasi Data. Jakarta : Salemba Teknika.
Suhendar, A. 2003. Teknologi Pemrograman Mobile Comerce. Bandung :
Informatika.
Supriyanto, Aji. 2005. Pengantar Sistem Informasi. Yogyakarta : Andi.
Sutanta, Edhy. 2004. Sistem Basis Data. Yogyakarta : Graha Ilmu
144
Suyanto, M. 2003. Multimedia Alat untuk meningkatkan keunggulan bersaing.
Yogyakarta : Andi
Utomo, Prasetya Ambang, ST. 2006. Membangun Aplikasi Wap Portal untuk
Instansi/Lembaga. Yogyakarta: CV Andi Offset.
Internet
http://www.wirelessdevnet.com/articles/ (Diakses tanggal 19 Maret 2010 pukul
08.24).
http://java.sun.com/j2mc/docs/KVMwp.pdf (Diakses tanggal 20 Maret 2010 pukul
21.00).
xxii
LAMPIRAN I
KODE SUMBER APLIKASI
1. Aplikasi WAP Home.wml
<?xml version="1.0" encoding="iso-
8859-1"?>
<!DOCTYPE wml PUBLIC "-
//WAPFORUM//DTDWML 1.3//EN"
"http://www.wapforum.org/DTD/wml1.
dtd">
<wml><card title="*** BERANDA ***"
newcontext="true"> <p
align="center">
<img src="banner.png"
alt="banner"></img>
<small><br/><b>INFORMASI
AKADEMIK</b><br/><b>SMP PERWIRA
JAKARTA</b><br/>------------------
----------------------<br/>
----------------------------------
------<br/></small></p>
<p align="center"></p><p
align="left"><br/><small>
- <a
href="home.wml">Beranda</a><br/>
- <a href="profil.wml">Profil SMP
PERWIRA Jakarta</a><br/>
- <a
href="berita.php">berita_terkini</
a><br/>
- <a href="info.php">info -
info</a><br/>
- <a
href="tentang_kami.wml">Tentang
Kami</a><br/>
- <a
href="login.wml">Login</a><br/>
</small></p>
<p align="center">
<small>Copyright @ 2010 <br/>
Designed by: :Riki Danang<br/>
<a href =
"http://mfacebook/adamyramaz.com">
fb email :
[email protected]</a></sm
all></p></card></wml>
login.wml
<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-
//WAPFORUM//DTD WML 1.3//EN"
"http://www.wapforum.org/DTD/wml13
.dtd">
<wml>
<card id="akademik" title="***
LOGIN USER ***" newcontext="true">
<do type="accept" label="Login">
<go method="post"
href="user_login_cek.php">
<postfield name="nis"
value="$(nis)"/>
<postfield name="password"
value="$(password)"/>
</go></do>
<p align="center"><img
src="banner.png" alt
="banner"></img><br/>
<small><big><b>YAYASAN PUTRA
PERWIRA</b></big><br/>
LAYANAN INFORMASI AKADEMIK<br/>SMP
PERWIRA <br/>Jakarta<br/>
=====================<br/></small>
</p><p align="center">
<small> NIS : </small>
<input type="text" name="nis"
maxlength="20"/><br/><br/>
<small> Password : </small>
<input type="password"
name="password"
maxlength="5"/></p>
<p
align="center"><small>============
=========<br/></small>
<b><a
href="home.wml">Beranda</a></b>
<br/></p></card></wml>
user_login_cek.php
<?php
session_start();
echo('<?xml version="1.0"?>');
echo('<!DOCTYPE wml PUBLIC "-
//WAPFORUM//DTD WML 1.3//EN"
"http://www.wapforum.org/DTD/w
ml13.dtd">');
?>
<wml>
<card id="Halaman Siswa"
title="*** KONFIRMASI ***"
newcontext="true">
<p align="center">
<small>
<?php
include_once ("koneksi.php");
//ini belom login
if(!isset($_SESSION["nis"])){
$nis = $_REQUEST["nis"];
$password = $_REQUEST["password"];
if(empty($nis)||empty($password))
xxiii
{
echo " <br/> <big><b> ERROR
</b></big><br/> ";
echo "<br/><big>Mohon Lengkapi
Data</big><br/><br/><br/><br/>";
echo "[ <a
href=\"login.wml\">Ulangi</a> 
;]";
}
else {
$sql= "SELECT * FROM siswa WHERE
nis='$nis' &&
password='$password'";
$result = mysql_query($sql);
if(mysql_num_rows($result) == 1){
//setting Session untuk nama dan
nis ambil dari database
while($row =
mysql_fetch_array($result)){
$_SESSION["nis"] = $row["nis"];
$_SESSION["nama"] = $row["nama"];
$_SESSION["kelas"] =
$row["kd_kls"];
}
include_once "user_loginok.php";
}
else
{
echo"<br/><b><big>PROSES LOGIN
GAGAL</big> </b><br/>";
echo"======================<br/>";
echo"<br/> Masukan ID dengan
benar<br/>";
echo " NIS : $nis <br/>";
echo " Password : ***** <br/>
<br/> <br/> ";
echo "[ <a
href=\"login.wml\">Ulangi</a> 
;]";
echo "[ <a
href=\"logout.php\">Logout</a>&nbs
p;]";
}
}
}
else
{
include_once "user_loginok.php";
}
?>
</small></p></card></wml></small><
/p></card></wml>
user_login_ok.php
<?php
session_start();
?>
<wml>
<card id="proses" title="Halaman
Siswa" newcontext="true">
<p align="center"><img
src="banner.png"
alt="banner"></img>
<b><br/>SMP PERWIRA JAKARTA<br/>
Pelayanan Informasi
Akademik</b><br/>
============================</p>
<p align="center">
<?
echo"<br/><big><b>SELAMAT DATANG
<br/> </b>
LAYANAN INFORMASI
AKADEMIK</big><br/>SMP
PERWIRA<br/>Jakarta<br/>";
echo "<b><big>.:: " .
$_SESSION["nama"] . "
::.</big></b><br/>";
$hasil = mysql_query("select
nama_kelas from kelas where
kd_kls='".$_SESSION["kelas"]."'");
while($row =
mysql_fetch_row($hasil))
{
echo"<b><big>.:: Kelas : ";
echo"$row[0] ::.</big></b><br/>";
}
$date=date("d/m/Y");
$sekarang=getdate();
$jamsek=date('H:i:s');
echo"Anda Login Ke WAP LAYANAN
INFORMASI AKADEMIK SMP PERWIRA
<br/>";
echo "Pukul :$jamsek <br/>";
echo "Tanggal : $date<br/>";
echo "[ <a
href=\"pilih_jadwal_pelajaran.php\
">Jadwal Pelajaran</a>]<br/>";
echo "[ <a
href=\"pilih_jadwal_uts.php\">Jadw
al UTS</a>]<br/>";
echo "[ <a
href=\"pilih_jadwal_uas.php\">Jadw
al UAS</a>]<br/>";
echo "[ <a
href=\"nilai.php\">Nilai</a>]<br/>
";
echo "[ <a
href=\"pilih_bayar.php\">Pembayara
n Sekolah</a>]<br/>";
echo "[ <a
href=\"rapor.php\">Rapor</a>]<br/>
<br/>";
echo "[ <a
href=\"logout.php\">Logout</a>&nbs
p;]";
?>
<p align="center">
<small>Copyright @ 2010 <br/>
Designed by: :Riki Danang<br/>
<a href =
"http://mfacebook/adamyramaz.com">
fb email :
[email protected]</a></sm
all></p>
pilih_jadwal_pelajaran.php <?php
include_once ("koneksi.php");
include_once("session.inc.user.php
");
header('Content-
type:text/vnd.wap.wml');
echo('<?xml version="1.0"?>');
echo('<!DOCTYPE wml PUBLIC "-
//WAPFORUM//DTD WML 1.3//EN"
"http://www.wapforum.org/DTD/wml13
.dtd">');
?>
xxiv
<wml>
<card id="proses" title=".::
JADWAL PELAJARAN ::."
newcontext="true">
<p align="center"><img
src="banner.png"
alt="banner"></img>
<small><b><br/>SMP PERWIRA
JAKARTA<br/>
Pelayanan Informasi
Akademik</b></small><br/>
============================<br/>
<small>Jadwal Matapelajaran :
<br/>
============================
<br/></small>
<small> <b>Pilih
Hari</b></small><br/>
<select name="hari_belajar">
<?
$hari =
array("","senin","selasa","rabu","
kamis","jumat");
for($i=1;$i<=5;$i++)
{
echo"<option
value='".$hari[$i]."'>";
if ($hari_belajar==$i)
echo"selected";
echo"".$hari[$i]."</option>";
}
?>
</select><br/><br/>
<anchor>
<go method="get"
href="jadwal_pelajaran.php">
<postfield name
="hari_belajar"
value="$(hari_belajar)"/>
</go>
Proses
</anchor><br/>
<small>
============================<br/>
[<a href="user_login_cek.php">
Kembali </a>] <br/>
[<a href="logout.php">Logout</a>]
</small></p>
<p align="center">
<small>Copyright @ 2010 <br/>
Designed by: :Riki Danang<br/>
<a href =
"http://mfacebook/adamyramaz.com">
fb email :
[email protected]</a></sm
all></p></card></wml>
jadwal_pelajaran.php
<?php
include_once ("koneksi.php");
include_once("session.inc.user.php
");
header('Content-
type:text/vnd.wap.wml');
echo('<?xml version="1.0"?>');
echo('<!DOCTYPE wml PUBLIC "-
//WAPFORUM//DTD WML 1.3//EN"
"http://www.wapforum.org/DTD/wml13
.dtd">');
?>
<wml>
<card id="Halaman Siswa"
title=".:: JADWAL PELAJARAN ::."
newcontext="true">
<p align="center">
<small>
<?
include('head_user.php');
$hari_belajar =
$_REQUEST["hari_belajar"];
$sql="SELECT a.kd_mp,
a.jam_belajar, b.nama, c.nama_mp
FROM jadwal a join mata_pelajaran
c on c.kd_mp = a.kd_mp join guru b
on b.nuptk = c.nuptk WHERE
a.hari_belajar='".$hari_belajar."'
&&a.kd_kls='".$_SESSION["kelas"]."
'";
$hasil=mysql_query($sql);
$baris=mysql_num_rows($hasil);
if($baris<1)
{
echo"<b>Maaf, Mata
Pelajaran Tidak
Ditemukan</b><br/>\n";
}
while($row=mysql_fetch_array($hasi
l))
{
echo"<br/>";
echo"Mata Pelajaran:
$row[3]<br/>";
echo"jam Belajar :
$row[1]<br/>";
echo"Guru: $row[2]<br/>";
echo"======================<br/>";
}
?>
[<a
href="pilih_jadwal_pelajaran.php">
kembali</a>]<br/>
[<a
href="user_login_cek.php">Halaman
Awal</a>]<br/>
[<a href="logout.php">Logout</a>]
</small>
</p>
<p align="center">
<small>Copyright @ 2010 <br/>
Designed by: :Riki Danang<br/>
<a href =
"http://mfacebook/adamyramaz.com">
fb email :
[email protected]</a></sm
all></p>
</card></wml>
pilih_jadwal_uts.php
<?php
include_once ("koneksi.php");
include_once("session.inc.user.php
");
header('Content-
type:text/vnd.wap.wml');
xxv
echo('<?xml version="1.0"?>');
echo('<!DOCTYPE wml PUBLIC "-
//WAPFORUM//DTD WML 1.3//EN"
"http://www.wapforum.org/DTD/wml13
.dtd">');
?>
<wml>
<card id="proses" title=".:: PILIH
HARI UTS ::." newcontext="true">
<p align="center"><img
src="banner.png"
alt="banner"></img>
<small><b><br/>SMP PERWIRA
JAKARTA<br/>
Pelayanan Informasi
Akademik</b></small><br/>
============================<br/>
<small>Jadwal UTS :
<br/>============================
<br/></small>
<small> <b>Pilih
Hari</b></small><br/>
<select name="hari_uts">
<?
$hari =
array("","senin","selasa","rabu","
kamis","jumat");
for($i=1;$i<=5;$i++)
{
echo"<option
value='".$hari[$i]."'>";
if ($hari_belajar==$i)
echo"selected";
echo"".$hari[$i]."</option>";
}
?>
</select><br/><br/>
<anchor>
<go method="get"
href="jadwal_uts.php">
<postfield name ="hari_uts"
value="$(hari_uts)"/>
</go>
Proses
</anchor><br/>
<small>
============================<br/>
[<a href="user_login_cek.php">
Kembali </a>] <br/>
[<a href="logout.php">Logout</a>]
</small>
</p>
<p align="center">
<small>Copyright @ 2010 <br/>
Designed by: :Riki Danang<br/>
<a href =
"http://mfacebook/adamyramaz.com">
fb email :
[email protected]</a></sm
all></p>
</card></wml>
jadwal_uts.php
<?php
include_once ("koneksi.php");
include_once("session.inc.user.php
");
header('Content-
type:text/vnd.wap.wml');
echo('<?xml version="1.0"?>');
echo('<!DOCTYPE wml PUBLIC "-
//WAPFORUM//DTD WML 1.3//EN"
"http://www.wapforum.org/DTD/wml13
.dtd">');
?>
<wml>
<card id="Halaman Siswa"
title=".:: JADWAL UTS ::."
newcontext="true">
<p align="center">
<small>
<?
include('head_user.php');
session_register("smst");
$blnsmst =
date("n");
if($blnsmst >= 1 &&
$blnsmst <= 6)
$_SESSION["smst"] = 2;
else
$_SESSION["smst"] = 1;
$kd_smt = $_SESSION["smst"];
$hari_uts =
$_REQUEST["hari_uts"];
$sql="SELECT a.kd_mp, a.tgl_uts,
a.jam_uts, b.nama, c.nama_mp FROM
jadwal_uts a join mata_pelajaran c
on c.kd_mp = a.kd_mp join guru b
on b.nuptk = c.nuptk WHERE
a.hari_uts='".$hari_uts."'&&a.kd_k
ls='".$_SESSION["kelas"]."'&&kd_sm
t='".$kd_smt."'";
$hasil=mysql_query($sql);
$baris=mysql_num_rows($hasil);
echo"<b>Jadwal UTS Semester Ke :
$kd_smt<br/></b>";
if($baris<1)
{
echo"<b>Maaf, Tidak Ada
Jadwal UTS Untuk Hari Yang
Dipilih</b><br/>\n";
}
while($row=mysql_fetch_array($hasi
l))
{
echo"<br/>";
echo"Mata Pelajaran:
$row[4]<br/>";
echo"Hari, Tanggal:
$row[1]<br/>";
echo"Waktu Ujian :
$row[2]<br/>";
echo"Guru: $row[3]<br/>";
echo"======================<br/>";
}
?>
[<a
href="pilih_jadwal_uts.php">Kembal
i</a>]<br/>
[<a
href="user_login_cek.php">Halaman
Awal</a>] <br/>
[<a href="logout.php">Logout</a>]
</small></p>
<p align="center">
<small>Copyright @ 2010 <br/>
xxvi
Designed by: :Riki Danang<br/>
<a href =
"http://mfacebook/adamyramaz.com">
fb email :
[email protected]</a></sm
all></p>
</card></wml>
pilih_jadwal_uas.php
<?php
include_once ("koneksi.php");
include_once("session.inc.user.php
");
header('Content-
type:text/vnd.wap.wml');
echo('<?xml version="1.0"?>');
echo('<!DOCTYPE wml PUBLIC "-
//WAPFORUM//DTD WML 1.3//EN"
"http://www.wapforum.org/DTD/wml13
.dtd">');
?>
<wml>
<card id="proses" title=".:: PILIH
HARI UAS ::." newcontext="true">
<p align="center"><img
src="banner.png"
alt="banner"></img>
<small><b><br/>SMP PERWIRA
JAKARTA<br/>
Pelayanan Informasi
Akademik</b></small><br/>
============================<br/>
<small>Jadwal UAS :
<br/>============================
<br/></small>
<small> <b>Pilih
Hari</b></small><br/>
<select name="hari_uas">
<?
$hari =
array("","senin","selasa","rabu","
kamis","jumat");
for($i=1;$i<=5;$i++)
{
echo"<option
value='".$hari[$i]."'>";
if ($hari_belajar==$i)
echo"selected";
echo"".$hari[$i]."</option>";
}
?>
</select><br/><br/>
<anchor>
<go method="get"
href="jadwal_uas.php">
<postfield name ="hari_uas"
value="$(hari_uas)"/>
</go>
Proses
</anchor><br/>
<small>
============================<br/>
[<a href="user_login_cek.php">
Kembali </a>] <br/>
[<a href="logout.php">Logout</a>]
</small>
</p>
<p align="center">
<small>Copyright @ 2010 <br/>
Designed by: :Riki Danang<br/>
<a href =
"http://mfacebook/adamyramaz.com">
fb email :
[email protected]</a></sm
all></p>
</card></wml>
jadwal_uas.php
<?php
include_once ("koneksi.php");
include_once("session.inc.user.php
");
header('Content-
type:text/vnd.wap.wml');
echo('<?xml version="1.0"?>');
echo('<!DOCTYPE wml PUBLIC "-
//WAPFORUM//DTD WML 1.3//EN"
"http://www.wapforum.org/DTD/wml13
.dtd">');
?>
<wml>
<card id="Halaman Siswa"
title=".:: JADWAL UAS ::."
newcontext="true">
<p align="center">
<small>
<?
include('head_user.php');
session_register("smst");
$blnsmst = date("n");
if($blnsmst >= 1 &&
$blnsmst <= 6)
$_SESSION["smst"] = 2;
else
$_SESSION["smst"] = 1;
$kd_smt = $_SESSION["smst"];
$hari_uas =
$_REQUEST["hari_uas"];
$sql="SELECT a.kd_mp,
a.tgl_uas, a.jam_uas, b.nama,
c.nama_mp FROM jadwal_uas a join
mata_pelajaran c on c.kd_mp =
a.kd_mp join guru b on b.nuptk =
c.nuptk WHERE
a.hari_uas='".$hari_uas."'&&a.kd_k
ls='".$_SESSION["kelas"]."'&&kd_sm
t='".$kd_smt."'";
$hasil=mysql_query($sql);
$baris=mysql_num_rows($hasil);
echo"<b>Jadwal UAS Semester Ke :
$kd_smt<br/></b>";
if($baris<1)
{
echo"<b>Maaf, Tidak Ada
Jadwal UAS Untuk Hari Yang
Dipilih</b><br/>\n";
}
while($row=mysql_fetch_array($hasi
l))
{
echo"<br/>";
echo"Mata Pelajaran:
$row[4]<br/>";
echo"Hari, Tanggal:
$row[1]<br/>";
echo"Waktu Ujian :
xxvii
$row[2]<br/>";
echo"Guru: $row[3]<br/>";
echo"======================<br/>";
}
?>
[<a
href="pilih_jadwal_uas.php">Kembal
i</a>]<br/>
[<a
href="user_login_cek.php">Halaman
Awal</a>] <br/>
[<a href="logout.php">Logout</a>]
</small>
</p>
<p align="center">
<small>Copyright @ 2010 <br/>
Designed by: :Riki Danang<br/>
<a href =
"http://mfacebook/adamyramaz.com">
fb email :
[email protected]</a></sm
all></p>
</card></wml>
nilai.php
<?php
include_once ("koneksi.php");
include_once("session.inc.user.php
");
header('Content-
type:text/vnd.wap.wml');
echo('<?xml version="1.0"?>');
echo('<!DOCTYPE wml PUBLIC "-
//WAPFORUM//DTD WML 1.1//EN"
"http://www.wapforum.org/DTD/wml13
.dtd">');
?>
<wml>
<card id="proses" title=".:: NILAI
SISWA ::." newcontext="true">
<p align="center"><img
src="banner.png"
alt="banner"></img>
<do type= "accept" label="proses">
<go method="post"
href="lihat_nilai.php">
<postfield name ="kd_smt"
value="$(kd_smt)"/>
<postfield name ="kd_mp"
value="$(kd_mp)"/> </go></do>
<small><b><br/>SMP PERWIRA
JAKARTA<br/>
Pelayanan Informasi
Akademik</b></small><br/>
============================<br/><
br/>
<small> Informasi Nilai Siswa
<br/>
============================
<br/></small>
<small> Pilih Mata Pelajaran
:</small> <br/>
<select name="kd_mp">
<?
$sql= "SELECT * FROM
mata_pelajaran order by nama_mp
asc";
$result = mysql_query($sql);
while($row =
mysql_fetch_array($result))
{
?>
<option value="<? echo
$row["kd_mp"];?>"><? echo
$row["nama_mp"];?></option>
<?
}
?>
</select><br/>
<small>
============================<br/>
[<a href="user_login_cek.php">
Kembali </a>] <br/>
</small><p/>
<p align="center">
<small>Copyright @ 2010 <br/>
Designed by: :Riki Danang<br/>
<a href =
"http://mfacebook/adamyramaz.com">
fb email :
[email protected]</a></sm
all></p>
</p></card></wml>
lihat_nilai.php
<?php
include_once("session.inc.user.php
");
header('Content-
type:text/vnd.wap.wml');
echo('<?xml version="1.0"?>');
echo('<!DOCTYPE wml PUBLIC "-
//WAPFORUM//DTD WML 1.3//EN"
"http://www.wapforum.org/DTD/wml13
.dtd">');
?>
<wml>
<card id="nilai siswa" title=".::
NILAI SISWA ::."
newcontext="true">
<p align="center">
<small>
<?
include_once ("koneksi.php");
include('head_user.php');
session_register("smst");
$blnsmst = date("n");
if($blnsmst >= 1 && $blnsmst
<= 6)
$_SESSION["smst"] = 2;
else
$_SESSION["smst"] = 1;
echo"<big><b>Nilai
Anda</b></big><br/>";
$kd_smt = $_SESSION["smst"];
$kd_mp = $_REQUEST["kd_mp"];
$sql="SELECT a.nilai_uts,
a.nilai_uas, a.nilai_rapor,
a.formatif, b.nama_mp from nilai a
join mata_pelajaran b ON
b.kd_mp=a.kd_mp WHERE
a.kd_smt='".$kd_smt."'&&a.kd_mp='"
.$kd_mp."'&&a.nis='".$_SESSION[nis
]."'";
$hasil=mysql_query($sql);
$baris=mysql_num_rows($hasil);
xxviii
if($baris <1)
{
echo"<b><small>Maaf,<br/> Daftar
Nilai Kosong, Silakan Hubungi Guru
Yang
Bersangkutan<br/></small></b>\n";
}
while($row=mysql_fetch_array($hasi
l))
{
echo"Mata Pelajaran:
$row[4]<br/>";
echo"Nilai Formatif:
$row[3]<br/>";
echo"Nilai UTS: $row[0]<br/>";
echo"Nilai UAS :
$row[1]<br/>";
echo"Nilai Rapor: $row[2]<br/>";
echo"======================<br/>";
}
?>
[<a
href="nilai.php">kembali</a>]<br/>
[<a href="logout.php">Logout</a>]
<p align="center">
<small>Copyright @ 2010 <br/>
Designed by: :Riki Danang<br/>
<a href =
"http://mfacebook/adamyramaz.com">
fb email :
[email protected]</a></sm
all></p></small></p></card></wml>
rapor.php
<?php
include_once ("koneksi.php");
include_once("session.inc.user.php
");
header('Content-
type:text/vnd.wap.wml');
echo('<?xml version="1.0"?>');
echo('<!DOCTYPE wml PUBLIC "-
//WAPFORUM//DTD WML 1.3//EN"
"http://www.wapforum.org/DTD/wml13
.dtd">');
?>
<wml>
<card id="Halaman Siswa"
title="*** RAPOR ***"
newcontext="true">
<p align="center">
<small>
<?
include('head_user.php');
session_register("smst");
$blnsmst =
date("n");
if($blnsmst >= 1 &&
$blnsmst <= 6)
$_SESSION["smst"] = 2;
else
$_SESSION["smst"] = 1;
$sql="SELECT * FROM rapor
WHERE
semester='".$_SESSION["smst"]."'&&
nis='".$_SESSION["nis"]."'";
$hasil=mysql_query($sql);
$baris=mysql_num_rows($hasil);
if($baris<1)
{
echo"<b>Maaf, Rapor
Belum Diisi, Silakan Hubungi Wali
Kelas</b><br/>\n";
}
while($row=mysql_fetch_array($hasi
l))
{
echo"<br/>";
if($row[2]=="1")
$semester="Ganjil";
if($row[2]=="2")
$semester="Genap";
echo"<b>Informasi Rapor
Semester $semester</b><br/><br/>";
echo"Sakit :
$row[3]<br/>";
echo"Izin: $row[4]<br/>";
echo"Alpa :
$row[5]<br/>";
$data = "SELECT nilai_rapor FROM
nilai WHERE
nis='".$_SESSION["nis"]."' AND
kd_smt='$row[2]'ORDER BY nis ASC";
$res = mysql_query($data,$connect)
or die(mysql_error());
$jumlah = 0;
while($b = mysql_fetch_row($res))
{
$jumlah += $b[0];
}
echo"Nilai Akhir : ";
printf($jumlah);
printf("<br/>");
echo"Rata - Rata
: ";
$rataan = $jumlah/11;
printf("%.2f",$rataan);
printf("<br/>");
echo"Catatan Orang Tua:
$row[6]<br/>";
echo"Kenaikan :
$row[7]<br/>";
echo"======================<br/>";
}
?>
[<a
href="user_login_cek.php">kembali<
/a>]<br/>
[<a
href="user_login_cek.php">Halaman
Awal</a>]<br/>
[<a href="logout.php">Logout</a>]
<p align="center">
<small>Copyright @ 2010 <br/>
Designed by: :Riki Danang<br/>
<a href =
"http://mfacebook/adamyramaz.com">
fb email :
[email protected]</a></sm
all></p></small></p></card></wml>
koneksi.php
xxix
<?php
$host ='localhost';
$user = 'root';
$password = '';
$connect=mysql_connect($host,$user
,$password);
if (! $connect)
{
echo " SYSTEM ERROR - PLEASE
CHECK file:connect.inc.php";
}
// memilih database pda server
mysql_select_db(sekolah) or die (
" ==> CONNECTION INVALID WITH
DATABASE ");
?>
session_inc_user.php
<?php
session_start();
if(!session_is_registered(nis)&&!s
ession_is_registered(password))
{
header('Content-
type:text/vnd.wap.wml');
echo('<?xml version="1.0"?>');
echo('<!DOCTYPE wml PUBLIC "-
//WAPFORUM//DTD WML 1.3//EN"
"http://www.wapforum.org/DTD/wml13
.dtd">');
?>
<wml>
<card id="Halaman Siswa"
title="*** KONFIRMASI ***"
newcontext="true">
<p align="center">
<small>
<br/><br/><big><b>Anda belum
login</b></big>
<br/><br/>
[ <a href="login.wml">
Login</a> ]
</small></p></card></wml>
<?php
exit;
}
?>
2. Aplikasi WEB
a. Staf TU
header2.php
<!DOCTYPE html PUBLIC "-//W3C//DTD
XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/x
html1-strict.dtd">
<html
xmlns="http://www.w3.org/1999/xhtm
l" lang="en">
<head>
<title>.::SMP PERWIRA
JAKARTA::.</title>
<meta http-equiv="Content-Type"
content="text/html;
charset=windows-1252" />
<link rel="stylesheet"
type="text/css" href="style2.css"
/>
</head>
<body>
<div id="centrecontainer">
<div id="outercontainer">
<div id="container">
<div id="headercont">
</div>
<div id="maincont">
<div id="mainleft">
<div class="sidenav">
<ul>
<li><a
href="home.php">Beranda</a></li>
<li><a
href="siswa.php">Siswa</a></li>
<li><a
href="kelas.php">Kelas</a></li>
<li><a
href="matapelajaran.php">Mata
Pelajaran</a></li>
<li><a href="walikelas.php">Wali
Kelas</a></li>
<li><a
href="guru.php">Guru</a></li>
<li><a
href="jadwal_pelajaran.php">Jadwal
Pelajaran</a></li>
<li><a href="uts.php">Jadwal
UTS</a></li>
<li><a href="uas.php">Jadwal
UAS</a></li>
<li><a
href="bayaran.php">Bayaran</a></li
>
<li><a
href="berita.php">Berita</a></li>
<li><a
href="info.php">Info</a></li>
</ul></div></div>
home.php
<?
include "cek_session_tu.php";
include"header2.php";
?>
<div id="mainright">
<h1>Selamat Datang di Halaman
Tata Usaha</h1>
<p>Mohon mengelola data dengan
baik dan benar<br />
Silakan pilh menu - menu yang
telah di sediakan
</div></div>
<?
include"footer2.php";
?>
form_login_tu.php
<?
include"koneksi.php";
include"header.php";
?>
xxx
<div id="maincont">
<div id="mainleft">
<h1>Selamat Datang di Halaman
Admin</h1>
<p>Selamat Datang di form Login
Tata Usaha
<div id="booking">
<h1>Login Tata Usaha</h1>
<form action="cek_login_tu.php"
method="post" name="login">
<table border="0" cellspacing="2"
cellpadding="0">
<tr><th>Nama</th>
<td><input name="username"
type="text" id="username"
size="25"></td>
</tr>
<tr><th>Password</th>
<td><input name="pass"
type="password" id="password"
size="25"></td>
</tr>
<tr>
<td><input name="login"
type="submit" id="login" value="
Masuk"></td>
</tr></table></form></div></div>
<div id="mainright">
<h1>Berita Terkini</h1><p>
<?
//tampilkan 2 berita terbaru
$sql = "select id,judul,isi from
berita order by id desc limit 0 ,
2";
$hasil =
mysql_query($sql,$connect);
while($row =
mysql_fetch_row($hasil))
{
print"<p>";
print"<div class=title><a
href='../berita_detil.php?id=$row[
0]'>$row[1]</a></div>";
printf("<div class=pagin>%s....<a
href='../berita_detil.php?id=$row[
0]'>Selengkapnya
</a></div>",
substr($row[2],0,100));
}
?>
<p><h2>Info - Info</h2>
<p>info PSB<br />
pendaftaran siswa baru akan
dimulai pada tanggal 12 Juli
sampai dengan 12 agustus <br />
<h3>Profil Singkat</h3>
<p><p>SMP PERWIRA Jakarta
didirikan pada tahun 1986, dimana
yayasan pendidikan Putra Indonesia
membawahi dua sekolah yaitu :
<br><li>SMP PERWIRA<li>SMK
PERWIRA<p>Diantara seolah tersebut
yang pertama kali berdiri adalah
SMP PERWIRA Jakarta yang berada
dalam satu lokasi yaitu Jl. H.
Dilun No. 4 Ulujami PEsanggrahan
Jakarta Selatan.</p></div></div>
<div id="menucont">
<ul><li><a class="active"
href="../index.php">Beranda</a></l
i><li><a
href="../profil.php">Profil SMP
PERWIRA</a></li><li><a
href="../berita.php">Berita
Terkini</a></li></ul></div>
<?
include"../footer.php";
?>
cek_login_tu.php
<?php
session_start();
include "koneksi.php";
$username = $_POST['username'];
$password = $_POST['pass'];
session_register("username");
session_register("password");
// mencari password terenkripsi
berdasarkan username
$query = "SELECT * FROM tata_usaha
WHERE nama = '$username'";
$hasil = mysql_query($query) or
die("Database Error");
$data =
mysql_fetch_array($hasil);
if(md5($password) ==
$data['password'])
{
$_SESSION['username'] =
$username;
$_SESSION['password'] =
md5($password);
header ("location: home.php");
exit;
} else {
?>
<script language="JavaScript">
alert('Nama atau password yang
Anda masukkan salah');
document.location='index.php'</scr
ipt>
<?
include_once "form_login_tu.php";
echo "<div align=center>Login
Admin / Password Anda Salah !
Silahkan Login Kembali
!!!</div><b>";
exit;
}
?>
siswa.php
<?
include"cek_session_tu.php";
include"koneksi.php";
session_start();
?>
<?include"header2.php";?>
<div id="mainright">
<h1>Daftar Siswa</h1>
<table border="0" cellspacing="0"
cellpadding="0">
<tr>
<th><div id="atasm">
<ul><li><a
href="form_tambah_siswa.php">Tamba
h Data Siswa
xxxi
</a></li></ul></div></th></tr></ta
ble><p>
<?
echo '<table class="tabel"
border="0" cellspacing="0"
cellpadding="0">';
echo '<tr class="style2">';
echo '<th width="30"
height="29"><div
align="center">NO</div></td>';
echo '<th>NIS</div></td>';echo
'<th>Nama</div></td>';
echo '<th>Tanggal
Lahir</div></td>';echo '<th>Tempat
Lahir</div></td>';echo '<th>Jenis
Kelamin</div></td>';echo '<th>Nama
Ayah</div></td>';echo '<th>Nama
Ibu</div></td>';echo
'<th>Alamat</div></td>';echo
'<th>Kelas</div></td>';echo
'<th>Pilihan</div></td>';echo
'</tr>';
$sql = "SELECT a.nis, a.nama,
a.tanggal_lahir, a.tempat_lahir,
a.jenis_kelamin, a.bapak, a.ibu,
a.alamat, b.nama_kelas FROM siswa
a join kelas b on b.kd_kls =
a.kd_kls ORDER BY a.kd_kls ASC";
$res = mysql_query($sql,$connect)
or die(mysql_error());
$no = 1;
while ($baris =
mysql_fetch_row($res))
{
echo '<tr>';
echo '<td><div
align="center">'.$no.'</div></td>'
;
echo '<td><div
align="center">'.$baris[0].'</td>'
;
echo '<td><div
align="center">'.$baris[1].'</td>'
;
echo '<td><div
align="center">'.$baris[2].'</td>'
;
echo '<td><div
align="center">'.$baris[3].'</td>'
;
if($baris[4]=="L")
$jenis_kelamin="Laki-laki";
if($baris[4]=="P")
$jenis_kelamin="Perempuan";
echo '<td><div
align="center">'.$jenis_kelamin.'<
/td>';
echo '<td><div
align="center">'.$baris[5].'</td>'
;
echo '<td><div
align="center">'.$baris[6].'</td>'
;
echo '<td><div
align="center">'.$baris[7].'</td>'
;
echo '<td><div
align="center">'.$baris[8].'</td>'
;
echo "<td><div class=pagin
align=\"center\"><a
href=\"form_edit_siswa.php?nis=$ba
ris[0]\"> Edit </a>|<a
href=\"cek_hapus_siswa.php?nis=$ba
ris[0]&ket=Hapus\"
Onclick=\"return confirm('Anda
yakin akan dihapus?');\"> Hapus
</a> </div></td>";
echo '</tr> ';
$no++;}
@mysql_close($connect);echo'</tabl
e>';echo'<p>';
?></div></div>
<?include"footer2.php";?>
form_tambah_siswa.php
<?
include"cek_session_tu.php";
include"koneksi.php";
session_start();
?><script
type="text/javascript"></script>
<?include"header2.php";?>
<style type="text/css">
<!--.style4 {font-size: 14px;
font-weight: bold; color:
#FFFFFF;}
</style>
<div id="mainright">
<h1>Tambah Siswa</h1>
<div id="booking">
<script language="JavaScript">
function cek_form() {
var a = formulir.nis.value var b =
formulir.nama.value
var c = formulir.tgl.value var d =
formulir.bln.value
var e = formulir.thn.value var f =
formulir.tempat_lahir.value
var g =
formulir.jenis_kelamin.value var h
= formulir.bapak.value
var i = formulir.ibu.value var j =
formulir.alamat.value
var k = formulir.password.value
var l = formulir.kls.value
var myRegExp = /^[\d]{4,4}$/; var
myRegExp2 = /^[A-Za-z ]{4,40}$/;
if
(a==""||b==""||c==""||d==""||e==""
||f==""||g==""||h==""||i==""||j=="
"||k==""||l=="") { alert('Mohon
Lengkapi Isian Form'); return
false;}
else if (!myRegExp.test(a)){
alert('ERORR !!! Nis Harus Berisi
Angka dan Memiliki 4 Digit');
return false;}
else if (!myRegExp2.test(b)){
alert('ERROR !!! Input Nama Siswa
Harus Berisi Huruf dan minimal 4
huruf'); return false; }
else if
(!myRegExp2.test(h)){alert('ERROR
!!! Input Nama Bapak Harus Berisi
Huruf dan minimal 4 huruf');
return false; }
else if
(!myRegExp2.test(i)){alert('ERROR
xxxii
!!! Input Nama Ibu Harus Berisi
Huruf dan minimal 4 huruf');
return false; }
else return true; }
</script>
<form
action="cek_tambah_siswa.php"
method="post" name="formulir" >
<table border="0" cellspacing="2"
cellpadding="0"><?php $msg =
$_GET[msg]; print"$msg<p>"; ?>
<tr><th>NIS</th><td><input
name="nis" type="text" id="nis"
size=30 />
</td></tr><tr><th>Nama
Lengkap</th>
<td><input name="nama" type="text"
id="nama" size=30 /></td></tr>
<tr><th>Tanggal
Lahir</th><td><select name="tgl"
id="tgl"><option value="">
<?php
for($i=01;$i<=31;$i++)
{print"<option
value=$i>$i</option>";}
?>
</select><select name="bln"
id="bln"><option value="">
<option
value="01">Januari</option><option
value="02">Februari</option>
<option
value="03">Maret</option><option
value="04">April</option>
<option
value="05">Mei</option><option
value="06">Juni</option>
<option
value="07">Juli</option><option
value="08">Agustus</option>
<option
value="09">September</option><opti
on value="10">Oktober</option>
<option
value="11">November</option><optio
n value="12">Desember</option>
</select>
<select name="thn"
id="thn"><option value="">
<?php
for($i=1970;$i<=2500;$i++)
{print"<option
value=$i>$i</option>";}
?></select></td></td></tr>
<tr><th>Tempat Lahir</th>
<td><input name="tempat_lahir"
type="text" id="tempat_lahir"
size=30 /></td></tr>
<tr><th>Jenis Kelamin</th><td>
<input type="radio"
name="jenis_kelamin"
id="jenis_kelamin" value="L"
checked/>Laki-
laki
<input type="radio"
name="jenis_kelamin"
id="jenis_kelamin"
value="P"/>Perempuan</td></tr>
<tr><th>Nama Bapak</th>
<td><input name="bapak"
type="text" id="bapak" size=30
/></td></tr>
<tr><th>Nama Ibu</th>
<td><input name="ibu" type="text"
id="ibu" size=30 /></td></tr>
<tr><th>Alamat</th>
<td><textarea name="alamat"
rows="5" cols="30"
id="alamat"></textarea></td></tr>
<tr><th>Password</th>
<td><input name="password"
type="password" id="password"
size=30 /></td>
</tr>
<tr><th>Kelas</th><td><select
name="kls" id="kls"><option
value="">
<?php
for($i=7;$i<=9;$i++)
{print"<option
value=$i>$i</option>";}
?>
</select>
<select name="sub"
id="sub"><option value="">
<?php
for($i=1;$i<=9;$i++)
{print"<option
value=$i>$i</option>";}
?>
</select></td></td>
<tr>
<td><input name="login"
type="submit" onClick="return
cek_form()" id="login" value="
Tambah "> <input name="reset"
type="reset" value="hapus" /></td>
</tr>
</tr>
</table></form></div></div></div>
<?
include"footer2.php";
?>
cek_tambah_siswa.php
<?
session_start();
include"cek_session_tu.php";
include"koneksi.php";
$nis = $_POST['nis'];
$nama = $_POST['nama'];
$tgl = $_POST['tgl'];
$bln = $_POST['bln'];
$thn = $_POST['thn'];
$tempat_lahir =
$_POST['tempat_lahir'];
$jenis_kelamin =
$_POST['jenis_kelamin'];
$bapak = $_POST['bapak'];
$ibu = $_POST['ibu'];
$alamat = $_POST['alamat'];
$password = $_POST['password'];
$added = $_POST['added'];
$kls = $_POST['kls'];
$sub = $_POST['sub'];
$valid = "^[A-Za-z ]+.{4,35}$";
$valid2 = "^[0-9 ]{7,20}$";
xxxiii
if(empty($nis)||empty($nama)||empt
y($tgl)||empty($bln)||empty($thn)|
|empty($tempat_lahir)||empty($jeni
s_kelamin)||empty($bapak)||empty($
ibu)||empty($alamat)||empty($passw
ord)||empty($added)||empty($kls)||
empty($sub)){
echo "<b>Form Tidak Lengkap,
Silakan Ulangi Kembali</b>";
echo "<br><a
href=form_tambah_siswa.php>Kembali
</a><hr>";die();
}
if(!eregi($valid, $nama))
{
echo "<b>Nama Tidak Valid</b>";
echo "<br><a
href=form_tambah_siswa.php>Kembali
</a><hr>";die();
}
if(!eregi($valid, $bapak))
{
echo "<b>Nama Ayah Tidak
Valid</b>";
echo "<br><a
href=form_tambah_siswa.php>Kembali
</a><hr>";die();
}
if(!eregi($valid, $ibu))
{
echo "<b>Nama Ibu Tidak
Valid</b>";
echo "<br><a
href=form_tambah_siswa.php>Kembali
</a><hr>";die();
}
$cek = "SELECT * FROM siswa WHERE
nis = '$nis'";
$jumlah = mysql_query($cek);
$data = mysql_num_rows($jumlah);
if ($data<1)
{
$sql = "insert into siswa
(nis,nama,tanggal_lahir,tempat_lah
ir,jenis_kelamin,bapak,ibu,alamat,
password,added,kd_kls) values
('$nis','$nama','$tgl-$bln-
$thn','$tempat_lahir','$jenis_kela
min','$bapak','$ibu','$alamat','$p
assword','$added','$kls$sub')";
$hasil =
mysql_query($sql,$connect) or
die(mysql_error());
?>
<script
language="JavaScript">
alert('Anda berhasil melakukan
registrasi Siswa');
document.location='siswa.php'</scr
ipt>
<?
echo "<b>Proses Registrasi Siswa
Sukses</b>";
echo "<br><a
href=guru.php>Kembali</a><hr>";die
();
}
else {
?>
<script
language="JavaScript">
alert('Nis Yang Dimasukan Sudah
Terdaftar. Silakan mengulang
registrasi');
document.location='form_tambah_sis
wa.php'</script>
<?
echo "<b>Nis Yang Dimasukan Sudah
Terdaftar, Silakan Ulangi
Pengisian form</b>";
echo "<br><a
href=guru.php>Kembali</a><hr>";die
();
}
?>
cek_hapus_siswa.php
<?php
include "cek_session_tu.php";
include "koneksi.php";
session_start();
$nis = $_GET['nis'];
if (empty($nis)) {
echo "ID Kosong";
echo "<br><a
href=siswa.php>Kembali</a><hr>";di
e();}
$sql = "DELETE FROM siswa WHERE
nis='$nis'";
$res = mysql_query($sql,$connect)
or die(mysql_error());
@mysql_close($koneksi);
?>
<script language="JavaScript">
alert('Proses Penghapusan Siswa
Sukses');
document.location='siswa.php'</scr
ipt>
<?
echo "Proses Penghapusan Siswa
Sukses";
echo "<br><a
href=siswa.php>Kembali</a><hr>";di
e();
?>
jadwal_pelajaran.php
<?
include"cek_session_tu.php";
include"koneksi.php";
session_start();
?>
<?
include"header2.php";
?>
<div id="mainright">
<h1>Daftar Jadwal
Pelajaran</h1>
<table border="0"
cellspacing="0" cellpadding="0">
<tr>
<th><div id="atasm">
xxxiv
<ul>
<li><a
href="form_tambah_jadwal.php">Tamb
ah Jadwal Pelajaran</a></li>
</ul>
</div></th>
</tr>
</table><p>
<div id="booking">
<table>
<tr>
<form name=formulir
action=jadwal_pelajaran.php
method=POST
enctype=multipart/form-data>
<th>Silakan Pilih Kelas</th>
<td><select name=kd id=kd> <option
value=""></option>
<?php
for($i=7;$i<=9;$i++)
{
print"<option
value=$i>$i</option>";
}
?>
</select>
<select name=kls id=kls><option
value=""></option>
<?php
for($i=1;$i<=9;$i++)
{
print"<option
value=$i>$i</option>";
}
?>
</select></td>
<td><input name="pilih"
type="submit" onClick="return
cek_form()" id="Pilih" value="
Pilih "></td></form>
</tr>
</table>
</div>
<?
$kd = $_POST['kd'];
$kls = $_POST['kls'];
if(isset($kd)&&isset($kls))
{
$hari =
array('senin','selasa','rabu','kam
is','jumat');
echo '<table class="tabel"
border="0" cellpadding="0"
cellspacing="0">';
echo '<tr>';
echo '<th>waktu</th>';
echo '<th>Mata
Pelajaran</th>';
echo '<th>Aksi</tr>';
for($i=0;$i<5;$i++)
{
echo '<tr><td colspan=2
>'.$hari[$i].'</td>';
echo '<td><div class=pagin><a
href=form_edit_jadwal.php?hari='.$
hari[$i].'&kd_kls='.$kd.$kls.'>edi
t</a></div></td></tr>';
$sql = "SELECT a.kd_mp, a.kd_kls,
a.hari_belajar, a.jam_belajar,
b.nama_mp FROM jadwal a join
mata_pelajaran b on b.kd_mp =
a.kd_mp WHERE a.kd_kls ='$kd$kls'
&& hari_belajar='$hari[$i]' ORDER
BY a.jam_belajar ASC";
$res = mysql_query($sql,$connect)
or die(mysql_error());
$jumlah = mysql_num_rows($res);
if ($jumlah>0)
{
while ($baris =
mysql_fetch_row($res))
{
echo '<tr>';
echo '<td><div
align="center">'.$baris[3].'</div>
</td>';
echo '<td><div
align="center">'.$baris[4].'</div>
</td>';
echo '<td></td>';
echo '</tr>';
}
}
else
{
echo '<tr>';
echo '<td><div align="center">-
</div></td>';
echo '<td><div align="center">Data
Kosong</div></td>';
echo '</tr>';
}
}
echo '</table>';
}
?>
</div>
</div>
<?
include"footer2.php";
?>
form_tambah_pelajaran.php
<?
include"cek_session_tu.php";
include"koneksi.php";
session_start();
?>
<script
type="text/javascript"></script>
<?
include"header2.php";
?>
<div id="mainright">
<h1>Tambah Mata
Pelajaran</h1>
<div id="booking">
<script language="JavaScript">
function cek_form() {
var a = formulir.kd_mp.value
var b = formulir.nama_mp.value
var c = formulir.nuptk.value
var myRegExp =
/^[\d,\s]{10,20}/;
var myRegExp2 = /^[a-z0-
9]{4,7}$/;
if (a==""||b==""||c=="") {
alert('Mohon Lengkapi Isian
Form');
xxxv
return false; }
else if (!myRegExp2.test(a)){
alert('Input Kode Mata Pelajaran
Harus Huruf Kecil / Angka dan min
4 max 7 karakter ');
return false;}
else return true;
}
</script>
<form name=formulir
action="cek_tambah_pelajaran.php"
method="POST"
enctype="multipart/form-data">
<table border="0" cellspacing="2"
cellpadding="0">
<tr>
<th>Kode Mata
Pelajaran</th>
<td><input
name="kd_mp" type="text"
id="kd_mp" size=30 />
</td>
</tr>
<tr>
<th>Nama Mata Pelajaran</th>
<td><input
name="nama_mp" type="text"
id="nama_mp" size=30 /></td>
</tr>
<tr>
<th>NUPTK Guru atau Pengajar</th>
<td>
<?php
$hasil = mysql_query("select
nuptk, nama from guru order by
nama asc");
printf("<select name=nuptk
id=nuptk><option value=>");
while($row=mysql_fetch_row($hasil)
)
{
print"<option
value='$row[0]'>$row[1]</option>";
}
printf("</select>");
?></td>
</td>
</tr>
<tr>
<td><input type="submit"
value="simpan" onclick="return
cek_form()"> <input name="reset"
type="reset" value="hapus" /></td>
</tr>
</tr>
</table>
</form>
</div>
</div>
</div>
<?
include"footer2.php";
?>
cek_tambah_pelajaran.php
<?
session_start();
include"cek_session_tu.php";
include"koneksi.php";
$kd_mp = $_POST['kd_mp'];
$nama_mp = $_POST['nama_mp'];
$nuptk = $_POST['nuptk'];
if(empty($kd_mp)||empty($nama_mp)|
|empty($nuptk)){
echo "Form Tidak Lengkap, Silakan
Ulangi Kembali";
echo "<br><a
href=form_tambah_pelajaran.php>Kem
bali</a><hr>";die();
}
$cek = "SELECT * FROM
mata_pelajaran WHERE kd_mp =
'$kd_mp'";
$jumlah = mysql_query($cek);
$data = mysql_num_rows($jumlah);
if ($data<1){
?>
<script
language="JavaScript">
alert('Mata Pelajaran Baru
Telah Ditambahkan');
document.location='matapelajaran.p
hp'</script>
<?
$sql = "insert into mata_pelajaran
(kd_mp,nama_mp,nuptk) values
('$kd_mp','$nama_mp','$nuptk')";
$hasil =
mysql_query($sql,$connect) or
die(mysql_error());
echo "Proses Penambahan Mata
Pelajaran Sukses";
echo "<br><a
href=matapelajaran.php>Kembali</a>
<hr>";die();
}
else {
?>
<script
language="JavaScript">
alert('Kode Mata Pelajaran yang
dimasukkan Sudah Ada. Silakan
mengulang Proses Penambahan Mata
Pelajaran');
document.location='form_tambah_pel
ajaran.php'</script>
<?
echo "Kode Mata Pelajaran Sudah
Terdaftar, Silakan Ulangi Proses
Penambahan";
echo "<br><a
href=matapelajaran.php>Kembali</a>
<hr>";die();
}
?>
form_edit_pelajaran.php
<?
include"cek_session_tu.php";
include"koneksi.php";
session_start();
include"header2.php";
xxxvi
$kd_mp = $_GET['kd_mp'];
$sql = mysql_query("SELECT
a.kd_mp, a.nuptk, a.nama_mp,
b.nama FROM mata_pelajaran a
join guru b on b.nuptk = a.nuptk
WHERE a.kd_mp='$kd_mp'");
while ($baris =
mysql_fetch_row($sql))
{
printf("
<div id=mainright>
<h1>Rubah Data Mata
Pelajaran</h1>
<div id=booking>
<form name=formulir
action=cek_edit_pelajaran.php
method=POST
enctype=multipart/form-data>
<table border=0 cellspacing=2
cellpadding=0>
<tr><input type=hidden name=kd_mp
value=\"$baris[0]\">
<th>Mata
Pelajaran</th>
<input type=hidden name=nama_mp
value=\"$baris[2]\">
<td><b>$baris[2]</b></td>
</td>
</tr>
<th>Guru Sekarang </th>
<td><b>$baris[3]</b></td>
</tr>
<tr>
<th>Pilih Guru Baru</th>
<td>");
$hasil = mysql_query("select
nuptk, nama from guru order by
nama asc");
printf("<select name=nuptk
id=nuptk><option value=>");
while($row=mysql_fetch_row($hasil)
)
{
print"<option
value='$row[0]'>$row[1]</option>";
}
printf("</select></td>
<tr>
<td><input type=submit
value=proses> </td>
</tr>
</tr>
</table>
</form>
</div>
</div>
</div>");
}
include"footer2.php";
?>
cek_edit_pelajaran.php
<?php
include"cek_session_tu.php";
include"koneksi.php";
session_start();
$kd_mp = $_POST['kd_mp'];
$nama_mp = $_POST['nama_mp'];
$nuptk = $_POST['nuptk'];
$valid = "^[0-9 ]{10,20}$";
if(!eregi($valid,$nuptk))
{
print "<script>alert('ERROR !!!
Input NUPTK Harus Berupa Angka Dan
Memiliki Minimal 10 dan Maksimal
20 digit');
javascript:history.go(-
1);</script>";
exit;
}
if(empty($kd_mp)||empty($nuptk))
{
print "<script>alert('ERROR !!!
Mohon Lengkapi Form');
javascript:history.go(-
1);</script>";
exit;}
$sql = "UPDATE mata_pelajaran SET
kd_mp='$kd_mp',
nama_mp='$nama_mp', nuptk='$nuptk'
WHERE kd_mp='$kd_mp'";
$res = mysql_query($sql,$connect)
or die(mysql_error());
@mysql_close($connect);
?>
<script language="JavaScript">
alert('Proses Update Mata
Pelajaran Berhasil');
document.location='matapelajaran.p
hp'</script>
<?
?>
}
?>
cek_hapus_pelajaran.php
<?php
include "cek_session_tu.php";
include "koneksi.php";
session_start();
$kd_mp = $_GET['kd_mp'];
if (empty($kd_mp)) {
echo "ID Kosong";
echo "<br><a
href=matapelajaran.php>Kembali</a>
<hr>";die();}
$sql = "DELETE FROM mata_pelajaran
WHERE kd_mp='$kd_mp'";
$res = mysql_query($sql,$connect)
or die(mysql_error());
@mysql_close($koneksi);
?>
<script language="JavaScript">
alert('Proses Penghapusan Mata
Pelajaran Sukses');
document.location='matapelajaran.p
hp'</script>
<?
echo "Proses Penghapusan Mata
Pelajaran Sukses";
echo "<br><a
href=matapelajaran.php>Kembali</a>
<hr>";die();
?>
xxxvii
uts.php
<?
include"cek_session_tu.php";
include"koneksi.php";
session_start();
?>
<?
include"header2.php";
?>
<div id="mainright">
<h1>Daftar Jadwal
UTS</h1>
<table border="0"
cellspacing="0" cellpadding="0">
<tr>
<th><div id="atasm">
<ul>
<li><a
href="form_tambah_uts.php">Tambah
Jadwal UTS</a></li>
</ul>
</div></th>
</tr>
</table><p>
<div id="booking">
<table>
<tr>
<form name=formulir
action=uts.php method=POST
enctype=multipart/form-data>
<th>Silakan Pilih Kelas</th>
<td><select name=kd id=kd> <option
value=""></option>
<?php
for($i=7;$i<=9;$i++)
{
print"<option
value=$i>$i</option>";
}
?>
</select>
<select name=kls id=kls><option
value=""></option>
<?php
for($i=1;$i<=9;$i++)
{
print"<option
value=$i>$i</option>";
}
?>
</select></td>
<td><input name="pilih"
type="submit" id="Pilih" value="
Pilih "></td></form>
</tr>
</table>
</div>
<?
session_register("smst");
$blnsmst = date("n");
if($blnsmst >= 1 && $blnsmst <= 6)
$_SESSION["smst"] = 2;
else
$_SESSION["smst"] = 1;
$kd_smt = $_SESSION["smst"];
$kd = $_POST['kd'];
$kls = $_POST['kls'];
if(isset($kd)&&isset($kls))
{
$utama = "SELECT nama_kelas FROM
kelas WHERE kd_kls ='$kd$kls'";
$abc =
mysql_query($utama,$connect) or
die(mysql_error());
$def = mysql_fetch_row($abc);
echo'<br><h1>Jadwal UTS Kelas ';
echo''.$def[0].'';
echo'Semester ke ';
echo''.$kd_smt.'</h1><p></p>';
$hari =
array('senin','selasa','rabu','kam
is','jumat');
echo '<table class="tabel"
border="0" cellpadding="0"
cellspacing="0">';
echo '<tr>';
echo '<th>waktu</th>';
echo '<th colspan=2>Mata
Pelajaran</th>';
echo '<th colspan=2>Aksi</tr>';
for($i=0;$i<5;$i++)
{
$sql = "SELECT a.kd_mp, a.kd_kls,
a.tgl_uts, a.hari_uts, a.jam_uts,
b.nama_mp FROM jadwal_uts a join
mata_pelajaran b on b.kd_mp =
a.kd_mp WHERE a.kd_kls ='$kd$kls'
&& hari_uts='$hari[$i]' &&
kd_smt='$kd_smt'ORDER BY a.jam_uts
ASC";
$res = mysql_query($sql,$connect)
or die(mysql_error());
$hasil = mysql_fetch_row($res);
echo
'<tr><td>'.$hari[$i].', '.$ha
sil[2].'</td>';
echo '<td align=center></td>';
echo '<td><div class=pagin><a
href=form_edit_uts.php?hari='.$har
i[$i].'&kd_kls='.$kd.$kls.'&tgl_ut
s='.$hasil[2].'>edit</a></td><td><
div class=pagin><a
href=cek_hapus_uts.php?hari='.$har
i[$i].'&kd_kls='.$kd.$kls.'&tgl_ut
s='.$hasil[2].' Onclick=\'return
confirm("Anda yakin akan
dihapus?");\')>hapus</a></div></di
v></td></tr>';
$sql = "SELECT a.kd_mp, a.kd_kls,
a.tgl_uts, a.hari_uts, a.jam_uts,
b.nama_mp FROM jadwal_uts a join
mata_pelajaran b on b.kd_mp =
a.kd_mp WHERE a.kd_kls ='$kd$kls'
&& hari_uts='$hari[$i]' &&
kd_smt='$kd_smt'ORDER BY a.jam_uts
ASC";
$res = mysql_query($sql,$connect)
or die(mysql_error());
$jumlah = mysql_num_rows($res);
if ($jumlah>0)
{
while ($baris =
mysql_fetch_row($res))
{
echo '<tr>';
echo '<td><div
align="center">'.$baris[4].'</div>
</td>';
xxxviii
echo '<td><div
align="center">'.$baris[5].'</div>
</td>';
echo '<td></td>';
echo '<td></td>';
echo '</tr>';
}
}
else
{
echo '<tr>';
echo '<td><div align="center">-
</div></td>';
echo '<td colspan=4><div
align="left"><b>Data
Kosong</b></div></td>';
echo '</tr>';
}
}
echo '</table>';
}
?>
</div>
</div>
<?
include"footer2.php";
?>
form_tambah_uts.php
<?
include"cek_session_tu.php";
include"koneksi.php";
session_start();
?>
<script
type="text/javascript"></script>
<?
include"header2.php";
?>
<?
session_register("smst");
$blnsmst = date("n");
if($blnsmst >= 1 && $blnsmst <= 6)
$_SESSION["smst"] = 2;
else
$_SESSION["smst"] = 1;
$kd_smt = $_SESSION["smst"];
?>
<div id="mainright">
<h1>Tambah Jadwal UTS
Semester Ke <?
printf($kd_smt);?></h1>
<div id="booking">
<script language="JavaScript">
function cek_form() {
var a = formulir.kd_mp_1.value
var b = formulir.kd_mp_2.value
var c = formulir.kd_kls.value
var d = formulir.hari_uts.value
var e = formulir.jam_uts.value
if
(a==""||b==""||c==""||d=""||e="")
{ alert('Mohon Lengkapi Isian
Form');
return false; }
else return true;
}
</script>
<form name=formulir
action="cek_tambah_uts.php"
method="POST"
enctype="multipart/form-data">
<table border="0" cellspacing="2"
cellpadding="0">
<tr>
<th>Kelas</th>
<td><?php
$hasil = mysql_query("select
kd_kls, nama_kelas from kelas
order by kd_kls asc");
printf("<select name=kd_kls
id=kd_kls><option value=>");
while($row=mysql_fetch_row($hasil)
)
{
print"<option
value='$row[0]'>$row[1]</option>";
}
printf("</select>");
?>
</td>
</tr>
<tr>
<th>Hari</th>
<td><select
name="hari_uts">
<?
$hari =
array("","senin","selasa","rabu","
kamis","jumat");
for($i=0;$i<=5;$i++)
{
echo"<option
value='".$hari[$i]."'>";
if ($hari_uts==$i)
echo"";
echo"".$hari[$i]."</option>";
}
?>
</select></td>
</tr>
<tr>
<th>Tanggal</th>
<td><select name="tgl"
id="tgl"><option value="">
<?php
for($i=01;$i<=31;$i++)
{
print"<option
value=$i>$i</option>";
}
?>
</select>
<select name="bln"
id="bln"><option value="">
<option
value="01">Januari</option>
<option
value="02">Februari</option>
<option value="03">Maret</option>
<option value="04">April</option>
<option value="05">Mei</option>
<option value="06">Juni</option>
<option value="07">Juli</option>
<option
value="08">Agustus</option>
<option
value="09">September</option>
xxxix
<option
value="10">Oktober</option>
<option
value="11">November</option>
<option
value="12">Desember</option>
</select>
<select name="thn"
id="thn"><option value="">
<?php
for($i=1970;$i<=2500;$i++)
{
print"<option
value=$i>$i</option>";
}
?>
</select></td>
</tr>
<tr>
<th>07:00 - 09:00</th>
<td>Mata Pelajaran</td>
<tr>
<td><td><?php
$hasil = mysql_query("select
kd_mp, nama_mp from mata_pelajaran
order by kd_mp asc");
printf("<select name=kd_mp_1
id=kd_mp><option value=>");
while($row=mysql_fetch_row($hasil)
)
{
print"<option
value='$row[0]'>$row[1]</option>";
}
printf("</select>");
?>
</td></td>
</tr>
</tr>
<tr>
<th>09:00 - 11:00</th>
<td>Mata Pelajaran</td>
<tr>
<td><td><?php
$hasil = mysql_query("select
kd_mp, nama_mp from mata_pelajaran
order by kd_mp asc");
printf("<select name=kd_mp_2
id=kd_mp><option value=>");
while($row=mysql_fetch_row($hasil)
)
{
print"<option
value='$row[0]'>$row[1]</option>";
}
printf("</select>");
?>
</td></td>
</tr>
</tr>
<tr>
<td><td><input type="submit"
value="simpan" onclick="return
cek_form()"> <input name="reset"
type="reset" value="hapus"
/></td></td>
</tr>
</table>
</form>
</div>
</div>
</div>
<?
include"footer2.php";
?>
cek_tambah_uts.php
<?php
include"cek_session_tu.php";
include"koneksi.php";
include"header2.php";
session_start();
$kd_mp_1 = $_POST['kd_mp_1'];
$kd_mp_2 = $_POST['kd_mp_2'];
$kd_kls = $_POST['kd_kls'];
$hari_uts = $_POST['hari_uts'];
$tgl = $_POST['tgl'];
$bln = $_POST['bln'];
$thn = $_POST['thn'];
$kd_smt = $_SESSION["smst"];
$cek = "SELECT * FROM jadwal_uts
WHERE kd_mp = '$kd_mp_1' AND
kd_kls = '$kd_kls' AND kd_smt =
'$kd_smt'";
$jumlah = mysql_query($cek);
$data = mysql_num_rows($jumlah);
if ($data<1){
$tes = "SELECT * FROM jadwal_uts
WHERE kd_mp = '$kd_mp_2' AND
kd_kls = '$kd_kls' AND kd_smt =
'$kd_smt'";
$total = mysql_query($tes);
$isi = mysql_num_rows($total);
if ($isi<1){
$sql = "INSERT INTO jadwal_uts
(kd_mp,kd_kls,tgl_uts,hari_uts,jam
_uts,kd_smt) VALUES
('$kd_mp_1','$kd_kls','$tgl-$bln-
$thn','$hari_uts','07:00 -
09:00','$kd_smt')";
$res = mysql_query($sql,$connect)
or die(mysql_error());
$sql = "INSERT INTO jadwal_uts
(kd_mp,kd_kls,tgl_uts,hari_uts,jam
_uts,kd_smt) VALUES
('$kd_mp_2','$kd_kls','$tgl-$bln-
$thn','$hari_uts','09:00 -
11:00','$kd_smt')";
$res = mysql_query($sql,$connect)
or die(mysql_error());
?>
<script language="JavaScript">
alert('Proses Tambah Jadwal UTS
Berhasil');
document.location='uts.php'</scrip
t>
<?
}
else{
?>
<script
language="JavaScript">
alert('Jadwal UTS Jam Kedua Sudah
terdaftar, silakan ulangi');
history.go(-1)</script>
<?
}
xl
}
else{
?>
<script
language="JavaScript">
alert('Jadwal UTS Jam Pertama
Sudah terdaftar, silakan ulangi');
history.go(-1)</script>
<?
}
@mysql_close($connect);
include"footer2.php";
?>
bayaran.php
<?
include"cek_session_tu.php";
include"koneksi.php";
session_start();
?>
<?
include"header2.php";
?>
<div id="mainright">
<h1>Daftar Bayaran</h1>
<table border="0"
cellspacing="0" cellpadding="0">
<tr>
<th><div id="atasm">
<ul>
<li><a
href="form_tambah_bayar.php">Tamba
h Bayaran</a></li>
</ul>
</div></th>
</tr>
</table><p>
<div id="booking">
<table>
<tr>
<form name=formulir
action=bayaran.php method=POST
enctype=multipart/form-data>
<td>Silakan Pilih Kelas</td>
<td>
<?php
$hasil = mysql_query("select
kd_kls, nama_kelas from kelas
order by kd_kls asc");
printf("<select name=kd_kls
id=kd_kls><option value=>");
while($row=mysql_fetch_row($hasil)
)
{
print"<option
value='$row[0]'>$row[1]</option>";
}
printf("</select>");
?>
</td>
<td><input name="pilih"
type="submit" id="Pilih"
value="Pilih"></td></form>
</tr>
</table>
</div>
<?
$kd_kls = $_POST['kd_kls'];
if(isset($kd_kls))
{
$kelas ="select kd_kls, nama_kelas
from kelas WHERE kd_kls
='$kd_kls'";
$kll =
mysql_query($kelas,$connect) or
die(mysql_error());
$h = mysql_fetch_row($kll);
echo '<b>Silakan Piih Siswa Kelas
</b>';
echo
'<b> '.$h[1].'</b><p>';
echo '<table class="tabel"
border="0" cellpadding="0"
cellspacing="0">';
echo '<tr>';
echo '<th>No.</td>';
echo '<th>Nis</td>';
echo '<th>Nama</td>';
echo '<th colspan="2"
align="center">Aksi</td>';
echo '</tr>';
$sql = "SELECT nis, nama, kd_kls
FROM siswa WHERE kd_kls ='$kd_kls'
order by nis asc";
$res = mysql_query($sql,$connect)
or die(mysql_error());
$jumlah = mysql_num_rows($res);
if ($jumlah>0){
$no = 1;
while ($baris =
mysql_fetch_row($res))
{
echo '<tr>';
echo '<td><div
align="center">'.$no.'</div></td>'
;
echo '<td><div
align="center">'.$baris[0].'</div>
</td>';
echo '<td><div
align="center">'.$baris[1].'</div>
</td>';
echo "<td><div class=pagin><a
href=\"siswa_bayar.php?nis=$baris[
0]\">pilih</a></td></tr>";
echo '</tr>';
$no++;
}
}
else {
$kelas ="select kd_kls, nama_kelas
from kelas WHERE kd_kls
='$kd_kls'";
$kll =
mysql_query($kelas,$connect) or
die(mysql_error());
$h = mysql_fetch_row($kll);
echo '<b>Maaf !! Data Siswa Kelas
</b>';
echo '<b>'.$h[1].' Masih
Kosong</b><p>';
}
echo '</table>';
}
?>
</div>
</div>
<?
xli
include"footer2.php";
?>
form_tambah_bayar.php
<?
include"cek_session_tu.php";
include"koneksi.php";
session_start();
?>
<script
type="text/javascript"></script>
<?
include"header2.php";
?>
<div id="mainright">
<h1>Tambah Data
Bayaran</h1>
<div id="booking">
<form name=formulir
action="cek_tambah_bayar.php"
method="POST"
enctype="multipart/form-data">
<table border="0" cellspacing="2"
cellpadding="0">
<tr>
<th>Nis Siswa</th>
<td>
<?php
$hasil = mysql_query("select nis
from siswa order by nis asc");
printf("<select name=nis
id=nis><option value=>");
while($row=mysql_fetch_row($hasil)
)
{
print"<option
value='$row[0]'>$row[0]</option>";
}
printf("</select>");
?>
</td>
</tr>
<tr>
<th>Pembayaran Bulan</th>
<td>
<select name="bln_byr"
id="bln_byr"><option value="">
<?
$bln =
array("","Januari","Februari","Mar
et","April","Mei","Juni","Juli","A
gustus","September","Oktober","Nov
ember","Desember");
for($i=1;$i<=12;$i++)
{
echo"<option
value='".$bln[$i]."'>";
if ($bln_byr==$bln[$i])
echo"selected";
echo"".$bln[$i]."</option>";
}
?>
</select>
</td>
</tr>
<tr>
<th>Tanggal Bayar</th>
<td>
<select name="tgl"
id="tgl"><option value="">
<?php
for($i=01;$i<=31;$i++)
{
print"<option
value=$i>$i</option>";
}
?>
</select>
<select name="bln"
id="bln"><option value="">
<option
value="01">Januari</option>
<option
value="02">Februari</option>
<option value="03">Maret</option>
<option value="04">April</option>
<option value="05">Mei</option>
<option value="06">Juni</option>
<option value="07">Juli</option>
<option
value="08">Agustus</option>
<option
value="09">September</option>
<option
value="10">Oktober</option>
<option
value="11">November</option>
<option
value="12">Desember</option>
</select>
<select name="thn"
id="thn"><option value="">
<?php
for($i=1900;$i<=2500;$i++)
{
print"<option
value=$i>$i</option>";
}
?>
</select>
</td>
</tr>
<tr>
<th>Keterangan</th>
<td>
<select name="keterangan"
id="keterangan"><option value="">
<option
value="Lunas">Lunas</option>
<option value="Belum Lunas">Belum
Lunas</option>
</select>
</td>
</tr>
<tr>
<tr>
<td><input type="submit"
value="simpan"> <input
name="reset" type="reset"
value="hapus" /></td>
</tr>
</tr>
</table>
</form>
</div>
</div>
</div>
xlii
<?
include"footer2.php";
?>
cek_tambah_bayar.php
<?
session_start();
include"cek_session_tu.php";
include"koneksi.php";
$nis = $_POST['nis'];
$bln_byr = $_POST['bln_byr'];
$tgl = $_POST['tgl'];
$bln = $_POST['bln'];
$thn = $_POST['thn'];
$keterangan =
$_POST['keterangan'];
if(empty($nis)||empty($bln_byr)||e
mpty($tgl)||empty($bln)||empty($th
n)||empty($keterangan)){
echo "Form Tidak Lengkap, Silakan
Ulangi Kembali";
echo "<br><a
href=form_tambah_bayar.php>Kembali
</a><hr>";die();
}
$cek = "SELECT * FROM bayar WHERE
nis = '$nis' AND bln_byr =
'$bln_byr' AND tgl_byr = '$tgl-
$bln-$thn'";
$jumlah = mysql_query($cek);
$data = mysql_num_rows($jumlah);
if ($data<1)
{
$sql = "insert into bayar (nis,
bln_byr, tgl_byr, keterangan)
values ('$nis', '$bln_byr', '$tgl-
$bln-$thn', '$keterangan')";
$hasil =
mysql_query($sql,$connect) or
die(mysql_error());
?>
<script
language="JavaScript">
alert('Daftar Bayaran Telah
Ditambahkan');
document.location='bayaran.php'</s
cript>
<?
echo "Proses Penambahan Daftar
Bayaran Baru Sukses";
echo "<br><a
href=bayaran.php>Kembali</a><hr>";
die();
}
else {
?>
<script
language="JavaScript">
alert('Daftar Bayaran Yang
Dimasukan Sudah Ada. Silakan
mengulang Proses Penambahan Daftar
Bayaran');
document.location='form_tambah_bay
ar.php'</script>
<?
echo "Daftar Bayaran Sudah Ada,
Silakan Ulangi Proses Penambahan
Daftar Bayaran";
echo "<br><a
href=form_tambah_bayar.php>Kembali
</a><hr>";die();
}
?>
form_edit_bayar.php
<?
include"cek_session_tu.php";
include"koneksi.php";
session_start();
include"header2.php";
$id = $_GET['id'];
$sql = mysql_query("SELECT a.id,
a.nis, a.bln_byr, a.tgl_byr,
a.keterangan, b.nama FROM bayar a
join siswa b on b.nis = a.nis
WHERE a.id='$id'");
while ($baris =
mysql_fetch_row($sql))
{
printf("
<div id=mainright>
<h1>Rubah Data
Bayaran</h1>
<div id=booking>
<form name=formulir
action=cek_edit_bayar.php
method=POST
enctype=multipart/form-data>
<table border=0 cellspacing=2
cellpadding=0>
<tr>
<th>Nis</th>
<td><b>$baris[1]</b></td>
<input type=hidden name=id
value=\"$baris[0]\">
<input type=hidden name=nis
value=\"$baris[1]\">
<input type=hidden name=bln_byr
value=\"$baris[2]\">
</tr>
<tr>
<th>Nama</th>
<td><b>$baris[5]</b></td>
</tr>
<th>Bulan Bayar</th>
<td><b>$baris[2]</b></td>
</tr>
<th>Ubah Tanggal Bayar</th>
<td>");
printf("<select name=tgl
id=tgl><option value=>");
for($i=01;$i<=31;$i++)
{
printf("<option
value=$i>$i</option>");
}
printf("</select>
<select name=bln id=bln><option
value=>
<option value=01>Januari</option>
<option value=02>Februari</option>
<option value=03>Maret</option>
xliii
<option value=04>April</option>
<option value=05>Mei</option>
<option value=06>Juni</option>
<option value=07>Juli</option>
<option value=08>Agustus</option>
<option
value=09>September</option>
<option value=10>Oktober</option>
<option value=11>November</option>
<option value=12>Desember</option>
</select>
<select name=thn id=thn><option
value=>");
for($i=1900;$i<=2500;$i++)
{
printf("<option
value=$i>$i</option>");
}
printf("</select>
</td>
</tr>
<tr>
<th>Ubah Keterangan</th>
<td>
<select name=keterangan
id=keterangan><option value=>
<option value=Lunas>Lunas</option>
<option value=Belum Lunas>Belum
Lunas</option>
</select>
</td>
</tr>
<tr>
<td><input type=submit
value=proses> </td>
</tr>
</tr>
</table>
</form>
</div>
</div>
</div>");
}
include"footer2.php";
?>
cek_session_tu.php
<?php
session_start();
if (!isset($_SESSION['username']))
{
echo "<br><center>Maaf, anda belum
login sebagai Tata Usaha<br>";
echo "<center>Silakan login
terlebih dahulu <b><a
href=index.php>di sini</a>";
exit;
}
?>
footer2.php
<div id="menucont">
<ul>
<li></li>
<li><a
href="logout.php">Keluar</a></li>
<li><a
href="ganti_pass.php">Ganti
Password</a></li>
</ul>
</div>
<div id="footercont">
<ul>
<li>Copyright @2010 </li><br />
<li>Design by : Riki Danang |
<a
href="http://facebook/adamyramaz">
FB Account :
[email protected]</a></li
><br><li>today is : <?php print
date("j F Y");?></li>
</ul>
</div>
</div>
</div>
</div>
</body>
</html>
b. Wali Kelas
Form_login_wk.php
<?
include"koneksi.php";
include"header.php";
?>
<div id="maincont">
<div id="mainleft">
<h1>Selamat Datang di
Halaman Admin</h1>
<p>Selamat Datang di form Login
Wali Kelas
<div id="booking">
<h1>Login Wali Kelas</h1>
<form action="cek_login_wk.php"
method="post" name="login">
<table border="0"
cellspacing="2" cellpadding="0">
<tr>
<th>NUPTK</th>
<td><input
name="nuptk" type="text"
id="nuptk" size="25"></td>
</tr>
<tr>
<th>Password</th>
<td><input
name="pass" type="password"
id="password" size="25"></td>
</tr>
</table>
<tr>
<td><input
name="login" type="submit"
id="login" value=" Masuk"></td>
</tr>
</form>
</div>
</div>
<div id="mainright">
<h1>Berita Terkini</h1>
<p>
<?
//tampilkan 2 berita
xliv
terbaru
$sql = "select
id,judul,isi from berita order by
id desc limit 0 , 2";
$hasil =
mysql_query($sql,$connect);
while($row =
mysql_fetch_row($hasil))
{
print"<p>";
print"<div class=title><a
href='../berita_detil.php?id=$row[
0]'>$row[1]</a></div>";
printf("<div
class=pagin>%s....<a
href='../berita_detil.php?id=$row[
0]'>Selengkapnya
</a></div>",
substr($row[2],0,100));
}
?>
<p><h2>Info - Info</h2>
<p>info PSB<br />
pendaftaran siswa baru akan
dimulai pada tanggal 12 Juli
sampai dengan 12 agustus <br />
<h3>Profil Singkat</h3>
<p><p>SMP PERWIRA
Jakarta didirikan pada tahun 1986,
dimana yayasan pendidikan Putra
Indonesia membawahi dua sekolah
yaitu :
<br>
<li>SMP PERWIRA
<li>SMK PERWIRA
<p>Diantara seolah tersebut yang
pertama kali berdiri adalah SMP
PERWIRA Jakarta yang berada dalam
satu lokasi yaitu Jl. H. Dilun No.
4 Ulujami PEsanggrahan Jakarta
Selatan.</p>
</div>
</div>
<div id="menucont">
<ul>
<li><a class="active"
href="../index.php">Beranda</a></l
i>
<li><a
href="../profil.php">Profil SMP
PERWIRA</a></li>
<li><a
href="../berita.php">Berita
Terkini</a></li>
</ul>
</div>
<?
include"../footer.php";
?>
nilai.php
<?
include"cek_session_wk.php";
include"koneksi.php";
session_start();
?>
<?
include"header2.php";
?>
<div id="mainright">
<form name="formulir"
method="POST" action="nilai.php">
<h1>Daftar Nilai</h1>
<div id="booking">
<table>
<tr>
<td><b>Pilih jenis
nilai</b></td>
<td>:</td>
<td>
<select name=jenis
id=jenis>
<option
value=""></option>
<option value=nilai_uts>nilai
uts</option>";
<option value=nilai_uas>nilai
uas</option>";
<option value=nilai_rapor>nilai
rapor</option>";
</select>
</tr>
<tr>
<td><b>Pilih Semester</b></td>
<td>:</td>
<td>
<select name="smt">
<option
value=""></option>
<option
value="1">1</option>
<option
value="2">2</option>
</select>
</td>
</tr>
<tr>
<td></td>
<td></td>
<td><input type="submit"
name="submit" value="pilih"/></td>
</tr>
</form>
</table>
</div>
<?
$jenis = $_POST['jenis'];
$smt = $_POST['smt'];
$submit = $_POST['submit'];
if($submit)
{
if($jenis == "" || $smt == "")
{
//pesan error
?>
<script language="javascript">
alert("mohon lengkapi pilihan
isian!");
</script>
<?php
}
else
{
echo '<table class="tabel"
border="0" cellspacing="0"
cellpadding="0">';
if ($jenis == nilai_uts) $b
="Nilai UTS";
if ($jenis == nilai_uas) $b
xlv
="Nilai UAS";
if ($jenis == nilai_rapor) $b
="Nilai Rapor";
echo '<tr><h1>Daftar '.$b.'
Semester Ke : '.$smt.'</h1></tr>';
echo '<tr class="style2">';
echo '<th width="30"
height="29"><div
align="center">NO</div></td>';
echo '<th>NIS</td>';
echo '<th>Nama Siswa</td>';
echo '<th>Agama Islam</td>';
echo '<th>Bahasa Indonesia</td>';
echo '<th>Bahasa Inggris</td>';
echo '<th>IPA</td>';
echo '<th>IPS</td>';
echo '<th>KTK</td>';
echo '<th>Matematika</td>';
echo '<th>Muatan Lokal</td>';
echo '<th>PENJASKES</td>';
echo '<th>PPKN</td>';
echo '<th>Komputer</td>';
echo '<th>Jumlah</td>';
echo '<th>Rataan</td>';
echo '</tr>';
$sql = "SELECT nis, kd_mp,
".$jenis." FROM nilai WHERE
kd_smt='".$smt."' AND
kd_kls='".$_SESSION[kd_kls]."'
ORDER BY nis ASC";
$res = mysql_query($sql,$connect)
or die(mysql_error());
//input to array
$kd_mp1 =
array("agama1","bind1","bing1","ip
a1","ips1","ktk1","mat1","mulok1",
"penjas1","ppkn1","tik1");
$kd_mp2 =
array("agama2","bind2","bing2","ip
a2","ips2","ktk2","mat2","mulok2",
"penjas2","ppkn2","tik2");
$kd_mp3 =
array("agama3","bind3","bing3","ip
a3","ips3","ktk3","mat3","mulok3",
"penjas3","ppkn3","tik3");
//tentukan kelas
if(substr($_SESSION[kd_kls],0,1)==
"7")
$kd_mp = $kd_mp1;
else
if(substr($_SESSION[kd_kls],0,1)==
"8")
$kd_mp = $kd_mp2;
else
if(substr($_SESSION[kd_kls],0,1)==
"9")
$kd_mp = $kd_mp3;
//$nilai = array[][];
$i = 0;
$j = 0;
while($b = mysql_fetch_row($res))
{
for($k=0;$k<=11;$k++)
{
if($b[1] == $kd_mp[$k])
{
$kdmp = $kd_mp[$k];
$nilai[$i][$kdmp] = $b[2];
$jumlah[$i] += $b[2];
}
}
$j++;
if($j > 10)//jumlah pelajaran - 1
{
$nis[$i] = $b[0];
$i++;
$j = 0;
}
}
// tampilkan
$no = 1;
$baris = $i;
$kolom = $j;
for($i=0; $i < $baris; $i++ )
{
echo '<tr>';
echo '<td><div
align="center">'.$no.'</div></td>'
;
echo '<td><div
align="center">'.$nis[$i].'</div><
/td>';
//ambil nama
$sql = "SELECT nama FROM siswa
WHERE nis='".$nis[$i]."'";
$res = mysql_query($sql,$connect)
or die(mysql_error());
$b = mysql_fetch_row($res);
echo '<td><div
align="center">'.$b[0].'</div></td
>';
for($j=0; $j < 11; $j++ )
{
$kdmp = $kd_mp[$j];
echo '<td><div
align="center">'.$nilai[$i][$kdmp]
.'</td>';
}
echo '<td><div
align="center">'.$jumlah[$i].'</td
>';
printf("<td><div
align='center'>%.2f</td>",($jumlah
[$i]/11));
echo '</tr> ';
$no++;
}
@mysql_close($connect);
echo'</table>';
echo'<p>';
}
}
?>
</div>
</div>
<?
include"footer2.php";
?>
rapor.php
<?
include"cek_session_wk.php";
include"koneksi.php";
session_start();
?>
<script
type="text/javascript"></script>
<?
xlvi
include"header2.php";
?>
<div id="mainright">
<h1>Daftar Rapor</h1>
<?php
$delete=$_GET['delete'];
if ($delete == 1)
{
$nis = $_GET['nis'];
$semester = $_GET['semester'];
if (empty($nis)||empty($semester))
{
echo "ID Kosong";
echo "<br><a
href=rapor.php>Kembali</a><hr>";di
e();}
$sql = "DELETE FROM rapor WHERE
nis='$nis' AND
semester='$semester' AND
nuptk='".$_SESSION[nuptk]."'";
$res = mysql_query($sql,$connect)
or die(mysql_error());
@mysql_close($koneksi);
echo "<br><div id = per align =
center><h1>Proses Penghapusan Data
Rapor Berhasil </h1></div><br>";
}
?>
<div id="booking">
<table>
<form name="formulir"
method="POST" action="rapor.php">
<tr>
<td><b>Pilih Semester</b></td>
<td>:</td>
<td>
<select name="smt">
<option value=""></option>
<option
value="1">1</option>
<option
value="2">2</option>
</select>
</td>
<td></td>
<td><input type="submit"
name="submit" value="pilih"/></td>
</tr>
</form>
</table>
</div>
<p><p>
<script language="JavaScript">
function cek_form() {
var a = formulir2.nis.value
var b = formulir2.smt.value
if (a==""||b=="") { alert('Mohon
Lengkapi Isian Form');
return false; }
else return true;
}
</script>
<form name="formulir2"
method="POST"
action="form_tambah_rapor.php">
<h1>Tambah Rapor</h1>
<div id="booking">
<table>
<tr>
<td><b>Pilih Siswa</b></td>
<td>:</td>
<td>
<?php
$hasil = mysql_query("select nis,
nama from siswa where
kd_kls='".$_SESSION[kd_kls]."'
order by nama asc");
printf("<select name=nis
id=nis><option value=>");
while($row=mysql_fetch_row($hasil)
)
{
print"<option
value='$row[0]'>$row[1]</option>";
}
printf("</select>");
?>
</select>
</td>
<td><input type="submit"
name="submit" value="tambah"
onclick="return cek_form()"/></td>
</tr>
<tr>
<td><b>Pilih Semester</b></td>
<td>:</td>
<td>
<select name="smt">
<option value=""></option>
<option
value="1">1</option>
<option
value="2">2</option>
</select>
</td>
</tr>
</form>
</table><p><p>
</div>
<?
$smt = $_POST['smt'];
if($smt == "")$smt =
$_GET['semester'];
$submit = $_POST['submit'];
if(!$submit)$submit =
$_GET['submit'];
if($submit)
{
if($smt =="")
{
//pesan error
?>
<script language="javascript">
alert("mohon lengkapi pilihan
isian!");
</script>
<?php
}
else
{
echo '<tr><td><h1>Daftar Rapor
Semester Ke :
'.$smt.'</h1><td></tr>';
echo '<table class="tabel"
border="0" cellpadding="0"
cellspacing="0">';
echo '<tr>';
xlvii
echo '<th>No</div></td>';
echo '<th>NIS</div></td>';
echo '<th>Nama</div></td>';
echo '<th>Sakit</div></td>';
echo '<th>Izin</div></td>';
echo '<th>Alpa</div></td>';
echo '<th>Nilai Akhir</div></td>';
echo '<th>Nilai Rata -
Rata</div></td>';
echo '<th>Catatan orang
tua</div></td>';
echo '<th>Kenaikan</div></td>';
echo '<th>Pilihan</div></td>';
echo '</tr>';
$sql = "SELECT a.nis,
a.jumlah_sakit, a.jumlah_izin,
a.jumlah_alpa,
a.catatan_orang_tua, a.kenaikan,
a.semester, b.nama FROM rapor a
join siswa b on b.nis = a.nis
WHERE a.semester = '$smt' &&
a.nuptk ='".$_SESSION[nuptk]."'
ORDER BY nis ASC";
$result =
mysql_query($sql,$connect) or
die(mysql_error());
$isi = mysql_num_rows($result);
if ($isi>0)
{
$no = 1;
while ($baris =
mysql_fetch_row($result))
{
echo '<tr color="blue">';
echo '<td><div
align="center">'.$no.'</div></td>'
;
echo '<td><div
align="center">'.$baris[0].'</div>
</td>';
echo '<td><div
align="center">'.$baris[7].'</div>
</td>';
echo '<td><div
align="center">'.$baris[1].'</div>
</td>';
echo '<td><div
align="center">'.$baris[2].'</div>
</td>';
echo '<td><div
align="center">'.$baris[3].'</div>
</td>';
$data = "SELECT nilai_rapor FROM
nilai WHERE nis='$baris[0]' AND
kd_smt='$baris[6]'ORDER BY nis
ASC";
$res = mysql_query($data,$connect)
or die(mysql_error());
$jumlah = 0;
while($b =
mysql_fetch_row($res))
{
$jumlah += $b[0];
}printf("<td><div
align=center><b>");
printf($jumlah);
printf("</b></div></td>");
$rataan = $jumlah/11;
printf("<td><div
align=center><b>");
printf("%.2f",$rataan);
printf("</b></div></td>");
echo '<td><div
align="center">'.$baris[4].'</div>
</td>';
echo '<td><div
align="center">'.$baris[5].'</div>
</td>';
echo '<td><div class=pagin ><a
href=form_edit_rapor.php?nis='.$ba
ris[0].'&semester='.$smt.'> Edit
</a>|<a
href=rapor.php?nis='.$baris[0].'&s
emester='.$smt.'&delete=1&submit=1
Onclick=\'return confirm("Anda
yakin akan dihapus?");\'>Hapus</a>
';
echo '</tr> ';
}
}
else
{
echo '<tr>';
echo '<th></td>';
echo '<th>Data
Kosong</div></td>';
echo '<th>Data Kosong</td>';
echo '<th>Data Kosong</td>';
echo '<th>Data Kosong</td>';
echo '<th>Data Kosong</td>';
echo '<th>Data Kosong</td>';
echo '<th>Data Kosong</td>';
echo '<th>Data Kosong</td>';
echo '<th>Data Kosong</td>';
echo '<th>Data Kosong</td>';
echo '</tr>';
}
$no++;
@mysql_close($connect);
echo'</table>';
echo'<p>';
}
}
?>
</div>
</div>
<?
include"footer2.php";
?>
form_tambah_rapor.php
<?
include"cek_session_wk.php";
include"koneksi.php";
session_start();
include"header2.php";
$nis = $_POST['nis'];
$semester = $_POST['smt'];
printf("<div id=mainright>
<h1>Tambah Data
Rapor</h1>");
$data = "SELECT nis, nama from
siswa where nis = '$nis'";
$res = mysql_query($data,$connect)
or die(mysql_error());
$b = mysql_fetch_row($res);
printf("
<table border=0
cellspacing=2 cellpadding=0>
xlviii
<tr>
<td>
<b>NIS</b>
<td>:</td>
<td><b>$b[0]</b></td>
</td>
</tr>
<tr>
<td><b>Nama</b></td>
<td>:</td>
<td><b>$b[1]</b></td>
</td>
</tr>
<tr>
<td>
<b>Rapor Semester ke</b>
</td>
<td>:</td>
<td><b>$semester</b></td>
</tr>
<tr>
</tr></table>
<p><div id=booking>
<form name=formulir
action=cek_tambah_rapor.php
method=POST
enctype=multipart/form-data>
<table border=0 cellspacing=2
cellpadding=0>
<tr>
<th><b>Sakit</b></th>
<input type=hidden name=nis
value=\"$b[0]\">
<input type=hidden name=semester
value=\"$semester\">
<input type=hidden name=nuptk
value=".$_SESSION[nuptk]."><td>");
printf("<select name=jumlah_sakit
id=jumlah_sakit><option value=-
>");
for($i=1;$i<=100;$i++)
{
printf("<option
value=$i>$i</option>");
}
printf("</td></select>
</tr>
<tr>
<th><b>Izin</b></th>
<td>");
printf("<select name=jumlah_izin
id=jumlah_izin><option value=->");
for($i=1;$i<=100;$i++)
{
printf("<option
value=$i>$i</option>");
}
printf("</select>
<tr>
<th><b>Alpa</b></th>
<td>");
printf("<select name=jumlah_alpa
id=jumlah_alpa><option value=->");
for($i=1;$i<=100;$i++)
{
printf("<option
value=$i>$i</option>");
}
printf("</select>
<tr>
<th><b>Nilai
Akhir</b></th>
<td>");
$sql = "SELECT nilai_rapor FROM
nilai WHERE nis='".$nis."' AND
kd_smt='".$semester."' AND
kd_kls='".$_SESSION[kd_kls]."'
ORDER BY nis ASC";
$res = mysql_query($sql,$connect)
or die(mysql_error());
$jumlah = 0;
while($b = mysql_fetch_row($res))
{
$jumlah += $b[0];
}
printf("<b>");
printf($jumlah);
printf("</b>");
printf("</td>
</tr>
<tr>
<th><b>Rata -
Rata<b></th>
<td>");
$rataan = $jumlah/11;
printf("<b>");
printf("%.2f",$rataan);
printf("</b>");
printf("</td>
</td>
</tr>
<tr>
<th><b>Catatan
Orang Tua</b></th>
<td><input
name=catatan_orang_tua rows=5
cols=50 id=catatan_orang_tua
type=text size=50 class=kolom
value=\"\"></td>
</tr>
<tr>
<th><b>Kenaikan</b></th>
<td><select
name=kenaikan id=kenaikan<option
value=>
<option value=Naik Kelas>Naik
Kelas</option>
<option value=Tinggal
Kelas>Tinggal Kelas</option></td>
</select>
</tr></table>");
$i++;
//}
printf("<input type=submit
value=proses>
</form>
</div>
</div>
</div>");
include"footer2.php";
?>
xlix
cek_tambah_rapor.php
<?
session_start();
include"cek_session_wk.php";
include"koneksi.php";
$nis = $_POST['nis'];
$nuptk = $_POST['nuptk'];
$semester = $_POST['semester'];
$jumlah_sakit =
$_POST['jumlah_sakit'];
$jumlah_izin =
$_POST['jumlah_izin'];
$jumlah_alpa =
$_POST['jumlah_alpa'];
$catatan_orang_tua =
$_POST['catatan_orang_tua'];
$kenaikan = $_POST['kenaikan'];
if(empty($nis)||empty($nuptk)||emp
ty($semester)||empty($kenaikan)){
echo "<b>Form Tidak Lengkap,
Silakan Ulangi Kembali</b>";
echo "<br><a
href=form_tambah_rapor.php>Kembali
</a><hr>";die();}
$cek = "SELECT * FROM rapor WHERE
nis = '$nis' AND nuptk = '$nuptk'
AND semester = '$semester'";
$jumlah = mysql_query($cek);
$data = mysql_num_rows($jumlah);
if ($data<1)
{
?>
<script
language="JavaScript">
alert('Proses Penambahan Rapor
Berhasil');
document.location='rapor.php'</scr
ipt>
<?
$sql = "insert into rapor
(nis,nuptk,semester,jumlah_sakit,j
umlah_izin,jumlah_alpa,catatan_ora
ng_tua,kenaikan) values
('$nis','$nuptk','$semester','$jum
lah_sakit','$jumlah_izin','$jumlah
_alpa','$catatan_orang_tua','$kena
ikan')";
$hasil =
mysql_query($sql,$connect) or
die(mysql_error());
echo "<b>Proses Penambahan Rapor
Berhasil</b>";
echo "<br><a
href=rapor.php>Kembali</a><hr>";di
e();
}
else {
?>
<script
language="JavaScript">
alert('Data Rapor Yang Dimasukkan
Sudah Ada, Coba Cek Kembali Data
Rapor Kemudian Ulangi Proses
Penambahan Data Rapor');
document.location='rapor.php'</scr
ipt>
<?
echo "<b>Data Rapor Yang
Dimasukkan Sudah Ada, Coba Cek
Kembali Data Rapor Kemudian Ulangi
Proses Penambahan Data Rapor</b>";
echo "<br><a
href=form_tambah_rapor.php>Kembali
</a><hr>";die();
}
?>
form_edit_rapor.php
<?
include"cek_session_wk.php";
include"koneksi.php";
session_start();
include"header2.php";
$nis = $_GET['nis'];
$semester = $_GET['semester'];
$sql = mysql_query("SELECT nis,
nuptk, semester, jumlah_sakit,
jumlah_izin, jumlah_alpa,
catatan_orang_tua, kenaikan FROM
rapor WHERE nis = '$nis' &&
semester = '$semester' && nuptk
='".$_SESSION[nuptk]."' ORDER BY
nis ASC");
printf("<div id=mainright>
<h1>Rubah Data
Rapor</h1>
<table border=0 cellspacing=2
cellpadding=0>
<tr>
<td><b>NIS</b></td>
<td>:</td>
<td><b>$nis</b></td>
</td>
</tr>
<tr>");
$data = "SELECT nama from siswa
where nis = '$nis'";
$res = mysql_query($data,$connect)
or die(mysql_error());
$b = mysql_fetch_row($res);
printf("
<td><b>Nama</b></td>
<td>:</td>
<td><b>$b[0]</b></td>
</td>
</tr>
<tr>
<td>
<b>Rapor Semester ke</b>
</td>
<td>:</td>
<td><b>$semester</b></td>
</tr>
<tr>
</tr></table><p><div
id=booking>");
$i=1;
while ($baris =
mysql_fetch_row($sql))
{
l
printf("
<form name=formulir
action=cek_edit_rapor.php
method=POST
enctype=multipart/form-data>
<table border=0 cellspacing=2
cellpadding=0>
<tr>
<th><b>Sakit</b></th>
<td><b>$baris[3]</b></td>
<input type=hidden name=nis
value=\"$baris[0]\">
<input type=hidden name=semester
value=\"$semester\">
<input type=hidden name=nuptk
value=".$_SESSION[nuptk]."><td>
</tr>
<tr>
<th>(Ubah Jumlah
Sakit)</th><td>");
printf("<select name=jumlah_sakit
id=jumlah_sakit><option value=-
>");
for($i=1;$i<=100;$i++)
{
printf("<option
value=$i>$i</option>");
}
printf("</select>
</td>
</tr>
<tr>
<th><b>Izin</b></th>
<td><b>$baris[4]</b></td>
</tr>
<tr>
<th>(Ubah Jumlah
Izin)</th></b></td>
<td>");
printf("<select name=jumlah_izin
id=jumlah_izin><option value=->");
for($i=1;$i<=100;$i++)
{
printf("<option
value=$i>$i</option>");
}
printf("</select>
<tr>
<th><b>Alpa</b></th>
<td><b>$baris[5]</b></td>
</tr>
<tr>
<th>(Ubah Jumlah
Alpa)</th></b></td>
<td>");
printf("<select name=jumlah_alpa
id=jumlah_alpa><option value=->");
for($i=1;$i<=100;$i++)
{
printf("<option
value=$i>$i</option>");
}
printf("</select>");
$data2 = "SELECT nilai_rapor FROM
nilai WHERE nis='$nis' AND
kd_smt='$semester' AND
kd_kls='".$_SESSION[kd_kls]."'
ORDER BY nis ASC";
$res =
mysql_query($data2,$connect) or
die(mysql_error());
$jumlah = 0;
while($b = mysql_fetch_row($res))
{
$jumlah += $b[0];
}
printf("<tr><th><b>Nilai
Akhir</></b></th>");
printf("<td><b>");
printf($jumlah);
printf("</b></td></tr>");
$rataan = $jumlah/11;
printf("<tr><th><b>Rata -
Rata</></b></th>");
printf("<td><b>");
printf("%.2f",$rataan);
printf("</b></td></tr>");
printf("</select>
<tr>
<th><b>Catatan
Orang Tua</b></th>
<td><b>$baris[6]</b></td>
</tr>
<tr>
<th>(Ubah Catatan)</th></b>
<td><input
name=catatan_orang_tua rows=5
cols=50 id=catatan_orang_tua
type=text size=50 class=kolom
value=\"$baris[6]\"></td>
</tr>
<tr>
<th><b>Kenaikan</b></th>
<td><b>$baris[7]</b></td>
</td>
</tr>
<tr>
<th>(Ubah Kenaikan)</th></b>
<td><select
name=kenaikan id=kenaikan<option
value=>
<option value=Naik Kelas>Naik
Kelas</option>
<option value=Tinggal
Kelas>Tinggal Kelas</option></td>
</select>
</tr></table>");
$i++;
}
printf("<input type=submit
value=proses>
</form>
</div>
</div>
</div>");
include"footer2.php";
?>
li
cek_edit_rapor.php
<?
session_start();
include"cek_session_wk.php";
include"koneksi.php";
include"header2.php";
$nis = $_POST['nis'];
$nuptk = $_POST['nuptk'];
$semester = $_POST['semester'];
$jumlah_sakit =
$_POST['jumlah_sakit'];
$jumlah_izin =
$_POST['jumlah_izin'];
$jumlah_alpa =
$_POST['jumlah_alpa'];
$catatan_orang_tua =
$_POST['catatan_orang_tua'];
$kenaikan = $_POST['kenaikan'];
if(empty($nis)||empty($nuptk)||emp
ty($semester)||empty($kenaikan)){
print "<script>alert('ERROR !!!
Mohon Lengkapi Isian Form');
javascript:history.go(-
1);</script>";
exit;
}
$sql = "UPDATE rapor SET
jumlah_sakit='$jumlah_sakit',
jumlah_izin='$jumlah_izin',
jumlah_alpa='$jumlah_alpa',
catatan_orang_tua='$catatan_orang_
tua', kenaikan='$kenaikan' WHERE
nis='$nis' AND nuptk='$nuptk' AND
semester= '$semester'";
$res = mysql_query($sql,$connect)
or die(mysql_error());
@mysql_close($connect);
?>
<script language="JavaScript">
alert('Proses Update Rapor
Berhasil');
document.location='rapor.php'</scr
ipt>
<?
echo "<div id = mainright align =
center>Proses Edit Rapor
Berhasil";
echo "<div class = pagin><br><a
href=rapor.php>Kembali</a></div><h
r></div>";die();;
include"footer2.php"
?>
cek_hapus_rapor.php
<?php
include "cek_session_wk.php";
include "koneksi.php";
session_start();
$nis = $_GET['nis'];
$semester = $_GET['semester'];
if (empty($nis)||empty($semester))
{
echo "ID Kosong";
echo "<br><a
href=rapor.php>Kembali</a><hr>";di
e();}
$sql = "DELETE FROM rapor WHERE
nis='$nis' AND
semester='$semester' AND
nuptk='".$_SESSION[nuptk]."'";
$res = mysql_query($sql,$connect)
or die(mysql_error());
@mysql_close($koneksi);
?>
<script language="JavaScript">
alert('Proses Penghapusan Rapor
Sukses');
document.location='rapor.php'</scr
ipt>
<?
echo "Proses Penghapusan Rapor
Sukses";
echo "<br><a
href=rapor.php>Kembali</a><hr>";di
e();
?>
ubah_pass.php
<?
include"cek_session_wk.php";
include"koneksi.php";
session_start();
?>
<script
type="text/javascript"></script>
<?
include"header2.php";
?>
<div id="mainright">
<h1>Ubah Password Wali
Kelas</h1>
<div id="booking">
<script language="JavaScript">
function cek_form() {
var a = formulir.pass1.value
var b = formulir.pass2.value
var c = formulir.pass3.value
var d = formulir.pass4.value
var myRegExp = /^[\d]/;
if (a==""||b==""||c==""||d=="") {
alert('Mohon Lengkapi Isian
Form');
return false; }
else if
(!myRegExp.test(a)){alert('ERROR
!!! Password Sebelumnya Harus
Berupa Angka');
return false; }
else if
(!myRegExp.test(b)){alert('ERROR
!!! Konfirmasi Password Sebelumnya
Input Harus Berupa Angka');
return false; }
else if
(!myRegExp.test(c)){alert('ERROR
!!! Input Password Baru Harus
Berupa Angka');
return false; }
else if
(!myRegExp.test(d)){alert('ERROR
!!! Konfirmasi Input Password Baru
Harus Berupa Angka');
return false; }
else if (a!=b) { alert('Password
lii
Tidak Valid, Ulangi Password
Sebelumnya');
return false; }
else if (c!=d) { alert('Password
Tidak Valid, Ulangi Pengisian
Konfirmasi Password');
return false; }
else return true;
}
</script>
<form name="formulir"
action="cek_ubah_pass.php"
method="POST">
<table border="0" cellspacing="2"
cellpadding="0">
<tr>
<th><b>Password
Sebelumnya</b></th>
<td><input
name="pass1" type="password"
id="pass1" size="20" /></td>
</tr>
<tr>
<th><b>Ulangi Password
Sebelumnya</b></th>
<td><input
name="pass2" type="password"
id="pass2" size=20 /></td>
</tr>
<tr>
<th><b>Masukan Password
Baru</b></th>
<td><input
name="pass3" type="password"
id="pass3" size=20 /></td>
</tr>
<tr>
<th><b>Ulangi Password</b></th>
<td><input
name="pass4" type="password"
id="pass4" size=20 /></td>
</tr>
<tr>
<td><input type="submit"
value="ubah" onClick="return
cek_form()"> <input name="reset"
type="reset" value="hapus" /></td>
</tr>
</table>
</form>
</div>
</div>
</div>
<?
include"footer2.php";
?>
cek_ubah_pass.php
<?
session_start();
include"cek_session_wk.php";
include"koneksi.php";
include"header2.php";
$pass1 = $_POST['pass1'];
$pass2 = $_POST['pass2'];
$pass3 = $_POST['pass3'];
$pass4 = $_POST['pass4'];
$valid = "^[0-9 ]";
if(empty($pass1)||empty($pass2)||e
mpty($pass3)||empty($pass4)){
echo "<b>Form Tidak Lengkap,
Silakan Ulangi Kembali</b>";
echo "<br><a
href=ganti_pass.php>Kembali</a><hr
>";exit;}
if(!eregi($valid, $pass1))
{
echo "<b>Password Sebelumnya Tidak
Valid</b>";
echo "<br><a
href=ganti_pass.php>Kembali</a><hr
>";exit;
}
if(!eregi($valid, $pass2))
{
echo "<b>Konfirmasi Password
Sebelumnya Tidak Valid</b>";
echo "<br><a
href=ganti_pass.php>Kembali</a><hr
>";exit;
}
if(!eregi($valid, $pass3))
{
echo "<b>Password Baru Tidak
Valid</b>";
echo "<br><a
href=ganti_pass.php>Kembali</a><hr
>";exit;
}
if(!eregi($valid, $pass4))
{
echo "<b>Konfirmasi Password Baru
Tidak Valid</b>";
echo "<br><a
href=ganti_pass.php>Kembali</a><hr
>";exit;
}
if($pass1 != $pass2)
{
echo "<b>Password Sebelumnya Tidak
Sama</b>";
echo "<br><a
href=ganti_pass.php>Kembali</a><hr
>";exit;
}
if($pass3 != $pass4)
{
echo "<b>Password Baru Tidak
Sama</b>";
echo "<br><a
href=ganti_pass.php>Kembali</a><hr
>";exit;
}
if(md5($pass1) !=
$_SESSION["password"])
{
echo "<b>Password Sebelumnya
Salah</b>";
echo "<br><a
href=ganti_pass.php>Kembali</a><hr
>";exit;
}
$password4 = md5($pass4);
$sql = "UPDATE wali_kelas SET
nuptk='".$_SESSION["nuptk"]."',
password='$password4' WHERE
nuptk='".$_SESSION["nuptk"]."'";
liii
$res = mysql_query($sql,$connect)
or die(mysql_error());
@mysql_close($connect);
?>
<script language="JavaScript">
alert('Proses Ganti Password
Berhasil, Keluar Terlebih Dulu
Untuk Mencoba Password Baru');
document.location='home.php'</scri
pt>
<?
echo "Proses Ganti Password
Berhasil, Keluar Terlebih Dulu
Untuk Mencoba Password Baru";
echo "<br><a
href=home.php>Kembali</a><hr>";die
();;
?>
cek_session_wk.php
<?php
session_start();
if (!isset($_SESSION['nuptk']))
{
include"header.php";
echo "<b><br><center>Maaf, anda
belum login sebagai Wali
Kelas<br>";
echo "<div class =
pagin><center>Silakan login
terlebih dahulu <b><a
href=index.php>di
sini</b></a></div>";
exit;
}
?>
c. Guru uts.php
<?
include"cek_session_guru.php";
include"koneksi.php";
session_start();
?>
<script
type="text/javascript"></script>
<?
include"header2.php";
?>
<div id="mainright">
<script language="JavaScript">
function cek_form() {
var a = formulir2.kd_kls.value
if (a=="") { alert('Mohon Lengkapi
Isian Form');
return false; }
else return true;
}
</script>
<?
session_register("smst");
$blnsmst = date("n");
if($blnsmst >= 1 &&
$blnsmst <= 6)
$_SESSION["smst"] = 2;
else
$_SESSION["smst"] = 1;
$date_now = date("Y-m-
d");
list($year, $month, $day)
= explode('-', $date_now);
$new_date_1 =
sprintf('%04d%02d%02d', $year,
$month, $day);
//ambil tgl d database
$sqlsmst = "SELECT tgl_uts FROM
jadwal_uts WHERE kd_smt =
'".$_SESSION[smst]."' AND kd_mp =
'".$_SESSION[kd_mp]."'";
$hasilsmst =
mysql_query($sqlsmst);
$bln2 =
mysql_fetch_row($hasilsmst);
list($day, $month, $year) =
explode('-', $bln2[0]);
$new_date_2 =
sprintf('%04d%02d%02d', $year,
$month, $day);
if ($bln2[0] == "")
{
//uts belum dilaksanakan
printf("<div id =per>
<h1>UTS belum dilaksanakan
!!</h1>
</div></div>");
}
else if ($new_date_2 >
$new_date_1)
{
//uts belum dilaksanakan
printf("<div id =per>
<h1>UTS belum dilaksanakan
!!</h1>
</div></div>");
}
else
{
printf("<form name=formulir2
method=POST
action=tambah_nilai_uts.php>
<h1>Tambah Nilai UTS
Semester Ke
".$_SESSION["smst"]."</h1>
<div id=booking>
<table>
<tr>
<th><b>Pilih Kelas</b></th>
<td>:</td>
<td>");
$hasil = mysql_query("select
kd_kls, nama_kelas from kelas
order by kd_kls asc");
printf("<select name=kd_kls
id=kd_kls><option value=>");
while($row=mysql_fetch_row($hasil)
)
{
print"<option
value='$row[0]'>$row[1]</option>";
}
printf("</select>");
printf(" </th>
<td><input type=submit
name=submit value=pilih
liv
onclick=\"return
cek_form()\"/></td>
</tr>
</form>
</table><p><p></div>
</div>");
}
?>
</div>
<?
include"footer2.php";
?>
Tambah_nilai_uts.php
<?
include"cek_session_guru.php";
include"koneksi.php";
session_start();
?>
<script
type="text/javascript"></script>
<?
include"header2.php";
?>
<div id="mainright">
<script language="JavaScript">
function cek_form() {
var a = formulir2.kd_kls.value
if (a=="") { alert('Mohon Lengkapi
Isian Form');
return false; }
else return true;
}
</script>
<?
session_register("smst");
$blnsmst = date("n");
if($blnsmst >= 1 &&
$blnsmst <= 6)
$_SESSION["smst"] = 2;
else
$_SESSION["smst"] = 1;
$date_now = date("Y-m-
d");
list($year, $month, $day)
= explode('-', $date_now);
$new_date_1 =
sprintf('%04d%02d%02d', $year,
$month, $day);
//ambil tgl d database
$sqlsmst = "SELECT tgl_uts FROM
jadwal_uts WHERE kd_smt =
'".$_SESSION[smst]."' AND kd_mp =
'".$_SESSION[kd_mp]."'";
$hasilsmst =
mysql_query($sqlsmst);
$bln2 =
mysql_fetch_row($hasilsmst);
list($day, $month, $year) =
explode('-', $bln2[0]);
$new_date_2 =
sprintf('%04d%02d%02d', $year,
$month, $day);
if ($bln2[0] == "")
{
//uts belum dilaksanakan
printf("<div id =per>
<h1>UTS belum dilaksanakan
!!</h1>
</div></div>");
}
else if ($new_date_2 >
$new_date_1)
{
//uts belum dilaksanakan
printf("<div id =per>
<h1>UTS belum dilaksanakan
!!</h1>
</div></div>");
}
else
{
printf("<form name=formulir2
method=POST
action=tambah_nilai_uts.php>
<h1>Tambah Nilai UTS
Semester Ke
".$_SESSION["smst"]."</h1>
<div id=booking>
<table>
<tr>
<th><b>Pilih Kelas</b></th>
<td>:</td>
<td>");
$hasil = mysql_query("select
kd_kls, nama_kelas from kelas
order by kd_kls asc");
printf("<select name=kd_kls
id=kd_kls><option value=>");
while($row=mysql_fetch_row($hasil)
)
{
print"<option
value='$row[0]'>$row[1]</option>";
}
printf("</select>");
printf(" </th>
<td><input type=submit
name=submit value=pilih
onclick=\"return
cek_form()\"/></td>
</tr>
</form>
</table><p><p></div>
</div>");
}
?>
</div>
<?
include"footer2.php";
?>
Form_tambah_nilai_uts.php
<?
include"cek_session_guru.php";
include"koneksi.php";
session_start();
include"header2.php";
$nis = $_POST['nis'];
$kd_kls = $_POST['kd_kls'];
$nis = $_GET['nis'];
$kd_smt = $_SESSION['smst'];
$cek = "SELECT nilai_uts FROM
nilai WHERE nis = '$nis' AND kd_mp
lv
= '".$_SESSION[kd_mp]."' AND
kd_smt = '$kd_smt'";
$jumlah = mysql_query($cek);
$data = mysql_num_rows($jumlah);
if ($data<1)
{
printf("<div id=mainright>
<h1>Tambah Data Nilai
UTS Semester ke $kd_smt</h1>");
$data = "SELECT nis, nama, kd_kls
from siswa where nis = '$nis'";
$res = mysql_query($data,$connect)
or die(mysql_error());
$b = mysql_fetch_row($res);
printf("
<table border=0
cellspacing=2 cellpadding=0>
<tr>
<td>
<b>NIS</b>
<td>:</td>
<td><b>$b[0]</b></td>
</td>
</tr>
<tr>
<td><b>Nama</b></td>
<td>:</td>
<td><b>$b[1]</b></td>
</td>
</tr>
<tr>
<td>
<b>Semester</b>
<td>:</td>
<td><b>$kd_smt</b></td>
</td>
</tr>
</table>
<p><div id=booking>
<form name=formulir
action=cek_tambah_nilai_uts.php
method=POST
enctype=multipart/form-data>
<table border=0 cellspacing=2
cellpadding=0>
<tr>
<th><b>Masukan
Nilai UTS</b></th>
<input type=hidden name=nis
value=\"$b[0]\">
<input type=hidden name=kd_smt
value=".$kd_smt.">
<input type=hidden name=kd_kls
value=\"$b[2]\">
<input type=hidden name=kd_mp
value=".$_SESSION[kd_mp].">
<td>");
printf("<select name=nilai_uts
id=nilai_uts><option value=->");
for($i=10;$i<=100;$i++)
{
printf("<option
value=$i>$i</option>");
}
printf("</select>
<tr><th><input type=submit
value=Tambah></th></tr></table>");
$i++;
printf("</form>
</div>
</div>
</div>");
}
else
{
print "<script>alert('Nilai Siswa
Sudah Diisi');
javascript:history.go(-
1);</script>";
exit;
}
include"footer2.php";
?>
cek_tambah_nilai_uts.php
<?
session_start();
include"cek_session_guru.php";
include"koneksi.php";
include"header2.php";
$nis = $_POST['nis'];
$kd_kls = $_POST['kd_kls'];
$kd_mp = $_POST['kd_mp'];
$kd_smt = $_POST['kd_smt'];
$nilai_uts = $_POST['nilai_uts'];
if($nilai_uts == 0){
echo "<b>Mohon Isi Nilai UTS</b>";
echo "<br><a
href=form_tambah_nilai_uts.php?nis
=$nis>Kembali</a><hr>";die();}
$cek = "SELECT * FROM nilai WHERE
nis = '$nis' AND kd_mp = '$kd_mp'
AND kd_smt = '$kd_smt'";
$jumlah = mysql_query($cek);
$data = mysql_num_rows($jumlah);
if ($data<1)
{
$sql = "insert into nilai
(nis,kd_kls,kd_mp,kd_smt,nilai_uts
) values
('$nis','$kd_kls','$kd_mp','$kd_sm
t','$nilai_uts')";
$hasil =
mysql_query($sql,$connect) or
die(mysql_error());
echo "<div id = mainright
align=center><b>Proses Penambahan
Nilai UTS Berhasil</b>";
echo "<br><div class = pagin><a
href=tambah_nilai_uts.php?kd_kls=$
kd_kls>Kembali</a></div><hr></div>
";die();
}
else {
?>
<script
language="JavaScript">
alert('Data Nilai Yang Dimasukkan
Sudah Ada, Coba Cek Kembali Data
Nilai Kemudian Ulangi Proses
Penambahan Data Rapor');
document.location='nilai.php'</scr
ipt>
<?
echo "<b>Data Nilai Yang
Dimasukkan Sudah Ada, Coba Cek
Kembali Data Nilai Kemudian Ulangi
lvi
Proses Penambahan Data Rapor</b>";
echo "<br><a
href=nilai.php>Kembali</a><hr>";di
e();
}
include"footer2.php";
?>
uas.php
<?
include"cek_session_guru.php";
include"koneksi.php";
session_start();
?>
<script
type="text/javascript"></script>
<?
include"header2.php";
?>
<div id="mainright">
<script language="JavaScript">
function cek_form() {
var a = formulir2.kd_kls.value
if (a=="") { alert('Mohon Lengkapi
Isian Form');
return false; }
else return true;
}
</script>
<?
session_register("smst");
$blnsmst = date("n");
if($blnsmst >= 1 &&
$blnsmst <= 6)
$_SESSION["smst"] = 2;
else
$_SESSION["smst"] = 1;
$date_now = date("Y-m-
d");
list($year, $month, $day)
= explode('-', $date_now);
$new_date_1 =
sprintf('%04d%02d%02d', $year,
$month, $day);
//ambil tgl d database
$sqlsmst = "SELECT tgl_uas FROM
jadwal_uas WHERE kd_smt =
'".$_SESSION[smst]."' AND kd_mp =
'".$_SESSION[kd_mp]."'";
$hasilsmst =
mysql_query($sqlsmst);
$bln2 =
mysql_fetch_row($hasilsmst);
list($day, $month, $year) =
explode('-', $bln2[0]);
$new_date_2 =
sprintf('%04d%02d%02d', $year,
$month, $day);
if ($bln2[0] == "")
{
//uts belum dilaksanakan
printf("<div id =per>
<h1>UAS belum dilaksanakan
!!</h1>
</div></div>");
}
else if ($new_date_2 >
$new_date_1)
{
//uts belum dilaksanakan
printf("<div id =per>
<h1>UAS belum dilaksanakan
!!</h1>
</div></div>");
}
else
{
printf("<form name=formulir2
method=POST
action=tambah_nilai_uas.php>
<h1>Tambah Nilai UAS dan
Formatif Semester Ke
".$_SESSION["smst"]."</h1>
<div id=booking>
<table>
<tr>
<th><b>Pilih Kelas</b></th>
<td>:</td>
<td>");
$hasil = mysql_query("select
kd_kls, nama_kelas from kelas
order by kd_kls asc");
printf("<select name=kd_kls
id=kd_kls><option value=>");
while($row=mysql_fetch_row($hasil)
)
{
print"<option
value='$row[0]'>$row[1]</option>";
}
printf("</select>");
printf(" </th>
<td><input type=submit
name=submit value=pilih
onclick=\"return
cek_form()\"/></td>
</tr>
</form>
</table><p><p></div>
</div>");
}
?>
</div>
<?
include"footer2.php";
?>
tambah_nilai_uas.php
<?
include"cek_session_guru.php";
include"koneksi.php";
session_start();
?>
<?
include"header2.php";
$kd_kls = $_POST['kd_kls'];
if ($kd_kls=="")
$kd_kls = $_GET['kd_kls'];
?>
<div id="mainright">
<h1>Daftar Siswa</h1>
<b>Silakan Pilih Siswa</b>
<p>
<?
echo '<table class="tabel"
lvii
border="0" cellspacing="0"
cellpadding="0">';
echo '<tr class="style2">';
echo '<th width="30"
height="29"><div
align="center">NO</div></td>';
echo '<th>NIS</th>';
echo '<th>Nama</th>';
echo '<th>Aksi</th>';
echo '</tr>';
$sql = "SELECT nis, nama FROM
siswa WHERE kd_kls = '$kd_kls'
ORDER BY nis ASC";
$res = mysql_query($sql,$connect)
or die(mysql_error());
$no = 1;
while ($baris =
mysql_fetch_row($res))
{
echo '<tr>';
echo '<td><div
align="center">'.$no.'</div></td>'
;
echo '<td><div
align="center">'.$baris[0].'</td>'
;
echo '<td><div
align="center">'.$baris[1].'</td>'
;
echo '<td><div class=pagin
align="center"><a
href=form_tambah_uas_formatif.php?
nis='.$baris[0].'> Pilih </a>
</div></td>';
echo '</tr> ';
$no++;
}
@mysql_close($connect);
echo'</table>';
echo'<p>';
?>
</div>
</div>
<?
include"footer2.php";
?>
form_tambah_nilai_uas_formatif.php
<?
session_start();
include"cek_session_guru.php";
include"koneksi.php";
include"header2.php";
$nis = $_POST['nis'];
$kd_kls = $_POST['kd_kls'];
$kd_mp = $_POST['kd_mp'];
$kd_smt = $_POST['kd_smt'];
$nilai_uts = $_POST['nilai_uts'];
if($nilai_uts == 0){
echo "<b>Mohon Isi Nilai UTS</b>";
echo "<br><a
href=form_tambah_nilai_uts.php?nis
=$nis>Kembali</a><hr>";die();}
$cek = "SELECT * FROM nilai WHERE
nis = '$nis' AND kd_mp = '$kd_mp'
AND kd_smt = '$kd_smt'";
$jumlah = mysql_query($cek);
$data = mysql_num_rows($jumlah);
if ($data<1)
{
$sql = "insert into nilai
(nis,kd_kls,kd_mp,kd_smt,nilai_uts
) values
('$nis','$kd_kls','$kd_mp','$kd_sm
t','$nilai_uts')";
$hasil =
mysql_query($sql,$connect) or
die(mysql_error());
echo "<div id = mainright
align=center><b>Proses Penambahan
Nilai UTS Berhasil</b>";
echo "<br><div class = pagin><a
href=tambah_nilai_uts.php?kd_kls=$
kd_kls>Kembali</a></div><hr></div>
";die();
}
else {
?>
<script
language="JavaScript">
alert('Data Nilai Yang Dimasukkan
Sudah Ada, Coba Cek Kembali Data
Nilai Kemudian Ulangi Proses
Penambahan Data Rapor');
document.location='nilai.php'</scr
ipt>
<?
echo "<b>Data Nilai Yang
Dimasukkan Sudah Ada, Coba Cek
Kembali Data Nilai Kemudian Ulangi
Proses Penambahan Data Rapor</b>";
echo "<br><a
href=nilai.php>Kembali</a><hr>";di
e();
}
include"footer2.php";
?>
cek_tambah_nilai_uas.php
<?
session_start();
include"cek_session_guru.php";
include"koneksi.php";
include"header2.php";
$nis = $_POST['nis'];
$kd_kls = $_POST['kd_kls'];
$kd_mp = $_POST['kd_mp'];
$kd_smt = $_POST['kd_smt'];
$formatif = $_POST['formatif'];
$nilai_uas = $_POST['nilai_uas'];
$baca = "SELECT nilai_uts FROM
nilai WHERE nis = '$nis' AND kd_mp
= '$kd_mp' AND kd_smt =
'$kd_smt'";
$uts = mysql_query($baca);
$has = mysql_num_rows($uts);
$nuts = mysql_fetch_row($uts);
$nilai_uts = $nuts[0];
if($has<1)
{
echo "<div id = mainright
align=center><b>Nilai UTS belum di
isi, Silakan Isi terlebih dahulu
nilai uts</b>";
echo "<br><div class = pagin><a
href=form_tambah_nilai_uts.php?nis
=$nis>Kembali</a></div><hr></div>"
lviii
;die();
}
else
{
if(empty($nis)||empty($kd_kls)||em
pty($kd_mp)||empty($kd_smt)||empty
($formatif)||empty($nilai_uas)){
echo "<div id = mainright
align=center><b>Form Tidak
Lengkap, Silakan Ulangi
Kembali</b>";
echo "<br><div class = pagin><a
href=form_tambah_nilai_uts.php?kd_
kls=$kd_kls>Kembali</a></div><hr><
/div>";die();}
else
{
/*?>
<script
language="JavaScript">
alert('Proses Penambahan Nilai
Berhasil');
document.location='tambah_nilai.ph
p?kd_kls="'.$kd_kls.'"'</script>
<?*/
if($_SESSION[formula]==1)
{
$nilai_rapor =
((1/10*($formatif))+(4/10*($nilai_
uts))+(5/10*($nilai_uas)));
}
else if($_SESSION[formula]==2)
{
$nilai_rapor =
((2/10*($formatif))+(3/10*($nilai_
uts))+(5/10*($nilai_uas)));
}
else if($_SESSION[formula]==3)
{
$nilai_rapor =
((3/10*($formatif))+(3/10*($nilai_
uts))+(4/10*($nilai_uas)));
}
else
{
print"formula tidak ada";
}
$sql = "update nilai set
nilai_uas =
'$nilai_uas',nilai_rapor =
'$nilai_rapor',formatif =
'$formatif' WHERE nis = '$nis' AND
kd_kls = '$kd_kls' AND kd_mp =
'$kd_mp' AND kd_smt = '$kd_smt'";
$hasil =
mysql_query($sql,$connect) or
die(mysql_error());
echo "<div id = mainright
align=center><b>Proses Penambahan
Nilai UAS dan Formatif
Berhasil</b>";
echo "<br><div class = pagin><a
href=tambah_nilai_uas.php?kd_kls=$
kd_kls>Kembali</a></div><hr></div>
";die();
}
}
include"footer2.php";
?>
formula.php
<? include"cek_session_guru.php";
include"koneksi.php";
session_start();
?>
<?
include"header2.php";
?>
<div id="mainright">
<h1>Ubah Formula Untuk
Nilai Rapor</h1>
<div id="booking">
<form name="formulir"
action="cek_ubah_formula.php"
method="POST">
<table border="0" cellspacing="2"
cellpadding="0">
<tr>
<tr>
<th><b>Formula Yang Digunakan
Sekarang</b></th>
<td><b>:</b></td>
<td colspan="1"> <b>
<? $formula =
$_SESSION['formula'];
if ($formula ==1)
{print"10% Formatif + 40% UTS +
50% UAS";}
else if($formula ==2)
{print"20% Formatif + 30% UTS +
50% UAS";}
else if($formula ==3)
{print"30% Formatif + 30% UTS +
40% UAS";}
else
{print"Anda Belum Memiliki Formula
Untuk Rapor Silakan Hubungi Staf
Tata Usaha Untuk Memasukan
Formula";}
?>
</b>
</th>
</tr>
<tr></tr>
<tr></tr>
<tr>
<th colspan="3"><b>Silakan Pilih
Formula Yang Akan
digunakan</b></th>
</tr>
<tr></tr>
<tr></tr>
<tr>
<th colspan="3"><input
name="formula" type="radio"
id="formula" value="1" checked/>
<b>10% Formatif + 40% UTS + 50%
UAS</b></th>
</tr>
<tr>
<th colspan="3"><input
name="formula" type="radio"
id="formula" value="2" /> <b>20%
Formatif + 30% UTS + 50%
UAS</b></th>
</tr><tr>
<th colspan="3"><input
lix
name="formula" type="radio"
id="formula" value="3" /> <b>30%
Formatif + 30% UTS + 40%
UAS</b></th>
</tr><tr></tr><tr></tr><tr>
<th><input type="submit"
value="ubah" onClick="return
confirm(Anda Yakin)" /></th>
</tr>
</table>
</form>
</div>
</div>
</div>
<?
include"footer2.php";
?>
cek_ubah_formula.php
<?
session_start();
include"cek_session_guru.php";
include"koneksi.php";
include"header2.php";
$formula = $_POST['formula'];
if(empty($formula)){
echo "<div id = mainright
align=center><b>Form Tidak
Lengkap, Silakan Ulangi
Kembali</b>";
echo "<br><div class = pagin><a
href=formula.php>Kembali</a></div>
<hr></div>";exit;}
$sql = "UPDATE guru SET
formula='$formula' WHERE
nuptk='".$_SESSION["nuptk"]."'";
$res = mysql_query($sql,$connect)
or die(mysql_error());
@mysql_close($connect);
?>
<script language="JavaScript">
alert('Proses Ubah Formula
Berhasil, Formula Baru Dapat
Digunakan Setelah Login Kembali');
document.location='home.php'</scri
pt>
<?
echo "Proses Ganti Password
Berhasil, Formula Baru Dapat
Digunakan Setelah Login Kembali";
echo "<br><a
href=home.php>Kembali</a><hr>";die
();;
include"footer2";?>
lx
LAMPIRAN II
BLACK BOX TESTING
No. Rancangan Proses Hasil Yang Diharapkan Hasil Keterangan
1 Klik Menu Beranda Masuk Halaman Awal √ Uji tes dapat
dilihat Pada
lampiran III.
2 Klik Menu Profil SMP
Perwira Jakarta
Masuk Halaman Profil √ Uji tes dapat
dilihat Pada
lampiran III. 3 Klik Menu Berita
Terkini
Masuk Halaman Berita
Terkini √ Uji tes dapat
dilihat Pada
lampiran III 4 Klik Menu Info - Info Masuk halaman Info
Terkini √ Uji tes dapat
dilihat Pada
lampiran III. 5 Klik Menu Tentang
Kami
Masuk halaman Tentang
Kami √ Uji tes dapat
dilihat Pada
lampiran III. 6 Klik Menu Tentang
login siswa
Masuk ke halaman login,
isi NIS dan password √ Uji tes dapat
dilihat Pada
lampiran III 7 Klik Menu Jadwal
Pelajaran
Masuk halaman Jadwal
pelajaran dan pilih hari
untuk melihat jadwal
pelajaran dengan mudah.
√ Uji tes dapat
dilihat Pada
lampiran III.
8 Klik Menu Jadwal
UTS
Masuk halaman Jadwal
UTS dan pilih hari untuk
melihat jadwal uts dengan
mudah
√ Uji tes dapat
dilihat Pada
lampiran III.
9 Klik Menu Jadwal
UAS
Masuk halaman Jadwal
UAS dan pilih hari untuk
melihat jadwal uas dengan
mudah.
√ Uji tes dapat
dilihat Pada
lampiran III.
10 Klik Menu Nilai Masuk halaman Nilai dan
pilih mata pelajaran untuk
melihat daftar nilai dengan
mudah.
√ Uji tes dapat
dilihat Pada
lampiran III.
11 Klik Menu
Pembayaran Sekolah
Masuk halaman pebayaran
sekolah dan pilih bulan
untuk melihat daftar
bayaran dengan mudah.
√ Uji tes dapat
dilihat Pada
lampiran III.
12 Klik Menu Rapor Masuk halaman Rapor
untuk melihat rapor pada
semester itu dengan
mudah.
√ Uji tes dapat
dilihat Pada
lampiran III.
LAMPIRAN III
lxi
TAMPILAN APLIKASI
a. Halaman Beranda Siswa b. Halaman Profil
c. Halaman Berita d. Halaman Info
lxii
e. Halaman Tentang Kami f. Halaman Login
lxiii
g. Halaman Utama Siswa h. Halaman Jadwal Pelajaran
lxiv
i. Halaman Jadwal UTS j. Halaman Jadwal UAS
lxv
k. Halaman Nilai l. Halaman Bayaran
lxvi
m. Halaman Rapor n. Halaman Logout
lxvii
LAMPIRAN IV
lxviii
WAWANCARA
Tanggal : 15-Maret-2010
Waktu: 13 : 00
Responden: Khaeroji, S.Pd., (NUPTK : 9741736639200012 )
(Koordinator LAB Terpadu)
Pewawancara: Riki Danang Surahman
Pertanyaan :
1. T : Bagaimana sejarah SMP PERWIRA Jakarta?
J : Awalnya SMP Perwira adalah sebuah yayasan islam, namun
kemudian berubah menjadi sekolah konvensional, tetapi tidak
menghilagkan tata krama dan norma – norma yang baik.
2. T : Seperti apakah struktur organisasi SMP PERWIRA Jakarta?
J : Pada posisi paling atas ada Yayasan Putra Perwira itu urutan kedua
ada Kepala Sekolah yang hampir sama dengan komite, selanjutnya
pada urutan ketiga terdapat dua Wakil Kepala Sekolah, selanjutnya
pada urutan keempat ada Tata Usaha dan Bendahara UUDP/DPP
Material, setelah itu terdapat Guru, Wali Kelas, Guru piket dan
diurutan paling akhir adalah OSIS dan Siswa.
3. T : Apakah menurut bapak sistem informasi akademik yang berjalan
sekarang sudah
cukup?
J : Belum, karena banyaknya olahan data yang harus dikerjakan, juga
banyaknya permintaan informasi, karena disini memilik jumlah siswa
yang cukup banyak selain itu tidak mungkin bagi seorang guru untuk
terus memantau siswa.
4. T : Apakah pernah ada siswa masalah dengan sistem informasi
akademik sekarang
J : Tentu saja pernah, pernah ada siswa yang orang tuanya sudah
memberi uang untuk SPP tapi tidak di bayarkan oleh anaknya, dan
hal ini baru ketahuan pada saat pengambilan rapor, selain itu banyak
juga orang tua yang tidak bisa hadir saat pengambilan rapor jadi
rapor menumpuk tidak diambil.
5. T : Bagaimana bila ada sebuah aplikasi yang mampu membantu
interaksi sekolah dan
Wali siswa ?
J : Aplikasi seperti apa dulu?, tapi kalau berguna untuk membantu
pemberian informasi akademik, sangat setuju.
6. T : Apakah bapak setuju dengan aplikasi sistem informasi akademik
berbasis WAP, jadi Informasi akademik dapat diakses melalui
ponsel.?
J : Setuju. Jadi informasi akademik bisa dilihat kapan saja.
lxix
7. T : Apa sajakah yang ingin ditampilkan pada aplikasi akademik yang
akan dibuat ?
J : Yang dimasukan seperti Daftar Siswa, Daftar Guru dan Karyawan,
Info PSB, Daftar nilai dan rapor siswa, daftar bayaran, jadwal
pelajaran, UAS, UTS yang lainnya terserah.
LAMPIRAN V
lxx
KUESIONER
a. Form Kuesioner
1. Apakah menurut anda sistem informasi akademik yang sedang berjalan
dengan cara manual seperti selebaran, bukti – bukti, brosur , rapor, sudah
cukup efektif..?
a. Sudah
b. Hampir
c. Belum
2. Apakah dengan cara pemberian informasi akademik secara manual,
informasi yang diberikan pleh pihak sekolah kadang tidak tersampaikan..?
a. Ya
b. Mungkin
c. Tidak
3. Apakah informasi yang diberikan oleh pihak sekolah selalu tersampaikan
kepada anda...?
a. Ya
b. Mungkin
c. Tidak
4. Apakah menurut anda perlu dibuat sebuah aplikasi yang dapat
memudahkan akses terhadap informasi akademik..?
a. Sangat Perlu
b. Perlu
c. Tidak perlu
5. Apakah menurut anda apakah dengan menggunakan sebuah telepon seluler
sebagai media akan memudahkan akses terhadap informasi akademik..?
a. Ya
b. Mungkin
c. Tidak
6. Apakah menurut anda di SMP PERWIRA Jakarta perlu dibuat sebuah
aplikasi sistem informasi akademik yang bisa diakses kapan saja dan
dimana saja dengan menggunakan sebuah telepon seluler..?
a. Sangat Perlu
b. Perlu
c. Tidak perlu
7. Menurut anda apakah sistem informasi yang sekarang berjalan sudah
memuaskan ?
a. Sudah
b. Hampir
c. Belum
lxxi
b. Hasil Kuesioner
No. Pertanyaan Jawaban Presentase
1 Apakah menurut anda sistem informasi akademik yang sedang berjalan dengan cara manual seperti selebaran, bukti – bukti, brosur , rapor, sudah cukup efektif..?
Sudah 26%
Hampir 32% Belum 42%
2 Apakah dengan cara pemberian informasi akademik secara manual, informasi yang diberikan pleh pihak sekolah kadang tidak tersampaikan..?
Ya 58%
Mungkin 28% Tidak 24%
3 Apakah informasi yang diberikan oleh pihak sekolah selalu tersampaikan kepada anda...?
Ya 40%
Mungkin 15% Tidak 45%
4 Apakah menurut anda perlu dibuat sebuah aplikasi yang dapat memudahkan akses terhadap informasi akademik..?
Sangat perlu 24%
Perlu 48% Tidak perlu 28%
5 Apakah menurut anda apakah dengan menggunakan sebuah telepon seluler sebagai media akan memudahkan akses terhadap informasi akademik?
Ya 56% Mungkin 28% Tidak 16%
6 Apakah menurut anda di SMP PERWIRA Jakarta perlu dibuat sebuah aplikasi sistem informasi akademik yang bisa diakses kapan saja dan dimana saja dengan menggunakan sebuah telepon seluler..?
Sangat Perlu 26%
Perlu 44% Tidak perlu 30%
7 Menurut anda apakah sistem informasi yang sekarang berjalan sudah memuaskan ?
Sudah 20%
Hampir 20% Belum 60%
Aplikasi Sistem Informasi Akademik
Berbasis WAP Pada SMP PERWIRA Jakarta
ABSTRAK
Perkembangan teknologi informasi yang pesat sejalan dengan meningkatnya kebutuhan akan informasi, salah satu
teknologi tersebut yaitu WAP (Wireless Application Protocol). WAP adalah protokol yang memungkinkan piranti wireless
melakukan komunikasi data seperti mengakses internet melalui jaringan seluler digital. Pemberian Informasi Akademik di
SMP Perwira belum terkomputerisasi dan terpusat, dari data kuesioner yang dilakukan terhadap 100 orang tua siswa secara
acak, ternyata pemberian informasi akademik yang berjalan selama ini terkadang tidak tersampaikan kepada wali siswa, wali
siswa juga harus langsung datang ke sekolah dan mengantri untuk melihat nilai rapor, informasi bayaran sekolah pun
terkadang tidak tersampaikan kepada wali siswa. Dengan menggunakan aplikasi sistem informasi akademik berbasis WAP
yang bersifat mobile membuat informasi akademik dapat dilihat kapanpun dan dimanapun. Dalam metode pengembangan
sistem penulis menggunakan RAD (Rapid Application Development). Aplikasi ini dibuat menggunakan beberapa bahasa
pemrograman yaitu WML kemudian HTML dan PHP, menggunakan database MySQL serta server Apache yang kesemuanya
terintegrasi dalam XAMPP. Dengan aplikasi ini dapat memudahkan orang tua siswa dan siswa untuk dapat melihat informasi
akademik sekolah seperti nilai uts, nilai uas, jumlah nilai rapor dan rata-rata nilai rapor serta informasi-informasi akademik
lainnya seperti info terkini, info bayaran siswa, jadwal UAS & UTS, pelajaran yang bersifat mobile sehingga dapat dilihat
kapanpun dan dimanapun. Pengembangan aplikasi ini dapat dilakukan penampilan nilai rapor secara keseluruhan dan
penambahan content di perangkat mobile dengan tampilan yang lebih menarik.
Kata Kunci : WAP, RAD, SMP Perwira, Akademik
1. PENDAHULUAN
Perkembangan teknologi informasi yang
berkembang dengan pesat sejalan dengan meningkatnya
kebutuhan akan informasi, seperti dalam bidang
pendidikan, sosial, ekonomi, budaya dan sebagainya.
Seiring dengan pesatnya perkembangan teknologi
informasi, telah bermunculan pula berbagai media
penyajian informasi yang dapat memberikan kemudahan
bagi pengguna untuk mengakses berbagai informasi yang
cepat dan akurat, salah satu teknologi tersebut yaitu WAP
(Wireless Application Protocol).
WAP (Wireless Application Protocol) adalah suatu
protokol komunikasi dan lingkungan aplikasi untuk
pengembangan sumber daya informasi (Simarmata,
2006:3), WAP adalah protokol yang memungkinkan
piranti wireless melakukan komunikasi data seperti
mengakses internet melalui jaringan seluler digital ( Fiati,
2005 : 60).
Dengan WAP, untuk mengakses informasi cukup
dengan memiliki sebuah telepon seluler yang dilengkapi
fasilitas internet dan GPRS (General Packet Radio System)
enable, yang telah diaktifkan setting GPRS-nya, setelah itu
informasi – informasi dapat diakses dengan mudah,
dikatakan dengan mudah karena informasi dapat diakses
kapanpun dan dimanapun selama masih terjangkau oleh
sinyal wireless dari telepon selular tersebut.
SMP Perwira Jakarta Merupakan sebuah sekolah
menengah pertama swasta yang terletak di Jl H. Dilun No.
4, Pesanggrahan, Jakarta selatan. Sekolah ini berdiri sejak
tahun 1986. Dalam proses penyebaran informasi akademik
SMP perwira Jakarta belum memiliki suatu sistem
informasi akademik yang terkomputerisasi dan terpusat
dimana informasi – informasi akademik yang diberikan
oleh sekolah kepada masyarakat umum khususnya orang
tua siswa dijalankan secara manual. Informasi akademik
yang diterima oleh wali siswa berupa buku rapor,
selebaran, bukti pembayaran yang dibagikan oleh sekolah
secara berkala.
Dari hasil observasi yang telah dilakukan oleh
peneliti di SMP Perwira Jakarta, pada SMP Perwira
Jakarta terdapat tiga tingkatan, yaitu 7, 8, 9, kemudian tiap
tingkatan memiliki 9 kelas, setiap kelas terdapat kurang
lebih 40 murid. Berdasarkan data absensi siswa angkatan
2009/2010, jumlah siswa mencapai 1062 siswa, semua
proses informasi dikendalikan oleh tata usaha. Dokumen –
(1)Riki Danang Surahman
(2)Nur Aeni Hidayah
(3)Zulfiandri
(1)Mahasiswa Fakultas Sains dan Teknologi
(2)Dosen Fakultas Sains dan Teknologi
(3)Dosen Fakultas Sains dan Teknologi
Universitas Islam Negeri Syarif
Hidayatullah Jakarta
Universitas Islam Negeri Syarif
Hidayatullah Jakarta
Universitas Islam Negeri Syarif
Hidayatullah Jakarta
Telp. 085814850888 Telp. (021) 75907388 / 081315817386 Telp. 08158940808
e-mail : [email protected] e-mail : e-mail : [email protected]
dokumen yang digunakan pada tata usaha berupa lembaran
kertas yang mudah rusak dan hilang, hal ini dapat
menyebakan proses informasi menjadi terhambat bahkan
mungkin tidak tersampaikan karena begitu banyaknya
dokumen yang berupa kertas belum lagi dokumen yang di
berikan kepada siswa untuk disampaikan kepada orang
tuanya.
Merujuk pada penelitian sebelumnya yang
dilakukan oleh (Dawimah, 2010) dan (Udin Suchaini,
2007), penulis berupaya mewujudkan aplikasi untuk
memberitahukan informasi akademik setiap siswa kepada
wali siswa dengan berbasis WAP menggunakan suatu
aplikasi yang mudah digunakan, dalam skripsi yang
berjudul APLIKASI SISTEM INFORMASI
AKADEMIK BERBASIS WAP PADA SMP
PERWIRA JAKARTA.
2. LANDASAN TEORI
2.1. Aplikasi
Aplikasi merupakan bagian dari perangkat lunak.
Perangkat lunak dibagi menjadi 3 tingkatan : Tingkatan
program aplikasi (Application Program misalnya
Microsoft Office), Tingkatan sistem operasi (Operating
System misalnya Microsoft Windows), dan tingkatan
bahasa pemrograman. Pawirosumarto (2008 : 39).
2.2. Perangkat Telepon Seluler Pendukung Aplikasi
Internet Mobile
2.2.1. GSM (Global System for Mobile Communication)
GSM adalah teknologi seluler digital atau standar
komunikasi yang digunakan di seluruh dunia. GSM
pertama kali diperkenalkan tahun 1991 dan pada tahun
1997 sudah dipakai secara luas di lebih dari 100 negara,
dan telah menjadi suatu standar telekomunikasi seluler
bagi Asia dan Eropa. GSM menggunakan frekuensi radio
900 MHz dan 1800 MHz di Eropa, Asia dan Australia. Di
Amerika Utara dan Amerika latin, frekuensi yang
digunakan adalah 1900 Mhz. Teknologi GSM
memungkinkan sampai dengan 8 (delapan) panggilan
secara simultan pada frekuensi yang sama dan
menggunakan jalur data narrowband Time Division
Multiple Access (TDMA). TDMA sendiri adalah teknologi
yang digunakan untuk mengelola transmisi digital seperti
sinyal bergerak pada mobile phone dan BTS (Base
Transceiver System). Dalam TDMA, sebuah pita frekuensi
dipecah-pecah menjadi beberapa channel, atau time slot,
yang ditumpuk (stack) menjadi beberapa unit waktu yang
lebih pendek. Pemecahan ini memungkinkan adanya
pembagian sebuah channel dipakai oleh beberapa
panggilan (call). Prasetyo (40 : 2005).
2.2.2. GPRS (General Packet Radio System)
GPRS (General Packet Radio System) adalah
teknologi yang menyediakan layanan paket radio untuk
mentransmisikan data berukuran besar secara efisien.
GPRS merupakan sistem transmisi berbasis paket
untuk GSM yang menggunakan prinsip 'tunnelling'. Ia
menawarkan laju data yang lebih tinggi. Laju datanya
secara kasar sampai 160 kbps dibandingkan dengan 9,6
kbps yang dapat disediakan oleh rangkaian tersakelar
GSM.
Dalam teorinya GPRS menjanjikan kecepatan
mulai dari 56 kbps sampai 115 kbps, sehingga
memungkinkan akses internet, pengiriman data
multimedia ke komputer, notebook dan handheld
computer. Oetomo (2003:98).
2.2.3. CDMA (Code Division Multiple Access)
CDMA adalah sebuah metode transmisi wireless di
mana sinyal-sinyal dirubah menjadi kode menggunakan
urutan yang acak, untuk mendefinisikan sebuah channel.
CDMA memberikan efisiensi yang lebih baik pada
transmisi sinyal analog, karena memungkinkan lebih
banyak penggunaan ulang frekuensi. Karakteristik sistem
CDMA antara lain mampu mengurangi putusnya transmisi
panggilan (call), lebih hemat energi dan memberikan
kemanana yang lebih baik. Teknologi CDMA pada
awalnya adalah oleh sebuah teknologi militer yang
digunakan pada masa perang dunia ke dua. Karena
perusahaan Qualcomm Inc. berhasil menciptakan chip
komunikasi CDMA, maka teknologi komunikasi ini
menjadi paten dan hak privat perusahaan Qualcomm dan
telah dikomersialkan.([email protected],2002)
2.2.4. J2ME (Java 2 Micro Edition)
Pada tahap perkembangan awal aplikasi pada
ponsel, masing – masing vendor menghasilkan platform,
sistem operasi, dan aplikasi sendiri. Hal ini tidak
menguntungkan bagi pembuat aplikasi dan perkembangan
aplikasi tersebut.
Maka untuk alasan inilah maka standarisasi perlu
dilakukan. Disamping membuat forum yang merumuskan
standarisasi tersebut diperlukan sebuah bahasa
pemrograman yang dapat bekerja pada semua platform
yang ada. Hal ini dijawab dengan hadirnya J2ME. J2ME
adalah platorm fleksibel dan dapat berjalan pada berbagai
macam perankat handheld. Hal ini sesuai dengan tujuan
pembuatan bahasa pemrograman Java, yaitu ”Write Once
Run Anywhere”
.(http://java.sun.com/j2mc/docs/KVMwp.pdf).
2.2.5. MIDP (Mobile Information Device Profile)
MIDP menyediakan fungsi utama dari aplikasi
yang dibutuhkan oleh aplikasi mobile, termasuk user
interface, konektivitas jaringan, penyimpanan data, dan
manajemen aplikasi. Spesifikasi dari MIDP dibentuk
melalui JCP (Java Community Process), sebuah grup yang
terdiri atas pembuat perangkat handheld dan software,
yang mempunyai lebih dari 50 perusahaan. Jadi sekarang
dengan MIDP, programer cukup menulis aplikasi sekali
dan dapat digunakan pada perangkat handheld. MIDP
dipakai secara luas sebagai platform untuk aplikasi mobile.
MIDP dikembangkan secara global pada ponsel dan PDA,
dan didukung oleh IDE (Integrated Development
Environment) dari teknologi Java. Hampir perusahaan
diseluruh dunia menggunakan MIDP untuk membuat
aplikasi mobile yang digunakan oleh konsumen luas dan
perusahaan. (http://java.sun.com/j2mc/docs/KVMwp.pdf).
2.2.6. MIDlet
MIDlet adalah aplikasi yang dibangun dengan
menggunakan platform J2ME dmprofile MIDP.
2.3. WAP ( Wireless Application Protocol )
2.3.1. Definisi WAP
WAP adalah protokol yang memungkinkan piranti
wireless melakukan komunikasi data seperti mengakses
internet melalui jaringan seluler digital.
WAP merupakan himpunan protokol yang didesain
secara khusus untuk komunikasi internet dengan divais
bergerak yang memiliki layar kecil dan bandwith yang
rendah. WAP juga dimaksudkan untuk meningkatkan
fungsionalitas telpon genggam untuk layanan real time,
seperti informasi indeks saham, lalu lintas dan cuaca.
Dengan WAP kita diberi peluang untuk membuat aplikasi
dari layanan – layanan tersebut, Fiati (2005 : 60).
2.3.2. Arsitektur WAP
Sistem WAP dibangun oleh beberapa elemen
tertentu dalam segi arsitektur yang khas seperti yang
ditunjukan pada gambar dibawah ini. Agung (2001 : 31).
Gambar 2.1. Arsitektur WAP
Elemen yang pertama WAP client. Dalam sistem WAP,
Telepon seluler merupakan ujung dari mata rantai
jaringan, yang sekaligus berperan sebagai pelanggan
sistem dan disebut WAP client. Telepon seluler ini
tersambung ke WAP Gateway (elemen yang kedua)
melalui gelombang radio frekuensi tinggi 900/1800/1900
MHz GSM (Global System For Mobile Comunication).
WAP Gateway hanya dapat dimiliki oleh badan usaha
yang memiliki lisensi. Funsi dari WAP Gateway berfungsi
untuk meneruskan permintaan informasi dari mobile
device menuju server (lewat HTTP Request) dan dari
server menuju ponsel (lewat HTTP Response). Elemen
yang ketiga server. Server merupakan tempat yang
berisikan data – data yang diakses oleh user atau client. Di
server inilah, script „WML‟ ditempatkan.
2.3.3. Komponen WAP
Fiati (2005 : 63-70), komponen WAP terdiri atas 5
layer dan 1 layer bearer service, yaitu :
[1] WAE (Wireless Application Environtment)
Wireless Application Environment (WAE) yaitu
layer aplikasi tempat aplikasi WAP bekerja. Layer
ini mendukung 3 aplikasi, yaitu Wireless Markup
Language (WML), WML – script, dan Wireless
Telephony Application (WTA).
WAE merupakan pemodelan WWW dimana semua
format konten sesuai standar internet karena
didukung Mobile Network Service seperti Call
Control dan Messaging. Disini gateway, berfungsi
sebagai encoding dan decoding (Encoder).
[2] WSP (Wireless Session Protocol).
Wireless Session Protocol (WSP), yaitu layer
session yang mengontrol lalu lintas aplikasi
sebelum sampai ke layer WAE. WSP didesain
untuk fungsi transaction dan datagram service.
Fungsi WSP salah satunya adalah menghubungkan
client ke server. Fungsi lain adalah Capability
Negotiation yaitu kemampuan untuk persetujuan
fungsionalitas session dan pemilihan protokol
sehingga menungkinkan aplikasi pada server dapat
didukung oleh client dengan menggunakan
konfigurasi dan protokol. WSP juga menyediakan
http, interupt transaction in process, push content
dari server ke client dengan cara unsynchronous.
WSP berfungsi unsynchronous transaction secara
simultan.
[3] WTP (Wireless Transaction Protocol).
Wireless Transaction Protocol (WTP) adalah layer
transfer untuk mengetahui apakah data berhasil
dikirim atau belum dan melakukan pengiriman
kembali sekiranya data tidak terkirim.
Transaction protocol adalah protokol untuk
mengatur penukaran data dari suatu aplikasi,
misalnya pada saat browsing. Tujuan protokol ini
adalah memberikan sistem penyampaian transaksi
secara reliabel dengan kemampuan retransmit
message yang mengalami loss dan untuk
menghindari duplikasi message. berfungsi
memeriksa format data, konversi data dan atau
pengkodean yang akan ditransmisikan.
[4] WTSL (Wireless Transport Layer Security).
Wireless Transaction Protocol (WTLS), yaitu layer
keamanan (security) tempat dilakukan enkripsi data
untuk pengiriman data sensitif yang tidak dapat
diketahui oleh umum.
[5] WDP (Wireless Diagram Protocol).
Wireless Diagram Protocol (WDP), yaitu layer
transport yang merupakan interface protokol
aplikasi dengen bearer service (jaringan wireless).
Layer ini melakukan kontrol transmisi data, apakah
menggunakan mekanisme UDP yang bersifat
connectionies atau mobile IP yang bersifat
connection – oriented. WDP merupakan transport
layer yang beroperasi di atas bearer service yang
mendukung berbagai tipe network. Fungsi WDP
antara lain adalah pengalamatan aplikasi dengan
port number, optional SAR (Segmentation and
Reassembly), optional error detection, memberikan
aplikasi yang beroperasi melalui bearer service dan
karakteristik yang berbeda. merupakan kelanjutan
dari WTLS yang mampu berkomunikasi dengan
bearer. Bertugas mentransmisikan data dalam
format biner melalui media gateway, serta
mendefinisikan pengalamatan jaringan yang akan
dikenali oleh bearer.
[6] Bearer
Bearer terdiri dari data switch, short massage data,
paket data yang memiliki fungsi untuk melakukan
transfer data dari suatu unit informasi yang berisi
alamat dan melakukan pemeriksaan error dan
penundaan transfer hingga proses benar.
[7] Others Services and Application
Selain dari layer – layer diatas, pendukung aplikasi
lainnya merupakan program aplikasi jaringan,
notepad, phonebook, kalender, e-commerce, mobile
banking, dan lain – lain.
Gambar 2.2. Komponen – komponen WAP
2.3.4. Tipe MIME (Multipurpose Internet Mail
Extensions) pada WAP
Agar Suatu aplikasi internet dapat berjalan pada
web server, maka tipe atau format data aplikasi tersebut
harus dikenal oleh web server. Format data yang dapat
dilayani oleh internet disebut MIME (Multipurpose
Internet Mail Extensions). Tipe MIME ini dikirim oleh
server bersama data dan melalui MIME ini maka browser
mengetahui data apa yang dikirim.
WAP pun mempunyai tipe MIME yang khusus dan harus
ditambahkan dalam konfigurasi MIME agar ponsel dapat
mengakses dokumen WAP server. (Simarmata, 2006:15)
Tipe MIME yang digunakan oleh WAP dapat dilihat pada
tabel 2.1. berikut
Tabel 2.1. Tipe MIME yang digunakan oleh WAP
Tipe MIME Ekstensi Tipe File
Text/vnd.wap.wml Wml WML Script Code
Application/vnd.wa
p.wml-wbxml
Wmlc Compiled WML
Text/vnd.wap.wmls
cript
Wmls WML Script Code
Application/vnd.wa
p.wmlscriptc
Wmlsc Compiled WML
Script
Image/vnd.wap.wb
mp
Wbmp WML Bitmap
Text/x-hdml Hdml HDML Script Code
2.4. WML ( Wireless Markup Language )
2.4.1. Definisi WML
Wireless Markup Language adalah bahasa
pendekripsi halaman yang menguraikan bagaimana isi
WAP disajikan kepada user. Dengan WML, dapat
menampilkan informasi pada telepon mobile, memberikan
user pilihan masukan, dan menetapkan bagaimana user
agent dapat merespon ketika user mengaktifkan fungsi
interface atau menekan key. Simarmata (2006 : 10).
2.4.2. Struktur WML
Pada WML dibagi menjadi 2 bagian yaitu header
dan body. Bagian header terdapat dua hal yang dapat
dideklarasikan, yang pertama versi XML dan Document
Type Definition (DTD). Dalam deklarasi DTD berfungsi
agar dokumen yang dibuat dapat dikenali.
Script berikut tidak akan menampilkan apapun,
tetapi menunjukan elemen setiap halaman WML.
[1] <?xml version=”1.0”?>
[2] < !DOCTYPE wml PUBLIC “-
//WAPFORUM//DTD WML 1.1 / / EN”
“http://www.wapforum.org/DTD/wml1_1.1.xml>.
[3] <wml>
[4] </wml>
Baris 1 dan 2 adalah header sedangkan baris 2 merupakan
body, Baris 1 mengidentifikasikan bahwa dokumen yang
ditulis adalah versi terakhir XML. Baris 2 menetapkan
bahwa dokumen adalah WML versi 1.1, yang merupakan
standar dokumen sekarang sampai versi terbaru dari WAP
diperkenalkan. Baris 3 dan 4 berisi tag pembuka <wml>
dan tag penutup </wml>.
2.4.3. WML Deck dan Card
Perbedaan utama antara HTML dan WML adalah
unit dasar navigasi pada HTML adalah page sedangkan
pada WML adalah sebuah card. File WML dapat berisi
card yang membentuk sebuah deck. Dengan kata lain,
card dikelompokan bersama – sama di dalam deck. Ketika
user pergi ke WAP site, mobile browser memuat suatu file
WML yang berisi sebuah deck dan card server Hanya satu
card yang akan ditunjukan pada layar wireless device
setiap waktu. Jika user pergi ke card lain pada deck yang
sama, mobile browser tidak mengirimkan apapun atas
permintaan server karena file yang berisi deck telah
disimpan di dalam wireless device. Gambar berikut adalah
ilustrasi WML deck dan card.
.
Gambar 2.3. Ilustrasi WML Deck dan Card
3. METODOLOGI PENGEMBANGAN SISTEM
Penelitian dilakukan dengan menggunakan metode
pengembangan sistem model pendekatan RAD (Rapid
Application Development). Penulis menggunakan model
RAD karena melihat dari aplikasi yang dikembangkan
adalah aplikasi yang sederhana dan tidak membutuhkan
waktu yang lama, metode RAD adalah metode yang
diperuntukkan untuk jangka pendek sesuai dengan aplikasi
yang dikembangkan. Berikut adalah penjelasan masing-
masing fase RAD dalam penelitian ini.
3.1. Fase Perencanaan Syarat-Syarat
[1] Analisis Kebutuhan Masalah
Pada Analisis kebutuhan masalah, peneliti
melakukan analisa pada sistem yang berjalan
kemudian mencari identifikasi masalah yang
terdapat pada sistem informasi yang sudah berjalan
baru kemudian peneliti memberikan solusi
pemecahan masalah pada sistem informasi di SMP
PERWIRA Jakarta.
Dari hasil observasi dan wawancara yang dilakukan
pada tahap sebelumnya, maka peneliti dapat
menganalisis bahwa dengan kapasitas siswa yang
banyak, maka pemberian informasi kepada siswa
dan orang tua siswa pada SMP PERWIRA Jakarta
dengan menggunakan metode manual seperti rapor,
selebaran, bukti pembayaran belum cukup mampu
untuk memenuhi kebutuhan akan akses informasi
akademik, karena file – file yang berupa kertas akan
mudah rusak hilang ataupun tercecer, hal ini dapat
menyebabkan proses pemberian informasi menjadi
terhambat sehingga dapat menganggu jalannya
kegiatan belajar – mengajar. Oleh karena itu,
diperlukan sebuah aplikasi sistem informasi
akademik yang dapat memudahkan akses terhadap
informasi akademik pada SMP PERWIRA Jakarta.
Untuk selengkapnya dapat dilihat pada subbab
4.4.1.
[2] Tujuan
Berdasarkan pada analisis kebutuhan di
atas, maka tujuan penelitian ini adalah
untuk membuat suatu aplikasi sistem
informasi akademik berbasis WAP yang
dapat memenuhi kebutuhan akses infomasi
yang mudah digunakan baik oleh orang tua
atau wali siswa maupun sekolah. Untuk
selengkapnya dapat dilihat pada subbab 4.4.2.
[3] Syarat-syarat
Untuk mewujudkan tujuan tersebut dibutuhkan
beberapa syarat minimum dalam pembuatan
aplikasi keamanan data ini yaitu 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. Untuk
pengembangan aplikasi ini dibutuhkan
minimum Web Server Apache 2.2.8.
(b) Bahasa Pemrograman
Bahasa pemrograman dibutuhkan untuk
dapat membangun sebuah aplikasi, agar
komputer dapat melakukan berbagai operasi
dan fungsi sesuai dengan keinginan user.
Untuk itu dibutuhkan suatu bahasa
pemrograman yang dapat digunakan untuk
membuat aplikasi client server. Bahasa
pemrograman minimum yang dibutuhkan
dalam pengembangan aplikasi ini adalah
PHP 5.2.5, WML 1.0.
(c) Database
Perancangan tabel-tabel akan digunakan
untuk pelengkap program seperti proses
login serta proses penamaan dan
penyimpanan file enkripsi. Database yang
dibutuhkan adalah database MySQL 5.0.51.
3.2. Fase Perancangan
Pada tahap ini dilakukan perancangan proses yaitu
perancangan proses-proses yang akan terjadi di dalam
sistem.
[1] Perancangan Proses
Perancangan proses-proses yang akan terjadi
didalam sistem informasi akademik pada SMP
Perwira menggunakan metode terstruktur yakni
dengan membuat Data Flow Diagram, Entity
Relationship Diagram, Flowchart, dan
Normalisasi.
[2] Perancangan Antarmuka Pemakai (User Interface)
Antar muka pemakai memberikan fasilitas
komunikasi antar pemakai dan sistem, memberikan
berbagai fasilitas informasi dan berbagai
keterangan yang bertujuan untuk membantu
mengarahkan alur penelusuran masalah sampai
ditemukan solusi. Merencanakan tampilan untuk
tata letak sesuai dengan fungsi aplikasi sistem
informasi akademik berbasis WAP.
3.2. Fase Konstruksi
Pada tahap ini dilakukan proses pengkodingan
terhadap rancangan-rancangan yang telah didefinisikan.
Pembuatan program yang dilakukan menggunakan bahasa
pemrograman PHP 5.2.5. dan WML 1.0. yang dibuat
dengan menggunakan Macromedia Dreamweaver 8.0..
3.3. Fase Pelaksanaan
Pada tahapan ini dilakukan pengujian terhadap
aplikasi sistem informasi akademik berbasis WAP pada
SMP PERWIRA yang telah dibuat, pada pengujian
terhadap aplikasi ini, penulis menggunakan pengujian
black-box pada sisi server dan user yaitu suatu pengujian
yang berfokus pada persyaratan fungsional perangkat
lunak (Pressman, 2002: 551). Sebagai akhir dari fase
pelaksanaan, diminta tanggapan user tentang aplikasi ini
untuk bahan evaluasi.
4. PEMBAHASAN DAN IMPLEMENTASI
4.1. Fase Perencanaan Syarat-syarat
4.1.1. Analisis Kebutuhan Masalah
Pada Analisa kebutuhan masalah, peneliti
melakukan analisa pada sistem yang berjalan kemudian
mencari identifikasi masalah dari kelemahan – kelamahan
yang terdapat pada sistem informasi yang sudah berjalan
pada SMP PERWIRA Jakarta, baru kemudian peneliti
memberikan solusi pemecahan masalah pada sistem
informasi di SMP PERWIRA Jakarta, lalu mengusulkan
sebuah sistem informasi akademik berbasis WAP yang
dapat membantu permasalahan-permasalahan yang telah di
analisa.
4.1.2. Tujuan
Peneliti bertujuan untuk membuat suatu aplikasi
sistem informasi akademik berbasis WAP yang dapat
diakses kapanpun dimanapun dengan mudah sehingga
proses penyampaian informasi akademik SMP PERWIRA
Jakarta kepada siswa dan orang tua atau wali murid
menjadi mudah.
4.1.3. Syarat-syarat
Untuk mewujudkan tujuan tersebut digunakan
beberapa syarat dalam pembuatan aplikasi keamanan data
ini yaitu meliputi hal-hal sebagai berikut :
[1] Web server
Web server merupakan syarat mutlak suatu aplikasi
berbasis web. Web server merupakan platform
untuk menjalankan suatu aplikasi berbasis web.
Untuk pengembangan aplikasi ini dibutuhkan
minimum Web Server Apache 2.2.8.
[2] Bahasa Pemrograman
Bahasa pemrograman dibutuhkan untuk dapat
membangun sebuah aplikasi, agar komputer dapat
melakukan berbagai operasi dan fungsi sesuai
dengan keinginan user. Untuk itu dibutuhkan suatu
bahasa pemrograman yang dapat digunakan untuk
membuat aplikasi client server. Bahasa
pemrograman minimum yang dibutuhkan dalam
pengembangan aplikasi ini adalah PHP 5.2.5.,
WML 1.0.
[3] Database
Perancangan tabel-tabel akan digunakan untuk
pelengkap program seperti proses login serta proses
penamaan dan penyimpanan file informasi
akademik. Database yang dibutuhkan adalah
database MySQL 5.0.51.
4.1.4. Fase Perancangan (Workshop Design)
Pada tahap ini dilakukan perancangan, evaluasi dan
memperbaiki sistem sesuai dengan kebutuhan agar sistem
yang sedang dibuat dapat dimanfaatkan secara optimal.
4.1.5. Perancangan Proses
[1] Diagram konteks sistem yang diusulkan
Gambar 4.1. Diagram konteks sistem yang diusulkan
Dalam konteks diagram pada gambar 4.4
menggambarkan hubungan sistem dengan
lingkungannya yang terdiri dari Staf , Wali kelas,
Guru, Siswa, orang tua atau wali siswa dapat masuk
dengan nis yang dimiliki oleh siswa yang
bersangkutan.
[2] Diagram zero sistem yang diusulkan
Gambar 4.2. Diagram zero sistem yang diusulkan
[3] Diagram level 1 proses 1.0 sistem yang diusulkan
(login)
Gambar 4.3. Diagram level 1 proses 1 sistem yang
diusulkan (login)
Diagram pada gambar 4.3. diatas menunjukan
proses login dimulai dengan melakukan input yang
berbeda beda pada tiap entitas, untuk Staf
menginput username dan password, untuk wali
kelas dan guru menginput nuptk dan password
untuk siswa menginput nis dan password baru
kemudian sistem akan mengecek ke database
apakah data yang telah dimasukan tiap user benar,
jika benar kemudian dilakukan verifikasi user dan
setiap user akan mendapatkan hak akses untuk
masuk ke dalam sistem.
[4] Diagram level 1 proses 2.0 sistem yang diusulkan
(olah nilai)
Gambar 4.4. DFD level satu proses 2.0 (olah nilai)
Diagram pada gambar 4.4. diatas menunjukan
proses olah nilai, dimana hak akses olah nilai
hanya dimiliki oleh guru, terdapat 3 piihan apakah
guru akan menambah, menubah atau menghapus
nilai. Disini guru menginput nilai tiap siswa ke
dalam database nilai dan hasil outputnya adalah
nilai tiap siswa.
[5] Diagram level 1 proses 4.0 sistem yang diusulkan
(olah rapor)
Gambar 4.5. DFD level satu proses 4.0 (olah rapor)
Diagram pada gambar 4.5. diatas menunjukan
proses olah rapor, dimana hak akses hanya dimiliki
oleh wali kelas, terdapat 3 pilihan apakah wali kelas
akan menambah merubah, atau menghapus data
rapor. Disini wali kelas akan menginput data rapor
ke dalam database rapor yang akan menghasilkan
output data rapor.
[6] Diagram level 1 proses 6.0 sistem yang diusulkan
(olah data)
Gambar 4.6. DFD level satu proses 6.0 (olah data)
Diagram pada gambar 4.6. diatas menunjukan proses olah
data, dimana hak akses hanya dimiliki oleh staf, terdapat 3
pilihan apakah staf akan menambah, merubah, atau
menghapus data – data primer. Disini staf melakukan input
data – data primer ke dalam tiap – tiap database. Data
primer yang dimasukan yaitu data siswa, data guru, data
wali kelas, data mata pelajaran, data kelas, data jadwal
pelajaran, data jadwal uts, data jadwal uas, data bayaran
dan data berita.
4.1.6. Perancangan Flowchart
Pada tahap ini dilakukan perancangan flowchart
algoritma aplikasi enkripsi.
[1] Flowchart proses Login
Gambar 4.7. Flowchart proses login
[2] Flowchart proses olah nilai
Gambar 4.8. Flowchart Proses olah nilai
[3] Flowchart proses olah rapor
Gambar 4.9. Flowchart Proses olah rapor
[4] Flowchart proses olah data
Gambar 4.10. Flowchart Proses olah data
[5] Flowchart proses lihat nilai, rapor, data
Gambar 4.11. Flowchart Proses lihat nilai, rapor, data.
4.1.7. Perancangan Basis Data
Pada pengembangan aplikasi sistem informasi
akademik ini ini digunakan database sebagai pelengkap
program seperti proses login dan proses penyimpanan data
– data . Database yang digunakan adalah database
MySQL.
[1] Struktur Entity Relationship Diagram (ERD)
Gambar 4.12. Struktur Entity Relationship Diagram
4.1.8. Perancangan Antarmuka
Dalam perancangan antarmuka aplikasi sistem
informasi akademik yang berbasis WAP ini, dibuat
beberapa form yang akan ditampilkan, terdapat dua jenis
form yang ditampilkan, yang pertama berbasis WAP yang
digunakan oleh muird dan orang tua murid, kemudian
dengan berbasis web yang akan digunakan oleh Staf, Guru
dan Wali kelas.
4.2. Fase Konstruksi
Pada fase ini, dilakukan pengkodean terhadap
rancangan-rancangan yang telah didefinisikan sebelumnya
menggunakan bahasa pemrograman PHP 5.2.5 dan WML
1.0., MySQL 5.0.51.sebagai basis datanya, Apache(win32)
2.2.8. sebagai web server, semua tergabung dalam
XAMPP 1.6.6a. Untuk pengolahan gambar digunakan
photoshop 7.0. sedangkan untuk pengkodean aplikasi ini
menggunakan software Dreamweaver 8.0, untuk mengedit
source code program, sebuah ponsel dengan fitur WAP,
mozzilla firefox sebagai microbrowsernya.
4.3. Fase Pelaksanaan (Implementasi)
Pengujian yang dilakukan terhadap aplikasi sistem
informasi akademik ini adalah pengujian dengan metode
blackbox. Pengujian dilakukan dengan menjalankan semua
fungsi dan fitur yang ada dari aplikasi ini dan kemudian
dilihat apakah hasil dari fungsi-fungsi tersebut sesuai
dengan yang diharapkan. Untuk Aplikasi WAP dijalankan
dengan menggunakan sebuah ponsel yang dilengkapi
fasilitas internet, kemudian untuk aplikasi Web dijalankan
dengan menggunakan web browser di komputer, client dan
user mencoba melakukan proses input dan menghasilkan
output sesuai dengan yang diharapkan.
4.3.1. Konfigurasi WAP Server dan Web Server
Pada implementasi ini, peneliti melakukan
konfigurasi WAP server dan web server. Pada WAP server
peniliti dapat menggunakan sebuah ponsel atau
microbrowser, untuk itu harus memasukan beberapa
parameter MIME type yang terdapat pada file httpd.conf
yang terletak pada webserver Apache, Parameter itu antara
lain :
AddType application/x-httpd-php .php
AddType application/x-httpd-php .php3
AddType application/x-httpd-php-source .phps
#Tambahan parameter untuk wap disini AddType application/x-httpd-php .wml
AddType text/vnd.wap.wml .wml
AddType image/vnd.wap.wbp .wbmp
AddType text/vnd.wap.wmlscript .wmlsc
AddType text/vnd.wap.wmlscript .wmls
AddType application/vnd.wap.wmlc .wmlc
AddType application/vnd.wap .wmlscriptc
AddType text/vnd.wap .wmlscript
AddType text/vnd.wap .wmlscript
Lalu jika menggunakan add ons untuk wml browser pada
mozzila firefox tidak perlu memasukan parameter untuk
MIME type. sedangkan untuk web server dengan
menggunakan Apache sebagai web servernya, kofigurasi
Apache cukup dengan menginstall software Xampp 1.6.6a.
4.3.2. Prinsip Kerja Sistem yang dibuat
[1] Aplikasi WAP ini hanya dapat diakses melalui
ponsel yang memiliki fasilitas WAP atau bisa juga
dengan menggunakan microbrowser.
[2] Server menerima akses dan menjalankan program
PHP untuk melakukan query pada database server,
serta mengirimkan hasil query dalam format WML,
sehingga dapat diterima oleh user yang
menggunakan ponsel.
[3] Pengaksesan database server menggunakan PHP
dan MySQL sebagai database server, halaman –
halaman WML digenerate dengan menggunakan
PHP pada server.
[4] Pilihan menu yang dipilih oleh user akan diterima
akan diterima oleh server dan selanjutnya
menampilkan informasi yang telah dipilih oleh
user.
[5] Untuk melakukan update data dapat menggunakan
aplikasi lain yang dibuat dengan PHP, guna
mempemudah proses pengubahan, penambahan
ataupun penghapusan data. User yang dapat
mengakses halaman ini terdiri dari Staf, Wali kelas,
dan guru.
4.3.3. Pengujian Aplikasi Acrypt cs
Dalam penelitian ini peneliti melakukan pengujian
sistem yaitu dengan black box test
Dengan menggunakan metode black box, pengujian
dengan melakukan testing tanpa melihat source code
program dan dijalankan oleh penguji maupun user untuk
mengamati apakah aplikasi tersebut telah menerima input
yang diproses kemudian menghasilkan output yang sesuai
dengan request.
5. PENUTUP
5.1. Kesimpulan
Berdasarkan uraian bab-bab sebelumnya, maka
dapat diambil kesimpulan dari penulisan skripsi ini sebagai
berikut :
[1] Aplikasi sistem informasi akademik berbasis WAP
ini tidak memerlukan proses instalasi aplikasi
terlebih dahulu..
[2] Aplikasi sistem informasi akademik berbasis WAP
dapat diakses dengan menggunakan ponsel.
Sehingga dapat diakses kapan saja dan dimana saja
selama masih terjangkau oleh operator jaringan.
[3] Informasi – informasi yang akan diterima berguna
bagi pihak sekolah maupun pihak murid, karena
orang tua murid dan sekolah dapat berinteraksi
melalui aplikasi sistem informasi akademik
berbasis WAP ini.
5.2. Saran
Berdasarkan penelitian yang diperoleh, ada
beberapa saran untuk pengembangan sistem lebih lanjut,
saran-saran tersebut yaitu:
[1] Mengembangkan aplikasi agar dapat menampilkan
daftar nilai rapor secara keseluruhan pada satu form
tampilan sehingga memudahkan user untuk melihat
nilai.
[2] Diharapkan adanya penambahan content menu atau
fasilitas – fasilitas lain pada aplikasi ini sehingga
lebih interaktif dan menarik.
[3] Aplikasi sistem informasi akademik berbasis WAP
ini menggunakan bahasa pemrograman WML,
alangkah baiknya digunakan digunakan bahasa
pemrograman yang lebih mutakhir seperti java,
xhtml dan lain sebagainya, agar aplikasi yang
dimiliki menjadi lebih modern dan maju.
[4] Pihak sekolah agar mempekerjakan seorang admin
khusus yang bertugas memaintance aplikasi sistem
informasi akademik ini, sehingga akan terus dapat
berjalan dengan baik.
[5] Menggunakan spesifikasi komputer yang lebih
tinggi agar proses maintenance dapat berjalan
dengan baik.
DAFTAR PUSTAKA
Buku :
[1] Agung, Gregorius. 2001. Wap Programming
dengan WML. Yogyakarta : Andi.
[2] Dwi Prasetyo, Didik. 2005. Aplikasi Web Mobile
Menggunakan ASP.NET. Jakarta : Elex Media
Komputindo
[3] Fadjar, Abdul Mukthie. 2002. Reformasi Konstitusi
Dalam Masa Transisi Paradigmatik, Konstitusi
Baru Melalui Komisi Konstitusi Independen.
Jakarta : Pustaka Sinar Harapan.
[4] Fiati, Rina. 2005. Akses Internet VIA Ponsel.
Yogyakarta : Andi.
[5] Frans Setiawan. 2002. Mengamankan Web server
dari Serangan Hacker/ Cracker. Jakarta : PT. Elex
Media Komputindo.
[6] Hartono, Jogiyanto. 1999. Pengenalan Komputer,
Jogjakarta: Andi.
[7] Hartono, Jogiyanto. 2001. Analisis & Disain
Sistem Informasi: Pendekatan Terstruktur Teori
dan Praktek Aplikasi Bisnis. Yogyakarta: Andi.
[8] Kadir, Abdul. 2003. Dasar Pemrograman Web
Dinamis Menggunakan PHP. Yogyakarta: Andi.
[9] Kenneth E. Kendall., Jullie E. Kendall. 2003.
Systems Analysis and Design. fifth Edition.
Dialihbahasakan oleh Thamir Abdul Hafed Al-
Hamdany, B.Sc, M.Sc dalam buku Analisa dan
Perancangan Sistem Jilid 1. Jakarta : Prenhallindo.
[10] Komputer, Wahana. 2006. Menguasai
Pemrograman Web dengan PHP 5. Yogyakarta :
Andi.
[11] Ladjamudin, Al-Bahra. 2005. Analisis dan Desain
Sistem Informasi. Yogyakarta: Graha Ilmu.
[12] Laudon, Kenneth. C dan Laudon, Jane. P. 2004.
Management Information System : Managing the
Digital Firm. New Jersey : Prentice Hall.
[13] Nanang, Herlino. 2004. Web Programming. Jakarta
: UIN Syarif Hidayatullah.
[14] Nugroho, Bunafit. 2009. Pengembangan Program
WAP dengan WML dan PHP. Yogyakarta : Gava
Media.
[15] Oetomo, Budi. dkk. 2003. Jargon e-Bussines.
Yoyakarta : Andi.
[16] Pawirosumarto, Suharno. 2008. Aplikasi
Komputer, Jakarta : Mitra Wacana Media.
[17] Peranginangin, Kasiman. 2006. Aplikasi WEB
dengan PHP dan MySQL. Yogyakarta : Andi.
[18] Pressman, Roger E. 1997. Rekayasa Perangkat
Lunak-Pendekatan Praktisi. Yogyakarta: Andi.
[19] Pressman, Roger E. 2002. Rekayasa Perangkat
Lunak (Pendekatan Praktisi). Yogyakarta : Andi.
[20] Simarmata, Janner. 2006. Pemrograman WAP
dengan Menggunakan WML. Yogyakarta : Andi.
[21] Stalling, William. Diterjemahkan oleh : Thamir
Abdul Hafedh Al-Hamdany, B.Sc., M.Sc. 2001.
Komunikasi Data dan Komputer, Dasar - Dasar
Komunikasi Data. Jakarta : Salemba Teknika.
[22] Suhendar, A. 2003. Teknologi Pemrograman
Mobile Comerce. Bandung : Informatika.
[23] Supriyanto, Aji. 2005. Pengantar Sistem Informasi.
Yogyakarta : Andi.
[24] Sutanta, Edhy. 2004. Sistem Basis Data.
Yogyakarta : Graha Ilmu
[25] Suyanto, M. 2003. Multimedia Alat untuk
meningkatkan keunggulan bersaing. Yogyakarta :
Andi.
[26] Utomo, Prasetya Ambang, ST. 2006. Membangun
Aplikasi Wap Portal untuk Instansi/Lembaga.
Yogyakarta: CV Andi Offset..
Internet :
[1] http://www.wirelessdevnet.com/articles/ (Diakses
tanggal 19 Maret 2010 pukul 08.24).
[2] http://java.sun.com/j2mc/docs/KVMwp.pdf
(Diakses tanggal 20 Maret 2010 pukul 21.00).
1. Aplikasi ini telah di upload ke web hosting, untuk aplikasi WAP, ketik pada
Microbrowser atau telepon selular, www.smpperwira.net, untuk login, gunakan nis :
4094 dan password 4094. Untuk aplikasi Web yang digunakan oleh Staf, Guru dan wali
kelas, ketik pada browser, www.smpperwira.net/adm, untuk login TU, gunakan username
: rikidanang, password : 11111, untuk guru gunakan nuptk : 2858723625200002 dan
password : 2858723625200002, untuk wali kelas gunakan nuptk : 2858723625200002
dan password : 2858723625200002.
2. Sedangkan untuk aplikasi offline,harus dilakukan beberapa proses instalasi. Langkah-
Langkah Instalasi Program :
a. Instalasi Server :
1. Jalankan file xampp-win32-1.7.1-installer.exe
2. Proses instalasi akan dimulai. Klik Next untuk memulainya.
3. Selanjutnya silakan anda Choose Install Location untuk XAMPP. Kemudian klik
Next
4. Pilih fasilitas aplikasi yang akan diinstal. Kemudian klik Install
5. Tunggu beberapa saat sampai proses instalasi selesai.
6. Instalasi selesai
b. Meng-import database :
1. Buka alamat localhost di browser
2. Klik phpMyAdmin di Bagian Tools
3. Buat database baru pada Create new database (dalam hal ini nama database sekolah)
4. Klik Import
5. Pilih file database
6. Klik Go
c. Menginstalasi Aplikasi ke Server :
1. Copy folder smpperwira ke dalam folder htdocs server (biasanya berada di lokasi :
C:\xampp\htdocs)
2. Aplikasi sudah terpasang. Untuk mencobanya, gunakan microbrowser kemudian buka
alamat localhost/smpperwira, untuk aplikasi WAP.
3. Buka alamat localhost/smpperwira/adm untuk aplikasi web.