• Tidak ada hasil yang ditemukan

BAB IV RANCANGAN SISTEM DAN PROGRAM USULAN

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB IV RANCANGAN SISTEM DAN PROGRAM USULAN"

Copied!
80
0
0

Teks penuh

(1)

39

BAB IV

RANCANGAN SISTEM DAN PROGRAM USULAN

4.1. Analisa Kebutuhan Software

A. Tahapan Analisis

Setelah melakukan observasi langsung di SMK Ma’arif NU Tirto Pekalongan, penulis mendapatkan beberapa data kebutuhan sistem yang

dibutuhkan dari tahapan analisis ini, diantaranya:

1. Halaman Admin (Admin Page)

A1. Administator sistem dapat mengelola data guru

A2. Administrator sistem dapat mengelola data siswa

A3. Administrator sistem dapat mengelola data kelas

A4. Administrator sistem dapat mengelola data mata pelajaran

A5. Administrator sistem dapat mengelola data pengumuman

A6. Administrator sistem dapat mengelola data kalender akademik

A7. Administrator sistem dapat mengelola kontrol akses pada sistem

2. Halaman Guru (Teacher Page)

B1. Guru dapat melihat data jadwal mengajar

B2. Guru dapat mengelola nilai siswa

B3. Guru dapat melihat master data siswa

B4. Guru dapat melihat data pengumuman

B5. Guru dapat melihat data kalender akademik

(2)

3. Halaman Siswa (Student Page)

C1. Siswa dapat melihat informasi akademik

C2. Siswa dapat melihat jadwal pelajaran

C3. Siswa dapat melihat data pengumuman

C4. Siswa dapat melihat data kalender akademik

B. Use Case Diagram

Berikut ini adalah gambaran use case diagram sistem informasi akademik

pada SMK Ma’arif NU Tirto Pekalongan :

1. Use Case Diagram Halaman Admin

Gambar IV.1

Use Case Diagram Halaman Admin

uc Administrator Page

Sisfo Akademik Halaman Admin

Admin Sistem Melakukan Login Melakukan Logout Memasukkan Username dan

Passw ord Mengelola

Data Guru

Mengelola Data Sisw a

Mengelola Data Mata Pelaj aran Mengelola Data Kelas Mengelola Data Pengumuman Mengelola Data Kalender Akademik Mengelola Kontrol Akses Sistem «extend» «extend» «extend» «include» «extend» «extend» «extend» «extend» «extend»

(3)

Deskripsi use case diagram halaman admin

Tabel IV.1

Dokumentasi Use Case Halaman Admin

Use Case Name Halaman Admin

Requirements A1, A2, A3, A4, A5, A6, A7

Goal Admin sistem dapat mengelola master data

Pre-condition Admin sistem melakukan login ke sistem

Post-condition Admin sistem berhasil mengelola master data

Failed-end Condition Admin sistem gagal mengelola master data

Primary Actor Admin sistem

Main Flow / Basic Path

1. Admin sistem mengelola data guru 2. Admin sistem mengelola data siswa 3. Admin sistem mengelola data kelas

4. Admin sistem mengelola data mata pelajaran 5. Admin sistem mengelola data kalender akademik 6. Admin sistem mengelola data pengumuman

7. Admin sistem mengontrol akses user terhadap sistem

Deskripsi use case diagram halaman adminkelola data guru

Tabel IV.2

Dokumentasi Use Case Kelola Data Guru

Use Case Name Halaman Admin

Requirements A1

Goal Admin sistem dapat mengelola data master guru

Pre-condition Admin sistem melakukan login ke sistem

Post-condition Admin sistem berhasil mengelola master data guru

Failed-end Condition Admin sistem gagal mengelola master data guru

Primary Actor Admin sistem

Main Flow / Basic Path

1. Admin sistem melihat data guru 2. Admin sistem mencari data guru 3. Admin sistem menambah data guru 4. Admin sistem mengubah data guru 5. Admin sistem menghapus data guru

(4)

Deskripsi use case diagram halaman admin kelola data siswa

Tabel IV.3

Dokumentasi Use Case Kelola Data Siswa

Use Case Name Halaman Admin

Requirements A2

Goal Admin sistem dapat mengelola master data siswa

Pre-condition Admin sistem melakukan login ke sistem

Post-condition Admin sistem berhasil mengelola master data

Failed-end Condition Admin sistem gagal mengelola master data siswa

Primary Actor Admin sistem

Main Flow / Basic Path

1. Admin sistem melihat data siswa 2. Admin sistem mencari data siswa 3. Admin sistem menambah data siswa 4. Admin sistem mengubah data siswa 5. Admin sistem menghapus data siswa

Deskripsi use case diagram halaman adminkelola data kelas

Tabel IV.4

Dokumentasi Use Case Kelola Data Kelas

Use Case Name Halaman Admin

Requirements A3

Goal Admin sistem dapat mengelola master data kelas

Pre-condition Admin sistem melakukan login ke sistem

Post-condition Admin sistem berhasil mengelola master data kelas

Failed-end Condition Admin sistem gagal mengelola master data kelas

Primary Actor Admin sistem

Main Flow / Basic Path

1. Admin sistem melihat data kelas 2. Admin sistem mencari data kelas 3. Admin sistem menambah data kelas 4. Admin sistem mengubah data kelas 5. Admin sistem menghapus data kelas

6. Admin sistem menambah data siswa per kelas 7. Admin sistem melakukan input jadwal pelajaran

(5)

Deskripsi use case diagram halaman adminkelola data mata pelajaran

Tabel IV.5

Dokumentasi Use Case Kelola Data Mata Pelajaran

Use Case Name Halaman Admin

Requirements A4

Goal Admin sistem dapat mengelola master data mata

pelajaran

Pre-condition Admin sistem melakukan login ke sistem

Post-condition Admin sistem berhasil mengelola master data mata

pelajaran

Failed-end Condition Admin sistem gagal mengelola master data mata pelajaran

Primary Actor Admin sistem

Main Flow / Basic Path

1. Admin sistem melihat data mata pelajaran 2. Admin sistem mencari data mata pelajaran 3. Admin sistem menambah data mata pelajaran 4. Admin sistem mengubah data mata pelajaran 5. Admin sistem menghapus data mata pelajaran

Deskripsi use case diagram halaman adminkelola data kalender akademik

Tabel IV.6

Dokumentasi Use Case Kelola Data Kalender Akademik

Use Case Name Halaman Admin

Requirements A5

Goal Admin sistem dapat mengelola data kalender

akademik

Pre-condition Admin sistem melakukan login ke sistem

Post-condition Admin sistem berhasil mengelola data kalender

akademik

Failed-end Condition Admin sistem gagal mengelola data kalender

akademik

Primary Actor Admin sistem

Main Flow / Basic Path

1. Admin sistem melihat data kalender akademik 2. Admin sistem mencari data kalender akademik 3. Admin sistem menambah data kalender akademik 4. Admin sistem mengubah data kalender akademik 5. Admin sistem menghapus data kalender akademik

(6)

Deskripsi use case diagram halaman adminkelola data pengumuman

Tabel IV.7

Dokumentasi Use Case Kelola Data Pengumuman

Use Case Name Halaman Admin

Requirements A6

Goal Admin sistem dapat mengelola data pengumuman

Pre-condition Admin sistem melakukan login ke sistem

Post-condition Admin sistem berhasil mengelola data pengumuman

Failed-end Condition Admin sistem gagal mengelola data pengumuman

Primary Actor Admin sistem

Main Flow / Basic Path

1. Admin sistem melihat data pengumuman 2. Admin sistem mencari data pengumuman 3. Admin sistem menambah data pengumuman 4. Admin sistem mengubah data pengumuman 5. Admin sistem menghapus data pengumuman

Deskripsi use case diagram halaman adminkontrol akses sistem

Tabel IV.8

Dokumentasi Use Case Kontrol Akses Sistem

Use Case Name Halaman Admin

Requirements A7

Goal Admin sistem dapat mengontrol akses user ke sistem

Pre-condition Admin sistem melakukan login ke sistem

Post-condition Admin sistem berhasil mengontrol akses user ke

sistem

Failed-end Condition Admin sistem gagal mengontrol akses user ke sistem

Primary Actor Admin sistem

Main Flow / Basic Path

1. Admin sistem mengontrol akses untuk input nilai UH, UTS, dan UAS

2. Admin sistem mengontrol akses untuk melihat nilai UTS, UAS, dan nilai akhir

(7)

2. Use Case Diagram Halaman Guru

Gambar IV.2

Use Case Diagram Halaman Guru

Deskripsi use case halaman guru

Tabel IV.9

Dokumentasi Use Case Halaman Guru

Use Case Name Halaman Guru

Requirements B1, B2, B3, B4, B5, B6

Goal Guru dapat melakukan kegiatan akademik di sistem

Pre-condition Guru melakukan login ke sistem

Post-condition Guru berhasil melakukan kegiatan akademik di sistem

Failed-end Condition Guru gagal melakukan kegiatan akademik di sistem

Primary Actor Guru

Main Flow / Basic Path

1. Guru melihat data jadwal mengajar 2. Guru mengelola nilai siswa

3. Guru melihat master data siswa 4. Guru melihat data kalender akademik 5. Guru melihat data pengumuman

6. Guru melihat tata cara penggunaan sistem

uc Teacher Page

Sisfo Akademik Halaman Guru

Guru Melakukan Login Memasukkan Username dan Passw ord Melihat Data Jadw al Mengaj ar Mengelola Nilai Sisw a Melihat Master Data Sisw a Melihat Data Pengumuman Melihat Data Kalender Akademik Melihat Cara Penggunaan Sistem Melakukan Logout «extend» «extend» «extend» «extend» «extend» «extend» «include» «extend»

(8)

Deskripsi use case halaman guru – melihat jadwal mengajar

Tabel IV.10

Dokumentasi Use Case Melihat Jadwal Mengajar

Use Case Name Halaman Guru

Requirements B1

Goal Guru dapat melihat data jadwal mengajar di sistem

Pre-condition Guru melakukan login ke sistem

Post-condition Guru berhasil melihat data jadwal mengajar di sistem

Failed-end Condition Guru gagal melihat data jadwal mengajar di sistem

Primary Actor Guru

Main Flow / Basic Path

1. Guru melihat data jadwal mengajar 2. Guru melakukan absensi siswa

Deskripsi use case halaman guru – kelola nilai siswa

Tabel IV.11

Dokumentasi Use Case Kelola Nilai Siswa

Use Case Name Halaman Guru

Requirements B2

Goal Guru dapat mengelola nilai siswa

Pre-condition Guru melakukan login ke sistem

Post-condition Guru berhasil mengelola nilai siswa

Failed-end Condition Guru gagal mengelola nilai siswa

Primary Actor Guru

Main Flow / Basic Path

1. Guru menginput nilai UH, UTS dan UAS 2. Guru mencari nilai UH, UTS dan UAS

(9)

Deskripsi use case halaman guru - melihat master data siswa

Tabel IV.12

Dokumentasi Use Case Melihat Master Data Siswa

Use Case Name Halaman Guru

Requirements B3

Goal Guru dapat melihat master data siswa

Pre-condition Guru melakukan login ke sistem

Post-condition Guru berhasil melihat master data siswa

Failed-end Condition Guru gagal melihat master data siswa

Primary Actor Guru

Main Flow / Basic Path

1. Guru melihat master data siswa 2. Guru mencari master data siswa

Deskripsi use case halaman guru – melihat data kalender akademik

Tabel IV.13

Dokumentasi Use Case Melihat Data Kalender Akademik

Use Case Name Halaman Guru

Requirements B4

Goal Guru dapat melihat data kalender akademik

Pre-condition Guru melakukan login ke sistem

Post-condition Guru berhasil melihat data kalender akademik

Failed-end Condition Guru gagal melihat data kalender akademik

Primary Actor Guru

Main Flow / Basic Path

1. Guru melihat data kalender akademik 2. Guru mencari data kalender akademik

(10)

Deskripsi use case halaman guru - melihat data pengumuman

Tabel IV.14

Dokumentasi Use Case Melihat Data Pengumuman

Use Case Name Halaman Guru

Requirements B5

Goal Guru dapat melihat data pengumuman

Pre-condition Guru melakukan login ke sistem

Post-condition Guru berhasil melihat data pengumuman

Failed-end Condition Guru gagal melihat data pengumuman

Primary Actor Guru

Main Flow / Basic Path

1. Guru melihat data pengumuman 2. Guru mencari data pengumuman

Deskripsi use case halaman guru – melihat cara penggunaan sistem

Tabel IV.15

Dokumentasi Use Case Melihat Cara Penggunaan Sistem

Use Case Name Halaman Guru

Requirements B6

Goal Guru dapat melihat tata cara penggunaan sistem

Pre-condition Guru melakukan login ke sistem

Post-condition Guru berhasil melihat tata cara penggunaan sistem

Failed-end Condition Guru gagal melihat tata cara penggunaan sistem

Primary Actor Guru

Main Flow / Basic Path

(11)

3. Use Case Diagram Halaman Siswa

Gambar IV.3

Use Case Diagram Halaman Siswa

Deskripsi use case halaman siswa

Tabel IV.16

Dokumentasi Use Case Halaman Siswa

Use Case Name Halaman Siswa

Requirements C1, C2, C3, C4

Goal Siswa dapat melihat informasi akademik dan informasi

lain di sistem

Pre-condition Siswa melakukan login ke sistem

Post-condition Siswa berhasil melihat informasi akademik dan

informasi lain di sistem

Failed-end Condition Siswa gagal melihat informasi akademik dan informasi lain di sistem

Primary Actor Siswa

Main Flow / Basic Path

1. Siswa melihat informasi akademik 2. Siswa melihat jadwal pelajaran

3. Siswa melihat data kalender akademik 4. Siswa melihat data pengumuman

uc Student Page

Sisfo Akademik Halaman Siswa

Sisw a

Melakukan Login Memasukkan Username dan

Passw ord Melihat Informasi

Akademik Melihat Jadw al Pelaj aran Melihat Data Pengumuman Melihat Data Kalender Akademik Melakukan Logout «extend» «extend» «extend» «extend» «extend» «include»

(12)

Deskripsi use case halaman siswa – melihat informasi akademik

Tabel IV.17

Dokumentasi Use Case Melihat Informasi Akademik

Use Case Name Halaman Siswa

Requirements C1

Goal Siswa dapat melihat informasi akademik di sistem

Pre-condition Siswa melakukan login ke sistem

Post-condition Siswa berhasil melihat informasi akademik di sistem

Failed-end Condition Siswa gagal melihat informasi akademik di sistem

Primary Actor Siswa

Main Flow / Basic Path

1. Siswa dapat melihat nilai UH, UTS, UAS dan nilai akhir

2. Siswa dapat mencari nilai UH, UTS, UAS dan nilai akhir

Deskripsi use case halaman siswa – melihat jadwal pelajaran

Tabel IV.18

Dokumentasi Use Case Melihat Jadwal Pelajaran

Use Case Name Halaman Siswa

Requirements C2

Goal Siswa dapat melihat jadwal pelajaran

Pre-condition Siswa melakukan login ke sistem

Post-condition Siswa berhasil melihat jadwal pelajaran

Failed-end Condition Siswa gagal melihat jadwal pelajaran

Primary Actor Siswa

Main Flow / Basic Path

1. Siswa melihat jadwal pelajaran 2. Siswa mencetak jadwal pelajaran

(13)

Deskripsi use case halaman siswa – melihat data kalender akademik

Tabel IV.19

Dokumentasi Use Case Melihat Data Kalender Akademik

Use Case Name Halaman Siswa

Requirements C3

Goal Siswa dapat melihat data kalender akademik

Pre-condition Siswa melakukan login ke sistem

Post-condition Siswa berhasil melihat data kalender akademik

Failed-end Condition Siswa gagal melihat data kalender akademik

Primary Actor Siswa

Main Flow / Basic Path

1. Siswa melihat data kalender akademik 2. Siswa mencari data kalender akademik

Deskripsi use case halaman siswa – melihat data pengumuman

Tabel IV.20

Dokumentasi Use Case Melihat Data Pengumuman

Use Case Name Halaman Siswa

Requirements C4

Goal Siswa dapat melihat data pengumuman

Pre-condition Siswa melakukan login ke sistem

Post-condition Siswa berhasil melihat data pengumuman

Failed-end Condition Siswa gagal melihat data pengumuman

Primary Actor Siswa

Main Flow / Basic Path

1. Siswa melihat data pengumuman 2. Siswa mencari data pengumuman

C. Activity Diagram

Activity diagram dari sistem usulan ini menjelaskan bagaimana sistem

informasi akademik pada SMK Ma’arif NU Tirto ini bekerja menjalankan serangkaian aktivitas-aktivitas pengolahan data akademik. Berikut ini adalah

(14)

1. Activity Diagram Kelola Data Guru

Gambar IV.4

Activity Diagram Kelola Data Guru

act Kelola Data Guru

Sisfo Akademik Halaman Admin Admin Sistem

Tampil Form Login Sistem Input Email dan

Passw ord

Login

Tampil Menu Administrator Menambah Data Guru

Input Data Guru

Tampil Data Guru Simpan Data Guru

Melihat Data Guru

Ubah Data Guru Hapus Data Guru

Simpan Perubahan Ya

Ya

(15)

2. Activity Diagram Kelola Data Siswa

Gambar IV.5

Activity Diagram Kelola Data Siswa

act Kelola Data Sisw a

Sisfo Akademik Halaman Admin Admin Sistem

Tampil Form Login Sistem Input Email dan

Passw ord

Login

Tampil Menu Administrator Menambah Data Sisw a

Input Data Sisw a

Tampil Data Sisw a Simpan Data Sisw a

Melihat Data Sisw a

Ubah Data Sisw a Hapus Data Sisw a

Simpan Perubahan Ya

Ya

(16)

3. Activity Diagram Kelola Data Kelas

Gambar IV.6

Activity Diagram Kelola Data Kelas

act Kelola Data Kelas

Sisfo Akademik Halaman Admin Admin Sistem

Tampil Form Login Sistem Input Email dan

Passw ord

Login

Tampil Menu Administrator Menambah Data Kelas

Input Data Kelas

Tampil Data Kelas Simpan Data Kelas

Melihat Data Kelas

Ubah Data Sisw a Hapus Data Kelas

Simpan Perubahan Ya Ya Ya Input/Update Jadw al Pelaj aran

(17)

4. Activity Diagram Kelola Data Mata Pelajaran

Gambar IV.7

Activity Diagram Kelola Data Mata Pelajaran

act Kelola Data Mata Pelaj aran

Sisfo Akademik Halaman Admin Admin Sistem

Tampil Form Login Sistem Input Email dan

Passw ord

Login

Tampil Menu Administrator Menambah Data Mata

Pelaj aran

Input Data Mata Pelaj aran

Tampil Data Mata Pelaj aran Simpan Data Mata

Pelaj aran

Melihat Data Mata Pelaj aran

Ubah Data Mata Pelaj aran

Hapus Data Mata Pelaj aran

Simpan Perubahan Ya

Ya

(18)

5. Activity Diagram Kelola Data Kalender Akademik

Gambar IV.8

Activity Diagram Kelola Data Kalender Akademik

act Kelola Data Kalender Akademik

Sisfo Akademik Halaman Admin Admin Sistem

Tampil Form Login Sistem Input Email dan

Passw ord Login Tampil Menu Administrator Menambah Data Kalender Akademik

Input Data Kalender Akademik

Tampil Data Kalender Akademik Simpan Data Kalender

Akademik

Melihat Data Kalender Akademik

Ubah Data Kalender Akademik

Hapus Data Kalender Akademik

Simpan Perubahan Ya

Ya

(19)

6. Activity Diagram Kelola Data Pengumuman

Gambar IV.9

Activity Diagram Kelola Data Pengumuman

act Kelola Data Pengumuman

Sisfo Akademik Halaman Admin Admin Sistem

Tampil Form Login Sistem Input Email dan

Passw ord Login Tampil Menu Administrator Menambah Data Pengumuman

Input Data Pengumuman

Tampil Data Pengumuman Simpan Data Pengumuman Melihat Data Pengumuman

Ubah Data Pengumuman Hapus Data

Pengumuman

Simpan Perubahan Ya

Ya

(20)

7. Activity Diagram Kontrol Akses Sistem

Gambar IV.10

Activity Diagram Kontrol Akses Sistem

act Kontrol Akses Sistem

Sisfo Akademik Halaman Admin Admin Sistem

Buka/Tutup Akses Input/Lihat Nilai Lihat Menu Kontrol

Akses Sistem

Tampil Menu Administrator Input Email dan

Passw ord

Login

Tampil Form Login Sistem

Simpan Perubahan Ya

(21)

8. Activity Diagram Informasi Jadwal Mengajar

Gambar IV.11

Activity Diagram Informasi Jadwal Mengajar

act Akses Informasi Jadw al Mengaj ar

Sisfo Akademik Halaman Guru Guru

Tampil Form Login Sistem Input Email dan

Passw ord

Login

Tampil Menu Guru Melihat Informasi Jadw al

Mengaj ar

Melakukan Absensi Mengaj ar dan Absensi

Sisw a Memilih Jadw al Mengaj ar Sesuai Jam

Menampilkan Data Kelas

Simpan Data Absensi Ya

(22)

9. Activity Diagram Kelola Nilai Siswa

Gambar IV.12

Activity Diagram Kelola Nilai Siswa

act Kelola Nilai Sisw a

Sisfo Akademik Halaman Guru Guru

Tampil Form Login Sistem Input Email dan

Passw ord

Login

Tampil Menu Guru Memilih Menu Input Nilai

UH, UTS, dan UAS

Tampil Data Kelas Pilih Kelas

Input Nilai UH, UTS, dan UAS

Simpan Nilai UH, UTS, dan UAS

(23)

10. Activity Diagram Informasi Akademik Siswa

Gambar IV.13

Activity Diagram Informasi Akademik Siswa

act Akses Informasi Akademik Sisw a

Sisfo Akademik Halaman Sisw a Sisw a

Tampil Form Login Sistem Input NIS dan Passw ord

Login

Tampil Menu Sisw a Lihat Nilai UH

Pilih Mata Pelaj aran Tampil Nilai UH

Lihat Nilai UTS

Lihat Nilai UAS

LIhat Nilai Akhir

Tampil Nilai UTS

Tampil Nilai UAS

Tampil Nilai Akhir Ya End Ya Ya Ya Ya

(24)

39

4.2. Desain 4.2.1. Database

A. Entity Relationship Diagram (ERD)

siswa kelas jadwal guru mata_pelajaran nis nama_siswa jenis_kelamin pass_siswa id_kelas memiliki jumlah_siswa wali_kelas nama_kelas id_kelas memiliki jam id_mapel hari id_jadwal id_kelas id_guru thn_pelajaran mempunyai id_guru nip kode_guru nama_guru jekel email password id_mapel mempunyai mengajar id_mapel mapel absensi_siswa nilai_siswa mempunyai mempunyai id_absen_siswa kehadiran semester thn_ajaran id_guru id_mapel id_kelas nis id_kelas tgl_absen p memiliki melakukan melakukan id_nilai nilai semester tahun_ajaran jenis_nilai id_mapel nis id_kelas id_guru n_ke 1 M 1 1 M M N 1 M M 1 N 1 N M 1 1 M M 1 Gambar IV.14

(25)

B. Logical Record Structure (LRS) siswa nis * nama_siswa jenis_kelasmin pass_siswa id_kelas ** kelas id_kelas * nama_kelas jumlah_siswa wali_kelas jadwal id_jadwal * hari jam thn_pelajaran id_kelas ** id_guru ** id_mapel ** mata_pelajaran id_mapel * mapel guru id_guru * nip kode_guru nama_guru jekel email password id_mapel ** absensi_siswa id_absen_siswa * kehadiran semester thn_ajaran tgl_absen p id_guru ** id_mapel ** id_kelas ** nis ** nilai_siswa id_nilai * nilai semester tahun_ajaran jenis_nilai n_ke id_kelas id_guru ** id_mapel ** nis ** Gambar IV.15

Logical Record Structure (LRS)

C. Spesifikasi File

Di dalam perancangan website sistem informasi akademik ini penulis

menggunakan satu database dengan nama sisfo_akademik. Berikut adalah spesifikasi dari tabel-tabel di dalam database sisfo_akademik :

1. Spesifikasi File Absensi Siswa

Nama File : Absensi Siswa

Akronim : absensi_siswa.myd

Fungsi : Untuk menyimpan data absensi siswa.

Tipe : File Transaksi

Organisasi File : Indexed Sequential

Akses File : Random

(26)

Panjang Record : 72 byte

Kunci Field : id_absen_siswa

Software : Xampp/MySQL

Tabel IV.21

Spesifikasi File Absensi Siswa

No. Elemen Data Nama Field Tipe Size Keterangan

1. Id Absen Siswa

id_absen_siswa Int 11 AI, Primary Key

2. Kehadiran kehadiran Enum 1 (h,i,s,a)

3. Semester semester Varchar 1 -

4. Tahun thn_ajaran Varchar 10 -

5. Id Guru id_guru Int 11 Foreign Key

6. Id Mapel id_mapel Int 4 Foreign Key

7. Id Kelas id_kelas Int 3 Foreign Key

8. NIS nis Varchar 10 Foreign Key

9. Tanggal Absen

tgl_absen Date 10 yyyy-mm-dd

10. Pertemuan p Int 11 -

2. Spesifikasi File Admin

Nama File : Admin

Akronim : admin.myd

Fungsi : Untuk menyimpan data admin.

Tipe : File Master

Organisasi File : Indexed Sequential

Akses File : Random

Media : Hardisk

Panjang Record : 114 byte

Kunci Field : id_adm

(27)

Tabel IV.22 Spesifikasi File Admin

No. Elemen Data Nama Field Tipe Size Keterangan

1. Id Admin id_admin Int 3 AI, Primary Key

2. Email email_admin Varchar 30 -

3. Password pass_adm Varchar 50 -

4. Nama Admin nama_adm Varchar 30 -

5. Hak Akses hak_akses Enum 1 (1,2)

3. Spesifikasi File Guru

Nama File : Guru

Akronim : guru.myd

Fungsi : Untuk menyimpan data guru dan karyawan.

Tipe : File Master

Organisasi File : Indexed Sequential

Akses File : Random

Media : Hardisk

Panjang Record : 167 byte

Kunci Field : id_guru

Software : Xampp/MySQL

Tabel IV.23 Spesifikasi File Guru

No. Elemen Data Nama Field Tipe Size Keterangan

1. Id Guru id_guru Int 11 AI, Primary Key

2. NIP nip Varchar 18 -

3. Kode Guru kode_guru Varchar 3 -

4. Nama Guru nama_guru Varchar 50 -

5. Jenis Kelamin jekel Enum 1 (L,P)

6. Email email Varchar 30

-7. Password password Varchar 50

(28)

4. Spesifikasi File Jadwal

Nama File : Jadwal

Akronim : jadwal.myd

Fungsi : Untuk menyimpan data jadwal pelajaran.

Tipe : File Master

Organisasi File : Indexed Sequential

Akses File : Random

Media : Hardisk

Panjang Record : 54 byte

Kunci Field : id_jadwal

Software : Xampp/MySQL

Tabel IV.24 Spesifikasi File Jadwal

No. Elemen Data Nama Field Tipe Size Keterangan

1. Id Jadwal id_jadwal Int 11 AI, Primary Key

2. Hari hari Varchar 10 -

3. Jam jam Varchar 15 -

4. Tahun Ajaran thn_pelajaran Varchar 10 -

5. Id Guru id_guru Int 11 Foreign Key

6. Id Mapel id_mapel Int 4 Foreign Key

7. Id Kelas id_kelas Int 3 Foreign Key

5. Spesifikasi File Kalender Akademik

Nama File : Kalender Akademik

Akronim : kalender_akademik.myd

Fungsi : Untuk menyimpan data kalender akademik.

Tipe : File Master

(29)

Akses File : Random

Media : Hardisk

Panjang Record : 151 byte

Kunci Field : id_kalender

Software : Xampp/MySQL

Tabel IV.25

Spesifikasi File Kalender Akademik

No. Elemen Data Nama Field Tipe Size Keterangan

1. Id Kalender id_kalender Int 11 AI, Primary Key

2. Tanggal tgl_kalender Varchar 30 -

3. Keterangan ket_kalender Varchar 100 -

4. Tahun thn_ajaran Varchar 10 -

6. Spesifikasi File Kelas

Nama File : Kelas

Akronim : kelas.myd

Fungsi : Untuk menyimpan data kelas.

Tipe : File Master

Organisasi File : Indexed Sequential

Akses File : Random

Media : Hardisk

Panjang Record : 76 byte

Kunci Field : id_kelas

(30)

Tabel IV.26 Spesifikasi File Kelas

No. Elemen Data Nama Field Tipe Size Keterangan

1. Id Kelas id_kelas Int 3 AI, Primary Key

2. Nama Kelas nama_kelas Varchar 20 -

3. Jumlah Siswa jumlah_siswa Int 3 -

4. Wali Kelas wali_kelas Varchar 50 -

7. Spesifikasi File Mata Pelajaran

Nama File : Mata Pelajaran

Akronim : mata_pelajaran.myd

Fungsi : Untuk menyimpan data mata pelajaran.

Tipe : File Master

Organisasi File : Indexed Sequential

Akses File : Random

Media : Hardisk

Panjang Record : 34 byte

Kunci Field : id_mapel

Software : Xampp/MySQL

Tabel IV.27

Spesifikasi File Mata Pelajaran

No. Elemen Data Nama Field Tipe Size Keterangan

1. Id Mapel id_mapel Int 4 AI, Primary Key

2. Mata Pelajaran

mapel Varchar 30 -

8. Spesifikasi File Nilai Siswa

Nama File : Nilai Siswa

(31)

Fungsi : Untuk menyimpan data nilai siswa.

Tipe : File Transaksi

Organisasi File : Indexed Sequential

Akses File : Random

Media : Hardisk

Panjang Record : 69 byte

Kunci Field : id_nilai

Software : Xampp/MySQL

Tabel IV.28

Spesifikasi File Nilai Siswa

No. Elemen Data Nama Field Tipe Size Keterangan

1. Id Nilai id_nilai Int 11 AI, Primary Key

2. Nilai nilai Int 3 -

3. Semester semester Varchar 1 -

4. Tahun tahun_ajaran Varchar 10 -

5. Jenis Nilai jenis_nilai Enum 3 (uh,uts,uas)

6. Id Mapel id_mapel Int 4 Foreign Key

7. Id Kelas id_kelas Int 3 Foreign Key

8. NIS nis Varchar 10 Foreign Key

9. Id Guru id_guru Int 11 Foreign Key

10. Nilai Ke n_ke Int 4 -

9. Spesifikasi File Pengumuman

Nama File : Pengumuman

Akronim : pengumuman.myd

Fungsi : Untuk menyimpan data pengumuman.

Tipe : File Master

Organisasi File : Indexed Sequential

Akses File : Random

(32)

Panjang Record : 726 byte

Kunci Field : id_pengumuman

Software : Xampp/MySQL

Tabel IV.29

Spesifikasi File Pengumuman

No. Elemen Data Nama Field Tipe Size Keterangan

1. Id

Pengumuman

id_pengumuman Int 11 AI, Primary

Key

2. Judul judul_pengumuman Varchar 100 -

3. Judul SEO jp_seo Varchar 100 -

4. Tanggal tgl_input Date 10 yyyy-mm-dd

5. Jenis Pengumuman Jp Enum 2 (g,s,gs) 6. Isi Pengumuman isi_pengumuman Text 500

-7. Id Adm id_adm Int 3 Foreign Key

10. Spesifikasi File Siswa

Nama File : Siswa

Akronim : siswa.myd

Fungsi : Untuk menyimpan data siswa.

Tipe : File Master

Organisasi File : Indexed Sequential

Akses File : Random

Media : Hardisk

Panjang Record : 91 byte

Kunci Field : nis

(33)

Tabel IV.30 Spesifikasi File Siswa

No. Elemen Data Nama Field Tipe Size Keterangan

1. NIS Nis Varchar 10 AI, Primary Key

2. Nama Siswa nama_siswa Varchar 30 -

3. Jenis Kelamin

jenis_kelamin Enum 1 (L,P)

4. Password pass_siswa Varchar 50 -

5. Id Kelas id_kelas Int 3 Foreign Key

4.2.2. Software Architecture

A. Deployment Diagram

Gambar IV.16

Deployment Diagram Sistem Informasi Akademik

deployment Sisfo Akademik

Web Serv er Admin Application Guru Application Sisw a Application Bootstrap.j s Bootstrap.css Apache Serv er Style.css Jquery.j s Client PC

Web Brow ser

Database Serv er Database Application MySQL Database Port 80 Port 3306

(34)

B. Component Diagram

Gambar IV.17

Component Diagram Sistem Informasi Akademik

cmp Sisfo Akademik Admin Application Guru Application Sisw a Application Style.css Jquery.j s Apache Serv er Database Application MySQL Database Bootstrap.css Bootstrap.j s

(35)

4.2.3. User Interface

A. User Interface Halaman Admin

1. Halaman Login Admin

Sebelum admin masuk ke halaman utama sisfo akademik halaman

admin, maka admin diminta untuk login terlebih dahulu menggunakan

email dan password.

Gambar IV.18

User Interface Login Admin

2. Halaman Menu Utama

Setelah login berhasil maka admin akan masuk di halaman menu

utama admin dan dapat melakukan pengelolaan data master.

Gambar IV.19

(36)

3. Halaman Penjadwalan

Admin dapat melakukan penjadwalan setelah admin membuka data

kelas, kemudian memilih kelas yang akan diinput atau dirubah jadwal

pelajarannya.

Gambar IV.20

User Interface Data Kelas

Gambar IV.21

(37)

B. User Interface Halaman Guru

1. Halaman Login Guru

Sebelum masuk sisfo akademik halaman guru, guru diminta untuk

login terlebih dahulu menggunakan email dan password.

Gambar IV.22

User Interface Login Guru

2. Halaman Menu Utama Guru

Halaman ini akan tampil setelah guru berhasil login, kemudian guru

bisa melakukan pengolahan data akademik di halaman ini.

Gambar IV.23

(38)

3. Halaman Jadwal Mengajar

Pada halaman ini sistem akan menampilkan jadwal mengajar guru.

Gambar IV.24

User Interface Jadwal Mengajar

4. Halaman Absensi Siswa

Halaman absensi siswa akan terbuka setelah guru memilih jadwal

mengajar sesuai dengan jam dan hari mengajarnya.

Gambar IV.25

(39)

5. Halaman Input Nilai Ulangan Harian

Setelah melakukan pengambilan nilai ulangan harian guru wajib input

nilai ulangan harian.

Gambar IV.26

User InterfaceInput Nilai Ulangan Harian

6. Halaman Input Nilai UTS

Halaman input nilai UTS ini dapat dilihat saat admin telah

menentukan linkinput nilai UTS dibuka.

Gambar IV.27

(40)

7. Halaman Input Nilai UAS

Sama seperti halnya input nilai UTS, input nilai UAS dapat dilakukan

setelah admin membuka link input nilai UAS.

Gambar IV.28

User InterfaceInput Nilai UAS

8. Halaman Rekap Nilai Akhir

Setelah semua nilai diinput maka hasil akhir dari nilai dapat dilihat di

halaman ini.

Gambar IV.29

(41)

C. User Interface Halaman Siswa

1. Halaman Login Siswa

Sebelum masuk ke menu utama halaman siswa, maka siswa diminta

login terlebih dahulu menggunakan nis dan password.

Gambar IV.30

User InterfaceLogin Siswa

2. Halaman Menu Utama Siswa

Setelah berhasil login maka siswa dapat memanfaatkan semua menu

yang ada di halaman utama.

Gambar IV.31

(42)

3. Halaman Jadwal Pelajaran

Siswa dapat melihat jadwal pelajaran pada halaman ini.

Gambar IV.32

User Interface Jadwal Pelajaran

4. Halaman Lihat Nilai Ulangan Harian

Sebelum melihat nilai ulangan harian, siswa akan memilih terlebih

dahulu mata pelajaran yang akan dilihat nilai ulangan hariannya.

Setelah itu siswa mendapatkan hasil ulangan harian dan dapat

mencetak rekap nilai ulangan hariannya.

Gambar IV.33

(43)

Gambar IV.34

User Interface Lihat Nilai Ulangan Harian

5. Halaman Lihat Nilai UTS

Halaman lihat nilai UTS dapat diakses ketika admin telah membuka

link untuk melihat nilai UTS.

Gambar IV.35

User Interface Lihat Nilai UTS

6. Halaman Lihat Nilai UAS

Halaman lihat nilai UAS dapat diakses ketika admin telah membuka

(44)

Gambar IV.36

User Interface Lihat Nilai UAS

7. Halaman Lihat Nilai Murni

Halaman lihat nilai murni ini bisa diakses diakhir semester bersamaan

dengan nilai UAS.

Gambar IV.37

User Interface Lihat Nilai Murni

8. Halaman Lihat Raport Akhir Semester

Halaman raport akhir semester ini bisa diakses di akhir semester

(45)

Gambar IV.38

User Interface Raport Nilai Akhir Semester

4.3. Code Generation A. Form Penjadwalan <?php $kelas=$_POST['kelas']; $thn=$_POST['thn']; $jml6 = count($_POST["gsabtu"]); $jml5 = count($_POST["gminggu"]); $jml1 = count($_POST["gsenin"]); $jml2 = count($_POST["gselasa"]); $jml3 = count($_POST["grabu"]); $jml4 = count($_POST["gkamis"]); for($f=0; $f < $jml6; $f++) { if($_POST['gsabtu']!='')

(46)

{ $hari5="sabtu"; $jam5=$_POST["jam"][$f]; $guru5=$_POST["gsabtu"][$f]; if($guru5=="99") $mapel5="99"; elseif($guru5=="0") $mapel5="0"; else {

$m5=mysql_query("select * from guru where

id_guru='$guru5'");

$dt5=mysql_fetch_array($m5);

$mapel5=$dt5['id_mapel'];

}

$sql_sabtu=mysql_query("insert into jadwal values

('','$mapel5','$hari5','$jam5','$kelas','$guru5','$thn')");

}

else

{

echo "Data Belum Lengkap";

}

(47)

for($e=0; $e < $jml5; $e++) { if($_POST['gminggu']!='') { $hari4="minggu"; $jam4=$_POST["jam"][$e]; $guru4=$_POST["gminggu"][$e]; if($guru4=="99") $mapel4="99"; elseif($guru4=="0") $mapel4="0"; else {

$m4=mysql_query("select * from guru where id_guru='$guru4'");

$dt4=mysql_fetch_array($m4);

$mapel4=$dt4['id_mapel'];

}

$sql_minggu=mysql_query("insert into jadwal values

('','$mapel4','$hari4','$jam4','$kelas','$guru4','$thn')");

}

else

{

echo "Data Belum Lengkap";

(48)

} for($a=0; $a < $jml1; $a++) { if(!empty($_POST['gsenin'])) { $hari="senin"; $jam=$_POST["jam"][$a]; $guru=$_POST["gsenin"][$a]; if($guru=="99") $mapel="99"; elseif($guru=="0") $mapel="0"; else {

$m=mysql_query("select * from guru where id_guru='$guru'");

$dt=mysql_fetch_array($m);

$mapel=$dt['id_mapel'];

}

$sql_senin=mysql_query("insert into jadwal values

('','$mapel','$hari','$jam','$kelas','$guru','$thn')");

}

else

{

(49)

} } for($b=0; $b < $jml2; $b++) { if(!empty($_POST['gselasa'])) { $hari1="selasa"; $jam1=$_POST["jam"][$b]; $guru1=$_POST["gselasa"][$b]; if($guru1=="99") $mapel1="99"; elseif($guru1=="0") $mapel1="0"; else {

$m1=mysql_query("select * from guru where id_guru='$guru1'");

$dt1=mysql_fetch_array($m1);

$mapel1=$dt1['id_mapel'];

}

$sql_selasa=mysql_query("insert into jadwal values

('','$mapel1','$hari1','$jam1','$kelas','$guru1','$thn')");

}

else

(50)

echo "Data Belum Lengkap"; } } for($c=0; $c < $jml3; $c++) { if($_POST['grabu']!='') { $hari2="rabu"; $jam2=$_POST["jam"][$c]; $guru2=$_POST["grabu"][$c]; if($guru2=="99") $mapel2="99"; elseif($guru2=="0") $mapel2="0"; else {

$m2=mysql_query("select * from guru where id_guru='$guru2'");

$dt2=mysql_fetch_array($m2);

$mapel2=$dt2['id_mapel'];

}

$sql_rabu=mysql_query("insert into jadwal values

('','$mapel2','$hari2','$jam2','$kelas','$guru2','$thn')");

}

(51)

{

echo "Data Belum Lengkap";

} } for($d=0; $d < $jml4; $d++) { if($_POST['gkamis']!='') { $hari3="kamis"; $jam3=$_POST["jam"][$d]; $guru3=$_POST["gkamis"][$d]; if($guru3=="99") $mapel3="99"; elseif($guru3=="0") $mapel3="0"; else {

$m3=mysql_query("select * from guru where id_guru='$guru3'");

$dt3=mysql_fetch_array($m3);

$mapel3=$dt3['id_mapel'];

}

$sql_kamis=mysql_query("insert into jadwal values

('','$mapel3','$hari3','$jam3','$kelas','$guru3','$thn')");

(52)

else

{

echo "Data Belum Lengkap";

}

}

?>

<script language="javascript">

alert("Jadwal Pelajaran Berhasil Disimpan");

document.location="<?php echo

$base_url_admin;?>data_kelas";

</script>

B. Form Absensi Siswa

<?php <?php $kelas=$_POST['kelas']; $smt=$_POST['smt']; $thn=$_POST['thn']; $jumlah = count($_POST["nis"]);

$querycount="SELECT MAX(p) AS pakhir FROM absensi_siswa where

id_mapel='".$dtUser['id_mapel']."' and id_kelas='$kelas' and

id_guru='".$_SESSION['idguru']."' and

semester='".$dtControl['semester_aktif']."' and

thn_ajaran='".$dtControl['tahun_pelajaran']."'";

(53)

$row=mysql_fetch_array($result);

$pertemuan=(int)$row['pakhir'];

$pertemuan++;

for($i=0; $i < $jumlah; $i++){

$nis=$_POST['nis'][$i];

$hdr=$_POST['hdr'][$i];

if($nis!="" && $hdr!=""){

$simpan=mysql_query("insert into absensi_siswa

values('','$hdr','$smt','$thn','".$_SESSION['idguru']."','".$dtUser['id_mapel' ]."','$kelas','$nis',NOW(),'$pertemuan')"); } } if($simpan){ ?> <script type="text/javascript"> document.location="<?php echo $base_url_guru;?>jadwal_mengajar"; </script> <?php } else{ ?> <script type="text/javascript">

(54)

history.go(-1);

</script>

<?php

}

?>

C. Form Input Nilai Ulangan Harian

<?php

$kelas=$_POST['kelas'];

$smt=$_POST['smt'];

$thn=$_POST['thn'];

$jumlah = count($_POST["item"]);

$jmlSiswa=mysql_num_rows(mysql_query("select * from siswa where

id_kelas='$kelas'"));

$jmlInput=mysql_num_rows(mysql_query("select * from nilai where

id_kelas='$kelas' and jenis_nilai='uh' and

id_mapel='".$dtUser['id_mapel']."' and id_guru='".$_SESSION['idguru']."'

and semester='".$dtControl['semester_aktif']."' and

tahun_ajaran='".$dtControl['tahun_pelajaran']."'"));

if($jmlInput=="0" || $jmlInput % $jmlSiswa == 0){

$querycount="SELECT MAX(n_ke) AS uhakhir FROM nilai_siswa

where jenis_nilai='uh' and id_kelas='$kelas' and

id_mapel='".$dtUser['id_mapel']."' and id_guru='".$_SESSION['idguru']."'

and semester='".$dtControl['semester_aktif']."' and

(55)

$result=mysql_query($querycount) or die(mysql_error());

$row=mysql_fetch_array($result);

$uh=(int)$row['uhakhir'];

$uh++;

}

elseif($jmlInput<$jmlSiswa || $jmlInput % $jmlSiswa != 0){

$dtInput=mysql_fetch_array(mysql_query("select * from

nilai_siswa where id_kelas='$kelas' and jenis_nilai='uh' and

id_mapel='".$dtUser['id_mapel']."' and id_guru='".$_SESSION['idguru']."'

and semester='".$dtControl['semester_aktif']."' and

tahun_ajaran='".$dtControl['tahun_pelajaran']."' order by id_nilai desc"));

$uh=$dtInput['n_ke'];

}

for($i=0; $i < $jumlah; $i++){

$nis=$_POST['item'][$i];

$nilai=$_POST['nilai'][$i];

$idn=$_POST['idn'][$i];

if($nis!="" && $nilai!="" && $idn!=""){

$simpan=mysql_query("update nilai_siswa set nilai='$nilai'

where id_nilai='$idn'") or die("Query Gagal");

}

(56)

$simpan=mysql_query("insert into nilai_siswa

values('','$nilai','$smt','$thn','uh','".$dtUser['id_mapel']."','$nis','$kelas','".$_

SESSION['idguru']."','$uh')") or die("Query Gagal");

} } if($simpan){ ?> <script type="text/javascript"> document.location="<?php echo

$base_url_guru;?>input_nilai_uh/<?php echo $kelas;?>/<?php echo

$uh;?>"; </script> <?php } else{ ?> <script type="text/javascript">

alert("Data Gagal Disimpan!!");

history.go(-1);

</script>

<?php

}

(57)

D. Form Input Nilai UTS <?php $kelas=$_POST['kelas']; $smt=$_POST['smt']; $thn=$_POST['thn']; $jumlah = count($_POST["item"]);

for($i=0; $i < $jumlah; $i++){

$nis=$_POST['item'][$i];

$nilai=$_POST['nilai'][$i];

$idn=$_POST['idn'][$i];

if($nis!="" && $nilai!="" && $idn!=""){

$simpan=mysql_query("update nilai_siswa set nilai='$nilai'

where id_nilai='$idn'") or die("Query Gagal");

}

elseif($nis!="" && $nilai!=""){

$simpan=mysql_query("insert into nilai_siswa

values('','$nilai','$smt','$thn','uts','".$dtUser['id_mapel']."','$nis','$kelas','".$

_SESSION['idguru']."','0')") or die("Query Gagal");

}

}

if($simpan){

?>

(58)

document.location="<?php echo

$base_url_guru;?>input_nilai_uts/<?php echo $kelas;?>";

</script> <?php } else{ ?> <script type="text/javascript">

alert("Data Gagal Disimpan!!");

history.go(-1);

</script>

<?php

}

?>

E. Form Input Nilai UAS

<?php

$kelas=$_POST['kelas'];

$smt=$_POST['smt'];

$thn=$_POST['thn'];

$jumlah = count($_POST["item"]);

for($i=0; $i < $jumlah; $i++){

$nis=$_POST['item'][$i];

$nilai=$_POST['nilai'][$i];

(59)

if($nis!="" && $nilai!="" && $idn!=""){

$simpan=mysql_query("update nilai_siswa set nilai='$nilai'

where id_nilai='$idn'") or die("Query Gagal");

}

elseif($nis!="" && $nilai!=""){

$simpan=mysql_query("insert into nilai_siswa

values('','$nilai','$smt','$thn','uas','".$dtUser['id_mapel']."','$nis','$kelas','".$

_SESSION['idguru']."','0')") or die("Query Gagal");

} } if($simpan){ ?> <script type="text/javascript"> document.location="<?php echo

$base_url_guru;?>input_nilai_uas/<?php echo $kelas;?>";

</script> <?php } else{ ?> <script type="text/javascript">

alert("Data Gagal Disimpan!!");

history.go(-1);

(60)

<?php

}

?>

F. Form Lihat Nilai Murni

<div class="row">

<div class="col-lg-12">

<div class="panel panel-default">

<div class="panel-heading">Nilai Murni Semester <?php echo

$dtControl['semester_aktif'];?> Tahun Pelajaran <?php echo

$dtControl['tahun_pelajaran'];?> | <a href="<?php echo

$base_url_siswa;?>cetak_nilai_murni" target="_blank"><button

type="button" class="btn btn-primary btn-sm">Export to Ms.

Excel</button></a></div>

<div class="panel-body">

<strong><p>NIS : <?php echo $dtUser['nis'];?><br>Nama : <?php echo

$dtUser['nama_siswa'];?></p></strong>

<table data-toggle="table" data-url="tables/data1.json"

show-refresh="true" show-toggle="true" show-columns="true"

data-search="true" data-select-item-name="toolbar1" data-pagination="true"

data-sort-name="name" data-sort-order="desc">

<thead>

<tr>

<th data-sortable="true">#</th>

(61)

<th data-sortable="true">Nilai Absen</th> <th data-sortable="true">Nilai Ulangan</th> <th data-sortable="true">Nilai UTS</th> <th data-sortable="true">Nilai UAS</th> </tr> </thead> <tbody> <?php

$sqlNilai=mysql_query("select distinct id_mapel from nilai_siswa where

id_kelas='".$dtUser['id_kelas']."' and

tahun_ajaran='".$dtControl['tahun_pelajaran']."' and

semester='".$dtControl['semester_aktif']."' and nis='".$dtUser['nis']."'");

while($dtNilai=mysql_fetch_array($sqlNilai)){

$dtMapel=mysql_fetch_array(mysql_query("select * from mata_pelajaran

where id_mapel='".$dtNilai['id_mapel']."'"));

$rowAbs=mysql_fetch_array(mysql_query("SELECT count(*) AS

jumAbs from absensi_siswa where kehadiran='h' and

nis='".$dtUser['nis']."' and id_mapel='".$dtNilai['id_mapel']."' and

semester='".$dtControl['semester_aktif']."' and

thn_ajaran='".$dtControl['tahun_pelajaran']."'"));

$jumAbs=$rowAbs['jumAbs'];

$rowUh=mysql_fetch_array(mysql_query("SELECT AVG(nilai) AS nUh

from nilai_siswa where jenis_nilai='uh' and nis='".$dtUser['nis']."' and

(62)

semester='".$dtControl['semester_aktif']."' and

tahun_ajaran='".$dtControl['tahun_pelajaran']."'"));

$nuh=(int)$rowUh['nUh'];

$totA=mysql_fetch_array(mysql_query("select * from absensi_siswa

where nis='".$dtUser['nis']."' and id_mapel='".$dtNilai['id_mapel']."' and

semester='".$dtControl['semester_aktif']."' and

thn_ajaran='".$dtControl['tahun_pelajaran']."' order by p desc"));

$na=(int)($jumAbs/$totA['p']*100);

$rowUts=mysql_fetch_array(mysql_query("SELECT * from nilai_siswa

where jenis_nilai='uts' and nis='".$dtUser['nis']."' and

id_mapel='".$dtNilai['id_mapel']."' and

semester='".$dtControl['semester_aktif']."' and

tahun_ajaran='".$dtControl['tahun_pelajaran']."'"));

$nuts=(int)$rowUts['nilai'];

$rowUas=mysql_fetch_array(mysql_query("SELECT * from nilai_siswa

where jenis_nilai='uas' and nis='".$dtUser['nis']."' and

id_mapel='".$dtNilai['id_mapel']."' and semester='".$dtControl['semester_aktif']."' and tahun_ajaran='".$dtControl['tahun_pelajaran']."'")); $nuas=(int)$rowUas['nilai']; ?> <tr>

<td data-sortable="true"><?php echo $no=$no+1;;?></td>

(63)

<td data-sortable="true"><?php echo $na;?></td>

<td data-sortable="true"><?php echo $nuh;?></td>

<td data-sortable="true"><?php echo $nuts;?></td>

<td data-sortable="true"><?php echo $nuas;?></td>

</tr> <?php } ?> </tbody> </table> </div> </div> </div> </div><!--/.row-->

G. Form Raport Akhir Semester

<div class="row">

<div class="col-lg-12">

<div class="panel panel-default">

<div class="panel-heading">Rapot Akhir Semester <?php echo

$dtControl['semester_aktif'];?> Tahun Pelajaran <?php echo

$dtControl['tahun_pelajaran'];?> | <a href="<?php echo

$base_url_siswa;?>cetak_rapot" target="_blank"><button type="button"

class="btn btn-primary btn-sm">Export to Ms. Excel</button></a></div>

<div class="panel-body">

<strong><p>NIS : <?php echo $dtUser['nis'];?><br>Nama : <?php echo

(64)

<table data-toggle="table" data-url="tables/data1.json"

show-refresh="true" show-toggle="true" show-columns="true"

data-search="true" data-select-item-name="toolbar1" data-pagination="true"

data-sort-name="name" data-sort-order="desc"> <thead> <tr> <th data-sortable="true">#</th> <th data-sortable="true">Mata Pelajaran</th> <th data-sortable="true">Nilai Akhir</th> <th data-sortable="true">Tertulis</th> </tr> </thead> <tbody> <?php

$sqlNilai=mysql_query("select distinct id_mapel from nilai_siswa where

id_kelas='".$dtUser['id_kelas']."' and

tahun_ajaran='".$dtControl['tahun_pelajaran']."' and

semester='".$dtControl['semester_aktif']."' and nis='".$dtUser['nis']."'");

while($dtNilai=mysql_fetch_array($sqlNilai)){

$dtMapel=mysql_fetch_array(mysql_query("select * from mata_pelajaran

where id_mapel='".$dtNilai['id_mapel']."'"));

$rowAbs=mysql_fetch_array(mysql_query("SELECT count(*) AS

jumAbs from absensi_siswa where kehadiran='h' and

(65)

semester='".$dtControl['semester_aktif']."' and

thn_ajaran='".$dtControl['tahun_pelajaran']."'"));

$jumAbs=$rowAbs['jumAbs'];

$rowUh=mysql_fetch_array(mysql_query("SELECT AVG(nilai) AS nUh

from nilai_siswa where jenis_nilai='uh' and nis='".$dtUser['nis']."' and

id_mapel='".$dtNilai['id_mapel']."' and

semester='".$dtControl['semester_aktif']."' and

tahun_ajaran='".$dtControl['tahun_pelajaran']."'"));

$nuh=(int)$rowUh['nUh'];

$totA=mysql_fetch_array(mysql_query("select * from absensi_siswa

where nis='".$dtUser['nis']."' and id_mapel='".$dtNilai['id_mapel']."' and

semester='".$dtControl['semester_aktif']."' and

thn_ajaran='".$dtControl['tahun_pelajaran']."' order by p desc"));

$na=(int)($jumAbs/$totA['p']*100);

$rowUts=mysql_fetch_array(mysql_query("SELECT * from nilai_siswa

where jenis_nilai='uts' and nis='".$dtUser['nis']."' and

id_mapel='".$dtNilai['id_mapel']."' and

semester='".$dtControl['semester_aktif']."' and

tahun_ajaran='".$dtControl['tahun_pelajaran']."'"));

$nuts=(int)$rowUts['nilai'];

$rowUas=mysql_fetch_array(mysql_query("SELECT * from nilai_siswa

where jenis_nilai='uas' and nis='".$dtUser['nis']."' and

(66)

semester='".$dtControl['semester_aktif']."' and tahun_ajaran='".$dtControl['tahun_pelajaran']."'")); $nuas=(int)$rowUas['nilai']; $akhir=(int)(($na*0.1)+($nuh*0.2)+($nuts*0.3)+($nuas*0.4)); if(strlen($akhir)=="3"){ $tulis="Seratus"; } elseif(strlen($akhir)=="2"){ if(substr($akhir, 0,1)=="2") $b1="Dua "; elseif(substr($akhir, 0,1)=="3") $b1="Tiga "; elseif(substr($akhir, 0,1)=="4") $b1="Empat "; elseif(substr($akhir, 0,1)=="5") $b1="Lima "; elseif(substr($akhir, 0,1)=="6") $b1="Enam "; elseif(substr($akhir, 0,1)=="7") $b1="Tujuh "; elseif(substr($akhir, 0,1)=="8") $b1="Delapan "; elseif(substr($akhir, 0,1)=="9") $b1="Sembilan ";

(67)

if(substr($akhir, 1,1)=="1") $b2="Puluh Satu"; elseif(substr($akhir, 1,1)=="2") $b2="Puluh Dua"; elseif(substr($akhir, 1,1)=="3") $b2="Puluh Tiga"; elseif(substr($akhir, 1,1)=="4") $b2="Puluh Empat"; elseif(substr($akhir, 1,1)=="5") $b2="Puluh Lima"; elseif(substr($akhir, 1,1)=="6") $b2="Puluh Enam"; elseif(substr($akhir, 1,1)=="7") $b2="Puluh Tujuh"; elseif(substr($akhir, 1,1)=="8") $b2="Puluh Delapan"; elseif(substr($akhir, 1,1)=="9") $b2="Puluh Sembilan"; else $b2="Puluh"; $tulis=$b1.$b2; } ?> <tr>

(68)

<td data-sortable="true"><?php echo $no=$no+1;;?></td>

<td data-sortable="true"><?php echo $dtMapel['mapel'];?></td>

<td data-sortable="true"><?php echo $akhir;?></td>

<td data-sortable="true"><?php echo $tulis;?></td>

</tr> <?php } ?> </tbody> </table> </div> </div> </div> </div><!--/.row-->

(69)

4.4. Testing

A. Form Login Admin

Tabel IV.31

Hasil Pengujian Black Box Testing Form Login Admin

No. Skenario Pengujian Test Case Hasil yang

Diharapkan

Hasil

Pengujian Kesimpulan

1. Mengosongkan

username dan password lalu klik tombol “Login” Username : (Kosong), Password : (Kosong) Sistem akan menolak akses login dan mengeluarkan pesan “Maaf, Username dan Password Salah”.

Sesuai Harapan Valid

2. Mengisi username dengan email admin dan mengosongkan password lalu klik tombol “Login” Username : xxx@xx.xx Password : (Kosong) Sistem akan menolak akses login dan mengeluarkan pesan “Maaf, Username dan Password Salah”.

Sesuai Harapan Valid

3. Mengosongkan

username dan mengisi password lalu klik tombol “Login” Username : (Kosong) Password : xxxxx Sistem akan menolak akses login dan mengeluarkan pesan “Maaf, Username dan Password Salah”.

Sesuai Harapan Valid

4. Mengisi username dengan benar dan password salah lalu klik tombol “Login” Username : xxx@xx.xx (benar) Password : aaaa (salah) Sistem akan menolak akses login dan mengeluarkan pesan “Maaf, Username dan Password Salah”.

Sesuai Harapan Valid

5. Mengisi username dengan salah dan password benar lalu klik tombol “Login” Username : aa@aa.aa (salah) Password : xxxx (benar) Sistem akan menolak akses login dan mengeluarkan pesan “Maaf, Username dan Password Salah”.

Sesuai Harapan Valid

6. Mengisi username dan password dengan benar Username : xxx@xx.xx (benar) Password : xxxxx (benar) Sistem akan memberi akses login dan menampilkan menu beranda admin.

(70)

B. Form Penjadwalan

Tabel IV.32

Hasil Pengujian Black Box Testing Form Penjadwalan

No. Skenario Pengujian Test Case Hasil yang

Diharapkan

Hasil

Pengujian Kesimpulan

1. Mengosongkan

semua pilihan pada form, lalu klik “Submit” Kode Guru : (Kosong semua) Sistem akan menolak pengiriman jadwal pelajaran dan mengeluarkan pesan “Pilih Item Pada Daftar” (HTML 5 sesuai dengan setelan browser)

Sesuai Harapan Valid

2. Mengosongkan

sebagian pilihan pada form, lalu klik “Submit” Kode Guru : (Kosong sebagian) Sistem akan menolak pengiriman jadwal pelajaran dan mengeluarkan pesan “Pilih Item Pada Daftar” (HTML 5 sesuai dengan setelan browser)

Sesuai Harapan Valid

3. Mengisi semua

pilihan pada form, lalu klik “Submit”

Kode Guru : dipilih semua

Sistem akan menyimpan jadwal pelajaran.

(71)

C. Form Login Guru

Tabel IV.33

Hasil Pengujian Black Box Testing Form Login Guru

No. Skenario Pengujian Test Case Hasil yang

Diharapkan

Hasil

Pengujian Kesimpulan

1. Mengosongkan

email dan

password lalu klik tombol “Login” Email : (Kosong), Password : (Kosong) Sistem akan menolak akses login dan mengeluarkan pesan “Maaf, Email dan Password Salah”.

Sesuai Harapan Valid

2. Mengisi email dan mengosongkan password lalu klik tombol “Login” Email : xxx@xx.xx Password : (Kosong) Sistem akan menolak akses login dan mengeluarkan pesan “Maaf, Email dan Password Salah”.

Sesuai Harapan Valid

3. Mengosongkan

email dan mengisi password lalu klik tombol “Login” Email : (Kosong) Password : xxxxx Sistem akan menolak akses login dan mengeluarkan pesan “Maaf, Email dan Password Salah”.

Sesuai Harapan Valid

4. Mengisi email dengan benar dan password salah lalu klik tombol “Login” Email : xxx@xx.xx (benar) Password : aaaa (salah) Sistem akan menolak akses login dan mengeluarkan pesan “Maaf, Email dan Password Salah”.

Sesuai Harapan Valid

5. Mengisi email dengan salah dan password benar lalu klik tombol “Login” Email : aa@aa.aa (salah) Password : xxxx (benar) Sistem akan menolak akses login dan mengeluarkan pesan “Maaf, Email dan Password Salah”.

Sesuai Harapan Valid

6. Mengisi email dan password dengan benar Email : xxx@xx.xx (benar) Password : xxxxx (benar) Sistem akan memberi akses login dan menampilkan menu beranda guru.

(72)

D. Form Absensi Siswa

Tabel IV.34

Hasil Pengujian Black Box Testing Form Absensi Siswa

No. Skenario Pengujian Test Case Hasil yang

Diharapkan

Hasil

Pengujian Kesimpulan

1. Memilih jadwal pelajaran tidak sesuai jam dan hari mengajar. Jam mengajar : tidak sesuai Sistem akan menolak permintaan absensi dan mengeluarkan pesan “Mohon maaf Anda Diluar Jam Mengajar”.

Sesuai Harapan Valid

2. Memilih jadwal pelajaran sesuai jam dan hari mengajar. Jam mengajar : sesuai, Sistem akan menampilkan absensi siswa kelas yang dipilih.

Gambar

Gambar IV.3
Gambar IV.4
Gambar IV.5
Gambar IV.6
+7

Referensi

Dokumen terkait

Nilai- nilai ‘ubudiyah dalam kitab Minh a &lt; J Al- ‘Ab &lt; id i &gt; n dan Tujuan Pendidikan Islam memiliki hubungan yang erat dan tidak dapat dipisahkan,

Sistem penjadwalan dalam flow shop adalah penjadwalan dari seluruh job dalam urutan proses yang sama dan masing – masing job menuju ke masing – masing mesin dalam satu

Sedangkan Simon Kuznets menyatakan bahwa pertumbuhan ekonomi adalah keadaan dimana suatu negara mampu meningkatkan output (hasil produksi ekonomi) berdasarkan

(Terlampir). Kurang baik dalam mengoperasika n perangkat lunak pengolah kata. Cukup baik dalam mengoperasikan perangkat lunak pengolah kata. Baik dalam mengoperasikan

NOMOR 2348/MENKES/PER/XI/2011 TENTANG PERUBAHAN ATAS PERATURAN MENTERI KESEHATAN NOMOR 356/MENKES/PER/IV/2008 TENTANG ORGANISASI DAN TATA KERJA KANTOR KESEHATAN PELABUHAN5.

Dari pengertian para ahli diatas penulis dapat mengambil kesimpulan bahwa biaya produksi, biaya yang digunakan dalam proses produksi yang terdiri dari bahan baku, biaya

1) Hasil penelitian ini menemukan bahwa dimensi produksi mempunyai penilaian terendah dibandingkan dimensi lainnya. Oleh karena itu, Kantor Kelurahan Sadang

1) Memberikan masukan efektif kepada pihak M.Ts. Palattae Kecamatan Kahu Kabupaten Bone. kahu agar peserta didik dapat membaca al- Qur’an dengan baik dan benar. 2)