Studi Kasus pada SD Sokomoyo I Girimulyo Kulon Progo
TUGAS AKHIR
Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program Studi Teknik Informatika
Disusun oleh : ANANG ARDYANTARA
995314004
PROGRAM STUDI TEKNIK INFORMATIKA JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS SANATA DHARMA YOGYAKARTA
Kulon Progo
TUGAS AKHIR
Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program Studi Teknik Informatika
Disusun oleh : ANANG ARDYANTARA
995314004
PROGRAM STUDI TEKNIK INFORMATIKA JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS SANATA DHARMA YOGYAKARTA
2007
A Case Study at SD Sokomoyo I Girimulyo Kulon Progo
FINAL PROJECT
Presented as Partial Fulfillment of The Requirements to Obtain The Sarjana Teknik Degree
In Informatics Engineering
By :
ANANG ARDYANTARA 995314004
INFORMATICS ENGINEERING STUDY PROGRAM DEPARTMENT OF INFORMATICS ENGINEERING
FACULTY OF ENGINEERING SANATA DHARMA UNIVERSITY
YOGYAKARTA 2007
SISTEM INFORMASI AKADEMIK SEKOLAH DASAR
Studi Kasus pada SD Sokomoyo I Girimulyo Kulon Progo
Oleh :
ANANG ARDYANTARA 995314004
Telah disetujui oleh :
Dosen Pembimbing Tanggal Desember 2006
Albertus Agung Hadhiatma, S.T., M.T.
SISTEM INFORMASI AKADEMIK SEKOLAH DASAR
Studi Kasus : SD Sokomoyo I Girimulyo Kulon Progo
Dipersiapkan dan ditulis oleh :
ANANG ARDYANTARA 995314004
Telah dipertahankan di depan Panitia Penguji
pada tanggal 12 Desember 2006
dan dinyatakan telah memenuhi syarat.
Susunan Panitia Penguji
Ketua Augustinus Bayu Primawan, S.T., M.Eng. ……….
Sekretaris Alb. Agung Hadhiatma, S.T., M.T. ……….
Anggota Drs. Stephanus Hari Suparwito, S.J., M.App.IT. ……….
Anggota Merry, S.T. ……….
Yogyakarta, 12 Desember 2006
Fakultas Teknik
Universitas Sanata Dharma Dekan,
Ir. Greg. Heliarko S.J., S.S., B.S.T., M.A., M.Sc.
Janganlah kamu khawatir akan segala sesuatu, tetapi yakinlah akan segala sesuatu
dan bersabarlah terhadap segala sesuatu, dengan demikian kamu akan memperoleh
sesuatu di dalam hidupmu.
Jadikanlah pengalaman sebagai guru besar dalam hidupmu, karena dengan
pengalaman itu kamu mengetahui apa yang sebenarnya baik dan tidak baik bagi
hidupmu mendatang.
Jika kamu lelah dan penat di dalam hidupmu janganlah kamu takut datang dan
berharap pada Dia yang senantiasa akan datang menghibur dan menemanimu.
Tuhan Yesus Kasih-Mu kepada kami sungguh melimpah, tiada kasih seperti
kasih-Mu Tuhan, kasih yang sempurna, kasih yang murni, kasih kalvari. Diri kami yang
hina ini telah kau tebus dengan darah-Mu yang suci. Segala kecemaran dalam diri
kami telah Kau angkat, dosa kami yang merah telah Kau basuh dengan darah-Mu
menjadi putih seputih salju.
Aku rasakan kasih-Mu pada hari baruku oh Tuhan, Engkaulah Allahku dan aku
akan selalu memuji-Mu setiap pagi aku akan mencari-Mu, aku mau selalu belajar
berjalan dijalan-Mu dengan kasih-Mu langkah demi langkah Engkau membimbing
aku, dan aku mau taat karena aku tahu Engkau sayang padaku.
Tuhan Yesus aku memerlukan Dikau, terima kasih untuk kematian-Mu di kayu
salib bagi dosaku, aku membuka pintu hati dan menerima Engkau sebagai juru
selamat dan Tuhanku, Kuasailah hidupku dan bentuklah aku sesuai dengan
kehendak-Mu.
Kupersembahkan karya ini kepada :
1. Hati Yesus yang Maha Kudus dan Bunda Maria.
2. Kedua Orang Tuaku tercinta dan keluarga besarku.
3. Adik-adikku yang sangat aku kasihi.
4. Seseorang yang selalu sayang dan mendampingi aku.
5. Diriku sendiri dan teman-teman tercinta.
Saya menyatakan dengan sesungguhnya bahwa skripsi yang saya tulis ini tidak memuat
karya atau bagian karya orang lain, kecuali yang telah disebutkan dalam kutipan dan daftar
pustaka, sebagaimana layaknya karya ilmiah.
Yogyakarta, 12 Desember 2006
Penulis
Anang Ardyantara
SISTEM INFORMASI AKADEMIK SEKOLAH DASAR
Studi Kasus pada SD Sokomoyo I Girimulyo Kulon Progo
Anang Ardyantara Universitas Sanata Dharma
Yogyakarta 2006
Di SD Negeri Sokomoyo I masih banyak pekerjaan yang dilakukan secara manual, khususnya dalam penyajian data akademik. Untuk membantu mengatasi permasalahan tersebut, maka dibuatlah sebuah sistem berbasis web dinamis yang dapat menyajikan data akademik sekolah dasar.
Pembuatan Sistem Informasi Akademik Sekolah Dasar yang bersifat multi-user ini,
membantu Kepala Sekolah (dalam sistem ini sebagai administrador), Guru Wali Kelas, dan Guru Mata Pelajaran dalam memantau perkembangan akademik anak didiknya. Sistem ini juga bermanfaat bagi Orang Tua siswa, dimana orang tua siswa dapat memantau perkembangan akademik anak-anaknya. Sistem ini juga bermanfaat bagi sekolah untuk menjadikan media promosi dan publikasi sekolah kepada masyarakat luas.
ACADEMIC INFORMATION SYSTEM OF A ELEMENTARY SCHOOL
A Case Study at SD Sokomoyo I Girimulyo Kulon Progo
Anang Ardyantara Sanata Dharma University
Yogyakarta 2006
There are many manually accomplished tasks at SD Sokomoyo, especially in its academic data presentation. To help solving the above problem, a dynamic web-based system that enables data presentation for elementary school is made.
This multi-user academic information system for elementary school helps the headmaster (in this system as the administrator), classroom teacher, and subject teacher in monitoring the students’ academic progress. This system also enables parents to monitor their children academic progress. For the school this system would be a good media for promotion and publication.
Puji dan syukur aku ucapkan kepada-Mu ya Tuhan Yesus Kristus, atas rahmat dan kasih-Mu yang
selalu menyertaiku di sepanjang hidupku, terlebih dengan segala keterbatasanku dalam menuntut ilmu
di Universitas Sanata Dharma Yogyakarta hingga terselesaikannya penyusunan tugas akhir yang berjudul
“Sistem Informasi Akademik Sekolah Dasar”.
Tugas akhir ini aku susun untuk memenuhi persyaratan akhir dalam mencapai Gelar Sarjana Teknik
Program Studi Teknik Informatika pada Fakultas Teknik Universitas Sanata Dharma Yogyakarta. Selama
penyusunan tugas akhir ini, aku banyak mendapatkan bantuan dari berbagai pihak. Oleh karena itu
dengan segala kerendahan hati pada kesempatan ini aku ingin menyampaikan ucapan terima kasih yang
sebesar-besarnya kepada :
1. Romo Ir. Greg. Heliarko S.J., S.S., B.S.T., M.A., M.Sc., selaku Dekan Fakultas Teknik Universitas
Sanata Dharma Yogyakarta.
2. Ibu Agnes Maria Polina, S.Kom., M.Sc., selaku Ketua Program Studi Teknik Informatika Universitas
Sanata Dharma Yogyakarta.
3. Bapak Alb. Agung Hadhiatma, S.T., M.T., selaku Dosen Pembimbing I yang telah meluangkan waktu
untuk membimbing, memberikan saran dan koreksi dalam penulisan tugas akhir ini.
4. Bapak Stephanus Wisnu Wijaya, S.T., selaku Dosen Pembimbing II yang telah meluangkan waktu
dalam membimbing dan mengarahkanku selama penyusunan tugas akhir ini.
5. Bapak Yohanes Sutadi, selaku kepala sekolah SD SOKOMOYO I Girimulyo Kulon Progo
Yogyakarta yang telah memberikan kesempatan kepadaku untuk melaksanakan studi kasus di SD
SOKOMOYO I Girimulyo Kulon Progo Yogyakarta.
6. Para guru SD SOKOMOYO I Girimulyo Kulon Progo Yogyakarta yang telah bersedia meluangkan
waktunya untuk membantu hingga terselesaikannya tugas akhir ini.
7. Bapak dan Ibuku yang telah dengan susah payah mendidik dan membesarkan aku sampai aku
mampu menyelesaikan tugas belajar di Universitas Sanata Dharma ini. (matur nuwun sanget nggih
pak, nggih bu kerana donganipun kula sampun rampung……!!! Lan nyuwun ngapunten nggih pak,
bu menawi kula wonten lepat…)
9. Simbah Sukinem, Alm. Simbah Pawiro Inangun, dan Alm. Simbah Somo matur nuwun sanget nggih
mbah, margi donganipun kula saniki sampun rampungan.
10. Le’ Radi, Le’ Yat, Le’ Mint dan Om Sigit+Nouel, makasih banget ya, atas dorongan semangat
kalian aku akhirnya lulus. (om Sigit….. nek panen duren q, jo mung di pek dewe….!)
11. Simbah Dipo, mbah…..matur nuwun sanget nggih??? Kula sampun kathah sanget damel repot,
he…he…he….
12. Dwi Hadiningsih yang tercinta…. Makasih ya kamu selama ini udah memberikan perhatian, cinta yang
begitu besar, dan semangat buat aku. (Kw kok ngakali to, lulus disik…jare arep ngenteni….ben
iso wisuda bareng)
13. Sahabat-sahabatku terkasih Yanti (Yon…kpn kw rep ngenalke aku karo pacarmu..), Rini (suskes
yo Rin…jolali kenalke karo pacarmu sing inisiale ‘A’ kae, heeee…), one ‘Spd’ (Ped… berjuang
terus yo, jo patah semangat…jo nganti kalah karo cah cilik….), Nanggo (cah gedhe ning cilik kok
wedi karo ‘jangkrik’….), Mz. Koko (makasih banget lo…dorongan semangatmu buat aku cpt
lulus..), Nico, Hoho, Pak Nanang+Bu Maryani (sing akur yo…kapan le arep duwe
momongan…????), Tamie, Nita, Mz. Gik, Mz. Antok, Mz. Bronto, Mbak Etik+Nico kecil (makasih
atas doa dan kebersamaan kalian selama ini…….kapan kita dolan bareng lagi????) Mz. Nardi,
Makasih banget ya mas laptopnya, tanpa laptopmu aku gak tahu harus bagaimana….!
Zhumar, Teguh ‘Surip’, Iwan, Wisnu, Chrisnoadi ‘Sronggot’ Hartono, Andre dan Ucup, qta
sekarang dah jadi ‘Tukang Insinyur’……
Sigit, Kukuh ayo berjuang terus jangan sampai kita jadi pengacara… he…he…he…
Selain itu juga aku ingin menyampaikan rasa syukur dan terima kasih yang tak terhingga kepada
semua pihak yang tidak dapat disebutkan satu persatu, yang telah membantu hingga terselesaikannya
tugas akhir ini.
HALAMAN JUDUL ... i
HALAMAN JUDUL ENGGRIS ... ii
HALAMAN PERSETUJUAN PEMBIMBING ... iii
HALAMAN PENGESAHAN ... iv
HALAMAN MOTTO DAN PERSEMBAHAN ... v
PERNYATAAN KEASLIAN KARYA ... vi
ABSTRAK ... vii
ABSTRACT ... viii
KATA PENGANTAR ... ix
DAFTAR ISI ... xi
DAFTAR TABEL ... xv
DAFTAR GAMBAR ... xvi
BAB I PENDAHULUAN 1.1. Latar Belakang... 1
1.2. Rumusan Masalah ... 3
1.3. Batasan Masalah ... 4
1.4. Tujuan dan Manfaat Penelitian ... 4
1.5. Metodologi Peneliltian ... 5
1.6. Sistematika Penulisan ... 6
BAB II LANDASAN TEORI 2.1. Sistem Informasi ... 8
2.2.2. Tahap-tahap Perancangan Basis Data ... 13
2.2.3. Konsep E – R Diagram ... 14
2.2.4. Data Flow Diagram ... 16
2.3. Tinjauan HTML ... 17
2.4. Tinjauan PHP ... 21
2.4.1. Fungsi md5() ... 23
2.4.2. Fungsi Explode() ... 23
2.4.3. Include dan require ... 23
2.4.4. Session handling ... 23
2.4.5. Fungsi MySQL ... 24
2.4.6. Keunggulan dan Kelemahan PHP ... 25
2.5. Tinjauan MySQL ... 26
2.5.1. Structured Query Language (SQL) pada MySQL ... 27
2.5.2. Tipe Data ... 28
2.5.3. Kelebihan dan Kekurangan MySQL ... 29
BAB III ANALISA DAN PERANCANGAN SISTEM 3.1. Analisa Sistem ... 30
3.1.1. Analisa Sistem Lama ... 30
3.1.1.1. Sistem Pengolahan Data Siswa ... 31
3.1.1.2. Sistem Pengolahan Data Nilai Siswa ... 33
3.1.2. Analisa Sistem Baru ... 35
3.2. Perancangan Sistem ... 42
3.2.1. Perancangan Sistem Secara Umum ... 42
3.2.1.1. Perancangan Data Entry ... 42
3.2.1.2. Perancangan Basis Data Secara Umum ... 44
3.2.1.3. Perancangan Input Secara Umum ... 45
3.2.1.4. Perancangan Output Secara Umum ... 45
3.2.2. Perancangan Sistem Secara Rinci ... 46
3.2.2.1. Perancangan Basis Data Secara Rinci ... 46
3.2.2.1.1. Conceptual Design ... 46
3.2.2.1.2. Logical Design ... 47
3.2.2.1.3. Physical Design ... 49
3.2.2.2. Perancangan Input Secara Rinci ... 52
3.2.2.3. Perancangan Output Secara Rinci ... 55
3.2.2.4. Perancangan Menu ... 60
3.2.3. Perancangan Teknologi ... 62
3.2.3.1. Perangkat Lunak yang akan digunakan ... 62
3.2.3.2.Perangkat Keras yang akan digunakan ... 62
BAB IV IMPLEMENTASI 4.1. Implementasi Sistem ... 63
4.2. Implementasi Teknologi ... 64
4.2.1. Hardware ... 64
4.3. Implementasi Program ... 65
4.3.1. Koneksi Database ... 65
4.3.2. Antar Muka ... 66
4.3.2.1. Antar-muka untuk Administrasi ... 67
4.3.2.2. Antar-muka untuk Wali Kelas dan Guru Mapel ... 93
4.3.2.3. Antar-muka untuk Siswa atau Wali Siswa ... 104
BAB V ANALISA SISTEM 5.1. Analisa Manfaat ... 113
5.1.1. Penggunaan untuk Administrator ... 113
5.1.2. Penggunaan untuk Guru Mata Pelajaran dan Wali Kelas ... 114
5.1.3. Penggunaan untuk Siswa/Wali Siswa ... 114
5.2. Analisa Kebutuhan ... 115
5.2.1. Kebutuhan Hardware ... 115
5.2.2. Kebutuhan Software ... 115
5.3. Analisa Metode Rekayasa Perangkat Lunak ... 115
BAB VI PENUTUP 6.1. Kesimpulan ... 117
6.2. Saran ... 117
DAFTAR PUSTAKA ... xix
Tabel 2.1. Simbol Konsep E-R ... 15
Tabel 2.2. Simbol DFD ... 16
Tabel 2.3. Tipe Data Numeric MySQL ... 28
Tabel 2.4. Tipe Data String MySQL... 28
Tabel 2.5. Tipe Data Tanggal MySQL ... 29
Tabel 3.1. Tabel Database ... 45
Tabel 3.2. Tabel Input Data ... 45
Tabel 3.3. Tabel Output Data ... 46
Tabel 3.4. Tabel Siswa ... 49
Tabel 3.5. Tabel Guru ... 50
Tabel 3.6. Tabel Kelas ... 50
Tabel 3.7. Tabel Data Materi ... 50
Tabel 3.8. Tabel Materi ... 51
Tabel 3.9. Tabel Kelas_$kelas ... 51
Gambar 2.1. Tahap Perancangan Basis Data ... 14
Gambar 3.1. Diagram Prosedur Pengolahan Data Siswa ... 33
Gambar 3.2. Diagram Peosedur Pengolahan Data Nilai Siswa ... 34
Gambar 3.3. Diagram Prosedur Sistem Baru ... 36
Gambar 3.4. Diagram Konteks Sistem Baru ... 38
Gambar 3.5. Diagram Berjenjang dari SIA SD ... 39
Gambar 3.6. DFD Level 0 ... 40
Gambar 3.7. DFD Level 1 Proses 1 ... 40
Gambar 3.8. DFD Level 1 Proses 2 ... 41
Gambar 3.9. DFD Level 1 Proses 3 ... 41
Gambar 3.10. Conseptual Design ... 47
Gambar 3.11. Logical Design ... 48
Gambar 3.12. Form Tambah Data Materi ... 52
Gambar 3.13. Form Input Nilai Siswa... 52
Gambar 3.14. Form Tambah Data Kelas ... 53
Gambar 3.15. Form Tambah Data Karyawan ... 53
Gambar 3.16. Form Tambah Data Materi Baru ... 53
Gambar 3.17. Form Tambah Data Siswa ... 54
Gambar 3.18. Form Input Absensi Siswa ... 54
Gambar 3.19. Output Jadwal Pelajaran ... 55
Gambar 3.20. Output Nilai Akhir (Raport) ... 56
Gambar 3.23. Output Hasil Pencarian ... 58
Gambar 3.24. Print Out Jadwal Pelajaran ... 58
Gambar 3.25. Print Out Nilai Akhir (raport) ... 59
Gambar 3.26. Tampilan Menu Utama ... 60
Gambar 3.27. Tampilan Utama Menu Admin ... 60
Gambar 3.28. Tampilan Utama Menu Wali Kelas ... 61
Gambar 3.29. Tampilan Utama Menu Siswa ... 61
Gambar 4.1. Tampilan Index ... 66
Gambar 4.2. Form Login Admin ... 68
Gambar 4.3. Halaman Utama Admin ... 69
Gambar 4.4. Form Input Data Karyawan ... 70
Gambar 4.5. Tampilan Data Karyawan ... 71
Gambar 4.6. Form Input Data Siswa ... 73
Gambar 4.7. Konfirmasi Kesalahan Userid ... 75
Gambar 4.8. Halaman Semua Siswa ... 75
Gambar 4.9. Tampilan Ubah Data Siswa ... 77
Gambar 4.10. Halaman Tambah Data Kelas ... 79
Gambar 4.11. Halaman Ubah Data Kelas ... 81
Gambar 4.12. Form Tambah Materi ... 82
Gambar 4.13. Tampilan Detail Materi ... 84
Gambar 4.14. Halaman Tambah Materi Baru ... 86
Gambar 4.17. Halaman Login Administrador ... 89
Gambar 4.18. Halaman Konfirmasi Kesalahan Login ... 90
Gambar 4.19. Halaman Ganti Password ... 91
Gambar 4.20. Konfirmasi Kesalahan Ganti Password ... 91
Gambar 4.21. Konfirmasi Ganti Password Sukses ... 92
Gambar 4.22. Halaman Login Wali Kelas ... 94
Gambar 4.23. KOnfirmasi Login Salah ... 95
Gambar 4.24. Halaman Utama Wali Kelas ... 96
Gambar 4.25. Halaman Utama Guru Mapel ... 96
Gambar 4.26. Halaman Data Kelas Yang Diampu ... 98
Gambar 4.27. Halaman Absensi Siswa di Kelas yang Diampu ... 99
Gambar 4.28. Halaman Masukkan Absensi ... 101
Gambar 4.29. Halaman Nilai ... 101
Gambar 4.30. Halaman Masukkan Nilai ... 103
Gambar 4.31. Halaman Login Siswa... 105
Gambar 4.32. Tampilan Awal Halaman Siswa ... 106
Gambar 4.33. Tampilan Halaman Absensi ... 107
Gambar 4.34. Tampilan Halaman Nilai ... 108
Gambar 4.35. Halaman Ubah Data Siswa ... 110
Gambar 4.36. Halaman Ubah Passwoed ... 111
Gambar 4.37. Konfirmasi Ubah Password Sukses ... 111
1. 1. Latar Belakang.
Teknologi informasi berkembang sangat pesat sekali dalam kurun
waktu yang tidak lama. Tidak hanya perkembangan dari perangkat lunak
(software) dan perangkat keras (hardware) namun juga perkembangan dunia
internet. Melalui internet maka komunikasi antar manusia walaupun pada
jarak yang berjauhan dan tempat yang berbeda dapat berjalan dengan lancar
tanpa ada kesulitan. Berkembangnya teknologi komputer telah mendorong
penggunaan dan pemanfaatan informasi lebih luas, untuk itu telah banyak
aplikasi sistem informasi dikembangkan sebagai sarana untuk pengolah data
sebagai sumber informasi. Kemampuan teknologi perangkat keras yang
memungkinkan dibangunnya sebuah koneksi antar komputer atau PC
(personal computer) dengan berbagai media semakin memungkinkan
pengguna dan pemanfaatan informasi secara efisien dan efektif.
Kebutuhan informasi saat ini tidak hanya kebutuhan untuk
mendapatkan informasi semata, tetapi lebih penting lagi menyangkut aspek
pengelolaan informasi. Di mana di dalamnya memungkinkan pengguna
informasi untuk melakukan distribusi informasi dan melakukan validasi
terhadap data sebagai sumber informasi untuk mendapatkan informasi secara
spesifik. Di banyak bidang kehidupan, penggunaan informasi sebagai
dukungan untuk menciptakan layanan secara lebih efisien merupakan suatu
kebutuhan mutlak.
Kemajuan teknologi informasi dan aplikasi berbasis web tersebut
juga sangat berpengaruh terhadap bidang pendidikan. Bidang pendidikan
merupakan bidang yang sangat berperan dan berpengaruh terhadap kehidupan
dan kemajuan manusia. Dari pendidikan inilah kita mendapatkan berbagai
hal, baik itu pengetahuan akan teknologi ataupun pengetahuan tentang moral.
Maka dari itu manusia menjadi pintar dan cerdas.
Melakukan pengontrolan terhadap perkembangan akademik anak
didiknya dari tiap-tiap semester merupakan tugas dari seorang guru wali kelas
dan Kepala Sekolah. Pengawasan dan pengontrolan ini dilakukan agar wali
kelas dan Kepala Sekolah benar-benar mengetahui sejauh mana
perkembangan akademik anak didiknya yang berhubungan dengan daya serap
siswa terhadap mata pelajaran yang diberikan guru.
Tidak jarang pada saat wali kelas atau guru yang bersangkutan akan
melihat berkas anak didiknya yang bermasalah membutuhkan waktu
pencarian yang sangat lama karena harus melakukan secara manual dan tidak
jarang juga berkas yang dicari sudah mengalami kerusakan dan bahkan hilang
karena perawatan dan penyimpanannya yang kurang baik.
Dalam penentuan nilai akhir siswa dan untuk menentukan peringkat
kelas sering juga membuat wali kelas atau guru yang bersangkutan kerepotan
karena harus dilakukan dengan perhitungan secara manual dengan
siswa yang berprestasi di dalam kelasnya untuk mendapat beasiswa atau
diikutkan dalam lomba bidang studi, maka wali kelas akan disibukkan dengan
data-data siswa yang acak-acakan dan kurang tertata rapi.
Hal-hal tersebut di atas yang mendorong penulis mengangkat
masalah ini untuk dipecahkan dengan membuat sistem informasi untuk wali
kelas atau kepala sekolah atau user yang lainnya.
Di SD Sokomoyo I, sudah terdapat fasilitas komputer namun
komputer yang ada sudah termasuk komputer lama. Sehingga sampai saat ini
hanya untuk membuat surat dan sedikit untuk membuat perhitungan nilai
akhir dengan bantuan Microsoft Excel. Sedangkan data-data siswa masih
disimpan dalam map besar yang dikelompokkan menurut Kelas dan Tahun
Pelajaran. Maka dari itu pada saat akan dilakukan pencarian data siswa harus
membongkar semua berkas yang ada.
Pada sistem yang baru memberikan pemecahan terhadap persoalan
tersebut sehingga proses pencarian data dapat dilakukan dengan cepat dan
menghemat biaya dan waktu. Sistem baru nantinya juga akan dilengkapi
dengan password dan pengaturan hak akses bagi penggunanya, sehingga
keamanan dan keutuhan data yang ada akan terjamin.
1. 2. Rumusan Masalah.
Rumusan masalah dalam kasus ini adalah bagaimana
diakses secara umum. Dalam penyelesaian tugas akhir ini penulis melakukan
studi kasus di SD Sokomoyo I, Girimulyo, Kulon Progo.
1. 3. Batasan Masalah.
Sistem akan dibatasi pada perancangan yang bersifat multi-user
dengan pembagian kewenangan penggunaan data pribadi siswa maupun guru
dan penanganan nilai akhir siswa pada guru wali kelas. Bagi orang tua siswa
yang dapat menggunakan komputer maka diberikan pula hak akses tersendiri
demikian juga dengan guru bidang studi yang dapat mengakses data siswa
sebagai penentu nilai bidang studi yang diampunya. Sedangkan kepala
sekolah hanya berhak membuka dan melihat data serta mengesahkan keluaran
data yang dicetak.
1. 4. Tujuan dan Manfaat Penelitian.
Tujuan dan manfaat dari pembuatan Sistem Informasi Akademik ini
adalah sebagai berikut :
1. Perhitungan nilai dapat dilakukan dengan lebih akurat dan dalam waktu
yang singkat.
2. Memudahkan guru bidang studi, guru wali kelas dan kepala sekolah
dalam mengawasi perkembangan studi siswa selama belajar di SD
tersebut.
3. Melibatkan teknologi informasi dalam bidang pendidikan khususnya
1. 5. Metodologi Penelitian.
Metodologi penelitian yang digunakan untuk membuat sistem ini
adalah :
1. Identifikasi masalah yang ada. Proses ini meliputi :
a. Wawancara.
Untuk lebih mengetahui kebutuhan-kebutuhan dari sistem yang akan
dibuat, dilakukan wawancara dengan user yang bersangkutan.
b. Pengamatan langsung.
Pengamatan terhadap pokok permasalahan dan kebutuhan user, yaitu :
guru bidang studi, guru wali kelas, kepala sekolah dan orang tua
siswa.
c. Survei Materi.
Mengumpulkan data-data yang berhubungan dengan sistem yang akan
dibuat.
2. Menganalisa masalah yang telah dikumpulkan pada tahap sebelumnya.
a. Menganalisa semua kebutuhan yang diperlukan dalam pengembangan
sistem.
b. Mendefinisikan semua kebutuhan yang diperlukan.
c. Mempelajari buku-buku yang ada hubungannya dengan web,
database, dan PHP.
3. Membuat rancangan dari sistem berdasarkan analisa pada tahap
Merancang program dan database dari sistem yang akan dibuat dengan
teknik Structure Analysis and Design.
4. Implementasi perancangan sistem yang telah dibuat ke dalam suatu
bahasa pemrograman.
Mengimplementasikan rancangan program dan database dengan
menggunakan program aplikasi PHP dan MySQL.
5. Pengujian sistem dan evaluasi.
Menguji dan mengevaluasi sistem yang telah jadi dengan cara studi
kelayakan sistem yang sudah jadi, yang dilakukan oleh user yang
bersangkutan.
1. 6. Sistematika Penulisan.
Agar penulisan laporan penelitian ini mudah dimengerti dan
dipahami, maka dalam penulisannya dibagi dalam beberapa bab dan
rinciannya sebagai berikut :
BAB I PENDAHULUAN
Pada bab ini berisi tentang latar belakang permasalahan, rumusan
masalah, batasan masalah, tujuan dan manfaat penelitian,
Metodologi penelitian dan sistematika penulisan.
BAB II LADASAN TEORI
Pada bab ini berisi penjelasan tentang dasar-dasar teori dari sistem
informasi, PHP dan MySQL yang akan digunakan untuk
BAB III ANALISA DAN PERANCANGAN SISTEM
Bab ini berisi penjelasan umum dari sistem yang akan dibuat mulai
dari analisa sistem, perancangan basis data, input, proses, output dan
teknologi yang akan digunakan.
BAB IV IMPLEMENTASI DAN ANALISA SISTEM
Dalam bab ini akan dibahas mengenai implementasi dari
perancangan yang telah dibuat ke dalam bahasa pemrograman PHP
dan analisa dari sistem tersebut.
BAB V PENUTUP
Pada bab terakhir ini akan dimuat tentang kesimpulan, kelemahan
dan kelebihan dari sistem yang telah dibuat dan diuji-cobakan di
2. 1. Sistem Informasi.
Suatu sistem mempunyai maksud tertentu. Ada yang menyebutkan
maksud dari sistem adalah untuk mencapai suatu tujuan (goal) dan ada yang
menyebutkan untuk mencapai suatu sasaran (objectives). Goal biasanya
dihubungkan dengan ruang lingkup yang lebih luas dan objectives dalam
lingkup yang lebih sempit. Pendekatan sistem yang lebih menekankan pada
elemen atau komponennya mendefinisikan sistem sebagai berikut : sistem
adalah kumpulan dari elemen-elemen yang berinteraksi untuk mencapai suatu
tujuan tertentu.
Sedangkan informasi (information) sendiri dapat didefinisikan
sebagai berikut : informasi adalah sekumpulan data yang diolah menjadi
bentuk yang lebih berguna dan lebih berarti bagi penerimanya.Sumber dari
informasi adalah data yang merupakan bentuk jamak datum atau data-item.
Data adalah kenyataan yang menggambarkan suatu kejadian-kejadian dan
kesatuan nyata. Kejadian (event) adalah suatu yang terjadi pada saat tertentu.
Definisi dari sistem informasi menurut Robert A. Leith dan K.
Roescoe Davis, adalah suatu sistem dalam sebuah organisasi yang
mempertemukan kebutuhan pengolahan transaksi harian, mendukung operasi,
bersifat manajerial dan kegiatan strategi dari suatu organisasi serta
menyediakan pihak luar tertentu dengan laporan-laporan yang diperlukan.
Sedangkan pengertian sistem informasi secara umum yaitu
sekumpulan data-data yang telah diolah dan saling berhubungan atau
terintegrasi antara satu dengan yang lain sehingga dapat dimanfaatkan oleh
penggunanya untuk mendapatkan suatu bentuk informasi yang akurat dan
tepat waktu.
Sebuah Sistem Informasi yang baik haruslah memiliki
kriteria-kriteria sebagai berikut :
1. Dapat memberikan informasi yang cermat, tepat waktu dan akurat atau
berkualitas.
2. Mempunyai peranan yang kuat dalam perencanaan, analisis atau
pengendalian manajemen untuk mengoptimalisasi guna pertumbuhan
manajemen.
Perkembangan sistem informasi yang berbasis komputer merupakan
tugas kompleks yang membutuhkan banyak sumber daya dan dapat memakan
waktu berbulan-bulan bahkan bertahun-tahun untuk menyelesaikannya.
Proses pengembangan sistem melewati beberapa tahapan mulai dari sistem
itu direncanakan sampai dengan sistem tersebut diterapkan, dioperasikan dan
dipelihara. Bila operasi sistem yang sudah dikembangkan masih timbul
kembali permasalahan-permasalahan yang kritis serta tidak dapat diatasi
dalam tahap pemeliharaan sistem, maka perlu dikembangkan kembali suatu
sistem untuk mengatasinya dan proses ini kembali ke tahap yang pertama,
yaitu tahap perencanaan sistem. Siklus ini disebut dengan siklus hidup suatu
Urutan tahap siklus hidup sistem menurut Robert A. Leicth/K.
Roscoe Davis adalah sebagai berikut :
1. Analisa Sistem
a. Definisi kebutuhan dan pendekatan alternatif
b. Desain sistem secara umum atau secara konsep
2. Desain dan Implementasi Sistem
a. Desain sistem terinci
b. Rancang bangun program dan perencanaan implementasi
c. Pemrograman dan pengetesan
d. Pengetesan sistem
e. Konversi
f. Implementasi
3. Penilaian Sistem
Sedangkan dalam perancangan sistem akan digunakan pemodelan
Synchronize and stablize yaitu salah satu versi pemodelan incremental yang
memiliki langkah kerja sebagai berikut :
• Tahap perencanaan : interview sejumlah besar pengguna potensial,
membuat daftar fungsi yang diprioritaskan oleh pengguna.
• Membuat dokumen spesifikasi.
• Membagi pekerjaan dalam 3 atau 4 build : build-1 adalah fungsi paling
kritis, build-2 prioritas kedua dan seterusnya.
• Tiap build dikerjakan secara paralel dalam kelompok kecil, dan pada hari
• Dibuat stabilisasi pada akhir bangunan. Jika ada kesalahan, segera
diperbaiki.
• Build kemudian dibekukan dan tidak ada perubahan lagi pada spesifikasi.
2. 2. Basis Data.
Dalam antrian sederhana, basis data bisa disebut sebagai kumpulan
dari tabel dan file-file yang diorganisir untuk kegunaan tertentu. Pada
beberapa basis data sederhana, sebuah software word processing seperti
Microsoft Word bisa digunakan untuk menampung dan mengorganisir data
tersebut. Atau jika database terdiri dari data yang bersifat angka dan
diperlukan perhitungan lanjutan, pengelolaan bisa dilakukan dengan software
spreadsheet seperti Microsoft Excel. Pada prinsipnya software seperti Word
dan Excel bisa berfungsi seperti layaknya sebuah basis data yang
representatif.
Namun jika jumlah data yang dikelola sudah banyak jumlahnya,
serta komponen data yang ada sangat beragam dan kompleks, maka
penggunaan software seperti di atas menjadi tidak relevan lagi. Pengguna
akan kesulitan dalam mengelola data tersebut, apalagi jika data tersebar
dalam berbagai file pada Word atau Excel. Selain itu, kesulitan timbul jika
akan diadakan proses penambahan data yang terkait dengan data yang ada
pada berbagai file Word ataupun Excel. Demikian pula jika dilakukan
perubahan data, maka file yang ada pada data terkait harus ikut dirubah pula,
Untuk mengatasi masalah-masalah seperti di atas, seseorang yang
ingin mengelola basis data akan berpaling pada konsep Relational Database
Management System (RDBMS).
2.2.1. Relational Database Management System (RDBMS)
Dengan RDBMS, semua data disimpan dalam tabel-tabel, di
mana sebuah tabel menyimpan informasi mengenai sebuah subyek
tertentu. Dengan RDBMS, sebuah basis data akan dengan mudah
dikelola walaupun jumlah datanya banyak dan kompleks, seperti
pendefinisian data, mana data (item) yang akan dimuat ke dalam
sebuah basis data, bagaimana mengelolanya, serta bagaimana
membagi data. Pada prinsipnya RDBMS terdiri dari tiga bagian :
1. Data Definition
Mendefinisikan jenis data yang akan dibuat (seperti berupa angka
atau huruf), cara relasi data, validasi data dan lainnya.
2. Data Manipulation
Data yang telah dibuat dan didefinisikan tersebut akan dilakukan
beberapa pekerjaan, seperti penyaringan data, melakukan proses
query dan sebagainya.
3. Data Control
Bagian ini berkenaan dengan cara mengendalikan data, seperti
siapa saja yang bisa melihat data, bagaimana data bisa digunakan
2.2.2. Tahap-tahap Perancangan Basis Data
Perancangan basis data mempunyai tahap-tahap sebagai
berikut :
1. Conceptual design
Berupa conceptual schema yang mengacu pada suatu conceptual
model. Pada tahapan ini biasanya digunakan entry relational
model sebagai conceptual model.
2. Logical design
Pada tahap ini, conceptual schema yang telah jadi diterjemahkan
ke model data yang sesuai dengan DBMS yang digunakan. Hasil
yang didapat berupa logical data model. Logical model
merepresentasikan data dalam suatu cara yang tidak melibatkan
physical detail.
3. Physical design
Pada tahap ini, logical schema dilengkapi dengan detail-detail
implementasi secara fisik (organisasi file dan index). Physical
Diagram dari tahap perancangan basis data adalah sebagai berikut :
Gambar 2.1. Tahap Perancangan Basis Data
Application requirements
Conceptual design
Logical design Conceptual schema
Physical schema Physical design Logical schema
Database structure & related documentation Database Design
2.2.3. Konsep E – R Diagram
Dalam merancang tabel, hubungan antar tabel,
mengidentifikasikan primary dan foreign key dan aturannya, serta
domain untuk basis data, perlu suatu metode yang disebut diagram
Entity-Relationship (E-R). Komponen yang digunakan dalam diagram
Simbol Keterangan
Entity atau tabel
Relationship antar tabel
Arah ke tabel yang kan direlasikan
TEXT
Primary Key
Atribut
Nama relationship
Tabel 2.1. Simbol Konsep E-R
Relationship memiliki tiga tipe. Tiap tipe menunjukkan
jumlah record dari tiap tabel yang dapat direlasikan ke record pada
tabel lain. Ketiga tipe tersebut adalah :
• One-to-one
Yaitu hubungan satu ke satu. Sebagai contoh adalah satu kode
mempunyai satu produk yang spesifik. Relasi one-to-one tidak
diwujudkan ke dalam bentuk sebuah tabel tersendiri, melainkan
atribut-atribut relasi akan ditambah pada salah satu entitas yang
ada.
• One-to-many
Yaitu hubungan satu ke banyak. Misalnya satu kategori memiliki
banyak produk demikian sebaliknya, banyak produk memiliki satu
sebuah tabel sendiri, melainkan atribut-atribut relasi akan
ditambahkan pada entitas yang berderajat/bermuatan N (many).
• Many-to-many
Yaitu hubungan banyak ke banyak. Misalnya banyak order
mempunyai banyak produk dan banyak produk memiliki banyak
order. Relasi many-to-many dapat diwujudkan dalam bentuk
sebuah tabel baru.
2.2.4. Data Flow Diagram
DFD (Data Flow Diagram) adalah sebagai alat untuk
menggambarkan aliran data dan relasinya dalam suatu sistem.
Manfaat digunakannya DFD/diagram arus data ini adalah :
1. Sebagai alat bantu komunikasi, dan
2. Mempermudah memahami sistem secara logika.
Simbol Arti Contoh
Kesatuan luar
(Entiry)
a
Guru
Arus data
(Data Flow) Informasi data siswa
2. 3. Tinjauan HTML.
Halaman web yang ditampilkan situs-situs di Internet terdiri dari
halaman statis dan halaman dinamis. Ciri-ciri halaman web yang dinamis
adalah web yang dapat berinteraksi dengan pengunjung situs, dapat
menampilkan informasi-informasi yang berasal dari database dan
halaman-halaman web dapat berubah secara otomatis sesuai kondisi atau permintaan
user. Halaman web yang dinamis tidak dapat dibuat atau ditampilkan dengan
menggunakan tag-tag HTML (Hypertext Markup Language), namun harus
dibuat dengan menggunakan bahasa pemrograman web.
Berdasarkan tempat jalannya perintah-perintah program dalam
halaman web, bahasa pemrograman web dibagi menjadi 2, yaitu :
1. Server-side Programming.
Yaitu merupakan tag-tag program yang dijalankan di web server dan
hasilnya akan diterima client dalam bentuk HTML. Contoh :
• Perl (Practical Extraction and Report Language)
• ASP (Active Server Pages)
• JSP (Java Server Pages)
• PHP (Personal Home Page-Hypertext Preprocessor)
Keunggulan dari server-side antara lain :
• Tidak diperlukan kompatibilitas browser atau harus menggunakan
browser tertentu, karena serverlah yang akan mengerjakan script
PHP. Hasil yang dikirimkan kembali ke browser umumnya bersifat
• Dapat memanfaatkan sumber-sumber aplikasi yang dimiliki oleh
server, misalnya koneksi ke database.
• Script tidak dapat “diintip” dengan menggunakan fasilitas view
HTML source.
2. Client-side Programming.
Proses dilakukan di web browser. Biasa digunakan untuk halaman yang
membutuhkan banyak interaksi pengguna serta menggunakan jenis
informasi yang pasti, sedikit dan beragam.
Hypertext Markup Language (HTML) adalah bahasa yang
digunakan untuk menampilkan informasi pada halaman web. HTML
mendukung sekumpulan perintah yang dapat digunakan untuk mengatur
bagaimana informasi akan ditampilkan.
HTML terdiri dari dua bagian yaitu header dan body. Struktur
HTML diapit oleh tag <HTML> dan </HTML> yang menandai awal dan
akhir dari sebuah dokumen HTML. Standar penulisan dokumen HTML
(Purwanto, 2001) adalah :
<HTML> <HEAD>
Diskripsikan Dokumen
</HEAD> <BODY>
Isi Dokumen
Beberapa perintah HTML lainnya adalah :
1. Heading
Heading digunakan untuk menampilkan judul bab atau kalimat
tertentu yang dianggap sebagai topik utama. Heading dapat juga
digunakan untuk mengatur ukuran font. Ada enam level heading pada
HTML, dimulai dari level terbesar <H1> sampai dengan level terkecil
<H6>.
Posisi heading dapat diatur dengan menggunakan atribut ALIGN.
Nilai dari atribut ALIGN dapat berupa “LEFT” untuk rata kiri,
“CENTER” untuk menulis tepat di tengah, dan “RIGHT” untuk rata
kanan. Contoh penulisan ALIGN pada heading :
<H1 align = “Left”>Heading rata kiri</H1>
2. Baris Baru
Tag untuk membuat baris baru tanpa baris kosong adalah line
break <BR>. Sedangkan tag paragraph <P> digunakan untuk membuat
baris baru dengan sebuah baris kosong. Biasanya untuk membuat alinea.
3. Garis Horizontal
Tag tunggal horizontal rule <HR> digunakan untuk membuat
garis horizontal. Tag ini akan membuat garis horizontal sepanjang jendela
4. Huruf
Tag untuk mengatur huruf adalah <FONT> … </FONT>.
Beberapa atribut yang digunakan untuk mengatur formatting style suatu
font adalah :
¾ SIZE = n, dengan 0 < n < 7, digunakan untuk mengatur besarnya text.
¾ FACE = string, string berupa nama font, digunakan untuk mengatur
jenis font.
¾ COLOR = #RRGGBB, RRGGBB merupakan kombinasi angka dalam
bilangan hexa yang menunjukkan kapasitas warna merah, hijau, dan
biru. Digunakan untuk mengatur warna text.
5. Menghubungkan Halaman Web
Pasangan tag <A> … </A> digunakan untuk menghubungkan
suatu halaman web ke dalam web yang lain. Pemakaian tag ini yang
diikuti dengan atribut HREF, akan menghubungkan ke halaman web yang
lain. Contoh :
<A HREF=http://localhost/terhubung.html>CLICK </A>
Sedangkan untuk menghubungkan atau melakukan link ke bagian
lain dari halaman web itu sendiri, digunakan atribut NAME yang
menandai suatu daerah. Contoh :
<A NAME=”tanda”>tujuan link. </A>
Kemudian sebagai penghubung digunakan kode berikut :
2. 4. Tinjaun PHP.
PHP (Personal Home Page-Hypertext Preprocessor) adalah salah
satu bahasa pemrograman web yang merupakan bahasa scripting yang
menyatu dengan tag-tag HTML. PHP berfungsi sebagai server-side scripting
language, yang mengeksekusi kode-kode di server dan kemudian
mengirimkannya ke client dalam format tertentu. PHP Dibuat secara tidak
sengaja oleh Rasmus Lerdorf pada tahun 1994. PHP pertama kali masih
berupa sekumpulan script macro Perl CGI, digunakan Rasmus Lerdorf untuk
mengetahui siapa saja yang melihat resume-nya di homepage pribadinya.
Script ini bekerja dengan cara membaca sebuah file HTML yang berisi
macro/tag mengganti tag-tag tersebut melalui regex, lalu mencetak hasilnya
kembali.
Untuk menambah kecepatan Lerdorf menulis ulang script-script
tersebut dengan bahasa C, kemudian menambahkan fasilitas form HTML dan
koneksi MySQL. Karena sifat PHP yang open source, versi-versi PHP
berikutnya dikembangkan oleh banyak programmer yang antusias dengan
perkembangan PHP. PHP adalah bahasa yang mudah dibuat. PHP tidak
membedakan huruf besar dan kecil (case sensitive), namun variabelnya case
sensitive.
PHP dapat “melakukan” semua aplikasi program CGI, seperti
mengambil nilai form, menghasilkan halaman web yang dinamis, serta
mengirim dan menerima cookie. PHP juga dapat berkomunikasi dengan
HTTP dan lain-lain. Namun tampaknya kelebihan PHP yang paling
signifikan adalah kemampuannya untuk melakukan koneksi dengan berbagai
macam database, antara lain :
• FilePro (read-only)
• Direct MS-SQL
• Semua database yang mempunyai
provider ODBC
• Ingres
• Oracle
Cara menulis kode PHP ada 3 versi, yaitu :
1. <?
3. <SCRIPT LANGUAGE = “php”>
Script PHP
Beberapa fungsi dan fasilitas yang disediakan PHP untuk membuat
halaman web dinamis adalah :
2.4.1. Fungsi md5( ).
Kegunaan md5() adalah untuk membuat sebuah string yang unik.
Fungsi ini dapat digunakan untuk program login. Fungsi ini akan memberikan
password yang unik dan sulit ditebak. Sintaksnya :
md5(“string”);
2.4.2. Fungsi Explode ( )
Kegunaan explode() adalah untuk memecah sebuah string menjadi
beberapa string dalam pola tertentu. Sintaksnya :
explode(“pola”,string);
2.4.3. Include dan require.
Kedua fungsi ini digunakan untuk memanggil dan mengeksekusi
program yang ditentukan. Sintaksnya :
<?php
include “nama_file.inc”; require “nama_file.inc”; ?>
2.4.4. Session handling.
Fasilitas session adalah salah satu keunggulan yang diberikan PHP.
Seorang pengunjung situs akan memiliki sebuah variabel session. Sehingga
dikenali/diidentifikasi. Fasilitas ini dapat digunakan untuk mengamankan
halaman web dan membatasi hak akses setiap pengunjung. Setiap halaman
akan diberi fungsi untuk memeriksa variabel session. Jika variabel session
atau pengunjung tidak dikenali, ia tidak dapat melihat halaman tersebut.
Sintaks untuk mendeklarasikan variabel session adalah :
<?php
session_start();
session_register(“user_session”); ?>
Untuk memeriksa variabel session sintaksnya adalah :
<?php
session_start();
if(!session_is_register(“user_session”)){
echo”Anda Belum Login”;
echo (“<a herf=login.php>Login Dulu</a>’); }
?>
2.4.5. Fungsi MySQL.
Beberapa fasilitas koneksi ke database MySQL yang disediakan PHP
antara lain adalah :
o mysql_affected_row, menghasilkan jumlah baris dalam suatu koneksi.
o mysql_close, menutup koneksi MySQL.
o mysql_create_db, membuat database.
o mysql_db_query, mengirim query SQL.
o mysql_drop_db, menghapus database.
o mysql_fecth_array, mengambil hasil query dalam bentuk array.
o mysql_fecth_row, mengambil hasil query baris-perbaris dalam bentuk
o mysql_query, melakukan query.
o mysql_result, mengambil data hasil query.
o mysql_connect, koneksi ke MySQL.
o mysql_pconnect, koneksi ke MySQL secara persisten.
o mysql_select_db, memilih database.
o mysql_num_rows, menghasilkan jumlah data hasil query.
2.4.6. Keunggulan dan Kelemahan PHP
Kelebihan PHP dibandingkan dengan bahasa pemrograman lainnya
adalah :
Sederhana dan mudah dalam proses pembuatan.
Mampu mendukung berbagai macam database.
Tersedianya fitur-fitur yang sering dipakai dalam proses pembuatan situs.
Karena sejak awal PHP didesain sebagai bahasa pemrograman web.
Ketersediaan, PHP dapat diperoleh secara gratis dengan men-download di
www.php.net.
PHP membantu pemula dengan mencetak pesan kesalahan ke browser
sehingga mempercepat siklus debugging.
Cross Platform, PHP dapat digunakan di hampir semua web server yang
ada di pasaran dan dijalankan pada berbagai sistem operasi.
Life Cycle yang singkat, sehingga PHP selalu up-to-date mengikuti
Namun PHP juga mempunyai kelemahan antara lain dari segi bahasa,
PHP bukanlah bahasa yang ideal untuk pengembangan berskala besar.
Kekurangan utama PHP adalah tidak adanya namespace.
2. 5. Tinjauan MySQL.
PHP menyediakan fasilitas koneksi untuk hampir semua program
database. Database yang populer untuk dipakai bersama PHP adalah
MySQL.
MySQL adalah perangkat lunak pengelola database yang sangat
populer, terutama di kalangan pengguna sistem operasi berbasis Unix. Badan
yang membuat MySQL adalah T.c.X Data Consultant AB, Swedia. MySQL
merupakan perangkat lunak yang bersifat open source. Sesuai dengan
namanya. Bahasa standar yang digunakan oleh MySQL adalah SQL
(Structure Query Language). SQL merupakan bahasa standar untuk
pengolahan database. Software ini mampu berjalan di sistem operasi non
Microsoft maupun di Microsoft Windows.
Secara umum akses program ke database harus melalui beberapa
tahapan sebagai berikut :
1. koneksi ke database, dapat menggunakan fungsi-fungsi :
¾ mysql_connect()
¾ mysql_pconnect()
2. membuat database dengan menggunakan fungsi mysql_create_db().
4. pemutusan koneksi dengan menggunakan fungsi mysql_close().
Meskipun PHP menyediakan fasilitas koneksi untuk hampir semua
program database, namun PHP tidak menyediakan fungsi khusus untuk
membuat tabel dengan field-fieldnya. Sehingga untuk membuat tabel data
digunakan sintaks dari program database (SQL) yang digunakan. Kemudian
sintaks ini dioperasikan menggunakan fungsi ‘mysql_query ( );’.
2.5.1. Structured Query Language (SQL) pada MySQL.
Perintah-perintah dasar SQL yang sering digunakan pada MySQL
adalah :
¾ Membuat database baru :
CREATE DATABASE nama_database
¾ Menghapus database :
DROP DATABASE nama_database
¾ Membuat tabel baru :
CREATE TABLE nama_tabel
(nama_field tipe_field([nilai])
([NOT NULL | NULL] [PRIMARY KEY] …, …)
¾ Menghapus tabel :
DROP TABEL nama_tabel
¾ Memasukkan data ke dalam tabel :
INSERT INTO nama_tabel [{field1, field2, …)] VALUES (nilai, …, …)
¾ Menghapus record :
DELETE FROM nama_tabel WHERE syarat
UPDATE nama_tabel SET field1=nilai, field2=nilai WHERE syarat
¾ Melakukan query ke database :
SELECT field1, field2 FROM nama_tabel WHERE syarat1, syarat2
ORDER BY field
2.5.2. Tipe Data.
Nilai data yang terdapat di dalam field-field tabel memiliki tipe data
sendiri-sendiri. MySQL mengenal beberapa tipe data yaitu antara lain :
Tabel tipe data numeric MySQL :
Tipe Data Diskripsi
TINYINT Integer 1 byte
SMALLINT Integer 2 byte MEDIUMINT Integer 3 byte
INTEGER Integer 4 byte
BIGINT(length) Integer 8 byte
FLOAT Bilangan floating-point
DOUBLE Bilangan precision floating-point DOUBLE PRECISION Bilangan precision floating-point REAL Bilangan precision floating-point DECIMAL (length, dec) Desimal
NUMERIC DECIMAL Tabel 2.3. Tabel tipe data numeric MySQL
Tabel tipe data string MySQL :
Tipe Data Diskripsi
CHAR(num) Fixed string, 1 – 255 karakter
VARCHAR(num) Panjang string 1 <= num <= 255 karakter TINYBLOB,
TINYTEXT
Teks/Binary, maks 255 karakter
MEDIUMBLOB, MEDIUMTEXT
1 – 16777215 karakter
ENUM Enumerasi, maks 65535 karakter
Tabel tipe data tanggal MySQL :
Tipe Data Diskripsi
DATE YYYY–MM–DD DATETIME YYYY–MM–DD HH:MM:SS TIME HH:MM:SS
TIMESTAMP YYYYMMDDHHMMSS Tabel 2.5. Tabel tipe data tanggal MySQL
2.5.3. Kelebihan dan Kekurangan MySQL.
Salah satu keunggulannya adalah MySQL memiliki fungsi
mysql_insert_id dan mysql_affected_rows yang tidak dimiliki oleh jenis
database lain. Keunggulan lainnya adalah MySQL mampu
mengkombinasikan tabel dari beberapa database yang berbeda dalam Query
yang sama. MySQL mampu menangani database berukuran besar karena
dapat menampung 50.000.000 record dan 60.000 tabel. Konektivitas,
kecepatan dan keamanannya membuat MySQL cocok untuk akses database
pada internet.
Namun ada fasilitas-fasilitas yang tidak disediakan MySQL salah
satunya adalah MySQL tidak bisa menangani sub_select/sub_query yang
kompleks. Untuk mengatasi masalah ini diperlukan tabel sementara untuk
menampung sub_query. Sintaks FOREIGN KEY pada MySQL juga tidak
3.1. Analisa Sistem.
3.1.1. Analisa Sistem Lama.
Langkah-langkah yang dilakukan untuk menganalisa sistem pada
sekolah dasar ini adalah sebagai berikut :
a. Identifikasi masalah yang ada.
Pada tahapan ini, penulis mengamati secara langsung pemrosesan
nilai akademik yang dilakukan oleh guru wali kelas, guru bidang studi,
orang tua siswa dan kepala sekolah kemudian penulis mengajukan
beberapa pertanyaan (wawancara) secara lisan tentang masalah yang
dihadapi dan mencari informasi apakah sistem yang ada sudah
terkomputerisasi atau masih secara manual. Setelah mengetahui
permasalahan yang dihadapi oleh masing-masing pihak yang terkait,
penulis mengumpulkan data-data yang diperlukan dalam pengembangan
sistem.
b. Analisa masalah dan kebutuhan dari sistem yang akan dikembangkan.
Setelah selesai tahapan pertama, penulis mulai menganalisa dan
menentukan bagian-bagian yang terlibat dalam sistem. Tidak lupa pula
penulis mencoba mencari informasi mengenai hal-hal yang diinginkan
oleh pengguna sistem. Serta menentukan batasan pengguna sistem.
Untuk mencari data tersebut dilakukan dengan teknik wawancara dan
pengambilan data di lapangan. Dari hasil analisa di lapangan ada 3 hal
pokok yang ada dalam sistem, yaitu :
¾ Pengolahan administrasi data siswa.
¾ Pengolahan administrasi nilai akhir siswa.
¾ Pengolahan administrasi data guru dan karyawan.
3.1.1.1. Sistem Pengolahan Data Siswa.
Pada bagian ini merupakan penjelasan mengenai sistem pengolahan
data siswa lama, yang dilakukan secara manual. Bagian – bagian yang
terkait yaitu orang tua/wali siswa yang memberikan data siswa karena
siswa belum bisa mengisi sendiri, guru wali kelas yang menerima data
dan mengisikan ke dalam form data siswa, dan yang terakhir adalah
Kelapa Sekolah yang bertugas menerima laporan data siswa dari wali
kelas dan mengesahkan semua keluaran. Proses yang terjadi pada
bagian ini adalah sebagai berikut :
a. Siswa mendapatkan formulir Data Siswa dari Wali Kelas untuk diisi
sesuai dengan kenyataan. Karena siswa belum dewasa maka
formulir diberikan kepada orang tua/wali murid. Setelah selesai diisi
lengkap dikembalikan lagi kepada Wali Kelas.
b. Wali Kelas kemudian mengisikan Data Siswa ke dalam formulir
Buku Induk Siswa. Setelah selesai lembar Data Siswa dikembalikan
c. Orang tua/wali murid memeriksa kembali data tersebut. Bila ada
kesalahan, orang tua/wali mengoreksi kesalahan tersebut. Bila
dirasa telah benar, lembar Data tersebut dikembalikan lagi ke Wali
Kelas.
d. Wali kelas membuat laporan Data Siswa yang telah dikoreksi dari
buku Induk Siswa ke dalam formulir Laporan Data Siswa. Lembar
Data Siswa disimpan oleh wali kelas.
e. Kepala Sekolah menerima Laporan Data Siswa dari Wali Kelas
dalam bentuk buku induk siswa untuk pengarsipan dan akan
digunakan jika terdapat masalah yang bersifat pribadi tentang siswa
yang bersangkutan.
Siswa Orang tua/Wali Wali Kelas Kepala Sekolah Murid ke dalam
Buku Induk
Gambar 3.1. Diagram Prosedur pengolahan Data Siswa
3.1.1.2. Sistem Pengolahan Data Nilai Siswa.
Prosedur yang terjadi pada bagian ini adalah prosedur proses
pengolahan data nilai siswa dari guru bidang studi bagi kelas IV sampai
diserahkan kepada siswa yang disahkan oleh Kepala Sekolah. Diagram
prosedur yang terjadi pada bagian ini adalah sebagai berikut :
Guru Bidang Studi Wali Kelas Siswa
Gambar 3.2. Diagram Prosedur Pengolahan Data Nilai Siswa
Penjelasan secara rinci dari prosedur pengolahan data nilai siswa di atas
adalah sebagai berikut :
a. Guru bidang studi menyerahkan daftar nilai final siswa selama satu
semester kepada guru wali kelas masing-masing. Bagi kelas I, II,
Nilai Siswa
Nilai Siswa
Memasukkan nilai pada lembar data
nilai
Menghitung jumlah dan nilai rata-rata
Menyalin nilai akhir ke dalam buku
raport siswa
Salinan nilai raport siswa
dan III langsung di pegang olah guru wali kelas karena kelas I, II,
dan III belum dibedakan sesuai bidang studinya.
b. Guru wali kelas memasukkan nilai dari guru bidang studi dan dari
nilai yang dibuatnya sendiri pada lembar daftar nilai akhir semester
pada kelas yang diampunya.
c. Guru wali kelas melakukan penjumlahan dan mencari nilai rata-rata
tiap siswa di kelas yang diampunya.
d. Wali kelas menyalin data nilai lengkap dari tiap siswa ke dalam
raport siswa dan mengisikan laporan pemantauan sikap siswa
selama satu semester.
e. Buku yang telah selesai di isi diberikan kepada siswa yang
kemudian akan dikembalikan lagi setelah diperlihatkan kepada
orang tua masing-masing. Salinan dari nilai raport disimpan oleh
guru wali kelas sebagai arsip.
3.1.2. Analisa Sistem Baru.
3.1.2.1. Prosedur Sistem Informasi Akademik.
Prosedur dari Sistem Informasi Akademik Sekolah Dasar adalah
Orang tua/Siswa G. B. Studi Wali Kelas Kep. Sek akademik Laporan
akademik
Input data siswa ke dalam sistem
Mengesahkan
Gambar 3.3. Diagram Prosedur Sistem Informasi Akademik Sekolah Dasar
Input nilai siswa ke dalam sistem
Sistem Informasi Akademik Sekolah
Dasar
Mencetak laporan akademik & data
siswa Database
SIA
Laporan akademik Laporan
akademik Laporan data
siswa
Laporan akademik Laporan
akademik Input data siswa ke dalam sistem
Input nilai siswa ke dalam sistem
Dari gambar diagram di atas dapat diperjelas dengan uraian sebagai
berikut :
a. Guru wali kelas memberikan formulir data siswa kepada orang tua
siswa untuk diisi secara lengkap. Bagi orang tua yang dapat
menggunakan komputer bisa langsung mengisikan data siswa ke
dalam sistem.
b. Orang tua siswa mengisi formulir data siswa tersebut secara
lengkap.
c. Formulir data siswa yang telah diisi lengkap oleh orang tua siswa
dikembalikan ke wali kelas untuk diproses lebih lanjut.
d. Wali kelas memasukkan data siswa ke dalam sistem sesuai dengan
formulir data siswa yang sudah diisi lengkap.
e. Wali kelas mencetak seluruh data siswa yang sudah di masukkan ke
dalam sistem berupa laporan data siswa.
f. Laporan data siswa kemudian diserahkan kepada Kepala Sekolah
untuk disahkan dan disimpan sebagai arsip.
g. Guru bidang studi memasukkan daftar nilai akhir setiap siswa ke
dalam sistem.
h. Wali kelas memasukkan daftar nilai dan data perkembangan siswa
tersebut ke dalam sistem untuk tiap siswa yang diampunya.
i. Wali kelas mencetak daftar nilai untuk tiap siswa sebanyak 2
rangkap kemudian diberikan kepada Kepala Sekolah, berupa
j. Kepala sekolah menerima laporan akademik siswa kemudian
mengesahkannya.
k. Laporan akademik siswa lembar 1 diberikan kepada siswa sebagai
laporan kepada orang tua/wali. Sedangkan laporan akademik siswa
lembar 2 di simpan oleh Kepala Sekolah sebagai arsip.
3.1.2.2. DFD Sistem Informasi Akademik.
Pada tahap ini akan diperlihatkan model dari Sistem Informasi
Akademik Sekolah Dasar yang akan dibuat dengan menggunakan Data
Flow Diagram (DFD).
a. Diagram Konteks
a
Laporan data siswa & laporan akademik Laporan
Terlihat bahwa entity yang terlibat dalam proses di Sistem Informasi
Akademik Sekolah Dasar ini adalah Guru Wali Kelas, Guru Bidang
Studi, Kepala Sekolah dan Orang Tua Siswa.
b. Diagram Berjenjang.
Sistem
Gambar 3.5. Diagram Berjenjang dari SIA SD.
Pada bagian selanjutnya, Sistem Informasi Akademik Sekolah Dasar
akan diuraikan lagi menjadi beberapa operasi pengolahan data
laporan yang dihasilkan oleh proses yang akan berupa print out dan
tampilan di layar monitor komputer. Untuk lebih jelasnya proses
yang terdapat dalam sistem ini, akan digambarkan proses yang
c. DFD Level 0.
Gambar 3.6. DFD Level 0
d. DFD Level 1 Proses 1
Gambar 3.7. DFD level 1 Proses 1
b & Laporan data Siswa
e. DFD Level 1 Proses 2
Gambar 3.8. DFD level 1 Proses 2
f. DFD Level 1 Proses 3
Gambar 3.9. DFD level 1 Proses 3
3.2. Perancangan Sistem.
3.2.1. Perancangan Sistem Secara Umum.
3.2.1.1. Perancangan Data Entry.
Agar dalam penulisan program lebih efektif dan akurat maka
perlu di bentuk kode dari data-data yang akan digunakan, untuk
penulisan kode pada Sistem Informasi Akademik Sekolah Dasar in
adalah sebagai berikut :
a. Data Siswa.
Sebagai kunci utama dari data siswa ini adalah dengan
menggunakan nomor induk siswa sebanyak 4 karakter. Nomor
induk siswa ini merupakan nomor urut yang telah ditetapkan sejak
siswa tersebut diterima di sekolah yang bersangkutan. Dalam
penulisan nomor induk ini tidak ada arti khusus pada tiap karakter.
b. Data Guru / Karyawan.
Pada bagian tabel guru/karyawan digunakan field khusus yang
sekaligus digunakan sebagai kunci utama untuk data guru/karyawan.
Aturan yang digunakan sebagai kunci utama dari data
guru/karyawan adalah sebagai berikut :
Gxxx untuk kode guru.
Kxxx untuk kode karyawan
c. Data Mata pelajaran.
Dalam tabel mata pelajaran akan ditambahkan satu field yang akan
digunakan sebagai kunci utama dari tabel tersebut. Kunci utama
tersebut berupa kode dengan ketentuan sebagai berikut :
XXXyy
Keterangan :
XXX : Kode untuk mata pelajaran
yy : kode untuk kelas
Contohnya :
IPA01 : IPA 01
Kode untuk kelas 1
Kode untuk IPA
d. Data Kelas.
Sedangkan untuk memperjelas dalam penulisan program maka
untuk tabel kelas akan digunakan field kunci dengan aturan
penulisan kode sebagai berikut :
ZZZyy
Keterangan :
ZZZ : Kode untuk Jenis Kelas
Contohnya :
REG10 : REG 10
Hal ini dilakukan apabila dalam satu kelas hanya ada satu paralel
saja.
EKS51 : EKS 51
Kode untuk kelas 1
Kode untuk jenis Regular
Kode ini digunakan untuk menunjukkan bahwa kelas yang tersebut
di paralel., ditunjukkan dengan adanya angka 1 di belakang angka 5. Kode untuk kelas 5 paralel 1
Kode untuk jenis Kelas Ekstra
3.2.1.2. Perancangan Basis Data Secara Umum.
Pada tahap ini akan ditentukan file atau tabel yang menjadi
sumber data untuk Sistem Informasi Akademik Sekolah Dasar ini.
Tabel-tabel yang akan dibuat dibagi menjadi dua tabel penting yaitu
transaksi yang akan digunakan untuk merekam data hasil dari suatu
hasil yang terjadi.
Kd-File Nama File Tipe Media Organisasi Field Kunci D01 Karyawan Index Hard disk Relational Id_guru
D02 Data_Materi Index Hard disk Relational Id_materi
D03 Kelas Index Hard disk Relational Id_kls
D04 Siswa Index Hard disk Relational Id_ind
D05 Kelas_$kelas Transaksi Hard disk Relational Id
D06 Materi Transaksi Hard disk Relational Id_materi
Tabel 3.1. Tabel database
3.2.1.3. Perancangan Input Secara Umum.
Pada tahap perancangan input secara umum ini akan dilakukan
pengidentifikasian input-input yang akan dibuat desain secara rinci.
Perancangan input secara umum adalah sebagai berikut :
Kd
input Jml Distribusi Alat input periode
I01 Data - Kepala sekolah
Keyboard Tahunan
I02 Data Karyawan
Dokumen
dasar Internal 1 - Kepala sekolah Keyboard Tahunan
I03 Data kelas Dokumen
dasar Internal 1
- Wali kelas - Guru B. Studi - Kepala sekolah
Keyboard Tahunan
- Guru B. Studi Keyboard Tahunan Tabel 3.2. Tabel input data
3.2.1.4. Perancangan Output Secara Umum.
Dalam perancangan output di sistem ini akan berupa output pada
media kertas dan tampilan di monitor. Perancangan output secara umum
Kode output
Nama
output Tipe Format Media Alat Jml Distribusi Waktu
A01 Nilai
siswa Internal Tabel
Kertas, Layar
Printer, Monitor 1
Kepala
Sekolah Tahunan
A03 Jadwal Internal Tabel Kertas, Layar
A04 Absen Internal Tabel Kertas, Layar
Kelas Internal Tabel
Kertas,
Mapel Internal Tabel
Kertas,
Karyawan Internal Tabel
Kertas,
3.2.2. Perancangan Sistem Secara Rinci.
3.2.2.1. Perancangan Basis Data Secara Rinci.
Pada perancangan basis data ini menekankan pada entity yang
ada dan relasi antar tabel yang digunakan. Pada tahap ini yang harus
diperhatikan adalah arus data dan file data seperti yang telah
digambarkan pada diagram arus data sebelumnya. Berikut akan
digambarkan perancangan basis data secara rinci.
3.2.2.1.1. Conceptual Design.
Dalam perancangan basis data tahap pertama ini atau tahap
Mengajar
Memberikan nilai Kelas
Memiliki
Menempati Siswa Mengambil Guru Pelajaran Mata
1 N
N
N N
N N
N
N N
Gambar 3.10. Conceptual design
3.2.2.1.2. Logical Design.
Perancangan basis data dibuat berdasarkan relasi antar tabel (entity
relational). Untuk melihat relasi antar tabel dalam sistem ini dapat
3.2.2.1.3. Physical Design.
Dari perancangan basis data yang telah dibuat, kemudian dibuat
rancangan dari tabel-tabel yang akan digunakan dalam sistem ini.
Tabel-tabel tersebut antara lain :
Nama tabel Siswa
tempat_lahir varchar 30
tgl_lahir varchar 30
alamat varchar 75
telepon varchar 15
agama varchar 20
kewarganegaraan varchar 10
bahasa varchar 10
tinggi varchar 5
berat varchar 5
gol_darah varchar 4 pendidikan varchar 20
asal_sekolah varchar 30
no_sttb varchar 15
masuk varchar 20
kelas varchar 10
nm_ayah varchar 30 pek_ayah varchar 40
nm_ibu varchar 30
pek_ibu varchar 40
alamat_ortu varchar 65 nm_wali varchar 30 pek_wali varchar 40 alamat_wali varchar 65
userid varchar 50
password varchar 10 status int 1
Nama tabel Guru
alamat varchar 100
telp varchar 15
pendidikan varchar 50
pgkt_gol_ru varchar 20
stt_jabatan varchar 30
jabatan varchar 20
perkawinan varchar 20
mulai varchar 30
masa varchar 30
userid varchar 10
password varchar 10 Tabel 3. 5. Tabel Guru
Nama tabel Kelas
Field Type Size
id int 3
kode_kls varchar 10
nama varchar 15
jenis varchar 20
fasilitas varchar 250
wali_kls varchar 50 password varchar 10
status varchar 10
Tabel 3. 6. Tabel Kelas
Nama tabel Data_materi
Field Type Size
id int 3
nama varchar 200
session int 5
Tabel 3. 7. Tabel Data Materi
Tabel relasi terbentuk dari hasil relasi antar tabel utama. Yang
termasuk tabel relasi dalam sistem ini antara lain adalah tabel materi