• 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!
47
0
0

Teks penuh

(1)

47

RANCANGAN SISTEM DAN PROGRAM USULAN

4.1. Analisa Kebutuhan Software A. Tahap Analisis

Analisa kebutuhan merupakan langkah awal yang dilakukan agar didapat gambaran dari sebuah sistem yang akan dibuat. Dengan adanya analisa sistem yang berjalan pada sebuah sekolahan nantinya akan didapat sebuah sistem yang sesuai dengan keadaan sistem yang berjalan saat ini sehingga calon peminjam tidak merasa kebingungan dalam penggunaan aplikasi ini nantinya. Sistem Peminjaman Buku Perpustakaan calon peminjam yang berbasis web ini dibuat untuk membantu proses Peminjaman buku perpustakaan pada sekolah SMP Negeri 10 Jakarta agar lebih mudah, cepat dan dapat diakses dimana saja dan kapan saja. Berikut rincian pembagian halaman berdasarkan level pengguna:

Halaman Calon Peminjam :

A1. Calon peminjam dapat melakukan login

A2. Calon peminjam dapat melihat daftar katalog buku dihalaman website Perpustakaan.

A3. Calon peminjam dapat melakukan transaksi peminjaman buku lewat website Perpustakaan SMP Negeri 10 Jakarta.

A4. Calon peminjam dapat melihat data riwayat transaksi yang telah dilakukan.

A5. Calon peminjam dapat melakukan logout.

(2)

Halaman Petugas:

B1. Petugas dapat melakukan login.

B2. Petugas dapat mengolah data anggota.

B3. Petugas dapat mengelola data buku.

B4. Petugas dapat mengelola data transaksi peminjaman.

B5. Petugas dapat mengelola data transaksi pengembalian.

B6. Petugas dapat mengelola dan mencetak laporan peminjaman B7. Petugas dapat mengelola dan mencetak laporan pengembalian B8. Petugas dapat mengelola data petugas.

B9. Petugas dapat melakukan logout.

B. Use Case Diagram.

Berikut adalah rancangan Use case diagram pada sistem perpustakaan SMP Negeri 10 Jakarta. Penggambaran Use Case Diagram Model Pertama :

Penggambaran dengan melihat secara keseluruhan fungsi-fungsi yang ada pada sistem.

1. Use Case Diagram Halaman Calon peminjam

uc Use Case Calon Peminj ...

Use Case Diagram Calon Peminjam

Calon Peminj am

Login

Melihat Katalog Buku

Melihat History Peminj aman

Logout

Meminj am buku

Menambahkan daftar buku

Menghapus daftar buku

Memproses peminj aman

Membatalkan peminj aman

Mencetak Bukti Peminj aman

«include»

«include»

«include»

«include»

«extend»

«extend»

«extend»

«extend»

«include»

Gambar IV.1.

Use Case Diagram Halaman Calon peminjam

(3)

Deskripsi Use Case Diagram Halaman Calon peminjam:

Tabel IV.1

Deskripsi Use Case Diagram Halaman Calon peminjam

Use Case Name Pendafataran

Requirements A1-A5

Goal Calon peminjam dapat melakukan login, melihat

katalog buku, melakukan transaksi peminjaman buku, dan melihat atau mencetak bukti riwayat transaksi peminjaman, serta melakukan logout Pre-Conditions Calon peminjam telah login

Post-Conditions Sistem menampilkan keranjang peminjaman buku dan dapat dicetak.

Failed end condition 1. Calon peminjam gagal login

2. Calon peminjam gagal meminjam buku.

Primary Actors Calon peminjam

Main Flow / Basic patch 1. Calon peminjam memilih buku yang akan dipinjam

2. Calon peminjam memilih tombol “pinjam”

3. Sistem menyimpan dan menampilkan data transaksi peminjaman buku

4. Calon peminjam mengecek kembali data buku yang akan dipinjam dengan sebernar- benarnya.

5. Calon Peminjam memilih tombol “proses”

6. Sistem menampilkan form bukti peminjaman 7. Calon peminjam dapat mencetak bukti

peminjaman.

Invariant A 1. Calon peminjam memilih buku yang akan dipinjam

2. Calon peminjam memilih tombol “Lihat Buku Lain”

3. Sistem menyimpan daftar katalog buku lainnya.

4. Calon peminjam memilih kembali buku yang akan dipinjam.

5. Calon peminjam dapat menambahkan daftar buku yang ingin dipinjam.

6. Calon peminjam dapat menghapus daftar buku yang ingin dibatalkan.

7. Calon peminjam dapat “meng-cancel” daftar buku yang dipinjam

(4)

2. Use Case Diagram Halaman Petugas

uc Use Case Halaman Petugas

Use Case Petugas

Petugas

Login

Mengelola data siswa

Mengelola data buku

Mengelola data transaksi

Mengelola laporan

Mengelola data petugas

Logout

Menambahkan

Mengubah

Menghapus

Mencetak kartu perpustakaan

Menambahkan

Mengubah

Menghapus

Memproses Peminjaman

Memproses Pengembalian

Menyetujui proses pinjaman

Mengembalikan ke menu utama

Menyimpan data pengembalian

Membatalkan proses Melihat laporan

peminjaman

Melihat laporan pengembalian

melihat laporan mingguan

melihat laporan bulanan

melihat laporan bulanan Menambahkan

data petugas

Mengubah data petugas Menghapus data

petugas

Mencetak laporan

«extend»

«extend»

«extend»

«extend»

«extend»

«extend»

«extend»

«extend»

«extend»

«extend»

«extend»

«extend»

«extend»

«extend»

«extend»

«extend»

«extend»

«extend»

«extend»

«extend»

«extend»

«include»

«include»

«include»

«include»

«include»

«include»

«include»

«include»

«include»

«include»

«include»

«include»

Gambar IV.2.

Use Case Diagram Halaman Petugas

(5)

a. Deskripsi Use Case Diagram Petugas Login Tabel IV.2.

Deskripsi Use Case Diagram Petugas Login dan Logout

Use Case Name Petugas Login

Requirements B1 dan B8

Goal Petugas dapat melakukan login ke sistem

Pre-condition Terhubung dengan server Post-condition Petugas dapat login Failed end condition Gagal Login

Primary Actors Petugas

Main Flow / Basic Path 1. Masuk ke halaman petugas login 2. Input username dan password 3.Klik Login

4. Logout

InvariantB 1. Petugas memilih “Logout”

2. Keluar dari sistem

3. Petugas melakukan login kembali

b. Deskripsi Use Case Diagram Mengelola Data Anggota dan Buku Tabel IV.3.

Deskripsi Use Case Diagram Mengelola Data Anggota, Buku, dan Petugas Use Case Name Mengelola Data Anggota dan Buku

Requirements B2-B3-B7

Goal Petugas dapat menambahkan, mengubah dan

menghapus data buku, data anggota, dan data petugas

Pre-condition Petugas telah login

Post-condition Data tersimpan,terubah, dan terhapus

Failed end condition Gagal menyimpan, mengubah, dan menghapus

Primary Actors Petugas

Main Flow / Basic Path 1.Petugas memilih menu anggota atau buku atau petugas

2. Petugas memilih tombol “Tambah”

(6)

3. Sistem menampilkan form input baru.

4. Petugas mengisi data anggota atau buku atau petugas baru

5. Klik tombol “Simpan”

6. Sistem menyimpan data anggota atau buku baru.

Invariant B 1. Petugas memilih tombol ”Ubah”.

2. Sistem menampilkan form edit 3. Petugas mengubah data

4. Petugas memilih tombol “Simpan”

5. Sistem menyimpan data terbaru.

6. Petugas memilih tombol hapus

7. Sistem menampilkan dialog penghapusan 8. Petugas memilih tombol “Oke”

9. Sistem menghapus data yang dihapus

c. Deskripsi Use Case Diagram Mengelola Data Transaksi peminjaman dan pengembalian

Tabel IV.4.

Deskripsi Use Case Diagram Mengelola Data Transaksi Peminjaman dan Pengembalian.

Use Case Name Mengelola Data Transaksi peminjaman

Requirements B4-B5

Goal Petugas dapat mengubah status data transaksi

peminjam dan pengembalian Pre-condition Petugas telah login

Post-condition Data tersimpan dan terubah Failed end condition Gagal menyimpan, mengubah

Primary Actors Petugas

Main Flow / Basic Path 1. Petugas memilih menu transaksi peminjaman 2. Petugas memilih tombol “Proses”

3.Sistem menampilkan status “sedang dipinjam”

(7)

4. Sistem menyimpan data transaksi baru.

Invariant B 1. Petugas memilih menu transaksi 2. Petugas memilih pengembalian

3.Sistem menampilkan form pengembalian buku.

4.Petugas memilih “Simpan”

5.Sistem menyimpan data terbaru.

d. Deskripsi Use Case Diagram Mengelola Data Laporan Peminjaman dan Laporan Pengembalian

Tabel IV.5.

Deskripsi Use Case Diagram Mengelola Data Laporan Peminjaman dan Laporan Pengembalian

Use Case Name Mengelola Data Laporan

Requirements B6 – B7

Goal Petugas dapat melihat dan mencetak laporan

Peminjaman dan Laporan Pengembalian mingguan, bulanan, dan tahunan

Pre-condition Petugas telah login

Post-condition Laporan dapat dicetak dan disimpan Failed end condition Gagal tampil, menyimpan dan mencetak

Primary Actors Petugas

Main Flow / Basic Path 1. Petugas memilih menu Laporan.

2. Petugas memilih laporan mana yang akan dicetak atau dilihat

3.Sistem menampilkan laporan.

4. Petugas meilih aksi “simpan”

5. Petugas akan menyimpan data laporan.

Invariant B 1. Petugas memilih tombol”Print”.

2. Petugas melakukan print laporan.

(8)

C. Activity Diagram

Berikut merupakan gambaran dari diagram activity perpustakaan SMP Negeri 10 Jakarta.

1. Activiy Diagram Peminjaman Buku

Gambar IV.3

Activiy Diagram Peminjaman Buku

(9)

2. Activity Diagram Melihat History Peminjaman

act Activ ity Diagram Melihat History Peminj aman

Sistem

Masuk halaman w eb Mulai

Calon Peminj am

Menampilkan data buku

Memilih History Peminj aman

Menampilkan history peminj aman calon

peminj am

Melihat History

Memilih Logout Mengeluarkan dari sistem

Tampil halaman login

Selesai

Gambar IV.4

Activity Diagram Melihat History Peminjaman

(10)

3. Activity Diagram Halaman Petugas Mengelola Data Siswa

Gambar IV.5

Activity Diagram Halaman Petugas Mengelola Data Siswa

(11)

4. Activity Diagram Halaman Petugas Mengelola Data Buku

Gambar IV.6

Activity Diagram Halaman Petugas Mengelola Data Buku

(12)

5. Activity Diagram Halaman Petugas Mengelola Data Petugas

Petugas Sistem

Masuk ke halaman petugas

Menambah Data Petugas

Memilih menu data petugas

Menampilkan form tambah petugas Ya

Tidak

Menampilkan data petugas

Mengisi data petugas Menyimpan data

petugas

Simpan data petugas

Tidak Ya

Ubah Data Petugas

Menampilkan form ubah data petugas Ya

Tidak

Mengubah data petugas

Menyimpan data petugas

Simpan data petugas

Tidak Ya

Hapus Data Petugas

Menghapus data petugas Ya

Tidak

Gambar IV.7

Activity Diagram Halaman Petugas Mengelola Data Petugas

(13)

6. Activity Diagram Halaman Petugas Mengelola Transaksi Peminjaman

act Activ ity Diagram Petugas Mengelola Transaksi Peminj aman

Sistem Petugas

Mulai

Masuk Ke halaman Petugas

Memilih menu Transaksi Peminj aman

Menampilkan data transaksi peminj aman

Mengubah status peminj aman

Menampilkan halaman yang telah berubah status

peminj aman

Selesai

Gambar IV.8

Activity Diagram Halaman Petugas Mengelola Transaksi Peminjaman

(14)

7. Activity Diagram Halaman Petugas Mengelola Transaksi Pengembalian

act Activ ity Diagram Petugas Mengelola Transaksi Pemngembalian

Sistem Petugas

Mulai

Masuk Ke halaman Petugas

Memilih menu Transaksi Pengembalian

Menampilkanform input transaksi pengembalian

Mengisi form input pengembalian buku

Menyimpan data

Selesai

Gambar IV.9

Activity Diagram Halaman Petugas Mengelola Transaksi Pengembalian

(15)

8. Activity Diagram Halaman Petugas Menampilkan Laporan

act Laporan

Sistem Admin

Start

Pilih menu laporan Menampilkan data laporan

Pilih data laporan

Menampilkan data laporan yang dipilih

Finish

Gambar IV.10

Activity Diagram Halaman Petugas Menampilkan Laporan

4.2. Desain Sistem

Dalam membuat sebuah sistem perpustakaan online, dibutuhkan tahap desain yang akan menggambarkan design database, desain software architecthure dan disain interface dari sistem yang akan di buat.

4.2.1. Database

Di dalam database terdapat beberapa tabel yang saling berelasi (berhubungan) maka dari itu penulis mencoba menggambarkanya menggunakan ERD. Diagram hubungan entitas merupakan diagram yang berfungsi untuk menggambarkan hubungan antara entitas dalam suatu sistem, dimana diagram menjelaskan hubungan antara entitas yang ada melalui atribut yang dimiliki oleh entitas tersebut. Penggambaran database pada Sekolahan SMP Negeri 10 Jakarta adalah sebagai berikut:

(16)

1. Entity Relationship Diagram

Gambar IV.11

Entity Relationship Diagram Perpustakaan SMP Negeri 10 Jakarta

(17)

2. Logical Record Structure

Gambar IV.12.

Logical record Structure Perpustakaan SMP Negeri 10 Jakarta

(18)

3. Spesifikasi File

a. Spesifikasi File Tabel Siswa Nama Database : perpustakaan Nama File : siswa

Akronim : siswa.myd

Tipe File : File Master Akses file : Random Panjang Record : 135 Byte Kunci Field : nis

Tabel IV.6.

Spesifikasi File Tabel Anggota No Elemen Data Nama

Field

Tipe Size Ket

1. NIS Nis Varchar 10 Primary Key

2. Nama nama Varchar 50

3. Jenis Kelamin Jk Varchar 2

4. Tempat tempat Varchar 40

5. Tangal Lahir alamat Date

6. Kelas kelas Varchar 10

7. Alamat alamat Text

8. Telepon Telp Varchar 12

9. Email email Text

10. Status status Int 11

(19)

b. Spesifikasi File Tabel Buku Nama Database : perpustakaan

Nama File : buku

Akronim : buku.myd

Tipe File : File Master Akses file : Random Panjang Record : 212 Byte Kunci Field : kodebuku

Tabel IV.7.

Spesifikasi File Tabel Buku No Elemen Data Nama

Field

Tipe Size Ket

1. Kode Buku kodebuku Varchar 8 Primary Key

2. Judul judul Varchar 100

3. Pengarang pengarang Varchar 50

4. Penerbit penerbit Varchar 50

5. Tahun Terbit thnterbit Year 4

6. Deskripsi deskripsi Text

c. Spesifikasi File Tabel Petugas Nama Database : perpustakaan Nama File : petugas

Akronim : petugas.myd

Tipe File : File Master Akses file : Random Panjang Record : 91 Byte Kunci Field : nik

(20)

Tabel IV.8.

Spesifikasi File Tabel Petugas

No Elemen Data Nama

Field Tipe Size Ket

1. NIK Nik Varchar 11 Primary Key

2. Nama Nama Varchar 50

3. Password password Varchar 30

d. Spesifikasi File Tabel Pengembalian Nama Database : perpustakaan Nama File : pengembalian Akronim : pengembalian.myd Tipe File : File Transaksi Akses file : Random Panjang Record : 33 Byte Kunci Field : idtransaksi

Tabel IV.9.

Spesifikasi File Tabel Pengembalian

No Elemen Data Nama Field Tipe Size Ket

1. Nomor Transaksi Idtransaksi Varchar 12 Primary Key

2. NIS Nis Varchar 8 Foreign Key

3. Tanggal Kembali Tglkembali Date

4. Denda Denda Varchar 2

5. Biaya Biaya Double

6. Nik Nik Int 11 Foreign Key

(21)

e. Spesifikasi File Tabel Detail Transaksi Nama Database : perpustakaan

Nama File : detailtransaksi Akronim : detailtransaksi.myd Tipe File : File Transaksi Akses file : Random Panjang Record : 22 Byte Kunci Field : -

Tabel IV.10.

Spesifikasi File Tabel Anggota

No Elemen Data Nama Field Tipe Size Ket

1. Nomor Transaksi idtransaksi Varchar 12 Foreign Key

2. Kode Buku Kodebuku Varchar 10 Foreign Key

f. Spesifikasi File Tabel Transaksi Nama Database : perpustakaan Nama File : transaksi Akronim : transaksi.myd Tipe File : File Transaksi Akses file : Random Panjang Record : 34 Byte Kunci Field : idtransaksi

(22)

Tabel IV.11

Spesifikasi File Tabel Transaksi

No Elemen Data Nama Field Tipe Size Ket

1. Id Transaksi idtransaksi Varchar 12 Primary Key

2. NIS Nis Varchar 10 Foreign Key

3. Tanggal Pinjam Tglpinjam Date 4. Tanggal Kembali Tglkembali Date

5. NIK Nik Int 11 Foreign Key

6. Status Status Int 11

g. Spesifikasi File Tabel Tmp Nama Database : perpustakaan

Nama File : tmp

Akronim : tmp.myd

Tipe File : File Transaksi Akses file : Random Panjang Record : 179 Byte Kunci Field : idtmp

Tabel IV.12

Spesifikasi File Tabel Tmp

No Elemen Data Nama Field Tipe Size Ket

1. Id Temporary Idtmp Int 11 Primary Key,

Auto Increment

2. Kode Buku Kodebuku Varchar 8 Foreign Key

3. NIS Nis Varchar 10 Foreign Key

4. Judul Judul Varchar 100

5. Pengarang Pengarang Varchar 50

(23)

4.2.2. Software Architecture

Didalam merancang sebuah sistem perpustakaan secara online SMP Negeri 10 Jakarta, Bahasa program yang digunakan penulis adalah PHP secara terstruktur atau prosedural. Maka Software Architecture yang digunakan untuk menggabarkan program adalah sebagai berikut :

A. Component Diagram

Component diagaram menggambarkan struktur dan hubungan antar komponen piranti lunak, termsuk ketergantungan diantaranya yang ada di dalam sistem informasi Perpustakaan SMP Negeri 10 Jakarta. Component diagram juga dapat berupa interface yang berupa kumpulan layanan yang disediakan oleh komponen untuk komponen lainnya.

cmp Smp Negeri 10

Front page perpustakaan

aplikasi

Aplikation Database

Style.css

Xampp serv er

mysql database

Admin Page

Gambar IV.13.

Component Diagram Sistem Perpustakaan Online

(24)

B. Deployment Diagram

Menggambarkan tata letak sistem secara fisik, yang menampakan bagian- bagian software yang berjalan pada hardware yang digunakan untuk mengimplementasi sebuah sistem dan keterhubungan antar hardware- hardware tersebut.

deployment Smp Negeri 10

Web sev er

Sistem Informasi Perpustakaan

ampp serv er

Admin Aplikasi Style.css

Database serv er

Aplication Database

Mysql Database

Clien PC

Brow ser

port 3306

Gambar IV.14.

Deployment Diagram Sistem Perpustakaan Online

(25)

4.2.3. User Interface

Merupakan gambaran sistem yang sudah berjalan. Berikut detail tampilan- tampilan tiap halaman website SMP Negeri 10 Jakarta:

1. Tampilan Halaman Depan SMP Negeri 10 Jakarta

Halaman pertama adalah halaman login, merupakan halaman dimana petugas dan calon peminjam (siswa) harus melakukan login terlebih dahulu agar bisa masuk ke halaman masing – masing.

Gambar IV.15.

Tampilan Halaman Login

(26)

2. Tampilan Halaman Utama Calon Peminjam (Siswa)

Menampilkan halaman pertama ketika si siswa calon peminjam masuk login dengan menggunakan Nis dan password. Halaman utamanya langsung menampilkan halaman catalog buku.

Gambar IV.16.

Tampilan Halaman Utama Siswa Calon Peminjam

3. Tampilan Halaman Keranjang Buku

Ketika siswa calon peminjam memilih tombol pinjam pada salah satu daftar buku di halaman katalo, maka akan tampil tampilan seperti berikut ini.

Gambar IV.17.

Tampilan Halaman Keranjang Belanja

(27)

4. Tampilan Halaman Bukti Transaksi Peminjaman

Menampilkan bukti transaksi peminjaman yang bias dicetak atau hanya ingin disimpan saja.

Gambar IV.18.

Tampilan Halaman Bukti Transaksi Peminjaman

5. Tampilan Halaman History Peminjaman

Menampilkan catatan peminjaman dimasa lampau.

Gambar IV.19.

Tampilan Halaman History Peminjaman

(28)

6. Tampilan Halaman Utama Petugas

Menampilkan halaman utama ketika admin masuk ke halamannya.

Gambar IV.20.

Tampilan Halaman Utama Petugas

7. Tampilan Halaman Data Siswa

Menampilkan halaman data siswa yang sudah terdaftar.

Gambar IV.21.

Tampilan Halaman Data Siswa

(29)

8. Tampilan Halaman Tambah Data Siswa Menampilkan halaman form tambah data siswa.

Gambar IV.22.

Tampilan Form Tambah Data Siswa

3. Tampilan Halaman Data Buku

Menampilkan halaman data buku yang telah dimasukkan.

Gambar IV.23.

Tampilan Halaman Data Buku

(30)

4. Tampilan Halaman Tambah Data Buku Menampilkan halaman form tambah data buku.

Gambar IV.24.

Tampilan Halaman Tambah Data Buku

Gambar IV.25.

Tampilan Halaman Tambah Data Buku

(31)

5. Tampilan Halaman Transaksi Peminjaman Menampilkan halaman transaksi peminjaman.

Gambar IV.26.

Tampilan Halaman Daftar Transaksi Peminjaman

6. Tampilan Halaman Transaksi Pengembalian Menampilkan halaman form transaksi pengembalian.

Gambar IV.27.

Tampilan Halaman Form Transaksi Pengembalian

(32)

Gambar IV.28.

Tampilan Halaman Form Transaksi Pengembalian

7. Tampilan Halaman Data Laporan Peminjaman Perpustakaan Menampilkan data laporan peminjaman mingguan, bulanan, tahunan.

Gambar IV.29.

Tampilan Halaman Data Laporan Peminjaman

(33)

8. Tampilan Halaman Data Laporan Pengembalian Menampilkan data laporan pengembalian buku.

Gambar IV.30.

Tampilan Halaman Laporan Pengembalian

9. Tampilan Halaman Data Petugas

Menampilkan halaman data petugas perpustakaan yang sudah terdaftar.

Gambar IV.31

Tampilan Halaman Data Petugas

(34)

10. Tampilan Halaman Tambah Data Petugas Menampilkan halaman tambah data petugas.

Gambar IV.32.

Tampilan Halaman Tambah Data Peugas

4.3. Code Generation

Berikut merupakan code generation dari Sistem Informasi perpustakaan pada sekolah SMP Negeri 10 Jakarta dengan pemograman terstruktur:

A. Form Login

<?php

session_start();

?>

<?php

include"./config/koneksi.php";

$nik=htmlentities((trim($_POST['nis'])));

$nis=htmlentities((trim($_POST['nis'])));

$password=$_POST['password'];

$tgllahir=$_POST['password'];

//Cek Tabel Petugas

$login=mysql_query("SELECT * FROM petugas WHERE nik='$nik' and password='$password'");

while($row=mysql_fetch_array($login)) {

$nik=$row['nik'];

$nama=$row['nama'];

(35)

}

$ceklogin=mysql_num_rows($login);

//Cek Siswa

$log_siswa=mysql_query("SELECT * FROM siswa WHERE nis='$nis' and tgllahir='$tgllahir' AND status='1'");

while($rows=mysql_fetch_array($log_siswa)) {

$nis=$rows['nis'];

$nama=$rows['nama'];

}

$ceklog_siswa=mysql_num_rows($log_siswa);

if($ceklogin !=0){

$_SESSION['nis']=$nik;

$_SESSION['nama']=$nama;

$_SESSION['level']="petugas";

header('location:main.php');

}

else if(($_POST['nis']=='911')and($_POST['password']=='petugas')) {

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

$_SESSION['nama']="Developer";

$_SESSION['level']="petugas";

header('location:main.php');

}

else if($ceklog_siswa!=0){

$_SESSION['nis']=$nis;

$_SESSION['nama']=$nama;

$_SESSION['level']="siswa";

header('location:main.php');

} else {

echo"<script language=javascript>

window.alert('Maaf User Tidak di Temukan') window.open('./','_self');

</script>";

}

?>

(36)

B. Form Peminjaman Buku

<?php

include "./config/koneksi.php";

$today = date("Ymd");

$tglpinjam = date("Y-m-d");

$tglkembali= Date('Y-m-d', strtotime("+7 days"));

// cari id transaksi terakhir yang berawalan tanggal hari ini

$query = "SELECT max(idtransaksi) AS last FROM transaksi WHERE idtransaksi LIKE '$today%'";

$hasil = mysql_query($query);

$data = mysql_fetch_array($hasil);

$lastNoTransaksi = $data['last'];

// baca nomor urut transaksi dari id transaksi terakhir

$lastNoUrut = substr($lastNoTransaksi, 8, 4);

// nomor urut ditambah 1

$nextNoUrut = $lastNoUrut + 1;

// membuat format nomor transaksi berikutnya

$nextNoTransaksi = $today.sprintf('%04s', $nextNoUrut);

?>

<!-- Title area -->

<div class="titleArea">

<div class="wrapper">

<div class="pageTitle">

<h5>Data Peminjaman</h5>

<span>Form Request Peminjaman Buku</span>

</div>

<!--<div class="middleNav">

<ul>

<li class="mUser"><a href="?ref=tambahpinjam" title="Tambah Data Peminjaman" class="tipN"><span

class="tambahpinjam"></span></a></li>

</ul>

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

</div>-->

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

</div>

</div>

<div class="line"></div>

<!-- Main content wrapper -->

<div class="wrapper">

<!-- Dynamic table -->

<div class="widget">

(37)

<div class="title"><img src="images/icons/dark/full2.png" alt=""

class="titleIcon" /><h6>Data Transaksi</h6></div>

<table cellpadding="0" cellspacing="0" border="0" class="display dTable">

<thead>

<tr>

<th>ID Transaksi</th>

<th>Tgl Pinjam</th>

<th>Tgl Kembali</th>

<th>Status</th>

<th>Action</th>

</tr>

</thead>

<tbody>

<?php

include"./config/koneksi.php";

$sql=mysql_query("SELECT * from transaksi WHERE status='1' or status='0'");

while($rows=mysql_fetch_array($sql)){

?>

<tr class="gradeA">

<td class="center"><?php echo"$rows[idtransaksi]";

?></td>

<td class="center"><?php echo"$rows[tglpinjam]";

?></td>

<td class="center"><?php echo"$rows[tglkembali]";

?></td>

<td class="center"><?php

if($rows['status']==1){echo"<div style='color:green;'>Sedang di Pinjam</div>";}else if($rows['status']==0){echo"<div

style='color:red;'>Buku Belum di Ambil</div>";} else

if($rows['status']==2){echo"<div style='color:green;'>Buku Sudah di Kembalikan</div>";}?></td>

<td class="center">

<?php if($rows['status']==0){ ?>

<a

href="aksi.php?ref=pinjam&show=proses&id=<?php echo

$rows['idtransaksi']?>&nis=<?php echo $_SESSION['nis'] ?>" class="button greenB" style="margin: 5px;"><img src="images/icons/light/add.png" alt=""

class="icon" /><span>Proses</span></a>

<?php }else if($rows['status']==1){ ?>

<a

href="aksi.php?ref=pinjam&show=pinjam&kodebuku=<?php echo

$rows['kodebuku']?>&judul=<?php echo $rows['judul']?>&pengarang=<?php echo $rows['pengarang']?>" title="Pinjam Buku<?php echo $rows['judul']?>"

class="button redB" style="margin: 5px;"><img src="images/icons/light/check.png" alt="" class="icon"

/><span>Kembalikan</span></a>

(38)

<?php } ?>

</td>

</tr>

<?php }

?>

</tbody>

</table>

</div>

</div>

C. Form Pengembalian Buku

<?php

include "./config/koneksi.php";

$today = date("Ymd");

$tglpinjam = date("Y-m-d");

$tglkembali= Date('Y-m-d', strtotime("+7 days"));

// cari id transaksi terakhir yang berawalan tanggal hari ini

$query = "SELECT max(idtransaksi) AS last FROM transaksi WHERE idtransaksi LIKE '$today%'";

$hasil = mysql_query($query);

$data = mysql_fetch_array($hasil);

$lastNoTransaksi = $data['last'];

// baca nomor urut transaksi dari id transaksi terakhir

$lastNoUrut = substr($lastNoTransaksi, 8, 4);

// nomor urut ditambah 1

$nextNoUrut = $lastNoUrut + 1;

// membuat format nomor transaksi berikutnya

$nextNoTransaksi = $today.sprintf('%04s', $nextNoUrut);

?>

<!-- Title area -->

<div class="titleArea">

<div class="wrapper">

<div class="pageTitle">

<h5>Tambah Data Pengembalian</h5>

<span>Form Input Pengembalian Buku</span>

</div>

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

</div>

</div>

<div class="line"></div>

(39)

<!-- Main content wrapper -->

<div class="wrapper">

<!-- Form -->

<form id="validate" action="?ref=simpanaksi&act=simpankembali"

method="post" class="form">

<fieldset>

<div class="widget">

<div class="title"><img src="images/icons/dark/list.png"

alt="" class="titleIcon" /><h6>Lengkapi Form Berikut!</h6></div>

<div class="formRow">

<label>No. Transaksi</label>

<div class="formRight searchDrop">

<select data-placeholder="Pilih No. Transaksi"

name="idtransaksi" id="idtransaksi" class="chzn-select required"

style="width:350px;" tabindex="2" onchange="changeValue(this.value)" >

<option value=""></option>

<?php

include"./config/koneksi.php";

$result = mysql_query("select

* from transaksi INNER JOIN siswa ON transaksi.nis=siswa.nis where transaksi.status='1'");

$jsArray = "var dtMhs = new Array();\n";

while ($row = mysql_fetch_array($result)) {

$tglkembali = date("d-m-Y", strtotime($row['tglkembali']));

$tglskrg=date("d-m-Y");

$selisih = strtotime($tglskrg)- strtotime($tglkembali);

$hari = $selisih/(60*60*24);

if($hari <=0){

$hari=0;

}

$biaya=$hari*500;

echo '<option value="' . $row['idtransaksi'] . '">' . $row['idtransaksi'] . '</option>';

$jsArray .= "dtMhs['" .

$row['idtransaksi'] . "'] = {nis:'" . addslashes($row['nis']) . "',tglpinjam:'" . addslashes($row['tglpinjam']) . "',tglkembali:'" .

addslashes($row['tglkembali']) . "',nama:'" . addslashes($row['nama']) .

"',kelas:'" . addslashes($row['kelas']) . "',denda:'" . addslashes($hari) .

"',biaya:'" . addslashes($biaya) . "'};\n";

}

?>

</select>

</div>

(40)

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

</div>

<div class="formRow">

<label for="labelFor">Tgl Pinjam<span class="req">*</span></label>

<div class="formRight"><input type="text"

name="tglpinjam" maxlength="12" id="tglpinjam"

class="validate[required]" disabled="disabled"/></div>

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

</div>

<div class="formRow">

<label for="labelFor">Tgl Kembali<span class="req">*</span></label>

<div class="formRight"><input type="text"

name="tglkembali" maxlength="12" id="tglkembali"

class="validate[required]" disabled="disabled" /></div>

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

</div>

<div class="formRow">

<label>NIS</label>

<div class="formRight">

<input type="text" name="nis" id="nis" maxlength="49"

class="validate[required,custom[onlyNumberSp]]" disabled="disabled"/>

<input type="hidden" name="nis2"

id="nis2">

</div>

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

</div>

<div class="formRow">

<label for="labelFor">Nama Lengkap<span class="req">*</span></label>

<div class="formRight"><input type="text" name="nama"

id="nama" maxlength="49"

class="validate[required,custom[onlyLetterSp]]" disabled="disabled"

/></div>

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

</div>

<div class="formRow">

<label for="labelFor">Kelas<span class="req">*</span></label>

<div class="formRight"><input type="text" name="kelas"

id="kelas" maxlength="10" class="validate[required]"

disabled="disabled"/></div>

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

</div>

<div class="formRow">

<label>Denda<span class="req">*</span></label>

<div class="formRight"><input type="text" name="denda"

(41)

id="denda" style="width:50px;" disabled="disabled"/> Hari</div>

<input type="hidden" name="denda2"

id="denda2">

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

</div>

<div class="formRow">

<label>Bayar<span class="req">*</span></label>

<div class="formRight">Rp. <input type="text"

name="biaya" id="biaya" style="width:50px;"

disabled="disabled"/></span></div>

<input type="hidden" name="biaya2"

id="biaya2">

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

</div>

<div class="formRow">

<span class="wNavButtons">

<input type="button" class="basic"

id="batal" value="Batal" onClick="self.history.back()">

<input class="blueB ml10" id="simpan" value="Simpan"

type="submit" />

</span>

</div>

</div>

<script type="text/javascript">

<?php echo $jsArray; ?>

function changeValue(idtransaksi){

document.getElementById('tglpinjam').value = dtMhs[idtransaksi].tglpinjam;

document.getElementById('tglkembali').value = dtMhs[idtransaksi].tglkembali;

document.getElementById('nis').value = dtMhs[idtransaksi].nis;

document.getElementById('nis2').value = dtMhs[idtransaksi].nis;

document.getElementById('nama').value = dtMhs[idtransaksi].nama;

document.getElementById('kelas').value = dtMhs[idtransaksi].kelas;

document.getElementById('denda').value = dtMhs[idtransaksi].denda;

document.getElementById('denda2').value = dtMhs[idtransaksi].denda;

document.getElementById('biaya').value = dtMhs[idtransaksi].biaya;

document.getElementById('biaya2').value = dtMhs[idtransaksi].biaya;

};

</script>

</fieldset>

</form>

</div>

(42)

4.4. Testing

Tidak menutup kemungkinan sebuah perangkat lunak mengalami perubahan ketika melakukan transaksi peminjaman buku. Perubahannya bisa terjadi karena adanya kesalahan yang mucul dan tidak terdeteksi saat pengujian atau perangkat lunak harus beradaptasi dengan lingkungan baru. Tahap pendukung atau pemeliharaan dapat mengulangi proses pengembangan mulai dari analisis spesifikasi untuk perubahan perangkat lunak yang sudah ada, tapi tidak untuk membuat perangkat lunak baru.

A. Form Login

Tabel IV.14.

Hasil Pengujian Black Box Testing Form Login No Skenario

Pengujian

Test Case Hasil yang di harapkan

Hasil Pengujian

Kesimpulan 1 Mengosongkan

semua isian data login pada halamanlogin dan langsung klik tombol Login

Calon peminjam NIS:(Kosong) Password:(Kosong)

Sistem akan menolak akses login dan akan menampilkan pesan “This Field Required “

Sesuai Harapan

Valid

2 Hanya mengisi data NIS dan mengosongkan data password, lalu klik tombol Login

Calon siswa NIS:9255

Password:(kosong)

Sistem akan menolak akses login dan akan menampilkan pesan “This Field Required “

Sesuai Harapan

Valid

3 Hanya mengisi data Password dan

mengosongkan data NIS, lalu klik tombol Login

Calon siswa NIS:(Kosong) Password:1993-07- 29

Sistem akan menolak akses login dan akan menampilkan pesan “This Field Required “

Sesuai Harapan

Valid

(43)

4 Menginput dengan kondisi salah satu data benar dan satu lagi salah dan langsung klik tombol Login

Calon peminjamNIS : 9255(Benar)

Password:123(Salah)

Sistem akan menolak akses login dan akan menampilkan pesan “Maaf User Tidak Ditemukan“

Sesuai Harapan

Valid

5 Menginput

data login yang benar, lalu nengklik tombol Login

Calon

peminjamNIS: 9255 Password: 1993-07- 29

Sistem menerima akses login dan langsung menampilkan Halaman Utama

Sesuai harapan

Valid

B. Form Tambah Siswa

Tabel IV.15.

Hasil Pengujian Black Box Testing Form Tambah Anggota No Skenario

Pengujian

Test Case Hasil yang di

harapkan

Hasil Pengujian

Kesimpulan 1 Tambah Siswa Klik tombol “Tambah

Data Siswa”

Sistem akan menampilkan form input data siswa

Sesuai Harapan

Valid

2 Mengosongkan Data Anggota dan langsung mengklik tombol

“Simpan”

NIS: (kosong) Nama Lengkap : (kosong)

Jenis Kelamin: (kosong) Tempat Tgl Lahir:

(kosong)

Alamat: (kosong) Kelas: (kosong) Telepon: (kosong)

Sistem akan menolak akses login dan akan menampilkan pesan “This field is required“

Sesuai Harapan

Valid

3 Hanya mengisi NIS atau

mengkosongkan teks field

lainnya langsung mengklik

“Simpan”

NIS: (9256) Nama Lengkap : (kosong)

Jenis Kelamin: (kosong) Tempat Tgl Lahir:

(kosong)

Alamat: (kosong) Kelas: (kosong) Telepon: (kosong)

Sistem akan menolak akses login dan akan menampilkan pesan “This field is required “

Sesuai Harapan

Valid

4 Menginput data siswa yang

NIS: 9256

Nama Lengkap : Renata

Sistem menerima

Sesuai Harapan

Valid

(44)

benar, lalu klik tombol

“Simpan”

Jenis Kelamin:

Perempuan

Tempat Tgl Lahir:

Jakarta 1999-08-16 Alamat: Jl. Cempaka putih

Kelas: 9E

Telepon: 021345678

akse Simpan

6 Mengubah Data Masukan data yang akan di ubah

Sistem menerima akses ubah

Sesuai harapan

Valid

4.5. Support

Menjelaskan tentang publikasi web dan spesifikasi hardware dan software yang akan digunakan untuk menjalankan sistem yang dibuat. Dalam pembuatan aplikasi sistem perpustakaan online ini akan membantu petugas untuk mengelola data-data dan membuat laporan, untuk itu penulis menggunakan program PHP untuk membuat aplikasi. Untuk mengoperasikan program tersebut diperlukan spesifikasi komputer yang cukup tinggi dan untuk mendukung pembuatan aplikasi kebutuhan hardware yang diperlukan meliputi : processor, memory, harddisk, keyboard, mouse sedangkan untuk kebutuhan software yang diperlukan meliputi sistem operasi software program PHP dan software database MySql.

4.5.1. Publikasi Web

Pada saat mengakses website bisa dengan menggunakan browser yang telah banyak tersedia seperti mozilla firefox, Google Chrome,internet explorer, nestcape, dan lainnya. Pada pembuatan skripsi ini penulis membuat program berbasis web yang mana program harus benar-benar secara online. Untuk itu

(45)

penulis harus mempersiapkan segala sesuatunya guna memenuhi syarat yang sudah ditentukan. Penulis sudah melakukan penyewaan domain dan hosting secara online beserta analisa biaya. Biaya yang digunakan penulis untuk melakukan penyewaan domain dan hosting secara online.

Tabel IV.16.

Rincian Publikasi Web

Domain www.perpussmpn10jkt.com

Periode Pendaftaran 1 Tahun

Disk Space 90Mb

Jumlah Rp 130.000

Lokasi Server Indonesia

Total Keseluruhan Rp 130.000

4.5.2. Spesifikasi Hardware dan Software

Selain biaya yang dikeluarkan dalam penulisan skripsi ini yaitu adalah penjelasan tentang spesifikasi hardware dan software yang digunakan. Kebutuhan hardware tersebut meliputi: Processor, Memory, monitor, Hard disk, Keyboard, mouse dan printer. Kebutuhan Software tersebut meliputi : Sistem Operasi, Software aplikasi dan software.

(46)

Tabel IV.17.

Spesifikasi Hardware Dan Software

Kebutuhan Keterangan

Sistem Operasi Windows 7

Processor IntelCore i3-380M

Ram 2.00 GB

Hardisk 320 GB

DVD-ROM DVD-SuperMulti DL drive

Monitor SVGA 14”

Keyboard 108 Key

Printer Deskjet

Mouse Standart

Browser Mozilla Firefox, Google chrome, Internet Explorer Software Dreamweaver,Xampp, MySql, PHP, HTML

4.6. Spesifikasi Dokumen Sistem Usulan

Adapun bentuk sistem usulan Pada Sekolah SMP Negeri 10 Jakarta adalah : a. Nama Dokumen : Bukti Transaksi Peminjaman Buku

Fungsi : Sebagai proses peminjaman

Sumber : Calon Peminjam

Tujuan : Petugas

Media : Tampilan atau Kertas

Frekuensi : Setiap proses transaksi peminjaman

Format : Lampiran B-1

(47)

b. Nama Dokumen : Laporan Data Peminjaman dan Pengembalian Fungsi : Sebagai bukti laporan data pinjaman

dan Pengembalian

Sumber : Petugas

Tujuan : Kepala Sekolah

Media : File PDF atau Kertas

Frekuensi : Setiap satu minggu, satu bulan, dan satu tahun sekali

Format : Lampiran B-2

Referensi

Dokumen terkait

Alhamdulillah, puji dan syukur kepada Allah Swt atas segala rahmat dan nikmat-Nya sehingga penulis dapat menyelesaikan skripsi ini dengan baik. Shalawat dan

Paket Wardah Perfect Bright seri Natural Paket dasar make up sehari-hari yang dapat melembabkan dan mencerahkan wajah.. Cocok dipakai

Bertolak dari pemahaman tersebut berikut ini dapat dipaparkan beberapa hal yang mengindikasikan isu global dalam novel Indonesia modern dewasa ini, antara lain:

yang Dibutuhkan Tubuh Manusia Vitamin dan mineral membuat tubuh manusia bekerja dengan baik. Meskipun tubuh mendapatkan vitamin dan mineral dari makanan yang dimakan setiap

Praktik Jual Beli Pembesar Alat Vital (Laki-Laki) di @Titan.Gel.Indo Jual beli merupakan hal yang tidak pernah luput dalam kehidupan bermasyarakat, Realitanya dalam jual beli

Hasil penelitian menunjukkan bahwa: 1 Manajemen kelas fisik berbasis multiple intelligences pada siswa kelas V di SD Plus Al-Kautsar Malang adalah meliputi penataan perlengkapan

Surfaktan sendiri merupakan kompleks lipoprotein yang terdiri dari fosfolipid seperti lesitin, fosfatidil gliserol, kolesterol, dan apoprotein (protein surfaktan; PS-A,

Berdasarkan hasil wawancara tersebut, KPM tidak dapat menjelaskan cara yang dia gunakan dalam menyelesaikan soal. KPM juga menjelaskan bahwa jawaban yang ditulis