BAB 3 Metodologi
3.1 Metodologi Dalam pembuatan aplikasi yang baik, diperlukan untuk membuat sebuah susunan atau tahap-tahap dalam pembuatan web tersebut. Tahap-tahap yang perlu diperhatikan dalam pembuatan aplikasi ini adalah : •
Melakukan penyebaran kuesioner
•
Menganalisis hasil yang didapatkan
•
Menyimpulkan masalah-masalah dari data yang telah didapatkan
•
Mencari solusinya
•
Membuatrancangan web
•
Membuat web
•
Evaluasi web tersebut
•
Mengimplementasikan web
3.2Obyek Peneltitian 3.2.1 Struktur Organisasi 3.2.1.1Sejarah Berdiri Sekolah dan Perkembangannya Pada tanggal 29 Mei 1981, Pastor Titus Rahail, Msc, sebagai Pastor Kepala Paroki bersama dewan Paroki mengeluarkan keputusan untuk membentuk seksi pendidikan. Hal ini dilakukan untuk menjawab keluhan warga Paroki Santo Kristoforus yang tidak tertampung di sekolah Katolik 35
36
seputar Paroki yang tidak terjangkau secara finansial. Dengan motivasi dasar “option for the poor”, seksi pendidikan paroki mencoba menanggapi keprihatinan tersebut dengan mendirikan sekolah Taman Kanak-kanak sebagai awal dari seluruh perjalanan sejarah persekolahan milik Paroki Santo Kristoforus yang kini telah berkembang hingga jenjang Sekolah Menengah Umum. Kronologi perkembangan Santo Kristoforus : 1. Taman Kanak-kanak dimulai sejak tanggal 6 Juni 1981. Pada awalnya, Taman Kanak-kanak
menggunakan ruang pertemuan Pastoran.
Kegiatan pendidikan mulai berlangsung dengan satu kelas TK-B yang menampung 45 anak. Pada tanggal 30 April 1982, yayasan Diannanda ditugasi untuk mengelola sekolah tersebut berdasarkan Akte Notaris No. 18 pada Notaris Milly Karmila S., SH. 2. Pada pertengahan 1983, gedung sekolah sederhana untuk TK dan SD selesai didirikan yang bertempat di dalam kompleks gereja. Gedung tersebut terdiri atas dua lantai dengan enam ruang kelas, ruang guru, kantor tata usaha sekolah, dan kantor yayasan. 3. Melihat semakin banyak minat siswa baru yang mendaftar ke sekolah Santo Kristoforus, menuntut yayasan untuk menjawab persoalan ini dengan mengadakan LUSTRUM – 1985. LUSTRUM 1 diadakan dalam rangka mencari sumbangan dana. Pada saat itu, terkumpul dana sebesar Rp 10.000.000,00. Wujud dari dana itu adalah pembangunan gedung berlantai tiga dengan luas kurang lebih 300m2 dan memiliki lima belas ruang.
37
4. Berdasarkan surat keputusan Dewan Paroki Santo Kristoforus No. 13/Februari/1987
tanggal
20
Februari
1987.
Badan
pengurus
membentuk panitia pembangunan dan renovasi sekolah Katolik Santo Kristoforus dengan surat keputusan No. 02/SK/BADURUS/II/87, tanggal 23 Februari 1987. Berkat kerja keras dari semua pihak dan dengan rahmat Tuhan, pembangunan gedung ini dapat diselesaikan pada tanggal 17 Juli 1988. Pada tahun 1994, bangunan tersebut ditambah satu lantai lagi untuk ruangan komputer, laboratorium, sekretariat yayasan, kantor ketua yayasan, dan koperasi sekolah. 5. Pada saat ini yayasan Diannanda telah menyelesaikan pembangunan gedung berlantai empat untuk gedung SMP dan SMU Santo Kristoforus, yang terletak di kompleks gereja Paroki Santo Kristoforus, Grogol. Pembangunan tersebut memakan waktu kurang lebih empat belas bulan. 6. Sejak berdiri hingga kini, yayasan Diannanda telah mempunyai tujuh unit persekolahan yang bertempat di Jl. Rahayu No. 1A Grogol dan Perumahan Citra III Blok N3, Kalideres-Jakarta Barat. Jumlah guru dan karyawan : 168 orang, sedangkan jumlah murid / siswa kurang lebih 2000 peserta didik. Pengakuan MPPK KAJ sebagai sekolah Katolik berpredikat A dengan status disamakan
Gambar 3.1 Logo Sekolah
Kristoforus
38
Makna logo : a. Semboyan Fides, mores et intellectus yang berarti iman, karakter, dan ilmu. b. St. Kristoforus (Latin : Christus dan Ferre) artinya membawa dan menyeberangkan Kristus. c. Delapan sudut mata angin.
3.2.1.2 Visi dan Misi Sekolah Visi Sekolah SMP-SMA St. Kristoforus adalah menjadi sekolah Katolik yang unggul dan profesional. Misi diantaranya adalah sebagai berikut : 1. Meningkatkan
dan
mengembangkan
kualitas
sumber
daya
manuasiamelalui penguasaan ilmu pengetahuan, teknologi, dan bahasa. 2. Mengembangkan pendidikan karakter yang berbasis iman dan moral dengan semangat Santo kristoforus. 3. Menanamkan nilai-nilai kebangsaan (menumbuhkan sikap penghargaan terhadap pluralitas bangsa). 4. Menyelenggarakan tata kelola yang baik melalui fungsi manajemen yang profesional.
39
3.2.1.3 Struktur Organisasi Sekolah
Gambar 3.2 Struktur Organisasi Sekolah St. Kristoforus
3.2.1.4 Pembagian Tugas dan Wewenang 3.2.1.4.1 Kepala Sekolah Kepala Sekolah adalah orang yang memimpin pelaksanaan proses belajar mengajar di sekolah, wajib mentaati paraturanperaturan yang berlaku, bertanggung jawab memimpin, dan mengkoordinasikan seluruh unsur di lingkungan sekolah. Adapun tugas Kepala Sekolah antara lain : 1.
Dalam kaitan kompetensi profesional, Kepala Sekolah mengatur kegiatan administrasi kantor sekolah.
2.
Mengatur pelaksanaan proses belajar mengajar
dengan
berpedoman pada KTSP dibantu oleh Wakasek Kurikulum dan para guru bidang studi. 3.
Mengatur pelaksanaan pembinaan kesiswaan (aspek afeksi dan psikomotorik) melalui peraturan dan tata tertib yang dibantu oleh Wakasek Kesiswaan.
4.
Dalam kedudukan sebagai supervisor, Kepala Sekolah berperan sebagai berikut: a. Memeriksa Program Semester (PS), Silabus dan RPP Seperti Kompetensi Dasar, Indikator dan Materi Pokok yang dibuat guru bidang studi. b. Memeriksa Agenda Guru Bidang Studi sesuai dengan KBM satu minggu ke depan. c. Memperhatikan metode yang digunakan dalam KBM.
41
d. Memperhatikan proses interaksi guru-siswa. e. Pengisian daftar nilai. 5.
Dalam kaitan dengan supervisi pelaksanaan kurikulum, Kepala Sekolah bertugas: a. Mengumpulkan soal-soal hasil evaluasi. b. Memperhatikan pemeriksaan soal-soal oleh guru bidang studi. c. Memeriksa pengisian daftar nilai dengan baik. d. Memeriksa pengisian daftar kelas. e. Memeriksa pengisian buku rapor. f. Mengadakan supervisi guru setiap tiga bulan.
6.
Mengadakan rapat sekolah secara periodik sebagai wadah pembinaan terhadap para guru / karyawan.
7.
Mengadakan
seminar
ilmiah
demi
peningkatan
pengetahuan dan kualitas para guru / karyawan. 8.
Mengadakan Retret / Rekoleksi / Misa awal tahun dan akhir tahun pelajaran bersama para guru / karyawan.
9.
Membuat Program Harian, Mingguan dan Bulanan. Agenda harian mencakup pelaksanaan program sebagai bahan penyusunan untuk tahun pelajaran berikutnya. Menyiapkan buku-buku catatan seperti Buku Tamu Dinas, Buku Tamu
42
Umum, Buku NotulaRapat, Buku Piket, Buku izin guru / karyawan, Buku Supervisi Pelaksanaan Kurikulum. 10. Mengadakan hubungan dengan: a. Instansi Depdiknas. b. Sekolah-sekolah lain di wilayah DKI Jakarta. c. Pemerintah setempat. d. Orang tua / wali siswa dalam rangka pembinaan siswa. e. Badan-badan sosial yang bisa membantu pendidikan di sekolah. f. Menghadiri rapat-rapat dinas ( di luar sekolah). g. Membuat laporan kepada Yayasan dan Kanwil Depdiknas.
3.2.1.4.2 Wakil Kepala Sekolah Bidang Kurikulum Tugas Wakil Kepala Sekolah bidang kurikulum adalah sebagai berikut : 1.
Membantu Kepala Sekolah dalam menyelenggarakan proses belajar mengajar sesuai dengan kurikulum yang berlaku.
2.
Membantu Kepala Sekolah untuk menyusun Program Semester / Tahunan, menyusun jadwal pelajaran, dan menyusun evaluasi belajar.
43
3.
Membantu Kepala Sekolah dalam menyusun kalender pendidikan, mengumpulkan dan memeriksa RPP, dan agenda guru bidang studi yang akan dilaksanakan para guru pada satu minggu mendatang.
4.
Mewakili Kepala Sekolah dalam kaitannya dengan bidang kuriklum.
5.
Menyelesaikan tugas yang diberikan oleh Kepala Sekolah.
6.
Merencanakan pertemuan para guru guna membahas pelaksanaan PBM di sekolah.
7.
Mengkoordinasikan para guru dan karyawan untuk dapat memikul tugasnya masing-masing.
8.
Mengkoordinasikan
para
guru
dalam
menjalankan
kurikulum yang berlaku sesuai target ketercapaian hasil belajar dan alokasi waktu. 9.
Mengkoordinasikan pelaksanaan kurikulum baik di kelas maupun di luar kelas.
10. Merencanakan dan mengkoordinasikan pelaksanaan tes harian dan UAS. Selanjutnya mengingatkan para guru untuk menyerahkan nilai siswa kepada Bagian Tata Usaha untuk diproses melalui komputer. 11. Menyusun pedoman kelulusan UAS berlandaskan petunjuk Dinas Pendidikan.
44
12. Menyusun pedoman untuk penentuan program / jurusan dan kelompok
siswa
berdasarkan
petunjuk
dari
Dinas
Pendidikan. 13. Meningkatkan pengetahuan dan ketrampilan guru melalui wacana, seminar, dan Musyawarah Guru Mata Pelajaran (MGMP). 14. Merencanakan dan menjalankan observasi studi, karya wisata, riset, retret / rekoleksi. 15. Mengawasi pengelolaan perpustakaan sekolah. 16. Membina dan mengkoordinasikan aparat sekolah. 17. Menyusun jadwal piket. 18. Menyiapkan sarana administrasi guru. 19. Mengarsipkan semua administrasi guru / karyawan. 20. Menghitung jumlah jam mengajar dan kehadiran guru / karyawan
setiap
akhir
bulan
secara
teliti
dan
bertanggungjawab, serta dikirim kepada Kabag Keuangan. 21. Menampung aspirasi guru / karyawan untuk segera disampaikan kepada Kepala Sekolah. 22. Membantu Kepala Sekolah untuk menunjuk panitia ujian kepada guru wali kelas / bidang studi (bukan Kepala Sekolah/Wakasek) dan panitia ujian dilakukan secara bergiliran.
45
23. Mempertanggungjawabkan tugas kepada Kepala Sekolah secara periodik.
3.2.1.4.3 Wakil Kepala Sekolah Bidang Kesiswaan Tugas Wakil Kepala Sekolah bidang kesiswaan adalah sebagai berikut : 1.
Membantu Kepala Sekolah dalam menyusun program pembinaan kegiatan
kesiswaan / OSIS yang mencakup
kegiatan-kegiatan: Kesenian, Keolahragaan, Kepramukaan, Usaha Kesehatan Sekolah, Majalah Dinding / Buletin Sekolah, Pembinaan Rohani dan lain-lain. 2.
Membimbing dan mengarahkan kegiatan siswa / OSIS.
3.
Mengarahkan siswa untuk menjalankan tata tertib sekolah.
4.
Mengarahkan proses pemilihan pengurus OSIS.
5.
Membina
para
pengurus
OSIS
tentang
ketrampilan
berorganisasi. 6.
Melaporkan hasil pembinaan kepada Kepala Sekolah.
7.
Memantau dan merekap absen siswa setiap bulan.
8.
Menyiapkan dan mengkoordinasikan pengisian administrasi kesiswaan.
9.
Mengarsipkan seluruh administrasi bidang kesiswaan.
46
10. Mendata dan membina siswa yang melanggar tata tertib sekolah. 11. Mengkoordinasikan dengan guru BP, wali kelas, dan guru mata pelajaran tentang masalah kesiswaan. 12. Menanggulangi kenakalan siswa baik dalam satu sekolah maupun dengan sekolah lain atau masyarakat umum. 13. Mengadakan kerjasama dengan pihak keamanan antarunit dan orang tua siswa guna mencegah tawuran siswa antarsekolah. 14. Melakukan
pembinaan
moral
terhadap
siswa
yang
melakukan tindak kejahatan seperti mencuri ponsel atau uang guru/karyawan/siswa. 15. Memantau dan merekap kehadiran guru dan karyawan. 16. Membantu
Kepala
Sekolah
dalam
hal
memelihara
hubungan baik sekolah dengan orang tua siswa. 17. Menjaga hubungan baik antarsekolah, lembaga-lembaga pemerintah, dan swasta. 18. Memelihara hubungan baik dengan para alumni. 19. Memberi penjelasan yang akurat tentang kebijaksanaan, perkembangan, dan kemajuan sekolah kepada orang tua siswa/masyarakat. 20. Menampung aspirasi yang berkembang di masyarakat untuk kemajuan sekolah.
47
3.2.1.4.4 Tata Usaha Tugas Tata Usaha adalah sebagai berikut : 1.
Membantu Kepala Sekolah untuk mengkoordinasikan kegiatan-kegiatan administrasi guru, siswa, dan administrasi umum.
2.
Berkoordinasi dengan Bendahara Unit/Bagian Keuangan tentang kegiatan administrasi keuangan, inventaris sekolah, dan arsip sekolah.
3.
Mengamankan surat-surat dan dokumen penting.
4.
Membenahi Administrasi Kantor Sekolah: buku agenda, buku
induk
siswa,
buku
ekspedisi,
daftar
hadir
guru/karyawan/siswa, buku tamu, buku notula rapat, kumpulan arsip, buku statistik, buku pengumuman, buku inventaris, buku piket, laporan bulanan/semester/tahunan. 5.
Melaksanakan
Administrasi
Sekolah:
perencanaan
perlengkapan (barang bergerak/tidak bergerak), pengadaan barang,
penyimpanan
barang,
inventarisasi
dan
menggolongkan barang.
3.2.2Tata Laksana / Prosedur Yang Sedang Berjalan Pada SMA Kristoforus I terdapat beberapa tata laksana atau prosedur yang sedang berjalan, yaitu :
48
3.2.2.1 ProsedurPenilaian Prosedur yang sedang di SMA Kristoforus I dalam pemberian nilai ulangan pada setiap mata pelajaran adalah sebagai berikut : 1. Siswa/imengerjakanulangan.. 2. Untuklembarjawabkerjaulangansiswadiberikankepadaguru yangbersangkutandenganmatapelajarannya. 3. Guruyangbersangkutanpadamatapelajarantersebut akan mengoreksi jawaban siswa. 4. Nilaiulanganyangsudahkeluarakandimasukankedalambuku
nilai
yangdimilikisekolah. 5. Hasilnilaisiswa/i berupanilaiulanganyang sudah dimasukan kedalam buku nilai akan dibagikan kembali di dalam lembar ulangan yang dikerjakan siswa.
Gambar 3.3FlowchartProsedurPenilaian
49
3.2.2.2Prosedur Penjadwalan Prosedur pembuatan jadwal mata pelajaran untuk kegiatan belajarmengajar bagi siswa/idanguruadalahsebagaiberikut: 1. Stafftata
usahamenyesuaikanjadwalmengajargurudenganjadwal
matapelajaransiswa/i. 2. Apabilaterjadikesamaanjadwalyangterjaditerhadapgurudengansiswa /i dalam satu hari yang sama, maka staff tata usahaakan menyusun ulang jadwaltersebut. 3. Jadwalmatapelajaransiswa/iyang sudahsesuai,staff akanmemberikan informasitersebutkepadasiswa/inya melaluipapaninformasiyangterdapatdisetiapkelas. 4. Siswa/iakanmelihatjadwalmatapelajarantersebut.
50
Gambar 3.4FlowchartProsedurPenjadwalan 3.2.2.3Prosedur Melihat Pengumuman Prosedur pembuatanpengumuman dari Tata Usahayang akan ditunjukan kepada siswa/isebagaiberikut: 1. StaffTata
Usahaakanmembuatkanpengumumanyangbersangkutan
mengenaisekolahkepadasiswa/inya.. 2. StaffTata
Usahamencetakhasil
pengumumanuntuk
dibagikandandiumumkanmelaluipapan pengumumanyangterdapatdisetiapkelas. 3. Siswi akan mencatat dan memberikan pengumuman tersebut kepada orang tua masing – masing.
51
Gambar 3.5FlowchartProsedur Melihat Pengumuman
3.2.2.4Prosedur Orangtua Mengecek Absensi Siswa Prosedur melihat absensi siswadari Tata Usahayang akan ditunjukan kepada orangtuasebagaiberikut: 1. Orangtua datang ke sekolah dan bertemu pihak tata usaha 2. Orangtua meminta data absensi siswa. 3. Tata usaha menampilkan absensi siswa. 4. Orangtua mendapatkan data absensi siswa
52
Gambar 3.6FlowchartProsedur Mengecek Absensi Siswa
3.2.2.5 Data Flow Diagram (DFD) Sistem Yang Berjalan Pada
subbab
iniakanmenjelaskanmengenaisebuahdiagramcontextdanDiagram Nolyangberhubungan dengansistemyangsedangberjalanpadaSMAKristoforus. 3.2.2.5.1Diagram Contex
ini
53
Gambar 3.7 Diagram Contex 3.2.2.5.2Diagram Nol
54
Gambar 3.8 Diagram Nol 3.2.3 Analisis Kebutuhan User
55
3.2.3.1 Definisi Sistem DalamSubabini
akanmenjelaskanmengenaiMissionStatement,
MissionObjectives,SystemBoundaries,AnalisaUserView.
3.2.3.1.1MissionStatement Tujuan pembuatan sistem akademis untuk layanan siswa/i secara onlinepada sekolah SMA St.Kritoforus adalah untuk memberikan layanan informasi dari seluruh kegiatan seperti hal yang meliputi jadwal pelajaran, absensi, dan nilai ulangan. Aplikasi
layanan
informasi
siswa/i
ditujukan
untuk
meningkatkan kegiatan akademis sekolah serta memberikan informasi bagi orang tua siswa/i tentang kegiatan dan daftar nilai dari anak mereka masing – masing. Dengan dibuatnya sistem ini diharapkan dapat mempermudah serta meningkatkan efektifitas kinerja para guru dan staff tata usaha dalam pengolahan layanan informasi dan mempublikasikan informasi tersebut kepada siswa/i nya.
3.2.3.1.2 MissionObjectives Fungsidarimissionobjectivesadalahuntukmencantumkanda taapa sajayangakandipeliharapadasaatpenggunaanaplikasinantinya.Da ta-data tersebutadalah: - Mengelola(insert,update)datasiswa/i - Mengelola(insert,update)dataguru - Mengelola(insert,update)datajadwalpelajaran - Mengelola(insert,update)datadaftar nilai - Mengelola(insert,update)dataabsensi - Mengelola(insert,update, delete)datapengumuman
3.2.3.1.3 SystemBoundaries System boundaries merupakan batasan dalam layanan
56
informasi akademis siswa pada SMA St. Kristoforus. System boundaries digambarkan pada gambar berikut ini :
Gambar 3.9 System Boundaries Sistem Basis Data yang akan dibuat nantinya akan digunakan oleh bagian – bagian yang berada di System Boundaries, yaitu Guru, Siswa, Tata Usaha dan Sistem Akademis.
3.2.3.2 User Requirements Spetification Dalam subab ini akan menjelaskan tentang data requirements, transaction requirements, dan system requirements.
3.2.3.2.1Data Requirements 1.
Siswa Siswaadalahdatamengenai
seluruhsiswa/idiSMASt.
Kristoforusyang meliputi nomor induk sekolah,nama lengkap,tempattanggal lahir,alamatrumah,nomortelepon, agama, kewarganegaraan,dan NOP. 2.
Guru Guru adalahdatamengenaiparaseluruhgurubaikdari guru tetap
maupun
guru
honoreryangterdapatdiSMASt.
57
Kristoforusyang meliputi nama lengkap, nomor induk guru,
tempat
tanggal
lahir,
alamatrumah,statuspendidikanterakhir, dannomortelepon. 3.
Tata Usaha Tata
usaha
adalah
datamengenaipara
seluruhstafftatausahayang berfungsisebagaipembuatseluruh kebutuhansekolahdimulaidari jadwalpelajaran,absensisiswa/i,danlain Dandatamengenaitata lengkap,
lain.
usahaantaralainmeliputinama
alamatrumah,nomor
pegawai,
dannomortelepon. 4.
Mata Pelajaran Mata pelajaran adalah data mengenai mata pelajaran yang terdapat dan diajarkan di SMA St. Kristoforus yang meliputi nama pelajaran dan status pelajaran.
5.
Jadwal Pelajaran Jadwal pelajaran adalah data mengenai jadwal pelajaran selama tahun pelajaran berlangsung yang meliputi kode mata pelajaran, nama mata pelajaran, hari dan shift pelajaran.
6.
Kelas Kelas adalah data mengenai tentang ruang kelas yang ada saat ini ada di dalam bangunan SMA St. Kristoforus yang meliputi nama kelas dan jumlah siswa.
7.
Nilai Nilai adalah data mengenai nilai siswa yang meliputi nama siswa, nomor induk siswa, kelas, mata pelajaran, dan nilai ulangan.
8.
Absensi Absensi adalah data mengenai kehadiran para siswa/i yang meliputi hari, nama siswa, dan nomor induk siswa.
9.
Pengumuman
58
Pengumuman
adalah
data
mengenai informasi –
informasi yang berhubungan dengan sekolah yang akan diumumkan kepada para siswa. 10. Kritik dan Saran Kritik dan Saran adalah data mengenai kritikan dan saran dari siswa untuk guru yang bersangkutan.
3.2.3.2.2Transaction Requirements 1.Data Entry atau Insert a. Entry data Siswa b. Entry data Guru c. Entry data Tata Usaha d. Entry data Mata Pelajaran e. Entry data Jadwal Pelajaran f. Entry data Kelas g. Entry data Nilai h. Entry data Absensi i. Entry data Pengumuman j. Entry data Kritik dan Saran 2. Data Update a. Update data Siswa b. Update data Guru c. Update data Tata Usaha d. Update data Mata Pelajaran e. Update data Jadwal Pelajaran f. Update data Kelas g. Update data Nilai
59
h. Update data Absensi i. Update data Pengumuman j. Update data Kritik dan Saran 3. Data Query a. Melihat data siswa/i pada kelas yang bersangkutan dengan tahun ajaran yang sedang berjalan. b. Melihat data orang tua dari siswa/i yang bersangkutan dengan tahun ajaran yang sedang berjalan. c. Melihat data guru pada tiap mata pelajaran pada tahun ajaran yang sedang berjalan. d. Melihat data staff tata usaha yang e. Melihat data nama dan status mata pelajaran pada tiap kelas yang bersangkutan. f. Melihat detail data jadwal pelajaran pada tiap kelas. g. Melihat list kelas pada tiap jenjang ajaran baru. h. Melihat detail nilai ulangan siswa tiap mata pelajaran yang bersangkutan. i. Melihat
data
absensi
harian
pada
siswa/i
yang
bersangkutan. j. Melihat pengumuman dan informasi yang diberikan dari sekolah.
3.2.3.2.3System Requirements 1. DatabaseAwal Membutuhkan
suatusistembasisdata
terintegrasiyangmampu tua
siswa/i,jadwal
awal
yang
menampungdatasiswa/i,guru,orang pelajaran,sertaseluruhdata-data
yangdiperlukandalamaplikasisistemyangberjalanini.
60
2. Jumlah dan tipe recordyang dicari a. Dapat melakukan pencarian data Siswa b. Dapat melakukan pencarian data Guru c. Dapat melakukan pencarian data Tata Usaha d. Dapat melakukan pencarian data Mata Pelajaran e. Dapat melakukan pencarian data Jadwal Pelajaran f. Dapat melakukan pencarian data Kelas g. Dapat melakukan pencarian data Nilai h. Dapat melakukan pencarian data Absensi 3. Security a. Jaminan keamaan pada database yang tidak dapat diakses oleh seseorang yang tidak bertanggung jawab karena dibutuhkan username dan password jika ingin mangaksesnya. b. Setiap pengguna sistem mempunyai hak akses yang sesuai dengan kebutuhkan data masing – masing user. 4. Jaringan Penggunaan
sistem
terhubung
dengan
aman
yang
membutuhkan jaringan internet sesuai dengan kebutuhkan akses dari masing – masing user. 5. Backup dan Recorvery Backup dan Recorvery dapat dilakukan pada setiap akhir bulan
untuk
mencegah
terjadinya
kerusakan
atau
penggantian data. 6. Performance Penggunaan Sistem Database yang akan berjalan atau berfungsi dengan baik saat akan digunakan oleh pengguna.
3.2.4Permasalahan yang Dihadapi Permasalahan yang dihadapi SMA St. Kristoforus antara lain : 1. Orang tua siswa/i tidak dapat mengecek absensi jika tidak mengunjungi atau menghubungi sekolah.
61
2. Kesulitan dalam melakukan pengecekaan data. 3. Pencarian suatu data yang dapat memakan waktu. 4. Pengolahan data tidak up to date dan sulit di-updatekarena tidak adanya sistem yang dapat melakukan pengelolaan data. 5. Keamanan dan ketahanan data sangat rendah, karena dokumen fisik yang berisi data milik sekolah dapat hilang atau rusak.
3.2.5Alternatif Pemecahan Masalah Usulan pemecahan masalah yang ditawarkan untuk mengatasi masalah yang dihadapi adalah : 1. Melakukan perancangan sistem akademis yang terkomputerisasi dan menggunakan basis data sehingga pengguna bisa mendapatkan informasi yang dibutuhkan dengan cepat karena data tersimpan pada basis data secara terkomputerisasi. 2. Melakukan perancangan sistem akademis yang terkomputerisasi dan mendukung kegiatan transaksi absensi, jadwal pelajaran, dan nilai ulangan. 3. Melakukan perancangan basis data menggunakan SQL Server sehingga penyimpanan data di SMA St. Kristoforus bersifat jangka panjang dan tidak mudah hilang. 4. Merancang aplikasi basis data berbasis web yang menyajikan informasi dan memberikan kemudahan dalam pelayanan akademis.
3.3PerancanganSistemBasisData Perancangan basis datayangdirancang untuk SMA Kristoforusdibagi menjaditigatahapan,yaitu: 1. Perancanganbasisdatakonseptual(conceptualdatabasedesign) 2. Perancanganbasisdatalogical(logicaldatabasedesign) 3. Perancanganbasisdatafisikal(physicaldatabasedesign)
3.3.1PerancanganBasisDataKonseptual
62
Perancangan
basisdatakonseptualadalahsuatuprosespembentukan
modelyangberasaldariinformasiyangdigunakandalamsekolahyangbersifat independentdarikeseluruhanaspekfisik.Adabeberapalangkahpenting dalamperancanganbasisdatakonseptualyaitu: 1. Mengidentifikasitipeentitas 2. Mengidentifikasitiperelationship 3. Mengidentifikasi danmengasosiasikanatributsesuaidengantipeentitasdanrelationship 4. Menentukandomainatribut 5. Menentukanatribbutcandidatedanprimarykey 6. Mempertimbangkanpenggunaankonsepenhancemodeling(opsional) 7. Memeriksamodelterhadapredudansi 8. Mem-validasikanmodelkonseptuallokaldenganusertransaction 9. Me-reviewmodeldatakonseptuallokalterhadapkebutuhanuser
3.3.1.1MengidentifikasiTipeEntitas Tujuandarimengidentifikasi tipeentitasuntukmengidentifikasi tipetipeentitasutamayangdibutuhkanterkaitdengansystem.
Table3.1:TableEntitas No
Nama Entitas
1
2
Siswa
Guru
Uraian Orang – orang
Alias Murid
Kejadian Setiap siswa yang
yang belajar di
menerima ilmu atau
SMA Kristoforus
pelajaran dari guru
Orang – orang
Pengaj
Setiap guru
yang mengajar di
ar
memberikan materi
SMA Kristoforus
dan juga memberikan penilaian akademik kepada siswa
3
Tata Usaha
Orang – orang yang menangani
Staff
Tata Usaha yang mengatur pembagian
63
masalah dan
kelas, jadwal
sistem yang
pelajaran, dan semua
berjalan di SMA
yang bersangkutan
Kristoforus
dengan kegiatan belajar mengajar
4
Mata
Mata pelajaran
Pelajar
Mata pelajaran yang
Pelajaran
yang diajarkan
an
diterima siswa
oleh guru – guru terkait yang tersedia di SMA Kristoforus 5
Jadwal
Tabel yang berisi
Jadwal
Setiap jadwal pelajaran
Pelajaran
jadwal tentang
Belajar
memiliki jadwal
mata pelajaran
tersendiri pada setiap
yang disiapkan
kelas
untuk proses belajar mengajar di SMA Kristoforus 6
Kelas
Tabel yang berisi
Ruang
Setiap siswa memiliki
data mengenai
Belajar
kelas masing – masing
Tabel yang berisi
Hasil
Setiap siswa memiliki
nilai ulangan
Belajar
nilai ulangan per mata
kelas yang terdapat di SMA Kritoforus 7
Nilai
setiap siswa pada
pelajaran yang
tiap mata
diajarkan
pelajaran 8
Absensi
Tabel yang berisi
Kehadi
Setiap siswa memiliki
tentang
ran
absensi masing -
kehadiran siswa di SMA
masing
64
Kristoforus 9
Pengumum
Merupakan tabel
Inform
Sekolah memiliki
an
yang berisi
asi
pengumuman yang
beragam
berbeda – beda untuk
informasi yang
kegiatan
berhubungan
persekolahannya
dengan SMA Kristoforus 10
Kritik dan
Merupakan tabel
Saran
Sekolah memiliki
Saran
yang berisi
kritik dan saran dari
tentang kritikan
murid untuk guru yang
dan saran dari
sifatnya tertutup
murid untuk guru di SMA Kristoforus
3.3.1.2MengidentifikasiTipeRelationship Padababinibertujuansebagaimengidentifikasihubungan-hubungan yagpentingdanyangterdapatditiap-tiapentitas.Langkahlangkapentingdalamidentifikasitiperelationaladalah: 1. MembuatERD 2. Menentukanpembatasmultiplicitydaritiperelational
Table3.2:TableTipe Relationship Nama Field
Multipli
Relationship
Nama Entitas
city Siswa
Multiplic ity
1...*
Memiliki
Kelas
1...1
1...*
Memiliki
Absensi
1...*
1...*
Mendapatkan
Nilai
0...*
65
Guru
1...*
Memberi
Saran
0...*
1...*
Menerima
Pengumuman
0...*
1...1
Mengajar
Mata
1...*
Pelajaran
Guru 1...1
Memberikan
Nilai
0...*
1...1
Menerima
Saran
0...*
Kelas
1...1
Memiliki
Absensi
1...*
Mata
1...1
Mempunyai
Nilai
0...*
1...*
Mempunyai
Mata
1...*
Pelajaran Jadwal Pelajaran Tata Usaha
Pelajaran 1...1
Membuat
Kelas
1...*
1...1
Mengatur
Absensi
1...*
1...1
Membuat
Jadwal
1...*
Pelajaran 1...1
Membuat
Pengumuman
1...*
66
Gambar3.10:ERD Tipe Relationship
67
3.3.1.3MengidentifikasiAttribute
Table3.3:Entitas Siswa Entity
Attribute
Description
Data Type
Name Siswa
Nul Multiv
& Lenght
ls
alue
NIS
Nomor Induk Siswa
Char(5)
No
No
Nama
Nama Siswa
Varchar(30)
No
No
Password
Suatu Kode Akses
Varchar(20)
No
No
Perorangan untuk Mengakses Sistem KelasID
Kode Kelas
Char(1)
No
No
NamaKelas
Nama Kelas
Varchar(8)
No
No
Alamat
Alamat Rumah
Varchar(255 No
No
Siswa
)
JenisKelami Jenis Kelamin Siswa
Char(1)
No
No
Varchar(12)
Ye
Yes
n NoTelp
Nomor Telepon Siswa
s
Agama
Agama Siswa
Varchar(8)
No
No
TempatLahi
Tempat Kelahiran
Varchar(30)
No
No
r
Siswa
TanggalLah
Tanggal Kelahiran
Date
No
No
ir
Siswa
NoKTP
Nomor KTP Orang
Char(16)
No
No
Varchar(30)
No
No
Varchar(50)
No
No
Varchar(12)
Ye
Yes
Tua Siswa NamaOrang Nama Orang Tua Tua
Siswa
AlamatOran Alamat Orang Tua gTua
Siswa
NoTelpOra
No Telepon Orang
ngTua
Tua
AgamaOran Agam Orang Tua
s Varchar(8)
No
No
68
gTua
Siswa
NoPekerjaa
Kode Pekerjaan
n
Orang Tua Siswa
Char(3)
No
No
No
No
Char(1)
No
No
Varchar(3)
No
No
NamaPekerj Nama Pekerjaan dari Varchar(20) aan
Kode Pekerjaan
NoPendidik
Kode Pendidikan
an
Terakhir Orang Tua
NamaPendi
Pendidikan Terakhir
dikan
dari Kode Pendidikan
Table3.4:Entitas Guru Entity
Attribute
Description
Data Type
Name Guru
Nul Multiv
& Lenght
ls
alue
NIG
Nomor Induk Guru
Char(4)
No
No
NamaGuru
Nama Guru
Varchar(30)
No
No
Password
Suatu Kode Akses
Varchar(20)
No
No
Varchar(255 No
No
Perorangan untuk Mengakses Sistem Alamat
Alamat Guru
) Jenis
Jenis Kelamin Guru
Char(1)
No
No
Nomor Telepon
Varchar(12)
Ye
Yes
Kelamin NoTelp
Guru
s
Agama
Agama Guru
Varchar(8)
No
No
Tanggal
Tanggal Kelahiran
Date
No
No
Lahir
Guru
Tempat
Tempat Kelahiran
Varchar(30)
No
No
Lahir
Guru
NoPendidik
Kode Pendidikan
Char(1)
No
No
69
an
TerakhirGuru
NamaPendi
Pendidikan Terakhir
dikan
dari Kode
Varchar(3)
No
No
Pendidikan
Table3.5:Entitas Tata Usaha Entity
Attribute
Description
Data Type
Name Tata
Nul Multiv
& Lenght IDTU
Nomor Induk Staff
ls
alue
Char(4)
No
No
Varchar(30)
No
No
Varchar(20)
No
Nos
Char(1)
No
No
No
Tata Usaha
Usaha NamaTU
Nama Staff Tata Usaha
Password
Suatu Kode Akses Perorangan untuk Mengakses Sistem
JenisKelami Jenis Kelamin Staff n
Tata Usaha
Alamat
Alamat Staff Tata
Varchar(255 No
Usaha
)
Nomor Telepon
Varchar(12)
NoTelp
Staff Tata Usaha Agama
Agama Staff Tata
Ye
Yes
s Varchar(8)
No
No
Date
No
No
Varchar(30)
No
No
Char(4)
No
No
Usaha TanggalLah
Tanggal Kelahiran
ir
Staff Tata Usaha
TempatLahi Tempat Kelahiran r
Staff Tata Usaha
NoPegawai
No Pegawai Staff Tata Usaha
70
Table3.6:Entitas Mata Pelajaran Entity
Attribute
Description
Data Type
Name
& Lenght
Mata
PelajaranID
Kode Mata Pelajaran Char(3)
Pelaja
NamaPelaja Nama Mata
ran
ran
Nul Multiv ls
alue
No
No
Varchar(15)
No
No
Varchar(7)
No
No
Pelajaran
StatusPelaja Status Mata ran
Pelajaran Berdasarkan Kelas
Table3.7:Entitas Jadwal Pelajaran Entity
Attribute
Description
Data Type
Name
& Lenght
Jadwa
PelajaranID
Kode Mata Pelajaran Char(3)
l
NamaPelaja Nama Mata
Pelaja
ran
Pelajaran
ran
hariID
Kode Hari Jadwal
Nul Multiv ls
alue
No
No
Varchar(15)
No
No
Char(1)
No
No
Varchar(6)
No
No
Char(1)
No
No
Varchar(5)
No
No
Pelajaran NamaHari
Nama Hari Jadwal Pelajaran
shiftID
Kode Shift Mata Pelajaran
Jam
Jam Tiap Mata Pelajaran
Table3.8:Entitas Kelas Entity
Attribute
Description
Name Kelas
Data Type & Lenght
Nul Multiv ls
alue
KelasID
Kode Kelas
Char(1)
No
No
NamaKelas
Nama Kelas
Varchar(8)
No
No
71
StatusKelas
Status Kejurusan
Varchar(7)
No
No
No
No
Kelas JumlahSisw
Jumlah Siswa Dalam Int
a
Kelas
Table3.9:Entitas Absensi Entity
Attribute
Description
Data Type
Name
& Lenght
Nul Multiv ls
alue
Absen AbsensiID
Kode Absensi
Char(8)
No
No
si
Status Absensi
Char(1)
No
No
Date
No
No
Status
Siswa Tanggal
Tanggal Absensi Siswa
Table3.10:Entitas Nilai Entity
Attribute
Description
Name Nilai
Data Type & Lenght
UlanganID
Kode Ulangan Mata
Nul Multiv ls
alue
Varchar(16) No
No
Date
No
No
Int
No
No
Pelajaran TanggalUla
Tanggal Ulangan
ngan
Berlangsung
Nilai
Nilai Ulangan Siswa
Table3.11 :Entitas Pengumuman Entity
Attribute
Description
Name Pengu
Pengumum
Kode Pengumuman
muma
anId
Sekolah
n
detailPengu
Isi Pengumuman
muman
Sekolah
Data Type
Nul Multiv
& Lenght
ls
alue
Varchar(15)
No
No
Text
No
No
72
Table3.12:Entitas Saran Entity
Attribute
Description
Name
Data Type & Lenght
Saran
Null Multiv s
alue
SaranId
Kode Saran
Varchar(15) No
No
IsiSaran
Isi Saran Siswa
Text
No
No
Date
No
No
Kepada Guru Tanggal
Tanggal Saran Dibuat
3.3.1.4MenentukanDomain Attribute Atribut domain adalah kumpulan nilai yang diperbolehkan untuk satu atau lebih atribut. Setiap atribut di dalam relasi ditetapkan dalam domain. Berdasarkan hasil penentuan atribut maka didapat domain atribut sebagai berikut : Table3.13:Domain Attribute Siswa Entity
Attribute
Name Siswa
Data Type
Domain Attribute
& Lenght NIS
Char(5)
Harus berupa angka dengan maksimal 10 karakter
Nama
Varchar(30)
Terdiridari variasihuruf maksimal30 karakter
Password
Varchar(20)
Terdiridari variasihuruf dan angkamaksimal20 karakter
KelasID
Char(1)
Terdiridari variasihuruf dan angkamaksimal5karakter
NamaKelas
Varchar(8)
Terdiri dari variasi huruf dan angka maksimal 8 karakter
73
Alamat
Varchar(255 Terdiridari variasihuruf )
dan angkamaksimal30 karakter
JenisKelamin
Char(1)
Terdapat 2 pilihan yaitu ‘L’ atau ‘P’
NoTelp
Varchar(12)
Terdiridari variasiangkamaksimal15ka rakter
Agama
Varchar(8)
Terdiridari variasihuruf maksimal15karakter
TempatLahir
Varchar(30)
Terdiridari variasihuruf dan angkamaksimal30 karakter
TanggalLahir
Date
Terdiri dari karakter tanggal yaitu DD-MMYYYY
NoKTP
Char(16)
Terdiridari variasiangkamaksimal10 karakter
NamaOrangTua
Varchar(30)
Terdiridari variasihuruf maksimal30 karakter
AlamatOrangTua
Varchar(50)
Terdiridari variasihuruf dan angkamaksimal30 karakter
NoTelpOrangTua
Varchar(12)
Terdiridari variasiangkamaksimal15ka rakter
AgamaOrangTua
Varchar(8)
Terdiridari variasihuruf maksimal15karakter
NoPekerjaan
Char(3)
Terdiridari variasihuruf dan angkamaksimal3karakter
74
NamaPekerjaan
Varchar(30)
Terdiridari variasihuruf dan angkamaksimal30 karakter
NoPendidikan
Char(1)
Terdiridari variasihuruf dan angkamaksimal4karakter
NamaPendidikan
Varchar(3)
Terdiridari variasihuruf dan angkamaksimal11karakter
Table3.14:Domain Attribute Guru Entity
Attribute
Data Type
Name Guru
Domain Attribute
& Lenght NIG
Char(4)
Harus berupa angka dengan maksimal 8 karakter
NamaGuru
Varchar(30)
Terdiridari variasihuruf maksimal30 karakter
Password
Varchar(20)
Terdiridari variasihuruf dan angkamaksimal20 karakter
Alamat
Varchar(255 Terdiridari variasihuruf )
dan angkamaksimal30 karakter
JenisKelamin
Char(1)
Terdapat 2 pilihan yaitu ‘L’ atau ‘P’
NoTelp
Varchar(12)
Terdiridari variasiangkamaksimal15 karakter
Agama
Varchar(8)
Terdiridari variasihurufmaksimal15
75
karakter TanggalLahir
Date
Terdiri dari karakter tanggal yaitu DD-MMYYYY
TempatLahir
Varchar(30)
Terdiridari variasihuruf dan angkamaksimal30 karakter
NoPendidikan
Char(1)
Terdiridari variasihuruf dan angkamaksimal4karakter
NamaPendidikan
Varchar(3)
Terdiridari variasihuruf dan angkamaksimal11karakter
Table3.15:Domain Attribute Tata Usaha Entity
Attribute
Data Type
Name Tata
Domain Attribute
& Lenght IDTU
Char(4)
Usaha
Harus berupa angka dengan maksimal 4 karakter
NamaTU
Varchar(30)
Terdiridari variasihuruf maksimal30 karakter
Password
Varchar(20)
Terdiridari variasihuruf dan angkamaksimal20 karakter
Jenis Kelamin
Char(1)
Terdapat 2 pilihan yaitu ‘L’ atau ‘P’
Alamat
Varchar(255 Terdiridari variasihuruf )
dan angkamaksimal50 karakter
NoTelp
Varchar(12)
Terdiridari
76
variasiangkamaksimal12ka rakter Agama
Varchar(8)
Terdiridari variasihurufmaksimal8kar akter
TanggalLahir
Date
Terdiri dari karakter tanggal yaitu DD-MMYYYY
TempatLahir
Varchar(30)
Terdiridari variasihuruf dan angkamaksimal30 karakter
NoPegawai
Char(4)
Terdiridari variasiangkamaksimal4kar akter
Table3.16:Domain Attribute Mata Pelajaran Entity
Attribute
Name Mata
Data Type
Domain Attribute
& Lenght PelajaranID
Char(3)
Terdiridari variasihuruf
Pelajara
dan
n
angkamaksimal5karakter NamaPelajaran
Varchar(15)
Terdiridari variasihuruf dan angkamaksimal15 karakter
StatusPelajaran
Varchar(7)
Berisi tentang IPA/IPS/GENERAL
Table3.17:Domain Attribute Jadwal Pelajaran Entity Name
Attribute
Data Type & Lenght
Domain Attribute
77
Jadwal
PelajaranID
Char(3)
Terdiridari variasihuruf
Pelajara
dan
n
angkamaksimal5karakter NamaPelajaran
Varchar(15)
Terdiridari variasihuruf dan angkamaksimal15 karakter
hariID
Char(1)
Terdiridari variasihuruf dan angkamaksimal15karakter
NamaHari
Varchar(6)
Terdiridari variasihuruf maksimal7 karakter
shiftID
Char(1)
Berisi shift jam pelajaran (1-7)
Jam
Varchar(5)
Terdiridari variasihuruf dan angkamaksimal15karakter
Table3.18:Domain Attribute Kelas Entity
Attribute
Name Kelas
Data Type
Domain Attribute
& Lenght KelasID
Char(1)
Terdiridari variasihuruf dan angkamaksimal5karakter
NamaKelas
Varchar(8)
Terdiridari variasihuruf dan angkamaksimal8 karakter
StatusKelas
Varchar(7)
Terdiridari variasihuruf dan angkamaksimal7karakter
JumlahSiswa
Int
Harus berupa angka
78
Table3.19:Domain Attribute Absensi Entity
Attribute
Name
Data Type
Domain Attribute
& Lenght
Absensi AbsensiID
Char(8)
Berisi kombinasi 2 digit tanggal, 2 digit bulan, dan 6 digit kelas Contoh 120312IPA3
Status
Char(1)
Terdiri dari 1 alfabet berupa A,I,S
Tanggal
Date
Terdiri dari karakter tanggal yaitu DD-MMYYYY
Table3.20:Domain Attribute Nilai Entity
Attribute
Name Nilai
Data Type
Domain Attribute
& Lenght UlanganID
Varchar(16) Terdiridari variasihuruf dan angkamaksimal16karakter
TanggalUlangan
Date
Terdiri dari karakter tanggal yaitu DD-MMYYYY
Nilai
Int
Harus berupa angka
Table3.21:Domain Attribute Pengumuman Entity
Attribute
Name Pengu muman
Data Type
Domain Attribute
& Lenght PengumumanId
Varchar(15)
Terdiridari variasihuruf dan
79
angkamaksimal8karakter detailPengumuma Text
Terdiridari variasihuruf
n
dan angkamaksimal300 karakter
Table3.22:Domain Attribute Saran Entity
Attribute
Data Type
Name Saran
Domain Attribute
& Lenght SaranId
Varchar(15) Terdiridari variasihuruf dan angkamaksimal5karakter
IsiSaran
Text
Terdiridari variasihuruf dan angkamaksimal300 karakter
Tanggal
Date
Terdiri dari karakter tanggal yaitu DD-MMYYYY
3.3.1.5MenentukanKandidat dan Primary Key Tiap Entitas Menetukan candidate key untuk setiap entitas dan jika ada lebih dari satu candidate key, pilih salah satu dari candidate key tersebut untuk menjadi primary key sebagai berikut:
Table3.23:Atribut Candidate Key dan Primary Key Entity Name
Candidate Key
Primary Key
Siswa
NIS
NIS
Nama Guru
NIG
NIG
80
NamaGuru Tata Usaha
IDTU
IDTU
NoPegawai Mata Pelajaran
PelajaranID
PelajaranID
Jadwal Pelajaran
PelajaranID
PelajaranID
shiftID Kelas
KelasID
KelasID
NamaKelas Absensi
AbsensiID
AbsensiID
Nilai
UlanganID
UlanganID
Pengumuman
PengumuanId
PengumumanId
Saran
SaranId
SaranId
81
Gambar3.11:ERD Dengan Primary Key 3.3.1.6Mempertahankan Pengguna Konsep Enhanced Modeling Tahap ini merupakan tahap pertimbangan untuk penggunaan konsep Enhanced Modeling seperti spesialisasi atau generalisasi, agregasi, dan komposisi.ERD yang telah dibuat tidak terdapat ketiga hal tersebut, sehingga tahap ini tidak dilakukan.
3.3.1.7Memeriksa Model Terhadap Redudansi Tujuandaritahapini
adalahuntukmemeriksaadaatautidaknya
82
redundancy. Kegiatan yang dilakukan pada tahap ini adalah sebagai berikut: 1. Re-examinateone-to-one(1:1) Langkahinidilakukanuntukmenghindariduaentitasyangmewakili obyek yang sama, sehingga kedua entitas tersebut harus digabung menjadisatuRemoveRedudantRelationship.Dalammodelinitidakada relasiyangmerepresentasikanobyekyangsama.Langkah
ini
dilakukan bila ada informasi yang sama yang bisa didapatkan memalui
relasi
yang
berbeda.
Tujuannya
adalah
untuk
mendapatmodeldatayangsama.Dalammodelinitidakterdapatrelasi yangredudant. 2.
Hapus relasi yang redundant Suatu relasi dikatakan redundant apabila informasi yang sama dapat diperoleh dari hubungan lain. Pada kasus ini, tidak terdapat relasi yang redundant.
3.3.1.8Validasimodeldengantransaksiuser Tujuantahapiniadalahuntukmemastikanbahwamodel konseptualinimendukungtransaksi-transaksiyangdiperlukanoleh pengguna.Pendekatanyangdigunakandalamlangkahini pathawaytransaksiyang
menggunakan
bertujuanuntukmemastikanmodelkonseptual
localmendukungtransaksiyangdiperlukanolehuser.Dalamtahapvalidasim odelkonseptualdengantransaksiuserini rancanganentityrelationshipyang sudahdibuatdicocokandengandata queriesyangtelahdisebutkansebelumnya : 1. DataSiswa 2. DataGuru 3. DataTata Usaha 4. DataMata Pelajaran 5.DataJadwal Pelajaran 6. DataKelas 7. DataNilai
83
8. DataAbsensi 9. DataPengumuman 10. DataKritik dan Saran
Gambar3.12:Model Konseptual denganPathway Transaksi User
Dalamgambardiatasiniakanmejelaskantransaksi: a.
List detail data Siswa pada Kelas yang bersangkutan berdasarkan tahunajaranyangsedangberjalan.
84
b.
ListdetaildataNilaipadaSiswaberdasarkan tahunakademikyang berlangsung.
c. ListdetaildataAbsensipadaSiswa. d.ListdetaildataJadwalPelajaranpadaKelas. e. ListdetaildataMataPelajaranpadaSiswa. f. SiswadapatmelihatlistdetailSaran padadataGuruyang bersangkutan.
3.3.1.9MelihatKembaliDataModelKonseptualdenganPengguna Peninjauankembalidilakukanuntuk
memastikanbahwa
model
konseptualsudahmencakupsemuakebutuhandata
sekolah.Model
konseptualdiatassudahmeliputidiagramERdan
dokumenyang
mendukungreprensentasidatamodel.
3.3.2PerancanganBasisDataLogical Modeldenganmenggunakaninformasiyangdiperolehdarisekolah dimana model data konseptual yang telah dibuat sebelumnya diperluas dan dipetakanpadamodeldatalogikal.
3.3.2.1Hilangkanfitur-fituryangtidakkompetibel Dalammenghilangkanfituryangtidakkompetibeldenganmodel relational maka langkah-langkah yang akan digunakan antara lain:
1. Menghilangkanmanytomany(*:*)binaryrelationshiptypes Caraadalahdigantikandenganduahubungansatukebanyak(1:*)
85
Gambar3.13:Menghilangkanhubungan*:*SiswadanAbsensi
2. MenghilangkanattributeMultivalue Caranyaadalahdenganmenjadikanentitasbaru Pada Table JadwalPelajaran
Gambar3.14:Menghilangkan attribute Multivalue pada Table JadwalPelajaran
3.3.2.2BentukTableatauRelasiuntukModelDataLogikal Tujuandantahapiniadalahuntukmembuatrelasiuntukmodel datalogical yang digunakan menampilkan entitas, relasi, danattribute yangtelahdidefinisikasipadatahapkonseptual. 1. StrongEntityTypes Strong Entity 1
Siswa (NIS, Nama, Password, KelasID, NamaKelas, Alamat, JenisKelamin, NoTelp, Agama, Kewarganegaraan, TempatLahir, TanggalLahir, NoKTP, NamaOrangTua, AlamatOrangTua, NoTelpOrangTua, AgamaOrangTua,
86
Kewarganegaraan, NoPekerjaan, NamaPekerjaan, NoPendidikan, NamaPendidikan) Primary Key : NIS 2
Guru (NIG, NamaGuru, Password, Alamat, JenisKelamin, NoTelp, Agama, Kewarganegaraan, TanggalLahir, TempatLahir, NoPendidikan, NamaPendidikan) Primary Key : NIG
3
TataUsaha (IDTU, NamaTU, Password, JenisKelamin, Alamat, NoTelp, Agama, Kewarganegaraan,TanggalLahir, TempatLahir, NoPegawai) Primary Key : IDTU
4
MataPelajaran (PelajaranID, NamaPelajaran, StatusPelajaran) Primary Key : PelajaranID
5
JadwalPelajaran (PelajaranID, NamaPelajaran, hariID, NamaHari, ShiftID, Jam) Primary Key : PelajaranID
6
Kelas (KelasID, NamaKelas, StatusKelas, JumlahSiswa) Primary Key : KelasID
7
Absensi (AbsensiID, Status, Tanggal) Primary Key : AbsensiID
8
Nilai (UlanganID, TanggalUlangan, Nilai) Primary Key : UlanganID
9
Pengumuman (PengumumanId, detailPengumuman) Primary Key : PengumumanId
10
Saran (SaranID, IsiSaran, Tanggal) Primary Key : SaranID
2. Weak Entity Types Weak Entity 1
Pendidikan(NoPendidikan,NamaPendidikan)
87
Primary Key : NoPendidikan 2
Pekerjaan(NoPekerjaan, NamaPekerjaan) Primary Key : NoPekerjaan
3
Shift (ShiftID, Jam) Primary Key : ShiftID
4
Hari (hariID, NamaHari) Primary Key : hariID
3. OnetoMany(1:*)BinaryRelationshipTypes Untukrelasi1:*,entitasyangbernilai‘1’ditentukansebagaientitas parent,sedangkanentitasyangbernilai‘*’ditentukansebagaientitaschild. Untukmembuatrelasinya,attributeprimarykeydariparentdi-copyke entitaschilddanberfungsisebagaiforeignkey. a. Hubungan Siswa dengan Kelas PostSiswadanKelaspadamodelrelasimemiliki1:*
Siswa(NIS, Nama, Password,
Kelas(KelasID, NamaKelas,
KelasID, NamaKelas,Alamat,
StatusKelas, Jumlah Siswa)
JenisKelamin, NoTelp, Agama,
TempatLahir,
TempatLahir, TanggalLahir, NoKTP, Primary Key : KelasID NamaOrangTua, NoTelpOrangTua,
Foreign Key : NIS
AgamaOrangTua, AlamatOrangTua,
Reference Siswa (NIS)
NoPekerjaan, NamaPekerjaan, NoPendidikan, NamaPendidikan) Primary Key : NIS
b. Hubungan Guru dengan Nilai PostGurudanNilaipadamodelrelasimemiliki1:*
88
Guru(NIG, NamaGuru, Password,
Nilai(UlanganID,
Alamat, JenisKelamin, NoTelp,
TanggalUlangan, Nilai)
Agama, TanggalLahir,
Primary Key : UlanganID
TempatLahir, NoPendidikan,
Foreign Key : NIG
NamaPendidikan)
Reference Guru (NIG)
Primary Key : NIG c. Hubungan Guru dengan Saran PostGurudanSaranpadamodelrelasimemiliki1:*
Guru(NIG, NamaGuru, Password,
Saran(SaranID, IsiSaran,
Alamat, JenisKelamin, NoTelp,
Tanggal)
Agama, Kewarganegaraan,
Primary Key : SaranID
TanggalLahir, TempatLahir,
Foreign Key : NIG
NoPendidikan, NamaPendidikan)
Reference Guru (NIG)
Primary Key : NIG
d. Hubungan Guru dengan MataPelajaran PostGurudanMataPelajaranpadamodelrelasimemiliki1:*
Guru(NIG, NamaGuru, Password, MataPelajaran(PelajaranID, Alamat, JenisKelamin, NoTelp,
NamaPelajaran,
Agama, TanggalLahir,
StatusPelajaran)
TempatLahir, NoPendidikan,
Primary Key : PelajaranID
NamaPendidikan)
Foreign Key : NIG
Primary Key : NIG
Reference Guru (NIG)
89
e. Hubungan Kelas dengan Absensi PostGurudanSaranpadamodelrelasimemiliki1:*
Kelas(KelasID, NamaKelas,
Absensi(AbsensiID, Status,
StatusKelas, JumlahSiswa)
Tanggal)
Primary Key : Kelas ID
Primary Key : AbsensiID
Foreign Key : NIS
Foreign Key : KelasID
Reference Siswa (NIS)
Reference Kelas (KelasID)
f. Hubungan MataPelajaran dengan Nilai PostMataPelajarandanNilaipadamodelrelasimemiliki1:*
MataPelajaran(PelajaranID,
Nilai(UlanganID,
MataPelajaran, StatusPelajaran)
TanggalUlangan, Nilai)
Primary Key : PelajaranID
Primary Key : UlanganID Foreign Key : NIG Reference Guru (NIG) Foreign Key : PelajaranID Reference MataPelajaran (PelajaranID)
g. Hubungan Tata Usaha dengan Kelas PostTata UsahadanKelaspadamodelrelasimemiliki1:*
TataUsaha(IDTU, NamaTU,
Kelas(KelasID, NamaKelas,
90
Password, Alamat, JenisKelamin,
StatusKelas, Jumlah Siswa)
NoTelp, Agama,TanggalLahir,
Primary Key : KelasID
TempatLahir, NoPegawai)
Foreign Key : NIS
Primary Key : IDTU
Reference Siswa (NIS) Foreign Key : IDTU Reference TataUsaha (IDTU)
h. Hubungan Tata Usaha dengan Absensi PostTata UsahadanAbsensipadamodelrelasimemiliki1:*
TataUsaha(IDTU, NamaTU,
Absensi(AbsensiID, Status,
Password, Alamat, JenisKelamin,
Tanggal, AbsensiID)
NoTelp, Agama, TanggalLahir,
Primary Key : AbsensiID
TempatLahir, NoPegawai)
Foreign Key : KelasID
Primary Key : IDTU
Reference Kelas (KelasID) Foreign Key : IDTU Reference TataUsaha (IDTU)
i. Hubungan Tata Usaha dengan Jadwal Pelajaran PostTata UsahadanJadwal Pelajaranpadamodelrelasimemiliki1:*
TataUsaha(IDTU, NamaTU,
JadwalPelajaran(PelajaranId,
Password, Alamat, JenisKelamin,
NamaPelajaran, hariID,
NoTelp, Agama, TanggalLahir,
NamaHari, ShiftID, Jam)
TempatLahir, NoPegawai)
Primary Key : PelajaranID
Primary Key : IDTU
Foreign Key : IDTU Reference TataUsaha (IDTU)
91
j. Hubungan Tata Usaha dengan Pengumuman PostTata UsahadanPengumumanpadamodelrelasimemiliki1:*
TataUsaha(IDTU, NamaTU,
Pengumuman
(PengumumanID, Password, Alamat, JenisKelamin,
Detail Pengumuman)
NoTelp, Agama, TanggalLahir,
Primary Key : PengumumanID
TempatLahir, NoPegawai)
Foreign Key : IDTU
Primary Key : IDTU
Reference TataUsaha (IDTU)
4. TipeHubunganBinaryOne-To-One(1:1) Dalammodeldatayangtelahdibanguntidakterdapathubunganone to one disebabkan tidak dapat menentukan entitas parent dan child dalamsuaturelasi.
5. TipeHubunganBinaryMany-To-Many(*:*) a. Hubungan Siswa dengan Absensi PostSiswadanAbsensike dalam Tabel DetailAbsensi
Siswa(NIS, Nama, Password,
Absensi(AbsensiID,
92
KelasID, NamaKelas,Alamat,
Status, Tanggal)
JenisKelamin, NoTelp, Agama,
Primary Key : AbsensiID
TempatLahir, TanggalLahir, NoKTP, Foreign Key : KelasID NamaOrangTua, NoTelpOrangTua,
reference Kelas (KelasID)
AgamaOrangTua, AlamatOrangTua,
Foreign Key : IDTU
NoPekerjaan, NamaPekerjaan,
reference TataUsaha (IDTU)
NoPendidikan, NamaPendidikan)
DetailAbsensi (AbsensiID, NIS, Status) Primary Key : AbsensiID Foreign Key : AbsensiID reference Absensi (AbsensiID) Foreign Key : NIS reference Siswa (NIS)
b. Hubungan Siswa dengan Saran PostSiswadanSaranke dalam Tabel tdSaran
Siswa(NIS, Nama, Password,
Saran(SaranID, IsiSaran,
KelasID, NamaKelas,Alamat,
Tanggal)
JenisKelamin, NoTelp, Agama,
Primary Key : SaranID
TempatLahir, TanggalLahir, NoKTP, Foreign Key : NIG NamaOrangTua, NoTelpOrangTua, AgamaOrangTua, AlamatOrangTua, NoPekerjaan, NamaPekerjaan, NoPendidikan, NamaPendidikan)
reference Guru (NIG)
93
tdSaran (SaranID, NIS, NIG, Tanggal) Primary Key : NIS Foreign Key : SaranID reference Saran (SaranID) Foreign Key : NIS reference Siswa (NIS) Foreign Key : NIG reference Siswa (NIG)
c. Hubungan Siswa dengan Pengumuman PostSiswadanPengumumanke dalam Tabel trPengumuman
Siswa(NIS, Nama, Password,
Pengumuman(PengumumanID,
KelasID, NamaKelas,Alamat,
DetailPengumuman)
JenisKelamin, NoTelp, Agama,
Primary Key : PengumumanID
TempatLahir, TanggalLahir,
Foreign Key : IDTU
NoKTP, NamaOrangTua,
reference TataUsaha(IDTU)
NoTelpOrangTua, AgamaOrangTua, AlamatOrangTua, NoPekerjaan, NamaPekerjaan, NoPendidikan, NamaPendidikan)
trPengumuman (PengumumanID, NIS) Primary Key : PengumumanID Foreign Key : PengumumanID reference Pengumuman (PengumumanID) Foreign Key : NIS reference Siswa (NIS)
94
d. Hubungan Jadwal Pelajaran dengan Mata Pelajaran PostJadwal PelajarandanMata Pelajaranke dalam Tabel TDHeaderTransPelajaran
JadwalPelajaran(PelajaranID,
MataPelajaran(PelajaranID,
NamaPelajaran, HariID, NamaHari,
NamaPelajaran,
ShifID, Jam)
StatusPelajaran)
Primary Key : PelajaranID
Primary Key : PelajaranID
Foreign Key : IDTU reference
Foreign Key : NIG reference
TataUsaha (IDTU)
Guru (NIG)
TDHeaderTransPelajaran (TransPelID, PelajaranID) Primary Key : TransPelID Foreign Key : PelajaranID reference JadwalPelajaran (PelajaranID) Foreign Key : PelajaranID reference MataPelajaran (PelajaranID) Foreign Key : IDTU reference TataUsaha (IDTU) Foreign Key : NIG reference Guru (NIG)
95
6. TipeHubunganKomplek Padatahapinitidakterdapatrelasiyangkompleks,sehinggatidakdapa t dibuatkanTipeHubunganKomplek.
3.3.2.3Memvalidasi Relasi menggunakan Normalisasi Bertujuanuntukmenentukanapakahmodeldata
logikaltidak
terdapatredudansi,konsistendansudahmewakilisistemyangsudah adadisekolah.
1. Siswa Field NIS Nama Password KelasID NamaKelas Alamat JenisKelamin NoTelp Agama TempatLahir TanggalLahir NoKtp NamaOrangTua AlamatOrangTua NoTelpOrangTua AgamaOrangTua NoPekerjaan NamaPekerjaan NoPendidikan NamaPendidikan 1NF Di
dalam
tabel
Siswa
tidak
ditemukan
repeating
groups
sehinggaTableSiswasudahmemenuhi1NF Siswa
(NIS,
Nama,
Password,
KelasID,
NamaKelas,
Alamat,
JenisKelamin, NoTelp, Agama,TempatLahir, TanggalLahir, NoKTP, NamaOrangTua, AlamatOrangTua, NoTelpOrangTua, AgamaOrangTua, NoPekerjaan, NamaPekerjaan, NoPendidikan, NamaPendidikan) 2NF
96
Didalamtabel
Siswa
tidak
ditemukan
partial
dependency
sehinggaTabelSiswasudahmemenuhi2NF
3NF DidalamtableSiswaditemukantransitivedependencysehinggatabelSiswad ipecahdansudahmemenuhi3NF msSiswa (NIS, Nama,Password, Alamat, JenisKelamin, NoTelp, Agama,TempatLahir, TanggalLahir, NOP) msKelas (KelasID, NamaKelas) msOrangTua
(NoKTP,
NoTelpOrangTua,
NamaOrangTua,
AgamaOrangTua,
AlamatOrangTua,
NoPekerjaan,
NamaPekerjaan,
NoPendidikan,NamaPendidikan)
2. Guru Field NIG NamaGuru Password Alamat JenisKelamin NoTelp Agama TempatLahir TanggalLahir NoPendidikan NamaPendidikan 1NF Di
dalam
tabel
Gurutidak
ditemukan
repeating
groups
sehinggaTableGurusudahmemenuhi1NF msGuru (NIG, NamaGuru, Password, Alamat, JenisKelamin, NoTelp, Agama, TanggalLahir, TempatLahir, NoPendidikan, NamaPendidikan)
2NF
97
Didalamtabel
Gurutidak
ditemukan
partial
dependency
sehinggaTabelGurusudahmemenuhi2NF
3NF DidalamtableGuruditemukantransitivedependencysehinggatabel Gurudipecahdansudahmemenuhi3NF msGuru (NIG, NamaGuru, Password, Alamat, JenisKelamin, NoTelp, Agama, TanggalLahir, TempatLahir, NoPendidikan) msPendidikan (NoPendidikan, NamaPendidikan)
3. Tata Usaha Field IDTU NamaTU Password Alamat JenisKelamin NoTelp Agama TempatLahir TanggalLahir NoPegawai 1NF Di
dalam
tabel
TataUsahatidak
ditemukan
repeating
groups
sehinggaTableTataUsahasudahmemenuhi1NF TataUsaha (IDTU, NamaTU, Password, JenisKelamin, Alamat, NoTelp, Agama, TanggalLahir, TempatLahir, NoPegawai)
2NF Didalamtabel
TataUsahatidak
ditemukan
partial
dependency
sehinggaTabelTataUsahasudahmemenuhi2NF
3NF DidalamtabelTataUsahatidakditemukantransitivedependency sehinggatabelTataUsaha tidakdapatdinormalisasihingga3NF
98
4. MataPelajaran Field PelajaranID NamaPelajaran StatusPelajaran 1NF Di dalam tabel MataPelajarantidak ditemukan repeating groups sehinggaTableMataPelajaran sudahmemenuhi1NF msPelajaran (PelajaranID, NamaPelajaran, StatusPelajaran)
2NF Didalamtabel
MataPelajarantidak
ditemukan
partial
dependency
sehinggaTabelMataPelajaransudahmemenuhi2NF
3NF DidalamtabelMataPelajarantidakditemukantransitivedependency sehinggatabelMataPelajaran tidakdapatdinormalisasihingga3NF
5. JadwalPelajaran Field PelajaranID NamaPelajaran HariID NamaHari ShiftID Jam 1NF Di dalam tabel JadwalPelajarantidak ditemukan repeating groups sehinggaTableJadwalPelajaran sudahmemenuhi1NF JadwalPelajaran (PelajaranID, NamaPelajaran, hariID, NamaHari, ShiftID, Jam)
99
2NF Didalamtabel JadwalPelajarantidak ditemukan partial dependency sehinggaTabelJadwalPelajaransudahmemenuhi2NF
3NF DidalamtableJadwalPelajaranditemukantransitivedependencysehinggata bel JadwalPelajarandipecahdansudahmemenuhi3NF JadwalPelajaran (PelajaranID, NamaPelajaran, hariID,ShiftID) msHari (hariID, NamaHari) msShift (ShiftID, Jam)
6. Kelas Field KelasID NamaKelas StatusKelas 1NF Di
dalam
tabel
Kelastidak
ditemukan
repeating
groups
sehinggaTableKelas sudahmemenuhi1NF msKelas (KelasID, NamaKelas,StatusKelas)
2NF Didalamtabel
Kelastidak
ditemukan
partial
sehinggaTabelKelassudahmemenuhi2NF
3NF DidalamtabelKelastidakditemukantransitivedependency sehinggatabelKelas tidakdapatdinormalisasihingga3NF
7. Absensi
dependency
100
Field AbsensiID KelasID IDTU Tanggal 1NF Di
dalam
tabel
Absensitidak
ditemukan
repeating
groups
sehinggaTableAbsensi sudahmemenuhi1NF tdAbsensi (AbsensiID, KelasID, IDTU, Tanggal)
2NF Di dalam tabel Absensi tidak ditemukan partial dependency sehingga tabel Absensisudahmemenuhi2NF
3NF DidalamtableAbsensit i d a k ditemukantransitivedependencysehinggatabel Absensidipecahdansudahmemenuhi3NF
8. Nilai Field UlanganID PelajaranID NIS NIG TanggalUlangan Nilai 1NF Di dalam tabel Nilaitidak ditemukan repeating groups sehingga NilaiAbsensi sudahmemenuhi1NF Nilai (UlanganID, PelajaranID,NIS, NIG, TanggalUlangan, Nilai)
2NF
101
Didalamtabel
Nilaitidak
ditemukan
partial
dependency
sehinggaTabelNilaisudahmemenuhi2NF
3NF DidalamtableNilait i d a k
ditemukantransitivedependencysehinggatabel
Nilaidipecahdansudahmemenuhi3NF
9. Pengumuman Field PengumumanId DetailPengumuman IDTU 1NF Di dalam tabel Pengumumantidak ditemukan repeating groups sehinggaTablePengumuman sudahmemenuhi1NF DetailPengumuman (PengumumanId, detailPengumuman, IDTU)
2NF Didalamtabel
Pengumumantidak
ditemukan
partial
dependency
sehinggaTabelPengumumansudahmemenuhi2NF
3NF DidalamtabelPengumuman tidakditemukantransitivedependency sehinggatabelPengumuman tidakdapatdinormalisasihingga3NF
10. Saran Field SaranId IsiSaran 1NF Di dalam tabel Sarantidak ditemukan repeating groups sehingga NilaiSaran sudahmemenuhi1NF DetailSaran (SaranID, IsiSaran)
102
2NF Didalamtabel
Sarantidak
ditemukan
partial
dependency
sehinggaTabelSaransudahmemenuhi2NF
3NF DidalamtableSarant i d a k ditemukantransitivedependencysehinggatabel Sarandipecahdansudahmemenuhi3NF DetailSaran(SaranID, IsiSaran)
11. OrangTua Field NoKTP Nama Alamat NoTelp Agama NoPekerjaan NamaPekerjaan NoPendidikan NamaPendidikan 1NF Di
dalam
tabel
OrangTuatidak
ditemukan
repeating
groups
sehinggaTableOrangTuasudahmemenuhi1NF msOrangTua
(NoKTP,
NoTelpOrangTua,
NamaOrangTua,
AgamaOrangTua,
AlamatOrangTua,
NoPekerjaan,
NamaPekerjaan,
NoPendidikan, NamaPendidikan)
2NF Didalamtabel
OrangTuatidak
ditemukan
sehinggaOrangTuaGurusudahmemenuhi2NF
3NF
partial
dependency
103
DidalamtableOrangTuaditemukantransitivedependencysehinggatabel OrangTuadipecahdansudahmemenuhi3NF msOrangTua
(NoKTP,
NamaOrangTua,
AlamatOrangTua,
NoTelpOrangTua, AgamaOrangTua, NoPekerjaan, NoPendidikan) msPekerjaan(NoPekerjaan, NamaPekerjaan) msPendidikan (NoPendidikan, NamaPendidikan)
12. Pekerjaan Field NoPekerjaan NamaPekerjaan 1NF Di
dalam
tabel
Pekerjaantidak
ditemukan
repeating
groups
sehinggaTablePekerjaan sudahmemenuhi1NF msPekerjaan(NoPekerjaan, NamaPekerjaan)
2NF Didalamtabel
Pekerjaantidak
ditemukan
partial
dependency
sehinggaTabelPekerjaansudahmemenuhi2NF
3NF DidalamtabelPekerjaantidakditemukantransitivedependency sehinggatabelPekerjaan tidakdapatdinormalisasihingga3NF
13. Pendidikan Field NoPendidikan NamaPendidikan 1NF Di
dalam
tabel
Pendidikantidak
ditemukan
sehinggaTablePendidikan sudahmemenuhi1NF
repeating
groups
104
msPendidikan (NoPendidikan, NamaPendidikan)
2NF Didalamtabel
Pendidikantidak
ditemukan
partial
dependency
sehinggaTabelPendidikansudahmemenuhi2NF
3NF DidalamtabelPendidikantidakditemukantransitivedependency sehinggatabelPendidikan tidakdapatdinormalisasihingga3N
15. Hari Field HariID NamaHari 1NF Di
dalam
tabel
Haritidak
ditemukan
repeating
groups
sehinggaTableHari sudahmemenuhi1NF msHari (hariID, NamaHari)
2NF Didalamtabel
Haritidak
ditemukan
partial
sehinggaTabelHarisudahmemenuhi2NF
3NF DidalamtabelHaritidakditemukantransitivedependency sehinggatabelHaridapatdinormalisasihingga3NF
16. Shift Field ShiftID
dependency
105
Jam
1NF Di
dalam
tabel
Shift
tidak
ditemukan
repeating
groups
sehinggaTableShift sudahmemenuhi1NF msShift (ShiftID, Jam)
2NF Didalamtabel
Shift
tidak
ditemukan
partial
dependency
sehinggaTabelShift sudahmemenuhi2NF
3NF DidalamtabelShifttidakditemukantransitivedependency sehinggatabelShiftdapatdinormalisasihingga3NF
17. DetailAbsensi Field AbsensiID NIS Status 1NF Didalamtabel
DetailAbsensitidak
ditemukan
repeating
groupssehinggaTableDetailAbsensisudahmemenuhi1NF DetailAbsensi(AbsensiID, NIS, Status)
2NF Didalamtabel
DetailAbsensitidak
ditemukan
partial
dependency
sehinggaTabelDetailAbsensisudahmemenuhi2NF
3NF DidalamtabelDetailAbsensitidakditemukantransitivedependency
106
sehinggatabelDetailAbsensitidakdapatdinormalisasihingga3NF DetailAbsensi(AbsensiID, NIS, Status)
18. TransaksiKelas Field KelasID IDTU NIS 1NF Didalamtabel
DetailAbsensitidak
ditemukan
repeating
groupssehinggaTableDetailAbsensisudahmemenuhi1NF TdtransaksiKelas (KelasID, IDTU, NIS)
2NF Didalamtabel
DetailAbsensitidak
ditemukan
partial
dependency
sehinggaTabelDetailAbsensisudahmemenuhi2NF
3NF DidalamtabelDetailAbsensitidakditemukantransitivedependency sehinggatabelDetailAbsensitidakdapatdinormalisasihingga3NF
19. tdSaran Field NIS Tanggal NIG SaranID 1NF Didalamtabel
DetailSarantidak
ditemukan
groupssehinggaTableDetailSaransudahmemenuhi1NF tdSaran (NIS, tanggal, NIG, SaranID)
repeating
107
2NF Didalamtabel
DetailSarantidak
ditemukan
partial
dependency
sehinggaTabelDetailSaransudahmemenuhi2NF
3NF DidalamtabelDetailSaranbsensitidakditemukantransitivedependency tabel DetailSarantidakdapatdinormalisasihingga3NF
20. trPengumuman Field PengumumanId NIS 1NF Didalamtabel
DetailPengumumantidak
ditemukan
repeating
groupssehinggaTableDetailPengumumansudahmemenuhi1NF trPengumuman (PengumumanId, NIS)
2NF Didalamtabel DetailPengumumantidak ditemukan partial dependency sehinggaTabelDetailPengumumansudahmemenuhi2NF
3NF DidalamtabelDetailPengumumanbsensitidakditemukantransitivedepende ncy tabel DetailPengumumantidakdapatdinormalisasihingga3NF
21. TDHeaderTransaksiPelajaran Field TransPelID PelajaranID IDTU NIG
108
1NF Didalamtabel
TransaksiPelajaran
tidak
ditemukan
repeating
groupssehinggaTableTransaksiPelajaran sudahmemenuhi1NF TDHeaderTransaksiPelajaran(TransPelID, PelajaranID, IDTU, NIG)
2NF Didalamtabel TransaksiPelajaran tidak ditemukan partial dependency sehinggaTabelTransaksiPelajaran sudahmemenuhi2NF
3NF DidalamtabelTransaksiPelajaranbsensitidakditemukantransitivedependen cy tabelTransaksiPelajarantidakdapatdinormalisasihingga3NF
109
Tampilan ERD Global
110
Gambar3.15:ERDGlobal 3.3.3PerancanganBasisDataFisikal Perancanganbasisdatafisikalmerupakanprosespembuahandeskripsi
111
darisuatuimplementasibasisdatake
secondarystorage.Beberapalangkah
pentingdalammerancangbasisdatasecarafisikadalah: 1. Perancanganrelasidasar 2. Analisistransaksi 3. Pembuatanindexuntuksetiapentitas 4. Mengestimasikapasitaspenyimpananyangdibutuhkan 5. Merancangmekanismekeamanan
3.3.3.1PerancanganRelasiDasar Tujuandaritahapini
adalahuntukmenentukanbagaimana
menggambarkanrelasi dasaryang diidentifikasikanoleh data logikal globaldalamDBMS.DDL(DatabaseDesignLanguage)yang digunakansebagaiberikut: 1. Siswa CREATETABLEIFNOTEXISTS `mssiswa`( `NIS` char(5)NOTNULL, `Nama` varchar(30)NOTNULL, `Password` varchar(20)NOTNULL, `KelasID` char(1)NOTNULL, `Alamat` varchar(255)NOTNULL, `JenisKelamin` char(1)NOTNULL, `NoTelp` varchar(12)NOTNULL, `Agama` varchar(8)NOTNULL, `TempatLahir` varchar(30)NOTNULL, `TanggalLahir` dateNOTNULL, PRIMARYKEY (`NIS`), KEY `NIS`(`NIS`) ) ENGINE=InnoDB DEFAULT CHARSET=latin;
2. Guru CREATETABLEIFNOTEXISTS `msguru`( `NIG` char(4)NOTNULL, `NamaGuru` varchar(30)NOTNULL,
112
`Password` varchar(20)NOTNULL, `Alamat` varchar(255)NOTNULL, `JenisKelamin` char(1)NOTNULL, `NoTelp` varchar(12)NOTNULL, `Agama` varchar(8)NOTNULL, `TempatLahir` varchar(30)NOTNULL, `TanggalLahir` dateNOTNULL, `NoPendidikan` char(1)NOTNULL, PRIMARYKEY (`NIG`), KEY `NIG`(`NIG`) ) ENGINE=InnoDB DEFAULT CHARSET=latin;
3. Tata Usaha CREATETABLEIFNOTEXISTS `mstatausaha`( `IDTU` char(4)NOTNULL, `NamaTU` varchar(30)NOTNULL `Password` varchar(20)NOTNULL, `JenisKelamin` char(1)NOTNULL, `Alamat` varchar(255)NOTNULL, `NoTelp` varchar(12)NOTNULL, `Agama` varchar(8)NOTNULL, `TempatLahir` varchar(30)NOTNULL, `TanggalLahir` dateNOTNULL, `NoPegawai` char(4)NOTNULL, PRIMARYKEY (`IDTU`), KEY `NIG`(`IDTU`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
4. Mata Pelajaran CREATETABLEIFNOTEXISTS `mspelajaran`( `PelajaranID` char(3)NOTNULL, `NamaPelajaran` varchar(15)NOTNULL,
113
`StatusPelajaran` varchar(7)NOTNULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
5. Jadwal Pelajaran CREATETABLEIFNOTEXISTS `jadwalpelajaran`( `PelajaranID` char(3)NOTNULL, `NamaPelajaran` varchar(15)NOTNULL, `ShiftID` char(1)NOTNULL `HariID` char(1)NOTNULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
6. Kelas CREATETABLEIFNOTEXISTS `mskelas`( `KelasID` char(1)NOTNULL, `NamaKelas` varchar(8)NOTNULL, `StatusKelas` varchar(7)NOTNULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
7. Absensi CREATETABLEIFNOTEXISTS `trabsensi`( `absensiID` char(8)NOTNULL, `tanggal` dateNOTNULL, `KelasID` char(1)NOTNULL, `IDTU` char(4)NOTNULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
8. Nilai CREATETABLEIFNOTEXISTS `Nilai`( `UlanganID` varchar(16)NOTNULL, `TanggalUlangan` dateNOTNULL, `Nilai`intNOTNULL, `PelajaranID` char(1)NOTNULL `NIS` char(5)NOTNULL
114
`NIG` char(4)NOTNULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
9. Pengumuman CREATETABLEIFNOTEXISTS `trpengumuman`( `pengumumanID` varchar(15)NOTNULL, `NIS` char(5)NOTNULL, PRIMARYKEY (`pengumumanID`), KEY `username`(`username`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
10. Saran CREATETABLEIFNOTEXISTS `trsaran`( `NIS` char(5)NOTNULL, `NIG` char(4)NOTNULL, `SaranID` varchar(15)NOTNULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
11. Orang Tua 1 CREATETABLEIFNOTEXISTS `msorangtua1`( `NOKTP` char(16)NOTNULL, `NamaOrangTua` varchar(30)NOTNULL, `Alamat` varchar(255)NOTNULL, `NoTelp` varchar(12)NOTNULL, `Agama` varchar(8)NOTNULL, `NoPekerjaan` char(3)NOTNULL, `NoPendidikan` char(1)NOTNULL, `NIS` char(5)NOTNULL, KEY `NIS`(`NIS`), KEY `NIS_2`(`NIS`), KEY `NIS_3`(`NIS`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
115
12. Orang Tua 2 CREATETABLEIFNOTEXISTS `msorangtua2`( `NOKTP` char(16)NOTNULL, `NamaOrangTua` varchar(30)NOTNULL, `Alamat` varchar(255)NOTNULL, `NoTelp` varchar(12)NOTNULL, `Agama` varchar(8)NOTNULL, `NoPekerjaan` char(3)NOTNULL, `NoPendidikan` char(1)NOTNULL, `NIS` char(5)NOTNULL, KEY `NIS`(`NIS`), KEY `NIS_2`(`NIS`), KEY `NIS_3`(`NIS`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
13. Pekerjaan CREATETABLEIFNOTEXISTS `mspekerjaan`( `NoPekerjaan` char(3)NOTNULL, `NamaPekerjaan` varchar(20)NOTNULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
14. Pendidikan CREATETABLEIFNOTEXISTS `mspendidikan`( `NoPendidikan` char(1)NOTNULL, `NamaPendidikan` varchar(3)NOTNULL, `NIG` char(4)NOTNULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
15. Hari CREATETABLEIFNOTEXISTS `mshari`(
116
`HariID` char(1)NOTNULL, `NamaHari` varchar(6)NOTNULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
16. Shift CREATETABLEIFNOTEXISTS `msshift`( `ShiftID` char(1)NOTNULL, `Jam` varchar(5)NOTNULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
17. Detail Absensi CREATETABLEIFNOTEXISTS `detailabsensi`( `absenID` char(8)NOTNULL, `NIS` char(5)NOTNULL, `Status` varchar(1)NOTNULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
18. Transaksi Kelas CREATETABLEIFNOTEXISTS `trtransaksikelas`( `KelasID` char(1)NOTNULL, `IDTU` char(4)NOTNULL, `JumlahSiswa` intNOTNULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
19. Detail Saran CREATETABLEIFNOTEXISTS `detailsaran`( `SaranID` varchar(15)NOTNULL, `DetailSaran` textNOTNULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
20. Detail Pengumuman CREATETABLEIFNOTEXISTS `detailpengumuman`(
117
`PengumumanID` varchar(15)NOTNULL, `DetailPengumuman` text NOTNULL, `IDTU` char(4)NOTNULL, KEY `pengumumanID`(`pengumumanID`,`IDTU`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
21. Transaksi Pelajaran CREATETABLEIFNOTEXISTS `trtransaksipelajaran`( `TransPelId` char(5)NOTNULL, `PelajaranID` char(1)NOTNULL, `IDTU` char(4)NOTNULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
3.3.3.2Merancangenterpriseconstrain Enterpriseconstrains
dibuat
sesuai
denganbatasan-batasan
yangtelahdidefinisikanpada prosesperancanganlogikal.Untukmemudahkan pengimplementasikanenterprise constrainsdalamsistemmakaakandibuat user-definedfunctionuntuk
melakukanvalidasiterhadapkondisitertentu
merupakanbatasan-batasan padabeberapaentitasagarsistemdapatberjalansesuaidenganaturanyangter dapatdalamsistemkepegawaianitusendiridan bertujuanuntukmenjagaintegritasdatayangterdapatdalamsistem,yaitu: Setiap nilai siswa dapat dimasukkan dengan range batasan antara 0 – 100 CONSTRAINTC e k Nilai CHECK(NOTEXIST(SELECTNilai FROMNilaiWHERENilaiBETWEEN0AND100))
3.3.3.3AnalisisTransaksi
118
Tujuandarilangkahiniadalahuntukmemahamifungsionalitas dari transaksi
yang
akanberjalanpada
menganalisistransaksiyang transaksi
basisdatadanuntuk
penting.Sebelummenentukantransaksi-
yangterjadi akandi
jelaskan langkah-langkah dalam
membuatanalisistransaksiantaralain: Langkah-langkahdalammenganalisistransaksiyaitu: 1.
Memetakansemuajalurtransaksidalamrelasi
2.
Menentukanrelasimanayangpalingseringdiaksesoleh transaksi.
3.
Menganalisispenggunaandatadarirelasiyangdipilihdari langkahsebelumnya.
Transaksi-transaksiyangterjadiadalahsebagaiberikut: 1.
Siswadapatmelihatdatasiswa
2.
Siswadapatmelihatdata orang tua siswa
3.
Siswadapatmelihatdata guru
4.
Siswadapatmelihat absensi siswa
5.
Siswadapatmelihatruang kelas
6.
Siswadapatmelihatjadwal pelajaran
7.
Siswadapatmelihatnilai ulangan
8.
Siswadapatmelihatpengumuman sekolah
9.
Siswadapatmemberi kritik dan saran
10. Gurudapatmelihatdataguru 11. Gurudapatmelihatdata siswa 12. Gurudapatmelihatjadwalpelajaran 13. Gurudapatmembuatnilaisiswa 14. Gurudapatmelihat kritik dan saran 15. Gurudapatmengubahdanmenghapusnilaisiswa 16. Tata Usahadapatmembuatdatasiswa 17. Tata Usahadapatmembuatdataorang tua siswa 18. Tata Usahadapatmembuatdataguru 19. Tata Usahadapatmengubahdanmenghapusdatasiswa 20. Tata Usahadapatmengubahdanmenghapusdataorang tua siswa
119
21. Tata Usahadapatmengubahdanmenghapusdataguru 22. Tata Usahadapatmembuatdataabsensisiswa 23. Tata Usahadapatmengubahdanmenghapusdataabsensisiswa 24. Tata Usahadapatmembuatpengumumansekolah 25. Tata Usahadapatmengubahdanmenghapuspengumumansekolah 26. Tata Usahadapatmembuatkelasuntukkegiatanbelajarsiswadanguru 27. Tata Usahadapatmenentukan mata pelajaran yang akan digunakan di sekolah 28. Tata Usahadapatmembuatjadwal pelajaranyangakanberlangsung 29. Tata Usahadapatmengubahdanmenghapusmata pelajaran yang tidak digunakan 30. Tata Usahadapatmengubahdanmenghapusjadwal pelajaranyang akan berlangsun
120
TableMatriksReferensiSilangdenganRelasidenganmetodeIRUD
Table3.24:TablePemasukanIRUD Transaksi / Relasi Siswa
1
2
3
I R U D I R U D I √
√
4
R U D I R U D √
√
Guru Tata Usaha Mata Pelajaran Jadwal Pelajaran Kelas Nilai Absensi Pengumuman Kritik dan Saran Keterangan: I=Insert
R=Read
U=Update
D=Delete
TableMatriksReferensiSilangdenganRelasidenganmetodeIRUD
121
Table3.25:TablePemasukanIRUD (Lanjutan) Transaksi / Relasi Siswa
5
6
7
I R U D I R U D I √
√
8
R U D I R U D √
√
Guru Tata Usaha Mata Pelajaran Jadwal Pelajaran Kelas Nilai Absensi Pengumuman Kritik dan Saran Keterangan: I=Insert
R=Read
U=Update
D=Delete
TableMatriksReferensiSilangdenganRelasidenganmetodeIRUD
122
Table3.26:TablePemasukanIRUD (Lanjutan) Transaksi /
9
Relasi
10
11
I R U D I R U D I
12
R U D I R U D
√
Siswa
√
Guru
√
√
Tata Usaha Mata Pelajaran Jadwal Pelajaran Kelas Nilai Absensi Pengumuman Kritik dan Saran Keterangan: I=Insert
R=Read
U=Update
D=Delete
TableMatriksReferensiSilangdenganRelasidenganmetodeIRUD
Table3.27:TablePemasukanIRUD (Lanjutan)
123
Transaksi /
13
Relasi
14
15
I R U D I R U D I
16
R U D I R U D
Siswa √
Guru
√
√ √ √
Tata Usaha Mata Pelajaran Jadwal Pelajaran Kelas Nilai Absensi Pengumuman Kritik dan Saran Keterangan: I=Insert
R=Read
U=Update
D=Delete
TableMatriksReferensiSilangdenganRelasidenganmetodeIRUD
Table3.28:TablePemasukanIRUD (Lanjutan)
124
Transaksi /
17
Relasi
18
I R U D I
19
R U D I
20
R U D I R U D
Siswa Guru √
Tata Usaha
√
√ √
√
Mata Pelajaran Jadwal Pelajaran Kelas Nilai Absensi Pengumuman Kritik dan Saran Keterangan: I=Insert
R=Read
U=Update
D=Delete
TableMatriksReferensiSilangdenganRelasidenganmetodeIRUD
Table3.29:TablePemasukanIRUD (Lanjutan) Transaksi /
21
22
23
24
√
125
Relasi
I R U D I
R U D I
R U D I R U D
Siswa Guru √ √ √
Tata Usaha
√ √ √
Mata Pelajaran Jadwal Pelajaran Kelas Nilai Absensi Pengumuman Kritik dan Saran Keterangan: I=Insert
R=Read
U=Update
D=Delete
TableMatriksReferensiSilangdenganRelasidenganmetodeIRUD
Table3.30:TablePemasukanIRUD (Lanjutan) Transaksi / Relasi
25 I R U D I
26 R U D I
27
28
R U D I R U D
126
Siswa Guru √ √
Tata Usaha
√
√
√
Mata Pelajaran Jadwal Pelajaran Kelas Nilai Absensi Pengumuman Kritik dan Saran Keterangan: I=Insert
R=Read
U=Update
D=Delete
TableMatriksReferensiSilangdenganRelasidenganmetodeIRUD
Table3.31:TablePemasukanIRUD (Lanjutan) Transaksi / Relasi Siswa
25 I R U D I
26 R U D
127
Guru √ √
Tata Usaha
√ √
Mata Pelajaran Jadwal Pelajaran Kelas Nilai Absensi Pengumuman Kritik dan Saran Keterangan: I=Insert
R=Read
U=Update
D=Delete
3.3.3.4PembuatanIndexSetiapEntitas Tujuandarilangkahini
adalahuntukmenentukanapakah
penambahanindexakanmeningkatkanperformasistem,dimanaindex merupakanstrukturfilesecondaryyangmenyediakanjalanlainuntuk data. Untukmembedakansecaraefektifindexyangdibuat,kitaharus membedakanapakahindexyangdibuattersebutakan
secaraaktual
digunakan diSQLserver.Jikaindextidakdigunakan secaraefektif, maka hanya
akan
membuang
tempat
dan
membuatoverheadyang
SQLservermenyediakanindexuntukdua
alasanutamayakni
tidakperlumenjelangupdate.
sebagaimetodeuntukmenjalankankeunikandatadidalamtablebasis
data
dan untuk menyediakan akses yang lebih cepat ke data yang berada didalam
tabel.
Membuat
index
untuk
basis
aspekyangsangatpentinguntukrancangan
data
merupakan
basisdatafisikal.Index
yangdigunakanadalahsebagaiberikut:
Table 3.32 :Index Tabel Entity
Nama Index
Key Index
Keterangan Index
128
msSiswa
Idx_NIS
NIS
Berdasarkan NIS
msOrangtua1
Idx_NoKtp
NoKtp
Berdasarkan NoKtp
msOrangtua2
Idx_NoKtp
NoKtp
Berdasarkan NoKtp
msPendidikan
Idx_NoPendidi NoPendidik
Berdasarkan
kan
an
NoPendidikan
Idx_NoPekerja
NoPekerjaa
Berdasarkan
an
n
NoPekerjaan
msGuru
Idx_NIG
NIG
Berdasarkan NIG
TataUsaha
Idx_IDTU
IDTU
Berdasarkan IDTU
msPelajaran
Idx_PelajaranI
PelajaranID
Berdasarkan
msPekerjaan
D
PelajaranID
jadwalPelajara
Idx_PelajaranI
PelajaranID
Berdasarkan
n
D
hariID
PelajaranID
Idx_hariID
shiftID
Berdasarkan hariID
Idx_shiftID
Berdasarkan shiftID
TDHeaderTran Idx_TranPelID
TranPelID
Berdasarkan
saksiPelajaran
Idx_PelajaranI
PelajaranID
TranPelID
D
IDTU
Berdasarkan
Idx_IDTU
NIG
PelajaranID
Idx_NIG
Berdasarkan IDTU Berdasarkan NIG
msKelas
Idx_KelasID
KelasID
Berdasarkan KelasID
TDTransaksiK
Idx_KelasID
KelasID
Berdasarkan KelasID
elas
Idx_IDTU
IDTU
Berdasarkan IDTU
MsHari
Idx_hariID
hariID
Berdasarkan hariID
MsShift
Idx_shiftID
shiftID
Berdasarkan shiftID
trNilai
Idx_UlanganI
UlanganID
Berdasarkan
D
PelajaranID
UlanganID
Idx_PelajaranI
NIG
Berdasarkan
D
NIS
PelajaranID
Idx_NIG
Berdasarkan NIG
Idx_NIS
Berdasarkan NIS
129
tdabsensi
Idx_absenid
absenid
Berdasarkan absenid
DetailAbsensi
Idx_absenid
absenid
Berdasarkan absenid
Idx_NIS
NIS
Berdasarkan NIS
Idx_NOP
NOP
Berdasarkan NOP
msPenyakit
trPengumuman Idx_pengumu manId
pengumuma Berdasarkan nId
pengumumanId
DetailPengumu Idx_pengumu
pengumuma Berdasarkan
man
manId
nId
pengumumanId
tdSaran
Idx_SaranId
SaranId
Berdasarkan SaranId
Idx_NIG
NIG
Berdasarkan NIG
Idx_SaranId
SaranId
Berdasarkan SaranID
detailSaran
3.3.3.5EstimasiDiskSpace Berikutadalahlangkahuntukmenghitungkapasitasdiskspace yangdiperlukandalambasisdata:
1. Table msSiswa Table 3.33 : Estimasi Disk Space Table msSiswa Field
Type
Ukuran (Byte)
NIS
Char
5
Nama
Varchar
30
Alamat
Varchar
255
Password
Varchar
20
NoTelp
Varchar
12
Agama
Varchar
8
TempatLahir
Varchar
30
TanggalLahir
Date
8
JenisKelamin
Char
1
130
Kapasitas dari table msSiswa adalah 369 byte Diperkirakan dalam 1 tahun terjadi 90 penambahan siswa Dalam 1 tahun pertumbuhan dari table 90 * 369 byte adalah 33.210 byte
2.
Table OrangTua1 Table 3.34 : Estimasi Disk Space Table OrangTua1 Field
Type
Ukuran (Byte)
NoKtp
Char
16
NIS
Char
5
Nama
Varchar
30
Alamat
Varchar
255
NoTelp
Varchar
12
Agama
Varchar
8
Jenis Kelamin
Char
1
NoPendidikan
Char
1
NoPekerjaan
Char
3
Kapasitas dari table msOrangTua1 adalah 331 byte Diperkirakan dalam 1 tahun terjadi 90 penambahan orang tua 1 Dalam 1 tahun pertumbuhan dari table 90 *331 byte adalah 29.790byte
3.
Table OrangTua2 Table 3.35 : Estimasi Disk Space Table OrangTua2 Field
Type
Ukuran (Byte)
NoKtp
Char
16
NIS
Char
5
Nama
Varchar
30
Alamat
Varchar
255
131
NoTelp
Varchar
12
Agama
Varchar
8
JenisKelamin
Char
1
NoPendidikan
Char
1
NoPekerjaan
Char
3
Kapasitas dari table msOrangTua2 adalah 331 byte Diperkirakan dalam 1 tahun terjadi 90 penambahan orang tua 2 Dalam 1 tahun pertumbuhan dari table 90 *331 byte adalah29.790byte
4.
Table msPendidikan Table 3.36 : Estimasi Disk Space Table msPendidikan Field
Type
Ukuran (Byte)
NoPendidikan
Char
1
NamaPendidikan
Varchar
3
NIG
Char
4
Kapasitas dari table msPendidikan adalah 8 byte Diperkirakan dalam 1 tahun tidak terjadi transaksi Dalam 1 tahun pertumbuhan dari table adalah 0 byte
5.
Table msPekerjaan Table 3.37 : Estimasi Disk Space Table msPekerjaan Field
Type
Ukuran (Byte)
NoPekerjaan
Char
3
NamaPekerjaan
Varchar
20
132
Kapasitas dari table msPekerjaan adalah 23 byte Diperkirakan dalam 1 tahun tidak terjadi transaksi Dalam 1 tahun pertumbuhan dari table adalah0 byte
6.
Table msGuru Table 3.38 : Estimasi Disk Space Table msGuru Field
Type
Ukuran (Byte)
NIG
Char
4
NamaGuru
Varchar
30
Password
Varchar
20
Alamat
Varchar
255
NoTelp
Varchar
12
Agama
Varchar
8
TanggalLahir
Date
8
TempatLahir
Varchar
30
JenisKelamin
Char
1
NoPendidikan
Char
1
Kapasitas dari table msGuru adalah 369 byte Diperkirakan dalam 1 tahun terjadi 2 penambahan guru Dalam 1 tahun pertumbuhan dari table 2 *369 byte adalah 738 byte
7.
Table TataUsaha Table 3.39 : Estimasi Disk Space Table TataUsaha Field
IDTU
Type Char
Ukuran (Byte) 4
133
Nama
Varchar
30
Password
Varchar
20
JenisKelamin
Char
1
Alamat
Varchar
255
NoTelp
Varchar
12
Agama
Varchar
8
TanggalLahir
Date
8
TempatLahir
Varchar
30
NoPegawai
Char
4
Kapasitas dari table TataUsaha adalah372 byte Diperkirakan dalam 1 tahun terjadi 1 penambahan staff tata usaha Dalam 1 tahun pertumbuhan dari table 1 * 372 byte adalah 372 byte
8.
Table msPelajaran Table 3.40 : Estimasi Disk Space Table msPelajaran Field
Type
Ukuran (Byte)
PelajaranID
Char
3
NamaPelajaran
Varchar
15
StatusPelajaran
Varchar
7
Kapasitas dari table msPelajaran adalah 25 byte Diperkirakan dalam 1 tahun tidak terjadi transaksi Dalam 1 tahun pertumbuhan dari tableadalah 0 byte
9.
Table jadwalPelajaran Table 3.41 : Estimasi Disk Space Table jadwalPelajaran Field
PelajaranID
Type Char
Ukuran (Byte) 3
134
NamaPelajaran
Varchar
15
hariID
Char
1
shiftID
Char
1
Kapasitas dari table jadwalPelajaran adalah 20 byte Diperkirakan dalam 1 tahun terjadi 1 penambahan jadwal Dalam 1 tahun pertumbuhan dari table 6 *20 byte adalah 120 byte
10. Table TDHeaderTransaksiPelajaran Table 3.42 : Estimasi Disk Space Table TDHeaderTransaksiPelajaran Field
Type
Ukuran (Byte)
TranPelID
Char
5
PelajaranID
Char
3
IDTU
Char
4
NIG
Char
4
Kapasitas dari table TDHeaderTransaksiPelajaran adalah 16 byte Diperkirakan dalam 1 tahun terjadi 6 penambahan transaksi Dalam 1 tahun pertumbuhan dari table 6 * 16 byte adalah 96 byte
11. Table msKelas Table 3.43 : Estimasi Disk Space Table msKelas Field
Type
Ukuran (Byte)
NIS
Char
5
KelasID
Char
1
NamaKelas
Varchar
8
StatusKelas
Varchar
7
135
Kapasitas dari table msKelas adalah 21 byte Diperkirakan dalam 1 tahun tidak terjadi transaksi Dalam 1 tahun pertumbuhan dari table adalah0 byte
12. Table TDTransaksiKelas Table 3.44 : Estimasi Disk Space Table TDTransaksiKelas Field
Type
Ukuran (Byte)
KelasID
Char
1
JumlahSiswa
Int
6
IDTU
Char
4
Kapasitas dari table TDTransaksiKelas adalah 11 byte Diperkirakan dalam 1 tahun terjadi 6 transaksi kelas Dalam 1 tahun pertumbuhan dari table 6* 11 byte adalah 66 byte
13. Table msHari Table 3.45 : Estimasi Disk Space Table msHari Field
Type
Ukuran (Byte)
hariID
Char
1
NamaHari
Varchar
6
Kapasitas dari table msHari adalah 7 byte Diperkirakan dalam 1 tahun tidak terjadi transaksi Dalam 1 tahun pertumbuhan dari table adalah 0 byte
14. Table msShift
136
Table 3.46 : Estimasi Disk Space Table msShift Field
Type
Ukuran (Byte)
shiftID
Char
1
Jam
Varchar
5
Kapasitas dari table msShift adalah 6 byte Diperkirakan dalam 1 tahun tidak terjadi transaksi Dalam 1 tahun pertumbuhan dari table adalah0 byte
15. Table trNilai Table 3.47 : Estimasi Disk Space Table trNilai Field
Type
Ukuran (Byte)
UlanganID
Varchar
16
PelajaranID
Char
3
NIG
Char
4
NIS
Char
5
TanggalUlangan
Date
8
Nilai
Int
4
Kapasitas dari table trNilai adalah 40 byte Diperkirakan dalam 1 tahun terjadi 6 kelas * 42 siswa * 10 mata pelajaran * 7 ulangan = 17.640 transaksi Dalam 1 tahun pertumbuhan dari table 17.460 * 40 byte adalah 705.600 byte
16. Table tdabsensi Table 3.48 : Estimasi Disk Space Table tdabsensi Field
Type
Ukuran (Byte)
AbsensiID
Char
8
Tanggal
Date
8
KelasID
Char
1
137
IDTU
Char
4
Kapasitas dari table tdabsensi adalah 21 byte Diperkirakan dalam 1 tahun terjadi 288 hari * 42 murid * 6 kelas = 72.576 transaksi Dalam 1 tahun pertumbuhan dari table 72.576* 21 byte adalah 1.524.096 byte
17. Table DetailAbsensi Table 3.49 : Estimasi Disk Space Table DetailAbsensi Field
Type
Ukuran (Byte)
AbsensiID
Char
8
NIS
Char
5
Status
Char
1
Kapasitas dari table DetailAbsensi adalah 14 byte Diperkirakan dalam 1 tahun terjadi 288 hari * 42 murid * 6 kelas = 72.576 transaksi Dalam 1 tahun pertumbuhan dari table 72.576 * 14 byte adalah 1.016.064 byte
18. Table trPengumuman Table 3.50 : Estimasi Disk Space Table trPengumuman Field
Type
Ukuran (Byte)
pengumumanid
Varchar
15
NIS
Char
5
Kapasitas dari table trPengumuman adalah 20 byte Diperkirakan dalam 1 tahun terjadi 30 penambahan pengumuman Dalam 1 tahun pertumbuhan dari table 30 * 20 byte adalah 600 byte
19. Table DetailPengumuman
138
Table 3.51 : Estimasi Disk Space Table DetailPengumuman Field
Type
Ukuran (Byte)
pengumumanid
Varchar
15
detailPengumuman
Text
600
IDTU
Char
4
Kapasitas dari table DetailPengumuman adalah619 byte Diperkirakan dalam 1 tahun terjadi 30 detail pengumuman Dalam 1 tahun pertumbuhan dari table 30 * 619 byte adalah18.570 byte
20. Table tdSaran Table 3.52 : Estimasi Disk Space Table tdSaran Field
Type
Ukuran (Byte)
SaranId
Varchar
15
NIS
Char
5
NIG
Char
4
Tanggal
Date
8
Kapasitas dari table tdSaran adalah 32 byte Diperkirakan dalam 1 tahun terjadi 30 penambahan saran Dalam 1 tahun pertumbuhan dari table30 * 32 byte adalah 960 byte
21. Table detailSaran Table 3.53 : Estimasi Disk Space Table detailSaran Field
Type
Ukuran (Byte)
SaranId
Char
5
isiSaran
Text
200
139
Kapasitas dari table detailSaran adalah205 byte Diperkirakan dalam 1 tahun terjadi 30 detail saran Dalam 1 tahun pertumbuhan dari table 30 *205 byte adalah6.150 byte
22. Table Keseluruhan Table 3.54 : Estimasi Disk Space Requirment Nama Table
Kapasitas yang dibutuhkan dalam 1 tahun
msSiswa
33.210 byte
msOrangtua1
29.790 byte
msOrangtua2
29.790 byte
msPendidikan
0 byte
msPekerjaan
0 byte
msGuru
738 byte
TataUsaha
372 byte
msPelajaran
0 byte
jadwalPelajaran
120 byte
TDHeaderTransaksiPelajaran
96 byte
msKelas
0 byte
TDTransaksiKelas
66 byte
MsHari
0 byte
MsShift
0 byte
trNilai
705.600 byte
tdabsensi DetailAbsensi
1.524.096 byte 1.016.064 byte
trPengumuman DetailPengumuman tdSaran detailSaran
600 byte 18.570 byte 960 byte 6.150 byte
Total kapasitas yang dibutuhkan dalam 1 tahun adalah 3.366.222 byte
140
3.3.3.6MerancangSecurity Dalamsuatusistembasis
datasangatpentinguntuk
memperlihatkanmasalahsekuritasatau
keamanandata.Hal
ini
menyangkutsekuritaspadasistemdanDBMS-nya.Duatipekeamanan basisdatayangakandiaplikasikanyaitu: 1. KeamananSistem Memberikanperlindunganterhadapaksesdan
penggunabasis
data
padatingkatsistem,sepertiusernamedan
password.Keamanan
sistemakandiaplikasikanpadaaplikasiyangakandibuat. 2. KeamananData Memberikan
perlindungan
data,sepertirelasidan dimilikioleh
akses
viewdan
dan
penggunaobjek
basis
aksi
terhadapobjekyangdapat
pemakai.Viewtelah
dirancangpadatahap
sebelumnya.Hakaksesterhadaprelasidarimasing-masinguser akandiatur.
Hakaksesterdiri
mengubah(Update),membaca(Read),dan
darimenambah(Insert), menghapus(Delete)
berikutmerupakanpembagianhakaksesuntuksetiapuser: a. Hak Akses untuk Tata Usaha : GRANT,SELECT,INSERT,UPDATE,DELETE onmsSiswatoTataUsaha GRANT,SELECT,INSERT,UPDATE,DELETE
on
msGurutoTataUsaha GRANT,SELECT,INSERT,UPDATE,DELETE onTataUsahatoTataUsaha GRANT,SELECT,INSERT,UPDATE,DELETE
on
msKelastoTataUsaha GRANT,SELECT,INSERT,UPDATE,DELETE
on
tdAbsensitoTataUsaha GRANT,SELECT,INSERT,UPDATE,DELETE
on
detailAbsensitoTataUsaha GRANT,SELECT,INSERT,UPDATE,DELETE ontrPengumumantoTataUsaha GRANT,SELECT,INSERT,UPDATE,DELETE
onmsPelajaran
141
toTataUsaha GRANT,SELECT,INSERT,UPDATE,DELETE onJadwalPelajaranto TataUsaha GRANT,SELECT,INSERT,UPDATE,DELETE onTDHeaderTransaksiPelajaran to TataUsaha
b. Hak Akses untuk Siswa : GRANT,SELECTonmsSiswatoSiswa GRANT, SELECTontdAbsensitoSiswa GRANT, SELECTon msPelajarantoSiswa GRANT,SELECTon msKelastoSiswa GRANT, SELECTontrPengumumantoSiswa GRANT,SELECTonJadwalPelajarantoSiswa GRANT,SELECTon trNilaitoSiswa GRANT,SELECT,INSERT,UPDATE,DELETEon tdSarantoSiswa
c. Hak Akses untuk Guru: GRANT,SELECTonmsGurutoGuru GRANT,SELECTonJadwalPelajarantoGuru GRANT,SELECTonmsPelajarantoGuru GRANT,SELECTon msKelastoGuru GRANT,SELECTontrPengumuman toGuru GRANT,SELECTonmsSaran toGuru GRANT,SELECT,INSERT,UPDATE,DELETE onSarantoGuru GRANT,SELECT,INSERT,UPDATE,DELETE onNilaitoGuru
MendefinisikansecurityantaraAksesVsUser Table 3.55 :Security Antara Akses Vs User
142
Table
Tata Usaha
Siswa
I
R
U
D
msSiswa
X
X
X
X
X
X
msOrangtua1
X
X
X
X
X
X
msOrangtua2
X
X
X
X
X
X
msPendidikan
X
X
X
X
X
X
msPekerjaan
X
X
X
X
X
X
msGuru
X
X
X
X
X
X
TataUsaha
X
X
X
X
msPelajaran
X
X
X
X
X
X
jadwalPelajaran
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
MsHari
X
X
X
X
MsShift
X
X
X
X
trNilai
X
TDHeaderTransak siPelajaran msKelas TDTransaksiKela s
I
R
U
Guru D
X
I
X
R
X
tdabsensi
X
X
X
X
X
X
DetailAbsensi
X
X
X
X
X
X
msPenyakit
X
X
X
X
X
X
trPengumuman
X
X
X
X
X
X
X
X
X
X
X
X
DetailPengumuma n
U
D
X
X
tdSaran
X
X
X
X
X
X
X
X
X
detailSaran
X
X
X
X
X
X
X
X
X
3.4 PerancanganProgramAplikasi Berikutinimerupakanperancanganaplikasiyangdi
dalamnyaterdapat
143
rancanganstrukturmenu,
use
case,
(StateTransitionDiagram),PerancanganLayar, PerancanganLaporan,Perancanganproses. 3.4.1 PerancanganStrukturMenu 1. Struktur Menu pada Siswa
Gambar3.16:Struktur Menu Siswa
2.Struktur Menu pada Guru
Gambar3.17: Struktur Menu Guru
STD
144
3.Struktur Menu pada Tata Usaha
Gambar3.18: Struktur Menu Tata Usaha
145
3.4.2 Use Case
Gambar3.19 : Use Case
146
Tabel 3.56 : Usecase Narative UserLogin Pre Condition
Orangtua dan siswa/guru/tatausaha membuka halaman utama dan belum melakukan login
Flow Of Events
Langkah-langkah: 1. Orangtua
dan
siswa/guru/tatausaha
memasukan username dan Password 2. Orangtua
dan
siswa/guru/tatausaha
melakukan submit 3. Sistem
menampilkan
halaman
utama
Siswa/guru/tatausaha
dapat
setelah login Post Condition
Orangtua
dan
menggunakan fitur utama yang terdapat dalam web
Tabel 3.57 : Usecase Narative Orangtua dan Siswa Jadwal Pelajaran Siswa Pre Condition
Orangtua dan siswa
membuka halaman utama
siswa dan sudah melakukan login Flow Of Events
Langkah-langkah: 1. Orangtua/siswa memilih menu jadwal pelajaran 2. Sistem menampilkan jadwal pelajaran siswa
147
Post Condition
Orangtua dan siswa dapat melihat jadwal siswa dapat menggunakan lainnya
Tabel 3.58 :Usecase Narative Orangtua dan Siswa/Guru Edit Profil Pre Condition
Orangtua dan siswa
membuka halaman utama
siswa dan sudah melakukan login Flow Of Events
Langkah-langkah: 1. Orangtua dan siswa/guru memilih menu profildan memilih link edit profil 2. Orangtua dan siswa/guru memasukan data field yang ingin di edit. 3. Orangtua/siswa/guru melakukan submit. 4. Sistem akan melakukan proses validasi pada data yang submit apakah telah sesuai dengan tipe data yang diminta.
Post Condition
Profil data orangtua/siswa/guru yang baru berhasil dirubah dan ditampilkan pada menu profile
Tabel 3.59 : Usecase Narative Orangtua/Siswa/Guru Menambahkan Kritik dan Saran Pre Condition
Orangtua dan siswa
membuka halaman utama
siswa dan sudah melakukan login Flow Of Events
Langkah-langkah:
148
1. Orangtua/siswa/guru
memilih
menu
SARAN dan memilih submenu tambah saran 2. Orangtua
dan
siswa/guru
memasukan
nama guru yang ingin dikirimkan kritik dan saran 3. Orangtua dan siswa/guru mengisi judul saran dan isi saran 4. Orangtua
dan
siswa/guru
melakukan
submit kritik saran 5. Sistem memasukan data kritik dan saran yang disubmit orangtua dan siswa ke dalam database Post Condition
Orangtua dan siswa/guru dapat menambahkan kritik dan saran lainnya, melihat kritik dan saran yang diterima dan dikirimkan, dan menghapus kritik dan saran
Tabel 3.60 : Usecase Narative Orangtua/Siswa/Guru Menghapus Kritik dan Saran Pre Condition
Orangtua dan siswa
membuka halaman utama
siswa dan sudah melakukan login Flow Of Events
Langkah-langkah: 1. Orangtua/siswa/guru
memilih
menu
149
SARAN dan memilih submenu hapus saran 2. Orangtua dan siswa/guru memilih saran yang ingin di hapus 3. Sistem menghapus data kritik dan saran yang dipilih dari database Post Condition
Orangtua dan siswa/guru dapat menambahkan kritik dan saran lainnya, melihat kritik dan saran yang diterima dan dikirimkan, dan menghapus kritik dan saran
Tabel 3.61 : Usecase Narative Orangtua/Siswa/Guru Melihat Pengumuman Pre Condition
Orangtua/siswa/guru/tatausaha
sudah melakukan
login Flow Of Events
Langkah-langkah: 1. Orangtua/siswa/guru/tatausaha
memilih
menu melihat pengumuman 2. Sistem menampilkan pengumuman Post Condition
Orangtua/siswa/guru/tatausaha dapat melihat kritik dan saran yang ada dan memilih fitur lainnya
150
Tabel 3.62 : Usecase Narative Orangtua dan Siswa Melihat Nilai Pre Condition
Orangtua dan siswa/guru sudah melakukan login
Flow Of Events
Langkah-langkah: 1. Orangtua/siswa/guru/tatausaha
memilih
menu melihat nilai 2. Sistem menampilkan nilai ulangan siswa Post Condition
Orangtua/siswa/ dapat melihat nilai ulangan yang ada dan memilih fitur lainnya
Tabel 3.63 : Usecase Narative Tatausaha Tambah Data Siswa Pre Condition
Tatausaha sudah melakukan login
Flow Of Events
Langkah-langkah: 1. Orangtua/siswa/guru/tatausaha
memilih
menu tambah data siswa 2. Sistem menampilkan form banyak data siswa yang ingin diinputkan 3. Tatausaha melakukan input jumlah data siswa yang ingin dinputkan dan melakukan submit 4. Sistem menampilkan form penambahan data siswa sesuai dengan jumlah data yang ingin disubmitkan 5. Tatausaha melakukan input data siswa dan
151
melakukan submit 6. Sistem
menyimpan
menampilkan
pesan
data
siswa
dan
data siswa
telah
disimpan Post Condition
Tatausaha dapat mengubah, dan menghapus data siswa yang sudah diinput dan menambah data siswa lainnya
Tabel 3.64 : Usecase Narative Tatausaha Edit Data Siswa Pre Condition
Tatausaha ingin melakukan edit data siswa
Flow Of Events
Langkah-langkah: 1. Tatausaha memilih menu edit siswa 2. Sistem menampilkan form edit data siswa 3. Tatausaha melakukan input form data siswa 4. Sistem
menyimpan
data
siswa
dan
menampilkan pesan data siswa telah dirubah Post Condition
Tatausaha dapat mengubah, dan menghapus data siswa yang sudah diinput dan menambah data siswa lainnya
152
Tabel 3.65 : Usecase Narative Tatausaha Melihat Absensi Pre Condition
Orangtua dan siswa sudah melakukan login
Flow Of Events
Langkah-langkah: 1. tatausaha memilih menu Lihat absensi 2. Sistem menampilkan daftar absensi siswa
Post Condition
Orangtua dan siswa dapat melihat daftar absensi siswa dan menggunakan menu lainnya
Tabel 3.66 : Usecase Narative Tatausaha Hapus Data Siswa Pre Condition
Tatausaha ingin melakukan edit data siswa
Flow Of Events
Langkah-langkah: 1. tatausaha memilih menu hapus data siswa 2. Sistem menampilkan form hapus data siswa 3. Tatausaha melakukan input form data siswa 4. Sistem
menghapus
data
siswa
dan
menampilkan pesan data siswa telah dihapus Post Condition
Tatausaha dapat mengubah, dan menghapus data siswa yang sudah diinput dan menambah data
153
siswa lainnya
Tabel 3.67 : Usecase Narative Tatausaha Hapus Matapelajaran Pre Condition
Tatausaha sudah melakukan login
Flow Of Events
Langkah-langkah: 1. Tatausaha memilih menu hapus data matapelajaran 2. Sistem
menampilkan
form
data
input
form
matapelajaran 3. Tatausaha matapelajaran
melakukan ,
memilih
hapus
dan
melakuan submit 4. Sistem menghapus data matapelajaran dan menampilkan pesan data matapelajaran telah dihapus Post Condition
Tatausaha dapat mengubah, dan menghapus data matapelajaran yang sudah diinput dan menambah data matapelajaran lainnya
Tabel 3.68 : Usecase Narative Tatausaha Edit Matapelajaran Pre Condition
Tatausaha ingin melakukan edit matapelajaran
Flow Of Events
Langkah-langkah: 1. Tatausaha memilih menu edit data siswa
154
2. Sistem
menampilkan
form
data
input
form
matapelajaran 3. Tatausaha
melakukan
matapelajaran , dan melakuan submit 4. Sistem menyimpan data matapelajaran dan
menampilkan
pesan
data
matapelajaran telah disimpan Post Condition
Tatausaha dapat mengubah, dan menghapus data matapelajaran yang sudah diinput dan menambah data matapelajaran lainnya
Tabel 3.69 : Usecase Narative Tatausaha Tambah Jadwal Pelajaran Siswa Dan Guru Pre Condition
Tatausaha telah melakukan login
Flow Of Events
Langkah-langkah: 1. Tatausaha memilih menu tambah jadwal pelajaran 2. Sistem menampilkan form tambah jadwal pelajaran 3. Tatausaha melakukan input form tambah jadwal pelajaran 4. Sistem menyimpan data matapelajaran dan
menampilkan
pesan
matapelajaran telah dirubah
data
155
Post Condition
Tatausaha dapat mengubah, dan menghapus data matapelajaran yang sudah diinput dan menambah data matapelajaran lainnya
Tabel 3.70 : Usecase Narative Tatausaha Hapus Jadwal Pelajaran Siswa Dan Guru Pre Condition
Tatausaha telah melakukan login
Flow Of Events
Langkah-langkah: 1. Tatausaha memilih menu hapus jadwal pelajaran 2. Sistem menampilkan form hapus jadwal pelajaran 3. Tatausaha melakukan input form hapus jadwal pelajaran 4. Sistem menghapus data jadwal pelajaran dan menampilkan pesan data jadwal pelajaran telah dihapus
Post Condition
Tatausaha dapat mengubah, dan menghapus data jadwal
pelajaran
yang
sudah
diinput
dan
menambah data jadwal pelajaran lainnya
Tabel 3.71 : Usecase Narative Tatausaha Tambah Pengumuman Pre Condition
Tatausaha telah melakukan login
156
Flow Of Events
Langkah-langkah: 1. Tatausaha
memilih
menu
tambah
pengumuman 2. Sistem
menampilkan
form
tambah
pengumuman 3. Tatausaha melakukan input form tambah pengumuman 4. Sistem menyimpan data pengumuman dan menampilkan pesan data pengumuman telah ditambahkan Post Condition
Tatausaha dapat menghapus data pengumuman yang
sudah
diinput
dan
menambah
data
pengumuman lainnya
Tabel 3.72 : Usecase Narative Hapus Pengumuman Pre Condition
Tatausaha telah melakukan login dan telah melakukan penambahaman pengumuman
Flow Of Events
Langkah-langkah: 1. tatausaha
memilih
menu
hapus
pengumuman 2. Sistem
menampilkan
form
hapus
pengumuman 3. Tatausaha melakukan input form data Pengumuman dan melakukan submit
157
4. Sistem menghapus data pengumuman dan
menampilkan
pesan
pengumuman
data telah
dihapus/ditambahkan Post Condition
Tatausaha dapat menghapus data pengumuman yang
sudah
diinput
dan
menambah
data
pengumuman lainnya
Tabel 3.73 : Usecase Narative Tatausaha Menambah Data Guru Pre Condition
Tatausaha telah melakukan login
Flow Of Events
Langkah-langkah: 1. Tatausaha memilih menu tambah data guru 2. Sistem menampilkan form pengisian data guru 3. Tatausaha
mengisi
form
form
pengisian data guru dan melakukan submit. 4. Sistem
menambahkan
data
nilai
ulangan siswa dan menampilkan pesan data guru berhasil ditambahkan Post Condition
guru dapat menambah dan mengubah data nilai ulangan lainnya
158
Tabel 3.74 : Usecase Narative Tatausaha Hapus Data Guru Pre Condition
Tatausaha telah melakukan login dan terdapat data guru dalam database
Flow Of Events
Langkah-langkah: 1. Tatausaha memilih menu hapus data guru 2. Sistem menampilkan form pengisian hapus data guru 3. Tatausaha
mengisi
form
dan
melakukan submit. 4. Sistem menghapus data guru dan menampilkan pesan data guru berhasil dihapus Post Condition
Tatausaha dapat menambahkan, mengedit, dan menghapus data guru lainnya
Tabel 3.75 : Usecase Narative Tatausaha Hapus Data Siswa Pre Condition
Tatausaha telah melakukan login dan terdapat data siswa dalam database
Flow Of Events
Langkah-langkah: 1. Tatausaha memilih menu hapus data siswa 2. Sistem menampilkan form pengisian
159
hapus data siswa 3. Tatausaha
mengisi
form
dan
melakukan submit. 4. Sistem menghapus data guru dan menampilkan
pesan
data
siswa
berhasil dihapus Post Condition
Tatausaha dapat menambahkan, mengedit, dan menghapus data siswa lainnya
Tabel 3.76 : Usecase Narative Tatausaha Menambah Absensi Pre Condition
Tatausaha sudah melakukan login
Flow Of Events
Langkah-langkah: 1. tatausaha memilih menu absensi 2. Sistem menampilkan form kelas yang ingin di absensi 3. Tatausaha melakukan input form dan melakukan submit 4. Sistem menampilkan form absensi dan daftar siswa 5. Tatausaha mengisi form absensi siswa 6. Sistem menambahkan data absensi siswa dan menampilkan pesan absensi siswa berhasil ditambahkan
Post Condition
Tatausaha dapat menambah data absensi lainnya
160
Tabel 3.77 : Usecase Narative Guru Menambah Nilai Ulangan Pre Condition
Guru ingin menambah nilai ulangan siswa
Flow Of Events
Langkah-langkah: 1. guru memilih menu nilai ulangan 2. Sistem menampilkan form kelas dan matapelajaran yang ingin diisi 3. guru mengisi form kelas dan nilai matapelajaran yang diajarkan. 4. Sistem menampilkan form input nilai siswa 5. guru melakukan input form nilai siswa dan daftar siswa, lalu guru melakukan submit 6. Sistem
menambahkan
data
nilai
ulangan siswa dan menampilkan pesan nilai siswa berhasil ditambahkan Post Condition
guru dapat menambah dan mengubah data nilai ulangan lainnya
Tabel 3.78 : Usecase Narative Guru Mengubah Nilai Ulangan Pre Condition
Guru ingin mengubah nilai ulangan siswa
Flow Of Events
Langkah-langkah: 1. guru
memilih
menu
ubah
nilai
161
ulangan 2. Sistem menampilkan form kelas dan nilai matapelajaran yang ingin diubah 3. guru
mengisi form kelas dan nilai
matapelajaran yang diajarkan. 4. Sistem menampilkan form ubah nilai siswa 5. Tatausaha melakukan input form nilai dan daftar siswa, lalu guru melakukan submit 6. Sistem
menambahkan
data
nilai
ulangan siswa dan menampilkan pesan nilai siswa berhasil dirubah Post Condition
Tatausaha dapat menambah dan mengubah data nilai ulangan lainnya
Tabel 3.79 : Usecase Narative UserLogout Pre Condition
Orangtua dan siswa/guru/tatausaha membuka halaman utama dan sudah melakukan login
Flow Of Events
Langkah-langkah: 1. Orangtua
dan
siswa/guru/tatausaha
memilih menu logout 2. Sistem menampilkan halaman utama dan
162
meminta untuk melakukan login Post Condition
Orangtua
dan
Siswa/guru/tatausaha
melakukan login untuk menggunakan fitur
3.4.3 Activity Diagram 1.Login Siswa
Gambar3.20: Activity Diagram Login Siswa
harus
163
2. Melihat Nilai
Gambar3.21: Activity Diagram Siswa Melihat Nilai
3. Melihat Absensi
Gambar3.22: Activity Diagram Siswa Melihat Absensi
164
4. Melihat Jadwal Pelajaran
Gambar3.23: Activity Diagram Siswa Melihat Jadwal Pelajaran
5. Menampilkan Kritik dan Saran
Gambar3.24: Activity Diagram Siswa Menampilkan Kritik dan Saran
165
6. Menambah Kritik dan Saran
Gambar3.25: Activity Diagram Siswa Menambahkan Krtik dan Saran
7. Login Guru
Gambar3.26: Activity Diagram Login Guru
166
8. Melihat Nilai Siswa
Gambar3.27: Activity Diagram Guru Melihat Nilai Siswa
9. Melihat Jadwal Mengajar
Gambar3.28: Activity Diagram Guru Melihat Jadwal Mengajar
167
10. Menambah Nilai Siswa
Gambar3.29: Activity Diagram Guru Menambah Nilai Siswa
11.Mengedit Nilai Siswa
Gambar3.30: Activity Diagram Guru Mengedit Nilai Siswa
168
12. Mengedit Profil
Gambar3.31: Activity Diagram Guru Mengedit Profil
13. Melihat Kritik dan Saran
Gambar3.32: Activity Diagram Guru Melihat Kritik dan Saran
169
14. Membalas Kritik dan Saran
Gambar3.33: Activity Diagram Guru Membalas Kritik dan Saran
15. Login Tata Usaha
Gambar3.34: Activity Diagram Login Tata Usaha
170
16. Menambah Mata Pelajaran
Gambar3.35: Activity Diagram Menambah Mata Pelajaran
17. Menghapus Mata Pelajaran
Gambar3.36: Activity Diagram Menghapus Mata Pelajaran
171
18. Menambah Data Siswa
Gambar3.37: Activity Diagram Menambah Data Siswa
19. Menghapus Data Siswa
Gambar3.38: Activity Diagram Menghapus Data Siswa
172
20. Menambah Jadwal Guru dan Siswa
Gambar3.39: Activity Diagram Menambah Jadwal Guru dan Siswa
21. Mengedit Jadwal Guru dan Siswa
Gambar3.40: Activity Diagram Mengedit Jadwal Guru dan Siswa
173
22. Menambah Data Absensi
Gambar3.41: Activity Diagram Menambah Data Absensi
23. Mengedit Data Absensi
Gambar3.42: Activity Diagram Mengedit Data Absensi
174
24. Menambahkan Pengumuman
Gambar3.43: Activity Diagram Menambahkan Pengumuman
25. Mengedit Pengumuman
Gambar3.44: Activity Diagram Mengedit Pengumuman
175
26. Menghapus Pengumuman
Gambar3.45: Activity Diagram Menghapus Pengumuman
3.4.4State Trantition Diagram (STD) StateTratitionDiagrammerupakandiagramyangmenerangkanaliran suatustateyanglaindalamsebuahaplikasi.BerikutinimerupakanSTDdari aplikasiyangdirancang.
1. RegistrasiLoginpadasiswa,guru,dantata usaha
Gambar3.46: STD Login
176
2. TampilanHalamanAwalSiswa
Gambar3.47: STD Halaman Awal Siswa
3. Tampilan Halaman Home Siswa
Gambar3.48: STD Halaman Home Siswa
177
4. Tampilan Menu Profil Siswa
Gambar3.49: STD Menu Profil Siswa
5. Tampilan Halaman Jadwal Pelajaran Siswa
Gambar3.50: STD Jadwal Pelajaran Siswa
6. Tampilan Halaman Nilai Siswa
Gambar3.51: STD Nilai Siswa
178
7. Tampilan Halaman Absensi Siswa
Gambar3.52: STD Absensi Siswa
8. Tampilan Halaman Kritik dan Saran Siswa
Gambar3.53: STD Kritik dan Saran Siswa
179
9. Tampilan Halaman Utama Guru
Gambar3.54: STD Halaman Utama Guru
10. Tampilan Halaman Nilai Guru
Gambar3.55: STD Halaman Nilai Guru
180
11. Tampilan Halaman Jadwal Guru
Gambar3.56: STD Halaman Jadwal Guru
12. Tampilan Halaman Data Siswa Kelas Guru
Gambar3.57: STD Halaman Data Siswa Kelas Guru
13. Tampilan Halaman Profil Guru
Gambar3.58: STD Profil Guru
181
14. Tampilan Halaman Kritik dan Saran Guru
Gambar3.59: STD Kritik dan Saran Guru
15. Tampilan Halaman Utama Tata Usaha
Gambar3.60: STD Halaman Utama Tata Usaha
182
16. Tampilan Halaman Data Guru
Gambar3.61: STD Halaman Data Guru
17. Tampilan Halaman Data Siswa
Gambar3.62: STD Halaman Data Siswa
183
18. Tampilan Halaman Data Mata Pelajaran
Gambar3.63: STD Halaman Data Mata Pelajaran
19. Tampilan Halaman Absensi
Gambar3.64: STD Halaman Absensi
184
20. Tampilan Halaman Pengumuman
Gambar3.65: STD Halaman Pengumuman
21. Tampilan Halaman Logout dari Semua Menu Pada Siswa, Guru, dan Tata Usaha
Gambar3.66: STD Logout
185
3.4.5 Perancangan Layar 1. Siswa a. Layar Tampilan Awal
Gambar3.67: Perancangan Layar Tampilan Awal Tampilan halaman home saat belum melakukan login dan hanya terdapat 3 menu bar awal dibagian atas. Terdapat pula informasi sekolah serta gambar sekolah.
186
b. Layar Tampilan Utama Siswa setelah Login
Gambar3.68: Perancangan Layar Tampilan Login Tampilan halaman home untuk Siswa. Terdapat 7 menu bar menu untuk siswa meliputi - menu tampilan utama - menu nilai - menu absensi - menu jadwal - menu pengumuman - menu profil - menu kritik dan saran
187
c. Layar Tampilan Menu Profil Siswa
Gambar3.69: Perancangan Layar Tampilan Profil Siswa Tampilan menu profil siswa. Pada menu ini terdapat lengkap profil siswa. Serta terdapat fitur untuk melakukan ganti data profil.
d. Layar Tampilan Menu Ganti Profile Siswa
Gambar3.70: Perancangan Layar Tampilan Ganti Profile Tampilan menu ganti profil siswa. Dimana di sebelah kiri merupakan profil lama siswa dan di sebelah kanan merupakan kolom untuk mengganti profil siswa yang baru.
188
e. Layar Tampilan Menu Jadwal Pelajaran
Gambar3.71: Perancangan Layar Tampilan Menu Jadwal Pelajaran Tampilan menu jadwal pelajaran siswa dimana terdapat sebuah tabel yang berisi hari / tanggal, mata pelajaran, shift(jam), nama guru yang mengajar, serta ruangan kelas siswa.
f. Layar Tampilan Menu Absensi
Gambar3.72: Perancangan Layar Tampilan Menu Absensi Tampilan menu absensi siswa. Dimana terdapat alfa, izin, sakit dan total keseluruhan absen siswa akan tertampil di dalam menu absensi.
189
g. Layar Tampilan Menu Nilai
Gambar3.73: Perancangan Layar Tampilan Menu Nilai Tampilan menu nilai. Dimana terdapat tabel yang berisi tentang mata pelajaran, nilai ulangan 1, nilai ulangan 2, nilai ulangan 3, dan seterusnya tergantung dengan jumlah ulangannya.
h. Layar Tampilan Menu Pengumuman
Gambar3.74: Perancangan Layar Tampilan Menu Pengumuman Tampilan menu
pengumuman untuk siswa. Dimana dalam menu
pengumuman tersebut terdapat judul pengumuman, hari dan tanggal pengumuman, serta isi pengumuman tersebut.
190
k. Layar Tampilan Menu Menulis Kritik dan Saran
Gambar3.75: Perancangan Layar Tampilan Menu Kritik dan Saran Tampilan menu
kritik dan saran siswa. Pada menu ini siswa dapat
memilih guru yang ingin dikritik atau diberi suatu saran. Lalu mengisi saran atau kritiknya pada kolom isi pesan. Serta submit untuk mengirim isi pesan tersebut.
2. Guru a. Layar Tampilan Awal
Gambar3.76: Perancangan Layar Tampilan Awal Guru Tampilan halaman home saat belum melakukan login dan hanya terdapat 3 menu bar awal dibagian atas. Terdapat pula informasi sekolah serta gambar sekolah.
191
b. Layar Tampilan Menu Profil Guru
Gambar3.77: Perancangan Layar Tampilan Menu Profil Guru Tampilan menu profil guru. Pada menu ini terdapat lengkap profil guru. Serta terdapat fitur untuk melakukan ganti data profil.
c. Layar Tampilan Menu Ganti Profil Guru
Gambar3.78: Perancangan Layar Tampilan Menu Ganti Profil Guru Tampilan menu ganti profil guru. Dimana di sebelah kiri merupakan profil lama guru dan di sebelah kanan merupakan kolom untuk mengganti profil guru yang baru.
192
d. Layar Tampilan Menu Jadwal Mengajar
Gambar3.79: Perancangan Layar Tampilan Menu Jadwal Mengajar Tampilan menu
jadwal mengajar untuk guru. Dimana pada menu
terdapat tabel yang berisi tentang mata pelajaran yang akan diajarkan oleh guru, kelas guru mengajar, ruang kelas tersebut berada, serta shift / jam guru tersebut akan mengajar.
e. Layar Tampilan Menu Nilai
Gambar3.80: Perancangan Layar Tampilan Menu Nilai Tampilan menu daftar nilai siswa untuk guru sesuai dengan daftar kelas yang diajarkannya. Pada menu nilai untuk guru terdapat sub menu nya yaitu kelas X, kelas XI dan kelas XII.
193
f. Layar Tampilan Menu Nilai Setelah Memilih Kelas
Gambar3.81: Perancangan Layar Tampilan Menu Nilai Setelah Memilih Kelas Tampilan menu nilai guru setelah memilih kelas. Pada menu ini guru akan diberikan beberapa pilihan mata pelajaran yang sesuai dengan mata pelajaran yang diajarkan oleh guru tersebut.
g. Layar Tampilan Menu Nilai Setelah Memilih Mata Pelajaran
Gambar3.82: Perancangan Layar Tampilan Menu Nilai Setelah Memilih Mata Pelajaran Pada tampilan nilai guru ini setelah memilih mata pelajaran maka akan terdapat tabel yang berisi tentang seluruh nilai – nilai ulangan siswa.
194
h . Layar Tampilan Menu Pengumuman
Gambar3.83: Perancangan Layar Tampilan Menu Pengumuman Tampilan menu
pengumuman untuk siswa. Dimana dalam menu
pengumuman tersebut terdapat judul pengumuman, hari dan tanggal pengumuman, serta isi pengumuman tersebut.
i. Layar Tampilan Menu Kritik dan Saran
Gambar3.84: Perancangan Layar Tampilan Menu Kritik dan Saran Tampilan menu kritik dan saran guru. Terdapat tabel yang berisi nama pengirim, tanggal kritik atau saran tersebut dikirim serta deskripsi kritik atau saran yang diberikan.
195
j. Layar Tampilan Menu Menulis Kritik dan Saran
Gambar3.85: Perancangan Layar Tampilan Menu Menulis Kritik dan Saran Tampilan menu kritik dan saran guru. Pada menu ini guru dapat memilih siswa yang ingin dibalas kritikan atau saran dari siswa. Lalu mengisi balasan pesannya pada kolom isi pesan. Serta submit untuk mengirim isi pesan tersebut.
3. Tata Usaha a. Layar Tampilan Awal
Gambar3.86: Perancangan Layar Tampilan Awal Tampilan halaman home saat belum melakukan login dan hanya terdapat 3 menu bar awal dibagian atas. Terdapat pula informasi sekolah serta gambar sekolah.
196
b. Layar Tampilan Menu Tambah Data Guru
Gambar3.87: Perancangan Layar Menu Tambah Guru Pada tampilan menu tambah data guru, staff tata usaha dapat menambah data guru seperti nama, NIG, alamat, dan lainnya jika terdapat guru baru pada sekolah tersebut.
c. Layar Tampilan Menu Hapus Data Guru
Gambar3.88: Perancangan Layar Menu Hapus Guru Pada tampilan menu hapus data guru, staff tata usaha dapat menghapus data guru jika guru tersebut keluar / berhenti mengajar. Dengan mengetik NIG setelah itu klik submit.
197
d. Layar Tampilan Menu Tambah Data Siswa
Gambar3.89: Perancangan Layar Menu Tambah Data Siswa Pada tampilan menu tambah data siswa, staff tata usaha dapat menambah data siswa seperti nama, NIS, alamat, dan lain - lainnya jika terdapat siswa baru pada sekolah tersebut.
e. Layar Tampilan Menu Hapus Data Siswa
Gambar3.90: Perancangan Layar Menu Hapus Data Siswa Pada tampilan menu hapus data siswa, staff tata usaha dapat menghapus data siswa jika siswa tersebut keluar / berhenti bersekolah. Dengan mengetik NIS setelah itu klik submit.
198
f. Layar Tampilan Menu Tambah Data Matapelajaran
Gambar3.91: Perancangan Layar Menu Tambah Data Matapelajaran Pada tampilan menu tambah mata pelajaran, staff tata usaha dapat menambah data mata pelajaran seperti nama mata pelajaran, kode mata pelajaran dan status mata pelajaran.
g. Layar Tampilan Menu Hapus Data Matapelajaran
Gambar3.92: Perancangan Layar Menu Tambah Data Matapelajaran Pada tampilan menu hapus mata pelajaran, staff tata usaha dapat menghapus data mata pelajaran dengan mengetik nama pelajaran setelah itu klik submit.
199
h. Layar Tampilan Menu Tambah Kegiatan Belajar Siswa
Gambar3.93: Perancangan Layar Menu Tambah Kegiatan Belajar Siswa Jika memilih waktu yang akan diganti maka akan ada tampilan baru dalam mengedit jadwal pelajaran seperti nama mata pelajaran, shift, dan hari. Lalu klik submit.
i. Layar Tampilan Menu Pengumuman
Gambar3.94: Perancangan Layar Menu Pengumuman Tampilan menu data pengumuman tata usaha. Dimana terdapat 3 menu yaitu tambah pengumuman, hapus pengumuman dan lihat pengumuman.
200
j. Layar Tampilan Menu Tambah Pengumuman
Gambar3.95: Perancangan Layar Menu Tambah Pengumuman Tampilan
menu
tambah
pengumuman,
staff
tata
usaha
dapat
menambahkan pengumuman baru dengan mengisi nama pengumuman, kode pengumuman, dan isi pengumuman sekolah.
k. Layar Tampilan Menu Hapus Pengumuman
Gambar3.96: Perancangan Layar Menu Hapus Pengumuman Tampilan menu hapus pengumuman, dimana staff tata usaha mengisi kode pengumuman yang ingin dihapus lalu klik hapus dan pengumuman tersebut akan terhapus.