• Tidak ada hasil yang ditemukan

PEMBUATAN APLIKASI ABSENSI ONLINE MENGGUNAKAN SENSOR SIDIK JARI (STUDI KASUS SMA ULUL ALB@B).

N/A
N/A
Protected

Academic year: 2017

Membagikan "PEMBUATAN APLIKASI ABSENSI ONLINE MENGGUNAKAN SENSOR SIDIK JARI (STUDI KASUS SMA ULUL ALB@B)."

Copied!
93
0
0

Teks penuh

(1)

(STUDI KASUS SMA ULUL ALB@B)

TUGAS AKHIR

OLEH:

DIMAS KHARESA OKTAVIANO NPM: 0634010094

K e p a d a

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS TEKNOLOGI INDUSTRI

UNIVERSITAS PEMBANGUNAN NASIONAL “VETERAN”

JAWA TIMUR

(2)

FAKULTAS TEKNOLOGI INDUSTRI

________________________________________________________________________________________________________________________

HALAMAN PENGESAHAN

Mahasiswa dengan nama dan NPM yang tetera di bawah ini: Nama : Dimas Kharesa Oktaviano

NPM : 0634010094

Progdi : Teknik Informatika

Dengan ini telah melaksanakan Ujian Negara Lisan pada tahun akademik 2010/2011. Judul Tugas Akhir:

PEMBUATAN APLIKASI ABSENSI ONLINE MENGGUNAKAN SENSOR (STUDI KASUS SMA ULUL ALB@B)

Menyetujui, Dosen Pembimbing I

Basuki Rahmat, S.Si, MT NPT. 3690 7060 213

Dosen Pembimbing II

Wahyu S.J. Saputra S.Kom NPT. 386081002951

Ketua Program Studi Teknik Informatika

Basuki Rahmat, S.Si, MT NPT. 3690 7060 213

D E K A N

Fakultas Teknologi Industri

Ir. Sutiyono, MT NIP. 030 191 025

(3)

TUGAS AKHIR

PEMBUATAN APLIKASI ABSENSI ONLINE MENGGUNAKAN SENSOR SIDIK JARI

(STUDI KASUS SMA ULUL ALB@B)

Disusun oleh:

DIMAS KHARESA OKTAVIANO NPM ; 0634010094

Telah dipertahankan dan diterima di hadapan Tim Penguji Tugas Akhir Program Studi Teknik Informatika Fakultas Teknologi Industri

Universitas Pembangunan Nasional ”Veteran” Jawa Timur Pada tanggal 26 November 2010

Susunan Tim Penguji: 1. Penguji I,

Ir. Moch. Rochmad, MT NIP. 19620304 199103 1 002 2. Penguji II,

Basuki Rahmat, S.Si, MT NPT. 3690 7060 213 3. Penguji III,

(4)

NPM : 0634010094

Nama : Dimas Kharesa Oktaviano

Judul :Pembuatan Aplikasi Absensi Online dengan menggunakan Sensor sidik jari. Pembimbing I : Basuki Rahmat, S.Si., MT

Pembimbing II : Wahyu S.J. Saputra S.Kom

Pencatatan kehadiran siswa merupakan salah satu hal penting dari suatu sistem pendidikan,pada SMA Ulul Alb@b masih menggunakan sistem pencatatan kehadiran siswa secara manual. data kehadiran siswa juga digunakan sebagai pembanding prestasi seorang siswa. Pencatatan kehadiran manual sendiri yaitu dengan memangil satu persatu siswa pada lembar absensi yang telah disediakan sesuai dengan nama masing-masing siswa. Setelah lembar absensi terkumpul, guru BP akan merekap data kehadiran Dalam buku rekapitulasi data absensi.Masih banyak kelemahan dalam sistem pencatatan kehadiran secara manual tersebut antara lain siswa dapat memanipulasi data kehadiran tersebut sehingga pihak yang akan mengolah data tersebut akan kesulitan menentukan apakah siswa tersebut kesekolah atau tidak. Serta orang tua juga akan kesulitan untuk mengecek kehadiran putra-putrinya. Sehingga diperlukan suatu aplikasi pencatatan kehadiran yang lebih akurat.

(5)

i

Puji syukur penulis panjatkan ke hadirat Tuhan Yang Maha Esa, karena

anugerah dan rahmatNya, salah satu dari sekian banyaknya karunia-Nya yang berupa

Skripsi dan masih banyak kekurangan dalam laporan ini dapat terselesaikan. Semoga

nikmat ini dapat mendorong menuntut ilmu yang lebih tinggi serta semangat

pengabdian yang tulus karena ridho-Nya, amin.

Laporan Skripsi ini disusun berdasarkan proses tinjauan lapangan yang telah

kami laksanakan di SMA Ulul Alb@b. Proses tersebut adalah pembuatan aplikasi

Pembuatan Aplikasi Absensi Online Menggunakan Sensor Sidi jari di SMA Ulul

Alb@b berbasis website dan aplikasi desktop dengan menggunakan PHP dan visual

basic 6.0

Ucapan terima kasih, kami sampaikan kepada pihak-pihak yang turut berperan

dalam kesuksesan penyusunan laporan Skripsi ini, diantaranya adalah :

1. Bapak Prof. Dr. Ir. Teguh Soedarto, MP selaku Rektor Universitas

Pembangunan Nasional “Veteran” Jawa Timur.

2. Ir. Sutiyono, MS selaku Dekan Fakultas Teknik Industri UPN “Veteran” Jawa

Timur.

3. Basuki Rahmat, S.Si. MT selaku Ketua Program Studi Teknik Informatika UPN

“Veteran” Jawa Timur.

4. Basuki Rahmat, S.Si. MT selaku dosen pembimbing I Skripsi.

5. Wahyu S.J Saputra S.kom selaku dosen pembimbing II Skripsi.

6. Fitian Abudllah, SE selaku wakil kepala sekolah SMA Ulul Alb@b.

(6)

ii

pada ilmu pengetahuan. Ibu tercinta, mama Ir.Sri Suhartatik, yang telah

membina dan mendidik mereka dengan penuh kesabaran dan kasih sayang.

Demikian juga kepada kakak-kakak tercinta yang telah mendorong untuk

menuntut ilmu yang lebih tinggi.

9. K.H. A. Nasrullah almarhum yang telah mendidik penulis dalam bidang agama.

Tidak lupa pula K.H. Ghozali Muchsin walaupun dalam waktu yang singkat.

10.M.Mabrur selaku Pembimbing Spiritual

11.Kekasih tersayang dian yang mendukung dengan penuh cinta

12.Teman-teman 06, BBC, dan tak lupa juga geng kost yang sering nunggak

13.Dan seluruh pihak yang telah membantu hingga tugas akhir ini dapat

terselesaikan tepat waktu.

Penulis menyadari hanya kata terima kasih yang dapat penulis ucapkan dan

hanya doa semoga amal kalian semua dibalas yang setimpal oleh Allah Swt.

Bagaimanapun juga, Penulis juga menyadari akan banyaknya kekurangan pada

penulisan laporan ini, kritik dan saran dari berbagai pihak demi sempurnanya laporan

praktek kerja lapangan ini Penulis harapkan.

Surabaya, November 2010

(7)

iii LEMBAR PENGESAHAN SKRIPSI

LEMBAR PENGESAHAN DAN PERSETUJUAN

(8)

iv

2.6 PHP ... 14

2.6.1 Konsep Kerja PHP ... 15

2.6.2 Dasar-dasar PHP ... 16

2.6.3 Fungsi-fungsi Skrip PHP Untuk Mengakses MYSQL ... 17

(9)
(10)

vi

5.1.1.2. Form Tampilan Registrasi ... 66

5.1.1.3. Form Tampilan Absensi ... 68

5.2.1. Berbasis Website ... 69

5.2.1.1. Halaman Utama ... 69

5.2.1.2. Halaman Administrator ... 76

BAB VI PENUTUP ... 78

6.1. Kesimpulan ... 78

6.2. Saran ... 78

(11)

vii

Gambar 3.12 Desain Halaman Grafik Kehadiran Siswa... 31

Gambar 3.13 Desain Halaman Grafik kedatangan Siswa ... 32

Gambar 3.14 Desain Halaman Pengaturan Profil ... 32

(12)

viii

Gambar 3.18 Desain Halaman Grafik Kehadiran Antar Angkatan ... 34

Gambar 3.19 Desain Halaman Administrator ... 35

(13)

ix

Gambar 5.4 From proses Regestrasi ... 67

Gambar 5.5 From proses Regestrasi Salah ... 68

Gambar 5.6 Form proses Absensi ... 68

Gambar 5.7 Form Proses Absensi yang belum regestrasi . ... 69

Gambar 5.8 Login Orang Tua ... 70

Gambar 5.9 Login Guru ... 70

Gambar 5.10 Login Kepala Sekolah ... 71

Gambar 5.11 Home Kepala Sekolah ... 71

Gambar 5.12 Data absensi ... 72

Gambar 5.13 Grafik kehadiran siswa ... 73

Gambar 5.14 Grafik kedatangan siswa ... 73

Gambar 5.15 Grafik kehadiran Kelas ... 74

Gambar 5.16 Kehadiran Antar Kelas ... 74

Gambar 5.17 Kehadiran Antar Tingkatan Kelas ... 75

Gambar 5.18 Grafik kehadiran antar angkatan ... 76

Gambar 5.19 Back-end Administrator ... 77

(14)

x

Tabel 3.2 Desain Tabel Wali Kelas ... 36

Tabel 3.3 Desain Tabel Siswa ... 36

Tabel 3.4 Desain Tabel History Kelas ... 37

Tabel 3.5 Desain Tabel History wali ... 37

Tabel 3.6 Desain Tabel Kelas ... 37

Tabel 3.7 Desain Tabel User ... 37

Tabel 3.8 Desain Tabel Submenu User ... 38

Tabel 3.9 Desain Tabel Admin ... 38

(15)

1 1.1 Latar Belakang

Perkembangan ilmu pengetahuan di segala bidang dalam era globalisasi saat ini begitu pesat. Terutama dalam bidang IT yang semakin maju seiring dengan kebutuhan pemakai (user) untuk memperoleh suatu karya atau inovasi maksimal serta memperoleh kemudahan dalam segala aktivitas untuk mencapai suatu tujuan.Absensi siswa memegang peranan penting dalam setiap kegiatan belajar mengajar.Oleh karena itu absensi merupakan salah satu penunjang yang dapat mendukung atau memotivasi setiap kegiatan yang dilakukan di dalamnya. Disamping itu, absensi siswa dapat juga sebagai informasi tentang bagaimana kedisiplinan siswa yang bersangkutan.`

Dalam Proses Rekapitulasi data kehadiran siswa di SMA ULUL ALB@B dilakukan dengan cara manual yaitu dengan memangil satu persatu siswa pada lembar absensi yang telah disediakan sesuai dengan nama masing-masing siswa. Setelah lembar absensi terkumpul, guru BP akan merekap data kehadiran

Dengan sistem manual yang di lakukan SMA ULUL ALB@B maka timbul banyak permasalahan yaitu siswa dapat memanipulasi, proses yang dilakukan cukup rumit serta banyak orang tua yang merasa kesulitan untuk mengetahui data kehadiran Putra putrinya.maka perlu adanya pembangunan sistem yang lebih akurat yaitu sistem absensi online dengan menggunakan sensor sidik jari .

Dalam buku rekapitulasi data absensi.

(16)

1.2 Perumusan Masalah

Berdasarkan latar belakang diatas maka Perumusan masalah dari proyek akhir ini sebagai berikut:

a. Bagaimana sistem absensi siswa yang sedang berjalan saat ini di SMA ULUL ALB@B?

b. Bagaimana waktu yang diperlukan dalam pengolahan data absensi siswa? c. Sistem seperti apakah yang dapat menjadi solusi masalah-masalah absensi

siswa tersebut?

d. Bagaimana membuat rekapitulasi kehadiran siswa untuk top management?

1.3 Batasan Masalah

Dalam Tugas Akhir ini, yang akan dibahas adalah suatu Aplikasi Pencatatan Kehadiran Siswa Menggunakan Sidik Jari dengan batasan masalah sebagai berikut :

a. Studi kasus yang akan diambil adalah SMA ULUL ALB@B.

b. Input sidik jari yang disimpan dalam database untuk tiap-tiap orang adalah 4 c. Tidak menangani penjadwalan.

d. Hanya difokuskan pada pencatatan kehadiran siswa

e. Aplikasi ini diperuntukan untuk kepala sekolah dan wali murid

1.4 Tujuan Penelitian

Berdasarkan pada masalah yang telah didefinisikan di atas maka tujuan Tugas Akhir ini adalah sebagai berikut :

(17)

b. Menganalisis keefesienan aplikasi pencatatan kehadiran siswa menggunakan sidik jari dibanding dengan pencatatan kehadiran secara manual.

1.5 Manfaat

Adanya tugas akhir ini diharapkan dapat bermanfaat bagi:

Mahasiswa dapat menerapkan ilmu yang sudah di dapat dari bangku kuliah ke dalam dunia kerja serta memecahkan suatu permasalahan yang ada dan mencari solusi yang baik.

1.6 Metodologi

Pendekatan sistematis/metodologi yang akan digunakan dalam merealisasikan tujuan dan pemecahan masalah di atas adalah dengan menggunakan langkah-langkah berikut :

1. Studi Literatur

Mempelajari metode otentikasi sidik jari yang diperoleh dari buku-buku, artikel, dan dari sumber-sumber lain yang relevan untuk menunjang penyelesaian tugas akhir ini.

2. Pengumpulan data dan survey untuk memperoleh data yang diperlukan dan gambaran nyata mengenai kebutuhan sistem.

3. Pengembangan sistem akan dilakukan menggunakan metode pengembangan perangkat lunak dengan tahapan sebagai berikut :

a. Perencanaan

Tahapan ini dilakukan untuk melakukan perencanaan tentang apa yang akan dikerjakan dan perlu dipersiapkan.

(18)

Tahapan ini menentukan rancangan sistem yang akan dibuat, berdasarkan desain yang diusulkan dan analisis system yang telah dilakukan. Rancangan system menggunakan desain terstruktur.

c. Implementasi

Tahapan ini adalah tahapan untuk implementasi rancangan sistem yang telah disetujui dengan menggunakan bahasa pemrograman dan alat bantu yang sesuai.

d. Pengujian

Tahap terakhir yang dilakukan untuk pengujian sistem secara fungsional yaitu per proses dan menganalisis sistem baru terhadap sistem lama.

1.7 Sistematika Penulisan

Tugas Akhir ini akan disusun berdasarkan sistematika pembahasan sebagai berikut :

BAB I PENDAHULUAN

Berisi latar belakang, perumusan masalah, tujuan penelitian, batasan masalah, metodologi dan sistematika penulisan.

BAB II TINJAUAN PUSTAKA

Menguraikan berbagai teori yang mendukung dan mendasari penulisan tugas akhir ini.

BAB III ANALISA DAN PERANCANGAN SISTEM

(19)

BAB IV IMPLEMENTASI SISTEM

Pada bab ini akan membahas tentang implementasi berdasarkan konsep perancangan yang ada pada BAB III beserta penjelasan tentang kebutuhan sistem supaya aplikasi yang dikerjakan sesuai dengan tujuan dari penulisan Tugas Akhir.

BAB V UJI COBA DAN ANALISA SISTEM

Bab ini menjelaskan tentang pengujian yang dilakukan untuk mengetahui apakah aplikasi yang dibuat bisa bekerja sesuai dengan konsep yang sebenarnya. Selain itu pada bab ini dijelaskan bagaimana tahapan-tahapan yang dilakukan dalam melakukan pembuatan aplikasi

BAB VI PENUTUP

Bab ini akan menjelaskan tentang Kesimpulan dari keseluruhan isi dari laporan Tugas Akhir serta Saran yang disampaikan penulis untuk pengembangan aplikasi yang ada demi kesempurnaan aplikasi yang lebih baik.

DAFTAR PUSTAKA

(20)

6 2.1 Sejarah SMA ULUL ALB@B .

Dalam lingkup ini akan dijelaskan tentang profil SMA ULUL ALB@B dengan menjelaskan Visi dan Misi berdirinya SMA ULUL ALB@B, serta struktur Keorganisasian dan Profil Laboratorium Bahasa Programan Teknik Informatika

2.1.1 Profil SMA ULUL ALB@B

Ketua Yayasan : Drs.Ec.H.A.Hidayat

(21)

rumah-rumahnya, tanah-tanahnya, dan beberapa mobil-mobilnya. Selama ini

beliau meraih impiannya dengan kerja keras dan keuletannya. Impian agar SMA

Ulul Alb@b memiliki gedung sendiri, desain kelas sendiri, ruang laboratorium

sendiri, lapangan sendiripun tercapai walaupun belum semegah SMPnya, namun

bapak kebanggaan Ulul Alb@b ini mempunyai mimpi yang besar untuk bisa

membangun SMA Ulul Alb@b menjadi sekolah fullday yang baik dimata

masyarakat dan bisa di percaya oleh masyarakat luas, serta bisa terakreditasi A

untuk bisa bersaing sehat dengan sekola-sekolah swasta lainnya yang sma-sama

berkeinginan mendapatkan banyak kepercayaan dari halayak luar. Dan tidak lupa

bisa ikut membangun pendidikan bangsa Indonesia agar tercipta masyarakat islam

yang sebenar-benarnya.

Guru-guru yang mengajar di SMA Ulul Alb@b adalah guru-guru professional

pastinya, guru-guru terpilih dengan pendidikan minimal S1 yang mempunyai

wawasan luas dalam bidangnya, kedisiplinan tinggi dan peduli kepada anak

didiknya.

Bapak yang menjadi salah satu pahlawan pendidikan karena dedikasi

tingginya ini sempat berpesan untuk SMA Ulul Alb@b kedepannya, “ kalau ingin

membesarkan SMA Ulul Alb@b harus ada loyalitas dan partisipasi dari warga

sekolah sendiri. Oleh karena itu, harapan saya SMA Ulul Alb@b harus bisa

berjkembang pesat, mandiri, dan bisa melakukan perbaikan beberapa

pembangunan yang belum tercapai. ”kata beliau mengakhiri pembicaraan dengan

(22)

2.1.2 Visi dan Misi SMA Ulul Alb@b

2.1.2.1 Visi

Unggul dalam mutu berpijak pada IPTEK dan IMTAQ serta

berwawasan global

2.1.2.2 Misi

1. Menghasilkan lulusan yang unggul dalam perolehan NUAN dan siap bersaing

untuk memasuki perguruan tinggi favorit

2. Menerapkan sistem pembelajaran dan bimbingan dengan mengacu pada

perkembangan IPTEK

3. Meningkatkan pengamalan pembelajaran agama dan budi pekerti luhur

dilingkungan sekolah

4. Menerapkan disiplin yang tinggi baik dalam belajar maupun beribadah kepada

Allah SWT

5. Meningkatkan Kompetensi siswa agar dapat berprestasi baik dalam bidang

akademik maupun non akademik

2.2 Pengertian Biometrik

Biometrik adalah metode untuk mengindentifikasi atau mengenali seseorang

berdasarkan karakteristik fisik atau perilakunya. Biometrik berhubungan dengan

identifikasi otomatis seorang manusia berdasarkan karakteristik fisiologis atau

perilaku. Tidak seperti karakteristik perilaku, selain memiliki basis fisiologis yang

relatif stabil, tetapi juga dipengaruhi oleh kondisi psikologis manusia yang mudah

(23)

Beberapa karakteristik fisiologis yang dapat dijadikan basis sistem biometric

antara lain : wajah, pola retina, iris mata, geometri telapak tangan, sidik jari dan

lain-lain.

Ada empat persyaratan yang harus dipenuhi agar karakteristik fisiologis

dapat digunakan sebagai indikator karakteristik biometrik dalam identifikasi

personal, yaitu:

• Karakteristik tersebut harus dimiliki oleh semua orang (universal).

• Tidak ada dua orang atau lebih identik dalam karakteristik tersebut (unik)

• Karakteristik tersebut tidak dapat diubah (permanen)

• Karakteristik tersebut dapat diambil atau diukur secara kuantitatif

Sidik jari memenuhi kriteria tersebut. Sidik jari merupakan salah satu teknologi

biometrik yang paling handal[5].

Sampai saat ini, teknologi yang sering digunakan adalah sidik jari,

sementara pengenalan iris mata atau titik khusus wajah belum banyak

diaplikasikan karena alasan faktor ekonomis. Penggunaan sidik jari adalah paling

sering digunakan untuk umum, karena lebih komersial, dan mudah untuk

digunakan semua orang daripada system kepastian pengenalan menggunakan

wajah ataupun mata seseorang.

2.3 Pengenalan sidik jari

Sistem ini meliputi sebuah perangkat keras scanner dan perangkat lunak.

Merekam karakteristik sidik jari yang spesifik, menyimpan data tiap-tiap user ke

dalam sebuah template, ketika user mencoba lagi mengakses maka perangkat

(24)

pembacaan sidik jari dari scanner.

Sistem sidik jari sangat akurat tetapi dapat dipengaruhi oleh

perubahan-perubahan di dalam sidik jari (terbakar, bekas luka dan sebagainya), kotoran dan

faktor-faktor lain yang menimbulkan gangguan pada gambar

2.4 Representasi Citra Sidik Jari

Representasi yang berbasis pada profil citra sidik jari grayscale sudah

lazim dalam sistem verifikasi menggunakan pencocokkan optikal. Keperluan dari

sistem yang menggunakan representasi tersebut masih terbatas karena

faktor-faktor seperti variasi terang-gelap citra, variasi kualitas citra, goresan bekas luka,

dan distorsi global yang muncul dalam citra sidik jari. Representasi yang

mengandalkan struktur alur sidik jari sebagian besar tidak berbeda pada variasi

terang-gelap citra, namun lebih sensitif pada kualitas citra sidik jari[6].

Representasi tersebut terutama berbasis pada alur berhenti (ridge ending)

atau alurbercabang (ridge bifurcation), keduanya dikenal dengan istilah

minutiae[6].

2.5 Otentifikasi Sidik Jari

Diantara semua teknik biometrik, identifikasi fingerprint-based adalah

metoda yang paling tua yang telah sukses digunakan pada banyak aplikasi. Semua

orang mempunyai sidik jari yang unik. Suatu sidik jari dibuat dari satu rangkaian

kerut pada permukaan jari. Keunikan suatu sidik jari dapat ditentukan oleh pola

ridge dan kerut seperti halnya poin-poin rincian yang tidak penting.

Poin-Poin Rincian yang tidak penting adalah karakteristik ridge lokal yang

(25)

Teknik sidik jari dapat ditempatkan ke dalam dua kategori: minutiae-based dan

berdasarkan korelasi.

Teknik minutiae-based yang pertama temukan poin-poin rincian yang

tidak penting dan kemudian memetakan penempatan yang sejenis pada

Bagaimanapun, penggunaan pendekatan ini ada beberapa kesulitan. Hal itu sukar

untuk menyadap poin-poin rincian yang tidak penting itu dengan teliti sehingga

sidik jari mutunya menjadi rendah. Metoda ini juga tidak mempertimbangkan pola

ridge kerut dan hubungan yang global berbagai kesulitan pendekatan yang

minutiae-based. Bagaimanapun, masing-masing mempunyai penempatan yang

tepat untuk suatu pendaftaran dan di buat buat oleh terjemahan gambar dan

perputaran[7].

(26)

Gambar 2.2. Kesesuaian Ridge Pada Sidik Jari

Kesesuaian dasar sidik jari pada minutiae mempunyai permasalahan dalam

penyesuaian perbedaan ukuran pola minutiae. Struktur ridge lokal tidak bisa

dengan sepenuhnya ditandai oleh minutiae.

Dalam otentifikasi sidik jari terdapat 3 komponen utama perancangan, yaitu :

akuisisi, ekstraksi feature, dan pencocokkan[8].

Gambar 2.3 Proses Otentifikasi Sidik Jari

2.5.1 Akuisisi Citra Sidik Jari

Akuisisi citra sidik jari mempunyai dua metode yaitu offline (inked) dan

online (livescan). Pada metode offline, sidik jari dicetak pada kertas dan setelah

(27)

yang kurang bagus karena non-uniform spread pada tinta yang digunakan untuk

mencetak sidik jari tersebut.

Sedangkan metode online, kualitas gambar yang dihasilkan lebih baik dan

biasanya resolusinya 512 dpi dimana dapat meningkatan keandalan pada proses

pencocokan dibandingkan dengan metode sidik jari diprint di kertas.

Teknologi yang paling terkenal untuk memperoleh citra sidik jari yang diambil

secara langsung (live-scan) adalah berbasis pada konsep optikal. Ketika jari

diletakkan pada satu sisi dari prisma, daerah yang menonjol pada jari (ridge), akan

menyentuh permukaan prisma, sedangkan bagian lembahnya tidak menyentuh.

Cahaya yang mengenai bagian kaca yang tersentuh oleh alur sidik jari akan

disebarkan secara acak, sementara pada bagian lembah dari jari, cahaya akan

dipantulkan kembali ke dalam, dan menghasilkan citra sidik jari pada bagian citra.

Sebagai akibatnya, bagian citra yang terbentuk oleh alur sidik jariakan terlihat

gelap dan bagian citra yang terbentuk dari lembah sidik jari akan terlihat

terang[9].

Gambar 2.4 Sidik Jari Yang Diletakkan Di Sensor

(28)

Gambar 2.5 Sidik Jari Hasil Scan

2.5.2 Ekstraksi Feature

Ekstraksi minutiae mendapatkan alur berhenti dan alur bercabang dari citra

masukkan sidik jari. Performansi dari algoritma ekstraksi minutiae sangat

bergantung kepada kualitas dari citra sidik jari. Tujuan pemilihan feature citra

adalah untuk mencari ciri yang paling optimum dari suatu objek yang dapat

membedakan objek tersebut dengan objek-objek yang lain[6].

Gambar 2.6 Ridge Ending dan Ridge Bifurtion

2.6 PHP

PHP merupakan singkatan dari Hypertext Preprocessor yaitu bahasa

berbentuk skrip yang disimpan dan jalankan pada sisi server. Sedangkan hasil

(output) eksekusi dari server ditampilkan pada client dengan menggunkan web

(29)

Dari semua pengunaan PHP, penggunaan pada server-side scripting

merupakan yang paling sering digunakan. Terutama bila membutuhkan website

berbasis web yang dinamis.

PHP dapat dijalankan pada hampir semua operasi windows yang ada saat

ini diantaranya : Linux, Unix (HP-UX, Solaris, OpenSD), Microsoft Windows,

Mac OS X, RISC, dan lain-lain. PHP juga mendukung banyak web server

diantaranya : Apache, Miacrosoft Information Server (IIS), Personal Web Server

(PWS), Netscape Server,iPlanet Server, dan lain-lain.

Dalam melakukan penulisan program PHP dapat menggunkan procedural

programming. Selain iru dapat juga menggunkan gabungan keduanya. Dengan

menggunakan PHP output (hasil keluaran) tidak harus berupa HTML, namun PHP

mempunyai kemampuan unutk menghasilkan gambit PDF bahkan file Flash yang

dihasilkan secara On fly[1]

2.6.1 Konsep kerja PHP

Gambar 2.7 Konsep Kerja PHP

Secara umum konsep kerja dari PHP hamper sama dengan konsep kerja

dari HTML. Dimana terdpat client yang meminta berkas tertentu yang disimpan

pada sisi server. Kemudian server tersebut mengirimkan berkas tersebut pada

client. Perbedaanya adalah pada konsep kerja HTML berkas yang dikirimkan

(30)

antara source code yang disimpan pada sisi server dengan yang dikirim pada

client.

2.6.2 Dasar-dasar PHP

<?PHP

... ... ?>

File contoh1.PHP: <html>

<head> <title>

Contoh Sederhana </title>

</head> <body> <?PHP

Echo (”Hello apakabar? Nama saya PHP script”); ?>

</body> </html>

(31)

2.6.3 Fungsi-fungsi Skrip PHP Untuk Mengakses Mysql

PHP memiliki sejumlah fungsi untuk mengakses berbagai database (dalam

hal ini, PHP merupakan preprosesor yang memiliki fungsi akses database

terlengkap), termasuk database MySQL. Bahkan pada versi terbaru, PHP telah

mengkompilasi driver untuk MySQL bersama dengan programnya, sehingga

pada saat instalasi tidak perlu melakukan kompilasi tambahan untuk database ini.

Langkah-langkah yang harus ditempuh untuk mengakses MySQL adalah sebagai

berikut :

Membuka koneksi dengan server database. Gunakan perintah

mysql_connect.

Melakukan query terhadap sebuah database pada server. Langkah ini

dapat dilakukan menggunakan dua perintah mysql_select_db dan

mysql_query atau dengan satu perintah mysql_db_query.

Untuk perintah (SQL) mengambil data, lakukan pengambilan data

baris-demi-baris menggunakan perintah mysql_fetch_rows atau

mysql_fetch_array.

Menutup koneksi dengan server database apabila semua transaksi telah

selesai dengan perintah mysql_closei.

2.7 MYSQL

MySQL adalah sebuah server database SQL multiuser dan multi-threaded.

SQL sendiri adalah salah satu bahasa database yang paling populer di dunia.

Implementasi program server database ini adalah program daemon 'mysqld' dan

(32)

MySQL dibuat oleh TcX dan telah dipercaya mengelola sistem dengan 40

buah database berisi 10,000 tabel dan 500 di antaranya memi liki 7 juta baris

(kira-kira 100 gigabyte data). Database ini dibuat untuk keperluan sistem

database yang cepat, handal dan mudah digunakan. Walaupun memiliki

kemampuan yangcukup baik, MySQL untuk sistem operasi Unix bersifat

freeware, dan terdapat versi shareware untuk sistem operasi windows. Menurut

pembuatnya, MySQL disebut seperti "my-ess-que-ell" dan bukan my-sequel !.

2.6.1 Keunggulan Mysql

a. MySQL merupakan program yang multi-threaded, sehingga dapat dipasang

pada server yang memiliki multi-CPU.

b. Didukung program-program umum seperti C, C++, Java, Perl, PHP, Python,

TCL APIs dls.

c. Bekerja pada berbagai platform. (tersedia berbagai versi untuk berbagai

sistem operasi).

d. Memiliki jenis kolom yang cukup banyak sehingga memudahkan konfigurasi

sistem database.

e. Memiliki sistem sekuriti yang cukup baik dengan verifikasi host.

(33)

Gambar 3.1 Context Diagram

DFD context digaram digambarkan dengan 6 entitas luar. Entitas pertama user wali murid adalah user yang memiliki hak akses username dan password khusus. Pada aplikasi ini, seorang hanya bisa melakukan proses view data dan report pada semua siswa dengan memasukkan nis dan punya hak akses untuk menambah user. Kedua wali kelas adalah user yang mempunyai hak akses

(34)

mengatur tentang absensi, menambah siswa, menambah admin, menambah user , serta mengelola content website setiap waktu.

Pada DFD context diagram di atas, entitas Wali Murid, Wali Kelas dan Kepala Sekolah sama-sama mengalirkan data permintaan record Absensi ke dalam sistem. yang membedakan user Wali Murid, Wali Kelas dan Kepala Sekolah adalah hak akses pada tiap menu menunya daari waali kelas ada grafik kelas dan antar kelas sedangkan Kepala Sekolah ada tambahan grafik absensi antar tingkatan dan angkatan. Entitas Admin hanya bertugas mengalirkan info-info menambah user, menu dan mengelola absensi.

3.1.1.2. DFD Level 1

(35)

Gambar 3.2 DFD Level 1

(36)

Login. Proses Login juga memberikan umpan balik berupa konfirmasi status proses Login, apakah berhasil atau tidak.

Segera setelah proses Login dilakukan, User yang semula belum dikenali langsung diberikan hak akses sesuai levelnya masing-masing. Dan kemudian ketiga kelompok user itu mengakses prosesnya masing-masing, entitas Wali Murid mengakses proses Menampilkan record untuk Wali Murid, entitas Wali Kelas mengakses proses Menampilkan record untuk Wali Kelas, entitas Kepala Sekolah mengakses proses Menampilkan record untuk Kepala Sekolah. entitas dan admin website mengakses proses Mengelola content website dan menambah user baru.

3.1.1.3.DFD Level 2 User Wali Murid

Gambar 3.3 DFD Level 2 User Wali Murid

(37)

3.1.1.4. DFD Level 2 User Wali Kelas

Gambar 3.4 Level 2 User Wali Kelas

(38)

3.1.1.5. DFD Level 2 User Kepala Sekolah

Gambar 3.5 Level 2 User Kepala Sekolah

(39)

3.1.1.6. DFD Level 2 Admin

Gambar 3.6 Level 2 Admin

DFD Level 2 Administrator menggambarkan fungsionalitas seorang Administrator Website, untuk administrator mengelola wesbite dari belakang layar. Terdapat dua proses utama, yaitu Meng-update content website serta Mengelola User. Dalam proses Meng-update content website, entitas Administrator menginputkan karya ilmiah dan karya tulis terbaru yang ingin ditampilkan pada halaman utama website. Sedangkan pada proses Menglola user, Administrator menginputkan data user terbaru, baik itu user baru atau update profile user atau bahkan penghapusan user. Yang dimaksud user untuk dikelola di sini ialah Admin lain yang levelnya editor.

3.1.1.7. Conceptual Data Model ( CDM )

(40)

Dalam CDM ini digambarkan ada 11 buah tabel data yang saling terkoneksi satu dengan yang lainnya, dengan beberapa perbedaan relasi hubungan yang semuanya akan saling bergantung antara satu sama lainya. Hal ini terjadi karena antar satu tabel dengan tabel lainya nantinya akan saling memerlukan data pada masing-masing tabel, dimana tabel siswa terkoneksi dengan tabel kelas karena tabel kelas merupakan bagian siswa, dan juga tabel siswa terkoneksi dengan tabel absensi karena tabel absensi terdapat data NIS siswa yang telah melakukan absensi dalam sistemdan tabel yang tidak terkoneksi dengan tabel lain adalah tabel User dan tabel login_admin, seperti dapat dilihat pada Gambar 3.7. dibawah ini

(41)

3.1.1.8. Physical Data Model ( PDM )

PDM memodelkan struktur fisik dari database, dengan mempertimbangkan software DBMS serta model struktur yang akan digunakan. PDM yang valid dapat dikonversi ke CDM atau OOM. PDM dapat dihasilkan (di-generate) dari CDM yang valid. Seperti yang kita lihat dari Gambar 3.12, Gambar 3.13 merupakan hasil generate dari CDM tersebut, sehingga lebih kompleks lagi relasi hubungan dari masing-masing table, karena foreign key yang merupakan penghubung masing-masing tabel telah masuk kedalam tabel dan menjadi field didalam tabel yang dibutuhkan terkoneksi dengan yang m enjadi

domain atau inti pusat data.

(42)

3.2. Desain Graphical User Interface

Desain Graphical User Interface (GUI) merupakan hal yang sangat penting dalam tahap analisa dan desain. Hal ini dikarenakan GUI merupakan penghubung antara sistem dengan end user. desain GUI haruslah dibuat

se-friendly mungkin agar memudahkan user dalam pengaksesan navigasi berbasis website.

Pada Sistem Penyajian Data Absensi siswa ini, desain GUI dibagi menjadi bagian utama, yaitu berbasis website. Untuk berbasis website, yaitu Halaman Utama, Halaman User Kepala Sekolah.

3.2.1. Berbasis Website

Portal web merupakan istilah dalam dunia internat dimaksudkan untuk website yang menyediakan beraneka ragam informasi untuk para pengunjungnya dan merupakan halaman yang pertama kali dibuka oleh pengunjung.

3.2.1.1. Desain Halaman Utama

(43)

Gambar 3.9 Desain Halaman Utama

3.2.1.2. Desain Halaman User

Halaman User dibagi lagi menjadi 3 bagian, halaman user Wali Murid, Wali kelas dan Kepala Sekolah. Halaman User Wali Murid memiliki tampilan sebagaimana Gambar 3.10 berikut ini.

Gambar 3.10 Desain Halaman User Wali Murid

(44)

Menu yang disediakan untuk Wali Murid Yang ingin mengetahui Absensi anaknya. Jika menu Data Absensi siswa , maka akan muncul tampilan seperti pada Gambar 3.11 berikut ini.

Gambar 3.11 Desain Halaman data Absensi siswa

Jika menu Grafik Kehadiran dipilih, maka akan muncul tampilan seperti pada Gambar 3.12 berikut ini.

(45)

Jika menu Grafik kedatangan dipilih, maka akan muncul tampilan seperti pada Gambar 3.13 berikut ini.

Gambar 3.13 Desain Halaman Grafik Kedatangan Siswa

Jika menu Pengaturan profil dipilih, maka akan muncul tampilan seperti pada Gambar 3.14 berikut ini.

(46)

Masuk Pada user Wali Kelas Jika menu Kelas dipilih, maka akan muncul tampilan seperti pada Gambar 3.15 berikut ini.

Gambar 3.15 Desain Halaman Grafik Kehadiran Kelas

Masuk Pada user Wali Kelas Jika menu absensi antar kelas dipilih, maka akan muncul tampilan seperti pada Gambar 3.19 berikut ini.

(47)

Msuk Pada User Kepala sekolah .disini menu menu yang diteapkan sama persis hanya membedakan ada menu tingkata absensi dan menu angkatan jika kita memilih tingkatan pada Gambar 3.17 berikut ini.

Gambar 3.17. Desain Halaman grafik Kehadiran Antar Tingkatan Kelas

Jika menu Angkatan dipilih, maka akan muncul tampilan seperti pada Gambar 3.18 berikut ini.

(48)

3.2.1.3. Desain Halaman Administrator

halaman administrator website Halaman administrator website sebagaimana Gambar 3.18. berikut.

Gambar 3.18. Desain Halaman Administrator

3.3. Desain Database

Kumpulan dari item data yang saling berhubungan satu dengan yang lainnya yang diorganisasikan berdasarkan sebuah skema atau struktur tertentu, tersimpan di hardware komputer dan dengan software untuk melakukan manipulasi untuk kegunaan tertentu.

3.3.1 Database dbabsensi

(49)

menggantikan sistem yang telah ada, namun menambahkan sebuah sistem penyajian data sebagai solusi.

Desain Database Absensi SMA Ulul Alb@b seperti pada gambar 3. Adalah

Tabel 3.1. Desain Tabel Absensi

Tabel3.2. Desain Tabel Wali kelas

(50)

Tabel 3.4. Desain Tabel History Kelas

Tabel 3.5. Desain Tabel History Wali

Tabel 3.6. Desain Tabel Kelas

(51)

Tabel 3.8. Desain Tabel submenu User

Tabel 3.9. Desain Tabel Admin

(52)

39

BAB IV

HASIL DAN PEMBAHASAN

Pada bab IV ini akan dibahas hasil Pembuatan Aplikasi Absensi Online

Menggunakan Sensor Sidik Jari

4.1 Kebutuhan Sistem

Ada beberapa hal dalam pengembangan aplikasi yang harus diperhatikan

sebelum akhirnya sampai pada langkah menjalankan program atau aplikasi, antara

lain perangkat keras (hardware), perangkat lunak (software) serta bagaimana

akhirnya aplikasi dapat sampai ke tangan user / pemakai.

Sistem Penyajian Data Absensi Siswa dilakukan secara Online dengan

menggunakan Sensor Sidik jari dan ditulis dengan menggunakan bahasa PHP

untuk pembuatan system onlinenya serta Visual basic 6.0 untuk aplikasi

desktopnya.adapun proses online ini membutuhkan web server serta database

server dalam proses implementasinya. Adapun web server yang digunakan dalam

Tugas Akhir ini adalah XAMPP Server dan database servernya adalah MYSQL.

4.2.Implementasi Sistem

Seperti yang telah disinggung pada bagian Kebutuhan Sistem di atas,

sistem yang dibangun ini terdiri atas dua unsur utama, GUI dan basis data. GUI

direpresentasikan oleh website dan sensor sidik jari dipresentasikan oleh Aplikasi

desktop, sedangkan data yang disajikan berasal dari database. Karena itu,

uraian pada bagian Implementasi Sistem ini akan dibagi berdasarkan kedua unsur

(53)

4.2.1. Berbasis desktop

Pada sub bab implementasi aplikasi desktop ini dengan menggunakan desain

antarmuka menjelaskan form apa saja yang terlibat dalam aplikasi tersebut yang

menampilkan beberapa aplikasi form yaitu :

4.2.1.1.Form Tampilan Halaman Depan

Pada form tampilan utamadidesain sedemikian rupa sehingga menjadi tampilan

utama yang menarik pengguna. Pada halaman utama terdapat terdapat list menu yang

dapat digunakan yaitu menu absensi dan Registrasi dilihat pada Gambar 4.1.

Gambar 4.1. Form Halaman Utama

Private Sub absensi_Click() Form4.Show

End Sub

Private Sub reg_Click() Form3.Show

(54)

4.2.1.2.Form Tampilan Regestrasi

Pada Form Regestrasi ada tiga tahapan yaitu dengan mengetikan NIS ( no. Induk

siswa) kemudian verifikasi data siwa setelah itu melakukan proses regestrasi. seperti

Gambar 4.2. no.induk siswa, gambar 4.3. verifikasi data

Gambar 4.2. Form NIS

Gambar 4.3. Form verifikasi data siswa

Dim con As ADODB.Connection Dim rsSiswa As ADODB.Recordset

Private Sub Form_Load()

Set con = New ADODB.Connection con.Open "dsn=abs"

End Sub

Private Sub txtInduk_KeyPress(KeyAscii As Integer) On Error GoTo salah

If KeyAscii = 13 Then

(55)

' lblNis.Caption = Form3.txtInduk.Text

Set rsSiswa = New ADODB.Recordset rsSiswa.CursorLocation = adUseClient

rsSiswa.Open "select * from siswa where nis = '" & txtInduk.Text & "'", con, adOpenDynamic, adLockOptimistic Set DataGrid1.DataSource = rsSiswa

Form1.txtNamaSiswa.Text = DataGrid1.Columns(1) Form1.cbJk.Text = DataGrid1.Columns(2)

Form1.txtAlamatSiswa.Text = DataGrid1.Columns(3) Form1.txtStatus.Text = DataGrid1.Columns(5) Form1.txtIterasi.Text = DataGrid1.Columns(6) Me.Hide

Form1.Show End If

Exit Sub salah:

MsgBox "Data Siswa Tidak Ditemukan !", vbInformation, "" End Sub

Setelah mengetikan NIS maka akan tampil form Verifikasi data siwa dimana

form ini sifatnya hanya menampilkan saja tanpa adanya inputan. Setelah itu melakukan

proses registrasi sidik jari seperti pada gambar 4.4. proses regestrasi

(56)

ion Explicit

Dim FPDatabase As New UareUSDK.clsFPDatabase

Dim WithEvents Registration As UareUSDK.clsFPRegistration

Private Sub Command2_Click()

Registration.FPRegistrationCancel Text1.Text = ""

Combo1.Text = "Left Pinkie" picSample(0) = Nothing Command2.Enabled = False End Sub

Private Sub Form_Load() On Error GoTo ErrMsg

If FPDatabase.ActiveConnection("DRIVER={Microsoft Access Driver (*.mdb)};" & _

"pwd=;" & _ "UID=Admin;" & _

"DBQ=" & App.Path & "\SampleDB.mdb") = sc_Fail Then

MsgBox "Database Connection Fail" Else

Set Registration = New UareUSDK.clsFPRegistration

Registration.PictureSamplePath = App.Path & "\FPTemp.BMP" Registration.PictureSampleHeight = picSample(0).Height Registration.PictureSampleWidth = picSample(0).Width End If

Exit Sub ErrMsg:

If Err.Number = 430 Then

MsgBox "You need to recompile your aplication to use the latest SDK version" Command1.Enabled = False

If Text1.Text = "" Then MsgBox "ID can not empty" Else

Registration.FPRegistration Text1.Text, GetFingerNumber(Combo1.Text)

(57)

End Sub

Private Sub Registration_FPRegistrationImage(CurentSample As Integer)

picSample(CurentSample) = LoadPicture(App.Path & "\FPTemp.BMP") dot(CurentSample).Visible = True

End Sub

Private Sub Registration_FPRegistrationStatus(Status As RegistrationStatus)

Command1.Enabled = True Select Case Status Case r_OK

MsgBox "Registration Success" Case r_FpIdAlreadyExist

MsgBox "ID dan finger number already exist"

Combo1.Text = "Left Pinkie" picSample(0) = Nothing Command1.Enabled = True Command2.Enabled = False End Sub

(58)

Setelah melakukan regestrasi pendaftaran maka siswa bisa langsung melakukan proses

absensi

4.2.1.3.Form Tampilan Absensi

Pada melakukan absensi proses yang dilakukan tidak jauh beda dengan proses

regestrasi yaitu pertama kita dengan mengetikan NIS lalu akan tampil form Absensi

siwa kemudian melakukan proses absen dengan meletakkan sidik jari kita ke finger

print kemudian tekan tombol absen maka akn ada verifikasi terlambat atau masuk

seperti gambar

Gambar 4.5. Form Proses Absensi

j = 8

Case "Right Pinkie" j = 9

Case "(None)" j = 10 Case Else j = 10 End Select

(59)

4.2.2. Berbasis Website

Penggunaan sarana website sebagai antar muka sistem dikarenakan sistem

penyajian data ini ditujukan untuk menjadi website dari

www.smaululalbab/absensi.sch.id yang merupakan website utama SMA Ulul Alb@b.

Website ini terdiri atas dua halaman yaitu Halaman User, Halaman Administrator.

Halaman User adalah halaman yang pertama kali diakses oleh pengunjung website yang

merupakan inti dari sistem penyajian data ini. Sedangkan Halaman Administrator

adalah halaman bagi administrator website untuk mengelola content website. Halaman

Administrator diakses melalui back-end.

4.2.2.1. Halaman Utama

Halaman Utama memiliki tampilan seperti yang ditunjukkan pada Gambar 4.1

berikut ini.

(60)

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

<title> ULUL ALB@B LOGIN</title> <link rel="stylesheet" type="text/css"

href="css/jquery/jquery.ui.all.css" media="screen"/>

<link rel="stylesheet" type="text/css" href="css/table_data.css" media="screen"/>

<link rel="stylesheet" type="text/css"

href="css/lightbox/style.css" media="screen"/>

<link rel="stylesheet" type="text/css" href="css/style.css" title="style_blue" media="screen"/>

<link rel="alternate stylesheet" type="text/css"

href="css/style_green.css" title="style_green" media="screen" /> <link rel="alternate stylesheet" type="text/css"

href="css/style_red.css" title="style_red" media="screen" /> <link rel="alternate stylesheet" type="text/css"

href="css/style_purple.css" title="style_purple" media="screen"

<li><a class="button white fl" title="preview" href="index.php"><span class="icon_single preview"></span></a></li>

<li class="s_1"></li>

<li class="logo"><strong>LUL ALB@B</strong> LOGIN user</li> </ul>

<div id="content-login"> <div class="logo"></div>

<h2 class="header-login">Form Login </h2>

<form id="box-login" action="cek_login.php" method="post"><p> <label class="req"> username </label>

<br/>

<input type="text" name="username" value="" id="username"/> </p>

(61)

<label class="req"> password </label> <br/>

<input type="password" name="password" value="" id="password"/> </p>

<p class="fl">

<input type="checkbox" name="remember" value="1" id="remember"/> <label class="rem"> Remember me </label>

</p>

<p class="fr">

<input type="button" value="Error test" class="button black" id="error"/>

<input type="submit" value="Login" class="button themed" id="login"/>

</p>

<div class="clear"></div> </form>

<a class="forgot" href="#"> Forgot password? </a>

<span class="message error">Error Test <strong>Username</strong> and/or <strong>Password</strong> are wrong</span>

<span class="message information">hanya tekan

<strong>Login</strong> atau <strong>Error Test</strong></span> </div>

</div>

<div id="footer">

<p class="copy fl">Copyright 2010<strong> ULUL ALB@B </strong>LOGIN user. All rights reserved.</p>

<ul class="button language_button white fr"> <li class="icon_single language fl"></li> <li class="clear"></li>

</ul> </body> </html> }

Ketika tombol Login ditekan, maka sesuai dengan action form Login di atas,

inputan user akan dikirim dengan metode POST, kemudian akan akan diperiksa dengan

skrip di bawah ini.

<?php

$cari_username=mysql_query("SELECT * FROM user WHERE kode_user='$username'");

$ketemu_username=mysql_num_rows($cari_username); if($ketemu_username>0)

(62)

$password=md5(anti_injection($_POST[password])); $verifikasi=mysql_query("SELECT * FROM user WHERE kode_user='$username' AND password_user='$password'");

$_SESSION[session_user] =$id_session;

mysql_query("UPDATE user SET session_user='$id_session' WHERE kode_user='$r[kode_user]'");

inputan user tadi akan diperiksa dulu, apakah berupa huruf atau angka, inputan

disaring lagi dengan fungsi anti_injeksi() yang penulis tambah. Fungsi ini mengandung

fungsi-fungsi bawaan PHP, seperti mysql_real_escape_string(), stripslashes(),

strip_tags() dan htmlspecialchars() yang berguna untuk menyaring setiap karakter atau

tag membahayakan yang terkandung dalam inputan user.

Setelah lolos dari filter, barulah username yang dimasukkan oleh user tadi

diperiksa apakah ada atau tidak di dalam database. Proses pemeriksaan ini sekaligus

mengambil semua data user dari database, yang apabila proses login ini berhasil, semua

data tersebut akan langsung didaftarkan pada session untuk memberikan hak akses pada

(63)

atau tidak, sebelum memberikan hak akses. Untuk lebih jelasnya dapat dilihat pada

potongan script berikut ini:

Statement header ('location:user/media.php?module=home'); di dalam potongan

script di atas menandakan apabila user berhasil melakukan proses Login, maka dia akan

diarahkan pada halaman lain yang merupakan Halaman User.

4.2.2.2. Halaman User

Halaman User adalah halaman bagi user yang telah terdaftar dan telah berhasil

melakukan proses Login. Halaman User ini digunakan oleh 3 kelompok user, yaitu Wali

murid, Wali kelas, Kepala Sekolah. Perbedaan bagi kedua kelompok user itu ada pada

menu yang ditampilkan. Untuk lebih jelas, perhatikan Gambar 4.7., Gambar 4.8. dan

Gambar 4.9. berikut ini.

(64)

Gambar 4.8. Halaman User Wali Kelas

Gambar 4.9. Halaman User Kepala Sekolah

Pada Halaman User Wali Murid, menu yang ditampilkan hanyalah menu-menu

(65)

kedatangan sedangkan pada Halaman User Wali Kelas terdapat menu tambahan yaitu

Grafik Kelas dan Grafik antar Kelas.khusus untuk Halaman User Kepala Sekolah

terdapat menu tambahan berupa Grafik Tingkatan dan Grafik Angkatan

Menu Manajemen User adalah menu yang diperuntukkan bagi user Wali Murid

untuk merubah informasi profil mereka. Informasi yang dimaksud melingkupi

password, email serta notlp/hp, untuk username dan nama_lengkap tidak bisa dirubah,

untuk User Internal menu Menejemen User merupakan menu untuk menambah user

baru seperti pada Gambar 4.10. berikut ini.

Gambar 4.10. Menu Manajamen User Wali Murid

Sama seperti form Login pada Halaman Utama, form Manajemen User ini

sangat terbuka dengan kemungkinan injeksi oleh user yang tidak bertanggung jawab.

Karena itu semua fungsi filter inputan yang diimplementasikan pada form Login juga

(66)

ditambah lagi dengan pencocokan format inputan dengan format field pada database,

dengan tujuan agar inputan user dapat disimpan dengan sukses ke dalam database.

Untuk mendukung kerapian file yang digunakan, terutama untuk Halaman User

ini, maka penulis mengembangkan sistem sederhana yang memanfaatkan potongan

script di bawah ini:

if ($_GET[siswa]=='mainmenu'){

if ($_SESSION[leveluser]=='admin'){

include "modul/mod_mainmenu/mainmenu.php"; }

}

Dengan statement GET yang ada di atas, maka setiap menu yang dipilih oleh

user akan dibedakan berdasarkan module-nya. Jika module-nya sudah didapatkan, maka

akan dicocokkan dengan daftar menu yang ada di dalam database. Kemudian setelah

ketemu yang cocok dengan module tersebut, maka statement include akan dieksekusi.

Hal ini berarti setiap script menu terletak di dalam directory

“modul/mod_mainmenu/mainmenu.php” Dengan cara itu maka setiap script tertata rapi

di dalam folder modul dan terpisah-pisah berdasarkan namanya. Hal ini juga

memudahkan apabila ada penambahan menu di kemudian hari, karena hanya perlu

menambahkan data module-nya di database menu_user dan meletakkan script menunya

pada folder menu.

Penulis menggunakan cara seperti di atas pada Halaman Administrator juga.

Dengan begitu, jadilah sebuah manajemen konten yang dinamis. Hal ini sangat

menguntungkan untuk pengembangan selanjutnya.

4.2.2.3. Halaman Administrator

Halaman Administrator website diakses melalui back-end begitu juga yang SMS

(67)

Gambar 4.11 Back-end Administrator

Script yang digunakan untuk membuat form Login di atas dan untuk memeriksa

dan menyaring inputan administrator sama persis dengan yang telah diimplementasikan

pada Halaman User sebelumnya. Jika administrator berhasil melewati proses Login ini,

maka dia akan diarahkan pada Halaman Administrator yang berfungsi sebagai sarana

pengelolaan konten website terutama konten yang disajikan pada user yang terigistrasi.

Hal itu ditunjukkan dengan menu-menu yang tersedia bagi administrator, seperti yang

(68)

Gambar 4.12 Halaman Admin Website

Sama seperti Halaman User, pada Halaman Administrator ini juga terdapat lebih

dari satu kelompok user yang bisa mengaksesnya, yaitu Administartor dan Editor.

Administrator di sini adalah super administrator yang berhak penuh atas segala

pengaturan konten website. Pada Halaman Administrator ini, administrator diberikan

keleluasaan dalam navigasi halaman. Di bagian kana disediakan menu-menu untuk

mengatur konten website, Manajemen Absensi, Manajemen Siswa, Manajemen User

untuk mengelola user administrator, Manajemen Modul untuk mengelola menu di

Halaman Administrator ini sendiri.

4.2.3. Database

Seperti yang telah dibahas di Bab III, database yang digunakan untuk

kepentingan penyajian data akademik dan syahriyah siswa, terdiri dari database asli

(69)

4.2.3.1. Berbasis Website

Layanan berbasis website ini menampilkan semua informasi Absensi di

sekolah secara online melalui media internet. Layanan ini menampilkan data-data yang

bersifat dinamis seperti absensi yang dapat membantu untuk melakukan evaluasi.

4.2.3.1.1. Menu Data Absensi

Menu Data ini mengakses table siswa dengan menggunakan view yang ada pada

database asli. Untuk menyajikan data Absensi pada user, baik user Wali murid, Wali

Kelas dan Kepala sekolah, digunakan query berikut:

case "tampil": kode_kelas as SISWA from absensi

where nis='$nis' and tanggal_absen between '$_POST[date1]' and '$_POST[date2]'

order by kode_kelas desc"));

$ketemu=mysql_num_rows(mysql_query("select * from history_wali where nip='$_SESSION[kode_user]' and as KELAS from absensi

where nis='$nis' and tanggal_absen between '$_POST[date1]' and '$_POST[date2]'

order by kode_kelas desc"));

$kelas=mysql_fetch_array(mysql_query("select nama_kelas from kelas where kode_kelas='$ambil[KELAS]'"));

$total=mysql_query("select distinct tanggal_absen from absensi

(70)

$nis adalah NIS yang ingin ditampilkan datanya. Tampilannya akan seperti pada

Gambar 4.16. berikut.

Gambar 4.13. Menu Data Absensi

4.2.3.1.2. Menu Kehadiran

Menu Kehadiran ini mengakses table NIS yang ada pada database asli. Dalam

hal untuk mempermudah join table maka penulis menggunakan view untuk menyajikan

data Kehadiran pada user, baik user Wali murid, Wali Kelas dan Kepala sekolah

digunakan query berikut:

case "tampil":

if($_SESSION[level_user]=='ortu')

$_SESSION[xy_ortu_kehadiran_nis]=$_SESSION[kode_user]; elseif($_SESSION[level_user]=='guru')

{

$ambil_kelas=mysql_fetch_array(mysql_query("select distinct kode_kelas as SISWA from absensi

(71)

'$_POST[date1]' and '$_POST[date2]' order by kode_kelas desc"));

$ketemu=mysql_num_rows(mysql_query("select * from history_wali where nip='$_SESSION[kode_user]' and

$nama=mysql_fetch_array(mysql_query("select nama_siswa from siswa where nis='$_SESSION[xy_ortu_kehadiran_nis]'"));

$ambil=mysql_fetch_array(mysql_query("select distinct kode_kelas as KELAS from absensi

where nis='$_SESSION[xy_ortu_kehadiran_nis]'

and tanggal_absen between '$_POST[date1]' and '$_POST[date2]' order by kode_kelas desc"));

$kelas=mysql_fetch_array(mysql_query("select nama_kelas from kelas where kode_kelas='$ambil[KELAS]'"));

$_SESSION[xy_ortu_kehadiran_date1]=$_POST[date1]; $_SESSION[xy_ortu_kehadiran_date2]=$_POST[date2];

$nis adalah NIS yang ingin ditampilkan datanya. Tampilannya akan seperti pada

Gambar 4.14. berikut.

(72)

4.2.3.1.3. Menu Kedatangan

Menu Kedatangan ini mengakses table NIS dan Mengikuti yang ada pada

database asli. Dalam hal untuk mempermudah join table maka penulis menggunakan

view untuk menyajikan data Kedatangan pada user, baik user Wali murid, Wali Kelas

dan Kepala sekolah, digunakan query berikut:

case "tampil": kode_kelas as SISWA from absensi

where nis='$_POST[kode_user]' and tanggal_absen between '$_POST[date1]' and '$_POST[date2]'

order by kode_kelas desc"));

$ketemu=mysql_num_rows(mysql_query("select * from history_wali where nip='$_SESSION[kode_user]' and as KELAS from absensi

where nis='$_SESSION[xy_ortu_kedatangan_nis]'

and tanggal_absen between '$_POST[date1]' and '$_POST[date2]' order by kode_kelas desc"));

$kelas=mysql_fetch_array(mysql_query("select nama_kelas from kelas where kode_kelas='$ambil[KELAS]'"));

$_SESSION[xy_ortu_kedatangan_date1]=$_POST[date1]; $_SESSION[xy_ortu_kedatangan_date2]=$_POST[date2];

$nis adalah NIS yang ingin ditampilkan datanya. Tampilannya akan seperti pada

(73)

Gambar 4.15. Menu Kedatangan Siswa

4.2.3.1.4. Menu Kelas

Menu Kelas ini mengakses table Kelas yang ada pada database asli. Dalam hal

untuk mempermudah join table maka penulis menggunakan view untuk menyajikan

grafik absensi perkelas pada user Wali kelas, digunakan query berikut:

case "tampil":

if($_SESSION[level_user]!='guru') header('location:?module=home'); else

{

$kelas=mysql_fetch_array(mysql_query("select * from history_wali where nip='$_SESSION[kode_user]' order by kode_kelas desc")); $total_hari=mysql_num_rows(mysql_query("select distinct

tanggal_absen from absensi where kode_kelas='$kelas[kode_kelas]' and tanggal_absen between '$_POST[date1]' and

'$_POST[date2]'"));

$_SESSION[xy_guru_kelas_kode_kelas]=$kelas[kode_kelas]; $_SESSION[xy_guru_kelas_date1]=$_POST[date1];

$_SESSION[xy_guru_kelas_date2]=$_POST[date2]; $_SESSION[xy_guru_kelas_total]=$total_hari;

$ambil=mysql_fetch_array(mysql_query("select * from kelas where kode_kelas='$kelas[kode_kelas]'"));

Dari skrips diatas akan memunculkan suatu grafik data kehadiran siswa di kelas

(74)

Gambar 4.16. Menu Kehadiran Kelas

4.2.3.1.5. Menu Antar kelas

Menu Antar Kelas ini mengakses table Kelas, history_kelas dan kode kelas yang

ada pada database asli. Dalam hal untuk mempermudah join table maka penulis

menggunakan view untuk menyajikan data Nilai pada user, baik user Wali murid

maupun Internal, digunakan query berikut:

case "tampil":

if($_SESSION[level_user]!='guru') header('location:?module=home'); else

{

$kelas=mysql_fetch_array(mysql_query("select * from history_wali where nip='$_SESSION[kode_user]' order by kode_kelas desc")); $total_hari1=mysql_num_rows(mysql_query("select distinct

tanggal_absen from absensi where kode_kelas='$kelas[kode_kelas]' and tanggal_absen between '$_POST[date1]' and

'$_POST[date2]'"));

(75)

and tanggal_absen between '$_POST[date1]' and '$_POST[date2]'"));

$ambil1=mysql_fetch_array(mysql_query("select * from kelas where kode_kelas='$kelas[kode_kelas]'"));

$ambil2=mysql_fetch_array(mysql_query("select * from kelas where kode_kelas='$_POST[kelas2]'"));

Tampilan grafik antar kelas akan seperti yang ditunjukkan pada gambar 4.17 di

bawah ini.

Gambar 4.17 Menu Kehadiran Antar Kelas

4.2.3.1.6. Menu Tingkatan

Menu ini mengakses tabel jenis dan transaksi yang ada pada database Syahriyah.

Dalam hal untuk mempermudah join table maka penulis menggunakan view untuk

menyajikan data Nilai pada user, baik user Wali Murid maupun Internal, seperti pada

(76)

$total_hari1=mysql_num_rows(mysql_query("select distinct tanggal_absen from absensi, kelas

where absensi.kode_kelas=kelas.kode_kelas and kelas.tingkatan_kelas='$_POST[tingkat1]' and tahun_ajaran='$_POST[ta1]'

and absensi.tanggal_absen between '$_POST[date1]' and '$_POST[date2]'"));

$total_hari2=mysql_num_rows(mysql_query("select distinct tanggal_absen from absensi, kelas

where absensi.kode_kelas=kelas.kode_kelas and kelas.tingkatan_kelas='$_POST[tingkat2]' and tahun_ajaran='$_POST[ta2]'

and absensi.tanggal_absen between '$_POST[date1]' and '$_POST[date2]'"));

Tampilan grafik antar kelas akan seperti yang ditunjukkan pada gambar 4.18 di

bawah ini

Gambar 4.18. Menu Tingkatan Antar Kelas

4.2.3.1.7. Menu Angkatan

Menu Angkatan ini mengakses table history dan Mengikuti yang ada pada

(77)

view untuk menyajikan data Kedatangan pada user, baik user Wali murid, Wali Kelas

dan Kepala sekolah, digunakan query berikut:

case "tampil": tanggal_absen from absensi, kelas

where absensi.kode_kelas=kelas.kode_kelas and tahun_ajaran='$_POST[ta1]'

and absensi.tanggal_absen between '$_POST[date1]' and '$_POST[date2]'"));

$total_hari2=mysql_num_rows(mysql_query("select distinct tanggal_absen from absensi, kelas

where absensi.kode_kelas=kelas.kode_kelas and tahun_ajaran='$_POST[ta2]'

and absensi.tanggal_absen between '$_POST[date1]' and '$_POST[date2]'"));

Tampilan grafik antar kelas akan seperti yang ditunjukkan pada gambar 4.22. di bawah

ini

(78)

65

PENGUJIAN SISTEM

Pada bab ini akan dijelaskan tentang ujicoba dan evaluasi program yang

menerangkan bagaimana jalannya program dengan kemungkinan langkah-langkah

yang dilakukan admin maupun wali murid. Proses-proses yang ada pada aplikasi

online dengan menggunakan sidik jari ini akan dijelaskan secara detail.

Pada pembuatan Sistem aplikasi ini untuk membatu wali murid dan kepala

sekolah memonitoring kegiatan siswa di sekolah. ini dilakukan ujicoba pada

masing-masing menu dan command yang ada. Ujicoba ini dilakukan untuk

mengetahui bagaimana proses jalannya sistem dalam menangani permasalahan

dengan diagnosa yang diberikan berdasarkan analisa terhadap permasalahan

tersebut. Proses ujicoba pada masing-masing menu tersebut adalah:

5.1. Halaman Interface

Halaman Interface merupakan tampilan halaman yang pertama kali di

akses, dan halaman ini dibagi menjadi dua yaitu Halaman login di peruntukkan

user (wali murid ,wali kelas dan kepala sekolah) dan form regestrasi dan absensi

berupa aplikasi desktop serta halaman Absensi hanya berhak diakses oleh admin

sebagai user dalam aplikasi ini, karena kedua menu ini pintu masuk pada Menu

absensi .

5.1.1.Berbasis Desktop

Pada sub bab implementasi aplikasi desktop ini dengan menggunakan

desain antarmuka menjelaskan form apa saja yang terlibat dalam aplikasi tersebut

(79)

5.1.1.1. Form Tampilan Halaman Depan

Pada form tampilan utama didesain sedemikian rupa sehingga menjadi

tampilan utama yang menarik pengguna. Pada halaman utama terdapat terdapat

list menu yang dapat digunakan yaitu menu absensi dan Registrasi dilihat pada

Gambar 5.1.

Gambar 5.1. Form Halaman Utama

5.1.1.2Form Tampilan Regestrasi

Pada Form Regestrasi ada tiga tahapan yaitu dengan mengetikan NIS ( no.

Induk siswa) kemudian verifikasi data siwa setelah itu melakukan proses

regestrasi. seperti Gambar 5.2. no.induk siswa, gambar 5.3. verifikasi data

(80)

Gambar 5.3. Form verifikasi data siswa

Setelah mengetikan NIS maka akan tampil form Verifikasi data siwa

dimana form ini sifatnya hanya menampilkan saja tanpa adanya inputan. Setelah

itu melakukan proses registrasi sidik jari seperti pada gambar 5.4. proses

regestrasi

(81)

Proses diatas hanya bisa dilakukan hanya pada jari yang sama apabila beda maka

akan muncul tampilan gambar 5.5. sebagai berikut

Gambar 5.5. Form Proses Regestrasi salah

5.1.1.3. Form Tampilan Absensi

Pada melakukan absensi proses yang dilakukan Hanya menggunakan jari

yang telah di regestrasi.jika berhasil maka akan muncul tampilan seperti yang ada

di gambar 5.6 sebagai berikut

(82)

Apabila anda belum teregestrasi maka data yang terisikan kosong dan anda tidak

dapat absensi seperti yang ada di gambar 5.7

Gambar 5.7. Form Proses Absensi yang belum regestrasi

5.2.1. Berbasis Website

Penggunaan sarana website sebagai antar muka sistem dikarenakan sistem

penyajian data ini ditujukan untuk menjadi website utama Absensi SMA Ulul

Alb@b. Website ini terdiri atas dua halaman yaitu Halaman User, Halaman

Administrator. Halaman User adalah halaman yang pertama kali diakses oleh

pengunjung website yang merupakan inti dari sistem penyajian data ini.

Sedangkan Halaman Administrator adalah halaman bagi administrator website

untuk mengelola content website. Halaman Administrator diakses melalui

back-end.

5.2.1.1. Halaman Utama

Halaman Utama ini ada 3 user memiliki tampilan seperti yang ditunjukkan

(83)

Gambar 5.8 Login Orang Tua

(84)

Gambar 5.10 Login Kepala Sekolah

Apabila berhasil melakukan login baik dari orang tua, guru dan kepala

sekolah maka akan muncul tampilan seperti yang ada pada gambar 5.11 :

(85)

Ini adalah tampilan utama setelah login, berikut yang saya contohkan

adalah menu tampilan dari kepala sekolah. Karena menunya lengkap dan yang

membuatnya beda dari menu user orang tua dan wali kelas. Berikut ini saya akan

memberikan tampilan dari setiap menu – menu yang ada. Menu pertama yaitu

menu absensi yang saya contohkan adalah nis 00001 berikut tampilannya seperti

gambar 5.12 :

Gambar 5.12 Data Absensi

Pada gambar di atas nama siswa Dimas Kharesa itu absensinya

menunjukkan keterangan Terlambat.

Berikut ini adalah tampilan menu kedua yaitu grafik kehadiran siswa

(86)

Gambar 5.13. grafik kehadiran siswa

Menuju ketampilan menu ketiga yaitu grafik kedatangan siswa yang akan

ditunjukan seperti pada gambar 5.14.

(87)

Tampilan ke empat yaitu grafik kehadiran kelas yang akan ditunjukan

seperti pada gambar 5.15 :

Gambar 5.15 Kehadiran Kelas

Menuju ketampilan menu ke lima yaitu grafik kehadiran antar kelas yang

akan ditunjukan seperti pada gambar 5.16 :

(88)

Menuju ketampilan menu ke enam yaitu grafik antar tingkatan kelas yang akan

ditunjukan seperti pada gambar 5.17 :

Gambar 5.17 Kehadiran Antar Tingkatan Kelas

Di dalam grafik ini terdapat menu driildon dimana kepala sekolah bisa

menganalisa grafik di atas semisal bila di klik dari salah satu grafik di atas maka

akan menuju grafik kelas, setelah dari grafik kelas kalu di klik dari salah satu

grafiknya lagi maka langsung menuju ke grafik kehadiran siswa. Grafik tingkatan

yang saya contohkan di atas yaitu tingkatan antara kelas satu dengan kelas dua

dalam tahun ajaran yang sama yaitu tahun 2010 – 2011.

Menu ke tujuh yaitu grafik angkatan dan antar kelas ini sama halnya grafik

di atas memiliki meni driildon, dimana kepala sekolah bisa membandingkan dari

setiap tahun mengalami peningkatan dalam hal kehadiran atau tidak. Berikut

(89)

Gambar 5.18 Grafik Kehadiran Antar Angkatan

Di dalam grafik ini terdapat menu driildon dimana kepala sekolah bisa

menganalisa grafik di atas semisal bila di klik dari salah satu grafik di atas maka

akan menuju grafik kelas, setelah dari grafik kelas kalu di klik dari salah satu

grafiknya lagi maka langsung menuju ke grafik kehadiran siswa.

5.2.1.2. Halaman Administrator Website

Halaman Administrator website diakses melalui back-end begitu juga yang

Gambar

Gambar 2.8 Output dari File contoh1.php
Gambar 3.1 Context Diagram
Gambar 3.2 DFD Level 1
Gambar 3.3 DFD Level 2 User Wali Murid
+7

Referensi

Dokumen terkait

Jenis penelitian dalam skripsi ini adalah Penelitian Tindakan Kelas (PTK). Subjek penelitian adalah peserta didik SD Karitas kelas IVB Tahun Ajaran 2013/2014. Penelitian

Lastly, the Regression Test was conducted to determine whether there was a difference in shoulder strength between routinely trained badminton players and non-badminton

Berapa besar nilai tambah produk yang dihasilkan oleh home industry gula kelapa kristal pada Kelompok Tani Sari Manggar Manis Desa Somorejo, Kecamatan Bagelen,

Jam berapa setiap hari kamu berangkat sekolah.. Berapa jumlah

darah sehingga mereka tidak mengkonsumsi secara rutin untuk diet dalam menjaga tekanan darahnya supaya dalam batas normal, 2 penderita hipertensi yang pernah mengetahu

disimpan juga dalam pemesanan data store, memberikan konfirmasi pembatalan yang telah diminta oleh member dan kemudian datanya diberikan kepada admin, memberikan konfirmasi

Untuk mendidik kita menjadi orang yang memiliki ketajaman hati, puasa merupakan salah satu caranya, karenanya pada waktu puasa, teguran orang lain kepada kita meskipun dengan

Oleh karena itu, bila menggunakan klasifikasi bentuk ritel dalam mengkaji persainganritel tradisional dan ritel modern, agar berimbang dengan batasan toko modern yangterperinci dalam