sinkronisasi database pada sistem informasi sekolah … · 2018. 11. 21. · sistem informasi...

166
SINKRONISASI DATABASE PADA SISTEM INFORMASI SEKOLAH MENGGUNAKAN PHP DAN MYSQL SKRIPSI Ditujukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Jurusan Teknik Informatika Disusun Oleh: Paulus Yansen Soriton NIM : 03 5314 019 JURUSAN TEKNIK INFORMATIKA FAKULTAS TEKNIK UNIVERSITAS SANATA DHARMA YOGYAKARTA 2007 i

Upload: others

Post on 09-Aug-2021

10 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

SINKRONISASI DATABASE PADA SISTEM INFORMASI SEKOLAH MENGGUNAKAN PHP DAN MYSQL

SKRIPSI

Ditujukan Untuk Memenuhi Salah Satu Syarat

Memperoleh Gelar Sarjana Teknik Jurusan Teknik Informatika

Disusun Oleh:

Paulus Yansen Soriton

NIM : 03 5314 019

JURUSAN TEKNIK INFORMATIKA

FAKULTAS TEKNIK UNIVERSITAS SANATA DHARMA

YOGYAKARTA 2007

i

Page 2: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

DATABASE SYNCHRONIZATION OF SCHOOL INFORMATION SYSTEM

USING PHP AND MYSQL

A Thesis

Presented as Partial Fulfillment of the Requirements

to Obtain the Sarjana Teknik Degree

in Department of Informatics Technology

Created by:

Paulus Yansen Soriton

NIM : 03 5314 019

DEPARTMENT OF INFORMATICS TECHNOLOGY

FACULTY OF ENGINEERING SANATA DHARMA UNIVERSITY

YOGYAKARTA 2007

ii

Page 3: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan
Page 4: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan
Page 5: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

PERNYATAAN KEASLIAN KARYA

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, September 2007

Penulis

Paulus Yansen Soriton

v

Page 6: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

HALAMAN PERSEMBAHAN

Karya ini kupersembahkan untuk :

Tuhan Yesus-ku yang memberikan orang tua, keluarga dan teman-teman yang

terbaik di dalam hidup-ku.

vi

Page 7: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

HALAMAN MOTTO

Belajar bukan untuk nilai, tetapi untuk hidup.

Pengalaman adalah guru yang keras

karena memberikan ujian dulu, baru kemudian pelajarannya.

Pratice makes perfect.

vii

Page 8: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

ABSTRAKSI

Sistem informasi sekolah digunakan untuk mengelolah data baik data

siswa, guru, fasilitas, pegawai, dan lain-lain. Data tersebut disimpan di database

sekolah yang kemudian akan dikirim ke kabupaten untuk diproses oleh

pemerintah daerah. Database sekolah dengan kabupaten dalam kasus ini tidak

terhubung satu dengan yang lain, sedangkan data di setiap sekolah harus sama

dengan data di kabupaten.

Pada tugas akhir ini dibuat suatu sistem untuk menangani sinkronisasi data

pada sistem informasi pendidikan agar data yang ada di sekolah dapat sinkron

dengan data yang ada di kabupaten.

Teknologi pada kasus ini menggunakan PHP 5 dan MySQL 5. Untuk

proses sinkronisasi-nya menggunakan triggers dan stored procedures.

viii

Page 9: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

ABSTRACT

School information system is used for processing data, such as data of

students, teachers, facilities, staffs, etc. This data is saved in school's database that

will be sent to regency to be processed by district government. School's database

and regency's database, in this case, are not connected one to the others, but each

school must be the same with data in regency.

This final assignment is made a system for holding synchronization of data

in education information system in order that data of school can synchronize with

data in regency.

In this case, the technology uses PHP 5 and MYSQL 5. For

synchronization process, it uses triggers and stored procedures.

ix

Page 10: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

KATA PENGANTAR

Puji dan syukur penulis panjatkan kepada Tuhan Yang Maha Kuasa

yang telah melimpahkan berkat-Nya sehingga penulis dapat menyelesaikan

Laporan Tugas Akhir ini. Penulisan tugas akhir ini ditujukan untuk memenuhi

salah satu syarat memperoleh gelar Sarjana Teknik Jurusan Teknik Informatika.

Pada kesempatan ini, penulis ingin mengucapkan terima kasih kepada

pihak-pihak yang telah membantu penulis dalam menyelesaikan skripsi ini, baik

dalam hal bimbingan, perhatian, kasih sayang, semangat, kritik, dan saran yang

telah diberikan. Ucapan terima kasih ini penulis sampaikan antara lain kepada :

1. Ir. Gregorius Heliarko, S.J., S.S., B.S.T., M.A., M.Sc, selaku Dekan Fakultas

Teknik Universitas Sanata Dharma Yogyakarta.

2. Agnes Maria Polina, S.Kom., M.Sc., selaku Ketua Jurusan Teknik Informatika

Universitas Sanata Dharma.

3. JB. Budi Darmawan, S.T., M.Sc., selaku Dosen Pembimbing I dan H. Agung

Hernawan, S.T, selaku Dosen Pembimbing II.

4. Seluruh staff dan dosen pengajar di Universitas Sanata Dharma pada

umumnya dan Jurusan Teknik Informatika pada khususnya.

5. Keluarga tercinta, atas doa, kasih sayang, dan semangat yang tiada akhir

sehingga penulis dapat menyelesaikan tugas akhir ini.

6. Abé dan Onezzt., rekan satu team yang telah bekerja sama dengan penulis

dalam penyelesaian tugas akhir ini.

x

Page 11: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

7. Teman-teman dekat yang selama kuliah selalu memberi semangat kepada

penulis, yakni Abé, Jun, Danang, Onezzt, Ako, Pakdhe, Agus, Ina, Ticka,

Hendro, Ruth, Fendy, Acied, Sarah, Eko, Dian, Ratih, Marcell, Heni, Rachel,

Dea, Ari, Devi.

8. Teman-teman Jurusan Teknik Informatika Angkatan 2003 yang telah berjuang

bersama penulis sewaktu kuliah, Albert CP (Abé), Jun (Odol), Bergas, Eko

(Klaten), Hendrik (Ciblék), Ellen, Jeje, Dion, Adwi, Danang, Heni, Angga

(TooCool), Marcell, Irvan, Hendro (Ndrew), Dian, Isti, Nug, Acied, Kristina,

Ruth (Uthe), Onezzt, Sarah, Ina, Ratih, Gina (Preman), Dea, Agus (Gepenk),

Devi, Anis, Evi (Ephot), Dani, Wikan (Erross), Linda, Rissa, Santhoz, Amin,

Ari, Albert K (Pakdhe), Winda, Fendy, Seno, Chandra, Hana, David, Ticka,

Mery, Monic, Yeyen, Ako, Nur, Rubin, Esther, Oscar, Ria, dan Rachel, serta

teman-teman Jurusan Teknik Informatika lainnya.

9. Pak Belle, Mas Danang, dan Pak Dhar, yang senang hati memberikan ijin

kepada penulis untuk menggunakan Lab.

10. Teman-teman kost “Barokah”, Danang, Iwan, Willy, Mas Agus (Ochay).

11. Seluruh pihak yang telah membantu penulis baik secara langsung ataupun

tidak langsung, yang tidak dapat penulis sebutkan satu-persatu.

Penulis menyadari bahwa masih banyak kekurangan yang terdapat pada

laporan ini. Saran dan kritik selalu penulis harapkan dari pembaca untuk

perbaikan-perbaikan di masa yang akan datang.

xi

Page 12: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

Akhir kata, penulis berharap tulisan ini dapat bermanfaat bagi kemajuan

dan perkembangan ilmu pengetahuan dan berbagai pihak pengguna pada

umumnya.

Yogyakarta, September 2007

Penulis

xii

Page 13: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

DAFTAR ISI

Halaman

HALAMAN JUDUL................................................................................................ i

HALAMAN JUDUL............................................................................................... ii

HALAMAN PERSETUJUAN............................................................................... iii

HALAMAN PENGESAHAN................................................................................ iv

PERNYATAAN KEASLIAN KARYA ................................................................. v

HALAMAN PERSEMBAHAN ............................................................................ vi

HALAMAN MOTTO ........................................................................................... vii

ABSTRAK ...........................................................................................................viii

ABSTRACT........................................................................................................... ix

KATA PENGANTAR ............................................................................................ x

DAFTAR ISI........................................................................................................xiii

DAFTAR TABEL............................................................................................... xvii

DAFTAR GAMBAR ........................................................................................... xxi

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

1.1 Latar Belakang Masalah........................................................................ 1

1.2 Rumusan Masalah ................................................................................. 2

1.3 Batasan Masalah ................................................................................... 2

1.4 Tujuan Penelitian .................................................................................. 2

1.5 Manfaat Penelitian ................................................................................ 3

1.6 Metodologi Penelitian ........................................................................... 3

1.7 Sistematika Penulisan ........................................................................... 4

xiii

Page 14: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

BAB II LANDASAN TEORI ................................................................................. 6

2.1 Sistem Informasi ................................................................................... 6

2.2 Sinkronisasi Database........................................................................... 6

2.3 Database ............................................................................................... 6

2.4 MySQL.................................................................................................. 7

2.4.1 Query Language..................................................................... 7

2.4.2 Stored Procedures .................................................................. 9

2.4.3 Triggers .................................................................................. 9

2.4.4 MySQL Tools....................................................................... 10

2.5 Bagan Alir Sistem (System Flowchart)............................................... 11

2.6 Use Case Diagram .............................................................................. 13

2.7 Entity Relationship Diagram (ER Diagram) ...................................... 14

2.8 Data Flow Diagram (DFD) ................................................................ 16

2.9 HTML (Hyper Text Markup Language) ............................................. 18

2.10 PHP (Personal Home Page) ............................................................. 19

2.11 Pendidikan di Kabupaten Kutai Barat............................................... 20

BAB III ANALISA DAN PERANCANGAN SISTEM....................................... 22

3.1 Analisis Sistem.................................................................................... 22

3.1.1 Gambaran Umum Sistem yang Lama .................................. 22

3.1.2 Orang yang Terlibat dalam Sistem....................................... 22

3.1.3 Gambaran Umum Sistem yang Baru ................................... 23

3.1.4 Requirement Analysis........................................................... 24

3.1.5 Logical Design ..................................................................... 26

xiv

Page 15: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

3.1.5.1 Process Modeling.............................................................. 26

3.1.5.2 Data Modeling (ER-Diagram) .......................................... 53

3.2 Perancangan Sistem ............................................................................ 64

3.2.1 Desain Database ................................................................... 64

3.2.2 Relasi Antar Tabel ............................................................... 84

3.2.3 Bagan Alir Sistem (System Flowchart)................................ 95

3.2.4 Perancangan Teknologi Sinkronisasi ................................. 101

3.2.5 Desain User Interface ........................................................ 105

BAB IV IMPLEMENTASI SISTEM ................................................................. 107

4.1 Tampilan Sekolah.............................................................................. 109

4.1.1 Form Login ........................................................................ 109

4.1.2 Form Sinkronisasi Keluar ................................................. 110

4.1.3 Form Sinkronisasi Kedalam............................................... 115

4.1.4 Form Sinkronisasi Awal..................................................... 120

4.2 Tampilan Kabupaten ......................................................................... 123

4.2.1 Form Login ........................................................................ 123

4.2.2 Form Sinkronisasi Kedalam............................................... 124

4.2.3 Form Sinkronisasi Keluar .................................................. 129

4.2.4 Form Sinkronisasi Awal..................................................... 135

BAB V ANALISA HASIL IMPLEMENTASI .................................................. 139

5.1 Analisa Teknologi ............................................................................. 139

5.2 Analisa Hasil Perangkat Lunak......................................................... 140

5.3 Kelebihan dan Kekurangan............................................................... 141

xv

Page 16: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

BAB VI PENUTUP ............................................................................................ 142

6.1 Kesimpulan ....................................................................................... 142

6.2 Saran.................................................................................................. 142

DAFTAR PUSTAKA ......................................................................................... 143

xvi

Page 17: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

DAFTAR TABEL

Halaman

Tabel 2.1 Bagan Alir Sistem ................................................................................. 12

Tabel 2.2 Cardinality Notations............................................................................ 16

Tabel 3.1 Tabel Input Output Proses Modeling.................................................... 26

Tabel 3.2 Tabel TK ............................................................................................... 64

Table 3.3 Tabel BUKU_SD .................................................................................. 65

Tabel 3.4 Tabel SD ............................................................................................... 65

Tabel 3.5 Tabel SMP ............................................................................................ 66

Tabel 3.6 Tabel SMP_NEGERI............................................................................ 67

Tabel 3.7 Tabel SMP_SWASTA .......................................................................... 67

Tabel 3.8 Tabel SMA............................................................................................ 67

Tabel 3.9 Tabel SMA_NEGERI ........................................................................... 68

Tabel 3.10 Tabel SMA_SWASTA ....................................................................... 68

Tabel 3.11 Tabel SMK_NEGERI ......................................................................... 69

Tabel 3.12 Tabel SMK_SWASTA ....................................................................... 69

Tabel 3.13 Tabel RUANG .................................................................................... 69

Tabel 3.14 Tabel TANAH..................................................................................... 70

Tabel 3.15 Tabel LABORATORIUM .................................................................. 70

Tabel 3.16 Tabel ALAT_PENDIDIKAN ............................................................. 70

Tabel 3.17 Tabel BUKU ....................................................................................... 70

Tabel 3.18 Tabel PERLENGKAPAN................................................................... 70

Tabel 3.19 Tabel KARYAWAN........................................................................... 71

xvii

Page 18: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

Tabel 3.20 Tabel GURU ....................................................................................... 71

Tabel 3.21 Tabel GEDUNG.................................................................................. 72

Tabel 3.22 Tabel TK_HAS_GEDUNG ................................................................ 72

Tabel 3.23 Tabel SD_HAS_GEDUNG................................................................. 72

Tabel 3.24 Tabel SMP_HAS_GEDUNG.............................................................. 72

Tabel 3.25 Tabel SMA_HAS_GEDUNG............................................................. 72

Tabel 3.26 Tabel TK_HAS_GEDUNG_HAS_RUANG ...................................... 73

Tabel 3.27 Tabel SD_HAS_GEDUNG_HAS_RUANG ...................................... 73

Tabel 3.28 Tabel SMP_HAS_GEDUNG_HAS_RUANG ................................... 73

Tabel 3.29 Tabel SMA_HAS_GEDUNG_HAS_RUANG................................... 73

Tabel 3.30 Tabel SD_HAS_BUKU ...................................................................... 74

Tabel 3.31 Tabel SMP_HAS_BUKU ................................................................... 74

Tabel 3.32 Tabel SMA_HAS_BUKU................................................................... 74

Tabel 3.33 Tabel TK_HAS_PERLENGKAPAN ................................................. 75

Tabel 3.34 Tabel SD_HAS_PERLENGKAPAN.................................................. 75

Tabel 3.35 Tabel SMP_HAS_PERLENGKAPAN............................................... 75

Tabel 3.36 Tabel SMA_HAS_PERLENGKAPAN .............................................. 75

Tabel 3.37 Tabel SD_HAS_ALAT_PENDIDIKAN ............................................ 75

Tabel 3.38 Tabel SMP_HAS_ALAT_PENDIDIKAN ......................................... 76

Tabel 3.39 Tabel SMA_HAS_ALAT_PENDIDIKAN......................................... 76

Tabel 3.40 Tabel SMP_HAS_LABORATORIUM .............................................. 76

Tabel 3.41 Tabel SMA_HAS_LABORATORIUM.............................................. 76

Tabel 3.42 Tabel SD_HAS_BUKU_SD............................................................... 76

xviii

Page 19: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

Tabel 3.43 Tabel RIWAYAT_BEKERJA_TK..................................................... 77

Tabel 3.44 Tabel RIWAYAT_BEKERJA_SD..................................................... 77

Tabel 3.45 Tabel RIWAYAT_BEKERJA_SMP .................................................. 77

Tabel 3.46 Tabel RIWAYAT_BEKERJA_SMA ................................................. 77

Tabel 3.47 Tabel RIWAYAT_MENGAJAR_TK................................................. 78

Tabel 3.48 Tabel RIWAYAT_MENGAJAR_SD................................................. 78

Tabel 3.49 Tabel RIWAYAT_MENGAJAR_SMP.............................................. 78

Tabel 3.50 Tabel RIWAYAT_MENGAJAR_SMA ............................................. 79

Tabel 3.51 Tabel USER_KABUPATEN .............................................................. 79

Tabel 3.52 Tabel SISWA ...................................................................................... 79

Tabel 3.53 Tabel NILAI........................................................................................ 80

Tabel 3.54 Tabel UAN.......................................................................................... 80

Tabel 3.55 Tabel KELAS...................................................................................... 80

Tabel 3.56 Tabel TINGKAT................................................................................. 80

Tabel 3.57 Tabel PARALEL................................................................................. 80

Tabel 3.58 Tabel PERTEMUAN .......................................................................... 81

Tabel 3.59 Tabel STATUS_MASUK................................................................... 81

Tabel 3.60 Tabel STATUS_NAIK ....................................................................... 81

Tabel 3.61 Tabel STATUS_KELUAR ................................................................. 81

Tabel 3.62 Tabel STATUS_LULUS..................................................................... 82

Tabel 3.63 Tabel PENJURUSAN......................................................................... 82

Tabel 3.64 Tabel RIWAYAT_TK ........................................................................ 82

Tabel 3.65 Tabel RIWAYAT_SD......................................................................... 82

xix

Page 20: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

Tabel 3.66 Tabel RIWAYAT_SMP...................................................................... 83

Tabel 4.67 Tabel RIWAYAT_SMA..................................................................... 83

Tabel 3.68 Tabel TINGKAT_SEKOLAH ............................................................ 83

Tabel 3.69 Kondisi Flag...................................................................................... 101

Tabel 3.70 Penambahan Kolom di Database Sinkronisasi.................................. 103

Tabel 3.71 Daftar Database Sinkronisasi yang Diperlukan Proses Sekolah....... 104

Tabel 3.72 Daftar Database Sinkronisasi yang Diperlukan Proses Kabupaten .. 104

Tabel 5.1 Tabel Pengamatan Sinkronisasi Kedalam Kabupaten ........................ 140

xx

Page 21: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

DAFTAR GAMBAR

Halaman

Gambar 2.1 Simbol Use case ................................................................................ 13

Gambar 2.2 Simbol Actor ..................................................................................... 13

Gambar 2.3 Simbol use case association relationship ......................................... 14

Gambar 2.4 Simbol Entity..................................................................................... 14

Gambar 2.5 Simbol Relations ............................................................................... 15

Gambar 2.6 Simbol Proses.................................................................................... 16

Gambar 2.7 Simbol External Agent ...................................................................... 17

Gambar 2.8 Simbol Data Flow ............................................................................. 17

Gambar 2.9 Simbol Data Store ............................................................................. 17

Gambar 3.1 Skema Sistem Informasi Sekolah...................................................... 24

Gambar 3.2 Use Case Diagram Untuk Proses Sekolah ........................................ 25

Gambar 3.3 Use Case Diagram Untuk Proses Kabupaten.................................... 25

Gambar 3.4 Context Diagram ............................................................................... 26

Gambar 3.5 Bagan Berjenjang .............................................................................. 27

Gambar 3.6 DFD Level 0 – proses sekolah .......................................................... 28

Gambar 3.7 DFD Level 0 – proses kabupaten ...................................................... 28

Gambar 3.8 ER Diagram....................................................................................... 53

Gambar 3.9 Relasi Antar Tabel............................................................................. 84

Gambar 3.10 Bagan Alir Sistem Sinkronisasi Keluar Sekolah............................. 95

Gambar 3.11 Bagan Alir Sistem Sinkronisasi Data Awal Kedalam Sekolah ....... 96

Gambar 3.12 Bagan Alir Sistem Sinkronisasi Kedalam Sekolah ......................... 97

xxi

Page 22: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

Gambar 3.13 Bagan Alir Sistem Sinkronisasi Data Awal Keluar Kabupaten ...... 98

Gambar 3.14 Bagan Alir Sistem Sinkronisasi Keluar Kabupaten ........................ 99

Gambar 3.15 Bagan Alir Sistem Sinkronisasi Kedalam Kabupaten................... 100

Gambar 3.16 Aristektur Desain Sinkronisasi...................................................... 102

Gambar 3.17 Sinkronisasi Keluar Sekolah ......................................................... 105

Gambar 3.18 Sinkronisasi Kedalam Sekolah...................................................... 105

Gambar 3.19 Sinkronisasi Awal Sekolah ........................................................... 105

Gambar 3.20 Sinkronisasi Kedalam Kabupaten ................................................. 106

Gambar 3.21 Sinkronisasi Keluar Kabupaten..................................................... 106

Gambar 3.22 Sinkronisasi Awal Sekolah Kabupaten ......................................... 106

Gambar 4.1 Halaman Login Sekolah.................................................................. 109

Gambar 4.2 Listing Login Super Admin SMP.................................................... 110

Gambar 4.3 Halaman Sinkronisasi Keluar Sekolah............................................ 110

Gambar 4.4 Listing Untuk Tabel Sinkronisasi Keluar Sekolah .......................... 111

Gambar 4.5 Listing Untuk Menjalankan mysqldump......................................... 111

Gambar 4.6 Listing Koneksi Database................................................................ 112

Gambar 4.7 Listing Untuk Setting Sinkronisasi Sekolah.................................... 113

Gambar 4.8 Listing Trigger Tabel Guru di Database SMP................................. 114

Gambar 4.9 Halaman Sinkronisasi Kedalam Sekolah ........................................ 115

Gambar 4.10 Listing Upload Sinkronisasi Masuk Sekolah ................................ 115

Gambar 4.11 Listing Proses Upload Sinkronisasi Masuk Sekolah..................... 116

Gambar 4.12 Listing panggil Stored Procedures-Sinkronisasi Masuk Sekolah . 117

Gambar 4.13 Listing Stored Procedures Untuk Mensikronkan Tabel Guru ...... 119

xxii

Page 23: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

Gambar 4.14 Halaman Sinkronisasi Awal Sekolah ............................................ 120

Gambar 4.15 Listing Untuk Upload Pada Sinkronisasi Awal Sekolah............... 120

Gambar 4.16 Stored Procedures Sinkronisasi Awal SMP Pada Proses Sekolah 122

Gambar 4.17 Halaman Sinkronisasi Kedalam Kabupaten.................................. 123

Gambar 4.18 Listing Login Pegawai Kabupaten ................................................ 123

Gambar 4.19 Halaman Sinkronisasi Kedalam Kabupaten.................................. 124

Gambar 4.20 Listing Untuk Upload pada Sinkronisasi Kedalam Kabupaten..... 124

Gambar 4.21 Listing Untuk Setting Sinkronisasi................................................ 125

Gambar 4.22 Listing Untuk Memanggil Stored Procedures .............................. 127

Gambar 4.23 Listing Stored Procedures Tabel Guru.......................................... 127

Gambar 4.24 Halaman Sinkronisasi Keluar Kabupaten ..................................... 129

Gambar 4.25 Listing Untuk Menampilkan Sekolah............................................ 130

Gambar 4.26 Halaman Sinkronisasi Keluar Kabupaten Lanjutan ...................... 130

Gambar 4.27 Listing Untuk Tabel Sinkronisasi Keluar Kabupaten.................... 131

Gambar 4.28 Listing Untuk Pemanggilan Stored Procedures ............................ 133

Gambar 4.29 Listing Stored Procedures Untuk Menghapus Tebel Guru........... 134

Gambar 4.30 Halaman Sinkronisasi Awal Kabupaten........................................ 135

Gambar 4.31 Listing Untuk Menampilkan Sekolah............................................ 135

Gambar 4.32 Listing Untuk memanggil Stored Procedures................................ 136

Gambar 4.33 Listing Stored Procedures untuk Sinkronisasi Awal Kabupaten .. 136

xxiii

Page 24: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

BAB I

PENDAHULUAN

1.1 Latar Belakang Masalah

Informasi akademik merupakan salah satu informasi yang penting bagi

pemerintah daerah untuk mengetahui sejauh mana tingkat atau taraf

perkembangan pendidikan di daerahnya. Informasi akademik dapat meliputi

informasi-informasi tentang siswa, kepegawaian, sekolah dan inventory (fasilitas)

sekolah yang mendukung proses belajar mengajar.

Pada kenyataannya, untuk mendapatkan informasi-informasi tersebut,

pihak pemerintah daerah harus mengambil data-data yang diperlukan di setiap

sekolah. Sedangkan jarak antara kabupaten dengan sekolah tertentu bisa sangat

jauh, dan untuk pergi ke sekolah tersebut membutuhkan waktu yang cukup lama

serta biaya yang dikeluarkan tidaklah sedikit.

Penanganan masalah di atas dapat diatasi dengan mengimplementasikan

sistem informasi sekolah untuk menangani data-data kepegawaian, fasilitas dan

kesiswaan di sekolah dan pengumpulan data secara keseluruhan di kabupaten.

Permasalahan berikutnya muncul setelah dalam penerapan sistem

informasi sekolah, sekolah yang terletak di daerah terpencil, koneksi ke jaringan

internet tidak ada.

Berdasarkan kenyataan tersebut, penulis tertarik membuat sebuah solusi

untuk memecahkan permasalahan sinkronisasi data pada sistem informasi sekolah.

1

Page 25: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

2

1.2 Rumusan Masalah

Rumusan masalah dari latar belakang diatas adalah bagaimana cara

mensinkronisasikan data pada database sekolah dengan data pada database

kabupaten, menggunakan teknologi yang sesuai dengan kondisi tidak terhubung

dengan jaringan (offline).

1.3 Batasan Masalah

Mengingat bahwa ruang lingkup sistem informasi sekolah yang sangat

luas dan kompleks serta keterbatasan waktu dan tenaga yang dimiliki oleh

peneliti, maka pembahasan permasalahan di atas dibatasi menjadi:

1. Sistem informasi sekolah diasumsikan sudah tersedia.

2. Sistem ini tidak membahas mengenai keamanan sistem terutama pada

enkripsi file sinkronisasi.

3. Sistem ini hanya membahas sinkronisasi yang tidak terhubung dengan

jaringan.

1.4 Tujuan Penelitian

Tujuan dari penelitian ini adalah :

Melengkapi sistem informasi sekolah untuk menangani permasalahan

sinkronisasi data offline menggunakan teknologi PHP dan MySQL 5 beserta

disain antar mukanya.

Page 26: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

3

1.5 Manfaat Penelitian

Manfaat dari penelitian ini adalah:

1. Bagi pihak pengguna sistem informasi sekolah mudah untuk melakukan

proses sinkronisasi data dari database sekolah ke kabupaten begitupun

sebaliknya.

2. Bagi pihak pengembang sistem informasi sekolah dapat menerapkan

sistem ini untuk sinkronisasi data dalam kondisi offline.

1.6 Metodologi Penelitian

1. Studi Literatur

Mempelajari teknik pemrograman dan teknologi yang dipakai yaitu

PHP sebagai bahasa pemrograman dan MySQL sebagai databasenya.

2. Tahap-tahap Rekayasa Perangkat Lunak secara terstruktur

(Whitten,2001).

a. Menganalisa masalah dan kebutuhan sistem dengan

menggunakan tools Use Case Diagram dan Data Flow

Diagram.

b. Merancang sistem, database, desain antar muka dan

teknologi sinkronisasi data menggunakan tools Entity

Relationship Diagram dan System Flowchart.

Page 27: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

4

c. Melakukan implementasi sistem ke dalam bahasa

pemrograman.

d. Menguji dan mengevaluasi program apakah sudah dapat

berjalan dengan baik.

1.7 Sistematika Penulisan

Sistematika penulisan laporan tugas akhir ini adalah sebagai berikut:

BAB I PENDAHULUAN

Bab ini sebagai pegantar sebelum memasuki isi tulisan yang

sesungguhnya, meliputi latar belakang masalah yang diteliti,

batasan masalah, tujuan dan manfaat dari penelitian ini, dan

metodologi yang digunakan oleh peneliti.

BAB II LANDASAN TEORI

Bab ini berbicara mengenai teori-teori yang berhubungan dan

digunakan dalam penelitian masalah ini.

BAB III ANALISIS DAN PERANCANGAN SISTEM

Bab ini berisi analisis sistem yang dibutuhkan dalam penelitian ini.

Berdasarkan hasil analisis sistem tersebut, akan dirancang sistem

untuk menyelesaikan masalah dalam penelitian ini.

Page 28: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

5

BAB IV IMPLEMENTASI

Bab ini berisi tentang kegiatan peneliti mengimplementasikan

rancangan sistem yang sudah ada.

BAB V ANALISA HASIL

Bab ini berisi tentang analisis hasil penelitian yang dapat diambil

peneliti selama penelitian ini.

BAB VI PENUTUP

Pada bab ini berisi tentang kesimpulan dan saran.

Page 29: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

BAB II

LANDASAN TEORI

2.1 Sistem Informasi

“An information system(IS) is an arrangement of people, data, processes,

information presentation, and information technology that interact to support and

improve day-to-day operations in a business as well as support the problem

solving and decision making needs of management and users” (Whitten,2001).

2.2 Sinkronisasi Database

Sinkronisasi database adalah proses yang melibatkan dua atau lebih

database yang dilakukan untuk menjaga agar pertukaran informasi atau data antar

database dapat mencapai suatu fungsi sesuai dengan aturan yang telah ditetapkan.

2.3 Database

Database merupakan sekumpulan data yang saling berhubungan yang

disimpan bersama-sama untuk melayani satu atau lebih aplikasi secara optimal

atau dengan kata lain suatu database merupakan serangkaian file yang secara

logik berhubungan sedemikian rupa hingga jangkauan data diperbaiki dan

berkelebihan dikurangi.

Konsep database dibuat operasional oleh suatu sistem perangkat lunak

yang mengerjakan fungsi penciptaan dan peremajaan file, mencari data dan

6

Page 30: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

7

menghasilkan laporan. Semua data dalam rangkaian file dapat dijangkau oleh

program apapun yang bisa menggunakan database.

Database dirancang atas dasar pendekatan aplikatif maupun pendekatan

sistem. Pendekatan aplikatif merupakan cara yang tradisional, dimana database

dirancang hanya untuk memenuhi satu aplikasi tertentu, sehingga terdapat

kemungkinan satu data disiapkan dalam beberapa file berbeda untuk memenuhi

aplikasi - aplikasi yang berbeda.

Sedangkan database yang dirancang dengan pendekatan sistem,

memberikan suatu database yang dapat dipergunakan untuk lebih dari satu

aplikasi, dengan mengurangi terjadinya kerangkapan data.

2.4 MySQL

MySQL merupakan Database Mangement Server (DBMS) yang bersifat

open source, dikembangkan, disebarkan, dan didukung oleh MySQL AB. MySQL

AB adalah sebuah perusahaan komersial, dibangun oleh pengembang MySQL.

Merupakan generasi kedua perusahaan open source yang berhasil mengabungkan

nilai open source dan metodologi dengan model bisnis yang sukses.

2.4.1 Query Language

Query language adalah pernyataan yang diajukan untuk mengambil

informasi. Merupakan bagian Data Manipulation Language (DML) untuk

pengambilan informasi. DML dipakai untuk menampilkan, menambah,

mengubah, dan menghapus data di dalam objek-objek yang didefinisikan oleh

Page 31: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

8

Data Definition Language (DDL). Perintah DML adalah SELECT, INSERT,

UPDATE, dan DELETE.

1. SELECT

Dipakai untuk membaca data dari database. Pernyataan SELECT berisi

empat properti utama dari hasilnya yaitu :

• Kolom-kolom yang dimasukkan ke dalam hasil

• Tabel yang akan diambil datanya.

• Kondisi yang harus dipenuhi oleh tabel asal.

• Urutan dalam hasil.

Bentuk umum pernyataan SELECT :

SELECT select_expr

FROM table_reference

[WHERE where_condition]

[GROUP BY col_name]

[HAVING where_condition]

[ORDER BY col_name[ASC|DEC]]

2. INSERT

Dipakai untuk menambah satu atau beberapa data ke dalam tabel.

Bentuk umum pernyataan INSERT :

INSERT INTO tbl_name (column1, column2, [columnN])

VALUES (value1, value2, [valueN])

3. UPDATE

Dipakai untuk mengubah data pada satu baris, beberapa baris, atau semua

baris dalam tabel.

Page 32: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

9

Bentuk umum pernyataan UPDATE :

UPDATE tbl_name

SET column1 = value1, column2 = value2, [columnN = valueN]

[WHERE id_column = value]

4. DELETE

Dipakai untuk menghapus satu atau beberapa baris di dalam tabel.

Bentuk umum pernyataan DELETE :

DELETE FROM tbl_name [WHERE field1 = value1 [AND | OR]

field2 = value2 [AND | OR] fieldN = valueN]

2.4.2 Stored Procedures

Stored procedures adalah tipe program yang disimpan, dan dijalankan oleh

database server. Stored procedure merupakan sebuah unit program yang

dijalankan oleh suatu permintaan (CALL) dan dapat menerima banyak parameter

input dan output.

Bentuk umum stored procedures :

CREATE PROCEDURE sp_name ([proc_parameter[,...]]) [characteristic ...] routine_body

2.4.3 Triggers

Triggers adalah program yang disimpan di database server yang aktif saat

dipicu oleh sebuah aktivitas dari database. Khususnya, trigger akan meminta

respon pada saat operasi DML (INSERT, UPDATE, DELETE) dari suatu tabel.

Triggers dapat digunakan untuk validasi data atau untuk otmatisasi dari

denormalization.

Page 33: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

10

Bentuk umum triggers :

CREATE TRIGGER trigger_name trigger_time trigger_event

ON table_name FOR EACH ROW trigger_stmt

2.4.4 MySQL Tools

Di dalam MySQL Server terdapat beberapa tools pendukung antara lain:

1. mysql (client)

Tools mysql client merupakan shell SQL yang multiguna, dapat mengatur

hampir semua aspek dari MySQL server, termasuk membuat, memodifikasi, dan

menghapus tabel dan database, mengatur privileges akses user, melihat dan

memodifikasi konfigurasi server, dan men-query tabel data. Bentuk umumnya

sebagai berikut:

mysql [options] [database_name] [non-interactive_arguments]

2. mysqladmin (administrator)

Tools mysqladmin diunakan untuk membuat dan menghapus database,

memonitor status dari server, dan mematikan MySQL server daemon. Seperti

mysql, untuk menggunakan tools ini membutuhkan hak akses. Bentuk umumnya

sebagai berikut:

mysqladmin [options] [database_name]

• create database_name: membuat sebuah database baru. Setiap database

harus mempunyai nama yang unik. Apabila dalam pembuatan database

menggunakan nama yang sudah terpakai maka akan menghasilkan error.

Page 34: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

11

• drop database_name: menghapus database yang sudah ada. Sebelum

database benar-benar terhapus akan muncul konfirmasi untuk mencegah

kesalahan hapus.

• extended-status: menyediakan informasi tambahan mengenai status server.

Ini sama dengan perintah show status dari mysql client.

3. mysqldump (backup/export)

Tools mysqldump digunakan untuk mengeluarkan data atau backup tabel,

struktur tabel, atau keduanya dari server MySQL biasanya dalam format file .sql.

Jika diminta, kumpulan data dapat dimasukan dalam statement SQL biasanya

menggunakan statement insert agar informasi dapat diakses kembali. Selanjutnya,

dapat memilih satu, banyak, atau semua database yang ditemukan pada server,

atau hanya tabel tertentu yang akan dijadikan backup. Syntax yang digunakan

umumnya sebagai berikut:

mysqldump [options] [database_name [tables]]

2.5 Bagan Alir Sistem (System Flowchart)

Bagan alir sistem merupakan bagan yang menunjukan arus pekerjaan

secara keseluruhan dari sistem. Bagan ini menjelaskan urutan-urutan dari

prosedur-prosedur yang ada dalam sistem. Bagan alir sistem digambarkan dengan

menggunakan simbol yang ditunjukan pada tabel berikut ini:

Page 35: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

12

Nama Simbol Simbol Keterangan Dokumen Menunjukan dokumen

input dan output baik untuk proses manual, mekanik atau komputer.

Kegiatan Manual

Menunjukan pekerjaan manual.

Input / Output

Digunakan untuk mewakili data input / output.

Input Manual

Menunjukan input yang dimasukan sendiri atau manual.

Operasi Luar

Menunjukan operasi yang dilakukan di luar proses operasi komputer.

Tampilan

Menunjukan output berupa tampilan.

Garis Alir

Menunjukan arus dari proses.

Penghubung

Menunjukan penghubung ke halaman yang masih sama atau halaman lain.

Keputusan

Digunakan untuk menyeleksi suatu kondisi dalam program.

Proses Terdefinisi

Menunjukan suatu operasi yang rinciannya ditunjukan di tempat lain.

Titik Terminal

Menunjukan awal dan akhir suatu proses.

Tabel 2.1 Bagan Alir Sistem

Page 36: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

13

2.6 Use Case Diagram

“Use case modeling is the process of modeling system’s functions in term

of business events, who intiated the events, and how the system responds to the

events” (Whitten, 2001).

Use case diagram adalah sebuah diagram yang menggambarkan interaksi

antara sistem dan eksternal sistem dan user.

Simbol dasar use case diagram antara lain :

1. Use case

“A use case is a behaviorally related sequence of steps (a scenario) both

automated and manual, for the purpose of completing a single business task”

(Whitten, 2001).

Use case merupakan bagian dari seluruh fungsi sistem.

Use Case

Gambar 2.1 Simbol Use case (diambil dari Whitten, 2001)

Actor

2. Actor

“An actor represents anything that needs to interact with the system to

exchange information” (Whitten, 2001).

Gambar 2.2 Simbol Actor (diambil dari Whitten, 2001)

Page 37: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

14

Use Case

Actor

3. Use case association relationship

Association adalah relasi antara actor dan sebuah use case, dimana terjadi

interaksi antar mereka.

Gambar 2.3 Simbol use case association relationship

(diambil dari Whitten, 2001)

2.7 Entity-Relationship Diagram (ER-Diagram)

“Data modeling is a technique for organizing and documenting a system’s

data” (Whitten, 2001). Model aktual yang sering digunakan untuk

menggambarkan data modeling adalah entity relationship diagram (ER-Diagram).

Simbol yang sering digunakan dalam ER-Diagram :

1. Entity

“An entity is something about which the business needs to store data”

(Whitten, 2001).

Nama Entity

Gambar 2.4 Simbol Entity (diambil dari Whitten, 2001)

Page 38: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

15

2. Relationship

“A relationship is a natural business association that exist between one or

more entities” (Whitten, 2001).

“Cardinality defines the minimum and maximum number of occurrences of

one entity that may be related to a single occurrance of the other entity.

Because all relationship are bi-directional, cardinality must be defined in

both directions for every relationship” (Whitten, 2001).

Gambar 2.5 Simbol Relations (diambil dari Whitten, 2001)

Cardinality

Interpretation

Minimum

Instance

Maximum

Instance

Graphic Notation

Exactly one

(one and only one)

1 1

Zero or one 0 1

One or more 1 many (>1)

ero, one or more 0 many (>1)

Nama_relasi Nama Entity

Nama Entity

Page 39: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

16

ore than one >1 >1

Tabel 2.2 Cardinality Notations (diambil dari Whitten, 2001)

2.8 Data Flow Diagram (DFD)

Data Flow Diagram (DFD) digunakan untuk menggambarkan suatu

sistem yang telah ada atau sistem batu yang akan dikembangkan secara logika

tanpa mempertimbangkan lingkungan fisik dimana data tersebut mengalir atau

lingkungan fisik dimana data tersebut akan disimpan. DFD merupakan alat yang

digunakan pada metodologi pengembangan sistem yang terstruktur (Structural

Analysis and Design).

Simbol yang sering digunakan dalam DFD :

1. Proses (Process)

Proses adalah kerja yang dilakukan oleh sistem dalam merespon data flow

yang datang atau suatu kondisi.

Nama Proses

Gambar 2.6 Simbol Proses (diambil dari Whitten, 2001)

Page 40: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

17

2. Kesatuan Luar (External Agent)

External Agent adalah orang, unit organisasi, sistem, atau organisasi luar

yang berinteraksi dengan sistem. Disebut juga dengan External Entity.

External Agent

Gambar 2.7 Simbol External Agent (diambil dari Whitten, 2001)

3. Arus Data (Data Flow)

Data Flow adalah data sebagai masukan ke proses atau keluaran dari

sebuah proses. Data Flow adalah data yang bergerak. Data Flow juga

digunakan untuk mewakili creation, reading, deleting, atau updating dari

data dalam file atau database (disebut data store atau penyimpanan data).

Nama Arus Data

Gambar 2.8 Simbol Data Flow (diambil dari Whitten, 2001)

Data Store

4. Penyimpanan Data (Data Store)

Data Store adalah penyimpanan data untuk penggunaan selanjutnya.

Gambar 2.9 Simbol Data Store (diambil dari Whitten, 2001)

Page 41: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

18

2.9 HTML (Hypertext Markup Language)

HTML adalah bahasa universal yang dirancang untuk mempublikasikan

halaman web yang memiliki elemen berupa heading, teks, tabel, list, dan

sebagainya.

Penulisan HTML dapat dilakukan dengan melalui editor text seperti

notepad yang dimiliki oleh sistem operasi Windows ataupun editor lain seperti

wordpad, Microsoft Word dan lain-lain. Dengan berkembangnya software, saat ini

web editor HTML dapat memudahkan pemakai dalam menulis halaman web,

contohnya : Microsoft FrontPage, Macromedia Dreamweaver, dan sebagainya.

Selain itu HTML juga dirancang agar halaman web dapat dihubungkan

secara hypertext, yaitu dengan menekan tombol atau link yang ada untuk

menampilkan halaman atau bagian halaman yang lain. HTML juga dapat

memungkinkan kita dalam membuat rancangan dokumen yang dapat

dimanfaatkan untuk mencari informasi.

Struktur dokumen HTML terdiri atas 3 tag utama yaitu tag HTML, HEAD

dan BODY. Setiap dokumen HTML dibuka dengan tag <HTML> dan ditutup

dengan tag </HTML> berfungsi untuk web browser dalam memperlakukan teks

yang diawali dan diakhiri oleh kedua tag ini sebagai dokumen HTML. Dokumen

HTML juga dapat diberi judul, dengan menggunakan tag <TITLE>. Judul HTML

ini akan ditampilkan pada sudut kiri atas jendela browser. Tag <TITLE> harus

berada di dalam tag <HEAD>................</HEAD>. Selanjutnya tag

<BODY>................</BODY> untuk menyatakan isi dari dokumen. Penulisan tag-

Page 42: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

19

tag HTML tidak case sensitive artinya dapat ditulis dengan huruf kapital maupun

non kapital.

2.10 PHP (Personal Home Page)

PHP adalah PHP Hypertext Preposesor yang merupakan bahasa berbentuk

skrip yang ditempatkan dalam server dan diproses dalam server. Hasilnya dikirim

ke client, tempat user menggunakan browser. PHP adalah salah satu teknologi

yang biasa digunakan untuk membuat halaman web yang dinamis dan interaktif.

Secara umum, halaman web dapat dibuat secara statis dan dinamis. Web statis

biasanya dibuat dengan menggunakan HTML. Teknologi web dinamis dapat

digolongkan atas 2 golongan besar:

1. client-side technologies

2. server-side technologies

PHP bekerja hampir sama seperti JSP dan ASP. Skrip diawali dengan tag

<?php …… dan diakhiri dengan tag ……?> serta dimasukkan ke halaman HTML.

Skrip ini akan dieksekusi oleh server sebelum halaman tersebut dikirim ke

browser klien, sehingga tidak mungkin ada ketidakcocokan platform mesin

browser klien. Tidak seperti ASP, PHP dapat dijalankan multiplatform. PHP dapat

dijalankan di web server IIS dan Apache, di sistem operasi Windows, UNIX dan

Linux. Faktor yang menguntungkan lainnya adalah PHP bersifat open source.

Tata cara penulisan php:

1. <?php echo(“ PHP Code goes here ”); ?>

2. <? echo(“ PHP Code goes here ”); ?>

Page 43: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

20

Keuntungan penggunaan teknologi PHP digabung dengan MySQL dan

Apache adalah sebagai berikut:

1. Cost – Penggunaan ketiga teknologi ini memakan biaya sangat murah.

2. Ease of Use – Mudah untuk dipelajari, karena tidak memerlukan

pengetahuan programming yang kuat.

3. HTML embeddedness – PHP dapat digabungkan dengan HTML.

4. Cross Platform compatibility – Dapat diterapkan di banyak sistem operasi.

5. Stability – Server tidak perlu di reboot.

6. Speed – PHP 5 sangat cepat.

7. Open Source Licensing – Berlisensi open source sehingga dapat melihat

source code-nya dan memodifikasi bila perlu.

8. Many Extensions – PHP mudah dikomunikasikan ke program atau

protokol lain.

9. Fast feature development – Pengembangan fitur PHP sangat cepat.

10. Popularity – Merupakan salah satu bahasa pemrograman web yang

populer saat ini.

11. Not proprietary – Tidak mengambil keuntungan sama sekali.

12. Strong user communities – mempunyai komunitas yang luas dan kuat.

2.11 Pendidikan di Kabupaten Kutai Barat

Kabupaten Kutai Barat merupakan salah satu dari kabupaten yang berada

di Propinsi Kalimantan Timur. Sebagian besar wilayah Kabupaten Kutai Barat

merupakan hutan belantara, rawa-rawa dan semak belukar.

Page 44: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

21

Kecamatan pada kabupaten tersebut sudah maju peradaban dan

infrastrukturnya, akan tetapi untuk masalah pendidikan masih belum merata,

dalam artian hanya ada beberapa daerah saja yang tingkat pendidikannya cukup

tinggi, sedangkan daerah yang lain masih tergolong rendah tingkat pendidikannya.

Salah satu penyebabnya adalah masalah transportasi, ada dua jenis transportasi

utama yang ada di kabupaten tersebut yaitu transportasi sungai dan transportasi

darat, biaya untuk tranportasi sungai sangat tinggi. Hal itu menyebabkan

Pemerintah Daerah Kabupaten Kutai Barat dalam pengambilan data ke sekolah di

wilayah yang terpecil mengalami kesulitan, terutama dalam hal biaya dan waktu

tempuh yang lama.

Page 45: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

22

BAB III

ANALISIS DAN PERANCANGAN SISTEM

3.1 Analisis Sistem

3.1.1 Gambaran Umum Sistem yang Lama

Pencatatan data sekolah, siswa dan kepegawaian pada sistem yang lama

masih menggunakan metode manual, menggunakan berkas-berkas untuk

pencatatan, penyimpanan dan pemrosesan data.

Kekurangan penggunaan metode manual adalah tidak efisiennya waktu,

biaya, dan tenaga karena berkas-berkas tersebut harus dikirim ke kabupaten.

Ditambah dengan adanya permasalahan jarak antara sekolah dengan kabupaten

yang menyebar sangat jauh yang memakan waktu dan biaya yang tinggi.

3.1.2 Orang yang terlibat dalam sistem

Pihak-pihak yang terlibat dalam sinkronisasi data pada sistem informasi

sekolah:

1. Super Admin Sekolah :

Super admin merupakan default user untuk sistem di setiap sekolah, yang

selain bertugas untuk membuat account untuk admin sekolah, juga bertugas untuk

melakukan proses sinkronisasi di sekolah.

Page 46: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

23

2. Pegawai Kabupaten :

Pegawai kabupaten adalah karyawan di tingkat kabupaten yang dapat

berinteraksi dengan sistem. Pegawai kabupaten merupakan pihak yang

bertanggung jawab melakukan sinkronisasi yang ada di Kabupaten.

3.1.3 Gambaran Umum Sistem yang Baru

Sistem yang baru tidak lagi menggunakan metode manual, tetapi

menggunakan komputerisasi yang memanfaatkan sistem informasi sekolah untuk

mengolah data fasilitas, kepegawaian dan kesiswaan serta dapat menangani

permasalahan sinkronisasi data antara database lokal pada sekolah dengan

database pusat pada kabupaten.

Dalam implementasinya, setiap sekolah membutuhkan database server

(MySQL Server) dan web server sendiri (Apache). Data di setiap sekolah akan

disinkronkan ke kabupaten begitupun sebaliknya, data tersebut dibawa ke

kabupaten atau sekolah dalam bentuk file sinkronisasi yang disimpan di media

penyimpanan seperti cd atau melalui email. Untuk melihat skema sistem informasi

sekolah, dapat dilihat pada Gambar 3.1

Page 47: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

24

Kabupaten

Sekolah 1

Sekolah 2

Sekolah 3

sinkronisasi sinkronisasi

sinkronisasi

.sql

.sql

.sql

Gambar 3.1 Skema Sistem Informasi Sekolah

3.1.4 Requirement Analysis

Use case diagram merupakan diagram yang menggambarkan interaksi

antara sistem dengan sistem eksternal dan pengguna. Dengan kata lain, secara

grafis menggambarkan siapa yang akan menggunakan sistem dan dengan cara apa

pengguna mengharapkan untuk berinteraksi dengan sistem.

Page 48: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

25

Super AdminSekolah

Login

SinkronisasiKeluar

Sekolah

SinkronisasiKedalamSekolah

SinkronisasiAwal Kedalam

Sekolah

Gambar 3.2 Use Case Diagram Untuk Proses Sekolah

Gambar 3.3 Use Case Diagram Untuk Proses Kabupaten

Page 49: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

26

3.1.5 Logical Design

Tahap logical design meliputi process modeling dan data modeling.

3.1.5.1 Process Modeling

Proses modeling dapat dimulai dari pembuatan input dan output dari

sistem, seperti pada tabel

ENTITAS INPUT OUTPUT

Super Admin Sekolah data login, kata kunci, data sinkron awal, data sinkron kabupaten

data sinkron sekolah

Pegawai Kabupaten data login, kata kunci, data sinkron sekolah

data sinkron kabupaten, data sinkron awal

Tabel 3.1 Tabel Input Output Proses Modeling

1. Context Diagram

Context diagram berguna untuk menggambarkan secara jelas bagaimana sistem

tersebut bekerja, mulai dari inputan awal sampai outputnya. Context diagram dan

overviewnya dapat dilihat pada Gambar 3.4 sampai Gambar

Gambar 3.4 Context Diagram

Page 50: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

27

2. Bagan Berjenjang

Gambar 3.5 Bagan Berjenjang

Page 51: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

28

Gambar 3.6 DFD Level 0 - proses sekolah

Page 52: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

29

1P

Login

D2.1 Pegawai Kabupaten

6P

SinkronisasiKeluar

Kabupaten

5P

SinkronisasiKedalam

Kabupaten

7P

SinkronisasiAwal KeluarKabupaten

PegawaiKabupaten D3 Database Sinkron Sekolah

D4 Database Sinkron Kabupaten

D5 Database Data Awal Sekolah

data logindata login valid

data sinkronsekolah

kata kunci

data sinkronkabupaten

kata kunci

data sinkron awal

D2 Database Kabupaten

kata kuncidata sinkronkabupaten

data sekolah

data sinkronsekolahdata sekolah

data awal sekolahdata sinkron

awalkata kunci

data login

login valid

data awal sekolah

Gambar 3.7 DFD Level 0 - proses kabupaten

Page 53: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

30

KAMUS DATA

Nama arus data : DATA LOGIN

Bentuk data : Dokumen dasar atau formulir

Arus Data : Super Admin Sekolah - Proses 1P

Pegawai Kabupaten - Proses 1P

Penjelasan : Input data untuk proses login.

Periode : Setiap kali user melakukan login.

Struktur data : DATA LOGIN terdiri dari item data :

USERNAME

USER_PASSWORD

LEVEL

Nama arus data : DATA LOGIN

Bentuk data : Variabel

Arus Data : Proses 1P - Tabel Karyawan

Proses 1P - Tabel Pegawai Kabupaten

Penjelasan : Data login akan diverifikasi dengan data dalam database.

Periode : Setiap kali user melakukan login.

Struktur data : DATA LOGIN terdiri dari item data :

USERNAME

USER_PASSWORD

LEVEL

Page 54: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

31

Nama arus data : DATA LOGIN VALID

Bentuk data : Field (item data)

Arus Data : Database Karyawan - Proses 1P

Database Pegawai Kabupaten - Proses 1P

Penjelasan : Data keluaran dari database.

Periode : Setiap kali user melakukan login.

Struktur data : DATA LOGIN terdiri dari item data :

USERNAME

USER_PASSWORD

Nama arus data : DATA SINKRON SEKOLAH

Bentuk data : Dokumen dasar atau formulir

Arus Data : Proses 2P - Super Admin Sekolah

Pegawai Kabupaten - Proses 5P

Penjelasan : File berisi data sinkronisasi yang berasal dari Sekolah..

Periode : Setiap kali user melakukan sinkronisasi dari Sekolah.

Struktur data : DATA SINKRON SEKOLAH terdiri dari:

GURU

KARYAWAN

NILAI

NILAI_UAN

PENJURUSAN

RIWAYAT_BEKERJA_TK

RIWAYAT_BEKERJA_SD

Page 55: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

32

RIWAYAT_BEKERJA_SMP

RIWAYAT_BEKERJA_SMA

RIWAYAT_MENGAJAR_TK

RIWAYAT_MENGAJAR_SD

RIWAYAT_MENGAJAR_SMP

RIWAYAT_MENGAJAR_SMA

RIWAYAT_PENDIDIKAN_GURU

RIWAYAT_PENDIDIKAN_KARYAWAN

RIWAYAT_STATUS_GOL_GURU

RIWAYAT_STATUS_GOL_KARYAWAN

RIWAYAT_TK

RIWAYAT_SD

RIWAYAT_SMP

RIWATAT_SMA

SISWA

TK

SD

SMP

SMA

TK_NEGERI

TK_SWASTA

SD_NEGERI

SD_SWASTA

SMP_NEGERI

SMP_SWASTA

SMA_NEGERI

SMA_SWASTA

SMK_NEGERI

Page 56: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

33

SMK_SWASTA

SMK_NEGERI_HAS_KELOMPOK_SMK

SMK_SWASTA_HAS_KELOMPOK_SMK

TK_HAS_GEDUNG

TK_HAS_GEDUNG_HAS_RUANG

TK_HAS_PERLENGKAPAN

SD_HAS_ALAT_PENDIDIKAN

SD_HAS_BUKU

SD_HAS_BUKU_SD

SD_HAS_GEDUNG

SD_HAS_GEDUNG_HAS_RUANG

SD_HAS_PERLENGKAPAN

SMP_HAS_ALAT_PENDIDIKAN

SMP_HAS_BUKU

SMP_HAS_GEDUNG

SMP_HAS_GEDUNG_HAS_RUANG

SMP_HAS_LABORATORIUM

SMP_HAS_PERLENGKAPAN

SMA_HAS_ALAT_PENDIDIKAN

SMA_HAS_BUKU

SMA_HAS_GEDUNG

SMA_HAS_GEDUNG_HAS_RUANG

SMA_HAS_LABORATORIUM

SMA_HAS_PERLENGKAPAN

STATUS_KELUAR

STATUS_LULUS

STATUS_MASUK

Page 57: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

34

STATUS_MENGULANG

STATUS_NAIK

TANAH

Nama arus data : DATA SINKRON SEKOLAH

Bentuk data : Variabel

Arus Data : Proses 5P - Database Sinkron Sekolah

Penjelasan : File berisi data sinkronisasi yang berasal dari Sekolah..

Periode : Setiap kali user melakukan sinkronisasi dari Sekolah.

Struktur data : DATA SINKRON SEKOLAH terdiri dari:

GURU

KARYAWAN

NILAI

NILAI_UAN

PENJURUSAN

RIWAYAT_BEKERJA_TK

RIWAYAT_BEKERJA_SD

RIWAYAT_BEKERJA_SMP

RIWAYAT_BEKERJA_SMA

RIWAYAT_MENGAJAR_TK

RIWAYAT_MENGAJAR_SD

RIWAYAT_MENGAJAR_SMP

RIWAYAT_MENGAJAR_SMA

RIWAYAT_PENDIDIKAN_GURU

RIWAYAT_PENDIDIKAN_KARYAWAN

RIWAYAT_STATUS_GOL_GURU

RIWAYAT_STATUS_GOL_KARYAWAN

Page 58: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

35

RIWAYAT_TK

RIWAYAT_SD

RIWAYAT_SMP

RIWATAT_SMA

SISWA

TK

SD

SMP

SMA

TK_NEGERI

TK_SWASTA

SD_NEGERI

SD_SWASTA

SMP_NEGERI

SMP_SWASTA

SMA_NEGERI

SMA_SWASTA

SMK_NEGERI

SMK_SWASTA

SMK_NEGERI_HAS_KELOMPOK_SMK

SMK_SWASTA_HAS_KELOMPOK_SMK

TK_HAS_GEDUNG

TK_HAS_GEDUNG_HAS_RUANG

TK_HAS_PERLENGKAPAN

SD_HAS_ALAT_PENDIDIKAN

SD_HAS_BUKU

SD_HAS_BUKU_SD

Page 59: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

36

SD_HAS_GEDUNG

SD_HAS_GEDUNG_HAS_RUANG

SD_HAS_PERLENGKAPAN

SMP_HAS_ALAT_PENDIDIKAN

SMP_HAS_BUKU

SMP_HAS_GEDUNG

SMP_HAS_GEDUNG_HAS_RUANG

SMP_HAS_LABORATORIUM

SMP_HAS_PERLENGKAPAN

SMA_HAS_ALAT_PENDIDIKAN

SMA_HAS_BUKU

SMA_HAS_GEDUNG

SMA_HAS_GEDUNG_HAS_RUANG

SMA_HAS_LABORATORIUM

SMA_HAS_PERLENGKAPAN

STATUS_KELUAR

STATUS_LULUS

STATUS_MASUK

STATUS_MENGULANG

STATUS_NAIK

TANAH

Nama arus data : DATA SINKRON SEKOLAH

Bentuk data : Field (item data)

Arus Data : Database Sinkron Sekolah - Proses 2P

Penjelasan : File berisi data sinkronisasi yang berasal dari Sekolah..

Periode : Setiap kali user melakukan sinkronisasi dari Sekolah.

Page 60: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

37

Struktur data : DATA SINKRON SEKOLAH terdiri dari:

GURU

KARYAWAN

NILAI

NILAI_UAN

PENJURUSAN

RIWAYAT_BEKERJA_TK

RIWAYAT_BEKERJA_SD

RIWAYAT_BEKERJA_SMP

RIWAYAT_BEKERJA_SMA

RIWAYAT_MENGAJAR_TK

RIWAYAT_MENGAJAR_SD

RIWAYAT_MENGAJAR_SMP

RIWAYAT_MENGAJAR_SMA

RIWAYAT_PENDIDIKAN_GURU

RIWAYAT_PENDIDIKAN_KARYAWAN

RIWAYAT_STATUS_GOL_GURU

RIWAYAT_STATUS_GOL_KARYAWAN

RIWAYAT_TK

RIWAYAT_SD

RIWAYAT_SMP

RIWATAT_SMA

SISWA

TK

SD

SMP

SMA

Page 61: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

38

TK_NEGERI

TK_SWASTA

SD_NEGERI

SD_SWASTA

SMP_NEGERI

SMP_SWASTA

SMA_NEGERI

SMA_SWASTA

SMK_NEGERI

SMK_SWASTA

SMK_NEGERI_HAS_KELOMPOK_SMK

SMK_SWASTA_HAS_KELOMPOK_SMK

TK_HAS_GEDUNG

TK_HAS_GEDUNG_HAS_RUANG

TK_HAS_PERLENGKAPAN

SD_HAS_ALAT_PENDIDIKAN

SD_HAS_BUKU

SD_HAS_BUKU_SD

SD_HAS_GEDUNG

SD_HAS_GEDUNG_HAS_RUANG

SD_HAS_PERLENGKAPAN

SMP_HAS_ALAT_PENDIDIKAN

SMP_HAS_BUKU

SMP_HAS_GEDUNG

SMP_HAS_GEDUNG_HAS_RUANG

SMP_HAS_LABORATORIUM

SMP_HAS_PERLENGKAPAN

SMA_HAS_ALAT_PENDIDIKAN

Page 62: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

39

SMA_HAS_BUKU

SMA_HAS_GEDUNG

SMA_HAS_GEDUNG_HAS_RUANG

SMA_HAS_LABORATORIUM

SMA_HAS_PERLENGKAPAN

STATUS_KELUAR

STATUS_LULUS

STATUS_MASUK

STATUS_MENGULANG

STATUS_NAIK

TANAH

Nama arus data : DATA SEKOLAH

Bentuk data : Field (item data)

Arus Data : Database Sinkron Sekolah - Proses 5P

Penjelasan : File berisi data sinkronisasi yang berasal dari Sekolah..

Periode : Setiap kali user melakukan sinkronisasi dari Sekolah.

Struktur data : DATA SEKOLAH terdiri dari:

GURU

KARYAWAN

NILAI

NILAI_UAN

PENJURUSAN

RIWAYAT_BEKERJA_TK

RIWAYAT_BEKERJA_SD

Page 63: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

40

RIWAYAT_BEKERJA_SMP

RIWAYAT_BEKERJA_SMA

RIWAYAT_MENGAJAR_TK

RIWAYAT_MENGAJAR_SD

RIWAYAT_MENGAJAR_SMP

RIWAYAT_MENGAJAR_SMA

RIWAYAT_PENDIDIKAN_GURU

RIWAYAT_PENDIDIKAN_KARYAWAN

RIWAYAT_STATUS_GOL_GURU

RIWAYAT_STATUS_GOL_KARYAWAN

RIWAYAT_TK

RIWAYAT_SD

RIWAYAT_SMP

RIWATAT_SMA

SISWA

TK

SD

SMP

SMA

TK_NEGERI

TK_SWASTA

SD_NEGERI

SD_SWASTA

SMP_NEGERI

SMP_SWASTA

SMA_NEGERI

SMA_SWASTA

SMK_NEGERI

Page 64: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

41

SMK_SWASTA

SMK_NEGERI_HAS_KELOMPOK_SMK

SMK_SWASTA_HAS_KELOMPOK_SMK

TK_HAS_GEDUNG

TK_HAS_GEDUNG_HAS_RUANG

TK_HAS_PERLENGKAPAN

SD_HAS_ALAT_PENDIDIKAN

SD_HAS_BUKU

SD_HAS_BUKU_SD

SD_HAS_GEDUNG

SD_HAS_GEDUNG_HAS_RUANG

SD_HAS_PERLENGKAPAN

SMP_HAS_ALAT_PENDIDIKAN

SMP_HAS_BUKU

SMP_HAS_GEDUNG

SMP_HAS_GEDUNG_HAS_RUANG

SMP_HAS_LABORATORIUM

SMP_HAS_PERLENGKAPAN

SMA_HAS_ALAT_PENDIDIKAN

SMA_HAS_BUKU

SMA_HAS_GEDUNG

SMA_HAS_GEDUNG_HAS_RUANG

SMA_HAS_LABORATORIUM

SMA_HAS_PERLENGKAPAN

STATUS_KELUAR

STATUS_LULUS

STATUS_MASUK

Page 65: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

42

STATUS_MENGULANG

STATUS_NAIK

TANAH

Nama arus data : DATA SEKOLAH

Bentuk data : Variabel

Arus Data : Proses 5P - Database Kabupaten

Penjelasan : File berisi data sinkronisasi yang berasal dari Sekolah..

Periode : Setiap kali user melakukan sinkronisasi dari Sekolah.

Struktur data : DATA SEKOLAH terdiri dari:

GURU

KARYAWAN

NILAI

NILAI_UAN

PENJURUSAN

RIWAYAT_BEKERJA_TK

RIWAYAT_BEKERJA_SD

RIWAYAT_BEKERJA_SMP

RIWAYAT_BEKERJA_SMA

RIWAYAT_MENGAJAR_TK

RIWAYAT_MENGAJAR_SD

RIWAYAT_MENGAJAR_SMP

RIWAYAT_MENGAJAR_SMA

RIWAYAT_PENDIDIKAN_GURU

RIWAYAT_PENDIDIKAN_KARYAWAN

RIWAYAT_STATUS_GOL_GURU

RIWAYAT_STATUS_GOL_KARYAWAN

Page 66: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

43

RIWAYAT_TK

RIWAYAT_SD

RIWAYAT_SMP

RIWATAT_SMA

SISWA

TK

SD

SMP

SMA

TK_NEGERI

TK_SWASTA

SD_NEGERI

SD_SWASTA

SMP_NEGERI

SMP_SWASTA

SMA_NEGERI

SMA_SWASTA

SMK_NEGERI

SMK_SWASTA

SMK_NEGERI_HAS_KELOMPOK_SMK

SMK_SWASTA_HAS_KELOMPOK_SMK

TK_HAS_GEDUNG

TK_HAS_GEDUNG_HAS_RUANG

TK_HAS_PERLENGKAPAN

SD_HAS_ALAT_PENDIDIKAN

SD_HAS_BUKU

SD_HAS_BUKU_SD

Page 67: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

44

SD_HAS_GEDUNG

SD_HAS_GEDUNG_HAS_RUANG

SD_HAS_PERLENGKAPAN

SMP_HAS_ALAT_PENDIDIKAN

SMP_HAS_BUKU

SMP_HAS_GEDUNG

SMP_HAS_GEDUNG_HAS_RUANG

SMP_HAS_LABORATORIUM

SMP_HAS_PERLENGKAPAN

SMA_HAS_ALAT_PENDIDIKAN

SMA_HAS_BUKU

SMA_HAS_GEDUNG

SMA_HAS_GEDUNG_HAS_RUANG

SMA_HAS_LABORATORIUM

SMA_HAS_PERLENGKAPAN

STATUS_KELUAR

STATUS_LULUS

STATUS_MASUK

STATUS_MENGULANG

STATUS_NAIK

TANAH

Nama arus data : DATA SINKRON KABUPATEN

Bentuk data : Dokumen dasar atau formulir

Arus Data : Super Admin Sekolah - Proses 3P

Proses 6P - Pegawai Kabupaten

Page 68: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

45

Penjelasan : File berisi data sinkronisasi yang berasal dari Kabupaten,

berupa data-data guru dan karyawan yang berstatus PNS.

Periode : Setiap kali user melakukan sinkronisasi dari Kabupaten ke

Sekolah.

Struktur data : DATA SINKRON KABUPATEN terdiri dari:

GURU

KARYAWAN

RIWAYAT_BEKERJA_TK

RIWAYAT_BEKERJA_SD

RIWAYAT_BEKERJA_SMP

RIWAYAT_BEKERJA_SMA

RIWAYAT_MENGAJAR_TK

RIWAYAT_MENGAJAR_SD

RIWAYAT_MENGAJAR_SMP

RIWAYAT_MENGAJAR_SMA

RIWAYAT_PENDIDIKAN_GURU

RIWAYAT_PENDIDIKAN_KARYAWAN

RIWAYAT_STATUS_GOL_GURU

RIWAYAT_STATUS_GOL_KARYAWAN

Nama arus data : DATA SINKRON KABUPATEN

Bentuk data : Variabel

Arus Data : Proses 3P - Database Sinkron Kabupaten

Penjelasan : File berisi data sinkronisasi yang berasal dari Kabupaten,

berupa data-data guru dan karyawan yang berstatus PNS.

Page 69: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

46

Periode : Setiap kali user melakukan sinkronisasi dari Kabupaten ke

Sekolah.

Struktur data : DATA SINKRON KABUPATEN terdiri dari:

GURU

KARYAWAN

RIWAYAT_BEKERJA_TK

RIWAYAT_BEKERJA_SD

RIWAYAT_BEKERJA_SMP

RIWAYAT_BEKERJA_SMA

RIWAYAT_MENGAJAR_TK

RIWAYAT_MENGAJAR_SD

RIWAYAT_MENGAJAR_SMP

RIWAYAT_MENGAJAR_SMA

RIWAYAT_PENDIDIKAN_GURU

RIWAYAT_PENDIDIKAN_KARYAWAN

RIWAYAT_STATUS_GOL_GURU

RIWAYAT_STATUS_GOL_KARYAWAN

Nama arus data : DATA SINKRON KABUPATEN

Bentuk data : Field (item data)

Arus Data : Database Sinkron Kabupaten - Proses 6P

Penjelasan : File berisi data sinkronisasi yang berasal dari Kabupaten,

berupa data-data guru dan karyawan yang berstatus PNS.

Periode : Setiap kali user melakukan sinkronisasi dari Kabupaten ke

Sekolah.

Page 70: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

47

Struktur data : DATA SINKRON KABUPATEN terdiri dari:

GURU

KARYAWAN

RIWAYAT_BEKERJA_TK

RIWAYAT_BEKERJA_SD

RIWAYAT_BEKERJA_SMP

RIWAYAT_BEKERJA_SMA

RIWAYAT_MENGAJAR_TK

RIWAYAT_MENGAJAR_SD

RIWAYAT_MENGAJAR_SMP

RIWAYAT_MENGAJAR_SMA

RIWAYAT_PENDIDIKAN_GURU

RIWAYAT_PENDIDIKAN_KARYAWAN

RIWAYAT_STATUS_GOL_GURU

RIWAYAT_STATUS_GOL_KARYAWAN

Nama arus data : DATA KABUPATEN

Bentuk data : Field (item data)

Arus Data : Database Sinkron Kabupaten - Proses 3P

Penjelasan : File berisi data sinkronisasi yang berasal dari Kabupaten,

berupa data-data guru dan karyawan yang berstatus PNS.

Periode : Setiap kali user melakukan sinkronisasi dari Kabupaten ke

Sekolah.

Struktur data : DATA KABUPATEN terdiri dari:

GURU

KARYAWAN

Page 71: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

48

RIWAYAT_BEKERJA_TK

RIWAYAT_BEKERJA_SD

RIWAYAT_BEKERJA_SMP

RIWAYAT_BEKERJA_SMA

RIWAYAT_MENGAJAR_TK

RIWAYAT_MENGAJAR_SD

RIWAYAT_MENGAJAR_SMP

RIWAYAT_MENGAJAR_SMA

RIWAYAT_PENDIDIKAN_GURU

RIWAYAT_PENDIDIKAN_KARYAWAN

RIWAYAT_STATUS_GOL_GURU

RIWAYAT_STATUS_GOL_KARYAWAN

Nama arus data : DATA KABUPATEN

Bentuk data : Variabel

Arus Data : Proses 3P - Database Sekolah

Penjelasan : File berisi data sinkronisasi yang berasal dari Kabupaten,

berupa data-data guru dan karyawan yang berstatus PNS.

Periode : Setiap kali user melakukan sinkronisasi dari Kabupaten ke

Sekolah.

Struktur data : DATA KABUPATEN terdiri dari:

GURU

KARYAWAN

RIWAYAT_BEKERJA_TK

RIWAYAT_BEKERJA_SD

RIWAYAT_BEKERJA_SMP

Page 72: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

49

RIWAYAT_BEKERJA_SMA

RIWAYAT_MENGAJAR_TK

RIWAYAT_MENGAJAR_SD

RIWAYAT_MENGAJAR_SMP

RIWAYAT_MENGAJAR_SMA

RIWAYAT_PENDIDIKAN_GURU

RIWAYAT_PENDIDIKAN_KARYAWAN

RIWAYAT_STATUS_GOL_GURU

RIWAYAT_STATUS_GOL_KARYAWAN

Nama arus data : DATA SINKRON AWAL

Bentuk data : Dokumen dasar atau formulir

Arus Data : Super Admin Sekolah - Proses 4P

Proses 7P - Pegawai Kabupaten

Penjelasan : File berisi data sinkronisasi awal yang berasal dari

Kabupaten.

Periode : Setiap kali user melakukan sinkronisasi awal dari

Kabupaten ke Sekolah.

Struktur data : DATA SINKRON AWAL terdiri dari:

TK

SD

SMP

SMA

Page 73: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

50

Nama arus data : DATA SINKRON AWAL

Bentuk data : Variabel

Arus Data : Proses 4P - Database Data Awal Sekolah

Penjelasan : File berisi data sinkronisasi awal yang berasal dari

Kabupaten.

Periode : Setiap kali user melakukan sinkronisasi awal dari

Kabupaten ke Sekolah.

Struktur data : DATA SINKRON AWAL terdiri dari:

TK

SD

SMP

SMA

Nama arus data : DATA SINKRON AWAL

Bentuk data : Field (item data)

Arus Data : Database Data Awal Sekolah - Proses 7P

Penjelasan : File berisi data sinkronisasi awal yang berasal dari

Kabupaten.

Periode : Setiap kali user melakukan sinkronisasi awal dari

Kabupaten ke Sekolah.

Struktur data : DATA SINKRON AWAL terdiri dari:

TK

SD

SMP

SMA

Page 74: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

51

Nama arus data : DATA AWAL SEKOLAH

Bentuk data : Field (item data)

Arus Data : Database Kabupaten - Proses 7P

Database Data Awal Sekolah - Proses 4P

Penjelasan : File berisi data sinkronisasi awal yang berasal dari

Kabupaten.

Periode : Setiap kali user melakukan sinkronisasi awal dari

Kabupaten ke Sekolah.

Struktur data : DATA AWAL SEKOLAH terdiri dari:

TK

SD

SMP

SMA

Nama arus data : DATA AWAL SEKOLAH

Bentuk data : Variabel

Arus Data : Proses 7P - Database Data Awal Sekolah

Proses 4P - Database Sekolah

Penjelasan : File berisi data sinkronisasi awal yang berasal dari

Kabupaten.

Periode : Setiap kali user melakukan sinkronisasi awal dari

Kabupaten ke Sekolah.

Struktur data : DATA AWAL SEKOLAH terdiri dari:

TK

SD

Page 75: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

52

SMP

SMA

Nama arus data : KATA KUNCI

Bentuk data : Dokumen dasar atau formulir

Arus Data : Super Admin Sekolah - Proses 2P

Pegawai Kabupaten - Proses 6P

Pegawai Kabupaten - Proses 7P

Penjelasan : Input kata kunci yang digunakan untuk memilihan data.

Periode : Saat melakukan proses Sinkronisasi Keluar.

Struktur data : KATA KUNCI terdiri dari item data :

Semua kata yang mungkin

Nama arus data : KATA KUNCI

Bentuk data : Variabel

Arus Data : Proses 2P - Database Sinkron Sekolah

Proses 6P - Database Sinkron Kabupaten

Proses 7P - Database Kabupaten

Penjelasan : Input kata kunci yang digunakan untuk memilihan data.

Periode : Saat melakukan proses Sinkronisasi Keluar.

Struktur data : KATA KUNCI terdiri dari item data :

Semua kata yang mungkin

Page 76: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

53

bagian dari

bagian dari

bagian dari

bagian dari

bagian dari

bagian dari

2

SMP

id_smp [PK] nss nis nama jalan desa_kelurahan daerah klasifikasi_geografis kecamatan kabupaten_kota propinsi kode_pos kode_area no_telp fax email website jarak_sekolah_terdekat bentuk_sekolah status_sekolah klasifikasi_sekolah kategori_sekolah waktu_penyelenggaraan thn_akhir_renovasi prog_inklusi jenis_inklusi tanah [FK]

SMP_NEGERI

id_smp [PK] [FK] keterangan_sk no_sk_terakhir tgl_sk_terakhir

SMP_SWASTA

id_smp [PK] [FK] no_sk_pendirian tgl_sk_pendirian nds akreditasi_jenjang no_sk_akreditasi tgl_sk_akreditasi nama_yayasan jalan_yayasan desa_kelurahan_yayasan kecamatan_yayasan kabupaten_kota_yayasan propinsi_yayasan no_akte_pendirian tgl_akte_pendirian yayasan

SMA_NEGERI

id_sma [PK] [FK] keterangan_sk no_sk_terakhir tgl_sk_terakhir

SMA_SWASTA

id_sma [PK] [FK] no_sk_pendirian tgl_sk_pendirian nds akreditasi_jenjang no_sk_akreditasi tgl_sk_akreditasi nama_yayasan jalan_yayasan desa_kelurahan_yayasan kecamatan_yayasan kabupaten_kota_yayasan propinsi_yayasan no_akte_pendirian tgl_akte_pendirian yayasan

SMK_NEGERI

id_sma [PK] [FK] kelompok_smk tmpt_selenggara_prak nama_tempat id_tmpt_pel_sistim_ganda jumlah

1

SMA

id_sma [PK] nss nis nama jalan desa_kelurahan daerah klasifikasi_geografis kecamatan kabupaten_kota propinsi kode_pos kode_area no_telp fax email website jarak_sekolah_terdekat thn_buka status_sekolah klasifikasi_sekolah waktu_penyelenggaraan thn_akhir_renovasi prog_inklusi jenis_inklusi tanah [FK]

SMK_SWASTA

id_sma [PK] [FK] kelompok_smk tmpt_selenggara_prak nama_tempat id_tmpt_pel_sistim_ganda jumlah

3.1.5.2 Data Modelling

Gambar 3.8 ER Diagram

13

14

Page 77: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

54

punya punya

punya

punya

punya punya

punya

punya

21

5

6

RIWAYAT_MENGAJAR_SMA id_sma [PK1] [FK] no_induk_guru [PK2] [FK] status_guru [PK3] [FK] jabatan sk tgl_mulai_kerja tgl_selesai tgl_berhenti sk_pemberhentian

RIWAYAT_MENGAJAR_SMP id_smp [PK1] [FK] no_induk_guru [PK2] [FK] status_guru [PK3] [FK] jabatan sk tgl_mulai_kerja tgl_selesai tgl_berhenti sk_pemberhentian

RIWAYAT_BEKERJA_SMP id_smp [PK1] [FK] no_induk_karyawan [PK2] [FK] jabatan sk tgl_mulai_kerja tgl_selesai

RIWAYAT_BEKERJA_SMA id_sma [PK1] [FK] no_induk_karyawan [PK2] [FK] jabatan sk tgl_mulai_kerja tgl_selesai

GURU

no_induk_guru [PK] nama tempat_lahir tgl_lahir tgl_kerja kelamin tingkat_pendidikan golongan status_kepegawaian jabatan status_jabatan foto status_kawin jumlah_anak

KARYAWAN

no_induk_karyawan [PK] nama tempat_lahir tgl_lahir tgl_kerja kelamin tingkat_pendidikan golongan status_kepegawaian jabatan status_jabatan foto username user_password level

Gambar 3.8 ER Diagram (lanjutan.)

Page 78: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

55

punya punya

punya

punya

punya

punya punya

punya

TK

id_tk [PK] nss nis nama jalan desa_kelurahan daerah kecamatan kabupaten_kota propinsi kode_pos kode_area no_telp fax email website thn_buka status_sekolah gugus_sekolah kategori_sekolah manajemen kurikulum tanah_milik luas_milik tanah_sewa luas_sewa tanah_pinjam luas_pinjam tempat_bermain_dalam tempat_bermain_luar

SD

id_sd [PK] nss nis nama jalan desa_kelurahan daerah kategori_wilayah kecamatan kabupaten_kota propinsi kode_pos kode_area no_telp fax email website status_sekolah waktu_penyelenggaraan gugus_sekolah kategori_sekolah prog_inklusi jenis_inklusi mbs tanah_milik luas_milik tanah_sewa luas_sewa tanah_pinjam luas_pinjam

3

4

6

5

RIWAYAT_MENGAJAR_TK id_tk [PK1] [FK] no_induk_guru [PK2] [FK] status_guru [PK3] [FK] jabatan sk tgl_mulai_kerja tgl_selesai tgl_berhenti sk_pemberhentian

RIWAYAT_MENGAJAR_SD id_sd [PK1] [FK] no_induk_guru [PK2] [FK] status_guru [PK3] [FK] jabatan sk tgl_mulai_kerja tgl_selesai tgl_berhenti sk_pemberhentian

RIWAYAT_BEKERJA_TK id_tk [PK1] [FK] no_induk_karyawan [PK2] [FK] jabatan sk tgl_mulai_kerja tgl_selesai

RIWAYAT_BEKERJA_SD id_sd [PK1] [FK] no_induk_karyawan [PK2] [FK] jabatan sk tgl_mulai_kerja tgl_selesai

Gambar 3.8 ER Diagram (lanjutan.)

15

16

Page 79: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

56

punya punya punya punya punya punya punya punya

punya punya punya punya

punya punya punya punya

GEDUNG id_gedung [PK] nama

RUANG id_ruang [PK] nama id_tingkat_sekolah [FK]

21 43

TK_HAS_GEDUNG id_tk [PK1] [FK] id_gedung [PK2] [FK] tahun_dibangun tahun_terakhir renovasi

SD_HAS_GEDUNG id_sd [PK1] [FK] id_gedung [PK2] [FK] tahun_dibangun tahun_terakhir renovasi

SMP_HAS_GEDUNG id_smp [PK1] [FK] id_gedung [PK2] [FK] tahun_dibangun tahun_terakhir renovasi

SMA_HAS_GEDUNG id_sma [PK1] [FK] id_gedung [PK2] [FK] tahun_dibangun tahun_terakhir renovasi

SMA_HAS_GEDUNG_HAS_RUANG id_sma [PK1] [FK] id_gedung [PK2] [FK] id_ruang [PK3] [FK] jumlah kondisi [PK4] status_milik [PK5] luas

SMP_HAS_GEDUNG_HAS_RUANG id_smp [PK1] [FK] id_gedung [PK2] [FK] id_ruang [PK3] [FK] jumlah kondisi [PK4] status_milik [PK5] luas

SD_HAS_GEDUNG_HAS_RUANG id_sd [PK1] [FK] id_gedung [PK2] [FK] id_ruang [PK3] [FK] jumlah kondisi [PK4] status_milik [PK5] luas

TK_HAS_GEDUNG_HAS_RUANG id_TK [PK1] [FK] id_gedung [PK2] [FK] id_ruang [PK3] [FK] jumlah kondisi [PK4] status_milik [PK5] luas

Gambar 3.8 ER Diagram (lanjutan.)

Page 80: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

57

punya

punya

punya punya

punya punya

punya punya

punya punya

punya

LABORATORIUM

id_laboratorium [PK] nama id_tingkat_sekolah [FK]

1 2

PERLENGKAPAN

id_perlengkapan [PK] nama id_tingkat_sekolah [FK]

TANAH

id_tanah [PK] status_pemilikan_tanah_sm keliling keliling_pagar luas_tanah tanah_bangunan tanah_halaman_taman tanah_lap_olahraga tanah_kebun tanah_lain

SMA_HAS_PERLENGKAPAN

id_sma [PK1] [FK] id_perlengkapan [PK2] [FK] jumlah tgl_beli kondisi [PK3]

SMP_HAS_PERLENGKAPAN

id_smp [PK1] [FK] id_perlengkapan [PK2] [FK] jumlah tgl_beli kondisi [PK3]

SMA_HAS_LABORATORIUM

id_smp [PK1] [FK] id_laboratorium [PK2] [FK] juml_jam_pakai

SMP_HAS_LABORATORIUM

id_smp [PK1] [FK] id_laboratorium [PK2] [FK] juml_jam_pakai

Gambar 3.8 ER Diagram (lanjutan.)

76

Page 81: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

58

punya punya

punya punya

punya

punya

punya

punya

punya

punya

punya

punya

punya

punya

BUKU

id_buku [PK] mata_pelajaran id_tingkat_sekolah [FK]

1

SMP_HAS_BUKU

id_smp [PK1] [FK] id_buku [PK2] [FK] juml_jdl_guru juml_eks_guru juml_jdl_siswa juml_eks_siswa juml_jdl_penunjang juml_eks_penunjang

SMA_HAS_BUKU

id_sma [PK1] [FK] id_buku [PK2] [FK] juml_jdl_guru juml_eks_guru juml_jdl_siswa juml_eks_siswa juml_jdl_penunjang juml_eks_penunjang

SMA_HAS_ALAT_PENDIDIKAN

id_sma [PK1] [FK] id_alat_pendidikan [PK2] [FK] juml_peraga juml_praktik juml_media

SMP_HAS_ALAT_PENDIDIKAN

id_smp [PK1] [FK] id_alat_pendidikan [PK2] [FK] juml_peraga juml_praktik juml_media

SD_HAS_BUKU

id_sd [PK1] [FK] id_buku [PK2] [FK] juml_jdl_guru juml_eks_guru juml_jdl_siswa juml_eks_siswa

2

ALAT_PENDIDIKAN

id_alat_pendidikan [PK] mata_pelajaran id_tingkat_sekolah [FK] 3

SD_HAS_ALAT_PENDIDIKAN

id_sd [PK1] [FK] id_alat_pendidikan [PK2] [FK] juml_peraga_praktik

Gambar 3.8 ER Diagram (lanjutan.)

7

Page 82: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

59

punya punya

punya punya

punya punya

32 BUKU_SD

id_buku_sd [PK] jenis

SD_HAS_BUKU_SD

id_sd [PK1] [FK] id_buku_sd [PK2] [FK] jumlah

SD_HAS_PERLENGKAPAN

id_sd [PK1] [FK] id_perlengkapan [PK2] [FK] jumlah kondisi [PK3]

TK_HAS_PERLENGKAPAN

id_tk [PK1] [FK] id_perlengkapan [PK2] [FK] jumlah kondisi [PK3]

Gambar 3.8 ER Diagram (lanjutan.)

6

TINGKAT_SEKOLAH

id_tingkat_sekolah [PK] keterangan 7

Page 83: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

60

punya punya punya punya

SISWA id_siswa [PK] id_tk [FK] id_sd [FK] id_smp [FK] id_sma [FK] nama tempat_lahir tgl_lahir agama kelamin jalan desa kecamatan kabupaten propinsi username password level foto

1 2 3 4

6

7

8

9

12

17

18

Gambar 3.8 ER Diagram (lanjutan.) 21

10

11

19

20

Page 84: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

61

punya

punya

punya

punya

SISWA_HAS_UAN id_uan [PK1] [FK] id_siswa [PK2] [FK] nilai

mengambil UAN id_uan [PK] id_mata_pelajaran [FK]

MATA_PELAJARAN id_mata_pelajaran [PK] nama_mapel

NILAI id_siswa [PK] nama_mapel [PK] semester [PK] jenis_nilai [PK] tahun_ajaran [PK] nilai keterngan user_update

KELAS id_kelas [PK] id_mata_pelajaran [FK] id_guru [FK] pertemuan_1 pertemuan_2 pertemuan_3

SISWA_HAS_KELAS id_kelas [PK1] [FK] id_siswa [PK2] [FK]

6

diambil

PERTEMUAN id_pertemuan [PK]

TINGKAT id_tingkat [PK] tingkat

PARALEL id_paralel [PK] id_tingkat [FK] id_guru [FK] kelas_paralel group_pejurusan i

mengambil

diambil

Gambar 3.8 ER Diagram (lanjutan.)

NILAI_UAN id_uan [PK] id_mata_pelajaran [FK] tahun_ajaran nilai

21

5

Page 85: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

62

STATUS_MASUK id_status_masuk [PK] id_siswa [FK] status_masuk tingkat semester waktu tahun_ajaran nilai_kelulusan aktif asal sekolah

STATUS_NAIK id_status_masuk [PK] id_siswa [FK] tingkat semester waktu tahun_ajaran aktif

STATUS_MENGULANG id_status_masuk [PK] id_siswa [FK] tingkat semester waktu tahun_ajaran aktif

STATUS_LULUS id_status_masuk [PK] id_siswa [FK] status_lulus waktu tahun_ajaran

STATUS_KELUAR id_status_masuk [PK] id_siswa [FK] status_masuk tingkat semester waktu alasan keterangan tahun ajaran

PENJURUSAN id_penjurusan [PK] id_siswa [FK] group_penjurusan kriteria tahun_ajaran

7

8

9

10

11

12

SEMESTER_BERJALAN semester_berjalan awal_semester_berjalan akhir_semester_berjalan tahun_ajaran rencana_penerimaan_laki rencana_penerimaan_perempuan Gambar 3.8 ER Diagram (lanjutan.)

Page 86: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

63

RIWAYAT_TK id_siswa id_tk tahun_ajaran

15

17RIWAYAT_SMP

id_siswa id_smp tahun_ajaran

13

19

RIWAYAT_SD id_siswa id_sd tahun_ajaran

16

18RIWAYAT_SMA

id_siswa id_sma tahun_ajaran

14

20

Gambar 3.8 ER Diagram (lanjutan.)

Page 87: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

64

3.2 Perancangan Sistem

3.2.1 Disain Database

Tabel-tabel yang dibuat dalam pengembangan Sistem Informasi:

Tabel 3.2 Tabel TK

Name Type Size Key id_tk integer PK nss varchar 12 nis varchar 8 nama varchar 40 jalan_nomor varchar 50 desa varchar 30 daerah varchar 30 kecamatan varchar 24 kabupaten varchar 30 kabupaten_kota varchar 24 propinsi varchar 24 kode_pos varchar 5 kode_area varchar 4 no_telp varchar 10 fax varchar 15 email varchar 40 website varchar 40 status_sekolah varchar 6 gugus_sekolah varchar 15 thn_buka varchar 4 kategori_sekolah varchar 20 manajemen varchar 10 kurikulum varchar 15 tanah_milik varchar 10 luas_milik float tanah_sewa varchar 10 luas_sewa float tanah_pinjam varchar 10 luas_pinjam float tempat_bermain_dalam varchar 20 tempat_bermain_luar varchar 20

Page 88: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

65

Tabel 3.3 Tabel BUKU_SD

Name Type Size Key id_buku_sd integer PK jenis varchar 40

Tabel 3.4 Tabel SD

Name Type Size Key id_sd integer PK nss varchar 12 nis varchar 8 nama varchar 40 jalan_nomor varchar 50 desa varchar 30 daerah varchar 30 kategori_wilayah varchar 30 kecamatan varchar 24 kabupaten varchar 30 kabupaten_kota varchar 24 propinsi varchar 24 kode_pos varchar 5 kode_area varchar 4 no_telp varchar 10 fax varchar 15 email varchar 40 website varchar 40 status_sekolah varchar 6 waktu_penyelenggaraan varchar 10 gugus_sekolah varchar 15 kategori_sekolah varchar 20 prog_inklusi varchar 5 jenis_inklusi varchar 40 mbs varchar 5 tanah_milik varchar 10 luas_milik float tanah_sewa varchar 10 luas_sewa float tanah_pinjam varchar 10 luas_pinjam float

Page 89: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

66

Tabel 3.5 Tabel SMP

Name Type Size Key id_smp integer PK nss varchar 12 nis varchar 8 nama varchar 40 jalan varchar 50 desa_kelurahan varchar 30 daerah varchar 5 klasifikasi_geografis varchar 20 kecamatan varchar 24 kabupaten_kota varchar 24 propinsi varchar 24 kode_pos varchar 5 kode_area varchar 4 no_telp varchar 10 fax varchar 15 email varchar 40 website varchar 40 jarak_sekolah_terdekat integer thn_buka varchar 4 thn_akhir_renovasi varchar 4 status_sekolah varchar 6 klasifikasi_sekolah varchar 7 kategori_sekolah varchar 15 waktu_penyelenggaraan varchar 10 prog_inklusi varchar 5 jenis_inklusi varchar 40 id_tanah varchar 40 FK

Page 90: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

67

Tabel 3.6 Tabel SMP_NEGERI

Name Type Size Key id_smp integer PK, FK keterangan_sk varchar 15 no_sk_terakhir varchar 20 tgl_sk_terakhir date

Tabel 3.7 Tabel SMP_SWASTA

Name Type Size Key id_smp integer PK, FK no_sk_pendirian varchar 20 tgl_sk_pendirian date nds varchar 10 akreditasi_jenjang integer no_sk_akreditasi varchar 20 tgl_sk_akreditasi date nama_yayasan varchar 40 jalan_yayasan varchar 50 desa_kelurahan_yayasan varchar 30 kecamatan_yayasan varchar 24 kabupaten_kota_yayasan varchar 24 propinsi_yayasan varchar 24 no_akte_pendirian varchar 20 tgl_akte_pendirian date yayasan varchar 30

Tabel 3.8 Tabel SMA

Name Type Size Key id_sma integer - PK nss varchar 12 nis varchar 8 nama varchar 40 jalan varchar 50 desa_kelurahan varchar 30 daerah varchar 5 klasifikasi_geografis varchar 20 kecamatan varchar 24 kabupaten_kota varchar 24 propinsi

varchar 24

Page 91: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

68

kode_pos varchar 5 kode_area varchar 4 no_telp varchar 10 fax varchar 15 email varchar 40 website varchar 40 jarak_sekolah_terdekat integer thn_buka varchar 4 thn_akhir_renovasi varchar 4 status_sekolah varchar 6 klasifikasi_sekolah varchar 7 waktu_penyelenggaraan varchar 10 prog_inklusi varchar 5 jenis_inklusi varchar 40 id_tanah varchar 40 FK

Tabel 3.9 Tabel SMA_NEGERI

Name Type Size Key id_sma integer PK, FK keterangan_sk varchar 15 no_sk_terakhir varchar 20 tgl_sk_terakhir date

Tabel 3.10 Tabel SMA_SWASTA

Name Type Size Key id_sma integer PK, FK no_sk_pendirian varchar 20 tgl_sk_pendirian date nds varchar 10 akreditasi_jenjang integer no_sk_akreditasi varchar 20 tgl_sk_akreditasi date nama_yayasan varchar 40 jalan_yayasan varchar 50 desa_kelurahan_yayasan varchar 30 kecamatan_yayasan varchar 24 kabupaten_kota_yayasan varchar 24 propinsi_yayasan varchar 24

Page 92: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

69

no_akte_pendirian varchar 20 tgl_akte_pendirian date yayasan varchar 30

Tabel 3.11 Tabel SMK_NEGERI

Name Type Size Key id_sma integer PK, FK kelompok_smk varchar 30 tmpt_selenggara_prak varchar 30 nama_tempat varchar 50 tmpt_pel_sistim_ganda varchar 30 jumlah integer

Tabel 3.12 Tabel SMK_SWASTA

Name Type Size Key id_sma integer PK, FK kelompok_smk varchar 30 tmpt_selenggara_prak varchar 30 nama_tempat varchar 50 tmpt_pel_sistim_ganda varchar 30 jumlah integer

Tabel 3.13 Tabel RUANG

Name Type Size Key id_ruang integer PK nama varchar 40 id_tingkat_sekolah integer FK

Page 93: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

70

Tabel 3.14 Tabel TANAH

Name Type Size Key id_tanah varchar 40 PK status_pemilikan_tanah vaechar 20 keliling float 25 keliling_pagar float 30 luas_tanah float tanah_bangunan float tanah_halaman_taman float tanah_lap_olahraga float tanah_kebun float tanah_lain float

Tabel 3.15 Tabel LABORATORIUM

Name Type Size Key id_laboratorium integer PK nama varchar 40 id_tingkat_sekolah integer FK

Tabel 3.16 Tabel ALAT_PENDIDIKAN

Name Type Size Key id_alat_pendidikan integer PK mata_pelajaran varchar 40

Tabel 3.17 Tabel BUKU

Name Type Size Key id_buku integer PK mata_pelajaran varchar 40 id_tingkat_sekolah integer FK

Tabel 3.18 Tabel PERLENGKAPAN

Name Type Size Key id_perlengkapan integer PK nama varchar 30

id_tingkat_sekolah integer FK

Page 94: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

71

Tabel 3.19 Tabel KARYAWAN

Name Type Size Key nomer_induk_karyawan varchar 30 PK nama varchar 50 tempat_lahir varchar 50 tgl_lahir date tgl_kerja date kelamin varchar 1 tingkat_pendidikan varchar 25 golongan varchar 2 status_kepegawaian varchar 40 jabatan varchar 40 status_jabatan varchar 40 foto longblob username varchar 40 user_password varchar 40 level varchar 30

Tabel 3.20 Tabel GURU

Name Type Size Key nomer_induk_guru varchar 30 PK nama varchar 50 tempat_lahir varchar 50 tgl_lahir date tgl_kerja date kelamin varchar 1 tingkat_pendidikan varchar 25 golongan varchar 2 status_kepegawaian varchar 40 jabatan varchar 40 status_jabatan varchar 40 status_kawin varchar 15 jumlah_anak integer foto longblob

Page 95: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

72

Tabel 3.21 Tabel GEDUNG

Name Type Size Key id_gedung integer PK nama varchar 30

Tabel 3.22 Tabel TK_HAS_GEDUNG

Name Type Size Key id_tk integer PK1, FK id_gedung integer PK2, FK tahun_dibangun varchar 4 tahun_terakhir_renovasi varchar 4

Tabel 3.23 Tabel SD_HAS_GEDUNG

Name Type Size Key id_sd integer PK1, FK id_gedung integer PK2, FK tahun_dibangun varchar 4 tahun_terakhir_renovasi varchar 4

Tabel 3.24 Tabel SMP_HAS_GEDUNG

Name Type Size Key id_smp integer PK1, FK id_gedung integer PK2, FK tahun_dibangun varchar 4 tahun_terakhir_renovasi varchar 4

Tabel 3.25 Tabel SMA_HAS_GEDUNG

Name Type Size Key id_sma integer PK1, FK id_gedung integer PK2, FK tahun_dibangun varchar 4 tahun_terakhir_renovasi varchar 4

Page 96: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

73

Tabel 3.26 Tabel TK_HAS_GEDUNG_HAS_RUANG

Name Type Size Key id_tk integer PK1, FK id_gedung integer PK2, FK id_ruang integer PK3, FK jumlah integer kondisi varchar PK4 status_milik varchar PK5 luas float

Tabel 3.27 Tabel SD_HAS_GEDUNG_HAS_RUANG

Name Type Size Key id_sd integer PK1, FK id_gedung integer PK2, FK id_ruang integer PK3, FK jumlah integer kondisi varchar PK4 status_milik varchar PK5 luas float luas

Tabel 3.28 Tabel SMP_HAS_GEDUNG_HAS_RUANG

Name Type Size Key id_smp integer PK1, FK id_gedung integer PK2, FK id_ruang integer PK3, FK jumlah integer kondisi varchar PK4 status_milik varchar PK5 luas float luas

Tabel 3.29 Tabel SMA_HAS_GEDUNG_HAS_RUANG

Name Type Size Key id_sma integer PK1, FK id_gedung integer PK2, FK id_ruang integer PK3, FK

jumlah integer

Page 97: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

74

kondisi varchar PK4 status_milik varchar PK5 luas float luas

Tabel 3.30 Tabel SD_HAS_BUKU

Name Type Size Key id_sd integer PK1, FK id_buku integer PK2, FK juml_jdl_guru integer juml_eks_guru integer juml_jdl_siswa integer juml_eks_siswa integer

Tabel 3.31 Tabel SMP_HAS_BUKU

Name Type Size Key id_smp integer PK1, FK id_buku integer PK2, FK juml_jdl_guru integer juml_eks_guru integer juml_jdl_siswa integer juml_eks_siswa integer juml_jdl_penunjang integer juml_eks_penunjang integer

Tabel 3.32 Tabel SMA_HAS_BUKU

Name Type Size Key id_sma integer PK1, FK id_buku integer PK2, FK juml_jdl_guru integer juml_eks_guru integer juml_jdl_siswa integer juml_eks_siswa integer juml_jdl_penunjang integer juml_eks_penunjang integer

Page 98: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

75

Tabel 3.33 Tabel TK_HAS_PERLENGKAPAN

Name Type Size Key id_tk integer PK1, FK id_perlengkapan integer PK2, FK jumlah integer kondisi varchar 15 PK3

Tabel 3.34 Tabel SD_HAS_PERLENGKAPAN

Name Type Size Key id_sd integer PK1, FK id_perlengkapan integer PK2, FK jumlah integer kondisi varchar 15 PK3

Tabel 3.35 Tabel SMP_HAS_PERLENGKAPAN

Name Type Size Key id_smp integer PK1, FK id_perlengkapan integer PK2, FK jumlah integer tgl_beli date kondisi varchar 15 PK3

Tabel 3.36 Tabel SMA_HAS_PERLENGKAPAN

Name Type Size Key id_sma integer PK1, FK id_perlengkapan integer PK2, FK jumlah integer tgl_beli date kondisi varchar 15 PK3

Tabel 3.37 Tabel SD_HAS_ALAT_PENDIDIKAN

Name Type Size Key id_sd integer PK1, FK id_alat_pendidikan integer PK2, FK

juml_peraga_praktik integer

Page 99: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

76

Tabel 3.38 Tabel SMP_HAS_ALAT_PENDIDIKAN

Name Type Size Key id_smp integer PK1, FK id_alat_pendidikan integer PK2, FK juml_peraga integer juml_praktik integer juml_media integer

Tabel 3.39 Tabel SMA_HAS_ALAT_PENDIDIKAN

Name Type Size Key id_sma integer PK1, FK id_alat_pendidikan integer PK2, FK juml_peraga integer juml_praktik integer juml_media integer

Tabel 3.40 Tabel SMP_HAS_LABORATORIUM

Name Type Size Key id_smp integer PK1, FK id_laboratorium integer PK2, FK juml_jam_pakai integer

Tabel 3.41 Tabel SMA_HAS_LABORATORIUM

Name Type Size Key id_sma integer PK1, FK id_laboratorium integer PK2, FK juml_jam_pakai integer

Tabel 3.42 Tabel SD_HAS_BUKU_SD

Name Type Size Key id_sd integer PK1, FK id_buku_sd integer PK2, FK jumlah integer

Page 100: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

77

Tabel 3.43 Tabel RIWAYAT_BEKERJA_TK

Name Type Size Key id_tk integer PK1, FK nomer_induk_karyawan varchar 30 PK2, FK jabatan varchar 30 sk varchar 30 tgl_mulai_kerja date tgl_selesai date

Tabel 3.44 Tabel RIWAYAT_BEKERJA_SD

Name Type Size Key id_sd integer PK1, FK nomer_induk_karyawan varchar 30 PK2, FK jabatan varchar 30 sk varchar 30 tgl_mulai_kerja date tgl_selesai date

Tabel 3.45 Tabel RIWAYAT_BEKERJA_SMP

Name Type Size Key id_smp integer PK1, FK nomer_induk_karyawan varchar 30 PK2, FK jabatan varchar 30 sk varchar 30 tgl_mulai_kerja date tgl_selesai date

Tabel 3.46 Tabel RIWAYAT_BEKERJA_SMA

Name Type Size Key id_sma integer PK1, FK nomer_induk_karyawan varchar 30 PK2, FK jabatan varchar 30 sk varchar 30 tgl_mulai_kerja date tgl_selesai date

Page 101: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

78

Tabel 3.47 Tabel RIWAYAT_MENGAJAR_TK

Name Type Size Key id_tk integer PK1, FK nomer_induk_guru varchar 30 PK2, FK status_guru varchar 30 PK3, FK jabatan varchar 30 sk varchar 30 tgl_mulai_kerja date tgl_selesai date tgl_berhenti date sk_pemberhentian varchar 30

Tabel 3.48 Tabel RIWAYAT_MENGAJAR_SD

Name Type Size Key id_sd integer PK1, FK nomer_induk_guru varchar 30 PK2, FK status_guru varchar 30 PK3, FK jabatan varchar 30 sk varchar 30 tgl_mulai_kerja date tgl_selesai date tgl_berhenti date sk_pemberhentian varchar 30

Tabel 3.49 Tabel RIWAYAT_MENGAJAR_SMP

Name Type Size Key id_smp integer PK1, FK nomer_induk_guru varchar 30 PK2, FK status_guru varchar 30 PK3, FK jabatan varchar 30 sk varchar 30 tgl_mulai_kerja date tgl_selesai date tgl_berhenti date sk_pemberhentian varchar 30

Page 102: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

79

Tabel 3.50 Tabel RIWAYAT_MENGAJAR_SMA

Name Type Size Key id_sma integer PK1, FK nomer_induk_guru varchar 30 PK2, FK status_guru varchar 30 PK3, FK jabatan varchar 30 sk varchar 30 tgl_mulai_kerja date tgl_selesai date tgl_berhenti date sk_pemberhentian varchar 30

Table 3.51 Tabel USER_KABUPATEN

Name Type Size Key id_user_kabupaten integer PK username varchar 20 userpassword varchar 30 level char 1

Tabel 3.52 Tabel SISWA

Name Type Size Key id_siswa varchar 30 PK1 id_sma integer PK2, FK id_smp integer PK3, FK id_sd integer PK4, FK id_tk integer PK5, FK nama varchar 50 tempat_lahir varchar 50 tgl_lahir date agama varchar 10 kelamin char 1 jalan varchar 50 desa varchar 30 kecamatan varchar 24 kabupaten varchar 24 propinsi varchar 24 foto blob username varchar 20 userpasswod varchar 30 level char 1

Page 103: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

80

Tabel 3.53 Tabel NILAI

Name Type Size Key id_siswa varchar 30 PK1, FK nama_mapel varchar 50 PK2 semester varchar 10 PK3 tahun_ajaran varchar 10 PK4 jenis_nilai varchar 10 PK5 nilai float keterangan varchar 200 yang_mengupdate varchar 50

Tabel 3.54 Tabel UAN

Name Type Size Key id_uan integer PK1 id_mata_pelajaran integer PK2, FK last_update timestamp last_sinkron timestamp

Tabel 3.55 Tabel KELAS

Name Type Size Key id_kelas integer PK1 id_mata_pelajaran integer PK2, FK id_guru integer PK3, FK pertemuan_1 time pertemuan_2 time pertemuan_3 time

Tabel 3.56 Tabel TINGKAT

Name Type Size Key id_tingkat integer PK tingkat varchar 10

Tabel 3.57 Tabel PARALEL

Name Type Size Key id_paralel integer PK1 id_guru integer PK2, FK

Page 104: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

81

kelas_paralel varchar 15 group_penjurusan varchar 10

Tabel 3.58 Tabel PERTEMUAN

Name Type Size Key id_pertemuan integer PK1 id_kelas integer PK2, FK hari varchar 10 jam time

Tabel 3.59 Tabel STATUS_MASUK

Name Type Size Key id_status_masuk integer PK1 id_siswa varchar 30 PK2, FK status_masuk varchar 15 tingkat varchar 2 semester varchar 10 waktu date tahun_ajaran varchar 10 nilai_kelulusan float aktif integer 1 asal_sekolah Varchar 5

Tabel 3.60 Tabel STATUS_NAIK

Name Type Size Key id_status_naik integer PK1 id_siswa varchar 30 PK2, FK tingkat varchar 2 semester varchar 10 waktu date tahun_ajaran varchar 10 aktif integer 1

Tabel 3.61 Tabel STATUS_KELUAR

Name Type Size Key id_status_keluar integer PK1 id_siswa varchar 30 PK2, FK

Page 105: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

82

tingkat varchar 2 semester varchar 10 waktu date keterangan varchar 10 alasan text aktif integer 1

Tabel 3.62 Tabel STATUS_LULUS

Name Type Size Key id_status_lulus integer PK1 id_siswa varchar 30 PK2, FK status_lulus varchar 10 waktu date tahun_ajaran varchar 10

Tabel 3.63 Tabel PENJURUSAN

Name Type Size Key id_penjurusan integer PK1 id_siswa varchar 30 PK2, FK group_penjurusan varchar 10 kriteria varchar 10 tahun_ajaran varchar 10

Tabel 3.64 Tabel RIWAYAT_TK

Name Type Size Key id_siswa varchar 30 PK1, FK id_tk integer PK2, FK tahun_ajaran varchar 10

Tabel 3.65 Tabel RIWAYAT_SD

Name Type Size Key id_siswa varchar 30 PK1, FK id_sd integer PK2, FK tahun_ajaran varchar 10

Page 106: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

83

Tabel 3.66 Tabel RIWAYAT_SMP

Name Type Size Key id_siswa varchar 30 PK1, FK id_smp integer PK2, FK tahun_ajaran varchar 10

Tabel 3.67 Tabel RIWAYAT_SMA

Name Type Size Key id_siswa varchar 30 PK1, FK id_sma integer PK2, FK tahun_ajaran varchar 10

Tabel 3.68 Tabel TINGKAT_SEKOLAH

Name Type Size Key id_tingkat_sekolah integer PK keterangan varchar 10

Page 107: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

84

bagian dari

bagian dari bagian dari

bagian dari

bagian dari

2

SMP

id_smp [PK] nss nis nama jalan desa_kelurahan daerah klasifikasi_geografis kecamatan kabupaten_kota propinsi kode_pos kode_area no_telp fax email website jarak_sekolah_terdekat bentuk_sekolah status_sekolah klasifikasi_sekolah kategori_sekolah waktu_penyelenggaraan thn_akhir_renovasi prog_inklusi jenis_inklusi tanah [FK]

SMP_NEGERI

id_smp [PK] [FK] keterangan_sk no_sk_terakhir tgl_sk_terakhir

SMP_SWASTA

id_smp [PK] [FK] no_sk_pendirian tgl_sk_pendirian nds akreditasi_jenjang no_sk_akreditasi tgl_sk_akreditasi nama_yayasan jalan_yayasan desa_kelurahan_yayasan kecamatan_yayasan kabupaten_kota_yayasan propinsi_yayasan no_akte_pendirian tgl_akte_pendirian yayasan

SMA_NEGERI

id_sma [PK] [FK] keterangan_sk no_sk_terakhir tgl_sk_terakhir

SMA_SWASTA

id_sma [PK] [FK] no_sk_pendirian tgl_sk_pendirian nds akreditasi_jenjang no_sk_akreditasi tgl_sk_akreditasi nama_yayasan jalan_yayasan desa_kelurahan_yayasan kecamatan_yayasan kabupaten_kota_yayasan propinsi_yayasan no_akte_pendirian tgl_akte_pendirian yayasan

SMK_NEGERI

id_sma [PK] [FK] kelompok_smk tmpt_selenggara_prak nama_tempat id_tmpt_pel_sistim_ganda jumlah

1

SMA

id_sma [PK] nss nis nama jalan desa_kelurahan daerah klasifikasi_geografis kecamatan kabupaten_kota propinsi kode_pos kode_area no_telp fax email website jarak_sekolah_terdekat thn_buka status_sekolah klasifikasi_sekolah waktu_penyelenggaraan thn_akhir_renovasi prog_inklusi jenis_inklusi tanah [FK]

SMK_SWASTA

id_sma [PK] [FK] kelompok_smk tmpt_selenggara_prak nama_tempat id_tmpt_pel_sistim_ganda jumlah

3.2.2 Relasi Antar Tabel

Gambar 3.9 Relasi Antar Tabel

13

14

Page 108: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

85

punya punya

punya

punya

punya punya

punya

punya

21

5

6

RIWAYAT_MENGAJAR_SMA id_sma [PK1] [FK] no_induk_guru [PK2] [FK] status_guru [PK3] [FK] jabatan sk tgl_mulai_kerja tgl_selesai tgl_berhenti sk_pemberhentian

RIWAYAT_MENGAJAR_SMP id_smp [PK1] [FK] no_induk_guru [PK2] [FK] status_guru [PK3] [FK] jabatan sk tgl_mulai_kerja tgl_selesai tgl_berhenti sk_pemberhentian

RIWAYAT_BEKERJA_SMP id_smp [PK1] [FK] no_induk_karyawan [PK2] [FK] jabatan sk tgl_mulai_kerja tgl_selesai

RIWAYAT_BEKERJA_SMA id_sma [PK1] [FK] no_induk_karyawan [PK2] [FK] jabatan sk tgl_mulai_kerja tgl_selesai

GURU

no_induk_guru [PK] nama tempat_lahir tgl_lahir tgl_kerja kelamin tingkat_pendidikan golongan status_kepegawaian jabatan status_jabatan foto status_kawin jumlah_anak

KARYAWAN

no_induk_karyawan [PK] nama tempat_lahir tgl_lahir tgl_kerja kelamin tingkat_pendidikan golongan status_kepegawaian jabatan status_jabatan foto username user_password level

Gambar 3.9 Relasi Antar Tabel (lanjutan.)

Page 109: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

86

punya punya

punya

punya

punya

punya punya

punya

TK

id_tk [PK] nss nis nama jalan desa_kelurahan daerah kecamatan kabupaten_kota propinsi kode_pos kode_area no_telp fax email website thn_buka status_sekolah gugus_sekolah kategori_sekolah manajemen kurikulum tanah_milik luas_milik tanah_sewa luas_sewa tanah_pinjam luas_pinjam tempat_bermain_dalam tempat_bermain_luar

SD

id_sd [PK] nss nis nama jalan desa_kelurahan daerah kategori_wilayah kecamatan kabupaten_kota propinsi kode_pos kode_area no_telp fax email website status_sekolah waktu_penyelenggaraan gugus_sekolah kategori_sekolah prog_inklusi jenis_inklusi mbs tanah_milik luas_milik tanah_sewa luas_sewa tanah_pinjam luas_pinjam

3

4

6

5

RIWAYAT_MENGAJAR_TK id_tk [PK1] [FK] no_induk_guru [PK2] [FK] status_guru [PK3] [FK] jabatan sk tgl_mulai_kerja tgl_selesai tgl_berhenti sk_pemberhentian

RIWAYAT_MENGAJAR_SD id_sd [PK1] [FK] no_induk_guru [PK2] [FK] status_guru [PK3] [FK] jabatan sk tgl_mulai_kerja tgl_selesai tgl_berhenti sk_pemberhentian

RIWAYAT_BEKERJA_TK id_tk [PK1] [FK] no_induk_karyawan [PK2] [FK] jabatan sk tgl_mulai_kerja tgl_selesai

RIWAYAT_BEKERJA_SD id_sd [PK1] [FK] no_induk_karyawan [PK2] [FK] jabatan sk tgl_mulai_kerja tgl_selesai

Gambar 3.9 Relasi Antar Tabel (lanjutan.)

15

16

Page 110: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

87

punya punya punya punya punya punya punya punya

punya punya punya punya

punya punya punya punya

GEDUNG id_gedung [PK] nama

RUANG id_ruang [PK] nama id_tingkat_sekolah [FK]

21 43

TK_HAS_GEDUNG id_tk [PK1] [FK] id_gedung [PK2] [FK] tahun_dibangun tahun_terakhir renovasi

SD_HAS_GEDUNG id_sd [PK1] [FK] id_gedung [PK2] [FK] tahun_dibangun tahun_terakhir renovasi

SMP_HAS_GEDUNG id_smp [PK1] [FK] id_gedung [PK2] [FK] tahun_dibangun tahun_terakhir renovasi

SMA_HAS_GEDUNG id_sma [PK1] [FK] id_gedung [PK2] [FK] tahun_dibangun tahun_terakhir renovasi

SMA_HAS_GEDUNG_HAS_RUANG id_sma [PK1] [FK] id_gedung [PK2] [FK] id_ruang [PK3] [FK] jumlah kondisi [PK4] status_milik [PK5] luas

SMP_HAS_GEDUNG_HAS_RUANG id_smp [PK1] [FK] id_gedung [PK2] [FK] id_ruang [PK3] [FK] jumlah kondisi [PK4] status_milik [PK5] luas

SD_HAS_GEDUNG_HAS_RUANG id_sd [PK1] [FK] id_gedung [PK2] [FK] id_ruang [PK3] [FK] jumlah kondisi [PK4] status_milik [PK5] luas

TK_HAS_GEDUNG_HAS_RUANG id_TK [PK1] [FK] id_gedung [PK2] [FK] id_ruang [PK3] [FK] jumlah kondisi [PK4] status_milik [PK5] luas

Gambar 3.9 Relasi Antar Tabel (lanjutan.)

Page 111: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

88

punya

punya

punya punya

punya punya

punya punya

punya punya

punya

LABORATORIUM

id_laboratorium [PK] nama id_tingkat_sekolah [FK]

1 2

PERLENGKAPAN

id_perlengkapan [PK] nama id_tingkat_sekolah [FK]

TANAH

id_tanah [PK] status_pemilikan_tanah_sm keliling keliling_pagar luas_tanah tanah_bangunan tanah_halaman_taman tanah_lap_olahraga tanah_kebun tanah_lain

SMA_HAS_PERLENGKAPAN

id_sma [PK1] [FK] id_perlengkapan [PK2] [FK] jumlah tgl_beli kondisi [PK3]

SMP_HAS_PERLENGKAPAN

id_smp [PK1] [FK] id_perlengkapan [PK2] [FK] jumlah tgl_beli kondisi [PK3]

SMA_HAS_LABORATORIUM

id_smp [PK1] [FK] id_laboratorium [PK2] [FK] juml_jam_pakai

SMP_HAS_LABORATORIUM

id_smp [PK1] [FK] id_laboratorium [PK2] [FK] juml_jam_pakai

Gambar 3.9 Relasi Antar Tabel (lanjutan.)

76

Page 112: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

89

punya punya

punya punya

punya

punya

punya

punya

punya

punya

punya

punya

punya

punya

BUKU

id_buku [PK] mata_pelajaran id_tingkat_sekolah [FK]

1

SMP_HAS_BUKU

id_smp [PK1] [FK] id_buku [PK2] [FK] juml_jdl_guru juml_eks_guru juml_jdl_siswa juml_eks_siswa juml_jdl_penunjang juml_eks_penunjang

SMA_HAS_BUKU

id_sma [PK1] [FK] id_buku [PK2] [FK] juml_jdl_guru juml_eks_guru juml_jdl_siswa juml_eks_siswa juml_jdl_penunjang juml_eks_penunjang

SMA_HAS_ALAT_PENDIDIKAN

id_sma [PK1] [FK] id_alat_pendidikan [PK2] [FK] juml_peraga juml_praktik juml_media

SMP_HAS_ALAT_PENDIDIKAN

id_smp [PK1] [FK] id_alat_pendidikan [PK2] [FK] juml_peraga juml_praktik juml_media

SD_HAS_BUKU

id_sd [PK1] [FK] id_buku [PK2] [FK] juml_jdl_guru juml_eks_guru juml_jdl_siswa juml_eks_siswa

2

ALAT_PENDIDIKAN

id_alat_pendidikan [PK] mata_pelajaran id_tingkat_sekolah [FK] 3

SD_HAS_ALAT_PENDIDIKAN

id_sd [PK1] [FK] id_alat_pendidikan [PK2] [FK] juml_peraga_praktik

Gambar 3.9 Relasi Antar Tabel (lanjutan.)

7

Page 113: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

90

punya punya

punya punya

punya punya

32 BUKU_SD

id_buku_sd [PK] jenis

SD_HAS_BUKU_SD

id_sd [PK1] [FK] id_buku_sd [PK2] [FK] jumlah

SD_HAS_PERLENGKAPAN

id_sd [PK1] [FK] id_perlengkapan [PK2] [FK] jumlah kondisi [PK3]

TK_HAS_PERLENGKAPAN

id_tk [PK1] [FK] id_perlengkapan [PK2] [FK] jumlah kondisi [PK3]

Gambar 3.9 Relasi Antar Tabel (lanjutan.)

6

TINGKAT_SEKOLAH

id_tingkat_sekolah [PK] keterangan 7

Page 114: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

91

punya punya punya punya

SISWA id_siswa [PK] id_tk [FK] id_sd [FK] id_smp [FK] id_sma [FK] nama tempat_lahir tgl_lahir agama kelamin jalan desa kecamatan kabupaten propinsi username password level foto

1 2 3 4

6

7

8

9

12

17

18

Gambar 3.9 Relasi Antar Tabel (lanjutan.)

21

10

11

19

20

Page 115: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

92

punya

punya

punya

punya

SISWA_HAS_UAN id_uan [PK1] [FK] id_siswa [PK2] [FK] nilai

mengambil UAN id_uan [PK] id_mata_pelajaran [FK]

MATA_PELAJARAN id_mata_pelajaran [PK] nama_mapel

NILAI id_siswa [PK] nama_mapel [PK] semester [PK] jenis_nilai [PK] tahun_ajaran [PK] nilai keterngan user_update

KELAS id_kelas [PK] id_mata_pelajaran [FK] id_guru [FK] pertemuan_1 pertemuan_2 pertemuan_3

SISWA_HAS_KELAS id_kelas [PK1] [FK] id_siswa [PK2] [FK]

6

diambil

PERTEMUAN id_pertemuan [PK]

TINGKAT id_tingkat [PK] tingkat

PARALEL id_paralel [PK] id_tingkat [FK] id_guru [FK] kelas_paralel group_pejurusan i

mengambil

diambil

Gambar 3.9 Relasi Antar Tabel (lanjutan.)

NILAI_UAN id_uan [PK] id_mata_pelajaran [FK] tahun_ajaran nilai

21

5

Page 116: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

93

STATUS_MASUK id_status_masuk [PK] id_siswa [FK] status_masuk tingkat semester waktu tahun_ajaran nilai_kelulusan aktif asal sekolah

STATUS_NAIK id_status_masuk [PK] id_siswa [FK] tingkat semester waktu tahun_ajaran aktif

STATUS_MENGULANG id_status_masuk [PK] id_siswa [FK] tingkat semester waktu tahun_ajaran aktif

STATUS_LULUS id_status_masuk [PK] id_siswa [FK] status_lulus waktu tahun_ajaran

STATUS_KELUAR id_status_masuk [PK] id_siswa [FK] status_masuk tingkat semester waktu alasan keterangan tahun ajaran

PENJURUSAN id_penjurusan [PK] id_siswa [FK] group_penjurusan kriteria tahun_ajaran

7

8

9

10

11

12

SEMESTER_BERJALAN semester_berjalan awal_semester_berjalan akhir_semester_berjalan tahun_ajaran rencana_penerimaan_laki rencana_penerimaan_perempuan

Gambar 3.9 Relasi Antar Tabel (lanjutan.)

Page 117: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

94

RIWAYAT_TK id_siswa id_tk tahun_ajaran

15

17RIWAYAT_SMP

id_siswa id_smp tahun_ajaran

13

19

RIWAYAT_SD id_siswa id_sd tahun_ajaran

16

18RIWAYAT_SMA

id_siswa id_sma tahun_ajaran

14

20

Gambar 3.9 Relasi Antar Tabel (lanjutan.)

Page 118: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

95

3.2.3 Bagan Alir Sistem (System Flowchart)

a. Proses Sekolah

Backup Database Sinkron Sekolah

dengan mysqldump

Mulai

Hapus Seluruh Record di

Database Sinkron Sekolah

Selesai

Gambar 3.10 Bagan Alir Sistem Sinkronisasi Keluar Sekolah

Page 119: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

96

Restore Database Data Awal Sekolah

Adadata awal sekolah

di Database Sekolah ?

Selesai

Mulai

Upload File Data Sinkron Awal

Hapus seluruh record di Database

Awal Sekolah

InsertData Awal Sekolah

di Database Sekolah

tidak

ada

Gambar 3.11 Bagan Alir Sistem Sinkronisasi Data Awak Keluar Sekolah

Page 120: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

97

Ada record yang sama di

DatabaseSekolah?

Mulai

Upload File Data Sinkron

Kabupaten

Cek record jika flag = 1

Cek recordjika flag = 2

Cek recordjika flag = 3

UpdateDatabase Sekolah

DeleteDatabase Sekolah

InsertDatabase Sekolah

Hapus seluruh record di Database

Sinkron Kabupaten

Restore Database Sinkron

Kabupaten

Selesaiya

ada

tidak

tidak

ya

ya

ya

Cek jumlah record

di Database Sekolah > 0

tidak

tidak

Gambar 3.12 Bagan Alir Sistem Sinkronisasi Kedalam Sekolah

Page 121: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

98

b. Proses Kabupaten

Pilih Sekolah

Mulai

Backup Database Data Awal Sekolah

dengan mysqldump

Selesai

Hapus Seluruh Record di

Database Awal Sekolah

Gambar 3.13 Bagan Alir Sistem Sinkronisasi Data Awal Keluar Kabupaten

Page 122: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

99

Pilih Sekolah

Mulai

Backup Database Sinkron

Kabupaten dengan mysqldump

Selesai

Hapus Seluruh Record di

Database Sinkron Kabupaten

Gambar 3.14 Bagan Alir Sistem Sinkronisasi Keluar Kabupaten

Page 123: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

100

Ada record yang sama di

DatabaseSekolah?

Restore Database Sinkron Sekolah

Mulai

Upload File Data Sinkron Sekolah

Cek recordjika flag = 1

Cek recordjika flag = 2

Cek recordjika flag = 3

UpdateDatabase

Kabupaten

DeleteDatabase

Kabupaten

InsertDatabase

Kabupaten

Hapus seluruh record di Database

Sinkron Sekolah

Selesaiya

ada

tidak

tidak

ya

ya

ya

tidak

tidak Cek jumlah record

di Database Kabupaten > 0

Gambar 3.15 Bagan Alir Sistem Sinkronisasi Kedalam Kabupaten

Page 124: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

101

3.2.4 Perancangan Teknologi Sinkronisasi Data

1. Metode Sinkronisasi Data

Sinkronisasi data pada kasus ini menggunakan bantuan database

sementara (temprory) untuk menampung perubahan atau manipulasi data pada

tabel di database utama. Bila terjadi aktivitas manipulasi data suatu tabel utama

maka akan setiap tabel tersebut akan menjalankan triggers. Triggers tersebut akan

menyimpan data yang telah terjadi perubahan ke database sementara, dan

menambahkan id flag untuk menandai perubahan data.

ID Flag Proses 1 insert 2 update 3 delete

Tabel 3.69 Kondisi Flag

Database sementara dibawa ke kabupaten atau ke sekolah dalam bentuk

file yang dapat disimpan pada media penyimpanan. Pembuatan file tersebut

menggunakan metode backup database dengan memanfaatkan tools mysqldump.

Pada server tujuan, data yang berupa file tersebut akan di-restore ulang

sehingga menghasilkan kembali database sementara. Database sementara ini

kemudian dianalisa datanya dengan bantuan stored procedures. Stored

Procedures membaca id flag untuk menentukan proses selanjutnya dan membaca

id sinkron sebagai antriannya (lihat Tabel 3.69).

Page 125: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

102

2. Arsitektur Sistem

Setiap sekolah mempunyai database masing-masing yang hanya berisi data

sekolah tersebut, sedangkan pada server kabupaten terdapat satu database yang

berisi keseluruhan dari data-data sekolah pada kabupaten tersebut. Untuk lebih

jelasnya dapat dilihat pada Gambar 3.16

Gambar 3.16 Arsitektur Desain Sinkronisasi

Page 126: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

103

3. Kebutuhan Sistem

Dalam proses sinkronisasi diperlukan penambahan field di tiap tabel pada

database sinkronisasi. Struktur field dan tipe datanya dapat dilihat pada Tabel

3.70.

Nama Kolom Tipe Data Keterangan flag integer id_sinkon integer auto increment

Tabel 3.70 Penambahan Kolom di Database Sinkronisasi

Kolom flag digunakan untuk menandai data sinkronisasi telah mengalami

perubahan di database sumber yang kemudian akan dilakukan hal sama di

database tujuan.

Kolom id_sinkron digunakan sebagai daftar antrian data sinkronisasi.

Urutan pertama akan diproses terlebih dahulu.

Proses sinkronisasi membutuhkan database sinkronisasi untuk

menampung record-record yang akan disinkronkan keluar sistem. Database

sinkronisasi akan di-dump ke dalam bentuk file sinkronisasi untuk di bawa ke

server tujuan. Di server tujuan file tersebut akan di-undump dan digunakan untuk

proses sinkronisasi kedalam server tujuan. Untuk jelasnya dapat dilihat pada tabel

3.71 dan tabel 3.72.

Page 127: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

104

Proses Database Utama Database Sinkronisasi tk sinkron_tk sd sinkron_sd

smp sinkron_smp Sinkronisasi Keluar

sma sinkron_sma tk sinkron_kabupaten_tk sd sinkron_kabupaten_sd

smp sinkron_kabupaten_smp Sinkronisasi Kedalam

sma sinkron_kabupaten_sma Sinkronisasi Awal tk, sd, smp, sma data_awal_sekolah

Tabel 3.71 Daftar Database Sinkronisasi yang Diperlukan pada Proses Sekolah

Proses Database Utama Database Sinkronisasi sinkron_kabupaten_tk sinkron_kabupaten_sd

sinkron_kabupaten_smpSinkronisasi

Keluar kabupaten sinkron_kabupaten

sinkron_kabupaten_smasinkron_tk sinkron_sd

sinkron_smp Sinkronisasi

Kedalam kabupaten

sinkron_sma Sinkronisasi

Awal kabupaten data_awal_sekolah

Tabel 3.72 Daftar Database Sinkronisasi yang Diperlukan pada Proses Kabupaten

Page 128: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

105

3.2.5 Desain User Interface

1. Sekolah

Gambar 3.17 Sinkronisasi Keluar Sekolah

Gambar 3.18 Sinkronisasi Kedalam Sekolah

Gambar 3.19 Sinkronisasi Awal Sekolah

Browse

Upload

File

Sinkronsiasi Kedalam

Browse

Upload

File

Sinkronsiasi Awal

Nama Tabel Tambah Data Ubah Data Hapus Data guru 10 5 3

karyawan 0 2 0 kelas 0 0 0 mapel 0 0 0

… … … …

Sinkronsiasi Keluar

[ Sinkronsiasi Data ]

Page 129: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

106

2. Kabupaten

Gambar 3.20 Sinkronisasi Kedalam Kabupaten

Gambar 3.21 Sinkronisasi Keluar Kabupaten

Gambar 3.22 Sinkronisasi Awal Sekolah Kabupaten

Pilih

Kecamatan

Sinkronsiasi Keluar

Long Apari V

Jenjang Pendidikan

Sekolah

SMA V

SMA NEGERI I V

Browse

Upload

File

Sinkronsiasi Kedalam

Pilih

Kecamatan

Sinkronsiasi Awal

Long Apari V

Jenjang Pendidikan

Sekolah

SMA V

SMA NEGERI I V

Page 130: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

BAB IV

IMPLEMENTASI SISTEM

Sistem sinkronisasi data ini digunakan untuk memindahkan data yang baru

atau data yang mengalami perubahan di database sekolah, dibawa ke kabupaten.

Begitupun sebaliknya bila ada perubahan data di database kabupaten, perubahan

tersebut dibawa ke sekolah. Data yang disinkronkan pada sistem ini dalam bentuk

file atau softcopy yang disimpan kedalam removable disk.

Sinkronisasi data dicoba dengan cara simulasi yang memanfaatkan server

yang telah di-bundled Apache 2, PHP 5, dan MySQL 5. Agar memudahkan

simulasi digunakan tools Server2Go 1.4.3.

Spesifikasi komputer yang digunakan yaitu:

Prossesor : Intel Pentium 4 CPU 2.4 Ghz

Memori : 512 MB DDR

Motherboard : Intel D865 PERL

Harddisk : 40GB

Bahasa pemrograman yang dipakai untuk membuat sistem ini antara lain :

HTML dan Javascript untuk mendesain web, dan PHP 5 untuk query database,

memanggil stored procedures, upload file, eksekusi mysqldump, dan lain-lainya.

Sinkronisasi pada Sistem Informasi Sekolah dipecah menjadi dua bagian

yaitu sinkronisasi yang berjalan di sekolah dengan sinkronisasi yang berjalan di

kabupaten.

107

Page 131: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

108

a. Sinkronisasi yang berjalan di sekolah terdiri dari:

• Sinkronisasi kedalam sekolah

Sinkronisasi ini akan memproses file hasil sinkronisasi keluar

kabupaten yang berisi data-data guru dan karyawan PNS baru atau

yang mengalami perubahan.

• Sinkronisasi keluar sekolah

Sinkronisasi ini akan menjalankan program mysqldump untuk

men-dump database hasil penampungan (database sinkron) dari

data-data baru atau yang berubah di database sekolah untuk dibawa

ke kabupaten.

• Sinkronisasi awal sekolah

Sinkronisasi ini akan memproses file hasil sinkronisasi awal

kabupaten yang berisi data awal sekolah tersebut.

b. Sinkronisasi yang berjalan di kabupaten terdiri dari:

• Sinkronisasi kedalam kabupaten

Sinkronisasi ini akan memproses file hasil sinkronisasi keluar

sekolah yang berisi data-data siswa dan perlengkapan sekolah yang

baru atau mengalami perubahan.

• Sinkronisasi keluar kabupaten

Sinkronisasi ini akan menjalankan program mysqldump untuk men-

dump database hasil penampungan (database sinkron) dari data

guru, karyawan PNS baru atau yang berubah di database

kabupaten untuk dibawa ke sekolah tujuan.

Page 132: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

109

• Sinkronisasi awal kabupaten

Sinkronisasi ini akan menjalankan program mysqldump untuk men-

dump database awal sekolah yang berisi data awal sekolah seperti

NSS, NIS, dan nama sekolah. Hasilnya akan dibawa ke sekolah

sebagai sinkronisasi awal.

4.1 Tampilan Sekolah

4.1.1 Form Login

Gambar 4.1 Halaman Login Sekolah

Form pada gambar 4.1 digunakan untuk login ke halaman khusus super

admin. Saat tombol login diklik, maka sistem akan mengecek username dan

userpassword. Bila valid maka program akan membuka form selanjutnya.

Page 133: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

110

<?php include "connect.php"; $username = $_POST['username']; $password = $_POST['userpassword'];

$query_login = "select * from super_admin where username = '".$username."' and user_password = md5('".$password."')";

$execute_login = mysqli_query($link, $query_login); if($execute_login) { $hasil = mysqli_fetch_row($execute_login); $hasil_username = $hasil[0]; } if($hasil_username != '') { session_start(); $_SESSION['username_super_admin'] = $hasil_username; $_SESSION['password_super_admin'] = $password; header("location:administrator_lanjutan.php"); } else { echo "<script>"; echo "alert('Login Gagal...');"; echo "document.location.href='administrator.php';"; echo "</script>"; } ?>

Gambar 4.2 Listing Login Super Admin SMP. Gambar 4.2 Listing Login Super Admin SMP.

4.1.2 Form Sinkronisasi Keluar 4.1.2 Form Sinkronisasi Keluar

Gambar 4.3 Halaman Sinkronisasi Keluar Sekolah.

Page 134: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

111

Pada gambar 4.3 program menampilkan tabel sinkron beserta banyaknya

data yang ditambah, diubah dan dihapus. Potongan listing untuk menampilkannya

dapat dilihat di gambar 4.4:

<table border="0" cellspacing="1" cellpadding="2" align="center"> <thead> <tr> <th width="250">Nama Tabel</th> <th width="250">Tambah Data</th> <th width="250">Ubah Data</th> <th width="250">Hapus Data</th> </tr> </thead> <tbody> <?php require ("sinkron_setting_smp.php"); $counter = 1; for ($i = 0; $i < count($sinkron_smp); $i++) { if ($counter % 2 != 0) { echo "<tr class=\"odd_tr\">"; } else { echo "<tr class=\"even_tr\">"; } $counter = $counter + 1; echo "<td>$sinkron_smp[$i]</td>"; for ($j = 1; $j <= 3; $j++) { $sql = "SELECT count(*) FROM sinkron_smp.$sinkron_smp[$i] WHERE flag = $j"; $query = mysqli_query($link,$sql); $hasil = mysqli_fetch_row($query); if($hasil[0] > 1000){echo "<td style=\"color:red\"><b>$hasil[0]</b></td>";} else if($hasil[0] == 0){echo "<td>-</td>";} else echo "<td>$hasil[0]</td>"; } echo "</tr>"; } ?> <tr> <td colspan="4" align="right">[ <a href="sinkron_keluar">Daftar File Backup</a> ] [ <a href="#" onclick="sinkronConfirm()">Sinkronisasi Data</a> ]</td> </tr> </tbody> </table>

Gambar 4.4 Listing Untuk Tabel Sinkronisasi Keluar Sekolah.

Setelah menampilkan tabel sinkron, program akan menjalankan program

mysqldump untuk mengubah data sinkron tersebut ke dalam bentuk file.

<?php if ($_GET['action'] == 'sinkron') { $sql = "SELECT nama, nss FROM smp"; $nama = mysqli_query($link,$sql); echo "<fieldset id=\"main-field\">"; while ($hasil = mysqli_fetch_array($nama))

Page 135: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

112

{ echo "<legend>Hasil Sinkronisasi $hasil[0]</legend>"; $nss = $hasil[1]; } $repo = "sinkron_keluar/"; $file = "sinkron_smp_".$date."_".$nss.".sql"; if ($password_db != "") { $pass = "-p".$password_db; } else { $pass = ""; }

exec("mysqldump -u".$user." -h".$host." ".$pass." --port=".$port." --database sinkron_smp > ".$repo."".$file." -R --hex-blob");

$sqltables = "SHOW TABLES FROM sinkron_smp"; $querytables = mysqli_query($link, $sqltables); while ($hasil = mysqli_fetch_row($querytables)) { for ($j = 1; $j <= 3; $j++) { $sql = "TRUNCATE sinkron_smp.$hasil[0]"; mysqli_query($link, $sql); } } mysqli_close($link); echo "<a href=\"$repo$file\" target=\"_BLANK\">$file</a>"; echo "</fieldset>"; } ?>

Gambar 4.5 Listing Untuk Menjalankan mysqldump

Pada Proses Sinkronisasi Keluar Sekolah.

Koneksi ke database yang dipakai pada seluruh halaman sistem informasi

sekolah adalah seperti gambar 4.6:

<?php $db = "smp"; $host = "localhost"; $password_db = ""; $user = "root"; $port = 3309;

$link = mysqli_connect($host,$user,$password_db, $db, $port) or die ("Koneksi Gagal");

$query_nama_smp = "select nama, kecamatan from smp"; $execute = mysqli_query($link, $query_nama_smp); if($execute) { $hasil = mysqli_fetch_row($execute); $nama_sekolah = $hasil[0]; $kecamatan_sekolah = $hasil[1]; } $path_foto = "D:/s2go/htdocs/smp/images/"; ?>

Gambar 4.6 Listing Koneksi Database.

Page 136: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

113

Gambar 4.7 adalah potongan listing program yang mendeklarasikan array-

array dan koneksi yang dibutuhkan pada proses sinkronisasi di sekolah.

<?php include "connect.php"; if (empty($port)) { $port = 3306; } $date = date("dmY_His"); $sinkron_smp = array( "guru", "karyawan", "nilai", "nilai_uan", "riwayat_bekerja_smp", "riwayat_mengajar_smp", "riwayat_pendidikan_guru", "riwayat_pendidikan_karyawan", "riwayat_smp"; "riwayat_status_gol_guru", "riwayat_status_gol_karyawan", "siswa", "smp", "smp_has_alat_pendidikan", "smp_has_buku", "smp_has_gedung", "smp_has_gedung_has_ruang", "smp_has_laboratorium", "smp_has_perlengkapan", "smp_negeri", "smp_swasta", "status_keluar", "status_lulus", "status_masuk", "status_mengulang", "status_naik", "tanah"); $sp_sinkron_kabupaten = array( "sp_sinkron_guru", "sp_sinkron_karyawan", "sp_sinkron_riwayat_bekerja_smp", "sp_sinkron_riwayat_mengajar_smp", "sp_sinkron_riwayat_pendidikan_guru", "sp_sinkron_riwayat_pendidikan_karyawan", "sp_sinkron_riwayat_status_gol_guru", "sp_sinkron_riwayat_status_gol_karyawan"); ?>

Gambar 4.7 Listing Untuk Setting Sinkronisasi Sekolah

Ada dua array yang didefinisikan, array pertama $sinkron_smp untuk

menampung daftar tabel sinkron yang akan digunakan pada proses sinkronisasi

keluar dan array $sp_sinkron_kabupaten yang berisi daftar store procedures

untuk proses sinkronisasi kedalam.

Page 137: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

114

Data sinkronisasi yang ada di database sinkron didapatkan dari trigger

yang ada pada tabel sekolah. Contoh listing pada gambar 4.8.

DELIMITER $$; DROP TRIGGER insert_guru$$ CREATE TRIGGER insert_guru AFTER INSERT ON guru FOR EACH ROW BEGIN DECLARE v_no_induk VARCHAR(30); DECLARE v_nama VARCHAR(50); DECLARE v_tempat_lahir VARCHAR(50); DECLARE v_tgl_lahir DATE; DECLARE v_kelamin CHAR(1); DECLARE v_tgl_kerja DATE; DECLARE v_tingkat_pendidikan VARCHAR(40); DECLARE v_golongan CHAR(4); DECLARE v_status_pegawai VARCHAR(40); DECLARE v_jabatan VARCHAR(40); DECLARE v_status_jabatan VARCHAR(30); DECLARE v_foto LONGBLOB; DECLARE v_status_kawin VARCHAR(11); DECLARE v_jumlah_anak INTEGER; SELECT nomer_induk_guru, nama, tempat_lahir, tgl_lahir, kelamin, tgl_kerja, tingkat_pendidikan, golongan, status_kepegawaian, jabatan, status_jabatan, foto, status_kawin, jumlah_anak INTO v_no_induk, v_nama, v_tempat_lahir, v_tgl_lahir, v_kelamin, v_tgl_kerja, v_tingkat_pendidikan, v_golongan, v_status_pegawai, v_jabatan, v_status_jabatan, v_foto, v_status_kawin, v_jumlah_anak FROM guru WHERE nomer_induk_guru = NEW.nomer_induk_guru;

IF (v_status_jabatan == "tidak tetap" AND v_status_jabatan == "tetap yayasan") THEN

INSERT INTO sinkron_smp.guru ( nomer_induk_guru, nama, tempat_lahir, tgl_lahir, kelamin, tgl_kerja, tingkat_pendidikan, golongan,

Page 138: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

115

status_kepegawaian, jabatan, status_jabatan, foto, status_kawin, jumlah_anak, flag) VALUES (v_no_induk, v_nama, v_tempat_lahir, v_tgl_lahir, v_kelamin, v_tgl_kerja, v_tingkat_pendidikan, v_golongan, v_status_pegawai, v_jabatan, v_status_jabatan, v_foto, v_status_kawin, v_jumlah_anak, 1); END IF; END$$

Gambar 4.8 Listing Trigger Tabel Guru di Database SMP

Triggers ada di tiap tabel yang akan disinkronkan ke kabupaten, struktur

trigger insert, update dan delete sama hanya perbedaannya untuk trigger insert

nilai flag sama dengan 1, untuk trigger update hanya mengganti nilai flag dengan

2 dan untuk delete menggantinya dengan 3.

4.1.3 From Sinkronisasi Kedalam

Gambar 4.9 Halaman Sinkronisasi Kedalam Sekolah

Form pada gambar 4.9 digunakan untuk meng-upload file. Gambar 4.10

potongan listing formnya:

Page 139: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

116

<form method="POST" action="<?php echo $_SERVER['PHP_SELF']; ?>"

enctype='multipart/form-data'>

File: <input type="file" name="filenya" size="25" class="row-style"> <br /><br /> <input type="submit" name="submit" value="Upload" class="row-style"> </form>

Gambar 4.10 Listing Upload Sinkronisasi Masuk Sekolah

if($_POST['submit'] == 'Upload') { if (isset($_FILES['filenya'])) { $ftmp = $_FILES['filenya']['tmp_name']; $fname = $_FILES['filenya']['name']; $fsize = $_FILES['filenya']['size']; $ftype = $_FILES['filenya']['type']; $ext = substr($fname,-4,4); $repo = "sinkron_kedalam/"; $file_name = $date."_".$fname; if (substr($fname,18,3) == 'smp' && $ext == ".sql") { if (is_uploaded_file($ftmp)) { echo "<fieldset id=\"main-field\">"; echo "<legend> Hasil Upload </legend>"; echo ("<br>Nama file: $fname"); echo ("<br>Ukuran file: $fsize bytes<br>"); if (!file_exists($fname)) { $result = move_uploaded_file($ftmp, $repo . $file_name); if ($result == 1) {

echo "<br /><br /><p><b>Data sinkronisasi berhasil diupload</b></p>";

if ($password_db != "") { $pass = "-p".$password_db; } else { $pass = ""; }

exec("mysql -u".$user." ".$pass." --port=".$port." < ".$repo."".$file_name); echo "<br /> [ <a href=\"#\" onclick=\"sinkronConfirm()\">Mulai Sinkronisasi</a> ]";

} else

echo "<p style=\"color:red\"><b>Maaf ada masalah saat upload file, silahkan diulangi !</b></p>";

} echo "</fieldset>"; } } else { echo "<fieldset id=\"main-field\">"; echo "<p style=\"color:red\"><b>Maaf anda salah upload file !</b></p>"; echo "</fieldset>"; } }

Gambar 4.11 Listing Proses Upload Sinkronisasi Masuk Sekolah

Page 140: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

117

Pada gambar 4.11 program akan menjalankan mysql client agar file

sinkron dapat berubah kembali menjadi database sinkron.

Proses selanjutnya program akan memanggil stored procedures yang ada

dalam database sinkron.

$sinkron = $_GET['sinkron']; if(isset($sinkron)) { echo "<fieldset id=\"main-field\">"; echo "<legend> Status Sinkronisasi </legend>"; if($sinkron == 'smp') {

for ($i = 0; $i < count($sp_sinkron_kabupaten); $i++) { $sqlproc = "CALL sinkron_kabupaten_smp.$sp_sinkron_kabupaten[$i]()"; mysqli_query($link,$sqlproc); }

mysqli_close($link); echo "<p><b>Proses Sinkronisasi Kedalam SMP Sukses</b></p>"; } echo "</fieldset>"; }

Gambar 4.12 Listing panggil Stored Procedures-Sinkronisasi Masuk Sekolah

Gambar 4.13 merupakan salah satu stored procedures yang dipanggil pada

listing gambar 4.12

DELIMITER $$; DROP PROCEDURE IF EXISTS sp_sinkron_guru$$ CREATE PROCEDURE sp_sinkron_guru () BEGIN DECLARE v_no_induk VARCHAR(30); DECLARE v_nama VARCHAR(50); DECLARE v_tempat_lahir VARCHAR(50); DECLARE v_tgl_lahir DATE; DECLARE v_kelamin CHAR(1); DECLARE v_tgl_kerja DATE; DECLARE v_tingkat_pendidikan VARCHAR(40); DECLARE v_golongan CHAR(4); DECLARE v_status_pegawai VARCHAR(40); DECLARE v_jabatan VARCHAR(40); DECLARE v_status_jabatan VARCHAR(30); DECLARE v_foto LONGBLOB; DECLARE v_status_kawin VARCHAR(11); DECLARE v_jumlah_anak INTEGER; DECLARE v_flag INTEGER; DECLARE jumlah INTEGER; DECLARE counter INTEGER DEFAULT 0;

Page 141: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

118

DECLARE cur CURSOR FOR SELECT nomer_induk_guru, nama, tempat_lahir, tgl_lahir, kelamin, tgl_kerja, tingkat_pendidikan, golongan, status_kepegawaian, jabatan, status_jabatan, foto, status_kawin, jumlah_anak, flag FROM guru ORDER BY id; SELECT count(*) INTO jumlah FROM guru; OPEN cur; my_loop: LOOP FETCH cur INTO v_no_induk, v_nama, v_tempat_lahir, v_tgl_lahir, v_kelamin, v_tgl_kerja, v_tingkat_pendidikan, v_golongan, v_status_pegawai, v_jabatan, v_status_jabatan, v_foto, v_status_kawin, v_jumlah_anak, v_flag; IF EXISTS (SELECT * FROM smp.guru WHERE nomer_induk_guru = v_no_induk) THEN IF v_flag = 2 THEN UPDATE smp.guru SET nama = v_nama, tempat_lahir = v_tempat_lahir, tgl_lahir = v_tgl_lahir, kelamin = v_kelamin, tgl_kerja = v_tgl_kerja, tingkat_pendidikan = v_tingkat_pendidikan, golongan = v_golongan, status_kepegawaian = v_status_pegawai, jabatan = v_jabatan, status_jabatan = v_status_jabatan, foto = v_foto, status_kawin = v_status_kawin, jumlah_anak = v_jumlah_anak WHERE nomer_induk_guru = v_no_induk; DELETE FROM guru WHERE nomer_induk_guru = v_no_induk AND flag = v_flag; END IF; IF v_flag = 3 THEN DELETE FROM smp.guru WHERE nomer_induk_guru = v_no_induk; DELETE FROM guru WHERE nomer_induk_guru = v_no_induk AND flag = v_flag; END IF;

Page 142: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

119

ELSE IF v_flag = 1 THEN INSERT INTO smp.guru( nomer_induk_guru, nama, tempat_lahir, tgl_lahir, kelamin, tgl_kerja, tingkat_pendidikan, golongan, status_kepegawaian, jabatan, status_jabatan, foto, status_kawin, jumlah_anak) VALUES(v_no_induk, v_nama, v_tempat_lahir, v_tgl_lahir, v_kelamin, v_tgl_kerja, v_tingkat_pendidikan, v_golongan, v_status_pegawai, v_jabatan, v_status_jabatan, v_foto, v_status_kawin, v_jumlah_anak); DELETE FROM guru WHERE nomer_induk_guru = v_no_induk AND flag = v_flag; END IF; END IF; SET counter = counter + 1; IF counter = jumlah THEN LEAVE my_loop; END IF; END LOOP my_loop; CLOSE cur; END$$ DELIMITER ;$$

Gambar 4.13 Listing Stored Procedures Untuk Mensinkronkan Tabel Guru

Page 143: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

120

4.1.4 Form Sinkronisasi Awal

Gambar 4.14 Halaman Sinkronisasi Awal Sekolah

Bila data awal sekolah sudah terisi maka sistem tidak dapat meng-upload

lagi dan akan menampilkan pesan seperti gambar 4.14.

Form untuk proses upload dan sinkronisasinya hampir sama dengan proses

sinkronisasi kedalam hanya saja memanggil stored procedures yang berbeda.

Gambar 4.15 adalah listing untuk proses upload dan pemanggilan stored

procedures.

<?php include "sinkron_setting_smp.php"; $sql = "SELECT nama, nss, daerah FROM smp"; $nama = mysqli_query($link,$sql); $check_sekolah = mysqli_num_rows($nama); if($_POST['submit'] == 'Upload' && $check_sekolah == 0) { if (isset($_FILES['filenya'])) { $ftmp = $_FILES['filenya']['tmp_name']; $fname = $_FILES['filenya']['name']; $fsize = $_FILES['filenya']['size']; $ftype = $_FILES['filenya']['type']; $ext = substr($fname,-4,4); $repo = "sinkron_awal/"; $file_name = "$date" . "_" . "$fname"; if (substr($fname,13,3) == 'smp' && $ext == ".sql") { if (is_uploaded_file($ftmp)) { echo "<fieldset id=\"main-field\">"; echo "<legend> Hasil Upload </legend>";

Page 144: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

121

echo ("<br>Nama file: $fname"); echo ("<br>Ukuran file: $fsize bytes"); if (!file_exists($fname)) { $result = move_uploaded_file($ftmp, $repo . $file_name); if ($result == 1) { echo "<p><b>Data sinkronisasi awal berhasil diupload</b></p>"; if ($password_db != "") { $pass = "-p".$password_db; } else { $pass = ""; }

$result = exec("mysql -u".$user." ".$pass." --port=".$port." < ".$repo."".$file_name);

echo "<br /> [ <a href=\"#\" onclick=\"sinkronConfirm()\">Mulai Sinkronisasi</a> ]";

} else

echo "<p style=\"color:red\"><b>Maaf ada masalah saat upload file, silahkan diulangi !</b></p>";

} echo "</fieldset>"; } } else { echo "<fieldset id=\"main-field\">";

echo "<p style=\"color:red\"><b>Maaf anda salah upload file !</b></p>";

echo "</fieldset>"; } } } if($check_sekolah > 0) { echo "<fieldset id=\"main-field\">"; echo "<p style=\"color:red\"><b>Data awal sekolah sudah terisi !</b></p>"; echo "</fieldset>"; } $sinkron = $_GET['sinkron']; if(isset($sinkron))

{ echo "<fieldset id=\"main-field\">"; echo "<legend> Status Sinkronisasi </legend>"; if($sinkron == 'smp') { $sqlproc = "CALL data_awal_sekolah.sp_sinkron_smp()"; mysqli_query($link,$sqlproc); mysqli_close($link); echo "<p><b>Proses Sinkronisasi Awal SMP Sukses</b></p>"; } echo "</fieldset>"; } ?>

Gambar 4.15 Listing Untuk Upload Pada Sinkronisasi Awal Sekolah

Page 145: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

122

Sinkronisasi awal sekolah memanggil stored procedures pada database

sinkron untuk memasukan data awal sekolah ke database sekolah, gambar 4.16

contoh listing-nya:

DELIMITER $$; DROP PROCEDURE IF EXISTS sp_sinkron_smp$$ CREATE PROCEDURE sp_sinkron_smp () BEGIN DECLARE v_id_smp INTEGER; DECLARE v_nss VARCHAR(12); DECLARE v_nis VARCHAR(8); DECLARE v_nama VARCHAR(40); DECLARE v_kecamatan VARCHAR(24); DECLARE v_status_sekolah VARCHAR(6); SELECT id_smp, nss, nis, nama, kecamatan, status_sekolah INTO v_id_smp, v_nss, v_nis, v_nama, v_kecamatan, v_status_sekolah FROM smp; IF NOT EXISTS (SELECT * FROM smp.smp) THEN INSERT INTO smp.smp( id_smp, nss, nis, nama, kecamatan, status_sekolah) VALUES( v_id_smp, v_nss, v_nis, v_nama, v_kecamatan, v_status_sekolah); DELETE FROM smp WHERE id_smp = v_id_smp AND flag = v_flag; END IF; END$$ DELIMITER ;$$

Gambar 4.16 Stored Procedure Sinkronisasi Awal SMP Pada Proses Sekolah

Page 146: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

123

4.2 Tampilan Kabupaten

4.2.1 Form Login

Gambar 4.17 Halaman Sinkronisasi Kedalam Kabupaten

Form pada gambar 4.17 digunakan untuk login ke halaman menu pegawai

kabupaten. Saat tombol login diklik, maka sistem akan mengecek username dan

userpassword. Bila valid maka program akan membuka form selanjutnya.

<?php include "connect.php"; $username = $_POST['username']; $password = md5($_POST['userpassword']);

$query_login = "select username from pegawai_kabupaten where username = '".$username."' and user_password = '".$password."'";

$execute_login = mysqli_query($link, $query_login); if($execute_login) { $hasil = mysqli_fetch_row($execute_login); $hasil_username = $hasil[0]; } if($hasil_username != '') { session_start(); $_SESSION['username_kabupaten'] = $hasil_username; $_SESSION['password_kabupaten'] = $password; header("location:home_kabupaten.php"); }

... ?>

Gambar 4.18 Listing Login Pegawai Kabupaten

Page 147: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

124

4.2.2 Form Sinkronisasi Kedalam

Gambar 4.19 Halaman Sinkronisasi Kedalam Kabupaten

Listing form upload di kabupaten sama dengan listing upload di sekolah

(gambar 4.10).

Pada proses upload ditambahkan pengecekan nama file untuk menentukan

jenjang untuk menentukan stored procedures apa saja yang akan dipanggil.

Gambar 4.20 potongan listing-nya:

if($_POST['submit'] == 'Upload') { if (isset($_FILES['filenya'])) { $ftmp = $_FILES['filenya']['tmp_name']; $fname = $_FILES['filenya']['name']; $fsize = $_FILES['filenya']['size']; $ftype = $_FILES['filenya']['type']; $ext = substr($fname,-4,4); $repo = "sinkron_kedalam/"; $file = "$date" . "_" . "$fname";

if ((substr($fname,8,1) == "s" || substr($fname,8,1) == "t") && $ext == ".sql")

{ if (is_uploaded_file($ftmp)) { echo "<fieldset id=\"main-field\">"; echo "<legend> Hasil Upload </legend>"; echo ("<br>Nama file: $fname"); echo ("<br>Ukuran file: $fsize bytes"); if (!file_exists($fname)) { $result = move_uploaded_file($ftmp, $repo . $file); if ($result == 1) {

Page 148: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

125

echo "<br /><br /><p><b>Data sinkronisasi berhasil diupload</b></p>";

if ($password_db != "") { $pass = "-p".$password_db; } else { $pass = ""; } if (substr($fname,8,2) == 'tk') { exec("mysql -u".$user." ".$pass." < ".$repo."".$file);

echo "<br /> [ <a href=\"#\" onclick=\"sinkronConfirm('tk')\">Mulai Sinkronisasi TK</a> ]";

} else if (substr($fname,8,2) == 'sd') { exec("mysql -u".$user." ".$pass." < ".$repo."".$file);

echo "<br /> [ <a href=\"#\" onclick=\"sinkronConfirm('sd')\">Mulai Sinkronisasi SD</a> ]";

} else if (substr($fname,8,3) == 'smp') { exec("mysql -u".$user." ".$pass." < ".$repo."".$file);

echo "<br /> [ <a href=\"#\" onclick=\"sinkronConfirm('smp')\">Mulai Sinkronisasi SMP</a> ]";

} else if (substr($fname,8,3) == 'sma') { exec("mysql -u".$user." ".$pass." < ".$repo."".$file);

echo "<br /> [ <a href=\"#\" onclick=\"sinkronConfirm('sma')\">Mulai Sinkronisasi SMA</a> ]";

} else { echo "<br /><br /><p style=\"color:red\"><b>Maaf nama file anda salah !</b></p>"; }

} else

echo "<br /><br /><p style=\"color:red\"><b>Maaf ada masalah saat upload file, silahkan diulangi !</b></p>";

} echo "</fieldset>"; } } else { echo "<fieldset id=\"main-field\">";

echo "<p style=\"color:red\"><b>Maaf anda salah upload file !</b></p>";

echo "</fieldset>"; } } }

Gambar 4.20 Listing Untuk Upload Pada Sinkronisasi Kedalam Kabupaten

Array yang digunakan pada keseluruhan sinkronisasi di kabupaten

disatukan pada satu listing (gambar 4.21).

<?php include "connect.php"; if (empty($port)) { $port = 3306; } $db_sinkron_sma = "sinkron_sma"; $db_sinkron_smp = "sinkron_smp"; $db_sinkron_sd = "sinkron_sd"; $db_sinkron_tk = "sinkron_tk"; $db_sinkron_kabupaten = "sinkron_kabupaten";

Page 149: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

126

$date = date("dmY_His");

$link = mysqli_connect($host, $user, $password_db, $db, $port) or die("Koneksi Gagal"); $link_sinkron = mysqli_connect($host, $user, $password_db, $db_sinkron_kabupaten, $port) or die("Koneksi Gagal");

$sinkron_kabupaten_smp = array( "guru", "karyawan", "riwayat_bekerja_smp", "riwayat_mengajar_smp", "riwayat_pendidikan_guru", "riwayat_pendidikan_karyawan", "riwayat_status_gol_guru", "riwayat_status_gol_karyawan"); $sinkron_kabupaten_sma = array( "guru", "karyawan", "riwayat_bekerja_sma", "riwayat_mengajar_sma", "riwayat_pendidikan_guru", "riwayat_pendidikan_karyawan", "riwayat_status_gol_guru", "riwayat_status_gol_karyawan"); $sinkron_kabupaten_sd = array( "guru", "karyawan", "riwayat_bekerja_sd", "riwayat_mengajar_sd", "riwayat_pendidikan_guru", "riwayat_pendidikan_karyawan", "riwayat_status_gol_guru", "riwayat_status_gol_karyawan"); $sinkron_kabupaten_tk = array( "guru", "karyawan", "riwayat_bekerja_tk", "riwayat_mengajar_tk", "riwayat_pendidikan_guru", "riwayat_pendidikan_karyawan", "riwayat_status_gol_guru", "riwayat_status_gol_karyawan"); $sp_smp = array( "sp_sinkron_guru", "sp_sinkron_karyawan", "sp_sinkron_kelas", "sp_sinkron_laboratorium", . . . ); $sp_sma =

. . . ?>

Gambar 4.21 Listing Untuk Setting Sinkronisasi.

Untuk memanggil stored procedures dapat dilihat pada gambar 4.22.

Page 150: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

127

$sinkron = $_GET['sinkron']; if(isset($sinkron)) {

echo "<fieldset id=\"main-field\">"; echo "<legend> Proses Sinkronisasi </legend>"; if ($sinkron == "smp") { $sp_sinkron = $sp_smp; } if ($sinkron == "sma") { $sp_sinkron = $sp_sma; } if ($sinkron == "sd") { $sp_sinkron = $sp_sd; } if ($sinkron == "tk") { $sp_sinkron = $sp_tk; } for ($i = 0; $i < count($sp_sinkron); $i++) {

$sqlproc = "CALL sinkron_".$sinkron.".".$sp_sinkron[$i]."()"; $querytables = mysqli_query($link,$sqlproc);

} mysqli_close($link); echo "<p>Proses Sinkronisasi SMP Sukses</p>"; echo "</fieldset>";

}

Gambar 4.22 Listing Untuk Memanggil Stored Procedures

Contoh stored procedures yang dipakai pada gambar 4.23.

DELIMITER $$; DROP PROCEDURE IF EXISTS sp_sinkron_guru$$ CREATE PROCEDURE sp_sinkron_guru () BEGIN DECLARE v_no_induk VARCHAR(30); DECLARE v_nama VARCHAR(50); DECLARE v_tempat_lahir VARCHAR(50); DECLARE v_tgl_lahir DATE; DECLARE v_kelamin CHAR(1); DECLARE v_tgl_kerja DATE; DECLARE v_tingkat_pendidikan VARCHAR(40); DECLARE v_golongan CHAR(4); DECLARE v_status_pegawai VARCHAR(40); DECLARE v_jabatan VARCHAR(40); DECLARE v_status_jabatan VARCHAR(30); DECLARE v_foto LONGBLOB; DECLARE v_status_kawin VARCHAR(11); DECLARE v_jumlah_anak INTEGER; DECLARE v_flag INTEGER; DECLARE jumlah INTEGER; DECLARE counter INTEGER DEFAULT 0; DECLARE cur CURSOR FOR SELECT nomer_induk_guru, nama, tempat_lahir, tgl_lahir, kelamin, tgl_kerja, tingkat_pendidikan, golongan, status_kepegawaian, jabatan, status_jabatan, foto, status_kawin,

Page 151: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

128

jumlah_anak, flag FROM guru ORDER BY id; SELECT count(*) INTO jumlah FROM guru; OPEN cur; my_loop: LOOP FETCH cur INTO v_no_induk, v_nama, v_tempat_lahir, v_tgl_lahir, v_kelamin, v_tgl_kerja, v_tingkat_pendidikan, v_golongan, v_status_pegawai, v_jabatan, v_status_jabatan, v_foto, v_status_kawin, v_jumlah_anak, v_flag; IF EXISTS (SELECT * FROM kabupaten.guru WHERE nomer_induk_guru = v_no_induk) THEN IF v_flag = 2 THEN UPDATE kabupaten.guru SET nama = v_nama, tempat_lahir = v_tempat_lahir, tgl_lahir = v_tgl_lahir, kelamin = v_kelamin, tgl_kerja = v_tgl_kerja, tingkat_pendidikan = v_tingkat_pendidikan, golongan = v_golongan, status_kepegawaian = v_status_pegawai, jabatan = v_jabatan, status_jabatan = v_status_jabatan, foto = v_foto, status_kawin = v_status_kawin, jumlah_anak = v_jumlah_anak WHERE nomer_induk_guru = v_no_induk; DELETE FROM guru WHERE nomer_induk_guru = v_no_induk AND flag = v_flag; END IF; IF v_flag = 3 THEN DELETE FROM kabupaten.guru WHERE nomer_induk_guru = v_no_induk; DELETE FROM guru WHERE nomer_induk_guru = v_no_induk AND flag = v_flag; END IF; ELSE IF v_flag = 1 THEN INSERT INTO kabupaten.guru( nomer_induk_guru, nama, tempat_lahir, tgl_lahir, kelamin, tgl_kerja, tingkat_pendidikan, golongan, status_kepegawaian, jabatan, status_jabatan,

Page 152: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

129

foto, status_kawin, jumlah_anak) VALUES(v_no_induk, v_nama, v_tempat_lahir, v_tgl_lahir, v_kelamin, v_tgl_kerja, v_tingkat_pendidikan, v_golongan, v_status_pegawai, v_jabatan, v_status_jabatan, v_foto, v_status_kawin, v_jumlah_anak); DELETE FROM guru WHERE nomer_induk_guru = v_no_induk AND flag = v_flag; END IF; END IF; SET counter = counter + 1; IF counter = jumlah THEN LEAVE my_loop; END IF; END LOOP my_loop; CLOSE cur; END$$ DELIMITER ;$$

Gambar 4.23 Listing Stored Procedures Tabel Guru

4.2.3 Form Sinkronisasi Keluar

Gambar 4.24 Halaman Sinkronisasi Keluar Kabupaten

Page 153: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

130

Sebelum melakukan sinkronisasi pertama kali kita harus menentukan

kecamatan kemudian memilih jenjang pendidikan hingga memilih sekolah tujuan.

Listing untuk menampilkan sekolah dapat dilihat pada gambar 4.25:

$query_select = "SELECT nama, id_".$_POST['combo_jenjang']." FROM ".$_POST['combo_jenjang']." WHERE kecamatan = '".$_POST['combo_kecamatan']."'"; $execute_select = mysqli_query($link, $query_select); $counter = 1; if( mysqli_num_rows($execute_select ) > 0 ) { echo "<td> Pilih Sekolah </td>"; echo "<td>"; echo "<select name=\"combo_".$_POST['combo_jenjang']."\" style=\"font-family:Verdana\">"; while($hasil = mysqli_fetch_row($execute_select)) {

echo "<option selected=\"selected\" value=\"".$hasil[1]."\">".$hasil[0]."</option>"; $counter++;

} echo "</select>"; echo "</td>"; }

Gambar 4.25 Listing Untuk Menampilkan Sekolah

Gambar 4.26 Halaman Sinkronisasi Keluar Kabupaten Lanjutan

Page 154: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

131

Setelah memilih sekolah maka akan tampil tabel sinkron beserta jumlah

record yang mengalami perubahan. Listing untuk menampilkan tabel sinkron

sama dengan listing untuk menampilkan tabel sinkron di sekolah.

Data yang akan disinkronkan dipilih menggunakan stored procedures,

yang kemudian data tersebut ditampung di database sinkron. Setelah itu data di

database sinkron dihitung kemudian ditampilkan di tabel seperti gambar 4.26.

<?php include "sinkron_setting_kabupaten.php"; $jenjang = $_POST['txt_jenjang']; $sekolah = $_POST['combo_'.$jenjang]; if($_POST['submit'] == "Pilih" && $sekolah != "") {

$sql = "SELECT nama, nss FROM ".$jenjang." WHERE id_".$jenjang." = ".$sekolah;

$nama = mysqli_query($link,$sql); echo "<fieldset id=\"main-field\">"; while ($hasil = mysqli_fetch_array($nama)) { echo "<legend>Sinkronisasi Keluar $hasil[0]</legend>"; $nss = $hasil[1]; } ?> <table border="0" cellspacing="1" cellpadding="2" align="center"> <thead> <tr> <th width="250">Nama Tabel</th> <th width="250">Tambah Data</th> <th width="250">Ubah Data</th> <th width="250">Hapus Data</th> </tr> </thead> <tbody> <?php $jenjang = strtolower($jenjang); $counter = 1; if ($jenjang == "smp") { $tabel_sinkron = $sinkron_kabupaten_smp; } if ($jenjang == "sma") { $tabel_sinkron = $sinkron_kabupaten_sma; } if ($jenjang == "sd") { $tabel_sinkron = $sinkron_kabupaten_sd; } if ($jenjang == "tk") { $tabel_sinkron = $sinkron_kabupaten_tk; } for ($i = 0; $i < count($tabel_sinkron); $i++) {

$sqlprocdel = "TRUNCATE sinkron_kabupaten_".$jenjang.".".$tabel_sinkron[$i];

$querytables = mysqli_query($link,$sqlprocdel); }

$sqlselectguru = "SELECT guru_nomer_induk_guru FROM riwayat_mengajar_" .$jenjang." WHERE ".$jenjang."_id_".$jenjang." = ".$sekolah;

$sqlselectkaryawan = "SELECT karyawan_nomer_induk_karyawan FROM riwayat_bekerja_"

Page 155: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

132

.$jenjang." WHERE ".$jenjang."_id_".$jenjang." = ".$sekolah; $queryguru = mysqli_query($link,$sqlselectguru); $querykaryawan = mysqli_query($link,$sqlselectguru); while ($result = mysqli_fetch_array($queryguru))

{ $sqlproc1 = "CALL s p_sinkron_kabupaten_".$jenjang."_guru(".$result[0].")";

$sqlproc2 = "CALL sp_sinkron_kabupaten_".$jenjang."_riwayat_pendidikan_guru(".$result[0].")";

$sqlproc3 = "CALL sp_sinkron_kabupaten_".$jenjang."_riwayat_status_gol_guru(".$result[0].")";

mysqli_query($link_sinkron,$sqlproc1); mysqli_query($link_sinkron,$sqlproc2); mysqli_query($link_sinkron,$sqlproc3); } while ($result = mysqli_fetch_array($querykaryawan))

{ $sqlproc1 = "CALL sp_sinkron_kabupaten_".$jenjang."_karyawan(".$result[0].")";

$sqlproc2 = "CALL sp_sinkron_kabupaten_".$jenjang."_riwayat_pendidikan_karyawan(".$result[0].")";

$sqlproc3 = "CALL sp_sinkron_kabupaten_".$jenjang."_riwayat_status_gol_karyawan(".$result[0].")";

mysqli_query($link_sinkron,$sqlproc1); mysqli_query($link_sinkron,$sqlproc2); mysqli_query($link_sinkron,$sqlproc3); }

$sqlprocguru = "CALL sp_sinkron_kabupaten_".$jenjang."_riwayat_mengajar_".$jenjang."(".$sekolah.")";

$sqlprockaryawan = "CALL sp_sinkron_kabupaten_".$jenjang."_riwayat_bekerja_".$jenjang."(".$sekolah.")";

mysqli_query($link_sinkron,$sqlprocguru); mysqli_query($link_sinkron,$sqlprockaryawan); mysqli_close($link_sinkron); for ($i = 0; $i < count($tabel_sinkron); $i++) { if ($counter % 2 != 0) { echo "<tr class=\"odd_tr\">"; } else { echo "<tr class=\"even_tr\">"; } $counter = $counter + 1; echo "<td>$tabel_sinkron[$i]</td>"; for ($j = 1; $j <= 3; $j++) {

$sql = "SELECT count(*) FROM sinkron_kabupaten_".$jenjang.".".$tabel_sinkron[$i]." WHERE flag = ".$j;

$query = mysqli_query($link, $sql);

$hasil = mysqli_fetch_row($query); if($hasil[0] > 1000){echo "<td style=\"color:red\"><b>$hasil[0]</b></td>";}

else if($hasil[0] == 0){echo "<td>-</td>";} else echo "<td>$hasil[0]</td>";

Page 156: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

133

} echo "</tr>";

} echo "<tr>"; echo "<td colspan=\"4\" align=\"right\">

[ <a href=\"sinkron_keluar_kabupaten.php?action=sinkron&tipe=".$jenjang."&sekolah=".$sekolah."&nss=".$nss."\">Sinkronisasi Data</a> ]

</td>"; echo "</tr> </tbody> </table>"; echo "</fieldset>"; }

Gambar 4.27 Listing Untuk Tabel Sinkronisasi Keluar Kabupaten.

Setelah menjalankan mysqldump yang me-restore database sinkron,

program akan menghapus record yang telah disinkron di database sinkron, agar

pada proses berikutnya record tersebut tidak ikut terbawa.

if ($_GET['action'] == 'sinkron') {

echo "<fieldset id=\"main-field\">"; echo "<legend> Hasil Sinkronisasi </legend>"; $jenjang = strtolower($_GET['tipe']); $file = "sinkron_kabupaten_".$jenjang. "_".$date."_".$nss.".sql"; $repo = "sinkron_keluar/"; $sekolah = $_GET['sekolah']; $nss = $_GET['nss']; if ($password_db != "") { $pass = "-p".$password_db; } else { $pass = ""; }

exec("mysqldump -u".$user." ".$pass." -h".$host." --port=".$port." --database sinkron_kabupaten_".$jenjang." > ".$repo."".$file." -R --hex-blob");

$sqlprocdelguru = "CALL sp_hapus_guru_".$jenjang."(".$sekolah.")"; $sqlprocdelkaryawan = "CALL sp_hapus_karyawan_".$jenjang."(".$sekolah.")"; mysqli_query($link_sinkron,$sqlprocdelguru); mysqli_query($link_sinkron,$sqlprocdelkaryawan); mysqli_close($link_sinkron); echo "<a href=\"$repo$file\" target=\"_BLANK\">$file</a>"; echo "</fieldset>"; }

Gambar 4.28 Listing Untuk Pemanggilan Stored Procedures - Yang Menghapus Database Sinkron.

Contoh listing stored procedures untuk menghapus data guru di database

sinkron kabupaten pada gambar 4.29.

Page 157: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

134

DELIMITER $$; DROP PROCEDURE IF EXISTS sp_hapus_guru_smp$$ CREATE PROCEDURE sp_hapus_guru_smp (IN p_id_smp INTEGER) BEGIN DECLARE v_no_induk_guru VARCHAR(30); DECLARE jumlah INTEGER; DECLARE counter INTEGER DEFAULT 0; DECLARE cur CURSOR FOR SELECT guru_nomer_induk_guru FROM kabupaten.riwayat_mengajar_smp WHERE smp_id_smp = p_id_smp ORDER BY smp_id_smp; SELECT count(*) INTO jumlah FROM kabupaten.riwayat_mengajar_smp WHERE smp_id_smp = p_id_smp;

OPEN cur; my_loop: LOOP FETCH cur INTO v_no_induk_guru; DELETE FROM riwayat_mengajar_smp WHERE smp_id_smp = p_id_smp; DELETE FROM guru WHERE nomer_induk_guru = v_no_induk_guru; DELETE FROM riwayat_pendidikan_guru WHERE guru_nomer_induk_guru = v_no_induk_guru; DELETE FROM riwayat_status_gol_guru WHERE guru_nomer_induk_guru = v_no_induk_guru; SET counter = counter + 1; IF counter = jumlah THEN LEAVE my_loop; END IF; END LOOP my_loop; CLOSE cur; END$$ DELIMITER ;$$

Gambar 4.29 Listing Stored Procedures Untuk Menghapus Tabel Guru.

Page 158: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

135

4.2.4 Form Sinkronisasi Awal

Gambar 4.30 Halaman Sinkronisasi Awal Kabupaten

Form ini sama dengan form sinkronisasi keluar, memilih kecamatan,

jenjang pendidikan kemudian memilih sekolah. Perbedaan keduanya form ini

hanya menampilkan sekolah yang baru diinputkan oleh user kabupaten.

<?php $query_select = "SELECT nama, id_".$_POST['combo_jenjang']." FROM ".$_POST['combo_jenjang']." WHERE kecamatan = '".$_POST['combo_kecamatan']."' AND desa_kelurahan is null"; $execute_select = mysqli_query($link, $query_select); $counter = 1; if( mysqli_num_rows($execute_select ) > 0 ) {

echo "<td> Pilih Sekolah </td>"; echo "<td>"; echo "<select name=\"combo_".$_POST['combo_jenjang']."\" style=\"font-family:Verdana\">";

while($hasil = mysqli_fetch_row($execute_select)) { echo "<option selected=\"selected\" value=\"".$hasil[1]."\">".$hasil[0]."</option>";

$counter++; } echo "</select>"; echo "</td>"; } mysqli_close($link); ?>

Gambar 4.31 Listing Untuk Menampilkan Sekolah Pada Proses Sinkronisasi Awal Kabupaten

Sinkronisasi awal memanggil stored procedures untuk memindahkan data

awal sekolah yang dipilih dari database kabupaten.

Page 159: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

136

<?php include "sinkron_setting_kabupaten.php"; $jenjang = $_POST['txt_jenjang']; $sekolah = $_POST['combo_'.$jenjang]; if($_POST['submit'] == "Pilih" && $sekolah != "") {

$sql = "SELECT nama, nss FROM ".$jenjang." WHERE id_".$jenjang." = ".$sekolah;

$nama = mysqli_query($link,$sql); echo "<fieldset id=\"main-field\">"; while ($hasil = mysqli_fetch_array($nama)) { echo "<legend>Sinkronisasi Awal $hasil[0]</legend>"; $nss = $hasil[1]; } $jenjang = strtolower($jenjang); $sqlprocdel = "TRUNCATE data_awal_sekolah.".$jenjang; mysqli_query($link,$sqlprocdel); $sqlproc = "CALL sp_sinkron_awal_".$jenjang."(".$sekolah.")"; mysqli_query($link,$sqlproc); $repo = "sinkron_awal/"; $file = "sinkron_awal_".$jenjang."_".$date."_".$nss.".sql"; if ($password_db != "") { $pass = "-p".$password_db; } else { $pass = ""; }

exec("mysqldump -u".$user." ".$pass." -h".$host." --port=".$port." --database data_awal_sekolah > ".$repo."".$file." -R --hex-blob");

$sqlprocdel = "TRUNCATE data_awal_sekolah.".$jenjang; mysqli_query($link,$sqlprocdel); mysqli_close($link); echo "<a href=\"$repo$file\" target=\"_BLANK\">$file</a>"; echo "</fieldset>"; } ?>

Gambar 4.32 Listing Untuk Memanggil Stored Procedures

Contoh stored procedures yang dipanggil pada proses sinkronisasi awal

sekolah ini adalah seperti gambar 4.33.

DELIMITER $$; DROP PROCEDURE IF EXISTS sp_sinkron_awal_smp$$ CREATE PROCEDURE sp_sinkron_awal_smp (IN p_id_smp INTEGER) BEGIN DECLARE v_id_smp INTEGER; DECLARE v_nss VARCHAR(12); DECLARE v_nis VARCHAR(8); DECLARE v_nama VARCHAR(40); DECLARE v_jalan VARCHAR(50); DECLARE v_desa_kelurahan VARCHAR(30);

Page 160: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

137

DECLARE v_daerah VARCHAR(4); DECLARE v_klasifikasi_geografis VARCHAR(20); DECLARE v_kecamatan VARCHAR(24); DECLARE v_kabupaten VARCHAR(40); DECLARE v_kabupaten_kota VARCHAR(24); DECLARE v_propinsi VARCHAR(24); DECLARE v_kode_pos VARCHAR(5); DECLARE v_kode_area VARCHAR(4); DECLARE v_no_telp VARCHAR(10); DECLARE v_fax VARCHAR(15); DECLARE v_email VARCHAR(40); DECLARE v_website VARCHAR(40); DECLARE v_jarak_sekolah_terdekat FLOAT; DECLARE v_thn_buka VARCHAR(4); DECLARE v_thn_akhir_renovasi VARCHAR(4); DECLARE v_status_sekolah VARCHAR(6); DECLARE v_klasifikasi_sekolah VARCHAR(7); DECLARE v_kategori_sekolah VARCHAR(25); DECLARE v_waktu_penyelenggaraan VARCHAR(10); DECLARE v_prog_inklusi VARCHAR(5); DECLARE v_jenis_inklusi VARCHAR(40); DECLARE v_tanah_id_tanah VARCHAR(50); SELECT id_smp, nss, nis, nama, jalan, desa_kelurahan, daerah, klasifikasi_geografis, kecamatan, kabupaten, kabupaten_kota, propinsi, kode_pos, kode_area, no_telp, fax, email, website, jarak_sekolah_terdekat, thn_buka, thn_akhir_renovasi, status_sekolah, klasifikasi_sekolah, kategori_sekolah, waktu_penyelenggaraan, prog_inklusi, jenis_inklusi, tanah_id_tanah INTO v_id_smp, v_nss, v_nis, v_nama, v_jalan, v_desa_kelurahan, v_daerah, v_klasifikasi_geografis, v_kecamatan, v_kabupaten, v_kabupaten_kota, v_propinsi, v_kode_pos, v_kode_area, v_no_telp, v_fax, v_email, v_website, v_jarak_sekolah_terdekat, v_thn_buka,

Page 161: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

138

v_thn_akhir_renovasi, v_status_sekolah, v_klasifikasi_sekolah, v_kategori_sekolah, v_waktu_penyelenggaraan, v_prog_inklusi, v_jenis_inklusi, v_tanah_id_tanah FROM smp WHERE id_smp = p_id_smp; INSERT INTO data_awal_sekolah.smp VALUES ( v_id_smp, v_nss, v_nis, v_nama, v_jalan, v_desa_kelurahan, v_daerah, v_klasifikasi_geografis, v_kecamatan, v_kabupaten, v_kabupaten_kota, v_propinsi, v_kode_pos, v_kode_area, v_no_telp, v_fax, v_email, v_website, v_jarak_sekolah_terdekat, v_thn_buka, v_thn_akhir_renovasi, v_status_sekolah, v_klasifikasi_sekolah, v_kategori_sekolah, v_waktu_penyelenggaraan, v_prog_inklusi, v_jenis_inklusi, v_tanah_id_tanah); END$$ DELIMITER ;$$

Gambar 4.33 Listing Stored Procedures untuk Sinkronisasi Awal Kabupaten.

Page 162: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

BAB V

ANALISA HASIL IMPLEMENTASI

5.1 Analisa Teknologi

Dalam menerapkan teknologi sinkronisasi pada sistem informasi sekolah,

server harus di-setting terlebih dahulu. Ada beberapa konfigurasi server yaitu:

1. Mengubah batas maksimal ukuran file upload yang ada pada file php.ini.

Default nilainya 2M, sedangkan file sinkron dengan banyaknya record

(diatas 10.000 record) kemungkinan ukuran file lebih dari 2M.

upload_max_filesize = 8M

Batas maksimum untuk upload ke server yang ditentukan oleh

pengembang Apache adalah 8MB.

2. Mengubah batas maksimal waktu eksekusi tiap detik dari script PHP yang

dijalankan. Default nilainya 30, sedangkan proses sinkronisasi memanggil

banyak stored procedures yang menangani banyak pula data, sehingga

untuk amannya diperlukan waktu maksimal eksekusi lebih dari 30 detik.

max_execution_time = 3600

Konfigurasi diatas men-set server agar dapat melakukan eksekusi hingga

3600 detik.

139

Page 163: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

140

5.2 Analisa Hasil Perangkat Lunak

Dari beberapa simulasi percobaan, secara keseluruhan sinkronisasi data

dapat berjalan dengan baik. Sistem ini dapat mensinkronkan data pada server

sekolah dengan data pada server kabupaten.

Dengan menggunakan software benchmark (Website Stress Tools 7 Trial

Edition) dilakukan percobaan kecil untuk mengetes kinerja sinkronisasi dengan

tabel guru yang mempunyai 14 field sebagai sampel. Proses sinkronisasi keluar,

sinkronisasi kedalam dan sinkronisasi awal sekolah tidak mengalami kendala

begitupun untuk proses sinkronisasi keluar dan sinkronisasi awal kabupaten. Yang

perlu diperhatikan adalah proses sinkronisasi kedalam kabupaten yang melibatkan

banyak tabel dan record. Berikut ini hasil pengamatannya:

Jumlah Record

Waktu Eksekusi (ms)

Ukuran File (KB) Keterangan

1.000 56ms 160KB Proses sinkronisasi berjalan sangat cepat.

10.000 38.000ms 1,329 KB Kondisi jumlah record yang ideal untuk melakukan proses sinkronisasi.

20.000 145.000ms 2,647 KB Proses sinkronisasi memakan waktu lebih dari 2 menit.

50.000 > 30 menit 6.603 KB Proses sinkronisasi gagal.

60.000 > 30 menit 7.921KB Ukuran file hampir mencapai batas maksimum upload 8MB. Proses sinkronisasi gagal.

Tabel 5.1 Tabel Pengamatan Sinkronisasi Kedalam Kabupaten

Berdasarkan tabel 5.1 dapat disimpulkan bahwa sinkronisasi ideal

dilakukan apabila jumlah record di database sinkron sudah mencapai 20.000.

Tidak dianjurkan melebihi 20.000 dikarenakan proses akan memakan waktu lebih

dari 2 menit bahkan dapat gagal.

Page 164: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

141

5.3 Kelebihan dan Kekurangan

Kelebihan dari hasil implementasi sinkronisasi data adalah:

1. Web didesain user friendly sehingga user tidak merasa kesulitan dalam

menggunakannya.

2. Menggunakan software open source yang gratis.

Kekurangan sistem antara lain:

1. Mempunyai celah keamanan pada file sinkron yang bila disalahgunakan

dapat disusupi dengan perintah-perintah query yang dapat merusak.

2. Menggunakan spesifikasi komputer yang tinggi agar nyaman saat

melakukan proses sinkronisasi.

Page 165: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

BAB VI

PENUTUP

6.1 Kesimpulan

Berdasarkan hasil analisis, desain, dan implementasi sinkronisasi pada

sistem informasi sekolah menggunakan PHP dan MySQL dalam penelitian ini,

dapat disimpulkan bahwa:

1. Sistem ini sudah berjalan dengan baik dan dapat melengkapi sistem

informasi sekolah yang sudah ada agar dapat melakukan sinkronisasi data

antar database sekolah dan kabupaten dalam kondisi offline.

2. Jumlah maksimal record yang dapat dilakukan proses sinkronisasi yaitu

20.000.

6.2 Saran

Saran-saran bagi sinkronisasi data pada sistem informasi sekolah

menggunakan PHP dan MySQL di masa yang akan datang adalah:

1. Perlu adanya pengendalian sistem keamanan agar file sinkronisasi tidak

dapat disusupi oleh query-query lain (injection).

2. Perlu adanya fasilitas sinkronisasi data online agar dapat melakukan

sinkronisasi lebih cepat dan aman.

142

Page 166: Sinkronisasi Database Pada Sistem Informasi Sekolah … · 2018. 11. 21. · Sistem informasi sekolah digunakan untuk mengelolah data baik data siswa, guru, fasilitas, pegawai, dan

DAFTAR PUSTAKA

Fuerstein, Steven and Guy Harrison, MySQL Stored Procedure

Programming, O’Reilly, USA, 2006.

MySQL AB, MySQL 5.1 Reference Manual, MySQL Press, USA, 2006.

Valade, Janet, PHP 5 For Dummies, Wiley Publishing, Indianapolis, 2004.

Whitten, Jeffrey L., System Analysis and Design Methods, McGraw-Hill,

New York, 2005.

143