bab iii pembahasan...1) cetak bukti pembayaran 2) cetak kartu member f. halaman akuntansi, berisi...

Post on 21-Nov-2020

5 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

22

BAB III

PEMBAHASAN

3.1. Analisa Kebutuhan Software

3.1.1. Analisa Kebutuhan

1. Halaman Admin (backend)

Ruang admin ini dapat digunakan untuk mengelola data internal perusahaan,

halaman admin meliputi:

a. Halaman Login, berisi tampilan sebelum membuka ruang admin, dengan

memasukan username dan password yang benar maka akan masuk ke dalam

ruang administrator.

b. Halaman Master Data, berisi:

1) Data User, dapat mengelola data user

2) Data Paket, dapat mengelola data jadwal

3) Data Member, dapat mengelola data member

c. Halaman Transaksi, berisi:

1) Pendaftaran Member, dapat mengelola transaksi pendaftaran member

2) Pembayaran Member, dapat mengelola transaksi pembayaran member

d. Halaman Rekap Data, berisi tampilan rekap data

1) Pendaftaran Member

2) Pembayaran Member

23

e. Halaman Cetak, berisi tampilan rekap data atau laporan

1) Cetak Bukti Pembayaran

2) Cetak Kartu Member

f. Halaman Akuntansi, berisi tampilan menu akuntansi

1) Data Akun

2) Jurnal Umum

3) Kas Masuk

4) Laporan Jurnal Umum

5) Laporan Kas Masuk

g. Halaman Logout, menu untuk keluar dari halaman admin.

2. Halaman Pengunjung (front-end)

Ruang tampilan halaman pengunjung dapat diakses oleh seluruh calon

member sehingga mempermudah calon member dalam melakukan pendaftaran,

halaman pengunjung meliputi:

a. Halaman Home, berisi tampilan utama pada halaman pengunjung.

b. Halaman Tentang Kami, berisi tujuan adanya halaman pengunjung

c. Halaman Layanan, menampilkan layanan yang ditawarkan.

d. Halaman Harga Paket, menampilkan harga-harga yang tersedia.

e. Halaman Registrasi, berisi :

1) Data Diri, menampilkan form untuk mengisi data diri menjadi member.

2) Form Pendaftaran, menampilkan form untuk melakukan pendaftaran

3) Cetak Bukti Pendaftaran, menampilkan halaman cetak bukti pendaftaran

f. Halaman Hubungi Kami, berisi contact person serta beberapa media sosial

24

3.1.2. Use Case Diagram

A. Halaman Admin

Sumber : Hasil Penelitian, 2019

Gambar III.1. Use Case Halaman Admin

B. Halaman Pengunjung

Sumber : Hasil Penelitian, 2019

Gambar III.2. Use Case Halaman Pengunjung

25

3.1.3. Activity Diagram

A. Admin

1. Halaman Login

Sumber : Hasil Penelitian, 2019

Gambar III.3. Activity Diagram Halaman Login

2. Halaman Master Data

Sumber : Hasil Penelitian, 2019

Gambar III.4. Activity Diagram Halaman Master Data

26

2.a. Halaman Data User

Sumber : Hasil Penelitian, 2019

Gambar III.5. Activity Diagram Data User

2.b. Halaman Data Paket

Sumber : Hasil Penelitian, 2019

Gambar III.6. Activity Diagram Data Paket

27

2.c. Halaman Data Member

Sumber : Hasil Penelitian, 2019

Gambar III.7. Activity Diagram Data Member

3. Halaman Transaksi

Sumber : Hasil Penelitian, 2019

Gambar III.8. Activity Diagram Halaman Transaksi

28

3.a. Halaman Transaksi Pendaftaran Member

Sumber : Hasil Penelitian, 2019

Gambar III.9. Activity Diagram Transaksi Pendaftaran Member

3.b. Halaman Transaksi Pembayaran Member

Sumber : Hasil Penelitian, 2019

Gambar III.10. Activity Diagram Transaksi Pembayaran Member

29

4. Halaman Rekap Data

Sumber : Hasil Penelitian, 2019

Gambar III.11. Activity Diagram Halaman Rekap Data

4.a. Halaman Rekap Data Pendaftaran Member

Sumber : Hasil Penelitian, 2019

Gambar III.12. Activity Diagram Rekap Data Pendaftaran Member

30

4.b. Halaman Rekap Data Pembayaran Member

Sumber : Hasil Penelitian, 2019

Gambar III.13. Activity Diagram Rekap Data Pembayaran Member

5. Halaman Cetak

Sumber : Hasil Penelitian, 2019

Gambar III.14. Activity Diagram Halaman Cetak

31

5.a. Halaman Cetak Bukti Pembayaran

Sumber : Hasil Penelitian, 2019

Gambar III.15. Activity Diagram Cetak Bukti Pembayaran

5.b. Halaman Cetak Kartu Member

Sumber : Hasil Penelitian, 2019

Gambar III.16. Activity Diagram Cetak Kartu Member

32

6. Halaman Akuntansi

Sumber : Hasil Penelitian, 2019

Gambar III.17. Activity Diagram Halaman Akuntansi

6.a. Halaman Data Akun

Sumber : Hasil Penelitian, 2019

Gambar III.18. Activity Diagram Data Akun

33

6.b. Halaman Kas Masuk

Sumber : Hasil Penelitian, 2019

Gambar III.19. Activity Diagram Kas Masuk

6.c. Halaman Jurnal Umum

Sumber : Hasil Penelitian, 2019

Gambar III.20. Activity Diagram Jurnal Umum

34

6.d. Halaman Laporan Kas Masuk

Sumber : Hasil Penelitian, 2019

Gambar III.21. Activity Diagram Laporan Kas Masuk

6.e. Halaman Laporan Jurnal Umum

Sumber : Hasil Penelitian, 2019

Gambar III.22. Activity Diagram Laporan Jurnal Umum

35

7. Halaman Logout

Sumber : Hasil Penelitian, 2019

Gambar III.23. Activity Diagram Halaman Logout

B. Pengunjung

1. Halaman Pengunjung

Sumber : Hasil Penelitian, 2019

Gambar III.24. Activity Diagram Halaman Pengunjung

36

2. Halaman Registrasi

Sumber : Hasil Penelitian, 2019

Gambar III.25. Activity Diagram Halaman Registrasi

3. Halaman Data Diri

Sumber : Hasil Penelitian, 2019

Gambar III.26. Activity Diagram Data Diri

37

4. Halaman Formulir Pendaftaran

Sumber : Hasil Penelitian, 2019

Gambar III.27. Activity Diagram Formulir Pendaftaran

5. Halaman Cetak Bukti Pendaftaran

Sumber : Hasil Penelitian, 2019

Gambar III.28. Activity Diagram Cetak Bukti Pendaftaran

38

3.1.4. Rancangan Dokumen Masukan

1. Nama Dokumen : Bukti Pendaftaran

Fungsi : Sebagai bukti pendaftaran calon member

Sumber : Calon member

Tujuan : Admin

Media : Kertas

Jumlah : 1 halaman

Frekuensi : Setiap pendaftaran calon member baru.

Bentuk : Lampiran A.1.

3.1.5. Rancangan Dokumen Keluaran

1. Nama Dokumen : Bukti Pembayaran

Fungsi : Sebagai bukti pembayaran member

Sumber : Admin

Tujuan : Member

Media : Kertas

Jumlah : 1 halaman

Frekuensi : Setiap pembayaran member baru.

Bentuk : Lampiran B.1.

2. Nama Dokumen : Rekap Data Pendaftaran

Fungsi : Sebagai bukti rincian tiap transaksi yang dilakukan

Sumber : Admin

Tujuan : Manajemen / Pimpinan

Media : Kertas

Jumlah : 1 halaman

39

Frekuensi : Setiap terjadinya transaksi

Bentuk : Lampiran B.2.

3. Nama Dokumen : Rekap Data Pembayaran

Fungsi : Sebagai bukti rincian tiap transaksi yang dilakukan

Sumber : Admin

Tujuan : Manajemen / Pimpinan

Media : Kertas

Jumlah : 1 halaman

Frekuensi : Setiap terjadinya transaksi

Bentuk : Lampiran B.3.

4. Nama Dokumen : Member Card

Fungsi : Sebagai bukti sah menjadi member

Sumber : Admin

Tujuan : Member

Media : Kertas

Jumlah : 1 halaman

Frekuensi : Setiap cetak kartu member baru.

Bentuk : Lampiran B.4.

5. Nama Dokumen : Laporan Jurnal Umum

Fungsi : Sebagai bukti rincian tiap transaksi yang dilakukan

Sumber : Admin

Tujuan : Manajemen / Pimpinan

40

Media : Kertas

Jumlah : 1 halaman

Frekuensi : Setiap terjadinya transaksi

Bentuk : Lampiran B.5.

6. Nama Dokumen : Laporan Kas Masuk

Fungsi : Sebagai bukti rincian tiap transaksi yang dilakukan

Sumber : Admin

Tujuan : Manajemen / Pimpinan

Media : Kertas

Jumlah : 1 halaman

Frekuensi : Setiap terjadinya transaksi

Bentuk : Lampiran B.6.

41

3.2. Desain

3.2.1. Struktur Navigasi

Rancangan struktur navigasi untuk menggambarkan struktur atau alur dari

suatu web

1. Struktur Navigasi Admin

Sumber : Hasil Penelitian, 2019

Gambar III.29. Struktur Navigasi Admin

2. Struktur Navigasi Halaman Pengunjung

Sumber : Hasil Penelitian, 2019

Gambar III.30. Struktur Navigasi Pengunjung

3.2.2. Entity Relationship Diagram (ERD)

Perancangan basis data menghasilkan pemetaan tabel-tabel yang

digambarkan dengan Entity Relationship Diagram (ERD).

42

Sumber : Hasil Penelitian, 2019

Gambar III.31. Entity Relationship Diagram (ERD)

3.2.3. Logical Record Structure (LRS)

Sumber : Hasil Penelitian, 2019

Gambar III.32. Logical Record Structure (LRS)

3.2.4. Spesifikasi File

Spesifikasi file menjelaskan file-file apa saja yang digunakan dalam

pengolahan database yang diperlukan dalam proses pengolahan data, adapun file-file

tersebut adalah :

43

a. Spesifikasi File Tabel User

Nama Database : fitness

Nama Tabel : user

Akses File : Random

Tipe File : File Master

Panjang Record : 53 karakter

Field key : user_name

Tabel III.1.

Spesifikasi File Tabel User

Sumber : Hasil Penelitian, 2019

b. Spesifikasi File Tabel Paket

Nama Database : fitness

Nama Tabel : paket

Akses File : Random

Tipe File : File Master

Panjang Record : 160 karakter

Field key : kode_paket

Tabel III.2.

Spesifikasi File Tabel Paket

Sumber : Hasil Penelitian, 2019

44

c. Spesifikasi File Tabel Member

Nama Database : fitness

Nama Tabel : member

Akses File : Random

Tipe File : File Master

Panjang Record : 190 karakter

Field key : id_member

Tabel III.3.

Spesifikasi File Tabel Member

Sumber : Hasil Penelitian, 2019

d. Spesifikasi File Tabel Pendaftaran

Nama Database : fitness

Nama Tabel : daftar

Akses File : Random

Tipe File : File Transaksi

Panjang Record : 90 karakter

Field key : no_pd

45

Tabel III.4.

Spesifikasi File Tabel Pendaftaran

Sumber : Hasil Penelitian, 2019

e. Spesifikasi File Tabel Pembayaran

Nama Database : fitness

Nama Tabel : bayarmember

Akses File : Random

Tipe File : File Transaksi

Panjang Record : 110 karakter

Field key : no_pb

Tabel III.5.

Spesifikasi File Tabel Pembayaran

Sumber : Hasil Penelitian, 2019

f. Spesifikasi File Master Akun

Nama Database : fitness

46

Nama Tabel : master_akun

Akses File : Random

Tipe File : File Akuntansi

Panjang Record : 80 karakter

Field key : kode_akun

Tabel III.6.

Spesifikasi File Tabel Master Akun

Sumber : Hasil Penelitian, 2019

g. Spesifikasi File Jurnal

Nama Database : fitness

Nama Tabel : jurnal

Akses File : Random

Tipe File : File Akuntansi

Panjang Record : 80 karakter

Field key : no_referensi

Tabel III.7.

Spesifikasi File Tabel Jurnal

Sumber : Hasil Penelitian, 2019

47

h. Spesifikasi File Jurnal Detail

Nama Database : fitness

Nama Tabel : jurnal_detail

Akses File : Random

Tipe File : File Akuntansi

Panjang Record : 70 karakter

Field key : no_referensi

Tabel III.8.

Spesifikasi File Tabel Jurnal Detail

Sumber : Hasil Penelitian, 2019

i. Spesifikasi File Kas Masuk

Nama Database : fitness

Nama Tabel : kas_in

Akses File : Random

Tipe File : File Akuntansi

Panjang Record : 60 karakter

Field key : no_km

Tabel III.9.

Spesifikasi File Tabel Kas Masuk

Sumber : Hasil Penelitian, 2019

48

j. Spesifikasi File Kas Masuk Detail

Nama Database : fitness

Nama Tabel : kas_in_detail

Akses File : Random

Tipe File : File Akuntansi

Panjang Record : 26 karakter

Field key : no_km

Tabel III.10.

Spesifikasi File Tabel Kas Masuk Detail

Sumber : Hasil Penelitian, 2019

3.2.5. Pengkodean

1. ID Member

Keterangan :

Tahun : 2019

Nomor Urut : 001

49

2. ID Paket

Keterangan :

Identitas Paket : P

Nomor Urut : 001

3. ID Pendaftaran

Keterangan :

Identitas Pendaftaran : PD

Tahun : 19

Nomor Urut : 001

4. ID Pendaftaran Online

Keterangan :

Identitas Pendaftaran : PD

50

Kode Online : ON

Tahun : 19

Nomor Urut : 001

5. ID Pembayaran

Keterangan :

Identitas Pendaftaran : PBM

Tahun : 19

Nomor Urut : 001

6. ID Jurnal Umum

Keterangan :

Identitas Jurnal Umum : JU

Tahun : 19

Nomor Urut : 001

51

7. ID Kas Masuk

Keterangan :

Identitas Kas Masuk : KM

Tahun : 19

Nomor Urut : 001

3.2.6. User Interface

1. Halaman Login Admin

Sumber : Hasil Penelitian, 2019

Gambar III.33. Halaman Login Admin

52

2. Halaman Admin

Sumber : Hasil Penelitian, 2019

Gambar III.34. Halaman Admin

3. Halaman Master Data Data User

Sumber : Hasil Penelitian, 2019

Gambar III.35. Halaman Data User

53

4. Halaman Master Data Tambah Data User

Sumber : Hasil Penelitian, 2019

Gambar III.36. Halaman Tambah Data User

5. Halaman Master Data Data Paket

Sumber : Hasil Penelitian, 2019

Gambar III.37. Halaman Data Paket

6. Halaman Master Data Tambah Data Paket

54

Sumber : Hasil Penelitian, 2019

Gambar III.38. Halaman Tambah Data Paket

7. Halaman Master Data Data Member

Sumber : Hasil Penelitian, 2019

Gambar III.39. Halaman Data Member

8. Halaman Master Data Tambah Data Member

55

Sumber : Hasil Penelitian, 2019

Gambar III.40. Halaman Tambah Data Member

9. Halaman Transaksi Transaksi Pendaftaran

Sumber : Hasil Penelitian, 2019

Gambar III.41. Halaman Transaksi Pendaftaran

10. Halaman Transaksi Tambah Transaksi Pendaftaran

56

Sumber : Hasil Penelitian, 2019

Gambar III.42. Halaman Tambah Transaksi Pendaftaran

11. Halaman Transaksi Transaksi Pembayaran

Sumber : Hasil Penelitian, 2019

Gambar III.43. Halaman Transaksi Pembayaran

12. Halaman Rekap Data Rekap Data Pendaftaran

57

Sumber : Hasil Penelitian, 2019

Gambar III.44. Halaman Rekap Data Pendaftaran

13. Halaman Rekap Data Rekap Data Pembayaran

Sumber : Hasil Penelitian, 2019

Gambar III.45. Halaman Rekap Data Pembayaran

58

14. Halaman Cetak Cetak Bukti Pembayaran

Sumber : Hasil Penelitian, 2019

Gambar III.46. Halaman Cetak Bukti Pembayaran

15. Halaman Cetak Cetak Kartu Member

Sumber : Hasil Penelitian, 2019

Gambar III.47. Halaman Cetak Kartu Member

59

16. Halaman Akuntansi Data Akun

Sumber : Hasil Penelitian, 2019

Gambar III.48. Halaman Data Akun

17. Halaman Akuntansi Tambah Data Akun

Sumber : Hasil Penelitian, 2019

Gambar III.49. Halaman Tambah Data Akun

60

18. Halaman Akuntansi Jurnal Umum

Sumber : Hasil Penelitian, 2019

Gambar III.50. Halaman Jurnal Umum

19. Halaman Akuntansi Laporan Jurnal Umum

Sumber : Hasil Penelitian, 2019

Gambar III.51. Halaman Laporan Jurnal Umum

61

20. Halaman Akuntansi Kas Masuk

Sumber : Hasil Penelitian, 2019

Gambar III.52. Halaman Kas Masuk

21. Halaman Akuntansi Laporan Kas Masuk

Sumber : Hasil Penelitian, 2019

Gambar III.53. Halaman Laporan Kas Masuk

62

22. Halaman Pengunjung

Sumber : Hasil Penelitian, 2019

Gambar III.54. Halaman Pengunjung

63

23. Halaman Registrasi

Sumber : Hasil Penelitian, 2019

Gambar III.55. Halaman Registrasi

24. Halaman Data Diri

Sumber : Hasil Penelitian, 2019

Gambar III.56. Halaman Data Diri

64

25. Halaman Formulir Pendaftaran

Sumber : Hasil Penelitian, 2019

Gambar III.57. Halaman Formulir Pendaftaran

26. Halaman Cetak Bukti Pendaftaran

Sumber : Hasil Penelitian, 2019

Gambar III.58. Halaman Cetak Bukti Pendaftaran

65

3.3. Implementasi

3.3.1. Code Generation

A. Halaman Admin

<%@page contentType="text/html" pageEncoding="UTF-8"%>

<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>

<html lang="en" dir="ltr">

<head>

<meta charset="utf-8">

<title>Halaman Admin</title>

<link rel="shortcut icon" href="img/logo.png"/>

<link rel="stylesheet" href="style/style_1.css">

<link rel="stylesheet" href="css/bootstrap.min.css">

</head>

<body>

<div class="left-side">

<div class="logo">

<img src="img/logo.png" alt="" />

</div>

<div class="middle">

<div class="menu">

<div class="item" id="master">

<a href="#master" class="button"><i class="far fa-user"></i>Master

Data</a>

<div class="smenu">

<a href="HOME.jsp?halaman=user">Data User</a>

<a href="HOME.jsp?halaman=paket">Data Paket</a>

<a href="HOME.jsp?halaman=member">Data Member</a>

</div>

</div>

<div class="item" id="transaksi">

<a href="#transaksi" class="button"><i class="fas fa-list"></i>Transaksi</a>

<div class="smenu">

<a href="HOME.jsp?halaman=daftar">Pendaftaran Member</a>

<a href="HOME.jsp?halaman=bayarmember">Pembayaran Member</a>

</div>

</div>

<div class="item" id="rekap">

<a href="#rekap" class="button"><i class="fas fa-file"></i>Rekap Data</a>

<div class="smenu">

<a href="HOME.jsp?halaman=rekappendaftaran">Rekap Data

Pendaftaran</a>

<a href="HOME.jsp?halaman=rekappembayaran">Rekap Data

Pembayaran</a>

</div>

</div>

<div class="item" id="cetak">

<a href="#cetak" class="button"><i class="fas fa-print"></i>Cetak</a>

66

<div class="smenu">

<a href="HOME.jsp?halaman=buktipembayaran">Cetak Bukti

Pembayaran</a>

<a href="HOME.jsp?halaman=cetakkartu">Cetak Kartu Member</a>

</div>

</div>

<div class="item" id="akuntansi">

<a href="#akuntansi" class="button"><i class="fas fa-file-invoice-

dollar"></i>Akuntansi</a>

<div class="smenu">

<a href="HOME.jsp?halaman=akun">Data Akun</a>

<a href="HOME.jsp?halaman=jurnalumum">Jurnal Umum</a>

<a href="HOME.jsp?halaman=laporanju">Laporan Jurnal Umum</a>

<a href="HOME.jsp?halaman=kasmasuk">Kas Masuk</a>

<a href="HOME.jsp?halaman=laporankm">Laporan Kas Masuk</a>

</div>

</div>

<div class="item">

<a class="button" href="logout.jsp"><i class="fas fa-sign-out-

alt"></i>Logout</a>

</div>

</div>

</div>

<div class="copyright">

<p>Copyright &#169; SJ'19 </p>

</div>

</div>

<div class="right-side">

<div class="right-content">

<c:choose>

<c:when test="${param.halaman=='member'}">

<%@include file="member.jsp" %>

</c:when>

<c:when test="${param.halaman=='edit_member'}">

<%@include file="edit_member.jsp" %>

</c:when>

<c:when test="${param.halaman=='paket'}">

<%@include file="paket.jsp" %>

</c:when>

<c:when test="${param.halaman=='edit_paket'}">

<%@include file="edit_paket.jsp" %>

</c:when>

<c:when test="${param.halaman=='daftar'}">

<%@include file="daftar.jsp" %>

</c:when>

<c:when test="${param.halaman=='bayarmember'}">

<%@include file="bayarmember.jsp" %>

</c:when>

<c:when test="${param.halaman=='user'}">

<%@include file="user.jsp" %>

</c:when>

67

<c:when test="${param.halaman=='edit-user'}">

<%@include file="edit_user.jsp" %>

</c:when>

<c:when test="${param.halaman=='buktipembayaran'}">

<%@include file="buktipembayaran.jsp" %>

</c:when>

<c:when test="${param.halaman=='cetakkartu'}">

<%@include file="cetakkartu.jsp" %>

</c:when>

<c:when test="${param.halaman=='rekappendaftaran'}">

<%@include file="rekappendaftaran.jsp" %>

</c:when>

<c:when test="${param.halaman=='rekappembayaran'}">

<%@include file="rekappembayaran.jsp" %>

</c:when>

<c:when test="${param.halaman=='akun'}">

<%@include file="akun.jsp" %>

</c:when>

<c:when test="${param.halaman=='edit_akun'}">

<%@include file="edit_akun.jsp" %>

</c:when>

<c:when test="${param.halaman=='jurnalumum'}">

<%@include file="jurnalumum.jsp" %>

</c:when>

<c:when test="${param.halaman=='laporanju'}">

<%@include file="laporanju.jsp" %>

</c:when>

<c:when test="${param.halaman=='kasmasuk'}">

<%@include file="kasmasuk.jsp" %>

</c:when>

<c:when test="${param.halaman=='laporankm'}">

<%@include file="laporankm.jsp" %>

</c:when>

<c:otherwise>

<%@include file="artikel.jsp" %>

</c:otherwise>

</c:choose>

</div>

</div>

</body>

</html>

B. Halaman Data User

<%@page import="java.sql.*" %>

<%@page contentType="text/html" pageEncoding="UTF-8"%>

<%

//--koneksi database--

Connection koneksi = null;

Statement stmt = null;

ResultSet rs = null;

ResultSet qryuser = null;

ResultSet qrymasuk = null;

68

Class.forName("com.mysql.jdbc.Driver");

koneksi = DriverManager.getConnection("jdbc:mysql://localhost/fitness","root", "");

stmt = koneksi.createStatement();

rs = stmt.executeQuery("SELECT * FROM user" + " ORDER BY user_name");

%>

<html lang="en">

<head>

<style>

.content h1 {

text-transform: uppercase;

font-weight: 700;

padding-bottom: 35px;

margin-bottom: 35px;

border-bottom: 1px solid #333;

font-family: courier;

}

#one span {

color: #00c292;

}

.normal-table-list .table{

margin-bottom:0px;

}

.table.table-bordered>tbody>tr>td, .table.table-bordered>tbody>tr>th,

.table.table-bordered>tfoot>tr>td, .table.table-bordered>tfoot>tr>th, .table.table-

bordered>thead>tr>td, .table.table-bordered>thead>tr>th{

border: 1px solid #F5F5F5;

font-size:14px;

color:#333;

padding:15px;

}

.table-bordered, .table-bordered>tbody>tr>td, .table-bordered>tbody>tr>th,

.table-bordered>tfoot>tr>td, .table-bordered>tfoot>tr>th, .table-

bordered>thead>tr>td, .table-bordered>thead>tr>th {

border: 1px solid #F5F5F5;

}

.table.table-bordered>thead>tr>th {

border-bottom: 0px solid #ddd;

}

.login-form{

padding: 10px;

}

.login-form label{

margin-bottom: 5px;

margin-top: 5px;

margin-left: 25px;

font-size: 17px;

color: black;

font-family: cursive;

}

.login-form h1

{

padding: 20px;

font-size: 25px;

69

font-family: berlin sans fb;

color: #00c292;

text-align: center;

}

.form-control

{

font-size: 15px!important;

border-radius: 0!important;

color: black!important;

background: transparent!important;

box-shadow: none!important;

width: 90%

}

input, select, option

{

width: 90%;

padding: 12px 20px;

margin: 8px 26px;

display: inline-block;

border: 1px solid #ccc;

box-sizing: border-box;

font-size:16px;

}

.cancel

{

margin: 24px 0 12px 0;

position: relative;

}

.modal

{

display:none;

position: fixed;

z-index: 1;

left: 0;

top: 0;

width: 100%;

height: 100%;

overflow: auto;

background-color: linear-gradient(rgba(0,0,0,0.8),rgba(0,0,0,0.8));

}

.modal-content

{

background-color: #efefef;

margin: 10% auto 15% auto;

border: 1px solid #888;

width: 40%;

}

.close

{

position: absolute;

right: 25px;

top: 0;

color: #000;

font-size: 35px;

70

font-weight: bold;

}

.close:hover,.close:focus

{

color: red;

cursor: pointer;

}

.animate

{

animation: zoom 0.6s

}

.btn-primary{

box-shadow: none;

padding: 8px 25px;

border: none;

border-radius: 20px;

background-color: #00c292;

color: white;

font-family: sans-serif;

cursor: pointer;

}

.btn-secondary{

margin: 0 25px 0 125px;

box-shadow: none;

padding: 8px 25px;

border: none;

border-radius: 20px;

background-color: #00c292;

color: white;

font-family: sans-serif;

cursor: pointer;

}

@keyframes zoom

{

from {transform: scale(0)}

to {transform: scale(1)}

}

.search-box {

position: relative;

float: right;

}

.search-box .input-group {

min-width: 300px;

right: 0;

}

.search-box .input-group-addon, .search-box input {

border-color: transparent;

border: 1px solid #F5F5F5;

border-radius: 0;

}

.search-box input {

height: 34px;

padding-right: 35px;

background: transparent;

71

border: 1px solid #F5F5F5;

border-radius: 2px !important;

}

.search-box input:focus {

background: transparent;

border: 1px solid #F5F5F5;

}

.search-box input::placeholder {

font-style: italic;

color: white;

}

.search-box .input-group-addon {

min-width: 50px;

border: none;

background: transparent;

position: absolute;

right: 0;

z-index: 9;

padding: 13px 0;

}

.search-box i {

color: #a0a5b1;

font-size: 19px;

position: relative;

top: 2px;

}

#table tr.header, #table tr:hover {

background-color: #cccccc;

}

</style>

</head>

<body>

<div class="row">

<div id="one" class="content active in">

<h1><span>Master Data</span> - Data User</h1>

</div>

<div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">

<button onclick="document.getElementById('modal-

wrapper').style.display='block'" class="btn-primary">Tambah User</button>

</div>

<br>

<div class="search-box">

<div class="input-group">

<input type="text" id="search" onkeyup="myFunction()"

placeholder="Search Data">

<span class="input-group-addon"><i class="fas fa-

search"></i></span>

</div>

</div>

<br>

<div class="bsc-tbl-bdr">

<table id="table" class="table table-bordered">

<thead>

72

<tr>

<th>Username</th>

<th>Nama Lengkap User</th>

<th>Password</th>

<th>Hak Akses</th>

<th>Action</th>

</tr>

</thead>

<tbody>

<tr>

<%

Class.forName("com.mysql.jdbc.Driver");

koneksi = DriverManager.getConnection("jdbc:mysql://localhost/fitness",

"root", "");

stmt = koneksi.createStatement();

rs = stmt.executeQuery("SELECT * FROM user ORDER BY user_name");

int isi = rs.getRow();

if (isi > 0){

out.println("<tr>"

+ "<td colspan=5> "

+ "- Data User Kosong -"

+ "</td>"

+ "</tr>");

} else {

while (rs.next()){

out.println("<tr>"

+ "<td>" + rs.getString("user_name") + "</td>"

+ "<td>" + rs.getString("nama_user") + "</td>"

+ "<td>" + rs.getString("password") + "</td>"

+ "<td>" + rs.getString("hak_akses") + "</td>"

+ "<td><a href=HOME.jsp?halaman=edit-user&user_name=" +

rs.getString("user_name") + ">Edit</a> | "

+ "<a href=userServlet?aksi=Delete&user_name=" +

rs.getString("user_name") + ">Hapus</a></td>"

+ "</tr>");

}

}

%>

</tr>

</tbody>

</table>

</div>

</div>

<div id="modal-wrapper" class="modal">

<form class="modal-content animate" action="userServlet">

<div class="cancel">

<span onclick="document.getElementById('modal-

wrapper').style.display='none'" class="close">&times;</span>

</div>

<div class="login-form">

<h1>TAMBAH DATA USER</h1>

<label>Username</label>

<input type="text" class="form-control" name="user_name">

73

<label>Nama Lengkap</label>

<input type="text" class="form-control" name="nama_user">

<label>Password</label>

<input type="text" class="form-control" name="password">

<label>Hak Akses</label>

<input type="text" class="form-control" value="Admin" name="hak_akses"

readonly='readonly'>

<br><br>

<button type="submit" name="aksi" value="INSERT" class="btn-

secondary">SIMPAN</button>

<button type="reset" value="RESET" name="batal" class="btn-

secondary">RESET</button>

<br>

</div>

</form>

</div>

<script>

var modal = document.getElementById('modal-wrapper');

window.onclick = function(event) {

if (event.target == modal) {

modal.style.display = "none";

}

}

</script>

<script>

function myFunction() {

var input, filter, table, tr, td, i, txtValue;

input = document.getElementById("search");

filter = input.value.toUpperCase();

table = document.getElementById("table");

tr = table.getElementsByTagName("tr");

for (i = 0; i < tr.length; i++) {

td = tr[i].getElementsByTagName("td")[0];

if (td) {

txtValue = td.textContent || td.innerText;

if (txtValue.toUpperCase().indexOf(filter) > -1) {

tr[i].style.display = "";

} else {

tr[i].style.display = "none";

}

}

}

}

</script>

</body>

</html>

74

C. Halaman Transaksi Pendaftaran

<%@page import="java.sql.*, model.member, model.paket, model.daftar" %>

<%

daftar daftar = new daftar();

paket paket = new paket();

member member = new member();

//--koneksi database--

Connection koneksi = null;

Statement stmt = null;

Statement perintah = null;

ResultSet rs = null;

ResultSet no = null;

ResultSet qrypaket = null;

ResultSet qrymasuk = null;

Class.forName("com.mysql.jdbc.Driver");

koneksi = DriverManager.getConnection("jdbc:mysql://localhost/fitness", "root",

"");

stmt = koneksi.createStatement();

perintah = koneksi.createStatement();

rs = stmt.executeQuery("SELECT * FROM daftar"

+ " ORDER BY no_pd");

%>

<html lang="en">

<head>

<style>

.content h1 {

text-transform: uppercase;

font-weight: 700;

padding-bottom: 35px;

margin-bottom: 35px;

border-bottom: 1px solid #333;

font-family: courier;

}

#one span {

color: #00c292;

}

.normal-table-list .table{

margin-bottom:0px;

}

.table.table-bordered>tbody>tr>td, .table.table-bordered>tbody>tr>th,

.table.table-bordered>tfoot>tr>td, .table.table-bordered>tfoot>tr>th, .table.table-

bordered>thead>tr>td, .table.table-bordered>thead>tr>th{

border: 1px solid #F5F5F5;

font-size:14px;

color:#333;

padding:15px;

}

.table-bordered, .table-bordered>tbody>tr>td, .table-bordered>tbody>tr>th,

.table-bordered>tfoot>tr>td, .table-bordered>tfoot>tr>th, .table-

bordered>thead>tr>td, .table-bordered>thead>tr>th {

75

border: 1px solid #F5F5F5;

}

.table.table-bordered>thead>tr>th {

border-bottom: 0px solid #ddd;

}

.login-form{

padding: 10px;

}

.login-form label{

margin-bottom: 5px;

margin-top: 5px;

margin-left: 25px;

font-size: 17px;

color: black;

font-family: cursive;

}

.login-form h1

{

padding: 20px;

font-size: 25px;

font-family: berlin sans fb;

color: #00c292;

text-align: center;

}

.form-control

{

font-size: 15px!important;

border-radius: 0!important;

color: black!important;

background: transparent!important;

box-shadow: none!important;

width: 90%

}

input, select, option

{

width: 90%;

padding: 12px 20px;

margin: 8px 26px;

display: inline-block;

border: 1px solid #ccc;

box-sizing: border-box;

font-size:16px;

}

.cancel

{

margin: 24px 0 12px 0;

position: relative;

}

.modal

{

display:none;

position: fixed;

z-index: 1;

left: 0;

76

top: 0;

width: 100%;

height: 100%;

overflow: auto;

background-color: linear-gradient(rgba(0,0,0,0.8),rgba(0,0,0,0.8));

}

.modal-content

{

background-color: #efefef;

margin: 10% auto 15% auto;

border: 1px solid #888;

width: 40%;

}

.close

{

position: absolute;

right: 25px;

top: 0;

color: #000;

font-size: 35px;

font-weight: bold;

}

.close:hover,.close:focus

{

color: red;

cursor: pointer;

}

.animate

{

animation: zoom 0.6s

}

.btn-primary{

box-shadow: none;

padding: 8px 25px;

border: none;

border-radius: 20px;

background-color: #00c292;

color: white;

font-family: sans-serif;

cursor: pointer;

}

.btn-secondary{

margin: 0 25px 0 125px;

box-shadow: none;

padding: 8px 25px;

border: none;

border-radius: 20px;

background-color: #00c292;

color: white;

font-family: sans-serif;

cursor: pointer;

}

@keyframes zoom

{

77

from {transform: scale(0)}

to {transform: scale(1)}

}

.search-box {

position: relative;

float: right;

}

.search-box .input-group {

min-width: 300px;

right: 0;

}

.search-box .input-group-addon, .search-box input {

border-color: transparent;

border: 1px solid #F5F5F5;

border-radius: 0;

}

.search-box input {

height: 34px;

padding-right: 35px;

background: transparent;

border: 1px solid #F5F5F5;

border-radius: 2px !important;

}

.search-box input:focus {

background: transparent;

border: 1px solid #F5F5F5;

}

.search-box input::placeholder {

font-style: italic;

color: white;

}

.search-box .input-group-addon {

min-width: 50px;

border: none;

background: transparent;

position: absolute;

right: 0;

z-index: 9;

padding: 13px 0;

}

.search-box i {

color: #a0a5b1;

font-size: 19px;

position: relative;

top: 2px;

}

#table tr.header, #table tr:hover {

background-color: #cccccc;

}

</style>

</head>

<body>

<div class="row">

<div id="one" class="content active in">

78

<h1><span>Transaksi</span> - Transaksi Pendaftaran</h1>

</div>

<div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">

<button onclick="document.getElementById('modal-

wrapper').style.display='block'" class="btn-primary">Tambah Pendaftaran</button>

</div>

<br>

<div class="search-box">

<div class="input-group">

<input type="text" id="search" onkeyup="myFunction()"

placeholder="Search Data">

<span class="input-group-addon"><i class="fas fa-

search"></i></span>

</div>

</div>

<br>

<div class="bsc-tbl-bdr">

<table id="table" class="table table-bordered">

<thead>

<tr>

<th>No. Pendaftaran</th>

<th>Tanggal Pendaftaran</th>

<th>ID Member</th>

<th>Paket</th>

<th>Harga Paket</th>

<th>Biaya Pendaftaran</th>

<th>Total Pembayaran</th>

<th>Action</th>

</tr>

</thead>

<tbody>

<tr>

<%

Class.forName("com.mysql.jdbc.Driver");

koneksi = DriverManager.getConnection("jdbc:mysql://localhost/fitness",

"root", "");

stmt = koneksi.createStatement();

rs = stmt.executeQuery("SELECT * FROM daftar ORDER BY no_pd");

int isi = rs.getRow();

if (isi > 0){

out.println("<tr>"

+ "<td colspan=5> "

+ "- Transaksi Pendaftaran Kosong -"

+ "</td>"

+ "</tr>");

} else {

while (rs.next()){

out.println("<tr>"

+ "<td>" + rs.getString("no_pd") + "</td>"

+ "<td>" + rs.getString("tgl_pd") + "</td>"

+ "<td>" + rs.getString("id_member") + "</td>"

+ "<td>" + rs.getString("paket") + "</td>"

+ "<td>" + rs.getString("harga") + "</td>"

79

+ "<td>" + rs.getString("biaya") + "</td>"

+ "<td>" + rs.getString("total") + "</td>"

+ "<td><a href=HOME.jsp?halaman=bayarmember&no_pd=" +

rs.getString(1) + ">Bayar</a> | "

+ "<a href=daftarServlet?aksi=Delete&no_pd=" + rs.getString(1) +

">Hapus</a></td>"

+ "</tr>");

}

}

%>

</tr>

</tbody>

</table>

</div>

</div>

<div id="modal-wrapper" class="modal">

<form class="modal-content animate" action="daftarServlet">

<div class="cancel">

<span onclick="document.getElementById('modal-

wrapper').style.display='none'" class="close">&times;</span>

</div>

<div class="login-form">

<h1>TAMBAH TRANSAKSI PENDAFTARAN</h1>

<label>No. Pendaftaran</label>

<% try {

rs = perintah.executeQuery("Select max(right(no_pd,3)) as no

FROM daftar");

while (rs.next()) {

if (rs.first() == false) {

out.println("<input type='hidden' name='no_pd'

value='PD001'/>");

out.println("<input type='text' value='PD001'

readonly='readonly'/>");

} else {

rs.last();

int autono = rs.getInt(1) + 1;

String nomor = String.valueOf(autono);

int noLong = nomor.length();

for (int a = 1; a < 4 - noLong; a++) {

nomor = "0" + nomor;

}

String nomer = "PD19" + nomor;

out.println("<input type='hidden' name='no_pd' value='" +

nomer + "'/>");

out.println("<input type='text' value='" + nomer + "'

readonly='readonly'/>");

}

}

} catch (Exception e) {

out.println(e);

}

%>

80

<label>Tanggal Pendaftaran</label>

<input type="date" class="form-control" name="tgl_pd">

<label>ID Member</label>

<select name="id_member">

<%

qrymasuk = stmt.executeQuery("SELECT id_member, nama_member

FROM member");

while (qrymasuk.next()) {

member.setId_member(qrymasuk.getString("id_member"));

member.setNama_member(qrymasuk.getString("nama_member"));

%><option

value="<%=member.getId_member()%>"><%=member.getId_member()%>

<%=member.getNama_member()%></option>

<% } %>

</select>

<label>Paket</label>

<select name="paket">

<%

qrymasuk = stmt.executeQuery("SELECT kode_paket, nama_paket

FROM paket");

while (qrymasuk.next()) {

paket.setKode_paket(qrymasuk.getString("kode_paket"));

paket.setNama_paket(qrymasuk.getString("nama_paket"));

%><option

value="<%=paket.getKode_paket()%>"><%=paket.getKode_paket()%>

<%=paket.getNama_paket()%></option>

<% } %>

</select>

<label>Harga Paket</label>

<select id="harga" name="harga" onchange="math()">

<%

qrymasuk = stmt.executeQuery("SELECT kode_paket, harga FROM

paket");

while (qrymasuk.next()) {

paket.setKode_paket(qrymasuk.getString("kode_paket"));

paket.setHarga(qrymasuk.getInt("harga"));

%><option

value="<%=paket.getHarga()%>"><%=paket.getKode_paket()%> --

<%=paket.getHarga()%></option>

<% } %>

</select>

<label>Biaya Pendaftaran</label>

<input name="biaya" type="text" value="20000" id="biaya"

onchange="math()" readonly>

<label>Total Pembayaran</label>

<input type="text" name="total" id="total" readonly="readonly">

<br><br>

<button type="submit" name="aksi" value="SIMPAN" class="btn-

secondary">SIMPAN</button>

<button type="reset" value="RESET" name="batal" class="btn-

secondary">RESET</button>

<br>

</div>

</form>

81

</div>

<script>

function math() {

var txtFirstNumberValue = document.getElementById('biaya').value;

var txtSecondNumberValue = document.getElementById('harga').value;

var result = parseInt(txtFirstNumberValue) + parseInt(txtSecondNumberValue);

if (!isNaN(result))

{

document.getElementById('total').value = result;

}

}

</script>

<script>

var modal = document.getElementById('modal-wrapper');

window.onclick = function(event) {

if (event.target == modal) {

modal.style.display = "none";

}

}

</script>

<script>

function myFunction() {

var input, filter, table, tr, td, i, txtValue;

input = document.getElementById("search");

filter = input.value.toUpperCase();

table = document.getElementById("table");

tr = table.getElementsByTagName("tr");

for (i = 0; i < tr.length; i++) {

td = tr[i].getElementsByTagName("td")[0];

if (td) {

txtValue = td.textContent || td.innerText;

if (txtValue.toUpperCase().indexOf(filter) > -1) {

tr[i].style.display = "";

} else {

tr[i].style.display = "none";

}

}

}

}

</script>

</body>

</html>

82

3.3.2. Black Box Testing

A. Pengujian Black Box Form Login

Tabel III.11.

Pengujian Black Box Form Login

No Skenario Pengujian Test Case Hasil yang

diharapkan

Hasil

Pengujian Kesimpulan

1 Username dan

password tidak diisi

kemudian klik

tombol masuk

Nama user:

(kosong)

Sistem akan

menolak

akses user

Sesuai

harapan

Valid

Kata sandi:

(kosong)

2 Hanya mengisi

salah satu form

kemudian klik

tombol Login

Nama user: Sistem akan

menolak

akses user

Sesuai

harapan

Valid

(diisi)

Kata sandi:

(kosong)

3 Mengetikkan

username dan

password yang

benar kemudian

klik tombol masuk

Nama user: Sistem akan

menerima

akses user

Sesuai

harapan

Valid

(diisi)

Kata sandi:

(diisi)

Sumber : Hasil Penelitian, 2019

B. Pengujian Black Box Form Data User

Tabel III.12.

Pengujian Black Box Form Data User

No Skenario

Pengujian Test Case

Hasil yang

diharapkan

Hasil

Pengujian Kesimpulan

1 Username, nama

lengkap,

password, hak

akses tidak diisi

kemudian klik

Simpan

Username:

(kosong)

Sistem akan

menolak

akses simpan

dan akan

menampilkan

pesan “Data

User Gagal

Input”

Sesuai

harapan

Valid

Nama

lengkap:

(kosong)

Password:

(kosong)

Hak Akses:

(otomatis)

2 Mengisi

beberapa form

username, nama

lengkap

administrator,

Username: Sistem akan

menolak

akses simpan

dan akan

menampilkan

Sesuai

harapan

Valid

(diisi)

Nama

lengkap:

(diisi)

83

password dan

hak akses diisi

kemudian klik

tombol simpan

Password: pesan “Data

User Gagal

Input” (kosong)

Hak Akses:

(otomatis)

3 Menginput Data

User dengan

benar dan

lengkap,

kemudian klik

Simpan

Username: Sistem akan

menerima

akses simpan

dan

menampilkan

pesan “Data

User berhasil

ditambahkan"

Sesuai

harapan

Valid

(diisi)

Nama

lengkap:

(diisi)

Password:

(diisi)

Hak Akses:

(otomatis)

Sumber : Hasil Penelitian, 2019

C. Pengujian Black Box Form Data Paket

Tabel III.13.

Pengujian Black Box Form Data Paket

No Skenario

Pengujian Test Case

Hasil yang

diharapkan

Hasil

Pengujian Kesimpulan

1 Kode paket, nama

paket, iuran,

harga dan

deskripsi tidak

diisi kemudian

klik Simpan

Kode Paket:

(otomatis)

Sistem akan

menolak

akses simpan

dan akan

menampilkan

pesan “Data

Paket Gagal

Input”

Sesuai

harapan

Valid

Nama paket:

(kosong)

Iuran:

(kosong)

Harga:

(kosong)

Deskripsi:

(kosong)

2 Mengisi beberapa

form kode paket,

nama paket,

iuran, harga dan

deskripsi

kemudian klik

Simpan

Kode Paket:

(otomatis)

Sistem akan

menolak

akses simpan

dan akan

menampilkan

pesan “Data

Paket Gagal

Input”

Sesuai

harapan

Valid

Nama paket:

(diisi)

Iuran:

(kosong)

Harga:

(kosong)

Deskripsi:

(kosong)

3 Mengisi data user

dengan lengkap

Kode Paket:

(otomatis)

Sistem akan

menerima

Sesuai

harapan

Valid

84

dan benar

kemudian klik

Simpan

Nama paket:

(diisi)

akses simpan

dan akan

menampilkan

pesan “Data

Paket Berhasil

Ditambahkan”

Iuran:

(diisi)

Harga:

(diisi)

Deskripsi:

(diisi)

Sumber : Hasil Penelitian, 2019

D. Pengujian Black Box Form Data Member

Tabel III.14.

Pengujian Black Box Form Data Member

No Skenario

Pengujian Test Case

Hasil yang

diharapkan

Hasil

Pengujian Kesimpulan

1 ID Member,

Nama Member,

Nomor KTP,

Jenis Kelamin,

Alamat, No Telp

tidak diisi

kemudian klik

Simpan

ID Member:

(otomatis)

Sistem akan

menolak

akses simpan

dan akan

menampilkan

pesan “Data

Member

Gagal Input”

Sesuai

harapan

Valid

Nama

member:

(kosong)

Nomor KTP

(kosong)

Jenis

Kelamin:

(kosong)

Alamat

(kosong)

No. Telp:

(kosong)

2 Mengisi beberapa

form ID Member,

Nama Member,

Nomor KTP,

Jenis Kelamin,

Alamat, No Telp

kemudian klik

Simpan

ID Member:

(otomatis)

Sistem akan

menolak

akses simpan

dan akan

menampilkan

pesan “Data

Member

Gagal Input”

Sesuai

harapan

Valid

Nama

member:

(diisi)

Nomor KTP

(diisi)

Jenis

Kelamin:

(diisi)

Alamat

(kosong)

No. Telp:

85

(kosong)

3 Mengisi Data

Member dengan

lengkap dan

benar, kemudian

klik Simpan

ID Member:

(otomatis)

Sistem akan

menerima

akses simpan

dan akan

menampilkan

pesan “Data

Member

Berhasil

Ditambahkan”

Sesuai

harapan

Valid

Nama

member:

(diisi)

Nomor KTP

(diisi)

Jenis

Kelamin:

(diisi)

Alamat

(diisi)

No. Telp:

(diisi)

Sumber : Hasil Penelitian, 2019

E. Pengujian Black Box Form Transaksi Pendaftaran Member

Tabel III.15.

Pengujian Black Box Form Transaksi Pendaftaran Member

No Skenario

Pengujian Test Case

Hasil yang

diharapkan

Hasil

Pengujian Kesimpulan

1 Nomor

Pendaftaran,

Tanggal

Pendaftaran, ID

Member, Paket,

Harga Paket,

Biaya

Pendaftaran dan

Total

Pembayaran

tidak diisi

kemudian klik

Simpan

Nomor

Pendaftaran:

(otomatis)

Sistem akan

menolak

akses simpan

dan akan

menampilkan

pesan “Gagal

masih ada

data yang

belum terisi,

Silahkan

Ulangi”

Sesuai

harapan

Valid

Tanggal

Pendaftaran:

(kosong)

ID Member:

(kosong)

Paket:

(kosong)

Harga Paket:

(kosong)

Biaya

Pendaftaran:

(kosong)

Total

Pembayaran:

(kosong)

2 Mengisi

beberapa form

Nomor

Pendaftaran:

Sistem akan

menolak

Sesuai

harapan

Valid

86

Nomor

Pendaftaran,

Tanggal

Pendaftaran, ID

Member, Paket,

Harga Paket,

Biaya

Pendaftaran dan

Total

Pembayaran

kemudian klik

Simpan

(otomatis) akses simpan

dan akan

menampilkan

pesan “Gagal

masih ada

data yang

belum terisi,

Silahkan

Ulangi”

Tanggal

Pendaftaran:

(kosong)

ID Member:

(diisi)

Paket:

(kosong)

Harga Paket:

(kosong)

Biaya

Pendaftaran:

(diisi)

Total

Pembayaran:

(kosong)

3 Mengisi

transaksi

pendaftaran

dengan lengkap

dan benar,

kemudian klik

Simpan

Nomor

Pendaftaran:

(otomatis)

Sistem akan

menerima

akses simpan

dan akan

menampilkan

pesan

“Transaksi

Pendaftaran

Berhasil

Ditambahkan”

Sesuai

harapan

Valid

Tanggal

Pendaftaran:

(diisi)

ID Member:

(diisi)

Paket:

(diisi)

Harga Paket:

(diisi)

Biaya

Pendaftaran:

(diisi)

Total

Pembayaran:

(diisi)

Sumber : Hasil Penelitian, 2019

87

F. Pengujian Black Box Form Transaksi Pembayaran Member

Tabel III.16.

Pengujian Black Box Form Transaksi Pembayaran Member

No Skenario

Pengujian Test Case

Hasil yang

diharapkan

Hasil

Pengujian Kesimpulan

1 Nomor

Pembayaran,

Tanggal

Pembayaran,

Nomor

Pendaftaran,

ID Member,

Total

Pembayaran,

Uang Bayar,

Uang

Kembali,

Nama User

tidak diisi

kemudian

klik Simpan

Nomor

Pembayaran:

(otomatis)

Sistem akan

menolak

akses simpan

dan akan

menampilkan

pesan “Gagal

masih ada

data yang

belum terisi,

Silahkan

Ulangi”

Sesuai

harapan

Valid

Tanggal

Pembayaran:

(kosong)

Nomor

Pembayaran:

(kosong)

ID Member:

(kosong)

Total

Pembayaran:

(kosong)

Uang Bayar:

(kosong)

Uang

Kembali:

(kosong)

Nama User:

(kosong)

2 Mengisi

beberapa

form Nomor

Pembayaran,

Tanggal

Pembayaran,

Nomor

Pendaftaran,

ID Member,

Total

Pembayaran,

Uang Bayar,

Uang

Kembali,

Nama User

kemudian

klik Simpan

Nomor

Pembayaran:

(otomatis)

Sistem akan

menolak

akses simpan

dan akan

menampilkan

pesan “Gagal

masih ada

data yang

belum terisi,

Silahkan

Ulangi”

Sesuai

harapan

Valid

Tanggal

Pembayaran:

(kosong)

Nomor

Pendaftaran:

(kosong)

ID Member:

(diisi)

Total

Pembayaran:

(kosong)

Uang Bayar:

(kosong)

Uang

88

Kembali:

(kosong)

Nama User:

(diisi)

3 Mengisi

transaksi

pembayaran

dengan

lengkap dan

benar,

kemudian

klik Simpan

Nomor

Pembayaran:

(otomatis)

Sistem akan

menerima

akses simpan

dan akan

menampilkan

pesan

“Transaksi

Pembayaran

Berhasil

Ditambahkan”

Sesuai

harapan

Valid

Tanggal

Pembayaran:

(diisi)

Nomor

Pembayaran:

(diisi)

ID Member:

(diisi)

Total

Pembayaran:

(diisi)

Uang Bayar:

(diisi)

Uang

Kembali:

(diisi)

Nama User:

(diisi)

Sumber : Hasil Penelitian, 2019

G. Pengujian Black Box Form Data Akun

Tabel III.17.

Pengujian Black Box Form Data Akun

No Skenario

Pengujian Test Case

Hasil yang

diharapkan

Hasil

Pengujian Kesimpulan

1 Kode akun,

nama akun,

jenis akun dan

saldo normal

tidak diisi

kemudian klik

Simpan

Kode Akun:

(kosong)

Sistem akan

menolak akses

simpan dan

akan

menampilkan

pesan “Data

Master Akun

Gagal Input”

Sesuai

harapan

Valid

Nama akun:

(kosong)

Jenis Akun:

(kosong)

Saldo

Normal:

(kosong)

2 Mengisi

beberapa form

kode akun,

Kode Akun:

(diisi)

Sistem akan

menolak akses

simpan dan

Sesuai

harapan

Valid

Nama akun:

89

nama akun,

jenis akun dan

saldo norma

kemudian klik

Simpan

(diisi) akan

menampilkan

pesan “Data

Master Akun

Gagal Input”

Jenis Akun:

(kosong)

Saldo

Normal:

(kosong)

3 Mengisi data

akun dengan

lengkap dan

benar kemudian

klik Simpan

Kode Akun:

(kosong)

Sistem akan

menerima akses

simpan dan

akan

menampilkan

pesan “Data

Master Akun

Berhasil

Ditambahkan”

Sesuai

harapan

Valid

Nama akun:

(kosong)

Jenis Akun:

(kosong)

Saldo

Normal:

(kosong)

Sumber : Hasil Penelitian, 2019

H. Pengujian Black Box Form Jurnal Umum

Tabel III.18.

Pengujian Black Box Form Jurnal Umum

No Skenario

Pengujian Test Case

Hasil yang

diharapkan

Hasil

Pengujia

n

Kesimpulan

1 No. Referensi,

Tanggal

Transaksi, No.

Bukti

Transaksi,

Keterangan,

Kode

Akun&Nama

Akun, Debet,

Kredit tidak

diisi kemudian

klik Simpan

No.

Referensi:

(otomatis)

Sistem akan

menolak

akses simpan

dan akan

menampilkan

pesan “Jurnal

Umum Gagal

Input”

Sesuai

harapan

Valid

Tanggal

Transaksi:

(kosong)

No. Bukti

Transaksi:

(kosong)

Keterangan:

(kosong)

Kode

Akun&Nama

Akun:

(kosong)

Debet:

(kosong)

Kredit:

(kosong)

2 Mengisi No. Sistem akan Sesuai Valid

90

beberapa form

No. Referensi,

Tanggal

Transaksi, No.

Bukti

Transaksi,

Keterangan,

Kode

Akun&Nama

Akun, Debet,

Kredit

kemudian klik

Simpan

Referensi:

(otomatis)

menolak

akses simpan

dan akan

menampilkan

pesan “Jurnal

Umum Gagal

Input”

harapan

Tanggal

Transaksi:

(kosong)

No. Bukti

Transaksi:

(diisi)

Keterangan:

(diisi)

Kode

Akun&Nama

Akun:

(kosong)

Debet:

(kosong)

Kredit:

(kosong)

3 Mengisi data

jurnal umum

dengan

lengkap dan

benar

kemudian klik

Simpan

No.

Referensi:

(otomatis)

Sistem akan

menerima

akses simpan

dan akan

menampilkan

pesan “Jurnal

Umum

Berhasil

Ditambahkan

Sesuai

harapan

Valid

Tanggal

Transaksi:

(diisi)

No. Bukti

Transaksi:

(diisi)

Keterangan:

(diisi)

Kode

Akun&Nama

Akun:

(diisi)

Debet:

(diisi)

Kredit:

(diisi)

Sumber : Hasil Penelitian, 2019

91

I. Pengujian Black Box Form Kas Masuk

Tabel III.19.

Pengujian Black Box Form Kas Masuk

No Skenario

Pengujian Test Case

Hasil yang

diharapkan

Hasil

Pengujian Kesimpulan

1 No. Kas

Masuk,

Tanggal Kas

Masuk, Akun

Debet, Akun

Kredit,

Keterangan

dan Nominal

tidak diisi

kemudian klik

Simpan

No. Kas

Masuk:

(otomatis)

Sistem akan

menolak

akses simpan

dan akan

menampilkan

pesan “Kas

Masuk Gagal

Input”

Sesuai

harapan

Valid

Tanggal Kas

Masuk:

(kosong)

Akun Debet:

(kosong)

Akun Kredit:

(kosong)

Keterangan:

(kosong)

Nominal:

(kosong)

2 Mengisi

beberapa form

No. Kas

Masuk,

Tanggal Kas

Masuk, Akun

Debet, Akun

Kredit,

Keterangan

dan Nominal

kemudian klik

Simpan

No. Kas

Masuk:

(otomatis)

Sistem akan

menolak

akses simpan

dan akan

menampilkan

pesan “Kas

Masuk Gagal

Input”

Sesuai

harapan

Valid

Tanggal Kas

Masuk:

(diisi)

Akun Debet:

(diisi)

Akun Kredit:

(kosong)

Keterangan:

(kosong)

Nominal:

(kosong)

3 Mengisi data

kas masuk

dengan

lengkap dan

benar

kemudian klik

Simpan

No. Kas

Masuk:

(otomatis)

Sistem akan

menerima

akses simpan

dan akan

menampilkan

pesan “Kas

Masuk

Berhasil

Ditambahkan

Sesuai

harapan

Valid

Tanggal Kas

Masuk:

(diisi)

Akun Debet:

(diisi)

Akun Kredit:

(diisi)

92

Keterangan:

(diisi)

Nominal:

(diisi)

Sumber : Hasil Penelitian, 2019

J. Pengujian Black Box Form Data Diri

Tabel III.20.

Pengujian Black Box Form Data Diri

No Skenario

Pengujian Test Case

Hasil yang

diharapkan

Hasil

Pengujian Kesimpulan

1 ID Member,

Nama Member,

Nomor KTP,

Jenis Kelamin,

Alamat, No Telp

tidak diisi

kemudian klik

Simpan

ID Member:

(otomatis)

Sistem akan

menolak

akses simpan

dan akan

menampilkan

pesan “Data

Gagal Input”

Sesuai

harapan

Valid

Nama

member:

(kosong)

Nomor KTP

(kosong)

Jenis

Kelamin:

(kosong)

Alamat

(kosong)

No. Telp:

(kosong)

2 Mengisi

beberapa form ID

Member, Nama

Member, Nomor

KTP, Jenis

Kelamin,

Alamat, No Telp

kemudian klik

Simpan

ID Member:

(otomatis)

Sistem akan

menolak

akses simpan

dan akan

menampilkan

pesan “Data

Gagal Input”

Sesuai

harapan

Valid

Nama

member:

(diisi)

Nomor KTP

(diisi)

Jenis

Kelamin:

(kosong)

Alamat

(kosong)

No. Telp:

(kosong)

3 Mengisi Data

Diri dengan

lengkap dan

benar, kemudian

klik Simpan

ID Member:

(otomatis)

Sistem akan

menerima

akses simpan

dan akan

menampilkan

pesan “Data

Sesuai

harapan

Valid

Nama

member:

(diisi)

Nomor KTP

93

(diisi) Diri Anda

Berhasil

Ditambahkan” Jenis

Kelamin:

(diisi)

Alamat

(diisi)

No. Telp:

(diisi)

Sumber : Hasil Penelitian, 2019

K. Pengujian Black Box Form Registrasi

Tabel III.21.

Pengujian Black Box Form Registrasi

No Skenario

Pengujian Test Case

Hasil yang

diharapkan

Hasil

Pengujian Kesimpulan

1 Nomor

Pendaftaran,

Tanggal

Pendaftaran, ID

Member, Paket,

Harga Paket,

Biaya

Pendaftaran dan

Total

Pembayaran

tidak diisi

kemudian klik

Simpan

Nomor

Pendaftaran:

(otomatis)

Sistem akan

menolak

akses simpan

dan akan

menampilkan

pesan “Data

Pendaftaran

Gagal Input”

Sesuai

harapan

Valid

Tanggal

Pendaftaran:

(kosong)

ID Member:

(kosong)

Paket:

(kosong)

Harga Paket:

(kosong)

Biaya

Pendaftaran:

(kosong)

Total

Pembayaran:

(kosong)

2 Mengisi

beberapa form

Nomor

Pendaftaran,

Tanggal

Pendaftaran, ID

Member, Paket,

Harga Paket,

Biaya

Pendaftaran dan

Total

Pembayaran

Nomor

Pendaftaran:

(otomatis)

Sistem akan

menolak

akses simpan

dan akan

menampilkan

pesan “Data

Pendaftaran

Gagal Input”

Sesuai

harapan

Valid

Tanggal

Pendaftaran:

(kosong)

ID Member:

(diisi)

Paket:

(kosong)

Harga Paket:

(diisi)

94

kemudian klik

Simpan

Biaya

Pendaftaran:

(kosong)

Total

Pembayaran:

(diisi)

3 Mengisi form

registrasi

dengan lengkap

dan benar,

kemudian klik

Simpan

Nomor

Pendaftaran:

(otomatis)

Sistem akan

menerima

akses simpan

dan akan

menampilkan

pesan “Data

Pendaftaran

Berhasil.

Silahkan

lakukan

pembayaran

ke cabang

kami

terdekat.

Terimakasih”

Sesuai

harapan

Valid

Tanggal

Pendaftaran:

(diisi)

ID Member:

(diisi)

Paket:

(diisi)

Harga Paket:

(diisi)

Biaya

Pendaftaran:

(otomatis)

Total

Pembayaran:

(diisi)

Sumber : Hasil Penelitian, 2019

3.3.3. Spesifikasi Hardware dan Software

A. Spesifikasi Perangkat Keras (Hardware)

1. Server

a) Laptop

1) Processor : AMD E1-6010 APU with AMD Radeon R2 Graphics

2) RAM : 4 GB

3) Harddisk : 500 GB

b) Mouse : Lenovo M20 Optical USB Mouse

c) Keyboard

d) Monitor : Resolusi layar minimum 1366x768

95

e) Koneksi internet dengan kecepatan 72.0 Mbps

2. Client

a) CPU

1) Processor

2) RAM : 4 GB

3) Harddisk : 500 GB

b) Mouse

c) Keyboard

d) Monitor : Resolusi layar minimum 1366x768

B. Spesifikasi Perangkat Lunak (Software)

1. Server

a) Sistem Operasi : Microsoft Windows 10

b) Aplikasi web server seperti : XAMPP, dari beberapa komponen,

diantaranya:

1) Aplikasi Apache Server

2) Aplikasi MySQL

3) Aplikasi PhpMyAdmin

c) Aplikasi web browser seperti Google Chrome, Mozilla Firefox, Internet

Explorer

2. Client

a) Sistem operasi yang umum digunakan seperti : Microsoft Windows 7

b) Aplikasi web browser seperti Google Chrome, Mozilla Firefox, Internet

Explorer

top related